commit a34075284ed3631622c152d412bbec9f2636942a Author: Quixos Template Publisher Date: Sat Jan 1 00:00:00 2000 +0000 Export template source from 11bc3ae35b0034c113daca4c35d1b341aa31ef70:examples/local-first/interfaces/language-reader diff --git a/.quixos-template-source.json b/.quixos-template-source.json new file mode 100644 index 0000000..0fb3668 --- /dev/null +++ b/.quixos-template-source.json @@ -0,0 +1,4 @@ +{ + "monorepoCommit": "11bc3ae35b0034c113daca4c35d1b341aa31ef70", + "sourcePath": "examples/local-first/interfaces/language-reader" +} diff --git a/interface.qx b/interface.qx new file mode 100644 index 0000000..526acbd --- /dev/null +++ b/interface.qx @@ -0,0 +1,45 @@ +import interface ReadingVocabulary; +external atom ReadingVocabularyObject id "atom:reading:vocabulary"; +import interface ReadingDocument; +import interface ReadingReader; +external atom ReadingReaderObject id "atom:reading:reader"; +import interface ReadingFeature; +import interface ReadingJob; +import interface ReadingWord; +import interface ReadingOwner; +external atom ReadingLibrary id "atom:reading:library"; +external atom ReadingDocumentObject id "atom:reading:document"; +external atom ReadingFeatureObject id "atom:reading:feature"; +external atom ReadingJobObject id "atom:reading:job"; +external atom AgentObject id "atom:org.quixos.agent:agent"; +external atom AgentDirectoryObject id "atom:org.quixos.agent:directory"; +interface LanguageReader id "interface:reading:library" revision "interface:reading:library@1" requires ReadingOwner { + static operation root id "reading:root" : unit -> atom-ref {call id "reading:root:call" execution transaction;} + queryable relation readers id "reading:library:readers" : many-unique interface ReadingReader {resolve id "reading:library:readers:resolve" execution snapshot;} + queryable relation defaultReader id "reading:library:default-reader" : optional-one interface ReadingReader {resolve id "reading:library:default-reader:resolve" execution snapshot;} + operation ensureReaders id "reading:library:ensure-readers" : unit -> atom-ref {call id "reading:library:ensure-readers:call" execution transaction;} + operation addFrenchReader id "reading:library:add-french-reader" : unit -> atom-ref {call id "reading:library:add-french-reader:call" execution transaction;} + operation generateDocument id "reading:library:generate-document" : record {prompt:string;reader:atom-ref;createdAt:string;} -> atom-ref {call id "reading:library:generate-document:call" execution transaction;} + operation addReader id "reading:library:add-reader" : record {name:string;copy:optional>;} -> atom-ref {call id "reading:library:add-reader:call" execution transaction;} + queryable value name id "reading:library:name" : string {get id "reading:library:name:get" execution snapshot;} + queryable value inferenceProfile id "reading:library:inference-profile" : string {get id "reading:library:inference-profile:get" execution snapshot;set id "reading:library:inference-profile:set" execution transaction;} + queryable value archivedTypes id "reading:library:archived-types" : list {get id "reading:library:archived-types:get" execution snapshot;} + operation archiveType id "reading:library:archive-type" : record {processor:string;archived:bool;} -> unit {call id "reading:library:archive-type:call" execution transaction;} + operation catalog id "reading:library:catalog" : unit -> list {call id "reading:library:catalog:call" execution snapshot;} + queryable relation inference id "reading:library:inference" : optional-one atom AgentObject {resolve id "reading:library:inference:resolve" execution snapshot;} + queryable relation author id "reading:library:author" : optional-one atom AgentObject {resolve id "reading:library:author:resolve" execution snapshot;} + queryable relation documents id "reading:library:documents" : many-unique interface ReadingDocument {resolve id "reading:library:documents:resolve" execution snapshot;} + queryable relation features id "reading:library:features" : many-unique interface ReadingFeature {resolve id "reading:library:features:resolve" execution snapshot;} + queryable relation vocabulary id "reading:library:vocabulary" : many-unique interface ReadingWord {resolve id "reading:library:vocabulary:resolve" execution snapshot;} + queryable relation tasks id "reading:library:tasks" : many-unique interface ReadingJob {resolve id "reading:library:tasks:resolve" execution snapshot;} + operation addDocument id "reading:library:add-document" : record {title:string;text:string;source:string;url:string;attribution:string;} -> atom-ref {call id "reading:library:add-document:call" execution transaction;} + operation addFeature id "reading:library:add-feature" : record {authoring:optional>;reader:optional>;name:string;processor:string;style:string;reveal:string;generation:string;scope:string;color:string;options:string;} -> atom-ref {call id "reading:library:add-feature:call" execution transaction;} + queryable relation vocabularies id "reading:library:vocabularies" : many-unique interface ReadingVocabulary {resolve id "reading:library:vocabularies:resolve" execution snapshot;} + queryable relation defaultVocabulary id "reading:library:default-vocabulary" : optional-one interface ReadingVocabulary {resolve id "reading:library:default-vocabulary:resolve" execution snapshot;} + operation addVocabulary id "reading:library:add-vocabulary" : string -> atom-ref {call id "reading:library:add-vocabulary:call" execution transaction;} + operation ensureVocabulary id "reading:library:ensure-vocabulary" : unit -> atom-ref {call id "reading:library:ensure-vocabulary:call" execution transaction;} + operation remember id "reading:library:remember" : string -> unit {call id "reading:library:remember:call" execution transaction;} + operation install id "reading:library:install" : unit -> unit {call id "reading:library:install:call" execution transaction;} + operation installWorkspace id "reading:library:install-workspace" : record {instructions:string;settings:string;} -> atom-ref {call id "reading:library:install-workspace:call" execution transaction;} + operation customize id "reading:library:customize" : record {feature:optional>;reader:atom-ref;configuration:string;text:string;createdAt:string;} -> atom-ref {call id "reading:library:customize:call" execution transaction;} +} diff --git a/quixos.lock b/quixos.lock new file mode 100644 index 0000000..f8228b1 --- /dev/null +++ b/quixos.lock @@ -0,0 +1,10 @@ +quixos-lock version 1 { + quixos source { repository "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos.git"; commit "11bc3ae35b0034c113daca4c35d1b341aa31ef70"; } + interface ReadingVocabulary source { repository "https://repos.quixos.org/quixos-local-first-examples/interface-reading-vocabulary.git"; commit "8475d219b8a37da1c0acb477e175c96fba9127c7"; } + interface ReadingDocument source { repository "https://repos.quixos.org/quixos-local-first-examples/interface-reading-document.git"; commit "544956d30f88e6f65bf10f571e4d09ebbbb77284"; } + interface ReadingReader source { repository "https://repos.quixos.org/quixos-local-first-examples/interface-reading-reader.git"; commit "2ae966b8b05ea05b05818c2ca3378bd8b3a112cf"; } + interface ReadingFeature source { repository "https://repos.quixos.org/quixos-local-first-examples/interface-reading-feature.git"; commit "ef2316f66784f4fb9250dadecc09750bcbd6f776"; } + interface ReadingJob source { repository "https://repos.quixos.org/quixos-local-first-examples/interface-reading-job.git"; commit "cc078cccb5488b89e11e4cd4e9fe009211a50746"; } + interface ReadingWord source { repository "https://repos.quixos.org/quixos-local-first-examples/interface-reading-word.git"; commit "b1496ba5435dae96dd50814bd6a65f8ab3f89b04"; } + interface ReadingOwner source { repository "https://repos.quixos.org/quixos-local-first-examples/interface-reading-owner.git"; commit "ca870ff6dc5ee7d8cc7f4ad1754e48fcf3f250cf"; } +}