commit d5b41b2b4afd06d2a43d652f65da000480c4a432 Author: Quixos Template Publisher Date: Sat Jan 1 00:00:00 2000 +0000 Export template source from 11bc3ae35b0034c113daca4c35d1b341aa31ef70:examples/local-first/interfaces/reading-feature diff --git a/.quixos-template-source.json b/.quixos-template-source.json new file mode 100644 index 0000000..cab1535 --- /dev/null +++ b/.quixos-template-source.json @@ -0,0 +1,4 @@ +{ + "monorepoCommit": "11bc3ae35b0034c113daca4c35d1b341aa31ef70", + "sourcePath": "examples/local-first/interfaces/reading-feature" +} diff --git a/interface.qx b/interface.qx new file mode 100644 index 0000000..7f8fd9c --- /dev/null +++ b/interface.qx @@ -0,0 +1,16 @@ +import interface ReadingOwner; +external atom ReadingJobObject id "atom:reading:job"; +external interface ReadingReader revision "interface:reading:reader@1"; +type FeatureData = record {name:string;processor:string;style:string;reveal:string;generation:string;scope:string;color:string;enabled:bool;configRevision:uint32;}; +interface ReadingFeature id "interface:reading:feature" revision "interface:reading:feature@1" { + queryable relation authoring id "reading:feature:authoring" : optional-one atom ReadingJobObject {resolve id "reading:feature:authoring:resolve" execution snapshot;connect id "reading:feature:authoring:connect" execution transaction;} + operation setEnabled id "reading:feature:set-enabled" : bool -> unit {call id "reading:feature:set-enabled:call" execution transaction;} + queryable relation reader id "reading:feature:reader" : optional-one interface ReadingReader {resolve id "reading:feature:reader:resolve" execution snapshot;connect id "reading:feature:reader:connect" execution transaction;} + queryable value data id "reading:feature:data" : FeatureData {get id "reading:feature:data:get" execution snapshot;} + value processorRevision id "reading:feature:processor-revision" : string {get id "reading:feature:processor-revision:get" execution snapshot;} + queryable value options id "reading:feature:options" : string {get id "reading:feature:options:get" execution snapshot;} + operation configureOptions id "reading:feature:configure-options" : record {expectedRevision:uint32;options:string;} -> unit {call id "reading:feature:configure-options:call" execution transaction;} + queryable relation library id "reading:feature:library" : exactly-one interface ReadingOwner {resolve id "reading:feature:library:resolve" execution snapshot;} + operation configure id "reading:feature:configure" : record {expectedRevision:uint32;name:string;style:string;reveal:string;generation:string;scope:string;color:string;enabled:bool;} -> unit {call id "reading:feature:configure:call" execution transaction;} + operation remove id "reading:feature:remove" : unit -> unit {call id "reading:feature:remove:call" execution transaction;} +} diff --git a/quixos.lock b/quixos.lock new file mode 100644 index 0000000..5086cf1 --- /dev/null +++ b/quixos.lock @@ -0,0 +1,4 @@ +quixos-lock version 1 { + quixos source { repository "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos.git"; commit "11bc3ae35b0034c113daca4c35d1b341aa31ef70"; } + interface ReadingOwner source { repository "https://repos.quixos.org/quixos-local-first-examples/interface-reading-owner.git"; commit "ca870ff6dc5ee7d8cc7f4ad1754e48fcf3f250cf"; } +}