@ionic/angular 7.3.4-dev.11695654072.17597cce → 7.3.4-dev.11696436834.1e83c799

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 (216) hide show
  1. package/README.md +20 -0
  2. package/app-initialize.d.ts +1 -1
  3. package/common/directives/control-value-accessors/index.d.ts +1 -0
  4. package/{directives → common/directives}/control-value-accessors/value-accessor.d.ts +2 -2
  5. package/common/directives/navigation/back-button.d.ts +26 -0
  6. package/common/directives/navigation/nav.d.ts +13 -0
  7. package/common/directives/navigation/router-link-delegate.d.ts +50 -0
  8. package/common/directives/navigation/router-outlet.d.ts +103 -0
  9. package/{directives → common/directives}/navigation/stack-utils.d.ts +1 -1
  10. package/common/directives/navigation/tabs.d.ts +74 -0
  11. package/common/index.d.ts +28 -0
  12. package/common/overlays/modal.d.ts +50 -0
  13. package/common/overlays/popover.d.ts +46 -0
  14. package/{providers → common/providers}/action-sheet-controller.d.ts +2 -2
  15. package/{providers → common/providers}/alert-controller.d.ts +2 -2
  16. package/{providers → common/providers}/angular-delegate.d.ts +1 -1
  17. package/{providers → common/providers}/animation-controller.d.ts +1 -1
  18. package/{providers → common/providers}/config.d.ts +1 -1
  19. package/{providers → common/providers}/gesture-controller.d.ts +1 -1
  20. package/{providers → common/providers}/loading-controller.d.ts +2 -2
  21. package/{providers → common/providers}/modal-controller.d.ts +2 -2
  22. package/{providers → common/providers}/nav-controller.d.ts +2 -2
  23. package/{providers → common/providers}/picker-controller.d.ts +2 -2
  24. package/{providers → common/providers}/platform.d.ts +1 -1
  25. package/{providers → common/providers}/popover-controller.d.ts +2 -2
  26. package/{providers → common/providers}/toast-controller.d.ts +2 -2
  27. package/{types → common/types}/interfaces.d.ts +0 -4
  28. package/common/utils/proxy.d.ts +8 -0
  29. package/css/core.css +0 -100
  30. package/css/core.css.map +1 -1
  31. package/css/display.css +0 -33
  32. package/css/display.css.map +1 -1
  33. package/css/float-elements.css +0 -33
  34. package/css/float-elements.css.map +1 -1
  35. package/css/global.bundle.css +6 -84
  36. package/css/global.bundle.css.map +1 -1
  37. package/css/ionic-swiper.css +0 -33
  38. package/css/ionic-swiper.css.map +1 -1
  39. package/css/ionic.bundle.css +1 -1
  40. package/css/ionic.bundle.css.map +1 -1
  41. package/css/padding.css +0 -33
  42. package/css/padding.css.map +1 -1
  43. package/css/structure.css +0 -33
  44. package/css/structure.css.map +1 -1
  45. package/css/text-alignment.css +0 -33
  46. package/css/text-alignment.css.map +1 -1
  47. package/css/text-transformation.css +0 -33
  48. package/css/text-transformation.css.map +1 -1
  49. package/css/typography.css +6 -51
  50. package/css/typography.css.map +1 -1
  51. package/css/utils.bundle.css +0 -165
  52. package/css/utils.bundle.css.map +1 -1
  53. package/directives/control-value-accessors/boolean-value-accessor.d.ts +1 -1
  54. package/directives/control-value-accessors/numeric-value-accessor.d.ts +1 -1
  55. package/directives/control-value-accessors/radio-value-accessor.d.ts +1 -1
  56. package/directives/control-value-accessors/select-value-accessor.d.ts +1 -1
  57. package/directives/control-value-accessors/text-value-accessor.d.ts +1 -1
  58. package/directives/navigation/ion-back-button.d.ts +6 -16
  59. package/directives/navigation/ion-nav.d.ts +8 -0
  60. package/directives/navigation/ion-router-outlet.d.ts +4 -122
  61. package/directives/navigation/ion-tabs.d.ts +4 -64
  62. package/directives/navigation/router-link-delegate.d.ts +7 -41
  63. package/directives/overlays/modal.d.ts +3 -47
  64. package/directives/overlays/popover.d.ts +3 -43
  65. package/directives/proxies-list.d.ts +1 -1
  66. package/directives/proxies.d.ts +0 -26
  67. package/esm2020/app-initialize.mjs +2 -2
  68. package/esm2020/common/directives/control-value-accessors/index.mjs +2 -0
  69. package/esm2020/common/directives/control-value-accessors/value-accessor.mjs +141 -0
  70. package/esm2020/common/directives/navigation/back-button.mjs +59 -0
  71. package/esm2020/common/directives/navigation/nav-params.mjs +45 -0
  72. package/esm2020/common/directives/navigation/nav.mjs +47 -0
  73. package/esm2020/common/directives/navigation/router-link-delegate.mjs +111 -0
  74. package/esm2020/common/directives/navigation/router-outlet.mjs +461 -0
  75. package/esm2020/common/directives/navigation/stack-controller.mjs +275 -0
  76. package/esm2020/common/directives/navigation/stack-utils.mjs +73 -0
  77. package/esm2020/common/directives/navigation/tabs.mjs +172 -0
  78. package/esm2020/common/index.mjs +28 -0
  79. package/esm2020/common/ionic-angular-common.mjs +5 -0
  80. package/esm2020/common/overlays/modal.mjs +87 -0
  81. package/esm2020/common/overlays/popover.mjs +79 -0
  82. package/esm2020/common/providers/action-sheet-controller.mjs +18 -0
  83. package/esm2020/common/providers/alert-controller.mjs +18 -0
  84. package/esm2020/common/providers/angular-delegate.mjs +152 -0
  85. package/esm2020/common/providers/animation-controller.mjs +37 -0
  86. package/esm2020/common/providers/config.mjs +44 -0
  87. package/esm2020/common/providers/dom-controller.mjs +44 -0
  88. package/esm2020/common/providers/gesture-controller.mjs +31 -0
  89. package/esm2020/common/providers/loading-controller.mjs +18 -0
  90. package/esm2020/common/providers/menu-controller.mjs +100 -0
  91. package/esm2020/common/providers/modal-controller.mjs +25 -0
  92. package/esm2020/common/providers/nav-controller.mjs +221 -0
  93. package/esm2020/common/providers/picker-controller.mjs +18 -0
  94. package/esm2020/common/providers/platform.mjs +246 -0
  95. package/esm2020/common/providers/popover-controller.mjs +25 -0
  96. package/esm2020/common/providers/toast-controller.mjs +18 -0
  97. package/esm2020/common/types/interfaces.mjs +2 -0
  98. package/esm2020/common/utils/overlay.mjs +25 -0
  99. package/esm2020/common/utils/proxy.mjs +47 -0
  100. package/esm2020/common/utils/routing.mjs +55 -0
  101. package/esm2020/common/utils/util.mjs +10 -0
  102. package/esm2020/directives/control-value-accessors/boolean-value-accessor.mjs +4 -4
  103. package/esm2020/directives/control-value-accessors/numeric-value-accessor.mjs +2 -2
  104. package/esm2020/directives/control-value-accessors/radio-value-accessor.mjs +6 -3
  105. package/esm2020/directives/control-value-accessors/select-value-accessor.mjs +2 -2
  106. package/esm2020/directives/control-value-accessors/text-value-accessor.mjs +2 -2
  107. package/esm2020/directives/navigation/ion-back-button.mjs +15 -36
  108. package/esm2020/directives/navigation/ion-nav.mjs +21 -0
  109. package/esm2020/directives/navigation/ion-router-outlet.mjs +6 -435
  110. package/esm2020/directives/navigation/ion-tabs.mjs +9 -166
  111. package/esm2020/directives/navigation/router-link-delegate.mjs +11 -92
  112. package/esm2020/directives/overlays/modal.mjs +8 -88
  113. package/esm2020/directives/overlays/popover.mjs +8 -87
  114. package/esm2020/directives/proxies-list.mjs +1 -3
  115. package/esm2020/directives/proxies.mjs +1 -53
  116. package/esm2020/index.mjs +4 -21
  117. package/esm2020/ionic-module.mjs +14 -32
  118. package/esm2020/standalone/directives/angular-component-lib/utils.mjs +51 -0
  119. package/esm2020/standalone/directives/checkbox.mjs +73 -0
  120. package/esm2020/standalone/directives/datetime.mjs +90 -0
  121. package/esm2020/standalone/directives/icon.mjs +33 -0
  122. package/esm2020/standalone/directives/index.mjs +13 -0
  123. package/esm2020/standalone/directives/input.mjs +112 -0
  124. package/esm2020/standalone/directives/proxies.mjs +2268 -0
  125. package/esm2020/standalone/directives/radio-group.mjs +58 -0
  126. package/esm2020/standalone/directives/radio.mjs +62 -0
  127. package/esm2020/standalone/directives/range.mjs +77 -0
  128. package/esm2020/standalone/directives/searchbar.mjs +80 -0
  129. package/esm2020/standalone/directives/segment.mjs +58 -0
  130. package/esm2020/standalone/directives/select.mjs +81 -0
  131. package/esm2020/standalone/directives/textarea.mjs +90 -0
  132. package/esm2020/standalone/directives/toggle.mjs +73 -0
  133. package/esm2020/standalone/index.mjs +15 -0
  134. package/esm2020/standalone/ionic-angular-standalone.mjs +5 -0
  135. package/esm2020/standalone/navigation/back-button.mjs +32 -0
  136. package/esm2020/standalone/navigation/nav.mjs +28 -0
  137. package/esm2020/standalone/navigation/router-link-delegate.mjs +28 -0
  138. package/esm2020/standalone/navigation/router-outlet.mjs +23 -0
  139. package/esm2020/standalone/navigation/tabs.mjs +46 -0
  140. package/esm2020/standalone/overlays/modal.mjs +32 -0
  141. package/esm2020/standalone/overlays/popover.mjs +28 -0
  142. package/esm2020/standalone/providers/ionic-angular.mjs +41 -0
  143. package/fesm2015/ionic-angular-common.mjs +2620 -0
  144. package/fesm2015/ionic-angular-common.mjs.map +1 -0
  145. package/fesm2015/ionic-angular-standalone.mjs +3286 -0
  146. package/fesm2015/ionic-angular-standalone.mjs.map +1 -0
  147. package/fesm2015/ionic-angular.mjs +140 -2634
  148. package/fesm2015/ionic-angular.mjs.map +1 -1
  149. package/fesm2020/ionic-angular-common.mjs +2609 -0
  150. package/fesm2020/ionic-angular-common.mjs.map +1 -0
  151. package/fesm2020/ionic-angular-standalone.mjs +3284 -0
  152. package/fesm2020/ionic-angular-standalone.mjs.map +1 -0
  153. package/fesm2020/ionic-angular.mjs +139 -2624
  154. package/fesm2020/ionic-angular.mjs.map +1 -1
  155. package/index.d.ts +3 -19
  156. package/ionic-module.d.ts +2 -2
  157. package/package.json +18 -2
  158. package/standalone/directives/angular-component-lib/utils.d.ts +9 -0
  159. package/standalone/directives/checkbox.d.ts +30 -0
  160. package/standalone/directives/datetime.d.ts +30 -0
  161. package/standalone/directives/icon.d.ts +9 -0
  162. package/standalone/directives/index.d.ts +12 -0
  163. package/standalone/directives/input.d.ts +47 -0
  164. package/standalone/directives/proxies.d.ts +903 -0
  165. package/standalone/directives/radio-group.d.ts +18 -0
  166. package/standalone/directives/radio.d.ts +22 -0
  167. package/standalone/directives/range.d.ts +47 -0
  168. package/standalone/directives/searchbar.d.ts +45 -0
  169. package/standalone/directives/segment.d.ts +19 -0
  170. package/standalone/directives/select.d.ts +34 -0
  171. package/standalone/directives/textarea.d.ts +37 -0
  172. package/standalone/directives/toggle.d.ts +28 -0
  173. package/standalone/index.d.ts +12 -0
  174. package/standalone/navigation/back-button.d.ts +9 -0
  175. package/standalone/navigation/nav.d.ts +8 -0
  176. package/standalone/navigation/router-link-delegate.d.ts +10 -0
  177. package/standalone/navigation/router-outlet.d.ts +6 -0
  178. package/standalone/navigation/tabs.d.ts +12 -0
  179. package/standalone/overlays/modal.d.ts +6 -0
  180. package/standalone/overlays/popover.d.ts +6 -0
  181. package/standalone/providers/ionic-angular.d.ts +3 -0
  182. package/test/README.md +8 -0
  183. package/directives/navigation/nav-delegate.d.ts +0 -9
  184. package/esm2020/directives/control-value-accessors/value-accessor.mjs +0 -141
  185. package/esm2020/directives/navigation/nav-delegate.mjs +0 -42
  186. package/esm2020/directives/navigation/nav-params.mjs +0 -45
  187. package/esm2020/directives/navigation/stack-controller.mjs +0 -275
  188. package/esm2020/directives/navigation/stack-utils.mjs +0 -73
  189. package/esm2020/ionic-core.mjs +0 -6
  190. package/esm2020/providers/action-sheet-controller.mjs +0 -18
  191. package/esm2020/providers/alert-controller.mjs +0 -18
  192. package/esm2020/providers/angular-delegate.mjs +0 -152
  193. package/esm2020/providers/animation-controller.mjs +0 -37
  194. package/esm2020/providers/config.mjs +0 -44
  195. package/esm2020/providers/dom-controller.mjs +0 -44
  196. package/esm2020/providers/gesture-controller.mjs +0 -31
  197. package/esm2020/providers/loading-controller.mjs +0 -18
  198. package/esm2020/providers/menu-controller.mjs +0 -100
  199. package/esm2020/providers/modal-controller.mjs +0 -25
  200. package/esm2020/providers/nav-controller.mjs +0 -221
  201. package/esm2020/providers/picker-controller.mjs +0 -18
  202. package/esm2020/providers/platform.mjs +0 -246
  203. package/esm2020/providers/popover-controller.mjs +0 -25
  204. package/esm2020/providers/toast-controller.mjs +0 -18
  205. package/esm2020/types/interfaces.mjs +0 -2
  206. package/esm2020/util/ionic-router-reuse-strategy.mjs +0 -55
  207. package/esm2020/util/overlay.mjs +0 -25
  208. package/esm2020/util/util.mjs +0 -10
  209. package/ionic-core.d.ts +0 -2
  210. /package/{directives → common/directives}/navigation/nav-params.d.ts +0 -0
  211. /package/{directives → common/directives}/navigation/stack-controller.d.ts +0 -0
  212. /package/{providers → common/providers}/dom-controller.d.ts +0 -0
  213. /package/{providers → common/providers}/menu-controller.d.ts +0 -0
  214. /package/{util → common/utils}/overlay.d.ts +0 -0
  215. /package/{util/ionic-router-reuse-strategy.d.ts → common/utils/routing.d.ts} +0 -0
  216. /package/{util → common/utils}/util.d.ts +0 -0
