@redocly/openapi-docs 3.23.0-next.7 → 3.24.0-next.0

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.
@@ -1,2 +1,2 @@
1
- import{REDOCLY_TEAMS_RBAC as S}from"@redocly/config";import{isObject as I}from"@redocly/theme/core/openapi";import{pushRef as w}from"../services/OpenAPIParser.js";import{detectType as q,extractExtensions as C,getValueFromMdParsedExtension as M,humanizeConstraints as E,isNamedDefinition as h,isPrimitiveType as B,JsonPointer as A,pluralizeType as z,sortByDeprecated as L,sortByRequired as J}from"../utils/index.js";import{getField as b}from"./field.js";function F({parser:i,schemaOrRef:n,pointer:u,options:l,isChild:P=!1,isDefaultMapping:f=!1,baseRefsStack:m=[],deps:a,absolutePointer:y}){const{resolved:p,refsStack:c}=i.deref(n,m,!0),s=n.$ref||u||y||"",r=w(c,s),e=i.mergeAllOf(p,s,r,n.$ref||y),O=e.type||q(e),t={operationPointer:a.operation?.pointer||y||"",schemaOrRef:n,isChild:P,isDefaultMapping:f,typePrefix:"",pointer:s,absolutePointer:y,refsStack:r,rawSchema:p,type:O,isCircular:!!e["x-circular-ref"],isComplex:!!e["x-complex"],title:e.title||h(s)&&A.baseName(s)||"",description:M(e,"description")||"",format:e.format,enum:e.enum||[],example:e.example,deprecated:!!e.deprecated,pattern:e.pattern,externalDocs:e.externalDocs,displayFormat:e.format,isPrimitive:B(e,O),constraints:E(e),default:e.default,readOnly:!!e.readOnly,writeOnly:!!e.writeOnly,const:e.const||"",contentEncoding:e.contentEncoding,contentMediaType:e.contentMediaType,minItems:e.minItems,maxItems:e.maxItems,nullable:e.nullable||e["x-nullable"],schema:e,displayType:"",items:void 0,extensions:void 0,oneOfType:"",discriminatorProp:void 0,oneOf:void 0,[S]:e[S],"x-enumDescriptions":M(e,"x-enumDescriptions"),get fields(){if(!t.isCircular&&!t.isComplex&&($(t,"object")||$(t,"array")&&v(e)))return K(i,e,s,l,r,a)}};if((e.nullable||e["x-nullable"])&&(Array.isArray(t.type)&&!t.type.some(d=>d===null||d==="null")?t.type=[...t.type,"null"]:!Array.isArray(t.type)&&(t.type!==null||t.type!=="null")&&(t.type=[t.type,"null"])),t.displayType=Array.isArray(t.type)?t.type.map(d=>d===null?"null":d).join(" or "):t.type,t.isCircular)return t;if(e.if&&e.then||e.if&&e.else){const{oneOf:d,oneOfType:o}=_({schema:e,parser:i,pointer:s,options:l,deps:a,refsStack:r});return t.oneOf=d,t.oneOfType=o,t}if(!P&&j(e)!==void 0){const{oneOf:d,discriminatorProp:o}=V({schema:e,parser:i,deps:a,mergedSchema:e,options:l,pointer:s,refsStack:r});return t.oneOf=d,t.discriminatorProp=o,t}else P&&Array.isArray(e.oneOf)&&e.oneOf.find(d=>d.$ref===s)&&delete e.oneOf;if(e.oneOf!==void 0){const{oneOf:d,displayType:o}=k({schemaOneOf:e.oneOf,parser:i,deps:a,options:l,pointer:s,refsStack:r,schema:e});return t.oneOfType="One of",d&&(t.oneOf=d),t.displayType=o,e.anyOf!==void 0&&console.warn(`oneOf and anyOf are not supported on the same level. Skipping anyOf at ${s}`),t}if(e.anyOf!==void 0){const{oneOf:d,displayType:o}=k({schemaOneOf:e.anyOf,parser:i,deps:a,options:l,pointer:s,refsStack:r,schema:e});return d&&(t.oneOf=d),t.displayType=o,t.oneOfType="Any of",t}if($(t,"array")&&(e.items&&!v(e)&&(t.items=F({parser:i,schemaOrRef:e.items,pointer:s+"/items",options:l,baseRefsStack:r,deps:a,absolutePointer:A.join(e.absolutePointer||"",["items"])})),t.displayType=e.prefixItems||Array.isArray(e.items)?"items":z(t.items?.displayType||t.displayType),t.displayFormat=t.items?.format||"",t.typePrefix=t.items?.typePrefix||"Array of ",t.title=t.title||t.items?.title||"",t.isPrimitive=t.items?.isPrimitive!==void 0?t.items?.isPrimitive:t.isPrimitive,t.example===void 0&&t.items?.example!==void 0&&(t.example=[t.items.example]),t.items?.isPrimitive&&(t.enum=t.items.enum,t["x-enumDescriptions"]=M(t.items,"x-enumDescriptions")),Array.isArray(t.type))){const d=t.type.filter(o=>o!=="array");d.length&&(t.displayType+=` or ${d.join(" or ")}`)}return l.showExtensions&&(t.extensions=C(e,l.showExtensions)),t}function V({schema:i,parser:n,pointer:u,options:l,refsStack:P,deps:f,mergedSchema:m}){const a=j(i),y=a?.propertyName,p=n.findDerived([...m["x-parentRefs"]||[],u]);if(i.oneOf)for(const o of i.oneOf){if(o.$ref===void 0)continue;const x=A.baseName(o.$ref);p[o.$ref]=x}const c=a?.mapping||{},s=a?.["x-explicitMappingOnly"]??Object.keys(c).length>0,r={};for(const o in c){const x=c[o];Array.isArray(r[x])?r[x].push(o):r[x]=[o]}const e=s?{...r}:{...p,...r};let O=[];for(const o of Object.keys(e)){const x=e[o];if(Array.isArray(x))for(const g of x)O.push({$ref:o,name:g});else O.push({$ref:o,name:x})}if(a?.defaultMapping){const o=O.findIndex(g=>g.name===A.baseName(a.defaultMapping)),x="Default mapping";~o?O[o]={$ref:a.defaultMapping,name:x,isDefaultMapping:!0}:O.push({$ref:a.defaultMapping,name:x,isDefaultMapping:!0})}const t=Object.keys(c);return t.length!==0&&(O=O.sort((o,x)=>{if(o.isDefaultMapping&&!x.isDefaultMapping)return 1;if(!o.isDefaultMapping&&x.isDefaultMapping)return-1;const g=t.indexOf(o.name),T=t.indexOf(x.name);return g<0&&T<0?o.name.localeCompare(x.name):g<0?1:T<0?-1:g-T})),{oneOf:O.map(({$ref:o,name:x,isDefaultMapping:g},T)=>{const D=F({parser:n,schemaOrRef:{$ref:o},pointer:o,options:l,isChild:!0,isDefaultMapping:g,baseRefsStack:P.slice(0,-1),deps:{...f,parentFieldFullPath:f.parentFieldFullPath?f.parentFieldFullPath+"&d="+T:"&d="+T.toString()},absolutePointer:m.absolutePointer});return D.title=x,D}),discriminatorProp:y}}function k({schemaOneOf:i,parser:n,refsStack:u,pointer:l,schema:P,options:f,deps:m}){const a=i.map((p,c)=>{const{resolved:s,refsStack:r}=n.deref(p,u,!0),e=n.mergeAllOf(s,l+"/oneOf/"+c,r),O=h(p.$ref)&&!e.title?A.baseName(p.$ref):`${e.title||""}${e.const&&JSON.stringify(e.const)||""}`;return F({parser:n,schemaOrRef:{...e,title:O,allOf:[{...P,oneOf:void 0,anyOf:void 0}],discriminator:s.allOf?void 0:e.discriminator},pointer:p.$ref||l+"/oneOf/"+c,options:f,baseRefsStack:r,deps:{...m,parentFieldFullPath:m.parentFieldFullPath?m.parentFieldFullPath+"&oneOf="+c:"&oneOf="+c.toString()}})}),y=[...new Set(a.map(p=>{let c=p.typePrefix+(p.title&&!f.hideSchemaTitles?`${p.title} (${p.displayType})`:p.displayType);return c.indexOf(" or ")>-1&&(c=`(${c})`),c}))].join(" or ");return{oneOf:a,displayType:y}}function _({schema:i,parser:n,pointer:u,options:l,refsStack:P,deps:f}){const{if:m,else:a={},then:y={},...p}=i;return{oneOf:[{allOf:[p,y,m],title:m&&m["x-displayName"]||m?.title||"case 1"},{allOf:[p,a],title:a&&a["x-displayName"]||a?.title||"case 2"}].map((e,O)=>F({parser:n,schemaOrRef:{...e},pointer:u+"/oneOf/"+O,options:l,baseRefsStack:P,deps:{...f,parentFieldFullPath:f.parentFieldFullPath?f.parentFieldFullPath+"&oneOf="+O:"&oneOf="+O.toString()}})),oneOfType:"One of"}}function R(i,n,u){return i||(console.warn(`Field "${n}" is invalid, skipping.
2
- Field must be an object but got ${typeof i} at "${u}"`),{})}function K(i,n,u,l,P,f){let m=n.properties||($(n,"array")?n.prefixItems||n.items:void 0)||{};const a=n.patternProperties||{},y=n.additionalProperties||n.unevaluatedProperties,p=n.prefixItems?n.items:n.additionalItems,c=n.default||{};let s=Object.keys(m).map(r=>{const e=R(m[r],r,u),O=n.required===void 0?!1:n.required.indexOf(r)>-1;return b(i,{name:n.properties?r:`[${r}]`,required:O,schema:{...e,example:n.example?.[r]||e.example,default:e.default===void 0&&c?c[r]:e.default}},u+"/properties/"+r,l,f,P,A.join(n.absolutePointer||"",["properties",r]))});return l.sortRequiredPropsFirst&&(s=J(s,n.required)),s.push(...Object.keys(a).map(r=>{const e=R(a[r],r,u);return b(i,{name:r,required:!1,schema:e,kind:"patternProperties"},`${u}/patternProperties/${r}`,l,f,P)})),(I(y)||y===!0)&&s.push(b(i,{name:(I(y)&&y["x-additionalPropertiesName"]||"property name").concat("*"),required:!1,schema:y===!0?{}:y,kind:"additionalProperties"},u+"/additionalProperties",l,f,P,A.join(n.absolutePointer||"",["additionalProperties"]))),s.push(...Y({parser:i,schema:p,fieldsCount:s.length,$ref:u,options:l,refsStack:P,deps:f})),L(s)}function Y({parser:i,schema:n=!1,fieldsCount:u,$ref:l,options:P,refsStack:f,deps:m}){return typeof n=="boolean"?n?[b(i,{name:`[${u}...]`,schema:{},kind:"additionalItems"},`${l}/additionalItems`,P,m,f)]:[]:Array.isArray(n)?[...n.map((a,y)=>b(i,{name:`[${u+y}]`,schema:a,kind:"additionalItems"},`${l}/additionalItems/${y}`,P,m,f))]:I(n)?[b(i,{name:`[${u}...]`,schema:n,kind:"additionalItems"},`${l}/additionalItems`,P,m,f)]:[]}function j(i){return i.discriminator||i["x-discriminator"]}function $(i,n){return i.type===n||Array.isArray(i.type)&&i.type.includes(n)}function v(i){return!!(Array.isArray(i.items)||Array.isArray(i.prefixItems))}export{F as getSchema};
1
+ import{REDOCLY_TEAMS_RBAC as S}from"@redocly/config";import{isObject as I}from"@redocly/theme/core/openapi";import{pushRef as w}from"../services/OpenAPIParser.js";import{detectType as q,extractExtensions as C,getValueFromMdParsedExtension as M,humanizeConstraints as E,isNamedDefinition as h,isPrimitiveType as B,JsonPointer as A,pluralizeType as z,sortByDeprecated as L,sortByRequired as J}from"../utils/index.js";import{getField as b}from"./field.js";function F({parser:i,schemaOrRef:n,pointer:u,options:l,isChild:P=!1,isDefaultMapping:f=!1,baseRefsStack:m=[],deps:a,absolutePointer:y}){const{resolved:p,refsStack:c}=i.deref(n,m,!0),s=n.$ref||u||y||"",r=w(c,s),t=i.mergeAllOf(p,s,r,n.$ref||y),O=t.type||q(t),e={operationPointer:a.operation?.pointer||y||"",schemaOrRef:n,isChild:P,isDefaultMapping:f,typePrefix:"",pointer:s,absolutePointer:y,refsStack:r,rawSchema:p,type:O,isCircular:!!t["x-circular-ref"],isComplex:!!t["x-complex"],title:t.title||h(s)&&A.baseName(s)||"",description:M(t,"description")||"",format:t.format,enum:t.enum||[],example:t.example,deprecated:!!t.deprecated,pattern:t.pattern,externalDocs:t.externalDocs,displayFormat:t.format,isPrimitive:B(t,O),constraints:E(t),default:t.default,readOnly:!!t.readOnly,writeOnly:!!t.writeOnly,const:t.const||"",contentEncoding:t.contentEncoding,contentMediaType:t.contentMediaType,minItems:t.minItems,maxItems:t.maxItems,nullable:t.nullable||t["x-nullable"],schema:t,displayType:"",items:void 0,extensions:void 0,oneOfType:"",discriminatorProp:void 0,oneOf:void 0,[S]:t[S],"x-enumDescriptions":M(t,"x-enumDescriptions"),get fields(){if(!e.isCircular&&!e.isComplex&&($(e,"object")||$(e,"array")&&v(t)))return K(i,t,s,l,r,a)}};if((t.nullable||t["x-nullable"])&&(Array.isArray(e.type)&&!e.type.some(d=>d===null||d==="null")?e.type=[...e.type,"null"]:!Array.isArray(e.type)&&(e.type!==null||e.type!=="null")&&(e.type=[e.type,"null"])),e.displayType=Array.isArray(e.type)?e.type.map(d=>d===null?"null":d).join(" or "):e.type,e.isCircular)return e;if(t.if&&t.then||t.if&&t.else){const{oneOf:d,oneOfType:o}=_({schema:t,parser:i,pointer:s,options:l,deps:a,refsStack:r});return e.oneOf=d,e.oneOfType=o,e}if(!P&&j(t)!==void 0){const{oneOf:d,discriminatorProp:o}=V({schema:t,parser:i,deps:a,mergedSchema:t,options:l,pointer:s,refsStack:r});return e.oneOf=d,e.discriminatorProp=o,e}else P&&Array.isArray(t.oneOf)&&t.oneOf.find(d=>d.$ref===s)&&delete t.oneOf;if(t.oneOf!==void 0){const{oneOf:d,displayType:o}=k({schemaOneOf:t.oneOf,parser:i,deps:a,options:l,pointer:s,refsStack:r,schema:t});return e.oneOfType="One of",d&&(e.oneOf=d),e.displayType=o,t.anyOf!==void 0&&console.warn(`oneOf and anyOf are not supported on the same level. Skipping anyOf at ${s}`),e}if(t.anyOf!==void 0){const{oneOf:d,displayType:o}=k({schemaOneOf:t.anyOf,parser:i,deps:a,options:l,pointer:s,refsStack:r,schema:t});return d&&(e.oneOf=d),e.displayType=o,e.oneOfType="Any of",e}if($(e,"array")&&(t.items&&!v(t)&&(e.items=F({parser:i,schemaOrRef:t.items,pointer:s+"/items",options:l,baseRefsStack:r,deps:a,absolutePointer:A.join(t.absolutePointer||"",["items"])}),e.items.isPrimitive&&(e.description=e.items.description||e.description,e.pattern=e.items.pattern||e.pattern,e.format=e.items.format||e.format,e.constraints=[...e.constraints,...e.items.constraints])),e.displayType=t.prefixItems||Array.isArray(t.items)?"items":z(e.items?.displayType||e.displayType),e.displayFormat=e.items?.format||"",e.typePrefix=e.items?.typePrefix||"Array of ",e.title=e.title||e.items?.title||"",e.isPrimitive=e.items?.isPrimitive!==void 0?e.items?.isPrimitive:e.isPrimitive,e.example===void 0&&e.items?.example!==void 0&&(e.example=[e.items.example]),e.items?.isPrimitive&&(e.enum=e.items.enum,e["x-enumDescriptions"]=M(e.items,"x-enumDescriptions")),Array.isArray(e.type))){const d=e.type.filter(o=>o!=="array");d.length&&(e.displayType+=` or ${d.join(" or ")}`)}return l.showExtensions&&(e.extensions=C(t,l.showExtensions)),e}function V({schema:i,parser:n,pointer:u,options:l,refsStack:P,deps:f,mergedSchema:m}){const a=j(i),y=a?.propertyName,p=n.findDerived([...m["x-parentRefs"]||[],u]);if(i.oneOf)for(const o of i.oneOf){if(o.$ref===void 0)continue;const x=A.baseName(o.$ref);p[o.$ref]=x}const c=a?.mapping||{},s=a?.["x-explicitMappingOnly"]??Object.keys(c).length>0,r={};for(const o in c){const x=c[o];Array.isArray(r[x])?r[x].push(o):r[x]=[o]}const t=s?{...r}:{...p,...r};let O=[];for(const o of Object.keys(t)){const x=t[o];if(Array.isArray(x))for(const g of x)O.push({$ref:o,name:g});else O.push({$ref:o,name:x})}if(a?.defaultMapping){const o=O.findIndex(g=>g.name===A.baseName(a.defaultMapping)),x="Default mapping";~o?O[o]={$ref:a.defaultMapping,name:x,isDefaultMapping:!0}:O.push({$ref:a.defaultMapping,name:x,isDefaultMapping:!0})}const e=Object.keys(c);return e.length!==0&&(O=O.sort((o,x)=>{if(o.isDefaultMapping&&!x.isDefaultMapping)return 1;if(!o.isDefaultMapping&&x.isDefaultMapping)return-1;const g=e.indexOf(o.name),T=e.indexOf(x.name);return g<0&&T<0?o.name.localeCompare(x.name):g<0?1:T<0?-1:g-T})),{oneOf:O.map(({$ref:o,name:x,isDefaultMapping:g},T)=>{const D=F({parser:n,schemaOrRef:{$ref:o},pointer:o,options:l,isChild:!0,isDefaultMapping:g,baseRefsStack:P.slice(0,-1),deps:{...f,parentFieldFullPath:f.parentFieldFullPath?f.parentFieldFullPath+"&d="+T:"&d="+T.toString()},absolutePointer:m.absolutePointer});return D.title=x,D}),discriminatorProp:y}}function k({schemaOneOf:i,parser:n,refsStack:u,pointer:l,schema:P,options:f,deps:m}){const a=i.map((p,c)=>{const{resolved:s,refsStack:r}=n.deref(p,u,!0),t=n.mergeAllOf(s,l+"/oneOf/"+c,r),O=h(p.$ref)&&!t.title?A.baseName(p.$ref):`${t.title||""}${t.const&&JSON.stringify(t.const)||""}`;return F({parser:n,schemaOrRef:{...t,title:O,allOf:[{...P,oneOf:void 0,anyOf:void 0}],discriminator:s.allOf?void 0:t.discriminator},pointer:p.$ref||l+"/oneOf/"+c,options:f,baseRefsStack:r,deps:{...m,parentFieldFullPath:m.parentFieldFullPath?m.parentFieldFullPath+"&oneOf="+c:"&oneOf="+c.toString()}})}),y=[...new Set(a.map(p=>{let c=p.typePrefix+(p.title&&!f.hideSchemaTitles?`${p.title} (${p.displayType})`:p.displayType);return c.indexOf(" or ")>-1&&(c=`(${c})`),c}))].join(" or ");return{oneOf:a,displayType:y}}function _({schema:i,parser:n,pointer:u,options:l,refsStack:P,deps:f}){const{if:m,else:a={},then:y={},...p}=i;return{oneOf:[{allOf:[p,y,m],title:m&&m["x-displayName"]||m?.title||"case 1"},{allOf:[p,a],title:a&&a["x-displayName"]||a?.title||"case 2"}].map((t,O)=>F({parser:n,schemaOrRef:{...t},pointer:u+"/oneOf/"+O,options:l,baseRefsStack:P,deps:{...f,parentFieldFullPath:f.parentFieldFullPath?f.parentFieldFullPath+"&oneOf="+O:"&oneOf="+O.toString()}})),oneOfType:"One of"}}function R(i,n,u){return i||(console.warn(`Field "${n}" is invalid, skipping.
2
+ Field must be an object but got ${typeof i} at "${u}"`),{})}function K(i,n,u,l,P,f){let m=n.properties||($(n,"array")?n.prefixItems||n.items:void 0)||{};const a=n.patternProperties||{},y=n.additionalProperties||n.unevaluatedProperties,p=n.prefixItems?n.items:n.additionalItems,c=n.default||{};let s=Object.keys(m).map(r=>{const t=R(m[r],r,u),O=n.required===void 0?!1:n.required.indexOf(r)>-1;return b(i,{name:n.properties?r:`[${r}]`,required:O,schema:{...t,example:n.example?.[r]||t.example,default:t.default===void 0&&c?c[r]:t.default}},u+"/properties/"+r,l,f,P,A.join(n.absolutePointer||"",["properties",r]))});return l.sortRequiredPropsFirst&&(s=J(s,n.required)),s.push(...Object.keys(a).map(r=>{const t=R(a[r],r,u);return b(i,{name:r,required:!1,schema:t,kind:"patternProperties"},`${u}/patternProperties/${r}`,l,f,P)})),(I(y)||y===!0)&&s.push(b(i,{name:(I(y)&&y["x-additionalPropertiesName"]||"property name").concat("*"),required:!1,schema:y===!0?{}:y,kind:"additionalProperties"},u+"/additionalProperties",l,f,P,A.join(n.absolutePointer||"",["additionalProperties"]))),s.push(...Y({parser:i,schema:p,fieldsCount:s.length,$ref:u,options:l,refsStack:P,deps:f})),L(s)}function Y({parser:i,schema:n=!1,fieldsCount:u,$ref:l,options:P,refsStack:f,deps:m}){return typeof n=="boolean"?n?[b(i,{name:`[${u}...]`,schema:{},kind:"additionalItems"},`${l}/additionalItems`,P,m,f)]:[]:Array.isArray(n)?[...n.map((a,y)=>b(i,{name:`[${u+y}]`,schema:a,kind:"additionalItems"},`${l}/additionalItems/${y}`,P,m,f))]:I(n)?[b(i,{name:`[${u}...]`,schema:n,kind:"additionalItems"},`${l}/additionalItems`,P,m,f)]:[]}function j(i){return i.discriminator||i["x-discriminator"]}function $(i,n){return i.type===n||Array.isArray(i.type)&&i.type.includes(n)}function v(i){return!!(Array.isArray(i.items)||Array.isArray(i.prefixItems))}export{F as getSchema};
@@ -1 +1 @@
1
- import{LayoutVariant as d}from"@redocly/config";import{isUndefined as m,addTrailingSlash as r}from"@redocly/theme/core/openapi";import{WindowReferenceOptions as n}from"../../constants.js";import{argValueToBoolean as o,argValueToExpandLevel as i,argValueToInt as p,argValueToNumber as c,getWindowReferenceOptions as a,normalizePath as h}from"../../utils/index.js";import{normalizeShowExtensions as u,normalizeScrollYOffset as f,normalizeCodeSamples as S}from"./helpers.js";function y(e,s){e={...s,...e,markdocOptions:{...e?.markdocOptions,components:{...s?.markdocOptions?.components,...e?.markdocOptions?.components},tags:{...s?.markdocOptions?.tags,...e?.markdocOptions?.tags},nodes:{...s?.markdocOptions?.nodes,...e?.markdocOptions?.nodes,heading:s?.markdocOptions?.nodes?.heading||e?.markdocOptions?.nodes.heading}}};const t=Array.isArray(e.ignoreNamedSchemas)?e.ignoreNamedSchemas:e.ignoreNamedSchemas?.split(",").map(l=>l.trim());return{downloadUrls:e.downloadUrls,schemaDefinitionsTagName:e.schemaDefinitionsTagName,corsProxyUrl:e.corsProxyUrl&&r(e.corsProxyUrl),hideSidebar:o(e.hideSidebar,!1),jsonSamplesExpandLevel:i(e.jsonSamplesExpandLevel,2),generatedSamplesMaxDepth:p(e.generatedSamplesMaxDepth,8),hideDownloadButtons:o(e.hideDownloadButtons,!1),hideInfoMetadata:o(e.hideInfoMetadata,!1),hideLoading:o(e.hideLoading,!1),hideSchemaTitles:o(e.hideSchemaTitles,!1),maxDisplayedEnumValues:c(e.maxDisplayedEnumValues),mockServer:e.mockServer?.url?{url:e.mockServer.url,position:e.mockServer.position||"first",description:e.mockServer.description||"Mock server"}:void 0,hideReplay:o(e.hideReplay,!1),oAuth2RedirectURI:e.oAuth2RedirectURI||null,onlyRequiredInSamples:o(e.onlyRequiredInSamples,!1),onDeepLinkClick:e.onDeepLinkClick||a(n.ON_DEEP_LINK_CLICK),routingBasePath:m(e.disableRouter)?"":e.routingBasePath&&h(e.routingBasePath)||"",schemasExpansionLevel:i(e.schemasExpansionLevel),feedback:e.feedback||{hide:!1},sortRequiredPropsFirst:o(e.sortRequiredPropsFirst,!1),scrollYOffset:f(e.scrollYOffset),showExtensions:u(e.showExtensions),sanitize:o(e.sanitize,!1),skipBundle:o(e.skipBundle,!1),ignoreNamedSchemas:new Set(t),markdocOptions:e?.markdocOptions,codeSamples:S(e.codeSamples),layout:e.layout||d.THREE_PANEL,events:e.events||{},unstable_hooks:e.unstable_hooks||a(n.HOOKS)||{},unstable_skipSamples:o(e.unstable_skipSamples,!1),unstable_externalCodeSamples:e.unstable_externalCodeSamples||[],hidePropertiesPrefix:o(e?.hidePropertiesPrefix,!1)}}export{y as normalizeOptions};
1
+ import{LayoutVariant as d}from"@redocly/config";import{isUndefined as m,addTrailingSlash as r}from"@redocly/theme/core/openapi";import{WindowReferenceOptions as n}from"../../constants.js";import{argValueToBoolean as o,argValueToExpandLevel as i,argValueToInt as p,argValueToNumber as c,getWindowReferenceOptions as a,normalizePath as h}from"../../utils/index.js";import{normalizeShowExtensions as f,normalizeScrollYOffset as u,normalizeCodeSamples as S}from"./helpers.js";function y(e,s){e={...s,...e,markdocOptions:{...e?.markdocOptions,components:{...s?.markdocOptions?.components,...e?.markdocOptions?.components},tags:{...s?.markdocOptions?.tags,...e?.markdocOptions?.tags},nodes:{...s?.markdocOptions?.nodes,...e?.markdocOptions?.nodes,heading:s?.markdocOptions?.nodes?.heading||e?.markdocOptions?.nodes.heading}}};const t=Array.isArray(e.ignoreNamedSchemas)?e.ignoreNamedSchemas:e.ignoreNamedSchemas?.split(",").map(l=>l.trim());return{downloadUrls:e.downloadUrls,schemaDefinitionsTagName:e.schemaDefinitionsTagName,corsProxyUrl:e.corsProxyUrl&&r(e.corsProxyUrl),hideSidebar:o(e.hideSidebar,!1),jsonSamplesExpandLevel:i(e.jsonSamplesExpandLevel,2),generatedSamplesMaxDepth:p(e.generatedSamplesMaxDepth,8),hideDownloadButtons:o(e.hideDownloadButtons,!1),hideInfoMetadata:o(e.hideInfoMetadata,!1),hideLoading:o(e.hideLoading,!1),hideSchemaTitles:o(e.hideSchemaTitles,!1),maxDisplayedEnumValues:c(e.maxDisplayedEnumValues),mockServer:e.mockServer?.url?{url:e.mockServer.url,position:e.mockServer.position||"first",description:e.mockServer.description||"Mock server"}:void 0,hideReplay:o(e.hideReplay,!1),oAuth2RedirectURI:e.oAuth2RedirectURI,onlyRequiredInSamples:o(e.onlyRequiredInSamples,!1),onDeepLinkClick:e.onDeepLinkClick||a(n.ON_DEEP_LINK_CLICK),routingBasePath:m(e.disableRouter)?"":e.routingBasePath&&h(e.routingBasePath)||"",schemasExpansionLevel:i(e.schemasExpansionLevel),feedback:e.feedback||{hide:!1},sortRequiredPropsFirst:o(e.sortRequiredPropsFirst,!1),scrollYOffset:u(e.scrollYOffset),showExtensions:f(e.showExtensions),sanitize:o(e.sanitize,!1),skipBundle:o(e.skipBundle,!1),ignoreNamedSchemas:new Set(t),markdocOptions:e?.markdocOptions,codeSamples:S(e.codeSamples),layout:e.layout||d.THREE_PANEL,events:e.events||{},unstable_hooks:e.unstable_hooks||a(n.HOOKS)||{},unstable_skipSamples:o(e.unstable_skipSamples,!1),unstable_externalCodeSamples:e.unstable_externalCodeSamples||[],hidePropertiesPrefix:o(e?.hidePropertiesPrefix,!1)}}export{y as normalizeOptions};
@@ -12,7 +12,7 @@ export interface Options {
12
12
  feedback: Record<string, any>;
13
13
  unstable_hooks: HooksConfig;
14
14
  hideReplay: boolean;
15
- oAuth2RedirectURI: string | null;
15
+ oAuth2RedirectURI?: string;
16
16
  corsProxyUrl?: string;
17
17
  sortRequiredPropsFirst: boolean;
18
18
  sanitize: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redocly/openapi-docs",
3
- "version": "3.23.0-next.7",
3
+ "version": "3.24.0-next.0",
4
4
  "description": "Redocly OpenAPI Docs",
5
5
  "type": "module",
6
6
  "main": "lib/index.js",
@@ -14,7 +14,7 @@
14
14
  "npm": ">=10.0.0"
15
15
  },
