@redocly/cli 2.51.1 → 2.51.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/THIRD_PARTY_NOTICES +1 -1
  2. package/lib/chunks/{LE7OKNLO.js → 2QB2GQK4.js} +1 -1
  3. package/lib/chunks/57HELKSP.js +11 -0
  4. package/lib/chunks/5FCIOXHF.js +7 -0
  5. package/lib/chunks/75JBXLYL.js +7 -0
  6. package/lib/chunks/{CXRHOXPI.js → ADW6GVRA.js} +1 -1
  7. package/lib/chunks/{IPFRJMV6.js → AEUD4DDQ.js} +1 -1
  8. package/lib/chunks/{RXUHCIFX.js → BFHO7GW5.js} +1 -1
  9. package/lib/chunks/C2P2K3EL.js +7 -0
  10. package/lib/chunks/{TMULAWFD.js → CHYVBQIC.js} +1 -1
  11. package/lib/chunks/{3JJEI7CJ.js → CQMMUWIJ.js} +99 -95
  12. package/lib/chunks/{SKB7KFUK.js → D2LIZR7C.js} +1 -1
  13. package/lib/chunks/{B3QINORT.js → D3EE6JIC.js} +1 -1
  14. package/lib/chunks/{K732KQHY.js → D6R7VN2E.js} +1 -1
  15. package/lib/chunks/DV6O45KM.js +20 -0
  16. package/lib/chunks/F2OX5CFF.js +7 -0
  17. package/lib/chunks/H7GBQYOQ.js +20 -0
  18. package/lib/chunks/{NSKVRJLY.js → HJBZSEOJ.js} +1 -1
  19. package/lib/chunks/{Y2G2CYSF.js → HTZLTEUF.js} +1 -1
  20. package/lib/chunks/{CA4BPC77.js → ITXYN4EV.js} +1 -1
  21. package/lib/chunks/{NWMTC4AN.js → IULINGO6.js} +1 -1
  22. package/lib/chunks/{TKFA7G4G.js → JGDGNU3W.js} +1 -1
  23. package/lib/chunks/{TSB6PODJ.js → JM7BMZLD.js} +1 -1
  24. package/lib/chunks/{OEBWRENF.js → JW436AQL.js} +1 -1
  25. package/lib/chunks/LD5MEXEL.js +10 -0
  26. package/lib/chunks/{WHTCOU4Z.js → MA3DQUED.js} +1 -1
  27. package/lib/chunks/{LWB43R4X.js → NEUHMRVX.js} +3 -3
  28. package/lib/chunks/{XMYTYWHZ.js → OHIVXMXU.js} +1 -1
  29. package/lib/chunks/OHW62OX6.js +8 -0
  30. package/lib/chunks/{2OHNINBQ.js → ONCO376P.js} +1 -1
  31. package/lib/chunks/P6UQ46OM.js +20 -0
  32. package/lib/chunks/POEVQHCC.js +30 -0
  33. package/lib/chunks/QYUMGE2L.js +9 -0
  34. package/lib/chunks/{SXKUE52F.js → RBQSJMUA.js} +1 -1
  35. package/lib/chunks/SK7RTQX6.js +18 -0
  36. package/lib/chunks/T22N7JRE.js +7 -0
  37. package/lib/chunks/{KQJOSAUI.js → TMUDD3AQ.js} +1 -1
  38. package/lib/chunks/{6PX2QTPF.js → UJ7OYRJC.js} +1 -1
  39. package/lib/chunks/{HJYFWIVE.js → UW4UC7ZI.js} +2 -2
  40. package/lib/chunks/{6UH63WWT.js → V3JDIYRX.js} +1 -1
  41. package/lib/chunks/VZNKVS6Q.js +7 -0
  42. package/lib/chunks/W62WTKL6.js +67 -0
  43. package/lib/chunks/{ZYLX724C.js → W7NMFHT5.js} +1 -1
  44. package/lib/chunks/{4PIDMMUD.js → WSWUTUN2.js} +1 -1
  45. package/lib/chunks/{N5SXQI4I.js → XA64NLCK.js} +1 -1
  46. package/lib/chunks/{CGINWISC.js → YHUS4LA4.js} +1 -1
  47. package/lib/chunks/{KXYI4EET.js → YOD7FLHY.js} +1 -1
  48. package/lib/chunks/{2UDYQ5CZ.js → YUQGMTD4.js} +1 -1
  49. package/lib/chunks/{OZMIIHFH.js → ZMAMNQ5K.js} +95 -95
  50. package/lib/eject-assets/generators/cli/docs.ts +1 -1
  51. package/lib/eject-assets/generators/cli/engine-source.ts +1 -1
  52. package/lib/eject-assets/generators/cli/index.ts +2 -2
  53. package/lib/eject-assets/generators/cli/render.ts +1 -1
  54. package/lib/eject-assets/generators/go/client.ts +1 -1
  55. package/lib/eject-assets/generators/go/descriptor.ts +1 -1
  56. package/lib/eject-assets/generators/go/index.ts +2 -2
  57. package/lib/eject-assets/generators/go/models.ts +1 -1
  58. package/lib/eject-assets/generators/go/naming.ts +1 -1
  59. package/lib/eject-assets/generators/go/operations.ts +1 -1
  60. package/lib/eject-assets/generators/go/pagination.ts +1 -1
  61. package/lib/eject-assets/generators/go/types.ts +1 -1
  62. package/lib/eject-assets/generators/mock/faker.ts +1 -1
  63. package/lib/eject-assets/generators/mock/index.ts +2 -2
  64. package/lib/eject-assets/generators/mock/render.ts +1 -1
  65. package/lib/eject-assets/generators/mock/sample.ts +1 -1
  66. package/lib/eject-assets/generators/mock/values.ts +1 -1
  67. package/lib/eject-assets/generators/php/client.ts +1 -1
  68. package/lib/eject-assets/generators/php/descriptor.ts +1 -1
  69. package/lib/eject-assets/generators/php/index.ts +2 -2
  70. package/lib/eject-assets/generators/php/models.ts +1 -1
  71. package/lib/eject-assets/generators/php/naming.ts +1 -1
  72. package/lib/eject-assets/generators/php/operations.ts +1 -1
  73. package/lib/eject-assets/generators/php/pagination.ts +1 -1
  74. package/lib/eject-assets/generators/php/types.ts +1 -1
  75. package/lib/eject-assets/generators/python/client.ts +1 -1
  76. package/lib/eject-assets/generators/python/descriptor.ts +1 -1
  77. package/lib/eject-assets/generators/python/index.ts +2 -2
  78. package/lib/eject-assets/generators/python/models.ts +1 -1
  79. package/lib/eject-assets/generators/python/naming.ts +1 -1
  80. package/lib/eject-assets/generators/python/operations.ts +1 -1
  81. package/lib/eject-assets/generators/python/pagination.ts +1 -1
  82. package/lib/eject-assets/generators/python/types.ts +1 -1
  83. package/lib/eject-assets/generators/swr/index.ts +2 -2
  84. package/lib/eject-assets/generators/swr/render.ts +1 -1
  85. package/lib/eject-assets/generators/tanstack-query/index.ts +2 -2
  86. package/lib/eject-assets/generators/tanstack-query/render.ts +1 -1
  87. package/lib/eject-assets/generators/transformers/index.ts +2 -2
  88. package/lib/eject-assets/generators/transformers/render.ts +1 -1
  89. package/lib/eject-assets/generators/typescript/banner.ts +1 -1
  90. package/lib/eject-assets/generators/typescript/client.ts +1 -1
  91. package/lib/eject-assets/generators/typescript/descriptor.ts +1 -1
  92. package/lib/eject-assets/generators/typescript/index.ts +2 -2
  93. package/lib/eject-assets/generators/typescript/inline-runtime.ts +1 -1
  94. package/lib/eject-assets/generators/typescript/operation-signature.ts +1 -1
  95. package/lib/eject-assets/generators/typescript/operation-types.ts +1 -1
  96. package/lib/eject-assets/generators/typescript/operations.ts +1 -1
  97. package/lib/eject-assets/generators/typescript/response-headers.ts +1 -1
  98. package/lib/eject-assets/generators/typescript/type-guards.ts +1 -1
  99. package/lib/eject-assets/generators/typescript/types.ts +1 -1
  100. package/lib/eject-assets/generators/zod/index.ts +2 -2
  101. package/lib/eject-assets/generators/zod/schemas.ts +1 -1
  102. package/lib/index.js +8 -8
  103. package/package.json +1 -1
  104. package/lib/chunks/25O4YORJ.js +0 -14
  105. package/lib/chunks/3A5KYQ7N.js +0 -26
  106. package/lib/chunks/5BMLOFU4.js +0 -20
  107. package/lib/chunks/67BLI5YQ.js +0 -90
  108. package/lib/chunks/6ZHC3PYG.js +0 -7
  109. package/lib/chunks/7SSQGR7O.js +0 -20
  110. package/lib/chunks/AH3V6J6B.js +0 -67
  111. package/lib/chunks/BGIV3YYM.js +0 -19
  112. package/lib/chunks/BJDVYUKU.js +0 -177
  113. package/lib/chunks/ECZA233J.js +0 -19
  114. package/lib/chunks/EE3PGFTZ.js +0 -16
  115. package/lib/chunks/EOS3ZB2L.js +0 -8
  116. package/lib/chunks/K2X43E7U.js +0 -57
  117. package/lib/chunks/L3TZNNJJ.js +0 -13
  118. package/lib/chunks/LAFBWLA7.js +0 -42
  119. package/lib/chunks/NB54XRRU.js +0 -10
  120. package/lib/chunks/NSIQWNYL.js +0 -7
  121. package/lib/chunks/NYFYWKQQ.js +0 -9
  122. package/lib/chunks/OIVSGFXK.js +0 -18
  123. package/lib/chunks/OKRLSOE5.js +0 -22
  124. package/lib/chunks/PFYPTG4G.js +0 -7
  125. package/lib/chunks/RBHN62FF.js +0 -7
  126. package/lib/chunks/REFX2EKS.js +0 -13
  127. package/lib/chunks/SGBB4RNM.js +0 -11
  128. package/lib/chunks/SQVG3CEM.js +0 -8
  129. package/lib/chunks/TVJE32GA.js +0 -11
  130. package/lib/chunks/VRWULG7P.js +0 -7
  131. package/lib/chunks/VZCENZBY.js +0 -30
  132. package/lib/chunks/WSOCDFHJ.js +0 -7
  133. package/lib/chunks/Y4BUDNR4.js +0 -14
  134. package/lib/chunks/ZBL4IVEW.js +0 -11
  135. /package/lib/chunks/{UKSQ7B5H.js → 2U6O26CV.js} +0 -0
