@redocly/openapi-docs 3.11.0-rc.0 → 3.11.0-rc.2

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 (90) hide show
  1. package/dist/redocly-openapi-docs.min.js +1107 -1099
  2. package/lib/components/Download/DownloadSpecification.js +1 -1
  3. package/lib/components/ExpandAllButton/ExpandAllButton.d.ts +3 -1
  4. package/lib/components/ExpandAllButton/ExpandAllButton.js +1 -1
  5. package/lib/components/Language/LanguageList.js +1 -1
  6. package/lib/components/OperationItem/OperationItem.js +1 -1
  7. package/lib/components/PayloadSamples/Example.d.ts +1 -1
  8. package/lib/components/PayloadSamples/Example.js +1 -1
  9. package/lib/components/PayloadSamples/ExampleValue.d.ts +1 -1
  10. package/lib/components/PayloadSamples/ExampleValue.js +1 -1
  11. package/lib/components/PayloadSamples/MediaTypeSamples.js +1 -1
  12. package/lib/components/PayloadSamples/types.d.ts +5 -3
  13. package/lib/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocs.js +1 -1
  14. package/lib/components/Replay/Replay.js +1 -1
  15. package/lib/components/Request/RequestDetails.js +1 -1
  16. package/lib/components/Request/types.d.ts +2 -0
  17. package/lib/components/RequestSamples/Example.js +1 -1
  18. package/lib/components/RequestSamples/RequestSamples.d.ts +2 -0
  19. package/lib/components/RequestSamples/RequestSamples.js +1 -1
  20. package/lib/components/ResponseSamples/ResponseSamples.d.ts +3 -1
  21. package/lib/components/ResponseSamples/ResponseSamples.js +1 -1
  22. package/lib/components/Responses/OperationResponseList.d.ts +2 -0
  23. package/lib/components/Responses/OperationResponseList.js +1 -1
  24. package/lib/components/Samples/ExampleSwitch.js +1 -1
  25. package/lib/components/Schema/Schema.js +1 -1
  26. package/lib/components/Security/SecurityButton.js +1 -1
  27. package/lib/components/ServerListDropdown/ServerListDropdown.js +1 -1
  28. package/lib/events/index.d.ts +3 -0
  29. package/lib/events/index.js +1 -1
  30. package/lib/events/serverSwitch.d.ts +2 -0
  31. package/lib/events/serverSwitch.js +2 -0
  32. package/lib/events/tryItOpen.d.ts +2 -0
  33. package/lib/events/tryItOpen.js +2 -0
  34. package/lib/events/tryItSent.d.ts +2 -0
  35. package/lib/events/tryItSent.js +2 -0
  36. package/lib/events/types.d.ts +18 -3
  37. package/lib/events/types.js +1 -1
  38. package/lib/hooks/index.d.ts +1 -1
  39. package/lib/hooks/index.js +1 -1
  40. package/lib/hooks/useTelemetry.d.ts +2 -0
  41. package/lib/hooks/useTelemetry.js +2 -0
  42. package/lib/index.d.ts +1 -1
  43. package/lib/index.js +1 -1
  44. package/lib-esm/components/Download/DownloadSpecification.js +1 -1
  45. package/lib-esm/components/ExpandAllButton/ExpandAllButton.d.ts +3 -1
  46. package/lib-esm/components/ExpandAllButton/ExpandAllButton.js +1 -1
  47. package/lib-esm/components/Language/LanguageList.js +1 -1
  48. package/lib-esm/components/OperationItem/OperationItem.js +1 -1
  49. package/lib-esm/components/PayloadSamples/Example.d.ts +1 -1
  50. package/lib-esm/components/PayloadSamples/Example.js +1 -1
  51. package/lib-esm/components/PayloadSamples/ExampleValue.d.ts +1 -1
  52. package/lib-esm/components/PayloadSamples/ExampleValue.js +1 -1
  53. package/lib-esm/components/PayloadSamples/MediaTypeSamples.js +1 -1
  54. package/lib-esm/components/PayloadSamples/types.d.ts +5 -3
  55. package/lib-esm/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocs.js +1 -1
  56. package/lib-esm/components/Replay/Replay.js +1 -1
  57. package/lib-esm/components/Request/RequestDetails.js +1 -1
  58. package/lib-esm/components/Request/types.d.ts +2 -0
  59. package/lib-esm/components/RequestSamples/Example.js +1 -1
  60. package/lib-esm/components/RequestSamples/RequestSamples.d.ts +2 -0
  61. package/lib-esm/components/RequestSamples/RequestSamples.js +1 -1
  62. package/lib-esm/components/ResponseSamples/ResponseSamples.d.ts +3 -1
  63. package/lib-esm/components/ResponseSamples/ResponseSamples.js +1 -1
  64. package/lib-esm/components/Responses/OperationResponseList.d.ts +2 -0
  65. package/lib-esm/components/Responses/OperationResponseList.js +1 -1
  66. package/lib-esm/components/Samples/ExampleSwitch.js +1 -1
  67. package/lib-esm/components/Schema/Schema.js +1 -1
  68. package/lib-esm/components/Security/SecurityButton.js +1 -1
  69. package/lib-esm/components/ServerListDropdown/ServerListDropdown.js +1 -1
  70. package/lib-esm/events/index.d.ts +3 -0
  71. package/lib-esm/events/index.js +1 -1
  72. package/lib-esm/events/serverSwitch.d.ts +2 -0
  73. package/lib-esm/events/serverSwitch.js +2 -0
  74. package/lib-esm/events/tryItOpen.d.ts +2 -0
  75. package/lib-esm/events/tryItOpen.js +2 -0
  76. package/lib-esm/events/tryItSent.d.ts +2 -0
  77. package/lib-esm/events/tryItSent.js +2 -0
  78. package/lib-esm/events/types.d.ts +18 -3
  79. package/lib-esm/events/types.js +1 -1
  80. package/lib-esm/hooks/index.d.ts +1 -1
  81. package/lib-esm/hooks/index.js +1 -1
  82. package/lib-esm/hooks/useTelemetry.d.ts +2 -0
  83. package/lib-esm/hooks/useTelemetry.js +2 -0
  84. package/lib-esm/index.d.ts +1 -1
  85. package/lib-esm/index.js +1 -1
  86. package/package.json +5 -5
  87. package/lib/hooks/useOtelTelemetry.d.ts +0 -2
  88. package/lib/hooks/useOtelTelemetry.js +0 -2
  89. package/lib-esm/hooks/useOtelTelemetry.d.ts +0 -2
  90. package/lib-esm/hooks/useOtelTelemetry.js +0 -2
@@ -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.DownloadSpecification=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),useDownloadInfo_1=require("./useDownloadInfo"),store_1=require("../../jotai/store"),hooks_1=require("../../hooks");function DownloadSpecificationComponent(){const e=(0,hooks_1.useOtelTelemetry)(),{options:t}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),o=(0,theme_1.getPathPrefix)(),r=(0,useDownloadInfo_1.useDownloadInfo)({downloadUrls:t.downloadUrls}),n=(0,react_1.useCallback)((e=>{switch(e){case"yaml":return(0,jsx_runtime_1.jsx)(theme_1.DocumentIcon,{});case"json":return(0,jsx_runtime_1.jsx)(theme_1.JsonIcon,{});default:return(0,jsx_runtime_1.jsx)(theme_1.FileIcon,{})}}),[]);return r?(0,jsx_runtime_1.jsx)(Wrapper,{children:(r||[]).map((({title:t,url:r,iconType:s})=>{const i=o?(0,theme_1.combineUrls)(o,r):r;return(0,jsx_runtime_1.jsxs)(Card,{onClick:()=>e.send({type:"openapi_docs.download_definition.clicked"}),children:[(0,jsx_runtime_1.jsxs)(FileName,{children:[n(s),(0,jsx_runtime_1.jsx)("a",{href:i,target:"_blank",download:!0,rel:"noreferrer",children:t})]}),(0,jsx_runtime_1.jsx)("a",{href:i,target:"_blank",download:!0,rel:"noreferrer",children:(0,jsx_runtime_1.jsx)(theme_1.Button,{variant:"text",size:"small",icon:(0,jsx_runtime_1.jsx)(theme_1.DownloadIcon,{})})})]},t)}))}):(0,jsx_runtime_1.jsx)(jsx_runtime_1.Fragment,{})}exports.DownloadSpecification=(0,react_1.memo)(DownloadSpecificationComponent);const Card=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.DownloadSpecification=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),useDownloadInfo_1=require("./useDownloadInfo"),store_1=require("../../jotai/store"),hooks_1=require("../../hooks");function DownloadSpecificationComponent(){const e=(0,hooks_1.useTelemetry)(),{options:t}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),o=(0,theme_1.getPathPrefix)(),r=(0,useDownloadInfo_1.useDownloadInfo)({downloadUrls:t.downloadUrls}),n=(0,react_1.useCallback)((e=>{switch(e){case"yaml":return(0,jsx_runtime_1.jsx)(theme_1.DocumentIcon,{});case"json":return(0,jsx_runtime_1.jsx)(theme_1.JsonIcon,{});default:return(0,jsx_runtime_1.jsx)(theme_1.FileIcon,{})}}),[]);return r?(0,jsx_runtime_1.jsx)(Wrapper,{children:(r||[]).map((({title:t,url:r,iconType:s})=>{const i=o?(0,theme_1.combineUrls)(o,r):r;return(0,jsx_runtime_1.jsxs)(Card,{onClick:()=>e.send({type:"openapi_docs.download_definition.clicked"}),children:[(0,jsx_runtime_1.jsxs)(FileName,{children:[n(s),(0,jsx_runtime_1.jsx)("a",{href:i,target:"_blank",download:!0,rel:"noreferrer",children:t})]}),(0,jsx_runtime_1.jsx)("a",{href:i,target:"_blank",download:!0,rel:"noreferrer",children:(0,jsx_runtime_1.jsx)(theme_1.Button,{variant:"text",size:"small",icon:(0,jsx_runtime_1.jsx)(theme_1.DownloadIcon,{})})})]},t)}))}):(0,jsx_runtime_1.jsx)(jsx_runtime_1.Fragment,{})}exports.DownloadSpecification=(0,react_1.memo)(DownloadSpecificationComponent);const Card=styled_components_1.default.div`
2
2
  display: flex;
3
3
  align-items: baseline;
4
4
  justify-content: space-between;
@@ -1,6 +1,8 @@
1
+ import type { PanelType } from '../../events/types';
1
2
  interface ExpandAllButtonProps {
2
3
  operationPointer: string;
3
4
  type: 'request' | 'response';
5
+ onPanelToggle?: (isExpanded: boolean, panelType: PanelType) => void;
4
6
  }
5
- export declare const ExpandAllButton: ({ operationPointer, type }: ExpandAllButtonProps) => import("react/jsx-runtime").JSX.Element;
7
+ export declare const ExpandAllButton: ({ operationPointer, type, onPanelToggle, }: ExpandAllButtonProps) => import("react/jsx-runtime").JSX.Element;
6
8
  export {};
@@ -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.ExpandAllButton=void 0;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),index_1=require("jotai/index"),operation_1=require("../../jotai/operation"),hooks_1=require("../../hooks"),ExpandAllButton=({operationPointer:e,type:t})=>{const o=(0,hooks_1.useTranslate)(),[n,l]=(0,index_1.useAtom)((0,operation_1.operationStore)(e)),i=(0,hooks_1.useOtelTelemetry)();return(0,jsx_runtime_1.jsx)(StyledButton,{icon:(0,jsx_runtime_1.jsx)(theme_1.MaximizeIcon,{}),iconPosition:"right",size:"small",variant:"ghost",onClick:()=>{const e=!n[t].expandedAll;i.send({type:"openapi_docs.expand_collapse_all.clicked",payload:{is_expanded:e}}),l({[t]:{expandedAll:e}})},children:n[t].expandedAll?o("openapi.collapseAll","Collapse all"):o("openapi.expandAll","Expand all")})};exports.ExpandAllButton=ExpandAllButton;const StyledButton=(0,styled_components_1.default)(theme_1.Button)`
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ExpandAllButton=void 0;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),index_1=require("jotai/index"),operation_1=require("../../jotai/operation"),hooks_1=require("../../hooks"),ExpandAllButton=({operationPointer:e,type:t,onPanelToggle:o})=>{const n=(0,hooks_1.useTranslate)(),[l,r]=(0,index_1.useAtom)((0,operation_1.operationStore)(e)),s=(0,hooks_1.useTelemetry)();return(0,jsx_runtime_1.jsx)(StyledButton,{icon:(0,jsx_runtime_1.jsx)(theme_1.MaximizeIcon,{}),iconPosition:"right",size:"small",variant:"ghost",onClick:()=>{const e=!l[t].expandedAll;s.send({type:"openapi_docs.expand_collapse_all.clicked",payload:{is_expanded:e}}),r({[t]:{expandedAll:e}}),null==o||o(e,"request"===t?"request":"responses")},children:l[t].expandedAll?n("openapi.collapseAll","Collapse all"):n("openapi.expandAll","Expand all")})};exports.ExpandAllButton=ExpandAllButton;const StyledButton=(0,styled_components_1.default)(theme_1.Button)`
2
2
  margin-left: auto;
3
3
  `;
