swallowkit 1.0.0-beta.5 → 1.0.0-beta.7
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 -21
- package/README.ja.md +251 -242
- package/README.md +252 -243
- package/dist/__tests__/fixtures.d.ts +14 -0
- package/dist/__tests__/fixtures.d.ts.map +1 -0
- package/dist/__tests__/fixtures.js +85 -0
- package/dist/__tests__/fixtures.js.map +1 -0
- package/dist/cli/commands/create-model.js +14 -14
- package/dist/cli/commands/dev.d.ts +8 -0
- package/dist/cli/commands/dev.d.ts.map +1 -1
- package/dist/cli/commands/dev.js +238 -30
- package/dist/cli/commands/dev.js.map +1 -1
- package/dist/cli/commands/init.d.ts +5 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +2507 -1664
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/scaffold.d.ts +3 -0
- package/dist/cli/commands/scaffold.d.ts.map +1 -1
- package/dist/cli/commands/scaffold.js +281 -117
- package/dist/cli/commands/scaffold.js.map +1 -1
- package/dist/cli/index.js +2 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/core/config.d.ts +2 -1
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +28 -0
- package/dist/core/config.js.map +1 -1
- package/dist/core/scaffold/functions-generator.d.ts +5 -0
- package/dist/core/scaffold/functions-generator.d.ts.map +1 -1
- package/dist/core/scaffold/functions-generator.js +649 -218
- package/dist/core/scaffold/functions-generator.js.map +1 -1
- package/dist/core/scaffold/model-parser.d.ts +1 -1
- package/dist/core/scaffold/model-parser.js +99 -99
- package/dist/core/scaffold/nextjs-generator.js +181 -181
- package/dist/core/scaffold/openapi-generator.d.ts +3 -0
- package/dist/core/scaffold/openapi-generator.d.ts.map +1 -0
- package/dist/core/scaffold/openapi-generator.js +190 -0
- package/dist/core/scaffold/openapi-generator.js.map +1 -0
- package/dist/core/scaffold/ui-generator.js +656 -656
- package/dist/database/base-model.d.ts +3 -3
- package/dist/database/base-model.js +3 -3
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/types/index.d.ts +4 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/package-manager.d.ts +2 -1
- package/dist/utils/package-manager.d.ts.map +1 -1
- package/dist/utils/package-manager.js +14 -10
- package/dist/utils/package-manager.js.map +1 -1
- package/package.json +81 -74
- package/src/__tests__/__snapshots__/functions-generator.test.ts.snap +445 -0
- package/src/__tests__/__snapshots__/nextjs-generator.test.ts.snap +194 -0
- package/src/__tests__/__snapshots__/ui-generator.test.ts.snap +524 -0
- package/src/__tests__/config.test.ts +122 -0
- package/src/__tests__/dev.test.ts +42 -0
- package/src/__tests__/fixtures.ts +83 -0
- package/src/__tests__/functions-generator.test.ts +101 -0
- package/src/__tests__/init.test.ts +59 -0
- package/src/__tests__/nextjs-generator.test.ts +97 -0
- package/src/__tests__/openapi-generator.test.ts +43 -0
- package/src/__tests__/package-manager.test.ts +189 -0
- package/src/__tests__/scaffold.test.ts +39 -0
- package/src/__tests__/string-utils.test.ts +75 -0
- package/src/__tests__/ui-generator.test.ts +144 -0
- package/src/cli/commands/create-model.ts +141 -0
- package/src/cli/commands/dev.ts +794 -0
- package/src/cli/commands/index.ts +8 -0
- package/src/cli/commands/init.ts +3363 -0
- package/src/cli/commands/provision.ts +193 -0
- package/src/cli/commands/scaffold.ts +786 -0
- package/src/cli/index.ts +73 -0
- package/src/core/config.ts +244 -0
- package/src/core/scaffold/functions-generator.ts +674 -0
- package/src/core/scaffold/model-parser.ts +627 -0
- package/src/core/scaffold/nextjs-generator.ts +217 -0
- package/src/core/scaffold/openapi-generator.ts +212 -0
- package/src/core/scaffold/ui-generator.ts +945 -0
- package/src/database/base-model.ts +184 -0
- package/src/database/client.ts +140 -0
- package/src/database/repository.ts +104 -0
- package/src/database/runtime-check.ts +25 -0
- package/src/index.ts +27 -0
- package/src/types/index.ts +45 -0
- package/src/utils/package-manager.ts +229 -0
- package/dist/cli/commands/build.d.ts +0 -6
- package/dist/cli/commands/build.d.ts.map +0 -1
- package/dist/cli/commands/build.js +0 -177
- package/dist/cli/commands/build.js.map +0 -1
- package/dist/cli/commands/deploy.d.ts +0 -3
- package/dist/cli/commands/deploy.d.ts.map +0 -1
- package/dist/cli/commands/deploy.js +0 -147
- package/dist/cli/commands/deploy.js.map +0 -1
- package/dist/cli/commands/setup.d.ts +0 -6
- package/dist/cli/commands/setup.d.ts.map +0 -1
- package/dist/cli/commands/setup.js +0 -254
- package/dist/cli/commands/setup.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuJA,kCA4GC;AAoHD,gEAKC;AAED,8EAcC;AAED,8EA0BC;AAxaD,uCAAyB;AACzB,2CAA6B;AAC7B,iDAAgD;AAChD,sDAA8B;AAE9B,iEAUqC;AAqBrC,MAAM,wBAAwB,GAAqD;IACjF,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;IAC5C,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE;IAChC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;CACrC,CAAC;AAEF,SAAS,wBAAwB,CAAC,eAAgC;IAChE,OAAO,eAAe,KAAK,YAAY,CAAC;AAC1C,CAAC;AAED,SAAS,uBAAuB,CAAC,eAAgC;IAC/D,OAAO,wBAAwB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,eAAe,CAAC,EAAE,KAAK,IAAI,eAAe,CAAC;AAC/G,CAAC;AAED,SAAS,yBAAyB,CAAC,eAAgC;IACjE,IAAI,eAAe,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IACD,IAAI,eAAe,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,yBAAyB,CAAC,eAAgC;IACjE,IAAI,eAAe,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACrD,CAAC;IACD,IAAI,eAAe,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC7C,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACzC,CAAC;AAED,KAAK,UAAU,qBAAqB;IAClC,MAAM,QAAQ,GAAG,MAAM,IAAA,iBAAO,EAAC;QAC7B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,mCAAmC;QAC5C,OAAO,EAAE,wBAAwB;QACjC,OAAO,EAAE,CAAC;KACX,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC,eAAe,IAAI,YAAY,CAAC;AAClD,CAAC;AAED,KAAK,UAAU,UAAU;IACvB,MAAM,QAAQ,GAAG,MAAM,IAAA,iBAAO,EAAC;QAC7B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,6CAA6C;QACtD,OAAO,EAAE;YACP,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE;YAC5C,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE;YAC5C,EAAE,KAAK,EAAE,0BAA0B,EAAE,KAAK,EAAE,MAAM,EAAE;SACrD;QACD,OAAO,EAAE,CAAC;KACX,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC;AACjC,CAAC;AAED,KAAK,UAAU,iBAAiB;IAC9B,MAAM,cAAc,GAAG,MAAM,IAAA,iBAAO,EAAC;QACnC,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,gCAAgC;QACzC,OAAO,EAAE;YACP,EAAE,KAAK,EAAE,oDAAoD,EAAE,KAAK,EAAE,UAAU,EAAE;YAClF,EAAE,KAAK,EAAE,oCAAoC,EAAE,KAAK,EAAE,YAAY,EAAE;SACrE;QACD,OAAO,EAAE,CAAC;KACX,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,MAAM,IAAA,iBAAO,EAAC;QACjC,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE;YACP,EAAE,KAAK,EAAE,iEAAiE,EAAE,KAAK,EAAE,UAAU,EAAE;YAC/F,EAAE,KAAK,EAAE,oDAAoD,EAAE,KAAK,EAAE,MAAM,EAAE;SAC/E;QACD,OAAO,EAAE,CAAC;KACX,CAAC,CAAC;IAEH,OAAO;QACL,YAAY,EAAE,cAAc,CAAC,IAAI,IAAI,UAAU;QAC/C,UAAU,EAAE,YAAY,CAAC,IAAI,IAAI,UAAU;KAC5C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,GAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAC/D,MAAM,sBAAsB,GAAsB,CAAC,YAAY,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACrF,MAAM,oBAAoB,GAAmB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;AACxE,MAAM,UAAU,GAAiB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAEtD,SAAS,iBAAiB,CAAC,OAAoB;IAC7C,IAAI,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,4BAA4B,OAAO,CAAC,IAAI,eAAe,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,CAAC,eAAe,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;QACzF,OAAO,CAAC,KAAK,CAAC,wCAAwC,OAAO,CAAC,eAAe,eAAe,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QACjF,OAAO,CAAC,KAAK,CAAC,sCAAsC,OAAO,CAAC,YAAY,eAAe,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1H,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,4BAA4B,OAAO,CAAC,IAAI,eAAe,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,WAAW,CAAC,OAAoB;IACpD,6CAA6C;IAC7C,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAE3B,OAAO,CAAC,GAAG,CAAC,uCAAuC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAEhD,8EAA8E;IAC9E,MAAM,EAAE,GAAmB,IAAA,qCAAmB,GAAE,CAAC;IACjD,MAAM,KAAK,GAAG,IAAA,6BAAW,EAAC,EAAE,CAAC,CAAC;IAC9B,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;IAEzC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1D,IAAI,CAAC;QACH,oCAAoC;QACpC,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,KAAK,CAAC,gBAAgB,OAAO,CAAC,IAAI,mBAAmB,CAAC,CAAC;YAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,8DAA8D;QAC9D,MAAM,YAAY,GAAiB,OAAO,CAAC,IAAI,IAAI,MAAM,UAAU,EAAE,CAAC;QACtE,MAAM,eAAe,GAAoB,OAAO,CAAC,eAAe,IAAI,MAAM,qBAAqB,EAAE,CAAC;QAElG,MAAM,WAAW,GAAgB,CAAC,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;YACrE,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE;YAClE,CAAC,CAAC,MAAM,iBAAiB,EAAE,CAAC;QAE9B,8CAA8C;QAC9C,MAAM,mBAAmB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAE5C,gFAAgF;QAChF,MAAM,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,WAAW,IAAI,QAAQ,EAAE,EAAE,CAAC,CAAC;QAErE,gCAAgC;QAChC,MAAM,kBAAkB,CAAC,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,EAAE,eAAe,CAAC,CAAC;QAE9F,sCAAsC;QACtC,MAAM,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;QAEnF,qCAAqC;QACrC,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,4BAA4B,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE,EAAE,eAAe,CAAC,CAAC;QACnF,CAAC;aAAM,IAAI,YAAY,KAAK,OAAO,EAAE,CAAC;YACpC,MAAM,oBAAoB,CAAC,UAAU,EAAE,EAAE,EAAE,eAAe,CAAC,CAAC;QAC9D,CAAC;QAED,sDAAsD;QACtD,IAAI,CAAC;YACH,8DAA8D;YAC9D,IAAI,CAAC;gBACH,IAAA,wBAAQ,EAAC,kBAAkB,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YACrE,CAAC;YAAC,MAAM,CAAC;gBACP,kCAAkC;gBAClC,IAAA,wBAAQ,EAAC,UAAU,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC7D,CAAC;YAED,uDAAuD;YACvD,IAAI,CAAC;gBACH,IAAA,wBAAQ,EAAC,sBAAsB,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;gBACrE,IAAA,wBAAQ,EAAC,uBAAuB,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACxE,CAAC;YAAC,MAAM,CAAC;gBACP,2DAA2D;gBAC3D,IAAA,wBAAQ,EAAC,mCAAmC,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACpF,IAAA,wBAAQ,EAAC,gDAAgD,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YACnG,CAAC;YAED,IAAA,wBAAQ,EAAC,YAAY,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC7D,IAAA,wBAAQ,EAAC,gDAAgD,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YAEjG,wDAAwD;YACxD,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,IAAA,wBAAQ,EAAC,2BAA2B,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC3G,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;oBAC7B,IAAA,wBAAQ,EAAC,oBAAoB,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACvE,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,kDAAkD;YACpD,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QACpE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;YAC5E,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,OAAO,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,CAAC,IAAI,yBAAyB,CAAC,CAAC;QACnE,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,4DAA4D,CAAC,CAAC;QACxF,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,oEAAoE,CAAC,CAAC;QAChG,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,8CAA8C,CAAC,CAAC;QAC1E,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,+CAA+C,CAAC,CAAC;QAC3E,IAAI,YAAY,KAAK,MAAM,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;QACnD,sBAAsB;QACtB,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,WAAmB,EAAE,EAAkB;IACxE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QAEvE,MAAM,KAAK,GAAG,IAAA,6BAAW,EAAC,EAAE,CAAC,CAAC;QAE9B,4EAA4E;QAC5E,2DAA2D;QAC3D,MAAM,QAAQ,GAAG,EAAE,KAAK,MAAM;YAC5B,CAAC,CAAC,CAAC,KAAK,EAAE,wBAAwB,CAAC;YACnC,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC;QAE/B,MAAM,IAAI,GAAG;YACX,GAAG,QAAQ;YACX,WAAW;YACX,cAAc;YACd,YAAY;YACZ,OAAO;YACP,UAAU;YACV,eAAe;YACf,gBAAgB;YAChB,KAAK;YACL,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,OAAO;SACR,CAAC;QAEF,yDAAyD;QACzD,MAAM,aAAa,GAAG,IAAA,qBAAK,EACzB,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAC9B,IAAI,EACJ;YACE,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,IAAI;SACZ,CACF,CAAC;QAEF,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAmB,EAAE,EAAE;YAChD,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,KAAK,CAAC,oCAAoC,IAAI,EAAE,CAAC,CAAC,CAAC;YAChE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;gBAC7C,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;YACzC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,UAAkB,EAAE,OAAe,EAAE,EAAkB;IAClF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,OAAO,CAAC,GAAG,CAAC,2BAA2B,OAAO,2CAA2C,CAAC,CAAC;QAE3F,sDAAsD;QACtD,MAAM,IAAI,GAAG,EAAE,KAAK,MAAM;YACxB,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,cAAc,CAAC;YAChF,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,cAAc,CAAC,CAAC;QAEvF,MAAM,KAAK,GAAG,IAAA,qBAAK,EACjB,EAAE,EACF,IAAI,EACJ;YACE,GAAG,EAAE,UAAU;YACf,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,IAAI;SACZ,CACF,CAAC;QAEF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAmB,EAAE,EAAE;YACxC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,EAAE,aAAa,OAAO,qBAAqB,IAAI,EAAE,CAAC,CAAC,CAAC;YAC1E,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,eAAe,OAAO,cAAc,CAAC,CAAC;gBAClD,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;YACjC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,UAAkB,EAAE,KAAqB,MAAM;IAChF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QAEjD,MAAM,KAAK,GAAG,IAAA,qBAAK,EACjB,EAAE,EACF,CAAC,SAAS,CAAC,EACX;YACE,GAAG,EAAE,UAAU;YACf,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,IAAI;SACZ,CACF,CAAC;QAEF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAmB,EAAE,EAAE;YACxC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,EAAE,6BAA6B,IAAI,EAAE,CAAC,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;gBAC5C,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;YACjC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,0BAA0B,CAAC,iBAAyB,EAAE,WAAmB;IACvF,OAAO,iBAAiB,CAAC,OAAO,CAC9B,2EAA2E,EAC3E,wDAAwD,WAAW,mGAAmG,CACvK,CAAC;AACJ,CAAC;AAED,SAAgB,iCAAiC;IAC/C,OAAO;;;;;;;;;;;;CAYR,CAAC;AACF,CAAC;AAED,SAAgB,iCAAiC;IAC/C,OAAO;;;;;;;;;;;;;;;;;;;;;;;;CAwBR,CAAC;AACF,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,UAAkB,EAClB,OAAoB,EACpB,UAAkB,EAClB,WAAwB,EACxB,EAAkB,EAClB,eAAgC;IAEhC,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IAE/C,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjC,0EAA0E;IAC1E,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAC9D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;IAE1E,kFAAkF;IAClF,mDAAmD;IACnD,WAAW,CAAC,YAAY,GAAG;QACzB,GAAG,WAAW,CAAC,YAAY;QAC3B,YAAY,EAAE,QAAQ;QACtB,eAAe,EAAE,QAAQ;QACzB,qBAAqB,EAAE,QAAQ;QAC/B,CAAC,IAAI,WAAW,SAAS,CAAC,EAAE,GAAG;KAChC,CAAC;IAEF,IAAI,eAAe,KAAK,YAAY,EAAE,CAAC;QACrC,WAAW,CAAC,eAAe,GAAG;YAC5B,GAAG,WAAW,CAAC,eAAe;YAC9B,qCAAqC,EAAE,SAAS;SACjD,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,OAAO,GAAG;QACpB,GAAG,WAAW,CAAC,OAAO;QACtB,OAAO,EAAE,IAAA,gCAAc,EAAC,EAAE,CAAC;QAC3B,OAAO,EAAE,YAAY;QACrB,iBAAiB,EAAE,IAAA,yCAAuB,EAAC,EAAE,EAAE,eAAe,CAAC;KAChE,CAAC;IAEF,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;QAClB,WAAW,CAAC,cAAc,GAAG,aAAa,CAAC;IAC7C,CAAC;IAED,WAAW,CAAC,OAAO,GAAG;QACpB,IAAI,EAAE,MAAM;KACb,CAAC;IAEF,qDAAqD;IACrD,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC3G,MAAM,QAAQ,GAAG,IAAA,oCAAkB,EAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;IAC3D,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC7B,sDAAsD;QACtD,OAAO,WAAW,CAAC,UAAU,CAAC;IAChC,CAAC;SAAM,CAAC;QACN,8CAA8C;QAC9C,WAAW,CAAC,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC;IAC1C,CAAC;IAED,EAAE,CAAC,aAAa,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAExE,+DAA+D;IAC/D,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC7B,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC/E,CAAC;IAED,wFAAwF;IAExF,iDAAiD;IACjD,sCAAsC;IACtC,IAAI,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;IAC7D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QACnC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QAClC,IAAI,iBAAiB,GAAG,EAAE,CAAC,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAEjE,2FAA2F;QAC3F,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACtF,iBAAiB,GAAG,0BAA0B,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;YAC/E,EAAE,CAAC,aAAa,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,yDAAyD;IACzD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IAC5D,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;QACpE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,QAAQ,CAAC,OAAO,GAAG,EAAE,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC5C,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;QACD,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,8BAA8B;IAC9B,MAAM,gBAAgB,GAAG;;;iBAGV,eAAe;;;;;;;;;;CAU/B,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,sBAAsB,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAElF,6EAA6E;IAC7E,MAAM,mBAAmB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAEnD,sDAAsD;IACtD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAE5C,iDAAiD;IACjD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3C,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7C,qDAAqD;IACrD,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoG5B,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,kBAAkB,CAAC,CAAC;IAEzE,iCAAiC;IACjC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IAC1D,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEjD,yBAAyB;IACzB,MAAM,UAAU,GAAG;;;;;;CAMpB,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,UAAU,CAAC,CAAC;IAEpE,+EAA+E;IAC/E,MAAM,sBAAsB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsEhC,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,EAAE,sBAAsB,CAAC,CAAC;IAEtF,6CAA6C;IAC7C,MAAM,eAAe,GAAG;QACtB,uCAAuC;QACvC,kDAAkD;QAClD,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,eAAe,CAAC,CAAC;IAEvE,0FAA0F;IAC1F,MAAM,SAAS,GAAG;QAChB,QAAQ,EAAE;YACR,UAAU,EAAE,SAAS;SACtB;QACD,MAAM,EAAE;YACN;gBACE,KAAK,EAAE,IAAI;gBACX,YAAY,EAAE,CAAC,WAAW,CAAC;aAC5B;SACF;QACD,aAAa,EAAE;YACb,wBAAwB,EAAE,SAAS;YACnC,iBAAiB,EAAE,MAAM;YACzB,kBAAkB,EAAE,eAAe;SACpC;QACD,SAAS,EAAE;YACT,OAAO,EAAE,kBAAkB;SAC5B;KACF,CAAC;IACF,EAAE,CAAC,aAAa,CACd,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,0BAA0B,CAAC,EACjD,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CACnC,CAAC;IAEF,qCAAqC;IACrC,MAAM,2BAA2B,CAAC,UAAU,EAAE,EAAE,EAAE,eAAe,CAAC,CAAC;IAEnE,mDAAmD;IACnD,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAEpC,uBAAuB;IACvB,MAAM,cAAc,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAErC,qEAAqE;IACrE,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;IACzD,MAAM,mBAAmB,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAE1C,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAE7C,uBAAuB;IACvB,YAAY,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,EAAE,eAAe,CAAC,CAAC;IAEpF,sGAAsG;IACtG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;AAC/D,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,UAAkB,EAAE,WAAmB;IACxE,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;IAExE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACjD,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7C,sBAAsB;IACtB,MAAM,iBAAiB,GAAG;QACxB,IAAI,EAAE,IAAI,WAAW,SAAS;QAC9B,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,mEAAmE;QAChF,IAAI,EAAE,eAAe;QACrB,KAAK,EAAE,iBAAiB;QACxB,OAAO,EAAE;YACP,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,aAAa;SACrB;QACD,YAAY,EAAE;YACZ,KAAK,EAAE,UAAU;SAClB;QACD,eAAe,EAAE;YACf,YAAY,EAAE,QAAQ;SACvB;KACF,CAAC;IACF,EAAE,CAAC,aAAa,CACd,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,EACpC,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC,CAC3C,CAAC;IAEF,uBAAuB;IACvB,MAAM,cAAc,GAAG;QACrB,eAAe,EAAE;YACf,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,UAAU;YAClB,gBAAgB,EAAE,MAAM;YACxB,GAAG,EAAE,CAAC,QAAQ,CAAC;YACf,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,GAAG;YACZ,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE,IAAI;YACpB,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;YACZ,eAAe,EAAE,IAAI;YACrB,YAAY,EAAE,IAAI;YAClB,gCAAgC,EAAE,IAAI;SACvC;QACD,OAAO,EAAE,CAAC,UAAU,EAAE,aAAa,CAAC;QACpC,OAAO,EAAE,CAAC,cAAc,EAAE,MAAM,CAAC;KAClC,CAAC;IACF,EAAE,CAAC,aAAa,CACd,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,EACrC,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CACxC,CAAC;IAEF,oEAAoE;IACpE,EAAE,CAAC,aAAa,CACd,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,EAChC,qHAAqH,CACtH,CAAC;IAEF,oBAAoB;IACpB,EAAE,CAAC,aAAa,CACd,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,EAClC,sBAAsB,CACvB,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;AAC5C,CAAC;AAED,KAAK,UAAU,2BAA2B,CACxC,UAAkB,EAClB,KAAqB,MAAM,EAC3B,kBAAmC,YAAY;IAE/C,OAAO,CAAC,GAAG,CAAC,wCAAwC,uBAAuB,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IAEtG,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACxD,EAAE,CAAC,SAAS,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,YAAY,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;IAE7F,wBAAwB,CAAC,YAAY,EAAE,YAAY,EAAE,eAAe,CAAC,CAAC;IAEtE,IAAI,eAAe,KAAK,YAAY,EAAE,CAAC;QACrC,gCAAgC,CAAC,UAAU,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;IACjE,CAAC;SAAM,IAAI,eAAe,KAAK,QAAQ,EAAE,CAAC;QACxC,4BAA4B,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IACzD,CAAC;SAAM,CAAC;QACN,4BAA4B,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IACzD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,wBAAwB,CAAC,YAAoB,EAAE,YAAoB,EAAE,eAAgC;IAC5G,MAAM,QAAQ,GAAG;QACf,OAAO,EAAE,KAAK;QACd,OAAO,EAAE;YACP,mBAAmB,EAAE;gBACnB,gBAAgB,EAAE;oBAChB,SAAS,EAAE,IAAI;oBACf,0BAA0B,EAAE,EAAE;iBAC/B;aACF;SACF;QACD,eAAe,EAAE;YACf,EAAE,EAAE,2CAA2C;YAC/C,OAAO,EAAE,iBAAiB;SAC3B;KACF,CAAC;IACF,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAE1F,MAAM,aAAa,GAAG;QACpB,WAAW,EAAE,KAAK;QAClB,MAAM,EAAE;YACN,mBAAmB,EAAE,EAAE;YACvB,wBAAwB,EAAE,yBAAyB,CAAC,eAAe,CAAC;YACpE,wBAAwB,EAAE,sBAAsB;YAChD,kBAAkB,EAAE,4IAA4I;YAChK,uBAAuB,EAAE,YAAY;YACrC,4BAA4B,EAAE,GAAG;SAClC;KACF,CAAC;IACF,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,qBAAqB,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAEzG,MAAM,cAAc,GAAG;QACrB,qBAAqB;QACrB,OAAO;QACP,SAAS;QACT,WAAW;KACZ,CAAC;IAEF,IAAI,eAAe,KAAK,YAAY,EAAE,CAAC;QACrC,cAAc,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QAC/C,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,EAAE;;;;;;;;CAQ5D,CAAC,CAAC;IACD,CAAC;SAAM,IAAI,eAAe,KAAK,QAAQ,EAAE,CAAC;QACxC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,EAAE,kBAAkB,CAAC,CAAC;QACnE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,EAAE;;;;;;;CAO5D,CAAC,CAAC;IACD,CAAC;SAAM,CAAC;QACN,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACrC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,EAAE;;;;CAI5D,CAAC,CAAC;IACD,CAAC;IAED,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,EAAE,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5F,CAAC;AAED,SAAS,gCAAgC,CAAC,UAAkB,EAAE,YAAoB,EAAE,EAAkB;IACpG,MAAM,oBAAoB,GAAG;QAC3B,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,yBAAyB;QACtC,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE;YACP,KAAK,EAAE,YAAY;YACnB,KAAK,EAAE,KAAK;YACZ,QAAQ,EAAE,IAAA,sCAAoB,EAAC,EAAE,CAAC;SACnC;QACD,YAAY,EAAE;YACZ,kBAAkB,EAAE,QAAQ;YAC5B,eAAe,EAAE,QAAQ;YACzB,iBAAiB,EAAE,QAAQ;YAC3B,GAAG,EAAE,UAAU;YACf,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,GAAG;SAC9C;QACD,eAAe,EAAE;YACf,aAAa,EAAE,SAAS;YACxB,UAAU,EAAE,QAAQ;SACrB;KACF,CAAC;IACF,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAEzG,MAAM,aAAa,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC;IAC7D,MAAM,iBAAiB,GAAG;QACxB,eAAe,EAAE;YACf,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,UAAU;YAClB,gBAAgB,EAAE,MAAM;YACxB,GAAG,EAAE,CAAC,QAAQ,CAAC;YACf,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,IAAI;YACZ,eAAe,EAAE,IAAI;YACrB,YAAY,EAAE,IAAI;YAClB,gCAAgC,EAAE,IAAI;YACtC,KAAK,EAAE;gBACL,CAAC,aAAa,CAAC,EAAE,CAAC,WAAW,CAAC;gBAC9B,CAAC,GAAG,aAAa,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;aACxC;SACF;QACD,OAAO,EAAE,CAAC,UAAU,CAAC;QACrB,OAAO,EAAE,CAAC,cAAc,EAAE,MAAM,CAAC;KAClC,CAAC;IACF,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAEvG,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAC9C,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgDjD,CAAC,CAAC;AACH,CAAC;AAED,SAAS,4BAA4B,CAAC,UAAkB,EAAE,YAAoB;IAC5E,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzF,MAAM,UAAU,GAAG,GAAG,aAAa,mBAAmB,CAAC;IAEvD,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,iCAAiC,EAAE,CAAC,CAAC;IAE3F,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,EAAE,iCAAiC,EAAE,CAAC,CAAC;IAE7F,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAChD,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,kBAAkB,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgC1D,CAAC,CAAC;AACH,CAAC;AAED,SAAS,4BAA4B,CAAC,UAAkB,EAAE,YAAoB;IAC5E,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,EAAE,QAAQ,CAAC,CAAC;IAErE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,kBAAkB,CAAC,EAAE;;;CAG/D,CAAC,CAAC;IAED,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IAC5D,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;IAE9D,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;CAoBxD,CAAC,CAAC;IAED,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,iBAAiB,CAAC,EAAE;;;;;;;;CAQ9D,CAAC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,UAAkB;IACjD,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAE9C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC5D,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE1C,mEAAmE;IACnE,MAAM,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0ClB,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,QAAQ,CAAC,CAAC;IAE1D,4DAA4D;IAC5D,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAC7D,IAAI,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAE1D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EAAE,CAAC;QACvD,UAAU,IAAI,qFAAqF,CAAC;QACpG,EAAE,CAAC,aAAa,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;IAC/C,CAAC;IAED,oBAAoB;IACpB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IACzD,IAAI,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAEtD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EAAE,CAAC;QACrD,QAAQ,IAAI,6FAA6F,CAAC;QAC1G,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;AAC3C,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,UAAkB,EAAE,KAAqB,MAAM;IAC3E,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAE1C,MAAM,KAAK,GAAG,IAAA,6BAAW,EAAC,EAAE,CAAC,CAAC;IAE9B,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA4FJ,KAAK,CAAC,GAAG;;;;;;;;;;;;;CAa1B,CAAC;IAEA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,WAAW,CAAC,CAAC;IAExE,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAErC,oCAAoC;IACpC,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACvD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACtC,EAAE,CAAC,SAAS,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,qBAAqB,GAAG;;;;;;;;;;;CAW/B,CAAC;IAEA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,EAAE,qBAAqB,CAAC,CAAC;IAC5F,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,YAAY,CACnB,UAAkB,EAClB,WAAmB,EACnB,UAAkB,EAClB,WAAwB,EACxB,EAAkB,EAClB,eAAgC;IAEhC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAE1C,MAAM,KAAK,GAAG,IAAA,6BAAW,EAAC,EAAE,CAAC,CAAC;IAC9B,MAAM,iBAAiB,GAAG,WAAW,CAAC,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,YAAY,CAAC;IAC3G,MAAM,SAAS,GAAG,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC;IACnH,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC;QAC/D,4CAA4C,CAAC;IAC/D,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,eAAe,CAAC,CAAC;IACtE,MAAM,uBAAuB,GAAG,eAAe,KAAK,YAAY;QAC9D,CAAC,CAAC,2CAA2C;QAC7C,CAAC,CAAC,mDAAmD,oBAAoB,mCAAmC,CAAC;IAC/G,MAAM,aAAa,GAAG,eAAe,KAAK,YAAY;QACpD,CAAC,CAAC,2DAA2D;QAC7D,CAAC,CAAC,eAAe,KAAK,QAAQ;YAC5B,CAAC,CAAC,mGAAmG;YACrG,CAAC,CAAC,qGAAqG,CAAC;IAC5G,MAAM,mBAAmB,GAAG,eAAe,KAAK,YAAY;QAC1D,CAAC,CAAC,kCAAkC;QACpC,CAAC,CAAC,qBAAqB,oBAAoB,8CAA8C,oBAAoB,gBAAgB,CAAC;IAChI,MAAM,kBAAkB,GAAG,eAAe,KAAK,QAAQ;QACrD,CAAC,CAAC,uXAAuX;QACzX,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,MAAM,GAAG,KAAK,WAAW;;;;;;;;kCAQC,oBAAoB;;2BAE3B,uBAAuB;;eAEnC,SAAS;;;;;;;wBAOA,iBAAiB;0BACf,SAAS;eACpB,SAAS;;;;;;qDAM6B,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,+DAA+D,CAAC,CAAC,CAAC,EAAE;EACvI,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;;;EAGzB,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;;;;EAIzB,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;;;;;EAKzB,WAAW;;;;;EAKX,aAAa;;;;;;;;;;;;;;;;EAgBb,KAAK,CAAC,GAAG;;;;;;;;;;EAUT,KAAK,CAAC,GAAG;;;;EAIT,mBAAmB;;;;;;;;EAQnB,KAAK,CAAC,GAAG;;;;;;;;;EAST,kBAAkB;;;;;;;;;EASlB,KAAK,CAAC,GAAG;;;;0BAIe,WAAW;4BACT,WAAW;wBACf,WAAW;;;;;;;;;EASjC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC;;;;6CAIiB,WAAW;;;;;+DAKO,WAAW;;;;;0CAKhC,WAAW;;;+GAG0D,CAAC,CAAC,CAAC,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC;;;;;;;0BAOjH,CAAC,CAAC,CAAC;;;;EAI3B,KAAK,CAAC,GAAG;oCACyB,WAAW;;;;;;EAM7C,KAAK,CAAC,GAAG;sCAC2B,WAAW;OAC1C;;;;MAID,KAAK,CAAC,GAAG;MACT,KAAK,CAAC,GAAG;MACT,KAAK,CAAC,GAAG;MACT,KAAK,CAAC,GAAG;EACb,WAAW,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC;;;oCAGF,SAAS;;;;;;;;;;;;;;;;;;WAkBlC,WAAW;;;gBAGN,WAAW;;;;;CAK1B,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;CAaL,CAAC;IAEA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,kBAAkB,CAAC,UAAkB,EAAE,WAAmB,EAAE,eAAgC;IACnG,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAC3D,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,eAAe,CAAC,CAAC;IACtE,MAAM,sBAAsB,GAAG,eAAe,KAAK,YAAY;QAC7D,CAAC,CAAC,4EAA4E;QAC9E,CAAC,CAAC,eAAe,KAAK,QAAQ;YAC5B,CAAC,CAAC,sHAAsH;YACxH,CAAC,CAAC,8HAA8H,CAAC;IACrI,MAAM,iBAAiB,GAAG,eAAe,KAAK,YAAY;QACxD,CAAC,CAAC,4BAA4B,WAAW,uFAAuF;QAChI,CAAC,CAAC,uKAAuK,oBAAoB,+DAA+D,CAAC;IAC/P,MAAM,gBAAgB,GAAG,eAAe,KAAK,YAAY;QACvD,CAAC,CAAC,2eAA2e;QAC7e,CAAC,CAAC,6cAA6c,CAAC;IAEld,sEAAsE;IAEtE,MAAM,QAAQ,GAAG;;;;;;;sHAOmG,oBAAoB;;;;;;;;;;;;;;;EAexI,WAAW;;;;;EAKX,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;gCA2BQ,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA4BvC,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;IA2BjB,gBAAgB;;EAElB,eAAe,KAAK,YAAY,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,aAAa,oBAAoB,wLAAwL;;EAEjS,eAAe,KAAK,YAAY,CAAC,CAAC,CAAC;;;gCAGL,WAAW;;;;;;;;;;;;;;;OAepC,CAAC,CAAC,CAAC,EAAE;;;;;;;;gFAQoE,eAAe,KAAK,YAAY,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BAiChN,eAAe,KAAK,YAAY,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,sFAAsF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCA0CrJ,oBAAoB;;;;;;;CAOrD,CAAC;IAEA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC/D,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IAEtD,sEAAsE;IAEtE,MAAM,QAAQ,GAAG;;;;;;;;;0BASO,oBAAoB;;;;;;;;;;;;;;;;;;CAkB7C,CAAC;IAEA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC/D,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAE3C,sEAAsE;IAEtE,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC/C,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;CA0B7B,CAAC;IAEA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,yBAAyB,CAAC,EAAE,mBAAmB,CAAC,CAAC;IACnF,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;IAEpE,2EAA2E;IAE3E,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IACzD,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEnD,uCAAuC;IACvC,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;;;;;;;;CAqBlC,CAAC;IAEA,EAAE,CAAC,aAAa,CACd,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,+BAA+B,CAAC,EAC3D,wBAAwB,CACzB,CAAC;IAEF,0BAA0B;IAC1B,MAAM,eAAe,GAAG;;;;;;;;;;;;;2BAaC,WAAW;;;;;;gCAMN,WAAW;;;;;;;;;;;CAW1C,CAAC;IAEA,EAAE,CAAC,aAAa,CACd,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,4BAA4B,CAAC,EACxD,eAAe,CAChB,CAAC;IAEF,gDAAgD;IAChD,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;gCAoBA,WAAW;;;;;;;;;;;;;;CAc1C,CAAC;IAEA,EAAE,CAAC,aAAa,CACd,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,iCAAiC,CAAC,EAC7D,qBAAqB,CACtB,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;IAC/E,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IAEtD,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;IACpE,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;IAC5E,OAAO,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC;IACnF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,UAAkB,EAClB,WAAmB,EACnB,WAAwB,EACxB,eAAgC;IAEhC,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;IAE7D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAClD,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9C,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,KAAK,MAAM,CAAC;IACrD,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,eAAe,CAAC,CAAC;IAEpE,aAAa;IACb,MAAM,SAAS,GAAG;;;;;;;;;;;;;+BAaW,WAAW,CAAC,YAAY;;;0BAG7B,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAqGL,gBAAgB,CAAC,IAAI;kCAClB,gBAAgB,CAAC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8DzD,CAAC;IAEA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE,SAAS,CAAC,CAAC;IAE/D,uBAAuB;IACvB,MAAM,MAAM,GAAG;;;;;kBAKC,WAAW;;;kBAGX,WAAW,CAAC,YAAY;;;iBAGzB,UAAU;;;;CAI1B,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,sBAAsB,CAAC,EAAE,MAAM,CAAC,CAAC;IAEtE,6BAA6B;IAC7B,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2C3B,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAEjF,qFAAqF;IACrF,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBjC,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,2BAA2B,CAAC,EAAE,uBAAuB,CAAC,CAAC;IAE9F,8DAA8D;IAC9D,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;;;CAmB3B,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAEjF,0FAA0F;IAC1F,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;CAyB1B,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAE/E,kDAAkD;IAClD,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmK5B,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,sBAAsB,CAAC,EAAE,kBAAkB,CAAC,CAAC;IAEpF,8CAA8C;IAC9C,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwD/B,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,yBAAyB,CAAC,EAAE,qBAAqB,CAAC,CAAC;IAE1F,iDAAiD;IACjD,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDjC,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,2BAA2B,CAAC,EAAE,uBAAuB,CAAC,CAAC;IAE9F,kEAAkE;IAClE,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;CAyBrC,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,gCAAgC,CAAC,EAAE,2BAA2B,CAAC,CAAC;IAEvG,kDAAkD;IAClD,IAAI,UAAU,EAAE,CAAC;QACf,qBAAqB;QACrB,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6CrB,CAAC;QACE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,SAAS,CAAC,CAAC;QAEjE,wCAAwC;QACxC,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6EtC,CAAC;QACE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,+BAA+B,CAAC,EAAE,0BAA0B,CAAC,CAAC;QAErG,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,0BAA0B,CAAC,EAAkB,EAAE,eAAgC;IACtF,MAAM,KAAK,GAAG,IAAA,6BAAW,EAAC,EAAE,CAAC,CAAC;IAC9B,MAAM,aAAa,GAAG,IAAA,gCAAc,EAAC,EAAE,CAAC,CAAC;IAEzC,MAAM,WAAW,GAAG;;;;;;EAMpB,aAAa,CAAC,CAAC,CAAC,KAAK,aAAa,IAAI,CAAC,CAAC,CAAC,EAAE;;;YAGjC,KAAK,CAAC,EAAE;;;;YAIR,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC;CACpC,CAAC;IAEA,IAAI,eAAe,KAAK,YAAY,EAAE,CAAC;QACrC,OAAO;;;;;;;;;;;;;;;;;;;;;;;EAuBT,WAAW;;YAED,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC;;;;;;;+BAOT,KAAK,CAAC,WAAW;;;;;;;;;;;;;;;;CAgB/C,CAAC;IACA,CAAC;IAED,IAAI,eAAe,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO;;;;;;;;;;;;;;;;;;;;;;;EAuBT,WAAW;;;;;;;;;;;;;;;;;CAiBZ,CAAC;IACA,CAAC;IAED,OAAO;;;;;;;;;;;;;;;;;;;;;;;EAuBP,WAAW;;;;;;;;;;;;;;;;;;CAkBZ,CAAC;AACF,CAAC;AAED,SAAS,yBAAyB,CAAC,EAAkB,EAAE,eAAgC;IACrF,MAAM,KAAK,GAAG,IAAA,6BAAW,EAAC,EAAE,CAAC,CAAC;IAC9B,MAAM,gBAAgB,GAAG,IAAA,wCAAsB,EAAC,EAAE,CAAC,CAAC;IACpD,MAAM,WAAW,GAAG;;;;EAIpB,gBAAgB,CAAC,CAAC,CAAC,KAAK,gBAAgB,IAAI,CAAC,CAAC,CAAC,EAAE;;QAE3C,KAAK,CAAC,EAAE;;;;QAIR,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC;;CAEhC,CAAC;IAEA,IAAI,eAAe,KAAK,YAAY,EAAE,CAAC;QACrC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;EAyBT,WAAW;QACL,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC;;;;;;;2BAOT,KAAK,CAAC,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiC3C,CAAC;IACA,CAAC;IAED,IAAI,eAAe,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;EAyBT,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BZ,CAAC;IACA,CAAC;IAED,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;EAyBP,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BZ,CAAC;AACF,CAAC;AAED,KAAK,UAAU,4BAA4B,CACzC,UAAkB,EAClB,WAAwB,EACxB,EAAkB,EAClB,eAAgC;IAEhC,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;IAEzD,MAAM,KAAK,GAAG,IAAA,6BAAW,EAAC,EAAE,CAAC,CAAC;IAC9B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IACnE,EAAE,CAAC,SAAS,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhD,iBAAiB;IACjB,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmDrB,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAAC,EAAE,WAAW,CAAC,CAAC;IAEzE,uBAAuB;IACvB,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;IAC1E,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,sBAAsB,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAErF,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;AACtD,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,UAAkB,EAAE,EAAkB,EAAE,eAAgC;IAC1G,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;IAEhD,MAAM,KAAK,GAAG,IAAA,6BAAW,EAAC,EAAE,CAAC,CAAC;IAC9B,MAAM,gBAAgB,GAAG,IAAA,wCAAsB,EAAC,EAAE,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACxD,EAAE,CAAC,SAAS,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhD,UAAU;IACV,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuCpB,gBAAgB,CAAC,CAAC,CAAC,KAAK,gBAAgB,IAAI,CAAC,CAAC,CAAC,EAAE;;QAE3C,KAAK,CAAC,EAAE;;;;QAIR,KAAK,CAAC,GAAG;;;;;;;;;;;;;CAahB,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC;IAElE,gBAAgB;IAChB,MAAM,iBAAiB,GAAG,yBAAyB,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;IACzE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAE9E,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;AAC7C,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* SwallowKit Scaffold コマンド
|
|
3
3
|
* Zod モデルから Azure Functions と Next.js BFF の CRUD コードを生成
|
|
4
4
|
*/
|
|
5
|
+
import { BackendLanguage } from "../../types";
|
|
5
6
|
interface ScaffoldOptions {
|
|
6
7
|
model: string;
|
|
7
8
|
functionsDir?: string;
|
|
@@ -9,5 +10,7 @@ interface ScaffoldOptions {
|
|
|
9
10
|
apiOnly?: boolean;
|
|
10
11
|
}
|
|
11
12
|
export declare function scaffoldCommand(options: ScaffoldOptions): Promise<void>;
|
|
13
|
+
export declare function getOpenApiGeneratorArgs(specPath: string, outputDir: string, backendLanguage: Exclude<BackendLanguage, "typescript">): string[];
|
|
14
|
+
export declare function getCSharpSchemaArtifactPruneTargets(outputDir: string): string[];
|
|
12
15
|
export {};
|
|
13
16
|
//# sourceMappingURL=scaffold.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/scaffold.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/scaffold.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAsBH,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,UAAU,eAAe;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,eAAe,iBAuF7D;AAgPD,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE,YAAY,CAAC,GACtD,MAAM,EAAE,CAgCV;AAED,wBAAgB,mCAAmC,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAM/E"}
|
|
@@ -38,13 +38,17 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
38
38
|
})();
|
|
39
39
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
40
|
exports.scaffoldCommand = scaffoldCommand;
|
|
41
|
+
exports.getOpenApiGeneratorArgs = getOpenApiGeneratorArgs;
|
|
42
|
+
exports.getCSharpSchemaArtifactPruneTargets = getCSharpSchemaArtifactPruneTargets;
|
|
41
43
|
const fs = __importStar(require("fs"));
|
|
42
44
|
const path = __importStar(require("path"));
|
|
45
|
+
const child_process_1 = require("child_process");
|
|
46
|
+
const config_1 = require("../../core/config");
|
|
43
47
|
const model_parser_1 = require("../../core/scaffold/model-parser");
|
|
44
48
|
const functions_generator_1 = require("../../core/scaffold/functions-generator");
|
|
45
49
|
const nextjs_generator_1 = require("../../core/scaffold/nextjs-generator");
|
|
50
|
+
const openapi_generator_1 = require("../../core/scaffold/openapi-generator");
|
|
46
51
|
const ui_generator_1 = require("../../core/scaffold/ui-generator");
|
|
47
|
-
const config_1 = require("../../core/config");
|
|
48
52
|
const package_manager_1 = require("../../utils/package-manager");
|
|
49
53
|
async function scaffoldCommand(options) {
|
|
50
54
|
// SwallowKit プロジェクトディレクトリかどうかを検証
|
|
@@ -58,6 +62,8 @@ async function scaffoldCommand(options) {
|
|
|
58
62
|
console.log("🔍 Parsing model file...");
|
|
59
63
|
const modelInfo = await (0, model_parser_1.parseModelFile)(modelPath);
|
|
60
64
|
console.log(`✅ Model parsed: ${modelInfo.name} (${modelInfo.schemaName})`);
|
|
65
|
+
const backendLanguage = (0, config_1.getBackendLanguage)();
|
|
66
|
+
console.log(`🧠 Backend language: ${backendLanguage}`);
|
|
61
67
|
// ネストスキーマ参照があれば表示
|
|
62
68
|
if (modelInfo.nestedSchemaRefs.length > 0) {
|
|
63
69
|
console.log(`🔗 Nested schema references detected:`);
|
|
@@ -74,10 +80,16 @@ async function scaffoldCommand(options) {
|
|
|
74
80
|
// 4. Read shared package name
|
|
75
81
|
const functionsDir = options.functionsDir || "functions";
|
|
76
82
|
const sharedPackageName = readSharedPackageName();
|
|
83
|
+
const relatedModels = backendLanguage === "typescript"
|
|
84
|
+
? [modelInfo]
|
|
85
|
+
: await collectModelGraph(modelPath);
|
|
77
86
|
// 5. Generate BFF callFunction helper
|
|
78
87
|
await generateCallFunctionHelper();
|
|
79
88
|
// 6. Generate Azure Functions code
|
|
80
|
-
await generateFunctionsCode(modelInfo, functionsDir, sharedPackageName);
|
|
89
|
+
await generateFunctionsCode(modelInfo, functionsDir, sharedPackageName, backendLanguage);
|
|
90
|
+
if (backendLanguage !== "typescript") {
|
|
91
|
+
await generateLanguageSchemaArtifacts(relatedModels, modelInfo, functionsDir, backendLanguage);
|
|
92
|
+
}
|
|
81
93
|
// 7. Generate Next.js BFF API Routes
|
|
82
94
|
const apiDir = options.apiDir || "app/api";
|
|
83
95
|
await generateBFFRoutes(modelInfo, apiDir, sharedPackageName);
|
|
@@ -90,14 +102,17 @@ async function scaffoldCommand(options) {
|
|
|
90
102
|
}
|
|
91
103
|
console.log("\n✅ Scaffold completed successfully!");
|
|
92
104
|
console.log("\n📝 Next steps:");
|
|
93
|
-
console.log(` 1. Review generated files in ${functionsDir}
|
|
105
|
+
console.log(` 1. Review generated files in ${describeFunctionsOutputPath(functionsDir, backendLanguage)} and ${apiDir}/`);
|
|
94
106
|
if (!options.apiOnly) {
|
|
95
107
|
console.log(` 2. Check the generated UI pages in app/${(0, model_parser_1.toKebabCase)(modelInfo.name)}/`);
|
|
96
108
|
console.log(" 3. Navigate to the model from the homepage menu");
|
|
97
109
|
}
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
110
|
+
if (backendLanguage !== "typescript") {
|
|
111
|
+
console.log(` ${options.apiOnly ? "2" : "4"}. Review generated OpenAPI assets in ${functionsDir}/openapi/ and ${functionsDir}/generated/`);
|
|
112
|
+
}
|
|
113
|
+
console.log(` ${options.apiOnly ? (backendLanguage === "typescript" ? "2" : "3") : (backendLanguage === "typescript" ? "4" : "5")}. Ensure BACKEND_FUNCTIONS_BASE_URL is set in your .env.local file`);
|
|
114
|
+
console.log(` ${options.apiOnly ? (backendLanguage === "typescript" ? "3" : "4") : (backendLanguage === "typescript" ? "5" : "6")}. Configure CosmosDBConnection in functions/local.settings.json`);
|
|
115
|
+
console.log(` ${options.apiOnly ? (backendLanguage === "typescript" ? "4" : "5") : (backendLanguage === "typescript" ? "6" : "7")}. Run '${(0, package_manager_1.getCommands)((0, package_manager_1.detectFromProject)()).dlx} swallowkit dev' to test the generated code`);
|
|
101
116
|
}
|
|
102
117
|
catch (error) {
|
|
103
118
|
console.error("\n❌ Scaffold failed:", error.message);
|
|
@@ -176,20 +191,169 @@ async function generateCallFunctionHelper() {
|
|
|
176
191
|
/**
|
|
177
192
|
* Generate Azure Functions CRUD code
|
|
178
193
|
*/
|
|
179
|
-
async function generateFunctionsCode(modelInfo, functionsDir, sharedPackageName) {
|
|
194
|
+
async function generateFunctionsCode(modelInfo, functionsDir, sharedPackageName, backendLanguage) {
|
|
180
195
|
console.log("\n🔨 Generating Azure Functions CRUD code...");
|
|
181
196
|
const modelKebab = (0, model_parser_1.toKebabCase)(modelInfo.name);
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
197
|
+
if (backendLanguage === "typescript") {
|
|
198
|
+
const functionFilePath = path.join(process.cwd(), functionsDir, "src", `${modelKebab}.ts`);
|
|
199
|
+
const functionDir = path.dirname(functionFilePath);
|
|
200
|
+
if (!fs.existsSync(functionDir)) {
|
|
201
|
+
fs.mkdirSync(functionDir, { recursive: true });
|
|
202
|
+
}
|
|
203
|
+
const code = (0, functions_generator_1.generateCompactAzureFunctionsCRUD)(modelInfo, sharedPackageName);
|
|
204
|
+
fs.writeFileSync(functionFilePath, code, "utf-8");
|
|
205
|
+
console.log(`✅ Created: ${functionFilePath}`);
|
|
206
|
+
return;
|
|
187
207
|
}
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
208
|
+
if (backendLanguage === "csharp") {
|
|
209
|
+
const functionFilePath = path.join(process.cwd(), functionsDir, "Crud", `${modelInfo.name}Functions.cs`);
|
|
210
|
+
fs.mkdirSync(path.dirname(functionFilePath), { recursive: true });
|
|
211
|
+
fs.writeFileSync(functionFilePath, (0, functions_generator_1.generateCSharpAzureFunctionsCRUD)(modelInfo), "utf-8");
|
|
212
|
+
console.log(`✅ Created: ${functionFilePath}`);
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
const blueprintsDir = path.join(process.cwd(), functionsDir, "blueprints");
|
|
216
|
+
const blueprintPath = path.join(blueprintsDir, `${modelKebab.replace(/-/g, "_")}.py`);
|
|
217
|
+
fs.mkdirSync(blueprintsDir, { recursive: true });
|
|
218
|
+
const { blueprint, registration } = (0, functions_generator_1.generatePythonAzureFunctionsCRUD)(modelInfo);
|
|
219
|
+
fs.writeFileSync(blueprintPath, blueprint, "utf-8");
|
|
220
|
+
updatePythonFunctionRegistrations(path.join(process.cwd(), functionsDir, "function_app.py"), registration);
|
|
221
|
+
console.log(`✅ Created: ${blueprintPath}`);
|
|
222
|
+
}
|
|
223
|
+
async function collectModelGraph(modelPath, seen = new Map()) {
|
|
224
|
+
const resolvedPath = path.resolve(modelPath);
|
|
225
|
+
if (seen.has(resolvedPath)) {
|
|
226
|
+
return Array.from(seen.values());
|
|
227
|
+
}
|
|
228
|
+
const modelInfo = await (0, model_parser_1.parseModelFile)(resolvedPath);
|
|
229
|
+
seen.set(resolvedPath, modelInfo);
|
|
230
|
+
for (const ref of modelInfo.nestedSchemaRefs) {
|
|
231
|
+
const nestedPath = resolveNestedModelPath(resolvedPath, ref.importPath);
|
|
232
|
+
await collectModelGraph(nestedPath, seen);
|
|
233
|
+
}
|
|
234
|
+
return Array.from(seen.values());
|
|
235
|
+
}
|
|
236
|
+
function resolveNestedModelPath(modelPath, importPath) {
|
|
237
|
+
let resolvedPath = path.resolve(path.dirname(modelPath), importPath);
|
|
238
|
+
if (!resolvedPath.endsWith(".ts")) {
|
|
239
|
+
resolvedPath += ".ts";
|
|
240
|
+
}
|
|
241
|
+
return resolvedPath;
|
|
242
|
+
}
|
|
243
|
+
function describeFunctionsOutputPath(functionsDir, backendLanguage) {
|
|
244
|
+
if (backendLanguage === "typescript") {
|
|
245
|
+
return `${functionsDir}/src/`;
|
|
246
|
+
}
|
|
247
|
+
if (backendLanguage === "csharp") {
|
|
248
|
+
return `${functionsDir}/Crud/`;
|
|
249
|
+
}
|
|
250
|
+
return `${functionsDir}/blueprints/`;
|
|
251
|
+
}
|
|
252
|
+
async function generateLanguageSchemaArtifacts(models, rootModel, functionsDir, backendLanguage) {
|
|
253
|
+
console.log("\n🧬 Generating OpenAPI-backed schema artifacts...");
|
|
254
|
+
const openApiDir = path.join(process.cwd(), functionsDir, "openapi");
|
|
255
|
+
fs.mkdirSync(openApiDir, { recursive: true });
|
|
256
|
+
const specPath = path.join(openApiDir, `${(0, model_parser_1.toKebabCase)(rootModel.name)}.openapi.json`);
|
|
257
|
+
fs.writeFileSync(specPath, (0, openapi_generator_1.generateOpenApiDocument)(models, rootModel), "utf-8");
|
|
258
|
+
console.log(`✅ Created: ${specPath}`);
|
|
259
|
+
const outputDir = path.join(process.cwd(), functionsDir, "generated", backendLanguage === "csharp" ? "csharp-models" : "python-models");
|
|
260
|
+
fs.mkdirSync(outputDir, { recursive: true });
|
|
261
|
+
await runOpenApiGenerator(specPath, outputDir, backendLanguage);
|
|
262
|
+
if (backendLanguage === "csharp") {
|
|
263
|
+
pruneGeneratedCSharpArtifacts(outputDir);
|
|
264
|
+
}
|
|
265
|
+
console.log(`✅ Generated ${backendLanguage} schema assets: ${outputDir}`);
|
|
266
|
+
}
|
|
267
|
+
async function runOpenApiGenerator(specPath, outputDir, backendLanguage) {
|
|
268
|
+
const pm = (0, package_manager_1.detectFromProject)();
|
|
269
|
+
const command = pm === "pnpm" ? "pnpm" : "npx";
|
|
270
|
+
const args = pm === "pnpm"
|
|
271
|
+
? ["exec", "openapi-generator-cli", ...getOpenApiGeneratorArgs(specPath, outputDir, backendLanguage)]
|
|
272
|
+
: ["openapi-generator-cli", ...getOpenApiGeneratorArgs(specPath, outputDir, backendLanguage)];
|
|
273
|
+
await new Promise((resolve, reject) => {
|
|
274
|
+
const child = (0, child_process_1.spawn)(command, args, {
|
|
275
|
+
cwd: process.cwd(),
|
|
276
|
+
shell: true,
|
|
277
|
+
stdio: "inherit",
|
|
278
|
+
});
|
|
279
|
+
child.on("close", (code) => {
|
|
280
|
+
if (code === 0) {
|
|
281
|
+
resolve();
|
|
282
|
+
return;
|
|
283
|
+
}
|
|
284
|
+
reject(new Error(`OpenAPI generator exited with code ${code}`));
|
|
285
|
+
});
|
|
286
|
+
child.on("error", reject);
|
|
287
|
+
});
|
|
288
|
+
}
|
|
289
|
+
function getOpenApiGeneratorArgs(specPath, outputDir, backendLanguage) {
|
|
290
|
+
const globalProperty = backendLanguage === "csharp"
|
|
291
|
+
? "models,supportingFiles,apis=false,modelDocs=false,modelTests=false"
|
|
292
|
+
: "models,apis=false,supportingFiles=false,modelDocs=false,modelTests=false";
|
|
293
|
+
const baseArgs = [
|
|
294
|
+
"generate",
|
|
295
|
+
"-i",
|
|
296
|
+
specPath,
|
|
297
|
+
"-o",
|
|
298
|
+
outputDir,
|
|
299
|
+
"--global-property",
|
|
300
|
+
globalProperty,
|
|
301
|
+
];
|
|
302
|
+
if (backendLanguage === "csharp") {
|
|
303
|
+
return [
|
|
304
|
+
...baseArgs,
|
|
305
|
+
"-g",
|
|
306
|
+
"csharp",
|
|
307
|
+
"--additional-properties",
|
|
308
|
+
"packageName=SwallowKitBackendModels,targetFramework=net8.0,nullableReferenceTypes=true",
|
|
309
|
+
];
|
|
310
|
+
}
|
|
311
|
+
return [
|
|
312
|
+
...baseArgs,
|
|
313
|
+
"-g",
|
|
314
|
+
"python",
|
|
315
|
+
"--additional-properties",
|
|
316
|
+
"packageName=backend_models,projectName=backend-models",
|
|
317
|
+
];
|
|
318
|
+
}
|
|
319
|
+
function getCSharpSchemaArtifactPruneTargets(outputDir) {
|
|
320
|
+
return [
|
|
321
|
+
path.join(outputDir, "src", "SwallowKitBackendModels.Test"),
|
|
322
|
+
path.join(outputDir, "src", "SwallowKitBackendModels", "Api"),
|
|
323
|
+
path.join(outputDir, "src", "SwallowKitBackendModels", "Extensions"),
|
|
324
|
+
];
|
|
325
|
+
}
|
|
326
|
+
function pruneGeneratedCSharpArtifacts(outputDir) {
|
|
327
|
+
for (const target of getCSharpSchemaArtifactPruneTargets(outputDir)) {
|
|
328
|
+
if (fs.existsSync(target)) {
|
|
329
|
+
fs.rmSync(target, { recursive: true, force: true });
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
const clientDir = path.join(outputDir, "src", "SwallowKitBackendModels", "Client");
|
|
333
|
+
if (!fs.existsSync(clientDir)) {
|
|
334
|
+
return;
|
|
335
|
+
}
|
|
336
|
+
for (const entry of fs.readdirSync(clientDir, { withFileTypes: true })) {
|
|
337
|
+
if (!entry.isFile() || entry.name === "Option.cs") {
|
|
338
|
+
continue;
|
|
339
|
+
}
|
|
340
|
+
fs.rmSync(path.join(clientDir, entry.name), { force: true });
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
function updatePythonFunctionRegistrations(functionAppPath, registration) {
|
|
344
|
+
if (!fs.existsSync(functionAppPath)) {
|
|
345
|
+
throw new Error(`Python Functions entrypoint not found: ${functionAppPath}`);
|
|
346
|
+
}
|
|
347
|
+
const content = fs.readFileSync(functionAppPath, "utf-8");
|
|
348
|
+
if (content.includes(registration)) {
|
|
349
|
+
return;
|
|
350
|
+
}
|
|
351
|
+
const marker = "# SwallowKit scaffold registrations";
|
|
352
|
+
if (!content.includes(marker)) {
|
|
353
|
+
throw new Error(`Could not find scaffold registration marker in ${functionAppPath}`);
|
|
354
|
+
}
|
|
355
|
+
const updated = content.replace(marker, `${registration}\n${marker}`);
|
|
356
|
+
fs.writeFileSync(functionAppPath, updated, "utf-8");
|
|
193
357
|
}
|
|
194
358
|
/**
|
|
195
359
|
* Next.js BFF API Routes を生成
|
|
@@ -241,70 +405,70 @@ async function generateCosmosContainer(modelInfo) {
|
|
|
241
405
|
// Generate container Bicep file
|
|
242
406
|
const containerFileName = `${modelKebab}-container.bicep`;
|
|
243
407
|
const containerFilePath = path.join(containersDir, containerFileName);
|
|
244
|
-
const bicepContent = `@description('Cosmos DB account name')
|
|
245
|
-
param cosmosAccountName string
|
|
246
|
-
|
|
247
|
-
@description('Database name')
|
|
248
|
-
param databaseName string
|
|
249
|
-
|
|
250
|
-
@description('Container name')
|
|
251
|
-
param containerName string = '${modelPascal}s'
|
|
252
|
-
|
|
253
|
-
@description('Partition key path')
|
|
254
|
-
param partitionKeyPath string = '/id'
|
|
255
|
-
|
|
256
|
-
@description('Throughput (RU/s) - only used for Free Tier')
|
|
257
|
-
param throughput int = 400
|
|
258
|
-
|
|
259
|
-
@description('Cosmos DB mode: freetier or serverless')
|
|
260
|
-
param cosmosDbMode string
|
|
261
|
-
|
|
262
|
-
// Reference existing Cosmos DB account
|
|
263
|
-
resource cosmosAccount 'Microsoft.DocumentDB/databaseAccounts@2023-11-15' existing = {
|
|
264
|
-
name: cosmosAccountName
|
|
265
|
-
}
|
|
266
|
-
|
|
267
|
-
// Reference existing database
|
|
268
|
-
resource database 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases@2023-11-15' existing = {
|
|
269
|
-
parent: cosmosAccount
|
|
270
|
-
name: databaseName
|
|
271
|
-
}
|
|
272
|
-
|
|
273
|
-
// Container for ${modelPascal}
|
|
274
|
-
resource container 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers@2023-11-15' = {
|
|
275
|
-
parent: database
|
|
276
|
-
name: containerName
|
|
277
|
-
properties: {
|
|
278
|
-
resource: {
|
|
279
|
-
id: containerName
|
|
280
|
-
partitionKey: {
|
|
281
|
-
paths: [
|
|
282
|
-
partitionKeyPath
|
|
283
|
-
]
|
|
284
|
-
kind: 'Hash'
|
|
285
|
-
}
|
|
286
|
-
indexingPolicy: {
|
|
287
|
-
automatic: true
|
|
288
|
-
indexingMode: 'consistent'
|
|
289
|
-
includedPaths: [
|
|
290
|
-
{
|
|
291
|
-
path: '/*'
|
|
292
|
-
}
|
|
293
|
-
]
|
|
294
|
-
excludedPaths: [
|
|
295
|
-
{
|
|
296
|
-
path: '/_etag/?'
|
|
297
|
-
}
|
|
298
|
-
]
|
|
299
|
-
}
|
|
300
|
-
}
|
|
301
|
-
options: cosmosDbMode == 'freetier' ? {
|
|
302
|
-
throughput: throughput
|
|
303
|
-
} : {}
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
|
|
307
|
-
output containerName string = container.name
|
|
408
|
+
const bicepContent = `@description('Cosmos DB account name')
|
|
409
|
+
param cosmosAccountName string
|
|
410
|
+
|
|
411
|
+
@description('Database name')
|
|
412
|
+
param databaseName string
|
|
413
|
+
|
|
414
|
+
@description('Container name')
|
|
415
|
+
param containerName string = '${modelPascal}s'
|
|
416
|
+
|
|
417
|
+
@description('Partition key path')
|
|
418
|
+
param partitionKeyPath string = '/id'
|
|
419
|
+
|
|
420
|
+
@description('Throughput (RU/s) - only used for Free Tier')
|
|
421
|
+
param throughput int = 400
|
|
422
|
+
|
|
423
|
+
@description('Cosmos DB mode: freetier or serverless')
|
|
424
|
+
param cosmosDbMode string
|
|
425
|
+
|
|
426
|
+
// Reference existing Cosmos DB account
|
|
427
|
+
resource cosmosAccount 'Microsoft.DocumentDB/databaseAccounts@2023-11-15' existing = {
|
|
428
|
+
name: cosmosAccountName
|
|
429
|
+
}
|
|
430
|
+
|
|
431
|
+
// Reference existing database
|
|
432
|
+
resource database 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases@2023-11-15' existing = {
|
|
433
|
+
parent: cosmosAccount
|
|
434
|
+
name: databaseName
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
// Container for ${modelPascal}
|
|
438
|
+
resource container 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers@2023-11-15' = {
|
|
439
|
+
parent: database
|
|
440
|
+
name: containerName
|
|
441
|
+
properties: {
|
|
442
|
+
resource: {
|
|
443
|
+
id: containerName
|
|
444
|
+
partitionKey: {
|
|
445
|
+
paths: [
|
|
446
|
+
partitionKeyPath
|
|
447
|
+
]
|
|
448
|
+
kind: 'Hash'
|
|
449
|
+
}
|
|
450
|
+
indexingPolicy: {
|
|
451
|
+
automatic: true
|
|
452
|
+
indexingMode: 'consistent'
|
|
453
|
+
includedPaths: [
|
|
454
|
+
{
|
|
455
|
+
path: '/*'
|
|
456
|
+
}
|
|
457
|
+
]
|
|
458
|
+
excludedPaths: [
|
|
459
|
+
{
|
|
460
|
+
path: '/_etag/?'
|
|
461
|
+
}
|
|
462
|
+
]
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
options: cosmosDbMode == 'freetier' ? {
|
|
466
|
+
throughput: throughput
|
|
467
|
+
} : {}
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
|
|
471
|
+
output containerName string = container.name
|
|
308
472
|
`;
|
|
309
473
|
// Write Bicep file (overwrite if exists)
|
|
310
474
|
fs.writeFileSync(containerFilePath, bicepContent, "utf-8");
|
|
@@ -335,37 +499,37 @@ async function updateMainBicepWithContainer(modelKebab, modelPascal) {
|
|
|
335
499
|
const cosmosModuleMatch = mainBicepContent.match(cosmosModulePattern);
|
|
336
500
|
if (!cosmosModuleMatch) {
|
|
337
501
|
console.log("⚠️ Could not find Cosmos DB Serverless module in main.bicep. Please manually add the container module:");
|
|
338
|
-
console.log(`\nmodule ${containerModuleName} 'containers/${modelKebab}-container.bicep' = {
|
|
339
|
-
name: '${modelKebab}-container'
|
|
340
|
-
params: {
|
|
341
|
-
cosmosAccountName: cosmosDbMode == 'freetier' ? cosmosDbFreeTier.outputs.accountName : cosmosDbServerless.outputs.accountName
|
|
342
|
-
databaseName: databaseName
|
|
343
|
-
cosmosDbMode: cosmosDbMode
|
|
344
|
-
}
|
|
345
|
-
dependsOn: [
|
|
346
|
-
cosmosDbFreeTier
|
|
347
|
-
cosmosDbServerless
|
|
348
|
-
]
|
|
502
|
+
console.log(`\nmodule ${containerModuleName} 'containers/${modelKebab}-container.bicep' = {
|
|
503
|
+
name: '${modelKebab}-container'
|
|
504
|
+
params: {
|
|
505
|
+
cosmosAccountName: cosmosDbMode == 'freetier' ? cosmosDbFreeTier.outputs.accountName : cosmosDbServerless.outputs.accountName
|
|
506
|
+
databaseName: databaseName
|
|
507
|
+
cosmosDbMode: cosmosDbMode
|
|
508
|
+
}
|
|
509
|
+
dependsOn: [
|
|
510
|
+
cosmosDbFreeTier
|
|
511
|
+
cosmosDbServerless
|
|
512
|
+
]
|
|
349
513
|
}\n`);
|
|
350
514
|
return;
|
|
351
515
|
}
|
|
352
516
|
// Find the end of the cosmosDbServerless module
|
|
353
517
|
const insertPosition = cosmosModuleMatch.index + cosmosModuleMatch[0].length;
|
|
354
518
|
// Create the container module declaration
|
|
355
|
-
const containerModule = `
|
|
356
|
-
|
|
357
|
-
// ${modelPascal} Container
|
|
358
|
-
module ${containerModuleName} 'containers/${modelKebab}-container.bicep' = {
|
|
359
|
-
name: '${modelKebab}-container'
|
|
360
|
-
params: {
|
|
361
|
-
cosmosAccountName: cosmosDbMode == 'freetier' ? cosmosDbFreeTier.outputs.accountName : cosmosDbServerless.outputs.accountName
|
|
362
|
-
databaseName: '$` + `{projectName}Database'
|
|
363
|
-
cosmosDbMode: cosmosDbMode
|
|
364
|
-
}
|
|
365
|
-
dependsOn: [
|
|
366
|
-
cosmosDbFreeTier
|
|
367
|
-
cosmosDbServerless
|
|
368
|
-
]
|
|
519
|
+
const containerModule = `
|
|
520
|
+
|
|
521
|
+
// ${modelPascal} Container
|
|
522
|
+
module ${containerModuleName} 'containers/${modelKebab}-container.bicep' = {
|
|
523
|
+
name: '${modelKebab}-container'
|
|
524
|
+
params: {
|
|
525
|
+
cosmosAccountName: cosmosDbMode == 'freetier' ? cosmosDbFreeTier.outputs.accountName : cosmosDbServerless.outputs.accountName
|
|
526
|
+
databaseName: '$` + `{projectName}Database'
|
|
527
|
+
cosmosDbMode: cosmosDbMode
|
|
528
|
+
}
|
|
529
|
+
dependsOn: [
|
|
530
|
+
cosmosDbFreeTier
|
|
531
|
+
cosmosDbServerless
|
|
532
|
+
]
|
|
369
533
|
}`;
|
|
370
534
|
// Insert the module
|
|
371
535
|
mainBicepContent =
|
|
@@ -455,17 +619,17 @@ async function updateNavigationMenu(modelInfo) {
|
|
|
455
619
|
label: modelInfo.displayName
|
|
456
620
|
});
|
|
457
621
|
// Generate new scaffold-config.ts content
|
|
458
|
-
const newConfigContent = `export interface ScaffoldModel {
|
|
459
|
-
name: string;
|
|
460
|
-
path: string;
|
|
461
|
-
label: string;
|
|
462
|
-
}
|
|
463
|
-
|
|
464
|
-
export const scaffoldConfig = {
|
|
465
|
-
models: [
|
|
466
|
-
${models.map(m => ` { name: '${m.name}', path: '${m.path}', label: '${m.label}' },`).join('\n')}
|
|
467
|
-
] as ScaffoldModel[]
|
|
468
|
-
};
|
|
622
|
+
const newConfigContent = `export interface ScaffoldModel {
|
|
623
|
+
name: string;
|
|
624
|
+
path: string;
|
|
625
|
+
label: string;
|
|
626
|
+
}
|
|
627
|
+
|
|
628
|
+
export const scaffoldConfig = {
|
|
629
|
+
models: [
|
|
630
|
+
${models.map(m => ` { name: '${m.name}', path: '${m.path}', label: '${m.label}' },`).join('\n')}
|
|
631
|
+
] as ScaffoldModel[]
|
|
632
|
+
};
|
|
469
633
|
`;
|
|
470
634
|
fs.writeFileSync(configPath, newConfigContent, "utf-8");
|
|
471
635
|
console.log(`✅ Added ${modelInfo.name} to navigation menu`);
|