0ae7218c91f6d5c461751aa0b227a4556ef6d76b129ebc7176665242dd7112b8.json 25 KB

1
  1. {"ast":null,"code":"import _asyncToGenerator from \"F:/workspace/huinongbao-app/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";\n/*!\n * (C) Ionic http://ionicframework.com - MIT License\n */\nimport { r as registerInstance, h, f as Host, i as getElement, d as createEvent } from './index-28849c61.js';\nimport { a as attachComponent } from './framework-delegate-63d1a679.js';\nimport './helpers-da915de8.js';\nconst tabCss = \":host(.tab-hidden){display:none !important}\";\nconst IonTabStyle0 = tabCss;\nconst Tab = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\n this.loaded = false;\n this.active = false;\n this.delegate = undefined;\n this.tab = undefined;\n this.component = undefined;\n }\n componentWillLoad() {\n var _this = this;\n return _asyncToGenerator(function* () {\n if (_this.active) {\n yield _this.setActive();\n }\n })();\n }\n /** Set the active component for the tab */\n setActive() {\n var _this2 = this;\n return _asyncToGenerator(function* () {\n yield _this2.prepareLazyLoaded();\n _this2.active = true;\n })();\n }\n changeActive(isActive) {\n if (isActive) {\n this.prepareLazyLoaded();\n }\n }\n prepareLazyLoaded() {\n if (!this.loaded && this.component != null) {\n this.loaded = true;\n try {\n return attachComponent(this.delegate, this.el, this.component, ['ion-page']);\n } catch (e) {\n console.error(e);\n }\n }\n return Promise.resolve(undefined);\n }\n render() {\n const {\n tab,\n active,\n component\n } = this;\n return h(Host, {\n key: 'cb75d0877979b3b8df8f7e1952bfa9677da1eaa5',\n role: \"tabpanel\",\n \"aria-hidden\": !active ? 'true' : null,\n \"aria-labelledby\": `tab-button-${tab}`,\n class: {\n 'ion-page': component === undefined,\n 'tab-hidden': !active\n }\n }, h(\"slot\", {\n key: '37fbb7b7a6b03eb93b1dacd2dc1025b78eb2aa6b'\n }));\n }\n get el() {\n return getElement(this);\n }\n static get watchers() {\n return {\n \"active\": [\"changeActive\"]\n };\n }\n};\nTab.style = IonTabStyle0;\nconst tabsCss = \":host{left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;width:100%;height:100%;contain:layout size style;z-index:0}.tabs-inner{position:relative;-ms-flex:1;flex:1;contain:layout size style}\";\nconst IonTabsStyle0 = tabsCss;\nconst Tabs = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\n this.ionNavWillLoad = createEvent(this, \"ionNavWillLoad\", 7);\n this.ionTabsWillChange = createEvent(this, \"ionTabsWillChange\", 3);\n this.ionTabsDidChange = createEvent(this, \"ionTabsDidChange\", 3);\n this.transitioning = false;\n this.onTabClicked = ev => {\n const {\n href,\n tab\n } = ev.detail;\n if (this.useRouter && href !== undefined) {\n const router = document.querySelector('ion-router');\n if (router) {\n router.push(href);\n }\n } else {\n this.select(tab);\n }\n };\n this.selectedTab = undefined;\n this.useRouter = false;\n }\n componentWillLoad() {\n var _this3 = this;\n return _asyncToGenerator(function* () {\n if (!_this3.useRouter) {\n /**\n * JavaScript and StencilJS use `ion-router`, while\n * the other frameworks use `ion-router-outlet`.\n *\n * If either component is present then tabs will not use\n * a basic tab-based navigation. It will use the history\n * stack or URL updates associated with the router.\n */\n _this3.useRouter = (!!_this3.el.querySelector('ion-router-outlet') || !!document.querySelector('ion-router')) && !_this3.el.closest('[no-router]');\n }\n if (!_this3.useRouter) {\n const tabs = _this3.tabs;\n if (tabs.length > 0) {\n yield _this3.select(tabs[0]);\n }\n }\n _this3.ionNavWillLoad.emit();\n })();\n }\n componentWillRender() {\n const tabBar = this.el.querySelector('ion-tab-bar');\n if (tabBar) {\n const tab = this.selectedTab ? this.selectedTab.tab : undefined;\n tabBar.selectedTab = tab;\n }\n }\n /**\n * Select a tab by the value of its `tab` property or an element reference. This method is only available for vanilla JavaScript projects. The Angular, React, and Vue implementations of tabs are coupled to each framework's router.\n *\n * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.\n */\n select(tab) {\n var _this4 = this;\n return _asyncToGenerator(function* () {\n const selectedTab = getTab(_this4.tabs, tab);\n if (!_this4.shouldSwitch(selectedTab)) {\n return false;\n }\n yield _this4.setActive(selectedTab);\n yield _this4.notifyRouter();\n _this4.tabSwitch();\n return true;\n })();\n }\n /**\n * Get a specific tab by the value of its `tab` property or an element reference. This method is only available for vanilla JavaScript projects. The Angular, React, and Vue implementations of tabs are coupled to each framework's router.\n *\n * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.\n */\n getTab(tab) {\n var _this5 = this;\n return _asyncToGenerator(function* () {\n return getTab(_this5.tabs, tab);\n })();\n }\n /**\n * Get the currently selected tab. This method is only available for vanilla JavaScript projects. The Angular, React, and Vue implementations of tabs are coupled to each framework's router.\n */\n getSelected() {\n return Promise.resolve(this.selectedTab ? this.selectedTab.tab : undefined);\n }\n /** @internal */\n setRouteId(id) {\n var _this6 = this;\n return _asyncToGenerator(function* () {\n const selectedTab = getTab(_this6.tabs, id);\n if (!_this6.shouldSwitch(selectedTab)) {\n return {\n changed: false,\n element: _this6.selectedTab\n };\n }\n yield _this6.setActive(selectedTab);\n return {\n changed: true,\n element: _this6.selectedTab,\n markVisible: () => _this6.tabSwitch()\n };\n })();\n }\n /** @internal */\n getRouteId() {\n var _this7 = this;\n return _asyncToGenerator(function* () {\n var _a;\n const tabId = (_a = _this7.selectedTab) === null || _a === void 0 ? void 0 : _a.tab;\n return tabId !== undefined ? {\n id: tabId,\n element: _this7.selectedTab\n } : undefined;\n })();\n }\n setActive(selectedTab) {\n if (this.transitioning) {\n return Promise.reject('transitioning already happening');\n }\n this.transitioning = true;\n this.leavingTab = this.selectedTab;\n this.selectedTab = selectedTab;\n this.ionTabsWillChange.emit({\n tab: selectedTab.tab\n });\n selectedTab.active = true;\n return Promise.resolve();\n }\n tabSwitch() {\n const selectedTab = this.selectedTab;\n const leavingTab = this.leavingTab;\n this.leavingTab = undefined;\n this.transitioning = false;\n if (!selectedTab) {\n return;\n }\n if (leavingTab !== selectedTab) {\n if (leavingTab) {\n leavingTab.active = false;\n }\n this.ionTabsDidChange.emit({\n tab: selectedTab.tab\n });\n }\n }\n notifyRouter() {\n if (this.useRouter) {\n const router = document.querySelector('ion-router');\n if (router) {\n return router.navChanged('forward');\n }\n }\n return Promise.resolve(false);\n }\n shouldSwitch(selectedTab) {\n const leavingTab = this.selectedTab;\n return selectedTab !== undefined && selectedTab !== leavingTab && !this.transitioning;\n }\n get tabs() {\n return Array.from(this.el.querySelectorAll('ion-tab'));\n }\n render() {\n return h(Host, {\n key: 'e01ccf6bfaccad094515be50e407399c733fc226',\n onIonTabButtonClick: this.onTabClicked\n }, h(\"slot\", {\n key: '38d2d01dbfd8a08f01e6f0e27274b21d75424e37',\n name: \"top\"\n }), h(\"div\", {\n key: '7e894f0f423e2d43e1c68daff5f9f6c442fad237',\n class: \"tabs-inner\"\n }, h(\"slot\", {\n key: 'df16be529a0370a26d0adf850530b31607507c23'\n })), h(\"slot\", {\n key: '44642e1cb24c3281c43db75fd69a32fe0defe40a',\n name: \"bottom\"\n }));\n }\n get el() {\n return getElement(this);\n }\n};\nconst getTab = (tabs, tab) => {\n const tabEl = typeof tab === 'string' ? tabs.find(t => t.tab === tab) : tab;\n if (!tabEl) {\n console.error(`tab with id: \"${tabEl}\" does not exist`);\n }\n return tabEl;\n};\nTabs.style = IonTabsStyle0;\nexport { Tab as ion_tab, Tabs as ion_tabs };","map":{"version":3,"names":["r","registerInstance","h","f","Host","i","getElement","d","createEvent","a","attachComponent","tabCss","IonTabStyle0","Tab","constructor","hostRef","loaded","active","delegate","undefined","tab","component","componentWillLoad","_this","_asyncToGenerator","setActive","_this2","prepareLazyLoaded","changeActive","isActive","el","e","console","error","Promise","resolve","render","key","role","class","watchers","style","tabsCss","IonTabsStyle0","Tabs","ionNavWillLoad","ionTabsWillChange","ionTabsDidChange","transitioning","onTabClicked","ev","href","detail","useRouter","router","document","querySelector","push","select","selectedTab","_this3","closest","tabs","length","emit","componentWillRender","tabBar","_this4","getTab","shouldSwitch","notifyRouter","tabSwitch","_this5","getSelected","setRouteId","id","_this6","changed","element","markVisible","getRouteId","_this7","_a","tabId","reject","leavingTab","navChanged","Array","from","querySelectorAll","onIonTabButtonClick","name","tabEl","find","t","ion_tab","ion_tabs"],"sources":["F:/workspace/huinongbao-app/node_modules/@ionic/core/dist/esm/ion-tab_2.entry.js"],"sourcesContent":["/*!\n * (C) Ionic http://ionicframework.com - MIT License\n */\nimport { r as registerInstance, h, f as Host, i as getElement, d as createEvent } from './index-28849c61.js';\nimport { a as attachComponent } from './framework-delegate-63d1a679.js';\nimport './helpers-da915de8.js';\n\nconst tabCss = \":host(.tab-hidden){display:none !important}\";\nconst IonTabStyle0 = tabCss;\n\nconst Tab = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\n this.loaded = false;\n this.active = false;\n this.delegate = undefined;\n this.tab = undefined;\n this.component = undefined;\n }\n async componentWillLoad() {\n if (this.active) {\n await this.setActive();\n }\n }\n /** Set the active component for the tab */\n async setActive() {\n await this.prepareLazyLoaded();\n this.active = true;\n }\n changeActive(isActive) {\n if (isActive) {\n this.prepareLazyLoaded();\n }\n }\n prepareLazyLoaded() {\n if (!this.loaded && this.component != null) {\n this.loaded = true;\n try {\n return attachComponent(this.delegate, this.el, this.component, ['ion-page']);\n }\n catch (e) {\n console.error(e);\n }\n }\n return Promise.resolve(undefined);\n }\n render() {\n const { tab, active, component } = this;\n return (h(Host, { key: 'cb75d0877979b3b8df8f7e1952bfa9677da1eaa5', role: \"tabpanel\", \"aria-hidden\": !active ? 'true' : null, \"aria-labelledby\": `tab-button-${tab}`, class: {\n 'ion-page': component === undefined,\n 'tab-hidden': !active,\n } }, h(\"slot\", { key: '37fbb7b7a6b03eb93b1dacd2dc1025b78eb2aa6b' })));\n }\n get el() { return getElement(this); }\n static get watchers() { return {\n \"active\": [\"changeActive\"]\n }; }\n};\nTab.style = IonTabStyle0;\n\nconst tabsCss = \":host{left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;width:100%;height:100%;contain:layout size style;z-index:0}.tabs-inner{position:relative;-ms-flex:1;flex:1;contain:layout size style}\";\nconst IonTabsStyle0 = tabsCss;\n\nconst Tabs = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\n this.ionNavWillLoad = createEvent(this, \"ionNavWillLoad\", 7);\n this.ionTabsWillChange = createEvent(this, \"ionTabsWillChange\", 3);\n this.ionTabsDidChange = createEvent(this, \"ionTabsDidChange\", 3);\n this.transitioning = false;\n this.onTabClicked = (ev) => {\n const { href, tab } = ev.detail;\n if (this.useRouter && href !== undefined) {\n const router = document.querySelector('ion-router');\n if (router) {\n router.push(href);\n }\n }\n else {\n this.select(tab);\n }\n };\n this.selectedTab = undefined;\n this.useRouter = false;\n }\n async componentWillLoad() {\n if (!this.useRouter) {\n /**\n * JavaScript and StencilJS use `ion-router`, while\n * the other frameworks use `ion-router-outlet`.\n *\n * If either component is present then tabs will not use\n * a basic tab-based navigation. It will use the history\n * stack or URL updates associated with the router.\n */\n this.useRouter =\n (!!this.el.querySelector('ion-router-outlet') || !!document.querySelector('ion-router')) &&\n !this.el.closest('[no-router]');\n }\n if (!this.useRouter) {\n const tabs = this.tabs;\n if (tabs.length > 0) {\n await this.select(tabs[0]);\n }\n }\n this.ionNavWillLoad.emit();\n }\n componentWillRender() {\n const tabBar = this.el.querySelector('ion-tab-bar');\n if (tabBar) {\n const tab = this.selectedTab ? this.selectedTab.tab : undefined;\n tabBar.selectedTab = tab;\n }\n }\n /**\n * Select a tab by the value of its `tab` property or an element reference. This method is only available for vanilla JavaScript projects. The Angular, React, and Vue implementations of tabs are coupled to each framework's router.\n *\n * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.\n */\n async select(tab) {\n const selectedTab = getTab(this.tabs, tab);\n if (!this.shouldSwitch(selectedTab)) {\n return false;\n }\n await this.setActive(selectedTab);\n await this.notifyRouter();\n this.tabSwitch();\n return true;\n }\n /**\n * Get a specific tab by the value of its `tab` property or an element reference. This method is only available for vanilla JavaScript projects. The Angular, React, and Vue implementations of tabs are coupled to each framework's router.\n *\n * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.\n */\n async getTab(tab) {\n return getTab(this.tabs, tab);\n }\n /**\n * Get the currently selected tab. This method is only available for vanilla JavaScript projects. The Angular, React, and Vue implementations of tabs are coupled to each framework's router.\n */\n getSelected() {\n return Promise.resolve(this.selectedTab ? this.selectedTab.tab : undefined);\n }\n /** @internal */\n async setRouteId(id) {\n const selectedTab = getTab(this.tabs, id);\n if (!this.shouldSwitch(selectedTab)) {\n return { changed: false, element: this.selectedTab };\n }\n await this.setActive(selectedTab);\n return {\n changed: true,\n element: this.selectedTab,\n markVisible: () => this.tabSwitch(),\n };\n }\n /** @internal */\n async getRouteId() {\n var _a;\n const tabId = (_a = this.selectedTab) === null || _a === void 0 ? void 0 : _a.tab;\n return tabId !== undefined ? { id: tabId, element: this.selectedTab } : undefined;\n }\n setActive(selectedTab) {\n if (this.transitioning) {\n return Promise.reject('transitioning already happening');\n }\n this.transitioning = true;\n this.leavingTab = this.selectedTab;\n this.selectedTab = selectedTab;\n this.ionTabsWillChange.emit({ tab: selectedTab.tab });\n selectedTab.active = true;\n return Promise.resolve();\n }\n tabSwitch() {\n const selectedTab = this.selectedTab;\n const leavingTab = this.leavingTab;\n this.leavingTab = undefined;\n this.transitioning = false;\n if (!selectedTab) {\n return;\n }\n if (leavingTab !== selectedTab) {\n if (leavingTab) {\n leavingTab.active = false;\n }\n this.ionTabsDidChange.emit({ tab: selectedTab.tab });\n }\n }\n notifyRouter() {\n if (this.useRouter) {\n const router = document.querySelector('ion-router');\n if (router) {\n return router.navChanged('forward');\n }\n }\n return Promise.resolve(false);\n }\n shouldSwitch(selectedTab) {\n const leavingTab = this.selectedTab;\n return selectedTab !== undefined && selectedTab !== leavingTab && !this.transitioning;\n }\n get tabs() {\n return Array.from(this.el.querySelectorAll('ion-tab'));\n }\n render() {\n return (h(Host, { key: 'e01ccf6bfaccad094515be50e407399c733fc226', onIonTabButtonClick: this.onTabClicked }, h(\"slot\", { key: '38d2d01dbfd8a08f01e6f0e27274b21d75424e37', name: \"top\" }), h(\"div\", { key: '7e894f0f423e2d43e1c68daff5f9f6c442fad237', class: \"tabs-inner\" }, h(\"slot\", { key: 'df16be529a0370a26d0adf850530b31607507c23' })), h(\"slot\", { key: '44642e1cb24c3281c43db75fd69a32fe0defe40a', name: \"bottom\" })));\n }\n get el() { return getElement(this); }\n};\nconst getTab = (tabs, tab) => {\n const tabEl = typeof tab === 'string' ? tabs.find((t) => t.tab === tab) : tab;\n if (!tabEl) {\n console.error(`tab with id: \"${tabEl}\" does not exist`);\n }\n return tabEl;\n};\nTabs.style = IonTabsStyle0;\n\nexport { Tab as ion_tab, Tabs as ion_tabs };\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}