4
4
  //# sourceMappingURL=ExpandAllButton.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LanguageList=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),LanguageDropdown_1=require("./LanguageDropdown"),app_1=require("../../jotai/app"),styled_1=require("./styled"),LanguageItem_1=require("./LanguageItem"),constants_1=require("./constants"),LanguageListSkeleton_1=require("../common/Skeleton/LanguageListSkeleton"),hooks_1=require("../../hooks");function LanguageListComponent({languages:e,activeLanguage:t}){const[n,a]=(0,react_1.useState)([]),[s,i]=(0,react_1.useState)([]),r=(0,hooks_1.useOtelTelemetry)(),o=(0,react_1.useRef)(null),u=(0,jotai_1.useAtomValue)(app_1.layoutAtom),l=(0,jotai_1.useSetAtom)(app_1.languageAtom),g=e=>{r.send({type:"openapi_docs.select_language.clicked",payload:{language:e}})},_=(0,react_1.useCallback)((()=>{var n;const s=null===(n=null==o?void 0:o.current)||void 0===n?void 0:n.offsetWidth;if(!s)return;const{newVisibleItems:r,newHiddenItems:u}=calculateVisibleAndHiddenItems(s,[...e]),l=u.findIndex((e=>e.key===t));-1!==l&&swapItems(r,u,l),a(r),i(u)}),[t,e]);(0,react_1.useLayoutEffect)((()=>(_(),window.addEventListener("resize",_),()=>{window.removeEventListener("resize",_)})),[u,t]);const c=(0,react_1.useMemo)((()=>n.length>=5||s.length?"space-between":"start"),[s.length,n.length]);return(0,jsx_runtime_1.jsxs)(styled_1.Container,{ref:o,children:[(0,jsx_runtime_1.jsxs)(styled_1.LanguageListContainer,{$justifyContent:c,children:[!n.length&&(0,jsx_runtime_1.jsx)(LanguageListSkeleton_1.LanguageListSkeleton,{}),n.map((e=>(0,jsx_runtime_1.jsx)(styled_1.LanguageListItem,{onClick:()=>{return t=e.key,l(t),void g(t);var t},active:t===e.key,children:(0,jsx_runtime_1.jsx)(LanguageItem_1.LanguageItem,{item:e,withIcon:!0})},e.key)))]}),s.length?(0,jsx_runtime_1.jsx)(LanguageDropdown_1.LanguageDropdown,{activeTab:t,samples:s,onChange:e=>{const t=s.findIndex((t=>t.key===e));if(-1!==t){const r=[...s],o=[...n];swapItems(o,r,t),a(o),i(r),g(e),l(e)}},trigger:(0,jsx_runtime_1.jsx)(theme_1.Button,{icon:(0,jsx_runtime_1.jsx)(theme_1.OverflowMenuVerticalIcon,{}),variant:"text",style:{height:"100%"}}),withArrow:!1,withCheckmark:!1,width:156}):null]})}function calculateVisibleAndHiddenItems(e,t){let n=0;const a=[],s=[];return t.forEach(((i,r)=>{const o=r===t.length-1&&0===s.length?0:constants_1.DROPDOWN_TRIGGER_WIDTH;e&&n+constants_1.ITEM_WIDTH+o<=e?(a.push(i),n+=constants_1.ITEM_WIDTH):s.push(i)})),{newVisibleItems:a,newHiddenItems:s}}function swapItems(e,t,n){const a=e[e.length-1];a&&(e[e.length-1]=t[n],t[n]=a)}exports.LanguageList=(0,react_1.memo)(LanguageListComponent);
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LanguageList=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),LanguageDropdown_1=require("./LanguageDropdown"),app_1=require("../../jotai/app"),styled_1=require("./styled"),LanguageItem_1=require("./LanguageItem"),constants_1=require("./constants"),LanguageListSkeleton_1=require("../common/Skeleton/LanguageListSkeleton"),hooks_1=require("../../hooks");function LanguageListComponent({languages:e,activeLanguage:t}){const[n,a]=(0,react_1.useState)([]),[s,i]=(0,react_1.useState)([]),r=(0,hooks_1.useTelemetry)(),o=(0,react_1.useRef)(null),u=(0,jotai_1.useAtomValue)(app_1.layoutAtom),g=(0,jotai_1.useSetAtom)(app_1.languageAtom),l=e=>{r.send({type:"openapi_docs.select_language.clicked",payload:{language:e}})},_=(0,react_1.useCallback)((()=>{var n;const s=null===(n=null==o?void 0:o.current)||void 0===n?void 0:n.offsetWidth;if(!s)return;const{newVisibleItems:r,newHiddenItems:u}=calculateVisibleAndHiddenItems(s,[...e]),g=u.findIndex((e=>e.key===t));-1!==g&&swapItems(r,u,g),a(r),i(u)}),[t,e]);(0,react_1.useLayoutEffect)((()=>(_(),window.addEventListener("resize",_),()=>{window.removeEventListener("resize",_)})),[u,t]);const c=(0,react_1.useMemo)((()=>n.length>=5||s.length?"space-between":"start"),[s.length,n.length]);return(0,jsx_runtime_1.jsxs)(styled_1.Container,{ref:o,children:[(0,jsx_runtime_1.jsxs)(styled_1.LanguageListContainer,{$justifyContent:c,children:[!n.length&&(0,jsx_runtime_1.jsx)(LanguageListSkeleton_1.LanguageListSkeleton,{}),n.map((e=>(0,jsx_runtime_1.jsx)(styled_1.LanguageListItem,{onClick:()=>{return t=e.key,g(t),void l(t);var t},active:t===e.key,children:(0,jsx_runtime_1.jsx)(LanguageItem_1.LanguageItem,{item:e,withIcon:!0})},e.key)))]}),s.length?(0,jsx_runtime_1.jsx)(LanguageDropdown_1.LanguageDropdown,{activeTab:t,samples:s,onChange:e=>{const t=s.findIndex((t=>t.key===e));if(-1!==t){const r=[...s],o=[...n];swapItems(o,r,t),a(o),i(r),l(e),g(e)}},trigger:(0,jsx_runtime_1.jsx)(theme_1.Button,{icon:(0,jsx_runtime_1.jsx)(theme_1.OverflowMenuVerticalIcon,{}),variant:"text",style:{height:"100%"}}),withArrow:!1,withCheckmark:!1,width:156}):null]})}function calculateVisibleAndHiddenItems(e,t){let n=0;const a=[],s=[];return t.forEach(((i,r)=>{const o=r===t.length-1&&0===s.length?0:constants_1.DROPDOWN_TRIGGER_WIDTH;e&&n+constants_1.ITEM_WIDTH+o<=e?(a.push(i),n+=constants_1.ITEM_WIDTH):s.push(i)})),{newVisibleItems:a,newHiddenItems:s}}function swapItems(e,t,n){const a=e[e.length-1];a&&(e[e.length-1]=t[n],t[n]=a)}exports.LanguageList=(0,react_1.memo)(LanguageListComponent);
2
2
  //# sourceMappingURL=LanguageList.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.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)`
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"),events_1=require("../../events");function OperationItemComponent({item:{operationDefinition:e,parent:t,href:a}}){var s,o;const n=(0,hooks_1.useTranslate)(),{parser:i,options:r}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),{events:l}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom),p=(0,jotai_1.useAtomValue)(app_1.userClaimsAtom),_=(0,jotai_1.useAtomValue)(app_1.layoutAtom),[m,d]=(0,react_1.useState)(),{unstable_hooks:c,feedback:u}=r,x=(0,react_1.useMemo)((()=>(0,operation_1.getOperation)(i,e,t,r,a,void 0,p)),[a,e,r,t,i,p]),{name:j,deprecated:k,isWebhook:h,badges:b}=x||{},S=_===theme_1.LayoutVariant.STACKED,g=(null==u?void 0:u.type)||"sentiment",v=!0!==(null==u?void 0:u.hide),[R,q]=(0,react_1.useState)(null),O=(0,react_1.useCallback)((e=>{m!==e&&d(e)}),[m]),f=(0,react_1.useCallback)(((e,t)=>{var a;if(!t)return;const s=(0,events_1.createPanelToggleEvent)({operation:x,isExpanded:e,panelType:t});null===(a=null==l?void 0:l.panelToggle)||void 0===a||a.call(l,s)}),[l,x]),y=(0,react_1.useMemo)((()=>v?(0,jsx_runtime_1.jsx)(FeedbackWrapper,{children:(0,jsx_runtime_1.jsx)(theme_1.Feedback,{type:g,settings:u.settings,path:(0,services_1.joinWithSeparator)(r.routingBasePath,x.href)})}):null),[v,g,u.settings,r.routingBasePath,x.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:S,children:[(0,jsx_runtime_1.jsx)(RenderHook_1.RenderHook,{Hook:theme_1.BeforeOpenApiOperation||(null==c?void 0:c.BeforeOperation),props:{operation:x}}),(0,jsx_runtime_1.jsxs)(OperationItemTitle_1.Heading,{"data-testid":"operation-item-header",children:[(0,jsx_runtime_1.jsx)(common_1.ShareLink,{to:a,"aria-label":`link to ${j}`}),(0,jsx_runtime_1.jsx)(common_1.CustomBadges,{badges:b,children:j}),k&&(0,jsx_runtime_1.jsx)(Badges_1.StyledBadge,{deprecated:!0,children:n("openapi.badges.deprecated","Deprecated")}),h&&(0,jsx_runtime_1.jsx)(Badges_1.StyledBadge,{children:n("openapi.badges.webhook","Webhook")})]})]})}),(0,jsx_runtime_1.jsxs)(OperationSubRowStyled,{layout:_,children:[(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{isStacked:S,children:(0,jsx_runtime_1.jsx)(RequestDetails_1.RequestDetails,{operation:x,translate:n,onPanelToggle:f})}),(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:x,onPanelToggle:f})})]}),(0,jsx_runtime_1.jsxs)(OperationSubRowStyled,{layout:_,children:[(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{isStacked:S,children:(null===(s=x.responses)||void 0===s?void 0:s.length)?(0,jsx_runtime_1.jsx)(Responses_1.OperationResponseList,{responses:x.responses,operationId:x.id,operationPointer:x.pointer,callbackId:x.callbackId,activeResponseTab:m,onTabChange:O,onPanelToggle:f}):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:x,activeResponseTab:m,onTabChange:O,onPanelToggle:f})})]}),(0,jsx_runtime_1.jsxs)(OperationSubRowStyled,{layout:_,children:[(0,jsx_runtime_1.jsxs)(common_1.SamplesMiddlePanel,{isStacked:S,children:[(null===(o=x.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)(x.id,"callbacks")}),n("openapi.callbacks","Callbacks")]}),(0,jsx_runtime_1.jsx)(Callbacks_1.CallbacksList,{callbacks:x.callbacks,onExpand:q,selectedCallback:R})]}):null,(0,jsx_runtime_1.jsx)(RenderHook_1.RenderHook,{Hook:theme_1.AfterOpenApiOperation||(null==c?void 0:c.AfterOperation),props:{operation:x}})]}),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:n})}):null]}),(0,jsx_runtime_1.jsx)(OperationSubRowStyled,{layout:_,children:(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{isStacked:S,fullWidth:!0,children:y})})]})}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
4
  `;const FeedbackWrapper=styled_components_1.default.div`
@@ -1,3 +1,3 @@
1
1
  import type { ReactElement } from 'react';
2
2
  import type { ExampleProps } from './types';
3
- export declare function Example({ example, mimeType, onCopyClick }: ExampleProps): ReactElement;
3
+ export declare function Example({ example, mimeType, onCopyClick, onPanelToggle, }: ExampleProps): ReactElement;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Example=Example;const jsx_runtime_1=require("react/jsx-runtime"),ExampleValue_1=require("./ExampleValue");function Example({example:e,mimeType:l,onCopyClick:a}){return(0,jsx_runtime_1.jsx)(ExampleValue_1.ExampleValue,{value:e.value,mimeType:l,encoding:e.encoding,onCopyClick:a})}
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Example=Example;const jsx_runtime_1=require("react/jsx-runtime"),ExampleValue_1=require("./ExampleValue");function Example({example:e,mimeType:l,onCopyClick:a,onPanelToggle:n}){return(0,jsx_runtime_1.jsx)(ExampleValue_1.ExampleValue,{value:e.value,mimeType:l,encoding:e.encoding,onCopyClick:a,onPanelToggle:n})}
2
2
  //# sourceMappingURL=Example.js.map
@@ -1,2 +1,2 @@
1
1
  import type { ExampleValueProps } from './types';
2
- export declare function ExampleValue({ value, mimeType, encoding, onCopyClick, }: ExampleValueProps): React.ReactNode;
2
+ export declare function ExampleValue({ value, mimeType, encoding, onCopyClick, onPanelToggle, }: ExampleValueProps): React.ReactNode;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ExampleValue=ExampleValue;const jsx_runtime_1=require("react/jsx-runtime"),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),utils_1=require("../../utils"),store_1=require("../../jotai/store"),styled_1=require("./styled");function ExampleValue({value:e,mimeType:o,encoding:t,onCopyClick:l}){const{jsonSamplesExpandLevel:r}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom);return(0,utils_1.isJsonLike)(o)?(0,jsx_runtime_1.jsx)(theme_1.JsonViewer,{data:e,expandLevel:r,onCopyClick:l}):("object"==typeof e&&(e=(0,utils_1.isFormUrlEncoded)(o)?(0,utils_1.urlFormEncodePayload)(e,t):JSON.stringify(e,null,2)),(0,jsx_runtime_1.jsx)(styled_1.StyledCodeBlock,{lang:(0,utils_1.langFromMime)(o),source:e,header:{className:"code-block-header",controls:{copy:{onClick:l}}}}))}
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ExampleValue=ExampleValue;const jsx_runtime_1=require("react/jsx-runtime"),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),utils_1=require("../../utils"),store_1=require("../../jotai/store"),styled_1=require("./styled");function ExampleValue({value:e,mimeType:o,encoding:l,onCopyClick:t,onPanelToggle:r}){const{jsonSamplesExpandLevel:s}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom);return(0,utils_1.isJsonLike)(o)?(0,jsx_runtime_1.jsx)(theme_1.JsonViewer,{data:e,expandLevel:s,onCopyClick:t,onPanelToggle:r}):("object"==typeof e&&(e=(0,utils_1.isFormUrlEncoded)(o)?(0,utils_1.urlFormEncodePayload)(e,l):JSON.stringify(e,null,2)),(0,jsx_runtime_1.jsx)(styled_1.StyledCodeBlock,{lang:(0,utils_1.langFromMime)(o),source:e,header:{className:"code-block-header",controls:{copy:{onClick:t}}}}))}
2
2
  //# sourceMappingURL=ExampleValue.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.MediaTypeSamples=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),deepmerge_1=__importDefault(require("deepmerge")),styled_components_1=__importDefault(require("styled-components")),Markdown_1=require("../Markdown"),Example_1=require("./Example"),Samples_1=require("../Samples"),utils_1=require("../../services/utils"),styled_1=require("./styled"),hooks_1=require("../../hooks");function MediaTypeSamplesComponent({mediaType:e,properties:r,onChange:s,onCopyClick:t}){const a=e.examples||e.formExamples||{},o=e.name,n=Object.keys(a),l=(0,hooks_1.useTranslate)(),{exampleKey:p}=(0,Samples_1.useExampleKey)(e.operation,a),i=1===n.length?Object.values(a)[0]:a[p];if(!n.length)return(0,jsx_runtime_1.jsx)(styled_1.StyledCodeBlock,{lang:"clike",source:l("openapi.noResponseExample","No response example"),header:{controls:!1}});const m=r?Object.assign(Object.assign({},i),{value:(0,deepmerge_1.default)(i.value,r,{arrayMerge:utils_1.arrayMergeStrategy})}):i,_=m.description;return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(Samples_1.ExampleSwitch,{examples:a,exampleKey:p,onChange:s}),_&&(0,jsx_runtime_1.jsx)(StyledMarkdown,{source:_}),(0,jsx_runtime_1.jsx)(Example_1.Example,{example:m,mimeType:o,onCopyClick:t})]})}const StyledMarkdown=(0,styled_components_1.default)(Markdown_1.Markdown)`
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.MediaTypeSamples=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),deepmerge_1=__importDefault(require("deepmerge")),styled_components_1=__importDefault(require("styled-components")),Markdown_1=require("../Markdown"),Example_1=require("./Example"),Samples_1=require("../Samples"),utils_1=require("../../services/utils"),styled_1=require("./styled"),hooks_1=require("../../hooks");function MediaTypeSamplesComponent({mediaType:e,properties:r,onChange:s,onCopyClick:a,onPanelToggle:t}){const o=e.examples||e.formExamples||{},n=e.name,l=Object.keys(o),p=(0,hooks_1.useTranslate)(),{exampleKey:i}=(0,Samples_1.useExampleKey)(e.operation,o),m=1===l.length?Object.values(o)[0]:o[i];if(!l.length)return(0,jsx_runtime_1.jsx)(styled_1.StyledCodeBlock,{lang:"clike",source:p("openapi.noResponseExample","No response example"),header:{controls:!1}});const _=r?Object.assign(Object.assign({},m),{value:(0,deepmerge_1.default)(m.value,r,{arrayMerge:utils_1.arrayMergeStrategy})}):m,u=_.description;return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(Samples_1.ExampleSwitch,{examples:o,exampleKey:i,onChange:s}),u&&(0,jsx_runtime_1.jsx)(StyledMarkdown,{source:u}),(0,jsx_runtime_1.jsx)(Example_1.Example,{example:_,mimeType:n,onCopyClick:a,onPanelToggle:t})]})}const StyledMarkdown=(0,styled_components_1.default)(Markdown_1.Markdown)`
2
2
  margin: 0 var(--spacing-md) var(--spacing-sm);
3
3
  `;exports.MediaTypeSamples=(0,react_1.memo)(MediaTypeSamplesComponent);
