@redocly/openapi-docs 0.0.0-react18-20231120182601 → 0.74.2-pingfed.1

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 (74) hide show
  1. package/dist/console.redocly-openapi-docs.min.js +104 -105
  2. package/dist/oauth2-redirect.js +5 -5
  3. package/dist/redocly-openapi-docs.min.js +1322 -1224
  4. package/lib/components/ContentItems/ContentItems.js +1 -1
  5. package/lib/components/Endpoint/ServerList.js +1 -1
  6. package/lib/components/Fields/DescriptionEnums.js +1 -1
  7. package/lib/components/Fields/FieldDetails.js +1 -1
  8. package/lib/components/OperationItem/OperationItem.js +3 -1
  9. package/lib/components/SeeMore/SeeMore.js +1 -1
  10. package/lib/components/rightPanel/CodemirrorInput/helpers.js +1 -1
  11. package/lib/components/rightPanel/CodemirrorInput/styled.js +1 -1
  12. package/lib/components/rightPanel/Console/Console.js +1 -1
  13. package/lib/models/security.js +1 -1
  14. package/lib/services/code-samples/generator.js +1 -1
  15. package/lib/services/code-samples/httpsnippet/helpers/code-builder.js +1 -1
  16. package/lib/services/code-samples/httpsnippet/helpers/constants.d.ts +1 -0
  17. package/lib/services/code-samples/httpsnippet/helpers/constants.js +1 -1
  18. package/lib/services/code-samples/httpsnippet/helpers/mocks/code-helpers-mock.d.ts +2 -0
  19. package/lib/services/code-samples/httpsnippet/helpers/mocks/code-helpers-mock.js +1 -1
  20. package/lib/services/code-samples/httpsnippet/targets/csharp/httpclient.js +1 -1
  21. package/lib/services/code-samples/httpsnippet/targets/csharpNewtonsoft/httpclient.d.ts +10 -0
  22. package/lib/services/code-samples/httpsnippet/targets/csharpNewtonsoft/httpclient.js +2 -0
  23. package/lib/services/code-samples/httpsnippet/targets/csharpNewtonsoft/index.d.ts +10 -0
  24. package/lib/services/code-samples/httpsnippet/targets/csharpNewtonsoft/index.js +2 -0
  25. package/lib/services/code-samples/httpsnippet/targets/index.d.ts +9 -0
  26. package/lib/services/code-samples/httpsnippet/targets/index.js +1 -1
  27. package/lib/services/code-samples/types.d.ts +5 -2
  28. package/lib/services/labels/LabelsService.js +1 -1
  29. package/lib/services/labels/types.d.ts +1 -0
  30. package/lib/standalone.d.ts +1 -1
  31. package/lib/standalone.js +1 -1
  32. package/lib/utils/helpers.d.ts +2 -0
  33. package/lib/utils/helpers.js +1 -1
  34. package/lib/utils/openapi.js +1 -1
  35. package/lib/utils/path.d.ts +1 -0
  36. package/lib/utils/path.js +1 -1
  37. package/lib/utils/typeGuards.d.ts +1 -0
  38. package/lib/utils/typeGuards.js +1 -1
  39. package/lib-esm/components/ContentItems/ContentItems.js +1 -1
  40. package/lib-esm/components/Endpoint/ServerList.js +1 -1
  41. package/lib-esm/components/Fields/DescriptionEnums.js +1 -1
  42. package/lib-esm/components/Fields/FieldDetails.js +1 -1
  43. package/lib-esm/components/OperationItem/OperationItem.js +3 -1
  44. package/lib-esm/components/SeeMore/SeeMore.js +1 -1
  45. package/lib-esm/components/rightPanel/CodemirrorInput/helpers.js +1 -1
  46. package/lib-esm/components/rightPanel/CodemirrorInput/styled.js +1 -1
  47. package/lib-esm/components/rightPanel/Console/Console.js +1 -1
  48. package/lib-esm/models/security.js +1 -1
  49. package/lib-esm/services/code-samples/generator.js +1 -1
  50. package/lib-esm/services/code-samples/httpsnippet/helpers/code-builder.js +1 -1
  51. package/lib-esm/services/code-samples/httpsnippet/helpers/constants.d.ts +1 -0
  52. package/lib-esm/services/code-samples/httpsnippet/helpers/constants.js +1 -1
  53. package/lib-esm/services/code-samples/httpsnippet/helpers/mocks/code-helpers-mock.d.ts +2 -0
  54. package/lib-esm/services/code-samples/httpsnippet/helpers/mocks/code-helpers-mock.js +1 -1
  55. package/lib-esm/services/code-samples/httpsnippet/targets/csharp/httpclient.js +1 -1
  56. package/lib-esm/services/code-samples/httpsnippet/targets/csharpNewtonsoft/httpclient.d.ts +10 -0
  57. package/lib-esm/services/code-samples/httpsnippet/targets/csharpNewtonsoft/httpclient.js +2 -0
  58. package/lib-esm/services/code-samples/httpsnippet/targets/csharpNewtonsoft/index.d.ts +10 -0
  59. package/lib-esm/services/code-samples/httpsnippet/targets/csharpNewtonsoft/index.js +2 -0
  60. package/lib-esm/services/code-samples/httpsnippet/targets/index.d.ts +9 -0
  61. package/lib-esm/services/code-samples/httpsnippet/targets/index.js +1 -1
  62. package/lib-esm/services/code-samples/types.d.ts +5 -2
  63. package/lib-esm/services/labels/LabelsService.js +1 -1
  64. package/lib-esm/services/labels/types.d.ts +1 -0
  65. package/lib-esm/standalone.d.ts +1 -1
  66. package/lib-esm/standalone.js +1 -1
  67. package/lib-esm/utils/helpers.d.ts +2 -0
  68. package/lib-esm/utils/helpers.js +1 -1
  69. package/lib-esm/utils/openapi.js +1 -1
  70. package/lib-esm/utils/path.d.ts +1 -0
  71. package/lib-esm/utils/path.js +1 -1
  72. package/lib-esm/utils/typeGuards.d.ts +1 -0
  73. package/lib-esm/utils/typeGuards.js +1 -1
  74. package/package.json +52 -52
@@ -1,2 +1,2 @@
1
- import javascript from"./javascript";import node from"./node";import python from"./python";import shell from"./shell";import java8 from"./java8";import java from"./java";import csharp from"./csharp";import go from"./go";import php from"./php";import ruby from"./ruby";import r from"./r";const targets={javascript:javascript,node:node,python:python,shell:shell,java8:java8,java:java,csharp:csharp,go:go,php:php,ruby:ruby,r:r};export default targets;
1
+ import javascript from"./javascript";import node from"./node";import python from"./python";import shell from"./shell";import java8 from"./java8";import java from"./java";import csharp from"./csharp";import csharpNewtonsoft from"./csharpNewtonsoft";import go from"./go";import php from"./php";import ruby from"./ruby";import r from"./r";const targets={javascript:javascript,node:node,python:python,shell:shell,java8:java8,java:java,csharp:csharp,csharpNewtonsoft:csharpNewtonsoft,go:go,php:php,ruby:ruby,r:r};export default targets;
2
2
  //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- export type Languages = 'JavaScript' | 'Node.js' | 'curl' | 'Java8+Apache' | 'Java' | 'Python' | 'Go' | 'PHP' | 'C#' | 'Ruby' | 'R';
