@waku/sds 0.0.6-ced989a.0 → 0.0.6-e1212cc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle/index.js +22879 -5883
- package/dist/.tsbuildinfo +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js.map +1 -1
- package/dist/message_channel/command_queue.d.ts +1 -1
- package/dist/message_channel/events.d.ts +3 -85
- package/dist/message_channel/events.js +1 -137
- package/dist/message_channel/events.js.map +1 -1
- package/dist/message_channel/index.d.ts +1 -0
- package/dist/message_channel/index.js +1 -0
- package/dist/message_channel/index.js.map +1 -1
- package/dist/message_channel/mem_local_history.d.ts +7 -7
- package/dist/message_channel/mem_local_history.js +18 -32
- package/dist/message_channel/mem_local_history.js.map +1 -1
- package/dist/message_channel/message.d.ts +83 -0
- package/dist/message_channel/message.js +139 -0
- package/dist/message_channel/message.js.map +1 -0
- package/dist/message_channel/message_channel.d.ts +4 -3
- package/dist/message_channel/message_channel.js +7 -7
- package/dist/message_channel/message_channel.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +2 -1
- package/src/message_channel/command_queue.ts +1 -1
- package/src/message_channel/events.ts +3 -175
- package/src/message_channel/index.ts +13 -0
- package/src/message_channel/mem_local_history.ts +37 -43
- package/src/message_channel/message.ts +175 -0
- package/src/message_channel/message_channel.ts +13 -15
- package/dist/message_channel/sorted_array_base.d.ts +0 -50
- package/dist/message_channel/sorted_array_base.js +0 -199
- package/dist/message_channel/sorted_array_base.js.map +0 -1
- package/src/message_channel/sorted_array_base.ts +0 -306
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message_channel.js","sourceRoot":"","sources":["../../src/message_channel/message_channel.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"message_channel.js","sourceRoot":"","sources":["../../src/message_channel/message_channel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAAE,OAAO,EAAkC,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAEL,cAAc,EACd,gBAAgB,EAEhB,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EAIb,WAAW,EACZ,MAAM,cAAc,CAAC;AAEtB,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,QAAQ,EAAE,KAAK;IACf,SAAS,EAAE,KAAK;CACjB,CAAC;AAEF,MAAM,2BAA2B,GAAG,GAAG,CAAC;AACxC,MAAM,+BAA+B,GAAG,CAAC,CAAC;AAE1C,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,0BAA0B,CAAC,CAAC;AAuBnD,MAAM,OAAO,cAAe,SAAQ,iBAAuC;IACzD,SAAS,CAAY;IACrB,QAAQ,CAAW;IAC3B,gBAAgB,CAAS;IACzB,MAAM,CAAqB;IAC3B,cAAc,CAAmB;IACjC,YAAY,CAAyB;IACrC,cAAc,CAAsC;IACpD,YAAY,CAAgB;IAC5B,YAAY,CAAyB;IAC5B,iBAAiB,CAAS;IAC1B,qBAAqB,CAAS;IAC9B,wBAAwB,CAAU;IAE3C,KAAK,GAAW,EAAE,CAAC;IACnB,QAAQ,GAAa;QAC3B,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EACnB,MAAoC,EACrB,EAAE;YACjB,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnE,CAAC;QACD,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EACtB,MAAuC,EACxB,EAAE;YACjB,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;QACD,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,KAAK,EAC5B,MAA6C,EAC9B,EAAE;YACjB,MAAM,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC5E,CAAC;KACF,CAAC;IAEF,YACE,SAAoB,EACpB,QAAkB,EAClB,UAAiC,EAAE,EACnC,eAA8B,IAAI,eAAe,EAAE;QAEnD,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,kBAAkB,CAAC,4BAA4B,CAAC,CAAC;QACnE,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,iBAAiB;YACpB,OAAO,CAAC,iBAAiB,IAAI,2BAA2B,CAAC;QAC3D,4FAA4F;QAC5F,IAAI,CAAC,qBAAqB;YACxB,OAAO,CAAC,qBAAqB,IAAI,+BAA+B,CAAC;QACnE,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC,wBAAwB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IACnE,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,OAAmB;QAC5C,OAAO,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACrC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACI,KAAK,CAAC,YAAY;QACvB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,SAAS;YACX,CAAC;YAED,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACI,KAAK,CAAC,mBAAmB,CAC9B,OAAmB,EACnB,QAGE;QAEF,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YACd,OAAO,EAAE,OAAO,CAAC,IAAI;YACrB,MAAM,EAAE;gBACN,OAAO;gBACP,QAAQ;aACT;SACF,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;OAYG;IACI,KAAK,CAAC,4BAA4B,CACvC,OAAmB,EACnB,QAA0D;QAE1D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YACd,OAAO,EAAE,OAAO,CAAC,aAAa;YAC9B,MAAM,EAAE;gBACN,OAAO;gBACP,QAAQ;aACT;SACF,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACI,mBAAmB,CAAC,OAAgB;QACzC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YACd,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE;gBACN,OAAO;aACR;SACF,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,mBAAmB;QACxB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAIpD,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE;YAC/B,GAAG,CAAC,IAAI,CACN,IAAI,CAAC,QAAQ,EACb,0BAA0B,EAC1B,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CAChD,CAAC;YACF,MAAM,mBAAmB,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CACtD,CAAC,mBAAmB,EAAE,EAAE,CACtB,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CACrB,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,KAAK,mBAAmB,CAAC,SAAS,CAC/D,CACJ,CAAC;YACF,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrC,IAAI,gBAAgB,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC9D,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,kBAAkB,EAAE;wBACzD,MAAM,EAAE,OAAO,CAAC,SAAS;qBAC1B,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;YAC7B,CAAC;YACD,GAAG,CAAC,IAAI,CACN,IAAI,CAAC,QAAQ,EACb,OAAO,CAAC,SAAS,EACjB,yBAAyB,EACzB,mBAAmB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CAC9C,CAAC;YAEF,uFAAuF;YACvF,iHAAiH;YACjH,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAClC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAC9D,IACE,YAAY;oBACZ,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,GAAG,IAAI,CAAC,wBAAwB,EACzD,CAAC;oBACD,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,aAAa,EAAE;wBACpD,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC;qBACxC,CAAC,CAAC;oBACH,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;gBAC7B,CAAC;YACH,CAAC;YACD,mBAAmB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;gBACzC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC1B,CAAC,CAAC,CAAC;YACH,OAAO;gBACL,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;gBAC9B,OAAO;aACR,CAAC;QACJ,CAAC,EACD,EAAE,MAAM,EAAE,IAAI,KAAK,EAAkB,EAAE,OAAO,EAAE,IAAI,GAAG,EAAgB,EAAE,CAC1E,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;QAE7B,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,gBAAgB,EAAE;YACvD,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;SAC5B,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,kEAAkE;IAC3D,mBAAmB;QAIxB,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAI/B,CAAC,EAAE,cAAc,EAAE,oBAAoB,EAAE,EAAE,OAAO,EAAE,EAAE;YACpD,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC7C,OAAO;oBACL,cAAc;oBACd,oBAAoB,EAAE,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC;iBAC3D,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,cAAc,EAAE,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC;gBAC9C,oBAAoB;aACrB,CAAC;QACJ,CAAC,EACD;YACE,cAAc,EAAE,IAAI,KAAK,EAAkB;YAC3C,oBAAoB,EAAE,IAAI,KAAK,EAAkB;SAClD,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACI,KAAK,CAAC,uBAAuB,CAClC,QAAqD;QAErD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,IAAI,WAAW;QAC7B,wCAAwC;QACxC,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EACjD,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,YAAY;aACd,KAAK,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;aAC9B,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,EAAE;YACpC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;QACtC,CAAC,CAAC,EACJ,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EACrB,SAAS,CACV,CAAC;QAEF,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACxB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,mBAAmB,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;gBAChE,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,WAAW,EAAE;oBAClD,MAAM,EAAE,OAAO;iBAChB,CAAC,CAAC;gBACH,OAAO,IAAI,CAAC;YACd,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,CAAC,KAAK,CACP,uDAAuD,EACvD,KAAK,CACN,CAAC;gBACF,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,oBAAoB,CAAC,OAAgB;QAC3C,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,kBAAkB,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QAC/D,MAAM,WAAW,GACf,OAAO,CAAC,OAAO;YACf,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;YAC1B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAE3C,IAAI,WAAW,EAAE,CAAC;YAChB,GAAG,CAAC,IAAI,CACN,IAAI,CAAC,QAAQ,EACb,gCAAgC,EAChC,OAAO,CAAC,SAAS,CAClB,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,oBAAoB,GAAG,IAAI,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC;QAChE,IAAI,oBAAoB,EAAE,CAAC;YACzB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,+BAA+B,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QAED,qDAAqD;QACrD,IAAI,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC;YAChC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,8BAA8B,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1D,GAAG,CAAC,KAAK,CACP,IAAI,CAAC,QAAQ,EACb,kFAAkF,EAClF,OAAO,CACR,CAAC;YACF,OAAO;QACT,CAAC;QACD,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,cAAc,EAAE;gBACrD,MAAM,EAAE,OAAO;aAChB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,iBAAiB,EAAE;gBACxD,MAAM,EAAE,OAAO;aAChB,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAC9B,IAAI,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;QAED,MAAM,mBAAmB,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CACtD,CAAC,mBAAmB,EAAE,EAAE,CACtB,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CACrB,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,KAAK,mBAAmB,CAAC,SAAS,CAC/D,CACJ,CAAC;QAEF,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAClC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACrD,GAAG,CAAC,IAAI,CACN,IAAI,CAAC,QAAQ,EACb,OAAO,CAAC,SAAS,EACjB,yBAAyB,EACzB,mBAAmB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CAC9C,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,gBAAgB,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC9D,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,kBAAkB,EAAE;oBACzD,MAAM,EAAE,OAAO,CAAC,SAAS;iBAC1B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,WAAW,CAAoB,IAAa;QACxD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5C,MAAM,OAAO,CAAC,IAAI,CAAC,MAA2B,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,qCAAqC,IAAI,CAAC,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC;YACvE,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CAAC,WAAW,EAAE;gBAC3B,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;aAC9D,CAAC,CACH,CAAC;YACF,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,SAAS,EAAE;gBAChD,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;aAC9D,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,aAAa,CACnB,KAAQ,EACR,SAA2B;QAE3B,IAAI,CAAC;YACH,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,4BAA4B,KAAK,GAAG,EAAE,KAAK,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAChC,OAAmB,EACnB,QAGE;QAEF,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExB,MAAM,SAAS,GAAG,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAEvD,gDAAgD;QAChD,gEAAgE;QAChE,8DAA8D;QAE9D,IAAI,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CACpC,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAC1C,CAAC;QAEF,qBAAqB;QACrB,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,qBAAqB,EAAE,SAAS,CAAC,CAAC;YAC1D,OAAO,GAAG,IAAI,cAAc,CAC1B,SAAS,EACT,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,YAAY;iBACd,KAAK,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;iBAC9B,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,EAAE;gBACpC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;YACtC,CAAC,CAAC,EACJ,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EACrB,OAAO,CACR,CAAC;YAEF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,mBAAmB,EAAE,SAAS,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC;gBACH,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAC3D,6EAA6E;gBAC7E,6BAA6B;gBAC7B,IAAI,OAAO,IAAI,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;oBACzC,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;oBACtC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBAC9B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAChC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oBAC7C,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,cAAc,EAAE;wBACrD,MAAM,EAAE,OAAO;qBAChB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,CAAC,KAAK,CAAC,oDAAoD,EAAE,KAAK,CAAC,CAAC;gBACvE,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,6BAA6B,CACzC,OAAmB,EACnB,QAA0D;QAE1D,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAClC,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,EACpC,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,QAAQ,EACb,EAAE,EACF,SAAS,EACT,SAAS,EACT,OAAO,CACR,CAAC;QAEF,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC1B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,CAAC,KAAK,CACP,6DAA6D,EAC7D,KAAK,CACN,CAAC;gBACF,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,uDAAuD;IAC/C,cAAc,CACpB,OAAuB,EACvB,aAA0B;QAE1B,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,iDAAiD;YACjD,qDAAqD;YACrD,sCAAsC;YACtC,uDAAuD;YACvD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QACjE,IAAI,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACrD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QACnD,CAAC;QAED,wCAAwC;QACxC,MAAM,oBAAoB,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CACjD,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS,CACnD,CAAC;QAEF,0DAA0D;QAC1D,IAAI,oBAAoB,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;QAEtC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mGAAmG;IACnG,8EAA8E;IAC9E,yDAAyD;IACjD,eAAe,CAAC,eAAwB;QAC9C,GAAG,CAAC,IAAI,CACN,IAAI,CAAC,QAAQ,EACb,4CAA4C,EAC5C,eAAe,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CACxD,CAAC;QACF,GAAG,CAAC,IAAI,CACN,IAAI,CAAC,QAAQ,EACb,0BAA0B,EAC1B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAC5C,CAAC;QACF,eAAe,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE;YACtD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAC9C,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,EAAE,EAAE;gBACjC,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;oBAClC,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,sBAAsB,EAAE,SAAS,CAAC,CAAC;gBAC3D,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,sBAAsB,EAAE;oBAC7D,MAAM,EAAE,SAAS;iBAClB,CAAC,CAAC;gBACH,OAAO,KAAK,CAAC;YACf,CAAC,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;YACjC,OAAO;QACT,CAAC;QAED,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,SAAS,CACrD,eAAe,CAAC,WAAW,EAC3B,IAAI,CAAC,MAAM,CAAC,OAAO,CACpB,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;YAC3D,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBAClD,OAAO,IAAI,CAAC;YACd,CAAC;YACD,oFAAoF;YACpF,8EAA8E;YAC9E,6DAA6D;YAC7D,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAClE,IAAI,KAAK,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBACvC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBAChD,GAAG,CAAC,IAAI,CACN,IAAI,CAAC,QAAQ,EACb,+BAA+B,EAC/B,OAAO,CAAC,SAAS,EACjB,KAAK,CACN,CAAC;gBACF,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,8BAA8B,EAAE;oBACrE,MAAM,EAAE;wBACN,SAAS,EAAE,OAAO,CAAC,SAAS;wBAC5B,KAAK;qBACN;iBACF,CAAC,CAAC;gBACH,gEAAgE;gBAChE,OAAO,IAAI,CAAC;YACd,CAAC;YACD,iDAAiD;YACjD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5C,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,sBAAsB,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAC1E,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,sBAAsB,EAAE;gBAC7D,MAAM,EAAE,OAAO,CAAC,SAAS;aAC1B,CAAC,CAAC;YACH,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@waku/sds","version":"0.0.6-
|
|
1
|
+
{"name":"@waku/sds","version":"0.0.6-e1212cc.0","description":"Scalable Data Sync implementation for the browser. Based on https://github.com/vacp2p/rfc-index/blob/main/vac/raw/sds.md","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"typesVersions":{"*":{"*":["*","dist/*","dist/*/index"]}},"type":"module","author":"Waku Team","homepage":"https://github.com/waku-org/js-waku/tree/master/packages/scalable-data-sync#readme","repository":{"type":"git","url":"https://github.com/waku-org/js-waku.git"},"bugs":{"url":"https://github.com/waku-org/js-waku/issues"},"license":"MIT OR Apache-2.0","keywords":["waku","decentralized","secure","communication","web3","ethereum","dapps","privacy"],"scripts":{"build":"run-s build:**","build:esm":"tsc","build:bundle":"rollup --config rollup.config.js","fix":"run-s fix:*","fix:lint":"eslint src *.js --fix","check":"run-s check:*","check:lint":"eslint src *.js","check:spelling":"cspell \"{README.md,src/**/*.ts}\"","check:tsc":"tsc -p tsconfig.dev.json","prepublish":"npm run build","reset-hard":"git clean -dfx -e .idea && git reset --hard && npm i && npm run build","test":"NODE_ENV=test run-s test:*","test:node":"NODE_ENV=test TS_NODE_PROJECT=./tsconfig.dev.json mocha","test:browser":"NODE_ENV=test karma start karma.conf.cjs"},"engines":{"node":">=22"},"dependencies":{"@libp2p/interface":"2.10.4","@noble/hashes":"^1.7.1","@waku/proto":"0.0.13-e1212cc.0","@waku/utils":"0.0.26-e1212cc.0","chai":"^5.1.2","lodash":"^4.17.21"},"devDependencies":{"@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.2.3","@waku/build-utils":"*","allure-commandline":"^2.27.0","allure-mocha":"^2.9.2","cspell":"^8.6.1","fast-check":"^3.19.0","mocha-multi-reporters":"^1.5.1","npm-run-all":"^4.1.5","rollup":"^4.12.0"},"files":["dist","bundle","src/**/*.ts","!**/*.spec.*","!**/*.json","CHANGELOG.md","LICENSE","README.md"]}
|
package/src/index.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { HistoryEntry, Message, MessageId } from "./message.js";
|
|
2
2
|
|
|
3
3
|
export enum MessageChannelEvent {
|
|
4
4
|
OutMessageSent = "sds:out:message-sent",
|
|
@@ -9,182 +9,10 @@ export enum MessageChannelEvent {
|
|
|
9
9
|
InMessageMissing = "sds:in:message-missing",
|
|
10
10
|
OutSyncSent = "sds:out:sync-sent",
|
|
11
11
|
InSyncReceived = "sds:in:sync-received",
|
|
12
|
-
|
|
12
|
+
InMessageLost = "sds:in:message-irretrievably-lost",
|
|
13
13
|
ErrorTask = "sds:error-task"
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
export type MessageId = string;
|
|
17
|
-
export type HistoryEntry = proto_sds_message.HistoryEntry;
|
|
18
|
-
export type ChannelId = string;
|
|
19
|
-
export type SenderId = string;
|
|
20
|
-
|
|
21
|
-
export class Message implements proto_sds_message.SdsMessage {
|
|
22
|
-
public constructor(
|
|
23
|
-
public messageId: string,
|
|
24
|
-
public channelId: string,
|
|
25
|
-
public senderId: string,
|
|
26
|
-
public causalHistory: proto_sds_message.HistoryEntry[],
|
|
27
|
-
public lamportTimestamp?: number | undefined,
|
|
28
|
-
public bloomFilter?: Uint8Array<ArrayBufferLike> | undefined,
|
|
29
|
-
public content?: Uint8Array<ArrayBufferLike> | undefined,
|
|
30
|
-
/**
|
|
31
|
-
* Not encoded, set after it is sent, used to include in follow-up messages
|
|
32
|
-
*/
|
|
33
|
-
public retrievalHint?: Uint8Array | undefined
|
|
34
|
-
) {}
|
|
35
|
-
|
|
36
|
-
public encode(): Uint8Array {
|
|
37
|
-
return proto_sds_message.SdsMessage.encode(this);
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
public static decode(data: Uint8Array): Message {
|
|
41
|
-
const {
|
|
42
|
-
messageId,
|
|
43
|
-
channelId,
|
|
44
|
-
senderId,
|
|
45
|
-
causalHistory,
|
|
46
|
-
lamportTimestamp,
|
|
47
|
-
bloomFilter,
|
|
48
|
-
content
|
|
49
|
-
} = proto_sds_message.SdsMessage.decode(data);
|
|
50
|
-
return new Message(
|
|
51
|
-
messageId,
|
|
52
|
-
channelId,
|
|
53
|
-
senderId,
|
|
54
|
-
causalHistory,
|
|
55
|
-
lamportTimestamp,
|
|
56
|
-
bloomFilter,
|
|
57
|
-
content
|
|
58
|
-
);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
export class SyncMessage extends Message {
|
|
63
|
-
public constructor(
|
|
64
|
-
public messageId: string,
|
|
65
|
-
public channelId: string,
|
|
66
|
-
public senderId: string,
|
|
67
|
-
public causalHistory: proto_sds_message.HistoryEntry[],
|
|
68
|
-
public lamportTimestamp: number,
|
|
69
|
-
public bloomFilter: Uint8Array<ArrayBufferLike> | undefined,
|
|
70
|
-
public content: undefined,
|
|
71
|
-
/**
|
|
72
|
-
* Not encoded, set after it is sent, used to include in follow-up messages
|
|
73
|
-
*/
|
|
74
|
-
public retrievalHint?: Uint8Array | undefined
|
|
75
|
-
) {
|
|
76
|
-
super(
|
|
77
|
-
messageId,
|
|
78
|
-
channelId,
|
|
79
|
-
senderId,
|
|
80
|
-
causalHistory,
|
|
81
|
-
lamportTimestamp,
|
|
82
|
-
bloomFilter,
|
|
83
|
-
content,
|
|
84
|
-
retrievalHint
|
|
85
|
-
);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
export function isSyncMessage(
|
|
90
|
-
message: Message | ContentMessage | SyncMessage | EphemeralMessage
|
|
91
|
-
): message is SyncMessage {
|
|
92
|
-
return Boolean(
|
|
93
|
-
"lamportTimestamp" in message &&
|
|
94
|
-
typeof message.lamportTimestamp === "number" &&
|
|
95
|
-
(message.content === undefined || message.content.length === 0)
|
|
96
|
-
);
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
export class EphemeralMessage extends Message {
|
|
100
|
-
public constructor(
|
|
101
|
-
public messageId: string,
|
|
102
|
-
public channelId: string,
|
|
103
|
-
public senderId: string,
|
|
104
|
-
public causalHistory: proto_sds_message.HistoryEntry[],
|
|
105
|
-
public lamportTimestamp: undefined,
|
|
106
|
-
public bloomFilter: Uint8Array<ArrayBufferLike> | undefined,
|
|
107
|
-
public content: Uint8Array<ArrayBufferLike>,
|
|
108
|
-
/**
|
|
109
|
-
* Not encoded, set after it is sent, used to include in follow-up messages
|
|
110
|
-
*/
|
|
111
|
-
public retrievalHint?: Uint8Array | undefined
|
|
112
|
-
) {
|
|
113
|
-
if (!content || !content.length) {
|
|
114
|
-
throw Error("Ephemeral Message must have content");
|
|
115
|
-
}
|
|
116
|
-
super(
|
|
117
|
-
messageId,
|
|
118
|
-
channelId,
|
|
119
|
-
senderId,
|
|
120
|
-
causalHistory,
|
|
121
|
-
lamportTimestamp,
|
|
122
|
-
bloomFilter,
|
|
123
|
-
content,
|
|
124
|
-
retrievalHint
|
|
125
|
-
);
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
export function isEphemeralMessage(
|
|
130
|
-
message: Message | ContentMessage | SyncMessage | EphemeralMessage
|
|
131
|
-
): message is EphemeralMessage {
|
|
132
|
-
return Boolean(
|
|
133
|
-
message.lamportTimestamp === undefined &&
|
|
134
|
-
"content" in message &&
|
|
135
|
-
message.content &&
|
|
136
|
-
message.content.length
|
|
137
|
-
);
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
export class ContentMessage extends Message {
|
|
141
|
-
public constructor(
|
|
142
|
-
public messageId: string,
|
|
143
|
-
public channelId: string,
|
|
144
|
-
public senderId: string,
|
|
145
|
-
public causalHistory: proto_sds_message.HistoryEntry[],
|
|
146
|
-
public lamportTimestamp: number,
|
|
147
|
-
public bloomFilter: Uint8Array<ArrayBufferLike> | undefined,
|
|
148
|
-
public content: Uint8Array<ArrayBufferLike>,
|
|
149
|
-
/**
|
|
150
|
-
* Not encoded, set after it is sent, used to include in follow-up messages
|
|
151
|
-
*/
|
|
152
|
-
public retrievalHint?: Uint8Array | undefined
|
|
153
|
-
) {
|
|
154
|
-
if (!content.length) {
|
|
155
|
-
throw Error("Content Message must have content");
|
|
156
|
-
}
|
|
157
|
-
super(
|
|
158
|
-
messageId,
|
|
159
|
-
channelId,
|
|
160
|
-
senderId,
|
|
161
|
-
causalHistory,
|
|
162
|
-
lamportTimestamp,
|
|
163
|
-
bloomFilter,
|
|
164
|
-
content,
|
|
165
|
-
retrievalHint
|
|
166
|
-
);
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
public static compare(a: ContentMessage, b: ContentMessage): number {
|
|
170
|
-
if (a.lamportTimestamp !== b.lamportTimestamp) {
|
|
171
|
-
return a.lamportTimestamp - b.lamportTimestamp;
|
|
172
|
-
}
|
|
173
|
-
return a.messageId.localeCompare(b.messageId);
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
export function isContentMessage(
|
|
178
|
-
message: Message | ContentMessage
|
|
179
|
-
): message is ContentMessage {
|
|
180
|
-
return Boolean(
|
|
181
|
-
"lamportTimestamp" in message &&
|
|
182
|
-
typeof message.lamportTimestamp === "number" &&
|
|
183
|
-
message.content &&
|
|
184
|
-
message.content.length
|
|
185
|
-
);
|
|
186
|
-
}
|
|
187
|
-
|
|
188
16
|
export type MessageChannelEvents = {
|
|
189
17
|
[MessageChannelEvent.OutMessageSent]: CustomEvent<Message>;
|
|
190
18
|
[MessageChannelEvent.InMessageDelivered]: CustomEvent<MessageId>;
|
|
@@ -195,7 +23,7 @@ export type MessageChannelEvents = {
|
|
|
195
23
|
count: number;
|
|
196
24
|
}>;
|
|
197
25
|
[MessageChannelEvent.InMessageMissing]: CustomEvent<HistoryEntry[]>;
|
|
198
|
-
[MessageChannelEvent.
|
|
26
|
+
[MessageChannelEvent.InMessageLost]: CustomEvent<HistoryEntry[]>;
|
|
199
27
|
[MessageChannelEvent.OutSyncSent]: CustomEvent<Message>;
|
|
200
28
|
[MessageChannelEvent.InSyncReceived]: CustomEvent<Message>;
|
|
201
29
|
[MessageChannelEvent.ErrorTask]: CustomEvent<any>;
|
|
@@ -1,3 +1,16 @@
|
|
|
1
1
|
export * from "./command_queue.js";
|
|
2
2
|
export * from "./events.js";
|
|
3
3
|
export * from "./message_channel.js";
|
|
4
|
+
export {
|
|
5
|
+
ChannelId,
|
|
6
|
+
ContentMessage,
|
|
7
|
+
EphemeralMessage,
|
|
8
|
+
HistoryEntry,
|
|
9
|
+
Message,
|
|
10
|
+
MessageId,
|
|
11
|
+
SenderId,
|
|
12
|
+
SyncMessage,
|
|
13
|
+
isContentMessage,
|
|
14
|
+
isEphemeralMessage,
|
|
15
|
+
isSyncMessage
|
|
16
|
+
} from "./message.js";
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import _ from "lodash";
|
|
2
|
+
|
|
3
|
+
import { ContentMessage, isContentMessage } from "./message.js";
|
|
3
4
|
|
|
4
5
|
/**
|
|
5
6
|
* In-Memory implementation of a local store of messages.
|
|
@@ -10,63 +11,56 @@ import { SortedArrayBase } from "./sorted_array_base.js";
|
|
|
10
11
|
*
|
|
11
12
|
* Only stores content message: `message.lamportTimestamp` and `message.content` are present.
|
|
12
13
|
*/
|
|
13
|
-
export class MemLocalHistory
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
export class MemLocalHistory {
|
|
15
|
+
private items: ContentMessage[] = [];
|
|
16
|
+
|
|
17
|
+
public get length(): number {
|
|
18
|
+
return this.items.length;
|
|
16
19
|
}
|
|
17
20
|
|
|
18
21
|
public push(...items: ContentMessage[]): number {
|
|
19
22
|
for (const item of items) {
|
|
20
|
-
this.
|
|
23
|
+
this.validateMessage(item);
|
|
21
24
|
}
|
|
22
|
-
|
|
25
|
+
|
|
26
|
+
// Add new items and ensure uniqueness by messageId using sortedUniqBy
|
|
27
|
+
// The valueOf() method on ContentMessage enables native < operator sorting
|
|
28
|
+
this.items = _.sortedUniqBy([...this.items, ...items], "messageId");
|
|
29
|
+
|
|
23
30
|
return this.items.length;
|
|
24
31
|
}
|
|
25
32
|
|
|
26
|
-
public
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
+
public some(
|
|
34
|
+
predicate: (
|
|
35
|
+
value: ContentMessage,
|
|
36
|
+
index: number,
|
|
37
|
+
array: ContentMessage[]
|
|
38
|
+
) => unknown,
|
|
39
|
+
thisArg?: any
|
|
40
|
+
): boolean {
|
|
41
|
+
return this.items.some(predicate, thisArg);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
public slice(start?: number, end?: number): ContentMessage[] {
|
|
45
|
+
return this.items.slice(start, end);
|
|
33
46
|
}
|
|
34
47
|
|
|
35
|
-
public
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
return this.items;
|
|
48
|
+
public find(
|
|
49
|
+
predicate: (
|
|
50
|
+
value: ContentMessage,
|
|
51
|
+
index: number,
|
|
52
|
+
obj: ContentMessage[]
|
|
53
|
+
) => unknown,
|
|
54
|
+
thisArg?: any
|
|
55
|
+
): ContentMessage | undefined {
|
|
56
|
+
return this.items.find(predicate, thisArg);
|
|
44
57
|
}
|
|
45
58
|
|
|
46
59
|
private validateMessage(message: ContentMessage): void {
|
|
47
|
-
if (
|
|
48
|
-
!message.lamportTimestamp ||
|
|
49
|
-
!message.content ||
|
|
50
|
-
!message.content.length ||
|
|
51
|
-
!message.messageId
|
|
52
|
-
) {
|
|
60
|
+
if (!isContentMessage(message)) {
|
|
53
61
|
throw new Error(
|
|
54
62
|
"Message must have lamportTimestamp and content defined, sync and ephemeral messages cannot be stored"
|
|
55
63
|
);
|
|
56
64
|
}
|
|
57
65
|
}
|
|
58
|
-
|
|
59
|
-
private validateAndAddMessage(newMessage: ContentMessage): void {
|
|
60
|
-
this.validateMessage(newMessage);
|
|
61
|
-
|
|
62
|
-
// Check if the entry is already present
|
|
63
|
-
const existingHistoryEntry = this.items.find(
|
|
64
|
-
({ messageId }) => newMessage.messageId === messageId
|
|
65
|
-
);
|
|
66
|
-
|
|
67
|
-
// If history entry is already present, no need to re-add
|
|
68
|
-
if (!existingHistoryEntry) {
|
|
69
|
-
this.items.push(newMessage);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
66
|
}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import { proto_sds_message } from "@waku/proto";
|
|
2
|
+
|
|
3
|
+
export type MessageId = string;
|
|
4
|
+
export type HistoryEntry = proto_sds_message.HistoryEntry;
|
|
5
|
+
export type ChannelId = string;
|
|
6
|
+
export type SenderId = string;
|
|
7
|
+
|
|
8
|
+
export class Message implements proto_sds_message.SdsMessage {
|
|
9
|
+
public constructor(
|
|
10
|
+
public messageId: string,
|
|
11
|
+
public channelId: string,
|
|
12
|
+
public senderId: string,
|
|
13
|
+
public causalHistory: proto_sds_message.HistoryEntry[],
|
|
14
|
+
public lamportTimestamp?: number | undefined,
|
|
15
|
+
public bloomFilter?: Uint8Array<ArrayBufferLike> | undefined,
|
|
16
|
+
public content?: Uint8Array<ArrayBufferLike> | undefined,
|
|
17
|
+
/**
|
|
18
|
+
* Not encoded, set after it is sent, used to include in follow-up messages
|
|
19
|
+
*/
|
|
20
|
+
public retrievalHint?: Uint8Array | undefined
|
|
21
|
+
) {}
|
|
22
|
+
|
|
23
|
+
public encode(): Uint8Array {
|
|
24
|
+
return proto_sds_message.SdsMessage.encode(this);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
public static decode(data: Uint8Array): Message {
|
|
28
|
+
const {
|
|
29
|
+
messageId,
|
|
30
|
+
channelId,
|
|
31
|
+
senderId,
|
|
32
|
+
causalHistory,
|
|
33
|
+
lamportTimestamp,
|
|
34
|
+
bloomFilter,
|
|
35
|
+
content
|
|
36
|
+
} = proto_sds_message.SdsMessage.decode(data);
|
|
37
|
+
return new Message(
|
|
38
|
+
messageId,
|
|
39
|
+
channelId,
|
|
40
|
+
senderId,
|
|
41
|
+
causalHistory,
|
|
42
|
+
lamportTimestamp,
|
|
43
|
+
bloomFilter,
|
|
44
|
+
content
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export class SyncMessage extends Message {
|
|
50
|
+
public constructor(
|
|
51
|
+
public messageId: string,
|
|
52
|
+
public channelId: string,
|
|
53
|
+
public senderId: string,
|
|
54
|
+
public causalHistory: proto_sds_message.HistoryEntry[],
|
|
55
|
+
public lamportTimestamp: number,
|
|
56
|
+
public bloomFilter: Uint8Array<ArrayBufferLike> | undefined,
|
|
57
|
+
public content: undefined,
|
|
58
|
+
/**
|
|
59
|
+
* Not encoded, set after it is sent, used to include in follow-up messages
|
|
60
|
+
*/
|
|
61
|
+
public retrievalHint?: Uint8Array | undefined
|
|
62
|
+
) {
|
|
63
|
+
super(
|
|
64
|
+
messageId,
|
|
65
|
+
channelId,
|
|
66
|
+
senderId,
|
|
67
|
+
causalHistory,
|
|
68
|
+
lamportTimestamp,
|
|
69
|
+
bloomFilter,
|
|
70
|
+
content,
|
|
71
|
+
retrievalHint
|
|
72
|
+
);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export function isSyncMessage(
|
|
77
|
+
message: Message | ContentMessage | SyncMessage | EphemeralMessage
|
|
78
|
+
): message is SyncMessage {
|
|
79
|
+
return Boolean(
|
|
80
|
+
"lamportTimestamp" in message &&
|
|
81
|
+
typeof message.lamportTimestamp === "number" &&
|
|
82
|
+
(message.content === undefined || message.content.length === 0)
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
export class EphemeralMessage extends Message {
|
|
87
|
+
public constructor(
|
|
88
|
+
public messageId: string,
|
|
89
|
+
public channelId: string,
|
|
90
|
+
public senderId: string,
|
|
91
|
+
public causalHistory: proto_sds_message.HistoryEntry[],
|
|
92
|
+
public lamportTimestamp: undefined,
|
|
93
|
+
public bloomFilter: Uint8Array<ArrayBufferLike> | undefined,
|
|
94
|
+
public content: Uint8Array<ArrayBufferLike>,
|
|
95
|
+
/**
|
|
96
|
+
* Not encoded, set after it is sent, used to include in follow-up messages
|
|
97
|
+
*/
|
|
98
|
+
public retrievalHint?: Uint8Array | undefined
|
|
99
|
+
) {
|
|
100
|
+
if (!content || !content.length) {
|
|
101
|
+
throw Error("Ephemeral Message must have content");
|
|
102
|
+
}
|
|
103
|
+
super(
|
|
104
|
+
messageId,
|
|
105
|
+
channelId,
|
|
106
|
+
senderId,
|
|
107
|
+
causalHistory,
|
|
108
|
+
lamportTimestamp,
|
|
109
|
+
bloomFilter,
|
|
110
|
+
content,
|
|
111
|
+
retrievalHint
|
|
112
|
+
);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
export function isEphemeralMessage(
|
|
117
|
+
message: Message | ContentMessage | SyncMessage | EphemeralMessage
|
|
118
|
+
): message is EphemeralMessage {
|
|
119
|
+
return Boolean(
|
|
120
|
+
message.lamportTimestamp === undefined &&
|
|
121
|
+
"content" in message &&
|
|
122
|
+
message.content &&
|
|
123
|
+
message.content.length
|
|
124
|
+
);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
export class ContentMessage extends Message {
|
|
128
|
+
public constructor(
|
|
129
|
+
public messageId: string,
|
|
130
|
+
public channelId: string,
|
|
131
|
+
public senderId: string,
|
|
132
|
+
public causalHistory: proto_sds_message.HistoryEntry[],
|
|
133
|
+
public lamportTimestamp: number,
|
|
134
|
+
public bloomFilter: Uint8Array<ArrayBufferLike> | undefined,
|
|
135
|
+
public content: Uint8Array<ArrayBufferLike>,
|
|
136
|
+
/**
|
|
137
|
+
* Not encoded, set after it is sent, used to include in follow-up messages
|
|
138
|
+
*/
|
|
139
|
+
public retrievalHint?: Uint8Array | undefined
|
|
140
|
+
) {
|
|
141
|
+
if (!content.length) {
|
|
142
|
+
throw Error("Content Message must have content");
|
|
143
|
+
}
|
|
144
|
+
super(
|
|
145
|
+
messageId,
|
|
146
|
+
channelId,
|
|
147
|
+
senderId,
|
|
148
|
+
causalHistory,
|
|
149
|
+
lamportTimestamp,
|
|
150
|
+
bloomFilter,
|
|
151
|
+
content,
|
|
152
|
+
retrievalHint
|
|
153
|
+
);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
// `valueOf` is used by comparison operands such as `<`
|
|
157
|
+
public valueOf(): string {
|
|
158
|
+
// Create a sortable string representation that matches the compare logic
|
|
159
|
+
// Pad lamportTimestamp to ensure proper lexicographic ordering
|
|
160
|
+
// Use 16 digits to handle up to Number.MAX_SAFE_INTEGER (9007199254740991)
|
|
161
|
+
const paddedTimestamp = this.lamportTimestamp.toString().padStart(16, "0");
|
|
162
|
+
return `${paddedTimestamp}_${this.messageId}`;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
export function isContentMessage(
|
|
167
|
+
message: Message | ContentMessage
|
|
168
|
+
): message is ContentMessage {
|
|
169
|
+
return Boolean(
|
|
170
|
+
"lamportTimestamp" in message &&
|
|
171
|
+
typeof message.lamportTimestamp === "number" &&
|
|
172
|
+
message.content &&
|
|
173
|
+
message.content.length
|
|
174
|
+
);
|
|
175
|
+
}
|
|
@@ -6,22 +6,21 @@ import { Logger } from "@waku/utils";
|
|
|
6
6
|
import { DefaultBloomFilter } from "../bloom_filter/bloom.js";
|
|
7
7
|
|
|
8
8
|
import { Command, Handlers, ParamsByAction, Task } from "./command_queue.js";
|
|
9
|
+
import { MessageChannelEvent, MessageChannelEvents } from "./events.js";
|
|
10
|
+
import { MemLocalHistory } from "./mem_local_history.js";
|
|
9
11
|
import {
|
|
10
|
-
|
|
12
|
+
ChannelId,
|
|
11
13
|
ContentMessage,
|
|
12
14
|
EphemeralMessage,
|
|
13
|
-
|
|
15
|
+
HistoryEntry,
|
|
14
16
|
isContentMessage,
|
|
15
17
|
isEphemeralMessage,
|
|
16
18
|
isSyncMessage,
|
|
17
19
|
Message,
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
type MessageId,
|
|
21
|
-
type SenderId,
|
|
20
|
+
MessageId,
|
|
21
|
+
SenderId,
|
|
22
22
|
SyncMessage
|
|
23
|
-
} from "./
|
|
24
|
-
import { MemLocalHistory } from "./mem_local_history.js";
|
|
23
|
+
} from "./message.js";
|
|
25
24
|
|
|
26
25
|
export const DEFAULT_BLOOM_FILTER_OPTIONS = {
|
|
27
26
|
capacity: 10000,
|
|
@@ -42,7 +41,7 @@ export interface MessageChannelOptions {
|
|
|
42
41
|
*
|
|
43
42
|
* @default undefined because it is coupled to processTask calls frequency
|
|
44
43
|
*/
|
|
45
|
-
|
|
44
|
+
timeoutForLostMessagesMs?: number;
|
|
46
45
|
/**
|
|
47
46
|
* How many possible acks does it take to consider it a definitive ack.
|
|
48
47
|
*/
|
|
@@ -66,7 +65,7 @@ export class MessageChannel extends TypedEventEmitter<MessageChannelEvents> {
|
|
|
66
65
|
private timeReceived: Map<MessageId, number>;
|
|
67
66
|
private readonly causalHistorySize: number;
|
|
68
67
|
private readonly possibleAcksThreshold: number;
|
|
69
|
-
private readonly
|
|
68
|
+
private readonly timeoutForLostMessagesMs?: number;
|
|
70
69
|
|
|
71
70
|
private tasks: Task[] = [];
|
|
72
71
|
private handlers: Handlers = {
|
|
@@ -108,8 +107,7 @@ export class MessageChannel extends TypedEventEmitter<MessageChannelEvents> {
|
|
|
108
107
|
this.possibleAcksThreshold =
|
|
109
108
|
options.possibleAcksThreshold ?? DEFAULT_POSSIBLE_ACKS_THRESHOLD;
|
|
110
109
|
this.timeReceived = new Map();
|
|
111
|
-
this.
|
|
112
|
-
options.timeoutToMarkMessageIrretrievableMs;
|
|
110
|
+
this.timeoutForLostMessagesMs = options.timeoutForLostMessagesMs;
|
|
113
111
|
}
|
|
114
112
|
|
|
115
113
|
public static getMessageId(payload: Uint8Array): MessageId {
|
|
@@ -289,13 +287,13 @@ export class MessageChannel extends TypedEventEmitter<MessageChannelEvents> {
|
|
|
289
287
|
|
|
290
288
|
// Optionally, if a message has not been received after a predetermined amount of time,
|
|
291
289
|
// its dependencies are marked as irretrievably lost (implicitly by removing it from the buffer without delivery)
|
|
292
|
-
if (this.
|
|
290
|
+
if (this.timeoutForLostMessagesMs) {
|
|
293
291
|
const timeReceived = this.timeReceived.get(message.messageId);
|
|
294
292
|
if (
|
|
295
293
|
timeReceived &&
|
|
296
|
-
Date.now() - timeReceived > this.
|
|
294
|
+
Date.now() - timeReceived > this.timeoutForLostMessagesMs
|
|
297
295
|
) {
|
|
298
|
-
this.safeSendEvent(MessageChannelEvent.
|
|
296
|
+
this.safeSendEvent(MessageChannelEvent.InMessageLost, {
|
|
299
297
|
detail: Array.from(missingDependencies)
|
|
300
298
|
});
|
|
301
299
|
return { buffer, missing };
|