mirror of
https://github.com/urbit/shrub.git
synced 2024-12-21 01:41:37 +03:00
45 lines
1.1 KiB
Plaintext
45 lines
1.1 KiB
Plaintext
/- spider, graph=graph-store, met=metadata-store, *group, group-store, push-hook
|
|
/+ strandio, resource, graph-view
|
|
=>
|
|
|%
|
|
++ strand strand:spider
|
|
++ poke poke:strandio
|
|
++ poke-our poke-our:strandio
|
|
--
|
|
=, strand=strand:spider
|
|
^- thread:spider
|
|
|= arg=vase
|
|
=/ m (strand ,vase)
|
|
^- form:m
|
|
=+ !<
|
|
[~ rid=resource title=@t description=@t group=resource module=@t ~]
|
|
arg
|
|
;< =bowl:spider bind:m get-bowl:strandio
|
|
:: unarchive graph and share it
|
|
;< ~ bind:m
|
|
(poke-our %graph-store %graph-update !>([%0 now.bowl %unarchive-graph rid]))
|
|
;< ~ bind:m
|
|
(poke-our %graph-push-hook %push-hook-action !>([%add rid]))
|
|
::
|
|
:: Setup metadata
|
|
::
|
|
=/ =metadatum:met
|
|
%* . *metadatum:met
|
|
title title
|
|
description description
|
|
date-created now.bowl
|
|
creator our.bowl
|
|
module module
|
|
==
|
|
;< ~ bind:m
|
|
%+ poke-our %metadata-push-hook
|
|
:- %metadata-action
|
|
!> ^- action:met
|
|
[%add group [%graph rid] metadatum]
|
|
;< ~ bind:m
|
|
%+ poke-our %metadata-push-hook
|
|
:- %push-hook-action
|
|
!> ^- action:push-hook
|
|
[%add group]
|
|
(pure:m !>(~))
|