@redocly/openapi-docs 3.24.0-next.5 → 3.24.0-next.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/dist/redocly-openapi-docs.min.AiChatProvider-C_OmERaa.js +32 -0
  2. package/dist/redocly-openapi-docs.min.AiChatSqliteDBStorage-C5E-x8f4.js +1 -0
  3. package/dist/redocly-openapi-docs.min.AiPanel-Z2Zw-OOK.js +754 -0
  4. package/dist/redocly-openapi-docs.min.HistorySqliteDBStorage-DYnaxLim.js +1 -0
  5. package/dist/redocly-openapi-docs.min.SqliteDBStorage-B6uym4Oj.js +14 -0
  6. package/dist/redocly-openapi-docs.min.StepContextSqliteDBStorage-DTB5U2yh.js +1 -0
  7. package/dist/redocly-openapi-docs.min.ai-chat-mappers-y6k4QA37.js +1 -0
  8. package/dist/redocly-openapi-docs.min.ai-message-parts.schema-C7fjQhYX.js +1 -0
  9. package/dist/redocly-openapi-docs.min.external-resolver-6xHVd9y7.js +2 -0
  10. package/dist/redocly-openapi-docs.min.history.schema-DzAAX18S.js +1 -0
  11. package/dist/redocly-openapi-docs.min.index-B2kW1MJX.js +1 -0
  12. package/dist/redocly-openapi-docs.min.index-D5tgmAoY.js +1 -0
  13. package/dist/redocly-openapi-docs.min.index-DHNqz_Gi.js +7694 -0
  14. package/dist/redocly-openapi-docs.min.index-DkqHu0CX.js +1 -0
  15. package/dist/redocly-openapi-docs.min.indexes-Bp4ld5gB.js +1 -0
  16. package/dist/redocly-openapi-docs.min.js +1 -21189
  17. package/dist/redocly-openapi-docs.min.lint-CmpdR_qH.js +181 -0
  18. package/dist/redocly-openapi-docs.min.lint-graphql-CAO-eUMC.js +3 -0
  19. package/dist/redocly-openapi-docs.min.respect-run-DjAvzRiR.js +78 -0
  20. package/dist/redocly-openapi-docs.min.standalone-C6JXws-S.js +12087 -0
  21. package/dist/redocly-openapi-docs.min.step-context.schema-DEgzIgw0.js +1 -0
  22. package/dist/redocly-openapi-docs.min.tauri-path-DySEV5MH.js +1 -0
  23. package/dist/redocly-openapi-docs.min.useAiChatQueries-CYikEfuU.js +358 -0
  24. package/lib/components/Callbacks/CallbackSummary.js +1 -1
  25. package/lib/components/Callbacks/CallbacksList.js +1 -1
  26. package/lib/models/field.js +1 -1
  27. package/lib/models/schema.js +2 -2
  28. package/package.json +4 -4
@@ -1,4 +1,4 @@
1
- import{jsx as r,jsxs as o}from"react/jsx-runtime";import{PanelHeader as p}from"@redocly/theme/components/Panel/PanelHeader";import{Badge as d}from"@redocly/theme/components/Badge/Badge";import{Trigger as f}from"../Panel/index.js";import{HttpVerb as g}from"../common/index.js";import{makeDeepLink as b}from"../../services/index.js";import{shortenHTTPVerb as h}from"../../utils/index.js";import{CallbackTitle as k}from"./styled.js";import{CircleIcon as v}from"../PropertyDetails/PlusCircleIcon.js";import{LinkToField as u}from"../common/LinkToField.js";import{styled as n}from"../../styled-components.js";function F({expanded:e=!1,toggle:t,callback:{name:l,httpVerb:i,deprecated:a,callbackId:c,id:s},translate:m}){return o(x,{expanded:e,onClick:t,children:[r(u,{to:b(s,`callbacks/${c}`)}),o(f,{children:[r(y,{children:r(v,{sign:e?"-":"+"})}),r(k,{deprecated:a,children:l}),r(g,{color:i,children:h(i)}),a?r(d,{deprecated:!0,children:m("openapi.badges.deprecated","Deprecated")}):null]})]})}const x=n(p)`
1
+ import{jsx as r,jsxs as o}from"react/jsx-runtime";import{PanelHeader as p}from"@redocly/theme/components/Panel/PanelHeader";import{Badge as d}from"@redocly/theme/components/Badge/Badge";import{Trigger as g}from"../Panel/index.js";import{HttpVerb as f}from"../common/index.js";import{makeDeepLink as b}from"../../services/index.js";import{shortenHTTPVerb as h}from"../../utils/index.js";import{CallbackTitle as v}from"./styled.js";import{CircleIcon as k}from"../PropertyDetails/PlusCircleIcon.js";import{LinkToField as u}from"../common/LinkToField.js";import{styled as n}from"../../styled-components.js";function F({expanded:e=!1,toggle:t,callback:{name:l,httpVerb:a,deprecated:i,callbackId:c,id:s},translate:m}){return o(x,{expanded:e,toggle:t,children:[r(u,{to:b(s,`callbacks/${c}`)}),o(g,{children:[r(y,{children:r(k,{sign:e?"-":"+"})}),r(v,{deprecated:i,children:l}),r(f,{color:a,children:h(a)}),i?r(d,{deprecated:!0,children:m("openapi.badges.deprecated","Deprecated")}):null]})]})}const x=n(p)`
2
2
  padding: var(--spacing-sm) 0 var(--spacing-sm) calc(var(--spacing-unit) / 2);
