@glubean/sdk 0.1.39 → 0.2.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/dist/contract-core.d.ts +96 -0
- package/dist/contract-core.d.ts.map +1 -0
- package/dist/contract-core.js +747 -0
- package/dist/contract-core.js.map +1 -0
- package/dist/contract-http/adapter.d.ts +52 -0
- package/dist/contract-http/adapter.d.ts.map +1 -0
- package/dist/contract-http/adapter.js +650 -0
- package/dist/contract-http/adapter.js.map +1 -0
- package/dist/contract-http/factory.d.ts +32 -0
- package/dist/contract-http/factory.d.ts.map +1 -0
- package/dist/contract-http/factory.js +83 -0
- package/dist/contract-http/factory.js.map +1 -0
- package/dist/contract-http/flow-helpers.d.ts +12 -0
- package/dist/contract-http/flow-helpers.d.ts.map +1 -0
- package/dist/contract-http/flow-helpers.js +34 -0
- package/dist/contract-http/flow-helpers.js.map +1 -0
- package/dist/contract-http/index.d.ts +15 -0
- package/dist/contract-http/index.d.ts.map +1 -0
- package/dist/contract-http/index.js +14 -0
- package/dist/contract-http/index.js.map +1 -0
- package/dist/contract-http/markdown.d.ts +10 -0
- package/dist/contract-http/markdown.d.ts.map +1 -0
- package/dist/contract-http/markdown.js +21 -0
- package/dist/contract-http/markdown.js.map +1 -0
- package/dist/contract-http/openapi.d.ts +15 -0
- package/dist/contract-http/openapi.d.ts.map +1 -0
- package/dist/contract-http/openapi.js +38 -0
- package/dist/contract-http/openapi.js.map +1 -0
- package/dist/contract-http/types.d.ts +252 -0
- package/dist/contract-http/types.d.ts.map +1 -0
- package/dist/contract-http/types.js +13 -0
- package/dist/contract-http/types.js.map +1 -0
- package/dist/contract-types.d.ts +420 -467
- package/dist/contract-types.d.ts.map +1 -1
- package/dist/contract-types.js +16 -4
- package/dist/contract-types.js.map +1 -1
- package/dist/index.d.ts +21 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +24 -2
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +22 -10
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/contract.d.ts +0 -64
- package/dist/contract.d.ts.map +0 -1
- package/dist/contract.js +0 -793
- package/dist/contract.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/contract-http/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AA8BH,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,gFAAgF;AAChF,6DAA6D;AAC7D,gFAAgF;AAEhF,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC5C,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACvC,IAAI,QAAQ,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC9D,OAAO;QACL,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,WAAW,EAAE;QACjD,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC;KACnC,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,CAAU;IACnC,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC;IACpC,IAAI,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;QAC/C,OAAO,MAAM,CAAE,CAAuB,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,MAA2C;IAE3C,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,MAAM,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,aAAa,CACpB,IAAY,EACZ,MAA0C;IAE1C,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,EAAE,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,yBAAyB,GAAG;IAChC,MAAM;IACN,aAAa;IACb,SAAS;IACT,SAAS;IACT,UAAU;CACF,CAAC;AAUX,MAAM,UAAU,gBAAgB,CAC9B,GAA4B;IAE5B,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACtD,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,IAAI,CACvD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAK,GAA+B,CAC7C,CAAC;IACF,IAAI,kBAAkB;QAAE,OAAO,GAAwB,CAAC;IACxD,OAAO,EAAE,IAAI,EAAE,GAA0B,EAAE,CAAC;AAC9C,CAAC;AAED,SAAS,uBAAuB,CAC9B,IAAa,EACb,WAA+B;IAE/B,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IAClC,MAAM,EAAE,GAAG,CAAC,WAAW,IAAI,kBAAkB,CAAC,CAAC,WAAW,EAAE,CAAC;IAE7D,IAAI,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACtC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;IACD,IAAI,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACzC,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,IAAI,YAAY,QAAQ,EAAE,CAAC;YAChE,OAAO,EAAE,IAAI,EAAE,CAAC;QAClB,CAAC;QACD,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrC,MAAM,EAAE,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC1B,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAA+B,CAAC,EAAE,CAAC;gBACrE,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,IAAI;oBAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;oBACvD,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/B,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACtB,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;IACD,IAAI,EAAE,CAAC,UAAU,CAAC,mCAAmC,CAAC,EAAE,CAAC;QACvD,IAAI,IAAI,YAAY,eAAe;YAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACrD,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAA+B,CAAC,EAAE,CAAC;gBACrE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9B,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC1B,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,CAAC;AAClB,CAAC;AAED,SAAS,wBAAwB,CAAC,OAAgB;IAChD,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,IAAI,CAAC,OAAO;QAAE,OAAO,MAAM,CAAC;IAE5B,IACE,OAAQ,OAAmB,CAAC,OAAO,KAAK,UAAU;QAClD,OAAQ,OAAmB,CAAC,GAAG,KAAK,UAAU,EAC9C,CAAC;QACA,OAAmB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC1C,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;YACnC,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;gBAC9B,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAClC,MAAM,QAAQ,GACZ,OAAO,QAAQ,KAAK,QAAQ;oBAC1B,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC;oBACnB,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;gBACnC,MAAM,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;YAC3B,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAkC,CAAC,EAAE,CAAC;YAC9E,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;YACnC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;iBAC1D,IAAI,KAAK,IAAI,IAAI;gBAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,gFAAgF;AAChF,0CAA0C;AAC1C,gFAAgF;AAEhF;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAe;IAChD,IAAI,MAAM,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC;IAE9C,gCAAgC;IAChC,IAAI,MAAM,IAAK,MAAkC,IAAI,MAAM,IAAK,MAAkC,EAAE,CAAC;QACnG,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,yBAAyB;IACzB,MAAM,YAAY,GAAI,MAA2C,CAAC,YAAY,CAAC;IAC/E,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE,CAAC;QACvC,IAAI,CAAC;YACH,OAAO,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,gFAAgF;AAChF,0DAA0D;AAC1D,gFAAgF;AAEhF,SAAS,uBAAuB,CAC9B,MAA0F;IAI1F,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC;IAC9D,MAAM,MAAM,GAAqH,EAAE,CAAC;IACpI,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAChD,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC;YAC5E,MAAM,EAAE,GAAG,GAKV,CAAC;YACF,IACE,EAAE,CAAC,MAAM,KAAK,SAAS;gBACvB,EAAE,CAAC,WAAW,KAAK,SAAS;gBAC5B,EAAE,CAAC,QAAQ,KAAK,SAAS;gBACzB,EAAE,CAAC,UAAU,KAAK,SAAS,EAC3B,CAAC;gBACD,MAAM,CAAC,GAAG,CAAC,GAAG;oBACZ,MAAM,EAAE,EAAE,CAAC,MAAM;oBACjB,WAAW,EAAE,EAAE,CAAC,WAAW;oBAC3B,QAAQ,EAAE,EAAE,CAAC,QAAQ;oBACrB,UAAU,EAAE,EAAE,CAAC,UAAU;iBAC1B,CAAC;gBACF,MAAM,GAAG,IAAI,CAAC;YAChB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACrC,CAAC;AAED,gFAAgF;AAChF,mCAAmC;AACnC,gFAAgF;AAEhF;;;;GAIG;AACH,KAAK,UAAU,WAAW,CACxB,GAAgB,EAChB,QAA4B,EAC5B,IAAsB;IAEtB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEtD,QAAQ;IACR,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK;QAC1B,CAAC,CAAC,MAAM,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC;QAC3B,CAAC,CAAE,SAAe,CAAC;IAErB,IAAI,CAAC;QACH,MAAM,MAAM,GAAe,CAAC,QAAQ,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAe,CAAC;QAC1E,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAC;QACJ,CAAC;QAED,oCAAoC;QACpC,MAAM,SAAS,GAAG,OAAO,QAAQ,CAAC,MAAM,KAAK,UAAU;YACrD,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;YACxB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;QACpB,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAgD,CAAC,CAAC;QACpF,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAEjD,MAAM,cAAc,GAA4B,EAAE,CAAC;QACnD,MAAM,IAAI,GAAG,OAAO,QAAQ,CAAC,IAAI,KAAK,UAAU;YAC9C,CAAC,CAAE,QAAQ,CAAC,IAA0B,CAAC,KAAK,CAAC;YAC7C,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAElB,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,oBAAoB,GACxB,QAAQ,CAAC,WAAW,IAAI,aAAa,EAAE,WAAW,IAAI,kBAAkB,CAAC;QAE3E,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,uBAAuB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC;QACrF,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,QAAQ,CAAC,OAAO,KAAK,UAAU;YACpD,CAAC,CAAE,QAAQ,CAAC,OAA4C,CAAC,KAAK,CAAC;YAC/D,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;QACrB,IAAI,OAAO;YAAE,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC;QAE9C,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACnB,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC,KAAK,KAAK,UAAU;gBACnD,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;gBACvB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YACnB,cAAc,CAAC,YAAY,GAAG,kBAAkB,CAC9C,QAA+C,CAChD,CAAC;QACJ,CAAC;QAED,cAAc,CAAC,eAAe,GAAG,KAAK,CAAC;QAEvC,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAsB,CAAC;QAC7D,IAAI,GAAG,CAAC;QACR,IAAI,CAAC;YACH,GAAG,GAAG,MAAO,MAAM,CAAC,WAAW,CAAoD,CACjF,YAAY,EACZ,cAAc,CACf,CAAC;QACJ,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBACxD,MAAM,SAAS,GAAI,MAA0C,CAAC,kBAAkB,IAAI,KAAK,CAAC;gBAC1F,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,CAAC,OAAO,cAAc,SAAS,KAAK,CAAC,CAAC;YAC9D,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,aAAa;QACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAErD,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAC5B,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAChE,GAAG,CAAC,QAAQ,CAAC,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QAC/E,CAAC;QAED,IAAI,MAAS,CAAC;QACd,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,CAC5B,QAAQ,EACR,QAAQ,CAAC,MAAM,CAAC,MAAM,EACtB,eAAe,CAChB,CAAC;YACF,MAAM,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAM,CAAC;QACjE,CAAC;aAAM,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC3B,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAM,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,SAAc,CAAC;QAC1B,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;YAAS,CAAC;QACT,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,MAAM,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,uEAAuE;AACvE,gFAAgF;AAEhF,SAAS,WAAW,CAClB,IAAsB;IAEtB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAErD,OAAO;QACL,QAAQ,EAAE,MAAM;QAChB,MAAM,EAAE,IAAI,CAAC,QAAQ;QACrB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;QACtB,OAAO,EAAE;YACP,OAAO,EAAE,aAAa;gBACpB,CAAC,CAAC;oBACE,IAAI,EAAE,aAAa,CAAC,IAAI;oBACxB,WAAW,EAAE,aAAa,CAAC,WAAW;oBACtC,OAAO,EAAE,aAAa,CAAC,OAAO;oBAC9B,OAAO,EAAE,aAAa,CAAC,OAAO;oBAC9B,QAAQ,EAAE,aAAa,CAAC,QAAQ;iBACjC;gBACH,CAAC,CAAC,SAAS;SACd;QACD,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE;YACjD,MAAM,mBAAmB,GAAG,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC;YAC5D,MAAM,SAAS,GAAG,mBAAmB;gBACnC,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,CAAC,CAAC,QAAQ;oBACV,CAAC,CAAC,UAAU;oBACZ,CAAC,CAAC,QAAQ,CAAC;YACf,MAAM,YAAY,GAAG,uBAAuB,CAC1C,CAAC,CAAC,MAA4F,CAC/F,CAAC;YACF,MAAM,YAAY,GAAG,uBAAuB,CAC1C,CAAC,CAAC,KAA2F,CAC9F,CAAC;YAEF,OAAO;gBACL,GAAG;gBACH,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,SAAS;gBACT,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,SAAS;gBACjC,cAAc,EAAE,CAAC,CAAC,QAAQ;gBAC1B,gBAAgB,EAAE,mBAAmB;gBACrC,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,OAAO,EAAE;oBACP,OAAO,EAAE,SAAS;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;wBACvB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;wBACrB,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW;wBACjC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;wBACzB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;wBACzB,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,QAEN;qBACd;oBACD,MAAM,EAAE,YAAY;oBACpB,KAAK,EAAE,YAAY;iBACpB;aACF,CAAC;QACJ,CAAC,CAAC;KACH,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,kDAAkD;AAClD,gFAAgF;AAEhF,SAAS,aAAa,CACpB,UAAqF;IAErF,MAAM,mBAAmB,GAAgC,UAAU,CAAC,OAAO;QACzE,CAAC,CAAC;YACE,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,OAAO;gBACjC,CAAC,CAAC;oBACE,IAAI,EAAE,kBAAkB,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,SAAS;oBACtE,WAAW,EAAE,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW;oBACnD,OAAO,EAAE,kBAAkB,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,SAAS;oBAC5E,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO;oBAC3C,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ;iBAC9C;gBACH,CAAC,CAAC,SAAS;YACb,yDAAyD;YACzD,4DAA4D;YAC5D,iEAAiE;YACjE,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ;SACtC;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO;QACL,EAAE,EAAE,UAAU,CAAC,EAAE;QACjB,QAAQ,EAAE,UAAU,CAAC,QAAQ;QAC7B,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,YAAY,EAAE,UAAU,CAAC,YAAY;QACrC,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,UAAU,EAAE,UAAU,CAAC,UAAU;QACjC,UAAU,EAAE,UAAU,CAAC,UAAU;QACjC,OAAO,EAAE,mBAAmB;QAC5B,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAClC,GAAG,EAAE,CAAC,CAAC,GAAG;YACV,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,cAAc,EAAE,CAAC,CAAC,cAAc;YAChC,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;YACpC,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,OAAO,EAAE,CAAC,CAAC,OAAO;gBAChB,CAAC,CAAC;oBACE,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ;wBAC1B,CAAC,CAAC;4BACE,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM;4BACjC,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,SAAS;4BAC9D,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW;4BAC3C,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,SAAS;4BACpE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO;4BACnC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ;yBACtC;wBACH,CAAC,CAAC,SAAS;oBACb,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM;wBACtB,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;wBAC5C,CAAC,CAAC,SAAS;oBACb,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK;wBACpB,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;wBAC3C,CAAC,CAAC,SAAS;oBACb,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ;iBAC7B;gBACH,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,GAGC;IAED,MAAM,GAAG,GAA2C,EAAE,CAAC;IACvD,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,GAAG,CAAC,GAAG,CAAC,GAAG;YACT,MAAM,EAAE,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,SAAS;YACpD,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,gFAAgF;AAChF,gEAAgE;AAChE,gFAAgF;AAEhF,KAAK,UAAU,qBAAqB,CAAC,KAKpC;IACC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;IACzD,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC;IAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,SAAS,OAAO,sBAAsB,QAAQ,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,CAAC;IACpF,CAAC;IAED,sEAAsE;IACtE,0EAA0E;IAE1E,6DAA6D;IAC7D,MAAM,KAAK,GAAG,CAAC,cAAc,IAAI,EAAE,CAKlC,CAAC;IAEF,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,eAAe,GAAG,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACjE,MAAM,cAAc,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC9D,MAAM,gBAAgB,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAEpE,wEAAwE;IACxE,0EAA0E;IAC1E,uEAAuE;IACvE,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,SAAS,GAAY,SAAS,CAAC;IACnC,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,SAAS,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtC,QAAQ,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,MAAM,GAAe,CAAC,QAAQ,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAe,CAAC;QAC1E,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CACb,qCAAqC,OAAO,kBAAkB,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK;gBACxF,4CAA4C,CAC/C,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,aAAa,CAChC,IAAI,EACJ,kBAAkB,CAAC,eAAsD,CAAC,CAC3E,CAAC;QAEF,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,oBAAoB,GACxB,QAAQ,CAAC,WAAW,IAAI,aAAa,EAAE,WAAW,IAAI,kBAAkB,CAAC;QAE3E,MAAM,cAAc,GAA4B,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;QAC3E,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,CAAC,MAAM,CACX,cAAc,EACd,uBAAuB,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAC7D,CAAC;QACJ,CAAC;QACD,IAAI,gBAAgB;YAAE,cAAc,CAAC,OAAO,GAAG,gBAAgB,CAAC;QAChE,IAAI,cAAc,EAAE,CAAC;YACnB,cAAc,CAAC,YAAY,GAAG,kBAAkB,CAC9C,cAAyC,CAC1C,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAsB,CAAC;QAC7D,IAAI,GAAG,CAAC;QACR,IAAI,CAAC;YACH,GAAG,GAAG,MAAO,MAAM,CAAC,WAAW,CAAoD,CACjF,YAAY,EACZ,cAAc,CACf,CAAC;QACJ,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBACxD,MAAM,SAAS,GACZ,MAA0C,CAAC,kBAAkB,IAAI,KAAK,CAAC;gBAC1E,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,CAAC,OAAO,cAAc,SAAS,KAAK,CAAC,CAAC;YAC9D,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAErD,MAAM,eAAe,GAAG,wBAAwB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC9D,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAC5B,GAAG,CAAC,QAAQ,CAAC,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QAC7E,CAAC;QAED,IAAI,IAAa,CAAC;QAClB,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,CAC5B,QAAQ,EACR,QAAQ,CAAC,MAAM,CAAC,MAAM,EACtB,eAAe,CAChB,CAAC;YACF,IAAI,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;QACxD,CAAC;aAAM,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC3B,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,8CAA8C;YAC9C,IAAI,CAAC;gBACH,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAC1B,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,GAAG,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACnC,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;IAChE,CAAC;YAAS,CAAC;QACT,kEAAkE;QAClE,qEAAqE;QACrE,uEAAuE;QACvE,kDAAkD;QAClD,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,SAAgB,CAAC,CAAC;YACjD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,CAAC,GAAG,EAAE,CAAC,kBAAkB,OAAO,cAAc,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,+CAA+C;AAC/C,gFAAgF;AAEhF,SAAS,mBAAmB,CAAC,KAG5B;IACC,wDAAwD;IACxD,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAClD,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,EAAE,CAAC,IAAI,KAAK,eAAe,IAAI,EAAE,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAC5D,MAAM,MAAM,GAAI,EAAE,CAAC,IAA4B,CAAC,MAAM,CAAC;YACvD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,OAAO,sBAAsB,CAAC,MAAM,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,IAAI,KAAK,CAAC,KAAK,YAAY,KAAK,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACxC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAC/D,CAAC;QACD,IAAI,qCAAqC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACpE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QACjE,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAc;IAC5C,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC7D,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IACnE,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAClE,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACpF,IAAI,MAAM,IAAI,GAAG;QAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAClF,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AACpD,CAAC;AAED,gFAAgF;AAChF,2DAA2D;AAC3D,gFAAgF;AAEhF,SAAS,mBAAmB,CAC1B,OAAoC;IAEpC,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,OAAO;QACL,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI;QACnC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI;QACrC,cAAc,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM;QACxC,mBAAmB,EAAE,OAAO,CAAC,QAAQ,EAAE,WAAW;QAClD,kBAAkB,EAAE,OAAO,CAAC,OAAO,EAAE,WAAW;KACjD,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAEhF,MAAM,CAAC,MAAM,WAAW,GAMpB;IACF,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI;QAC/B,MAAM,WAAW,CAAC,GAAG,EAAE,QAA0C,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC;IAED,OAAO,CAAC,IAAI;QACV,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,SAAS,CAAC,UAAU;QAClB,OAAO,aAAa,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;IAED,iBAAiB,CAAC,KAAK;QACrB,OAAO,qBAAqB,CAAC,KAAoD,CAAC,CAAC;IACrF,CAAC;IAED,eAAe,CAAC,KAAK;QACnB,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,eAAe,CAAC,OAAO;QACrB,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,SAAS,CAAC,UAAU;QAClB,OAAO,mBAAmB,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAED,UAAU,CAAC,UAAU;QACnB,OAAO,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IAED,YAAY,CAAC,MAAM;QACjB,OAAO,MAAM,CAAC,CAAC,+CAA+C;IAChE,CAAC;IAED,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,SAAS,OAAO,sBAAsB,UAAU,GAAG,CAAC,CAAC;QACvE,CAAC;QACD,uBAAuB,CAAC,UAAU,EAAE,OAAO,EAAE,QAA0C,CAAC,CAAC;IAC3F,CAAC;CACF,CAAC;AAEF,gFAAgF;AAChF,wDAAwD;AACxD,gFAAgF;AAEhF;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CACrC,UAAkB,EAClB,OAAe,EACf,QAAwC;IAExC,MAAM,cAAc,GAAa,EAAE,CAAC;IACpC,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,UAAU;QAAE,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrE,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,UAAU;QAAE,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzE,IAAI,OAAO,QAAQ,CAAC,KAAK,KAAK,UAAU;QAAE,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvE,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,UAAU;QAAE,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3E,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CACb,aAAa,UAAU,WAAW,OAAO,kCAAkC;YACzE,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,sDAAsD;YAClF,uCAAuC;YACvC,wFAAwF,CAC3F,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* contract.http factory — scoped-defaults pattern.
|
|
3
|
+
*
|
|
4
|
+
* Root `contract.http` exposes only `.with(name, defaults)`. Calling
|
|
5
|
+
* `contract.http("id", spec)` directly is forbidden because client injection
|
|
6
|
+
* via scoped instances is the canonical authoring pattern.
|
|
7
|
+
*
|
|
8
|
+
* The factory wraps the generic dispatcher attached to `contract.http` by
|
|
9
|
+
* `contract.register("http", httpAdapter)`. Calls flow through:
|
|
10
|
+
* user code
|
|
11
|
+
* → scoped factory(id, spec)
|
|
12
|
+
* → merge instance defaults into spec
|
|
13
|
+
* → dispatcher(id, mergedSpec) [generic register() output]
|
|
14
|
+
* → adapter.project + per-case registerTest + Test[] with _projection/_spec
|
|
15
|
+
*/
|
|
16
|
+
import type { ProtocolContract } from "../contract-types.js";
|
|
17
|
+
import type { ContractCase, HttpContractDefaults, HttpContractFactory, HttpContractRoot, HttpContractMeta, HttpContractSpec, HttpPayloadSchemas } from "./types.js";
|
|
18
|
+
type InternalDefaults = HttpContractDefaults & {
|
|
19
|
+
_name?: string;
|
|
20
|
+
};
|
|
21
|
+
type HttpDispatch = <Cases extends Record<string, ContractCase<any, any>>>(id: string, spec: HttpContractSpec<Cases>) => ProtocolContract<HttpContractSpec, HttpPayloadSchemas, HttpContractMeta>;
|
|
22
|
+
/**
|
|
23
|
+
* Build a scoped HTTP factory. `dispatch` is `contract.http` attached by
|
|
24
|
+
* the core's register() call — we wrap it to inject instance defaults.
|
|
25
|
+
*/
|
|
26
|
+
export declare function createHttpFactory(dispatch: HttpDispatch, defaults?: InternalDefaults): HttpContractFactory;
|
|
27
|
+
/**
|
|
28
|
+
* Root factory — `.with()` only, direct call throws.
|
|
29
|
+
*/
|
|
30
|
+
export declare function createHttpRoot(dispatch: HttpDispatch): HttpContractRoot;
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/contract-http/factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EACV,YAAY,EACZ,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAEnB,MAAM,YAAY,CAAC;AAEpB,KAAK,gBAAgB,GAAG,oBAAoB,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAElE,KAAK,YAAY,GAAG,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EACvE,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAC1B,gBAAgB,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,CAAC,CAAC;AA8B9E;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,YAAY,EACtB,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,mBAAmB,CAgCrB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,YAAY,GAAG,gBAAgB,CAEvE"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* contract.http factory — scoped-defaults pattern.
|
|
3
|
+
*
|
|
4
|
+
* Root `contract.http` exposes only `.with(name, defaults)`. Calling
|
|
5
|
+
* `contract.http("id", spec)` directly is forbidden because client injection
|
|
6
|
+
* via scoped instances is the canonical authoring pattern.
|
|
7
|
+
*
|
|
8
|
+
* The factory wraps the generic dispatcher attached to `contract.http` by
|
|
9
|
+
* `contract.register("http", httpAdapter)`. Calls flow through:
|
|
10
|
+
* user code
|
|
11
|
+
* → scoped factory(id, spec)
|
|
12
|
+
* → merge instance defaults into spec
|
|
13
|
+
* → dispatcher(id, mergedSpec) [generic register() output]
|
|
14
|
+
* → adapter.project + per-case registerTest + Test[] with _projection/_spec
|
|
15
|
+
*/
|
|
16
|
+
function mergeExtensions(base, override) {
|
|
17
|
+
if (!base && !override)
|
|
18
|
+
return undefined;
|
|
19
|
+
const merged = {
|
|
20
|
+
...(base ?? {}),
|
|
21
|
+
...(override ?? {}),
|
|
22
|
+
};
|
|
23
|
+
return Object.keys(merged).length > 0 ? merged : undefined;
|
|
24
|
+
}
|
|
25
|
+
function mergeHttpDefaults(defaults, spec) {
|
|
26
|
+
if (!defaults)
|
|
27
|
+
return spec;
|
|
28
|
+
const mergedTags = [...(defaults.tags ?? []), ...(spec.tags ?? [])];
|
|
29
|
+
const mergedExtensions = mergeExtensions(defaults.extensions, spec.extensions);
|
|
30
|
+
return {
|
|
31
|
+
...spec,
|
|
32
|
+
client: spec.client ?? defaults.client,
|
|
33
|
+
feature: spec.feature ?? defaults.feature,
|
|
34
|
+
tags: mergedTags.length > 0 ? mergedTags : undefined,
|
|
35
|
+
extensions: mergedExtensions,
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Build a scoped HTTP factory. `dispatch` is `contract.http` attached by
|
|
40
|
+
* the core's register() call — we wrap it to inject instance defaults.
|
|
41
|
+
*/
|
|
42
|
+
export function createHttpFactory(dispatch, defaults) {
|
|
43
|
+
const factory = (id, spec) => {
|
|
44
|
+
if (!defaults?._name) {
|
|
45
|
+
throw new Error(`contract.http("${id}", spec) is not supported. ` +
|
|
46
|
+
`Use contract.http.with("name", { client }) first to create a scoped instance, ` +
|
|
47
|
+
`then call instance("${id}", spec).`);
|
|
48
|
+
}
|
|
49
|
+
const merged = mergeHttpDefaults(defaults, spec);
|
|
50
|
+
const result = dispatch(id, merged);
|
|
51
|
+
// Attach instanceName + security after dispatch so they appear in projection
|
|
52
|
+
applyInstanceMetadata(result, defaults._name, defaults.security);
|
|
53
|
+
return result;
|
|
54
|
+
};
|
|
55
|
+
factory.with = (name, more) => {
|
|
56
|
+
const mergedTags = [...(defaults?.tags ?? []), ...(more.tags ?? [])];
|
|
57
|
+
const mergedExtensions = mergeExtensions(defaults?.extensions, more.extensions);
|
|
58
|
+
return createHttpFactory(dispatch, {
|
|
59
|
+
...defaults,
|
|
60
|
+
...more,
|
|
61
|
+
tags: mergedTags.length > 0 ? mergedTags : undefined,
|
|
62
|
+
extensions: mergedExtensions,
|
|
63
|
+
_name: name,
|
|
64
|
+
});
|
|
65
|
+
};
|
|
66
|
+
return factory;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Root factory — `.with()` only, direct call throws.
|
|
70
|
+
*/
|
|
71
|
+
export function createHttpRoot(dispatch) {
|
|
72
|
+
return createHttpFactory(dispatch);
|
|
73
|
+
}
|
|
74
|
+
function applyInstanceMetadata(contract, instanceName, security) {
|
|
75
|
+
// Mutate _projection to attach instanceName / security (not otherwise
|
|
76
|
+
// available to adapter.project since it doesn't know the factory defaults)
|
|
77
|
+
const proj = contract._projection;
|
|
78
|
+
proj.instanceName = instanceName;
|
|
79
|
+
if (security != null && proj.schemas) {
|
|
80
|
+
proj.schemas.security = security;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/contract-http/factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAsBH,SAAS,eAAe,CACtB,IAA4B,EAC5B,QAAgC;IAEhC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IACzC,MAAM,MAAM,GAA4B;QACtC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QACf,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;KACpB,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,MAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7E,CAAC;AAED,SAAS,iBAAiB,CACxB,QAAsC,EACtC,IAAsB;IAEtB,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;IACpE,MAAM,gBAAgB,GAAG,eAAe,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/E,OAAO;QACL,GAAG,IAAI;QACP,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM;QACtC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO;QACzC,IAAI,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;QACpD,UAAU,EAAE,gBAAgB;KAC7B,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAsB,EACtB,QAA2B;IAE3B,MAAM,OAAO,GAAG,CACd,EAAU,EACV,IAA6B,EAC6C,EAAE;QAC5E,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,kBAAkB,EAAE,6BAA6B;gBAC/C,gFAAgF;gBAChF,uBAAuB,EAAE,WAAW,CACvC,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,EAAE,IAAwB,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,QAAQ,CAAC,EAAE,EAAE,MAAiC,CAAC,CAAC;QAC/D,6EAA6E;QAC7E,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACjE,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO,CAAC,IAAI,GAAG,CAAC,IAAY,EAAE,IAA0B,EAAuB,EAAE;QAC/E,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;QACrE,MAAM,gBAAgB,GAAG,eAAe,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAChF,OAAO,iBAAiB,CAAC,QAAQ,EAAE;YACjC,GAAG,QAAQ;YACX,GAAG,IAAI;YACP,IAAI,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;YACpD,UAAU,EAAE,gBAAgB;YAC5B,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,OAA8B,CAAC;AACxC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,QAAsB;IACnD,OAAO,iBAAiB,CAAC,QAAQ,CAAgC,CAAC;AACpE,CAAC;AAED,SAAS,qBAAqB,CAC5B,QAAkF,EAClF,YAAoB,EACpB,QAAwC;IAExC,sEAAsE;IACtE,2EAA2E;IAC3E,MAAM,IAAI,GAAG,QAAQ,CAAC,WAEqC,CAAC;IAC5D,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACjC,IAAI,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IACnC,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deep-merge helpers for HTTP adapter's executeCaseInFlow.
|
|
3
|
+
*
|
|
4
|
+
* Contract-flow v9 §5.1 semantics:
|
|
5
|
+
* - Lens-provided slot + case-spec slot → deep-merge at object level
|
|
6
|
+
* - Arrays replace whole (no element-wise alignment)
|
|
7
|
+
* - undefined in patch preserves the baseline
|
|
8
|
+
* - Explicit field deletion unsupported in v0.2
|
|
9
|
+
*/
|
|
10
|
+
export declare function mergeSlot(baseline: unknown, patch: unknown): unknown;
|
|
11
|
+
export declare function deepMergeForFlow(baseline: unknown, patch: unknown): unknown;
|
|
12
|
+
//# sourceMappingURL=flow-helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow-helpers.d.ts","sourceRoot":"","sources":["../../src/contract-http/flow-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAIpE;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAS3E"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deep-merge helpers for HTTP adapter's executeCaseInFlow.
|
|
3
|
+
*
|
|
4
|
+
* Contract-flow v9 §5.1 semantics:
|
|
5
|
+
* - Lens-provided slot + case-spec slot → deep-merge at object level
|
|
6
|
+
* - Arrays replace whole (no element-wise alignment)
|
|
7
|
+
* - undefined in patch preserves the baseline
|
|
8
|
+
* - Explicit field deletion unsupported in v0.2
|
|
9
|
+
*/
|
|
10
|
+
export function mergeSlot(baseline, patch) {
|
|
11
|
+
if (patch === undefined)
|
|
12
|
+
return baseline;
|
|
13
|
+
if (baseline === undefined)
|
|
14
|
+
return patch;
|
|
15
|
+
return deepMergeForFlow(baseline, patch);
|
|
16
|
+
}
|
|
17
|
+
export function deepMergeForFlow(baseline, patch) {
|
|
18
|
+
if (!isPlainObject(baseline) || !isPlainObject(patch))
|
|
19
|
+
return patch;
|
|
20
|
+
const out = { ...baseline };
|
|
21
|
+
for (const [k, v] of Object.entries(patch)) {
|
|
22
|
+
if (v === undefined)
|
|
23
|
+
continue; // preserve baseline on undefined
|
|
24
|
+
out[k] = deepMergeForFlow(out[k], v);
|
|
25
|
+
}
|
|
26
|
+
return out;
|
|
27
|
+
}
|
|
28
|
+
function isPlainObject(v) {
|
|
29
|
+
return (v !== null &&
|
|
30
|
+
typeof v === "object" &&
|
|
31
|
+
!Array.isArray(v) &&
|
|
32
|
+
Object.getPrototypeOf(v) === Object.prototype);
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=flow-helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow-helpers.js","sourceRoot":"","sources":["../../src/contract-http/flow-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,UAAU,SAAS,CAAC,QAAiB,EAAE,KAAc;IACzD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IACzC,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACzC,OAAO,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,QAAiB,EAAE,KAAc;IAChE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAEpE,MAAM,GAAG,GAA4B,EAAE,GAAI,QAAoC,EAAE,CAAC;IAClF,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;QACtE,IAAI,CAAC,KAAK,SAAS;YAAE,SAAS,CAAC,iCAAiC;QAChE,GAAG,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,aAAa,CAAC,CAAU;IAC/B,OAAO,CACL,CAAC,KAAK,IAAI;QACV,OAAO,CAAC,KAAK,QAAQ;QACrB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QACjB,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,SAAS,CAC9C,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Built-in HTTP adapter for the Glubean contract system.
|
|
3
|
+
*
|
|
4
|
+
* Shipped with @glubean/sdk — zero-config for the common HTTP case.
|
|
5
|
+
* Registered as an adapter (via `contract.register("http", httpAdapter)`)
|
|
6
|
+
* in `../index.ts` at SDK load time.
|
|
7
|
+
*
|
|
8
|
+
* Future plugin protocols (gRPC / GraphQL / Kafka / ...) will ship as
|
|
9
|
+
* separate npm packages (`@glubean/contract-grpc` etc.) that do
|
|
10
|
+
* `contract.register("grpc", grpcAdapter)` on import.
|
|
11
|
+
*/
|
|
12
|
+
export { httpAdapter } from "./adapter.js";
|
|
13
|
+
export { createHttpFactory, createHttpRoot } from "./factory.js";
|
|
14
|
+
export type { HttpContractSpec, HttpContractDefaults, HttpSecurityScheme, HttpContractRoot, HttpContractFactory, ContractCase, ContractExpect, ContractExample, NormalizedHeaders, ParamValue, RequestSpec, HttpPayloadSchemas, HttpSafeSchemas, HttpContractMeta, HttpParamSchema, HttpParamMeta, HttpFlowCaseOutput, InferHttpInputs, InferHttpOutput, } from "./types.js";
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contract-http/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEjE,YAAY,EAEV,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,WAAW,EAEX,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,eAAe,GAChB,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Built-in HTTP adapter for the Glubean contract system.
|
|
3
|
+
*
|
|
4
|
+
* Shipped with @glubean/sdk — zero-config for the common HTTP case.
|
|
5
|
+
* Registered as an adapter (via `contract.register("http", httpAdapter)`)
|
|
6
|
+
* in `../index.ts` at SDK load time.
|
|
7
|
+
*
|
|
8
|
+
* Future plugin protocols (gRPC / GraphQL / Kafka / ...) will ship as
|
|
9
|
+
* separate npm packages (`@glubean/contract-grpc` etc.) that do
|
|
10
|
+
* `contract.register("grpc", grpcAdapter)` on import.
|
|
11
|
+
*/
|
|
12
|
+
export { httpAdapter } from "./adapter.js";
|
|
13
|
+
export { createHttpFactory, createHttpRoot } from "./factory.js";
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contract-http/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Markdown rendering for HTTP contracts.
|
|
3
|
+
*
|
|
4
|
+
* **P2 stub** — full logic to be migrated from
|
|
5
|
+
* `packages/cli/src/commands/contracts.ts` in P4.
|
|
6
|
+
*/
|
|
7
|
+
import type { ExtractedContractProjection } from "../contract-types.js";
|
|
8
|
+
import type { HttpContractMeta, HttpSafeSchemas } from "./types.js";
|
|
9
|
+
export declare function renderMarkdownForHttp(projection: ExtractedContractProjection<HttpSafeSchemas, HttpContractMeta>): string;
|
|
10
|
+
//# sourceMappingURL=markdown.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../src/contract-http/markdown.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEpE,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,2BAA2B,CAAC,eAAe,EAAE,gBAAgB,CAAC,GACzE,MAAM,CAYR"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Markdown rendering for HTTP contracts.
|
|
3
|
+
*
|
|
4
|
+
* **P2 stub** — full logic to be migrated from
|
|
5
|
+
* `packages/cli/src/commands/contracts.ts` in P4.
|
|
6
|
+
*/
|
|
7
|
+
export function renderMarkdownForHttp(projection) {
|
|
8
|
+
const lines = [];
|
|
9
|
+
lines.push(`## ${projection.id} (${projection.target})`);
|
|
10
|
+
if (projection.description)
|
|
11
|
+
lines.push(projection.description);
|
|
12
|
+
lines.push("");
|
|
13
|
+
lines.push("### Cases");
|
|
14
|
+
for (const c of projection.cases) {
|
|
15
|
+
const status = c.schemas?.response?.status ?? "?";
|
|
16
|
+
const suffix = c.lifecycle !== "active" ? ` [${c.lifecycle}]` : "";
|
|
17
|
+
lines.push(`- **${c.key}** (${status})${suffix} — ${c.description ?? ""}`);
|
|
18
|
+
}
|
|
19
|
+
return lines.join("\n");
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=markdown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../src/contract-http/markdown.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,MAAM,UAAU,qBAAqB,CACnC,UAA0E;IAE1E,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,MAAM,UAAU,CAAC,EAAE,KAAK,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;IACzD,IAAI,UAAU,CAAC,WAAW;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAC/D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxB,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,CAAC;QAClD,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACnE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,OAAO,MAAM,IAAI,MAAM,MAAM,CAAC,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenAPI generation for HTTP contracts.
|
|
3
|
+
*
|
|
4
|
+
* **P2 stub** — full logic will be migrated here from
|
|
5
|
+
* `packages/mcp/src/index.ts` L1445–L1700 in P4. At that point MCP's
|
|
6
|
+
* `glubean_openapi` tool will call `adapter.toOpenApi(extracted)` instead
|
|
7
|
+
* of inlining HTTP-specific logic.
|
|
8
|
+
*
|
|
9
|
+
* For now the stub returns a minimal OpenAPI fragment so adapter.toOpenApi
|
|
10
|
+
* is wired end-to-end and tests don't throw.
|
|
11
|
+
*/
|
|
12
|
+
import type { ExtractedContractProjection } from "../contract-types.js";
|
|
13
|
+
import type { HttpContractMeta, HttpSafeSchemas } from "./types.js";
|
|
14
|
+
export declare function buildOpenApiForHttp(projection: ExtractedContractProjection<HttpSafeSchemas, HttpContractMeta>): Record<string, unknown> | undefined;
|
|
15
|
+
//# sourceMappingURL=openapi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/contract-http/openapi.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EACV,2BAA2B,EAC5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEpE,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,2BAA2B,CAAC,eAAe,EAAE,gBAAgB,CAAC,GACzE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CA4BrC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenAPI generation for HTTP contracts.
|
|
3
|
+
*
|
|
4
|
+
* **P2 stub** — full logic will be migrated here from
|
|
5
|
+
* `packages/mcp/src/index.ts` L1445–L1700 in P4. At that point MCP's
|
|
6
|
+
* `glubean_openapi` tool will call `adapter.toOpenApi(extracted)` instead
|
|
7
|
+
* of inlining HTTP-specific logic.
|
|
8
|
+
*
|
|
9
|
+
* For now the stub returns a minimal OpenAPI fragment so adapter.toOpenApi
|
|
10
|
+
* is wired end-to-end and tests don't throw.
|
|
11
|
+
*/
|
|
12
|
+
export function buildOpenApiForHttp(projection) {
|
|
13
|
+
// Stub: minimal path entry. Replaced with full implementation in P4.
|
|
14
|
+
const method = (projection.meta?.method ?? "GET").toLowerCase();
|
|
15
|
+
const path = projection.meta?.path ?? projection.target;
|
|
16
|
+
const operation = {
|
|
17
|
+
summary: projection.description,
|
|
18
|
+
operationId: projection.id,
|
|
19
|
+
};
|
|
20
|
+
const responses = {};
|
|
21
|
+
for (const c of projection.cases) {
|
|
22
|
+
const status = String(c.schemas?.response?.status ?? 200);
|
|
23
|
+
if (!responses[status]) {
|
|
24
|
+
responses[status] = {
|
|
25
|
+
description: c.description ?? "",
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
operation.responses = responses;
|
|
30
|
+
return {
|
|
31
|
+
paths: {
|
|
32
|
+
[path]: {
|
|
33
|
+
[method]: operation,
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=openapi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/contract-http/openapi.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,MAAM,UAAU,mBAAmB,CACjC,UAA0E;IAE1E,qEAAqE;IACrE,MAAM,MAAM,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IAChE,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,IAAI,IAAI,UAAU,CAAC,MAAM,CAAC;IAExD,MAAM,SAAS,GAA4B;QACzC,OAAO,EAAE,UAAU,CAAC,WAAW;QAC/B,WAAW,EAAE,UAAU,CAAC,EAAE;KAC3B,CAAC;IAEF,MAAM,SAAS,GAA4B,EAAE,CAAC;IAC9C,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,CAAC,CAAC;QAC1D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YACvB,SAAS,CAAC,MAAM,CAAC,GAAG;gBAClB,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,EAAE;aACjC,CAAC;QACJ,CAAC;IACH,CAAC;IACD,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC;IAEhC,OAAO;QACL,KAAK,EAAE;YACL,CAAC,IAAI,CAAC,EAAE;gBACN,CAAC,MAAM,CAAC,EAAE,SAAS;aACpB;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTTP-specific types for the built-in HTTP adapter.
|
|
3
|
+
*
|
|
4
|
+
* These types live inside the SDK's `contract-http/` subdirectory (HTTP is
|
|
5
|
+
* built-in for zero-config UX) but they go through the same
|
|
6
|
+
* `ContractProtocolAdapter` interface as any future plugin protocol. Core
|
|
7
|
+
* never imports from this file.
|
|
8
|
+
*
|
|
9
|
+
* Source-of-truth for user-facing authoring types (HttpContractSpec,
|
|
10
|
+
* ContractCase, ContractExpect, etc.).
|
|
11
|
+
*/
|
|
12
|
+
import type { HttpClient, SchemaLike, TestContext } from "../types.js";
|
|
13
|
+
import type { CaseDefaultRun, CaseRequires, CaseSeverity, Extensions } from "../contract-types.js";
|
|
14
|
+
/**
|
|
15
|
+
* HTTP security scheme declaration for contract instances.
|
|
16
|
+
* Maps to OpenAPI `securitySchemes`. Authoritative metadata, not docs-only.
|
|
17
|
+
*/
|
|
18
|
+
export type HttpSecurityScheme = "bearer" | "basic" | {
|
|
19
|
+
type: "apiKey";
|
|
20
|
+
name: string;
|
|
21
|
+
in: "header" | "query";
|
|
22
|
+
} | {
|
|
23
|
+
type: "oauth2";
|
|
24
|
+
flows: Record<string, unknown>;
|
|
25
|
+
} | null;
|
|
26
|
+
export interface HttpContractDefaults {
|
|
27
|
+
/** Default HTTP client for all contracts in this instance. */
|
|
28
|
+
client?: HttpClient;
|
|
29
|
+
/** Security scheme (authoritative, maps to OpenAPI). */
|
|
30
|
+
security?: HttpSecurityScheme;
|
|
31
|
+
/** Tags inherited by all contracts in this instance. */
|
|
32
|
+
tags?: string[];
|
|
33
|
+
/** Default feature grouping key. */
|
|
34
|
+
feature?: string;
|
|
35
|
+
/** OpenAPI extensions (x-* keys). Inherited by all contracts. */
|
|
36
|
+
extensions?: Extensions;
|
|
37
|
+
}
|
|
38
|
+
export interface ContractExample<T = unknown> {
|
|
39
|
+
value: T;
|
|
40
|
+
summary?: string;
|
|
41
|
+
description?: string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Response headers normalized to lowercase keys. Multi-value headers (e.g.
|
|
45
|
+
* `Set-Cookie`) use `string[]`.
|
|
46
|
+
*/
|
|
47
|
+
export type NormalizedHeaders = Record<string, string | string[]>;
|
|
48
|
+
/**
|
|
49
|
+
* Path or query parameter value. String shorthand or object with metadata.
|
|
50
|
+
*/
|
|
51
|
+
export type ParamValue = string | {
|
|
52
|
+
value: string;
|
|
53
|
+
schema?: SchemaLike<unknown>;
|
|
54
|
+
description?: string;
|
|
55
|
+
required?: boolean;
|
|
56
|
+
deprecated?: boolean;
|
|
57
|
+
};
|
|
58
|
+
export interface ContractExpect<T = unknown> {
|
|
59
|
+
/** Expected HTTP status code. */
|
|
60
|
+
status: number;
|
|
61
|
+
/** Zod/Valibot schema for response body. */
|
|
62
|
+
schema?: SchemaLike<T>;
|
|
63
|
+
/** Response content-type. Default: "application/json". */
|
|
64
|
+
contentType?: string;
|
|
65
|
+
/** Response headers schema (normalized to lowercase keys). */
|
|
66
|
+
headers?: SchemaLike<NormalizedHeaders>;
|
|
67
|
+
/** Single response example (OpenAPI docs only). */
|
|
68
|
+
example?: T;
|
|
69
|
+
/** Named response examples (OpenAPI docs). */
|
|
70
|
+
examples?: Record<string, ContractExample<T>>;
|
|
71
|
+
}
|
|
72
|
+
export interface ContractCase<T = unknown, S = void> {
|
|
73
|
+
/** Per-case HTTP client override. */
|
|
74
|
+
client?: HttpClient;
|
|
75
|
+
/** Why this case exists — required. */
|
|
76
|
+
description: string;
|
|
77
|
+
/** Expected response. */
|
|
78
|
+
expect: ContractExpect<T>;
|
|
79
|
+
/**
|
|
80
|
+
* Request body (for POST/PUT/PATCH). Static value, FormData/URLSearchParams
|
|
81
|
+
* /Blob/string for non-JSON content types, or a function of setup state.
|
|
82
|
+
*/
|
|
83
|
+
body?: unknown | FormData | URLSearchParams | Blob | ((state: S) => unknown);
|
|
84
|
+
/** Request content type override for this case. */
|
|
85
|
+
contentType?: string;
|
|
86
|
+
/** URL params. Values can be `ParamValue` objects for OpenAPI metadata. */
|
|
87
|
+
params?: Record<string, ParamValue> | ((state: S) => Record<string, string>);
|
|
88
|
+
/** Query parameters. */
|
|
89
|
+
query?: Record<string, ParamValue> | ((state: S) => Record<string, string>);
|
|
90
|
+
/** Request headers merged with client headers. */
|
|
91
|
+
headers?: Record<string, string> | ((state: S) => Record<string, string>);
|
|
92
|
+
/** Setup runs before the request. Return value goes to param/query/body/headers functions + teardown. */
|
|
93
|
+
setup?: (ctx: TestContext) => Promise<S>;
|
|
94
|
+
/** Teardown runs after verify, even on failure. */
|
|
95
|
+
teardown?: (ctx: TestContext, state: S) => Promise<void>;
|
|
96
|
+
/** Business-logic verify — runs after status and schema validation. */
|
|
97
|
+
verify?: (ctx: TestContext, res: T) => Promise<void>;
|
|
98
|
+
/** Not yet executable; reason shown in skip message. */
|
|
99
|
+
deferred?: string;
|
|
100
|
+
/** Deprecated; value is the reason. */
|
|
101
|
+
deprecated?: string;
|
|
102
|
+
/** Additional tags (merged with contract-level tags). */
|
|
103
|
+
tags?: string[];
|
|
104
|
+
severity?: CaseSeverity;
|
|
105
|
+
requires?: CaseRequires;
|
|
106
|
+
defaultRun?: CaseDefaultRun;
|
|
107
|
+
/** Per-case OpenAPI extensions. */
|
|
108
|
+
extensions?: Extensions;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Structured request specification. Can be a bare SchemaLike (JSON body
|
|
112
|
+
* shorthand) or a full object with content type / headers / examples.
|
|
113
|
+
*/
|
|
114
|
+
export type RequestSpec = SchemaLike<unknown> | {
|
|
115
|
+
body?: SchemaLike<unknown>;
|
|
116
|
+
contentType?: string;
|
|
117
|
+
headers?: SchemaLike<Record<string, string>>;
|
|
118
|
+
example?: unknown;
|
|
119
|
+
examples?: Record<string, ContractExample<unknown>>;
|
|
120
|
+
};
|
|
121
|
+
export interface HttpContractSpec<Cases extends Record<string, ContractCase<any, any>> = Record<string, ContractCase>> {
|
|
122
|
+
/** HTTP method + path, e.g. "POST /users" or "GET /runs/:runId". */
|
|
123
|
+
endpoint: string;
|
|
124
|
+
description?: string;
|
|
125
|
+
feature?: string;
|
|
126
|
+
/** Default HTTP client for all cases. */
|
|
127
|
+
client?: HttpClient;
|
|
128
|
+
/**
|
|
129
|
+
* Endpoint-level request schema (OpenAPI docs + no-runtime validation).
|
|
130
|
+
* Bare SchemaLike = JSON body shorthand; object = full structured spec.
|
|
131
|
+
*/
|
|
132
|
+
request?: RequestSpec;
|
|
133
|
+
tags?: string[];
|
|
134
|
+
deprecated?: string;
|
|
135
|
+
extensions?: Extensions;
|
|
136
|
+
/** Named spec cases. */
|
|
137
|
+
cases: Cases;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Runtime (live) payload shape for the HTTP adapter. Contains SchemaLike
|
|
141
|
+
* (Zod etc.) references. Converted to HttpSafeSchemas by adapter.normalize.
|
|
142
|
+
*/
|
|
143
|
+
export interface HttpPayloadSchemas {
|
|
144
|
+
request?: {
|
|
145
|
+
body?: SchemaLike<unknown>;
|
|
146
|
+
contentType?: string;
|
|
147
|
+
headers?: SchemaLike<Record<string, string>>;
|
|
148
|
+
example?: unknown;
|
|
149
|
+
examples?: Record<string, ContractExample<unknown>>;
|
|
150
|
+
};
|
|
151
|
+
response?: {
|
|
152
|
+
status?: number;
|
|
153
|
+
body?: SchemaLike<unknown>;
|
|
154
|
+
contentType?: string;
|
|
155
|
+
headers?: SchemaLike<NormalizedHeaders>;
|
|
156
|
+
example?: unknown;
|
|
157
|
+
examples?: Record<string, ContractExample<unknown>>;
|
|
158
|
+
};
|
|
159
|
+
params?: Record<string, HttpParamSchema>;
|
|
160
|
+
query?: Record<string, HttpParamSchema>;
|
|
161
|
+
security?: HttpSecurityScheme;
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* JSON-safe payload shape produced by adapter.normalize. All SchemaLike
|
|
165
|
+
* objects converted to JSON Schema plain objects. Safe to JSON.stringify.
|
|
166
|
+
*/
|
|
167
|
+
export interface HttpSafeSchemas {
|
|
168
|
+
request?: {
|
|
169
|
+
body?: unknown;
|
|
170
|
+
contentType?: string;
|
|
171
|
+
headers?: unknown;
|
|
172
|
+
example?: unknown;
|
|
173
|
+
examples?: Record<string, {
|
|
174
|
+
value: unknown;
|
|
175
|
+
summary?: string;
|
|
176
|
+
description?: string;
|
|
177
|
+
}>;
|
|
178
|
+
};
|
|
179
|
+
response?: {
|
|
180
|
+
status?: number;
|
|
181
|
+
body?: unknown;
|
|
182
|
+
contentType?: string;
|
|
183
|
+
headers?: unknown;
|
|
184
|
+
example?: unknown;
|
|
185
|
+
examples?: Record<string, {
|
|
186
|
+
value: unknown;
|
|
187
|
+
summary?: string;
|
|
188
|
+
description?: string;
|
|
189
|
+
}>;
|
|
190
|
+
};
|
|
191
|
+
params?: Record<string, HttpParamMeta>;
|
|
192
|
+
query?: Record<string, HttpParamMeta>;
|
|
193
|
+
security?: HttpSecurityScheme;
|
|
194
|
+
}
|
|
195
|
+
export interface HttpParamSchema {
|
|
196
|
+
schema?: SchemaLike<unknown>;
|
|
197
|
+
description?: string;
|
|
198
|
+
required?: boolean;
|
|
199
|
+
deprecated?: boolean;
|
|
200
|
+
}
|
|
201
|
+
export interface HttpParamMeta {
|
|
202
|
+
schema?: unknown;
|
|
203
|
+
description?: string;
|
|
204
|
+
required?: boolean;
|
|
205
|
+
deprecated?: boolean;
|
|
206
|
+
}
|
|
207
|
+
export interface HttpContractMeta {
|
|
208
|
+
/** Parsed from endpoint string. */
|
|
209
|
+
method?: string;
|
|
210
|
+
path?: string;
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Extract the "case inputs" shape from an HTTP PayloadSchemas.
|
|
214
|
+
* Used by ProtocolContract<Spec, HttpPayloadSchemas>.case(k) so that
|
|
215
|
+
* FlowBuilder.step lens functions get correct typing.
|
|
216
|
+
*/
|
|
217
|
+
export type InferHttpInputs<_P = HttpPayloadSchemas> = {
|
|
218
|
+
body?: unknown;
|
|
219
|
+
params?: Record<string, string>;
|
|
220
|
+
query?: Record<string, string>;
|
|
221
|
+
headers?: Record<string, string>;
|
|
222
|
+
};
|
|
223
|
+
/**
|
|
224
|
+
* Extract the "case output" shape — what the HTTP adapter returns from
|
|
225
|
+
* executeCaseInFlow. Consumed by flow lens `out(state, response)`.
|
|
226
|
+
*/
|
|
227
|
+
export type InferHttpOutput<_P = HttpPayloadSchemas> = {
|
|
228
|
+
status: number;
|
|
229
|
+
headers: NormalizedHeaders;
|
|
230
|
+
body: unknown;
|
|
231
|
+
};
|
|
232
|
+
export interface HttpFlowCaseOutput {
|
|
233
|
+
status: number;
|
|
234
|
+
headers: NormalizedHeaders;
|
|
235
|
+
body: unknown;
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Callable + chainable HTTP contract factory. Returned by
|
|
239
|
+
* `contract.http.with("name", defaults)`.
|
|
240
|
+
*/
|
|
241
|
+
export interface HttpContractFactory {
|
|
242
|
+
<Cases extends Record<string, ContractCase<any, any>>>(id: string, spec: HttpContractSpec<Cases>): import("../contract-types.js").ProtocolContract<HttpContractSpec, HttpPayloadSchemas, HttpContractMeta>;
|
|
243
|
+
with(name: string, defaults: HttpContractDefaults): HttpContractFactory;
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Root `contract.http` — only .with() is callable; direct call requires
|
|
247
|
+
* .with() first (enforces scoped-instance pattern for client injection).
|
|
248
|
+
*/
|
|
249
|
+
export interface HttpContractRoot {
|
|
250
|
+
with(name: string, defaults: HttpContractDefaults): HttpContractFactory;
|
|
251
|
+
}
|
|
252
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/contract-http/types.ts"],"names":[],"mappings":"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"}
|