4
4
  //# sourceMappingURL=MediaTypeSamples.js.map
@@ -1,10 +1,11 @@
1
+ import type { PanelType } from '../../events/types';
1
2
  import type { ExampleModel, MediaContentModel, MediaTypeModel } from '../../models';
2
3
  import type { OpenAPIEncoding } from '../../types';
3
- export interface ExampleProps extends Pick<MediaTypeSamplesProps, 'onCopyClick'> {
4
+ export interface ExampleProps extends Pick<MediaTypeSamplesProps, 'onCopyClick' | 'onPanelToggle'> {
4
5
  example: ExampleModel;
5
6
  mimeType: string;
6
7
  }
7
- export interface ExampleValueProps extends Pick<MediaTypeSamplesProps, 'onCopyClick'> {
8
+ export interface ExampleValueProps extends Pick<MediaTypeSamplesProps, 'onCopyClick' | 'onPanelToggle'> {
8
9
  value: GenericObject | string;
9
10
  mimeType: string;
10
11
  encoding?: {
@@ -16,8 +17,9 @@ export interface MediaTypeSamplesProps {
16
17
  properties?: GenericObject;
17
18
  onChange: (key: any) => void;
18
19
  onCopyClick?: () => void;
20
+ onPanelToggle?: (isExpanded: boolean, panelType?: PanelType) => void;
19
21
  }
20
- export interface PayloadSamplesProps extends Pick<MediaTypeSamplesProps, 'properties' | 'onCopyClick'> {
22
+ export interface PayloadSamplesProps extends Pick<MediaTypeSamplesProps, 'properties' | 'onCopyClick' | 'onPanelToggle'> {
21
23
  content: MediaContentModel;
22
24
  onlyDefaultMimeType?: boolean;
23
25
  }
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RedoclyOpenAPIDocs=RedoclyOpenAPIDocs,exports.RedoclyOpenAPIDocsStandalone=RedoclyOpenAPIDocsStandalone;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),jotai_1=require("jotai"),Providers_1=require("./Providers"),Overlay_1=require("../Overlay"),styled_1=require("./styled"),StickySidebar_1=require("../StickySidebar"),SideMenu_1=require("../SideMenu"),Content_1=require("../Content"),hooks_1=require("../../hooks"),withRouter_1=require("../../hoc/withRouter"),withStore_1=require("../../hoc/withStore"),utils_1=require("../../utils"),useLicense_1=require("../../hooks/useLicense"),replay_1=require("../../jotai/replay"),RedoclyOpenAPIDocsComponent=(0,utils_1.compose)(withRouter_1.withRouter,withStore_1.withStore,react_1.memo)((({licenseKey:e,onLoaded:o,children:t,options:i,layout:n,collapsedSidebar:r,parser:s,withCommonStyles:l})=>{var a,d,c,u,_;const m=(0,react_1.useRef)(null),{isValid:p,licenseInfo:h}=(0,useLicense_1.useLicense)(e),y=(0,jotai_1.useSetAtom)(replay_1.allOperationsAtom),v=(0,hooks_1.useOtelTelemetry)();(0,hooks_1.useUppercase2LowercaseRedirect)();const{contentItems:j,flatItems:x}=(0,hooks_1.useContentItems)({parser:s,options:i});(0,hooks_1.usePerformanceMetrics)({sendTelemetry:e=>{const o=Object.fromEntries(Object.entries(e).map((([e,o])=>[e.toLowerCase(),o])));v.send({type:"openapi_docs.performance_metrics",payload:{cls:o.cls,lcp:o.lcp,fcp:o.fcp,ttfb:o.ttfb}})}}),(0,theme_1.useMount)((()=>{if(null==o||o(),v.send({type:"openapi_docs.viewed",payload:{layout:n}}),!i.hideReplay){const e=x.filter((e=>"operation"===e.type));y(e)}}));const{hideSidebar:S,scrollYOffset:f}=i||{},P=null===(d=null===(a=s.definition)||void 0===a?void 0:a.info)||void 0===d?void 0:d["x-logo"];return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[l&&(0,jsx_runtime_1.jsx)(theme_1.GlobalStyle,{}),(0,jsx_runtime_1.jsxs)(styled_1.RedocWrap,{className:"redoc-wrap",ref:m,children:[!p&&(0,jsx_runtime_1.jsx)(Overlay_1.Overlay,{licenseInfo:h}),!S&&(0,jsx_runtime_1.jsxs)(StickySidebar_1.StickyResponsiveSidebar,{scrollYOffset:f,className:"menu-content",collapsedSidebar:!r,children:[(0,jsx_runtime_1.jsx)(theme_1.SidebarLogo,{imageUrl:null==P?void 0:P.url,href:(null==P?void 0:P.href)||(null===(_=null===(u=null===(c=s.definition)||void 0===c?void 0:c.info)||void 0===u?void 0:u.contact)||void 0===_?void 0:_.url),altText:null==P?void 0:P.altText,backgroundColor:null==P?void 0:P.backgroundColor}),(0,jsx_runtime_1.jsx)(SideMenu_1.SideMenu,{items:p?j:[]})]}),(0,jsx_runtime_1.jsxs)(theme_1.ThreePanelLayout,{className:"api-content",id:"api-content",layout:n===theme_1.LayoutVariant.THREE_PANEL?theme_1.LayoutVariant.THREE_PANEL:theme_1.LayoutVariant.STACKED,collapsedSidebar:r,children:[(0,jsx_runtime_1.jsx)(Content_1.Content,{items:p?j:[],routingBasePath:i.routingBasePath}),t]})]})]})}));function RedoclyOpenAPIDocs({onLoaded:e,children:o,store:t,withCommonStyles:i}){var n,r,s;return(null==t?void 0:t.definition)?(0,jsx_runtime_1.jsx)(Providers_1.StoreProvider,Object.assign({},t,{children:(0,jsx_runtime_1.jsx)(RedoclyOpenAPIDocsComponent,{onLoaded:e,basePath:null===(n=t.options)||void 0===n?void 0:n.routingBasePath,licenseKey:null===(r=t.options)||void 0===r?void 0:r.licenseKey,disableRouter:null===(s=t.options)||void 0===s?void 0:s.disableRouter,withCommonStyles:i,children:o})})):null}function RedoclyOpenAPIDocsStandalone({definition:e,definitionUrl:o,options:t={},activeItemId:i,activeSampleLanguage:n,activeDeepLink:r}){return(0,jsx_runtime_1.jsx)(Providers_1.AppProvider,{definition:e,definitionUrl:o,options:t,activeItemId:i,activeSampleLanguage:n,activeDeepLink:r,children:(0,jsx_runtime_1.jsx)(RedoclyOpenAPIDocs,{withCommonStyles:!0})})}
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RedoclyOpenAPIDocs=RedoclyOpenAPIDocs,exports.RedoclyOpenAPIDocsStandalone=RedoclyOpenAPIDocsStandalone;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),jotai_1=require("jotai"),Providers_1=require("./Providers"),Overlay_1=require("../Overlay"),styled_1=require("./styled"),StickySidebar_1=require("../StickySidebar"),SideMenu_1=require("../SideMenu"),Content_1=require("../Content"),hooks_1=require("../../hooks"),withRouter_1=require("../../hoc/withRouter"),withStore_1=require("../../hoc/withStore"),utils_1=require("../../utils"),useLicense_1=require("../../hooks/useLicense"),replay_1=require("../../jotai/replay"),RedoclyOpenAPIDocsComponent=(0,utils_1.compose)(withRouter_1.withRouter,withStore_1.withStore,react_1.memo)((({licenseKey:e,onLoaded:o,children:t,options:i,layout:n,collapsedSidebar:r,parser:s,withCommonStyles:l})=>{var a,d,c,u,_;const m=(0,react_1.useRef)(null),{isValid:p,licenseInfo:h}=(0,useLicense_1.useLicense)(e),y=(0,jotai_1.useSetAtom)(replay_1.allOperationsAtom),v=(0,hooks_1.useTelemetry)();(0,hooks_1.useUppercase2LowercaseRedirect)();const{contentItems:j,flatItems:x}=(0,hooks_1.useContentItems)({parser:s,options:i});(0,hooks_1.usePerformanceMetrics)({sendTelemetry:e=>{const o=Object.fromEntries(Object.entries(e).map((([e,o])=>[e.toLowerCase(),o])));v.send({type:"openapi_docs.performance_metrics",payload:{cls:o.cls,lcp:o.lcp,fcp:o.fcp,ttfb:o.ttfb}})}}),(0,theme_1.useMount)((()=>{if(null==o||o(),v.send({type:"openapi_docs.viewed",payload:{layout:n}}),!i.hideReplay){const e=x.filter((e=>"operation"===e.type));y(e)}}));const{hideSidebar:S,scrollYOffset:f}=i||{},P=null===(d=null===(a=s.definition)||void 0===a?void 0:a.info)||void 0===d?void 0:d["x-logo"];return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[l&&(0,jsx_runtime_1.jsx)(theme_1.GlobalStyle,{}),(0,jsx_runtime_1.jsxs)(styled_1.RedocWrap,{className:"redoc-wrap",ref:m,children:[!p&&(0,jsx_runtime_1.jsx)(Overlay_1.Overlay,{licenseInfo:h}),!S&&(0,jsx_runtime_1.jsxs)(StickySidebar_1.StickyResponsiveSidebar,{scrollYOffset:f,className:"menu-content",collapsedSidebar:!r,children:[(0,jsx_runtime_1.jsx)(theme_1.SidebarLogo,{imageUrl:null==P?void 0:P.url,href:(null==P?void 0:P.href)||(null===(_=null===(u=null===(c=s.definition)||void 0===c?void 0:c.info)||void 0===u?void 0:u.contact)||void 0===_?void 0:_.url),altText:null==P?void 0:P.altText,backgroundColor:null==P?void 0:P.backgroundColor}),(0,jsx_runtime_1.jsx)(SideMenu_1.SideMenu,{items:p?j:[]})]}),(0,jsx_runtime_1.jsxs)(theme_1.ThreePanelLayout,{className:"api-content",id:"api-content",layout:n===theme_1.LayoutVariant.THREE_PANEL?theme_1.LayoutVariant.THREE_PANEL:theme_1.LayoutVariant.STACKED,collapsedSidebar:r,children:[(0,jsx_runtime_1.jsx)(Content_1.Content,{items:p?j:[],routingBasePath:i.routingBasePath}),t]})]})]})}));function RedoclyOpenAPIDocs({onLoaded:e,children:o,store:t,withCommonStyles:i}){var n,r,s;return(null==t?void 0:t.definition)?(0,jsx_runtime_1.jsx)(Providers_1.StoreProvider,Object.assign({},t,{children:(0,jsx_runtime_1.jsx)(RedoclyOpenAPIDocsComponent,{onLoaded:e,basePath:null===(n=t.options)||void 0===n?void 0:n.routingBasePath,licenseKey:null===(r=t.options)||void 0===r?void 0:r.licenseKey,disableRouter:null===(s=t.options)||void 0===s?void 0:s.disableRouter,withCommonStyles:i,children:o})})):null}function RedoclyOpenAPIDocsStandalone({definition:e,definitionUrl:o,options:t={},activeItemId:i,activeSampleLanguage:n,activeDeepLink:r}){return(0,jsx_runtime_1.jsx)(Providers_1.AppProvider,{definition:e,definitionUrl:o,options:t,activeItemId:i,activeSampleLanguage:n,activeDeepLink:r,children:(0,jsx_runtime_1.jsx)(RedoclyOpenAPIDocs,{withCommonStyles:!0})})}
2
2
  //# sourceMappingURL=RedoclyOpenAPIDocs.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),__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 r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&__createBinding(t,e,r);return __setModuleDefault(t,e),t},__awaiter=this&&this.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{u(o.next(e))}catch(e){i(e)}}function s(e){try{u(o.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}u((o=o.apply(e,t||[])).next())}))},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Replay=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),jotai_1=require("jotai"),deepmerge_1=__importDefault(require("deepmerge")),ReplayOverlay=(0,react_1.lazy)((()=>__awaiter(void 0,void 0,void 0,(function*(){return Promise.resolve().then((()=>__importStar(require("@redocly/replay")))).then((e=>({default:e.ReplayOverlay})))})))),store_1=require("../../jotai/store"),replay_1=require("../../jotai/replay"),operation_1=require("../../jotai/operation"),constants_1=require("../../constants"),app_1=require("../../jotai/app"),utils_1=require("./utils"),hooks_1=require("../../hooks"),utils_2=require("../../utils");function ReplayComponent({operation:e,corsProxyUrl:t,fullOpenApi:r}){var o,n;const i=(0,hooks_1.useTranslate)(),a=(0,hooks_1.useOtelTelemetry)(),s=(0,react_1.useRef)(null),{mockServer:u,oAuth2RedirectURI:l,routingBasePath:_}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom),c=(0,jotai_1.useAtomValue)(replay_1.allOperationsAtom),{parser:p}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),d=(0,jotai_1.useAtomValue)(app_1.userClaimsAtom),[m,f]=(0,react_1.useState)(!1),[h,y]=(0,jotai_1.useAtom)(replay_1.replayStateAtom),[j,v]=(0,jotai_1.useAtom)(operation_1.allOperations),[[,O],A]=(0,jotai_1.useAtom)(app_1.environmentAtom);(0,theme_1.useFocusTrap)(s),(0,theme_1.useModalScrollLock)(m);const x=(0,react_1.useCallback)((({operations:e,environment:t,environments:r})=>{const o=e.reduce(((e,t)=>{t.requestValues.body=t.requestValues.body instanceof URLSearchParams?Object.fromEntries(t.requestValues.body.entries()):t.requestValues.body;const{path:r,method:o}=t.apiPath,n=utils_2.JsonPointer.compile(["paths",r,o]);return e[n]=(0,deepmerge_1.default)((0,operation_1.getDefaultOperationStore)(n),t),e}),{});v(Object.assign(Object.assign({},j),o)),A({environment:t,environments:r})}),[j,v,A]),b=()=>{h!==constants_1.LOADING_STATE.LOADING&&(m||a.send({type:"openapi_docs.try_it.opened"}),f(!m)),h===constants_1.LOADING_STATE.NOT_LOADED&&y(constants_1.LOADING_STATE.LOADING)},g=(0,react_1.useCallback)((e=>{if(!e)return;const t=c.find((t=>t.operationId===e));return _+(null==t?void 0:t.href)}),[c,_]);return r?(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(theme_1.Button,{onClick:b,variant:"primary",iconPosition:"left",icon:h===constants_1.LOADING_STATE.LOADING?(0,jsx_runtime_1.jsx)(theme_1.CircleDashIcon,{}):(0,jsx_runtime_1.jsx)(theme_1.RocketIcon,{}),children:h===constants_1.LOADING_STATE.LOADING?i("openapi.loading","Loading..."):i("openapi.tryIt","Try it")}),m&&(0,jsx_runtime_1.jsx)(react_1.Suspense,{children:(0,jsx_runtime_1.jsx)(theme_1.Portal,{mountId:"api-content",children:(0,jsx_runtime_1.jsx)("div",{ref:s,children:(0,jsx_runtime_1.jsx)(ReplayOverlay,{activeOperationId:e.operationId||e.pointer,api:r,onRequestChange:x,onClose:b,onLoad:()=>y(constants_1.LOADING_STATE.LOADED),settings:{corsProxyUrl:t,mockServer:u,environment:O,apiId:null===(n=null===(o=null==p?void 0:p.definition.info)||void 0===o?void 0:o["x-metadata"])||void 0===n?void 0:n.apiId,oAuth2RedirectURI:l,disableCollectionsTab:!0,storageKey:_,convertOperationToReplayValue:(e,t,r)=>(0,utils_1.convertOperationToReplayValueForRedoc)(d)(e,t,r),getOperationUrl:g}})})})})]}):null}exports.Replay=(0,react_1.memo)(ReplayComponent);
