@redocly/openapi-docs 3.9.0-next.2 → 3.9.0-next.3

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 (66) hide show
  1. package/dist/redocly-openapi-docs.min.js +1025 -928
  2. package/lib/components/ApiInfo/ApiInfo.d.ts +3 -1
  3. package/lib/components/ApiInfo/ApiInfo.js +1 -1
  4. package/lib/components/ContentItem/ContentItem.d.ts +2 -0
  5. package/lib/components/ContentItem/ContentItem.js +1 -1
  6. package/lib/components/ContentItems/useScrollOnRender.js +1 -1
  7. package/lib/components/Download/types.d.ts +1 -0
  8. package/lib/components/Download/useDownloadInfo.d.ts +1 -1
  9. package/lib/components/Download/useDownloadInfo.js +1 -1
  10. package/lib/components/OperationItem/OperationItem.d.ts +3 -0
  11. package/lib/components/OperationItem/OperationItem.js +2 -2
  12. package/lib/components/PanelItem/styled.d.ts +1 -1
  13. package/lib/components/PanelItem/styled.js +1 -1
  14. package/lib/components/PropertyDetails/PropertyDetails.js +1 -1
  15. package/lib/components/PropertyDetails/types.d.ts +1 -0
  16. package/lib/components/Schema/ObjectSchema.js +1 -1
  17. package/lib/components/Schema/types.d.ts +2 -0
  18. package/lib/components/SectionContent/SectionContent.d.ts +9 -0
  19. package/lib/components/SectionContent/SectionContent.js +3 -3
  20. package/lib/components/SectionContent/index.d.ts +1 -1
  21. package/lib/components/SectionContent/index.js +1 -1
  22. package/lib/components/SectionItem/SectionItem.d.ts +2 -0
  23. package/lib/components/SectionItem/SectionItem.js +1 -1
  24. package/lib/components/StickySidebar/SidebarActions.js +1 -1
  25. package/lib/components/common/Fields/fields.js +1 -0
  26. package/lib/components/common/linkify.js +1 -1
  27. package/lib/components/pluggable/RedocSchema.d.ts +3 -1
  28. package/lib/components/pluggable/RedocSchema.js +1 -1
  29. package/lib/hooks/useOtelTelemetry.d.ts +1 -1
  30. package/lib/index.d.ts +24 -2
  31. package/lib/index.js +1 -1
  32. package/lib/services/code-samples/generator.js +1 -1
  33. package/lib/types/open-api.d.ts +1 -0
  34. package/lib-esm/components/ApiInfo/ApiInfo.d.ts +3 -1
  35. package/lib-esm/components/ApiInfo/ApiInfo.js +1 -1
  36. package/lib-esm/components/ContentItem/ContentItem.d.ts +2 -0
  37. package/lib-esm/components/ContentItem/ContentItem.js +1 -1
  38. package/lib-esm/components/ContentItems/useScrollOnRender.js +1 -1
  39. package/lib-esm/components/Download/types.d.ts +1 -0
  40. package/lib-esm/components/Download/useDownloadInfo.d.ts +1 -1
  41. package/lib-esm/components/Download/useDownloadInfo.js +1 -1
  42. package/lib-esm/components/OperationItem/OperationItem.d.ts +3 -0
  43. package/lib-esm/components/OperationItem/OperationItem.js +2 -2
  44. package/lib-esm/components/PanelItem/styled.d.ts +1 -1
  45. package/lib-esm/components/PanelItem/styled.js +1 -1
  46. package/lib-esm/components/PropertyDetails/PropertyDetails.js +1 -1
  47. package/lib-esm/components/PropertyDetails/types.d.ts +1 -0
  48. package/lib-esm/components/Schema/ObjectSchema.js +1 -1
  49. package/lib-esm/components/Schema/types.d.ts +2 -0
  50. package/lib-esm/components/SectionContent/SectionContent.d.ts +9 -0
  51. package/lib-esm/components/SectionContent/SectionContent.js +2 -2
  52. package/lib-esm/components/SectionContent/index.d.ts +1 -1
  53. package/lib-esm/components/SectionContent/index.js +1 -1
  54. package/lib-esm/components/SectionItem/SectionItem.d.ts +2 -0
  55. package/lib-esm/components/SectionItem/SectionItem.js +1 -1
  56. package/lib-esm/components/StickySidebar/SidebarActions.js +1 -1
  57. package/lib-esm/components/common/Fields/fields.js +1 -0
  58. package/lib-esm/components/common/linkify.js +1 -1
  59. package/lib-esm/components/pluggable/RedocSchema.d.ts +3 -1
  60. package/lib-esm/components/pluggable/RedocSchema.js +1 -1
  61. package/lib-esm/hooks/useOtelTelemetry.d.ts +1 -1
  62. package/lib-esm/index.d.ts +24 -2
  63. package/lib-esm/index.js +1 -1
  64. package/lib-esm/services/code-samples/generator.js +1 -1
  65. package/lib-esm/types/open-api.d.ts +1 -0
  66. package/package.json +6 -6
@@ -1,5 +1,7 @@
1
+ import { LayoutVariant } from '@redocly/theme';
1
2
  import type { ReactElement } from 'react';
2
3
  import type { GroupModel } from '../../models';
3
- export declare function ApiInfo({ item }: {
4
+ export declare function ApiInfo({ item, layout, }: {
4
5
  item: GroupModel;
6
+ layout: LayoutVariant;
5
7
  }): ReactElement | null;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ApiInfo=ApiInfo;const jsx_runtime_1=require("react/jsx-runtime"),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),app_1=require("../../jotai/app"),common_1=require("../common"),ExternalDocumentation_1=require("../ExternalDocumentation"),Markdown_1=require("../Markdown"),styled_1=require("./styled"),store_1=require("../../jotai/store"),saveTextBeforeHeading_1=require("../../utils/saveTextBeforeHeading"),helpers_1=require("../../utils/helpers"),RenderHook_1=require("../RenderHook"),Metadata_1=require("./Metadata"),hooks_1=require("../../hooks");function ApiInfo({item:e}){const r=(0,hooks_1.useTranslate)(),{options:{unstable_hooks:t,hideInfoMetadata:o},parser:{definition:a}}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),i=(0,jotai_1.useAtomValue)(app_1.layoutAtom),n=e.infoDefinition;if(!n)return null;const s=(0,saveTextBeforeHeading_1.saveTextBeforeHeading)((0,helpers_1.getValueFromMdParsedExtension)(n,"description")||""),u=(0,helpers_1.getValueFromMdParsedExtension)(n,"summary")||void 0,_=null==a?void 0:a.externalDocs,l=n.version&&(0,jsx_runtime_1.jsxs)("span",{children:["(",n.version,")"]})||null,d=i===theme_1.LayoutVariant.STACKED;return(0,jsx_runtime_1.jsx)(common_1.Row,{layout:i,children:(0,jsx_runtime_1.jsxs)(common_1.SamplesMiddlePanel,{fullWidth:!0,className:"api-info",isStacked:d,children:[(0,jsx_runtime_1.jsxs)(styled_1.ApiHeader,{children:[n.title," ",l]}),(0,jsx_runtime_1.jsx)(RenderHook_1.RenderHook,{Hook:theme_1.AfterOpenApiTitle||(null==t?void 0:t.AfterApiTitle),props:{info:n}}),u&&(0,jsx_runtime_1.jsx)(Markdown_1.Markdown,{source:u,"data-role":"redoc-summary"}),s&&(0,jsx_runtime_1.jsx)(Markdown_1.Markdown,{source:s,"data-role":"redoc-description"}),_&&(0,jsx_runtime_1.jsx)(ExternalDocumentation_1.ExternalDocumentation,{externalDocs:_}),!o&&(0,jsx_runtime_1.jsx)(Metadata_1.Metadata,{metadata:n["x-metadata"],translate:r})]})})}
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ApiInfo=ApiInfo;const jsx_runtime_1=require("react/jsx-runtime"),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),common_1=require("../common"),ExternalDocumentation_1=require("../ExternalDocumentation"),Markdown_1=require("../Markdown"),styled_1=require("./styled"),store_1=require("../../jotai/store"),saveTextBeforeHeading_1=require("../../utils/saveTextBeforeHeading"),helpers_1=require("../../utils/helpers"),RenderHook_1=require("../RenderHook"),Metadata_1=require("./Metadata"),hooks_1=require("../../hooks");function ApiInfo({item:e,layout:r}){const t=(0,hooks_1.useTranslate)(),{options:{unstable_hooks:o,hideInfoMetadata:n},parser:{definition:i}}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),a=e.infoDefinition;if(!a)return null;const s=(0,saveTextBeforeHeading_1.saveTextBeforeHeading)((0,helpers_1.getValueFromMdParsedExtension)(a,"description")||""),u=(0,helpers_1.getValueFromMdParsedExtension)(a,"summary")||void 0,l=(null==i?void 0:i.externalDocs)||(null==a?void 0:a.externalDocs),d=a.version&&(0,jsx_runtime_1.jsxs)("span",{children:["(",a.version,")"]})||null,_=r===theme_1.LayoutVariant.STACKED;return(0,jsx_runtime_1.jsx)(common_1.Row,{layout:r,children:(0,jsx_runtime_1.jsxs)(common_1.SamplesMiddlePanel,{fullWidth:!0,className:"api-info",isStacked:_,children:[(0,jsx_runtime_1.jsxs)(styled_1.ApiHeader,{children:[a.title," ",d]}),(0,jsx_runtime_1.jsx)(RenderHook_1.RenderHook,{Hook:theme_1.AfterOpenApiTitle||(null==o?void 0:o.AfterApiTitle),props:{info:a}}),u&&(0,jsx_runtime_1.jsx)(Markdown_1.Markdown,{source:u,"data-role":"redoc-summary"}),s&&(0,jsx_runtime_1.jsx)(Markdown_1.Markdown,{source:s,"data-role":"redoc-description"}),l&&(0,jsx_runtime_1.jsx)(ExternalDocumentation_1.ExternalDocumentation,{externalDocs:l}),!n&&(0,jsx_runtime_1.jsx)(Metadata_1.Metadata,{metadata:a["x-metadata"],translate:t})]})})}
2
2
  //# sourceMappingURL=ApiInfo.js.map
@@ -1,9 +1,11 @@
1
+ import type { LayoutVariant } from '@redocly/config';
1
2
  import type { ReactNode } from 'react';
2
3
  import type { ContentItemModel } from '../../models';
3
4
  interface ContentItemProps {
4
5
  item: ContentItemModel;
5
6
  routingBasePath: string;
6
7
  children?: ReactNode;
8
+ layout?: LayoutVariant;
7
9
  }
8
10
  export declare const ContentItem: import("react").NamedExoticComponent<ContentItemProps>;
9
11
  export {};
@@ -1,2 +1,2 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ContentItem=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),services_1=require("../../services"),TagItem_1=require("../TagItem"),OperationItem_1=require("../OperationItem"),common_1=require("../common"),useIsExpanded_1=require("./useIsExpanded"),SectionItem_1=require("../SectionItem"),useScrollOnRender_1=__importDefault(require("../ContentItems/useScrollOnRender")),helpers_1=require("../ContentItems/helpers"),ApiInfo_1=require("../ApiInfo"),ContentComponentMap={group:null,tag:TagItem_1.TagItem,section:SectionItem_1.SectionItem,schema:TagItem_1.TagItem,operation:OperationItem_1.OperationItem,root:ApiInfo_1.ApiInfo};function ContentItemComponent({item:e,routingBasePath:t,children:n}){var r;const o=ContentComponentMap[(0,helpers_1.isRootItem)(e)?"root":e.type],i="tag"===e.type&&e.items.length>0,s=(0,useIsExpanded_1.useIsExpanded)({item:e,routingBasePath:t});let m=(0,useScrollOnRender_1.default)(e,t);return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[o&&(0,jsx_runtime_1.jsx)(common_1.Section,{id:e.id,ref:m,sectionId:(0,services_1.joinWithSeparator)(t,e.id),underlined:"operation"===e.type||"schema"===e.type,expanded:i&&!s,children:(0,jsx_runtime_1.jsx)(o,{item:e,routingBasePath:t,isExpanded:s})}),(s||"tag"!==e.type)&&Boolean(null===(r=e.items)||void 0===r?void 0:r.length)&&(0,jsx_runtime_1.jsx)(jsx_runtime_1.Fragment,{children:n})]})}exports.ContentItem=(0,react_1.memo)(ContentItemComponent);
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ContentItem=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),services_1=require("../../services"),TagItem_1=require("../TagItem"),OperationItem_1=require("../OperationItem"),common_1=require("../common"),useIsExpanded_1=require("./useIsExpanded"),SectionItem_1=require("../SectionItem"),useScrollOnRender_1=__importDefault(require("../ContentItems/useScrollOnRender")),helpers_1=require("../ContentItems/helpers"),ApiInfo_1=require("../ApiInfo"),app_1=require("../../jotai/app"),ContentComponentMap={group:null,tag:TagItem_1.TagItem,section:SectionItem_1.SectionItem,schema:TagItem_1.TagItem,operation:OperationItem_1.OperationItem,root:ApiInfo_1.ApiInfo};function ContentItemComponent({item:e,routingBasePath:t,children:n,layout:r}){var o;const i=ContentComponentMap[(0,helpers_1.isRootItem)(e)?"root":e.type],a="tag"===e.type&&e.items.length>0,s=(0,useIsExpanded_1.useIsExpanded)({item:e,routingBasePath:t});let m=(0,useScrollOnRender_1.default)(e,t);const u=(0,jotai_1.useAtomValue)(app_1.layoutAtom);return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[i&&(0,jsx_runtime_1.jsx)(common_1.Section,{id:e.id,ref:m,sectionId:(0,services_1.joinWithSeparator)(t,e.id),underlined:"operation"===e.type||"schema"===e.type,expanded:a&&!s,children:(0,jsx_runtime_1.jsx)(i,{item:e,routingBasePath:t,isExpanded:s,layout:r||u})}),(s||"tag"!==e.type)&&Boolean(null===(o=e.items)||void 0===o?void 0:o.length)&&(0,jsx_runtime_1.jsx)(jsx_runtime_1.Fragment,{children:n})]})}exports.ContentItem=(0,react_1.memo)(ContentItemComponent);
2
2
  //# sourceMappingURL=ContentItem.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const react_1=require("react"),react_router_dom_1=require("react-router-dom"),theme_1=require("@redocly/theme"),useAutoScroll_1=require("../Content/useAutoScroll");function useScrollOnRender(e,r){const t=(0,react_1.useRef)(null),o=(0,react_router_dom_1.useLocation)(),l=(0,theme_1.removeLeadingSlash)(o.pathname.replace(r,""));return(0,react_1.useEffect)((()=>{var r;if(t.current&&(0,theme_1.removeLeadingSlash)(e.href)===l&&("function"==typeof(null===(r=null==t?void 0:t.current)||void 0===r?void 0:r.scrollIntoView)&&t.current.scrollIntoView(),o.hash)){const e=(0,useAutoScroll_1.getElementById)(o.hash.replace("#","").toLowerCase());e&&e.scrollIntoView()}}),[]),t}exports.default=useScrollOnRender;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const react_1=require("react"),react_router_dom_1=require("react-router-dom"),theme_1=require("@redocly/theme"),useAutoScroll_1=require("../Content/useAutoScroll");function useScrollOnRender(e,r){const t=(0,react_1.useRef)(null),o=(0,react_router_dom_1.useLocation)(),l=(0,theme_1.removeLeadingSlash)(o.pathname.replace(r,""));return(0,react_1.useEffect)((()=>{var r;if(t.current&&e.href&&(0,theme_1.removeLeadingSlash)(e.href)===l&&("function"==typeof(null===(r=null==t?void 0:t.current)||void 0===r?void 0:r.scrollIntoView)&&t.current.scrollIntoView(),o.hash)){const e=(0,useAutoScroll_1.getElementById)(o.hash.replace("#","").toLowerCase());e&&e.scrollIntoView()}}),[]),t}exports.default=useScrollOnRender;
