mppx 0.6.0 → 0.6.2
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/CHANGELOG.md +12 -0
- package/dist/Method.d.ts +2 -0
- package/dist/Method.d.ts.map +1 -1
- package/dist/Method.js.map +1 -1
- package/dist/middlewares/hono.d.ts.map +1 -1
- package/dist/middlewares/hono.js +5 -1
- package/dist/middlewares/hono.js.map +1 -1
- package/dist/proxy/Proxy.d.ts.map +1 -1
- package/dist/proxy/Proxy.js +19 -1
- package/dist/proxy/Proxy.js.map +1 -1
- package/dist/proxy/internal/Route.d.ts +5 -0
- package/dist/proxy/internal/Route.d.ts.map +1 -1
- package/dist/proxy/internal/Route.js +2 -1
- package/dist/proxy/internal/Route.js.map +1 -1
- package/dist/server/Mppx.d.ts +13 -1
- package/dist/server/Mppx.d.ts.map +1 -1
- package/dist/server/Mppx.js +107 -36
- package/dist/server/Mppx.js.map +1 -1
- package/dist/server/internal/scope.d.ts +19 -0
- package/dist/server/internal/scope.d.ts.map +1 -0
- package/dist/server/internal/scope.js +33 -0
- package/dist/server/internal/scope.js.map +1 -0
- package/dist/tempo/server/internal/transport.js +2 -3
- package/dist/tempo/server/internal/transport.js.map +1 -1
- package/package.json +1 -1
- package/src/Method.ts +2 -0
- package/src/middlewares/hono.test.ts +95 -1
- package/src/middlewares/hono.ts +6 -1
- package/src/proxy/Proxy.test.ts +116 -0
- package/src/proxy/Proxy.ts +27 -1
- package/src/proxy/internal/Route.ts +2 -1
- package/src/server/Mppx.test-d.ts +18 -0
- package/src/server/Mppx.test.ts +283 -0
- package/src/server/Mppx.ts +153 -45
- package/src/server/internal/scope.ts +43 -0
- package/src/tempo/server/internal/transport.test.ts +84 -0
- package/src/tempo/server/internal/transport.ts +3 -3
package/dist/server/Mppx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Mppx.js","sourceRoot":"","sources":["../../src/server/Mppx.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAE7C,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAA;AAC5C,OAAO,KAAK,UAAU,MAAM,kBAAkB,CAAA;AAC9C,OAAO,KAAK,MAAM,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,OAAO,MAAM,eAAe,CAAA;AACxC,OAAO,KAAK,aAAa,MAAM,8BAA8B,CAAA;AAC7D,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAA;AAEzC,OAAO,KAAK,cAAc,MAAM,sBAAsB,CAAA;AAGtD,OAAO,KAAK,IAAI,MAAM,2BAA2B,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAA;AACpE,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AACjD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAiK3C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,MAAM,CAGpB,MAAyC;IACzC,MAAM,EACJ,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,EACxB,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,EAChC,SAAS,GAAG,SAAS,CAAC,IAAI,EAAe,GAC1C,GAAG,MAAM,CAAA;IAEV,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,uGAAuG,CACxG,CAAA;IACH,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAwC,CAAA;IAE3E,MAAM,QAAQ,GAA4B,EAAE,CAAA;IAC5C,MAAM,WAAW,GAA2B,EAAE,CAAA;IAE9C,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACzB,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QAC1D,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC,GAAG,cAAc,CAAC;YACnD,QAAQ,EAAE,EAAE,CAAC,QAAQ;YACrB,MAAM,EAAE,EAAE;YACV,KAAK;YACL,OAAO,EAAE,EAAE,CAAC,OAAgB;YAC5B,OAAO,EAAE,EAAE,CAAC,OAAgB;YAC5B,SAAS;YACT,SAAS,EAAE,CAAC,EAAE,CAAC,SAAS,IAAI,SAAS,CAAU;YAC/C,MAAM,EAAE,EAAE,CAAC,MAAe;SAC3B,CAAC,CAAA;IACJ,CAAC;IAED,0DAA0D;IAC1D,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACzB,IAAI,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;IAC7F,CAAC;IAED,gDAAgD;IAChD,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC;YAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;QAC9C,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,CAAiD,CAAA;QAC9F,EAAE,CAAC,OAAO,GAAG,EAAE,CACd;QAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAA6B,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAA;IACjE,CAAC;IAED,+DAA+D;IAC/D,MAAM,iBAAiB,GAA4C,EAAE,CAAA;IACrE,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACzB,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,IAAI,CAAC;YAAE,iBAAiB,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;QAChE,iBAAiB,CAAC,EAAE,CAAC,IAAI,CAAE,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,iBAAiB,CAAC;YACzD,QAAQ,EAAE,EAAE,CAAC,QAAQ;YACrB,MAAM,EAAE,EAAE;YACV,KAAK;YACL,OAAO,EAAE,EAAE,CAAC,OAAgB;YAC5B,SAAS;SACV,CAAC,CAAA;IACJ,CAAC;IAED,wDAAwD;IACxD,KAAK,UAAU,kBAAkB,CAC/B,KAAqC;QAErC,MAAM,UAAU,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;QAEpF,+FAA+F;QAC/F,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,SAAU,EAAE,CAAC;YACpE,MAAM,IAAI,MAAM,CAAC,qBAAqB,CAAC;gBACrC,EAAE,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE;gBAC3B,MAAM,EAAE,yCAAyC;aAClD,CAAC,CAAA;QAEJ,eAAe;QACf,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAErE,wCAAwC;QACxC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC,SAAS,CAAA;QACvE,MAAM,EAAE,GAAI,OAAuC,CAAC,IAAI,CACtD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,CACxD,CAAA;QACD,IAAI,CAAC,EAAE;YACL,MAAM,IAAI,MAAM,CAAC,qBAAqB,CAAC;gBACrC,EAAE,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE;gBAC3B,MAAM,EAAE,4BAA4B,UAAU,IAAI,UAAU,EAAE;aAC/D,CAAC,CAAA;QAEJ,yCAAyC;QACzC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAEtD,kEAAkE;QAClE,iEAAiE;QACjE,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,OAA4C,CAAA;QAEjF,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,OAAO,EAAW,CAAC,CAAA;IACpD,CAAC;IAED,SAAS,SAAS,CAChB,GAAG,OAGA;QAEH,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;QACxF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;QAClF,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,EAAE;YACxD,MAAM,GAAG,GACP,OAAO,WAAW,KAAK,QAAQ;gBAC7B,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,OAAO,WAAW,KAAK,UAAU,IAAI,SAAS,IAAI,WAAW;oBAC7D,CAAC,CAAC,GAAI,WAAW,CAAC,OAA4B,CAAC,IAAI,IAAK,WAAW,CAAC,OAA4B,CAAC,MAAM,EAAE;oBACzG,CAAC,CAAC,GAAI,WAAgC,CAAC,IAAI,IAAK,WAAgC,CAAC,MAAM,EAAE,CAAA;YAC/F,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAA4B,CAAA;YAC1D,IAAI,CAAC,SAAS;gBACZ,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,0CAA0C,CAAC,CAAA;YACnF,OAAO,SAAS,CAAC,OAAO,CAAC,CAAA;QAC3B,CAAC,CAAC,CAAA;QACF,OAAO,OAAO,CAAC,GAAI,UAAkC,CAAC,CAAA;IACxD,CAAC;IAED,OAAO;QACL,OAAO;QACP,SAAS,EAAE,iBAAiB;QAC5B,OAAO,EAAE,SAAS;QAClB,KAAK,EAAE,KAA2B;QAClC,SAAS;QACT,gBAAgB,EAAE,kBAAkB;QACpC,GAAG,QAAQ;KACH,CAAA;AACZ,CAAC;AAyBD,qDAAqD;AACrD,SAAS,cAAc,CAAC,UAAqC;IAC3D,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,UAAU,CAAA;IAErF,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAA;QAC9C,MAAM,MAAM,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAA;QAEvC,OAAO,MAAM,CAAC,MAAM,CAClB,KAAK,EAAE,KAAwB,EAA8B,EAAE;YAC7D,MAAM,OAAO,GACX,SAAS,IAAI,OAAO,CAAC,CAAC,CAAE,OAAO,CAAC,OAA8B,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;YACrF,MAAM,eAAe,GAAG,MAAM,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;YAE9D,uFAAuF;YACvF,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE;gBAC1C,IAAI,CAAC;oBACH,OAAO;wBACL,SAAS,CAAC,aAAa,CAAC,KAAK,CAAiC;wBAC9D,SAAS;qBACD,CAAA;gBACZ,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,OAAO,CAAC,IAAI,EAAE,CAAU,CAAU,CAAA;gBACpC,CAAC;YACH,CAAC,CAAC,EAAE,CAAA;YAEJ,6DAA6D;YAC7D,MAAM,OAAO,GAAG,CACd,UAAU,CAAC,OAAO;gBAChB,CAAC,CAAC,MAAM,UAAU,CAAC,OAAO,CAAC,EAAE,eAAe,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAW,CAAC;gBACrF,CAAC,CAAC,MAAM,CACF,CAAA;YAEV,2DAA2D;YAC3D,MAAM,cAAc,GAAG,KAAK,IAAI,+BAA+B,CAAC,eAAe,CAAC,CAAA;YAEhF,6EAA6E;YAC7E,2EAA2E;YAC3E,0EAA0E;YAC1E,MAAM,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE;gBAC7C,WAAW;gBACX,OAAO;gBACP,IAAI;gBACJ,KAAK,EAAE,cAAc;gBACrB,OAAO;gBACP,SAAS;aACV,CAAC,CAAA;YAEF,wCAAwC;YACxC,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,MAAM,GAAG,uBAAuB,CAAC,eAAe,CAAC,CAAA;gBACvD,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC;oBAChD,SAAS;oBACT,KAAK;oBACL,KAAK,EAAE,IAAI,MAAM,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACpE,IAAI,EAAE,MAAM,CAAC,IAAI;iBAClB,CAAC,CAAA;gBACF,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;YAC7C,CAAC;YAED,yCAAyC;YACzC,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC;oBAChD,SAAS;oBACT,KAAK;oBACL,KAAK,EAAE,IAAI,MAAM,CAAC,oBAAoB,CAAC,EAAE,WAAW,EAAE,CAAC;oBACvD,IAAI,EAAE,MAAM,CAAC,IAAI;iBAClB,CAAC,CAAA;gBACF,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;YAC7C,CAAC;YAED,qEAAqE;YACrE,EAAE;YACF,mEAAmE;YACnE,qEAAqE;YACrE,sEAAsE;YACtE,mEAAmE;YACnE,iDAAiD;YACjD,EAAE;YACF,+DAA+D;YAC/D,8EAA8E;YAC9E,oEAAoE;YACpE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;gBAC3D,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC;oBAChD,SAAS;oBACT,KAAK;oBACL,KAAK,EAAE,IAAI,MAAM,CAAC,qBAAqB,CAAC;wBACtC,EAAE,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE;wBAC3B,MAAM,EAAE,yCAAyC;qBAClD,CAAC;oBACF,IAAI,EAAE,MAAM,CAAC,IAAI;iBAClB,CAAC,CAAA;gBACF,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;YAC7C,CAAC;YAED,oEAAoE;YACpE,EAAE;YACF,iEAAiE;YACjE,qEAAqE;YACrE,gDAAgD;YAChD,EAAE;YACF,oEAAoE;YACpE,oEAAoE;YACpE,8DAA8D;YAC9D,iEAAiE;YACjE,iEAAiE;YACjE,oEAAoE;YACpE,mEAAmE;YACnE,gEAAgE;YAChE,wCAAwC;YACxC,EAAE;YACF,iEAAiE;YACjE,mEAAmE;YACnE,sEAAsE;YACtE,uEAAuE;YACvE,sEAAsE;YACtE,oEAAoE;YACpE,CAAC;gBACC,MAAM,QAAQ,GAAG,0BAA0B,CAAC,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,CAAA;gBAC5E,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC;wBAChD,SAAS;wBACT,KAAK;wBACL,KAAK,EAAE,IAAI,MAAM,CAAC,qBAAqB,CAAC;4BACtC,EAAE,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE;4BAC3B,MAAM,EAAE,cAAc,QAAQ,2CAA2C;yBAC1E,CAAC;wBACF,IAAI,EAAE,MAAM,CAAC,IAAI;qBAClB,CAAC,CAAA;oBACF,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;gBAC7C,CAAC;YACH,CAAC;YAED,6EAA6E;YAC7E,IAAI,CAAC;gBACH,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;YACvE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC;oBAChD,SAAS;oBACT,KAAK;oBACL,KAAK,EAAE,KAA4B;iBACpC,CAAC,CAAA;gBACF,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;YAC7C,CAAC;YACD,mDAAmD;YACnD,IAAI,CAAC;gBACH,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;YAC5D,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC;oBAChD,SAAS;oBACT,KAAK;oBACL,KAAK,EAAE,IAAI,MAAM,CAAC,mBAAmB,EAAE;iBACxC,CAAC,CAAA;gBACF,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;YAC7C,CAAC;YAED,MAAM,QAAQ,GAAqC,MAAM,CAAC,MAAM,CAAC;gBAC/D,eAAe;gBACf,SAAS,EAAE,UAAU,CAAC,SAAS;gBAC/B,UAAU;aACX,CAAC,CAAA;YAEF,iFAAiF;YACjF,yEAAyE;YACzE,IAAI,WAA4B,CAAA;YAChC,IAAI,CAAC;gBACH,WAAW,GAAG,MAAM,MAAM,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAW,CAAC,CAAA;YACxE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,YAAY,CAAC;oBACrC,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,CAAC,CAAC,CAAA;gBACvD,MAAM,KAAK,GAAG,CAAC,YAAY,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,uBAAuB,EAAE,CAAA;gBACzF,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC;oBAChD,SAAS;oBACT,KAAK;oBACL,KAAK;iBACN,CAAC,CAAA;gBACF,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;YAC7C,CAAC;YAED,mEAAmE;YACnE,mEAAmE;YACnE,oEAAoE;YACpE,yEAAyE;YACzE,kEAAkE;YAClE,MAAM,kBAAkB,GAAG,OAAO;gBAChC,CAAC,CAAC,MAAM,OAAO,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAW,CAAC;gBACxF,CAAC,CAAC,SAAS,CAAA;YAEb,OAAO;gBACL,MAAM,EAAE,GAAG;gBACX,WAAW,CAAW,QAAmB;oBACvC,IAAI,kBAAkB,EAAE,CAAC;wBACvB,OAAO,SAAS,CAAC,cAAc,CAAC;4BAC9B,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE;4BACpC,UAAU;4BACV,QAAQ;4BACR,KAAK;4BACL,OAAO,EAAE,WAAW;4BACpB,QAAQ,EAAE,kBAA2B;yBACtC,CAAa,CAAA;oBAChB,CAAC;oBACD,IAAI,CAAC,QAAQ;wBAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;oBAC5E,OAAO,SAAS,CAAC,cAAc,CAAC;wBAC9B,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE;wBACpC,UAAU;wBACV,QAAQ;wBACR,KAAK;wBACL,OAAO,EAAE,WAAW;wBACpB,QAAQ,EAAE,QAAiB;qBAC5B,CAAa,CAAA;gBAChB,CAAC;aACF,CAAA;QACH,CAAC,EACD;YACE,SAAS,EAAE;gBACT,GAAG,MAAM;gBACT,GAAG,QAAQ;gBACX,GAAG,OAAO;gBACV,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,iBAAiB,EAAE,cAAc,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC;aAC7D;SACF,CACF,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,UAM1B;IACC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,UAAU,CAAA;IAEzD,OAAO,KAAK,EAAE,OAAO,EAAE,EAAE;QACvB,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,OAKtC,CAAA;QACD,MAAM,MAAM,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAA;QACvC,MAAM,OAAO,GACX,SAAS,IAAI,OAAO,CAAC,CAAC,CAAE,OAAO,CAAC,OAA8B,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QAErF,6DAA6D;QAC7D,MAAM,OAAO,GAAG,CACd,UAAU,CAAC,OAAO;YAChB,CAAC,CAAC,MAAO,UAAU,CAAC,OAAmD,CAAC;gBACpE,OAAO,EAAE,MAAM;aAChB,CAAC;YACJ,CAAC,CAAC,MAAM,CACF,CAAA;QAEV,MAAM,cAAc,GAAG,KAAK,IAAI,YAAY,CAAA;QAE5C,OAAO,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE;YAClC,WAAW;YACX,OAAO;YACP,IAAI;YACJ,KAAK,EAAE,cAAc;YACrB,OAAO;YACP,SAAS;SACV,CAAC,CAAA;IACJ,CAAC,CAAA;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAc;IAC7C,IAAI,KAAK,YAAY,UAAU,CAAC,8BAA8B;QAAE,OAAO,KAAK,CAAC,OAAO,CAAA;IACpF,IAAI,KAAK,YAAY,UAAU,CAAC,+BAA+B;QAAE,OAAO,KAAK,CAAC,OAAO,CAAA;IACrF,IAAI,KAAK,YAAY,UAAU,CAAC,yBAAyB;QAAE,OAAO,KAAK,CAAC,OAAO,CAAA;IAC/E,OAAO,SAAS,CAAA;AAClB,CAAC;AAyBD,MAAM,YAAY,GAAG,aAAa,CAAA;AAClC,MAAM,QAAQ,GAAG;IACf,aAAa,EAAE,gBAAgB;CACvB,CAAA;AAEV,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAA;AACjC,SAAS,QAAQ,CAAC,GAAW,EAAE,OAAe;IAC5C,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;QAAE,OAAM;IAC5B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,UAAU,OAAO,EAAE,CAAC,CAAA;AACnC,CAAC;AAED,kFAAkF;AAClF,SAAS,+BAA+B,CAAC,eAAuC;IAC9E,IAAI,CAAC;QACH,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,eAAe,CAAC,GAAG,CAAA;QAClD,IAAI,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAA;IAC7D,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IACV,QAAQ,CACN,QAAQ,CAAC,aAAa,EACtB,8DAA8D,YAAY,6DAA6D,CACxI,CAAA;IACD,OAAO,YAAY,CAAA;AACrB,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,cAAc,CAC3B,SAAiC,EACjC,KAAc;IAEd,MAAM,eAAe,GAAG,SAAS,CAAC,cAAc;QAC9C,CAAC,CAAC,MAAM,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC;QACvC,CAAC,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAA;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;AACvC,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAc;IAC7C,MAAM,MAAM,GAAG,KAKd,CAAA;IAED,OAAO;QACL,OAAO,EAAE,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;QACpC,OAAO,EAAE,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI;QACrE,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,MAAM;QAC/B,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC;KACnC,CAAA;AACH,CAAC;AAED,MAAM,iBAAiB,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,CAAU,CAAA;AACtE,MAAM,mBAAmB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAU,CAAA;AAClE,MAAM,0BAA0B,GAAG,CAAC,GAAG,iBAAiB,EAAE,GAAG,mBAAmB,CAAU,CAAA;AAO1F;;;;;;;;;;GAUG;AACH,SAAS,0BAA0B,CACjC,iBAAsC,EACtC,eAAoC;IAEpC,KAAK,MAAM,KAAK,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAU,EAAE,CAAC;QAC3D,IAAI,eAAe,CAAC,KAAK,CAAC,KAAK,iBAAiB,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAA;IACvE,CAAC;IAED,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC;QAAE,OAAO,QAAQ,CAAA;IAEzF,OAAO,+BAA+B,CACpC,iBAAiB,CAAC,OAAkC,EACpD,eAAe,CAAC,OAAkC,CACnD,CAAA;AACH,CAAC;AAED,SAAS,+BAA+B,CACtC,eAAwC,EACxC,aAAsC;IAEtC,MAAM,QAAQ,GAAG,uBAAuB,CAAC,eAAe,CAAC,CAAA;IACzD,MAAM,MAAM,GAAG,uBAAuB,CAAC,aAAa,CAAC,CAAA;IAErD,OAAO,CACL,sBAAsB,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC;QAChE,wBAAwB,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,aAAa,CAAC,CACvE,CAAA;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,QAAqB,EACrB,MAAmB;IAEnB,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAC9F,CAAC;AAED,SAAS,wBAAwB,CAC/B,QAAuB,EACvB,MAAqB;IAErB,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAChG,CAAC;AAED,SAAS,uBAAuB,CAAC,OAAgC;IAC/D,MAAM,aAAa,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAA4B,CAAA;IAC9E,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC,CAAA;IACtE,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,CAAA;IACzE,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,QAAQ,IAAI,aAAa,CAAC,QAAQ,CAAC,CAAA;IAC5E,MAAM,IAAI,GAAG,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IAC7C,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,SAAS,IAAI,aAAa,CAAC,SAAS,CAAC,CAAA;IAC/E,MAAM,MAAM,GAAG,mBAAmB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;IAExD,OAAO;QACL,WAAW,EAAE;YACX,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClD;QACD,aAAa,EAAE;YACb,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7C,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5C;KACF,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AACxD,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IAEzC,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAChC,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,UAAU,CAAA;AAC5E,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc;IACzC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IACzC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;IAE/D,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC;aAC7C,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;aACpD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,CAC9D,CAAA;IACH,CAAC;IAED,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;AAChE,CAAC;AAED,SAAS,iBAAiB,CACxB,QAA4C,EAC5C,MAA0C;IAE1C,OAAO,iBAAiB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;AAC5C,CAAC;AAiHD,MAAM,UAAU,OAAO,CACrB,GAAG,IAAwB;IAE3B,mDAAmD;IACnD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAClC,MAAM,cAAc,GAClB,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,IAAI;QACb,OAAO,IAAI,KAAK,UAAU;QAC1B,CAAC,CAAC,WAAW,IAAI,IAAI,CAAC;QACpB,CAAC,CAAC,CAAC,GAAG,EAAE;YACJ,MAAM,IAAI,GAAG,IAA0B,CAAA;YACvC,OAAO;gBACL,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,EAAE;gBACX,YAAY,EAAE,GAAG,EAAE,CAAC,EAAE;gBACtB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAA;QACH,CAAC,CAAC,EAAE;QACN,CAAC,CAAC,SAAS,CAAA;IACf,MAAM,QAAQ,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAET,CAAA;IAElD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;IAErF,OAAO,KAAK,EAAE,KAAc,EAAE,EAAE;QAC9B,gDAAgD;QAChD,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;YACnE,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAuB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;YAC9E,IAAI,OAAO;gBACT,OAAO;oBACL,MAAM,EAAE,GAAG;oBACX,SAAS,EAAE,IAAI,QAAQ,CAAC,aAAa,EAAE;wBACrC,MAAM,EAAE,GAAG;wBACX,OAAO,EAAE;4BACP,cAAc,EAAE,wBAAwB;4BACxC,eAAe,EAAE,UAAU;yBAC5B;qBACF,CAAC;iBACkC,CAAA;QAC1C,CAAC;QAED,kFAAkF;QAClF,6EAA6E;QAC7E,0EAA0E;QAC1E,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;QACjD,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAE7E,IAAI,aAAa,EAAE,CAAC;YAClB,2DAA2D;YAC3D,IAAI,UAA6C,CAAA;YACjD,IAAI,CAAC;gBACH,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC,aAAa,CAAC,CAAA;YACpD,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;YAEV,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC,SAAS,CAAA;gBACvE,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,OAAkC,CAAA;gBAEvE,wEAAwE;gBACxE,sEAAsE;gBACtE,kEAAkE;gBAClE,kEAAkE;gBAClE,yEAAyE;gBACzE,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;oBACvC,MAAM,QAAQ,GAAI,CAAuB,CAAC,SAAS,CAAA;oBACnD,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU;wBAC7E,OAAO,KAAK,CAAA;oBACd,MAAM,SAAS,GAAG,QAAQ,CAAC,iBAAiB,CAAA;oBAC5C,IAAI,CAAC,SAAS;wBAAE,OAAO,IAAI,CAAA;oBAC3B,OAAO,CACL,CAAC,+BAA+B,CAAC,SAAS,EAAE,OAAO,CAAC;wBACpD,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAC9D,CAAA;gBACH,CAAC,CAAC,CAAA;gBAEF,MAAM,KAAK,GACT,UAAU,CAAC,CAAC,CAAC;oBACb,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;wBAClB,MAAM,IAAI,GAAI,CAAuB,CAAC,SAAS,CAAA;wBAC/C,OAAO,IAAI,EAAE,IAAI,KAAK,UAAU,IAAI,IAAI,EAAE,MAAM,KAAK,UAAU,CAAA;oBACjE,CAAC,CAAC,CAAA;gBACJ,IAAI,KAAK;oBAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;YAED,yEAAyE;YACzE,iFAAiF;YACjF,OAAO,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC;QAED,8DAA8D;QAC9D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAEhE,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE;YAC7B,MAAM,OAAO,GAIP,EAAE,CAAA;YAER,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACzC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;gBACzB,IAAI,MAAM,EAAE,MAAM,KAAK,GAAG;oBAAE,SAAQ;gBAEpC,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAqB,CAAA;gBAC7C,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;gBACxD,IAAI,CAAC,OAAO;oBAAE,SAAQ;gBAEtB,OAAO,CAAC,IAAI,CAAC;oBACX,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAsB;oBACzC,SAAS,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC;oBACzC,MAAM;iBACP,CAAC,CAAA;YACJ,CAAC;YAED,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;YACzD,IAAI,CAAC,aAAa;gBAAE,OAAO,OAAO,CAAA;YAElC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAC/B,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,EACvC,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,CACnC,CAAA;gBACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,OAAO,CAAA;gBAEvC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAU,CAAC,CAAC,CAAA;gBACzF,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAE,CAAC,CAAA;YAClE,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,OAAO,CAAA;YAChB,CAAC;QACH,CAAC,CAAC,EAAE,CAAA;QAEJ,yDAAyD;QACzD,MAAM,aAAa,GAAG,IAAI,OAAO,EAAE,CAAA;QACnC,aAAa,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;QAE9C,KAAK,MAAM,KAAK,IAAI,gBAAgB,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,SAAqB,CAAA;YACnD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;YACxD,IAAI,OAAO;gBAAE,aAAa,CAAC,MAAM,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAA;QAChE,CAAC;QAED,qDAAqD;QACrD,MAAM,WAAW,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QAErF,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAA;QACpE,IAAI,SAAS,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,cAAc;YACzC,qFAAqF;YACrF,cAAc,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,IAAI,IAAK,EAAmB,CACjF,CAAA;YAED,uCAAuC;YACvC,MAAM,OAAO,GAA8B,EAAE,CAAA;YAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5C,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAE,CAAA;gBAC7B,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG;oBAC5B,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI;oBACnC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,EAAE;oBAC/B,eAAe,EAAE,MAAM,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAK,CAAC,YAAY,CAC/D,KAAK,CAAC,SAAS,CAAC,OAAO,CACxB;oBACD,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAK,CAAC,MAAM;oBAC5C,SAAS,EAAE,KAAK,CAAC,SAAkB;oBACnC,IAAI;oBACJ,KAAK;iBACN,CAAA;YACH,CAAC;YAED,aAAa,CAAC,GAAG,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAA;YAE7D,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAE,CAAA;YAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;gBACvB,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBACnC,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAK,CAAC,OAAO;iBAC/C,CAAC,CAAC;gBACH,OAAO;gBACP,eAAe,EAAE,SAAS,CAAC,eAAe;gBAC1C,MAAM,EAAE,IAAI;gBACZ,IAAI;gBACJ,KAAK;aACN,CAAC,CAAA;YAEF,OAAO;gBACL,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;aACvE,CAAA;QACH,CAAC;QAED,8CAA8C;QAC9C,IAAI,IAAI,GAAkB,IAAI,CAAA;QAC9B,KAAK,MAAM,KAAK,IAAI,gBAAgB,EAAE,CAAC;YACrC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,SAAqB,CAAA;gBACnD,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;gBACxD,IAAI,WAAW;oBAAE,aAAa,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,CAAA;gBAC/D,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;gBAC5B,MAAK;YACP,CAAC;QACH,CAAC;QAED,OAAO;YACL,MAAM,EAAE,GAAG;YACX,SAAS,EAAE,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;SACvE,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAkF;IAElF,OAAO,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACxB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QAEhE,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC1B,MAAM,YAAY,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,SAAgC,CAAC,CAAA;QAC/E,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAwB,CAAA;YACpF,GAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAE,CAAC,CAAA;QAC3E,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"Mppx.js","sourceRoot":"","sources":["../../src/server/Mppx.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** Reserved `meta` key used for mppx-managed route/resource scope binding. */
|
|
2
|
+
export declare const reservedMetaKey = "_mppx_scope";
|
|
3
|
+
/** Attaches a trusted adapter-derived scope to a Request for this process only. */
|
|
4
|
+
export declare function attach(request: Request, scope: string): Request;
|
|
5
|
+
/** Reads a previously attached trusted adapter-derived scope from a Request. */
|
|
6
|
+
export declare function get(request: Request): string | undefined;
|
|
7
|
+
/** Returns the reserved mppx scope value from challenge metadata, if present. */
|
|
8
|
+
export declare function read(meta: Record<string, string> | undefined): string | undefined;
|
|
9
|
+
/**
|
|
10
|
+
* Merges the public `scope` option into challenge metadata.
|
|
11
|
+
*
|
|
12
|
+
* Throws when both `scope` and `meta._mppx_scope` are provided with different
|
|
13
|
+
* values so callers have a single authoritative way to bind route scope.
|
|
14
|
+
*/
|
|
15
|
+
export declare function merge(parameters: {
|
|
16
|
+
meta?: Record<string, string> | undefined;
|
|
17
|
+
scope?: string | undefined;
|
|
18
|
+
}): Record<string, string> | undefined;
|
|
19
|
+
//# sourceMappingURL=scope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../../src/server/internal/scope.ts"],"names":[],"mappings":"AAEA,8EAA8E;AAC9E,eAAO,MAAM,eAAe,gBAAgB,CAAA;AAE5C,mFAAmF;AACnF,wBAAgB,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAG/D;AAED,gFAAgF;AAChF,wBAAgB,GAAG,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAExD;AAED,iFAAiF;AACjF,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAEjF;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,UAAU,EAAE;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAA;IACzC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC3B,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAYrC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
const requestScopes = new WeakMap();
|
|
2
|
+
/** Reserved `meta` key used for mppx-managed route/resource scope binding. */
|
|
3
|
+
export const reservedMetaKey = '_mppx_scope';
|
|
4
|
+
/** Attaches a trusted adapter-derived scope to a Request for this process only. */
|
|
5
|
+
export function attach(request, scope) {
|
|
6
|
+
requestScopes.set(request, scope);
|
|
7
|
+
return request;
|
|
8
|
+
}
|
|
9
|
+
/** Reads a previously attached trusted adapter-derived scope from a Request. */
|
|
10
|
+
export function get(request) {
|
|
11
|
+
return requestScopes.get(request);
|
|
12
|
+
}
|
|
13
|
+
/** Returns the reserved mppx scope value from challenge metadata, if present. */
|
|
14
|
+
export function read(meta) {
|
|
15
|
+
return meta?.[reservedMetaKey];
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Merges the public `scope` option into challenge metadata.
|
|
19
|
+
*
|
|
20
|
+
* Throws when both `scope` and `meta._mppx_scope` are provided with different
|
|
21
|
+
* values so callers have a single authoritative way to bind route scope.
|
|
22
|
+
*/
|
|
23
|
+
export function merge(parameters) {
|
|
24
|
+
const { meta, scope } = parameters;
|
|
25
|
+
const metaScope = read(meta);
|
|
26
|
+
if (scope !== undefined && metaScope !== undefined && metaScope !== scope) {
|
|
27
|
+
throw new Error(`Conflicting scope values: \`scope\` (${scope}) does not match \`meta.${reservedMetaKey}\` (${metaScope}).`);
|
|
28
|
+
}
|
|
29
|
+
if (scope === undefined || metaScope === scope)
|
|
30
|
+
return meta;
|
|
31
|
+
return { ...meta, [reservedMetaKey]: scope };
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=scope.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scope.js","sourceRoot":"","sources":["../../../src/server/internal/scope.ts"],"names":[],"mappings":"AAAA,MAAM,aAAa,GAAG,IAAI,OAAO,EAAmB,CAAA;AAEpD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAA;AAE5C,mFAAmF;AACnF,MAAM,UAAU,MAAM,CAAC,OAAgB,EAAE,KAAa;IACpD,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IACjC,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,GAAG,CAAC,OAAgB;IAClC,OAAO,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AACnC,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,IAAI,CAAC,IAAwC;IAC3D,OAAO,IAAI,EAAE,CAAC,eAAe,CAAC,CAAA;AAChC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,KAAK,CAAC,UAGrB;IACC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,UAAU,CAAA;IAClC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,CAAA;IAE5B,IAAI,KAAK,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;QAC1E,MAAM,IAAI,KAAK,CACb,wCAAwC,KAAK,2BAA2B,eAAe,OAAO,SAAS,IAAI,CAC5G,CAAA;IACH,CAAC;IAED,IAAI,KAAK,KAAK,SAAS,IAAI,SAAS,KAAK,KAAK;QAAE,OAAO,IAAI,CAAA;IAC3D,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,CAAA;AAC9C,CAAC"}
|
|
@@ -51,14 +51,13 @@ export function sse(options) {
|
|
|
51
51
|
respondReceipt({ credential, envelope, receipt, response, challengeId, input }) {
|
|
52
52
|
const verifiedCredential = envelope?.credential ?? credential;
|
|
53
53
|
const verifiedChallengeId = envelope?.challenge.id ?? challengeId;
|
|
54
|
+
const verifiedRequest = envelope?.request ?? verifiedCredential.challenge.request;
|
|
54
55
|
const payload = verifiedCredential.payload;
|
|
55
56
|
if (!payload.channelId)
|
|
56
57
|
throw new Error('No SSE context available');
|
|
57
58
|
const channelId = payload.channelId;
|
|
58
59
|
const tickCost = BigInt(verifiedCredential.challenge.request.amount);
|
|
59
|
-
const unitType = typeof
|
|
60
|
-
? verifiedCredential.challenge.request.unitType
|
|
61
|
-
: undefined;
|
|
60
|
+
const unitType = typeof verifiedRequest.unitType === 'string' ? verifiedRequest.unitType : undefined;
|
|
62
61
|
// Auto-detect upstream SSE responses and parse them into an
|
|
63
62
|
// AsyncIterable so they flow through the metered pipeline.
|
|
64
63
|
// This lets proxy consumers simply pass `result.withReceipt(upstreamRes)`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../../src/tempo/server/internal/transport.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA;AAClD,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAA;AAC5C,OAAO,KAAK,SAAS,MAAM,8BAA8B,CAAA;AACzD,OAAO,KAAK,YAAY,MAAM,+BAA+B,CAAA;AAC7D,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAA;AAEhD,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAKtF;;;;;;;;GAQG;AACH,MAAM,UAAU,GAAG,CAAC,OAA2D;IAC7E,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,GAAG,OAAO,CAAA;IAEzC,oEAAoE;IACpE,6EAA6E;IAC7E,qEAAqE;IACrE,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE;QAClB,IAAI,CAAC,IAAI;YAAE,OAAO,OAAO,CAAC,KAAK,CAAA;QAC/B,MAAM,EAAE,aAAa,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QACpD,OAAO,KAAK,CAAA;IACd,CAAC,CAAC,EAAE,CAAA;IAEJ,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,CAAA;IAC7B,OAAO,SAAS,CAAC,IAAI,CAAgE;QACnF,IAAI,EAAE,KAAK;QAEX,cAAc,CAAC,OAAO;YACpB,OAAO,CACL,IAAI,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,IAAI;gBAChC,OAAO,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;gBACrC,OAAO,EAAE,OAAO,CAAC,IAAI,KAAK,IAAI;gBAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,GAAG,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC;aAC1B,CACF,CAAA;QACH,CAAC;QAED,aAAa,CAAC,OAAO;YACnB,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QACpC,CAAC;QAED,gBAAgB,CAAC,OAAO;YACtB,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAa,CAAA;QACnD,CAAC;QAED,cAAc,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE;YAC5E,MAAM,kBAAkB,GAAG,QAAQ,EAAE,UAAU,IAAI,UAAU,CAAA;YAC7D,MAAM,mBAAmB,GAAG,QAAQ,EAAE,SAAS,CAAC,EAAE,IAAI,WAAW,CAAA;YACjE,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAA4C,CAAA;YAC/E,IAAI,CAAC,OAAO,CAAC,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../../src/tempo/server/internal/transport.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/Method.ts
CHANGED
|
@@ -88,6 +88,8 @@ export type VerifiedChallengeEnvelope<
|
|
|
88
88
|
payload,
|
|
89
89
|
Challenge.Challenge<request, intent, MethodName>
|
|
90
90
|
>
|
|
91
|
+
/** The authoritative route request after defaults and request-hook transforms. */
|
|
92
|
+
readonly request: request
|
|
91
93
|
}
|
|
92
94
|
|
|
93
95
|
/** Request hook parameters for a single method. */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { serve } from '@hono/node-server'
|
|
2
2
|
import { Hono } from 'hono'
|
|
3
|
-
import { Receipt } from 'mppx'
|
|
3
|
+
import { Challenge, Credential, Method, Receipt, z } from 'mppx'
|
|
4
4
|
import { Mppx as Mppx_client, session as sessionIntent, tempo as tempo_client } from 'mppx/client'
|
|
5
5
|
import { Mppx, discovery } from 'mppx/hono'
|
|
6
6
|
import { tempo as tempo_server } from 'mppx/server'
|
|
@@ -26,6 +26,40 @@ function createServer(app: Hono) {
|
|
|
26
26
|
|
|
27
27
|
const secretKey = 'test-secret-key'
|
|
28
28
|
|
|
29
|
+
const scopeMethod = Method.toServer(
|
|
30
|
+
Method.from({
|
|
31
|
+
name: 'mock',
|
|
32
|
+
intent: 'charge',
|
|
33
|
+
schema: {
|
|
34
|
+
credential: { payload: z.object({ token: z.string() }) },
|
|
35
|
+
request: z.object({
|
|
36
|
+
amount: z.string(),
|
|
37
|
+
currency: z.string(),
|
|
38
|
+
decimals: z.number(),
|
|
39
|
+
recipient: z.string(),
|
|
40
|
+
}),
|
|
41
|
+
},
|
|
42
|
+
}),
|
|
43
|
+
{
|
|
44
|
+
async verify() {
|
|
45
|
+
return {
|
|
46
|
+
method: 'mock',
|
|
47
|
+
reference: 'tx-mock',
|
|
48
|
+
status: 'success' as const,
|
|
49
|
+
timestamp: new Date().toISOString(),
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
)
|
|
54
|
+
|
|
55
|
+
function createScopeHarness() {
|
|
56
|
+
return Mppx.create({
|
|
57
|
+
methods: [scopeMethod],
|
|
58
|
+
realm: 'api.example.com',
|
|
59
|
+
secretKey,
|
|
60
|
+
})
|
|
61
|
+
}
|
|
62
|
+
|
|
29
63
|
function createChargeHarness(feePayer: boolean) {
|
|
30
64
|
const mppx = Mppx.create({
|
|
31
65
|
methods: [
|
|
@@ -126,6 +160,66 @@ describe('charge', () => {
|
|
|
126
160
|
})
|
|
127
161
|
})
|
|
128
162
|
|
|
163
|
+
describe('scope binding', () => {
|
|
164
|
+
const scopeOpts = {
|
|
165
|
+
amount: '1',
|
|
166
|
+
currency: '0x0000000000000000000000000000000000000001',
|
|
167
|
+
decimals: 6,
|
|
168
|
+
recipient: '0x0000000000000000000000000000000000000002',
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
test('auto-injects route scope and blocks same-economics replay across routes', async () => {
|
|
172
|
+
const mppx = createScopeHarness()
|
|
173
|
+
|
|
174
|
+
const app = new Hono()
|
|
175
|
+
app.get('/alpha/:id', mppx.charge(scopeOpts), (c) => c.json({ route: 'alpha' }))
|
|
176
|
+
app.get('/beta/:id', mppx.charge(scopeOpts), (c) => c.json({ route: 'beta' }))
|
|
177
|
+
|
|
178
|
+
const server = await createServer(app)
|
|
179
|
+
const challengeResponse = await fetch(`${server.url}/alpha/1`)
|
|
180
|
+
expect(challengeResponse.status).toBe(402)
|
|
181
|
+
|
|
182
|
+
const challenge = Challenge.fromResponse(challengeResponse)
|
|
183
|
+
expect(challenge.opaque).toEqual({ _mppx_scope: 'GET /alpha/:id' })
|
|
184
|
+
|
|
185
|
+
const credential = Credential.from({ challenge, payload: { token: 'valid' } })
|
|
186
|
+
const replay = await fetch(`${server.url}/beta/1`, {
|
|
187
|
+
headers: { Authorization: Credential.serialize(credential) },
|
|
188
|
+
})
|
|
189
|
+
|
|
190
|
+
expect(replay.status).toBe(402)
|
|
191
|
+
server.close()
|
|
192
|
+
})
|
|
193
|
+
|
|
194
|
+
test('manual scope overrides adapter-derived route scope', async () => {
|
|
195
|
+
const mppx = createScopeHarness()
|
|
196
|
+
|
|
197
|
+
const app = new Hono()
|
|
198
|
+
app.get('/alpha/:id', mppx.charge({ ...scopeOpts, scope: 'shared-scope' }), (c) =>
|
|
199
|
+
c.json({ route: 'alpha' }),
|
|
200
|
+
)
|
|
201
|
+
app.get('/beta/:id', mppx.charge({ ...scopeOpts, scope: 'shared-scope' }), (c) =>
|
|
202
|
+
c.json({ route: 'beta' }),
|
|
203
|
+
)
|
|
204
|
+
|
|
205
|
+
const server = await createServer(app)
|
|
206
|
+
const challengeResponse = await fetch(`${server.url}/alpha/1`)
|
|
207
|
+
expect(challengeResponse.status).toBe(402)
|
|
208
|
+
|
|
209
|
+
const challenge = Challenge.fromResponse(challengeResponse)
|
|
210
|
+
expect(challenge.opaque).toEqual({ _mppx_scope: 'shared-scope' })
|
|
211
|
+
|
|
212
|
+
const credential = Credential.from({ challenge, payload: { token: 'valid' } })
|
|
213
|
+
const replay = await fetch(`${server.url}/beta/2`, {
|
|
214
|
+
headers: { Authorization: Credential.serialize(credential) },
|
|
215
|
+
})
|
|
216
|
+
|
|
217
|
+
expect(replay.status).toBe(200)
|
|
218
|
+
expect(await replay.json()).toEqual({ route: 'beta' })
|
|
219
|
+
server.close()
|
|
220
|
+
})
|
|
221
|
+
})
|
|
222
|
+
|
|
129
223
|
describe('session', () => {
|
|
130
224
|
let escrowContract: Address
|
|
131
225
|
|
package/src/middlewares/hono.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Hono, MiddlewareHandler } from 'hono'
|
|
2
2
|
|
|
3
3
|
import { generate, type GenerateConfig, type RouteConfig } from '../discovery/OpenApi.js'
|
|
4
|
+
import * as Scope from '../server/internal/scope.js'
|
|
4
5
|
import * as Mppx_core from '../server/Mppx.js'
|
|
5
6
|
import * as Mppx_internal from './internal/mppx.js'
|
|
6
7
|
|
|
@@ -56,7 +57,11 @@ export function payment<const intent extends Mppx_internal.AnyMethodFn>(
|
|
|
56
57
|
options: intent extends (options: infer options) => any ? options : never,
|
|
57
58
|
): MiddlewareHandler {
|
|
58
59
|
return async (c, next) => {
|
|
59
|
-
const
|
|
60
|
+
const request =
|
|
61
|
+
options.scope === undefined && Scope.read(options.meta) === undefined
|
|
62
|
+
? Scope.attach(c.req.raw, `${c.req.method.toUpperCase()} ${c.req.routePath || c.req.path}`)
|
|
63
|
+
: c.req.raw
|
|
64
|
+
const result = await intent(options)(request)
|
|
60
65
|
if (result.status === 402) return result.challenge
|
|
61
66
|
await next()
|
|
62
67
|
c.res = result.withReceipt(c.res)
|
package/src/proxy/Proxy.test.ts
CHANGED
|
@@ -30,6 +30,40 @@ const mppx_server = Mppx_server.create({
|
|
|
30
30
|
secretKey,
|
|
31
31
|
})
|
|
32
32
|
|
|
33
|
+
const scopeMethod = Method.toServer(
|
|
34
|
+
Method.from({
|
|
35
|
+
name: 'mock',
|
|
36
|
+
intent: 'charge',
|
|
37
|
+
schema: {
|
|
38
|
+
credential: { payload: z.object({ token: z.string() }) },
|
|
39
|
+
request: z.object({
|
|
40
|
+
amount: z.string(),
|
|
41
|
+
currency: z.string(),
|
|
42
|
+
decimals: z.number(),
|
|
43
|
+
recipient: z.string(),
|
|
44
|
+
}),
|
|
45
|
+
},
|
|
46
|
+
}),
|
|
47
|
+
{
|
|
48
|
+
async verify() {
|
|
49
|
+
return {
|
|
50
|
+
method: 'mock',
|
|
51
|
+
reference: 'tx-mock',
|
|
52
|
+
status: 'success' as const,
|
|
53
|
+
timestamp: new Date().toISOString(),
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
)
|
|
58
|
+
|
|
59
|
+
function createScopeServer() {
|
|
60
|
+
return Mppx_server.create({
|
|
61
|
+
methods: [scopeMethod],
|
|
62
|
+
realm: 'api.example.com',
|
|
63
|
+
secretKey,
|
|
64
|
+
})
|
|
65
|
+
}
|
|
66
|
+
|
|
33
67
|
const mppx_client = Mppx_client.create({
|
|
34
68
|
polyfill: false,
|
|
35
69
|
methods: [
|
|
@@ -707,6 +741,88 @@ describe('create', () => {
|
|
|
707
741
|
const res = await fetch(`${proxyServer.url}/api/v1/search?q=hello&limit=10`)
|
|
708
742
|
expect(await res.json()).toEqual({ search: '?q=hello&limit=10' })
|
|
709
743
|
})
|
|
744
|
+
|
|
745
|
+
test('auto-injects proxy route scope and blocks same-economics replay across routes', async () => {
|
|
746
|
+
const scopedServer = createScopeServer()
|
|
747
|
+
const proxy = ApiProxy.create({
|
|
748
|
+
services: [
|
|
749
|
+
Service.from('api', {
|
|
750
|
+
baseUrl: 'https://api.example.com',
|
|
751
|
+
routes: {
|
|
752
|
+
'GET /v1/alpha': scopedServer.charge({
|
|
753
|
+
amount: '1',
|
|
754
|
+
currency: '0x0000000000000000000000000000000000000001',
|
|
755
|
+
decimals: 6,
|
|
756
|
+
recipient: '0x0000000000000000000000000000000000000002',
|
|
757
|
+
}),
|
|
758
|
+
'GET /v1/beta': scopedServer.charge({
|
|
759
|
+
amount: '1',
|
|
760
|
+
currency: '0x0000000000000000000000000000000000000001',
|
|
761
|
+
decimals: 6,
|
|
762
|
+
recipient: '0x0000000000000000000000000000000000000002',
|
|
763
|
+
}),
|
|
764
|
+
},
|
|
765
|
+
}),
|
|
766
|
+
],
|
|
767
|
+
})
|
|
768
|
+
proxyServer = await Http.createServer(proxy.listener)
|
|
769
|
+
|
|
770
|
+
const challengeResponse = await fetch(`${proxyServer.url}/api/v1/alpha`)
|
|
771
|
+
expect(challengeResponse.status).toBe(402)
|
|
772
|
+
|
|
773
|
+
const challenge = Challenge.fromResponse(challengeResponse)
|
|
774
|
+
expect(challenge.opaque).toEqual({ _mppx_scope: 'GET /api/v1/alpha' })
|
|
775
|
+
|
|
776
|
+
const credential = Credential.from({ challenge, payload: { token: 'valid' } })
|
|
777
|
+
const replay = await fetch(`${proxyServer.url}/api/v1/beta`, {
|
|
778
|
+
headers: { Authorization: Credential.serialize(credential) },
|
|
779
|
+
})
|
|
780
|
+
|
|
781
|
+
expect(replay.status).toBe(402)
|
|
782
|
+
})
|
|
783
|
+
|
|
784
|
+
test('manual scope overrides proxy route scope', async () => {
|
|
785
|
+
const scopedServer = createScopeServer()
|
|
786
|
+
upstream = await createUpstream(() => Response.json({ ok: true }))
|
|
787
|
+
const proxy = ApiProxy.create({
|
|
788
|
+
services: [
|
|
789
|
+
Service.from('api', {
|
|
790
|
+
baseUrl: upstream.url,
|
|
791
|
+
routes: {
|
|
792
|
+
'GET /v1/alpha': scopedServer.charge({
|
|
793
|
+
amount: '1',
|
|
794
|
+
currency: '0x0000000000000000000000000000000000000001',
|
|
795
|
+
decimals: 6,
|
|
796
|
+
recipient: '0x0000000000000000000000000000000000000002',
|
|
797
|
+
scope: 'shared-scope',
|
|
798
|
+
}),
|
|
799
|
+
'GET /v1/beta': scopedServer.charge({
|
|
800
|
+
amount: '1',
|
|
801
|
+
currency: '0x0000000000000000000000000000000000000001',
|
|
802
|
+
decimals: 6,
|
|
803
|
+
recipient: '0x0000000000000000000000000000000000000002',
|
|
804
|
+
scope: 'shared-scope',
|
|
805
|
+
}),
|
|
806
|
+
},
|
|
807
|
+
}),
|
|
808
|
+
],
|
|
809
|
+
})
|
|
810
|
+
proxyServer = await Http.createServer(proxy.listener)
|
|
811
|
+
|
|
812
|
+
const challengeResponse = await fetch(`${proxyServer.url}/api/v1/alpha`)
|
|
813
|
+
expect(challengeResponse.status).toBe(402)
|
|
814
|
+
|
|
815
|
+
const challenge = Challenge.fromResponse(challengeResponse)
|
|
816
|
+
expect(challenge.opaque).toEqual({ _mppx_scope: 'shared-scope' })
|
|
817
|
+
|
|
818
|
+
const credential = Credential.from({ challenge, payload: { token: 'valid' } })
|
|
819
|
+
const replay = await fetch(`${proxyServer.url}/api/v1/beta`, {
|
|
820
|
+
headers: { Authorization: Credential.serialize(credential) },
|
|
821
|
+
})
|
|
822
|
+
|
|
823
|
+
expect(replay.status).toBe(200)
|
|
824
|
+
expect(await replay.json()).toEqual({ ok: true })
|
|
825
|
+
})
|
|
710
826
|
})
|
|
711
827
|
|
|
712
828
|
describe.runIf(isLocalnet)('plain HTTP session proxy', () => {
|
package/src/proxy/Proxy.ts
CHANGED
|
@@ -2,6 +2,7 @@ import type * as http from 'node:http'
|
|
|
2
2
|
|
|
3
3
|
import * as Credential from '../Credential.js'
|
|
4
4
|
import { generateProxy } from '../discovery/OpenApi.js'
|
|
5
|
+
import * as Scope from '../server/internal/scope.js'
|
|
5
6
|
import * as Request from '../server/Request.js'
|
|
6
7
|
import * as Headers from './internal/Headers.js'
|
|
7
8
|
import * as Route from './internal/Route.js'
|
|
@@ -129,7 +130,16 @@ export function create(config: create.Config): Proxy {
|
|
|
129
130
|
if (endpoint === true) return proxyUpstream({ request, service, ctx, proxy })
|
|
130
131
|
|
|
131
132
|
const handler = typeof endpoint === 'function' ? endpoint : endpoint.pay
|
|
132
|
-
const
|
|
133
|
+
const scope =
|
|
134
|
+
getConfiguredScope(handler) ??
|
|
135
|
+
deriveRouteScope({
|
|
136
|
+
basePath: config.basePath,
|
|
137
|
+
routeKey: matched.key,
|
|
138
|
+
serviceId,
|
|
139
|
+
})
|
|
140
|
+
const result = await handler(
|
|
141
|
+
getConfiguredScope(handler) ? request : Scope.attach(request, scope),
|
|
142
|
+
)
|
|
133
143
|
if (result.status === 402) return result.challenge
|
|
134
144
|
|
|
135
145
|
const managementResponse = (() => {
|
|
@@ -242,6 +252,22 @@ function buildDiscoveryRoutes(services: Service.Service[]) {
|
|
|
242
252
|
)
|
|
243
253
|
}
|
|
244
254
|
|
|
255
|
+
function getConfiguredScope(handler: Service.IntentHandler): string | undefined {
|
|
256
|
+
if (!('_internal' in handler)) return undefined
|
|
257
|
+
const internal = handler._internal as { meta?: Record<string, string>; scope?: string }
|
|
258
|
+
return Scope.read(internal.meta) ?? internal.scope
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
function deriveRouteScope(parameters: {
|
|
262
|
+
basePath?: string | undefined
|
|
263
|
+
routeKey: string
|
|
264
|
+
serviceId: string
|
|
265
|
+
}): string {
|
|
266
|
+
const { basePath, routeKey, serviceId } = parameters
|
|
267
|
+
const { method, pattern } = Route.parseRouteKey(routeKey)
|
|
268
|
+
return `${method ?? '*'} ${withBasePath(basePath, `/${serviceId}${pattern}`)}`
|
|
269
|
+
}
|
|
270
|
+
|
|
245
271
|
function buildServiceInfo(config: create.Config): { categories?: string[]; docs?: Service.Docs } {
|
|
246
272
|
const categories =
|
|
247
273
|
config.categories ??
|
|
@@ -54,7 +54,8 @@ export function matchPath(
|
|
|
54
54
|
return match
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
|
|
57
|
+
/** Parses a proxy route key like `"POST /v1/messages"` into method + pathname pattern. */
|
|
58
|
+
export function parseRouteKey(key: string): { method: string | undefined; pattern: string } {
|
|
58
59
|
const tokens = key.trim().split(/\s+/)
|
|
59
60
|
if (tokens.length >= 2 && httpMethods.has(tokens[0]!.toUpperCase())) {
|
|
60
61
|
return { method: tokens[0]!.toUpperCase(), pattern: tokens.slice(1).join(' ') }
|
|
@@ -169,4 +169,22 @@ describe('Mppx type tests', () => {
|
|
|
169
169
|
|
|
170
170
|
expectTypeOf(mppx.verifyCredential).toBeFunction()
|
|
171
171
|
})
|
|
172
|
+
|
|
173
|
+
test('handler options and verifyCredential accept scope', () => {
|
|
174
|
+
const mppx = Mppx.create({ methods: [alphaMethod], realm, secretKey })
|
|
175
|
+
|
|
176
|
+
expectTypeOf(
|
|
177
|
+
mppx.charge({
|
|
178
|
+
amount: '100',
|
|
179
|
+
currency: '0x01',
|
|
180
|
+
decimals: 6,
|
|
181
|
+
recipient: '0x02',
|
|
182
|
+
scope: 'GET /premium',
|
|
183
|
+
}),
|
|
184
|
+
).toBeFunction()
|
|
185
|
+
|
|
186
|
+
expectTypeOf(mppx.verifyCredential('credential', { scope: 'GET /premium' })).toMatchTypeOf<
|
|
187
|
+
Promise<unknown>
|
|
188
|
+
>()
|
|
189
|
+
})
|
|
172
190
|
})
|