@hey-api/openapi-ts 0.67.0 → 0.67.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/internal.cjs CHANGED
@@ -2,7 +2,7 @@
2
2
  `),i=r.startsWith("`"),c=r.startsWith("\\`")&&r.endsWith("\\`");return (s||n||i)&&!c&&(r=`\`${r.replace(/(?<!\\)`/g,"\\`").replace(/\${/g,"\\${")}\``),r.startsWith("`")?R({text:r}):nt({text:r})}},rt=e=>e!==null&&typeof e=="object"&&typeof e.kind=="number"&&typeof e.flags=="number"&&typeof e.pos=="number"&&typeof e.end=="number",Be=e=>e!==void 0,Yi=({commentObject:e,node:t})=>{let r=e.lines.filter(c=>!!c||c==="");if(!r.length)return;if(!e.jsdoc){for(let c of r)y__default.default.addSyntheticLeadingComment(t,y__default.default.SyntaxKind.SingleLineCommentTrivia,` ${c}`,true);return}let n=r.map((c,a)=>{let p=c;return a!==r.length&&(p=`${p}
3
3
  `),y__default.default.factory.createJSDocText(p)}),s=y__default.default.factory.createJSDocComment(y__default.default.factory.createNodeArray(n),void 0),i=ae({node:s,unescape:true}).replace("/*","").replace("* */","");y__default.default.addSyntheticLeadingComment(t,y__default.default.SyntaxKind.MultiLineCommentTrivia,i,true);},L=({comments:e=[],node:t})=>{let r=!!e.find(s=>typeof s=="object"&&s),n=e;r||(n=[{jsdoc:true,lines:e}]);for(let s of n)Yi({commentObject:s,node:t});};var V=(e,t)=>y__default.default.isTypeNode(e)?e:typeof e=="number"?y__default.default.factory.createLiteralTypeNode(H.number(e)):ne({typeArguments:t?.map(r=>V(r)),typeName:e}),Br=({expression:e,name:t})=>y__default.default.factory.createPropertyAccessChain(e,y__default.default.factory.createToken(y__default.default.SyntaxKind.QuestionDotToken),t),ce=({expression:e,isOptional:t,name:r})=>{let n=typeof e=="string"?R({text:e}):e;if(t)return Br({expression:n,name:r});if(typeof r=="string"&&(re.lastIndex=0,!re.test(r))){!r.startsWith("'")&&!r.endsWith("'")&&(r=`'${r}'`);let i=R({text:r});return y__default.default.factory.createElementAccessExpression(n,i)}let s=typeof r=="string"?R({text:r}):r;return y__default.default.factory.createPropertyAccessExpression(n,s)},Vr=()=>y__default.default.factory.createNull(),pe=({identifiers:e=[],isValueAccess:t,shorthand:r,unescape:n,value:s})=>{if(s===null)return Vr();if(Array.isArray(s))return Wr({elements:s});if(typeof s=="object")return pr({identifiers:e,obj:s,shorthand:r});if(typeof s=="number")return H.number(s);if(typeof s=="boolean")return H.boolean(s);if(typeof s=="string"){if(t){let i=s.split(".");return ce({expression:i[0],name:i[1]})}return H.string(s,n)}},ir=e=>{let t=e==="public"?y__default.default.SyntaxKind.PublicKeyword:e==="protected"?y__default.default.SyntaxKind.ProtectedKeyword:e==="private"?y__default.default.SyntaxKind.PrivateKeyword:void 0,r=[];return t&&r.push(y__default.default.factory.createModifier(t)),r},Ft=e=>e.map(t=>{if("destructure"in t)return bt({name:y__default.default.factory.createObjectBindingPattern(t.destructure.map(n=>"destructure"in n?void 0:y__default.default.factory.createBindingElement(void 0,void 0,R({text:n.name}),void 0)).filter(Boolean))});let r=ir(t.accessLevel);return t.isReadOnly&&(r=[...r,y__default.default.factory.createModifier(y__default.default.SyntaxKind.ReadonlyKeyword)]),bt({initializer:t.default!==void 0?pe({value:t.default}):void 0,modifiers:r,name:R({text:t.name}),required:t.isRequired!==false,type:t.type!==void 0?V(t.type):void 0})}),Ot=({keyword:e})=>{let t=y__default.default.SyntaxKind.AnyKeyword;switch(e){case "boolean":t=y__default.default.SyntaxKind.BooleanKeyword;break;case "never":t=y__default.default.SyntaxKind.NeverKeyword;break;case "number":t=y__default.default.SyntaxKind.NumberKeyword;break;case "string":t=y__default.default.SyntaxKind.StringKeyword;break;case "undefined":t=y__default.default.SyntaxKind.UndefinedKeyword;break;case "unknown":t=y__default.default.SyntaxKind.UnknownKeyword;break;case "void":t=y__default.default.SyntaxKind.VoidKeyword;break}return y__default.default.factory.createKeywordTypeNode(t)},Dt=e=>e.map(t=>y__default.default.isTypeParameterDeclaration(t)?t:Ur({constraint:t.extends?typeof t.extends=="string"?Ot({keyword:"boolean"}):t.extends:void 0,defaultType:t.default!==void 0?rt(t.default)?t.default:y__default.default.factory.createLiteralTypeNode(t.default?y__default.default.factory.createTrue():y__default.default.factory.createFalse()):void 0,name:t.name})),os=({operator:e,type:t})=>{let r=e==="keyof"?y__default.default.SyntaxKind.KeyOfKeyword:e==="readonly"?y__default.default.SyntaxKind.ReadonlyKeyword:y__default.default.SyntaxKind.UniqueKeyword;return y__default.default.factory.createTypeOperatorNode(r,t)},Ur=({constraint:e,defaultType:t,modifiers:r,name:n})=>y__default.default.factory.createTypeParameterDeclaration(r,n,e,t),is=({members:e,nameType:t,questionToken:r,readonlyToken:n,type:s,typeParameter:i})=>y__default.default.factory.createMappedTypeNode(n,i,t,r,s,e),as=({literal:e})=>y__default.default.factory.createLiteralTypeNode(e),ar=({async:e,comment:t,multiLine:r,parameters:n=[],returnType:s,statements:i=[],types:c=[]})=>{let a=y__default.default.factory.createArrowFunction(e?[y__default.default.factory.createModifier(y__default.default.SyntaxKind.AsyncKeyword)]:void 0,c?Dt(c):void 0,Ft(n),s?V(s):void 0,void 0,Array.isArray(i)?G({multiLine:r,statements:i}):i);return L({comments:t,node:a}),a},ps=({async:e,comment:t,multiLine:r,parameters:n=[],returnType:s,statements:i=[],types:c=[]})=>{let a=y__default.default.factory.createFunctionExpression(e?[y__default.default.factory.createModifier(y__default.default.SyntaxKind.AsyncKeyword)]:void 0,void 0,void 0,c?Dt(c):void 0,Ft(n),s?V(s):void 0,G({multiLine:r,statements:i}));return L({comments:t,node:a}),a},Wr=({elements:e,multiLine:t=false})=>y__default.default.factory.createArrayLiteralExpression(e.map(n=>rt(n)?n:pe({value:n})).filter(Be),t||!Array.isArray(e[0])&&typeof e[0]=="object"),cs=({expression:e})=>y__default.default.factory.createAwaitExpression(e),ms=({parameters:e=[],returnType:t,typeParameters:r})=>y__default.default.factory.createFunctionTypeNode(r,e,t),pr=({comments:e,identifiers:t=[],multiLine:r=true,obj:n,shorthand:s,unescape:i=false})=>{let c=Array.isArray(n)?n.map(p=>{let m=false;if("key"in p){let{key:l}=p;m=l===p.value,(l.match(/^[0-9]/)&&l.match(/\D+/g)||l.match(/\W/g)||l==="")&&!l.startsWith("'")&&!l.endsWith("'")&&(p.key=`'${l}'`);}let f;if("spread"in p){let l=rt(p.spread)?p.spread:R({text:p.spread});f=y__default.default.factory.createSpreadAssignment(p.assertion?_t({expression:l,type:typeof p.assertion=="string"?Ot({keyword:p.assertion}):p.assertion}):l);}else if(p.shorthand||s&&m)f=y__default.default.factory.createShorthandPropertyAssignment(p.value);else {let l=rt(p.value)?p.value:Array.isArray(p.value)?pr({multiLine:r,obj:p.value,shorthand:s,unescape:i}):pe({identifiers:t.includes(p.key)?Object.keys(p.value):[],isValueAccess:p.isValueAccess,shorthand:s,unescape:i,value:p.value});if(!l)return;t.includes(p.key)&&!y__default.default.isObjectLiteralExpression(l)&&(l=R({text:p.value})),f=or({initializer:l,name:p.key});}return L({comments:p.comments,node:f}),f}).filter(Be):Object.entries(n).map(([p,m])=>{let f=pe({identifiers:t.includes(p)?Object.keys(m):[],shorthand:s,unescape:i,value:m});if(!f)return;t.includes(p)&&!y__default.default.isObjectLiteralExpression(f)&&(f=R({text:m}));let l=p===m;return p.match(/^[0-9]/)&&p.match(/\D+/g)&&!p.startsWith("'")&&!p.endsWith("'")&&(p=`'${p}'`),p.match(/\W/g)&&!p.startsWith("'")&&!p.endsWith("'")&&(p=`'${p}'`),s&&l?y__default.default.factory.createShorthandPropertyAssignment(m):or({initializer:f,name:p})}).filter(Be),a=y__default.default.factory.createObjectLiteralExpression(c,r);return L({comments:e,node:a}),a},fs=({comments:e={},leadingComment:t,name:r,obj:n})=>{let s=Array.isArray(n)?n.map(c=>{let a=ta({initializer:pe({value:c.value}),name:c.key});return L({comments:c.comments,node:a}),a}):Object.entries(n).map(([c,a])=>{let p=y__default.default.factory.createEnumMember(c,pe({unescape:true,value:a}));return L({comments:e[c],node:p}),p}),i=y__default.default.factory.createEnumDeclaration([y__default.default.factory.createModifier(y__default.default.SyntaxKind.ExportKeyword)],R({text:r}),s);return L({comments:t,node:i}),i},ta=({initializer:e,name:t})=>{let r=t;return typeof r=="string"&&(r.startsWith("'")&&r.endsWith("'")?r=nt({isSingleQuote:false,text:r}):r=Ce(r)),y__default.default.factory.createEnumMember(r,e)},ls=({name:e,statements:t})=>y__default.default.factory.createModuleDeclaration([y__default.default.factory.createModifier(y__default.default.SyntaxKind.ExportKeyword)],R({text:e}),y__default.default.factory.createModuleBlock(t),y__default.default.NodeFlags.Namespace),us=({indexType:e,objectType:t})=>y__default.default.factory.createIndexedAccessTypeNode(t,e),nt=({isSingleQuote:e,text:t})=>(e===void 0&&(e=!t.includes("'")),y__default.default.factory.createStringLiteral(t,e)),ds=({condition:e,whenFalse:t,whenTrue:r})=>y__default.default.factory.createConditionalExpression(e,y__default.default.factory.createToken(y__default.default.SyntaxKind.QuestionToken),r,y__default.default.factory.createToken(y__default.default.SyntaxKind.ColonToken),t),ys=({text:e})=>y__default.default.factory.createTypeOfExpression(R({text:e})),gs=({comment:e,exportType:t,name:r,type:n,typeParameters:s=[]})=>{let i=y__default.default.factory.createTypeAliasDeclaration(t?[y__default.default.factory.createModifier(y__default.default.SyntaxKind.ExportKeyword)]:void 0,R({text:r}),Dt(s),V(n));return L({comments:e,node:i}),i},ne=({typeArguments:e,typeName:t})=>y__default.default.factory.createTypeReferenceNode(t,e),hs=({type:e})=>y__default.default.factory.createParenthesizedType(e),bt=({initializer:e,modifiers:t,name:r,required:n=true,type:s})=>y__default.default.factory.createParameterDeclaration(t,void 0,r,n?void 0:y__default.default.factory.createToken(y__default.default.SyntaxKind.QuestionToken),s,e),Lt=({argumentsArray:e,expression:t,typeArguments:r})=>y__default.default.factory.createNewExpression(t,r,e),xs=({awaitModifier:e,expression:t,initializer:r,statement:n})=>y__default.default.factory.createForOfStatement(e,r,t,n),bs=({left:e,right:t})=>y__default.default.factory.createAssignment(e,t),G=({multiLine:e=true,statements:t})=>y__default.default.factory.createBlock(t,e),or=({initializer:e,name:t})=>y__default.default.factory.createPropertyAssignment(t,e),Os=({flags:e=[],text:t})=>y__default.default.factory.createRegularExpressionLiteral(`/${t}/${e.join("")}`),_t=({expression:e,type:t})=>y__default.default.factory.createAsExpression(e,t),Ss=({value:e})=>{let t=[],r="";for(let s of e.slice(0).reverse())if(typeof s=="string")r=`${s}${r}`;else {let i=t.length?y__default.default.factory.createTemplateMiddle(r):y__default.default.factory.createTemplateTail(r),c=y__default.default.factory.createTemplateLiteralTypeSpan(s,i);t.push(c),r="";}return y__default.default.factory.createTemplateLiteralType(y__default.default.factory.createTemplateHead(r),t.reverse())};var Rs=({module:e})=>y__default.default.factory.createExportDeclaration(void 0,false,void 0,H.string(e)),me=({functionName:e,parameters:t=[],types:r})=>{let n=typeof e=="string"?R({text:e}):e,s=t.filter(c=>c!==void 0).map(c=>typeof c=="string"?R({text:c}):c);return y__default.default.factory.createCallExpression(n,r,s)},Is=({exports:e,module:t})=>{let r=Array.isArray(e)?e:[e],n=r.some(p=>typeof p!="object"||!p.asType),s=r.map(p=>{let m=typeof p=="string"?{name:p}:p;return H.export({alias:m.alias,asType:n&&m.asType,name:m.name})}),i=y__default.default.factory.createNamedExports(s),c=H.string(t);return y__default.default.factory.createExportDeclaration(void 0,!n,i,c)},Ts=({assertion:e,comment:t,destructure:r,exportConst:n,expression:s,name:i,typeName:c})=>{let a=e?_t({expression:s,type:typeof e=="string"?ne({typeName:e}):e}):s,p=R({text:i}),m=y__default.default.factory.createVariableDeclaration(r?y__default.default.factory.createObjectBindingPattern([y__default.default.factory.createBindingElement(void 0,void 0,p,void 0)]):p,void 0,c?typeof c=="string"?ne({typeName:c}):c:void 0,a),f=y__default.default.factory.createVariableStatement(n?[y__default.default.factory.createModifier(y__default.default.SyntaxKind.ExportKeyword)]:void 0,y__default.default.factory.createVariableDeclarationList([m],y__default.default.NodeFlags.Const));return L({comments:t,node:f}),f},Cs=({imports:e,module:t})=>{let r=Array.isArray(e)?e:[e],n=r.some(m=>typeof m!="object"||!m.asType),s=r.map(m=>{let f=typeof m=="string"?{name:m}:m;return H.import({alias:f.alias,asType:n&&f.asType,name:f.name})}),i=y__default.default.factory.createNamedImports(s),c=y__default.default.factory.createImportClause(!n,void 0,i),a=H.string(t);return y__default.default.factory.createImportDeclaration(void 0,c,a)};var Ps=({accessLevel:e,comment:t,multiLine:r=true,parameters:n=[],statements:s=[]})=>{let i=y__default.default.factory.createConstructorDeclaration(ir(e),Ft(n),G({multiLine:r,statements:s}));return L({comments:t,node:i}),i},js=({accessLevel:e,comment:t,isStatic:r=false,multiLine:n=true,name:s,parameters:i=[],returnType:c,statements:a=[],types:p=[]})=>{let m=ir(e);r&&(m=[...m,y__default.default.factory.createModifier(y__default.default.SyntaxKind.StaticKeyword)]);let f=y__default.default.factory.createMethodDeclaration(m,void 0,R({text:s}),void 0,p?Dt(p):void 0,Ft(i),c?V(c):void 0,G({multiLine:n,statements:a}));return L({comments:t,node:f}),f},As=({decorator:e,members:t=[],name:r})=>{let n=[y__default.default.factory.createModifier(y__default.default.SyntaxKind.ExportKeyword)];e&&(n=[y__default.default.factory.createDecorator(me({functionName:e.name,parameters:e.args.map(i=>pe({value:i})).filter(Be)})),...n]);let s=[];return t.forEach(i=>{s=[...s,i,R({text:`
4
4
  `})];}),y__default.default.factory.createClassDeclaration(n,R({text:r}),[],[],s)};var st=({expression:e})=>y__default.default.factory.createExpressionStatement(e);var cr=({expression:e})=>y__default.default.factory.createReturnStatement(e),Es=({args:e=[],name:t,types:r=[]})=>{let n=r.map(a=>ne({typeName:a})),s=e.map(a=>y__default.default.isExpression(a)?a:R({text:a})).filter(Be),i=me({functionName:t,parameters:s,types:n});return cr({expression:i})},$s=({expression:e})=>cr({expression:typeof e=="string"?R({text:e}):e});var St=e=>e.slice(1).reduce((t,r)=>(re.lastIndex=0,re.test(r)?Br({expression:t,name:r}):y__default.default.factory.createElementAccessChain(t,y__default.default.factory.createToken(y__default.default.SyntaxKind.QuestionDotToken),R({text:r}))),R({text:e[0]})),mr=e=>e.slice(1).reduce((t,r)=>ce({expression:t,name:r}),R({text:e[0]})),ks=({expressions:e})=>e.reduce((r,n)=>ce({expression:r,name:n})),fr=({left:e,operator:t="=",right:r})=>y__default.default.factory.createBinaryExpression(e,t==="="?y__default.default.SyntaxKind.EqualsToken:t==="==="?y__default.default.SyntaxKind.EqualsEqualsEqualsToken:t==="??"?y__default.default.SyntaxKind.QuestionQuestionToken:y__default.default.SyntaxKind.InKeyword,typeof r=="string"?R({text:r}):r),Rt=({elseStatement:e,expression:t,thenStatement:r})=>y__default.default.factory.createIfStatement(t,r,e),qs=({path:e})=>{let t=St(e),r=mr(e),n=G({statements:[st({expression:fr({left:r,right:Lt({argumentsArray:[r],expression:R({text:"Date"})})})})]});return Rt({expression:t,thenStatement:n})},vs=({path:e,transformerName:t})=>{let r=St(e),n=mr(e),s=G({statements:[st({expression:me({functionName:t,parameters:[n]})})]});return [Rt({expression:r,thenStatement:s})]},ws=({path:e,transformerName:t})=>{let r=St(e),n=mr(e);return Rt({expression:me({functionName:ce({expression:"Array",name:"isArray"}),parameters:[r]}),thenStatement:G({statements:[st({expression:y__default.default.factory.createCallChain(ce({expression:n,name:"forEach"}),void 0,void 0,[R({text:t})])})]})})},Ms=({parameterName:e})=>{let t=R({text:"Date"});return Lt({argumentsArray:[R({text:e})],expression:t})},Fs=({path:e,transformExpression:t})=>{let r=St(e),n=mr(e);return Rt({expression:me({functionName:ce({expression:"Array",name:"isArray"}),parameters:[r]}),thenStatement:G({statements:[st({expression:fr({left:n,right:y__default.default.factory.createCallChain(ce({expression:n,name:"map"}),void 0,void 0,[ar({parameters:[{name:"item"}],statements:t})])})})]})})};var ca=ne({typeName:"null"}),It=({isNullable:e,node:t})=>e?y__default.default.factory.createUnionTypeNode([t,ca]):t,Qr=({indexProperty:e,isNullable:t,properties:r,useLegacyResolution:n})=>{let i=r.map(a=>{let p=a.isReadOnly?[y__default.default.factory.createModifier(y__default.default.SyntaxKind.ReadonlyKeyword)]:void 0,m=a.isRequired!==false?void 0:y__default.default.factory.createToken(y__default.default.SyntaxKind.QuestionToken),f=V(a.type);let l=y__default.default.factory.createPropertySignature(p,n||typeof a.name=="string"&&a.name.match(re)||typeof a.name!="string"&&y__default.default.isPropertyName(a.name)?a.name:nt({text:a.name}),m,f);return L({comments:a.comment,node:l}),l});if(e){let a=e.isReadOnly?[y__default.default.factory.createModifier(y__default.default.SyntaxKind.ReadonlyKeyword)]:void 0,p=y__default.default.factory.createIndexSignature(a,[bt({name:R({text:String(e.name)}),type:Ot({keyword:"string"})})],V(e.type));i.push(p);}let c=y__default.default.factory.createTypeLiteralNode(i);return It({isNullable:t,node:c})},Kt=({isNullable:e,types:t})=>{let r=t.map(s=>V(s)),n=y__default.default.factory.createUnionTypeNode(r);return It({isNullable:e,node:n})},Ds=({isNullable:e,types:t})=>{let r=t.map(s=>V(s)),n=y__default.default.factory.createIntersectionTypeNode(r);return It({isNullable:e,node:n})},Ls=({isNullable:e=false,types:t})=>{let r=t.map(s=>V(s)),n=y__default.default.factory.createTupleTypeNode(r);return It({isNullable:e,node:n})},_s=(e,t,r=false,n=true)=>{let s=Kt({types:e}),i=Kt({types:t}),c=Qr({properties:[{name:`[key: ${ae({node:s,unescape:true})}]`,type:i}],useLegacyResolution:n});return It({isNullable:r,node:c})},Ks=(e,t=false)=>{let r=ne({typeArguments:[Array.isArray(e)?Kt({types:e}):e],typeName:"Array"});return It({isNullable:t,node:r})};var o={anonymousFunction:ps,arrayLiteralExpression:Wr,arrowFunction:ar,asExpression:_t,assignment:bs,awaitExpression:cs,binaryExpression:fr,block:G,callExpression:me,classDeclaration:As,conditionalExpression:ds,constVariable:Ts,constructorDeclaration:Ps,enumDeclaration:fs,exportAllDeclaration:Rs,exportNamedDeclaration:Is,expressionToStatement:st,forOfStatement:xs,functionTypeNode:ms,identifier:R,ifStatement:Rt,indexedAccessTypeNode:us,isTsNode:rt,keywordTypeNode:Ot,literalTypeNode:as,mappedTypeNode:is,methodDeclaration:js,namedImportDeclarations:Cs,namespaceDeclaration:ls,newExpression:Lt,nodeToString:ae,null:Vr,objectExpression:pr,ots:H,parameterDeclaration:bt,propertyAccessExpression:ce,propertyAccessExpressions:ks,propertyAssignment:or,regularExpressionLiteral:Os,returnFunctionCall:Es,returnStatement:cr,returnVariable:$s,safeAccessExpression:St,stringLiteral:nt,stringToTsNodes:ss,templateLiteralType:Ss,transformArrayMap:Fs,transformArrayMutation:ws,transformDateMutation:qs,transformFunctionMutation:vs,transformNewDate:Ms,typeAliasDeclaration:gs,typeArrayNode:Ks,typeInterfaceNode:Qr,typeIntersectionNode:Ds,typeNode:V,typeOfExpression:ys,typeOperatorNode:os,typeParameterDeclaration:Ur,typeParenthesizedNode:hs,typeRecordNode:_s,typeReferenceNode:ne,typeTupleNode:Ls,typeUnionNode:Kt,valueToExpression:pe};var Xr=e=>{Bs__default.default.existsSync(e)||Bs__default.default.mkdirSync(e,{recursive:true});};var Tt=({moduleOutput:e,sourceOutput:t})=>{let r=t.split("/");return `${Array.from({length:r.length}).fill("").join("../")||"./"}${e}`};var fa=e=>{let t=e.split(At__default.default.sep);return t.slice(0,t.length-1).join(At__default.default.sep)},F=({config:e,sourceOutput:t})=>{let r=T(e);if("bundle"in r&&r.bundle)return Tt({moduleOutput:"client",sourceOutput:t});if(At__default.default.isAbsolute(r.name)){let n=fa(r.name),s=At__default.default.resolve(e.output.path);return At__default.default.relative(s,n).replace(/\\/g,"/")}return r.name},q={Options:{asType:true,name:"Options"},OptionsLegacyParser:{asType:true,name:"OptionsLegacyParser"}};var Vs=/^(([^:/?#]+):)?((\/\/)?([^:/?#]*)(:?([^/?#]*)))?([^?#]*)(\?([^#]*))?(#(.*))?/,fe=e=>{let t={host:"",path:"",port:"",protocol:""};Vs.lastIndex=0;let r=e.match(Vs);if(!r)return t;let n=r[5]||"";if(n==="."||n==="..")return t;let s=r[8]||"",i=r[2]||"";return i.length===1?t:{host:n,path:s==="/"?"":s,port:r[7]||"",protocol:i}};var Ct="#/ir/",lr=e=>{let t=Hr(e);return t.length===3&&t[0]==="components"},_=e=>{let t=Hr(e),r=t[t.length-1];return decodeURI(r)},Hr=e=>e.replace(/^#\//,"").split("/"),zr=({$ref:e,spec:t})=>{let r=Hr(decodeURI(e)),n=t;for(let s of r){let i=s;if(n[i]===void 0)throw new Error(`Reference not found: ${e}`);n=n[i];}return n};var Us=/[\p{Lu}]/u,Jr=/[\p{Ll}]/u,Qs=/([\p{Alpha}\p{N}_]|$)/u,Pt=/[_.\- `\\[\]{}\\/]+/,la=new RegExp(`^${Pt.source}`),Gr=new RegExp(`${Pt.source}${Qs.source}`,"gu"),Ws=new RegExp(`\\d+${Qs.source}`,"gu"),ua=({case:e,string:t})=>{let r=false,n=false,s=false,i=false,c=e==="snake_case"||e==="SCREAMING_SNAKE_CASE"?"_":"-";for(let a=0;a<t.length;a++){let p=t[a];i=a>2?t[a-3]===c:true;let m=a+1,f=t[m];for(Pt.lastIndex=0;f&&Pt.test(f);)m+=1,f=t[m];let l=m!==a+1;if(Jr.lastIndex=0,Us.lastIndex=0,Us.test(p)&&(r||f&&!l&&f!=="s"&&Jr.test(f)))t=`${t.slice(0,a)}${c}${t.slice(a)}`,a++,s=n,r=false,n=true;else if(n&&s&&Jr.test(p)&&!i&&!(p==="s"&&(!f||f.toLocaleLowerCase()!==f)))t=`${t.slice(0,a-1)}${c}${t.slice(a-1)}`,s=n,r=true,n=false;else {let u=p.toLocaleLowerCase(),d=p.toLocaleUpperCase();s=n,r=u===p&&d!==p,n=d===p&&u!==p;}}return t},j=({case:e,stripLeadingSeparators:t=true,value:r})=>{let n=r.trim();return n.length?!e||e==="preserve"?n:n.length===1?(Pt.lastIndex=0,Pt.test(n)?"":e==="PascalCase"||e==="SCREAMING_SNAKE_CASE"?n.toLocaleUpperCase():n.toLocaleLowerCase()):(n!==n.toLocaleLowerCase()&&(n=ua({case:e,string:n})),(t||n[0]!==r[0])&&(n=n.replace(la,"")),n=e==="SCREAMING_SNAKE_CASE"?n.toLocaleUpperCase():n.toLocaleLowerCase(),e==="PascalCase"&&(n=`${n.charAt(0).toLocaleUpperCase()}${n.slice(1)}`),e==="snake_case"||e==="SCREAMING_SNAKE_CASE"?(n=n.replaceAll(Gr,(i,c,a)=>a===0&&!t?i:`_${c}`),n[n.length-1]==="_"&&(n=n.slice(0,n.length-1))):(Gr.lastIndex=0,Ws.lastIndex=0,n=n.replaceAll(Ws,(i,c,a)=>["_","-","."].includes(n.charAt(a+i.length))?i:i.toLocaleUpperCase()),n=n.replaceAll(Gr,(i,c,a)=>a===0&&!t&&i[0]&&r.startsWith(i[0])?i:c.toLocaleUpperCase())),n):""};var v=({case:e="PascalCase",config:t,id:r,type:n})=>{let s="";switch(n){case "data":case "error":case "errors":case "response":case "responses":s=`${(n[0]??"").toLocaleUpperCase()}${n.slice(1)}`;break}let i=true;return t.plugins["@hey-api/typescript"]?.identifierCase==="preserve"&&(i=false),`${Ct}${j({case:e,value:r})}${i?"-":""}${s}`};var I="types";function Zr(e,t){return {...e,get name(){return t?.(e),e.name}}}var Xs=({context:e,file:t,operation:r})=>{let n=e.file({id:I}).identifier({$ref:v({config:e.config,id:r.id,type:"data"}),namespace:"type"});return Zr(n,s=>{s.name&&t.import({asType:true,module:t.relativePathToFile({context:e,id:I}),name:s.name});})},ur=({context:e,file:t,operation:r})=>{let n=e.file({id:I}).identifier({$ref:v({config:e.config,id:r.id,type:"error"}),namespace:"type"});return Zr(n,s=>{s.name&&t.import({asType:true,module:t.relativePathToFile({context:e,id:I}),name:s.name});})},ot=({context:e,file:t,operation:r})=>{let n=e.file({id:I}).identifier({$ref:v({config:e.config,id:r.id,type:"response"}),namespace:"type"});return Zr(n,s=>{s.name&&t.import({asType:true,module:t.relativePathToFile({context:e,id:I}),name:s.name});})};var da=({context:e,plugin:t})=>{let{baseUrl:r}=t;if(r===false)return;if(typeof r=="string")return r;let{servers:n}=e.ir;if(n)return n[typeof r=="number"?r:0]?.url},Hs=({context:e,plugin:t})=>{let r=e.file({id:oe}),n=F({config:e.config,sourceOutput:r.nameWithoutExtension()}),s=r.import({module:n,name:"createClient"}),i=r.import({module:n,name:"createConfig"}),c=r.import({asType:true,module:r.relativePathToFile({context:e,id:I}),name:"ClientOptions"}),a=t.runtimeConfigPath?r.import({module:r.relativePathToFile({context:e,id:t.runtimeConfigPath}),name:"createClientConfig"}):void 0,p=[],m=da({context:e,plugin:t});if(m){let u=fe(m);u.protocol&&u.host&&!m.includes("{")&&p.push({key:J(e.config),value:m});}"throwOnError"in t&&t.throwOnError&&p.push({key:"throwOnError",value:true});let f=[o.callExpression({functionName:i.name,parameters:p.length?[o.objectExpression({obj:p})]:void 0,types:[o.typeReferenceNode({typeName:c.name})]})],l=o.constVariable({exportConst:true,expression:o.callExpression({functionName:s.name,parameters:a?[o.callExpression({functionName:a.name,parameters:f})]:f}),name:"client"});r.add(l);};var zs=({context:e})=>{let t=e.file({id:oe}),r=F({config:e.config,sourceOutput:t.nameWithoutExtension()}),n=t.import({asType:true,module:t.relativePathToFile({context:e,id:I}),name:"ClientOptions"}),s=t.import({asType:true,module:r,name:"Config"}),i=t.import({alias:"DefaultClientOptions",asType:true,module:r,name:"ClientOptions"}),c=o.typeReferenceNode({typeName:i.name}),a=o.typeReferenceNode({typeName:"T"}),p=o.typeAliasDeclaration({comment:["The `createClientConfig()` function will be called on client initialization","and the returned object will become the client's initial configuration.","","You may want to initialize your client this way instead of calling","`setConfig()`. This is useful for example if you're using Next.js","to ensure your client always has the correct values."],exportType:true,name:"CreateClientConfig",type:o.functionTypeNode({parameters:[o.parameterDeclaration({name:"override",required:false,type:o.typeReferenceNode({typeArguments:[o.typeIntersectionNode({types:[c,a]})],typeName:s.name})})],returnType:o.typeReferenceNode({typeArguments:[o.typeIntersectionNode({types:[o.typeReferenceNode({typeArguments:[c],typeName:"Required"}),a]})],typeName:s.name})}),typeParameters:[{default:o.typeReferenceNode({typeName:n.name}),extends:c,name:"T"}]});t.add(p);};var Ue=({context:e,plugin:t})=>{e.createFile({exportFromIndex:t.exportFromIndex,id:oe,path:t.output}),zs({context:e}),Hs({context:e,plugin:t});};var Yr={..._e,_handler:Ue,_handlerLegacy:()=>{},name:"@hey-api/client-axios",throwOnError:false};var en={..._e,_handler:Ue,_handlerLegacy:()=>{},name:"@hey-api/client-fetch",throwOnError:false};var tn={..._e,_handler:Ue,_handlerLegacy:()=>{},name:"@hey-api/client-next",throwOnError:false};var rn={..._e,_handler:Ue,_handlerLegacy:()=>{},name:"@hey-api/client-nuxt"};var nn={_handler:()=>{},_handlerLegacy:()=>{},_tags:["client"],name:"legacy/angular",output:"client"};var sn={_handler:()=>{},_handlerLegacy:()=>{},_tags:["client"],name:"legacy/axios",output:"client"};var on={_handler:()=>{},_handlerLegacy:()=>{},_tags:["client"],name:"legacy/fetch",output:"client"};var an={_handler:()=>{},_handlerLegacy:()=>{},_tags:["client"],name:"legacy/node",output:"client"};var pn={_handler:()=>{},_handlerLegacy:()=>{},_tags:["client"],name:"legacy/xhr",output:"client"};var ya=[ie,es,Zn,Yn,Gn],dr=e=>{let t=e.replace(/[^$\u200c\u200d\p{ID_Continue}]/gu,"_");if(xt.lastIndex=0,xt.test(t))return `_${t}`;for(let r of ya){if(t.startsWith("_"))return t;t=t.replace(r,"_$1");}return t};var yr="schemas",cn=({plugin:e,schema:t})=>{e.type==="form"&&(t.description&&delete t.description,t["x-enum-descriptions"]&&delete t["x-enum-descriptions"],t["x-enum-varnames"]&&delete t["x-enum-varnames"],t["x-enumNames"]&&delete t["x-enumNames"],t.title&&delete t.title);},jt=({context:e,plugin:t,schema:r})=>{if(Array.isArray(r))return r.map(s=>jt({context:e,plugin:t,schema:s}));let n=structuredClone(r);if(n.$ref)return n.$ref=decodeURI(n.$ref),n;if(cn({plugin:t,schema:n}),n.additionalProperties&&typeof n.additionalProperties!="boolean"&&(n.additionalProperties=jt({context:e,plugin:t,schema:n.additionalProperties})),n.allOf&&(n.allOf=n.allOf.map(s=>jt({context:e,plugin:t,schema:s}))),n.items&&(n.items=jt({context:e,plugin:t,schema:n.items})),n.properties)for(let s in n.properties){let i=n.properties[s];typeof i!="boolean"&&(n.properties[s]=jt({context:e,plugin:t,schema:i}));}return n},We=({context:e,plugin:t,schema:r})=>{if(Array.isArray(r))return r.map(s=>We({context:e,plugin:t,schema:s}));let n=structuredClone(r);if("$ref"in n)return n.$ref=decodeURI(n.$ref),n;if(cn({plugin:t,schema:n}),n.additionalProperties&&typeof n.additionalProperties!="boolean"&&(n.additionalProperties=We({context:e,plugin:t,schema:n.additionalProperties})),n.allOf&&(n.allOf=n.allOf.map(s=>We({context:e,plugin:t,schema:s}))),n.anyOf&&(n.anyOf=n.anyOf.map(s=>We({context:e,plugin:t,schema:s}))),n.items&&(n.items=We({context:e,plugin:t,schema:n.items})),n.oneOf&&(n.oneOf=n.oneOf.map(s=>We({context:e,plugin:t,schema:s}))),n.properties)for(let s in n.properties){let i=n.properties[s];typeof i!="boolean"&&(n.properties[s]=We({context:e,plugin:t,schema:i}));}return n},Pe=({context:e,plugin:t,schema:r})=>{if(Array.isArray(r))return r.map(s=>Pe({context:e,plugin:t,schema:s}));let n=structuredClone(r);if(cn({plugin:t,schema:n}),n.$ref&&(n.$ref=decodeURI(n.$ref)),n.additionalProperties&&typeof n.additionalProperties!="boolean"&&(n.additionalProperties=Pe({context:e,plugin:t,schema:n.additionalProperties})),n.allOf&&(n.allOf=n.allOf.map(s=>Pe({context:e,plugin:t,schema:s}))),n.anyOf&&(n.anyOf=n.anyOf.map(s=>Pe({context:e,plugin:t,schema:s}))),n.items&&(n.items=Pe({context:e,plugin:t,schema:n.items})),n.oneOf&&(n.oneOf=n.oneOf.map(s=>Pe({context:e,plugin:t,schema:s}))),n.prefixItems&&(n.prefixItems=n.prefixItems.map(s=>Pe({context:e,plugin:t,schema:s}))),n.properties)for(let s in n.properties){let i=n.properties[s];typeof i!="boolean"&&(n.properties[s]=Pe({context:e,plugin:t,schema:i}));}return n},mn=({name:e,plugin:t,schema:r})=>{let n=t.nameBuilder?.(e,r)??`${e}Schema`;return dr(n)},ga=({context:e,plugin:t})=>{if(e.spec.definitions)for(let r in e.spec.definitions){let n=e.spec.definitions[r],s=jt({context:e,plugin:t,schema:n}),i=o.constVariable({assertion:"const",exportConst:true,expression:o.objectExpression({obj:s}),name:mn({name:r,plugin:t,schema:n})});e.file({id:yr}).add(i);}},ha=({context:e,plugin:t})=>{if(e.spec.components)for(let r in e.spec.components.schemas){let n=e.spec.components.schemas[r],s=We({context:e,plugin:t,schema:n}),i=o.constVariable({assertion:"const",exportConst:true,expression:o.objectExpression({obj:s}),name:mn({name:r,plugin:t,schema:n})});e.file({id:yr}).add(i);}},xa=({context:e,plugin:t})=>{if(e.spec.components)for(let r in e.spec.components.schemas){let n=e.spec.components.schemas[r],s=Pe({context:e,plugin:t,schema:n}),i=o.constVariable({assertion:"const",exportConst:true,expression:o.objectExpression({obj:s}),name:mn({name:r,plugin:t,schema:n})});e.file({id:yr}).add(i);}},Js=({context:e,plugin:t})=>{if(e.createFile({exportFromIndex:t.exportFromIndex,id:yr,path:t.output}),"swagger"in e.spec){ga({context:e,plugin:t});return}switch(e.spec.openapi){case "3.0.0":case "3.0.1":case "3.0.2":case "3.0.3":case "3.0.4":ha({context:e,plugin:t});break;case "3.1.0":case "3.1.1":xa({context:e,plugin:t});break;}};var le=class{_exportFromIndex;_headers=[];_id;_identifierCase;_imports=new Map;_items=[];_name;_path;namespaces={type:{},value:{}};constructor({dir:t,exportFromIndex:r=false,header:n=true,id:s,identifierCase:i,name:c}){this._exportFromIndex=r,this._id=s,this._identifierCase=i,this._name=this._setName(c),this._path=At__default.default.resolve(t,this._name),n&&this._headers.push("// This file is auto-generated by @hey-api/openapi-ts");}add(...t){this._items=this._items.concat(t);}blockIdentifier({$ref:t,namespace:r}){let n=this.namespaces[r][t];if(!n)throw new Error(`Identifier for $ref ${t} in namespace ${r} not found`);return n.name=false,{created:false,name:n.name}}get exportFromIndex(){return this._exportFromIndex}get id(){return this._id}identifier({namespace:t,...r}){return Zs({case:this._identifierCase,namespace:this.namespaces[t],...r})}import({module:t,...r}){let n=this._imports.get(t);n||(n=new Map,this._imports.set(t,n));let s=n.get(r.name);return s?{...s,name:s.alias||s.name}:(n.set(r.name,r),{...r,name:r.alias||r.name})}isEmpty(){return !this._items.length}nameWithoutExtension(){let{name:t}=fn(this._name);return t}relativePathToFile({context:t,id:r}){let n="";if(r.startsWith(".")){let m=[];if(t.config.configFile){let f=t.config.configFile.split("/");m=f.slice(0,f.length-1);}n=At__default.default.resolve(process.cwd(),...m,r);}else {let m=t.file({id:r});if(!m)throw new Error(`File with id ${r} does not exist`);n=m._path;}let s=this._path.split(At__default.default.sep),i=n.split(At__default.default.sep),c=-1,a="";for(let m of s)if(c+=1,i[c]!==m){let f=Array.from({length:s.length-c}).fill(""),l=i.slice(c),u=l.slice(0,l.length-1);u.length&&u.push(""),a=(f.join("../")||"./")+u.join("/");break}let p=i[i.length-1];return `${a}${fn(p).name}`}remove(t){Bs__default.default.rmSync(this._path,t);}removeNode(){this._items=this._items.slice(0,this._items.length-1);}_setName(t){if(t.includes("index"))return t;let{extension:r,name:n}=fn(t);return [n,"gen",r].filter(Boolean).join(".")}_toString(t,r){let n=[];this._headers.length&&n.push(this._headers.join(`
5
- `));let s=r?.options.moduleResolution===y.ModuleResolutionKind.NodeNext,i=[];for(let[c,a]of this._imports.entries()){let p=Array.from(a.values()),m=c;s&&(m.startsWith("./")||m.startsWith("../"))&&(m=`${m}.js`);let f=o.namedImportDeclarations({imports:p,module:m});i.push(ae({node:f}));}return i.length&&n.push(i.join(`
5
+ `));let s=r?.options.moduleResolution===y__default.default.ModuleResolutionKind.NodeNext,i=[];for(let[c,a]of this._imports.entries()){let p=Array.from(a.values()),m=c;s&&(m.startsWith("./")||m.startsWith("../"))&&(m=`${m}.js`);let f=o.namedImportDeclarations({imports:p,module:m});i.push(ae({node:f}));}return i.length&&n.push(i.join(`
6
6
  `)),n=n.concat(this._items.map(c=>typeof c=="string"?c:ae({node:c,unescape:true}))),n.join(t)}write(t=`
7
7
  `,r=null){if(this.isEmpty()){this.remove({force:true});return}let n=this._path;if(typeof this._path=="string"){let s=this._path.split(At__default.default.sep);n=s.slice(0,s.length-1).join(At__default.default.sep);}Xr(n),Bs__default.default.writeFileSync(this._path,this._toString(t,r));}},Zs=({$ref:e,case:t,count:r=1,create:n=false,nameTransformer:s,namespace:i})=>{let c=e.split("/"),a=c[c.length-1]||"";if(!a)return {created:false,name:""};let p=i[e];if(p)return {created:false,name:p.name};let m=s?.(a)??a,f=j({case:t,value:m});r>1&&(f=`${f}${r}`);let l=i[f];return l?l.$ref===e?{created:false,name:l.name}:Zs({$ref:e,case:t,count:r+1,create:n,nameTransformer:s,namespace:i}):n?(l={$ref:e,name:dr(f)},i[f]=l,i[l.$ref]=l,{created:true,name:l.name}):{created:false,name:""}},fn=e=>{let t=e.match(/\.[0-9a-z]+$/i),r=t?t[0].slice(1):"",n=e.slice(0,e.length-(r?r.length+1:0));return {extension:r,name:n}};var gr=class{config;files;ir;spec;listeners;constructor({config:t,spec:r}){this.config=t,this.files={},this.ir={},this.listeners={},this.spec=r;}async broadcast(t,...r){this.listeners[t]&&await Promise.all(this.listeners[t].map((n,s)=>{try{let i=n(...r);return Promise.resolve(i)}catch(i){throw console.error(`\u{1F525} Event broadcast: "${t}"
8
8
  index: ${s}