16
16
  "peerDependencies": {
17
- "@redocly/theme": ">=0.67.0-next.0",
17
+ "@redocly/theme": ">=0.68.0-next.0",
18
18
  "react": "^19.2.4",
19
19
  "react-dom": "^19.2.4",
20
20
  "styled-components": "^4.1.1 || ^5.3.11 || ^6.0.0"
@@ -22,7 +22,7 @@
22
22
  "dependencies": {
23
23
  "@babel/core": "7.29.7",
24
24
  "@markdoc/markdoc": "0.5.2",
25
- "@redocly/openapi-core": "2.37.0",
25
+ "@redocly/openapi-core": "2.39.0",
26
26
  "deepmerge": "^4.2.2",
27
27
  "dompurify": "3.4.11",
28
28
  "fast-deep-equal": "^3.1.3",
@@ -39,9 +39,9 @@
39
39
  "url-template": "^2.0.8",
40
40
  "util": "~0.12.5",
41
41
  "web-vitals": "3.3.1",
42
- "@redocly/config": "0.50.1",
42
+ "@redocly/config": "0.52.0",
43
43
  "@redocly/redoc-opentelemetry": "0.2.2",
44
- "@redocly/replay": "0.26.0-next.7"
44
+ "@redocly/replay": "0.27.0-next.0"
45
45
  },
46
46
  "devDependencies": {
47
47
  "@shikijs/transformers": "3.21.0",
@@ -71,7 +71,7 @@
71
71
  "url": "~0.11.0",
72
72
  "vite": "7.3.6",
73
73
  "vitest": "4.1.8",
74
- "@redocly/theme": "0.67.0-next.6"
74
+ "@redocly/theme": "0.68.0-next.0"
75
75
  },
76
76
  "scripts": {
77
77
  "start": "pnpm run copy-highlight-hook && vite",