Differences From
Artifact [e1429862ec]:
7 7 };
8 8 noticetype = lib.enum {
9 9 'none', 'mention', 'reply', 'like', 'rt', 'react'
10 10 };
11 11
12 12 relation = lib.set {
13 13 'follow',
14 + 'subscribe', -- get a notification for every post
14 15 'mute', -- posts will be completely hidden at all times
15 16 'block', -- no interactions will be permitted, but posts will remain visible
16 17 'silence', -- messages will not be accepted
17 18 'collapse', -- posts will be collapsed by default
18 19 'disemvowel', -- posts will be ritually humiliated, but shown
19 20 'avoid', -- posts will be kept out of the timeline but will show on users' posts and in conversations
20 21 'exclude', -- own posts will not be visible to this user
................................................................................
220 221 -- ephemera
221 222 localpost: bool
222 223 accent: int16
223 224 rts: uint32
224 225 likes: uint32
225 226 rtdby: uint64 -- 0 if not rt
226 227 rtact: uint64 -- 0 if not rt, id of rt action otherwise
228 + isreply: bool
227 229 source: &m.source
228 230
229 231 -- save :: bool -> {} (defined in acl.t due to dep. hell)
230 232 }
231 233
232 234 m.user_conf_funcs = function(be,n,ty,rty,rty2)
233 235 rty = rty or ty
................................................................................
251 253 struct m.notice {
252 254 kind: m.noticetype.t
253 255 when: uint64
254 256 who: uint64
255 257 what: uint64
256 258 union {
257 259 reply: uint64
258 - reaction: int8[16]
260 + reaction: int8[32] -- are you shitting me, unichode
259 261 }
260 262 }
261 263
262 264 struct m.inet {
263 265 pv: uint8 -- 0 = null, 4 = ipv4, 6 = ipv6
264 266 union {
265 267 v4: uint8[4]
................................................................................
389 391 -- origin: inet
390 392 -- cookie issue time: m.timepoint
391 393 actor_auth_register_uid: {&m.source, uint64, uint64} -> {}
392 394 -- notifies the backend module of the UID that has been assigned for
393 395 -- an authentication ID
394 396 -- aid: uint64
395 397 -- uid: uint64
396 - actor_notice_enum: {&m.source, uint64} -> lib.mem.lstptr(m.notice)
398 + actor_notice_enum: {&m.source, uint64} -> lib.mem.ptr(m.notice)
397 399 actor_rel_create: {&m.source, uint16, uint64, uint64} -> {}
398 400 actor_rel_destroy: {&m.source, uint16, uint64, uint64} -> {}
399 401 actor_rel_calc: {&m.source, uint64, uint64} -> m.relationship
400 402
401 403 auth_enum_uid: {&m.source, uint64} -> lib.mem.lstptr(m.auth)
402 404 auth_enum_handle: {&m.source, rawstring} -> lib.mem.lstptr(m.auth)
403 405 auth_attach_pw: {&m.source, uint64, bool, pstr, pstr} -> {}