@orval/axios 8.0.0-rc.0 → 8.0.0-rc.2

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.
@@ -18,4 +18,4 @@ declare const builder: ({
18
18
  }) => () => ClientGeneratorsBuilder;
19
19
  //#endregion
20
20
  export { builder, builder as default, generateAxios, generateAxiosFooter, generateAxiosFunctions, generateAxiosHeader, generateAxiosTitle, getAxiosDependencies };
21
- //# sourceMappingURL=index.d.ts.map
21
+ //# sourceMappingURL=index.d.mts.map
@@ -26,9 +26,9 @@ const PARAMS_SERIALIZER_DEPENDENCIES = [{
26
26
  const returnTypesToWrite = /* @__PURE__ */ new Map();
27
27
  const getAxiosDependencies = (hasGlobalMutator, hasParamsSerializerOptions) => [...hasGlobalMutator ? [] : AXIOS_DEPENDENCIES, ...hasParamsSerializerOptions ? PARAMS_SERIALIZER_DEPENDENCIES : []];
28
28
  const generateAxiosImplementation = ({ headers, queryParams, operationName, response, mutator, body, props, verb, override, formData, formUrlEncoded, paramsSerializer }, { route, context }) => {
29
- const isRequestOptions = override?.requestOptions !== false;
30
- const isFormData = !override?.formData.disabled;
31
- const isFormUrlEncoded = override?.formUrlEncoded !== false;
29
+ const isRequestOptions = override.requestOptions !== false;
30
+ const isFormData = !override.formData.disabled;
31
+ const isFormUrlEncoded = override.formUrlEncoded !== false;
32
32
  const isExactOptionalPropertyTypes = !!context.output.tsconfig?.compilerOptions?.exactOptionalPropertyTypes;
33
33
  const isSyntheticDefaultImportsAllowed = isSyntheticDefaultImportsAllow(context.output.tsconfig);
34
34
  const bodyForm = generateFormDataAndUrlEncodedFunction({
@@ -51,7 +51,7 @@ const generateAxiosImplementation = ({ headers, queryParams, operationName, resp
51
51
  hasSignal: false,
52
52
  isExactOptionalPropertyTypes
53
53
  });
54
- const requestOptions = isRequestOptions ? generateMutatorRequestOptions(override?.requestOptions, mutator.hasSecondArg) : "";
54
+ const requestOptions = isRequestOptions ? generateMutatorRequestOptions(override.requestOptions, mutator.hasSecondArg) : "";
55
55
  returnTypesToWrite.set(operationName, (title) => `export type ${pascal(operationName)}Result = NonNullable<Awaited<ReturnType<${title ? `ReturnType<typeof ${title}>['${operationName}']` : `typeof ${operationName}`}>>>`);
56
56
  return `const ${operationName} = (\n ${mutator.bodyTypeName && body.definition ? toObjectString(props, "implementation").replace(/* @__PURE__ */ new RegExp(`(\\w*):\\s?${body.definition}`), `$1: ${mutator.bodyTypeName}<${body.definition}>`) : toObjectString(props, "implementation")}\n ${isRequestOptions && mutator.hasSecondArg ? `options${context.output.optionsParamRequired ? "" : "?"}: SecondParameter<typeof ${mutator.name}<${response.definition.success || "unknown"}>>,` : ""}) => {${bodyForm}
57
57
  return ${mutator.name}<${response.definition.success || "unknown"}>(
@@ -67,11 +67,11 @@ const generateAxiosImplementation = ({ headers, queryParams, operationName, resp
67
67
  queryParams,
68
68
  response,
69
69
  verb,
70
- requestOptions: override?.requestOptions,
70
+ requestOptions: override.requestOptions,
71
71
  isFormData,
72
72
  isFormUrlEncoded,
73
73
  paramsSerializer,
74
- paramsSerializerOptions: override?.paramsSerializerOptions,
74
+ paramsSerializerOptions: override.paramsSerializerOptions,
75
75
  isExactOptionalPropertyTypes,
76
76
  hasSignal: false
77
77
  });
@@ -106,7 +106,7 @@ const generateAxios = (verbOptions, options) => {
106
106
  imports
107
107
  };
108
108
  };
109
- const generateAxiosFunctions = async (verbOptions, options) => {
109
+ const generateAxiosFunctions = (verbOptions, options) => {
110
110
  const { implementation, imports } = generateAxios(verbOptions, options);
111
111
  return {
112
112
  implementation: "export " + implementation,
@@ -142,4 +142,4 @@ var src_default = builder;
142
142
 
143
143
  //#endregion
144
144
  export { builder, src_default as default, generateAxios, generateAxiosFooter, generateAxiosFunctions, generateAxiosHeader, generateAxiosTitle, getAxiosDependencies };
145
- //# sourceMappingURL=index.js.map
145
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":["AXIOS_DEPENDENCIES: GeneratorDependency[]","PARAMS_SERIALIZER_DEPENDENCIES: GeneratorDependency[]","getAxiosDependencies: ClientDependenciesBuilder","generateAxiosTitle: ClientTitleBuilder","generateAxiosHeader: ClientHeaderBuilder","generateAxiosFooter: ClientFooterBuilder","generateAxiosFunctions: ClientBuilder","axiosClientBuilder: ClientGeneratorsBuilder","axiosFunctionsClientBuilder: ClientGeneratorsBuilder","builders: Record<'axios' | 'axios-functions', ClientGeneratorsBuilder>"],"sources":["../src/index.ts"],"sourcesContent":["import {\n type ClientBuilder,\n type ClientDependenciesBuilder,\n type ClientFooterBuilder,\n type ClientGeneratorsBuilder,\n type ClientHeaderBuilder,\n type ClientTitleBuilder,\n generateFormDataAndUrlEncodedFunction,\n generateMutatorConfig,\n generateMutatorRequestOptions,\n generateOptions,\n generateVerbImports,\n type GeneratorDependency,\n type GeneratorOptions,\n type GeneratorVerbOptions,\n isSyntheticDefaultImportsAllow,\n pascal,\n sanitize,\n toObjectString,\n} from '@orval/core';\n\nconst AXIOS_DEPENDENCIES: GeneratorDependency[] = [\n {\n exports: [\n {\n name: 'axios',\n default: true,\n values: true,\n syntheticDefaultImport: true,\n },\n { name: 'AxiosRequestConfig' },\n { name: 'AxiosResponse' },\n ],\n dependency: 'axios',\n },\n];\n\nconst PARAMS_SERIALIZER_DEPENDENCIES: GeneratorDependency[] = [\n {\n exports: [\n {\n name: 'qs',\n default: true,\n values: true,\n syntheticDefaultImport: true,\n },\n ],\n dependency: 'qs',\n },\n];\n\nconst returnTypesToWrite = new Map<string, (title?: string) => string>();\n\nexport const getAxiosDependencies: ClientDependenciesBuilder = (\n hasGlobalMutator,\n hasParamsSerializerOptions: boolean,\n) => [\n ...(hasGlobalMutator ? [] : AXIOS_DEPENDENCIES),\n ...(hasParamsSerializerOptions ? PARAMS_SERIALIZER_DEPENDENCIES : []),\n];\n\nconst generateAxiosImplementation = (\n {\n headers,\n queryParams,\n operationName,\n response,\n mutator,\n body,\n props,\n verb,\n override,\n formData,\n formUrlEncoded,\n paramsSerializer,\n }: GeneratorVerbOptions,\n { route, context }: GeneratorOptions,\n) => {\n const isRequestOptions = override.requestOptions !== false;\n const isFormData = !override.formData.disabled;\n const isFormUrlEncoded = override.formUrlEncoded !== false;\n const isExactOptionalPropertyTypes =\n !!context.output.tsconfig?.compilerOptions?.exactOptionalPropertyTypes;\n\n const isSyntheticDefaultImportsAllowed = isSyntheticDefaultImportsAllow(\n context.output.tsconfig,\n );\n\n const bodyForm = generateFormDataAndUrlEncodedFunction({\n formData,\n formUrlEncoded,\n body,\n isFormData,\n isFormUrlEncoded,\n });\n\n if (mutator) {\n const mutatorConfig = generateMutatorConfig({\n route,\n body,\n headers,\n queryParams,\n response,\n verb,\n isFormData,\n isFormUrlEncoded,\n hasSignal: false,\n isExactOptionalPropertyTypes,\n });\n\n const requestOptions = isRequestOptions\n ? generateMutatorRequestOptions(\n override.requestOptions,\n mutator.hasSecondArg,\n )\n : '';\n\n returnTypesToWrite.set(\n operationName,\n (title?: string) =>\n `export type ${pascal(\n operationName,\n )}Result = NonNullable<Awaited<ReturnType<${\n title\n ? `ReturnType<typeof ${title}>['${operationName}']`\n : `typeof ${operationName}`\n }>>>`,\n );\n\n const propsImplementation =\n mutator.bodyTypeName && body.definition\n ? toObjectString(props, 'implementation').replace(\n new RegExp(`(\\\\w*):\\\\s?${body.definition}`),\n `$1: ${mutator.bodyTypeName}<${body.definition}>`,\n )\n : toObjectString(props, 'implementation');\n\n return `const ${operationName} = (\\n ${propsImplementation}\\n ${\n isRequestOptions && mutator.hasSecondArg\n ? `options${context.output.optionsParamRequired ? '' : '?'}: SecondParameter<typeof ${mutator.name}<${response.definition.success || 'unknown'}>>,`\n : ''\n }) => {${bodyForm}\n return ${mutator.name}<${response.definition.success || 'unknown'}>(\n ${mutatorConfig},\n ${requestOptions});\n }\n `;\n }\n\n const options = generateOptions({\n route,\n body,\n headers,\n queryParams,\n response,\n verb,\n requestOptions: override.requestOptions,\n isFormData,\n isFormUrlEncoded,\n paramsSerializer,\n paramsSerializerOptions: override.paramsSerializerOptions,\n isExactOptionalPropertyTypes,\n hasSignal: false,\n });\n\n returnTypesToWrite.set(\n operationName,\n () =>\n `export type ${pascal(operationName)}Result = AxiosResponse<${\n response.definition.success || 'unknown'\n }>`,\n );\n\n return `const ${operationName} = <TData = AxiosResponse<${\n response.definition.success || 'unknown'\n }>>(\\n ${toObjectString(props, 'implementation')} ${\n isRequestOptions ? `options?: AxiosRequestConfig\\n` : ''\n } ): Promise<TData> => {${bodyForm}\n return axios${\n isSyntheticDefaultImportsAllowed ? '' : '.default'\n }.${verb}(${options});\n }\n`;\n};\n\nexport const generateAxiosTitle: ClientTitleBuilder = (title) => {\n const sanTitle = sanitize(title);\n return `get${pascal(sanTitle)}`;\n};\n\nexport const generateAxiosHeader: ClientHeaderBuilder = ({\n title,\n isRequestOptions,\n isMutator,\n noFunction,\n}) => `\n${\n isRequestOptions && isMutator\n ? `type SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\\n\\n`\n : ''\n}\n ${noFunction ? '' : `export const ${title} = () => {\\n`}`;\n\nexport const generateAxiosFooter: ClientFooterBuilder = ({\n operationNames,\n title,\n noFunction,\n hasMutator,\n hasAwaitedType,\n}) => {\n let footer = '';\n\n if (!noFunction) {\n footer += `return {${operationNames.join(',')}}};\\n`;\n }\n\n if (hasMutator && !hasAwaitedType) {\n footer += `\\ntype AwaitedInput<T> = PromiseLike<T> | T;\\n\n type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\\n`;\n }\n\n for (const operationName of operationNames) {\n if (returnTypesToWrite.has(operationName)) {\n // Map.has ensures Map.get will not return undefined, but TS still complains\n // bug https://github.com/microsoft/TypeScript/issues/13086\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const func = returnTypesToWrite.get(operationName)!;\n footer += func(noFunction ? undefined : title) + '\\n';\n }\n }\n\n return footer;\n};\n\nexport const generateAxios = (\n verbOptions: GeneratorVerbOptions,\n options: GeneratorOptions,\n) => {\n const imports = generateVerbImports(verbOptions);\n const implementation = generateAxiosImplementation(verbOptions, options);\n\n return { implementation, imports };\n};\n\nexport const generateAxiosFunctions: ClientBuilder = (verbOptions, options) => {\n const { implementation, imports } = generateAxios(verbOptions, options);\n\n return {\n implementation: 'export ' + implementation,\n imports,\n };\n};\n\nconst axiosClientBuilder: ClientGeneratorsBuilder = {\n client: generateAxios,\n header: generateAxiosHeader,\n dependencies: getAxiosDependencies,\n footer: generateAxiosFooter,\n title: generateAxiosTitle,\n};\n\nconst axiosFunctionsClientBuilder: ClientGeneratorsBuilder = {\n client: generateAxiosFunctions,\n header: (options) => generateAxiosHeader({ ...options, noFunction: true }),\n dependencies: getAxiosDependencies,\n footer: (options) => generateAxiosFooter({ ...options, noFunction: true }),\n title: generateAxiosTitle,\n};\n\nconst builders: Record<'axios' | 'axios-functions', ClientGeneratorsBuilder> = {\n axios: axiosClientBuilder,\n 'axios-functions': axiosFunctionsClientBuilder,\n};\n\nexport const builder =\n ({ type = 'axios-functions' }: { type?: 'axios' | 'axios-functions' } = {}) =>\n () =>\n builders[type];\n\nexport default builder;\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,33 +1,34 @@
1
1
  {
2
2
  "name": "@orval/axios",
3
- "version": "8.0.0-rc.0",
3
+ "version": "8.0.0-rc.2",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "exports": {
7
7
  "import": {
8
- "types": "./dist/index.d.ts",
9
- "import": "./dist/index.js"
8
+ "types": "./dist/index.d.mts",
9
+ "import": "./dist/index.mjs"
10
10
  }
11
11
  },
12
12
  "files": [
13
13
  "dist",
14
- "!dist/**/*.d.ts.map"
14
+ "!dist/**/*.d.ts.map",
15
+ "!dist/**/*.d.mts.map"
15
16
  ],
16
17
  "scripts": {
17
- "build": "tsdown --config-loader unconfig",
18
- "dev": "tsdown --config-loader unconfig --watch src",
18
+ "build": "tsdown --config-loader unrun",
19
+ "dev": "tsdown --config-loader unrun --watch src",
19
20
  "lint": "eslint .",
20
21
  "clean": "rimraf .turbo dist",
21
22
  "nuke": "rimraf .turbo dist node_modules"
22
23
  },
23
24
  "dependencies": {
24
- "@orval/core": "8.0.0-rc.0"
25
+ "@orval/core": "8.0.0-rc.2"
25
26
  },
26
27
  "devDependencies": {
27
- "eslint": "^9.38.0",
28
- "rimraf": "^6.0.1",
29
- "tsdown": "^0.15.9",
30
- "typescript": "^5.9.3"
28
+ "eslint": "9.39.1",
29
+ "rimraf": "6.1.0",
30
+ "tsdown": "0.16.4",
31
+ "typescript": "5.9.3"
31
32
  },
32
- "stableVersion": "7.15.0"
33
+ "stableVersion": "8.0.0-rc.1"
33
34
  }
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["AXIOS_DEPENDENCIES: GeneratorDependency[]","PARAMS_SERIALIZER_DEPENDENCIES: GeneratorDependency[]","getAxiosDependencies: ClientDependenciesBuilder","generateAxiosTitle: ClientTitleBuilder","generateAxiosHeader: ClientHeaderBuilder","generateAxiosFooter: ClientFooterBuilder","generateAxiosFunctions: ClientBuilder","axiosClientBuilder: ClientGeneratorsBuilder","axiosFunctionsClientBuilder: ClientGeneratorsBuilder","builders: Record<'axios' | 'axios-functions', ClientGeneratorsBuilder>"],"sources":["../src/index.ts"],"sourcesContent":["import {\n type ClientBuilder,\n type ClientDependenciesBuilder,\n type ClientFooterBuilder,\n type ClientGeneratorsBuilder,\n type ClientHeaderBuilder,\n type ClientTitleBuilder,\n generateFormDataAndUrlEncodedFunction,\n generateMutatorConfig,\n generateMutatorRequestOptions,\n generateOptions,\n generateVerbImports,\n type GeneratorDependency,\n type GeneratorOptions,\n type GeneratorVerbOptions,\n isSyntheticDefaultImportsAllow,\n pascal,\n sanitize,\n toObjectString,\n} from '@orval/core';\n\nconst AXIOS_DEPENDENCIES: GeneratorDependency[] = [\n {\n exports: [\n {\n name: 'axios',\n default: true,\n values: true,\n syntheticDefaultImport: true,\n },\n { name: 'AxiosRequestConfig' },\n { name: 'AxiosResponse' },\n ],\n dependency: 'axios',\n },\n];\n\nconst PARAMS_SERIALIZER_DEPENDENCIES: GeneratorDependency[] = [\n {\n exports: [\n {\n name: 'qs',\n default: true,\n values: true,\n syntheticDefaultImport: true,\n },\n ],\n dependency: 'qs',\n },\n];\n\nconst returnTypesToWrite = new Map<string, (title?: string) => string>();\n\nexport const getAxiosDependencies: ClientDependenciesBuilder = (\n hasGlobalMutator,\n hasParamsSerializerOptions: boolean,\n) => [\n ...(hasGlobalMutator ? [] : AXIOS_DEPENDENCIES),\n ...(hasParamsSerializerOptions ? PARAMS_SERIALIZER_DEPENDENCIES : []),\n];\n\nconst generateAxiosImplementation = (\n {\n headers,\n queryParams,\n operationName,\n response,\n mutator,\n body,\n props,\n verb,\n override,\n formData,\n formUrlEncoded,\n paramsSerializer,\n }: GeneratorVerbOptions,\n { route, context }: GeneratorOptions,\n) => {\n const isRequestOptions = override?.requestOptions !== false;\n const isFormData = !override?.formData.disabled;\n const isFormUrlEncoded = override?.formUrlEncoded !== false;\n const isExactOptionalPropertyTypes =\n !!context.output.tsconfig?.compilerOptions?.exactOptionalPropertyTypes;\n\n const isSyntheticDefaultImportsAllowed = isSyntheticDefaultImportsAllow(\n context.output.tsconfig,\n );\n\n const bodyForm = generateFormDataAndUrlEncodedFunction({\n formData,\n formUrlEncoded,\n body,\n isFormData,\n isFormUrlEncoded,\n });\n\n if (mutator) {\n const mutatorConfig = generateMutatorConfig({\n route,\n body,\n headers,\n queryParams,\n response,\n verb,\n isFormData,\n isFormUrlEncoded,\n hasSignal: false,\n isExactOptionalPropertyTypes,\n });\n\n const requestOptions = isRequestOptions\n ? generateMutatorRequestOptions(\n override?.requestOptions,\n mutator.hasSecondArg,\n )\n : '';\n\n returnTypesToWrite.set(\n operationName,\n (title?: string) =>\n `export type ${pascal(\n operationName,\n )}Result = NonNullable<Awaited<ReturnType<${\n title\n ? `ReturnType<typeof ${title}>['${operationName}']`\n : `typeof ${operationName}`\n }>>>`,\n );\n\n const propsImplementation =\n mutator.bodyTypeName && body.definition\n ? toObjectString(props, 'implementation').replace(\n new RegExp(`(\\\\w*):\\\\s?${body.definition}`),\n `$1: ${mutator.bodyTypeName}<${body.definition}>`,\n )\n : toObjectString(props, 'implementation');\n\n return `const ${operationName} = (\\n ${propsImplementation}\\n ${\n isRequestOptions && mutator.hasSecondArg\n ? `options${context.output.optionsParamRequired ? '' : '?'}: SecondParameter<typeof ${mutator.name}<${response.definition.success || 'unknown'}>>,`\n : ''\n }) => {${bodyForm}\n return ${mutator.name}<${response.definition.success || 'unknown'}>(\n ${mutatorConfig},\n ${requestOptions});\n }\n `;\n }\n\n const options = generateOptions({\n route,\n body,\n headers,\n queryParams,\n response,\n verb,\n requestOptions: override?.requestOptions,\n isFormData,\n isFormUrlEncoded,\n paramsSerializer,\n paramsSerializerOptions: override?.paramsSerializerOptions,\n isExactOptionalPropertyTypes,\n hasSignal: false,\n });\n\n returnTypesToWrite.set(\n operationName,\n () =>\n `export type ${pascal(operationName)}Result = AxiosResponse<${\n response.definition.success || 'unknown'\n }>`,\n );\n\n return `const ${operationName} = <TData = AxiosResponse<${\n response.definition.success || 'unknown'\n }>>(\\n ${toObjectString(props, 'implementation')} ${\n isRequestOptions ? `options?: AxiosRequestConfig\\n` : ''\n } ): Promise<TData> => {${bodyForm}\n return axios${\n isSyntheticDefaultImportsAllowed ? '' : '.default'\n }.${verb}(${options});\n }\n`;\n};\n\nexport const generateAxiosTitle: ClientTitleBuilder = (title) => {\n const sanTitle = sanitize(title);\n return `get${pascal(sanTitle)}`;\n};\n\nexport const generateAxiosHeader: ClientHeaderBuilder = ({\n title,\n isRequestOptions,\n isMutator,\n noFunction,\n}) => `\n${\n isRequestOptions && isMutator\n ? `type SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\\n\\n`\n : ''\n}\n ${noFunction ? '' : `export const ${title} = () => {\\n`}`;\n\nexport const generateAxiosFooter: ClientFooterBuilder = ({\n operationNames,\n title,\n noFunction,\n hasMutator,\n hasAwaitedType,\n}) => {\n let footer = '';\n\n if (!noFunction) {\n footer += `return {${operationNames.join(',')}}};\\n`;\n }\n\n if (hasMutator && !hasAwaitedType) {\n footer += `\\ntype AwaitedInput<T> = PromiseLike<T> | T;\\n\n type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\\n`;\n }\n\n for (const operationName of operationNames) {\n if (returnTypesToWrite.has(operationName)) {\n const func = returnTypesToWrite.get(operationName)!;\n footer += func(noFunction ? undefined : title) + '\\n';\n }\n }\n\n return footer;\n};\n\nexport const generateAxios = (\n verbOptions: GeneratorVerbOptions,\n options: GeneratorOptions,\n) => {\n const imports = generateVerbImports(verbOptions);\n const implementation = generateAxiosImplementation(verbOptions, options);\n\n return { implementation, imports };\n};\n\nexport const generateAxiosFunctions: ClientBuilder = async (\n verbOptions,\n options,\n) => {\n const { implementation, imports } = generateAxios(verbOptions, options);\n\n return {\n implementation: 'export ' + implementation,\n imports,\n };\n};\n\nconst axiosClientBuilder: ClientGeneratorsBuilder = {\n client: generateAxios,\n header: generateAxiosHeader,\n dependencies: getAxiosDependencies,\n footer: generateAxiosFooter,\n title: generateAxiosTitle,\n};\n\nconst axiosFunctionsClientBuilder: ClientGeneratorsBuilder = {\n client: generateAxiosFunctions,\n header: (options) => generateAxiosHeader({ ...options, noFunction: true }),\n dependencies: getAxiosDependencies,\n footer: (options) => generateAxiosFooter({ ...options, noFunction: true }),\n title: generateAxiosTitle,\n};\n\nconst builders: Record<'axios' | 'axios-functions', ClientGeneratorsBuilder> = {\n axios: axiosClientBuilder,\n 'axios-functions': axiosFunctionsClientBuilder,\n};\n\nexport const builder =\n ({ type = 'axios-functions' }: { type?: 'axios' | 'axios-functions' } = {}) =>\n () =>\n builders[type];\n\nexport default builder;\n"],"mappings":";;;AAqBA,MAAMA,qBAA4C,CAChD;CACE,SAAS;EACP;GACE,MAAM;GACN,SAAS;GACT,QAAQ;GACR,wBAAwB;GACzB;EACD,EAAE,MAAM,sBAAsB;EAC9B,EAAE,MAAM,iBAAiB;EAC1B;CACD,YAAY;CACb,CACF;AAED,MAAMC,iCAAwD,CAC5D;CACE,SAAS,CACP;EACE,MAAM;EACN,SAAS;EACT,QAAQ;EACR,wBAAwB;EACzB,CACF;CACD,YAAY;CACb,CACF;AAED,MAAM,qCAAqB,IAAI,KAAyC;AAExE,MAAaC,wBACX,kBACA,+BACG,CACH,GAAI,mBAAmB,EAAE,GAAG,oBAC5B,GAAI,6BAA6B,iCAAiC,EAAE,CACrE;AAED,MAAM,+BACJ,EACE,SACA,aACA,eACA,UACA,SACA,MACA,OACA,MACA,UACA,UACA,gBACA,oBAEF,EAAE,OAAO,cACN;CACH,MAAM,mBAAmB,UAAU,mBAAmB;CACtD,MAAM,aAAa,CAAC,UAAU,SAAS;CACvC,MAAM,mBAAmB,UAAU,mBAAmB;CACtD,MAAM,+BACJ,CAAC,CAAC,QAAQ,OAAO,UAAU,iBAAiB;CAE9C,MAAM,mCAAmC,+BACvC,QAAQ,OAAO,SAChB;CAED,MAAM,WAAW,sCAAsC;EACrD;EACA;EACA;EACA;EACA;EACD,CAAC;AAEF,KAAI,SAAS;EACX,MAAM,gBAAgB,sBAAsB;GAC1C;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA,WAAW;GACX;GACD,CAAC;EAEF,MAAM,iBAAiB,mBACnB,8BACE,UAAU,gBACV,QAAQ,aACT,GACD;AAEJ,qBAAmB,IACjB,gBACC,UACC,eAAe,OACb,cACD,CAAC,0CACA,QACI,qBAAqB,MAAM,KAAK,cAAc,MAC9C,UAAU,gBACf,KACJ;AAUD,SAAO,SAAS,cAAc,YAP5B,QAAQ,gBAAgB,KAAK,aACzB,eAAe,OAAO,iBAAiB,CAAC,wBACtC,IAAI,OAAO,cAAc,KAAK,aAAa,EAC3C,OAAO,QAAQ,aAAa,GAAG,KAAK,WAAW,GAChD,GACD,eAAe,OAAO,iBAAiB,CAEiB,KAC5D,oBAAoB,QAAQ,eACxB,UAAU,QAAQ,OAAO,uBAAuB,KAAK,IAAI,2BAA2B,QAAQ,KAAK,GAAG,SAAS,WAAW,WAAW,UAAU,OAC7I,GACL,QAAQ,SAAS;eACP,QAAQ,KAAK,GAAG,SAAS,WAAW,WAAW,UAAU;QAChE,cAAc;QACd,eAAe;;;;CAKrB,MAAM,UAAU,gBAAgB;EAC9B;EACA;EACA;EACA;EACA;EACA;EACA,gBAAgB,UAAU;EAC1B;EACA;EACA;EACA,yBAAyB,UAAU;EACnC;EACA,WAAW;EACZ,CAAC;AAEF,oBAAmB,IACjB,qBAEE,eAAe,OAAO,cAAc,CAAC,yBACnC,SAAS,WAAW,WAAW,UAChC,GACJ;AAED,QAAO,SAAS,cAAc,4BAC5B,SAAS,WAAW,WAAW,UAChC,WAAW,eAAe,OAAO,iBAAiB,CAAC,GAClD,mBAAmB,mCAAmC,GACvD,yBAAyB,SAAS;kBAE/B,mCAAmC,KAAK,WACzC,GAAG,KAAK,GAAG,QAAQ;;;;AAKxB,MAAaC,sBAA0C,UAAU;AAE/D,QAAO,MAAM,OADI,SAAS,MAAM,CACH;;AAG/B,MAAaC,uBAA4C,EACvD,OACA,kBACA,WACA,iBACI;EAEJ,oBAAoB,YAChB,wFACA,GACL;IACG,aAAa,KAAK,gBAAgB,MAAM;AAE5C,MAAaC,uBAA4C,EACvD,gBACA,OACA,YACA,YACA,qBACI;CACJ,IAAI,SAAS;AAEb,KAAI,CAAC,WACH,WAAU,WAAW,eAAe,KAAK,IAAI,CAAC;AAGhD,KAAI,cAAc,CAAC,eACjB,WAAU;;;AAKZ,MAAK,MAAM,iBAAiB,eAC1B,KAAI,mBAAmB,IAAI,cAAc,EAAE;EACzC,MAAM,OAAO,mBAAmB,IAAI,cAAc;AAClD,YAAU,KAAK,aAAa,SAAY,MAAM,GAAG;;AAIrD,QAAO;;AAGT,MAAa,iBACX,aACA,YACG;CACH,MAAM,UAAU,oBAAoB,YAAY;AAGhD,QAAO;EAAE,gBAFc,4BAA4B,aAAa,QAAQ;EAE/C;EAAS;;AAGpC,MAAaC,yBAAwC,OACnD,aACA,YACG;CACH,MAAM,EAAE,gBAAgB,YAAY,cAAc,aAAa,QAAQ;AAEvE,QAAO;EACL,gBAAgB,YAAY;EAC5B;EACD;;AAGH,MAAMC,qBAA8C;CAClD,QAAQ;CACR,QAAQ;CACR,cAAc;CACd,QAAQ;CACR,OAAO;CACR;AAED,MAAMC,8BAAuD;CAC3D,QAAQ;CACR,SAAS,YAAY,oBAAoB;EAAE,GAAG;EAAS,YAAY;EAAM,CAAC;CAC1E,cAAc;CACd,SAAS,YAAY,oBAAoB;EAAE,GAAG;EAAS,YAAY;EAAM,CAAC;CAC1E,OAAO;CACR;AAED,MAAMC,WAAyE;CAC7E,OAAO;CACP,mBAAmB;CACpB;AAED,MAAa,WACV,EAAE,OAAO,sBAA8D,EAAE,WAExE,SAAS;AAEb,kBAAe"}