2
2
  //# sourceMappingURL=useScrollOnRender.js.map
@@ -6,6 +6,7 @@ export type DownloadIconType = 'yaml' | 'json' | 'file';
6
6
  export type UseDownloadInfoProps = {
7
7
  definitionUrl?: string;
8
8
  downloadUrls?: DownloadUrlsConfig;
9
+ defaultFileName?: string;
9
10
  };
10
11
  export type UseDownloadInfoReturnType = {
11
12
  title: string;
@@ -1,2 +1,2 @@
1
1
  import type { UseDownloadInfoProps, UseDownloadInfoReturnType } from './types';
2
- export declare const useDownloadInfo: ({ downloadUrls, }: UseDownloadInfoProps) => UseDownloadInfoReturnType | undefined;
2
+ export declare const useDownloadInfo: ({ downloadUrls, defaultFileName, }: UseDownloadInfoProps) => UseDownloadInfoReturnType | undefined;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useDownloadInfo=void 0;const react_1=require("react"),useDownloadInfo=({downloadUrls:e})=>(0,react_1.useMemo)((()=>{if(e)return e.map((({title:e,url:o})=>({url:o,title:e||getFileNameFromUrl(o,"openapi.yaml"),iconType:getIconTypeFromUrl(o)})))}),[e]);function getFileNameFromUrl(e,o){const l=e.split("?")[0].split(/[\\\/]/).pop();return l&&(l.includes("yaml")||l.includes("json"))?l:o}function getIconTypeFromUrl(e,o){const l=o||e.split("?")[0].split(/[\\\/]/).pop();return l?l.includes("yaml")?"yaml":l.includes("json")?"json":"file":"file"}exports.useDownloadInfo=useDownloadInfo;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useDownloadInfo=void 0;const react_1=require("react"),useDownloadInfo=({downloadUrls:e,defaultFileName:o})=>(0,react_1.useMemo)((()=>{if(e)return e.map((({title:e,url:l})=>({url:l,title:e||getFileNameFromUrl(l,o||"openapi.yaml"),iconType:getIconTypeFromUrl(l)})))}),[e,o]);function getFileNameFromUrl(e,o){const l=e.split("?")[0].split(/[\\\/]/).pop();return l&&(l.includes("yaml")||l.includes("json"))?l:o}function getIconTypeFromUrl(e,o){const l=o||e.split("?")[0].split(/[\\\/]/).pop();return l?l.includes("yaml")?"yaml":l.includes("json")?"json":"file":"file"}exports.useDownloadInfo=useDownloadInfo;
2
2
  //# sourceMappingURL=useDownloadInfo.js.map
@@ -1,2 +1,5 @@
1
1
  import type { OperationItemProps } from './types';
2
2
  export declare const OperationItem: import("react").NamedExoticComponent<OperationItemProps>;
3
+ export declare const OperationSamplesPanel: import("styled-components").StyledComponent<"div", any, {
4
+ isStacked: boolean;
5
+ }, never>;
@@ -1,7 +1,7 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OperationItem=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),common_1=require("../common"),Callbacks_1=require("../Callbacks"),CallbackSamples_1=require("../CallbackSamples"),RequestSamples_1=require("../RequestSamples"),Responses_1=require("../Responses"),ResponseSamples_1=require("../ResponseSamples"),services_1=require("../../services"),app_1=require("../../jotai/app"),store_1=require("../../jotai/store"),operation_1=require("../../models/operation"),RenderHook_1=require("../RenderHook"),OperationItemTitle_1=require("../common/OperationItemTitle"),LinkToField_1=require("../common/LinkToField"),RequestDetails_1=require("../Request/RequestDetails"),Badges_1=require("../common/Badges"),hooks_1=require("../../hooks");function OperationItemComponent({item:{operationDefinition:e,parent:t,href:s}}){var a,o;const i=(0,hooks_1.useTranslate)(),{parser:n,options:r}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),l=(0,jotai_1.useAtomValue)(app_1.userClaimsAtom),_=(0,jotai_1.useAtomValue)(app_1.layoutAtom),[p,m]=(0,react_1.useState)(),{unstable_hooks:d,feedback:c}=r,u=(0,react_1.useMemo)((()=>(0,operation_1.getOperation)(n,e,t,r,s,void 0,l)),[s,e,r,t,n,l]),{name:x,deprecated:j,isWebhook:k,badges:h}=u||{},b=_===theme_1.LayoutVariant.STACKED,S=(null==c?void 0:c.type)||"sentiment",g=!0!==(null==c?void 0:c.hide),[R,q]=(0,react_1.useState)(null),v=(0,react_1.useCallback)((e=>{p!==e&&m(e)}),[p]),O=(0,react_1.useMemo)((()=>g?(0,jsx_runtime_1.jsx)(FeedbackWrapper,{children:(0,jsx_runtime_1.jsx)(theme_1.Feedback,{type:S,settings:c.settings,path:(0,services_1.joinWithSeparator)(r.routingBasePath,u.href)})}):null),[g,S,c.settings,r.routingBasePath,u.href]);return(0,jsx_runtime_1.jsxs)(OperationRow,{layout:_,children:[(0,jsx_runtime_1.jsx)(OperationSubRowStyled,{layout:_,children:(0,jsx_runtime_1.jsxs)(common_1.SamplesMiddlePanel,{isStacked:b,children:[(0,jsx_runtime_1.jsx)(RenderHook_1.RenderHook,{Hook:theme_1.BeforeOpenApiOperation||(null==d?void 0:d.BeforeOperation),props:{operation:u}}),(0,jsx_runtime_1.jsxs)(OperationItemTitle_1.Heading,{"data-testid":"operation-item-header",children:[(0,jsx_runtime_1.jsx)(common_1.ShareLink,{to:s,"aria-label":`link to ${x}`}),(0,jsx_runtime_1.jsx)(common_1.CustomBadges,{badges:h,children:x}),j&&(0,jsx_runtime_1.jsx)(Badges_1.StyledBadge,{deprecated:!0,children:i("openapi.badges.deprecated","Deprecated")}),k&&(0,jsx_runtime_1.jsx)(Badges_1.StyledBadge,{children:i("openapi.badges.webhook","Webhook")})]})]})}),(0,jsx_runtime_1.jsxs)(OperationSubRowStyled,{layout:_,children:[(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{isStacked:b,children:(0,jsx_runtime_1.jsx)(RequestDetails_1.RequestDetails,{operation:u,translate:i})}),(0,jsx_runtime_1.jsx)(OperationSamplesPanel,{isStacked:b,"data-testid":"samples-block",className:"panel-container-request-samples",children:(0,jsx_runtime_1.jsx)(RequestSamples_1.RequestSamples,{operation:u})})]}),(0,jsx_runtime_1.jsxs)(OperationSubRowStyled,{layout:_,children:[(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{isStacked:b,children:(null===(a=u.responses)||void 0===a?void 0:a.length)?(0,jsx_runtime_1.jsx)(Responses_1.OperationResponseList,{responses:u.responses,operationId:u.id,operationPointer:u.pointer,callbackId:u.callbackId,activeResponseTab:p,onTabChange:v}):null}),(0,jsx_runtime_1.jsx)(OperationSamplesPanel,{isStacked:b,"data-testid":"samples-block",className:"panel-container-response-samples",children:(0,jsx_runtime_1.jsx)(ResponseSamples_1.ResponseSamples,{operation:u,activeResponseTab:p,onTabChange:v})})]}),(0,jsx_runtime_1.jsxs)(OperationSubRowStyled,{layout:_,children:[(0,jsx_runtime_1.jsxs)(common_1.SamplesMiddlePanel,{isStacked:b,children:[(null===(o=u.callbacks)||void 0===o?void 0:o.length)?(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsxs)(OperationItemTitle_1.Title,{children:[(0,jsx_runtime_1.jsx)(LinkToField_1.LinkToField,{to:(0,services_1.makeDeepLink)(u.id,"callbacks")}),i("openapi.callbacks","Callbacks")]}),(0,jsx_runtime_1.jsx)(Callbacks_1.CallbacksList,{callbacks:u.callbacks,onExpand:q,selectedCallback:R})]}):null,(0,jsx_runtime_1.jsx)(RenderHook_1.RenderHook,{Hook:theme_1.AfterOpenApiOperation||(null==d?void 0:d.AfterOperation),props:{operation:u}})]}),R?(0,jsx_runtime_1.jsx)(OperationSamplesPanel,{isStacked:b,"data-testid":"samples-block",children:(0,jsx_runtime_1.jsx)(CallbackSamples_1.CallbackSamples,{callback:R,translate:i})}):null]}),(0,jsx_runtime_1.jsx)(OperationSubRowStyled,{layout:_,children:(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{isStacked:b,fullWidth:!0,children:O})})]})}exports.OperationItem=(0,react_1.memo)(OperationItemComponent);const OperationSamplesPanel=(0,styled_components_1.default)(common_1.SamplesPanel)`
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OperationSamplesPanel=exports.OperationItem=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),common_1=require("../common"),Callbacks_1=require("../Callbacks"),CallbackSamples_1=require("../CallbackSamples"),RequestSamples_1=require("../RequestSamples"),Responses_1=require("../Responses"),ResponseSamples_1=require("../ResponseSamples"),services_1=require("../../services"),app_1=require("../../jotai/app"),store_1=require("../../jotai/store"),operation_1=require("../../models/operation"),RenderHook_1=require("../RenderHook"),OperationItemTitle_1=require("../common/OperationItemTitle"),LinkToField_1=require("../common/LinkToField"),RequestDetails_1=require("../Request/RequestDetails"),Badges_1=require("../common/Badges"),hooks_1=require("../../hooks");function OperationItemComponent({item:{operationDefinition:e,parent:t,href:s}}){var a,o;const i=(0,hooks_1.useTranslate)(),{parser:n,options:r}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),l=(0,jotai_1.useAtomValue)(app_1.userClaimsAtom),p=(0,jotai_1.useAtomValue)(app_1.layoutAtom),[_,m]=(0,react_1.useState)(),{unstable_hooks:d,feedback:c}=r,u=(0,react_1.useMemo)((()=>(0,operation_1.getOperation)(n,e,t,r,s,void 0,l)),[s,e,r,t,n,l]),{name:x,deprecated:j,isWebhook:k,badges:h}=u||{},S=p===theme_1.LayoutVariant.STACKED,b=(null==c?void 0:c.type)||"sentiment",g=!0!==(null==c?void 0:c.hide),[R,q]=(0,react_1.useState)(null),v=(0,react_1.useCallback)((e=>{_!==e&&m(e)}),[_]),O=(0,react_1.useMemo)((()=>g?(0,jsx_runtime_1.jsx)(FeedbackWrapper,{children:(0,jsx_runtime_1.jsx)(theme_1.Feedback,{type:b,settings:c.settings,path:(0,services_1.joinWithSeparator)(r.routingBasePath,u.href)})}):null),[g,b,c.settings,r.routingBasePath,u.href]);return(0,jsx_runtime_1.jsxs)(OperationRow,{layout:p,children:[(0,jsx_runtime_1.jsx)(OperationSubRowStyled,{layout:p,children:(0,jsx_runtime_1.jsxs)(common_1.SamplesMiddlePanel,{isStacked:S,children:[(0,jsx_runtime_1.jsx)(RenderHook_1.RenderHook,{Hook:theme_1.BeforeOpenApiOperation||(null==d?void 0:d.BeforeOperation),props:{operation:u}}),(0,jsx_runtime_1.jsxs)(OperationItemTitle_1.Heading,{"data-testid":"operation-item-header",children:[(0,jsx_runtime_1.jsx)(common_1.ShareLink,{to:s,"aria-label":`link to ${x}`}),(0,jsx_runtime_1.jsx)(common_1.CustomBadges,{badges:h,children:x}),j&&(0,jsx_runtime_1.jsx)(Badges_1.StyledBadge,{deprecated:!0,children:i("openapi.badges.deprecated","Deprecated")}),k&&(0,jsx_runtime_1.jsx)(Badges_1.StyledBadge,{children:i("openapi.badges.webhook","Webhook")})]})]})}),(0,jsx_runtime_1.jsxs)(OperationSubRowStyled,{layout:p,children:[(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{isStacked:S,children:(0,jsx_runtime_1.jsx)(RequestDetails_1.RequestDetails,{operation:u,translate:i})}),(0,jsx_runtime_1.jsx)(exports.OperationSamplesPanel,{isStacked:S,"data-testid":"samples-block",className:"panel-container-request-samples",children:(0,jsx_runtime_1.jsx)(RequestSamples_1.RequestSamples,{operation:u})})]}),(0,jsx_runtime_1.jsxs)(OperationSubRowStyled,{layout:p,children:[(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{isStacked:S,children:(null===(a=u.responses)||void 0===a?void 0:a.length)?(0,jsx_runtime_1.jsx)(Responses_1.OperationResponseList,{responses:u.responses,operationId:u.id,operationPointer:u.pointer,callbackId:u.callbackId,activeResponseTab:_,onTabChange:v}):null}),(0,jsx_runtime_1.jsx)(exports.OperationSamplesPanel,{isStacked:S,"data-testid":"samples-block",className:"panel-container-response-samples",children:(0,jsx_runtime_1.jsx)(ResponseSamples_1.ResponseSamples,{operation:u,activeResponseTab:_,onTabChange:v})})]}),(0,jsx_runtime_1.jsxs)(OperationSubRowStyled,{layout:p,children:[(0,jsx_runtime_1.jsxs)(common_1.SamplesMiddlePanel,{isStacked:S,children:[(null===(o=u.callbacks)||void 0===o?void 0:o.length)?(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsxs)(OperationItemTitle_1.Title,{children:[(0,jsx_runtime_1.jsx)(LinkToField_1.LinkToField,{to:(0,services_1.makeDeepLink)(u.id,"callbacks")}),i("openapi.callbacks","Callbacks")]}),(0,jsx_runtime_1.jsx)(Callbacks_1.CallbacksList,{callbacks:u.callbacks,onExpand:q,selectedCallback:R})]}):null,(0,jsx_runtime_1.jsx)(RenderHook_1.RenderHook,{Hook:theme_1.AfterOpenApiOperation||(null==d?void 0:d.AfterOperation),props:{operation:u}})]}),R?(0,jsx_runtime_1.jsx)(exports.OperationSamplesPanel,{isStacked:S,"data-testid":"samples-block",children:(0,jsx_runtime_1.jsx)(CallbackSamples_1.CallbackSamples,{callback:R,translate:i})}):null]}),(0,jsx_runtime_1.jsx)(OperationSubRowStyled,{layout:p,children:(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{isStacked:S,fullWidth:!0,children:O})})]})}exports.OperationItem=(0,react_1.memo)(OperationItemComponent),exports.OperationSamplesPanel=(0,styled_components_1.default)(common_1.SamplesPanel)`
2
2
  margin-left: auto;
