@redocly/cli 0.0.0-snapshot.1786199735 → 0.0.0-snapshot.1786306001

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 (61) hide show
  1. package/lib/chunks/{FGZLHC6B.js → 2DWEYMHQ.js} +2 -2
  2. package/lib/chunks/{3IIQ4P4P.js → 2QYG7XRR.js} +1 -1
  3. package/lib/chunks/{NIXODD2W.js → 32QLTOL7.js} +1 -1
  4. package/lib/chunks/37BVUZUB.js +7 -0
  5. package/lib/chunks/3J7TYMNY.js +12 -0
  6. package/lib/chunks/{ZXLNDDJH.js → 4UKV6YKE.js} +181 -7
  7. package/lib/chunks/527T7DLC.js +7 -0
  8. package/lib/chunks/{SQTDATOG.js → 5AC4ETJX.js} +2 -2
  9. package/lib/chunks/{HKJZLCBH.js → 6JKHQ525.js} +1 -1
  10. package/lib/chunks/6V26I45B.js +7 -0
  11. package/lib/chunks/773S6JMM.js +7 -0
  12. package/lib/chunks/{DUPX7PYY.js → AEIZDMZ7.js} +1 -1
  13. package/lib/chunks/{G332MANL.js → AN7A4EHK.js} +2 -2
  14. package/lib/chunks/AXKRK4C7.js +7 -0
  15. package/lib/chunks/{V6VQXQSU.js → CJM2CF6G.js} +1 -1
  16. package/lib/chunks/{P3HJG5ZU.js → CK4ZS5PH.js} +1 -1
  17. package/lib/chunks/{6ATAJMOK.js → DOGJOUHK.js} +1 -1
  18. package/lib/chunks/{M3VQCD77.js → E2Z5KRBA.js} +1 -1
  19. package/lib/chunks/{45VSHDYY.js → FUV6JYJA.js} +1 -1
  20. package/lib/chunks/{O42EGUEU.js → GRV7H7BU.js} +1 -1
  21. package/lib/chunks/JKEX4O5F.js +7 -0
  22. package/lib/chunks/{MK4LHZVA.js → JWWD4Q3V.js} +2 -2
  23. package/lib/chunks/L5LCHFFW.js +8 -0
  24. package/lib/chunks/{WI4DHPSB.js → LH3UVWOA.js} +1 -1
  25. package/lib/chunks/LRB2QBAP.js +7 -0
  26. package/lib/chunks/{OBMFFMGK.js → LRMVHK22.js} +1 -1
  27. package/lib/chunks/NZ5LGL7I.js +7 -0
  28. package/lib/chunks/{CDIETNM7.js → OIU2WEB6.js} +1 -1
  29. package/lib/chunks/{JZMDULX5.js → OJU76IHI.js} +2 -2
  30. package/lib/chunks/P5MHZLNH.js +7 -0
  31. package/lib/chunks/PM55MGY5.js +7 -0
  32. package/lib/chunks/{PYCIZVAB.js → QEKV4246.js} +2 -2
  33. package/lib/chunks/{DU3CIMSU.js → QWCGPS4D.js} +1 -1
  34. package/lib/chunks/TJ7HHRJ4.js +7 -0
  35. package/lib/chunks/TL7HAEZH.js +7 -0
  36. package/lib/chunks/{25GSVUWJ.js → TUQ63L64.js} +2 -2
  37. package/lib/chunks/{BDIXGM4J.js → UNIU37XO.js} +1 -1
  38. package/lib/chunks/UOCGOZU4.js +10 -0
  39. package/lib/chunks/{TXPH3EQR.js → UR4NENPV.js} +1 -1
  40. package/lib/chunks/UZA2PWNR.js +64 -0
  41. package/lib/chunks/{DDSMAYCX.js → V32LWM43.js} +2 -2
  42. package/lib/chunks/{JXLOSJZ3.js → VBRUPYPC.js} +1 -1
  43. package/lib/chunks/{LUHMTQUR.js → VDKON6HH.js} +2 -2
  44. package/lib/chunks/{7UNXSP4X.js → VGCI3TY4.js} +1 -1
  45. package/lib/chunks/{LBCASDYY.js → WLKQHUWK.js} +1 -1
  46. package/lib/chunks/WXUKMBZA.js +7 -0
  47. package/lib/chunks/{C65SIVY5.js → X4BGIKNX.js} +1 -1
  48. package/lib/chunks/{6P5CEWFQ.js → Z5NQGJIB.js} +1 -1
  49. package/lib/chunks/{AYXBQ5ZL.js → ZSWMJ3KA.js} +1 -1
  50. package/lib/chunks/ZTS6JG4V.js +7 -0
  51. package/lib/chunks/{HU2IUTZL.js → ZYGSFF34.js} +2 -2
  52. package/lib/eject-assets/generators/cli.mjs +39 -18
  53. package/lib/eject-assets/generators/sdk.mjs +1 -1
  54. package/lib/eject-assets/skills/cli-generator/SKILL.md +32 -3
  55. package/lib/index.js +126 -124
  56. package/package.json +1 -1
  57. package/lib/chunks/2VVGA7JY.js +0 -7
  58. package/lib/chunks/5KALNFRG.js +0 -8
  59. package/lib/chunks/DQWFUOGC.js +0 -25
  60. package/lib/chunks/HLD5FTSQ.js +0 -12
  61. package/lib/chunks/HY6IQ5MU.js +0 -10