package/README.md CHANGED
@@ -52,3 +52,23 @@ $ npx schematics @ionic/angular:ng-add
52
52
 
53
53
 
54
54
  You'll now be able to add ionic components to a vanilla Angular app setup.
55
+
56
+ ## Project Structure
57
+
58
+ **common**
59
+
60
+ This is where logic that is shared between lazy loaded and standalone components live. For example, the lazy loaded IonPopover and standalone IonPopover components extend from a base IonPopover implementation that exists in this directory.
61
+
62
+ **Note:** This directory exposes internal APIs and is only accessed in the `standalone` and `src` submodules. Ionic developers should never import directly from `@ionic/angular/common`. Instead, they should import from `@ionic/angular` or `@ionic/angular/standalone`.
63
+
64
+ **standalone**
65
+
66
+ This is where the standalone component implementations live. It was added as a separate entry point to avoid any lazy loaded logic from accidentally being pulled in to the final build. Having a separate directory allows the lazy loaded implementation to remain accessible from `@ionic/angular` for backwards compatibility.
67
+
68
+ Ionic developers can access this by importing from `@ionic/angular/standalone`.
69
+
70
+ **src**
71
+
72
+ This is where the lazy loaded component implementations live.
73
+
74
+ Ionic developers can access this by importing from `@ionic/angular`.
@@ -1,3 +1,3 @@
1
1
  import { NgZone } from '@angular/core';
