/- spider, graph-store, graph-view, post, *resource /+ *ph-io, strandio =, strand=strand:spider => |% :: ++ graph-post |= [our=@p wen=@da rid=resource body=cord id=@] =/ =index:post [id]~ =/ =post:post [our index wen [%text body]~ ~ ~] =/ =node:graph-store [[%& post] %empty ~] =/ act=update:graph-store [wen %add-nodes rid (my [index node] ~)] (poke-app our %graph-push-hook %graph-update-3 act) -- :: ^- thread:spider |= vase =/ m (strand ,vase) ;< ~ bind:m start-simple ;< bol=bowl:spider bind:m get-bowl:strandio :: :: make posts :: ;< ~ bind:m (graph-post ~zod now.bol [~zod %graph-1] 'post 10' 10) ;< ~ bind:m (sleep ~s5) ;< ~ bind:m (graph-post ~bus now.bol [~zod %graph-1] 'post 20' 20) ;< ~ bind:m (sleep ~s5) ;< ~ bind:m (graph-post ~web now.bol [~zod %graph-1] 'post 30' 30) ;< ~ bind:m (sleep ~s5) :: ;< ~ bind:m (graph-post ~zod now.bol [~bus %graph-2] 'post 40' 40) ;< ~ bind:m (sleep ~s5) ;< ~ bind:m (graph-post ~bus now.bol [~bus %graph-2] 'post 50' 50) ;< ~ bind:m (sleep ~s5) ;< ~ bind:m (graph-post ~web now.bol [~bus %graph-2] 'post 60' 60) ;< ~ bind:m (sleep ~s5) :: ;< ~ bind:m (graph-post ~zod now.bol [~web %graph-3] 'post 70' 70) ;< ~ bind:m (sleep ~s5) ;< ~ bind:m (graph-post ~bus now.bol [~web %graph-3] 'post 80' 80) ;< ~ bind:m (sleep ~s5) ;< ~ bind:m (graph-post ~web now.bol [~web %graph-3] 'post 90' 90) ;< ~ bind:m (sleep ~s5) :: ;< ~ bind:m (send-hi ~zod ~bus) ;< ~ bind:m (send-hi ~zod ~web) ;< ~ bind:m (send-hi ~bus ~zod) ;< ~ bind:m (send-hi ~bus ~web) ;< ~ bind:m (send-hi ~web ~zod) ;< ~ bind:m (send-hi ~web ~bus) :: (pure:m *vase)