3
3
  margin: 0;
4
4
  line-height: var(--line-height-base);
@@ -1 +1 @@
1
- import{jsx as o}from"react/jsx-runtime";import{memo as m}from"react";import{CallbackOperation as i}from"./CallbackOperation.js";function p({callbacks:n,selectedCallback:r,onExpand:a}){if(!n||n.length===0)return null;const l=t=>{a(t)};return o("div",{children:n.map(t=>t.operations.map(e=>o(i,{operation:e,selectedCallback:r,onExpand:l},e.name)))})}const d=m(p);export{d as CallbacksList};
1
+ import{jsx as r}from"react/jsx-runtime";import{memo as a}from"react";import{CallbackOperation as i}from"./CallbackOperation.js";function p({callbacks:n,selectedCallback:t,onExpand:e}){return!n||n.length===0?null:r("div",{children:n.map(m=>m.operations.map(o=>r(i,{operation:o,selectedCallback:t,onExpand:e},o.name)))})}const u=a(p);export{u as CallbacksList};
@@ -1 +1 @@
1
- import{REDOCLY_TEAMS_RBAC as m}from"@redocly/config";import{joinWithSeparator as V}from"../services/index.js";import{extractExtensions as I,getValueFromMdParsedExtension as E,mapValues as L,removePercentChart as T}from"../utils/index.js";import{getSchema as _}from"./schema.js";import{getExamples as j}from"./example.js";const F={path:{style:"simple",explode:!1},query:{style:"form",explode:!0},header:{style:"simple",explode:!1},cookie:{style:"form",explode:!0},querystring:{style:"form",explode:!0}};function U(l,i,p,a,d,x,b=p){const{resolved:e}=l.deref(i),P=i.kind||"field",f=i.name||e.name,o=e.in,v=!!e.required;let r=e.schema,u,s="",c;if(!r&&e.in&&e.content){s=Object.keys(e.content)[0];const n=e.content[s];r=n&&n?.example?{...l.deref(n.schema,x,!0).resolved,example:e.example||n.example}:n.schema}const h=V(d.parentFieldFullPath,T(f||"")),t=_({parser:l,schemaOrRef:r||{},pointer:p,options:a,baseRefsStack:x,absolutePointer:i.$ref||e.schema?.absolutePointer||b,deps:{...d,parentFieldFullPath:h,in:o}}),w=e.description===void 0?E(t,"description")||"":E(e,"description"),R=e.example!==void 0?e.example:t.example,y=e.examples||e.content?.[s]?.examples,S=y?L(y,(n,M)=>j({parser:l,infoOrRef:n,mime:M,encoding:e.encoding})):void 0;s?u=s:e.style?c=e.style:o&&(c=F[o]?.style??"form");const A=e.explode===void 0&&o?F[o]?.explode??!0:!!e.explode,k=e.deprecated===void 0?t.deprecated:e.deprecated,q=a.showExtensions?I(e,a.showExtensions):void 0,C=t?.const||e?.const||"",g=e["x-badges"]??t.schema?.["x-badges"];return{deps:d||{},schema:t,name:f,required:v,description:w,example:R,examples:S,deprecated:k,in:o,kind:P,extensions:q,explode:A,style:c,const:C,serializationMime:u,fieldFullPath:h,...g?.length&&{badges:g},...e.allowReserved&&{allowReserved:e.allowReserved},[m]:e[m]||t[m]}}export{U as getField};
1
+ import{REDOCLY_TEAMS_RBAC as m}from"@redocly/config";import{joinWithSeparator as V}from"../services/index.js";import{extractExtensions as I,getValueFromMdParsedExtension as E,mapValues as L,removePercentChart as T}from"../utils/index.js";import{getSchema as _}from"./schema.js";import{getExamples as j}from"./example.js";const F={path:{style:"simple",explode:!1},query:{style:"form",explode:!0},header:{style:"simple",explode:!1},cookie:{style:"form",explode:!0},querystring:{style:"form",explode:!0}};function U(l,d,p,i,a,x,b=p){const{resolved:e}=l.deref(d),P=d.kind||"field",f=d.name||e.name,o=e.in,v=!!e.required;let r=e.schema,u,s="",c;if(!r&&e.in&&e.content){s=Object.keys(e.content)[0];const n=e.content[s];r=n&&n?.example!==void 0?{...l.deref(n.schema,x,!0).resolved,example:e.example!==void 0?e.example:n.example}:n.schema}const h=V(a.parentFieldFullPath,T(f||"")),t=_({parser:l,schemaOrRef:r||{},pointer:p,options:i,baseRefsStack:x,absolutePointer:d.$ref||e.schema?.absolutePointer||b,deps:{...a,parentFieldFullPath:h,in:o}}),w=e.description===void 0?E(t,"description")||"":E(e,"description"),R=e.example!==void 0?e.example:t.example,y=e.examples||e.content?.[s]?.examples,S=y?L(y,(n,M)=>j({parser:l,infoOrRef:n,mime:M,encoding:e.encoding})):void 0;s?u=s:e.style?c=e.style:o&&(c=F[o]?.style??"form");const A=e.explode===void 0&&o?F[o]?.explode??!0:!!e.explode,k=e.deprecated===void 0?t.deprecated:e.deprecated,q=i.showExtensions?I(e,i.showExtensions):void 0,C=t?.const||e?.const||"",g=e["x-badges"]??t.schema?.["x-badges"];return{deps:a||{},schema:t,name:f,required:v,description:w,example:R,examples:S,deprecated:k,in:o,kind:P,extensions:q,explode:A,style:c,const:C,serializationMime:u,fieldFullPath:h,...g?.length&&{badges:g},...e.allowReserved&&{allowReserved:e.allowReserved},[m]:e[m]||t[m]}}export{U as getField};
@@ -1,2 +1,2 @@
1
- import{REDOCLY_TEAMS_RBAC as M}from"@redocly/config";import{isObject as h}from"@redocly/theme/core/openapi";import{pushRef as w}from"../services/OpenAPIParser.js";import{detectType as C,extractExtensions as q,getValueFromMdParsedExtension as D,humanizeConstraints as B,isNamedDefinition as S,isPrimitiveType as z,JsonPointer as A,pluralizeType as L,sortByDeprecated as J,sortByRequired as V}from"../utils/index.js";import{getField as T}from"./field.js";function I({parser:r,schemaOrRef:n,pointer:m,options:s,isChild:x=!1,isDefaultMapping:f=!1,baseRefsStack:p=[],deps:a,absolutePointer:y}){const{resolved:d,refsStack:c}=r.deref(n,p,!0),u=n.$ref||m||y||"",o=w(c,u),t=r.mergeAllOf(d,u,o,n.$ref||y),l=t.type||C(t);let g,b=!1;const e={operationPointer:a.operation?.pointer||y||"",schemaOrRef:n,isChild:x,isDefaultMapping:f,typePrefix:"",pointer:u,absolutePointer:y,refsStack:o,rawSchema:d,type:l,isCircular:!!t["x-circular-ref"],isComplex:!!t["x-complex"],title:t.title||S(u)&&A.baseName(u)||"",description:D(t,"description")||"",format:t.format,enum:t.enum||[],example:t.example,deprecated:!!t.deprecated,pattern:t.pattern,externalDocs:t.externalDocs,displayFormat:t.format,isPrimitive:z(t,l),constraints:B(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,[M]:t[M],"x-enumDescriptions":D(t,"x-enumDescriptions"),get fields(){return b||(b=!0,!e.isCircular&&!e.isComplex&&($(e,"object")||$(e,"array")&&R(t))&&(g=K(r,t,u,s,o,a))),g}};if((t.nullable||t["x-nullable"])&&(Array.isArray(e.type)&&!e.type.some(i=>i===null||i==="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(i=>i===null?"null":i).join(" or "):e.type,e.isCircular)return e;if(t.if&&t.then||t.if&&t.else){const{oneOf:i,oneOfType:O}=H({schema:t,parser:r,pointer:u,options:s,deps:a,refsStack:o});return e.oneOf=i,e.oneOfType=O,e}if(!x&&v(t)!==void 0){const{oneOf:i,discriminatorProp:O}=_({schema:t,parser:r,deps:a,mergedSchema:t,options:s,pointer:u,refsStack:o});return e.oneOf=i,e.discriminatorProp=O,e}else x&&Array.isArray(t.oneOf)&&t.oneOf.find(i=>i.$ref===u)&&delete t.oneOf;if(t.oneOf!==void 0){const{oneOf:i,displayType:O}=k({schemaOneOf:t.oneOf,parser:r,deps:a,options:s,pointer:u,refsStack:o,schema:t});return e.oneOfType="One of",i&&(e.oneOf=i),e.displayType=O,t.anyOf!==void 0&&console.warn(`oneOf and anyOf are not supported on the same level. Skipping anyOf at ${u}`),e}if(t.anyOf!==void 0){const{oneOf:i,displayType:O}=k({schemaOneOf:t.anyOf,parser:r,deps:a,options:s,pointer:u,refsStack:o,schema:t});return i&&(e.oneOf=i),e.displayType=O,e.oneOfType="Any of",e}if($(e,"array")){t.items&&!R(t)&&(e.items=I({parser:r,schemaOrRef:t.items,pointer:u+"/items",options:s,baseRefsStack:o,deps:a,absolutePointer:A.join(t.absolutePointer||"",["items"])}));const i=!!(e.items?.isPrimitive&&(e.items.description||e.items.pattern||e.items.constraints.length||e.items.externalDocs||e.items.default!==void 0||e.items.const||e.items.deprecated||e.items.contentEncoding)),O=e.items&&$(e.items,"array")&&e.items.displayType==="any"?"array":e.items?.displayType;e.displayType=t.prefixItems||Array.isArray(t.items)||t.items===!1?"items":L(O||"any"),e.typePrefix=e.items?.typePrefix||"Array of ",i||(e.displayFormat=e.items?.format||"",e.title=e.title||e.items?.title||""),e.isPrimitive=i?!1:e.items?.isPrimitive!==void 0?e.items?.isPrimitive:e.isPrimitive,e.example===void 0&&e.items?.example!==void 0&&!i&&(e.example=[e.items.example]);const P=t.prefixItems||(Array.isArray(t.items)?t.items:[]);if(Array.isArray(e.example)&&e.example.length&&P.length&&e.example.length<=P.length&&(e.example=void 0),e.items?.isPrimitive&&!i&&(e.enum=e.items.enum,e["x-enumDescriptions"]=D(e.items,"x-enumDescriptions")),Array.isArray(e.type)){const F=e.type.filter(E=>E!=="array");F.length&&(e.displayType+=` or ${F.join(" or ")}`)}}return s.showExtensions&&(e.extensions=q(t,s.showExtensions)),e}function _({schema:r,parser:n,pointer:m,options:s,refsStack:x,deps:f,mergedSchema:p}){const a=v(r),y=a?.propertyName,d=n.findDerived([...p["x-parentRefs"]||[],m]);if(r.oneOf)for(const e of r.oneOf){if(e.$ref===void 0)continue;const i=A.baseName(e.$ref);d[e.$ref]=i}const c=a?.mapping||{},u=a?.["x-explicitMappingOnly"]??Object.keys(c).length>0,o={};for(const e in c){const i=c[e];Array.isArray(o[i])?o[i].push(e):o[i]=[e]}const t=u?{...o}:{...d,...o};let l=[];for(const e of Object.keys(t)){const i=t[e];if(Array.isArray(i))for(const O of i)l.push({$ref:e,name:O});else l.push({$ref:e,name:i})}if(a?.defaultMapping){const e=l.findIndex(O=>O.name===A.baseName(a.defaultMapping)),i="Default mapping";~e?l[e]={$ref:a.defaultMapping,name:i,isDefaultMapping:!0}:l.push({$ref:a.defaultMapping,name:i,isDefaultMapping:!0})}const g=Object.keys(c);return g.length!==0&&(l=l.sort((e,i)=>{if(e.isDefaultMapping&&!i.isDefaultMapping)return 1;if(!e.isDefaultMapping&&i.isDefaultMapping)return-1;const O=g.indexOf(e.name),P=g.indexOf(i.name);return O<0&&P<0?e.name.localeCompare(i.name):O<0?1:P<0?-1:O-P})),{oneOf:l.map(({$ref:e,name:i,isDefaultMapping:O},P)=>{const F=I({parser:n,schemaOrRef:{$ref:e},pointer:e,options:s,isChild:!0,isDefaultMapping:O,baseRefsStack:x.slice(0,-1),deps:{...f,parentFieldFullPath:f.parentFieldFullPath?f.parentFieldFullPath+"&d="+P:"&d="+P.toString()},absolutePointer:p.absolutePointer});return F.title=i,F}),discriminatorProp:y}}function k({schemaOneOf:r,parser:n,refsStack:m,pointer:s,schema:x,options:f,deps:p}){const a=r.map((d,c)=>{const{resolved:u,refsStack:o}=n.deref(d,m,!0),t=n.mergeAllOf(u,s+"/oneOf/"+c,o),l=S(d.$ref)&&!t.title?A.baseName(d.$ref):`${t.title||""}${t.const&&JSON.stringify(t.const)||""}`;return I({parser:n,schemaOrRef:{...t,title:l,allOf:[{...x,oneOf:void 0,anyOf:void 0}],discriminator:u.allOf?void 0:t.discriminator},pointer:d.$ref||s+"/oneOf/"+c,options:f,baseRefsStack:o,deps:{...p,parentFieldFullPath:p.parentFieldFullPath?p.parentFieldFullPath+"&oneOf="+c:"&oneOf="+c.toString()}})}),y=[...new Set(a.map(d=>{let c=d.typePrefix+(d.title&&!f.hideSchemaTitles?`${d.title} (${d.displayType})`:d.displayType);return c.indexOf(" or ")>-1&&(c=`(${c})`),c}))].join(" or ");return{oneOf:a,displayType:y}}function H({schema:r,parser:n,pointer:m,options:s,refsStack:x,deps:f}){const{if:p,else:a={},then:y={},...d}=r;return{oneOf:[{allOf:[d,y,p],title:p&&p["x-displayName"]||p?.title||"case 1"},{allOf:[d,a],title:a&&a["x-displayName"]||a?.title||"case 2"}].map((t,l)=>I({parser:n,schemaOrRef:{...t},pointer:m+"/oneOf/"+l,options:s,baseRefsStack:x,deps:{...f,parentFieldFullPath:f.parentFieldFullPath?f.parentFieldFullPath+"&oneOf="+l:"&oneOf="+l.toString()}})),oneOfType:"One of"}}function j(r,n,m){return r||(console.warn(`Field "${n}" is invalid, skipping.
2
- Field must be an object but got ${typeof r} at "${m}"`),{})}function K(r,n,m,s,x,f){let p=n.properties||($(n,"array")?n.prefixItems||n.items:void 0)||{};const a=n.patternProperties||{},y=n.additionalProperties||n.unevaluatedProperties,d=n.prefixItems?n.items:n.additionalItems,c=n.default||{},u=!!n.properties||Array.isArray(n.example)&&n.example.length>0&&n.example.length<=Object.keys(p).length;let o=Object.keys(p).map(t=>{const l=j(p[t],t,m),g=n.required===void 0?!1:n.required.indexOf(t)>-1,b=u?n.example?.[t]:void 0;return T(r,{name:n.properties?t:`[${t}]`,required:g,schema:{...l,example:b!==void 0?b:l.example,default:l.default===void 0&&c?c[t]:l.default}},m+"/properties/"+t,s,f,x,A.join(n.absolutePointer||"",["properties",t]))});return s.sortRequiredPropsFirst&&(o=V(o,n.required)),o.push(...Object.keys(a).map(t=>{const l=j(a[t],t,m);return T(r,{name:t,required:!1,schema:l,kind:"patternProperties"},`${m}/patternProperties/${t}`,s,f,x)})),(h(y)||y===!0)&&o.push(T(r,{name:(h(y)&&y["x-additionalPropertiesName"]||"property name").concat("*"),required:!1,schema:y===!0?{}:y,kind:"additionalProperties"},m+"/additionalProperties",s,f,x,A.join(n.absolutePointer||"",["additionalProperties"]))),o.push(...Y({parser:r,schema:d,fieldsCount:o.length,$ref:m,options:s,refsStack:x,deps:f})),J(o)}function Y({parser:r,schema:n=!1,fieldsCount:m,$ref:s,options:x,refsStack:f,deps:p}){return typeof n=="boolean"?n?[T(r,{name:`[${m}...]`,schema:{},kind:"additionalItems"},`${s}/additionalItems`,x,p,f)]:[]:Array.isArray(n)?[...n.map((a,y)=>T(r,{name:`[${m+y}]`,schema:a,kind:"additionalItems"},`${s}/additionalItems/${y}`,x,p,f))]:h(n)?[T(r,{name:`[${m}...]`,schema:n,kind:"additionalItems"},`${s}/additionalItems`,x,p,f)]:[]}function v(r){return r.discriminator||r["x-discriminator"]}function $(r,n){return r.type===n||Array.isArray(r.type)&&r.type.includes(n)}function R(r){return!!(Array.isArray(r.items)||Array.isArray(r.prefixItems))}export{I as getSchema};
1
+ import{REDOCLY_TEAMS_RBAC as h}from"@redocly/config";import{isObject as D}from"@redocly/theme/core/openapi";import{pushRef as w}from"../services/OpenAPIParser.js";import{detectType as C,extractExtensions as q,getValueFromMdParsedExtension as M,humanizeConstraints as B,isNamedDefinition as S,isPrimitiveType as z,JsonPointer as b,pluralizeType as L,sortByDeprecated as J,sortByRequired as V}from"../utils/index.js";import{getField as T}from"./field.js";function I({parser:r,schemaOrRef:n,pointer:m,options:l,isChild:x=!1,isDefaultMapping:p=!1,baseRefsStack:f=[],deps:a,absolutePointer:y}){const{resolved:d,refsStack:c}=r.deref(n,f,!0),u=n.$ref||m||y||"",o=w(c,u),t=r.mergeAllOf(d,u,o,n.$ref||y),s=t.type||C(t);let g,A=!1;const e={operationPointer:a.operation?.pointer||y||"",schemaOrRef:n,isChild:x,isDefaultMapping:p,typePrefix:"",pointer:u,absolutePointer:y,refsStack:o,rawSchema:d,type:s,isCircular:!!t["x-circular-ref"],isComplex:!!t["x-complex"],title:t.title||S(u)&&b.baseName(u)||"",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:z(t,s),constraints:B(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,[h]:t[h],"x-enumDescriptions":M(t,"x-enumDescriptions"),get fields(){return A||(A=!0,!e.isCircular&&!e.isComplex&&($(e,"object")||$(e,"array")&&R(t))&&(g=K(r,t,u,l,o,a))),g}};if((t.nullable||t["x-nullable"])&&(Array.isArray(e.type)&&!e.type.some(i=>i===null||i==="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(i=>i===null?"null":i).join(" or "):e.type,e.isCircular)return e;if(t.if&&t.then||t.if&&t.else){const{oneOf:i,oneOfType:O}=H({schema:t,parser:r,pointer:u,options:l,deps:a,refsStack:o});return e.oneOf=i,e.oneOfType=O,e}if(!x&&v(t)!==void 0){const{oneOf:i,discriminatorProp:O}=_({schema:t,parser:r,deps:a,mergedSchema:t,options:l,pointer:u,refsStack:o});return e.oneOf=i,e.discriminatorProp=O,e}else x&&Array.isArray(t.oneOf)&&t.oneOf.find(i=>i.$ref===u)&&delete t.oneOf;if(t.oneOf!==void 0){const{oneOf:i,displayType:O}=k({schemaOneOf:t.oneOf,parser:r,deps:a,options:l,pointer:u,refsStack:o,schema:t});return e.oneOfType="One of",i&&(e.oneOf=i),e.displayType=O,t.anyOf!==void 0&&console.warn(`oneOf and anyOf are not supported on the same level. Skipping anyOf at ${u}`),e}if(t.anyOf!==void 0){const{oneOf:i,displayType:O}=k({schemaOneOf:t.anyOf,parser:r,deps:a,options:l,pointer:u,refsStack:o,schema:t});return i&&(e.oneOf=i),e.displayType=O,e.oneOfType="Any of",e}if($(e,"array")){t.items&&!R(t)&&(e.items=I({parser:r,schemaOrRef:t.items,pointer:u+"/items",options:l,baseRefsStack:o,deps:a,absolutePointer:b.join(t.absolutePointer||"",["items"])}));const i=!!(e.items?.isPrimitive&&(e.items.description||e.items.pattern||e.items.constraints.length||e.items.externalDocs||e.items.default!==void 0||e.items.const||e.items.deprecated||e.items.contentEncoding)),O=e.items&&$(e.items,"array")&&e.items.displayType==="any"?"array":e.items?.displayType;e.displayType=t.prefixItems||Array.isArray(t.items)||t.items===!1?"items":L(O||"any"),e.typePrefix=e.items?.typePrefix||"Array of ",i||(e.displayFormat=e.items?.format||"",e.title=e.title||e.items?.title||""),e.isPrimitive=i?!1:e.items?.isPrimitive!==void 0?e.items?.isPrimitive:e.isPrimitive,e.example===void 0&&e.items?.example!==void 0&&!i&&(e.example=[e.items.example]);const P=t.prefixItems||(Array.isArray(t.items)?t.items:[]);if(Array.isArray(e.example)&&e.example.length&&P.length&&e.example.length<=P.length&&(e.example=void 0),e.items?.isPrimitive&&!i&&(e.enum=e.items.enum,e["x-enumDescriptions"]=M(e.items,"x-enumDescriptions")),Array.isArray(e.type)){const F=e.type.filter(E=>E!=="array");F.length&&(e.displayType+=` or ${F.join(" or ")}`)}}return l.showExtensions&&(e.extensions=q(t,l.showExtensions)),e}function _({schema:r,parser:n,pointer:m,options:l,refsStack:x,deps:p,mergedSchema:f}){const a=v(r),y=a?.propertyName,d=n.findDerived([...f["x-parentRefs"]||[],m]);if(r.oneOf)for(const e of r.oneOf){if(e.$ref===void 0)continue;const i=b.baseName(e.$ref);d[e.$ref]=i}const c=a?.mapping||{},u=a?.["x-explicitMappingOnly"]??Object.keys(c).length>0,o={};for(const e in c){const i=c[e];Array.isArray(o[i])?o[i].push(e):o[i]=[e]}const t=u?{...o}:{...d,...o};let s=[];for(const e of Object.keys(t)){const i=t[e];if(Array.isArray(i))for(const O of i)s.push({$ref:e,name:O});else s.push({$ref:e,name:i})}if(a?.defaultMapping){const e=s.findIndex(O=>O.name===b.baseName(a.defaultMapping)),i="Default mapping";~e?s[e]={$ref:a.defaultMapping,name:i,isDefaultMapping:!0}:s.push({$ref:a.defaultMapping,name:i,isDefaultMapping:!0})}const g=Object.keys(c);return g.length!==0&&(s=s.sort((e,i)=>{if(e.isDefaultMapping&&!i.isDefaultMapping)return 1;if(!e.isDefaultMapping&&i.isDefaultMapping)return-1;const O=g.indexOf(e.name),P=g.indexOf(i.name);return O<0&&P<0?e.name.localeCompare(i.name):O<0?1:P<0?-1:O-P})),{oneOf:s.map(({$ref:e,name:i,isDefaultMapping:O},P)=>{const F=I({parser:n,schemaOrRef:{$ref:e},pointer:e,options:l,isChild:!0,isDefaultMapping:O,baseRefsStack:x.slice(0,-1),deps:{...p,parentFieldFullPath:p.parentFieldFullPath?p.parentFieldFullPath+"&d="+P:"&d="+P.toString()},absolutePointer:f.absolutePointer});return F.title=i,F}),discriminatorProp:y}}function k({schemaOneOf:r,parser:n,refsStack:m,pointer:l,schema:x,options:p,deps:f}){const a=r.map((d,c)=>{const{resolved:u,refsStack:o}=n.deref(d,m,!0),t=n.mergeAllOf(u,l+"/oneOf/"+c,o),s=S(d.$ref)&&!t.title?b.baseName(d.$ref):`${t.title||""}${t.const&&JSON.stringify(t.const)||""}`;return I({parser:n,schemaOrRef:{...t,title:s,allOf:[{...x,oneOf:void 0,anyOf:void 0}],discriminator:u.allOf?void 0:t.discriminator},pointer:d.$ref||l+"/oneOf/"+c,options:p,baseRefsStack:o,deps:{...f,parentFieldFullPath:f.parentFieldFullPath?f.parentFieldFullPath+"&oneOf="+c:"&oneOf="+c.toString()}})}),y=[...new Set(a.map(d=>{let c=d.typePrefix+(d.title&&!p.hideSchemaTitles?`${d.title} (${d.displayType})`:d.displayType);return c.indexOf(" or ")>-1&&(c=`(${c})`),c}))].join(" or ");return{oneOf:a,displayType:y}}function H({schema:r,parser:n,pointer:m,options:l,refsStack:x,deps:p}){const{if:f,else:a={},then:y={},...d}=r;return{oneOf:[{allOf:[d,y,f],title:f&&f["x-displayName"]||f?.title||"case 1"},{allOf:[d,a],title:a&&a["x-displayName"]||a?.title||"case 2"}].map((t,s)=>I({parser:n,schemaOrRef:{...t},pointer:m+"/oneOf/"+s,options:l,baseRefsStack:x,deps:{...p,parentFieldFullPath:p.parentFieldFullPath?p.parentFieldFullPath+"&oneOf="+s:"&oneOf="+s.toString()}})),oneOfType:"One of"}}function j(r,n,m){return r||(console.warn(`Field "${n}" is invalid, skipping.
2
+ Field must be an object but got ${typeof r} at "${m}"`),{})}function K(r,n,m,l,x,p){let f=n.properties||($(n,"array")?n.prefixItems||n.items:void 0)||{};const a=n.patternProperties||{},y=n.additionalProperties||n.unevaluatedProperties,d=n.prefixItems?n.items:n.additionalItems,c=n.default||{},u=!!n.properties||Array.isArray(n.example)&&n.example.length>0&&n.example.length<=Object.keys(f).length;let o=Object.keys(f).map(t=>{const s=j(f[t],t,m),g=n.required===void 0?!1:n.required.indexOf(t)>-1,A=u?n.example?.[t]:void 0,e=n.properties?s.example!==void 0?s.example:A:A!==void 0?A:s.example;return T(r,{name:n.properties?t:`[${t}]`,required:g,schema:{...s,example:e,default:s.default===void 0&&c?c[t]:s.default}},m+"/properties/"+t,l,p,x,b.join(n.absolutePointer||"",["properties",t]))});return l.sortRequiredPropsFirst&&(o=V(o,n.required)),o.push(...Object.keys(a).map(t=>{const s=j(a[t],t,m);return T(r,{name:t,required:!1,schema:s,kind:"patternProperties"},`${m}/patternProperties/${t}`,l,p,x)})),(D(y)||y===!0)&&o.push(T(r,{name:(D(y)&&y["x-additionalPropertiesName"]||"property name").concat("*"),required:!1,schema:y===!0?{}:y,kind:"additionalProperties"},m+"/additionalProperties",l,p,x,b.join(n.absolutePointer||"",["additionalProperties"]))),o.push(...Y({parser:r,schema:d,fieldsCount:o.length,$ref:m,options:l,refsStack:x,deps:p})),J(o)}function Y({parser:r,schema:n=!1,fieldsCount:m,$ref:l,options:x,refsStack:p,deps:f}){return typeof n=="boolean"?n?[T(r,{name:`[${m}...]`,schema:{},kind:"additionalItems"},`${l}/additionalItems`,x,f,p)]:[]:Array.isArray(n)?[...n.map((a,y)=>T(r,{name:`[${m+y}]`,schema:a,kind:"additionalItems"},`${l}/additionalItems/${y}`,x,f,p))]:D(n)?[T(r,{name:`[${m}...]`,schema:n,kind:"additionalItems"},`${l}/additionalItems`,x,f,p)]:[]}function v(r){return r.discriminator||r["x-discriminator"]}function $(r,n){return r.type===n||Array.isArray(r.type)&&r.type.includes(n)}function R(r){return!!(Array.isArray(r.items)||Array.isArray(r.prefixItems))}export{I as getSchema};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redocly/openapi-docs",
3
- "version": "3.24.0-next.5",
3
+ "version": "3.24.0-next.6",
4
4
  "description": "Redocly OpenAPI Docs",
5
5
  "type": "module",
6
6
  "main": "lib/index.js",
@@ -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.52.0",
42
+ "@redocly/config": "0.53.0",
43
43
  "@redocly/redoc-opentelemetry": "0.2.2",
44
- "@redocly/replay": "0.27.0-next.4"
44
+ "@redocly/replay": "0.27.0-next.5"
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.10",
74
- "@redocly/theme": "0.68.0-next.3"
74
+ "@redocly/theme": "0.68.0-next.4"
75
75
  },
76
76
  "scripts": {
77
77
  "start": "pnpm run copy-highlight-hook && vite",