3
3
  --code-block-padding: var(--spacing-xs) 0 var(--spacing-xs) 20px;
4
- `,FeedbackWrapper=styled_components_1.default.div`
4
+ `;const FeedbackWrapper=styled_components_1.default.div`
5
5
  & > div {
6
6
  flex: 1 1 auto;
7
7
  display: flex;
@@ -1,7 +1,7 @@
1
1
  export declare const PanelItemWrap: import("styled-components").StyledComponent<"span", any, {}, never>;
2
2
  export declare const Item: import("styled-components").StyledComponent<"span", any, {}, never>;
3
3
  export declare const Header: import("styled-components").StyledComponent<"span", any, {}, never>;
4
- export declare const Title: import("styled-components").StyledComponent<"span", any, {
4
+ export declare const Title: import("styled-components").StyledComponent<"p", any, {
5
5
  active?: boolean;
6
6
  }, never>;
7
7
  export declare const ActionsWrap: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -15,7 +15,7 @@
15
15
  color: var(--menu-content-title-color);
16
16
  font-size: var(--h6-font-size);
17
17
  line-height: var(--line-height-xsm);
18
- `,exports.Title=styled_components_1.default.span`
18
+ `,exports.Title=styled_components_1.default.p`
19
19
  margin: 0;
20
20
  color: var(--text-color-secondary);
21
21
  font-size: var(--font-size-base);
@@ -1,4 +1,4 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.PropertyDetails=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),Schema_1=require("../Schema"),FieldDetails_1=require("./FieldDetails"),LinkToField_1=require("../common/LinkToField"),app_1=require("../../jotai/app");function PropertyDetailsComponent({field:e,skipWriteOnly:i,skipReadOnly:r,level:t=1,showTitle:a,renderDiscriminatorSwitch:s,isFirst:o,fieldParentsName:n,disableDeepLinks:l,oneOfLevel:d}){const p=(0,jotai_1.useAtomValue)(app_1.activeMimeNameAtom),m=l?void 0:(0,LinkToField_1.generateDeepLink)(e,p),c=!e.schema.isPrimitive&&!e.schema.isCircular;return(0,jsx_runtime_1.jsxs)(Wrapper,{isFist:o,expanded:c,className:"property",children:[(0,jsx_runtime_1.jsx)(FieldDetails_1.FieldDetails,{field:e,renderDiscriminatorSwitch:s,deepLink:m,fieldParentsName:n}),c&&(0,jsx_runtime_1.jsx)(Schema_1.Schema,{schema:e.schema,skipReadOnly:r,skipWriteOnly:i,showTitle:a,expandable:!0,level:t+1,fieldParentsName:[...n||[],e.name],deepLink:m,required:e.required,disableDeepLinks:l,oneOfLevel:d})]})}exports.PropertyDetails=(0,react_1.memo)(PropertyDetailsComponent);const Wrapper=styled_components_1.default.div`
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.PropertyDetails=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),Schema_1=require("../Schema"),FieldDetails_1=require("./FieldDetails"),LinkToField_1=require("../common/LinkToField"),app_1=require("../../jotai/app");function PropertyDetailsComponent({field:e,skipWriteOnly:i,skipReadOnly:r,level:t=1,showTitle:s,renderDiscriminatorSwitch:a,isFirst:o,fieldParentsName:n,disableDeepLinks:l,oneOfLevel:d,slug:p}){const m=(0,jotai_1.useAtomValue)(app_1.activeMimeNameAtom),c=l?void 0:(0,LinkToField_1.generateDeepLink)(e,m),_=p&&c?`${p}&${c.replace("#","")}`:c,u=!e.schema.isPrimitive&&!e.schema.isCircular;return(0,jsx_runtime_1.jsxs)(Wrapper,{isFist:o,expanded:u,className:"property",children:[(0,jsx_runtime_1.jsx)(FieldDetails_1.FieldDetails,{field:e,renderDiscriminatorSwitch:a,deepLink:_,fieldParentsName:n}),u&&(0,jsx_runtime_1.jsx)(Schema_1.Schema,{schema:e.schema,skipReadOnly:r,skipWriteOnly:i,showTitle:s,expandable:!0,level:t+1,fieldParentsName:[...n||[],e.name],deepLink:_,required:e.required,disableDeepLinks:l,oneOfLevel:d,slug:p})]})}exports.PropertyDetails=(0,react_1.memo)(PropertyDetailsComponent);const Wrapper=styled_components_1.default.div`
2
2
  width: 100%;
3
3
  padding: ${({isFist:e})=>`var(--schema-${e?"fist-":""}property-details-spacing)`} 0
4
4
  ${({expanded:e})=>e?0:"var(--schema-property-details-spacing)"};
@@ -40,6 +40,7 @@ export interface FieldProps extends SchemaOptions {
40
40
  expandByDefault?: boolean;
41
41
  renderDiscriminatorSwitch?: () => ReactElement;
42
42
  deepLink?: string;
43
+ slug?: string;
43
44
  fieldParentsName?: string[];
44
45
  disableDeepLinks?: boolean;
45
46
  oneOfLevel?: number;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ObjectSchema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),common_1=require("../common"),Discriminator_1=require("../Discriminator"),store_1=require("../../jotai/store"),PropertyDetails_1=require("../PropertyDetails"),SubSchema_1=require("./SubSchema"),helpers_1=require("./helpers"),hooks_1=require("../../hooks"),styled_1=require("../common/styled");function ObjectSchemaComponent({schema:e,showTitle:r,discriminator:i,level:t,skipWriteOnly:s,skipReadOnly:a,fieldParentsName:n,expandable:l,deepLink:o,required:m,disableDeepLinks:c,shouldCloseArray:u,oneOfLevel:_}){const{fields:d=[],title:p}=e,h=(0,hooks_1.useTranslate)(),{schemasExpansionLevel:x}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom),j=a||s?d.filter((e=>!(a&&e.schema.readOnly||s&&e.schema.writeOnly))):d,y=(0,helpers_1.getExpandByDefault)({required:m,level:t,schemasExpansionLevel:x});return(0,jsx_runtime_1.jsxs)(SubSchema_1.SubSchema,{expandable:l,expandByDefault:y,level:t,propertyLength:j.length,deepLink:o,operationPointer:e.operationPointer,children:[(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[r&&(0,jsx_runtime_1.jsx)(common_1.PropertiesTableCaption,{children:p}),j.map(((e,l)=>(0,jsx_runtime_1.jsx)(PropertyDetails_1.PropertyDetails,{isFirst:0===l,field:e,fieldParentsName:Number(t)>1?n:[],renderDiscriminatorSwitch:(null==i?void 0:i.fieldName)===e.name&&(null==i?void 0:i.parentSchema)?()=>(0,jsx_runtime_1.jsx)(Discriminator_1.Discriminator,{parent:i.parentSchema,onChange:null==i?void 0:i.onChange,activeOneOfIdx:i.activeOneOfIdx,translate:h}):void 0,skipReadOnly:a,skipWriteOnly:s,showTitle:r,level:t,disableDeepLinks:c,oneOfLevel:_},e.name)))]}),u&&(0,jsx_runtime_1.jsx)(styled_1.ArrayClosingLabel,{className:"array-closing-label",children:(0,jsx_runtime_1.jsx)(styled_1.LabelValue,{children:"]"})})]})}exports.ObjectSchema=(0,react_1.memo)(ObjectSchemaComponent);
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ObjectSchema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),common_1=require("../common"),Discriminator_1=require("../Discriminator"),store_1=require("../../jotai/store"),PropertyDetails_1=require("../PropertyDetails"),SubSchema_1=require("./SubSchema"),helpers_1=require("./helpers"),hooks_1=require("../../hooks"),styled_1=require("../common/styled");function ObjectSchemaComponent({schema:e,showTitle:r,discriminator:i,level:t,skipWriteOnly:s,skipReadOnly:a,fieldParentsName:n,expandable:l,deepLink:o,required:m,disableDeepLinks:c,shouldCloseArray:u,oneOfLevel:_,slug:d}){const{fields:p=[],title:h}=e,x=(0,hooks_1.useTranslate)(),{schemasExpansionLevel:j}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom),y=a||s?p.filter((e=>!(a&&e.schema.readOnly||s&&e.schema.writeOnly))):p,b=(0,helpers_1.getExpandByDefault)({required:m,level:t,schemasExpansionLevel:j});return(0,jsx_runtime_1.jsxs)(SubSchema_1.SubSchema,{expandable:l,expandByDefault:b,level:t,propertyLength:y.length,deepLink:o,operationPointer:e.operationPointer,children:[(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[r&&(0,jsx_runtime_1.jsx)(common_1.PropertiesTableCaption,{children:h}),y.map(((e,l)=>(0,jsx_runtime_1.jsx)(PropertyDetails_1.PropertyDetails,{isFirst:0===l,field:e,fieldParentsName:Number(t)>1?n:[],renderDiscriminatorSwitch:(null==i?void 0:i.fieldName)===e.name&&(null==i?void 0:i.parentSchema)?()=>(0,jsx_runtime_1.jsx)(Discriminator_1.Discriminator,{parent:i.parentSchema,onChange:null==i?void 0:i.onChange,activeOneOfIdx:i.activeOneOfIdx,translate:x}):void 0,skipReadOnly:a,skipWriteOnly:s,showTitle:r,level:t,disableDeepLinks:c,oneOfLevel:_,slug:d},e.name)))]}),u&&(0,jsx_runtime_1.jsx)(styled_1.ArrayClosingLabel,{className:"array-closing-label",children:(0,jsx_runtime_1.jsx)(styled_1.LabelValue,{children:"]"})})]})}exports.ObjectSchema=(0,react_1.memo)(ObjectSchemaComponent);
2
2
  //# sourceMappingURL=ObjectSchema.js.map
@@ -16,6 +16,7 @@ export interface SchemaProps extends SchemaOptions {
16
16
  fieldParentsName?: string[];
17
17
  expandable?: boolean;
18
18
  deepLink?: string;
19
+ slug?: string;
19
20
  required?: boolean;
20
21
  disableDeepLinks?: boolean;
21
22
  oneOfLevel?: number;
@@ -31,6 +32,7 @@ export interface ObjectSchemaProps extends Omit<SchemaProps, 'onDiscriminatorCha
31
32
  fieldParentsName?: string[];
32
33
  expandable?: boolean;
33
34
  required?: boolean;
35
+ slug?: string;
34
36
  oneOfLevel?: number;
35
37
  shouldCloseArray?: boolean;
36
38
  }
@@ -1,3 +1,4 @@
1
+ import { LayoutVariant } from '@redocly/theme';
1
2
  import type { ReactElement } from 'react';
2
3
  import type { ContentItemModel } from '../../models';
