@opendatalabs/personal-server-ts-lite 0.0.1-canary.01ca694 → 0.0.1-canary.052d47e
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/dist/browser-runtime.d.ts +26 -1
- package/dist/browser-runtime.d.ts.map +1 -1
- package/dist/browser-runtime.js +130 -26
- package/dist/browser-runtime.js.map +1 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +40 -8
- package/dist/client.js.map +1 -1
- package/dist/derivatives.d.ts +51 -0
- package/dist/derivatives.d.ts.map +1 -0
- package/dist/derivatives.js +85 -0
- package/dist/derivatives.js.map +1 -0
- package/dist/index.d.ts +8 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -3
- package/dist/index.js.map +1 -1
- package/dist/persistence.d.ts +69 -0
- package/dist/persistence.d.ts.map +1 -0
- package/dist/persistence.js +58 -0
- package/dist/persistence.js.map +1 -0
- package/dist/relay-tls.d.ts +42 -0
- package/dist/relay-tls.d.ts.map +1 -1
- package/dist/relay-tls.js +176 -86
- package/dist/relay-tls.js.map +1 -1
- package/dist/relay.d.ts +83 -4
- package/dist/relay.d.ts.map +1 -1
- package/dist/relay.js +299 -21
- package/dist/relay.js.map +1 -1
- package/dist/runtime.d.ts +97 -4
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +208 -44
- package/dist/runtime.js.map +1 -1
- package/dist/state.d.ts +11 -1
- package/dist/state.d.ts.map +1 -1
- package/dist/state.js +77 -7
- package/dist/state.js.map +1 -1
- package/dist/storage.d.ts +6 -2
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +182 -39
- package/dist/storage.js.map +1 -1
- package/dist/sync.d.ts +23 -0
- package/dist/sync.d.ts.map +1 -1
- package/dist/sync.js +56 -6
- package/dist/sync.js.map +1 -1
- package/package.json +4 -4
package/dist/relay.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay.js","sourceRoot":"","sources":["../src/relay.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"relay.js","sourceRoot":"","sources":["../src/relay.ts"],"names":[],"mappings":"AACA,OAAO,EACL,yBAAyB,GAG1B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,iCAAiC,EAAE,MAAM,gBAAgB,CAAC;AAInE,MAAM,eAAe,GAAG,CAAC,CAAC;AAC1B,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,oBAAoB,GAAG,EAAE,GAAG,IAAI,CAAC;AACvC,MAAM,mBAAmB,GAAG,0CAA0C,CAAC;AACvE,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AACtD,MAAM,cAAc,GAAG,uBAAuB,CAAC;AA8C/C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,0BAA0B,GAAG,CAAC,CAAC;AAwGrC,MAAM,UAAU,qBAAqB,CACnC,SAAiB,EACjB,UAAU,GAAG,mBAAmB;IAEhC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,SAAS,EAAE,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,SAAiB,EACjB,YAAY,GAAG,qBAAqB;IAEpC,OAAO,WAAW,SAAS,IAAI,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;AACnE,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,4CAA4C,CAC1D,QAA+C,EAC/C,cAAwE;IAExE,OAAO;QACL,KAAK,CAAC,MAAM,CAAC,KAAK;YAChB,MAAM,cAAc,EAAE,EAAE,WAAW,EAAE,CAAC;YACtC,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,OAAiC;IAEjC,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,IAAI,mBAAmB,CAAC;IACjE,MAAM,UAAU,GAAG,qBAAqB,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IAC5E,MAAM,GAAG,GACP,OAAO,CAAC,GAAG,KAAK,SAAS;QACvB,CAAC,CAAC,iCAAiC,CAAC;YAChC,UAAU,EAAE,cAAc;YAC1B,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,aAAa,EAAE,OAAO,CAAC,gBAAgB;YACvC,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC;QACJ,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;IAClB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC/C,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,cAAc,CAAC;IAChD,8EAA8E;IAC9E,wEAAwE;IACxE,6DAA6D;IAC7D,MAAM,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,IAAI,MAAM,CAAC;IAClE,MAAM,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,IAAI,MAAM,CAAC;IAChE,MAAM,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,IAAI,KAAK,CAAC;IACzE,MAAM,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,IAAI,MAAM,CAAC;IAClE,IAAI,UAA8B,CAAC;IACnC,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,8EAA8E;IAC9E,iEAAiE;IACjE,IAAI,MAA4B,CAAC;IACjC,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAC1B,IAAI,cAA0D,CAAC;IAC/D,IAAI,cAAyD,CAAC;IAC9D,yEAAyE;IACzE,6EAA6E;IAC7E,yEAAyE;IACzE,6EAA6E;IAC7E,6DAA6D;IAC7D,IAAI,mBAAmB,GAAG,CAAC,CAAC;IAC5B,yEAAyE;IACzE,mEAAmE;IACnE,IAAI,oBAAwC,CAAC;IAC7C,IAAI,oBAAoB,GAAG,CAAC,CAAC;IAC7B,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAE/B,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;IAErD,MAAM,QAAQ,GAAG,CAAC,OAAgB,EAAE,EAAE;QACpC,IAAI,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QACvC,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,QAAgB,EAAE,OAAmB,EAAE,EAAE;QACzD,IAAI,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QAClD,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAE,MAAc,EAAE,EAAE;QACvD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC;QACvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACzB,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnC,QAAQ,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC;IAEF,MAAM,sBAAsB,GAAG,CAC7B,MAAmB,EACnB,aAAyB,EACzB,EAAE;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAChB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,aAAa,EAAE,oBAAoB,CAAC,EAAE,CAAC;gBAChE,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACnC,CAAC;YACD,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC;QACnE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YAC9D,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,cAAc,CACpC,cAAc,CAAC,KAAK,CAAC,EACrB,KAAK,KAAK,cAAc,CAAC,MAAM,GAAG,CAAC,CACpC,CAAC;YACF,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,CAAC,EAAE,CAAC;gBAC3D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrB,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,KAAK,EAAE,MAAmB,EAAE,EAAE;QACtD,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAClD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;YACT,CAAC;YAED,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAChE,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAC3C,OAAO,CAAC,OAAO,EACf,MAAM,CAAC,OAAO,EACd,MAAM,CACP,CAAC;YACF,wEAAwE;YACxE,wEAAwE;YACxE,sEAAsE;YACtE,wEAAwE;YACxE,sEAAsE;YACtE,wEAAwE;YACxE,4EAA4E;YAC5E,sBAAsB,CAAC,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;YACxD,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;YACnD,OAAO;QACT,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,MAAmB,EAAE,SAAqB,EAAE,EAAE;QACrE,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QACD,MAAM,CAAC,SAAS,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;QAC7C,KAAK,iBAAiB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YACtD,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5D,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,MAAmB,EAAE,OAAmB,EAAE,EAAE;QAClE,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAChB,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YACtC,CAAC;YACD,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5D,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,KAAK,EAAE,QAAgB,EAAE,EAAE;QAC5C,MAAM,MAAM,GAAgB;YAC1B,QAAQ;YACR,SAAS,EAAE,EAAE;SACd,CAAC;QAEF,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC;gBAClC,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,QAAQ;gBACR,UAAU;aACX,CAAC,CAAC;QACL,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC9B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvD,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClC,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,OAAuB,EAAE,EAAE;QAChD,IAAI,OAAO,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACrC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;YAChC,OAAO,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,CAAC;YAChC,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;gBACvB,KAAK,GAAG;qBACL,OAAO,CAAC;oBACP,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,UAAU;iBACX,CAAC;qBACD,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;oBACxB,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC9D,CAAC,CAAC,CAAC;YACP,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC5B,qEAAqE;YACrE,4BAA4B;YAC5B,OAAO;QACT,CAAC;QAED,IACE,OAAO,CAAC,IAAI,KAAK,aAAa;YAC9B,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,EACpC,CAAC;YACD,KAAK,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBACzD,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC5D,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBACzC,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;gBACrD,CAAC;YACH,CAAC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,IACE,OAAO,CAAC,IAAI,KAAK,cAAc;YAC/B,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,EACpC,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC;YAC9C,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACjC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,IAAuC,EAAE,EAAE;QAClE,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC7D,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC7B,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAChD,OAAO;QACT,CAAC;QAED,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,aAAa,CAAC,cAAc,CAAC,CAAC;YAC9B,cAAc,GAAG,SAAS,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,IAAI,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;YACtC,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,oEAAoE;QACpE,8DAA8D;QAC9D,MAAM,SAAS,GACb,GAAG,GAAG,oBAAoB;YAC1B,mBAAmB,GAAG,0BAA0B,CAAC;QACnD,oBAAoB,GAAG,GAAG,CAAC;QAE3B,IACE,oBAAoB,KAAK,SAAS;YAClC,mBAAmB,IAAI,oBAAoB,EAC3C,CAAC;YACD,uEAAuE;YACvE,0BAA0B;YAC1B,oBAAoB,GAAG,SAAS,CAAC;YACjC,kBAAkB,GAAG,KAAK,CAAC;QAC7B,CAAC;QAED,MAAM,2BAA2B,GAC/B,oBAAoB,KAAK,SAAS;YAClC,GAAG,GAAG,oBAAoB,GAAG,kBAAkB,CAAC;QAElD,IAAI,2BAA2B,IAAI,SAAS,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACpE,oEAAoE;YACpE,sEAAsE;YACtE,6DAA6D;YAC7D,kBAAkB,GAAG,IAAI,CAAC;YAC1B,oBAAoB,GAAG,SAAS,CAAC;QACnC,CAAC;aAAM,IAAI,2BAA2B,EAAE,CAAC;YACvC,wEAAwE;YACxE,yEAAyE;YACzE,sEAAsE;YACtE,oEAAoE;YACpE,GAAG,CAAC,6CAA6C,CAAC,CAAC;YACnD,IAAI,CAAC;gBACH,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;YAC1C,CAAC;YAAC,MAAM,CAAC;gBACP,uEAAuE;YACzE,CAAC;YACD,OAAO;QACT,CAAC;QAED,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3B,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACvC,oBAAoB,GAAG,GAAG,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,aAAa,EAAE,CAAC;QAChB,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjC,oBAAoB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAClC,oBAAoB,GAAG,SAAS,CAAC;QACjC,kBAAkB,GAAG,KAAK,CAAC;QAC3B,cAAc,GAAG,WAAW,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;IACnE,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,GAAG,EAAE;QAC7B,IAAI,MAAM,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YAC3C,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,mBAAmB,EACnB,uBAAuB,GAAG,CAAC,IAAI,iBAAiB,CACjD,CAAC;QACF,iBAAiB,IAAI,CAAC,CAAC;QACvB,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;YAC/B,cAAc,GAAG,SAAS,CAAC;YAC3B,OAAO,EAAE,CAAC;QACZ,CAAC,EAAE,KAAK,CAAC,CAAC;IACZ,CAAC,CAAC;IAEF,SAAS,OAAO;QACd,uEAAuE;QACvE,wEAAwE;QACxE,IAAI,MAAM,EAAE,CAAC;YACX,OAAO;QACT,CAAC;QACD,UAAU,GAAG,SAAS,CAAC;QACvB,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;QAC5D,MAAM,CAAC,UAAU,GAAG,aAAa,CAAC;QAClC,OAAO,CAAC,QAAQ,EAAE,CAAC,YAAY,CAAC,CAAC;QAEjC,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE;YACnB,iBAAiB,GAAG,CAAC,CAAC;YACtB,cAAc,EAAE,CAAC;YACjB,OAAO,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,CAAC;QAClC,CAAC,CAAC;QACF,MAAM,CAAC,SAAS,GAAG,CAAC,KAAK,EAAE,EAAE;YAC3B,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACjC,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACnC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAmB,CAAC,CAAC;gBACxD,OAAO;YACT,CAAC;YACD,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC,CAAC;QACF,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;YACzB,aAAa,EAAE,CAAC;YAChB,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YACnD,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,iBAAiB,CAAC,KAAK,EAAE,CAAC;YAC1B,UAAU,GAAG,SAAS,CAAC;YACvB,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;YAC5D,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBACrC,OAAO;YACT,CAAC;YACD,IAAI,KAAK,EAAE,IAAI,KAAK,4BAA4B,EAAE,CAAC;gBACjD,qEAAqE;gBACrE,sEAAsE;gBACtE,oEAAoE;gBACpE,MAAM,GAAG,IAAI,CAAC;gBACd,iEAAiE;gBACjE,+DAA+D;gBAC/D,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;oBACjC,YAAY,CAAC,cAAc,CAAC,CAAC;oBAC7B,cAAc,GAAG,SAAS,CAAC;gBAC7B,CAAC;gBACD,GAAG,CAAC,iEAAiE,CAAC,CAAC;gBACvE,OAAO,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;gBACvC,OAAO;YACT,CAAC;YACD,OAAO,CAAC,QAAQ,EAAE,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;YAC3C,iBAAiB,EAAE,CAAC;QACtB,CAAC,CAAC;QACF,MAAM,CAAC,OAAO,GAAG,GAAG,EAAE;YACpB,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO;YACT,CAAC;YACD,OAAO,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC;QAC9B,CAAC,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,CAAC;IAEV,yEAAyE;IACzE,sEAAsE;IACtE,4DAA4D;IAC5D,MAAM,SAAS,GAAG,GAAG,EAAE;QACrB,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;YACjD,OAAO,CAAC,MAAM,CAAC,cAAc,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,OAAO;QACL,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,GAAG,EAAE,UAAU;QACf,KAAK,CAAC,WAAW,CAAC,EAAE,SAAS,GAAG,MAAM,EAAE,cAAc,GAAG,EAAE,EAAE,GAAG,EAAE;YAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,OAAO,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;gBAC7C,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;YACtE,CAAC;QACH,CAAC;QACD,KAAK,CAAC,MAAM,GAAG,QAAQ;YACrB,MAAM,GAAG,IAAI,CAAC;YACd,aAAa,EAAE,CAAC;YAChB,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;gBACjC,YAAY,CAAC,cAAc,CAAC,CAAC;gBAC7B,cAAc,GAAG,SAAS,CAAC;YAC7B,CAAC;YACD,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YACnD,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,iBAAiB,CAAC,KAAK,EAAE,CAAC;YAC1B,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7B,CAAC;KACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,OAAsB,EACtB,OAA0B,EAC1B,MAAc;IAEd,MAAM,aAAa,GAAwB;QACzC,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE;QAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC;KACjC,CAAC;IACF,MAAM,cAAc,GAAG,MAAM,yBAAyB,CACpD,OAAO,EACP,aAAa,EACb;QACE,MAAM;KACP,CACF,CAAC;IACF,4EAA4E;IAC5E,gFAAgF;IAChF,uFAAuF;IACvF,kFAAkF;IAClF,2EAA2E;IAC3E,MAAM,SAAS,GAAG,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,WAAW,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CACrE,MAAM,CACP,CAAC;IACF,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC7E,IACE,WAAW;QACX,CAAC,cAAc;QACf,SAAS,CAAC,MAAM,IAAI,cAAc;QAClC,OAAO,iBAAiB,KAAK,WAAW,EACxC,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;QAC3C,OAAO,iBAAiB,CAAC,cAAc,EAAE;YACvC,YAAY,EAAE,OAAO;YACrB,eAAe,EAAE,MAAM;SACxB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,iBAAiB,CAAC,cAAc,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC;AACxE,CAAC;AAED,4EAA4E;AAC5E,4CAA4C;AAC5C,MAAM,cAAc,GAAG,IAAI,CAAC;AAE5B,KAAK,UAAU,SAAS,CAAC,KAAiB;IACxC,MAAM,EAAE,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;IACvC,4EAA4E;IAC5E,wEAAwE;IACxE,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IACjE,MAAM,MAAM,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;IACvC,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,SAAS,CAAC;QACR,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,IAAI;YAAE,MAAM;QAChB,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC;QACxB,CAAC;IACH,CAAC;IACD,MAAM,SAAS,CAAC;IAChB,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;IAClC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;IACzB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,QAA8B,EAC9B,IAA8D;IAE9D,MAAM,eAAe,GAA2B;QAC9C,eAAe,EAAE,UAAU;QAC3B,UAAU,EAAE,OAAO;QACnB,GAAG,QAAQ,CAAC,OAAO;KACpB,CAAC;IACF,0EAA0E;IAC1E,8EAA8E;IAC9E,+EAA+E;IAC/E,6EAA6E;IAC7E,8EAA8E;IAC9E,8EAA8E;IAC9E,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QAC/C,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,gBAAgB,EAAE,CAAC;YAC3C,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IACD,IAAI,IAAI,EAAE,eAAe,EAAE,CAAC;QAC1B,eAAe,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC;IAC7D,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,EAAE,YAAY,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG;QACX,YAAY,QAAQ,CAAC,MAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;QAChE,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,GAAG,CACpC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,KAAK,EAAE,CACrC;QACD,mBAAmB,SAAS,CAAC,MAAM,EAAE;QACrC,EAAE;QACF,EAAE;KACH,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACf,OAAO,IAAI,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,YAAY,CACnB,OAAgD,EAChD,GAAW;IAEX,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;IACtB,CAAC;IACD,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,IAAI,SAAS,CAAC,GAAG,CAAyB,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,QAAgB,EAChB,OAAmB;IAEnB,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5D,KAAK,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC;IAC3B,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;IAChC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjC,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,IAAuC;IAEvC,MAAM,KAAK,GACT,OAAO,IAAI,KAAK,QAAQ;QACtB,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;QACnB,CAAC,CAAC,IAAI,YAAY,UAAU;YAC1B,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAC7B,IAAI,KAAK,CAAC,MAAM,GAAG,YAAY,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,eAAe,EAAE,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;QAC9B,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC;KACnC,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CACvB,MAAc;IAEd,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;QACrB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IACpD,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;YACrB,SAAS;QACX,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,GAAG,IAAI;aAC1D,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;aACpB,IAAI,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,SAAS,GAAG,SAAS,GAAG,CAAC,CAAC;IAChC,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,GAAG,CAAC,CAAC;IAC/D,MAAM,UAAU,GAAG,SAAS,GAAG,aAAa,CAAC;IAC7C,IAAI,MAAM,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC5C,OAAO;QACL,aAAa,EAAE,UAAU;QACzB,OAAO,EAAE;YACP,MAAM;YACN,IAAI,EAAE,GAAG,CAAC,QAAQ;YAClB,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE;YAClC,OAAO;YACP,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;SACzD;KACF,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAiB;IACrC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,OAAO,UAAU,CAAC,IAAI,KAAK,UAAU;QAC1C,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;QACzB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,MAAM,CAAC,KAAiB,EAAE,UAAkB;IACnD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,MAAM,IAAI,UAAU,EAAE,CAAC;QACjE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,UAAU,EAAE,CAAC;IACpC,MAAM,MAAM,GACV,OAAO,UAAU,CAAC,IAAI,KAAK,UAAU;QACnC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;QACxB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACtD,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,aAAa,CAAC,KAAiB;IACtC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,WAAW,CAAC,KAAiB,EAAE,MAAc,EAAE,KAAa;IACnE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IACtC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IAC1C,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC;IACzC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC;AACnC,CAAC;AAED,SAAS,UAAU,CAAC,KAAiB,EAAE,MAAc;IACnD,OAAO,CACL,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS;QACzB,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAC3E,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,MAAc;IACpC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,SAAS,CAAC;IACrC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,YAAY,CAAC;IACxC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,aAAa,CAAC;IACzC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,cAAc,CAAC;IAC1C,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,WAAW,CAAC;IACvC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,WAAW,CAAC;IACvC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,oBAAoB,CAAC;IAChD,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,mBAAmB,CAAC;IAC/C,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,uBAAuB,CAAC;IACnD,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,qBAAqB,CAAC;IACjD,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
package/dist/runtime.d.ts
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import { type SessionTokenVerifierPort } from "@opendatalabs/personal-server-ts-core/auth";
|
|
2
|
-
import { type PersonalServerApiAuthPort, type PersonalServerReadAuthInput, type PersonalServerReadAuthResult } from "@opendatalabs/personal-server-ts-core/api";
|
|
3
|
-
import { type
|
|
2
|
+
import { type PersonalServerApiAuthPort, type PersonalServerReadAuthInput, type PersonalServerReadAuthResult, type PersonalServerReadFulfillmentReporter } from "@opendatalabs/personal-server-ts-core/api";
|
|
3
|
+
import { type QuestionStore, type RecomputeScheduler } from "@opendatalabs/personal-server-ts-core/derivatives";
|
|
4
|
+
import type { LineageGatewayPort } from "@opendatalabs/personal-server-ts-core/lineage";
|
|
5
|
+
import { type DataReadPolicyPorts, type DataWritePolicyPorts } from "@opendatalabs/personal-server-ts-core/policy";
|
|
6
|
+
import { type WriteProofReplayStore, type WriteSessionStore } from "@opendatalabs/personal-server-ts-core/write";
|
|
4
7
|
import type { DataStoragePort, RuntimeAvailabilityPort } from "@opendatalabs/personal-server-ts-core/ports";
|
|
8
|
+
import type { ScopeDeletionTracker } from "@opendatalabs/personal-server-ts-core/sync";
|
|
5
9
|
import type { DataPortabilityGatewayConfig, GatewayClient } from "@opendatalabs/vana-sdk/browser";
|
|
6
10
|
import type { AccessLogWriter } from "@opendatalabs/personal-server-ts-core/logging/access-log";
|
|
7
11
|
import type { AccessLogReader } from "@opendatalabs/personal-server-ts-core/logging/access-reader";
|
|
@@ -27,6 +31,10 @@ export interface PsLiteRuntimeOptions {
|
|
|
27
31
|
gateway?: Partial<DataPortabilityGatewayConfig> & {
|
|
28
32
|
url?: string;
|
|
29
33
|
};
|
|
34
|
+
/** X402 read enforcement. Off by default in the browser runtime. */
|
|
35
|
+
payment?: {
|
|
36
|
+
enabled?: boolean;
|
|
37
|
+
};
|
|
30
38
|
};
|
|
31
39
|
saveConfig?: (config: unknown) => Promise<void>;
|
|
32
40
|
identity?: {
|
|
@@ -35,11 +43,56 @@ export interface PsLiteRuntimeOptions {
|
|
|
35
43
|
};
|
|
36
44
|
gateway?: GatewayClient;
|
|
37
45
|
serverOwner?: `0x${string}`;
|
|
38
|
-
serverSigner?: Pick<ServerSigner, "
|
|
39
|
-
syncManager?: (Pick<SyncManager, "trigger" | "getStatus"> & Partial<Pick<SyncManager, "start" | "stop">>) | null;
|
|
46
|
+
serverSigner?: Pick<ServerSigner, "signGrantRegistration"> & Partial<Pick<ServerSigner, "signGrantRevocation" | "signRecordDataAccess" | "address">>;
|
|
47
|
+
syncManager?: (Pick<SyncManager, "trigger" | "getStatus"> & Partial<Pick<SyncManager, "start" | "stop" | "deleteScope">>) | null;
|
|
48
|
+
/**
|
|
49
|
+
* Read-side tombstone memory; reads of a scope the gateway reports deleted
|
|
50
|
+
* answer 410 (stale local copy or not). Built by the browser runtime
|
|
51
|
+
* alongside the sync manager, which keeps it current.
|
|
52
|
+
*/
|
|
53
|
+
scopeDeletions?: ScopeDeletionTracker;
|
|
40
54
|
accessLogReader?: AccessLogReader;
|
|
41
55
|
accessLogWriter?: AccessLogWriter;
|
|
56
|
+
readFulfillmentReporter?: PersonalServerReadFulfillmentReporter;
|
|
57
|
+
/**
|
|
58
|
+
* Derivative data: gateway lineage access for the data routes (source
|
|
59
|
+
* lookups on write, signed lineage read, cascade delete walk).
|
|
60
|
+
*/
|
|
61
|
+
lineageGateway?: LineageGatewayPort;
|
|
62
|
+
/**
|
|
63
|
+
* Derivative compute layer (store + scheduler). Omit to leave
|
|
64
|
+
* /v1/derivatives answering 503; see createPsLiteDerivativeCompute.
|
|
65
|
+
*/
|
|
66
|
+
derivatives?: {
|
|
67
|
+
store: QuestionStore;
|
|
68
|
+
scheduler: RecomputeScheduler;
|
|
69
|
+
} | null;
|
|
42
70
|
accessToken?: string;
|
|
71
|
+
/**
|
|
72
|
+
* Write API sessions. When present, POST /v1/write/session is mounted and
|
|
73
|
+
* mints the bearer tokens the auth adapter redeems on POST /v1/data/:scope
|
|
74
|
+
* and the derivative question routes. The SAME store must be wired into the
|
|
75
|
+
* adapter (`writeSessions.store`); `createIndexedDbPsLiteRuntime` does both.
|
|
76
|
+
* Absent = owner-only ingest and no handshake endpoint.
|
|
77
|
+
*
|
|
78
|
+
* KNOWN LIMITATION, same as the Node build: sessions and the proof replay
|
|
79
|
+
* guard are in-memory, so a reload drops live tokens and the builder
|
|
80
|
+
* re-handshakes. Because both live in the same memory, a reload can never
|
|
81
|
+
* leave a replayable proof for a session that survived it.
|
|
82
|
+
*/
|
|
83
|
+
writeSessionStore?: WriteSessionStore;
|
|
84
|
+
/**
|
|
85
|
+
* Replay guard shared by the handshake proof and the per-write proofs.
|
|
86
|
+
* Defaults to a fresh in-memory store.
|
|
87
|
+
*/
|
|
88
|
+
writeProofReplayStore?: WriteProofReplayStore;
|
|
89
|
+
/**
|
|
90
|
+
* The audience every builder proof must name. It MUST be the origin the
|
|
91
|
+
* auth adapter verifies write proofs against, or a builder would have to
|
|
92
|
+
* sign the handshake for one audience and its writes for another. Defaults
|
|
93
|
+
* to the request's own origin.
|
|
94
|
+
*/
|
|
95
|
+
serverOrigin?: string | (() => string);
|
|
43
96
|
tokenStore?: PsLiteTokenStore;
|
|
44
97
|
stateCapabilities?: Partial<PsLiteRuntimeStateCapabilities>;
|
|
45
98
|
/**
|
|
@@ -77,9 +130,44 @@ export interface PsLiteRuntime extends RuntimeAvailabilityPort {
|
|
|
77
130
|
deactivate(): void;
|
|
78
131
|
fetch(request: Request): Promise<Response>;
|
|
79
132
|
}
|
|
133
|
+
/**
|
|
134
|
+
* Delegated-write (Write API) wiring for a PS-Lite auth adapter.
|
|
135
|
+
*
|
|
136
|
+
* A builder holding `write:<scope>` opens a session at POST /v1/write/session
|
|
137
|
+
* and then writes through the ordinary ingest endpoint. The adapter and the
|
|
138
|
+
* handshake route MUST share one `store` (the route mints what the adapter
|
|
139
|
+
* redeems) and one `replayStore` (the handshake proof and the per-write proofs
|
|
140
|
+
* are guarded by the same memory). `createIndexedDbPsLiteRuntime` wires both
|
|
141
|
+
* for you; supply them yourself only when you build the adapter by hand.
|
|
142
|
+
*/
|
|
143
|
+
export interface PsLiteWriteSessionAuthOptions {
|
|
144
|
+
/** Live write sessions, shared with the handshake route. */
|
|
145
|
+
store: WriteSessionStore;
|
|
146
|
+
/**
|
|
147
|
+
* Replay guard for the per-write `X-Vana-Write-Signature` proofs. Defaults
|
|
148
|
+
* to a fresh in-memory store, so replay protection is always on; pass the
|
|
149
|
+
* runtime's store to share one guard with the handshake route.
|
|
150
|
+
*/
|
|
151
|
+
replayStore?: WriteProofReplayStore;
|
|
152
|
+
/**
|
|
153
|
+
* Live builder/grant verification, re-run on EVERY delegated write, so a
|
|
154
|
+
* revoked or narrowed grant stops writes at the next one.
|
|
155
|
+
*/
|
|
156
|
+
policyPorts: DataWritePolicyPorts;
|
|
157
|
+
}
|
|
80
158
|
export interface BearerTokenPsLiteAuthOptions {
|
|
81
159
|
ownerToken: string;
|
|
82
160
|
builderToken: string;
|
|
161
|
+
/**
|
|
162
|
+
* Optional delegated-write support. The static builder token never gains
|
|
163
|
+
* write access through it: a delegated write still needs a real session
|
|
164
|
+
* token plus the builder's signed payload proof, verified exactly as the
|
|
165
|
+
* Node server verifies it.
|
|
166
|
+
*/
|
|
167
|
+
writeSessions?: PsLiteWriteSessionAuthOptions & {
|
|
168
|
+
serverOrigin: string | (() => string);
|
|
169
|
+
serverOwner: `0x${string}`;
|
|
170
|
+
};
|
|
83
171
|
}
|
|
84
172
|
export interface Web3SignedPsLiteAuthOptions {
|
|
85
173
|
origin: string | (() => string);
|
|
@@ -88,6 +176,11 @@ export interface Web3SignedPsLiteAuthOptions {
|
|
|
88
176
|
accessToken?: string;
|
|
89
177
|
tokenStore?: SessionTokenVerifierPort;
|
|
90
178
|
now?: () => number;
|
|
179
|
+
/**
|
|
180
|
+
* Optional delegated-write support. Absent = owner-only ingest, exactly as
|
|
181
|
+
* before write sessions existed.
|
|
182
|
+
*/
|
|
183
|
+
writeSessions?: PsLiteWriteSessionAuthOptions;
|
|
91
184
|
}
|
|
92
185
|
export declare function createBearerTokenPsLiteAuth(options: BearerTokenPsLiteAuthOptions): PsLiteAuthAdapter;
|
|
93
186
|
export declare function createWeb3SignedPsLiteAuth(options: Web3SignedPsLiteAuthOptions): PsLiteAuthAdapter;
|
package/dist/runtime.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AASA,OAAO,EAGL,KAAK,wBAAwB,EAC9B,MAAM,4CAA4C,CAAC;AAUpD,OAAO,EAOL,KAAK,yBAAyB,EAC9B,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime.js
CHANGED
|
@@ -2,9 +2,11 @@ import { GrantRequiredError, InvalidSignatureError, MissingAuthError, NotOwnerEr
|
|
|
2
2
|
import { authenticateRequest, } from "@opendatalabs/personal-server-ts-core/auth";
|
|
3
3
|
import { approveDeviceSessionContract, createMemoryDeviceSessionStore, initiateDeviceSessionContract, pollDeviceSessionContract, provisionDeviceTokenContract, revokeDeviceTokenContract, } from "@opendatalabs/personal-server-ts-core/contracts";
|
|
4
4
|
import { handlePersonalServerAccessLogsRequest, handlePersonalServerConfigRequest, handlePersonalServerDataRequest, handlePersonalServerGrantsRequest, handlePersonalServerOauthTokenRequest, handlePersonalServerSyncRequest, } from "@opendatalabs/personal-server-ts-core/api";
|
|
5
|
+
import { handlePersonalServerDerivativesRequest, } from "@opendatalabs/personal-server-ts-core/derivatives";
|
|
5
6
|
import { verifyDataReadPolicy, } from "@opendatalabs/personal-server-ts-core/policy";
|
|
7
|
+
import { createInMemoryWriteProofReplayStore, createWriteSessionAuthorization, handleWriteSessionRequest, } from "@opendatalabs/personal-server-ts-core/write";
|
|
6
8
|
import { approveMcpOAuthAuthorization, approveMcpOAuthAuthorizationWithScopes, approveMcpConnection, buildMcpProtectedResourceMetadataUrl, buildStableMcpUrl, createInMemoryMcpOAuthAuthorizationStore, createMcpConnection, createMcpOAuthAuthorization, createMcpDataReadClient, handleMcpStreamableHttpRequest, hashConnectionToken, listMcpConnectionViews, loadMcpGranteeAccount, McpConnectionNotFoundError, McpConnectionStateError, McpOAuthAuthorizationError, redeemMcpOAuthAuthorizationCode, toMcpOAuthAuthorizationView, revokeMcpConnection, toMcpConnectionView, McpActivityRecorder, } from "@opendatalabs/personal-server-ts-core/mcp";
|
|
7
|
-
import {
|
|
9
|
+
import { createDefaultPsLiteAccessLogStore, createDefaultPsLiteSaveConfig, createDefaultPsLiteTokenStore, } from "./state.js";
|
|
8
10
|
import { collectDiagnosticsWithTimeout, DiagnosticsRecorder, } from "./diagnostics.js";
|
|
9
11
|
function jsonResponse(body, init) {
|
|
10
12
|
const headers = new Headers(init?.headers);
|
|
@@ -120,11 +122,42 @@ function createMissingAuthAdapter() {
|
|
|
120
122
|
},
|
|
121
123
|
};
|
|
122
124
|
}
|
|
123
|
-
|
|
125
|
+
/**
|
|
126
|
+
* The two write-session methods of the auth port, built on the SHARED core
|
|
127
|
+
* authorizer (`createWriteSessionAuthorization`) — the same code the Node
|
|
128
|
+
* server's adapter runs. `authorizeWrite` falls back to the adapter's owner
|
|
129
|
+
* gate for any request that carries no live session, so owner ingest behaves
|
|
130
|
+
* exactly as it did before write sessions existed.
|
|
131
|
+
*/
|
|
132
|
+
function writeSessionAuthMethods(writeSessions, authorizeOwner) {
|
|
133
|
+
const authorization = createWriteSessionAuthorization({
|
|
134
|
+
serverOrigin: writeSessions.serverOrigin,
|
|
135
|
+
serverOwner: writeSessions.serverOwner,
|
|
136
|
+
sessionStore: writeSessions.store,
|
|
137
|
+
replayStore: writeSessions.replayStore ?? createInMemoryWriteProofReplayStore(),
|
|
138
|
+
policyPorts: writeSessions.policyPorts,
|
|
139
|
+
});
|
|
124
140
|
return {
|
|
125
|
-
async
|
|
126
|
-
|
|
141
|
+
async authorizeWrite(input) {
|
|
142
|
+
const delegated = await authorization.authorizeSessionWrite(input);
|
|
143
|
+
if (delegated)
|
|
144
|
+
return delegated;
|
|
145
|
+
await authorizeOwner(input.request);
|
|
127
146
|
},
|
|
147
|
+
async authorizeWriteSession(request) {
|
|
148
|
+
return authorization.recognizeWriteSession(request);
|
|
149
|
+
},
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
export function createBearerTokenPsLiteAuth(options) {
|
|
153
|
+
const authorizeOwner = async (request) => {
|
|
154
|
+
assertBearerToken(request, options.ownerToken, true);
|
|
155
|
+
};
|
|
156
|
+
return {
|
|
157
|
+
authorizeOwner,
|
|
158
|
+
...(options.writeSessions
|
|
159
|
+
? writeSessionAuthMethods(options.writeSessions, authorizeOwner)
|
|
160
|
+
: {}),
|
|
128
161
|
async authorizeBuilderList(request) {
|
|
129
162
|
if (parseBearerToken(request) === options.ownerToken)
|
|
130
163
|
return;
|
|
@@ -140,6 +173,15 @@ export function createBearerTokenPsLiteAuth(options) {
|
|
|
140
173
|
reason: "No grantId in request",
|
|
141
174
|
});
|
|
142
175
|
}
|
|
176
|
+
// This adapter echoes the caller-supplied grantId into the auth
|
|
177
|
+
// result, so it must never mint the server-internal sentinels that
|
|
178
|
+
// confer the unredacted owner view and the x402 payment exemption.
|
|
179
|
+
if (input.grantId === "owner" || input.grantId === "policy-bypass") {
|
|
180
|
+
throw new GrantRequiredError({
|
|
181
|
+
reason: "Reserved grantId",
|
|
182
|
+
grantId: input.grantId,
|
|
183
|
+
});
|
|
184
|
+
}
|
|
143
185
|
return { grantId: input.grantId };
|
|
144
186
|
},
|
|
145
187
|
};
|
|
@@ -163,16 +205,24 @@ function dataReadPolicyPortsRequired() {
|
|
|
163
205
|
});
|
|
164
206
|
}
|
|
165
207
|
export function createWeb3SignedPsLiteAuth(options) {
|
|
208
|
+
const authorizeOwner = async (request) => {
|
|
209
|
+
const auth = await authenticatePsLiteRequest(request, options);
|
|
210
|
+
if (!isOwnerSigner(auth, options.ownerAddress)) {
|
|
211
|
+
throw new NotOwnerError({
|
|
212
|
+
expected: options.ownerAddress,
|
|
213
|
+
actual: auth.auth.signer,
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
};
|
|
166
217
|
return {
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
}
|
|
175
|
-
},
|
|
218
|
+
authorizeOwner,
|
|
219
|
+
...(options.writeSessions
|
|
220
|
+
? writeSessionAuthMethods({
|
|
221
|
+
...options.writeSessions,
|
|
222
|
+
serverOrigin: options.origin,
|
|
223
|
+
serverOwner: options.ownerAddress,
|
|
224
|
+
}, authorizeOwner)
|
|
225
|
+
: {}),
|
|
176
226
|
async authorizeBuilderList(request) {
|
|
177
227
|
const auth = await authenticatePsLiteRequest(request, options);
|
|
178
228
|
if (auth.isPolicyBypass || isOwnerSigner(auth, options.ownerAddress)) {
|
|
@@ -202,6 +252,9 @@ export function createWeb3SignedPsLiteAuth(options) {
|
|
|
202
252
|
grantId: auth.auth.payload.grantId ?? input.grantId,
|
|
203
253
|
requestedScope: input.scope,
|
|
204
254
|
fileId: input.fileId,
|
|
255
|
+
// Bind the read to this PS's owner — the grant must have been issued
|
|
256
|
+
// by us. Required now that the policy fails closed on a missing owner.
|
|
257
|
+
serverOwner: options.ownerAddress,
|
|
205
258
|
}, options.dataReadPolicyPorts);
|
|
206
259
|
return { builder: auth.auth.signer, grantId: grant.id };
|
|
207
260
|
},
|
|
@@ -213,15 +266,6 @@ function toDataStoragePort(storage) {
|
|
|
213
266
|
}
|
|
214
267
|
throw new Error("PS Lite runtime requires a persistent DataStoragePort. Use createIndexedDbPsLiteRuntime() or createPersistentPsLiteStorage().");
|
|
215
268
|
}
|
|
216
|
-
function indexedDbAvailable() {
|
|
217
|
-
return typeof indexedDB !== "undefined";
|
|
218
|
-
}
|
|
219
|
-
function createDefaultAccessLogStore() {
|
|
220
|
-
if (!indexedDbAvailable()) {
|
|
221
|
-
throw new Error("IndexedDB is required for default PS Lite access log persistence.");
|
|
222
|
-
}
|
|
223
|
-
return createIndexedDbPsLiteAccessLogStore();
|
|
224
|
-
}
|
|
225
269
|
function createLogId() {
|
|
226
270
|
return globalThis.crypto?.randomUUID?.() ?? `log-${Date.now()}`;
|
|
227
271
|
}
|
|
@@ -230,27 +274,48 @@ function randomHex(byteLength) {
|
|
|
230
274
|
globalThis.crypto.getRandomValues(bytes);
|
|
231
275
|
return Array.from(bytes, (byte) => byte.toString(16).padStart(2, "0")).join("");
|
|
232
276
|
}
|
|
233
|
-
function createDefaultTokenStore() {
|
|
234
|
-
if (!indexedDbAvailable()) {
|
|
235
|
-
throw new Error("IndexedDB is required for default PS Lite token storage.");
|
|
236
|
-
}
|
|
237
|
-
return createIndexedDbPsLiteTokenStore();
|
|
238
|
-
}
|
|
239
|
-
function createDefaultSaveConfig() {
|
|
240
|
-
if (!indexedDbAvailable()) {
|
|
241
|
-
throw new Error("IndexedDB is required for default PS Lite config persistence.");
|
|
242
|
-
}
|
|
243
|
-
const stateStore = createIndexedDbPsLiteStateStore();
|
|
244
|
-
return async (nextConfig) => {
|
|
245
|
-
await savePsLiteConfig(stateStore, nextConfig);
|
|
246
|
-
};
|
|
247
|
-
}
|
|
248
277
|
function bearerToken(request) {
|
|
249
278
|
const authorization = request.headers.get("authorization");
|
|
250
279
|
if (!authorization?.startsWith("Bearer "))
|
|
251
280
|
return null;
|
|
252
281
|
return authorization.slice(7);
|
|
253
282
|
}
|
|
283
|
+
/**
|
|
284
|
+
* Detached copy of the gateway block the caller built the gateway client and
|
|
285
|
+
* the server signer from, so a later live config write cannot mutate it.
|
|
286
|
+
*/
|
|
287
|
+
function snapshotGatewayConfig(config) {
|
|
288
|
+
const gateway = config?.gateway;
|
|
289
|
+
if (!gateway)
|
|
290
|
+
return undefined;
|
|
291
|
+
return {
|
|
292
|
+
...gateway,
|
|
293
|
+
...(gateway.contracts ? { contracts: { ...gateway.contracts } } : {}),
|
|
294
|
+
};
|
|
295
|
+
}
|
|
296
|
+
function resolveX402Settings(config, gateway = config?.gateway) {
|
|
297
|
+
// Paid reads need the complete EIP-712 gateway domain. A partial gateway is
|
|
298
|
+
// valid while payment is disabled, but must never enter the x402 path.
|
|
299
|
+
const paymentEnabled = config?.payment?.enabled ?? false;
|
|
300
|
+
const gatewayConfigComplete = Boolean(gateway &&
|
|
301
|
+
typeof gateway.url === "string" &&
|
|
302
|
+
typeof gateway.chainId === "number" &&
|
|
303
|
+
gateway.contracts &&
|
|
304
|
+
typeof gateway.contracts.dataPortabilityEscrow === "string" &&
|
|
305
|
+
typeof gateway.contracts.dataRegistry === "string");
|
|
306
|
+
if (paymentEnabled && !gatewayConfigComplete) {
|
|
307
|
+
throw new Error("PS-Lite x402 payment is enabled (config.payment.enabled) but the gateway " +
|
|
308
|
+
"config is incomplete. A complete gateway config — url, chainId, and " +
|
|
309
|
+
"contracts (dataPortabilityEscrow, dataRegistry) — is required to charge " +
|
|
310
|
+
"for reads. Provide the full config or disable payment.");
|
|
311
|
+
}
|
|
312
|
+
return {
|
|
313
|
+
paymentEnabled,
|
|
314
|
+
gatewayConfig: gatewayConfigComplete
|
|
315
|
+
? gateway
|
|
316
|
+
: undefined,
|
|
317
|
+
};
|
|
318
|
+
}
|
|
254
319
|
export function createPsLiteRuntime(options) {
|
|
255
320
|
let active = options.active ?? false;
|
|
256
321
|
const now = options.now ?? (() => new Date());
|
|
@@ -263,12 +328,36 @@ export function createPsLiteRuntime(options) {
|
|
|
263
328
|
let accessLogReader = options.accessLogReader;
|
|
264
329
|
let accessLogWriter = options.accessLogWriter;
|
|
265
330
|
if (!accessLogReader || !accessLogWriter) {
|
|
266
|
-
const accessLogStore =
|
|
331
|
+
const accessLogStore = createDefaultPsLiteAccessLogStore();
|
|
267
332
|
accessLogReader ??= accessLogStore;
|
|
268
333
|
accessLogWriter ??= accessLogStore;
|
|
269
334
|
}
|
|
270
|
-
const tokenStore = options.tokenStore ??
|
|
271
|
-
const saveConfig = options.saveConfig ??
|
|
335
|
+
const tokenStore = options.tokenStore ?? createDefaultPsLiteTokenStore();
|
|
336
|
+
const saveConfig = options.saveConfig ?? createDefaultPsLiteSaveConfig();
|
|
337
|
+
// The gateway client (options.gateway) and the server signer are built ONCE
|
|
338
|
+
// by the caller, from the startup gateway block: the gateway URL and the
|
|
339
|
+
// EIP-712 domain (chainId + contracts) are baked into them. A live config
|
|
340
|
+
// write persists a new gateway block but cannot rebuild those dependencies,
|
|
341
|
+
// so every gateway-derived request setting stays pinned to this snapshot —
|
|
342
|
+
// otherwise a config save (the UI PUTs a schema-defaulted config, so an
|
|
343
|
+
// omitted gateway block silently becomes the schema default) would issue
|
|
344
|
+
// x402 challenges, and query a gateway, for a domain the accessRecord
|
|
345
|
+
// signature was never made against. Gateway changes take effect on restart.
|
|
346
|
+
const boundGatewayConfig = snapshotGatewayConfig(options.config);
|
|
347
|
+
// Validate initial x402 readiness. The same derivation runs for every read
|
|
348
|
+
// and before every config write so payment policy cannot drift from the live
|
|
349
|
+
// config after a same-runtime update.
|
|
350
|
+
resolveX402Settings(options.config, boundGatewayConfig);
|
|
351
|
+
// The data handler's x402 path only needs signRecordDataAccess; narrow the
|
|
352
|
+
// (optional) signer so a grant-only signer doesn't masquerade as one that can
|
|
353
|
+
// sign access records.
|
|
354
|
+
const x402ServerSigner = options.serverSigner?.signRecordDataAccess
|
|
355
|
+
? { signRecordDataAccess: options.serverSigner.signRecordDataAccess }
|
|
356
|
+
: undefined;
|
|
357
|
+
// One replay guard for the handshake proof and (when the caller shares it
|
|
358
|
+
// with the auth adapter) the per-write proofs, matching createApp's single
|
|
359
|
+
// writeProofReplayStore in the Node build.
|
|
360
|
+
const writeProofReplayStore = options.writeProofReplayStore ?? createInMemoryWriteProofReplayStore();
|
|
272
361
|
const deviceSessions = createMemoryDeviceSessionStore();
|
|
273
362
|
const mcpOAuthAuthorizationStore = options.mcpOAuthAuthorizationStore ??
|
|
274
363
|
createInMemoryMcpOAuthAuthorizationStore();
|
|
@@ -399,10 +488,12 @@ export function createPsLiteRuntime(options) {
|
|
|
399
488
|
activate() {
|
|
400
489
|
active = true;
|
|
401
490
|
options.syncManager?.start?.();
|
|
491
|
+
options.derivatives?.scheduler.start();
|
|
402
492
|
},
|
|
403
493
|
deactivate() {
|
|
404
494
|
active = false;
|
|
405
495
|
void options.syncManager?.stop?.();
|
|
496
|
+
options.derivatives?.scheduler.stop();
|
|
406
497
|
},
|
|
407
498
|
isAvailable() {
|
|
408
499
|
return active;
|
|
@@ -493,16 +584,74 @@ export function createPsLiteRuntime(options) {
|
|
|
493
584
|
const dataPrefix = "/v1/data";
|
|
494
585
|
if (url.pathname === dataPrefix ||
|
|
495
586
|
url.pathname.startsWith(`${dataPrefix}/`)) {
|
|
587
|
+
const x402 = resolveX402Settings(options.config, boundGatewayConfig);
|
|
496
588
|
return handlePersonalServerDataRequest(request, {
|
|
497
589
|
storage: dataStorage,
|
|
498
590
|
auth,
|
|
499
|
-
schemaResolver: options.gateway,
|
|
500
591
|
accessLogWriter,
|
|
592
|
+
readFulfillmentReporter: options.readFulfillmentReporter,
|
|
501
593
|
syncManager: options.syncManager ?? null,
|
|
594
|
+
scopeDeletions: options.scopeDeletions,
|
|
502
595
|
now,
|
|
503
596
|
createLogId,
|
|
597
|
+
// x402 payment enforcement for builder reads. Only engages with a
|
|
598
|
+
// complete gateway config (validated at construction); a partial
|
|
599
|
+
// config leaves these undefined so reads are served free instead
|
|
600
|
+
// of yielding a malformed challenge.
|
|
601
|
+
paymentEnabled: x402.paymentEnabled,
|
|
602
|
+
gateway: options.gateway,
|
|
603
|
+
gatewayConfig: x402.gatewayConfig,
|
|
604
|
+
gatewayUrl: x402.gatewayConfig?.url,
|
|
605
|
+
serverAddress: options.identity?.address,
|
|
606
|
+
// The data owner signed into the RecordDataAccess attestation.
|
|
607
|
+
// Distinct from serverAddress (the server keypair): the core only
|
|
608
|
+
// embeds the x402 accessRecord when BOTH serverSigner and
|
|
609
|
+
// serverOwner are present (see x402.ts buildChallenge). We pass
|
|
610
|
+
// the real owner — not identity.address — so the on-chain
|
|
611
|
+
// recordDataAccess attributes the read to the correct owner; if
|
|
612
|
+
// serverOwner is absent the accessRecord is safely omitted.
|
|
613
|
+
serverOwner: options.serverOwner,
|
|
614
|
+
serverSigner: x402ServerSigner,
|
|
615
|
+
lineageGateway: options.lineageGateway,
|
|
616
|
+
// Recompute on refresh: a new local version marks every
|
|
617
|
+
// question that reads the scope stale.
|
|
618
|
+
onDataWritten: options.derivatives
|
|
619
|
+
? (event) => options.derivatives?.scheduler.markSourceChanged(event.scope, { lineageSources: event.lineageSources })
|
|
620
|
+
: undefined,
|
|
504
621
|
}, { basePath: dataPrefix });
|
|
505
622
|
}
|
|
623
|
+
// Write API handshake. Mounted only when a session store is wired,
|
|
624
|
+
// so a runtime without delegated writes has no endpoint to probe.
|
|
625
|
+
if (url.pathname === "/v1/write/session") {
|
|
626
|
+
if (!options.writeSessionStore) {
|
|
627
|
+
return errorResponse(404, "NOT_FOUND", "Not found");
|
|
628
|
+
}
|
|
629
|
+
if (request.method !== "POST") {
|
|
630
|
+
return errorResponse(405, "METHOD_NOT_ALLOWED", "Method not allowed");
|
|
631
|
+
}
|
|
632
|
+
if (!options.gateway) {
|
|
633
|
+
return errorResponse(500, "SERVER_NOT_CONFIGURED", "Gateway client is not configured");
|
|
634
|
+
}
|
|
635
|
+
return handleWriteSessionRequest(request, {
|
|
636
|
+
serverOrigin: options.serverOrigin ?? url.origin,
|
|
637
|
+
// The real data owner only — never the identity.address fallback
|
|
638
|
+
// the other routes accept. The grant's grantor must equal what
|
|
639
|
+
// the auth adapter binds delegated writes to, and a session
|
|
640
|
+
// minted against the SERVER key would authorize nothing. Absent
|
|
641
|
+
// = the handshake answers 500 rather than guessing.
|
|
642
|
+
serverOwner: options.serverOwner,
|
|
643
|
+
sessionStore: options.writeSessionStore,
|
|
644
|
+
replayStore: writeProofReplayStore,
|
|
645
|
+
authSessionVerifier: options.gateway,
|
|
646
|
+
grantVerifier: options.gateway,
|
|
647
|
+
accessToken: options.accessToken,
|
|
648
|
+
tokenStore,
|
|
649
|
+
});
|
|
650
|
+
}
|
|
651
|
+
const derivativesPrefix = "/v1/derivatives";
|
|
652
|
+
if (url.pathname.startsWith(`${derivativesPrefix}/`)) {
|
|
653
|
+
return handlePersonalServerDerivativesRequest(request, { auth, compute: options.derivatives ?? null, now }, { basePath: derivativesPrefix });
|
|
654
|
+
}
|
|
506
655
|
if (url.pathname.startsWith("/auth/device")) {
|
|
507
656
|
const response = await handleAuthDevice(request, url);
|
|
508
657
|
if (response)
|
|
@@ -563,7 +712,20 @@ export function createPsLiteRuntime(options) {
|
|
|
563
712
|
return options.config ?? {};
|
|
564
713
|
},
|
|
565
714
|
async writeConfig(config) {
|
|
715
|
+
// Validate the policy that will actually run: the incoming
|
|
716
|
+
// payment toggle against the pinned gateway, so a persisted
|
|
717
|
+
// config can never leave live reads without a usable domain.
|
|
718
|
+
resolveX402Settings(config, boundGatewayConfig);
|
|
566
719
|
await saveConfig(config);
|
|
720
|
+
// Reflect the persisted config in memory so reads (and
|
|
721
|
+
// GET /ui/api/config) stop serving the pre-write snapshot. The
|
|
722
|
+
// gateway block is reported as persisted but stays pinned for
|
|
723
|
+
// behavior until the next restart rebuilds gateway + signer.
|
|
724
|
+
if (options.config &&
|
|
725
|
+
typeof config === "object" &&
|
|
726
|
+
config !== null) {
|
|
727
|
+
Object.assign(options.config, config);
|
|
728
|
+
}
|
|
567
729
|
},
|
|
568
730
|
});
|
|
569
731
|
}
|
|
@@ -576,13 +738,15 @@ export function createPsLiteRuntime(options) {
|
|
|
576
738
|
approvalUrl: options.mcpOAuthApprovalUrl,
|
|
577
739
|
auth,
|
|
578
740
|
dataStorage,
|
|
579
|
-
schemaResolver: options.gateway,
|
|
580
741
|
accessLogWriter,
|
|
742
|
+
readFulfillmentReporter: options.readFulfillmentReporter,
|
|
581
743
|
now,
|
|
582
744
|
runtimeAvailability: { isAvailable: () => active },
|
|
583
745
|
serverOrigin: url.origin,
|
|
584
746
|
gateway: options.gateway,
|
|
585
|
-
|
|
747
|
+
// Pinned like the x402 path: grant registration is signed with the
|
|
748
|
+
// startup EIP-712 domain, so the MCP route must see the same one.
|
|
749
|
+
gatewayConfig: boundGatewayConfig,
|
|
586
750
|
serverOwner: options.serverOwner ?? options.identity?.address,
|
|
587
751
|
serverSigner: options.serverSigner,
|
|
588
752
|
activityRecorder,
|
|
@@ -931,8 +1095,8 @@ async function handleMcpRoute(input) {
|
|
|
931
1095
|
dataApiDeps: {
|
|
932
1096
|
storage: input.dataStorage,
|
|
933
1097
|
auth: input.auth,
|
|
934
|
-
schemaResolver: input.schemaResolver,
|
|
935
1098
|
accessLogWriter: input.accessLogWriter,
|
|
1099
|
+
readFulfillmentReporter: input.readFulfillmentReporter,
|
|
936
1100
|
runtimeAvailability: input.runtimeAvailability,
|
|
937
1101
|
now: input.now,
|
|
938
1102
|
createLogId,
|