1
+ "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),__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 r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&__createBinding(t,e,r);return __setModuleDefault(t,e),t},__awaiter=this&&this.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{u(o.next(e))}catch(e){i(e)}}function s(e){try{u(o.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}u((o=o.apply(e,t||[])).next())}))},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Replay=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),jotai_1=require("jotai"),deepmerge_1=__importDefault(require("deepmerge")),ReplayOverlay=(0,react_1.lazy)((()=>__awaiter(void 0,void 0,void 0,(function*(){return Promise.resolve().then((()=>__importStar(require("@redocly/replay")))).then((e=>({default:e.ReplayOverlay})))})))),store_1=require("../../jotai/store"),replay_1=require("../../jotai/replay"),operation_1=require("../../jotai/operation"),constants_1=require("../../constants"),app_1=require("../../jotai/app"),utils_1=require("./utils"),hooks_1=require("../../hooks"),utils_2=require("../../utils"),events_1=require("../../events");function ReplayComponent({operation:e,corsProxyUrl:t,fullOpenApi:r}){var o,n;const i=(0,hooks_1.useTranslate)(),a=(0,hooks_1.useTelemetry)(),s=(0,react_1.useRef)(null),{mockServer:u,oAuth2RedirectURI:l,routingBasePath:_}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom),c=(0,jotai_1.useAtomValue)(replay_1.allOperationsAtom),{parser:p,options:{events:d}}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),m=(0,jotai_1.useAtomValue)(app_1.userClaimsAtom),[f,y]=(0,react_1.useState)(!1),[v,h]=(0,jotai_1.useAtom)(replay_1.replayStateAtom),[j,O]=(0,jotai_1.useAtom)(operation_1.allOperations),[[,A],x]=(0,jotai_1.useAtom)(app_1.environmentAtom);(0,theme_1.useFocusTrap)(s),(0,theme_1.useModalScrollLock)(f);const I=(0,react_1.useCallback)((({operations:e,environment:t,environments:r})=>{const o=e.reduce(((e,t)=>{t.requestValues.body=t.requestValues.body instanceof URLSearchParams?Object.fromEntries(t.requestValues.body.entries()):t.requestValues.body;const{path:r,method:o}=t.apiPath,n=utils_2.JsonPointer.compile(["paths",r,o]);return e[n]=(0,deepmerge_1.default)((0,operation_1.getDefaultOperationStore)(n),t),e}),{});O(Object.assign(Object.assign({},j),o)),x({environment:t,environments:r})}),[j,O,x]),b=()=>{if(v!==constants_1.LOADING_STATE.LOADING){if(!f&&(a.send({type:"openapi_docs.try_it.opened"}),(null==d?void 0:d.tryItOpen)&&e)){const t=(0,events_1.createTryItOpenEvent)({operation:e});d.tryItOpen(t)}y(!f)}v===constants_1.LOADING_STATE.NOT_LOADED&&h(constants_1.LOADING_STATE.LOADING)},g=(0,react_1.useCallback)((t=>{if((null==d?void 0:d.tryItSent)&&e){const r=(0,events_1.createTryItSentEvent)({operation:e,isSuccess:t});d.tryItSent(r)}}),[d,e]),D=(0,react_1.useCallback)((e=>{if(!e)return;const t=c.find((t=>t.operationId===e));return _+(null==t?void 0:t.href)}),[c,_]);return r?(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(theme_1.Button,{onClick:b,variant:"primary",iconPosition:"left",icon:v===constants_1.LOADING_STATE.LOADING?(0,jsx_runtime_1.jsx)(theme_1.CircleDashIcon,{}):(0,jsx_runtime_1.jsx)(theme_1.RocketIcon,{}),children:v===constants_1.LOADING_STATE.LOADING?i("openapi.loading","Loading..."):i("openapi.tryIt","Try it")}),f&&(0,jsx_runtime_1.jsx)(react_1.Suspense,{children:(0,jsx_runtime_1.jsx)(theme_1.Portal,{mountId:"api-content",children:(0,jsx_runtime_1.jsx)("div",{ref:s,children:(0,jsx_runtime_1.jsx)(ReplayOverlay,Object.assign({activeOperationId:e.operationId||e.pointer,api:r,onRequestChange:I,onClose:b,onLoad:()=>h(constants_1.LOADING_STATE.LOADED),settings:{corsProxyUrl:t,mockServer:u,environment:A,apiId:null===(n=null===(o=null==p?void 0:p.definition.info)||void 0===o?void 0:o["x-metadata"])||void 0===n?void 0:n.apiId,oAuth2RedirectURI:l,disableCollectionsTab:!0,storageKey:_,convertOperationToReplayValue:(e,t,r)=>(0,utils_1.convertOperationToReplayValueForRedoc)(m)(e,t,r),getOperationUrl:D}},{onRequestSent:g}))})})})]}):null}exports.Replay=(0,react_1.memo)(ReplayComponent);
2
2
  //# sourceMappingURL=Replay.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.RequestDetails=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),styled_components_1=__importDefault(require("styled-components")),common_1=require("../common"),OperationItemTitle_1=require("../common/OperationItemTitle"),LinkToField_1=require("../common/LinkToField"),services_1=require("../../services"),Description_1=require("../OperationItem/Description"),Security_1=require("../Security"),ExpandAllButton_1=require("../ExpandAllButton"),RequestParameters_1=require("../RequestParameters"),app_1=require("../../jotai/app"),mediaContent_1=require("../../models/mediaContent");function RequestDetailsComponent({operation:{id:e,description:t,externalDocs:i,parameters:r,requestBody:s,pointer:n,security:o,extensions:a,callbackId:u},title:_,translate:m}){const l=(0,jotai_1.useAtomValue)(app_1.activeMimeNameAtom),c=(0,react_1.useMemo)((()=>{var e;const t=r.some((({schema:e})=>!e.isPrimitive&&!e.isCircular));if(!(null==s?void 0:s.content)||t)return t;const{schema:i}=(0,mediaContent_1.getActiveMediaType)(s.content,l)||{};return null===(e=null==i?void 0:i.fields)||void 0===e?void 0:e.some((({schema:e})=>!e.isPrimitive&&!e.isCircular))}),[l,r,null==s?void 0:s.content]);return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(common_1.Row,{children:(0,jsx_runtime_1.jsxs)(HeadingWrapper,{children:[(0,jsx_runtime_1.jsxs)(OperationItemTitle_1.Title,{children:[e&&(0,jsx_runtime_1.jsx)(LinkToField_1.LinkToField,{to:(0,services_1.makeDeepLink)(e,"request")}),_||(null==m?void 0:m("openapi.request","Request")),c&&(0,jsx_runtime_1.jsx)(ExpandAllButton_1.ExpandAllButton,{operationPointer:n,type:"request"})]}),(0,jsx_runtime_1.jsx)(Description_1.Description,{description:t||i?t:void 0,externalDocs:i,extensions:a}),(0,jsx_runtime_1.jsx)(Security_1.Security,{securities:o})]})}),(0,jsx_runtime_1.jsx)(RequestParameters_1.RequestParameters,{parameters:r,body:s,operationId:e,callbackId:u})]})}const HeadingWrapper=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.RequestDetails=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),styled_components_1=__importDefault(require("styled-components")),common_1=require("../common"),OperationItemTitle_1=require("../common/OperationItemTitle"),LinkToField_1=require("../common/LinkToField"),services_1=require("../../services"),Description_1=require("../OperationItem/Description"),Security_1=require("../Security"),ExpandAllButton_1=require("../ExpandAllButton"),RequestParameters_1=require("../RequestParameters"),app_1=require("../../jotai/app"),mediaContent_1=require("../../models/mediaContent");function RequestDetailsComponent({operation:{id:e,description:t,externalDocs:i,parameters:r,requestBody:n,pointer:s,security:o,extensions:a,callbackId:u},title:l,translate:_,onPanelToggle:m}){const c=(0,jotai_1.useAtomValue)(app_1.activeMimeNameAtom),p=(0,react_1.useMemo)((()=>{var e;const t=r.some((({schema:e})=>!e.isPrimitive&&!e.isCircular));if(!(null==n?void 0:n.content)||t)return t;const{schema:i}=(0,mediaContent_1.getActiveMediaType)(n.content,c)||{};return null===(e=null==i?void 0:i.fields)||void 0===e?void 0:e.some((({schema:e})=>!e.isPrimitive&&!e.isCircular))}),[c,r,null==n?void 0:n.content]);return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(common_1.Row,{children:(0,jsx_runtime_1.jsxs)(HeadingWrapper,{children:[(0,jsx_runtime_1.jsxs)(OperationItemTitle_1.Title,{children:[e&&(0,jsx_runtime_1.jsx)(LinkToField_1.LinkToField,{to:(0,services_1.makeDeepLink)(e,"request")}),l||(null==_?void 0:_("openapi.request","Request")),p&&(0,jsx_runtime_1.jsx)(ExpandAllButton_1.ExpandAllButton,{operationPointer:s,type:"request",onPanelToggle:m})]}),(0,jsx_runtime_1.jsx)(Description_1.Description,{description:t||i?t:void 0,externalDocs:i,extensions:a}),(0,jsx_runtime_1.jsx)(Security_1.Security,{securities:o})]})}),(0,jsx_runtime_1.jsx)(RequestParameters_1.RequestParameters,{parameters:r,body:n,operationId:e,callbackId:u})]})}const HeadingWrapper=styled_components_1.default.div`
2
2
  width: 100%;
