15 lines
749 B
Plaintext
15 lines
749 B
Plaintext
external atom Note id "compound:note";
|
|||
|
|
type Content = record { text: string; tags: list<string>; };
|
||
|
|
type Edit = record { change: change<Content>; resolved: bool; };
|
||
|
|
package EditRuntime id "compound:runtime" revision "compound:runtime@1" {
|
||
|
|
operation update id "compound:runtime:update" : Edit -> unit
|
||
|
|
mode call execution transaction targets [browser, server] receiver atom Note requires {
|
||
|
|
state content id "compound:edit:content" : Content [edit];
|
||
|
|
state resolved id "compound:edit:resolved" : bool [write];
|
||
|
|
} accept using check;
|
||
|
|
operation check id "compound:runtime:check" : Edit -> unit
|
||
|
|
mode call execution snapshot targets [server] receiver atom Note requires {
|
||
|
|
state allowed id "compound:check:allowed" : bool [read];
|
||
|
|
};
|
||
|
|
}
|