1
+ export type Languages = 'JavaScript' | 'Node.js' | 'curl' | 'Java8+Apache' | 'Java' | 'Python' | 'Go' | 'PHP' | 'C#' | 'C#+Newtonsoft' | 'Ruby' | 'R';
2
2
  export interface BasicLanguageOptions {
3
3
  indent?: string;
4
4
  withImports?: boolean;
@@ -39,6 +39,9 @@ export interface JavaCodeSampleConfig extends CodeSampleBasicConfig {
39
39
  export interface CSharpCodeSampleConfig extends CodeSampleBasicConfig {
40
40
  lang: 'C#';
41
41
  }
42
+ export interface CSharpNewtonsoftCodeSampleConfig extends CodeSampleBasicConfig {
43
+ lang: 'C#+Newtonsoft';
44
+ }
42
45
  export interface PHPCodeSampleConfig extends CodeSampleBasicConfig {
43
46
  lang: 'PHP';
44
47
  }
@@ -48,7 +51,7 @@ export interface RubyCodeSampleConfig extends CodeSampleBasicConfig {
48
51
  export interface RCodeSampleConfig extends CodeSampleBasicConfig {
49
52
  lang: 'R';
50
53
  }
51
- export type CodeSampleConfig = CurlCodeSampleConfig | JavaScriptCodeSampleConfig | NodeJsCodeSampleConfig | PythonCodeSampleConfig | Java8CodeSampleConfig | JavaCodeSampleConfig | CSharpCodeSampleConfig | PHPCodeSampleConfig | GoCodeSampleConfig | RubyCodeSampleConfig | RCodeSampleConfig;
54
+ export type CodeSampleConfig = CurlCodeSampleConfig | JavaScriptCodeSampleConfig | NodeJsCodeSampleConfig | PythonCodeSampleConfig | Java8CodeSampleConfig | JavaCodeSampleConfig | CSharpCodeSampleConfig | CSharpNewtonsoftCodeSampleConfig | PHPCodeSampleConfig | GoCodeSampleConfig | RubyCodeSampleConfig | RCodeSampleConfig;
52
55
  /**
53
56
  * Code Samples Generator rules
54
57
  * - Reference docs always displays all user custom x-code-samples
@@ -1,2 +1,2 @@
1
- const labels={enum:"Enum",enumSingleValue:"Value",enumArray:"Items",default:"Default",deprecated:"Deprecated",example:"Example",examples:"Examples",recursive:"Recursive",arrayOf:"Array of ",webhook:"Event",const:"Value",authorizations:"Security",tryItBody:"Body",tryItParameters:"Parameters",tryItAuth:"Security",tryItAuthBasicUsername:"Username",tryItAuthBasicPassword:"Password",download:"Download",downloadSpecification:"Download OpenAPI specification",request:"Request",responses:"Responses",callbackResponses:"Callback responses",callbacks:"Callbacks",requestSamples:"Request samples",responseSamples:"Response samples"};export function setRedocLabels(e){Object.assign(labels,e)}export function l(e,s){const a=labels[e];return void 0!==s?a[s]:a}
1
+ const labels={enum:"Enum",enumValue:"Enum Value",enumSingleValue:"Value",enumArray:"Items",default:"Default",deprecated:"Deprecated",example:"Example",examples:"Examples",recursive:"Recursive",arrayOf:"Array of ",webhook:"Event",const:"Value",authorizations:"Security",tryItBody:"Body",tryItParameters:"Parameters",tryItAuth:"Security",tryItAuthBasicUsername:"Username",tryItAuthBasicPassword:"Password",download:"Download",downloadSpecification:"Download OpenAPI specification",request:"Request",responses:"Responses",callbackResponses:"Callback responses",callbacks:"Callbacks",requestSamples:"Request samples",responseSamples:"Response samples"};export function setRedocLabels(e){Object.assign(labels,e)}export function l(e,s){const a=labels[e];return void 0!==s?a[s]:a}
2
2
  //# sourceMappingURL=LabelsService.js.map
@@ -1,5 +1,6 @@
1
1
  export interface LabelsConfig {
2
2
  enum: string;
3
+ enumValue: string;
3
4
  enumSingleValue: string;
4
5
  enumArray: string;
5
6
  default: string;
@@ -22,7 +22,7 @@ export { setSecurityDetails, setParameterValue, setSecurityDetailsVariants } fro
22
22
  export declare function toggleLayout(layout?: LayoutVariant): void;
23
23
  export declare function toggleRightPanel(showRightPanelToggle?: boolean): void;
24
24
  export declare function hydrate(store: StoreProviderProps, element?: Element | null): void;
25
- export declare function init(definitionOrDefinitionUrl: string | OpenAPIDefinition | SpecVersions, options?: RawOptions, element?: Element | null, callback?: () => void): void;
25
+ export declare function init(definitionOrDefinitionUrl: string | OpenAPIDefinition | SpecVersions, options?: RawOptions, element?: Element | null): void;
26
26
  export declare function setPublicPath(path: string): void;
27
27
  export declare const version: string;
28
28
  export declare const revision: string;
@@ -1,2 +1,2 @@
1
- import"core-js/es/array/find-index";import"core-js/es/array/find";import"core-js/es/array/includes";import"core-js/es/map";import"core-js/es/number/is-integer";import"core-js/es/object/assign";import"core-js/es/object/entries";import"core-js/es/object/is";import"core-js/es/object/values";import"core-js/es/promise";import"core-js/es/string/ends-with";import"core-js/es/string/starts-with";import"core-js/es/symbol";import"unfetch/polyfill/index";import"url-polyfill";import{dirname}from"path";import React from"react";import{hydrate as hydrateComponent,render}from"react-dom";import{LayoutVariant}from"@redocly/theme";import{writeAtom,readAtom}from"./jotai/nexus";import{querySelector,IS_BROWSER,getJsUrl}from"./utils";import{RedoclyOpenAPIDocs,RedoclyOpenAPIDocsStandalone}from"./components";import{RedoclyOpenAPIDocsMultiStandalone}from"./components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocsMultiStandalone";import{appLocalStore,appSessionStore}from"./jotai/app";export{setSecurityDetails,setParameterValue,setSecurityDetailsVariants}from"./utils";export function toggleLayout(e=LayoutVariant.THREE_PANEL){const t=readAtom(appLocalStore);writeAtom(appLocalStore,Object.assign(Object.assign({},t),{layout:e}))}export function toggleRightPanel(e){const t=readAtom(appSessionStore);writeAtom(appSessionStore,Object.assign(Object.assign({},t),{showRightPanelToggle:Boolean(e)}))}const url=getJsUrl(),__dirname=url?dirname(url)+"/":"";function attributesMap(e){const t={},o=e.attributes;for(let e=0;e<o.length;e++){const r=o[e];t[r.name]=r.value}return t}function parseOptionsFromElement(e){const t=attributesMap(e),o={};for(const e in t){o[e.replace(/-(.)/g,((e,t)=>t.toUpperCase()))]=t[e]}return o}export function hydrate(e,t=document.querySelector("redoc")){hydrateComponent(React.createElement(RedoclyOpenAPIDocs,{store:e}),t)}export function init(e,t={},o=querySelector("redoc"),r){if(null===o)throw new Error('"element" argument is not provided and <redoc> tag is not found on the page');let n,i;"object"==typeof e&&"versions"in e?render(React.createElement(RedoclyOpenAPIDocsMultiStandalone,{definitions:e,options:Object.assign(Object.assign({},t),parseOptionsFromElement(o))},["Loading..."]),o,r):("string"==typeof e?n=e:"object"==typeof e&&(i=e),render(React.createElement(RedoclyOpenAPIDocsStandalone,{definition:i,definitionUrl:n,options:Object.assign(Object.assign({},t),parseOptionsFromElement(o))},["Loading..."]),o,r))}export function setPublicPath(e){__webpack_public_path__=e}export const version=__REDOCLY_API_REFERENCE_VERSION__;export const revision=__REDOCLY_API_REFERENCE_REVISION__;function autoInit(){const e=querySelector("redoc");if(!e)return;const t=e.getAttribute("spec-url");t&&init(t,{},e)}IS_BROWSER&&setPublicPath(__dirname),autoInit();
1
+ import"core-js/es/array/find-index";import"core-js/es/array/find";import"core-js/es/array/includes";import"core-js/es/map";import"core-js/es/number/is-integer";import"core-js/es/object/assign";import"core-js/es/object/entries";import"core-js/es/object/is";import"core-js/es/object/values";import"core-js/es/promise";import"core-js/es/string/ends-with";import"core-js/es/string/starts-with";import"core-js/es/symbol";import"unfetch/polyfill/index";import"url-polyfill";import{dirname}from"path";import React from"react";import{createRoot,hydrateRoot}from"react-dom/client";import{LayoutVariant}from"@redocly/theme";import{writeAtom,readAtom}from"./jotai/nexus";import{querySelector,IS_BROWSER,getJsUrl}from"./utils";import{RedoclyOpenAPIDocs,RedoclyOpenAPIDocsStandalone}from"./components";import{RedoclyOpenAPIDocsMultiStandalone}from"./components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocsMultiStandalone";import{appLocalStore,appSessionStore}from"./jotai/app";export{setSecurityDetails,setParameterValue,setSecurityDetailsVariants}from"./utils";export function toggleLayout(e=LayoutVariant.THREE_PANEL){const t=readAtom(appLocalStore);writeAtom(appLocalStore,Object.assign(Object.assign({},t),{layout:e}))}export function toggleRightPanel(e){const t=readAtom(appSessionStore);writeAtom(appSessionStore,Object.assign(Object.assign({},t),{showRightPanelToggle:Boolean(e)}))}const url=getJsUrl(),__dirname=url?dirname(url)+"/":"";function attributesMap(e){const t={},o=e.attributes;for(let e=0;e<o.length;e++){const r=o[e];t[r.name]=r.value}return t}function parseOptionsFromElement(e){const t=attributesMap(e),o={};for(const e in t){o[e.replace(/-(.)/g,((e,t)=>t.toUpperCase()))]=t[e]}return o}export function hydrate(e,t=document.querySelector("redoc")){hydrateRoot(t,React.createElement(RedoclyOpenAPIDocs,{store:e}))}export function init(e,t={},o=querySelector("redoc")){if(null===o)throw new Error('"element" argument is not provided and <redoc> tag is not found on the page');let r,n;if("object"==typeof e&&"versions"in e){return void createRoot(o).render(React.createElement(RedoclyOpenAPIDocsMultiStandalone,{definitions:e,options:Object.assign(Object.assign({},t),parseOptionsFromElement(o))},["Loading..."]))}"string"==typeof e?r=e:"object"==typeof e&&(n=e);createRoot(o).render(React.createElement(RedoclyOpenAPIDocsStandalone,{definition:n,definitionUrl:r,options:Object.assign(Object.assign({},t),parseOptionsFromElement(o))},["Loading..."]))}export function setPublicPath(e){__webpack_public_path__=e}export const version=__REDOCLY_API_REFERENCE_VERSION__;export const revision=__REDOCLY_API_REFERENCE_REVISION__;function autoInit(){const e=querySelector("redoc");if(!e)return;const t=e.getAttribute("spec-url");t&&init(t,{},e)}IS_BROWSER&&setPublicPath(__dirname),autoInit();
2
2
  //# sourceMappingURL=standalone.js.map
@@ -45,3 +45,5 @@ export declare function getWindowReferenceOptions<T>(option: string): T | null;
45
45
  export declare function getJsUrl(): string;
46
46
  export declare const normalizeText: (text?: string | GenericObject) => string;
47
47
  export declare const getValueFromMdParsedExtension: (item: GenericObject, key: 'description' | 'summary' | 'x-summary' | 'x-enumDescriptions') => any;
48
+ export declare function isLastInArray(arr: Array<unknown>, index: number): boolean;
49
+ export declare function isLastProperty(obj: Object, key: string): boolean;
@@ -1,2 +1,2 @@
1
- import{format,parse}from"url";import{ZERO_BREAKPOINT}from"./media-css";import{isNamedDefinition}from"./openapi";import{JsonPointer}from"./JsonPointer";import{IS_BROWSER}from"./dom";import{isString}from"./typeGuards";export function mapWithLast(e,t){const r=[];for(let n=0;n<e.length-1;n++)r.push(t(e[n],!1));return 0!==e.length&&r.push(t(e[e.length-1],!0)),r}export function mapValues(e,t){const r={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(r[n]=t(e[n],n,e));return r}export function flattenByProp(e,t){const r=[],n=e=>{for(const o of e)r.push(o),o[t]&&n(o[t])};return n(e),r}export function stripTrailingSlash(e){return e.endsWith("/")?e.substring(0,e.length-1):e}export function isNumeric(e){return!isNaN(parseFloat(e))&&isFinite(e)}export function appendToMdHeading(e,t,r){const n=new RegExp(`(^|\\n)#\\s?${t}\\s*\\n`,"i"),o=new RegExp(`((\\n|^)#\\s*${t}\\s*(\\n|$)(?:.|\\n)*?)(\\n#|$)`,"i");if(n.test(e))return e.replace(o,`$1\n\n${r}\n$4`);{const n=""===e||e.endsWith("\n\n")?"":e.endsWith("\n")?"\n":"\n\n";return`${e}${n}# ${t}\n\n${r}`}}export const mergeObjects=(e,...t)=>{if(!t.length)return e;const r=t.shift();return void 0===r?e:(isMergeableObject(e)&&isMergeableObject(r)&&Object.keys(r).forEach((t=>{isMergeableObject(r[t])?(e[t]||(e[t]={}),["string","number"].includes(typeof e[t])&&(r[t][ZERO_BREAKPOINT]||0===r[t][ZERO_BREAKPOINT]||console.warn(`Theme resolver: using default value of "${e[t]}" for "${t}". This is not recommended. Prefer adding default value by providing "${ZERO_BREAKPOINT}" property to ${JSON.stringify(r[t])}.`),e[t]={[ZERO_BREAKPOINT]:e[t]}),mergeObjects(e[t],r[t])):e[t]=r[t]})),mergeObjects(e,...t))};export const isObject=e=>null!==e&&"object"==typeof e;export const isArrayOfObjects=e=>Array.isArray(e)&&e.some((e=>isObject(e)));export const deleteEmptyArrayItem=e=>e.filter((e=>!!e));export const isMergeableObject=e=>isObject(e)&&!Array.isArray(e);export function isAbsoluteUrl(e){return/(?:^[a-z][a-z0-9+.-]*:|\/\/)/i.test(e)}export function resolveUrl(e,t){let r;if(t.startsWith("//")){const{protocol:n}=parse(e);r=`${n||"https:"}${t}`}else if(isAbsoluteUrl(t))r=t;else if(t.startsWith("/")){const n=parse(e);r=format(Object.assign(Object.assign({},n),{pathname:t}))}else r=stripTrailingSlash(e)+"/"+t;return stripTrailingSlash(r)}export function getBasePath(e){try{return parseURL(e).pathname}catch(t){return e}}export function titleize(e){return e.charAt(0).toUpperCase()+e.slice(1)}export function removeQueryStringAndHash(e){try{const t=parseURL(e);return t.search="",t.hash="",t.toString()}catch(t){return e}}function parseURL(e){return"undefined"==typeof URL?new(require("url").URL)(e):new URL(e)}export function escapeHTMLAttrChars(e){return e.replace(/["\\]/g,"\\$&")}export function unescapeHTMLChars(e){return e.replace(/&#(\d+);/g,((e,t)=>String.fromCharCode(parseInt(t,10)))).replace(/&amp;/g,"&").replace(/&quot;/g,'"')}export function sanitizeItemId(e){return e&&e.replace(/#/g,"_")}export function useSchemaTitle(e,t){return t||isNamedDefinition(e)&&JsonPointer.baseName(e)||""}export function get(e={},t,r){return"string"==typeof t&&(t=t.split(".")),t.reduce(((e,t)=>e&&e[t]?e[t]:r),e)}export function joinStringFactory(e){return(...t)=>t.filter(Boolean).join(e)}export const dottedString=joinStringFactory(".");export function getWindowReferenceOptions(e){var t;return IS_BROWSER?null===(t=null===window||void 0===window?void 0:window.REFERENCE_DOCS_OPTIONS)||void 0===t?void 0:t[e]:null}export function getJsUrl(){var e;if(!IS_BROWSER)return"";const t=+new Date+Math.random();try{return document.currentScript&&(document.currentScript.async||document.currentScript.defer)||document.write(`<script id="dummy${t}"><\/script>`),(null===(e=document.getElementById("dummy"+t))||void 0===e?void 0:e.previousSibling).src}catch(e){return""}}export const normalizeText=e=>isString(e)?e:null==e?void 0:e.raw;export const getValueFromMdParsedExtension=(e,t)=>{const r=e[`x-parsed-md-${t}`]||e[t];if("x-enumDescriptions"!==t)return r;let n={};for(const e in r)e.startsWith("x-parsed-md")||(n[e]=r[`x-parsed-md-${e}`]||r[e]);return Object.keys(n).length?n:r};
1
+ import{format,parse}from"url";import{ZERO_BREAKPOINT}from"./media-css";import{isNamedDefinition}from"./openapi";import{JsonPointer}from"./JsonPointer";import{IS_BROWSER}from"./dom";import{isString}from"./typeGuards";export function mapWithLast(e,t){const r=[];for(let n=0;n<e.length-1;n++)r.push(t(e[n],!1));return 0!==e.length&&r.push(t(e[e.length-1],!0)),r}export function mapValues(e,t){const r={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(r[n]=t(e[n],n,e));return r}export function flattenByProp(e,t){const r=[],n=e=>{for(const o of e)r.push(o),o[t]&&n(o[t])};return n(e),r}export function stripTrailingSlash(e){return e.endsWith("/")?e.substring(0,e.length-1):e}export function isNumeric(e){return!isNaN(parseFloat(e))&&isFinite(e)}export function appendToMdHeading(e,t,r){const n=new RegExp(`(^|\\n)#\\s?${t}\\s*\\n`,"i"),o=new RegExp(`((\\n|^)#\\s*${t}\\s*(\\n|$)(?:.|\\n)*?)(\\n#|$)`,"i");if(n.test(e))return e.replace(o,`$1\n\n${r}\n$4`);{const n=""===e||e.endsWith("\n\n")?"":e.endsWith("\n")?"\n":"\n\n";return`${e}${n}# ${t}\n\n${r}`}}export const mergeObjects=(e,...t)=>{if(!t.length)return e;const r=t.shift();return void 0===r?e:(isMergeableObject(e)&&isMergeableObject(r)&&Object.keys(r).forEach((t=>{isMergeableObject(r[t])?(e[t]||(e[t]={}),["string","number"].includes(typeof e[t])&&(r[t][ZERO_BREAKPOINT]||0===r[t][ZERO_BREAKPOINT]||console.warn(`Theme resolver: using default value of "${e[t]}" for "${t}". This is not recommended. Prefer adding default value by providing "${ZERO_BREAKPOINT}" property to ${JSON.stringify(r[t])}.`),e[t]={[ZERO_BREAKPOINT]:e[t]}),mergeObjects(e[t],r[t])):e[t]=r[t]})),mergeObjects(e,...t))};export const isObject=e=>null!==e&&"object"==typeof e;export const isArrayOfObjects=e=>Array.isArray(e)&&e.some((e=>isObject(e)));export const deleteEmptyArrayItem=e=>e.filter((e=>!!e));export const isMergeableObject=e=>isObject(e)&&!Array.isArray(e);export function isAbsoluteUrl(e){return/(?:^[a-z][a-z0-9+.-]*:|\/\/)/i.test(e)}export function resolveUrl(e,t){let r;if(t.startsWith("//")){const{protocol:n}=parse(e);r=`${n||"https:"}${t}`}else if(isAbsoluteUrl(t))r=t;else if(t.startsWith("/")){const n=parse(e);r=format(Object.assign(Object.assign({},n),{pathname:t}))}else r=stripTrailingSlash(e)+"/"+t;return stripTrailingSlash(r)}export function getBasePath(e){try{return parseURL(e).pathname}catch(t){return e}}export function titleize(e){return e.charAt(0).toUpperCase()+e.slice(1)}export function removeQueryStringAndHash(e){try{const t=parseURL(e);return t.search="",t.hash="",t.toString()}catch(t){return e}}function parseURL(e){return"undefined"==typeof URL?new(require("url").URL)(e):new URL(e)}export function escapeHTMLAttrChars(e){return e.replace(/["\\]/g,"\\$&")}export function unescapeHTMLChars(e){return e.replace(/&#(\d+);/g,((e,t)=>String.fromCharCode(parseInt(t,10)))).replace(/&amp;/g,"&").replace(/&quot;/g,'"')}export function sanitizeItemId(e){return e&&e.replace(/#/g,"_")}export function useSchemaTitle(e,t){return t||isNamedDefinition(e)&&JsonPointer.baseName(e)||""}export function get(e={},t,r){return"string"==typeof t&&(t=t.split(".")),t.reduce(((e,t)=>e&&e[t]?e[t]:r),e)}export function joinStringFactory(e){return(...t)=>t.filter(Boolean).join(e)}export const dottedString=joinStringFactory(".");export function getWindowReferenceOptions(e){var t;return IS_BROWSER?null===(t=null===window||void 0===window?void 0:window.REFERENCE_DOCS_OPTIONS)||void 0===t?void 0:t[e]:null}export function getJsUrl(){var e;if(!IS_BROWSER)return"";const t=+new Date+Math.random();try{return document.currentScript&&(document.currentScript.async||document.currentScript.defer)||document.write(`<script id="dummy${t}"><\/script>`),(null===(e=document.getElementById("dummy"+t))||void 0===e?void 0:e.previousSibling).src}catch(e){return""}}export const normalizeText=e=>isString(e)?e:null==e?void 0:e.raw;export const getValueFromMdParsedExtension=(e,t)=>{const r=e[`x-parsed-md-${t}`]||e[t];if("x-enumDescriptions"!==t)return r;let n={};for(const e in r)e.startsWith("x-parsed-md")||(n[e]=r[`x-parsed-md-${e}`]||r[e]);return Object.keys(n).length?n:r};export function isLastInArray(e,t){return t===e.length-1}export function isLastProperty(e,t){const r=Object.keys(e);return r.indexOf(t)===r.length-1}
2
2
  //# sourceMappingURL=helpers.js.map
@@ -1,2 +1,2 @@
1
- import{dirname}from"path";import UrlTemplate from"url-template";import{IS_BROWSER}from"./dom";import{deleteEmptyArrayItem,isArrayOfObjects,isNumeric,removeQueryStringAndHash,resolveUrl,sanitizeItemId,normalizeText,getValueFromMdParsedExtension}from"./helpers";import{DEFAULT_TAG_SLUG,MediaTypes}from"../constants";import{JsonPointer}from"./JsonPointer";import{joinWithSeparator,Pagination}from"../services";function isWildcardStatusCode(e){return"string"==typeof e&&/\dxx/i.test(e)}export function isStatusCode(e){return"default"===e||isNumeric(e)||isWildcardStatusCode(e)}export function getStatusCodeType(e,r=!1){if("default"===e)return r?"error":"success";let t="string"==typeof e?parseInt(e,10):e;if(isWildcardStatusCode(e)&&(t*=100),t<100||t>599)throw new Error("invalid HTTP code");let i="success";return t>=300&&t<400?i="redirect":t>=400?i="error":t<200&&(i="info"),i}const operationNames={get:!0,post:!0,put:!0,head:!0,patch:!0,delete:!0,options:!0,$ref:!0};export function isOperationName(e){return e in operationNames}export function getOperationName(e){const{operationId:r,pathName:t}=e,i=normalizeText(getValueFromMdParsedExtension(e,"description"));return normalizeText(getValueFromMdParsedExtension(e,"summary"))||r||i&&i.substring(0,50)||t||"<no summary>"}export function getOperationId(e,r,t){var i;return r===Pagination.None&&(null==t?void 0:t.id)?joinWithSeparator(t.id,sanitizeItemId(e.operationId?e.operationId:pointerToId(e.pointer))):(null===(i=e.tags)||void 0===i?void 0:i.length)?sanitizeItemId(e.operationId?e.operationId:pointerToId(e.pointer)):sanitizeItemId(e.operationId?joinWithSeparator(DEFAULT_TAG_SLUG,e.operationId):pointerToId(e.pointer))}function pointerToId(e){return(null==e?void 0:e.startsWith("/"))?e.slice(1,e.length):e}const schemaKeywordTypes={multipleOf:"number",maximum:"number",exclusiveMaximum:"number",minimum:"number",exclusiveMinimum:"number",maxLength:"string",minLength:"string",pattern:"string",contentEncoding:"string",contentMediaType:"string",items:"array",maxItems:"array",minItems:"array",uniqueItems:"array",maxProperties:"object",minProperties:"object",required:"object",additionalProperties:"object",unevaluatedProperties:"object",patternProperties:"object",properties:"object"};export function detectType(e){if(void 0!==e.type&&!Array.isArray(e.type))return e.type;const r=Object.keys(schemaKeywordTypes);for(const t of r){const r=schemaKeywordTypes[t];if(void 0!==e[t])return r}return"any"}export function isPrimitiveType(e,r=e.type){if(e["x-circular-ref"])return!0;if(void 0!==e.oneOf||void 0!==e.anyOf)return!1;if(e.if&&e.then||e.if&&e.else)return!1;let t=!0;const i=Array.isArray(r);return("object"===r||i&&(null==r?void 0:r.includes("object")))&&(t=void 0!==e.properties?0===Object.keys(e.properties).length:void 0===e.additionalProperties&&void 0===e.unevaluatedProperties&&void 0===e.patternProperties),!Array.isArray(e.items)&&!Array.isArray(e.prefixItems)&&(void 0!==e.items&&"boolean"!=typeof e.items&&("array"===r||i&&(null==r?void 0:r.includes("array")))&&(t=isPrimitiveType(e.items,e.items.type)),t)}export function isJsonLike(e){return-1!==e.search(/json/i)}export function isFormUrlEncoded(e){return e===MediaTypes.URL_ENCODED}function delimitedEncodeField(e,r,t){return Array.isArray(e)?e.map((e=>e.toString())).join(t):"object"==typeof e?Object.keys(e).map((r=>`${r}${t}${e[r]}`)).join(t):r+"="+e.toString()}function deepObjectEncodeField(e,r){return Array.isArray(e)?(console.warn("deepObject style cannot be used with array value:"+e.toString()),""):"object"==typeof e?Object.keys(e).map((t=>e[t]?`${r}[${t}]=${e[t]}`:void 0)).filter(Boolean).join("&"):(console.warn("deepObject style cannot be used with non-object value:"+e.toString()),"")}function serializeFormValue(e,r,t){const i="__redoc_param_name__",n=r?"*":"";return UrlTemplate.parse(`{?${i}${n}}`).expand({[i]:t}).substring(1).replace(/__redoc_param_name__/g,e)}function serializeSimpleValue(e,r){const t=e?"*":"",i="__redoc_param_name__",n=UrlTemplate.parse(`{${i}${t}}`);return decodeURIComponent(n.expand({[i]:r}))}export function urlFormEncodePayload(e,r={}){if(Array.isArray(e))throw new Error("Payload must have fields: "+e.toString());return Object.keys(e).map((t=>{const i=e[t],{style:n="form",explode:o=!0}=r[t]||{};switch(n){case"form":return serializeFormValue(t,o,i);case"spaceDelimited":return delimitedEncodeField(i,t,"%20");case"pipeDelimited":return delimitedEncodeField(i,t,"|");case"deepObject":return deepObjectEncodeField(i,t);default:return console.warn("Incorrect or unsupported encoding style: "+n),""}})).join("&")}function serializePathParameter(e,r,t,i){const n=t?"*":"";let o="";"label"===r?o=".":"matrix"===r&&(o=";");const a="__redoc_param_name__";return UrlTemplate.parse(`{${o}${a}${n}}`).expand({[a]:i}).replace(/__redoc_param_name__/g,e)}export function serializeQueryParameter(e,r,t,i){const n=n=>{switch(r){case"form":return serializeFormValue(e,t,n);case"spaceDelimited":return Array.isArray(n)?t?serializeFormValue(e,t,n):`${e}=${n.join("%20")}`:(console.warn("The style spaceDelimited is only applicable to arrays"),"");case"pipeDelimited":return Array.isArray(n)?t?serializeFormValue(e,t,n):`${e}=${n.join("|")}`:(console.warn("The style pipeDelimited is only applicable to arrays"),"");case"deepObject":return!t||Array.isArray(n)||"object"!=typeof n?(console.warn("The style deepObject is only applicable for objects with explode=true"),""):deepObjectEncodeField(n,e);case"simple":return serializeSimpleValue(t,i);default:return console.warn("Unexpected style for query: "+r),""}};return isArrayOfObjects(i)&&(i=deleteEmptyArrayItem(i).map((e=>n(e)))),n(i)}function serializeHeaderParameter(e,r,t){return"simple"===e?serializeSimpleValue(r,t):(console.warn("Unexpected style for header: "+e),"")}function serializeCookieParameter(e,r,t,i){return"form"===r?serializeFormValue(e,t,i):(console.warn("Unexpected style for cookie: "+r),"")}export function serializeParameterValueWithMime(e,r){return isJsonLike(r)?JSON.stringify(e):(console.warn(`Parameter serialization as ${r} is not supported`),"")}export function serializeParameterValue(e,r){const{name:t,style:i,explode:n=!1,serializationMime:o}=e;if(o)switch(e.in){case"path":case"header":return serializeParameterValueWithMime(r,o);case"cookie":case"query":return`${t}=${serializeParameterValueWithMime(r,o)}`;default:return console.warn("Unexpected parameter location: "+e.in),""}if(!i)return console.warn(`Missing style attribute or content for parameter ${t}`),"";switch(e.in){case"path":return serializePathParameter(t,i,n,r);case"query":return serializeQueryParameter(t,i,n,r);case"header":return serializeHeaderParameter(i,n,r);case"cookie":return serializeCookieParameter(t,i,n,r);default:return console.warn("Unexpected parameter location: "+e.in),""}}export function langFromMime(e){return-1!==e.search(/xml/i)?"xml":"clike"}const DEFINITION_NAME_REGEX=/^#\/components\/(schemas|pathItems)\/([^/]+)$/;export function isNamedDefinition(e){return DEFINITION_NAME_REGEX.test(e||"")}export function getDefinitionName(e){var r;return null===(r=null==e?void 0:e.match(DEFINITION_NAME_REGEX))||void 0===r?void 0:r.pop()}function humanizeMultipleOfConstraint(e){if(void 0===e)return;const r=e.toString(10);return/^0\.0*1$/.test(r)?`decimal places <= ${r.split(".")[1].length}`:`multiple of ${r}`}function humanizeRangeConstraint(e,r,t){let i;return void 0!==r&&void 0!==t?i=r===t?`= ${r} ${e}`:`[ ${r} .. ${t} ] ${e}`:void 0!==t?i=`<= ${t} ${e}`:void 0!==r&&(i=1===r?"non-empty":`>= ${r} ${e}`),i}export function humanizeNumberRange(e){var r,t;const i="number"==typeof e.exclusiveMinimum?Math.min(e.exclusiveMinimum,null!==(r=e.minimum)&&void 0!==r?r:1/0):e.minimum,n="number"==typeof e.exclusiveMaximum?Math.max(e.exclusiveMaximum,null!==(t=e.maximum)&&void 0!==t?t:-1/0):e.maximum,o="number"==typeof e.exclusiveMinimum||e.exclusiveMinimum,a="number"==typeof e.exclusiveMaximum||e.exclusiveMaximum;return void 0!==i&&void 0!==n?`${o?"( ":"[ "}${i} .. ${n}${a?" )":" ]"}`:void 0!==n?`${a?"< ":"<= "}${n}`:void 0!==i?`${o?"> ":">= "}${i}`:void 0}export function humanizeConstraints(e){const r=[],t=humanizeRangeConstraint("characters",e.minLength,e.maxLength);void 0!==t&&r.push(t);const i=humanizeRangeConstraint("items",e.minItems,e.maxItems);void 0!==i&&r.push(i);const n=humanizeRangeConstraint(1===e.minProperties&&1===e.maxProperties?"property":"properties",e.minProperties,e.maxProperties);void 0!==n&&r.push(n);const o=humanizeMultipleOfConstraint(e.multipleOf);void 0!==o&&r.push(o);const a=humanizeNumberRange(e);return void 0!==a&&r.push(a),e.uniqueItems&&r.push("unique"),r}export function sortByRequired(e,r=[]){const t=[],i=[],n=[];return e.forEach((e=>{e.required?r.includes(e.name)?i.push(e):n.push(e):t.push(e)})),i.sort(((e,t)=>r.indexOf(e.name)-r.indexOf(t.name))),[...i,...n,...t]}export function sortByField(e,r){return[...e].sort(((e,t)=>e[r].localeCompare(t[r])))}export function mergeParams(e,r=[],t=[],{pathPointer:i,operationPointer:n}){const o={};t.forEach((r=>{({resolved:r}=e.deref(r)),o[r.name+"_"+r.in]=!0}));return[...r.map(((e,r)=>({paramOrRef:e,pointer:JsonPointer.join(i,["parameters",String(r)])}))).filter((({paramOrRef:r})=>(({resolved:r}=e.deref(r)),!o[r.name+"_"+r.in]))),...t.map(((e,r)=>({paramOrRef:e,pointer:JsonPointer.join(n,["parameters",String(r)])})))]}export function mergeSimilarMediaTypes(e){const r={};return Object.keys(e).forEach((t=>{const i=e[t],n=t.split(";")[0].trim();r[n]?r[n]=Object.assign(Object.assign({},r[n]),i):r[n]=i})),r}export function expandDefaultServerVariables(e,r={}){return e.replace(/(?:{)([\w-.]+)(?:})/g,((e,t)=>r[t]&&r[t].default||e))}export function normalizeServers(e,r){const t=void 0===e?removeQueryStringAndHash((()=>{if(!IS_BROWSER)return"";const e=window.location.href;return e.endsWith(".html")?dirname(e):e})()):dirname(e);return 0===r.length&&(r=[{url:"/"}]),r.map((e=>{return Object.assign(Object.assign({},e),{url:(r=e.url,resolveUrl(t,r)),description:e.description||""});var r}))}export const shortenHTTPVerb=e=>({delete:"del",options:"opts"}[e]||e);export function isRedocExtension(e){return e in{"x-circular-ref":!0,"x-parentRefs":!0,"x-refsStack":!0,"x-code-samples":!0,"x-codeSamples":!0,"x-displayName":!0,"x-examples":!0,"x-ignoredHeaderParameters":!0,"x-logo":!0,"x-nullable":!0,"x-servers":!0,"x-tagGroups":!0,"x-traitTag":!0,"x-additionalPropertiesName":!0,"x-explicitMappingOnly":!0,"x-enumDescriptions":!0,"x-hideTryItPanel":!0,"x-tokenEndpointAuthMethod":!0,"x-feedback":!0}||e.startsWith("x-parsed-md-")}export function extractExtensions(e,r){return Object.keys(e).filter((e=>!0===r?e.startsWith("x-")&&!isRedocExtension(e):e.startsWith("x-")&&r.indexOf(e)>-1)).reduce(((r,t)=>(r[t]=e[t],r)),{})}export function pluralizeType(e){return e.split(" or ").map((e=>e.replace(/^(string|object|number|integer|array|boolean)s?( ?.*)/,"$1s$2"))).join(" or ")}export function getContentWithLegacyExamples(e){let r=e.content;const t=e["x-examples"],i=e["x-example"];if(t){r=Object.assign({},r);for(const e of Object.keys(t)){const i=t[e];r[e]=Object.assign(Object.assign({},r[e]),{examples:i})}}else if(i){r=Object.assign({},r);for(const e of Object.keys(i)){const t=i[e];r[e]=Object.assign(Object.assign({},r[e]),{example:t})}}return r}
1
+ import{dirname}from"path";import UrlTemplate from"url-template";import{IS_BROWSER}from"./dom";import{deleteEmptyArrayItem,isArrayOfObjects,isNumeric,removeQueryStringAndHash,resolveUrl,sanitizeItemId,normalizeText,getValueFromMdParsedExtension}from"./helpers";import{DEFAULT_TAG_SLUG,MediaTypes}from"../constants";import{JsonPointer}from"./JsonPointer";import{joinWithSeparator,Pagination}from"../services";function isWildcardStatusCode(e){return"string"==typeof e&&/\dxx/i.test(e)}export function isStatusCode(e){return"default"===e||isNumeric(e)||isWildcardStatusCode(e)}export function getStatusCodeType(e,r=!1){if("default"===e)return r?"error":"success";let t="string"==typeof e?parseInt(e,10):e;if(isWildcardStatusCode(e)&&(t*=100),t<100||t>599)throw new Error("invalid HTTP code");let i="success";return t>=300&&t<400?i="redirect":t>=400?i="error":t<200&&(i="info"),i}const operationNames={get:!0,post:!0,put:!0,head:!0,patch:!0,delete:!0,options:!0,$ref:!0};export function isOperationName(e){return e in operationNames}export function getOperationName(e){const{operationId:r,pathName:t}=e,i=normalizeText(getValueFromMdParsedExtension(e,"description"));return normalizeText(getValueFromMdParsedExtension(e,"summary"))||r||i&&i.substring(0,50)||t||"<no summary>"}export function getOperationId(e,r,t){var i;return r===Pagination.None&&(null==t?void 0:t.id)?joinWithSeparator(t.id,sanitizeItemId(e.operationId?e.operationId:pointerToId(e.pointer))):(null===(i=e.tags)||void 0===i?void 0:i.length)?sanitizeItemId(e.operationId?e.operationId:pointerToId(e.pointer)):sanitizeItemId(e.operationId?joinWithSeparator(DEFAULT_TAG_SLUG,e.operationId):pointerToId(e.pointer))}function pointerToId(e){return(null==e?void 0:e.startsWith("/"))?e.slice(1,e.length):e}const schemaKeywordTypes={multipleOf:"number",maximum:"number",exclusiveMaximum:"number",minimum:"number",exclusiveMinimum:"number",maxLength:"string",minLength:"string",pattern:"string",contentEncoding:"string",contentMediaType:"string",items:"array",maxItems:"array",minItems:"array",uniqueItems:"array",maxProperties:"object",minProperties:"object",required:"object",additionalProperties:"object",unevaluatedProperties:"object",patternProperties:"object",properties:"object"};export function detectType(e){if(void 0!==e.type&&!Array.isArray(e.type))return e.type;const r=Object.keys(schemaKeywordTypes);for(const t of r){const r=schemaKeywordTypes[t];if(void 0!==e[t])return r}return"any"}export function isPrimitiveType(e,r=e.type){if(e["x-circular-ref"])return!0;if(void 0!==e.oneOf||void 0!==e.anyOf)return!1;if(e.if&&e.then||e.if&&e.else)return!1;let t=!0;const i=Array.isArray(r);return("object"===r||i&&(null==r?void 0:r.includes("object")))&&(t=void 0!==e.properties?0===Object.keys(e.properties).length:void 0===e.additionalProperties&&void 0===e.unevaluatedProperties&&void 0===e.patternProperties),!Array.isArray(e.items)&&!Array.isArray(e.prefixItems)&&(void 0!==e.items&&"boolean"!=typeof e.items&&("array"===r||i&&(null==r?void 0:r.includes("array")))&&(t=isPrimitiveType(e.items,e.items.type)),t)}export function isJsonLike(e){return-1!==e.search(/json/i)}export function isFormUrlEncoded(e){return e===MediaTypes.URL_ENCODED}function delimitedEncodeField(e,r,t){return Array.isArray(e)?e.map((e=>e.toString())).join(t):"object"==typeof e?Object.keys(e).map((r=>`${r}${t}${e[r]}`)).join(t):r+"="+e.toString()}function deepObjectEncodeField(e,r){return Array.isArray(e)?(console.warn("deepObject style cannot be used with array value:"+e.toString()),""):"object"==typeof e?Object.keys(e).map((t=>e[t]?`${r}[${t}]=${e[t]}`:void 0)).filter(Boolean).join("&"):(console.warn("deepObject style cannot be used with non-object value:"+e.toString()),"")}function serializeFormValue(e,r,t){const i="__redoc_param_name__",n=r?"*":"";return UrlTemplate.parse(`{?${i}${n}}`).expand({[i]:t}).substring(1).replace(/__redoc_param_name__/g,e)}function serializeSimpleValue(e,r){const t=e?"*":"",i="__redoc_param_name__",n=UrlTemplate.parse(`{${i}${t}}`);return decodeURIComponent(n.expand({[i]:r}))}export function urlFormEncodePayload(e,r={}){if(Array.isArray(e))throw new Error("Payload must have fields: "+e.toString());return Object.keys(e).map((t=>{const i=e[t],{style:n="form",explode:o=!0}=r[t]||{};switch(n){case"form":return serializeFormValue(t,o,i);case"spaceDelimited":return delimitedEncodeField(i,t,"%20");case"pipeDelimited":return delimitedEncodeField(i,t,"|");case"deepObject":return deepObjectEncodeField(i,t);default:return console.warn("Incorrect or unsupported encoding style: "+n),""}})).join("&")}function serializePathParameter(e,r,t,i){const n=t?"*":"";let o="";"label"===r?o=".":"matrix"===r&&(o=";");const a="__redoc_param_name__";return UrlTemplate.parse(`{${o}${a}${n}}`).expand({[a]:i}).replace(/__redoc_param_name__/g,e)}export function serializeQueryParameter(e,r,t,i){const n=n=>{switch(r){case"form":return serializeFormValue(e,t,n);case"spaceDelimited":return Array.isArray(n)?t?serializeFormValue(e,t,n):`${e}=${n.join("%20")}`:(console.warn("The style spaceDelimited is only applicable to arrays"),"");case"pipeDelimited":return Array.isArray(n)?t?serializeFormValue(e,t,n):`${e}=${n.join("|")}`:(console.warn("The style pipeDelimited is only applicable to arrays"),"");case"deepObject":return!t||Array.isArray(n)||"object"!=typeof n?(console.warn("The style deepObject is only applicable for objects with explode=true"),""):deepObjectEncodeField(n,e);case"simple":return serializeSimpleValue(t,i);default:return console.warn("Unexpected style for query: "+r),""}};return isArrayOfObjects(i)&&(i=deleteEmptyArrayItem(i).map((e=>n(e)))),n(i)}function serializeHeaderParameter(e,r,t){return"simple"===e?serializeSimpleValue(r,t):(console.warn("Unexpected style for header: "+e),"")}function serializeCookieParameter(e,r,t,i){return"form"===r?serializeFormValue(e,t,i):(console.warn("Unexpected style for cookie: "+r),"")}export function serializeParameterValueWithMime(e,r){return isJsonLike(r)?JSON.stringify(e):(console.warn(`Parameter serialization as ${r} is not supported`),"")}export function serializeParameterValue(e,r){const{name:t,style:i,explode:n=!1,serializationMime:o}=e;if(o)switch(e.in){case"path":case"header":return serializeParameterValueWithMime(r,o);case"cookie":case"query":return`${t}=${serializeParameterValueWithMime(r,o)}`;default:return console.warn("Unexpected parameter location: "+e.in),""}if(!i)return console.warn(`Missing style attribute or content for parameter ${t}`),"";switch(e.in){case"path":return serializePathParameter(t,i,n,r);case"query":return serializeQueryParameter(t,i,n,r);case"header":return serializeHeaderParameter(i,n,r);case"cookie":return serializeCookieParameter(t,i,n,r);default:return console.warn("Unexpected parameter location: "+e.in),""}}export function langFromMime(e){return-1!==e.search(/xml/i)?"xml":"clike"}const DEFINITION_NAME_REGEX=/^#\/components\/(schemas|pathItems)\/([^/]+)$/;export function isNamedDefinition(e){return DEFINITION_NAME_REGEX.test(e||"")}export function getDefinitionName(e){var r;return null===(r=null==e?void 0:e.match(DEFINITION_NAME_REGEX))||void 0===r?void 0:r.pop()}function humanizeMultipleOfConstraint(e){if(void 0===e)return;const r=e.toString(10);return/^0\.0*1$/.test(r)?`decimal places <= ${r.split(".")[1].length}`:`multiple of ${r}`}function humanizeRangeConstraint(e,r,t){let i;return void 0!==r&&void 0!==t?i=r===t?`= ${r} ${e}`:`[ ${r} .. ${t} ] ${e}`:void 0!==t?i=`<= ${t} ${e}`:void 0!==r&&(i=1===r?"non-empty":`>= ${r} ${e}`),i}export function humanizeNumberRange(e){var r,t;const i="number"==typeof e.exclusiveMinimum?Math.min(e.exclusiveMinimum,null!==(r=e.minimum)&&void 0!==r?r:1/0):e.minimum,n="number"==typeof e.exclusiveMaximum?Math.max(e.exclusiveMaximum,null!==(t=e.maximum)&&void 0!==t?t:-1/0):e.maximum,o="number"==typeof e.exclusiveMinimum||e.exclusiveMinimum,a="number"==typeof e.exclusiveMaximum||e.exclusiveMaximum;return void 0!==i&&void 0!==n?`${o?"( ":"[ "}${i} .. ${n}${a?" )":" ]"}`:void 0!==n?`${a?"< ":"<= "}${n}`:void 0!==i?`${o?"> ":">= "}${i}`:void 0}export function humanizeConstraints(e){const r=[],t=humanizeRangeConstraint("characters",e.minLength,e.maxLength);void 0!==t&&r.push(t);const i=humanizeRangeConstraint("items",e.minItems,e.maxItems);void 0!==i&&r.push(i);const n=humanizeRangeConstraint(1===e.minProperties&&1===e.maxProperties?"property":"properties",e.minProperties,e.maxProperties);void 0!==n&&r.push(n);const o=humanizeMultipleOfConstraint(e.multipleOf);void 0!==o&&r.push(o);const a=humanizeNumberRange(e);return void 0!==a&&r.push(a),e.uniqueItems&&r.push("unique"),r}export function sortByRequired(e,r=[]){const t=[],i=[],n=[];return e.forEach((e=>{e.required?r.includes(e.name)?i.push(e):n.push(e):t.push(e)})),i.sort(((e,t)=>r.indexOf(e.name)-r.indexOf(t.name))),[...i,...n,...t]}export function sortByField(e,r){return[...e].sort(((e,t)=>e[r].localeCompare(t[r])))}export function mergeParams(e,r=[],t=[],{pathPointer:i,operationPointer:n}){const o={};t.forEach((r=>{({resolved:r}=e.deref(r)),o[r.name+"_"+r.in]=!0}));return[...r.map(((e,r)=>({paramOrRef:e,pointer:JsonPointer.join(i,["parameters",String(r)])}))).filter((({paramOrRef:r})=>(({resolved:r}=e.deref(r)),!o[r.name+"_"+r.in]))),...t.map(((e,r)=>({paramOrRef:e,pointer:JsonPointer.join(n,["parameters",String(r)])})))]}export function mergeSimilarMediaTypes(e){const r={};return Object.keys(e).forEach((t=>{const i=e[t],n=t.split(";")[0].trim();r[n]?r[n]=Object.assign(Object.assign({},r[n]),i):r[n]=i})),r}export function expandDefaultServerVariables(e,r={}){return e.replace(/(?:{)([\w-.]+)(?:})/g,((e,t)=>r[t]&&r[t].default||e))}export function normalizeServers(e,r){const t=void 0===e?removeQueryStringAndHash((()=>{if(!IS_BROWSER)return globalThis.SSR_HOSTNAME||"";const e=window.location.href;return e.endsWith(".html")?dirname(e):e})()):dirname(e);return 0===r.length&&(r=[{url:"/"}]),r.map((e=>{return Object.assign(Object.assign({},e),{url:(r=e.url,resolveUrl(t,r)),description:e.description||""});var r}))}export const shortenHTTPVerb=e=>({delete:"del",options:"opts"}[e]||e);export function isRedocExtension(e){return e in{"x-circular-ref":!0,"x-parentRefs":!0,"x-refsStack":!0,"x-code-samples":!0,"x-codeSamples":!0,"x-displayName":!0,"x-examples":!0,"x-ignoredHeaderParameters":!0,"x-logo":!0,"x-nullable":!0,"x-servers":!0,"x-tagGroups":!0,"x-traitTag":!0,"x-additionalPropertiesName":!0,"x-explicitMappingOnly":!0,"x-enumDescriptions":!0,"x-hideTryItPanel":!0,"x-tokenEndpointAuthMethod":!0,"x-feedback":!0}||e.startsWith("x-parsed-md-")}export function extractExtensions(e,r){return Object.keys(e).filter((e=>!0===r?e.startsWith("x-")&&!isRedocExtension(e):e.startsWith("x-")&&r.indexOf(e)>-1)).reduce(((r,t)=>(r[t]=e[t],r)),{})}export function pluralizeType(e){return e.split(" or ").map((e=>e.replace(/^(string|object|number|integer|array|boolean)s?( ?.*)/,"$1s$2"))).join(" or ")}export function getContentWithLegacyExamples(e){let r=e.content;const t=e["x-examples"],i=e["x-example"];if(t){r=Object.assign({},r);for(const e of Object.keys(t)){const i=t[e];r[e]=Object.assign(Object.assign({},r[e]),{examples:i})}}else if(i){r=Object.assign({},r);for(const e of Object.keys(i)){const t=i[e];r[e]=Object.assign(Object.assign({},r[e]),{example:t})}}return r}
2
2
  //# sourceMappingURL=openapi.js.map
@@ -3,3 +3,4 @@ export declare function pathIncludesLink(location: Location, link?: string): boo
3
3
  export declare function pathMatchedLink(location: Location, link?: string): boolean;
4
4
  export declare function normalizePath(path: string): string;
5
5
  export declare function normalizeHashPath(path: string): string;
6
+ export declare function normalizeRoutePath(path: string): string;
@@ -1,2 +1,2 @@
1
- export function pathIncludesLink(t,e){return!!e&&decodeURIComponent(t.pathname+t.hash).includes(e)}export function pathMatchedLink(t,e=""){return decodeURIComponent(t.pathname)===e||decodeURIComponent(t.hash)===e||decodeURIComponent(t.pathname+t.hash)===e}export function normalizePath(t){return t.startsWith("/")||(t="/"+t),t.endsWith("/")&&(t=t.slice(0,-1)),t}export function normalizeHashPath(t){return t.startsWith("#")?normalizePath(t):t}
1
+ export function pathIncludesLink(t,e){return!!e&&decodeURIComponent(t.pathname+t.hash).includes(e)}export function pathMatchedLink(t,e=""){return decodeURIComponent(t.pathname)===e||decodeURIComponent(t.hash)===e||decodeURIComponent(t.pathname+t.hash)===e}export function normalizePath(t){return t.startsWith("/")||(t="/"+t),t.endsWith("/")&&(t=t.slice(0,-1)),t}export function normalizeHashPath(t){return t.startsWith("#")?normalizePath(t):t}export function normalizeRoutePath(t){return t.startsWith("/")?t.slice(1):t}
2
2
  //# sourceMappingURL=path.js.map
@@ -2,3 +2,4 @@ export declare function isUndefined<T>(value: T | undefined): value is undefined
2
2
  export declare function isNull<T>(value: T | null): value is null;
3
3
  export declare function isString<T>(value: T | string): value is string;
4
4
  export declare function isNotNull<T>(value: T): value is NonNullable<T>;
5
+ export declare function checkIfIsObject(item: unknown): item is Object;
@@ -1,2 +1,2 @@
1
- export function isUndefined(n){return void 0===n}export function isNull(n){return null===n}export function isString(n){return"string"==typeof n}export function isNotNull(n){return!isNull(n)}
1
+ export function isUndefined(t){return void 0===t}export function isNull(t){return null===t}export function isString(t){return"string"==typeof t}export function isNotNull(t){return!isNull(t)}export function checkIfIsObject(t){return"object"==typeof t&&!Array.isArray(t)&&null!==t}
2
2
  //# sourceMappingURL=typeGuards.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redocly/openapi-docs",
3
- "version": "0.0.0-react18-20231120182601",
3
+ "version": "0.74.2-pingfed.1",
4
4
  "description": "Redocly OpenAPI Docs",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-esm/index.js",
@@ -16,15 +16,14 @@
16
16
  "openapi-docs": "bin.js"
17
17
  },
18
18
  "peerDependencies": {
19
- "@redocly/theme": "0.0.0-react18-20231120182601",
19
+ "@redocly/theme": "0.74.2-pingfed.1",
20
20
  "core-js": "^3.1.4",
21
21
  "react": "^18.0.0",
22
22
  "react-dom": "^18.0.0",
23
23
  "styled-components": "^4.1.1 || ^5.3.11"
24
24
  },
25
25
  "dependencies": {
26
- "@cfaester/enzyme-adapter-react-18": "^0.7.0",
27
- "@markdoc/markdoc": "0.3.4",
26
+ "@markdoc/markdoc": "0.4.0",
28
27
  "@redocly/openapi-core": "^1.4.0",
29
28
  "@redocly/vscode-json-languageservice": "3.4.9",
30
29
  "@uiw/react-codemirror": "^4.21.20",
@@ -44,7 +43,7 @@
44
43
  "path-browserify": "^1.0.1",
45
44
  "perfect-scrollbar": "^1.5.5",
46
45
  "prismjs": "^1.22.0",
47
- "react-router-dom": "^6.10.0",
46
+ "react-router-dom": "^6.21.1",
48
47
  "react-tabs": "^6.0.2",
49
48
  "jotai": "^2.4.2",
50
49
  "slugify": "^1.4.4",
@@ -59,55 +58,56 @@
59
58
  "util": "~0.12.5"
60
59
  },
61
60
  "devDependencies": {
62
- "@testing-library/jest-dom": "^6.1.4",
63
- "@testing-library/react": "^14.0.0",
64
- "@testing-library/user-event": "^14.5.1",
65
- "@types/dompurify": "^2.0.2",
66
- "@types/enzyme-to-json": "^1.5.3",
67
- "@types/jest": "^29.2.2",
68
- "@types/jest-when": "^3.5.2",
69
- "@types/json-pointer": "^1.0.30",
70
- "@types/mark.js": "^8.11.5",
71
- "@types/markdown-it": "*",
72
- "@types/node": "^18.11.18",
73
- "@types/prismjs": "^1.16.1",
74
- "@types/react": "^18.2.31",
75
- "@types/react-dom": "^18.2.14",
76
- "@types/styled-components": "^5.1.30",
77
- "@types/webpack": "^4.41.9",
78
- "@types/webpack-env": "^1.14.1",
79
- "compare-versions": "^5.0.1",
80
- "core-js": "^3.5.0",
81
- "css-loader": "^6.5.1",
82
- "enzyme": "^3.7.0",
83
- "enzyme-to-json": "^3.6.2",
84
- "esbuild-loader": "^3.0.1",
85
- "fork-ts-checker-webpack-plugin": "^6.5.0",
86
- "html-webpack-plugin": "^4.0.3",
87
- "jest": "^29.3.0",
88
- "jest-environment-jsdom": "^29.3.0",
89
- "jest-styled-components": "^7.1.1",
90
- "jest-when": "^3.5.2",
61
+ "@cfaester/enzyme-adapter-react-18": "0.7.1",
62
+ "@testing-library/jest-dom": "6.1.5",
63
+ "@testing-library/react": "14.1.2",
64
+ "@testing-library/user-event": "14.5.1",
65
+ "@types/dompurify": "2.4.0",
66
+ "@types/enzyme-to-json": "1.5.7",
67
+ "@types/jest": "29.5.11",
68
+ "@types/jest-when": "3.5.5",
69
+ "@types/json-pointer": "1.0.34",
70
+ "@types/mark.js": "8.11.12",
71
+ "@types/markdown-it": "12.2.3",
72
+ "@types/node": "18.19.3",
73
+ "@types/prismjs": "1.26.3",
74
+ "@types/react": "18.2.45",
75
+ "@types/react-dom": "18.2.17",
76
+ "@types/styled-components": "5.1.34",
77
+ "@types/webpack": "4.41.33",
78
+ "@types/webpack-env": "1.18.0",
79
+ "compare-versions": "5.0.3",
80
+ "core-js": "3.29.1",
81
+ "css-loader": "6.7.3",
82
+ "enzyme": "3.11.0",
83
+ "enzyme-to-json": "3.6.2",
84
+ "esbuild-loader": "3.0.1",
85
+ "fork-ts-checker-webpack-plugin": "6.5.3",
86
+ "html-webpack-plugin": "4.5.2",
87
+ "jest": "29.5.0",
88
+ "jest-environment-jsdom": "29.5.0",
89
+ "jest-styled-components": "7.2.0",
90
+ "jest-when": "3.6.0",
91
91
  "js-yaml": "4.1.0",
92
- "json-schema": "^0.4.0",
93
- "outdent": "^0.8.0",
94
- "react": "^18.2.0",
95
- "react-dom": "^18.2.0",
96
- "react-is": "^18.2.0",
97
- "string-replace-loader": "^3.1.0",
98
- "style-loader": "^1.0.1",
99
- "styled-components": "^5.3.11",
100
- "terser": "^5.6.1",
101
- "ts-jest": "^29.0.3",
102
- "ts-node": "^10.9.1",
103
- "typescript": "^5.2.2",
104
- "unfetch": "^4.1.0",
105
- "url-polyfill": "^1.1.7",
106
- "webpack": "^5.88.2",
107
- "webpack-cli": "^5.1.4",
108
- "webpack-dev-server": "^4.15.1",
92
+ "json-schema": "0.4.0",
93
+ "outdent": "0.8.0",
94
+ "react": "18.2.0",
95
+ "react-dom": "18.2.0",
96
+ "react-is": "18.2.0",
97
+ "string-replace-loader": "3.1.0",
98
+ "style-loader": "1.3.0",
99
+ "styled-components": "5.3.11",
100
+ "terser": "5.16.3",
101
+ "ts-jest": "29.1.1",
102
+ "ts-node": "10.9.1",
103
+ "typescript": "5.2.2",
104
+ "unfetch": "4.2.0",
105
+ "url-polyfill": "1.1.12",
106
+ "webpack": "5.88.2",
107
+ "webpack-cli": "5.1.4",
108
+ "webpack-dev-server": "4.15.1",
109
109
  "workerize-loader": "github:redocly/workerize-loader#webpack-5-dist",
110
- "@redocly/theme": "0.0.0-react18-20231120182601"
110
+ "@redocly/theme": "0.74.2-pingfed.1"
111
111
  },
112
112
  "scripts": {
113
113
  "start": "webpack serve --mode=development --hot",