cojson 0.0.6 → 0.0.8

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.
Files changed (74) hide show
  1. package/.eslintrc.cjs +11 -8
  2. package/dist/coValue.d.ts +97 -0
  3. package/dist/coValue.js +341 -401
  4. package/dist/coValue.js.map +1 -0
  5. package/dist/coValue.test.d.ts +1 -0
  6. package/dist/coValue.test.js +69 -113
  7. package/dist/coValue.test.js.map +1 -0
  8. package/dist/contentType.d.ts +15 -0
  9. package/dist/contentType.js +5 -5
  10. package/dist/contentType.js.map +1 -0
  11. package/dist/contentType.test.d.ts +1 -0
  12. package/dist/contentType.test.js +138 -168
  13. package/dist/contentType.test.js.map +1 -0
  14. package/dist/contentTypes/coList.d.ts +11 -0
  15. package/dist/contentTypes/coList.js +14 -16
  16. package/dist/contentTypes/coList.js.map +1 -0
  17. package/dist/contentTypes/coMap.d.ts +56 -0
  18. package/dist/contentTypes/coMap.js +112 -112
  19. package/dist/contentTypes/coMap.js.map +1 -0
  20. package/dist/contentTypes/coStream.d.ts +11 -0
  21. package/dist/contentTypes/coStream.js +14 -16
  22. package/dist/contentTypes/coStream.js.map +1 -0
  23. package/dist/contentTypes/static.d.ts +11 -0
  24. package/dist/contentTypes/static.js +12 -14
  25. package/dist/contentTypes/static.js.map +1 -0
  26. package/dist/crypto.d.ts +97 -0
  27. package/dist/crypto.js +100 -151
  28. package/dist/crypto.js.map +1 -0
  29. package/dist/crypto.test.d.ts +1 -0
  30. package/dist/crypto.test.js +94 -134
  31. package/dist/crypto.test.js.map +1 -0
  32. package/dist/ids.d.ts +7 -0
  33. package/dist/ids.js +2 -1
  34. package/dist/ids.js.map +1 -0
  35. package/dist/index.d.ts +19 -0
  36. package/dist/index.js +10 -18
  37. package/dist/index.js.map +1 -0
  38. package/dist/jsonValue.d.ts +7 -0
  39. package/dist/jsonValue.js +2 -1
  40. package/dist/jsonValue.js.map +1 -0
  41. package/dist/node.d.ts +33 -0
  42. package/dist/node.js +102 -133
  43. package/dist/node.js.map +1 -0
  44. package/dist/permissions.d.ts +54 -0
  45. package/dist/permissions.js +202 -228
  46. package/dist/permissions.js.map +1 -0
  47. package/dist/permissions.test.d.ts +1 -0
  48. package/dist/permissions.test.js +724 -915
  49. package/dist/permissions.test.js.map +1 -0
  50. package/dist/sync.d.ts +80 -0
  51. package/dist/sync.js +247 -294
  52. package/dist/sync.js.map +1 -0
  53. package/dist/sync.test.d.ts +1 -0
  54. package/dist/sync.test.js +763 -798
  55. package/dist/sync.test.js.map +1 -0
  56. package/package.json +7 -4
  57. package/src/coValue.test.ts +3 -4
  58. package/src/coValue.ts +11 -17
  59. package/src/contentType.test.ts +3 -3
  60. package/src/contentType.ts +6 -6
  61. package/src/contentTypes/coList.ts +4 -4
  62. package/src/contentTypes/coMap.ts +6 -6
  63. package/src/contentTypes/coStream.ts +4 -4
  64. package/src/contentTypes/static.ts +5 -5
  65. package/src/crypto.test.ts +1 -1
  66. package/src/crypto.ts +2 -2
  67. package/src/index.ts +9 -7
  68. package/src/jsonValue.ts +1 -1
  69. package/src/node.ts +6 -7
  70. package/src/permissions.test.ts +5 -5
  71. package/src/permissions.ts +7 -7
  72. package/src/sync.test.ts +7 -7
  73. package/src/sync.ts +6 -6
  74. package/tsconfig.json +1 -7
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coValue.js","sourceRoot":"","sources":["../src/coValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EASH,aAAa,EACb,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,MAAM,EACN,SAAS,EACT,IAAI,EACJ,MAAM,EACN,qBAAqB,EACrB,qBAAqB,EAErB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,wBAAwB,GAC3B,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAEH,IAAI,EACJ,0BAA0B,EAC1B,iBAAiB,GACpB,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAWlD,SAAS,kBAAkB,CAAC,MAAqB;IAC7C,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAC/B,IAAI,MAAM,CAAC,cAAc,EAAE;QACvB,OAAO,MAAM,MAAM,CAAC,cAAc,KAAK,IAAI,CAAC,KAAK,CAC7C,aAAa,CAAC,MAAM,CACvB,EAAE,CAAC;KACP;SAAM;QACH,OAAO,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;KACpD;AACL,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,SAAoB;IACrD,OAAO,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAY,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IAC/C,OAAO,GAAG,OAAO,aAAa,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAClE,CAAC;AAiCD,MAAM,OAAO,OAAO;IAQhB,YAAY,MAAqB,EAAE,IAAe;QAFlD,cAAS,GAAyC,IAAI,GAAG,EAAE,CAAC;QAGxD,IAAI,CAAC,EAAE,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,4BAA4B,CACxB,eAAgC,EAChC,YAAuB;QAEvB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAClD,eAAe,EACf,YAAY,CACf,CAAC;QAEF,OAAO,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChD,CAAC;IAED,UAAU;QACN,OAAO;YACH,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,MAAM,CAAC,WAAW,CACxB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;gBAC1C,CAAC;gBACD,CAAC,CAAC,YAAY,CAAC,MAAM;aACxB,CAAC,CACL;SACJ,CAAC;IACN,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,IAAI,CAAC;IACrC,CAAC;IAED,iBAAiB;QACb,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;QACzC,OAAO;YACH,SAAS;YACT,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,YAAY,CAAC,MAAM,IAAI,CAAC;SAC9D,CAAC;IACN,CAAC;IAED,kBAAkB,CACd,SAAoB,EACpB,eAA8B,EAC9B,OAAa,EACb,YAAuB;QAEvB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAC3C,oBAAoB,CAAC,SAAS,CAAC,EAC/B,2CAA2C,CAC9C,CAAC,WAAW,CAAC;QAEd,IAAI,CAAC,WAAW,EAAE;YACd,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC;YAC/D,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,oBAAoB,CACnE,SAAS,EACT,eAAe,CAClB,CAAC;QAEF,IAAI,OAAO,KAAK,eAAe,EAAE;YAC7B,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;YAC3D,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE;YAC7C,OAAO,CAAC,IAAI,CACR,mBAAmB,EACnB,YAAY,EACZ,OAAO,EACP,WAAW,CACd,CAAC;YACF,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,YAAY,IAAI,EAAE,CAAC;QAElE,YAAY,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC;QAEtC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG;YACvB,YAAY;YACZ,QAAQ,EAAE,OAAO;YACjB,aAAa,EAAE,gBAAgB;YAC/B,aAAa,EAAE,YAAY;SAC9B,CAAC;QAEF,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QAEzB,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;YACnC,QAAQ,CAAC,OAAO,CAAC,CAAC;SACrB;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,SAAS,CAAC,QAAyC;QAC/C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7B,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAEnC,OAAO,GAAG,EAAE;YACR,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC,CAAC;IACN,CAAC;IAED,oBAAoB,CAChB,SAAoB,EACpB,eAA8B;QAE9B,MAAM,aAAa,GACf,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,CAAC,KAAK,EAAE;YAC/C,IAAI,aAAa,EAAE,CAAC;QACxB,KAAK,MAAM,WAAW,IAAI,eAAe,EAAE;YACvC,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;SACrC;QAED,MAAM,gBAAgB,GAAG,aAAa,CAAC,KAAK,EAAE,CAAC;QAE/C,OAAO;YACH,eAAe,EAAE,aAAa,CAAC,MAAM,EAAE;YACvC,gBAAgB;SACnB,CAAC;IACN,CAAC;IAED,eAAe,CACX,OAAoB,EACpB,OAA+B;QAE/B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE1B,IAAI,WAAwB,CAAC;QAE7B,IAAI,OAAO,KAAK,SAAS,EAAE;YACvB,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAElE,IAAI,CAAC,SAAS,EAAE;gBACZ,MAAM,IAAI,KAAK,CACX,gDAAgD,CACnD,CAAC;aACL;YAED,WAAW,GAAG;gBACV,OAAO,EAAE,SAAS;gBAClB,MAAM;gBACN,OAAO,EAAE,KAAK;gBACd,gBAAgB,EAAE,qBAAqB,CAAC,OAAO,EAAE,SAAS,EAAE;oBACxD,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,EAAE,EAAE,IAAI,CAAC,iBAAiB,EAAE;iBAC/B,CAAC;aACL,CAAC;SACL;aAAM;YACH,WAAW,GAAG;gBACV,OAAO,EAAE,UAAU;gBACnB,MAAM;gBACN,OAAO;aACV,CAAC;SACL;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;QAEzC,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE;YAC7D,WAAW;SACd,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,CAClB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,EACzC,eAAe,CAClB,CAAC;QAEF,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CACnC,SAAS,EACT,CAAC,WAAW,CAAC,EACb,eAAe,EACf,SAAS,CACZ,CAAC;QAEF,IAAI,OAAO,EAAE;YACT,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SACzC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,iBAAiB;QACb,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,OAAO,IAAI,CAAC,OAAO,CAAC;SACvB;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE;YAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;SAClC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;YACtC,IAAI,CAAC,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;SACnC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE;YACxC,IAAI,CAAC,OAAO,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;SACrC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;YACtC,IAAI,CAAC,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;SACnC;aAAM;YACH,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;SAC/D;QAED,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,0BAA0B;QACtB,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,IAAI,CAAC,CAAC;QAE3D,MAAM,eAAe,GAA2B,iBAAiB;aAC5D,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE;YAClB,IAAI,EAAE,CAAC,OAAO,KAAK,UAAU,EAAE;gBAC3B,OAAO;oBACH,IAAI;oBACJ,MAAM,EAAE,EAAE,CAAC,MAAM;oBACjB,OAAO,EAAE,EAAE,CAAC,OAAO;iBACtB,CAAC;aACL;iBAAM;gBACH,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;gBAE5C,IAAI,CAAC,OAAO,EAAE;oBACV,OAAO,SAAS,CAAC;iBACpB;qBAAM;oBACH,MAAM,eAAe,GAAG,qBAAqB,CACzC,EAAE,CAAC,gBAAgB,EACnB,OAAO,EACP;wBACI,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,EAAE,EAAE,IAAI;qBACX,CACJ,CAAC;oBAEF,IAAI,CAAC,eAAe,EAAE;wBAClB,OAAO,CAAC,KAAK,CACT,kDAAkD,CACrD,CAAC;wBACF,OAAO,SAAS,CAAC;qBACpB;oBACD,OAAO;wBACH,IAAI;wBACJ,MAAM,EAAE,EAAE,CAAC,MAAM;wBACjB,OAAO,EAAE,eAAe;qBAC3B,CAAC;iBACL;aACJ;QACL,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,CAAC,EAAqC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,eAAe,CAAC,IAAI,CAChB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACL,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM;YACnB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CACtC,CAAC;QAEF,OAAO,eAAe,CAAC;IAC3B,CAAC;IAED,iBAAiB;QACb,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;YACrC,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAE5D,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC;YAEnD,IAAI,CAAC,YAAY,EAAE;gBACf,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;aACrC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YAE7C,OAAO;gBACH,MAAM,EAAE,MAAM;gBACd,EAAE,EAAE,YAAY;aACnB,CAAC;SACL;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa,EAAE;YACnD,OAAO,IAAI,CAAC,IAAI;iBACX,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;iBAC7C,iBAAiB,EAAE,CAAC;SAC5B;aAAM;YACH,MAAM,IAAI,KAAK,CACX,uDAAuD,CAC1D,CAAC;SACL;IACL,CAAC;IAED,UAAU,CAAC,KAAY;QACnB,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;YACrC,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAE5D,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAErD,8CAA8C;YAE9C,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE;gBAChC,IAAI,KAAK,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,EAAE;oBAC9B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC5D,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAC7C,QAAQ,EACR,2BAA2B,CAC9B,CAAC;oBAEF,MAAM,MAAM,GAAG,MAAM,CACjB,KAAK,CAAC,KAAK,CAAC,UAAU,EACtB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,EACzC,aAAa,CAAC,WAAW,EACzB;wBACI,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,EAAE,EAAE,KAAK,CAAC,IAAI;qBACjB,CACJ,CAAC;oBAEF,IAAI,MAAM;wBAAE,OAAO,MAAmB,CAAC;iBAC1C;aACJ;YAED,uDAAuD;YAEvD,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE;gBAChC,MAAM,oBAAoB,GAAG,KAAK,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC;gBAChE,IAAI,KAAK,CAAC,KAAK,IAAI,oBAAoB,EAAE;oBACrC,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;oBACvC,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;oBAEvD,IAAI,CAAC,gBAAgB,EAAE;wBACnB,SAAS;qBACZ;oBAED,MAAM,MAAM,GAAG,eAAe,CAC1B;wBACI,MAAM,EAAE,KAAK;wBACb,OAAO,EAAE,YAAY;wBACrB,SAAS,EAAE,oBAAoB;qBAClC,EACD,gBAAgB,CACnB,CAAC;oBAEF,IAAI,MAAM,EAAE;wBACR,OAAO,MAAM,CAAC;qBACjB;yBAAM;wBACH,OAAO,CAAC,KAAK,CACT,WAAW,YAAY,sBAAsB,KAAK,EAAE,CACvD,CAAC;qBACL;iBACJ;aACJ;YAED,OAAO,SAAS,CAAC;SACpB;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa,EAAE;YACnD,OAAO,IAAI,CAAC,IAAI;iBACX,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;iBAC7C,UAAU,CAAC,KAAK,CAAC,CAAC;SAC1B;aAAM;YACH,MAAM,IAAI,KAAK,CACX,uDAAuD,CAC1D,CAAC;SACL;IACL,CAAC;IAED,OAAO;QACH,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa,EAAE;YAC5C,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;SAC5D;QAED,OAAO,IAAI,IAAI,CACX,iBAAiB,CACb,IAAI,CAAC,IAAI;aACJ,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;aAC7C,iBAAiB,EAAE,CAC3B,EACD,IAAI,CAAC,IAAI,CACZ,CAAC;IACN,CAAC;IAED,KAAK,CAAC,IAAmB;QACrB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrE,CAAC;IAED,eAAe,CACX,UAAyC;QAEzC,MAAM,UAAU,GAAsB;YAClC,MAAM,EAAE,YAAY;YACpB,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM;YACpD,UAAU,EAAE,MAAM,CAAC,WAAW,CAC1B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACxB,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,EAAE;gBACtB,MAAM,eAAe,GAAG,GAAG,CAAC,YAAY,CAAC,KAAK,CAC1C,UAAU,EAAE,QAAQ,CAAC,SAAsB,CAAC,IAAI,CAAC,CACpD,CAAC;gBAEF,IACI,eAAe,CAAC,MAAM,KAAK,CAAC;oBAC5B,CAAC,GAAG,CAAC,QAAQ;oBACb,CAAC,GAAG,CAAC,aAAa,EACpB;oBACE,OAAO,SAAS,CAAC;iBACpB;gBAED,OAAO;oBACH,SAAS;oBACT;wBACI,KAAK,EACD,UAAU,EAAE,QAAQ,CAChB,SAAsB,CACzB,IAAI,CAAC;wBACV,eAAe;wBACf,QAAQ,EAAE,GAAG,CAAC,QAAQ;wBACtB,aAAa,EAAE,GAAG,CAAC,aAAa;qBACnC;iBACJ,CAAC;YACN,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,CAAC,EAAqC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAC7D;SACJ,CAAC;QAEF,IACI,CAAC,UAAU,CAAC,MAAM;YAClB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EACjD;YACE,OAAO,SAAS,CAAC;SACpB;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,qBAAqB;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM;YACtC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;iBACtC,IAAI,EAAE;iBACN,MAAM,CAAC,CAAC,CAAC,EAAgB,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAC5D,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa;gBAC5C,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;gBAC5B,CAAC,CAAC,EAAE,CAAC;IACb,CAAC;CACJ;AAQD,MAAM,UAAU,QAAQ,CAAC,eAAgC;IACrD,OAAO;QACH,WAAW,EAAE,cAAc,CAAC,eAAe,CAAC,eAAe,CAAC;QAC5D,WAAW,EAAE,cAAc,CAAC,eAAe,CAAC,eAAe,CAAC;QAC5D,cAAc,EAAE,eAAe,CAAC,cAAc;KACjD,CAAC;AACN,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAY;IAC9C,OAAO;QACH,IAAI,EAAE,OAAO;QACb,OAAO,EAAE;YACL,IAAI,EAAE,OAAO;YACb,kBAAkB,EAAE,KAAK,CAAC,WAAW;YACrC,kBAAkB,EAAE,KAAK,CAAC,WAAW;SACxC;QACD,IAAI,EAAE,IAAI;QACV,SAAS,EAAE,IAAI;QACf,UAAU,EAAE,IAAI;QAChB,cAAc,EACV,OAAO,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzE,CAAC;AACN,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAY;IACnC,OAAO,kBAAkB,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAY,CAAC;AACvE,CAAC;AAQD,MAAM,UAAU,wBAAwB,CACpC,cAAuB;IAEvB,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;IAC7C,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;IAC7C,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAqB;IACxD,IAAI,IAAI,CAAC,cAAc,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;KACzE;IACD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IACjC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC1E,IAAI,oBAAoB,CAAC,MAAM,KAAK,EAAE,EAAE;QACpC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;KACrD;IACD,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAChC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC1E,IAAI,oBAAoB,CAAC,MAAM,KAAK,EAAE,EAAE;QACpC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;KACrD;IACD,KAAK,CAAC,GAAG,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;IAEpC,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,wBAAwB,CACpC,KAAiB;IAEjB,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE,EAAE;QACrB,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,eAAe,GAAG,wBAAwB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACrE,MAAM,eAAe,GAAG,wBAAwB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IAElE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC;AAChD,CAAC;AAED,6CAA6C;AAE7C,wEAAwE"}
@@ -0,0 +1 @@
1
+ export {};
@@ -1,122 +1,78 @@
1
- "use strict";
2
- import {
3
- getAgent,
4
- getAgentID,
5
- newRandomAgentCredential,
6
- newRandomSessionID
7
- } from "./coValue";
8
- import { LocalNode } from "./node";
9
- import { createdNowUnique, sign } from "./crypto";
1
+ import { getAgent, getAgentID, newRandomAgentCredential, newRandomSessionID, } from './coValue.js';
2
+ import { LocalNode } from './node.js';
3
+ import { createdNowUnique, sign } from './crypto.js';
10
4
  test("Can create coValue with new agent credentials and add transaction to it", () => {
11
- const agentCredential = newRandomAgentCredential("agent1");
12
- const node = new LocalNode(
13
- agentCredential,
14
- newRandomSessionID(getAgentID(getAgent(agentCredential)))
15
- );
16
- const coValue = node.createCoValue({
17
- type: "costream",
18
- ruleset: { type: "unsafeAllowAll" },
19
- meta: null,
20
- ...createdNowUnique()
21
- });
22
- const transaction = {
23
- privacy: "trusting",
24
- madeAt: Date.now(),
25
- changes: [
26
- {
27
- hello: "world"
28
- }
29
- ]
30
- };
31
- const { expectedNewHash } = coValue.expectedNewHashAfter(
32
- node.ownSessionID,
33
- [transaction]
34
- );
35
- expect(
36
- coValue.tryAddTransactions(
37
- node.ownSessionID,
38
- [transaction],
39
- expectedNewHash,
40
- sign(agentCredential.signatorySecret, expectedNewHash)
41
- )
42
- ).toBe(true);
5
+ const agentCredential = newRandomAgentCredential("agent1");
6
+ const node = new LocalNode(agentCredential, newRandomSessionID(getAgentID(getAgent(agentCredential))));
7
+ const coValue = node.createCoValue({
8
+ type: "costream",
9
+ ruleset: { type: "unsafeAllowAll" },
10
+ meta: null,
11
+ ...createdNowUnique()
12
+ });
13
+ const transaction = {
14
+ privacy: "trusting",
15
+ madeAt: Date.now(),
16
+ changes: [
17
+ {
18
+ hello: "world",
19
+ },
20
+ ],
21
+ };
22
+ const { expectedNewHash } = coValue.expectedNewHashAfter(node.ownSessionID, [transaction]);
23
+ expect(coValue.tryAddTransactions(node.ownSessionID, [transaction], expectedNewHash, sign(agentCredential.signatorySecret, expectedNewHash))).toBe(true);
43
24
  });
