mirror of
https://github.com/urbit/shrub.git
synced 2024-12-23 19:05:48 +03:00
Merge 5062c1f683
into release/next-js
This commit is contained in:
commit
98c586cc1e
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:accbadc701471f6b071ed286164a0bf4d3f8a2e64cfaea9019e123bd9edca569
|
||||
size 10292454
|
||||
oid sha256:1d56b7351a347a65c06999955114f196523a86c853390d5d1822a90a606619d6
|
||||
size 10357558
|
||||
|
@ -243,7 +243,7 @@
|
||||
=/ headers
|
||||
:~ content-type+mime-type
|
||||
max-1-da:gen
|
||||
'Service-Worker-Allowed'^'/'
|
||||
'service-worker-allowed'^'/'
|
||||
==
|
||||
[[200 headers] `q.u.data]
|
||||
==
|
||||
|
@ -5,7 +5,7 @@
|
||||
/- glob
|
||||
/+ default-agent, verb, dbug
|
||||
|%
|
||||
++ hash 0v4.7tk5q.9ha4l.tbmji.fvkno.s9pfq
|
||||
++ hash 0v6.qafur.17301.j8obh.vbepn.7tq3l
|
||||
+$ state-0 [%0 hash=@uv glob=(unit (each glob:glob tid=@ta))]
|
||||
+$ all-states
|
||||
$% state-0
|
||||
|
@ -37,79 +37,13 @@
|
||||
++ on-init on-init:def
|
||||
++ on-save !>(~)
|
||||
++ on-load on-load:def
|
||||
++ on-poke
|
||||
|= [=mark =vase]
|
||||
^- (quip card _this)
|
||||
|^
|
||||
?. =(mark %sane)
|
||||
(on-poke:def mark vase)
|
||||
[(sane !<(?(%check %fix) vase)) this]
|
||||
::
|
||||
++ scry-sharing
|
||||
.^ (set resource)
|
||||
%gx
|
||||
(scot %p our.bowl)
|
||||
%group-push-hook
|
||||
(scot %da now.bowl)
|
||||
/sharing/noun
|
||||
==
|
||||
::
|
||||
++ sane
|
||||
|= input=?(%check %fix)
|
||||
^- (list card)
|
||||
=; cards=(list card)
|
||||
?: =(%check input)
|
||||
~&(cards ~)
|
||||
cards
|
||||
%+ murn
|
||||
~(tap in scry-sharing)
|
||||
|= rid=resource
|
||||
^- (unit card)
|
||||
=/ u-g=(unit group)
|
||||
(scry-group:grp rid)
|
||||
?~ u-g
|
||||
`(poke-us %remove rid)
|
||||
=* group u.u-g
|
||||
=/ subs=(set ship)
|
||||
(get-subscribers-for-group rid)
|
||||
=/ to-remove=(set ship)
|
||||
(~(dif in members.group) (~(gas in subs) our.bowl ~))
|
||||
?~ to-remove ~
|
||||
`(poke-store %remove-members rid to-remove)
|
||||
::
|
||||
++ poke-us
|
||||
|= =action:push-hook
|
||||
^- card
|
||||
=- [%pass / %agent [our.bowl %group-push-hook] %poke -]
|
||||
push-hook-action+!>(action)
|
||||
::
|
||||
++ poke-store
|
||||
|= =update:store
|
||||
^- card
|
||||
=+ group-update-0+!>(update)
|
||||
[%pass /sane %agent [our.bowl %group-store] %poke -]
|
||||
::
|
||||
++ get-subscribers-for-group
|
||||
|= rid=resource
|
||||
^- (set ship)
|
||||
=/ target=path
|
||||
(en-path:resource rid)
|
||||
%- ~(gas in *(set ship))
|
||||
%+ murn
|
||||
~(val by sup.bowl)
|
||||
|= [her=ship =path]
|
||||
^- (unit ship)
|
||||
?. =(path resource+target)
|
||||
~
|
||||
`her
|
||||
--
|
||||
|
||||
++ on-agent on-agent:def
|
||||
++ on-watch on-watch:def
|
||||
++ on-leave on-leave:def
|
||||
++ on-peek on-peek:def
|
||||
++ on-arvo on-arvo:def
|
||||
++ on-fail on-fail:def
|
||||
++ on-poke on-poke:def
|
||||
++ on-agent on-agent:def
|
||||
++ on-watch on-watch:def
|
||||
++ on-leave on-leave:def
|
||||
++ on-peek on-peek:def
|
||||
++ on-arvo on-arvo:def
|
||||
++ on-fail on-fail:def
|
||||
::
|
||||
++ transform-proxy-update
|
||||
|= vas=vase
|
||||
|
@ -414,11 +414,8 @@
|
||||
?> ?& ?=(~ (~(dif in ships) members))
|
||||
(~(has by tags) tag)
|
||||
==
|
||||
%= +<
|
||||
::
|
||||
tags
|
||||
%+ ~(jab by tags) tag
|
||||
|=((set ship) (~(dif in +<) ships))
|
||||
%= +<
|
||||
tags (dif-ju tags tag ships)
|
||||
==
|
||||
:_ state
|
||||
(send-diff %remove-tag rid tag ships)
|
||||
@ -543,7 +540,15 @@
|
||||
(send-diff %remove-group rid ~)
|
||||
::
|
||||
--
|
||||
|
||||
:: TODO: move to +zuse
|
||||
++ dif-ju
|
||||
|= [=tags =tag remove=(set ship)]
|
||||
=/ ships ~(tap in remove)
|
||||
|-
|
||||
?~ ships
|
||||
tags
|
||||
$(tags (~(del ju tags) tag i.ships), ships t.ships)
|
||||
::
|
||||
++ merge-tags
|
||||
|= [=tags ships=(set ship) new-tags=(set tag)]
|
||||
^+ tags
|
||||
|
@ -24,6 +24,6 @@
|
||||
<div id="portal-root"></div>
|
||||
<script src="/~landscape/js/channel.js"></script>
|
||||
<script src="/~landscape/js/session.js"></script>
|
||||
<script src="/~landscape/js/bundle/index.857da0dbc92427b1460b.js"></script>
|
||||
<script src="/~landscape/js/bundle/index.fd3d400454968e081ca9.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -104,6 +104,7 @@
|
||||
+$ state-6 [%6 base-state-1]
|
||||
+$ state-7 [%7 base-state-2]
|
||||
+$ state-8 [%8 base-state-3]
|
||||
+$ state-9 [%9 base-state-3]
|
||||
+$ versioned-state
|
||||
$% state-0
|
||||
state-1
|
||||
@ -114,10 +115,11 @@
|
||||
state-6
|
||||
state-7
|
||||
state-8
|
||||
state-9
|
||||
==
|
||||
::
|
||||
+$ inflated-state
|
||||
$: state-8
|
||||
$: state-9
|
||||
cached-indices
|
||||
==
|
||||
--
|
||||
@ -230,7 +232,7 @@
|
||||
=| cards=(list card)
|
||||
|^
|
||||
=* loop $
|
||||
?: ?=(%8 -.old)
|
||||
?: ?=(%9 -.old)
|
||||
:- cards
|
||||
%_ state
|
||||
associations associations.old
|
||||
@ -238,6 +240,24 @@
|
||||
group-indices (rebuild-group-indices associations.old)
|
||||
app-indices (rebuild-app-indices associations.old)
|
||||
==
|
||||
?: ?=(%8 -.old)
|
||||
=/ groups (~(got by app-indices) %groups)
|
||||
=/ pokes=(list card)
|
||||
%+ murn ~(tap in ~(key by groups))
|
||||
|= group=resource
|
||||
^- (unit card)
|
||||
=/ =association:store (~(got by associations) [%groups group])
|
||||
=* met metadatum.association
|
||||
?. ?=([%group [~ [~ [@ [@ @]]]]] config.met)
|
||||
~
|
||||
=* res resource.u.u.feed.config.met
|
||||
=- `[%pass /fix-feed %agent [our.bowl %graph-pull-hook] %poke -]
|
||||
:- %pull-hook-action
|
||||
!> [%add entity.res name.res]
|
||||
%_ $
|
||||
cards (weld cards pokes)
|
||||
-.old %9
|
||||
==
|
||||
?: ?=(%7 -.old)
|
||||
$(old [%8 (associations-2-to-3 associations.old) ~])
|
||||
?: ?=(%6 -.old)
|
||||
@ -369,7 +389,7 @@
|
||||
^- (quip card _state)
|
||||
|^
|
||||
=^ cards state
|
||||
(on-load !>([%8 (remake-metadata ;;(tree-metadata +.arc))]))
|
||||
(on-load !>([%9 (remake-metadata ;;(tree-metadata +.arc))]))
|
||||
:_ state
|
||||
%+ weld cards
|
||||
%+ turn ~(tap in ~(key by group-indices))
|
||||
|
@ -7,9 +7,7 @@
|
||||
::
|
||||
++ supported-apps
|
||||
^- (list term)
|
||||
:~ %group-push-hook
|
||||
%group-store
|
||||
==
|
||||
~[%group-store]
|
||||
::
|
||||
++ poke-all-sane
|
||||
|= =input
|
||||
|
Loading…
Reference in New Issue
Block a user