@redocly/reference-docs 2.4.0-rc.2 → 2.4.0-rc.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -12,6 +12,7 @@ export declare const MenuExternalLink: (props: React.PropsWithChildren<{
12
12
  export declare const MenuItem: (props: React.PropsWithChildren<MenuItemProps>) => JSX.Element;
13
13
  export interface OperationMenuItemContentProps {
14
14
  item: OperationModel;
15
+ withoutChildren?: boolean;
15
16
  }
16
17
  export declare const ProOperationMenuItemContent: React.ForwardRefExoticComponent<OperationMenuItemContentProps & React.RefAttributes<HTMLLabelElement>>;
17
18
  export declare const MenuItemPath: import("styled-components").StyledComponent<"code", import("../../theme").ResolvedThemeInterface, {
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MenuItemPath=exports.ProOperationMenuItemContent=exports.MenuItem=exports.MenuExternalLink=void 0;var tslib_1=require("tslib"),mobx_react_1=require("mobx-react"),React=(0,tslib_1.__importStar)(require("react")),icons_1=require("../../common-elements/icons"),services_1=require("../../services"),openapi_1=require("../../utils/openapi"),MenuItems_1=require("./MenuItems"),styled_elements_1=require("./styled.elements"),OptionsProvider_1=require("../OptionsProvider"),styled_components_1=(0,tslib_1.__importDefault)(require("../../styled-components")),Labels_1=require("../../services/Labels"),MenuItemLink=styled_elements_1.MenuItemLabel.withComponent("a");function ProOperationMenuItemContentC(e,t){var n,a,r=e.item.current;return"path-first"!==React.useContext(OptionsProvider_1.OptionsContext).sideNavStyle&&!r.search||"operation"!==r.type?(n=r.name,a=null):(n=React.createElement(exports.MenuItemPath,{title:r.path}," ",r.path," "),a=React.createElement(MenuItemDescription,null," ",r.name," ")),React.createElement(ProMenuItemLabel,{depth:r.depth,active:r.active,deprecated:r.deprecated,ref:t},r.isWebhook?React.createElement(styled_elements_1.OperationBadge,{type:"hook"},(0,Labels_1.l)("webhook")):React.createElement(styled_elements_1.OperationBadge,{type:r.httpVerb},(0,openapi_1.shortenHTTPVerb)(r.httpVerb)),React.createElement(styled_elements_1.MenuItemTitle,{width:"calc(100% - 42px)"},n,e.children),a)}exports.MenuExternalLink=(0,mobx_react_1.observer)((function(e){var t=e.link;return React.createElement(styled_elements_1.MenuItemLi,{depth:1},React.createElement(MenuItemLink,{href:t.link,target:t.target,active:!1,depth:1},React.createElement(styled_elements_1.MenuItemTitle,{title:t.label},t.label)))})),exports.MenuItem=(0,mobx_react_1.observer)((function(e){var t=e.withoutChildren,n=React.createRef(),a=e.item instanceof services_1.OperationModel?e.item.current:e.item,r=React.useState(!1),i=r[0],l=r[1],o=React.useState("group"===a.type&&a.expanded),c=o[0],s=o[1];React.useEffect((function(){l(a.active)}),[a.active]),React.useEffect((function(){s(a.expanded)}),[a.expanded]);var m=React.useCallback((function(t){var n,r;e.item instanceof services_1.OperationModel?null===(n=e.onActivate)||void 0===n||n.call(e,a,t):null===(r=e.onActivate)||void 0===r||r.call(e,e.item,t),t.stopPropagation()}),[e.onActivate,e.item,a]);return React.useEffect((function(){e.item.active&&n.current&&n.current.scrollIntoViewIfNeeded()}),[e.item,e.item.active,n]),React.createElement(styled_elements_1.MenuItemLi,{onClick:m,depth:a.depth,"data-item-id":a.id},"operation"===a.type?React.createElement(exports.ProOperationMenuItemContent,(0,tslib_1.__assign)({},e,{item:a,ref:n})):React.createElement(styled_elements_1.MenuItemLabel,{depth:a.depth,active:i,type:a.type,ref:n,hasChildren:a.items&&a.items.length>0},"group"!==a.type&&a.items.length>0&&React.createElement(icons_1.ShelfIcon,{direction:c?"down":"right"})||null,React.createElement(styled_elements_1.MenuItemTitle,{title:a.name},a.name,e.children)),!t&&a.items&&a.items.length>0&&React.createElement(MenuItems_1.MenuItems,{expanded:c,items:a.items,onActivate:e.onActivate}))})),exports.ProOperationMenuItemContent=(0,mobx_react_1.observer)(React.forwardRef(ProOperationMenuItemContentC));var ProMenuItemLabel=(0,styled_components_1.default)(styled_elements_1.MenuItemLabel)(templateObject_1||(templateObject_1=(0,tslib_1.__makeTemplateObject)(["\n flex-wrap: wrap;\n"],["\n flex-wrap: wrap;\n"])));exports.MenuItemPath=styled_components_1.default.code(templateObject_2||(templateObject_2=(0,tslib_1.__makeTemplateObject)(["\n line-height: 1.4;\n display: inline-block;\n margin-bottom: 5px;\n ","\n"],["\n line-height: 1.4;\n display: inline-block;\n margin-bottom: 5px;\n ","\n"])),(function(e){var t;return(null===(t=e.theme.sidebar)||void 0===t?void 0:t.breakPath)?"word-break: break-all":""}));var templateObject_1,templateObject_2,templateObject_3,MenuItemDescription=styled_components_1.default.small(templateObject_3||(templateObject_3=(0,tslib_1.__makeTemplateObject)(["\n display: block;\n font-size: 0.87em;\n line-height: 1.2;\n"],["\n display: block;\n font-size: 0.87em;\n line-height: 1.2;\n"])));
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MenuItemPath=exports.ProOperationMenuItemContent=exports.MenuItem=exports.MenuExternalLink=void 0;var tslib_1=require("tslib"),mobx_react_1=require("mobx-react"),React=(0,tslib_1.__importStar)(require("react")),icons_1=require("../../common-elements/icons"),services_1=require("../../services"),openapi_1=require("../../utils/openapi"),MenuItems_1=require("./MenuItems"),styled_elements_1=require("./styled.elements"),OptionsProvider_1=require("../OptionsProvider"),styled_components_1=(0,tslib_1.__importDefault)(require("../../styled-components")),Labels_1=require("../../services/Labels"),MenuItemLink=styled_elements_1.MenuItemLabel.withComponent("a");function ProOperationMenuItemContentC(e,t){var n,a,r=e.item.current;return"path-first"!==React.useContext(OptionsProvider_1.OptionsContext).sideNavStyle&&!r.search||"operation"!==r.type?(n=r.name,a=null):(n=React.createElement(exports.MenuItemPath,{title:r.path}," ",r.path," "),a=React.createElement(MenuItemDescription,null," ",r.name," ")),React.createElement(ProMenuItemLabel,{depth:r.depth,active:r.active,deprecated:r.deprecated,ref:t},r.isWebhook?React.createElement(styled_elements_1.OperationBadge,{type:"hook"},(0,Labels_1.l)("webhook")):React.createElement(styled_elements_1.OperationBadge,{type:r.httpVerb},(0,openapi_1.shortenHTTPVerb)(r.httpVerb)),React.createElement(styled_elements_1.MenuItemTitle,{width:"calc(100% - 42px)"},n,e.withoutChildren?null:e.children),a)}exports.MenuExternalLink=(0,mobx_react_1.observer)((function(e){var t=e.link;return React.createElement(styled_elements_1.MenuItemLi,{depth:1},React.createElement(MenuItemLink,{href:t.link,target:t.target,active:!1,depth:1},React.createElement(styled_elements_1.MenuItemTitle,{title:t.label},t.label)))})),exports.MenuItem=(0,mobx_react_1.observer)((function(e){var t=e.withoutChildren,n=React.createRef(),a=e.item instanceof services_1.OperationModel?e.item.current:e.item,r=React.useState(!1),i=r[0],l=r[1],o=React.useState("group"===a.type&&a.expanded),c=o[0],s=o[1];React.useEffect((function(){l(a.active)}),[a.active]),React.useEffect((function(){s(a.expanded)}),[a.expanded]);var m=React.useCallback((function(t){var n,r;e.item instanceof services_1.OperationModel?null===(n=e.onActivate)||void 0===n||n.call(e,a,t):null===(r=e.onActivate)||void 0===r||r.call(e,e.item,t),t.stopPropagation()}),[e.onActivate,e.item,a]);return React.useEffect((function(){e.item.active&&n.current&&n.current.scrollIntoViewIfNeeded()}),[e.item,e.item.active,n]),React.createElement(styled_elements_1.MenuItemLi,{onClick:m,depth:a.depth,"data-item-id":a.id},"operation"===a.type?React.createElement(exports.ProOperationMenuItemContent,(0,tslib_1.__assign)({},e,{item:a,ref:n})):React.createElement(styled_elements_1.MenuItemLabel,{depth:a.depth,active:i,type:a.type,ref:n,hasChildren:a.items&&a.items.length>0},"group"!==a.type&&a.items.length>0&&React.createElement(icons_1.ShelfIcon,{direction:c?"down":"right"})||null,React.createElement(styled_elements_1.MenuItemTitle,{title:a.name},a.name,e.children)),!t&&a.items&&a.items.length>0&&React.createElement(MenuItems_1.MenuItems,{expanded:c,items:a.items,onActivate:e.onActivate}))})),exports.ProOperationMenuItemContent=(0,mobx_react_1.observer)(React.forwardRef(ProOperationMenuItemContentC));var ProMenuItemLabel=(0,styled_components_1.default)(styled_elements_1.MenuItemLabel)(templateObject_1||(templateObject_1=(0,tslib_1.__makeTemplateObject)(["\n flex-wrap: wrap;\n"],["\n flex-wrap: wrap;\n"])));exports.MenuItemPath=styled_components_1.default.code(templateObject_2||(templateObject_2=(0,tslib_1.__makeTemplateObject)(["\n line-height: 1.4;\n display: inline-block;\n margin-bottom: 5px;\n ","\n"],["\n line-height: 1.4;\n display: inline-block;\n margin-bottom: 5px;\n ","\n"])),(function(e){var t;return(null===(t=e.theme.sidebar)||void 0===t?void 0:t.breakPath)?"word-break: break-all":""}));var templateObject_1,templateObject_2,templateObject_3,MenuItemDescription=styled_components_1.default.small(templateObject_3||(templateObject_3=(0,tslib_1.__makeTemplateObject)(["\n display: block;\n font-size: 0.87em;\n line-height: 1.2;\n"],["\n display: block;\n font-size: 0.87em;\n line-height: 1.2;\n"])));
2
2
  //# sourceMappingURL=MenuItem.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ProMenu=void 0;var tslib_1=require("tslib"),redoc_lib_1=require("../redoc-lib"),mobx_1=require("mobx"),VersionedSpecStore_1=require("./VersionedSpecStore"),constants_1=require("../redoc-lib/src/services/constants"),HistoryService_1=require("../redoc-lib/src/services/HistoryService"),ProMenu=function(){function e(e,t,i,n){var r=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:n}),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 r.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=r.history.currentId);var t=e.split(r.options.deepLinkPrefix)[0];if(t){var i;if((i=r.flatItems.find((function(e){return e.id===t})))&&"tag"===i.type&&r.options.hideTagInfo&&"item"===r.options.pagination)return r.activate(i.items[0].current,!0,!0,!1,e),void i.collapse();i?(r.activate(i,!1,!1,!1,e),i.active=!1):t.startsWith(redoc_lib_1.SECURITY_SCHEMES_SECTION_PREFIX)&&(i=r.flatItems.find((function(e){return redoc_lib_1.SECURITY_SCHEMES_SECTION_PREFIX.startsWith(e.id)})),r.activate(i,!1,!1,!1,e),i&&(i.active=!1))}else r.activate(void 0,!1,!1,!1,e)}}),Object.defineProperty(this,"updateOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){void 0===e&&(e=r.history.currentId);var t,i=e.split(r.options.deepLinkPrefix)[0];if(!i)return r.options.hideInfoDescription&&r.options.hideInfoSection?void r.activateAndScroll(r.renderItems[0],!0,!0):void 0;(t=r.flatItems.find((function(e){var t=(e.versions||[]).find((function(e){return e.model.id===i}));return t?(e.changeVersion(t.model),!0):e.id===i})))&&t.current&&(t=t.current),t?r.activateAndScroll(t,!1,void 0,e):(i.startsWith(redoc_lib_1.SECURITY_SCHEMES_SECTION_PREFIX)&&(t=r.flatItems.find((function(e){return redoc_lib_1.SECURITY_SCHEMES_SECTION_PREFIX.startsWith(e.id)})),r.activate(t)),r.scroll.scrollIntoViewBySelector("["+constants_1.SECTION_ATTR+'="'+i+'"]'))}}),Object.defineProperty(this,"updateVersionOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var t=e.split("/")[0],i=r.definition.versionsInfo.findIndex((function(e){return e.id===t}));i<0&&(i=r.definition.versionsInfo.findIndex((function(e){return e.isDefault}))),r.definition.activeVersionIdx!==i&&(r.definition.changeVersion(i<0?0:i),r.updateItemsByVersionChange(!1,e));var n=t+"/"+redoc_lib_1.SECURITY_SCHEMES_SECTION_PREFIX;if(e.startsWith(n)){var o=r.flatItems.find((function(e){return n.startsWith(e.id)}));r.activate(o,!1,!0),setTimeout((function(){return r.scroll.scrollIntoViewBySelector("["+constants_1.SECTION_ATTR+'="'+e+'"]')}),0)}}}),Object.defineProperty(this,"updateOnScroll",{enumerable:!0,configurable:!0,writable:!0,value:function(e){for(var t=e?1:-1,i=r.activeItemIdx;(-1!==i||e)&&!(i>=r.flatItems.length-1&&e);){if(e){var n=!1,o=r.flatItems[i+1];switch(r.options.pagination){case"section":n=o&&("spec"===o.type||"group"===o.type||"tag"===o.type||"section"===r.options.markdownItemsPagination&&!o.parent);break;case"item":n="section"!==(null==o?void 0:o.type)}var a=r.getElementAt(i+1);if(-1===i&&"tag"===r.flatItems[0].type&&(n=!1),r.scroll.isElementBellow(a)||n)break}else{var s=r.flatItems[i]&&r.flatItems[i].type;n="section"===r.options.pagination&&("spec"===s||"group"===s||"tag"===s)||"item"===r.options.pagination&&"section"!==s,a=r.getElementAt(i);if(r.scroll.isElementAbove(a)||n)break}i+=t}var l=r.flatItems[i];"none"===r.options.pagination||"section"===r.options.pagination?l&&(l.current?l.current.active:l.active)||r.activate(l,!0,!0,!1):l&&"section"===l.type&&((l.current?l.current.active:l.active)||r.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){e.absoluteIdx=t;for(var i=0,n=e.versions||[];i<n.length;i++){n[i].model.absoluteIdx=t}})),i.disableSidebar||this.subscribe(),this.flatItems.forEach((function(e,t){return normalizeItem(e,t,i.pagination,r.definition instanceof VersionedSpecStore_1.VersionedSpecStore)})),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+'="'+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+'="'+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+'="'+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,n=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)}));var r=t?(this.flatItems.find((function(e){return withoutVersion(e.id)===t}))||{absoluteIdx:-1}).absoluteIdx:-1;if(-1!==r&&"none"!==this.options.pagination||(this.renderItems=this.buildRenderItems(0)),this.activeItemIdx=-1,-1!==r)this.activate(this.flatItems[r],e);else if(-1!==n)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=[],n=getParentOfType(t,"tag");if("section"===this.options.pagination&&n)return[n];if("item"===this.options.pagination&&n)return[(0,tslib_1.__assign)((0,tslib_1.__assign)({},n),{items:getLeadingSectionItems(n)})];var r=getParentSpecItem(t),o=(null==r?void 0:r.items)||this.items;if("section"===this.options.markdownItemsPagination){var a=t.parent||t;i.push(a)}else for(var s=0;s<o.length&&"section"===o[s].type;s++)i.push(o[s]);return i}switch(this.options.pagination){case"section":if("operation"===t.type&&t.parent)return[t.parent];if("group"!==t.type)return[t];case"item":return"group"===t.type||"tag"===t.type&&this.options.hideTagInfo?this.buildRenderItems(e+1):"operation"===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,n){var r,o,a,s=this;if(void 0===t&&(t=!0),void 0===i&&(i=!1),(null===(r=this.activeItem)||void 0===r?void 0:r.id)===(null==e?void 0:e.id)&&!n)return t&&e&&this.history.replace(e.id,i),void(e&&!e.active&&e.activate());if(!e||"group"!==e.type)if(this.activeItem&&this.activeItem.id!==(null==e?void 0:e.id)&&this.deactivate(this.activeItem),e){this.activeItemIdx=e.absoluteIdx,t&&this.history.replace(e.id,i),e.activate(),e.expand();var l=new URLSearchParams(n),c="request"===l.get("t"),d="response"===l.get("t"),u=l.get("c"),p=l.get("ct"),f=l.get("in"),v=l.get("path"),b=(null==v?void 0:v.split(this.options.deepLinkSeparator))||[],m=e;if(f)for(var h=m.parameters,I=function(e){var t=null==h?void 0:h.find((function(t){return t.name===e}));null==t||t.expand(),h=null===(o=null==t?void 0:t.schema)||void 0===o?void 0:o.fields},y=0,_=b;y<_.length;y++){I(_[y])}else if(c){var g=null===(a=m.requestBody)||void 0===a?void 0:a.content;m.activateMimeName(p||m.activeMimeName),setTimeout((function(){var e;return s.activateField(b,null===(e=null==g?void 0:g.active)||void 0===e?void 0:e.schema)}),0)}else if(d){var S=m.responses.find((function(e){return e.code===u}));(null==S?void 0:S.expanded)||null==S||S.expand(),m.activateMimeName(p||m.activeMimeName),setTimeout((function(){var e,t;return s.activateField(b,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,n,r){var o=this;if(void 0===t&&(t=!0),void 0===i&&(i=!1),void 0===n&&(n=!0),"none"===this.options.pagination)return this.activateBase(e,t,i,r),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||this.options.hideTagInfo)){if(e.expanded)return void e.collapse();e.expand(),e=this.flatItems[e.absoluteIdx+1]}if(this.activateBase(e,e&&t,i,r),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)}var s=this.options.hooks||{};if(s.OnPagination&&this.renderItems[0]){var l=this.renderItems[0];s.OnPagination({operation:"operation"===l.type?l:void 0,item:"operation"!==l.type?l:void 0})}n&&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,n=function(n){var r=e[n],o=n===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(r);return 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===r}));o||null==s||s.expand(),t=null==s?void 0:s.schema},r=0;r<e.length-1;r++)n(r)}}),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,n){void 0===n&&(n="");var r=n.split(this.options.deepLinkPrefix)[1],o=e&&this.getItemById(e.id)||e;this.activate(o,t,i,!1,r),this.scrollToActive(r?n:""),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+'="'+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,n=e.items;i<n.length;i++){var r=n[i];if("section"!==r.type)break;t.push(r)}return t}function normalizeItem(e,t,i,n){var r;if(e.absoluteIdx=t,"none"!==i)for(var o=0,a=(null===(r=e.versions)||void 0===r?void 0:r.map((function(e){return e.model})))||[e];o<a.length;o++){var s=a[o],l=getParentOfType(s,"tag");if(s.parent&&l&&!("_id_normalized"in s)){if(n){var c=s.id.split("/"),d=c[0],u=c[1],p=withoutVersion(s.id);if("operation"===s.type&&!u.startsWith("operation"))return;s.id=d+"/"+withoutVersion(l.id)+"/"+p}else{if("operation"===s.type&&!s.id.startsWith("operation"))return;s.id=l.id+"/"+s.id}s._id_normalized=!0}}}exports.ProMenu=ProMenu;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ProMenu=void 0;var tslib_1=require("tslib"),redoc_lib_1=require("../redoc-lib"),mobx_1=require("mobx"),VersionedSpecStore_1=require("./VersionedSpecStore"),constants_1=require("../redoc-lib/src/services/constants"),HistoryService_1=require("../redoc-lib/src/services/HistoryService"),ProMenu=function(){function e(e,t,i,n){var r=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:n}),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 r.flatItems.find((function(t){return t.id===e}))}}),Object.defineProperty(this,"initOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var t;void 0===e&&(e=r.history.currentId);var i=e.split(r.options.deepLinkPrefix)[0];if(i){var n;if((n=r.flatItems.find((function(e){return e.id===i})))&&"tag"===n.type&&r.options.hideTagInfo&&"item"===r.options.pagination)return r.activate(n.items[0].current,!0,!0,!1,e),void n.collapse();n?(r.activate(n,!1,!1,!1,e),n.active=!1):i.startsWith(redoc_lib_1.SECURITY_SCHEMES_SECTION_PREFIX)&&(n=r.flatItems.find((function(e){return redoc_lib_1.SECURITY_SCHEMES_SECTION_PREFIX.startsWith(e.id)})),r.activate(n,!1,!1,!1,e),n&&(n.active=!1))}else{var o=r.flatItems[0],a=(null===(t=o.items)||void 0===t?void 0:t[0])||o;r.activate(a,!1,!1,!1,e)}}}),Object.defineProperty(this,"updateOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){void 0===e&&(e=r.history.currentId);var t,i=e.split(r.options.deepLinkPrefix)[0];if(!i)return r.options.hideInfoDescription&&r.options.hideInfoSection?void r.activateAndScroll(r.renderItems[0],!0,!0):void 0;(t=r.flatItems.find((function(e){var t=(e.versions||[]).find((function(e){return e.model.id===i}));return t?(e.changeVersion(t.model),!0):e.id===i})))&&t.current&&(t=t.current),t?r.activateAndScroll(t,!1,void 0,e):(i.startsWith(redoc_lib_1.SECURITY_SCHEMES_SECTION_PREFIX)&&(t=r.flatItems.find((function(e){return redoc_lib_1.SECURITY_SCHEMES_SECTION_PREFIX.startsWith(e.id)})),r.activate(t)),r.scroll.scrollIntoViewBySelector("["+constants_1.SECTION_ATTR+'="'+i+'"]'))}}),Object.defineProperty(this,"updateVersionOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var t=e.split("/")[0],i=r.definition.versionsInfo.findIndex((function(e){return e.id===t}));i<0&&(i=r.definition.versionsInfo.findIndex((function(e){return e.isDefault}))),r.definition.activeVersionIdx!==i&&(r.definition.changeVersion(i<0?0:i),r.updateItemsByVersionChange(!1,e));var n=t+"/"+redoc_lib_1.SECURITY_SCHEMES_SECTION_PREFIX;if(e.startsWith(n)){var o=r.flatItems.find((function(e){return n.startsWith(e.id)}));r.activate(o,!1,!0),setTimeout((function(){return r.scroll.scrollIntoViewBySelector("["+constants_1.SECTION_ATTR+'="'+e+'"]')}),0)}}}),Object.defineProperty(this,"updateOnScroll",{enumerable:!0,configurable:!0,writable:!0,value:function(e){for(var t=e?1:-1,i=r.activeItemIdx;(-1!==i||e)&&!(i>=r.flatItems.length-1&&e);){if(e){var n=!1,o=r.flatItems[i+1];switch(r.options.pagination){case"section":n=o&&("spec"===o.type||"group"===o.type||"tag"===o.type||"section"===r.options.markdownItemsPagination&&!o.parent);break;case"item":n="section"!==(null==o?void 0:o.type)}var a=r.getElementAt(i+1);if(-1===i&&"tag"===r.flatItems[0].type&&(n=!1),r.scroll.isElementBellow(a)||n)break}else{var s=r.flatItems[i]&&r.flatItems[i].type;n="section"===r.options.pagination&&("spec"===s||"group"===s||"tag"===s)||"item"===r.options.pagination&&"section"!==s,a=r.getElementAt(i);if(r.scroll.isElementAbove(a)||n)break}i+=t}var l=r.flatItems[i];"none"===r.options.pagination||"section"===r.options.pagination?l&&(l.current?l.current.active:l.active)||r.activate(l,!0,!0,!1):l&&"section"===l.type&&((l.current?l.current.active:l.active)||r.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){e.absoluteIdx=t;for(var i=0,n=e.versions||[];i<n.length;i++){n[i].model.absoluteIdx=t}})),i.disableSidebar||this.subscribe(),this.flatItems.forEach((function(e,t){return normalizeItem(e,t,i.pagination,r.definition instanceof VersionedSpecStore_1.VersionedSpecStore)})),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+'="'+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+'="'+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+'="'+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,n=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)}));var r=t?(this.flatItems.find((function(e){return withoutVersion(e.id)===t}))||{absoluteIdx:-1}).absoluteIdx:-1;if(-1!==r&&"none"!==this.options.pagination||(this.renderItems=this.buildRenderItems(0)),this.activeItemIdx=-1,-1!==r)this.activate(this.flatItems[r],e);else if(-1!==n)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=[],n=getParentOfType(t,"tag");if("section"===this.options.pagination&&n)return[n];if("item"===this.options.pagination&&n)return[(0,tslib_1.__assign)((0,tslib_1.__assign)({},n),{items:getLeadingSectionItems(n)})];var r=getParentSpecItem(t),o=(null==r?void 0:r.items)||this.items;if("section"===this.options.markdownItemsPagination){var a=t.parent||t;i.push(a)}else for(var s=0;s<o.length&&"section"===o[s].type;s++)i.push(o[s]);return i}switch(this.options.pagination){case"section":if("operation"===t.type&&t.parent)return[t.parent];if("group"!==t.type)return[t];case"item":return"group"===t.type||"tag"===t.type&&this.options.hideTagInfo?this.buildRenderItems(e+1):"operation"===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,n){var r,o,a,s=this;if(void 0===t&&(t=!0),void 0===i&&(i=!1),(null===(r=this.activeItem)||void 0===r?void 0:r.id)===(null==e?void 0:e.id)&&!n)return t&&e&&this.history.replace(e.id,i),void(e&&!e.active&&e.activate());if(!e||"group"!==e.type)if(this.activeItem&&this.activeItem.id!==(null==e?void 0:e.id)&&this.deactivate(this.activeItem),e){this.activeItemIdx=e.absoluteIdx,t&&this.history.replace(e.id,i),e.activate(),e.expand();var l=new URLSearchParams(n),c="request"===l.get("t"),d="response"===l.get("t"),u=l.get("c"),p=l.get("ct"),f=l.get("in"),v=l.get("path"),b=(null==v?void 0:v.split(this.options.deepLinkSeparator))||[],m=e;if(f)for(var h=m.parameters,I=function(e){var t=null==h?void 0:h.find((function(t){return t.name===e}));null==t||t.expand(),h=null===(o=null==t?void 0:t.schema)||void 0===o?void 0:o.fields},y=0,_=b;y<_.length;y++){I(_[y])}else if(c){var g=null===(a=m.requestBody)||void 0===a?void 0:a.content;m.activateMimeName(p||m.activeMimeName),setTimeout((function(){var e;return s.activateField(b,null===(e=null==g?void 0:g.active)||void 0===e?void 0:e.schema)}),0)}else if(d){var S=m.responses.find((function(e){return e.code===u}));(null==S?void 0:S.expanded)||null==S||S.expand(),m.activateMimeName(p||m.activeMimeName),setTimeout((function(){var e,t;return s.activateField(b,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,n,r){var o=this;if(void 0===t&&(t=!0),void 0===i&&(i=!1),void 0===n&&(n=!0),"none"===this.options.pagination)return this.activateBase(e,t,i,r),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||this.options.hideTagInfo)){if(e.expanded)return void e.collapse();e.expand(),e=this.flatItems[e.absoluteIdx+1]}if(this.activateBase(e,e&&t,i,r),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)}var s=this.options.hooks||{};if(s.OnPagination&&this.renderItems[0]){var l=this.renderItems[0];s.OnPagination({operation:"operation"===l.type?l:void 0,item:"operation"!==l.type?l:void 0})}n&&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,n=function(n){var r=e[n],o=n===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(r);return 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===r}));o||null==s||s.expand(),t=null==s?void 0:s.schema},r=0;r<e.length-1;r++)n(r)}}),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,n){void 0===n&&(n="");var r=n.split(this.options.deepLinkPrefix)[1],o=e&&this.getItemById(e.id)||e;this.activate(o,t,i,!1,r),this.scrollToActive(r?n:""),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+'="'+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,n=e.items;i<n.length;i++){var r=n[i];if("section"!==r.type)break;t.push(r)}return t}function normalizeItem(e,t,i,n){var r;if(e.absoluteIdx=t,"none"!==i)for(var o=0,a=(null===(r=e.versions)||void 0===r?void 0:r.map((function(e){return e.model})))||[e];o<a.length;o++){var s=a[o],l=getParentOfType(s,"tag");if(s.parent&&l&&!("_id_normalized"in s)){if(n){var c=s.id.split("/"),d=c[0],u=c[1],p=withoutVersion(s.id);if("operation"===s.type&&!u.startsWith("operation"))return;s.id=d+"/"+withoutVersion(l.id)+"/"+p}else{if("operation"===s.type&&!s.id.startsWith("operation"))return;s.id=l.id+"/"+s.id}s._id_normalized=!0}}}exports.ProMenu=ProMenu;
2
2
  //# sourceMappingURL=ProMenu.js.map
@@ -12,6 +12,7 @@ export declare const MenuExternalLink: (props: React.PropsWithChildren<{
12
12
  export declare const MenuItem: (props: React.PropsWithChildren<MenuItemProps>) => JSX.Element;
13
13
  export interface OperationMenuItemContentProps {
14
14
  item: OperationModel;
15
+ withoutChildren?: boolean;
15
16
  }
16
17
  export declare const ProOperationMenuItemContent: React.ForwardRefExoticComponent<OperationMenuItemContentProps & React.RefAttributes<HTMLLabelElement>>;
17
18
  export declare const MenuItemPath: import("styled-components").StyledComponent<"code", import("../../theme").ResolvedThemeInterface, {
@@ -1,2 +1,2 @@
1
- import{__assign,__makeTemplateObject}from"tslib";import{observer}from"mobx-react";import*as React from"react";import{ShelfIcon}from"../../common-elements/icons";import{OperationModel}from"../../services";import{shortenHTTPVerb}from"../../utils/openapi";import{MenuItems}from"./MenuItems";import{MenuItemLabel,MenuItemLi,MenuItemTitle,OperationBadge}from"./styled.elements";import{OptionsContext}from"../OptionsProvider";import styled from"../../styled-components";import{l}from"../../services/Labels";var MenuItemLink=MenuItemLabel.withComponent("a");export var MenuExternalLink=observer((function(e){var t=e.link;return React.createElement(MenuItemLi,{depth:1},React.createElement(MenuItemLink,{href:t.link,target:t.target,active:!1,depth:1},React.createElement(MenuItemTitle,{title:t.label},t.label)))}));export var MenuItem=observer((function(e){var t=e.withoutChildren,n=React.createRef(),a=e.item instanceof OperationModel?e.item.current:e.item,r=React.useState(!1),i=r[0],o=r[1],m=React.useState("group"===a.type&&a.expanded),l=m[0],c=m[1];React.useEffect((function(){o(a.active)}),[a.active]),React.useEffect((function(){c(a.expanded)}),[a.expanded]);var p=React.useCallback((function(t){var n,r;e.item instanceof OperationModel?null===(n=e.onActivate)||void 0===n||n.call(e,a,t):null===(r=e.onActivate)||void 0===r||r.call(e,e.item,t),t.stopPropagation()}),[e.onActivate,e.item,a]);return React.useEffect((function(){e.item.active&&n.current&&n.current.scrollIntoViewIfNeeded()}),[e.item,e.item.active,n]),React.createElement(MenuItemLi,{onClick:p,depth:a.depth,"data-item-id":a.id},"operation"===a.type?React.createElement(ProOperationMenuItemContent,__assign({},e,{item:a,ref:n})):React.createElement(MenuItemLabel,{depth:a.depth,active:i,type:a.type,ref:n,hasChildren:a.items&&a.items.length>0},"group"!==a.type&&a.items.length>0&&React.createElement(ShelfIcon,{direction:l?"down":"right"})||null,React.createElement(MenuItemTitle,{title:a.name},a.name,e.children)),!t&&a.items&&a.items.length>0&&React.createElement(MenuItems,{expanded:l,items:a.items,onActivate:e.onActivate}))}));function ProOperationMenuItemContentC(e,t){var n,a,r=e.item.current;return"path-first"!==React.useContext(OptionsContext).sideNavStyle&&!r.search||"operation"!==r.type?(n=r.name,a=null):(n=React.createElement(MenuItemPath,{title:r.path}," ",r.path," "),a=React.createElement(MenuItemDescription,null," ",r.name," ")),React.createElement(ProMenuItemLabel,{depth:r.depth,active:r.active,deprecated:r.deprecated,ref:t},r.isWebhook?React.createElement(OperationBadge,{type:"hook"},l("webhook")):React.createElement(OperationBadge,{type:r.httpVerb},shortenHTTPVerb(r.httpVerb)),React.createElement(MenuItemTitle,{width:"calc(100% - 42px)"},n,e.children),a)}export var ProOperationMenuItemContent=observer(React.forwardRef(ProOperationMenuItemContentC));var ProMenuItemLabel=styled(MenuItemLabel)(templateObject_1||(templateObject_1=__makeTemplateObject(["\n flex-wrap: wrap;\n"],["\n flex-wrap: wrap;\n"])));export var MenuItemPath=styled.code(templateObject_2||(templateObject_2=__makeTemplateObject(["\n line-height: 1.4;\n display: inline-block;\n margin-bottom: 5px;\n ","\n"],["\n line-height: 1.4;\n display: inline-block;\n margin-bottom: 5px;\n ","\n"])),(function(e){var t;return(null===(t=e.theme.sidebar)||void 0===t?void 0:t.breakPath)?"word-break: break-all":""}));var templateObject_1,templateObject_2,templateObject_3,MenuItemDescription=styled.small(templateObject_3||(templateObject_3=__makeTemplateObject(["\n display: block;\n font-size: 0.87em;\n line-height: 1.2;\n"],["\n display: block;\n font-size: 0.87em;\n line-height: 1.2;\n"])));
1
+ import{__assign,__makeTemplateObject}from"tslib";import{observer}from"mobx-react";import*as React from"react";import{ShelfIcon}from"../../common-elements/icons";import{OperationModel}from"../../services";import{shortenHTTPVerb}from"../../utils/openapi";import{MenuItems}from"./MenuItems";import{MenuItemLabel,MenuItemLi,MenuItemTitle,OperationBadge}from"./styled.elements";import{OptionsContext}from"../OptionsProvider";import styled from"../../styled-components";import{l}from"../../services/Labels";var MenuItemLink=MenuItemLabel.withComponent("a");export var MenuExternalLink=observer((function(e){var t=e.link;return React.createElement(MenuItemLi,{depth:1},React.createElement(MenuItemLink,{href:t.link,target:t.target,active:!1,depth:1},React.createElement(MenuItemTitle,{title:t.label},t.label)))}));export var MenuItem=observer((function(e){var t=e.withoutChildren,n=React.createRef(),a=e.item instanceof OperationModel?e.item.current:e.item,r=React.useState(!1),i=r[0],o=r[1],l=React.useState("group"===a.type&&a.expanded),m=l[0],c=l[1];React.useEffect((function(){o(a.active)}),[a.active]),React.useEffect((function(){c(a.expanded)}),[a.expanded]);var p=React.useCallback((function(t){var n,r;e.item instanceof OperationModel?null===(n=e.onActivate)||void 0===n||n.call(e,a,t):null===(r=e.onActivate)||void 0===r||r.call(e,e.item,t),t.stopPropagation()}),[e.onActivate,e.item,a]);return React.useEffect((function(){e.item.active&&n.current&&n.current.scrollIntoViewIfNeeded()}),[e.item,e.item.active,n]),React.createElement(MenuItemLi,{onClick:p,depth:a.depth,"data-item-id":a.id},"operation"===a.type?React.createElement(ProOperationMenuItemContent,__assign({},e,{item:a,ref:n})):React.createElement(MenuItemLabel,{depth:a.depth,active:i,type:a.type,ref:n,hasChildren:a.items&&a.items.length>0},"group"!==a.type&&a.items.length>0&&React.createElement(ShelfIcon,{direction:m?"down":"right"})||null,React.createElement(MenuItemTitle,{title:a.name},a.name,e.children)),!t&&a.items&&a.items.length>0&&React.createElement(MenuItems,{expanded:m,items:a.items,onActivate:e.onActivate}))}));function ProOperationMenuItemContentC(e,t){var n,a,r=e.item.current;return"path-first"!==React.useContext(OptionsContext).sideNavStyle&&!r.search||"operation"!==r.type?(n=r.name,a=null):(n=React.createElement(MenuItemPath,{title:r.path}," ",r.path," "),a=React.createElement(MenuItemDescription,null," ",r.name," ")),React.createElement(ProMenuItemLabel,{depth:r.depth,active:r.active,deprecated:r.deprecated,ref:t},r.isWebhook?React.createElement(OperationBadge,{type:"hook"},l("webhook")):React.createElement(OperationBadge,{type:r.httpVerb},shortenHTTPVerb(r.httpVerb)),React.createElement(MenuItemTitle,{width:"calc(100% - 42px)"},n,e.withoutChildren?null:e.children),a)}export var ProOperationMenuItemContent=observer(React.forwardRef(ProOperationMenuItemContentC));var ProMenuItemLabel=styled(MenuItemLabel)(templateObject_1||(templateObject_1=__makeTemplateObject(["\n flex-wrap: wrap;\n"],["\n flex-wrap: wrap;\n"])));export var MenuItemPath=styled.code(templateObject_2||(templateObject_2=__makeTemplateObject(["\n line-height: 1.4;\n display: inline-block;\n margin-bottom: 5px;\n ","\n"],["\n line-height: 1.4;\n display: inline-block;\n margin-bottom: 5px;\n ","\n"])),(function(e){var t;return(null===(t=e.theme.sidebar)||void 0===t?void 0:t.breakPath)?"word-break: break-all":""}));var templateObject_1,templateObject_2,templateObject_3,MenuItemDescription=styled.small(templateObject_3||(templateObject_3=__makeTemplateObject(["\n display: block;\n font-size: 0.87em;\n line-height: 1.2;\n"],["\n display: block;\n font-size: 0.87em;\n line-height: 1.2;\n"])));
2
2
  //# sourceMappingURL=MenuItem.js.map
@@ -1,2 +1,2 @@
1
- import{__assign,__decorate}from"tslib";import{flattenByProp,SECURITY_SCHEMES_SECTION_PREFIX,querySelector}from"../redoc-lib";import{action,observable,makeObservable}from"mobx";import{VersionedSpecStore}from"./VersionedSpecStore";import{SECTION_ATTR}from"../redoc-lib/src/services/constants";import{history as historyInst}from"../redoc-lib/src/services/HistoryService";var ProMenu=function(){function e(e,t,i,n){var r=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:n}),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 r.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=r.history.currentId);var t=e.split(r.options.deepLinkPrefix)[0];if(t){var i;if((i=r.flatItems.find((function(e){return e.id===t})))&&"tag"===i.type&&r.options.hideTagInfo&&"item"===r.options.pagination)return r.activate(i.items[0].current,!0,!0,!1,e),void i.collapse();i?(r.activate(i,!1,!1,!1,e),i.active=!1):t.startsWith(SECURITY_SCHEMES_SECTION_PREFIX)&&(i=r.flatItems.find((function(e){return SECURITY_SCHEMES_SECTION_PREFIX.startsWith(e.id)})),r.activate(i,!1,!1,!1,e),i&&(i.active=!1))}else r.activate(void 0,!1,!1,!1,e)}}),Object.defineProperty(this,"updateOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){void 0===e&&(e=r.history.currentId);var t,i=e.split(r.options.deepLinkPrefix)[0];if(!i)return r.options.hideInfoDescription&&r.options.hideInfoSection?void r.activateAndScroll(r.renderItems[0],!0,!0):void 0;(t=r.flatItems.find((function(e){var t=(e.versions||[]).find((function(e){return e.model.id===i}));return t?(e.changeVersion(t.model),!0):e.id===i})))&&t.current&&(t=t.current),t?r.activateAndScroll(t,!1,void 0,e):(i.startsWith(SECURITY_SCHEMES_SECTION_PREFIX)&&(t=r.flatItems.find((function(e){return SECURITY_SCHEMES_SECTION_PREFIX.startsWith(e.id)})),r.activate(t)),r.scroll.scrollIntoViewBySelector("["+SECTION_ATTR+'="'+i+'"]'))}}),Object.defineProperty(this,"updateVersionOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var t=e.split("/")[0],i=r.definition.versionsInfo.findIndex((function(e){return e.id===t}));i<0&&(i=r.definition.versionsInfo.findIndex((function(e){return e.isDefault}))),r.definition.activeVersionIdx!==i&&(r.definition.changeVersion(i<0?0:i),r.updateItemsByVersionChange(!1,e));var n=t+"/"+SECURITY_SCHEMES_SECTION_PREFIX;if(e.startsWith(n)){var o=r.flatItems.find((function(e){return n.startsWith(e.id)}));r.activate(o,!1,!0),setTimeout((function(){return r.scroll.scrollIntoViewBySelector("["+SECTION_ATTR+'="'+e+'"]')}),0)}}}),Object.defineProperty(this,"updateOnScroll",{enumerable:!0,configurable:!0,writable:!0,value:function(e){for(var t=e?1:-1,i=r.activeItemIdx;(-1!==i||e)&&!(i>=r.flatItems.length-1&&e);){if(e){var n=!1,o=r.flatItems[i+1];switch(r.options.pagination){case"section":n=o&&("spec"===o.type||"group"===o.type||"tag"===o.type||"section"===r.options.markdownItemsPagination&&!o.parent);break;case"item":n="section"!==(null==o?void 0:o.type)}var a=r.getElementAt(i+1);if(-1===i&&"tag"===r.flatItems[0].type&&(n=!1),r.scroll.isElementBellow(a)||n)break}else{var s=r.flatItems[i]&&r.flatItems[i].type;n="section"===r.options.pagination&&("spec"===s||"group"===s||"tag"===s)||"item"===r.options.pagination&&"section"!==s,a=r.getElementAt(i);if(r.scroll.isElementAbove(a)||n)break}i+=t}var l=r.flatItems[i];"none"===r.options.pagination||"section"===r.options.pagination?l&&(l.current?l.current.active:l.active)||r.activate(l,!0,!0,!1):l&&"section"===l.type&&((l.current?l.current.active:l.active)||r.activate(l,!0,!0,!1))}}),makeObservable(this),this.items=e.contentItems,this.flatItems=flattenByProp(this.items||[],"items"),this.flatItems.forEach((function(e,t){e.absoluteIdx=t;for(var i=0,n=e.versions||[];i<n.length;i++){n[i].model.absoluteIdx=t}})),i.disableSidebar||this.subscribe(),this.flatItems.forEach((function(e,t){return normalizeItem(e,t,i.pagination,r.definition instanceof VersionedSpecStore)})),this.renderItems=this.buildRenderItems(0),this.activeItemIdx=-1,this.activeRenderItemIdx=-1,this.definition instanceof 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=historyInst.currentId),e&&t.scrollIntoViewBySelector("["+SECTION_ATTR+'="'+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&&querySelector("["+SECTION_ATTR+'="'+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&&querySelector("["+SECTION_ATTR+'="'+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,n=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((function(e,t){return normalizeItem(e,t,i.options.pagination,i.definition instanceof VersionedSpecStore)}));var r=t?(this.flatItems.find((function(e){return withoutVersion(e.id)===t}))||{absoluteIdx:-1}).absoluteIdx:-1;if(-1!==r&&"none"!==this.options.pagination||(this.renderItems=this.buildRenderItems(0)),this.activeItemIdx=-1,-1!==r)this.activate(this.flatItems[r],e);else if(-1!==n)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=[],n=getParentOfType(t,"tag");if("section"===this.options.pagination&&n)return[n];if("item"===this.options.pagination&&n)return[__assign(__assign({},n),{items:getLeadingSectionItems(n)})];var r=getParentSpecItem(t),o=(null==r?void 0:r.items)||this.items;if("section"===this.options.markdownItemsPagination){var a=t.parent||t;i.push(a)}else for(var s=0;s<o.length&&"section"===o[s].type;s++)i.push(o[s]);return i}switch(this.options.pagination){case"section":if("operation"===t.type&&t.parent)return[t.parent];if("group"!==t.type)return[t];case"item":return"group"===t.type||"tag"===t.type&&this.options.hideTagInfo?this.buildRenderItems(e+1):"operation"===t.type?[t]:[__assign(__assign({},t),{items:getLeadingSectionItems(t)})];default:return[]}}}),Object.defineProperty(e.prototype,"activateBase",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t,i,n){var r,o,a,s=this;if(void 0===t&&(t=!0),void 0===i&&(i=!1),(null===(r=this.activeItem)||void 0===r?void 0:r.id)===(null==e?void 0:e.id)&&!n)return t&&e&&this.history.replace(e.id,i),void(e&&!e.active&&e.activate());if(!e||"group"!==e.type)if(this.activeItem&&this.activeItem.id!==(null==e?void 0:e.id)&&this.deactivate(this.activeItem),e){this.activeItemIdx=e.absoluteIdx,t&&this.history.replace(e.id,i),e.activate(),e.expand();var l=new URLSearchParams(n),c="request"===l.get("t"),d="response"===l.get("t"),u=l.get("c"),f=l.get("ct"),p=l.get("in"),v=l.get("path"),m=(null==v?void 0:v.split(this.options.deepLinkSeparator))||[],b=e;if(p)for(var h=b.parameters,I=function(e){var t=null==h?void 0:h.find((function(t){return t.name===e}));null==t||t.expand(),h=null===(o=null==t?void 0:t.schema)||void 0===o?void 0:o.fields},y=0,g=m;y<g.length;y++){I(g[y])}else if(c){var S=null===(a=b.requestBody)||void 0===a?void 0:a.content;b.activateMimeName(f||b.activeMimeName),setTimeout((function(){var e;return s.activateField(m,null===(e=null==S?void 0:S.active)||void 0===e?void 0:e.schema)}),0)}else if(d){var O=b.responses.find((function(e){return e.code===u}));(null==O?void 0:O.expanded)||null==O||O.expand(),b.activateMimeName(f||b.activeMimeName),setTimeout((function(){var e,t;return s.activateField(m,null===(t=null===(e=null==O?void 0:O.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,n,r){var o=this;if(void 0===t&&(t=!0),void 0===i&&(i=!1),void 0===n&&(n=!0),"none"===this.options.pagination)return this.activateBase(e,t,i,r),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||this.options.hideTagInfo)){if(e.expanded)return void e.collapse();e.expand(),e=this.flatItems[e.absoluteIdx+1]}if(this.activateBase(e,e&&t,i,r),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)}var s=this.options.hooks||{};if(s.OnPagination&&this.renderItems[0]){var l=this.renderItems[0];s.OnPagination({operation:"operation"===l.type?l:void 0,item:"operation"!==l.type?l:void 0})}n&&setTimeout((function(){return o.scrollToActive()})),!e&&this.definition instanceof 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,n=function(n){var r=e[n],o=n===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(r);return 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===r}));o||null==s||s.expand(),t=null==s?void 0:s.schema},r=0;r<e.length-1;r++)n(r)}}),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,n){void 0===n&&(n="");var r=n.split(this.options.deepLinkPrefix)[1],o=e&&this.getItemById(e.id)||e;this.activate(o,t,i,!1,r),this.scrollToActive(r?n:""),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("["+SECTION_ATTR+'="'+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)}}),__decorate([observable],e.prototype,"flatItems",void 0),__decorate([observable],e.prototype,"items",void 0),__decorate([observable],e.prototype,"activeRenderItemIdx",void 0),__decorate([observable.ref],e.prototype,"renderItems",void 0),__decorate([observable],e.prototype,"activeItemIdx",void 0),__decorate([observable],e.prototype,"sideBarOpened",void 0),__decorate([action],e.prototype,"toggleSidebar",null),__decorate([action],e.prototype,"closeSidebar",null),__decorate([action],e.prototype,"activateBase",null),__decorate([action],e.prototype,"activate",null),__decorate([action.bound],e.prototype,"activateAndScroll",null),e}();export{ProMenu};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,n=e.items;i<n.length;i++){var r=n[i];if("section"!==r.type)break;t.push(r)}return t}function normalizeItem(e,t,i,n){var r;if(e.absoluteIdx=t,"none"!==i)for(var o=0,a=(null===(r=e.versions)||void 0===r?void 0:r.map((function(e){return e.model})))||[e];o<a.length;o++){var s=a[o],l=getParentOfType(s,"tag");if(s.parent&&l&&!("_id_normalized"in s)){if(n){var c=s.id.split("/"),d=c[0],u=c[1],f=withoutVersion(s.id);if("operation"===s.type&&!u.startsWith("operation"))return;s.id=d+"/"+withoutVersion(l.id)+"/"+f}else{if("operation"===s.type&&!s.id.startsWith("operation"))return;s.id=l.id+"/"+s.id}s._id_normalized=!0}}}
1
+ import{__assign,__decorate}from"tslib";import{flattenByProp,SECURITY_SCHEMES_SECTION_PREFIX,querySelector}from"../redoc-lib";import{action,observable,makeObservable}from"mobx";import{VersionedSpecStore}from"./VersionedSpecStore";import{SECTION_ATTR}from"../redoc-lib/src/services/constants";import{history as historyInst}from"../redoc-lib/src/services/HistoryService";var ProMenu=function(){function e(e,t,i,n){var r=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:n}),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 r.flatItems.find((function(t){return t.id===e}))}}),Object.defineProperty(this,"initOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var t;void 0===e&&(e=r.history.currentId);var i=e.split(r.options.deepLinkPrefix)[0];if(i){var n;if((n=r.flatItems.find((function(e){return e.id===i})))&&"tag"===n.type&&r.options.hideTagInfo&&"item"===r.options.pagination)return r.activate(n.items[0].current,!0,!0,!1,e),void n.collapse();n?(r.activate(n,!1,!1,!1,e),n.active=!1):i.startsWith(SECURITY_SCHEMES_SECTION_PREFIX)&&(n=r.flatItems.find((function(e){return SECURITY_SCHEMES_SECTION_PREFIX.startsWith(e.id)})),r.activate(n,!1,!1,!1,e),n&&(n.active=!1))}else{var o=r.flatItems[0],a=(null===(t=o.items)||void 0===t?void 0:t[0])||o;r.activate(a,!1,!1,!1,e)}}}),Object.defineProperty(this,"updateOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){void 0===e&&(e=r.history.currentId);var t,i=e.split(r.options.deepLinkPrefix)[0];if(!i)return r.options.hideInfoDescription&&r.options.hideInfoSection?void r.activateAndScroll(r.renderItems[0],!0,!0):void 0;(t=r.flatItems.find((function(e){var t=(e.versions||[]).find((function(e){return e.model.id===i}));return t?(e.changeVersion(t.model),!0):e.id===i})))&&t.current&&(t=t.current),t?r.activateAndScroll(t,!1,void 0,e):(i.startsWith(SECURITY_SCHEMES_SECTION_PREFIX)&&(t=r.flatItems.find((function(e){return SECURITY_SCHEMES_SECTION_PREFIX.startsWith(e.id)})),r.activate(t)),r.scroll.scrollIntoViewBySelector("["+SECTION_ATTR+'="'+i+'"]'))}}),Object.defineProperty(this,"updateVersionOnHistory",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var t=e.split("/")[0],i=r.definition.versionsInfo.findIndex((function(e){return e.id===t}));i<0&&(i=r.definition.versionsInfo.findIndex((function(e){return e.isDefault}))),r.definition.activeVersionIdx!==i&&(r.definition.changeVersion(i<0?0:i),r.updateItemsByVersionChange(!1,e));var n=t+"/"+SECURITY_SCHEMES_SECTION_PREFIX;if(e.startsWith(n)){var o=r.flatItems.find((function(e){return n.startsWith(e.id)}));r.activate(o,!1,!0),setTimeout((function(){return r.scroll.scrollIntoViewBySelector("["+SECTION_ATTR+'="'+e+'"]')}),0)}}}),Object.defineProperty(this,"updateOnScroll",{enumerable:!0,configurable:!0,writable:!0,value:function(e){for(var t=e?1:-1,i=r.activeItemIdx;(-1!==i||e)&&!(i>=r.flatItems.length-1&&e);){if(e){var n=!1,o=r.flatItems[i+1];switch(r.options.pagination){case"section":n=o&&("spec"===o.type||"group"===o.type||"tag"===o.type||"section"===r.options.markdownItemsPagination&&!o.parent);break;case"item":n="section"!==(null==o?void 0:o.type)}var a=r.getElementAt(i+1);if(-1===i&&"tag"===r.flatItems[0].type&&(n=!1),r.scroll.isElementBellow(a)||n)break}else{var s=r.flatItems[i]&&r.flatItems[i].type;n="section"===r.options.pagination&&("spec"===s||"group"===s||"tag"===s)||"item"===r.options.pagination&&"section"!==s,a=r.getElementAt(i);if(r.scroll.isElementAbove(a)||n)break}i+=t}var l=r.flatItems[i];"none"===r.options.pagination||"section"===r.options.pagination?l&&(l.current?l.current.active:l.active)||r.activate(l,!0,!0,!1):l&&"section"===l.type&&((l.current?l.current.active:l.active)||r.activate(l,!0,!0,!1))}}),makeObservable(this),this.items=e.contentItems,this.flatItems=flattenByProp(this.items||[],"items"),this.flatItems.forEach((function(e,t){e.absoluteIdx=t;for(var i=0,n=e.versions||[];i<n.length;i++){n[i].model.absoluteIdx=t}})),i.disableSidebar||this.subscribe(),this.flatItems.forEach((function(e,t){return normalizeItem(e,t,i.pagination,r.definition instanceof VersionedSpecStore)})),this.renderItems=this.buildRenderItems(0),this.activeItemIdx=-1,this.activeRenderItemIdx=-1,this.definition instanceof 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=historyInst.currentId),e&&t.scrollIntoViewBySelector("["+SECTION_ATTR+'="'+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&&querySelector("["+SECTION_ATTR+'="'+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&&querySelector("["+SECTION_ATTR+'="'+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,n=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((function(e,t){return normalizeItem(e,t,i.options.pagination,i.definition instanceof VersionedSpecStore)}));var r=t?(this.flatItems.find((function(e){return withoutVersion(e.id)===t}))||{absoluteIdx:-1}).absoluteIdx:-1;if(-1!==r&&"none"!==this.options.pagination||(this.renderItems=this.buildRenderItems(0)),this.activeItemIdx=-1,-1!==r)this.activate(this.flatItems[r],e);else if(-1!==n)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=[],n=getParentOfType(t,"tag");if("section"===this.options.pagination&&n)return[n];if("item"===this.options.pagination&&n)return[__assign(__assign({},n),{items:getLeadingSectionItems(n)})];var r=getParentSpecItem(t),o=(null==r?void 0:r.items)||this.items;if("section"===this.options.markdownItemsPagination){var a=t.parent||t;i.push(a)}else for(var s=0;s<o.length&&"section"===o[s].type;s++)i.push(o[s]);return i}switch(this.options.pagination){case"section":if("operation"===t.type&&t.parent)return[t.parent];if("group"!==t.type)return[t];case"item":return"group"===t.type||"tag"===t.type&&this.options.hideTagInfo?this.buildRenderItems(e+1):"operation"===t.type?[t]:[__assign(__assign({},t),{items:getLeadingSectionItems(t)})];default:return[]}}}),Object.defineProperty(e.prototype,"activateBase",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t,i,n){var r,o,a,s=this;if(void 0===t&&(t=!0),void 0===i&&(i=!1),(null===(r=this.activeItem)||void 0===r?void 0:r.id)===(null==e?void 0:e.id)&&!n)return t&&e&&this.history.replace(e.id,i),void(e&&!e.active&&e.activate());if(!e||"group"!==e.type)if(this.activeItem&&this.activeItem.id!==(null==e?void 0:e.id)&&this.deactivate(this.activeItem),e){this.activeItemIdx=e.absoluteIdx,t&&this.history.replace(e.id,i),e.activate(),e.expand();var l=new URLSearchParams(n),c="request"===l.get("t"),d="response"===l.get("t"),u=l.get("c"),f=l.get("ct"),p=l.get("in"),v=l.get("path"),m=(null==v?void 0:v.split(this.options.deepLinkSeparator))||[],b=e;if(p)for(var h=b.parameters,I=function(e){var t=null==h?void 0:h.find((function(t){return t.name===e}));null==t||t.expand(),h=null===(o=null==t?void 0:t.schema)||void 0===o?void 0:o.fields},y=0,g=m;y<g.length;y++){I(g[y])}else if(c){var S=null===(a=b.requestBody)||void 0===a?void 0:a.content;b.activateMimeName(f||b.activeMimeName),setTimeout((function(){var e;return s.activateField(m,null===(e=null==S?void 0:S.active)||void 0===e?void 0:e.schema)}),0)}else if(d){var O=b.responses.find((function(e){return e.code===u}));(null==O?void 0:O.expanded)||null==O||O.expand(),b.activateMimeName(f||b.activeMimeName),setTimeout((function(){var e,t;return s.activateField(m,null===(t=null===(e=null==O?void 0:O.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,n,r){var o=this;if(void 0===t&&(t=!0),void 0===i&&(i=!1),void 0===n&&(n=!0),"none"===this.options.pagination)return this.activateBase(e,t,i,r),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||this.options.hideTagInfo)){if(e.expanded)return void e.collapse();e.expand(),e=this.flatItems[e.absoluteIdx+1]}if(this.activateBase(e,e&&t,i,r),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)}var s=this.options.hooks||{};if(s.OnPagination&&this.renderItems[0]){var l=this.renderItems[0];s.OnPagination({operation:"operation"===l.type?l:void 0,item:"operation"!==l.type?l:void 0})}n&&setTimeout((function(){return o.scrollToActive()})),!e&&this.definition instanceof 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,n=function(n){var r=e[n],o=n===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(r);return 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===r}));o||null==s||s.expand(),t=null==s?void 0:s.schema},r=0;r<e.length-1;r++)n(r)}}),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,n){void 0===n&&(n="");var r=n.split(this.options.deepLinkPrefix)[1],o=e&&this.getItemById(e.id)||e;this.activate(o,t,i,!1,r),this.scrollToActive(r?n:""),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("["+SECTION_ATTR+'="'+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)}}),__decorate([observable],e.prototype,"flatItems",void 0),__decorate([observable],e.prototype,"items",void 0),__decorate([observable],e.prototype,"activeRenderItemIdx",void 0),__decorate([observable.ref],e.prototype,"renderItems",void 0),__decorate([observable],e.prototype,"activeItemIdx",void 0),__decorate([observable],e.prototype,"sideBarOpened",void 0),__decorate([action],e.prototype,"toggleSidebar",null),__decorate([action],e.prototype,"closeSidebar",null),__decorate([action],e.prototype,"activateBase",null),__decorate([action],e.prototype,"activate",null),__decorate([action.bound],e.prototype,"activateAndScroll",null),e}();export{ProMenu};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,n=e.items;i<n.length;i++){var r=n[i];if("section"!==r.type)break;t.push(r)}return t}function normalizeItem(e,t,i,n){var r;if(e.absoluteIdx=t,"none"!==i)for(var o=0,a=(null===(r=e.versions)||void 0===r?void 0:r.map((function(e){return e.model})))||[e];o<a.length;o++){var s=a[o],l=getParentOfType(s,"tag");if(s.parent&&l&&!("_id_normalized"in s)){if(n){var c=s.id.split("/"),d=c[0],u=c[1],f=withoutVersion(s.id);if("operation"===s.type&&!u.startsWith("operation"))return;s.id=d+"/"+withoutVersion(l.id)+"/"+f}else{if("operation"===s.type&&!s.id.startsWith("operation"))return;s.id=l.id+"/"+s.id}s._id_normalized=!0}}}
2
2
  //# sourceMappingURL=ProMenu.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redocly/reference-docs",
3
- "version": "2.4.0-rc.2",
3
+ "version": "2.4.0-rc.3",
4
4
  "description": "Redocly Reference Docs",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-esm/index.js",