3
4
  interface SectionContentProps {
@@ -5,4 +6,12 @@ interface SectionContentProps {
5
6
  hideFooterAndHeader?: boolean;
6
7
  }
7
8
  export declare function SectionContent({ items, hideFooterAndHeader, }: SectionContentProps): ReactElement | null;
9
+ export declare const SectionContainer: import("styled-components").StyledComponent<"div", any, {
10
+ layout?: LayoutVariant;
11
+ }, never>;
12
+ export declare const RightPanelContainer: import("styled-components").StyledComponent<"div", any, {
13
+ isStacked: boolean;
14
+ } & {
15
+ isStacked: boolean;
16
+ }, never>;
8
17
  export {};
@@ -1,14 +1,14 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.SectionContent=SectionContent;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),jotai_1=require("jotai"),styled_components_1=__importDefault(require("styled-components")),PageFooter_1=require("../PageFooter"),store_1=require("../../jotai/store"),RenderHook_1=require("../RenderHook"),RightPanel_1=require("../RightPanel"),app_1=require("../../jotai/app"),common_1=require("../common"),Items_1=require("../ContentItems/Items"),ContentItem_1=require("../ContentItem");function SectionContent({items:e,hideFooterAndHeader:t}){const{unstable_hooks:{MiddlePanelHeader:n},routingBasePath:r}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom),i=(0,jotai_1.useAtomValue)(app_1.layoutAtom),o=i===theme_1.LayoutVariant.STACKED,a=(0,react_1.useMemo)((()=>t?null:(0,jsx_runtime_1.jsx)(MiddlePanelWrapper,{isStacked:o,children:(0,jsx_runtime_1.jsx)(PageFooter_1.PageFooter,{})})),[t,o]),s=(0,react_1.useMemo)((()=>t||!theme_1.OpenApiHeader&&!n?null:(0,jsx_runtime_1.jsx)(MiddlePanelWrapper,{isStacked:o,children:n?(0,jsx_runtime_1.jsx)(RenderHook_1.RenderHook,{Hook:n,props:void 0}):(0,jsx_runtime_1.jsx)(theme_1.OpenApiHeader,{})})),[n,t,o]);return 0===e.length?null:(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[s,(0,jsx_runtime_1.jsxs)(common_1.Row,{layout:i,children:[(0,jsx_runtime_1.jsx)(SectionContainer,{layout:i,children:e.filter((({type:e})=>"section"===e)).map((e=>(0,jsx_runtime_1.jsx)(ContentItem_1.ContentItem,{item:e,routingBasePath:r,children:(0,jsx_runtime_1.jsx)(Items_1.Items,{items:e.items,routingBasePath:r})},e.id)))}),(0,jsx_runtime_1.jsx)(RightPanelContainer,{isStacked:o,tabIndex:0,children:(0,jsx_runtime_1.jsx)(RightPanel_1.RightPanel,{item:e[0]})})]}),e.filter((({type:e})=>"section"!==e)).map((e=>(0,jsx_runtime_1.jsx)(ContentItem_1.ContentItem,{item:e,routingBasePath:r,children:(0,jsx_runtime_1.jsx)(Items_1.Items,{items:e.items,routingBasePath:r})},e.id))),a]})}const MiddlePanelWrapper=(0,styled_components_1.default)(common_1.SamplesMiddlePanel)`
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.RightPanelContainer=exports.SectionContainer=void 0,exports.SectionContent=SectionContent;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),jotai_1=require("jotai"),styled_components_1=__importDefault(require("styled-components")),PageFooter_1=require("../PageFooter"),store_1=require("../../jotai/store"),RenderHook_1=require("../RenderHook"),RightPanel_1=require("../RightPanel"),app_1=require("../../jotai/app"),common_1=require("../common"),Items_1=require("../ContentItems/Items"),ContentItem_1=require("../ContentItem");function SectionContent({items:e,hideFooterAndHeader:t}){const{unstable_hooks:{MiddlePanelHeader:n},routingBasePath:r}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom),i=(0,jotai_1.useAtomValue)(app_1.layoutAtom),o=i===theme_1.LayoutVariant.STACKED,a=(0,react_1.useMemo)((()=>t?null:(0,jsx_runtime_1.jsx)(MiddlePanelWrapper,{isStacked:o,children:(0,jsx_runtime_1.jsx)(PageFooter_1.PageFooter,{})})),[t,o]),s=(0,react_1.useMemo)((()=>t||!theme_1.OpenApiHeader&&!n?null:(0,jsx_runtime_1.jsx)(MiddlePanelWrapper,{isStacked:o,children:n?(0,jsx_runtime_1.jsx)(RenderHook_1.RenderHook,{Hook:n,props:void 0}):(0,jsx_runtime_1.jsx)(theme_1.OpenApiHeader,{})})),[n,t,o]);return 0===e.length?null:(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[s,(0,jsx_runtime_1.jsxs)(common_1.Row,{layout:i,children:[(0,jsx_runtime_1.jsx)(exports.SectionContainer,{layout:i,children:e.filter((({type:e})=>"section"===e)).map((e=>(0,jsx_runtime_1.jsx)(ContentItem_1.ContentItem,{item:e,routingBasePath:r,children:(0,jsx_runtime_1.jsx)(Items_1.Items,{items:e.items,routingBasePath:r})},e.id)))}),(0,jsx_runtime_1.jsx)(exports.RightPanelContainer,{isStacked:o,tabIndex:0,children:(0,jsx_runtime_1.jsx)(RightPanel_1.RightPanel,{item:e[0]})})]}),e.filter((({type:e})=>"section"!==e)).map((e=>(0,jsx_runtime_1.jsx)(ContentItem_1.ContentItem,{item:e,routingBasePath:r,children:(0,jsx_runtime_1.jsx)(Items_1.Items,{items:e.items,routingBasePath:r})},e.id))),a]})}const MiddlePanelWrapper=(0,styled_components_1.default)(common_1.SamplesMiddlePanel)`
2
2
  align-self: flex-start;
3
3
  padding-top: var(--panel-gap-vertical);
4
4
  padding-bottom: var(--panel-gap-vertical);
5
- `,SectionContainer=styled_components_1.default.div`
5
+ `;exports.SectionContainer=styled_components_1.default.div`
6
6
  width: 100%;
7
7
 
8
8
  @media screen and (min-width: ${theme_1.breakpoints.large}) {
9
9
  width: ${({layout:e})=>e===theme_1.LayoutVariant.STACKED?"100%":"calc(100% - var(--panel-samples-width))"};
10
10
  }
11
- `,RightPanelContainer=(0,styled_components_1.default)(common_1.SamplesPanel)`
11
+ `,exports.RightPanelContainer=(0,styled_components_1.default)(common_1.SamplesPanel)`
12
12
  margin: var(--spacing-base) 0;
