summaryrefslogtreecommitdiff
path: root/desk/lib/json/nostrill.hoon
diff options
context:
space:
mode:
Diffstat (limited to 'desk/lib/json/nostrill.hoon')
-rw-r--r--desk/lib/json/nostrill.hoon70
1 files changed, 48 insertions, 22 deletions
diff --git a/desk/lib/json/nostrill.hoon b/desk/lib/json/nostrill.hoon
index b5a619c..2edf7f4 100644
--- a/desk/lib/json/nostrill.hoon
+++ b/desk/lib/json/nostrill.hoon
@@ -36,35 +36,42 @@
:: TODO do we even need this
:- sub-id (numb received.es)
- ++ en-profiles |= m=(map @ux user-meta:nsur)
+ ++ en-profiles |= m=(map user:sur user-meta:nsur)
%- pairs
- %+ turn ~(tap by m) |= [key=@ux p=user-meta:nsur]
- =/ jkey (hex:en:common key)
+ %+ turn ~(tap by m) |= [key=user:sur p=user-meta:nsur]
+ =/ jkey (user key)
?> ?=(%s -.jkey)
:- +.jkey (user-meta:en:nostr p)
++ enfollowing
- |= m=(map @ux feed:feed)
+ |= m=(map user:sur feed:feed)
^- json
- %- pairs %+ turn ~(tap by m) |= [key=@ux f=feed:feed]
- =/ jkey (hex:en:common key)
+ %- pairs %+ turn ~(tap by m) |= [key=user:sur f=feed:feed]
+ =/ jkey (user key)
?> ?=(%s -.jkey)
:- +.jkey (feed:en:trill f)
++ engraph
- |= m=(map @ux (set follow:sur))
+ |= m=(map user:sur (set user:sur))
^- json
- %- pairs %+ turn ~(tap by m) |= [key=@ux s=(set follow:sur)]
- =/ jkey (hex:en:common key)
+ %- pairs %+ turn ~(tap by m) |= [key=user:sur s=(set user:sur)]
+ =/ jkey (user key)
?> ?=(%s -.jkey)
:- +.jkey
- :- %a %+ turn ~(tap in s) |= f=follow:sur
- %- pairs
- :~ pubkey+(hex:en:common pubkey.f)
- name+s+name.f
- :- %relay ?~ relay.f ~ s+u.relay.f
- ==
+ :- %a %+ turn ~(tap in s) user
+ ++ follow
+ |= f=follow:sur
+ %- pairs
+ :~ pubkey+(hex:en:common pubkey.f)
+ name+s+name.f
+ :- %relay ?~ relay.f ~ s+u.relay.f
+ ==
+ ++ user |= u=user:sur ^- json
+ ?- -.u
+ %urbit (patp:en:common +.u)
+ %nostr (hex:en:common +.u)
+ ==
:: ui facts
++ fact |= f=fact:ui:sur ^- json
%+ frond %fact
@@ -105,17 +112,27 @@
%ng [%s msg.res]
==
++ resd |= rd=res-data:comms ^- json
- %+ frond -.rd
?- -.rd
- %feed (feed-with-cursor:en:trill +.rd)
+ %feed (user-data +.rd)
:: TODO wrap it for nostr shit
- %thread (full-node:en:trill +.rd)
- %prof (user-meta:en:nostr +.rd)
+ %thread (frond -.rd (full-node:en:trill +.rd))
+ ==
+ ++ user-data
+ |= ud=[=fc:feed profile=(unit user-meta:nsur)]
+ %: pairs
+ feed+(feed-with-cursor:en:trill fc.ud)
+ :- %profile ?~ profile.ud ~ (user-meta:en:nostr u.profile.ud)
+ ~
==
--
++ de
=, dejs-soft:format
|%
+++ user
+ %- of :~
+ urbit+(se:de:common %p)
+ nostr+hex:de:common
+ ==
:: ui
++ ui
%- of :~
@@ -128,8 +145,8 @@
==
++ ui-fols
%- of :~
- add+hex:de:common
- del+hex:de:common
+ add+user
+ del+user
==
++ ui-begs
%- of :~
@@ -143,9 +160,18 @@
==
++ ui-prof
%- of :~
- add+user-meta:de:nostr
+ add+ui-meta
del+ul
==
+++ ui-meta
+ %- ot :~
+ name+so
+ about+so
+ picture+so
+ other+other-meta
+ ==
+++ other-meta |= jon=json
+ ?. ?=(%o -.jon) ~ (some p.jon)
++ ui-post
%- of :~
add+de-post