44
25
  test("transactions with wrong signature are rejected", () => {
45
- const wrongAgent = newRandomAgentCredential("wrongAgent");
46
- const agentCredential = newRandomAgentCredential("agent1");
47
- const node = new LocalNode(
48
- agentCredential,
49
- newRandomSessionID(getAgentID(getAgent(agentCredential)))
50
- );
51
- const coValue = node.createCoValue({
52
- type: "costream",
53
- ruleset: { type: "unsafeAllowAll" },
54
- meta: null,
55
- ...createdNowUnique()
56
- });
57
- const transaction = {
58
- privacy: "trusting",
59
- madeAt: Date.now(),
60
- changes: [
61
- {
62
- hello: "world"
63
- }
64
- ]
65
- };
66
- const { expectedNewHash } = coValue.expectedNewHashAfter(
67
- node.ownSessionID,
68
- [transaction]
69
- );
70
- expect(
71
- coValue.tryAddTransactions(
72
- node.ownSessionID,
73
- [transaction],
74
- expectedNewHash,
75
- sign(wrongAgent.signatorySecret, expectedNewHash)
76
- )
77
- ).toBe(false);
26
+ const wrongAgent = newRandomAgentCredential("wrongAgent");
27
+ const agentCredential = newRandomAgentCredential("agent1");
28
+ const node = new LocalNode(agentCredential, newRandomSessionID(getAgentID(getAgent(agentCredential))));
29
+ const coValue = node.createCoValue({
30
+ type: "costream",
31
+ ruleset: { type: "unsafeAllowAll" },
32
+ meta: null,
33
+ ...createdNowUnique()
34
+ });
35
+ const transaction = {
36
+ privacy: "trusting",
37
+ madeAt: Date.now(),
38
+ changes: [
39
+ {
40
+ hello: "world",
41
+ },
42
+ ],
43
+ };
44
+ const { expectedNewHash } = coValue.expectedNewHashAfter(node.ownSessionID, [transaction]);
45
+ expect(coValue.tryAddTransactions(node.ownSessionID, [transaction], expectedNewHash, sign(wrongAgent.signatorySecret, expectedNewHash))).toBe(false);
78
46
  });