3
3
  `;exports.RequestDetails=(0,react_1.memo)(RequestDetailsComponent);
4
4
  //# sourceMappingURL=RequestDetails.js.map
@@ -1,8 +1,10 @@
1
1
  import type { TFunction } from '@redocly/theme';
2
2
  import type { ReactNode } from 'react';
3
3
  import type { OperationModel } from '../../models';
4
+ import type { PanelType } from '../../events/types';
4
5
  export interface RequestProps {
5
6
  operation: Pick<OperationModel, 'security' | 'pointer' | 'description' | 'externalDocs' | 'extensions' | 'parameters' | 'requestBody' | 'id' | 'callbackId'>;
6
7
  title?: string | ReactNode;
7
8
  translate?: TFunction;
9
+ onPanelToggle?: (isExpanded: boolean, panelType?: PanelType) => void;
8
10
  }
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Example=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),Samples_1=require("../Samples"),hooks_1=require("../../hooks"),operation_1=require("../../jotai/operation");function ExampleComponent({mediaType:e,mediaContent:t,renderSample:a}){const o=(0,hooks_1.useOtelTelemetry)(),r=e.operation.pointer,[s,n]=(0,jotai_1.useAtom)((0,operation_1.operationStore)(r)),i=e.examples||{},p=Object.keys(i),m=(0,hooks_1.useActivateExample)(t),{exampleKey:l}=(0,Samples_1.useExampleKey)(e.operation,i);if(!p.length||1===p.length)return a();return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(Samples_1.ExampleSwitch,{examples:i,exampleKey:l,onChange:e=>{o.send({type:"openapi_docs.examples_switcher.clicked",payload:{example:e,number_of_examples:p.length}}),n(Object.assign(Object.assign({},s),{activeExampleName:e,activeOneOf:{[r]:p.indexOf(e)},requestValues:{body:null}})),m(e)}}),a(l)]})}exports.Example=(0,react_1.memo)(ExampleComponent);
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Example=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),Samples_1=require("../Samples"),hooks_1=require("../../hooks"),operation_1=require("../../jotai/operation");function ExampleComponent({mediaType:e,mediaContent:t,renderSample:a}){const o=(0,hooks_1.useTelemetry)(),r=e.operation.pointer,[s,n]=(0,jotai_1.useAtom)((0,operation_1.operationStore)(r)),i=e.examples||{},p=Object.keys(i),m=(0,hooks_1.useActivateExample)(t),{exampleKey:l}=(0,Samples_1.useExampleKey)(e.operation,i);if(!p.length||1===p.length)return a();return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(Samples_1.ExampleSwitch,{examples:i,exampleKey:l,onChange:e=>{o.send({type:"openapi_docs.examples_switcher.clicked",payload:{example:e,number_of_examples:p.length}}),n(Object.assign(Object.assign({},s),{activeExampleName:e,activeOneOf:{[r]:p.indexOf(e)},requestValues:{body:null}})),m(e)}}),a(l)]})}exports.Example=(0,react_1.memo)(ExampleComponent);
2
2
  //# sourceMappingURL=Example.js.map
@@ -1,8 +1,10 @@
1
1
  import type { OperationModel } from '../../models';
2
+ import type { PanelType } from '../../events/types';
2
3
  interface RequestSamplesProps {
3
4
  operation: OperationModel;
4
5
  defaultLanguage?: string;
5
6
  disableFooter?: boolean;
7
+ onPanelToggle?: (isExpanded: boolean, panelType?: PanelType) => void;
6
8
  }
7
9
  export declare const RequestSamples: import("react").NamedExoticComponent<RequestSamplesProps>;
8
10
  export {};
@@ -1,4 +1,4 @@
1
- "use strict";var __rest=this&&this.__rest||function(e,a){var o={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&a.indexOf(t)<0&&(o[t]=e[t]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(t=Object.getOwnPropertySymbols(e);r<t.length;r++)a.indexOf(t[r])<0&&Object.prototype.propertyIsEnumerable.call(e,t[r])&&(o[t[r]]=e[t[r]])}return o},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.RequestSamples=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),styled_components_1=__importDefault(require("styled-components")),PayloadSamples_1=require("../PayloadSamples"),CodeSample_1=require("./CodeSample"),useCodeSamples_1=require("./useCodeSamples"),models_1=require("../../models"),events_1=require("../../events"),store_1=require("../../jotai/store"),ServerListDropdown_1=require("../ServerListDropdown"),Language_1=require("../Language"),app_1=require("../../jotai/app"),Replay_1=require("../Replay"),common_1=require("../common"),hooks_1=require("../../hooks"),operation_1=require("../../jotai/operation");function RequestSamplesComponent(e){var{operation:a,disableFooter:o}=e,t=__rest(e,["operation","disableFooter"]);const r=(0,hooks_1.useOtelTelemetry)(),[{activeLanguage:s,languages:n},l]=(0,jotai_1.useAtom)(app_1.languageAtom),{samples:i}=(0,useCodeSamples_1.useCodeSamples)(a),{parser:p,options:{events:d,corsProxyUrl:u,hideReplay:_}}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),m=!(o||a.isWebhook||_||a.hideReplay),c=!!(null==n?void 0:n.length),y=(0,hooks_1.useActiveWithFallback)(i,s),g=e=>{l(e),r.send({type:"openapi_docs.select_language.clicked",payload:{language:e}})},x=(0,jotai_1.useAtomValue)(app_1.activeMimeNameAtom),{activeExampleName:j}=(0,jotai_1.useAtomValue)((0,operation_1.operationStore)(a.pointer)),v=(0,react_1.useCallback)((({lang:e,title:o})=>()=>{var t;const s=(0,events_1.createCodeSampleCopyEvent)({operation:a,label:o,lang:e,type:"request",activeMimeName:x,activeExampleName:j});r.send({type:"openapi_docs.copy_code_snippet.clicked",payload:{snippet_type:"request",language:e}}),null===(t=null==d?void 0:d.codeSamplesCopy)||void 0===t||t.call(d,s)}),[a,r,d,x,j]),S=()=>(0,jsx_runtime_1.jsxs)(StyledPanelHeader,{isExpandable:!1,withReplay:!c&&m,children:[(0,jsx_runtime_1.jsx)(StyledServerListDropdown,{operation:a}),c&&(0,jsx_runtime_1.jsx)(Language_1.LanguageDropdown,{activeTab:y,samples:i,onChange:g}),!c&&m&&(0,jsx_runtime_1.jsx)(Replay_1.Replay,{operation:a,corsProxyUrl:u,fullOpenApi:p.definition})]}),h=(0,react_1.useMemo)((()=>{if(m&&c)return(0,jsx_runtime_1.jsx)(ReplayWrapper,{children:(0,jsx_runtime_1.jsx)(Replay_1.Replay,{operation:a,corsProxyUrl:u,fullOpenApi:p.definition})})}),[m,c,a,u,p.definition]),f=(0,react_1.useMemo)((()=>i.map((e=>e.key===y?(0,jsx_runtime_1.jsx)("div",{children:(0,models_1.isPayloadSample)(e)?(0,jsx_runtime_1.jsx)(PayloadSamples_1.PayloadSamples,Object.assign({content:e.requestBodyContent,onCopyClick:v(e)},t)):(0,jsx_runtime_1.jsx)(CodeSample_1.CodeSample,Object.assign({lang:e.lang,source:e.source,externalSample:e,operation:a,onCopyClick:v(e)},t))},e.key+a.id):null))),[y,v,a,t,i]);return n&&!i.length?(0,jsx_runtime_1.jsx)(common_1.CodeBlockPanel,{className:"panel-request-samples",header:S,isExpandable:!1,expanded:!1}):i.length?(0,jsx_runtime_1.jsx)(common_1.CodeBlockPanel,{className:"panel-request-samples",header:S,footer:h,isExpandable:!1,children:f}):null}exports.RequestSamples=(0,react_1.memo)(RequestSamplesComponent);const StyledPanelHeader=(0,styled_components_1.default)(theme_1.PanelHeader)`
1
+ "use strict";var __rest=this&&this.__rest||function(e,a){var o={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&a.indexOf(t)<0&&(o[t]=e[t]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(t=Object.getOwnPropertySymbols(e);r<t.length;r++)a.indexOf(t[r])<0&&Object.prototype.propertyIsEnumerable.call(e,t[r])&&(o[t[r]]=e[t[r]])}return o},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.RequestSamples=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),styled_components_1=__importDefault(require("styled-components")),PayloadSamples_1=require("../PayloadSamples"),CodeSample_1=require("./CodeSample"),useCodeSamples_1=require("./useCodeSamples"),models_1=require("../../models"),events_1=require("../../events"),store_1=require("../../jotai/store"),ServerListDropdown_1=require("../ServerListDropdown"),Language_1=require("../Language"),app_1=require("../../jotai/app"),Replay_1=require("../Replay"),common_1=require("../common"),hooks_1=require("../../hooks"),operation_1=require("../../jotai/operation");function RequestSamplesComponent(e){var{operation:a,disableFooter:o,onPanelToggle:t}=e,r=__rest(e,["operation","disableFooter","onPanelToggle"]);const n=(0,hooks_1.useTelemetry)(),[{activeLanguage:l,languages:s},i]=(0,jotai_1.useAtom)(app_1.languageAtom),{samples:p}=(0,useCodeSamples_1.useCodeSamples)(a),{parser:u,options:{events:d,corsProxyUrl:_,hideReplay:m}}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),c=!(o||a.isWebhook||m||a.hideReplay),g=!!(null==s?void 0:s.length),y=(0,hooks_1.useActiveWithFallback)(p,l),x=e=>{i(e),n.send({type:"openapi_docs.select_language.clicked",payload:{language:e}});const o=null==s?void 0:s.find((a=>a.key===e));if((null==d?void 0:d.codeSamplesLanguageSwitch)&&o){const e=(0,events_1.createLanguageSwitchEvent)({operation:a,sample:{lang:o.lang,label:o.title}});d.codeSamplesLanguageSwitch(e)}},v=(0,jotai_1.useAtomValue)(app_1.activeMimeNameAtom),{activeExampleName:j}=(0,jotai_1.useAtomValue)((0,operation_1.operationStore)(a.pointer)),S=(0,react_1.useCallback)((({lang:e,title:o})=>()=>{var t;const r=(0,events_1.createCodeSampleCopyEvent)({operation:a,label:o,lang:e,type:"request",activeMimeName:v,activeExampleName:j});n.send({type:"openapi_docs.copy_code_snippet.clicked",payload:{snippet_type:"request",language:e}}),null===(t=null==d?void 0:d.codeSamplesCopy)||void 0===t||t.call(d,r)}),[a,n,d,v,j]),h=(0,react_1.useCallback)((e=>{null==t||t(e,"request-samples")}),[t]),f=()=>(0,jsx_runtime_1.jsxs)(StyledPanelHeader,{isExpandable:!1,withReplay:!g&&c,children:[(0,jsx_runtime_1.jsx)(StyledServerListDropdown,{operation:a}),g&&(0,jsx_runtime_1.jsx)(Language_1.LanguageDropdown,{activeTab:y,samples:p,onChange:x}),!g&&c&&(0,jsx_runtime_1.jsx)(Replay_1.Replay,{operation:a,corsProxyUrl:_,fullOpenApi:u.definition})]}),q=(0,react_1.useMemo)((()=>{if(c&&g)return(0,jsx_runtime_1.jsx)(ReplayWrapper,{children:(0,jsx_runtime_1.jsx)(Replay_1.Replay,{operation:a,corsProxyUrl:_,fullOpenApi:u.definition})})}),[c,g,a,_,u.definition]),b=(0,react_1.useMemo)((()=>p.map((e=>e.key===y?(0,jsx_runtime_1.jsx)("div",{children:(0,models_1.isPayloadSample)(e)?(0,jsx_runtime_1.jsx)(PayloadSamples_1.PayloadSamples,Object.assign({content:e.requestBodyContent,onCopyClick:S(e),onPanelToggle:h},r)):(0,jsx_runtime_1.jsx)(CodeSample_1.CodeSample,Object.assign({lang:e.lang,source:e.source,externalSample:e,operation:a,onCopyClick:S(e)},r))},e.key+a.id):null))),[y,S,h,a,r,p]);return s&&!p.length?(0,jsx_runtime_1.jsx)(common_1.CodeBlockPanel,{className:"panel-request-samples",header:f,isExpandable:!1,expanded:!1}):p.length?(0,jsx_runtime_1.jsx)(common_1.CodeBlockPanel,{className:"panel-request-samples",header:f,footer:q,isExpandable:!1,children:b}):null}exports.RequestSamples=(0,react_1.memo)(RequestSamplesComponent);const StyledPanelHeader=(0,styled_components_1.default)(theme_1.PanelHeader)`
2
2
  flex-wrap: nowrap;
3
3
  ${({withReplay:e})=>e&&"padding: var(--spacing-xs) var(--spacing-sm);"}
4
4
  `,StyledServerListDropdown=(0,styled_components_1.default)(ServerListDropdown_1.ServerListDropdown)`
@@ -1,10 +1,12 @@
1
1
  import type { ReactElement } from 'react';
2
2
  import type { OperationModel } from '../../models';
3
+ import type { PanelType } from '../../events/types';
3
4
  export interface ResponseSamplesProps {
4
5
  operation: OperationModel;
5
6
  activeResponseTab?: string;
6
7
  onTabChange: (tab: string) => void;
8
+ onPanelToggle?: (isExpanded: boolean, panelType?: PanelType) => void;
7
9
  }
8
- declare function ResponseSamplesComponent({ operation, activeResponseTab, onTabChange, }: ResponseSamplesProps): ReactElement | null;
10
+ declare function ResponseSamplesComponent({ operation, activeResponseTab, onTabChange, onPanelToggle, }: ResponseSamplesProps): ReactElement | null;
9
11
  export declare const ResponseSamples: import("react").MemoExoticComponent<typeof ResponseSamplesComponent>;
10
12
  export {};
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ResponseSamples=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),PayloadSamples_1=require("../PayloadSamples"),events_1=require("../../events"),store_1=require("../../jotai/store"),Summary_1=require("./Summary"),Tabs_1=require("../Tabs"),common_1=require("../common"),hooks_1=require("../../hooks"),app_1=require("../../jotai/app"),operation_1=require("../../jotai/operation");function ResponseSamplesComponent({operation:e,activeResponseTab:o,onTabChange:a}){const s=(0,hooks_1.useOtelTelemetry)(),{events:t}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom),n=(0,hooks_1.useTranslate)(),r=e.responses.filter((e=>{var o,a;return null!==(a=null===(o=e.content)||void 0===o?void 0:o.hasSample)&&void 0!==a&&a})),i=e.responses.map((({code:e})=>({key:e,title:e}))),l=(null==i?void 0:i.find((({key:e})=>e===o)))||(null==i?void 0:i[0]),p=(0,jotai_1.useAtomValue)(app_1.activeMimeNameAtom),{activeExampleName:m}=(0,jotai_1.useAtomValue)((0,operation_1.operationStore)(e.pointer)),u=(0,react_1.useCallback)((()=>{var o;s.send({type:"openapi_docs.copy_code_snippet.clicked",payload:{snippet_type:"response"}});const a=(0,events_1.createCodeSampleCopyEvent)({operation:e,type:"response",activeMimeName:p,activeExampleName:m});null===(o=null==t?void 0:t.codeSamplesCopy)||void 0===o||o.call(t,a)}),[s,e,t,p,m]);if(!r.length)return null;return(0,jsx_runtime_1.jsx)(common_1.CodeBlockPanel,{className:"panel-response-samples",header:()=>(0,jsx_runtime_1.jsx)(Summary_1.Summary,{tabs:(0,jsx_runtime_1.jsx)(Tabs_1.Tabs,{tabs:i,activeTab:l,onChange:e=>a(e.key)})}),isExpandable:!1,children:e.responses.map((e=>{var o;return e.code===l.key?(0,jsx_runtime_1.jsx)("div",{children:(null===(o=null==e?void 0:e.content)||void 0===o?void 0:o.hasSample)?(0,jsx_runtime_1.jsx)(PayloadSamples_1.PayloadSamples,{content:e.content,onCopyClick:u}):(0,jsx_runtime_1.jsx)(PayloadSamples_1.StyledCodeBlock,{source:n("openapi.noResponseContent","No content")})},e.code):null}))})}exports.ResponseSamples=(0,react_1.memo)(ResponseSamplesComponent);
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ResponseSamples=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),PayloadSamples_1=require("../PayloadSamples"),events_1=require("../../events"),store_1=require("../../jotai/store"),Summary_1=require("./Summary"),Tabs_1=require("../Tabs"),common_1=require("../common"),hooks_1=require("../../hooks"),app_1=require("../../jotai/app"),operation_1=require("../../jotai/operation");function ResponseSamplesComponent({operation:e,activeResponseTab:o,onTabChange:a,onPanelToggle:s}){const n=(0,hooks_1.useTelemetry)(),{events:t}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom),r=(0,hooks_1.useTranslate)(),l=e.responses.filter((e=>{var o,a;return null!==(a=null===(o=e.content)||void 0===o?void 0:o.hasSample)&&void 0!==a&&a})),i=e.responses.map((({code:e})=>({key:e,title:e}))),p=(null==i?void 0:i.find((({key:e})=>e===o)))||(null==i?void 0:i[0]),m=(0,jotai_1.useAtomValue)(app_1.activeMimeNameAtom),{activeExampleName:u}=(0,jotai_1.useAtomValue)((0,operation_1.operationStore)(e.pointer)),_=(0,react_1.useCallback)((()=>{var o;n.send({type:"openapi_docs.copy_code_snippet.clicked",payload:{snippet_type:"response"}});const a=(0,events_1.createCodeSampleCopyEvent)({operation:e,type:"response",activeMimeName:m,activeExampleName:u});null===(o=null==t?void 0:t.codeSamplesCopy)||void 0===o||o.call(t,a)}),[n,e,t,m,u]),c=(0,react_1.useCallback)((e=>{null==s||s(e,"response-samples")}),[s]);if(!l.length)return null;return(0,jsx_runtime_1.jsx)(common_1.CodeBlockPanel,{className:"panel-response-samples",header:()=>(0,jsx_runtime_1.jsx)(Summary_1.Summary,{tabs:(0,jsx_runtime_1.jsx)(Tabs_1.Tabs,{tabs:i,activeTab:p,onChange:e=>a(e.key)})}),isExpandable:!1,children:e.responses.map((e=>{var o;return e.code===p.key?(0,jsx_runtime_1.jsx)("div",{children:(null===(o=null==e?void 0:e.content)||void 0===o?void 0:o.hasSample)?(0,jsx_runtime_1.jsx)(PayloadSamples_1.PayloadSamples,{content:e.content,onCopyClick:_,onPanelToggle:c}):(0,jsx_runtime_1.jsx)(PayloadSamples_1.StyledCodeBlock,{source:r("openapi.noResponseContent","No content")})},e.code):null}))})}exports.ResponseSamples=(0,react_1.memo)(ResponseSamplesComponent);
2
2
  //# sourceMappingURL=ResponseSamples.js.map
@@ -1,6 +1,7 @@
1
1
  import type { ReactNode } from 'react';
2
2
  import type { ResponseModel } from '../../models';
3
3
  import type { TabType } from '../../models/tab';
4
+ import type { PanelType } from '../../events/types';
4
5
  interface IOperationResponseList {
5
6
  responses: ResponseModel[];
6
7
  operationId: string;
@@ -9,6 +10,7 @@ interface IOperationResponseList {
9
10
  renderTitle?: (tab: TabType) => ReactNode;
10
11
  activeResponseTab?: string;
11
12
  onTabChange?: (key: string) => void;
13
+ onPanelToggle?: (isExpanded: boolean, panelType?: PanelType) => void;
12
14
  }
13
15
  export declare const OperationResponseList: import("react").NamedExoticComponent<IOperationResponseList>;
14
16
  export {};
@@ -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.OperationResponseList=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),react_router_dom_1=require("react-router-dom"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),Tabs_1=require("../Tabs"),ResponseDetails_1=require("./ResponseDetails"),services_1=require("../../services"),styled_1=require("./styled"),LinkToField_1=require("../common/LinkToField"),utils_1=require("../../utils"),ExpandAllButton_1=require("../ExpandAllButton"),hooks_1=require("../../hooks"),models_1=require("../../models"),app_1=require("../../jotai/app");exports.OperationResponseList=(0,react_1.memo)((({responses:e,renderTitle:t,operationId:s,operationPointer:i,activeResponseTab:r,onTabChange:n,callbackId:o})=>{const a=(0,react_router_dom_1.useLocation)(),l=(0,hooks_1.useTranslate)(),u=(0,jotai_1.useAtomValue)(app_1.activeMimeNameAtom),_=e.map((({code:e})=>({key:e,title:e}))),d=_.find((({key:e})=>e===r||(0,utils_1.pathIncludesLink)(a,s)&&(0,utils_1.pathIncludesLink)(a,`c=${e}`))),{activeTab:p,handleTabChange:c}=(0,Tabs_1.useTabsState)({tabs:_,defaultTab:null==d?void 0:d.key,onChange:n}),m=_.find((e=>e.key===(r||p))),x=e.find((e=>e.code===(null==m?void 0:m.key))),j=(0,react_1.useMemo)((()=>{var e;if(!(null==x?void 0:x.content))return!1;const{schema:t}=(0,models_1.getActiveMediaType)(null==x?void 0:x.content,u)||{};return null===(e=null==t?void 0:t.fields)||void 0===e?void 0:e.some((({schema:e})=>!e.isPrimitive&&!e.isCircular))}),[u,null==x?void 0:x.content]);return m?(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsxs)(TitleWrap,{children:[(null==t?void 0:t(m))||(0,jsx_runtime_1.jsxs)(styled_1.StyledTitle,{children:[(0,jsx_runtime_1.jsx)(LinkToField_1.LinkToField,{to:(0,services_1.makeDeepLink)(s,`response&c=${m.key}`)}),l("openapi.responses","Responses")]}),(0,jsx_runtime_1.jsx)(Tabs_1.Tabs,{tabs:_,activeTab:m,onChange:c}),j&&(0,jsx_runtime_1.jsx)(ExpandAllButton_1.ExpandAllButton,{type:"response",operationPointer:i})]}),x?(0,jsx_runtime_1.jsx)("div",{children:(0,jsx_runtime_1.jsx)(ResponseDetails_1.ResponseDetails,{response:x,operationId:s,callbackId:o})},x.code):null]}):null}));const TitleWrap=(0,styled_components_1.default)(styled_1.Row)`
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OperationResponseList=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),react_router_dom_1=require("react-router-dom"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),Tabs_1=require("../Tabs"),ResponseDetails_1=require("./ResponseDetails"),services_1=require("../../services"),styled_1=require("./styled"),LinkToField_1=require("../common/LinkToField"),utils_1=require("../../utils"),ExpandAllButton_1=require("../ExpandAllButton"),hooks_1=require("../../hooks"),models_1=require("../../models"),app_1=require("../../jotai/app");exports.OperationResponseList=(0,react_1.memo)((({responses:e,renderTitle:t,operationId:s,operationPointer:i,activeResponseTab:n,onTabChange:o,callbackId:r,onPanelToggle:a})=>{const l=(0,react_router_dom_1.useLocation)(),u=(0,hooks_1.useTranslate)(),_=(0,jotai_1.useAtomValue)(app_1.activeMimeNameAtom),d=e.map((({code:e})=>({key:e,title:e}))),p=d.find((({key:e})=>e===n||(0,utils_1.pathIncludesLink)(l,s)&&(0,utils_1.pathIncludesLink)(l,`c=${e}`))),{activeTab:c,handleTabChange:m}=(0,Tabs_1.useTabsState)({tabs:d,defaultTab:null==p?void 0:p.key,onChange:o}),x=d.find((e=>e.key===(n||c))),j=e.find((e=>e.code===(null==x?void 0:x.key))),v=(0,react_1.useMemo)((()=>{var e;if(!(null==j?void 0:j.content))return!1;const{schema:t}=(0,models_1.getActiveMediaType)(null==j?void 0:j.content,_)||{};return null===(e=null==t?void 0:t.fields)||void 0===e?void 0:e.some((({schema:e})=>!e.isPrimitive&&!e.isCircular))}),[_,null==j?void 0:j.content]);return x?(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsxs)(TitleWrap,{children:[(null==t?void 0:t(x))||(0,jsx_runtime_1.jsxs)(styled_1.StyledTitle,{children:[(0,jsx_runtime_1.jsx)(LinkToField_1.LinkToField,{to:(0,services_1.makeDeepLink)(s,`response&c=${x.key}`)}),u("openapi.responses","Responses")]}),(0,jsx_runtime_1.jsx)(Tabs_1.Tabs,{tabs:d,activeTab:x,onChange:m}),v&&(0,jsx_runtime_1.jsx)(ExpandAllButton_1.ExpandAllButton,{type:"response",operationPointer:i,onPanelToggle:a})]}),j?(0,jsx_runtime_1.jsx)("div",{children:(0,jsx_runtime_1.jsx)(ResponseDetails_1.ResponseDetails,{response:j,operationId:s,callbackId:r})},j.code):null]}):null}));const TitleWrap=(0,styled_components_1.default)(styled_1.Row)`
2
2
  flex-wrap: wrap;
3
3
  gap: var(--spacing-unit);
4
4
  `;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ExampleSwitch=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),common_1=require("../common"),SelectOrLabel_1=require("../SelectOrLabel"),utils_1=require("../../utils"),hooks_1=require("../../hooks"),ExampleSwitch=({exampleKey:e,examples:t,onChange:l,className:a})=>{var r;const s=(0,hooks_1.useOtelTelemetry)(),i=Object.keys(t),o=e?i.indexOf(e):0,[c,m]=(0,react_1.useState)(o>-1?o:0);(0,react_1.useEffect)((()=>m(o>-1?o:0)),[e,o]);const n=i.map(((e,l)=>({value:(0,utils_1.normalizeText)(t[e].summary)||e,idx:l})));return n.length<2?null:(0,jsx_runtime_1.jsx)(common_1.Container,{"data-testid":"example-switch",className:a,children:(0,jsx_runtime_1.jsx)(SelectOrLabel_1.SelectOrLabel,{Select:common_1.Select,Label:common_1.MimeLabel,variant:"dark",fullWidth:!0,options:n,value:null===(r=n[c])||void 0===r?void 0:r.value,onChange:({idx:e})=>{s.send({type:"openapi_docs.examples_switcher.clicked",payload:{example:i[e],number_of_examples:i.length}}),m(e),l(i[e])}})})};exports.ExampleSwitch=ExampleSwitch;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ExampleSwitch=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),common_1=require("../common"),SelectOrLabel_1=require("../SelectOrLabel"),utils_1=require("../../utils"),hooks_1=require("../../hooks"),ExampleSwitch=({exampleKey:e,examples:t,onChange:a,className:l})=>{var r;const s=(0,hooks_1.useTelemetry)(),i=Object.keys(t),o=e?i.indexOf(e):0,[c,m]=(0,react_1.useState)(o>-1?o:0);(0,react_1.useEffect)((()=>m(o>-1?o:0)),[e,o]);const n=i.map(((e,a)=>({value:(0,utils_1.normalizeText)(t[e].summary)||e,idx:a})));return n.length<2?null:(0,jsx_runtime_1.jsx)(common_1.Container,{"data-testid":"example-switch",className:l,children:(0,jsx_runtime_1.jsx)(SelectOrLabel_1.SelectOrLabel,{Select:common_1.Select,Label:common_1.MimeLabel,variant:"dark",fullWidth:!0,options:n,value:null===(r=n[c])||void 0===r?void 0:r.value,onChange:({idx:e})=>{s.send({type:"openapi_docs.examples_switcher.clicked",payload:{example:i[e],number_of_examples:i.length}}),m(e),a(i[e])}})})};exports.ExampleSwitch=ExampleSwitch;
