@redocly/cli 2.58.0 → 2.58.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. package/THIRD_PARTY_NOTICES +1 -1
  2. package/lib/chunks/{TAEOWXJJ.js → 263OU3EK.js} +1 -1
  3. package/lib/chunks/{5WKNTF7W.js → 2CAHRLJ3.js} +1 -1
  4. package/lib/chunks/{YMMEOUYX.js → 2H2LESBI.js} +1 -1
  5. package/lib/chunks/{C6B5SYPM.js → 34J7T7MH.js} +1 -1
  6. package/lib/chunks/{JXAUEF5V.js → 3STDF6WW.js} +1 -1
  7. package/lib/chunks/{3RJ5Q24M.js → 3WFT3I7F.js} +1 -1
  8. package/lib/chunks/{JPHYX7OV.js → 4R5JMLPR.js} +1 -1
  9. package/lib/chunks/{R5A3H7N2.js → 4U5QHDPF.js} +1 -1
  10. package/lib/chunks/{65C4QORD.js → 4WEATF5W.js} +1 -1
  11. package/lib/chunks/{BZNIB4HL.js → 4Y6NCJUT.js} +1 -1
  12. package/lib/chunks/{FBHTM4LH.js → 5AUGOZUX.js} +1 -1
  13. package/lib/chunks/{2ERUBDSZ.js → 5TPCSTMC.js} +1 -1
  14. package/lib/chunks/{4BCJL2BX.js → 6VBDC3HP.js} +1 -1
  15. package/lib/chunks/{QXUO5IQJ.js → 6XEDECSL.js} +1 -1
  16. package/lib/chunks/{NYQDTPTE.js → 7JYJB6ME.js} +1 -1
  17. package/lib/chunks/{EPFKYDYC.js → 7WMNFTJC.js} +1 -1
  18. package/lib/chunks/{252ZXXJ7.js → AW5K6TIG.js} +1 -1
  19. package/lib/chunks/{LIAO3NFX.js → BBX56KPO.js} +1 -1
  20. package/lib/chunks/{6HHP5O4K.js → BNNOQCQA.js} +1 -1
  21. package/lib/chunks/{X5U3XCIW.js → CMHJY4T2.js} +1 -1
  22. package/lib/chunks/{LWTH3K75.js → CTTC32GG.js} +1 -1
  23. package/lib/chunks/{WFGS4GSF.js → DD3JYFIR.js} +3 -3
  24. package/lib/chunks/{DVJIGHFR.js → DEZGXWTS.js} +1 -1
  25. package/lib/chunks/{PB256IKB.js → DTH2KLMU.js} +2 -2
  26. package/lib/chunks/{7HX6H6PZ.js → EPO2USQL.js} +1 -1
  27. package/lib/chunks/{M4JX2FBY.js → EXXYMXIB.js} +1 -1
  28. package/lib/chunks/{ERFOEXTV.js → H4NHEW6K.js} +1 -1
  29. package/lib/chunks/{NRU2WFMW.js → ICTI23CL.js} +2 -2
  30. package/lib/chunks/{SXYE4UNQ.js → IMRV4QDD.js} +1 -1
  31. package/lib/chunks/{MT5H2R3P.js → JD3HIQIK.js} +56 -56
  32. package/lib/chunks/{T6HGKHGP.js → JIN2S34E.js} +1 -1
  33. package/lib/chunks/{ROE2PM62.js → KIUUH6YY.js} +1 -1
  34. package/lib/chunks/{PWVCTNVT.js → LBQ2QKCY.js} +1 -1
  35. package/lib/chunks/{YTAL3SI4.js → LHKIMOHX.js} +2 -2
  36. package/lib/chunks/{U4WMP25Y.js → LRFPMBTV.js} +1 -1
  37. package/lib/chunks/{46SNGFKM.js → M7T6N7AK.js} +1 -1
  38. package/lib/chunks/{3QTDDZ3U.js → MGVCQC3T.js} +1 -1
  39. package/lib/chunks/{RREAI5RF.js → MSKEZAFV.js} +1 -1
  40. package/lib/chunks/{YFBPBQ7G.js → MVXFJBMU.js} +1 -1
  41. package/lib/chunks/{2LDRZLQD.js → MW2B5X5N.js} +1 -1
  42. package/lib/chunks/{MWJGFN4Y.js → NJRBU6GW.js} +1 -1
  43. package/lib/chunks/{JF6HX6A6.js → NMS2HUB3.js} +1 -1
  44. package/lib/chunks/{7KZRKMQI.js → O3UAIIFE.js} +1 -1
  45. package/lib/chunks/{FIMSBOF2.js → OJPXHGKU.js} +1 -1
  46. package/lib/chunks/{PZEYEOIF.js → PFZ3YKKV.js} +1 -1
  47. package/lib/chunks/{BNAH4YGC.js → PI42YPSD.js} +1 -1
  48. package/lib/chunks/{OQ2G774U.js → PJD3MHLL.js} +1 -1
  49. package/lib/chunks/{YLFY2DKU.js → PJXZKT3O.js} +1 -1
  50. package/lib/chunks/{2523PDUF.js → Q4ESEW3O.js} +1 -1
  51. package/lib/chunks/{6G6YWZOW.js → QK7R3ZTY.js} +1 -1
  52. package/lib/chunks/{6XXDGMQI.js → QQZJ42HN.js} +1 -1
  53. package/lib/chunks/{GDFQSHUE.js → R2IHROCG.js} +1 -1
  54. package/lib/chunks/{7BM3QKWP.js → RAYBJJ43.js} +1 -1
  55. package/lib/chunks/{NSNQAVBA.js → RVRYLTME.js} +1 -1
  56. package/lib/chunks/{H7Z35EAH.js → RW4XUFPU.js} +1 -1
  57. package/lib/chunks/{3TRGOJ74.js → SQUNMRDS.js} +1 -1
  58. package/lib/chunks/{VNSAGJ2H.js → SQYOXXOB.js} +1 -1
  59. package/lib/chunks/{6ESHHDEM.js → UK55KIZM.js} +1 -1
  60. package/lib/chunks/{D2IJWX6B.js → URZNERQS.js} +1 -1
  61. package/lib/chunks/{TTWBJ74O.js → W3WAOVRR.js} +1 -1
  62. package/lib/chunks/{ABUS6H76.js → WJTV2BWV.js} +2 -2
  63. package/lib/chunks/{3TNSVCBC.js → WTIPGXGP.js} +1 -1
  64. package/lib/chunks/{YPT2KQ2K.js → XIO2RWJ6.js} +1 -1
  65. package/lib/chunks/{V34PUN4E.js → XTW63JDM.js} +1 -1
  66. package/lib/chunks/{XARQ5LTM.js → YURX7H3N.js} +1 -1
  67. package/lib/chunks/{QZJD7SST.js → YZRKJF2V.js} +1 -1
  68. package/lib/chunks/{OJE7THLM.js → Z7JI42WA.js} +1 -1
  69. package/lib/chunks/{N6VRECSO.js → ZIIE7LXR.js} +1 -1
  70. package/lib/eject-assets/generators/cli/docs.ts +1 -1
  71. package/lib/eject-assets/generators/cli/engine-source.ts +1 -1
  72. package/lib/eject-assets/generators/cli/index.ts +2 -2
  73. package/lib/eject-assets/generators/cli/render.ts +1 -1
  74. package/lib/eject-assets/generators/go/client.ts +1 -1
  75. package/lib/eject-assets/generators/go/descriptor.ts +1 -1
  76. package/lib/eject-assets/generators/go/index.ts +2 -2
  77. package/lib/eject-assets/generators/go/models.ts +1 -1
  78. package/lib/eject-assets/generators/go/naming.ts +1 -1
  79. package/lib/eject-assets/generators/go/operations.ts +1 -1
  80. package/lib/eject-assets/generators/go/pagination.ts +1 -1
  81. package/lib/eject-assets/generators/go/types.ts +1 -1
  82. package/lib/eject-assets/generators/mock/faker.ts +1 -1
  83. package/lib/eject-assets/generators/mock/index.ts +2 -2
  84. package/lib/eject-assets/generators/mock/render.ts +1 -1
  85. package/lib/eject-assets/generators/mock/sample.ts +1 -1
  86. package/lib/eject-assets/generators/mock/values.ts +1 -1
  87. package/lib/eject-assets/generators/php/client.ts +1 -1
  88. package/lib/eject-assets/generators/php/descriptor.ts +1 -1
  89. package/lib/eject-assets/generators/php/index.ts +24 -23
  90. package/lib/eject-assets/generators/php/models.ts +1 -1
  91. package/lib/eject-assets/generators/php/naming.ts +1 -1
  92. package/lib/eject-assets/generators/php/operations.ts +2 -2
  93. package/lib/eject-assets/generators/php/pagination.ts +2 -2
  94. package/lib/eject-assets/generators/php/types.ts +1 -1
  95. package/lib/eject-assets/generators/python/client.ts +1 -1
  96. package/lib/eject-assets/generators/python/descriptor.ts +1 -1
  97. package/lib/eject-assets/generators/python/index.ts +2 -2
  98. package/lib/eject-assets/generators/python/models.ts +1 -1
  99. package/lib/eject-assets/generators/python/naming.ts +1 -1
  100. package/lib/eject-assets/generators/python/operations.ts +1 -1
  101. package/lib/eject-assets/generators/python/pagination.ts +1 -1
  102. package/lib/eject-assets/generators/python/types.ts +1 -1
  103. package/lib/eject-assets/generators/swr/index.ts +2 -2
  104. package/lib/eject-assets/generators/swr/render.ts +1 -1
  105. package/lib/eject-assets/generators/tanstack-query/index.ts +2 -2
  106. package/lib/eject-assets/generators/tanstack-query/render.ts +1 -1
  107. package/lib/eject-assets/generators/transformers/index.ts +2 -2
  108. package/lib/eject-assets/generators/transformers/render.ts +1 -1
  109. package/lib/eject-assets/generators/typescript/banner.ts +1 -1
  110. package/lib/eject-assets/generators/typescript/client.ts +1 -1
  111. package/lib/eject-assets/generators/typescript/descriptor.ts +1 -1
  112. package/lib/eject-assets/generators/typescript/index.ts +2 -2
  113. package/lib/eject-assets/generators/typescript/inline-runtime.ts +1 -1
  114. package/lib/eject-assets/generators/typescript/operation-signature.ts +1 -1
  115. package/lib/eject-assets/generators/typescript/operation-types.ts +1 -1
  116. package/lib/eject-assets/generators/typescript/operations.ts +1 -1
  117. package/lib/eject-assets/generators/typescript/response-headers.ts +1 -1
  118. package/lib/eject-assets/generators/typescript/type-guards.ts +1 -1
  119. package/lib/eject-assets/generators/typescript/types.ts +1 -1
  120. package/lib/eject-assets/generators/zod/index.ts +2 -2
  121. package/lib/eject-assets/generators/zod/schemas.ts +1 -1
  122. package/lib/eject-assets/skills/php-generator/SKILL.md +5 -0
  123. package/lib/index.js +5 -5
  124. package/package.json +1 -1
@@ -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{l as t}from"./3TRGOJ74.js";import"./LRUXN6H5.js";import{ga as o}from"./MT5H2R3P.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";async function i({version:n}){new t(n).logout(),o.output(`Logged out from the Redocly account. \u270B
7
+ import{l as t}from"./SQUNMRDS.js";import"./LRUXN6H5.js";import{ga as o}from"./JD3HIQIK.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";async function i({version:n}){new t(n).logout(),o.output(`Logged out from the Redocly account. \u270B
8
8
  `)}export{i as handleLogout};
@@ -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 $,b as a,c,d as i,e as m,f}from"./3TNSVCBC.js";import{k as l}from"./LD5MEXEL.js";import{join as p}from"node:path";function k(t,n){let e=$(t,"swr");if(e.length===0)return"";let s=e.some(a),o=e.some(r=>!a(r));return[...s?['import useSWR from "swr";']:[],...o?['import useSWRMutation from "swr/mutation";']:[],f(e,n.sdkModule,s),...e.flatMap(r=>a(r)?g(r):[S(r)])].join(`
7
+ import{a as $,b as a,c,d as i,e as m,f}from"./WTIPGXGP.js";import{k as l}from"./LD5MEXEL.js";import{join as p}from"node:path";function k(t,n){let e=$(t,"swr");if(e.length===0)return"";let s=e.some(a),o=e.some(r=>!a(r));return[...s?['import useSWR from "swr";']:[],...o?['import useSWRMutation from "swr/mutation";']:[],f(e,n.sdkModule,s),...e.flatMap(r=>a(r)?g(r):[S(r)])].join(`
8
8
 
9
9
  `)}function y(t,n,e){return`export function use${l(t.name)}(${n}) {
10
10
  return ${e};
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a as F,b as O,c as k,d as g}from"./5WKNTF7W.js";import{a as A}from"./DVJIGHFR.js";import{c as d,d as M}from"./YFBPBQ7G.js";import{$,X as y,Z as C,_ as R,ca as S,ga as s,ma as l,na as b}from"./MT5H2R3P.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";import{mkdir as z,writeFile as J}from"node:fs/promises";import V from"node:path";var E=20;function D(e){return e.total===0?void 0:Math.floor(e.covered/e.total*100)}function H(e){return e===void 0?"n/a":`${e}%`}function B(e,o){let t=e===void 0?0:Math.floor(e/100*E),r=`${"\u2588".repeat(t)}${"\u2591".repeat(E-t)}`;return!o||e===void 0?r:e>=80?R(r):e>=50?$(r):C(r)}function I(e,o){let t=[["operations",e.totals.operations],["parameters",e.totals.parameters],["schema properties",e.totals.properties],["response codes",e.totals.responses]],r=Math.max(...t.map(([,i])=>`${i.covered}/${i.total}`.length)),n="API coverage",a=[o?y(S(n)):n];for(let[i,c]of t){let f=D(c);a.push(` ${i.padEnd(18)} ${B(f,o)} ${H(f).padStart(5)} ${`${c.covered}/${c.total}`.padStart(r+3)}`)}return`${a.join(`
7
+ import{a as F,b as O,c as k,d as g}from"./2CAHRLJ3.js";import{a as A}from"./DEZGXWTS.js";import{c as d,d as M}from"./MVXFJBMU.js";import{$,X as y,Z as C,_ as R,ca as S,ga as s,ma as l,na as b}from"./JD3HIQIK.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";import{mkdir as z,writeFile as J}from"node:fs/promises";import V from"node:path";var E=20;function D(e){return e.total===0?void 0:Math.floor(e.covered/e.total*100)}function H(e){return e===void 0?"n/a":`${e}%`}function B(e,o){let t=e===void 0?0:Math.floor(e/100*E),r=`${"\u2588".repeat(t)}${"\u2591".repeat(E-t)}`;return!o||e===void 0?r:e>=80?R(r):e>=50?$(r):C(r)}function I(e,o){let t=[["operations",e.totals.operations],["parameters",e.totals.parameters],["schema properties",e.totals.properties],["response codes",e.totals.responses]],r=Math.max(...t.map(([,i])=>`${i.covered}/${i.total}`.length)),n="API coverage",a=[o?y(S(n)):n];for(let[i,c]of t){let f=D(c);a.push(` ${i.padEnd(18)} ${B(f,o)} ${H(f).padStart(5)} ${`${c.covered}/${c.total}`.padStart(r+3)}`)}return`${a.join(`
8
8
  `)}
9
9
  `}function T(e,o){let t={version:1,meta:{...o,exchanges:e.exchanges},totals:e.totals,operations:e.operations};return`${JSON.stringify(t,null,2)}
10
10
  `}async function P(e){let o=await M(e.trafficPath);if(o.length===0)throw new Error("No traffic files found in the provided traffic path.");let t=O.create({openApiIndex:e.openApiIndex,matchMode:e.matchMode,ignoreCookies:e.ignoreCookies,ignoreHeaders:e.ignoreHeaders,previewFindingsLimit:e.previewFindingsLimit,activeRules:e.activeRules,server:e.server,minSeverity:e.minSeverity,coverage:e.coverage}),r=0,n=0;for(let a of o){let i=await A(a,e.format);if(!i){s.warn(`Skipping traffic file with unrecognized format: ${a}
@@ -4,4 +4,4 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a,b}from"./X5U3XCIW.js";import"./N6VRECSO.js";import"./MT5H2R3P.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";export{a as bundleTelemetry,b as handleBundle};
7
+ import{a,b}from"./CMHJY4T2.js";import"./ZIIE7LXR.js";import"./JD3HIQIK.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";export{a as bundleTelemetry,b as handleBundle};
@@ -4,6 +4,6 @@ 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 ue}from"./LRUXN6H5.js";import{j as b,l as A,ma as m,o as z,p as H,ra as q,ya as Y}from"./MT5H2R3P.js";import{e as ce}from"./RFWIIJFG.js";var S=ce(ue(),1);function V(){return process.env.HTTPS_PROXY||process.env.HTTP_PROXY||process.env.http_proxy||process.env.https_proxy}function K(n){let t=process.env.NO_PROXY||process.env.no_proxy;if(!t)return!1;let e=t.split(",").map(o=>o.trim().toLowerCase()).filter(Boolean);if(e.length===0)return!1;let r;try{r=new URL(n).hostname.toLowerCase()}catch{return!1}return e.some(o=>!!(o==="*"||r===o||o.startsWith(".")&&r.endsWith(o)||!o.startsWith(".")&&r.endsWith("."+o)))}var G=async(n,{timeout:t,...e}={})=>{let r=V(),o=r&&!K(n),s,i=t?{connect:{timeout:t}}:{};return o?s=new S.ProxyAgent({uri:r,...i}):t&&(s=new S.Agent(i)),await fetch(n,{signal:t?AbortSignal.timeout(t):void 0,...e,dispatcher:s})};var le=/^[\x21-\x7e]+( [\x21-\x7e]+)*$/;function X(){let n=process.env.REDOCLY_ENVIRONMENT?.trim();return n&&le.test(n)?n:void 0}var u=class extends Error{status;constructor(t,e){super(t),this.status=e}},T=class{command;version;sunsetWarnings=[];constructor(t,e="2.0"){this.command=t,this.version=e}async request(t,e){let r=X(),o={...e.headers,"user-agent":`redocly-cli/${this.version} ${this.command}${r?` ${r}`:""}`};try{let s=await G(t,{...e,headers:o});return this.collectSunsetWarning(s),s}catch(s){let i="Failed to fetch.";throw s.cause&&(i+=` Caused by ${s.cause.message||s.cause.name}.`),(s.code||s.cause?.code)&&(i+=` Code: ${s.code||s.cause?.code}`),new Error(i)}}collectSunsetWarning(t){let e=this.getSunsetDate(t);if(!e)return;let r=new Date(e);e>Date.now()?this.sunsetWarnings.push({sunsetDate:r,isSunsetExpired:!1}):this.sunsetWarnings.push({sunsetDate:r,isSunsetExpired:!0})}getSunsetDate(t){let{headers:e}=t;if(!e)return;let r=e.get("sunset")||e.get("Sunset");if(r)return Date.parse(r)}},U=class{client;domain;apiKey;constructor(t,e,r){this.client=t,this.domain=e,this.apiKey=r}async getParsedResponse(t){let e=await t.json();if(t.ok)return e;throw new u(`${e.title||t.statusText||"Unknown error"}.`,t.status)}},N=class extends U{async find(t,e){try{let r=await this.client.request(`${this.domain}/api/orgs/${encodeURIComponent(t)}/projects/${encodeURIComponent(e)}`,{timeout:6e3,method:"GET",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`}});return r.status===404?void 0:await this.getParsedResponse(r)}catch(r){let o=`Failed to fetch project. ${r.message}`;throw r instanceof u?new u(o,r.status):new Error(o)}}},j=class extends U{async getDefaultBranch(t,e){try{let r=await this.client.request(`${this.domain}/api/orgs/${t}/projects/${e}/source`,{timeout:6e3,method:"GET",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`}});return(await this.getParsedResponse(r)).branchName}catch(r){let o=`Failed to fetch default branch. ${r.message}`;throw r instanceof u?new u(o,r.status):new Error(o)}}async upsert(t,e,r){try{let o=await this.client.request(`${this.domain}/api/orgs/${t}/projects/${e}/remotes`,{timeout:6e3,method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`},body:JSON.stringify({mountPath:r.mountPath,mountBranchName:r.mountBranchName,type:"CICD",autoMerge:!0})});return await this.getParsedResponse(o)}catch(o){let s=`Failed to upsert remote. ${o.message}`;throw o instanceof u?new u(s,o.status):new Error(s)}}async push(t,e,r,o){let s=new globalThis.FormData;s.append("remoteId",r.remoteId),s.append("commit[message]",r.commit.message),s.append("commit[author][name]",r.commit.author.name),s.append("commit[author][email]",r.commit.author.email),s.append("commit[branchName]",r.commit.branchName),r.commit.url&&s.append("commit[url]",r.commit.url),r.commit.namespace&&s.append("commit[namespaceId]",r.commit.namespace),r.commit.sha&&s.append("commit[sha]",r.commit.sha),r.commit.repository&&s.append("commit[repositoryId]",r.commit.repository),r.commit.createdAt&&s.append("commit[createdAt]",r.commit.createdAt);for(let i of o){let a=Buffer.isBuffer(i.stream)?new Blob([i.stream]):new Blob([await de(i.stream)]);s.append(`files[${i.path}]`,a,i.path)}r.isMainBranch&&s.append("isMainBranch","true"),r.replace&&s.append("replace","true");try{let i=await this.client.request(`${this.domain}/api/orgs/${t}/projects/${e}/pushes`,{method:"POST",headers:{Authorization:`Bearer ${this.apiKey}`},body:s});return await this.getParsedResponse(i)}catch(i){let a=`Failed to push. ${i.message}`;throw i instanceof u?new u(a,i.status):new Error(a)}}async getPush({organizationId:t,projectId:e,pushId:r}){try{let o=await this.client.request(`${this.domain}/api/orgs/${t}/projects/${e}/pushes/${r}`,{timeout:6e3,method:"GET",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`}});return await this.getParsedResponse(o)}catch(o){let s=`Failed to get push status. ${o.message}`;throw o instanceof u?new u(s,o.status):new Error(s)}}},g=class{apiClient;projects;remotes;constructor({domain:t,apiKey:e,command:r,version:o}){this.apiClient=new T(r,o),this.projects=new N(this.apiClient,t,e),this.remotes=new j(this.apiClient,t,e)}getSunsetWarning(){return Z(this.apiClient.sunsetWarnings)}};function Z(n){let[t]=[...n].sort((e,r)=>e.isSunsetExpired!==r.isSunsetExpired?e.isSunsetExpired?-1:1:e.sunsetDate>r.sunsetDate?1:-1);return t}async function de(n){let t=[];for await(let e of n)t.push(e);return Buffer.concat(t)}function he(){if(process.env.REDOCLY_AUTHORIZATION)return process.env.REDOCLY_AUTHORIZATION;throw new Error("No api key provided, please use environment variable REDOCLY_AUTHORIZATION.")}var P={us:"https://app.cloud.redocly.com",eu:"https://app.cloud.eu.redocly.com"};function fe(){return process.env.REDOCLY_DOMAIN||P.us}var J=pe((n,t)=>{try{let e=t||n?.resolvedConfig.residency;return me(e)?P[e]:e?new URL(e).origin:n?.resolvedConfig.scorecard?.fromProjectUrl?new URL(n.resolvedConfig.scorecard.fromProjectUrl).origin:P.us}catch{throw new E}});function D(n){try{J(void 0,n)}catch{return!1}return!0}function pe(n){return(...t)=>{let e=n(...t);if(!e.startsWith("https://"))throw new E;return e}}var E=class extends Error{constructor(){super("Invalid Reunite URL")}};function me(n){return typeof n=="string"&&n in P}import{Buffer as O}from"node:buffer";import F from"node:crypto";import{mkdirSync as ge,existsSync as ee,writeFileSync as we,readFileSync as ye,rmSync as ve}from"node:fs";import{homedir as Te}from"node:os";import te from"node:path";import*as Q from"node:child_process";var w=class{baseUrl;apiClient;clientName="redocly-cli";constructor(t,e){this.baseUrl=t,this.apiClient=new T("login",e)}async run(t){let e=await this.getDeviceCode();t?.({verificationUri:e.verificationUri,verificationUriComplete:e.verificationUriComplete,userCode:e.userCode}),this.openBrowser(e.verificationUriComplete);let r=await this.pollingAccessToken(e.deviceCode,e.interval,e.expiresIn);return this.withResidency(r)}openBrowser(t){if(!/^https?:\/\//.test(t))return;let[e,r]=process.platform==="win32"?["rundll32",["url.dll,FileProtocolHandler",t]]:process.platform==="darwin"?["open",[t]]:["xdg-open",[t]];Q.spawn(e,r,{stdio:"ignore",detached:!0}).on("error",()=>{}).unref()}async verifyToken(t){try{return!!(await this.sendRequest("/session","GET",void 0,{Cookie:`accessToken=${t};`})).user}catch{return!1}}async verifyApiKey(t){try{return!!(await this.sendRequest("/api-keys-verify","POST",{apiKey:t})).success}catch{return!1}}async refreshToken(t){let e=await this.sendRequest("/device-rotate-token","POST",{grant_type:"refresh_token",client_name:this.clientName,refresh_token:t});if(!e.access_token)throw new Error("Failed to refresh token");return this.withResidency({access_token:e.access_token,refresh_token:e.refresh_token,expires_in:e.expires_in})}async pollingAccessToken(t,e,r){return new Promise((o,s)=>{let i=setInterval(async()=>{let c=await this.getAccessToken(t);c.access_token&&(clearInterval(i),clearTimeout(a),o(c)),c.error&&c.error!=="authorization_pending"&&(clearInterval(i),clearTimeout(a),s(c.error_description))},e*1e3),a=setTimeout(async()=>{clearInterval(i),clearTimeout(a),s("Authorization has expired. Please try again.")},r*1e3)})}async getAccessToken(t){return await this.sendRequest("/device-token","POST",{client_name:this.clientName,device_code:t,grant_type:"urn:ietf:params:oauth:grant-type:device_code"})}async getDeviceCode(){let{device_code:t,user_code:e,verification_uri:r,verification_uri_complete:o,interval:s=10,expires_in:i=300}=await this.sendRequest("/device-authorize","POST",{client_name:this.clientName});return{deviceCode:t,userCode:e,verificationUri:r,verificationUriComplete:o,interval:s,expiresIn:i}}async sendRequest(t,e="GET",r=void 0,o={}){let s=`${this.baseUrl}/api${t}`,i=await this.apiClient.request(s,{body:r&&JSON.stringify(r),method:e,headers:{"Content-Type":"application/json",...o},timeout:6e3});return i.status===204?{success:!0}:await i.json()}withResidency(t){return{...t,residency:this.baseUrl}}};var xe="4618dbc9-8aed-4e27-aaf0-225f4603e5a4",re="aes-256-cbc",k=class{version;credentialsFolderPath;credentialsFilePath;credentialsFileName;key;iv;constructor(t){this.version=t;let e=Te();this.credentialsFolderPath=te.join(e,".redocly"),this.credentialsFileName="credentials",this.credentialsFilePath=te.join(this.credentialsFolderPath,this.credentialsFileName),this.key=F.createHash("sha256").update(`${this.credentialsFolderPath}${xe}`).digest(),this.iv=F.createHash("md5").update(this.credentialsFolderPath).digest(),ge(this.credentialsFolderPath,{recursive:!0})}async login(t,e){let o=await new w(t,this.version).run(e);if(!o)throw new Error("Failed to login. No credentials received.");await this.saveCredentials(o)}async logout(){try{this.removeCredentials()}catch{}}async isAuthorized(t,e){return e?new w(t,this.version).verifyApiKey(e):!!await this.getAccessToken(t)}getAccessToken=async t=>{let e=new w(t,this.version),r=await this.readCredentials();if(!r||!D(t)||r.residency&&r.residency!==t)return null;if(await e.verifyToken(r.access_token))return r.access_token;try{let s=await e.refreshToken(r.refresh_token);return await this.saveCredentials(s),s.access_token}catch{return null}};async saveCredentials(t){try{let e=this.encryptCredentials(t);we(this.credentialsFilePath,e,"utf8")}catch(e){throw new Error(`Failed to save credentials: ${e.message}`)}}async readCredentials(){if(!ee(this.credentialsFilePath))return null;try{let t=ye(this.credentialsFilePath,"utf8");return this.decryptCredentials(t)}catch{return null}}async removeCredentials(){ee(this.credentialsFilePath)&&ve(this.credentialsFilePath)}encryptCredentials(t){let e=F.createCipheriv(re,this.key,this.iv);return O.concat([e.update(JSON.stringify(t),"utf8"),e.final()]).toString("hex")}decryptCredentials(t){let e=F.createDecipheriv(re,this.key,this.iv),r=O.concat([e.update(O.from(t,"hex")),e.final()]);return JSON.parse(r.toString("utf8"))}};import*as y from"node:fs";import*as h from"node:path";var Ce=/\/orgs\/([^/]+)\/projects\//,Pe=[401,403];async function x(n,{organization:t,project:e,onSlugDeprecated:r}){let o=await Ee(n,t,e);if(!o)return{organizationId:t,projectId:e};let s={organizationId:Re(o.uri),projectId:o.id};return(s.organizationId!==t||s.projectId!==e)&&r?.(s),s}async function Ee(n,t,e){try{let r=await n.projects.find(t,e);if(!r)throw new u(`Project "${e}" was not found in organization "${t}". Use the IDs from the organization and project settings in Reunite.`,404);return r}catch(r){if(r instanceof u&&Pe.includes(r.status))return;throw r}}function Re(n){let t=n.match(Ce)?.[1];if(!t)throw new Error(`Could not read the organization ID from the project URI "${n}".`);return t}async function $e({domain:n,apiKey:t,organization:e,project:r,mountPath:o,files:s,defaultBranch:i,commit:a,version:c,replace:R,onUploadStart:$,onSunsetWarning:v,onSlugDeprecated:I}){let f=new g({domain:n,apiKey:t,command:"push",version:c});try{let{organizationId:d,projectId:l}=await x(f,{organization:e,project:r,onSlugDeprecated:I}),M=await f.remotes.getDefaultBranch(d,l),p=await f.remotes.upsert(d,l,{mountBranchName:M,mountPath:o});$?.(p);let{id:C}=await f.remotes.push(d,l,{remoteId:p.id,commit:a,isMainBranch:i===a.branchName,replace:R},s.map(W=>({path:z(W.name),stream:y.createReadStream(W.path)})));return{pushId:C,organizationId:d,projectId:l}}finally{let d=f.getSunsetWarning();d&&v?.(d)}}function Se(n,t){let e={};for(let o of n)if(y.statSync(o).isDirectory()){let s=o;ne(s,[]).forEach(a=>r(a,s))}else r(o,h.dirname(o));function r(o,s){let i=h.relative(s,o);e[i]&&t?.(e[i],o),e[i]=o}return Object.entries(e).map(([o,s])=>({name:o,path:h.resolve(s)}))}function ne(n,t){let e=y.readdirSync(n);for(let r of e){let o=h.join(n,r);y.statSync(o).isDirectory()?t=ne(o,t):t.push(o)}return t}async function se({operation:n,condition:t,onConditionNotMet:e,startTime:r=Date.now(),retryTimeoutMs:o=6e5,retryIntervalMs:s=5e3}){async function i(){let a=await n();if(t(a))return a;if(Date.now()-r>o)throw new Error("Timeout exceeded.");return await e?.(a),await b(s),i()}return i()}var _e=1200,Ue=5e3,Fe=["pending","running"];async function Ie(n){let t=oe(n);try{let e=await x(t,n);return await ae(t,e,n.pushId)}finally{ie(t,n)}}async function Ae({buildType:n,maxExecutionTime:t=_e,retryIntervalMs:e=Ue,startTime:r=Date.now(),onRetry:o,...s}){let i=oe(s);try{let a=await x(i,s);return await se({operation:()=>ae(i,a,s.pushId),condition:c=>!Fe.includes(c.status[n].deploy.status),onConditionNotMet:o,startTime:r,retryTimeoutMs:t*1e3,retryIntervalMs:e})}finally{ie(i,s)}}function oe({domain:n,apiKey:t,version:e}){return new g({domain:n,apiKey:t,command:"push-status",version:e})}function ie(n,{onSunsetWarning:t}){let e=n.getSunsetWarning();e&&t?.(e)}function ae(n,{organizationId:t,projectId:e},r){return n.remotes.getPush({organizationId:t,projectId:e,pushId:r})}async function Ne({projectUrl:n,auth:t,isApiKey:e=!1,onDebug:r}){let o=je(n);if(!o)throw new m(`Invalid project URL format: ${n}`);try{let s=await De({...o,auth:t,isApiKey:e,onDebug:r}),i=s.config.scorecardClassic||s.config.scorecard;if(!i)throw new Error("No scorecard configuration found.");let a=s.config.pluginsUrl,c=a?await Oe(a,r):void 0;return{scorecard:i,plugins:c,pluginsUrl:a}}catch(s){throw new m(s instanceof Error?s.message:String(s))}}function je(n){let t=new URL(n),e=t.pathname.match(/\/org\/(?<orgSlug>[^/]+)\/project\/(?<projectSlug>[^/]+)/);if(!e?.groups)return;let{orgSlug:r,projectSlug:o}=e.groups;return{residency:t.origin,orgSlug:r,projectSlug:o}}async function De({residency:n,orgSlug:t,projectSlug:e,auth:r,isApiKey:o,onDebug:s}){let i=new URL(`${n}/api/orgs/${t}/projects/${e}`),a=await fetch(i,{headers:ke(r,o)});if(s?.(`Project fetch response status: ${a.status}`),a.status===401||a.status===403)throw s?.(`Authentication failed with status ${a.status}.`),s?.("Check that your credentials are valid and have the necessary permissions."),new Error(`Unauthorized access to project: ${e}. Please check your credentials.`);if(a.status!==200)throw new Error(`Failed to fetch project: ${e}. Status: ${a.status}`);return s?.("Successfully received project configuration."),a.json()}async function Oe(n,t){t?.(`Fetching plugins from: ${n}`);try{let e=await fetch(n);if(t?.(`Plugins fetch response status: ${e.status}`),e.status!==200){t?.("Failed to fetch plugins");return}return e.text()}catch(e){t?.(`Error fetching plugins: ${e instanceof Error?e.message:String(e)}`);return}}function ke(n,t){return t?{Authorization:`Bearer ${n}`}:{Cookie:`accessToken=${n}`}}async function L(n,t,e=[],r=[],o){let s={};for(let i of e){let a={[i.name]:{root:n,rules:t}},c=await q({apis:a,...i,plugins:r},{configPath:o});s[i.name]=c.forAlias(i.name)}return s}function B(n,t){if(n){for(let e of n)if(Object.entries(e.where?.metadata||{}).every(([o,s])=>Le(o,s,t)))return e}}function Le(n,t,e){if(t.match(/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}Z)?\/(\d{4}-\d{2}-\d{2})?$/)){if(!e[n])return!1;let[r,o]=t.split("/"),s=new Date(e[n]);return!(s<new Date(r)||o&&s>new Date(o))}else if(t.match(/^\/.*\//)){if(!e[n])return!1;try{return H(t).test(e[n])}catch{throw new m(`Invalid regex in scorecard target "${n}": ${t}`)}}return e[n]===t}import{pathToFileURL as Be}from"node:url";async function Me(n,t){if(!n)return[];let e=Be(t??process.cwd()).href+"/",r=n.replaceAll("__redocly_dirname",`"${e}"`);return(await import(`data:text/javascript;base64,${btoa(r)}`)).default.map(i=>i())}var We=".redocly.com";function be(n){try{return new URL(n).hostname.toLowerCase().endsWith(We)}catch{return!1}}async function ze({apiPath:n,document:t,externalRefResolver:e,scorecardConfig:r,configPath:o,plugins:s=[],targetLevel:i,metadata:a={},onDebug:c}){let R=[],$=new Map,v=r.levels||[];if(i&&!v.some(l=>l.name===i))throw new m(`Target level "${i}" not found in the scorecard configuration levels.
7
+ import{a as ue}from"./LRUXN6H5.js";import{j as b,l as A,ma as m,o as z,p as H,ra as q,ya as Y}from"./JD3HIQIK.js";import{e as ce}from"./RFWIIJFG.js";var S=ce(ue(),1);function V(){return process.env.HTTPS_PROXY||process.env.HTTP_PROXY||process.env.http_proxy||process.env.https_proxy}function K(n){let t=process.env.NO_PROXY||process.env.no_proxy;if(!t)return!1;let e=t.split(",").map(o=>o.trim().toLowerCase()).filter(Boolean);if(e.length===0)return!1;let r;try{r=new URL(n).hostname.toLowerCase()}catch{return!1}return e.some(o=>!!(o==="*"||r===o||o.startsWith(".")&&r.endsWith(o)||!o.startsWith(".")&&r.endsWith("."+o)))}var G=async(n,{timeout:t,...e}={})=>{let r=V(),o=r&&!K(n),s,i=t?{connect:{timeout:t}}:{};return o?s=new S.ProxyAgent({uri:r,...i}):t&&(s=new S.Agent(i)),await fetch(n,{signal:t?AbortSignal.timeout(t):void 0,...e,dispatcher:s})};var le=/^[\x21-\x7e]+( [\x21-\x7e]+)*$/;function X(){let n=process.env.REDOCLY_ENVIRONMENT?.trim();return n&&le.test(n)?n:void 0}var u=class extends Error{status;constructor(t,e){super(t),this.status=e}},T=class{command;version;sunsetWarnings=[];constructor(t,e="2.0"){this.command=t,this.version=e}async request(t,e){let r=X(),o={...e.headers,"user-agent":`redocly-cli/${this.version} ${this.command}${r?` ${r}`:""}`};try{let s=await G(t,{...e,headers:o});return this.collectSunsetWarning(s),s}catch(s){let i="Failed to fetch.";throw s.cause&&(i+=` Caused by ${s.cause.message||s.cause.name}.`),(s.code||s.cause?.code)&&(i+=` Code: ${s.code||s.cause?.code}`),new Error(i)}}collectSunsetWarning(t){let e=this.getSunsetDate(t);if(!e)return;let r=new Date(e);e>Date.now()?this.sunsetWarnings.push({sunsetDate:r,isSunsetExpired:!1}):this.sunsetWarnings.push({sunsetDate:r,isSunsetExpired:!0})}getSunsetDate(t){let{headers:e}=t;if(!e)return;let r=e.get("sunset")||e.get("Sunset");if(r)return Date.parse(r)}},U=class{client;domain;apiKey;constructor(t,e,r){this.client=t,this.domain=e,this.apiKey=r}async getParsedResponse(t){let e=await t.json();if(t.ok)return e;throw new u(`${e.title||t.statusText||"Unknown error"}.`,t.status)}},N=class extends U{async find(t,e){try{let r=await this.client.request(`${this.domain}/api/orgs/${encodeURIComponent(t)}/projects/${encodeURIComponent(e)}`,{timeout:6e3,method:"GET",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`}});return r.status===404?void 0:await this.getParsedResponse(r)}catch(r){let o=`Failed to fetch project. ${r.message}`;throw r instanceof u?new u(o,r.status):new Error(o)}}},j=class extends U{async getDefaultBranch(t,e){try{let r=await this.client.request(`${this.domain}/api/orgs/${t}/projects/${e}/source`,{timeout:6e3,method:"GET",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`}});return(await this.getParsedResponse(r)).branchName}catch(r){let o=`Failed to fetch default branch. ${r.message}`;throw r instanceof u?new u(o,r.status):new Error(o)}}async upsert(t,e,r){try{let o=await this.client.request(`${this.domain}/api/orgs/${t}/projects/${e}/remotes`,{timeout:6e3,method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`},body:JSON.stringify({mountPath:r.mountPath,mountBranchName:r.mountBranchName,type:"CICD",autoMerge:!0})});return await this.getParsedResponse(o)}catch(o){let s=`Failed to upsert remote. ${o.message}`;throw o instanceof u?new u(s,o.status):new Error(s)}}async push(t,e,r,o){let s=new globalThis.FormData;s.append("remoteId",r.remoteId),s.append("commit[message]",r.commit.message),s.append("commit[author][name]",r.commit.author.name),s.append("commit[author][email]",r.commit.author.email),s.append("commit[branchName]",r.commit.branchName),r.commit.url&&s.append("commit[url]",r.commit.url),r.commit.namespace&&s.append("commit[namespaceId]",r.commit.namespace),r.commit.sha&&s.append("commit[sha]",r.commit.sha),r.commit.repository&&s.append("commit[repositoryId]",r.commit.repository),r.commit.createdAt&&s.append("commit[createdAt]",r.commit.createdAt);for(let i of o){let a=Buffer.isBuffer(i.stream)?new Blob([i.stream]):new Blob([await de(i.stream)]);s.append(`files[${i.path}]`,a,i.path)}r.isMainBranch&&s.append("isMainBranch","true"),r.replace&&s.append("replace","true");try{let i=await this.client.request(`${this.domain}/api/orgs/${t}/projects/${e}/pushes`,{method:"POST",headers:{Authorization:`Bearer ${this.apiKey}`},body:s});return await this.getParsedResponse(i)}catch(i){let a=`Failed to push. ${i.message}`;throw i instanceof u?new u(a,i.status):new Error(a)}}async getPush({organizationId:t,projectId:e,pushId:r}){try{let o=await this.client.request(`${this.domain}/api/orgs/${t}/projects/${e}/pushes/${r}`,{timeout:6e3,method:"GET",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`}});return await this.getParsedResponse(o)}catch(o){let s=`Failed to get push status. ${o.message}`;throw o instanceof u?new u(s,o.status):new Error(s)}}},g=class{apiClient;projects;remotes;constructor({domain:t,apiKey:e,command:r,version:o}){this.apiClient=new T(r,o),this.projects=new N(this.apiClient,t,e),this.remotes=new j(this.apiClient,t,e)}getSunsetWarning(){return Z(this.apiClient.sunsetWarnings)}};function Z(n){let[t]=[...n].sort((e,r)=>e.isSunsetExpired!==r.isSunsetExpired?e.isSunsetExpired?-1:1:e.sunsetDate>r.sunsetDate?1:-1);return t}async function de(n){let t=[];for await(let e of n)t.push(e);return Buffer.concat(t)}function he(){if(process.env.REDOCLY_AUTHORIZATION)return process.env.REDOCLY_AUTHORIZATION;throw new Error("No api key provided, please use environment variable REDOCLY_AUTHORIZATION.")}var P={us:"https://app.cloud.redocly.com",eu:"https://app.cloud.eu.redocly.com"};function fe(){return process.env.REDOCLY_DOMAIN||P.us}var J=pe((n,t)=>{try{let e=t||n?.resolvedConfig.residency;return me(e)?P[e]:e?new URL(e).origin:n?.resolvedConfig.scorecard?.fromProjectUrl?new URL(n.resolvedConfig.scorecard.fromProjectUrl).origin:P.us}catch{throw new E}});function D(n){try{J(void 0,n)}catch{return!1}return!0}function pe(n){return(...t)=>{let e=n(...t);if(!e.startsWith("https://"))throw new E;return e}}var E=class extends Error{constructor(){super("Invalid Reunite URL")}};function me(n){return typeof n=="string"&&n in P}import{Buffer as O}from"node:buffer";import F from"node:crypto";import{mkdirSync as ge,existsSync as ee,writeFileSync as we,readFileSync as ye,rmSync as ve}from"node:fs";import{homedir as Te}from"node:os";import te from"node:path";import*as Q from"node:child_process";var w=class{baseUrl;apiClient;clientName="redocly-cli";constructor(t,e){this.baseUrl=t,this.apiClient=new T("login",e)}async run(t){let e=await this.getDeviceCode();t?.({verificationUri:e.verificationUri,verificationUriComplete:e.verificationUriComplete,userCode:e.userCode}),this.openBrowser(e.verificationUriComplete);let r=await this.pollingAccessToken(e.deviceCode,e.interval,e.expiresIn);return this.withResidency(r)}openBrowser(t){if(!/^https?:\/\//.test(t))return;let[e,r]=process.platform==="win32"?["rundll32",["url.dll,FileProtocolHandler",t]]:process.platform==="darwin"?["open",[t]]:["xdg-open",[t]];Q.spawn(e,r,{stdio:"ignore",detached:!0}).on("error",()=>{}).unref()}async verifyToken(t){try{return!!(await this.sendRequest("/session","GET",void 0,{Cookie:`accessToken=${t};`})).user}catch{return!1}}async verifyApiKey(t){try{return!!(await this.sendRequest("/api-keys-verify","POST",{apiKey:t})).success}catch{return!1}}async refreshToken(t){let e=await this.sendRequest("/device-rotate-token","POST",{grant_type:"refresh_token",client_name:this.clientName,refresh_token:t});if(!e.access_token)throw new Error("Failed to refresh token");return this.withResidency({access_token:e.access_token,refresh_token:e.refresh_token,expires_in:e.expires_in})}async pollingAccessToken(t,e,r){return new Promise((o,s)=>{let i=setInterval(async()=>{let c=await this.getAccessToken(t);c.access_token&&(clearInterval(i),clearTimeout(a),o(c)),c.error&&c.error!=="authorization_pending"&&(clearInterval(i),clearTimeout(a),s(c.error_description))},e*1e3),a=setTimeout(async()=>{clearInterval(i),clearTimeout(a),s("Authorization has expired. Please try again.")},r*1e3)})}async getAccessToken(t){return await this.sendRequest("/device-token","POST",{client_name:this.clientName,device_code:t,grant_type:"urn:ietf:params:oauth:grant-type:device_code"})}async getDeviceCode(){let{device_code:t,user_code:e,verification_uri:r,verification_uri_complete:o,interval:s=10,expires_in:i=300}=await this.sendRequest("/device-authorize","POST",{client_name:this.clientName});return{deviceCode:t,userCode:e,verificationUri:r,verificationUriComplete:o,interval:s,expiresIn:i}}async sendRequest(t,e="GET",r=void 0,o={}){let s=`${this.baseUrl}/api${t}`,i=await this.apiClient.request(s,{body:r&&JSON.stringify(r),method:e,headers:{"Content-Type":"application/json",...o},timeout:6e3});return i.status===204?{success:!0}:await i.json()}withResidency(t){return{...t,residency:this.baseUrl}}};var xe="4618dbc9-8aed-4e27-aaf0-225f4603e5a4",re="aes-256-cbc",k=class{version;credentialsFolderPath;credentialsFilePath;credentialsFileName;key;iv;constructor(t){this.version=t;let e=Te();this.credentialsFolderPath=te.join(e,".redocly"),this.credentialsFileName="credentials",this.credentialsFilePath=te.join(this.credentialsFolderPath,this.credentialsFileName),this.key=F.createHash("sha256").update(`${this.credentialsFolderPath}${xe}`).digest(),this.iv=F.createHash("md5").update(this.credentialsFolderPath).digest(),ge(this.credentialsFolderPath,{recursive:!0})}async login(t,e){let o=await new w(t,this.version).run(e);if(!o)throw new Error("Failed to login. No credentials received.");await this.saveCredentials(o)}async logout(){try{this.removeCredentials()}catch{}}async isAuthorized(t,e){return e?new w(t,this.version).verifyApiKey(e):!!await this.getAccessToken(t)}getAccessToken=async t=>{let e=new w(t,this.version),r=await this.readCredentials();if(!r||!D(t)||r.residency&&r.residency!==t)return null;if(await e.verifyToken(r.access_token))return r.access_token;try{let s=await e.refreshToken(r.refresh_token);return await this.saveCredentials(s),s.access_token}catch{return null}};async saveCredentials(t){try{let e=this.encryptCredentials(t);we(this.credentialsFilePath,e,"utf8")}catch(e){throw new Error(`Failed to save credentials: ${e.message}`)}}async readCredentials(){if(!ee(this.credentialsFilePath))return null;try{let t=ye(this.credentialsFilePath,"utf8");return this.decryptCredentials(t)}catch{return null}}async removeCredentials(){ee(this.credentialsFilePath)&&ve(this.credentialsFilePath)}encryptCredentials(t){let e=F.createCipheriv(re,this.key,this.iv);return O.concat([e.update(JSON.stringify(t),"utf8"),e.final()]).toString("hex")}decryptCredentials(t){let e=F.createDecipheriv(re,this.key,this.iv),r=O.concat([e.update(O.from(t,"hex")),e.final()]);return JSON.parse(r.toString("utf8"))}};import*as y from"node:fs";import*as h from"node:path";var Ce=/\/orgs\/([^/]+)\/projects\//,Pe=[401,403];async function x(n,{organization:t,project:e,onSlugDeprecated:r}){let o=await Ee(n,t,e);if(!o)return{organizationId:t,projectId:e};let s={organizationId:Re(o.uri),projectId:o.id};return(s.organizationId!==t||s.projectId!==e)&&r?.(s),s}async function Ee(n,t,e){try{let r=await n.projects.find(t,e);if(!r)throw new u(`Project "${e}" was not found in organization "${t}". Use the IDs from the organization and project settings in Reunite.`,404);return r}catch(r){if(r instanceof u&&Pe.includes(r.status))return;throw r}}function Re(n){let t=n.match(Ce)?.[1];if(!t)throw new Error(`Could not read the organization ID from the project URI "${n}".`);return t}async function $e({domain:n,apiKey:t,organization:e,project:r,mountPath:o,files:s,defaultBranch:i,commit:a,version:c,replace:R,onUploadStart:$,onSunsetWarning:v,onSlugDeprecated:I}){let f=new g({domain:n,apiKey:t,command:"push",version:c});try{let{organizationId:d,projectId:l}=await x(f,{organization:e,project:r,onSlugDeprecated:I}),M=await f.remotes.getDefaultBranch(d,l),p=await f.remotes.upsert(d,l,{mountBranchName:M,mountPath:o});$?.(p);let{id:C}=await f.remotes.push(d,l,{remoteId:p.id,commit:a,isMainBranch:i===a.branchName,replace:R},s.map(W=>({path:z(W.name),stream:y.createReadStream(W.path)})));return{pushId:C,organizationId:d,projectId:l}}finally{let d=f.getSunsetWarning();d&&v?.(d)}}function Se(n,t){let e={};for(let o of n)if(y.statSync(o).isDirectory()){let s=o;ne(s,[]).forEach(a=>r(a,s))}else r(o,h.dirname(o));function r(o,s){let i=h.relative(s,o);e[i]&&t?.(e[i],o),e[i]=o}return Object.entries(e).map(([o,s])=>({name:o,path:h.resolve(s)}))}function ne(n,t){let e=y.readdirSync(n);for(let r of e){let o=h.join(n,r);y.statSync(o).isDirectory()?t=ne(o,t):t.push(o)}return t}async function se({operation:n,condition:t,onConditionNotMet:e,startTime:r=Date.now(),retryTimeoutMs:o=6e5,retryIntervalMs:s=5e3}){async function i(){let a=await n();if(t(a))return a;if(Date.now()-r>o)throw new Error("Timeout exceeded.");return await e?.(a),await b(s),i()}return i()}var _e=1200,Ue=5e3,Fe=["pending","running"];async function Ie(n){let t=oe(n);try{let e=await x(t,n);return await ae(t,e,n.pushId)}finally{ie(t,n)}}async function Ae({buildType:n,maxExecutionTime:t=_e,retryIntervalMs:e=Ue,startTime:r=Date.now(),onRetry:o,...s}){let i=oe(s);try{let a=await x(i,s);return await se({operation:()=>ae(i,a,s.pushId),condition:c=>!Fe.includes(c.status[n].deploy.status),onConditionNotMet:o,startTime:r,retryTimeoutMs:t*1e3,retryIntervalMs:e})}finally{ie(i,s)}}function oe({domain:n,apiKey:t,version:e}){return new g({domain:n,apiKey:t,command:"push-status",version:e})}function ie(n,{onSunsetWarning:t}){let e=n.getSunsetWarning();e&&t?.(e)}function ae(n,{organizationId:t,projectId:e},r){return n.remotes.getPush({organizationId:t,projectId:e,pushId:r})}async function Ne({projectUrl:n,auth:t,isApiKey:e=!1,onDebug:r}){let o=je(n);if(!o)throw new m(`Invalid project URL format: ${n}`);try{let s=await De({...o,auth:t,isApiKey:e,onDebug:r}),i=s.config.scorecardClassic||s.config.scorecard;if(!i)throw new Error("No scorecard configuration found.");let a=s.config.pluginsUrl,c=a?await Oe(a,r):void 0;return{scorecard:i,plugins:c,pluginsUrl:a}}catch(s){throw new m(s instanceof Error?s.message:String(s))}}function je(n){let t=new URL(n),e=t.pathname.match(/\/org\/(?<orgSlug>[^/]+)\/project\/(?<projectSlug>[^/]+)/);if(!e?.groups)return;let{orgSlug:r,projectSlug:o}=e.groups;return{residency:t.origin,orgSlug:r,projectSlug:o}}async function De({residency:n,orgSlug:t,projectSlug:e,auth:r,isApiKey:o,onDebug:s}){let i=new URL(`${n}/api/orgs/${t}/projects/${e}`),a=await fetch(i,{headers:ke(r,o)});if(s?.(`Project fetch response status: ${a.status}`),a.status===401||a.status===403)throw s?.(`Authentication failed with status ${a.status}.`),s?.("Check that your credentials are valid and have the necessary permissions."),new Error(`Unauthorized access to project: ${e}. Please check your credentials.`);if(a.status!==200)throw new Error(`Failed to fetch project: ${e}. Status: ${a.status}`);return s?.("Successfully received project configuration."),a.json()}async function Oe(n,t){t?.(`Fetching plugins from: ${n}`);try{let e=await fetch(n);if(t?.(`Plugins fetch response status: ${e.status}`),e.status!==200){t?.("Failed to fetch plugins");return}return e.text()}catch(e){t?.(`Error fetching plugins: ${e instanceof Error?e.message:String(e)}`);return}}function ke(n,t){return t?{Authorization:`Bearer ${n}`}:{Cookie:`accessToken=${n}`}}async function L(n,t,e=[],r=[],o){let s={};for(let i of e){let a={[i.name]:{root:n,rules:t}},c=await q({apis:a,...i,plugins:r},{configPath:o});s[i.name]=c.forAlias(i.name)}return s}function B(n,t){if(n){for(let e of n)if(Object.entries(e.where?.metadata||{}).every(([o,s])=>Le(o,s,t)))return e}}function Le(n,t,e){if(t.match(/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}Z)?\/(\d{4}-\d{2}-\d{2})?$/)){if(!e[n])return!1;let[r,o]=t.split("/"),s=new Date(e[n]);return!(s<new Date(r)||o&&s>new Date(o))}else if(t.match(/^\/.*\//)){if(!e[n])return!1;try{return H(t).test(e[n])}catch{throw new m(`Invalid regex in scorecard target "${n}": ${t}`)}}return e[n]===t}import{pathToFileURL as Be}from"node:url";async function Me(n,t){if(!n)return[];let e=Be(t??process.cwd()).href+"/",r=n.replaceAll("__redocly_dirname",`"${e}"`);return(await import(`data:text/javascript;base64,${btoa(r)}`)).default.map(i=>i())}var We=".redocly.com";function be(n){try{return new URL(n).hostname.toLowerCase().endsWith(We)}catch{return!1}}async function ze({apiPath:n,document:t,externalRefResolver:e,scorecardConfig:r,configPath:o,plugins:s=[],targetLevel:i,metadata:a={},onDebug:c}){let R=[],$=new Map,v=r.levels||[];if(i&&!v.some(l=>l.name===i))throw new m(`Target level "${i}" not found in the scorecard configuration levels.
8
8
  `);let I=B(r.targets,a)?.rules,f=await L(n,I,v,s,o||"");for(let l of v){c?.(`
9
9
  Validating level: "${l.name}"`),s.length>0&&c?.(`Using ${s.length} ${A("plugin",s.length)} for this level.`),c?.("Linting document against level rules...");let p=(await Y({document:t,externalRefResolver:e,config:f[l.name]})).filter(({ignored:C})=>!C).map(C=>({...C,scorecardLevel:l.name}));c?.(`Found ${p.length} ${A("problem",p.length)} for level "${l.name}".`),$.set(l.name,p),R.push(...p)}let d=He($,v,i);return{problems:R,achievedLevel:d,targetLevelAchieved:i?d===i:!0}}function He(n,t,e){let r=null;for(let o of t){if((n.get(o.name)||[]).some(a=>a.severity==="error"))return r||"Non Conformant";if(r=o.name,e&&o.name===e)return o.name}return r||"Non Conformant"}export{u as a,T as b,g as c,Z as d,he as e,P as f,fe as g,J as h,D as i,E as j,w as k,k as l,x as m,$e as n,Se as o,Ie as p,Ae as q,Ne as r,L as s,B as t,Me as u,be as v,ze as w};
@@ -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 jre,b as Wre,c as Vre}from"./UF2ZCH7W.js";import{a as h5}from"./R5A3H7N2.js";import{b as f5,e as d5}from"./N6VRECSO.js";import{d as c5,e as u5}from"./EPFKYDYC.js";import{$ as l5,X as a5,ca as cR,ga as Ly,k as Ure,ma as k1,t as T1,x as s5,y as Hre}from"./MT5H2R3P.js";import"./NEWT5A6S.js";import{a as kn,b as o5,c as V,d as Bre,e as qv,f as zre}from"./RFWIIJFG.js";var m5=V((p5,g5)=>{(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 g=e.utils.clone(n)||{};g.position=[a,c],g.index=o.length,o.push(new e.Token(r.slice(a,s),g))}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{a as jre,b as Wre,c as Vre}from"./UF2ZCH7W.js";import{a as h5}from"./4U5QHDPF.js";import{b as f5,e as d5}from"./ZIIE7LXR.js";import{d as c5,e as u5}from"./7WMNFTJC.js";import{$ as l5,X as a5,ca as cR,ga as Ly,k as Ure,ma as k1,t as T1,x as s5,y as Hre}from"./JD3HIQIK.js";import"./NEWT5A6S.js";import{a as kn,b as o5,c as V,d as Bre,e as qv,f as zre}from"./RFWIIJFG.js";var m5=V((p5,g5)=>{(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 g=e.utils.clone(n)||{};g.position=[a,c],g.index=o.length,o.push(new e.Token(r.slice(a,s),g))}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,g=0;c<o&&g<s;)a=r[c],l=i[g],a<l?c+=2:a>l?g+=2:a==l&&(n+=r[c+1]*i[g+1],c+=2,g+=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,g="^("+o+")?"+i,d=new RegExp(a),v=new RegExp(c),x=new RegExp(l),T=new RegExp(g),O=/^(.+?)(ss|i)es$/,k=/^(.+?)([^s])s$/,R=/^(.+?)eed$/,N=/^(.+?)(ed|ing)$/,U=/.$/,z=/(at|bl|iz)$/,K=new RegExp("([^aeiouylsz])\\1$"),H=new RegExp("^"+o+i+"[^aeiouwxy]$"),ne=/^(.+?[^aeiou])y$/,j=/^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/,re=/^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/,ie=/^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/,ue=/^(.+?)(s|t)(ion)$/,he=/^(.+?)e$/,Y=/ll$/,le=new RegExp("^"+o+i+"[^aeiouwxy]$"),de=function(ce){var Oe,pe,ke,se,we,De,at;if(ce.length<3)return ce;if(ke=ce.substr(0,1),ke=="y"&&(ce=ke.toUpperCase()+ce.substr(1)),se=O,we=k,se.test(ce)?ce=ce.replace(se,"$1$2"):we.test(ce)&&(ce=ce.replace(we,"$1$2")),se=R,we=N,se.test(ce)){var Ge=se.exec(ce);se=d,se.test(Ge[1])&&(se=U,ce=ce.replace(se,""))}else if(we.test(ce)){var Ge=we.exec(ce);Oe=Ge[1],we=T,we.test(Oe)&&(ce=Oe,we=z,De=K,at=H,we.test(ce)?ce=ce+"e":De.test(ce)?(se=U,ce=ce.replace(se,"")):at.test(ce)&&(ce=ce+"e"))}if(se=ne,se.test(ce)){var Ge=se.exec(ce);Oe=Ge[1],ce=Oe+"i"}if(se=j,se.test(ce)){var Ge=se.exec(ce);Oe=Ge[1],pe=Ge[2],se=d,se.test(Oe)&&(ce=Oe+t[pe])}if(se=re,se.test(ce)){var Ge=se.exec(ce);Oe=Ge[1],pe=Ge[2],se=d,se.test(Oe)&&(ce=Oe+n[pe])}if(se=ie,we=ue,se.test(ce)){var Ge=se.exec(ce);Oe=Ge[1],se=v,se.test(Oe)&&(ce=Oe)}else if(we.test(ce)){var Ge=we.exec(ce);Oe=Ge[1]+Ge[2],we=v,we.test(Oe)&&(ce=Oe)}if(se=he,se.test(ce)){var Ge=se.exec(ce);Oe=Ge[1],se=v,we=x,De=le,(se.test(Oe)||we.test(Oe)&&!De.test(Oe))&&(ce=Oe)}return se=Y,we=v,se.test(ce)&&we.test(ce)&&(se=U,ce=ce.replace(se,"")),ke=="y"&&(ce=ke.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 g=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:g+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 g=o[c],d=0;d<l;d++){var v=a[d];if(v==g||g=="*"){var x=r.node.edges[v],T=r.qNode.edges[g],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],g=null,d=e.Set.empty;c.usePipeline?g=this.pipeline.runString(c.term,{fields:c.fields}):g=[c.term];for(var v=0;v<g.length;v++){var x=g[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 U=O[N],z=this.invertedIndex[U],K=z._index,k=0;k<c.fields.length;k++){var R=c.fields[k],H=z[R],ne=Object.keys(H),j=U+"/"+R,re=new e.Set(ne);if(c.presence==e.Query.presence.REQUIRED&&(d=d.union(re),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(re);continue}if(i[R].upsert(K,c.boost,function(Z,Le){return Z+Le}),!o[j]){for(var ie=0;ie<ne.length;ie++){var ue=ne[ie],he=new e.FieldRef(ue,R),Y=H[ue],le;(le=r[he])===void 0?r[he]=new e.MatchData(U,R,Y):le.add(U,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),Oe=[],pe=Object.create(null);if(n.isNegated()){ce=Object.keys(this.fieldVectors);for(var l=0;l<ce.length;l++){var he=ce[l],ke=e.FieldRef.fromString(he);r[he]=new e.MatchData}}for(var l=0;l<ce.length;l++){var ke=e.FieldRef.fromString(ce[l]),se=ke.docRef;if(de.contains(se)&&!ve.contains(se)){var we=this.fieldVectors[ke],De=i[ke.fieldName].similarity(we),at;if((at=pe[se])!==void 0)at.score+=De,at.matchData.combine(r[ke]);else{var Ge={ref:se,score:De,matchData:r[ke]};pe[se]=Ge,Oe.push(Ge)}}}return Oe.sort(function(xe,Be){return Be.score-xe.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 g=i[c],d=g[0],v=g[1];r[d]=new e.Vector(v)}for(var c=0;c<s.length;c++){var g=s[c],x=g[0],T=g[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]}),g=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]+=g.length;for(var x=0;x<g.length;x++){var T=g[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],U=T.metadata[N];this.invertedIndex[T][s][r][N]==null&&(this.invertedIndex[T][s][r][N]=[]),this.invertedIndex[T][s][r][N].push(U)}}}},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,g=this.fieldTermFrequencies[s],d=Object.keys(g),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=g[k],N=this.invertedIndex[k]._index,U,z,K;i[k]===void 0?(U=e.idf(this.invertedIndex[k],this.documentCount),i[k]=U):U=i[k],z=U*((this._k1+1)*R)/(this._k1*(1-this._b+this._b*(l/this.averageFieldLength[a]))+R),z*=x,z*=T,K=Math.round(z*1e3)/1e3,c.insert(N,K)}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 g=l[c];this.metadata[i][a][g]==null?this.metadata[i][a][g]=t.metadata[i][a][g]:this.metadata[i][a][g]=this.metadata[i][a][g].concat(t.metadata[i][a][g])}}}},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 p5=="object"?g5.exports=n():t.lunr=n()})(this,function(){return e})})()});var b5=V((OBe,y5)=>{"use strict";function Gre(){return typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:typeof setImmediate=="function"?setImmediate:function(t){setTimeout(t,0)}}y5.exports=Gre()});var S5=V((TBe,w5)=>{"use strict";var v5=b5();w5.exports=function(t,n){if(t){n.then(function(r){v5(function(){t(null,r)})},function(r){v5(function(){t(r)})});return}else return n}});var k5=V((kBe,T5)=>{T5.exports=FS;FS.default=FS;FS.stable=_5;FS.stableStringify=_5;var C1="[...]",x5="[Circular]",Dy=[],Ny=[];function E5(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function FS(e,t,n,r){typeof r>"u"&&(r=E5()),uR(e,"",0,[],void 0,0,r);var i;try{Ny.length===0?i=JSON.stringify(e,t,n):i=JSON.stringify(e,O5(t),n)}catch{return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;Dy.length!==0;){var o=Dy.pop();o.length===4?Object.defineProperty(o[0],o[1],o[3]):o[0][o[1]]=o[2]}}return i}function Xv(e,t,n,r){var i=Object.getOwnPropertyDescriptor(r,n);i.get!==void 0?i.configurable?(Object.defineProperty(r,n,{value:e}),Dy.push([r,n,t,i])):Ny.push([t,n,e]):(r[n]=e,Dy.push([r,n,t]))}function uR(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){Xv(x5,e,t,i);return}if(typeof s.depthLimit<"u"&&o>s.depthLimit){Xv(C1,e,t,i);return}if(typeof s.edgesLimit<"u"&&n+1>s.edgesLimit){Xv(C1,e,t,i);return}if(r.push(e),Array.isArray(e))for(a=0;a<e.length;a++)uR(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];uR(e[c],c,a,r,e,o,s)}}r.pop()}}function Yre(e,t){return e<t?-1:e>t?1:0}function _5(e,t,n,r){typeof r>"u"&&(r=E5());var i=fR(e,"",0,[],void 0,0,r)||e,o;try{Ny.length===0?o=JSON.stringify(i,t,n):o=JSON.stringify(i,O5(t),n)}catch{return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;Dy.length!==0;){var s=Dy.pop();s.length===4?Object.defineProperty(s[0],s[1],s[3]):s[0][s[1]]=s[2]}}return o}function fR(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){Xv(x5,e,t,i);return}try{if(typeof e.toJSON=="function")return}catch{return}if(typeof s.depthLimit<"u"&&o>s.depthLimit){Xv(C1,e,t,i);return}if(typeof s.edgesLimit<"u"&&n+1>s.edgesLimit){Xv(C1,e,t,i);return}if(r.push(e),Array.isArray(e))for(a=0;a<e.length;a++)fR(e[a],a,a,r,e,o,s);else{var l={},c=Object.keys(e).sort(Yre);for(a=0;a<c.length;a++){var g=c[a];fR(e[g],g,a,r,e,o,s),l[g]=e[g]}if(typeof i<"u")Dy.push([i,t,e]),i[t]=l;else return l}r.pop()}}function O5(e){return e=typeof e<"u"?e:function(t,n){return n},function(t,n){if(Ny.length>0)for(var r=0;r<Ny.length;r++){var i=Ny[r];if(i[1]===t&&i[0]===n){n=i[2],Ny.splice(r,1);break}}return e.call(this,t,n)}}});var P5=V((CBe,C5)=>{C5.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 g=["","-webkit-","-moz-","-ms-"],d=document.createElement("div"),v=g.length-1;v>=0;v--){try{d.style.position=g[v]+"sticky"}catch{}d.style.position!=""&&x()}k();function x(){pe=at=ke=se=we=De=s}function T(xe,Be){for(key in Be)Be.hasOwnProperty(key)&&(xe[key]=Be[key])}function O(xe){return parseFloat(xe)||0}function k(){r={top:t.pageYOffset,left:t.pageXOffset}}function R(){if(t.pageXOffset!=r.left){k(),ke();return}t.pageYOffset!=r.top&&(k(),U())}function N(xe){setTimeout(function(){t.pageYOffset!=r.top&&(r.top=t.pageYOffset,U())},0)}function U(){for(var xe=n.length-1;xe>=0;xe--)z(n[xe])}function z(xe){if(xe.inited){var Be=r.top<=xe.limit.start?0:r.top>=xe.limit.end?2:1;xe.mode!=Be&&ie(xe,Be)}}function K(){for(var xe=n.length-1;xe>=0;xe--)if(n[xe].inited){var Be=Math.abs(le(n[xe].clone)-n[xe].docOffsetTop),L=Math.abs(n[xe].parent.node.offsetHeight-n[xe].parent.height);if(Be>=2||L>=2)return!1}return!0}function H(xe){isNaN(parseFloat(xe.computed.top))||xe.isCell||(xe.inited=!0,xe.clone||ue(xe),xe.parent.computed.position!="absolute"&&xe.parent.computed.position!="relative"&&(xe.parent.node.style.position="relative"),z(xe),xe.parent.height=xe.parent.node.offsetHeight,xe.docOffsetTop=le(xe.clone))}function ne(xe){var Be=!0;xe.clone&&he(xe),T(xe.node.style,xe.css);for(var L=n.length-1;L>=0;L--)if(n[L].node!==xe.node&&n[L].parent.node===xe.parent.node){Be=!1;break}Be&&(xe.parent.node.style.position=xe.parent.css.position),xe.mode=-1}function j(){for(var xe=n.length-1;xe>=0;xe--)H(n[xe])}function re(){for(var xe=n.length-1;xe>=0;xe--)ne(n[xe])}function ie(xe,Be){var L=xe.node.style;switch(Be){case 0:L.position="absolute",L.left=xe.offset.left+"px",L.right=xe.offset.right+"px",L.top=xe.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=xe.box.left+"px",L.right=xe.box.right+"px",L.top=xe.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=xe.offset.left+"px",L.right=xe.offset.right+"px",L.top="auto",L.bottom=0,L.width="auto",L.marginLeft=0,L.marginRight=0;break}xe.mode=Be}function ue(xe){xe.clone=document.createElement("div");var Be=xe.node.nextSibling||xe.node,L=xe.clone.style;L.height=xe.height+"px",L.width=xe.width+"px",L.marginTop=xe.computed.marginTop,L.marginBottom=xe.computed.marginBottom,L.marginLeft=xe.computed.marginLeft,L.marginRight=xe.computed.marginRight,L.padding=L.border=L.borderSpacing=0,L.fontSize="1em",L.position="static",L.cssFloat=xe.computed.cssFloat,xe.node.parentNode.insertBefore(xe.clone,Be)}function he(xe){xe.clone.parentNode.removeChild(xe.clone),xe.clone=void 0}function Y(xe){var Be=getComputedStyle(xe),L=xe.parentNode,Z=getComputedStyle(L),Le=xe.style.position;xe.style.position="relative";var $e={top:Be.top,marginTop:Be.marginTop,marginBottom:Be.marginBottom,marginLeft:Be.marginLeft,marginRight:Be.marginRight,cssFloat:Be.cssFloat},_e={top:O(Be.top),marginBottom:O(Be.marginBottom),paddingLeft:O(Be.paddingLeft),paddingRight:O(Be.paddingRight),borderLeftWidth:O(Be.borderLeftWidth),borderRightWidth:O(Be.borderRightWidth)};xe.style.position=Le;var te={position:xe.style.position,top:xe.style.top,bottom:xe.style.bottom,left:xe.style.left,right:xe.style.right,width:xe.style.width,marginTop:xe.style.marginTop,marginLeft:xe.style.marginLeft,marginRight:xe.style.marginRight},X=de(xe),Ie=de(L),Ee={node:L,css:{position:L.style.position},computed:{position:Z.position},numeric:{borderLeftWidth:O(Z.borderLeftWidth),borderRightWidth:O(Z.borderRightWidth),borderTopWidth:O(Z.borderTopWidth),borderBottomWidth:O(Z.borderBottomWidth)}},nt={node:xe,box:{left:X.win.left,right:o.clientWidth-X.win.right},offset:{top:X.win.top-Ie.win.top-Ee.numeric.borderTopWidth,left:X.win.left-Ie.win.left-Ee.numeric.borderLeftWidth,right:-X.win.right+Ie.win.right-Ee.numeric.borderRightWidth},css:te,isCell:Be.display=="table-cell",computed:$e,numeric:_e,width:X.win.right-X.win.left,height:X.win.bottom-X.win.top,mode:-1,inited:!1,parent:Ee,limit:{start:X.doc.top-_e.top,end:Ie.doc.top+L.offsetHeight-Ee.numeric.borderBottomWidth-xe.offsetHeight-_e.top-_e.marginBottom}};return nt}function le(xe){for(var Be=0;xe;)Be+=xe.offsetTop,xe=xe.offsetParent;return Be}function de(xe){var Be=xe.getBoundingClientRect();return{doc:{top:Be.top+t.pageYOffset,left:Be.left+t.pageXOffset},win:Be}}function ve(){a=setInterval(function(){!K()&&ke()},500)}function ce(){clearInterval(a)}function Oe(){i&&(document[l]?ce():ve())}function pe(){i||(k(),j(),t.addEventListener("scroll",R),t.addEventListener("wheel",N),t.addEventListener("resize",ke),t.addEventListener("orientationchange",ke),e.addEventListener(c,Oe),ve(),i=!0)}function ke(){if(i){re();for(var xe=n.length-1;xe>=0;xe--)n[xe]=Y(n[xe].node);j()}}function se(){t.removeEventListener("scroll",R),t.removeEventListener("wheel",N),t.removeEventListener("resize",ke),t.removeEventListener("orientationchange",ke),e.removeEventListener(c,Oe),ce(),i=!1}function we(){se(),re()}function De(){for(we();n.length;)n.pop()}function at(xe){for(var Be=n.length-1;Be>=0;Be--)if(n[Be].node===xe)return;var L=Y(xe);n.push(L),i?H(L):pe()}function Ge(xe){for(var Be=n.length-1;Be>=0;Be--)n[Be].node===xe&&(ne(n[Be]),n.splice(Be,1))}return{stickies:n,add:at,remove:Ge,init:pe,rebuild:ke,pause:se,stop:we,kill:De}})});var rr=V(aa=>{"use strict";var dR=Symbol.for("yaml.alias"),A5=Symbol.for("yaml.document"),P1=Symbol.for("yaml.map"),R5=Symbol.for("yaml.pair"),hR=Symbol.for("yaml.scalar"),A1=Symbol.for("yaml.seq"),sp=Symbol.for("yaml.node.type"),qre=e=>!!e&&typeof e=="object"&&e[sp]===dR,Xre=e=>!!e&&typeof e=="object"&&e[sp]===A5,Qre=e=>!!e&&typeof e=="object"&&e[sp]===P1,Kre=e=>!!e&&typeof e=="object"&&e[sp]===R5,I5=e=>!!e&&typeof e=="object"&&e[sp]===hR,Zre=e=>!!e&&typeof e=="object"&&e[sp]===A1;function M5(e){if(e&&typeof e=="object")switch(e[sp]){case P1:case A1:return!0}return!1}function Jre(e){if(e&&typeof e=="object")switch(e[sp]){case dR:case P1:case hR:case A1:return!0}return!1}var $re=e=>(I5(e)||M5(e))&&!!e.anchor;aa.ALIAS=dR;aa.DOC=A5;aa.MAP=P1;aa.NODE_TYPE=sp;aa.PAIR=R5;aa.SCALAR=hR;aa.SEQ=A1;aa.hasAnchor=$re;aa.isAlias=qre;aa.isCollection=M5;aa.isDocument=Xre;aa.isMap=Qre;aa.isNode=Jre;aa.isPair=Kre;aa.isScalar=I5;aa.isSeq=Zre});var BS=V(pR=>{"use strict";var Es=rr(),pc=Symbol("break visit"),L5=Symbol("skip children"),qd=Symbol("remove node");function R1(e,t){let n=N5(t);Es.isDocument(e)?Qv(null,e.contents,n,Object.freeze([e]))===qd&&(e.contents=null):Qv(null,e,n,Object.freeze([]))}R1.BREAK=pc;R1.SKIP=L5;R1.REMOVE=qd;function Qv(e,t,n,r){let i=D5(e,t,n,r);if(Es.isNode(i)||Es.isPair(i))return F5(e,r,i),Qv(e,i,n,r);if(typeof i!="symbol"){if(Es.isCollection(t)){r=Object.freeze(r.concat(t));for(let o=0;o<t.items.length;++o){let s=Qv(o,t.items[o],n,r);if(typeof s=="number")o=s-1;else{if(s===pc)return pc;s===qd&&(t.items.splice(o,1),o-=1)}}}else if(Es.isPair(t)){r=Object.freeze(r.concat(t));let o=Qv("key",t.key,n,r);if(o===pc)return pc;o===qd&&(t.key=null);let s=Qv("value",t.value,n,r);if(s===pc)return pc;s===qd&&(t.value=null)}}return i}async function I1(e,t){let n=N5(t);Es.isDocument(e)?await Kv(null,e.contents,n,Object.freeze([e]))===qd&&(e.contents=null):await Kv(null,e,n,Object.freeze([]))}I1.BREAK=pc;I1.SKIP=L5;I1.REMOVE=qd;async function Kv(e,t,n,r){let i=await D5(e,t,n,r);if(Es.isNode(i)||Es.isPair(i))return F5(e,r,i),Kv(e,i,n,r);if(typeof i!="symbol"){if(Es.isCollection(t)){r=Object.freeze(r.concat(t));for(let o=0;o<t.items.length;++o){let s=await Kv(o,t.items[o],n,r);if(typeof s=="number")o=s-1;else{if(s===pc)return pc;s===qd&&(t.items.splice(o,1),o-=1)}}}else if(Es.isPair(t)){r=Object.freeze(r.concat(t));let o=await Kv("key",t.key,n,r);if(o===pc)return pc;o===qd&&(t.key=null);let s=await Kv("value",t.value,n,r);if(s===pc)return pc;s===qd&&(t.value=null)}}return i}function N5(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(Es.isMap(t))return n.Map?.(e,t,r);if(Es.isSeq(t))return n.Seq?.(e,t,r);if(Es.isPair(t))return n.Pair?.(e,t,r);if(Es.isScalar(t))return n.Scalar?.(e,t,r);if(Es.isAlias(t))return n.Alias?.(e,t,r)}function F5(e,t,n){let r=t[t.length-1];if(Es.isCollection(r))r.items[e]=n;else if(Es.isPair(r))e==="key"?r.key=n:r.value=n;else if(Es.isDocument(r))r.contents=n;else{let i=Es.isAlias(r)?"alias":"scalar";throw new Error(`Cannot replace node with ${i} parent`)}}pR.visit=R1;pR.visitAsync=I1});var gR=V(z5=>{"use strict";var B5=rr(),eie=BS(),tie={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},nie=e=>e.replace(/[!,[\]{}]/g,t=>tie[t]),zS=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+nie(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&&B5.isNode(t.contents)){let o={};eie.visit(t.contents,(s,a)=>{B5.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
  `)}};zS.defaultYaml={explicit:!1,version:"1.2"};zS.defaultTags={"!!":"tag:yaml.org,2002:"};z5.Directives=zS});var M1=V(US=>{"use strict";var U5=rr(),rie=BS();function iie(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 H5(e){let t=new Set;return rie.visit(e,{Value(n,r){r.anchor&&t.add(r.anchor)}}),t}function j5(e,t){for(let n=1;;++n){let r=`${e}${n}`;if(!t.has(r))return r}}function oie(e,t){let n=[],r=new Map,i=null;return{onAnchor:o=>{n.push(o),i??(i=H5(e));let s=j5(t,i);return i.add(s),s},setAnchors:()=>{for(let o of n){let s=r.get(o);if(typeof s=="object"&&s.anchor&&(U5.isScalar(s.node)||U5.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}}US.anchorIsValid=iie;US.anchorNames=H5;US.createNodeAnchors=oie;US.findNewAnchor=j5});var mR=V(W5=>{"use strict";function HS(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=HS(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=HS(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=HS(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=HS(e,r,i,o);s===void 0?delete r[i]:s!==o&&(r[i]=s)}return e.call(t,n,r)}W5.applyReviver=HS});var Vg=V(G5=>{"use strict";var sie=rr();function V5(e,t,n){if(Array.isArray(e))return e.map((r,i)=>V5(r,String(i),n));if(e&&typeof e.toJSON=="function"){if(!n||!sie.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}G5.toJS=V5});var L1=V(q5=>{"use strict";var aie=mR(),Y5=rr(),lie=Vg(),yR=class{constructor(t){Object.defineProperty(this,Y5.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(!Y5.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=lie.toJS(this,"",s);if(typeof i=="function")for(let{count:l,res:c}of s.anchors.values())i(c,l);return typeof o=="function"?aie.applyReviver(o,{"":a},"",a):a}};q5.NodeBase=yR});var jS=V(X5=>{"use strict";var cie=M1(),uie=BS(),Zv=rr(),fie=L1(),die=Vg(),bR=class extends fie.NodeBase{constructor(t){super(Zv.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=[],uie.visit(t,{Node:(o,s)=>{(Zv.isAlias(s)||Zv.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)}if(i&&n){let{anchors:o,doc:s,maxAliasCount:a}=n,l=o.get(i);if(l||(die.toJS(i,null,n),l=o.get(i)),l?.res===void 0){let c="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(c)}if(a>=0&&(l.count+=1,l.aliasCount===0&&(l.aliasCount=N1(s,i,o)),l.count*l.aliasCount>a)){let c="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(c)}}return i}toJSON(t,n){if(!n)return{source:this.source};let r=this.resolve(n.doc,n);if(!r){let i=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(i)}return n.anchors.get(r).res}toString(t,n,r){let i=`*${this.source}`;if(t){if(cie.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 N1(e,t,n){if(Zv.isAlias(t)){let r=t.resolve(e),i=n&&r&&n.get(r);return i?i.count*i.aliasCount:0}else if(Zv.isCollection(t)){let r=0;for(let i of t.items){let o=N1(e,i,n);o>r&&(r=o)}return r}else if(Zv.isPair(t)){let r=N1(e,t.key,n),i=N1(e,t.value,n);return Math.max(r,i)}return 1}X5.Alias=bR});var os=V(vR=>{"use strict";var hie=rr(),pie=L1(),gie=Vg(),mie=e=>!e||typeof e!="function"&&typeof e!="object",Gg=class extends pie.NodeBase{constructor(t){super(hie.SCALAR),this.value=t}toJSON(t,n){return n?.keep?this.value:gie.toJS(this.value,t,n)}toString(){return String(this.value)}};Gg.BLOCK_FOLDED="BLOCK_FOLDED";Gg.BLOCK_LITERAL="BLOCK_LITERAL";Gg.PLAIN="PLAIN";Gg.QUOTE_DOUBLE="QUOTE_DOUBLE";Gg.QUOTE_SINGLE="QUOTE_SINGLE";vR.Scalar=Gg;vR.isScalarValue=mie});var WS=V(K5=>{"use strict";var yie=jS(),Fy=rr(),Q5=os(),bie="tag:yaml.org,2002:";function vie(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 wie(e,t,n){if(Fy.isDocument(e)&&(e=e.contents),Fy.isNode(e))return e;if(Fy.isPair(e)){let d=n.schema[Fy.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 yie.Alias(l.anchor);l={anchor:null,node:null},a.set(e,l)}t?.startsWith("!!")&&(t=bie+t.slice(2));let c=vie(e,t,s.tags);if(!c){if(e&&typeof e.toJSON=="function"&&(e=e.toJSON()),!e||typeof e!="object"){let d=new Q5.Scalar(e);return l&&(l.node=d),d}c=e instanceof Map?s[Fy.MAP]:Symbol.iterator in Object(e)?s[Fy.SEQ]:s[Fy.MAP]}o&&(o(c),delete n.onTagObj);let g=c?.createNode?c.createNode(n.schema,e,n):typeof c?.nodeClass?.from=="function"?c.nodeClass.from(n.schema,e,n):new Q5.Scalar(e);return t?g.tag=t:c.default||(g.tag=c.tag),l&&(l.node=g),g}K5.createNode=wie});var F1=V(D1=>{"use strict";var Sie=WS(),Xd=rr(),xie=L1();function wR(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 Sie.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 Z5=e=>e==null||typeof e=="object"&&!!e[Symbol.iterator]().next().done,SR=class extends xie.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=>Xd.isNode(r)||Xd.isPair(r)?r.clone(t):r),this.range&&(n.range=this.range.slice()),n}addIn(t,n){if(Z5(t))this.add(n);else{let[r,...i]=t,o=this.get(r,!0);if(Xd.isCollection(o))o.addIn(i,n);else if(o===void 0&&this.schema)this.set(r,wR(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(Xd.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&&Xd.isScalar(o)?o.value:o:Xd.isCollection(o)?o.getIn(i,n):void 0}hasAllNullValues(t){return this.items.every(n=>{if(!Xd.isPair(n))return!1;let r=n.value;return r==null||t&&Xd.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 Xd.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(Xd.isCollection(o))o.setIn(i,n);else if(o===void 0&&this.schema)this.set(r,wR(this.schema,i,n));else throw new Error(`Expected YAML collection at ${r}. Remaining path: ${i}`)}}};D1.Collection=SR;D1.collectionFromPath=wR;D1.isEmptyPath=Z5});var VS=V(B1=>{"use strict";var Eie=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function xR(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}var _ie=(e,t,n)=>e.endsWith(`
10
10
  `)?xR(n,t):n.includes(`