79
47
  test("transactions with correctly signed, but wrong hash are rejected", () => {
80
- const agentCredential = newRandomAgentCredential("agent1");
81
- const node = new LocalNode(
82
- agentCredential,
83
- newRandomSessionID(getAgentID(getAgent(agentCredential)))
84
- );
85
- const coValue = node.createCoValue({
86
- type: "costream",
87
- ruleset: { type: "unsafeAllowAll" },
88
- meta: null,
89
- ...createdNowUnique()
90
- });
91
- const transaction = {
92
- privacy: "trusting",
93
- madeAt: Date.now(),
94
- changes: [
95
- {
96
- hello: "world"
97
- }
98
- ]
99
- };
100
- const { expectedNewHash } = coValue.expectedNewHashAfter(
101
- node.ownSessionID,
102
- [
103
- {
48
+ const agentCredential = newRandomAgentCredential("agent1");
49
+ const node = new LocalNode(agentCredential, newRandomSessionID(getAgentID(getAgent(agentCredential))));
50
+ const coValue = node.createCoValue({
51
+ type: "costream",
52
+ ruleset: { type: "unsafeAllowAll" },
53
+ meta: null,
54
+ ...createdNowUnique()
55
+ });
56
+ const transaction = {
104
57
  privacy: "trusting",
105
58
  madeAt: Date.now(),
106
59
  changes: [
107
- {
108
- hello: "wrong"
109
- }
110
- ]
111
- }
112
- ]
113
- );
114
- expect(
115
- coValue.tryAddTransactions(
116
- node.ownSessionID,
117
- [transaction],
118
- expectedNewHash,
119
- sign(agentCredential.signatorySecret, expectedNewHash)
120
- )
121
- ).toBe(false);
60
+ {
61
+ hello: "world",
62
+ },
63
+ ],
64
+ };
65
+ const { expectedNewHash } = coValue.expectedNewHashAfter(node.ownSessionID, [
66
+ {
67
+ privacy: "trusting",
68
+ madeAt: Date.now(),
69
+ changes: [
70
+ {
71
+ hello: "wrong",
72
+ },
73
+ ],
74
+ },
75
+ ]);
76
+ expect(coValue.tryAddTransactions(node.ownSessionID, [transaction], expectedNewHash, sign(agentCredential.signatorySecret, expectedNewHash))).toBe(false);
122
77
  });
