@resvary/sdk 0.5.0 → 0.6.1
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/LICENSE +13 -13
- package/README.md +17 -17
- package/dist/client/buyer.d.ts +29 -0
- package/dist/client/buyer.d.ts.map +1 -1
- package/dist/client/buyer.js +113 -31
- package/dist/client/buyer.js.map +1 -1
- package/dist/client/index.d.ts +1 -1
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +1 -1
- package/dist/client/index.js.map +1 -1
- package/dist/credits/ledger.d.ts +2 -0
- package/dist/credits/ledger.d.ts.map +1 -1
- package/dist/credits/ledger.js +28 -15
- package/dist/credits/ledger.js.map +1 -1
- package/dist/funding/arc-worker.d.ts +1 -0
- package/dist/funding/arc-worker.d.ts.map +1 -1
- package/dist/funding/arc-worker.js +3 -0
- package/dist/funding/arc-worker.js.map +1 -1
- package/dist/funding/arc.d.ts +6 -1
- package/dist/funding/arc.d.ts.map +1 -1
- package/dist/funding/arc.js +36 -10
- package/dist/funding/arc.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/middleware/paywall.d.ts +1 -4
- package/dist/middleware/paywall.d.ts.map +1 -1
- package/dist/middleware/paywall.js +4 -37
- package/dist/middleware/paywall.js.map +1 -1
- package/dist/receipts/proof.d.ts +4 -1
- package/dist/receipts/proof.d.ts.map +1 -1
- package/dist/receipts/proof.js +24 -5
- package/dist/receipts/proof.js.map +1 -1
- package/dist/receipts/watcher.d.ts +3 -0
- package/dist/receipts/watcher.d.ts.map +1 -1
- package/dist/receipts/watcher.js +10 -2
- package/dist/receipts/watcher.js.map +1 -1
- package/package.json +119 -115
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../src/credits/ledger.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../src/credits/ledger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACnF,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,mBAAmB,EAAiD,MAAM,YAAY,CAAC;AAwBhG,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAyH5F,MAAM,OAAO,YAAY;IACd,SAAS,CAAS;IAClB,KAAK,CAAc;IACX,gBAAgB,CAAS;IACzB,GAAG,CAAe;IAEnC,YAAY,MAA0B;QACpC,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAC5D,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,mBAAmB,EAAE,CAAC;QACvD,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAClE,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,gBAAgB,IAAI,CAAC,EAAE,CAAC;YAC/E,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,KAAyB;QAC3C,MAAM,OAAO,GAAG,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC3E,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,gBAAgB,EAAE,KAAK,CAAC,cAAc,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAC9E,IAAI,CAAC,0BAA0B,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CACtE,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,KAAwB;QAExB,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,WAAW,IAAI,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG,EAAE,GAAG,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC;QAElE,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,eAAe,EAAE,KAAK,CAAC,cAAc,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE;YAC7E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC5F,MAAM,KAAK,GAAgB;gBACzB,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC;gBACrB,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,MAAM,EAAE,mBAAmB,CAAC,WAAW,CAAC;gBACxC,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;gBACnC,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,QAAQ;gBAChC,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,SAAS,EAAE,GAAG;gBACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC;YACF,MAAM,OAAO,GAAG,YAAY,CAC1B,OAAO,EACP,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,EACnD,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,EACvC,GAAG,CACJ,CAAC;YACF,MAAM,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAC1B,MAAM,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC9B,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,EACF,OAAO,EACP,OAAO,EACP,QAAQ,EACR,WAAW,EACX,OAAO,EACP,KAAK,CAAC,EAAE,EACR,GAAG,EACH,KAAK,CAAC,QAAQ,CACf,CAAC;YACF,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,gBAAgB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC;YAC1E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5B,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,KAAyB;QAEzB,MAAM,UAAU,GAAG,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,UAAU,KAAK,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAClF,MAAM,OAAO,GAAG,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC;QAEhE,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,gBAAgB,EAAE,KAAK,CAAC,cAAc,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE;YAC9E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC5F,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,UAAU,CAAC;YACtE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACzD,IAAI,UAAU,GAAG,QAAQ,EAAE,CAAC;gBAC1B,MAAM,IAAI,wBAAwB,CAAC,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC;YAC9E,CAAC;YACD,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;YACjE,MAAM,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC9B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CACtC,EAAE,EACF,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,QAAQ,CAAC,KAAK,CAAC,EACf,GAAG,EACH;gBACE,GAAG,KAAK,CAAC,QAAQ;gBACjB,MAAM,EAAE,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC;aAC5C,CACF,CAAC;YACF,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC;YAC3E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5B,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,KAAyB;QAC3C,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,gBAAgB,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;YAC5E,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YACnE,IAAI,QAAQ,EAAE,CAAC;gBACb,IACE,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,eAAe,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EACxF,CAAC;oBACD,MAAM,IAAI,uBAAuB,CAAC,sCAAsC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;gBACvF,CAAC;gBACD,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,MAAM,KAAK,GAAG,qBAAqB,CAAC;gBAClC,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC;gBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC,CAAC;YACH,MAAM,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAC1B,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,KAA8B;QACrD,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,sBAAsB,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;YAClF,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YACrE,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YACnE,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACtD,MAAM,KAAK,GAAG,kBAAkB,CAAC;gBAC/B,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC;gBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,KAAK;gBACL,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC;gBAC3E,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC,CAAC;YACH,MAAM,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACjC,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,KAA+B;QACvD,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,cAAc,IAAI,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QAC7E,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,uBAAuB,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;YACnF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC5F,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC9C,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YACrD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,IAAI,uBAAuB,CAAC,qCAAqC,QAAQ,EAAE,CAAC,CAAC;YACrF,CAAC;YACD,MAAM,MAAM,GAAkB;gBAC5B,EAAE,EAAE,QAAQ;gBACZ,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,MAAM,EAAE,SAAS;gBACjB,eAAe,EAAE,mBAAmB,CAAC,cAAc,CAAC;gBACpD,cAAc,EAAE,cAAc,CAAC,QAAQ,EAAE;gBACzC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,YAAY;gBAChC,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC;gBAC9C,SAAS,EAAE,WAAW,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC;gBACpD,SAAS,EAAE,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC;YACF,MAAM,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,wBAAwB,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC;YACzF,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,KAA0B;QAM7C,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,YAAY,CAAC;QACxC,MAAM,iBAAiB,GAAG,WAAW,CACnC,KAAK,CAAC,iBAAiB,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,EAC7C,mBAAmB,CACpB,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACzC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YAChE,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;gBAChD,MAAM,IAAI,mBAAmB,CAAC,gBAAgB,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;YACzE,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;gBAClC,MAAM,IAAI,uBAAuB,CAAC,2CAA2C,CAAC,CAAC;YACjF,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI;gBACtB,MAAM,IAAI,uBAAuB,CAAC,wCAAwC,CAAC,CAAC;YAC9E,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;gBAClE,MAAM,IAAI,uBAAuB,CAAC,8BAA8B,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;YAE/E,MAAM,yBAAyB,GAAG,MAAM,EAAE,CAAC,sCAAsC,CAC/E,IAAI,EACJ,KAAK,CAAC,OAAO,EACb,iBAAiB,CAClB,CAAC;YACF,MAAM,yBAAyB,GAAG,KAAK,CAAC,MAAM;gBAC5C,CAAC,CAAC,MAAM,EAAE,CAAC,6BAA6B,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC;gBACrE,CAAC,CAAC,SAAS,CAAC;YACd,IACE,yBAAyB;gBACzB,yBAAyB;gBACzB,yBAAyB,CAAC,EAAE,KAAK,yBAAyB,CAAC,EAAE,EAC7D,CAAC;gBACD,MAAM,IAAI,uBAAuB,CAC/B,oDAAoD,iBAAiB,EAAE,CACxE,CAAC;YACJ,CAAC;YACD,MAAM,QAAQ,GAAG,yBAAyB,IAAI,yBAAyB,CAAC;YACxE,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAI,QAAQ,CAAC,eAAe,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC;oBAC3C,MAAM,IAAI,uBAAuB,CAC/B,wCAAwC,KAAK,CAAC,MAAM,IAAI,iBAAiB,EAAE,CAC5E,CAAC;gBACJ,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;gBACpE,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAClD,IAAI,CAAC,KAAK;oBAAE,MAAM,IAAI,mBAAmB,CAAC,cAAc,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAC5E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CAAC;YACjF,CAAC;YAED,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,iBAAiB,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;gBACpF,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;oBAC7B,MAAM,IAAI,uBAAuB,CAAC,qBAAqB,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;gBACxF,MAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;gBAC/D,IACE,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,WAAW,KAAK,cAAc,CAAC,CAAC,CAAC,WAAW,GAAG,cAAc,EACxF,CAAC;oBACD,MAAM,IAAI,uBAAuB,CAC/B,KAAK,CAAC,kBAAkB;wBACtB,CAAC,CAAC,4BAA4B,WAAW,QAAQ,MAAM,CAAC,cAAc,EAAE;wBACxE,CAAC,CAAC,yBAAyB,WAAW,MAAM,MAAM,CAAC,cAAc,EAAE,CACtE,CAAC;gBACJ,CAAC;gBAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACvB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;gBACpE,MAAM,KAAK,GAAgB;oBACzB,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC;oBACrB,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,MAAM,EAAE,mBAAmB,CAAC,WAAW,CAAC;oBACxC,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;oBACnC,MAAM,EAAE,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,4BAA4B;oBACpE,WAAW,EAAE,GAAG,IAAI,IAAI,KAAK,CAAC,OAAO,IAAI,iBAAiB,CAAC,WAAW,EAAE,EAAE;oBAC1E,SAAS,EAAE,GAAG;oBACd,QAAQ,EAAE;wBACR,GAAG,KAAK,CAAC,QAAQ;wBACjB,eAAe,EAAE,MAAM,CAAC,EAAE;wBAC1B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;qBACzC;iBACF,CAAC;gBACF,MAAM,OAAO,GAAG,YAAY,CAC1B,OAAO,EACP,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,EACnD,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,EACvC,GAAG,CACJ,CAAC;gBACF,MAAM,eAAe,GAAkB,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC;gBAC5F,MAAM,gBAAgB,GAAG,KAAK,CAAC,gBAAgB,IAAI,SAAS,CAAC;gBAC7D,MAAM,SAAS,GACb,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBACrF,MAAM,kBAAkB,GAAuB;oBAC7C,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC;oBACnB,eAAe,EAAE,MAAM,CAAC,EAAE;oBAC1B,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,IAAI;oBACJ,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,iBAAiB;oBACjB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;oBACxC,OAAO,EAAE,KAAK,CAAC,EAAE;oBACjB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,EAAE,KAAK;oBAC3C,gBAAgB;oBAChB,UAAU,EAAE,GAAG;oBACf,SAAS;oBACT,QAAQ,EAAE;wBACR,GAAG,KAAK,CAAC,QAAQ;wBACjB,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;wBACnC,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,EAAE,KAAK;qBAC5C;oBACD,SAAS,EAAE,GAAG;oBACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;iBACzB,CAAC;gBACF,MAAM,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBAC1B,MAAM,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBAC9B,MAAM,EAAE,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;gBAC5C,MAAM,EAAE,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;gBACpD,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,EACF,OAAO,EACP,OAAO,EACP,QAAQ,EACR,WAAW,EACX,SAAS,EACT,kBAAkB,CAAC,EAAE,EACrB,GAAG,EACH,KAAK,CAAC,QAAQ,CACf,CAAC;gBACF,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,EACF,kBAAkB,EAClB,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,EACtD,GAAG,CACJ,CAAC;gBACF,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,EACF,mBAAmB,EACnB,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,OAAO,EAAE,KAAK,EAAE,EACtE,GAAG,CACJ,CAAC;gBACF,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;oBACnC,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,EACF,iBAAiB,EACjB,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,EACtD,kBAAkB,CAAC,SAAU,CAC9B,CAAC;gBACJ,CAAC;gBACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,CAAC;YAChF,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,KAAmC;QAC/D,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,2BAA2B,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;YACvF,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;YAC/E,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC7D,MAAM,IAAI,mBAAmB,CAAC,qBAAqB,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACnF,CAAC;YACD,IAAI,WAAW,CAAC,gBAAgB,KAAK,KAAK,CAAC,MAAM;gBAAE,OAAO,WAAW,CAAC;YACtE,IACE,WAAW,CAAC,gBAAgB,KAAK,SAAS;gBAC1C,KAAK,CAAC,MAAM,KAAK,yBAAyB,EAC1C,CAAC;gBACD,MAAM,IAAI,uBAAuB,CAC/B,2CAA2C,WAAW,CAAC,EAAE,EAAE,CAC5D,CAAC;YACJ,CAAC;YACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,OAAO,GAAuB;gBAClC,GAAG,WAAW;gBACd,gBAAgB,EAAE,KAAK,CAAC,MAAM;gBAC9B,SAAS,EAAE,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS;gBACxF,QAAQ,EAAE;oBACR,GAAG,WAAW,CAAC,QAAQ;oBACvB,GAAG,KAAK,CAAC,QAAQ;oBACjB,oBAAoB,EAAE,KAAK,CAAC,MAAM;iBACnC;aACF,CAAC;YACF,MAAM,EAAE,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;YACzC,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,EACF,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,iCAAiC,EAClF,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EACrD,GAAG,CACJ,CAAC;YACF,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,KAA6B;QACnD,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;YAC1E,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YAChE,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;gBAChD,MAAM,IAAI,mBAAmB,CAAC,gBAAgB,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;YACzE,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ;gBAAE,OAAO,MAAM,CAAC;YAC9C,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;gBAC7B,MAAM,IAAI,uBAAuB,CAAC,qBAAqB,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;YACxF,MAAM,MAAM,GAAkB;gBAC5B,GAAG,MAAM;gBACT,MAAM,EAAE,QAAQ;gBAChB,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE;gBACpB,aAAa,EAAE,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC;aACnD,CAAC;YACF,MAAM,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,EACF,gBAAgB,EAChB,EAAE,aAAa,EAAE,MAAM,EAAE,EACzB,MAAM,CAAC,QAAS,CACjB,CAAC;YACF,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,KAA0B;QAC7C,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,iBAAiB,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;YAC7E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,sBAAsB,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YAC7D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;YACtD,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC1D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC5F,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YAC3D,IAAI,SAAS,GAAG,aAAa,EAAE,CAAC;gBAC9B,MAAM,IAAI,wBAAwB,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;YACrF,CAAC;YACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC;YACjE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;gBACzD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACjE,CAAC;YACD,MAAM,WAAW,GAAsB;gBACrC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC;gBACnB,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjB,MAAM,EAAE,MAAM;gBACd,cAAc,EAAE,cAAc,CAAC,KAAK,CAAC,cAAc,CAAC;gBACpD,cAAc,EAAE,MAAM,CAAC,WAAW;gBAClC,aAAa,EAAE,MAAM,CAAC,UAAU;gBAChC,SAAS,EAAE,GAAG;gBACd,SAAS;gBACT,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC;YACF,MAAM,OAAO,GAAG,YAAY,CAC1B,OAAO,EACP,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,EACrC,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,aAAa,EACvD,GAAG,CACJ,CAAC;YACF,MAAM,EAAE,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YACtC,MAAM,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC9B,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,EACF,OAAO,EACP,SAAS,EACT,UAAU,EACV,aAAa,EACb,aAAa,EACb,WAAW,CAAC,EAAE,EACd,GAAG,EACH,KAAK,CAAC,QAAQ,CACf,CAAC;YACF,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;YACjF,OAAO,WAAW,CAAC;QACrB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CACf,KAAuB;QAEvB,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;YAC1E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;YAC3E,IAAI,WAAW,CAAC,MAAM,KAAK,WAAW,IAAI,WAAW,CAAC,cAAc,EAAE,CAAC;gBACrE,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,eAAe,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;gBACrE,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBAC3D,IAAI,OAAO,IAAI,OAAO;oBAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;YACnE,CAAC;YACD,IAAI,WAAW,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAClC,MAAM,IAAI,uBAAuB,CAC/B,kBAAkB,WAAW,CAAC,MAAM,KAAK,WAAW,CAAC,EAAE,EAAE,CAC1D,CAAC;YACJ,CAAC;YACD,IAAI,WAAW,CAAC,SAAS,IAAI,GAAG,EAAE,CAAC;gBACjC,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;gBACnD,MAAM,IAAI,uBAAuB,CAAC,wBAAwB,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;YAC9E,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACjE,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,IAAI,uBAAuB,CAAC,+BAA+B,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;YACzF,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;YAC/D,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;YACnD,MAAM,WAAW,GAAG,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACxD,MAAM,aAAa,GAAG,gBAAgB,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;YAClE,IAAI,WAAW,GAAG,aAAa,EAAE,CAAC;gBAChC,MAAM,IAAI,uBAAuB,CAC/B,sCAAsC,MAAM,CAAC,UAAU,MAAM,WAAW,CAAC,aAAa,EAAE,CACzF,CAAC;YACJ,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;YAC/E,MAAM,YAAY,GAAG,gBAAgB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YACjE,MAAM,cAAc,GAAG,gBAAgB,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YACrE,MAAM,OAAO,GAAG,YAAY,CAC1B,aAAa,EACb,YAAY,GAAG,WAAW,EAC1B,cAAc,GAAG,aAAa,EAC9B,GAAG,CACJ,CAAC;YACF,MAAM,aAAa,GAAG,aAAa,GAAG,WAAW,CAAC;YAClD,MAAM,UAAU,GAAe;gBAC7B,EAAE,EAAE,WAAW,CAAC,KAAK,CAAC,YAAY,EAAE,cAAc,CAAC;gBACnD,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,aAAa,EAAE,WAAW,CAAC,EAAE;gBAC7B,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjB,UAAU,EAAE,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC;gBAC7C,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,GAAG;gBACnC,UAAU,EAAE,GAAG;gBACf,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC;YACF,MAAM,OAAO,GAAiB;gBAC5B,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC;gBACrB,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,aAAa,EAAE,WAAW,CAAC,EAAE;gBAC7B,YAAY,EAAE,UAAU,CAAC,EAAE;gBAC3B,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjB,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,MAAM,CAAC,WAAW;gBAC1B,WAAW,EAAE,MAAM,CAAC,UAAU;gBAC9B,cAAc,EAAE,mBAAmB,CAAC,aAAa,CAAC;gBAClD,aAAa,EAAE,aAAa,CAAC,QAAQ,EAAE;gBACvC,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,kBAAkB,EAAE,aAAa,CAAC,cAAc;gBAChD,iBAAiB,EAAE,OAAO,CAAC,cAAc;gBACzC,SAAS,EAAE,GAAG;gBACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC;YACF,MAAM,oBAAoB,GAAsB;gBAC9C,GAAG,WAAW;gBACd,MAAM,EAAE,WAAW;gBACnB,eAAe,EAAE,MAAM,CAAC,WAAW;gBACnC,cAAc,EAAE,MAAM,CAAC,UAAU;gBACjC,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,cAAc,EAAE,OAAO,CAAC,EAAE;gBAC1B,QAAQ,EAAE,GAAG;aACd,CAAC;YAEF,MAAM,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;YACpC,MAAM,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACnC,MAAM,EAAE,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;YAC/C,MAAM,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC9B,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,EACF,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,CAAC,WAAW,EACZ,eAAe,EACf,OAAO,CAAC,EAAE,EACV,GAAG,EACH,KAAK,CAAC,QAAQ,CACf,CAAC;YACF,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,EACF,OAAO,EACP,SAAS,EACT,UAAU,EACV,CAAC,aAAa,EACd,eAAe,EACf,OAAO,CAAC,EAAE,EACV,GAAG,EACH,KAAK,CAAC,QAAQ,CACf,CAAC;YACF,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,EACF,eAAe,EACf;gBACE,cAAc,EAAE,OAAO,CAAC,EAAE;gBAC1B,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,aAAa,EAAE,WAAW,CAAC,EAAE;gBAC7B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;aAC7C,EACD,GAAG,CACJ,CAAC;YACF,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;QAC1E,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,KAA8B;QAE9B,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,qBAAqB,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;YACjF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;YAC3E,IAAI,WAAW,CAAC,MAAM,KAAK,UAAU,IAAI,WAAW,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC1E,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5F,CAAC;YACD,IAAI,WAAW,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAClC,MAAM,IAAI,uBAAuB,CAC/B,kBAAkB,WAAW,CAAC,MAAM,iBAAiB,WAAW,CAAC,EAAE,EAAE,CACtE,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACtF,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,KAGhC;QACC,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,iBAAiB,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,CAC7E,IAAI,CAAC,sBAAsB,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,CACzD,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CACd,KAAsB,EACtB,QAAoD;QAEpD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC;QAC/E,IAAI,WAAW,CAAC,MAAM,KAAK,WAAW,IAAI,WAAW,CAAC,cAAc,EAAE,CAAC;YACrE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;YAC3E,OAAO;gBACL,QAAQ,EAAE,IAAI;gBACd,WAAW;gBACX,OAAO;gBACP,OAAO,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC;aACvD,CAAC;QACJ,CAAC;QAED,IAAI,MAAmC,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,QAAQ,EAAE,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,kBAAkB,CAAC;gBAC5B,aAAa,EAAE,WAAW,CAAC,EAAE;gBAC7B,cAAc,EAAE,GAAG,KAAK,CAAC,cAAc,iBAAiB;gBACxD,MAAM,EAAE,gBAAgB;aACzB,CAAC,CAAC;YACH,MAAM,KAAK,CAAC;QACd,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC;YACvC,aAAa,EAAE,WAAW,CAAC,EAAE;YAC7B,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,cAAc,EAAE,GAAG,KAAK,CAAC,cAAc,SAAS;SACjD,CAAC,CAAC;QACH,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,SAAS,EAAE,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,UAAkB;QACjC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,oBAAoB,CACnD,IAAI,CAAC,SAAS,EACd,WAAW,CAAC,UAAU,EAAE,YAAY,CAAC,CACtC,CAAC;QACF,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,mBAAmB,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;QAC1E,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,EAAU;QAC7B,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC;IACrE,CAAC;IACD,KAAK,CAAC,eAAe,CAAC,EAAU;QAC9B,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC;IACtE,CAAC;IACD,KAAK,CAAC,gBAAgB,CAAC,EAAU;QAC/B,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,kBAAkB;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;IACD,KAAK,CAAC,qBAAqB,CAAC,EAAU;QACpC,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5E,CAAC;IACD,KAAK,CAAC,uBAAuB,CAAC,eAAwB;QACpD,OAAO,IAAI,CAAC,qBAAqB,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,eAAe,CAAC,CAAC,CAAC;IAC/F,CAAC;IACD,KAAK,CAAC,iBAAiB,CAAC,UAAmB;QACzC,MAAM,MAAM,GAAG,UAAU;YACvB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACzF,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC,qBAAqB,CAAC,MAAM,MAAM,CAAC,CAAC;IAClD,CAAC;IACD,KAAK,CAAC,iBAAiB,CAAC,UAAmB;QACzC,MAAM,MAAM,GAAG,UAAU;YACvB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACzF,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC,qBAAqB,CAAC,MAAM,MAAM,CAAC,CAAC;IAClD,CAAC;IACD,gBAAgB,CAAC,SAA+C,EAAE;QAChE,OAAO,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAC/E,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,KAI9B;QACC,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,gBAAgB,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;YAC5E,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;gBAC9C,MAAM,IAAI,mBAAmB,CAAC,cAAc,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC/D,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW;gBAAE,OAAO,KAAK,CAAC;YAC/C,MAAM,SAAS,GAAG;gBAChB,GAAG,KAAK;gBACR,MAAM,EAAE,WAAoB;gBAC5B,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI,CAAC,GAAG,EAAE;gBAC5C,UAAU,EAAE,SAAS;gBACrB,cAAc,EAAE,SAAS;aAC1B,CAAC;YACF,MAAM,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;YACpC,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,0BAA0B,CACtC,EAA0B,EAC1B,eAAuB,EACvB,QAAkC;QAElC,MAAM,UAAU,GAAG,WAAW,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QAC9D,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAC3E,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,YAAY,CAC1B;YACE,EAAE,EAAE,sBAAsB,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;YACtD,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU;YACV,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,GAAG;YAChB,aAAa,EAAE,GAAG;YAClB,cAAc,EAAE,GAAG;YACnB,YAAY,EAAE,GAAG;YACjB,cAAc,EAAE,GAAG;YACnB,eAAe,EAAE,GAAG;YACpB,SAAS,EAAE,GAAG;YACd,SAAS,EAAE,GAAG;YACd,QAAQ;SACT,EACD,EAAE,EACF,EAAE,EACF,GAAG,CACJ,CAAC;QACF,MAAM,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC9B,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAClC,EAA0B,EAC1B,GAAW,EACX,UAAmB;QAEnB,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,gBAAgB,CAAC;YACrC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU;YACV,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;QACH,MAAM,OAAO,GAAwB,EAAE,CAAC;QACxC,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,EAAE,CAAC;YACvE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;YAClE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,iBAAiB,CACvB,EAA0B,EAC1B,WAA8B,EAC9B,GAAW;QAEX,OAAO,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;IAC/E,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,EAA0B,EAC1B,WAA8B,EAC9B,MAA8B,EAC9B,GAAW,EACX,MAAe;QAEf,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;QAC/E,MAAM,aAAa,GAAG,gBAAgB,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,YAAY,CAC1B,aAAa,EACb,gBAAgB,CAAC,aAAa,CAAC,WAAW,CAAC,EAC3C,gBAAgB,CAAC,aAAa,CAAC,aAAa,CAAC,GAAG,aAAa,EAC7D,GAAG,CACJ,CAAC;QACF,MAAM,MAAM,GAAsB;YAChC,GAAG,WAAW;YACd,MAAM;YACN,cAAc,EAAE,WAAW,CAAC,cAAc;YAC1C,aAAa,EAAE,WAAW,CAAC,aAAa;YACxC,QAAQ,EAAE,GAAG;SACd,CAAC;QACF,MAAM,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC9B,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,EACF,OAAO,EACP,SAAS,EACT,UAAU,EACV,CAAC,aAAa,EACd,aAAa,EACb,WAAW,CAAC,EAAE,EACd,GAAG,EACH,EAAE,MAAM,EAAE,CACX,CAAC;QACF,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,EACF,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,EAC3D,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,EACxC,GAAG,CACJ,CAAC;QACF,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IACnD,CAAC;IAEO,KAAK,CAAC,UAAU,CACtB,EAA0B,EAC1B,SAAiB,EACjB,QAAgB,EAChB,OAAgB,EAChB,OAAyB;QAEzB,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,GAAG,IAAI,CAAC,SAAS,IAAI,SAAS,EAAE,CAAC;QAC/C,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,oBAAoB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC3D,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,QAAQ,CAAC,WAAW,KAAK,WAAW;gBAAE,MAAM,IAAI,wBAAwB,CAAC,GAAG,CAAC,CAAC;YAClF,OAAO,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAM,CAAC;QAC/C,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,OAAO,EAAE,CAAC;QAC/B,MAAM,EAAE,CAAC,qBAAqB,CAAC;YAC7B,KAAK;YACL,GAAG;YACH,WAAW;YACX,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC;YAC/B,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,EAA0B,EAC1B,OAAsB,EACtB,IAAqB,EACrB,MAAoB,EACpB,KAAa,EACb,aAA2C,EAC3C,WAAmB,EACnB,SAAiB,EACjB,QAAkC;QAElC,MAAM,KAAK,GAAgB;YACzB,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC;YAClB,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,IAAI;YACJ,MAAM;YACN,UAAU,EAAE,KAAK,CAAC,QAAQ,EAAE;YAC5B,iBAAiB,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa;YACpF,aAAa;YACb,WAAW;YACX,SAAS;YACT,QAAQ;SACT,CAAC;QACF,MAAM,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,EAA0B,EAC1B,IAAqB,EACrB,IAAO,EACP,SAAiB;QAEjB,MAAM,EAAE,CAAC,eAAe,CAAC;YACvB,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI;YACJ,IAAI;YACJ,MAAM,EAAE,SAAS;YACjB,SAAS;YACT,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,SAAS;SACzB,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,EAA0B,EAAE,EAAU;QAC/D,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;YAC9C,MAAM,IAAI,mBAAmB,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;IACO,KAAK,CAAC,kBAAkB,CAC9B,EAA0B,EAC1B,EAAU;QAEV,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;YAC9C,MAAM,IAAI,mBAAmB,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QACnD,OAAO,KAAK,CAAC;IACf,CAAC;IACO,KAAK,CAAC,kBAAkB,CAAC,EAA0B,EAAE,EAAU;QACrE,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;YAC9C,MAAM,IAAI,mBAAmB,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QACtD,OAAO,KAAK,CAAC;IACf,CAAC;IACO,KAAK,CAAC,mBAAmB,CAAC,EAAU;QAC1C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;YAC9C,MAAM,IAAI,mBAAmB,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,iBAAiB,CAAkC,KAAoB;QAC7E,OAAO,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,CAAC;IAEO,qBAAqB,CAAkC,MAAW;QACxE,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC;IACtE,CAAC;CACF;AAED,SAAS,YAAY,CACnB,OAAsB,EACtB,MAAc,EACd,QAAgB,EAChB,SAAiB;IAEjB,IAAI,MAAM,GAAG,EAAE,IAAI,QAAQ,GAAG,EAAE,IAAI,QAAQ,GAAG,MAAM,EAAE,CAAC;QACtD,MAAM,IAAI,uBAAuB,CAAC,mCAAmC,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC;IACpC,OAAO;QACL,GAAG,OAAO;QACV,WAAW,EAAE,MAAM,CAAC,QAAQ,EAAE;QAC9B,aAAa,EAAE,QAAQ,CAAC,QAAQ,EAAE;QAClC,cAAc,EAAE,SAAS,CAAC,QAAQ,EAAE;QACpC,YAAY,EAAE,mBAAmB,CAAC,MAAM,CAAC;QACzC,cAAc,EAAE,mBAAmB,CAAC,QAAQ,CAAC;QAC7C,eAAe,EAAE,mBAAmB,CAAC,SAAS,CAAC;QAC/C,SAAS;KACV,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,KAAsB;IAC5C,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1F,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc;IACzC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IAC5B,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AACvF,CAAC;AAED,SAAS,sBAAsB,CAAC,SAAiB,EAAE,UAAkB;IACnE,OAAO,QAAQ,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,SAAS,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AAC7G,CAAC;AAED,SAAS,QAAQ,CAAC,MAAc;IAC9B,OAAO,GAAG,MAAM,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;AACxD,CAAC;AACD,SAAS,WAAW,CAAC,KAAa,EAAE,KAAa;IAC/C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAChC,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,cAAc,CAAC,CAAC;IACzD,OAAO,UAAU,CAAC;AACpB,CAAC;AACD,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC3E,CAAC;AACD,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACvC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC9E,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IAC7E,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC;SACxD,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC;SACxC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;SACvE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AAClB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arc-worker.d.ts","sourceRoot":"","sources":["../../src/funding/arc-worker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,oBAAoB,EACzB,KAAK,4BAA4B,EAClC,MAAM,sBAAsB,CAAC;AAG9B,MAAM,MAAM,qBAAqB,GAC7B;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,KAAK,MAAM,EAAE,CAAA;CAAE,GACjF;IAAE,IAAI,EAAE,4BAA4B,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAClF;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,KAAK,EAAE,4BAA4B,CAAA;CAAE,CAAC;AAExE,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,YAAY,CAAC;IACrB,YAAY,EAAE,YAAY,CAAC;IAC3B,KAAK,EAAE,KAAK,MAAM,EAAE,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAoC;IAC7D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAoC;IAC7D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqB;IACrD,OAAO,CAAC,KAAK,CAAC,CAAiC;IAC/C,OAAO,CAAC,WAAW,CAAC,CAA4B;gBAEpC,MAAM,EAAE,sBAAsB;
|
|
1
|
+
{"version":3,"file":"arc-worker.d.ts","sourceRoot":"","sources":["../../src/funding/arc-worker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,oBAAoB,EACzB,KAAK,4BAA4B,EAClC,MAAM,sBAAsB,CAAC;AAG9B,MAAM,MAAM,qBAAqB,GAC7B;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,KAAK,MAAM,EAAE,CAAA;CAAE,GACjF;IAAE,IAAI,EAAE,4BAA4B,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAClF;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,KAAK,EAAE,4BAA4B,CAAA;CAAE,CAAC;AAExE,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,YAAY,CAAC;IACrB,YAAY,EAAE,YAAY,CAAC;IAC3B,KAAK,EAAE,KAAK,MAAM,EAAE,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAoC;IAC7D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAoC;IAC7D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqB;IACrD,OAAO,CAAC,KAAK,CAAC,CAAiC;IAC/C,OAAO,CAAC,WAAW,CAAC,CAA4B;gBAEpC,MAAM,EAAE,sBAAsB;IA+BpC,oBAAoB,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAsBhD,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC;IAkB5B,QAAQ,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAe3C,KAAK,IAAI,IAAI;IAQb,IAAI,IAAI,IAAI;YAME,cAAc;YAmBd,IAAI;IAIlB,OAAO,CAAC,WAAW;CAIpB"}
|
|
@@ -21,6 +21,8 @@ export class ArcFundingWorker {
|
|
|
21
21
|
ledger: config.ledger,
|
|
22
22
|
payTo: config.payTo,
|
|
23
23
|
receiptStore: config.receiptStore,
|
|
24
|
+
rpcUrl: config.rpcUrl,
|
|
25
|
+
publicClient: config.publicClient,
|
|
24
26
|
});
|
|
25
27
|
const receiptLedger = new PersistentReceiptLedger({ store: config.receiptStore });
|
|
26
28
|
this.watcher = new ReceiptWatcher({
|
|
@@ -31,6 +33,7 @@ export class ArcFundingWorker {
|
|
|
31
33
|
fromBlock: config.fromBlock,
|
|
32
34
|
confirmations: config.confirmations ?? 1,
|
|
33
35
|
maxBlockRange: config.maxBlockRange ?? 2_000,
|
|
36
|
+
maxBlocksPerPoll: config.maxBlocksPerPoll ?? 10_000,
|
|
34
37
|
cursorOverlap: config.cursorOverlap ?? 2,
|
|
35
38
|
retryAttempts: config.retryAttempts ?? 3,
|
|
36
39
|
retryBaseDelayMs: config.retryBaseDelayMs ?? 250,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arc-worker.js","sourceRoot":"","sources":["../../src/funding/arc-worker.ts"],"names":[],"mappings":"AACA,OAAO,EACL,uBAAuB,EACvB,cAAc,GAKf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"arc-worker.js","sourceRoot":"","sources":["../../src/funding/arc-worker.ts"],"names":[],"mappings":"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"}
|
package/dist/funding/arc.d.ts
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import type { CreditLedger, FundingIntent, FundingTransaction, CreditAccount, CreditGrant } from '../credits/index.js';
|
|
2
|
-
import { type MemoPaymentRequest, type PaymentInvoice, type PaymentReceipt, type ReceiptStore } from '../receipts/index.js';
|
|
2
|
+
import { type MemoPaymentRequest, type PaymentInvoice, type PaymentReceipt, type ProofClient, type ReceiptStore } from '../receipts/index.js';
|
|
3
3
|
export interface ArcCreditFundingConfig {
|
|
4
4
|
ledger: CreditLedger;
|
|
5
5
|
payTo: `0x${string}`;
|
|
6
6
|
network?: string;
|
|
7
7
|
receiptStore?: ReceiptStore;
|
|
8
|
+
rpcUrl?: string;
|
|
9
|
+
publicClient?: ProofClient;
|
|
8
10
|
}
|
|
9
11
|
export interface ArcFundingRequest {
|
|
10
12
|
fundingIntent: FundingIntent;
|
|
@@ -16,6 +18,8 @@ export declare class ArcCreditFunding {
|
|
|
16
18
|
private readonly payTo;
|
|
17
19
|
private readonly network;
|
|
18
20
|
private readonly receiptStore?;
|
|
21
|
+
private readonly rpcUrl?;
|
|
22
|
+
private readonly publicClient?;
|
|
19
23
|
constructor(config: ArcCreditFundingConfig);
|
|
20
24
|
createFundingRequest(input: {
|
|
21
25
|
customerId: string;
|
|
@@ -34,5 +38,6 @@ export declare class ArcCreditFunding {
|
|
|
34
38
|
fundingIntent: FundingIntent;
|
|
35
39
|
fundingTransaction: FundingTransaction;
|
|
36
40
|
}>;
|
|
41
|
+
private createExpectedPaymentRequest;
|
|
37
42
|
}
|
|
38
43
|
//# sourceMappingURL=arc.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arc.d.ts","sourceRoot":"","sources":["../../src/funding/arc.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,
|
|
1
|
+
{"version":3,"file":"arc.d.ts","sourceRoot":"","sources":["../../src/funding/arc.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAKL,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,YAAY,EAClB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,KAAK,MAAM,EAAE,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,WAAW,CAAC;CAC5B;AAED,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE,aAAa,CAAC;IAC7B,OAAO,EAAE,cAAc,CAAC;IACxB,cAAc,EAAE,kBAAkB,CAAC;CACpC;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgB;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAc;gBAEhC,MAAM,EAAE,sBAAsB;IAYpC,oBAAoB,CAAC,KAAK,EAAE;QAChC,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA8BxB,cAAc,CAAC,KAAK,EAAE;QAC1B,eAAe,EAAE,MAAM,CAAC;QACxB,OAAO,EAAE,cAAc,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GAAG,OAAO,CAAC;QACV,OAAO,EAAE,aAAa,CAAC;QACvB,KAAK,EAAE,WAAW,CAAC;QACnB,aAAa,EAAE,aAAa,CAAC;QAC7B,kBAAkB,EAAE,kBAAkB,CAAC;KACxC,CAAC;IAmDF,OAAO,CAAC,4BAA4B;CAWrC"}
|
package/dist/funding/arc.js
CHANGED
|
@@ -1,15 +1,22 @@
|
|
|
1
1
|
import { createHash } from 'node:crypto';
|
|
2
|
-
import { createInvoice, createMemoPaymentRequest, } from '../receipts/index.js';
|
|
2
|
+
import { createInvoice, createMemoPaymentRequest, stablecoinUnitsToString, verifyMemoPaymentProof, } from '../receipts/index.js';
|
|
3
3
|
export class ArcCreditFunding {
|
|
4
4
|
ledger;
|
|
5
5
|
payTo;
|
|
6
6
|
network;
|
|
7
7
|
receiptStore;
|
|
8
|
+
rpcUrl;
|
|
9
|
+
publicClient;
|
|
8
10
|
constructor(config) {
|
|
9
11
|
this.ledger = config.ledger;
|
|
10
12
|
this.payTo = config.payTo;
|
|
11
13
|
this.network = config.network ?? 'arc-testnet';
|
|
12
14
|
this.receiptStore = config.receiptStore;
|
|
15
|
+
this.rpcUrl = config.rpcUrl;
|
|
16
|
+
this.publicClient = config.publicClient;
|
|
17
|
+
if (this.network !== 'arc-testnet') {
|
|
18
|
+
throw new Error('ArcCreditFunding currently supports Arc Testnet only');
|
|
19
|
+
}
|
|
13
20
|
}
|
|
14
21
|
async createFundingRequest(input) {
|
|
15
22
|
const fundingIntentId = `fund_${createHash('sha256')
|
|
@@ -55,29 +62,48 @@ export class ArcCreditFunding {
|
|
|
55
62
|
if (!input.receipt.txHash) {
|
|
56
63
|
throw new Error('Arc funding requires a payment receipt with a transaction hash');
|
|
57
64
|
}
|
|
65
|
+
const paymentRequest = this.createExpectedPaymentRequest(intent);
|
|
66
|
+
const proof = await verifyMemoPaymentProof({
|
|
67
|
+
txHash: input.receipt.txHash,
|
|
68
|
+
paymentRequest,
|
|
69
|
+
rpcUrl: this.rpcUrl,
|
|
70
|
+
publicClient: this.publicClient,
|
|
71
|
+
});
|
|
72
|
+
if (proof.network !== intent.network) {
|
|
73
|
+
throw new Error('Verified payment proof network does not match the funding intent');
|
|
74
|
+
}
|
|
58
75
|
return this.ledger.confirmFunding({
|
|
59
76
|
fundingIntentId: intent.id,
|
|
60
77
|
rail: 'arc_direct',
|
|
61
|
-
network:
|
|
78
|
+
network: proof.network,
|
|
62
79
|
externalPaymentId: input.receipt.txHash,
|
|
63
80
|
txHash: input.receipt.txHash,
|
|
64
|
-
amount:
|
|
81
|
+
amount: stablecoinUnitsToString(BigInt(proof.amountUnits)),
|
|
65
82
|
paymentReceiptId: input.receipt.id,
|
|
66
|
-
payer:
|
|
83
|
+
payer: proof.payer,
|
|
67
84
|
settlementStatus: 'settled',
|
|
68
85
|
evidence: {
|
|
69
|
-
payer:
|
|
70
|
-
recipient:
|
|
71
|
-
explorerUrl:
|
|
72
|
-
blockNumber:
|
|
86
|
+
payer: proof.payer,
|
|
87
|
+
recipient: proof.payTo,
|
|
88
|
+
explorerUrl: proof.explorerUrl,
|
|
89
|
+
blockNumber: proof.blockNumber.toString(),
|
|
73
90
|
metadata: {
|
|
74
|
-
memoId:
|
|
75
|
-
callDataHash:
|
|
91
|
+
memoId: proof.memoId,
|
|
92
|
+
callDataHash: proof.callDataHash,
|
|
76
93
|
},
|
|
77
94
|
},
|
|
78
95
|
idempotencyKey: input.idempotencyKey,
|
|
79
96
|
metadata: input.metadata,
|
|
80
97
|
});
|
|
81
98
|
}
|
|
99
|
+
createExpectedPaymentRequest(intent) {
|
|
100
|
+
return createMemoPaymentRequest(createInvoice({
|
|
101
|
+
id: intent.invoiceId,
|
|
102
|
+
amount: intent.requestedAmount,
|
|
103
|
+
currency: 'USDC',
|
|
104
|
+
payTo: this.payTo,
|
|
105
|
+
network: intent.network,
|
|
106
|
+
}));
|
|
107
|
+
}
|
|
82
108
|
}
|
|
83
109
|
//# sourceMappingURL=arc.js.map
|
package/dist/funding/arc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arc.js","sourceRoot":"","sources":["../../src/funding/arc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAQzC,OAAO,EACL,aAAa,EACb,wBAAwB,
|
|
1
|
+
{"version":3,"file":"arc.js","sourceRoot":"","sources":["../../src/funding/arc.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
export { createPaywallMiddleware, type PaywallConfig, type PaywallMiddleware, } from './middleware/paywall.js';
|
|
9
9
|
export { expressPaywall } from './middleware/express.js';
|
|
10
10
|
export { nextPaywall, type NextRouteHandler } from './middleware/next.js';
|
|
11
|
-
export { BuyerClient, type BuyerClientConfig } from './client/buyer.js';
|
|
11
|
+
export { BuyerClient, type BuyerClientConfig, type BuyerPaymentPolicy, type BuyerPaymentProposal, } from './client/buyer.js';
|
|
12
12
|
export { UsageMeter, type UsageRecord, type MeterConfig } from './billing/meter.js';
|
|
13
13
|
export { createBillingPlan, type BillingPlan, type PricingModel, type PerRequestPricing, type PerSecondPricing, type PerJobPricing, } from './billing/plans.js';
|
|
14
14
|
export * from './credits/index.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,uBAAuB,EACvB,KAAK,aAAa,EAClB,KAAK,iBAAiB,GACvB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE1E,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,uBAAuB,EACvB,KAAK,aAAa,EAClB,KAAK,iBAAiB,GACvB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE1E,OAAO,EACL,WAAW,EACX,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACpF,OAAO,EACL,iBAAiB,EACjB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,aAAa,GACnB,MAAM,oBAAoB,CAAC;AAE5B,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC1F,OAAO,EACL,gBAAgB,EAChB,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,sBAAsB,EACtB,aAAa,EACb,wBAAwB,EACxB,KAAK,4BAA4B,EACjC,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,uBAAuB,EACvB,sBAAsB,EACtB,aAAa,EACb,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,wBAAwB,EACxB,aAAa,EACb,yBAAyB,EACzB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,gBAAgB,EAChB,sBAAsB,EACtB,sBAAsB,EACtB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EACjC,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,YAAY,EACjB,KAAK,yBAAyB,EAC9B,KAAK,kBAAkB,GACxB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEnF,YAAY,EACV,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,WAAW,EACX,aAAa,GACd,MAAM,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
export { createPaywallMiddleware, } from './middleware/paywall.js';
|
|
9
9
|
export { expressPaywall } from './middleware/express.js';
|
|
10
10
|
export { nextPaywall } from './middleware/next.js';
|
|
11
|
-
export { BuyerClient } from './client/buyer.js';
|
|
11
|
+
export { BuyerClient, } from './client/buyer.js';
|
|
12
12
|
export { UsageMeter } from './billing/meter.js';
|
|
13
13
|
export { createBillingPlan, } from './billing/plans.js';
|
|
14
14
|
export * from './credits/index.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,uBAAuB,GAGxB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAyB,MAAM,sBAAsB,CAAC;AAE1E,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,uBAAuB,GAGxB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAyB,MAAM,sBAAsB,CAAC;AAE1E,OAAO,EACL,WAAW,GAIZ,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,UAAU,EAAsC,MAAM,oBAAoB,CAAC;AACpF,OAAO,EACL,iBAAiB,GAMlB,MAAM,oBAAoB,CAAC;AAE5B,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC1F,OAAO,EACL,gBAAgB,GAGjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,sBAAsB,EACtB,aAAa,EACb,wBAAwB,GAGzB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,uBAAuB,EACvB,sBAAsB,EACtB,aAAa,EACb,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,wBAAwB,EACxB,aAAa,EACb,yBAAyB,EACzB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,gBAAgB,EAChB,sBAAsB,EACtB,sBAAsB,GA8BvB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -45,10 +45,7 @@ export declare function createPaywallMiddleware(config: PaywallConfig): {
|
|
|
45
45
|
* Parse payment payload from request headers.
|
|
46
46
|
*/
|
|
47
47
|
parsePayment(headers: Record<string, string | undefined>): PaymentPayload | null;
|
|
48
|
-
/**
|
|
49
|
-
* Verify a payment payload.
|
|
50
|
-
* In production, this delegates to Circle Gateway for verification.
|
|
51
|
-
*/
|
|
48
|
+
/** Verify a payment payload through the caller-provided trusted verifier. */
|
|
52
49
|
verifyPayment(payload: PaymentPayload): Promise<boolean>;
|
|
53
50
|
};
|
|
54
51
|
//# sourceMappingURL=paywall.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paywall.d.ts","sourceRoot":"","sources":["../../src/middleware/paywall.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGvF,+CAA+C;AAC/C,MAAM,WAAW,aAAc,SAAQ,cAAc;IACnD,kDAAkD;IAClD,KAAK,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IACtB,oBAAoB;IACpB,MAAM,CAAC,EAAE;QACP,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;QAC5C,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;KAC9C,CAAC;CACH;AAED,uCAAuC;AACvC,MAAM,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,aAAa,KAAK;IACzD,uDAAuD;IACvD,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;IAClD,iDAAiD;IACjD,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,KAAK,cAAc,GAAG,IAAI,CAAC;IACrF,+BAA+B;IAC/B,aAAa,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC9D,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,aAAa;IAmBzD;;OAEG;8BACuB,mBAAmB;IAY7C;;OAEG;0BACmB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,cAAc,GAAG,IAAI;IAgBhF
|
|
1
|
+
{"version":3,"file":"paywall.d.ts","sourceRoot":"","sources":["../../src/middleware/paywall.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGvF,+CAA+C;AAC/C,MAAM,WAAW,aAAc,SAAQ,cAAc;IACnD,kDAAkD;IAClD,KAAK,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IACtB,oBAAoB;IACpB,MAAM,CAAC,EAAE;QACP,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;QAC5C,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;KAC9C,CAAC;CACH;AAED,uCAAuC;AACvC,MAAM,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,aAAa,KAAK;IACzD,uDAAuD;IACvD,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;IAClD,iDAAiD;IACjD,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,KAAK,cAAc,GAAG,IAAI,CAAC;IACrF,+BAA+B;IAC/B,aAAa,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC9D,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,aAAa;IAmBzD;;OAEG;8BACuB,mBAAmB;IAY7C;;OAEG;0BACmB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,cAAc,GAAG,IAAI;IAgBhF,6EAA6E;2BAChD,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;EAYjE"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Framework-agnostic paywall configuration.
|
|
3
3
|
*/
|
|
4
|
-
import { DEFAULTS,
|
|
4
|
+
import { DEFAULTS, X402_HEADER } from '../constants.js';
|
|
5
5
|
/**
|
|
6
6
|
* Create a framework-agnostic paywall handler.
|
|
7
7
|
*
|
|
@@ -55,47 +55,14 @@ export function createPaywallMiddleware(config) {
|
|
|
55
55
|
return null;
|
|
56
56
|
}
|
|
57
57
|
},
|
|
58
|
-
/**
|
|
59
|
-
* Verify a payment payload.
|
|
60
|
-
* In production, this delegates to Circle Gateway for verification.
|
|
61
|
-
*/
|
|
58
|
+
/** Verify a payment payload through the caller-provided trusted verifier. */
|
|
62
59
|
async verifyPayment(payload) {
|
|
63
60
|
if (config.verifyPayment) {
|
|
64
61
|
const result = await config.verifyPayment(payload);
|
|
65
62
|
return result.success;
|
|
66
63
|
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
logger.error('Invalid payment payload structure');
|
|
70
|
-
return false;
|
|
71
|
-
}
|
|
72
|
-
// Verify payment amount meets minimum
|
|
73
|
-
const paymentAmount = BigInt(payload.payload.authorization.value);
|
|
74
|
-
const requiredAmount = BigInt(Math.floor(parseFloat(price) * 10 ** USDC_DECIMALS));
|
|
75
|
-
if (paymentAmount < requiredAmount) {
|
|
76
|
-
logger.error('Payment amount insufficient', {
|
|
77
|
-
received: paymentAmount.toString(),
|
|
78
|
-
required: requiredAmount.toString(),
|
|
79
|
-
});
|
|
80
|
-
return false;
|
|
81
|
-
}
|
|
82
|
-
// Verify payment is addressed to seller
|
|
83
|
-
if (payload.payload.authorization.to.toLowerCase() !== sellerAddress.toLowerCase()) {
|
|
84
|
-
logger.error('Payment not addressed to seller');
|
|
85
|
-
return false;
|
|
86
|
-
}
|
|
87
|
-
// Verify payment hasn't expired
|
|
88
|
-
const now = Math.floor(Date.now() / 1000);
|
|
89
|
-
const validBefore = parseInt(payload.payload.authorization.validBefore, 10);
|
|
90
|
-
if (now > validBefore) {
|
|
91
|
-
logger.error('Payment authorization has expired');
|
|
92
|
-
return false;
|
|
93
|
-
}
|
|
94
|
-
logger.info('Payment verified successfully', {
|
|
95
|
-
from: payload.payload.authorization.from,
|
|
96
|
-
amount: payload.payload.authorization.value,
|
|
97
|
-
});
|
|
98
|
-
return true;
|
|
64
|
+
logger.error('Payment verification is not configured. Pass a trusted verifyPayment implementation.');
|
|
65
|
+
return false;
|
|
99
66
|
},
|
|
100
67
|
};
|
|
101
68
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paywall.js","sourceRoot":"","sources":["../../src/middleware/paywall.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"paywall.js","sourceRoot":"","sources":["../../src/middleware/paywall.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAuBxD;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAqB;IAC3D,MAAM,EACJ,KAAK,EACL,OAAO,GAAG,QAAQ,CAAC,OAAO,EAC1B,MAAM,GAAG,QAAQ,CAAC,MAAM,EACxB,WAAW,EACX,KAAK,EACL,MAAM,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,GAC7C,GAAG,MAAM,CAAC;IAEX,MAAM,aAAa,GAAG,KAAK,IAAK,OAAO,CAAC,GAAG,CAAC,cAA4C,CAAC;IAEzF,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CACb,0FAA0F,CAC3F,CAAC;IACJ,CAAC;IAED,OAAO;QACL;;WAEG;QACH,sBAAsB;YACpB,OAAO;gBACL,WAAW,EAAE,QAAQ,CAAC,WAAgB;gBACtC,MAAM,EAAE,MAAiB;gBACzB,OAAO;gBACP,iBAAiB,EAAE,KAAK;gBACxB,KAAK,EAAE,aAAa;gBACpB,WAAW;gBACX,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,QAAQ,CAAC,sBAAsB;aACxE,CAAC;QACJ,CAAC;QAED;;WAEG;QACH,YAAY,CAAC,OAA2C;YACtD,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;YAEjF,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACvE,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAmB,CAAC;YAC/C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;gBACtD,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,6EAA6E;QAC7E,KAAK,CAAC,aAAa,CAAC,OAAuB;YACzC,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;gBACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBACnD,OAAO,MAAM,CAAC,OAAO,CAAC;YACxB,CAAC;YAED,MAAM,CAAC,KAAK,CACV,sFAAsF,CACvF,CAAC;YACF,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/receipts/proof.d.ts
CHANGED
|
@@ -16,6 +16,7 @@ export type ProofClient = {
|
|
|
16
16
|
getTransactionReceipt: (params: {
|
|
17
17
|
hash: `0x${string}`;
|
|
18
18
|
}) => Promise<ProofTransactionReceipt | null>;
|
|
19
|
+
getChainId?: () => Promise<number>;
|
|
19
20
|
};
|
|
20
21
|
export type ProofPollingClient = ProofClient & {
|
|
21
22
|
getBlockNumber: () => Promise<bigint>;
|
|
@@ -29,7 +30,7 @@ export type ProofPollingClient = ProofClient & {
|
|
|
29
30
|
toBlock: bigint;
|
|
30
31
|
}) => Promise<readonly ProofMemoLog[]>;
|
|
31
32
|
};
|
|
32
|
-
export type VerifyMemoPaymentProofFailureReason = 'tx_not_found' | 'tx_reverted' | 'wrong_memo_contract' | 'missing_memo_event' | 'memo_id_mismatch' | 'target_mismatch' | 'call_data_hash_mismatch' | 'missing_transfer' | 'recipient_mismatch' | 'amount_mismatch';
|
|
33
|
+
export type VerifyMemoPaymentProofFailureReason = 'chain_mismatch' | 'tx_not_found' | 'tx_reverted' | 'wrong_memo_contract' | 'missing_memo_event' | 'memo_id_mismatch' | 'target_mismatch' | 'call_data_hash_mismatch' | 'missing_transfer' | 'recipient_mismatch' | 'amount_mismatch';
|
|
33
34
|
export declare class MemoPaymentProofError extends Error {
|
|
34
35
|
readonly reason: VerifyMemoPaymentProofFailureReason;
|
|
35
36
|
constructor(reason: VerifyMemoPaymentProofFailureReason, message: string);
|
|
@@ -52,6 +53,8 @@ export interface FindMemoPaymentProofInput {
|
|
|
52
53
|
toBlock?: bigint;
|
|
53
54
|
confirmations?: number;
|
|
54
55
|
lookbackBlocks?: bigint | number;
|
|
56
|
+
/** Maximum inclusive block count scanned by one call. Use nextFromBlock to continue. */
|
|
57
|
+
maxBlockRange?: bigint | number;
|
|
55
58
|
verifiedAt?: number;
|
|
56
59
|
}
|
|
57
60
|
export type FindMemoPaymentProofResult = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proof.d.ts","sourceRoot":"","sources":["../../src/receipts/proof.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAsE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAGpG,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAE1E,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,IAAI,EAAE,SAAS,GAAG,EAAE,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,eAAe,CAAC,EAAE,KAAK,MAAM,EAAE,GAAG,IAAI,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,qBAAqB,EAAE,CAAC,MAAM,EAAE;QAC9B,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;KACrB,KAAK,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"proof.d.ts","sourceRoot":"","sources":["../../src/receipts/proof.ts"],"names":[],"mappings":"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"}
|
package/dist/receipts/proof.js
CHANGED
|
@@ -6,6 +6,7 @@ import { ARC_TESTNET } from '../constants.js';
|
|
|
6
6
|
import { ARC_MEMO_ABI, ERC20_TRANSFER_ABI } from './memo-payment.js';
|
|
7
7
|
const MEMO_EVENT = parseAbiItem('event Memo(address indexed sender,address indexed target,bytes32 callDataHash,bytes32 indexed memoId,bytes memo,uint256 memoIndex)');
|
|
8
8
|
const DEFAULT_PROOF_LOOKBACK_BLOCKS = 5000n;
|
|
9
|
+
const DEFAULT_PROOF_SCAN_BLOCKS = 5000n;
|
|
9
10
|
export class MemoPaymentProofError extends Error {
|
|
10
11
|
reason;
|
|
11
12
|
constructor(reason, message) {
|
|
@@ -19,6 +20,12 @@ export async function verifyMemoPaymentProof(input) {
|
|
|
19
20
|
createPublicClient({
|
|
20
21
|
transport: http(input.rpcUrl ?? ARC_TESTNET.rpcUrl),
|
|
21
22
|
});
|
|
23
|
+
if (client.getChainId) {
|
|
24
|
+
const chainId = await client.getChainId();
|
|
25
|
+
if (chainId !== ARC_TESTNET.chainId) {
|
|
26
|
+
throw new MemoPaymentProofError('chain_mismatch', `RPC chain ${chainId} does not match Arc Testnet ${ARC_TESTNET.chainId}`);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
22
29
|
let txReceipt;
|
|
23
30
|
try {
|
|
24
31
|
txReceipt = await client.getTransactionReceipt({ hash: input.txHash });
|
|
@@ -82,13 +89,24 @@ async function resolveProofSearchRange(input, client) {
|
|
|
82
89
|
const lookbackBlocks = input.lookbackBlocks === undefined
|
|
83
90
|
? DEFAULT_PROOF_LOOKBACK_BLOCKS
|
|
84
91
|
: BigInt(input.lookbackBlocks);
|
|
92
|
+
const maxBlockRange = input.maxBlockRange === undefined ? DEFAULT_PROOF_SCAN_BLOCKS : BigInt(input.maxBlockRange);
|
|
93
|
+
if (lookbackBlocks < 0n) {
|
|
94
|
+
throw new RangeError('lookbackBlocks must be non-negative');
|
|
95
|
+
}
|
|
96
|
+
if (maxBlockRange <= 0n) {
|
|
97
|
+
throw new RangeError('maxBlockRange must be positive');
|
|
98
|
+
}
|
|
99
|
+
const fromBlock = input.fromBlock ?? defaultProofFromBlock(toBlock, lookbackBlocks);
|
|
100
|
+
const maximumToBlock = fromBlock + maxBlockRange - 1n;
|
|
85
101
|
return {
|
|
86
|
-
fromBlock
|
|
87
|
-
toBlock,
|
|
102
|
+
fromBlock,
|
|
103
|
+
toBlock: maximumToBlock < toBlock ? maximumToBlock : toBlock,
|
|
88
104
|
};
|
|
89
105
|
}
|
|
90
106
|
function defaultProofFromBlock(toBlock, lookbackBlocks) {
|
|
91
|
-
|
|
107
|
+
if (lookbackBlocks === 0n)
|
|
108
|
+
return toBlock;
|
|
109
|
+
return toBlock >= lookbackBlocks ? toBlock - lookbackBlocks + 1n : 0n;
|
|
92
110
|
}
|
|
93
111
|
async function getMemoProofLogs(paymentRequest, client, range) {
|
|
94
112
|
return client.getLogs({
|
|
@@ -192,11 +210,12 @@ export function createMemoPaymentProofFromReceipt(params) {
|
|
|
192
210
|
}
|
|
193
211
|
const amountTransfer = recipientTransfers.find((log) => {
|
|
194
212
|
const args = log.args;
|
|
195
|
-
return args.value
|
|
213
|
+
return args.value !== undefined && args.value >= BigInt(paymentRequest.amountUnits);
|
|
196
214
|
});
|
|
197
215
|
if (!amountTransfer) {
|
|
198
216
|
throw new MemoPaymentProofError('amount_mismatch', `Transaction ${txHash} has no USDC Transfer for ${paymentRequest.amountUnits} units`);
|
|
199
217
|
}
|
|
218
|
+
const paidAmountUnits = amountTransfer.args.value;
|
|
200
219
|
return {
|
|
201
220
|
chainId: ARC_TESTNET.chainId,
|
|
202
221
|
network: 'arc-testnet',
|
|
@@ -211,7 +230,7 @@ export function createMemoPaymentProofFromReceipt(params) {
|
|
|
211
230
|
payer: getAddress(memoArgs.sender),
|
|
212
231
|
payTo: getAddress(paymentRequest.payTo),
|
|
213
232
|
target: getAddress(paymentRequest.target),
|
|
214
|
-
amountUnits:
|
|
233
|
+
amountUnits: paidAmountUnits.toString(),
|
|
215
234
|
explorerUrl: `${ARC_TESTNET.explorerUrl}/tx/${txHash}`,
|
|
216
235
|
verifiedAt: params.verifiedAt ?? Date.now(),
|
|
217
236
|
};
|