@ionic/angular 8.8.14-dev.11784563563.137a903a → 8.8.14-dev.11785507167.1f41b13b
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/dist/common/directives/control-value-accessors/index.d.ts +1 -0
- package/dist/common/directives/control-value-accessors/index.js +2 -0
- package/dist/common/directives/control-value-accessors/index.js.map +1 -0
- package/dist/common/directives/control-value-accessors/value-accessor.d.ts +36 -0
- package/dist/common/directives/control-value-accessors/value-accessor.js +152 -0
- package/dist/common/directives/control-value-accessors/value-accessor.js.map +1 -0
- package/dist/common/directives/navigation/back-button.d.ts +23 -0
- package/dist/common/directives/navigation/back-button.js +66 -0
- package/dist/common/directives/navigation/back-button.js.map +1 -0
- package/dist/common/directives/navigation/nav-params.d.ts +45 -0
- package/dist/common/directives/navigation/nav-params.js +47 -0
- package/dist/common/directives/navigation/nav-params.js.map +1 -0
- package/dist/common/directives/navigation/nav.d.ts +21 -0
- package/dist/common/directives/navigation/nav.js +54 -0
- package/dist/common/directives/navigation/nav.js.map +1 -0
- package/dist/common/directives/navigation/router-link-delegate.d.ts +70 -0
- package/dist/common/directives/navigation/router-link-delegate.js +188 -0
- package/dist/common/directives/navigation/router-link-delegate.js.map +1 -0
- package/dist/common/directives/navigation/router-outlet.d.ts +104 -0
- package/dist/common/directives/navigation/router-outlet.js +476 -0
- package/dist/common/directives/navigation/router-outlet.js.map +1 -0
- package/dist/common/directives/navigation/stack-controller.d.ts +42 -0
- package/dist/common/directives/navigation/stack-controller.js +279 -0
- package/dist/common/directives/navigation/stack-controller.js.map +1 -0
- package/dist/common/directives/navigation/stack-utils.d.ts +38 -0
- package/dist/common/directives/navigation/stack-utils.js +73 -0
- package/dist/common/directives/navigation/stack-utils.js.map +1 -0
- package/dist/common/directives/navigation/tabs.d.ts +91 -0
- package/dist/common/directives/navigation/tabs.js +290 -0
- package/dist/common/directives/navigation/tabs.js.map +1 -0
- package/dist/common/index.d.ts +22 -0
- package/dist/common/index.js +20 -0
- package/dist/common/index.js.map +1 -0
- package/dist/common/overlays/modal.d.ts +62 -0
- package/dist/common/overlays/modal.js +101 -0
- package/dist/common/overlays/modal.js.map +1 -0
- package/dist/common/overlays/popover.d.ts +46 -0
- package/dist/common/overlays/popover.js +89 -0
- package/dist/common/overlays/popover.js.map +1 -0
- package/dist/common/providers/angular-delegate.d.ts +28 -0
- package/dist/common/providers/angular-delegate.js +229 -0
- package/dist/common/providers/angular-delegate.js.map +1 -0
- package/dist/common/providers/config.d.ts +11 -0
- package/dist/common/providers/config.js +44 -0
- package/dist/common/providers/config.js.map +1 -0
- package/dist/common/providers/dom-controller.d.ts +16 -0
- package/dist/common/providers/dom-controller.js +44 -0
- package/dist/common/providers/dom-controller.js.map +1 -0
- package/dist/common/providers/menu-controller.d.ts +78 -0
- package/dist/common/providers/menu-controller.js +114 -0
- package/dist/common/providers/menu-controller.js.map +1 -0
- package/dist/common/providers/nav-controller.d.ts +116 -0
- package/dist/common/providers/nav-controller.js +232 -0
- package/dist/common/providers/nav-controller.js.map +1 -0
- package/dist/common/providers/platform.d.ts +174 -0
- package/dist/common/providers/platform.js +256 -0
- package/dist/common/providers/platform.js.map +1 -0
- package/dist/common/types/interfaces.d.ts +8 -0
- package/dist/common/types/interfaces.js +2 -0
- package/dist/common/types/interfaces.js.map +1 -0
- package/dist/common/types/ionic-lifecycle-hooks.d.ts +27 -0
- package/dist/common/types/ionic-lifecycle-hooks.js +5 -0
- package/dist/common/types/ionic-lifecycle-hooks.js.map +1 -0
- package/dist/common/types/overlay-options.d.ts +16 -0
- package/dist/common/types/overlay-options.js +2 -0
- package/dist/common/types/overlay-options.js.map +1 -0
- package/dist/common/utils/overlay.d.ts +21 -0
- package/dist/common/utils/overlay.js +26 -0
- package/dist/common/utils/overlay.js.map +1 -0
- package/dist/common/utils/proxy.d.ts +8 -0
- package/dist/common/utils/proxy.js +47 -0
- package/dist/common/utils/proxy.js.map +1 -0
- package/dist/common/utils/routing.d.ts +28 -0
- package/dist/common/utils/routing.js +55 -0
- package/dist/common/utils/routing.js.map +1 -0
- package/dist/common/utils/util.d.ts +1 -0
- package/dist/common/utils/util.js +10 -0
- package/dist/common/utils/util.js.map +1 -0
- package/dist/lazy/app-initialize.d.ts +3 -0
- package/dist/lazy/app-initialize.js +29 -0
- package/dist/lazy/app-initialize.js.map +1 -0
- package/dist/lazy/directives/angular-component-lib/utils.d.ts +9 -0
- package/dist/lazy/directives/angular-component-lib/utils.js +59 -0
- package/dist/lazy/directives/angular-component-lib/utils.js.map +1 -0
- package/dist/lazy/directives/control-value-accessors/boolean-value-accessor.d.ts +10 -0
- package/dist/lazy/directives/control-value-accessors/boolean-value-accessor.js +47 -0
- package/dist/lazy/directives/control-value-accessors/boolean-value-accessor.js.map +1 -0
- package/dist/lazy/directives/control-value-accessors/index.d.ts +4 -0
- package/dist/lazy/directives/control-value-accessors/index.js +5 -0
- package/dist/lazy/directives/control-value-accessors/index.js.map +1 -0
- package/dist/lazy/directives/control-value-accessors/numeric-value-accessor.d.ts +11 -0
- package/dist/lazy/directives/control-value-accessors/numeric-value-accessor.js +55 -0
- package/dist/lazy/directives/control-value-accessors/numeric-value-accessor.js.map +1 -0
- package/dist/lazy/directives/control-value-accessors/select-value-accessor.d.ts +9 -0
- package/dist/lazy/directives/control-value-accessors/select-value-accessor.js +44 -0
- package/dist/lazy/directives/control-value-accessors/select-value-accessor.js.map +1 -0
- package/dist/lazy/directives/control-value-accessors/text-value-accessor.d.ts +9 -0
- package/dist/lazy/directives/control-value-accessors/text-value-accessor.js +43 -0
- package/dist/lazy/directives/control-value-accessors/text-value-accessor.js.map +1 -0
- package/dist/lazy/directives/navigation/ion-back-button.d.ts +9 -0
- package/dist/lazy/directives/navigation/ion-back-button.js +24 -0
- package/dist/lazy/directives/navigation/ion-back-button.js.map +1 -0
- package/dist/lazy/directives/navigation/ion-nav.d.ts +8 -0
- package/dist/lazy/directives/navigation/ion-nav.js +21 -0
- package/dist/lazy/directives/navigation/ion-nav.js.map +1 -0
- package/dist/lazy/directives/navigation/ion-router-outlet.d.ts +25 -0
- package/dist/lazy/directives/navigation/ion-router-outlet.js +52 -0
- package/dist/lazy/directives/navigation/ion-router-outlet.js.map +1 -0
- package/dist/lazy/directives/navigation/ion-tabs.d.ts +13 -0
- package/dist/lazy/directives/navigation/ion-tabs.js +58 -0
- package/dist/lazy/directives/navigation/ion-tabs.js.map +1 -0
- package/dist/lazy/directives/navigation/router-link-delegate.d.ts +16 -0
- package/dist/lazy/directives/navigation/router-link-delegate.js +32 -0
- package/dist/lazy/directives/navigation/router-link-delegate.js.map +1 -0
- package/dist/lazy/directives/overlays/modal.d.ts +6 -0
- package/dist/lazy/directives/overlays/modal.js +22 -0
- package/dist/lazy/directives/overlays/modal.js.map +1 -0
- package/dist/lazy/directives/overlays/popover.d.ts +6 -0
- package/dist/lazy/directives/overlays/popover.js +18 -0
- package/dist/lazy/directives/overlays/popover.js.map +1 -0
- package/dist/lazy/directives/proxies-list.d.ts +2 -0
- package/dist/lazy/directives/proxies-list.js +89 -0
- package/dist/lazy/directives/proxies-list.js.map +1 -0
- package/{types/ionic-angular-lazy.d.ts → dist/lazy/directives/proxies.d.ts} +339 -493
- package/{fesm2022/ionic-angular-lazy.mjs → dist/lazy/directives/proxies.js} +266 -1041
- package/dist/lazy/directives/proxies.js.map +1 -0
- package/dist/lazy/directives/validators/index.d.ts +2 -0
- package/dist/lazy/directives/validators/index.js +3 -0
- package/dist/lazy/directives/validators/index.js.map +1 -0
- package/dist/lazy/directives/validators/max-validator.d.ts +12 -0
- package/dist/lazy/directives/validators/max-validator.js +26 -0
- package/dist/lazy/directives/validators/max-validator.js.map +1 -0
- package/dist/lazy/directives/validators/min-validator.d.ts +12 -0
- package/dist/lazy/directives/validators/min-validator.js +26 -0
- package/dist/lazy/directives/validators/min-validator.js.map +1 -0
- package/dist/lazy/index.d.ts +26 -0
- package/dist/lazy/index.js +34 -0
- package/dist/lazy/index.js.map +1 -0
- package/dist/lazy/ionic-module.d.ts +38 -0
- package/dist/lazy/ionic-module.js +121 -0
- package/dist/lazy/ionic-module.js.map +1 -0
- package/dist/lazy/providers/action-sheet-controller.d.ts +8 -0
- package/dist/lazy/providers/action-sheet-controller.js +18 -0
- package/dist/lazy/providers/action-sheet-controller.js.map +1 -0
- package/dist/lazy/providers/alert-controller.d.ts +8 -0
- package/dist/lazy/providers/alert-controller.js +18 -0
- package/dist/lazy/providers/alert-controller.js.map +1 -0
- package/dist/lazy/providers/animation-controller.d.ts +25 -0
- package/dist/lazy/providers/animation-controller.js +37 -0
- package/dist/lazy/providers/animation-controller.js.map +1 -0
- package/dist/lazy/providers/gesture-controller.d.ts +13 -0
- package/dist/lazy/providers/gesture-controller.js +32 -0
- package/dist/lazy/providers/gesture-controller.js.map +1 -0
- package/dist/lazy/providers/loading-controller.d.ts +8 -0
- package/dist/lazy/providers/loading-controller.js +18 -0
- package/dist/lazy/providers/loading-controller.js.map +1 -0
- package/dist/lazy/providers/menu-controller.d.ts +7 -0
- package/dist/lazy/providers/menu-controller.js +18 -0
- package/dist/lazy/providers/menu-controller.js.map +1 -0
- package/dist/lazy/providers/modal-controller.d.ts +12 -0
- package/dist/lazy/providers/modal-controller.js +25 -0
- package/dist/lazy/providers/modal-controller.js.map +1 -0
- package/dist/lazy/providers/popover-controller.d.ts +9 -0
- package/dist/lazy/providers/popover-controller.js +19 -0
- package/dist/lazy/providers/popover-controller.js.map +1 -0
- package/dist/lazy/providers/toast-controller.d.ts +8 -0
- package/dist/lazy/providers/toast-controller.js +18 -0
- package/dist/lazy/providers/toast-controller.js.map +1 -0
- package/dist/standalone/directives/angular-component-lib/utils.d.ts +9 -0
- package/dist/standalone/directives/angular-component-lib/utils.js +59 -0
- package/dist/standalone/directives/angular-component-lib/utils.js.map +1 -0
- package/dist/standalone/directives/checkbox.d.ts +30 -0
- package/dist/standalone/directives/checkbox.js +81 -0
- package/dist/standalone/directives/checkbox.js.map +1 -0
- package/dist/standalone/directives/datetime.d.ts +30 -0
- package/dist/standalone/directives/datetime.js +100 -0
- package/dist/standalone/directives/datetime.js.map +1 -0
- package/dist/standalone/directives/icon.d.ts +9 -0
- package/dist/standalone/directives/icon.js +40 -0
- package/dist/standalone/directives/icon.js.map +1 -0
- package/dist/standalone/directives/index.d.ts +12 -0
- package/dist/standalone/directives/index.js +13 -0
- package/dist/standalone/directives/index.js.map +1 -0
- package/dist/standalone/directives/input-otp.d.ts +49 -0
- package/dist/standalone/directives/input-otp.js +95 -0
- package/dist/standalone/directives/input-otp.js.map +1 -0
- package/dist/standalone/directives/input.d.ts +47 -0
- package/dist/standalone/directives/input.js +118 -0
- package/dist/standalone/directives/input.js.map +1 -0
- package/dist/standalone/directives/ion-accordion-group.d.ts +21 -0
- package/dist/standalone/directives/ion-accordion-group.js +45 -0
- package/dist/standalone/directives/ion-accordion-group.js.map +1 -0
- package/dist/standalone/directives/ion-accordion.d.ts +12 -0
- package/dist/standalone/directives/ion-accordion.js +41 -0
- package/dist/standalone/directives/ion-accordion.js.map +1 -0
- package/dist/standalone/directives/ion-action-sheet.d.ts +58 -0
- package/dist/standalone/directives/ion-action-sheet.js +67 -0
- package/dist/standalone/directives/ion-action-sheet.js.map +1 -0
- package/dist/standalone/directives/ion-alert.d.ts +58 -0
- package/dist/standalone/directives/ion-alert.js +67 -0
- package/dist/standalone/directives/ion-alert.js.map +1 -0
- package/dist/standalone/directives/ion-app.d.ts +12 -0
- package/dist/standalone/directives/ion-app.js +41 -0
- package/dist/standalone/directives/ion-app.js.map +1 -0
- package/dist/standalone/directives/ion-avatar.d.ts +12 -0
- package/dist/standalone/directives/ion-avatar.js +40 -0
- package/dist/standalone/directives/ion-avatar.js.map +1 -0
- package/dist/standalone/directives/ion-backdrop.d.ts +18 -0
- package/dist/standalone/directives/ion-backdrop.js +45 -0
- package/dist/standalone/directives/ion-backdrop.js.map +1 -0
- package/dist/standalone/directives/ion-badge.d.ts +12 -0
- package/dist/standalone/directives/ion-badge.js +41 -0
- package/dist/standalone/directives/ion-badge.js.map +1 -0
- package/dist/standalone/directives/ion-breadcrumb.d.ts +23 -0
- package/dist/standalone/directives/ion-breadcrumb.js +48 -0
- package/dist/standalone/directives/ion-breadcrumb.js.map +1 -0
- package/dist/standalone/directives/ion-breadcrumbs.d.ts +19 -0
- package/dist/standalone/directives/ion-breadcrumbs.js +45 -0
- package/dist/standalone/directives/ion-breadcrumbs.js.map +1 -0
- package/dist/standalone/directives/ion-button.d.ts +23 -0
- package/dist/standalone/directives/ion-button.js +48 -0
- package/dist/standalone/directives/ion-button.js.map +1 -0
- package/dist/standalone/directives/ion-buttons.d.ts +12 -0
- package/dist/standalone/directives/ion-buttons.js +41 -0
- package/dist/standalone/directives/ion-buttons.js.map +1 -0
- package/dist/standalone/directives/ion-card-content.d.ts +12 -0
- package/dist/standalone/directives/ion-card-content.js +41 -0
- package/dist/standalone/directives/ion-card-content.js.map +1 -0
- package/dist/standalone/directives/ion-card-header.d.ts +12 -0
- package/dist/standalone/directives/ion-card-header.js +41 -0
- package/dist/standalone/directives/ion-card-header.js.map +1 -0
- package/dist/standalone/directives/ion-card-subtitle.d.ts +12 -0
- package/dist/standalone/directives/ion-card-subtitle.js +41 -0
- package/dist/standalone/directives/ion-card-subtitle.js.map +1 -0
- package/dist/standalone/directives/ion-card-title.d.ts +12 -0
- package/dist/standalone/directives/ion-card-title.js +41 -0
- package/dist/standalone/directives/ion-card-title.js.map +1 -0
- package/dist/standalone/directives/ion-card.d.ts +12 -0
- package/dist/standalone/directives/ion-card.js +41 -0
- package/dist/standalone/directives/ion-card.js.map +1 -0
- package/dist/standalone/directives/ion-chip.d.ts +12 -0
- package/dist/standalone/directives/ion-chip.js +41 -0
- package/dist/standalone/directives/ion-chip.js.map +1 -0
- package/dist/standalone/directives/ion-col.d.ts +12 -0
- package/dist/standalone/directives/ion-col.js +41 -0
- package/dist/standalone/directives/ion-col.js.map +1 -0
- package/dist/standalone/directives/ion-content.d.ts +33 -0
- package/dist/standalone/directives/ion-content.js +52 -0
- package/dist/standalone/directives/ion-content.js.map +1 -0
- package/dist/standalone/directives/ion-datetime-button.d.ts +12 -0
- package/dist/standalone/directives/ion-datetime-button.js +41 -0
- package/dist/standalone/directives/ion-datetime-button.js.map +1 -0
- package/dist/standalone/directives/ion-fab-button.d.ts +23 -0
- package/dist/standalone/directives/ion-fab-button.js +48 -0
- package/dist/standalone/directives/ion-fab-button.js.map +1 -0
- package/dist/standalone/directives/ion-fab-list.d.ts +12 -0
- package/dist/standalone/directives/ion-fab-list.js +41 -0
- package/dist/standalone/directives/ion-fab-list.js.map +1 -0
- package/dist/standalone/directives/ion-fab.d.ts +12 -0
- package/dist/standalone/directives/ion-fab.js +42 -0
- package/dist/standalone/directives/ion-fab.js.map +1 -0
- package/dist/standalone/directives/ion-footer.d.ts +12 -0
- package/dist/standalone/directives/ion-footer.js +41 -0
- package/dist/standalone/directives/ion-footer.js.map +1 -0
- package/dist/standalone/directives/ion-grid.d.ts +12 -0
- package/dist/standalone/directives/ion-grid.js +41 -0
- package/dist/standalone/directives/ion-grid.js.map +1 -0
- package/dist/standalone/directives/ion-header.d.ts +12 -0
- package/dist/standalone/directives/ion-header.js +41 -0
- package/dist/standalone/directives/ion-header.js.map +1 -0
- package/dist/standalone/directives/ion-img.d.ts +28 -0
- package/dist/standalone/directives/ion-img.js +51 -0
- package/dist/standalone/directives/ion-img.js.map +1 -0
- package/dist/standalone/directives/ion-infinite-scroll-content.d.ts +12 -0
- package/dist/standalone/directives/ion-infinite-scroll-content.js +41 -0
- package/dist/standalone/directives/ion-infinite-scroll-content.js.map +1 -0
- package/dist/standalone/directives/ion-infinite-scroll.d.ts +21 -0
- package/dist/standalone/directives/ion-infinite-scroll.js +46 -0
- package/dist/standalone/directives/ion-infinite-scroll.js.map +1 -0
- package/dist/standalone/directives/ion-input-password-toggle.d.ts +12 -0
- package/dist/standalone/directives/ion-input-password-toggle.js +41 -0
- package/dist/standalone/directives/ion-input-password-toggle.js.map +1 -0
- package/dist/standalone/directives/ion-item-divider.d.ts +12 -0
- package/dist/standalone/directives/ion-item-divider.js +41 -0
- package/dist/standalone/directives/ion-item-divider.js.map +1 -0
- package/dist/standalone/directives/ion-item-group.d.ts +12 -0
- package/dist/standalone/directives/ion-item-group.js +40 -0
- package/dist/standalone/directives/ion-item-group.js.map +1 -0
- package/dist/standalone/directives/ion-item-option.d.ts +12 -0
- package/dist/standalone/directives/ion-item-option.js +41 -0
- package/dist/standalone/directives/ion-item-option.js.map +1 -0
- package/dist/standalone/directives/ion-item-options.d.ts +18 -0
- package/dist/standalone/directives/ion-item-options.js +45 -0
- package/dist/standalone/directives/ion-item-options.js.map +1 -0
- package/dist/standalone/directives/ion-item-sliding.d.ts +18 -0
- package/dist/standalone/directives/ion-item-sliding.js +46 -0
- package/dist/standalone/directives/ion-item-sliding.js.map +1 -0
- package/dist/standalone/directives/ion-item.d.ts +12 -0
- package/dist/standalone/directives/ion-item.js +41 -0
- package/dist/standalone/directives/ion-item.js.map +1 -0
- package/dist/standalone/directives/ion-label.d.ts +12 -0
- package/dist/standalone/directives/ion-label.js +41 -0
- package/dist/standalone/directives/ion-label.js.map +1 -0
- package/dist/standalone/directives/ion-list-header.d.ts +12 -0
- package/dist/standalone/directives/ion-list-header.js +41 -0
- package/dist/standalone/directives/ion-list-header.js.map +1 -0
- package/dist/standalone/directives/ion-list.d.ts +12 -0
- package/dist/standalone/directives/ion-list.js +42 -0
- package/dist/standalone/directives/ion-list.js.map +1 -0
- package/dist/standalone/directives/ion-loading.d.ts +58 -0
- package/dist/standalone/directives/ion-loading.js +67 -0
- package/dist/standalone/directives/ion-loading.js.map +1 -0
- package/dist/standalone/directives/ion-menu-button.d.ts +12 -0
- package/dist/standalone/directives/ion-menu-button.js +41 -0
- package/dist/standalone/directives/ion-menu-button.js.map +1 -0
- package/dist/standalone/directives/ion-menu-toggle.d.ts +12 -0
- package/dist/standalone/directives/ion-menu-toggle.js +41 -0
- package/dist/standalone/directives/ion-menu-toggle.js.map +1 -0
- package/dist/standalone/directives/ion-menu.d.ts +34 -0
- package/dist/standalone/directives/ion-menu.js +55 -0
- package/dist/standalone/directives/ion-menu.js.map +1 -0
- package/dist/standalone/directives/ion-nav-link.d.ts +12 -0
- package/dist/standalone/directives/ion-nav-link.js +41 -0
- package/dist/standalone/directives/ion-nav-link.js.map +1 -0
- package/dist/standalone/directives/ion-note.d.ts +12 -0
- package/dist/standalone/directives/ion-note.js +41 -0
- package/dist/standalone/directives/ion-note.js.map +1 -0
- package/dist/standalone/directives/ion-picker-column-option.d.ts +12 -0
- package/dist/standalone/directives/ion-picker-column-option.js +41 -0
- package/dist/standalone/directives/ion-picker-column-option.js.map +1 -0
- package/dist/standalone/directives/ion-picker-column.d.ts +21 -0
- package/dist/standalone/directives/ion-picker-column.js +46 -0
- package/dist/standalone/directives/ion-picker-column.js.map +1 -0
- package/dist/standalone/directives/ion-picker.d.ts +12 -0
- package/dist/standalone/directives/ion-picker.js +41 -0
- package/dist/standalone/directives/ion-picker.js.map +1 -0
- package/dist/standalone/directives/ion-progress-bar.d.ts +12 -0
- package/dist/standalone/directives/ion-progress-bar.js +41 -0
- package/dist/standalone/directives/ion-progress-bar.js.map +1 -0
- package/dist/standalone/directives/ion-radio.d.ts +23 -0
- package/dist/standalone/directives/ion-radio.js +48 -0
- package/dist/standalone/directives/ion-radio.js.map +1 -0
- package/dist/standalone/directives/ion-refresher-content.d.ts +12 -0
- package/dist/standalone/directives/ion-refresher-content.js +41 -0
- package/dist/standalone/directives/ion-refresher-content.js.map +1 -0
- package/dist/standalone/directives/ion-refresher.d.ts +45 -0
- package/dist/standalone/directives/ion-refresher.js +58 -0
- package/dist/standalone/directives/ion-refresher.js.map +1 -0
- package/dist/standalone/directives/ion-reorder-group.d.ts +44 -0
- package/dist/standalone/directives/ion-reorder-group.js +55 -0
- package/dist/standalone/directives/ion-reorder-group.js.map +1 -0
- package/dist/standalone/directives/ion-reorder.d.ts +12 -0
- package/dist/standalone/directives/ion-reorder.js +40 -0
- package/dist/standalone/directives/ion-reorder.js.map +1 -0
- package/dist/standalone/directives/ion-ripple-effect.d.ts +12 -0
- package/dist/standalone/directives/ion-ripple-effect.js +42 -0
- package/dist/standalone/directives/ion-ripple-effect.js.map +1 -0
- package/dist/standalone/directives/ion-row.d.ts +12 -0
- package/dist/standalone/directives/ion-row.js +40 -0
- package/dist/standalone/directives/ion-row.js.map +1 -0
- package/dist/standalone/directives/ion-segment-button.d.ts +12 -0
- package/dist/standalone/directives/ion-segment-button.js +41 -0
- package/dist/standalone/directives/ion-segment-button.js.map +1 -0
- package/dist/standalone/directives/ion-segment-content.d.ts +12 -0
- package/dist/standalone/directives/ion-segment-content.js +40 -0
- package/dist/standalone/directives/ion-segment-content.js.map +1 -0
- package/dist/standalone/directives/ion-segment-view.d.ts +19 -0
- package/dist/standalone/directives/ion-segment-view.js +45 -0
- package/dist/standalone/directives/ion-segment-view.js.map +1 -0
- package/dist/standalone/directives/ion-select-modal.d.ts +12 -0
- package/dist/standalone/directives/ion-select-modal.js +41 -0
- package/dist/standalone/directives/ion-select-modal.js.map +1 -0
- package/dist/standalone/directives/ion-select-option.d.ts +12 -0
- package/dist/standalone/directives/ion-select-option.js +41 -0
- package/dist/standalone/directives/ion-select-option.js.map +1 -0
- package/dist/standalone/directives/ion-skeleton-text.d.ts +12 -0
- package/dist/standalone/directives/ion-skeleton-text.js +41 -0
- package/dist/standalone/directives/ion-skeleton-text.js.map +1 -0
- package/dist/standalone/directives/ion-spinner.d.ts +12 -0
- package/dist/standalone/directives/ion-spinner.js +41 -0
- package/dist/standalone/directives/ion-spinner.js.map +1 -0
- package/dist/standalone/directives/ion-split-pane.d.ts +22 -0
- package/dist/standalone/directives/ion-split-pane.js +45 -0
- package/dist/standalone/directives/ion-split-pane.js.map +1 -0
- package/dist/standalone/directives/ion-tab-bar.d.ts +12 -0
- package/dist/standalone/directives/ion-tab-bar.js +41 -0
- package/dist/standalone/directives/ion-tab-bar.js.map +1 -0
- package/dist/standalone/directives/ion-tab-button.d.ts +12 -0
- package/dist/standalone/directives/ion-tab-button.js +41 -0
- package/dist/standalone/directives/ion-tab-button.js.map +1 -0
- package/dist/standalone/directives/ion-tab.d.ts +12 -0
- package/dist/standalone/directives/ion-tab.js +42 -0
- package/dist/standalone/directives/ion-tab.js.map +1 -0
- package/dist/standalone/directives/ion-text.d.ts +12 -0
- package/dist/standalone/directives/ion-text.js +41 -0
- package/dist/standalone/directives/ion-text.js.map +1 -0
- package/dist/standalone/directives/ion-thumbnail.d.ts +12 -0
- package/dist/standalone/directives/ion-thumbnail.js +40 -0
- package/dist/standalone/directives/ion-thumbnail.js.map +1 -0
- package/dist/standalone/directives/ion-title.d.ts +12 -0
- package/dist/standalone/directives/ion-title.js +41 -0
- package/dist/standalone/directives/ion-title.js.map +1 -0
- package/dist/standalone/directives/ion-toast.d.ts +58 -0
- package/dist/standalone/directives/ion-toast.js +67 -0
- package/dist/standalone/directives/ion-toast.js.map +1 -0
- package/dist/standalone/directives/ion-toolbar.d.ts +12 -0
- package/dist/standalone/directives/ion-toolbar.js +41 -0
- package/dist/standalone/directives/ion-toolbar.js.map +1 -0
- package/dist/standalone/directives/proxies.d.ts +77 -0
- package/dist/standalone/directives/proxies.js +79 -0
- package/dist/standalone/directives/proxies.js.map +1 -0
- package/dist/standalone/directives/radio-group.d.ts +18 -0
- package/dist/standalone/directives/radio-group.js +65 -0
- package/dist/standalone/directives/radio-group.js.map +1 -0
- package/dist/standalone/directives/range.d.ts +47 -0
- package/dist/standalone/directives/range.js +83 -0
- package/dist/standalone/directives/range.js.map +1 -0
- package/dist/standalone/directives/searchbar.d.ts +45 -0
- package/dist/standalone/directives/searchbar.js +87 -0
- package/dist/standalone/directives/searchbar.js.map +1 -0
- package/dist/standalone/directives/segment.d.ts +19 -0
- package/dist/standalone/directives/segment.js +65 -0
- package/dist/standalone/directives/segment.js.map +1 -0
- package/dist/standalone/directives/select.d.ts +34 -0
- package/dist/standalone/directives/select.js +89 -0
- package/dist/standalone/directives/select.js.map +1 -0
- package/dist/standalone/directives/textarea.d.ts +37 -0
- package/dist/standalone/directives/textarea.js +96 -0
- package/dist/standalone/directives/textarea.js.map +1 -0
- package/dist/standalone/directives/toggle.d.ts +28 -0
- package/dist/standalone/directives/toggle.js +81 -0
- package/dist/standalone/directives/toggle.js.map +1 -0
- package/dist/standalone/index.d.ts +22 -0
- package/dist/standalone/index.js +24 -0
- package/dist/standalone/index.js.map +1 -0
- package/dist/standalone/navigation/back-button.d.ts +9 -0
- package/dist/standalone/navigation/back-button.js +37 -0
- package/dist/standalone/navigation/back-button.js.map +1 -0
- package/dist/standalone/navigation/nav.d.ts +8 -0
- package/dist/standalone/navigation/nav.js +33 -0
- package/dist/standalone/navigation/nav.js.map +1 -0
- package/dist/standalone/navigation/router-link-delegate.d.ts +10 -0
- package/dist/standalone/navigation/router-link-delegate.js +26 -0
- package/dist/standalone/navigation/router-link-delegate.js.map +1 -0
- package/dist/standalone/navigation/router-outlet.d.ts +25 -0
- package/dist/standalone/navigation/router-outlet.js +65 -0
- package/dist/standalone/navigation/router-outlet.js.map +1 -0
- package/dist/standalone/navigation/tabs.d.ts +13 -0
- package/dist/standalone/navigation/tabs.js +57 -0
- package/dist/standalone/navigation/tabs.js.map +1 -0
- package/dist/standalone/overlays/modal.d.ts +6 -0
- package/dist/standalone/overlays/modal.js +37 -0
- package/dist/standalone/overlays/modal.js.map +1 -0
- package/dist/standalone/overlays/popover.d.ts +6 -0
- package/dist/standalone/overlays/popover.js +33 -0
- package/dist/standalone/overlays/popover.js.map +1 -0
- package/dist/standalone/providers/action-sheet-controller.d.ts +8 -0
- package/dist/standalone/providers/action-sheet-controller.js +20 -0
- package/dist/standalone/providers/action-sheet-controller.js.map +1 -0
- package/dist/standalone/providers/alert-controller.d.ts +8 -0
- package/dist/standalone/providers/alert-controller.js +20 -0
- package/dist/standalone/providers/alert-controller.js.map +1 -0
- package/dist/standalone/providers/animation-controller.d.ts +25 -0
- package/dist/standalone/providers/animation-controller.js +37 -0
- package/dist/standalone/providers/animation-controller.js.map +1 -0
- package/dist/standalone/providers/gesture-controller.d.ts +13 -0
- package/dist/standalone/providers/gesture-controller.js +32 -0
- package/dist/standalone/providers/gesture-controller.js.map +1 -0
- package/dist/standalone/providers/ionic-angular.d.ts +7 -0
- package/dist/standalone/providers/ionic-angular.js +38 -0
- package/dist/standalone/providers/ionic-angular.js.map +1 -0
- package/dist/standalone/providers/loading-controller.d.ts +8 -0
- package/dist/standalone/providers/loading-controller.js +20 -0
- package/dist/standalone/providers/loading-controller.js.map +1 -0
- package/dist/standalone/providers/menu-controller.d.ts +7 -0
- package/dist/standalone/providers/menu-controller.js +18 -0
- package/dist/standalone/providers/menu-controller.js.map +1 -0
- package/dist/standalone/providers/modal-controller.d.ts +12 -0
- package/dist/standalone/providers/modal-controller.js +27 -0
- package/dist/standalone/providers/modal-controller.js.map +1 -0
- package/dist/standalone/providers/popover-controller.d.ts +9 -0
- package/dist/standalone/providers/popover-controller.js +21 -0
- package/dist/standalone/providers/popover-controller.js.map +1 -0
- package/dist/standalone/providers/toast-controller.d.ts +8 -0
- package/dist/standalone/providers/toast-controller.js +20 -0
- package/dist/standalone/providers/toast-controller.js.map +1 -0
- package/package.json +163 -22
- package/fesm2022/ionic-angular-common.mjs +0 -2799
- package/fesm2022/ionic-angular-common.mjs.map +0 -1
- package/fesm2022/ionic-angular-lazy.mjs.map +0 -1
- package/fesm2022/ionic-angular.mjs +0 -3644
- package/fesm2022/ionic-angular.mjs.map +0 -1
- package/types/ionic-angular-common.d.ts +0 -1031
- package/types/ionic-angular.d.ts +0 -1560
- /package/{schematics → dist/schematics}/add/files/root/theme/variables.css +0 -0
- /package/{schematics → dist/schematics}/add/index.js +0 -0
- /package/{schematics → dist/schematics}/add/schema.json +0 -0
- /package/{schematics → dist/schematics}/collection.json +0 -0
- /package/{schematics → dist/schematics}/utils/ast.js +0 -0
- /package/{schematics → dist/schematics}/utils/config.js +0 -0
- /package/{schematics → dist/schematics}/utils/package.js +0 -0
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
import { bindLifecycleEvents } from '../../providers/angular-delegate';
|
|
2
|
+
import { computeStackId, destroyView, getUrl, insertView, isTabSwitch, toSegments, } from './stack-utils';
|
|
3
|
+
// TODO(FW-2827): types
|
|
4
|
+
export class StackController {
|
|
5
|
+
containerEl;
|
|
6
|
+
router;
|
|
7
|
+
navCtrl;
|
|
8
|
+
zone;
|
|
9
|
+
location;
|
|
10
|
+
views = [];
|
|
11
|
+
runningTask;
|
|
12
|
+
skipTransition = false;
|
|
13
|
+
tabsPrefix;
|
|
14
|
+
activeView;
|
|
15
|
+
nextId = 0;
|
|
16
|
+
constructor(tabsPrefix, containerEl, router, navCtrl, zone, location) {
|
|
17
|
+
this.containerEl = containerEl;
|
|
18
|
+
this.router = router;
|
|
19
|
+
this.navCtrl = navCtrl;
|
|
20
|
+
this.zone = zone;
|
|
21
|
+
this.location = location;
|
|
22
|
+
this.tabsPrefix = tabsPrefix !== undefined ? toSegments(tabsPrefix) : undefined;
|
|
23
|
+
}
|
|
24
|
+
createView(ref, activatedRoute) {
|
|
25
|
+
const url = getUrl(this.router, activatedRoute);
|
|
26
|
+
const element = ref?.location?.nativeElement;
|
|
27
|
+
const unlistenEvents = bindLifecycleEvents(this.zone, ref.changeDetectorRef, ref.instance, element);
|
|
28
|
+
return {
|
|
29
|
+
id: this.nextId++,
|
|
30
|
+
stackId: computeStackId(this.tabsPrefix, url),
|
|
31
|
+
unlistenEvents,
|
|
32
|
+
element,
|
|
33
|
+
ref,
|
|
34
|
+
url,
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
getExistingView(activatedRoute) {
|
|
38
|
+
const activatedUrlKey = getUrl(this.router, activatedRoute);
|
|
39
|
+
const view = this.views.find((vw) => vw.url === activatedUrlKey);
|
|
40
|
+
if (view) {
|
|
41
|
+
view.ref.changeDetectorRef.reattach();
|
|
42
|
+
}
|
|
43
|
+
return view;
|
|
44
|
+
}
|
|
45
|
+
setActive(enteringView) {
|
|
46
|
+
const consumeResult = this.navCtrl.consumeTransition();
|
|
47
|
+
let { direction, animation, animationBuilder } = consumeResult;
|
|
48
|
+
const leavingView = this.activeView;
|
|
49
|
+
const tabSwitch = isTabSwitch(enteringView, leavingView);
|
|
50
|
+
if (tabSwitch) {
|
|
51
|
+
direction = 'back';
|
|
52
|
+
animation = undefined;
|
|
53
|
+
}
|
|
54
|
+
const viewsSnapshot = this.views.slice();
|
|
55
|
+
let currentNavigation;
|
|
56
|
+
const router = this.router;
|
|
57
|
+
// Angular >= 7.2.0
|
|
58
|
+
if (router.getCurrentNavigation) {
|
|
59
|
+
currentNavigation = router.getCurrentNavigation();
|
|
60
|
+
// Angular < 7.2.0
|
|
61
|
+
}
|
|
62
|
+
else if (router.navigations?.value) {
|
|
63
|
+
currentNavigation = router.navigations.value;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* If the navigation action
|
|
67
|
+
* sets `replaceUrl: true`
|
|
68
|
+
* then we need to make sure
|
|
69
|
+
* we remove the last item
|
|
70
|
+
* from our views stack
|
|
71
|
+
*/
|
|
72
|
+
if (currentNavigation?.extras?.replaceUrl) {
|
|
73
|
+
if (this.views.length > 0) {
|
|
74
|
+
this.views.splice(-1, 1);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
const reused = this.views.includes(enteringView);
|
|
78
|
+
const views = this.insertView(enteringView, direction);
|
|
79
|
+
// Trigger change detection before transition starts
|
|
80
|
+
// This will call ngOnInit() the first time too, just after the view
|
|
81
|
+
// was attached to the dom, but BEFORE the transition starts
|
|
82
|
+
if (!reused) {
|
|
83
|
+
enteringView.ref.changeDetectorRef.detectChanges();
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* If we are going back from a page that
|
|
87
|
+
* was presented using a custom animation
|
|
88
|
+
* we should default to using that
|
|
89
|
+
* unless the developer explicitly
|
|
90
|
+
* provided another animation.
|
|
91
|
+
*/
|
|
92
|
+
const customAnimation = enteringView.animationBuilder;
|
|
93
|
+
if (animationBuilder === undefined && direction === 'back' && !tabSwitch && customAnimation !== undefined) {
|
|
94
|
+
animationBuilder = customAnimation;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Save any custom animation so that navigating
|
|
98
|
+
* back will use this custom animation by default.
|
|
99
|
+
*/
|
|
100
|
+
if (leavingView) {
|
|
101
|
+
leavingView.animationBuilder = animationBuilder;
|
|
102
|
+
}
|
|
103
|
+
// Wait until previous transitions finish
|
|
104
|
+
return this.zone.runOutsideAngular(() => {
|
|
105
|
+
return this.wait(() => {
|
|
106
|
+
// disconnect leaving page from change detection to
|
|
107
|
+
// reduce jank during the page transition
|
|
108
|
+
if (leavingView) {
|
|
109
|
+
leavingView.ref.changeDetectorRef.detach();
|
|
110
|
+
}
|
|
111
|
+
// In case the enteringView is the same as the leavingPage we need to reattach()
|
|
112
|
+
enteringView.ref.changeDetectorRef.reattach();
|
|
113
|
+
return this.transition(enteringView, leavingView, animation, this.canGoBack(1), false, animationBuilder)
|
|
114
|
+
.then(() => cleanupAsync(enteringView, views, viewsSnapshot, this.location, this.zone))
|
|
115
|
+
.then(() => ({
|
|
116
|
+
enteringView,
|
|
117
|
+
direction,
|
|
118
|
+
animation,
|
|
119
|
+
tabSwitch,
|
|
120
|
+
}));
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
canGoBack(deep, stackId = this.getActiveStackId()) {
|
|
125
|
+
return this.getStack(stackId).length > deep;
|
|
126
|
+
}
|
|
127
|
+
pop(deep, stackId = this.getActiveStackId()) {
|
|
128
|
+
return this.zone.run(() => {
|
|
129
|
+
const views = this.getStack(stackId);
|
|
130
|
+
if (views.length <= deep) {
|
|
131
|
+
return Promise.resolve(false);
|
|
132
|
+
}
|
|
133
|
+
const view = views[views.length - deep - 1];
|
|
134
|
+
let url = view.url;
|
|
135
|
+
const viewSavedData = view.savedData;
|
|
136
|
+
if (viewSavedData) {
|
|
137
|
+
const primaryOutlet = viewSavedData.get('primary');
|
|
138
|
+
if (primaryOutlet?.route?._routerState?.snapshot.url) {
|
|
139
|
+
url = primaryOutlet.route._routerState.snapshot.url;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
const { animationBuilder } = this.navCtrl.consumeTransition();
|
|
143
|
+
return this.navCtrl.navigateBack(url, { ...view.savedExtras, animation: animationBuilder }).then(() => true);
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
startBackTransition() {
|
|
147
|
+
const leavingView = this.activeView;
|
|
148
|
+
if (leavingView) {
|
|
149
|
+
const views = this.getStack(leavingView.stackId);
|
|
150
|
+
const enteringView = views[views.length - 2];
|
|
151
|
+
const customAnimation = enteringView.animationBuilder;
|
|
152
|
+
return this.wait(() => {
|
|
153
|
+
return this.transition(enteringView, // entering view
|
|
154
|
+
leavingView, // leaving view
|
|
155
|
+
'back', this.canGoBack(2), true, customAnimation);
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
return Promise.resolve();
|
|
159
|
+
}
|
|
160
|
+
endBackTransition(shouldComplete) {
|
|
161
|
+
if (shouldComplete) {
|
|
162
|
+
this.skipTransition = true;
|
|
163
|
+
this.pop(1);
|
|
164
|
+
}
|
|
165
|
+
else if (this.activeView) {
|
|
166
|
+
cleanup(this.activeView, this.views, this.views, this.location, this.zone);
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
getLastUrl(stackId) {
|
|
170
|
+
const views = this.getStack(stackId);
|
|
171
|
+
return views.length > 0 ? views[views.length - 1] : undefined;
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* @internal
|
|
175
|
+
*/
|
|
176
|
+
getRootUrl(stackId) {
|
|
177
|
+
const views = this.getStack(stackId);
|
|
178
|
+
return views.length > 0 ? views[0] : undefined;
|
|
179
|
+
}
|
|
180
|
+
getActiveStackId() {
|
|
181
|
+
return this.activeView ? this.activeView.stackId : undefined;
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* @internal
|
|
185
|
+
*/
|
|
186
|
+
getActiveView() {
|
|
187
|
+
return this.activeView;
|
|
188
|
+
}
|
|
189
|
+
hasRunningTask() {
|
|
190
|
+
return this.runningTask !== undefined;
|
|
191
|
+
}
|
|
192
|
+
destroy() {
|
|
193
|
+
this.containerEl = undefined;
|
|
194
|
+
this.views.forEach(destroyView);
|
|
195
|
+
this.activeView = undefined;
|
|
196
|
+
this.views = [];
|
|
197
|
+
}
|
|
198
|
+
getStack(stackId) {
|
|
199
|
+
return this.views.filter((v) => v.stackId === stackId);
|
|
200
|
+
}
|
|
201
|
+
insertView(enteringView, direction) {
|
|
202
|
+
this.activeView = enteringView;
|
|
203
|
+
this.views = insertView(this.views, enteringView, direction);
|
|
204
|
+
return this.views.slice();
|
|
205
|
+
}
|
|
206
|
+
transition(enteringView, leavingView, direction, showGoBack, progressAnimation, animationBuilder) {
|
|
207
|
+
if (this.skipTransition) {
|
|
208
|
+
this.skipTransition = false;
|
|
209
|
+
return Promise.resolve(false);
|
|
210
|
+
}
|
|
211
|
+
if (leavingView === enteringView) {
|
|
212
|
+
return Promise.resolve(false);
|
|
213
|
+
}
|
|
214
|
+
const enteringEl = enteringView ? enteringView.element : undefined;
|
|
215
|
+
const leavingEl = leavingView ? leavingView.element : undefined;
|
|
216
|
+
const containerEl = this.containerEl;
|
|
217
|
+
if (enteringEl && enteringEl !== leavingEl) {
|
|
218
|
+
enteringEl.classList.add('ion-page');
|
|
219
|
+
enteringEl.classList.add('ion-page-invisible');
|
|
220
|
+
if (containerEl.commit) {
|
|
221
|
+
return containerEl.commit(enteringEl, leavingEl, {
|
|
222
|
+
duration: direction === undefined ? 0 : undefined,
|
|
223
|
+
direction,
|
|
224
|
+
showGoBack,
|
|
225
|
+
progressAnimation,
|
|
226
|
+
animationBuilder,
|
|
227
|
+
});
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
return Promise.resolve(false);
|
|
231
|
+
}
|
|
232
|
+
async wait(task) {
|
|
233
|
+
if (this.runningTask !== undefined) {
|
|
234
|
+
await this.runningTask;
|
|
235
|
+
this.runningTask = undefined;
|
|
236
|
+
}
|
|
237
|
+
const promise = (this.runningTask = task());
|
|
238
|
+
promise.finally(() => (this.runningTask = undefined));
|
|
239
|
+
return promise;
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
const cleanupAsync = (activeRoute, views, viewsSnapshot, location, zone) => {
|
|
243
|
+
if (typeof requestAnimationFrame === 'function') {
|
|
244
|
+
return new Promise((resolve) => {
|
|
245
|
+
requestAnimationFrame(() => {
|
|
246
|
+
cleanup(activeRoute, views, viewsSnapshot, location, zone);
|
|
247
|
+
resolve();
|
|
248
|
+
});
|
|
249
|
+
});
|
|
250
|
+
}
|
|
251
|
+
return Promise.resolve();
|
|
252
|
+
};
|
|
253
|
+
const cleanup = (activeRoute, views, viewsSnapshot, location, zone) => {
|
|
254
|
+
/**
|
|
255
|
+
* Re-enter the Angular zone when destroying page components. This will allow
|
|
256
|
+
* lifecycle events (`ngOnDestroy`) to be run inside the Angular zone.
|
|
257
|
+
*/
|
|
258
|
+
zone.run(() => viewsSnapshot.filter((view) => !views.includes(view)).forEach(destroyView));
|
|
259
|
+
views.forEach((view) => {
|
|
260
|
+
/**
|
|
261
|
+
* In the event that a user navigated multiple
|
|
262
|
+
* times in rapid succession, we want to make sure
|
|
263
|
+
* we don't pre-emptively detach a view while
|
|
264
|
+
* it is in mid-transition.
|
|
265
|
+
*
|
|
266
|
+
* In this instance we also do not care about query
|
|
267
|
+
* params or fragments as it will be the same view regardless
|
|
268
|
+
*/
|
|
269
|
+
const locationWithoutParams = location.path().split('?')[0];
|
|
270
|
+
const locationWithoutFragment = locationWithoutParams.split('#')[0];
|
|
271
|
+
if (view !== activeRoute && view.url !== locationWithoutFragment) {
|
|
272
|
+
const element = view.element;
|
|
273
|
+
element.setAttribute('aria-hidden', 'true');
|
|
274
|
+
element.classList.add('ion-page-hidden');
|
|
275
|
+
view.ref.changeDetectorRef.detach();
|
|
276
|
+
}
|
|
277
|
+
});
|
|
278
|
+
};
|
|
279
|
+
//# sourceMappingURL=stack-controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stack-controller.js","sourceRoot":"","sources":["../../../../src/common/directives/navigation/stack-controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { ComponentRef } from '@angular/core';
|
|
2
|
+
import { ActivatedRoute, NavigationExtras, Router } from '@angular/router';
|
|
3
|
+
import type { AnimationBuilder, NavDirection, RouterDirection } from '@ionic/core/components';
|
|
4
|
+
export declare const insertView: (views: RouteView[], view: RouteView, direction: RouterDirection) => RouteView[];
|
|
5
|
+
export declare const getUrl: (router: Router, activatedRoute: ActivatedRoute) => string;
|
|
6
|
+
export declare const isTabSwitch: (enteringView: RouteView, leavingView: RouteView | undefined) => boolean;
|
|
7
|
+
export declare const computeStackId: (prefixUrl: string[] | undefined, url: string) => string | undefined;
|
|
8
|
+
export declare const toSegments: (path: string) => string[];
|
|
9
|
+
export declare const destroyView: (view: RouteView | undefined) => void;
|
|
10
|
+
export interface StackWillChangeEvent {
|
|
11
|
+
enteringView: RouteView;
|
|
12
|
+
/**
|
|
13
|
+
* `true` if the event is trigged as a result of a switch
|
|
14
|
+
* between tab navigation stacks.
|
|
15
|
+
*/
|
|
16
|
+
tabSwitch: boolean;
|
|
17
|
+
}
|
|
18
|
+
export interface StackDidChangeEvent {
|
|
19
|
+
enteringView: RouteView;
|
|
20
|
+
direction: RouterDirection;
|
|
21
|
+
animation: NavDirection | undefined;
|
|
22
|
+
/**
|
|
23
|
+
* `true` if the event is trigged as a result of a switch
|
|
24
|
+
* between tab navigation stacks.
|
|
25
|
+
*/
|
|
26
|
+
tabSwitch: boolean;
|
|
27
|
+
}
|
|
28
|
+
export interface RouteView {
|
|
29
|
+
id: number;
|
|
30
|
+
url: string;
|
|
31
|
+
stackId: string | undefined;
|
|
32
|
+
element: HTMLElement;
|
|
33
|
+
ref: ComponentRef<any>;
|
|
34
|
+
savedData?: any;
|
|
35
|
+
savedExtras?: NavigationExtras;
|
|
36
|
+
unlistenEvents: () => void;
|
|
37
|
+
animationBuilder?: AnimationBuilder;
|
|
38
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
export const insertView = (views, view, direction) => {
|
|
2
|
+
if (direction === 'root') {
|
|
3
|
+
return setRoot(views, view);
|
|
4
|
+
}
|
|
5
|
+
else if (direction === 'forward') {
|
|
6
|
+
return setForward(views, view);
|
|
7
|
+
}
|
|
8
|
+
else {
|
|
9
|
+
return setBack(views, view);
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
const setRoot = (views, view) => {
|
|
13
|
+
views = views.filter((v) => v.stackId !== view.stackId);
|
|
14
|
+
views.push(view);
|
|
15
|
+
return views;
|
|
16
|
+
};
|
|
17
|
+
const setForward = (views, view) => {
|
|
18
|
+
const index = views.indexOf(view);
|
|
19
|
+
if (index >= 0) {
|
|
20
|
+
views = views.filter((v) => v.stackId !== view.stackId || v.id <= view.id);
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
views.push(view);
|
|
24
|
+
}
|
|
25
|
+
return views;
|
|
26
|
+
};
|
|
27
|
+
const setBack = (views, view) => {
|
|
28
|
+
const index = views.indexOf(view);
|
|
29
|
+
if (index >= 0) {
|
|
30
|
+
return views.filter((v) => v.stackId !== view.stackId || v.id <= view.id);
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
return setRoot(views, view);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
export const getUrl = (router, activatedRoute) => {
|
|
37
|
+
const urlTree = router.createUrlTree(['.'], { relativeTo: activatedRoute });
|
|
38
|
+
return router.serializeUrl(urlTree);
|
|
39
|
+
};
|
|
40
|
+
export const isTabSwitch = (enteringView, leavingView) => {
|
|
41
|
+
if (!leavingView) {
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
return enteringView.stackId !== leavingView.stackId;
|
|
45
|
+
};
|
|
46
|
+
export const computeStackId = (prefixUrl, url) => {
|
|
47
|
+
if (!prefixUrl) {
|
|
48
|
+
return undefined;
|
|
49
|
+
}
|
|
50
|
+
const segments = toSegments(url);
|
|
51
|
+
for (let i = 0; i < segments.length; i++) {
|
|
52
|
+
if (i >= prefixUrl.length) {
|
|
53
|
+
return segments[i];
|
|
54
|
+
}
|
|
55
|
+
if (segments[i] !== prefixUrl[i]) {
|
|
56
|
+
return undefined;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
return undefined;
|
|
60
|
+
};
|
|
61
|
+
export const toSegments = (path) => {
|
|
62
|
+
return path
|
|
63
|
+
.split('/')
|
|
64
|
+
.map((s) => s.trim())
|
|
65
|
+
.filter((s) => s !== '');
|
|
66
|
+
};
|
|
67
|
+
export const destroyView = (view) => {
|
|
68
|
+
if (view) {
|
|
69
|
+
view.ref.destroy();
|
|
70
|
+
view.unlistenEvents();
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=stack-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stack-utils.js","sourceRoot":"","sources":["../../../../src/common/directives/navigation/stack-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { AfterContentChecked, AfterContentInit, ElementRef, EventEmitter, AfterViewInit, QueryList } from '@angular/core';
|
|
2
|
+
import { NavController } from '../../providers/nav-controller';
|
|
3
|
+
import { StackDidChangeEvent, StackWillChangeEvent } from './stack-utils';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare abstract class IonTabs implements AfterViewInit, AfterContentInit, AfterContentChecked {
|
|
6
|
+
private navCtrl;
|
|
7
|
+
/**
|
|
8
|
+
* Note: These must be redeclared on each child class since it needs
|
|
9
|
+
* access to generated components such as IonRouterOutlet and IonTabBar.
|
|
10
|
+
*/
|
|
11
|
+
abstract outlet: any;
|
|
12
|
+
abstract tabBar: any;
|
|
13
|
+
abstract tabBars: QueryList<any>;
|
|
14
|
+
abstract tabs: QueryList<any>;
|
|
15
|
+
tabsInner: ElementRef<HTMLDivElement>;
|
|
16
|
+
/**
|
|
17
|
+
* Emitted before the tab view is changed.
|
|
18
|
+
*/
|
|
19
|
+
ionTabsWillChange: EventEmitter<{
|
|
20
|
+
tab: string;
|
|
21
|
+
}>;
|
|
22
|
+
/**
|
|
23
|
+
* Emitted after the tab view is changed.
|
|
24
|
+
*/
|
|
25
|
+
ionTabsDidChange: EventEmitter<{
|
|
26
|
+
tab: string;
|
|
27
|
+
}>;
|
|
28
|
+
private tabBarSlot;
|
|
29
|
+
private hasTab;
|
|
30
|
+
private selectedTab?;
|
|
31
|
+
private leavingTab?;
|
|
32
|
+
constructor(navCtrl: NavController);
|
|
33
|
+
ngAfterViewInit(): void;
|
|
34
|
+
ngAfterContentInit(): void;
|
|
35
|
+
ngAfterContentChecked(): void;
|
|
36
|
+
/**
|
|
37
|
+
* @internal
|
|
38
|
+
*/
|
|
39
|
+
onStackWillChange({ enteringView, tabSwitch }: StackWillChangeEvent): void;
|
|
40
|
+
/**
|
|
41
|
+
* @internal
|
|
42
|
+
*/
|
|
43
|
+
onStackDidChange({ enteringView, tabSwitch }: StackDidChangeEvent): void;
|
|
44
|
+
/**
|
|
45
|
+
* Host listener for the `ionTabButtonClick` event. Angular 22 enabled stricter
|
|
46
|
+
* host-binding type checking, which types `$event` as the DOM `Event`. That is
|
|
47
|
+
* not assignable to `select`'s public `string | CustomEvent` parameter, so this
|
|
48
|
+
* thin wrapper narrows the event before forwarding to keep `select`'s public
|
|
49
|
+
* signature intact.
|
|
50
|
+
*/
|
|
51
|
+
onTabButtonClick(ev: Event): Promise<boolean> | undefined;
|
|
52
|
+
/**
|
|
53
|
+
* When a tab button is clicked, there are several scenarios:
|
|
54
|
+
* 1. If the selected tab is currently active (the tab button has been clicked
|
|
55
|
+
* again), then it should go to the root view for that tab.
|
|
56
|
+
*
|
|
57
|
+
* a. Get the saved root view from the router outlet. If the saved root view
|
|
58
|
+
* matches the tabRootUrl, set the route view to this view including the
|
|
59
|
+
* navigation extras. Any `queryParams` or `fragment` declared on the tab
|
|
60
|
+
* button's `href` are also forwarded.
|
|
61
|
+
* b. If the saved root view from the router outlet does not match, navigate
|
|
62
|
+
* to the tabRootUrl, forwarding any `queryParams`/`fragment` declared on
|
|
63
|
+
* the tab button's `href`.
|
|
64
|
+
*
|
|
65
|
+
* 2. If the current tab tab is not currently selected, get the last route
|
|
66
|
+
* view from the router outlet.
|
|
67
|
+
*
|
|
68
|
+
* a. If the last route view exists, navigate to that view including any
|
|
69
|
+
* navigation extras.
|
|
70
|
+
* b. If the last route view doesn't exist, then navigate to the default
|
|
71
|
+
* tabRootUrl, forwarding any `queryParams`/`fragment` declared on the
|
|
72
|
+
* tab button's `href`.
|
|
73
|
+
*/
|
|
74
|
+
select(tabOrEvent: string | CustomEvent): Promise<boolean> | undefined;
|
|
75
|
+
private setActiveTab;
|
|
76
|
+
private tabSwitch;
|
|
77
|
+
getSelected(): string | undefined;
|
|
78
|
+
/**
|
|
79
|
+
* Detects changes to the slot attribute of the tab bar.
|
|
80
|
+
*
|
|
81
|
+
* If the slot attribute has changed, then the tab bar
|
|
82
|
+
* should be relocated to the new slot position.
|
|
83
|
+
*/
|
|
84
|
+
private detectSlotChanges;
|
|
85
|
+
/**
|
|
86
|
+
* Relocates the tab bar to the new slot position.
|
|
87
|
+
*/
|
|
88
|
+
private relocateTabBar;
|
|
89
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<IonTabs, never>;
|
|
90
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<IonTabs, "ion-tabs", never, {}, { "ionTabsWillChange": "ionTabsWillChange"; "ionTabsDidChange": "ionTabsDidChange"; }, never, never, true, never>;
|
|
91
|
+
}
|