2
2
  //# sourceMappingURL=ExampleSwitch.js.map
@@ -1,4 +1,4 @@
1
- "use strict";var __rest=this&&this.__rest||function(e,r){var t={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&r.indexOf(i)<0&&(t[i]=e[i]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(i=Object.getOwnPropertySymbols(e);n<i.length;n++)r.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(e,i[n])&&(t[i[n]]=e[i[n]])}return t},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Schema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),react_router_dom_1=require("react-router-dom"),styled_components_1=__importDefault(require("styled-components")),ArraySchema_1=require("./ArraySchema"),ObjectSchema_1=require("./ObjectSchema"),OneOfSchema_1=require("./OneOfSchema"),RecursiveSchema_1=require("./RecursiveSchema"),operation_1=require("../../jotai/operation"),PropertyDetails_1=require("../PropertyDetails"),utils_1=require("../../utils");function SchemaComponent(e){var r,{schema:t,onDiscriminatorChange:i}=e,n=__rest(e,["schema","onDiscriminatorChange"]);const{activeOneOf:a}=(0,jotai_1.useAtomValue)((0,operation_1.operationStore)((null==t?void 0:t.operationPointer)||"")),o=(0,react_router_dom_1.useLocation)();if(!t)return null;const{type:s,oneOf:c,discriminatorProp:u,isCircular:m}=t;if(m)return(0,jsx_runtime_1.jsx)(RecursiveSchema_1.RecursiveSchema,{schema:t});if(void 0!==u){if(!c||!c.length)return console.warn(`Looks like you are using discriminator wrong: you don't have any definition inherited from the ${t.title}`),null;const e=c.findIndex(((e,r)=>(0,utils_1.pathIncludesLink)(o,`d=${r}`))),r=-1===e?0:e,s=c[void 0!==a[t.pointer]?a[t.pointer]:r];return(null==s?void 0:s.isCircular)?(0,jsx_runtime_1.jsx)(RecursiveSchema_1.RecursiveSchema,{schema:s}):(0,jsx_runtime_1.jsx)(ObjectSchema_1.ObjectSchema,Object.assign({},n,{schema:s,discriminator:{fieldName:u,parentSchema:t,activeOneOfIdx:r,onChange:i}}))}if(void 0!==c)return(0,jsx_runtime_1.jsx)(OneOfSchema_1.OneOfSchema,Object.assign({},n,{schema:t}));const _=Array.isArray(s)?s:[s];if(_.includes("object")){if(null===(r=t.fields)||void 0===r?void 0:r.length)return(0,jsx_runtime_1.jsx)(ObjectSchema_1.ObjectSchema,Object.assign({},n,{schema:t}))}else if(_.includes("array"))return(0,jsx_runtime_1.jsx)(ArraySchema_1.ArraySchema,Object.assign({},n,{schema:t}));const l={schema:t,name:"",description:t.description,required:!1,deprecated:!1};return(0,jsx_runtime_1.jsx)(Wrapper,{children:(0,jsx_runtime_1.jsx)(PropertyDetails_1.FieldDetails,{field:l,fieldParentsName:n.fieldParentsName})})}exports.Schema=(0,react_1.memo)(SchemaComponent);const Wrapper=styled_components_1.default.div`
1
+ "use strict";var __rest=this&&this.__rest||function(e,r){var t={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&r.indexOf(i)<0&&(t[i]=e[i]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(i=Object.getOwnPropertySymbols(e);n<i.length;n++)r.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(e,i[n])&&(t[i[n]]=e[i[n]])}return t},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Schema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),react_router_dom_1=require("react-router-dom"),styled_components_1=__importDefault(require("styled-components")),ArraySchema_1=require("./ArraySchema"),ObjectSchema_1=require("./ObjectSchema"),OneOfSchema_1=require("./OneOfSchema"),RecursiveSchema_1=require("./RecursiveSchema"),operation_1=require("../../jotai/operation"),PropertyDetails_1=require("../PropertyDetails"),utils_1=require("../../utils");function SchemaComponent(e){var r,{schema:t,onDiscriminatorChange:i}=e,n=__rest(e,["schema","onDiscriminatorChange"]);const{activeOneOf:a}=(0,jotai_1.useAtomValue)((0,operation_1.operationStore)((null==t?void 0:t.operationPointer)||"")),o=(0,react_router_dom_1.useLocation)();if(!t)return null;const{type:s,oneOf:c,discriminatorProp:u,isCircular:m}=t;if(m)return(0,jsx_runtime_1.jsx)(RecursiveSchema_1.RecursiveSchema,{schema:t});if(void 0!==u){if(!c||!c.length)return console.warn(`Looks like you are using discriminator wrong: you don't have any definition inherited from the ${t.title}`),null;const e=c.findIndex(((e,r)=>(0,utils_1.pathIncludesLink)(o,`d=${r}`))),r=-1===e?0:e,s=c[void 0!==a[t.pointer]?a[t.pointer]:r];return(null==s?void 0:s.isCircular)?(0,jsx_runtime_1.jsx)(RecursiveSchema_1.RecursiveSchema,{schema:s}):(0,jsx_runtime_1.jsx)(ObjectSchema_1.ObjectSchema,Object.assign({},n,{schema:s,discriminator:{fieldName:u,parentSchema:t,activeOneOfIdx:r,onChange:i}}))}if(void 0!==c&&c.length>1)return(0,jsx_runtime_1.jsx)(OneOfSchema_1.OneOfSchema,Object.assign({},n,{schema:t}));const _=Array.isArray(s)?s:[s];if(_.includes("object")){if(null===(r=t.fields)||void 0===r?void 0:r.length)return(0,jsx_runtime_1.jsx)(ObjectSchema_1.ObjectSchema,Object.assign({},n,{schema:t}))}else if(_.includes("array"))return(0,jsx_runtime_1.jsx)(ArraySchema_1.ArraySchema,Object.assign({},n,{schema:t}));const l={schema:t,name:"",description:t.description,required:!1,deprecated:!1};return(0,jsx_runtime_1.jsx)(Wrapper,{children:(0,jsx_runtime_1.jsx)(PropertyDetails_1.FieldDetails,{field:l,fieldParentsName:n.fieldParentsName})})}exports.Schema=(0,react_1.memo)(SchemaComponent);const Wrapper=styled_components_1.default.div`
2
2
  width: 100%;
