reliant-type 1.0.0 → 2.1.4
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/README.md +113 -688
- package/dist/cjs/core/schema/extensions/mods/typescript-generator.js +45 -16
- package/dist/cjs/core/schema/extensions/mods/typescript-generator.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/Interface.js +0 -12
- package/dist/cjs/core/schema/mode/interfaces/Interface.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/InterfaceSchema.js +34 -3
- package/dist/cjs/core/schema/mode/interfaces/InterfaceSchema.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/errors/SchemaValidationError.js +16 -0
- package/dist/cjs/core/schema/mode/interfaces/errors/SchemaValidationError.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js +119 -0
- package/dist/cjs/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.js +49 -0
- package/dist/cjs/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/typescript/TypeInference.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/validators/ConstraintParser.js +6 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/ConstraintParser.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/validators/TypeGuards.js +7 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/TypeGuards.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/validators/mods/securityValidator.js +1 -1
- package/dist/cjs/core/schema/mode/interfaces/validators/mods/securityValidator.js.map +1 -1
- package/dist/cjs/core/utils/Mod.js +33 -4
- package/dist/cjs/core/utils/Mod.js.map +1 -1
- package/dist/cjs/index.js +74 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/core/schema/extensions/mods/typescript-generator.js +45 -16
- package/dist/esm/core/schema/extensions/mods/typescript-generator.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/Interface.js +1 -12
- package/dist/esm/core/schema/mode/interfaces/Interface.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/InterfaceSchema.js +32 -1
- package/dist/esm/core/schema/mode/interfaces/InterfaceSchema.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/errors/SchemaValidationError.js +14 -0
- package/dist/esm/core/schema/mode/interfaces/errors/SchemaValidationError.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js +119 -0
- package/dist/esm/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.js +49 -0
- package/dist/esm/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/typescript/TypeInference.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/validators/ConstraintParser.js +6 -0
- package/dist/esm/core/schema/mode/interfaces/validators/ConstraintParser.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/validators/TypeGuards.js +7 -0
- package/dist/esm/core/schema/mode/interfaces/validators/TypeGuards.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/validators/mods/securityValidator.js +1 -1
- package/dist/esm/core/schema/mode/interfaces/validators/mods/securityValidator.js.map +1 -1
- package/dist/esm/core/utils/Mod.js +33 -4
- package/dist/esm/core/utils/Mod.js.map +1 -1
- package/dist/esm/index.js +78 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/schema.d.ts +44 -3
- package/docs/FUNCTION-TYPES.md +120 -0
- package/docs/GETTING-STARTED.md +56 -53
- package/docs/VSCODE-EXTENSION.md +58 -47
- package/package.json +4 -4
- package/src/core/schema/extensions/components/AutoDocumentation/Docs.ts +1 -1
- package/src/core/schema/extensions/mods/typescript-generator.ts +342 -295
- package/src/core/schema/mode/interfaces/Interface.ts +1 -13
- package/src/core/schema/mode/interfaces/InterfaceSchema.ts +41 -1
- package/src/core/schema/mode/interfaces/errors/SchemaValidationError.ts +13 -0
- package/src/core/schema/mode/interfaces/precompilation/FieldPrecompilers.ts +146 -0
- package/src/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.ts +79 -0
- package/src/core/schema/mode/interfaces/typescript/TypeInference.ts +67 -16
- package/src/core/schema/mode/interfaces/validators/ConstraintParser.ts +8 -0
- package/src/core/schema/mode/interfaces/validators/TypeGuards.ts +19 -5
- package/src/core/schema/mode/interfaces/validators/mods/securityValidator.ts +1 -1
- package/src/core/types/SchemaValidator.type.ts +4 -0
- package/src/core/utils/Mod.ts +35 -4
- package/src/index.ts +9 -0
|
@@ -108,6 +108,13 @@ class TypeGuards {
|
|
|
108
108
|
static isRecordType(fieldType) {
|
|
109
109
|
return fieldType.startsWith("record<") && fieldType.endsWith(">");
|
|
110
110
|
}
|
|
111
|
+
/**
|
|
112
|
+
* Check if string is a function type
|
|
113
|
+
*/
|
|
114
|
+
static isFunctionType(fieldType) {
|
|
115
|
+
const type = fieldType.endsWith("?") ? fieldType.slice(0, -1) : fieldType;
|
|
116
|
+
return type.startsWith("fn(") && type.endsWith(")");
|
|
117
|
+
}
|
|
111
118
|
/**
|
|
112
119
|
* Check if string has constraints (contains parentheses)
|
|
113
120
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TypeGuards.js","sources":["../../../../../../../src/core/schema/mode/interfaces/validators/TypeGuards.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;;;;;AAKG;AAUH;;AAEG;MACU,UAAU,CAAA;AACrB;;AAEG;IACH,OAAO,YAAY,CAAC,KAAU,EAAA;AAC5B,QAAA,QACE,OAAO,KAAK,KAAK,QAAQ;AACzB,YAAA,KAAK,KAAK,IAAI;AACd,YAAA,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;AACrB,YAAA,OAAO,IAAI,KAAK;YAChB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAC1B;KACH;AAED;;AAEG;IACH,OAAO,eAAe,
|
|
1
|
+
{"version":3,"file":"TypeGuards.js","sources":["../../../../../../../src/core/schema/mode/interfaces/validators/TypeGuards.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,7 @@ class SecurityValidators {
|
|
|
19
19
|
addFormats(this.ajv);
|
|
20
20
|
// security schema with more comprehensive protections
|
|
21
21
|
this.ajv.addSchema({
|
|
22
|
-
$id: "https://nehonix.
|
|
22
|
+
$id: "https://nehonix.com/lib/v/reliant-type",
|
|
23
23
|
type: ["object", "array", "string", "number", "boolean", "null"],
|
|
24
24
|
definitions: {
|
|
25
25
|
secureObject: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"securityValidator.js","sources":["../../../../../../../../src/core/schema/mode/interfaces/validators/mods/securityValidator.ts"],"sourcesContent":[null],"names":["SECURITY_CONSTANTS","ValidationMetrics","ErrorHandler","ErrorCode","ValidationCache","MAX_OBJECT_DEPTH","validateJsonDeep","validateJsonSchema","validateIPv4","validateIPv6","normalizeIPv6","validateObjectDeep","validateObjectSchema"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"securityValidator.js","sources":["../../../../../../../../src/core/schema/mode/interfaces/validators/mods/securityValidator.ts"],"sourcesContent":[null],"names":["SECURITY_CONSTANTS","ValidationMetrics","ErrorHandler","ErrorCode","ValidationCache","MAX_OBJECT_DEPTH","validateJsonDeep","validateJsonSchema","validateIPv4","validateIPv6","normalizeIPv6","validateObjectDeep","validateObjectSchema"],"mappings":";;;;;;;;;;;MAqBa,kBAAkB,CAAA;AAc7B;;AAEG;AACK,IAAA,OAAO,MAAM,GAAA;AACnB,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACb,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,UAAiB,CAAC,CAAC;AAC3C,YAAA,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;AAGrB,YAAA,IAAI,CAAC,GAAG,CAAC,SAAS,CAChB;AACE,gBAAA,GAAG,EAAE,wCAAwC;AAC7C,gBAAA,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC;AAChE,gBAAA,WAAW,EAAE;AACX,oBAAA,YAAY,EAAE;AACZ,wBAAA,IAAI,EAAE,QAAQ;AACd,wBAAA,GAAG,EAAE;AACH,4BAAA,KAAK,EAAE;AACL,gCAAA,GAAG,KAAK,CAAC,IAAI,CAACA,qCAAkB,CAAC,oBAAoB,CAAC,CAAC,GAAG,CACxD,CAAC,IAAI,MAAM;AACT,oCAAA,UAAU,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,EAAE;oCAC1B,QAAQ,EAAE,CAAC,IAAI,CAAC;AACjB,iCAAA,CAAC,CACH;AACD,gCAAA,EAAE,oBAAoB,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE;AAC/C,6BAAA;AACF,yBAAA;AACD,wBAAA,iBAAiB,EAAE;AACjB,4BAAA,iCAAiC,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;AACjD,yBAAA;AACF,qBAAA;AACF,iBAAA;AACD,gBAAA,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;AACtB,gBAAA,IAAI,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE;AAC5C,gBAAA,IAAI,EAAE;AACJ,oBAAA,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;oBACrB,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;AAC/B,iBAAA;aACF,EACD,gBAAgB,CACjB,CAAC;SACH;QACD,OAAO,IAAI,CAAC,GAAG,CAAC;KACjB;AAED;;AAEG;IACK,OAAO,sBAAsB,CACnC,GAAQ,EACR,OAAO,GAAG,IAAI,OAAO,EAAE,EAAA;AAEvB,QAAA,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACvD,YAAA,OAAO,KAAK,CAAC;SACd;AAED,QAAA,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;;QAGjB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAClC,IAAIA,qCAAkB,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACpD,gBAAA,OAAO,IAAI,CAAC;aACb;SACF;;QAGD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;YACtC,IAAI,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE;AAC/C,gBAAA,OAAO,IAAI,CAAC;aACb;SACF;AAED,QAAA,OAAO,KAAK,CAAC;KACd;AAED;;AAEG;IACK,aAAa,WAAW,CAC9B,SAA+B,EAC/B,SAAA,GAAoBA,qCAAkB,CAAC,mBAAmB,EAAA;QAE1D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACrC,YAAA,MAAM,KAAK,GAAG,UAAU,CAAC,MAAK;gBAC5B,MAAM,CAAC,IAAI,KAAK,CAAC,4BAA4B,SAAS,CAAA,EAAA,CAAI,CAAC,CAAC,CAAC;aAC9D,EAAE,SAAS,CAAC,CAAC;AAEd,YAAA,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAC/B,CAAC,MAAM,KAAI;gBACT,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,OAAO,CAAC,MAAM,CAAC,CAAC;AAClB,aAAC,EACD,CAAC,KAAK,KAAI;gBACR,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,MAAM,CAAC,KAAK,CAAC,CAAC;AAChB,aAAC,CACF,CAAC;AACJ,SAAC,CAAC,CAAC;KACJ;AAED;;AAEG;IACH,aAAa,YAAY,CACvB,KAAU,EACV,UAmBI,EAAE,EAAA;AAEN,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,aAAa,GAAG,cAAc,CAAC;AAErC,QAAA,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAW;gBAC/C,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAC/C,aAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,YAAA,IAAI,OAAO,CAAC,aAAa,EAAE;AACzB,gBAAAC,0CAAiB,CAAC,MAAM,CACtB,aAAa,EACb,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EACtB,CAAC,MAAM,CAAC,OAAO,CAChB,CAAC;aACH;AAED,YAAA,OAAO,MAAM,CAAC;SACf;QAAC,OAAO,KAAU,EAAE;AACnB,YAAA,IAAI,OAAO,CAAC,aAAa,EAAE;AACzB,gBAAAA,0CAAiB,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,IAAI,CAAC,CAAC;aACvE;AACD,YAAA,MAAM,GAAG,GAAG,CAAA,EAAG,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,eAAe,EAAE,CAAC;YAC1E,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,MAAM,EAAE;oBACNC,yBAAY,CAAC,qBAAqB,CAAC,EAAE,EAAE,GAAG,EAAEC,qBAAS,CAAC,aAAa,CAAC;AACrE,iBAAA;AACD,gBAAA,QAAQ,EAAE,EAAE;AACZ,gBAAA,IAAI,EAAE,KAAK;aACZ,CAAC;SACH;KACF;AAED,IAAA,OAAO,gBAAgB,CAAC,KAAU,EAAE,OAAY,EAAA;AAC9C,QAAA,MAAM,MAAM,GAA2B;AACrC,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,MAAM,EAAE,EAAE;AACV,YAAA,QAAQ,EAAE,EAAE;AACZ,YAAA,IAAI,EAAE,KAAK;SACZ,CAAC;AAEF,QAAA,MAAM,EACJ,SAAS,GAAG,CAAC,EACb,SAAS,GAAGH,qCAAkB,CAAC,eAAe,EAC9C,UAAU,GAAG,IAAI,EACjB,cAAc,GAAG,KAAK,EACtB,iBAAiB,EACjB,iBAAiB,GAAG,EAAE,EACtB,QAAQ,GAAG,MAAM,EACjB,UAAU,GAAG,IAAI,EACjB,mBAAmB,GAAG,IAAI,EAC1B,oBAAoB,GAAG,KAAK,EAC5B,uBAAuB,GAAG,KAAK,EAC/B,gBAAgB,GAAG,KAAK,EACxB,QAAQ,GAAG,QAAQ,EACnB,mBAAmB,GAAG,KAAK,EAC3B,SAAS,GAAG,KAAK,EACjB,SAAS,GAAG,KAAK,GAClB,GAAG,OAAO,CAAC;AAEZ,QAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC7B,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAACE,yBAAY,CAAC,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;AACtE,YAAA,OAAO,MAAM,CAAC;SACf;QAED,IAAI,IAAI,GAAG,KAAK,CAAC;;AAGjB,QAAA,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE;AAC3B,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBA,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,kCAAkC,SAAS,CAAA,WAAA,CAAa,EACxD,KAAK,EACLC,qBAAS,CAAC,eAAe,CAC1B,CACF,CAAC;AACF,YAAA,OAAO,MAAM,CAAC;SACf;;QAGD,IAAI,cAAc,EAAE;AAClB,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;AAC5B,YAAA,IAAI,OAAO,KAAK,IAAI,EAAE;gBACpB,IAAI,GAAG,OAAO,CAAC;AACf,gBAAA,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;AACnB,gBAAA,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;aACtD;SACF;;QAGD,IAAI,gBAAgB,EAAE;AACpB,YAAA,IAAI;gBACF,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACzC,gBAAA,IAAI,UAAU,KAAK,IAAI,EAAE;oBACvB,IAAI,GAAG,UAAU,CAAC;AAClB,oBAAA,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;AACnB,oBAAA,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;iBACvD;aACF;YAAC,OAAO,KAAK,EAAE;AACd,gBAAA,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;aACtD;SACF;;QAGD,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;AACpC,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,sBAAsB,EACtB,KAAK,EACLC,qBAAS,CAAC,gBAAgB,CAC3B,CACF,CAAC;AACF,YAAA,OAAO,MAAM,CAAC;SACf;;AAGD,QAAA,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE;AAC3B,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,yBAAyB,SAAS,CAAA,gBAAA,CAAkB,EACpD,KAAK,EACLC,qBAAS,CAAC,gBAAgB,CAC3B,CACF,CAAC;SACH;;AAGD,QAAA,IAAI,QAAQ,KAAK,QAAQ,EAAE;YACzB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;AAC1C,YAAA,IAAI,SAAS,GAAG,QAAQ,EAAE;AACxB,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,sBAAsB,QAAQ,CAAA,MAAA,CAAQ,EACtC,KAAK,EACLC,qBAAS,CAAC,eAAe,CAC1B,CACF,CAAC;aACH;SACF;;AAGD,QAAA,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AACxD,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,oCAAoC,EACpC,KAAK,EACLC,qBAAS,CAAC,qBAAqB,CAChC,CACF,CAAC;SACH;;QAGD,IAAI,mBAAmB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AACzD,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,2DAA2D,EAC3D,KAAK,EACLC,qBAAS,CAAC,qBAAqB,CAChC,CACF,CAAC;SACH;;QAGD,IAAI,iBAAiB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AACtD,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,qCAAqC,EACrC,KAAK,EACLC,qBAAS,CAAC,qBAAqB,CAChC,CACF,CAAC;SACH;;AAGD,QAAA,KAAK,MAAM,OAAO,IAAI,iBAAiB,EAAE;AACvC,YAAA,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AACtB,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,iCAAiC,EACjC,KAAK,EACLC,qBAAS,CAAC,gBAAgB,CAC3B,CACF,CAAC;gBACF,MAAM;aACP;SACF;;AAGD,QAAA,IAAI,UAAU,IAAI,CAAC,SAAS,EAAE;AAC5B,YAAA,KAAK,MAAM,OAAO,IAAIH,qCAAkB,CAAC,YAAY,EAAE;AACrD,gBAAA,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AACtB,oBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;oBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBE,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,mDAAmD,EACnD,KAAK,EACLC,qBAAS,CAAC,qBAAqB,CAChC,CACF,CAAC;oBACF,MAAM;iBACP;aACF;;AAGD,YAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;AACnE,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,qCAAqC,EACrC,KAAK,EACLC,qBAAS,CAAC,qBAAqB,CAChC,CACF,CAAC;aACH;SACF;;QAGD,IAAI,mBAAmB,EAAE;AACvB,YAAA,KAAK,MAAM,OAAO,IAAIH,qCAAkB,CAAC,YAAY,EAAE;AACrD,gBAAA,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AACtB,oBAAA,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;oBACxD,MAAM;iBACP;aACF;SACF;;QAGD,IAAI,oBAAoB,EAAE;AACxB,YAAA,KAAK,MAAM,OAAO,IAAIA,qCAAkB,CAAC,aAAa,EAAE;AACtD,gBAAA,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AACtB,oBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;oBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBE,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,uCAAuC,EACvC,KAAK,EACLC,qBAAS,CAAC,qBAAqB,CAChC,CACF,CAAC;oBACF,MAAM;iBACP;aACF;SACF;;QAGD,IAAI,uBAAuB,EAAE;AAC3B,YAAA,KAAK,MAAM,OAAO,IAAIH,qCAAkB,CAAC,0BAA0B,EAAE;AACnE,gBAAA,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AACtB,oBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;oBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBE,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,0CAA0C,EAC1C,KAAK,EACLC,qBAAS,CAAC,qBAAqB,CAChC,CACF,CAAC;oBACF,MAAM;iBACP;aACF;SACF;;AAGD,QAAA,IAAI,uCAAuC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AACtD,YAAA,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;SAC1D;;AAGD,QAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;AACvB,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,0BAA0B,EAC1B,KAAK,EACLC,qBAAS,CAAC,qBAAqB,CAChC,CACF,CAAC;SACH;AAED,QAAA,OAAO,MAAM,CAAC;KACf;AAED;;AAEG;IACH,aAAa,YAAY,CACvB,KAAU,EACV,UAcI,EAAE,EAAA;AAEN,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,aAAa,GAAG,cAAc,CAAC;;AAGrC,QAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ;cAC7B,QAAQ,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAI,CAAA,EAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAE,CAAA;cAC5E,IAAI,CAAC;QAET,IAAI,QAAQ,EAAE;YACZ,MAAM,MAAM,GAAGC,wCAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC7C,IAAI,MAAM,EAAE;AACV,gBAAA,OAAO,MAAM,CAAC;aACf;SACF;AAED,QAAA,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAW;gBAC/C,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAC/C,aAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,YAAA,IAAI,OAAO,CAAC,aAAa,EAAE;AACzB,gBAAAH,0CAAiB,CAAC,MAAM,CACtB,aAAa,EACb,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EACtB,CAAC,MAAM,CAAC,OAAO,CAChB,CAAC;aACH;AAED,YAAA,IAAI,QAAQ,IAAI,MAAM,CAAC,OAAO,EAAE;AAC9B,gBAAAG,wCAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;aACvC;AAED,YAAA,OAAO,MAAM,CAAC;SACf;QAAC,OAAO,KAAU,EAAE;AACnB,YAAA,IAAI,OAAO,CAAC,aAAa,EAAE;AACzB,gBAAAH,0CAAiB,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,IAAI,CAAC,CAAC;aACvE;AACD,YAAA,MAAM,GAAG,GAAG,CAAA,EAAG,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,eAAe,EAAE,CAAC;AAC1E,YAAA,MAAM,IAAI,GACR,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,IAAI,GAAGE,qBAAS,CAAC,aAAa,CAAC;YAChE,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,MAAM,EAAE,CAACD,yBAAY,CAAC,qBAAqB,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;AAC3D,gBAAA,QAAQ,EAAE,EAAE;AACZ,gBAAA,IAAI,EAAE,KAAK;aACZ,CAAC;SACH;KACF;AAED,IAAA,OAAO,gBAAgB,CAAC,KAAU,EAAE,OAAY,EAAA;AAC9C,QAAA,MAAM,MAAM,GAA2B;AACrC,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,MAAM,EAAE,EAAE;AACV,YAAA,QAAQ,EAAE,EAAE;AACZ,YAAA,IAAI,EAAE,KAAK;SACZ,CAAC;QAEF,MAAM,EACJ,QAAQ,GAAGG,qCAAgB,EAC3B,OAAO,GAAG,IAAI,EACd,eAAe,GAAG,KAAK,EACvB,cAAc,GAAG,IAAI,EACrB,YAAY,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,EACzE,aAAa,GAAG,EAAE,EAClB,MAAM,EACN,eAAe,GAAG,IAAI,EACtB,OAAO,GAAGL,qCAAkB,CAAC,aAAa,EAC1C,YAAY,GAAG,QAAQ,GACxB,GAAG,OAAO,CAAC;AAEZ,QAAA,IAAI,UAAe,CAAC;AAEpB,QAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;;AAE7B,YAAA,IAAI,KAAK,CAAC,MAAM,GAAG,OAAO,EAAE;AAC1B,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBE,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,uCAAuC,OAAO,CAAA,WAAA,CAAa,EAC3D,KAAK,EACLC,qBAAS,CAAC,eAAe,CAC1B,CACF,CAAC;AACF,gBAAA,OAAO,MAAM,CAAC;aACf;AAED,YAAA,IAAI;AACF,gBAAA,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;aAChC;YAAC,OAAO,KAAK,EAAE;AACd,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,CAAwB,qBAAA,EAAA,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,aAAa,CAAE,CAAA,EAChFC,qBAAS,CAAC,YAAY,CACvB,CACF,CAAC;AACF,gBAAA,OAAO,MAAM,CAAC;aACf;SACF;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;YACtD,UAAU,GAAG,KAAK,CAAC;SACpB;aAAM;AACL,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,eAAe,CAAC,EAAE,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAC5D,CAAC;AACF,YAAA,OAAO,MAAM,CAAC;SACf;;QAGD,IAAI,YAAY,KAAK,QAAQ,IAAI,YAAY,KAAK,QAAQ,EAAE;AAC1D,YAAA,IAAI,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,EAAE;AAC3C,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBA,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,+DAA+D,EAC/DC,qBAAS,CAAC,YAAY,CACvB,CACF,CAAC;AACF,gBAAA,OAAO,MAAM,CAAC;aACf;AAED,YAAA,IAAI,YAAY,KAAK,QAAQ,EAAE;AAC7B,gBAAA,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC1B,MAAM,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;gBACjD,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;AACrC,oBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,oBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,wCAAwC,EACxCC,qBAAS,CAAC,YAAY,CACvB,CACF,CAAC;AACF,oBAAA,IAAI,QAAQ,CAAC,MAAM,EAAE;AACnB,wBAAA,MAAM,CAAC,QAAQ,CAAC,IAAI,CAClB,eAAe,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA,CAAE,CACjD,CAAC;qBACH;AACD,oBAAA,OAAO,MAAM,CAAC;iBACf;aACF;SACF;;QAGD,IAAI,eAAe,EAAE;AACnB,YAAA,IAAI;AACF,gBAAA,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;aAC5B;YAAC,OAAO,KAAK,EAAE;AACd,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,mCAAmC,EACnCC,qBAAS,CAAC,YAAY,CACvB,CACF,CAAC;AACF,gBAAA,OAAO,MAAM,CAAC;aACf;SACF;;AAGD,QAAA,MAAM,gBAAgB,GAAGG,gCAAgB,CAAC,UAAU,EAAE;YACpD,QAAQ;YACR,OAAO;YACP,eAAe;YACf,cAAc;YACd,YAAY;YACZ,aAAa;AACb,YAAA,YAAY,EAAE,CAAC;AACf,YAAA,QAAQ,EAAE,CAAC;AACZ,SAAA,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,gBAAgB,CAAC,OAAO,CAAC;QAC5D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC/C,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AACnD,QAAA,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC;;AAGzB,QAAA,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE;YAC5B,MAAM,YAAY,GAAGC,kCAAkB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC5D,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,YAAY,CAAC,OAAO,CAAC;YACxD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YAC3C,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;SAChD;AAED,QAAA,OAAO,MAAM,CAAC;KACf;AAED;;AAEG;AACH,IAAA,OAAO,UAAU,CACf,KAAU,EACV,UAUI,EAAE,EAAA;AAEN,QAAA,MAAM,MAAM,GAA2B;AACrC,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,MAAM,EAAE,EAAE;AACV,YAAA,QAAQ,EAAE,EAAE;AACZ,YAAA,IAAI,EAAE,KAAK;SACZ,CAAC;AAEF,QAAA,MAAM,EACJ,OAAO,GAAG,MAAM,EAChB,YAAY,GAAG,IAAI,EACnB,aAAa,GAAG,IAAI,EACpB,cAAc,GAAG,KAAK,EACtB,aAAa,GAAG,IAAI,EACpB,SAAS,GAAG,KAAK,EACjB,MAAM,GAAG,IAAI,EACb,WAAW,GAAG,KAAK,EACnB,kBAAkB,GAAG,IAAI,GAC1B,GAAG,OAAO,CAAC;AAEZ,QAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC7B,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBL,yBAAY,CAAC,iBAAiB,CAC5B,gCAAgC,EAChC,EAAE,EACF,QAAQ,CACT,CACF,CAAC;AACF,YAAA,OAAO,MAAM,CAAC;SACf;AAED,QAAA,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;;QAGxB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AAClC,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBA,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,wCAAwC,EACxCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;AACF,YAAA,OAAO,MAAM,CAAC;SACf;QAED,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,UAAU,GAAkB,IAAI,CAAC;QACrC,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,MAAM,GAAG,KAAK,CAAC;;AAGnB,QAAA,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACpB,IAAI,CAAC,SAAS,EAAE;AACd,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,8BAA8B,EAC9BC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;AACF,gBAAA,OAAO,MAAM,CAAC;aACf;YAED,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAC5B,YAAA,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;AACtB,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,8BAA8B,EAC9BC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;AACF,gBAAA,OAAO,MAAM,CAAC;aACf;AAED,YAAA,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;AACrB,YAAA,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAE3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;AAC5B,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,6BAA6B,EAC7BC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;AACF,gBAAA,OAAO,MAAM,CAAC;aACf;AAED,YAAA,UAAU,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;SACtC;;QAGD,MAAM,UAAU,GAAGK,4BAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACnD,MAAM,UAAU,GAAGC,4BAAY,CAAC,SAAiB,CAAC,CAAC;AAEnD,QAAA,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC;AAC1B,QAAA,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC;;AAG1B,QAAA,IAAI,OAAO,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;AAC/B,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBP,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,6BAA6B,EAC7BC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;AACF,YAAA,OAAO,MAAM,CAAC;SACf;AAED,QAAA,IAAI,OAAO,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;AAC/B,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,6BAA6B,EAC7BC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;AACF,YAAA,OAAO,MAAM,CAAC;SACf;QAED,IAAI,OAAO,KAAK,MAAM,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE;AAC5C,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,wDAAwD,EACxDC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;AACF,YAAA,OAAO,MAAM,CAAC;SACf;;AAGD,QAAA,IAAI,UAAU,KAAK,IAAI,EAAE;AACvB,YAAA,IAAI,MAAM,KAAK,UAAU,GAAG,CAAC,IAAI,UAAU,GAAG,EAAE,CAAC,EAAE;AACjD,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,yCAAyC,EACzCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;AACD,YAAA,IAAI,MAAM,KAAK,UAAU,GAAG,CAAC,IAAI,UAAU,GAAG,GAAG,CAAC,EAAE;AAClD,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,0CAA0C,EAC1CC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;SACF;;QAGD,IAAI,MAAM,EAAE;AACV,YAAA,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;;YAGhD,IAAI,CAAC,YAAY,EAAE;AACjB,gBAAA,IACE,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE;qBACf,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACzD,qBAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;AACxC,qBAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;kBACxC;AACA,oBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,oBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,oCAAoC,EACpCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;iBACH;aACF;;YAGD,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AACvC,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,gCAAgC,EAChCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;;AAGD,YAAA,IAAI,CAAC,cAAc,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE;AAC3D,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,iCAAiC,EACjCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;;YAGD,IAAI,CAAC,kBAAkB,EAAE;gBACvB,IACE,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;qBACvD,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;qBAC3D,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,EAC3D;AACA,oBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,oBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,qCAAqC,EACrCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;iBACH;aACF;;YAGD,IAAI,WAAW,EAAE;AACf,gBAAA,IACE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;AACf,oBAAA,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG;AACjB,qBAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EACtC;AACA,oBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,oBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,2BAA2B,EAC3BC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;iBACH;aACF;;YAGD,IAAI,CAAC,aAAa,EAAE;AAClB,gBAAA,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AACxC,oBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,oBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,qCAAqC,EACrCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;iBACH;aACF;SACF;;QAGD,IAAI,MAAM,EAAE;AACV,YAAA,MAAM,UAAU,GAAGO,6BAAa,CAAC,SAAS,CAAC,CAAC;AAE5C,YAAA,IACE,CAAC,aAAa;gBACd,UAAU,KAAK,yCAAyC,EACxD;AACA,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBR,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,mCAAmC,EACnCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;;AAGD,YAAA,IACE,CAAC,YAAY;AACb,iBAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAClE;AACA,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,oCAAoC,EACpCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;;YAGD,IAAI,CAAC,YAAY,IAAI,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;AACnD,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,uCAAuC,EACvCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;YAED,IAAI,CAAC,cAAc,IAAI,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;AACrD,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,sCAAsC,EACtCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;;YAGD,IAAI,CAAC,kBAAkB,IAAI,UAAU,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;AAC9D,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,0CAA0C,EAC1CC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;SACF;AAED,QAAA,OAAO,MAAM,CAAC;KACf;AAED;;AAEG;AACH,IAAA,OAAO,cAAc,CACnB,KAAU,EACV,UAaI,EAAE,EAAA;AAEN,QAAA,MAAM,MAAM,GAA2B;AACrC,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,MAAM,EAAE,EAAE;AACV,YAAA,QAAQ,EAAE,EAAE;AACZ,YAAA,IAAI,EAAE,KAAK;SACZ,CAAC;QAEF,MAAM,EACJ,SAAS,GAAG,KAAK,EACjB,UAAU,GAAG,KAAK,EAClB,QAAQ,GAAGE,qCAAgB,EAC3B,OAAO,GAAG,IAAI,EACd,YAAY,GAAG,EAAE,EACjB,WAAW,GAAG,EAAE,EAChB,aAAa,GAAG,EAAE,EAClB,UAAU,EACV,MAAM,EACN,MAAM,GAAG,KAAK,EACd,yBAAyB,GAAG,IAAI,EAChC,qBAAqB,GAAG,GAAG,GAC5B,GAAG,OAAO,CAAC;;AAGZ,QAAA,IAAI,KAAK,KAAK,IAAI,EAAE;YAClB,IAAI,CAAC,SAAS,EAAE;AACd,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBH,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,yBAAyB,EACzBC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;AACD,YAAA,OAAO,MAAM,CAAC;SACf;;AAGD,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,IAAI,CAAC,UAAU,EAAE;AACf,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,oBAAoB,EACpBC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;AACD,YAAA,OAAO,MAAM,CAAC;SACf;;AAGD,QAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC7B,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAACD,yBAAY,CAAC,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;AACtE,YAAA,OAAO,MAAM,CAAC;SACf;;QAGD,IAAI,yBAAyB,IAAI,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE;AACnE,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBA,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,6EAA6E,EAC7EC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;AACF,YAAA,OAAO,MAAM,CAAC;SACf;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;AAGhC,QAAA,IAAI,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE;AACzB,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,CAAA,0BAAA,EAA6B,IAAI,CAAC,MAAM,CAAuB,oBAAA,EAAA,OAAO,CAAE,CAAA,EACxEC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;SACH;;AAGD,QAAA,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;AACtC,YAAA,IAAI,EAAE,WAAW,IAAI,KAAK,CAAC,EAAE;AAC3B,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,CAAyB,sBAAA,EAAA,WAAW,EAAE,EACtCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;SACF;;AAGD,QAAA,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;;AAEtB,YAAA,IAAI,GAAG,CAAC,MAAM,GAAG,qBAAqB,EAAE;AACtC,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,CAAA,eAAA,EAAkB,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAkC,+BAAA,EAAA,qBAAqB,CAAE,CAAA,EAC/FC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;gBACF,SAAS;aACV;;YAGD,IAAIH,qCAAkB,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACpD,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBE,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,CAAsC,mCAAA,EAAA,GAAG,GAAG,EAC5CC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;gBACF,SAAS;aACV;;AAGD,YAAA,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBACxD,IAAI,MAAM,EAAE;AACV,oBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;oBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,CAAQ,KAAA,EAAA,GAAG,+BAA+B,EAC1CC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;iBACH;qBAAM;oBACL,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAQ,KAAA,EAAA,GAAG,CAA+B,6BAAA,CAAA,CAAC,CAAC;iBAClE;aACF;;AAGD,YAAA,IAAI,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AAC/B,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,CAAQ,KAAA,EAAA,GAAG,gBAAgB,EAC3BC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;;YAGD,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;AACvC,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,CAAQ,KAAA,EAAA,GAAG,mCAAmC,EAC9CC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;;AAGD,YAAA,IAAI,qCAAqC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gBACnD,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAuC,oCAAA,EAAA,GAAG,CAAG,CAAA,CAAA,CAAC,CAAC;aACrE;SACF;;QAGD,MAAM,UAAU,GAAGQ,kCAAkB,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC1D,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC;QACtD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;;AAG7C,QAAA,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE;YAC5B,MAAM,YAAY,GAAGC,oCAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACzD,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,YAAY,CAAC,OAAO,CAAC;YACxD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YAC3C,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;SAChD;AAED,QAAA,OAAO,MAAM,CAAC;KACf;AAED;;AAEG;AACH,IAAA,OAAO,aAAa,CAClB,KAAU,EACV,UAOI,EAAE,EAAA;AAEN,QAAA,MAAM,MAAM,GAA2B;AACrC,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,MAAM,EAAE,EAAE;AACV,YAAA,QAAQ,EAAE,EAAE;AACZ,YAAA,IAAI,EAAE,KAAK;SACZ,CAAC;QAEF,MAAM,EACJ,kBAAkB,GAAG,IAAI,EACzB,SAAS,GAAG,GAAG,EACf,cAAc,GAAG,EAAE,EACnB,cAAc,GAAG,EAAE,EACnB,MAAM,GAAG,IAAI,GACd,GAAG,OAAO,CAAC;AAEZ,QAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC7B,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAACV,yBAAY,CAAC,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;AACtE,YAAA,OAAO,MAAM,CAAC;SACf;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;;AAGzC,QAAA,IAAI,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE;AAC5B,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBA,yBAAY,CAAC,iBAAiB,CAC5B,EAAE,EACF,mCAAmC,SAAS,CAAA,WAAA,CAAa,EACzD,KAAK,EACLC,qBAAS,CAAC,eAAe,CAC1B,CACF,CAAC;AACF,YAAA,OAAO,MAAM,CAAC;SACf;;AAGD,QAAA,MAAM,aAAa,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC;AACvD,QAAA,IAAI,aAAa,KAAK,CAAC,EAAE;AACvB,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,yCAAyC,EACzCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;AACF,YAAA,OAAO,MAAM,CAAC;SACf;AAED,QAAA,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;;AAG7C,QAAA,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,EAAE;AACzB,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,6CAA6C,EAC7CC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;AACF,YAAA,OAAO,MAAM,CAAC;SACf;;AAGD,QAAA,IAAI,SAAS,CAAC,MAAM,GAAG,EAAE,EAAE;AACzB,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,wCAAwC,EACxCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;SACH;;AAED,QAAA,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AAC3B,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,4CAA4C,EAC5CC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;SACH;;QAGD,IAAI,MAAM,EAAE;;YAEV,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;YACjD,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;AACxC,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,8CAA8C,EAC9CC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;SACF;aAAM;;YAEL,MAAM,mBAAmB,GACvB,yEAAyE,CAAC;YAC5E,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;AACxC,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,8CAA8C,EAC9CC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;SACF;;AAGD,QAAA,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;AAC5B,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,kDAAkD,EAClDC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;SACH;;AAGD,QAAA,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AACxD,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,iDAAiD,EACjDC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;SACH;;AAGD,QAAA,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE;AACvB,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,qCAAqC,EACrCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;SACH;;QAGD,IAAI,MAAM,EAAE;;YAEV,MAAM,gBAAgB,GAAG,gCAAgC,CAAC;YAC1D,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AAClC,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,qEAAqE,EACrEC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;SACF;aAAM;;YAEL,MAAM,gBAAgB,GACpB,qGAAqG,CAAC;YACxG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AAClC,gBAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,uBAAuB,EACvBC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;aACH;SACF;;AAGD,QAAA,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;AACzB,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,wCAAwC,EACxCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;SACH;;AAGD,QAAA,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AAClD,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,uCAAuC,EACvCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;SACH;;QAGD,IAAI,CAAC,kBAAkB,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AACtD,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,4CAA4C,EAC5CC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;SACH;;AAGD,QAAA,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;AACjE,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,CAAiB,cAAA,EAAA,MAAM,kBAAkB,EACzCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;SACH;AAED,QAAA,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;AACnC,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,CAAiB,cAAA,EAAA,MAAM,cAAc,EACrCC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;SACH;;QAGD,MAAM,iBAAiB,GAAG,oBAAoB,CAAC;AAC/C,QAAA,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;AACrC,YAAA,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;AACvB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAChBD,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,kFAAkF,EAClFC,qBAAS,CAAC,kBAAkB,CAC7B,CACF,CAAC;SACH;;AAGD,QAAA,IAAI,8BAA8B,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AAC9C,YAAA,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;SACvE;;AAGD,QAAA,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC;AAEpB,QAAA,OAAO,MAAM,CAAC;KACf;AAED;;AAEG;AACH,IAAA,OAAO,UAAU,GAAA;AACf,QAAA,OAAOF,0CAAiB,CAAC,UAAU,EAAE,CAAC;KACvC;AAED;;AAEG;AACH,IAAA,OAAO,YAAY,GAAA;QACjBA,0CAAiB,CAAC,KAAK,EAAE,CAAC;KAC3B;AAED;;AAEG;AACH,IAAA,OAAO,UAAU,GAAA;QACfG,wCAAe,CAAC,KAAK,EAAE,CAAC;KACzB;AAED;;AAEG;IACH,aAAa,aAAa,CACxB,MAAW,EACX,SAE6D,EAC7D,OAAA,GAII,EAAE,EAAA;AAKN,QAAA,MAAM,EACJ,eAAe,GAAG,IAAI,EACtB,cAAc,GAAG,EAAE,EACnB,OAAO,GAAG,KAAK,GAChB,GAAG,OAAO,CAAC;QAEZ,MAAM,OAAO,GAA6B,EAAE,CAAC;QAC7C,MAAM,OAAO,GAAU,EAAE,CAAC;;AAG1B,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,cAAc,EAAE;AACtD,YAAA,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC;SACnD;AAED,QAAA,IAAI;AACF,YAAA,MAAM,IAAI,CAAC,WAAW,CAAC,YAAW;AAChC,gBAAA,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;oBAC3B,MAAM,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,KAAK,KAAI;AAC9C,wBAAA,IAAI;4BACF,OAAO,MAAM,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;yBAChD;wBAAC,OAAO,KAAK,EAAE;4BACd,OAAO;AACL,gCAAA,OAAO,EAAE,KAAK;AACd,gCAAA,MAAM,EAAE;oCACNF,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,2BAA2B,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,eAAe,EAAE,EACrFC,qBAAS,CAAC,aAAa,CACxB;AACF,iCAAA;AACD,gCAAA,QAAQ,EAAE,EAAE;AACZ,gCAAA,IAAI,EAAE,KAAK;6BACc,CAAC;yBAC7B;AACH,qBAAC,CAAC,CAAC;oBAEH,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;AACtD,oBAAA,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;;AAG9B,oBAAA,IAAI,CAAC,eAAe,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;wBAC5D,MAAM;qBACP;iBACF;aACF,EAAE,OAAO,CAAC,CAAC;SACb;QAAC,OAAO,KAAK,EAAE;;YAEd,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;AACjD,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE;gBAClC,OAAO,CAAC,IAAI,CAAC;AACX,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,MAAM,EAAE;wBACND,yBAAY,CAAC,qBAAqB,CAChC,EAAE,EACF,6BAA6B,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,eAAe,EAAE,EACvFC,qBAAS,CAAC,aAAa,CACxB;AACF,qBAAA;AACD,oBAAA,QAAQ,EAAE,EAAE;oBACZ,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;AACjC,iBAAA,CAAC,CAAC;aACJ;SACF;AAED,QAAA,MAAM,OAAO,GAAG;YACd,KAAK,EAAE,OAAO,CAAC,MAAM;AACrB,YAAA,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM;AAC/C,YAAA,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM;SACjD,CAAC;AAEF,QAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;KAC7B;;AAtkDc,kBAAG,CAAA,GAAA,GAAe,IAAI,CAAC;AACd,kBAAA,CAAA,UAAU,GAAG;AACnC,IAAA,MAAM,EAAE,KAAK;AACb,IAAA,SAAS,EAAE,IAAI;AACf,IAAA,gBAAgB,EAAE,KAAK;AACvB,IAAA,WAAW,EAAE,KAAK;AAClB,IAAA,WAAW,EAAE,KAAK;AAClB,IAAA,eAAe,EAAE,IAAI;AACrB,IAAA,aAAa,EAAE,KAAK;AACpB,IAAA,OAAO,EAAE,KAAK;IACd,UAAU,EAAE,KAAK;CACT;;;;;;;;"}
|
|
@@ -124,8 +124,22 @@ class Mod {
|
|
|
124
124
|
const options = schema.options || {};
|
|
125
125
|
const partialDefinition = {};
|
|
126
126
|
for (const [key, value] of Object.entries(definition)) {
|
|
127
|
-
if (typeof value === "string"
|
|
128
|
-
partialDefinition[key] = value + "?";
|
|
127
|
+
if (typeof value === "string") {
|
|
128
|
+
partialDefinition[key] = value.endsWith("?") ? value : value + "?";
|
|
129
|
+
}
|
|
130
|
+
else if (typeof value === "object" &&
|
|
131
|
+
value !== null &&
|
|
132
|
+
!Array.isArray(value)) {
|
|
133
|
+
// For objects, wrap in optional schema interface if not already optional
|
|
134
|
+
if ("optional" in value && value.optional === true) {
|
|
135
|
+
partialDefinition[key] = value;
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
partialDefinition[key] = {
|
|
139
|
+
schema: value,
|
|
140
|
+
optional: true,
|
|
141
|
+
};
|
|
142
|
+
}
|
|
129
143
|
}
|
|
130
144
|
else {
|
|
131
145
|
partialDefinition[key] = value;
|
|
@@ -141,8 +155,23 @@ class Mod {
|
|
|
141
155
|
const options = schema.options || {};
|
|
142
156
|
const requiredDefinition = {};
|
|
143
157
|
for (const [key, value] of Object.entries(definition)) {
|
|
144
|
-
if (typeof value === "string"
|
|
145
|
-
requiredDefinition[key] = value.
|
|
158
|
+
if (typeof value === "string") {
|
|
159
|
+
requiredDefinition[key] = value.endsWith("?")
|
|
160
|
+
? value.slice(0, -1)
|
|
161
|
+
: value;
|
|
162
|
+
}
|
|
163
|
+
else if (typeof value === "object" &&
|
|
164
|
+
value !== null &&
|
|
165
|
+
!Array.isArray(value)) {
|
|
166
|
+
// Unwrap optional schema interface if present
|
|
167
|
+
if ("optional" in value &&
|
|
168
|
+
value.optional === true &&
|
|
169
|
+
"schema" in value) {
|
|
170
|
+
requiredDefinition[key] = value.schema;
|
|
171
|
+
}
|
|
172
|
+
else {
|
|
173
|
+
requiredDefinition[key] = value;
|
|
174
|
+
}
|
|
146
175
|
}
|
|
147
176
|
else {
|
|
148
177
|
requiredDefinition[key] = value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Mod.js","sources":["../../../../src/core/utils/Mod.ts"],"sourcesContent":[null],"names":["InterfaceSchema"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Mod.js","sources":["../../../../src/core/utils/Mod.ts"],"sourcesContent":[null],"names":["InterfaceSchema"],"mappings":"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"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -4,6 +4,7 @@ var Interface = require('./core/schema/mode/interfaces/Interface.js');
|
|
|
4
4
|
var index$2 = require('./core/schema/extensions/index.js');
|
|
5
5
|
var InterfaceSchema = require('./core/schema/mode/interfaces/InterfaceSchema.js');
|
|
6
6
|
var PerformanceMonitor = require('./core/schema/optimization/PerformanceMonitor.js');
|
|
7
|
+
var typescriptGenerator = require('./core/schema/extensions/mods/typescript-generator.js');
|
|
7
8
|
var Make = require('./core/utils/Make.js');
|
|
8
9
|
var Mod = require('./core/utils/Mod.js');
|
|
9
10
|
var SmartInference = require('./core/schema/extensions/SmartInference.js');
|
|
@@ -12,7 +13,79 @@ var index$1 = require('./core/schema/extensions/components/RealtimeValidation/in
|
|
|
12
13
|
var Docs = require('./core/schema/extensions/components/AutoDocumentation/Docs.js');
|
|
13
14
|
var TypeScriptGenerator = require('./core/schema/extensions/components/AutoDocumentation/TypeScriptGenerator.js');
|
|
14
15
|
|
|
15
|
-
|
|
16
|
+
/***************************************************************************
|
|
17
|
+
* ReliantType - TypeScript Interface-like Schema Validation
|
|
18
|
+
*
|
|
19
|
+
* @file index.ts
|
|
20
|
+
*
|
|
21
|
+
* @author Nehonix
|
|
22
|
+
* @license MIT
|
|
23
|
+
*
|
|
24
|
+
* Copyright (c) 2025 Nehonix Team. All rights reserved.
|
|
25
|
+
*
|
|
26
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
27
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
28
|
+
* in the Software without restriction, including without limitation the rights
|
|
29
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
30
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
31
|
+
* furnished to do so, subject to the following conditions:
|
|
32
|
+
*
|
|
33
|
+
* The above copyright notice and this permission notice shall be included in all
|
|
34
|
+
* copies or substantial portions of the Software.
|
|
35
|
+
*
|
|
36
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
37
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
38
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
39
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
40
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
41
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
42
|
+
* SOFTWARE.
|
|
43
|
+
*
|
|
44
|
+
****************************************************************************/
|
|
45
|
+
/**
|
|
46
|
+
* ReliantType - TypeScript Interface-like Schema Validation
|
|
47
|
+
*
|
|
48
|
+
* A schema validation system with TypeScript interface-like syntax
|
|
49
|
+
* that's incredibly easy to use and much safer than traditional schema libraries.
|
|
50
|
+
*
|
|
51
|
+
* @example Interface-based (Recommended)
|
|
52
|
+
* ```typescript
|
|
53
|
+
* import { Interface, Make, Mod } from 'reliant-type';
|
|
54
|
+
*
|
|
55
|
+
* const UserSchema = Interface({
|
|
56
|
+
* id: "number",
|
|
57
|
+
* email: "email",
|
|
58
|
+
* name: "string",
|
|
59
|
+
* age: "number?", // Optional
|
|
60
|
+
* status: Make.union("active", "inactive"),
|
|
61
|
+
* role: Make.const("user") // Safe constant
|
|
62
|
+
* });
|
|
63
|
+
*
|
|
64
|
+
* // Transform schemas easily
|
|
65
|
+
* const PublicUserSchema = Mod.omit(UserSchema, ["password"]);
|
|
66
|
+
* const PartialUserSchema = Mod.partial(UserSchema);
|
|
67
|
+
*
|
|
68
|
+
* const result = UserSchema.safeParse(userData);
|
|
69
|
+
* ```
|
|
70
|
+
*
|
|
71
|
+
* @example Traditional Fluent API
|
|
72
|
+
* ```typescript
|
|
73
|
+
* import { Schema } from 'reliant-type';
|
|
74
|
+
*
|
|
75
|
+
* const UserSchema = Schema.object({
|
|
76
|
+
* id: Schema.number().int().positive(),
|
|
77
|
+
* email: Schema.string().email(),
|
|
78
|
+
* name: Schema.string().min(2).max(50)
|
|
79
|
+
* });
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
// Main Interface-based API
|
|
83
|
+
// Register the TypeScript generator for InterfaceSchema to enable .types property
|
|
84
|
+
InterfaceSchema.InterfaceSchema.tsGenerator = (definition, options) => {
|
|
85
|
+
return typescriptGenerator.TypeScriptGenerator.generateInterface(definition, {
|
|
86
|
+
exportName: options?.name || "Schema"
|
|
87
|
+
});
|
|
88
|
+
};
|
|
16
89
|
|
|
17
90
|
exports.FieldTypes = Interface.FieldTypes;
|
|
18
91
|
exports.Interface = Interface.Interface;
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/index.ts"],"sourcesContent":[null],"names":["InterfaceSchema","TSGenerator"],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4B8E;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCG;AAEH;AA2DA;AACAA,+BAAe,CAAC,WAAW,GAAG,CAAC,UAAU,EAAE,OAAO,KAAI;AACpD,IAAA,OAAOC,uCAAW,CAAC,iBAAiB,CAAC,UAAU,EAAE;AAC/C,QAAA,UAAU,EAAE,OAAO,EAAE,IAAI,IAAI,QAAQ;AACtC,KAAA,CAAC,CAAC;AACL,CAAC;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { TypeGuards } from '../../mode/interfaces/validators/TypeGuards.js';
|
|
2
|
+
|
|
1
3
|
/**
|
|
2
4
|
* TypeScript Generator - Generate TypeScript type definitions from schemas
|
|
3
5
|
*
|
|
@@ -12,7 +14,7 @@ class TypeScriptGenerator {
|
|
|
12
14
|
* Generate TypeScript interface from schema
|
|
13
15
|
*/
|
|
14
16
|
static generateInterface(schema, options = {}) {
|
|
15
|
-
const { exportName = "Schema", namespace, exportType = "interface" } = options;
|
|
17
|
+
const { exportName = "Schema", namespace, exportType = "interface", } = options;
|
|
16
18
|
// Extract the actual field definitions from the schema
|
|
17
19
|
const fieldDefinitions = this.extractFieldDefinitions(schema);
|
|
18
20
|
let output = "";
|
|
@@ -38,7 +40,7 @@ class TypeScriptGenerator {
|
|
|
38
40
|
*/
|
|
39
41
|
static extractFieldDefinitions(schema) {
|
|
40
42
|
// If schema has a definition property, use that
|
|
41
|
-
if (schema && typeof schema ===
|
|
43
|
+
if (schema && typeof schema === "object" && schema.definition) {
|
|
42
44
|
return schema.definition;
|
|
43
45
|
}
|
|
44
46
|
// Otherwise, assume the schema itself contains the field definitions
|
|
@@ -51,7 +53,7 @@ class TypeScriptGenerator {
|
|
|
51
53
|
const indent = " ".repeat(indentLevel);
|
|
52
54
|
let output = `${indent}export interface ${name} {\n`;
|
|
53
55
|
Object.entries(schema).forEach(([fieldName, fieldType]) => {
|
|
54
|
-
const tsType = this.convertToTypeScript(fieldType);
|
|
56
|
+
const tsType = this.convertToTypeScript(fieldType, indentLevel + 1);
|
|
55
57
|
const optional = this.isOptionalField(fieldType) ? "?" : "";
|
|
56
58
|
output += `${indent} ${fieldName}${optional}: ${tsType};\n`;
|
|
57
59
|
});
|
|
@@ -63,13 +65,17 @@ class TypeScriptGenerator {
|
|
|
63
65
|
*/
|
|
64
66
|
static generateTypeDefinition(schema, name, indentLevel = 0) {
|
|
65
67
|
const indent = " ".repeat(indentLevel);
|
|
66
|
-
const objectType = this.convertObjectToTypeScript(schema);
|
|
68
|
+
const objectType = this.convertObjectToTypeScript(schema, indentLevel);
|
|
67
69
|
return `${indent}export type ${name} = ${objectType};\n`;
|
|
68
70
|
}
|
|
69
71
|
/**
|
|
70
72
|
* Convert schema field to TypeScript type
|
|
71
73
|
*/
|
|
72
|
-
static convertToTypeScript(fieldType) {
|
|
74
|
+
static convertToTypeScript(fieldType, indentLevel = 0) {
|
|
75
|
+
// Handle OptionalSchemaInterface wrapper
|
|
76
|
+
if (TypeGuards.isOptionalSchemaInterface(fieldType)) {
|
|
77
|
+
return this.convertToTypeScript(fieldType.schema, indentLevel);
|
|
78
|
+
}
|
|
73
79
|
if (typeof fieldType === "string") {
|
|
74
80
|
return this.convertStringToTypeScript(fieldType);
|
|
75
81
|
}
|
|
@@ -82,7 +88,10 @@ class TypeScriptGenerator {
|
|
|
82
88
|
if (fieldType.const !== undefined) {
|
|
83
89
|
return `"${fieldType.const}"`;
|
|
84
90
|
}
|
|
85
|
-
return this.convertObjectToTypeScript(fieldType);
|
|
91
|
+
return this.convertObjectToTypeScript(fieldType, indentLevel);
|
|
92
|
+
}
|
|
93
|
+
if (Array.isArray(fieldType) && fieldType.length === 1) {
|
|
94
|
+
return `${this.convertToTypeScript(fieldType[0], indentLevel)}[]`;
|
|
86
95
|
}
|
|
87
96
|
return "any";
|
|
88
97
|
}
|
|
@@ -91,6 +100,12 @@ class TypeScriptGenerator {
|
|
|
91
100
|
*/
|
|
92
101
|
static convertStringToTypeScript(fieldType) {
|
|
93
102
|
const cleanType = fieldType.replace("?", "");
|
|
103
|
+
// Handle function types
|
|
104
|
+
if (TypeGuards.isFunctionType(fieldType)) {
|
|
105
|
+
const type = fieldType.endsWith("?") ? fieldType.slice(0, -1) : fieldType;
|
|
106
|
+
const signature = type.slice(3, -1); // remove fn( and )
|
|
107
|
+
return signature.replace(/TYPE/g, "any");
|
|
108
|
+
}
|
|
94
109
|
// Handle arrays FIRST - before other checks
|
|
95
110
|
if (cleanType.includes("[]")) {
|
|
96
111
|
const elementType = cleanType.replace("[]", "").replace(/\([^)]*\)/, ""); // Remove constraints
|
|
@@ -112,7 +127,10 @@ class TypeScriptGenerator {
|
|
|
112
127
|
positive: "number",
|
|
113
128
|
int: "number",
|
|
114
129
|
boolean: "boolean",
|
|
115
|
-
string: "string"
|
|
130
|
+
string: "string",
|
|
131
|
+
object: "Record<string, any>",
|
|
132
|
+
any: "any",
|
|
133
|
+
record: "Record<string, any>",
|
|
116
134
|
};
|
|
117
135
|
// Check for direct mapping
|
|
118
136
|
if (typeMappings[cleanType]) {
|
|
@@ -124,30 +142,39 @@ class TypeScriptGenerator {
|
|
|
124
142
|
}
|
|
125
143
|
// Handle union types (pipe-separated values)
|
|
126
144
|
if (cleanType.includes("|")) {
|
|
127
|
-
const unionTypes = cleanType.split("|").map(t =>
|
|
145
|
+
const unionTypes = cleanType.split("|").map((t) => {
|
|
146
|
+
const trimmed = t.trim();
|
|
147
|
+
// If it's a known type, use its mapping, otherwise treat as literal
|
|
148
|
+
return typeMappings[trimmed] || `"${trimmed}"`;
|
|
149
|
+
});
|
|
128
150
|
return unionTypes.join(" | ");
|
|
129
151
|
}
|
|
130
|
-
return "string"
|
|
152
|
+
return "any"; // Changed fallback from "string" to "any"
|
|
131
153
|
}
|
|
132
154
|
/**
|
|
133
155
|
* Convert object to TypeScript type
|
|
134
156
|
*/
|
|
135
|
-
static convertObjectToTypeScript(obj) {
|
|
157
|
+
static convertObjectToTypeScript(obj, indentLevel = 0) {
|
|
136
158
|
if (typeof obj !== "object" || obj === null) {
|
|
137
159
|
return "any";
|
|
138
160
|
}
|
|
161
|
+
const indent = " ".repeat(indentLevel);
|
|
162
|
+
const nextIndent = " ".repeat(indentLevel + 1);
|
|
139
163
|
const properties = [];
|
|
140
164
|
Object.entries(obj).forEach(([key, value]) => {
|
|
141
|
-
const tsType = this.convertToTypeScript(value);
|
|
165
|
+
const tsType = this.convertToTypeScript(value, indentLevel + 1);
|
|
142
166
|
const optional = this.isOptionalField(value) ? "?" : "";
|
|
143
|
-
properties.push(`${key}${optional}: ${tsType}`);
|
|
167
|
+
properties.push(`${nextIndent}${key}${optional}: ${tsType}`);
|
|
144
168
|
});
|
|
145
|
-
return `{\n
|
|
169
|
+
return `{\n${properties.join(";\n")};\n${indent}}`;
|
|
146
170
|
}
|
|
147
171
|
/**
|
|
148
172
|
* Check if field is optional
|
|
149
173
|
*/
|
|
150
174
|
static isOptionalField(fieldType) {
|
|
175
|
+
if (TypeGuards.isOptionalSchemaInterface(fieldType)) {
|
|
176
|
+
return true;
|
|
177
|
+
}
|
|
151
178
|
if (typeof fieldType === "string") {
|
|
152
179
|
return fieldType.includes("?");
|
|
153
180
|
}
|
|
@@ -167,9 +194,11 @@ class TypeScriptGenerator {
|
|
|
167
194
|
if (fields.length > 1) {
|
|
168
195
|
output += `export type ${baseName}Keys = keyof ${baseName};\n\n`;
|
|
169
196
|
// Generate create type (without optional fields)
|
|
170
|
-
const requiredFields = fields.filter(field => !this.isOptionalField(schema[field]));
|
|
197
|
+
const requiredFields = fields.filter((field) => !this.isOptionalField(schema[field]));
|
|
171
198
|
if (requiredFields.length > 0 && requiredFields.length < fields.length) {
|
|
172
|
-
output += `export type Create${baseName} = Pick<${baseName}, ${requiredFields
|
|
199
|
+
output += `export type Create${baseName} = Pick<${baseName}, ${requiredFields
|
|
200
|
+
.map((f) => `"${f}"`)
|
|
201
|
+
.join(" | ")}>;\n\n`;
|
|
173
202
|
}
|
|
174
203
|
}
|
|
175
204
|
return output;
|
|
@@ -203,7 +232,7 @@ export interface ${baseName}ParseResult {
|
|
|
203
232
|
* Generate complete TypeScript module
|
|
204
233
|
*/
|
|
205
234
|
static generateModule(schema, options) {
|
|
206
|
-
const { moduleName, exportName = "Schema", includeUtilities = true, includeValidation = true, header } = options;
|
|
235
|
+
const { moduleName, exportName = "Schema", includeUtilities = true, includeValidation = true, header, } = options;
|
|
207
236
|
let output = "";
|
|
208
237
|
// Add header comment
|
|
209
238
|
if (header) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescript-generator.js","sources":["../../../../../../src/core/schema/extensions/mods/typescript-generator.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;;;;;AAKG;
|
|
1
|
+
{"version":3,"file":"typescript-generator.js","sources":["../../../../../../src/core/schema/extensions/mods/typescript-generator.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;;;;;AAKG;AAKH;;AAEG;MACU,mBAAmB,CAAA;AAC9B;;AAEG;AACH,IAAA,OAAO,iBAAiB,CACtB,MAAuB,EACvB,UAA6B,EAAE,EAAA;AAE/B,QAAA,MAAM,EACJ,UAAU,GAAG,QAAQ,EACrB,SAAS,EACT,UAAU,GAAG,WAAW,GACzB,GAAG,OAAO,CAAC;;QAGZ,MAAM,gBAAgB,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;QAE9D,IAAI,MAAM,GAAG,EAAE,CAAC;;QAGhB,IAAI,SAAS,EAAE;AACb,YAAA,MAAM,IAAI,CAAA,iBAAA,EAAoB,SAAS,CAAA,IAAA,CAAM,CAAC;SAC/C;;AAGD,QAAA,IAAI,UAAU,KAAK,WAAW,EAAE;AAC9B,YAAA,MAAM,IAAI,IAAI,CAAC,2BAA2B,CACxC,gBAAgB,EAChB,UAAU,EACV,SAAS,GAAG,CAAC,GAAG,CAAC,CAClB,CAAC;SACH;aAAM;AACL,YAAA,MAAM,IAAI,IAAI,CAAC,sBAAsB,CACnC,gBAAgB,EAChB,UAAU,EACV,SAAS,GAAG,CAAC,GAAG,CAAC,CAClB,CAAC;SACH;;QAGD,IAAI,SAAS,EAAE;YACb,MAAM,IAAI,KAAK,CAAC;SACjB;AAED,QAAA,OAAO,MAAM,CAAC;KACf;AAED;;AAEG;IACK,OAAO,uBAAuB,CAAC,MAAW,EAAA;;QAEhD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE;YAC7D,OAAO,MAAM,CAAC,UAAU,CAAC;SAC1B;;AAGD,QAAA,OAAO,MAAM,CAAC;KACf;AAED;;AAEG;IACK,OAAO,2BAA2B,CACxC,MAAuB,EACvB,IAAY,EACZ,cAAsB,CAAC,EAAA;QAEvB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;AACxC,QAAA,IAAI,MAAM,GAAG,CAAA,EAAG,MAAM,CAAoB,iBAAA,EAAA,IAAI,MAAM,CAAC;AAErD,QAAA,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,KAAI;AACxD,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC;AACpE,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;YAC5D,MAAM,IAAI,CAAG,EAAA,MAAM,CAAK,EAAA,EAAA,SAAS,GAAG,QAAQ,CAAA,EAAA,EAAK,MAAM,CAAA,GAAA,CAAK,CAAC;AAC/D,SAAC,CAAC,CAAC;AAEH,QAAA,MAAM,IAAI,CAAA,EAAG,MAAM,CAAA,GAAA,CAAK,CAAC;AACzB,QAAA,OAAO,MAAM,CAAC;KACf;AAED;;AAEG;IACK,OAAO,sBAAsB,CACnC,MAAuB,EACvB,IAAY,EACZ,cAAsB,CAAC,EAAA;QAEvB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACxC,MAAM,UAAU,GAAG,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AACvE,QAAA,OAAO,GAAG,MAAM,CAAA,YAAA,EAAe,IAAI,CAAM,GAAA,EAAA,UAAU,KAAK,CAAC;KAC1D;AAED;;AAEG;AACK,IAAA,OAAO,mBAAmB,CAChC,SAAc,EACd,cAAsB,CAAC,EAAA;;AAGvB,QAAA,IAAI,UAAU,CAAC,yBAAyB,CAAC,SAAS,CAAC,EAAE;YACnD,OAAO,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;SAChE;AAED,QAAA,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;AACjC,YAAA,OAAO,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;SAClD;AAED,QAAA,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;;AAE9D,YAAA,IAAI,SAAS,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;gBACrD,OAAO,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAU,KAAK,CAAI,CAAA,EAAA,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACtE;;AAGD,YAAA,IAAI,SAAS,CAAC,KAAK,KAAK,SAAS,EAAE;AACjC,gBAAA,OAAO,CAAI,CAAA,EAAA,SAAS,CAAC,KAAK,GAAG,CAAC;aAC/B;YAED,OAAO,IAAI,CAAC,yBAAyB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;SAC/D;AAED,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;AACtD,YAAA,OAAO,CAAG,EAAA,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC;SACnE;AAED,QAAA,OAAO,KAAK,CAAC;KACd;AAED;;AAEG;IACK,OAAO,yBAAyB,CAAC,SAAiB,EAAA;QACxD,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;;AAG7C,QAAA,IAAI,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE;YACxC,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;AAC1E,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACpC,OAAO,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SAC1C;;AAGD,QAAA,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;AAC5B,YAAA,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YACzE,MAAM,aAAa,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC;YAClE,OAAO,CAAA,EAAG,aAAa,CAAA,EAAA,CAAI,CAAC;SAC7B;;AAGD,QAAA,IAAI,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;AACpE,YAAA,OAAO,QAAQ,CAAC;SACjB;;AAGD,QAAA,MAAM,YAAY,GAA2B;AAC3C,YAAA,KAAK,EAAE,QAAQ;AACf,YAAA,GAAG,EAAE,QAAQ;AACb,YAAA,IAAI,EAAE,QAAQ;AACd,YAAA,KAAK,EAAE,QAAQ;AACf,YAAA,IAAI,EAAE,MAAM;AACZ,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,GAAG,EAAE,QAAQ;AACb,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,MAAM,EAAE,qBAAqB;AAC7B,YAAA,GAAG,EAAE,KAAK;AACV,YAAA,MAAM,EAAE,qBAAqB;SAC9B,CAAC;;AAGF,QAAA,IAAI,YAAY,CAAC,SAAS,CAAC,EAAE;AAC3B,YAAA,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;SAChC;;AAGD,QAAA,IAAI,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;AAClC,YAAA,OAAO,QAAQ,CAAC;SACjB;;AAGD,QAAA,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AAC3B,YAAA,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;AAChD,gBAAA,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;;gBAEzB,OAAO,YAAY,CAAC,OAAO,CAAC,IAAI,CAAI,CAAA,EAAA,OAAO,GAAG,CAAC;AACjD,aAAC,CAAC,CAAC;AACH,YAAA,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC/B;QAED,OAAO,KAAK,CAAC;KACd;AAED;;AAEG;AACK,IAAA,OAAO,yBAAyB,CACtC,GAAQ,EACR,cAAsB,CAAC,EAAA;QAEvB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE;AAC3C,YAAA,OAAO,KAAK,CAAC;SACd;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACxC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;QAChD,MAAM,UAAU,GAAa,EAAE,CAAC;AAEhC,QAAA,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAI;AAC3C,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC;AAChE,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;AACxD,YAAA,UAAU,CAAC,IAAI,CAAC,CAAA,EAAG,UAAU,CAAA,EAAG,GAAG,CAAA,EAAG,QAAQ,CAAA,EAAA,EAAK,MAAM,CAAA,CAAE,CAAC,CAAC;AAC/D,SAAC,CAAC,CAAC;QAEH,OAAO,CAAA,GAAA,EAAM,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA,GAAA,EAAM,MAAM,CAAA,CAAA,CAAG,CAAC;KACpD;AAED;;AAEG;IACK,OAAO,eAAe,CAAC,SAAc,EAAA;AAC3C,QAAA,IAAI,UAAU,CAAC,yBAAyB,CAAC,SAAS,CAAC,EAAE;AACnD,YAAA,OAAO,IAAI,CAAC;SACb;AACD,QAAA,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;AACjC,YAAA,OAAO,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;SAChC;AACD,QAAA,OAAO,KAAK,CAAC;KACd;AAED;;AAEG;AACH,IAAA,OAAO,oBAAoB,CACzB,MAAuB,EACvB,QAAgB,EAAA;QAEhB,IAAI,MAAM,GAAG,EAAE,CAAC;;AAGhB,QAAA,MAAM,IAAI,CAAsB,mBAAA,EAAA,QAAQ,CAAc,WAAA,EAAA,QAAQ,QAAQ,CAAC;;AAGvE,QAAA,MAAM,IAAI,CAAuB,oBAAA,EAAA,QAAQ,CAAe,YAAA,EAAA,QAAQ,QAAQ,CAAC;;QAGzE,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACnC,QAAA,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;AACrB,YAAA,MAAM,IAAI,CAAe,YAAA,EAAA,QAAQ,CAAgB,aAAA,EAAA,QAAQ,OAAO,CAAC;;YAGjE,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAClC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAChD,CAAC;AAEF,YAAA,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE;AACtE,gBAAA,MAAM,IAAI,CAAqB,kBAAA,EAAA,QAAQ,CAAW,QAAA,EAAA,QAAQ,KAAK,cAAc;qBAC1E,GAAG,CAAC,CAAC,CAAC,KAAK,CAAA,CAAA,EAAI,CAAC,CAAA,CAAA,CAAG,CAAC;AACpB,qBAAA,IAAI,CAAC,KAAK,CAAC,CAAA,MAAA,CAAQ,CAAC;aACxB;SACF;AAED,QAAA,OAAO,MAAM,CAAC;KACf;AAED;;AAEG;IACH,OAAO,uBAAuB,CAAC,QAAgB,EAAA;QAC7C,OAAO,CAAA;mBACQ,QAAQ,CAAA;;UAEjB,QAAQ,CAAA;;;;AAIJ,YAAA,EAAA,QAAQ,8BAA8B,QAAQ,CAAA;;mBAEzC,QAAQ,CAAA;;WAEhB,QAAQ,CAAA;;;;;;;;CAQlB,CAAC;KACC;AAED;;AAEG;AACH,IAAA,OAAO,cAAc,CACnB,MAAuB,EACvB,OAAsB,EAAA;AAEtB,QAAA,MAAM,EACJ,UAAU,EACV,UAAU,GAAG,QAAQ,EACrB,gBAAgB,GAAG,IAAI,EACvB,iBAAiB,GAAG,IAAI,EACxB,MAAM,GACP,GAAG,OAAO,CAAC;QAEZ,IAAI,MAAM,GAAG,EAAE,CAAC;;QAGhB,IAAI,MAAM,EAAE;AACV,YAAA,MAAM,IAAI,CAAA,QAAA,EAAW,MAAM,CAAA,SAAA,CAAW,CAAC;SACxC;;QAGD,MAAM,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QACzD,MAAM,IAAI,IAAI,CAAC;;QAGf,IAAI,gBAAgB,EAAE;YACpB,MAAM,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;SACzD;;QAGD,IAAI,iBAAiB,EAAE;AACrB,YAAA,MAAM,IAAI,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;SACpD;;QAGD,IAAI,UAAU,EAAE;AACd,YAAA,MAAM,IAAI,CAAA,eAAA,EAAkB,UAAU,CAAA,MAAA,CAAQ,CAAC;AAC/C,YAAA,MAAM,IAAI,CAAA,SAAA,EAAY,UAAU,CAAA,IAAA,CAAM,CAAC;AACvC,YAAA,MAAM,IAAI,CAAa,UAAA,EAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;YACxE,MAAM,IAAI,MAAM,CAAC;SAClB;AAED,QAAA,OAAO,MAAM,CAAC;KACf;AAED;;AAEG;IACH,OAAO,aAAa,CAAC,MAAuB,EAAA;QAC1C,MAAM,IAAI,GAA2B,EAAE,CAAC;AAExC,QAAA,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,KAAI;AACxD,YAAA,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AAClE,SAAC,CAAC,CAAC;AAEH,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACK,IAAA,OAAO,kBAAkB,CAAC,SAAiB,EAAE,SAAc,EAAA;AACjE,QAAA,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;YACjC,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC7C,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAE3C,YAAA,IAAI,WAAW,GAAG,CAAG,EAAA,SAAS,QAAQ,CAAC;;YAGvC,IAAI,SAAS,KAAK,OAAO;gBAAE,WAAW,GAAG,eAAe,CAAC;iBACpD,IAAI,SAAS,KAAK,KAAK;gBAAE,WAAW,GAAG,aAAa,CAAC;iBACrD,IAAI,SAAS,KAAK,MAAM;gBAAE,WAAW,GAAG,mBAAmB,CAAC;iBAC5D,IAAI,SAAS,KAAK,MAAM;gBAAE,WAAW,GAAG,eAAe,CAAC;iBACxD,IAAI,SAAS,KAAK,UAAU;gBAAE,WAAW,GAAG,iBAAiB,CAAC;AAC9D,iBAAA,IAAI,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC;gBAAE,WAAW,GAAG,YAAY,CAAC;AAC/D,iBAAA,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,WAAW,GAAG,iBAAiB,CAAC;AAEnE,YAAA,IAAI,KAAK,GAAG,CAAW,QAAA,EAAA,WAAW,EAAE,CAAC;YAErC,IAAI,UAAU,EAAE;gBACd,KAAK,IAAI,gBAAgB,CAAC;aAC3B;;AAGD,YAAA,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBAC3B,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;gBAC7C,IAAI,KAAK,EAAE;AACT,oBAAA,KAAK,IAAI,CAAqB,kBAAA,EAAA,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC1C;aACF;YAED,KAAK,IAAI,OAAO,CAAC;AACjB,YAAA,OAAO,KAAK,CAAC;SACd;QAED,OAAO,CAAA,QAAA,EAAW,SAAS,CAAA,WAAA,CAAa,CAAC;KAC1C;AACF;;;;"}
|