@@ -574,7 +574,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
574
574
  BSD-3-Clause
575
575
 
576
576
  Packages:
577
- fast-uri@3.1.5 — Copyright (c) 2011-2021, Gary Court until https://github.com/garycourt/uri-js/commit/a1acf730b4bba3f1097c9f52e7d9d3aba8cdcaae
577
+ fast-uri@3.1.7 — Copyright (c) 2011-2021, Gary Court until https://github.com/garycourt/uri-js/commit/a1acf730b4bba3f1097c9f52e7d9d3aba8cdcaae
578
578
  source-map@0.6.1 — Copyright (c) 2009-2011, Mozilla Foundation and contributors
579
579
 
580
580
  License text:
@@ -4,4 +4,4 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a}from"./XMYTYWHZ.js";import"./NYFYWKQQ.js";import"./VZCENZBY.js";import"./TVJE32GA.js";import"./LWB43R4X.js";import"./PFYPTG4G.js";import"./OZMIIHFH.js";import"./NEWT5A6S.js";import"./NB54XRRU.js";import"./HJYFWIVE.js";import"./RFWIIJFG.js";export{a as tanstackQueryGenerator};
7
+ import{a}from"./OHIVXMXU.js";import"./QYUMGE2L.js";import"./POEVQHCC.js";import"./57HELKSP.js";import"./NEUHMRVX.js";import"./WZXA5XPB.js";import"./ZMAMNQ5K.js";import"./NEWT5A6S.js";import"./LD5MEXEL.js";import"./UW4UC7ZI.js";import"./RFWIIJFG.js";export{a as tanstackQueryGenerator};
@@ -0,0 +1,11 @@
1
+ import { createRequire as __createRequire } from 'node:module';
2
+ import { fileURLToPath as __fileURLToPath } from 'node:url';
3
+ import { dirname as __pathDirname } from 'node:path';
4
+ const require = __createRequire(import.meta.url);
5
+ var __filename = __fileURLToPath(import.meta.url);
6
+ var __dirname = __pathDirname(__filename);
7
+ import{a as m,m as l}from"./UW4UC7ZI.js";function d(e,t){let n=t??{},i=e.specName??e.name;if(Array.isArray(n.exclude)&&n.exclude.includes(i))return;let r=(n.operations??{})[i]??e.paginationExtension;if(r===void 0&&typeof n.style=="string"){let{exclude:c,operations:E,...u}=n,y=u.style==="cursor"?u.cursorParam:u.offsetParam;(u.style==="link"?e.successResponseHeaders?.some(f=>f.name==="link")===!0:typeof y=="string"&&e.queryParams.some(f=>f.name===y))&&(r=u)}if(r===void 0||typeof r.style!="string")return;let a=r.style==="cursor"?r.cursorParam:r.offsetParam;return{style:r.style,...typeof a=="string"?{param:a}:{},...typeof r.nextCursor=="string"?{nextCursor:r.nextCursor}:{},...typeof r.hasMore=="string"?{hasMore:r.hasMore}:{},...typeof r.limitParam=="string"?{limitParam:r.limitParam}:{},...typeof r.items=="string"?{items:r.items}:{}}}function p(e){return(e??"").replace(/\s+/g," ").trim().replace(/\\/g,"\\\\").replace(/\|/g,"\\|")}function o(e){switch(e.kind){case"ref":return e.name;case"omit":return e.base;case"scalar":return e.scalar;case"array":return`array of ${o(e.items)}`;case"record":return`map of ${o(e.value)}`;case"enum":{let t=e.values.map(String),n=t.slice(0,6).join(", ");return t.length>6?`enum: ${n}, and ${t.length-6} more`:`enum: ${n}`}case"literal":return String(e.value);case"union":return e.members.map(o).join(" or ");case"intersection":return e.members.map(o).join(" and ");case"object":return"object";case"null":return"null";case"unknown":return"any"}}function g(e){return e.successResponses.some(t=>t.contentType.toLowerCase().includes("json"))?!1:e.successResponses.some(t=>t.contentType.startsWith("image/")||t.contentType==="application/octet-stream")}function h(e,t){e.line("| Parameter | In | Type | Required | Description |"),e.line("| --------- | -- | ---- | -------- | ----------- |");for(let n of t)e.line(`| \`${n.name}\` | ${n.in} | ${p(o(n.schema))} | ${n.required?"yes":"no"} | ${p(n.description)} |`);e.blank()}function x(e,t,n){e.line(`### \`${t.specName??t.name}\``),e.blank(),t.summary!==void 0&&(e.line(p(t.summary)),e.blank()),e.line(`\`${t.method.toUpperCase()} ${t.path}\``),e.blank();let i=n.sample(t);if(i!==void 0){e.line("```"+n.language.fence);for(let c of i.source.replace(/\n+$/,"").split(`
8
+ `))e.line(c);e.line("```"),e.blank()}let s=[...t.pathParams,...t.queryParams,...t.headerParams];s.length>0&&h(e,s),t.requestBody!==void 0&&e.line(`Body: \`${t.requestBody.contentType}\`${t.requestBody.required?", required":", optional"}, of type ${o(t.requestBody.schema)}.`);let r=t.successResponses[0];e.line(r===void 0?"Returns no content.":`Returns \`${r.contentType}\`, of type ${o(r.schema)}.`),(n.paginated!==void 0?n.paginated.has(t.name):d(t,n.pagination)!==void 0)&&e.line("This operation is paginated, so the SDK gives it page and item iterators."),t.successResponses.some(c=>c.contentType==="text/event-stream")&&e.line("This operation streams server-sent events, so the SDK iterates the events."),g(t)&&e.line("This operation returns binary content."),e.blank()}function k(e,t){let n=new m;if(t.frontmatter&&(n.line("---"),n.line(`title: ${t.title}`),n.line("---"),n.blank()),n.line(`# ${t.title}`),n.blank(),n.line(`Generated reference for the ${t.language.label} SDK, produced from the API description by \`redocly generate-client\`.`),n.line("Re-run generation to update it \u2014 this file is not hand-edited."),n.blank(),n.line(t.language.requires),n.blank(),n.line("## Authentication"),n.blank(),e.securitySchemes.length===0)n.line("The description declares no security schemes.");else{n.line("The description declares these schemes, which you pass to the client:"),n.blank(),n.line("| Scheme | Kind | Sent as |"),n.line("| ------ | ---- | ------- |");for(let r of e.securitySchemes){let a=r.kind==="bearer"?"`Authorization: Bearer <token>`":r.kind==="basic"?"`Authorization: Basic <base64>`":r.kind==="apiKeyHeader"?`the \`${r.headerName}\` header`:r.kind==="apiKeyQuery"?`the \`${r.paramName}\` query parameter`:`the \`${r.cookieName}\` cookie`;n.line(`| \`${r.key}\` | ${r.kind} | ${a} |`)}}n.blank();let i=e.services.flatMap(r=>r.operations),s=[...new Set(i.map(r=>r.tags[0]))];for(let r of s){n.line(r===void 0?"## Operations":`## ${r}`),n.blank();for(let a of i.filter(c=>c.tags[0]===r))x(n,a,t)}return n.toString().replace(/\n{3,}/g,`
9
+
10
+ `).trimEnd()+`
11
+ `}function b(e){return e.successResponses.find(t=>t.contentType.toLowerCase().includes("json"))?.schema}function R(e){return e.successResponses.find(t=>t.contentType.toLowerCase().includes("text/event-stream"))}function S(e){return e.requestBody?.contentType.toLowerCase().includes("multipart")??!1}function $(e){let t=new Set(e.variables.map(a=>a.name)),n=[],i="",s=e.url,r=/\{([^{}]+)\}/;for(let a=r.exec(s);a!==null;a=r.exec(s))i+=s.slice(0,a.index),t.has(a[1])?(i!==""&&n.push({kind:"literal",value:i}),i="",n.push({kind:"variable",name:a[1]})):i+=a[0],s=s.slice(a.index+a[0].length);return i+=s,(i!==""||n.length===0)&&n.push({kind:"literal",value:i}),n}function P(e,t){return e.security.map(n=>n.flatMap(i=>{let s=t.securitySchemes.find(r=>r.key===i);return s===void 0?[]:s.kind==="bearer"||s.kind==="basic"?[{scheme:i,kind:s.kind}]:s.kind==="apiKeyHeader"?[{scheme:i,kind:"apiKey",name:s.headerName,in:"header"}]:s.kind==="apiKeyQuery"?[{scheme:i,kind:"apiKey",name:s.paramName,in:"query"}]:[{scheme:i,kind:"apiKey",name:s.cookieName,in:"cookie"}]})).filter(n=>n.length>0)}function C(e,t,n){if(e===void 0||t===void 0)return;let i=l(e,t,n);return i?.kind==="array"?i.items:void 0}var J=["Printer","casing","identifierFor","uniqueIdentifiers","RESERVED_WORDS","flattenAllOf","deref","discriminatorCases","jsonSuccessSchema","sseResponse","isMultipartBody","serverUrlParts","securityRequirements","paginationItemSchema","isNullable","unwrapNullable","enumValues","docText","headerCoerceType","schemaAtPointer","paginationRuleFor","renderReferencePage","NotSupportedError"];function v(e){return e}function N(e){return e.toLowerCase().split(/[^a-z0-9]+/).filter(Boolean).join("-")}function q(e){return e.replace(/[^A-Za-z0-9]+/g,"_").replace(/([a-z0-9])([A-Z])/g,"$1_$2").toUpperCase()}function A(e,t){let n={...e};for(let[i,s]of Object.entries(t))s!==void 0&&(n[i]=s);return n}function fe(e){return e}async function ge(e){return(await import("./VZNKVS6Q.js")).generateClient(e)}export{d as a,k as b,b as c,R as d,S as e,$ as f,P as g,C as h,J as i,v as j,N as k,q as l,A as m,fe as n,ge as o};
@@ -0,0 +1,7 @@
1
+ import { createRequire as __createRequire } from 'node:module';
2
+ import { fileURLToPath as __fileURLToPath } from 'node:url';
3
+ import { dirname as __pathDirname } from 'node:path';
4
+ const require = __createRequire(import.meta.url);
5
+ var __filename = __fileURLToPath(import.meta.url);
6
+ var __dirname = __pathDirname(__filename);
7
+ import{a as l}from"./MA3DQUED.js";import{a as R,b as u,c as f,d}from"./WSWUTUN2.js";import{d as y,e as G,f as x}from"./DV6O45KM.js";import{c as g,d as S,e as h}from"./H7GBQYOQ.js";import{c as k,d as v,e as b}from"./P6UQ46OM.js";import{a as D,b as E,c as q,d as z}from"./SK7RTQX6.js";import{a as o}from"./OHIVXMXU.js";import{a,b as p,c as s}from"./W62WTKL6.js";import"./2U6O26CV.js";import{a as m}from"./HTZLTEUF.js";import{a as i}from"./JM7BMZLD.js";import{a as c}from"./TMUDD3AQ.js";import"./QYUMGE2L.js";import{a as I,d as M,e as N}from"./POEVQHCC.js";import{a as H,b as K,c as tr,d as or,e as nr,f as ar,g as pr,h as sr,i as mr}from"./57HELKSP.js";import"./NEUHMRVX.js";import{a as U}from"./WZXA5XPB.js";import"./ZMAMNQ5K.js";import"./NEWT5A6S.js";import{e as T,h as j,k as w}from"./LD5MEXEL.js";import{a as _,b as B,c as F,d as J,e as Q,f as P,g as V,h as W,i as X,j as Y,k as Z,l as $,m as rr,n as er}from"./UW4UC7ZI.js";import"./RFWIIJFG.js";var A={typescript:{run:a,sample:s,docs:p},zod:{run:m},transformers:{run:i},"tanstack-query":{run:o("react")},"tanstack-query-vue":{run:o("vue")},"tanstack-query-svelte":{run:o("svelte")},"tanstack-query-solid":{run:o("solid")},swr:{run:c},mock:{run:l},cli:{run:u,sample:d,docs:f},python:{run:y,sample:G,docs:x},go:{run:g,sample:S,docs:h},php:{run:k,sample:v,docs:b}},L=Object.fromEntries(Object.entries(D).map(([e,{load:r,...t}])=>[e,{...t,...A[e]}]));function n(){return new Map(Object.entries(L))}function C(e,r,t=n(),O){E(e,r,t,O)}function br(e,r){let t=r.registry??n();return C(r.generators,r.emit,t,r.outputMode),q(e,{...r,registry:t})}export{mr as AUTHORING_HELPER_NAMES,U as NotSupportedError,_ as Printer,F as RESERVED_WORDS,B as casing,j as codeLiteral,br as collectGeneratedFiles,P as deref,W as discriminatorCases,$ as docText,Z as enumValues,V as flattenAllOf,z as generateClient,er as headerCoerceType,J as identifierFor,nr as isMultipartBody,X as isNullable,tr as jsonSuccessSchema,I as operationSignature,sr as paginationItemSchema,H as paginationRuleFor,w as pascalCase,R as renderComposedCliEntry,K as renderReferencePage,T as safeIdent,rr as schemaAtPointer,pr as securityRequirements,ar as serverUrlParts,or as sseResponse,M as tsJsdoc,N as tsType,Q as uniqueIdentifiers,Y as unwrapNullable};
@@ -0,0 +1,7 @@
1
+ import { createRequire as __createRequire } from 'node:module';
2
+ import { fileURLToPath as __fileURLToPath } from 'node:url';
3
+ import { dirname as __pathDirname } from 'node:path';
4
+ const require = __createRequire(import.meta.url);
5
+ var __filename = __fileURLToPath(import.meta.url);
6
+ var __dirname = __pathDirname(__filename);
7
+ import{a,b,c}from"./W62WTKL6.js";import"./2U6O26CV.js";import"./POEVQHCC.js";import"./57HELKSP.js";import"./NEUHMRVX.js";import"./WZXA5XPB.js";import"./ZMAMNQ5K.js";import"./NEWT5A6S.js";import"./LD5MEXEL.js";import"./UW4UC7ZI.js";import"./RFWIIJFG.js";export{b as typescriptDocs,a as typescriptGenerator,c as typescriptSample};
@@ -4,4 +4,4 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- var e={name:"@redocly/cli",version:"2.51.1",description:"",license:"MIT",bin:{redocly:"bin/cli.js",openapi:"bin/cli.js"},type:"module",engines:{node:">=22.12.0 || >=20.19.0 <21.0.0",npm:">=10"},engineStrict:!0,scripts:{build:"node ./scripts/build.mjs","prepare:publish-dir":"node ./scripts/prepare-publish-dir.mjs","clean:publish-dir":`node -e "require('fs').rmSync('.publish', {recursive:true, force:true})"`},publishConfig:{directory:".publish"},repository:{type:"git",url:"https://github.com/Redocly/redocly-cli.git"},homepage:"https://github.com/Redocly/redocly-cli",keywords:["linter","OpenAPI","Swagger","OpenAPI linter","Swagger linter","AsyncAPI linter","Arazzo linter","oas"],contributors:["Roman Hotsiy <roman@redocly.com> (https://redocly.com/)"],devDependencies:{"@opentelemetry/exporter-trace-otlp-http":"0.219.0","@opentelemetry/resources":"2.8.0","@opentelemetry/sdk-trace-node":"2.8.0","@opentelemetry/semantic-conventions":"1.41.1","@redocly/cli-otel":"0.3.5","@redocly/client-generator":"0.4.5","@redocly/openapi-core":"2.51.1","@redocly/respect-core":"2.51.1","@types/cookie":"0.6.0","@types/har-format":"^1.2.16","@types/react":"^17.0.0 || ^18.2.21 || ^19.2.16","@types/react-dom":"^17.0.0 || ^18.2.7 || ^19.2.3","@types/semver":"^7.5.0","@types/set-cookie-parser":"2.4.10","@types/yargs":"17.0.32",colorette:"^1.2.0",cookie:"^0.7.2",dotenv:"16.4.7",esbuild:"^0.28.0",glob:"^13.0.5",handlebars:"^4.7.9","https-proxy-agent":"^7.0.5",react:"^17.0.0 || ^18.2.0 || ^19.2.7","react-dom":"^17.0.0 || ^18.2.0 || ^19.2.7",redoc:"2.5.3",semver:"^7.5.2","set-cookie-parser":"^2.3.5","styled-components":"6.4.2",typescript:"6.0.2",ulid:"^3.0.1",undici:"^6.28.0",yargs:"17.0.1"}};var{version:s,name:i,engines:c}=e,n=e.devDependencies.redoc,p="sha384-xiEssMQFSpSfLbzRZCGfxxIM5QDb2DTrU6vyoZdp2sV1L6pmOMy6MpTtUoLbpC96";export{s as a,i as b,c,n as d,p as e};
7
+ var e={name:"@redocly/cli",version:"2.51.2",description:"",license:"MIT",bin:{redocly:"bin/cli.js",openapi:"bin/cli.js"},type:"module",engines:{node:">=22.12.0 || >=20.19.0 <21.0.0",npm:">=10"},engineStrict:!0,scripts:{build:"node ./scripts/build.mjs","prepare:publish-dir":"node ./scripts/prepare-publish-dir.mjs","clean:publish-dir":`node -e "require('fs').rmSync('.publish', {recursive:true, force:true})"`},publishConfig:{directory:".publish"},repository:{type:"git",url:"https://github.com/Redocly/redocly-cli.git"},homepage:"https://github.com/Redocly/redocly-cli",keywords:["linter","OpenAPI","Swagger","OpenAPI linter","Swagger linter","AsyncAPI linter","Arazzo linter","oas"],contributors:["Roman Hotsiy <roman@redocly.com> (https://redocly.com/)"],devDependencies:{"@opentelemetry/exporter-trace-otlp-http":"0.219.0","@opentelemetry/resources":"2.8.0","@opentelemetry/sdk-trace-node":"2.8.0","@opentelemetry/semantic-conventions":"1.41.1","@redocly/cli-otel":"0.3.5","@redocly/client-generator":"0.4.6","@redocly/openapi-core":"2.51.2","@redocly/respect-core":"2.51.2","@types/cookie":"0.6.0","@types/har-format":"^1.2.16","@types/react":"^17.0.0 || ^18.2.21 || ^19.2.16","@types/react-dom":"^17.0.0 || ^18.2.7 || ^19.2.3","@types/semver":"^7.5.0","@types/set-cookie-parser":"2.4.10","@types/yargs":"17.0.32",colorette:"^1.2.0",cookie:"^0.7.2",dotenv:"16.4.7",esbuild:"^0.28.0",glob:"^13.0.5",handlebars:"^4.7.9","https-proxy-agent":"^7.0.5",react:"^17.0.0 || ^18.2.0 || ^19.2.7","react-dom":"^17.0.0 || ^18.2.0 || ^19.2.7",redoc:"2.5.3",semver:"^7.5.2","set-cookie-parser":"^2.3.5","styled-components":"6.4.2",typescript:"6.0.2",ulid:"^3.0.1",undici:"^6.28.0",yargs:"17.0.1"}};var{version:s,name:i,engines:c}=e,n=e.devDependencies.redoc,p="sha384-xiEssMQFSpSfLbzRZCGfxxIM5QDb2DTrU6vyoZdp2sV1L6pmOMy6MpTtUoLbpC96";export{s as a,i as b,c,n as d,p as e};
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a as T,b as O,c as A,d as E}from"./B3QINORT.js";import{c as m,k as C,r as $}from"./EOS3ZB2L.js";import{a as R,b as y}from"./CA4BPC77.js";import{a as q}from"./BXI4SF2U.js";import{V as u,c as H}from"./OZMIIHFH.js";import"./NEWT5A6S.js";import{e as z}from"./RFWIIJFG.js";import{createReadStream as F,createWriteStream as k,existsSync as V}from"node:fs";import{appendFile as N,mkdir as j,rm as _,writeFile as W}from"node:fs/promises";import B from"node:path";import{createInterface as G}from"node:readline";var w=class{outputPath;entriesPath;creatorVersion;writeChain=Promise.resolve();directoryEnsured=!1;started=!1;count=0;constructor(t,r){this.outputPath=B.resolve(process.cwd(),t),this.entriesPath=`${this.outputPath}.entries.tmp`,this.creatorVersion=r}get entryCount(){return this.count}add(t){let r=`${JSON.stringify(t)}
7
+ import{a as T,b as O,c as A,d as E}from"./D3EE6JIC.js";import{c as m,k as C,r as $}from"./OHW62OX6.js";import{a as R,b as y}from"./ITXYN4EV.js";import{a as q}from"./BXI4SF2U.js";import{V as u,c as H}from"./ZMAMNQ5K.js";import"./NEWT5A6S.js";import{e as z}from"./RFWIIJFG.js";import{createReadStream as F,createWriteStream as k,existsSync as V}from"node:fs";import{appendFile as N,mkdir as j,rm as _,writeFile as W}from"node:fs/promises";import B from"node:path";import{createInterface as G}from"node:readline";var w=class{outputPath;entriesPath;creatorVersion;writeChain=Promise.resolve();directoryEnsured=!1;started=!1;count=0;constructor(t,r){this.outputPath=B.resolve(process.cwd(),t),this.entriesPath=`${this.outputPath}.entries.tmp`,this.creatorVersion=r}get entryCount(){return this.count}add(t){let r=`${JSON.stringify(t)}
8
8
  `,n=this.writeChain.catch(()=>{}).then(()=>this.append(r)).then(()=>{this.count+=1});return this.writeChain=n.catch(()=>{}),n}async finalize(){await this.writeChain.catch(()=>{}),await this.ensureDirectory(),await this.writeDocument(),await _(this.entriesPath,{force:!0})}async append(t){if(await this.ensureDirectory(),!this.started){await W(this.entriesPath,t,"utf8"),this.started=!0;return}await N(this.entriesPath,t,"utf8")}async ensureDirectory(){this.directoryEnsured||(await j(B.dirname(this.outputPath),{recursive:!0}),this.directoryEnsured=!0)}async writeDocument(){let t=k(this.outputPath,{encoding:"utf8"}),r=n=>new Promise((o,s)=>{t.write(n,i=>i?s(i):o())});try{let n=JSON.stringify({name:"redocly-cli proxy",version:this.creatorVersion});await r(`{
9
9
  "log": {
10
10
  "version": "1.2",
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a as Ei,b as Ah}from"./O6PRCLSV.js";import{a as wh}from"./32XCOMOR.js";import{aa as It,c as z,ca as $s,ea as Os,fa as Ks,ha as Js,l as Mi,m as ha,s as Gs,x as Is}from"./OZMIIHFH.js";import{c as pe,e as ve}from"./RFWIIJFG.js";var $i=pe((Zr,Ii)=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.outdent=void 0;function Ut(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r]}function Ml(){return typeof WeakMap<"u"?new WeakMap:hm()}function hm(){return{add:Ut,delete:Ut,get:Ut,set:Ut,has:function(e){return!1}}}var mm=Object.prototype.hasOwnProperty,Gi=function(e,r){return mm.call(e,r)};function Fi(e,r){for(var a in r)Gi(r,a)&&(e[a]=r[a]);return e}var pm=/^[ \t]*(?:\r\n|\r|\n)/,fm=/(?:\r\n|\r|\n)[ \t]*$/,ym=/^(?:[\r\n]|$)/,gm=/(?:\r\n|\r|\n)([ \t]*)(?:[^ \t\r\n]|$)/,bm=/^[ \t]*[\r\n][ \t\r\n]*$/;function El(e,r,a){var t=0,n=e[0].match(gm);n&&(t=n[1].length);var i="(\\r\\n|\\r|\\n).{0,"+t+"}",o=new RegExp(i,"g");r&&(e=e.slice(1));var l=a.newline,h=a.trimLeadingNewline,p=a.trimTrailingNewline,g=typeof l=="string",b=e.length,T=e.map(function(B,W){return B=B.replace(o,"$1"),W===0&&h&&(B=B.replace(pm,"")),W===b-1&&p&&(B=B.replace(fm,"")),g&&(B=B.replace(/\r\n|\n|\r/g,function(H){return l})),B});return T}function km(e,r){for(var a="",t=0,n=e.length;t<n;t++)a+=e[t],t<n-1&&(a+=r[t]);return a}function Cm(e){return Gi(e,"raw")&&Gi(e,"length")}function xl(e){var r=Ml(),a=Ml();function t(i){for(var o=[],l=1;l<arguments.length;l++)o[l-1]=arguments[l];if(Cm(i)){var h=i,p=(o[0]===t||o[0]===Qe)&&bm.test(h[0])&&ym.test(h[1]),g=p?a:r,b=g.get(h);if(b||(b=El(h,p,e),g.set(h,b)),o.length===0)return b[0];var T=km(b,p?o.slice(1):o);return T}else return xl(Fi(Fi({},e),i||{}))}var n=Fi(t,{string:function(i){return El([i],!1,e)[0]}});return n}var Qe=xl({trimLeadingNewline:!0,trimTrailingNewline:!0});Zr.outdent=Qe;Zr.default=Qe;if(typeof Ii<"u")try{Ii.exports=Qe,Object.defineProperty(Qe,"__esModule",{value:!0}),Qe.default=Qe,Qe.outdent=Qe}catch{}});var tu=pe(na=>{"use strict";Object.defineProperty(na,"__esModule",{value:!0});var Ef="[",xf="]",Rf="{",Lf="}",Pf=":",Df=",",Zc="true",Xc="false",Qc="null",Vc='"',Nf=new Map([["t",Zc],["f",Xc],["n",Qc]]),ho=new Map([[Vc,Vc],["\\","\\"],["/","/"],["b","\b"],["n",`
7
+ import{a as Ei,b as Ah}from"./O6PRCLSV.js";import{a as wh}from"./32XCOMOR.js";import{aa as It,c as z,ca as $s,ea as Os,fa as Ks,ha as Js,l as Mi,m as ha,s as Gs,x as Is}from"./ZMAMNQ5K.js";import{c as pe,e as ve}from"./RFWIIJFG.js";var $i=pe((Zr,Ii)=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.outdent=void 0;function Ut(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r]}function Ml(){return typeof WeakMap<"u"?new WeakMap:hm()}function hm(){return{add:Ut,delete:Ut,get:Ut,set:Ut,has:function(e){return!1}}}var mm=Object.prototype.hasOwnProperty,Gi=function(e,r){return mm.call(e,r)};function Fi(e,r){for(var a in r)Gi(r,a)&&(e[a]=r[a]);return e}var pm=/^[ \t]*(?:\r\n|\r|\n)/,fm=/(?:\r\n|\r|\n)[ \t]*$/,ym=/^(?:[\r\n]|$)/,gm=/(?:\r\n|\r|\n)([ \t]*)(?:[^ \t\r\n]|$)/,bm=/^[ \t]*[\r\n][ \t\r\n]*$/;function El(e,r,a){var t=0,n=e[0].match(gm);n&&(t=n[1].length);var i="(\\r\\n|\\r|\\n).{0,"+t+"}",o=new RegExp(i,"g");r&&(e=e.slice(1));var l=a.newline,h=a.trimLeadingNewline,p=a.trimTrailingNewline,g=typeof l=="string",b=e.length,T=e.map(function(B,W){return B=B.replace(o,"$1"),W===0&&h&&(B=B.replace(pm,"")),W===b-1&&p&&(B=B.replace(fm,"")),g&&(B=B.replace(/\r\n|\n|\r/g,function(H){return l})),B});return T}function km(e,r){for(var a="",t=0,n=e.length;t<n;t++)a+=e[t],t<n-1&&(a+=r[t]);return a}function Cm(e){return Gi(e,"raw")&&Gi(e,"length")}function xl(e){var r=Ml(),a=Ml();function t(i){for(var o=[],l=1;l<arguments.length;l++)o[l-1]=arguments[l];if(Cm(i)){var h=i,p=(o[0]===t||o[0]===Qe)&&bm.test(h[0])&&ym.test(h[1]),g=p?a:r,b=g.get(h);if(b||(b=El(h,p,e),g.set(h,b)),o.length===0)return b[0];var T=km(b,p?o.slice(1):o);return T}else return xl(Fi(Fi({},e),i||{}))}var n=Fi(t,{string:function(i){return El([i],!1,e)[0]}});return n}var Qe=xl({trimLeadingNewline:!0,trimTrailingNewline:!0});Zr.outdent=Qe;Zr.default=Qe;if(typeof Ii<"u")try{Ii.exports=Qe,Object.defineProperty(Qe,"__esModule",{value:!0}),Qe.default=Qe,Qe.outdent=Qe}catch{}});var tu=pe(na=>{"use strict";Object.defineProperty(na,"__esModule",{value:!0});var Ef="[",xf="]",Rf="{",Lf="}",Pf=":",Df=",",Zc="true",Xc="false",Qc="null",Vc='"',Nf=new Map([["t",Zc],["f",Xc],["n",Qc]]),ho=new Map([[Vc,Vc],["\\","\\"],["/","/"],["b","\b"],["n",`
8
8
  `],["f","\f"],["r","\r"],["t"," "]]),uo=new Map([[Ef,"Punctuator"],[xf,"Punctuator"],[Rf,"Punctuator"],[Lf,"Punctuator"],[Pf,"Punctuator"],[Df,"Punctuator"],[Zc,"Boolean"],[Xc,"Boolean"],[Qc,"Null"]]),Wa=class extends Error{constructor(r,{line:a,column:t,index:n}){super(`${r} (${a}:${t})`),this.line=a,this.column=t,this.index=n}},mo=class extends Wa{constructor(r,a){super(`Unexpected character ${r} found.`,a)}},pr=class extends Wa{constructor(r){super(`Unexpected token ${r.type}(${r.value}) found.`,r.loc.start)}},po=class extends Wa{constructor(r){super("Unexpected end of input found.",r)}},Uc='"',Yc="/",qc="*",Hf={comments:!1,ranges:!1};function Wf(e){return/[\s\n]/.test(e)}function Ca(e){return e>="0"&&e<="9"}function Ff(e){return Ca(e)||/[a-f]/i.test(e)}function Gf(e){return e>="1"&&e<="9"}function If(e){return/[tfn]/.test(e)}function $f(e){return Ca(e)||e==="."||e==="-"}function eu(e,r){r=Object.freeze({...Hf,...r});let a=-1,t=1,n=0,i=!1,o=[];function l(w,S,R,E){let L=R.offset+S.length,re=r.ranges?{range:[R.offset,L]}:void 0;return{type:w,value:S,loc:{start:R,end:E||{line:R.line,column:R.column+S.length,offset:L}},...re}}function h(){let w=e.charAt(++a);return i?(t++,n=1,i=!1):n++,w==="\r"?(i=!0,e.charAt(a+1)===`
9
9
  `&&a++):w===`
10
10
  `&&(i=!0),w}function p(){return{line:t,column:n,offset:a}}function g(w){let S=Nf.get(w);if(e.slice(a,a+S.length)===S)return a+=S.length-1,n+=S.length-1,{value:S,c:h()};for(let R=1;R<S.length;R++)S[R]!==e.charAt(a+R)&&W(h())}function b(w){let S=w;for(w=h();w&&w!==Uc;){if(w==="\\")if(S+=w,w=h(),ho.has(w))S+=w;else if(w==="u"){S+=w;for(let R=0;R<4;R++)w=h(),Ff(w)?S+=w:W(w)}else W(w);else S+=w;w=h()}return w||H(),S+=w,{value:S,c:h()}}function T(w){let S="";if(w==="-"&&(S+=w,w=h(),Ca(w)||W(w)),w==="0")S+=w,w=h(),Ca(w)&&W(w);else{Gf(w)||W(w);do S+=w,w=h();while(Ca(w))}if(w===".")do S+=w,w=h();while(Ca(w));if(w==="e"||w==="E")for(S+=w,w=h(),(w==="+"||w==="-")&&(S+=w,w=h()),Ca(w)||W(w);Ca(w);)S+=w,w=h();return{value:S,c:w}}function B(w){let S=w;if(w=h(),w==="/"){do S+=w,w=h();while(w&&w!=="\r"&&w!==`
@@ -0,0 +1,7 @@
1
+ import { createRequire as __createRequire } from 'node:module';
2
+ import { fileURLToPath as __fileURLToPath } from 'node:url';
3
+ import { dirname as __pathDirname } from 'node:path';
4
+ const require = __createRequire(import.meta.url);
5
+ var __filename = __fileURLToPath(import.meta.url);
6
+ var __dirname = __pathDirname(__filename);
7
+ import{a,b,c,d,e}from"./P6UQ46OM.js";import"./2U6O26CV.js";import"./57HELKSP.js";import"./NEUHMRVX.js";import"./WZXA5XPB.js";import"./ZMAMNQ5K.js";import"./NEWT5A6S.js";import"./UW4UC7ZI.js";import"./RFWIIJFG.js";export{e as phpDocs,c as phpGenerator,d as phpSample,a as phpType,b as renderPhpModels};
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a as G}from"./TKFA7G4G.js";import{c as x,d as C,e as fe,h as N,j as I,k as ue,v as _,w as B}from"./EOS3ZB2L.js";import{a as ie,b as Y,c as ae,f as ce,g as pe}from"./N5SXQI4I.js";import{b as se}from"./CA4BPC77.js";import{B as re,C as v,V as S,c as g,ca as oe,l as O}from"./OZMIIHFH.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";import{mkdir as jt,writeFile as kt}from"node:fs/promises";import At from"node:path";var Be=/^[a-zA-Z][a-zA-Z0-9]*(?:[_\-.][a-zA-Z0-9]+)*$/,De=/^[0-9a-f-]{8,}$/i,ze=[["uuid",/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i],["date-time",/^\d{4}-\d{2}-\d{2}[Tt]\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:[Zz]|[+-]\d{2}:\d{2})$/],["date",/^\d{4}-\d{2}-\d{2}$/],["email",/^[^\s@]+@[^\s@]+\.[^\s@]+$/],["uri",/^https?:\/\/\S+$/],["ipv4",/^(?:(?:25[0-5]|2[0-4]\d|1?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|1?\d?\d)$/]],M=new WeakMap;function D(e){return{formats:ze.filter(([,t])=>t.test(e)).map(([t])=>t),values:[e],count:1,overflow:!1}}function q(e,t){if(!e)return t;if(!t)return e;let n={formats:e.formats.filter(r=>t.formats.includes(r)),values:[],count:e.count+t.count,overflow:e.overflow||t.overflow};if(!n.overflow){let r=[...e.values];for(let o of t.values)r.includes(o)||r.push(o);r.length>10?n.overflow=!0:n.values=r}return n}function z(e,t){M.set(e,t)}function H(e){return M.get(e)}function V(e,t){let n=M.get(e);n&&M.set(t,n)}function He(e){return e.length<=30&&!De.test(e)&&Be.test(e)}function K(e,t){return e.formats.length>0?{format:e.formats[0]}:t&&!e.overflow&&e.count>=4&&e.values.length>0&&e.values.length<=5&&e.values.length*2<=e.count&&e.values.every(He)?{enum:[...e.values].sort()}:{}}function $(e){let t=M.get(e);if(t){let n=typeof e.type=="string"?[e.type]:e.type??[];n.includes("string")&&Object.assign(e,K(t,n.length===1))}for(let n of Object.values(e.properties??{}))$(n);e.additionalProperties&&$(e.additionalProperties),e.items&&$(e.items);for(let n of e.oneOf??[])$(n)}function me(e){for(let t of Object.values(e.paths))for(let n of Object.values(t)){for(let r of Object.values(n.requestBody?.content??{}))$(r.schema);for(let r of Object.values(n.responses))for(let o of Object.values(r.content??{}))$(o.schema)}for(let t of Object.values(e.components?.schemas??{}))$(t);return e}var be=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,F=/^\d+$/,Ve=/^[0-9a-hjkmnp-tv-z]{26}$/i,Ue=/^[a-z][a-z0-9]*_(?=[0-9a-z]*\d)[0-9a-z]{10,}$/i,Fe=/^[a-z](?=[a-z0-9]*\d)[a-z0-9]{23,24}$/,X=new Set(pe),Le=new Set(["get","head"]),de="application/x-www-form-urlencoded",le="multipart/form-data";function Ye(e){return e?F.test(e)||be.test(e)||Ve.test(e)||Ue.test(e)||Fe.test(e)?!0:/^[0-9a-f]{16,}$/i.test(e):!1}function Z(e){let t=e.split("/"),n=[],r=new Set;return{template:t.map((s,c)=>{if(!Ye(s))return s;let i=t[c-1],a=i?`${O(i,1)}Id`:"id",p=1;for(;r.has(a);)p+=1,a=i?`${O(i,1)}Id${p}`:`id${p}`;return r.add(a),n.push({name:a,value:s}),`{${a}}`}).join("/")||"/",params:n}}function j(e){if(e===null)return{type:"null"};if(Array.isArray(e)){if(e.length===0)return{type:"array"};let t=e.slice(0,20).map(j);return{type:"array",items:J(t)}}switch(typeof e){case"string":{let t={type:"string"};return z(t,D(e)),t}case"boolean":return{type:"boolean"};case"number":return Number.isInteger(e)?{type:"integer"}:{type:"number"};case"object":{let t=Object.entries(e);if(t.length>0&&(t.every(([c])=>F.test(c))||t.every(([c])=>be.test(c))))return{type:"object",additionalProperties:J(t.map(([,c])=>j(c)))};let n={},r=[];for(let[s,c]of t)n[s]=j(c),r.push(s);let o={type:"object",properties:n};return r.length>0&&(o.required=r),o}default:return{}}}function J(e){if(e.length===0)return{};let[t,...n]=e,r=t;for(let o of n)r=U(r,o);return r}function he(e){return Object.keys(e).length===0}function k(e){return e.additionalProperties?"map":e.type==="object"?"object":e.type==="array"?"array":"scalar"}function W(e){return e.oneOf?e.oneOf.flatMap(W):Array.isArray(e.type)?e.type.map(t=>{if(t==="object"){let r={type:"object"};return e.properties&&(r.properties=e.properties),e.required&&(r.required=e.required),e.additionalProperties&&(r.additionalProperties=e.additionalProperties),r}if(t==="array")return e.items?{type:"array",items:e.items}:{type:"array"};let n={type:t};return t==="string"&&V(e,n),n}):[e]}var Ke=.5,We=3;function Oe(e,t){let n=Object.keys(e.properties??{}),r=Object.keys(t.properties??{});if(n.length===0||r.length===0)return 1;let o=new Set(r),s=n.filter(c=>o.has(c)).length;return s/(n.length+r.length-s)}function Xe(e,t){let n=k(e);if(n!==k(t))return!1;switch(n){case"scalar":return e.type===t.type||e.type==="integer"&&t.type==="number"||e.type==="number"&&t.type==="integer";case"object":return Oe(e,t)>=Ke;default:return!0}}function ve(e,t){switch(k(e)){case"scalar":{if(e.type!==t.type)return{type:"number"};if(e.type==="string"){let n=q(H(e),H(t));if(n){let r={type:"string"};return z(r,n),r}}return e}case"map":return{type:"object",additionalProperties:U(e.additionalProperties??{},t.additionalProperties??{})};case"object":{let n={...e.properties??{}};for(let[c,i]of Object.entries(t.properties??{}))n[c]=n[c]?U(n[c],i):i;let r=new Set(t.required??[]),o=(e.required??[]).filter(c=>r.has(c)),s={type:"object",properties:n};return o.length>0&&(s.required=o),s}case"array":{if(!e.items||!t.items){let n=e.items??t.items;return n?{type:"array",items:n}:{type:"array"}}return{type:"array",items:U(e.items,t.items)}}}}function Ze(e){let t=[...e],n=()=>t.filter(r=>k(r)==="object").length;for(;n()>We;){let r=-1,o=-1,s=-1;for(let c=0;c<t.length;c++)if(k(t[c])==="object")for(let i=c+1;i<t.length;i++){if(k(t[i])!=="object")continue;let a=Oe(t[c],t[i]);a>s&&(s=a,r=c,o=i)}t[r]=ve(t[r],t[o]),t.splice(o,1)}return t}var Qe=["boolean","integer","number","string","null"];function et(e){if(e.length===1)return e[0];let t=[],n=new Set,r;for(let i of e)k(i)==="scalar"&&typeof i.type=="string"?(n.add(i.type),i.type==="string"&&(r=q(r,H(i)))):t.push(i);let o=Qe.filter(i=>n.has(i)),s=i=>{let a={type:i};return(typeof i=="string"?i==="string":i.includes("string"))&&r&&z(a,r),a};if(t.length===0)return o.length===1?s(o[0]):s(o);if(t.length===1&&o.length===1&&o[0]==="null"&&typeof t[0].type=="string")return{...t[0],type:[t[0].type,"null"]};let c=[...t];return o.length===1?c.push(s(o[0])):o.length>1&&c.push(s(o)),{oneOf:c}}function U(e,t){if(he(e)||he(t))return{};let n=W(e);for(let r of W(t)){let o=n.findIndex(s=>Xe(s,r));o===-1?n.push(r):n[o]=ve(n[o],r)}return et(Ze(n))}function tt(e){if(!e)return;let t=e.trim();if(!(!t.startsWith("{")&&!t.startsWith("[")))try{return JSON.parse(t)}catch{return}}function nt(e,t){let n=t?.match(/boundary="?([^";,]+)"?/i)?.[1];if(!n)return;let r={};for(let o of e.split(`--${n}`)){let s=o.match(/^\r?\n([\s\S]*?)\r?\n\r?\n([\s\S]*)\r?\n$/);if(!s)continue;let[,c,i]=s,a=c.match(/\bname="([^"]*)"/i)?.[1];a!==void 0&&(r[a]=/\bfilename="/i.test(c)?{type:"string",format:"binary"}:j(i))}if(Object.keys(r).length!==0)return{type:"object",properties:r,required:Object.keys(r)}}function ge(e){let t=I(e.contentType);if(e.bodyJson!==void 0)return{mime:ue(t)?t:"application/json",schema:j(e.bodyJson)};if(t===de&&e.bodyText){let r={};for(let[o,s]of new URLSearchParams(e.bodyText))r[o]=s;return Object.keys(r).length===0?void 0:{mime:de,schema:j(r)}}if(t===le&&e.bodyText){let r=nt(e.bodyText,e.contentType);return r?{mime:le,schema:r}:void 0}let n=tt(e.bodyText);if(n!==void 0)return{mime:"application/json",schema:j(n)}}function ye(e,t,n){let r=e.get(t);e.set(t,r?J([r,n]):n)}async function we(e){let t=await C(e.trafficPath);if(t.length===0)throw new Error("No traffic files found in the provided traffic path.");let n=_(e.server),r=new Map,o=new Set,s=0,c=a=>{let p=a.request.method.toLowerCase();if(!X.has(p))return;let f=a.request.path||"/";if(n){let u=B(a.request,n);if(u===void 0)return;f=u}else a.request.host&&!fe(a.request.host)&&o.add(`${a.request.protocol}//${a.request.host}`);let{template:m,params:d}=Z(N(f)),P=`${p} ${m}`,h=r.get(P);h||(h={method:p,template:m,pathParams:new Map,queryParams:new Map,requestBodies:new Map,responses:new Map},r.set(P,h));for(let{name:u,value:l}of d){let y=h.pathParams.get(u);h.pathParams.set(u,{numeric:(y?.numeric??!0)&&F.test(l),observations:q(y?.observations,D(l))})}for(let u of new Set(a.request.query.keys())){let l=a.request.query.getAll(u),y=h.queryParams.get(u),T=l.length>0&&l.every(b=>F.test(b)),R=y?.observations;for(let b of l)R=q(R,D(b));h.queryParams.set(u,{numeric:(y?.numeric??!0)&&T,observations:R})}if(!Le.has(p)){let u=ge(a.request);u&&ye(h.requestBodies,u.mime,u.schema)}if(a.response&&a.response.status>=100){let u=String(a.response.status),l=h.responses.get(u);l||(l={bodies:new Map},h.responses.set(u,l)),l.statusText??=a.response.statusText||void 0;let y=ge(a.response);y&&ye(l.bodies,y.mime,y.schema)}};for(let a of t){let p=await G(a,e.format);if(!p){S.warn(`Skipping traffic file with unrecognized format: ${a}
7
+ import{a as G}from"./JGDGNU3W.js";import{c as x,d as C,e as fe,h as N,j as I,k as ue,v as _,w as B}from"./OHW62OX6.js";import{a as ie,b as Y,c as ae,f as ce,g as pe}from"./XA64NLCK.js";import{b as se}from"./ITXYN4EV.js";import{B as re,C as v,V as S,c as g,ca as oe,l as O}from"./ZMAMNQ5K.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";import{mkdir as jt,writeFile as kt}from"node:fs/promises";import At from"node:path";var Be=/^[a-zA-Z][a-zA-Z0-9]*(?:[_\-.][a-zA-Z0-9]+)*$/,De=/^[0-9a-f-]{8,}$/i,ze=[["uuid",/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i],["date-time",/^\d{4}-\d{2}-\d{2}[Tt]\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:[Zz]|[+-]\d{2}:\d{2})$/],["date",/^\d{4}-\d{2}-\d{2}$/],["email",/^[^\s@]+@[^\s@]+\.[^\s@]+$/],["uri",/^https?:\/\/\S+$/],["ipv4",/^(?:(?:25[0-5]|2[0-4]\d|1?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|1?\d?\d)$/]],M=new WeakMap;function D(e){return{formats:ze.filter(([,t])=>t.test(e)).map(([t])=>t),values:[e],count:1,overflow:!1}}function q(e,t){if(!e)return t;if(!t)return e;let n={formats:e.formats.filter(r=>t.formats.includes(r)),values:[],count:e.count+t.count,overflow:e.overflow||t.overflow};if(!n.overflow){let r=[...e.values];for(let o of t.values)r.includes(o)||r.push(o);r.length>10?n.overflow=!0:n.values=r}return n}function z(e,t){M.set(e,t)}function H(e){return M.get(e)}function V(e,t){let n=M.get(e);n&&M.set(t,n)}function He(e){return e.length<=30&&!De.test(e)&&Be.test(e)}function K(e,t){return e.formats.length>0?{format:e.formats[0]}:t&&!e.overflow&&e.count>=4&&e.values.length>0&&e.values.length<=5&&e.values.length*2<=e.count&&e.values.every(He)?{enum:[...e.values].sort()}:{}}function $(e){let t=M.get(e);if(t){let n=typeof e.type=="string"?[e.type]:e.type??[];n.includes("string")&&Object.assign(e,K(t,n.length===1))}for(let n of Object.values(e.properties??{}))$(n);e.additionalProperties&&$(e.additionalProperties),e.items&&$(e.items);for(let n of e.oneOf??[])$(n)}function me(e){for(let t of Object.values(e.paths))for(let n of Object.values(t)){for(let r of Object.values(n.requestBody?.content??{}))$(r.schema);for(let r of Object.values(n.responses))for(let o of Object.values(r.content??{}))$(o.schema)}for(let t of Object.values(e.components?.schemas??{}))$(t);return e}var be=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,F=/^\d+$/,Ve=/^[0-9a-hjkmnp-tv-z]{26}$/i,Ue=/^[a-z][a-z0-9]*_(?=[0-9a-z]*\d)[0-9a-z]{10,}$/i,Fe=/^[a-z](?=[a-z0-9]*\d)[a-z0-9]{23,24}$/,X=new Set(pe),Le=new Set(["get","head"]),de="application/x-www-form-urlencoded",le="multipart/form-data";function Ye(e){return e?F.test(e)||be.test(e)||Ve.test(e)||Ue.test(e)||Fe.test(e)?!0:/^[0-9a-f]{16,}$/i.test(e):!1}function Z(e){let t=e.split("/"),n=[],r=new Set;return{template:t.map((s,c)=>{if(!Ye(s))return s;let i=t[c-1],a=i?`${O(i,1)}Id`:"id",p=1;for(;r.has(a);)p+=1,a=i?`${O(i,1)}Id${p}`:`id${p}`;return r.add(a),n.push({name:a,value:s}),`{${a}}`}).join("/")||"/",params:n}}function j(e){if(e===null)return{type:"null"};if(Array.isArray(e)){if(e.length===0)return{type:"array"};let t=e.slice(0,20).map(j);return{type:"array",items:J(t)}}switch(typeof e){case"string":{let t={type:"string"};return z(t,D(e)),t}case"boolean":return{type:"boolean"};case"number":return Number.isInteger(e)?{type:"integer"}:{type:"number"};case"object":{let t=Object.entries(e);if(t.length>0&&(t.every(([c])=>F.test(c))||t.every(([c])=>be.test(c))))return{type:"object",additionalProperties:J(t.map(([,c])=>j(c)))};let n={},r=[];for(let[s,c]of t)n[s]=j(c),r.push(s);let o={type:"object",properties:n};return r.length>0&&(o.required=r),o}default:return{}}}function J(e){if(e.length===0)return{};let[t,...n]=e,r=t;for(let o of n)r=U(r,o);return r}function he(e){return Object.keys(e).length===0}function k(e){return e.additionalProperties?"map":e.type==="object"?"object":e.type==="array"?"array":"scalar"}function W(e){return e.oneOf?e.oneOf.flatMap(W):Array.isArray(e.type)?e.type.map(t=>{if(t==="object"){let r={type:"object"};return e.properties&&(r.properties=e.properties),e.required&&(r.required=e.required),e.additionalProperties&&(r.additionalProperties=e.additionalProperties),r}if(t==="array")return e.items?{type:"array",items:e.items}:{type:"array"};let n={type:t};return t==="string"&&V(e,n),n}):[e]}var Ke=.5,We=3;function Oe(e,t){let n=Object.keys(e.properties??{}),r=Object.keys(t.properties??{});if(n.length===0||r.length===0)return 1;let o=new Set(r),s=n.filter(c=>o.has(c)).length;return s/(n.length+r.length-s)}function Xe(e,t){let n=k(e);if(n!==k(t))return!1;switch(n){case"scalar":return e.type===t.type||e.type==="integer"&&t.type==="number"||e.type==="number"&&t.type==="integer";case"object":return Oe(e,t)>=Ke;default:return!0}}function ve(e,t){switch(k(e)){case"scalar":{if(e.type!==t.type)return{type:"number"};if(e.type==="string"){let n=q(H(e),H(t));if(n){let r={type:"string"};return z(r,n),r}}return e}case"map":return{type:"object",additionalProperties:U(e.additionalProperties??{},t.additionalProperties??{})};case"object":{let n={...e.properties??{}};for(let[c,i]of Object.entries(t.properties??{}))n[c]=n[c]?U(n[c],i):i;let r=new Set(t.required??[]),o=(e.required??[]).filter(c=>r.has(c)),s={type:"object",properties:n};return o.length>0&&(s.required=o),s}case"array":{if(!e.items||!t.items){let n=e.items??t.items;return n?{type:"array",items:n}:{type:"array"}}return{type:"array",items:U(e.items,t.items)}}}}function Ze(e){let t=[...e],n=()=>t.filter(r=>k(r)==="object").length;for(;n()>We;){let r=-1,o=-1,s=-1;for(let c=0;c<t.length;c++)if(k(t[c])==="object")for(let i=c+1;i<t.length;i++){if(k(t[i])!=="object")continue;let a=Oe(t[c],t[i]);a>s&&(s=a,r=c,o=i)}t[r]=ve(t[r],t[o]),t.splice(o,1)}return t}var Qe=["boolean","integer","number","string","null"];function et(e){if(e.length===1)return e[0];let t=[],n=new Set,r;for(let i of e)k(i)==="scalar"&&typeof i.type=="string"?(n.add(i.type),i.type==="string"&&(r=q(r,H(i)))):t.push(i);let o=Qe.filter(i=>n.has(i)),s=i=>{let a={type:i};return(typeof i=="string"?i==="string":i.includes("string"))&&r&&z(a,r),a};if(t.length===0)return o.length===1?s(o[0]):s(o);if(t.length===1&&o.length===1&&o[0]==="null"&&typeof t[0].type=="string")return{...t[0],type:[t[0].type,"null"]};let c=[...t];return o.length===1?c.push(s(o[0])):o.length>1&&c.push(s(o)),{oneOf:c}}function U(e,t){if(he(e)||he(t))return{};let n=W(e);for(let r of W(t)){let o=n.findIndex(s=>Xe(s,r));o===-1?n.push(r):n[o]=ve(n[o],r)}return et(Ze(n))}function tt(e){if(!e)return;let t=e.trim();if(!(!t.startsWith("{")&&!t.startsWith("[")))try{return JSON.parse(t)}catch{return}}function nt(e,t){let n=t?.match(/boundary="?([^";,]+)"?/i)?.[1];if(!n)return;let r={};for(let o of e.split(`--${n}`)){let s=o.match(/^\r?\n([\s\S]*?)\r?\n\r?\n([\s\S]*)\r?\n$/);if(!s)continue;let[,c,i]=s,a=c.match(/\bname="([^"]*)"/i)?.[1];a!==void 0&&(r[a]=/\bfilename="/i.test(c)?{type:"string",format:"binary"}:j(i))}if(Object.keys(r).length!==0)return{type:"object",properties:r,required:Object.keys(r)}}function ge(e){let t=I(e.contentType);if(e.bodyJson!==void 0)return{mime:ue(t)?t:"application/json",schema:j(e.bodyJson)};if(t===de&&e.bodyText){let r={};for(let[o,s]of new URLSearchParams(e.bodyText))r[o]=s;return Object.keys(r).length===0?void 0:{mime:de,schema:j(r)}}if(t===le&&e.bodyText){let r=nt(e.bodyText,e.contentType);return r?{mime:le,schema:r}:void 0}let n=tt(e.bodyText);if(n!==void 0)return{mime:"application/json",schema:j(n)}}function ye(e,t,n){let r=e.get(t);e.set(t,r?J([r,n]):n)}async function we(e){let t=await C(e.trafficPath);if(t.length===0)throw new Error("No traffic files found in the provided traffic path.");let n=_(e.server),r=new Map,o=new Set,s=0,c=a=>{let p=a.request.method.toLowerCase();if(!X.has(p))return;let f=a.request.path||"/";if(n){let u=B(a.request,n);if(u===void 0)return;f=u}else a.request.host&&!fe(a.request.host)&&o.add(`${a.request.protocol}//${a.request.host}`);let{template:m,params:d}=Z(N(f)),P=`${p} ${m}`,h=r.get(P);h||(h={method:p,template:m,pathParams:new Map,queryParams:new Map,requestBodies:new Map,responses:new Map},r.set(P,h));for(let{name:u,value:l}of d){let y=h.pathParams.get(u);h.pathParams.set(u,{numeric:(y?.numeric??!0)&&F.test(l),observations:q(y?.observations,D(l))})}for(let u of new Set(a.request.query.keys())){let l=a.request.query.getAll(u),y=h.queryParams.get(u),T=l.length>0&&l.every(b=>F.test(b)),R=y?.observations;for(let b of l)R=q(R,D(b));h.queryParams.set(u,{numeric:(y?.numeric??!0)&&T,observations:R})}if(!Le.has(p)){let u=ge(a.request);u&&ye(h.requestBodies,u.mime,u.schema)}if(a.response&&a.response.status>=100){let u=String(a.response.status),l=h.responses.get(u);l||(l={bodies:new Map},h.responses.set(u,l)),l.statusText??=a.response.statusText||void 0;let y=ge(a.response);y&&ye(l.bodies,y.mime,y.schema)}};for(let a of t){let p=await G(a,e.format);if(!p){S.warn(`Skipping traffic file with unrecognized format: ${a}
8
8
  `);continue}s+=1;for await(let f of p.parse(a))c(f)}if(s===0)throw new Error("No supported traffic files found to generate an OpenAPI description from.");if(r.size===0)throw new Error(n?`No HTTP exchanges in the traffic matched the server "${n}".`:"No HTTP exchanges were observed in the traffic. Cannot generate an OpenAPI description.");let i=n?[n]:Array.from(o).sort();return rt(r,e.title??"Generated API",i)}function Pe(e){return Object.values(e.paths).reduce((t,n)=>t+Object.keys(n).length,0)}function Se(e,t){if(e.numeric)return{type:"integer"};let n={type:"string"};return e.observations&&Object.assign(n,K(e.observations,t)),n}function rt(e,t,n){let r={};for(let o of e.values()){let s=r[o.template]??={},c=[...Array.from(o.pathParams).map(([a,p])=>({name:a,in:"path",required:!0,schema:Se(p,!1)})),...Array.from(o.queryParams).map(([a,p])=>({name:a,in:"query",required:!1,schema:Se(p,!0)}))],i={operationId:ot(o.method,o.template),responses:{}};if(c.length>0&&(i.parameters=c),o.requestBodies.size>0){let a={};for(let[p,f]of o.requestBodies)a[p]={schema:f};i.requestBody={content:a}}if(o.responses.size===0)i.responses.default={description:"Observed response"};else for(let[a,p]of o.responses){let f={description:p.statusText||"Observed response"};if(p.bodies.size>0){let m={};for(let[d,P]of p.bodies)m[d]={schema:P};f.content=m}i.responses[a]=f}s[o.method]=i}return{openapi:"3.2.0",info:{title:t,version:"1.0.0"},...n.length>0?{servers:n.map(o=>({url:o}))}:{},paths:r}}function ot(e,t){let n=t.split("/").filter(Boolean).map(r=>r.replace(/[{}]/g,"")).join("-");return`${e}-${n||"root"}`}function L(e,t){return`${e.toUpperCase()} ${t}`}function Te(e,t){let n;if(e.bodyJson!==void 0)try{n=JSON.stringify(e.bodyJson)}catch{n=void 0}if(n??=e.bodyText,!n)return;let r=n.trim();if(r)return r.length>t?`${r.slice(0,t)}\u2026[truncated]`:r}function $e(e){if(!e)return"";let t=e.bodyJson;return t===void 0?e.bodyText?I(e.contentType)||"text":"":t===null?"null":Array.isArray(t)?`array<${t.length>0?je(t[0]):""}>`:je(t)}function je(e){return g(e)?Object.keys(e).sort().join(","):e===null?"null":typeof e}async function ke(e){let t=e.perGroup??2,n=e.perOperation??4,r=e.maxBodyChars??2e3,o=_(e.server),s=await C(e.trafficPath),c=new Map;for(let a of s){let p=await G(a,e.format);if(p)for await(let f of p.parse(a)){let m=f.request.method.toUpperCase();if(!X.has(m.toLowerCase()))continue;let d=f.request.path||"/";if(o){let ne=B(f.request,o);if(ne===void 0)continue;d=ne}let P=N(d),{template:h}=Z(P),u=f.response&&f.response.status>=100?f.response:void 0,l=u?.status,y=`${$e(f.request)}\u2192${$e(u)}`,T=c.get(L(m,h));T||(T=new Map,c.set(L(m,h),T));let R=`${l??""} ${y}`,b=T.get(R);b||(b=[],T.set(R,b)),!(b.length>=t)&&b.push({method:m,path:P,query:f.request.query.toString(),status:l,requestContentType:f.request.contentType,requestBody:Te(f.request,r),responseContentType:u?.contentType,responseBody:u?Te(u,r):void 0})}}let i=new Map;for(let[a,p]of c){let f=[];for(let m=0;m<t&&f.length<n;m++)for(let d of p.values()){if(f.length>=n)break;d[m]&&f.push(d[m])}i.set(a,f)}return i}var st=`You are an expert API designer. You are given one operation from an OpenAPI 3.2 description that was inferred mechanically from recorded HTTP traffic, the component schemas it references, and a sample of the real recorded HTTP exchanges for that operation. The inferred description is only a hypothesis: types are coarse, every observed property is marked required, and descriptions are missing. Alternative body shapes observed in the traffic appear as "oneOf" variants or type unions. Common string formats (uuid, date-time, date, email, uri, ipv4) and small closed enums are detected conservatively from the observed values.
9
9
 
10
10
  Refine the operation into the most accurate OpenAPI 3.2 definition you can justify from the evidence, while staying conservative: