@redocly/openapi-language-server 0.3.4 → 0.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.js CHANGED
@@ -68,7 +68,7 @@ ${JSON.stringify(m,null,4)}`);let w=m;if(ye.string(w.id)||ye.number(w.id)){let E
68
68
  Multiple configuration files are not allowed.
69
69
  Found the following files: ${n.join(", ")}.
70
70
  Please use 'redocly.yaml' instead.
71
- `);return n[0]}),this.registerRootWorkspaceFolderURIGetter(async()=>"")}registerFileSystemProvider(t){this._fs=t}registerDocumentsProvider(t){this._documentManager=t}registerConfigFinder(t){this._findConfig=t}registerRootWorkspaceFolderURIGetter(t){this._getRootWorkspaceFolderURI=t}get fs(){if(!this._fs)throw new Error("FileSystemProvider not registered.");return this._fs}get documents(){if(!this._documentManager)throw new Error("DocumentsProvider not registered.");return this._documentManager}get findConfig(){return this._findConfig}get getRootWorkspaceFolderURI(){return this._getRootWorkspaceFolderURI}enableScorecard(t){this._scorecardEnabled=t}get scorecardEnabled(){return this._scorecardEnabled}},qe=new as;function au(e,t){return de.resolvePath(Ne(e)).toString()===de.resolvePath(Ne(t)).toString()}function Ne(e){return Kt.parse(e)}function An(e){return Kt.parse(e).fsPath}function dr(e){let t=["https","http"],{scheme:n}=Kt.parse(e);return t.includes(n)}function qn(e){return de.basename(Ne(e))}async function cu(e,t="/"){let n=de.resolvePath(Ne(t));for(;e.path!=="/";)try{(await qe.fs.stat(de.resolvePath(n,e.path))).isDirectory()||(e=de.dirname(e));break}catch{e=de.dirname(e)}return e}import{BaseResolver as Ah,Source as zl,readFileFromUrl as qh}from"@redocly/openapi-core";var fi=Ge(hr(),1);import{isAbsoluteUrl as xh}from"@redocly/openapi-core";function El(e,t=100,n=!1){let r=new Map,i=new Map;function o(u,c,p){let g=i.get(u.uri),b=g?Date.now()-g:0;try{b<t&&b>=0?r.set(u.uri,setTimeout(()=>o(u,c,p),t-b)):(r.delete(u.uri),i.delete(u.uri),n||c(e(u)))}catch(D){p(D)}}function s(u){let c=r.get(u.uri),p=n&&!c;return i.set(u.uri,Date.now()),new Promise((g,b)=>{c||r.set(u.uri,setTimeout(()=>o(u,g,b),t)),p&&g(e(u))})}return s}function Is(e){let t=new Set,n=r=>Array.isArray(n)?r.map(n):typeof r=="object"&&r!==null?t.has(r)?void 0:(t.add(r),Object.fromEntries(Object.entries(r).map(([i,o])=>[i,n(o)]))):r;return n(e)}function Ml(e){return e==="$ref"}async function Ls(e,t){let n=Kt.parse(t);return de.joinPath(n,e).toString()}async function jl(e,t,n){for(let[r,{root:i}]of Object.entries(e))if(await Ls(i,n)===t)return r}function Il(e){return typeof e=="string"}function pi(e){return typeof e=="function"}function Ll(e){return e?.kind===fi.Kind.MAP}function Fs(e){return e?.kind===fi.Kind.MAPPING}function Us(e){return e?.kind===fi.Kind.SEQ}function yr(e,t){let n=t.singleQuoted?"'":'"';return`${n}${e}${n}`}function Ws(e){return xh(e)||e.startsWith("file://")}var gi=class e{constructor(t,n,r,i){this._uri=t,this._languageId=n,this._version=r,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(t){if(t){let n=this.offsetAt(t.start),r=this.offsetAt(t.end);return this._content.substring(n,r)}return this._content}update(t,n){for(let r of t)if(e.isIncremental(r)){let i=Ul(r.range),o=this.offsetAt(i.start),s=this.offsetAt(i.end);this._content=this._content.substring(0,o)+r.text+this._content.substring(s,this._content.length);let u=Math.max(i.start.line,0),c=Math.max(i.end.line,0),p=this._lineOffsets,g=Fl(r.text,!1,o);if(c-u===g.length)for(let D=0,R=g.length;D<R;D++)p[D+u+1]=g[D];else g.length<1e4?p.splice(u+1,c-u,...g):this._lineOffsets=p=p.slice(0,u+1).concat(g,p.slice(c+1));let b=r.text.length-(s-o);if(b!==0)for(let D=u+1+g.length,R=p.length;D<R;D++)p[D]=p[D]+b}else if(e.isFull(r))this._content=r.text,this._lineOffsets=void 0;else throw new Error("Unknown change event received");this._version=n}getLineOffsets(){return this._lineOffsets===void 0&&(this._lineOffsets=Fl(this._content,!0)),this._lineOffsets}positionAt(t){t=Math.max(Math.min(t,this._content.length),0);let n=this.getLineOffsets(),r=0,i=n.length;if(i===0)return{line:0,character:t};for(;r<i;){let s=Math.floor((r+i)/2);n[s]>t?i=s:r=s+1}let o=r-1;return{line:o,character:t-n[o]}}offsetAt(t){let n=this.getLineOffsets();if(t.line>=n.length)return this._content.length;if(t.line<0)return 0;let r=n[t.line],i=t.line+1<n.length?n[t.line+1]:this._content.length;return Math.max(Math.min(r+t.character,i),r)}get lineCount(){return this.getLineOffsets().length}static isIncremental(t){let n=t;return n!=null&&typeof n.text=="string"&&n.range!==void 0&&(n.rangeLength===void 0||typeof n.rangeLength=="number")}static isFull(t){let n=t;return n!=null&&typeof n.text=="string"&&n.range===void 0&&n.rangeLength===void 0}},mi;(function(e){function t(i,o,s,u){return new gi(i,o,s,u)}e.create=t;function n(i,o,s){if(i instanceof gi)return i.update(o,s),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}e.update=n;function r(i,o){let s=i.getText(),u=Hs(o.map(wh),(g,b)=>{let D=g.range.start.line-b.range.start.line;return D===0?g.range.start.character-b.range.start.character:D}),c=0,p=[];for(let g of u){let b=i.offsetAt(g.range.start);if(b<c)throw new Error("Overlapping edit");b>c&&p.push(s.substring(c,b)),g.newText.length&&p.push(g.newText),c=i.offsetAt(g.range.end)}return p.push(s.substr(c)),p.join("")}e.applyEdits=r})(mi||(mi={}));function Hs(e,t){if(e.length<=1)return e;let n=e.length/2|0,r=e.slice(0,n),i=e.slice(n);Hs(r,t),Hs(i,t);let o=0,s=0,u=0;for(;o<r.length&&s<i.length;)t(r[o],i[s])<=0?e[u++]=r[o++]:e[u++]=i[s++];for(;o<r.length;)e[u++]=r[o++];for(;s<i.length;)e[u++]=i[s++];return e}function Fl(e,t,n=0){let r=t?[n]:[];for(let i=0;i<e.length;i++){let o=e.charCodeAt(i);(o===13||o===10)&&(o===13&&i+1<e.length&&e.charCodeAt(i+1)===10&&i++,r.push(n+i+1))}return r}function Ul(e){let t=e.start,n=e.end;return t.line>n.line||t.line===n.line&&t.character>n.character?{start:n,end:t}:e}function wh(e){let t=Ul(e.range);return t!==e.range?{newText:e.newText,range:t}:e}var Wl=new Map;function Hl(e,t){return Wl.set(e,t)}function Bl(e){let t=[];for(let[n,r]of Wl.entries())r.dependencyPaths.has(e)&&t.push({documentPath:n,durationMS:r.durationMS});return t}async function st(e){let t=qe.documents.get(e);if(t)return t;let n=await qe.fs.readFile(Ne(e),"utf-8");return mi.create(e,"yaml",1,n)}function Bs(e){return us.filePattern.test(e)}function kh(e){return cs.filePattern.test(e)}var Ut=class extends Ah{resolveExternalRef(t,n){return Ws(n)?n:t&&Ws(t)?new URL(n,t).href:t?de.resolvePath(de.dirname(Ne(t)),n).toString():n}async loadExternalRef(t){if(dr(t)){let{body:n,mimeType:r}=await qh(t,{...this.config.http,customFetch:fetch});return new zl(t,n,r)}return new zl(t,(await st(t)).getText())}};var br,hi,zs,Vl;async function Vs(e){let t=new Ut,n=e?await qe.findConfig(e):void 0;return br=await Nh({configPath:n,externalRefResolver:t,processRawConfig:async({document:r,resolvedRefMap:i})=>{zs=i,Vl=r}}),br}async function In(){return br||await Vs(),{config:br,configPath:hi,rootConfigDocument:Vl}}async function $l(e,t){try{return hi=e?await qe.findConfig(e):void 0,hi?await Vs(hi):br}catch(n){return t?.createEventHandleLoadConfigError?.(n?.message),Vs()}}function vr(e){return Ys(e)?!0:!!zs&&[...zs.keys()].map(n=>n.split("::")?.[1]?.split("#")[0]).some(n=>au(qn(e),n))}function Ys(e){return $s.includes(qn(e))}var Yl={hide:{type:"boolean",default:!1},component:{type:"string",enum:["radio","checkbox"],default:"checkbox"},label:{type:"string"},items:{type:"array",items:{type:"string"}}},Cr={type:"object",properties:Yl,additionalProperties:!1},Oh={type:"object",properties:{hide:{type:"boolean",default:!1},label:{type:"string"},placeholder:{type:"string"}},additionalProperties:!1},Xt={type:"object",properties:{hide:{type:"boolean",default:!1},type:{type:"string",enum:["rating","sentiment","comment","reasons","mood","scale"],default:"sentiment"},settings:{type:"object",properties:{label:{type:"string"},submitText:{type:"string"},buttonText:{type:"string"},component:{type:"string",enum:["radio","checkbox"],default:"checkbox"},items:{type:"array",items:{type:"string"},minItems:1},leftScaleLabel:{type:"string"},rightScaleLabel:{type:"string"},reasons:{type:"object",properties:Object.assign(Object.assign({},Yl),{like:Cr,dislike:Cr,satisfied:Cr,neutral:Cr,dissatisfied:Cr}),additionalProperties:!1},comment:{type:"object",properties:{hide:{type:"boolean",default:!1},label:{type:"string"},likeLabel:{type:"string"},dislikeLabel:{type:"string"},satisfiedLabel:{type:"string"},neutralLabel:{type:"string"},dissatisfiedLabel:{type:"string"}},additionalProperties:!1},optionalEmail:Oh},additionalProperties:!1}},additionalProperties:!1};var Ln={type:"object",properties:{includeByName:{type:"array",items:{type:"string"}},excludeByName:{type:"array",items:{type:"string"}}},additionalProperties:!1},Eh={type:"object",properties:{name:{type:"string"},items:Ln,queries:Ln,mutations:Ln,subscriptions:Ln,types:Ln,directives:Ln},required:["name"],additionalProperties:!1},Mh={type:"object",properties:{requireExactGroups:{type:"boolean"},groups:{type:"array",items:Eh},otherItemsGroupName:{type:"string"}},required:["requireExactGroups","groups","otherItemsGroupName"],additionalProperties:!1},Fn={type:"object",properties:{hidePaginationButtons:{type:"boolean"},menu:{type:"object",properties:Object.assign({},Mh.properties),additionalProperties:!1},sidebar:{type:"object",properties:{hide:{type:"boolean"}}},apiLogo:{type:"object",properties:{imageUrl:{type:"string"},href:{type:"string"},altText:{type:"string"},backgroundColor:{type:"string"}}},jsonSamplesDepth:{type:"number"},samplesMaxInlineArgs:{type:"number"},licenseKey:{type:"string"},fieldExpandLevel:{type:"number"},baseUrlPath:{type:"string"},feedback:Xt},additionalProperties:!1};var jh={type:"object",properties:{languages:{type:"array",items:{type:"object",properties:{lang:{type:"string",examples:["curl","JavaScript","Node.js","Python","Java8+Apache","Java","C#","C#+Newtonsoft","PHP","Go","Ruby","R","Payload"]},label:{type:"string"},options:{type:"object",properties:{indent:{type:"string"},withImports:{type:"boolean"},withComments:{type:"boolean"},binary:{type:"boolean"},credentials:{type:"string",enum:["omit","same-origin","include"]}},additionalProperties:!1}},required:["lang"],additionalProperties:!1}},skipOptionalParameters:{type:"boolean"},withOAuth2Call:{type:"boolean"}},required:["languages"],additionalProperties:!1},Ih={type:"array",items:{type:"object",properties:{title:{type:"string"},url:{type:"string"}},required:["url"],additionalProperties:!1}},yi={type:"object",properties:{licenseKey:{type:"string"},hideLoading:{type:"boolean"},disableRouter:{type:"boolean"},hideSidebar:{type:"boolean"},feedback:Xt,hideReplay:{type:"boolean"},oAuth2RedirectURI:{type:"string",nullable:!0},corsProxyUrl:{type:"string"},sortRequiredPropsFirst:{type:"boolean"},sanitize:{type:"boolean"},hideDownloadButtons:{type:"boolean"},downloadUrls:Ih,onlyRequiredInSamples:{type:"boolean"},generatedSamplesMaxDepth:{oneOf:[{type:"number"},{type:"string"}]},showExtensions:{oneOf:[{type:"boolean"},{type:"string"},{type:"array",items:{type:"string"}}]},hideSchemaTitles:{type:"boolean"},jsonSamplesExpandLevel:{oneOf:[{type:"number"},{type:"string"}]},schemasExpansionLevel:{oneOf:[{type:"number"},{type:"string"}]},mockServer:{type:"object",properties:{url:{type:"string"},position:{type:"string",enum:["first","last","replace","off"]},description:{type:"string"}}},maxDisplayedEnumValues:{type:"number"},schemaDefinitionsTagName:{type:"string"},layout:{type:"string",enum:["stacked","three-panel"]},hideInfoMetadata:{type:"boolean"},events:{type:"object"},skipBundle:{type:"boolean"},routingBasePath:{type:"string"},codeSamples:jh,ignoreNamedSchemas:{oneOf:[{type:"array",items:{type:"string"}},{type:"string"}]},hidePropertiesPrefix:{type:"boolean"},excludeFromSearch:{type:"boolean"}},additionalProperties:!1};var Lh={type:"object",properties:{label:{type:"string"},lang:{enum:["curl","C#","Go","Java","Java8+Apache","JavaScript","Node.js","PHP","Python","R","Ruby"]}},required:["lang"]},Fh={type:"object",properties:{enum:{type:"string"},enumSingleValue:{type:"string"},enumArray:{type:"string"},default:{type:"string"},deprecated:{type:"string"},example:{type:"string"},examples:{type:"string"},nullable:{type:"string"},recursive:{type:"string"},arrayOf:{type:"string"},webhook:{type:"string"},authorizations:{type:"string"},tryItAuthBasicUsername:{type:"string"},tryItAuthBasicPassword:{type:"string"}}},Kl={type:"object",properties:{label:{type:"string"},link:{type:"string"},target:{type:"string"}},required:["label","link"]},Uh={type:"object",properties:{beforeInfo:{type:"array",items:Kl},end:{type:"array",items:Kl}}},yn={type:"object",properties:{main:{type:"string"},light:{type:"string"},dark:{type:"string"},contrastText:{type:"string"}}},bi={type:"object",properties:{backgroundColor:{type:"string"},borderColor:{type:"string"},color:{type:"string"},tabTextColor:{type:"string"}}},Wh={type:"object",properties:_i(yn.properties,["light","dark"])},Hh={type:"object",properties:{basic:{type:"string"},delete:{type:"string"},get:{type:"string"},head:{type:"string"},link:{type:"string"},options:{type:"string"},patch:{type:"string"},post:{type:"string"},put:{type:"string"}}},Bh={type:"object",properties:{error:bi,info:bi,redirect:bi,success:bi}},zh={type:"object",properties:Un(yn.properties,["dark"])},Vh={type:"object",properties:{primary:{type:"string"},secondary:{type:"string"},light:{type:"string"}}},$h={type:"object",properties:{accent:yn,border:Wh,error:yn,http:Hh,primary:yn,responses:Bh,secondary:zh,success:yn,text:Vh,tonalOffset:{type:"number"},warning:yn}},vi={type:"object",properties:{fontSize:{type:"string"},padding:{type:"string"},minWidth:{type:"string"}}},Yh={type:"object",properties:{small:vi,medium:vi,large:vi,xlarge:vi}},kt={type:"object",properties:{fontFamily:{type:"string"},fontSize:{type:"string"},fontWeight:{type:"string"},lineHeight:{type:"string"}}},Kh={type:"object",properties:Object.assign(Object.assign({},Un(kt.properties,["fontSize","lineHeight"])),{borderRadius:{type:"string"},hoverStyle:{type:"string"},boxShadow:{type:"string"},hoverBoxShadow:{type:"string"},sizes:Yh})},Gl={type:"object",properties:_i(kt.properties,["fontSize","lineHeight"])},Gh={type:"object",properties:{medium:Gl,small:Gl}},Qh={type:"object",properties:Object.assign(Object.assign({},Un(kt.properties,["fontSize","lineHeight"])),{borderRadius:{type:"string"},color:{type:"string"},sizes:Gh})},Jh={type:"object",properties:{top:{type:"string"},width:{type:"string"},height:{type:"string"}}},Xh={type:"object",properties:{borderRadius:{type:"string"},backgroundColor:{type:"string"}}},Ql={type:"object",properties:{fullWidth:{type:"boolean"}}},Zh={type:"object",properties:{buttons:Kh,httpBadges:Qh,layoutControls:Jh,panels:Xh,tryItButton:Ql,tryItSendButton:Ql}},Pi={type:"object",properties:{small:{type:"string"},medium:{type:"string"},large:{type:"string"}}},ey={type:"object",properties:{maxWidth:Pi}},ty={type:"object",properties:{maxWidth:Pi,middlePanelMaxWidth:Pi}},ny={type:"object",properties:{showDarkRightPanel:{type:"boolean"},stacked:ey,"three-panel":ty}},Jl={type:"object",properties:{backgroundColor:{type:"string"},border:{type:"string"}}},ry={type:"object",properties:{breakFieldNames:{type:"boolean"},caretColor:{type:"string"},caretSize:{type:"string"},constraints:Jl,defaultDetailsWidth:{type:"string"},examples:Jl,labelsTextSize:{type:"string"},linesColor:{type:"string"},nestedBackground:{type:"string"},nestingSpacing:{type:"string"},requireLabelColor:{type:"string"},typeNameColor:{type:"string"},typeTitleColor:{type:"string"}}},Zl={type:"object",properties:{subItemsColor:{type:"string"},textTransform:{type:"string"},fontWeight:{type:"string"}}},iy={type:"object",properties:_i(Zl.properties,["textTransform"])},oy={type:"object",properties:{unit:{type:"number"},paddingHorizontal:{type:"string"},paddingVertical:{type:"string"},offsetTop:{type:"string"},offsetLeft:{type:"string"},offsetNesting:{type:"string"}}},sy={type:"object",properties:Object.assign(Object.assign({},Un(kt.properties,["fontWeight","lineHeight"])),{activeBgColor:{type:"string"},activeTextColor:{type:"string"},backgroundColor:{type:"string"},borderRadius:{type:"string"},breakPath:{type:"boolean"},caretColor:{type:"string"},caretSize:{type:"string"},groupItems:Zl,level1items:iy,rightLineColor:{type:"string"},separatorLabelColor:{type:"string"},showAtBreakpoint:{type:"string"},spacing:oy,textColor:{type:"string"},width:{type:"string"}})},Ci={type:"object",properties:Object.assign(Object.assign({},kt.properties),{color:{type:"string"},transform:{type:"string"}})},ay={type:"object",properties:Object.assign(Object.assign({},kt.properties),{backgroundColor:{type:"string"},color:{type:"string"},wordBreak:{type:"string",enum:["break-all","break-word","keep-all","normal","revert","unset","inherit","initial"]},wrap:{type:"boolean"}})},cy={type:"object",properties:Un(kt.properties,["fontSize"])},uy={type:"object",properties:{color:{type:"string"},hover:{type:"string"},textDecoration:{type:"string"},hoverTextDecoration:{type:"string"},visited:{type:"string"}}},ly={type:"object",properties:Object.assign(Object.assign({code:ay,fieldName:kt},_i(kt.properties,["fontSize","fontFamily"])),{fontWeightBold:{type:"string"},fontWeightLight:{type:"string"},fontWeightRegular:{type:"string"},heading1:Ci,heading2:Ci,heading3:Ci,headings:cy,lineHeight:{type:"string"},links:uy,optimizeSpeed:{type:"boolean"},rightPanelHeading:Ci,smoothing:{type:"string",enum:["auto","none","antialiased","subpixel-antialiased","grayscale"]}})},dy={type:"object",properties:Object.assign({color:{type:"string"}},Un(kt.properties,["fontWeight"]))},fy={type:"object",properties:{backgroundColor:{type:"string"},borderRadius:{type:"string"},tokens:dy}},py={type:"object",properties:{gutter:{type:"string"},maxHeight:{type:"string"},maxWidth:{type:"string"}}},gy={type:"object",properties:{backgroundColor:{type:"string"},color:{type:"string"}}},Xl={type:"object",properties:{custom:{type:"string"}}},my={type:"object",properties:{DownloadButton:Xl,NextSectionButton:Xl}},hy={type:"object",properties:{backgroundColor:{type:"string"},panelBackgroundColor:{type:"string"},panelControlsBackgroundColor:{type:"string"},showAtBreakpoint:{type:"string"},textColor:{type:"string"},width:{type:"string"}}},yy={type:"object",properties:{borderRadius:{type:"string"}}},by={type:"object",properties:{sectionHorizontal:{type:"number"},sectionVertical:{type:"number"},unit:{type:"number"}}},vy={type:"object",properties:{breakpoints:Pi,codeBlock:fy,colors:$h,components:Zh,layout:ny,logo:py,fab:gy,overrides:my,rightPanel:hy,schema:ry,shape:yy,sidebar:sy,spacing:by,typography:ly,links:{properties:{color:{type:"string"}}},codeSample:{properties:{backgroundColor:{type:"string"}}}}},Cy={type:"object",properties:{skipOptionalParameters:{type:"boolean"},languages:{type:"array",items:Lh}},required:["languages"]},ed={type:"object",properties:{theme:vy,ctrlFHijack:{type:"boolean"},defaultSampleLanguage:{type:"string"},disableDeepLinks:{type:"boolean"},disableSearch:{type:"boolean"},disableSidebar:{type:"boolean"},downloadDefinitionUrl:{type:"string"},expandDefaultServerVariables:{type:"boolean"},enumSkipQuotes:{type:"boolean"},expandDefaultRequest:{type:"boolean"},expandDefaultResponse:{type:"boolean"},expandResponses:{type:"string"},expandSingleSchemaField:{type:"boolean"},generateCodeSamples:Cy,generatedPayloadSamplesMaxDepth:{type:"number"},hideDownloadButton:{type:"boolean"},hideHostname:{type:"boolean"},hideInfoSection:{type:"boolean"},hideLogo:{type:"boolean"},hideRequestPayloadSample:{type:"boolean"},hideRightPanel:{type:"boolean"},hideSchemaPattern:{type:"boolean"},hideSingleRequestSampleTab:{type:"boolean"},hideSecuritySection:{type:"boolean"},hideTryItPanel:{type:"boolean"},hideFab:{type:"boolean"},hideOneOfDescription:{type:"boolean"},htmlTemplate:{type:"string"},jsonSampleExpandLevel:{oneOf:[{type:"number",minimum:1},{type:"string"}]},labels:Fh,menuToggle:{type:"boolean"},nativeScrollbars:{type:"boolean"},noAutoAuth:{type:"boolean"},onDeepLinkClick:{type:"object"},pagination:{enum:["none","section","item"]},pathInMiddlePanel:{type:"boolean"},payloadSampleIdx:{type:"number",minimum:0},requestInterceptor:{type:"object"},requiredPropsFirst:{type:"boolean"},routingStrategy:{type:"string"},samplesTabsMaxCount:{type:"number"},schemaExpansionLevel:{oneOf:[{type:"number",minimum:0},{type:"string"}]},minCharacterLengthToInitSearch:{type:"number",minimum:1},maxResponseHeadersToShowInTryIt:{type:"number",minimum:0},scrollYOffset:{oneOf:[{type:"number"},{type:"string"}]},searchAutoExpand:{type:"boolean"},searchFieldLevelBoost:{type:"number",minimum:0},searchMaxDepth:{type:"number",minimum:1},searchMode:{type:"string",enum:["default","path-only"]},searchOperationTitleBoost:{type:"number"},searchTagTitleBoost:{type:"number"},sendXUserAgentInTryIt:{type:"boolean"},showChangeLayoutButton:{type:"boolean"},showConsole:{type:"boolean"},showNextButton:{type:"boolean"},showRightPanelToggle:{type:"boolean"},showSecuritySchemeType:{type:"boolean"},showWebhookVerb:{type:"boolean"},showObjectSchemaExamples:{type:"boolean"},disableTryItRequestUrlEncoding:{type:"boolean"},sidebarLinks:Uh,sideNavStyle:{type:"string",enum:["summary-only","path-first","id-only","path-only"]},simpleOneOfTypeLabel:{type:"boolean"},sortEnumValuesAlphabetically:{type:"boolean"},sortOperationsAlphabetically:{type:"boolean"},sortPropsAlphabetically:{type:"boolean"},sortTagsAlphabetically:{type:"boolean"},suppressWarnings:{type:"boolean"},unstable_externalDescription:{type:"boolean"},unstable_ignoreMimeParameters:{type:"boolean"},untrustedDefinition:{type:"boolean"},showAccessMode:{type:"boolean"},preserveOriginalExtensionsName:{type:"boolean"},markdownHeadingsAnchorLevel:{type:"number"}},additionalProperties:!1};function _i(e,t){return Object.fromEntries(t.filter(n=>n in e).map(n=>[n,e[n]]))}function Un(e,t){return Object.fromEntries(Object.entries(e).filter(([n])=>!t.includes(n)))}var Ie={type:"object",properties:{hide:{type:"boolean"}},additionalProperties:!1},td={type:"object",properties:{src:{type:"string"},async:{type:"boolean"},crossorigin:{type:"string"},defer:{type:"boolean"},fetchpriority:{type:"string"},integrity:{type:"string"},module:{type:"boolean"},nomodule:{type:"boolean"},nonce:{type:"string"},referrerpolicy:{type:"string"},type:{type:"string"}},required:["src"],additionalProperties:!0},Ks={type:"object",properties:{page:{type:"string"},directory:{type:"string"},disconnect:{type:"boolean",default:!1},group:{type:"string"},label:{type:"string"},href:{type:"string"},external:{type:"boolean"},labelTranslationKey:{type:"string"},groupTranslationKey:{type:"string"},icon:{oneOf:[{type:"string"},{type:"object",properties:{srcSet:{type:"string"}},required:["srcSet"]}]},separator:{type:"string"},separatorLine:{type:"boolean"},linePosition:{type:"string",enum:["top","bottom"],default:"top"},version:{type:"string"},menuStyle:{type:"string",enum:["drilldown"]},expanded:{type:"string",const:"always"},selectFirstItemOnExpand:{type:"boolean"},flatten:{type:"boolean"},linkedSidebars:{type:"array",items:{type:"string"}},items:{type:"array",items:{type:"object",additionalProperties:!0}},rbac:{type:"object",additionalProperties:{type:"string"}}}},Gs={type:"array",items:Object.assign(Object.assign({},Ks),{properties:Object.assign(Object.assign({},Ks.properties),{items:{type:"array",items:Ks}})})},Py={type:"object",properties:{name:{type:"string"},icon:{type:"string"},folder:{type:"string"}},additionalProperties:!1,required:["name","folder"]},_y={type:"object",properties:{hide:{type:"boolean",default:!1},suggestions:{default:[],type:"array",items:{type:"string"}},prompt:{type:"string"}},additionalProperties:!1},Dy={type:"array",items:{type:"object",required:["name","field","type"],properties:{name:{type:"string"},field:{type:"string"},type:{type:"string",enum:["multi-select","select","tags"]}},additionalProperties:!1}},Ry={type:"object",properties:Object.assign({facets:Dy},Ie.properties),additionalProperties:!1},Sy={type:"object",properties:{page:{type:"string"},label:{type:"string"},labelTranslationKey:{type:"string"}},required:["page"]},Di={type:"object",properties:{image:{type:"string"},srcSet:{type:"string"},altText:{type:"string"},link:{type:"string"},favicon:{type:"string"}},additionalProperties:!1},Ri={type:"object",properties:Object.assign({items:Gs},Ie.properties),additionalProperties:!1},Si={type:"object",additionalProperties:Py},Ti={type:"object",properties:Object.assign({items:Gs,copyrightText:{type:"string"},logo:Ie},Ie.properties),additionalProperties:!1},xi={type:"object",properties:Object.assign({separatorLine:{type:"boolean"},linePosition:{type:"string",enum:["top","bottom"],default:"bottom"}},Ie.properties),additionalProperties:!1},wi={type:"object",properties:{head:{type:"array",items:td},body:{type:"array",items:td}},additionalProperties:!1},ki={type:"array",items:{type:"object",properties:{href:{type:"string"},as:{type:"string"},crossorigin:{type:"string"},fetchpriority:{type:"string"},hreflang:{type:"string"},imagesizes:{type:"string"},imagesrcset:{type:"string"},integrity:{type:"string"},media:{type:"string"},prefetch:{type:"string"},referrerpolicy:{type:"string"},rel:{type:"string"},sizes:{type:"string"},title:{type:"string"},type:{type:"string"}},required:["href"],additionalProperties:!0}},Ai={type:"object",properties:Object.assign({engine:{type:"string",enum:["flexsearch","typesense"],default:"flexsearch"},ai:_y,filters:Ry,placement:{type:"string",default:"navbar"},shortcuts:{type:"array",items:{type:"string"},default:["/"]},suggestedPages:{type:"array",items:Sy}},Ie.properties),additionalProperties:!1},qi={type:"object",properties:Object.assign({ignoreDetection:{type:"boolean"},modes:{type:"array",items:{type:"string"},default:["light","dark"]}},Ie.properties),additionalProperties:!1},Ni={type:"object",properties:{nextButton:{type:"object",properties:Object.assign({text:{type:"string",default:"Next page"}},Ie.properties),additionalProperties:!1,default:{}},previousButton:{type:"object",properties:Object.assign({text:{type:"string",default:"Previous page"}},Ie.properties),additionalProperties:!1,default:{}}},additionalProperties:!1},Oi={type:"object",properties:{elementFormat:{type:"string",default:"icon"},copy:{type:"object",properties:Object.assign({},Ie.properties),additionalProperties:!1,default:{hide:!1}},report:{type:"object",properties:Object.assign({tooltipText:{type:"string"},buttonText:{type:"string"},label:{type:"string"}},Ie.properties),additionalProperties:!1,default:{hide:!1}},expand:{type:"object",properties:Object.assign({},Ie.properties),additionalProperties:!1,default:{hide:!1}},collapse:{type:"object",properties:Object.assign({},Ie.properties),additionalProperties:!1,default:{hide:!1}}},additionalProperties:!1},Ei={type:"object",properties:{frontMatterKeysToResolve:{type:"array",items:{type:"string"},default:["image","links"]},partialsFolders:{type:"array",items:{type:"string"},default:["_partials"]},lastUpdatedBlock:{type:"object",properties:Object.assign({format:{type:"string",enum:["timeago","iso","long","short"],default:"timeago"},locale:{type:"string"}},Ie.properties),additionalProperties:!1,default:{}},toc:{type:"object",properties:Object.assign({header:{type:"string",default:"On this page"},depth:{type:"integer",default:3,minimum:1}},Ie.properties),additionalProperties:!1,default:{}},editPage:{type:"object",properties:Object.assign({baseUrl:{type:"string"}},Ie.properties),additionalProperties:!1,default:{}}},additionalProperties:!1,default:{}},Wn=Object.assign(Object.assign({},yi),{properties:Object.assign(Object.assign({},yi.properties),ed.properties)}),Ty={type:"object",properties:{includeInDevelopment:{type:"boolean"},scriptUrl:{type:"string"},pageViewEventName:{type:"string"}},additionalProperties:!1,required:["scriptUrl"]},xy={type:"object",properties:{includeInDevelopment:{type:"boolean"},apiKey:{type:"string"},head:{type:"boolean"},respectDNT:{type:"boolean"},exclude:{type:"array",items:{type:"string"}},outboundClickEventName:{type:"string"},pageViewEventName:{type:"string"},amplitudeConfig:{type:"object",additionalProperties:!0}},additionalProperties:!1,required:["apiKey"]},wy={type:"object",properties:{includeInDevelopment:{type:"boolean"},orgId:{type:"string"}},additionalProperties:!1,required:["orgId"]},ky={type:"object",properties:{includeInDevelopment:{type:"boolean"},appId:{type:"string"}},additionalProperties:!1,required:["appId"]},Ay={type:"object",properties:{includeInDevelopment:{type:"boolean"},writeKey:{type:"string",minLength:10},trackPage:{type:"boolean"},dataPlaneUrl:{type:"string"},controlPlaneUrl:{type:"string"},sdkUrl:{type:"string"},loadOptions:{type:"object",additionalProperties:!0}},additionalProperties:!1,required:["writeKey"]},qy={type:"object",properties:{includeInDevelopment:{type:"boolean"},writeKey:{type:"string",minLength:10},trackPage:{type:"boolean"},includeTitleInPageCall:{type:"boolean"},host:{type:"string"}},additionalProperties:!1,required:["writeKey"]},Ny={type:"object",properties:{includeInDevelopment:{type:"boolean"},trackingId:{type:"string"},gtmAuth:{type:"string"},gtmPreview:{type:"string"},defaultDataLayer:{},dataLayerName:{type:"string"},enableWebVitalsTracking:{type:"boolean"},selfHostedOrigin:{type:"string"},pageViewEventName:{type:"string"}},additionalProperties:!1,required:["trackingId"]},Qs={type:"object",properties:{includeInDevelopment:{type:"boolean"},trackingId:{type:"string"},conversionId:{type:"string"},floodlightId:{type:"string"},optimizeId:{type:"string"},exclude:{type:"array",items:{type:"string"}}},additionalProperties:!1,required:["trackingId"]},Oy={type:"object",properties:{includeInDevelopment:{type:"boolean"},trackingId:{type:"string"},conversionId:{type:"string"},floodlightId:{type:"string"},head:{type:"boolean"},respectDNT:{type:"boolean"},exclude:{type:"array",items:{type:"string"}},optimizeId:{type:"string"},anonymizeIp:{type:"boolean"},cookieExpires:{type:"number"},trackers:{type:"object",additionalProperties:Qs}},additionalProperties:!1,required:["trackingId"]},Mi={type:"object",properties:{adobe:Ty,amplitude:xy,fullstory:wy,heap:ky,rudderstack:Ay,segment:qy,gtm:Ny,ga:Oy}},ji={type:"object",properties:Object.assign({items:{type:"array",items:{type:"object",properties:{label:{type:"string"},external:{type:"boolean"},link:{type:"string"},separatorLine:{type:"boolean"}},additionalProperties:!0},default:[]},hideLoginButton:{type:"boolean"}},Ie.properties),additionalProperties:!1},Ii={type:"object",properties:{hide:{type:"boolean"},showForUnversioned:{type:"boolean"}}},Li={type:"object",properties:{hide:{type:"boolean"},prefixItems:{type:"array",items:{type:"object",properties:{label:{type:"string"},labelTranslationKey:{type:"string"},page:{type:"string"}},additionalProperties:!1,default:{}}}},additionalProperties:!1},Ey={type:"object",additionalProperties:!1,required:["title","property"],properties:{type:{type:"string",enum:["select","checkboxes","date-range"],default:"checkboxes"},title:{type:"string"},titleTranslationKey:{type:"string"},property:{type:"string"},parentFilter:{type:"string"},valuesMapping:{type:"object",additionalProperties:{type:"string"}},missingCategoryName:{type:"string"},missingCategoryNameTranslationKey:{type:"string"},options:{type:"array",items:{type:"string"}}}},My={type:"object",additionalProperties:!0,required:["slug","items"],properties:{slug:{type:"string"},filters:{type:"array",items:Ey},groupByFirstFilter:{type:"boolean"},filterValuesCasing:{type:"string",enum:["sentence","original","lowercase","uppercase"]},items:Gs,requiredPermission:{type:"string"},separateVersions:{type:"boolean"},title:{type:"string"},titleTranslationKey:{type:"string"},description:{type:"string"},descriptionTranslationKey:{type:"string"}}},Hn={type:"object",patternProperties:{".*":My}},Fi={type:"object",additionalProperties:!0,required:[],properties:{ignoreNonCompliant:{type:"boolean",default:!1},teamMetadataProperty:{type:"object",properties:{property:{type:"string"},label:{type:"string"},default:{type:"string"}}},levels:{type:"array",items:{type:"object",required:["name"],properties:{name:{type:"string"},color:{type:"string"},extends:{type:"array",items:{type:"string"}},rules:{type:"object",additionalProperties:{oneOf:[{type:"string"},{type:"object"}]}}},additionalProperties:!1}},targets:{type:"array",items:{type:"object",required:["where"],properties:{minimumLevel:{type:"string"},rules:{type:"object",additionalProperties:!0},where:{type:"object",required:["metadata"],properties:{metadata:{type:"object",additionalProperties:{type:"string"}}},additionalProperties:!1}},additionalProperties:!1}},ignore:{type:"array",items:{type:"string"}}}};var tt={type:"object",properties:{imports:{type:"array",items:{type:"string"}},logo:Di,navbar:Ri,products:Si,footer:Ti,sidebar:xi,scripts:wi,links:ki,feedback:Xt,search:Ai,colorMode:qi,navigation:Ni,codeSnippet:Oi,markdown:Ei,openapi:Wn,graphql:Fn,analytics:Mi,userMenu:ji,versionPicker:Ii,breadcrumbs:Li,catalog:Hn,catalogClassic:Hn,scorecard:Fi},additionalProperties:!0},YD=Object.assign(Object.assign({},tt),{additionalProperties:!1});var Xs="https://redocly.com/sso/teams",Bn;(function(e){e.OIDC="OIDC",e.SAML2="SAML2"})(Bn||(Bn={}));var zn;(function(e){e.SERVICE_ACCOUNT="SERVICE_ACCOUNT",e.OAUTH2="OAUTH2"})(zn||(zn={}));var Js;(function(e){e.STACKED="stacked",e.THREE_PANEL="three-panel"})(Js||(Js={}));function Ui(e,t){return Object.fromEntries(Object.entries(e).map(([n,r])=>{if(n!==t)return typeof r!="object"||!r?[n,r]:Array.isArray(r)?[n,r.map(i=>typeof i=="object"?Ui(i,t):i)]:[n,Ui(r,t)]}).filter(Boolean))}var jy={type:"object",additionalProperties:{type:"string"}},Iy={type:"object",additionalProperties:!1,patternProperties:{"^[a-zA-Z0-9_-]+$":{type:"string",pattern:"^https?://[^\\s/$.?#].[^\\s]*$"}}},Wi={type:"string",enum:["error","warn","off"]},Ly={type:"object",additionalProperties:!1,properties:{schemaCheck:Wi,statusCodeCheck:Wi,contentTypeCheck:Wi,successCriteriaCheck:Wi}},Fy={type:"object",properties:{event:{type:"string",enum:["schedule"]},interval:{type:"string",enum:["1m","2m","5m","10m","15m","30m","1h","3h","6h","12h","1d","7d"]}},required:["event"],additionalProperties:!1},Uy={type:"object",properties:{event:{type:"string",enum:["build"]}},required:["event"],additionalProperties:!1},nd={type:"object",properties:{ignoreLint:{oneOf:[{type:"boolean",default:!1},{type:"object",additionalProperties:{type:"boolean"}}]},ignoreLinkChecker:{type:"boolean"},ignoreMarkdocErrors:{type:"boolean"},jobs:{type:"array",items:{type:"object",properties:{path:{type:"string",pattern:"^(?!\\.\\./)(/[a-zA-Z0-9_\\-\\./]+|./[a-zA-Z0-9_\\-\\./]+|[a-zA-Z0-9_\\-\\./]+)$"},agent:{type:"string",enum:["respect"]},trigger:{oneOf:[Fy,Uy]},inputs:jy,servers:Iy,severity:Ly},required:["path","trigger","agent"],additionalProperties:!1}}},additionalProperties:!1};var Wy={type:"object",properties:{end_session_endpoint:{type:"string"},token_endpoint:{type:"string"},authorization_endpoint:{type:"string"},jwks_uri:{type:"string"}},required:["token_endpoint","authorization_endpoint"],additionalProperties:!0},Hy={type:"object",properties:{type:{type:"string",const:Bn.OIDC},title:{type:"string"},pkce:{type:"boolean",default:!1},configurationUrl:{type:"string",minLength:1},configuration:Wy,clientId:{type:"string",minLength:1},clientSecret:{type:"string",minLength:0},teamsClaimName:{type:"string"},teamsClaimMap:{type:"object",additionalProperties:{type:"string"}},defaultTeams:{type:"array",items:{type:"string"}},scopes:{type:"array",items:{type:"string"}},tokenExpirationTime:{type:"number"},authorizationRequestCustomParams:{type:"object",additionalProperties:{type:"string"}},tokenRequestCustomParams:{type:"object",additionalProperties:{type:"string"}},audience:{type:"array",items:{type:"string"}}},required:["type","clientId"],oneOf:[{required:["configurationUrl"]},{required:["configuration"]}],additionalProperties:!1},By={type:"object",properties:{type:{type:"string",const:Bn.SAML2},title:{type:"string"},issuerId:{type:"string"},entityId:{type:"string"},ssoUrl:{type:"string"},x509PublicCert:{type:"string"},teamsAttributeName:{type:"string",default:Xs},teamsAttributeMap:{type:"object",additionalProperties:{type:"string"}},defaultTeams:{type:"array",items:{type:"string"}}},additionalProperties:!1,required:["type","issuerId","ssoUrl","x509PublicCert"]},zy={oneOf:[Hy,By],discriminator:{propertyName:"type"}},Vy={type:"object",additionalProperties:zy},$y={oneOf:[{type:"array",items:{type:"string",enum:["REDOCLY","CORPORATE","GUEST"]},uniqueItems:!0},{type:"string",enum:["REDOCLY","CORPORATE","GUEST"]}]},Yy={type:"object",properties:{to:{type:"string"},type:{type:"number",default:301}},additionalProperties:!1},Ky={type:"object",additionalProperties:Yy,default:{}},sd={type:"object",additionalProperties:{oneOf:[{type:"string"},{type:"object"}]}},ta={type:"object",properties:{root:{type:"string"},output:{type:"string",pattern:"(.ya?ml|.json)$"},rbac:{type:"object",additionalProperties:!0},openapi:Wn,graphql:Fn,theme:{type:"object",properties:{openapi:Wn,graphql:Fn},additionalProperties:!1},title:{type:"string"},metadata:{type:"object",additionalProperties:!0},rules:sd,decorators:{type:"object",additionalProperties:!0},preprocessors:{type:"object",additionalProperties:!0}},required:["root"]},Gy={type:"object",additionalProperties:!0},Qy={type:"object",additionalProperties:{type:"object",additionalProperties:!0}},rd={type:"object",properties:{hide:{type:"boolean",default:!1},title:{type:"string"},description:{type:"string"},details:{type:"object",properties:{path:{type:"string"},content:{type:"string"}},additionalProperties:!1},excludeFiles:{type:"array",items:{type:"string"},default:[]},sections:{type:"array",items:{type:"object",properties:{title:{type:"string"},description:{type:"string"},includeFiles:{type:"array",items:{type:"string"},default:[]},excludeFiles:{type:"array",items:{type:"string"},default:[]}},required:["title"],additionalProperties:!1}}},default:{hide:!1,title:void 0,description:void 0,details:void 0,sections:[{title:"Table of contents",includeFiles:["**/*"],excludeFiles:[]}]},additionalProperties:!1},id={type:"object",properties:{title:{type:"string"},description:{type:"string"},siteUrl:{type:"string"},image:{type:"string"},keywords:{oneOf:[{type:"array",items:{type:"string"}},{type:"string"}]},lang:{type:"string"},jsonLd:{type:"object"},meta:{type:"array",items:{type:"object",properties:{name:{type:"string"},content:{type:"string"}},required:["name","content"],additionalProperties:!1}},llmstxt:rd},default:{llmstxt:rd.default},additionalProperties:!1},Jy={type:"object",properties:{folders:{type:"array",items:{type:"string"}}},additionalProperties:!1},bn={type:"object",additionalProperties:{type:"string"}},ad={type:"object",properties:{teamNamePatterns:{type:"array",items:{type:"string"}},teamFolders:{type:"array",items:{type:"string"}},teamFoldersBaseRoles:bn,cms:bn,reunite:bn,features:{type:"object",properties:{aiSearch:bn},additionalProperties:!1},content:{type:"object",properties:{"**":bn},additionalProperties:bn}},additionalProperties:bn},Xy={type:"object",properties:{static:{type:"string"}},additionalProperties:!1,required:["static"]},Zy={type:"object",properties:{idp:{type:"string"}},additionalProperties:!1,required:["idp"]},eb={type:"object",properties:{type:{type:"string",const:"GRAVITEE"},apiBaseUrl:{type:"string"},env:{type:"string"},allowApiProductsOutsideCatalog:{type:"boolean",default:!1},stage:{type:"string",default:"non-production"},auth:{oneOf:[Xy,Zy]}},additionalProperties:!1,required:["type","apiBaseUrl"]},tb={type:"object",properties:{type:{type:"string",const:zn.OAUTH2},tokenEndpoint:{type:"string"},clientId:{type:"string"},clientSecret:{type:"string"}},additionalProperties:!1,required:["type","tokenEndpoint","clientId","clientSecret"]},nb={type:"object",properties:{type:{type:"string",const:zn.SERVICE_ACCOUNT},serviceAccountEmail:{type:"string"},serviceAccountPrivateKey:{type:"string"}},additionalProperties:!1,required:["type","serviceAccountEmail","serviceAccountPrivateKey"]},Zs={type:"object",properties:{type:{type:"string",const:"APIGEE_X"},apiUrl:{type:"string"},stage:{type:"string",default:"non-production"},organizationName:{type:"string"},ignoreApiProducts:{type:"array",items:{type:"string"}},allowApiProductsOutsideCatalog:{type:"boolean",default:!1},auth:{type:"object",oneOf:[tb,nb],discriminator:{propertyName:"type"}}},additionalProperties:!1,required:["type","organizationName","auth"]},rb=Object.assign(Object.assign({},Zs),{properties:Object.assign(Object.assign({},Zs.properties),{type:{type:"string",const:"APIGEE_EDGE"}})}),ib={type:"object",oneOf:[Zs,rb,eb],discriminator:{propertyName:"type"}},ob={type:"object",required:["adapters"],additionalProperties:!1,properties:{adapters:{type:"array",items:ib}}},od={type:"object",properties:{defaultLocale:{type:"string"},locales:{type:"array",items:{type:"object",properties:{code:{type:"string"},name:{type:"string"}},required:["code"]}}},additionalProperties:!1,required:["defaultLocale"]},sb={type:"object",properties:{name:{type:"string"},value:{type:"string"}},additionalProperties:!1,required:["name","value"]},ea={type:"object",properties:{imports:{type:"array",items:{type:"string"}},licenseKey:{type:"string"},redirects:Ky,seo:id,rbac:ad,apiFunctions:Jy,requiresLogin:{type:"boolean"},responseHeaders:{type:"object",additionalProperties:{type:"array",items:sb}},mockServer:{type:"object",properties:{off:{type:"boolean",default:!1},position:{type:"string",enum:["first","last","replace","off"],default:"first"},strictExamples:{type:"boolean",default:!1},errorIfForcedExampleNotFound:{type:"boolean",default:!1},description:{type:"string"}}},apis:{type:"object",additionalProperties:ta},rules:sd,decorators:{type:"object",additionalProperties:!0},preprocessors:{type:"object",additionalProperties:!0},ssoDirect:Vy,sso:$y,residency:{type:"string"},developerOnboarding:ob,removeAttribution:{type:"boolean"},i18n:od,l10n:od,metadata:Gy,metadataGlobs:Qy,ignore:{type:"array",items:{type:"string"}},theme:tt,reunite:nd,logo:Di,navbar:Ri,products:Si,footer:Ti,sidebar:xi,scripts:wi,links:ki,feedback:Xt,search:Ai,colorMode:qi,navigation:Ni,codeSnippet:Oi,markdown:Ei,openapi:Wn,graphql:Fn,analytics:Mi,userMenu:ji,versionPicker:Ii,breadcrumbs:Li,catalog:Hn,catalogClassic:Hn,scorecard:Fi},default:{redirects:{},seo:id.default},additionalProperties:!0},ab=Object.assign(Object.assign({},Ui(ea,"default")),{additionalProperties:!1}),na=Object.assign(Object.assign({$id:"root-redocly-config"},ea),{properties:Object.assign(Object.assign({plugins:{type:"array",items:{type:"string"}}},ea.properties),{env:{type:"object",additionalProperties:ab}}),default:{},additionalProperties:!1});var ra={type:"object",properties:{logo:tt.properties.logo,navbar:tt.properties.navbar,footer:tt.properties.footer,sidebar:tt.properties.sidebar,search:tt.properties.search,codeSnippet:tt.properties.codeSnippet,breadcrumbs:tt.properties.breadcrumbs,openapi:tt.properties.openapi,feedback:tt.properties.feedback,analytics:{type:"object",properties:{ga:Qs}}},additionalProperties:!0,default:{}},cb={$id:"product-config-override",type:"object",properties:Object.assign(Object.assign({},ra.properties),{apis:{type:"object",additionalProperties:ta},theme:ra}),additionalProperties:!1};var Ke=Ge(an(),1);import{getLineColLocation as S_,lintDocument as T_,makeDocumentFromString as Kc,lintConfig as x_,detectSpec as w_,getMergedConfig as k_,createConfigTypes as A_}from"@redocly/openapi-core";import{bundleDocument as v_,makeDocumentFromString as C_}from"@redocly/openapi-core";var fp=new Map,jo=new Map;function P_(e){return e?Array.from(e).map(([t,n])=>[t,Is(n)]):[]}async function $c(e,t){let{config:n}=await In(),r=new Ut(n.resolve),i=C_(e.getText(),e.uri),{bundle:o,problems:s,fileDependencies:u,rootType:c,refTypes:p}=await v_({document:i,config:n.styleguide,externalRefResolver:r}),g=P_(p);p&&(jo=new Map([...jo,...p])),fp.set(e.uri,{uri:e.uri,name:qn(e.uri),definition:o.parsed,rootType:c,refTypes:g,errors:t})}function __(){return Array.from(fp).map(([e,{definition:t,rootType:n,refTypes:r,errors:i}])=>({name:qn(e),uri:e,definition:t,rootType:n,refTypes:r,errors:i}))}function Yc(e){return jo.has(e)?jo.get(e):null}import{createConfig as D_,lintDocument as R_}from"@redocly/openapi-core";async function pp(e,t,n,r){let i=[];for(let o of n?.levels||[]){let s=await D_(o,{configPath:r}),u=await R_({document:e,externalRefResolver:t,config:s.styleguide});i.push(...u.filter(({ignored:c})=>!c).map(c=>({...c,scorecardLevel:o.name})))}return i}var q_=800,N_=5,Qc=El(M_,q_);async function O_(e){let t=e.map(({documentPath:i})=>Ne(i).toString()),{config:n}=await In(),r=await qe.getRootWorkspaceFolderURI();for(let{root:i}of Object.values(n.apis)){let o=await Ls(i,r);if(t.includes(o))return o}return t[0]}var Gc;function E_(e){try{return w_(e),!0}catch{return!1}}async function M_(e){let t=e.uri,{config:n,rootConfigDocument:r,configPath:i}=await In();if(vr(An(t))){let o=Ys(t)?Kc(e.getText(),t):Kc(r?.source.body||"",r?.source.absoluteRef||""),s=new Ut,u=await x_({document:o,externalRefResolver:s,config:n,externalConfigTypes:A_(na,n)}),c=[{uri:e.uri,diagnostics:[]}];return gp(u,c),c}else{let o=Bl(t),s=await O_(o||[]);s&&(e=await st(s),t=s);let u;try{u=Kc(e.getText(),t)}catch{return[{uri:e.uri,diagnostics:[]}]}if(!E_(u.parsed))return[{uri:e.uri,diagnostics:[]}];let c=[];try{let p=new Ut(n.resolve);Gc=e.uri;let g=await qe.getRootWorkspaceFolderURI(),b=await jl(n.apis,Gc,g),D=Date.now(),R=(await T_({document:u,config:k_(n,b).styleguide,externalRefResolver:p})).filter(({ignored:N})=>!N),T=r?.parsed?.scorecard,q=T&&qe.scorecardEnabled?await pp(u,p,T,i):[],B=[...R,...q];Gc="";let I=F_(R);$c(e,I);let _=Date.now()-D;c=[...new Set([e.uri,...[...p.getFiles()].map(N=>Ne(N).toString())])].map(N=>({uri:N,diagnostics:[]})),Hl(t,{dependencyPaths:p.getFiles(),durationMS:_}),gp(B,c)}catch(p){j_(e.uri,p,c)}return c}}function Io(){return qe.documents.all().map(Qc)}function j_(e,t,n){let r=n||[{uri:e,diagnostics:[]}];if(t.line&&t.col&&t.message){let i=t.source?.absoluteRef?Ne(t.source.absoluteRef).toString():e,o=t.line-1,s=t.col-1,u=Ke.Position.create(o,s),c=Ke.Diagnostic.create(Ke.Range.create(u,u),t.message,Ke.DiagnosticSeverity.Error);mp(i,c,r)}else t.message.includes("This doesn\u2019t look like an OpenAPI document")||console.error(t);return r}function mp(e,t,n){let r=n.find(i=>i.uri===e);return r||(r={uri:e,diagnostics:[]},n.push(r)),r.diagnostics.push(t),n}function I_(e){return e.suggest.length===0?"":e.suggest.length===1?`
71
+ `);return n[0]}),this.registerRootWorkspaceFolderURIGetter(async()=>"")}registerFileSystemProvider(t){this._fs=t}registerDocumentsProvider(t){this._documentManager=t}registerConfigFinder(t){this._findConfig=t}registerRootWorkspaceFolderURIGetter(t){this._getRootWorkspaceFolderURI=t}get fs(){if(!this._fs)throw new Error("FileSystemProvider not registered.");return this._fs}get documents(){if(!this._documentManager)throw new Error("DocumentsProvider not registered.");return this._documentManager}get findConfig(){return this._findConfig}get getRootWorkspaceFolderURI(){return this._getRootWorkspaceFolderURI}enableScorecard(t){this._scorecardEnabled=t}get scorecardEnabled(){return this._scorecardEnabled}},qe=new as;function au(e,t){return de.resolvePath(Ne(e)).toString()===de.resolvePath(Ne(t)).toString()}function Ne(e){return Kt.parse(e)}function An(e){return Kt.parse(e).fsPath}function dr(e){let t=["https","http"],{scheme:n}=Kt.parse(e);return t.includes(n)}function qn(e){return de.basename(Ne(e))}async function cu(e,t="/"){let n=de.resolvePath(Ne(t));for(;e.path!=="/";)try{(await qe.fs.stat(de.resolvePath(n,e.path))).isDirectory()||(e=de.dirname(e));break}catch{e=de.dirname(e)}return e}import{BaseResolver as Ah,Source as zl,readFileFromUrl as qh}from"@redocly/openapi-core";var fi=Ge(hr(),1);import{isAbsoluteUrl as xh}from"@redocly/openapi-core";function El(e,t=100,n=!1){let r=new Map,i=new Map;function o(u,c,p){let g=i.get(u.uri),b=g?Date.now()-g:0;try{b<t&&b>=0?r.set(u.uri,setTimeout(()=>o(u,c,p),t-b)):(r.delete(u.uri),i.delete(u.uri),n||c(e(u)))}catch(D){p(D)}}function s(u){let c=r.get(u.uri),p=n&&!c;return i.set(u.uri,Date.now()),new Promise((g,b)=>{c||r.set(u.uri,setTimeout(()=>o(u,g,b),t)),p&&g(e(u))})}return s}function Is(e){let t=new Set,n=r=>Array.isArray(n)?r.map(n):typeof r=="object"&&r!==null?t.has(r)?void 0:(t.add(r),Object.fromEntries(Object.entries(r).map(([i,o])=>[i,n(o)]))):r;return n(e)}function Ml(e){return e==="$ref"}async function Ls(e,t){let n=Kt.parse(t);return de.joinPath(n,e).toString()}async function jl(e,t,n){for(let[r,{root:i}]of Object.entries(e))if(await Ls(i,n)===t)return r}function Il(e){return typeof e=="string"}function pi(e){return typeof e=="function"}function Ll(e){return e?.kind===fi.Kind.MAP}function Fs(e){return e?.kind===fi.Kind.MAPPING}function Us(e){return e?.kind===fi.Kind.SEQ}function yr(e,t){let n=t.singleQuoted?"'":'"';return`${n}${e}${n}`}function Ws(e){return xh(e)||e.startsWith("file://")}var gi=class e{constructor(t,n,r,i){this._uri=t,this._languageId=n,this._version=r,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(t){if(t){let n=this.offsetAt(t.start),r=this.offsetAt(t.end);return this._content.substring(n,r)}return this._content}update(t,n){for(let r of t)if(e.isIncremental(r)){let i=Ul(r.range),o=this.offsetAt(i.start),s=this.offsetAt(i.end);this._content=this._content.substring(0,o)+r.text+this._content.substring(s,this._content.length);let u=Math.max(i.start.line,0),c=Math.max(i.end.line,0),p=this._lineOffsets,g=Fl(r.text,!1,o);if(c-u===g.length)for(let D=0,R=g.length;D<R;D++)p[D+u+1]=g[D];else g.length<1e4?p.splice(u+1,c-u,...g):this._lineOffsets=p=p.slice(0,u+1).concat(g,p.slice(c+1));let b=r.text.length-(s-o);if(b!==0)for(let D=u+1+g.length,R=p.length;D<R;D++)p[D]=p[D]+b}else if(e.isFull(r))this._content=r.text,this._lineOffsets=void 0;else throw new Error("Unknown change event received");this._version=n}getLineOffsets(){return this._lineOffsets===void 0&&(this._lineOffsets=Fl(this._content,!0)),this._lineOffsets}positionAt(t){t=Math.max(Math.min(t,this._content.length),0);let n=this.getLineOffsets(),r=0,i=n.length;if(i===0)return{line:0,character:t};for(;r<i;){let s=Math.floor((r+i)/2);n[s]>t?i=s:r=s+1}let o=r-1;return{line:o,character:t-n[o]}}offsetAt(t){let n=this.getLineOffsets();if(t.line>=n.length)return this._content.length;if(t.line<0)return 0;let r=n[t.line],i=t.line+1<n.length?n[t.line+1]:this._content.length;return Math.max(Math.min(r+t.character,i),r)}get lineCount(){return this.getLineOffsets().length}static isIncremental(t){let n=t;return n!=null&&typeof n.text=="string"&&n.range!==void 0&&(n.rangeLength===void 0||typeof n.rangeLength=="number")}static isFull(t){let n=t;return n!=null&&typeof n.text=="string"&&n.range===void 0&&n.rangeLength===void 0}},mi;(function(e){function t(i,o,s,u){return new gi(i,o,s,u)}e.create=t;function n(i,o,s){if(i instanceof gi)return i.update(o,s),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}e.update=n;function r(i,o){let s=i.getText(),u=Hs(o.map(wh),(g,b)=>{let D=g.range.start.line-b.range.start.line;return D===0?g.range.start.character-b.range.start.character:D}),c=0,p=[];for(let g of u){let b=i.offsetAt(g.range.start);if(b<c)throw new Error("Overlapping edit");b>c&&p.push(s.substring(c,b)),g.newText.length&&p.push(g.newText),c=i.offsetAt(g.range.end)}return p.push(s.substr(c)),p.join("")}e.applyEdits=r})(mi||(mi={}));function Hs(e,t){if(e.length<=1)return e;let n=e.length/2|0,r=e.slice(0,n),i=e.slice(n);Hs(r,t),Hs(i,t);let o=0,s=0,u=0;for(;o<r.length&&s<i.length;)t(r[o],i[s])<=0?e[u++]=r[o++]:e[u++]=i[s++];for(;o<r.length;)e[u++]=r[o++];for(;s<i.length;)e[u++]=i[s++];return e}function Fl(e,t,n=0){let r=t?[n]:[];for(let i=0;i<e.length;i++){let o=e.charCodeAt(i);(o===13||o===10)&&(o===13&&i+1<e.length&&e.charCodeAt(i+1)===10&&i++,r.push(n+i+1))}return r}function Ul(e){let t=e.start,n=e.end;return t.line>n.line||t.line===n.line&&t.character>n.character?{start:n,end:t}:e}function wh(e){let t=Ul(e.range);return t!==e.range?{newText:e.newText,range:t}:e}var Wl=new Map;function Hl(e,t){return Wl.set(e,t)}function Bl(e){let t=[];for(let[n,r]of Wl.entries())r.dependencyPaths.has(e)&&t.push({documentPath:n,durationMS:r.durationMS});return t}async function st(e){let t=qe.documents.get(e);if(t)return t;let n=await qe.fs.readFile(Ne(e),"utf-8");return mi.create(e,"yaml",1,n)}function Bs(e){return us.filePattern.test(e)}function kh(e){return cs.filePattern.test(e)}var Ut=class extends Ah{resolveExternalRef(t,n){return Ws(n)?n:t&&Ws(t)?new URL(n,t).href:t?de.resolvePath(de.dirname(Ne(t)),n).toString():n}async loadExternalRef(t){if(dr(t)){let{body:n,mimeType:r}=await qh(t,{...this.config.http,customFetch:fetch});return new zl(t,n,r)}return new zl(t,(await st(t)).getText())}};var br,hi,zs,Vl;async function Vs(e){let t=new Ut,n=e?await qe.findConfig(e):void 0;return br=await Nh({configPath:n,externalRefResolver:t,processRawConfig:async({document:r,resolvedRefMap:i})=>{zs=i,Vl=r}}),br}async function In(){return br||await Vs(),{config:br,configPath:hi,rootConfigDocument:Vl}}async function $l(e,t){try{return hi=e?await qe.findConfig(e):void 0,hi?await Vs(hi):br}catch(n){return t?.createEventHandleLoadConfigError?.(n?.message),Vs()}}function vr(e){return Ys(e)?!0:!!zs&&[...zs.keys()].map(n=>n.split("::")?.[1]?.split("#")[0]).some(n=>au(qn(e),n))}function Ys(e){return $s.includes(qn(e))}var Yl={hide:{type:"boolean",default:!1},component:{type:"string",enum:["radio","checkbox"],default:"checkbox"},label:{type:"string"},items:{type:"array",items:{type:"string"}}},Cr={type:"object",properties:Yl,additionalProperties:!1},Oh={type:"object",properties:{hide:{type:"boolean",default:!1},label:{type:"string"},placeholder:{type:"string"}},additionalProperties:!1},Xt={type:"object",properties:{hide:{type:"boolean",default:!1},type:{type:"string",enum:["rating","sentiment","comment","reasons","mood","scale"],default:"sentiment"},settings:{type:"object",properties:{label:{type:"string"},submitText:{type:"string"},buttonText:{type:"string"},component:{type:"string",enum:["radio","checkbox"],default:"checkbox"},items:{type:"array",items:{type:"string"},minItems:1},leftScaleLabel:{type:"string"},rightScaleLabel:{type:"string"},reasons:{type:"object",properties:Object.assign(Object.assign({},Yl),{like:Cr,dislike:Cr,satisfied:Cr,neutral:Cr,dissatisfied:Cr}),additionalProperties:!1},comment:{type:"object",properties:{hide:{type:"boolean",default:!1},label:{type:"string"},likeLabel:{type:"string"},dislikeLabel:{type:"string"},satisfiedLabel:{type:"string"},neutralLabel:{type:"string"},dissatisfiedLabel:{type:"string"}},additionalProperties:!1},optionalEmail:Oh},additionalProperties:!1}},additionalProperties:!1};var Ln={type:"object",properties:{includeByName:{type:"array",items:{type:"string"}},excludeByName:{type:"array",items:{type:"string"}}},additionalProperties:!1},Eh={type:"object",properties:{name:{type:"string"},items:Ln,queries:Ln,mutations:Ln,subscriptions:Ln,types:Ln,directives:Ln},required:["name"],additionalProperties:!1},Mh={type:"object",properties:{requireExactGroups:{type:"boolean"},groups:{type:"array",items:Eh},otherItemsGroupName:{type:"string"}},required:["requireExactGroups","groups","otherItemsGroupName"],additionalProperties:!1},Fn={type:"object",properties:{hidePaginationButtons:{type:"boolean"},menu:{type:"object",properties:Object.assign({},Mh.properties),additionalProperties:!1},sidebar:{type:"object",properties:{hide:{type:"boolean"}}},apiLogo:{type:"object",properties:{imageUrl:{type:"string"},href:{type:"string"},altText:{type:"string"},backgroundColor:{type:"string"}}},jsonSamplesDepth:{type:"number"},samplesMaxInlineArgs:{type:"number"},licenseKey:{type:"string"},fieldExpandLevel:{type:"number"},baseUrlPath:{type:"string"},feedback:Xt},additionalProperties:!1};var jh={type:"object",properties:{languages:{type:"array",items:{type:"object",properties:{lang:{type:"string",examples:["curl","JavaScript","Node.js","Python","Java8+Apache","Java","C#","C#+Newtonsoft","PHP","Go","Ruby","R","Payload"]},label:{type:"string"},options:{type:"object",properties:{indent:{type:"string"},withImports:{type:"boolean"},withComments:{type:"boolean"},binary:{type:"boolean"},credentials:{type:"string",enum:["omit","same-origin","include"]}},additionalProperties:!1}},required:["lang"],additionalProperties:!1}},skipOptionalParameters:{type:"boolean"},withOAuth2Call:{type:"boolean"}},required:["languages"],additionalProperties:!1},Ih={type:"array",items:{type:"object",properties:{title:{type:"string"},url:{type:"string"}},required:["url"],additionalProperties:!1}},yi={type:"object",properties:{licenseKey:{type:"string"},hideLoading:{type:"boolean"},disableRouter:{type:"boolean"},hideSidebar:{type:"boolean"},feedback:Xt,hideReplay:{type:"boolean"},oAuth2RedirectURI:{type:"string",nullable:!0},corsProxyUrl:{type:"string"},sortRequiredPropsFirst:{type:"boolean"},sanitize:{type:"boolean"},hideDownloadButtons:{type:"boolean"},downloadUrls:Ih,onlyRequiredInSamples:{type:"boolean"},generatedSamplesMaxDepth:{oneOf:[{type:"number"},{type:"string"}]},showExtensions:{oneOf:[{type:"boolean"},{type:"string"},{type:"array",items:{type:"string"}}]},hideSchemaTitles:{type:"boolean"},jsonSamplesExpandLevel:{oneOf:[{type:"number"},{type:"string"}]},schemasExpansionLevel:{oneOf:[{type:"number"},{type:"string"}]},mockServer:{type:"object",properties:{url:{type:"string"},position:{type:"string",enum:["first","last","replace","off"]},description:{type:"string"}}},maxDisplayedEnumValues:{type:"number"},schemaDefinitionsTagName:{type:"string"},layout:{type:"string",enum:["stacked","three-panel"]},hideInfoMetadata:{type:"boolean"},events:{type:"object"},skipBundle:{type:"boolean"},routingBasePath:{type:"string"},codeSamples:jh,ignoreNamedSchemas:{oneOf:[{type:"array",items:{type:"string"}},{type:"string"}]},hidePropertiesPrefix:{type:"boolean"},excludeFromSearch:{type:"boolean"}},additionalProperties:!1};var Lh={type:"object",properties:{label:{type:"string"},lang:{enum:["curl","C#","Go","Java","Java8+Apache","JavaScript","Node.js","PHP","Python","R","Ruby"]}},required:["lang"]},Fh={type:"object",properties:{enum:{type:"string"},enumSingleValue:{type:"string"},enumArray:{type:"string"},default:{type:"string"},deprecated:{type:"string"},example:{type:"string"},examples:{type:"string"},nullable:{type:"string"},recursive:{type:"string"},arrayOf:{type:"string"},webhook:{type:"string"},authorizations:{type:"string"},tryItAuthBasicUsername:{type:"string"},tryItAuthBasicPassword:{type:"string"}}},Kl={type:"object",properties:{label:{type:"string"},link:{type:"string"},target:{type:"string"}},required:["label","link"]},Uh={type:"object",properties:{beforeInfo:{type:"array",items:Kl},end:{type:"array",items:Kl}}},yn={type:"object",properties:{main:{type:"string"},light:{type:"string"},dark:{type:"string"},contrastText:{type:"string"}}},bi={type:"object",properties:{backgroundColor:{type:"string"},borderColor:{type:"string"},color:{type:"string"},tabTextColor:{type:"string"}}},Wh={type:"object",properties:_i(yn.properties,["light","dark"])},Hh={type:"object",properties:{basic:{type:"string"},delete:{type:"string"},get:{type:"string"},head:{type:"string"},link:{type:"string"},options:{type:"string"},patch:{type:"string"},post:{type:"string"},put:{type:"string"}}},Bh={type:"object",properties:{error:bi,info:bi,redirect:bi,success:bi}},zh={type:"object",properties:Un(yn.properties,["dark"])},Vh={type:"object",properties:{primary:{type:"string"},secondary:{type:"string"},light:{type:"string"}}},$h={type:"object",properties:{accent:yn,border:Wh,error:yn,http:Hh,primary:yn,responses:Bh,secondary:zh,success:yn,text:Vh,tonalOffset:{type:"number"},warning:yn}},vi={type:"object",properties:{fontSize:{type:"string"},padding:{type:"string"},minWidth:{type:"string"}}},Yh={type:"object",properties:{small:vi,medium:vi,large:vi,xlarge:vi}},kt={type:"object",properties:{fontFamily:{type:"string"},fontSize:{type:"string"},fontWeight:{type:"string"},lineHeight:{type:"string"}}},Kh={type:"object",properties:Object.assign(Object.assign({},Un(kt.properties,["fontSize","lineHeight"])),{borderRadius:{type:"string"},hoverStyle:{type:"string"},boxShadow:{type:"string"},hoverBoxShadow:{type:"string"},sizes:Yh})},Gl={type:"object",properties:_i(kt.properties,["fontSize","lineHeight"])},Gh={type:"object",properties:{medium:Gl,small:Gl}},Qh={type:"object",properties:Object.assign(Object.assign({},Un(kt.properties,["fontSize","lineHeight"])),{borderRadius:{type:"string"},color:{type:"string"},sizes:Gh})},Jh={type:"object",properties:{top:{type:"string"},width:{type:"string"},height:{type:"string"}}},Xh={type:"object",properties:{borderRadius:{type:"string"},backgroundColor:{type:"string"}}},Ql={type:"object",properties:{fullWidth:{type:"boolean"}}},Zh={type:"object",properties:{buttons:Kh,httpBadges:Qh,layoutControls:Jh,panels:Xh,tryItButton:Ql,tryItSendButton:Ql}},Pi={type:"object",properties:{small:{type:"string"},medium:{type:"string"},large:{type:"string"}}},ey={type:"object",properties:{maxWidth:Pi}},ty={type:"object",properties:{maxWidth:Pi,middlePanelMaxWidth:Pi}},ny={type:"object",properties:{showDarkRightPanel:{type:"boolean"},stacked:ey,"three-panel":ty}},Jl={type:"object",properties:{backgroundColor:{type:"string"},border:{type:"string"}}},ry={type:"object",properties:{breakFieldNames:{type:"boolean"},caretColor:{type:"string"},caretSize:{type:"string"},constraints:Jl,defaultDetailsWidth:{type:"string"},examples:Jl,labelsTextSize:{type:"string"},linesColor:{type:"string"},nestedBackground:{type:"string"},nestingSpacing:{type:"string"},requireLabelColor:{type:"string"},typeNameColor:{type:"string"},typeTitleColor:{type:"string"}}},Zl={type:"object",properties:{subItemsColor:{type:"string"},textTransform:{type:"string"},fontWeight:{type:"string"}}},iy={type:"object",properties:_i(Zl.properties,["textTransform"])},oy={type:"object",properties:{unit:{type:"number"},paddingHorizontal:{type:"string"},paddingVertical:{type:"string"},offsetTop:{type:"string"},offsetLeft:{type:"string"},offsetNesting:{type:"string"}}},sy={type:"object",properties:Object.assign(Object.assign({},Un(kt.properties,["fontWeight","lineHeight"])),{activeBgColor:{type:"string"},activeTextColor:{type:"string"},backgroundColor:{type:"string"},borderRadius:{type:"string"},breakPath:{type:"boolean"},caretColor:{type:"string"},caretSize:{type:"string"},groupItems:Zl,level1items:iy,rightLineColor:{type:"string"},separatorLabelColor:{type:"string"},showAtBreakpoint:{type:"string"},spacing:oy,textColor:{type:"string"},width:{type:"string"}})},Ci={type:"object",properties:Object.assign(Object.assign({},kt.properties),{color:{type:"string"},transform:{type:"string"}})},ay={type:"object",properties:Object.assign(Object.assign({},kt.properties),{backgroundColor:{type:"string"},color:{type:"string"},wordBreak:{type:"string",enum:["break-all","break-word","keep-all","normal","revert","unset","inherit","initial"]},wrap:{type:"boolean"}})},cy={type:"object",properties:Un(kt.properties,["fontSize"])},uy={type:"object",properties:{color:{type:"string"},hover:{type:"string"},textDecoration:{type:"string"},hoverTextDecoration:{type:"string"},visited:{type:"string"}}},ly={type:"object",properties:Object.assign(Object.assign({code:ay,fieldName:kt},_i(kt.properties,["fontSize","fontFamily"])),{fontWeightBold:{type:"string"},fontWeightLight:{type:"string"},fontWeightRegular:{type:"string"},heading1:Ci,heading2:Ci,heading3:Ci,headings:cy,lineHeight:{type:"string"},links:uy,optimizeSpeed:{type:"boolean"},rightPanelHeading:Ci,smoothing:{type:"string",enum:["auto","none","antialiased","subpixel-antialiased","grayscale"]}})},dy={type:"object",properties:Object.assign({color:{type:"string"}},Un(kt.properties,["fontWeight"]))},fy={type:"object",properties:{backgroundColor:{type:"string"},borderRadius:{type:"string"},tokens:dy}},py={type:"object",properties:{gutter:{type:"string"},maxHeight:{type:"string"},maxWidth:{type:"string"}}},gy={type:"object",properties:{backgroundColor:{type:"string"},color:{type:"string"}}},Xl={type:"object",properties:{custom:{type:"string"}}},my={type:"object",properties:{DownloadButton:Xl,NextSectionButton:Xl}},hy={type:"object",properties:{backgroundColor:{type:"string"},panelBackgroundColor:{type:"string"},panelControlsBackgroundColor:{type:"string"},showAtBreakpoint:{type:"string"},textColor:{type:"string"},width:{type:"string"}}},yy={type:"object",properties:{borderRadius:{type:"string"}}},by={type:"object",properties:{sectionHorizontal:{type:"number"},sectionVertical:{type:"number"},unit:{type:"number"}}},vy={type:"object",properties:{breakpoints:Pi,codeBlock:fy,colors:$h,components:Zh,layout:ny,logo:py,fab:gy,overrides:my,rightPanel:hy,schema:ry,shape:yy,sidebar:sy,spacing:by,typography:ly,links:{properties:{color:{type:"string"}}},codeSample:{properties:{backgroundColor:{type:"string"}}}}},Cy={type:"object",properties:{skipOptionalParameters:{type:"boolean"},languages:{type:"array",items:Lh}},required:["languages"]},ed={type:"object",properties:{theme:vy,ctrlFHijack:{type:"boolean"},defaultSampleLanguage:{type:"string"},disableDeepLinks:{type:"boolean"},disableSearch:{type:"boolean"},disableSidebar:{type:"boolean"},downloadDefinitionUrl:{type:"string"},expandDefaultServerVariables:{type:"boolean"},enumSkipQuotes:{type:"boolean"},expandDefaultRequest:{type:"boolean"},expandDefaultResponse:{type:"boolean"},expandResponses:{type:"string"},expandSingleSchemaField:{type:"boolean"},generateCodeSamples:Cy,generatedPayloadSamplesMaxDepth:{type:"number"},hideDownloadButton:{type:"boolean"},hideHostname:{type:"boolean"},hideInfoSection:{type:"boolean"},hideLogo:{type:"boolean"},hideRequestPayloadSample:{type:"boolean"},hideRightPanel:{type:"boolean"},hideSchemaPattern:{type:"boolean"},hideSingleRequestSampleTab:{type:"boolean"},hideSecuritySection:{type:"boolean"},hideTryItPanel:{type:"boolean"},hideFab:{type:"boolean"},hideOneOfDescription:{type:"boolean"},htmlTemplate:{type:"string"},jsonSampleExpandLevel:{oneOf:[{type:"number",minimum:1},{type:"string"}]},labels:Fh,menuToggle:{type:"boolean"},nativeScrollbars:{type:"boolean"},noAutoAuth:{type:"boolean"},onDeepLinkClick:{type:"object"},pagination:{enum:["none","section","item"]},pathInMiddlePanel:{type:"boolean"},payloadSampleIdx:{type:"number",minimum:0},requestInterceptor:{type:"object"},requiredPropsFirst:{type:"boolean"},routingStrategy:{type:"string"},samplesTabsMaxCount:{type:"number"},schemaExpansionLevel:{oneOf:[{type:"number",minimum:0},{type:"string"}]},minCharacterLengthToInitSearch:{type:"number",minimum:1},maxResponseHeadersToShowInTryIt:{type:"number",minimum:0},scrollYOffset:{oneOf:[{type:"number"},{type:"string"}]},searchAutoExpand:{type:"boolean"},searchFieldLevelBoost:{type:"number",minimum:0},searchMaxDepth:{type:"number",minimum:1},searchMode:{type:"string",enum:["default","path-only"]},searchOperationTitleBoost:{type:"number"},searchTagTitleBoost:{type:"number"},sendXUserAgentInTryIt:{type:"boolean"},showChangeLayoutButton:{type:"boolean"},showConsole:{type:"boolean"},showNextButton:{type:"boolean"},showRightPanelToggle:{type:"boolean"},showSecuritySchemeType:{type:"boolean"},showWebhookVerb:{type:"boolean"},showObjectSchemaExamples:{type:"boolean"},disableTryItRequestUrlEncoding:{type:"boolean"},sidebarLinks:Uh,sideNavStyle:{type:"string",enum:["summary-only","path-first","id-only","path-only"]},simpleOneOfTypeLabel:{type:"boolean"},sortEnumValuesAlphabetically:{type:"boolean"},sortOperationsAlphabetically:{type:"boolean"},sortPropsAlphabetically:{type:"boolean"},sortTagsAlphabetically:{type:"boolean"},suppressWarnings:{type:"boolean"},unstable_externalDescription:{type:"boolean"},unstable_ignoreMimeParameters:{type:"boolean"},untrustedDefinition:{type:"boolean"},showAccessMode:{type:"boolean"},preserveOriginalExtensionsName:{type:"boolean"},markdownHeadingsAnchorLevel:{type:"number"}},additionalProperties:!1};function _i(e,t){return Object.fromEntries(t.filter(n=>n in e).map(n=>[n,e[n]]))}function Un(e,t){return Object.fromEntries(Object.entries(e).filter(([n])=>!t.includes(n)))}var Ie={type:"object",properties:{hide:{type:"boolean"}},additionalProperties:!1},td={type:"object",properties:{src:{type:"string"},async:{type:"boolean"},crossorigin:{type:"string"},defer:{type:"boolean"},fetchpriority:{type:"string"},integrity:{type:"string"},module:{type:"boolean"},nomodule:{type:"boolean"},nonce:{type:"string"},referrerpolicy:{type:"string"},type:{type:"string"}},required:["src"],additionalProperties:!0},Ks={type:"object",properties:{page:{type:"string"},directory:{type:"string"},disconnect:{type:"boolean",default:!1},group:{type:"string"},label:{type:"string"},href:{type:"string"},external:{type:"boolean"},labelTranslationKey:{type:"string"},groupTranslationKey:{type:"string"},icon:{oneOf:[{type:"string"},{type:"object",properties:{srcSet:{type:"string"}},required:["srcSet"]}]},separator:{type:"string"},separatorLine:{type:"boolean"},linePosition:{type:"string",enum:["top","bottom"],default:"top"},version:{type:"string"},menuStyle:{type:"string",enum:["drilldown"]},expanded:{type:"string",const:"always"},selectFirstItemOnExpand:{type:"boolean"},flatten:{type:"boolean"},linkedSidebars:{type:"array",items:{type:"string"}},items:{type:"array",items:{type:"object",additionalProperties:!0}},rbac:{type:"object",additionalProperties:{type:"string"}}}},Gs={type:"array",items:Object.assign(Object.assign({},Ks),{properties:Object.assign(Object.assign({},Ks.properties),{items:{type:"array",items:Ks}})})},Py={type:"object",properties:{name:{type:"string"},icon:{type:"string"},folder:{type:"string"}},additionalProperties:!1,required:["name","folder"]},_y={type:"object",properties:{hide:{type:"boolean",default:!1},suggestions:{default:[],type:"array",items:{type:"string"}},prompt:{type:"string"}},additionalProperties:!1},Dy={type:"array",items:{type:"object",required:["name","field","type"],properties:{name:{type:"string"},field:{type:"string"},type:{type:"string",enum:["multi-select","select","tags"]}},additionalProperties:!1}},Ry={type:"object",properties:Object.assign({facets:Dy},Ie.properties),additionalProperties:!1},Sy={type:"object",properties:{page:{type:"string"},label:{type:"string"},labelTranslationKey:{type:"string"}},required:["page"]},Di={type:"object",properties:{image:{type:"string"},srcSet:{type:"string"},altText:{type:"string"},link:{type:"string"},favicon:{type:"string"}},additionalProperties:!1},Ri={type:"object",properties:Object.assign({items:Gs},Ie.properties),additionalProperties:!1},Si={type:"object",additionalProperties:Py},Ti={type:"object",properties:Object.assign({items:Gs,copyrightText:{type:"string"},logo:Ie},Ie.properties),additionalProperties:!1},xi={type:"object",properties:Object.assign({separatorLine:{type:"boolean"},linePosition:{type:"string",enum:["top","bottom"],default:"bottom"}},Ie.properties),additionalProperties:!1},wi={type:"object",properties:{head:{type:"array",items:td},body:{type:"array",items:td}},additionalProperties:!1},ki={type:"array",items:{type:"object",properties:{href:{type:"string"},as:{type:"string"},crossorigin:{type:"string"},fetchpriority:{type:"string"},hreflang:{type:"string"},imagesizes:{type:"string"},imagesrcset:{type:"string"},integrity:{type:"string"},media:{type:"string"},prefetch:{type:"string"},referrerpolicy:{type:"string"},rel:{type:"string"},sizes:{type:"string"},title:{type:"string"},type:{type:"string"}},required:["href"],additionalProperties:!0}},Ai={type:"object",properties:Object.assign({engine:{type:"string",enum:["flexsearch","typesense"],default:"flexsearch"},ai:_y,filters:Ry,placement:{type:"string",default:"navbar"},shortcuts:{type:"array",items:{type:"string"},default:["\u2318+K,ctrl+K"]},suggestedPages:{type:"array",items:Sy}},Ie.properties),additionalProperties:!1},qi={type:"object",properties:Object.assign({ignoreDetection:{type:"boolean"},modes:{type:"array",items:{type:"string"},default:["light","dark"]}},Ie.properties),additionalProperties:!1},Ni={type:"object",properties:{nextButton:{type:"object",properties:Object.assign({text:{type:"string",default:"Next page"}},Ie.properties),additionalProperties:!1,default:{}},previousButton:{type:"object",properties:Object.assign({text:{type:"string",default:"Previous page"}},Ie.properties),additionalProperties:!1,default:{}}},additionalProperties:!1},Oi={type:"object",properties:{elementFormat:{type:"string",default:"icon"},copy:{type:"object",properties:Object.assign({},Ie.properties),additionalProperties:!1,default:{hide:!1}},report:{type:"object",properties:Object.assign({tooltipText:{type:"string"},buttonText:{type:"string"},label:{type:"string"}},Ie.properties),additionalProperties:!1,default:{hide:!1}},expand:{type:"object",properties:Object.assign({},Ie.properties),additionalProperties:!1,default:{hide:!1}},collapse:{type:"object",properties:Object.assign({},Ie.properties),additionalProperties:!1,default:{hide:!1}}},additionalProperties:!1},Ei={type:"object",properties:{frontMatterKeysToResolve:{type:"array",items:{type:"string"},default:["image","links"]},partialsFolders:{type:"array",items:{type:"string"},default:["_partials"]},lastUpdatedBlock:{type:"object",properties:Object.assign({format:{type:"string",enum:["timeago","iso","long","short"],default:"timeago"},locale:{type:"string"}},Ie.properties),additionalProperties:!1,default:{}},toc:{type:"object",properties:Object.assign({header:{type:"string",default:"On this page"},depth:{type:"integer",default:3,minimum:1}},Ie.properties),additionalProperties:!1,default:{}},editPage:{type:"object",properties:Object.assign({baseUrl:{type:"string"}},Ie.properties),additionalProperties:!1,default:{}}},additionalProperties:!1,default:{}},Wn=Object.assign(Object.assign({},yi),{properties:Object.assign(Object.assign({},yi.properties),ed.properties)}),Ty={type:"object",properties:{includeInDevelopment:{type:"boolean"},scriptUrl:{type:"string"},pageViewEventName:{type:"string"}},additionalProperties:!1,required:["scriptUrl"]},xy={type:"object",properties:{includeInDevelopment:{type:"boolean"},apiKey:{type:"string"},head:{type:"boolean"},respectDNT:{type:"boolean"},exclude:{type:"array",items:{type:"string"}},outboundClickEventName:{type:"string"},pageViewEventName:{type:"string"},amplitudeConfig:{type:"object",additionalProperties:!0}},additionalProperties:!1,required:["apiKey"]},wy={type:"object",properties:{includeInDevelopment:{type:"boolean"},orgId:{type:"string"}},additionalProperties:!1,required:["orgId"]},ky={type:"object",properties:{includeInDevelopment:{type:"boolean"},appId:{type:"string"}},additionalProperties:!1,required:["appId"]},Ay={type:"object",properties:{includeInDevelopment:{type:"boolean"},writeKey:{type:"string",minLength:10},trackPage:{type:"boolean"},dataPlaneUrl:{type:"string"},controlPlaneUrl:{type:"string"},sdkUrl:{type:"string"},loadOptions:{type:"object",additionalProperties:!0}},additionalProperties:!1,required:["writeKey"]},qy={type:"object",properties:{includeInDevelopment:{type:"boolean"},writeKey:{type:"string",minLength:10},trackPage:{type:"boolean"},includeTitleInPageCall:{type:"boolean"},host:{type:"string"}},additionalProperties:!1,required:["writeKey"]},Ny={type:"object",properties:{includeInDevelopment:{type:"boolean"},trackingId:{type:"string"},gtmAuth:{type:"string"},gtmPreview:{type:"string"},defaultDataLayer:{},dataLayerName:{type:"string"},enableWebVitalsTracking:{type:"boolean"},selfHostedOrigin:{type:"string"},pageViewEventName:{type:"string"}},additionalProperties:!1,required:["trackingId"]},Qs={type:"object",properties:{includeInDevelopment:{type:"boolean"},trackingId:{type:"string"},conversionId:{type:"string"},floodlightId:{type:"string"},optimizeId:{type:"string"},exclude:{type:"array",items:{type:"string"}}},additionalProperties:!1,required:["trackingId"]},Oy={type:"object",properties:{includeInDevelopment:{type:"boolean"},trackingId:{type:"string"},conversionId:{type:"string"},floodlightId:{type:"string"},head:{type:"boolean"},respectDNT:{type:"boolean"},exclude:{type:"array",items:{type:"string"}},optimizeId:{type:"string"},anonymizeIp:{type:"boolean"},cookieExpires:{type:"number"},trackers:{type:"object",additionalProperties:Qs}},additionalProperties:!1,required:["trackingId"]},Mi={type:"object",properties:{adobe:Ty,amplitude:xy,fullstory:wy,heap:ky,rudderstack:Ay,segment:qy,gtm:Ny,ga:Oy}},ji={type:"object",properties:Object.assign({items:{type:"array",items:{type:"object",properties:{label:{type:"string"},external:{type:"boolean"},link:{type:"string"},separatorLine:{type:"boolean"}},additionalProperties:!0},default:[]},hideLoginButton:{type:"boolean"}},Ie.properties),additionalProperties:!1},Ii={type:"object",properties:{hide:{type:"boolean"},showForUnversioned:{type:"boolean"}}},Li={type:"object",properties:{hide:{type:"boolean"},prefixItems:{type:"array",items:{type:"object",properties:{label:{type:"string"},labelTranslationKey:{type:"string"},page:{type:"string"}},additionalProperties:!1,default:{}}}},additionalProperties:!1},Ey={type:"object",additionalProperties:!1,required:["title","property"],properties:{type:{type:"string",enum:["select","checkboxes","date-range"],default:"checkboxes"},title:{type:"string"},titleTranslationKey:{type:"string"},property:{type:"string"},parentFilter:{type:"string"},valuesMapping:{type:"object",additionalProperties:{type:"string"}},missingCategoryName:{type:"string"},missingCategoryNameTranslationKey:{type:"string"},options:{type:"array",items:{type:"string"}}}},My={type:"object",additionalProperties:!0,required:["slug","items"],properties:{slug:{type:"string"},filters:{type:"array",items:Ey},groupByFirstFilter:{type:"boolean"},filterValuesCasing:{type:"string",enum:["sentence","original","lowercase","uppercase"]},items:Gs,requiredPermission:{type:"string"},separateVersions:{type:"boolean"},title:{type:"string"},titleTranslationKey:{type:"string"},description:{type:"string"},descriptionTranslationKey:{type:"string"}}},Hn={type:"object",patternProperties:{".*":My}},Fi={type:"object",additionalProperties:!0,required:[],properties:{ignoreNonCompliant:{type:"boolean",default:!1},teamMetadataProperty:{type:"object",properties:{property:{type:"string"},label:{type:"string"},default:{type:"string"}}},levels:{type:"array",items:{type:"object",required:["name"],properties:{name:{type:"string"},color:{type:"string"},extends:{type:"array",items:{type:"string"}},rules:{type:"object",additionalProperties:{oneOf:[{type:"string"},{type:"object"}]}}},additionalProperties:!1}},targets:{type:"array",items:{type:"object",required:["where"],properties:{minimumLevel:{type:"string"},rules:{type:"object",additionalProperties:!0},where:{type:"object",required:["metadata"],properties:{metadata:{type:"object",additionalProperties:{type:"string"}}},additionalProperties:!1}},additionalProperties:!1}},ignore:{type:"array",items:{type:"string"}}}};var tt={type:"object",properties:{imports:{type:"array",items:{type:"string"}},logo:Di,navbar:Ri,products:Si,footer:Ti,sidebar:xi,scripts:wi,links:ki,feedback:Xt,search:Ai,colorMode:qi,navigation:Ni,codeSnippet:Oi,markdown:Ei,openapi:Wn,graphql:Fn,analytics:Mi,userMenu:ji,versionPicker:Ii,breadcrumbs:Li,catalog:Hn,catalogClassic:Hn,scorecard:Fi},additionalProperties:!0},YD=Object.assign(Object.assign({},tt),{additionalProperties:!1});var Xs="https://redocly.com/sso/teams",Bn;(function(e){e.OIDC="OIDC",e.SAML2="SAML2"})(Bn||(Bn={}));var zn;(function(e){e.SERVICE_ACCOUNT="SERVICE_ACCOUNT",e.OAUTH2="OAUTH2"})(zn||(zn={}));var Js;(function(e){e.STACKED="stacked",e.THREE_PANEL="three-panel"})(Js||(Js={}));function Ui(e,t){return Object.fromEntries(Object.entries(e).map(([n,r])=>{if(n!==t)return typeof r!="object"||!r?[n,r]:Array.isArray(r)?[n,r.map(i=>typeof i=="object"?Ui(i,t):i)]:[n,Ui(r,t)]}).filter(Boolean))}var jy={type:"object",additionalProperties:{type:"string"}},Iy={type:"object",additionalProperties:!1,patternProperties:{"^[a-zA-Z0-9_-]+$":{type:"string",pattern:"^https?://[^\\s/$.?#].[^\\s]*$"}}},Wi={type:"string",enum:["error","warn","off"]},Ly={type:"object",additionalProperties:!1,properties:{schemaCheck:Wi,statusCodeCheck:Wi,contentTypeCheck:Wi,successCriteriaCheck:Wi}},Fy={type:"object",properties:{event:{type:"string",enum:["schedule"]},interval:{type:"string",enum:["1m","2m","5m","10m","15m","30m","1h","3h","6h","12h","1d","7d"]}},required:["event"],additionalProperties:!1},Uy={type:"object",properties:{event:{type:"string",enum:["build"]}},required:["event"],additionalProperties:!1},nd={type:"object",properties:{ignoreLint:{oneOf:[{type:"boolean",default:!1},{type:"object",additionalProperties:{type:"boolean"}}]},ignoreLinkChecker:{type:"boolean"},ignoreMarkdocErrors:{type:"boolean"},jobs:{type:"array",items:{type:"object",properties:{path:{type:"string",pattern:"^(?!\\.\\./)(/[a-zA-Z0-9_\\-\\./]+|./[a-zA-Z0-9_\\-\\./]+|[a-zA-Z0-9_\\-\\./]+)$"},agent:{type:"string",enum:["respect"]},trigger:{oneOf:[Fy,Uy]},inputs:jy,servers:Iy,severity:Ly},required:["path","trigger","agent"],additionalProperties:!1}}},additionalProperties:!1};var Wy={type:"object",properties:{end_session_endpoint:{type:"string"},token_endpoint:{type:"string"},authorization_endpoint:{type:"string"},jwks_uri:{type:"string"}},required:["token_endpoint","authorization_endpoint"],additionalProperties:!0},Hy={type:"object",properties:{type:{type:"string",const:Bn.OIDC},title:{type:"string"},pkce:{type:"boolean",default:!1},configurationUrl:{type:"string",minLength:1},configuration:Wy,clientId:{type:"string",minLength:1},clientSecret:{type:"string",minLength:0},teamsClaimName:{type:"string"},teamsClaimMap:{type:"object",additionalProperties:{type:"string"}},defaultTeams:{type:"array",items:{type:"string"}},scopes:{type:"array",items:{type:"string"}},tokenExpirationTime:{type:"number"},authorizationRequestCustomParams:{type:"object",additionalProperties:{type:"string"}},tokenRequestCustomParams:{type:"object",additionalProperties:{type:"string"}},audience:{type:"array",items:{type:"string"}}},required:["type","clientId"],oneOf:[{required:["configurationUrl"]},{required:["configuration"]}],additionalProperties:!1},By={type:"object",properties:{type:{type:"string",const:Bn.SAML2},title:{type:"string"},issuerId:{type:"string"},entityId:{type:"string"},ssoUrl:{type:"string"},x509PublicCert:{type:"string"},teamsAttributeName:{type:"string",default:Xs},teamsAttributeMap:{type:"object",additionalProperties:{type:"string"}},defaultTeams:{type:"array",items:{type:"string"}}},additionalProperties:!1,required:["type","issuerId","ssoUrl","x509PublicCert"]},zy={oneOf:[Hy,By],discriminator:{propertyName:"type"}},Vy={type:"object",additionalProperties:zy},$y={oneOf:[{type:"array",items:{type:"string",enum:["REDOCLY","CORPORATE","GUEST"]},uniqueItems:!0},{type:"string",enum:["REDOCLY","CORPORATE","GUEST"]}]},Yy={type:"object",properties:{to:{type:"string"},type:{type:"number",default:301}},additionalProperties:!1},Ky={type:"object",additionalProperties:Yy,default:{}},sd={type:"object",additionalProperties:{oneOf:[{type:"string"},{type:"object"}]}},ta={type:"object",properties:{root:{type:"string"},output:{type:"string",pattern:"(.ya?ml|.json)$"},rbac:{type:"object",additionalProperties:!0},openapi:Wn,graphql:Fn,theme:{type:"object",properties:{openapi:Wn,graphql:Fn},additionalProperties:!1},title:{type:"string"},metadata:{type:"object",additionalProperties:!0},rules:sd,decorators:{type:"object",additionalProperties:!0},preprocessors:{type:"object",additionalProperties:!0},extends:{type:"array",items:{type:"string"}}},required:["root"]},Gy={type:"object",additionalProperties:!0},Qy={type:"object",additionalProperties:{type:"object",additionalProperties:!0}},rd={type:"object",properties:{hide:{type:"boolean",default:!1},title:{type:"string"},description:{type:"string"},details:{type:"object",properties:{path:{type:"string"},content:{type:"string"}},additionalProperties:!1},excludeFiles:{type:"array",items:{type:"string"},default:[]},sections:{type:"array",items:{type:"object",properties:{title:{type:"string"},description:{type:"string"},includeFiles:{type:"array",items:{type:"string"},default:[]},excludeFiles:{type:"array",items:{type:"string"},default:[]}},required:["title"],additionalProperties:!1}}},default:{hide:!1,title:void 0,description:void 0,details:void 0,sections:[{title:"Table of contents",includeFiles:["**/*"],excludeFiles:[]}]},additionalProperties:!1},id={type:"object",properties:{title:{type:"string"},description:{type:"string"},siteUrl:{type:"string"},image:{type:"string"},keywords:{oneOf:[{type:"array",items:{type:"string"}},{type:"string"}]},lang:{type:"string"},jsonLd:{type:"object"},meta:{type:"array",items:{type:"object",properties:{name:{type:"string"},content:{type:"string"}},required:["name","content"],additionalProperties:!1}},llmstxt:rd},default:{llmstxt:rd.default},additionalProperties:!1},Jy={type:"object",properties:{folders:{type:"array",items:{type:"string"}}},additionalProperties:!1},bn={type:"object",additionalProperties:{type:"string"}},ad={type:"object",properties:{teamNamePatterns:{type:"array",items:{type:"string"}},teamFolders:{type:"array",items:{type:"string"}},teamFoldersBaseRoles:bn,cms:bn,reunite:bn,features:{type:"object",properties:{aiSearch:bn},additionalProperties:!1},content:{type:"object",properties:{"**":bn},additionalProperties:bn}},additionalProperties:bn},Xy={type:"object",properties:{static:{type:"string"}},additionalProperties:!1,required:["static"]},Zy={type:"object",properties:{idp:{type:"string"}},additionalProperties:!1,required:["idp"]},eb={type:"object",properties:{type:{type:"string",const:"GRAVITEE"},apiBaseUrl:{type:"string"},env:{type:"string"},allowApiProductsOutsideCatalog:{type:"boolean",default:!1},stage:{type:"string",default:"non-production"},auth:{oneOf:[Xy,Zy]}},additionalProperties:!1,required:["type","apiBaseUrl"]},tb={type:"object",properties:{type:{type:"string",const:zn.OAUTH2},tokenEndpoint:{type:"string"},clientId:{type:"string"},clientSecret:{type:"string"}},additionalProperties:!1,required:["type","tokenEndpoint","clientId","clientSecret"]},nb={type:"object",properties:{type:{type:"string",const:zn.SERVICE_ACCOUNT},serviceAccountEmail:{type:"string"},serviceAccountPrivateKey:{type:"string"}},additionalProperties:!1,required:["type","serviceAccountEmail","serviceAccountPrivateKey"]},Zs={type:"object",properties:{type:{type:"string",const:"APIGEE_X"},apiUrl:{type:"string"},stage:{type:"string",default:"non-production"},organizationName:{type:"string"},ignoreApiProducts:{type:"array",items:{type:"string"}},allowApiProductsOutsideCatalog:{type:"boolean",default:!1},auth:{type:"object",oneOf:[tb,nb],discriminator:{propertyName:"type"}}},additionalProperties:!1,required:["type","organizationName","auth"]},rb=Object.assign(Object.assign({},Zs),{properties:Object.assign(Object.assign({},Zs.properties),{type:{type:"string",const:"APIGEE_EDGE"}})}),ib={type:"object",oneOf:[Zs,rb,eb],discriminator:{propertyName:"type"}},ob={type:"object",required:["adapters"],additionalProperties:!1,properties:{adapters:{type:"array",items:ib}}},od={type:"object",properties:{defaultLocale:{type:"string"},locales:{type:"array",items:{type:"object",properties:{code:{type:"string"},name:{type:"string"}},required:["code"]}}},additionalProperties:!1,required:["defaultLocale"]},sb={type:"object",properties:{name:{type:"string"},value:{type:"string"}},additionalProperties:!1,required:["name","value"]},ea={type:"object",properties:{imports:{type:"array",items:{type:"string"}},licenseKey:{type:"string"},redirects:Ky,seo:id,rbac:ad,apiFunctions:Jy,requiresLogin:{type:"boolean"},responseHeaders:{type:"object",additionalProperties:{type:"array",items:sb}},mockServer:{type:"object",properties:{off:{type:"boolean",default:!1},position:{type:"string",enum:["first","last","replace","off"],default:"first"},strictExamples:{type:"boolean",default:!1},errorIfForcedExampleNotFound:{type:"boolean",default:!1},description:{type:"string"}}},apis:{type:"object",additionalProperties:ta},extends:{type:"array",items:{type:"string"}},rules:sd,decorators:{type:"object",additionalProperties:!0},preprocessors:{type:"object",additionalProperties:!0},ssoDirect:Vy,sso:$y,residency:{type:"string"},developerOnboarding:ob,removeAttribution:{type:"boolean"},i18n:od,l10n:od,metadata:Gy,metadataGlobs:Qy,ignore:{type:"array",items:{type:"string"}},theme:tt,reunite:nd,logo:Di,navbar:Ri,products:Si,footer:Ti,sidebar:xi,scripts:wi,links:ki,feedback:Xt,search:Ai,colorMode:qi,navigation:Ni,codeSnippet:Oi,markdown:Ei,openapi:Wn,graphql:Fn,analytics:Mi,userMenu:ji,versionPicker:Ii,breadcrumbs:Li,catalog:Hn,catalogClassic:Hn,scorecard:Fi},default:{redirects:{},seo:id.default},additionalProperties:!0},ab=Object.assign(Object.assign({},Ui(ea,"default")),{additionalProperties:!1}),na=Object.assign(Object.assign({$id:"root-redocly-config"},ea),{properties:Object.assign(Object.assign({plugins:{type:"array",items:{type:"string"}}},ea.properties),{env:{type:"object",additionalProperties:ab}}),default:{},additionalProperties:!1});var ra={type:"object",properties:{logo:tt.properties.logo,navbar:tt.properties.navbar,footer:tt.properties.footer,sidebar:tt.properties.sidebar,search:tt.properties.search,codeSnippet:tt.properties.codeSnippet,breadcrumbs:tt.properties.breadcrumbs,openapi:tt.properties.openapi,feedback:tt.properties.feedback,analytics:{type:"object",properties:{ga:Qs}}},additionalProperties:!0,default:{}},cb={$id:"product-config-override",type:"object",properties:Object.assign(Object.assign({},ra.properties),{apis:{type:"object",additionalProperties:ta},theme:ra}),additionalProperties:!1};var Ke=Ge(an(),1);import{getLineColLocation as S_,lintDocument as T_,makeDocumentFromString as Kc,lintConfig as x_,detectSpec as w_,getMergedConfig as k_,createConfigTypes as A_}from"@redocly/openapi-core";import{bundleDocument as v_,makeDocumentFromString as C_}from"@redocly/openapi-core";var fp=new Map,jo=new Map;function P_(e){return e?Array.from(e).map(([t,n])=>[t,Is(n)]):[]}async function $c(e,t){let{config:n}=await In(),r=new Ut(n.resolve),i=C_(e.getText(),e.uri),{bundle:o,problems:s,fileDependencies:u,rootType:c,refTypes:p}=await v_({document:i,config:n.styleguide,externalRefResolver:r}),g=P_(p);p&&(jo=new Map([...jo,...p])),fp.set(e.uri,{uri:e.uri,name:qn(e.uri),definition:o.parsed,rootType:c,refTypes:g,errors:t})}function __(){return Array.from(fp).map(([e,{definition:t,rootType:n,refTypes:r,errors:i}])=>({name:qn(e),uri:e,definition:t,rootType:n,refTypes:r,errors:i}))}function Yc(e){return jo.has(e)?jo.get(e):null}import{createConfig as D_,lintDocument as R_}from"@redocly/openapi-core";async function pp(e,t,n,r){let i=[];for(let o of n?.levels||[]){let s=await D_(o,{configPath:r}),u=await R_({document:e,externalRefResolver:t,config:s.styleguide});i.push(...u.filter(({ignored:c})=>!c).map(c=>({...c,scorecardLevel:o.name})))}return i}var q_=800,N_=5,Qc=El(M_,q_);async function O_(e){let t=e.map(({documentPath:i})=>Ne(i).toString()),{config:n}=await In(),r=await qe.getRootWorkspaceFolderURI();for(let{root:i}of Object.values(n.apis)){let o=await Ls(i,r);if(t.includes(o))return o}return t[0]}var Gc;function E_(e){try{return w_(e),!0}catch{return!1}}async function M_(e){let t=e.uri,{config:n,rootConfigDocument:r,configPath:i}=await In();if(vr(An(t))){let o=Ys(t)?Kc(e.getText(),t):Kc(r?.source.body||"",r?.source.absoluteRef||""),s=new Ut,u=await x_({document:o,externalRefResolver:s,config:n,externalConfigTypes:A_(na,n)}),c=[{uri:e.uri,diagnostics:[]}];return gp(u,c),c}else{let o=Bl(t),s=await O_(o||[]);s&&(e=await st(s),t=s);let u;try{u=Kc(e.getText(),t)}catch{return[{uri:e.uri,diagnostics:[]}]}if(!E_(u.parsed))return[{uri:e.uri,diagnostics:[]}];let c=[];try{let p=new Ut(n.resolve);Gc=e.uri;let g=await qe.getRootWorkspaceFolderURI(),b=await jl(n.apis,Gc,g),D=Date.now(),R=(await T_({document:u,config:k_(n,b).styleguide,externalRefResolver:p})).filter(({ignored:N})=>!N),T=r?.parsed?.scorecard,q=T&&qe.scorecardEnabled?await pp(u,p,T,i):[],B=[...R,...q];Gc="";let I=F_(R);$c(e,I);let _=Date.now()-D;c=[...new Set([e.uri,...[...p.getFiles()].map(N=>Ne(N).toString())])].map(N=>({uri:N,diagnostics:[]})),Hl(t,{dependencyPaths:p.getFiles(),durationMS:_}),gp(B,c)}catch(p){j_(e.uri,p,c)}return c}}function Io(){return qe.documents.all().map(Qc)}function j_(e,t,n){let r=n||[{uri:e,diagnostics:[]}];if(t.line&&t.col&&t.message){let i=t.source?.absoluteRef?Ne(t.source.absoluteRef).toString():e,o=t.line-1,s=t.col-1,u=Ke.Position.create(o,s),c=Ke.Diagnostic.create(Ke.Range.create(u,u),t.message,Ke.DiagnosticSeverity.Error);mp(i,c,r)}else t.message.includes("This doesn\u2019t look like an OpenAPI document")||console.error(t);return r}function mp(e,t,n){let r=n.find(i=>i.uri===e);return r||(r={uri:e,diagnostics:[]},n.push(r)),r.diagnostics.push(t),n}function I_(e){return e.suggest.length===0?"":e.suggest.length===1?`
72
72
  Did you mean: ${e.suggest[0]} ?`:`
73
73
  Did you mean:
74
74
  - ${e.suggest.slice(0,N_).join(`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redocly/openapi-language-server",
3
- "version": "0.3.4",
3
+ "version": "0.3.5",
4
4
  "description": "Redocly OpenAPI language server",
5
5
  "main": "lib/index.js",
6
6
  "type": "module",
@@ -24,7 +24,7 @@
24
24
  "vscode-languageserver": "^8.0.2",
25
25
  "vscode-languageserver-textdocument": "^1.0.5",
26
26
  "vscode-uri": "^3.0.2",
27
- "@redocly/config": "0.26.0"
27
+ "@redocly/config": "0.26.1"
28
28
  },
29
29
  "overrides": {
30
30
  "@redocly/config": "workspace:*"
package/lib/index.d.ts DELETED
@@ -1,627 +0,0 @@
1
- declare module '@redocly/openapi-language-server/config' {
2
- import { TextDocuments } from 'vscode-languageserver/browser';
3
- import { TextDocument } from 'vscode-languageserver-textdocument';
4
- import { URI } from 'vscode-uri';
5
- export interface SupportedLanguage {
6
- languageId: string;
7
- filePattern: RegExp;
8
- }
9
- export const yamlLanguage: SupportedLanguage;
10
- export const jsonLanguage: SupportedLanguage;
11
- export interface FileSystemProvider {
12
- readFile(uri: URI, encoding?: string): Promise<string>;
13
- readDir(uri: URI): Promise<any>;
14
- stat(uri: URI): Promise<{
15
- isFile(): boolean;
16
- isDirectory(): boolean;
17
- }>;
18
- exists(uri: URI): Promise<boolean>;
19
- }
20
- type ConfigFinder = (uri: string) => Promise<string | undefined>;
21
- export class Configuration {
22
- private _fs;
23
- private _documentManager;
24
- private _findConfig;
25
- private _getRootWorkspaceFolderURI;
26
- private _scorecardEnabled;
27
- constructor();
28
- supportedLanguages: SupportedLanguage[];
29
- registerFileSystemProvider(fsProvider: FileSystemProvider): void;
30
- registerDocumentsProvider(documentProvider: TextDocuments<TextDocument>): void;
31
- registerConfigFinder(configFinder: ConfigFinder): void;
32
- registerRootWorkspaceFolderURIGetter(rootWorkspaceFolderURIGetter: () => Promise<string>): void;
33
- get fs(): FileSystemProvider;
34
- get documents(): TextDocuments<TextDocument>;
35
- get findConfig(): ConfigFinder;
36
- get getRootWorkspaceFolderURI(): () => Promise<string>;
37
- enableScorecard(enable: boolean): void;
38
- get scorecardEnabled(): boolean;
39
- }
40
- export const languageServerConfig: Configuration;
41
- export {};
42
-
43
- }
44
- declare module '@redocly/openapi-language-server/esbuild' {
45
- export {};
46
-
47
- }
48
- declare module '@redocly/openapi-language-server/index' {
49
- import { CompletionItem, type CompletionParams, type DefinitionParams, type DidChangeWatchedFilesParams, LocationLink } from 'vscode-languageserver/browser';
50
- import { TextDocument } from 'vscode-languageserver-textdocument';
51
- import { updateOpenAPIConfigByURI, isConfigFile, getConfigData } from '@redocly/openapi-language-server/server/openapi-config';
52
- import { revalidateAllDocuments } from '@redocly/openapi-language-server/server/validation/index';
53
- export { revalidateAllDocuments, updateOpenAPIConfigByURI, isConfigFile, getConfigData };
54
- export { languageServerConfig } from '@redocly/openapi-language-server/config';
55
- export { getDocumentByURI, isYamlFile } from '@redocly/openapi-language-server/server/documents';
56
- export { getContextData } from '@redocly/openapi-language-server/server/context-core';
57
- export { parseUri, uriToAbsFSPath, isHttpPath } from '@redocly/openapi-language-server/server/path';
58
- export { removeCirculars } from '@redocly/openapi-language-server/server/utils';
59
- export * from '@redocly/openapi-language-server/server/types/context-core';
60
- export { type DefinitionData, type BundleData, bundleOpenAPI, getBundles } from '@redocly/openapi-language-server/server/bundle';
61
- export class OpenapiLanguageServer {
62
- onCompletion(params: CompletionParams): Promise<CompletionItem[]>;
63
- onCompletionResolve(item: CompletionItem): Promise<CompletionItem>;
64
- validateOpenAPI(textDocument: TextDocument): Promise<import("vscode-languageserver/browser").PublishDiagnosticsParams[]>;
65
- onDidChangeWatchedFiles(params: DidChangeWatchedFilesParams): Promise<(Promise<import("vscode-languageserver/browser").PublishDiagnosticsParams[]> | Promise<Promise<import("vscode-languageserver/browser").PublishDiagnosticsParams[]>>)[] | undefined>;
66
- onDidConfigChange(uri: string): Promise<(Promise<import("vscode-languageserver/browser").PublishDiagnosticsParams[]> | Promise<Promise<import("vscode-languageserver/browser").PublishDiagnosticsParams[]>>)[]>;
67
- onDidChangeConfiguration(): Promise<(Promise<import("vscode-languageserver/browser").PublishDiagnosticsParams[]> | Promise<Promise<import("vscode-languageserver/browser").PublishDiagnosticsParams[]>>)[]>;
68
- onDefinition(params: DefinitionParams): Promise<LocationLink[]>;
69
- }
70
-
71
- }
72
- declare module '@redocly/openapi-language-server/server/__tests__/documents.test' {
73
- export {};
74
-
75
- }
76
- declare module '@redocly/openapi-language-server/server/__tests__/external-resolver.test' {
77
- export {};
78
-
79
- }
80
- declare module '@redocly/openapi-language-server/server/__tests__/openapi-config.test' {
81
- export {};
82
-
83
- }
84
- declare module '@redocly/openapi-language-server/server/__tests__/path-completion.test' {
85
- export {};
86
-
87
- }
88
- declare module '@redocly/openapi-language-server/server/__tests__/path-resolver-context.test' {
89
- export {};
90
-
91
- }
92
- declare module '@redocly/openapi-language-server/server/__tests__/path.test' {
93
- export {};
94
-
95
- }
96
- declare module '@redocly/openapi-language-server/server/__tests__/utils.test' {
97
- export {};
98
-
99
- }
100
- declare module '@redocly/openapi-language-server/server/bundle' {
101
- import { type NormalizedProblem, type NormalizedNodeType } from '@redocly/openapi-core';
102
- import { TextDocument } from 'vscode-languageserver-textdocument';
103
- export type DefinitionData = {
104
- name: string;
105
- uri: string;
106
- };
107
- export type BundleData = DefinitionData & {
108
- definition: Record<string, any>;
109
- rootType: NormalizedNodeType;
110
- refTypes: [string, NormalizedNodeType][];
111
- htmlTempalteStyles?: string | null;
112
- errors?: NormalizedProblem[];
113
- };
114
- export function bundleOpenAPI(textDocument: TextDocument, errors: NormalizedProblem[]): Promise<void>;
115
- export function getBundles(): BundleData[];
116
- export function getRefTypes(path: string): NormalizedNodeType | undefined | null;
117
-
118
- }
119
- declare module '@redocly/openapi-language-server/server/completion/yaml/KeyCompletion' {
120
- import { CompletionItem, CompletionItemKind, InsertTextFormat, Command } from 'vscode-languageserver/browser';
121
- import type { CompletionItemOptions } from '@redocly/openapi-language-server/server/types/completion';
122
- export interface KeyCompletionOptions extends CompletionItemOptions {
123
- insertTextFormat?: InsertTextFormat;
124
- data?: any;
125
- }
126
- export class KeyCompletion implements CompletionItem {
127
- kind: CompletionItemKind;
128
- label: string;
129
- insertText: string;
130
- filterText: string;
131
- sortText?: string;
132
- command?: Command;
133
- insertTextFormat: InsertTextFormat;
134
- data?: any;
135
- constructor({ kind, label, insertText, insertTextFormat, filterText, sortText, data, }: KeyCompletionOptions);
136
- }
137
-
138
- }
139
- declare module '@redocly/openapi-language-server/server/completion/yaml/LocalFileCompletion' {
140
- import { ValueCompletion, ValueCompletionOptions } from '@redocly/openapi-language-server/server/completion/yaml/ValueCompletion';
141
- export class LocalFileCompletion extends ValueCompletion {
142
- constructor(completionOptions: ValueCompletionOptions);
143
- }
144
-
145
- }
146
- declare module '@redocly/openapi-language-server/server/completion/yaml/LocalFolderCompletion' {
147
- import { Command } from 'vscode-languageserver/browser';
148
- import { ValueCompletion, ValueCompletionOptions } from '@redocly/openapi-language-server/server/completion/yaml/ValueCompletion';
149
- export class LocalFolderCompletion extends ValueCompletion {
150
- command: Command;
151
- constructor(completionOptions: ValueCompletionOptions);
152
- }
153
-
154
- }
155
- declare module '@redocly/openapi-language-server/server/completion/yaml/ValueCompletion' {
156
- import { YAMLScalar } from '@redocly/yaml-language-server-parser';
157
- import { CompletionItem, CompletionItemKind, TextEdit, InsertReplaceEdit, Position, Command } from 'vscode-languageserver/browser';
158
- import type { CompletionItemOptions } from '@redocly/openapi-language-server/server/types/completion';
159
- export interface ValueCompletionDataOptions {
160
- position?: Position;
161
- node?: YAMLScalar;
162
- lineOffset?: number;
163
- }
164
- export interface ValueCompletionOptions extends CompletionItemOptions {
165
- value?: string;
166
- data: ValueCompletionDataOptions;
167
- }
168
- export class ValueCompletion implements CompletionItem {
169
- kind: CompletionItemKind;
170
- label: string;
171
- insertText: string;
172
- filterText: string;
173
- sortText?: string;
174
- command?: Command;
175
- textEdit?: TextEdit | InsertReplaceEdit;
176
- constructor({ kind, label, value, textEdit, filterText, sortText, data, }: ValueCompletionOptions);
177
- getTextEdit(node: YAMLScalar, position: Position, lineOffset: number): TextEdit | InsertReplaceEdit;
178
- }
179
-
180
- }
181
- declare module '@redocly/openapi-language-server/server/completion/yaml/__tests__/KeyCompletion.test' {
182
- export {};
183
-
184
- }
185
- declare module '@redocly/openapi-language-server/server/completion/yaml/__tests__/insert-snippet-utils.test' {
186
- export {};
187
-
188
- }
189
- declare module '@redocly/openapi-language-server/server/completion/yaml/common' {
190
- export const fieldNames: {
191
- example: string;
192
- default: string;
193
- enum: string;
194
- ref: string;
195
- };
196
- export const userEnumCompletionKeys: string[];
197
-
198
- }
199
- declare module '@redocly/openapi-language-server/server/completion/yaml/completion' {
200
- import { CompletionItem, Position } from 'vscode-languageserver/browser';
201
- import { type DocumentUri } from 'vscode-languageserver-textdocument';
202
- import type * as yamlAst from '@redocly/yaml-language-server-parser';
203
- import { ValueCompletion } from '@redocly/openapi-language-server/server/completion/yaml/ValueCompletion';
204
- import { YamlCompletionContext } from '@redocly/openapi-language-server/server/completion/yaml/context';
205
- export function getCompletionKeys(completionContext: YamlCompletionContext): CompletionItem[];
206
- export function getCompletionValues(uri: DocumentUri, completionContext: YamlCompletionContext<yamlAst.YAMLScalar>): Promise<ValueCompletion[]>;
207
- export function getCompletion(uri: DocumentUri, position: Position): Promise<CompletionItem[]>;
208
- export function resolveCompletion(item: CompletionItem): CompletionItem;
209
-
210
- }
211
- declare module '@redocly/openapi-language-server/server/completion/yaml/context' {
212
- import { type DocumentUri, type Position } from 'vscode-languageserver-textdocument';
213
- import { YAMLNode } from '@redocly/yaml-language-server-parser';
214
- import { URI } from 'vscode-uri';
215
- import { type NodePath } from '@redocly/openapi-language-server/server/types/context-core';
216
- import { type ExtendedNormalizedNodeType } from '@redocly/openapi-language-server/server/types/completion';
217
- export interface YamlCompletionContext<NodeType = YAMLNode> {
218
- currentAst: YAMLNode;
219
- node: NodeType;
220
- nodePath: NodePath;
221
- position: Position;
222
- lineText: string;
223
- lineOffset: number;
224
- openApiType: ExtendedNormalizedNodeType | null;
225
- }
226
- export interface RefPathResolverContext {
227
- docAbsolutePath: URI;
228
- docAbsoluteDirPath: URI;
229
- refPath: string;
230
- refDirPath: URI;
231
- refDirAbsolutePath: URI;
232
- isAbsolutePath: boolean;
233
- root: string;
234
- }
235
- export function createCompletionContext<NodeType = YAMLNode>(uri: DocumentUri, position: Position): Promise<YamlCompletionContext<NodeType>>;
236
- export function createRefPathResolverContext(uri: DocumentUri, refPath: string): Promise<RefPathResolverContext>;
237
-
238
- }
239
- declare module '@redocly/openapi-language-server/server/completion/yaml/insert-snippet-utils' {
240
- import { type NormalizedNodeType } from '@redocly/openapi-core';
241
- export type PartialNodeType = {
242
- items?: NormalizedNodeType['items'];
243
- required?: NormalizedNodeType['required'];
244
- };
245
- function getKeyValue(key: string, type?: PartialNodeType): string;
246
- function getBeforeKeyValue(key: string, value: string, beforeKey: string, type?: PartialNodeType): string;
247
- function getAfterKeyValue(key: string): "" | ": ";
248
- function getBeforeKey(lineText?: string): "" | " " | "\n ";
249
- function getAfterValue(beforeKey: string, properties?: NormalizedNodeType['properties']): "" | "\n " | "\n ";
250
- function getInsertSnippet(key: string, data?: {
251
- properties?: NormalizedNodeType['properties'];
252
- lineText: string;
253
- } & PartialNodeType, addNewLine?: boolean): string;
254
- export { getInsertSnippet, getAfterKeyValue, getAfterValue, getKeyValue, getBeforeKey, getBeforeKeyValue, };
255
-
256
- }
257
- declare module '@redocly/openapi-language-server/server/completion/yaml/paths' {
258
- import { DocumentUri } from 'vscode-languageserver-textdocument';
259
- import { YAMLScalar } from '@redocly/yaml-language-server-parser';
260
- import { SupportedLanguage } from '@redocly/openapi-language-server/config';
261
- import { LocalFolderCompletion } from '@redocly/openapi-language-server/server/completion/yaml/LocalFolderCompletion';
262
- import { LocalFileCompletion } from '@redocly/openapi-language-server/server/completion/yaml/LocalFileCompletion';
263
- import { YamlCompletionContext, RefPathResolverContext } from '@redocly/openapi-language-server/server/completion/yaml/context';
264
- export const LOCAL_FILES_SUPPORTED_SUGGESTIONS: SupportedLanguage[];
265
- export enum FsNodeType {
266
- File = 0,
267
- Folder = 1
268
- }
269
- export interface RefFileStat {
270
- type: FsNodeType;
271
- name: string;
272
- }
273
- export interface RefPathOption extends RefFileStat {
274
- value: string;
275
- matchBy: string;
276
- sortBy: string;
277
- }
278
- export function getToTopOption(pathResolverContext: RefPathResolverContext): RefPathOption;
279
- export function getChildrenOfPath(files: string[], config: {
280
- supportedFiles: SupportedLanguage[];
281
- }, pathResolverContext: RefPathResolverContext): Promise<RefFileStat[]>;
282
- export function getRefPathOptions(fileStats: RefFileStat[], pathResolverContext: RefPathResolverContext): RefPathOption[];
283
- export function getLocalFsRefs(uri: DocumentUri, completionContext: YamlCompletionContext<YAMLScalar>): Promise<(LocalFolderCompletion | LocalFileCompletion)[]>;
284
-
285
- }
286
- declare module '@redocly/openapi-language-server/server/context-core' {
287
- import { SpecVersion, SpecMajorVersion, type NormalizedNodeType } from '@redocly/openapi-core';
288
- import * as yamlAst from '@redocly/yaml-language-server-parser';
289
- import { type Position } from 'vscode-languageserver/browser';
290
- import { type ContextData, type ExistingValues, type OpenApiVersion, type TextDocumentWithLineOffset, type NodeWithPath, type NodePath } from '@redocly/openapi-language-server/server/types/context-core';
291
- export function getContextData(uri: string, position: Position): Promise<ContextData>;
292
- export function getAstNodeByPath(currentAst: yamlAst.YAMLNode | null, path: (number | string)[]): yamlAst.YAMLNode | null;
293
- export function getAstNodeByPosition(start: NodeWithPath, position: Position, document: TextDocumentWithLineOffset, isContextData?: boolean): NodeWithPath;
294
- export function getNodeLineIndent(node: yamlAst.YAMLNode | null | undefined, document: TextDocumentWithLineOffset): number;
295
- export function getTypesByNodePath(types: any, nodePath: NodePath): {
296
- currentType: NormalizedNodeType | null;
297
- parentType: NormalizedNodeType | null;
298
- endPath?: string | number;
299
- };
300
- export function getRootTypes(ast: yamlAst.YAMLNode, uri: string): NormalizedNodeType | null;
301
- export function getDescriptionVersion(ast: yamlAst.YAMLNode): OpenApiVersion<SpecVersion>;
302
- export function getDescriptionMajorVersion(ast: yamlAst.YAMLNode): OpenApiVersion<SpecMajorVersion>;
303
- export function getChildNodes(node?: yamlAst.YAMLNode | null): yamlAst.YAMLNode[];
304
- export function getExistingValues(node: yamlAst.YAMLSequence, values?: ExistingValues, indent?: number): ExistingValues;
305
-
306
- }
307
- declare module '@redocly/openapi-language-server/server/documents' {
308
- import { DocumentUri } from 'vscode-languageserver/browser';
309
- import { TextDocument } from 'vscode-languageserver-textdocument';
310
- export type DocumentStats = {
311
- dependencyPaths: Set<string>;
312
- durationMS: number;
313
- };
314
- export type DependencyStats = {
315
- documentPath: string;
316
- durationMS: number;
317
- };
318
- export function updateDependencyMap(path: string, stats: DocumentStats): Map<string, DocumentStats>;
319
- export function getPathsByDependency(depPath: string): DependencyStats[];
320
- export function getDocumentLanguageId(uri: DocumentUri): string;
321
- export function getDocumentByURI(uri: DocumentUri): Promise<TextDocument>;
322
- export function isJsonFile(uri: DocumentUri): boolean;
323
- export function isYamlFile(uri: DocumentUri): boolean;
324
-
325
- }
326
- declare module '@redocly/openapi-language-server/server/external-resolver' {
327
- import { BaseResolver, Source } from '@redocly/openapi-core';
328
- export class ExternalResolver extends BaseResolver {
329
- resolveExternalRef(base: string | null, ref: string): string;
330
- loadExternalRef(absoluteRef: string): Promise<Source>;
331
- }
332
-
333
- }
334
- declare module '@redocly/openapi-language-server/server/fixtures/dir1/file1' {
335
-
336
- }
337
- declare module '@redocly/openapi-language-server/server/handlers/yaml-definition-handler' {
338
- import { LocationLink } from 'vscode-languageserver';
339
- import type { DefinitionParams } from 'vscode-languageserver';
340
- export function handleDefinition({ position, textDocument, }: DefinitionParams): Promise<LocationLink[] | void>;
341
-
342
- }
343
- declare module '@redocly/openapi-language-server/server/hints' {
344
- import { CompletionItem } from 'vscode-languageserver/browser';
345
- import { ExtendedNormalizedNodeType } from '@redocly/openapi-language-server/server/types/completion';
346
- export const START_SEQ_LABEL = "newItem";
347
- export const START_MAP_LABEL = "propertyName";
348
- export const ADD_NEW_LINE = "newLine";
349
- export function hasHints(type: ExtendedNormalizedNodeType): boolean;
350
- export function getAdditionalCompletionItem(name: string): CompletionItem[];
351
-
352
- }
353
- declare module '@redocly/openapi-language-server/server/openapi-config' {
354
- import { Config as RedoclyConfig, CONFIG_FILE_NAMES } from '@redocly/openapi-core';
355
- import type { Document } from '@redocly/openapi-core';
356
- import type { DocumentUri } from 'vscode-languageserver/node';
357
- export { CONFIG_FILE_NAMES };
358
- export type ConfigData = {
359
- config: RedoclyConfig;
360
- configPath?: string;
361
- rootConfigDocument?: Document;
362
- };
363
- export function loadOpenAPIConfig(uri?: string): Promise<RedoclyConfig>;
364
- export function getConfigData(): Promise<ConfigData>;
365
- export function updateOpenAPIConfigByURI(uri: DocumentUri | null, opts?: {
366
- createEventHandleLoadConfigError?: (message: string) => void;
367
- }): Promise<RedoclyConfig>;
368
- export function isConfigFile(uri: string): boolean;
369
- export function isRootConfigFile(uri: string): boolean;
370
-
371
- }
372
- declare module '@redocly/openapi-language-server/server/openapi-extensions' {
373
- import { mapTypeToComponent } from '@redocly/openapi-core';
374
- import { ExtendedNormalizedNodeType } from '@redocly/openapi-language-server/server/types/completion';
375
- const typeExtensions: {
376
- Schema: {
377
- name: string;
378
- value: {
379
- type: string;
380
- name: string;
381
- };
382
- }[];
383
- PathItem: {
384
- name: string;
385
- value: {
386
- type: string;
387
- name: string;
388
- };
389
- }[];
390
- Parameter: {
391
- name: string;
392
- value: {
393
- type: string;
394
- name: string;
395
- };
396
- }[];
397
- Response: {
398
- name: string;
399
- value: {
400
- type: string;
401
- name: string;
402
- };
403
- }[];
404
- Example: {
405
- name: string;
406
- value: {
407
- type: string;
408
- name: string;
409
- };
410
- }[];
411
- RequestBody: {
412
- name: string;
413
- value: {
414
- type: string;
415
- name: string;
416
- };
417
- }[];
418
- Header: {
419
- name: string;
420
- value: {
421
- type: string;
422
- name: string;
423
- };
424
- }[];
425
- SecuritySchema: {
426
- name: string;
427
- value: {
428
- type: string;
429
- name: string;
430
- };
431
- }[];
432
- Link: {
433
- name: string;
434
- value: {
435
- type: string;
436
- name: string;
437
- };
438
- }[];
439
- Callback: {
440
- name: string;
441
- value: {
442
- type: string;
443
- name: string;
444
- };
445
- }[];
446
- };
447
- function extendOASType(type: ExtendedNormalizedNodeType): ExtendedNormalizedNodeType;
448
- export { typeExtensions, extendOASType, mapTypeToComponent };
449
-
450
- }
451
- declare module '@redocly/openapi-language-server/server/path' {
452
- import { DocumentUri } from 'vscode-languageserver/browser';
453
- import { URI } from 'vscode-uri';
454
- export function arePathsEqual(path1: string, path2: string): boolean;
455
- export function parseUri(path: string): URI;
456
- export function uriToAbsFSPath(uri: DocumentUri): string;
457
- export function isHttpPath(path: string): boolean;
458
- export function uriBaseName(uri: DocumentUri): string;
459
- export function getFileExtension(uri: DocumentUri): string;
460
- export function noTrailingSlash(path: string): string;
461
- export function getClosestExistingDir(uri: URI, baseDir?: string): Promise<URI>;
462
-
463
- }
464
- declare module '@redocly/openapi-language-server/server/sort' {
465
- export function getSortText(typeName: string | null, label?: string): string;
466
- export enum SortTypes {
467
- FileCompletion = "FileCompletion",
468
- FolderCompletion = "FolderCompletion",
469
- LocalComponentCompletion = "LocalComponentCompletion",
470
- NewLine = "newLine",
471
- PropertyName = "propertyName",
472
- NewItem = "newItem",
473
- PathMap = "PathMap",
474
- MediaTypeMap = "MediaTypeMap",
475
- Root = "Root",
476
- RootOpenapi = "Root_openapi",
477
- RootInfo = "Root_info",
478
- RootJsonSchemaDialect = "Root_jsonSchemaDialect",
479
- RootServers = "Root_servers",
480
- RootPaths = "Root_paths",
481
- RootWebhooks = "Root_webhooks",
482
- RootComponents = "Root_components",
483
- RootSecurity = "Root_security",
484
- RootTags = "Root_tags",
485
- RootExternalDocs = "Root_externalDocs",
486
- Info = "Info",
487
- InfoTitle = "Info_title",
488
- InfoSummary = "Info_summary",
489
- InfoDescription = "Info_description",
490
- InfoTermsOfService = "Info_termsOfService",
491
- InfoContact = "Info_contact",
492
- ContactName = "Contact_name",
493
- ContactUrl = "Contact_url",
494
- ContactEmail = "Contact_email",
495
- InfoLicense = "Info_license",
496
- LicenseName = "License_name",
497
- LicenseIdentifier = "License_identifier",
498
- LicenseUrl = "License_url",
499
- InfoVersion = "Info_version",
500
- jsonSchemaDialect = "jsonSchemaDialect",
501
- ServerList = "Server_List",
502
- ServerUrl = "Server_url",
503
- ServerDescription = "Server_description",
504
- ServerVariables = "Server_variables",
505
- Default = "Default"
506
- }
507
- export const sortLabelObject: Record<SortTypes, string>;
508
-
509
- }
510
- declare module '@redocly/openapi-language-server/server/types/completion' {
511
- import { CompletionItemKind, TextEdit, InsertReplaceEdit } from 'vscode-languageserver/browser';
512
- import { type NormalizedNodeType } from '@redocly/openapi-core';
513
- type ExtendedNormalizedNodeType = NormalizedNodeType & {
514
- isExample?: true;
515
- enum?: string[];
516
- type?: string;
517
- };
518
- interface CompletionItemOptions {
519
- label: string;
520
- kind?: CompletionItemKind;
521
- sortText?: string;
522
- textEdit?: TextEdit | InsertReplaceEdit;
523
- insertText?: string;
524
- filterText?: string;
525
- }
526
- export type { ExtendedNormalizedNodeType, CompletionItemOptions };
527
-
528
- }
529
- declare module '@redocly/openapi-language-server/server/types/context-core' {
530
- import yamlAst from '@redocly/yaml-language-server-parser';
531
- import type { TextDocument } from 'vscode-languageserver-textdocument';
532
- import type { NormalizedNodeType, SpecMajorVersion } from '@redocly/openapi-core';
533
- export enum ContextErrorCodes {
534
- FILE_TYPE_NOT_SUPPORTED = 0
535
- }
536
- export type ContextError = {
537
- error: {
538
- code: ContextErrorCodes;
539
- message: string;
540
- };
541
- };
542
- export type ExistingValues = {
543
- [key: string]: {
544
- value: string | null;
545
- startOffset: number;
546
- endOffset: number | null;
547
- indent: number;
548
- type?: 'scalar' | 'map' | 'sequence';
549
- rawValue?: string;
550
- };
551
- };
552
- export type ContextData = {
553
- nodePath: (string | number)[];
554
- endPath?: string | number;
555
- type: NormalizedNodeType | null;
556
- existingValues: ExistingValues;
557
- types: NormalizedNodeType | null;
558
- descriptionVersion: SpecMajorVersion | null;
559
- };
560
- export type OpenApiVersion<T> = {
561
- version: T;
562
- isDefault: boolean;
563
- };
564
- export type NodePath = (string | number)[];
565
- export type NodeWithPath = {
566
- node: yamlAst.YAMLNode | null;
567
- nodePath: NodePath;
568
- };
569
- export type TextDocumentWithLineOffset = TextDocument & {
570
- _lineOffsets: number[];
571
- };
572
-
573
- }
574
- declare module '@redocly/openapi-language-server/server/utils' {
575
- import { YAMLNode } from '@redocly/yaml-language-server-parser';
576
- import { type ResolvedApi } from '@redocly/openapi-core';
577
- import { type TextDocument } from 'vscode-languageserver-textdocument';
578
- type Func<T> = (textDocument: TextDocument) => T | Promise<T>;
579
- export function debounceDocument<T>(func: Func<T>, wait?: number, immediate?: boolean): Func<Promise<T>>;
580
- export function removeCirculars(object: any): any;
581
- export function isRefField(field: string): boolean;
582
- export function getRootFilePath(apiRoot: string, rootFolderURI: string): Promise<string>;
583
- export function getCurrentApiAlias(apis: Record<string, ResolvedApi>, rootFilePath: string, rootFolderURI: string): Promise<string | undefined>;
584
- export function isString<T>(value: T): boolean;
585
- export function isFunction<T>(f: T): boolean;
586
- export function isPromise<T>(value: T): boolean;
587
- export function isYamlMap(node: YAMLNode | null): boolean;
588
- export function isYamlMapping(node: YAMLNode | null): boolean;
589
- export function isYamlSequence(node: YAMLNode | null): boolean;
590
- export function surroundByNodeQuotes(valueToSurround: string, options: Record<string, any> & {
591
- singleQuoted?: boolean;
592
- }): string;
593
- export function isAbsoluteUrl(ref: string): boolean;
594
- export {};
595
-
596
- }
597
- declare module '@redocly/openapi-language-server/server/validation/__tests__/scorecard.test' {
598
- export {};
599
-
600
- }
601
- declare module '@redocly/openapi-language-server/server/validation/index' {
602
- import { type NormalizedProblem } from '@redocly/openapi-core';
603
- import { type PublishDiagnosticsParams } from 'vscode-languageserver/browser';
604
- import { TextDocument } from 'vscode-languageserver-textdocument';
605
- export const validateOpenAPI: (textDocument: TextDocument) => Promise<PublishDiagnosticsParams[]> | Promise<Promise<PublishDiagnosticsParams[]>>;
606
- export function revalidateAllDocuments(): (Promise<PublishDiagnosticsParams[]> | Promise<Promise<PublishDiagnosticsParams[]>>)[];
607
- export function handleUnexpectedError(fileURI: string, error: any, diagnosticsParams?: PublishDiagnosticsParams[]): PublishDiagnosticsParams[];
608
- export function getValidationErrorsForBundle(problems: NormalizedProblem[]): NormalizedProblem[];
609
-
610
- }
611
- declare module '@redocly/openapi-language-server/server/validation/scorecard' {
612
- import { type ScorecardConfig } from '@redocly/config';
613
- import { BaseResolver, type NormalizedProblem, type Document } from '@redocly/openapi-core';
614
- export function validateScorecard(document: Document, externalRefResolver: BaseResolver, scorecardConfig: ScorecardConfig, configPath?: string): Promise<(NormalizedProblem & {
615
- scorecardLevel?: string;
616
- })[]>;
617
-
618
- }
619
- declare module '@redocly/openapi-language-server/vitest.config' {
620
- const _default: import("vite").UserConfig;
621
- export default _default;
622
-
623
- }
624
- declare module '@redocly/openapi-language-server' {
625
- import main = require('@redocly/openapi-language-server/index');
626
- export = main;
627
- }