@macula-io/ts 0.16.0 → 0.18.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/README.md +109 -263
- package/dist/binding.d.ts +47 -45
- package/dist/binding.js +8 -125
- package/dist/binding.js.map +1 -1
- package/dist/index.d.ts +4 -9
- package/dist/index.js +5 -8
- package/dist/index.js.map +1 -1
- package/dist/key.d.ts +31 -0
- package/dist/key.js +72 -0
- package/dist/key.js.map +1 -0
- package/dist/pool.d.ts +167 -131
- package/dist/pool.js +200 -581
- package/dist/pool.js.map +1 -1
- package/dist/stream.d.ts +63 -0
- package/dist/stream.js +93 -0
- package/dist/stream.js.map +1 -0
- package/dist/wire.d.ts +53 -0
- package/dist/wire.js +79 -0
- package/dist/wire.js.map +1 -0
- package/package.json +5 -4
- package/prebuilds/darwin-arm64/@macula-io+ts.node +0 -0
- package/prebuilds/darwin-x64/@macula-io+ts.node +0 -0
- package/prebuilds/linux-arm64/@macula-io+ts.node +0 -0
- package/prebuilds/linux-x64/@macula-io+ts.node +0 -0
- package/prebuilds/win32-x64/@macula-io+ts.node +0 -0
package/dist/pool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool.js","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pool.js","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,6EAA6E;AAC7E,8EAA8E;AAC9E,yEAAyE;AACzE,4EAA4E;AAC5E,0EAA0E;AAC1E,UAAU;AACV,OAAO,EAAE,MAAM,EAA8B,MAAM,cAAc,CAAC;AAElE,OAAO,EAAE,MAAM,EAAkC,MAAM,aAAa,CAAC;AACrE,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,SAAS,EACT,GAAG,EACH,IAAI,GAIL,MAAM,WAAW,CAAC;AAmEnB,gCAAgC;AAChC,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,uDAAiB,CAAA;IACjB,+EAA6B,CAAA;IAC7B,sDAAgB,CAAA;IAChB,0EAA0B,CAAA;IAC1B,kEAAsB,CAAA;IACtB,4DAAmB,CAAA;IACnB,0EAA0B,CAAA;AAC5B,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB;AAED,uDAAuD;AACvD,MAAM,OAAO,YAAY;IAEM,MAAM;IAAmB,MAAM;IAD5D,gBAAgB;IAChB,YAA6B,MAAc,EAAW,MAA8B;sBAAvD,MAAM;sBAAmB,MAAM;IAA2B,CAAC;IAExF,2CAA2C;IAC3C,KAAK,CAAC,IAAI;QACR,MAAM,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;CACF;AAED,wCAAwC;AACxC,MAAM,OAAO,MAAM;IAIY,MAAM;IAH3B,OAAO,GAAG,KAAK,CAAC;IAExB,gBAAgB;IAChB,YAA6B,MAAc;sBAAd,MAAM;IAAW,CAAC;IAE/C,6CAA6C;IAC7C,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;CACF;AAED,MAAM,OAAO,IAAI;IAGsB,MAAM;IAFnC,MAAM,GAAG,KAAK,CAAC;IAEvB,YAAqC,MAAc;sBAAd,MAAM;IAAW,CAAC;IAEvD,4EAA4E;IAC5E,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAY,EAAE,KAAsB,EAAE,OAAO,GAAgB,EAAE;QAClF,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACrH,MAAM,UAAU,GAA2B,EAAE,CAAC;QAC9C,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC;YACzC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAChG,CAAC;QACD,MAAM,IAAI,GAAG;YACX,WAAW,EAAE,UAAU;YACvB,kBAAkB,EAAE,OAAO,CAAC,iBAAiB,IAAI,CAAC;YAClD,gBAAgB,EAAE,OAAO,CAAC,cAAc,IAAI,CAAC;YAC7C,gBAAgB,EAAE,OAAO,CAAC,cAAc,IAAI,CAAC;YAC7C,UAAU,EAAE,OAAO,CAAC,SAAS,IAAI,CAAC;SACnC,CAAC;QACF,OAAO,IAAI,IAAI,CAAC,MAAM,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACxG,CAAC;IAED,qCAAqC;IACrC,MAAM;QACJ,OAAO,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED;;4EAEwE;IACxE,YAAY,CAAC,IAAY;QACvB,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;IACrC,CAAC;IAED,iCAAiC;IACjC,MAAM;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1D,CAAC;IAED;;iEAE6D;IAC7D,KAAK,CAAC,IAAI,CAAC,KAAS,EAAE,SAAiB,EAAE,OAAO,GAAc,EAAE,EAC9D,OAAO,GAA+D,EAAE;QACxE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EACxG,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,EAC1E,OAAO,CAAC,SAAS,IAAI,uBAAuB,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YAC7E,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,SAAS,CAAC,CAAC,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,yDAAyD;IACzD,KAAK,CAAC,SAAS,CAAC,KAAS,EAAE,SAAiB,EAAE,OAAO,GAA2B,EAAE;QAChF,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,SAAS,EACvF,OAAO,CAAC,SAAS,IAAI,uBAAuB,CAAC,CAAC,IAAI,EAAE,CAAC;IACzD,CAAC;IAED;yBACqB;IACrB,KAAK,CAAC,OAAO,CAAC,KAAS,EAAE,KAAa,EAAE,OAAkB,EAAE,OAAO,GAAuB,EAAE;QAC1F,MAAM,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;IAClH,CAAC;IAED;;iCAE6B;IAC7B,KAAK,CAAC,SAAS,CAAC,KAAS,EAAE,KAAa,EAAE,OAA+B,EACvE,OAAO,GAA4B,EAAE;QACrC,IAAI,MAAM,GAAiC,GAAG,EAAE,GAAE,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,IAAI,OAAO,CAAgB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,EAC7G,CAAC,CAAW,EAAE,EAAE;YACd,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACxB,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACtC,OAAO;YACT,CAAC;YACD,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC7B,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC,YAAY;gBACvG,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;QACL,OAAO,IAAI,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED;;;;2DAIuD;IACvD,KAAK,CAAC,KAAK,CAAC,KAAS,EAAE,SAAiB,EAAE,OAA6D,EACrG,OAAO,GAA4B,EAAE;QACrC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,EAC7G,CAAC,CAAW,EAAE,EAAE;YACd,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO;YACjC,KAAK,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QACL,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED;;8EAE0E;IAC1E,KAAK,CAAC,WAAW,CAAC,KAAS,EAAE,SAAiB,EAAE,IAAgB,EAC9D,OAAyE,EACzE,OAAO,GAA4B,EAAE;QACrC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAC5F,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAW,EAAE,EAAE;YAC3C,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO;YACjC,KAAK,SAAS,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QACL,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED;sDACkD;IAClD,KAAK,CAAC,UAAU,CAAC,KAAS,EAAE,SAAiB,EAAE,IAAgB,EAAE,OAAO,GAAc,EAAE,EACtF,OAAO,GAAoF,EAAE;QAC7F,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAC3F,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,EACnG,OAAO,CAAC,UAAU,IAAI,CAAC,EAAE,OAAO,CAAC,SAAS,IAAI,uBAAuB,CAAC,CAAC;YACzE,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,SAAS,CAAC,CAAC,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,iEAAiE;IACjE,KAAK,CAAC,UAAU,CAAC,GAAO,EAAE,OAAO,GAAgD,EAAE;QACjF,IAAI,CAAC;YACH,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,EAClF,OAAO,CAAC,SAAS,IAAI,uBAAuB,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACjF,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,OAAO,KAAK,WAAW;gBAAE,OAAO,IAAI,CAAC;YACjE,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAED,oEAAoE;IACpE,KAAK,CAAC,WAAW,CAAC,GAAO,EAAE,OAAO,GAAgD,EAAE;QAElF,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,EACpF,OAAO,CAAC,SAAS,IAAI,uBAAuB,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjF,CAAC;IAED;iBACa;IACb,KAAK,CAAC,iBAAiB,CAAC,IAAyB,EAAE,OAAO,GAAgD,EAAE;QAE1G,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAC9E,OAAO,CAAC,SAAS,IAAI,uBAAuB,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,oDAAoD;IACpD,KAAK,CAAC,SAAS,CAAC,IAAgB,EAAE,OAAO,GAA2B,EAAE;QACpE,MAAM,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,SAAS,IAAI,uBAAuB,CAAC,CAAC;IAC9F,CAAC;IAED,0CAA0C;IAC1C,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,MAAM,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAEO,IAAI;QACV,IAAI,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF;AAED,4EAA4E;AAC5E,KAAK,UAAU,MAAM,CAAC,CAAW,EAAE,OAA6D;IAC9F,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7B,MAAM,OAAO,GAAY,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO;QACrG,UAAU,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9B,IAAI,CAAC;QACH,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACxE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC;YACH,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,CAAC;QAAC,MAAM,CAAC;YACP,gEAAgE;QAClE,CAAC;IACH,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,KAAK,UAAU,SAAS,CAAC,MAAc,EAAE,OAAyE;IAEhH,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QACxC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC1F,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,CAAM;IACtB,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO;QAC1G,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AACnB,CAAC;AAED,SAAS,SAAS,CAAC,GAAQ;IACzB,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,CAAC,EAAE,CAAC;AACnF,CAAC"}
|
package/dist/stream.d.ts
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { type Handle } from "./binding.js";
|
|
2
|
+
import { type BytesOutput, type JsonValue } from "./wire.js";
|
|
3
|
+
/** The three stream modes: the provider sends (server), the caller sends and
|
|
4
|
+
* the provider replies (client), or both send (bidi). */
|
|
5
|
+
export declare enum StreamMode {
|
|
6
|
+
Server = 0,
|
|
7
|
+
Client = 1,
|
|
8
|
+
Bidi = 2
|
|
9
|
+
}
|
|
10
|
+
/** A frame the peer sent: a chunk (raw bytes as hex or tagged, or a value),
|
|
11
|
+
* the end of its sending ("send") or of the stream ("both"), or the
|
|
12
|
+
* provider's reply. */
|
|
13
|
+
export type StreamEvent = {
|
|
14
|
+
readonly kind: "data";
|
|
15
|
+
readonly encoding: "raw" | "msgpack";
|
|
16
|
+
readonly body: JsonValue;
|
|
17
|
+
} | {
|
|
18
|
+
readonly kind: "end";
|
|
19
|
+
readonly role: "send" | "both";
|
|
20
|
+
} | {
|
|
21
|
+
readonly kind: "reply";
|
|
22
|
+
readonly payload: JsonValue;
|
|
23
|
+
};
|
|
24
|
+
/** A stream's open: who opened it, where, and its payload. */
|
|
25
|
+
export interface StreamRequest {
|
|
26
|
+
readonly caller: string;
|
|
27
|
+
readonly realm: string;
|
|
28
|
+
readonly procedure: string;
|
|
29
|
+
readonly payload: JsonValue;
|
|
30
|
+
readonly deadlineMs: number;
|
|
31
|
+
}
|
|
32
|
+
export declare class Stream {
|
|
33
|
+
private readonly handle;
|
|
34
|
+
private readonly bytes;
|
|
35
|
+
private freed;
|
|
36
|
+
/** @internal */
|
|
37
|
+
constructor(handle: Handle, bytes: BytesOutput | undefined);
|
|
38
|
+
/** The stream's open. */
|
|
39
|
+
request(): StreamRequest;
|
|
40
|
+
/** Sends a raw chunk. */
|
|
41
|
+
send(chunk: Uint8Array): Promise<void>;
|
|
42
|
+
/** Sends a structured chunk. */
|
|
43
|
+
sendValue(value: JsonValue): Promise<void>;
|
|
44
|
+
/** Ends this side's sending; the peer may still send. */
|
|
45
|
+
closeSend(): Promise<void>;
|
|
46
|
+
/** Ends the stream on both sides. */
|
|
47
|
+
close(): Promise<void>;
|
|
48
|
+
/** The provider's terminal value; ends the stream. */
|
|
49
|
+
reply(payload: JsonValue): Promise<void>;
|
|
50
|
+
/** Ends the stream with a STREAM_ERROR the peer sees. */
|
|
51
|
+
abort(code: string, message?: string): Promise<void>;
|
|
52
|
+
/** The peer's next frame, or null once the stream has ended normally. A
|
|
53
|
+
* stream error is thrown as a StreamError; `timeoutMs` (0 for none) bounds
|
|
54
|
+
* the wait with an Error("timeout"). */
|
|
55
|
+
recv(options?: {
|
|
56
|
+
timeoutMs?: number;
|
|
57
|
+
}): Promise<StreamEvent | null>;
|
|
58
|
+
/** Every frame until the stream ends. */
|
|
59
|
+
[Symbol.asyncIterator](): AsyncIterator<StreamEvent>;
|
|
60
|
+
/** Releases the stream, aborting it first when it has not ended. */
|
|
61
|
+
free(): Promise<void>;
|
|
62
|
+
private live;
|
|
63
|
+
}
|
package/dist/stream.js
ADDED
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
// A streaming session, on either side: the caller's from Pool.openStream, or
|
|
2
|
+
// a provider's handed to a Pool.serveStream handler. Each session is a QUIC
|
|
3
|
+
// stream of its own, released on every path; frames are signed by each side
|
|
4
|
+
// and verified before they are handed on.
|
|
5
|
+
import { native } from "./binding.js";
|
|
6
|
+
import { StreamError, bytesModeFor } from "./wire.js";
|
|
7
|
+
/** The three stream modes: the provider sends (server), the caller sends and
|
|
8
|
+
* the provider replies (client), or both send (bidi). */
|
|
9
|
+
export var StreamMode;
|
|
10
|
+
(function (StreamMode) {
|
|
11
|
+
StreamMode[StreamMode["Server"] = 0] = "Server";
|
|
12
|
+
StreamMode[StreamMode["Client"] = 1] = "Client";
|
|
13
|
+
StreamMode[StreamMode["Bidi"] = 2] = "Bidi";
|
|
14
|
+
})(StreamMode || (StreamMode = {}));
|
|
15
|
+
export class Stream {
|
|
16
|
+
handle;
|
|
17
|
+
bytes;
|
|
18
|
+
freed = false;
|
|
19
|
+
/** @internal */
|
|
20
|
+
constructor(handle, bytes) {
|
|
21
|
+
this.handle = handle;
|
|
22
|
+
this.bytes = bytes;
|
|
23
|
+
}
|
|
24
|
+
/** The stream's open. */
|
|
25
|
+
request() {
|
|
26
|
+
const r = JSON.parse(native.streamRequest(this.live(), bytesModeFor(this.bytes)));
|
|
27
|
+
return { caller: r.caller, realm: r.realm, procedure: r.procedure, payload: r.payload, deadlineMs: r.deadline_ms };
|
|
28
|
+
}
|
|
29
|
+
/** Sends a raw chunk. */
|
|
30
|
+
async send(chunk) {
|
|
31
|
+
await native.streamSendBytes(this.live(), chunk);
|
|
32
|
+
}
|
|
33
|
+
/** Sends a structured chunk. */
|
|
34
|
+
async sendValue(value) {
|
|
35
|
+
await native.streamSendJson(this.live(), JSON.stringify(value));
|
|
36
|
+
}
|
|
37
|
+
/** Ends this side's sending; the peer may still send. */
|
|
38
|
+
async closeSend() {
|
|
39
|
+
await native.streamCloseSend(this.live());
|
|
40
|
+
}
|
|
41
|
+
/** Ends the stream on both sides. */
|
|
42
|
+
async close() {
|
|
43
|
+
await native.streamClose(this.live());
|
|
44
|
+
}
|
|
45
|
+
/** The provider's terminal value; ends the stream. */
|
|
46
|
+
async reply(payload) {
|
|
47
|
+
await native.streamReply(this.live(), JSON.stringify(payload));
|
|
48
|
+
}
|
|
49
|
+
/** Ends the stream with a STREAM_ERROR the peer sees. */
|
|
50
|
+
async abort(code, message = "") {
|
|
51
|
+
await native.streamAbort(this.live(), code, message);
|
|
52
|
+
}
|
|
53
|
+
/** The peer's next frame, or null once the stream has ended normally. A
|
|
54
|
+
* stream error is thrown as a StreamError; `timeoutMs` (0 for none) bounds
|
|
55
|
+
* the wait with an Error("timeout"). */
|
|
56
|
+
async recv(options = {}) {
|
|
57
|
+
const e = JSON.parse(await native.streamRecv(this.live(), options.timeoutMs ?? 0, bytesModeFor(this.bytes)));
|
|
58
|
+
switch (e.kind) {
|
|
59
|
+
case "eof":
|
|
60
|
+
return null;
|
|
61
|
+
case "error":
|
|
62
|
+
throw new StreamError(e.code, e.message ?? "", e.relay === 1);
|
|
63
|
+
case "data":
|
|
64
|
+
return { kind: "data", encoding: e.encoding, body: e.body };
|
|
65
|
+
case "end":
|
|
66
|
+
return { kind: "end", role: e.role };
|
|
67
|
+
default:
|
|
68
|
+
return { kind: "reply", payload: e.payload };
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/** Every frame until the stream ends. */
|
|
72
|
+
async *[Symbol.asyncIterator]() {
|
|
73
|
+
for (;;) {
|
|
74
|
+
const event = await this.recv();
|
|
75
|
+
if (event === null)
|
|
76
|
+
return;
|
|
77
|
+
yield event;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
/** Releases the stream, aborting it first when it has not ended. */
|
|
81
|
+
async free() {
|
|
82
|
+
if (this.freed)
|
|
83
|
+
return;
|
|
84
|
+
this.freed = true;
|
|
85
|
+
await native.streamFree(this.handle);
|
|
86
|
+
}
|
|
87
|
+
live() {
|
|
88
|
+
if (this.freed)
|
|
89
|
+
throw new Error("macula-ts: this Stream was freed");
|
|
90
|
+
return this.handle;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=stream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../src/stream.ts"],"names":[],"mappings":"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"}
|
package/dist/wire.d.ts
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/** A payload, restricted to what macula's wire CBOR carries: no boolean and
|
|
2
|
+
* no undefined. Encode true/false as 1/0 yourself; a JS boolean reaching the
|
|
3
|
+
* wire is exactly the mistake this type makes impossible at compile time.
|
|
4
|
+
*
|
|
5
|
+
* Bytes have no native JSON shape. Going IN, write them as an object whose
|
|
6
|
+
* ONLY key is "$bytes", holding standard padded base64: `{"$bytes": "AQID"}`
|
|
7
|
+
* is the three bytes 01 02 03. A plain string is always text. Coming OUT,
|
|
8
|
+
* bytes are a "0x"-prefixed lowercase hex string by default, or the same
|
|
9
|
+
* tagged object when you ask for `bytes: "tagged"` (see BytesOutput). */
|
|
10
|
+
export type JsonValue = string | number | null | JsonValue[] | {
|
|
11
|
+
[key: string]: JsonValue;
|
|
12
|
+
};
|
|
13
|
+
/** How bytes in a result, a request, an event or a record reach JavaScript:
|
|
14
|
+
* "hex" (the default) or "tagged" ({"$bytes": "<base64>"}). */
|
|
15
|
+
export type BytesOutput = "hex" | "tagged";
|
|
16
|
+
/** BytesOutput as the integer the native layer takes. */
|
|
17
|
+
export declare function bytesModeFor(bytes: BytesOutput | undefined): number;
|
|
18
|
+
/** A 32-byte id (a node_id, a realm id, a record key): 64 hex characters or
|
|
19
|
+
* 32 bytes. */
|
|
20
|
+
export type Id = string | Uint8Array;
|
|
21
|
+
/** An Id as the 32 bytes the native layer takes. */
|
|
22
|
+
export declare function id32(id: Id, what?: string): Uint8Array;
|
|
23
|
+
/** 32 bytes as lowercase hex. */
|
|
24
|
+
export declare function hex(bytes: Uint8Array): string;
|
|
25
|
+
/** A provider's own ERROR for a call: `handler_error` with the handler's
|
|
26
|
+
* text, `temporary_relay_failure` for a handler that crashed,
|
|
27
|
+
* `unknown_next_peer` for a procedure it does not serve, or an admission
|
|
28
|
+
* refusal (`expired`, `request_copy`, `caller_quota`, ...). */
|
|
29
|
+
export declare class ProviderError extends Error {
|
|
30
|
+
readonly code: string;
|
|
31
|
+
readonly detail: string;
|
|
32
|
+
constructor(code: string, detail: string);
|
|
33
|
+
}
|
|
34
|
+
/** A station's signed relay error for a call: it could not relay it, e.g.
|
|
35
|
+
* `unknown_next_peer` for a provider it cannot reach. */
|
|
36
|
+
export declare class RelayError extends Error {
|
|
37
|
+
readonly code: string;
|
|
38
|
+
constructor(code: string);
|
|
39
|
+
}
|
|
40
|
+
/** A stream ended by a STREAM_ERROR: the peer's, a relay error from the
|
|
41
|
+
* station (`relay`), or this side's own (e.g. `resource_exhausted`). */
|
|
42
|
+
export declare class StreamError extends Error {
|
|
43
|
+
readonly code: string;
|
|
44
|
+
readonly detail: string;
|
|
45
|
+
readonly relay: boolean;
|
|
46
|
+
constructor(code: string, detail: string, relay: boolean);
|
|
47
|
+
}
|
|
48
|
+
/** The error the native layer rejects a call with, as the class it names:
|
|
49
|
+
* "provider_error:<code>:<detail>" and "relay_error:<code>" (cabi's
|
|
50
|
+
* callError), any other text as a plain Error. */
|
|
51
|
+
export declare function callError(e: unknown): Error;
|
|
52
|
+
/** How long a call waits, in milliseconds, when not told: macula's 5 s. */
|
|
53
|
+
export declare const DEFAULT_CALL_TIMEOUT_MS = 5000;
|
package/dist/wire.js
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
// The shapes every part of the API shares: payload values, ids, and the
|
|
2
|
+
// errors a call or a stream ends with.
|
|
3
|
+
/** BytesOutput as the integer the native layer takes. */
|
|
4
|
+
export function bytesModeFor(bytes) {
|
|
5
|
+
if (bytes === undefined || bytes === "hex")
|
|
6
|
+
return 0;
|
|
7
|
+
if (bytes === "tagged")
|
|
8
|
+
return 1;
|
|
9
|
+
throw new Error(`macula-ts: bytes must be "hex" or "tagged", got ${JSON.stringify(bytes)}`);
|
|
10
|
+
}
|
|
11
|
+
/** An Id as the 32 bytes the native layer takes. */
|
|
12
|
+
export function id32(id, what = "id") {
|
|
13
|
+
if (typeof id === "string") {
|
|
14
|
+
if (!/^[0-9a-fA-F]{64}$/.test(id))
|
|
15
|
+
throw new Error(`macula-ts: ${what} must be 64 hex characters`);
|
|
16
|
+
return Uint8Array.from(Buffer.from(id, "hex"));
|
|
17
|
+
}
|
|
18
|
+
if (id.length !== 32)
|
|
19
|
+
throw new Error(`macula-ts: ${what} must be 32 bytes, got ${id.length}`);
|
|
20
|
+
return id;
|
|
21
|
+
}
|
|
22
|
+
/** 32 bytes as lowercase hex. */
|
|
23
|
+
export function hex(bytes) {
|
|
24
|
+
return Buffer.from(bytes).toString("hex");
|
|
25
|
+
}
|
|
26
|
+
/** A provider's own ERROR for a call: `handler_error` with the handler's
|
|
27
|
+
* text, `temporary_relay_failure` for a handler that crashed,
|
|
28
|
+
* `unknown_next_peer` for a procedure it does not serve, or an admission
|
|
29
|
+
* refusal (`expired`, `request_copy`, `caller_quota`, ...). */
|
|
30
|
+
export class ProviderError extends Error {
|
|
31
|
+
code;
|
|
32
|
+
detail;
|
|
33
|
+
constructor(code, detail) {
|
|
34
|
+
super(`macula-ts: the provider answered ${code}${detail ? `: ${detail}` : ""}`);
|
|
35
|
+
this.code = code;
|
|
36
|
+
this.detail = detail;
|
|
37
|
+
this.name = "ProviderError";
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
/** A station's signed relay error for a call: it could not relay it, e.g.
|
|
41
|
+
* `unknown_next_peer` for a provider it cannot reach. */
|
|
42
|
+
export class RelayError extends Error {
|
|
43
|
+
code;
|
|
44
|
+
constructor(code) {
|
|
45
|
+
super(`macula-ts: the station could not relay the call: ${code}`);
|
|
46
|
+
this.code = code;
|
|
47
|
+
this.name = "RelayError";
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/** A stream ended by a STREAM_ERROR: the peer's, a relay error from the
|
|
51
|
+
* station (`relay`), or this side's own (e.g. `resource_exhausted`). */
|
|
52
|
+
export class StreamError extends Error {
|
|
53
|
+
code;
|
|
54
|
+
detail;
|
|
55
|
+
relay;
|
|
56
|
+
constructor(code, detail, relay) {
|
|
57
|
+
super(`macula-ts: stream error ${code}${detail ? `: ${detail}` : ""}`);
|
|
58
|
+
this.code = code;
|
|
59
|
+
this.detail = detail;
|
|
60
|
+
this.relay = relay;
|
|
61
|
+
this.name = "StreamError";
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
/** The error the native layer rejects a call with, as the class it names:
|
|
65
|
+
* "provider_error:<code>:<detail>" and "relay_error:<code>" (cabi's
|
|
66
|
+
* callError), any other text as a plain Error. */
|
|
67
|
+
export function callError(e) {
|
|
68
|
+
const message = e instanceof Error ? e.message : String(e);
|
|
69
|
+
const provider = /^provider_error:([^:]*):([\s\S]*)$/.exec(message);
|
|
70
|
+
if (provider)
|
|
71
|
+
return new ProviderError(provider[1] ?? "", provider[2] ?? "");
|
|
72
|
+
const relay = /^relay_error:(.*)$/.exec(message);
|
|
73
|
+
if (relay)
|
|
74
|
+
return new RelayError(relay[1] ?? "");
|
|
75
|
+
return e instanceof Error ? e : new Error(message);
|
|
76
|
+
}
|
|
77
|
+
/** How long a call waits, in milliseconds, when not told: macula's 5 s. */
|
|
78
|
+
export const DEFAULT_CALL_TIMEOUT_MS = 5_000;
|
|
79
|
+
//# sourceMappingURL=wire.js.map
|
package/dist/wire.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wire.js","sourceRoot":"","sources":["../src/wire.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@macula-io/ts",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.18.0",
|
|
4
4
|
"description": "TypeScript SDK for the Macula mesh (FFI over macula-go)",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"keywords": [
|
|
@@ -45,9 +45,10 @@
|
|
|
45
45
|
"build:addon:dev": "npm run build:go && node-gyp rebuild",
|
|
46
46
|
"build:prebuilds": "npm run build:go && prebuildify --napi --strip && npm pkg delete scripts.install",
|
|
47
47
|
"build": "npm run build:addon:dev && tsc",
|
|
48
|
-
"test": "vitest run",
|
|
49
|
-
"test:live": "MACULA_TS_LIVE=1 vitest run src/
|
|
50
|
-
"typecheck": "tsc --noEmit"
|
|
48
|
+
"test": "npm run build:teststation && vitest run",
|
|
49
|
+
"test:live": "MACULA_TS_LIVE=1 vitest run src/fleet.live.test.ts",
|
|
50
|
+
"typecheck": "tsc --noEmit",
|
|
51
|
+
"build:teststation": "cd cabi && go build -trimpath -buildvcs=false -o ../build/teststation ./cmd/teststation"
|
|
51
52
|
},
|
|
52
53
|
"dependencies": {
|
|
53
54
|
"node-addon-api": "^8.9.2",
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|