@redocly/reference-docs 2.43.5 → 2.43.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cli/commands/redocly-docs-cli.min.js +2 -2
- package/bin/cli/commands/redocly-docs-cli.min.js.LICENSE.txt +1 -1
- package/dist/console.redocly-reference-docs.min.js +1 -1
- package/dist/oauth2-redirect.js +1 -1
- package/dist/redocly-reference-docs.min.js +69 -69
- package/lib/components/RedoclyReferenceDocs.d.ts +1 -0
- package/lib/components/RedoclyReferenceDocs.js +1 -1
- package/lib/components/StoreProvider.d.ts +2 -1
- package/lib/components/StoreProvider.js +1 -1
- package/lib/services/ProMenu.js +1 -1
- package/lib-browser/components/RedoclyReferenceDocs.d.ts +1 -0
- package/lib-browser/components/RedoclyReferenceDocs.js +1 -1
- package/lib-browser/components/StoreProvider.d.ts +2 -1
- package/lib-browser/components/StoreProvider.js +1 -1
- package/lib-browser/services/ProMenu.js +1 -1
- package/lib-esm/components/RedoclyReferenceDocs.d.ts +1 -0
- package/lib-esm/components/RedoclyReferenceDocs.js +1 -1
- package/lib-esm/components/StoreProvider.d.ts +2 -1
- package/lib-esm/components/StoreProvider.js +1 -1
- package/lib-esm/services/ProMenu.js +1 -1
- package/package.json +1 -1
|
@@ -35,6 +35,7 @@ export interface RedoclyReferenceDocsStandaloneProps {
|
|
|
35
35
|
activeItemId?: string;
|
|
36
36
|
activeSampleLanguage?: CodeSampleConfig['lang'];
|
|
37
37
|
activeDeepLink?: string;
|
|
38
|
+
onLoaded?: (e?: Error) => void;
|
|
38
39
|
}
|
|
39
40
|
export declare function RedoclyReferenceDocsStandalone(props: RedoclyReferenceDocsStandaloneProps): JSX.Element | null;
|
|
40
41
|
export {};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RedoclyReferenceDocsStandalone=exports.RedoclyReferenceDocs=exports.CssFixes=void 0;var tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),mobx_react_1=require("mobx-react"),mobx_1=require("mobx"),redoc_lib_1=require("../redoc-lib"),store_types_1=require("../services/store-types"),VersionedSpecStore_1=require("../services/VersionedSpecStore"),DownloadButton_1=require("../redoc-lib/src/components/DownloadButton"),Search_1=require("./Search"),NextSectionButton_1=require("./NextSectionButton"),StoreProvider_1=require("./StoreProvider"),ConsoleLazy_1=require("./console/ConsoleLazy"),ProProviders_1=require("./ProProviders"),Overlay_1=require("./Overlay"),VersionSwitcher_1=require("./VersionSwitcher"),styled_elements_1=require("./styled.elements");(0,mobx_1.configure)({useProxies:"ifavailable"}),exports.CssFixes=(0,redoc_lib_1.createGlobalStyle)(templateObject_1||(templateObject_1=(0,tslib_1.__makeTemplateObject)(['\n div[data-section-id]::after {\n content: " ";\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n }\n\n '," {\n ","\n }\n\n ",", "," {\n ","\n }\n\n ",", "," {\n ","\n }\n\n "," {\n ",";\n }\n"],['\n div[data-section-id]::after {\n content: " ";\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n }\n\n '," {\n ","\n }\n\n ",", "," {\n ","\n }\n\n ",", "," {\n ","\n }\n\n "," {\n ",";\n }\n"])),redoc_lib_1.RightPanel,(function(e){var t,o=e.theme,n=e.showRightPanel,r=e.layout;return(0,redoc_lib_1.mediaCSS)({width:r===store_types_1.LayoutVariant.STACKED?"100%":"",paddingLeft:r===store_types_1.LayoutVariant.STACKED?o.spacing.sectionHorizontal:"",display:n?"":(t={},t[redoc_lib_1.ZERO_BREAKPOINT]="",t[o.rightPanel.showAtBreakpoint]="none",t)})}),styled_elements_1.BackgroundStub,styled_elements_1.BackgroundStubFix,(function(e){var t,o=e.theme,n=e.showRightPanel,r=e.layout;return(0,redoc_lib_1.mediaCSS)({display:n&&r!==store_types_1.LayoutVariant.STACKED?"":(t={},t[redoc_lib_1.ZERO_BREAKPOINT]="",t[o.rightPanel.showAtBreakpoint]="none",t)})}),redoc_lib_1.MiddlePanel,styled_elements_1.NextSectionButtonWrap,(function(e){var t,o,n,r=e.theme,i=e.showRightPanel,a=e.layout;return(0,redoc_lib_1.mediaCSS)({maxWidth:i&&a===store_types_1.LayoutVariant.THREE_PANEL?(0,redoc_lib_1.mediaMap)(r.breakpoints,[r.layout["three-panel"].middlePanelMaxWidth],(t={},t[redoc_lib_1.ZERO_BREAKPOINT]=function(){return"none"},t[r.rightPanel.showAtBreakpoint]=function(e){return e},t)):"none",margin:i&&a===store_types_1.LayoutVariant.THREE_PANEL?(0,redoc_lib_1.mediaMap)(r.breakpoints,[r.rightPanel.width,r.layout["three-panel"].middlePanelMaxWidth],(o={},o[redoc_lib_1.ZERO_BREAKPOINT]=function(){return"0"},o[r.rightPanel.showAtBreakpoint]=function(e,t){return t&&"none"!==t?"0 max(calc((100% - "+e+" - "+t+"}) / 2), 0px)":"0"},o)):"0",paddingRight:a===store_types_1.LayoutVariant.STACKED?r.spacing.sectionHorizontal:"",width:i&&a===store_types_1.LayoutVariant.THREE_PANEL?"":(n={},n[redoc_lib_1.ZERO_BREAKPOINT]="",n[r.rightPanel.showAtBreakpoint]="100%",n)})}),styled_elements_1.ApiContentWrap,(function(e){var t,o=e.theme,n=e.showRightPanel,r=e.layout;return(0,redoc_lib_1.mediaCSS)({width:(t={},t[redoc_lib_1.ZERO_BREAKPOINT]="none",t.small="calc(100% - "+o.sidebar.width+")",t),maxWidth:o.layout[r===store_types_1.LayoutVariant.THREE_PANEL&&n?store_types_1.LayoutVariant.THREE_PANEL:store_types_1.LayoutVariant.STACKED].maxWidth})}));var templateObject_1,RedoclyReferenceDocs=function(e){function t(t){var o=e.call(this,t)||this;return Object.defineProperty(o,"_observer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(o,"_updatedItems",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(o,"rootElementRef",{enumerable:!0,configurable:!0,writable:!0,value:(0,react_1.createRef)()}),Object.defineProperty(o,"handleClose",{enumerable:!0,configurable:!0,writable:!0,value:function(){return o.props.store.tryItOut()}}),o.state={searchPopUpShown:!1,searchPopUpValue:""},o}return(0,tslib_1.__extends)(t,e),Object.defineProperty(t.prototype,"componentDidMount",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e,t,o=this;this.props.store.onDidMount(),null===(t=(e=this.props).onLoaded)||void 0===t||t.call(e),this._observer=(0,mobx_1.reaction)((function(){return o.props.store.menu.renderItems}),(function(){o._updatedItems=!0}))}}),Object.defineProperty(t.prototype,"componentDidUpdate",{enumerable:!1,configurable:!0,writable:!0,value:function(){this._updatedItems&&(this._updatedItems=!1,this.props.store.menu.scrollToActive())}}),Object.defineProperty(t.prototype,"componentWillUnmount",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.props.store.dispose(),this._observer()}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this,t=this.props,o=t.store,n=t._forceRenderInfo,r=o.definition,i=o.menu,a=o.options,s=o.search,l=o.marker,_=a.hideDownloadButton,d=a.hideInfoSection,c=a.pagination,u=a.disableSidebar,p=i.renderItems,h="none"===c||i.activeRenderItemIdx<=0,m=!d&&h;m&&"none"!==c&&u&&p[0]&&"section"!==p[0].type&&(m=!1),n&&(m=!0);var b=!m&&null!==_&&!_&&h;return(0,jsx_runtime_1.jsxs)(ProProviders_1.ProProviders,(0,tslib_1.__assign)({store:o},{children:[(0,jsx_runtime_1.jsx)(Overlay_1.Overlay,{l:o.l},void 0),(0,jsx_runtime_1.jsxs)(styled_elements_1.RedocWrap,(0,tslib_1.__assign)({className:"redoc-wrap",ref:this.rootElementRef},{children:[(0,jsx_runtime_1.jsx)(exports.CssFixes,{whiteLabel:a.whiteLabel,showRightPanel:o.showRightPanel,layout:o.layout},void 0),o.tryItOperation&&(0,jsx_runtime_1.jsx)(ConsoleLazy_1.Console,{rootElement:this.rootElementRef.current,store:o,operation:o.tryItOperation,onClose:this.handleClose},void 0),!a.disableSidebar&&(0,jsx_runtime_1.jsxs)(redoc_lib_1.StickyResponsiveSidebar,(0,tslib_1.__assign)({menu:i,className:"menu-content"},{children:[!a.hideLogo&&(0,jsx_runtime_1.jsx)(redoc_lib_1.ApiLogo,{info:r.info},void 0),r instanceof VersionedSpecStore_1.VersionedSpecStore&&(0,jsx_runtime_1.jsx)(VersionSwitcher_1.VersionSwitcher,{spec:r,onChange:function(e){void 0!==e.idx&&r.changeVersion(e.idx),i.updateItemsByVersionChange(!0),o.tryItOut(void 0)}},void 0),!a.disableSearch&&(0,jsx_runtime_1.jsx)(Search_1.SearchField,{showPopUp:function(){return e.setState({searchPopUpShown:!0})},searchValue:this.state.searchPopUpValue,marker:l,setSearchValue:function(t){return e.setState({searchPopUpValue:t})}},void 0),(0,jsx_runtime_1.jsx)(redoc_lib_1.SideMenu,{menu:i},void 0)]}),void 0),(0,jsx_runtime_1.jsxs)(styled_elements_1.ApiContentWrap,(0,tslib_1.__assign)({className:(o.isLoading?"loading ":"")+"api-content",layout:o.layout===store_types_1.LayoutVariant.THREE_PANEL&&o.showRightPanel?store_types_1.LayoutVariant.THREE_PANEL:store_types_1.LayoutVariant.STACKED},{children:[a.theme.layout.showDarkRightPanel&&o.showRightPanel&&o.layout!==store_types_1.LayoutVariant.STACKED&&(0,jsx_runtime_1.jsx)(styled_elements_1.BackgroundStub,{},void 0),m&&(0,jsx_runtime_1.jsx)(redoc_lib_1.ApiInfo,{store:o},void 0),b&&(0,jsx_runtime_1.jsx)(DownloadButton_1.DownloadButtonWithLabel,{store:o},void 0),(0,jsx_runtime_1.jsx)(redoc_lib_1.ContentItems,{items:p,store:o},void 0),a.showNextButton&&(0,jsx_runtime_1.jsx)(NextSectionButton_1.ContinueButton,{pagination:a.pagination,menu:i},void 0),this.props.children]}),void 0),(0,jsx_runtime_1.jsxs)(styled_elements_1.ControlsWrap,{children:[(0,jsx_runtime_1.jsx)(styled_elements_1.ToggleRightPanelButton,{store:o,isVisible:o.layout===store_types_1.LayoutVariant.THREE_PANEL},void 0),(0,jsx_runtime_1.jsx)(styled_elements_1.ChangeViewButton,{store:o,isVisible:o.showRightPanel},void 0)]},void 0),(0,jsx_runtime_1.jsx)(Search_1.ProSearchBox,{search:s,marker:l,menu:i,onActivate:i.activateAndScroll.bind(i),options:a,shown:this.state.searchPopUpShown,hidePopUp:function(){return e.setState({searchPopUpShown:!1})},showPopUp:function(){return e.setState({searchPopUpShown:!0})},setSearchValue:function(t){return e.setState({searchPopUpValue:t})},searchValue:this.state.searchPopUpValue},void 0),a.theme.layout.showDarkRightPanel&&o.showRightPanel&&o.layout!==store_types_1.LayoutVariant.STACKED&&(0,jsx_runtime_1.jsx)(styled_elements_1.BackgroundStubFix,{},void 0)]}),void 0)]}),void 0)}}),t=(0,tslib_1.__decorate)([mobx_react_1.observer],t)}(react_1.Component);function RedoclyReferenceDocsStandalone(e){var t=e.definition,o=e.definitionUrl,n=e.options,r=void 0===n?{}:n,i=e.activeItemId,a=e.activeSampleLanguage,s=e.activeDeepLink,l=(0,redoc_lib_1.argValueToBoolean)(r.hideLoading,!1),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RedoclyReferenceDocsStandalone=exports.RedoclyReferenceDocs=exports.CssFixes=void 0;var tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),mobx_react_1=require("mobx-react"),mobx_1=require("mobx"),redoc_lib_1=require("../redoc-lib"),store_types_1=require("../services/store-types"),VersionedSpecStore_1=require("../services/VersionedSpecStore"),DownloadButton_1=require("../redoc-lib/src/components/DownloadButton"),Search_1=require("./Search"),NextSectionButton_1=require("./NextSectionButton"),StoreProvider_1=require("./StoreProvider"),ConsoleLazy_1=require("./console/ConsoleLazy"),ProProviders_1=require("./ProProviders"),Overlay_1=require("./Overlay"),VersionSwitcher_1=require("./VersionSwitcher"),styled_elements_1=require("./styled.elements");(0,mobx_1.configure)({useProxies:"ifavailable"}),exports.CssFixes=(0,redoc_lib_1.createGlobalStyle)(templateObject_1||(templateObject_1=(0,tslib_1.__makeTemplateObject)(['\n div[data-section-id]::after {\n content: " ";\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n }\n\n '," {\n ","\n }\n\n ",", "," {\n ","\n }\n\n ",", "," {\n ","\n }\n\n "," {\n ",";\n }\n"],['\n div[data-section-id]::after {\n content: " ";\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n }\n\n '," {\n ","\n }\n\n ",", "," {\n ","\n }\n\n ",", "," {\n ","\n }\n\n "," {\n ",";\n }\n"])),redoc_lib_1.RightPanel,(function(e){var t,o=e.theme,n=e.showRightPanel,r=e.layout;return(0,redoc_lib_1.mediaCSS)({width:r===store_types_1.LayoutVariant.STACKED?"100%":"",paddingLeft:r===store_types_1.LayoutVariant.STACKED?o.spacing.sectionHorizontal:"",display:n?"":(t={},t[redoc_lib_1.ZERO_BREAKPOINT]="",t[o.rightPanel.showAtBreakpoint]="none",t)})}),styled_elements_1.BackgroundStub,styled_elements_1.BackgroundStubFix,(function(e){var t,o=e.theme,n=e.showRightPanel,r=e.layout;return(0,redoc_lib_1.mediaCSS)({display:n&&r!==store_types_1.LayoutVariant.STACKED?"":(t={},t[redoc_lib_1.ZERO_BREAKPOINT]="",t[o.rightPanel.showAtBreakpoint]="none",t)})}),redoc_lib_1.MiddlePanel,styled_elements_1.NextSectionButtonWrap,(function(e){var t,o,n,r=e.theme,i=e.showRightPanel,a=e.layout;return(0,redoc_lib_1.mediaCSS)({maxWidth:i&&a===store_types_1.LayoutVariant.THREE_PANEL?(0,redoc_lib_1.mediaMap)(r.breakpoints,[r.layout["three-panel"].middlePanelMaxWidth],(t={},t[redoc_lib_1.ZERO_BREAKPOINT]=function(){return"none"},t[r.rightPanel.showAtBreakpoint]=function(e){return e},t)):"none",margin:i&&a===store_types_1.LayoutVariant.THREE_PANEL?(0,redoc_lib_1.mediaMap)(r.breakpoints,[r.rightPanel.width,r.layout["three-panel"].middlePanelMaxWidth],(o={},o[redoc_lib_1.ZERO_BREAKPOINT]=function(){return"0"},o[r.rightPanel.showAtBreakpoint]=function(e,t){return t&&"none"!==t?"0 max(calc((100% - "+e+" - "+t+"}) / 2), 0px)":"0"},o)):"0",paddingRight:a===store_types_1.LayoutVariant.STACKED?r.spacing.sectionHorizontal:"",width:i&&a===store_types_1.LayoutVariant.THREE_PANEL?"":(n={},n[redoc_lib_1.ZERO_BREAKPOINT]="",n[r.rightPanel.showAtBreakpoint]="100%",n)})}),styled_elements_1.ApiContentWrap,(function(e){var t,o=e.theme,n=e.showRightPanel,r=e.layout;return(0,redoc_lib_1.mediaCSS)({width:(t={},t[redoc_lib_1.ZERO_BREAKPOINT]="none",t.small="calc(100% - "+o.sidebar.width+")",t),maxWidth:o.layout[r===store_types_1.LayoutVariant.THREE_PANEL&&n?store_types_1.LayoutVariant.THREE_PANEL:store_types_1.LayoutVariant.STACKED].maxWidth})}));var templateObject_1,RedoclyReferenceDocs=function(e){function t(t){var o=e.call(this,t)||this;return Object.defineProperty(o,"_observer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(o,"_updatedItems",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(o,"rootElementRef",{enumerable:!0,configurable:!0,writable:!0,value:(0,react_1.createRef)()}),Object.defineProperty(o,"handleClose",{enumerable:!0,configurable:!0,writable:!0,value:function(){return o.props.store.tryItOut()}}),o.state={searchPopUpShown:!1,searchPopUpValue:""},o}return(0,tslib_1.__extends)(t,e),Object.defineProperty(t.prototype,"componentDidMount",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e,t,o=this;this.props.store.onDidMount(),null===(t=(e=this.props).onLoaded)||void 0===t||t.call(e),this._observer=(0,mobx_1.reaction)((function(){return o.props.store.menu.renderItems}),(function(){o._updatedItems=!0}))}}),Object.defineProperty(t.prototype,"componentDidUpdate",{enumerable:!1,configurable:!0,writable:!0,value:function(){this._updatedItems&&(this._updatedItems=!1,this.props.store.menu.scrollToActive())}}),Object.defineProperty(t.prototype,"componentWillUnmount",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.props.store.dispose(),this._observer()}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this,t=this.props,o=t.store,n=t._forceRenderInfo,r=o.definition,i=o.menu,a=o.options,s=o.search,l=o.marker,_=a.hideDownloadButton,d=a.hideInfoSection,c=a.pagination,u=a.disableSidebar,p=i.renderItems,h="none"===c||i.activeRenderItemIdx<=0,m=!d&&h;m&&"none"!==c&&u&&p[0]&&"section"!==p[0].type&&(m=!1),n&&(m=!0);var b=!m&&null!==_&&!_&&h;return(0,jsx_runtime_1.jsxs)(ProProviders_1.ProProviders,(0,tslib_1.__assign)({store:o},{children:[(0,jsx_runtime_1.jsx)(Overlay_1.Overlay,{l:o.l},void 0),(0,jsx_runtime_1.jsxs)(styled_elements_1.RedocWrap,(0,tslib_1.__assign)({className:"redoc-wrap",ref:this.rootElementRef},{children:[(0,jsx_runtime_1.jsx)(exports.CssFixes,{whiteLabel:a.whiteLabel,showRightPanel:o.showRightPanel,layout:o.layout},void 0),o.tryItOperation&&(0,jsx_runtime_1.jsx)(ConsoleLazy_1.Console,{rootElement:this.rootElementRef.current,store:o,operation:o.tryItOperation,onClose:this.handleClose},void 0),!a.disableSidebar&&(0,jsx_runtime_1.jsxs)(redoc_lib_1.StickyResponsiveSidebar,(0,tslib_1.__assign)({menu:i,className:"menu-content"},{children:[!a.hideLogo&&(0,jsx_runtime_1.jsx)(redoc_lib_1.ApiLogo,{info:r.info},void 0),r instanceof VersionedSpecStore_1.VersionedSpecStore&&(0,jsx_runtime_1.jsx)(VersionSwitcher_1.VersionSwitcher,{spec:r,onChange:function(e){void 0!==e.idx&&r.changeVersion(e.idx),i.updateItemsByVersionChange(!0),o.tryItOut(void 0)}},void 0),!a.disableSearch&&(0,jsx_runtime_1.jsx)(Search_1.SearchField,{showPopUp:function(){return e.setState({searchPopUpShown:!0})},searchValue:this.state.searchPopUpValue,marker:l,setSearchValue:function(t){return e.setState({searchPopUpValue:t})}},void 0),(0,jsx_runtime_1.jsx)(redoc_lib_1.SideMenu,{menu:i},void 0)]}),void 0),(0,jsx_runtime_1.jsxs)(styled_elements_1.ApiContentWrap,(0,tslib_1.__assign)({className:(o.isLoading?"loading ":"")+"api-content",layout:o.layout===store_types_1.LayoutVariant.THREE_PANEL&&o.showRightPanel?store_types_1.LayoutVariant.THREE_PANEL:store_types_1.LayoutVariant.STACKED},{children:[a.theme.layout.showDarkRightPanel&&o.showRightPanel&&o.layout!==store_types_1.LayoutVariant.STACKED&&(0,jsx_runtime_1.jsx)(styled_elements_1.BackgroundStub,{},void 0),m&&(0,jsx_runtime_1.jsx)(redoc_lib_1.ApiInfo,{store:o},void 0),b&&(0,jsx_runtime_1.jsx)(DownloadButton_1.DownloadButtonWithLabel,{store:o},void 0),(0,jsx_runtime_1.jsx)(redoc_lib_1.ContentItems,{items:p,store:o},void 0),a.showNextButton&&(0,jsx_runtime_1.jsx)(NextSectionButton_1.ContinueButton,{pagination:a.pagination,menu:i},void 0),this.props.children]}),void 0),(0,jsx_runtime_1.jsxs)(styled_elements_1.ControlsWrap,{children:[(0,jsx_runtime_1.jsx)(styled_elements_1.ToggleRightPanelButton,{store:o,isVisible:o.layout===store_types_1.LayoutVariant.THREE_PANEL},void 0),(0,jsx_runtime_1.jsx)(styled_elements_1.ChangeViewButton,{store:o,isVisible:o.showRightPanel},void 0)]},void 0),(0,jsx_runtime_1.jsx)(Search_1.ProSearchBox,{search:s,marker:l,menu:i,onActivate:i.activateAndScroll.bind(i),options:a,shown:this.state.searchPopUpShown,hidePopUp:function(){return e.setState({searchPopUpShown:!1})},showPopUp:function(){return e.setState({searchPopUpShown:!0})},setSearchValue:function(t){return e.setState({searchPopUpValue:t})},searchValue:this.state.searchPopUpValue},void 0),a.theme.layout.showDarkRightPanel&&o.showRightPanel&&o.layout!==store_types_1.LayoutVariant.STACKED&&(0,jsx_runtime_1.jsx)(styled_elements_1.BackgroundStubFix,{},void 0)]}),void 0)]}),void 0)}}),t=(0,tslib_1.__decorate)([mobx_react_1.observer],t)}(react_1.Component);function RedoclyReferenceDocsStandalone(e){var t=e.definition,o=e.definitionUrl,n=e.options,r=void 0===n?{}:n,i=e.activeItemId,a=e.activeSampleLanguage,s=e.activeDeepLink,l=e.onLoaded,_=(0,redoc_lib_1.argValueToBoolean)(r.hideLoading,!1),d=new redoc_lib_1.RedocNormalizedOptions(r),c=(0,jsx_runtime_1.jsx)(StoreProvider_1.ProStoreProvider,(0,tslib_1.__assign)({definition:t,definitionUrl:o,options:r,activeItemId:i,activeSampleLanguage:a,activeDeepLink:s,onLoaded:l},{children:function(e){var t=e.loading,o=e.store;return t?_?null:(0,jsx_runtime_1.jsx)(redoc_lib_1.Loading,{color:d.theme.colors.primary.main},void 0):(0,jsx_runtime_1.jsx)(RedoclyReferenceDocs,{store:o},void 0)}}),void 0);return r.disableErrorBoundary?c:(0,jsx_runtime_1.jsx)(redoc_lib_1.ErrorBoundary,{children:c},void 0)}exports.RedoclyReferenceDocs=RedoclyReferenceDocs,exports.RedoclyReferenceDocsStandalone=RedoclyReferenceDocsStandalone;
|
|
2
2
|
//# sourceMappingURL=RedoclyReferenceDocs.js.map
|
|
@@ -17,7 +17,8 @@ interface StoreProviderProps {
|
|
|
17
17
|
activeItemId?: string;
|
|
18
18
|
activeSampleLanguage?: CodeSampleConfig['lang'] | string;
|
|
19
19
|
activeDeepLink?: string;
|
|
20
|
+
onLoaded?: (e?: Error) => void;
|
|
20
21
|
}
|
|
21
|
-
export declare const ProStoreProvider: ({ definitions, options, definitionUrl, definition, activeItemId, activeSampleLanguage, activeDeepLink, children, }: StoreProviderProps) => JSX.Element | null;
|
|
22
|
+
export declare const ProStoreProvider: ({ definitions, options, definitionUrl, definition, activeItemId, activeSampleLanguage, activeDeepLink, children, onLoaded, }: StoreProviderProps) => JSX.Element | null;
|
|
22
23
|
export declare function loadSpecs({ versions }: SpecVersions): Promise<void>;
|
|
23
24
|
export {};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.loadSpecs=exports.ProStoreProvider=exports.Consumer=exports.Provider=void 0;var tslib_1=require("tslib"),fast_deep_equal_1=(0,tslib_1.__importDefault)(require("fast-deep-equal")),react_1=require("react"),redoc_lib_1=require("../redoc-lib"),ProStore_1=require("../services/ProStore"),services_1=require("../services");exports.Provider=(_a=(0,react_1.createContext)(void 0)).Provider,exports.Consumer=_a.Consumer;var ProStoreProvider=function(e){var r=e.definitions,t=e.options,n=e.definitionUrl,i=e.definition,o=e.activeItemId,s=e.activeSampleLanguage,a=e.activeDeepLink,c=e.children,u=(0,react_1.useState)()[1],
|
|
1
|
+
"use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.loadSpecs=exports.ProStoreProvider=exports.Consumer=exports.Provider=void 0;var tslib_1=require("tslib"),fast_deep_equal_1=(0,tslib_1.__importDefault)(require("fast-deep-equal")),react_1=require("react"),redoc_lib_1=require("../redoc-lib"),ProStore_1=require("../services/ProStore"),services_1=require("../services");exports.Provider=(_a=(0,react_1.createContext)(void 0)).Provider,exports.Consumer=_a.Consumer;var ProStoreProvider=function(e){var r=e.definitions,t=e.options,n=e.definitionUrl,i=e.definition,o=e.activeItemId,s=e.activeSampleLanguage,a=e.activeDeepLink,c=e.children,u=e.onLoaded,l=(0,react_1.useState)()[1],d=(0,react_1.useState)(!0),f=d[0],_=d[1],p=(0,react_1.useState)(null),v=p[0],h=p[1];(0,react_1.useEffect)((function(){!function(){(0,tslib_1.__awaiter)(this,void 0,void 0,(function(){var e,o,s;return(0,tslib_1.__generator)(this,(function(a){switch(a.label){case 0:_(!0),a.label=1;case 1:return a.trys.push([1,6,,7]),e=h,r?[4,loadMany(r)]:[3,3];case 2:return o=a.sent(),[3,5];case 3:return[4,loadSingle(i,n,t)];case 4:o=a.sent(),a.label=5;case 5:return e.apply(void 0,[o]),[3,7];case 6:return s=a.sent(),null==u||u(s),l((function(){throw s})),[3,7];case 7:return[2]}}))}))}()}),[r,i,n,t]);var m=(0,react_1.useMemo)((function(){var e,r,i;if(v){var o=new ProStore_1.ProStore(v,n,t);return(null===(e=o.options.hooks)||void 0===e?void 0:e.onInit)&&(null===(i=null===(r=o.options.hooks)||void 0===r?void 0:r.onInit)||void 0===i||i.call(r,{store:o})),o}}),useDeepCompareMemoize([v,t]));return(0,react_1.useEffect)((function(){if(m)return _(!1),function(){return m.dispose()}}),[m]),(0,react_1.useEffect)((function(){var e;if(m&&o){var r=(null==o?void 0:o.split(m.options.deepLinkPrefix)[0])||(null===(e=m.menu.flatItems[m.menu.activeItemIdx])||void 0===e?void 0:e.id),t=m.menu.flatItems.find((function(e){return e.id===r})),n=a?r+m.options.deepLinkPrefix+a:void 0;n&&m.menu.history instanceof services_1.FakeHistoryService&&m.menu.history.replaceForField(n),m.menu.activateAndScroll(t,!0,!1,n)}}),[o,a,m]),(0,react_1.useEffect)((function(){m&&s&&m.setActiveSampleLanguage(s),m&&u&&u()}),[s,u,m]),c({loading:f,store:m})};function fixSpec(e){for(var r=e.components&&e.components.securitySchemes||{},t=0,n=Object.keys(r);t<n.length;t++){var i=r[n[t]];i["x-type"]&&(i.type=i["x-type"]),i["x-scheme"]&&(i.scheme=i["x-scheme"])}}function loadMany(e){return(0,tslib_1.__awaiter)(this,void 0,void 0,(function(){return(0,tslib_1.__generator)(this,(function(r){switch(r.label){case 0:return[4,loadSpecs(e||{})];case 1:return r.sent(),[2,e]}}))}))}function loadSingle(e,r,t){return(0,tslib_1.__awaiter)(this,void 0,void 0,(function(){var n,i,o,s,a;return(0,tslib_1.__generator)(this,(function(c){switch(c.label){case 0:if(!(null==t?void 0:t.skipBundleAndConvert))return[3,1];if(!e)throw new Error('spec must be specified when using "skipBundleAndConvert"');return n=e,[3,3];case 1:return[4,(0,redoc_lib_1.loadAndBundleDefinition)(e||r)];case 2:n=c.sent(),c.label=3;case 3:if(!(i=null==t?void 0:t.unstable_externalDescription))return[3,8];c.label=4;case 4:return c.trys.push([4,7,,8]),[4,fetch(i)];case 5:return o=c.sent(),s=n.info,[4,o.text()];case 6:return s.description=c.sent(),[3,8];case 7:return a=c.sent(),console.warn("Failed to load external description from "+i+": "+a.message),[3,8];case 8:try{fixSpec(n)}catch(e){}return[2,n]}}))}))}function loadAndBundleSpecOrMd(e,r){return e.endsWith(".md")?(0,redoc_lib_1.loadAndBundleDefinition)({openapi:"3.0.0",info:{title:r||"",version:"1.0",description:{$ref:e}},paths:{}}):(0,redoc_lib_1.loadAndBundleDefinition)(e)}function loadSpecs(e){var r=e.versions;return(0,tslib_1.__awaiter)(this,void 0,void 0,(function(){var e,t,n,i;return(0,tslib_1.__generator)(this,(function(o){switch(o.label){case 0:if(!Array.isArray(r))return[3,4];e=0,t=r,o.label=1;case 1:return e<t.length?(n=t[e]).url?(i=n,[4,loadAndBundleSpecOrMd(n.url)]):[3,3]:[3,4];case 2:i.spec=o.sent(),o.label=3;case 3:return e++,[3,1];case 4:return[2]}}))}))}function useDeepCompareMemoize(e){var r=(0,react_1.useRef)(),t=(0,react_1.useRef)(0);return(0,fast_deep_equal_1.default)(e,r.current)||(r.current=e,t.current+=1),[t.current]}exports.ProStoreProvider=ProStoreProvider,exports.loadSpecs=loadSpecs;
|
|
2
2
|
//# sourceMappingURL=StoreProvider.js.map
|
package/lib/services/ProMenu.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ProMenu=void 0;var tslib_1=require("tslib"),mobx_1=require("mobx"),redoc_lib_1=require("../redoc-lib"),constants_1=require("../redoc-lib/src/services/constants"),HistoryService_1=require("../redoc-lib/src/services/HistoryService"),VersionedSpecStore_1=require("./VersionedSpecStore"),ProMenu=function(){function e(e,t,i,r){var n=this;Object.defineProperty(this,"definition",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"scroll",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"history",{enumerable:!0,configurable:!0,writable:!0,value:r}),Object.defineProperty(this,"flatItems",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"items",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"activeRenderItemIdx",{enumerable:!0,configurable:!0,writable:!0,value:-1}),Object.defineProperty(this,"renderItems",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"activeItemIdx",{enumerable:!0,configurable:!0,writable:!0,value:-1}),Object.defineProperty(this,"sideBarOpened",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_unsubscribe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_hashUnsubscribe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"getItemById",{enumerable:!0,configurable:!0,writable:!0,value:function(e){return n.flatItems.find((function(t){return t.id===e}))}}),Object.defineProperty(this,"initOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){void 0===e&&(e=n.history.currentId);var t=e.split(n.options.deepLinkPrefix)[0];if(t){var i=n.flatItems.find((function(e){return e.id===t}));i&&(n.activate(i,!1,!1,!1,e),i.active=!1)}}}),Object.defineProperty(this,"updateOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){void 0===e&&(e=n.history.currentId);var t=e.split(n.options.deepLinkPrefix)[0];if(t){var i=n.flatItems.find((function(e){return e.id===t}));i?n.activateAndScroll(i,!1,void 0,e):(n.scroll.prevOffsetY=0,n.scroll.scrollIntoViewBySelector("["+constants_1.SECTION_ATTR+'="'+(0,redoc_lib_1.escapeHTMLAttrChars)(t)+'"]'))}}}),Object.defineProperty(this,"updateVersionOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){if("versionsInfo"in n.definition){var t=e.split("/")[0],i=n.definition.versionsInfo.findIndex((function(e){return e.id===t}));i<0&&(i=n.definition.versionsInfo.findIndex((function(e){return e.isDefault}))),n.definition.activeVersionIdx!==i&&(n.definition.changeVersion(i<0?0:i),n.updateItemsByVersionChange(!1,e))}}}),Object.defineProperty(this,"updateOnScroll",{enumerable:!0,configurable:!0,writable:!0,value:function(e){for(var t=e?1:-1,i=n.activeItemIdx;(-1!==i||e)&&!(i>=n.flatItems.length-1&&e);){if(e){var r=!1,o=n.flatItems[i+1];switch(n.options.pagination){case"section":r=o&&("spec"===o.type||"group"===o.type||"tag"===o.type);break;case"item":r="section"!==(null==o?void 0:o.type)}var a=n.getElementAt(i+1);if(-1===i&&"tag"===n.flatItems[0].type&&(r=!1),n.scroll.isElementBellow(a)||r)break}else{var s=n.flatItems[i]&&n.flatItems[i].type;r="section"===n.options.pagination&&("spec"===s||"group"===s||"tag"===s)||"item"===n.options.pagination&&"section"!==s;if(!(a=n.getElementAt(i))||n.scroll.isElementAbove(a)||r)break}i+=t}var l=n.flatItems[i];"none"===n.options.pagination||"section"===n.options.pagination?l&&l.active||n.activate(l,!0,!0,!1):l&&"section"===l.type&&(l.active||n.activate(l,!0,!0,!1))}}),(0,mobx_1.makeObservable)(this),this.items=e.contentItems,this.flatItems=(0,redoc_lib_1.flattenByProp)(this.items||[],"items"),this.flatItems.forEach((function(e,t){return e.absoluteIdx=t})),i.disableSidebar||this.subscribe(),this.flatItems.forEach((function(e,t){return normalizeItem(e,t,i.pagination,n.definition instanceof VersionedSpecStore_1.VersionedSpecStore,n.history)})),this.renderItems=this.buildRenderItems(0),this.activeItemIdx=-1,this.activeRenderItemIdx=-1,this.definition instanceof VersionedSpecStore_1.VersionedSpecStore&&this.history.subscribe(this.updateVersionOnHistory)}return Object.defineProperty(e,"updateOnHistory",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t){void 0===e&&(e=HistoryService_1.history.currentId),e&&t.scrollIntoViewBySelector("["+constants_1.SECTION_ATTR+'="'+(0,redoc_lib_1.escapeHTMLAttrChars)(e)+'"]')}}),Object.defineProperty(e.prototype,"subscribe",{enumerable:!1,configurable:!0,writable:!0,value:function(){this._unsubscribe=this.scroll.subscribe(this.updateOnScroll),this._hashUnsubscribe=this.history.subscribe(this.updateOnHistory)}}),Object.defineProperty(e.prototype,"toggleSidebar",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.sideBarOpened=!this.sideBarOpened}}),Object.defineProperty(e.prototype,"closeSidebar",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.sideBarOpened=!1}}),Object.defineProperty(e.prototype,"getElementAt",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=this.flatItems[e];return t&&(0,redoc_lib_1.querySelector)("["+constants_1.SECTION_ATTR+'="'+(0,redoc_lib_1.escapeHTMLAttrChars)(t.id)+'"]')||null}}),Object.defineProperty(e.prototype,"getElementAtOrFirstChild",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=this.flatItems[e];return t&&"group"===t.type&&(t=t.items[0]),t&&(0,redoc_lib_1.querySelector)("["+constants_1.SECTION_ATTR+'="'+(0,redoc_lib_1.escapeHTMLAttrChars)(t.id)+'"]')||null}}),Object.defineProperty(e.prototype,"activeItem",{get:function(){return this.flatItems[this.activeItemIdx]||void 0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"updateItemsByVersionChange",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t){var i=this;if("versionsInfo"in this.definition){var r=this.activeItem&&this.activeItem.active?this.activeItem.absoluteIdx:-1;t=t&&withoutVersion(t)||this.activeItem&&this.activeItem.active&&withoutVersion(this.activeItem.id)||"",this.deactivate(this.activeItem),this.items=this.definition.contentItems,this.flatItems=(0,redoc_lib_1.flattenByProp)(this.items||[],"items"),this.flatItems.forEach((function(e,t){return normalizeItem(e,t,i.options.pagination,i.definition instanceof VersionedSpecStore_1.VersionedSpecStore,i.history)}));var n=t?(this.flatItems.find((function(e){return withoutVersion(e.id)===t}))||{absoluteIdx:-1}).absoluteIdx:-1;if(-1!==n&&"none"!==this.options.pagination||(this.renderItems=this.buildRenderItems(0)),this.activeItemIdx=-1,-1!==n)this.activate(this.flatItems[n],e);else if(-1!==r)this.activateAndScroll(this.flatItems[0],e);else if(e){var o=this.definition.versionsInfo[this.definition.activeVersionIdx];if(!this.history.currentId&&o.isDefault)return;this.history.replace(o.id)}}}}),Object.defineProperty(e.prototype,"buildRenderItems",{enumerable:!1,configurable:!0,writable:!0,value:function(e){if("none"===this.options.pagination)return this.items;var t=this.flatItems[e];if(t||(t=this.flatItems[0]),"spec"===t.type)return this.buildRenderItems(e+1);if("section"===t.type){var i=[],r=getParentOfType(t,"tag");if("section"===this.options.pagination&&r)return[r];if("item"===this.options.pagination&&r)return[(0,tslib_1.__assign)((0,tslib_1.__assign)({},r),{items:getLeadingSectionItems(r)})];for(var n=getParentSpecItem(t),o=(null==n?void 0:n.items)||this.items,a=0;a<o.length&&"section"===o[a].type;a++)i.push(o[a]);return i}switch(this.options.pagination){case"section":if(("operation"===t.type||"schema"===t.type)&&t.parent)return[t.parent];if("group"!==t.type)return[t];case"item":return"operation"===t.type||"schema"===t.type?[t]:[(0,tslib_1.__assign)((0,tslib_1.__assign)({},t),{items:getLeadingSectionItems(t)})];default:return[]}}}),Object.defineProperty(e.prototype,"activateBase",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t,i,r){var n,o,a,s,l,c=this;if(void 0===t&&(t=!0),void 0===i&&(i=!1),(null===(n=this.activeItem)||void 0===n?void 0:n.id)===(null==e?void 0:e.id)&&!r)return t&&e&&this.history.replace(encodeURI(e.id),i),void(e&&!e.active&&e.activate());if(!e||"group"!==e.type)if(this.deactivate(this.activeItem),e){if(!(e.depth<=redoc_lib_1.GROUP_DEPTH)){this.activeItemIdx=e.absoluteIdx,t&&this.history.replace(encodeURI(e.id),i),e.activate(),e.expand();var d=new URLSearchParams(r),u="request"===d.get("t"),p="response"===d.get("t"),f=d.get("c"),b=d.get("ct"),v=d.get("in"),h=d.get("path"),m=(null==h?void 0:h.split(this.options.deepLinkSeparator))||[],I=e;if(v)for(var y=I.parameters,_=function(e){var t=null==y?void 0:y.find((function(t){return t.name===e}));null==t||t.expand(),y=null===(o=null==t?void 0:t.schema)||void 0===o?void 0:o.fields},g=0,O=m;g<O.length;g++){_(O[g])}else if(u){var x=null===(a=I.requestBody)||void 0===a?void 0:a.content;null===(s=I.activateMimeName)||void 0===s||s.call(I,b||I.activeMimeName),setTimeout((function(){var e;return c.activateField(m,null===(e=null==x?void 0:x.active)||void 0===e?void 0:e.schema)}),0)}else if(p){var S=I.responses.find((function(e){return e.code===f}));(null==S?void 0:S.expanded)||null==S||S.expand(),null===(l=I.activateMimeName)||void 0===l||l.call(I,b||I.activeMimeName),setTimeout((function(){var e,t;return c.activateField(m,null===(t=null===(e=null==S?void 0:S.content)||void 0===e?void 0:e.active)||void 0===t?void 0:t.schema)}),0)}}}else this.history.replace("",i)}}),Object.defineProperty(e.prototype,"activate",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t,i,r,n){var o=this;if(void 0===t&&(t=!0),void 0===i&&(i=!1),void 0===r&&(r=!0),"none"===this.options.pagination)return this.activateBase(e,t,i,n),void(!e&&this.definition instanceof VersionedSpecStore_1.VersionedSpecStore&&this.history.replace(this.definition.currentVersionId,!0));if("group"!==(null==e?void 0:e.type)){if(e&&"item"===this.options.pagination&&"tag"===e.type&&!e.description){if(e.expanded)return void e.collapse();e.expand(),e=this.flatItems[e.absoluteIdx+1]}if(this.activateBase(e,e&&t,i,n),this.activeRenderItemIdx=e?e.absoluteIdx:this.activeRenderItemIdx,this.activeRenderItemIdx>=0){var a=this.buildRenderItems(this.activeRenderItemIdx);a.some((function(e,t){return e.id!==o.renderItems[t].id}))&&(this.renderItems=a),this.renderItems[0]&&(this.activeRenderItemIdx=this.renderItems[0].absoluteIdx)}r&&setTimeout((function(){return o.scrollToActive()})),!e&&this.definition instanceof VersionedSpecStore_1.VersionedSpecStore&&this.history.replace(this.definition.currentVersionId,!0)}}}),Object.defineProperty(e.prototype,"activateField",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t){for(var i,r=function(r){var n=e[r],o=r===e.length-1;if((null==t?void 0:t.hasType("array"))&&(null==t?void 0:t.items)&&(t=null==t?void 0:t.items),null==t?void 0:t.oneOf){var a=Number(n);return isNaN(a)?{value:void 0}:(null==t||t.activateOneOf(a),t=null==t?void 0:t.oneOf[a],"continue")}(null==t?void 0:t.hasType("array"))&&(null==t?void 0:t.items)&&(t=null==t?void 0:t.items);var s=null===(i=null==t?void 0:t.fields)||void 0===i?void 0:i.find((function(e){return e.name===n}));o||null==s||s.expand(),t=null==s?void 0:s.schema},n=0;n<e.length-1;n++){var o=r(n);if("object"==typeof o)return o.value}}}),Object.defineProperty(e.prototype,"deactivate",{enumerable:!1,configurable:!0,writable:!0,value:function(e){if(void 0!==e)for(e.deactivate();void 0!==e;)e.collapse(),e=e.parent}}),Object.defineProperty(e.prototype,"activateAndScroll",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t,i,r){void 0===r&&(r="");var n=r.split(this.options.deepLinkPrefix)[1],o=e&&this.getItemById(e.id)||e;this.activate(o,t,i,!1,n),this.scrollToActive(n?r:""),o&&o.items.length||this.closeSidebar()}}),Object.defineProperty(e.prototype,"scrollToActive",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=this;e?setTimeout((function(){return t.scroll.scrollIntoViewBySelector("["+constants_1.SECTION_ATTR+'="'+(0,redoc_lib_1.escapeHTMLAttrChars)(e)+'"]')}),0):this.scroll.scrollIntoView(this.getElementAt(this.activeItemIdx))}}),Object.defineProperty(e.prototype,"dispose",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e,t;null===(e=this._unsubscribe)||void 0===e||e.call(this),null===(t=this._hashUnsubscribe)||void 0===t||t.call(this)}}),(0,tslib_1.__decorate)([mobx_1.observable],e.prototype,"flatItems",void 0),(0,tslib_1.__decorate)([mobx_1.observable],e.prototype,"items",void 0),(0,tslib_1.__decorate)([mobx_1.observable],e.prototype,"activeRenderItemIdx",void 0),(0,tslib_1.__decorate)([mobx_1.observable.ref],e.prototype,"renderItems",void 0),(0,tslib_1.__decorate)([mobx_1.observable],e.prototype,"activeItemIdx",void 0),(0,tslib_1.__decorate)([mobx_1.observable],e.prototype,"sideBarOpened",void 0),(0,tslib_1.__decorate)([mobx_1.action],e.prototype,"toggleSidebar",null),(0,tslib_1.__decorate)([mobx_1.action],e.prototype,"closeSidebar",null),(0,tslib_1.__decorate)([mobx_1.action],e.prototype,"activateBase",null),(0,tslib_1.__decorate)([mobx_1.action],e.prototype,"activate",null),(0,tslib_1.__decorate)([mobx_1.action.bound],e.prototype,"activateAndScroll",null),e}();function withoutVersion(e){return e.split("/").slice(1).join("/")}function getParentSpecItem(e){for(;e;){if("spec"===e.type)return e;e=e.parent}}function getParentOfType(e,t){if(e&&e.parent)return e.parent.type===t?e.parent:getParentOfType(e.parent,t)}function getLeadingSectionItems(e){for(var t=[],i=0,r=e.items;i<r.length;i++){var n=r[i];if("section"!==n.type)break;t.push(n)}return t}function normalizeItem(e,t,i,r,n){if(e.absoluteIdx=t,"none"!==i){var o=getParentOfType(e,"tag");if(e.parent&&o&&!("_id_normalized"in e)){if(r){var a=e.id.split("/"),s=a[0],l=a[1],c=withoutVersion(e.id);if("operation"===e.type&&!l.startsWith("operation"))return;e.id=s+"/"+withoutVersion(o.id)+"/"+c}else{if("operation"===e.type&&!e.id.startsWith("operation"))return;e.id=o.id+"/"+e.id}e._id_normalized=!0}}"group"!==e.type&&(e.href=n.linkForId(e.id))}exports.ProMenu=ProMenu;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ProMenu=void 0;var tslib_1=require("tslib"),mobx_1=require("mobx"),redoc_lib_1=require("../redoc-lib"),constants_1=require("../redoc-lib/src/services/constants"),HistoryService_1=require("../redoc-lib/src/services/HistoryService"),VersionedSpecStore_1=require("./VersionedSpecStore"),ProMenu=function(){function e(e,t,i,r){var n=this;Object.defineProperty(this,"definition",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"scroll",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"history",{enumerable:!0,configurable:!0,writable:!0,value:r}),Object.defineProperty(this,"flatItems",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"items",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"activeRenderItemIdx",{enumerable:!0,configurable:!0,writable:!0,value:-1}),Object.defineProperty(this,"renderItems",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"activeItemIdx",{enumerable:!0,configurable:!0,writable:!0,value:-1}),Object.defineProperty(this,"sideBarOpened",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_unsubscribe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_hashUnsubscribe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"getItemById",{enumerable:!0,configurable:!0,writable:!0,value:function(e){return n.flatItems.find((function(t){return t.id===e}))}}),Object.defineProperty(this,"initOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){void 0===e&&(e=n.history.currentId);var t=e.split(n.options.deepLinkPrefix)[0];if(t){var i=n.flatItems.find((function(e){return e.id===t}));i&&(n.activate(i,!1,!1,!1,e),i.active=!1)}}}),Object.defineProperty(this,"updateOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){void 0===e&&(e=n.history.currentId);var t=e.split(n.options.deepLinkPrefix)[0];if(t){var i=n.flatItems.find((function(e){return e.id===t}));i?n.activateAndScroll(i,!1,void 0,e):(n.scroll.prevOffsetY=0,n.scroll.scrollIntoViewBySelector("["+constants_1.SECTION_ATTR+'="'+(0,redoc_lib_1.escapeHTMLAttrChars)(t)+'"]'))}}}),Object.defineProperty(this,"updateVersionOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){if("versionsInfo"in n.definition){var t=e.split("/")[0],i=n.definition.versionsInfo.findIndex((function(e){return e.id===t}));i<0&&(i=n.definition.versionsInfo.findIndex((function(e){return e.isDefault}))),n.definition.activeVersionIdx!==i&&(n.definition.changeVersion(i<0?0:i),n.updateItemsByVersionChange(!1,e))}}}),Object.defineProperty(this,"updateOnScroll",{enumerable:!0,configurable:!0,writable:!0,value:function(e){for(var t=e?1:-1,i=n.activeItemIdx;(-1!==i||e)&&!(i>=n.flatItems.length-1&&e);){if(e){var r=!1,o=n.flatItems[i+1];switch(n.options.pagination){case"section":r=o&&("spec"===o.type||"group"===o.type||"tag"===o.type);break;case"item":r="section"!==(null==o?void 0:o.type)}var a=n.getElementAt(i+1);if(-1===i&&"tag"===n.flatItems[0].type&&(r=!1),n.scroll.isElementBellow(a)||r)break}else{var s=n.flatItems[i]&&n.flatItems[i].type;r="section"===n.options.pagination&&("spec"===s||"group"===s||"tag"===s)||"item"===n.options.pagination&&"section"!==s;if(!(a=n.getElementAt(i))||n.scroll.isElementAbove(a)||r)break}i+=t}var l=n.flatItems[i];"none"===n.options.pagination||"section"===n.options.pagination?l&&l.active||n.activate(l,!0,!0,!1):l&&"section"===l.type&&(l.active||n.activate(l,!0,!0,!1))}}),(0,mobx_1.makeObservable)(this),this.items=e.contentItems,this.flatItems=(0,redoc_lib_1.flattenByProp)(this.items||[],"items"),this.flatItems.forEach((function(e,t){return e.absoluteIdx=t})),i.disableSidebar||this.subscribe(),this.flatItems.forEach((function(e,t){return normalizeItem(e,t,i.pagination,n.definition instanceof VersionedSpecStore_1.VersionedSpecStore,n.history)})),this.renderItems=this.buildRenderItems(0),this.activeItemIdx=-1,this.activeRenderItemIdx=-1,this.definition instanceof VersionedSpecStore_1.VersionedSpecStore&&this.history.subscribe(this.updateVersionOnHistory)}return Object.defineProperty(e,"updateOnHistory",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t){void 0===e&&(e=HistoryService_1.history.currentId),e&&t.scrollIntoViewBySelector("["+constants_1.SECTION_ATTR+'="'+(0,redoc_lib_1.escapeHTMLAttrChars)(e)+'"]')}}),Object.defineProperty(e.prototype,"subscribe",{enumerable:!1,configurable:!0,writable:!0,value:function(){this._unsubscribe=this.scroll.subscribe(this.updateOnScroll),this._hashUnsubscribe=this.history.subscribe(this.updateOnHistory)}}),Object.defineProperty(e.prototype,"toggleSidebar",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.sideBarOpened=!this.sideBarOpened}}),Object.defineProperty(e.prototype,"closeSidebar",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.sideBarOpened=!1}}),Object.defineProperty(e.prototype,"getElementAt",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=this.flatItems[e];return t&&(0,redoc_lib_1.querySelector)("["+constants_1.SECTION_ATTR+'="'+(0,redoc_lib_1.escapeHTMLAttrChars)(t.id)+'"]')||null}}),Object.defineProperty(e.prototype,"getElementAtOrFirstChild",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=this.flatItems[e];return t&&"group"===t.type&&(t=t.items[0]),t&&(0,redoc_lib_1.querySelector)("["+constants_1.SECTION_ATTR+'="'+(0,redoc_lib_1.escapeHTMLAttrChars)(t.id)+'"]')||null}}),Object.defineProperty(e.prototype,"activeItem",{get:function(){return this.flatItems[this.activeItemIdx]||void 0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"updateItemsByVersionChange",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t){var i=this;if("versionsInfo"in this.definition){var r=this.activeItem&&this.activeItem.active?this.activeItem.absoluteIdx:-1;t=t&&withoutVersion(t)||this.activeItem&&this.activeItem.active&&withoutVersion(this.activeItem.id)||"",this.deactivate(this.activeItem),this.items=this.definition.contentItems,this.flatItems=(0,redoc_lib_1.flattenByProp)(this.items||[],"items"),this.flatItems.forEach((function(e,t){return normalizeItem(e,t,i.options.pagination,i.definition instanceof VersionedSpecStore_1.VersionedSpecStore,i.history)}));var n=t?(this.flatItems.find((function(e){return withoutVersion(e.id)===t}))||{absoluteIdx:-1}).absoluteIdx:-1;if(-1!==n&&"none"!==this.options.pagination||(this.renderItems=this.buildRenderItems(0)),this.activeItemIdx=-1,-1!==n)this.activate(this.flatItems[n],e);else if(-1!==r)this.activateAndScroll(this.flatItems[0],e);else if(e){var o=this.definition.versionsInfo[this.definition.activeVersionIdx];if(!this.history.currentId&&o.isDefault)return;this.history.replace(o.id)}}}}),Object.defineProperty(e.prototype,"buildRenderItems",{enumerable:!1,configurable:!0,writable:!0,value:function(e){if("none"===this.options.pagination)return this.items;var t=this.flatItems[e];if(t||(t=this.flatItems[0]),"spec"===t.type)return this.buildRenderItems(e+1);if("section"===t.type){var i=[],r=getParentOfType(t,"tag");if("section"===this.options.pagination&&r)return[r];if("item"===this.options.pagination&&r)return[(0,tslib_1.__assign)((0,tslib_1.__assign)({},r),{items:getLeadingSectionItems(r)})];for(var n=getParentSpecItem(t),o=(null==n?void 0:n.items)||this.items,a=0;a<o.length&&"section"===o[a].type;a++)i.push(o[a]);return i}switch(this.options.pagination){case"section":if(("operation"===t.type||"schema"===t.type)&&t.parent)return[t.parent];if("group"!==t.type)return[t];case"item":return"operation"===t.type||"schema"===t.type?[t]:[(0,tslib_1.__assign)((0,tslib_1.__assign)({},t),{items:getLeadingSectionItems(t)})];default:return[]}}}),Object.defineProperty(e.prototype,"activateBase",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t,i,r){var n,o,a,s,l,c=this;if(void 0===t&&(t=!0),void 0===i&&(i=!1),(null===(n=this.activeItem)||void 0===n?void 0:n.id)===(null==e?void 0:e.id)&&!r)return t&&e&&this.history.replace(encodeURI(e.id),i),void(e&&!e.active&&e.activate());if(!e||"group"!==e.type)if(this.deactivate(this.activeItem),e){if(!(e.depth<=redoc_lib_1.GROUP_DEPTH)){this.activeItemIdx=e.absoluteIdx,t&&this.history.replace(encodeURI(e.id),i),e.activate(),e.expand();var d=new URLSearchParams(r),u="request"===d.get("t"),p="response"===d.get("t"),f=d.get("c"),b=d.get("ct"),v=d.get("in"),h=d.get("path"),m=(null==h?void 0:h.split(this.options.deepLinkSeparator))||[],I=e;if(v)for(var y=I.parameters,_=function(e){var t=null==y?void 0:y.find((function(t){return t.name===e}));null==t||t.expand(),y=null===(o=null==t?void 0:t.schema)||void 0===o?void 0:o.fields},g=0,O=m;g<O.length;g++){_(O[g])}else if(u){var x=null===(a=I.requestBody)||void 0===a?void 0:a.content;null===(s=I.activateMimeName)||void 0===s||s.call(I,b||I.activeMimeName),setTimeout((function(){var e;return c.activateField(m,null===(e=null==x?void 0:x.active)||void 0===e?void 0:e.schema)}),0)}else if(p){var S=I.responses.find((function(e){return e.code===f}));(null==S?void 0:S.expanded)||null==S||S.expand(),null===(l=I.activateMimeName)||void 0===l||l.call(I,b||I.activeMimeName),setTimeout((function(){var e,t;return c.activateField(m,null===(t=null===(e=null==S?void 0:S.content)||void 0===e?void 0:e.active)||void 0===t?void 0:t.schema)}),0)}}}else this.history.replace("",i)}}),Object.defineProperty(e.prototype,"activate",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t,i,r,n){var o=this;if(void 0===t&&(t=!0),void 0===i&&(i=!1),void 0===r&&(r=!0),"none"===this.options.pagination)return this.activateBase(e,t,i,n),void(!e&&this.definition instanceof VersionedSpecStore_1.VersionedSpecStore&&this.history.replace(this.definition.currentVersionId,!0));if("group"!==(null==e?void 0:e.type)){if(e&&"item"===this.options.pagination&&"tag"===e.type&&!e.description){if(e.expanded)return void e.collapse();e.expand(),e=this.flatItems[e.absoluteIdx+1]}if(this.activateBase(e,e&&t,i,n),this.activeRenderItemIdx=e?e.absoluteIdx:this.activeRenderItemIdx,this.activeRenderItemIdx>=0){var a=this.buildRenderItems(this.activeRenderItemIdx);a.some((function(e,t){return e.id!==o.renderItems[t].id}))&&(this.renderItems=a),this.renderItems[0]&&(this.activeRenderItemIdx=this.renderItems[0].absoluteIdx)}r&&setTimeout((function(){return o.scrollToActive()})),!e&&this.definition instanceof VersionedSpecStore_1.VersionedSpecStore&&this.history.replace(this.definition.currentVersionId,!0)}}}),Object.defineProperty(e.prototype,"activateField",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t){for(var i,r=function(r){var n=e[r],o=r===e.length-1;if((null==t?void 0:t.hasType("array"))&&(null==t?void 0:t.items)&&(t=null==t?void 0:t.items),null==t?void 0:t.oneOf){var a=Number(n);return isNaN(a)?{value:void 0}:(null==t||t.activateOneOf(a),t=null==t?void 0:t.oneOf[a],"continue")}(null==t?void 0:t.hasType("array"))&&(null==t?void 0:t.items)&&(t=null==t?void 0:t.items);var s=null===(i=null==t?void 0:t.fields)||void 0===i?void 0:i.find((function(e){return e.name===n}));o||null==s||s.expand(),t=null==s?void 0:s.schema},n=0;n<e.length-1;n++){var o=r(n);if("object"==typeof o)return o.value}}}),Object.defineProperty(e.prototype,"deactivate",{enumerable:!1,configurable:!0,writable:!0,value:function(e){if(void 0!==e)for(e.deactivate();void 0!==e;)e.collapse(),e=e.parent}}),Object.defineProperty(e.prototype,"activateAndScroll",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t,i,r){void 0===r&&(r="");var n=r.lastIndexOf(this.options.deepLinkPrefix),o=-1!==n?r.substring(n+1):r,a=e&&this.getItemById(e.id)||e;this.activate(a,t,i,!1,o),this.scrollToActive(o?r:""),a&&a.items.length||this.closeSidebar()}}),Object.defineProperty(e.prototype,"scrollToActive",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=this;e?setTimeout((function(){return t.scroll.scrollIntoViewBySelector("["+constants_1.SECTION_ATTR+'="'+(0,redoc_lib_1.escapeHTMLAttrChars)(e)+'"]')}),0):this.scroll.scrollIntoView(this.getElementAt(this.activeItemIdx))}}),Object.defineProperty(e.prototype,"dispose",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e,t;null===(e=this._unsubscribe)||void 0===e||e.call(this),null===(t=this._hashUnsubscribe)||void 0===t||t.call(this)}}),(0,tslib_1.__decorate)([mobx_1.observable],e.prototype,"flatItems",void 0),(0,tslib_1.__decorate)([mobx_1.observable],e.prototype,"items",void 0),(0,tslib_1.__decorate)([mobx_1.observable],e.prototype,"activeRenderItemIdx",void 0),(0,tslib_1.__decorate)([mobx_1.observable.ref],e.prototype,"renderItems",void 0),(0,tslib_1.__decorate)([mobx_1.observable],e.prototype,"activeItemIdx",void 0),(0,tslib_1.__decorate)([mobx_1.observable],e.prototype,"sideBarOpened",void 0),(0,tslib_1.__decorate)([mobx_1.action],e.prototype,"toggleSidebar",null),(0,tslib_1.__decorate)([mobx_1.action],e.prototype,"closeSidebar",null),(0,tslib_1.__decorate)([mobx_1.action],e.prototype,"activateBase",null),(0,tslib_1.__decorate)([mobx_1.action],e.prototype,"activate",null),(0,tslib_1.__decorate)([mobx_1.action.bound],e.prototype,"activateAndScroll",null),e}();function withoutVersion(e){return e.split("/").slice(1).join("/")}function getParentSpecItem(e){for(;e;){if("spec"===e.type)return e;e=e.parent}}function getParentOfType(e,t){if(e&&e.parent)return e.parent.type===t?e.parent:getParentOfType(e.parent,t)}function getLeadingSectionItems(e){for(var t=[],i=0,r=e.items;i<r.length;i++){var n=r[i];if("section"!==n.type)break;t.push(n)}return t}function normalizeItem(e,t,i,r,n){if(e.absoluteIdx=t,"none"!==i){var o=getParentOfType(e,"tag");if(e.parent&&o&&!("_id_normalized"in e)){if(r){var a=e.id.split("/"),s=a[0],l=a[1],c=withoutVersion(e.id);if("operation"===e.type&&!l.startsWith("operation"))return;e.id=s+"/"+withoutVersion(o.id)+"/"+c}else{if("operation"===e.type&&!e.id.startsWith("operation"))return;e.id=o.id+"/"+e.id}e._id_normalized=!0}}"group"!==e.type&&(e.href=n.linkForId(e.id))}exports.ProMenu=ProMenu;
|
|
2
2
|
//# sourceMappingURL=ProMenu.js.map
|
|
@@ -35,6 +35,7 @@ export interface RedoclyReferenceDocsStandaloneProps {
|
|
|
35
35
|
activeItemId?: string;
|
|
36
36
|
activeSampleLanguage?: CodeSampleConfig['lang'];
|
|
37
37
|
activeDeepLink?: string;
|
|
38
|
+
onLoaded?: (e?: Error) => void;
|
|
38
39
|
}
|
|
39
40
|
export declare function RedoclyReferenceDocsStandalone(props: RedoclyReferenceDocsStandaloneProps): JSX.Element | null;
|
|
40
41
|
export {};
|
|
@@ -22,5 +22,5 @@ import{__decorate}from"tslib";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-ru
|
|
|
22
22
|
${ApiContentWrap} {
|
|
23
23
|
${({theme:e,showRightPanel:o,layout:t})=>mediaCSS({width:{[ZERO_BREAKPOINT]:"none",small:`calc(100% - ${e.sidebar.width})`},maxWidth:e.layout[t===LayoutVariant.THREE_PANEL&&o?LayoutVariant.THREE_PANEL:LayoutVariant.STACKED].maxWidth})};
|
|
24
24
|
}
|
|
25
|
-
`;let RedoclyReferenceDocs=class extends Component{constructor(e){super(e),Object.defineProperty(this,"_observer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_updatedItems",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"rootElementRef",{enumerable:!0,configurable:!0,writable:!0,value:createRef()}),Object.defineProperty(this,"handleClose",{enumerable:!0,configurable:!0,writable:!0,value:()=>this.props.store.tryItOut()}),this.state={searchPopUpShown:!1,searchPopUpValue:""}}componentDidMount(){var e,o;this.props.store.onDidMount(),null===(o=(e=this.props).onLoaded)||void 0===o||o.call(e),this._observer=reaction((()=>this.props.store.menu.renderItems),(()=>{this._updatedItems=!0}))}componentDidUpdate(){this._updatedItems&&(this._updatedItems=!1,this.props.store.menu.scrollToActive())}componentWillUnmount(){this.props.store.dispose(),this._observer()}render(){const{store:e,_forceRenderInfo:o}=this.props,{definition:t,menu:i,options:a,search:r,marker:n}=e,{hideDownloadButton:s,hideInfoSection:l,pagination:d,disableSidebar:c}=a,h=i.renderItems,p="none"===d||i.activeRenderItemIdx<=0;let u=!l&&p;u&&"none"!==d&&c&&h[0]&&"section"!==h[0].type&&(u=!1),o&&(u=!0);const m=!u&&null!==s&&!s&&p;return _jsxs(ProProviders,Object.assign({store:e},{children:[_jsx(Overlay,{l:e.l},void 0),_jsxs(RedocWrap,Object.assign({className:"redoc-wrap",ref:this.rootElementRef},{children:[_jsx(CssFixes,{whiteLabel:a.whiteLabel,showRightPanel:e.showRightPanel,layout:e.layout},void 0),e.tryItOperation&&_jsx(Console,{rootElement:this.rootElementRef.current,store:e,operation:e.tryItOperation,onClose:this.handleClose},void 0),!a.disableSidebar&&_jsxs(StickyResponsiveSidebar,Object.assign({menu:i,className:"menu-content"},{children:[!a.hideLogo&&_jsx(ApiLogo,{info:t.info},void 0),t instanceof VersionedSpecStore&&_jsx(VersionSwitcher,{spec:t,onChange:o=>{void 0!==o.idx&&t.changeVersion(o.idx),i.updateItemsByVersionChange(!0),e.tryItOut(void 0)}},void 0),!a.disableSearch&&_jsx(SearchField,{showPopUp:()=>this.setState({searchPopUpShown:!0}),searchValue:this.state.searchPopUpValue,marker:n,setSearchValue:e=>this.setState({searchPopUpValue:e})},void 0),_jsx(SideMenu,{menu:i},void 0)]}),void 0),_jsxs(ApiContentWrap,Object.assign({className:(e.isLoading?"loading ":"")+"api-content",layout:e.layout===LayoutVariant.THREE_PANEL&&e.showRightPanel?LayoutVariant.THREE_PANEL:LayoutVariant.STACKED},{children:[a.theme.layout.showDarkRightPanel&&e.showRightPanel&&e.layout!==LayoutVariant.STACKED&&_jsx(BackgroundStub,{},void 0),u&&_jsx(ApiInfo,{store:e},void 0),m&&_jsx(DownloadButtonWithLabel,{store:e},void 0),_jsx(ContentItems,{items:h,store:e},void 0),a.showNextButton&&_jsx(ContinueButton,{pagination:a.pagination,menu:i},void 0),this.props.children]}),void 0),_jsxs(ControlsWrap,{children:[_jsx(ToggleRightPanelButton,{store:e,isVisible:e.layout===LayoutVariant.THREE_PANEL},void 0),_jsx(ChangeViewButton,{store:e,isVisible:e.showRightPanel},void 0)]},void 0),_jsx(ProSearchBox,{search:r,marker:n,menu:i,onActivate:i.activateAndScroll.bind(i),options:a,shown:this.state.searchPopUpShown,hidePopUp:()=>this.setState({searchPopUpShown:!1}),showPopUp:()=>this.setState({searchPopUpShown:!0}),setSearchValue:e=>this.setState({searchPopUpValue:e}),searchValue:this.state.searchPopUpValue},void 0),a.theme.layout.showDarkRightPanel&&e.showRightPanel&&e.layout!==LayoutVariant.STACKED&&_jsx(BackgroundStubFix,{},void 0)]}),void 0)]}),void 0)}};RedoclyReferenceDocs=__decorate([observer],RedoclyReferenceDocs);export{RedoclyReferenceDocs};export function RedoclyReferenceDocsStandalone(e){const{definition:o,definitionUrl:t,options:i={},activeItemId:a,activeSampleLanguage:r,activeDeepLink:n}=e,
|
|
25
|
+
`;let RedoclyReferenceDocs=class extends Component{constructor(e){super(e),Object.defineProperty(this,"_observer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_updatedItems",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"rootElementRef",{enumerable:!0,configurable:!0,writable:!0,value:createRef()}),Object.defineProperty(this,"handleClose",{enumerable:!0,configurable:!0,writable:!0,value:()=>this.props.store.tryItOut()}),this.state={searchPopUpShown:!1,searchPopUpValue:""}}componentDidMount(){var e,o;this.props.store.onDidMount(),null===(o=(e=this.props).onLoaded)||void 0===o||o.call(e),this._observer=reaction((()=>this.props.store.menu.renderItems),(()=>{this._updatedItems=!0}))}componentDidUpdate(){this._updatedItems&&(this._updatedItems=!1,this.props.store.menu.scrollToActive())}componentWillUnmount(){this.props.store.dispose(),this._observer()}render(){const{store:e,_forceRenderInfo:o}=this.props,{definition:t,menu:i,options:a,search:r,marker:n}=e,{hideDownloadButton:s,hideInfoSection:l,pagination:d,disableSidebar:c}=a,h=i.renderItems,p="none"===d||i.activeRenderItemIdx<=0;let u=!l&&p;u&&"none"!==d&&c&&h[0]&&"section"!==h[0].type&&(u=!1),o&&(u=!0);const m=!u&&null!==s&&!s&&p;return _jsxs(ProProviders,Object.assign({store:e},{children:[_jsx(Overlay,{l:e.l},void 0),_jsxs(RedocWrap,Object.assign({className:"redoc-wrap",ref:this.rootElementRef},{children:[_jsx(CssFixes,{whiteLabel:a.whiteLabel,showRightPanel:e.showRightPanel,layout:e.layout},void 0),e.tryItOperation&&_jsx(Console,{rootElement:this.rootElementRef.current,store:e,operation:e.tryItOperation,onClose:this.handleClose},void 0),!a.disableSidebar&&_jsxs(StickyResponsiveSidebar,Object.assign({menu:i,className:"menu-content"},{children:[!a.hideLogo&&_jsx(ApiLogo,{info:t.info},void 0),t instanceof VersionedSpecStore&&_jsx(VersionSwitcher,{spec:t,onChange:o=>{void 0!==o.idx&&t.changeVersion(o.idx),i.updateItemsByVersionChange(!0),e.tryItOut(void 0)}},void 0),!a.disableSearch&&_jsx(SearchField,{showPopUp:()=>this.setState({searchPopUpShown:!0}),searchValue:this.state.searchPopUpValue,marker:n,setSearchValue:e=>this.setState({searchPopUpValue:e})},void 0),_jsx(SideMenu,{menu:i},void 0)]}),void 0),_jsxs(ApiContentWrap,Object.assign({className:(e.isLoading?"loading ":"")+"api-content",layout:e.layout===LayoutVariant.THREE_PANEL&&e.showRightPanel?LayoutVariant.THREE_PANEL:LayoutVariant.STACKED},{children:[a.theme.layout.showDarkRightPanel&&e.showRightPanel&&e.layout!==LayoutVariant.STACKED&&_jsx(BackgroundStub,{},void 0),u&&_jsx(ApiInfo,{store:e},void 0),m&&_jsx(DownloadButtonWithLabel,{store:e},void 0),_jsx(ContentItems,{items:h,store:e},void 0),a.showNextButton&&_jsx(ContinueButton,{pagination:a.pagination,menu:i},void 0),this.props.children]}),void 0),_jsxs(ControlsWrap,{children:[_jsx(ToggleRightPanelButton,{store:e,isVisible:e.layout===LayoutVariant.THREE_PANEL},void 0),_jsx(ChangeViewButton,{store:e,isVisible:e.showRightPanel},void 0)]},void 0),_jsx(ProSearchBox,{search:r,marker:n,menu:i,onActivate:i.activateAndScroll.bind(i),options:a,shown:this.state.searchPopUpShown,hidePopUp:()=>this.setState({searchPopUpShown:!1}),showPopUp:()=>this.setState({searchPopUpShown:!0}),setSearchValue:e=>this.setState({searchPopUpValue:e}),searchValue:this.state.searchPopUpValue},void 0),a.theme.layout.showDarkRightPanel&&e.showRightPanel&&e.layout!==LayoutVariant.STACKED&&_jsx(BackgroundStubFix,{},void 0)]}),void 0)]}),void 0)}};RedoclyReferenceDocs=__decorate([observer],RedoclyReferenceDocs);export{RedoclyReferenceDocs};export function RedoclyReferenceDocsStandalone(e){const{definition:o,definitionUrl:t,options:i={},activeItemId:a,activeSampleLanguage:r,activeDeepLink:n,onLoaded:s}=e,l=argValueToBoolean(i.hideLoading,!1),d=new RedocNormalizedOptions(i),c=_jsx(ProStoreProvider,Object.assign({definition:o,definitionUrl:t,options:i,activeItemId:a,activeSampleLanguage:r,activeDeepLink:n,onLoaded:s},{children:({loading:e,store:o})=>e?l?null:_jsx(Loading,{color:d.theme.colors.primary.main},void 0):_jsx(RedoclyReferenceDocs,{store:o},void 0)}),void 0);return i.disableErrorBoundary?c:_jsx(ErrorBoundary,{children:c},void 0)}
|
|
26
26
|
//# sourceMappingURL=RedoclyReferenceDocs.js.map
|
|
@@ -17,7 +17,8 @@ interface StoreProviderProps {
|
|
|
17
17
|
activeItemId?: string;
|
|
18
18
|
activeSampleLanguage?: CodeSampleConfig['lang'] | string;
|
|
19
19
|
activeDeepLink?: string;
|
|
20
|
+
onLoaded?: (e?: Error) => void;
|
|
20
21
|
}
|
|
21
|
-
export declare const ProStoreProvider: ({ definitions, options, definitionUrl, definition, activeItemId, activeSampleLanguage, activeDeepLink, children, }: StoreProviderProps) => JSX.Element | null;
|
|
22
|
+
export declare const ProStoreProvider: ({ definitions, options, definitionUrl, definition, activeItemId, activeSampleLanguage, activeDeepLink, children, onLoaded, }: StoreProviderProps) => JSX.Element | null;
|
|
22
23
|
export declare function loadSpecs({ versions }: SpecVersions): Promise<void>;
|
|
23
24
|
export {};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import isDeepEqual from"fast-deep-equal";import{createContext,useEffect,useMemo,useRef,useState}from"react";import{loadAndBundleDefinition}from"../redoc-lib";import{ProStore}from"../services/ProStore";import{FakeHistoryService}from"../services";export const{Provider:Provider,Consumer:Consumer}=createContext(void 0);export const ProStoreProvider=({definitions:e,options:
|
|
1
|
+
import isDeepEqual from"fast-deep-equal";import{createContext,useEffect,useMemo,useRef,useState}from"react";import{loadAndBundleDefinition}from"../redoc-lib";import{ProStore}from"../services/ProStore";import{FakeHistoryService}from"../services";export const{Provider:Provider,Consumer:Consumer}=createContext(void 0);export const ProStoreProvider=({definitions:e,options:n,definitionUrl:t,definition:o,activeItemId:i,activeSampleLanguage:r,activeDeepLink:s,children:a,onLoaded:c})=>{const[,u]=useState(),[d,l]=useState(!0),[f,p]=useState(null);useEffect((()=>{!async function(){l(!0);try{p(e?await loadMany(e):await loadSingle(o,t,n))}catch(e){null==c||c(e),u((()=>{throw e}))}}()}),[e,o,t,n]);const m=useMemo((()=>{var e,o,i;if(!f)return;const r=new ProStore(f,t,n);return(null===(e=r.options.hooks)||void 0===e?void 0:e.onInit)&&(null===(i=null===(o=r.options.hooks)||void 0===o?void 0:o.onInit)||void 0===i||i.call(o,{store:r})),r}),useDeepCompareMemoize([f,n]));return useEffect((()=>{if(m)return l(!1),()=>m.dispose()}),[m]),useEffect((()=>{var e;if(!m)return;if(!i)return;const n=(null==i?void 0:i.split(m.options.deepLinkPrefix)[0])||(null===(e=m.menu.flatItems[m.menu.activeItemIdx])||void 0===e?void 0:e.id),t=m.menu.flatItems.find((e=>e.id===n)),o=s?n+m.options.deepLinkPrefix+s:void 0;o&&m.menu.history instanceof FakeHistoryService&&m.menu.history.replaceForField(o),m.menu.activateAndScroll(t,!0,!1,o)}),[i,s,m]),useEffect((()=>{m&&r&&m.setActiveSampleLanguage(r),m&&c&&c()}),[r,c,m]),a({loading:d,store:m})};function fixSpec(e){const n=e.components&&e.components.securitySchemes||{};for(const e of Object.keys(n)){const t=n[e];t["x-type"]&&(t.type=t["x-type"]),t["x-scheme"]&&(t.scheme=t["x-scheme"])}}async function loadMany(e){return await loadSpecs(e||{}),e}async function loadSingle(e,n,t){let o;if(null==t?void 0:t.skipBundleAndConvert){if(!e)throw new Error('spec must be specified when using "skipBundleAndConvert"');o=e}else o=await loadAndBundleDefinition(e||n);const i=null==t?void 0:t.unstable_externalDescription;if(i)try{const e=await fetch(i);o.info.description=await e.text()}catch(e){console.warn(`Failed to load external description from ${i}: ${e.message}`)}try{fixSpec(o)}catch(e){}return o}function loadAndBundleSpecOrMd(e,n){return e.endsWith(".md")?loadAndBundleDefinition({openapi:"3.0.0",info:{title:n||"",version:"1.0",description:{$ref:e}},paths:{}}):loadAndBundleDefinition(e)}export async function loadSpecs({versions:e}){if(Array.isArray(e))for(const n of e)n.url&&(n.spec=await loadAndBundleSpecOrMd(n.url))}function useDeepCompareMemoize(e){const n=useRef(),t=useRef(0);return isDeepEqual(e,n.current)||(n.current=e,t.current+=1),[t.current]}
|
|
2
2
|
//# sourceMappingURL=StoreProvider.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{action,observable,makeObservable}from"mobx";import{flattenByProp,querySelector,GROUP_DEPTH,escapeHTMLAttrChars}from"../redoc-lib";import{SECTION_ATTR}from"../redoc-lib/src/services/constants";import{history as historyInst}from"../redoc-lib/src/services/HistoryService";import{VersionedSpecStore}from"./VersionedSpecStore";export class ProMenu{constructor(e,t,i,s){Object.defineProperty(this,"definition",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"scroll",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"history",{enumerable:!0,configurable:!0,writable:!0,value:s}),Object.defineProperty(this,"flatItems",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"items",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"activeRenderItemIdx",{enumerable:!0,configurable:!0,writable:!0,value:-1}),Object.defineProperty(this,"renderItems",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"activeItemIdx",{enumerable:!0,configurable:!0,writable:!0,value:-1}),Object.defineProperty(this,"sideBarOpened",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_unsubscribe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_hashUnsubscribe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"getItemById",{enumerable:!0,configurable:!0,writable:!0,value:e=>this.flatItems.find((t=>t.id===e))}),Object.defineProperty(this,"initOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:(e=this.history.currentId)=>{const[t]=e.split(this.options.deepLinkPrefix);if(!t)return;const i=this.flatItems.find((e=>e.id===t));i&&(this.activate(i,!1,!1,!1,e),i.active=!1)}}),Object.defineProperty(this,"updateOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:(e=this.history.currentId)=>{const[t]=e.split(this.options.deepLinkPrefix);if(!t)return;const i=this.flatItems.find((e=>e.id===t));i?this.activateAndScroll(i,!1,void 0,e):(this.scroll.prevOffsetY=0,this.scroll.scrollIntoViewBySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(t)}"]`))}}),Object.defineProperty(this,"updateVersionOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:e=>{if(!("versionsInfo"in this.definition))return;const[t]=e.split("/");let i=this.definition.versionsInfo.findIndex((e=>e.id===t));i<0&&(i=this.definition.versionsInfo.findIndex((e=>e.isDefault))),this.definition.activeVersionIdx!==i&&(this.definition.changeVersion(i<0?0:i),this.updateItemsByVersionChange(!1,e))}}),Object.defineProperty(this,"updateOnScroll",{enumerable:!0,configurable:!0,writable:!0,value:e=>{const t=e?1:-1;let i=this.activeItemIdx;for(;(-1!==i||e)&&!(i>=this.flatItems.length-1&&e);){if(e){let e=!1;const t=this.flatItems[i+1];switch(this.options.pagination){case"section":e=t&&("spec"===t.type||"group"===t.type||"tag"===t.type);break;case"item":e="section"!==(null==t?void 0:t.type)}const s=this.getElementAt(i+1);if(-1===i&&"tag"===this.flatItems[0].type&&(e=!1),this.scroll.isElementBellow(s)||e)break}else{const e=this.flatItems[i]&&this.flatItems[i].type,t="section"===this.options.pagination&&("spec"===e||"group"===e||"tag"===e)||"item"===this.options.pagination&&"section"!==e,s=this.getElementAt(i);if(!s||this.scroll.isElementAbove(s)||t)break}i+=t}const s=this.flatItems[i];"none"===this.options.pagination||"section"===this.options.pagination?s&&s.active||this.activate(s,!0,!0,!1):s&&"section"===s.type&&(s.active||this.activate(s,!0,!0,!1))}}),makeObservable(this),this.items=e.contentItems,this.flatItems=flattenByProp(this.items||[],"items"),this.flatItems.forEach(((e,t)=>e.absoluteIdx=t)),i.disableSidebar||this.subscribe(),this.flatItems.forEach(((e,t)=>normalizeItem(e,t,i.pagination,this.definition instanceof VersionedSpecStore,this.history))),this.renderItems=this.buildRenderItems(0),this.activeItemIdx=-1,this.activeRenderItemIdx=-1,this.definition instanceof VersionedSpecStore&&this.history.subscribe(this.updateVersionOnHistory)}static updateOnHistory(e=historyInst.currentId,t){e&&t.scrollIntoViewBySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(e)}"]`)}subscribe(){this._unsubscribe=this.scroll.subscribe(this.updateOnScroll),this._hashUnsubscribe=this.history.subscribe(this.updateOnHistory)}toggleSidebar(){this.sideBarOpened=!this.sideBarOpened}closeSidebar(){this.sideBarOpened=!1}getElementAt(e){const t=this.flatItems[e];return t&&querySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(t.id)}"]`)||null}getElementAtOrFirstChild(e){let t=this.flatItems[e];return t&&"group"===t.type&&(t=t.items[0]),t&&querySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(t.id)}"]`)||null}get activeItem(){return this.flatItems[this.activeItemIdx]||void 0}updateItemsByVersionChange(e,t){if(!("versionsInfo"in this.definition))return;const i=this.activeItem&&this.activeItem.active?this.activeItem.absoluteIdx:-1;t=t&&withoutVersion(t)||this.activeItem&&this.activeItem.active&&withoutVersion(this.activeItem.id)||"",this.deactivate(this.activeItem),this.items=this.definition.contentItems,this.flatItems=flattenByProp(this.items||[],"items"),this.flatItems.forEach(((e,t)=>normalizeItem(e,t,this.options.pagination,this.definition instanceof VersionedSpecStore,this.history)));const s=t?(this.flatItems.find((e=>withoutVersion(e.id)===t))||{absoluteIdx:-1}).absoluteIdx:-1;if(-1!==s&&"none"!==this.options.pagination||(this.renderItems=this.buildRenderItems(0)),this.activeItemIdx=-1,-1!==s)this.activate(this.flatItems[s],e);else if(-1!==i)this.activateAndScroll(this.flatItems[0],e);else if(e){const e=this.definition.versionsInfo[this.definition.activeVersionIdx];if(!this.history.currentId&&e.isDefault)return;this.history.replace(e.id)}}buildRenderItems(e){if("none"===this.options.pagination)return this.items;let t=this.flatItems[e];if(t||(t=this.flatItems[0]),"spec"===t.type)return this.buildRenderItems(e+1);if("section"===t.type){const e=[],i=getParentOfType(t,"tag");if("section"===this.options.pagination&&i)return[i];if("item"===this.options.pagination&&i)return[Object.assign(Object.assign({},i),{items:getLeadingSectionItems(i)})];const s=getParentSpecItem(t),n=(null==s?void 0:s.items)||this.items;for(let t=0;t<n.length&&"section"===n[t].type;t++)e.push(n[t]);return e}switch(this.options.pagination){case"section":if(("operation"===t.type||"schema"===t.type)&&t.parent)return[t.parent];if("group"!==t.type)return[t];case"item":return"operation"===t.type||"schema"===t.type?[t]:[Object.assign(Object.assign({},t),{items:getLeadingSectionItems(t)})];default:return[]}}activateBase(e,t=!0,i=!1,s){var n,o,r,a,l;if((null===(n=this.activeItem)||void 0===n?void 0:n.id)===(null==e?void 0:e.id)&&!s)return t&&e&&this.history.replace(encodeURI(e.id),i),void(e&&!e.active&&e.activate());if(e&&"group"===e.type)return;if(this.deactivate(this.activeItem),!e)return void this.history.replace("",i);if(e.depth<=GROUP_DEPTH)return;this.activeItemIdx=e.absoluteIdx,t&&this.history.replace(encodeURI(e.id),i),e.activate(),e.expand();const c=new URLSearchParams(s),d="request"===c.get("t"),h="response"===c.get("t"),u=c.get("c"),p=c.get("ct"),f=c.get("in"),m=c.get("path"),v=(null==m?void 0:m.split(this.options.deepLinkSeparator))||[],b=e;if(f){let e=b.parameters;for(const t of v){const i=null==e?void 0:e.find((e=>e.name===t));null==i||i.expand(),e=null===(o=null==i?void 0:i.schema)||void 0===o?void 0:o.fields}}else if(d){const e=null===(r=b.requestBody)||void 0===r?void 0:r.content;null===(a=b.activateMimeName)||void 0===a||a.call(b,p||b.activeMimeName),setTimeout((()=>{var t;return this.activateField(v,null===(t=null==e?void 0:e.active)||void 0===t?void 0:t.schema)}),0)}else if(h){const e=b.responses.find((e=>e.code===u));(null==e?void 0:e.expanded)||null==e||e.expand(),null===(l=b.activateMimeName)||void 0===l||l.call(b,p||b.activeMimeName),setTimeout((()=>{var t,i;return this.activateField(v,null===(i=null===(t=null==e?void 0:e.content)||void 0===t?void 0:t.active)||void 0===i?void 0:i.schema)}),0)}}activate(e,t=!0,i=!1,s=!0,n){if("none"===this.options.pagination)return this.activateBase(e,t,i,n),void(!e&&this.definition instanceof VersionedSpecStore&&this.history.replace(this.definition.currentVersionId,!0));if("group"!==(null==e?void 0:e.type)){if(e&&"item"===this.options.pagination&&"tag"===e.type&&!e.description){if(e.expanded)return void e.collapse();e.expand(),e=this.flatItems[e.absoluteIdx+1]}if(this.activateBase(e,e&&t,i,n),this.activeRenderItemIdx=e?e.absoluteIdx:this.activeRenderItemIdx,this.activeRenderItemIdx>=0){const e=this.buildRenderItems(this.activeRenderItemIdx);e.some(((e,t)=>e.id!==this.renderItems[t].id))&&(this.renderItems=e),this.renderItems[0]&&(this.activeRenderItemIdx=this.renderItems[0].absoluteIdx)}s&&setTimeout((()=>this.scrollToActive())),!e&&this.definition instanceof VersionedSpecStore&&this.history.replace(this.definition.currentVersionId,!0)}}activateField(e,t){var i;for(let s=0;s<e.length-1;s++){const n=e[s],o=s===e.length-1;if((null==t?void 0:t.hasType("array"))&&(null==t?void 0:t.items)&&(t=null==t?void 0:t.items),null==t?void 0:t.oneOf){const e=Number(n);if(isNaN(e))return;null==t||t.activateOneOf(e),t=null==t?void 0:t.oneOf[e];continue}(null==t?void 0:t.hasType("array"))&&(null==t?void 0:t.items)&&(t=null==t?void 0:t.items);const r=null===(i=null==t?void 0:t.fields)||void 0===i?void 0:i.find((e=>e.name===n));o||null==r||r.expand(),t=null==r?void 0:r.schema}}deactivate(e){if(void 0!==e)for(e.deactivate();void 0!==e;)e.collapse(),e=e.parent}activateAndScroll(e,t,i,s=""){const[,n]=s.split(this.options.deepLinkPrefix),o=e&&this.getItemById(e.id)||e;this.activate(o,t,i,!1,n),this.scrollToActive(n?s:""),o&&o.items.length||this.closeSidebar()}scrollToActive(e){e?setTimeout((()=>this.scroll.scrollIntoViewBySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(e)}"]`)),0):this.scroll.scrollIntoView(this.getElementAt(this.activeItemIdx))}dispose(){var e,t;null===(e=this._unsubscribe)||void 0===e||e.call(this),null===(t=this._hashUnsubscribe)||void 0===t||t.call(this)}}function withoutVersion(e){return e.split("/").slice(1).join("/")}function getParentSpecItem(e){for(;e;){if("spec"===e.type)return e;e=e.parent}}function getParentOfType(e,t){if(e&&e.parent)return e.parent.type===t?e.parent:getParentOfType(e.parent,t)}function getLeadingSectionItems(e){const t=[];for(const i of e.items){if("section"!==i.type)break;t.push(i)}return t}function normalizeItem(e,t,i,s,n){if(e.absoluteIdx=t,"none"!==i){const t=getParentOfType(e,"tag");if(e.parent&&t&&!("_id_normalized"in e)){if(s){const[i,s]=e.id.split("/"),n=withoutVersion(e.id);if("operation"===e.type&&!s.startsWith("operation"))return;e.id=i+"/"+withoutVersion(t.id)+"/"+n}else{if("operation"===e.type&&!e.id.startsWith("operation"))return;e.id=t.id+"/"+e.id}e._id_normalized=!0}}"group"!==e.type&&(e.href=n.linkForId(e.id))}__decorate([observable],ProMenu.prototype,"flatItems",void 0),__decorate([observable],ProMenu.prototype,"items",void 0),__decorate([observable],ProMenu.prototype,"activeRenderItemIdx",void 0),__decorate([observable.ref],ProMenu.prototype,"renderItems",void 0),__decorate([observable],ProMenu.prototype,"activeItemIdx",void 0),__decorate([observable],ProMenu.prototype,"sideBarOpened",void 0),__decorate([action],ProMenu.prototype,"toggleSidebar",null),__decorate([action],ProMenu.prototype,"closeSidebar",null),__decorate([action],ProMenu.prototype,"activateBase",null),__decorate([action],ProMenu.prototype,"activate",null),__decorate([action.bound],ProMenu.prototype,"activateAndScroll",null);
|
|
1
|
+
import{__decorate}from"tslib";import{action,observable,makeObservable}from"mobx";import{flattenByProp,querySelector,GROUP_DEPTH,escapeHTMLAttrChars}from"../redoc-lib";import{SECTION_ATTR}from"../redoc-lib/src/services/constants";import{history as historyInst}from"../redoc-lib/src/services/HistoryService";import{VersionedSpecStore}from"./VersionedSpecStore";export class ProMenu{constructor(e,t,i,s){Object.defineProperty(this,"definition",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"scroll",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"history",{enumerable:!0,configurable:!0,writable:!0,value:s}),Object.defineProperty(this,"flatItems",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"items",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"activeRenderItemIdx",{enumerable:!0,configurable:!0,writable:!0,value:-1}),Object.defineProperty(this,"renderItems",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"activeItemIdx",{enumerable:!0,configurable:!0,writable:!0,value:-1}),Object.defineProperty(this,"sideBarOpened",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_unsubscribe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_hashUnsubscribe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"getItemById",{enumerable:!0,configurable:!0,writable:!0,value:e=>this.flatItems.find((t=>t.id===e))}),Object.defineProperty(this,"initOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:(e=this.history.currentId)=>{const[t]=e.split(this.options.deepLinkPrefix);if(!t)return;const i=this.flatItems.find((e=>e.id===t));i&&(this.activate(i,!1,!1,!1,e),i.active=!1)}}),Object.defineProperty(this,"updateOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:(e=this.history.currentId)=>{const[t]=e.split(this.options.deepLinkPrefix);if(!t)return;const i=this.flatItems.find((e=>e.id===t));i?this.activateAndScroll(i,!1,void 0,e):(this.scroll.prevOffsetY=0,this.scroll.scrollIntoViewBySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(t)}"]`))}}),Object.defineProperty(this,"updateVersionOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:e=>{if(!("versionsInfo"in this.definition))return;const[t]=e.split("/");let i=this.definition.versionsInfo.findIndex((e=>e.id===t));i<0&&(i=this.definition.versionsInfo.findIndex((e=>e.isDefault))),this.definition.activeVersionIdx!==i&&(this.definition.changeVersion(i<0?0:i),this.updateItemsByVersionChange(!1,e))}}),Object.defineProperty(this,"updateOnScroll",{enumerable:!0,configurable:!0,writable:!0,value:e=>{const t=e?1:-1;let i=this.activeItemIdx;for(;(-1!==i||e)&&!(i>=this.flatItems.length-1&&e);){if(e){let e=!1;const t=this.flatItems[i+1];switch(this.options.pagination){case"section":e=t&&("spec"===t.type||"group"===t.type||"tag"===t.type);break;case"item":e="section"!==(null==t?void 0:t.type)}const s=this.getElementAt(i+1);if(-1===i&&"tag"===this.flatItems[0].type&&(e=!1),this.scroll.isElementBellow(s)||e)break}else{const e=this.flatItems[i]&&this.flatItems[i].type,t="section"===this.options.pagination&&("spec"===e||"group"===e||"tag"===e)||"item"===this.options.pagination&&"section"!==e,s=this.getElementAt(i);if(!s||this.scroll.isElementAbove(s)||t)break}i+=t}const s=this.flatItems[i];"none"===this.options.pagination||"section"===this.options.pagination?s&&s.active||this.activate(s,!0,!0,!1):s&&"section"===s.type&&(s.active||this.activate(s,!0,!0,!1))}}),makeObservable(this),this.items=e.contentItems,this.flatItems=flattenByProp(this.items||[],"items"),this.flatItems.forEach(((e,t)=>e.absoluteIdx=t)),i.disableSidebar||this.subscribe(),this.flatItems.forEach(((e,t)=>normalizeItem(e,t,i.pagination,this.definition instanceof VersionedSpecStore,this.history))),this.renderItems=this.buildRenderItems(0),this.activeItemIdx=-1,this.activeRenderItemIdx=-1,this.definition instanceof VersionedSpecStore&&this.history.subscribe(this.updateVersionOnHistory)}static updateOnHistory(e=historyInst.currentId,t){e&&t.scrollIntoViewBySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(e)}"]`)}subscribe(){this._unsubscribe=this.scroll.subscribe(this.updateOnScroll),this._hashUnsubscribe=this.history.subscribe(this.updateOnHistory)}toggleSidebar(){this.sideBarOpened=!this.sideBarOpened}closeSidebar(){this.sideBarOpened=!1}getElementAt(e){const t=this.flatItems[e];return t&&querySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(t.id)}"]`)||null}getElementAtOrFirstChild(e){let t=this.flatItems[e];return t&&"group"===t.type&&(t=t.items[0]),t&&querySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(t.id)}"]`)||null}get activeItem(){return this.flatItems[this.activeItemIdx]||void 0}updateItemsByVersionChange(e,t){if(!("versionsInfo"in this.definition))return;const i=this.activeItem&&this.activeItem.active?this.activeItem.absoluteIdx:-1;t=t&&withoutVersion(t)||this.activeItem&&this.activeItem.active&&withoutVersion(this.activeItem.id)||"",this.deactivate(this.activeItem),this.items=this.definition.contentItems,this.flatItems=flattenByProp(this.items||[],"items"),this.flatItems.forEach(((e,t)=>normalizeItem(e,t,this.options.pagination,this.definition instanceof VersionedSpecStore,this.history)));const s=t?(this.flatItems.find((e=>withoutVersion(e.id)===t))||{absoluteIdx:-1}).absoluteIdx:-1;if(-1!==s&&"none"!==this.options.pagination||(this.renderItems=this.buildRenderItems(0)),this.activeItemIdx=-1,-1!==s)this.activate(this.flatItems[s],e);else if(-1!==i)this.activateAndScroll(this.flatItems[0],e);else if(e){const e=this.definition.versionsInfo[this.definition.activeVersionIdx];if(!this.history.currentId&&e.isDefault)return;this.history.replace(e.id)}}buildRenderItems(e){if("none"===this.options.pagination)return this.items;let t=this.flatItems[e];if(t||(t=this.flatItems[0]),"spec"===t.type)return this.buildRenderItems(e+1);if("section"===t.type){const e=[],i=getParentOfType(t,"tag");if("section"===this.options.pagination&&i)return[i];if("item"===this.options.pagination&&i)return[Object.assign(Object.assign({},i),{items:getLeadingSectionItems(i)})];const s=getParentSpecItem(t),n=(null==s?void 0:s.items)||this.items;for(let t=0;t<n.length&&"section"===n[t].type;t++)e.push(n[t]);return e}switch(this.options.pagination){case"section":if(("operation"===t.type||"schema"===t.type)&&t.parent)return[t.parent];if("group"!==t.type)return[t];case"item":return"operation"===t.type||"schema"===t.type?[t]:[Object.assign(Object.assign({},t),{items:getLeadingSectionItems(t)})];default:return[]}}activateBase(e,t=!0,i=!1,s){var n,o,r,a,l;if((null===(n=this.activeItem)||void 0===n?void 0:n.id)===(null==e?void 0:e.id)&&!s)return t&&e&&this.history.replace(encodeURI(e.id),i),void(e&&!e.active&&e.activate());if(e&&"group"===e.type)return;if(this.deactivate(this.activeItem),!e)return void this.history.replace("",i);if(e.depth<=GROUP_DEPTH)return;this.activeItemIdx=e.absoluteIdx,t&&this.history.replace(encodeURI(e.id),i),e.activate(),e.expand();const c=new URLSearchParams(s),d="request"===c.get("t"),h="response"===c.get("t"),u=c.get("c"),p=c.get("ct"),f=c.get("in"),m=c.get("path"),v=(null==m?void 0:m.split(this.options.deepLinkSeparator))||[],b=e;if(f){let e=b.parameters;for(const t of v){const i=null==e?void 0:e.find((e=>e.name===t));null==i||i.expand(),e=null===(o=null==i?void 0:i.schema)||void 0===o?void 0:o.fields}}else if(d){const e=null===(r=b.requestBody)||void 0===r?void 0:r.content;null===(a=b.activateMimeName)||void 0===a||a.call(b,p||b.activeMimeName),setTimeout((()=>{var t;return this.activateField(v,null===(t=null==e?void 0:e.active)||void 0===t?void 0:t.schema)}),0)}else if(h){const e=b.responses.find((e=>e.code===u));(null==e?void 0:e.expanded)||null==e||e.expand(),null===(l=b.activateMimeName)||void 0===l||l.call(b,p||b.activeMimeName),setTimeout((()=>{var t,i;return this.activateField(v,null===(i=null===(t=null==e?void 0:e.content)||void 0===t?void 0:t.active)||void 0===i?void 0:i.schema)}),0)}}activate(e,t=!0,i=!1,s=!0,n){if("none"===this.options.pagination)return this.activateBase(e,t,i,n),void(!e&&this.definition instanceof VersionedSpecStore&&this.history.replace(this.definition.currentVersionId,!0));if("group"!==(null==e?void 0:e.type)){if(e&&"item"===this.options.pagination&&"tag"===e.type&&!e.description){if(e.expanded)return void e.collapse();e.expand(),e=this.flatItems[e.absoluteIdx+1]}if(this.activateBase(e,e&&t,i,n),this.activeRenderItemIdx=e?e.absoluteIdx:this.activeRenderItemIdx,this.activeRenderItemIdx>=0){const e=this.buildRenderItems(this.activeRenderItemIdx);e.some(((e,t)=>e.id!==this.renderItems[t].id))&&(this.renderItems=e),this.renderItems[0]&&(this.activeRenderItemIdx=this.renderItems[0].absoluteIdx)}s&&setTimeout((()=>this.scrollToActive())),!e&&this.definition instanceof VersionedSpecStore&&this.history.replace(this.definition.currentVersionId,!0)}}activateField(e,t){var i;for(let s=0;s<e.length-1;s++){const n=e[s],o=s===e.length-1;if((null==t?void 0:t.hasType("array"))&&(null==t?void 0:t.items)&&(t=null==t?void 0:t.items),null==t?void 0:t.oneOf){const e=Number(n);if(isNaN(e))return;null==t||t.activateOneOf(e),t=null==t?void 0:t.oneOf[e];continue}(null==t?void 0:t.hasType("array"))&&(null==t?void 0:t.items)&&(t=null==t?void 0:t.items);const r=null===(i=null==t?void 0:t.fields)||void 0===i?void 0:i.find((e=>e.name===n));o||null==r||r.expand(),t=null==r?void 0:r.schema}}deactivate(e){if(void 0!==e)for(e.deactivate();void 0!==e;)e.collapse(),e=e.parent}activateAndScroll(e,t,i,s=""){const n=s.lastIndexOf(this.options.deepLinkPrefix),o=-1!==n?s.substring(n+1):s,r=e&&this.getItemById(e.id)||e;this.activate(r,t,i,!1,o),this.scrollToActive(o?s:""),r&&r.items.length||this.closeSidebar()}scrollToActive(e){e?setTimeout((()=>this.scroll.scrollIntoViewBySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(e)}"]`)),0):this.scroll.scrollIntoView(this.getElementAt(this.activeItemIdx))}dispose(){var e,t;null===(e=this._unsubscribe)||void 0===e||e.call(this),null===(t=this._hashUnsubscribe)||void 0===t||t.call(this)}}function withoutVersion(e){return e.split("/").slice(1).join("/")}function getParentSpecItem(e){for(;e;){if("spec"===e.type)return e;e=e.parent}}function getParentOfType(e,t){if(e&&e.parent)return e.parent.type===t?e.parent:getParentOfType(e.parent,t)}function getLeadingSectionItems(e){const t=[];for(const i of e.items){if("section"!==i.type)break;t.push(i)}return t}function normalizeItem(e,t,i,s,n){if(e.absoluteIdx=t,"none"!==i){const t=getParentOfType(e,"tag");if(e.parent&&t&&!("_id_normalized"in e)){if(s){const[i,s]=e.id.split("/"),n=withoutVersion(e.id);if("operation"===e.type&&!s.startsWith("operation"))return;e.id=i+"/"+withoutVersion(t.id)+"/"+n}else{if("operation"===e.type&&!e.id.startsWith("operation"))return;e.id=t.id+"/"+e.id}e._id_normalized=!0}}"group"!==e.type&&(e.href=n.linkForId(e.id))}__decorate([observable],ProMenu.prototype,"flatItems",void 0),__decorate([observable],ProMenu.prototype,"items",void 0),__decorate([observable],ProMenu.prototype,"activeRenderItemIdx",void 0),__decorate([observable.ref],ProMenu.prototype,"renderItems",void 0),__decorate([observable],ProMenu.prototype,"activeItemIdx",void 0),__decorate([observable],ProMenu.prototype,"sideBarOpened",void 0),__decorate([action],ProMenu.prototype,"toggleSidebar",null),__decorate([action],ProMenu.prototype,"closeSidebar",null),__decorate([action],ProMenu.prototype,"activateBase",null),__decorate([action],ProMenu.prototype,"activate",null),__decorate([action.bound],ProMenu.prototype,"activateAndScroll",null);
|
|
2
2
|
//# sourceMappingURL=ProMenu.js.map
|
|
@@ -35,6 +35,7 @@ export interface RedoclyReferenceDocsStandaloneProps {
|
|
|
35
35
|
activeItemId?: string;
|
|
36
36
|
activeSampleLanguage?: CodeSampleConfig['lang'];
|
|
37
37
|
activeDeepLink?: string;
|
|
38
|
+
onLoaded?: (e?: Error) => void;
|
|
38
39
|
}
|
|
39
40
|
export declare function RedoclyReferenceDocsStandalone(props: RedoclyReferenceDocsStandaloneProps): JSX.Element | null;
|
|
40
41
|
export {};
|
|
@@ -22,5 +22,5 @@ import{__decorate}from"tslib";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-ru
|
|
|
22
22
|
${ApiContentWrap} {
|
|
23
23
|
${({theme:e,showRightPanel:o,layout:t})=>mediaCSS({width:{[ZERO_BREAKPOINT]:"none",small:`calc(100% - ${e.sidebar.width})`},maxWidth:e.layout[t===LayoutVariant.THREE_PANEL&&o?LayoutVariant.THREE_PANEL:LayoutVariant.STACKED].maxWidth})};
|
|
24
24
|
}
|
|
25
|
-
`;let RedoclyReferenceDocs=class extends Component{constructor(e){super(e),Object.defineProperty(this,"_observer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_updatedItems",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"rootElementRef",{enumerable:!0,configurable:!0,writable:!0,value:createRef()}),Object.defineProperty(this,"handleClose",{enumerable:!0,configurable:!0,writable:!0,value:()=>this.props.store.tryItOut()}),this.state={searchPopUpShown:!1,searchPopUpValue:""}}componentDidMount(){var e,o;this.props.store.onDidMount(),null===(o=(e=this.props).onLoaded)||void 0===o||o.call(e),this._observer=reaction((()=>this.props.store.menu.renderItems),(()=>{this._updatedItems=!0}))}componentDidUpdate(){this._updatedItems&&(this._updatedItems=!1,this.props.store.menu.scrollToActive())}componentWillUnmount(){this.props.store.dispose(),this._observer()}render(){const{store:e,_forceRenderInfo:o}=this.props,{definition:t,menu:i,options:a,search:r,marker:n}=e,{hideDownloadButton:s,hideInfoSection:l,pagination:d,disableSidebar:c}=a,h=i.renderItems,p="none"===d||i.activeRenderItemIdx<=0;let u=!l&&p;u&&"none"!==d&&c&&h[0]&&"section"!==h[0].type&&(u=!1),o&&(u=!0);const m=!u&&null!==s&&!s&&p;return _jsxs(ProProviders,Object.assign({store:e},{children:[_jsx(Overlay,{l:e.l},void 0),_jsxs(RedocWrap,Object.assign({className:"redoc-wrap",ref:this.rootElementRef},{children:[_jsx(CssFixes,{whiteLabel:a.whiteLabel,showRightPanel:e.showRightPanel,layout:e.layout},void 0),e.tryItOperation&&_jsx(Console,{rootElement:this.rootElementRef.current,store:e,operation:e.tryItOperation,onClose:this.handleClose},void 0),!a.disableSidebar&&_jsxs(StickyResponsiveSidebar,Object.assign({menu:i,className:"menu-content"},{children:[!a.hideLogo&&_jsx(ApiLogo,{info:t.info},void 0),t instanceof VersionedSpecStore&&_jsx(VersionSwitcher,{spec:t,onChange:o=>{void 0!==o.idx&&t.changeVersion(o.idx),i.updateItemsByVersionChange(!0),e.tryItOut(void 0)}},void 0),!a.disableSearch&&_jsx(SearchField,{showPopUp:()=>this.setState({searchPopUpShown:!0}),searchValue:this.state.searchPopUpValue,marker:n,setSearchValue:e=>this.setState({searchPopUpValue:e})},void 0),_jsx(SideMenu,{menu:i},void 0)]}),void 0),_jsxs(ApiContentWrap,Object.assign({className:(e.isLoading?"loading ":"")+"api-content",layout:e.layout===LayoutVariant.THREE_PANEL&&e.showRightPanel?LayoutVariant.THREE_PANEL:LayoutVariant.STACKED},{children:[a.theme.layout.showDarkRightPanel&&e.showRightPanel&&e.layout!==LayoutVariant.STACKED&&_jsx(BackgroundStub,{},void 0),u&&_jsx(ApiInfo,{store:e},void 0),m&&_jsx(DownloadButtonWithLabel,{store:e},void 0),_jsx(ContentItems,{items:h,store:e},void 0),a.showNextButton&&_jsx(ContinueButton,{pagination:a.pagination,menu:i},void 0),this.props.children]}),void 0),_jsxs(ControlsWrap,{children:[_jsx(ToggleRightPanelButton,{store:e,isVisible:e.layout===LayoutVariant.THREE_PANEL},void 0),_jsx(ChangeViewButton,{store:e,isVisible:e.showRightPanel},void 0)]},void 0),_jsx(ProSearchBox,{search:r,marker:n,menu:i,onActivate:i.activateAndScroll.bind(i),options:a,shown:this.state.searchPopUpShown,hidePopUp:()=>this.setState({searchPopUpShown:!1}),showPopUp:()=>this.setState({searchPopUpShown:!0}),setSearchValue:e=>this.setState({searchPopUpValue:e}),searchValue:this.state.searchPopUpValue},void 0),a.theme.layout.showDarkRightPanel&&e.showRightPanel&&e.layout!==LayoutVariant.STACKED&&_jsx(BackgroundStubFix,{},void 0)]}),void 0)]}),void 0)}};RedoclyReferenceDocs=__decorate([observer],RedoclyReferenceDocs);export{RedoclyReferenceDocs};export function RedoclyReferenceDocsStandalone(e){const{definition:o,definitionUrl:t,options:i={},activeItemId:a,activeSampleLanguage:r,activeDeepLink:n}=e,
|
|
25
|
+
`;let RedoclyReferenceDocs=class extends Component{constructor(e){super(e),Object.defineProperty(this,"_observer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_updatedItems",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"rootElementRef",{enumerable:!0,configurable:!0,writable:!0,value:createRef()}),Object.defineProperty(this,"handleClose",{enumerable:!0,configurable:!0,writable:!0,value:()=>this.props.store.tryItOut()}),this.state={searchPopUpShown:!1,searchPopUpValue:""}}componentDidMount(){var e,o;this.props.store.onDidMount(),null===(o=(e=this.props).onLoaded)||void 0===o||o.call(e),this._observer=reaction((()=>this.props.store.menu.renderItems),(()=>{this._updatedItems=!0}))}componentDidUpdate(){this._updatedItems&&(this._updatedItems=!1,this.props.store.menu.scrollToActive())}componentWillUnmount(){this.props.store.dispose(),this._observer()}render(){const{store:e,_forceRenderInfo:o}=this.props,{definition:t,menu:i,options:a,search:r,marker:n}=e,{hideDownloadButton:s,hideInfoSection:l,pagination:d,disableSidebar:c}=a,h=i.renderItems,p="none"===d||i.activeRenderItemIdx<=0;let u=!l&&p;u&&"none"!==d&&c&&h[0]&&"section"!==h[0].type&&(u=!1),o&&(u=!0);const m=!u&&null!==s&&!s&&p;return _jsxs(ProProviders,Object.assign({store:e},{children:[_jsx(Overlay,{l:e.l},void 0),_jsxs(RedocWrap,Object.assign({className:"redoc-wrap",ref:this.rootElementRef},{children:[_jsx(CssFixes,{whiteLabel:a.whiteLabel,showRightPanel:e.showRightPanel,layout:e.layout},void 0),e.tryItOperation&&_jsx(Console,{rootElement:this.rootElementRef.current,store:e,operation:e.tryItOperation,onClose:this.handleClose},void 0),!a.disableSidebar&&_jsxs(StickyResponsiveSidebar,Object.assign({menu:i,className:"menu-content"},{children:[!a.hideLogo&&_jsx(ApiLogo,{info:t.info},void 0),t instanceof VersionedSpecStore&&_jsx(VersionSwitcher,{spec:t,onChange:o=>{void 0!==o.idx&&t.changeVersion(o.idx),i.updateItemsByVersionChange(!0),e.tryItOut(void 0)}},void 0),!a.disableSearch&&_jsx(SearchField,{showPopUp:()=>this.setState({searchPopUpShown:!0}),searchValue:this.state.searchPopUpValue,marker:n,setSearchValue:e=>this.setState({searchPopUpValue:e})},void 0),_jsx(SideMenu,{menu:i},void 0)]}),void 0),_jsxs(ApiContentWrap,Object.assign({className:(e.isLoading?"loading ":"")+"api-content",layout:e.layout===LayoutVariant.THREE_PANEL&&e.showRightPanel?LayoutVariant.THREE_PANEL:LayoutVariant.STACKED},{children:[a.theme.layout.showDarkRightPanel&&e.showRightPanel&&e.layout!==LayoutVariant.STACKED&&_jsx(BackgroundStub,{},void 0),u&&_jsx(ApiInfo,{store:e},void 0),m&&_jsx(DownloadButtonWithLabel,{store:e},void 0),_jsx(ContentItems,{items:h,store:e},void 0),a.showNextButton&&_jsx(ContinueButton,{pagination:a.pagination,menu:i},void 0),this.props.children]}),void 0),_jsxs(ControlsWrap,{children:[_jsx(ToggleRightPanelButton,{store:e,isVisible:e.layout===LayoutVariant.THREE_PANEL},void 0),_jsx(ChangeViewButton,{store:e,isVisible:e.showRightPanel},void 0)]},void 0),_jsx(ProSearchBox,{search:r,marker:n,menu:i,onActivate:i.activateAndScroll.bind(i),options:a,shown:this.state.searchPopUpShown,hidePopUp:()=>this.setState({searchPopUpShown:!1}),showPopUp:()=>this.setState({searchPopUpShown:!0}),setSearchValue:e=>this.setState({searchPopUpValue:e}),searchValue:this.state.searchPopUpValue},void 0),a.theme.layout.showDarkRightPanel&&e.showRightPanel&&e.layout!==LayoutVariant.STACKED&&_jsx(BackgroundStubFix,{},void 0)]}),void 0)]}),void 0)}};RedoclyReferenceDocs=__decorate([observer],RedoclyReferenceDocs);export{RedoclyReferenceDocs};export function RedoclyReferenceDocsStandalone(e){const{definition:o,definitionUrl:t,options:i={},activeItemId:a,activeSampleLanguage:r,activeDeepLink:n,onLoaded:s}=e,l=argValueToBoolean(i.hideLoading,!1),d=new RedocNormalizedOptions(i),c=_jsx(ProStoreProvider,Object.assign({definition:o,definitionUrl:t,options:i,activeItemId:a,activeSampleLanguage:r,activeDeepLink:n,onLoaded:s},{children:({loading:e,store:o})=>e?l?null:_jsx(Loading,{color:d.theme.colors.primary.main},void 0):_jsx(RedoclyReferenceDocs,{store:o},void 0)}),void 0);return i.disableErrorBoundary?c:_jsx(ErrorBoundary,{children:c},void 0)}
|
|
26
26
|
//# sourceMappingURL=RedoclyReferenceDocs.js.map
|
|
@@ -17,7 +17,8 @@ interface StoreProviderProps {
|
|
|
17
17
|
activeItemId?: string;
|
|
18
18
|
activeSampleLanguage?: CodeSampleConfig['lang'] | string;
|
|
19
19
|
activeDeepLink?: string;
|
|
20
|
+
onLoaded?: (e?: Error) => void;
|
|
20
21
|
}
|
|
21
|
-
export declare const ProStoreProvider: ({ definitions, options, definitionUrl, definition, activeItemId, activeSampleLanguage, activeDeepLink, children, }: StoreProviderProps) => JSX.Element | null;
|
|
22
|
+
export declare const ProStoreProvider: ({ definitions, options, definitionUrl, definition, activeItemId, activeSampleLanguage, activeDeepLink, children, onLoaded, }: StoreProviderProps) => JSX.Element | null;
|
|
22
23
|
export declare function loadSpecs({ versions }: SpecVersions): Promise<void>;
|
|
23
24
|
export {};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import isDeepEqual from"fast-deep-equal";import{createContext,useEffect,useMemo,useRef,useState}from"react";import{loadAndBundleDefinition}from"../redoc-lib";import{ProStore}from"../services/ProStore";import{FakeHistoryService}from"../services";export const{Provider:Provider,Consumer:Consumer}=createContext(void 0);export const ProStoreProvider=({definitions:e,options:
|
|
1
|
+
import isDeepEqual from"fast-deep-equal";import{createContext,useEffect,useMemo,useRef,useState}from"react";import{loadAndBundleDefinition}from"../redoc-lib";import{ProStore}from"../services/ProStore";import{FakeHistoryService}from"../services";export const{Provider:Provider,Consumer:Consumer}=createContext(void 0);export const ProStoreProvider=({definitions:e,options:n,definitionUrl:t,definition:o,activeItemId:i,activeSampleLanguage:r,activeDeepLink:s,children:a,onLoaded:c})=>{const[,u]=useState(),[d,l]=useState(!0),[f,p]=useState(null);useEffect((()=>{!async function(){l(!0);try{p(e?await loadMany(e):await loadSingle(o,t,n))}catch(e){null==c||c(e),u((()=>{throw e}))}}()}),[e,o,t,n]);const m=useMemo((()=>{var e,o,i;if(!f)return;const r=new ProStore(f,t,n);return(null===(e=r.options.hooks)||void 0===e?void 0:e.onInit)&&(null===(i=null===(o=r.options.hooks)||void 0===o?void 0:o.onInit)||void 0===i||i.call(o,{store:r})),r}),useDeepCompareMemoize([f,n]));return useEffect((()=>{if(m)return l(!1),()=>m.dispose()}),[m]),useEffect((()=>{var e;if(!m)return;if(!i)return;const n=(null==i?void 0:i.split(m.options.deepLinkPrefix)[0])||(null===(e=m.menu.flatItems[m.menu.activeItemIdx])||void 0===e?void 0:e.id),t=m.menu.flatItems.find((e=>e.id===n)),o=s?n+m.options.deepLinkPrefix+s:void 0;o&&m.menu.history instanceof FakeHistoryService&&m.menu.history.replaceForField(o),m.menu.activateAndScroll(t,!0,!1,o)}),[i,s,m]),useEffect((()=>{m&&r&&m.setActiveSampleLanguage(r),m&&c&&c()}),[r,c,m]),a({loading:d,store:m})};function fixSpec(e){const n=e.components&&e.components.securitySchemes||{};for(const e of Object.keys(n)){const t=n[e];t["x-type"]&&(t.type=t["x-type"]),t["x-scheme"]&&(t.scheme=t["x-scheme"])}}async function loadMany(e){return await loadSpecs(e||{}),e}async function loadSingle(e,n,t){let o;if(null==t?void 0:t.skipBundleAndConvert){if(!e)throw new Error('spec must be specified when using "skipBundleAndConvert"');o=e}else o=await loadAndBundleDefinition(e||n);const i=null==t?void 0:t.unstable_externalDescription;if(i)try{const e=await fetch(i);o.info.description=await e.text()}catch(e){console.warn(`Failed to load external description from ${i}: ${e.message}`)}try{fixSpec(o)}catch(e){}return o}function loadAndBundleSpecOrMd(e,n){return e.endsWith(".md")?loadAndBundleDefinition({openapi:"3.0.0",info:{title:n||"",version:"1.0",description:{$ref:e}},paths:{}}):loadAndBundleDefinition(e)}export async function loadSpecs({versions:e}){if(Array.isArray(e))for(const n of e)n.url&&(n.spec=await loadAndBundleSpecOrMd(n.url))}function useDeepCompareMemoize(e){const n=useRef(),t=useRef(0);return isDeepEqual(e,n.current)||(n.current=e,t.current+=1),[t.current]}
|
|
2
2
|
//# sourceMappingURL=StoreProvider.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{action,observable,makeObservable}from"mobx";import{flattenByProp,querySelector,GROUP_DEPTH,escapeHTMLAttrChars}from"../redoc-lib";import{SECTION_ATTR}from"../redoc-lib/src/services/constants";import{history as historyInst}from"../redoc-lib/src/services/HistoryService";import{VersionedSpecStore}from"./VersionedSpecStore";export class ProMenu{constructor(e,t,i,s){Object.defineProperty(this,"definition",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"scroll",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"history",{enumerable:!0,configurable:!0,writable:!0,value:s}),Object.defineProperty(this,"flatItems",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"items",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"activeRenderItemIdx",{enumerable:!0,configurable:!0,writable:!0,value:-1}),Object.defineProperty(this,"renderItems",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"activeItemIdx",{enumerable:!0,configurable:!0,writable:!0,value:-1}),Object.defineProperty(this,"sideBarOpened",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_unsubscribe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_hashUnsubscribe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"getItemById",{enumerable:!0,configurable:!0,writable:!0,value:e=>this.flatItems.find((t=>t.id===e))}),Object.defineProperty(this,"initOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:(e=this.history.currentId)=>{const[t]=e.split(this.options.deepLinkPrefix);if(!t)return;const i=this.flatItems.find((e=>e.id===t));i&&(this.activate(i,!1,!1,!1,e),i.active=!1)}}),Object.defineProperty(this,"updateOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:(e=this.history.currentId)=>{const[t]=e.split(this.options.deepLinkPrefix);if(!t)return;const i=this.flatItems.find((e=>e.id===t));i?this.activateAndScroll(i,!1,void 0,e):(this.scroll.prevOffsetY=0,this.scroll.scrollIntoViewBySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(t)}"]`))}}),Object.defineProperty(this,"updateVersionOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:e=>{if(!("versionsInfo"in this.definition))return;const[t]=e.split("/");let i=this.definition.versionsInfo.findIndex((e=>e.id===t));i<0&&(i=this.definition.versionsInfo.findIndex((e=>e.isDefault))),this.definition.activeVersionIdx!==i&&(this.definition.changeVersion(i<0?0:i),this.updateItemsByVersionChange(!1,e))}}),Object.defineProperty(this,"updateOnScroll",{enumerable:!0,configurable:!0,writable:!0,value:e=>{const t=e?1:-1;let i=this.activeItemIdx;for(;(-1!==i||e)&&!(i>=this.flatItems.length-1&&e);){if(e){let e=!1;const t=this.flatItems[i+1];switch(this.options.pagination){case"section":e=t&&("spec"===t.type||"group"===t.type||"tag"===t.type);break;case"item":e="section"!==(null==t?void 0:t.type)}const s=this.getElementAt(i+1);if(-1===i&&"tag"===this.flatItems[0].type&&(e=!1),this.scroll.isElementBellow(s)||e)break}else{const e=this.flatItems[i]&&this.flatItems[i].type,t="section"===this.options.pagination&&("spec"===e||"group"===e||"tag"===e)||"item"===this.options.pagination&&"section"!==e,s=this.getElementAt(i);if(!s||this.scroll.isElementAbove(s)||t)break}i+=t}const s=this.flatItems[i];"none"===this.options.pagination||"section"===this.options.pagination?s&&s.active||this.activate(s,!0,!0,!1):s&&"section"===s.type&&(s.active||this.activate(s,!0,!0,!1))}}),makeObservable(this),this.items=e.contentItems,this.flatItems=flattenByProp(this.items||[],"items"),this.flatItems.forEach(((e,t)=>e.absoluteIdx=t)),i.disableSidebar||this.subscribe(),this.flatItems.forEach(((e,t)=>normalizeItem(e,t,i.pagination,this.definition instanceof VersionedSpecStore,this.history))),this.renderItems=this.buildRenderItems(0),this.activeItemIdx=-1,this.activeRenderItemIdx=-1,this.definition instanceof VersionedSpecStore&&this.history.subscribe(this.updateVersionOnHistory)}static updateOnHistory(e=historyInst.currentId,t){e&&t.scrollIntoViewBySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(e)}"]`)}subscribe(){this._unsubscribe=this.scroll.subscribe(this.updateOnScroll),this._hashUnsubscribe=this.history.subscribe(this.updateOnHistory)}toggleSidebar(){this.sideBarOpened=!this.sideBarOpened}closeSidebar(){this.sideBarOpened=!1}getElementAt(e){const t=this.flatItems[e];return t&&querySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(t.id)}"]`)||null}getElementAtOrFirstChild(e){let t=this.flatItems[e];return t&&"group"===t.type&&(t=t.items[0]),t&&querySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(t.id)}"]`)||null}get activeItem(){return this.flatItems[this.activeItemIdx]||void 0}updateItemsByVersionChange(e,t){if(!("versionsInfo"in this.definition))return;const i=this.activeItem&&this.activeItem.active?this.activeItem.absoluteIdx:-1;t=t&&withoutVersion(t)||this.activeItem&&this.activeItem.active&&withoutVersion(this.activeItem.id)||"",this.deactivate(this.activeItem),this.items=this.definition.contentItems,this.flatItems=flattenByProp(this.items||[],"items"),this.flatItems.forEach(((e,t)=>normalizeItem(e,t,this.options.pagination,this.definition instanceof VersionedSpecStore,this.history)));const s=t?(this.flatItems.find((e=>withoutVersion(e.id)===t))||{absoluteIdx:-1}).absoluteIdx:-1;if(-1!==s&&"none"!==this.options.pagination||(this.renderItems=this.buildRenderItems(0)),this.activeItemIdx=-1,-1!==s)this.activate(this.flatItems[s],e);else if(-1!==i)this.activateAndScroll(this.flatItems[0],e);else if(e){const e=this.definition.versionsInfo[this.definition.activeVersionIdx];if(!this.history.currentId&&e.isDefault)return;this.history.replace(e.id)}}buildRenderItems(e){if("none"===this.options.pagination)return this.items;let t=this.flatItems[e];if(t||(t=this.flatItems[0]),"spec"===t.type)return this.buildRenderItems(e+1);if("section"===t.type){const e=[],i=getParentOfType(t,"tag");if("section"===this.options.pagination&&i)return[i];if("item"===this.options.pagination&&i)return[Object.assign(Object.assign({},i),{items:getLeadingSectionItems(i)})];const s=getParentSpecItem(t),n=(null==s?void 0:s.items)||this.items;for(let t=0;t<n.length&&"section"===n[t].type;t++)e.push(n[t]);return e}switch(this.options.pagination){case"section":if(("operation"===t.type||"schema"===t.type)&&t.parent)return[t.parent];if("group"!==t.type)return[t];case"item":return"operation"===t.type||"schema"===t.type?[t]:[Object.assign(Object.assign({},t),{items:getLeadingSectionItems(t)})];default:return[]}}activateBase(e,t=!0,i=!1,s){var n,o,r,a,l;if((null===(n=this.activeItem)||void 0===n?void 0:n.id)===(null==e?void 0:e.id)&&!s)return t&&e&&this.history.replace(encodeURI(e.id),i),void(e&&!e.active&&e.activate());if(e&&"group"===e.type)return;if(this.deactivate(this.activeItem),!e)return void this.history.replace("",i);if(e.depth<=GROUP_DEPTH)return;this.activeItemIdx=e.absoluteIdx,t&&this.history.replace(encodeURI(e.id),i),e.activate(),e.expand();const c=new URLSearchParams(s),d="request"===c.get("t"),h="response"===c.get("t"),u=c.get("c"),p=c.get("ct"),f=c.get("in"),m=c.get("path"),v=(null==m?void 0:m.split(this.options.deepLinkSeparator))||[],b=e;if(f){let e=b.parameters;for(const t of v){const i=null==e?void 0:e.find((e=>e.name===t));null==i||i.expand(),e=null===(o=null==i?void 0:i.schema)||void 0===o?void 0:o.fields}}else if(d){const e=null===(r=b.requestBody)||void 0===r?void 0:r.content;null===(a=b.activateMimeName)||void 0===a||a.call(b,p||b.activeMimeName),setTimeout((()=>{var t;return this.activateField(v,null===(t=null==e?void 0:e.active)||void 0===t?void 0:t.schema)}),0)}else if(h){const e=b.responses.find((e=>e.code===u));(null==e?void 0:e.expanded)||null==e||e.expand(),null===(l=b.activateMimeName)||void 0===l||l.call(b,p||b.activeMimeName),setTimeout((()=>{var t,i;return this.activateField(v,null===(i=null===(t=null==e?void 0:e.content)||void 0===t?void 0:t.active)||void 0===i?void 0:i.schema)}),0)}}activate(e,t=!0,i=!1,s=!0,n){if("none"===this.options.pagination)return this.activateBase(e,t,i,n),void(!e&&this.definition instanceof VersionedSpecStore&&this.history.replace(this.definition.currentVersionId,!0));if("group"!==(null==e?void 0:e.type)){if(e&&"item"===this.options.pagination&&"tag"===e.type&&!e.description){if(e.expanded)return void e.collapse();e.expand(),e=this.flatItems[e.absoluteIdx+1]}if(this.activateBase(e,e&&t,i,n),this.activeRenderItemIdx=e?e.absoluteIdx:this.activeRenderItemIdx,this.activeRenderItemIdx>=0){const e=this.buildRenderItems(this.activeRenderItemIdx);e.some(((e,t)=>e.id!==this.renderItems[t].id))&&(this.renderItems=e),this.renderItems[0]&&(this.activeRenderItemIdx=this.renderItems[0].absoluteIdx)}s&&setTimeout((()=>this.scrollToActive())),!e&&this.definition instanceof VersionedSpecStore&&this.history.replace(this.definition.currentVersionId,!0)}}activateField(e,t){var i;for(let s=0;s<e.length-1;s++){const n=e[s],o=s===e.length-1;if((null==t?void 0:t.hasType("array"))&&(null==t?void 0:t.items)&&(t=null==t?void 0:t.items),null==t?void 0:t.oneOf){const e=Number(n);if(isNaN(e))return;null==t||t.activateOneOf(e),t=null==t?void 0:t.oneOf[e];continue}(null==t?void 0:t.hasType("array"))&&(null==t?void 0:t.items)&&(t=null==t?void 0:t.items);const r=null===(i=null==t?void 0:t.fields)||void 0===i?void 0:i.find((e=>e.name===n));o||null==r||r.expand(),t=null==r?void 0:r.schema}}deactivate(e){if(void 0!==e)for(e.deactivate();void 0!==e;)e.collapse(),e=e.parent}activateAndScroll(e,t,i,s=""){const[,n]=s.split(this.options.deepLinkPrefix),o=e&&this.getItemById(e.id)||e;this.activate(o,t,i,!1,n),this.scrollToActive(n?s:""),o&&o.items.length||this.closeSidebar()}scrollToActive(e){e?setTimeout((()=>this.scroll.scrollIntoViewBySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(e)}"]`)),0):this.scroll.scrollIntoView(this.getElementAt(this.activeItemIdx))}dispose(){var e,t;null===(e=this._unsubscribe)||void 0===e||e.call(this),null===(t=this._hashUnsubscribe)||void 0===t||t.call(this)}}function withoutVersion(e){return e.split("/").slice(1).join("/")}function getParentSpecItem(e){for(;e;){if("spec"===e.type)return e;e=e.parent}}function getParentOfType(e,t){if(e&&e.parent)return e.parent.type===t?e.parent:getParentOfType(e.parent,t)}function getLeadingSectionItems(e){const t=[];for(const i of e.items){if("section"!==i.type)break;t.push(i)}return t}function normalizeItem(e,t,i,s,n){if(e.absoluteIdx=t,"none"!==i){const t=getParentOfType(e,"tag");if(e.parent&&t&&!("_id_normalized"in e)){if(s){const[i,s]=e.id.split("/"),n=withoutVersion(e.id);if("operation"===e.type&&!s.startsWith("operation"))return;e.id=i+"/"+withoutVersion(t.id)+"/"+n}else{if("operation"===e.type&&!e.id.startsWith("operation"))return;e.id=t.id+"/"+e.id}e._id_normalized=!0}}"group"!==e.type&&(e.href=n.linkForId(e.id))}__decorate([observable],ProMenu.prototype,"flatItems",void 0),__decorate([observable],ProMenu.prototype,"items",void 0),__decorate([observable],ProMenu.prototype,"activeRenderItemIdx",void 0),__decorate([observable.ref],ProMenu.prototype,"renderItems",void 0),__decorate([observable],ProMenu.prototype,"activeItemIdx",void 0),__decorate([observable],ProMenu.prototype,"sideBarOpened",void 0),__decorate([action],ProMenu.prototype,"toggleSidebar",null),__decorate([action],ProMenu.prototype,"closeSidebar",null),__decorate([action],ProMenu.prototype,"activateBase",null),__decorate([action],ProMenu.prototype,"activate",null),__decorate([action.bound],ProMenu.prototype,"activateAndScroll",null);
|
|
1
|
+
import{__decorate}from"tslib";import{action,observable,makeObservable}from"mobx";import{flattenByProp,querySelector,GROUP_DEPTH,escapeHTMLAttrChars}from"../redoc-lib";import{SECTION_ATTR}from"../redoc-lib/src/services/constants";import{history as historyInst}from"../redoc-lib/src/services/HistoryService";import{VersionedSpecStore}from"./VersionedSpecStore";export class ProMenu{constructor(e,t,i,s){Object.defineProperty(this,"definition",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"scroll",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"history",{enumerable:!0,configurable:!0,writable:!0,value:s}),Object.defineProperty(this,"flatItems",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"items",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"activeRenderItemIdx",{enumerable:!0,configurable:!0,writable:!0,value:-1}),Object.defineProperty(this,"renderItems",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"activeItemIdx",{enumerable:!0,configurable:!0,writable:!0,value:-1}),Object.defineProperty(this,"sideBarOpened",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_unsubscribe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_hashUnsubscribe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"getItemById",{enumerable:!0,configurable:!0,writable:!0,value:e=>this.flatItems.find((t=>t.id===e))}),Object.defineProperty(this,"initOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:(e=this.history.currentId)=>{const[t]=e.split(this.options.deepLinkPrefix);if(!t)return;const i=this.flatItems.find((e=>e.id===t));i&&(this.activate(i,!1,!1,!1,e),i.active=!1)}}),Object.defineProperty(this,"updateOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:(e=this.history.currentId)=>{const[t]=e.split(this.options.deepLinkPrefix);if(!t)return;const i=this.flatItems.find((e=>e.id===t));i?this.activateAndScroll(i,!1,void 0,e):(this.scroll.prevOffsetY=0,this.scroll.scrollIntoViewBySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(t)}"]`))}}),Object.defineProperty(this,"updateVersionOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:e=>{if(!("versionsInfo"in this.definition))return;const[t]=e.split("/");let i=this.definition.versionsInfo.findIndex((e=>e.id===t));i<0&&(i=this.definition.versionsInfo.findIndex((e=>e.isDefault))),this.definition.activeVersionIdx!==i&&(this.definition.changeVersion(i<0?0:i),this.updateItemsByVersionChange(!1,e))}}),Object.defineProperty(this,"updateOnScroll",{enumerable:!0,configurable:!0,writable:!0,value:e=>{const t=e?1:-1;let i=this.activeItemIdx;for(;(-1!==i||e)&&!(i>=this.flatItems.length-1&&e);){if(e){let e=!1;const t=this.flatItems[i+1];switch(this.options.pagination){case"section":e=t&&("spec"===t.type||"group"===t.type||"tag"===t.type);break;case"item":e="section"!==(null==t?void 0:t.type)}const s=this.getElementAt(i+1);if(-1===i&&"tag"===this.flatItems[0].type&&(e=!1),this.scroll.isElementBellow(s)||e)break}else{const e=this.flatItems[i]&&this.flatItems[i].type,t="section"===this.options.pagination&&("spec"===e||"group"===e||"tag"===e)||"item"===this.options.pagination&&"section"!==e,s=this.getElementAt(i);if(!s||this.scroll.isElementAbove(s)||t)break}i+=t}const s=this.flatItems[i];"none"===this.options.pagination||"section"===this.options.pagination?s&&s.active||this.activate(s,!0,!0,!1):s&&"section"===s.type&&(s.active||this.activate(s,!0,!0,!1))}}),makeObservable(this),this.items=e.contentItems,this.flatItems=flattenByProp(this.items||[],"items"),this.flatItems.forEach(((e,t)=>e.absoluteIdx=t)),i.disableSidebar||this.subscribe(),this.flatItems.forEach(((e,t)=>normalizeItem(e,t,i.pagination,this.definition instanceof VersionedSpecStore,this.history))),this.renderItems=this.buildRenderItems(0),this.activeItemIdx=-1,this.activeRenderItemIdx=-1,this.definition instanceof VersionedSpecStore&&this.history.subscribe(this.updateVersionOnHistory)}static updateOnHistory(e=historyInst.currentId,t){e&&t.scrollIntoViewBySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(e)}"]`)}subscribe(){this._unsubscribe=this.scroll.subscribe(this.updateOnScroll),this._hashUnsubscribe=this.history.subscribe(this.updateOnHistory)}toggleSidebar(){this.sideBarOpened=!this.sideBarOpened}closeSidebar(){this.sideBarOpened=!1}getElementAt(e){const t=this.flatItems[e];return t&&querySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(t.id)}"]`)||null}getElementAtOrFirstChild(e){let t=this.flatItems[e];return t&&"group"===t.type&&(t=t.items[0]),t&&querySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(t.id)}"]`)||null}get activeItem(){return this.flatItems[this.activeItemIdx]||void 0}updateItemsByVersionChange(e,t){if(!("versionsInfo"in this.definition))return;const i=this.activeItem&&this.activeItem.active?this.activeItem.absoluteIdx:-1;t=t&&withoutVersion(t)||this.activeItem&&this.activeItem.active&&withoutVersion(this.activeItem.id)||"",this.deactivate(this.activeItem),this.items=this.definition.contentItems,this.flatItems=flattenByProp(this.items||[],"items"),this.flatItems.forEach(((e,t)=>normalizeItem(e,t,this.options.pagination,this.definition instanceof VersionedSpecStore,this.history)));const s=t?(this.flatItems.find((e=>withoutVersion(e.id)===t))||{absoluteIdx:-1}).absoluteIdx:-1;if(-1!==s&&"none"!==this.options.pagination||(this.renderItems=this.buildRenderItems(0)),this.activeItemIdx=-1,-1!==s)this.activate(this.flatItems[s],e);else if(-1!==i)this.activateAndScroll(this.flatItems[0],e);else if(e){const e=this.definition.versionsInfo[this.definition.activeVersionIdx];if(!this.history.currentId&&e.isDefault)return;this.history.replace(e.id)}}buildRenderItems(e){if("none"===this.options.pagination)return this.items;let t=this.flatItems[e];if(t||(t=this.flatItems[0]),"spec"===t.type)return this.buildRenderItems(e+1);if("section"===t.type){const e=[],i=getParentOfType(t,"tag");if("section"===this.options.pagination&&i)return[i];if("item"===this.options.pagination&&i)return[Object.assign(Object.assign({},i),{items:getLeadingSectionItems(i)})];const s=getParentSpecItem(t),n=(null==s?void 0:s.items)||this.items;for(let t=0;t<n.length&&"section"===n[t].type;t++)e.push(n[t]);return e}switch(this.options.pagination){case"section":if(("operation"===t.type||"schema"===t.type)&&t.parent)return[t.parent];if("group"!==t.type)return[t];case"item":return"operation"===t.type||"schema"===t.type?[t]:[Object.assign(Object.assign({},t),{items:getLeadingSectionItems(t)})];default:return[]}}activateBase(e,t=!0,i=!1,s){var n,o,r,a,l;if((null===(n=this.activeItem)||void 0===n?void 0:n.id)===(null==e?void 0:e.id)&&!s)return t&&e&&this.history.replace(encodeURI(e.id),i),void(e&&!e.active&&e.activate());if(e&&"group"===e.type)return;if(this.deactivate(this.activeItem),!e)return void this.history.replace("",i);if(e.depth<=GROUP_DEPTH)return;this.activeItemIdx=e.absoluteIdx,t&&this.history.replace(encodeURI(e.id),i),e.activate(),e.expand();const c=new URLSearchParams(s),d="request"===c.get("t"),h="response"===c.get("t"),u=c.get("c"),p=c.get("ct"),f=c.get("in"),m=c.get("path"),v=(null==m?void 0:m.split(this.options.deepLinkSeparator))||[],b=e;if(f){let e=b.parameters;for(const t of v){const i=null==e?void 0:e.find((e=>e.name===t));null==i||i.expand(),e=null===(o=null==i?void 0:i.schema)||void 0===o?void 0:o.fields}}else if(d){const e=null===(r=b.requestBody)||void 0===r?void 0:r.content;null===(a=b.activateMimeName)||void 0===a||a.call(b,p||b.activeMimeName),setTimeout((()=>{var t;return this.activateField(v,null===(t=null==e?void 0:e.active)||void 0===t?void 0:t.schema)}),0)}else if(h){const e=b.responses.find((e=>e.code===u));(null==e?void 0:e.expanded)||null==e||e.expand(),null===(l=b.activateMimeName)||void 0===l||l.call(b,p||b.activeMimeName),setTimeout((()=>{var t,i;return this.activateField(v,null===(i=null===(t=null==e?void 0:e.content)||void 0===t?void 0:t.active)||void 0===i?void 0:i.schema)}),0)}}activate(e,t=!0,i=!1,s=!0,n){if("none"===this.options.pagination)return this.activateBase(e,t,i,n),void(!e&&this.definition instanceof VersionedSpecStore&&this.history.replace(this.definition.currentVersionId,!0));if("group"!==(null==e?void 0:e.type)){if(e&&"item"===this.options.pagination&&"tag"===e.type&&!e.description){if(e.expanded)return void e.collapse();e.expand(),e=this.flatItems[e.absoluteIdx+1]}if(this.activateBase(e,e&&t,i,n),this.activeRenderItemIdx=e?e.absoluteIdx:this.activeRenderItemIdx,this.activeRenderItemIdx>=0){const e=this.buildRenderItems(this.activeRenderItemIdx);e.some(((e,t)=>e.id!==this.renderItems[t].id))&&(this.renderItems=e),this.renderItems[0]&&(this.activeRenderItemIdx=this.renderItems[0].absoluteIdx)}s&&setTimeout((()=>this.scrollToActive())),!e&&this.definition instanceof VersionedSpecStore&&this.history.replace(this.definition.currentVersionId,!0)}}activateField(e,t){var i;for(let s=0;s<e.length-1;s++){const n=e[s],o=s===e.length-1;if((null==t?void 0:t.hasType("array"))&&(null==t?void 0:t.items)&&(t=null==t?void 0:t.items),null==t?void 0:t.oneOf){const e=Number(n);if(isNaN(e))return;null==t||t.activateOneOf(e),t=null==t?void 0:t.oneOf[e];continue}(null==t?void 0:t.hasType("array"))&&(null==t?void 0:t.items)&&(t=null==t?void 0:t.items);const r=null===(i=null==t?void 0:t.fields)||void 0===i?void 0:i.find((e=>e.name===n));o||null==r||r.expand(),t=null==r?void 0:r.schema}}deactivate(e){if(void 0!==e)for(e.deactivate();void 0!==e;)e.collapse(),e=e.parent}activateAndScroll(e,t,i,s=""){const n=s.lastIndexOf(this.options.deepLinkPrefix),o=-1!==n?s.substring(n+1):s,r=e&&this.getItemById(e.id)||e;this.activate(r,t,i,!1,o),this.scrollToActive(o?s:""),r&&r.items.length||this.closeSidebar()}scrollToActive(e){e?setTimeout((()=>this.scroll.scrollIntoViewBySelector(`[${SECTION_ATTR}="${escapeHTMLAttrChars(e)}"]`)),0):this.scroll.scrollIntoView(this.getElementAt(this.activeItemIdx))}dispose(){var e,t;null===(e=this._unsubscribe)||void 0===e||e.call(this),null===(t=this._hashUnsubscribe)||void 0===t||t.call(this)}}function withoutVersion(e){return e.split("/").slice(1).join("/")}function getParentSpecItem(e){for(;e;){if("spec"===e.type)return e;e=e.parent}}function getParentOfType(e,t){if(e&&e.parent)return e.parent.type===t?e.parent:getParentOfType(e.parent,t)}function getLeadingSectionItems(e){const t=[];for(const i of e.items){if("section"!==i.type)break;t.push(i)}return t}function normalizeItem(e,t,i,s,n){if(e.absoluteIdx=t,"none"!==i){const t=getParentOfType(e,"tag");if(e.parent&&t&&!("_id_normalized"in e)){if(s){const[i,s]=e.id.split("/"),n=withoutVersion(e.id);if("operation"===e.type&&!s.startsWith("operation"))return;e.id=i+"/"+withoutVersion(t.id)+"/"+n}else{if("operation"===e.type&&!e.id.startsWith("operation"))return;e.id=t.id+"/"+e.id}e._id_normalized=!0}}"group"!==e.type&&(e.href=n.linkForId(e.id))}__decorate([observable],ProMenu.prototype,"flatItems",void 0),__decorate([observable],ProMenu.prototype,"items",void 0),__decorate([observable],ProMenu.prototype,"activeRenderItemIdx",void 0),__decorate([observable.ref],ProMenu.prototype,"renderItems",void 0),__decorate([observable],ProMenu.prototype,"activeItemIdx",void 0),__decorate([observable],ProMenu.prototype,"sideBarOpened",void 0),__decorate([action],ProMenu.prototype,"toggleSidebar",null),__decorate([action],ProMenu.prototype,"closeSidebar",null),__decorate([action],ProMenu.prototype,"activateBase",null),__decorate([action],ProMenu.prototype,"activate",null),__decorate([action.bound],ProMenu.prototype,"activateAndScroll",null);
|
|
2
2
|
//# sourceMappingURL=ProMenu.js.map
|