mirror of
https://github.com/urbit/shrub.git
synced 2024-12-25 21:12:56 +03:00
graph-store: expose post:enjs
This commit is contained in:
parent
582b4b15ff
commit
a16a1cafcc
@ -34,6 +34,77 @@
|
|||||||
++ enjs
|
++ enjs
|
||||||
=, enjs:format
|
=, enjs:format
|
||||||
|%
|
|%
|
||||||
|
::
|
||||||
|
++ signatures
|
||||||
|
|= s=^signatures
|
||||||
|
^- json
|
||||||
|
[%a (turn ~(tap in s) signature)]
|
||||||
|
::
|
||||||
|
++ signature
|
||||||
|
|= s=^signature
|
||||||
|
^- json
|
||||||
|
%- pairs
|
||||||
|
:~ [%signature s+(scot %ux p.s)]
|
||||||
|
[%ship (ship q.s)]
|
||||||
|
[%life (numb r.s)]
|
||||||
|
==
|
||||||
|
::
|
||||||
|
++ index
|
||||||
|
|= i=^index
|
||||||
|
^- json
|
||||||
|
=/ j=^tape ""
|
||||||
|
|-
|
||||||
|
?~ i [%s (crip j)]
|
||||||
|
=/ k=json (numb i.i)
|
||||||
|
?> ?=(%n -.k)
|
||||||
|
%_ $
|
||||||
|
i t.i
|
||||||
|
j (weld j (weld "/" (trip +.k)))
|
||||||
|
==
|
||||||
|
::
|
||||||
|
++ uid
|
||||||
|
|= u=^uid
|
||||||
|
^- json
|
||||||
|
%- pairs
|
||||||
|
:~ [%resource (enjs:res resource.u)]
|
||||||
|
[%index (index index.u)]
|
||||||
|
==
|
||||||
|
::
|
||||||
|
++ content
|
||||||
|
|= c=^content
|
||||||
|
^- json
|
||||||
|
?- -.c
|
||||||
|
%text (frond %text s+text.c)
|
||||||
|
%url (frond %url s+url.c)
|
||||||
|
%reference (frond %reference (uid uid.c))
|
||||||
|
%code
|
||||||
|
%+ frond %code
|
||||||
|
%- pairs
|
||||||
|
:- [%expression s+expression.c]
|
||||||
|
:_ ~
|
||||||
|
:- %output
|
||||||
|
:: virtualize output rendering, +tank:enjs:format might crash
|
||||||
|
::
|
||||||
|
=/ result=(each (list json) tang)
|
||||||
|
(mule |.((turn output.c tank)))
|
||||||
|
?- -.result
|
||||||
|
%& a+p.result
|
||||||
|
%| a+[a+[%s '[[output rendering error]]']~]~
|
||||||
|
==
|
||||||
|
==
|
||||||
|
::
|
||||||
|
++ post
|
||||||
|
|= p=^post
|
||||||
|
^- json
|
||||||
|
%- pairs
|
||||||
|
:~ [%author (ship author.p)]
|
||||||
|
[%index (index index.p)]
|
||||||
|
[%time-sent (time time-sent.p)]
|
||||||
|
[%contents [%a (turn contents.p content)]]
|
||||||
|
[%hash ?~(hash.p ~ s+(scot %ux u.hash.p))]
|
||||||
|
[%signatures (signatures signatures.p)]
|
||||||
|
==
|
||||||
|
::
|
||||||
++ update
|
++ update
|
||||||
|= upd=^update
|
|= upd=^update
|
||||||
^- json
|
^- json
|
||||||
@ -132,20 +203,6 @@
|
|||||||
:~ (index [a]~)
|
:~ (index [a]~)
|
||||||
(node n)
|
(node n)
|
||||||
==
|
==
|
||||||
::
|
|
||||||
++ index
|
|
||||||
|= i=^index
|
|
||||||
^- json
|
|
||||||
=/ j=^tape ""
|
|
||||||
|-
|
|
||||||
?~ i [%s (crip j)]
|
|
||||||
=/ k=json (numb i.i)
|
|
||||||
?> ?=(%n -.k)
|
|
||||||
%_ $
|
|
||||||
i t.i
|
|
||||||
j (weld j (weld "/" (trip +.k)))
|
|
||||||
==
|
|
||||||
::
|
|
||||||
++ node
|
++ node
|
||||||
|= n=^node
|
|= n=^node
|
||||||
^- json
|
^- json
|
||||||
@ -158,41 +215,7 @@
|
|||||||
==
|
==
|
||||||
==
|
==
|
||||||
::
|
::
|
||||||
++ post
|
::
|
||||||
|= p=^post
|
|
||||||
^- json
|
|
||||||
%- pairs
|
|
||||||
:~ [%author (ship author.p)]
|
|
||||||
[%index (index index.p)]
|
|
||||||
[%time-sent (time time-sent.p)]
|
|
||||||
[%contents [%a (turn contents.p content)]]
|
|
||||||
[%hash ?~(hash.p ~ s+(scot %ux u.hash.p))]
|
|
||||||
[%signatures (signatures signatures.p)]
|
|
||||||
==
|
|
||||||
::
|
|
||||||
++ content
|
|
||||||
|= c=^content
|
|
||||||
^- json
|
|
||||||
?- -.c
|
|
||||||
%text (frond %text s+text.c)
|
|
||||||
%url (frond %url s+url.c)
|
|
||||||
%reference (frond %reference (uid uid.c))
|
|
||||||
%code
|
|
||||||
%+ frond %code
|
|
||||||
%- pairs
|
|
||||||
:- [%expression s+expression.c]
|
|
||||||
:_ ~
|
|
||||||
:- %output
|
|
||||||
:: virtualize output rendering, +tank:enjs:format might crash
|
|
||||||
::
|
|
||||||
=/ result=(each (list json) tang)
|
|
||||||
(mule |.((turn output.c tank)))
|
|
||||||
?- -.result
|
|
||||||
%& a+p.result
|
|
||||||
%| a+[a+[%s '[[output rendering error]]']~]~
|
|
||||||
==
|
|
||||||
==
|
|
||||||
::
|
|
||||||
++ nodes
|
++ nodes
|
||||||
|= m=(map ^index ^node)
|
|= m=(map ^index ^node)
|
||||||
^- json
|
^- json
|
||||||
@ -210,27 +233,6 @@
|
|||||||
^- json
|
^- json
|
||||||
[%a (turn ~(tap in i) index)]
|
[%a (turn ~(tap in i) index)]
|
||||||
::
|
::
|
||||||
++ uid
|
|
||||||
|= u=^uid
|
|
||||||
^- json
|
|
||||||
%- pairs
|
|
||||||
:~ [%resource (enjs:res resource.u)]
|
|
||||||
[%index (index index.u)]
|
|
||||||
==
|
|
||||||
::
|
|
||||||
++ signatures
|
|
||||||
|= s=^signatures
|
|
||||||
^- json
|
|
||||||
[%a (turn ~(tap in s) signature)]
|
|
||||||
::
|
|
||||||
++ signature
|
|
||||||
|= s=^signature
|
|
||||||
^- json
|
|
||||||
%- pairs
|
|
||||||
:~ [%signature s+(scot %ux p.s)]
|
|
||||||
[%ship (ship q.s)]
|
|
||||||
[%life (numb r.s)]
|
|
||||||
==
|
|
||||||
--
|
--
|
||||||
--
|
--
|
||||||
::
|
::
|
||||||
|
Loading…
Reference in New Issue
Block a user