78
+ //# sourceMappingURL=coValue.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coValue.test.js","sourceRoot":"","sources":["../src/coValue.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { JsonValue } from './jsonValue.js';
2
+ import { RawCoValueID } from './ids.js';
3
+ import { CoMap } from './contentTypes/coMap.js';
4
+ import { CoStream } from './contentTypes/coStream.js';
5
+ import { Static } from './contentTypes/static.js';
6
+ import { CoList } from './contentTypes/coList.js';
7
+ export type CoValueID<T extends ContentType> = RawCoValueID & {
8
+ readonly __type: T;
9
+ };
10
+ export type ContentType = CoMap<{
11
+ [key: string]: JsonValue;
12
+ }, JsonValue> | CoList<JsonValue, JsonValue> | CoStream<JsonValue, JsonValue> | Static<JsonValue>;
13
+ export declare function expectMap(content: ContentType): CoMap<{
14
+ [key: string]: string;
15
+ }, {}>;
@@ -1,7 +1,7 @@
1
- "use strict";
2
1
  export function expectMap(content) {
3
- if (content.type !== "comap") {
4
- throw new Error("Expected map");
5
- }
6
- return content;
2
+ if (content.type !== "comap") {
3
+ throw new Error("Expected map");
4
+ }
5
+ return content;
7
6
  }
