@hey-api/openapi-ts 0.43.1 → 0.44.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/index.cjs CHANGED
@@ -13,25 +13,22 @@ const params = program
13
13
  .usage('[options]')
14
14
  .version(pkg.version)
15
15
  .option(
16
- '-i, --input <value>',
17
- 'OpenAPI specification (path, url, or string content)',
16
+ '--base [value]',
17
+ 'Manually set base in OpenAPI config instead of inferring from server value',
18
18
  )
19
- .option('-o, --output <value>', 'Output directory')
20
19
  .option(
21
20
  '-c, --client <value>',
22
21
  'HTTP client to generate [angular, axios, fetch, node, xhr]',
23
22
  )
24
23
  .option('-d, --debug', 'Run in debug mode?')
25
- .option(
26
- '--base [value]',
27
- 'Manually set base in OpenAPI config instead of inferring from server value',
28
- )
29
24
  .option('--dry-run [value]', 'Skip writing files to disk?')
30
- .option('--enums <value>', 'Export enum definitions (javascript, typescript)')
31
25
  .option('--exportCore [value]', 'Write core files to disk')
32
- .option('--format [value]', 'Process output folder with formatter?')
33
- .option('--lint [value]', 'Process output folder with linter?')
26
+ .option(
27
+ '-i, --input <value>',
28
+ 'OpenAPI specification (path, url, or string content)',
29
+ )
34
30
  .option('--name <value>', 'Custom client class name')
31
+ .option('-o, --output <value>', 'Output directory')
35
32
  .option('--request <value>', 'Path to custom request file')
36
33
  .option('--schemas [value]', 'Write schemas to disk')
37
34
  .option('--services [value]', 'Write services to disk')
@@ -71,8 +68,6 @@ async function start() {
71
68
  userConfig = processParams(params, [
72
69
  'dryRun',
73
70
  'exportCore',
74
- 'format',
75
- 'lint',
76
71
  'schemas',
77
72
  'services',
78
73
  'types',
@@ -1 +1 @@
1
- "use strict";var e=require("node:fs"),t=require("node:path"),n=require("c12"),r=require("child_process"),o=require("path"),s=require("fs"),a=require("os"),i=require("@apidevtools/json-schema-ref-parser"),l=require("typescript"),p="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function c(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var u,m,d,f,h,y={exports:{}};h="win32"===process.platform||p.TESTING_WINDOWS?function(){if(m)return u;m=1,u=n,n.sync=function(n,r){return t(e.statSync(n),n,r)};var e=s;function t(e,t,n){return!(!e.isSymbolicLink()&&!e.isFile())&&function(e,t){var n=void 0!==t.pathExt?t.pathExt:process.env.PATHEXT;if(!n)return!0;if(-1!==(n=n.split(";")).indexOf(""))return!0;for(var r=0;r<n.length;r++){var o=n[r].toLowerCase();if(o&&e.substr(-o.length).toLowerCase()===o)return!0}return!1}(t,n)}function n(n,r,o){e.stat(n,(function(e,s){o(e,!e&&t(s,n,r))}))}return u}():function(){if(f)return d;f=1,d=t,t.sync=function(t,r){return n(e.statSync(t),r)};var e=s;function t(t,r,o){e.stat(t,(function(e,t){o(e,!e&&n(t,r))}))}function n(e,t){return e.isFile()&&function(e,t){var n=e.mode,r=e.uid,o=e.gid,s=void 0!==t.uid?t.uid:process.getuid&&process.getuid(),a=void 0!==t.gid?t.gid:process.getgid&&process.getgid(),i=parseInt("100",8),l=parseInt("010",8);return n&parseInt("001",8)||n&l&&o===a||n&i&&r===s||n&(i|l)&&0===s}(e,t)}return d}();var g=v;function v(e,t,n){if("function"==typeof t&&(n=t,t={}),!n){if("function"!=typeof Promise)throw new TypeError("callback not provided");return new Promise((function(n,r){v(e,t||{},(function(e,t){e?r(e):n(t)}))}))}h(e,t||{},(function(e,r){e&&("EACCES"===e.code||t&&t.ignoreErrors)&&(e=null,r=!1),n(e,r)}))}v.sync=function(e,t){try{return h.sync(e,t||{})}catch(e){if(t&&t.ignoreErrors||"EACCES"===e.code)return!1;throw e}};const b="win32"===process.platform||"cygwin"===process.env.OSTYPE||"msys"===process.env.OSTYPE,x=o,R=b?";":":",P=g,O=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),q=(e,t)=>{const n=t.colon||R,r=e.match(/\//)||b&&e.match(/\\/)?[""]:[...b?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(n)],o=b?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=b?o.split(n):[""];return b&&-1!==e.indexOf(".")&&""!==s[0]&&s.unshift(""),{pathEnv:r,pathExt:s,pathExtExe:o}},w=(e,t,n)=>{"function"==typeof t&&(n=t,t={}),t||(t={});const{pathEnv:r,pathExt:o,pathExtExe:s}=q(e,t),a=[],i=n=>new Promise(((o,s)=>{if(n===r.length)return t.all&&a.length?o(a):s(O(e));const i=r[n],p=/^".*"$/.test(i)?i.slice(1,-1):i,c=x.join(p,e),u=!p&&/^\.[\\\/]/.test(e)?e.slice(0,2)+c:c;o(l(u,n,0))})),l=(e,n,r)=>new Promise(((p,c)=>{if(r===o.length)return p(i(n+1));const u=o[r];P(e+u,{pathExt:s},((o,s)=>{if(!o&&s){if(!t.all)return p(e+u);a.push(e+u)}return p(l(e,n,r+1))}))}));return n?i(0).then((e=>n(null,e)),n):i(0)};var A=w;w.sync=(e,t)=>{t=t||{};const{pathEnv:n,pathExt:r,pathExtExe:o}=q(e,t),s=[];for(let a=0;a<n.length;a++){const i=n[a],l=/^".*"$/.test(i)?i.slice(1,-1):i,p=x.join(l,e),c=!l&&/^\.[\\\/]/.test(e)?e.slice(0,2)+p:p;for(let e=0;e<r.length;e++){const n=c+r[e];try{if(P.sync(n,{pathExt:o})){if(!t.all)return n;s.push(n)}}catch(e){}}}if(t.all&&s.length)return s;if(t.nothrow)return null;throw O(e)};var k={exports:{}};const E=(e={})=>{const t=e.env||process.env;return"win32"!==(e.platform||process.platform)?"PATH":Object.keys(t).reverse().find((e=>"PATH"===e.toUpperCase()))||"Path"};k.exports=E,k.exports.default=E;var C=k.exports;const T=o,$=A,I=C;function S(e,t){const n=e.options.env||process.env,r=process.cwd(),o=null!=e.options.cwd,s=o&&void 0!==process.chdir&&!process.chdir.disabled;if(s)try{process.chdir(e.options.cwd)}catch(e){}let a;try{a=$.sync(e.command,{path:n[I({env:n})],pathExt:t?T.delimiter:void 0})}catch(e){}finally{s&&process.chdir(r)}return a&&(a=T.resolve(o?e.options.cwd:"",a)),a}var H=function(e){return S(e)||S(e,!0)},_={};const D=/([()\][%!^"`<>&|;, *?])/g;_.command=function(e){return e=e.replace(D,"^$1")},_.argument=function(e,t){return e=(e=`"${e=(e=(e=`${e}`).replace(/(\\*)"/g,'$1$1\\"')).replace(/(\\*)$/,"$1$1")}"`).replace(D,"^$1"),t&&(e=e.replace(D,"^$1")),e};const N=/^#!(.*)/;const j=s,M=(e="")=>{const t=e.match(N);if(!t)return null;const[n,r]=t[0].replace(/#! ?/,"").split(" "),o=n.split("/").pop();return"env"===o?r:r?`${o} ${r}`:o};const L=o,B=H,F=_,W=function(e){const t=Buffer.alloc(150);let n;try{n=j.openSync(e,"r"),j.readSync(n,t,0,150,0),j.closeSync(n)}catch(e){}return M(t.toString())},U="win32"===process.platform,V=/\.(?:com|exe)$/i,K=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Q(e){if(!U)return e;const t=function(e){e.file=B(e);const t=e.file&&W(e.file);return t?(e.args.unshift(e.file),e.command=t,B(e)):e.file}(e),n=!V.test(t);if(e.options.forceShell||n){const n=K.test(t);e.command=L.normalize(e.command),e.command=F.command(e.command),e.args=e.args.map((e=>F.argument(e,n)));const r=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${r}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}var J=function(e,t,n){t&&!Array.isArray(t)&&(n=t,t=null);const r={command:e,args:t=t?t.slice(0):[],options:n=Object.assign({},n),file:void 0,original:{command:e,args:t}};return n.shell?r:Q(r)};const z="win32"===process.platform;function G(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function X(e,t){return z&&1===e&&!t.file?G(t.original,"spawn"):null}var Y={hookChildProcess:function(e,t){if(!z)return;const n=e.emit;e.emit=function(r,o){if("exit"===r){const r=X(o,t);if(r)return n.call(e,"error",r)}return n.apply(e,arguments)}},verifyENOENT:X,verifyENOENTSync:function(e,t){return z&&1===e&&!t.file?G(t.original,"spawnSync"):null},notFoundError:G};const Z=r,ee=J,te=Y;function ne(e,t,n){const r=ee(e,t,n),o=Z.spawn(r.command,r.args,r.options);return te.hookChildProcess(o,r),o}y.exports=ne,y.exports.spawn=ne;var re=y.exports.sync=function(e,t,n){const r=ee(e,t,n),o=Z.spawnSync(r.command,r.args,r.options);return o.error=o.error||te.verifyENOENTSync(o.status,r),o};y.exports._parse=ee,y.exports._enoent=te;const oe=/[\p{Lu}]/u,se=/[\p{Ll}]/u,ae=/^[\p{Lu}](?![\p{Lu}])/gu,ie=/([\p{Alpha}\p{N}_]|$)/u,le=/[_.\- ]+/,pe=new RegExp("^"+le.source),ce=new RegExp(le.source+ie.source,"gu"),ue=new RegExp("\\d+"+ie.source,"gu");function me(e,t){if("string"!=typeof e&&!Array.isArray(e))throw new TypeError("Expected the input to be `string | string[]`");if(t={pascalCase:!1,preserveConsecutiveUppercase:!1,...t},0===(e=Array.isArray(e)?e.map((e=>e.trim())).filter((e=>e.length)).join("-"):e.trim()).length)return"";const n=!1===t.locale?e=>e.toLowerCase():e=>e.toLocaleLowerCase(t.locale),r=!1===t.locale?e=>e.toUpperCase():e=>e.toLocaleUpperCase(t.locale);if(1===e.length)return le.test(e)?"":t.pascalCase?r(e):n(e);return e!==n(e)&&(e=((e,t,n,r)=>{let o=!1,s=!1,a=!1,i=!1;for(let l=0;l<e.length;l++){const p=e[l];i=!(l>2)||"-"===e[l-3],o&&oe.test(p)?(e=e.slice(0,l)+"-"+e.slice(l),o=!1,a=s,s=!0,l++):s&&a&&se.test(p)&&(!i||r)?(e=e.slice(0,l-1)+"-"+e.slice(l-1),a=s,s=!1,o=!0):(o=t(p)===p&&n(p)!==p,a=s,s=n(p)===p&&t(p)!==p)}return e})(e,n,r,t.preserveConsecutiveUppercase)),e=e.replace(pe,""),e=t.preserveConsecutiveUppercase?((e,t)=>(ae.lastIndex=0,e.replaceAll(ae,(e=>t(e)))))(e,n):n(e),t.pascalCase&&(e=r(e.charAt(0))+e.slice(1)),((e,t)=>(ce.lastIndex=0,ue.lastIndex=0,e.replaceAll(ue,((n,r,o)=>["_","-"].includes(e.charAt(o+n.length))?n:t(n))).replaceAll(ce,((e,n)=>t(n)))))(e,r)}const de=e=>e.replace(/^[^$_\p{ID_Start}]+/u,"").replace(/[^$\u200c\u200d\p{ID_Continue}]/gu,"_"),fe=e=>e.replace(/^[^\p{ID_Start}]+/u,"").replace(/[^$\u200c\u200d\p{ID_Continue}]/gu,"-").replace(/\$/g,"-");function he(e="1.0"){return String(e).replace(/^v/gi,"")}const ye=e=>me(fe(e).trim(),{pascalCase:!0}),ge=/^(arguments|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|eval|export|extends|false|finally|for|function|if|implements|import|in|instanceof|interface|let|new|null|package|private|protected|public|return|static|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)$/g,ve=e=>xe(e).includes("null"),be=e=>!0===e.nullable||ve(e),xe=({type:e})=>Array.isArray(e)?e:e?[e]:[],Re=e=>e.trim().replace(/^#\/definitions\//,"").replace(/^#\/parameters\//,"").replace(/^#\/responses\//,"").replace(/^#\/securityDefinitions\//,"").replace(/^#\/components\/schemas\//,"").replace(/^#\/components\/responses\//,"").replace(/^#\/components\/parameters\//,"").replace(/^#\/components\/examples\//,"").replace(/^#\/components\/requestBodies\//,"").replace(/^#\/components\/headers\//,"").replace(/^#\/components\/securitySchemes\//,"").replace(/^#\/components\/links\//,"").replace(/^#\/components\/callbacks\//,""),Pe=(e,t)=>{if("binary"===t)return"binary";switch(e){case"any":case"object":return"unknown";case"array":return"unknown[]";case"boolean":return"boolean";case"byte":case"double":case"float":case"int":case"integer":case"long":case"number":case"short":return"number";case"char":case"date":case"date-time":case"password":case"string":return"string";case"file":return"binary";case"null":return"null";case"void":return"void"}},Oe=(e="unknown",t)=>{const n={$refs:[],base:"unknown",imports:[],isNullable:!1,template:null,type:"unknown"};if(Array.isArray(e)){const r=e.filter((e=>"null"!==e)).map((e=>Pe(e,t))).filter(Boolean).join(" | ");return n.type=r,n.base=r,n.isNullable=ve({type:e}),n}const r=Pe(e,t);if(r)return n.type=r,n.base=r,n;const o=decodeURIComponent(Re(e));if(/\[.*\]$/g.test(o)){const e=o.match(/(.*?)\[(.*)\]$/);if(e?.length){const t=Oe(de(e[1])),r=Oe(de(e[2]));return"unknown[]"===t.type?(n.type=`${r.type}[]`,n.base=`${r.type}`,t.$refs=[],t.imports=[]):r.type?(n.type=`${t.type}<${r.type}>`,n.base=t.type,n.template=r.type):(n.type=t.type,n.base=t.type,n.template=t.type),n.$refs=[...n.$refs,...t.$refs,...r.$refs],n.imports=[...n.imports,...t.imports,...r.imports],n}}if(o){let t=de(o);return e.startsWith("#/components/parameters/")&&(t=`Parameter${t}`),n.type=t,n.base=t,e.startsWith("#")&&(n.$refs=[...n.$refs,e]),n.imports=[...n.imports,t],n}return n};function qe(e,t,n){return n.indexOf(e)===t}const we=(e,t)=>{if(!Array.isArray(t))return[];const n=(e["x-enum-descriptions"]??[]).filter((e=>"string"==typeof e)),r=(e["x-enum-varnames"]??e["x-enumNames"]??[]).filter((e=>"string"==typeof e));return t.filter(qe).filter((e=>"number"==typeof e||"string"==typeof e)).map(((e,t)=>({customDescription:n[t],customName:r[t],description:void 0,value:e})))},Ae=e=>e?.replace(/\\/g,"\\\\").replace(/'/g,"\\'"),ke=/^[$_\p{ID_Start}][$\u200c\u200d\p{ID_Continue}]*$/u,Ee=e=>{if(e||""===e){if(!ke.test(e))return`'${e}'`}return e},Ce=e=>e&&e.startsWith("'")&&e.endsWith("'")?e.slice(1,e.length-1):e,Te=e=>e.replace(/\*\//g,"*").replace(/\/\*/g,"*").replace(/\r?\n(.*)/g,((e,t)=>a.EOL+t.trim())),$e=(e,t,n)=>{const r=[];return Object.entries(t.properties??{}).forEach((([o,s])=>{const a=!!t.required?.includes(o);if(s.$ref){const e=Oe(s.$ref);r.push({$refs:[],base:e.base,description:s.description||null,enum:[],enums:[],exclusiveMaximum:s.exclusiveMaximum,exclusiveMinimum:s.exclusiveMinimum,export:"reference",format:s.format,imports:e.imports,isDefinition:!1,isNullable:!0===s["x-nullable"],isReadOnly:!0===s.readOnly,isRequired:a,link:null,maxItems:s.maxItems,maxLength:s.maxLength,maxProperties:s.maxProperties,maximum:s.maximum,minItems:s.minItems,minLength:s.minLength,minProperties:s.minProperties,minimum:s.minimum,multipleOf:s.multipleOf,name:Ee(o),pattern:Ae(s.pattern),properties:[],template:e.template,type:e.type,uniqueItems:s.uniqueItems})}else{const t=n(e,s);r.push({$refs:[],base:t.base,description:s.description||null,enum:t.enum,enums:t.enums,exclusiveMaximum:s.exclusiveMaximum,exclusiveMinimum:s.exclusiveMinimum,export:t.export,format:s.format,imports:t.imports,isDefinition:!1,isNullable:!0===s["x-nullable"],isReadOnly:!0===s.readOnly,isRequired:a,link:t.link,maxItems:s.maxItems,maxLength:s.maxLength,maxProperties:s.maxProperties,maximum:s.maximum,minItems:s.minItems,minLength:s.minLength,minProperties:s.minProperties,minimum:s.minimum,multipleOf:s.multipleOf,name:Ee(o),pattern:Ae(s.pattern),properties:t.properties,template:t.template,type:t.type,uniqueItems:s.uniqueItems})}})),r},Ie=/~1/g,Se=/~0/g;function He(e,t){if(t.$ref){const n=t.$ref.replace(/^#/g,"").split("/").filter((e=>e));let r=e;return n.forEach((e=>{const n=decodeURIComponent(e.replace(Ie,"/").replace(Se,"~"));if(!r.hasOwnProperty(n))throw new Error(`Could not find reference: "${t.$ref}"`);r=r[n]})),r}return t}const _e=(e,t,n,r,o)=>{const s={$refs:[],enums:[],export:r,imports:[],properties:[]},a=[];if(n.map((t=>o(e,t))).filter((e=>{const t=e.properties.length,n=e.enums.length;return!("unknown"===e.type&&!t&&!n)})).forEach((e=>{s.imports.push(...e.imports),s.enums.push(...e.enums),s.properties.push(e)})),t.required){const r=((e,t,n,r)=>n.reduce(((t,n)=>{if(n.$ref){const o=He(e,n);return[...t,...r(e,o).properties]}return[...t,...r(e,n).properties]}),[]).filter((e=>!e.isRequired&&t.includes(e.name))).map((e=>({...e,isRequired:!0}))))(e,t.required,n,o);r.forEach((e=>{s.imports.push(...e.imports),s.enums.push(...e.enums)})),a.push(...r)}if(t.properties){const n=$e(e,t,o);n.forEach((e=>{s.imports.push(...e.imports),s.enums.push(...e.enums),"enum"===e.export&&s.enums.push(e)})),a.push(...n)}return a.length&&s.properties.push({$refs:[],base:"unknown",description:"",enum:[],enums:[],export:"interface",imports:[],isDefinition:!1,isNullable:!1,isReadOnly:!1,isRequired:!1,link:null,name:"properties",properties:a,template:null,type:"unknown"}),s},De=(e,t,n=!1,r="")=>{const o={$refs:[],base:"unknown",description:t.description||null,enum:[],enums:[],exclusiveMaximum:t.exclusiveMaximum,exclusiveMinimum:t.exclusiveMinimum,export:"interface",format:t.format,imports:[],isDefinition:n,isNullable:!0===t["x-nullable"],isReadOnly:!0===t.readOnly,isRequired:!1,link:null,maxItems:t.maxItems,maxLength:t.maxLength,maxProperties:t.maxProperties,maximum:t.maximum,minItems:t.minItems,minLength:t.minLength,minProperties:t.minProperties,minimum:t.minimum,multipleOf:t.multipleOf,name:r,pattern:Ae(t.pattern),properties:[],template:null,type:"unknown",uniqueItems:t.uniqueItems};if(t.$ref){const e=Oe(t.$ref);return o.export="reference",o.type=e.type,o.base=e.base,o.template=e.template,o.imports.push(...e.imports),o}if(t.enum&&"boolean"!==t.type){const e=we(t,t.enum);if(e.length)return o.base="string",o.enum=[...o.enum,...e],o.export="enum",o.type="string",o}if("array"===t.type&&t.items){if(t.items.$ref){const e=Oe(t.items.$ref);return o.export="array",o.type=e.type,o.base=e.base,o.template=e.template,o.imports.push(...e.imports),o}{const n=De(e,t.items);return o.export="array",o.type=n.type,o.base=n.base,o.template=n.template,o.link=n,o.imports.push(...n.imports),o}}if("object"===t.type&&"object"==typeof t.additionalProperties){if(t.additionalProperties.$ref){const e=Oe(t.additionalProperties.$ref);return o.export="dictionary",o.type=e.type,o.base=e.base,o.template=e.template,o.imports.push(...e.imports),o}{const n=De(e,t.additionalProperties);return o.export="dictionary",o.type=n.type,o.base=n.base,o.template=n.template,o.link=n,o.imports.push(...n.imports),o}}if(t.allOf?.length){const n=_e(e,t,t.allOf,"all-of",De);return o.export=n.export,o.imports.push(...n.imports),o.properties.push(...n.properties),o.enums=[...o.enums,...n.enums],o}if("object"===t.type){if(o.export="interface",o.type="unknown",o.base="unknown",t.properties){$e(e,t,De).forEach((e=>{o.imports.push(...e.imports),o.enums=[...o.enums,...e.enums],o.properties.push(e),"enum"===e.export&&(o.enums=[...o.enums,e])}))}return o}if(t.type){const e=Oe(t.type,t.format);return o.export="generic",o.type=e.type,o.base=e.base,o.template=e.template,o.imports.push(...e.imports),o}return o},Ne=(e,t)=>{const n=e.type===t.type&&e.base===t.base&&e.template===t.template;return n&&e.link&&t.link?Ne(e.link,t.link):n},je=e=>{const t=[];return e.forEach((e=>{const{code:n}=e;n&&("default"===n||n>=200&&n<300)&&t.push(e)})),t.filter(((e,t,n)=>n.findIndex((t=>Ne(t,e)))===t))};let Me;const Le=()=>Me,Be=(e,t,n)=>{if(Le().services.operationId&&n)return me(fe(n).trim());return me(`${t}-${e.replace(/[^/]*?{api-version}.*?\//g,"").replace(/{(.*?)}/g,"by-$1").replace(/\//g,"-")}`)},Fe=e=>me((e=>{const t=e.replace("[]","Array");return fe(t)})(e).trim()).replace(ge,"_$1"),We=e=>{const t=e.find((e=>"header"===e.in));return t?t.name:null},Ue=e=>{if("default"===e)return"default";if(/[0-9]+/g.test(e)){const t=Number.parseInt(e);if(Number.isInteger(t))return Math.abs(t)}return null},Ve=e=>e.filter((({code:e,description:t})=>"number"==typeof e&&e>=300&&t));function Ke(e){return e.sort(((e,t)=>{const n=e.isRequired&&void 0===e.default,r=t.isRequired&&void 0===t.default;return n&&!r?-1:r&&!n?1:0}))}const Qe=(e,t)=>{if(void 0===e.default||null===e.default)return e.default;switch(xe(e).find((e=>"null"!==e))||typeof e.default){case"int":case"integer":case"number":if("enum"===t?.export&&t.enum?.[e.default]){const{value:n}=t.enum[e.default];return n}return e.default;case"string":case"array":case"boolean":case"object":return e.default}},Je=(e,t)=>{const n={$refs:[],imports:[],parameters:[],parametersBody:null,parametersCookie:[],parametersForm:[],parametersHeader:[],parametersPath:[],parametersQuery:[]};return t.forEach((t=>{const r=He(e,t),o=((e,t)=>{const n={$refs:[],base:"unknown",description:t.description||null,enum:[],enums:[],exclusiveMaximum:t.exclusiveMaximum,exclusiveMinimum:t.exclusiveMinimum,export:"interface",format:t.format,imports:[],in:t.in,isDefinition:!1,isNullable:!0===t["x-nullable"],isReadOnly:!1,isRequired:!0===t.required,link:null,maxItems:t.maxItems,maxLength:t.maxLength,maximum:t.maximum,mediaType:null,minItems:t.minItems,minLength:t.minLength,minimum:t.minimum,multipleOf:t.multipleOf,name:Fe(t.name),pattern:Ae(t.pattern),prop:t.name,properties:[],template:null,type:"unknown",uniqueItems:t.uniqueItems};if(t.$ref){const e=Oe(t.$ref);return n.export="reference",n.type=e.type,n.base=e.base,n.template=e.template,n.imports.push(...e.imports),n.default=Qe(t,n),n}if(t.enum){const e=we(t,t.enum);if(e.length)return n.base="string",n.enum.push(...e),n.export="enum",n.type="string",n.default=Qe(t,n),n}if("array"===t.type&&t.items){const e=Oe(t.items.type,t.items.format);return n.export="array",n.type=e.type,n.base=e.base,n.template=e.template,n.imports.push(...e.imports),n.default=Qe(t,n),n}if("object"===t.type&&t.items){const e=Oe(t.items.type,t.items.format);return n.export="dictionary",n.type=e.type,n.base=e.base,n.template=e.template,n.imports.push(...e.imports),n.default=Qe(t,n),n}let r=t.schema;if(r){if(r.$ref?.startsWith("#/parameters/")&&(r=He(e,r)),r.$ref){const e=Oe(r.$ref);return n.export="reference",n.type=e.type,n.base=e.base,n.template=e.template,n.imports.push(...e.imports),n.default=Qe(t,n),n}{const o=De(e,r);return n.export=o.export,n.type=o.type,n.base=o.base,n.template=o.template,n.link=o.link,n.imports.push(...o.imports),n.enum.push(...o.enum),n.enums.push(...o.enums),n.properties.push(...o.properties),n.default=Qe(t,n),n}}if(t.type){const e=Oe(t.type,t.format);return n.export="generic",n.type=e.type,n.base=e.base,n.template=e.template,n.imports.push(...e.imports),n.default=Qe(t,n),n}return n})(e,r);if("api-version"!==o.prop)switch(o.in){case"path":n.parametersPath.push(o),n.parameters.push(o),n.imports.push(...o.imports);break;case"query":n.parametersQuery.push(o),n.parameters.push(o),n.imports.push(...o.imports);break;case"header":n.parametersHeader.push(o),n.parameters.push(o),n.imports.push(...o.imports);break;case"formData":n.parametersForm.push(o),n.parameters.push(o),n.imports.push(...o.imports);break;case"body":n.parametersBody=o,n.parameters.push(o),n.imports.push(...o.imports)}})),n},ze=(e,t)=>{const n=[];return Object.entries(t).forEach((([t,r])=>{const o=He(e,r),s=Ue(t);if(s){const t=((e,t,n)=>{const r={$refs:[],base:204!==n?"unknown":"void",code:n,description:t.description||null,enum:[],enums:[],export:"generic",imports:[],in:"response",isDefinition:!1,isNullable:!1,isReadOnly:!1,isRequired:!1,link:null,name:"",properties:[],template:null,type:204!==n?"unknown":"void"};let o=t.schema;if(o){if(o.$ref?.startsWith("#/responses/")&&(o=He(e,o)),o.$ref){const e=Oe(o.$ref);return r.export="reference",r.type=e.type,r.base=e.base,r.template=e.template,r.imports.push(...e.imports),r}{const t=De(e,o);return r.export=t.export,r.type=t.type,r.base=t.base,r.template=t.template,r.link=t.link,r.isReadOnly=t.isReadOnly,r.isRequired=t.isRequired,r.isNullable=t.isNullable,r.format=t.format,r.maximum=t.maximum,r.exclusiveMaximum=t.exclusiveMaximum,r.minimum=t.minimum,r.exclusiveMinimum=t.exclusiveMinimum,r.multipleOf=t.multipleOf,r.maxLength=t.maxLength,r.minLength=t.minLength,r.maxItems=t.maxItems,r.minItems=t.minItems,r.uniqueItems=t.uniqueItems,r.maxProperties=t.maxProperties,r.minProperties=t.minProperties,r.pattern=Ae(t.pattern),r.imports.push(...t.imports),r.enum.push(...t.enum),r.enums.push(...t.enums),r.properties.push(...t.properties),r}}return Object.keys(t.headers??{}).forEach((e=>(r.in="header",r.name=e,r.type="string",r.base="string",r))),r})(e,o,s);n.push(t)}})),n.sort(((e,t)=>e.code<t.code?-1:e.code>t.code?1:0))},Ge=e=>{const t=new Map;return Object.entries(e.paths).forEach((([n,r])=>{const o=Je(e,r.parameters||[]);Object.keys(r).forEach((s=>{switch(s){case"get":case"put":case"post":case"delete":case"options":case"head":case"patch":{const a=r[s];(a.tags?.length?a.tags.filter(qe):["Default"]).forEach((r=>{const i=((e,t,n,r,o,s)=>{const a=ye(r),i=Be(t,n,o.operationId),l={$refs:[],deprecated:!0===o.deprecated,description:o.description||null,errors:[],imports:[],method:n.toUpperCase(),name:i,parameters:[...s.parameters],parametersBody:s.parametersBody,parametersCookie:[...s.parametersCookie],parametersForm:[...s.parametersForm],parametersHeader:[...s.parametersHeader],parametersPath:[...s.parametersPath],parametersQuery:[...s.parametersQuery],path:t,responseHeader:null,results:[],service:a,summary:o.summary||null};if(o.parameters){const t=Je(e,o.parameters);l.imports.push(...t.imports),l.parameters.push(...t.parameters),l.parametersPath.push(...t.parametersPath),l.parametersQuery.push(...t.parametersQuery),l.parametersForm.push(...t.parametersForm),l.parametersHeader.push(...t.parametersHeader),l.parametersCookie.push(...t.parametersCookie),l.parametersBody=t.parametersBody}if(o.responses){const t=ze(e,o.responses),n=je(t);l.errors=Ve(t),l.responseHeader=We(n),n.forEach((e=>{l.results.push(e),l.imports.push(...e.imports)}))}return l.parameters=Ke(l.parameters),l})(e,n,s,r,a,o),l=t.get(i.service)||{$refs:[],imports:[],name:i.service,operations:[]};l.operations.push(i),l.imports.push(...i.imports),t.set(i.service,l)}));break}}}))})),Array.from(t.values())},Xe=e=>{const t=he(e.info.version),n=(e=>{const t=e.schemes?.[0]||"http",n=e.host,r=e.basePath||"";return(n?`${t}://${n}${r}`:r).replace(/\/$/g,"")})(e),r=(e=>{let t=[];return Object.entries(e.definitions??{}).forEach((([n,r])=>{const o=Oe(n),s=De(e,r,!0,o.base.replace(ge,"_$1"));t=[...t,s]})),t})(e);return{enumNames:[],models:r,server:n,serviceTypes:[],services:Ge(e),version:t}},Ye=(e,t)=>{if(e.mapping){const n=(e=>{const t={};for(const n in e)t[e[n]]=n;return t})(e.mapping),r=Object.keys(n).find((e=>Re(e)==t.name));if(r&&n[r])return n[r]}return t.name},Ze=(e,t,n,r)=>{const o="object"==typeof t.additionalProperties?t.additionalProperties:{},s=n(e,o);if(o.$ref){const e=Oe(o.$ref);return r.base=e.base,r.default=Qe(t,r),r.export="dictionary",r.imports.push(...e.imports),r.template=e.template,r.type=e.type,r}if(t.additionalProperties&&t.properties){const e=["object"==typeof t.additionalProperties&&t.additionalProperties.type&&!Array.isArray(t.additionalProperties.type)?t.additionalProperties.type:s.base,...r.properties.map((e=>e.base))];return s.base=e.filter(qe).join(" | "),s.default=Qe(t,r),s.export="generic",s.isRequired=!0===t.additionalProperties,s.name="[key: string]",s}return r.base=s.base,r.default=Qe(t,r),r.export="dictionary",r.imports.push(...s.imports),r.link=s,r.template=s.template,r.type=s.type,r},et=(e,t,n,r)=>{const o=[],s=((e,t)=>{if(e.components&&t)for(const n in e.components.schemas)if(e.components.schemas.hasOwnProperty(n)){const r=e.components.schemas[n];if(r.discriminator&&r.oneOf?.length&&r.oneOf.some((e=>e.$ref&&Re(e.$ref)==t.name)))return r.discriminator}})(e,r);return Object.entries(t.properties??{}).forEach((([a,i])=>{const l=!!t.required?.includes(a),p={default:i.default,deprecated:!0===i.deprecated,description:i.description||null,exclusiveMaximum:i.exclusiveMaximum,exclusiveMinimum:i.exclusiveMinimum,format:i.format,isDefinition:!1,isReadOnly:!0===i.readOnly,isRequired:l,maxItems:i.maxItems,maxLength:i.maxLength,maxProperties:i.maxProperties,maximum:i.maximum,minItems:i.minItems,minLength:i.minLength,minProperties:i.minProperties,minimum:i.minimum,multipleOf:i.multipleOf,name:Ee(a),pattern:Ae(i.pattern),uniqueItems:i.uniqueItems};if(r&&s?.propertyName==a)o.push({...p,$refs:[],base:`'${Ye(s,r)}'`,enum:[],enums:[],export:"reference",imports:[],isNullable:be(i),link:null,properties:[],template:null,type:"string"});else if(i.$ref){const e=Oe(i.$ref);o.push({...p,$refs:e.$refs,base:e.base,enum:[],enums:[],export:"reference",imports:e.imports,isNullable:e.isNullable||be(i),link:null,properties:[],template:e.template,type:e.type})}else{const t=n(e,i);o.push({...p,$refs:t.$refs,base:t.base,default:t.default,enum:t.enum,enums:t.enums,export:t.export,imports:t.imports,isNullable:t.isNullable||be(i),link:t.link,properties:t.properties,template:t.template,type:t.type})}})),o},tt=e=>[{definitions:e.allOf,type:"all-of"},{definitions:e.anyOf,type:"any-of"},{definitions:e.oneOf,type:"one-of"}].find((e=>e.definitions?.length)),nt=({definition:e,definitions:t,getModel:n,model:r,openApi:o,type:s})=>{const a={$refs:r.$refs,enums:r.enums,export:s,imports:r.imports,properties:r.properties},i=[];if(t.map((t=>n(o,t,void 0,void 0,e))).forEach((e=>{a.$refs=[...a.$refs,...e.$refs],a.imports=[...a.imports,...e.imports],a.enums.push(...e.enums),a.properties.push(e)})),e.required){const r=((e,t,n,r)=>n.reduce(((t,n)=>{if(n.$ref){const o=He(e,n);return[...t,...r(e,o).properties]}return[...t,...r(e,n).properties]}),[]).filter((e=>!e.isRequired&&t.includes(e.name))).map((e=>({...e,isRequired:!0}))))(o,e.required,t,n);r.forEach((e=>{a.$refs=[...a.$refs,...e.$refs],a.imports=[...a.imports,...e.imports],a.enums.push(...e.enums)})),i.push(...r)}if(e.properties){const t=et(o,e,n);t.forEach((e=>{a.$refs=[...a.$refs,...e.$refs],a.imports=[...a.imports,...e.imports],a.enums.push(...e.enums),"enum"===e.export&&a.enums.push(e)})),i.push(...t)}if(i.length){const t=tt(e);"one-of"===t?.type?a.properties.forEach((e=>{e.properties.push(...i)})):a.properties.push({$refs:[],base:"unknown",description:"",enum:[],enums:[],export:"interface",imports:[],isDefinition:!1,isNullable:!1,isReadOnly:!1,isRequired:!1,link:null,name:"properties",properties:i,template:null,type:"unknown"})}return a},rt=(e,t,n=!1,r="",o=null)=>{const s=xe(t),a=((e,t)=>{if(e.enum&&!t.includes("boolean"))return"enum"})(t,s),i={$refs:[],base:"unknown",deprecated:Boolean(t.deprecated),description:t.description||null,enum:[],enums:[],exclusiveMaximum:t.exclusiveMaximum,exclusiveMinimum:t.exclusiveMinimum,export:"interface",format:t.format,imports:[],isDefinition:n,isNullable:be(t),isReadOnly:!0===t.readOnly,isRequired:!1,link:null,maxItems:t.maxItems,maxLength:t.maxLength,maxProperties:t.maxProperties,maximum:t.maximum,minItems:t.minItems,minLength:t.minLength,minProperties:t.minProperties,minimum:t.minimum,multipleOf:t.multipleOf,name:r,pattern:Ae(t.pattern),properties:[],template:null,type:"unknown",uniqueItems:t.uniqueItems};if(t.$ref){const e=Oe(t.$ref);return i.$refs=[...i.$refs,t.$ref],i.base=e.base,i.export="reference",i.imports=[...i.imports,...e.imports],i.template=e.template,i.type=e.type,i.default=Qe(t,i),i}if("enum"===a){const e=we(t,t.enum);if(e.length)return i.base="string",i.enum=[...i.enum,...e],i.export="enum",i.type="string",i.default=Qe(t,i),i}if(s.includes("array")&&t.items){if(t.items.$ref){const e=Oe(t.items.$ref);return i.$refs=[...i.$refs,t.items.$ref],i.base=e.base,i.export="array",i.imports=[...i.imports,...e.imports],i.template=e.template,i.type=e.type,i.default=Qe(t,i),i}if(t.items.anyOf&&o&&o.type){const n=tt(o);if(n&&n.definitions.some((e=>!xe(e).includes("array"))))return rt(e,t.items)}const n=Array.isArray(t.items)?{anyOf:t.items}:t.items,r=rt(e,n);return i.base=r.base,i.export="array",i.$refs=[...i.$refs,...r.$refs],i.imports=[...i.imports,...r.imports],i.link=r,i.template=r.template,i.type=r.type,i.default=Qe(t,i),i}const l=tt(t);if(l){const n=nt({...l,definition:t,getModel:rt,model:i,openApi:e});return{...i,...n}}if(s.includes("object")||t.properties){if(t.properties){i.base="unknown",i.export="interface",i.type="unknown",i.default=Qe(t,i);if(et(e,t,rt,i).forEach((e=>{i.$refs=[...i.$refs,...e.$refs],i.enums=[...i.enums,...e.enums],i.imports=[...i.imports,...e.imports],i.properties.push(e),"enum"===e.export&&(i.enums=[...i.enums,e])})),t.additionalProperties){const n=Ze(e,t,rt,i);i.properties.push(n)}return i}return Ze(e,t,rt,i)}if(void 0!==t.const){const e=t.const,n="string"==typeof e?`"${e}"`:`${e}`;return i.base=n,i.export="const",i.type=n,i}if(s.length){const e=Oe(t.type,t.format);return i.base=e.base,i.export="generic",i.$refs=[...i.$refs,...e.$refs],i.imports=[...i.imports,...e.imports],i.isNullable=e.isNullable||i.isNullable,i.template=e.template,i.type=e.type,i.default=Qe(t,i),i}return i},ot=["cookie","formData","header","path","query"],st=(e,t)=>{const n={$refs:[],imports:[],parameters:[],parametersBody:null,parametersCookie:[],parametersForm:[],parametersHeader:[],parametersPath:[],parametersQuery:[]};return t.forEach((t=>{const r=He(e,t),o=((e,t)=>{const n={$refs:[],base:"unknown",deprecated:!0===t.deprecated,description:t.description||null,enum:[],enums:[],export:"interface",imports:[],in:t.in,isDefinition:!1,isNullable:be(t),isReadOnly:!1,isRequired:!0===t.required,link:null,mediaType:null,name:Fe(t.name),prop:t.name,properties:[],template:null,type:"unknown"};if(t.$ref){const e=Oe(t.$ref);return n.export="reference",n.type=e.type,n.base=e.base,n.template=e.template,n.$refs=[...n.$refs,...e.$refs],n.imports=[...n.imports,...e.imports],n}let r=t.schema;if(r){if(r.$ref?.startsWith("#/components/parameters/")&&(r=He(e,r)),r.$ref){const e=Oe(r.$ref);return n.export="reference",n.type=e.type,n.base=e.base,n.template=e.template,n.$refs=[...n.$refs,...e.$refs],n.imports=[...n.imports,...e.imports],n.default=Qe(r),n}{const t=rt(e,r);return n.export=t.export,n.type=t.type,n.base=t.base,n.template=t.template,n.link=t.link,n.isReadOnly=t.isReadOnly,n.isRequired=n.isRequired||t.isRequired,n.isNullable=n.isNullable||t.isNullable,n.format=t.format,n.maximum=t.maximum,n.exclusiveMaximum=t.exclusiveMaximum,n.minimum=t.minimum,n.exclusiveMinimum=t.exclusiveMinimum,n.multipleOf=t.multipleOf,n.maxLength=t.maxLength,n.minLength=t.minLength,n.maxItems=t.maxItems,n.minItems=t.minItems,n.uniqueItems=t.uniqueItems,n.maxProperties=t.maxProperties,n.minProperties=t.minProperties,n.pattern=Ae(t.pattern),n.default=t.default,n.$refs=[...n.$refs,...t.$refs],n.imports=[...n.imports,...t.imports],n.enum.push(...t.enum),n.enums.push(...t.enums),n.properties.push(...t.properties),n}}return n})(e,r),s=r.in;if("api-version"!==o.prop&&ot.includes(s)){switch(s){case"cookie":n.parametersCookie=[...n.parametersCookie,o];break;case"formData":n.parametersForm=[...n.parametersForm,o];break;case"header":n.parametersHeader=[...n.parametersHeader,o];break;case"path":n.parametersPath=[...n.parametersPath,o];break;case"query":n.parametersQuery=[...n.parametersQuery,o]}n.$refs=[...n.$refs,...o.$refs],n.imports=[...n.imports,...o.imports],n.parameters=[...n.parameters,o]}})),n},at=["application/json-patch+json","application/json","application/ld+json","application/x-www-form-urlencoded","text/json","text/plain","multipart/form-data","multipart/mixed","multipart/related","multipart/batch"],it=(e,t)=>{const n=Object.keys(t).filter((e=>{const t=e.split(";")[0].trim();return at.includes(t)})).find((e=>Boolean(t[e]?.schema)));if(n)return{mediaType:n,schema:t[n].schema};const r=Object.keys(t).find((e=>Boolean(t[e]?.schema)));return r?{mediaType:r,schema:t[r].schema}:null},lt=(e,t)=>{const n=[];return Object.entries(t).forEach((([t,r])=>{const o=He(e,r),s=Ue(t);if(s){const t=((e,t,n)=>{const r={$refs:[],base:204!==n?"unknown":"void",code:n,description:t.description||null,enum:[],enums:[],export:"generic",imports:[],in:"response",isDefinition:!1,isNullable:!1,isReadOnly:!1,isRequired:!1,link:null,name:"",properties:[],template:null,type:204!==n?"unknown":"void"};if(t.content){const n=it(0,t.content);if(n){if(n.schema.$ref?.startsWith("#/components/responses/")&&(n.schema=He(e,n.schema)),n.schema.$ref){const e=Oe(n.schema.$ref);return r.base=e.base,r.export="reference",r.$refs=[...r.$refs,...e.$refs],r.imports=[...r.imports,...e.imports],r.template=e.template,r.type=e.type,r}{const t=rt(e,n.schema);return r.export=t.export,r.type=t.type,r.base=t.base,r.template=t.template,r.link=t.link,r.isReadOnly=t.isReadOnly,r.isRequired=t.isRequired,r.isNullable=t.isNullable,r.format=t.format,r.maximum=t.maximum,r.exclusiveMaximum=t.exclusiveMaximum,r.minimum=t.minimum,r.exclusiveMinimum=t.exclusiveMinimum,r.multipleOf=t.multipleOf,r.maxLength=t.maxLength,r.minLength=t.minLength,r.maxItems=t.maxItems,r.minItems=t.minItems,r.uniqueItems=t.uniqueItems,r.maxProperties=t.maxProperties,r.minProperties=t.minProperties,r.pattern=Ae(t.pattern),r.$refs=[...r.$refs,...t.$refs],r.imports=[...r.imports,...t.imports],r.enum.push(...t.enum),r.enums.push(...t.enums),r.properties.push(...t.properties),r}}}return Object.keys(t.headers??{}).forEach((e=>(r.in="header",r.name=e,r.type="string",r.base="string",r))),r})(e,o,s);n.push(t)}})),n.sort(((e,t)=>e.code<t.code?-1:e.code>t.code?1:0))},pt=(e,t)=>{let n=[...e],r=[...t];for(;r.length>0;){const e=r[0];r=r.slice(1);n.every((t=>t.in!==e.in||t.name!==e.name))&&(n=[...n,e])}return n},ct=(e,t)=>{const{method:n,op:r,pathParams:o,tag:s,url:a}=t,i=ye(s),l=Be(a,n,r.operationId),p={$refs:[],deprecated:Boolean(r.deprecated),description:r.description||null,errors:[],imports:[],method:n.toUpperCase(),name:l,parameters:[],parametersBody:o.parametersBody,parametersCookie:[],parametersForm:[],parametersHeader:[],parametersPath:[],parametersQuery:[],path:a,responseHeader:null,results:[],service:i,summary:r.summary||null};if(r.parameters){const t=st(e,r.parameters);p.$refs=[...p.$refs,...t.$refs],p.imports=[...p.imports,...t.imports],p.parameters=[...p.parameters,...t.parameters],p.parametersBody=t.parametersBody,p.parametersCookie=[...p.parametersCookie,...t.parametersCookie],p.parametersForm=[...p.parametersForm,...t.parametersForm],p.parametersHeader=[...p.parametersHeader,...t.parametersHeader],p.parametersPath=[...p.parametersPath,...t.parametersPath],p.parametersQuery=[...p.parametersQuery,...t.parametersQuery]}if(r.requestBody){const t=((e,t)=>{const n=t["x-body-name"]??"requestBody",r={$refs:[],base:"unknown",default:void 0,description:t.description||null,enum:[],enums:[],export:"interface",imports:[],in:"body",isDefinition:!1,isNullable:!0===t.nullable,isReadOnly:!1,isRequired:!0===t.required,link:null,mediaType:null,name:n,prop:n,properties:[],template:null,type:"unknown"};if(t.content){const n=it(0,t.content);if(n){switch(r.mediaType=n.mediaType,r.mediaType){case"application/x-www-form-urlencoded":case"multipart/form-data":r.in="formData",r.name="formData",r.prop="formData"}if(n.schema.$ref){const e=Oe(n.schema.$ref);return r.export="reference",r.type=e.type,r.base=e.base,r.template=e.template,r.$refs=[...r.$refs,...e.$refs],r.imports=[...r.imports,...e.imports],r}{const t=rt(e,n.schema);return r.export=t.export,r.type=t.type,r.base=t.base,r.template=t.template,r.link=t.link,r.isReadOnly=t.isReadOnly,r.isRequired=r.isRequired||t.isRequired,r.isNullable=r.isNullable||t.isNullable,r.format=t.format,r.maximum=t.maximum,r.exclusiveMaximum=t.exclusiveMaximum,r.minimum=t.minimum,r.exclusiveMinimum=t.exclusiveMinimum,r.multipleOf=t.multipleOf,r.maxLength=t.maxLength,r.minLength=t.minLength,r.maxItems=t.maxItems,r.minItems=t.minItems,r.uniqueItems=t.uniqueItems,r.maxProperties=t.maxProperties,r.minProperties=t.minProperties,r.pattern=Ae(t.pattern),r.$refs=[...r.$refs,...t.$refs],r.imports=[...r.imports,...t.imports],r.enum.push(...t.enum),r.enums.push(...t.enums),r.properties.push(...t.properties),r}}}return r})(e,He(e,r.requestBody));p.$refs=[...p.$refs,...t.$refs],p.imports=[...p.imports,...t.imports],p.parameters=[...p.parameters,t],p.parametersBody=t}if(r.responses){const t=lt(e,r.responses),n=je(t);p.errors=Ve(t),p.responseHeader=We(n),n.forEach((e=>{p.$refs=[...p.$refs,...e.$refs],p.imports=[...p.imports,...e.imports],p.results=[...p.results,e]}))}return p.parameters=pt(p.parameters,o.parameters),p.parametersCookie=pt(p.parametersCookie,o.parametersCookie),p.parametersForm=pt(p.parametersForm,o.parametersForm),p.parametersHeader=pt(p.parametersHeader,o.parametersHeader),p.parametersPath=pt(p.parametersPath,o.parametersPath),p.parametersQuery=pt(p.parametersQuery,o.parametersQuery),p.parameters=Ke(p.parameters),p},ut=["delete","get","head","options","patch","post","put"],mt=e=>({$refs:[],imports:[],name:e.service,operations:[]}),dt=e=>{const t=he(e.info.version),n=(e=>{const t=e.servers?.[0],n=t?.variables||{};let r=t?.url||"";return Object.entries(n).forEach((([e,t])=>{r=r.replace(`{${e}}`,t.default)})),r.replace(/\/$/g,"")})(e),r=(e=>{if(!e.components)return[];let t=[];return Object.entries(e.components.schemas??{}).forEach((([n,r])=>{const o=Oe(n),s=rt(e,r,!0,o.base.replace(ge,"_$1"));t=[...t,s]})),Object.entries(e.components.parameters??{}).forEach((([n,r])=>{const o=r.schema;if(!o)return;const s=Oe(n),a=rt(e,o,!0,`Parameter${s.base.replace(ge,"_$1")}`);a.deprecated=r.deprecated,a.description=r.description||null,t=[...t,a]})),t})(e),o=(e=>{const t=new Map;for(const n in e.paths){const r=e.paths[n],o=st(e,r.parameters??[]);for(const s in r){const a=s;if(ut.includes(a)){const s=r[a];(s.tags?.length?s.tags.filter(qe):["Default"]).forEach((r=>{const i=ct(e,{method:a,op:s,pathParams:o,tag:r,url:n}),l=t.get(i.service)||mt(i);l.$refs=[...l.$refs,...i.$refs],l.imports=[...l.imports,...i.imports],l.operations=[...l.operations,i],t.set(i.service,l)}))}}}return Array.from(t.values())})(e);return{enumNames:[],models:r,server:n,serviceTypes:[],services:o,version:t}};var ft={exports:{}},ht={},yt={__esModule:!0};yt.extend=Rt,yt.indexOf=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},yt.escapeExpression=function(e){if("string"!=typeof e){if(e&&e.toHTML)return e.toHTML();if(null==e)return"";if(!e)return e+"";e=""+e}if(!bt.test(e))return e;return e.replace(vt,xt)},yt.isEmpty=function(e){return!e&&0!==e||!(!qt(e)||0!==e.length)},yt.createFrame=function(e){var t=Rt({},e);return t._parent=e,t},yt.blockParams=function(e,t){return e.path=t,e},yt.appendContextPath=function(e,t){return(e?e+".":"")+t};var gt={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;","=":"&#x3D;"},vt=/[&<>"'`=]/g,bt=/[&<>"'`=]/;function xt(e){return gt[e]}function Rt(e){for(var t=1;t<arguments.length;t++)for(var n in arguments[t])Object.prototype.hasOwnProperty.call(arguments[t],n)&&(e[n]=arguments[t][n]);return e}var Pt=Object.prototype.toString;yt.toString=Pt;var Ot=function(e){return"function"==typeof e};Ot(/x/)&&(yt.isFunction=Ot=function(e){return"function"==typeof e&&"[object Function]"===Pt.call(e)}),yt.isFunction=Ot;var qt=Array.isArray||function(e){return!(!e||"object"!=typeof e)&&"[object Array]"===Pt.call(e)};yt.isArray=qt;var wt={exports:{}};!function(e,t){t.__esModule=!0;var n=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function r(e,t){var o=t&&t.loc,s=void 0,a=void 0,i=void 0,l=void 0;o&&(s=o.start.line,a=o.end.line,i=o.start.column,l=o.end.column,e+=" - "+s+":"+i);for(var p=Error.prototype.constructor.call(this,e),c=0;c<n.length;c++)this[n[c]]=p[n[c]];Error.captureStackTrace&&Error.captureStackTrace(this,r);try{o&&(this.lineNumber=s,this.endLineNumber=a,Object.defineProperty?(Object.defineProperty(this,"column",{value:i,enumerable:!0}),Object.defineProperty(this,"endColumn",{value:l,enumerable:!0})):(this.column=i,this.endColumn=l))}catch(e){}}r.prototype=new Error,t.default=r,e.exports=t.default}(wt,wt.exports);var At=wt.exports,kt={},Et={exports:{}};!function(e,t){t.__esModule=!0;var n=yt;t.default=function(e){e.registerHelper("blockHelperMissing",(function(t,r){var o=r.inverse,s=r.fn;if(!0===t)return s(this);if(!1===t||null==t)return o(this);if(n.isArray(t))return t.length>0?(r.ids&&(r.ids=[r.name]),e.helpers.each(t,r)):o(this);if(r.data&&r.ids){var a=n.createFrame(r.data);a.contextPath=n.appendContextPath(r.data.contextPath,r.name),r={data:a}}return s(t,r)}))},e.exports=t.default}(Et,Et.exports);var Ct=Et.exports,Tt={exports:{}};!function(e,t){t.__esModule=!0;var n,r=yt,o=(n=At)&&n.__esModule?n:{default:n};t.default=function(e){e.registerHelper("each",(function(e,t){if(!t)throw new o.default("Must pass iterator to #each");var n,s=t.fn,a=t.inverse,i=0,l="",p=void 0,c=void 0;function u(t,n,o){p&&(p.key=t,p.index=n,p.first=0===n,p.last=!!o,c&&(p.contextPath=c+t)),l+=s(e[t],{data:p,blockParams:r.blockParams([e[t],t],[c+t,null])})}if(t.data&&t.ids&&(c=r.appendContextPath(t.data.contextPath,t.ids[0])+"."),r.isFunction(e)&&(e=e.call(this)),t.data&&(p=r.createFrame(t.data)),e&&"object"==typeof e)if(r.isArray(e))for(var m=e.length;i<m;i++)i in e&&u(i,i,i===e.length-1);else if("function"==typeof Symbol&&e[Symbol.iterator]){for(var d=[],f=e[Symbol.iterator](),h=f.next();!h.done;h=f.next())d.push(h.value);for(m=(e=d).length;i<m;i++)u(i,i,i===e.length-1)}else n=void 0,Object.keys(e).forEach((function(e){void 0!==n&&u(n,i-1),n=e,i++})),void 0!==n&&u(n,i-1,!0);return 0===i&&(l=a(this)),l}))},e.exports=t.default}(Tt,Tt.exports);var $t=Tt.exports,It={exports:{}};!function(e,t){t.__esModule=!0;var n,r=(n=At)&&n.__esModule?n:{default:n};t.default=function(e){e.registerHelper("helperMissing",(function(){if(1!==arguments.length)throw new r.default('Missing helper: "'+arguments[arguments.length-1].name+'"')}))},e.exports=t.default}(It,It.exports);var St=It.exports,Ht={exports:{}};!function(e,t){t.__esModule=!0;var n,r=yt,o=(n=At)&&n.__esModule?n:{default:n};t.default=function(e){e.registerHelper("if",(function(e,t){if(2!=arguments.length)throw new o.default("#if requires exactly one argument");return r.isFunction(e)&&(e=e.call(this)),!t.hash.includeZero&&!e||r.isEmpty(e)?t.inverse(this):t.fn(this)})),e.registerHelper("unless",(function(t,n){if(2!=arguments.length)throw new o.default("#unless requires exactly one argument");return e.helpers.if.call(this,t,{fn:n.inverse,inverse:n.fn,hash:n.hash})}))},e.exports=t.default}(Ht,Ht.exports);var _t=Ht.exports,Dt={exports:{}};!function(e,t){t.__esModule=!0,t.default=function(e){e.registerHelper("log",(function(){for(var t=[void 0],n=arguments[arguments.length-1],r=0;r<arguments.length-1;r++)t.push(arguments[r]);var o=1;null!=n.hash.level?o=n.hash.level:n.data&&null!=n.data.level&&(o=n.data.level),t[0]=o,e.log.apply(e,t)}))},e.exports=t.default}(Dt,Dt.exports);var Nt=Dt.exports,jt={exports:{}};!function(e,t){t.__esModule=!0,t.default=function(e){e.registerHelper("lookup",(function(e,t,n){return e?n.lookupProperty(e,t):e}))},e.exports=t.default}(jt,jt.exports);var Mt=jt.exports,Lt={exports:{}};!function(e,t){t.__esModule=!0;var n,r=yt,o=(n=At)&&n.__esModule?n:{default:n};t.default=function(e){e.registerHelper("with",(function(e,t){if(2!=arguments.length)throw new o.default("#with requires exactly one argument");r.isFunction(e)&&(e=e.call(this));var n=t.fn;if(r.isEmpty(e))return t.inverse(this);var s=t.data;return t.data&&t.ids&&((s=r.createFrame(t.data)).contextPath=r.appendContextPath(t.data.contextPath,t.ids[0])),n(e,{data:s,blockParams:r.blockParams([e],[s&&s.contextPath])})}))},e.exports=t.default}(Lt,Lt.exports);var Bt=Lt.exports;function Ft(e){return e&&e.__esModule?e:{default:e}}kt.__esModule=!0,kt.registerDefaultHelpers=function(e){Wt.default(e),Ut.default(e),Vt.default(e),Kt.default(e),Qt.default(e),Jt.default(e),zt.default(e)},kt.moveHelperToHooks=function(e,t,n){e.helpers[t]&&(e.hooks[t]=e.helpers[t],n||delete e.helpers[t])};var Wt=Ft(Ct),Ut=Ft($t),Vt=Ft(St),Kt=Ft(_t),Qt=Ft(Nt),Jt=Ft(Mt),zt=Ft(Bt);var Gt={},Xt={exports:{}};!function(e,t){t.__esModule=!0;var n=yt;t.default=function(e){e.registerDecorator("inline",(function(e,t,r,o){var s=e;return t.partials||(t.partials={},s=function(o,s){var a=r.partials;r.partials=n.extend({},a,t.partials);var i=e(o,s);return r.partials=a,i}),t.partials[o.args[0]]=o.fn,s}))},e.exports=t.default}(Xt,Xt.exports);var Yt=Xt.exports;Gt.__esModule=!0,Gt.registerDefaultDecorators=function(e){en.default(e)};var Zt,en=(Zt=Yt)&&Zt.__esModule?Zt:{default:Zt};var tn={exports:{}};!function(e,t){t.__esModule=!0;var n=yt,r={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(e){if("string"==typeof e){var t=n.indexOf(r.methodMap,e.toLowerCase());e=t>=0?t:parseInt(e,10)}return e},log:function(e){if(e=r.lookupLevel(e),"undefined"!=typeof console&&r.lookupLevel(r.level)<=e){var t=r.methodMap[e];console[t]||(t="log");for(var n=arguments.length,o=Array(n>1?n-1:0),s=1;s<n;s++)o[s-1]=arguments[s];console[t].apply(console,o)}}};t.default=r,e.exports=t.default}(tn,tn.exports);var nn=tn.exports,rn={},on={__esModule:!0,createNewLookupObject:function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return sn.extend.apply(void 0,[Object.create(null)].concat(t))}},sn=yt;rn.__esModule=!0,rn.createProtoAccessControl=function(e){var t=Object.create(null);t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1;var n=Object.create(null);return n.__proto__=!1,{properties:{whitelist:an.createNewLookupObject(n,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:an.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}},rn.resultIsAllowed=function(e,t,n){return cn("function"==typeof e?t.methods:t.properties,n)},rn.resetLoggedProperties=function(){Object.keys(pn).forEach((function(e){delete pn[e]}))};var an=on,ln=function(e){return e&&e.__esModule?e:{default:e}}(nn),pn=Object.create(null);function cn(e,t){return void 0!==e.whitelist[t]?!0===e.whitelist[t]:void 0!==e.defaultValue?e.defaultValue:(function(e){!0!==pn[e]&&(pn[e]=!0,ln.default.log("error",'Handlebars: Access has been denied to resolve the property "'+e+'" because it is not an "own property" of its parent.\nYou can add a runtime option to disable the check or this warning:\nSee https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details'))}(t),!1)}function un(e){return e&&e.__esModule?e:{default:e}}ht.__esModule=!0,ht.HandlebarsEnvironment=bn;var mn=yt,dn=un(At),fn=kt,hn=Gt,yn=un(nn),gn=rn;ht.VERSION="4.7.8";ht.COMPILER_REVISION=8;ht.LAST_COMPATIBLE_COMPILER_REVISION=7;ht.REVISION_CHANGES={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};var vn="[object Object]";function bn(e,t,n){this.helpers=e||{},this.partials=t||{},this.decorators=n||{},fn.registerDefaultHelpers(this),hn.registerDefaultDecorators(this)}bn.prototype={constructor:bn,logger:yn.default,log:yn.default.log,registerHelper:function(e,t){if(mn.toString.call(e)===vn){if(t)throw new dn.default("Arg not supported with multiple helpers");mn.extend(this.helpers,e)}else this.helpers[e]=t},unregisterHelper:function(e){delete this.helpers[e]},registerPartial:function(e,t){if(mn.toString.call(e)===vn)mn.extend(this.partials,e);else{if(void 0===t)throw new dn.default('Attempting to register a partial called "'+e+'" as undefined');this.partials[e]=t}},unregisterPartial:function(e){delete this.partials[e]},registerDecorator:function(e,t){if(mn.toString.call(e)===vn){if(t)throw new dn.default("Arg not supported with multiple decorators");mn.extend(this.decorators,e)}else this.decorators[e]=t},unregisterDecorator:function(e){delete this.decorators[e]},resetLoggedPropertyAccesses:function(){gn.resetLoggedProperties()}};var xn=yn.default.log;ht.log=xn,ht.createFrame=mn.createFrame,ht.logger=yn.default;var Rn={exports:{}};!function(e,t){function n(e){this.string=e}t.__esModule=!0,n.prototype.toString=n.prototype.toHTML=function(){return""+this.string},t.default=n,e.exports=t.default}(Rn,Rn.exports);var Pn=Rn.exports,On={},qn={};qn.__esModule=!0,qn.wrapHelper=function(e,t){if("function"!=typeof e)return e;return function(){return arguments[arguments.length-1]=t(arguments[arguments.length-1]),e.apply(this,arguments)}},On.__esModule=!0,On.checkRevision=function(e){var t=e&&e[0]||1,n=kn.COMPILER_REVISION;if(t>=kn.LAST_COMPATIBLE_COMPILER_REVISION&&t<=kn.COMPILER_REVISION)return;if(t<kn.LAST_COMPATIBLE_COMPILER_REVISION){var r=kn.REVISION_CHANGES[n],o=kn.REVISION_CHANGES[t];throw new An.default("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+r+") or downgrade your runtime to an older version ("+o+").")}throw new An.default("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+e[1]+").")},On.template=function(e,t){if(!t)throw new An.default("No environment passed to template");if(!e||!e.main)throw new An.default("Unknown template object: "+typeof e);e.main.decorator=e.main_d,t.VM.checkRevision(e.compiler);var n=e.compiler&&7===e.compiler[0];var r={strict:function(e,t,n){if(!e||!(t in e))throw new An.default('"'+t+'" not defined in '+e,{loc:n});return r.lookupProperty(e,t)},lookupProperty:function(e,t){var n=e[t];return null==n||Object.prototype.hasOwnProperty.call(e,t)||Tn.resultIsAllowed(n,r.protoAccessControl,t)?n:void 0},lookup:function(e,t){for(var n=e.length,o=0;o<n;o++){if(null!=(e[o]&&r.lookupProperty(e[o],t)))return e[o][t]}},lambda:function(e,t){return"function"==typeof e?e.call(t):e},escapeExpression:wn.escapeExpression,invokePartial:function(n,r,o){o.hash&&(r=wn.extend({},r,o.hash),o.ids&&(o.ids[0]=!0)),n=t.VM.resolvePartial.call(this,n,r,o);var s=wn.extend({},o,{hooks:this.hooks,protoAccessControl:this.protoAccessControl}),a=t.VM.invokePartial.call(this,n,r,s);if(null==a&&t.compile&&(o.partials[o.name]=t.compile(n,e.compilerOptions,t),a=o.partials[o.name](r,s)),null!=a){if(o.indent){for(var i=a.split("\n"),l=0,p=i.length;l<p&&(i[l]||l+1!==p);l++)i[l]=o.indent+i[l];a=i.join("\n")}return a}throw new An.default("The partial "+o.name+" could not be compiled when running in runtime-only mode")},fn:function(t){var n=e[t];return n.decorator=e[t+"_d"],n},programs:[],program:function(e,t,n,r,o){var s=this.programs[e],a=this.fn(e);return t||o||r||n?s=$n(this,e,a,t,n,r,o):s||(s=this.programs[e]=$n(this,e,a)),s},data:function(e,t){for(;e&&t--;)e=e._parent;return e},mergeIfNeeded:function(e,t){var n=e||t;return e&&t&&e!==t&&(n=wn.extend({},t,e)),n},nullContext:Object.seal({}),noop:t.VM.noop,compilerInfo:e.compiler};function o(t){var n=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],s=n.data;o._setup(n),!n.partial&&e.useData&&(s=function(e,t){t&&"root"in t||((t=t?kn.createFrame(t):{}).root=e);return t}(t,s));var a=void 0,i=e.useBlockParams?[]:void 0;function l(t){return""+e.main(r,t,r.helpers,r.partials,s,i,a)}return e.useDepths&&(a=n.depths?t!=n.depths[0]?[t].concat(n.depths):n.depths:[t]),(l=Sn(e.main,l,r,n.depths||[],s,i))(t,n)}return o.isTop=!0,o._setup=function(o){if(o.partial)r.protoAccessControl=o.protoAccessControl,r.helpers=o.helpers,r.partials=o.partials,r.decorators=o.decorators,r.hooks=o.hooks;else{var s=wn.extend({},t.helpers,o.helpers);!function(e,t){Object.keys(e).forEach((function(n){var r=e[n];e[n]=function(e,t){var n=t.lookupProperty;return Cn.wrapHelper(e,(function(e){return wn.extend({lookupProperty:n},e)}))}(r,t)}))}(s,r),r.helpers=s,e.usePartial&&(r.partials=r.mergeIfNeeded(o.partials,t.partials)),(e.usePartial||e.useDecorators)&&(r.decorators=wn.extend({},t.decorators,o.decorators)),r.hooks={},r.protoAccessControl=Tn.createProtoAccessControl(o);var a=o.allowCallsToHelperMissing||n;En.moveHelperToHooks(r,"helperMissing",a),En.moveHelperToHooks(r,"blockHelperMissing",a)}},o._child=function(t,n,o,s){if(e.useBlockParams&&!o)throw new An.default("must pass block params");if(e.useDepths&&!s)throw new An.default("must pass parent depths");return $n(r,t,e[t],n,0,o,s)},o},On.wrapProgram=$n,On.resolvePartial=function(e,t,n){e?e.call||n.name||(n.name=e,e=n.partials[e]):e="@partial-block"===n.name?n.data["partial-block"]:n.partials[n.name];return e},On.invokePartial=function(e,t,n){var r=n.data&&n.data["partial-block"];n.partial=!0,n.ids&&(n.data.contextPath=n.ids[0]||n.data.contextPath);var o=void 0;n.fn&&n.fn!==In&&function(){n.data=kn.createFrame(n.data);var e=n.fn;o=n.data["partial-block"]=function(t){var n=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];return n.data=kn.createFrame(n.data),n.data["partial-block"]=r,e(t,n)},e.partials&&(n.partials=wn.extend({},n.partials,e.partials))}();void 0===e&&o&&(e=o);if(void 0===e)throw new An.default("The partial "+n.name+" could not be found");if(e instanceof Function)return e(t,n)},On.noop=In;var wn=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(yt),An=function(e){return e&&e.__esModule?e:{default:e}}(At),kn=ht,En=kt,Cn=qn,Tn=rn;function $n(e,t,n,r,o,s,a){function i(t){var o=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],i=a;return!a||t==a[0]||t===e.nullContext&&null===a[0]||(i=[t].concat(a)),n(e,t,e.helpers,e.partials,o.data||r,s&&[o.blockParams].concat(s),i)}return(i=Sn(n,i,e,a,r,s)).program=t,i.depth=a?a.length:0,i.blockParams=o||0,i}function In(){return""}function Sn(e,t,n,r,o,s){if(e.decorator){var a={};t=e.decorator(t,a,n,r&&r[0],o,s,r),wn.extend(t,a)}return t}var Hn={exports:{}};!function(e,t){t.__esModule=!0,t.default=function(e){"object"!=typeof globalThis&&(Object.prototype.__defineGetter__("__magic__",(function(){return this})),__magic__.globalThis=__magic__,delete Object.prototype.__magic__);var t=globalThis.Handlebars;e.noConflict=function(){return globalThis.Handlebars===e&&(globalThis.Handlebars=t),e}},e.exports=t.default}(Hn,Hn.exports);var _n=Hn.exports;!function(e,t){function n(e){return e&&e.__esModule?e:{default:e}}function r(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}t.__esModule=!0;var o=r(ht),s=n(Pn),a=n(At),i=r(yt),l=r(On),p=n(_n);function c(){var e=new o.HandlebarsEnvironment;return i.extend(e,o),e.SafeString=s.default,e.Exception=a.default,e.Utils=i,e.escapeExpression=i.escapeExpression,e.VM=l,e.template=function(t){return l.template(t,e)},e}var u=c();u.create=c,p.default(u),u.default=u,t.default=u,e.exports=t.default}(ft,ft.exports);var Dn=c(ft.exports.default),Nn={1:function(e,t,n,r,o){return"import { NgModule} from '@angular/core';\nimport { HttpClientModule } from '@angular/common/http';\n\nimport { AngularHttpRequest } from './core/AngularHttpRequest';\nimport { BaseHttpRequest } from './core/BaseHttpRequest';\nimport type { OpenAPIConfig } from './core/OpenAPI';\nimport { OpenAPI } from './core/OpenAPI';\nimport { Interceptors } from './core/OpenAPI';\n"},3:function(e,t,n,r,o){var s,a=e.strict,i=e.lambda;return"import type { BaseHttpRequest } from './core/BaseHttpRequest';\nimport type { OpenAPIConfig } from './core/OpenAPI';\nimport { Interceptors } from './core/OpenAPI';\nimport { "+(null!=(s=i(a(t,"httpRequest",{start:{line:14,column:12},end:{line:14,column:23}}),t))?s:"")+" } from './core/"+(null!=(s=i(a(t,"httpRequest",{start:{line:14,column:45},end:{line:14,column:56}}),t))?s:"")+"';\n"},5:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(s=a(n,"each").call(null!=t?t:e.nullContext||{},a(t,"services"),{name:"each",hash:{},fn:e.program(6,o,0),inverse:e.noop,data:o,loc:{start:{line:18,column:0},end:{line:20,column:9}}}))?s:""},6:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"import { "+(null!=(s=a(n,"transformServiceName").call(null!=t?t:e.nullContext||{},a(t,"name"),{name:"transformServiceName",hash:{},data:o,loc:{start:{line:19,column:9},end:{line:19,column:40}}}))?s:"")+" } from './services.gen';\n"},8:function(e,t,n,r,o){var s,a=e.strict,i=e.lambda,l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"@NgModule({\n\timports: [HttpClientModule],\n\tproviders: [\n\t\t{\n\t\t\tprovide: OpenAPI,\n\t\t\tuseValue: {\n\t\t\t\tBASE: OpenAPI?.BASE ?? '"+(null!=(s=i(a(t,"server",{start:{line:30,column:31},end:{line:30,column:37}}),t))?s:"")+"',\n\t\t\t\tVERSION: OpenAPI?.VERSION ?? '"+(null!=(s=i(a(t,"version",{start:{line:31,column:37},end:{line:31,column:44}}),t))?s:"")+"',\n\t\t\t\tWITH_CREDENTIALS: OpenAPI?.WITH_CREDENTIALS ?? false,\n\t\t\t\tCREDENTIALS: OpenAPI?.CREDENTIALS ?? 'include',\n\t\t\t\tTOKEN: OpenAPI?.TOKEN,\n\t\t\t\tUSERNAME: OpenAPI?.USERNAME,\n\t\t\t\tPASSWORD: OpenAPI?.PASSWORD,\n\t\t\t\tHEADERS: OpenAPI?.HEADERS,\n\t\t\t\tENCODE_PATH: OpenAPI?.ENCODE_PATH,\n\t\t\t\tinterceptors: {\n\t\t\t\t\tresponse: OpenAPI?.interceptors?.response ?? new Interceptors(),\n\t\t\t\t},\n\t\t\t} as OpenAPIConfig,\n\t\t},\n\t\t{\n\t\t\tprovide: BaseHttpRequest,\n\t\t\tuseClass: AngularHttpRequest,\n\t\t},\n"+(null!=(s=l(n,"each").call(null!=t?t:e.nullContext||{},l(t,"services"),{name:"each",hash:{},fn:e.program(9,o,0),inverse:e.noop,data:o,loc:{start:{line:48,column:2},end:{line:50,column:11}}}))?s:"")+"\t]\n})\nexport class "+(null!=(s=i(a(l(l(o,"root"),"$config"),"name",{start:{line:53,column:16},end:{line:53,column:34}}),t))?s:"")+" {}\n"},9:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"\t\t"+(null!=(s=a(n,"transformServiceName").call(null!=t?t:e.nullContext||{},a(t,"name"),{name:"transformServiceName",hash:{},data:o,loc:{start:{line:49,column:2},end:{line:49,column:33}}}))?s:"")+",\n"},11:function(e,t,n,r,o){var s,a=e.strict,i=e.lambda,l=null!=t?t:e.nullContext||{},p=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"type HttpRequestConstructor = new (config: OpenAPIConfig) => BaseHttpRequest;\n\nexport class "+(null!=(s=i(a(p(p(o,"root"),"$config"),"name",{start:{line:57,column:16},end:{line:57,column:34}}),t))?s:"")+" {\n\n"+(null!=(s=p(n,"each").call(l,p(t,"services"),{name:"each",hash:{},fn:e.program(12,o,0),inverse:e.noop,data:o,loc:{start:{line:59,column:1},end:{line:61,column:10}}}))?s:"")+"\n\tpublic readonly request: BaseHttpRequest;\n\n\tconstructor(config?: Partial<OpenAPIConfig>, HttpRequest: HttpRequestConstructor = "+(null!=(s=i(a(t,"httpRequest",{start:{line:65,column:87},end:{line:65,column:98}}),t))?s:"")+") {\n\t\tthis.request = new HttpRequest({\n\t\t\tBASE: config?.BASE ?? '"+(null!=(s=i(a(t,"server",{start:{line:67,column:29},end:{line:67,column:35}}),t))?s:"")+"',\n\t\t\tVERSION: config?.VERSION ?? '"+(null!=(s=i(a(t,"version",{start:{line:68,column:35},end:{line:68,column:42}}),t))?s:"")+"',\n\t\t\tWITH_CREDENTIALS: config?.WITH_CREDENTIALS ?? false,\n\t\t\tCREDENTIALS: config?.CREDENTIALS ?? 'include',\n\t\t\tTOKEN: config?.TOKEN,\n\t\t\tUSERNAME: config?.USERNAME,\n\t\t\tPASSWORD: config?.PASSWORD,\n\t\t\tHEADERS: config?.HEADERS,\n\t\t\tENCODE_PATH: config?.ENCODE_PATH,\n\t\t\tinterceptors: {\n\t\t\t\trequest: config?.interceptors?.request ?? new Interceptors(),\n\t\t\t\tresponse: config?.interceptors?.response ?? new Interceptors(),\n },\n\t\t});\n\n"+(null!=(s=p(n,"each").call(l,p(t,"services"),{name:"each",hash:{},fn:e.program(14,o,0),inverse:e.noop,data:o,loc:{start:{line:82,column:2},end:{line:84,column:11}}}))?s:"")+"\t}\n}\n"},12:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"\tpublic readonly "+(null!=(s=i(n,"camelCase").call(a,i(t,"name"),{name:"camelCase",hash:{},data:o,loc:{start:{line:60,column:17},end:{line:60,column:37}}}))?s:"")+": "+(null!=(s=i(n,"transformServiceName").call(a,i(t,"name"),{name:"transformServiceName",hash:{},data:o,loc:{start:{line:60,column:39},end:{line:60,column:70}}}))?s:"")+";\n"},14:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"\t\tthis."+(null!=(s=i(n,"camelCase").call(a,i(t,"name"),{name:"camelCase",hash:{},data:o,loc:{start:{line:83,column:7},end:{line:83,column:27}}}))?s:"")+" = new "+(null!=(s=i(n,"transformServiceName").call(a,i(t,"name"),{name:"transformServiceName",hash:{},data:o,loc:{start:{line:83,column:34},end:{line:83,column:65}}}))?s:"")+"(this.request);\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.program(3,o,0),data:o,loc:{start:{line:1,column:0},end:{line:15,column:11}}}))?s:"")+"\n"+(null!=(s=i(n,"if").call(a,i(t,"services"),{name:"if",hash:{},fn:e.program(5,o,0),inverse:e.noop,data:o,loc:{start:{line:17,column:0},end:{line:21,column:7}}}))?s:"")+"\n"+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(8,o,0),inverse:e.program(11,o,0),data:o,loc:{start:{line:23,column:0},end:{line:87,column:11}}}))?s:"")},useData:!0},jn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getHeaders = (config: OpenAPIConfig, options: ApiRequestOptions): Observable<HttpHeaders> => {\n\treturn forkJoin({\n\t\ttoken: resolve(options, config.TOKEN),\n\t\tusername: resolve(options, config.USERNAME),\n\t\tpassword: resolve(options, config.PASSWORD),\n\t\tadditionalHeaders: resolve(options, config.HEADERS),\n\t}).pipe(\n\t\tmap(({ token, username, password, additionalHeaders }) => {\n\t\t\tconst headers = Object.entries({\n\t\t\t\tAccept: 'application/json',\n\t\t\t\t...additionalHeaders,\n\t\t\t\t...options.headers,\n\t\t\t})\n\t\t\t\t.filter(([, value]) => value !== undefined && value !== null)\n\t\t\t\t.reduce((headers, [key, value]) => ({\n\t\t\t\t\t...headers,\n\t\t\t\t\t[key]: String(value),\n\t\t\t\t}), {} as Record<string, string>);\n\n\t\t\tif (isStringWithValue(token)) {\n\t\t\t\theaders['Authorization'] = `Bearer ${token}`;\n\t\t\t}\n\n\t\t\tif (isStringWithValue(username) && isStringWithValue(password)) {\n\t\t\t\tconst credentials = base64(`${username}:${password}`);\n\t\t\t\theaders['Authorization'] = `Basic ${credentials}`;\n\t\t\t}\n\n\t\t\tif (options.body !== undefined) {\n\t\t\t\tif (options.mediaType) {\n\t\t\t\t\theaders['Content-Type'] = options.mediaType;\n\t\t\t\t} else if (isBlob(options.body)) {\n\t\t\t\t\theaders['Content-Type'] = options.body.type || 'application/octet-stream';\n\t\t\t\t} else if (isString(options.body)) {\n\t\t\t\t\theaders['Content-Type'] = 'text/plain';\n\t\t\t\t} else if (!isFormData(options.body)) {\n\t\t\t\t\theaders['Content-Type'] = 'application/json';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn new HttpHeaders(headers);\n\t\t}),\n\t);\n};"},useData:!0},Mn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getRequestBody = (options: ApiRequestOptions): unknown => {\n\tif (options.body) {\n\t\tif (options.mediaType?.includes('application/json') || options.mediaType?.includes('+json')) {\n\t\t\treturn JSON.stringify(options.body);\n\t\t} else if (isString(options.body) || isBlob(options.body) || isFormData(options.body)) {\n\t\t\treturn options.body;\n\t\t} else {\n\t\t\treturn JSON.stringify(options.body);\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},Ln={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseBody = <T>(response: HttpResponse<T>): T | undefined => {\n\tif (response.status !== 204 && response.body !== null) {\n\t\treturn response.body;\n\t}\n\treturn undefined;\n};"},useData:!0},Bn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseHeader = <T>(response: HttpResponse<T>, responseHeader?: string): string | undefined => {\n\tif (responseHeader) {\n\t\tconst value = response.headers.get(responseHeader);\n\t\tif (isString(value)) {\n\t\t\treturn value;\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},Fn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"import { HttpClient, HttpHeaders } from '@angular/common/http';\nimport type { HttpResponse, HttpErrorResponse } from '@angular/common/http';\nimport { forkJoin, of, throwError } from 'rxjs';\nimport { catchError, map, switchMap } from 'rxjs/operators';\nimport type { Observable } from 'rxjs';\n\nimport { ApiError } from './ApiError';\nimport type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { ApiResult } from './ApiResult';\nimport type { OpenAPIConfig } from './OpenAPI';\n\n"+(null!=(s=e.invokePartial(a(r,"functions/isString"),t,{name:"functions/isString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/isStringWithValue"),t,{name:"functions/isStringWithValue",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/isBlob"),t,{name:"functions/isBlob",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/isFormData"),t,{name:"functions/isFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/base64"),t,{name:"functions/base64",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/getQueryString"),t,{name:"functions/getQueryString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/getUrl"),t,{name:"functions/getUrl",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/getFormData"),t,{name:"functions/getFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/resolve"),t,{name:"functions/resolve",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"angular/getHeaders"),t,{name:"angular/getHeaders",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"angular/getRequestBody"),t,{name:"angular/getRequestBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"angular/sendRequest"),t,{name:"angular/sendRequest",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"angular/getResponseHeader"),t,{name:"angular/getResponseHeader",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"angular/getResponseBody"),t,{name:"angular/getResponseBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/catchErrorCodes"),t,{name:"functions/catchErrorCodes",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n/**\n * Request method\n * @param config The OpenAPI configuration object\n * @param http The Angular HTTP client\n * @param options The request options from the service\n * @returns Observable<T>\n * @throws ApiError\n */\nexport const request = <T>(config: OpenAPIConfig, http: HttpClient, options: ApiRequestOptions): Observable<T> => {\n\tconst url = getUrl(config, options);\n\tconst formData = getFormData(options);\n\tconst body = getRequestBody(options);\n\n\treturn getHeaders(config, options).pipe(\n\t\tswitchMap(headers => {\n\t\t\treturn sendRequest<T>(config, options, http, url, body, formData, headers);\n\t\t}),\n\t\tswitchMap(async response => {\n\t\t\tfor (const fn of config.interceptors.response._fns) {\n\t\t\t\tresponse = await fn(response);\n\t\t\t}\n\t\t\tconst responseBody = getResponseBody(response);\n\t\t\tconst responseHeader = getResponseHeader(response, options.responseHeader);\n\t\t\treturn {\n\t\t\t\turl,\n\t\t\t\tok: response.ok,\n\t\t\t\tstatus: response.status,\n\t\t\t\tstatusText: response.statusText,\n\t\t\t\tbody: responseHeader ?? responseBody,\n\t\t\t} as ApiResult;\n\t\t}),\n\t\tcatchError((error: HttpErrorResponse) => {\n\t\t\tif (!error.status) {\n\t\t\t\treturn throwError(() => error);\n\t\t\t}\n\t\t\treturn of({\n\t\t\t\turl,\n\t\t\t\tok: error.ok,\n\t\t\t\tstatus: error.status,\n\t\t\t\tstatusText: error.statusText,\n\t\t\t\tbody: error.error ?? error.statusText,\n\t\t\t} as ApiResult);\n\t\t}),\n\t\tmap(result => {\n\t\t\tcatchErrorCodes(options, result);\n\t\t\treturn result.body as T;\n\t\t}),\n\t\tcatchError((error: ApiError) => {\n\t\t\treturn throwError(() => error);\n\t\t}),\n\t);\n};"},usePartial:!0,useData:!0},Wn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const sendRequest = <T>(\n\tconfig: OpenAPIConfig,\n\toptions: ApiRequestOptions,\n\thttp: HttpClient,\n\turl: string,\n\tbody: unknown,\n\tformData: FormData | undefined,\n\theaders: HttpHeaders\n): Observable<HttpResponse<T>> => {\n\treturn http.request<T>(options.method, url, {\n\t\theaders,\n\t\tbody: body ?? formData,\n\t\twithCredentials: config.WITH_CREDENTIALS,\n\t\tobserve: 'response',\n\t});\n};"},useData:!0},Un={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"import type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { ApiResult } from './ApiResult';\n\nexport class ApiError extends Error {\n\tpublic readonly url: string;\n\tpublic readonly status: number;\n\tpublic readonly statusText: string;\n\tpublic readonly body: unknown;\n\tpublic readonly request: ApiRequestOptions;\n\n\tconstructor(request: ApiRequestOptions, response: ApiResult, message: string) {\n\t\tsuper(message);\n\n\t\tthis.name = 'ApiError';\n\t\tthis.url = response.url;\n\t\tthis.status = response.status;\n\t\tthis.statusText = response.statusText;\n\t\tthis.body = response.body;\n\t\tthis.request = request;\n\t}\n}"},useData:!0},Vn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export type ApiRequestOptions = {\n\treadonly method: 'GET' | 'PUT' | 'POST' | 'DELETE' | 'OPTIONS' | 'HEAD' | 'PATCH';\n\treadonly url: string;\n\treadonly path?: Record<string, unknown>;\n\treadonly cookies?: Record<string, unknown>;\n\treadonly headers?: Record<string, unknown>;\n\treadonly query?: Record<string, unknown>;\n\treadonly formData?: Record<string, unknown>;\n\treadonly body?: any;\n\treadonly mediaType?: string;\n\treadonly responseHeader?: string;\n\treadonly errors?: Record<number, string>;\n};"},useData:!0},Kn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export type ApiResult<TData = any> = {\n\treadonly body: TData;\n\treadonly ok: boolean;\n\treadonly status: number;\n\treadonly statusText: string;\n\treadonly url: string;\n};"},useData:!0},Qn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getHeaders = async (config: OpenAPIConfig, options: ApiRequestOptions): Promise<Record<string, string>> => {\n\tconst [token, username, password, additionalHeaders] = await Promise.all([\n\t\tresolve(options, config.TOKEN),\n\t\tresolve(options, config.USERNAME),\n\t\tresolve(options, config.PASSWORD),\n\t\tresolve(options, config.HEADERS),\n\t]);\n\n\tconst headers = Object.entries({\n\t\tAccept: 'application/json',\n\t\t...additionalHeaders,\n\t\t...options.headers,\n\t})\n\t.filter(([, value]) => value !== undefined && value !== null)\n\t.reduce((headers, [key, value]) => ({\n\t\t...headers,\n\t\t[key]: String(value),\n\t}), {} as Record<string, string>);\n\n\tif (isStringWithValue(token)) {\n\t\theaders['Authorization'] = `Bearer ${token}`;\n\t}\n\n\tif (isStringWithValue(username) && isStringWithValue(password)) {\n\t\tconst credentials = base64(`${username}:${password}`);\n\t\theaders['Authorization'] = `Basic ${credentials}`;\n\t}\n\n\tif (options.body !== undefined) {\n\t\tif (options.mediaType) {\n\t\t\theaders['Content-Type'] = options.mediaType;\n\t\t} else if (isBlob(options.body)) {\n\t\t\theaders['Content-Type'] = options.body.type || 'application/octet-stream';\n\t\t} else if (isString(options.body)) {\n\t\t\theaders['Content-Type'] = 'text/plain';\n\t\t} else if (!isFormData(options.body)) {\n\t\t\theaders['Content-Type'] = 'application/json';\n\t\t}\n\t} else if (options.formData !== undefined) {\n\t\tif (options.mediaType) {\n\t\t\theaders['Content-Type'] = options.mediaType;\n\t\t}\n\t}\n\n\treturn headers;\n};"},useData:!0},Jn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getRequestBody = (options: ApiRequestOptions): unknown => {\n\tif (options.body) {\n\t\treturn options.body;\n\t}\n\treturn undefined;\n};"},useData:!0},zn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseBody = (response: AxiosResponse<unknown>): unknown => {\n\tif (response.status !== 204) {\n\t\treturn response.data;\n\t}\n\treturn undefined;\n};"},useData:!0},Gn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseHeader = (response: AxiosResponse<unknown>, responseHeader?: string): string | undefined => {\n\tif (responseHeader) {\n\t\tconst content = response.headers[responseHeader];\n\t\tif (isString(content)) {\n\t\t\treturn content;\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},Xn={1:function(e,t,n,r,o){return"ApiResult<T>"},3:function(e,t,n,r,o){return"T"},5:function(e,t,n,r,o){return"result.body"},7:function(e,t,n,r,o){return"result"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"import axios from 'axios';\nimport type { AxiosError, AxiosRequestConfig, AxiosResponse, AxiosInstance } from 'axios';\n\nimport { ApiError } from './ApiError';\nimport type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { ApiResult } from './ApiResult';\nimport { CancelablePromise } from './CancelablePromise';\nimport type { OnCancel } from './CancelablePromise';\nimport type { OpenAPIConfig } from './OpenAPI';\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isString"),t,{name:"functions/isString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isStringWithValue"),t,{name:"functions/isStringWithValue",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isBlob"),t,{name:"functions/isBlob",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isFormData"),t,{name:"functions/isFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isSuccess"),t,{name:"functions/isSuccess",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/base64"),t,{name:"functions/base64",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getQueryString"),t,{name:"functions/getQueryString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getUrl"),t,{name:"functions/getUrl",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getFormData"),t,{name:"functions/getFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/resolve"),t,{name:"functions/resolve",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"axios/getHeaders"),t,{name:"axios/getHeaders",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"axios/getRequestBody"),t,{name:"axios/getRequestBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"axios/sendRequest"),t,{name:"axios/sendRequest",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"axios/getResponseHeader"),t,{name:"axios/getResponseHeader",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"axios/getResponseBody"),t,{name:"axios/getResponseBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/catchErrorCodes"),t,{name:"functions/catchErrorCodes",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n/**\n * Request method\n * @param config The OpenAPI configuration object\n * @param options The request options from the service\n * @param axiosClient The axios client instance to use\n * @returns CancelablePromise<"+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"response",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.program(3,o,0),data:o,loc:{start:{line:64,column:30},end:{line:64,column:116}}}))?s:"")+">\n * @throws ApiError\n */\nexport const request = <T>(config: OpenAPIConfig, options: ApiRequestOptions, axiosClient: AxiosInstance = axios): CancelablePromise<"+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"response",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.program(3,o,0),data:o,loc:{start:{line:67,column:133},end:{line:67,column:219}}}))?s:"")+"> => {\n\treturn new CancelablePromise(async (resolve, reject, onCancel) => {\n\t\ttry {\n\t\t\tconst url = getUrl(config, options);\n\t\t\tconst formData = getFormData(options);\n\t\t\tconst body = getRequestBody(options);\n\t\t\tconst headers = await getHeaders(config, options);\n\n\t\t\tif (!onCancel.isCancelled) {\n\t\t\t\tlet response = await sendRequest<T>(config, options, url, body, formData, headers, onCancel, axiosClient);\n\n\t\t\t\tfor (const fn of config.interceptors.response._fns) {\n\t\t\t\t\tresponse = await fn(response);\n\t\t\t\t}\n\n\t\t\t\tconst responseBody = getResponseBody(response);\n\t\t\t\tconst responseHeader = getResponseHeader(response, options.responseHeader);\n\n\t\t\t\tconst result: ApiResult = {\n\t\t\t\t\turl,\n\t\t\t\t\tok: isSuccess(response.status),\n\t\t\t\t\tstatus: response.status,\n\t\t\t\t\tstatusText: response.statusText,\n\t\t\t\t\tbody: responseHeader ?? responseBody,\n\t\t\t\t};\n\n\t\t\t\tcatchErrorCodes(options, result);\n\n\t\t\t\tresolve("+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"body",{name:"equals",hash:{},fn:e.program(5,o,0),inverse:e.program(7,o,0),data:o,loc:{start:{line:95,column:12},end:{line:95,column:98}}}))?s:"")+");\n\t\t\t}\n\t\t} catch (error) {\n\t\t\treject(error);\n\t\t}\n\t});\n};"},usePartial:!0,useData:!0},Yn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const sendRequest = async <T>(\n\tconfig: OpenAPIConfig,\n\toptions: ApiRequestOptions,\n\turl: string,\n\tbody: unknown,\n\tformData: FormData | undefined,\n\theaders: Record<string, string>,\n\tonCancel: OnCancel,\n\taxiosClient: AxiosInstance\n): Promise<AxiosResponse<T>> => {\n\tconst controller = new AbortController();\n\n\tlet requestConfig: AxiosRequestConfig = {\n\t\tdata: body ?? formData,\n\t\theaders,\n\t\tmethod: options.method,\n\t\tsignal: controller.signal,\n\t\turl,\n\t\twithCredentials: config.WITH_CREDENTIALS,\n\t};\n\n\tonCancel(() => controller.abort());\n\n\tfor (const fn of config.interceptors.request._fns) {\n\t\trequestConfig = await fn(requestConfig);\n\t}\n\n\ttry {\n\t\treturn await axiosClient.request(requestConfig);\n\t} catch (error) {\n\t\tconst axiosError = error as AxiosError<T>;\n\t\tif (axiosError.response) {\n\t\t\treturn axiosError.response;\n\t\t}\n\t\tthrow error;\n\t}\n};"},useData:!0},Zn={1:function(e,t,n,r,o){return"import type { HttpClient } from '@angular/common/http';\nimport type { Observable } from 'rxjs';\n\nimport type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { OpenAPIConfig } from './OpenAPI';\n"},3:function(e,t,n,r,o){return"import type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { CancelablePromise } from './CancelablePromise';\nimport type { OpenAPIConfig } from './OpenAPI';\n"},5:function(e,t,n,r,o){return"\tconstructor(\n\t\tpublic readonly config: OpenAPIConfig,\n\t\tpublic readonly http: HttpClient,\n\t) {}\n"},7:function(e,t,n,r,o){return"\tconstructor(public readonly config: OpenAPIConfig) {}\n"},9:function(e,t,n,r,o){return"\tpublic abstract request<T>(options: ApiRequestOptions): Observable<T>;\n"},11:function(e,t,n,r,o){return"\tpublic abstract request<T>(options: ApiRequestOptions): CancelablePromise<T>;\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.program(3,o,0),data:o,loc:{start:{line:1,column:0},end:{line:11,column:11}}}))?s:"")+"\nexport abstract class BaseHttpRequest {\n\n"+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(5,o,0),inverse:e.program(7,o,0),data:o,loc:{start:{line:15,column:1},end:{line:22,column:12}}}))?s:"")+"\n"+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(9,o,0),inverse:e.program(11,o,0),data:o,loc:{start:{line:24,column:1},end:{line:28,column:12}}}))?s:"")+"}"},useData:!0},er={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export class CancelError extends Error {\n\tconstructor(message: string) {\n\t\tsuper(message);\n\t\tthis.name = 'CancelError';\n\t}\n\n\tpublic get isCancelled(): boolean {\n\t\treturn true;\n\t}\n}\n\nexport interface OnCancel {\n\treadonly isResolved: boolean;\n\treadonly isRejected: boolean;\n\treadonly isCancelled: boolean;\n\n\t(cancelHandler: () => void): void;\n}\n\nexport class CancelablePromise<T> implements Promise<T> {\n\tprivate _isResolved: boolean;\n\tprivate _isRejected: boolean;\n\tprivate _isCancelled: boolean;\n\treadonly cancelHandlers: (() => void)[];\n\treadonly promise: Promise<T>;\n\tprivate _resolve?: (value: T | PromiseLike<T>) => void;\n\tprivate _reject?: (reason?: unknown) => void;\n\n\tconstructor(\n\t\texecutor: (\n\t\t\tresolve: (value: T | PromiseLike<T>) => void,\n\t\t\treject: (reason?: unknown) => void,\n\t\t\tonCancel: OnCancel\n\t\t) => void\n\t) {\n\t\tthis._isResolved = false;\n\t\tthis._isRejected = false;\n\t\tthis._isCancelled = false;\n\t\tthis.cancelHandlers = [];\n\t\tthis.promise = new Promise<T>((resolve, reject) => {\n\t\t\tthis._resolve = resolve;\n\t\t\tthis._reject = reject;\n\n\t\t\tconst onResolve = (value: T | PromiseLike<T>): void => {\n\t\t\t\tif (this._isResolved || this._isRejected || this._isCancelled) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis._isResolved = true;\n\t\t\t\tif (this._resolve) this._resolve(value);\n\t\t\t};\n\n\t\t\tconst onReject = (reason?: unknown): void => {\n\t\t\t\tif (this._isResolved || this._isRejected || this._isCancelled) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis._isRejected = true;\n\t\t\t\tif (this._reject) this._reject(reason);\n\t\t\t};\n\n\t\t\tconst onCancel = (cancelHandler: () => void): void => {\n\t\t\t\tif (this._isResolved || this._isRejected || this._isCancelled) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.cancelHandlers.push(cancelHandler);\n\t\t\t};\n\n\t\t\tObject.defineProperty(onCancel, 'isResolved', {\n\t\t\t\tget: (): boolean => this._isResolved,\n\t\t\t});\n\n\t\t\tObject.defineProperty(onCancel, 'isRejected', {\n\t\t\t\tget: (): boolean => this._isRejected,\n\t\t\t});\n\n\t\t\tObject.defineProperty(onCancel, 'isCancelled', {\n\t\t\t\tget: (): boolean => this._isCancelled,\n\t\t\t});\n\n\t\t\treturn executor(onResolve, onReject, onCancel as OnCancel);\n\t\t});\n\t}\n\n\tget [Symbol.toStringTag]() {\n\t\treturn \"Cancellable Promise\";\n\t}\n\n\tpublic then<TResult1 = T, TResult2 = never>(\n\t\tonFulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | null,\n\t\tonRejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | null\n\t): Promise<TResult1 | TResult2> {\n\t\treturn this.promise.then(onFulfilled, onRejected);\n\t}\n\n\tpublic catch<TResult = never>(\n\t\tonRejected?: ((reason: unknown) => TResult | PromiseLike<TResult>) | null\n\t): Promise<T | TResult> {\n\t\treturn this.promise.catch(onRejected);\n\t}\n\n\tpublic finally(onFinally?: (() => void) | null): Promise<T> {\n\t\treturn this.promise.finally(onFinally);\n\t}\n\n\tpublic cancel(): void {\n\t\tif (this._isResolved || this._isRejected || this._isCancelled) {\n\t\t\treturn;\n\t\t}\n\t\tthis._isCancelled = true;\n\t\tif (this.cancelHandlers.length) {\n\t\t\ttry {\n\t\t\t\tfor (const cancelHandler of this.cancelHandlers) {\n\t\t\t\t\tcancelHandler();\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tconsole.warn('Cancellation threw an error', error);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthis.cancelHandlers.length = 0;\n\t\tif (this._reject) this._reject(new CancelError('Request aborted'));\n\t}\n\n\tpublic get isCancelled(): boolean {\n\t\treturn this._isCancelled;\n\t}\n}"},useData:!0},tr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getHeaders = async (config: OpenAPIConfig, options: ApiRequestOptions): Promise<Headers> => {\n\tconst [token, username, password, additionalHeaders] = await Promise.all([\n\t\tresolve(options, config.TOKEN),\n\t\tresolve(options, config.USERNAME),\n\t\tresolve(options, config.PASSWORD),\n\t\tresolve(options, config.HEADERS),\n\t]);\n\n\tconst headers = Object.entries({\n\t\tAccept: 'application/json',\n\t\t...additionalHeaders,\n\t\t...options.headers,\n\t})\n\t\t.filter(([, value]) => value !== undefined && value !== null)\n\t\t.reduce((headers, [key, value]) => ({\n\t\t\t...headers,\n\t\t\t[key]: String(value),\n\t\t}), {} as Record<string, string>);\n\n\tif (isStringWithValue(token)) {\n\t\theaders['Authorization'] = `Bearer ${token}`;\n\t}\n\n\tif (isStringWithValue(username) && isStringWithValue(password)) {\n\t\tconst credentials = base64(`${username}:${password}`);\n\t\theaders['Authorization'] = `Basic ${credentials}`;\n\t}\n\n\tif (options.body !== undefined) {\n\t\tif (options.mediaType) {\n\t\t\theaders['Content-Type'] = options.mediaType;\n\t\t} else if (isBlob(options.body)) {\n\t\t\theaders['Content-Type'] = options.body.type || 'application/octet-stream';\n\t\t} else if (isString(options.body)) {\n\t\t\theaders['Content-Type'] = 'text/plain';\n\t\t} else if (!isFormData(options.body)) {\n\t\t\theaders['Content-Type'] = 'application/json';\n\t\t}\n\t}\n\n\treturn new Headers(headers);\n};"},useData:!0},nr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getRequestBody = (options: ApiRequestOptions): unknown => {\n\tif (options.body !== undefined) {\n\t\tif (options.mediaType?.includes('application/json') || options.mediaType?.includes('+json')) {\n\t\t\treturn JSON.stringify(options.body);\n\t\t} else if (isString(options.body) || isBlob(options.body) || isFormData(options.body)) {\n\t\t\treturn options.body;\n\t\t} else {\n\t\t\treturn JSON.stringify(options.body);\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},rr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseBody = async (response: Response): Promise<unknown> => {\n\tif (response.status !== 204) {\n\t\ttry {\n\t\t\tconst contentType = response.headers.get('Content-Type');\n\t\t\tif (contentType) {\n\t\t\t\tconst binaryTypes = ['application/octet-stream', 'application/pdf', 'application/zip', 'audio/', 'image/', 'video/'];\n\t\t\t\tif (contentType.includes('application/json') || contentType.includes('+json')) {\n\t\t\t\t\treturn await response.json();\n\t\t\t\t} else if (binaryTypes.some(type => contentType.includes(type))) {\n\t\t\t\t\treturn await response.blob();\n\t\t\t\t} else if (contentType.includes('multipart/form-data')) {\n\t\t\t\t\treturn await response.formData();\n\t\t\t\t} else if (contentType.includes('text/')) {\n\t\t\t\t\treturn await response.text();\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error(error);\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},or={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseHeader = (response: Response, responseHeader?: string): string | undefined => {\n\tif (responseHeader) {\n\t\tconst content = response.headers.get(responseHeader);\n\t\tif (isString(content)) {\n\t\t\treturn content;\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},sr={1:function(e,t,n,r,o){return"import fetch, { FormData, Headers } from 'node-fetch';\nimport type { RequestInit, Response } from 'node-fetch';\n\n"},3:function(e,t,n,r,o){return"ApiResult<T>"},5:function(e,t,n,r,o){return"T"},7:function(e,t,n,r,o){return"result.body"},9:function(e,t,n,r,o){return"result"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"node",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.noop,data:o,loc:{start:{line:1,column:0},end:{line:5,column:11}}}))?s:"")+"import { ApiError } from './ApiError';\nimport type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { ApiResult } from './ApiResult';\nimport { CancelablePromise } from './CancelablePromise';\nimport type { OnCancel } from './CancelablePromise';\nimport type { OpenAPIConfig } from './OpenAPI';\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isString"),t,{name:"functions/isString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isStringWithValue"),t,{name:"functions/isStringWithValue",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isBlob"),t,{name:"functions/isBlob",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isFormData"),t,{name:"functions/isFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/base64"),t,{name:"functions/base64",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getQueryString"),t,{name:"functions/getQueryString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getUrl"),t,{name:"functions/getUrl",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getFormData"),t,{name:"functions/getFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/resolve"),t,{name:"functions/resolve",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"fetch/getHeaders"),t,{name:"fetch/getHeaders",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"fetch/getRequestBody"),t,{name:"fetch/getRequestBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"fetch/sendRequest"),t,{name:"fetch/sendRequest",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"fetch/getResponseHeader"),t,{name:"fetch/getResponseHeader",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"fetch/getResponseBody"),t,{name:"fetch/getResponseBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/catchErrorCodes"),t,{name:"functions/catchErrorCodes",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n/**\n * Request method\n * @param config The OpenAPI configuration object\n * @param options The request options from the service\n * @returns CancelablePromise<"+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"response",{name:"equals",hash:{},fn:e.program(3,o,0),inverse:e.program(5,o,0),data:o,loc:{start:{line:62,column:30},end:{line:62,column:116}}}))?s:"")+">\n * @throws ApiError\n */\nexport const request = <T>(config: OpenAPIConfig, options: ApiRequestOptions): CancelablePromise<"+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"response",{name:"equals",hash:{},fn:e.program(3,o,0),inverse:e.program(5,o,0),data:o,loc:{start:{line:65,column:97},end:{line:65,column:183}}}))?s:"")+"> => {\n\treturn new CancelablePromise(async (resolve, reject, onCancel) => {\n\t\ttry {\n\t\t\tconst url = getUrl(config, options);\n\t\t\tconst formData = getFormData(options);\n\t\t\tconst body = getRequestBody(options);\n\t\t\tconst headers = await getHeaders(config, options);\n\n\t\t\tif (!onCancel.isCancelled) {\n\t\t\t\tlet response = await sendRequest(config, options, url, body, formData, headers, onCancel);\n\n\t\t\t\tfor (const fn of config.interceptors.response._fns) {\n\t\t\t\t\tresponse = await fn(response);\n\t\t\t\t}\n\n\t\t\t\tconst responseBody = await getResponseBody(response);\n\t\t\t\tconst responseHeader = getResponseHeader(response, options.responseHeader);\n\n\t\t\t\tconst result: ApiResult = {\n\t\t\t\t\turl,\n\t\t\t\t\tok: response.ok,\n\t\t\t\t\tstatus: response.status,\n\t\t\t\t\tstatusText: response.statusText,\n\t\t\t\t\tbody: responseHeader ?? responseBody,\n\t\t\t\t};\n\n\t\t\t\tcatchErrorCodes(options, result);\n\n\t\t\t\tresolve("+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"body",{name:"equals",hash:{},fn:e.program(7,o,0),inverse:e.program(9,o,0),data:o,loc:{start:{line:93,column:12},end:{line:93,column:98}}}))?s:"")+");\n\t\t\t}\n\t\t} catch (error) {\n\t\t\treject(error);\n\t\t}\n\t});\n};"},usePartial:!0,useData:!0},ar={1:function(e,t,n,r,o){return"\tif (config.WITH_CREDENTIALS) {\n\t\trequest.credentials = config.CREDENTIALS;\n\t}\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"export const sendRequest = async (\n\tconfig: OpenAPIConfig,\n\toptions: ApiRequestOptions,\n\turl: string,\n\tbody: any,\n\tformData: FormData | undefined,\n\theaders: Headers,\n\tonCancel: OnCancel\n): Promise<Response> => {\n\tconst controller = new AbortController();\n\n\tlet request: RequestInit = {\n\t\theaders,\n\t\tbody: body ?? formData,\n\t\tmethod: options.method,\n\t\tsignal: controller.signal,\n\t};\n\n"+(null!=(s=a(n,"equals").call(null!=t?t:e.nullContext||{},a(a(a(o,"root"),"$config"),"client"),"fetch",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.noop,data:o,loc:{start:{line:19,column:1},end:{line:23,column:12}}}))?s:"")+"\n\tfor (const fn of config.interceptors.request._fns) {\n\t\trequest = await fn(request);\n\t}\n\n\tonCancel(() => controller.abort());\n\n\treturn await fetch(url, request);\n};"},useData:!0},ir={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const base64 = (str: string): string => {\n\ttry {\n\t\treturn btoa(str);\n\t} catch (err) {\n\t\t// @ts-ignore\n\t\treturn Buffer.from(str).toString('base64');\n\t}\n};"},useData:!0},lr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const catchErrorCodes = (options: ApiRequestOptions, result: ApiResult): void => {\n\tconst errors: Record<number, string> = {\n\t\t400: 'Bad Request',\n\t\t401: 'Unauthorized',\n\t\t402: 'Payment Required',\n\t\t403: 'Forbidden',\n\t\t404: 'Not Found',\n\t\t405: 'Method Not Allowed',\n\t\t406: 'Not Acceptable',\n\t\t407: 'Proxy Authentication Required',\n\t\t408: 'Request Timeout',\n\t\t409: 'Conflict',\n\t\t410: 'Gone',\n\t\t411: 'Length Required',\n\t\t412: 'Precondition Failed',\n\t\t413: 'Payload Too Large',\n\t\t414: 'URI Too Long',\n\t\t415: 'Unsupported Media Type',\n\t\t416: 'Range Not Satisfiable',\n\t\t417: 'Expectation Failed',\n\t\t418: 'Im a teapot',\n\t\t421: 'Misdirected Request',\n\t\t422: 'Unprocessable Content',\n\t\t423: 'Locked',\n\t\t424: 'Failed Dependency',\n\t\t425: 'Too Early',\n\t\t426: 'Upgrade Required',\n\t\t428: 'Precondition Required',\n\t\t429: 'Too Many Requests',\n\t\t431: 'Request Header Fields Too Large',\n\t\t451: 'Unavailable For Legal Reasons',\n\t\t500: 'Internal Server Error',\n\t\t501: 'Not Implemented',\n\t\t502: 'Bad Gateway',\n\t\t503: 'Service Unavailable',\n\t\t504: 'Gateway Timeout',\n\t\t505: 'HTTP Version Not Supported',\n\t\t506: 'Variant Also Negotiates',\n\t\t507: 'Insufficient Storage',\n\t\t508: 'Loop Detected',\n\t\t510: 'Not Extended',\n\t\t511: 'Network Authentication Required',\n\t\t...options.errors,\n\t}\n\n\tconst error = errors[result.status];\n\tif (error) {\n\t\tthrow new ApiError(options, result, error);\n\t}\n\n\tif (!result.ok) {\n\t\tconst errorStatus = result.status ?? 'unknown';\n\t\tconst errorStatusText = result.statusText ?? 'unknown';\n\t\tconst errorBody = (() => {\n\t\t\ttry {\n\t\t\t\treturn JSON.stringify(result.body, null, 2);\n\t\t\t} catch (e) {\n\t\t\t\treturn undefined;\n\t\t\t}\n\t\t})();\n\n\t\tthrow new ApiError(options, result,\n\t\t\t`Generic Error: status: ${errorStatus}; status text: ${errorStatusText}; body: ${errorBody}`\n\t\t);\n\t}\n};"},useData:!0},pr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getFormData = (options: ApiRequestOptions): FormData | undefined => {\n\tif (options.formData) {\n\t\tconst formData = new FormData();\n\n\t\tconst process = (key: string, value: unknown) => {\n\t\t\tif (isString(value) || isBlob(value)) {\n\t\t\t\tformData.append(key, value);\n\t\t\t} else {\n\t\t\t\tformData.append(key, JSON.stringify(value));\n\t\t\t}\n\t\t};\n\n\t\tObject.entries(options.formData)\n\t\t\t.filter(([, value]) => value !== undefined && value !== null)\n\t\t\t.forEach(([key, value]) => {\n\t\t\t\tif (Array.isArray(value)) {\n\t\t\t\t\tvalue.forEach(v => process(key, v));\n\t\t\t\t} else {\n\t\t\t\t\tprocess(key, value);\n\t\t\t\t}\n\t\t\t});\n\n\t\treturn formData;\n\t}\n\treturn undefined;\n};"},useData:!0},cr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getQueryString = (params: Record<string, unknown>): string => {\n\tconst qs: string[] = [];\n\n\tconst append = (key: string, value: unknown) => {\n\t\tqs.push(`${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`);\n\t};\n\n\tconst encodePair = (key: string, value: unknown) => {\n\t\tif (value === undefined || value === null) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (value instanceof Date) {\n\t\t\tappend(key, value.toISOString());\n\t\t} else if (Array.isArray(value)) {\n\t\t\tvalue.forEach(v => encodePair(key, v));\n\t\t} else if (typeof value === 'object') {\n\t\t\tObject.entries(value).forEach(([k, v]) => encodePair(`${key}[${k}]`, v));\n\t\t} else {\n\t\t\tappend(key, value);\n\t\t}\n\t};\n\n\tObject.entries(params).forEach(([key, value]) => encodePair(key, value));\n\n\treturn qs.length ? `?${qs.join('&')}` : '';\n};"},useData:!0},ur={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"const getUrl = (config: OpenAPIConfig, options: ApiRequestOptions): string => {\n\tconst encoder = config.ENCODE_PATH || encodeURI;\n\n\tconst path = options.url\n\t\t.replace('{api-version}', config.VERSION)\n\t\t.replace(/{(.*?)}/g, (substring: string, group: string) => {\n\t\t\tif (options.path?.hasOwnProperty(group)) {\n\t\t\t\treturn encoder(String(options.path[group]));\n\t\t\t}\n\t\t\treturn substring;\n\t\t});\n\n\tconst url = config.BASE + path;\n\treturn options.query ? url + getQueryString(options.query) : url;\n};"},useData:!0},mr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const isBlob = (value: any): value is Blob => {\n\treturn value instanceof Blob;\n};"},useData:!0},dr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const isFormData = (value: unknown): value is FormData => {\n\treturn value instanceof FormData;\n};"},useData:!0},fr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const isString = (value: unknown): value is string => {\n\treturn typeof value === 'string';\n};"},useData:!0},hr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const isStringWithValue = (value: unknown): value is string => {\n\treturn isString(value) && value !== '';\n};"},useData:!0},yr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const isSuccess = (status: number): boolean => {\n\treturn status >= 200 && status < 300;\n};"},useData:!0},gr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"type Resolver<T> = (options: ApiRequestOptions) => Promise<T>;\n\nexport const resolve = async <T>(options: ApiRequestOptions, resolver?: T | Resolver<T>): Promise<T | undefined> => {\n\tif (typeof resolver === 'function') {\n\t\treturn (resolver as Resolver<T>)(options);\n\t}\n\treturn resolver;\n};"},useData:!0},vr={1:function(e,t,n,r,o){return"import { Inject, Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport type { Observable } from 'rxjs';\n\nimport type { ApiRequestOptions } from './ApiRequestOptions';\nimport { BaseHttpRequest } from './BaseHttpRequest';\nimport type { OpenAPIConfig } from './OpenAPI';\nimport { OpenAPI } from './OpenAPI';\nimport { request as __request } from './request';\n"},3:function(e,t,n,r,o){return"import type { ApiRequestOptions } from './ApiRequestOptions';\nimport { BaseHttpRequest } from './BaseHttpRequest';\nimport type { CancelablePromise } from './CancelablePromise';\nimport type { OpenAPIConfig } from './OpenAPI';\nimport { request as __request } from './request';\n"},5:function(e,t,n,r,o){return"@Injectable()\n"},7:function(e,t,n,r,o){return"\tconstructor(\n\t\t@Inject(OpenAPI)\n\t\tconfig: OpenAPIConfig,\n\t\thttp: HttpClient,\n\t) {\n\t\tsuper(config, http);\n\t}\n"},9:function(e,t,n,r,o){return"\tconstructor(config: OpenAPIConfig) {\n\t\tsuper(config);\n\t}\n"},11:function(e,t,n,r,o){return"\t/**\n\t * Request method\n\t * @param options The request options from the service\n\t * @returns Observable<T>\n\t * @throws ApiError\n\t */\n\tpublic override request<T>(options: ApiRequestOptions): Observable<T> {\n\t\treturn __request(this.config, this.http, options);\n\t}\n"},13:function(e,t,n,r,o){return"\t/**\n\t * Request method\n\t * @param options The request options from the service\n\t * @returns CancelablePromise<T>\n\t * @throws ApiError\n\t */\n\tpublic override request<T>(options: ApiRequestOptions): CancelablePromise<T> {\n\t\treturn __request(this.config, options);\n\t}\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.program(3,o,0),data:o,loc:{start:{line:1,column:0},end:{line:17,column:11}}}))?s:"")+"\n"+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(5,o,0),inverse:e.noop,data:o,loc:{start:{line:19,column:0},end:{line:21,column:11}}}))?s:"")+"export class "+(null!=(s=e.lambda(e.strict(t,"httpRequest",{start:{line:22,column:15},end:{line:22,column:26}}),t))?s:"")+" extends BaseHttpRequest {\n\n"+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(7,o,0),inverse:e.program(9,o,0),data:o,loc:{start:{line:24,column:1},end:{line:36,column:12}}}))?s:"")+"\n"+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(11,o,0),inverse:e.program(13,o,0),data:o,loc:{start:{line:38,column:1},end:{line:58,column:12}}}))?s:"")+"}"},useData:!0},br={1:function(e,t,n,r,o){return"import type { HttpResponse } from '@angular/common/http';\n"},3:function(e,t,n,r,o){return"import type { AxiosRequestConfig, AxiosResponse } from 'axios';\n"},5:function(e,t,n,r,o){return"import type { RequestInit, Response } from 'node-fetch';\n"},7:function(e,t,n,r,o){return"\t\tresponse: Interceptors<HttpResponse<any>>;\n"},9:function(e,t,n,r,o){return"\t\trequest: Interceptors<AxiosRequestConfig>;\n\t\tresponse: Interceptors<AxiosResponse>;\n"},11:function(e,t,n,r,o){return"\t\trequest: Interceptors<RequestInit>;\n\t\tresponse: Interceptors<Response>;\n"},13:function(e,t,n,r,o){return"\t\trequest: Interceptors<XMLHttpRequest>;\n\t\tresponse: Interceptors<XMLHttpRequest>;\n"},15:function(e,t,n,r,o){return"\t\trequest: new Interceptors(),\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.strict,l=e.lambda,p=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.noop,data:o,loc:{start:{line:1,column:0},end:{line:3,column:11}}}))?s:"")+(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"axios",{name:"equals",hash:{},fn:e.program(3,o,0),inverse:e.noop,data:o,loc:{start:{line:4,column:0},end:{line:6,column:11}}}))?s:"")+(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"node",{name:"equals",hash:{},fn:e.program(5,o,0),inverse:e.noop,data:o,loc:{start:{line:7,column:0},end:{line:9,column:11}}}))?s:"")+"import type { ApiRequestOptions } from './ApiRequestOptions';\n\ntype Headers = Record<string, string>;\ntype Middleware<T> = (value: T) => T | Promise<T>;\ntype Resolver<T> = (options: ApiRequestOptions) => Promise<T>;\n\nexport class Interceptors<T> {\n _fns: Middleware<T>[];\n\n constructor() {\n this._fns = [];\n }\n\n eject(fn: Middleware<T>) {\n const index = this._fns.indexOf(fn);\n if (index !== -1) {\n this._fns = [...this._fns.slice(0, index), ...this._fns.slice(index + 1)];\n }\n }\n\n use(fn: Middleware<T>) {\n this._fns = [...this._fns, fn];\n }\n}\n\nexport type OpenAPIConfig = {\n\tBASE: string;\n\tCREDENTIALS: 'include' | 'omit' | 'same-origin';\n\tENCODE_PATH?: ((path: string) => string) | undefined;\n\tHEADERS?: Headers | Resolver<Headers> | undefined;\n\tPASSWORD?: string | Resolver<string> | undefined;\n\tTOKEN?: string | Resolver<string> | undefined;\n\tUSERNAME?: string | Resolver<string> | undefined;\n\tVERSION: string;\n\tWITH_CREDENTIALS: boolean;\n\tinterceptors: {\n"+(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(7,o,0),inverse:e.noop,data:o,loc:{start:{line:46,column:2},end:{line:48,column:13}}}))?s:"")+(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"axios",{name:"equals",hash:{},fn:e.program(9,o,0),inverse:e.noop,data:o,loc:{start:{line:49,column:2},end:{line:52,column:13}}}))?s:"")+(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"fetch",{name:"equals",hash:{},fn:e.program(11,o,0),inverse:e.noop,data:o,loc:{start:{line:53,column:2},end:{line:56,column:13}}}))?s:"")+(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"node",{name:"equals",hash:{},fn:e.program(11,o,0),inverse:e.noop,data:o,loc:{start:{line:57,column:2},end:{line:60,column:13}}}))?s:"")+(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"xhr",{name:"equals",hash:{},fn:e.program(13,o,0),inverse:e.noop,data:o,loc:{start:{line:61,column:2},end:{line:64,column:13}}}))?s:"")+"\t};\n};\n\nexport const OpenAPI: OpenAPIConfig = {\n\tBASE: '"+(null!=(s=l(i(t,"server",{start:{line:69,column:11},end:{line:69,column:17}}),t))?s:"")+"',\n\tCREDENTIALS: 'include',\n\tENCODE_PATH: undefined,\n\tHEADERS: undefined,\n\tPASSWORD: undefined,\n\tTOKEN: undefined,\n\tUSERNAME: undefined,\n\tVERSION: '"+(null!=(s=l(i(t,"version",{start:{line:76,column:14},end:{line:76,column:21}}),t))?s:"")+"',\n\tWITH_CREDENTIALS: false,\n\tinterceptors: {\n"+(null!=(s=p(n,"notEquals").call(a,p(p(p(o,"root"),"$config"),"client"),"angular",{name:"notEquals",hash:{},fn:e.program(15,o,0),inverse:e.noop,data:o,loc:{start:{line:79,column:2},end:{line:81,column:16}}}))?s:"")+"\t\tresponse: new Interceptors(),\n\t},\n};"},useData:!0},xr={1:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(s=e.invokePartial(a(r,"angular/request"),t,{name:"angular/request",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:""},3:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(s=e.invokePartial(a(r,"axios/request"),t,{name:"axios/request",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:""},5:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(s=e.invokePartial(a(r,"fetch/request"),t,{name:"fetch/request",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:""},7:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(s=e.invokePartial(a(r,"xhr/request"),t,{name:"xhr/request",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:""},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.noop,data:o,loc:{start:{line:1,column:0},end:{line:1,column:75}}}))?s:"")+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"axios",{name:"equals",hash:{},fn:e.program(3,o,0),inverse:e.noop,data:o,loc:{start:{line:2,column:0},end:{line:2,column:71}}}))?s:"")+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"fetch",{name:"equals",hash:{},fn:e.program(5,o,0),inverse:e.noop,data:o,loc:{start:{line:3,column:0},end:{line:3,column:71}}}))?s:"")+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"node",{name:"equals",hash:{},fn:e.program(5,o,0),inverse:e.noop,data:o,loc:{start:{line:4,column:0},end:{line:4,column:70}}}))?s:"")+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"xhr",{name:"equals",hash:{},fn:e.program(7,o,0),inverse:e.noop,data:o,loc:{start:{line:5,column:0},end:{line:5,column:67}}}))?s:"")},usePartial:!0,useData:!0},Rr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getHeaders = async (config: OpenAPIConfig, options: ApiRequestOptions): Promise<Headers> => {\n\tconst [token, username, password, additionalHeaders] = await Promise.all([\n\t\tresolve(options, config.TOKEN),\n\t\tresolve(options, config.USERNAME),\n\t\tresolve(options, config.PASSWORD),\n\t\tresolve(options, config.HEADERS),\n\t]);\n\n\tconst headers = Object.entries({\n\t\tAccept: 'application/json',\n\t\t...additionalHeaders,\n\t\t...options.headers,\n\t})\n\t\t.filter(([, value]) => value !== undefined && value !== null)\n\t\t.reduce((headers, [key, value]) => ({\n\t\t\t...headers,\n\t\t\t[key]: String(value),\n\t\t}), {} as Record<string, string>);\n\n\tif (isStringWithValue(token)) {\n\t\theaders['Authorization'] = `Bearer ${token}`;\n\t}\n\n\tif (isStringWithValue(username) && isStringWithValue(password)) {\n\t\tconst credentials = base64(`${username}:${password}`);\n\t\theaders['Authorization'] = `Basic ${credentials}`;\n\t}\n\n\tif (options.body !== undefined) {\n\t\tif (options.mediaType) {\n\t\t\theaders['Content-Type'] = options.mediaType;\n\t\t} else if (isBlob(options.body)) {\n\t\t\theaders['Content-Type'] = options.body.type || 'application/octet-stream';\n\t\t} else if (isString(options.body)) {\n\t\t\theaders['Content-Type'] = 'text/plain';\n\t\t} else if (!isFormData(options.body)) {\n\t\t\theaders['Content-Type'] = 'application/json';\n\t\t}\n\t}\n\n\treturn new Headers(headers);\n};"},useData:!0},Pr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getRequestBody = (options: ApiRequestOptions): unknown => {\n\tif (options.body !== undefined) {\n\t\tif (options.mediaType?.includes('application/json') || options.mediaType?.includes('+json')) {\n\t\t\treturn JSON.stringify(options.body);\n\t\t} else if (isString(options.body) || isBlob(options.body) || isFormData(options.body)) {\n\t\t\treturn options.body;\n\t\t} else {\n\t\t\treturn JSON.stringify(options.body);\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},Or={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseBody = (xhr: XMLHttpRequest): unknown => {\n\tif (xhr.status !== 204) {\n\t\ttry {\n\t\t\tconst contentType = xhr.getResponseHeader('Content-Type');\n\t\t\tif (contentType) {\n\t\t\t\tif (contentType.includes('application/json') || contentType.includes('+json')) {\n\t\t\t\t\treturn JSON.parse(xhr.responseText);\n\t\t\t\t} else {\n\t\t\t\t\treturn xhr.responseText;\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error(error);\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},qr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseHeader = (xhr: XMLHttpRequest, responseHeader?: string): string | undefined => {\n\tif (responseHeader) {\n\t\tconst content = xhr.getResponseHeader(responseHeader);\n\t\tif (isString(content)) {\n\t\t\treturn content;\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},wr={1:function(e,t,n,r,o){return"ApiResult<T>"},3:function(e,t,n,r,o){return"T"},5:function(e,t,n,r,o){return"result.body"},7:function(e,t,n,r,o){return"result"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"import { ApiError } from './ApiError';\nimport type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { ApiResult } from './ApiResult';\nimport { CancelablePromise } from './CancelablePromise';\nimport type { OnCancel } from './CancelablePromise';\nimport type { OpenAPIConfig } from './OpenAPI';\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isString"),t,{name:"functions/isString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isStringWithValue"),t,{name:"functions/isStringWithValue",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isBlob"),t,{name:"functions/isBlob",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isFormData"),t,{name:"functions/isFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isSuccess"),t,{name:"functions/isSuccess",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/base64"),t,{name:"functions/base64",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getQueryString"),t,{name:"functions/getQueryString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getUrl"),t,{name:"functions/getUrl",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getFormData"),t,{name:"functions/getFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/resolve"),t,{name:"functions/resolve",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"fetch/getHeaders"),t,{name:"fetch/getHeaders",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"xhr/getRequestBody"),t,{name:"xhr/getRequestBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"xhr/sendRequest"),t,{name:"xhr/sendRequest",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"xhr/getResponseHeader"),t,{name:"xhr/getResponseHeader",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"xhr/getResponseBody"),t,{name:"xhr/getResponseBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/catchErrorCodes"),t,{name:"functions/catchErrorCodes",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n/**\n * Request method\n * @param config The OpenAPI configuration object\n * @param options The request options from the service\n * @returns CancelablePromise<"+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"response",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.program(3,o,0),data:o,loc:{start:{line:60,column:30},end:{line:60,column:116}}}))?s:"")+">\n * @throws ApiError\n */\nexport const request = <T>(config: OpenAPIConfig, options: ApiRequestOptions): CancelablePromise<"+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"response",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.program(3,o,0),data:o,loc:{start:{line:63,column:97},end:{line:63,column:183}}}))?s:"")+"> => {\n\treturn new CancelablePromise(async (resolve, reject, onCancel) => {\n\t\ttry {\n\t\t\tconst url = getUrl(config, options);\n\t\t\tconst formData = getFormData(options);\n\t\t\tconst body = getRequestBody(options);\n\t\t\tconst headers = await getHeaders(config, options);\n\n\t\t\tif (!onCancel.isCancelled) {\n\t\t\t\tlet response = await sendRequest(config, options, url, body, formData, headers, onCancel);\n\n\t\t\t\tfor (const fn of config.interceptors.response._fns) {\n\t\t\t\t\tresponse = await fn(response);\n\t\t\t\t}\n\n\t\t\t\tconst responseBody = getResponseBody(response);\n\t\t\t\tconst responseHeader = getResponseHeader(response, options.responseHeader);\n\n\t\t\t\tconst result: ApiResult = {\n\t\t\t\t\turl,\n\t\t\t\t\tok: isSuccess(response.status),\n\t\t\t\t\tstatus: response.status,\n\t\t\t\t\tstatusText: response.statusText,\n\t\t\t\t\tbody: responseHeader ?? responseBody,\n\t\t\t\t};\n\n\t\t\t\tcatchErrorCodes(options, result);\n\n\t\t\t\tresolve("+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"body",{name:"equals",hash:{},fn:e.program(5,o,0),inverse:e.program(7,o,0),data:o,loc:{start:{line:91,column:12},end:{line:91,column:98}}}))?s:"")+");\n\t\t\t}\n\t\t} catch (error) {\n\t\t\treject(error);\n\t\t}\n\t});\n};"},usePartial:!0,useData:!0},Ar={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const sendRequest = async (\n\tconfig: OpenAPIConfig,\n\toptions: ApiRequestOptions,\n\turl: string,\n\tbody: any,\n\tformData: FormData | undefined,\n\theaders: Headers,\n\tonCancel: OnCancel\n): Promise<XMLHttpRequest> => {\n\tlet xhr = new XMLHttpRequest();\n\txhr.open(options.method, url, true);\n\txhr.withCredentials = config.WITH_CREDENTIALS;\n\n\theaders.forEach((value, key) => {\n\t\txhr.setRequestHeader(key, value);\n\t});\n\n\treturn new Promise<XMLHttpRequest>(async (resolve, reject) => {\n\t\txhr.onload = () => resolve(xhr);\n\t\txhr.onabort = () => reject(new Error('Request aborted'));\n\t\txhr.onerror = () => reject(new Error('Network error'));\n\n\t\tfor (const fn of config.interceptors.request._fns) {\n\t\t\txhr = await fn(xhr);\n\t\t}\n\n\t\txhr.send(body ?? formData);\n\n\t\tonCancel(() => xhr.abort());\n\t});\n};"},useData:!0};const kr=e=>{const t=Le();return t.services.name?t.services.name.replace("{{name}}",e):e},Er=e=>"PascalCase"===Le().types.name?me(e,{pascalCase:!0}):e,Cr=()=>{Dn.registerHelper("camelCase",me),Dn.registerHelper("equals",(function(e,t,n){return e===t?n.fn(this):n.inverse(this)})),Dn.registerHelper("ifdef",(function(...e){const t=e.pop();return e.every((e=>!e))?t.inverse(this):t.fn(this)})),Dn.registerHelper("notEquals",(function(e,t,n){return e!==t?n.fn(this):n.inverse(this)})),Dn.registerHelper("transformServiceName",kr)};function Tr(e,t){const n=e.toLocaleLowerCase(),r=t.toLocaleLowerCase();return n.localeCompare(r,"en")}const $r=(e,t)=>Tr(e.name,t.name);function Ir(e){return e.sort($r)}function Sr(e){return{...e,enumNames:[],models:e.models.map((e=>function(e){return{...e,enum:Hr(e),enums:_r(e),imports:Dr(e)}}(e))),serviceTypes:[],services:e.services.map((e=>function(e){const t={...e};return t.operations=function(e){const t=new Map;return e.operations.map((e=>{const n={...e};n.imports.push(...n.parameters.flatMap((e=>e.imports))),n.imports.push(...n.results.flatMap((e=>e.imports)));const r=n.name,o=t.get(r)||0;return o>0&&(n.name=`${r}${o}`),t.set(r,o+1),n}))}(t),t.operations.forEach((e=>{t.imports.push(...e.imports)})),t.imports=function(e){return e.imports.filter(qe).sort(Tr)}(t),t}(e)))}}function Hr(e){return e.enum.filter(((e,t,n)=>n.findIndex((t=>t.value===e.value))===t))}function _r(e){return e.enums.filter(((e,t,n)=>n.findIndex((t=>t.name===e.name))===t))}function Dr(e){return e.imports.filter(qe).sort(Tr).filter((t=>e.name!==t))}const Nr={newLine:l.NewLineKind.LineFeed,scriptKind:l.ScriptKind.TS,scriptTarget:l.ScriptTarget.ES2015,useSingleQuotes:!0},jr=l.createPrinter({newLine:Nr.newLine}),Mr=e=>l.createSourceFile("",e,Nr.scriptTarget,void 0,Nr.scriptKind),Lr=Mr("");function Br({node:e,unescape:t=!1}){const n=jr.printNode(l.EmitHint.Unspecified,e,Lr);if(!t)return n;try{return n.replace(/\\u([0-9a-fA-F]{4})/g,((e,t)=>String.fromCharCode(Number.parseInt(t,16))))}catch{return Le().debug&&console.warn("Could not decode value:",n),n}}const Fr=e=>e?l.factory.createTrue():l.factory.createFalse(),Wr=(e,t,n)=>{const r=l.factory.createIdentifier(encodeURIComponent(e));return l.factory.createExportSpecifier(t??!1,n?r:void 0,n?l.factory.createIdentifier(encodeURIComponent(n)):r)},Ur=({alias:e,isTypeOnly:t=!1,name:n})=>{const r=l.factory.createIdentifier(n);if(e){const n=l.factory.createIdentifier(e);return l.factory.createImportSpecifier(t,r,n)}return l.factory.createImportSpecifier(t,void 0,r)},Vr=e=>e<0?l.factory.createPrefixUnaryExpression(l.SyntaxKind.MinusToken,l.factory.createNumericLiteral(Math.abs(e))):l.factory.createNumericLiteral(e),Kr=(e,t=!1)=>{let n=e;t&&(n=Ce(n));const r=n.includes("'")&&n.includes('"'),o=n.includes("\n"),s=n.startsWith("`"),a=n.startsWith("\\`")&&n.endsWith("\\`");return(o||r||s)&&!a&&(n=`\`${n.replace(/(?<!\\)`/g,"\\`").replace(/\${/g,"\\${")}\``),n.startsWith("`")?l.factory.createIdentifier(n):l.factory.createStringLiteral(n,!n.includes("'")&&Nr.useSingleQuotes)},Qr=e=>void 0!==e,Jr=(e,t)=>{const n=t.filter(Boolean);if(!n.length)return;const r=n.map(((e,t)=>l.factory.createJSDocText(`${e}${t!==n.length?"\n":""}`))),o=Br({node:l.factory.createJSDocComment(l.factory.createNodeArray(r)),unescape:!0}).replace("/*","").replace("* */","");l.addSyntheticLeadingComment(e,l.SyntaxKind.MultiLineCommentTrivia,o,!0)},zr=(e,t)=>l.isTypeNode(e)?e:"number"==typeof e?l.factory.createLiteralTypeNode(Vr(e)):l.factory.createTypeReferenceNode(e,t?.map((e=>zr(e)))),Gr=(e,t=!1)=>{const n=l.factory.createTypeLiteralNode(e.map((e=>{const t=l.factory.createPropertySignature(e.isReadOnly?[l.factory.createModifier(l.SyntaxKind.ReadonlyKeyword)]:void 0,e.name,e.isRequired?void 0:l.factory.createToken(l.SyntaxKind.QuestionToken),zr(e.type));return e.comment&&Jr(t,e.comment),t})));return t?l.factory.createUnionTypeNode([n,l.factory.createTypeReferenceNode("null")]):n},Xr=(e,t=!1)=>{const n=e.map((e=>zr(e)));return t&&n.push(l.factory.createTypeReferenceNode("null")),l.factory.createUnionTypeNode(n)},Yr=({identifiers:e=[],shorthand:t=!1,unescape:n=!1,value:r})=>null===r?l.factory.createNull():Array.isArray(r)?to({arr:r}):"object"==typeof r?no({identifiers:e,obj:r,shorthand:t}):"number"==typeof r?Vr(r):"boolean"==typeof r?Fr(r):"string"==typeof r?Kr(r,n):void 0,Zr=e=>{const t="public"===e?l.SyntaxKind.PublicKeyword:"protected"===e?l.SyntaxKind.ProtectedKeyword:"private"===e?l.SyntaxKind.PrivateKeyword:void 0,n=[];return t&&n.push(l.factory.createModifier(t)),n},eo=e=>e.map((e=>{const t=Zr(e.accessLevel);return e.isReadOnly&&t.push(l.factory.createModifier(l.SyntaxKind.ReadonlyKeyword)),l.factory.createParameterDeclaration(t,void 0,l.factory.createIdentifier(e.name),void 0===e.isRequired||e.isRequired?void 0:l.factory.createToken(l.SyntaxKind.QuestionToken),void 0!==e.type?zr(e.type):void 0,void 0!==e.default?Yr({value:e.default}):void 0)})),to=({arr:e,multiLine:t=!1})=>l.factory.createArrayLiteralExpression(e.map((e=>Yr({value:e}))).filter(Qr),!Array.isArray(e[0])&&"object"==typeof e[0]||t),no=({comments:e,identifiers:t=[],leadingComment:n,multiLine:r=!0,obj:o,shorthand:s=!1,unescape:a=!1})=>{const i=Array.isArray(o)?o.map((n=>{let r,o=!1;if("key"in n){let{key:e}=n;o=e===n.value,e.match(/^[0-9]/)&&e.match(/\D+/g)&&!e.startsWith("'")&&!e.endsWith("'")&&(e=`'${e}'`),!e.match(/\W/g)||e.startsWith("'")||e.endsWith("'")||(e=`'${e}'`)}if("spread"in n)r=l.factory.createSpreadAssignment(l.factory.createIdentifier(n.spread));else if(s&&o)r=l.factory.createShorthandPropertyAssignment(n.value);else{let e=Yr({identifiers:t.includes(n.key)?Object.keys(n.value):[],shorthand:s,unescape:a,value:n.value});if(!e)return;t.includes(n.key)&&!l.isObjectLiteralExpression(e)&&(e=l.factory.createIdentifier(n.value)),r=l.factory.createPropertyAssignment(n.key,e)}if("key"in n){const t=e?.[n.key];t&&Jr(r,t)}return r})).filter(Qr):Object.entries(o).map((([n,r])=>{let o=Yr({identifiers:t.includes(n)?Object.keys(r):[],shorthand:s,unescape:a,value:r});if(!o)return;t.includes(n)&&!l.isObjectLiteralExpression(o)&&(o=l.factory.createIdentifier(r));const i=n===r;n.match(/^[0-9]/)&&n.match(/\D+/g)&&!n.startsWith("'")&&!n.endsWith("'")&&(n=`'${n}'`),!n.match(/\W/g)||n.startsWith("'")||n.endsWith("'")||(n=`'${n}'`);const p=s&&i?l.factory.createShorthandPropertyAssignment(r):l.factory.createPropertyAssignment(n,o),c=e?.[n];return c&&Jr(p,c),p})).filter(Qr),p=l.factory.createObjectLiteralExpression(i,r);return n&&Jr(p,n),p},ro=e=>{const t=e.match(/\.[0-9a-z]+$/i),n=t?t[0].slice(1):"";return{extension:n,name:e.slice(0,e.length-(n?n.length+1:0))}};class oo{_headers=[];_imports=[];_items=[];_name;_path;constructor({dir:e,name:n,header:r=!0}){this._name=this._setName(n),this._path=t.resolve(e,this.getName()),r&&(this._headers=[...this._headers,"// This file is auto-generated by @hey-api/openapi-ts"])}add(...e){this._items=[...this._items,...e]}addImport(...e){this._imports=[...this._imports,so.import.named(...e)]}getName(e=!0){if(e)return this._name;const{name:t}=ro(this._name);return t}isEmpty(){return!this._items.length}remove(t){e.rmSync(this._path,t)}_setName(e){if(e.includes("index"))return e;const{extension:t,name:n}=ro(e);return[n,"gen",t].filter(Boolean).join(".")}toString(e="\n"){let t=[];return this._headers.length&&(t=[...t,this._headers.join("\n")]),this._imports.length&&(t=[...t,this._imports.map((e=>Br({node:e}))).join("\n")]),t=[...t,...this._items.map((e=>"string"==typeof e?e:Br({node:e,unescape:!0})))],t.join(e)}write(t="\n"){this.isEmpty()?this.remove({force:!0}):e.writeFileSync(this._path,this.toString(t))}}const so={class:{constructor:({accessLevel:e,comment:t,multiLine:n=!0,parameters:r=[],statements:o=[]})=>{const s=l.factory.createConstructorDeclaration(Zr(e),eo(r),l.factory.createBlock(o,n));return t?.length&&Jr(s,t),s},create:({decorator:e,members:t=[],name:n})=>{const r=[l.factory.createModifier(l.SyntaxKind.ExportKeyword)];e&&r.unshift(l.factory.createDecorator(l.factory.createCallExpression(l.factory.createIdentifier(e.name),void 0,e.args.map((e=>Yr({value:e}))).filter(Qr))));const o=[];return t.forEach((e=>{o.push(e),o.push(l.factory.createIdentifier("\n"))})),l.factory.createClassDeclaration(r,l.factory.createIdentifier(n),[],[],o)},method:({accessLevel:e,comment:t,isStatic:n=!1,multiLine:r=!0,name:o,parameters:s=[],returnType:a,statements:i=[]})=>{const p=Zr(e);n&&p.push(l.factory.createModifier(l.SyntaxKind.StaticKeyword));const c=l.factory.createMethodDeclaration(p,void 0,l.factory.createIdentifier(o),void 0,[],eo(s),a?zr(a):void 0,l.factory.createBlock(i,r));return t&&Jr(c,t),c}},export:{all:e=>l.factory.createExportDeclaration(void 0,!1,void 0,Kr(e)),const:({comment:e,constAssertion:t=!1,expression:n,name:r})=>{const o=t?l.factory.createAsExpression(n,l.factory.createTypeReferenceNode("const")):n,s=l.factory.createVariableDeclaration(l.factory.createIdentifier(r),void 0,void 0,o),a=l.factory.createVariableStatement([l.factory.createModifier(l.SyntaxKind.ExportKeyword)],l.factory.createVariableDeclarationList([s],l.NodeFlags.Const));return e&&Jr(a,e),a},named:(e,t)=>{const n=(e=Array.isArray(e)?e:[e]).every((e=>"object"==typeof e&&e.isTypeOnly));return l.factory.createExportDeclaration(void 0,n,l.factory.createNamedExports(e.map((e=>{const{name:t,isTypeOnly:r,alias:o}="string"==typeof e?{name:e}:e;return Wr(t,!n&&Boolean(r),o)}))),Kr(t))}},import:{named:(e,t)=>{const n=Array.isArray(e)?e:[e],r=!n.some((e=>"object"!=typeof e||!e.isTypeOnly)),o=n.map((e=>{const t="string"==typeof e?{name:e}:e;return Ur({alias:t.alias,isTypeOnly:!r&&Boolean(t.isTypeOnly),name:t.name})})),s=l.factory.createNamedImports(o),a=l.factory.createImportClause(r,void 0,s),i=Kr(t);return l.factory.createImportDeclaration(void 0,a,i)}},return:{functionCall:({args:e=[],name:t,types:n=[]})=>{const r=l.factory.createCallExpression(l.factory.createIdentifier(t),n.map((e=>l.factory.createTypeReferenceNode(e))),e.map((e=>l.isExpression(e)?e:l.factory.createIdentifier(e))).filter(Qr));return l.factory.createReturnStatement(r)}},typedef:{alias:(e,t,n)=>{const r=l.factory.createTypeAliasDeclaration([l.factory.createModifier(l.SyntaxKind.ExportKeyword)],l.factory.createIdentifier(e),[],zr(t));return n&&Jr(r,n),r},array:(e,t=!1)=>{const n=l.factory.createTypeReferenceNode("Array",[Xr(e)]);return t?l.factory.createUnionTypeNode([n,l.factory.createTypeReferenceNode("null")]):n},basic:zr,interface:Gr,intersect:(e,t=!1)=>{const n=e.map((e=>zr(e))),r=l.factory.createIntersectionTypeNode(n);return t?l.factory.createUnionTypeNode([r,l.factory.createTypeReferenceNode("null")]):r},record:(e,t,n=!1)=>{const r=Xr(e),o=Xr(t),s=Gr([{isRequired:!0,name:`[key: ${Br({node:r,unescape:!0})}]`,type:o}]);return n?l.factory.createUnionTypeNode([s,l.factory.createTypeReferenceNode("null")]):s},tuple:({isNullable:e=!1,types:t})=>{const n=t.map((e=>zr(e))),r=l.factory.createTupleTypeNode(n);if(e){return l.factory.createUnionTypeNode([r,l.factory.createTypeReferenceNode("null")])}return r},union:Xr},types:{array:to,enum:({comments:e,leadingComment:t,name:n,obj:r})=>{const o=l.factory.createEnumDeclaration([l.factory.createModifier(l.SyntaxKind.ExportKeyword)],l.factory.createIdentifier(n),Object.entries(r).map((([t,n])=>{const r=Yr({unescape:!0,value:n}),o=l.factory.createEnumMember(t,r),s=e?.[t];return s&&Jr(o,s),o})));return t&&Jr(o,t),o},function:({comment:e,multiLine:t,parameters:n=[],returnType:r,statements:o=[]})=>{const s=l.factory.createArrowFunction(void 0,void 0,eo(n),r?zr(r):void 0,void 0,l.factory.createBlock(o,t));return e&&Jr(s,e),s},object:no},utils:{toNode:function(e){return Mr(e).statements[0]},toString:Br}},ao=e=>{switch(e){case"angular":return"AngularHttpRequest";case"axios":return"AxiosHttpRequest";case"fetch":return"FetchHttpRequest";case"node":return"NodeHttpRequest";case"xhr":return"XHRHttpRequest";default:return""}},io=e=>{const t=Le();if(Array.isArray(e))return e.map((e=>io(e)));if("object"!=typeof e||null===e)return e;const n={...e};return Object.entries(n).forEach((([e,r])=>{"form"===t.schemas.type&&["description","x-enum-descriptions","x-enum-varnames","x-enumNames"].includes(e)?delete n[e]:r&&"object"==typeof r&&(n[e]=io(r))})),n},lo=e=>{const t=Le();return t?.useOptions?e.isRequired?"":"?":e.isRequired||(e=>{if(void 0!==e.default)return JSON.stringify(e.default,null,4)})(e)?"":"?"},po=e=>`${me(e.name,{pascalCase:!0})}Data`,co=e=>`${me(e.name,{pascalCase:!0})}Response`,uo=e=>{if(!e.parameters.length)return[];const t=Le(),n=po(e);if(t.useOptions){return[{default:e.parameters.some((e=>e.isRequired))?void 0:{},name:"data",type:n}]}return e.parameters.map((e=>{const t=`${n}['${e.name}']`;return{default:e?.default,isRequired:""===lo(e),name:e.name,type:t}}))},mo=e=>{const t=Le();let n=so.typedef.basic("void");if(e.results.length){const t=co(e);n=so.typedef.union([t])}return t.useOptions&&"response"===t.services.response&&(n=so.typedef.basic("ApiResult",[n])),n="angular"===t.client?so.typedef.basic("Observable",[n]):so.typedef.basic("CancelablePromise",[n]),n},fo=e=>{const t=Le();let n=[];e.parameters.length&&(n=t.useOptions?["@param data The data for the request.",...e.parameters.map((e=>`@param data.${e.name} ${e.description?Te(e.description):""}`))]:e.parameters.map((e=>`@param ${e.name} ${e.description?Te(e.description):""}`)));return[e.deprecated&&"@deprecated",e.summary&&Te(e.summary),e.description&&Te(e.description),...n,...e.results.map((e=>`@returns ${e.type} ${e.description?Te(e.description):""}`)),"@throws ApiError"]},ho=e=>{const t=Le(),n=(e=>{const t=Le();if(t.client.startsWith("@hey-api")){const t=[{spread:"data"},{key:"url",value:e.path}];return so.types.object({obj:t})}const n=e=>e.reduce(((e,n)=>{const r=n.prop,o=t.useOptions?`data.${n.name}`:n.name;return r===o?e[r]=r:Ee(r)===r?e[r]=o:e[`'${r}'`]=o,e}),{}),r={method:e.method,url:e.path};if(e.parametersPath.length&&(r.path=n(e.parametersPath)),e.parametersCookie.length&&(r.cookies=n(e.parametersCookie)),e.parametersHeader.length&&(r.headers=n(e.parametersHeader)),e.parametersQuery.length&&(r.query=n(e.parametersQuery)),e.parametersForm.length&&(r.formData=n(e.parametersForm)),e.parametersBody&&("formData"===e.parametersBody.in&&(t.useOptions?r.formData=`data.${e.parametersBody.name}`:r.formData=e.parametersBody.name),"body"===e.parametersBody.in&&(t.useOptions?r.body=`data.${e.parametersBody.name}`:r.body=e.parametersBody.name)),e.parametersBody?.mediaType&&(r.mediaType=e.parametersBody?.mediaType),e.responseHeader&&(r.responseHeader=e.responseHeader),e.errors.length){const t={};e.errors.forEach((e=>{t[e.code]=e.description??""})),r.errors=t}return so.types.object({identifiers:["body","cookies","formData","headers","path","query"],obj:r,shorthand:!0})})(e);if(t.client.startsWith("@hey-api")){const t=e.results.length?co(e):"void";return[so.return.functionCall({args:[n],name:`client.${e.method.toLocaleLowerCase()}`,types:[t]})]}return t.name?[so.return.functionCall({args:[n],name:"this.httpRequest.request"})]:"angular"===t.client?[so.return.functionCall({args:["OpenAPI","this.http",n],name:"__request"})]:[so.return.functionCall({args:["OpenAPI",n],name:"__request"})]},yo=(e,t,n)=>{const r=Le();if(e.operations.forEach((e=>{if(e.parameters.length){const t=po(e);n(t)}if(e.results.length){const t=co(e);n(t)}})),r.client.startsWith("@hey-api"))return void e.operations.forEach((e=>{const n=so.types.function({parameters:uo(e),statements:ho(e)}),r=so.export.const({comment:fo(e),expression:n,name:e.name});t(r)}));const o=e.operations.map((e=>so.class.method({accessLevel:"public",comment:fo(e),isStatic:void 0===r.name&&"angular"!==r.client,name:e.name,parameters:uo(e),returnType:mo(e),statements:ho(e)})));r.name?o.unshift(so.class.constructor({multiLine:!1,parameters:[{accessLevel:"public",isReadOnly:!0,name:"httpRequest",type:"BaseHttpRequest"}]})):"angular"===r.client&&o.unshift(so.class.constructor({multiLine:!1,parameters:[{accessLevel:"public",isReadOnly:!0,name:"http",type:"HttpClient"}]}));const s=so.class.create({decorator:"angular"===r.client?{args:[{providedIn:"root"}],name:"Injectable"}:void 0,members:o,name:kr(e.name)});t(s)},go=(e,t=!1)=>"string"==typeof e?e.includes("'")&&t?`"${e}"`:`'${e}'`:e,vo=e=>{const t=Le();return"binary"===e.base?so.typedef.union(["Blob","File"]):t.types.dates&&"date-time"===e.format?so.typedef.basic("Date"):e.base===e.type&&e.$refs.length&&e.$refs.some((t=>t.endsWith(e.base)))?so.typedef.basic(Er(e.base)):so.typedef.basic(e.base)},bo=e=>{switch(e.export){case"all-of":return(e=>{const t=e.properties.map((e=>so.utils.toString({node:bo(e),unescape:!0}))).filter(qe);return so.typedef.intersect(t,e.isNullable)})(e);case"any-of":case"one-of":return(e=>{const t=e.properties.map((e=>so.utils.toString({node:bo(e),unescape:!0}))).filter(qe);return so.typedef.union(t,e.isNullable)})(e);case"array":return(e=>{if("array"===e.export&&e.link&&e.maxItems&&e.minItems&&e.maxItems===e.minItems&&e.maxItems<=100){const t=Array(e.maxItems).fill(bo(e.link));return so.typedef.tuple({isNullable:e.isNullable,types:t})}return e.link?so.typedef.array([bo(e.link)],e.isNullable):so.typedef.array([vo(e)],e.isNullable)})(e);case"dictionary":return(e=>{const t=e.link?bo(e.link):vo(e);return so.typedef.record(["string"],[t],e.isNullable)})(e);case"enum":return(e=>{const t=e.enum.map((e=>go(e.value)));return so.typedef.union(t,e.isNullable)})(e);case"interface":return(e=>{if(!e.properties.length)return so.typedef.basic("unknown");const t=e.properties.map((e=>{let t=lo(e),n=bo(e);return"[key: string]"===e.name&&t&&(t="",n=so.typedef.union([n,"undefined"])),{comment:[e.description&&Te(e.description),e.deprecated&&"@deprecated"],isReadOnly:e.isReadOnly,isRequired:""===t,name:e.name,type:n}}));return so.typedef.interface(t,e.isNullable)})(e);default:return(e=>{const t="null"!==e.base&&e.isNullable;return so.typedef.union([vo(e)],t)})(e)}},xo={$refs:[],base:"",description:null,enum:[],enums:[],export:"interface",imports:[],isDefinition:!1,isNullable:!1,isReadOnly:!1,isRequired:!1,link:null,name:"",properties:[],template:null,type:""},Ro=(e,t,n,r=!1)=>{if(!r)return;const o=Le(),s={},a={};t.enum.forEach((e=>{const t=((e,t)=>{if(t)return t;if("number"==typeof e)return`'_${e}'`;let n="";return"string"==typeof e&&(n=e.replace(/[^$\u200c\u200d\p{ID_Continue}]/gu,"_").replace(/^([^$_\p{ID_Start}])/u,"_$1").replace(/(\p{Lowercase})(\p{Uppercase}+)/gu,"$1_$2")),n=n.trim(),n||(n="empty_string"),n.toUpperCase()})(e.value,e.customName),n=go(e.value);s[t]=n;const r=e.customDescription||e.description;r&&(a[t]=[Te(r)])}));const i=((e,t)=>{if(!t)return null;const n=Ce(t).replace(/[-_]([a-z])/gi,((e,t)=>t.toLocaleUpperCase())),r=n.charAt(0).toLocaleUpperCase()+n.slice(1);return e.enumNames.includes(r)?null:(e.enumNames=[...e.enumNames,r],r)})(e,t.name);if(null===i)return;const l=[t.description&&Te(t.description),t.deprecated&&"@deprecated"];if("typescript"!==o.types.enums){n(so.typedef.alias(de(t.name),t.enum.map((e=>go(e.value,!0))).filter(qe).join(" | "),l))}if("typescript"===o.types.enums){n(so.types.enum({comments:a,leadingComment:l,name:i,obj:s}))}if("javascript"===o.types.enums){const e=so.types.object({comments:a,leadingComment:l,multiLine:!0,obj:s,unescape:!0});n(so.export.const({constAssertion:!0,expression:e,name:i}))}},Po=(e,t,n)=>{const r=[t.description&&Te(t.description),t.deprecated&&"@deprecated"];n(so.typedef.alias(Er(t.name),bo(t),r))},Oo=(e,t,n)=>{switch(t.export){case"all-of":case"any-of":case"one-of":case"interface":return((e,t,n)=>{Po(e,t,n),t.enums.forEach((t=>Ro(e,t,n)))})(e,t,n);case"enum":return Ro(e,t,n,!0);default:return Po(e,t,n)}},qo=async({client:e,files:t})=>{for(const n of e.models)Oo(e,n,(e=>{t.types?.add(e)}));t.services&&e.services.length&&((e,t)=>{const n=new Map,r=Le();e.services.forEach((o=>{o.operations.forEach((o=>{const s=o.parameters.length,a=o.results.length,i=o.errors.length;if(s||a||i){let l=n.get(o.path);l||(n.set(o.path,new Map),l=n.get(o.path));let p=l.get(o.method);if(p||(l.set(o.method,new Map),p=l.get(o.method)),s){const n=o.parameters.filter((e=>"body"===e.in)).sort($r)[0],s={...xo,...n,in:"body",isRequired:!!n&&n.isRequired,name:"body",prop:"body"},a={...xo,in:"header",isRequired:o.parameters.filter((e=>"header"===e.in)).some((e=>e.isRequired)),mediaType:null,name:"header",prop:"header",properties:o.parameters.filter((e=>"header"===e.in)).sort($r)},i={...xo,in:"path",isRequired:o.parameters.filter((e=>"path"===e.in)).some((e=>e.isRequired)),mediaType:null,name:"path",prop:"path",properties:o.parameters.filter((e=>"path"===e.in)).sort($r)},l={...xo,in:"query",isRequired:o.parameters.filter((e=>"query"===e.in)).some((e=>e.isRequired)),mediaType:null,name:"query",prop:"query",properties:o.parameters.filter((e=>"query"===e.in)).sort($r)},c=r.client.startsWith("@hey-api")?[s,a,i,l].filter((e=>e.properties.length||e.$refs.length||e.mediaType)):Ir([...o.parameters]);p.set("req",c);const u=po(o);if(!e.serviceTypes.includes(u)){e.serviceTypes=[...e.serviceTypes,u];const n=bo({...xo,isRequired:!0,properties:c}),r=so.typedef.alias(u,n);t(r)}}if(a){let n=p.get("res");if(n||(p.set("res",new Map),n=p.get("res")),Array.isArray(n))return;o.results.forEach((e=>{n.set(e.code,e)}));const r=co(o);if(!e.serviceTypes.includes(r)){e.serviceTypes=[...e.serviceTypes,r];let n=[];o.results.map((e=>{("default"===e.code||e.code>=200&&e.code<300)&&(n=[...n,e])}));const s=bo({...xo,export:"any-of",isRequired:!0,properties:n}),a=so.typedef.alias(r,s);t(a)}}if(i){let e=p.get("res");if(e||(p.set("res",new Map),e=p.get("res")),Array.isArray(e))return;o.errors.forEach((t=>{e.set(t.code,t)}))}}}))}));const o=Array.from(n).map((([e,t])=>{const n=Array.from(t).map((([e,t])=>{const n=Array.from(t).map((([e,t])=>{const n=Array.isArray(t)?t:Array.from(t).map((([e,t])=>({...xo,...t,isRequired:!0,name:String(e)})));return{...xo,isRequired:!0,name:e,properties:n}}));return{...xo,isRequired:!0,name:e.toLocaleLowerCase(),properties:n}}));return{...xo,isRequired:!0,name:`'${e}'`,properties:n}})),s=bo({...xo,properties:o}),a=so.typedef.alias("$OpenApiTs",s);t(a)})(e,(e=>{t.types?.add(e)}))},wo=async(n,r,o)=>{const s=Le();if(s.services.include){const e=new RegExp(s.services.include);r.services=r.services.filter((t=>e.test(t.name)))}if(s.types.include){const e=new RegExp(s.types.include);r.models=r.models.filter((t=>e.test(t.name)))}const a=t.resolve(s.output);e.existsSync(a)||e.mkdirSync(a,{recursive:!0});const i={index:new oo({dir:s.output,name:"index.ts"})};s.schemas.export&&(i.schemas=new oo({dir:s.output,name:"schemas.ts"})),s.services.export&&(i.services=new oo({dir:s.output,name:"services.ts"})),s.types.export&&(i.types=new oo({dir:s.output,name:"types.ts"})),await(async({file:e,openApi:t})=>{if(!e)return;const n=(t,n)=>{const r=`$${de(t)}`,o=io(n),s=so.types.object({obj:o}),a=so.export.const({constAssertion:!0,expression:s,name:r});e.add(a)};"swagger"in t&&Object.entries(t.definitions??{}).forEach((([e,t])=>{n(e,t)})),"openapi"in t&&Object.entries(t.components?.schemas??{}).forEach((([e,t])=>{n(e,t)}))})({file:i.schemas,openApi:n}),await qo({client:r,files:i}),await(async({client:e,files:t})=>{if(!t.services)return;const n=Le();let r=[];for(const n of e.services)yo(n,(e=>{t.services?.add(e)}),(e=>{r=[...r,e]}));if(n.client.startsWith("@hey-api")?t.services?.addImport(["client"],n.client):("angular"===n.client?(t.services?.addImport("Injectable","@angular/core"),n.name||t.services?.addImport("HttpClient","@angular/common/http"),t.services?.addImport({isTypeOnly:!0,name:"Observable"},"rxjs")):t.services?.addImport({isTypeOnly:!0,name:"CancelablePromise"},"./core/CancelablePromise"),"response"===n.services.response&&t.services?.addImport({isTypeOnly:!0,name:"ApiResult"},"./core/ApiResult"),n.name?t.services?.addImport({isTypeOnly:"angular"!==n.client,name:"BaseHttpRequest"},"./core/BaseHttpRequest"):(t.services?.addImport("OpenAPI","./core/OpenAPI"),t.services?.addImport({alias:"__request",name:"request"},"./core/request"))),t.types&&!t.types.isEmpty()){const e=r.filter(qe).map((e=>({isTypeOnly:!0,name:e})));t.services?.addImport(e,`./${t.types.getName(!1)}`)}})({client:r,files:i}),await(async(n,r,o,s)=>{const a=Le(),i=s.client({$config:a,...o,httpRequest:ao(a.client),models:Ir(o.models),services:Ir(o.services)});a.name&&await e.writeFileSync(t.resolve(r,`${a.name}.ts`),i)})(0,a,r,o),await(async(n,r,o)=>{const s=Le();if(s.exportCore){const a={httpRequest:ao(s.client),server:void 0!==s.base?s.base:r.server,version:r.version};if(e.rmSync(t.resolve(n),{force:!0,recursive:!0}),e.mkdirSync(t.resolve(n),{recursive:!0}),await e.writeFileSync(t.resolve(n,"OpenAPI.ts"),o.core.settings({$config:s,...a})),await e.writeFileSync(t.resolve(n,"ApiError.ts"),o.core.apiError({$config:s,...a})),await e.writeFileSync(t.resolve(n,"ApiRequestOptions.ts"),o.core.apiRequestOptions({$config:s,...a})),await e.writeFileSync(t.resolve(n,"ApiResult.ts"),o.core.apiResult({$config:s,...a})),"angular"!==s.client&&await e.writeFileSync(t.resolve(n,"CancelablePromise.ts"),o.core.cancelablePromise({$config:s,...a})),await e.writeFileSync(t.resolve(n,"request.ts"),o.core.request({$config:s,...a})),s.name&&(await e.writeFileSync(t.resolve(n,"BaseHttpRequest.ts"),o.core.baseHttpRequest({$config:s,...a})),await e.writeFileSync(t.resolve(n,`${a.httpRequest}.ts`),o.core.httpRequest({$config:s,...a}))),s.request){const r=t.resolve(process.cwd(),s.request);if(!await e.existsSync(r))throw new Error(`Custom request file "${r}" does not exists`);await e.copyFileSync(r,t.resolve(n,"request.ts"))}}})(t.resolve(s.output,"core"),r,o),await(async({files:e})=>{const t=Le();t.name&&e.index.add(so.export.named([t.name],`./${t.name}`)),t.exportCore&&(e.index.add(so.export.named("ApiError","./core/ApiError")),"response"===t.services.response&&e.index.add(so.export.named({isTypeOnly:!0,name:"ApiResult"},"./core/ApiResult")),t.name&&e.index.add(so.export.named("BaseHttpRequest","./core/BaseHttpRequest")),"angular"!==t.client&&e.index.add(so.export.named(["CancelablePromise","CancelError"],"./core/CancelablePromise")),e.index.add(so.export.named(["OpenAPI",{isTypeOnly:!0,name:"OpenAPIConfig"}],"./core/OpenAPI"))),e.schemas&&!e.schemas.isEmpty()&&e.index.add(so.export.all(`./${e.schemas.getName(!1)}`)),e.services&&!e.services.isEmpty()&&e.index.add(so.export.all(`./${e.services.getName(!1)}`)),e.types&&!e.types.isEmpty()&&e.index.add(so.export.all(`./${e.types.getName(!1)}`))})({files:i}),i.schemas?.write("\n\n"),i.services?.write("\n\n"),i.types?.write("\n\n"),i.index.write()},Ao={"@hey-api/client-axios":["axios"],"@hey-api/client-fetch":[],angular:["@angular/common","@angular/core","rxjs"],axios:["axios"],fetch:[],node:["node-fetch"],xhr:[]},ko={biome:{args:e=>["format","--write",e],command:"biome",condition:e=>Boolean(e["@biomejs/biome"]),name:"Biome (Format)"},prettier:{args:e=>["--ignore-unknown",e,"--write","--ignore-path","./.prettierignore"],command:"prettier",condition:e=>Boolean(e.prettier),name:"Prettier"}},Eo={biome:{args:e=>["lint","--apply",e],command:"biome",condition:e=>Boolean(e["@biomejs/biome"]),name:"Biome (Lint)"},eslint:{args:e=>[e,"--fix"],command:"eslint",condition:e=>Boolean(e.eslint),name:"ESLint"}},Co=async(e,r)=>{const{config:o}=await n.loadConfig({jitiOptions:{esmResolve:!0},name:"openapi-ts",overrides:e});o&&(e={...o,...e});const{base:s,debug:a=!1,dryRun:i=!1,exportCore:l=!0,format:p=!1,input:c,lint:u=!1,name:m,request:d,useOptions:f=!0}=e;if(a&&console.warn("userConfig:",e),!c)throw new Error("🚫 input not provided - provide path to OpenAPI specification");if(!e.output)throw new Error("🚫 output not provided - provide path where we should generate your client");f||console.warn("⚠️ Deprecation warning: useOptions set to false. This setting will be removed in future versions. Please migrate useOptions to true https://heyapi.vercel.app/openapi-ts/migrating.html#v0-27-38");const h=e.client||(e=>e["@hey-api/client-axios"]?"@hey-api/client-axios":e["@hey-api/client-fetch"]?"@hey-api/client-fetch":e.axios?"axios":e["node-fetch"]?"node":Object.keys(e).some((e=>e.startsWith("@angular")))?"angular":"fetch")(r),y=t.resolve(process.cwd(),e.output),g=(e=>{let t={export:!0,type:"json"};return"boolean"==typeof e.schemas?t.export=e.schemas:t={...t,...e.schemas},t})(e),v=(e=>{let t={export:!0,name:"{{name}}Service",operationId:!0,response:"body"};return"boolean"==typeof e.services?t.export=e.services:"string"==typeof e.services?t.include=e.services:t={...t,...e.services},t})(e),b=(e=>{let t={dates:!1,enums:!1,export:!0,name:"preserve"};return"boolean"==typeof e.types?t.export=e.types:"string"==typeof e.types?t.include=e.types:t={...t,...e.types},t})(e);return x={base:s,client:h,debug:a,dryRun:i,exportCore:!h.startsWith("@hey-api")&&l,format:p,input:c,lint:u,name:m,output:y,request:d,schemas:g,services:v,types:b,useOptions:f},Me=x,Le();var x};exports.createClient=async function(n){const r=(()=>{const n=e=>[e.dependencies??{},e.devDependencies??{}].reduce(((e,t)=>({...e,...t})),{});let r={};const o=re("npm",["list","-g","--json","--depth=0"]);if(!o.error){const e=JSON.parse(o.stdout.toString());r={...r,...n(e)}}const s=t.resolve(process.cwd(),"package.json");if(e.existsSync(s)){const t=JSON.parse(e.readFileSync(s).toString());r={...r,...n(t)}}return r})();if(!r.typescript)throw new Error("🚫 dependency missing - TypeScript must be installed");const o=await Co(n,r),s="string"==typeof o.input?await(async n=>{const r=e.existsSync(n)?t.resolve(n):n;return await i.bundle(r,r,{})})(o.input):o.input,a=Sr(function(e){if("openapi"in e)return dt(e);if("swagger"in e)return Xe(e);throw new Error(`Unsupported Open API specification: ${JSON.stringify(e,null,2)}`)}(s)),l=(()=>{Cr();const e={client:Dn.template(Nn),core:{apiError:Dn.template(Un),apiRequestOptions:Dn.template(Vn),apiResult:Dn.template(Kn),baseHttpRequest:Dn.template(Zn),cancelablePromise:Dn.template(er),httpRequest:Dn.template(vr),request:Dn.template(xr),settings:Dn.template(br)}};return Dn.registerPartial("functions/base64",Dn.template(ir)),Dn.registerPartial("functions/catchErrorCodes",Dn.template(lr)),Dn.registerPartial("functions/getFormData",Dn.template(pr)),Dn.registerPartial("functions/getQueryString",Dn.template(cr)),Dn.registerPartial("functions/getUrl",Dn.template(ur)),Dn.registerPartial("functions/isBlob",Dn.template(mr)),Dn.registerPartial("functions/isFormData",Dn.template(dr)),Dn.registerPartial("functions/isString",Dn.template(fr)),Dn.registerPartial("functions/isStringWithValue",Dn.template(hr)),Dn.registerPartial("functions/isSuccess",Dn.template(yr)),Dn.registerPartial("functions/resolve",Dn.template(gr)),Dn.registerPartial("fetch/getHeaders",Dn.template(tr)),Dn.registerPartial("fetch/getRequestBody",Dn.template(nr)),Dn.registerPartial("fetch/getResponseBody",Dn.template(rr)),Dn.registerPartial("fetch/getResponseHeader",Dn.template(or)),Dn.registerPartial("fetch/request",Dn.template(sr)),Dn.registerPartial("fetch/sendRequest",Dn.template(ar)),Dn.registerPartial("xhr/getHeaders",Dn.template(Rr)),Dn.registerPartial("xhr/getRequestBody",Dn.template(Pr)),Dn.registerPartial("xhr/getResponseBody",Dn.template(Or)),Dn.registerPartial("xhr/getResponseHeader",Dn.template(qr)),Dn.registerPartial("xhr/request",Dn.template(wr)),Dn.registerPartial("xhr/sendRequest",Dn.template(Ar)),Dn.registerPartial("axios/getHeaders",Dn.template(Qn)),Dn.registerPartial("axios/getRequestBody",Dn.template(Jn)),Dn.registerPartial("axios/getResponseBody",Dn.template(zn)),Dn.registerPartial("axios/getResponseHeader",Dn.template(Gn)),Dn.registerPartial("axios/request",Dn.template(Xn)),Dn.registerPartial("axios/sendRequest",Dn.template(Yn)),Dn.registerPartial("angular/getHeaders",Dn.template(jn)),Dn.registerPartial("angular/getRequestBody",Dn.template(Mn)),Dn.registerPartial("angular/getResponseBody",Dn.template(Ln)),Dn.registerPartial("angular/getResponseHeader",Dn.template(Bn)),Dn.registerPartial("angular/request",Dn.template(Fn)),Dn.registerPartial("angular/sendRequest",Dn.template(Wn)),e})();return o.dryRun||((()=>{const{client:e}=Le();switch(e){case"angular":return console.log("✨ Creating Angular client");case"axios":return console.log("✨ Creating Axios client");case"fetch":return console.log("✨ Creating Fetch client");case"node":return console.log("✨ Creating Node.js client");case"xhr":console.log("✨ Creating XHR client")}})(),(e=>{const{client:t}=Le(),n=Ao[t].filter((t=>void 0===e[t]));n.length>0&&console.log("⚠️ Dependencies used in generated client are missing: "+n.join(" "))})(r),await wo(s,a,l),(e=>{const t=Le();if(t.format){const n=ko[t.format];n.condition(e)&&(console.log(`✨ Running ${n.name}`),re(n.command,n.args(t.output)))}if(t.lint){const n=Eo[t.lint];n.condition(e)&&(console.log(`✨ Running ${n.name}`),re(n.command,n.args(t.output)))}})(r)),console.log("✨ Done! Your client is located in:",o.output),a},exports.defineConfig=function(e){return e};
1
+ "use strict";var e=require("node:fs"),t=require("node:path"),n=require("c12"),r=require("child_process"),o=require("path"),s=require("fs"),a=require("os"),i=require("@apidevtools/json-schema-ref-parser"),l=require("typescript"),p="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function c(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var u,m,d,f,h,y={exports:{}};h="win32"===process.platform||p.TESTING_WINDOWS?function(){if(m)return u;m=1,u=n,n.sync=function(n,r){return t(e.statSync(n),n,r)};var e=s;function t(e,t,n){return!(!e.isSymbolicLink()&&!e.isFile())&&function(e,t){var n=void 0!==t.pathExt?t.pathExt:process.env.PATHEXT;if(!n)return!0;if(-1!==(n=n.split(";")).indexOf(""))return!0;for(var r=0;r<n.length;r++){var o=n[r].toLowerCase();if(o&&e.substr(-o.length).toLowerCase()===o)return!0}return!1}(t,n)}function n(n,r,o){e.stat(n,(function(e,s){o(e,!e&&t(s,n,r))}))}return u}():function(){if(f)return d;f=1,d=t,t.sync=function(t,r){return n(e.statSync(t),r)};var e=s;function t(t,r,o){e.stat(t,(function(e,t){o(e,!e&&n(t,r))}))}function n(e,t){return e.isFile()&&function(e,t){var n=e.mode,r=e.uid,o=e.gid,s=void 0!==t.uid?t.uid:process.getuid&&process.getuid(),a=void 0!==t.gid?t.gid:process.getgid&&process.getgid(),i=parseInt("100",8),l=parseInt("010",8);return n&parseInt("001",8)||n&l&&o===a||n&i&&r===s||n&(i|l)&&0===s}(e,t)}return d}();var g=v;function v(e,t,n){if("function"==typeof t&&(n=t,t={}),!n){if("function"!=typeof Promise)throw new TypeError("callback not provided");return new Promise((function(n,r){v(e,t||{},(function(e,t){e?r(e):n(t)}))}))}h(e,t||{},(function(e,r){e&&("EACCES"===e.code||t&&t.ignoreErrors)&&(e=null,r=!1),n(e,r)}))}v.sync=function(e,t){try{return h.sync(e,t||{})}catch(e){if(t&&t.ignoreErrors||"EACCES"===e.code)return!1;throw e}};const b="win32"===process.platform||"cygwin"===process.env.OSTYPE||"msys"===process.env.OSTYPE,x=o,R=b?";":":",P=g,O=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),q=(e,t)=>{const n=t.colon||R,r=e.match(/\//)||b&&e.match(/\\/)?[""]:[...b?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(n)],o=b?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=b?o.split(n):[""];return b&&-1!==e.indexOf(".")&&""!==s[0]&&s.unshift(""),{pathEnv:r,pathExt:s,pathExtExe:o}},A=(e,t,n)=>{"function"==typeof t&&(n=t,t={}),t||(t={});const{pathEnv:r,pathExt:o,pathExtExe:s}=q(e,t),a=[],i=n=>new Promise(((o,s)=>{if(n===r.length)return t.all&&a.length?o(a):s(O(e));const i=r[n],p=/^".*"$/.test(i)?i.slice(1,-1):i,c=x.join(p,e),u=!p&&/^\.[\\\/]/.test(e)?e.slice(0,2)+c:c;o(l(u,n,0))})),l=(e,n,r)=>new Promise(((p,c)=>{if(r===o.length)return p(i(n+1));const u=o[r];P(e+u,{pathExt:s},((o,s)=>{if(!o&&s){if(!t.all)return p(e+u);a.push(e+u)}return p(l(e,n,r+1))}))}));return n?i(0).then((e=>n(null,e)),n):i(0)};var w=A;A.sync=(e,t)=>{t=t||{};const{pathEnv:n,pathExt:r,pathExtExe:o}=q(e,t),s=[];for(let a=0;a<n.length;a++){const i=n[a],l=/^".*"$/.test(i)?i.slice(1,-1):i,p=x.join(l,e),c=!l&&/^\.[\\\/]/.test(e)?e.slice(0,2)+p:p;for(let e=0;e<r.length;e++){const n=c+r[e];try{if(P.sync(n,{pathExt:o})){if(!t.all)return n;s.push(n)}}catch(e){}}}if(t.all&&s.length)return s;if(t.nothrow)return null;throw O(e)};var k={exports:{}};const E=(e={})=>{const t=e.env||process.env;return"win32"!==(e.platform||process.platform)?"PATH":Object.keys(t).reverse().find((e=>"PATH"===e.toUpperCase()))||"Path"};k.exports=E,k.exports.default=E;var C=k.exports;const T=o,$=w,I=C;function S(e,t){const n=e.options.env||process.env,r=process.cwd(),o=null!=e.options.cwd,s=o&&void 0!==process.chdir&&!process.chdir.disabled;if(s)try{process.chdir(e.options.cwd)}catch(e){}let a;try{a=$.sync(e.command,{path:n[I({env:n})],pathExt:t?T.delimiter:void 0})}catch(e){}finally{s&&process.chdir(r)}return a&&(a=T.resolve(o?e.options.cwd:"",a)),a}var H=function(e){return S(e)||S(e,!0)},_={};const D=/([()\][%!^"`<>&|;, *?])/g;_.command=function(e){return e=e.replace(D,"^$1")},_.argument=function(e,t){return e=(e=`"${e=(e=(e=`${e}`).replace(/(\\*)"/g,'$1$1\\"')).replace(/(\\*)$/,"$1$1")}"`).replace(D,"^$1"),t&&(e=e.replace(D,"^$1")),e};const N=/^#!(.*)/;const j=s,M=(e="")=>{const t=e.match(N);if(!t)return null;const[n,r]=t[0].replace(/#! ?/,"").split(" "),o=n.split("/").pop();return"env"===o?r:r?`${o} ${r}`:o};const B=o,L=H,F=_,W=function(e){const t=Buffer.alloc(150);let n;try{n=j.openSync(e,"r"),j.readSync(n,t,0,150,0),j.closeSync(n)}catch(e){}return M(t.toString())},U="win32"===process.platform,V=/\.(?:com|exe)$/i,K=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Q(e){if(!U)return e;const t=function(e){e.file=L(e);const t=e.file&&W(e.file);return t?(e.args.unshift(e.file),e.command=t,L(e)):e.file}(e),n=!V.test(t);if(e.options.forceShell||n){const n=K.test(t);e.command=B.normalize(e.command),e.command=F.command(e.command),e.args=e.args.map((e=>F.argument(e,n)));const r=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${r}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}var J=function(e,t,n){t&&!Array.isArray(t)&&(n=t,t=null);const r={command:e,args:t=t?t.slice(0):[],options:n=Object.assign({},n),file:void 0,original:{command:e,args:t}};return n.shell?r:Q(r)};const z="win32"===process.platform;function G(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function X(e,t){return z&&1===e&&!t.file?G(t.original,"spawn"):null}var Y={hookChildProcess:function(e,t){if(!z)return;const n=e.emit;e.emit=function(r,o){if("exit"===r){const r=X(o,t);if(r)return n.call(e,"error",r)}return n.apply(e,arguments)}},verifyENOENT:X,verifyENOENTSync:function(e,t){return z&&1===e&&!t.file?G(t.original,"spawnSync"):null},notFoundError:G};const Z=r,ee=J,te=Y;function ne(e,t,n){const r=ee(e,t,n),o=Z.spawn(r.command,r.args,r.options);return te.hookChildProcess(o,r),o}y.exports=ne,y.exports.spawn=ne;var re=y.exports.sync=function(e,t,n){const r=ee(e,t,n),o=Z.spawnSync(r.command,r.args,r.options);return o.error=o.error||te.verifyENOENTSync(o.status,r),o};y.exports._parse=ee,y.exports._enoent=te;const oe=/[\p{Lu}]/u,se=/[\p{Ll}]/u,ae=/^[\p{Lu}](?![\p{Lu}])/gu,ie=/([\p{Alpha}\p{N}_]|$)/u,le=/[_.\- ]+/,pe=new RegExp("^"+le.source),ce=new RegExp(le.source+ie.source,"gu"),ue=new RegExp("\\d+"+ie.source,"gu");function me(e,t){if("string"!=typeof e&&!Array.isArray(e))throw new TypeError("Expected the input to be `string | string[]`");if(t={pascalCase:!1,preserveConsecutiveUppercase:!1,...t},0===(e=Array.isArray(e)?e.map((e=>e.trim())).filter((e=>e.length)).join("-"):e.trim()).length)return"";const n=!1===t.locale?e=>e.toLowerCase():e=>e.toLocaleLowerCase(t.locale),r=!1===t.locale?e=>e.toUpperCase():e=>e.toLocaleUpperCase(t.locale);if(1===e.length)return le.test(e)?"":t.pascalCase?r(e):n(e);return e!==n(e)&&(e=((e,t,n,r)=>{let o=!1,s=!1,a=!1,i=!1;for(let l=0;l<e.length;l++){const p=e[l];i=!(l>2)||"-"===e[l-3],o&&oe.test(p)?(e=e.slice(0,l)+"-"+e.slice(l),o=!1,a=s,s=!0,l++):s&&a&&se.test(p)&&(!i||r)?(e=e.slice(0,l-1)+"-"+e.slice(l-1),a=s,s=!1,o=!0):(o=t(p)===p&&n(p)!==p,a=s,s=n(p)===p&&t(p)!==p)}return e})(e,n,r,t.preserveConsecutiveUppercase)),e=e.replace(pe,""),e=t.preserveConsecutiveUppercase?((e,t)=>(ae.lastIndex=0,e.replaceAll(ae,(e=>t(e)))))(e,n):n(e),t.pascalCase&&(e=r(e.charAt(0))+e.slice(1)),((e,t)=>(ce.lastIndex=0,ue.lastIndex=0,e.replaceAll(ue,((n,r,o)=>["_","-"].includes(e.charAt(o+n.length))?n:t(n))).replaceAll(ce,((e,n)=>t(n)))))(e,r)}const de=e=>e.replace(/^[^$_\p{ID_Start}]+/u,"").replace(/[^$\u200c\u200d\p{ID_Continue}]/gu,"_"),fe=e=>e.replace(/^[^\p{ID_Start}]+/u,"").replace(/[^$\u200c\u200d\p{ID_Continue}]/gu,"-").replace(/\$/g,"-");function he(e="1.0"){return String(e).replace(/^v/gi,"")}const ye=e=>me(fe(e).trim(),{pascalCase:!0}),ge=/^(arguments|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|eval|export|extends|false|finally|for|function|if|implements|import|in|instanceof|interface|let|new|null|package|private|protected|public|return|static|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)$/g;let ve;const be=()=>ve,xe=e=>{const t=be();return t.services.name?t.services.name.replace("{{name}}",e):e},Re=e=>Oe(e).includes("null"),Pe=e=>!0===e.nullable||Re(e),Oe=({type:e})=>Array.isArray(e)?e:e?[e]:[],qe=e=>e.trim().replace(/^#\/definitions\//,"").replace(/^#\/parameters\//,"").replace(/^#\/responses\//,"").replace(/^#\/securityDefinitions\//,"").replace(/^#\/components\/schemas\//,"").replace(/^#\/components\/responses\//,"").replace(/^#\/components\/parameters\//,"").replace(/^#\/components\/examples\//,"").replace(/^#\/components\/requestBodies\//,"").replace(/^#\/components\/headers\//,"").replace(/^#\/components\/securitySchemes\//,"").replace(/^#\/components\/links\//,"").replace(/^#\/components\/callbacks\//,""),Ae=(e,t)=>{if("binary"===t)return"binary";switch(e){case"any":case"object":return"unknown";case"array":return"unknown[]";case"boolean":return"boolean";case"byte":case"double":case"float":case"int":case"integer":case"long":case"number":case"short":return"number";case"char":case"date":case"date-time":case"password":case"string":return"string";case"file":return"binary";case"null":return"null";case"void":return"void"}},we=({format:e,type:t="unknown"})=>{const n={$refs:[],base:"unknown",imports:[],isNullable:!1,template:null,type:"unknown"};if(Array.isArray(t)){const r=t.filter((e=>"null"!==e)).map((t=>Ae(t,e))).filter(Boolean).join(" | ");return n.type=r,n.base=r,n.isNullable=Re({type:t}),n}const r=Ae(t,e);if(r)return n.type=r,n.base=r,n;const o=decodeURIComponent(qe(t));if(/\[.*\]$/g.test(o)){const e=o.match(/(.*?)\[(.*)\]$/);if(e?.length){const t=we({type:de(e[1])}),r=we({type:de(e[2])});return"unknown[]"===t.type?(n.type=`${r.type}[]`,n.base=`${r.type}`,t.$refs=[],t.imports=[]):r.type?(n.type=`${t.type}<${r.type}>`,n.base=t.type,n.template=r.type):(n.type=t.type,n.base=t.type,n.template=t.type),n.$refs=[...n.$refs,...t.$refs,...r.$refs],n.imports=[...n.imports,...t.imports,...r.imports],n}}if(o){let e=(s=de(o),"PascalCase"===be().types.name?me(s,{pascalCase:!0}):s);return t.startsWith("#/components/parameters/")&&(e=`Parameter${e}`),n.type=e,n.base=e,t.startsWith("#")&&(n.$refs=[...n.$refs,t]),n.imports=[...n.imports,e],n}var s;return n};function ke(e,t,n){return n.indexOf(e)===t}const Ee=(e,t)=>{if(!Array.isArray(t))return[];const n=(e["x-enum-descriptions"]??[]).filter((e=>"string"==typeof e)),r=(e["x-enum-varnames"]??e["x-enumNames"]??[]).filter((e=>"string"==typeof e));return t.filter(ke).filter((e=>"number"==typeof e||"string"==typeof e)).map(((e,t)=>({customDescription:n[t],customName:r[t],description:void 0,value:e})))},Ce=e=>e?.replace(/\\/g,"\\\\").replace(/'/g,"\\'"),Te=/^[$_\p{ID_Start}][$\u200c\u200d\p{ID_Continue}]*$/u,$e=e=>{if(e||""===e){if(!Te.test(e))return`'${e}'`}return e},Ie=e=>e&&e.startsWith("'")&&e.endsWith("'")?e.slice(1,e.length-1):e,Se=e=>e.replace(/\*\//g,"*").replace(/\/\*/g,"*").replace(/\r?\n(.*)/g,((e,t)=>a.EOL+t.trim())),He=(e,t,n)=>{const r=[];return Object.entries(t.properties??{}).forEach((([o,s])=>{const a=!!t.required?.includes(o);if(s.$ref){const e=we({type:s.$ref});r.push({$refs:[],base:e.base,description:s.description||null,enum:[],enums:[],exclusiveMaximum:s.exclusiveMaximum,exclusiveMinimum:s.exclusiveMinimum,export:"reference",format:s.format,imports:e.imports,isDefinition:!1,isNullable:!0===s["x-nullable"],isReadOnly:!0===s.readOnly,isRequired:a,link:null,maxItems:s.maxItems,maxLength:s.maxLength,maxProperties:s.maxProperties,maximum:s.maximum,minItems:s.minItems,minLength:s.minLength,minProperties:s.minProperties,minimum:s.minimum,multipleOf:s.multipleOf,name:$e(o),pattern:Ce(s.pattern),properties:[],template:e.template,type:e.type,uniqueItems:s.uniqueItems})}else{const t=n({definition:s,openApi:e});r.push({$refs:[],base:t.base,description:s.description||null,enum:t.enum,enums:t.enums,exclusiveMaximum:s.exclusiveMaximum,exclusiveMinimum:s.exclusiveMinimum,export:t.export,format:s.format,imports:t.imports,isDefinition:!1,isNullable:!0===s["x-nullable"],isReadOnly:!0===s.readOnly,isRequired:a,link:t.link,maxItems:s.maxItems,maxLength:s.maxLength,maxProperties:s.maxProperties,maximum:s.maximum,minItems:s.minItems,minLength:s.minLength,minProperties:s.minProperties,minimum:s.minimum,multipleOf:s.multipleOf,name:$e(o),pattern:Ce(s.pattern),properties:t.properties,template:t.template,type:t.type,uniqueItems:s.uniqueItems})}})),r},_e=/~1/g,De=/~0/g;function Ne(e,t){if(t.$ref){const n=t.$ref.replace(/^#/g,"").split("/").filter((e=>e));let r=e;return n.forEach((e=>{const n=decodeURIComponent(e.replace(_e,"/").replace(De,"~"));if(!r.hasOwnProperty(n))throw new Error(`Could not find reference: "${t.$ref}"`);r=r[n]})),r}return t}const je=(e,t,n,r,o)=>{const s={$refs:[],enums:[],export:r,imports:[],properties:[]},a=[];if(n.map((t=>o({definition:t,openApi:e}))).filter((e=>{const t=e.properties.length,n=e.enums.length;return!("unknown"===e.type&&!t&&!n)})).forEach((e=>{s.imports.push(...e.imports),s.enums.push(...e.enums),s.properties.push(e)})),t.required){const r=((e,t,n,r)=>n.reduce(((t,n)=>{if(n.$ref){const o=Ne(e,n);return[...t,...r({definition:o,openApi:e}).properties]}return[...t,...r({definition:n,openApi:e}).properties]}),[]).filter((e=>!e.isRequired&&t.includes(e.name))).map((e=>({...e,isRequired:!0}))))(e,t.required,n,o);r.forEach((e=>{s.imports.push(...e.imports),s.enums.push(...e.enums)})),a.push(...r)}if(t.properties){const n=He(e,t,o);n.forEach((e=>{s.imports.push(...e.imports),s.enums.push(...e.enums),"enum"===e.export&&s.enums.push(e)})),a.push(...n)}return a.length&&s.properties.push({$refs:[],base:"unknown",description:"",enum:[],enums:[],export:"interface",imports:[],isDefinition:!1,isNullable:!1,isReadOnly:!1,isRequired:!1,link:null,name:"properties",properties:a,template:null,type:"unknown"}),s},Me=({definition:e,isDefinition:t=!1,meta:n,openApi:r})=>{const o={$refs:[],base:"unknown",description:e.description||null,enum:[],enums:[],exclusiveMaximum:e.exclusiveMaximum,exclusiveMinimum:e.exclusiveMinimum,export:"interface",format:e.format,imports:[],isDefinition:t,isNullable:!0===e["x-nullable"],isReadOnly:!0===e.readOnly,isRequired:!1,link:null,maxItems:e.maxItems,maxLength:e.maxLength,maxProperties:e.maxProperties,maximum:e.maximum,meta:n,minItems:e.minItems,minLength:e.minLength,minProperties:e.minProperties,minimum:e.minimum,multipleOf:e.multipleOf,name:n?.name??"",pattern:Ce(e.pattern),properties:[],template:null,type:"unknown",uniqueItems:e.uniqueItems};if(e.$ref){const t=we({type:e.$ref});return o.export="reference",o.type=t.type,o.base=t.base,o.template=t.template,o.imports.push(...t.imports),o}if(e.enum&&"boolean"!==e.type){const t=Ee(e,e.enum);if(t.length)return o.base="string",o.enum=[...o.enum,...t],o.export="enum",o.type="string",o}if("array"===e.type&&e.items){if(e.items.$ref){const t=we({type:e.items.$ref});return o.export="array",o.type=t.type,o.base=t.base,o.template=t.template,o.imports.push(...t.imports),o}{const t=Me({definition:e.items,openApi:r});return o.export="array",o.type=t.type,o.base=t.base,o.template=t.template,o.link=t,o.imports.push(...t.imports),o}}if("object"===e.type&&"object"==typeof e.additionalProperties){if(e.additionalProperties.$ref){const t=we({type:e.additionalProperties.$ref});return o.export="dictionary",o.type=t.type,o.base=t.base,o.template=t.template,o.imports.push(...t.imports),o}{const t=Me({definition:e.additionalProperties,openApi:r});return o.export="dictionary",o.type=t.type,o.base=t.base,o.template=t.template,o.link=t,o.imports.push(...t.imports),o}}if(e.allOf?.length){const t=je(r,e,e.allOf,"all-of",Me);return o.export=t.export,o.imports.push(...t.imports),o.properties.push(...t.properties),o.enums=[...o.enums,...t.enums],o}if("object"===e.type){if(o.export="interface",o.type="unknown",o.base="unknown",e.properties){He(r,e,Me).forEach((e=>{o.imports.push(...e.imports),o.enums=[...o.enums,...e.enums],o.properties.push(e),"enum"===e.export&&(o.enums=[...o.enums,e])}))}return o}if(e.type){const t=we({format:e.format,type:e.type});return o.export="generic",o.type=t.type,o.base=t.base,o.template=t.template,o.imports.push(...t.imports),o}return o},Be=(e,t)=>{const n=e.type===t.type&&e.base===t.base&&e.template===t.template;return n&&e.link&&t.link?Be(e.link,t.link):n},Le=e=>{const t=[];return e.forEach((e=>{const{code:n}=e;n&&("default"===n||n>=200&&n<300)&&t.push(e)})),t.filter(((e,t,n)=>n.findIndex((t=>Be(t,e)))===t))},Fe=(e,t,n)=>{if(be().services.operationId&&n)return me(fe(n).trim());return me(`${t}-${e.replace(/[^/]*?{api-version}.*?\//g,"").replace(/{(.*?)}/g,"by-$1").replace(/\//g,"-")}`)},We=e=>me((e=>{const t=e.replace("[]","Array");return fe(t)})(e).trim()).replace(ge,"_$1"),Ue=e=>{const t=e.find((e=>"header"===e.in));return t?t.name:null},Ve=e=>{if("default"===e)return"default";if(/[0-9]+/g.test(e)){const t=Number.parseInt(e);if(Number.isInteger(t))return Math.abs(t)}return null},Ke=e=>e.filter((({code:e,description:t})=>"number"==typeof e&&e>=300&&t));function Qe(e){return e.sort(((e,t)=>{const n=e.isRequired&&void 0===e.default,r=t.isRequired&&void 0===t.default;return n&&!r?-1:r&&!n?1:0}))}const Je=(e,t)=>{if(void 0===e.default||null===e.default)return e.default;switch(Oe(e).find((e=>"null"!==e))||typeof e.default){case"int":case"integer":case"number":if("enum"===t?.export&&t.enum?.[e.default]){const{value:n}=t.enum[e.default];return n}return e.default;case"string":case"array":case"boolean":case"object":return e.default}},ze=(e,t)=>{const n={$refs:[],imports:[],parameters:[],parametersBody:null,parametersCookie:[],parametersForm:[],parametersHeader:[],parametersPath:[],parametersQuery:[]};return t.forEach((t=>{const r=Ne(e,t),o=((e,t)=>{const n={$refs:[],base:"unknown",description:t.description||null,enum:[],enums:[],exclusiveMaximum:t.exclusiveMaximum,exclusiveMinimum:t.exclusiveMinimum,export:"interface",format:t.format,imports:[],in:t.in,isDefinition:!1,isNullable:!0===t["x-nullable"],isReadOnly:!1,isRequired:!0===t.required,link:null,maxItems:t.maxItems,maxLength:t.maxLength,maximum:t.maximum,mediaType:null,minItems:t.minItems,minLength:t.minLength,minimum:t.minimum,multipleOf:t.multipleOf,name:We(t.name),pattern:Ce(t.pattern),prop:t.name,properties:[],template:null,type:"unknown",uniqueItems:t.uniqueItems};if(t.$ref){const e=we({type:t.$ref});return n.export="reference",n.type=e.type,n.base=e.base,n.template=e.template,n.imports.push(...e.imports),n.default=Je(t,n),n}if(t.enum){const e=Ee(t,t.enum);if(e.length)return n.base="string",n.enum.push(...e),n.export="enum",n.type="string",n.default=Je(t,n),n}if("array"===t.type&&t.items){const e=we({format:t.items.format,type:t.items.type});return n.export="array",n.type=e.type,n.base=e.base,n.template=e.template,n.imports.push(...e.imports),n.default=Je(t,n),n}if("object"===t.type&&t.items){const e=we({format:t.items.format,type:t.items.type});return n.export="dictionary",n.type=e.type,n.base=e.base,n.template=e.template,n.imports.push(...e.imports),n.default=Je(t,n),n}let r=t.schema;if(r){if(r.$ref?.startsWith("#/parameters/")&&(r=Ne(e,r)),r.$ref){const e=we({type:r.$ref});return n.export="reference",n.type=e.type,n.base=e.base,n.template=e.template,n.imports.push(...e.imports),n.default=Je(t,n),n}{const o=Me({definition:r,openApi:e});return n.export=o.export,n.type=o.type,n.base=o.base,n.template=o.template,n.link=o.link,n.imports.push(...o.imports),n.enum.push(...o.enum),n.enums.push(...o.enums),n.properties.push(...o.properties),n.default=Je(t,n),n}}if(t.type){const e=we({format:t.format,type:t.type});return n.export="generic",n.type=e.type,n.base=e.base,n.template=e.template,n.imports.push(...e.imports),n.default=Je(t,n),n}return n})(e,r);if("api-version"!==o.prop)switch(o.in){case"path":n.parametersPath.push(o),n.parameters.push(o),n.imports.push(...o.imports);break;case"query":n.parametersQuery.push(o),n.parameters.push(o),n.imports.push(...o.imports);break;case"header":n.parametersHeader.push(o),n.parameters.push(o),n.imports.push(...o.imports);break;case"formData":n.parametersForm.push(o),n.parameters.push(o),n.imports.push(...o.imports);break;case"body":n.parametersBody=o,n.parameters.push(o),n.imports.push(...o.imports)}})),n},Ge=(e,t)=>{const n=[];return Object.entries(t).forEach((([t,r])=>{const o=Ne(e,r),s=Ve(t);if(s){const t=((e,t,n)=>{const r={$refs:[],base:204!==n?"unknown":"void",code:n,description:t.description||null,enum:[],enums:[],export:"generic",imports:[],in:"response",isDefinition:!1,isNullable:!1,isReadOnly:!1,isRequired:!1,link:null,name:"",properties:[],template:null,type:204!==n?"unknown":"void"};let o=t.schema;if(o){if(o.$ref?.startsWith("#/responses/")&&(o=Ne(e,o)),o.$ref){const e=we({type:o.$ref});return r.export="reference",r.type=e.type,r.base=e.base,r.template=e.template,r.imports.push(...e.imports),r}{const t=Me({definition:o,openApi:e});return r.export=t.export,r.type=t.type,r.base=t.base,r.template=t.template,r.link=t.link,r.isReadOnly=t.isReadOnly,r.isRequired=t.isRequired,r.isNullable=t.isNullable,r.format=t.format,r.maximum=t.maximum,r.exclusiveMaximum=t.exclusiveMaximum,r.minimum=t.minimum,r.exclusiveMinimum=t.exclusiveMinimum,r.multipleOf=t.multipleOf,r.maxLength=t.maxLength,r.minLength=t.minLength,r.maxItems=t.maxItems,r.minItems=t.minItems,r.uniqueItems=t.uniqueItems,r.maxProperties=t.maxProperties,r.minProperties=t.minProperties,r.pattern=Ce(t.pattern),r.imports.push(...t.imports),r.enum.push(...t.enum),r.enums.push(...t.enums),r.properties.push(...t.properties),r}}return Object.keys(t.headers??{}).forEach((e=>(r.in="header",r.name=e,r.type="string",r.base="string",r))),r})(e,o,s);n.push(t)}})),n.sort(((e,t)=>e.code<t.code?-1:e.code>t.code?1:0))},Xe=e=>{const t=new Map;return Object.entries(e.paths).forEach((([n,r])=>{const o=ze(e,r.parameters||[]);Object.keys(r).forEach((s=>{switch(s){case"get":case"put":case"post":case"delete":case"options":case"head":case"patch":{const a=r[s];(a.tags?.length?a.tags.filter(ke):["Default"]).forEach((r=>{const i=((e,t,n,r,o,s)=>{const a=ye(r),i=Fe(t,n,o.operationId),l={$refs:[],deprecated:!0===o.deprecated,description:o.description||null,errors:[],imports:[],method:n.toUpperCase(),name:i,parameters:[...s.parameters],parametersBody:s.parametersBody,parametersCookie:[...s.parametersCookie],parametersForm:[...s.parametersForm],parametersHeader:[...s.parametersHeader],parametersPath:[...s.parametersPath],parametersQuery:[...s.parametersQuery],path:t,responseHeader:null,results:[],service:a,summary:o.summary||null};if(o.parameters){const t=ze(e,o.parameters);l.imports.push(...t.imports),l.parameters.push(...t.parameters),l.parametersPath.push(...t.parametersPath),l.parametersQuery.push(...t.parametersQuery),l.parametersForm.push(...t.parametersForm),l.parametersHeader.push(...t.parametersHeader),l.parametersCookie.push(...t.parametersCookie),l.parametersBody=t.parametersBody}if(o.responses){const t=Ge(e,o.responses),n=Le(t);l.errors=Ke(t),l.responseHeader=Ue(n),n.forEach((e=>{l.results.push(e),l.imports.push(...e.imports)}))}return l.parameters=Qe(l.parameters),l})(e,n,s,r,a,o),l=t.get(i.service)||{$refs:[],imports:[],name:i.service,operations:[]};l.operations.push(i),l.imports.push(...i.imports),t.set(i.service,l)}));break}}}))})),Array.from(t.values())},Ye=e=>{const t=he(e.info.version),n=(e=>{const t=e.schemes?.[0]||"http",n=e.host,r=e.basePath||"";return(n?`${t}://${n}${r}`:r).replace(/\/$/g,"")})(e),r=(e=>{let t=[];return Object.entries(e.definitions??{}).forEach((([n,r])=>{const o=we({type:n}),s=Me({definition:r,isDefinition:!0,meta:{$ref:`#/definitions/${n}`,name:o.base.replace(ge,"_$1")},openApi:e});t=[...t,s]})),t})(e);return{models:r,server:n,services:Xe(e),types:{},version:t}},Ze=(e,t)=>{if(e.mapping){const n=(e=>{const t={};for(const n in e)t[e[n]]=n;return t})(e.mapping),r=Object.keys(n).find((e=>qe(e)==t.name));if(r&&n[r])return n[r]}return t.name},et=(e,t,n,r)=>{const o="object"==typeof t.additionalProperties?t.additionalProperties:{},s=n({definition:o,openApi:e,parentDefinition:t});if(o.$ref){const e=we({type:o.$ref});return r.base=e.base,r.default=Je(t,r),r.export="dictionary",r.imports.push(...e.imports),r.template=e.template,r.type=e.type,r}if(t.additionalProperties&&t.properties){const e=["object"==typeof t.additionalProperties&&t.additionalProperties.type&&!Array.isArray(t.additionalProperties.type)?t.additionalProperties.type:s.base,...r.properties.map((e=>e.base))];return s.base=e.filter(ke).join(" | "),s.default=Je(t,r),s.export="generic",s.isRequired=!0===t.additionalProperties,s.name="[key: string]",s}return r.base=s.base,r.default=Je(t,r),r.export="dictionary",r.imports.push(...s.imports),r.link=s,r.template=s.template,r.type=s.type,r},tt=(e,t,n,r)=>{let o=[];const s=((e,t)=>{if(e.components&&t)for(const n in e.components.schemas)if(e.components.schemas.hasOwnProperty(n)){const r=e.components.schemas[n];if(r.discriminator&&r.oneOf?.length&&r.oneOf.some((e=>e.$ref&&qe(e.$ref)==t.name)))return r.discriminator}})(e,r);return Object.entries(t.properties??{}).forEach((([a,i])=>{const l=!!t.required?.includes(a),p={default:i.default,deprecated:!0===i.deprecated,description:i.description||null,exclusiveMaximum:i.exclusiveMaximum,exclusiveMinimum:i.exclusiveMinimum,format:i.format,isDefinition:!1,isReadOnly:!0===i.readOnly,isRequired:l,maxItems:i.maxItems,maxLength:i.maxLength,maxProperties:i.maxProperties,maximum:i.maximum,minItems:i.minItems,minLength:i.minLength,minProperties:i.minProperties,minimum:i.minimum,multipleOf:i.multipleOf,name:$e(a),pattern:Ce(i.pattern),uniqueItems:i.uniqueItems};if(r&&s?.propertyName==a)o=[...o,{...p,$refs:[],base:`'${Ze(s,r)}'`,enum:[],enums:[],export:"reference",imports:[],isNullable:Pe(i),link:null,properties:[],template:null,type:"string"}];else if(i.$ref){const e=we({type:i.$ref});o=[...o,{...p,$refs:e.$refs,base:e.base,enum:[],enums:[],export:"reference",imports:e.imports,isNullable:e.isNullable||Pe(i),link:null,properties:[],template:e.template,type:e.type}]}else{const r=n({definition:i,initialValues:p,openApi:e,parentDefinition:t});r.isNullable=r.isNullable||Pe(i),o=[...o,r]}})),o},nt=e=>[{definitions:e.allOf,type:"all-of"},{definitions:e.anyOf,type:"any-of"},{definitions:e.oneOf,type:"one-of"}].find((e=>e.definitions?.length)),rt=({definition:e,definitions:t,getModel:n,model:r,openApi:o,type:s})=>{const a={$refs:r.$refs,enums:r.enums,export:s,imports:r.imports,properties:r.properties},i=[];if(t.map((t=>n({definition:t,openApi:o,parentDefinition:e}))).forEach((e=>{a.$refs=[...a.$refs,...e.$refs],a.imports=[...a.imports,...e.imports],a.enums.push(...e.enums),a.properties.push(e)})),e.required){const r=((e,t,n,r)=>n.reduce(((t,n)=>{if(n.$ref){const o=Ne(e,n);return[...t,...r({definition:o,openApi:e}).properties]}return[...t,...r({definition:n,openApi:e,parentDefinition:n}).properties]}),[]).filter((e=>!e.isRequired&&t.includes(e.name))).map((e=>({...e,isRequired:!0}))))(o,e.required,t,n);r.forEach((e=>{a.$refs=[...a.$refs,...e.$refs],a.imports=[...a.imports,...e.imports],a.enums.push(...e.enums)})),i.push(...r)}if(e.properties){const t=tt(o,e,n);t.forEach((e=>{a.$refs=[...a.$refs,...e.$refs],a.imports=[...a.imports,...e.imports],a.enums.push(...e.enums),"enum"===e.export&&a.enums.push(e)})),i.push(...t)}if(i.length){const t=nt(e);"one-of"===t?.type?a.properties.forEach((e=>{e.properties.push(...i)})):a.properties.push({$refs:[],base:"unknown",description:"",enum:[],enums:[],export:"interface",imports:[],isDefinition:!1,isNullable:!1,isReadOnly:!1,isRequired:!1,link:null,name:"properties",properties:i,template:null,type:"unknown"})}return a},ot=({definition:e,initialValues:t={},isDefinition:n=!1,meta:r,openApi:o,parentDefinition:s=null})=>{const a=Oe(e),i=((e,t)=>{if(e.enum&&!t.includes("boolean"))return"enum"})(e,a),l={$refs:[],base:"unknown",deprecated:Boolean(e.deprecated),description:e.description||null,enum:[],enums:[],exclusiveMaximum:e.exclusiveMaximum,exclusiveMinimum:e.exclusiveMinimum,export:"interface",format:e.format,imports:[],isDefinition:n,isNullable:Pe(e),isReadOnly:!0===e.readOnly,isRequired:!1,link:null,maxItems:e.maxItems,maxLength:e.maxLength,maxProperties:e.maxProperties,maximum:e.maximum,meta:r,minItems:e.minItems,minLength:e.minLength,minProperties:e.minProperties,minimum:e.minimum,multipleOf:e.multipleOf,name:r?.name??"",pattern:Ce(e.pattern),properties:[],template:null,type:"unknown",uniqueItems:e.uniqueItems,...t};if(e.$ref){const t=we({type:e.$ref});return l.$refs=[...l.$refs,e.$ref],l.base=t.base,l.export="reference",l.imports=[...l.imports,...t.imports],l.template=t.template,l.type=t.type,l.default=Je(e,l),l}if("enum"===i){const t=Ee(e,e.enum);if(t.length)return l.base="string",l.enum=[...l.enum,...t],l.export="enum",l.type="string",l.default=Je(e,l),l.meta||(l.meta={$ref:`enum/${l.name}`,name:de(Ie(l.name))}),l}if(a.includes("array")&&e.items){if(e.items.$ref){const t=we({type:e.items.$ref});return l.$refs=[...l.$refs,e.items.$ref],l.base=t.base,l.export="array",l.imports=[...l.imports,...t.imports],l.template=t.template,l.type=t.type,l.default=Je(e,l),l}if(e.items.anyOf&&s&&s.type){const t=nt(s);if(t&&t.definitions.some((e=>!Oe(e).includes("array"))))return ot({definition:e.items,openApi:o,parentDefinition:e})}const t=Array.isArray(e.items)?{anyOf:e.items}:e.items,n=ot({definition:t,openApi:o,parentDefinition:e});return l.base=n.base,l.export="array",l.$refs=[...l.$refs,...n.$refs],l.imports=[...l.imports,...n.imports],l.link=n,l.template=n.template,l.type=n.type,l.default=Je(e,l),l}const p=nt(e);if(p){const t=rt({...p,definition:e,getModel:ot,model:l,openApi:o});return{...l,...t}}if(a.includes("object")||e.properties){if(e.properties){l.base="unknown",l.export="interface",l.type="unknown",l.default=Je(e,l);if(tt(o,e,ot,l).forEach((e=>{l.$refs=[...l.$refs,...e.$refs],l.enums=[...l.enums,...e.enums],l.imports=[...l.imports,...e.imports],l.properties.push(e),"enum"===e.export&&(l.enums=[...l.enums,e])})),e.additionalProperties){const t=et(o,e,ot,l);l.properties.push(t)}return l}return et(o,e,ot,l)}if(void 0!==e.const){const t=e.const,n="string"==typeof t?`"${t}"`:`${t}`;return l.base=n,l.export="const",l.type=n,l}if(a.length){const t=we({format:e.format,type:e.type});return l.base=t.base,l.export="generic",l.$refs=[...l.$refs,...t.$refs],l.imports=[...l.imports,...t.imports],l.isNullable=t.isNullable||l.isNullable,l.template=t.template,l.type=t.type,l.default=Je(e,l),l}return l},st=["cookie","formData","header","path","query"],at=(e,t)=>{const n={$refs:[],imports:[],parameters:[],parametersBody:null,parametersCookie:[],parametersForm:[],parametersHeader:[],parametersPath:[],parametersQuery:[]};return t.forEach((t=>{const r=Ne(e,t),o=((e,t)=>{let n={$refs:[],base:"unknown",deprecated:!0===t.deprecated,description:t.description||null,enum:[],enums:[],export:"interface",imports:[],in:t.in,isDefinition:!1,isNullable:Pe(t),isReadOnly:!1,isRequired:!0===t.required,link:null,mediaType:null,name:We(t.name),prop:t.name,properties:[],template:null,type:"unknown"};if(t.$ref){const e=we({type:t.$ref});return n.export="reference",n.type=e.type,n.base=e.base,n.template=e.template,n.$refs=[...n.$refs,...e.$refs],n.imports=[...n.imports,...e.imports],n}let r=t.schema;if(r){if(r.$ref?.startsWith("#/components/parameters/")&&(r=Ne(e,r)),r.$ref){const e=we({type:r.$ref});return n.export="reference",n.type=e.type,n.base=e.base,n.template=e.template,n.$refs=[...n.$refs,...e.$refs],n.imports=[...n.imports,...e.imports],n.default=Je(r),n}{const t=ot({definition:r,openApi:e});return n={...n,$refs:[...n.$refs,...t.$refs],base:t.base,enum:[...n.enum,...t.enum],enums:[...n.enums,...t.enums],exclusiveMaximum:t.exclusiveMaximum,exclusiveMinimum:t.exclusiveMinimum,export:t.export,format:t.format,imports:[...n.imports,...t.imports],isNullable:n.isNullable||t.isNullable,isReadOnly:t.isReadOnly,isRequired:n.isRequired||t.isRequired,link:t.link,maxItems:t.maxItems,maxLength:t.maxLength,maxProperties:t.maxProperties,maximum:t.maximum,minItems:t.minItems,minLength:t.minLength,minProperties:t.minProperties,minimum:t.minimum,multipleOf:t.multipleOf,pattern:Ce(t.pattern),properties:[...n.properties,...t.properties],template:t.template,type:t.type,uniqueItems:t.uniqueItems},!n.enum.length&&!n.enums.length||n.meta||(n.meta={$ref:`enum/${n.name}`,name:de(Ie(n.name))}),n.default=t.default,n}}return n})(e,r),s=r.in;if("api-version"!==o.prop&&st.includes(s)){switch(s){case"cookie":n.parametersCookie=[...n.parametersCookie,o];break;case"formData":n.parametersForm=[...n.parametersForm,o];break;case"header":n.parametersHeader=[...n.parametersHeader,o];break;case"path":n.parametersPath=[...n.parametersPath,o];break;case"query":n.parametersQuery=[...n.parametersQuery,o]}n.$refs=[...n.$refs,...o.$refs],n.imports=[...n.imports,...o.imports],n.parameters=[...n.parameters,o]}})),n},it=["application/json-patch+json","application/json","application/ld+json","application/x-www-form-urlencoded","text/json","text/plain","multipart/form-data","multipart/mixed","multipart/related","multipart/batch"],lt=(e,t)=>{const n=Object.keys(t).filter((e=>{const t=e.split(";")[0].trim();return it.includes(t)})).find((e=>Boolean(t[e]?.schema)));if(n)return{mediaType:n,schema:t[n].schema};const r=Object.keys(t).find((e=>Boolean(t[e]?.schema)));return r?{mediaType:r,schema:t[r].schema}:null},pt=(e,t)=>{const n=[];return Object.entries(t).forEach((([t,r])=>{const o=Ne(e,r),s=Ve(t);if(s){const t=((e,t,n)=>{const r={$refs:[],base:204!==n?"unknown":"void",code:n,description:t.description||null,enum:[],enums:[],export:"generic",imports:[],in:"response",isDefinition:!1,isNullable:!1,isReadOnly:!1,isRequired:!1,link:null,name:"",properties:[],template:null,type:204!==n?"unknown":"void"};if(t.content){const n=lt(0,t.content);if(n){if(n.schema.$ref?.startsWith("#/components/responses/")&&(n.schema=Ne(e,n.schema)),n.schema.$ref){const e=we({type:n.schema.$ref});return r.base=e.base,r.export="reference",r.$refs=[...r.$refs,...e.$refs],r.imports=[...r.imports,...e.imports],r.template=e.template,r.type=e.type,r}{const t=ot({definition:n.schema,openApi:e});return r.export=t.export,r.type=t.type,r.base=t.base,r.template=t.template,r.link=t.link,r.isReadOnly=t.isReadOnly,r.isRequired=t.isRequired,r.isNullable=t.isNullable,r.format=t.format,r.maximum=t.maximum,r.exclusiveMaximum=t.exclusiveMaximum,r.minimum=t.minimum,r.exclusiveMinimum=t.exclusiveMinimum,r.multipleOf=t.multipleOf,r.maxLength=t.maxLength,r.minLength=t.minLength,r.maxItems=t.maxItems,r.minItems=t.minItems,r.uniqueItems=t.uniqueItems,r.maxProperties=t.maxProperties,r.minProperties=t.minProperties,r.pattern=Ce(t.pattern),r.$refs=[...r.$refs,...t.$refs],r.imports=[...r.imports,...t.imports],r.enum.push(...t.enum),r.enums.push(...t.enums),r.properties.push(...t.properties),r}}}return Object.keys(t.headers??{}).forEach((e=>(r.in="header",r.name=e,r.type="string",r.base="string",r))),r})(e,o,s);n.push(t)}})),n.sort(((e,t)=>e.code<t.code?-1:e.code>t.code?1:0))},ct=(e,t)=>{let n=[...e],r=[...t];for(;r.length>0;){const e=r[0];r=r.slice(1);n.every((t=>t.in!==e.in||t.name!==e.name))&&(n=[...n,e])}return n},ut=(e,t)=>{const{method:n,op:r,pathParams:o,tag:s,url:a}=t,i=ye(s),l=Fe(a,n,r.operationId),p={$refs:[],deprecated:Boolean(r.deprecated),description:r.description||null,errors:[],imports:[],method:n.toUpperCase(),name:l,parameters:[],parametersBody:o.parametersBody,parametersCookie:[],parametersForm:[],parametersHeader:[],parametersPath:[],parametersQuery:[],path:a,responseHeader:null,results:[],service:i,summary:r.summary||null};if(r.parameters){const t=at(e,r.parameters);p.$refs=[...p.$refs,...t.$refs],p.imports=[...p.imports,...t.imports],p.parameters=[...p.parameters,...t.parameters],p.parametersBody=t.parametersBody,p.parametersCookie=[...p.parametersCookie,...t.parametersCookie],p.parametersForm=[...p.parametersForm,...t.parametersForm],p.parametersHeader=[...p.parametersHeader,...t.parametersHeader],p.parametersPath=[...p.parametersPath,...t.parametersPath],p.parametersQuery=[...p.parametersQuery,...t.parametersQuery]}if(r.requestBody){const t=((e,t)=>{const n=t["x-body-name"]??"requestBody",r={$refs:[],base:"unknown",default:void 0,description:t.description||null,enum:[],enums:[],export:"interface",imports:[],in:"body",isDefinition:!1,isNullable:!0===t.nullable,isReadOnly:!1,isRequired:!0===t.required,link:null,mediaType:null,name:n,prop:n,properties:[],template:null,type:"unknown"};if(t.content){const n=lt(0,t.content);if(n){switch(r.mediaType=n.mediaType,r.mediaType){case"application/x-www-form-urlencoded":case"multipart/form-data":r.in="formData",r.name="formData",r.prop="formData"}if(n.schema.$ref){const e=we({type:n.schema.$ref});return r.export="reference",r.type=e.type,r.base=e.base,r.template=e.template,r.$refs=[...r.$refs,...e.$refs],r.imports=[...r.imports,...e.imports],r}{const t=ot({definition:n.schema,openApi:e});return r.export=t.export,r.type=t.type,r.base=t.base,r.template=t.template,r.link=t.link,r.isReadOnly=t.isReadOnly,r.isRequired=r.isRequired||t.isRequired,r.isNullable=r.isNullable||t.isNullable,r.format=t.format,r.maximum=t.maximum,r.exclusiveMaximum=t.exclusiveMaximum,r.minimum=t.minimum,r.exclusiveMinimum=t.exclusiveMinimum,r.multipleOf=t.multipleOf,r.maxLength=t.maxLength,r.minLength=t.minLength,r.maxItems=t.maxItems,r.minItems=t.minItems,r.uniqueItems=t.uniqueItems,r.maxProperties=t.maxProperties,r.minProperties=t.minProperties,r.pattern=Ce(t.pattern),r.$refs=[...r.$refs,...t.$refs],r.imports=[...r.imports,...t.imports],r.enum.push(...t.enum),r.enums.push(...t.enums),r.properties.push(...t.properties),r}}}return r})(e,Ne(e,r.requestBody));p.$refs=[...p.$refs,...t.$refs],p.imports=[...p.imports,...t.imports],p.parameters=[...p.parameters,t],p.parametersBody=t}if(r.responses){const t=pt(e,r.responses),n=Le(t);p.errors=Ke(t),p.responseHeader=Ue(n),n.forEach((e=>{p.$refs=[...p.$refs,...e.$refs],p.imports=[...p.imports,...e.imports],p.results=[...p.results,e]}))}return p.parameters=ct(p.parameters,o.parameters),p.parametersCookie=ct(p.parametersCookie,o.parametersCookie),p.parametersForm=ct(p.parametersForm,o.parametersForm),p.parametersHeader=ct(p.parametersHeader,o.parametersHeader),p.parametersPath=ct(p.parametersPath,o.parametersPath),p.parametersQuery=ct(p.parametersQuery,o.parametersQuery),p.parameters=Qe(p.parameters),p},mt=["delete","get","head","options","patch","post","put"],dt=e=>({$refs:[],imports:[],name:e.service,operations:[]}),ft=e=>{const t=he(e.info.version),n=(e=>{const t=e.servers?.[0],n=t?.variables||{};let r=t?.url||"";return Object.entries(n).forEach((([e,t])=>{r=r.replace(`{${e}}`,t.default)})),r.replace(/\/$/g,"")})(e),r=(e=>{if(!e.components)return[];let t=[];return Object.entries(e.components.schemas??{}).forEach((([n,r])=>{const o=we({type:n}),s=ot({definition:r,isDefinition:!0,meta:{$ref:`#/components/schemas/${n}`,name:o.base.replace(ge,"_$1")},openApi:e});t=[...t,s]})),Object.entries(e.components.parameters??{}).forEach((([n,r])=>{const o=r.schema;if(!o)return;const s=we({type:n}),a=ot({definition:o,isDefinition:!0,meta:{$ref:`#/components/parameters/${n}`,name:`Parameter${s.base.replace(ge,"_$1")}`},openApi:e});a.deprecated=r.deprecated,a.description=r.description||null,t=[...t,a]})),t})(e),o=(e=>{const t=new Map;for(const n in e.paths){const r=e.paths[n],o=at(e,r.parameters??[]);for(const s in r){const a=s;if(mt.includes(a)){const s=r[a];(s.tags?.length?s.tags.filter(ke):["Default"]).forEach((r=>{const i=ut(e,{method:a,op:s,pathParams:o,tag:r,url:n}),l=t.get(i.service)||dt(i);l.$refs=[...l.$refs,...i.$refs],l.imports=[...l.imports,...i.imports],l.operations=[...l.operations,i],t.set(i.service,l)}))}}}return Array.from(t.values())})(e);return{models:r,server:n,services:o,types:{},version:t}};var ht={exports:{}},yt={},gt={__esModule:!0};gt.extend=Pt,gt.indexOf=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},gt.escapeExpression=function(e){if("string"!=typeof e){if(e&&e.toHTML)return e.toHTML();if(null==e)return"";if(!e)return e+"";e=""+e}if(!xt.test(e))return e;return e.replace(bt,Rt)},gt.isEmpty=function(e){return!e&&0!==e||!(!At(e)||0!==e.length)},gt.createFrame=function(e){var t=Pt({},e);return t._parent=e,t},gt.blockParams=function(e,t){return e.path=t,e},gt.appendContextPath=function(e,t){return(e?e+".":"")+t};var vt={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;","=":"&#x3D;"},bt=/[&<>"'`=]/g,xt=/[&<>"'`=]/;function Rt(e){return vt[e]}function Pt(e){for(var t=1;t<arguments.length;t++)for(var n in arguments[t])Object.prototype.hasOwnProperty.call(arguments[t],n)&&(e[n]=arguments[t][n]);return e}var Ot=Object.prototype.toString;gt.toString=Ot;var qt=function(e){return"function"==typeof e};qt(/x/)&&(gt.isFunction=qt=function(e){return"function"==typeof e&&"[object Function]"===Ot.call(e)}),gt.isFunction=qt;var At=Array.isArray||function(e){return!(!e||"object"!=typeof e)&&"[object Array]"===Ot.call(e)};gt.isArray=At;var wt={exports:{}};!function(e,t){t.__esModule=!0;var n=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function r(e,t){var o=t&&t.loc,s=void 0,a=void 0,i=void 0,l=void 0;o&&(s=o.start.line,a=o.end.line,i=o.start.column,l=o.end.column,e+=" - "+s+":"+i);for(var p=Error.prototype.constructor.call(this,e),c=0;c<n.length;c++)this[n[c]]=p[n[c]];Error.captureStackTrace&&Error.captureStackTrace(this,r);try{o&&(this.lineNumber=s,this.endLineNumber=a,Object.defineProperty?(Object.defineProperty(this,"column",{value:i,enumerable:!0}),Object.defineProperty(this,"endColumn",{value:l,enumerable:!0})):(this.column=i,this.endColumn=l))}catch(e){}}r.prototype=new Error,t.default=r,e.exports=t.default}(wt,wt.exports);var kt=wt.exports,Et={},Ct={exports:{}};!function(e,t){t.__esModule=!0;var n=gt;t.default=function(e){e.registerHelper("blockHelperMissing",(function(t,r){var o=r.inverse,s=r.fn;if(!0===t)return s(this);if(!1===t||null==t)return o(this);if(n.isArray(t))return t.length>0?(r.ids&&(r.ids=[r.name]),e.helpers.each(t,r)):o(this);if(r.data&&r.ids){var a=n.createFrame(r.data);a.contextPath=n.appendContextPath(r.data.contextPath,r.name),r={data:a}}return s(t,r)}))},e.exports=t.default}(Ct,Ct.exports);var Tt=Ct.exports,$t={exports:{}};!function(e,t){t.__esModule=!0;var n,r=gt,o=(n=kt)&&n.__esModule?n:{default:n};t.default=function(e){e.registerHelper("each",(function(e,t){if(!t)throw new o.default("Must pass iterator to #each");var n,s=t.fn,a=t.inverse,i=0,l="",p=void 0,c=void 0;function u(t,n,o){p&&(p.key=t,p.index=n,p.first=0===n,p.last=!!o,c&&(p.contextPath=c+t)),l+=s(e[t],{data:p,blockParams:r.blockParams([e[t],t],[c+t,null])})}if(t.data&&t.ids&&(c=r.appendContextPath(t.data.contextPath,t.ids[0])+"."),r.isFunction(e)&&(e=e.call(this)),t.data&&(p=r.createFrame(t.data)),e&&"object"==typeof e)if(r.isArray(e))for(var m=e.length;i<m;i++)i in e&&u(i,i,i===e.length-1);else if("function"==typeof Symbol&&e[Symbol.iterator]){for(var d=[],f=e[Symbol.iterator](),h=f.next();!h.done;h=f.next())d.push(h.value);for(m=(e=d).length;i<m;i++)u(i,i,i===e.length-1)}else n=void 0,Object.keys(e).forEach((function(e){void 0!==n&&u(n,i-1),n=e,i++})),void 0!==n&&u(n,i-1,!0);return 0===i&&(l=a(this)),l}))},e.exports=t.default}($t,$t.exports);var It=$t.exports,St={exports:{}};!function(e,t){t.__esModule=!0;var n,r=(n=kt)&&n.__esModule?n:{default:n};t.default=function(e){e.registerHelper("helperMissing",(function(){if(1!==arguments.length)throw new r.default('Missing helper: "'+arguments[arguments.length-1].name+'"')}))},e.exports=t.default}(St,St.exports);var Ht=St.exports,_t={exports:{}};!function(e,t){t.__esModule=!0;var n,r=gt,o=(n=kt)&&n.__esModule?n:{default:n};t.default=function(e){e.registerHelper("if",(function(e,t){if(2!=arguments.length)throw new o.default("#if requires exactly one argument");return r.isFunction(e)&&(e=e.call(this)),!t.hash.includeZero&&!e||r.isEmpty(e)?t.inverse(this):t.fn(this)})),e.registerHelper("unless",(function(t,n){if(2!=arguments.length)throw new o.default("#unless requires exactly one argument");return e.helpers.if.call(this,t,{fn:n.inverse,inverse:n.fn,hash:n.hash})}))},e.exports=t.default}(_t,_t.exports);var Dt=_t.exports,Nt={exports:{}};!function(e,t){t.__esModule=!0,t.default=function(e){e.registerHelper("log",(function(){for(var t=[void 0],n=arguments[arguments.length-1],r=0;r<arguments.length-1;r++)t.push(arguments[r]);var o=1;null!=n.hash.level?o=n.hash.level:n.data&&null!=n.data.level&&(o=n.data.level),t[0]=o,e.log.apply(e,t)}))},e.exports=t.default}(Nt,Nt.exports);var jt=Nt.exports,Mt={exports:{}};!function(e,t){t.__esModule=!0,t.default=function(e){e.registerHelper("lookup",(function(e,t,n){return e?n.lookupProperty(e,t):e}))},e.exports=t.default}(Mt,Mt.exports);var Bt=Mt.exports,Lt={exports:{}};!function(e,t){t.__esModule=!0;var n,r=gt,o=(n=kt)&&n.__esModule?n:{default:n};t.default=function(e){e.registerHelper("with",(function(e,t){if(2!=arguments.length)throw new o.default("#with requires exactly one argument");r.isFunction(e)&&(e=e.call(this));var n=t.fn;if(r.isEmpty(e))return t.inverse(this);var s=t.data;return t.data&&t.ids&&((s=r.createFrame(t.data)).contextPath=r.appendContextPath(t.data.contextPath,t.ids[0])),n(e,{data:s,blockParams:r.blockParams([e],[s&&s.contextPath])})}))},e.exports=t.default}(Lt,Lt.exports);var Ft=Lt.exports;function Wt(e){return e&&e.__esModule?e:{default:e}}Et.__esModule=!0,Et.registerDefaultHelpers=function(e){Ut.default(e),Vt.default(e),Kt.default(e),Qt.default(e),Jt.default(e),zt.default(e),Gt.default(e)},Et.moveHelperToHooks=function(e,t,n){e.helpers[t]&&(e.hooks[t]=e.helpers[t],n||delete e.helpers[t])};var Ut=Wt(Tt),Vt=Wt(It),Kt=Wt(Ht),Qt=Wt(Dt),Jt=Wt(jt),zt=Wt(Bt),Gt=Wt(Ft);var Xt={},Yt={exports:{}};!function(e,t){t.__esModule=!0;var n=gt;t.default=function(e){e.registerDecorator("inline",(function(e,t,r,o){var s=e;return t.partials||(t.partials={},s=function(o,s){var a=r.partials;r.partials=n.extend({},a,t.partials);var i=e(o,s);return r.partials=a,i}),t.partials[o.args[0]]=o.fn,s}))},e.exports=t.default}(Yt,Yt.exports);var Zt=Yt.exports;Xt.__esModule=!0,Xt.registerDefaultDecorators=function(e){tn.default(e)};var en,tn=(en=Zt)&&en.__esModule?en:{default:en};var nn={exports:{}};!function(e,t){t.__esModule=!0;var n=gt,r={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(e){if("string"==typeof e){var t=n.indexOf(r.methodMap,e.toLowerCase());e=t>=0?t:parseInt(e,10)}return e},log:function(e){if(e=r.lookupLevel(e),"undefined"!=typeof console&&r.lookupLevel(r.level)<=e){var t=r.methodMap[e];console[t]||(t="log");for(var n=arguments.length,o=Array(n>1?n-1:0),s=1;s<n;s++)o[s-1]=arguments[s];console[t].apply(console,o)}}};t.default=r,e.exports=t.default}(nn,nn.exports);var rn=nn.exports,on={},sn={__esModule:!0,createNewLookupObject:function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return an.extend.apply(void 0,[Object.create(null)].concat(t))}},an=gt;on.__esModule=!0,on.createProtoAccessControl=function(e){var t=Object.create(null);t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1;var n=Object.create(null);return n.__proto__=!1,{properties:{whitelist:ln.createNewLookupObject(n,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:ln.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}},on.resultIsAllowed=function(e,t,n){return un("function"==typeof e?t.methods:t.properties,n)},on.resetLoggedProperties=function(){Object.keys(cn).forEach((function(e){delete cn[e]}))};var ln=sn,pn=function(e){return e&&e.__esModule?e:{default:e}}(rn),cn=Object.create(null);function un(e,t){return void 0!==e.whitelist[t]?!0===e.whitelist[t]:void 0!==e.defaultValue?e.defaultValue:(function(e){!0!==cn[e]&&(cn[e]=!0,pn.default.log("error",'Handlebars: Access has been denied to resolve the property "'+e+'" because it is not an "own property" of its parent.\nYou can add a runtime option to disable the check or this warning:\nSee https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details'))}(t),!1)}function mn(e){return e&&e.__esModule?e:{default:e}}yt.__esModule=!0,yt.HandlebarsEnvironment=xn;var dn=gt,fn=mn(kt),hn=Et,yn=Xt,gn=mn(rn),vn=on;yt.VERSION="4.7.8";yt.COMPILER_REVISION=8;yt.LAST_COMPATIBLE_COMPILER_REVISION=7;yt.REVISION_CHANGES={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};var bn="[object Object]";function xn(e,t,n){this.helpers=e||{},this.partials=t||{},this.decorators=n||{},hn.registerDefaultHelpers(this),yn.registerDefaultDecorators(this)}xn.prototype={constructor:xn,logger:gn.default,log:gn.default.log,registerHelper:function(e,t){if(dn.toString.call(e)===bn){if(t)throw new fn.default("Arg not supported with multiple helpers");dn.extend(this.helpers,e)}else this.helpers[e]=t},unregisterHelper:function(e){delete this.helpers[e]},registerPartial:function(e,t){if(dn.toString.call(e)===bn)dn.extend(this.partials,e);else{if(void 0===t)throw new fn.default('Attempting to register a partial called "'+e+'" as undefined');this.partials[e]=t}},unregisterPartial:function(e){delete this.partials[e]},registerDecorator:function(e,t){if(dn.toString.call(e)===bn){if(t)throw new fn.default("Arg not supported with multiple decorators");dn.extend(this.decorators,e)}else this.decorators[e]=t},unregisterDecorator:function(e){delete this.decorators[e]},resetLoggedPropertyAccesses:function(){vn.resetLoggedProperties()}};var Rn=gn.default.log;yt.log=Rn,yt.createFrame=dn.createFrame,yt.logger=gn.default;var Pn={exports:{}};!function(e,t){function n(e){this.string=e}t.__esModule=!0,n.prototype.toString=n.prototype.toHTML=function(){return""+this.string},t.default=n,e.exports=t.default}(Pn,Pn.exports);var On=Pn.exports,qn={},An={};An.__esModule=!0,An.wrapHelper=function(e,t){if("function"!=typeof e)return e;return function(){return arguments[arguments.length-1]=t(arguments[arguments.length-1]),e.apply(this,arguments)}},qn.__esModule=!0,qn.checkRevision=function(e){var t=e&&e[0]||1,n=En.COMPILER_REVISION;if(t>=En.LAST_COMPATIBLE_COMPILER_REVISION&&t<=En.COMPILER_REVISION)return;if(t<En.LAST_COMPATIBLE_COMPILER_REVISION){var r=En.REVISION_CHANGES[n],o=En.REVISION_CHANGES[t];throw new kn.default("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+r+") or downgrade your runtime to an older version ("+o+").")}throw new kn.default("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+e[1]+").")},qn.template=function(e,t){if(!t)throw new kn.default("No environment passed to template");if(!e||!e.main)throw new kn.default("Unknown template object: "+typeof e);e.main.decorator=e.main_d,t.VM.checkRevision(e.compiler);var n=e.compiler&&7===e.compiler[0];var r={strict:function(e,t,n){if(!e||!(t in e))throw new kn.default('"'+t+'" not defined in '+e,{loc:n});return r.lookupProperty(e,t)},lookupProperty:function(e,t){var n=e[t];return null==n||Object.prototype.hasOwnProperty.call(e,t)||$n.resultIsAllowed(n,r.protoAccessControl,t)?n:void 0},lookup:function(e,t){for(var n=e.length,o=0;o<n;o++){if(null!=(e[o]&&r.lookupProperty(e[o],t)))return e[o][t]}},lambda:function(e,t){return"function"==typeof e?e.call(t):e},escapeExpression:wn.escapeExpression,invokePartial:function(n,r,o){o.hash&&(r=wn.extend({},r,o.hash),o.ids&&(o.ids[0]=!0)),n=t.VM.resolvePartial.call(this,n,r,o);var s=wn.extend({},o,{hooks:this.hooks,protoAccessControl:this.protoAccessControl}),a=t.VM.invokePartial.call(this,n,r,s);if(null==a&&t.compile&&(o.partials[o.name]=t.compile(n,e.compilerOptions,t),a=o.partials[o.name](r,s)),null!=a){if(o.indent){for(var i=a.split("\n"),l=0,p=i.length;l<p&&(i[l]||l+1!==p);l++)i[l]=o.indent+i[l];a=i.join("\n")}return a}throw new kn.default("The partial "+o.name+" could not be compiled when running in runtime-only mode")},fn:function(t){var n=e[t];return n.decorator=e[t+"_d"],n},programs:[],program:function(e,t,n,r,o){var s=this.programs[e],a=this.fn(e);return t||o||r||n?s=In(this,e,a,t,n,r,o):s||(s=this.programs[e]=In(this,e,a)),s},data:function(e,t){for(;e&&t--;)e=e._parent;return e},mergeIfNeeded:function(e,t){var n=e||t;return e&&t&&e!==t&&(n=wn.extend({},t,e)),n},nullContext:Object.seal({}),noop:t.VM.noop,compilerInfo:e.compiler};function o(t){var n=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],s=n.data;o._setup(n),!n.partial&&e.useData&&(s=function(e,t){t&&"root"in t||((t=t?En.createFrame(t):{}).root=e);return t}(t,s));var a=void 0,i=e.useBlockParams?[]:void 0;function l(t){return""+e.main(r,t,r.helpers,r.partials,s,i,a)}return e.useDepths&&(a=n.depths?t!=n.depths[0]?[t].concat(n.depths):n.depths:[t]),(l=Hn(e.main,l,r,n.depths||[],s,i))(t,n)}return o.isTop=!0,o._setup=function(o){if(o.partial)r.protoAccessControl=o.protoAccessControl,r.helpers=o.helpers,r.partials=o.partials,r.decorators=o.decorators,r.hooks=o.hooks;else{var s=wn.extend({},t.helpers,o.helpers);!function(e,t){Object.keys(e).forEach((function(n){var r=e[n];e[n]=function(e,t){var n=t.lookupProperty;return Tn.wrapHelper(e,(function(e){return wn.extend({lookupProperty:n},e)}))}(r,t)}))}(s,r),r.helpers=s,e.usePartial&&(r.partials=r.mergeIfNeeded(o.partials,t.partials)),(e.usePartial||e.useDecorators)&&(r.decorators=wn.extend({},t.decorators,o.decorators)),r.hooks={},r.protoAccessControl=$n.createProtoAccessControl(o);var a=o.allowCallsToHelperMissing||n;Cn.moveHelperToHooks(r,"helperMissing",a),Cn.moveHelperToHooks(r,"blockHelperMissing",a)}},o._child=function(t,n,o,s){if(e.useBlockParams&&!o)throw new kn.default("must pass block params");if(e.useDepths&&!s)throw new kn.default("must pass parent depths");return In(r,t,e[t],n,0,o,s)},o},qn.wrapProgram=In,qn.resolvePartial=function(e,t,n){e?e.call||n.name||(n.name=e,e=n.partials[e]):e="@partial-block"===n.name?n.data["partial-block"]:n.partials[n.name];return e},qn.invokePartial=function(e,t,n){var r=n.data&&n.data["partial-block"];n.partial=!0,n.ids&&(n.data.contextPath=n.ids[0]||n.data.contextPath);var o=void 0;n.fn&&n.fn!==Sn&&function(){n.data=En.createFrame(n.data);var e=n.fn;o=n.data["partial-block"]=function(t){var n=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];return n.data=En.createFrame(n.data),n.data["partial-block"]=r,e(t,n)},e.partials&&(n.partials=wn.extend({},n.partials,e.partials))}();void 0===e&&o&&(e=o);if(void 0===e)throw new kn.default("The partial "+n.name+" could not be found");if(e instanceof Function)return e(t,n)},qn.noop=Sn;var wn=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(gt),kn=function(e){return e&&e.__esModule?e:{default:e}}(kt),En=yt,Cn=Et,Tn=An,$n=on;function In(e,t,n,r,o,s,a){function i(t){var o=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],i=a;return!a||t==a[0]||t===e.nullContext&&null===a[0]||(i=[t].concat(a)),n(e,t,e.helpers,e.partials,o.data||r,s&&[o.blockParams].concat(s),i)}return(i=Hn(n,i,e,a,r,s)).program=t,i.depth=a?a.length:0,i.blockParams=o||0,i}function Sn(){return""}function Hn(e,t,n,r,o,s){if(e.decorator){var a={};t=e.decorator(t,a,n,r&&r[0],o,s,r),wn.extend(t,a)}return t}var _n={exports:{}};!function(e,t){t.__esModule=!0,t.default=function(e){"object"!=typeof globalThis&&(Object.prototype.__defineGetter__("__magic__",(function(){return this})),__magic__.globalThis=__magic__,delete Object.prototype.__magic__);var t=globalThis.Handlebars;e.noConflict=function(){return globalThis.Handlebars===e&&(globalThis.Handlebars=t),e}},e.exports=t.default}(_n,_n.exports);var Dn=_n.exports;!function(e,t){function n(e){return e&&e.__esModule?e:{default:e}}function r(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}t.__esModule=!0;var o=r(yt),s=n(On),a=n(kt),i=r(gt),l=r(qn),p=n(Dn);function c(){var e=new o.HandlebarsEnvironment;return i.extend(e,o),e.SafeString=s.default,e.Exception=a.default,e.Utils=i,e.escapeExpression=i.escapeExpression,e.VM=l,e.template=function(t){return l.template(t,e)},e}var u=c();u.create=c,p.default(u),u.default=u,t.default=u,e.exports=t.default}(ht,ht.exports);var Nn=c(ht.exports.default),jn={1:function(e,t,n,r,o){return"import { NgModule} from '@angular/core';\nimport { HttpClientModule } from '@angular/common/http';\n\nimport { AngularHttpRequest } from './core/AngularHttpRequest';\nimport { BaseHttpRequest } from './core/BaseHttpRequest';\nimport type { OpenAPIConfig } from './core/OpenAPI';\nimport { OpenAPI } from './core/OpenAPI';\nimport { Interceptors } from './core/OpenAPI';\n"},3:function(e,t,n,r,o){var s,a=e.strict,i=e.lambda;return"import type { BaseHttpRequest } from './core/BaseHttpRequest';\nimport type { OpenAPIConfig } from './core/OpenAPI';\nimport { Interceptors } from './core/OpenAPI';\nimport { "+(null!=(s=i(a(t,"httpRequest",{start:{line:14,column:12},end:{line:14,column:23}}),t))?s:"")+" } from './core/"+(null!=(s=i(a(t,"httpRequest",{start:{line:14,column:45},end:{line:14,column:56}}),t))?s:"")+"';\n"},5:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(s=a(n,"each").call(null!=t?t:e.nullContext||{},a(t,"services"),{name:"each",hash:{},fn:e.program(6,o,0),inverse:e.noop,data:o,loc:{start:{line:18,column:0},end:{line:20,column:9}}}))?s:""},6:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"import { "+(null!=(s=a(n,"transformServiceName").call(null!=t?t:e.nullContext||{},a(t,"name"),{name:"transformServiceName",hash:{},data:o,loc:{start:{line:19,column:9},end:{line:19,column:40}}}))?s:"")+" } from './services.gen';\n"},8:function(e,t,n,r,o){var s,a=e.strict,i=e.lambda,l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"@NgModule({\n\timports: [HttpClientModule],\n\tproviders: [\n\t\t{\n\t\t\tprovide: OpenAPI,\n\t\t\tuseValue: {\n\t\t\t\tBASE: OpenAPI?.BASE ?? '"+(null!=(s=i(a(t,"server",{start:{line:30,column:31},end:{line:30,column:37}}),t))?s:"")+"',\n\t\t\t\tVERSION: OpenAPI?.VERSION ?? '"+(null!=(s=i(a(t,"version",{start:{line:31,column:37},end:{line:31,column:44}}),t))?s:"")+"',\n\t\t\t\tWITH_CREDENTIALS: OpenAPI?.WITH_CREDENTIALS ?? false,\n\t\t\t\tCREDENTIALS: OpenAPI?.CREDENTIALS ?? 'include',\n\t\t\t\tTOKEN: OpenAPI?.TOKEN,\n\t\t\t\tUSERNAME: OpenAPI?.USERNAME,\n\t\t\t\tPASSWORD: OpenAPI?.PASSWORD,\n\t\t\t\tHEADERS: OpenAPI?.HEADERS,\n\t\t\t\tENCODE_PATH: OpenAPI?.ENCODE_PATH,\n\t\t\t\tinterceptors: {\n\t\t\t\t\tresponse: OpenAPI?.interceptors?.response ?? new Interceptors(),\n\t\t\t\t},\n\t\t\t} as OpenAPIConfig,\n\t\t},\n\t\t{\n\t\t\tprovide: BaseHttpRequest,\n\t\t\tuseClass: AngularHttpRequest,\n\t\t},\n"+(null!=(s=l(n,"each").call(null!=t?t:e.nullContext||{},l(t,"services"),{name:"each",hash:{},fn:e.program(9,o,0),inverse:e.noop,data:o,loc:{start:{line:48,column:2},end:{line:50,column:11}}}))?s:"")+"\t]\n})\nexport class "+(null!=(s=i(a(l(l(o,"root"),"$config"),"name",{start:{line:53,column:16},end:{line:53,column:34}}),t))?s:"")+" {}\n"},9:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"\t\t"+(null!=(s=a(n,"transformServiceName").call(null!=t?t:e.nullContext||{},a(t,"name"),{name:"transformServiceName",hash:{},data:o,loc:{start:{line:49,column:2},end:{line:49,column:33}}}))?s:"")+",\n"},11:function(e,t,n,r,o){var s,a=e.strict,i=e.lambda,l=null!=t?t:e.nullContext||{},p=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"type HttpRequestConstructor = new (config: OpenAPIConfig) => BaseHttpRequest;\n\nexport class "+(null!=(s=i(a(p(p(o,"root"),"$config"),"name",{start:{line:57,column:16},end:{line:57,column:34}}),t))?s:"")+" {\n\n"+(null!=(s=p(n,"each").call(l,p(t,"services"),{name:"each",hash:{},fn:e.program(12,o,0),inverse:e.noop,data:o,loc:{start:{line:59,column:1},end:{line:61,column:10}}}))?s:"")+"\n\tpublic readonly request: BaseHttpRequest;\n\n\tconstructor(config?: Partial<OpenAPIConfig>, HttpRequest: HttpRequestConstructor = "+(null!=(s=i(a(t,"httpRequest",{start:{line:65,column:87},end:{line:65,column:98}}),t))?s:"")+") {\n\t\tthis.request = new HttpRequest({\n\t\t\tBASE: config?.BASE ?? '"+(null!=(s=i(a(t,"server",{start:{line:67,column:29},end:{line:67,column:35}}),t))?s:"")+"',\n\t\t\tVERSION: config?.VERSION ?? '"+(null!=(s=i(a(t,"version",{start:{line:68,column:35},end:{line:68,column:42}}),t))?s:"")+"',\n\t\t\tWITH_CREDENTIALS: config?.WITH_CREDENTIALS ?? false,\n\t\t\tCREDENTIALS: config?.CREDENTIALS ?? 'include',\n\t\t\tTOKEN: config?.TOKEN,\n\t\t\tUSERNAME: config?.USERNAME,\n\t\t\tPASSWORD: config?.PASSWORD,\n\t\t\tHEADERS: config?.HEADERS,\n\t\t\tENCODE_PATH: config?.ENCODE_PATH,\n\t\t\tinterceptors: {\n\t\t\t\trequest: config?.interceptors?.request ?? new Interceptors(),\n\t\t\t\tresponse: config?.interceptors?.response ?? new Interceptors(),\n },\n\t\t});\n\n"+(null!=(s=p(n,"each").call(l,p(t,"services"),{name:"each",hash:{},fn:e.program(14,o,0),inverse:e.noop,data:o,loc:{start:{line:82,column:2},end:{line:84,column:11}}}))?s:"")+"\t}\n}\n"},12:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"\tpublic readonly "+(null!=(s=i(n,"camelCase").call(a,i(t,"name"),{name:"camelCase",hash:{},data:o,loc:{start:{line:60,column:17},end:{line:60,column:37}}}))?s:"")+": "+(null!=(s=i(n,"transformServiceName").call(a,i(t,"name"),{name:"transformServiceName",hash:{},data:o,loc:{start:{line:60,column:39},end:{line:60,column:70}}}))?s:"")+";\n"},14:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"\t\tthis."+(null!=(s=i(n,"camelCase").call(a,i(t,"name"),{name:"camelCase",hash:{},data:o,loc:{start:{line:83,column:7},end:{line:83,column:27}}}))?s:"")+" = new "+(null!=(s=i(n,"transformServiceName").call(a,i(t,"name"),{name:"transformServiceName",hash:{},data:o,loc:{start:{line:83,column:34},end:{line:83,column:65}}}))?s:"")+"(this.request);\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.program(3,o,0),data:o,loc:{start:{line:1,column:0},end:{line:15,column:11}}}))?s:"")+"\n"+(null!=(s=i(n,"if").call(a,i(t,"services"),{name:"if",hash:{},fn:e.program(5,o,0),inverse:e.noop,data:o,loc:{start:{line:17,column:0},end:{line:21,column:7}}}))?s:"")+"\n"+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(8,o,0),inverse:e.program(11,o,0),data:o,loc:{start:{line:23,column:0},end:{line:87,column:11}}}))?s:"")},useData:!0},Mn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getHeaders = (config: OpenAPIConfig, options: ApiRequestOptions): Observable<HttpHeaders> => {\n\treturn forkJoin({\n\t\ttoken: resolve(options, config.TOKEN),\n\t\tusername: resolve(options, config.USERNAME),\n\t\tpassword: resolve(options, config.PASSWORD),\n\t\tadditionalHeaders: resolve(options, config.HEADERS),\n\t}).pipe(\n\t\tmap(({ token, username, password, additionalHeaders }) => {\n\t\t\tconst headers = Object.entries({\n\t\t\t\tAccept: 'application/json',\n\t\t\t\t...additionalHeaders,\n\t\t\t\t...options.headers,\n\t\t\t})\n\t\t\t\t.filter(([, value]) => value !== undefined && value !== null)\n\t\t\t\t.reduce((headers, [key, value]) => ({\n\t\t\t\t\t...headers,\n\t\t\t\t\t[key]: String(value),\n\t\t\t\t}), {} as Record<string, string>);\n\n\t\t\tif (isStringWithValue(token)) {\n\t\t\t\theaders['Authorization'] = `Bearer ${token}`;\n\t\t\t}\n\n\t\t\tif (isStringWithValue(username) && isStringWithValue(password)) {\n\t\t\t\tconst credentials = base64(`${username}:${password}`);\n\t\t\t\theaders['Authorization'] = `Basic ${credentials}`;\n\t\t\t}\n\n\t\t\tif (options.body !== undefined) {\n\t\t\t\tif (options.mediaType) {\n\t\t\t\t\theaders['Content-Type'] = options.mediaType;\n\t\t\t\t} else if (isBlob(options.body)) {\n\t\t\t\t\theaders['Content-Type'] = options.body.type || 'application/octet-stream';\n\t\t\t\t} else if (isString(options.body)) {\n\t\t\t\t\theaders['Content-Type'] = 'text/plain';\n\t\t\t\t} else if (!isFormData(options.body)) {\n\t\t\t\t\theaders['Content-Type'] = 'application/json';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn new HttpHeaders(headers);\n\t\t}),\n\t);\n};"},useData:!0},Bn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getRequestBody = (options: ApiRequestOptions): unknown => {\n\tif (options.body) {\n\t\tif (options.mediaType?.includes('application/json') || options.mediaType?.includes('+json')) {\n\t\t\treturn JSON.stringify(options.body);\n\t\t} else if (isString(options.body) || isBlob(options.body) || isFormData(options.body)) {\n\t\t\treturn options.body;\n\t\t} else {\n\t\t\treturn JSON.stringify(options.body);\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},Ln={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseBody = <T>(response: HttpResponse<T>): T | undefined => {\n\tif (response.status !== 204 && response.body !== null) {\n\t\treturn response.body;\n\t}\n\treturn undefined;\n};"},useData:!0},Fn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseHeader = <T>(response: HttpResponse<T>, responseHeader?: string): string | undefined => {\n\tif (responseHeader) {\n\t\tconst value = response.headers.get(responseHeader);\n\t\tif (isString(value)) {\n\t\t\treturn value;\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},Wn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"import { HttpClient, HttpHeaders } from '@angular/common/http';\nimport type { HttpResponse, HttpErrorResponse } from '@angular/common/http';\nimport { forkJoin, of, throwError } from 'rxjs';\nimport { catchError, map, switchMap } from 'rxjs/operators';\nimport type { Observable } from 'rxjs';\n\nimport { ApiError } from './ApiError';\nimport type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { ApiResult } from './ApiResult';\nimport type { OpenAPIConfig } from './OpenAPI';\n\n"+(null!=(s=e.invokePartial(a(r,"functions/isString"),t,{name:"functions/isString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/isStringWithValue"),t,{name:"functions/isStringWithValue",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/isBlob"),t,{name:"functions/isBlob",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/isFormData"),t,{name:"functions/isFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/base64"),t,{name:"functions/base64",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/getQueryString"),t,{name:"functions/getQueryString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/getUrl"),t,{name:"functions/getUrl",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/getFormData"),t,{name:"functions/getFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/resolve"),t,{name:"functions/resolve",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"angular/getHeaders"),t,{name:"angular/getHeaders",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"angular/getRequestBody"),t,{name:"angular/getRequestBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"angular/sendRequest"),t,{name:"angular/sendRequest",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"angular/getResponseHeader"),t,{name:"angular/getResponseHeader",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"angular/getResponseBody"),t,{name:"angular/getResponseBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(a(r,"functions/catchErrorCodes"),t,{name:"functions/catchErrorCodes",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n/**\n * Request method\n * @param config The OpenAPI configuration object\n * @param http The Angular HTTP client\n * @param options The request options from the service\n * @returns Observable<T>\n * @throws ApiError\n */\nexport const request = <T>(config: OpenAPIConfig, http: HttpClient, options: ApiRequestOptions): Observable<T> => {\n\tconst url = getUrl(config, options);\n\tconst formData = getFormData(options);\n\tconst body = getRequestBody(options);\n\n\treturn getHeaders(config, options).pipe(\n\t\tswitchMap(headers => {\n\t\t\treturn sendRequest<T>(config, options, http, url, body, formData, headers);\n\t\t}),\n\t\tswitchMap(async response => {\n\t\t\tfor (const fn of config.interceptors.response._fns) {\n\t\t\t\tresponse = await fn(response);\n\t\t\t}\n\t\t\tconst responseBody = getResponseBody(response);\n\t\t\tconst responseHeader = getResponseHeader(response, options.responseHeader);\n\t\t\treturn {\n\t\t\t\turl,\n\t\t\t\tok: response.ok,\n\t\t\t\tstatus: response.status,\n\t\t\t\tstatusText: response.statusText,\n\t\t\t\tbody: responseHeader ?? responseBody,\n\t\t\t} as ApiResult;\n\t\t}),\n\t\tcatchError((error: HttpErrorResponse) => {\n\t\t\tif (!error.status) {\n\t\t\t\treturn throwError(() => error);\n\t\t\t}\n\t\t\treturn of({\n\t\t\t\turl,\n\t\t\t\tok: error.ok,\n\t\t\t\tstatus: error.status,\n\t\t\t\tstatusText: error.statusText,\n\t\t\t\tbody: error.error ?? error.statusText,\n\t\t\t} as ApiResult);\n\t\t}),\n\t\tmap(result => {\n\t\t\tcatchErrorCodes(options, result);\n\t\t\treturn result.body as T;\n\t\t}),\n\t\tcatchError((error: ApiError) => {\n\t\t\treturn throwError(() => error);\n\t\t}),\n\t);\n};"},usePartial:!0,useData:!0},Un={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const sendRequest = <T>(\n\tconfig: OpenAPIConfig,\n\toptions: ApiRequestOptions,\n\thttp: HttpClient,\n\turl: string,\n\tbody: unknown,\n\tformData: FormData | undefined,\n\theaders: HttpHeaders\n): Observable<HttpResponse<T>> => {\n\treturn http.request<T>(options.method, url, {\n\t\theaders,\n\t\tbody: body ?? formData,\n\t\twithCredentials: config.WITH_CREDENTIALS,\n\t\tobserve: 'response',\n\t});\n};"},useData:!0},Vn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"import type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { ApiResult } from './ApiResult';\n\nexport class ApiError extends Error {\n\tpublic readonly url: string;\n\tpublic readonly status: number;\n\tpublic readonly statusText: string;\n\tpublic readonly body: unknown;\n\tpublic readonly request: ApiRequestOptions;\n\n\tconstructor(request: ApiRequestOptions, response: ApiResult, message: string) {\n\t\tsuper(message);\n\n\t\tthis.name = 'ApiError';\n\t\tthis.url = response.url;\n\t\tthis.status = response.status;\n\t\tthis.statusText = response.statusText;\n\t\tthis.body = response.body;\n\t\tthis.request = request;\n\t}\n}"},useData:!0},Kn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export type ApiRequestOptions = {\n\treadonly method: 'GET' | 'PUT' | 'POST' | 'DELETE' | 'OPTIONS' | 'HEAD' | 'PATCH';\n\treadonly url: string;\n\treadonly path?: Record<string, unknown>;\n\treadonly cookies?: Record<string, unknown>;\n\treadonly headers?: Record<string, unknown>;\n\treadonly query?: Record<string, unknown>;\n\treadonly formData?: Record<string, unknown>;\n\treadonly body?: any;\n\treadonly mediaType?: string;\n\treadonly responseHeader?: string;\n\treadonly errors?: Record<number, string>;\n};"},useData:!0},Qn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export type ApiResult<TData = any> = {\n\treadonly body: TData;\n\treadonly ok: boolean;\n\treadonly status: number;\n\treadonly statusText: string;\n\treadonly url: string;\n};"},useData:!0},Jn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getHeaders = async (config: OpenAPIConfig, options: ApiRequestOptions): Promise<Record<string, string>> => {\n\tconst [token, username, password, additionalHeaders] = await Promise.all([\n\t\tresolve(options, config.TOKEN),\n\t\tresolve(options, config.USERNAME),\n\t\tresolve(options, config.PASSWORD),\n\t\tresolve(options, config.HEADERS),\n\t]);\n\n\tconst headers = Object.entries({\n\t\tAccept: 'application/json',\n\t\t...additionalHeaders,\n\t\t...options.headers,\n\t})\n\t.filter(([, value]) => value !== undefined && value !== null)\n\t.reduce((headers, [key, value]) => ({\n\t\t...headers,\n\t\t[key]: String(value),\n\t}), {} as Record<string, string>);\n\n\tif (isStringWithValue(token)) {\n\t\theaders['Authorization'] = `Bearer ${token}`;\n\t}\n\n\tif (isStringWithValue(username) && isStringWithValue(password)) {\n\t\tconst credentials = base64(`${username}:${password}`);\n\t\theaders['Authorization'] = `Basic ${credentials}`;\n\t}\n\n\tif (options.body !== undefined) {\n\t\tif (options.mediaType) {\n\t\t\theaders['Content-Type'] = options.mediaType;\n\t\t} else if (isBlob(options.body)) {\n\t\t\theaders['Content-Type'] = options.body.type || 'application/octet-stream';\n\t\t} else if (isString(options.body)) {\n\t\t\theaders['Content-Type'] = 'text/plain';\n\t\t} else if (!isFormData(options.body)) {\n\t\t\theaders['Content-Type'] = 'application/json';\n\t\t}\n\t} else if (options.formData !== undefined) {\n\t\tif (options.mediaType) {\n\t\t\theaders['Content-Type'] = options.mediaType;\n\t\t}\n\t}\n\n\treturn headers;\n};"},useData:!0},zn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getRequestBody = (options: ApiRequestOptions): unknown => {\n\tif (options.body) {\n\t\treturn options.body;\n\t}\n\treturn undefined;\n};"},useData:!0},Gn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseBody = (response: AxiosResponse<unknown>): unknown => {\n\tif (response.status !== 204) {\n\t\treturn response.data;\n\t}\n\treturn undefined;\n};"},useData:!0},Xn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseHeader = (response: AxiosResponse<unknown>, responseHeader?: string): string | undefined => {\n\tif (responseHeader) {\n\t\tconst content = response.headers[responseHeader];\n\t\tif (isString(content)) {\n\t\t\treturn content;\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},Yn={1:function(e,t,n,r,o){return"ApiResult<T>"},3:function(e,t,n,r,o){return"T"},5:function(e,t,n,r,o){return"result.body"},7:function(e,t,n,r,o){return"result"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"import axios from 'axios';\nimport type { AxiosError, AxiosRequestConfig, AxiosResponse, AxiosInstance } from 'axios';\n\nimport { ApiError } from './ApiError';\nimport type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { ApiResult } from './ApiResult';\nimport { CancelablePromise } from './CancelablePromise';\nimport type { OnCancel } from './CancelablePromise';\nimport type { OpenAPIConfig } from './OpenAPI';\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isString"),t,{name:"functions/isString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isStringWithValue"),t,{name:"functions/isStringWithValue",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isBlob"),t,{name:"functions/isBlob",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isFormData"),t,{name:"functions/isFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isSuccess"),t,{name:"functions/isSuccess",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/base64"),t,{name:"functions/base64",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getQueryString"),t,{name:"functions/getQueryString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getUrl"),t,{name:"functions/getUrl",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getFormData"),t,{name:"functions/getFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/resolve"),t,{name:"functions/resolve",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"axios/getHeaders"),t,{name:"axios/getHeaders",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"axios/getRequestBody"),t,{name:"axios/getRequestBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"axios/sendRequest"),t,{name:"axios/sendRequest",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"axios/getResponseHeader"),t,{name:"axios/getResponseHeader",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"axios/getResponseBody"),t,{name:"axios/getResponseBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/catchErrorCodes"),t,{name:"functions/catchErrorCodes",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n/**\n * Request method\n * @param config The OpenAPI configuration object\n * @param options The request options from the service\n * @param axiosClient The axios client instance to use\n * @returns CancelablePromise<"+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"response",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.program(3,o,0),data:o,loc:{start:{line:64,column:30},end:{line:64,column:116}}}))?s:"")+">\n * @throws ApiError\n */\nexport const request = <T>(config: OpenAPIConfig, options: ApiRequestOptions, axiosClient: AxiosInstance = axios): CancelablePromise<"+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"response",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.program(3,o,0),data:o,loc:{start:{line:67,column:133},end:{line:67,column:219}}}))?s:"")+"> => {\n\treturn new CancelablePromise(async (resolve, reject, onCancel) => {\n\t\ttry {\n\t\t\tconst url = getUrl(config, options);\n\t\t\tconst formData = getFormData(options);\n\t\t\tconst body = getRequestBody(options);\n\t\t\tconst headers = await getHeaders(config, options);\n\n\t\t\tif (!onCancel.isCancelled) {\n\t\t\t\tlet response = await sendRequest<T>(config, options, url, body, formData, headers, onCancel, axiosClient);\n\n\t\t\t\tfor (const fn of config.interceptors.response._fns) {\n\t\t\t\t\tresponse = await fn(response);\n\t\t\t\t}\n\n\t\t\t\tconst responseBody = getResponseBody(response);\n\t\t\t\tconst responseHeader = getResponseHeader(response, options.responseHeader);\n\n\t\t\t\tconst result: ApiResult = {\n\t\t\t\t\turl,\n\t\t\t\t\tok: isSuccess(response.status),\n\t\t\t\t\tstatus: response.status,\n\t\t\t\t\tstatusText: response.statusText,\n\t\t\t\t\tbody: responseHeader ?? responseBody,\n\t\t\t\t};\n\n\t\t\t\tcatchErrorCodes(options, result);\n\n\t\t\t\tresolve("+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"body",{name:"equals",hash:{},fn:e.program(5,o,0),inverse:e.program(7,o,0),data:o,loc:{start:{line:95,column:12},end:{line:95,column:98}}}))?s:"")+");\n\t\t\t}\n\t\t} catch (error) {\n\t\t\treject(error);\n\t\t}\n\t});\n};"},usePartial:!0,useData:!0},Zn={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const sendRequest = async <T>(\n\tconfig: OpenAPIConfig,\n\toptions: ApiRequestOptions,\n\turl: string,\n\tbody: unknown,\n\tformData: FormData | undefined,\n\theaders: Record<string, string>,\n\tonCancel: OnCancel,\n\taxiosClient: AxiosInstance\n): Promise<AxiosResponse<T>> => {\n\tconst controller = new AbortController();\n\n\tlet requestConfig: AxiosRequestConfig = {\n\t\tdata: body ?? formData,\n\t\theaders,\n\t\tmethod: options.method,\n\t\tsignal: controller.signal,\n\t\turl,\n\t\twithCredentials: config.WITH_CREDENTIALS,\n\t};\n\n\tonCancel(() => controller.abort());\n\n\tfor (const fn of config.interceptors.request._fns) {\n\t\trequestConfig = await fn(requestConfig);\n\t}\n\n\ttry {\n\t\treturn await axiosClient.request(requestConfig);\n\t} catch (error) {\n\t\tconst axiosError = error as AxiosError<T>;\n\t\tif (axiosError.response) {\n\t\t\treturn axiosError.response;\n\t\t}\n\t\tthrow error;\n\t}\n};"},useData:!0},er={1:function(e,t,n,r,o){return"import type { HttpClient } from '@angular/common/http';\nimport type { Observable } from 'rxjs';\n\nimport type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { OpenAPIConfig } from './OpenAPI';\n"},3:function(e,t,n,r,o){return"import type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { CancelablePromise } from './CancelablePromise';\nimport type { OpenAPIConfig } from './OpenAPI';\n"},5:function(e,t,n,r,o){return"\tconstructor(\n\t\tpublic readonly config: OpenAPIConfig,\n\t\tpublic readonly http: HttpClient,\n\t) {}\n"},7:function(e,t,n,r,o){return"\tconstructor(public readonly config: OpenAPIConfig) {}\n"},9:function(e,t,n,r,o){return"\tpublic abstract request<T>(options: ApiRequestOptions): Observable<T>;\n"},11:function(e,t,n,r,o){return"\tpublic abstract request<T>(options: ApiRequestOptions): CancelablePromise<T>;\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.program(3,o,0),data:o,loc:{start:{line:1,column:0},end:{line:11,column:11}}}))?s:"")+"\nexport abstract class BaseHttpRequest {\n\n"+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(5,o,0),inverse:e.program(7,o,0),data:o,loc:{start:{line:15,column:1},end:{line:22,column:12}}}))?s:"")+"\n"+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(9,o,0),inverse:e.program(11,o,0),data:o,loc:{start:{line:24,column:1},end:{line:28,column:12}}}))?s:"")+"}"},useData:!0},tr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export class CancelError extends Error {\n\tconstructor(message: string) {\n\t\tsuper(message);\n\t\tthis.name = 'CancelError';\n\t}\n\n\tpublic get isCancelled(): boolean {\n\t\treturn true;\n\t}\n}\n\nexport interface OnCancel {\n\treadonly isResolved: boolean;\n\treadonly isRejected: boolean;\n\treadonly isCancelled: boolean;\n\n\t(cancelHandler: () => void): void;\n}\n\nexport class CancelablePromise<T> implements Promise<T> {\n\tprivate _isResolved: boolean;\n\tprivate _isRejected: boolean;\n\tprivate _isCancelled: boolean;\n\treadonly cancelHandlers: (() => void)[];\n\treadonly promise: Promise<T>;\n\tprivate _resolve?: (value: T | PromiseLike<T>) => void;\n\tprivate _reject?: (reason?: unknown) => void;\n\n\tconstructor(\n\t\texecutor: (\n\t\t\tresolve: (value: T | PromiseLike<T>) => void,\n\t\t\treject: (reason?: unknown) => void,\n\t\t\tonCancel: OnCancel\n\t\t) => void\n\t) {\n\t\tthis._isResolved = false;\n\t\tthis._isRejected = false;\n\t\tthis._isCancelled = false;\n\t\tthis.cancelHandlers = [];\n\t\tthis.promise = new Promise<T>((resolve, reject) => {\n\t\t\tthis._resolve = resolve;\n\t\t\tthis._reject = reject;\n\n\t\t\tconst onResolve = (value: T | PromiseLike<T>): void => {\n\t\t\t\tif (this._isResolved || this._isRejected || this._isCancelled) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis._isResolved = true;\n\t\t\t\tif (this._resolve) this._resolve(value);\n\t\t\t};\n\n\t\t\tconst onReject = (reason?: unknown): void => {\n\t\t\t\tif (this._isResolved || this._isRejected || this._isCancelled) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis._isRejected = true;\n\t\t\t\tif (this._reject) this._reject(reason);\n\t\t\t};\n\n\t\t\tconst onCancel = (cancelHandler: () => void): void => {\n\t\t\t\tif (this._isResolved || this._isRejected || this._isCancelled) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.cancelHandlers.push(cancelHandler);\n\t\t\t};\n\n\t\t\tObject.defineProperty(onCancel, 'isResolved', {\n\t\t\t\tget: (): boolean => this._isResolved,\n\t\t\t});\n\n\t\t\tObject.defineProperty(onCancel, 'isRejected', {\n\t\t\t\tget: (): boolean => this._isRejected,\n\t\t\t});\n\n\t\t\tObject.defineProperty(onCancel, 'isCancelled', {\n\t\t\t\tget: (): boolean => this._isCancelled,\n\t\t\t});\n\n\t\t\treturn executor(onResolve, onReject, onCancel as OnCancel);\n\t\t});\n\t}\n\n\tget [Symbol.toStringTag]() {\n\t\treturn \"Cancellable Promise\";\n\t}\n\n\tpublic then<TResult1 = T, TResult2 = never>(\n\t\tonFulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | null,\n\t\tonRejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | null\n\t): Promise<TResult1 | TResult2> {\n\t\treturn this.promise.then(onFulfilled, onRejected);\n\t}\n\n\tpublic catch<TResult = never>(\n\t\tonRejected?: ((reason: unknown) => TResult | PromiseLike<TResult>) | null\n\t): Promise<T | TResult> {\n\t\treturn this.promise.catch(onRejected);\n\t}\n\n\tpublic finally(onFinally?: (() => void) | null): Promise<T> {\n\t\treturn this.promise.finally(onFinally);\n\t}\n\n\tpublic cancel(): void {\n\t\tif (this._isResolved || this._isRejected || this._isCancelled) {\n\t\t\treturn;\n\t\t}\n\t\tthis._isCancelled = true;\n\t\tif (this.cancelHandlers.length) {\n\t\t\ttry {\n\t\t\t\tfor (const cancelHandler of this.cancelHandlers) {\n\t\t\t\t\tcancelHandler();\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tconsole.warn('Cancellation threw an error', error);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthis.cancelHandlers.length = 0;\n\t\tif (this._reject) this._reject(new CancelError('Request aborted'));\n\t}\n\n\tpublic get isCancelled(): boolean {\n\t\treturn this._isCancelled;\n\t}\n}"},useData:!0},nr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getHeaders = async (config: OpenAPIConfig, options: ApiRequestOptions): Promise<Headers> => {\n\tconst [token, username, password, additionalHeaders] = await Promise.all([\n\t\tresolve(options, config.TOKEN),\n\t\tresolve(options, config.USERNAME),\n\t\tresolve(options, config.PASSWORD),\n\t\tresolve(options, config.HEADERS),\n\t]);\n\n\tconst headers = Object.entries({\n\t\tAccept: 'application/json',\n\t\t...additionalHeaders,\n\t\t...options.headers,\n\t})\n\t\t.filter(([, value]) => value !== undefined && value !== null)\n\t\t.reduce((headers, [key, value]) => ({\n\t\t\t...headers,\n\t\t\t[key]: String(value),\n\t\t}), {} as Record<string, string>);\n\n\tif (isStringWithValue(token)) {\n\t\theaders['Authorization'] = `Bearer ${token}`;\n\t}\n\n\tif (isStringWithValue(username) && isStringWithValue(password)) {\n\t\tconst credentials = base64(`${username}:${password}`);\n\t\theaders['Authorization'] = `Basic ${credentials}`;\n\t}\n\n\tif (options.body !== undefined) {\n\t\tif (options.mediaType) {\n\t\t\theaders['Content-Type'] = options.mediaType;\n\t\t} else if (isBlob(options.body)) {\n\t\t\theaders['Content-Type'] = options.body.type || 'application/octet-stream';\n\t\t} else if (isString(options.body)) {\n\t\t\theaders['Content-Type'] = 'text/plain';\n\t\t} else if (!isFormData(options.body)) {\n\t\t\theaders['Content-Type'] = 'application/json';\n\t\t}\n\t}\n\n\treturn new Headers(headers);\n};"},useData:!0},rr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getRequestBody = (options: ApiRequestOptions): unknown => {\n\tif (options.body !== undefined) {\n\t\tif (options.mediaType?.includes('application/json') || options.mediaType?.includes('+json')) {\n\t\t\treturn JSON.stringify(options.body);\n\t\t} else if (isString(options.body) || isBlob(options.body) || isFormData(options.body)) {\n\t\t\treturn options.body;\n\t\t} else {\n\t\t\treturn JSON.stringify(options.body);\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},or={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseBody = async (response: Response): Promise<unknown> => {\n\tif (response.status !== 204) {\n\t\ttry {\n\t\t\tconst contentType = response.headers.get('Content-Type');\n\t\t\tif (contentType) {\n\t\t\t\tconst binaryTypes = ['application/octet-stream', 'application/pdf', 'application/zip', 'audio/', 'image/', 'video/'];\n\t\t\t\tif (contentType.includes('application/json') || contentType.includes('+json')) {\n\t\t\t\t\treturn await response.json();\n\t\t\t\t} else if (binaryTypes.some(type => contentType.includes(type))) {\n\t\t\t\t\treturn await response.blob();\n\t\t\t\t} else if (contentType.includes('multipart/form-data')) {\n\t\t\t\t\treturn await response.formData();\n\t\t\t\t} else if (contentType.includes('text/')) {\n\t\t\t\t\treturn await response.text();\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error(error);\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},sr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseHeader = (response: Response, responseHeader?: string): string | undefined => {\n\tif (responseHeader) {\n\t\tconst content = response.headers.get(responseHeader);\n\t\tif (isString(content)) {\n\t\t\treturn content;\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},ar={1:function(e,t,n,r,o){return"import fetch, { FormData, Headers } from 'node-fetch';\nimport type { RequestInit, Response } from 'node-fetch';\n\n"},3:function(e,t,n,r,o){return"ApiResult<T>"},5:function(e,t,n,r,o){return"T"},7:function(e,t,n,r,o){return"result.body"},9:function(e,t,n,r,o){return"result"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"node",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.noop,data:o,loc:{start:{line:1,column:0},end:{line:5,column:11}}}))?s:"")+"import { ApiError } from './ApiError';\nimport type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { ApiResult } from './ApiResult';\nimport { CancelablePromise } from './CancelablePromise';\nimport type { OnCancel } from './CancelablePromise';\nimport type { OpenAPIConfig } from './OpenAPI';\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isString"),t,{name:"functions/isString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isStringWithValue"),t,{name:"functions/isStringWithValue",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isBlob"),t,{name:"functions/isBlob",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isFormData"),t,{name:"functions/isFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/base64"),t,{name:"functions/base64",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getQueryString"),t,{name:"functions/getQueryString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getUrl"),t,{name:"functions/getUrl",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getFormData"),t,{name:"functions/getFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/resolve"),t,{name:"functions/resolve",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"fetch/getHeaders"),t,{name:"fetch/getHeaders",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"fetch/getRequestBody"),t,{name:"fetch/getRequestBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"fetch/sendRequest"),t,{name:"fetch/sendRequest",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"fetch/getResponseHeader"),t,{name:"fetch/getResponseHeader",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"fetch/getResponseBody"),t,{name:"fetch/getResponseBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/catchErrorCodes"),t,{name:"functions/catchErrorCodes",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n/**\n * Request method\n * @param config The OpenAPI configuration object\n * @param options The request options from the service\n * @returns CancelablePromise<"+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"response",{name:"equals",hash:{},fn:e.program(3,o,0),inverse:e.program(5,o,0),data:o,loc:{start:{line:62,column:30},end:{line:62,column:116}}}))?s:"")+">\n * @throws ApiError\n */\nexport const request = <T>(config: OpenAPIConfig, options: ApiRequestOptions): CancelablePromise<"+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"response",{name:"equals",hash:{},fn:e.program(3,o,0),inverse:e.program(5,o,0),data:o,loc:{start:{line:65,column:97},end:{line:65,column:183}}}))?s:"")+"> => {\n\treturn new CancelablePromise(async (resolve, reject, onCancel) => {\n\t\ttry {\n\t\t\tconst url = getUrl(config, options);\n\t\t\tconst formData = getFormData(options);\n\t\t\tconst body = getRequestBody(options);\n\t\t\tconst headers = await getHeaders(config, options);\n\n\t\t\tif (!onCancel.isCancelled) {\n\t\t\t\tlet response = await sendRequest(config, options, url, body, formData, headers, onCancel);\n\n\t\t\t\tfor (const fn of config.interceptors.response._fns) {\n\t\t\t\t\tresponse = await fn(response);\n\t\t\t\t}\n\n\t\t\t\tconst responseBody = await getResponseBody(response);\n\t\t\t\tconst responseHeader = getResponseHeader(response, options.responseHeader);\n\n\t\t\t\tconst result: ApiResult = {\n\t\t\t\t\turl,\n\t\t\t\t\tok: response.ok,\n\t\t\t\t\tstatus: response.status,\n\t\t\t\t\tstatusText: response.statusText,\n\t\t\t\t\tbody: responseHeader ?? responseBody,\n\t\t\t\t};\n\n\t\t\t\tcatchErrorCodes(options, result);\n\n\t\t\t\tresolve("+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"body",{name:"equals",hash:{},fn:e.program(7,o,0),inverse:e.program(9,o,0),data:o,loc:{start:{line:93,column:12},end:{line:93,column:98}}}))?s:"")+");\n\t\t\t}\n\t\t} catch (error) {\n\t\t\treject(error);\n\t\t}\n\t});\n};"},usePartial:!0,useData:!0},ir={1:function(e,t,n,r,o){return"\tif (config.WITH_CREDENTIALS) {\n\t\trequest.credentials = config.CREDENTIALS;\n\t}\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"export const sendRequest = async (\n\tconfig: OpenAPIConfig,\n\toptions: ApiRequestOptions,\n\turl: string,\n\tbody: any,\n\tformData: FormData | undefined,\n\theaders: Headers,\n\tonCancel: OnCancel\n): Promise<Response> => {\n\tconst controller = new AbortController();\n\n\tlet request: RequestInit = {\n\t\theaders,\n\t\tbody: body ?? formData,\n\t\tmethod: options.method,\n\t\tsignal: controller.signal,\n\t};\n\n"+(null!=(s=a(n,"equals").call(null!=t?t:e.nullContext||{},a(a(a(o,"root"),"$config"),"client"),"fetch",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.noop,data:o,loc:{start:{line:19,column:1},end:{line:23,column:12}}}))?s:"")+"\n\tfor (const fn of config.interceptors.request._fns) {\n\t\trequest = await fn(request);\n\t}\n\n\tonCancel(() => controller.abort());\n\n\treturn await fetch(url, request);\n};"},useData:!0},lr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const base64 = (str: string): string => {\n\ttry {\n\t\treturn btoa(str);\n\t} catch (err) {\n\t\t// @ts-ignore\n\t\treturn Buffer.from(str).toString('base64');\n\t}\n};"},useData:!0},pr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const catchErrorCodes = (options: ApiRequestOptions, result: ApiResult): void => {\n\tconst errors: Record<number, string> = {\n\t\t400: 'Bad Request',\n\t\t401: 'Unauthorized',\n\t\t402: 'Payment Required',\n\t\t403: 'Forbidden',\n\t\t404: 'Not Found',\n\t\t405: 'Method Not Allowed',\n\t\t406: 'Not Acceptable',\n\t\t407: 'Proxy Authentication Required',\n\t\t408: 'Request Timeout',\n\t\t409: 'Conflict',\n\t\t410: 'Gone',\n\t\t411: 'Length Required',\n\t\t412: 'Precondition Failed',\n\t\t413: 'Payload Too Large',\n\t\t414: 'URI Too Long',\n\t\t415: 'Unsupported Media Type',\n\t\t416: 'Range Not Satisfiable',\n\t\t417: 'Expectation Failed',\n\t\t418: 'Im a teapot',\n\t\t421: 'Misdirected Request',\n\t\t422: 'Unprocessable Content',\n\t\t423: 'Locked',\n\t\t424: 'Failed Dependency',\n\t\t425: 'Too Early',\n\t\t426: 'Upgrade Required',\n\t\t428: 'Precondition Required',\n\t\t429: 'Too Many Requests',\n\t\t431: 'Request Header Fields Too Large',\n\t\t451: 'Unavailable For Legal Reasons',\n\t\t500: 'Internal Server Error',\n\t\t501: 'Not Implemented',\n\t\t502: 'Bad Gateway',\n\t\t503: 'Service Unavailable',\n\t\t504: 'Gateway Timeout',\n\t\t505: 'HTTP Version Not Supported',\n\t\t506: 'Variant Also Negotiates',\n\t\t507: 'Insufficient Storage',\n\t\t508: 'Loop Detected',\n\t\t510: 'Not Extended',\n\t\t511: 'Network Authentication Required',\n\t\t...options.errors,\n\t}\n\n\tconst error = errors[result.status];\n\tif (error) {\n\t\tthrow new ApiError(options, result, error);\n\t}\n\n\tif (!result.ok) {\n\t\tconst errorStatus = result.status ?? 'unknown';\n\t\tconst errorStatusText = result.statusText ?? 'unknown';\n\t\tconst errorBody = (() => {\n\t\t\ttry {\n\t\t\t\treturn JSON.stringify(result.body, null, 2);\n\t\t\t} catch (e) {\n\t\t\t\treturn undefined;\n\t\t\t}\n\t\t})();\n\n\t\tthrow new ApiError(options, result,\n\t\t\t`Generic Error: status: ${errorStatus}; status text: ${errorStatusText}; body: ${errorBody}`\n\t\t);\n\t}\n};"},useData:!0},cr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getFormData = (options: ApiRequestOptions): FormData | undefined => {\n\tif (options.formData) {\n\t\tconst formData = new FormData();\n\n\t\tconst process = (key: string, value: unknown) => {\n\t\t\tif (isString(value) || isBlob(value)) {\n\t\t\t\tformData.append(key, value);\n\t\t\t} else {\n\t\t\t\tformData.append(key, JSON.stringify(value));\n\t\t\t}\n\t\t};\n\n\t\tObject.entries(options.formData)\n\t\t\t.filter(([, value]) => value !== undefined && value !== null)\n\t\t\t.forEach(([key, value]) => {\n\t\t\t\tif (Array.isArray(value)) {\n\t\t\t\t\tvalue.forEach(v => process(key, v));\n\t\t\t\t} else {\n\t\t\t\t\tprocess(key, value);\n\t\t\t\t}\n\t\t\t});\n\n\t\treturn formData;\n\t}\n\treturn undefined;\n};"},useData:!0},ur={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getQueryString = (params: Record<string, unknown>): string => {\n\tconst qs: string[] = [];\n\n\tconst append = (key: string, value: unknown) => {\n\t\tqs.push(`${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`);\n\t};\n\n\tconst encodePair = (key: string, value: unknown) => {\n\t\tif (value === undefined || value === null) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (value instanceof Date) {\n\t\t\tappend(key, value.toISOString());\n\t\t} else if (Array.isArray(value)) {\n\t\t\tvalue.forEach(v => encodePair(key, v));\n\t\t} else if (typeof value === 'object') {\n\t\t\tObject.entries(value).forEach(([k, v]) => encodePair(`${key}[${k}]`, v));\n\t\t} else {\n\t\t\tappend(key, value);\n\t\t}\n\t};\n\n\tObject.entries(params).forEach(([key, value]) => encodePair(key, value));\n\n\treturn qs.length ? `?${qs.join('&')}` : '';\n};"},useData:!0},mr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"const getUrl = (config: OpenAPIConfig, options: ApiRequestOptions): string => {\n\tconst encoder = config.ENCODE_PATH || encodeURI;\n\n\tconst path = options.url\n\t\t.replace('{api-version}', config.VERSION)\n\t\t.replace(/{(.*?)}/g, (substring: string, group: string) => {\n\t\t\tif (options.path?.hasOwnProperty(group)) {\n\t\t\t\treturn encoder(String(options.path[group]));\n\t\t\t}\n\t\t\treturn substring;\n\t\t});\n\n\tconst url = config.BASE + path;\n\treturn options.query ? url + getQueryString(options.query) : url;\n};"},useData:!0},dr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const isBlob = (value: any): value is Blob => {\n\treturn value instanceof Blob;\n};"},useData:!0},fr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const isFormData = (value: unknown): value is FormData => {\n\treturn value instanceof FormData;\n};"},useData:!0},hr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const isString = (value: unknown): value is string => {\n\treturn typeof value === 'string';\n};"},useData:!0},yr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const isStringWithValue = (value: unknown): value is string => {\n\treturn isString(value) && value !== '';\n};"},useData:!0},gr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const isSuccess = (status: number): boolean => {\n\treturn status >= 200 && status < 300;\n};"},useData:!0},vr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"type Resolver<T> = (options: ApiRequestOptions) => Promise<T>;\n\nexport const resolve = async <T>(options: ApiRequestOptions, resolver?: T | Resolver<T>): Promise<T | undefined> => {\n\tif (typeof resolver === 'function') {\n\t\treturn (resolver as Resolver<T>)(options);\n\t}\n\treturn resolver;\n};"},useData:!0},br={1:function(e,t,n,r,o){return"import { Inject, Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport type { Observable } from 'rxjs';\n\nimport type { ApiRequestOptions } from './ApiRequestOptions';\nimport { BaseHttpRequest } from './BaseHttpRequest';\nimport type { OpenAPIConfig } from './OpenAPI';\nimport { OpenAPI } from './OpenAPI';\nimport { request as __request } from './request';\n"},3:function(e,t,n,r,o){return"import type { ApiRequestOptions } from './ApiRequestOptions';\nimport { BaseHttpRequest } from './BaseHttpRequest';\nimport type { CancelablePromise } from './CancelablePromise';\nimport type { OpenAPIConfig } from './OpenAPI';\nimport { request as __request } from './request';\n"},5:function(e,t,n,r,o){return"@Injectable()\n"},7:function(e,t,n,r,o){return"\tconstructor(\n\t\t@Inject(OpenAPI)\n\t\tconfig: OpenAPIConfig,\n\t\thttp: HttpClient,\n\t) {\n\t\tsuper(config, http);\n\t}\n"},9:function(e,t,n,r,o){return"\tconstructor(config: OpenAPIConfig) {\n\t\tsuper(config);\n\t}\n"},11:function(e,t,n,r,o){return"\t/**\n\t * Request method\n\t * @param options The request options from the service\n\t * @returns Observable<T>\n\t * @throws ApiError\n\t */\n\tpublic override request<T>(options: ApiRequestOptions): Observable<T> {\n\t\treturn __request(this.config, this.http, options);\n\t}\n"},13:function(e,t,n,r,o){return"\t/**\n\t * Request method\n\t * @param options The request options from the service\n\t * @returns CancelablePromise<T>\n\t * @throws ApiError\n\t */\n\tpublic override request<T>(options: ApiRequestOptions): CancelablePromise<T> {\n\t\treturn __request(this.config, options);\n\t}\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.program(3,o,0),data:o,loc:{start:{line:1,column:0},end:{line:17,column:11}}}))?s:"")+"\n"+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(5,o,0),inverse:e.noop,data:o,loc:{start:{line:19,column:0},end:{line:21,column:11}}}))?s:"")+"export class "+(null!=(s=e.lambda(e.strict(t,"httpRequest",{start:{line:22,column:15},end:{line:22,column:26}}),t))?s:"")+" extends BaseHttpRequest {\n\n"+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(7,o,0),inverse:e.program(9,o,0),data:o,loc:{start:{line:24,column:1},end:{line:36,column:12}}}))?s:"")+"\n"+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(11,o,0),inverse:e.program(13,o,0),data:o,loc:{start:{line:38,column:1},end:{line:58,column:12}}}))?s:"")+"}"},useData:!0},xr={1:function(e,t,n,r,o){return"import type { HttpResponse } from '@angular/common/http';\n"},3:function(e,t,n,r,o){return"import type { AxiosRequestConfig, AxiosResponse } from 'axios';\n"},5:function(e,t,n,r,o){return"import type { RequestInit, Response } from 'node-fetch';\n"},7:function(e,t,n,r,o){return"\t\tresponse: Interceptors<HttpResponse<any>>;\n"},9:function(e,t,n,r,o){return"\t\trequest: Interceptors<AxiosRequestConfig>;\n\t\tresponse: Interceptors<AxiosResponse>;\n"},11:function(e,t,n,r,o){return"\t\trequest: Interceptors<RequestInit>;\n\t\tresponse: Interceptors<Response>;\n"},13:function(e,t,n,r,o){return"\t\trequest: Interceptors<XMLHttpRequest>;\n\t\tresponse: Interceptors<XMLHttpRequest>;\n"},15:function(e,t,n,r,o){return"\t\trequest: new Interceptors(),\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.strict,l=e.lambda,p=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.noop,data:o,loc:{start:{line:1,column:0},end:{line:3,column:11}}}))?s:"")+(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"axios",{name:"equals",hash:{},fn:e.program(3,o,0),inverse:e.noop,data:o,loc:{start:{line:4,column:0},end:{line:6,column:11}}}))?s:"")+(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"node",{name:"equals",hash:{},fn:e.program(5,o,0),inverse:e.noop,data:o,loc:{start:{line:7,column:0},end:{line:9,column:11}}}))?s:"")+"import type { ApiRequestOptions } from './ApiRequestOptions';\n\ntype Headers = Record<string, string>;\ntype Middleware<T> = (value: T) => T | Promise<T>;\ntype Resolver<T> = (options: ApiRequestOptions) => Promise<T>;\n\nexport class Interceptors<T> {\n _fns: Middleware<T>[];\n\n constructor() {\n this._fns = [];\n }\n\n eject(fn: Middleware<T>) {\n const index = this._fns.indexOf(fn);\n if (index !== -1) {\n this._fns = [...this._fns.slice(0, index), ...this._fns.slice(index + 1)];\n }\n }\n\n use(fn: Middleware<T>) {\n this._fns = [...this._fns, fn];\n }\n}\n\nexport type OpenAPIConfig = {\n\tBASE: string;\n\tCREDENTIALS: 'include' | 'omit' | 'same-origin';\n\tENCODE_PATH?: ((path: string) => string) | undefined;\n\tHEADERS?: Headers | Resolver<Headers> | undefined;\n\tPASSWORD?: string | Resolver<string> | undefined;\n\tTOKEN?: string | Resolver<string> | undefined;\n\tUSERNAME?: string | Resolver<string> | undefined;\n\tVERSION: string;\n\tWITH_CREDENTIALS: boolean;\n\tinterceptors: {\n"+(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(7,o,0),inverse:e.noop,data:o,loc:{start:{line:46,column:2},end:{line:48,column:13}}}))?s:"")+(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"axios",{name:"equals",hash:{},fn:e.program(9,o,0),inverse:e.noop,data:o,loc:{start:{line:49,column:2},end:{line:52,column:13}}}))?s:"")+(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"fetch",{name:"equals",hash:{},fn:e.program(11,o,0),inverse:e.noop,data:o,loc:{start:{line:53,column:2},end:{line:56,column:13}}}))?s:"")+(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"node",{name:"equals",hash:{},fn:e.program(11,o,0),inverse:e.noop,data:o,loc:{start:{line:57,column:2},end:{line:60,column:13}}}))?s:"")+(null!=(s=p(n,"equals").call(a,p(p(p(o,"root"),"$config"),"client"),"xhr",{name:"equals",hash:{},fn:e.program(13,o,0),inverse:e.noop,data:o,loc:{start:{line:61,column:2},end:{line:64,column:13}}}))?s:"")+"\t};\n};\n\nexport const OpenAPI: OpenAPIConfig = {\n\tBASE: '"+(null!=(s=l(i(t,"server",{start:{line:69,column:11},end:{line:69,column:17}}),t))?s:"")+"',\n\tCREDENTIALS: 'include',\n\tENCODE_PATH: undefined,\n\tHEADERS: undefined,\n\tPASSWORD: undefined,\n\tTOKEN: undefined,\n\tUSERNAME: undefined,\n\tVERSION: '"+(null!=(s=l(i(t,"version",{start:{line:76,column:14},end:{line:76,column:21}}),t))?s:"")+"',\n\tWITH_CREDENTIALS: false,\n\tinterceptors: {\n"+(null!=(s=p(n,"notEquals").call(a,p(p(p(o,"root"),"$config"),"client"),"angular",{name:"notEquals",hash:{},fn:e.program(15,o,0),inverse:e.noop,data:o,loc:{start:{line:79,column:2},end:{line:81,column:16}}}))?s:"")+"\t\tresponse: new Interceptors(),\n\t},\n};"},useData:!0},Rr={1:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(s=e.invokePartial(a(r,"angular/request"),t,{name:"angular/request",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:""},3:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(s=e.invokePartial(a(r,"axios/request"),t,{name:"axios/request",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:""},5:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(s=e.invokePartial(a(r,"fetch/request"),t,{name:"fetch/request",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:""},7:function(e,t,n,r,o){var s,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(s=e.invokePartial(a(r,"xhr/request"),t,{name:"xhr/request",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:""},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"angular",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.noop,data:o,loc:{start:{line:1,column:0},end:{line:1,column:75}}}))?s:"")+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"axios",{name:"equals",hash:{},fn:e.program(3,o,0),inverse:e.noop,data:o,loc:{start:{line:2,column:0},end:{line:2,column:71}}}))?s:"")+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"fetch",{name:"equals",hash:{},fn:e.program(5,o,0),inverse:e.noop,data:o,loc:{start:{line:3,column:0},end:{line:3,column:71}}}))?s:"")+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"node",{name:"equals",hash:{},fn:e.program(5,o,0),inverse:e.noop,data:o,loc:{start:{line:4,column:0},end:{line:4,column:70}}}))?s:"")+(null!=(s=i(n,"equals").call(a,i(i(i(o,"root"),"$config"),"client"),"xhr",{name:"equals",hash:{},fn:e.program(7,o,0),inverse:e.noop,data:o,loc:{start:{line:5,column:0},end:{line:5,column:67}}}))?s:"")},usePartial:!0,useData:!0},Pr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getHeaders = async (config: OpenAPIConfig, options: ApiRequestOptions): Promise<Headers> => {\n\tconst [token, username, password, additionalHeaders] = await Promise.all([\n\t\tresolve(options, config.TOKEN),\n\t\tresolve(options, config.USERNAME),\n\t\tresolve(options, config.PASSWORD),\n\t\tresolve(options, config.HEADERS),\n\t]);\n\n\tconst headers = Object.entries({\n\t\tAccept: 'application/json',\n\t\t...additionalHeaders,\n\t\t...options.headers,\n\t})\n\t\t.filter(([, value]) => value !== undefined && value !== null)\n\t\t.reduce((headers, [key, value]) => ({\n\t\t\t...headers,\n\t\t\t[key]: String(value),\n\t\t}), {} as Record<string, string>);\n\n\tif (isStringWithValue(token)) {\n\t\theaders['Authorization'] = `Bearer ${token}`;\n\t}\n\n\tif (isStringWithValue(username) && isStringWithValue(password)) {\n\t\tconst credentials = base64(`${username}:${password}`);\n\t\theaders['Authorization'] = `Basic ${credentials}`;\n\t}\n\n\tif (options.body !== undefined) {\n\t\tif (options.mediaType) {\n\t\t\theaders['Content-Type'] = options.mediaType;\n\t\t} else if (isBlob(options.body)) {\n\t\t\theaders['Content-Type'] = options.body.type || 'application/octet-stream';\n\t\t} else if (isString(options.body)) {\n\t\t\theaders['Content-Type'] = 'text/plain';\n\t\t} else if (!isFormData(options.body)) {\n\t\t\theaders['Content-Type'] = 'application/json';\n\t\t}\n\t}\n\n\treturn new Headers(headers);\n};"},useData:!0},Or={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getRequestBody = (options: ApiRequestOptions): unknown => {\n\tif (options.body !== undefined) {\n\t\tif (options.mediaType?.includes('application/json') || options.mediaType?.includes('+json')) {\n\t\t\treturn JSON.stringify(options.body);\n\t\t} else if (isString(options.body) || isBlob(options.body) || isFormData(options.body)) {\n\t\t\treturn options.body;\n\t\t} else {\n\t\t\treturn JSON.stringify(options.body);\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},qr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseBody = (xhr: XMLHttpRequest): unknown => {\n\tif (xhr.status !== 204) {\n\t\ttry {\n\t\t\tconst contentType = xhr.getResponseHeader('Content-Type');\n\t\t\tif (contentType) {\n\t\t\t\tif (contentType.includes('application/json') || contentType.includes('+json')) {\n\t\t\t\t\treturn JSON.parse(xhr.responseText);\n\t\t\t\t} else {\n\t\t\t\t\treturn xhr.responseText;\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error(error);\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},Ar={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const getResponseHeader = (xhr: XMLHttpRequest, responseHeader?: string): string | undefined => {\n\tif (responseHeader) {\n\t\tconst content = xhr.getResponseHeader(responseHeader);\n\t\tif (isString(content)) {\n\t\t\treturn content;\n\t\t}\n\t}\n\treturn undefined;\n};"},useData:!0},wr={1:function(e,t,n,r,o){return"ApiResult<T>"},3:function(e,t,n,r,o){return"T"},5:function(e,t,n,r,o){return"result.body"},7:function(e,t,n,r,o){return"result"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){var s,a=null!=t?t:e.nullContext||{},i=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return"import { ApiError } from './ApiError';\nimport type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { ApiResult } from './ApiResult';\nimport { CancelablePromise } from './CancelablePromise';\nimport type { OnCancel } from './CancelablePromise';\nimport type { OpenAPIConfig } from './OpenAPI';\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isString"),t,{name:"functions/isString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isStringWithValue"),t,{name:"functions/isStringWithValue",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isBlob"),t,{name:"functions/isBlob",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isFormData"),t,{name:"functions/isFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/isSuccess"),t,{name:"functions/isSuccess",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/base64"),t,{name:"functions/base64",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getQueryString"),t,{name:"functions/getQueryString",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getUrl"),t,{name:"functions/getUrl",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/getFormData"),t,{name:"functions/getFormData",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/resolve"),t,{name:"functions/resolve",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"fetch/getHeaders"),t,{name:"fetch/getHeaders",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"xhr/getRequestBody"),t,{name:"xhr/getRequestBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"xhr/sendRequest"),t,{name:"xhr/sendRequest",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"xhr/getResponseHeader"),t,{name:"xhr/getResponseHeader",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"xhr/getResponseBody"),t,{name:"xhr/getResponseBody",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n"+(null!=(s=e.invokePartial(i(r,"functions/catchErrorCodes"),t,{name:"functions/catchErrorCodes",data:o,helpers:n,partials:r,decorators:e.decorators}))?s:"")+"\n\n/**\n * Request method\n * @param config The OpenAPI configuration object\n * @param options The request options from the service\n * @returns CancelablePromise<"+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"response",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.program(3,o,0),data:o,loc:{start:{line:60,column:30},end:{line:60,column:116}}}))?s:"")+">\n * @throws ApiError\n */\nexport const request = <T>(config: OpenAPIConfig, options: ApiRequestOptions): CancelablePromise<"+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"response",{name:"equals",hash:{},fn:e.program(1,o,0),inverse:e.program(3,o,0),data:o,loc:{start:{line:63,column:97},end:{line:63,column:183}}}))?s:"")+"> => {\n\treturn new CancelablePromise(async (resolve, reject, onCancel) => {\n\t\ttry {\n\t\t\tconst url = getUrl(config, options);\n\t\t\tconst formData = getFormData(options);\n\t\t\tconst body = getRequestBody(options);\n\t\t\tconst headers = await getHeaders(config, options);\n\n\t\t\tif (!onCancel.isCancelled) {\n\t\t\t\tlet response = await sendRequest(config, options, url, body, formData, headers, onCancel);\n\n\t\t\t\tfor (const fn of config.interceptors.response._fns) {\n\t\t\t\t\tresponse = await fn(response);\n\t\t\t\t}\n\n\t\t\t\tconst responseBody = getResponseBody(response);\n\t\t\t\tconst responseHeader = getResponseHeader(response, options.responseHeader);\n\n\t\t\t\tconst result: ApiResult = {\n\t\t\t\t\turl,\n\t\t\t\t\tok: isSuccess(response.status),\n\t\t\t\t\tstatus: response.status,\n\t\t\t\t\tstatusText: response.statusText,\n\t\t\t\t\tbody: responseHeader ?? responseBody,\n\t\t\t\t};\n\n\t\t\t\tcatchErrorCodes(options, result);\n\n\t\t\t\tresolve("+(null!=(s=i(n,"equals").call(a,i(i(i(i(o,"root"),"$config"),"services"),"response"),"body",{name:"equals",hash:{},fn:e.program(5,o,0),inverse:e.program(7,o,0),data:o,loc:{start:{line:91,column:12},end:{line:91,column:98}}}))?s:"")+");\n\t\t\t}\n\t\t} catch (error) {\n\t\t\treject(error);\n\t\t}\n\t});\n};"},usePartial:!0,useData:!0},kr={compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){return"export const sendRequest = async (\n\tconfig: OpenAPIConfig,\n\toptions: ApiRequestOptions,\n\turl: string,\n\tbody: any,\n\tformData: FormData | undefined,\n\theaders: Headers,\n\tonCancel: OnCancel\n): Promise<XMLHttpRequest> => {\n\tlet xhr = new XMLHttpRequest();\n\txhr.open(options.method, url, true);\n\txhr.withCredentials = config.WITH_CREDENTIALS;\n\n\theaders.forEach((value, key) => {\n\t\txhr.setRequestHeader(key, value);\n\t});\n\n\treturn new Promise<XMLHttpRequest>(async (resolve, reject) => {\n\t\txhr.onload = () => resolve(xhr);\n\t\txhr.onabort = () => reject(new Error('Request aborted'));\n\t\txhr.onerror = () => reject(new Error('Network error'));\n\n\t\tfor (const fn of config.interceptors.request._fns) {\n\t\t\txhr = await fn(xhr);\n\t\t}\n\n\t\txhr.send(body ?? formData);\n\n\t\tonCancel(() => xhr.abort());\n\t});\n};"},useData:!0};const Er=()=>{Nn.registerHelper("camelCase",me),Nn.registerHelper("equals",(function(e,t,n){return e===t?n.fn(this):n.inverse(this)})),Nn.registerHelper("ifdef",(function(...e){const t=e.pop();return e.every((e=>!e))?t.inverse(this):t.fn(this)})),Nn.registerHelper("notEquals",(function(e,t,n){return e!==t?n.fn(this):n.inverse(this)})),Nn.registerHelper("transformServiceName",xe)};function Cr(e,t){const n=e.toLocaleLowerCase(),r=t.toLocaleLowerCase();return n.localeCompare(r,"en")}const Tr=(e,t)=>Cr(e.name,t.name);function $r(e){return e.sort(Tr)}function Ir(e){return{...e,models:e.models.map((e=>function(e){return{...e,enum:Sr(e),enums:Hr(e),imports:_r(e)}}(e))),services:e.services.map((e=>function(e){const t={...e};return t.operations=function(e){const t=new Map;return e.operations.map((e=>{const n={...e};n.imports.push(...n.parameters.flatMap((e=>e.imports))),n.imports.push(...n.results.flatMap((e=>e.imports)));const r=n.name,o=t.get(r)||0;return o>0&&(n.name=`${r}${o}`),t.set(r,o+1),n}))}(t),t.operations.forEach((e=>{t.imports.push(...e.imports)})),t.imports=function(e){return e.imports.filter(ke).sort(Cr)}(t),t}(e))),types:{}}}function Sr(e){return e.enum.filter(((e,t,n)=>n.findIndex((t=>t.value===e.value))===t))}function Hr(e){return e.enums.filter(((e,t,n)=>n.findIndex((t=>t.name===e.name))===t))}function _r(e){return e.imports.filter(ke).sort(Cr).filter((t=>e.name!==t))}const Dr={newLine:l.NewLineKind.LineFeed,scriptKind:l.ScriptKind.TS,scriptTarget:l.ScriptTarget.ES2015,useSingleQuotes:!0},Nr=l.createPrinter({newLine:Dr.newLine}),jr=e=>l.createSourceFile("",e,Dr.scriptTarget,void 0,Dr.scriptKind),Mr=jr("");function Br({node:e,unescape:t=!1}){const n=Nr.printNode(l.EmitHint.Unspecified,e,Mr);if(!t)return n;try{return n.replace(/\\u([0-9a-fA-F]{4})/g,((e,t)=>String.fromCharCode(Number.parseInt(t,16))))}catch{return be().debug&&console.warn("Could not decode value:",n),n}}const Lr=e=>e?l.factory.createTrue():l.factory.createFalse(),Fr=(e,t,n)=>{const r=l.factory.createIdentifier(encodeURIComponent(e));return l.factory.createExportSpecifier(t??!1,n?r:void 0,n?l.factory.createIdentifier(encodeURIComponent(n)):r)},Wr=({alias:e,isTypeOnly:t=!1,name:n})=>{const r=l.factory.createIdentifier(n);if(e){const n=l.factory.createIdentifier(e);return l.factory.createImportSpecifier(t,r,n)}return l.factory.createImportSpecifier(t,void 0,r)},Ur=e=>e<0?l.factory.createPrefixUnaryExpression(l.SyntaxKind.MinusToken,l.factory.createNumericLiteral(Math.abs(e))):l.factory.createNumericLiteral(e),Vr=(e,t=!1)=>{let n=e;t&&(n=Ie(n));const r=n.includes("'")&&n.includes('"'),o=n.includes("\n"),s=n.startsWith("`"),a=n.startsWith("\\`")&&n.endsWith("\\`");return(o||r||s)&&!a&&(n=`\`${n.replace(/(?<!\\)`/g,"\\`").replace(/\${/g,"\\${")}\``),n.startsWith("`")?l.factory.createIdentifier(n):l.factory.createStringLiteral(n,!n.includes("'")&&Dr.useSingleQuotes)},Kr=e=>void 0!==e,Qr=(e,t)=>{const n=t.filter(Boolean);if(!n.length)return;const r=n.map(((e,t)=>l.factory.createJSDocText(`${e}${t!==n.length?"\n":""}`))),o=Br({node:l.factory.createJSDocComment(l.factory.createNodeArray(r)),unescape:!0}).replace("/*","").replace("* */","");l.addSyntheticLeadingComment(e,l.SyntaxKind.MultiLineCommentTrivia,o,!0)},Jr=(e,t)=>l.isTypeNode(e)?e:"number"==typeof e?l.factory.createLiteralTypeNode(Ur(e)):l.factory.createTypeReferenceNode(e,t?.map((e=>Jr(e)))),zr=(e,t=!1)=>{const n=l.factory.createTypeLiteralNode(e.map((e=>{const t=l.factory.createPropertySignature(e.isReadOnly?[l.factory.createModifier(l.SyntaxKind.ReadonlyKeyword)]:void 0,e.name,e.isRequired?void 0:l.factory.createToken(l.SyntaxKind.QuestionToken),Jr(e.type));return e.comment&&Qr(t,e.comment),t})));return t?l.factory.createUnionTypeNode([n,l.factory.createTypeReferenceNode("null")]):n},Gr=(e,t=!1)=>{const n=e.map((e=>Jr(e)));return t&&n.push(l.factory.createTypeReferenceNode("null")),l.factory.createUnionTypeNode(n)},Xr=({identifiers:e=[],shorthand:t=!1,unescape:n=!1,value:r})=>null===r?l.factory.createNull():Array.isArray(r)?eo({arr:r}):"object"==typeof r?to({identifiers:e,obj:r,shorthand:t}):"number"==typeof r?Ur(r):"boolean"==typeof r?Lr(r):"string"==typeof r?Vr(r,n):void 0,Yr=e=>{const t="public"===e?l.SyntaxKind.PublicKeyword:"protected"===e?l.SyntaxKind.ProtectedKeyword:"private"===e?l.SyntaxKind.PrivateKeyword:void 0,n=[];return t&&n.push(l.factory.createModifier(t)),n},Zr=e=>e.map((e=>{const t=Yr(e.accessLevel);return e.isReadOnly&&t.push(l.factory.createModifier(l.SyntaxKind.ReadonlyKeyword)),l.factory.createParameterDeclaration(t,void 0,l.factory.createIdentifier(e.name),void 0===e.isRequired||e.isRequired?void 0:l.factory.createToken(l.SyntaxKind.QuestionToken),void 0!==e.type?Jr(e.type):void 0,void 0!==e.default?Xr({value:e.default}):void 0)})),eo=({arr:e,multiLine:t=!1})=>l.factory.createArrayLiteralExpression(e.map((e=>Xr({value:e}))).filter(Kr),!Array.isArray(e[0])&&"object"==typeof e[0]||t),to=({comments:e,identifiers:t=[],leadingComment:n,multiLine:r=!0,obj:o,shorthand:s=!1,unescape:a=!1})=>{const i=Array.isArray(o)?o.map((n=>{let r,o=!1;if("key"in n){let{key:e}=n;o=e===n.value,e.match(/^[0-9]/)&&e.match(/\D+/g)&&!e.startsWith("'")&&!e.endsWith("'")&&(e=`'${e}'`),!e.match(/\W/g)||e.startsWith("'")||e.endsWith("'")||(e=`'${e}'`)}if("spread"in n)r=l.factory.createSpreadAssignment(l.factory.createIdentifier(n.spread));else if(s&&o)r=l.factory.createShorthandPropertyAssignment(n.value);else{let e=Xr({identifiers:t.includes(n.key)?Object.keys(n.value):[],shorthand:s,unescape:a,value:n.value});if(!e)return;t.includes(n.key)&&!l.isObjectLiteralExpression(e)&&(e=l.factory.createIdentifier(n.value)),r=l.factory.createPropertyAssignment(n.key,e)}if("key"in n){const t=e?.[n.key];t&&Qr(r,t)}return r})).filter(Kr):Object.entries(o).map((([n,r])=>{let o=Xr({identifiers:t.includes(n)?Object.keys(r):[],shorthand:s,unescape:a,value:r});if(!o)return;t.includes(n)&&!l.isObjectLiteralExpression(o)&&(o=l.factory.createIdentifier(r));const i=n===r;n.match(/^[0-9]/)&&n.match(/\D+/g)&&!n.startsWith("'")&&!n.endsWith("'")&&(n=`'${n}'`),!n.match(/\W/g)||n.startsWith("'")||n.endsWith("'")||(n=`'${n}'`);const p=s&&i?l.factory.createShorthandPropertyAssignment(r):l.factory.createPropertyAssignment(n,o),c=e?.[n];return c&&Qr(p,c),p})).filter(Kr),p=l.factory.createObjectLiteralExpression(i,r);return n&&Qr(p,n),p},no=e=>{const t=e.match(/\.[0-9a-z]+$/i),n=t?t[0].slice(1):"";return{extension:n,name:e.slice(0,e.length-(n?n.length+1:0))}};class ro{_headers=[];_imports=[];_items=[];_name;_path;constructor({dir:e,name:n,header:r=!0}){this._name=this._setName(n),this._path=t.resolve(e,this.getName()),r&&(this._headers=[...this._headers,"// This file is auto-generated by @hey-api/openapi-ts"])}add(...e){this._items=[...this._items,...e]}addImport(...e){this._imports=[...this._imports,oo.import.named(...e)]}getName(e=!0){if(e)return this._name;const{name:t}=no(this._name);return t}isEmpty(){return!this._items.length}remove(t){e.rmSync(this._path,t)}_setName(e){if(e.includes("index"))return e;const{extension:t,name:n}=no(e);return[n,"gen",t].filter(Boolean).join(".")}toString(e="\n"){let t=[];return this._headers.length&&(t=[...t,this._headers.join("\n")]),this._imports.length&&(t=[...t,this._imports.map((e=>Br({node:e}))).join("\n")]),t=[...t,...this._items.map((e=>"string"==typeof e?e:Br({node:e,unescape:!0})))],t.join(e)}write(t="\n"){this.isEmpty()?this.remove({force:!0}):e.writeFileSync(this._path,this.toString(t))}}const oo={class:{constructor:({accessLevel:e,comment:t,multiLine:n=!0,parameters:r=[],statements:o=[]})=>{const s=l.factory.createConstructorDeclaration(Yr(e),Zr(r),l.factory.createBlock(o,n));return t?.length&&Qr(s,t),s},create:({decorator:e,members:t=[],name:n})=>{const r=[l.factory.createModifier(l.SyntaxKind.ExportKeyword)];e&&r.unshift(l.factory.createDecorator(l.factory.createCallExpression(l.factory.createIdentifier(e.name),void 0,e.args.map((e=>Xr({value:e}))).filter(Kr))));const o=[];return t.forEach((e=>{o.push(e),o.push(l.factory.createIdentifier("\n"))})),l.factory.createClassDeclaration(r,l.factory.createIdentifier(n),[],[],o)},method:({accessLevel:e,comment:t,isStatic:n=!1,multiLine:r=!0,name:o,parameters:s=[],returnType:a,statements:i=[]})=>{const p=Yr(e);n&&p.push(l.factory.createModifier(l.SyntaxKind.StaticKeyword));const c=l.factory.createMethodDeclaration(p,void 0,l.factory.createIdentifier(o),void 0,[],Zr(s),a?Jr(a):void 0,l.factory.createBlock(i,r));return t&&Qr(c,t),c}},export:{all:e=>l.factory.createExportDeclaration(void 0,!1,void 0,Vr(e)),const:({comment:e,constAssertion:t=!1,expression:n,name:r})=>{const o=t?l.factory.createAsExpression(n,l.factory.createTypeReferenceNode("const")):n,s=l.factory.createVariableDeclaration(l.factory.createIdentifier(r),void 0,void 0,o),a=l.factory.createVariableStatement([l.factory.createModifier(l.SyntaxKind.ExportKeyword)],l.factory.createVariableDeclarationList([s],l.NodeFlags.Const));return e&&Qr(a,e),a},named:(e,t)=>{const n=(e=Array.isArray(e)?e:[e]).every((e=>"object"==typeof e&&e.isTypeOnly));return l.factory.createExportDeclaration(void 0,n,l.factory.createNamedExports(e.map((e=>{const{name:t,isTypeOnly:r,alias:o}="string"==typeof e?{name:e}:e;return Fr(t,!n&&Boolean(r),o)}))),Vr(t))}},import:{named:(e,t)=>{const n=Array.isArray(e)?e:[e],r=!n.some((e=>"object"!=typeof e||!e.isTypeOnly)),o=n.map((e=>{const t="string"==typeof e?{name:e}:e;return Wr({alias:t.alias,isTypeOnly:!r&&Boolean(t.isTypeOnly),name:t.name})})),s=l.factory.createNamedImports(o),a=l.factory.createImportClause(r,void 0,s),i=Vr(t);return l.factory.createImportDeclaration(void 0,a,i)}},return:{functionCall:({args:e=[],name:t,types:n=[]})=>{const r=l.factory.createCallExpression(l.factory.createIdentifier(t),n.map((e=>l.factory.createTypeReferenceNode(e))),e.map((e=>l.isExpression(e)?e:l.factory.createIdentifier(e))).filter(Kr));return l.factory.createReturnStatement(r)}},typedef:{alias:({comment:e,name:t,type:n})=>{const r=l.factory.createTypeAliasDeclaration([l.factory.createModifier(l.SyntaxKind.ExportKeyword)],l.factory.createIdentifier(t),[],Jr(n));return e&&Qr(r,e),r},array:(e,t=!1)=>{const n=l.factory.createTypeReferenceNode("Array",[Gr(e)]);return t?l.factory.createUnionTypeNode([n,l.factory.createTypeReferenceNode("null")]):n},basic:Jr,interface:zr,intersect:(e,t=!1)=>{const n=e.map((e=>Jr(e))),r=l.factory.createIntersectionTypeNode(n);return t?l.factory.createUnionTypeNode([r,l.factory.createTypeReferenceNode("null")]):r},record:(e,t,n=!1)=>{const r=Gr(e),o=Gr(t),s=zr([{isRequired:!0,name:`[key: ${Br({node:r,unescape:!0})}]`,type:o}]);return n?l.factory.createUnionTypeNode([s,l.factory.createTypeReferenceNode("null")]):s},tuple:({isNullable:e=!1,types:t})=>{const n=t.map((e=>Jr(e))),r=l.factory.createTupleTypeNode(n);if(e){return l.factory.createUnionTypeNode([r,l.factory.createTypeReferenceNode("null")])}return r},union:Gr},types:{array:eo,enum:({comments:e,leadingComment:t,name:n,obj:r})=>{const o=l.factory.createEnumDeclaration([l.factory.createModifier(l.SyntaxKind.ExportKeyword)],l.factory.createIdentifier(n),Object.entries(r).map((([t,n])=>{const r=Xr({unescape:!0,value:n}),o=l.factory.createEnumMember(t,r),s=e?.[t];return s&&Qr(o,s),o})));return t&&Qr(o,t),o},function:({comment:e,multiLine:t,parameters:n=[],returnType:r,statements:o=[]})=>{const s=l.factory.createArrowFunction(void 0,void 0,Zr(n),r?Jr(r):void 0,void 0,l.factory.createBlock(o,t));return e&&Qr(s,e),s},object:to},utils:{toNode:function(e){return jr(e).statements[0]},toString:Br}},so=e=>{switch(e){case"angular":return"AngularHttpRequest";case"axios":return"AxiosHttpRequest";case"fetch":return"FetchHttpRequest";case"node":return"NodeHttpRequest";case"xhr":return"XHRHttpRequest";default:return""}},ao=e=>{const t=be();if(Array.isArray(e))return e.map((e=>ao(e)));if("object"!=typeof e||null===e)return e;const n={...e};return Object.entries(n).forEach((([e,r])=>{"form"===t.schemas.type&&["description","x-enum-descriptions","x-enum-varnames","x-enumNames","title"].includes(e)?delete n[e]:("$ref"===e&&"string"==typeof r&&(n[e]=decodeURIComponent(r)),r&&"object"==typeof r&&(n[e]=ao(r)))})),n},io=e=>{const t=be();return t?.useOptions?e.isRequired?"":"?":e.isRequired||(e=>{if(void 0!==e.default)return JSON.stringify(e.default,null,4)})(e)?"":"?"},lo=(e,t=!1)=>"string"==typeof e?e.includes("'")&&t?`"${e}"`:`'${e}'`:e,po=e=>{const t=be();return"binary"===e.base?oo.typedef.union(["Blob","File"]):t.types.dates&&"date-time"===e.format?oo.typedef.basic("Date"):oo.typedef.basic(e.base)},co=e=>{switch(e.export){case"all-of":return(e=>{const t=e.properties.map((e=>oo.utils.toString({node:co(e),unescape:!0}))).filter(ke);return oo.typedef.intersect(t,e.isNullable)})(e);case"any-of":case"one-of":return(e=>{const t=e.properties.map((e=>oo.utils.toString({node:co(e),unescape:!0}))).filter(ke);return oo.typedef.union(t,e.isNullable)})(e);case"array":return(e=>{if("array"===e.export&&e.link&&e.maxItems&&e.minItems&&e.maxItems===e.minItems&&e.maxItems<=100){const t=Array(e.maxItems).fill(co(e.link));return oo.typedef.tuple({isNullable:e.isNullable,types:t})}return e.link?oo.typedef.array([co(e.link)],e.isNullable):oo.typedef.array([po(e)],e.isNullable)})(e);case"dictionary":return(e=>{const t=e.link?co(e.link):po(e);return oo.typedef.record(["string"],[t],e.isNullable)})(e);case"enum":return(e=>{const t=e.enum.map((e=>lo(e.value)));return oo.typedef.union(t,e.isNullable)})(e);case"interface":return(e=>{if(!e.properties.length)return oo.typedef.basic("unknown");const t=e.properties.map((e=>{let t=io(e),n=co(e);return"[key: string]"===e.name&&t&&(t="",n=oo.typedef.union([n,"undefined"])),{comment:[e.description&&Se(e.description),e.deprecated&&"@deprecated"],isReadOnly:e.isReadOnly,isRequired:""===t,name:e.name,type:n}}));return oo.typedef.interface(t,e.isNullable)})(e);default:return(e=>{const t="null"!==e.base&&e.isNullable;return oo.typedef.union([po(e)],t)})(e)}},uo=({client:e,count:t=1,meta:n,nameTransformer:r})=>{let o={created:!1,name:n.name};r&&(o.name=r(o.name)),t>1&&(o.name=`${o.name}${t}`);const s=e.types[o.name];return s?s.$ref!==n.$ref&&(o=uo({client:e,count:t+1,meta:n,nameTransformer:r})):(e.types[o.name]=n,o.created=!0),o},mo=({meta:e,onImport:t,...n})=>{if(!e)return;const{name:r}=uo({meta:e,...n});t(r)},fo=e=>`${me(e,{pascalCase:!0})}Data`,ho=e=>`${me(e,{pascalCase:!0})}Response`,yo=(e,t)=>{if(!t.parameters.length)return[];const n=be(),{name:r}=uo({client:e,meta:{$ref:t.name,name:t.name},nameTransformer:fo});if(n.useOptions){return[{default:t.parameters.some((e=>e.isRequired))?void 0:{},name:"data",type:r}]}return t.parameters.map((e=>{const t=`${r}['${e.name}']`;return{default:e?.default,isRequired:""===io(e),name:e.name,type:t}}))},go=(e,t)=>{const n=be();let r=oo.typedef.basic("void");if(t.results.length){const{name:n}=uo({client:e,meta:{$ref:t.name,name:t.name},nameTransformer:ho});r=oo.typedef.union([n])}return n.useOptions&&"response"===n.services.response&&(r=oo.typedef.basic("ApiResult",[r])),r="angular"===n.client?oo.typedef.basic("Observable",[r]):oo.typedef.basic("CancelablePromise",[r]),r},vo=e=>{const t=be();let n=[];e.parameters.length&&(n=t.useOptions?["@param data The data for the request.",...e.parameters.map((e=>`@param data.${e.name} ${e.description?Se(e.description):""}`))]:e.parameters.map((e=>`@param ${e.name} ${e.description?Se(e.description):""}`)));return[e.deprecated&&"@deprecated",e.summary&&Se(e.summary),e.description&&Se(e.description),...n,...e.results.map((e=>`@returns ${e.type} ${e.description?Se(e.description):""}`)),"@throws ApiError"]},bo=(e,t)=>{const n=be(),r=(e=>{const t=be();if(t.client.startsWith("@hey-api")){const t=[{spread:"data"},{key:"url",value:e.path}];return oo.types.object({obj:t})}const n=e=>e.reduce(((e,n)=>{const r=n.prop,o=t.useOptions?`data.${n.name}`:n.name;return r===o?e[r]=r:$e(r)===r?e[r]=o:e[`'${r}'`]=o,e}),{}),r={method:e.method,url:e.path};if(e.parametersPath.length&&(r.path=n(e.parametersPath)),e.parametersCookie.length&&(r.cookies=n(e.parametersCookie)),e.parametersHeader.length&&(r.headers=n(e.parametersHeader)),e.parametersQuery.length&&(r.query=n(e.parametersQuery)),e.parametersForm.length&&(r.formData=n(e.parametersForm)),e.parametersBody&&("formData"===e.parametersBody.in&&(t.useOptions?r.formData=`data.${e.parametersBody.name}`:r.formData=e.parametersBody.name),"body"===e.parametersBody.in&&(t.useOptions?r.body=`data.${e.parametersBody.name}`:r.body=e.parametersBody.name)),e.parametersBody?.mediaType&&(r.mediaType=e.parametersBody?.mediaType),e.responseHeader&&(r.responseHeader=e.responseHeader),e.errors.length){const t={};e.errors.forEach((e=>{t[e.code]=e.description??""})),r.errors=t}return oo.types.object({identifiers:["body","cookies","formData","headers","path","query"],obj:r,shorthand:!0})})(t);if(n.client.startsWith("@hey-api")){const n=t.results.length?uo({client:e,meta:{$ref:t.name,name:t.name},nameTransformer:ho}).name:"void";return[oo.return.functionCall({args:[r],name:`client.${t.method.toLocaleLowerCase()}`,types:[n]})]}return n.name?[oo.return.functionCall({args:[r],name:"this.httpRequest.request"})]:"angular"===n.client?[oo.return.functionCall({args:["OpenAPI","this.http",r],name:"__request"})]:[oo.return.functionCall({args:["OpenAPI",r],name:"__request"})]},xo=(e,t,n,r)=>{const o=be();if(t.operations.forEach((t=>{t.parameters.length&&mo({client:e,meta:{$ref:t.name,name:t.name},nameTransformer:fo,onImport:r}),t.results.length&&mo({client:e,meta:{$ref:t.name,name:t.name},nameTransformer:ho,onImport:r})})),o.client.startsWith("@hey-api"))return void t.operations.forEach((t=>{const r=oo.types.function({parameters:yo(e,t),statements:bo(e,t)}),o=oo.export.const({comment:vo(t),expression:r,name:t.name});n(o)}));const s=t.operations.map((t=>oo.class.method({accessLevel:"public",comment:vo(t),isStatic:void 0===o.name&&"angular"!==o.client,name:t.name,parameters:yo(e,t),returnType:go(e,t),statements:bo(e,t)})));o.name?s.unshift(oo.class.constructor({multiLine:!1,parameters:[{accessLevel:"public",isReadOnly:!0,name:"httpRequest",type:"BaseHttpRequest"}]})):"angular"===o.client&&s.unshift(oo.class.constructor({multiLine:!1,parameters:[{accessLevel:"public",isReadOnly:!0,name:"http",type:"HttpClient"}]}));const a=oo.class.create({decorator:"angular"===o.client?{args:[{providedIn:"root"}],name:"Injectable"}:void 0,members:s,name:xe(t.name)});n(a)},Ro={$refs:[],base:"",description:null,enum:[],enums:[],export:"interface",imports:[],isDefinition:!1,isNullable:!1,isReadOnly:!1,isRequired:!1,link:null,name:"",properties:[],template:null,type:""},Po=({comment:e,meta:t,onCreated:n,onNode:r,type:o,...s})=>{if(!t)return;const{created:a,name:i}=uo({meta:t,...s});if(a){r(oo.typedef.alias({comment:e,name:i,type:o})),n?.(i)}},Oo=(e,t,n)=>{const r=be(),o={},s={};t.enum.forEach((e=>{const t=((e,t)=>{if(t)return t;if("number"==typeof e)return`'_${e}'`;let n="";return"string"==typeof e&&(n=e.replace(/[^$\u200c\u200d\p{ID_Continue}]/gu,"_").replace(/^([^$_\p{ID_Start}])/u,"_$1").replace(/(\p{Lowercase})(\p{Uppercase}+)/gu,"$1_$2")),n=n.trim(),n||(n="empty_string"),n.toUpperCase()})(e.value,e.customName),n=lo(e.value);o[t]=n;const r=e.customDescription||e.description;r&&(s[t]=[Se(r)])}));const a=[t.description&&Se(t.description),t.deprecated&&"@deprecated"];var i;"typescript"!==r.types.enums?Po({client:e,comment:a,meta:t.meta,onCreated:e=>{if("javascript"===r.types.enums){const t=oo.types.object({comments:s,multiLine:!0,obj:o,unescape:!0}),r=oo.export.const({comment:a,constAssertion:!0,expression:t,name:e});n(r)}},onNode:n,type:(i=t.enum,i.map((e=>lo(e.value,!0))).filter(ke).join(" | "))}):(({leadingComment:e,comments:t,meta:n,obj:r,onNode:o,...s})=>{if(!n)return;const{created:a,name:i}=uo({meta:n,...s});a&&o(oo.types.enum({comments:t,leadingComment:e,name:i,obj:r}))})({client:e,comments:s,leadingComment:a,meta:t.meta,obj:o,onNode:n})},qo=(e,t,n)=>{Po({client:e,comment:[t.description&&Se(t.description),t.deprecated&&"@deprecated"],meta:t.meta,onNode:n,type:co(t)})},Ao=(e,t,n)=>{switch(t.export){case"all-of":case"any-of":case"one-of":case"interface":return((e,t,n)=>{qo(e,t,n),t.enums.forEach((t=>Oo(e,t,n)))})(e,t,n);case"enum":return Oo(e,t,n);default:return qo(e,t,n)}},wo=async({client:e,files:t})=>{for(const n of e.models)Ao(e,n,(e=>{t.types?.add(e)}));t.services&&e.services.length&&((e,t)=>{const n=new Map,r=be();e.services.forEach((o=>{o.operations.forEach((o=>{const s=o.parameters.length,a=o.results.length,i=o.errors.length;if(s||a||i){let l=n.get(o.path);l||(n.set(o.path,new Map),l=n.get(o.path));let p=l.get(o.method);if(p||(l.set(o.method,new Map),p=l.get(o.method)),s){const n=o.parameters.filter((e=>"body"===e.in)).sort(Tr)[0],s={...Ro,...n,in:"body",isRequired:!!n&&n.isRequired,name:"body",prop:"body"},a={...Ro,in:"header",isRequired:o.parameters.filter((e=>"header"===e.in)).some((e=>e.isRequired)),mediaType:null,name:"header",prop:"header",properties:o.parameters.filter((e=>"header"===e.in)).sort(Tr)},i={...Ro,in:"path",isRequired:o.parameters.filter((e=>"path"===e.in)).some((e=>e.isRequired)),mediaType:null,name:"path",prop:"path",properties:o.parameters.filter((e=>"path"===e.in)).sort(Tr)},l={...Ro,in:"query",isRequired:o.parameters.filter((e=>"query"===e.in)).some((e=>e.isRequired)),mediaType:null,name:"query",prop:"query",properties:o.parameters.filter((e=>"query"===e.in)).sort(Tr)},c=r.client.startsWith("@hey-api")?[s,a,i,l].filter((e=>e.properties.length||e.$refs.length||e.mediaType)):$r([...o.parameters]);p.set("req",c),Po({client:e,meta:{$ref:o.name,name:o.name},nameTransformer:fo,onNode:t,type:co({...Ro,isRequired:!0,properties:c})})}if(a){let n=p.get("res");if(n||(p.set("res",new Map),n=p.get("res")),Array.isArray(n))return;o.results.forEach((e=>{n.set(e.code,e)})),Po({client:e,meta:{$ref:o.name,name:o.name},nameTransformer:ho,onNode:t,type:co({...Ro,export:"any-of",isRequired:!0,properties:o.results.filter((e=>"default"===e.code||e.code>=200&&e.code<300))})})}if(i){let e=p.get("res");if(e||(p.set("res",new Map),e=p.get("res")),Array.isArray(e))return;o.errors.forEach((t=>{e.set(t.code,t)}))}}}))}));const o=Array.from(n).map((([e,t])=>{const n=Array.from(t).map((([e,t])=>{const n=Array.from(t).map((([e,t])=>{const n=Array.isArray(t)?t:Array.from(t).map((([e,t])=>({...Ro,...t,isRequired:!0,name:String(e)})));return{...Ro,isRequired:!0,name:e,properties:n}}));return{...Ro,isRequired:!0,name:e.toLocaleLowerCase(),properties:n}}));return{...Ro,isRequired:!0,name:`'${e}'`,properties:n}}));Po({client:e,meta:{$ref:"@hey-api/openapi-ts",name:"$OpenApiTs"},onNode:t,type:co({...Ro,properties:o})})})(e,(e=>{t.types?.add(e)}))},ko=async(n,r,o)=>{const s=be();if(s.services.include){const e=new RegExp(s.services.include);r.services=r.services.filter((t=>e.test(t.name)))}if(s.types.include){const e=new RegExp(s.types.include);r.models=r.models.filter((t=>e.test(t.name)))}const a=t.resolve(s.output.path);e.existsSync(a)||e.mkdirSync(a,{recursive:!0});const i={index:new ro({dir:s.output.path,name:"index.ts"})};s.schemas.export&&(i.schemas=new ro({dir:s.output.path,name:"schemas.ts"})),s.services.export&&(i.services=new ro({dir:s.output.path,name:"services.ts"})),s.types.export&&(i.types=new ro({dir:s.output.path,name:"types.ts"})),await(async({file:e,openApi:t})=>{if(!e)return;const n=(t,n)=>{const r=`$${de(t)}`,o=ao(n),s=oo.types.object({obj:o}),a=oo.export.const({constAssertion:!0,expression:s,name:r});e.add(a)};"swagger"in t&&Object.entries(t.definitions??{}).forEach((([e,t])=>{n(e,t)})),"openapi"in t&&Object.entries(t.components?.schemas??{}).forEach((([e,t])=>{n(e,t)}))})({file:i.schemas,openApi:n}),await wo({client:r,files:i}),await(async({client:e,files:t})=>{if(!t.services)return;const n=be();let r=[];for(const n of e.services)xo(e,n,(e=>{t.services?.add(e)}),(e=>{r=[...r,e]}));if(n.client.startsWith("@hey-api")?t.services?.addImport(["client"],n.client):("angular"===n.client?(t.services?.addImport("Injectable","@angular/core"),n.name||t.services?.addImport("HttpClient","@angular/common/http"),t.services?.addImport({isTypeOnly:!0,name:"Observable"},"rxjs")):t.services?.addImport({isTypeOnly:!0,name:"CancelablePromise"},"./core/CancelablePromise"),"response"===n.services.response&&t.services?.addImport({isTypeOnly:!0,name:"ApiResult"},"./core/ApiResult"),n.name?t.services?.addImport({isTypeOnly:"angular"!==n.client,name:"BaseHttpRequest"},"./core/BaseHttpRequest"):(t.services?.addImport("OpenAPI","./core/OpenAPI"),t.services?.addImport({alias:"__request",name:"request"},"./core/request"))),t.types&&!t.types.isEmpty()){const e=r.filter(ke).map((e=>({isTypeOnly:!0,name:e})));t.services?.addImport(e,`./${t.types.getName(!1)}`)}})({client:r,files:i}),await(async(n,r,o,s)=>{const a=be(),i=s.client({$config:a,...o,httpRequest:so(a.client),models:$r(o.models),services:$r(o.services)});a.name&&await e.writeFileSync(t.resolve(r,`${a.name}.ts`),i)})(0,a,r,o),await(async(n,r,o)=>{const s=be();if(s.exportCore){const a={httpRequest:so(s.client),server:void 0!==s.base?s.base:r.server,version:r.version};if(e.rmSync(t.resolve(n),{force:!0,recursive:!0}),e.mkdirSync(t.resolve(n),{recursive:!0}),await e.writeFileSync(t.resolve(n,"OpenAPI.ts"),o.core.settings({$config:s,...a})),await e.writeFileSync(t.resolve(n,"ApiError.ts"),o.core.apiError({$config:s,...a})),await e.writeFileSync(t.resolve(n,"ApiRequestOptions.ts"),o.core.apiRequestOptions({$config:s,...a})),await e.writeFileSync(t.resolve(n,"ApiResult.ts"),o.core.apiResult({$config:s,...a})),"angular"!==s.client&&await e.writeFileSync(t.resolve(n,"CancelablePromise.ts"),o.core.cancelablePromise({$config:s,...a})),await e.writeFileSync(t.resolve(n,"request.ts"),o.core.request({$config:s,...a})),s.name&&(await e.writeFileSync(t.resolve(n,"BaseHttpRequest.ts"),o.core.baseHttpRequest({$config:s,...a})),await e.writeFileSync(t.resolve(n,`${a.httpRequest}.ts`),o.core.httpRequest({$config:s,...a}))),s.request){const r=t.resolve(process.cwd(),s.request);if(!await e.existsSync(r))throw new Error(`Custom request file "${r}" does not exists`);await e.copyFileSync(r,t.resolve(n,"request.ts"))}}})(t.resolve(s.output.path,"core"),r,o),await(async({files:e})=>{const t=be();t.name&&e.index.add(oo.export.named([t.name],`./${t.name}`)),t.exportCore&&(e.index.add(oo.export.named("ApiError","./core/ApiError")),"response"===t.services.response&&e.index.add(oo.export.named({isTypeOnly:!0,name:"ApiResult"},"./core/ApiResult")),t.name&&e.index.add(oo.export.named("BaseHttpRequest","./core/BaseHttpRequest")),"angular"!==t.client&&e.index.add(oo.export.named(["CancelablePromise","CancelError"],"./core/CancelablePromise")),e.index.add(oo.export.named(["OpenAPI",{isTypeOnly:!0,name:"OpenAPIConfig"}],"./core/OpenAPI"))),e.schemas&&!e.schemas.isEmpty()&&e.index.add(oo.export.all(`./${e.schemas.getName(!1)}`)),e.services&&!e.services.isEmpty()&&e.index.add(oo.export.all(`./${e.services.getName(!1)}`)),e.types&&!e.types.isEmpty()&&e.index.add(oo.export.all(`./${e.types.getName(!1)}`))})({files:i}),i.schemas?.write("\n\n"),i.services?.write("\n\n"),i.types?.write("\n\n"),i.index.write()},Eo={"@hey-api/client-axios":["axios"],"@hey-api/client-fetch":[],angular:["@angular/common","@angular/core","rxjs"],axios:["axios"],fetch:[],node:["node-fetch"],xhr:[]},Co={biome:{args:e=>["format","--write",e],command:"biome",condition:e=>Boolean(e["@biomejs/biome"]),name:"Biome (Format)"},prettier:{args:e=>["--ignore-unknown",e,"--write","--ignore-path","./.prettierignore"],command:"prettier",condition:e=>Boolean(e.prettier),name:"Prettier"}},To={biome:{args:e=>["lint","--apply",e],command:"biome",condition:e=>Boolean(e["@biomejs/biome"]),name:"Biome (Lint)"},eslint:{args:e=>[e,"--fix"],command:"eslint",condition:e=>Boolean(e.eslint),name:"ESLint"}},$o=async(e,r)=>{const{config:o}=await n.loadConfig({jitiOptions:{esmResolve:!0},name:"openapi-ts",overrides:e});o&&(e={...o,...e});const{base:s,debug:a=!1,dryRun:i=!1,exportCore:l=!0,input:p,name:c,request:u,useOptions:m=!0}=e;a&&console.warn("userConfig:",e);const d=(e=>{let t={format:!1,lint:!1,path:""};return"string"==typeof e.output?t.path=e.output:t={...t,...e.output},t})(e);if(!p)throw new Error("🚫 input not provided - provide path to OpenAPI specification");if(!d.path)throw new Error("🚫 output not provided - provide path where we should generate your client");m||console.warn("⚠️ Deprecation warning: useOptions set to false. This setting will be removed in future versions. Please migrate useOptions to true https://heyapi.vercel.app/openapi-ts/migrating.html#v0-27-38");const f=e.client||(e=>e["@hey-api/client-axios"]?"@hey-api/client-axios":e["@hey-api/client-fetch"]?"@hey-api/client-fetch":e.axios?"axios":e["node-fetch"]?"node":Object.keys(e).some((e=>e.startsWith("@angular")))?"angular":"fetch")(r),h=(e=>{let t={export:!0,type:"json"};return"boolean"==typeof e.schemas?t.export=e.schemas:t={...t,...e.schemas},t})(e),y=(e=>{let t={export:!0,name:"{{name}}Service",operationId:!0,response:"body"};return"boolean"==typeof e.services?t.export=e.services:"string"==typeof e.services?t.include=e.services:t={...t,...e.services},t})(e),g=(e=>{let t={dates:!1,enums:!1,export:!0,name:"preserve"};return"boolean"==typeof e.types?t.export=e.types:"string"==typeof e.types?t.include=e.types:t={...t,...e.types},t})(e);return d.path=t.resolve(process.cwd(),d.path),v={base:s,client:f,debug:a,dryRun:i,exportCore:!f.startsWith("@hey-api")&&l,input:p,name:c,output:d,request:u,schemas:h,services:y,types:g,useOptions:m},ve=v,be();var v};exports.createClient=async function(n){const r=(()=>{const n=e=>[e.dependencies??{},e.devDependencies??{},e.peerDependencies??{}].reduce(((e,t)=>({...e,...t})),{});let r={};const o=re("npm",["list","-g","--json","--depth=0"]);if(!o.error){const e=JSON.parse(o.stdout.toString());r={...r,...n(e)}}const s=t.resolve(process.cwd(),"package.json");if(e.existsSync(s)){const t=JSON.parse(e.readFileSync(s).toString());r={...r,...n(t)}}return r})();if(!r.typescript)throw new Error("🚫 dependency missing - TypeScript must be installed");const o=await $o(n,r),s="string"==typeof o.input?await(async n=>{const r=e.existsSync(n)?t.resolve(n):n;return await i.bundle(r,r,{})})(o.input):o.input,a=Ir(function(e){if("openapi"in e)return ft(e);if("swagger"in e)return Ye(e);throw new Error(`Unsupported Open API specification: ${JSON.stringify(e,null,2)}`)}(s)),l=(()=>{Er();const e={client:Nn.template(jn),core:{apiError:Nn.template(Vn),apiRequestOptions:Nn.template(Kn),apiResult:Nn.template(Qn),baseHttpRequest:Nn.template(er),cancelablePromise:Nn.template(tr),httpRequest:Nn.template(br),request:Nn.template(Rr),settings:Nn.template(xr)}};return Nn.registerPartial("functions/base64",Nn.template(lr)),Nn.registerPartial("functions/catchErrorCodes",Nn.template(pr)),Nn.registerPartial("functions/getFormData",Nn.template(cr)),Nn.registerPartial("functions/getQueryString",Nn.template(ur)),Nn.registerPartial("functions/getUrl",Nn.template(mr)),Nn.registerPartial("functions/isBlob",Nn.template(dr)),Nn.registerPartial("functions/isFormData",Nn.template(fr)),Nn.registerPartial("functions/isString",Nn.template(hr)),Nn.registerPartial("functions/isStringWithValue",Nn.template(yr)),Nn.registerPartial("functions/isSuccess",Nn.template(gr)),Nn.registerPartial("functions/resolve",Nn.template(vr)),Nn.registerPartial("fetch/getHeaders",Nn.template(nr)),Nn.registerPartial("fetch/getRequestBody",Nn.template(rr)),Nn.registerPartial("fetch/getResponseBody",Nn.template(or)),Nn.registerPartial("fetch/getResponseHeader",Nn.template(sr)),Nn.registerPartial("fetch/request",Nn.template(ar)),Nn.registerPartial("fetch/sendRequest",Nn.template(ir)),Nn.registerPartial("xhr/getHeaders",Nn.template(Pr)),Nn.registerPartial("xhr/getRequestBody",Nn.template(Or)),Nn.registerPartial("xhr/getResponseBody",Nn.template(qr)),Nn.registerPartial("xhr/getResponseHeader",Nn.template(Ar)),Nn.registerPartial("xhr/request",Nn.template(wr)),Nn.registerPartial("xhr/sendRequest",Nn.template(kr)),Nn.registerPartial("axios/getHeaders",Nn.template(Jn)),Nn.registerPartial("axios/getRequestBody",Nn.template(zn)),Nn.registerPartial("axios/getResponseBody",Nn.template(Gn)),Nn.registerPartial("axios/getResponseHeader",Nn.template(Xn)),Nn.registerPartial("axios/request",Nn.template(Yn)),Nn.registerPartial("axios/sendRequest",Nn.template(Zn)),Nn.registerPartial("angular/getHeaders",Nn.template(Mn)),Nn.registerPartial("angular/getRequestBody",Nn.template(Bn)),Nn.registerPartial("angular/getResponseBody",Nn.template(Ln)),Nn.registerPartial("angular/getResponseHeader",Nn.template(Fn)),Nn.registerPartial("angular/request",Nn.template(Wn)),Nn.registerPartial("angular/sendRequest",Nn.template(Un)),e})();return o.dryRun||((()=>{const{client:e}=be();switch(e){case"angular":return console.log("✨ Creating Angular client");case"axios":return console.log("✨ Creating Axios client");case"fetch":return console.log("✨ Creating Fetch client");case"node":return console.log("✨ Creating Node.js client");case"xhr":console.log("✨ Creating XHR client")}})(),(e=>{const{client:t}=be(),n=Eo[t].filter((t=>void 0===e[t]));n.length>0&&console.log("⚠️ Dependencies used in generated client are missing: "+n.join(" "))})(r),await ko(s,a,l),(e=>{const t=be();if(t.output.format){const n=Co[t.output.format];n.condition(e)&&(console.log(`✨ Running ${n.name}`),re(n.command,n.args(t.output.path)))}if(t.output.lint){const n=To[t.output.lint];n.condition(e)&&(console.log(`✨ Running ${n.name}`),re(n.command,n.args(t.output.path)))}})(r)),console.log("✨ Done! Your client is located in:",o.output.path),a},exports.defineConfig=function(e){return e};
@@ -62,6 +62,16 @@ interface Schema {
62
62
  pattern?: string;
63
63
  uniqueItems?: boolean;
64
64
  }
65
+ interface ModelMeta {
66
+ /**
67
+ * Ref to the type in OpenAPI specification.
68
+ */
69
+ $ref: string;
70
+ /**
71
+ * Name passed to the initial `getModel()` call.
72
+ */
73
+ name: string;
74
+ }
65
75
  interface Model extends Schema {
66
76
  /**
67
77
  * **Experimental.** Contains list of original refs so they can be used
@@ -77,6 +87,10 @@ interface Model extends Schema {
77
87
  export: 'all-of' | 'any-of' | 'array' | 'const' | 'dictionary' | 'enum' | 'generic' | 'interface' | 'one-of' | 'reference';
78
88
  imports: string[];
79
89
  link: Model | null;
90
+ meta?: ModelMeta;
91
+ /**
92
+ * @deprecated use `meta.name` instead
93
+ */
80
94
  name: string;
81
95
  properties: Model[];
82
96
  template: string | null;
@@ -87,17 +101,20 @@ interface Service extends Pick<Model, '$refs' | 'imports' | 'name'> {
87
101
  }
88
102
 
89
103
  interface Client {
90
- enumNames: string[];
91
104
  models: Model[];
92
105
  server: string;
93
106
  services: Service[];
94
- serviceTypes: string[];
107
+ /**
108
+ * Map of generated types, keys are type names
109
+ */
110
+ types: Record<string, ModelMeta>;
95
111
  version: string;
96
112
  }
97
113
 
98
114
  interface UserConfig {
99
115
  /**
100
116
  * Manually set base in OpenAPI config instead of inferring from server value
117
+ * @deprecated
101
118
  */
102
119
  base?: string;
103
120
  /**
@@ -120,30 +137,37 @@ interface UserConfig {
120
137
  * @default true
121
138
  */
122
139
  exportCore?: boolean;
123
- /**
124
- * Process output folder with formatter?
125
- * @default false
126
- */
127
- format?: 'biome' | 'prettier' | false;
128
140
  /**
129
141
  * The relative location of the OpenAPI spec
130
142
  */
131
143
  input: string | Record<string, unknown>;
132
- /**
133
- * Process output folder with linter?
134
- * @default false
135
- */
136
- lint?: 'biome' | 'eslint' | false;
137
144
  /**
138
145
  * Custom client class name
146
+ * @deprecated
139
147
  */
140
148
  name?: string;
141
149
  /**
142
150
  * The relative location of the output directory
143
151
  */
144
- output: string;
152
+ output: string | {
153
+ /**
154
+ * Process output folder with formatter?
155
+ * @default false
156
+ */
157
+ format?: 'biome' | 'prettier' | false;
158
+ /**
159
+ * Process output folder with linter?
160
+ * @default false
161
+ */
162
+ lint?: 'biome' | 'eslint' | false;
163
+ /**
164
+ * The relative location of the output directory
165
+ */
166
+ path: string;
167
+ };
145
168
  /**
146
169
  * Path to custom request file
170
+ * @deprecated
147
171
  */
148
172
  request?: string;
149
173
  /**
@@ -226,6 +250,7 @@ interface UserConfig {
226
250
  };
227
251
  /**
228
252
  * Use options or arguments functions
253
+ * @deprecated
229
254
  * @default true
230
255
  */
231
256
  useOptions?: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hey-api/openapi-ts",
3
- "version": "0.43.1",
3
+ "version": "0.44.0",
4
4
  "type": "module",
5
5
  "description": "Turn your OpenAPI specification into a beautiful TypeScript client",
6
6
  "homepage": "https://heyapi.vercel.app/",
@@ -50,29 +50,29 @@
50
50
  "typescript": "^5.x"
51
51
  },
52
52
  "devDependencies": {
53
- "@angular-devkit/build-angular": "17.3.6",
54
- "@angular/animations": "17.3.6",
55
- "@angular/cli": "17.3.6",
56
- "@angular/common": "17.3.6",
57
- "@angular/compiler": "17.3.6",
58
- "@angular/compiler-cli": "17.3.6",
59
- "@angular/core": "17.3.6",
60
- "@angular/forms": "17.3.6",
61
- "@angular/platform-browser": "17.3.6",
62
- "@angular/platform-browser-dynamic": "17.3.6",
63
- "@angular/router": "17.3.6",
53
+ "@angular-devkit/build-angular": "17.3.7",
54
+ "@angular/animations": "17.3.8",
55
+ "@angular/cli": "17.3.7",
56
+ "@angular/common": "17.3.8",
57
+ "@angular/compiler": "17.3.8",
58
+ "@angular/compiler-cli": "17.3.8",
59
+ "@angular/core": "17.3.8",
60
+ "@angular/forms": "17.3.8",
61
+ "@angular/platform-browser": "17.3.8",
62
+ "@angular/platform-browser-dynamic": "17.3.8",
63
+ "@angular/router": "17.3.8",
64
64
  "@rollup/plugin-json": "6.1.0",
65
65
  "@rollup/plugin-node-resolve": "15.2.3",
66
66
  "@types/cross-spawn": "6.0.6",
67
67
  "@types/express": "4.17.21",
68
68
  "axios": "1.6.8",
69
69
  "cross-spawn": "7.0.3",
70
- "eslint": "9.1.1",
70
+ "eslint": "9.2.0",
71
71
  "express": "4.19.2",
72
- "glob": "10.3.12",
72
+ "glob": "10.3.15",
73
73
  "node-fetch": "3.3.2",
74
74
  "prettier": "3.2.5",
75
- "puppeteer": "22.7.1",
75
+ "puppeteer": "22.8.0",
76
76
  "rxjs": "7.8.1",
77
77
  "ts-node": "10.9.2",
78
78
  "tslib": "2.6.2",