@@ -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 Y}from"./BDIXGM4J.js";import{b as ee,d as te}from"./CDIETNM7.js";import"./ZXLNDDJH.js";import{a as h}from"./WZXA5XPB.js";import{a as Z}from"./YSMUBJCG.js";import{C as H,O as $,R as J,W as V,aa as W,c as q,ca as I,ja as Q,q as S,s as F}from"./C65SIVY5.js";import"./NEWT5A6S.js";import{b as M,c as R,g as D}from"./3XBPOSEL.js";import"./RFWIIJFG.js";import{mkdir as at,readFile as ct,writeFile as ut}from"node:fs/promises";import{dirname as $e,resolve as E,sep as ft}from"node:path";function A(e){return{requires:["sdk"],errorModes:["throw"],load:()=>import("./LUHMTQUR.js").then(t=>({run:t.tanstackQueryGenerator(e)}))}}var U={outputMode:"it always emits one self-contained file",runtime:"the runtime is always embedded in the generated file",argsStyle:"inputs follow the target language's own idiom",importExt:"the generated file has no relative imports"},G={sdk:{load:()=>import("./SQTDATOG.js").then(e=>({run:e.sdkGenerator,sample:e.sdkSample}))},zod:{load:()=>import("./MK4LHZVA.js").then(e=>({run:e.zodGenerator}))},transformers:{requires:["sdk"],dateTypes:["Date"],load:()=>import("./HLD5FTSQ.js").then(e=>({run:e.transformersGenerator}))},"tanstack-query":A("react"),"tanstack-query-vue":A("vue"),"tanstack-query-svelte":A("svelte"),"tanstack-query-solid":A("solid"),swr:{requires:["sdk"],errorModes:["throw"],load:()=>import("./25GSVUWJ.js").then(e=>({run:e.swrGenerator}))},mock:{requires:["sdk"],load:()=>import("./PYCIZVAB.js").then(e=>({run:e.mockGenerator}))},cli:{requires:["sdk","zod"],errorModes:["throw"],load:()=>import("./5KALNFRG.js").then(e=>({run:e.cliGenerator,sample:e.cliSample}))},"cli-docs":{requires:["cli"],errorModes:["throw"],notApplicable:{outputMode:"it emits one Markdown page",importExt:"a Markdown page has no imports",runtime:"a Markdown page embeds no runtime"},load:()=>import("./HY6IQ5MU.js").then(e=>({run:e.cliDocsGenerator,options:e.cliDocsOptions}))},python:{notApplicable:U,load:()=>import("./G332MANL.js").then(e=>({run:e.pythonGenerator,sample:e.pythonSample}))},go:{errorModes:["throw"],notApplicable:U,load:()=>import("./HU2IUTZL.js").then(e=>({run:e.goGenerator,sample:e.goSample}))},php:{errorModes:["throw"],notApplicable:U,load:()=>import("./DDSMAYCX.js").then(e=>({run:e.phpGenerator,sample:e.phpSample}))}},ke=[{option:"binName",generators:["cli","cli-docs"],reason:"it names the generated command"},{option:"goPackage",generators:["go"],reason:"it declares the Go package clause"}];function ne(e,t,n,r){let s=new Set(e);for(let{option:c,generators:u,reason:d}of ke)t[c]!==void 0&&!u.some(f=>s.has(f))&&$.warn(`generate-client: ${c} is ignored \u2014 ${d}, and no selected generator uses it (add --generator ${u[0]}).
7
+ import{a as T,b as Y}from"./UNIU37XO.js";import{b as ee,d as te}from"./OIU2WEB6.js";import{a as h}from"./WZXA5XPB.js";import{a as Z}from"./YSMUBJCG.js";import{C as H,O as $,R as J,W as V,aa as W,c as q,ca as I,ja as Q,q as S,s as F}from"./X4BGIKNX.js";import{b as M,c as R,g as D}from"./3XBPOSEL.js";import{mkdir as at,readFile as ct,writeFile as ut}from"node:fs/promises";import{dirname as $e,resolve as E,sep as ft}from"node:path";function A(e){return{requires:["sdk"],errorModes:["throw"],load:()=>import("./P5MHZLNH.js").then(t=>({run:t.tanstackQueryGenerator(e)}))}}var U={outputMode:"it always emits one self-contained file",runtime:"the runtime is always embedded in the generated file",argsStyle:"inputs follow the target language's own idiom",importExt:"the generated file has no relative imports"},G={sdk:{load:()=>import("./PM55MGY5.js").then(e=>({run:e.sdkGenerator,sample:e.sdkSample}))},zod:{load:()=>import("./JKEX4O5F.js").then(e=>({run:e.zodGenerator}))},transformers:{requires:["sdk"],dateTypes:["Date"],load:()=>import("./ZTS6JG4V.js").then(e=>({run:e.transformersGenerator}))},"tanstack-query":A("react"),"tanstack-query-vue":A("vue"),"tanstack-query-svelte":A("svelte"),"tanstack-query-solid":A("solid"),swr:{requires:["sdk"],errorModes:["throw"],load:()=>import("./AXKRK4C7.js").then(e=>({run:e.swrGenerator}))},mock:{requires:["sdk"],load:()=>import("./773S6JMM.js").then(e=>({run:e.mockGenerator}))},cli:{requires:["sdk","zod"],errorModes:["throw"],load:()=>import("./6V26I45B.js").then(e=>({run:e.cliGenerator,sample:e.cliSample}))},"cli-docs":{requires:["cli"],errorModes:["throw"],notApplicable:{outputMode:"it emits one Markdown page",importExt:"a Markdown page has no imports",runtime:"a Markdown page embeds no runtime"},load:()=>import("./TL7HAEZH.js").then(e=>({run:e.cliDocsGenerator,options:e.cliDocsOptions}))},python:{notApplicable:U,load:()=>import("./LRB2QBAP.js").then(e=>({run:e.pythonGenerator,sample:e.pythonSample}))},go:{errorModes:["throw"],notApplicable:U,load:()=>import("./WXUKMBZA.js").then(e=>({run:e.goGenerator,sample:e.goSample}))},php:{errorModes:["throw"],notApplicable:U,load:()=>import("./37BVUZUB.js").then(e=>({run:e.phpGenerator,sample:e.phpSample}))}},ke=[{option:"binName",generators:["cli","cli-docs"],reason:"it names the generated command"},{option:"goPackage",generators:["go"],reason:"it declares the Go package clause"}];function ne(e,t,n,r){let s=new Set(e);for(let{option:c,generators:u,reason:d}of ke)t[c]!==void 0&&!u.some(f=>s.has(f))&&$.warn(`generate-client: ${c} is ignored \u2014 ${d}, and no selected generator uses it (add --generator ${u[0]}).
8
8
  `);let o=t.errorMode??"throw",i=t.dateType??"string",a=t.runtime??"inline";for(let c of e){let u=n.get(c);if(!u)throw new h(`Unknown generator: ${c}`);for(let f of u.requires??[])if(!s.has(f)){let m=[...new Set([f,...e])].map(l=>`--generator ${l}`).join(" ");throw new h(`The "${c}" generator requires the "${f}" generator. Add it, e.g. ${m}.`)}if(u.errorModes&&!u.errorModes.includes(o))throw new h(`The "${c}" generator does not support --error-mode "${o}" (supported: ${u.errorModes.join(", ")}).`);if(u.dateTypes&&!u.dateTypes.includes(i))throw new h(`The "${c}" generator requires --date-type ${u.dateTypes.join(" or ")} (got "${i}") so the runtime values match the generated types.`);if(u.runtimes&&!u.runtimes.includes(a))throw new h(`The "${c}" generator does not support runtime "${a}" (supported: ${u.runtimes.join(", ")}).`);let d={...t,outputMode:r};for(let[f,m]of Object.entries(u.notApplicable??{}))d[f]!==void 0&&$.warn(`generate-client: the "${c}" generator ignores ${f} \u2014 ${m}.
9
9
  `)}}function re(e,t,n){let r=new Map;for(let s of e){let o=t.get(s)?.options,i=n?.[s];if(o===void 0){i!==void 0&&$.warn(`generate-client: the "${s}" generator declares no options, so client.options.${s} is ignored.
10
10
  `),r.set(s,{});continue}r.set(s,Se(s,o,i))}return r}function Se(e,t,n){if(n!==void 0&&!q(n))throw new h(`The "${e}" generator's options must be a map of option names to values.`);let r=n??{},s=Object.keys(t.properties);if(t.additionalProperties!==!0){for(let i of Object.keys(r))if(!s.includes(i))throw new h(`The "${e}" generator got an unknown option "${i}". Declared options: ${s.join(", ")||"(none)"}.`)}for(let i of t.required??[])if(r[i]===void 0)throw new h(`The "${e}" generator requires the "${i}" option.`);let o={...r};for(let[i,a]of Object.entries(t.properties)){if(o[i]===void 0){a.default!==void 0&&(o[i]=a.default);continue}let c=ve(a,o[i]);if(c!==void 0)throw new h(`The "${e}" generator's "${i}" ${c}.`)}return o}function ve(e,t){if("enum"in e)return e.enum.includes(t)?void 0:`must be one of: ${e.enum.join(", ")}`;if(e.type==="array"){let n=e.items.type;return Array.isArray(t)&&t.every(r=>typeof r===n)?void 0:`must be an array of ${n}`}return typeof t===e.type?void 0:`must be a ${e.type}`}import{isAbsolute as Oe,resolve as qe}from"node:path";import{pathToFileURL as xe}from"node:url";async function se(e,t={}){let n=new Map;for(let a of t.customGenerators??[])ie(n,a);let r=[];for(let a of e)r.push(await oe(a,n,t.configDir));let s=[],o=new Set,i=async a=>{if(!(s.includes(a)||o.has(a))){o.add(a);for(let c of n.get(a).requires??[])(n.has(c)||c in G)&&await i(await oe(c,n,t.configDir));o.delete(a),s.push(a)}};for(let a of r)await i(a);return{selected:s,registry:n}}async function oe(e,t,n){if(t.has(e))return e;let r=G[e];if(r!==void 0){let{load:o,...i}=r;return t.set(e,{...i,...await o()}),e}let s=await Pe(e,n??process.cwd());return ie(t,s),s.name}function ie(e,t){if(!q(t)||typeof t.name!="string"||t.name===""||typeof t.run!="function")throw new h("Invalid custom generator: expected an object with a non-empty string `name` and a `run` function (build one with `defineGenerator`).");if(e.has(t.name))throw new h(`Generator name "${t.name}" collides with an existing generator. Rename the custom generator.`);if(t.requiresGenerator!==void 0){let n=Y(T,t.requiresGenerator);if(n===void 0)throw new h(`Generator "${t.name}" declares requiresGenerator "${t.requiresGenerator}", which is not a range we read. Use ^1.2.0, ~1.2.0, >=1.2.0, or an exact version.`);if(!n)throw new h(`Generator "${t.name}" needs @redocly/client-generator ${t.requiresGenerator}; this CLI ships ${T}. Upgrade @redocly/cli if the generator is newer, or update the generator \u2014 \`redocly eject-generator <name> --update\` for an ejected file, or upgrade its package.`)}t.name in G&&$.warn(`generate-client: custom generator "${t.name}" takes over the built-in generator of the same name.
@@ -13,4 +13,4 @@ import{a as T,b as Y}from"./BDIXGM4J.js";import{b as ee,d as te}from"./CDIETNM7.
13
13
  `),n.push({kind:"apiKeyCookie",key:r,cookieName:o.name}))}return n}function Ce(e,t,n){let r=e.security??t.security;if(!r)return[];let s=[];for(let o of r){let i=Object.keys(o);i.length!==0&&i.every(a=>n.has(a))&&s.push([...new Set(i)])}return s}function Be(e){let t=e.components?.schemas;return t?Object.entries(t).map(([n,r])=>{if(S(r)){let o=le(e,r.$ref);return{name:n,schema:x(o,`components.schemas.${n}`,e),description:o.description}}let s=x(r,`components.schemas.${n}`,e);return{name:n,schema:s,description:r.description}}):[]}function Le(e,t){let n=new Set(t.map(i=>i.key)),r=[],s=new Set;for(let[i,a]of Object.entries(e.paths??{})){if(!a)continue;let c=v(e,a),u=(c.parameters??[]).map(d=>he(v(e,d),`paths.${i}.parameters`,e));for(let d of Me){let f=c[d];f&&(r.push({method:d,path:i,operation:f,pathLevelParams:u}),f.operationId&&s.add(f.operationId))}}return[{name:"Default",operations:r.map(i=>{let a=i.operation.operationId??_e(ze(i.method,i.path),s);return Xe(i.method,i.path,i.operation,a,i.pathLevelParams,e,n)})}]}function ze(e,t){let n=t.split("/").filter(Boolean).map(r=>Ke(r.replace(/[{}]/g,"")));return`${e}${n.join("")}`}function Ke(e){return e.split(/[^A-Za-z0-9]+/).filter(Boolean).map(t=>t[0].toUpperCase()+t.slice(1)).join("")}function _e(e,t){let n=e,r=2;for(;t.has(n);)n=`${e}${r++}`;return t.add(n),n}function Xe(e,t,n,r,s,o,i){let a=(n.parameters??[]).map(y=>he(v(o,y),`paths.${t}.${e}.parameters`,o)),c=new Set,u=[];for(let y of a)c.add(`${y.in}:${y.name}`),u.push(y);for(let y of s)c.has(`${y.in}:${y.name}`)||u.push(y);let d=u.filter(y=>y.in==="path"),f=u.filter(y=>y.in==="query"),m=u.filter(y=>y.in==="header"),l=u.filter(y=>y.in==="cookie"),p=n.requestBody?Fe(v(o,n.requestBody),`${e} ${t}`,o):void 0,{successResponses:g,successResponseHeaders:k}=He(n,t,o),P=Ve(n,t,o),N=Ce(n,o,i),X=n["x-redoclyPagination"];return{name:r,method:e,path:t,summary:n.summary,description:n.description,pathParams:d,queryParams:f,headerParams:m,cookieParams:l,requestBody:p,successResponses:g,...k===void 0?{}:{successResponseHeaders:k},errorResponses:P,security:N,tags:Array.isArray(n.tags)?n.tags.filter(y=>typeof y=="string"):[],...X!==void 0?{paginationExtension:X}:{}}}function he(e,t,n){if(!e.in)throw new h(`Parameter ${e.name} at ${t} is missing "in"`);if(!["path","query","header","cookie"].includes(e.in))throw new h(`Unsupported parameter location "${e.in}" for ${e.name} at ${t}`);let r=O(e.schema,`${t}.${e.name}`,n);e.deprecated===!0&&(r={...r,metadata:z(r.metadata,{deprecated:!0})});let s={name:e.name,in:e.in,schema:r,required:!!e.required,description:e.description};if(s.in==="query"){let o=e;(o.style==="form"||o.style==="spaceDelimited"||o.style==="pipeDelimited"||o.style==="deepObject")&&(s.style=o.style),typeof o.explode=="boolean"&&(s.explode=o.explode),typeof o.allowReserved=="boolean"&&(s.allowReserved=o.allowReserved)}return s}function Fe(e,t,n){let r=e.content??{},s=r["application/json"]??r["application/merge-patch+json"]??r["application/x-www-form-urlencoded"]??r["multipart/form-data"]??Object.values(r)[0];if(!s)return;let o=Object.keys(r).find(a=>r[a]===s),i=O(s.schema,`${t}.requestBody`,n);return{contentType:o,schema:i,required:!!e.required,description:e.description}}function He(e,t,n){let r=e.responses??{},s=Object.keys(r).filter(m=>/^2\d\d$/.test(m));s.length===0&&(r["2XX"]?s.push("2XX"):r.default&&s.push("default"));let o=s[0];if(!o)return{successResponses:[]};let i=r[o];if(!i)return{successResponses:[]};let a=v(n,i),c=Je(a.headers,`paths.${t}.response.${o}`,n),u=a.content;if(!u)return{successResponses:[],...c===void 0?{}:{successResponseHeaders:c}};let d=o==="default"||o==="2XX"?o:Number(o),f=[];for(let[m,l]of Object.entries(u)){let p=O(l.schema,`paths.${t}.response.${o}.${m}`,n),g=l.itemSchema,k=g!==void 0?O(g,`paths.${t}.response.${o}.${m}.itemSchema`,n):void 0;f.push({contentType:m,schema:p,status:d,...k===void 0?{}:{itemSchema:k}})}return{successResponses:f,...c===void 0?{}:{successResponseHeaders:c}}}function Je(e,t,n){if(!e)return;let r=[];for(let[s,o]of Object.entries(e)){let i=v(n,o),a={name:s.toLowerCase(),schema:O(i.schema===void 0?void 0:v(n,i.schema),`${t}.headers.${s}`,n)};i.required===!0&&(a.required=!0),r.push(a)}return r.length>0?r:void 0}function Ve(e,t,n){let r=e.responses??{},s=Object.keys(r).filter(a=>/^([45]\d\d|4XX|5XX)$/.test(a));Object.keys(r).some(a=>/^(2\d\d|2XX)$/.test(a))&&r.default&&s.push("default");let i=[];for(let a of s){let c=r[a];if(!c)continue;let d=v(n,c).content;if(!d)continue;let f=a==="default"||a==="4XX"||a==="5XX"?a:Number(a);for(let[m,l]of Object.entries(d)){let p=O(l.schema,`paths.${t}.response.${a}.${m}`,n);i.push({contentType:m,schema:p,status:f})}}return i}function O(e,t,n){return e===void 0||typeof e=="boolean"?{kind:"unknown"}:S(e)?{kind:"ref",name:j(e.$ref)}:x(e,t,n)}function x(e,t,n){let r=Ae(e),s=e.oneOf??e.anyOf;if(s){let a=s.map((d,f)=>S(d)?{kind:"ref",name:j(d.$ref)}:x(d,`${t}.[${f}]`,n)),c=Te(a);if(c.length===1&&c.length<a.length){let d=c[0];return{...d,description:d.description??e.description,metadata:z(r,d.metadata)}}let u=Ge(e,s);return b({kind:"union",members:c,discriminator:u,description:e.description},r)}if(e.allOf){let a=e.allOf.map((u,d)=>S(u)?{kind:"ref",name:j(u.$ref)}:x(u,`${t}.allOf[${d}]`,n)),c=de(e,t,n);if(c.length>0&&a.unshift({kind:"object",properties:c}),a.length===1){let u=a[0];return{...u,description:u.description??e.description,metadata:z(r,u.metadata)}}return b({kind:"intersection",members:a,description:e.description},r)}let o=e.type;if(Array.isArray(o)){let a=o.filter(d=>d!=="null"),c=o.includes("null"),u=a.map(d=>{let f={...e,type:d};if(Array.isArray(f.enum)){let m=f.enum.filter(l=>l!==null);f.enum=m.length>0?m:void 0}return x(f,t,n)});return c&&u.push({kind:"null"}),u.length===1?u[0]:b({kind:"union",members:u,description:e.description},r)}if(e.nullable)return{kind:"union",members:[x({...e,nullable:void 0},t,n),{kind:"null"}],description:e.description};if(e.const!==void 0){let a=e.const;if(typeof a!="string"&&typeof a!="number"&&typeof a!="boolean")throw new h(`Unsupported const value at ${t}: ${JSON.stringify(a)}`);return b({kind:"literal",value:a,description:e.description},r)}if(e.enum){let a=e.enum,c=a.filter(m=>m!==null),u=c.length!==a.length;if(c.length===0)return b({kind:"null",description:e.description},r);let d=We(c,t),f=d==="boolean"?{kind:"scalar",scalar:"boolean",description:e.description}:{kind:"enum",values:c,scalar:d,description:e.description};return b(u?{kind:"union",members:[f,{kind:"null"}],description:e.description}:f,r)}let i=o;if(i==="null")return b({kind:"null",description:e.description},r);if(i==="array"){let a=e.items,c=O(a,`${t}.items`,n);return b({kind:"array",items:c,description:e.description},r)}if(i==="object"||e.properties||e.additionalProperties){let a=de(e,t,n),c=e.additionalProperties;if(a.length===0&&c!==!1){let u=O(c,`${t}.additionalProperties`,n);return b({kind:"record",value:u,description:e.description},r)}return b({kind:"object",properties:a,description:e.description},r)}return b(i==="string"||i==="number"||i==="integer"||i==="boolean"?{kind:"scalar",scalar:i,description:e.description}:{kind:"unknown",description:e.description},r)}function We(e,t){let n=!1,r=!1,s=!1;for(let o of e)if(typeof o=="string")n=!0;else if(typeof o=="number")r=!0;else if(typeof o=="boolean")s=!0;else throw new h(`Unsupported enum value type at ${t}: ${JSON.stringify(o)}`);return n&&!r&&!s?"string":r&&!n&&!s?"number":s&&!n&&!r?"boolean":"string"}function Qe(e){return!(e.openapi??"").startsWith("3.0")}function de(e,t,n){let r=e.properties??{},s=new Set(e.required??[]),o=Qe(n);return Object.entries(r).map(([i,a])=>{let c=a.readOnly===!0;c&&S(a)&&!o&&$.warn(`generate-client: "${i}" declares readOnly beside a $ref, which OpenAPI ${n.openapi} ignores \u2014 the property stays in request bodies. Inline the schema, wrap the $ref in allOf, or move the description to OpenAPI 3.1.
14
14
  `);let u=c&&(o||!S(a));return{name:i,schema:O(a,`${t}.${i}`,n),required:s.has(i),description:a.description,...u?{readOnly:!0}:{}}})}function ye(e){let t=K(e),n={...t};delete n.swagger,delete n.host,delete n.basePath,delete n.schemes,delete n.definitions,delete n.securityDefinitions,delete n.consumes,delete n.produces,delete n.parameters,delete n.responses,n.openapi="3.0.3";let r=Ye(t);return r&&(n.servers=r),n.components=Ze(t),n.paths=rt(t.paths??{},t.consumes??void 0,t.produces??void 0),n}function Ye(e){let t=e.host,n=e.basePath??"",r=(e.schemes??["https"])[0]??"https";if(t)return[{url:`${r}://${t}${n}`}]}function Ze(e){let t={};e.definitions&&(t.schemas=e.definitions),e.parameters&&(t.parameters=Object.fromEntries(Object.entries(e.parameters).map(([r,s])=>[r,_(s)]))),e.responses&&(t.responses=we(e.responses,void 0));let n=e.securityDefinitions;if(n){let r={};for(let[s,o]of Object.entries(n))r[s]=et(o);t.securitySchemes=r}return t}function et(e){switch(e.type){case"basic":return{type:"http",scheme:"basic"};case"apiKey":return{type:"apiKey",name:e.name,in:e.in};case"oauth2":{let t=e.flow==="accessCode"?"authorizationCode":e.flow==="application"?"clientCredentials":e.flow,n={scopes:e.scopes??{}};return e.authorizationUrl&&(n.authorizationUrl=e.authorizationUrl),e.tokenUrl&&(n.tokenUrl=e.tokenUrl),{type:"oauth2",flows:{[t]:n}}}default:return e}}function K(e){if(Array.isArray(e))return e.map(K);if(q(e)){let t={};for(let[n,r]of Object.entries(e))n==="$ref"&&typeof r=="string"?t.$ref=r.replace("#/definitions/","#/components/schemas/").replace("#/parameters/","#/components/parameters/").replace("#/responses/","#/components/responses/"):t[n]=K(r);return t}return e}var tt="application/json",nt="application/json",ge=new Set(["name","in","required","description","deprecated","allowEmptyValue","collectionFormat"]);function rt(e,t,n){let r={};for(let[s,o]of Object.entries(e)){let i=o,a={};for(let[c,u]of Object.entries(i)){if(c==="parameters"&&Array.isArray(u)){a.parameters=u.map(_);continue}if(!ot(c)){a[c]=u;continue}a[c]=st(u,t,n)}r[s]=a}return r}function ot(e){return["get","put","post","delete","options","head","patch"].includes(e.toLowerCase())}function st(e,t,n){let r=e.consumes??t,s=e.produces??n,o=e.parameters??[],i=o.find(f=>f.in==="body"),a=o.filter(f=>f.in==="formData"),c=o.filter(f=>f.in!=="body"&&f.in!=="formData").map(_),u={...e,parameters:c};delete u.consumes,delete u.produces;let d=r?.[0]??tt;if(i)u.requestBody={required:!!i.required,content:{[d]:{schema:i.schema}}};else if(a.length>0){let f={},m=[];for(let g of a)f[g.name]=it(g),g.required&&m.push(g.name);let l={type:"object",properties:f};m.length>0&&(l.required=m);let p=r?.find(g=>g==="multipart/form-data")??r?.[0]??"application/x-www-form-urlencoded";u.requestBody={required:m.length>0,content:{[p]:{schema:l}}}}return e.responses&&(u.responses=we(e.responses,s)),u}function _(e){if(e.$ref!==void 0||e.in==="body"||e.in==="formData")return e;let t={},n={};for(let[r,s]of Object.entries(e))ge.has(r)?t[r]=s:n[r]=s;if(t.schema=n,delete t.collectionFormat,e.in==="query"&&n.type==="array"){let r=e.collectionFormat??"csv";r!=="multi"&&(t.style=r==="ssv"?"spaceDelimited":r==="pipes"?"pipeDelimited":"form",t.explode=!1)}return t}function it(e){let t={};for(let[n,r]of Object.entries(e))ge.has(n)||(t[n]=r);return t}function we(e,t){let n=t?.[0]??nt,r={};for(let[s,o]of Object.entries(e)){let i=o;if(i.schema===void 0){r[s]=i;continue}let{schema:a,...c}=i;r[s]={...c,content:{[n]:{schema:a}}}}return r}async function be(e,t){let n=t??await I({}),r=await W({ref:e,config:n}),s=await I({rules:{struct:"error"}}),o=await Q({externalRefResolver:new V,document:r.bundle,config:s}),i=[...r.problems,...o].filter(c=>c.severity==="error");if(i.length>0){let c=i.map(u=>`- ${u.message} (at ${u.location?.[0]?.pointer??e})`).join(`
15
15
  `);throw new Error(`The API description has ${i.length} error(s):
16
- ${c}`)}let a=r.bundle.parsed;return{document:a,version:J(a)}}function pt(e,t){let n=[],r=new Set,s=E($e(t.outputPath));for(let o of t.generators){let i=t.registry.get(o),a;try{a=i.run({model:e,outputPath:t.outputPath,outputMode:t.outputMode,emit:t.emit,selected:t.generators,options:t.generatorOptions?.get(o)??{}})}catch(c){let u=c instanceof Error?c.message:String(c);throw new Error(`Generator "${o}" failed: ${u}`)}if(!Array.isArray(a)||a.some(c=>typeof c?.path!="string"||c.path===""||typeof c.content!="string"))throw new Error(`Generator "${o}" failed: run() must return an array of { path, content } files.`);for(let c of a){let u=E(s,c.path);if(u!==s&&!u.startsWith(s+ft))throw new Error(`Generator "${o}" failed: file path escapes the output directory: ${c.path}`);if(r.has(c.path))throw new Error(`Generator conflict: ${c.path} already emitted by an earlier generator`);r.add(c.path),n.push(c)}}return n}function dt(e,t,n,r){let s=[];for(let o of Z(e.services)){let i=n.map(a=>r.get(a)?.sample?.(o,{model:e,emit:t})).filter(a=>a!==void 0);i.length>0&&s.push({target:`$.paths['${o.path.replaceAll("'","''")}'].${o.method}`,update:{"x-codeSamples":i}})}if(s.length!==0)return H({overlay:"1.0.0",info:{title:`Code samples for ${e.title}`,version:e.version},actions:s})}async function Yt(e){if(e.output.split(/[\\/]/).some(p=>p==="undefined"||p==="null"))throw new Error(`output path "${e.output}" contains a literal "undefined" or "null" segment \u2014 this looks like an interpolation bug in the caller`);if(e.setup&&/^[a-z][a-z0-9+.-]+:/i.test(e.setup))throw new h(`setup must be a local file path \u2014 remote setup modules are not supported (got: ${e.setup})`);let t=E(e.output),{document:n,version:r}=await be(e.api,e.config),s=r==="oas2"?ye(n):n,o=me(s),i;if(e.setup){let{bakeSetup:p}=await import("./L5QMCITI.js"),g=E(e.configDir??process.cwd(),e.setup);i=p(await ct(g,"utf-8"))}let a=e.generators?.length?e.generators:["sdk"],{selected:c,registry:u}=await se(a,{customGenerators:e.customGenerators,configDir:e.configDir}),d={serverUrl:e.serverUrl,argsStyle:e.argsStyle,errorMode:e.errorMode,dateType:e.dateType,mockData:e.mockData,mockSeed:e.mockSeed,queryKeyPrefix:e.queryKeyPrefix,setup:i,runtime:e.runtime,importExt:e.importExt,binName:e.binName,goPackage:e.goPackage,pagination:e.pagination};ne(c,d,u,e.outputMode);let f=re(c,u,e.options),m=pt(o,{outputPath:t,outputMode:e.outputMode??"single",emit:d,generators:c,generatorOptions:f,registry:u});if(e.codeSamples===!0){let p=dt(o,d,c,u);p!==void 0&&m.push({path:t.replace(/\.[^.]+$/,".code-samples.yaml"),content:p})}let l=[];for(let p of m)await at($e(p.path),{recursive:!0}),await ut(p.path,p.content,"utf-8"),l.push({path:p.path,bytes:Buffer.byteLength(p.content,"utf-8")});return{outputPath:t,bytes:l.reduce((p,g)=>p+g.bytes,0),files:l}}export{Yt as generateClient,pt as runGenerators};
16
+ ${c}`)}let a=r.bundle.parsed;return{document:a,version:J(a)}}function pt(e,t){let n=[],r=new Set,s=E($e(t.outputPath));for(let o of t.generators){let i=t.registry.get(o),a;try{a=i.run({model:e,outputPath:t.outputPath,outputMode:t.outputMode,emit:t.emit,selected:t.generators,options:t.generatorOptions?.get(o)??{}})}catch(c){let u=c instanceof Error?c.message:String(c);throw new Error(`Generator "${o}" failed: ${u}`)}if(!Array.isArray(a)||a.some(c=>typeof c?.path!="string"||c.path===""||typeof c.content!="string"))throw new Error(`Generator "${o}" failed: run() must return an array of { path, content } files.`);for(let c of a){let u=E(s,c.path);if(u!==s&&!u.startsWith(s+ft))throw new Error(`Generator "${o}" failed: file path escapes the output directory: ${c.path}`);if(r.has(c.path))throw new Error(`Generator conflict: ${c.path} already emitted by an earlier generator`);r.add(c.path),n.push(c)}}return n}function dt(e,t,n,r){let s=[];for(let o of Z(e.services)){let i=n.map(a=>r.get(a)?.sample?.(o,{model:e,emit:t})).filter(a=>a!==void 0);i.length>0&&s.push({target:`$.paths['${o.path.replaceAll("'","''")}'].${o.method}`,update:{"x-codeSamples":i}})}if(s.length!==0)return H({overlay:"1.0.0",info:{title:`Code samples for ${e.title}`,version:e.version},actions:s})}async function Yt(e){if(e.output.split(/[\\/]/).some(p=>p==="undefined"||p==="null"))throw new Error(`output path "${e.output}" contains a literal "undefined" or "null" segment \u2014 this looks like an interpolation bug in the caller`);if(e.setup&&/^[a-z][a-z0-9+.-]+:/i.test(e.setup))throw new h(`setup must be a local file path \u2014 remote setup modules are not supported (got: ${e.setup})`);let t=E(e.output),{document:n,version:r}=await be(e.api,e.config),s=r==="oas2"?ye(n):n,o=me(s),i;if(e.setup){let{bakeSetup:p}=await import("./L5QMCITI.js"),g=E(e.configDir??process.cwd(),e.setup);i=p(await ct(g,"utf-8"))}let a=e.generators?.length?e.generators:["sdk"],{selected:c,registry:u}=await se(a,{customGenerators:e.customGenerators,configDir:e.configDir}),d={serverUrl:e.serverUrl,argsStyle:e.argsStyle,errorMode:e.errorMode,dateType:e.dateType,mockData:e.mockData,mockSeed:e.mockSeed,queryKeyPrefix:e.queryKeyPrefix,setup:i,runtime:e.runtime,importExt:e.importExt,binName:e.binName,goPackage:e.goPackage,pagination:e.pagination};ne(c,d,u,e.outputMode);let f=re(c,u,e.options),m=pt(o,{outputPath:t,outputMode:e.outputMode??"single",emit:d,generators:c,generatorOptions:f,registry:u});if(e.codeSamples===!0){let p=dt(o,d,c,u);p!==void 0&&m.push({path:t.replace(/\.[^.]+$/,".code-samples.yaml"),content:p})}let l=[];for(let p of m)await at($e(p.path),{recursive:!0}),await ut(p.path,p.content,"utf-8"),l.push({path:p.path,bytes:Buffer.byteLength(p.content,"utf-8")});return{outputPath:t,bytes:l.reduce((p,g)=>p+g.bytes,0),files:l}}export{G as a,ne as b,pt as c,Yt as d};
@@ -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{la as e}from"./C65SIVY5.js";var t=class extends Error{};function o(r){throw new e(r)}export{t as a,o as b};
7
+ import{la as e}from"./X4BGIKNX.js";var t=class extends Error{};function o(r){throw new e(r)}export{t as a,o as b};
@@ -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{c as Wz,e as jz}from"./OBMFFMGK.js";import{b as g1}from"./3IIQ4P4P.js";import{a as tre,b as nre}from"./O6PRCLSV.js";import{a as ere}from"./RS5PUOTT.js";import"./32XCOMOR.js";import{d as Uz,e as Hz}from"./AYXBQ5ZL.js";import{O as zv,k as Jne,s as p1,v as zz,w as $ne}from"./C65SIVY5.js";import"./NEWT5A6S.js";import{a as Fr,b as Bz,c as V,d as Kne,e as Bv,f as Zne}from"./RFWIIJFG.js";var Yz=V((Vz,Gz)=>{(function(){var e=function(t){var n=new e.Builder;return n.pipeline.add(e.trimmer,e.stopWordFilter,e.stemmer),n.searchPipeline.add(e.stemmer),t.call(n,n),n.build()};e.version="2.3.9";e.utils={},e.utils.warn=(function(t){return function(n){t.console&&console.warn&&console.warn(n)}})(this),e.utils.asString=function(t){return t==null?"":t.toString()},e.utils.clone=function(t){if(t==null)return t;for(var n=Object.create(null),r=Object.keys(t),i=0;i<r.length;i++){var o=r[i],s=t[o];if(Array.isArray(s)){n[o]=s.slice();continue}if(typeof s=="string"||typeof s=="number"||typeof s=="boolean"){n[o]=s;continue}throw new TypeError("clone is not deep and does not support nested objects")}return n},e.FieldRef=function(t,n,r){this.docRef=t,this.fieldName=n,this._stringValue=r},e.FieldRef.joiner="/",e.FieldRef.fromString=function(t){var n=t.indexOf(e.FieldRef.joiner);if(n===-1)throw"malformed field ref string";var r=t.slice(0,n),i=t.slice(n+1);return new e.FieldRef(i,r,t)},e.FieldRef.prototype.toString=function(){return this._stringValue==null&&(this._stringValue=this.fieldName+e.FieldRef.joiner+this.docRef),this._stringValue};e.Set=function(t){if(this.elements=Object.create(null),t){this.length=t.length;for(var n=0;n<this.length;n++)this.elements[t[n]]=!0}else this.length=0},e.Set.complete={intersect:function(t){return t},union:function(){return this},contains:function(){return!0}},e.Set.empty={intersect:function(){return this},union:function(t){return t},contains:function(){return!1}},e.Set.prototype.contains=function(t){return!!this.elements[t]},e.Set.prototype.intersect=function(t){var n,r,i,o=[];if(t===e.Set.complete)return this;if(t===e.Set.empty)return t;this.length<t.length?(n=this,r=t):(n=t,r=this),i=Object.keys(n.elements);for(var s=0;s<i.length;s++){var a=i[s];a in r.elements&&o.push(a)}return new e.Set(o)},e.Set.prototype.union=function(t){return t===e.Set.complete?e.Set.complete:t===e.Set.empty?this:new e.Set(Object.keys(this.elements).concat(Object.keys(t.elements)))},e.idf=function(t,n){var r=0;for(var i in t)i!="_index"&&(r+=Object.keys(t[i]).length);var o=(n-r+.5)/(r+.5);return Math.log(1+Math.abs(o))},e.Token=function(t,n){this.str=t||"",this.metadata=n||{}},e.Token.prototype.toString=function(){return this.str},e.Token.prototype.update=function(t){return this.str=t(this.str,this.metadata),this},e.Token.prototype.clone=function(t){return t=t||function(n){return n},new e.Token(t(this.str,this.metadata),this.metadata)};e.tokenizer=function(t,n){if(t==null||t==null)return[];if(Array.isArray(t))return t.map(function(d){return new e.Token(e.utils.asString(d).toLowerCase(),e.utils.clone(n))});for(var r=t.toString().toLowerCase(),i=r.length,o=[],s=0,a=0;s<=i;s++){var l=r.charAt(s),c=s-a;if(l.match(e.tokenizer.separator)||s==i){if(c>0){var y=e.utils.clone(n)||{};y.position=[a,c],y.index=o.length,o.push(new e.Token(r.slice(a,s),y))}a=s+1}}return o},e.tokenizer.separator=/[\s\-]+/;e.Pipeline=function(){this._stack=[]},e.Pipeline.registeredFunctions=Object.create(null),e.Pipeline.registerFunction=function(t,n){n in this.registeredFunctions&&e.utils.warn("Overwriting existing registered function: "+n),t.label=n,e.Pipeline.registeredFunctions[t.label]=t},e.Pipeline.warnIfFunctionNotRegistered=function(t){var n=t.label&&t.label in this.registeredFunctions;n||e.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index.
7
+ import{c as Wz,e as jz}from"./LRMVHK22.js";import{b as g1}from"./2QYG7XRR.js";import{a as tre,b as nre}from"./O6PRCLSV.js";import{a as ere}from"./RS5PUOTT.js";import{d as Uz,e as Hz}from"./ZSWMJ3KA.js";import"./32XCOMOR.js";import{O as zv,k as Jne,s as p1,v as zz,w as $ne}from"./X4BGIKNX.js";import"./NEWT5A6S.js";import{a as Fr,b as Bz,c as V,d as Kne,e as Bv,f as Zne}from"./RFWIIJFG.js";var Yz=V((Vz,Gz)=>{(function(){var e=function(t){var n=new e.Builder;return n.pipeline.add(e.trimmer,e.stopWordFilter,e.stemmer),n.searchPipeline.add(e.stemmer),t.call(n,n),n.build()};e.version="2.3.9";e.utils={},e.utils.warn=(function(t){return function(n){t.console&&console.warn&&console.warn(n)}})(this),e.utils.asString=function(t){return t==null?"":t.toString()},e.utils.clone=function(t){if(t==null)return t;for(var n=Object.create(null),r=Object.keys(t),i=0;i<r.length;i++){var o=r[i],s=t[o];if(Array.isArray(s)){n[o]=s.slice();continue}if(typeof s=="string"||typeof s=="number"||typeof s=="boolean"){n[o]=s;continue}throw new TypeError("clone is not deep and does not support nested objects")}return n},e.FieldRef=function(t,n,r){this.docRef=t,this.fieldName=n,this._stringValue=r},e.FieldRef.joiner="/",e.FieldRef.fromString=function(t){var n=t.indexOf(e.FieldRef.joiner);if(n===-1)throw"malformed field ref string";var r=t.slice(0,n),i=t.slice(n+1);return new e.FieldRef(i,r,t)},e.FieldRef.prototype.toString=function(){return this._stringValue==null&&(this._stringValue=this.fieldName+e.FieldRef.joiner+this.docRef),this._stringValue};e.Set=function(t){if(this.elements=Object.create(null),t){this.length=t.length;for(var n=0;n<this.length;n++)this.elements[t[n]]=!0}else this.length=0},e.Set.complete={intersect:function(t){return t},union:function(){return this},contains:function(){return!0}},e.Set.empty={intersect:function(){return this},union:function(t){return t},contains:function(){return!1}},e.Set.prototype.contains=function(t){return!!this.elements[t]},e.Set.prototype.intersect=function(t){var n,r,i,o=[];if(t===e.Set.complete)return this;if(t===e.Set.empty)return t;this.length<t.length?(n=this,r=t):(n=t,r=this),i=Object.keys(n.elements);for(var s=0;s<i.length;s++){var a=i[s];a in r.elements&&o.push(a)}return new e.Set(o)},e.Set.prototype.union=function(t){return t===e.Set.complete?e.Set.complete:t===e.Set.empty?this:new e.Set(Object.keys(this.elements).concat(Object.keys(t.elements)))},e.idf=function(t,n){var r=0;for(var i in t)i!="_index"&&(r+=Object.keys(t[i]).length);var o=(n-r+.5)/(r+.5);return Math.log(1+Math.abs(o))},e.Token=function(t,n){this.str=t||"",this.metadata=n||{}},e.Token.prototype.toString=function(){return this.str},e.Token.prototype.update=function(t){return this.str=t(this.str,this.metadata),this},e.Token.prototype.clone=function(t){return t=t||function(n){return n},new e.Token(t(this.str,this.metadata),this.metadata)};e.tokenizer=function(t,n){if(t==null||t==null)return[];if(Array.isArray(t))return t.map(function(d){return new e.Token(e.utils.asString(d).toLowerCase(),e.utils.clone(n))});for(var r=t.toString().toLowerCase(),i=r.length,o=[],s=0,a=0;s<=i;s++){var l=r.charAt(s),c=s-a;if(l.match(e.tokenizer.separator)||s==i){if(c>0){var y=e.utils.clone(n)||{};y.position=[a,c],y.index=o.length,o.push(new e.Token(r.slice(a,s),y))}a=s+1}}return o},e.tokenizer.separator=/[\s\-]+/;e.Pipeline=function(){this._stack=[]},e.Pipeline.registeredFunctions=Object.create(null),e.Pipeline.registerFunction=function(t,n){n in this.registeredFunctions&&e.utils.warn("Overwriting existing registered function: "+n),t.label=n,e.Pipeline.registeredFunctions[t.label]=t},e.Pipeline.warnIfFunctionNotRegistered=function(t){var n=t.label&&t.label in this.registeredFunctions;n||e.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index.
8
8
  `,t)},e.Pipeline.load=function(t){var n=new e.Pipeline;return t.forEach(function(r){var i=e.Pipeline.registeredFunctions[r];if(i)n.add(i);else throw new Error("Cannot load unregistered function: "+r)}),n},e.Pipeline.prototype.add=function(){var t=Array.prototype.slice.call(arguments);t.forEach(function(n){e.Pipeline.warnIfFunctionNotRegistered(n),this._stack.push(n)},this)},e.Pipeline.prototype.after=function(t,n){e.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(t);if(r==-1)throw new Error("Cannot find existingFn");r=r+1,this._stack.splice(r,0,n)},e.Pipeline.prototype.before=function(t,n){e.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(t);if(r==-1)throw new Error("Cannot find existingFn");this._stack.splice(r,0,n)},e.Pipeline.prototype.remove=function(t){var n=this._stack.indexOf(t);n!=-1&&this._stack.splice(n,1)},e.Pipeline.prototype.run=function(t){for(var n=this._stack.length,r=0;r<n;r++){for(var i=this._stack[r],o=[],s=0;s<t.length;s++){var a=i(t[s],s,t);if(!(a==null||a===""))if(Array.isArray(a))for(var l=0;l<a.length;l++)o.push(a[l]);else o.push(a)}t=o}return t},e.Pipeline.prototype.runString=function(t,n){var r=new e.Token(t,n);return this.run([r]).map(function(i){return i.toString()})},e.Pipeline.prototype.reset=function(){this._stack=[]},e.Pipeline.prototype.toJSON=function(){return this._stack.map(function(t){return e.Pipeline.warnIfFunctionNotRegistered(t),t.label})};e.Vector=function(t){this._magnitude=0,this.elements=t||[]},e.Vector.prototype.positionForIndex=function(t){if(this.elements.length==0)return 0;for(var n=0,r=this.elements.length/2,i=r-n,o=Math.floor(i/2),s=this.elements[o*2];i>1&&(s<t&&(n=o),s>t&&(r=o),s!=t);)i=r-n,o=n+Math.floor(i/2),s=this.elements[o*2];if(s==t||s>t)return o*2;if(s<t)return(o+1)*2},e.Vector.prototype.insert=function(t,n){this.upsert(t,n,function(){throw"duplicate index"})},e.Vector.prototype.upsert=function(t,n,r){this._magnitude=0;var i=this.positionForIndex(t);this.elements[i]==t?this.elements[i+1]=r(this.elements[i+1],n):this.elements.splice(i,0,t,n)},e.Vector.prototype.magnitude=function(){if(this._magnitude)return this._magnitude;for(var t=0,n=this.elements.length,r=1;r<n;r+=2){var i=this.elements[r];t+=i*i}return this._magnitude=Math.sqrt(t)},e.Vector.prototype.dot=function(t){for(var n=0,r=this.elements,i=t.elements,o=r.length,s=i.length,a=0,l=0,c=0,y=0;c<o&&y<s;)a=r[c],l=i[y],a<l?c+=2:a>l?y+=2:a==l&&(n+=r[c+1]*i[y+1],c+=2,y+=2);return n},e.Vector.prototype.similarity=function(t){return this.dot(t)/this.magnitude()||0},e.Vector.prototype.toArray=function(){for(var t=new Array(this.elements.length/2),n=1,r=0;n<this.elements.length;n+=2,r++)t[r]=this.elements[n];return t},e.Vector.prototype.toJSON=function(){return this.elements};e.stemmer=(function(){var t={ational:"ate",tional:"tion",enci:"ence",anci:"ance",izer:"ize",bli:"ble",alli:"al",entli:"ent",eli:"e",ousli:"ous",ization:"ize",ation:"ate",ator:"ate",alism:"al",iveness:"ive",fulness:"ful",ousness:"ous",aliti:"al",iviti:"ive",biliti:"ble",logi:"log"},n={icate:"ic",ative:"",alize:"al",iciti:"ic",ical:"ic",ful:"",ness:""},r="[^aeiou]",i="[aeiouy]",o=r+"[^aeiouy]*",s=i+"[aeiou]*",a="^("+o+")?"+s+o,l="^("+o+")?"+s+o+"("+s+")?$",c="^("+o+")?"+s+o+s+o,y="^("+o+")?"+i,d=new RegExp(a),v=new RegExp(c),x=new RegExp(l),T=new RegExp(y),O=/^(.+?)(ss|i)es$/,k=/^(.+?)([^s])s$/,R=/^(.+?)eed$/,N=/^(.+?)(ed|ing)$/,H=/.$/,z=/(at|bl|iz)$/,$=new RegExp("([^aeiouylsz])\\1$"),U=new RegExp("^"+o+i+"[^aeiouwxy]$"),oe=/^(.+?[^aeiou])y$/,j=/^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/,ie=/^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/,re=/^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/,fe=/^(.+?)(s|t)(ion)$/,he=/^(.+?)e$/,Y=/ll$/,le=new RegExp("^"+o+i+"[^aeiouwxy]$"),de=function(ce){var Ee,pe,Oe,ne,_e,De,at;if(ce.length<3)return ce;if(Oe=ce.substr(0,1),Oe=="y"&&(ce=Oe.toUpperCase()+ce.substr(1)),ne=O,_e=k,ne.test(ce)?ce=ce.replace(ne,"$1$2"):_e.test(ce)&&(ce=ce.replace(_e,"$1$2")),ne=R,_e=N,ne.test(ce)){var Ge=ne.exec(ce);ne=d,ne.test(Ge[1])&&(ne=H,ce=ce.replace(ne,""))}else if(_e.test(ce)){var Ge=_e.exec(ce);Ee=Ge[1],_e=T,_e.test(Ee)&&(ce=Ee,_e=z,De=$,at=U,_e.test(ce)?ce=ce+"e":De.test(ce)?(ne=H,ce=ce.replace(ne,"")):at.test(ce)&&(ce=ce+"e"))}if(ne=oe,ne.test(ce)){var Ge=ne.exec(ce);Ee=Ge[1],ce=Ee+"i"}if(ne=j,ne.test(ce)){var Ge=ne.exec(ce);Ee=Ge[1],pe=Ge[2],ne=d,ne.test(Ee)&&(ce=Ee+t[pe])}if(ne=ie,ne.test(ce)){var Ge=ne.exec(ce);Ee=Ge[1],pe=Ge[2],ne=d,ne.test(Ee)&&(ce=Ee+n[pe])}if(ne=re,_e=fe,ne.test(ce)){var Ge=ne.exec(ce);Ee=Ge[1],ne=v,ne.test(Ee)&&(ce=Ee)}else if(_e.test(ce)){var Ge=_e.exec(ce);Ee=Ge[1]+Ge[2],_e=v,_e.test(Ee)&&(ce=Ee)}if(ne=he,ne.test(ce)){var Ge=ne.exec(ce);Ee=Ge[1],ne=v,_e=x,De=le,(ne.test(Ee)||_e.test(Ee)&&!De.test(Ee))&&(ce=Ee)}return ne=Y,_e=v,ne.test(ce)&&_e.test(ce)&&(ne=H,ce=ce.replace(ne,"")),Oe=="y"&&(ce=Oe.toLowerCase()+ce.substr(1)),ce};return function(ve){return ve.update(de)}})(),e.Pipeline.registerFunction(e.stemmer,"stemmer");e.generateStopWordFilter=function(t){var n=t.reduce(function(r,i){return r[i]=i,r},{});return function(r){if(r&&n[r.toString()]!==r.toString())return r}},e.stopWordFilter=e.generateStopWordFilter(["a","able","about","across","after","all","almost","also","am","among","an","and","any","are","as","at","be","because","been","but","by","can","cannot","could","dear","did","do","does","either","else","ever","every","for","from","get","got","had","has","have","he","her","hers","him","his","how","however","i","if","in","into","is","it","its","just","least","let","like","likely","may","me","might","most","must","my","neither","no","nor","not","of","off","often","on","only","or","other","our","own","rather","said","say","says","she","should","since","so","some","than","that","the","their","them","then","there","these","they","this","tis","to","too","twas","us","wants","was","we","were","what","when","where","which","while","who","whom","why","will","with","would","yet","you","your"]),e.Pipeline.registerFunction(e.stopWordFilter,"stopWordFilter");e.trimmer=function(t){return t.update(function(n){return n.replace(/^\W+/,"").replace(/\W+$/,"")})},e.Pipeline.registerFunction(e.trimmer,"trimmer");e.TokenSet=function(){this.final=!1,this.edges={},this.id=e.TokenSet._nextId,e.TokenSet._nextId+=1},e.TokenSet._nextId=1,e.TokenSet.fromArray=function(t){for(var n=new e.TokenSet.Builder,r=0,i=t.length;r<i;r++)n.insert(t[r]);return n.finish(),n.root},e.TokenSet.fromClause=function(t){return"editDistance"in t?e.TokenSet.fromFuzzyString(t.term,t.editDistance):e.TokenSet.fromString(t.term)},e.TokenSet.fromFuzzyString=function(t,n){for(var r=new e.TokenSet,i=[{node:r,editsRemaining:n,str:t}];i.length;){var o=i.pop();if(o.str.length>0){var s=o.str.charAt(0),a;s in o.node.edges?a=o.node.edges[s]:(a=new e.TokenSet,o.node.edges[s]=a),o.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:o.editsRemaining,str:o.str.slice(1)})}if(o.editsRemaining!=0){if("*"in o.node.edges)var l=o.node.edges["*"];else{var l=new e.TokenSet;o.node.edges["*"]=l}if(o.str.length==0&&(l.final=!0),i.push({node:l,editsRemaining:o.editsRemaining-1,str:o.str}),o.str.length>1&&i.push({node:o.node,editsRemaining:o.editsRemaining-1,str:o.str.slice(1)}),o.str.length==1&&(o.node.final=!0),o.str.length>=1){if("*"in o.node.edges)var c=o.node.edges["*"];else{var c=new e.TokenSet;o.node.edges["*"]=c}o.str.length==1&&(c.final=!0),i.push({node:c,editsRemaining:o.editsRemaining-1,str:o.str.slice(1)})}if(o.str.length>1){var y=o.str.charAt(0),d=o.str.charAt(1),v;d in o.node.edges?v=o.node.edges[d]:(v=new e.TokenSet,o.node.edges[d]=v),o.str.length==1&&(v.final=!0),i.push({node:v,editsRemaining:o.editsRemaining-1,str:y+o.str.slice(2)})}}}return r},e.TokenSet.fromString=function(t){for(var n=new e.TokenSet,r=n,i=0,o=t.length;i<o;i++){var s=t[i],a=i==o-1;if(s=="*")n.edges[s]=n,n.final=a;else{var l=new e.TokenSet;l.final=a,n.edges[s]=l,n=l}}return r},e.TokenSet.prototype.toArray=function(){for(var t=[],n=[{prefix:"",node:this}];n.length;){var r=n.pop(),i=Object.keys(r.node.edges),o=i.length;r.node.final&&(r.prefix.charAt(0),t.push(r.prefix));for(var s=0;s<o;s++){var a=i[s];n.push({prefix:r.prefix.concat(a),node:r.node.edges[a]})}}return t},e.TokenSet.prototype.toString=function(){if(this._str)return this._str;for(var t=this.final?"1":"0",n=Object.keys(this.edges).sort(),r=n.length,i=0;i<r;i++){var o=n[i],s=this.edges[o];t=t+o+s.id}return t},e.TokenSet.prototype.intersect=function(t){for(var n=new e.TokenSet,r=void 0,i=[{qNode:t,output:n,node:this}];i.length;){r=i.pop();for(var o=Object.keys(r.qNode.edges),s=o.length,a=Object.keys(r.node.edges),l=a.length,c=0;c<s;c++)for(var y=o[c],d=0;d<l;d++){var v=a[d];if(v==y||y=="*"){var x=r.node.edges[v],T=r.qNode.edges[y],O=x.final&&T.final,k=void 0;v in r.output.edges?(k=r.output.edges[v],k.final=k.final||O):(k=new e.TokenSet,k.final=O,r.output.edges[v]=k),i.push({qNode:T,output:k,node:x})}}}return n},e.TokenSet.Builder=function(){this.previousWord="",this.root=new e.TokenSet,this.uncheckedNodes=[],this.minimizedNodes={}},e.TokenSet.Builder.prototype.insert=function(t){var n,r=0;if(t<this.previousWord)throw new Error("Out of order word insertion");for(var i=0;i<t.length&&i<this.previousWord.length&&t[i]==this.previousWord[i];i++)r++;this.minimize(r),this.uncheckedNodes.length==0?n=this.root:n=this.uncheckedNodes[this.uncheckedNodes.length-1].child;for(var i=r;i<t.length;i++){var o=new e.TokenSet,s=t[i];n.edges[s]=o,this.uncheckedNodes.push({parent:n,char:s,child:o}),n=o}n.final=!0,this.previousWord=t},e.TokenSet.Builder.prototype.finish=function(){this.minimize(0)},e.TokenSet.Builder.prototype.minimize=function(t){for(var n=this.uncheckedNodes.length-1;n>=t;n--){var r=this.uncheckedNodes[n],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r.char]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}};e.Index=function(t){this.invertedIndex=t.invertedIndex,this.fieldVectors=t.fieldVectors,this.tokenSet=t.tokenSet,this.fields=t.fields,this.pipeline=t.pipeline},e.Index.prototype.search=function(t){return this.query(function(n){var r=new e.QueryParser(t,n);r.parse()})},e.Index.prototype.query=function(t){for(var n=new e.Query(this.fields),r=Object.create(null),i=Object.create(null),o=Object.create(null),s=Object.create(null),a=Object.create(null),l=0;l<this.fields.length;l++)i[this.fields[l]]=new e.Vector;t.call(n,n);for(var l=0;l<n.clauses.length;l++){var c=n.clauses[l],y=null,d=e.Set.empty;c.usePipeline?y=this.pipeline.runString(c.term,{fields:c.fields}):y=[c.term];for(var v=0;v<y.length;v++){var x=y[v];c.term=x;var T=e.TokenSet.fromClause(c),O=this.tokenSet.intersect(T).toArray();if(O.length===0&&c.presence===e.Query.presence.REQUIRED){for(var k=0;k<c.fields.length;k++){var R=c.fields[k];s[R]=e.Set.empty}break}for(var N=0;N<O.length;N++)for(var H=O[N],z=this.invertedIndex[H],$=z._index,k=0;k<c.fields.length;k++){var R=c.fields[k],U=z[R],oe=Object.keys(U),j=H+"/"+R,ie=new e.Set(oe);if(c.presence==e.Query.presence.REQUIRED&&(d=d.union(ie),s[R]===void 0&&(s[R]=e.Set.complete)),c.presence==e.Query.presence.PROHIBITED){a[R]===void 0&&(a[R]=e.Set.empty),a[R]=a[R].union(ie);continue}if(i[R].upsert($,c.boost,function(Q,Le){return Q+Le}),!o[j]){for(var re=0;re<oe.length;re++){var fe=oe[re],he=new e.FieldRef(fe,R),Y=U[fe],le;(le=r[he])===void 0?r[he]=new e.MatchData(H,R,Y):le.add(H,R,Y)}o[j]=!0}}}if(c.presence===e.Query.presence.REQUIRED)for(var k=0;k<c.fields.length;k++){var R=c.fields[k];s[R]=s[R].intersect(d)}}for(var de=e.Set.complete,ve=e.Set.empty,l=0;l<this.fields.length;l++){var R=this.fields[l];s[R]&&(de=de.intersect(s[R])),a[R]&&(ve=ve.union(a[R]))}var ce=Object.keys(r),Ee=[],pe=Object.create(null);if(n.isNegated()){ce=Object.keys(this.fieldVectors);for(var l=0;l<ce.length;l++){var he=ce[l],Oe=e.FieldRef.fromString(he);r[he]=new e.MatchData}}for(var l=0;l<ce.length;l++){var Oe=e.FieldRef.fromString(ce[l]),ne=Oe.docRef;if(de.contains(ne)&&!ve.contains(ne)){var _e=this.fieldVectors[Oe],De=i[Oe.fieldName].similarity(_e),at;if((at=pe[ne])!==void 0)at.score+=De,at.matchData.combine(r[Oe]);else{var Ge={ref:ne,score:De,matchData:r[Oe]};pe[ne]=Ge,Ee.push(Ge)}}}return Ee.sort(function(Se,Fe){return Fe.score-Se.score})},e.Index.prototype.toJSON=function(){var t=Object.keys(this.invertedIndex).sort().map(function(r){return[r,this.invertedIndex[r]]},this),n=Object.keys(this.fieldVectors).map(function(r){return[r,this.fieldVectors[r].toJSON()]},this);return{version:e.version,fields:this.fields,fieldVectors:n,invertedIndex:t,pipeline:this.pipeline.toJSON()}},e.Index.load=function(t){var n={},r={},i=t.fieldVectors,o=Object.create(null),s=t.invertedIndex,a=new e.TokenSet.Builder,l=e.Pipeline.load(t.pipeline);t.version!=e.version&&e.utils.warn("Version mismatch when loading serialised index. Current version of lunr '"+e.version+"' does not match serialized index '"+t.version+"'");for(var c=0;c<i.length;c++){var y=i[c],d=y[0],v=y[1];r[d]=new e.Vector(v)}for(var c=0;c<s.length;c++){var y=s[c],x=y[0],T=y[1];a.insert(x),o[x]=T}return a.finish(),n.fields=t.fields,n.fieldVectors=r,n.invertedIndex=o,n.tokenSet=a.root,n.pipeline=l,new e.Index(n)};e.Builder=function(){this._ref="id",this._fields=Object.create(null),this._documents=Object.create(null),this.invertedIndex=Object.create(null),this.fieldTermFrequencies={},this.fieldLengths={},this.tokenizer=e.tokenizer,this.pipeline=new e.Pipeline,this.searchPipeline=new e.Pipeline,this.documentCount=0,this._b=.75,this._k1=1.2,this.termIndex=0,this.metadataWhitelist=[]},e.Builder.prototype.ref=function(t){this._ref=t},e.Builder.prototype.field=function(t,n){if(/\//.test(t))throw new RangeError("Field '"+t+"' contains illegal character '/'");this._fields[t]=n||{}},e.Builder.prototype.b=function(t){t<0?this._b=0:t>1?this._b=1:this._b=t},e.Builder.prototype.k1=function(t){this._k1=t},e.Builder.prototype.add=function(t,n){var r=t[this._ref],i=Object.keys(this._fields);this._documents[r]=n||{},this.documentCount+=1;for(var o=0;o<i.length;o++){var s=i[o],a=this._fields[s].extractor,l=a?a(t):t[s],c=this.tokenizer(l,{fields:[s]}),y=this.pipeline.run(c),d=new e.FieldRef(r,s),v=Object.create(null);this.fieldTermFrequencies[d]=v,this.fieldLengths[d]=0,this.fieldLengths[d]+=y.length;for(var x=0;x<y.length;x++){var T=y[x];if(v[T]==null&&(v[T]=0),v[T]+=1,this.invertedIndex[T]==null){var O=Object.create(null);O._index=this.termIndex,this.termIndex+=1;for(var k=0;k<i.length;k++)O[i[k]]=Object.create(null);this.invertedIndex[T]=O}this.invertedIndex[T][s][r]==null&&(this.invertedIndex[T][s][r]=Object.create(null));for(var R=0;R<this.metadataWhitelist.length;R++){var N=this.metadataWhitelist[R],H=T.metadata[N];this.invertedIndex[T][s][r][N]==null&&(this.invertedIndex[T][s][r][N]=[]),this.invertedIndex[T][s][r][N].push(H)}}}},e.Builder.prototype.calculateAverageFieldLengths=function(){for(var t=Object.keys(this.fieldLengths),n=t.length,r={},i={},o=0;o<n;o++){var s=e.FieldRef.fromString(t[o]),a=s.fieldName;i[a]||(i[a]=0),i[a]+=1,r[a]||(r[a]=0),r[a]+=this.fieldLengths[s]}for(var l=Object.keys(this._fields),o=0;o<l.length;o++){var c=l[o];r[c]=r[c]/i[c]}this.averageFieldLength=r},e.Builder.prototype.createFieldVectors=function(){for(var t={},n=Object.keys(this.fieldTermFrequencies),r=n.length,i=Object.create(null),o=0;o<r;o++){for(var s=e.FieldRef.fromString(n[o]),a=s.fieldName,l=this.fieldLengths[s],c=new e.Vector,y=this.fieldTermFrequencies[s],d=Object.keys(y),v=d.length,x=this._fields[a].boost||1,T=this._documents[s.docRef].boost||1,O=0;O<v;O++){var k=d[O],R=y[k],N=this.invertedIndex[k]._index,H,z,$;i[k]===void 0?(H=e.idf(this.invertedIndex[k],this.documentCount),i[k]=H):H=i[k],z=H*((this._k1+1)*R)/(this._k1*(1-this._b+this._b*(l/this.averageFieldLength[a]))+R),z*=x,z*=T,$=Math.round(z*1e3)/1e3,c.insert(N,$)}t[s]=c}this.fieldVectors=t},e.Builder.prototype.createTokenSet=function(){this.tokenSet=e.TokenSet.fromArray(Object.keys(this.invertedIndex).sort())},e.Builder.prototype.build=function(){return this.calculateAverageFieldLengths(),this.createFieldVectors(),this.createTokenSet(),new e.Index({invertedIndex:this.invertedIndex,fieldVectors:this.fieldVectors,tokenSet:this.tokenSet,fields:Object.keys(this._fields),pipeline:this.searchPipeline})},e.Builder.prototype.use=function(t){var n=Array.prototype.slice.call(arguments,1);n.unshift(this),t.apply(this,n)},e.MatchData=function(t,n,r){for(var i=Object.create(null),o=Object.keys(r||{}),s=0;s<o.length;s++){var a=o[s];i[a]=r[a].slice()}this.metadata=Object.create(null),t!==void 0&&(this.metadata[t]=Object.create(null),this.metadata[t][n]=i)},e.MatchData.prototype.combine=function(t){for(var n=Object.keys(t.metadata),r=0;r<n.length;r++){var i=n[r],o=Object.keys(t.metadata[i]);this.metadata[i]==null&&(this.metadata[i]=Object.create(null));for(var s=0;s<o.length;s++){var a=o[s],l=Object.keys(t.metadata[i][a]);this.metadata[i][a]==null&&(this.metadata[i][a]=Object.create(null));for(var c=0;c<l.length;c++){var y=l[c];this.metadata[i][a][y]==null?this.metadata[i][a][y]=t.metadata[i][a][y]:this.metadata[i][a][y]=this.metadata[i][a][y].concat(t.metadata[i][a][y])}}}},e.MatchData.prototype.add=function(t,n,r){if(!(t in this.metadata)){this.metadata[t]=Object.create(null),this.metadata[t][n]=r;return}if(!(n in this.metadata[t])){this.metadata[t][n]=r;return}for(var i=Object.keys(r),o=0;o<i.length;o++){var s=i[o];s in this.metadata[t][n]?this.metadata[t][n][s]=this.metadata[t][n][s].concat(r[s]):this.metadata[t][n][s]=r[s]}},e.Query=function(t){this.clauses=[],this.allFields=t},e.Query.wildcard=new String("*"),e.Query.wildcard.NONE=0,e.Query.wildcard.LEADING=1,e.Query.wildcard.TRAILING=2,e.Query.presence={OPTIONAL:1,REQUIRED:2,PROHIBITED:3},e.Query.prototype.clause=function(t){return"fields"in t||(t.fields=this.allFields),"boost"in t||(t.boost=1),"usePipeline"in t||(t.usePipeline=!0),"wildcard"in t||(t.wildcard=e.Query.wildcard.NONE),t.wildcard&e.Query.wildcard.LEADING&&t.term.charAt(0)!=e.Query.wildcard&&(t.term="*"+t.term),t.wildcard&e.Query.wildcard.TRAILING&&t.term.slice(-1)!=e.Query.wildcard&&(t.term=""+t.term+"*"),"presence"in t||(t.presence=e.Query.presence.OPTIONAL),this.clauses.push(t),this},e.Query.prototype.isNegated=function(){for(var t=0;t<this.clauses.length;t++)if(this.clauses[t].presence!=e.Query.presence.PROHIBITED)return!1;return!0},e.Query.prototype.term=function(t,n){if(Array.isArray(t))return t.forEach(function(i){this.term(i,e.utils.clone(n))},this),this;var r=n||{};return r.term=t.toString(),this.clause(r),this},e.QueryParseError=function(t,n,r){this.name="QueryParseError",this.message=t,this.start=n,this.end=r},e.QueryParseError.prototype=new Error,e.QueryLexer=function(t){this.lexemes=[],this.str=t,this.length=t.length,this.pos=0,this.start=0,this.escapeCharPositions=[]},e.QueryLexer.prototype.run=function(){for(var t=e.QueryLexer.lexText;t;)t=t(this)},e.QueryLexer.prototype.sliceString=function(){for(var t=[],n=this.start,r=this.pos,i=0;i<this.escapeCharPositions.length;i++)r=this.escapeCharPositions[i],t.push(this.str.slice(n,r)),n=r+1;return t.push(this.str.slice(n,this.pos)),this.escapeCharPositions.length=0,t.join("")},e.QueryLexer.prototype.emit=function(t){this.lexemes.push({type:t,str:this.sliceString(),start:this.start,end:this.pos}),this.start=this.pos},e.QueryLexer.prototype.escapeCharacter=function(){this.escapeCharPositions.push(this.pos-1),this.pos+=1},e.QueryLexer.prototype.next=function(){if(this.pos>=this.length)return e.QueryLexer.EOS;var t=this.str.charAt(this.pos);return this.pos+=1,t},e.QueryLexer.prototype.width=function(){return this.pos-this.start},e.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},e.QueryLexer.prototype.backup=function(){this.pos-=1},e.QueryLexer.prototype.acceptDigitRun=function(){var t,n;do t=this.next(),n=t.charCodeAt(0);while(n>47&&n<58);t!=e.QueryLexer.EOS&&this.backup()},e.QueryLexer.prototype.more=function(){return this.pos<this.length},e.QueryLexer.EOS="EOS",e.QueryLexer.FIELD="FIELD",e.QueryLexer.TERM="TERM",e.QueryLexer.EDIT_DISTANCE="EDIT_DISTANCE",e.QueryLexer.BOOST="BOOST",e.QueryLexer.PRESENCE="PRESENCE",e.QueryLexer.lexField=function(t){return t.backup(),t.emit(e.QueryLexer.FIELD),t.ignore(),e.QueryLexer.lexText},e.QueryLexer.lexTerm=function(t){if(t.width()>1&&(t.backup(),t.emit(e.QueryLexer.TERM)),t.ignore(),t.more())return e.QueryLexer.lexText},e.QueryLexer.lexEditDistance=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.EDIT_DISTANCE),e.QueryLexer.lexText},e.QueryLexer.lexBoost=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.BOOST),e.QueryLexer.lexText},e.QueryLexer.lexEOS=function(t){t.width()>0&&t.emit(e.QueryLexer.TERM)},e.QueryLexer.termSeparator=e.tokenizer.separator,e.QueryLexer.lexText=function(t){for(;;){var n=t.next();if(n==e.QueryLexer.EOS)return e.QueryLexer.lexEOS;if(n.charCodeAt(0)==92){t.escapeCharacter();continue}if(n==":")return e.QueryLexer.lexField;if(n=="~")return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexEditDistance;if(n=="^")return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexBoost;if(n=="+"&&t.width()===1||n=="-"&&t.width()===1)return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if(n.match(e.QueryLexer.termSeparator))return e.QueryLexer.lexTerm}},e.QueryParser=function(t,n){this.lexer=new e.QueryLexer(t),this.query=n,this.currentClause={},this.lexemeIdx=0},e.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var t=e.QueryParser.parseClause;t;)t=t(this);return this.query},e.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},e.QueryParser.prototype.consumeLexeme=function(){var t=this.peekLexeme();return this.lexemeIdx+=1,t},e.QueryParser.prototype.nextClause=function(){var t=this.currentClause;this.query.clause(t),this.currentClause={}},e.QueryParser.parseClause=function(t){var n=t.peekLexeme();if(n!=null)switch(n.type){case e.QueryLexer.PRESENCE:return e.QueryParser.parsePresence;case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var r="expected either a field or a term, found "+n.type;throw n.str.length>=1&&(r+=" with value '"+n.str+"'"),new e.QueryParseError(r,n.start,n.end)}},e.QueryParser.parsePresence=function(t){var n=t.consumeLexeme();if(n!=null){switch(n.str){case"-":t.currentClause.presence=e.Query.presence.PROHIBITED;break;case"+":t.currentClause.presence=e.Query.presence.REQUIRED;break;default:var r="unrecognised presence operator'"+n.str+"'";throw new e.QueryParseError(r,n.start,n.end)}var i=t.peekLexeme();if(i==null){var r="expecting term or field, found nothing";throw new e.QueryParseError(r,n.start,n.end)}switch(i.type){case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var r="expecting term or field, found '"+i.type+"'";throw new e.QueryParseError(r,i.start,i.end)}}},e.QueryParser.parseField=function(t){var n=t.consumeLexeme();if(n!=null){if(t.query.allFields.indexOf(n.str)==-1){var r=t.query.allFields.map(function(s){return"'"+s+"'"}).join(", "),i="unrecognised field '"+n.str+"', possible fields: "+r;throw new e.QueryParseError(i,n.start,n.end)}t.currentClause.fields=[n.str];var o=t.peekLexeme();if(o==null){var i="expecting term, found nothing";throw new e.QueryParseError(i,n.start,n.end)}if(o.type===e.QueryLexer.TERM)return e.QueryParser.parseTerm;var i="expecting term, found '"+o.type+"'";throw new e.QueryParseError(i,o.start,o.end)}},e.QueryParser.parseTerm=function(t){var n=t.consumeLexeme();if(n!=null){t.currentClause.term=n.str.toLowerCase(),n.str.indexOf("*")!=-1&&(t.currentClause.usePipeline=!1);var r=t.peekLexeme();if(r==null){t.nextClause();return}switch(r.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+r.type+"'";throw new e.QueryParseError(i,r.start,r.end)}}},e.QueryParser.parseEditDistance=function(t){var n=t.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="edit distance must be numeric";throw new e.QueryParseError(i,n.start,n.end)}t.currentClause.editDistance=r;var o=t.peekLexeme();if(o==null){t.nextClause();return}switch(o.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+o.type+"'";throw new e.QueryParseError(i,o.start,o.end)}}},e.QueryParser.parseBoost=function(t){var n=t.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="boost must be numeric";throw new e.QueryParseError(i,n.start,n.end)}t.currentClause.boost=r;var o=t.peekLexeme();if(o==null){t.nextClause();return}switch(o.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+o.type+"'";throw new e.QueryParseError(i,o.start,o.end)}}},(function(t,n){typeof define=="function"&&define.amd?define(n):typeof Vz=="object"?Gz.exports=n():t.lunr=n()})(this,function(){return e})})()});var qz=V((ZFe,Xz)=>{"use strict";function rre(){return typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:typeof setImmediate=="function"?setImmediate:function(t){setTimeout(t,0)}}Xz.exports=rre()});var Zz=V((JFe,Kz)=>{"use strict";var Qz=qz();Kz.exports=function(t,n){if(t){n.then(function(r){Qz(function(){t(null,r)})},function(r){Qz(function(){t(r)})});return}else return n}});var r5=V(($Fe,n5)=>{n5.exports=kS;kS.default=kS;kS.stable=e5;kS.stableStringify=e5;var m1="[...]",Jz="[Circular]",Py=[],Cy=[];function $z(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function kS(e,t,n,r){typeof r>"u"&&(r=$z()),VA(e,"",0,[],void 0,0,r);var i;try{Cy.length===0?i=JSON.stringify(e,t,n):i=JSON.stringify(e,t5(t),n)}catch{return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;Py.length!==0;){var o=Py.pop();o.length===4?Object.defineProperty(o[0],o[1],o[3]):o[0][o[1]]=o[2]}}return i}function Uv(e,t,n,r){var i=Object.getOwnPropertyDescriptor(r,n);i.get!==void 0?i.configurable?(Object.defineProperty(r,n,{value:e}),Py.push([r,n,t,i])):Cy.push([t,n,e]):(r[n]=e,Py.push([r,n,t]))}function VA(e,t,n,r,i,o,s){o+=1;var a;if(typeof e=="object"&&e!==null){for(a=0;a<r.length;a++)if(r[a]===e){Uv(Jz,e,t,i);return}if(typeof s.depthLimit<"u"&&o>s.depthLimit){Uv(m1,e,t,i);return}if(typeof s.edgesLimit<"u"&&n+1>s.edgesLimit){Uv(m1,e,t,i);return}if(r.push(e),Array.isArray(e))for(a=0;a<e.length;a++)VA(e[a],a,a,r,e,o,s);else{var l=Object.keys(e);for(a=0;a<l.length;a++){var c=l[a];VA(e[c],c,a,r,e,o,s)}}r.pop()}}function ire(e,t){return e<t?-1:e>t?1:0}function e5(e,t,n,r){typeof r>"u"&&(r=$z());var i=GA(e,"",0,[],void 0,0,r)||e,o;try{Cy.length===0?o=JSON.stringify(i,t,n):o=JSON.stringify(i,t5(t),n)}catch{return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;Py.length!==0;){var s=Py.pop();s.length===4?Object.defineProperty(s[0],s[1],s[3]):s[0][s[1]]=s[2]}}return o}function GA(e,t,n,r,i,o,s){o+=1;var a;if(typeof e=="object"&&e!==null){for(a=0;a<r.length;a++)if(r[a]===e){Uv(Jz,e,t,i);return}try{if(typeof e.toJSON=="function")return}catch{return}if(typeof s.depthLimit<"u"&&o>s.depthLimit){Uv(m1,e,t,i);return}if(typeof s.edgesLimit<"u"&&n+1>s.edgesLimit){Uv(m1,e,t,i);return}if(r.push(e),Array.isArray(e))for(a=0;a<e.length;a++)GA(e[a],a,a,r,e,o,s);else{var l={},c=Object.keys(e).sort(ire);for(a=0;a<c.length;a++){var y=c[a];GA(e[y],y,a,r,e,o,s),l[y]=e[y]}if(typeof i<"u")Py.push([i,t,e]),i[t]=l;else return l}r.pop()}}function t5(e){return e=typeof e<"u"?e:function(t,n){return n},function(t,n){if(Cy.length>0)for(var r=0;r<Cy.length;r++){var i=Cy[r];if(i[1]===t&&i[0]===n){n=i[2],Cy.splice(r,1);break}}return e.call(this,t,n)}}});var o5=V((e3e,i5)=>{i5.exports=(function(e,t){e||(e=document),t||(t=window);var n=[],r,i=!1,o=e.documentElement,s=function(){},a,l="hidden",c="visibilitychange";e.webkitHidden!==void 0&&(l="webkitHidden",c="webkitvisibilitychange"),t.getComputedStyle||x();for(var y=["","-webkit-","-moz-","-ms-"],d=document.createElement("div"),v=y.length-1;v>=0;v--){try{d.style.position=y[v]+"sticky"}catch{}d.style.position!=""&&x()}k();function x(){pe=at=Oe=ne=_e=De=s}function T(Se,Fe){for(key in Fe)Fe.hasOwnProperty(key)&&(Se[key]=Fe[key])}function O(Se){return parseFloat(Se)||0}function k(){r={top:t.pageYOffset,left:t.pageXOffset}}function R(){if(t.pageXOffset!=r.left){k(),Oe();return}t.pageYOffset!=r.top&&(k(),H())}function N(Se){setTimeout(function(){t.pageYOffset!=r.top&&(r.top=t.pageYOffset,H())},0)}function H(){for(var Se=n.length-1;Se>=0;Se--)z(n[Se])}function z(Se){if(Se.inited){var Fe=r.top<=Se.limit.start?0:r.top>=Se.limit.end?2:1;Se.mode!=Fe&&re(Se,Fe)}}function $(){for(var Se=n.length-1;Se>=0;Se--)if(n[Se].inited){var Fe=Math.abs(le(n[Se].clone)-n[Se].docOffsetTop),L=Math.abs(n[Se].parent.node.offsetHeight-n[Se].parent.height);if(Fe>=2||L>=2)return!1}return!0}function U(Se){isNaN(parseFloat(Se.computed.top))||Se.isCell||(Se.inited=!0,Se.clone||fe(Se),Se.parent.computed.position!="absolute"&&Se.parent.computed.position!="relative"&&(Se.parent.node.style.position="relative"),z(Se),Se.parent.height=Se.parent.node.offsetHeight,Se.docOffsetTop=le(Se.clone))}function oe(Se){var Fe=!0;Se.clone&&he(Se),T(Se.node.style,Se.css);for(var L=n.length-1;L>=0;L--)if(n[L].node!==Se.node&&n[L].parent.node===Se.parent.node){Fe=!1;break}Fe&&(Se.parent.node.style.position=Se.parent.css.position),Se.mode=-1}function j(){for(var Se=n.length-1;Se>=0;Se--)U(n[Se])}function ie(){for(var Se=n.length-1;Se>=0;Se--)oe(n[Se])}function re(Se,Fe){var L=Se.node.style;switch(Fe){case 0:L.position="absolute",L.left=Se.offset.left+"px",L.right=Se.offset.right+"px",L.top=Se.offset.top+"px",L.bottom="auto",L.width="auto",L.marginLeft=0,L.marginRight=0,L.marginTop=0;break;case 1:L.position="fixed",L.left=Se.box.left+"px",L.right=Se.box.right+"px",L.top=Se.css.top,L.bottom="auto",L.width="auto",L.marginLeft=0,L.marginRight=0,L.marginTop=0;break;case 2:L.position="absolute",L.left=Se.offset.left+"px",L.right=Se.offset.right+"px",L.top="auto",L.bottom=0,L.width="auto",L.marginLeft=0,L.marginRight=0;break}Se.mode=Fe}function fe(Se){Se.clone=document.createElement("div");var Fe=Se.node.nextSibling||Se.node,L=Se.clone.style;L.height=Se.height+"px",L.width=Se.width+"px",L.marginTop=Se.computed.marginTop,L.marginBottom=Se.computed.marginBottom,L.marginLeft=Se.computed.marginLeft,L.marginRight=Se.computed.marginRight,L.padding=L.border=L.borderSpacing=0,L.fontSize="1em",L.position="static",L.cssFloat=Se.computed.cssFloat,Se.node.parentNode.insertBefore(Se.clone,Fe)}function he(Se){Se.clone.parentNode.removeChild(Se.clone),Se.clone=void 0}function Y(Se){var Fe=getComputedStyle(Se),L=Se.parentNode,Q=getComputedStyle(L),Le=Se.style.position;Se.style.position="relative";var Ye={top:Fe.top,marginTop:Fe.marginTop,marginBottom:Fe.marginBottom,marginLeft:Fe.marginLeft,marginRight:Fe.marginRight,cssFloat:Fe.cssFloat},Pe={top:O(Fe.top),marginBottom:O(Fe.marginBottom),paddingLeft:O(Fe.paddingLeft),paddingRight:O(Fe.paddingRight),borderLeftWidth:O(Fe.borderLeftWidth),borderRightWidth:O(Fe.borderRightWidth)};Se.style.position=Le;var q={position:Se.style.position,top:Se.style.top,bottom:Se.style.bottom,left:Se.style.left,right:Se.style.right,width:Se.style.width,marginTop:Se.style.marginTop,marginLeft:Se.style.marginLeft,marginRight:Se.style.marginRight},ee=de(Se),Re=de(L),Te={node:L,css:{position:L.style.position},computed:{position:Q.position},numeric:{borderLeftWidth:O(Q.borderLeftWidth),borderRightWidth:O(Q.borderRightWidth),borderTopWidth:O(Q.borderTopWidth),borderBottomWidth:O(Q.borderBottomWidth)}},nt={node:Se,box:{left:ee.win.left,right:o.clientWidth-ee.win.right},offset:{top:ee.win.top-Re.win.top-Te.numeric.borderTopWidth,left:ee.win.left-Re.win.left-Te.numeric.borderLeftWidth,right:-ee.win.right+Re.win.right-Te.numeric.borderRightWidth},css:q,isCell:Fe.display=="table-cell",computed:Ye,numeric:Pe,width:ee.win.right-ee.win.left,height:ee.win.bottom-ee.win.top,mode:-1,inited:!1,parent:Te,limit:{start:ee.doc.top-Pe.top,end:Re.doc.top+L.offsetHeight-Te.numeric.borderBottomWidth-Se.offsetHeight-Pe.top-Pe.marginBottom}};return nt}function le(Se){for(var Fe=0;Se;)Fe+=Se.offsetTop,Se=Se.offsetParent;return Fe}function de(Se){var Fe=Se.getBoundingClientRect();return{doc:{top:Fe.top+t.pageYOffset,left:Fe.left+t.pageXOffset},win:Fe}}function ve(){a=setInterval(function(){!$()&&Oe()},500)}function ce(){clearInterval(a)}function Ee(){i&&(document[l]?ce():ve())}function pe(){i||(k(),j(),t.addEventListener("scroll",R),t.addEventListener("wheel",N),t.addEventListener("resize",Oe),t.addEventListener("orientationchange",Oe),e.addEventListener(c,Ee),ve(),i=!0)}function Oe(){if(i){ie();for(var Se=n.length-1;Se>=0;Se--)n[Se]=Y(n[Se].node);j()}}function ne(){t.removeEventListener("scroll",R),t.removeEventListener("wheel",N),t.removeEventListener("resize",Oe),t.removeEventListener("orientationchange",Oe),e.removeEventListener(c,Ee),ce(),i=!1}function _e(){ne(),ie()}function De(){for(_e();n.length;)n.pop()}function at(Se){for(var Fe=n.length-1;Fe>=0;Fe--)if(n[Fe].node===Se)return;var L=Y(Se);n.push(L),i?U(L):pe()}function Ge(Se){for(var Fe=n.length-1;Fe>=0;Fe--)n[Fe].node===Se&&(oe(n[Fe]),n.splice(Fe,1))}return{stickies:n,add:at,remove:Ge,init:pe,rebuild:Oe,pause:ne,stop:_e,kill:De}})});var tr=V(oa=>{"use strict";var YA=Symbol.for("yaml.alias"),s5=Symbol.for("yaml.document"),y1=Symbol.for("yaml.map"),a5=Symbol.for("yaml.pair"),XA=Symbol.for("yaml.scalar"),b1=Symbol.for("yaml.seq"),ep=Symbol.for("yaml.node.type"),ore=e=>!!e&&typeof e=="object"&&e[ep]===YA,sre=e=>!!e&&typeof e=="object"&&e[ep]===s5,are=e=>!!e&&typeof e=="object"&&e[ep]===y1,lre=e=>!!e&&typeof e=="object"&&e[ep]===a5,l5=e=>!!e&&typeof e=="object"&&e[ep]===XA,cre=e=>!!e&&typeof e=="object"&&e[ep]===b1;function c5(e){if(e&&typeof e=="object")switch(e[ep]){case y1:case b1:return!0}return!1}function ure(e){if(e&&typeof e=="object")switch(e[ep]){case YA:case y1:case XA:case b1:return!0}return!1}var fre=e=>(l5(e)||c5(e))&&!!e.anchor;oa.ALIAS=YA;oa.DOC=s5;oa.MAP=y1;oa.NODE_TYPE=ep;oa.PAIR=a5;oa.SCALAR=XA;oa.SEQ=b1;oa.hasAnchor=fre;oa.isAlias=ore;oa.isCollection=c5;oa.isDocument=sre;oa.isMap=are;oa.isNode=ure;oa.isPair=lre;oa.isScalar=l5;oa.isSeq=cre});var CS=V(qA=>{"use strict";var xs=tr(),dc=Symbol("break visit"),u5=Symbol("skip children"),Hd=Symbol("remove node");function v1(e,t){let n=f5(t);xs.isDocument(e)?Hv(null,e.contents,n,Object.freeze([e]))===Hd&&(e.contents=null):Hv(null,e,n,Object.freeze([]))}v1.BREAK=dc;v1.SKIP=u5;v1.REMOVE=Hd;function Hv(e,t,n,r){let i=d5(e,t,n,r);if(xs.isNode(i)||xs.isPair(i))return h5(e,r,i),Hv(e,i,n,r);if(typeof i!="symbol"){if(xs.isCollection(t)){r=Object.freeze(r.concat(t));for(let o=0;o<t.items.length;++o){let s=Hv(o,t.items[o],n,r);if(typeof s=="number")o=s-1;else{if(s===dc)return dc;s===Hd&&(t.items.splice(o,1),o-=1)}}}else if(xs.isPair(t)){r=Object.freeze(r.concat(t));let o=Hv("key",t.key,n,r);if(o===dc)return dc;o===Hd&&(t.key=null);let s=Hv("value",t.value,n,r);if(s===dc)return dc;s===Hd&&(t.value=null)}}return i}async function w1(e,t){let n=f5(t);xs.isDocument(e)?await Wv(null,e.contents,n,Object.freeze([e]))===Hd&&(e.contents=null):await Wv(null,e,n,Object.freeze([]))}w1.BREAK=dc;w1.SKIP=u5;w1.REMOVE=Hd;async function Wv(e,t,n,r){let i=await d5(e,t,n,r);if(xs.isNode(i)||xs.isPair(i))return h5(e,r,i),Wv(e,i,n,r);if(typeof i!="symbol"){if(xs.isCollection(t)){r=Object.freeze(r.concat(t));for(let o=0;o<t.items.length;++o){let s=await Wv(o,t.items[o],n,r);if(typeof s=="number")o=s-1;else{if(s===dc)return dc;s===Hd&&(t.items.splice(o,1),o-=1)}}}else if(xs.isPair(t)){r=Object.freeze(r.concat(t));let o=await Wv("key",t.key,n,r);if(o===dc)return dc;o===Hd&&(t.key=null);let s=await Wv("value",t.value,n,r);if(s===dc)return dc;s===Hd&&(t.value=null)}}return i}function f5(e){return typeof e=="object"&&(e.Collection||e.Node||e.Value)?Object.assign({Alias:e.Node,Map:e.Node,Scalar:e.Node,Seq:e.Node},e.Value&&{Map:e.Value,Scalar:e.Value,Seq:e.Value},e.Collection&&{Map:e.Collection,Seq:e.Collection},e):e}function d5(e,t,n,r){if(typeof n=="function")return n(e,t,r);if(xs.isMap(t))return n.Map?.(e,t,r);if(xs.isSeq(t))return n.Seq?.(e,t,r);if(xs.isPair(t))return n.Pair?.(e,t,r);if(xs.isScalar(t))return n.Scalar?.(e,t,r);if(xs.isAlias(t))return n.Alias?.(e,t,r)}function h5(e,t,n){let r=t[t.length-1];if(xs.isCollection(r))r.items[e]=n;else if(xs.isPair(r))e==="key"?r.key=n:r.value=n;else if(xs.isDocument(r))r.contents=n;else{let i=xs.isAlias(r)?"alias":"scalar";throw new Error(`Cannot replace node with ${i} parent`)}}qA.visit=v1;qA.visitAsync=w1});var QA=V(g5=>{"use strict";var p5=tr(),dre=CS(),hre={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},pre=e=>e.replace(/[!,[\]{}]/g,t=>hre[t]),PS=class e{constructor(t,n){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},e.defaultYaml,t),this.tags=Object.assign({},e.defaultTags,n)}clone(){let t=new e(this.yaml,this.tags);return t.docStart=this.docStart,t}atDocument(){let t=new e(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:e.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},e.defaultTags);break}return t}add(t,n){this.atNextDocument&&(this.yaml={explicit:e.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},e.defaultTags),this.atNextDocument=!1);let r=t.trim().split(/[ \t]+/),i=r.shift();switch(i){case"%TAG":{if(r.length!==2&&(n(0,"%TAG directive should contain exactly two parts"),r.length<2))return!1;let[o,s]=r;return this.tags[o]=s,!0}case"%YAML":{if(this.yaml.explicit=!0,r.length!==1)return n(0,"%YAML directive should contain exactly one part"),!1;let[o]=r;if(o==="1.1"||o==="1.2")return this.yaml.version=o,!0;{let s=/^\d+\.\d+$/.test(o);return n(6,`Unsupported YAML version ${o}`,s),!1}}default:return n(0,`Unknown directive ${i}`,!0),!1}}tagName(t,n){if(t==="!")return"!";if(t[0]!=="!")return n(`Not a valid tag: ${t}`),null;if(t[1]==="<"){let s=t.slice(2,-1);return s==="!"||s==="!!"?(n(`Verbatim tags aren't resolved, so ${t} is invalid.`),null):(t[t.length-1]!==">"&&n("Verbatim tags must end with a >"),s)}let[,r,i]=t.match(/^(.*!)([^!]*)$/s);i||n(`The ${t} tag has no suffix`);let o=this.tags[r];if(o)try{return o+decodeURIComponent(i)}catch(s){return n(String(s)),null}return r==="!"?t:(n(`Could not resolve tag: ${t}`),null)}tagString(t){for(let[n,r]of Object.entries(this.tags))if(t.startsWith(r))return n+pre(t.substring(r.length));return t[0]==="!"?t:`!<${t}>`}toString(t){let n=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],r=Object.entries(this.tags),i;if(t&&r.length>0&&p5.isNode(t.contents)){let o={};dre.visit(t.contents,(s,a)=>{p5.isNode(a)&&a.tag&&(o[a.tag]=!0)}),i=Object.keys(o)}else i=[];for(let[o,s]of r)o==="!!"&&s==="tag:yaml.org,2002:"||(!t||i.some(a=>a.startsWith(s)))&&n.push(`%TAG ${o} ${s}`);return n.join(`
9
9
  `)}};PS.defaultYaml={explicit:!1,version:"1.2"};PS.defaultTags={"!!":"tag:yaml.org,2002:"};g5.Directives=PS});var S1=V(AS=>{"use strict";var m5=tr(),gre=CS();function mre(e){if(/[\x00-\x19\s,[\]{}]/.test(e)){let n=`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`;throw new Error(n)}return!0}function y5(e){let t=new Set;return gre.visit(e,{Value(n,r){r.anchor&&t.add(r.anchor)}}),t}function b5(e,t){for(let n=1;;++n){let r=`${e}${n}`;if(!t.has(r))return r}}function yre(e,t){let n=[],r=new Map,i=null;return{onAnchor:o=>{n.push(o),i??(i=y5(e));let s=b5(t,i);return i.add(s),s},setAnchors:()=>{for(let o of n){let s=r.get(o);if(typeof s=="object"&&s.anchor&&(m5.isScalar(s.node)||m5.isCollection(s.node)))s.node.anchor=s.anchor;else{let a=new Error("Failed to resolve repeated object (this should not happen)");throw a.source=o,a}}},sourceObjects:r}}AS.anchorIsValid=mre;AS.anchorNames=y5;AS.createNodeAnchors=yre;AS.findNewAnchor=b5});var KA=V(v5=>{"use strict";function RS(e,t,n,r){if(r&&typeof r=="object")if(Array.isArray(r))for(let i=0,o=r.length;i<o;++i){let s=r[i],a=RS(e,r,String(i),s);a===void 0?delete r[i]:a!==s&&(r[i]=a)}else if(r instanceof Map)for(let i of Array.from(r.keys())){let o=r.get(i),s=RS(e,r,i,o);s===void 0?r.delete(i):s!==o&&r.set(i,s)}else if(r instanceof Set)for(let i of Array.from(r)){let o=RS(e,r,i,i);o===void 0?r.delete(i):o!==i&&(r.delete(i),r.add(o))}else for(let[i,o]of Object.entries(r)){let s=RS(e,r,i,o);s===void 0?delete r[i]:s!==o&&(r[i]=s)}return e.call(t,n,r)}v5.applyReviver=RS});var Bg=V(S5=>{"use strict";var bre=tr();function w5(e,t,n){if(Array.isArray(e))return e.map((r,i)=>w5(r,String(i),n));if(e&&typeof e.toJSON=="function"){if(!n||!bre.hasAnchor(e))return e.toJSON(t,n);let r={aliasCount:0,count:1,res:void 0};n.anchors.set(e,r),n.onCreate=o=>{r.res=o,delete n.onCreate};let i=e.toJSON(t,n);return n.onCreate&&n.onCreate(i),i}return typeof e=="bigint"&&!n?.keep?Number(e):e}S5.toJS=w5});var x1=V(E5=>{"use strict";var vre=KA(),x5=tr(),wre=Bg(),ZA=class{constructor(t){Object.defineProperty(this,x5.NODE_TYPE,{value:t})}clone(){let t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(t.range=this.range.slice()),t}toJS(t,{mapAsMap:n,maxAliasCount:r,onAnchor:i,reviver:o}={}){if(!x5.isDocument(t))throw new TypeError("A document argument is required");let s={anchors:new Map,doc:t,keep:!0,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof r=="number"?r:100},a=wre.toJS(this,"",s);if(typeof i=="function")for(let{count:l,res:c}of s.anchors.values())i(c,l);return typeof o=="function"?vre.applyReviver(o,{"":a},"",a):a}};E5.NodeBase=ZA});var IS=V(_5=>{"use strict";var Sre=S1(),xre=CS(),jv=tr(),Ere=x1(),_re=Bg(),JA=class extends Ere.NodeBase{constructor(t){super(jv.ALIAS),this.source=t,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(t,n){if(n?.maxAliasCount===0)throw new ReferenceError("Alias resolution is disabled");let r;n?.aliasResolveCache?r=n.aliasResolveCache:(r=[],xre.visit(t,{Node:(o,s)=>{(jv.isAlias(s)||jv.hasAnchor(s))&&r.push(s)}}),n&&(n.aliasResolveCache=r));let i;for(let o of r){if(o===this)break;o.anchor===this.source&&(i=o)}return i}toJSON(t,n){if(!n)return{source:this.source};let{anchors:r,doc:i,maxAliasCount:o}=n,s=this.resolve(i,n);if(!s){let l=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(l)}let a=r.get(s);if(a||(_re.toJS(s,null,n),a=r.get(s)),a?.res===void 0){let l="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(l)}if(o>=0&&(a.count+=1,a.aliasCount===0&&(a.aliasCount=E1(i,s,r)),a.count*a.aliasCount>o)){let l="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(l)}return a.res}toString(t,n,r){let i=`*${this.source}`;if(t){if(Sre.anchorIsValid(this.source),t.options.verifyAliasOrder&&!t.anchors.has(this.source)){let o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(t.implicitKey)return`${i} `}return i}};function E1(e,t,n){if(jv.isAlias(t)){let r=t.resolve(e),i=n&&r&&n.get(r);return i?i.count*i.aliasCount:0}else if(jv.isCollection(t)){let r=0;for(let i of t.items){let o=E1(e,i,n);o>r&&(r=o)}return r}else if(jv.isPair(t)){let r=E1(e,t.key,n),i=E1(e,t.value,n);return Math.max(r,i)}return 1}_5.Alias=JA});var os=V($A=>{"use strict";var Ore=tr(),Tre=x1(),kre=Bg(),Cre=e=>!e||typeof e!="function"&&typeof e!="object",zg=class extends Tre.NodeBase{constructor(t){super(Ore.SCALAR),this.value=t}toJSON(t,n){return n?.keep?this.value:kre.toJS(this.value,t,n)}toString(){return String(this.value)}};zg.BLOCK_FOLDED="BLOCK_FOLDED";zg.BLOCK_LITERAL="BLOCK_LITERAL";zg.PLAIN="PLAIN";zg.QUOTE_DOUBLE="QUOTE_DOUBLE";zg.QUOTE_SINGLE="QUOTE_SINGLE";$A.Scalar=zg;$A.isScalarValue=Cre});var MS=V(T5=>{"use strict";var Pre=IS(),Ay=tr(),O5=os(),Are="tag:yaml.org,2002:";function Rre(e,t,n){if(t){let r=n.filter(o=>o.tag===t),i=r.find(o=>!o.format)??r[0];if(!i)throw new Error(`Tag ${t} not found`);return i}return n.find(r=>r.identify?.(e)&&!r.format)}function Ire(e,t,n){if(Ay.isDocument(e)&&(e=e.contents),Ay.isNode(e))return e;if(Ay.isPair(e)){let d=n.schema[Ay.MAP].createNode?.(n.schema,null,n);return d.items.push(e),d}(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<"u"&&e instanceof BigInt)&&(e=e.valueOf());let{aliasDuplicateObjects:r,onAnchor:i,onTagObj:o,schema:s,sourceObjects:a}=n,l;if(r&&e&&typeof e=="object"){if(l=a.get(e),l)return l.anchor??(l.anchor=i(e)),new Pre.Alias(l.anchor);l={anchor:null,node:null},a.set(e,l)}t?.startsWith("!!")&&(t=Are+t.slice(2));let c=Rre(e,t,s.tags);if(!c){if(e&&typeof e.toJSON=="function"&&(e=e.toJSON()),!e||typeof e!="object"){let d=new O5.Scalar(e);return l&&(l.node=d),d}c=e instanceof Map?s[Ay.MAP]:Symbol.iterator in Object(e)?s[Ay.SEQ]:s[Ay.MAP]}o&&(o(c),delete n.onTagObj);let y=c?.createNode?c.createNode(n.schema,e,n):typeof c?.nodeClass?.from=="function"?c.nodeClass.from(n.schema,e,n):new O5.Scalar(e);return t?y.tag=t:c.default||(y.tag=c.tag),l&&(l.node=y),y}T5.createNode=Ire});var O1=V(_1=>{"use strict";var Mre=MS(),Wd=tr(),Lre=x1();function eR(e,t,n){let r=n;for(let i=t.length-1;i>=0;--i){let o=t[i];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){let s=[];s[o]=r,r=s}else r=new Map([[o,r]])}return Mre.createNode(r,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:e,sourceObjects:new Map})}var k5=e=>e==null||typeof e=="object"&&!!e[Symbol.iterator]().next().done,tR=class extends Lre.NodeBase{constructor(t,n){super(t),Object.defineProperty(this,"schema",{value:n,configurable:!0,enumerable:!1,writable:!0})}clone(t){let n=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return t&&(n.schema=t),n.items=n.items.map(r=>Wd.isNode(r)||Wd.isPair(r)?r.clone(t):r),this.range&&(n.range=this.range.slice()),n}addIn(t,n){if(k5(t))this.add(n);else{let[r,...i]=t,o=this.get(r,!0);if(Wd.isCollection(o))o.addIn(i,n);else if(o===void 0&&this.schema)this.set(r,eR(this.schema,i,n));else throw new Error(`Expected YAML collection at ${r}. Remaining path: ${i}`)}}deleteIn(t){let[n,...r]=t;if(r.length===0)return this.delete(n);let i=this.get(n,!0);if(Wd.isCollection(i))return i.deleteIn(r);throw new Error(`Expected YAML collection at ${n}. Remaining path: ${r}`)}getIn(t,n){let[r,...i]=t,o=this.get(r,!0);return i.length===0?!n&&Wd.isScalar(o)?o.value:o:Wd.isCollection(o)?o.getIn(i,n):void 0}hasAllNullValues(t){return this.items.every(n=>{if(!Wd.isPair(n))return!1;let r=n.value;return r==null||t&&Wd.isScalar(r)&&r.value==null&&!r.commentBefore&&!r.comment&&!r.tag})}hasIn(t){let[n,...r]=t;if(r.length===0)return this.has(n);let i=this.get(n,!0);return Wd.isCollection(i)?i.hasIn(r):!1}setIn(t,n){let[r,...i]=t;if(i.length===0)this.set(r,n);else{let o=this.get(r,!0);if(Wd.isCollection(o))o.setIn(i,n);else if(o===void 0&&this.schema)this.set(r,eR(this.schema,i,n));else throw new Error(`Expected YAML collection at ${r}. Remaining path: ${i}`)}}};_1.Collection=tR;_1.collectionFromPath=eR;_1.isEmptyPath=k5});var LS=V(T1=>{"use strict";var Nre=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function nR(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}var Dre=(e,t,n)=>e.endsWith(`
10
10
  `)?nR(n,t):n.includes(`
@@ -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}from"./V32LWM43.js";import"./ZLT4SN3P.js";import"./ZGQWJITG.js";import"./WZXA5XPB.js";import"./OAHVR5VG.js";import"./RFWIIJFG.js";export{c as phpGenerator,d as phpSample,a as phpType,b as renderPhpModels};
@@ -0,0 +1,12 @@
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{c as y,f as D}from"./BDG6IUCF.js";import{e as T,g as E}from"./3XBPOSEL.js";import{join as z}from"node:path";var a=" ";function m(r){return`transform${E(r)}`}var B="type __Writable<T> = { -readonly [K in keyof T]: T[K] };",A=!1;function I(r){return{text:r,path:[r]}}function G(r,t){return{text:`${r.text}[${JSON.stringify(t)}]`,path:[...r.path,t]}}function d(r,t,n){if(k(r))return!0;switch(r.kind){case"array":return d(r.items,t,n);case"union":return r.members.some(o=>d(o,t,n));case"ref":{if(n.has(r.name))return!1;let o=t.get(r.name);return o!==void 0&&d(o,t,new Set(n).add(r.name))}default:return!1}}function k(r){return r.kind==="scalar"&&r.scalar==="string"&&(r.metadata?.format==="date-time"||r.metadata?.format==="date")}function $(r,t,n){if(k(r))return!0;switch(r.kind){case"array":return $(r.items,t,n);case"record":return $(r.value,t,n);case"object":return r.properties.some(o=>$(o.schema,t,n));case"union":case"intersection":return r.members.some(o=>$(o,t,n));case"ref":{let o=t.get(r.name);return o!==void 0&&!n.has(r.name)?$(o,t,new Set(n).add(r.name)):!1}default:return!1}}function l(r,t,n,o=!1){return o?[`${n}if (${r}) {`,...t(n+a),`${n}}`]:[`${n}if (${r})`,...t(n+a)]}function j(r,t,n=!1){let o=n?K(r):r.text;return u=>[`${u}${o} = ${t};`]}function _(r){return t=>[`${t}${r};`]}function K(r){if(r.path.length<2)return r.text;A=!0;let t={text:r.text.slice(0,r.text.lastIndexOf("[")),path:r.path.slice(0,-1)},n=r.path[r.path.length-1];return`(${t.text} as __Writable<${R(t)}>)[${JSON.stringify(n)}]`}function R(r){let t=`typeof ${r.path[0]}`;for(let n of r.path.slice(1))t=`NonNullable<${t}>[${JSON.stringify(n)}]`;return`NonNullable<${t}>`}function U(r){return r==="data"?"item":`item${Number(r.slice(4))+1}`}function p(r,t,n,o,u,e,i=!1){if(k(t))return l(`typeof ${r.text} === "string"`,j(r,`new Date(${r.text})`,i),e);switch(t.kind){case"ref":return S(r,t.name,n,o,e,i);case"object":{let f=[];for(let c of t.properties)f.push(...H(G(r,c.name),c.schema,n,o,u,e,c.readOnly===!0));return f}case"array":return P(r,t.items,n,o,u,e,i);case"record":return J(r,t.value,n,o,u,e,!0);case"intersection":{let f=[];for(let c of t.members)f.push(...p(r,c,n,o,u,e,i));return f}case"union":return b(r,t.members,n,o,u,e,i);default:return[]}}function b(r,t,n,o,u,e,i=!1){let f=[],c=e+a,x=[];for(let s of t)if(k(s))f.push(...p(r,s,n,o,u,e,i));else if(s.kind==="ref"){if(!$(s,n,o))continue;let w=`${m(s.name)}(${r.text} as ${s.name})`,v=d(s,n,o)?j(r,w,i):_(w);x.push(...v(c))}else x.push(...p(r,s,n,o,u,c,i));return x.length>0&&f.push(...l(`${r.text} && typeof ${r.text} === "object"`,()=>x,e,!0)),f}function S(r,t,n,o,u,e=!1){let i={kind:"ref",name:t};if(!$(i,n,o))return[];let f=`${m(t)}(${r.text})`;return l(r.text,d(i,n,o)?j(r,f,e):_(f),u)}function H(r,t,n,o,u,e,i=!1){if(t.kind==="ref")return S(r,t.name,n,o,e,i);if(t.kind==="object"){let f=p(r,t,n,o,u,e+a);return f.length===0?[]:l(r.text,()=>f,e,!0)}return p(r,t,n,o,u,e,i)}function h(r,t,n,o,u=0){if(k(t))return`new Date(${r})`;if(t.kind==="ref"&&d(t,n,o))return`${m(t.name)}(${r})`;if(t.kind==="array"){let e=t.items.kind==="array"?M(u+1):"v",i=h(e,t.items,n,o,u+1);return i===null?null:`${r}.map(${e} => ${i})`}return null}function M(r){return r<=1?"row":`row${r}`}function P(r,t,n,o,u,e,i=!1){let f=t.kind==="array"?M(1):"v",c=h(f,t,n,o,1);return c!==null?l(`Array.isArray(${r.text})`,j(r,`${r.text}.map(${f} => ${c})`,i),e):t.kind==="ref"?$(t,n,o)?l(`Array.isArray(${r.text})`,_(`${r.text}.forEach(${m(t.name)})`),e):[]:J(r,t,n,o,u,e,!1)}function J(r,t,n,o,u,e,i){if(i){let s={text:`${r.text}[__k]`,path:[...r.path,"__k"]},w=h(s.text,t,n,o);if(w!==null){let v=k(t)?`typeof ${s.text} === "string"`:`Array.isArray(${s.text})`;return l(r.text,O=>[`${O}for (const __k of Object.keys(${r.text}))`,...l(v,W=>[`${W}${s.text} = ${w};`],O+a)],e)}}let f=U(u),c=p(I(f),t,n,o,f,e+a+a);if(c.length===0)return[];let x=i?`Object.values(${r.text})`:r.text;return l(i?r.text:`Array.isArray(${r.text})`,s=>[`${s}${x}.forEach(${f} => {`,...c,`${s}});`],e)}function q(r,t){let n=r.name,o=I("data"),u=r.schema.kind==="ref"?S(o,r.schema.name,t,new Set,a):p(o,r.schema,t,new Set,"data",a);return[`export const ${m(r.name)} = (data: ${n}): ${n} => {`,...u,`${a}return data;`,"};"].join(`
8
+ `)}function C(r,t){let n=new Map(r.schemas.map(f=>[f.name,f.schema])),o=r.schemas.filter(f=>$(f.schema,n,new Set));if(o.length===0)return"";let u=o.map(f=>T(f.name)).join(", ");A=!1;let e=o.map(f=>q(f,n));return[`import type { ${u} } from ${JSON.stringify(t.sdkModule)};`,...A?[B]:[],...e].join(`
9
+
10
+ `)}var N=({model:r,outputPath:t,emit:n})=>{let{dir:o,stem:u}=D(t),e=C(r,{sdkModule:`./${u}.${n.importExt??"js"}`});return e===""?[]:[{path:z(o,`${u}.transformers.ts`),content:`${y}
11
+
12
+ ${e}`}]};export{N as a};
@@ -1831,6 +1831,9 @@ type CliAuthScheme = { key: string; kind: 'bearer' | 'basic' | 'apiKey' };
1831
1831
 
1832
1832
  type CliWiring = {
1833
1833
  binName: string;
1834
+ /** Credential variable prefix. Defaults to \`binName\`, constant-cased \u2014 set it when the
1835
+ * displayed name and the credential family must differ (a composed multi-API binary). */
1836
+ envPrefix?: string;
1834
1837
  /** The generated instance client (grouped-args methods). */
1835
1838
  client: Record<string, unknown>;
1836
1839
  configure: (config: Record<string, unknown>) => void;
@@ -1866,6 +1869,66 @@ type CliInvocation =
1866
1869
  }
1867
1870
  | { kind: 'usage-error'; message: string };
1868
1871
 
1872
+ /**
1873
+ * A hand-written command composed NEXT TO the generated ones: the same data shape plus a
1874
+ * \`handler\`, so it inherits help, parsing, \`schema\`, and the exit-code contract. This is
1875
+ * how behavior that is not in the description (a \`login\`, a doctor command) joins the
1876
+ * binary without the generator ever learning what it does.
1877
+ */
1878
+ type CustomCommand = {
1879
+ name: string;
1880
+ group?: string;
1881
+ summary?: string;
1882
+ positionals?: CliCommand['positionals'];
1883
+ flags?: CliFlag[];
1884
+ /** Returns the process exit code; throwing exits 1 with the standard error JSON. */
1885
+ handler: (context: CommandContext) => number | Promise<number>;
1886
+ };
1887
+
1888
+ type CommandContext = {
1889
+ positionals: Record<string, string>;
1890
+ params: Record<string, unknown>;
1891
+ globals: CliGlobals;
1892
+ wiring: CliWiring;
1893
+ };
1894
+
1895
+ /** One API's contribution to a composed binary: its commands behind a namespace, with its
1896
+ * OWN wiring (base URL, schemes, credentials). A namespace-less source sits at the root. */
1897
+ type CommandSource = {
1898
+ namespace?: string;
1899
+ commands: Array<CliCommand | CustomCommand>;
1900
+ wiring: CliWiring;
1901
+ };
1902
+
1903
+ type ResolvedCommand = CliCommand & { handler?: CustomCommand['handler'] };
1904
+
1905
+ /** Custom commands as the command shape the parser reads; generated ones pass through. */
1906
+ function normalizeCommands(commands: Array<CliCommand | CustomCommand>): ResolvedCommand[] {
1907
+ return commands.map((command) =>
1908
+ 'handler' in command
1909
+ ? { method: '', path: '', positionals: [], flags: [], ...command }
1910
+ : command
1911
+ );
1912
+ }
1913
+
1914
+ /**
1915
+ * The name of a custom command that shadows another command. Rejected at startup: an
1916
+ * operator typing an operationId must never silently run something else.
1917
+ */
1918
+ function shadowedCommandName(commands: ResolvedCommand[]): string | undefined {
1919
+ const seen = new Map<string, ResolvedCommand[]>();
1920
+ for (const command of commands) {
1921
+ const key = \`\${command.group ?? ''}\\u0000\${command.name}\`;
1922
+ seen.set(key, [...(seen.get(key) ?? []), command]);
1923
+ }
1924
+ for (const clashing of seen.values()) {
1925
+ if (clashing.length > 1 && clashing.some((command) => command.handler !== undefined)) {
1926
+ return clashing[0].name;
1927
+ }
1928
+ }
1929
+ return undefined;
1930
+ }
1931
+
1869
1932
  const GLOBAL_FLAGS: Record<string, { key: keyof CliGlobals; boolean?: boolean }> = {
1870
1933
  'server-url': { key: 'serverUrl' },
1871
1934
  format: { key: 'format' },
@@ -2037,7 +2100,7 @@ function envPrefix(binName: string): string {
2037
2100
 
2038
2101
  function resolveAuth(wiring: CliWiring, token: string | undefined): Record<string, unknown> {
2039
2102
  const env = wiring.env ?? {};
2040
- const prefix = envPrefix(wiring.binName);
2103
+ const prefix = wiring.envPrefix ?? envPrefix(wiring.binName);
2041
2104
  const auth: Record<string, unknown> = {};
2042
2105
  for (const scheme of wiring.schemes ?? []) {
2043
2106
  if (scheme.kind === 'bearer') {
@@ -2071,8 +2134,8 @@ function commandContract(command: CliCommand): Record<string, unknown> {
2071
2134
  operationId: command.name,
2072
2135
  ...(command.group === undefined ? {} : { group: groupSlug(command.group) }),
2073
2136
  ...(command.summary === undefined ? {} : { summary: oneLine(command.summary) }),
2074
- method: command.method,
2075
- path: command.path,
2137
+ ...(command.method === '' ? {} : { method: command.method }),
2138
+ ...(command.path === '' ? {} : { path: command.path }),
2076
2139
  parameters: {
2077
2140
  path: command.positionals.map((positional) => ({
2078
2141
  name: positional.name,
@@ -2105,6 +2168,7 @@ function renderHelp(
2105
2168
  commands: CliCommand[],
2106
2169
  binName: string,
2107
2170
  schemes: CliAuthScheme[],
2171
+ prefix: string,
2108
2172
  topic?: CliCommand | string
2109
2173
  ): string[] {
2110
2174
  if (topic !== undefined && typeof topic !== 'string') {
@@ -2166,7 +2230,6 @@ function renderHelp(
2166
2230
  // Flags that apply to every command, and the env vars credentials come from: a flag
2167
2231
  // absent from --help may as well not exist \u2014 and one this API cannot use should not be
2168
2232
  // listed at all, since the operator would spend the debugging session on their token.
2169
- const prefix = envPrefix(binName);
2170
2233
  const kinds = new Set(schemes.map((scheme) => scheme.kind));
2171
2234
  const credentials = [
2172
2235
  ...(kinds.has('bearer') ? [\`\${prefix}_TOKEN\`] : []),
@@ -2215,11 +2278,111 @@ function redactHeaders(headers: Record<string, string>, secrets: string[]): Reco
2215
2278
 
2216
2279
  /** Parse argv, resolve env auth, dispatch through the client, print, return the exit code. */
2217
2280
  async function runCli(
2218
- commands: CliCommand[],
2281
+ commands: Array<CliCommand | CustomCommand>,
2282
+ wiring: CliWiring,
2283
+ argv: string[]
2284
+ ): Promise<number>;
2285
+ /** The composed form: one binary over several sources, each namespaced with its own wiring. */
2286
+ async function runCli(sources: CommandSource[], argv: string[]): Promise<number>;
2287
+ async function runCli(
2288
+ commandsOrSources: Array<CliCommand | CustomCommand> | CommandSource[],
2289
+ wiringOrArgv: CliWiring | string[],
2290
+ argv?: string[]
2291
+ ): Promise<number> {
2292
+ if (Array.isArray(wiringOrArgv)) {
2293
+ return runSources(commandsOrSources as CommandSource[], wiringOrArgv);
2294
+ }
2295
+ return runSingle(
2296
+ commandsOrSources as Array<CliCommand | CustomCommand>,
2297
+ wiringOrArgv,
2298
+ argv ?? []
2299
+ );
2300
+ }
2301
+
2302
+ /** Route the first token to its source; the namespace-less source owns the root. */
2303
+ async function runSources(sources: CommandSource[], argv: string[]): Promise<number> {
2304
+ // Top-level output goes through the first source: with a root source that is the one
2305
+ // carrying the shared commands, otherwise the first API listed.
2306
+ const top = sources[0].wiring;
2307
+ const fail = (code: number, message: string): number => {
2308
+ top.stderr(JSON.stringify({ error: { code, message } }));
2309
+ return code;
2310
+ };
2311
+ const namespaced = sources.filter(
2312
+ (source): source is CommandSource & { namespace: string } => source.namespace !== undefined
2313
+ );
2314
+ const root = sources.find((source) => source.namespace === undefined);
2315
+ if (root !== undefined) {
2316
+ const clash = root.commands.find((command) =>
2317
+ namespaced.some((source) => source.namespace === command.name)
2318
+ );
2319
+ if (clash !== undefined) {
2320
+ return fail(
2321
+ 4,
2322
+ \`Root command "\${clash.name}" collides with the "\${clash.name}" namespace \u2014 rename one of them.\`
2323
+ );
2324
+ }
2325
+ }
2326
+ if (argv.length === 0 || argv[0] === '--help') {
2327
+ for (const line of renderComposedHelp(sources, top.binName)) top.stdout(line);
2328
+ return 0;
2329
+ }
2330
+ const source = namespaced.find((candidate) => candidate.namespace === argv[0]);
2331
+ if (source !== undefined) return runSingle(source.commands, source.wiring, argv.slice(1));
2332
+ const rootTakes =
2333
+ root !== undefined &&
2334
+ (argv[0] === 'schema' ||
2335
+ root.commands.some(
2336
+ (command) =>
2337
+ command.name === argv[0] ||
2338
+ (command.group !== undefined && groupSlug(command.group) === argv[0])
2339
+ ));
2340
+ if (rootTakes)
2341
+ return runSingle((root as CommandSource).commands, (root as CommandSource).wiring, argv);
2342
+ return fail(
2343
+ 4,
2344
+ \`Unknown command: \${argv[0]} \u2014 expected an API namespace (\${namespaced
2345
+ .map((candidate) => candidate.namespace)
2346
+ .join(', ')})\${root !== undefined ? ' or a root command' : ''}\`
2347
+ );
2348
+ }
2349
+
2350
+ /** The composed top-level help: namespaces, root commands, and how to descend. */
2351
+ function renderComposedHelp(sources: CommandSource[], binName: string): string[] {
2352
+ const lines = [\`Usage: \${binName} <api> <command> \u2026\`, '', 'APIs:'];
2353
+ for (const source of sources) {
2354
+ if (source.namespace !== undefined) lines.push(\` \${source.namespace}\`);
2355
+ }
2356
+ const root = sources.find((source) => source.namespace === undefined);
2357
+ if (root !== undefined && root.commands.length > 0) {
2358
+ lines.push('', 'Commands:');
2359
+ for (const command of root.commands) {
2360
+ lines.push(\` \${command.name} \${oneLine(command.summary ?? '')}\`.trimEnd());
2361
+ }
2362
+ }
2363
+ lines.push('', \`Run \${binName} <api> --help for that API's commands.\`);
2364
+ return lines;
2365
+ }
2366
+
2367
+ async function runSingle(
2368
+ rawCommands: Array<CliCommand | CustomCommand>,
2219
2369
  wiring: CliWiring,
2220
2370
  argv: string[]
2221
2371
  ): Promise<number> {
2222
2372
  const { stdout, stderr } = wiring;
2373
+ const commands = normalizeCommands(rawCommands);
2374
+ const shadowed = shadowedCommandName(commands);
2375
+ if (shadowed !== undefined) {
2376
+ stderr(
2377
+ JSON.stringify({
2378
+ error: {
2379
+ code: 4,
2380
+ message: \`Custom command "\${shadowed}" collides with another command of the same name \u2014 rename it.\`,
2381
+ },
2382
+ })
2383
+ );
2384
+ return 4;
2385
+ }
2223
2386
  const fail = (code: number, error: Record<string, unknown>): number => {
2224
2387
  stderr(JSON.stringify({ error: { code, ...error } }));
2225
2388
  return code;
@@ -2228,7 +2391,14 @@ async function runCli(
2228
2391
  const invocation = parseInvocation(commands, argv);
2229
2392
  if (invocation.kind === 'usage-error') return fail(4, { message: invocation.message });
2230
2393
  if (invocation.kind === 'help') {
2231
- for (const line of renderHelp(commands, wiring.binName, wiring.schemes ?? [], invocation.topic))
2394
+ const prefix = wiring.envPrefix ?? envPrefix(wiring.binName);
2395
+ for (const line of renderHelp(
2396
+ commands,
2397
+ wiring.binName,
2398
+ wiring.schemes ?? [],
2399
+ prefix,
2400
+ invocation.topic
2401
+ ))
2232
2402
  stdout(line);
2233
2403
  return 0;
2234
2404
  }
@@ -2304,6 +2474,10 @@ async function runCli(
2304
2474
  // by name", so one localized widening here keeps the emitted wiring cast-free.
2305
2475
  const methods = wiring.client as Record<string, unknown>;
2306
2476
  try {
2477
+ const resolved = command as ResolvedCommand;
2478
+ if (resolved.handler !== undefined) {
2479
+ return await resolved.handler({ positionals, params, globals, wiring });
2480
+ }
2307
2481
  if (globals.pageAll && !globals.dryRun) {
2308
2482
  const paginated = methods[command.name] as {
2309
2483
  pages: (variables?: unknown) => AsyncIterable<unknown>;
@@ -2343,4 +2517,4 @@ async function runCli(
2343
2517
  }
2344
2518
  return fail(1, detail);
2345
2519
  }
2346
- }`},n=["ApiError","ApiErrorLike","AuthCredentials","BodyMethod","Capabilities","CliAuthScheme","CliCommand","CliFlag","CliGlobals","CliInvocation","CliWiring","Client","ClientConfig","ClientCore","Envelope","EnvelopeResult","EnvelopeResultForKnownInit","FRAME_DELIMITER","GLOBAL_FLAGS","HeadersOf","IDEMPOTENT_METHODS","LinkPageCall","Middleware","NoRequiredKeys","OperationArgs","OperationContext","OperationDescriptor","OperationMethodIdentity","OpsShape","PageOf","Paginated","PaginationSpec","ParamSpec","ParseAs","QueryStyle","QueryValue","RequestContext","RequestOptions","ResponseHeaderSpec","Result","RetryConfig","RetryContext","RetryStrategy","SecuritySpec","SendCapabilities","ServerSentEvent","SseOptions","SseParseError","TRANSIENT_STATUS","ThrowMethod","TimeoutError","TokenProvider","abortError","acceptFor","buildUrl","coerceResponseHeader","commandContract","createClientCore","defaultRetryOn","encodeBase64","encodeReserved","envPrefix","execute","groupSlug","isConfigured","items","itemsByLink","kindFor","linkNext","linkPageCall","loadBody","mergeSetup","middlewareChain","oneLine","pageCall","pages","pagesByLink","paginateCapability","parse","parseInvocation","parseSseFrame","prepareRequest","queryStyles","readEnvelopeHeaders","readError","redactHeaders","renderHelp","resolveAuth","resolvePointer","resolveToken","retryDelay","runCli","send","sleep","splitArgs","sse","stringHeaders","substitutePath","toFormData","toHeaderRecord"];export{e as a,n as b};
2520
+ }`},n=["ApiError","ApiErrorLike","AuthCredentials","BodyMethod","Capabilities","CliAuthScheme","CliCommand","CliFlag","CliGlobals","CliInvocation","CliWiring","Client","ClientConfig","ClientCore","CommandContext","CommandSource","CustomCommand","Envelope","EnvelopeResult","EnvelopeResultForKnownInit","FRAME_DELIMITER","GLOBAL_FLAGS","HeadersOf","IDEMPOTENT_METHODS","LinkPageCall","Middleware","NoRequiredKeys","OperationArgs","OperationContext","OperationDescriptor","OperationMethodIdentity","OpsShape","PageOf","Paginated","PaginationSpec","ParamSpec","ParseAs","QueryStyle","QueryValue","RequestContext","RequestOptions","ResolvedCommand","ResponseHeaderSpec","Result","RetryConfig","RetryContext","RetryStrategy","SecuritySpec","SendCapabilities","ServerSentEvent","SseOptions","SseParseError","TRANSIENT_STATUS","ThrowMethod","TimeoutError","TokenProvider","abortError","acceptFor","buildUrl","coerceResponseHeader","commandContract","createClientCore","defaultRetryOn","encodeBase64","encodeReserved","envPrefix","execute","groupSlug","isConfigured","items","itemsByLink","kindFor","linkNext","linkPageCall","loadBody","mergeSetup","middlewareChain","normalizeCommands","oneLine","pageCall","pages","pagesByLink","paginateCapability","parse","parseInvocation","parseSseFrame","prepareRequest","queryStyles","readEnvelopeHeaders","readError","redactHeaders","renderComposedHelp","renderHelp","resolveAuth","resolvePointer","resolveToken","retryDelay","runCli","runSingle","runSources","send","shadowedCommandName","sleep","splitArgs","sse","stringHeaders","substitutePath","toFormData","toHeaderRecord"];export{e as a,n as b};
@@ -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{c as a,d as b}from"./2DWEYMHQ.js";import"./UNIU37XO.js";import"./OIU2WEB6.js";import"./4UKV6YKE.js";import"./WZXA5XPB.js";import"./YSMUBJCG.js";import"./X4BGIKNX.js";import"./NEWT5A6S.js";import"./3XBPOSEL.js";import"./RFWIIJFG.js";export{b as generateClient,a as runGenerators};
@@ -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 re}from"./6ATAJMOK.js";import"./ZLT4SN3P.js";import"./ZGQWJITG.js";import{a as Z,b as ee,c as ne}from"./CDIETNM7.js";import"./ZXLNDDJH.js";import"./WZXA5XPB.js";import{b as X}from"./P3HJG5ZU.js";import{k as _}from"./OAHVR5VG.js";import{b as te}from"./IWSGIYUF.js";import{a as y}from"./YSMUBJCG.js";import{a as M}from"./EG5RJVOK.js";import"./C65SIVY5.js";import"./NEWT5A6S.js";import{a as g,b as W,c as z}from"./3GFYSU6P.js";import{a as Q,b as V,c as q,d as w,e as I,f as Y}from"./BDG6IUCF.js";import{a as x,d as K,e as j,f as N,g as P,h as G}from"./3XBPOSEL.js";import"./RFWIIJFG.js";import{join as He}from"node:path";function O(e){return e.contentType==="multipart/form-data"&&e.schema.kind==="object"}var be=" ";function Te(e,r=[]){let n=_(e,{schemas:r});return n==="integer"?"number":n}function se(e,r=[]){let n=oe(e,r);if(n.length!==0)return n.map(t=>({name:t.name,key:t.key,type:t.type}))}function E(e,r=[],n=""){let t=n+be,s=oe(e,r).map(o=>`${t}${o.key}${o.required===!0?"":"?"}: ${o.type};`);return s.length===0?"{}":`{
7
+ import{a as re}from"./DOGJOUHK.js";import{a as Z,b as ee,c as ne}from"./OIU2WEB6.js";import{b as X}from"./CK4ZS5PH.js";import{k as _}from"./OAHVR5VG.js";import{b as te}from"./IWSGIYUF.js";import{a as y}from"./YSMUBJCG.js";import{a as M}from"./EG5RJVOK.js";import{a as g,b as W,c as z}from"./3GFYSU6P.js";import{a as Q,b as V,c as q,d as w,e as I,f as Y}from"./BDG6IUCF.js";import{a as x,d as K,e as j,f as N,g as P,h as G}from"./3XBPOSEL.js";import{join as He}from"node:path";function O(e){return e.contentType==="multipart/form-data"&&e.schema.kind==="object"}var be=" ";function Te(e,r=[]){let n=_(e,{schemas:r});return n==="integer"?"number":n}function se(e,r=[]){let n=oe(e,r);if(n.length!==0)return n.map(t=>({name:t.name,key:t.key,type:t.type}))}function E(e,r=[],n=""){let t=n+be,s=oe(e,r).map(o=>`${t}${o.key}${o.required===!0?"":"?"}: ${o.type};`);return s.length===0?"{}":`{
8
8
  ${s.join(`
9
9
  `)}
10
10
  ${n}}`}function oe(e,r){let n=new Set;return(e??[]).map(t=>({...t,key:N(G(t.name),n),type:Te(t.schema,r)}))}var ie=" ";function $(e,r,n){let t=V(e,r);return t===void 0?[]:[`${n}/**`,...Q(t).split(`
@@ -50,4 +50,4 @@ const __redoclySetup: { config?: ClientConfig; middleware?: Middleware[] } = ${e
50
50
  export type { ${n.join(", ")} } from '${F}';`}var In=({model:e,outputPath:r,outputMode:n,emit:t})=>{if(n==="split"){let{dir:s,stem:o}=Y(r),{entry:a,schemas:c}=ke(e,t,o);return[...c===void 0?[]:[{path:He(s,`${o}.schemas.ts`),content:c}],{path:r,content:a}]}return[{path:r,content:$e(e,t)}]};function Mn(e,r){let n=H(r.model).get(e.name)??e.name,t=e.queryParams.filter(a=>a.required),s=[];t.length>0&&s.push(`params: { ${t.map(a=>`'${a.name}': /* \u2026 */`).join(", ")} }`),e.requestBody&&s.push("body: { /* \u2026 */ }");let o=r.emit.argsStyle==="grouped"?e.pathParams.length+s.length>0?[`{ ${[...e.pathParams.map(a=>`'${a.name}': '<${a.name}>'`),...s].join(", ")} }`]:[]:[...e.pathParams.map(a=>`'<${a.name}>'`),...s.length>0?[`{ ${s.join(", ")} }`]:[]];return{lang:"typescript",label:"TypeScript SDK",source:`import { ${n} } from './client';
51
51
 
52
52
  const result = await ${n}(${o.join(", ")});
53
- `}}export{In as sdkGenerator,Mn as sdkSample};
53
+ `}}export{$ as a,h as b,In as c,Mn as d};
@@ -4,5 +4,5 @@ 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{c}from"./C65SIVY5.js";import{open as C,readdir as N,stat as P}from"node:fs/promises";import d from"node:path";var $=new Set([".yaml",".yml",".json"]);async function D(e){let n=[];async function t(r){let o=await N(r,{withFileTypes:!0});for(let s of o){if(s.name.startsWith("."))continue;let i=d.join(r,s.name);if(s.isDirectory()){await t(i);continue}s.isFile()&&$.has(d.extname(s.name).toLowerCase())&&n.push(i)}}return await t(e),n.sort(),n}async function _(e,n=4096){let t=await C(e,"r");try{let r=Buffer.allocUnsafe(n),{bytesRead:o}=await t.read(r,0,n,0);return r.toString("utf8",0,o)}finally{await t.close()}}function M(e){return d.resolve(process.cwd(),e)}async function K(e){let n=await P(e);if(n.isFile())return[e];if(!n.isDirectory())return[];let t=[];async function r(o){let s=await N(o,{withFileTypes:!0});for(let i of s){if(i.name.startsWith("."))continue;let a=d.join(o,i.name);if(i.isDirectory()){await r(a);continue}i.isFile()&&t.push(a)}}return await r(e),t.sort(),t}var k="drift.local",O=`http://${k}`;function u(e){return e===k}var U=new Set(["accept","accept-charset","accept-encoding","accept-language","authorization","baggage","cache-control","cdn-loop","cookie","connection","content-length","content-type","dpr","dnt","downlink","ect","forwarded","host","if-match","if-modified-since","if-none-match","if-range","if-unmodified-since","origin","pragma","priority","range","referer","sec-fetch-dest","sec-fetch-mode","sec-fetch-site","sec-fetch-user","sec-gpc","sentry-trace","te","traceparent","tracestate","upgrade","upgrade-insecure-requests","user-agent","via","x-client-trace-id","x-cloud-trace-context","x-correlation-id","x-http-method-override","x-hub-signature","x-hub-signature-256","x-method-override","x-real-ip","x-request-id","x-forwarded-for","x-forwarded-host","x-forwarded-port","x-forwarded-proto"]),J=["cf-","sec-ch-","sec-fetch-","x-amz-","x-amzn-","x-b3-","x-envoy-","x-forwarded-","x-github-"],R=`
7
+ import{c}from"./X4BGIKNX.js";import{open as C,readdir as N,stat as P}from"node:fs/promises";import d from"node:path";var $=new Set([".yaml",".yml",".json"]);async function D(e){let n=[];async function t(r){let o=await N(r,{withFileTypes:!0});for(let s of o){if(s.name.startsWith("."))continue;let i=d.join(r,s.name);if(s.isDirectory()){await t(i);continue}s.isFile()&&$.has(d.extname(s.name).toLowerCase())&&n.push(i)}}return await t(e),n.sort(),n}async function _(e,n=4096){let t=await C(e,"r");try{let r=Buffer.allocUnsafe(n),{bytesRead:o}=await t.read(r,0,n,0);return r.toString("utf8",0,o)}finally{await t.close()}}function M(e){return d.resolve(process.cwd(),e)}async function K(e){let n=await P(e);if(n.isFile())return[e];if(!n.isDirectory())return[];let t=[];async function r(o){let s=await N(o,{withFileTypes:!0});for(let i of s){if(i.name.startsWith("."))continue;let a=d.join(o,i.name);if(i.isDirectory()){await r(a);continue}i.isFile()&&t.push(a)}}return await r(e),t.sort(),t}var k="drift.local",O=`http://${k}`;function u(e){return e===k}var U=new Set(["accept","accept-charset","accept-encoding","accept-language","authorization","baggage","cache-control","cdn-loop","cookie","connection","content-length","content-type","dpr","dnt","downlink","ect","forwarded","host","if-match","if-modified-since","if-none-match","if-range","if-unmodified-since","origin","pragma","priority","range","referer","sec-fetch-dest","sec-fetch-mode","sec-fetch-site","sec-fetch-user","sec-gpc","sentry-trace","te","traceparent","tracestate","upgrade","upgrade-insecure-requests","user-agent","via","x-client-trace-id","x-cloud-trace-context","x-correlation-id","x-http-method-override","x-hub-signature","x-hub-signature-256","x-method-override","x-real-ip","x-request-id","x-forwarded-for","x-forwarded-host","x-forwarded-port","x-forwarded-proto"]),J=["cf-","sec-ch-","sec-fetch-","x-amz-","x-amzn-","x-b3-","x-envoy-","x-forwarded-","x-github-"],R=`
8
8
  `;function Y(e){return e.split(R)}function g(e,n,t){let r=n.toLowerCase(),o=e[r];if(o===void 0){e[r]=t;return}e[r]=r==="set-cookie"?`${o}${R}${t}`:`${o},${t}`}function p(e){if(!c(e)&&!Array.isArray(e))return{};let n={};if(Array.isArray(e)){for(let t of e){if(!c(t))continue;let{name:r,value:o}=t;typeof r=="string"&&o!==void 0&&g(n,r,String(o))}return n}for(let[t,r]of Object.entries(e))if(r!=null){if(Array.isArray(r)){for(let o of r)g(n,t,String(o));continue}g(n,t,String(r))}return n}function f(e){try{return new URL(e)}catch{return new URL(e,O)}}function m(e){return e.length>1&&e.endsWith("/")?e.slice(0,-1):e}function L(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function V(e){let n=[],t=0,r=e.startsWith("/")?e:`/${e}`,s=m(r).split("/").map(i=>{if(!i)return"";let a=i.match(/^\{([^}]+)\}$/);return a?(n.push(a[1]),"([^/]+)"):(t+=2,L(i))}).join("/");return{regex:new RegExp(`^${s||"/"}$`),params:n,score:t}}function l(e,n){if(n&&A(e))try{return JSON.parse(n)}catch{return}}function E(e){return e?e.split(";")[0]?.trim().toLowerCase()??"":""}function A(e){let n=E(e);return n==="application/json"||n.endsWith("+json")}function Q(e,n){let t=E(n);if(!t)return e["application/json"]??e["*/*"];if(e[t]!==void 0)return e[t];let[r,o]=t.split("/");if(r&&o){let s=`${r}/*`;if(e[s]!==void 0)return e[s]}return e["*/*"]}function Z(e){let n=new Set,t=[];for(let r of e){let o=r.trim().toLowerCase();o.length!==0&&(o.endsWith("*")?t.push(o.slice(0,-1)):n.add(o))}return{names:n,prefixes:t}}function v(e,n){let t=e.toLowerCase();return t.startsWith(":")||U.has(t)||J.some(r=>t.startsWith(r))?!0:n?n.names.has(t)||n.prefixes.some(r=>t.startsWith(r)):!1}import{createReadStream as q}from"node:fs";import{readFile as B}from"node:fs/promises";import{createInterface as F}from"node:readline";function I(e){if(e!=null){if(typeof e=="string")return e;if(Buffer.isBuffer(e))return e.toString("utf8");if(c(e)||Array.isArray(e))try{return JSON.stringify(e)}catch{return String(e)}return String(e)}}function se(e){if(typeof e=="number"&&Number.isFinite(e))return e;if(typeof e=="string"&&e.trim()!==""){let n=Number(e);if(Number.isFinite(n))return n}}function H(e,n){if(e!=null){if(n==="base64"&&typeof e=="string")try{return Buffer.from(e,"base64").toString("utf8")}catch{return e}return I(e)}}function ae(e,n,t){let r=e.method?.toUpperCase(),o=e.url;if(!r||!o)return null;let s=p(e.requestHeaders),i=f(o);if(u(i.host)&&s.host)try{i=new URL(`${i.protocol}//${s.host}${i.pathname}${i.search}`)}catch{i=f(o)}let a=e.requestContentType??s["content-type"],y=H(e.requestBody),T={method:r,url:i.toString(),path:i.pathname,query:i.searchParams,protocol:i.protocol,protocolKnown:e.schemeKnown??/^https?:\/\//i.test(o),host:u(i.host)?void 0:i.host||void 0,headers:s,contentType:a,bodyText:y,bodyJson:l(a,y)},h,x=e.responseStatus;if(x!==void 0){let w=p(e.responseHeaders),S=e.responseContentType??w["content-type"],b=H(e.responseBody);h={status:x,statusText:e.responseStatusText,headers:w,contentType:S,bodyText:b,bodyJson:l(S,b)}}return{index:n,source:t,startedAt:e.startedAt,request:T,response:h,raw:e.raw}}async function*ce(e){let n=q(e,{encoding:"utf8"}),t=F({input:n,crlfDelay:1/0});for await(let r of t){let o=r.trim();if(o)try{let s=JSON.parse(o);c(s)&&(yield s)}catch{}}}async function*ue(e,n){let t=await B(e,"utf8"),r=JSON.parse(t);if(n)for(let o of n.split("."))r=c(r)?r[o]:void 0;if(Array.isArray(r))for(let o of r)c(o)&&(yield o)}function fe(e){return p(e)["content-type"]}function ge(e){return e?.replace(/\/+$/,"")||void 0}function z(e,n){if(!n||n==="/")return e||"/";if(e===n)return"/";if(e.startsWith(`${n}/`))return e.slice(n.length)||"/"}function me(e,n){if(n.startsWith("/"))return z(e.path,n);let t=f(n.includes("://")?n:`http://${n}`);if(!(u(t.host)||e.host!==void 0&&e.host.toLowerCase()!==t.host))return z(e.path,m(t.pathname))}export{D as a,_ as b,M as c,K as d,u as e,Y as f,f as g,m as h,V as i,E as j,A as k,Q as l,Z as m,v as n,I as o,se as p,H as q,ae as r,ce as s,ue as t,fe as u,ge as v,me as 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}from"./L5LCHFFW.js";import"./UZA2PWNR.js";import"./DOGJOUHK.js";import"./4UKV6YKE.js";import"./CK4ZS5PH.js";import"./OAHVR5VG.js";import"./YSMUBJCG.js";import"./X4BGIKNX.js";import"./NEWT5A6S.js";import"./3GFYSU6P.js";import"./BDG6IUCF.js";import"./3XBPOSEL.js";import"./RFWIIJFG.js";export{a as cliGenerator,b as cliSample};
@@ -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}from"./QEKV4246.js";import"./IWSGIYUF.js";import"./YSMUBJCG.js";import"./X4BGIKNX.js";import"./NEWT5A6S.js";import"./BDG6IUCF.js";import"./3XBPOSEL.js";import"./RFWIIJFG.js";export{a as mockGenerator};