@ionic/angular 8.8.9-dev.11780604658.184bb991 → 8.8.9-dev.11780690416.19d0d667

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.
Files changed (244) hide show
  1. package/README.md +1 -1
  2. package/app-initialize.d.ts +3 -0
  3. package/common/directives/control-value-accessors/index.d.ts +1 -0
  4. package/common/directives/control-value-accessors/value-accessor.d.ts +36 -0
  5. package/common/directives/navigation/back-button.d.ts +23 -0
  6. package/common/directives/navigation/nav-params.d.ts +45 -0
  7. package/common/directives/navigation/nav.d.ts +21 -0
  8. package/common/directives/navigation/router-link-delegate.d.ts +60 -0
  9. package/common/directives/navigation/router-outlet.d.ts +104 -0
  10. package/common/directives/navigation/stack-controller.d.ts +42 -0
  11. package/common/directives/navigation/stack-utils.d.ts +38 -0
  12. package/common/directives/navigation/tabs.d.ts +83 -0
  13. package/common/index.d.ts +22 -0
  14. package/common/overlays/modal.d.ts +62 -0
  15. package/common/overlays/popover.d.ts +46 -0
  16. package/common/providers/angular-delegate.d.ts +28 -0
  17. package/common/providers/config.d.ts +11 -0
  18. package/common/providers/dom-controller.d.ts +16 -0
  19. package/common/providers/menu-controller.d.ts +78 -0
  20. package/common/providers/nav-controller.d.ts +116 -0
  21. package/common/providers/platform.d.ts +174 -0
  22. package/common/types/interfaces.d.ts +8 -0
  23. package/common/types/ionic-lifecycle-hooks.d.ts +27 -0
  24. package/common/types/overlay-options.d.ts +16 -0
  25. package/common/utils/overlay.d.ts +21 -0
  26. package/common/utils/proxy.d.ts +8 -0
  27. package/common/utils/routing.d.ts +28 -0
  28. package/common/utils/util.d.ts +1 -0
  29. package/css/core.css +1 -1
  30. package/css/core.css.map +1 -1
  31. package/css/display.css +1 -1
  32. package/css/display.css.map +1 -1
  33. package/css/flex-utils.css +1 -1
  34. package/css/flex-utils.css.map +1 -1
  35. package/css/float-elements.css.map +1 -1
  36. package/css/global.bundle.css.map +1 -1
  37. package/css/ionic/bundle.ionic.css +1 -0
  38. package/css/ionic/bundle.ionic.css.map +1 -0
  39. package/css/ionic/core.ionic.css +1 -0
  40. package/css/ionic/core.ionic.css.map +1 -0
  41. package/css/ionic/global.bundle.ionic.css +1 -0
  42. package/css/ionic/global.bundle.ionic.css.map +1 -0
  43. package/css/ionic/ionic-swiper.ionic.css +1 -0
  44. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  45. package/css/ionic/link.ionic.css +1 -0
  46. package/css/ionic/link.ionic.css.map +1 -0
  47. package/css/ionic/structure.ionic.css +1 -0
  48. package/css/ionic/structure.ionic.css.map +1 -0
  49. package/css/ionic/typography.ionic.css +1 -0
  50. package/css/ionic/typography.ionic.css.map +1 -0
  51. package/css/ionic/utils.bundle.ionic.css +1 -0
  52. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  53. package/css/ionic-swiper.css +1 -1
  54. package/css/ionic-swiper.css.map +1 -1
  55. package/css/ionic.bundle.css +1 -1
  56. package/css/ionic.bundle.css.map +1 -1
  57. package/css/normalize.css.map +1 -1
  58. package/css/padding.css.map +1 -1
  59. package/css/palettes/dark.always.css.map +1 -1
  60. package/css/palettes/dark.class.css.map +1 -1
  61. package/css/palettes/dark.system.css.map +1 -1
  62. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  63. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  64. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  65. package/css/palettes/high-contrast.always.css.map +1 -1
  66. package/css/palettes/high-contrast.class.css.map +1 -1
  67. package/css/palettes/high-contrast.system.css.map +1 -1
  68. package/css/structure.css.map +1 -1
  69. package/css/text-alignment.css.map +1 -1
  70. package/css/text-transformation.css.map +1 -1
  71. package/css/typography.css.map +1 -1
  72. package/css/utils.bundle.css +1 -1
  73. package/css/utils.bundle.css.map +1 -1
  74. package/directives/angular-component-lib/utils.d.ts +9 -0
  75. package/directives/control-value-accessors/boolean-value-accessor.d.ts +10 -0
  76. package/directives/control-value-accessors/index.d.ts +4 -0
  77. package/directives/control-value-accessors/numeric-value-accessor.d.ts +11 -0
  78. package/directives/control-value-accessors/select-value-accessor.d.ts +9 -0
  79. package/directives/control-value-accessors/text-value-accessor.d.ts +9 -0
  80. package/directives/navigation/ion-back-button.d.ts +9 -0
  81. package/directives/navigation/ion-nav.d.ts +8 -0
  82. package/directives/navigation/ion-router-outlet.d.ts +25 -0
  83. package/directives/navigation/ion-tabs.d.ts +13 -0
  84. package/directives/navigation/router-link-delegate.d.ts +16 -0
  85. package/directives/overlays/modal.d.ts +6 -0
  86. package/directives/overlays/popover.d.ts +6 -0
  87. package/directives/proxies-list.d.ts +2 -0
  88. package/{types/ionic-angular.d.ts → directives/proxies.d.ts} +417 -642
  89. package/directives/validators/index.d.ts +2 -0
  90. package/directives/validators/max-validator.d.ts +12 -0
  91. package/directives/validators/min-validator.d.ts +12 -0
  92. package/esm2022/app-initialize.mjs +29 -0
  93. package/esm2022/common/directives/control-value-accessors/index.mjs +2 -0
  94. package/esm2022/common/directives/control-value-accessors/value-accessor.mjs +153 -0
  95. package/esm2022/common/directives/navigation/back-button.mjs +61 -0
  96. package/esm2022/common/directives/navigation/nav-params.mjs +47 -0
  97. package/esm2022/common/directives/navigation/nav.mjs +49 -0
  98. package/esm2022/common/directives/navigation/router-link-delegate.mjs +156 -0
  99. package/esm2022/common/directives/navigation/router-outlet.mjs +480 -0
  100. package/esm2022/common/directives/navigation/stack-controller.mjs +280 -0
  101. package/esm2022/common/directives/navigation/stack-utils.mjs +73 -0
  102. package/esm2022/common/directives/navigation/tabs.mjs +279 -0
  103. package/esm2022/common/index.mjs +20 -0
  104. package/esm2022/common/ionic-angular-common.mjs +5 -0
  105. package/esm2022/common/overlays/modal.mjs +103 -0
  106. package/esm2022/common/overlays/popover.mjs +91 -0
  107. package/esm2022/common/providers/angular-delegate.mjs +203 -0
  108. package/esm2022/common/providers/config.mjs +45 -0
  109. package/esm2022/common/providers/dom-controller.mjs +45 -0
  110. package/esm2022/common/providers/menu-controller.mjs +114 -0
  111. package/esm2022/common/providers/nav-controller.mjs +235 -0
  112. package/esm2022/common/providers/platform.mjs +258 -0
  113. package/esm2022/common/types/interfaces.mjs +2 -0
  114. package/esm2022/common/types/ionic-lifecycle-hooks.mjs +5 -0
  115. package/esm2022/common/types/overlay-options.mjs +2 -0
  116. package/esm2022/common/utils/overlay.mjs +26 -0
  117. package/esm2022/common/utils/proxy.mjs +47 -0
  118. package/esm2022/common/utils/routing.mjs +55 -0
  119. package/esm2022/common/utils/util.mjs +10 -0
  120. package/esm2022/directives/angular-component-lib/utils.mjs +59 -0
  121. package/esm2022/directives/control-value-accessors/boolean-value-accessor.mjs +42 -0
  122. package/esm2022/directives/control-value-accessors/index.mjs +5 -0
  123. package/esm2022/directives/control-value-accessors/numeric-value-accessor.mjs +50 -0
  124. package/esm2022/directives/control-value-accessors/select-value-accessor.mjs +39 -0
  125. package/esm2022/directives/control-value-accessors/text-value-accessor.mjs +38 -0
  126. package/esm2022/directives/navigation/ion-back-button.mjs +24 -0
  127. package/esm2022/directives/navigation/ion-nav.mjs +21 -0
  128. package/esm2022/directives/navigation/ion-router-outlet.mjs +52 -0
  129. package/esm2022/directives/navigation/ion-tabs.mjs +59 -0
  130. package/esm2022/directives/navigation/router-link-delegate.mjs +32 -0
  131. package/esm2022/directives/overlays/modal.mjs +22 -0
  132. package/esm2022/directives/overlays/popover.mjs +18 -0
  133. package/esm2022/directives/proxies-list.mjs +93 -0
  134. package/esm2022/directives/proxies.mjs +2465 -0
  135. package/esm2022/directives/validators/index.mjs +3 -0
  136. package/esm2022/directives/validators/max-validator.mjs +27 -0
  137. package/esm2022/directives/validators/min-validator.mjs +27 -0
  138. package/esm2022/index.mjs +32 -0
  139. package/esm2022/ionic-angular.mjs +5 -0
  140. package/esm2022/ionic-module.mjs +111 -0
  141. package/esm2022/providers/action-sheet-controller.mjs +19 -0
  142. package/esm2022/providers/alert-controller.mjs +19 -0
  143. package/esm2022/providers/animation-controller.mjs +38 -0
  144. package/esm2022/providers/gesture-controller.mjs +33 -0
  145. package/esm2022/providers/loading-controller.mjs +19 -0
  146. package/esm2022/providers/menu-controller.mjs +19 -0
  147. package/esm2022/providers/modal-controller.mjs +26 -0
  148. package/esm2022/providers/picker-controller.mjs +22 -0
  149. package/esm2022/providers/popover-controller.mjs +19 -0
  150. package/esm2022/providers/toast-controller.mjs +19 -0
  151. package/esm2022/standalone/directives/angular-component-lib/utils.mjs +59 -0
  152. package/esm2022/standalone/directives/checkbox.mjs +76 -0
  153. package/esm2022/standalone/directives/datetime.mjs +95 -0
  154. package/esm2022/standalone/directives/icon.mjs +35 -0
  155. package/esm2022/standalone/directives/index.mjs +13 -0
  156. package/esm2022/standalone/directives/input-otp.mjs +90 -0
  157. package/esm2022/standalone/directives/input.mjs +113 -0
  158. package/esm2022/standalone/directives/proxies.mjs +2356 -0
  159. package/esm2022/standalone/directives/radio-group.mjs +60 -0
  160. package/esm2022/standalone/directives/range.mjs +78 -0
  161. package/esm2022/standalone/directives/searchbar.mjs +82 -0
  162. package/esm2022/standalone/directives/segment.mjs +60 -0
  163. package/esm2022/standalone/directives/select.mjs +84 -0
  164. package/esm2022/standalone/directives/textarea.mjs +91 -0
  165. package/esm2022/standalone/directives/toggle.mjs +76 -0
  166. package/esm2022/standalone/index.mjs +25 -0
  167. package/esm2022/standalone/ionic-angular-standalone.mjs +5 -0
  168. package/esm2022/standalone/navigation/back-button.mjs +32 -0
  169. package/esm2022/standalone/navigation/nav.mjs +28 -0
  170. package/esm2022/standalone/navigation/router-link-delegate.mjs +28 -0
  171. package/esm2022/standalone/navigation/router-outlet.mjs +60 -0
  172. package/esm2022/standalone/navigation/tabs.mjs +58 -0
  173. package/esm2022/standalone/overlays/modal.mjs +32 -0
  174. package/esm2022/standalone/overlays/popover.mjs +28 -0
  175. package/esm2022/standalone/providers/action-sheet-controller.mjs +21 -0
  176. package/esm2022/standalone/providers/alert-controller.mjs +21 -0
  177. package/esm2022/standalone/providers/animation-controller.mjs +38 -0
  178. package/esm2022/standalone/providers/gesture-controller.mjs +33 -0
  179. package/esm2022/standalone/providers/ionic-angular.mjs +38 -0
  180. package/esm2022/standalone/providers/loading-controller.mjs +21 -0
  181. package/esm2022/standalone/providers/menu-controller.mjs +19 -0
  182. package/esm2022/standalone/providers/modal-controller.mjs +28 -0
  183. package/esm2022/standalone/providers/picker-controller.mjs +24 -0
  184. package/esm2022/standalone/providers/popover-controller.mjs +21 -0
  185. package/esm2022/standalone/providers/toast-controller.mjs +21 -0
  186. package/fesm2022/ionic-angular-common.mjs +85 -98
  187. package/fesm2022/ionic-angular-common.mjs.map +1 -1
  188. package/fesm2022/ionic-angular-standalone.mjs +911 -903
  189. package/fesm2022/ionic-angular-standalone.mjs.map +1 -1
  190. package/fesm2022/ionic-angular.mjs +779 -1093
  191. package/fesm2022/ionic-angular.mjs.map +1 -1
  192. package/index.d.ts +27 -0
  193. package/ionic-module.d.ts +28 -0
  194. package/package.json +16 -16
  195. package/providers/action-sheet-controller.d.ts +8 -0
  196. package/providers/alert-controller.d.ts +8 -0
  197. package/providers/animation-controller.d.ts +25 -0
  198. package/providers/gesture-controller.d.ts +13 -0
  199. package/providers/loading-controller.d.ts +8 -0
  200. package/providers/menu-controller.d.ts +7 -0
  201. package/providers/modal-controller.d.ts +12 -0
  202. package/providers/picker-controller.d.ts +11 -0
  203. package/providers/popover-controller.d.ts +9 -0
  204. package/providers/toast-controller.d.ts +8 -0
  205. package/schematics/add/index.js +1 -1
  206. package/schematics/utils/ast.js +3 -35
  207. package/schematics/utils/config.js +11 -10
  208. package/schematics/utils/package.js +2 -5
  209. package/standalone/directives/angular-component-lib/utils.d.ts +9 -0
  210. package/standalone/directives/checkbox.d.ts +30 -0
  211. package/standalone/directives/datetime.d.ts +30 -0
  212. package/standalone/directives/icon.d.ts +9 -0
  213. package/standalone/directives/index.d.ts +12 -0
  214. package/standalone/directives/input-otp.d.ts +49 -0
  215. package/standalone/directives/input.d.ts +47 -0
  216. package/standalone/directives/proxies.d.ts +1062 -0
  217. package/standalone/directives/radio-group.d.ts +18 -0
  218. package/standalone/directives/range.d.ts +47 -0
  219. package/standalone/directives/searchbar.d.ts +45 -0
  220. package/standalone/directives/segment.d.ts +19 -0
  221. package/standalone/directives/select.d.ts +34 -0
  222. package/standalone/directives/textarea.d.ts +37 -0
  223. package/standalone/directives/toggle.d.ts +28 -0
  224. package/standalone/index.d.ts +23 -0
  225. package/standalone/navigation/back-button.d.ts +9 -0
  226. package/standalone/navigation/nav.d.ts +8 -0
  227. package/standalone/navigation/router-link-delegate.d.ts +10 -0
  228. package/standalone/navigation/router-outlet.d.ts +25 -0
  229. package/standalone/navigation/tabs.d.ts +13 -0
  230. package/standalone/overlays/modal.d.ts +6 -0
  231. package/standalone/overlays/popover.d.ts +6 -0
  232. package/standalone/providers/action-sheet-controller.d.ts +8 -0
  233. package/standalone/providers/alert-controller.d.ts +8 -0
  234. package/standalone/providers/animation-controller.d.ts +25 -0
  235. package/standalone/providers/gesture-controller.d.ts +13 -0
  236. package/standalone/providers/ionic-angular.d.ts +7 -0
  237. package/standalone/providers/loading-controller.d.ts +8 -0
  238. package/standalone/providers/menu-controller.d.ts +7 -0
  239. package/standalone/providers/modal-controller.d.ts +12 -0
  240. package/standalone/providers/picker-controller.d.ts +11 -0
  241. package/standalone/providers/popover-controller.d.ts +9 -0
  242. package/standalone/providers/toast-controller.d.ts +8 -0
  243. package/types/ionic-angular-common.d.ts +0 -1021
  244. package/types/ionic-angular-standalone.d.ts +0 -1560
