@spicyapi/sdk 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +21 -0
- package/SECURITY.md +4 -0
- package/contracts/openapi.yaml +752 -0
- package/dist/src/docs/index.d.ts +10 -0
- package/dist/src/docs/index.d.ts.map +1 -0
- package/dist/src/docs/index.js +181 -0
- package/dist/src/docs/index.js.map +1 -0
- package/dist/src/generated/openapi.d.ts +888 -0
- package/dist/src/generated/openapi.d.ts.map +1 -0
- package/dist/src/generated/openapi.js +6 -0
- package/dist/src/generated/openapi.js.map +1 -0
- package/dist/src/index.d.ts +6 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +5 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/openapi.d.ts +2 -0
- package/dist/src/openapi.d.ts.map +1 -0
- package/dist/src/openapi.js +18 -0
- package/dist/src/openapi.js.map +1 -0
- package/dist/src/sdk/client.d.ts +41 -0
- package/dist/src/sdk/client.d.ts.map +1 -0
- package/dist/src/sdk/client.js +407 -0
- package/dist/src/sdk/client.js.map +1 -0
- package/dist/src/sdk/errors.d.ts +36 -0
- package/dist/src/sdk/errors.d.ts.map +1 -0
- package/dist/src/sdk/errors.js +53 -0
- package/dist/src/sdk/errors.js.map +1 -0
- package/dist/src/sdk/index.d.ts +4 -0
- package/dist/src/sdk/index.d.ts.map +1 -0
- package/dist/src/sdk/index.js +3 -0
- package/dist/src/sdk/index.js.map +1 -0
- package/dist/src/sdk/types.d.ts +73 -0
- package/dist/src/sdk/types.d.ts.map +1 -0
- package/dist/src/sdk/types.js +2 -0
- package/dist/src/sdk/types.js.map +1 -0
- package/dist/src/webhooks/index.d.ts +28 -0
- package/dist/src/webhooks/index.d.ts.map +1 -0
- package/dist/src/webhooks/index.js +83 -0
- package/dist/src/webhooks/index.js.map +1 -0
- package/package.json +49 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../../src/generated/openapi.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,KAAK;IAClB,yBAAyB,EAAE;QACvB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;;;;;;;;;;;WAcG;QACH,IAAI,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;QAC/B,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,yBAAyB,EAAE;QACvB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,sDAAsD;QACtD,GAAG,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;QAC9B,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,oBAAoB,EAAE;QAClB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;;;;WAOG;QACH,IAAI,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;QAC9B,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,gBAAgB,EAAE;QACd,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;;WAKG;QACH,GAAG,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;QAC9B,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,wBAAwB,EAAE;QACtB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;;;WAKG;QACH,GAAG,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;QAC5B,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,qBAAqB,EAAE;QACnB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,8BAA8B;QAC9B,GAAG,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC;QACpC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,2BAA2B,EAAE;QACzB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;;;WAMG;QACH,IAAI,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;QACpC,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,+BAA+B,EAAE;QAC7B,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;;;WAMG;QACH,IAAI,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;QACvC,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,6BAA6B,EAAE;QAC3B,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;WAIG;QACH,IAAI,EAAE,UAAU,CAAC,mBAAmB,CAAC,CAAC;QACtC,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;CACL;AACD,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC7C,MAAM,WAAW,UAAU;IACvB,OAAO,EAAE;QACL,YAAY,EAAE;YACV,IAAI,EAAE,MAAM,CAAC;YACb,GAAG,EAAE,MAAM,CAAC;YACZ,2EAA2E;YAC3E,UAAU,EAAE,MAAM,CAAC;SACtB,CAAC;QACF,aAAa,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GAAG;YACnD,sBAAsB;YACtB,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,KAAK,GAAG,KAAK,GAAG,GAAG,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,KAAK,CAAC;YACrG,GAAG,CAAC,EAAE,MAAM,CAAC;SAChB,CAAC;QACF,iBAAiB,EAAE;YACf,+DAA+D;YAC/D,KAAK,EAAE,MAAM,CAAC;YACd,yEAAyE;YACzE,KAAK,EAAE;gBACH,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;aAC1B,CAAC;YACF;;;eAGG;YACH,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB;;;eAGG;YACH,MAAM,EAAE,OAAO,CAAC;SACnB,CAAC;QACF,kBAAkB,EAAE;YAChB,MAAM,EAAE,MAAM,CAAC;YACf;;;eAGG;YACH,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;YAC9E,+KAA+K;YAC/K,aAAa,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;SACrD,CAAC;QACF,iBAAiB,EAAE;YACf,MAAM,EAAE,MAAM,CAAC;SAClB,CAAC;QACF,iBAAiB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,GAAG;YAC7D,YAAY,EAAE,MAAM,CAAC;SACxB,CAAC;QACF,iBAAiB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GAAG;YACvD,gBAAgB;YAChB,IAAI,CAAC,EAAE,GAAG,CAAC;YACX,gBAAgB;YAChB,GAAG,CAAC,EAAE,SAAS,CAAC;YAChB,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,CAAC;SACpD,CAAC;QACF,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GAAG;YACxD,gBAAgB;YAChB,IAAI,CAAC,EAAE,GAAG,CAAC;YACX,gBAAgB;YAChB,GAAG,CAAC,EAAE,SAAS,CAAC;YAChB,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;SACrD,CAAC;QACF,UAAU,EAAE;YACR,MAAM,EAAE,MAAM,CAAC;YACf,yEAAyE;YACzE,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,KAAK,EAAE,MAAM,CAAC;YACd,qBAAqB;YACrB,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;YAC9E,8EAA8E;YAC9E,KAAK,CAAC,EAAE;gBACJ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;aAC1B,CAAC;YACF,8FAA8F;YAC9F,MAAM,CAAC,EAAE;gBACL,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;aAC1B,CAAC;YACF,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;YACzC,6LAA6L;YAC7L,OAAO,EAAE,OAAO,CAAC;YACjB,wBAAwB;YACxB,SAAS,EAAE,MAAM,CAAC;YAClB,wBAAwB;YACxB,WAAW,CAAC,EAAE,MAAM,CAAC;SACxB,CAAC;QACF,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GAAG;YACxD,gBAAgB;YAChB,IAAI,CAAC,EAAE,GAAG,CAAC;YACX,gBAAgB;YAChB,GAAG,CAAC,EAAE,SAAS,CAAC;YAChB,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;SAC7C,CAAC;QACF;;;WAGG;QACH,oBAAoB,EAAE;YAClB,OAAO,EAAE,MAAM,CAAC;YAChB,KAAK,EAAE,MAAM,CAAC;YACd,qBAAqB;YACrB,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;YAC9E,MAAM,CAAC,EAAE;gBACL,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;aAC1B,CAAC;YACF,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,aAAa,CAAC,EAAE,MAAM,CAAC;YACvB,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;YACzC,wBAAwB;YACxB,UAAU,EAAE,MAAM,CAAC;SACtB,CAAC;QACF,OAAO,EAAE;YACL,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;YAC9C,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;YACzC,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;SAC7C,CAAC;QACF,eAAe,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GAAG;YACrD,gBAAgB;YAChB,IAAI,CAAC,EAAE,GAAG,CAAC;YACX,gBAAgB;YAChB,GAAG,CAAC,EAAE,SAAS,CAAC;YAChB,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;SAC1C,CAAC;QACF,aAAa,EAAE;YACX,8FAA8F;YAC9F,OAAO,EAAE,MAAM,CAAC;YAChB,qBAAqB;YACrB,IAAI,EAAE,WAAW,GAAG,YAAY,GAAG,aAAa,GAAG,eAAe,CAAC;YACnE,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;YAC1C,gBAAgB;YAChB,QAAQ,EAAE,KAAK,CAAC;SACnB,CAAC;QACF,QAAQ,EAAE;YACN,KAAK,EAAE,MAAM,CAAC;YACd,6HAA6H;YAC7H,MAAM,EAAE,MAAM,CAAC;YACf,WAAW,EAAE,MAAM,CAAC;YACpB,QAAQ,EAAE,MAAM,CAAC;YACjB,qBAAqB;YACrB,QAAQ,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;YAC/C,KAAK,EAAE,MAAM,EAAE,CAAC;YAChB,KAAK,EAAE,OAAO,CAAC;YACf,kJAAkJ;YAClJ,MAAM,EAAE,OAAO,CAAC;YAChB;;;eAGG;YACH,UAAU,EAAE,cAAc,GAAG,YAAY,GAAG,aAAa,CAAC;YAC1D,0GAA0G;YAC1G,kBAAkB,EAAE,MAAM,CAAC;YAC3B,mIAAmI;YACnI,wBAAwB,CAAC,EAAE,MAAM,CAAC;YAClC,OAAO,EAAE,OAAO,CAAC;YACjB,SAAS,EAAE,OAAO,CAAC;YACnB,aAAa,EAAE,MAAM,CAAC;YACtB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC;YAClD,aAAa,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;YACvD,oFAAoF;YACpF,WAAW,CAAC,EAAE;gBACV,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;aAC1B,CAAC;YACF,gFAAgF;YAChF,OAAO,EAAE,MAAM,CAAC;YAChB,qBAAqB;YACrB,YAAY,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,aAAa,CAAC;YAClE,yGAAyG;YACzG,MAAM,EAAE,CAAC,gBAAgB,GAAG,cAAc,GAAG,uBAAuB,GAAG,iBAAiB,GAAG,cAAc,GAAG,WAAW,GAAG,WAAW,GAAG,iBAAiB,GAAG,cAAc,GAAG,gBAAgB,GAAG,qBAAqB,GAAG,mBAAmB,CAAC,EAAE,CAAC;YAC/O,0FAA0F;YAC1F,aAAa,EAAE,MAAM,EAAE,CAAC;YACxB,+EAA+E;YAC/E,QAAQ,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACtD,wBAAwB;YACxB,SAAS,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,eAAe,EAAE;YACb,EAAE,EAAE,MAAM,CAAC;YACX,KAAK,EAAE;gBACH,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;aAC1B,CAAC;YACF,UAAU,EAAE,MAAM,CAAC;SACtB,CAAC;QACF,YAAY,EAAE;YACV,KAAK,EAAE,MAAM,CAAC;YACd,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;SAC9C,CAAC;QACF,aAAa,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GAAG;YACnD,gBAAgB;YAChB,IAAI,CAAC,EAAE,GAAG,CAAC;YACX,gBAAgB;YAChB,GAAG,CAAC,EAAE,SAAS,CAAC;YAChB,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;SAC3C,CAAC;QACF,iBAAiB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GAAG;YACvD,gBAAgB;YAChB,IAAI,CAAC,EAAE,GAAG,CAAC;YACX,gBAAgB;YAChB,GAAG,CAAC,EAAE,SAAS,CAAC;YAChB,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,CAAC;SAC/C,CAAC;QACF,gBAAgB,EAAE;YACd,qBAAqB;YACrB,WAAW,EAAE,YAAY,GAAG,WAAW,GAAG,YAAY,GAAG,WAAW,CAAC;YACrE,KAAK,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,iBAAiB,EAAE;YACf,MAAM,EAAE,MAAM,CAAC;YACf,0FAA0F;YAC1F,GAAG,EAAE,MAAM,CAAC;YACZ,kBAAkB;YAClB,SAAS,EAAE,MAAM,CAAC;YAClB,gBAAgB;YAChB,MAAM,EAAE,KAAK,CAAC;YACd,OAAO,EAAE;gBACL,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;aACzB,CAAC;YACF,wBAAwB;YACxB,SAAS,EAAE,MAAM,CAAC;YAClB,QAAQ,EAAE,MAAM,CAAC;SACpB,CAAC;QACF,iBAAiB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GAAG;YACvD,gBAAgB;YAChB,IAAI,CAAC,EAAE,GAAG,CAAC;YACX,gBAAgB;YAChB,GAAG,CAAC,EAAE,SAAS,CAAC;YAChB,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,CAAC;SACpD,CAAC;QACF,kBAAkB,EAAE;YAChB,MAAM,EAAE,MAAM,CAAC;YACf,gBAAgB;YAChB,MAAM,EAAE,OAAO,CAAC;YAChB,KAAK,EAAE,MAAM,CAAC;YACd,qBAAqB;YACrB,WAAW,EAAE,YAAY,GAAG,WAAW,GAAG,YAAY,GAAG,WAAW,CAAC;YACrE,MAAM,EAAE,MAAM,CAAC;YACf,GAAG,EAAE,MAAM,CAAC;YACZ,wBAAwB;YACxB,SAAS,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GAAG;YACxD,gBAAgB;YAChB,IAAI,CAAC,EAAE,GAAG,CAAC;YACX,gBAAgB;YAChB,GAAG,CAAC,EAAE,SAAS,CAAC;YAChB,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;SACrD,CAAC;QACF,kBAAkB,EAAE;YAChB,MAAM,EAAE,MAAM,CAAC;YACf,wEAAwE;YACxE,GAAG,CAAC,EAAE,MAAM,CAAC;SAChB,CAAC;QACF,mBAAmB,EAAE;YACjB,GAAG,EAAE,MAAM,CAAC;YACZ,kBAAkB;YAClB,GAAG,EAAE,MAAM,CAAC;YACZ,wBAAwB;YACxB,SAAS,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,mBAAmB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GAAG;YACzD,gBAAgB;YAChB,IAAI,CAAC,EAAE,GAAG,CAAC;YACX,gBAAgB;YAChB,GAAG,CAAC,EAAE,SAAS,CAAC;YAChB,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;SACtD,CAAC;QACF,+FAA+F;QAC/F,SAAS,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,SAAS,EAAE;QACP,yFAAyF;QACzF,UAAU,EAAE;YACR,OAAO,EAAE;gBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;aAC3B,CAAC;YACF,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;aAC9D,CAAC;SACL,CAAC;QACF,uFAAuF;QACvF,YAAY,EAAE;YACV,OAAO,EAAE;gBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;aAC3B,CAAC;YACF,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;aAC9D,CAAC;SACL,CAAC;QACF,wFAAwF;QACxF,eAAe,EAAE;YACb,OAAO,EAAE;gBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;aAC3B,CAAC;YACF,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;aAC9D,CAAC;SACL,CAAC;QACF,gFAAgF;QAChF,SAAS,EAAE;YACP,OAAO,EAAE;gBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;aAC3B,CAAC;YACF,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;aAC9D,CAAC;SACL,CAAC;QACF,2IAA2I;QAC3I,QAAQ,EAAE;YACN,OAAO,EAAE;gBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;aAC3B,CAAC;YACF,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;aAC9D,CAAC;SACL,CAAC;QACF,oFAAoF;QACpF,QAAQ,EAAE;YACN,OAAO,EAAE;gBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;aAC3B,CAAC;YACF,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;aAC9D,CAAC;SACL,CAAC;QACF,0EAA0E;QAC1E,eAAe,EAAE;YACb,OAAO,EAAE;gBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;aAC3B,CAAC;YACF,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;aAC9D,CAAC;SACL,CAAC;QACF,yDAAyD;QACzD,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,mBAAmB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,CAAC;gBAC7D,uBAAuB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;gBACrE,aAAa,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;gBACnD,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;aAC3B,CAAC;YACF,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;aAC9D,CAAC;SACL,CAAC;QACF,8FAA8F;QAC9F,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;aAC3B,CAAC;YACF,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;aAC9D,CAAC;SACL,CAAC;QACF,6GAA6G;QAC7G,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;aAC3B,CAAC;YACF,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;aAC9D,CAAC;SACL,CAAC;KACL,CAAC;IACF,UAAU,EAAE;QACR,uOAAuO;QACvO,cAAc,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,aAAa,EAAE,KAAK,CAAC;IACrB,OAAO,EAAE;QACL,2EAA2E;QAC3E,cAAc,EAAE,MAAM,CAAC;QACvB,4DAA4D;QAC5D,kBAAkB,EAAE,MAAM,CAAC;QAC3B,oDAAoD;QACpD,UAAU,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,SAAS,EAAE,KAAK,CAAC;CACpB;AACD,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC1C,MAAM,WAAW,UAAU;IACvB,UAAU,EAAE;QACR,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE;gBACL,uOAAuO;gBACvO,iBAAiB,CAAC,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC,gBAAgB,CAAC,CAAC;aAClE,CAAC;YACF,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,CAAC;aAClE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,gNAAgN;YAChN,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,6DAA6D;oBAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;oBAClB,aAAa,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;oBACnD,0FAA0F;oBAC1F,eAAe,CAAC,EAAE,UAAU,CAAC;oBAC7B,mBAAmB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,CAAC;oBAC7D,uBAAuB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;oBACrE,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;iBACnE,CAAC;aACL,CAAC;YACF,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC;YAC3C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC,CAAC;YAC7C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAChD,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC;YAC1C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC;YACzC,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAChD,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;YAC5C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;YAC5C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;SAC/C,CAAC;KACL,CAAC;IACF,UAAU,EAAE;QACR,UAAU,EAAE;YACR,KAAK,EAAE;gBACH,MAAM,EAAE,MAAM,CAAC;aAClB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,2FAA2F;YAC3F,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,6EAA6E;oBAC7E,eAAe,CAAC,EAAE,UAAU,CAAC;oBAC7B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;iBACnE,CAAC;aACL,CAAC;YACF,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC;YAC3C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC,CAAC;YAC7C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC;YAC1C,oHAAoH;YACpH,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,eAAe,CAAC,EAAE,UAAU,CAAC;oBAC7B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;iBAC9D,CAAC;aACL,CAAC;YACF,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;YAC5C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;SAC/C,CAAC;KACL,CAAC;IACF,SAAS,EAAE;QACP,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE;gBACL,uOAAuO;gBACvO,iBAAiB,CAAC,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC,gBAAgB,CAAC,CAAC;aAClE,CAAC;YACF,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,CAAC;aAClE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,gJAAgJ;YAChJ,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,CAAC;iBAClE,CAAC;aACL,CAAC;YACF,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC;YAC3C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC,CAAC;YAC7C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAChD,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC;YAC1C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC;YACzC,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC;YACzC,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAChD,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;YAC5C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;YAC5C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;SAC/C,CAAC;KACL,CAAC;IACF,UAAU,EAAE;QACR,UAAU,EAAE;YACR,KAAK,CAAC,EAAE;gBACJ,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;gBAChD,QAAQ,CAAC,EAAE,MAAM,CAAC;gBAClB,sEAAsE;gBACtE,IAAI,CAAC,EAAE,MAAM,CAAC;gBACd,MAAM,CAAC,EAAE,MAAM,CAAC;gBAChB,8EAA8E;gBAC9E,aAAa,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAClC,wEAAwE;gBACxE,eAAe,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;aACvC,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,+BAA+B;YAC/B,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,eAAe,CAAC,EAAE,qBAAqB,CAAC;oBACxC,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,CAAC;iBAClE,CAAC;aACL,CAAC;YACF,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC;YAC3C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC,CAAC;YAC7C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC;YAC1C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;YAC5C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;SAC/C,CAAC;KACL,CAAC;IACF,QAAQ,EAAE;QACN,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,KAAK,EAAE,MAAM,CAAC;aACjB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,0CAA0C;YAC1C,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,eAAe,CAAC,EAAE,qBAAqB,CAAC;oBACxC,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;iBAC9D,CAAC;aACL,CAAC;YACF,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC;YAC3C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC,CAAC;YAC7C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC;YAC1C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC;YACzC,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;YAC5C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;SAC/C,CAAC;KACL,CAAC;IACF,gBAAgB,EAAE;QACd,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,8EAA8E;YAC9E,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,CAAC;iBAChE,CAAC;aACL,CAAC;YACF,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC,CAAC;YAC7C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC;YAC1C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;YAC5C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;SAC/C,CAAC;KACL,CAAC;IACF,eAAe,EAAE;QACb,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;aACjE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,4CAA4C;YAC5C,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,CAAC;iBAClE,CAAC;aACL,CAAC;YACF,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC;YAC3C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC,CAAC;YAC7C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC;YAC1C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAChD,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;YAC5C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;SAC/C,CAAC;KACL,CAAC;IACF,kBAAkB,EAAE;QAChB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,MAAM,EAAE,MAAM,CAAC;aAClB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,uDAAuD;YACvD,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;iBACnE,CAAC;aACL,CAAC;YACF,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC;YAC3C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC,CAAC;YAC7C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC;YAC1C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC;YACzC,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC;YACzC,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;YAC5C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;SAC/C,CAAC;KACL,CAAC;IACF,iBAAiB,EAAE;QACf,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;aACnE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,gDAAgD;YAChD,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;iBACpE,CAAC;aACL,CAAC;YACF,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC;YAC3C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC,CAAC;YAC7C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC;YAC1C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC;YACzC,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC;YACzC,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAChD,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;YAC5C,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC;SAC/C,CAAC;KACL,CAAC;CACL"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../../src/generated/openapi.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from "./sdk/index.js";
|
|
2
|
+
export * from "./webhooks/index.js";
|
|
3
|
+
export * from "./docs/index.js";
|
|
4
|
+
export { readOpenApiContract } from "./openapi.js";
|
|
5
|
+
export type { components, operations, paths } from "./generated/openapi.js";
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"AAEA,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC,CAa3D"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { readFile } from "node:fs/promises";
|
|
2
|
+
export async function readOpenApiContract() {
|
|
3
|
+
const candidates = [
|
|
4
|
+
new URL("../../contracts/openapi.yaml", import.meta.url),
|
|
5
|
+
new URL("../contracts/openapi.yaml", import.meta.url),
|
|
6
|
+
];
|
|
7
|
+
for (const candidate of candidates) {
|
|
8
|
+
try {
|
|
9
|
+
return await readFile(candidate, "utf8");
|
|
10
|
+
}
|
|
11
|
+
catch (error) {
|
|
12
|
+
if (error.code !== "ENOENT")
|
|
13
|
+
throw error;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
throw new Error("the packaged SpicyAPI OpenAPI contract could not be found");
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=openapi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,MAAM,UAAU,GAAG;QACjB,IAAI,GAAG,CAAC,8BAA8B,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QACxD,IAAI,GAAG,CAAC,2BAA2B,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;KACtD,CAAC;IACF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,OAAO,MAAM,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC3C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAC;QACtE,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;AAC/E,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { ApiModel, Balance, BillableRequestOptions, CreateTaskInput, CreateTaskResult, DownloadTicket, ListModelsOptions, ModelList, RequestOptions, RetryTaskResult, ServiceStatus, SpicyClientOptions, TaskRecord, UploadBytesOptions, UploadContentType, UploadedFile, UploadFileOptions, UploadTicket, WaitForTaskOptions } from "./types.js";
|
|
2
|
+
export declare const DEFAULT_API_BASE_URL = "https://api.spicyapi.ai/api/v1";
|
|
3
|
+
export declare const DEFAULT_SERVICE_BASE_URL = "https://api.spicyapi.ai";
|
|
4
|
+
export declare const DEFAULT_TIMEOUT_MS = 30000;
|
|
5
|
+
export declare const DEFAULT_WAIT_TIMEOUT_MS: number;
|
|
6
|
+
export declare const DEFAULT_WAIT_INTERVAL_MS = 2000;
|
|
7
|
+
export declare const MAX_API_RESPONSE_BYTES: number;
|
|
8
|
+
export declare class SpicyClient {
|
|
9
|
+
private readonly apiKey;
|
|
10
|
+
private readonly apiBaseUrl;
|
|
11
|
+
private readonly serviceBaseUrl;
|
|
12
|
+
private readonly timeoutMs;
|
|
13
|
+
private readonly maxRetries;
|
|
14
|
+
private readonly retryBaseDelayMs;
|
|
15
|
+
private readonly maxRetryDelayMs;
|
|
16
|
+
private readonly transport;
|
|
17
|
+
private readonly now;
|
|
18
|
+
private readonly random;
|
|
19
|
+
private readonly sleep;
|
|
20
|
+
constructor(options?: SpicyClientOptions);
|
|
21
|
+
getStatus(options?: RequestOptions): Promise<ServiceStatus>;
|
|
22
|
+
listModels(options?: ListModelsOptions): Promise<ModelList>;
|
|
23
|
+
getModel(model: string, options?: RequestOptions): Promise<ApiModel>;
|
|
24
|
+
getBalance(options?: RequestOptions): Promise<Balance>;
|
|
25
|
+
getTask(taskId: string, options?: RequestOptions): Promise<TaskRecord>;
|
|
26
|
+
createTask(payload: CreateTaskInput, options?: BillableRequestOptions): Promise<CreateTaskResult>;
|
|
27
|
+
retryTask(taskId: string, options?: BillableRequestOptions): Promise<RetryTaskResult>;
|
|
28
|
+
waitForTask(taskId: string, options?: WaitForTaskOptions): Promise<TaskRecord>;
|
|
29
|
+
createUploadUrl(contentType: UploadContentType, bytes: number, options?: RequestOptions): Promise<UploadTicket>;
|
|
30
|
+
commitUploadedFile(fileId: string, options?: RequestOptions): Promise<UploadedFile>;
|
|
31
|
+
uploadBytes(data: Uint8Array, options: UploadBytesOptions): Promise<UploadedFile>;
|
|
32
|
+
uploadFile(filePath: string, options?: UploadFileOptions): Promise<UploadedFile>;
|
|
33
|
+
createDownloadUrl(taskId: string, key?: string, options?: RequestOptions): Promise<DownloadTicket>;
|
|
34
|
+
private idempotencyHeaders;
|
|
35
|
+
private probe;
|
|
36
|
+
private apiRequest;
|
|
37
|
+
private fetchWithRetry;
|
|
38
|
+
private fetchAttempt;
|
|
39
|
+
private retryDelay;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/sdk/client.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,QAAQ,EACR,OAAO,EACP,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,SAAS,EAET,cAAc,EACd,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,oBAAoB,mCAAmC,CAAC;AACrE,eAAO,MAAM,wBAAwB,4BAA4B,CAAC;AAClE,eAAO,MAAM,kBAAkB,QAAS,CAAC;AACzC,eAAO,MAAM,uBAAuB,QAAc,CAAC;AACnD,eAAO,MAAM,wBAAwB,OAAQ,CAAC;AAC9C,eAAO,MAAM,sBAAsB,QAAoB,CAAC;AA+GxD,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;IACzC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgE;gBAE1E,OAAO,GAAE,kBAAuB;IAoCtC,SAAS,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IAarE,UAAU,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,SAAS,CAAC;IAiB/D,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAQxE,UAAU,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAO1D,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;IAQ1E,UAAU,CACR,OAAO,EAAE,eAAe,EACxB,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,gBAAgB,CAAC;IAU5B,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,eAAe,CAAC;IAUnF,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAwBxF,eAAe,CACb,WAAW,EAAE,iBAAiB,EAC9B,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,YAAY,CAAC;IAOxB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;IAQjF,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;IAuBjF,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,YAAY,CAAC;IAQ1F,iBAAiB,CACf,MAAM,EAAE,MAAM,EACd,GAAG,CAAC,EAAE,MAAM,EACZ,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,cAAc,CAAC;IAU1B,OAAO,CAAC,kBAAkB;YAOZ,KAAK;YAsBL,UAAU;YAkEV,cAAc;YA4Bd,YAAY;IA8B1B,OAAO,CAAC,UAAU;CAMnB"}
|
|
@@ -0,0 +1,407 @@
|
|
|
1
|
+
import { readFile } from "node:fs/promises";
|
|
2
|
+
import { extname } from "node:path";
|
|
3
|
+
import { SpicyApiError, SpicyTimeoutError, SpicyTransportError, SpicyUploadError, SpicyWaitTimeoutError, } from "./errors.js";
|
|
4
|
+
export const DEFAULT_API_BASE_URL = "https://api.spicyapi.ai/api/v1";
|
|
5
|
+
export const DEFAULT_SERVICE_BASE_URL = "https://api.spicyapi.ai";
|
|
6
|
+
export const DEFAULT_TIMEOUT_MS = 30_000;
|
|
7
|
+
export const DEFAULT_WAIT_TIMEOUT_MS = 10 * 60_000;
|
|
8
|
+
export const DEFAULT_WAIT_INTERVAL_MS = 2_000;
|
|
9
|
+
export const MAX_API_RESPONSE_BYTES = 4 * 1_024 * 1_024;
|
|
10
|
+
const TERMINAL_STATES = new Set(["succeeded", "failed", "canceled", "expired"]);
|
|
11
|
+
const RETRYABLE_STATUSES = new Set([408, 429, 500, 502, 503, 504]);
|
|
12
|
+
const CONTENT_TYPES_BY_EXTENSION = {
|
|
13
|
+
".gif": "image/gif",
|
|
14
|
+
".jpeg": "image/jpeg",
|
|
15
|
+
".jpg": "image/jpeg",
|
|
16
|
+
".png": "image/png",
|
|
17
|
+
".webp": "image/webp",
|
|
18
|
+
};
|
|
19
|
+
function isLoopback(hostname) {
|
|
20
|
+
const normalized = hostname.replace(/^\[|\]$/g, "").toLowerCase();
|
|
21
|
+
return normalized === "localhost" || normalized === "::1" || normalized.startsWith("127.");
|
|
22
|
+
}
|
|
23
|
+
function normalizeBaseUrl(value, label) {
|
|
24
|
+
let url;
|
|
25
|
+
try {
|
|
26
|
+
url = new URL(value);
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
throw new TypeError(`${label} must be an absolute URL`);
|
|
30
|
+
}
|
|
31
|
+
if (url.protocol !== "https:" && !(url.protocol === "http:" && isLoopback(url.hostname))) {
|
|
32
|
+
throw new TypeError(`${label} must use HTTPS; HTTP is allowed only for loopback development`);
|
|
33
|
+
}
|
|
34
|
+
if (url.username || url.password)
|
|
35
|
+
throw new TypeError(`${label} must not contain credentials`);
|
|
36
|
+
if (url.search || url.hash)
|
|
37
|
+
throw new TypeError(`${label} must not contain a query or fragment`);
|
|
38
|
+
return url.toString().replace(/\/$/, "");
|
|
39
|
+
}
|
|
40
|
+
function requireIdentifier(value, label) {
|
|
41
|
+
const normalized = value.trim();
|
|
42
|
+
if (!normalized)
|
|
43
|
+
throw new TypeError(`${label} is required`);
|
|
44
|
+
if (normalized.includes("\r") || normalized.includes("\n")) {
|
|
45
|
+
throw new TypeError(`${label} must not contain line breaks`);
|
|
46
|
+
}
|
|
47
|
+
return normalized;
|
|
48
|
+
}
|
|
49
|
+
function parseIntegerHeader(value) {
|
|
50
|
+
if (value === null || !/^\d+$/.test(value))
|
|
51
|
+
return undefined;
|
|
52
|
+
const parsed = Number(value);
|
|
53
|
+
return Number.isSafeInteger(parsed) ? parsed : undefined;
|
|
54
|
+
}
|
|
55
|
+
function parseRetryAfter(value, now) {
|
|
56
|
+
if (value === null)
|
|
57
|
+
return undefined;
|
|
58
|
+
if (/^\d+(?:\.\d+)?$/.test(value))
|
|
59
|
+
return Math.max(0, Number(value) * 1_000);
|
|
60
|
+
const date = Date.parse(value);
|
|
61
|
+
return Number.isNaN(date) ? undefined : Math.max(0, date - now);
|
|
62
|
+
}
|
|
63
|
+
function abortError(signal) {
|
|
64
|
+
return signal.reason instanceof Error
|
|
65
|
+
? signal.reason
|
|
66
|
+
: new SpicyTransportError("operation canceled");
|
|
67
|
+
}
|
|
68
|
+
function defaultSleep(milliseconds, signal) {
|
|
69
|
+
if (signal?.aborted)
|
|
70
|
+
return Promise.reject(abortError(signal));
|
|
71
|
+
return new Promise((resolve, reject) => {
|
|
72
|
+
const timer = setTimeout(resolve, milliseconds);
|
|
73
|
+
signal?.addEventListener("abort", () => {
|
|
74
|
+
clearTimeout(timer);
|
|
75
|
+
reject(abortError(signal));
|
|
76
|
+
}, { once: true });
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
async function readBoundedText(response) {
|
|
80
|
+
const declared = parseIntegerHeader(response.headers.get("content-length"));
|
|
81
|
+
if (declared !== undefined && declared > MAX_API_RESPONSE_BYTES) {
|
|
82
|
+
throw new SpicyTransportError(`API response exceeded ${MAX_API_RESPONSE_BYTES} bytes`);
|
|
83
|
+
}
|
|
84
|
+
const bytes = new Uint8Array(await response.arrayBuffer());
|
|
85
|
+
if (bytes.byteLength > MAX_API_RESPONSE_BYTES) {
|
|
86
|
+
throw new SpicyTransportError(`API response exceeded ${MAX_API_RESPONSE_BYTES} bytes`);
|
|
87
|
+
}
|
|
88
|
+
return new TextDecoder().decode(bytes);
|
|
89
|
+
}
|
|
90
|
+
function inferContentType(filePath) {
|
|
91
|
+
const contentType = CONTENT_TYPES_BY_EXTENSION[extname(filePath).toLowerCase()];
|
|
92
|
+
if (!contentType) {
|
|
93
|
+
throw new TypeError("contentType is required unless the file extension is jpg, jpeg, png, webp, or gif");
|
|
94
|
+
}
|
|
95
|
+
return contentType;
|
|
96
|
+
}
|
|
97
|
+
export class SpicyClient {
|
|
98
|
+
apiKey;
|
|
99
|
+
apiBaseUrl;
|
|
100
|
+
serviceBaseUrl;
|
|
101
|
+
timeoutMs;
|
|
102
|
+
maxRetries;
|
|
103
|
+
retryBaseDelayMs;
|
|
104
|
+
maxRetryDelayMs;
|
|
105
|
+
transport;
|
|
106
|
+
now;
|
|
107
|
+
random;
|
|
108
|
+
sleep;
|
|
109
|
+
constructor(options = {}) {
|
|
110
|
+
const configuredKey = options.apiKey ?? process.env.SPICY_API_KEY;
|
|
111
|
+
this.apiKey = configuredKey?.trim() || undefined;
|
|
112
|
+
this.apiBaseUrl = normalizeBaseUrl(options.apiBaseUrl ?? process.env.SPICY_API_BASE_URL ?? DEFAULT_API_BASE_URL, "apiBaseUrl");
|
|
113
|
+
this.serviceBaseUrl = normalizeBaseUrl(options.serviceBaseUrl ?? process.env.SPICY_SERVICE_BASE_URL ?? DEFAULT_SERVICE_BASE_URL, "serviceBaseUrl");
|
|
114
|
+
this.timeoutMs = options.timeoutMs ?? DEFAULT_TIMEOUT_MS;
|
|
115
|
+
this.maxRetries = options.maxRetries ?? 2;
|
|
116
|
+
this.retryBaseDelayMs = options.retryBaseDelayMs ?? 250;
|
|
117
|
+
this.maxRetryDelayMs = options.maxRetryDelayMs ?? 30_000;
|
|
118
|
+
this.transport = options.fetch ?? globalThis.fetch;
|
|
119
|
+
this.now = options.now ?? Date.now;
|
|
120
|
+
this.random = options.random ?? Math.random;
|
|
121
|
+
this.sleep = options.sleep ?? defaultSleep;
|
|
122
|
+
if (!Number.isInteger(this.timeoutMs) || this.timeoutMs < 1 || this.timeoutMs > 120_000) {
|
|
123
|
+
throw new TypeError("timeoutMs must be an integer between 1 and 120000");
|
|
124
|
+
}
|
|
125
|
+
if (!Number.isInteger(this.maxRetries) || this.maxRetries < 0 || this.maxRetries > 5) {
|
|
126
|
+
throw new TypeError("maxRetries must be an integer between 0 and 5");
|
|
127
|
+
}
|
|
128
|
+
if (!Number.isInteger(this.retryBaseDelayMs) || this.retryBaseDelayMs < 1) {
|
|
129
|
+
throw new TypeError("retryBaseDelayMs must be a positive integer");
|
|
130
|
+
}
|
|
131
|
+
if (!Number.isInteger(this.maxRetryDelayMs) || this.maxRetryDelayMs < this.retryBaseDelayMs) {
|
|
132
|
+
throw new TypeError("maxRetryDelayMs must be an integer no smaller than retryBaseDelayMs");
|
|
133
|
+
}
|
|
134
|
+
if (typeof this.transport !== "function")
|
|
135
|
+
throw new TypeError("a fetch implementation is required");
|
|
136
|
+
}
|
|
137
|
+
async getStatus(options = {}) {
|
|
138
|
+
const [health, readiness] = await Promise.all([
|
|
139
|
+
this.probe("/healthz", options.signal),
|
|
140
|
+
this.probe("/readyz", options.signal),
|
|
141
|
+
]);
|
|
142
|
+
return {
|
|
143
|
+
operational: health.ok && readiness.ok,
|
|
144
|
+
health,
|
|
145
|
+
readiness,
|
|
146
|
+
checkedAt: new Date(this.now()).toISOString(),
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
listModels(options = {}) {
|
|
150
|
+
const query = new URLSearchParams();
|
|
151
|
+
if (options.modality !== undefined)
|
|
152
|
+
query.set("modality", options.modality);
|
|
153
|
+
if (options.provider !== undefined)
|
|
154
|
+
query.set("provider", options.provider);
|
|
155
|
+
if (options.task !== undefined)
|
|
156
|
+
query.set("task", options.task);
|
|
157
|
+
if (options.search !== undefined)
|
|
158
|
+
query.set("search", options.search);
|
|
159
|
+
if (options.includeSchema !== undefined)
|
|
160
|
+
query.set("includeSchema", options.includeSchema ? "1" : "0");
|
|
161
|
+
if (options.includeExamples !== undefined)
|
|
162
|
+
query.set("includeExamples", options.includeExamples ? "1" : "0");
|
|
163
|
+
const suffix = query.size === 0 ? "" : `?${query.toString()}`;
|
|
164
|
+
return this.apiRequest("GET", `/models${suffix}`, {
|
|
165
|
+
retryable: true,
|
|
166
|
+
signal: options.signal,
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
getModel(model, options = {}) {
|
|
170
|
+
const value = encodeURIComponent(requireIdentifier(model, "model"));
|
|
171
|
+
return this.apiRequest("GET", `/models/${value}`, {
|
|
172
|
+
retryable: true,
|
|
173
|
+
signal: options.signal,
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
getBalance(options = {}) {
|
|
177
|
+
return this.apiRequest("GET", "/chat/credit", {
|
|
178
|
+
retryable: true,
|
|
179
|
+
signal: options.signal,
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
getTask(taskId, options = {}) {
|
|
183
|
+
const query = new URLSearchParams({ taskId: requireIdentifier(taskId, "taskId") });
|
|
184
|
+
return this.apiRequest("GET", `/jobs/recordInfo?${query.toString()}`, {
|
|
185
|
+
retryable: true,
|
|
186
|
+
signal: options.signal,
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
createTask(payload, options = {}) {
|
|
190
|
+
const headers = this.idempotencyHeaders(options.idempotencyKey);
|
|
191
|
+
return this.apiRequest("POST", "/jobs/createTask", {
|
|
192
|
+
body: { ...payload, mature: payload.mature ?? false },
|
|
193
|
+
headers,
|
|
194
|
+
retryable: headers !== undefined,
|
|
195
|
+
signal: options.signal,
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
retryTask(taskId, options = {}) {
|
|
199
|
+
const headers = this.idempotencyHeaders(options.idempotencyKey);
|
|
200
|
+
return this.apiRequest("POST", "/jobs/retry", {
|
|
201
|
+
body: { taskId: requireIdentifier(taskId, "taskId") },
|
|
202
|
+
headers,
|
|
203
|
+
retryable: headers !== undefined,
|
|
204
|
+
signal: options.signal,
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
async waitForTask(taskId, options = {}) {
|
|
208
|
+
const id = requireIdentifier(taskId, "taskId");
|
|
209
|
+
const intervalMs = options.intervalMs ?? DEFAULT_WAIT_INTERVAL_MS;
|
|
210
|
+
const timeoutMs = options.timeoutMs ?? DEFAULT_WAIT_TIMEOUT_MS;
|
|
211
|
+
if (!Number.isInteger(intervalMs) || intervalMs < 100 || intervalMs > 60_000) {
|
|
212
|
+
throw new TypeError("intervalMs must be an integer between 100 and 60000");
|
|
213
|
+
}
|
|
214
|
+
if (!Number.isInteger(timeoutMs) || timeoutMs < 1 || timeoutMs > 24 * 60 * 60_000) {
|
|
215
|
+
throw new TypeError("timeoutMs must be an integer between 1 and 86400000");
|
|
216
|
+
}
|
|
217
|
+
const startedAt = this.now();
|
|
218
|
+
let lastTask;
|
|
219
|
+
while (this.now() - startedAt <= timeoutMs) {
|
|
220
|
+
lastTask = await this.getTask(id, { signal: options.signal });
|
|
221
|
+
await options.onUpdate?.(lastTask);
|
|
222
|
+
if (TERMINAL_STATES.has(lastTask.state))
|
|
223
|
+
return lastTask;
|
|
224
|
+
const remaining = timeoutMs - (this.now() - startedAt);
|
|
225
|
+
if (remaining <= 0)
|
|
226
|
+
break;
|
|
227
|
+
await this.sleep(Math.min(intervalMs, remaining), options.signal);
|
|
228
|
+
}
|
|
229
|
+
throw new SpicyWaitTimeoutError(id, timeoutMs, lastTask);
|
|
230
|
+
}
|
|
231
|
+
createUploadUrl(contentType, bytes, options = {}) {
|
|
232
|
+
return this.apiRequest("POST", "/common/upload-url", {
|
|
233
|
+
body: { contentType, bytes },
|
|
234
|
+
signal: options.signal,
|
|
235
|
+
});
|
|
236
|
+
}
|
|
237
|
+
commitUploadedFile(fileId, options = {}) {
|
|
238
|
+
const id = encodeURIComponent(requireIdentifier(fileId, "fileId"));
|
|
239
|
+
return this.apiRequest("POST", `/files/${id}/commit`, {
|
|
240
|
+
retryable: true,
|
|
241
|
+
signal: options.signal,
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
async uploadBytes(data, options) {
|
|
245
|
+
const ticket = await this.createUploadUrl(options.contentType, data.byteLength, options);
|
|
246
|
+
const response = await this.fetchWithRetry(ticket.uploadUrl, {
|
|
247
|
+
method: ticket.method,
|
|
248
|
+
headers: ticket.headers,
|
|
249
|
+
body: Uint8Array.from(data).buffer,
|
|
250
|
+
}, false, options.signal);
|
|
251
|
+
if (!response.ok) {
|
|
252
|
+
await response.body?.cancel();
|
|
253
|
+
throw new SpicyUploadError(`presigned upload failed with HTTP ${response.status}`, response.status);
|
|
254
|
+
}
|
|
255
|
+
await response.body?.cancel();
|
|
256
|
+
return this.commitUploadedFile(ticket.fileId, options);
|
|
257
|
+
}
|
|
258
|
+
async uploadFile(filePath, options = {}) {
|
|
259
|
+
const data = await readFile(filePath);
|
|
260
|
+
return this.uploadBytes(data, {
|
|
261
|
+
contentType: options.contentType ?? inferContentType(filePath),
|
|
262
|
+
...(options.signal === undefined ? {} : { signal: options.signal }),
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
createDownloadUrl(taskId, key, options = {}) {
|
|
266
|
+
return this.apiRequest("POST", "/common/download-url", {
|
|
267
|
+
body: {
|
|
268
|
+
taskId: requireIdentifier(taskId, "taskId"),
|
|
269
|
+
...(key === undefined ? {} : { key }),
|
|
270
|
+
},
|
|
271
|
+
signal: options.signal,
|
|
272
|
+
});
|
|
273
|
+
}
|
|
274
|
+
idempotencyHeaders(idempotencyKey) {
|
|
275
|
+
if (idempotencyKey === undefined)
|
|
276
|
+
return undefined;
|
|
277
|
+
return { "Idempotency-Key": requireIdentifier(idempotencyKey, "idempotencyKey") };
|
|
278
|
+
}
|
|
279
|
+
async probe(path, signal) {
|
|
280
|
+
try {
|
|
281
|
+
const response = await this.fetchWithRetry(`${this.serviceBaseUrl}${path}`, { method: "GET", headers: { Accept: "application/json, text/plain;q=0.9" } }, true, signal);
|
|
282
|
+
const body = (await readBoundedText(response)).trim().slice(0, 512);
|
|
283
|
+
return { path, ok: response.ok, status: response.status, body };
|
|
284
|
+
}
|
|
285
|
+
catch (error) {
|
|
286
|
+
if (signal?.aborted)
|
|
287
|
+
throw error;
|
|
288
|
+
return {
|
|
289
|
+
path,
|
|
290
|
+
ok: false,
|
|
291
|
+
status: 0,
|
|
292
|
+
body: "",
|
|
293
|
+
error: error instanceof Error ? error.message : "unknown probe error",
|
|
294
|
+
};
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
async apiRequest(method, path, configuration = {}) {
|
|
298
|
+
if (!this.apiKey)
|
|
299
|
+
throw new TypeError("SPICY_API_KEY is required for authenticated API operations");
|
|
300
|
+
const response = await this.fetchWithRetry(`${this.apiBaseUrl}${path}`, {
|
|
301
|
+
method,
|
|
302
|
+
headers: {
|
|
303
|
+
Accept: "application/json",
|
|
304
|
+
Authorization: `Bearer ${this.apiKey}`,
|
|
305
|
+
"User-Agent": "SpicyAPI-Devkit/0.1.0",
|
|
306
|
+
...(configuration.body === undefined ? {} : { "Content-Type": "application/json" }),
|
|
307
|
+
...configuration.headers,
|
|
308
|
+
},
|
|
309
|
+
...(configuration.body === undefined ? {} : { body: JSON.stringify(configuration.body) }),
|
|
310
|
+
}, configuration.retryable ?? false, configuration.signal);
|
|
311
|
+
const text = await readBoundedText(response);
|
|
312
|
+
let parsed;
|
|
313
|
+
try {
|
|
314
|
+
parsed = JSON.parse(text);
|
|
315
|
+
}
|
|
316
|
+
catch {
|
|
317
|
+
throw new SpicyApiError("API response was not valid JSON", { status: response.status });
|
|
318
|
+
}
|
|
319
|
+
if (parsed === null || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
320
|
+
throw new SpicyApiError("API response was not a JSON object", { status: response.status });
|
|
321
|
+
}
|
|
322
|
+
const envelope = parsed;
|
|
323
|
+
const code = typeof envelope.code === "number" ? envelope.code : undefined;
|
|
324
|
+
const requestId = typeof envelope.request_id === "string" ? envelope.request_id : undefined;
|
|
325
|
+
if (!response.ok || code !== 200) {
|
|
326
|
+
const retryAfterMs = parseRetryAfter(response.headers.get("retry-after"), this.now());
|
|
327
|
+
const rateLimitLimit = parseIntegerHeader(response.headers.get("x-ratelimit-limit"));
|
|
328
|
+
const rateLimitRemaining = parseIntegerHeader(response.headers.get("x-ratelimit-remaining"));
|
|
329
|
+
throw new SpicyApiError(typeof envelope.msg === "string" && envelope.msg
|
|
330
|
+
? envelope.msg
|
|
331
|
+
: `request failed with HTTP ${response.status}`, {
|
|
332
|
+
status: response.status,
|
|
333
|
+
...(code === undefined ? {} : { code }),
|
|
334
|
+
...(requestId === undefined ? {} : { requestId }),
|
|
335
|
+
...(retryAfterMs === undefined ? {} : { retryAfterSeconds: retryAfterMs / 1_000 }),
|
|
336
|
+
...(rateLimitLimit === undefined ? {} : { rateLimitLimit }),
|
|
337
|
+
...(rateLimitRemaining === undefined ? {} : { rateLimitRemaining }),
|
|
338
|
+
});
|
|
339
|
+
}
|
|
340
|
+
if (!("data" in envelope)) {
|
|
341
|
+
throw new SpicyApiError("successful API response omitted data", {
|
|
342
|
+
status: response.status,
|
|
343
|
+
...(code === undefined ? {} : { code }),
|
|
344
|
+
...(requestId === undefined ? {} : { requestId }),
|
|
345
|
+
});
|
|
346
|
+
}
|
|
347
|
+
return envelope.data;
|
|
348
|
+
}
|
|
349
|
+
async fetchWithRetry(url, init, retryable, signal) {
|
|
350
|
+
let lastError;
|
|
351
|
+
for (let attempt = 0; attempt <= this.maxRetries; attempt += 1) {
|
|
352
|
+
try {
|
|
353
|
+
const response = await this.fetchAttempt(url, init, signal);
|
|
354
|
+
if (!retryable || !RETRYABLE_STATUSES.has(response.status) || attempt === this.maxRetries) {
|
|
355
|
+
return response;
|
|
356
|
+
}
|
|
357
|
+
const retryAfter = parseRetryAfter(response.headers.get("retry-after"), this.now());
|
|
358
|
+
await response.body?.cancel();
|
|
359
|
+
await this.sleep(this.retryDelay(attempt, retryAfter), signal);
|
|
360
|
+
}
|
|
361
|
+
catch (error) {
|
|
362
|
+
if (signal?.aborted)
|
|
363
|
+
throw error;
|
|
364
|
+
lastError = error;
|
|
365
|
+
if (!retryable || attempt === this.maxRetries)
|
|
366
|
+
throw error;
|
|
367
|
+
await this.sleep(this.retryDelay(attempt), signal);
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
throw new SpicyTransportError("network request failed", {
|
|
371
|
+
cause: lastError instanceof Error ? lastError : undefined,
|
|
372
|
+
});
|
|
373
|
+
}
|
|
374
|
+
async fetchAttempt(url, init, signal) {
|
|
375
|
+
const controller = new AbortController();
|
|
376
|
+
const onAbort = () => controller.abort(signal?.reason);
|
|
377
|
+
signal?.addEventListener("abort", onAbort, { once: true });
|
|
378
|
+
const timer = setTimeout(() => controller.abort(new SpicyTimeoutError(this.timeoutMs)), this.timeoutMs);
|
|
379
|
+
try {
|
|
380
|
+
return await this.transport(url, { ...init, signal: controller.signal });
|
|
381
|
+
}
|
|
382
|
+
catch (error) {
|
|
383
|
+
if (signal?.aborted) {
|
|
384
|
+
throw signal.reason instanceof Error
|
|
385
|
+
? signal.reason
|
|
386
|
+
: new SpicyTransportError("operation canceled");
|
|
387
|
+
}
|
|
388
|
+
if (controller.signal.reason instanceof SpicyTimeoutError)
|
|
389
|
+
throw controller.signal.reason;
|
|
390
|
+
throw new SpicyTransportError("network request failed", {
|
|
391
|
+
cause: error instanceof Error ? error : undefined,
|
|
392
|
+
});
|
|
393
|
+
}
|
|
394
|
+
finally {
|
|
395
|
+
clearTimeout(timer);
|
|
396
|
+
signal?.removeEventListener("abort", onAbort);
|
|
397
|
+
}
|
|
398
|
+
}
|
|
399
|
+
retryDelay(attempt, retryAfter) {
|
|
400
|
+
if (retryAfter !== undefined)
|
|
401
|
+
return Math.min(retryAfter, this.maxRetryDelayMs);
|
|
402
|
+
const exponential = this.retryBaseDelayMs * 2 ** attempt;
|
|
403
|
+
const jitter = 0.75 + this.random() * 0.5;
|
|
404
|
+
return Math.min(Math.round(exponential * jitter), this.maxRetryDelayMs);
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/sdk/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAwBrB,MAAM,CAAC,MAAM,oBAAoB,GAAG,gCAAgC,CAAC;AACrE,MAAM,CAAC,MAAM,wBAAwB,GAAG,yBAAyB,CAAC;AAClE,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AACzC,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,GAAG,MAAM,CAAC;AACnD,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAC9C,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAG,KAAK,GAAG,KAAK,CAAC;AAgBxD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;AAChF,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AACnE,MAAM,0BAA0B,GAAsC;IACpE,MAAM,EAAE,WAAW;IACnB,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,WAAW;IACnB,OAAO,EAAE,YAAY;CACtB,CAAC;AAEF,SAAS,UAAU,CAAC,QAAgB;IAClC,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAClE,OAAO,UAAU,KAAK,WAAW,IAAI,UAAU,KAAK,KAAK,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAC7F,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa,EAAE,KAAa;IACpD,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,0BAA0B,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QACzF,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,gEAAgE,CAAC,CAAC;IAChG,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ;QAAE,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,+BAA+B,CAAC,CAAC;IAC/F,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI;QAAE,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,uCAAuC,CAAC,CAAC;IACjG,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa,EAAE,KAAa;IACrD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAChC,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,cAAc,CAAC,CAAC;IAC7D,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,+BAA+B,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAoB;IAC9C,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,OAAO,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,CAAC;AAED,SAAS,eAAe,CAAC,KAAoB,EAAE,GAAW;IACxD,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IACrC,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;IAC7E,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/B,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,GAAG,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,UAAU,CAAC,MAAmB;IACrC,OAAO,MAAM,CAAC,MAAM,YAAY,KAAK;QACnC,CAAC,CAAC,MAAM,CAAC,MAAM;QACf,CAAC,CAAC,IAAI,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,YAAY,CAAC,YAAoB,EAAE,MAAoB;IAC9D,IAAI,MAAM,EAAE,OAAO;QAAE,OAAO,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAChD,MAAM,EAAE,gBAAgB,CACtB,OAAO,EACP,GAAG,EAAE;YACH,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7B,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,QAAkB;IAC/C,MAAM,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC5E,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,GAAG,sBAAsB,EAAE,CAAC;QAChE,MAAM,IAAI,mBAAmB,CAAC,yBAAyB,sBAAsB,QAAQ,CAAC,CAAC;IACzF,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3D,IAAI,KAAK,CAAC,UAAU,GAAG,sBAAsB,EAAE,CAAC;QAC9C,MAAM,IAAI,mBAAmB,CAAC,yBAAyB,sBAAsB,QAAQ,CAAC,CAAC;IACzF,CAAC;IACD,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAgB;IACxC,MAAM,WAAW,GAAG,0BAA0B,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAChF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,SAAS,CACjB,mFAAmF,CACpF,CAAC;IACJ,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,OAAO,WAAW;IACL,MAAM,CAAqB;IAC3B,UAAU,CAAS;IACnB,cAAc,CAAS;IACvB,SAAS,CAAS;IAClB,UAAU,CAAS;IACnB,gBAAgB,CAAS;IACzB,eAAe,CAAS;IACxB,SAAS,CAAe;IACxB,GAAG,CAAe;IAClB,MAAM,CAAe;IACrB,KAAK,CAAgE;IAEtF,YAAY,UAA8B,EAAE;QAC1C,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;QAClE,IAAI,CAAC,MAAM,GAAG,aAAa,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;QACjD,IAAI,CAAC,UAAU,GAAG,gBAAgB,CAChC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,oBAAoB,EAC5E,YAAY,CACb,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,gBAAgB,CACpC,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,wBAAwB,EACxF,gBAAgB,CACjB,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,kBAAkB,CAAC;QACzD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,GAAG,CAAC;QACxD,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,MAAM,CAAC;QACzD,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;QACnD,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QAC5C,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,YAAY,CAAC;QAE3C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,IAAI,CAAC,SAAS,GAAG,OAAO,EAAE,CAAC;YACxF,MAAM,IAAI,SAAS,CAAC,mDAAmD,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YACrF,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,gBAAgB,GAAG,CAAC,EAAE,CAAC;YAC1E,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;QACrE,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC5F,MAAM,IAAI,SAAS,CAAC,qEAAqE,CAAC,CAAC;QAC7F,CAAC;QACD,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,UAAU;YACtC,MAAM,IAAI,SAAS,CAAC,oCAAoC,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,UAA0B,EAAE;QAC1C,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC;YACtC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC;SACtC,CAAC,CAAC;QACH,OAAO;YACL,WAAW,EAAE,MAAM,CAAC,EAAE,IAAI,SAAS,CAAC,EAAE;YACtC,MAAM;YACN,SAAS;YACT,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,EAAE;SAC9C,CAAC;IACJ,CAAC;IAED,UAAU,CAAC,UAA6B,EAAE;QACxC,MAAM,KAAK,GAAG,IAAI,eAAe,EAAE,CAAC;QACpC,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;YAAE,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5E,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;YAAE,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5E,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;YAAE,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAChE,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;YAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACtE,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS;YACrC,KAAK,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAChE,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS;YACvC,KAAK,CAAC,GAAG,CAAC,iBAAiB,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACpE,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC9D,OAAO,IAAI,CAAC,UAAU,CAAY,KAAK,EAAE,UAAU,MAAM,EAAE,EAAE;YAC3D,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;IACL,CAAC;IAED,QAAQ,CAAC,KAAa,EAAE,UAA0B,EAAE;QAClD,MAAM,KAAK,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC,UAAU,CAAW,KAAK,EAAE,WAAW,KAAK,EAAE,EAAE;YAC1D,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;IACL,CAAC;IAED,UAAU,CAAC,UAA0B,EAAE;QACrC,OAAO,IAAI,CAAC,UAAU,CAAU,KAAK,EAAE,cAAc,EAAE;YACrD,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,MAAc,EAAE,UAA0B,EAAE;QAClD,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;QACnF,OAAO,IAAI,CAAC,UAAU,CAAa,KAAK,EAAE,oBAAoB,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE;YAChF,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;IACL,CAAC;IAED,UAAU,CACR,OAAwB,EACxB,UAAkC,EAAE;QAEpC,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,UAAU,CAAmB,MAAM,EAAE,kBAAkB,EAAE;YACnE,IAAI,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,KAAK,EAAE;YACrD,OAAO;YACP,SAAS,EAAE,OAAO,KAAK,SAAS;YAChC,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;IACL,CAAC;IAED,SAAS,CAAC,MAAc,EAAE,UAAkC,EAAE;QAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,UAAU,CAAkB,MAAM,EAAE,aAAa,EAAE;YAC7D,IAAI,EAAE,EAAE,MAAM,EAAE,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE;YACrD,OAAO;YACP,SAAS,EAAE,OAAO,KAAK,SAAS;YAChC,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,UAA8B,EAAE;QAChE,MAAM,EAAE,GAAG,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,wBAAwB,CAAC;QAClE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,uBAAuB,CAAC;QAC/D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,GAAG,IAAI,UAAU,GAAG,MAAM,EAAE,CAAC;YAC7E,MAAM,IAAI,SAAS,CAAC,qDAAqD,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,SAAS,GAAG,CAAC,IAAI,SAAS,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;YAClF,MAAM,IAAI,SAAS,CAAC,qDAAqD,CAAC,CAAC;QAC7E,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,QAAgC,CAAC;QACrC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,IAAI,SAAS,EAAE,CAAC;YAC3C,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAC9D,MAAM,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC;YACnC,IAAI,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,OAAO,QAAQ,CAAC;YACzD,MAAM,SAAS,GAAG,SAAS,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;YACvD,IAAI,SAAS,IAAI,CAAC;gBAAE,MAAM;YAC1B,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACpE,CAAC;QACD,MAAM,IAAI,qBAAqB,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED,eAAe,CACb,WAA8B,EAC9B,KAAa,EACb,UAA0B,EAAE;QAE5B,OAAO,IAAI,CAAC,UAAU,CAAe,MAAM,EAAE,oBAAoB,EAAE;YACjE,IAAI,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;YAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;IACL,CAAC;IAED,kBAAkB,CAAC,MAAc,EAAE,UAA0B,EAAE;QAC7D,MAAM,EAAE,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,UAAU,CAAe,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE;YAClE,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,IAAgB,EAAE,OAA2B;QAC7D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACzF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CACxC,MAAM,CAAC,SAAS,EAChB;YACE,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;SACnC,EACD,KAAK,EACL,OAAO,CAAC,MAAM,CACf,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;YAC9B,MAAM,IAAI,gBAAgB,CACxB,qCAAqC,QAAQ,CAAC,MAAM,EAAE,EACtD,QAAQ,CAAC,MAAM,CAChB,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,UAA6B,EAAE;QAChE,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;YAC5B,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,gBAAgB,CAAC,QAAQ,CAAC;YAC9D,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;SACpE,CAAC,CAAC;IACL,CAAC;IAED,iBAAiB,CACf,MAAc,EACd,GAAY,EACZ,UAA0B,EAAE;QAE5B,OAAO,IAAI,CAAC,UAAU,CAAiB,MAAM,EAAE,sBAAsB,EAAE;YACrE,IAAI,EAAE;gBACJ,MAAM,EAAE,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC;gBAC3C,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;aACtC;YACD,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;IACL,CAAC;IAEO,kBAAkB,CACxB,cAAkC;QAElC,IAAI,cAAc,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QACnD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,cAAc,EAAE,gBAAgB,CAAC,EAAE,CAAC;IACpF,CAAC;IAEO,KAAK,CAAC,KAAK,CAAC,IAAyB,EAAE,MAAoB;QACjE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CACxC,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,EAAE,EAC/B,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,oCAAoC,EAAE,EAAE,EAC5E,IAAI,EACJ,MAAM,CACP,CAAC;YACF,MAAM,IAAI,GAAG,CAAC,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACpE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;QAClE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,MAAM,EAAE,OAAO;gBAAE,MAAM,KAAK,CAAC;YACjC,OAAO;gBACL,IAAI;gBACJ,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,CAAC;gBACT,IAAI,EAAE,EAAE;gBACR,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB;aACtE,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,UAAU,CACtB,MAAsB,EACtB,IAAY,EACZ,gBAAsC,EAAE;QAExC,IAAI,CAAC,IAAI,CAAC,MAAM;YACd,MAAM,IAAI,SAAS,CAAC,4DAA4D,CAAC,CAAC;QACpF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CACxC,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,EAAE,EAC3B;YACE,MAAM;YACN,OAAO,EAAE;gBACP,MAAM,EAAE,kBAAkB;gBAC1B,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;gBACtC,YAAY,EAAE,uBAAuB;gBACrC,GAAG,CAAC,aAAa,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;gBACnF,GAAG,aAAa,CAAC,OAAO;aACzB;YACD,GAAG,CAAC,aAAa,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;SAC1F,EACD,aAAa,CAAC,SAAS,IAAI,KAAK,EAChC,aAAa,CAAC,MAAM,CACrB,CAAC;QAEF,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,aAAa,CAAC,iCAAiC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1F,CAAC;QACD,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3E,MAAM,IAAI,aAAa,CAAC,oCAAoC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7F,CAAC;QAED,MAAM,QAAQ,GAAG,MAA8B,CAAC;QAChD,MAAM,IAAI,GAAG,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3E,MAAM,SAAS,GAAG,OAAO,QAAQ,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5F,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACtF,MAAM,cAAc,GAAG,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC;YACrF,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC;YAC7F,MAAM,IAAI,aAAa,CACrB,OAAO,QAAQ,CAAC,GAAG,KAAK,QAAQ,IAAI,QAAQ,CAAC,GAAG;gBAC9C,CAAC,CAAC,QAAQ,CAAC,GAAG;gBACd,CAAC,CAAC,4BAA4B,QAAQ,CAAC,MAAM,EAAE,EACjD;gBACE,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;gBACvC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;gBACjD,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,YAAY,GAAG,KAAK,EAAE,CAAC;gBAClF,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC;gBAC3D,GAAG,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC;aACpE,CACF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,aAAa,CAAC,sCAAsC,EAAE;gBAC9D,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;gBACvC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;aAClD,CAAC,CAAC;QACL,CAAC;QACD,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,cAAc,CAC1B,GAAW,EACX,IAAiB,EACjB,SAAkB,EAClB,MAAoB;QAEpB,IAAI,SAAkB,CAAC;QACvB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;YAC/D,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC5D,IAAI,CAAC,SAAS,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;oBAC1F,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBACD,MAAM,UAAU,GAAG,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;gBACpF,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;gBAC9B,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;YACjE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,MAAM,EAAE,OAAO;oBAAE,MAAM,KAAK,CAAC;gBACjC,SAAS,GAAG,KAAK,CAAC;gBAClB,IAAI,CAAC,SAAS,IAAI,OAAO,KAAK,IAAI,CAAC,UAAU;oBAAE,MAAM,KAAK,CAAC;gBAC3D,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QACD,MAAM,IAAI,mBAAmB,CAAC,wBAAwB,EAAE;YACtD,KAAK,EAAE,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;SAC1D,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,YAAY,CACxB,GAAW,EACX,IAAiB,EACjB,MAAoB;QAEpB,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,GAAS,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7D,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,MAAM,KAAK,GAAG,UAAU,CACtB,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAC7D,IAAI,CAAC,SAAS,CACf,CAAC;QACF,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;gBACpB,MAAM,MAAM,CAAC,MAAM,YAAY,KAAK;oBAClC,CAAC,CAAC,MAAM,CAAC,MAAM;oBACf,CAAC,CAAC,IAAI,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;YACpD,CAAC;YACD,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,YAAY,iBAAiB;gBAAE,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;YAC1F,MAAM,IAAI,mBAAmB,CAAC,wBAAwB,EAAE;gBACtD,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;aAClD,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAEO,UAAU,CAAC,OAAe,EAAE,UAAmB;QACrD,IAAI,UAAU,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAChF,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,GAAG,CAAC,IAAI,OAAO,CAAC;QACzD,MAAM,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC;QAC1C,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IAC1E,CAAC;CACF"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { TaskRecord } from "./types.js";
|
|
2
|
+
export interface SpicyApiErrorOptions {
|
|
3
|
+
status: number;
|
|
4
|
+
code?: number | undefined;
|
|
5
|
+
requestId?: string | undefined;
|
|
6
|
+
retryAfterSeconds?: number | undefined;
|
|
7
|
+
rateLimitLimit?: number | undefined;
|
|
8
|
+
rateLimitRemaining?: number | undefined;
|
|
9
|
+
}
|
|
10
|
+
export declare class SpicyApiError extends Error {
|
|
11
|
+
readonly status: number;
|
|
12
|
+
readonly code: number | undefined;
|
|
13
|
+
readonly requestId: string | undefined;
|
|
14
|
+
readonly retryAfterSeconds: number | undefined;
|
|
15
|
+
readonly rateLimitLimit: number | undefined;
|
|
16
|
+
readonly rateLimitRemaining: number | undefined;
|
|
17
|
+
constructor(message: string, options: SpicyApiErrorOptions);
|
|
18
|
+
}
|
|
19
|
+
export declare class SpicyTransportError extends Error {
|
|
20
|
+
constructor(message: string, options?: ErrorOptions);
|
|
21
|
+
}
|
|
22
|
+
export declare class SpicyTimeoutError extends SpicyTransportError {
|
|
23
|
+
readonly timeoutMs: number;
|
|
24
|
+
constructor(timeoutMs: number);
|
|
25
|
+
}
|
|
26
|
+
export declare class SpicyWaitTimeoutError extends Error {
|
|
27
|
+
readonly taskId: string;
|
|
28
|
+
readonly timeoutMs: number;
|
|
29
|
+
readonly lastTask: TaskRecord | undefined;
|
|
30
|
+
constructor(taskId: string, timeoutMs: number, lastTask?: TaskRecord);
|
|
31
|
+
}
|
|
32
|
+
export declare class SpicyUploadError extends Error {
|
|
33
|
+
readonly status: number;
|
|
34
|
+
constructor(message: string, status: number);
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=errors.d.ts.map
|