2
- import { Config } from './providers/config';
2
+ import type { Config } from '@ionic/angular/common';
3
3
  export declare const appInitialize: (config: Config, doc: Document, zone: NgZone) => () => any;
@@ -0,0 +1 @@
1
+ export * from './value-accessor';
@@ -3,12 +3,12 @@ import { ControlValueAccessor } from '@angular/forms';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class ValueAccessor implements ControlValueAccessor, AfterViewInit, OnDestroy {
5
5
  protected injector: Injector;
6
- protected el: ElementRef;
6
+ protected elementRef: ElementRef;
7
7
  private onChange;
8
8
  private onTouched;
9
9
  protected lastValue: any;
10
10
  private statusChanges?;
11
- constructor(injector: Injector, el: ElementRef);
11
+ constructor(injector: Injector, elementRef: ElementRef);
12
12
  writeValue(value: any): void;
13
13
  /**
14
14
  * Notifies the ControlValueAccessor of a change in the value of the control.
@@ -0,0 +1,26 @@
1
+ import { ElementRef, NgZone, ChangeDetectorRef } from '@angular/core';
2
+ import type { Components } from '@ionic/core';
3
+ import type { AnimationBuilder } from '@ionic/core/components';
4
+ import { Config } from '../../providers/config';
5
+ import { NavController } from '../../providers/nav-controller';
6
+ import { IonRouterOutlet } from './router-outlet';
7
+ import * as i0 from "@angular/core";
8
+ export declare interface IonBackButton extends Components.IonBackButton {
9
+ }
10
+ export declare class IonBackButton {
11
+ private routerOutlet;
12
+ private navCtrl;
13
+ private config;
14
+ private r;
15
+ protected z: NgZone;
16
+ defaultHref: string | undefined;
17
+ routerAnimation: AnimationBuilder | undefined;
18
+ protected el: HTMLElement;
19
+ constructor(routerOutlet: IonRouterOutlet, navCtrl: NavController, config: Config, r: ElementRef, z: NgZone, c: ChangeDetectorRef);
20
+ /**
21
+ * @internal
22
+ */
23
+ onClick(ev: Event): void;
24
+ static ɵfac: i0.ɵɵFactoryDeclaration<IonBackButton, [{ optional: true; }, null, null, null, null, null]>;
25
+ static ɵdir: i0.ɵɵDirectiveDeclaration<IonBackButton, never, never, { "color": "color"; "defaultHref": "defaultHref"; "disabled": "disabled"; "icon": "icon"; "mode": "mode"; "routerAnimation": "routerAnimation"; "text": "text"; "type": "type"; }, {}, never, never, false>;
26
+ }
@@ -0,0 +1,13 @@
1
+ import { ElementRef, Injector, EnvironmentInjector, NgZone, ChangeDetectorRef } from '@angular/core';
2
+ import type { Components } from '@ionic/core';
3
+ import { AngularDelegate } from '../../providers/angular-delegate';
4
+ import * as i0 from "@angular/core";
5
+ export declare interface IonNav extends Components.IonNav {
6
+ }
7
+ export declare class IonNav {
8
+ protected z: NgZone;
9
+ protected el: HTMLElement;
10
+ constructor(ref: ElementRef, environmentInjector: EnvironmentInjector, injector: Injector, angularDelegate: AngularDelegate, z: NgZone, c: ChangeDetectorRef);
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<IonNav, never>;
12
+ static ɵdir: i0.ɵɵDirectiveDeclaration<IonNav, never, never, { "animated": "animated"; "animation": "animation"; "root": "root"; "rootParams": "rootParams"; "swipeGesture": "swipeGesture"; }, {}, never, never, false>;
13
+ }
@@ -0,0 +1,50 @@
1
+ import { LocationStrategy } from '@angular/common';
2
+ import { ElementRef, OnChanges, OnInit } from '@angular/core';
3
+ import { Router, RouterLink } from '@angular/router';
4
+ import type { AnimationBuilder, RouterDirection } from '@ionic/core/components';
5
+ import { NavController } from '../../providers/nav-controller';
6
+ import * as i0 from "@angular/core";
7
+ /**
8
+ * Adds support for Ionic routing directions and animations to the base Angular router link directive.
9
+ *
10
+ * When the router link is clicked, the directive will assign the direction and
11
+ * animation so that the routing integration will transition correctly.
12
+ */
13
+ export declare class RouterLinkDelegateDirective implements OnInit, OnChanges {
14
+ private locationStrategy;
15
+ private navCtrl;
16
+ private elementRef;
17
+ private router;
18
+ private routerLink?;
19
+ routerDirection: RouterDirection;
20
+ routerAnimation?: AnimationBuilder;
21
+ constructor(locationStrategy: LocationStrategy, navCtrl: NavController, elementRef: ElementRef, router: Router, routerLink?: RouterLink | undefined);
22
+ ngOnInit(): void;
23
+ ngOnChanges(): void;
24
+ private updateTargetUrlAndHref;
25
+ /**
26
+ * @internal
27
+ */
28
+ onClick(ev: UIEvent): void;
29
+ static ɵfac: i0.ɵɵFactoryDeclaration<RouterLinkDelegateDirective, [null, null, null, null, { optional: true; }]>;
30
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RouterLinkDelegateDirective, ":not(a):not(area)[routerLink]", never, { "routerDirection": "routerDirection"; "routerAnimation": "routerAnimation"; }, {}, never, never, false>;
31
+ }
32
+ export declare class RouterLinkWithHrefDelegateDirective implements OnInit, OnChanges {
33
+ private locationStrategy;
34
+ private navCtrl;
35
+ private elementRef;
36
+ private router;
37
+ private routerLink?;
38
+ routerDirection: RouterDirection;
39
+ routerAnimation?: AnimationBuilder;
40
+ constructor(locationStrategy: LocationStrategy, navCtrl: NavController, elementRef: ElementRef, router: Router, routerLink?: RouterLink | undefined);
41
+ ngOnInit(): void;
42
+ ngOnChanges(): void;
43
+ private updateTargetUrlAndHref;
44
+ /**
45
+ * @internal
46
+ */
47
+ onClick(): void;
48
+ static ɵfac: i0.ɵɵFactoryDeclaration<RouterLinkWithHrefDelegateDirective, [null, null, null, null, { optional: true; }]>;
49
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RouterLinkWithHrefDelegateDirective, "a[routerLink],area[routerLink]", never, { "routerDirection": "routerDirection"; "routerAnimation": "routerAnimation"; }, {}, never, never, false>;
50
+ }
@@ -0,0 +1,103 @@
1
+ import { Location } from '@angular/common';
2
+ import { ComponentRef, ElementRef, NgZone, OnDestroy, OnInit, EventEmitter, EnvironmentInjector } from '@angular/core';
3
+ import type { Provider } from '@angular/core';
4
+ import { OutletContext, Router, ActivatedRoute, Data } from '@angular/router';
5
+ import type { AnimationBuilder } from '@ionic/core/components';
6
+ import { RouteView, StackDidChangeEvent, StackWillChangeEvent } from './stack-utils';
7
+ import * as i0 from "@angular/core";
8
+ export declare class IonRouterOutlet implements OnDestroy, OnInit {
9
+ readonly parentOutlet?: IonRouterOutlet | undefined;
10
+ nativeEl: HTMLIonRouterOutletElement;
11
+ activatedView: RouteView | null;
12
+ tabsPrefix: string | undefined;
13
+ private _swipeGesture?;
14
+ private stackCtrl;
15
+ private proxyMap;
16
+ private currentActivatedRoute$;
17
+ private activated;
18
+ /** @internal */
19
+ get activatedComponentRef(): ComponentRef<any> | null;
20
+ private _activatedRoute;
21
+ /**
22
+ * The name of the outlet
23
+ */
24
+ name: string;
25
+ /** @internal */
26
+ stackWillChange: EventEmitter<StackWillChangeEvent>;
27
+ /** @internal */
28
+ stackDidChange: EventEmitter<StackDidChangeEvent>;
29
+ activateEvents: EventEmitter<any>;
30
+ deactivateEvents: EventEmitter<any>;
31
+ private parentContexts;
32
+ private location;
33
+ private environmentInjector;
34
+ private inputBinder;
35
+ /** @nodoc */
36
+ readonly supportsBindingToComponentInputs = true;
37
+ private config;
38
+ private navCtrl;
39
+ set animation(animation: AnimationBuilder);
40
+ set animated(animated: boolean);
41
+ set swipeGesture(swipe: boolean);
42
+ constructor(name: string, tabs: string, commonLocation: Location, elementRef: ElementRef, router: Router, zone: NgZone, activatedRoute: ActivatedRoute, parentOutlet?: IonRouterOutlet | undefined);
43
+ ngOnDestroy(): void;
44
+ getContext(): OutletContext | null;
45
+ ngOnInit(): void;
46
+ private initializeOutletWithName;
47
+ get isActivated(): boolean;
48
+ get component(): Record<string, unknown>;
49
+ get activatedRoute(): ActivatedRoute;
50
+ get activatedRouteData(): Data;
51
+ /**
52
+ * Called when the `RouteReuseStrategy` instructs to detach the subtree
53
+ */
54
+ detach(): ComponentRef<any>;
55
+ /**
56
+ * Called when the `RouteReuseStrategy` instructs to re-attach a previously detached subtree
57
+ */
58
+ attach(_ref: ComponentRef<any>, _activatedRoute: ActivatedRoute): void;
59
+ deactivate(): void;
60
+ activateWith(activatedRoute: ActivatedRoute, environmentInjector: EnvironmentInjector | null): void;
61
+ /**
62
+ * Returns `true` if there are pages in the stack to go back.
63
+ */
64
+ canGoBack(deep?: number, stackId?: string): boolean;
65
+ /**
66
+ * Resolves to `true` if it the outlet was able to sucessfully pop the last N pages.
67
+ */
68
+ pop(deep?: number, stackId?: string): Promise<boolean>;
69
+ /**
70
+ * Returns the URL of the active page of each stack.
71
+ */
72
+ getLastUrl(stackId?: string): string | undefined;
73
+ /**
74
+ * Returns the RouteView of the active page of each stack.
75
+ * @internal
76
+ */
77
+ getLastRouteView(stackId?: string): RouteView | undefined;
78
+ /**
79
+ * Returns the root view in the tab stack.
80
+ * @internal
81
+ */
82
+ getRootView(stackId?: string): RouteView | undefined;
83
+ /**
84
+ * Returns the active stack ID. In the context of ion-tabs, it means the active tab.
85
+ */
86
+ getActiveStackId(): string | undefined;
87
+ /**
88
+ * Since the activated route can change over the life time of a component in an ion router outlet, we create
89
+ * a proxy so that we can update the values over time as a user navigates back to components already in the stack.
90
+ */
91
+ private createActivatedRouteProxy;
92
+ /**
93
+ * Create a wrapped observable that will switch to the latest activated route matched by the given component
94
+ */
95
+ private proxyObservable;
96
+ /**
97
+ * Updates the activated route proxy for the given component to the new incoming router state
98
+ */
99
+ private updateActivatedRouteProxy;
100
+ static ɵfac: i0.ɵɵFactoryDeclaration<IonRouterOutlet, [{ attribute: "name"; }, { attribute: "tabs"; optional: true; }, null, null, null, null, null, { optional: true; skipSelf: true; }]>;
101
+ static ɵdir: i0.ɵɵDirectiveDeclaration<IonRouterOutlet, "ion-router-outlet", ["outlet"], { "animated": "animated"; "animation": "animation"; "mode": "mode"; "swipeGesture": "swipeGesture"; "name": "name"; }, { "stackWillChange": "stackWillChange"; "stackDidChange": "stackDidChange"; "activateEvents": "activate"; "deactivateEvents": "deactivate"; }, never, never, false>;
102
+ }
103
+ export declare const provideComponentInputBinding: () => Provider;
@@ -1,6 +1,6 @@
1
1
  import { ComponentRef } from '@angular/core';