13
13
  `;
14
14
  //# sourceMappingURL=SectionContent.js.map
@@ -1 +1 @@
1
- export { SectionContent } from './SectionContent';
1
+ export { SectionContent, SectionContainer, RightPanelContainer } from './SectionContent';
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.SectionContent=void 0;var SectionContent_1=require("./SectionContent");Object.defineProperty(exports,"SectionContent",{enumerable:!0,get:function(){return SectionContent_1.SectionContent}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RightPanelContainer=exports.SectionContainer=exports.SectionContent=void 0;var SectionContent_1=require("./SectionContent");Object.defineProperty(exports,"SectionContent",{enumerable:!0,get:function(){return SectionContent_1.SectionContent}}),Object.defineProperty(exports,"SectionContainer",{enumerable:!0,get:function(){return SectionContent_1.SectionContainer}}),Object.defineProperty(exports,"RightPanelContainer",{enumerable:!0,get:function(){return SectionContent_1.RightPanelContainer}});
2
2
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,7 @@
1
+ import { LayoutVariant } from '@redocly/theme';
1
2
  import type { GroupModel } from '../../models';
2
3
  export interface SectionItemProps {
3
4
  item: GroupModel;
5
+ layout: LayoutVariant;
4
6
  }
5
7
  export declare const SectionItem: import("react").NamedExoticComponent<SectionItemProps>;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.SectionItem=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),common_1=require("../common"),Markdown_1=require("../Markdown"),ExternalDocumentation_1=require("../ExternalDocumentation"),app_1=require("../../jotai/app");function SectionItemComponent({item:e}){const{externalDocs:t,ast:r,description:n}=e,o=(0,jotai_1.useAtomValue)(app_1.layoutAtom)===theme_1.LayoutVariant.STACKED,i=!e.parent||"tag"!==e.parent.type;return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(Markdown_1.Markdown,{ast:r,source:n,htmlWrap:e=>(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{compact:!0,fullWidth:i,isStacked:o,children:e})}),t&&(0,jsx_runtime_1.jsx)(common_1.Row,{children:(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{compact:!0,fullWidth:i,isStacked:o,children:(0,jsx_runtime_1.jsx)(ExternalDocumentation_1.ExternalDocumentation,{externalDocs:t})})})]})}exports.SectionItem=(0,react_1.memo)(SectionItemComponent);
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.SectionItem=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),common_1=require("../common"),Markdown_1=require("../Markdown"),ExternalDocumentation_1=require("../ExternalDocumentation");function SectionItemComponent({item:e,layout:t}){const{externalDocs:n,ast:r,description:o}=e,i=t===theme_1.LayoutVariant.STACKED,m=!e.parent||"tag"!==e.parent.type;return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(Markdown_1.Markdown,{ast:r,source:o,htmlWrap:e=>(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{compact:!0,fullWidth:m,isStacked:i,children:e})}),n&&(0,jsx_runtime_1.jsx)(common_1.Row,{children:(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{compact:!0,fullWidth:m,isStacked:i,children:(0,jsx_runtime_1.jsx)(ExternalDocumentation_1.ExternalDocumentation,{externalDocs:n})})})]})}exports.SectionItem=(0,react_1.memo)(SectionItemComponent);
2
2
  //# sourceMappingURL=SectionItem.js.map
@@ -1,4 +1,4 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.SidebarActions=void 0;const jsx_runtime_1=require("react/jsx-runtime"),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),styled_components_1=__importDefault(require("styled-components")),app_1=require("../../jotai/app"),SidebarActions=()=>{const[e,t]=(0,jotai_1.useAtom)(app_1.layoutAtom),[i,r]=(0,jotai_1.useAtom)(app_1.collapsedSidebarAtom);return(0,jsx_runtime_1.jsx)(jsx_runtime_1.Fragment,{children:(0,jsx_runtime_1.jsx)(Wrapper,{children:(0,jsx_runtime_1.jsx)(theme_1.SidebarActions,{layout:e,onChangeViewClick:()=>t(e===theme_1.LayoutVariant.STACKED?theme_1.LayoutVariant.THREE_PANEL:theme_1.LayoutVariant.STACKED),collapsedSidebar:i,onChangeCollapseSidebarClick:()=>r(!i),isOpenapiDocs:!0})})})};exports.SidebarActions=SidebarActions;const Wrapper=styled_components_1.default.div`
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.SidebarActions=void 0;const jsx_runtime_1=require("react/jsx-runtime"),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),styled_components_1=__importDefault(require("styled-components")),app_1=require("../../jotai/app"),SidebarActions=()=>{const[e,t]=(0,jotai_1.useAtom)(app_1.layoutAtom),[i,r]=(0,jotai_1.useAtom)(app_1.collapsedSidebarAtom);return(0,jsx_runtime_1.jsx)(jsx_runtime_1.Fragment,{children:(0,jsx_runtime_1.jsx)(Wrapper,{children:(0,jsx_runtime_1.jsx)(theme_1.SidebarActions,{layout:e,onChangeViewClick:()=>t(e===theme_1.LayoutVariant.STACKED?theme_1.LayoutVariant.THREE_PANEL:theme_1.LayoutVariant.STACKED),collapsedSidebar:i,onChangeCollapseSidebarClick:()=>r(!i),isApiDocs:!0})})})};exports.SidebarActions=SidebarActions;const Wrapper=styled_components_1.default.div`
2
2
  position: sticky;
3
3
  top: calc(100vh);
4
4
  padding: var(--spacing-sm) var(--spacing-md);
@@ -41,6 +41,7 @@
41
41
  border-radius: var(--border-radius);
42
42
  border: var(--schema-inline-border);
43
43
  padding: 0 var(--spacing-unit);
44
+ width: fit-content;
44
45
  `,exports.RecursiveLabel=(0,styled_components_1.default)(exports.Tag)`
45
46
  background-color: var(--schema-recursive-bg-color);
46
47
  border-color: var(--schema-recursive-border-color);
@@ -1,4 +1,4 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.StyledShareLink=void 0,exports.Link=Link,exports.ShareLink=ShareLink;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),react_router_dom_1=require("react-router-dom"),theme_1=require("@redocly/theme"),store_1=require("../../jotai/store"),utils_1=require("../../utils");function Link(e){var t;const{routingBasePath:i,unstable_hooks:r,onDeepLinkClick:n}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom),o=e.security?null===(t=null==r?void 0:r.replaceSecurityLink)||void 0===t?void 0:t.call(r,{securityRequirementId:e.to}):e.to,s=n&&{onClick:e=>{e.preventDefault(),n(i+o)}};return o?(0,jsx_runtime_1.jsx)(react_router_dom_1.Link,Object.assign({"aria-label":e["aria-label"]||`link to ${o}`,id:(0,utils_1.tryDecodeURIComponent)(e.id||""),className:e.className||"",to:(null==o?void 0:o.startsWith("#"))?o:i+o},s,{children:e.children})):e.children?(0,jsx_runtime_1.jsxs)("span",{"aria-label":e["aria-label"]||`link to ${o}`,className:e.className,children:[" ",e.children," "]}):null}function ShareLink(e){return(0,jsx_runtime_1.jsx)(exports.StyledShareLink,Object.assign({},e,{children:(0,jsx_runtime_1.jsx)(theme_1.LinkIcon,{size:"13px",color:"--heading-anchor-color"})}))}exports.StyledShareLink=(0,styled_components_1.default)(Link)`
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.StyledShareLink=void 0,exports.Link=Link,exports.ShareLink=ShareLink;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),react_router_dom_1=require("react-router-dom"),theme_1=require("@redocly/theme"),store_1=require("../../jotai/store"),utils_1=require("../../utils");function Link(e){var t;const{routingBasePath:i,unstable_hooks:r,onDeepLinkClick:n}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom),o=e.security?null===(t=null==r?void 0:r.replaceSecurityLink)||void 0===t?void 0:t.call(r,{securityRequirementId:e.to}):e.to,s=n&&{onClick:e=>{e.preventDefault(),n((i||"")+o)}};return o?(0,jsx_runtime_1.jsx)(react_router_dom_1.Link,Object.assign({"aria-label":e["aria-label"]||`link to ${o}`,id:(0,utils_1.tryDecodeURIComponent)(e.id||""),className:e.className||"",to:(null==o?void 0:o.startsWith("#"))?o:(i||"")+o},s,{children:e.children})):e.children?(0,jsx_runtime_1.jsxs)("span",{"aria-label":e["aria-label"]||`link to ${o}`,className:e.className,children:[" ",e.children," "]}):null}function ShareLink(e){return(0,jsx_runtime_1.jsx)(exports.StyledShareLink,Object.assign({},e,{children:(0,jsx_runtime_1.jsx)(theme_1.LinkIcon,{size:"13px",color:"--heading-anchor-color"})}))}exports.StyledShareLink=(0,styled_components_1.default)(Link)`
2
2
  position: absolute;
3
3
  top: 50%;
4
4
  left: 0;
@@ -3,6 +3,8 @@ import type { OpenAPISchema } from '../../types';
3
3
  interface RedocSchemaProps {
4
4
  pointer?: string;
5
5
  schema?: OpenAPISchema;
6
+ disableDeepLinks?: boolean;
7
+ slug?: string;
6
8
  }
7
- export declare const RedocSchema: ({ pointer, schema }: RedocSchemaProps) => ReactElement;
9
+ export declare const RedocSchema: ({ pointer, schema, disableDeepLinks, slug, }: RedocSchemaProps) => ReactElement;
8
10
  export {};
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RedocSchema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),jotai_1=require("jotai"),models_1=require("../../models"),common_1=require("../common"),styled_components_1=require("./styled.components"),Schema_1=require("../Schema"),store_1=require("../../jotai/store"),RedocSchema=({pointer:e,schema:o})=>{const{options:r,parser:t}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),s=o||{$ref:e},m=(0,models_1.getSchema)({parser:t,schemaOrRef:s,pointer:e||"",options:r,deps:{operation:{pointer:"RedocSchema"}}});return(0,jsx_runtime_1.jsx)(common_1.Row,{children:(0,jsx_runtime_1.jsx)(styled_components_1.FullWidthPanel,{children:(0,jsx_runtime_1.jsx)(Schema_1.Schema,{schema:m,level:1,disableDeepLinks:!0})})})};exports.RedocSchema=RedocSchema;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RedocSchema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),jotai_1=require("jotai"),models_1=require("../../models"),common_1=require("../common"),styled_components_1=require("./styled.components"),Schema_1=require("../Schema"),store_1=require("../../jotai/store"),RedocSchema=({pointer:e,schema:o,disableDeepLinks:r,slug:s})=>{const{options:t,parser:i}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),m=o||{$ref:e},c=(0,models_1.getSchema)({parser:i,schemaOrRef:m,pointer:e||"",options:t,deps:{operation:{pointer:"RedocSchema"}}});return(0,jsx_runtime_1.jsx)(common_1.Row,{children:(0,jsx_runtime_1.jsx)(styled_components_1.FullWidthPanel,{children:(0,jsx_runtime_1.jsx)(Schema_1.Schema,{schema:c,level:1,disableDeepLinks:r,slug:s})})})};exports.RedocSchema=RedocSchema;
2
2
  //# sourceMappingURL=RedocSchema.js.map
@@ -1,3 +1,3 @@
1
1
  export declare function useOtelTelemetry(): {
2
- send(action: "error" | "page.viewed" | "search.ai.query" | "search.query" | "search.result.clicked" | "openapi_docs.viewed" | "openapi_docs.performance_metrics" | "openapi_docs.download_definition.clicked" | "openapi_docs.select_language.clicked" | "openapi_docs.expand_collapse_all.clicked" | "openapi_docs.copy_code_snippet.clicked" | "openapi_docs.switch_servers.clicked" | "openapi_docs.examples_switcher.clicked" | "openapi_docs.try_it.opened", data: unknown): void;
2
+ send(action: "error" | "page.viewed" | "search.ai.query" | "search.query" | "search.result.clicked" | "openapi_docs.viewed" | "openapi_docs.performance_metrics" | "openapi_docs.download_definition.clicked" | "openapi_docs.select_language.clicked" | "openapi_docs.expand_collapse_all.clicked" | "openapi_docs.copy_code_snippet.clicked" | "openapi_docs.switch_servers.clicked" | "openapi_docs.examples_switcher.clicked" | "openapi_docs.try_it.opened" | "asyncapi_docs.performance_metrics" | "asyncapi_docs.viewed" | "asyncapi_docs.switch_message.clicked" | "asyncapi_docs.switch_example.clicked" | "asyncapi_docs.message.clicked", data: unknown): void;
3
3
  };
package/lib/index.d.ts CHANGED
@@ -1,8 +1,10 @@
1
1
  export type { Options } from './services/config-options/types';
2
2
  export type { IMenuItem } from './services/types';
3
- export type { OperationModel, SchemaModel, ContentItemModel } from './models/types';
3
+ export type { OperationModel, SchemaModel, ContentItemModel, GroupModel, FieldModel, } from './models/types';
4
4
  export type { CodeSampleOptions } from './models/code-sample-options';
5
5
  export type { SecurityDetails, OpenAPIDefinition, OpenAPIOperation, OpenAPIParameterLocation, OpenAPISchema, } from './types';
6
+ export type { ServerListProps } from './components/ServerList/types';
7
+ export type { DownloadUrlsConfig, DownloadIconType, UseDownloadInfoProps, UseDownloadInfoReturnType, } from './components/Download/types';
6
8
  export { simplifyAstStructure } from './utils/simplifyAstStructure';
7
9
  export { getOperation } from './models/operation';
8
10
  export { getServerEnvName } from './utils/environments';
@@ -14,8 +16,28 @@ export { RedocSchema, RedocExample } from './components/pluggable';
14
16
  export { RedoclyOpenAPIDocs, RedoclyOpenAPIDocsStandalone, AppProvider, StoreProvider, getMarkdownHeaderId, } from './components/RedoclyOpenAPIDocs';
15
17
  export { JsonPointer } from './utils/JsonPointer';
16
18
  export { isOperationName } from './utils/openapi';
19
+ export { pathIncludesLink } from './utils/path';
17
20
  export { OpenAPIParser } from './services';
18
- export { buildContentItems, normalizeOptions } from './services';
21
+ export { buildContentItems, normalizeOptions, makeDeepLink } from './services';
19
22
  export declare function useOpenapiDocsOptions(): import("./services").Options;
20
23
  export { EmbeddedReplay } from './components/Replay/EmbeddedReplay';
21
24
  export { convertOperationToReplayValue } from './components/Replay/utils';
25
+ export { SectionContainer } from './components/SectionContent';
26
+ export { Row } from './components/common';
27
+ export { RightPanelContainer } from './components/SectionContent';
28
+ export { Overview } from './components/Overview';
29
+ export { SamplesMiddlePanel, Section, SamplesPanel } from './components/common';
30
+ export { Heading } from './components/common/OperationItemTitle';
31
+ export { Dropdown } from './components/common/Dropdown';
32
+ export { Markdown } from './components/Markdown';
33
+ export { FieldValueLabel, FieldLabel } from './components/common';
34
+ export { CodeBlockPanel } from './components/common';
35
+ export { OperationSamplesPanel } from './components/OperationItem/OperationItem';
36
+ export { ExternalDocumentation } from './components/ExternalDocumentation';
37
+ export { PropertyDetails } from './components/PropertyDetails';
38
+ export { addMarkdownItems } from './services/menu/markdown';
39
+ export { getValueFromMdParsedExtension } from './utils/helpers';
40
+ export { ContentItem } from './components/ContentItem';
41
+ export { ExampleSwitch } from './components/Samples/ExampleSwitch';
42
+ export { useDownloadInfo } from './components/Download/useDownloadInfo';
43
+ export { SECTION_ATTR } from './constants';
package/lib/index.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.convertOperationToReplayValue=exports.EmbeddedReplay=exports.normalizeOptions=exports.buildContentItems=exports.OpenAPIParser=exports.isOperationName=exports.JsonPointer=exports.getMarkdownHeaderId=exports.StoreProvider=exports.AppProvider=exports.RedoclyOpenAPIDocsStandalone=exports.RedoclyOpenAPIDocs=exports.RedocExample=exports.RedocSchema=exports.ResponseSamples=exports.RequestSamples=exports.generateDeepLink=exports.getTagOrGroup=exports.getServerEnvName=exports.getOperation=exports.simplifyAstStructure=void 0,exports.useOpenapiDocsOptions=useOpenapiDocsOptions;const jotai_1=require("jotai"),store_1=require("./jotai/store");var simplifyAstStructure_1=require("./utils/simplifyAstStructure");Object.defineProperty(exports,"simplifyAstStructure",{enumerable:!0,get:function(){return simplifyAstStructure_1.simplifyAstStructure}});var operation_1=require("./models/operation");Object.defineProperty(exports,"getOperation",{enumerable:!0,get:function(){return operation_1.getOperation}});var environments_1=require("./utils/environments");Object.defineProperty(exports,"getServerEnvName",{enumerable:!0,get:function(){return environments_1.getServerEnvName}});var group_1=require("./models/group");Object.defineProperty(exports,"getTagOrGroup",{enumerable:!0,get:function(){return group_1.getTagOrGroup}});var common_1=require("./components/common");Object.defineProperty(exports,"generateDeepLink",{enumerable:!0,get:function(){return common_1.generateDeepLink}});var RequestSamples_1=require("./components/RequestSamples");Object.defineProperty(exports,"RequestSamples",{enumerable:!0,get:function(){return RequestSamples_1.RequestSamples}});var ResponseSamples_1=require("./components/ResponseSamples");Object.defineProperty(exports,"ResponseSamples",{enumerable:!0,get:function(){return ResponseSamples_1.ResponseSamples}});var pluggable_1=require("./components/pluggable");Object.defineProperty(exports,"RedocSchema",{enumerable:!0,get:function(){return pluggable_1.RedocSchema}}),Object.defineProperty(exports,"RedocExample",{enumerable:!0,get:function(){return pluggable_1.RedocExample}});var RedoclyOpenAPIDocs_1=require("./components/RedoclyOpenAPIDocs");Object.defineProperty(exports,"RedoclyOpenAPIDocs",{enumerable:!0,get:function(){return RedoclyOpenAPIDocs_1.RedoclyOpenAPIDocs}}),Object.defineProperty(exports,"RedoclyOpenAPIDocsStandalone",{enumerable:!0,get:function(){return RedoclyOpenAPIDocs_1.RedoclyOpenAPIDocsStandalone}}),Object.defineProperty(exports,"AppProvider",{enumerable:!0,get:function(){return RedoclyOpenAPIDocs_1.AppProvider}}),Object.defineProperty(exports,"StoreProvider",{enumerable:!0,get:function(){return RedoclyOpenAPIDocs_1.StoreProvider}}),Object.defineProperty(exports,"getMarkdownHeaderId",{enumerable:!0,get:function(){return RedoclyOpenAPIDocs_1.getMarkdownHeaderId}});var JsonPointer_1=require("./utils/JsonPointer");Object.defineProperty(exports,"JsonPointer",{enumerable:!0,get:function(){return JsonPointer_1.JsonPointer}});var openapi_1=require("./utils/openapi");Object.defineProperty(exports,"isOperationName",{enumerable:!0,get:function(){return openapi_1.isOperationName}});var services_1=require("./services");Object.defineProperty(exports,"OpenAPIParser",{enumerable:!0,get:function(){return services_1.OpenAPIParser}});var services_2=require("./services");function useOpenapiDocsOptions(){return(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom)}Object.defineProperty(exports,"buildContentItems",{enumerable:!0,get:function(){return services_2.buildContentItems}}),Object.defineProperty(exports,"normalizeOptions",{enumerable:!0,get:function(){return services_2.normalizeOptions}});var EmbeddedReplay_1=require("./components/Replay/EmbeddedReplay");Object.defineProperty(exports,"EmbeddedReplay",{enumerable:!0,get:function(){return EmbeddedReplay_1.EmbeddedReplay}});var utils_1=require("./components/Replay/utils");Object.defineProperty(exports,"convertOperationToReplayValue",{enumerable:!0,get:function(){return utils_1.convertOperationToReplayValue}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.SECTION_ATTR=exports.useDownloadInfo=exports.ExampleSwitch=exports.ContentItem=exports.getValueFromMdParsedExtension=exports.addMarkdownItems=exports.PropertyDetails=exports.ExternalDocumentation=exports.OperationSamplesPanel=exports.CodeBlockPanel=exports.FieldLabel=exports.FieldValueLabel=exports.Markdown=exports.Dropdown=exports.Heading=exports.SamplesPanel=exports.Section=exports.SamplesMiddlePanel=exports.Overview=exports.RightPanelContainer=exports.Row=exports.SectionContainer=exports.convertOperationToReplayValue=exports.EmbeddedReplay=exports.makeDeepLink=exports.normalizeOptions=exports.buildContentItems=exports.OpenAPIParser=exports.pathIncludesLink=exports.isOperationName=exports.JsonPointer=exports.getMarkdownHeaderId=exports.StoreProvider=exports.AppProvider=exports.RedoclyOpenAPIDocsStandalone=exports.RedoclyOpenAPIDocs=exports.RedocExample=exports.RedocSchema=exports.ResponseSamples=exports.RequestSamples=exports.generateDeepLink=exports.getTagOrGroup=exports.getServerEnvName=exports.getOperation=exports.simplifyAstStructure=void 0,exports.useOpenapiDocsOptions=useOpenapiDocsOptions;const jotai_1=require("jotai"),store_1=require("./jotai/store");var simplifyAstStructure_1=require("./utils/simplifyAstStructure");Object.defineProperty(exports,"simplifyAstStructure",{enumerable:!0,get:function(){return simplifyAstStructure_1.simplifyAstStructure}});var operation_1=require("./models/operation");Object.defineProperty(exports,"getOperation",{enumerable:!0,get:function(){return operation_1.getOperation}});var environments_1=require("./utils/environments");Object.defineProperty(exports,"getServerEnvName",{enumerable:!0,get:function(){return environments_1.getServerEnvName}});var group_1=require("./models/group");Object.defineProperty(exports,"getTagOrGroup",{enumerable:!0,get:function(){return group_1.getTagOrGroup}});var common_1=require("./components/common");Object.defineProperty(exports,"generateDeepLink",{enumerable:!0,get:function(){return common_1.generateDeepLink}});var RequestSamples_1=require("./components/RequestSamples");Object.defineProperty(exports,"RequestSamples",{enumerable:!0,get:function(){return RequestSamples_1.RequestSamples}});var ResponseSamples_1=require("./components/ResponseSamples");Object.defineProperty(exports,"ResponseSamples",{enumerable:!0,get:function(){return ResponseSamples_1.ResponseSamples}});var pluggable_1=require("./components/pluggable");Object.defineProperty(exports,"RedocSchema",{enumerable:!0,get:function(){return pluggable_1.RedocSchema}}),Object.defineProperty(exports,"RedocExample",{enumerable:!0,get:function(){return pluggable_1.RedocExample}});var RedoclyOpenAPIDocs_1=require("./components/RedoclyOpenAPIDocs");Object.defineProperty(exports,"RedoclyOpenAPIDocs",{enumerable:!0,get:function(){return RedoclyOpenAPIDocs_1.RedoclyOpenAPIDocs}}),Object.defineProperty(exports,"RedoclyOpenAPIDocsStandalone",{enumerable:!0,get:function(){return RedoclyOpenAPIDocs_1.RedoclyOpenAPIDocsStandalone}}),Object.defineProperty(exports,"AppProvider",{enumerable:!0,get:function(){return RedoclyOpenAPIDocs_1.AppProvider}}),Object.defineProperty(exports,"StoreProvider",{enumerable:!0,get:function(){return RedoclyOpenAPIDocs_1.StoreProvider}}),Object.defineProperty(exports,"getMarkdownHeaderId",{enumerable:!0,get:function(){return RedoclyOpenAPIDocs_1.getMarkdownHeaderId}});var JsonPointer_1=require("./utils/JsonPointer");Object.defineProperty(exports,"JsonPointer",{enumerable:!0,get:function(){return JsonPointer_1.JsonPointer}});var openapi_1=require("./utils/openapi");Object.defineProperty(exports,"isOperationName",{enumerable:!0,get:function(){return openapi_1.isOperationName}});var path_1=require("./utils/path");Object.defineProperty(exports,"pathIncludesLink",{enumerable:!0,get:function(){return path_1.pathIncludesLink}});var services_1=require("./services");Object.defineProperty(exports,"OpenAPIParser",{enumerable:!0,get:function(){return services_1.OpenAPIParser}});var services_2=require("./services");function useOpenapiDocsOptions(){return(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom)}Object.defineProperty(exports,"buildContentItems",{enumerable:!0,get:function(){return services_2.buildContentItems}}),Object.defineProperty(exports,"normalizeOptions",{enumerable:!0,get:function(){return services_2.normalizeOptions}}),Object.defineProperty(exports,"makeDeepLink",{enumerable:!0,get:function(){return services_2.makeDeepLink}});var EmbeddedReplay_1=require("./components/Replay/EmbeddedReplay");Object.defineProperty(exports,"EmbeddedReplay",{enumerable:!0,get:function(){return EmbeddedReplay_1.EmbeddedReplay}});var utils_1=require("./components/Replay/utils");Object.defineProperty(exports,"convertOperationToReplayValue",{enumerable:!0,get:function(){return utils_1.convertOperationToReplayValue}});var SectionContent_1=require("./components/SectionContent");Object.defineProperty(exports,"SectionContainer",{enumerable:!0,get:function(){return SectionContent_1.SectionContainer}});var common_2=require("./components/common");Object.defineProperty(exports,"Row",{enumerable:!0,get:function(){return common_2.Row}});var SectionContent_2=require("./components/SectionContent");Object.defineProperty(exports,"RightPanelContainer",{enumerable:!0,get:function(){return SectionContent_2.RightPanelContainer}});var Overview_1=require("./components/Overview");Object.defineProperty(exports,"Overview",{enumerable:!0,get:function(){return Overview_1.Overview}});var common_3=require("./components/common");Object.defineProperty(exports,"SamplesMiddlePanel",{enumerable:!0,get:function(){return common_3.SamplesMiddlePanel}}),Object.defineProperty(exports,"Section",{enumerable:!0,get:function(){return common_3.Section}}),Object.defineProperty(exports,"SamplesPanel",{enumerable:!0,get:function(){return common_3.SamplesPanel}});var OperationItemTitle_1=require("./components/common/OperationItemTitle");Object.defineProperty(exports,"Heading",{enumerable:!0,get:function(){return OperationItemTitle_1.Heading}});var Dropdown_1=require("./components/common/Dropdown");Object.defineProperty(exports,"Dropdown",{enumerable:!0,get:function(){return Dropdown_1.Dropdown}});var Markdown_1=require("./components/Markdown");Object.defineProperty(exports,"Markdown",{enumerable:!0,get:function(){return Markdown_1.Markdown}});var common_4=require("./components/common");Object.defineProperty(exports,"FieldValueLabel",{enumerable:!0,get:function(){return common_4.FieldValueLabel}}),Object.defineProperty(exports,"FieldLabel",{enumerable:!0,get:function(){return common_4.FieldLabel}});var common_5=require("./components/common");Object.defineProperty(exports,"CodeBlockPanel",{enumerable:!0,get:function(){return common_5.CodeBlockPanel}});var OperationItem_1=require("./components/OperationItem/OperationItem");Object.defineProperty(exports,"OperationSamplesPanel",{enumerable:!0,get:function(){return OperationItem_1.OperationSamplesPanel}});var ExternalDocumentation_1=require("./components/ExternalDocumentation");Object.defineProperty(exports,"ExternalDocumentation",{enumerable:!0,get:function(){return ExternalDocumentation_1.ExternalDocumentation}});var PropertyDetails_1=require("./components/PropertyDetails");Object.defineProperty(exports,"PropertyDetails",{enumerable:!0,get:function(){return PropertyDetails_1.PropertyDetails}});var markdown_1=require("./services/menu/markdown");Object.defineProperty(exports,"addMarkdownItems",{enumerable:!0,get:function(){return markdown_1.addMarkdownItems}});var helpers_1=require("./utils/helpers");Object.defineProperty(exports,"getValueFromMdParsedExtension",{enumerable:!0,get:function(){return helpers_1.getValueFromMdParsedExtension}});var ContentItem_1=require("./components/ContentItem");Object.defineProperty(exports,"ContentItem",{enumerable:!0,get:function(){return ContentItem_1.ContentItem}});var ExampleSwitch_1=require("./components/Samples/ExampleSwitch");Object.defineProperty(exports,"ExampleSwitch",{enumerable:!0,get:function(){return ExampleSwitch_1.ExampleSwitch}});var useDownloadInfo_1=require("./components/Download/useDownloadInfo");Object.defineProperty(exports,"useDownloadInfo",{enumerable:!0,get:function(){return useDownloadInfo_1.useDownloadInfo}});var constants_1=require("./constants");Object.defineProperty(exports,"SECTION_ATTR",{enumerable:!0,get:function(){return constants_1.SECTION_ATTR}});
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,a,s){void 0===s&&(s=a);var r=Object.getOwnPropertyDescriptor(t,a);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[a]}}),Object.defineProperty(e,s,r)}:function(e,t,a,s){void 0===s&&(s=a),e[s]=t[a]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)"default"!==a&&Object.prototype.hasOwnProperty.call(e,a)&&__createBinding(t,e,a);return __setModuleDefault(t,e),t},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getCodeSample=getCodeSample,exports.getDataRequest=getDataRequest,exports.isDefined=isDefined,exports.capitalizeFirst=capitalizeFirst;const Sampler=__importStar(require("openapi-sampler")),deepmerge_1=__importDefault(require("deepmerge")),theme_1=require("@redocly/theme"),utils_1=require("../../utils"),utils_2=require("../utils"),constants_1=require("../../constants"),httpsnippet_1=require("./httpsnippet"),mediaContent_1=require("../../models/mediaContent"),string_utility_1=__importDefault(require("./httpsnippet/helpers/string-utility"));function getSelectedSecurityScheme(e,t){return e.find((e=>{const a=e.schemes.map((e=>e.id));return(0,utils_1.areArraysEqual)(a,t||[])}))}function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:s=!1,spec:r,generatedPayloadSamplesMaxDepth:i=8,pathParams:n={},properties:l={},activeMimeName:o=""},{environment:u,requestValues:c,activeSecuritySchemeIds:p}){var d,m,_;const f=u.server,h=e.servers.find((e=>e.url===f))||e.servers[0],g=getSelectedSecurityScheme(e.security,p),{securityHeaders:y,securityCookies:O,securityQueries:v,securityOAuth2ExtraCalls:S,basicAuth:T}=getSecurityData(g||(null===(d=e.security)||void 0===d?void 0:d[0]),s,u),b=(null===(m=null==e?void 0:e.requestBody)||void 0===m?void 0:m.content)&&(0,mediaContent_1.getActiveMediaType)(e.requestBody.content,o),C={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:i,quiet:!0},k=c;let j=!1;const D=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=k.header)||void 0===t?void 0:t[e.name])||(0,utils_1.getParameterValue)("header",e.name)||e.example||(0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,C,r))}})).map((e=>((null==b?void 0:b.name)&&"content-type"===e.name.toLowerCase()&&(j=!0,e.value=b.name),e))).concat(y);!j&&(null==b?void 0:b.name)&&D.unshift({name:"Content-Type",value:null==b?void 0:b.name});const E=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,e.example||Sampler.sample(e.schema.rawSchema,C,r))))).reduce(((e,t)=>{var a;for(const[s,r]of Object.entries(t))e.push({name:s,value:String((null===(a=k.cookie)||void 0===a?void 0:a[s])||r)});return e}),[]).concat(O),q=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,e.example||Sampler.sample(e.schema.rawSchema,C,r))))).reduce(((e,t)=>{var a,s,r;for(const[i,n]of Object.entries(t))e.push({name:i,value:(0,utils_1.isArrayOfObjects)(null===(a=k.query)||void 0===a?void 0:a[i])&&JSON.stringify((0,utils_1.deleteEmptyArrayItem)(null===(s=k.query)||void 0===s?void 0:s[i]))||String((null===(r=k.query)||void 0===r?void 0:r[i])||n)});return e}),[]).concat(v),P=`${null==h?void 0:h.url.replace(/\/$/,"")}/${e.path.replace(/^\//,"")}`,w=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:s,name:r}=t;return e[r]=(null===(a=k.path)||void 0===a?void 0:a[r])||t.example||n[r]||(0,utils_1.getParameterValue)(s,r),e}),{}),A=null===(_=null==b?void 0:b.examples)||void 0===_?void 0:_[t],x=(null==b?void 0:b.examples)||{},[M]=Object.values(x),R=null==b?void 0:b.name.toLowerCase(),N=(null==k?void 0:k.body)||(null==A?void 0:A.value)||(null==M?void 0:M.value)||(null==b?void 0:b.schema)&&Sampler.sample(null==b?void 0:b.schema.rawSchema,Object.assign(Object.assign({},C),{format:R===constants_1.MediaTypes.XML?"xml":"json"}),r);let H="",U=[];switch((0,utils_2.normalizeMimeType)(R)){case constants_1.MediaTypes.JSON:H=JSON.stringify(getDataRequest(N,l));break;case constants_1.MediaTypes.XML:H=N;break;case constants_1.MediaTypes.URL_ENCODED:case constants_1.MediaTypes.MULTIPART:H=utils_1.queryString.stringify(getDataRequest(N,l)),U=objectToHarParams(getDataRequest(N,l));break;default:H=String(N||"")}const $=H?{mimeType:(null==b?void 0:b.name)||constants_1.MediaTypes.OCTET_STREAM,text:H,params:U}:void 0,z=e.responses.map((e=>e.code));return{method:e.httpVerb,url:P,httpVersion:"HTTP/1.1",cookies:E,headers:D,queryString:q,postData:$,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:S,basicAuth:T,pathParameters:w,serverVariables:u,allResponseCodes:z}}const defaultOptions={withImports:!0,withComments:!1},langToSnippetConfig={curl:{code:"shell",defaultTarget:"curl",defaultOptions:Object.assign(Object.assign({},defaultOptions),{short:!0})},JavaScript:{code:"javascript",defaultTarget:"fetch",defaultOptions:Object.assign(Object.assign({},defaultOptions),{withImports:!1})},"Node.js":{code:"node",defaultTarget:"fetch",defaultOptions:Object.assign({},defaultOptions)},Python:{code:"python",defaultTarget:"requests",defaultOptions:Object.assign({},defaultOptions)},"Java8+Apache":{code:"java8",defaultTarget:"apachehttp",defaultOptions:Object.assign({},defaultOptions)},Java:{code:"java",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#":{code:"csharp",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#+Newtonsoft":{code:"csharpNewtonsoft",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},Go:{code:"go",defaultTarget:"http.DefaultClient",defaultOptions:Object.assign({},defaultOptions)},PHP:{code:"php",defaultTarget:"curl",defaultOptions:Object.assign({},defaultOptions)},Ruby:{code:"ruby",defaultTarget:"net::http",defaultOptions:Object.assign({},defaultOptions)},R:{code:"r",defaultTarget:"httr",defaultOptions:Object.assign({},defaultOptions)}};function getCodeSample({lang:e,operation:t,exampleName:a,pathParams:s,properties:r,options:i={},environment:n,translate:l}){try{const{skipOptionalParameters:o,withOAuth2Call:u,spec:c,generatedPayloadSamplesMaxDepth:p,store:d,activeMimeName:m}=i,_=mapOperationToHAR(t,{exampleName:a,pathParams:s,properties:r,skipOptionalParameters:o,withOAuth2Call:u,spec:c,generatedPayloadSamplesMaxDepth:p,activeMimeName:m},{environment:n,requestValues:d.requestValues,activeSecuritySchemeIds:d.activeSecuritySchemeIds}),f=new httpsnippet_1.HTTPSnippet(_);return langToSnippetConfig[e]?f.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),i)):l("openapi.unsupportedLanguage","Language is not supported.")}catch(e){return console.error(e),l("openapi.failedToGenerateCodeSample","Failed to generate code sample.")}}function getSecurityData(e,t,a){var s,r,i,n,l;const o={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const u of(null==e?void 0:e.schemes)||[]){const e=(0,utils_1.getSecurityDetails)(u.id,a),c={access_token:u["x-defaultAccessToken"],token_type:u["x-defaultTokenType"],client_id:u["x-defaultClientId"],client_secret:u["x-defaultClientSecret"]},p=u["x-defaultUsername"],d=u["x-defaultPassword"];switch(u.type){case"openIdConnect":null===(s=o.securityHeaders)||void 0===s||s.push({name:"Authorization",value:c.access_token?`${c.token_type||"Bearer"} ${c.access_token}`:e.token?`${c.token_type||e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=c.access_token?`${c.token_type||"Bearer"} ${c.access_token}`:e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";u.flows.clientCredentials&&t?o.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(u.flows.clientCredentials,u.scopes,Object.assign(Object.assign({},e),{client_id:c.client_id||e.client_id,client_secret:c.client_secret||e.client_secret}))):u.flows.password&&t&&o.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(u.flows.password,u.scopes,Object.assign(Object.assign({},e),{client_id:c.client_id||e.client_id,client_secret:c.client_secret||e.client_secret}))),null===(r=o.securityHeaders)||void 0===r||r.push({name:"Authorization",value:a});break}case"apiKey":{const t=c.access_token||e.raw||"YOUR_API_KEY_HERE";"header"===u.in&&(null===(i=o.securityHeaders)||void 0===i||i.push({name:u.name,value:t})),"cookie"===u.in&&o.securityCookies.push({name:u.name,value:t}),"query"===u.in&&o.securityQueries.push({name:u.name,value:t});break}case"http":if("basic"===u.scheme)o.basicAuth={username:p||e.username||`<${string_utility_1.default.toSnakeCase("Username")}>`,password:d||e.password||`<${string_utility_1.default.toSnakeCase("Password")}>`};else{const t=(null==c?void 0:c.access_token)||(null===(n=e.token)||void 0===n?void 0:n.access_token)||`<YOUR_${u.bearerFormat||"TOKEN"}_HERE>`;null===(l=o.securityHeaders)||void 0===l||l.push({name:"Authorization",value:`${capitalizeFirst(u.scheme||"bearer")} ${t}`})}}}return o}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"password"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},{name:"username",value:a.username||"<username>"},{name:"password",value:a.password||"<password>"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getOAuth2ClientCredsCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"client_credentials"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getDataRequest(e,t){if(e){if((0,theme_1.isObject)(e))return Object.keys(e).length>0&&0===Object.keys(t).length?e:(0,deepmerge_1.default)(e,t,{arrayMerge:utils_2.arrayMergeStrategy});try{return(0,deepmerge_1.default)(JSON.parse(e),t,{arrayMerge:utils_2.arrayMergeStrategy})}catch(e){return!1}}return!1}function objectToHarParams(e,t=""){const a=[];if(Array.isArray(e))return e.map((e=>({name:`${t}`,value:String(e)})));for(const[s,r]of Object.entries(e)){const e=t?`${t}[${s}]`:s;"object"==typeof r&&null!==r?a.push(...objectToHarParams(r,e)):a.push({name:e,value:String(r)})}return a}function isDefined(e){return void 0!==e}function capitalizeFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}
1
+ "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,a,s){void 0===s&&(s=a);var r=Object.getOwnPropertyDescriptor(t,a);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[a]}}),Object.defineProperty(e,s,r)}:function(e,t,a,s){void 0===s&&(s=a),e[s]=t[a]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)"default"!==a&&Object.prototype.hasOwnProperty.call(e,a)&&__createBinding(t,e,a);return __setModuleDefault(t,e),t},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getCodeSample=getCodeSample,exports.getDataRequest=getDataRequest,exports.isDefined=isDefined,exports.capitalizeFirst=capitalizeFirst;const Sampler=__importStar(require("openapi-sampler")),deepmerge_1=__importDefault(require("deepmerge")),theme_1=require("@redocly/theme"),utils_1=require("../../utils"),utils_2=require("../utils"),constants_1=require("../../constants"),httpsnippet_1=require("./httpsnippet"),mediaContent_1=require("../../models/mediaContent"),string_utility_1=__importDefault(require("./httpsnippet/helpers/string-utility"));function getSelectedSecurityScheme(e,t){return e.find((e=>{const a=e.schemes.map((e=>e.id));return(0,utils_1.areArraysEqual)(a,t||[])}))}function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:s=!1,spec:r,generatedPayloadSamplesMaxDepth:i=8,pathParams:n={},properties:o={},activeMimeName:l=""},{environment:u,requestValues:c,activeSecuritySchemeIds:p}){var d,m,_;const f=u.server,h=e.servers.find((e=>e.url===f))||e.servers[0],y=getSelectedSecurityScheme(e.security,p),{securityHeaders:g,securityCookies:O,securityQueries:v,securityOAuth2ExtraCalls:S,basicAuth:T}=getSecurityData(y||(null===(d=e.security)||void 0===d?void 0:d[0]),s,u),b=(null===(m=null==e?void 0:e.requestBody)||void 0===m?void 0:m.content)&&(0,mediaContent_1.getActiveMediaType)(e.requestBody.content,l),C={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:i,quiet:!0},k=c;let j=!1;const D=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=k.header)||void 0===t?void 0:t[e.name])||(0,utils_1.getParameterValue)("header",e.name)||e.example||(0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,C,r))}})).map((e=>((null==b?void 0:b.name)&&"content-type"===e.name.toLowerCase()&&(j=!0,e.value=b.name),e))).concat(g);!j&&(null==b?void 0:b.name)&&D.unshift({name:"Content-Type",value:null==b?void 0:b.name});const E=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,e.example||Sampler.sample(e.schema.rawSchema,C,r))))).reduce(((e,t)=>{var a;for(const[s,r]of Object.entries(t))e.push({name:s,value:String((null===(a=k.cookie)||void 0===a?void 0:a[s])||r)});return e}),[]).concat(O),q=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,e.example||Sampler.sample(e.schema.rawSchema,C,r))))).reduce(((e,t)=>{var a,s,r;for(const[i,n]of Object.entries(t))e.push({name:i,value:(0,utils_1.isArrayOfObjects)(null===(a=k.query)||void 0===a?void 0:a[i])&&JSON.stringify((0,utils_1.deleteEmptyArrayItem)(null===(s=k.query)||void 0===s?void 0:s[i]))||String((null===(r=k.query)||void 0===r?void 0:r[i])||n)});return e}),[]).concat(v),P=`${null==h?void 0:h.url.replace(/\/$/,"")}/${e.path.replace(/^\//,"")}`,w=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:s,name:r}=t;return e[r]=(null===(a=k.path)||void 0===a?void 0:a[r])||t.example||n[r]||(0,utils_1.getParameterValue)(s,r),e}),{}),A=null===(_=null==b?void 0:b.examples)||void 0===_?void 0:_[t],x=(null==b?void 0:b.examples)||{},[M]=Object.values(x),R=null==b?void 0:b.name.toLowerCase(),N=(null==k?void 0:k.body)||(null==A?void 0:A.value)||(null==M?void 0:M.value)||(null==b?void 0:b.schema)&&Sampler.sample(null==b?void 0:b.schema.rawSchema,Object.assign(Object.assign({},C),{format:R===constants_1.MediaTypes.XML?"xml":"json"}),r);let H="",U=[];switch((0,utils_2.normalizeMimeType)(R)){case constants_1.MediaTypes.JSON:H=JSON.stringify(getDataRequest(N,o));break;case constants_1.MediaTypes.XML:H=N;break;case constants_1.MediaTypes.URL_ENCODED:case constants_1.MediaTypes.MULTIPART:H=utils_1.queryString.stringify(getDataRequest(N,o)),U=objectToHarParams(getDataRequest(N,o));break;default:H=String(N||"")}const $=H?{mimeType:(null==b?void 0:b.name)||constants_1.MediaTypes.OCTET_STREAM,text:H,params:U}:void 0,z=e.responses.map((e=>e.code));return{method:e.httpVerb,url:P,httpVersion:"HTTP/1.1",cookies:E,headers:D,queryString:q,postData:$,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:S,basicAuth:T,pathParameters:w,serverVariables:u,allResponseCodes:z}}const defaultOptions={withImports:!0,withComments:!1},langToSnippetConfig={curl:{code:"shell",defaultTarget:"curl",defaultOptions:Object.assign(Object.assign({},defaultOptions),{short:!0})},JavaScript:{code:"javascript",defaultTarget:"fetch",defaultOptions:Object.assign(Object.assign({},defaultOptions),{withImports:!1})},"Node.js":{code:"node",defaultTarget:"fetch",defaultOptions:Object.assign({},defaultOptions)},Python:{code:"python",defaultTarget:"requests",defaultOptions:Object.assign({},defaultOptions)},"Java8+Apache":{code:"java8",defaultTarget:"apachehttp",defaultOptions:Object.assign({},defaultOptions)},Java:{code:"java",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#":{code:"csharp",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#+Newtonsoft":{code:"csharpNewtonsoft",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},Go:{code:"go",defaultTarget:"http.DefaultClient",defaultOptions:Object.assign({},defaultOptions)},PHP:{code:"php",defaultTarget:"curl",defaultOptions:Object.assign({},defaultOptions)},Ruby:{code:"ruby",defaultTarget:"net::http",defaultOptions:Object.assign({},defaultOptions)},R:{code:"r",defaultTarget:"httr",defaultOptions:Object.assign({},defaultOptions)}};function getCodeSample({lang:e,operation:t,exampleName:a,pathParams:s,properties:r,options:i={},environment:n,translate:o}){try{const{skipOptionalParameters:l,withOAuth2Call:u,spec:c,generatedPayloadSamplesMaxDepth:p,store:d,activeMimeName:m}=i,_=mapOperationToHAR(t,{exampleName:a,pathParams:s,properties:r,skipOptionalParameters:l,withOAuth2Call:u,spec:c,generatedPayloadSamplesMaxDepth:p,activeMimeName:m},{environment:n,requestValues:d.requestValues,activeSecuritySchemeIds:d.activeSecuritySchemeIds}),f=new httpsnippet_1.HTTPSnippet(_);return langToSnippetConfig[e]?f.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),i)):o("openapi.unsupportedLanguage","Language is not supported.")}catch(e){return console.error(e),o("openapi.failedToGenerateCodeSample","Failed to generate code sample.")}}function getSecurityData(e,t,a){var s,r,i,n,o;const l={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const u of(null==e?void 0:e.schemes)||[]){const e=(0,utils_1.getSecurityDetails)(u.id,a),c={access_token:u["x-defaultAccessToken"],token_type:u["x-defaultTokenType"],client_id:u["x-defaultClientId"],client_secret:u["x-defaultClientSecret"]},p=u["x-defaultUsername"],d=u["x-defaultPassword"];switch(u.type){case"openIdConnect":null===(s=l.securityHeaders)||void 0===s||s.push({name:"Authorization",value:c.access_token?`${c.token_type||"Bearer"} ${c.access_token}`:e.token?`${c.token_type||e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=c.access_token?`${c.token_type||"Bearer"} ${c.access_token}`:e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";u.flows.clientCredentials&&t?l.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(u.flows.clientCredentials,u.scopes,Object.assign(Object.assign({},e),{client_id:c.client_id||e.client_id,client_secret:c.client_secret||e.client_secret}))):u.flows.password&&t&&l.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(u.flows.password,u.scopes,Object.assign(Object.assign({},e),{client_id:c.client_id||e.client_id,client_secret:c.client_secret||e.client_secret}))),null===(r=l.securityHeaders)||void 0===r||r.push({name:"Authorization",value:a});break}case"apiKey":{const t=c.access_token||e.raw||"YOUR_API_KEY_HERE";"header"===u.in&&(null===(i=l.securityHeaders)||void 0===i||i.push({name:u.name,value:t})),"cookie"===u.in&&l.securityCookies.push({name:u.name,value:t}),"query"===u.in&&l.securityQueries.push({name:u.name,value:t});break}case"http":if("basic"===u.scheme)l.basicAuth={username:p||e.username||`<${string_utility_1.default.toSnakeCase("Username")}>`,password:d||e.password||`<${string_utility_1.default.toSnakeCase("Password")}>`};else{const t=(null==c?void 0:c.access_token)||(null===(n=e.token)||void 0===n?void 0:n.access_token)||`<YOUR_${u.bearerFormat||"TOKEN"}_HERE>`;null===(o=l.securityHeaders)||void 0===o||o.push({name:"Authorization",value:`${capitalizeFirst(u.scheme||"bearer")} ${t}`})}}}return l}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"password"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},{name:"username",value:a.username||"<username>"},{name:"password",value:a.password||"<password>"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getOAuth2ClientCredsCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"client_credentials"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getDataRequest(e,t){if(e){if((0,theme_1.isObject)(e))return Object.keys(e).length>0&&0===Object.keys(t).length?e:(0,deepmerge_1.default)(e,t,{arrayMerge:utils_2.arrayMergeStrategy});try{return(0,deepmerge_1.default)(JSON.parse(e),t,{arrayMerge:utils_2.arrayMergeStrategy})}catch(e){return!1}}return!1}function objectToHarParams(e,t=""){const a=[];for(const[s,r]of Object.entries(e)){const i=t?`${t}[${s}]`:s;if("object"==typeof r&&null!==r)a.push(...objectToHarParams(r,i));else{const s=Array.isArray(e)&&"string"==typeof r&&t?t:i;a.push({name:s,value:String(r)})}}return a}function isDefined(e){return void 0!==e}function capitalizeFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}
2
2
  //# sourceMappingURL=generator.js.map
@@ -24,6 +24,7 @@ export interface OpenAPIInfo extends ParsedDescriptionWithSummary {
24
24
  termsOfService?: string;
25
25
  contact?: OpenAPIContact;
26
26
  license?: OpenAPILicense;
27
+ externalDocs?: OpenAPIExternalDocumentation;
27
28
  'x-logo'?: XLogo;
28
29
  'x-metadata'?: XMetadata;
29
30
  'x-seo'?: XSEO;
@@ -1,5 +1,7 @@
1
+ import { LayoutVariant } from '@redocly/theme';
1
2
  import type { ReactElement } from 'react';
2
3
  import type { GroupModel } from '../../models';
3
- export declare function ApiInfo({ item }: {
4
+ export declare function ApiInfo({ item, layout, }: {
4
5
  item: GroupModel;
6
+ layout: LayoutVariant;
5
7
  }): ReactElement | null;
@@ -1,2 +1,2 @@
1
- import{jsxs as _jsxs,jsx as _jsx}from"react/jsx-runtime";import{useAtomValue}from"jotai";import{AfterOpenApiTitle,LayoutVariant}from"@redocly/theme";import{layoutAtom}from"../../jotai/app";import{SamplesMiddlePanel,Row}from"../common";import{ExternalDocumentation}from"../ExternalDocumentation";import{Markdown}from"../Markdown";import{ApiHeader}from"./styled";import{globalStoreAtom}from"../../jotai/store";import{saveTextBeforeHeading}from"../../utils/saveTextBeforeHeading";import{getValueFromMdParsedExtension}from"../../utils/helpers";import{RenderHook}from"../RenderHook";import{Metadata}from"./Metadata";import{useTranslate}from"../../hooks";export function ApiInfo({item:e}){const o=useTranslate(),{options:{unstable_hooks:t,hideInfoMetadata:r},parser:{definition:a}}=useAtomValue(globalStoreAtom),i=useAtomValue(layoutAtom),n=e.infoDefinition;if(!n)return null;const s=saveTextBeforeHeading(getValueFromMdParsedExtension(n,"description")||""),m=getValueFromMdParsedExtension(n,"summary")||void 0,l=null==a?void 0:a.externalDocs,d=n.version&&_jsxs("span",{children:["(",n.version,")"]})||null,p=i===LayoutVariant.STACKED;return _jsx(Row,{layout:i,children:_jsxs(SamplesMiddlePanel,{fullWidth:!0,className:"api-info",isStacked:p,children:[_jsxs(ApiHeader,{children:[n.title," ",d]}),_jsx(RenderHook,{Hook:AfterOpenApiTitle||(null==t?void 0:t.AfterApiTitle),props:{info:n}}),m&&_jsx(Markdown,{source:m,"data-role":"redoc-summary"}),s&&_jsx(Markdown,{source:s,"data-role":"redoc-description"}),l&&_jsx(ExternalDocumentation,{externalDocs:l}),!r&&_jsx(Metadata,{metadata:n["x-metadata"],translate:o})]})})}
1
+ import{jsxs as _jsxs,jsx as _jsx}from"react/jsx-runtime";import{useAtomValue}from"jotai";import{AfterOpenApiTitle,LayoutVariant}from"@redocly/theme";import{SamplesMiddlePanel,Row}from"../common";import{ExternalDocumentation}from"../ExternalDocumentation";import{Markdown}from"../Markdown";import{ApiHeader}from"./styled";import{globalStoreAtom}from"../../jotai/store";import{saveTextBeforeHeading}from"../../utils/saveTextBeforeHeading";import{getValueFromMdParsedExtension}from"../../utils/helpers";import{RenderHook}from"../RenderHook";import{Metadata}from"./Metadata";import{useTranslate}from"../../hooks";export function ApiInfo({item:e,layout:o}){const t=useTranslate(),{options:{unstable_hooks:r,hideInfoMetadata:a},parser:{definition:i}}=useAtomValue(globalStoreAtom),n=e.infoDefinition;if(!n)return null;const s=saveTextBeforeHeading(getValueFromMdParsedExtension(n,"description")||""),l=getValueFromMdParsedExtension(n,"summary")||void 0,m=(null==i?void 0:i.externalDocs)||(null==n?void 0:n.externalDocs),d=n.version&&_jsxs("span",{children:["(",n.version,")"]})||null,p=o===LayoutVariant.STACKED;return _jsx(Row,{layout:o,children:_jsxs(SamplesMiddlePanel,{fullWidth:!0,className:"api-info",isStacked:p,children:[_jsxs(ApiHeader,{children:[n.title," ",d]}),_jsx(RenderHook,{Hook:AfterOpenApiTitle||(null==r?void 0:r.AfterApiTitle),props:{info:n}}),l&&_jsx(Markdown,{source:l,"data-role":"redoc-summary"}),s&&_jsx(Markdown,{source:s,"data-role":"redoc-description"}),m&&_jsx(ExternalDocumentation,{externalDocs:m}),!a&&_jsx(Metadata,{metadata:n["x-metadata"],translate:t})]})})}
2
2
  //# sourceMappingURL=ApiInfo.js.map
@@ -1,9 +1,11 @@
1
+ import type { LayoutVariant } from '@redocly/config';
1
2
  import type { ReactNode } from 'react';
2
3
  import type { ContentItemModel } from '../../models';
3
4
  interface ContentItemProps {
4
5
  item: ContentItemModel;
5
6
  routingBasePath: string;
6
7
  children?: ReactNode;
8
+ layout?: LayoutVariant;
7
9
  }
8
10
  export declare const ContentItem: import("react").NamedExoticComponent<ContentItemProps>;
9
11
  export {};
@@ -1,2 +1,2 @@
1
- import{jsx as _jsx,Fragment as _Fragment,jsxs as _jsxs}from"react/jsx-runtime";import{memo}from"react";import{joinWithSeparator}from"../../services";import{TagItem}from"../TagItem";import{OperationItem}from"../OperationItem";import{Section}from"../common";import{useIsExpanded}from"./useIsExpanded";import{SectionItem}from"../SectionItem";import useScrollOnRender from"../ContentItems/useScrollOnRender";import{isRootItem}from"../ContentItems/helpers";import{ApiInfo}from"../ApiInfo";const ContentComponentMap={group:null,tag:TagItem,section:SectionItem,schema:TagItem,operation:OperationItem,root:ApiInfo};function ContentItemComponent({item:e,routingBasePath:t,children:o}){var n;const r=ContentComponentMap[isRootItem(e)?"root":e.type],m="tag"===e.type&&e.items.length>0,i=useIsExpanded({item:e,routingBasePath:t});let s=useScrollOnRender(e,t);return _jsxs(_Fragment,{children:[r&&_jsx(Section,{id:e.id,ref:s,sectionId:joinWithSeparator(t,e.id),underlined:"operation"===e.type||"schema"===e.type,expanded:m&&!i,children:_jsx(r,{item:e,routingBasePath:t,isExpanded:i})}),(i||"tag"!==e.type)&&Boolean(null===(n=e.items)||void 0===n?void 0:n.length)&&_jsx(_Fragment,{children:o})]})}export const ContentItem=memo(ContentItemComponent);
1
+ import{jsx as _jsx,Fragment as _Fragment,jsxs as _jsxs}from"react/jsx-runtime";import{memo}from"react";import{useAtomValue}from"jotai";import{joinWithSeparator}from"../../services";import{TagItem}from"../TagItem";import{OperationItem}from"../OperationItem";import{Section}from"../common";import{useIsExpanded}from"./useIsExpanded";import{SectionItem}from"../SectionItem";import useScrollOnRender from"../ContentItems/useScrollOnRender";import{isRootItem}from"../ContentItems/helpers";import{ApiInfo}from"../ApiInfo";import{layoutAtom}from"../../jotai/app";const ContentComponentMap={group:null,tag:TagItem,section:SectionItem,schema:TagItem,operation:OperationItem,root:ApiInfo};function ContentItemComponent({item:t,routingBasePath:e,children:o,layout:n}){var m;const r=ContentComponentMap[isRootItem(t)?"root":t.type],i="tag"===t.type&&t.items.length>0,a=useIsExpanded({item:t,routingBasePath:e});let s=useScrollOnRender(t,e);const p=useAtomValue(layoutAtom);return _jsxs(_Fragment,{children:[r&&_jsx(Section,{id:t.id,ref:s,sectionId:joinWithSeparator(e,t.id),underlined:"operation"===t.type||"schema"===t.type,expanded:i&&!a,children:_jsx(r,{item:t,routingBasePath:e,isExpanded:a,layout:n||p})}),(a||"tag"!==t.type)&&Boolean(null===(m=t.items)||void 0===m?void 0:m.length)&&_jsx(_Fragment,{children:o})]})}export const ContentItem=memo(ContentItemComponent);
2
2
  //# sourceMappingURL=ContentItem.js.map
@@ -1,2 +1,2 @@
1
- import{useEffect,useRef}from"react";import{useLocation}from"react-router-dom";import{removeLeadingSlash}from"@redocly/theme";import{getElementById}from"../Content/useAutoScroll";function useScrollOnRender(e,o){const r=useRef(null),t=useLocation(),n=removeLeadingSlash(t.pathname.replace(o,""));return useEffect((()=>{var o;if(r.current&&removeLeadingSlash(e.href)===n&&("function"==typeof(null===(o=null==r?void 0:r.current)||void 0===o?void 0:o.scrollIntoView)&&r.current.scrollIntoView(),t.hash)){const e=getElementById(t.hash.replace("#","").toLowerCase());e&&e.scrollIntoView()}}),[]),r}export default useScrollOnRender;
1
+ import{useEffect,useRef}from"react";import{useLocation}from"react-router-dom";import{removeLeadingSlash}from"@redocly/theme";import{getElementById}from"../Content/useAutoScroll";function useScrollOnRender(e,o){const r=useRef(null),t=useLocation(),n=removeLeadingSlash(t.pathname.replace(o,""));return useEffect((()=>{var o;if(r.current&&e.href&&removeLeadingSlash(e.href)===n&&("function"==typeof(null===(o=null==r?void 0:r.current)||void 0===o?void 0:o.scrollIntoView)&&r.current.scrollIntoView(),t.hash)){const e=getElementById(t.hash.replace("#","").toLowerCase());e&&e.scrollIntoView()}}),[]),r}export default useScrollOnRender;
2
2
  //# sourceMappingURL=useScrollOnRender.js.map
@@ -6,6 +6,7 @@ export type DownloadIconType = 'yaml' | 'json' | 'file';
6
6
  export type UseDownloadInfoProps = {
7
7
  definitionUrl?: string;
8
8
  downloadUrls?: DownloadUrlsConfig;
9
+ defaultFileName?: string;
9
10
  };
10
11
  export type UseDownloadInfoReturnType = {
11
12
  title: string;
@@ -1,2 +1,2 @@
1
1
  import type { UseDownloadInfoProps, UseDownloadInfoReturnType } from './types';
2
- export declare const useDownloadInfo: ({ downloadUrls, }: UseDownloadInfoProps) => UseDownloadInfoReturnType | undefined;
2
+ export declare const useDownloadInfo: ({ downloadUrls, defaultFileName, }: UseDownloadInfoProps) => UseDownloadInfoReturnType | undefined;
@@ -1,2 +1,2 @@
1
- import{useMemo}from"react";export const useDownloadInfo=({downloadUrls:e})=>useMemo((()=>{if(e)return e.map((({title:e,url:o})=>({url:o,title:e||getFileNameFromUrl(o,"openapi.yaml"),iconType:getIconTypeFromUrl(o)})))}),[e]);function getFileNameFromUrl(e,o){const l=e.split("?")[0].split(/[\\\/]/).pop();return l&&(l.includes("yaml")||l.includes("json"))?l:o}function getIconTypeFromUrl(e,o){const l=o||e.split("?")[0].split(/[\\\/]/).pop();return l?l.includes("yaml")?"yaml":l.includes("json")?"json":"file":"file"}
1
+ import{useMemo}from"react";export const useDownloadInfo=({downloadUrls:e,defaultFileName:l})=>useMemo((()=>{if(e)return e.map((({title:e,url:o})=>({url:o,title:e||getFileNameFromUrl(o,l||"openapi.yaml"),iconType:getIconTypeFromUrl(o)})))}),[e,l]);function getFileNameFromUrl(e,l){const o=e.split("?")[0].split(/[\\\/]/).pop();return o&&(o.includes("yaml")||o.includes("json"))?o:l}function getIconTypeFromUrl(e,l){const o=l||e.split("?")[0].split(/[\\\/]/).pop();return o?o.includes("yaml")?"yaml":o.includes("json")?"json":"file":"file"}
2
2
  //# sourceMappingURL=useDownloadInfo.js.map
@@ -1,2 +1,5 @@
1
1
  import type { OperationItemProps } from './types';
2
2
  export declare const OperationItem: import("react").NamedExoticComponent<OperationItemProps>;
3
+ export declare const OperationSamplesPanel: import("styled-components").StyledComponent<"div", any, {
4
+ isStacked: boolean;
5
+ }, never>;