@ionic/core 7.6.2-dev.11705355381.14b22962 → 7.6.2-dev.11706202387.1dfcd9b8

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.
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ import{r as t,d as i,h as s,f as e,H as o}from"./p-290d3fe9.js";import{g as n}from"./p-2408c236.js";import{o as r,s as a}from"./p-23a9d086.js";import{l as h,t as c,s as d,d as l,b as u,c as v}from"./p-cd574dfa.js";import{b as m,c as f}from"./p-7fae5c36.js";import{a as p}from"./p-4180a747.js";class w{constructor(t,i){this.component=t,this.params=i,this.state=1}async init(t){if(this.state=2,!this.element){const i=this.component;this.element=await p(this.delegate,t,i,["ion-page","ion-page-invisible"],this.params)}}_destroy(){r(3!==this.state,"view state must be ATTACHED");const t=this.element;t&&(this.delegate?this.delegate.removeViewFromDom(t.parentElement,t):t.remove()),this.nav=void 0,this.state=3}}const b=(t,i,s)=>!!t&&t.component===i&&a(t.params,s),g=(t,i)=>t?t instanceof w?t:new w(t,i):null,y=class{constructor(s){t(this,s),this.ionNavWillLoad=i(this,"ionNavWillLoad",7),this.ionNavWillChange=i(this,"ionNavWillChange",3),this.ionNavDidChange=i(this,"ionNavDidChange",3),this.transInstr=[],this.gestureOrAnimationInProgress=!1,this.useRouter=!1,this.isTransitioning=!1,this.destroyed=!1,this.views=[],this.didLoad=!1,this.delegate=void 0,this.swipeGesture=void 0,this.animated=!0,this.animation=void 0,this.rootParams=void 0,this.root=void 0}swipeGestureChanged(){this.gesture&&this.gesture.enable(!0===this.swipeGesture)}rootChanged(){void 0!==this.root&&!1!==this.didLoad&&(this.useRouter||void 0!==this.root&&this.setRoot(this.root,this.rootParams))}componentWillLoad(){if(this.useRouter=null!==document.querySelector("ion-router")&&null===this.el.closest("[no-router]"),void 0===this.swipeGesture){const t=m(this);this.swipeGesture=f.getBoolean("swipeBackEnabled","ios"===t)}this.ionNavWillLoad.emit()}async componentDidLoad(){this.didLoad=!0,this.rootChanged(),this.gesture=(await import("./p-a60a1ce5.js")).createSwipeBackGesture(this.el,this.canStart.bind(this),this.onStart.bind(this),this.onMove.bind(this),this.onEnd.bind(this)),this.swipeGestureChanged()}connectedCallback(){this.destroyed=!1}disconnectedCallback(){for(const t of this.views)h(t.element,l),t._destroy();this.gesture&&(this.gesture.destroy(),this.gesture=void 0),this.transInstr.length=0,this.views.length=0,this.destroyed=!0}push(t,i,s,e){return this.insert(-1,t,i,s,e)}insert(t,i,s,e,o){return this.insertPages(t,[{component:i,componentProps:s}],e,o)}insertPages(t,i,s,e){return this.queueTrns({insertStart:t,insertViews:i,opts:s},e)}pop(t,i){return this.removeIndex(-1,1,t,i)}popTo(t,i,s){const e={removeStart:-1,removeCount:-1,opts:i};return"object"==typeof t&&t.component?(e.removeView=t,e.removeStart=1):"number"==typeof t&&(e.removeStart=t+1),this.queueTrns(e,s)}popToRoot(t,i){return this.removeIndex(1,-1,t,i)}removeIndex(t,i=1,s,e){return this.queueTrns({removeStart:t,removeCount:i,opts:s},e)}setRoot(t,i,s,e){return this.setPages([{component:t,componentProps:i}],s,e)}setPages(t,i,s){return null!=i||(i={}),!0!==i.animated&&(i.animated=!1),this.queueTrns({insertStart:0,insertViews:t,removeStart:0,removeCount:-1,opts:i},s)}setRouteId(t,i,s,e){const o=this.getActiveSync();if(b(o,t,i))return Promise.resolve({changed:!1,element:o.element});let n;const r=new Promise((t=>n=t));let a;const h={updateURL:!1,viewIsReady:t=>{let i;const s=new Promise((t=>i=t));return n({changed:!0,element:t,markVisible:async()=>{i(),await a}}),s}};if("root"===s)a=this.setRoot(t,i,h);else{const o=this.views.find((s=>b(s,t,i)));o?a=this.popTo(o,Object.assign(Object.assign({},h),{direction:"back",animationBuilder:e})):"forward"===s?a=this.push(t,i,Object.assign(Object.assign({},h),{animationBuilder:e})):"back"===s&&(a=this.setRoot(t,i,Object.assign(Object.assign({},h),{direction:"back",animated:!0,animationBuilder:e})))}return r}async getRouteId(){const t=this.getActiveSync();if(t)return{id:t.element.tagName,params:t.params,element:t.element}}async getActive(){return this.getActiveSync()}async getByIndex(t){return this.views[t]}async canGoBack(t){return this.canGoBackSync(t)}async getPrevious(t){return this.getPreviousSync(t)}async getLength(){return Promise.resolve(this.views.length)}getActiveSync(){return this.views[this.views.length-1]}canGoBackSync(t=this.getActiveSync()){return!(!t||!this.getPreviousSync(t))}getPreviousSync(t=this.getActiveSync()){if(!t)return;const i=this.views,s=i.indexOf(t);return s>0?i[s-1]:void 0}async queueTrns(t,i){var s,e;if(this.isTransitioning&&(null===(s=t.opts)||void 0===s?void 0:s.skipIfBusy))return!1;const o=new Promise(((i,s)=>{t.resolve=i,t.reject=s}));if(t.done=i,t.opts&&!1!==t.opts.updateURL&&this.useRouter){const i=document.querySelector("ion-router");if(i){const s=await i.canTransition();if(!1===s)return!1;if("string"==typeof s)return i.push(s,t.opts.direction||"back"),!1}}return 0===(null===(e=t.insertViews)||void 0===e?void 0:e.length)&&(t.insertViews=void 0),this.transInstr.push(t),this.nextTrns(),o}success(t,i){if(this.destroyed)this.fireError("nav controller was destroyed",i);else if(i.done&&i.done(t.hasCompleted,t.requiresTransition,t.enteringView,t.leavingView,t.direction),i.resolve(t.hasCompleted),!1!==i.opts.updateURL&&this.useRouter){const i=document.querySelector("ion-router");i&&i.navChanged("back"===t.direction?"back":"forward")}}failed(t,i){this.destroyed?this.fireError("nav controller was destroyed",i):(this.transInstr.length=0,this.fireError(t,i))}fireError(t,i){i.done&&i.done(!1,!1,t),i.reject&&!this.destroyed?i.reject(t):i.resolve(!1)}nextTrns(){if(this.isTransitioning)return!1;const t=this.transInstr.shift();return!!t&&(this.runTransition(t),!0)}async runTransition(t){try{this.ionNavWillChange.emit(),this.isTransitioning=!0,this.prepareTI(t);const i=this.getActiveSync(),s=this.getEnteringView(t,i);if(!i&&!s)throw new Error("no views in the stack to be removed");s&&1===s.state&&await s.init(this.el),this.postViewInit(s,i,t);const e=(t.enteringRequiresTransition||t.leavingRequiresTransition)&&s!==i;let o;e&&t.opts&&i&&("back"===t.opts.direction&&(t.opts.animationBuilder=t.opts.animationBuilder||(null==s?void 0:s.animationBuilder)),i.animationBuilder=t.opts.animationBuilder),o=e?await this.transition(s,i,t):{hasCompleted:!0,requiresTransition:!1},this.success(o,t),this.ionNavDidChange.emit()}catch(i){this.failed(i,t)}this.isTransitioning=!1,this.nextTrns()}prepareTI(t){var i,s,e;const o=this.views.length;if(null!==(i=t.opts)&&void 0!==i||(t.opts={}),null!==(s=(e=t.opts).delegate)&&void 0!==s||(e.delegate=this.delegate),void 0!==t.removeView){r(void 0!==t.removeStart,"removeView needs removeStart"),r(void 0!==t.removeCount,"removeView needs removeCount");const i=this.views.indexOf(t.removeView);if(i<0)throw new Error("removeView was not found");t.removeStart+=i}void 0!==t.removeStart&&(t.removeStart<0&&(t.removeStart=o-1),t.removeCount<0&&(t.removeCount=o-t.removeStart),t.leavingRequiresTransition=t.removeCount>0&&t.removeStart+t.removeCount===o),t.insertViews&&((t.insertStart<0||t.insertStart>o)&&(t.insertStart=o),t.enteringRequiresTransition=t.insertStart===o);const n=t.insertViews;if(!n)return;r(n.length>0,"length can not be zero");const a=n.map((t=>t instanceof w?t:"component"in t?g(t.component,null===t.componentProps?void 0:t.componentProps):g(t,void 0))).filter((t=>null!==t));if(0===a.length)throw new Error("invalid views to insert");for(const i of a){i.delegate=t.opts.delegate;const s=i.nav;if(s&&s!==this)throw new Error("inserted view was already inserted");if(3===i.state)throw new Error("inserted view was already destroyed")}t.insertViews=a}getEnteringView(t,i){const s=t.insertViews;if(void 0!==s)return s[s.length-1];const e=t.removeStart;if(void 0!==e){const s=this.views,o=e+t.removeCount;for(let t=s.length-1;t>=0;t--){const n=s[t];if((t<e||t>=o)&&n!==i)return n}}}postViewInit(t,i,s){var e,o,n;r(i||t,"Both leavingView and enteringView are null"),r(s.resolve,"resolve must be valid"),r(s.reject,"reject must be valid");const a=s.opts,{insertViews:c,removeStart:d,removeCount:m}=s;let f;if(void 0!==d&&void 0!==m){r(d>=0,"removeStart can not be negative"),r(m>=0,"removeCount can not be negative"),f=[];for(let s=d;s<d+m;s++){const e=this.views[s];void 0!==e&&e!==t&&e!==i&&f.push(e)}null!==(e=a.direction)&&void 0!==e||(a.direction="back")}const p=this.views.length+(null!==(o=null==c?void 0:c.length)&&void 0!==o?o:0)-(null!=m?m:0);if(r(p>=0,"final balance can not be negative"),0===p)throw console.warn("You can't remove all the pages in the navigation stack. nav.pop() is probably called too many times.",this,this.el),new Error("navigation stack needs at least one root page");if(c){let t=s.insertStart;for(const i of c)this.insertViewAt(i,t),t++;s.enteringRequiresTransition&&(null!==(n=a.direction)&&void 0!==n||(a.direction="forward"))}if(f&&f.length>0){for(const t of f)h(t.element,u),h(t.element,v),h(t.element,l);for(const t of f)this.destroyView(t)}}async transition(t,i,s){const e=s.opts,o=e.progressAnimation?t=>{void 0===t||this.gestureOrAnimationInProgress?this.sbAni=t:(this.gestureOrAnimationInProgress=!0,t.onFinish((()=>{this.gestureOrAnimationInProgress=!1}),{oneTimeCallback:!0}),t.progressEnd(0,0,0))}:void 0,n=m(this),r=t.element,a=i&&i.element,h=Object.assign(Object.assign({mode:n,showGoBack:this.canGoBackSync(t),baseEl:this.el,progressCallback:o,animated:this.animated&&f.getBoolean("animated",!0),enteringEl:r,leavingEl:a},e),{animationBuilder:e.animationBuilder||this.animation||f.get("navAnimation")}),{hasCompleted:d}=await c(h);return this.transitionFinish(d,t,i,e)}transitionFinish(t,i,s,e){const o=t?i:s;return o&&this.unmountInactiveViews(o),{hasCompleted:t,requiresTransition:!0,enteringView:i,leavingView:s,direction:e.direction}}insertViewAt(t,i){const s=this.views,e=s.indexOf(t);e>-1?(r(t.nav===this,"view is not part of the nav"),s.splice(e,1),s.splice(i,0,t)):(r(!t.nav,"nav is used"),t.nav=this,s.splice(i,0,t))}removeView(t){r(2===t.state||3===t.state,"view state should be loaded or destroyed");const i=this.views,s=i.indexOf(t);r(s>-1,"view must be part of the stack"),s>=0&&i.splice(s,1)}destroyView(t){t._destroy(),this.removeView(t)}unmountInactiveViews(t){if(this.destroyed)return;const i=this.views,s=i.indexOf(t);for(let t=i.length-1;t>=0;t--){const e=i[t],o=e.element;o&&(t>s?(h(o,l),this.destroyView(e)):t<s&&d(o,!0))}}canStart(){return!this.gestureOrAnimationInProgress&&!!this.swipeGesture&&!this.isTransitioning&&0===this.transInstr.length&&this.canGoBackSync()}onStart(){this.gestureOrAnimationInProgress=!0,this.pop({direction:"back",progressAnimation:!0})}onMove(t){this.sbAni&&this.sbAni.progressStep(t)}onEnd(t,i,s){if(this.sbAni){this.sbAni.onFinish((()=>{this.gestureOrAnimationInProgress=!1}),{oneTimeCallback:!0});let e=t?-.001:.001;t?e+=n([0,0],[.32,.72],[0,1],[1,1],i)[0]:(this.sbAni.easing("cubic-bezier(1, 0, 0.68, 0.28)"),e+=n([0,0],[1,0],[.68,.28],[1,1],i)[0]),this.sbAni.progressEnd(t?1:0,e,s)}else this.gestureOrAnimationInProgress=!1}render(){return s("slot",null)}get el(){return e(this)}static get watchers(){return{swipeGesture:["swipeGestureChanged"],root:["rootChanged"]}}};y.style=":host{left:0;right:0;top:0;bottom:0;position:absolute;contain:layout size style;z-index:0}";const k=class{constructor(i){t(this,i),this.onClick=()=>((t,i,s,e,o)=>{const n=this.el.closest("ion-nav");if(n)if("forward"===i){if(void 0!==s)return n.push(s,e,{skipIfBusy:!0,animationBuilder:o})}else if("root"===i){if(void 0!==s)return n.setRoot(s,e,{skipIfBusy:!0,animationBuilder:o})}else if("back"===i)return n.pop({skipIfBusy:!0,animationBuilder:o});return Promise.resolve(!1)})(0,this.routerDirection,this.component,this.componentProps,this.routerAnimation),this.component=void 0,this.componentProps=void 0,this.routerDirection="forward",this.routerAnimation=void 0}render(){return s(o,{onClick:this.onClick})}get el(){return e(this)}};export{y as ion_nav,k as ion_nav_link}
@@ -181,7 +181,10 @@ export declare class Nav implements NavOutlet {
181
181
  * @param view The view to get.
182
182
  */
183
183
  getPrevious(view?: ViewController): Promise<ViewController | undefined>;
184
- getLength(): number;
184
+ /**
185
+ * Returns the number of views in the stack.
186
+ */
187
+ getLength(): Promise<number>;
185
188
  private getActiveSync;
186
189
  private canGoBackSync;
187
190
  private getPreviousSync;
@@ -1822,6 +1822,10 @@ export namespace Components {
1822
1822
  * @param index The index of the view.
1823
1823
  */
1824
1824
  "getByIndex": (index: number) => Promise<ViewController | undefined>;
1825
+ /**
1826
+ * Returns the number of views in the stack.
1827
+ */
1828
+ "getLength": () => Promise<number>;
1825
1829
  /**
1826
1830
  * Get the previous view.
1827
1831
  * @param view The view to get.
package/hydrate/index.js CHANGED
@@ -24040,8 +24040,11 @@ class Nav {
24040
24040
  async getPrevious(view) {
24041
24041
  return this.getPreviousSync(view);
24042
24042
  }
24043
- getLength() {
24044
- return this.views.length;
24043
+ /**
24044
+ * Returns the number of views in the stack.
24045
+ */
24046
+ async getLength() {
24047
+ return Promise.resolve(this.views.length);
24045
24048
  }
24046
24049
  getActiveSync() {
24047
24050
  return this.views[this.views.length - 1];
@@ -24579,7 +24582,8 @@ class Nav {
24579
24582
  "getActive": [64],
24580
24583
  "getByIndex": [64],
24581
24584
  "canGoBack": [64],
24582
- "getPrevious": [64]
24585
+ "getPrevious": [64],
24586
+ "getLength": [64]
24583
24587
  },
24584
24588
  "$listeners$": undefined,
24585
24589
  "$lazyBundleId$": "-",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ionic/core",
3
- "version": "7.6.2-dev.11705355381.14b22962",
3
+ "version": "7.6.2-dev.11706202387.1dfcd9b8",
4
4
  "description": "Base components for Ionic",
5
5
  "keywords": [
6
6
  "ionic",
@@ -1,4 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- import{r as t,d as i,h as s,f as e,H as o}from"./p-290d3fe9.js";import{g as n}from"./p-2408c236.js";import{o as r,s as a}from"./p-23a9d086.js";import{l as h,t as c,s as d,d as l,b as u,c as v}from"./p-cd574dfa.js";import{b as f,c as m}from"./p-7fae5c36.js";import{a as p}from"./p-4180a747.js";class w{constructor(t,i){this.component=t,this.params=i,this.state=1}async init(t){if(this.state=2,!this.element){const i=this.component;this.element=await p(this.delegate,t,i,["ion-page","ion-page-invisible"],this.params)}}_destroy(){r(3!==this.state,"view state must be ATTACHED");const t=this.element;t&&(this.delegate?this.delegate.removeViewFromDom(t.parentElement,t):t.remove()),this.nav=void 0,this.state=3}}const b=(t,i,s)=>!!t&&t.component===i&&a(t.params,s),g=(t,i)=>t?t instanceof w?t:new w(t,i):null,y=class{constructor(s){t(this,s),this.ionNavWillLoad=i(this,"ionNavWillLoad",7),this.ionNavWillChange=i(this,"ionNavWillChange",3),this.ionNavDidChange=i(this,"ionNavDidChange",3),this.transInstr=[],this.gestureOrAnimationInProgress=!1,this.useRouter=!1,this.isTransitioning=!1,this.destroyed=!1,this.views=[],this.didLoad=!1,this.delegate=void 0,this.swipeGesture=void 0,this.animated=!0,this.animation=void 0,this.rootParams=void 0,this.root=void 0}swipeGestureChanged(){this.gesture&&this.gesture.enable(!0===this.swipeGesture)}rootChanged(){void 0!==this.root&&!1!==this.didLoad&&(this.useRouter||void 0!==this.root&&this.setRoot(this.root,this.rootParams))}componentWillLoad(){if(this.useRouter=null!==document.querySelector("ion-router")&&null===this.el.closest("[no-router]"),void 0===this.swipeGesture){const t=f(this);this.swipeGesture=m.getBoolean("swipeBackEnabled","ios"===t)}this.ionNavWillLoad.emit()}async componentDidLoad(){this.didLoad=!0,this.rootChanged(),this.gesture=(await import("./p-a60a1ce5.js")).createSwipeBackGesture(this.el,this.canStart.bind(this),this.onStart.bind(this),this.onMove.bind(this),this.onEnd.bind(this)),this.swipeGestureChanged()}connectedCallback(){this.destroyed=!1}disconnectedCallback(){for(const t of this.views)h(t.element,l),t._destroy();this.gesture&&(this.gesture.destroy(),this.gesture=void 0),this.transInstr.length=0,this.views.length=0,this.destroyed=!0}push(t,i,s,e){return this.insert(-1,t,i,s,e)}insert(t,i,s,e,o){return this.insertPages(t,[{component:i,componentProps:s}],e,o)}insertPages(t,i,s,e){return this.queueTrns({insertStart:t,insertViews:i,opts:s},e)}pop(t,i){return this.removeIndex(-1,1,t,i)}popTo(t,i,s){const e={removeStart:-1,removeCount:-1,opts:i};return"object"==typeof t&&t.component?(e.removeView=t,e.removeStart=1):"number"==typeof t&&(e.removeStart=t+1),this.queueTrns(e,s)}popToRoot(t,i){return this.removeIndex(1,-1,t,i)}removeIndex(t,i=1,s,e){return this.queueTrns({removeStart:t,removeCount:i,opts:s},e)}setRoot(t,i,s,e){return this.setPages([{component:t,componentProps:i}],s,e)}setPages(t,i,s){return null!=i||(i={}),!0!==i.animated&&(i.animated=!1),this.queueTrns({insertStart:0,insertViews:t,removeStart:0,removeCount:-1,opts:i},s)}setRouteId(t,i,s,e){const o=this.getActiveSync();if(b(o,t,i))return Promise.resolve({changed:!1,element:o.element});let n;const r=new Promise((t=>n=t));let a;const h={updateURL:!1,viewIsReady:t=>{let i;const s=new Promise((t=>i=t));return n({changed:!0,element:t,markVisible:async()=>{i(),await a}}),s}};if("root"===s)a=this.setRoot(t,i,h);else{const o=this.views.find((s=>b(s,t,i)));o?a=this.popTo(o,Object.assign(Object.assign({},h),{direction:"back",animationBuilder:e})):"forward"===s?a=this.push(t,i,Object.assign(Object.assign({},h),{animationBuilder:e})):"back"===s&&(a=this.setRoot(t,i,Object.assign(Object.assign({},h),{direction:"back",animated:!0,animationBuilder:e})))}return r}async getRouteId(){const t=this.getActiveSync();if(t)return{id:t.element.tagName,params:t.params,element:t.element}}async getActive(){return this.getActiveSync()}async getByIndex(t){return this.views[t]}async canGoBack(t){return this.canGoBackSync(t)}async getPrevious(t){return this.getPreviousSync(t)}getLength(){return this.views.length}getActiveSync(){return this.views[this.views.length-1]}canGoBackSync(t=this.getActiveSync()){return!(!t||!this.getPreviousSync(t))}getPreviousSync(t=this.getActiveSync()){if(!t)return;const i=this.views,s=i.indexOf(t);return s>0?i[s-1]:void 0}async queueTrns(t,i){var s,e;if(this.isTransitioning&&(null===(s=t.opts)||void 0===s?void 0:s.skipIfBusy))return!1;const o=new Promise(((i,s)=>{t.resolve=i,t.reject=s}));if(t.done=i,t.opts&&!1!==t.opts.updateURL&&this.useRouter){const i=document.querySelector("ion-router");if(i){const s=await i.canTransition();if(!1===s)return!1;if("string"==typeof s)return i.push(s,t.opts.direction||"back"),!1}}return 0===(null===(e=t.insertViews)||void 0===e?void 0:e.length)&&(t.insertViews=void 0),this.transInstr.push(t),this.nextTrns(),o}success(t,i){if(this.destroyed)this.fireError("nav controller was destroyed",i);else if(i.done&&i.done(t.hasCompleted,t.requiresTransition,t.enteringView,t.leavingView,t.direction),i.resolve(t.hasCompleted),!1!==i.opts.updateURL&&this.useRouter){const i=document.querySelector("ion-router");i&&i.navChanged("back"===t.direction?"back":"forward")}}failed(t,i){this.destroyed?this.fireError("nav controller was destroyed",i):(this.transInstr.length=0,this.fireError(t,i))}fireError(t,i){i.done&&i.done(!1,!1,t),i.reject&&!this.destroyed?i.reject(t):i.resolve(!1)}nextTrns(){if(this.isTransitioning)return!1;const t=this.transInstr.shift();return!!t&&(this.runTransition(t),!0)}async runTransition(t){try{this.ionNavWillChange.emit(),this.isTransitioning=!0,this.prepareTI(t);const i=this.getActiveSync(),s=this.getEnteringView(t,i);if(!i&&!s)throw new Error("no views in the stack to be removed");s&&1===s.state&&await s.init(this.el),this.postViewInit(s,i,t);const e=(t.enteringRequiresTransition||t.leavingRequiresTransition)&&s!==i;let o;e&&t.opts&&i&&("back"===t.opts.direction&&(t.opts.animationBuilder=t.opts.animationBuilder||(null==s?void 0:s.animationBuilder)),i.animationBuilder=t.opts.animationBuilder),o=e?await this.transition(s,i,t):{hasCompleted:!0,requiresTransition:!1},this.success(o,t),this.ionNavDidChange.emit()}catch(i){this.failed(i,t)}this.isTransitioning=!1,this.nextTrns()}prepareTI(t){var i,s,e;const o=this.views.length;if(null!==(i=t.opts)&&void 0!==i||(t.opts={}),null!==(s=(e=t.opts).delegate)&&void 0!==s||(e.delegate=this.delegate),void 0!==t.removeView){r(void 0!==t.removeStart,"removeView needs removeStart"),r(void 0!==t.removeCount,"removeView needs removeCount");const i=this.views.indexOf(t.removeView);if(i<0)throw new Error("removeView was not found");t.removeStart+=i}void 0!==t.removeStart&&(t.removeStart<0&&(t.removeStart=o-1),t.removeCount<0&&(t.removeCount=o-t.removeStart),t.leavingRequiresTransition=t.removeCount>0&&t.removeStart+t.removeCount===o),t.insertViews&&((t.insertStart<0||t.insertStart>o)&&(t.insertStart=o),t.enteringRequiresTransition=t.insertStart===o);const n=t.insertViews;if(!n)return;r(n.length>0,"length can not be zero");const a=n.map((t=>t instanceof w?t:"component"in t?g(t.component,null===t.componentProps?void 0:t.componentProps):g(t,void 0))).filter((t=>null!==t));if(0===a.length)throw new Error("invalid views to insert");for(const i of a){i.delegate=t.opts.delegate;const s=i.nav;if(s&&s!==this)throw new Error("inserted view was already inserted");if(3===i.state)throw new Error("inserted view was already destroyed")}t.insertViews=a}getEnteringView(t,i){const s=t.insertViews;if(void 0!==s)return s[s.length-1];const e=t.removeStart;if(void 0!==e){const s=this.views,o=e+t.removeCount;for(let t=s.length-1;t>=0;t--){const n=s[t];if((t<e||t>=o)&&n!==i)return n}}}postViewInit(t,i,s){var e,o,n;r(i||t,"Both leavingView and enteringView are null"),r(s.resolve,"resolve must be valid"),r(s.reject,"reject must be valid");const a=s.opts,{insertViews:c,removeStart:d,removeCount:f}=s;let m;if(void 0!==d&&void 0!==f){r(d>=0,"removeStart can not be negative"),r(f>=0,"removeCount can not be negative"),m=[];for(let s=d;s<d+f;s++){const e=this.views[s];void 0!==e&&e!==t&&e!==i&&m.push(e)}null!==(e=a.direction)&&void 0!==e||(a.direction="back")}const p=this.views.length+(null!==(o=null==c?void 0:c.length)&&void 0!==o?o:0)-(null!=f?f:0);if(r(p>=0,"final balance can not be negative"),0===p)throw console.warn("You can't remove all the pages in the navigation stack. nav.pop() is probably called too many times.",this,this.el),new Error("navigation stack needs at least one root page");if(c){let t=s.insertStart;for(const i of c)this.insertViewAt(i,t),t++;s.enteringRequiresTransition&&(null!==(n=a.direction)&&void 0!==n||(a.direction="forward"))}if(m&&m.length>0){for(const t of m)h(t.element,u),h(t.element,v),h(t.element,l);for(const t of m)this.destroyView(t)}}async transition(t,i,s){const e=s.opts,o=e.progressAnimation?t=>{void 0===t||this.gestureOrAnimationInProgress?this.sbAni=t:(this.gestureOrAnimationInProgress=!0,t.onFinish((()=>{this.gestureOrAnimationInProgress=!1}),{oneTimeCallback:!0}),t.progressEnd(0,0,0))}:void 0,n=f(this),r=t.element,a=i&&i.element,h=Object.assign(Object.assign({mode:n,showGoBack:this.canGoBackSync(t),baseEl:this.el,progressCallback:o,animated:this.animated&&m.getBoolean("animated",!0),enteringEl:r,leavingEl:a},e),{animationBuilder:e.animationBuilder||this.animation||m.get("navAnimation")}),{hasCompleted:d}=await c(h);return this.transitionFinish(d,t,i,e)}transitionFinish(t,i,s,e){const o=t?i:s;return o&&this.unmountInactiveViews(o),{hasCompleted:t,requiresTransition:!0,enteringView:i,leavingView:s,direction:e.direction}}insertViewAt(t,i){const s=this.views,e=s.indexOf(t);e>-1?(r(t.nav===this,"view is not part of the nav"),s.splice(e,1),s.splice(i,0,t)):(r(!t.nav,"nav is used"),t.nav=this,s.splice(i,0,t))}removeView(t){r(2===t.state||3===t.state,"view state should be loaded or destroyed");const i=this.views,s=i.indexOf(t);r(s>-1,"view must be part of the stack"),s>=0&&i.splice(s,1)}destroyView(t){t._destroy(),this.removeView(t)}unmountInactiveViews(t){if(this.destroyed)return;const i=this.views,s=i.indexOf(t);for(let t=i.length-1;t>=0;t--){const e=i[t],o=e.element;o&&(t>s?(h(o,l),this.destroyView(e)):t<s&&d(o,!0))}}canStart(){return!this.gestureOrAnimationInProgress&&!!this.swipeGesture&&!this.isTransitioning&&0===this.transInstr.length&&this.canGoBackSync()}onStart(){this.gestureOrAnimationInProgress=!0,this.pop({direction:"back",progressAnimation:!0})}onMove(t){this.sbAni&&this.sbAni.progressStep(t)}onEnd(t,i,s){if(this.sbAni){this.sbAni.onFinish((()=>{this.gestureOrAnimationInProgress=!1}),{oneTimeCallback:!0});let e=t?-.001:.001;t?e+=n([0,0],[.32,.72],[0,1],[1,1],i)[0]:(this.sbAni.easing("cubic-bezier(1, 0, 0.68, 0.28)"),e+=n([0,0],[1,0],[.68,.28],[1,1],i)[0]),this.sbAni.progressEnd(t?1:0,e,s)}else this.gestureOrAnimationInProgress=!1}render(){return s("slot",null)}get el(){return e(this)}static get watchers(){return{swipeGesture:["swipeGestureChanged"],root:["rootChanged"]}}};y.style=":host{left:0;right:0;top:0;bottom:0;position:absolute;contain:layout size style;z-index:0}";const k=class{constructor(i){t(this,i),this.onClick=()=>((t,i,s,e,o)=>{const n=this.el.closest("ion-nav");if(n)if("forward"===i){if(void 0!==s)return n.push(s,e,{skipIfBusy:!0,animationBuilder:o})}else if("root"===i){if(void 0!==s)return n.setRoot(s,e,{skipIfBusy:!0,animationBuilder:o})}else if("back"===i)return n.pop({skipIfBusy:!0,animationBuilder:o});return Promise.resolve(!1)})(0,this.routerDirection,this.component,this.componentProps,this.routerAnimation),this.component=void 0,this.componentProps=void 0,this.routerDirection="forward",this.routerAnimation=void 0}render(){return s(o,{onClick:this.onClick})}get el(){return e(this)}};export{y as ion_nav,k as ion_nav_link}
@@ -1,4 +0,0 @@
1
- var __awaiter=this&&this.__awaiter||function(t,i,e,n){function r(t){return t instanceof e?t:new e((function(i){i(t)}))}return new(e||(e=Promise))((function(e,s){function u(t){try{a(n.next(t))}catch(t){s(t)}}function o(t){try{a(n["throw"](t))}catch(t){s(t)}}function a(t){t.done?e(t.value):r(t.value).then(u,o)}a((n=n.apply(t,i||[])).next())}))};var __generator=this&&this.__generator||function(t,i){var e={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},n,r,s,u;return u={next:o(0),throw:o(1),return:o(2)},typeof Symbol==="function"&&(u[Symbol.iterator]=function(){return this}),u;function o(t){return function(i){return a([t,i])}}function a(o){if(n)throw new TypeError("Generator is already executing.");while(u&&(u=0,o[0]&&(e=0)),e)try{if(n=1,r&&(s=o[0]&2?r["return"]:o[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,o[1])).done)return s;if(r=0,s)o=[o[0]&2,s.value];switch(o[0]){case 0:case 1:s=o;break;case 4:e.label++;return{value:o[1],done:false};case 5:e.label++;r=o[1];o=[0];continue;case 7:o=e.ops.pop();e.trys.pop();continue;default:if(!(s=e.trys,s=s.length>0&&s[s.length-1])&&(o[0]===6||o[0]===2)){e=0;continue}if(o[0]===3&&(!s||o[1]>s[0]&&o[1]<s[3])){e.label=o[1];break}if(o[0]===6&&e.label<s[1]){e.label=s[1];s=o;break}if(s&&e.label<s[2]){e.label=s[2];e.ops.push(o);break}if(s[2])e.ops.pop();e.trys.pop();continue}o=i.call(t,e)}catch(t){o=[6,t];r=0}finally{n=s=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}};
2
- /*!
3
- * (C) Ionic http://ionicframework.com - MIT License
4
- */System.register(["./p-52cfafe9.system.js","./p-e673a0a2.system.js","./p-32ad210f.system.js","./p-a074be82.system.js","./p-1501b945.system.js","./p-888db766.system.js"],(function(t,i){"use strict";var e,n,r,s,u,o,a,f,h,c,d,v,l,w,m,b,_;return{setters:[function(t){e=t.r;n=t.d;r=t.h;s=t.f;u=t.H},function(t){o=t.g},function(t){a=t.o;f=t.s},function(t){h=t.l;c=t.t;d=t.s;v=t.d;l=t.b;w=t.c},function(t){m=t.b;b=t.c},function(t){_=t.a}],execute:function(){var p=1;var g=2;var y=3;var k=function(){function t(t,i){this.component=t;this.params=i;this.state=p}t.prototype.init=function(t){return __awaiter(this,void 0,void 0,(function(){var i,e;return __generator(this,(function(n){switch(n.label){case 0:this.state=g;if(!!this.element)return[3,2];i=this.component;e=this;return[4,_(this.delegate,t,i,["ion-page","ion-page-invisible"],this.params)];case 1:e.element=n.sent();n.label=2;case 2:return[2]}}))}))};t.prototype._destroy=function(){a(this.state!==y,"view state must be ATTACHED");var t=this.element;if(t){if(this.delegate){this.delegate.removeViewFromDom(t.parentElement,t)}else{t.remove()}}this.nav=undefined;this.state=y};return t}();var j=function(t,i,e){if(!t){return false}if(t.component!==i){return false}return f(t.params,e)};var C=function(t,i){if(!t){return null}if(t instanceof k){return t}return new k(t,i)};var B=function(t){return t.map((function(t){if(t instanceof k){return t}if("component"in t){return C(t.component,t.componentProps===null?undefined:t.componentProps)}return C(t,undefined)})).filter((function(t){return t!==null}))};var E=":host{left:0;right:0;top:0;bottom:0;position:absolute;contain:layout size style;z-index:0}";var O=t("ion_nav",function(){function t(t){e(this,t);this.ionNavWillLoad=n(this,"ionNavWillLoad",7);this.ionNavWillChange=n(this,"ionNavWillChange",3);this.ionNavDidChange=n(this,"ionNavDidChange",3);this.transInstr=[];this.gestureOrAnimationInProgress=false;this.useRouter=false;this.isTransitioning=false;this.destroyed=false;this.views=[];this.didLoad=false;this.delegate=undefined;this.swipeGesture=undefined;this.animated=true;this.animation=undefined;this.rootParams=undefined;this.root=undefined}t.prototype.swipeGestureChanged=function(){if(this.gesture){this.gesture.enable(this.swipeGesture===true)}};t.prototype.rootChanged=function(){if(this.root===undefined){return}if(this.didLoad===false){return}if(!this.useRouter){if(this.root!==undefined){this.setRoot(this.root,this.rootParams)}}};t.prototype.componentWillLoad=function(){this.useRouter=document.querySelector("ion-router")!==null&&this.el.closest("[no-router]")===null;if(this.swipeGesture===undefined){var t=m(this);this.swipeGesture=b.getBoolean("swipeBackEnabled",t==="ios")}this.ionNavWillLoad.emit()};t.prototype.componentDidLoad=function(){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(e){switch(e.label){case 0:this.didLoad=true;this.rootChanged();t=this;return[4,i.import("./p-51abefb7.system.js")];case 1:t.gesture=e.sent().createSwipeBackGesture(this.el,this.canStart.bind(this),this.onStart.bind(this),this.onMove.bind(this),this.onEnd.bind(this));this.swipeGestureChanged();return[2]}}))}))};t.prototype.connectedCallback=function(){this.destroyed=false};t.prototype.disconnectedCallback=function(){for(var t=0,i=this.views;t<i.length;t++){var e=i[t];h(e.element,v);e._destroy()}if(this.gesture){this.gesture.destroy();this.gesture=undefined}this.transInstr.length=0;this.views.length=0;this.destroyed=true};t.prototype.push=function(t,i,e,n){return this.insert(-1,t,i,e,n)};t.prototype.insert=function(t,i,e,n,r){return this.insertPages(t,[{component:i,componentProps:e}],n,r)};t.prototype.insertPages=function(t,i,e,n){return this.queueTrns({insertStart:t,insertViews:i,opts:e},n)};t.prototype.pop=function(t,i){return this.removeIndex(-1,1,t,i)};t.prototype.popTo=function(t,i,e){var n={removeStart:-1,removeCount:-1,opts:i};if(typeof t==="object"&&t.component){n.removeView=t;n.removeStart=1}else if(typeof t==="number"){n.removeStart=t+1}return this.queueTrns(n,e)};t.prototype.popToRoot=function(t,i){return this.removeIndex(1,-1,t,i)};t.prototype.removeIndex=function(t,i,e,n){if(i===void 0){i=1}return this.queueTrns({removeStart:t,removeCount:i,opts:e},n)};t.prototype.setRoot=function(t,i,e,n){return this.setPages([{component:t,componentProps:i}],e,n)};t.prototype.setPages=function(t,i,e){i!==null&&i!==void 0?i:i={};if(i.animated!==true){i.animated=false}return this.queueTrns({insertStart:0,insertViews:t,removeStart:0,removeCount:-1,opts:i},e)};t.prototype.setRouteId=function(t,i,e,n){var r=this;var s=this.getActiveSync();if(j(s,t,i)){return Promise.resolve({changed:false,element:s.element})}var u;var o=new Promise((function(t){return u=t}));var a;var f={updateURL:false,viewIsReady:function(t){var i;var e=new Promise((function(t){return i=t}));u({changed:true,element:t,markVisible:function(){return __awaiter(r,void 0,void 0,(function(){return __generator(this,(function(t){switch(t.label){case 0:i();return[4,a];case 1:t.sent();return[2]}}))}))}});return e}};if(e==="root"){a=this.setRoot(t,i,f)}else{var h=this.views.find((function(e){return j(e,t,i)}));if(h){a=this.popTo(h,Object.assign(Object.assign({},f),{direction:"back",animationBuilder:n}))}else if(e==="forward"){a=this.push(t,i,Object.assign(Object.assign({},f),{animationBuilder:n}))}else if(e==="back"){a=this.setRoot(t,i,Object.assign(Object.assign({},f),{direction:"back",animated:true,animationBuilder:n}))}}return o};t.prototype.getRouteId=function(){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(i){t=this.getActiveSync();if(t){return[2,{id:t.element.tagName,params:t.params,element:t.element}]}return[2,undefined]}))}))};t.prototype.getActive=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){return[2,this.getActiveSync()]}))}))};t.prototype.getByIndex=function(t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(i){return[2,this.views[t]]}))}))};t.prototype.canGoBack=function(t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(i){return[2,this.canGoBackSync(t)]}))}))};t.prototype.getPrevious=function(t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(i){return[2,this.getPreviousSync(t)]}))}))};t.prototype.getLength=function(){return this.views.length};t.prototype.getActiveSync=function(){return this.views[this.views.length-1]};t.prototype.canGoBackSync=function(t){if(t===void 0){t=this.getActiveSync()}return!!(t&&this.getPreviousSync(t))};t.prototype.getPreviousSync=function(t){if(t===void 0){t=this.getActiveSync()}if(!t){return undefined}var i=this.views;var e=i.indexOf(t);return e>0?i[e-1]:undefined};t.prototype.queueTrns=function(t,i){return __awaiter(this,void 0,void 0,(function(){var e,n,r,s,u;return __generator(this,(function(o){switch(o.label){case 0:if(this.isTransitioning&&((e=t.opts)===null||e===void 0?void 0:e.skipIfBusy)){return[2,false]}r=new Promise((function(i,e){t.resolve=i;t.reject=e}));t.done=i;if(!(t.opts&&t.opts.updateURL!==false&&this.useRouter))return[3,2];s=document.querySelector("ion-router");if(!s)return[3,2];return[4,s.canTransition()];case 1:u=o.sent();if(u===false){return[2,false]}if(typeof u==="string"){s.push(u,t.opts.direction||"back");return[2,false]}o.label=2;case 2:if(((n=t.insertViews)===null||n===void 0?void 0:n.length)===0){t.insertViews=undefined}this.transInstr.push(t);this.nextTrns();return[2,r]}}))}))};t.prototype.success=function(t,i){if(this.destroyed){this.fireError("nav controller was destroyed",i);return}if(i.done){i.done(t.hasCompleted,t.requiresTransition,t.enteringView,t.leavingView,t.direction)}i.resolve(t.hasCompleted);if(i.opts.updateURL!==false&&this.useRouter){var e=document.querySelector("ion-router");if(e){var n=t.direction==="back"?"back":"forward";e.navChanged(n)}}};t.prototype.failed=function(t,i){if(this.destroyed){this.fireError("nav controller was destroyed",i);return}this.transInstr.length=0;this.fireError(t,i)};t.prototype.fireError=function(t,i){if(i.done){i.done(false,false,t)}if(i.reject&&!this.destroyed){i.reject(t)}else{i.resolve(false)}};t.prototype.nextTrns=function(){if(this.isTransitioning){return false}var t=this.transInstr.shift();if(!t){return false}this.runTransition(t);return true};t.prototype.runTransition=function(t){return __awaiter(this,void 0,void 0,(function(){var i,e,n,r,s,u;return __generator(this,(function(o){switch(o.label){case 0:o.trys.push([0,6,,7]);this.ionNavWillChange.emit();this.isTransitioning=true;this.prepareTI(t);i=this.getActiveSync();e=this.getEnteringView(t,i);if(!i&&!e){throw new Error("no views in the stack to be removed")}if(!(e&&e.state===p))return[3,2];return[4,e.init(this.el)];case 1:o.sent();o.label=2;case 2:this.postViewInit(e,i,t);n=(t.enteringRequiresTransition||t.leavingRequiresTransition)&&e!==i;if(n&&t.opts&&i){r=t.opts.direction==="back";if(r){t.opts.animationBuilder=t.opts.animationBuilder||(e===null||e===void 0?void 0:e.animationBuilder)}i.animationBuilder=t.opts.animationBuilder}s=void 0;if(!n)return[3,4];return[4,this.transition(e,i,t)];case 3:s=o.sent();return[3,5];case 4:s={hasCompleted:true,requiresTransition:false};o.label=5;case 5:this.success(s,t);this.ionNavDidChange.emit();return[3,7];case 6:u=o.sent();this.failed(u,t);return[3,7];case 7:this.isTransitioning=false;this.nextTrns();return[2]}}))}))};t.prototype.prepareTI=function(t){var i,e;var n;var r=this.views.length;(i=t.opts)!==null&&i!==void 0?i:t.opts={};(e=(n=t.opts).delegate)!==null&&e!==void 0?e:n.delegate=this.delegate;if(t.removeView!==undefined){a(t.removeStart!==undefined,"removeView needs removeStart");a(t.removeCount!==undefined,"removeView needs removeCount");var s=this.views.indexOf(t.removeView);if(s<0){throw new Error("removeView was not found")}t.removeStart+=s}if(t.removeStart!==undefined){if(t.removeStart<0){t.removeStart=r-1}if(t.removeCount<0){t.removeCount=r-t.removeStart}t.leavingRequiresTransition=t.removeCount>0&&t.removeStart+t.removeCount===r}if(t.insertViews){if(t.insertStart<0||t.insertStart>r){t.insertStart=r}t.enteringRequiresTransition=t.insertStart===r}var u=t.insertViews;if(!u){return}a(u.length>0,"length can not be zero");var o=B(u);if(o.length===0){throw new Error("invalid views to insert")}for(var f=0,h=o;f<h.length;f++){var c=h[f];c.delegate=t.opts.delegate;var d=c.nav;if(d&&d!==this){throw new Error("inserted view was already inserted")}if(c.state===y){throw new Error("inserted view was already destroyed")}}t.insertViews=o};t.prototype.getEnteringView=function(t,i){var e=t.insertViews;if(e!==undefined){return e[e.length-1]}var n=t.removeStart;if(n!==undefined){var r=this.views;var s=n+t.removeCount;for(var u=r.length-1;u>=0;u--){var o=r[u];if((u<n||u>=s)&&o!==i){return o}}}return undefined};t.prototype.postViewInit=function(t,i,e){var n,r,s;a(i||t,"Both leavingView and enteringView are null");a(e.resolve,"resolve must be valid");a(e.reject,"reject must be valid");var u=e.opts;var o=e.insertViews,f=e.removeStart,c=e.removeCount;var d;if(f!==undefined&&c!==undefined){a(f>=0,"removeStart can not be negative");a(c>=0,"removeCount can not be negative");d=[];for(var m=f;m<f+c;m++){var b=this.views[m];if(b!==undefined&&b!==t&&b!==i){d.push(b)}}(n=u.direction)!==null&&n!==void 0?n:u.direction="back"}var _=this.views.length+((r=o===null||o===void 0?void 0:o.length)!==null&&r!==void 0?r:0)-(c!==null&&c!==void 0?c:0);a(_>=0,"final balance can not be negative");if(_===0){console.warn("You can't remove all the pages in the navigation stack. nav.pop() is probably called too many times.",this,this.el);throw new Error("navigation stack needs at least one root page")}if(o){var p=e.insertStart;for(var g=0,y=o;g<y.length;g++){var b=y[g];this.insertViewAt(b,p);p++}if(e.enteringRequiresTransition){(s=u.direction)!==null&&s!==void 0?s:u.direction="forward"}}if(d&&d.length>0){for(var k=0,j=d;k<j.length;k++){var b=j[k];h(b.element,l);h(b.element,w);h(b.element,v)}for(var C=0,B=d;C<B.length;C++){var b=B[C];this.destroyView(b)}}};t.prototype.transition=function(t,i,e){return __awaiter(this,void 0,void 0,(function(){var n,r,s,u,o,a,f;var h=this;return __generator(this,(function(d){switch(d.label){case 0:n=e.opts;r=n.progressAnimation?function(t){if(t!==undefined&&!h.gestureOrAnimationInProgress){h.gestureOrAnimationInProgress=true;t.onFinish((function(){h.gestureOrAnimationInProgress=false}),{oneTimeCallback:true});t.progressEnd(0,0,0)}else{h.sbAni=t}}:undefined;s=m(this);u=t.element;o=i&&i.element;a=Object.assign(Object.assign({mode:s,showGoBack:this.canGoBackSync(t),baseEl:this.el,progressCallback:r,animated:this.animated&&b.getBoolean("animated",true),enteringEl:u,leavingEl:o},n),{animationBuilder:n.animationBuilder||this.animation||b.get("navAnimation")});return[4,c(a)];case 1:f=d.sent().hasCompleted;return[2,this.transitionFinish(f,t,i,n)]}}))}))};t.prototype.transitionFinish=function(t,i,e,n){var r=t?i:e;if(r){this.unmountInactiveViews(r)}return{hasCompleted:t,requiresTransition:true,enteringView:i,leavingView:e,direction:n.direction}};t.prototype.insertViewAt=function(t,i){var e=this.views;var n=e.indexOf(t);if(n>-1){a(t.nav===this,"view is not part of the nav");e.splice(n,1);e.splice(i,0,t)}else{a(!t.nav,"nav is used");t.nav=this;e.splice(i,0,t)}};t.prototype.removeView=function(t){a(t.state===g||t.state===y,"view state should be loaded or destroyed");var i=this.views;var e=i.indexOf(t);a(e>-1,"view must be part of the stack");if(e>=0){i.splice(e,1)}};t.prototype.destroyView=function(t){t._destroy();this.removeView(t)};t.prototype.unmountInactiveViews=function(t){if(this.destroyed){return}var i=this.views;var e=i.indexOf(t);for(var n=i.length-1;n>=0;n--){var r=i[n];var s=r.element;if(s){if(n>e){h(s,v);this.destroyView(r)}else if(n<e){d(s,true)}}}};t.prototype.canStart=function(){return!this.gestureOrAnimationInProgress&&!!this.swipeGesture&&!this.isTransitioning&&this.transInstr.length===0&&this.canGoBackSync()};t.prototype.onStart=function(){this.gestureOrAnimationInProgress=true;this.pop({direction:"back",progressAnimation:true})};t.prototype.onMove=function(t){if(this.sbAni){this.sbAni.progressStep(t)}};t.prototype.onEnd=function(t,i,e){var n=this;if(this.sbAni){this.sbAni.onFinish((function(){n.gestureOrAnimationInProgress=false}),{oneTimeCallback:true});var r=t?-.001:.001;if(!t){this.sbAni.easing("cubic-bezier(1, 0, 0.68, 0.28)");r+=o([0,0],[1,0],[.68,.28],[1,1],i)[0]}else{r+=o([0,0],[.32,.72],[0,1],[1,1],i)[0]}this.sbAni.progressEnd(t?1:0,r,e)}else{this.gestureOrAnimationInProgress=false}};t.prototype.render=function(){return r("slot",null)};Object.defineProperty(t.prototype,"el",{get:function(){return s(this)},enumerable:false,configurable:true});Object.defineProperty(t,"watchers",{get:function(){return{swipeGesture:["swipeGestureChanged"],root:["rootChanged"]}},enumerable:false,configurable:true});return t}());O.style=E;var S=function(t,i,e,n,r){var s=t.closest("ion-nav");if(s){if(i==="forward"){if(e!==undefined){return s.push(e,n,{skipIfBusy:true,animationBuilder:r})}}else if(i==="root"){if(e!==undefined){return s.setRoot(e,n,{skipIfBusy:true,animationBuilder:r})}}else if(i==="back"){return s.pop({skipIfBusy:true,animationBuilder:r})}}return Promise.resolve(false)};var V=t("ion_nav_link",function(){function t(t){var i=this;e(this,t);this.onClick=function(){return S(i.el,i.routerDirection,i.component,i.componentProps,i.routerAnimation)};this.component=undefined;this.componentProps=undefined;this.routerDirection="forward";this.routerAnimation=undefined}t.prototype.render=function(){return r(u,{onClick:this.onClick})};Object.defineProperty(t.prototype,"el",{get:function(){return s(this)},enumerable:false,configurable:true});return t}())}}}));