7
+ //# sourceMappingURL=contentType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contentType.js","sourceRoot":"","sources":["../src/contentType.ts"],"names":[],"mappings":"AAiBA,MAAM,UAAU,SAAS,CAAC,OAAoB;IAC1C,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;KACnC;IAED,OAAO,OAA+C,CAAC;AAC3D,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -1,179 +1,149 @@
1
- "use strict";
2
- import {
3
- agentIDfromSessionID,
4
- getAgent,
5
- getAgentID,
6
- newRandomAgentCredential,
7
- newRandomSessionID
8
- } from "./coValue";
9
- import { createdNowUnique } from "./crypto";
10
- import { LocalNode } from "./node";
1
+ import { agentIDfromSessionID, getAgent, getAgentID, newRandomAgentCredential, newRandomSessionID, } from './coValue.js';
2
+ import { createdNowUnique } from "./crypto.js";
3
+ import { LocalNode } from "./node.js";
11
4
  test("Empty COJSON Map works", () => {
12
- const agentCredential = newRandomAgentCredential("agent1");
13
- const node = new LocalNode(
14
- agentCredential,
15
- newRandomSessionID(getAgentID(getAgent(agentCredential)))
16
- );
17
- const coValue = node.createCoValue({
18
- type: "comap",
19
- ruleset: { type: "unsafeAllowAll" },
20
- meta: null,
21
- ...createdNowUnique()
22
- });
23
- const content = coValue.getCurrentContent();
24
- if (content.type !== "comap") {
25
- throw new Error("Expected map");
26
- }
27
- expect(content.type).toEqual("comap");
28
- expect([...content.keys()]).toEqual([]);
29
- expect(content.toJSON()).toEqual({});
5
+ const agentCredential = newRandomAgentCredential("agent1");
6
+ const node = new LocalNode(agentCredential, newRandomSessionID(getAgentID(getAgent(agentCredential))));
7
+ const coValue = node.createCoValue({
8
+ type: "comap",
9
+ ruleset: { type: "unsafeAllowAll" },
10
+ meta: null,
11
+ ...createdNowUnique()
12
+ });
13
+ const content = coValue.getCurrentContent();
14
+ if (content.type !== "comap") {
15
+ throw new Error("Expected map");
16
+ }
17
+ expect(content.type).toEqual("comap");
18
+ expect([...content.keys()]).toEqual([]);
19
+ expect(content.toJSON()).toEqual({});
30
20
  });