3
3
  padding: var(--spacing-xxs) 0;
4
4
  border-bottom: 1px solid var(--border-color-primary);
@@ -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.SecurityButton=SecurityButton;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),react_1=require("react"),hooks_1=require("../../hooks");function SecurityButton({securities:e,onClick:t}){const r=(0,hooks_1.useTranslate)();return(0,jsx_runtime_1.jsx)(SecurityPanel,{header:()=>(0,jsx_runtime_1.jsxs)(SecurityHeader,{children:[(0,jsx_runtime_1.jsx)(theme_1.SecurityIcon,{}),(0,jsx_runtime_1.jsx)(Title,{children:"Security"}),(0,jsx_runtime_1.jsx)(ViewDetailsButton,{onClick:t,variant:"link",children:r("openapi.viewDetails","View details")})]}),isExpandable:!1,children:(0,jsx_runtime_1.jsx)(SecurityList,{children:e.map(((t,r)=>{const n=e.length>1&&t.schemes.length>1,i=t.schemes.map((({id:e},r)=>(0,jsx_runtime_1.jsxs)(react_1.Fragment,{children:[e,r<t.schemes.length-1&&(0,jsx_runtime_1.jsx)(Conjunction,{children:" and "})]},e)));return(0,jsx_runtime_1.jsxs)(react_1.Fragment,{children:[n?"(":"",i,n?")":"",r<e.length-1&&(0,jsx_runtime_1.jsx)(Conjunction,{children:" or "})]},r)}))})})}const SecurityPanel=(0,styled_components_1.default)(theme_1.Panel)`
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.SecurityButton=SecurityButton;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),react_1=require("react"),hooks_1=require("../../hooks");function SecurityButton({securities:e,onClick:t}){const r=(0,hooks_1.useTranslate)();return(0,jsx_runtime_1.jsx)(SecurityPanel,{header:()=>(0,jsx_runtime_1.jsxs)(SecurityHeader,{children:[(0,jsx_runtime_1.jsx)(theme_1.SecurityIcon,{}),(0,jsx_runtime_1.jsx)(Title,{children:"Security"}),(0,jsx_runtime_1.jsx)(ViewDetailsButton,{onClick:t,variant:"link",children:r("openapi.viewSecurityDetails","View details")})]}),isExpandable:!1,children:(0,jsx_runtime_1.jsx)(SecurityList,{children:e.map(((t,r)=>{const n=e.length>1&&t.schemes.length>1,i=t.schemes.map((({id:e},r)=>(0,jsx_runtime_1.jsxs)(react_1.Fragment,{children:[e,r<t.schemes.length-1&&(0,jsx_runtime_1.jsx)(Conjunction,{children:" and "})]},e)));return(0,jsx_runtime_1.jsxs)(react_1.Fragment,{children:[n?"(":"",i,n?")":"",r<e.length-1&&(0,jsx_runtime_1.jsx)(Conjunction,{children:" or "})]},r)}))})})}const SecurityPanel=(0,styled_components_1.default)(theme_1.Panel)`
2
2
  margin-top: var(--spacing-base);
3
3
  border: var(--panel-border);
4
4
  border-radius: var(--panel-border-radius);
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ServerListDropdown=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),jotai_1=require("jotai"),common_1=require("../common"),styled_1=require("./styled"),PanelItem_1=require("../PanelItem"),services_1=require("../../services"),utils_1=require("../../utils"),app_1=require("../../jotai/app"),hooks_1=require("../../hooks"),environments_1=require("../../utils/environments"),ServerListDropdown=({operation:e,className:r})=>{const t=(0,hooks_1.useOtelTelemetry)(),[[s],i]=(0,jotai_1.useAtom)(app_1.environmentAtom),n=(0,hooks_1.useActiveWithFallback)(e.servers.map((e=>Object.assign(Object.assign({},e),{key:e.url}))),s.server),o=(0,react_1.useCallback)((e=>{e.stopPropagation()}),[]),a=(0,react_1.useCallback)((r=>()=>{1!==e.servers.length&&(i({environment:(0,environments_1.getServerEnvName)(r)}),t.send({type:"openapi_docs.switch_servers.clicked",payload:{server:(0,environments_1.getServerEnvName)(r)}}))}),[e.servers.length,i,t]),_=(0,react_1.useMemo)((()=>e.servers.map((r=>{const t=(0,services_1.joinWithSeparator)((0,utils_1.replaceVariables)(r),e.path);return(0,jsx_runtime_1.jsx)(styled_1.StyledDropdownMenuItem,{onAction:a(r),children:(0,jsx_runtime_1.jsx)(PanelItem_1.PanelItem,{header:r.description,title:t,actions:[(0,jsx_runtime_1.jsx)(styled_1.StyledCopyButton,{data:t,toasterPlacement:"left",onCopyClick:o},t)],active:r.url===n,withCheckmark:!0})},t)}))),[e.servers,e.path,a,o,n]);return(0,jsx_runtime_1.jsx)(theme_1.Dropdown,{className:r,trigger:(0,jsx_runtime_1.jsxs)(styled_1.PathWrapper,{variant:"ghost",children:[(0,jsx_runtime_1.jsx)(common_1.HttpVerb,{color:e.httpVerb,children:e.httpVerb}),(0,jsx_runtime_1.jsx)(styled_1.Path,{children:e.path})]}),withArrow:!0,children:(0,jsx_runtime_1.jsx)(theme_1.DropdownMenu,{children:_})})};exports.ServerListDropdown=ServerListDropdown;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ServerListDropdown=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),jotai_1=require("jotai"),common_1=require("../common"),styled_1=require("./styled"),PanelItem_1=require("../PanelItem"),services_1=require("../../services"),utils_1=require("../../utils"),app_1=require("../../jotai/app"),store_1=require("../../jotai/store"),hooks_1=require("../../hooks"),environments_1=require("../../utils/environments"),events_1=require("../../events"),ServerListDropdown=({operation:e,className:r})=>{const t=(0,hooks_1.useTelemetry)(),[[s],o]=(0,jotai_1.useAtom)(app_1.environmentAtom),{options:{events:i}}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),n=(0,hooks_1.useActiveWithFallback)(e.servers.map((e=>Object.assign(Object.assign({},e),{key:e.url}))),s.server),a=(0,react_1.useCallback)((e=>{e.stopPropagation()}),[]),_=(0,react_1.useCallback)((r=>()=>{if(1!==e.servers.length&&(o({environment:(0,environments_1.getServerEnvName)(r)}),t.send({type:"openapi_docs.switch_servers.clicked",payload:{server:(0,environments_1.getServerEnvName)(r)}}),(null==i?void 0:i.targetServerSwitch)&&r)){const t=(0,events_1.createTargetServerSwitchEvent)({operation:e,serverUrl:r.url});i.targetServerSwitch(t)}}),[e,o,t,i]),l=(0,react_1.useMemo)((()=>e.servers.map((r=>{const t=(0,services_1.joinWithSeparator)((0,utils_1.replaceVariables)(r),e.path);return(0,jsx_runtime_1.jsx)(styled_1.StyledDropdownMenuItem,{onAction:_(r),children:(0,jsx_runtime_1.jsx)(PanelItem_1.PanelItem,{header:r.description,title:t,actions:[(0,jsx_runtime_1.jsx)(styled_1.StyledCopyButton,{data:t,toasterPlacement:"left",onCopyClick:a},t)],active:r.url===n,withCheckmark:!0})},t)}))),[e.servers,e.path,_,a,n]);return(0,jsx_runtime_1.jsx)(theme_1.Dropdown,{className:r,trigger:(0,jsx_runtime_1.jsxs)(styled_1.PathWrapper,{variant:"ghost",children:[(0,jsx_runtime_1.jsx)(common_1.HttpVerb,{color:e.httpVerb,children:e.httpVerb}),(0,jsx_runtime_1.jsx)(styled_1.Path,{children:e.path})]}),withArrow:!0,children:(0,jsx_runtime_1.jsx)(theme_1.DropdownMenu,{children:l})})};exports.ServerListDropdown=ServerListDropdown;
2
2
  //# sourceMappingURL=ServerListDropdown.js.map
@@ -3,3 +3,6 @@ export { AnalyticsEventType } from './types';
3
3
  export { createLanguageSwitchEvent } from './languageSwitch';
4
4
  export { createPanelToggleEvent } from './panelToggle';
5
5
  export { createCodeSampleCopyEvent } from './codeSampleCopy';