2
2
  import { ActivatedRoute, NavigationExtras, Router } from '@angular/router';
3
- import { AnimationBuilder, NavDirection, RouterDirection } from '@ionic/core';
3
+ import type { AnimationBuilder, NavDirection, RouterDirection } from '@ionic/core/components';
4
4
  export declare const insertView: (views: RouteView[], view: RouteView, direction: RouterDirection) => RouteView[];
5
5
  export declare const getUrl: (router: Router, activatedRoute: ActivatedRoute) => string;
6
6
  export declare const isTabSwitch: (enteringView: RouteView, leavingView: RouteView | undefined) => boolean;
@@ -0,0 +1,74 @@
1
+ import { AfterContentChecked, AfterContentInit, ElementRef, EventEmitter } 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 class IonTabs implements 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
+ outlet: any;
12
+ tabBar: any;
13
+ tabBars: any;
14
+ tabsInner: ElementRef<HTMLDivElement>;
15
+ /**
16
+ * Emitted before the tab view is changed.
17
+ */
18
+ ionTabsWillChange: EventEmitter<{
19
+ tab: string;
20
+ }>;
21
+ /**
22
+ * Emitted after the tab view is changed.
23
+ */
24
+ ionTabsDidChange: EventEmitter<{
25
+ tab: string;
26
+ }>;
27
+ private tabBarSlot;
28
+ constructor(navCtrl: NavController);
29
+ ngAfterContentInit(): void;
30
+ ngAfterContentChecked(): void;
31
+ /**
32
+ * @internal
33
+ */
34
+ onStackWillChange({ enteringView, tabSwitch }: StackWillChangeEvent): void;
35
+ /**
36
+ * @internal
37
+ */
38
+ onStackDidChange({ enteringView, tabSwitch }: StackDidChangeEvent): void;
39
+ /**
40
+ * When a tab button is clicked, there are several scenarios:
41
+ * 1. If the selected tab is currently active (the tab button has been clicked
42
+ * again), then it should go to the root view for that tab.
43
+ *
44
+ * a. Get the saved root view from the router outlet. If the saved root view
45
+ * matches the tabRootUrl, set the route view to this view including the
46
+ * navigation extras.
47
+ * b. If the saved root view from the router outlet does
48
+ * not match, navigate to the tabRootUrl. No navigation extras are
49
+ * included.
50
+ *
51
+ * 2. If the current tab tab is not currently selected, get the last route
52
+ * view from the router outlet.
53
+ *
54
+ * a. If the last route view exists, navigate to that view including any
55
+ * navigation extras
56
+ * b. If the last route view doesn't exist, then navigate
57
+ * to the default tabRootUrl
58
+ */
59
+ select(tabOrEvent: string | CustomEvent): Promise<boolean> | undefined;
60
+ getSelected(): string | undefined;
61
+ /**
62
+ * Detects changes to the slot attribute of the tab bar.
63
+ *
64
+ * If the slot attribute has changed, then the tab bar
65
+ * should be relocated to the new slot position.
66
+ */
67
+ private detectSlotChanges;
68
+ /**
69
+ * Relocates the tab bar to the new slot position.
70
+ */
71
+ private relocateTabBar;
72
+ static ɵfac: i0.ɵɵFactoryDeclaration<IonTabs, never>;
73
+ static ɵdir: i0.ɵɵDirectiveDeclaration<IonTabs, "ion-tabs", never, {}, { "ionTabsWillChange": "ionTabsWillChange"; "ionTabsDidChange": "ionTabsDidChange"; }, never, never, false>;
74
+ }
@@ -0,0 +1,28 @@
1
+ export { ActionSheetController } from './providers/action-sheet-controller';
2
+ export { AlertController } from './providers/alert-controller';
3
+ export { LoadingController } from './providers/loading-controller';
4
+ export { MenuController } from './providers/menu-controller';
5
+ export { ModalController } from './providers/modal-controller';
6
+ export { PickerController } from './providers/picker-controller';
7
+ export { PopoverController } from './providers/popover-controller';
8
+ export { ToastController } from './providers/toast-controller';
9
+ export { AnimationController } from './providers/animation-controller';
10
+ export { GestureController } from './providers/gesture-controller';
11
+ export { DomController } from './providers/dom-controller';
12
+ export { NavController } from './providers/nav-controller';
13
+ export { Config, ConfigToken } from './providers/config';
14
+ export { Platform } from './providers/platform';
15
+ export { bindLifecycleEvents, AngularDelegate } from './providers/angular-delegate';
16
+ export type { IonicWindow } from './types/interfaces';
17
+ export { NavParams } from './directives/navigation/nav-params';
18
+ export { IonPopover } from './overlays/popover';
19
+ export { IonModal } from './overlays/modal';
20
+ export { IonRouterOutlet, provideComponentInputBinding } from './directives/navigation/router-outlet';
21
+ export { IonBackButton } from './directives/navigation/back-button';
22
+ export { RouterLinkDelegateDirective, RouterLinkWithHrefDelegateDirective, } from './directives/navigation/router-link-delegate';
23
+ export { IonNav } from './directives/navigation/nav';
24
+ export { IonTabs } from './directives/navigation/tabs';
25
+ export * from './directives/control-value-accessors';
26
+ export { ProxyCmp } from './utils/proxy';
27
+ export { IonicRouteStrategy } from './utils/routing';
28
+ export { raf } from './utils/util';
@@ -0,0 +1,50 @@
1
+ import { ChangeDetectorRef, ElementRef, EventEmitter, NgZone, TemplateRef } from '@angular/core';
2
+ import type { Components, ModalBreakpointChangeEventDetail } from '@ionic/core/components';
3
+ import * as i0 from "@angular/core";
4
+ export declare interface IonModal extends Components.IonModal {
5
+ /**
6
+ * Emitted after the modal has presented.
7
+ **/
8
+ ionModalDidPresent: EventEmitter<CustomEvent>;
9
+ /**
10
+ * Emitted before the modal has presented.
11
+ */
12
+ ionModalWillPresent: EventEmitter<CustomEvent>;
13
+ /**
14
+ * Emitted before the modal has dismissed.
15
+ */
16
+ ionModalWillDismiss: EventEmitter<CustomEvent>;
17
+ /**
18
+ * Emitted after the modal has dismissed.
19
+ */
20
+ ionModalDidDismiss: EventEmitter<CustomEvent>;
21
+ /**
22
+ * Emitted after the modal breakpoint has changed.
23
+ */
24
+ ionBreakpointDidChange: EventEmitter<CustomEvent<ModalBreakpointChangeEventDetail>>;
25
+ /**
26
+ * Emitted after the modal has presented. Shorthand for ionModalDidPresent.
27
+ */
28
+ didPresent: EventEmitter<CustomEvent>;
29
+ /**
30
+ * Emitted before the modal has presented. Shorthand for ionModalWillPresent.
31
+ */
32
+ willPresent: EventEmitter<CustomEvent>;
33
+ /**
34
+ * Emitted before the modal has dismissed. Shorthand for ionModalWillDismiss.
35
+ */
36
+ willDismiss: EventEmitter<CustomEvent>;
37
+ /**
38
+ * Emitted after the modal has dismissed. Shorthand for ionModalDidDismiss.
39
+ */
40
+ didDismiss: EventEmitter<CustomEvent>;
41
+ }
42
+ export declare class IonModal {
43
+ protected z: NgZone;
44
+ template: TemplateRef<any>;
45
+ isCmpOpen: boolean;
46
+ protected el: HTMLElement;
47
+ constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone);
48
+ static ɵfac: i0.ɵɵFactoryDeclaration<IonModal, never>;
49
+ static ɵdir: i0.ɵɵDirectiveDeclaration<IonModal, "ion-modal", never, { "animated": "animated"; "keepContentsMounted": "keepContentsMounted"; "backdropBreakpoint": "backdropBreakpoint"; "backdropDismiss": "backdropDismiss"; "breakpoints": "breakpoints"; "canDismiss": "canDismiss"; "cssClass": "cssClass"; "enterAnimation": "enterAnimation"; "event": "event"; "handle": "handle"; "handleBehavior": "handleBehavior"; "initialBreakpoint": "initialBreakpoint"; "isOpen": "isOpen"; "keyboardClose": "keyboardClose"; "leaveAnimation": "leaveAnimation"; "mode": "mode"; "presentingElement": "presentingElement"; "showBackdrop": "showBackdrop"; "translucent": "translucent"; "trigger": "trigger"; }, {}, ["template"], never, false>;
50
+ }
@@ -0,0 +1,46 @@
1
+ import { ChangeDetectorRef, ElementRef, EventEmitter, NgZone, TemplateRef } from '@angular/core';
2
+ import type { Components } from '@ionic/core/components';
3
+ import * as i0 from "@angular/core";
4
+ export declare interface IonPopover extends Components.IonPopover {
5
+ /**
6
+ * Emitted after the popover has presented.
7
+ */
8
+ ionPopoverDidPresent: EventEmitter<CustomEvent>;
9
+ /**
10
+ * Emitted before the popover has presented.
11
+ */
12
+ ionPopoverWillPresent: EventEmitter<CustomEvent>;
13
+ /**
14
+ * Emitted after the popover has dismissed.
15
+ */
16
+ ionPopoverWillDismiss: EventEmitter<CustomEvent>;
17
+ /**
18
+ * Emitted after the popover has dismissed.
19
+ */
20
+ ionPopoverDidDismiss: EventEmitter<CustomEvent>;
21
+ /**
22
+ * Emitted after the popover has presented. Shorthand for ionPopoverDidPresent.
23
+ */
24
+ didPresent: EventEmitter<CustomEvent>;
25
+ /**
26
+ * Emitted before the popover has presented. Shorthand for ionPopoverWillPresent.
27
+ */
28
+ willPresent: EventEmitter<CustomEvent>;
29
+ /**
30
+ * Emitted after the popover has presented. Shorthand for ionPopoverWillDismiss.
31
+ */
32
+ willDismiss: EventEmitter<CustomEvent>;
33
+ /**
34
+ * Emitted after the popover has dismissed. Shorthand for ionPopoverDidDismiss.
35
+ */
36
+ didDismiss: EventEmitter<CustomEvent>;
37
+ }
38
+ export declare class IonPopover {
39
+ protected z: NgZone;
40
+ template: TemplateRef<any>;
41
+ isCmpOpen: boolean;
42
+ protected el: HTMLElement;
43
+ constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone);
44
+ static ɵfac: i0.ɵɵFactoryDeclaration<IonPopover, never>;
45
+ static ɵdir: i0.ɵɵDirectiveDeclaration<IonPopover, "ion-popover", never, { "alignment": "alignment"; "animated": "animated"; "arrow": "arrow"; "keepContentsMounted": "keepContentsMounted"; "backdropDismiss": "backdropDismiss"; "cssClass": "cssClass"; "dismissOnSelect": "dismissOnSelect"; "enterAnimation": "enterAnimation"; "event": "event"; "isOpen": "isOpen"; "keyboardClose": "keyboardClose"; "leaveAnimation": "leaveAnimation"; "mode": "mode"; "showBackdrop": "showBackdrop"; "translucent": "translucent"; "trigger": "trigger"; "triggerAction": "triggerAction"; "reference": "reference"; "size": "size"; "side": "side"; }, {}, ["template"], never, false>;
46
+ }
@@ -1,5 +1,5 @@
1
- import { ActionSheetOptions } from '@ionic/core';
2
- import { OverlayBaseController } from '../util/overlay';
1
+ import type { ActionSheetOptions } from '@ionic/core/components';
2
+ import { OverlayBaseController } from '../utils/overlay';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class ActionSheetController extends OverlayBaseController<ActionSheetOptions, HTMLIonActionSheetElement> {
5
5
  constructor();
@@ -1,5 +1,5 @@
1
- import { AlertOptions } from '@ionic/core';
2
- import { OverlayBaseController } from '../util/overlay';
1
+ import type { AlertOptions } from '@ionic/core/components';
2
+ import { OverlayBaseController } from '../utils/overlay';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class AlertController extends OverlayBaseController<AlertOptions, HTMLIonAlertElement> {
5
5
  constructor();
@@ -1,5 +1,5 @@
1
1
  import { ApplicationRef, NgZone, Injector, EnvironmentInjector, ComponentRef } from '@angular/core';
2
- import { FrameworkDelegate } from '@ionic/core';
2
+ import { FrameworkDelegate } from '@ionic/core/components';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class AngularDelegate {
5
5
  private zone;
@@ -1,4 +1,4 @@
1
- import { Animation } from '@ionic/core';
1
+ import type { Animation } from '@ionic/core/components';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class AnimationController {
4
4
  /**
@@ -1,5 +1,5 @@
1
1
  import { InjectionToken } from '@angular/core';
2
- import { IonicConfig } from '@ionic/core';
2
+ import type { IonicConfig } from '@ionic/core/components';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class Config {
5
5
  get(key: keyof IonicConfig, fallback?: any): any;
@@ -1,5 +1,5 @@
1
1
  import { NgZone } from '@angular/core';
2
- import { Gesture, GestureConfig } from '@ionic/core';
2
+ import type { Gesture, GestureConfig } from '@ionic/core/components';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class GestureController {
5
5
  private zone;
@@ -1,5 +1,5 @@
1
- import { LoadingOptions } from '@ionic/core';
2
- import { OverlayBaseController } from '../util/overlay';
1
+ import type { LoadingOptions } from '@ionic/core/components';
2
+ import { OverlayBaseController } from '../utils/overlay';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class LoadingController extends OverlayBaseController<LoadingOptions, HTMLIonLoadingElement> {
5
5
  constructor();
@@ -1,5 +1,5 @@
1
- import { ModalOptions } from '@ionic/core';
2
- import { OverlayBaseController } from '../util/overlay';
1
+ import type { ModalOptions } from '@ionic/core/components';
2
+ import { OverlayBaseController } from '../utils/overlay';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class ModalController extends OverlayBaseController<ModalOptions, HTMLIonModalElement> {
5
5
  private angularDelegate;
@@ -1,7 +1,7 @@
1
1
  import { Location } from '@angular/common';
2
2
  import { NavigationExtras, Router, UrlSerializer, UrlTree } from '@angular/router';
3
- import { AnimationBuilder, NavDirection, RouterDirection } from '@ionic/core';
4
- import { IonRouterOutlet } from '../directives/navigation/ion-router-outlet';
3
+ import type { AnimationBuilder, NavDirection, RouterDirection } from '@ionic/core/components';
4
+ import { IonRouterOutlet } from '../directives/navigation/router-outlet';
5
5
  import { Platform } from './platform';
6
6
  import * as i0 from "@angular/core";
7
7
  export interface AnimationOptions {
@@ -1,5 +1,5 @@
1
- import { PickerOptions } from '@ionic/core';
2
- import { OverlayBaseController } from '../util/overlay';
1
+ import type { PickerOptions } from '@ionic/core/components';
2
+ import { OverlayBaseController } from '../utils/overlay';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class PickerController extends OverlayBaseController<PickerOptions, HTMLIonPickerElement> {
5
5
  constructor();
@@ -1,5 +1,5 @@
1
1
  import { NgZone } from '@angular/core';
2
- import { BackButtonEventDetail, Platforms } from '@ionic/core';
2
+ import type { BackButtonEventDetail, Platforms } from '@ionic/core/components';
3
3
  import { Subscription, Subject } from 'rxjs';
4
4
  import * as i0 from "@angular/core";
5
5
  export interface BackButtonEmitter extends Subject<BackButtonEventDetail> {
@@ -1,5 +1,5 @@
1
- import { PopoverOptions } from '@ionic/core';
2
- import { OverlayBaseController } from '../util/overlay';
1
+ import type { PopoverOptions } from '@ionic/core/components';
2
+ import { OverlayBaseController } from '../utils/overlay';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class PopoverController extends OverlayBaseController<PopoverOptions, HTMLIonPopoverElement> {
5
5
  private angularDelegate;
@@ -1,5 +1,5 @@
1
- import { ToastOptions } from '@ionic/core';
2
- import { OverlayBaseController } from '../util/overlay';
1
+ import type { ToastOptions } from '@ionic/core/components';
2
+ import { OverlayBaseController } from '../utils/overlay';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class ToastController extends OverlayBaseController<ToastOptions, HTMLIonToastElement> {
5
5
  constructor();
@@ -6,7 +6,3 @@ export interface IonicWindow extends Window {
6
6
  Ionic: IonicGlobal;
7
7
  __zone_symbol__requestAnimationFrame?: (ts: FrameRequestCallback) => number;
8
8
  }
9
- export interface HTMLStencilElement extends HTMLElement {
10
- componentOnReady?(): Promise<this>;
11
- forceUpdate?(): void;
12
- }
@@ -0,0 +1,8 @@
1
+ export declare const proxyInputs: (Cmp: any, inputs: string[]) => void;
2
+ export declare const proxyMethods: (Cmp: any, methods: string[]) => void;
3
+ export declare const proxyOutputs: (instance: any, el: any, events: string[]) => void;
4
+ export declare function ProxyCmp(opts: {
5
+ defineCustomElementFn?: () => void;
6
+ inputs?: any;
7
+ methods?: any;
8
+ }): (cls: any) => any;