31
21
  test("Can insert and delete Map entries in edit()", () => {
32
- const agentCredential = newRandomAgentCredential("agent1");
33
- const node = new LocalNode(
34
- agentCredential,
35
- newRandomSessionID(getAgentID(getAgent(agentCredential)))
36
- );
37
- const coValue = node.createCoValue({
38
- type: "comap",
39
- ruleset: { type: "unsafeAllowAll" },
40
- meta: null,
41
- ...createdNowUnique()
42
- });
43
- const content = coValue.getCurrentContent();
44
- if (content.type !== "comap") {
45
- throw new Error("Expected map");
46
- }
47
- expect(content.type).toEqual("comap");
48
- content.edit((editable) => {
49
- editable.set("hello", "world", "trusting");
50
- expect(editable.get("hello")).toEqual("world");
51
- editable.set("foo", "bar", "trusting");
52
- expect(editable.get("foo")).toEqual("bar");
53
- expect([...editable.keys()]).toEqual(["hello", "foo"]);
54
- editable.delete("foo", "trusting");
55
- expect(editable.get("foo")).toEqual(void 0);
56
- });
22
+ const agentCredential = newRandomAgentCredential("agent1");
23
+ const node = new LocalNode(agentCredential, newRandomSessionID(getAgentID(getAgent(agentCredential))));
24
+ const coValue = node.createCoValue({
25
+ type: "comap",
26
+ ruleset: { type: "unsafeAllowAll" },
27
+ meta: null,
28
+ ...createdNowUnique()
29
+ });
30
+ const content = coValue.getCurrentContent();
31
+ if (content.type !== "comap") {
32
+ throw new Error("Expected map");
33
+ }
34
+ expect(content.type).toEqual("comap");
35
+ content.edit((editable) => {
36
+ editable.set("hello", "world", "trusting");
37
+ expect(editable.get("hello")).toEqual("world");
38
+ editable.set("foo", "bar", "trusting");
39
+ expect(editable.get("foo")).toEqual("bar");
40
+ expect([...editable.keys()]).toEqual(["hello", "foo"]);
41
+ editable.delete("foo", "trusting");
42
+ expect(editable.get("foo")).toEqual(undefined);
43
+ });
57
44
  });