@@ -1,1021 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { ComponentRef, OnDestroy, OnInit, EventEmitter, ElementRef, NgZone, EnvironmentInjector, Provider, InjectionToken, Injector, ApplicationRef, TemplateRef, ChangeDetectorRef, AfterViewInit, OnChanges, AfterContentInit, AfterContentChecked, QueryList } from '@angular/core';
3
- import { MenuControllerI, AnimationBuilder, MenuI, Animation, RouterDirection, NavDirection, BackButtonEventDetail, KeyboardEventDetail, Platforms, IonicConfig, FrameworkDelegate, ComponentRef as ComponentRef$1, ModalOptions as ModalOptions$1, PopoverOptions as PopoverOptions$1, Components, ModalBreakpointChangeEventDetail, ModalDragEventDetail } from '@ionic/core/components';
4
- import { Location, LocationStrategy } from '@angular/common';
5
- import { NavigationExtras, Router, ActivatedRoute, OutletContext, Data, UrlSerializer, UrlTree, RouterLink, RouteReuseStrategy, ActivatedRouteSnapshot, DetachedRouteHandle } from '@angular/router';
6
- import { Subject, Subscription } from 'rxjs';
7
- import { ControlValueAccessor } from '@angular/forms';
8
- import { Components as Components$1 } from '@ionic/core';
9
-
10
- declare class DomController {
11
- /**
12
- * Schedules a task to run during the READ phase of the next frame.
13
- * This task should only read the DOM, but never modify it.
14
- */
15
- read(cb: RafCallback): void;
16
- /**
17
- * Schedules a task to run during the WRITE phase of the next frame.
18
- * This task should write the DOM, but never READ it.
19
- */
20
- write(cb: RafCallback): void;
21
- static ɵfac: i0.ɵɵFactoryDeclaration<DomController, never>;
22
- static ɵprov: i0.ɵɵInjectableDeclaration<DomController>;
23
- }
24
- type RafCallback = (timeStamp?: number) => void;
25
-
26
- declare class MenuController implements MenuControllerI {
27
- private menuController;
28
- constructor(menuController: MenuControllerI);
29
- /**
30
- * Programmatically open the Menu.
31
- * @param [menuId] Optionally get the menu by its id, or side.
32
- * @return returns a promise when the menu is fully opened
33
- */
34
- open(menuId?: string): Promise<boolean>;
35
- /**
36
- * Programmatically close the Menu. If no `menuId` is given as the first
37
- * argument then it'll close any menu which is open. If a `menuId`
38
- * is given then it'll close that exact menu.
39
- * @param [menuId] Optionally get the menu by its id, or side.
40
- * @return returns a promise when the menu is fully closed
41
- */
42
- close(menuId?: string): Promise<boolean>;
43
- /**
44
- * Toggle the menu. If it's closed, it will open, and if opened, it
45
- * will close.
46
- * @param [menuId] Optionally get the menu by its id, or side.
47
- * @return returns a promise when the menu has been toggled
48
- */
49
- toggle(menuId?: string): Promise<boolean>;
50
- /**
51
- * Used to enable or disable a menu. For example, there could be multiple
52
- * left menus, but only one of them should be able to be opened at the same
53
- * time. If there are multiple menus on the same side, then enabling one menu
54
- * will also automatically disable all the others that are on the same side.
55
- * @param [menuId] Optionally get the menu by its id, or side.
56
- * @return Returns the instance of the menu, which is useful for chaining.
57
- */
58
- enable(shouldEnable: boolean, menuId?: string): Promise<HTMLIonMenuElement | undefined>;
59
- /**
60
- * Used to enable or disable the ability to swipe open the menu.
61
- * @param shouldEnable True if it should be swipe-able, false if not.
62
- * @param [menuId] Optionally get the menu by its id, or side.
63
- * @return Returns the instance of the menu, which is useful for chaining.
64
- */
65
- swipeGesture(shouldEnable: boolean, menuId?: string): Promise<HTMLIonMenuElement | undefined>;
66
- /**
67
- * @param [menuId] Optionally get the menu by its id, or side.
68
- * @return Returns true if the specified menu is currently open, otherwise false.
69
- * If the menuId is not specified, it returns true if ANY menu is currenly open.
70
- */
71
- isOpen(menuId?: string): Promise<boolean>;
72
- /**
73
- * @param [menuId] Optionally get the menu by its id, or side.
74
- * @return Returns true if the menu is currently enabled, otherwise false.
75
- */
76
- isEnabled(menuId?: string): Promise<boolean>;
77
- /**
78
- * Used to get a menu instance. If a `menuId` is not provided then it'll
79
- * return the first menu found. If a `menuId` is `left` or `right`, then
80
- * it'll return the enabled menu on that side. Otherwise, if a `menuId` is
81
- * provided, then it'll try to find the menu using the menu's `id`
82
- * property. If a menu is not found then it'll return `null`.
83
- * @param [menuId] Optionally get the menu by its id, or side.
84
- * @return Returns the instance of the menu if found, otherwise `null`.
85
- */
86
- get(menuId?: string): Promise<HTMLIonMenuElement | undefined>;
87
- /**
88
- * @return Returns the instance of the menu already opened, otherwise `null`.
89
- */
90
- getOpen(): Promise<HTMLIonMenuElement | undefined>;
91
- /**
92
- * @return Returns an array of all menu instances.
93
- */
94
- getMenus(): Promise<HTMLIonMenuElement[]>;
95
- registerAnimation(name: string, animation: AnimationBuilder): void;
96
- isAnimating(): Promise<boolean>;
97
- _getOpenSync(): HTMLIonMenuElement | undefined;
98
- _createAnimation(type: string, menuCmp: MenuI): Promise<Animation>;
99
- _register(menu: MenuI): void;
100
- _unregister(menu: MenuI): void;
101
- _setOpen(menu: MenuI, shouldOpen: boolean, animated: boolean): Promise<boolean>;
102
- }
103
-
104
- interface StackWillChangeEvent {
105
- enteringView: RouteView;
106
- /**
107
- * `true` if the event is trigged as a result of a switch
108
- * between tab navigation stacks.
109
- */
110
- tabSwitch: boolean;
111
- }
112
- interface StackDidChangeEvent {
113
- enteringView: RouteView;
114
- direction: RouterDirection;
115
- animation: NavDirection | undefined;
116
- /**
117
- * `true` if the event is trigged as a result of a switch
118
- * between tab navigation stacks.
119
- */
120
- tabSwitch: boolean;
121
- }
122
- interface RouteView {
123
- id: number;
124
- url: string;
125
- stackId: string | undefined;
126
- element: HTMLElement;
127
- ref: ComponentRef<any>;
128
- savedData?: any;
129
- savedExtras?: NavigationExtras;
130
- unlistenEvents: () => void;
131
- animationBuilder?: AnimationBuilder;
132
- }
133
-
134
- declare abstract class IonRouterOutlet implements OnDestroy, OnInit {
135
- readonly parentOutlet?: IonRouterOutlet | undefined;
136
- abstract outletContent: any;
137
- nativeEl: HTMLIonRouterOutletElement;
138
- activatedView: RouteView | null;
139
- tabsPrefix: string | undefined;
140
- private _swipeGesture?;
141
- private stackCtrl;
142
- private proxyMap;
143
- private currentActivatedRoute$;
144
- private activated;
145
- /** @internal */
146
- get activatedComponentRef(): ComponentRef<any> | null;
147
- private _activatedRoute;
148
- /**
149
- * The name of the outlet
150
- */
151
- name: string;
152
- /** @internal */
153
- stackWillChange: EventEmitter<StackWillChangeEvent>;
154
- /** @internal */
155
- stackDidChange: EventEmitter<StackDidChangeEvent>;
156
- activateEvents: EventEmitter<any>;
157
- deactivateEvents: EventEmitter<any>;
158
- private parentContexts;
159
- private location;
160
- private environmentInjector;
161
- private inputBinder;
162
- /** @nodoc */
163
- readonly supportsBindingToComponentInputs = true;
164
- private config;
165
- private navCtrl;
166
- set animation(animation: AnimationBuilder);
167
- set animated(animated: boolean);
168
- set swipeGesture(swipe: boolean);
169
- constructor(name: string, tabs: string, commonLocation: Location, elementRef: ElementRef, router: Router, zone: NgZone, activatedRoute: ActivatedRoute, parentOutlet?: IonRouterOutlet | undefined);
170
- ngOnDestroy(): void;
171
- getContext(): OutletContext | null;
172
- ngOnInit(): void;
173
- private initializeOutletWithName;
174
- get isActivated(): boolean;
175
- get component(): Record<string, unknown>;
176
- get activatedRoute(): ActivatedRoute;
177
- get activatedRouteData(): Data;
178
- /**
179
- * Called when the `RouteReuseStrategy` instructs to detach the subtree
180
- */
181
- detach(): ComponentRef<any>;
182
- /**
183
- * Called when the `RouteReuseStrategy` instructs to re-attach a previously detached subtree
184
- */
185
- attach(_ref: ComponentRef<any>, _activatedRoute: ActivatedRoute): void;
186
- deactivate(): void;
187
- activateWith(activatedRoute: ActivatedRoute, environmentInjector: EnvironmentInjector | null): void;
188
- /**
189
- * Returns `true` if there are pages in the stack to go back.
190
- */
191
- canGoBack(deep?: number, stackId?: string): boolean;
192
- /**
193
- * Resolves to `true` if it the outlet was able to sucessfully pop the last N pages.
194
- */
195
- pop(deep?: number, stackId?: string): Promise<boolean>;
196
- /**
197
- * Returns the URL of the active page of each stack.
198
- */
199
- getLastUrl(stackId?: string): string | undefined;
200
- /**
201
- * Returns the RouteView of the active page of each stack.
202
- * @internal
203
- */
204
- getLastRouteView(stackId?: string): RouteView | undefined;
205
- /**
206
- * Returns the root view in the tab stack.
207
- * @internal
208
- */
209
- getRootView(stackId?: string): RouteView | undefined;
210
- /**
211
- * Returns the active stack ID. In the context of ion-tabs, it means the active tab.
212
- */
213
- getActiveStackId(): string | undefined;
214
- /**
215
- * Since the activated route can change over the life time of a component in an ion router outlet, we create
216
- * a proxy so that we can update the values over time as a user navigates back to components already in the stack.
217
- */
218
- private createActivatedRouteProxy;
219
- /**
220
- * Create a wrapped observable that will switch to the latest activated route matched by the given component
221
- */
222
- private proxyObservable;
223
- /**
224
- * Updates the activated route proxy for the given component to the new incoming router state
225
- */
226
- private updateActivatedRouteProxy;
227
- static ɵfac: i0.ɵɵFactoryDeclaration<IonRouterOutlet, [{ attribute: "name"; }, { attribute: "tabs"; optional: true; }, null, null, null, null, null, { optional: true; skipSelf: true; }]>;
228
- static ɵdir: i0.ɵɵDirectiveDeclaration<IonRouterOutlet, "ion-router-outlet", ["outlet"], { "animated": { "alias": "animated"; "required": false; }; "animation": { "alias": "animation"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "swipeGesture": { "alias": "swipeGesture"; "required": false; }; "name": { "alias": "name"; "required": false; }; }, { "stackWillChange": "stackWillChange"; "stackDidChange": "stackDidChange"; "activateEvents": "activate"; "deactivateEvents": "deactivate"; }, never, never, true, never>;
229
- }
230
- declare const provideComponentInputBinding: () => Provider;
231
-
232
- interface BackButtonEmitter extends Subject<BackButtonEventDetail> {
233
- subscribeWithPriority(priority: number, callback: (processNextHandler: () => void) => Promise<any> | void): Subscription;
234
- }
235
- declare class Platform {
236
- private doc;
237
- private _readyPromise;
238
- private win;
239
- /**
240
- * @hidden
241
- */
242
- backButton: BackButtonEmitter;
243
- /**
244
- * The keyboardDidShow event emits when the
245
- * on-screen keyboard is presented.
246
- */
247
- keyboardDidShow: Subject<KeyboardEventDetail>;
248
- /**
249
- * The keyboardDidHide event emits when the
250
- * on-screen keyboard is hidden.
251
- */
252
- keyboardDidHide: Subject<void>;
253
- /**
254
- * The pause event emits when the native platform puts the application
255
- * into the background, typically when the user switches to a different
256
- * application. This event would emit when a Cordova app is put into
257
- * the background, however, it would not fire on a standard web browser.
258
- */
259
- pause: Subject<void>;
260
- /**
261
- * The resume event emits when the native platform pulls the application
262
- * out from the background. This event would emit when a Cordova app comes
263
- * out from the background, however, it would not fire on a standard web browser.
264
- */
265
- resume: Subject<void>;
266
- /**
267
- * The resize event emits when the browser window has changed dimensions. This
268
- * could be from a browser window being physically resized, or from a device
269
- * changing orientation.
270
- */
271
- resize: Subject<void>;
272
- constructor(doc: any, zone: NgZone);
273
- /**
274
- * @returns returns true/false based on platform.
275
- * @description
276
- * Depending on the platform the user is on, `is(platformName)` will
277
- * return `true` or `false`. Note that the same app can return `true`
278
- * for more than one platform name. For example, an app running from
279
- * an iPad would return `true` for the platform names: `mobile`,
280
- * `ios`, `ipad`, and `tablet`. Additionally, if the app was running
281
- * from Cordova then `cordova` would be true, and if it was running
282
- * from a web browser on the iPad then `mobileweb` would be `true`.
283
- *
284
- * ```
285
- * import { Platform } from 'ionic-angular';
286
- *
287
- * @Component({...})
288
- * export MyPage {
289
- * constructor(public platform: Platform) {
290
- * if (this.platform.is('ios')) {
291
- * // This will only print when on iOS
292
- * console.log('I am an iOS device!');
293
- * }
294
- * }
295
- * }
296
- * ```
297
- *
298
- * | Platform Name | Description |
299
- * |-----------------|------------------------------------|
300
- * | android | on a device running Android. |
301
- * | capacitor | on a device running Capacitor. |
302
- * | cordova | on a device running Cordova. |
303
- * | ios | on a device running iOS. |
304
- * | ipad | on an iPad device. |
305
- * | iphone | on an iPhone device. |
306
- * | phablet | on a phablet device. |
307
- * | tablet | on a tablet device. |
308
- * | electron | in Electron on a desktop device. |
309
- * | pwa | as a PWA app. |
310
- * | mobile | on a mobile device. |
311
- * | mobileweb | on a mobile device in a browser. |
312
- * | desktop | on a desktop device. |
313
- * | hybrid | is a cordova or capacitor app. |
314
- *
315
- */
316
- is(platformName: Platforms): boolean;
317
- /**
318
- * @returns the array of platforms
319
- * @description
320
- * Depending on what device you are on, `platforms` can return multiple values.
321
- * Each possible value is a hierarchy of platforms. For example, on an iPhone,
322
- * it would return `mobile`, `ios`, and `iphone`.
323
- *
324
- * ```
325
- * import { Platform } from 'ionic-angular';
326
- *
327
- * @Component({...})
328
- * export MyPage {
329
- * constructor(public platform: Platform) {
330
- * // This will print an array of the current platforms
331
- * console.log(this.platform.platforms());
332
- * }
333
- * }
334
- * ```
335
- */
336
- platforms(): string[];
337
- /**
338
- * Returns a promise when the platform is ready and native functionality
339
- * can be called. If the app is running from within a web browser, then
340
- * the promise will resolve when the DOM is ready. When the app is running
341
- * from an application engine such as Cordova, then the promise will
342
- * resolve when Cordova triggers the `deviceready` event.
343
- *
344
- * The resolved value is the `readySource`, which states which platform
345
- * ready was used. For example, when Cordova is ready, the resolved ready
346
- * source is `cordova`. The default ready source value will be `dom`. The
347
- * `readySource` is useful if different logic should run depending on the
348
- * platform the app is running from. For example, only Cordova can execute
349
- * the status bar plugin, so the web should not run status bar plugin logic.
350
- *
351
- * ```
352
- * import { Component } from '@angular/core';
353
- * import { Platform } from 'ionic-angular';
354
- *
355
- * @Component({...})
356
- * export MyApp {
357
- * constructor(public platform: Platform) {
358
- * this.platform.ready().then((readySource) => {
359
- * console.log('Platform ready from', readySource);
360
- * // Platform now ready, execute any required native code
361
- * });
362
- * }
363
- * }
364
- * ```
365
- */
366
- ready(): Promise<string>;
367
- /**
368
- * Returns if this app is using right-to-left language direction or not.
369
- * We recommend the app's `index.html` file already has the correct `dir`
370
- * attribute value set, such as `<html dir="ltr">` or `<html dir="rtl">`.
371
- * [W3C: Structural markup and right-to-left text in HTML](http://www.w3.org/International/questions/qa-html-dir)
372
- */
373
- get isRTL(): boolean;
374
- /**
375
- * Get the query string parameter
376
- */
377
- getQueryParam(key: string): string | null;
378
- /**
379
- * Returns `true` if the app is in landscape mode.
380
- */
381
- isLandscape(): boolean;
382
- /**
383
- * Returns `true` if the app is in portrait mode.
384
- */
385
- isPortrait(): boolean;
386
- testUserAgent(expression: string): boolean;
387
- /**
388
- * Get the current url.
389
- */
390
- url(): string;
391
- /**
392
- * Gets the width of the platform's viewport using `window.innerWidth`.
393
- */
394
- width(): number;
395
- /**
396
- * Gets the height of the platform's viewport using `window.innerHeight`.
397
- */
398
- height(): number;
399
- static ɵfac: i0.ɵɵFactoryDeclaration<Platform, never>;
400
- static ɵprov: i0.ɵɵInjectableDeclaration<Platform>;
401
- }
402
-
403
- interface AnimationOptions {
404
- animated?: boolean;
405
- animation?: AnimationBuilder;
406
- animationDirection?: 'forward' | 'back';
407
- }
408
- interface NavigationOptions extends NavigationExtras, AnimationOptions {
409
- }
410
- declare class NavController {
411
- private location;
412
- private serializer;
413
- private router?;
414
- private topOutlet?;
415
- private direction;
416
- private animated?;
417
- private animationBuilder?;
418
- private guessDirection;
419
- private guessAnimation?;
420
- private lastNavId;
421
- constructor(platform: Platform, location: Location, serializer: UrlSerializer, router?: Router | undefined);
422
- /**
423
- * This method uses Angular's [Router](https://angular.io/api/router/Router) under the hood,
424
- * it's equivalent to calling `this.router.navigateByUrl()`, but it's explicit about the **direction** of the transition.
425
- *
426
- * Going **forward** means that a new page is going to be pushed to the stack of the outlet (ion-router-outlet),
427
- * and that it will show a "forward" animation by default.
428
- *
429
- * Navigating forward can also be triggered in a declarative manner by using the `[routerDirection]` directive:
430
- *
431
- * ```html
432
- * <a routerLink="/path/to/page" routerDirection="forward">Link</a>
433
- * ```
434
- */
435
- navigateForward(url: string | UrlTree | any[], options?: NavigationOptions): Promise<boolean>;
436
- /**
437
- * This method uses Angular's [Router](https://angular.io/api/router/Router) under the hood,
438
- * it's equivalent to calling:
439
- *
440
- * ```ts
441
- * this.navController.setDirection('back');
442
- * this.router.navigateByUrl(path);
443
- * ```
444
- *
445
- * Going **back** means that all the pages in the stack until the navigated page is found will be popped,
446
- * and that it will show a "back" animation by default.
447
- *
448
- * Navigating back can also be triggered in a declarative manner by using the `[routerDirection]` directive:
449
- *
450
- * ```html
451
- * <a routerLink="/path/to/page" routerDirection="back">Link</a>
452
- * ```
453
- */
454
- navigateBack(url: string | UrlTree | any[], options?: NavigationOptions): Promise<boolean>;
455
- /**
456
- * This method uses Angular's [Router](https://angular.io/api/router/Router) under the hood,
457
- * it's equivalent to calling:
458
- *
459
- * ```ts
460
- * this.navController.setDirection('root');
461
- * this.router.navigateByUrl(path);
462
- * ```
463
- *
464
- * Going **root** means that all existing pages in the stack will be removed,
465
- * and the navigated page will become the single page in the stack.
466
- *
467
- * Navigating root can also be triggered in a declarative manner by using the `[routerDirection]` directive:
468
- *
469
- * ```html
470
- * <a routerLink="/path/to/page" routerDirection="root">Link</a>
471
- * ```
472
- */
473
- navigateRoot(url: string | UrlTree | any[], options?: NavigationOptions): Promise<boolean>;
474
- /**
475
- * Same as [Location](https://angular.io/api/common/Location)'s back() method.
476
- * It will use the standard `window.history.back()` under the hood, but featuring a `back` animation
477
- * by default.
478
- */
479
- back(options?: AnimationOptions): void;
480
- /**
481
- * This methods goes back in the context of Ionic's stack navigation.
482
- *
483
- * It recursively finds the top active `ion-router-outlet` and calls `pop()`.
484
- * This is the recommended way to go back when you are using `ion-router-outlet`.
485
- *
486
- * Resolves to `true` if it was able to pop.
487
- */
488
- pop(): Promise<boolean>;
489
- /**
490
- * This methods specifies the direction of the next navigation performed by the Angular router.
491
- *
492
- * `setDirection()` does not trigger any transition, it just sets some flags to be consumed by `ion-router-outlet`.
493
- *
494
- * It's recommended to use `navigateForward()`, `navigateBack()` and `navigateRoot()` instead of `setDirection()`.
495
- */
496
- setDirection(direction: RouterDirection, animated?: boolean, animationDirection?: 'forward' | 'back', animationBuilder?: AnimationBuilder): void;
497
- /**
498
- * @internal
499
- */
500
- setTopOutlet(outlet: IonRouterOutlet): void;
501
- /**
502
- * @internal
503
- */
504
- consumeTransition(): {
505
- direction: RouterDirection;
506
- animation: NavDirection | undefined;
507
- animationBuilder: AnimationBuilder | undefined;
508
- };
509
- private navigate;
510
- static ɵfac: i0.ɵɵFactoryDeclaration<NavController, [null, null, null, { optional: true; }]>;
511
- static ɵprov: i0.ɵɵInjectableDeclaration<NavController>;
512
- }
513
-
514
- declare class Config {
515
- get(key: keyof IonicConfig, fallback?: any): any;
516
- getBoolean(key: keyof IonicConfig, fallback?: boolean): boolean;
517
- getNumber(key: keyof IonicConfig, fallback?: number): number;
518
- static ɵfac: i0.ɵɵFactoryDeclaration<Config, never>;
519
- static ɵprov: i0.ɵɵInjectableDeclaration<Config>;
520
- }
521
- declare const ConfigToken: InjectionToken<any>;
522
-
523
- declare const IonModalToken: InjectionToken<HTMLIonModalElement>;
524
- declare class AngularDelegate {
525
- private zone;
526
- private applicationRef;
527
- private config;
528
- create(environmentInjector: EnvironmentInjector, injector: Injector, elementReferenceKey?: string, customInjector?: Injector): AngularFrameworkDelegate;
529
- static ɵfac: i0.ɵɵFactoryDeclaration<AngularDelegate, never>;
530
- static ɵprov: i0.ɵɵInjectableDeclaration<AngularDelegate>;
531
- }
532
- declare class AngularFrameworkDelegate implements FrameworkDelegate {
533
- private environmentInjector;
534
- private injector;
535
- private applicationRef;
536
- private zone;
537
- private elementReferenceKey?;
538
- private enableSignalsSupport?;
539
- private customInjector?;
540
- private elRefMap;
541
- private elEventsMap;
542
- constructor(environmentInjector: EnvironmentInjector, injector: Injector, applicationRef: ApplicationRef, zone: NgZone, elementReferenceKey?: string | undefined, enableSignalsSupport?: boolean | undefined, customInjector?: Injector | undefined);
543
- attachViewToDom(container: any, component: any, params?: any, cssClasses?: string[]): Promise<any>;
544
- removeViewFromDom(_container: any, component: any): Promise<void>;
545
- }
546
-
547
- interface IonicGlobal {
548
- config?: any;
549
- asyncQueue?: boolean;
550
- }
551
- interface IonicWindow extends Window {
552
- Ionic: IonicGlobal;
553
- __zone_symbol__requestAnimationFrame?: (ts: FrameRequestCallback) => number;
554
- }
555
-
556
- /**
557
- * https://ionicframework.com/docs/api/router-outlet#life-cycle-hooks
558
- */
559
- interface ViewWillEnter {
560
- /**
561
- * Fired when the component routing to is about to animate into view.
562
- */
563
- ionViewWillEnter(): void;
564
- }
565
- interface ViewDidEnter {
566
- /**
567
- * Fired when the component routing to has finished animating.
568
- */
569
- ionViewDidEnter(): void;
570
- }
571
- interface ViewWillLeave {
572
- /**
573
- * Fired when the component routing from is about to animate.
574
- */
575
- ionViewWillLeave(): void;
576
- }
577
- interface ViewDidLeave {
578
- /**
579
- * Fired when the component routing to has finished animating.
580
- */
581
- ionViewDidLeave(): void;
582
- }
583
-
584
- /**
585
- * Modal options with Angular-specific injector support.
586
- * Extends @ionic/core ModalOptions with an optional injector property.
587
- */
588
- type ModalOptions<T extends ComponentRef$1 = ComponentRef$1> = ModalOptions$1<T> & {
589
- injector?: Injector;
590
- };
591
- /**
592
- * Popover options with Angular-specific injector support.
593
- * Extends @ionic/core PopoverOptions with an optional injector property.
594
- */
595
- type PopoverOptions<T extends ComponentRef$1 = ComponentRef$1> = PopoverOptions$1<T> & {
596
- injector?: Injector;
597
- };
598
-
599
- /**
600
- * @description
601
- * NavParams are an object that exists on a page and can contain data for that particular view.
602
- * Similar to how data was pass to a view in V1 with `$stateParams`, NavParams offer a much more flexible
603
- * option with a simple `get` method.
604
- *
605
- * @usage
606
- * ```ts
607
- * import { NavParams } from '@ionic/angular';
608
- *
609
- * export class MyClass{
610
- *
611
- * constructor(navParams: NavParams){
612
- * // userParams is an object we have in our nav-parameters
613
- * navParams.get('userParams');
614
- * }
615
- *
616
- * }
617
- * ```
618
- */
619
- declare class NavParams {
620
- data: {
621
- [key: string]: any;
622
- };
623
- constructor(data?: {
624
- [key: string]: any;
625
- });
626
- /**
627
- * Get the value of a nav-parameter for the current view
628
- *
629
- * ```ts
630
- * import { NavParams } from 'ionic-angular';
631
- *
632
- * export class MyClass{
633
- * constructor(public navParams: NavParams){
634
- * // userParams is an object we have in our nav-parameters
635
- * this.navParams.get('userParams');
636
- * }
637
- * }
638
- * ```
639
- *
640
- * @param param Which param you want to look up
641
- */
642
- get<T = any>(param: string): T;
643
- }
644
-
645
- declare interface IonModal extends Components.IonModal {
646
- /**
647
- * Emitted after the modal has presented.
648
- **/
649
- ionModalDidPresent: EventEmitter<CustomEvent>;
650
- /**
651
- * Emitted before the modal has presented.
652
- */
653
- ionModalWillPresent: EventEmitter<CustomEvent>;
654
- /**
655
- * Emitted before the modal has dismissed.
656
- */
657
- ionModalWillDismiss: EventEmitter<CustomEvent>;
658
- /**
659
- * Emitted after the modal has dismissed.
660
- */
661
- ionModalDidDismiss: EventEmitter<CustomEvent>;
662
- /**
663
- * Emitted after the modal breakpoint has changed.
664
- */
665
- ionBreakpointDidChange: EventEmitter<CustomEvent<ModalBreakpointChangeEventDetail>>;
666
- /**
667
- * Emitted when the sheet or card modal has started being dragged.
668
- */
669
- ionDragStart: EventEmitter<void>;
670
- /**
671
- * Emitted while the sheet or card modal is being dragged.
672
- */
673
- ionDragMove: EventEmitter<CustomEvent<ModalDragEventDetail>>;
674
- /**
675
- * Emitted when the sheet or card modal has finished being dragged.
676
- */
677
- ionDragEnd: EventEmitter<CustomEvent<ModalDragEventDetail>>;
678
- /**
679
- * Emitted after the modal has presented. Shorthand for ionModalDidPresent.
680
- */
681
- didPresent: EventEmitter<CustomEvent>;
682
- /**
683
- * Emitted before the modal has presented. Shorthand for ionModalWillPresent.
684
- */
685
- willPresent: EventEmitter<CustomEvent>;
686
- /**
687
- * Emitted before the modal has dismissed. Shorthand for ionModalWillDismiss.
688
- */
689
- willDismiss: EventEmitter<CustomEvent>;
690
- /**
691
- * Emitted after the modal has dismissed. Shorthand for ionModalDidDismiss.
692
- */
693
- didDismiss: EventEmitter<CustomEvent>;
694
- }
695
- declare class IonModal {
696
- protected z: NgZone;
697
- template: TemplateRef<any>;
698
- isCmpOpen: boolean;
699
- protected el: HTMLElement;
700
- constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone);
701
- static ɵfac: i0.ɵɵFactoryDeclaration<IonModal, never>;
702
- static ɵdir: i0.ɵɵDirectiveDeclaration<IonModal, "ion-modal", never, { "animated": { "alias": "animated"; "required": false; }; "keepContentsMounted": { "alias": "keepContentsMounted"; "required": false; }; "backdropBreakpoint": { "alias": "backdropBreakpoint"; "required": false; }; "backdropDismiss": { "alias": "backdropDismiss"; "required": false; }; "breakpoints": { "alias": "breakpoints"; "required": false; }; "canDismiss": { "alias": "canDismiss"; "required": false; }; "cssClass": { "alias": "cssClass"; "required": false; }; "enterAnimation": { "alias": "enterAnimation"; "required": false; }; "expandToScroll": { "alias": "expandToScroll"; "required": false; }; "event": { "alias": "event"; "required": false; }; "focusTrap": { "alias": "focusTrap"; "required": false; }; "handle": { "alias": "handle"; "required": false; }; "handleBehavior": { "alias": "handleBehavior"; "required": false; }; "initialBreakpoint": { "alias": "initialBreakpoint"; "required": false; }; "isOpen": { "alias": "isOpen"; "required": false; }; "keyboardClose": { "alias": "keyboardClose"; "required": false; }; "leaveAnimation": { "alias": "leaveAnimation"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "presentingElement": { "alias": "presentingElement"; "required": false; }; "showBackdrop": { "alias": "showBackdrop"; "required": false; }; "translucent": { "alias": "translucent"; "required": false; }; "trigger": { "alias": "trigger"; "required": false; }; }, {}, ["template"], never, true, never>;
703
- }
704
-
705
- declare interface IonPopover extends Components.IonPopover {
706
- /**
707
- * Emitted after the popover has presented.
708
- */
709
- ionPopoverDidPresent: EventEmitter<CustomEvent>;
710
- /**
711
- * Emitted before the popover has presented.
712
- */
713
- ionPopoverWillPresent: EventEmitter<CustomEvent>;
714
- /**
715
- * Emitted after the popover has dismissed.
716
- */
717
- ionPopoverWillDismiss: EventEmitter<CustomEvent>;
718
- /**
719
- * Emitted after the popover has dismissed.
720
- */
721
- ionPopoverDidDismiss: EventEmitter<CustomEvent>;
722
- /**
723
- * Emitted after the popover has presented. Shorthand for ionPopoverDidPresent.
724
- */
725
- didPresent: EventEmitter<CustomEvent>;
726
- /**
727
- * Emitted before the popover has presented. Shorthand for ionPopoverWillPresent.
728
- */
729
- willPresent: EventEmitter<CustomEvent>;
730
- /**
731
- * Emitted after the popover has presented. Shorthand for ionPopoverWillDismiss.
732
- */
733
- willDismiss: EventEmitter<CustomEvent>;
734
- /**
735
- * Emitted after the popover has dismissed. Shorthand for ionPopoverDidDismiss.
736
- */
737
- didDismiss: EventEmitter<CustomEvent>;
738
- }
739
- declare class IonPopover {
740
- protected z: NgZone;
741
- template: TemplateRef<any>;
742
- isCmpOpen: boolean;
743
- protected el: HTMLElement;
744
- constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone);
745
- static ɵfac: i0.ɵɵFactoryDeclaration<IonPopover, never>;
746
- static ɵdir: i0.ɵɵDirectiveDeclaration<IonPopover, "ion-popover", never, { "alignment": { "alias": "alignment"; "required": false; }; "animated": { "alias": "animated"; "required": false; }; "arrow": { "alias": "arrow"; "required": false; }; "keepContentsMounted": { "alias": "keepContentsMounted"; "required": false; }; "backdropDismiss": { "alias": "backdropDismiss"; "required": false; }; "cssClass": { "alias": "cssClass"; "required": false; }; "dismissOnSelect": { "alias": "dismissOnSelect"; "required": false; }; "enterAnimation": { "alias": "enterAnimation"; "required": false; }; "event": { "alias": "event"; "required": false; }; "focusTrap": { "alias": "focusTrap"; "required": false; }; "isOpen": { "alias": "isOpen"; "required": false; }; "keyboardClose": { "alias": "keyboardClose"; "required": false; }; "leaveAnimation": { "alias": "leaveAnimation"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "showBackdrop": { "alias": "showBackdrop"; "required": false; }; "translucent": { "alias": "translucent"; "required": false; }; "trigger": { "alias": "trigger"; "required": false; }; "triggerAction": { "alias": "triggerAction"; "required": false; }; "reference": { "alias": "reference"; "required": false; }; "size": { "alias": "size"; "required": false; }; "side": { "alias": "side"; "required": false; }; }, {}, ["template"], never, true, never>;
747
- }
748
-
749
- declare class ValueAccessor implements ControlValueAccessor, AfterViewInit, OnDestroy {
750
- protected injector: Injector;
751
- protected elementRef: ElementRef;
752
- private onChange;
753
- private onTouched;
754
- protected lastValue: any;
755
- private statusChanges?;
756
- constructor(injector: Injector, elementRef: ElementRef);
757
- writeValue(value: any): void;
758
- /**
759
- * Notifies the ControlValueAccessor of a change in the value of the control.
760
- *
761
- * This is called by each of the ValueAccessor directives when we want to update
762
- * the status and validity of the form control. For example with text components this
763
- * is called when the ionInput event is fired. For select components this is called
764
- * when the ionChange event is fired.
765
- *
766
- * This also updates the Ionic form status classes on the element.
767
- *
768
- * @param el The component element.
769
- * @param value The new value of the control.
770
- */
771
- handleValueChange(el: HTMLElement, value: any): void;
772
- _handleBlurEvent(el: any): void;
773
- registerOnChange(fn: (value: any) => void): void;
774
- registerOnTouched(fn: () => void): void;
775
- setDisabledState(isDisabled: boolean): void;
776
- ngOnDestroy(): void;
777
- ngAfterViewInit(): void;
778
- static ɵfac: i0.ɵɵFactoryDeclaration<ValueAccessor, never>;
779
- static ɵdir: i0.ɵɵDirectiveDeclaration<ValueAccessor, never, never, {}, {}, never, never, true, never>;
780
- }
781
- declare const setIonicClasses: (element: ElementRef) => void;
782
-
783
- declare interface IonBackButton extends Components$1.IonBackButton {
784
- }
785
- declare class IonBackButton {
786
- private routerOutlet;
787
- private navCtrl;
788
- private config;
789
- private r;
790
- protected z: NgZone;
791
- protected el: HTMLElement;
792
- constructor(routerOutlet: IonRouterOutlet, navCtrl: NavController, config: Config, r: ElementRef, z: NgZone, c: ChangeDetectorRef);
793
- /**
794
- * @internal
795
- */
796
- onClick(ev: Event): void;
797
- static ɵfac: i0.ɵɵFactoryDeclaration<IonBackButton, [{ optional: true; }, null, null, null, null, null]>;
798
- static ɵdir: i0.ɵɵDirectiveDeclaration<IonBackButton, never, never, { "color": { "alias": "color"; "required": false; }; "defaultHref": { "alias": "defaultHref"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "routerAnimation": { "alias": "routerAnimation"; "required": false; }; "text": { "alias": "text"; "required": false; }; "type": { "alias": "type"; "required": false; }; }, {}, never, never, true, never>;
799
- }
800
-
801
- declare interface IonNav extends Components$1.IonNav {
802
- /**
803
- * Event fired when the nav will change components
804
- */
805
- ionNavWillChange: EventEmitter<CustomEvent<void>>;
806
- /**
807
- * Event fired when the nav has changed components
808
- */
809
- ionNavDidChange: EventEmitter<CustomEvent<void>>;
810
- }
811
- declare class IonNav {
812
- protected z: NgZone;
813
- protected el: HTMLElement;
814
- constructor(ref: ElementRef, environmentInjector: EnvironmentInjector, injector: Injector, angularDelegate: AngularDelegate, z: NgZone, c: ChangeDetectorRef);
815
- static ɵfac: i0.ɵɵFactoryDeclaration<IonNav, never>;
816
- static ɵdir: i0.ɵɵDirectiveDeclaration<IonNav, never, never, { "animated": { "alias": "animated"; "required": false; }; "animation": { "alias": "animation"; "required": false; }; "root": { "alias": "root"; "required": false; }; "rootParams": { "alias": "rootParams"; "required": false; }; "swipeGesture": { "alias": "swipeGesture"; "required": false; }; }, {}, never, never, true, never>;
817
- }
818
-
819
- /**
820
- * Adds support for Ionic routing directions and animations to the base Angular router link directive.
821
- *
822
- * When the router link is clicked, the directive will assign the direction and
823
- * animation so that the routing integration will transition correctly.
824
- */
825
- declare class RouterLinkDelegateDirective implements OnInit, OnChanges {
826
- private locationStrategy;
827
- private navCtrl;
828
- private elementRef;
829
- private router;
830
- private routerLink?;
831
- routerDirection: RouterDirection;
832
- routerAnimation?: AnimationBuilder;
833
- constructor(locationStrategy: LocationStrategy, navCtrl: NavController, elementRef: ElementRef, router: Router, routerLink?: RouterLink | undefined);
834
- ngOnInit(): void;
835
- ngOnChanges(): void;
836
- /**
837
- * The `tabindex` is set to `0` by default on the host element when
838
- * the `routerLink` directive is used. This causes issues with Ionic
839
- * components that wrap an `a` or `button` element, such as `ion-item`.
840
- * See issue https://github.com/angular/angular/issues/28345
841
- *
842
- * This method removes the `tabindex` attribute from the host element
843
- * to allow the Ionic component to manage the focus state correctly.
844
- */
845
- private updateTabindex;
846
- private updateTargetUrlAndHref;
847
- /**
848
- * @internal
849
- */
850
- onClick(ev: UIEvent): void;
851
- static ɵfac: i0.ɵɵFactoryDeclaration<RouterLinkDelegateDirective, [null, null, null, null, { optional: true; }]>;
852
- static ɵdir: i0.ɵɵDirectiveDeclaration<RouterLinkDelegateDirective, ":not(a):not(area)[routerLink]", never, { "routerDirection": { "alias": "routerDirection"; "required": false; }; "routerAnimation": { "alias": "routerAnimation"; "required": false; }; }, {}, never, never, true, never>;
853
- }
854
- declare class RouterLinkWithHrefDelegateDirective implements OnInit, OnChanges {
855
- private locationStrategy;
856
- private navCtrl;
857
- private elementRef;
858
- private router;
859
- private routerLink?;
860
- routerDirection: RouterDirection;
861
- routerAnimation?: AnimationBuilder;
862
- constructor(locationStrategy: LocationStrategy, navCtrl: NavController, elementRef: ElementRef, router: Router, routerLink?: RouterLink | undefined);
863
- ngOnInit(): void;
864
- ngOnChanges(): void;
865
- private updateTargetUrlAndHref;
866
- /**
867
- * @internal
868
- */
869
- onClick(): void;
870
- static ɵfac: i0.ɵɵFactoryDeclaration<RouterLinkWithHrefDelegateDirective, [null, null, null, null, { optional: true; }]>;
871
- static ɵdir: i0.ɵɵDirectiveDeclaration<RouterLinkWithHrefDelegateDirective, "a[routerLink],area[routerLink]", never, { "routerDirection": { "alias": "routerDirection"; "required": false; }; "routerAnimation": { "alias": "routerAnimation"; "required": false; }; }, {}, never, never, true, never>;
872
- }
873
-
874
- declare abstract class IonTabs implements AfterViewInit, AfterContentInit, AfterContentChecked {
875
- private navCtrl;
876
- /**
877
- * Note: These must be redeclared on each child class since it needs
878
- * access to generated components such as IonRouterOutlet and IonTabBar.
879
- */
880
- abstract outlet: any;
881
- abstract tabBar: any;
882
- abstract tabBars: QueryList<any>;
883
- abstract tabs: QueryList<any>;
884
- tabsInner: ElementRef<HTMLDivElement>;
885
- /**
886
- * Emitted before the tab view is changed.
887
- */
888
- ionTabsWillChange: EventEmitter<{
889
- tab: string;
890
- }>;
891
- /**
892
- * Emitted after the tab view is changed.
893
- */
894
- ionTabsDidChange: EventEmitter<{
895
- tab: string;
896
- }>;
897
- private tabBarSlot;
898
- private hasTab;
899
- private selectedTab?;
900
- private leavingTab?;
901
- constructor(navCtrl: NavController);
902
- ngAfterViewInit(): void;
903
- ngAfterContentInit(): void;
904
- ngAfterContentChecked(): void;
905
- /**
906
- * @internal
907
- */
908
- onStackWillChange({ enteringView, tabSwitch }: StackWillChangeEvent): void;
909
- /**
910
- * @internal
911
- */
912
- onStackDidChange({ enteringView, tabSwitch }: StackDidChangeEvent): void;
913
- /**
914
- * Host listener for the `ionTabButtonClick` event. Angular 22 enabled stricter
915
- * host-binding type checking, which types `$event` as the DOM `Event`. That is
916
- * not assignable to `select`'s public `string | CustomEvent` parameter, so this
917
- * thin wrapper narrows the event before forwarding to keep `select`'s public
918
- * signature intact.
919
- */
920
- onTabButtonClick(ev: Event): Promise<boolean> | undefined;
921
- /**
922
- * When a tab button is clicked, there are several scenarios:
923
- * 1. If the selected tab is currently active (the tab button has been clicked
924
- * again), then it should go to the root view for that tab.
925
- *
926
- * a. Get the saved root view from the router outlet. If the saved root view
927
- * matches the tabRootUrl, set the route view to this view including the
928
- * navigation extras. Any `queryParams` or `fragment` declared on the tab
929
- * button's `href` are also forwarded.
930
- * b. If the saved root view from the router outlet does not match, navigate
931
- * to the tabRootUrl, forwarding any `queryParams`/`fragment` declared on
932
- * the tab button's `href`.
933
- *
934
- * 2. If the current tab tab is not currently selected, get the last route
935
- * view from the router outlet.
936
- *
937
- * a. If the last route view exists, navigate to that view including any
938
- * navigation extras.
939
- * b. If the last route view doesn't exist, then navigate to the default
940
- * tabRootUrl, forwarding any `queryParams`/`fragment` declared on the
941
- * tab button's `href`.
942
- */
943
- select(tabOrEvent: string | CustomEvent): Promise<boolean> | undefined;
944
- private setActiveTab;
945
- private tabSwitch;
946
- getSelected(): string | undefined;
947
- /**
948
- * Detects changes to the slot attribute of the tab bar.
949
- *
950
- * If the slot attribute has changed, then the tab bar
951
- * should be relocated to the new slot position.
952
- */
953
- private detectSlotChanges;
954
- /**
955
- * Relocates the tab bar to the new slot position.
956
- */
957
- private relocateTabBar;
958
- static ɵfac: i0.ɵɵFactoryDeclaration<IonTabs, never>;
959
- static ɵdir: i0.ɵɵDirectiveDeclaration<IonTabs, "ion-tabs", never, {}, { "ionTabsWillChange": "ionTabsWillChange"; "ionTabsDidChange": "ionTabsDidChange"; }, never, never, true, never>;
960
- }
961
-
962
- declare function ProxyCmp(opts: {
963
- defineCustomElementFn?: () => void;
964
- inputs?: any;
965
- methods?: any;
966
- }): (cls: any) => any;
967
-
968
- interface ControllerShape<Opts, HTMLElm> {
969
- create(options: Opts): Promise<HTMLElm>;
970
- dismiss(data?: any, role?: string, id?: string): Promise<boolean>;
971
- getTop(): Promise<HTMLElm | undefined>;
972
- }
973
- declare class OverlayBaseController<Opts, Overlay> implements ControllerShape<Opts, Overlay> {
974
- private ctrl;
975
- constructor(ctrl: ControllerShape<Opts, Overlay>);
976
- /**
977
- * Creates a new overlay
978
- */
979
- create(opts?: Opts): Promise<Overlay>;
980
- /**
981
- * When `id` is not provided, it dismisses the top overlay.
982
- */
983
- dismiss(data?: any, role?: string, id?: string): Promise<boolean>;
984
- /**
985
- * Returns the top overlay.
986
- */
987
- getTop(): Promise<Overlay | undefined>;
988
- }
989
-
990
- /**
991
- * Provides a way to customize when activated routes get reused.
992
- */
993
- declare class IonicRouteStrategy implements RouteReuseStrategy {
994
- /**
995
- * Whether the given route should detach for later reuse.
996
- */
997
- shouldDetach(_route: ActivatedRouteSnapshot): boolean;
998
- /**
999
- * Returns `false`, meaning the route (and its subtree) is never reattached
1000
- */
1001
- shouldAttach(_route: ActivatedRouteSnapshot): boolean;
1002
- /**
1003
- * A no-op; the route is never stored since this strategy never detaches routes for later re-use.
1004
- */
1005
- store(_route: ActivatedRouteSnapshot, _detachedTree: DetachedRouteHandle): void;
1006
- /**
1007
- * Returns `null` because this strategy does not store routes for later re-use.
1008
- */
1009
- retrieve(_route: ActivatedRouteSnapshot): DetachedRouteHandle | null;
1010
- /**
1011
- * Determines if a route should be reused.
1012
- * This strategy returns `true` when the future route config and
1013
- * current route config are identical and all route parameters are identical.
1014
- */
1015
- shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean;
1016
- }
1017
-
1018
- declare const raf: (h: any) => any;
1019
-
1020
- export { AngularDelegate, Config, ConfigToken, DomController, IonBackButton, IonModal, IonModalToken, IonNav, IonPopover, IonRouterOutlet, IonTabs, IonicRouteStrategy, MenuController, NavController, NavParams, OverlayBaseController, Platform, ProxyCmp, RouterLinkDelegateDirective, RouterLinkWithHrefDelegateDirective, ValueAccessor, provideComponentInputBinding, raf, setIonicClasses };
1021
- export type { IonicWindow, ModalOptions, PopoverOptions, ViewDidEnter, ViewDidLeave, ViewWillEnter, ViewWillLeave };