6
+ export { createTargetServerSwitchEvent } from './serverSwitch';
7
+ export { createTryItOpenEvent } from './tryItOpen';
8
+ export { createTryItSentEvent } from './tryItSent';
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.createCodeSampleCopyEvent=exports.createPanelToggleEvent=exports.createLanguageSwitchEvent=exports.AnalyticsEventType=void 0;var types_1=require("./types");Object.defineProperty(exports,"AnalyticsEventType",{enumerable:!0,get:function(){return types_1.AnalyticsEventType}});var languageSwitch_1=require("./languageSwitch");Object.defineProperty(exports,"createLanguageSwitchEvent",{enumerable:!0,get:function(){return languageSwitch_1.createLanguageSwitchEvent}});var panelToggle_1=require("./panelToggle");Object.defineProperty(exports,"createPanelToggleEvent",{enumerable:!0,get:function(){return panelToggle_1.createPanelToggleEvent}});var codeSampleCopy_1=require("./codeSampleCopy");Object.defineProperty(exports,"createCodeSampleCopyEvent",{enumerable:!0,get:function(){return codeSampleCopy_1.createCodeSampleCopyEvent}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.createTryItSentEvent=exports.createTryItOpenEvent=exports.createTargetServerSwitchEvent=exports.createCodeSampleCopyEvent=exports.createPanelToggleEvent=exports.createLanguageSwitchEvent=exports.AnalyticsEventType=void 0;var types_1=require("./types");Object.defineProperty(exports,"AnalyticsEventType",{enumerable:!0,get:function(){return types_1.AnalyticsEventType}});var languageSwitch_1=require("./languageSwitch");Object.defineProperty(exports,"createLanguageSwitchEvent",{enumerable:!0,get:function(){return languageSwitch_1.createLanguageSwitchEvent}});var panelToggle_1=require("./panelToggle");Object.defineProperty(exports,"createPanelToggleEvent",{enumerable:!0,get:function(){return panelToggle_1.createPanelToggleEvent}});var codeSampleCopy_1=require("./codeSampleCopy");Object.defineProperty(exports,"createCodeSampleCopyEvent",{enumerable:!0,get:function(){return codeSampleCopy_1.createCodeSampleCopyEvent}});var serverSwitch_1=require("./serverSwitch");Object.defineProperty(exports,"createTargetServerSwitchEvent",{enumerable:!0,get:function(){return serverSwitch_1.createTargetServerSwitchEvent}});var tryItOpen_1=require("./tryItOpen");Object.defineProperty(exports,"createTryItOpenEvent",{enumerable:!0,get:function(){return tryItOpen_1.createTryItOpenEvent}});var tryItSent_1=require("./tryItSent");Object.defineProperty(exports,"createTryItSentEvent",{enumerable:!0,get:function(){return tryItSent_1.createTryItSentEvent}});
2
2
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,2 @@
1
+ import type { TargetServerSwitchedEvent, TargetServerSwitchProps } from './types';
2
+ export declare const createTargetServerSwitchEvent: ({ operation, serverUrl, }: TargetServerSwitchProps) => TargetServerSwitchedEvent;
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.createTargetServerSwitchEvent=void 0;const creator_1=require("./creator"),types_1=require("./types"),targetServerSwitchEvent=(0,creator_1.createTrackingEvent)(types_1.AnalyticsEventType.TargetServerSwitched),createTargetServerSwitchEvent=({operation:e,serverUrl:r})=>targetServerSwitchEvent({resource:"Redocly_CodeSample",action:"TargetServerSwitched",operationId:e.id,operationPath:e.path,operationHttpVerb:e.httpVerb,operationSummary:e.name,serverUrl:r});exports.createTargetServerSwitchEvent=createTargetServerSwitchEvent;
2
+ //# sourceMappingURL=serverSwitch.js.map
@@ -0,0 +1,2 @@
1
+ import type { TryItOpenedEvent, TryItOpenProps } from './types';
2
+ export declare const createTryItOpenEvent: ({ operation }: TryItOpenProps) => TryItOpenedEvent;
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.createTryItOpenEvent=void 0;const creator_1=require("./creator"),types_1=require("./types"),tryItOpenEvent=(0,creator_1.createTrackingEvent)(types_1.AnalyticsEventType.TryItOpen),createTryItOpenEvent=({operation:e})=>tryItOpenEvent({resource:"Redocly_OperationTryIt",action:"Opened",operationId:e.id,operationPath:e.path,operationHttpVerb:e.httpVerb,operationSummary:e.name});exports.createTryItOpenEvent=createTryItOpenEvent;
2
+ //# sourceMappingURL=tryItOpen.js.map
@@ -0,0 +1,2 @@
1
+ import type { TryItSentEvent, TryItSentProps } from './types';
2
+ export declare const createTryItSentEvent: ({ operation, isSuccess }: TryItSentProps) => TryItSentEvent;
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.createTryItSentEvent=void 0;const creator_1=require("./creator"),types_1=require("./types"),tryItSentEvent=(0,creator_1.createTrackingEvent)(types_1.AnalyticsEventType.TryItSent),createTryItSentEvent=({operation:e,isSuccess:t})=>tryItSentEvent({resource:"Redocly_OperationTryIt",action:t?"Sent":"ValidationFailed",operationId:e.id,operationPath:e.path,operationHttpVerb:e.httpVerb,operationSummary:e.name});exports.createTryItSentEvent=createTryItSentEvent;
2
+ //# sourceMappingURL=tryItSent.js.map
@@ -21,16 +21,25 @@ export interface TargetServerSwitchProps {
21
21
  operation: OperationModel;
22
22
  serverUrl: string;
23
23
  }
24
+ export interface TryItOpenProps {
25
+ operation: OperationModel;
26
+ }
27
+ export interface TryItSentProps {
28
+ operation: OperationModel;
29
+ isSuccess: boolean;
30
+ }
24
31
  export declare enum AnalyticsEventType {
25
32
  CodeSampleLanguageSwitched = "CodeSampleLanguageSwitched",
26
33
  CodeSampleCopied = "CodeSampleCopied",
27
34
  OperationServerExpanded = "OperationServerExpanded",
28
35
  PanelToggle = "PanelToggle",
29
- TargetServerSwitched = "TargetServerSwitched"
36
+ TargetServerSwitched = "TargetServerSwitched",
37
+ TryItOpen = "TryItOpen",
38
+ TryItSent = "TryItSent"
30
39
  }
31
40
  export interface AnalyticsEvent {
32
41
  eventType: AnalyticsEventType;
33
- resource: 'Redocly_CodeSample' | 'Redocly_Operation';
42
+ resource: 'Redocly_CodeSample' | 'Redocly_Operation' | 'Redocly_OperationTryIt';
34
43
  action: 'LanguageSwitched' | 'PanelToggled' | 'Opened' | 'Closed' | 'NavigatedOverrideLink' | 'Sent' | 'ValidationFailed' | 'CodeSampleCopied' | 'TargetServerSwitched';
35
44
  operationId?: string;
36
45
  operationPath: string;
@@ -49,8 +58,9 @@ export interface CodeSamplesCopiedEvent extends AnalyticsEvent {
49
58
  exampleId?: string;
50
59
  exampleMimeType?: string;
51
60
  }
61
+ export type PanelType = 'request' | 'responses' | 'request-samples' | 'response-samples';
52
62
  export interface PanelToggleEvent extends AnalyticsEvent {
53
- panelType: 'request' | 'responses' | 'request-samples' | 'response-samples';
63
+ panelType: PanelType;
54
64
  state: 'expanded' | 'collapsed';
55
65
  operationId: string;
56
66
  operationPath: string;
@@ -60,9 +70,14 @@ export interface PanelToggleEvent extends AnalyticsEvent {
60
70
  export interface TargetServerSwitchedEvent extends AnalyticsEvent {
61
71
  serverUrl: string;
62
72
  }
73
+ export type TryItOpenedEvent = AnalyticsEvent;
74
+ export type TryItSentEvent = AnalyticsEvent;
75
+ export type EventType = CodeSamplesLanguageSwitchedEvent | CodeSamplesCopiedEvent | TryItOpenedEvent | TryItSentEvent | PanelToggleEvent | TargetServerSwitchedEvent;
63
76
  export type Events = {
64
77
  codeSamplesLanguageSwitch?: (event: CodeSamplesLanguageSwitchedEvent) => void;
65
78
  codeSamplesCopy?: (event: CodeSamplesCopiedEvent) => void;
79
+ tryItOpen?: (event: TryItOpenedEvent) => void;
80
+ tryItSent?: (event: TryItSentEvent) => void;
66
81
  panelToggle?: (event: PanelToggleEvent) => void;
67
82
  targetServerSwitch?: (event: TargetServerSwitchedEvent) => void;
68
83
  };
@@ -1,2 +1,2 @@
1
- "use strict";var AnalyticsEventType;Object.defineProperty(exports,"__esModule",{value:!0}),exports.AnalyticsEventType=void 0,function(e){e.CodeSampleLanguageSwitched="CodeSampleLanguageSwitched",e.CodeSampleCopied="CodeSampleCopied",e.OperationServerExpanded="OperationServerExpanded",e.PanelToggle="PanelToggle",e.TargetServerSwitched="TargetServerSwitched"}(AnalyticsEventType||(exports.AnalyticsEventType=AnalyticsEventType={}));
1
+ "use strict";var AnalyticsEventType;Object.defineProperty(exports,"__esModule",{value:!0}),exports.AnalyticsEventType=void 0,function(e){e.CodeSampleLanguageSwitched="CodeSampleLanguageSwitched",e.CodeSampleCopied="CodeSampleCopied",e.OperationServerExpanded="OperationServerExpanded",e.PanelToggle="PanelToggle",e.TargetServerSwitched="TargetServerSwitched",e.TryItOpen="TryItOpen",e.TryItSent="TryItSent"}(AnalyticsEventType||(exports.AnalyticsEventType=AnalyticsEventType={}));
2
2
  //# sourceMappingURL=types.js.map
@@ -4,5 +4,5 @@ export { useContentItems } from './useContentItems';
4
4
  export { useActiveWithFallback } from './useActiveWithFallback';
5
5
  export { useUppercase2LowercaseRedirect } from './useUppercase2LowercaseRedirect';
6
6
  export { useTranslate } from './useTranslate';
7
- export { useOtelTelemetry } from './useOtelTelemetry';
7
+ export { useTelemetry } from './useTelemetry';
8
8
  export { usePerformanceMetrics } from './usePerformanceMetrics';
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.usePerformanceMetrics=exports.useOtelTelemetry=exports.useTranslate=exports.useUppercase2LowercaseRedirect=exports.useActiveWithFallback=exports.useContentItems=exports.useRouter=exports.useActivateExample=void 0;var useActivateExample_1=require("./useActivateExample");Object.defineProperty(exports,"useActivateExample",{enumerable:!0,get:function(){return useActivateExample_1.useActivateExample}});var useRouter_1=require("./useRouter");Object.defineProperty(exports,"useRouter",{enumerable:!0,get:function(){return useRouter_1.useRouter}});var useContentItems_1=require("./useContentItems");Object.defineProperty(exports,"useContentItems",{enumerable:!0,get:function(){return useContentItems_1.useContentItems}});var useActiveWithFallback_1=require("./useActiveWithFallback");Object.defineProperty(exports,"useActiveWithFallback",{enumerable:!0,get:function(){return useActiveWithFallback_1.useActiveWithFallback}});var useUppercase2LowercaseRedirect_1=require("./useUppercase2LowercaseRedirect");Object.defineProperty(exports,"useUppercase2LowercaseRedirect",{enumerable:!0,get:function(){return useUppercase2LowercaseRedirect_1.useUppercase2LowercaseRedirect}});var useTranslate_1=require("./useTranslate");Object.defineProperty(exports,"useTranslate",{enumerable:!0,get:function(){return useTranslate_1.useTranslate}});var useOtelTelemetry_1=require("./useOtelTelemetry");Object.defineProperty(exports,"useOtelTelemetry",{enumerable:!0,get:function(){return useOtelTelemetry_1.useOtelTelemetry}});var usePerformanceMetrics_1=require("./usePerformanceMetrics");Object.defineProperty(exports,"usePerformanceMetrics",{enumerable:!0,get:function(){return usePerformanceMetrics_1.usePerformanceMetrics}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.usePerformanceMetrics=exports.useTelemetry=exports.useTranslate=exports.useUppercase2LowercaseRedirect=exports.useActiveWithFallback=exports.useContentItems=exports.useRouter=exports.useActivateExample=void 0;var useActivateExample_1=require("./useActivateExample");Object.defineProperty(exports,"useActivateExample",{enumerable:!0,get:function(){return useActivateExample_1.useActivateExample}});var useRouter_1=require("./useRouter");Object.defineProperty(exports,"useRouter",{enumerable:!0,get:function(){return useRouter_1.useRouter}});var useContentItems_1=require("./useContentItems");Object.defineProperty(exports,"useContentItems",{enumerable:!0,get:function(){return useContentItems_1.useContentItems}});var useActiveWithFallback_1=require("./useActiveWithFallback");Object.defineProperty(exports,"useActiveWithFallback",{enumerable:!0,get:function(){return useActiveWithFallback_1.useActiveWithFallback}});var useUppercase2LowercaseRedirect_1=require("./useUppercase2LowercaseRedirect");Object.defineProperty(exports,"useUppercase2LowercaseRedirect",{enumerable:!0,get:function(){return useUppercase2LowercaseRedirect_1.useUppercase2LowercaseRedirect}});var useTranslate_1=require("./useTranslate");Object.defineProperty(exports,"useTranslate",{enumerable:!0,get:function(){return useTranslate_1.useTranslate}});var useTelemetry_1=require("./useTelemetry");Object.defineProperty(exports,"useTelemetry",{enumerable:!0,get:function(){return useTelemetry_1.useTelemetry}});var usePerformanceMetrics_1=require("./usePerformanceMetrics");Object.defineProperty(exports,"usePerformanceMetrics",{enumerable:!0,get:function(){return usePerformanceMetrics_1.usePerformanceMetrics}});
2
2
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,2 @@
1
+ import { useThemeHooks } from '@redocly/theme';
2
+ export declare function useTelemetry(): ReturnType<ReturnType<typeof useThemeHooks>['useTelemetry']>;
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useTelemetry=useTelemetry;const theme_1=require("@redocly/theme");function useTelemetry(){return(0,theme_1.useThemeHooks)().useTelemetry()}
2
+ //# sourceMappingURL=useTelemetry.js.map
package/lib/index.d.ts CHANGED
@@ -16,7 +16,7 @@ export { RedocSchema, RedocExample } from './components/pluggable';
16
16
  export { RedoclyOpenAPIDocs, RedoclyOpenAPIDocsStandalone, AppProvider, StoreProvider, getMarkdownHeaderId, } from './components/RedoclyOpenAPIDocs';
17
17
  export { JsonPointer } from './utils/JsonPointer';
18
18
  export { isOperationName } from './utils/openapi';
19
- export { pathIncludesLink } from './utils/path';
19
+ export { pathIncludesLink, normalizePath } from './utils/path';
20
20
  export { OpenAPIParser } from './services';
21
21
  export { buildContentItems, normalizeOptions, makeDeepLink } from './services';
22
22
  export declare function useOpenapiDocsOptions(): import("./services").Options;