58
45
  test("Can get map entry values at different points in time", () => {
59
- const agentCredential = newRandomAgentCredential("agent1");
60
- const node = new LocalNode(
61
- agentCredential,
62
- newRandomSessionID(getAgentID(getAgent(agentCredential)))
63
- );
64
- const coValue = node.createCoValue({
65
- type: "comap",
66
- ruleset: { type: "unsafeAllowAll" },
67
- meta: null,
68
- ...createdNowUnique()
69
- });
70
- const content = coValue.getCurrentContent();
71
- if (content.type !== "comap") {
72
- throw new Error("Expected map");
73
- }
74
- expect(content.type).toEqual("comap");
75
- content.edit((editable) => {
76
- const beforeA = Date.now();
77
- while (Date.now() < beforeA + 10) {
78
- }
79
- editable.set("hello", "A", "trusting");
80
- const beforeB = Date.now();
81
- while (Date.now() < beforeB + 10) {
46
+ const agentCredential = newRandomAgentCredential("agent1");
47
+ const node = new LocalNode(agentCredential, newRandomSessionID(getAgentID(getAgent(agentCredential))));
48
+ const coValue = node.createCoValue({
49
+ type: "comap",
50
+ ruleset: { type: "unsafeAllowAll" },
51
+ meta: null,
52
+ ...createdNowUnique()
53
+ });
54
+ const content = coValue.getCurrentContent();
55
+ if (content.type !== "comap") {
56
+ throw new Error("Expected map");
82
57
  }
83
- editable.set("hello", "B", "trusting");
84
- const beforeC = Date.now();
85
- while (Date.now() < beforeC + 10) {
86
- }
87
- editable.set("hello", "C", "trusting");
88
- expect(editable.get("hello")).toEqual("C");
89
- expect(editable.getAtTime("hello", Date.now())).toEqual("C");
90
- expect(editable.getAtTime("hello", beforeA)).toEqual(void 0);
91
- expect(editable.getAtTime("hello", beforeB)).toEqual("A");
92
- expect(editable.getAtTime("hello", beforeC)).toEqual("B");
93
- });
58
+ expect(content.type).toEqual("comap");
59
+ content.edit((editable) => {
60
+ const beforeA = Date.now();
61
+ while (Date.now() < beforeA + 10) { }
62
+ editable.set("hello", "A", "trusting");
63
+ const beforeB = Date.now();
64
+ while (Date.now() < beforeB + 10) { }
65
+ editable.set("hello", "B", "trusting");
66
+ const beforeC = Date.now();
67
+ while (Date.now() < beforeC + 10) { }
68
+ editable.set("hello", "C", "trusting");
69
+ expect(editable.get("hello")).toEqual("C");
70
+ expect(editable.getAtTime("hello", Date.now())).toEqual("C");
71
+ expect(editable.getAtTime("hello", beforeA)).toEqual(undefined);
72
+ expect(editable.getAtTime("hello", beforeB)).toEqual("A");
73
+ expect(editable.getAtTime("hello", beforeC)).toEqual("B");
74
+ });
94
75
  });
95
76
  test("Can get all historic values of key", () => {
96
- const agentCredential = newRandomAgentCredential("agent1");
97
- const node = new LocalNode(
98
- agentCredential,
99
- newRandomSessionID(getAgentID(getAgent(agentCredential)))
100
- );
101
- const coValue = node.createCoValue({
102
- type: "comap",
103
- ruleset: { type: "unsafeAllowAll" },
104
- meta: null,
105
- ...createdNowUnique()
106
- });
107
- const content = coValue.getCurrentContent();
108
- if (content.type !== "comap") {
109
- throw new Error("Expected map");
110
- }
111
- expect(content.type).toEqual("comap");
112
- content.edit((editable) => {
113
- var _a, _b, _c, _d;
114
- editable.set("hello", "A", "trusting");
115
- const txA = editable.getLastTxID("hello");
116
- editable.set("hello", "B", "trusting");
117
- const txB = editable.getLastTxID("hello");
118
- editable.delete("hello", "trusting");
119
- const txDel = editable.getLastTxID("hello");
120
- editable.set("hello", "C", "trusting");
121
- const txC = editable.getLastTxID("hello");
122
- expect(
123
- editable.getHistory("hello")
124
- ).toEqual([
125
- {
126
- txID: txA,
127
- value: "A",
128
- at: txA && ((_a = coValue.getTx(txA)) == null ? void 0 : _a.madeAt)
129
- },
130
- {
131
- txID: txB,
132
- value: "B",
133
- at: txB && ((_b = coValue.getTx(txB)) == null ? void 0 : _b.madeAt)
134
- },
135
- {
136
- txID: txDel,
137
- value: void 0,
138
- at: txDel && ((_c = coValue.getTx(txDel)) == null ? void 0 : _c.madeAt)
139
- },
140
- {
141
- txID: txC,
142
- value: "C",
143
- at: txC && ((_d = coValue.getTx(txC)) == null ? void 0 : _d.madeAt)
144
- }
145
- ]);
146
- });
77
+ const agentCredential = newRandomAgentCredential("agent1");
78
+ const node = new LocalNode(agentCredential, newRandomSessionID(getAgentID(getAgent(agentCredential))));
79
+ const coValue = node.createCoValue({
80
+ type: "comap",
81
+ ruleset: { type: "unsafeAllowAll" },
82
+ meta: null,
83
+ ...createdNowUnique()
84
+ });
85
+ const content = coValue.getCurrentContent();
86
+ if (content.type !== "comap") {
87
+ throw new Error("Expected map");
88
+ }
89
+ expect(content.type).toEqual("comap");
90
+ content.edit((editable) => {
91
+ editable.set("hello", "A", "trusting");
92
+ const txA = editable.getLastTxID("hello");
93
+ editable.set("hello", "B", "trusting");
94
+ const txB = editable.getLastTxID("hello");
95
+ editable.delete("hello", "trusting");
96
+ const txDel = editable.getLastTxID("hello");
97
+ editable.set("hello", "C", "trusting");
98
+ const txC = editable.getLastTxID("hello");
99
+ expect(editable.getHistory("hello")).toEqual([
100
+ {
101
+ txID: txA,
102
+ value: "A",
103
+ at: txA && coValue.getTx(txA)?.madeAt,
104
+ },
105
+ {
106
+ txID: txB,
107
+ value: "B",
108
+ at: txB && coValue.getTx(txB)?.madeAt,
109
+ },
110
+ {
111
+ txID: txDel,
112
+ value: undefined,
113
+ at: txDel && coValue.getTx(txDel)?.madeAt,
114
+ },
115
+ {
116
+ txID: txC,
117
+ value: "C",
118
+ at: txC && coValue.getTx(txC)?.madeAt,
119
+ },
120
+ ]);
121
+ });
147
122
  });
148
123
  test("Can get last tx ID for a key", () => {
149
- const agentCredential = newRandomAgentCredential("agent1");
150
- const node = new LocalNode(
151
- agentCredential,
152
- newRandomSessionID(getAgentID(getAgent(agentCredential)))
153
- );
154
- const coValue = node.createCoValue({
155
- type: "comap",
156
- ruleset: { type: "unsafeAllowAll" },
157
- meta: null,
158
- ...createdNowUnique()
159
- });
160
- const content = coValue.getCurrentContent();
161
- if (content.type !== "comap") {
162
- throw new Error("Expected map");
163
- }
164
- expect(content.type).toEqual("comap");
165
- content.edit((editable) => {
166
- var _a, _b, _c, _d;
167
- expect(editable.getLastTxID("hello")).toEqual(void 0);
168
- editable.set("hello", "A", "trusting");
169
- const sessionID = (_a = editable.getLastTxID("hello")) == null ? void 0 : _a.sessionID;
170
- expect(sessionID && agentIDfromSessionID(sessionID)).toEqual(
171
- getAgentID(getAgent(agentCredential))
172
- );
173
- expect((_b = editable.getLastTxID("hello")) == null ? void 0 : _b.txIndex).toEqual(0);
174
- editable.set("hello", "B", "trusting");
175
- expect((_c = editable.getLastTxID("hello")) == null ? void 0 : _c.txIndex).toEqual(1);
176
- editable.set("hello", "C", "trusting");
177
- expect((_d = editable.getLastTxID("hello")) == null ? void 0 : _d.txIndex).toEqual(2);
178
- });
124
+ const agentCredential = newRandomAgentCredential("agent1");
125
+ const node = new LocalNode(agentCredential, newRandomSessionID(getAgentID(getAgent(agentCredential))));
126
+ const coValue = node.createCoValue({
127
+ type: "comap",
128
+ ruleset: { type: "unsafeAllowAll" },
129
+ meta: null,
130
+ ...createdNowUnique()
131
+ });
132
+ const content = coValue.getCurrentContent();
133
+ if (content.type !== "comap") {
134
+ throw new Error("Expected map");
135
+ }
136
+ expect(content.type).toEqual("comap");
137
+ content.edit((editable) => {
138
+ expect(editable.getLastTxID("hello")).toEqual(undefined);
139
+ editable.set("hello", "A", "trusting");
140
+ const sessionID = editable.getLastTxID("hello")?.sessionID;
141
+ expect(sessionID && agentIDfromSessionID(sessionID)).toEqual(getAgentID(getAgent(agentCredential)));
142
+ expect(editable.getLastTxID("hello")?.txIndex).toEqual(0);
143
+ editable.set("hello", "B", "trusting");
144
+ expect(editable.getLastTxID("hello")?.txIndex).toEqual(1);
145
+ editable.set("hello", "C", "trusting");
146
+ expect(editable.getLastTxID("hello")?.txIndex).toEqual(2);
147
+ });
179
148
  });
149
+ //# sourceMappingURL=contentType.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contentType.test.js","sourceRoot":"","sources":["../src/contentType.test.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,oBAAoB,EACpB,QAAQ,EACR,UAAU,EACV,wBAAwB,EACxB,kBAAkB,GACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE;IAChC,MAAM,eAAe,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,IAAI,SAAS,CACtB,eAAe,EACf,kBAAkB,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAC5D,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC;QAC/B,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE;QACnC,IAAI,EAAE,IAAI;QACV,GAAG,gBAAgB,EAAE;KACxB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAE5C,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;KACnC;IAED,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACrD,MAAM,eAAe,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,IAAI,SAAS,CACtB,eAAe,EACf,kBAAkB,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAC5D,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC;QAC/B,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE;QACnC,IAAI,EAAE,IAAI;QACV,GAAG,gBAAgB,EAAE;KACxB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAE5C,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;KACnC;IAED,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEtC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACtB,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QAC3C,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC/C,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QACvC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,MAAM,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;QACvD,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QACnC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sDAAsD,EAAE,GAAG,EAAE;IAC9D,MAAM,eAAe,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,IAAI,SAAS,CACtB,eAAe,EACf,kBAAkB,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAC5D,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC;QAC/B,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE;QACnC,IAAI,EAAE,IAAI;QACV,GAAG,gBAAgB,EAAE;KACxB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAE5C,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;KACnC;IAED,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEtC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC3B,OAAM,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,GAAG,EAAE,EAAC,GAAE;QAClC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC3B,OAAM,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,GAAG,EAAE,EAAC,GAAE;QAClC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC3B,OAAM,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,GAAG,EAAE,EAAC,GAAE;QAClC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QACvC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChE,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC1D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAC5C,MAAM,eAAe,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,IAAI,SAAS,CACtB,eAAe,EACf,kBAAkB,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAC5D,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC;QAC/B,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE;QACnC,IAAI,EAAE,IAAI;QACV,GAAG,gBAAgB,EAAE;KACxB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAE5C,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;KACnC;IAED,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEtC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACtB,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC1C,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC1C,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC5C,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,CACF,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAC/B,CAAC,OAAO,CAAC;YACN;gBACI,IAAI,EAAE,GAAG;gBACT,KAAK,EAAE,GAAG;gBACV,EAAE,EAAE,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM;aACxC;YACD;gBACI,IAAI,EAAE,GAAG;gBACT,KAAK,EAAE,GAAG;gBACV,EAAE,EAAE,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM;aACxC;YACD;gBACI,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,SAAS;gBAChB,EAAE,EAAE,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM;aAC5C;YACD;gBACI,IAAI,EAAE,GAAG;gBACT,KAAK,EAAE,GAAG;gBACV,EAAE,EAAE,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM;aACxC;SACJ,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8BAA8B,EAAE,GAAG,EAAE;IACtC,MAAM,eAAe,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,IAAI,SAAS,CACtB,eAAe,EACf,kBAAkB,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAC5D,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC;QAC/B,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE;QACnC,IAAI,EAAE,IAAI;QACV,GAAG,gBAAgB,EAAE;KACxB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAE5C,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;KACnC;IAED,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEtC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACtB,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACzD,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC;QAC3D,MAAM,CAAC,SAAS,IAAI,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CACxD,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CACxC,CAAC;QACF,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1D,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QACvC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1D,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QACvC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { JsonObject, JsonValue } from '../jsonValue.js';
2
+ import { CoValueID } from '../contentType.js';
3
+ import { CoValue } from '../coValue.js';
4
+ export declare class CoList<T extends JsonValue, Meta extends JsonValue> {
5
+ id: CoValueID<CoList<T, Meta>>;
6
+ type: "colist";
7
+ coValue: CoValue;
8
+ constructor(coValue: CoValue);
9
+ toJSON(): JsonObject;
10
+ subscribe(listener: (coMap: CoList<T, Meta>) => void): () => void;
11
+ }