@ionic/react 8.8.11-nightly.20260617 → 8.8.12-dev.11781793379.156d3260

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 (56) hide show
  1. package/css/core.css +1 -1
  2. package/css/core.css.map +1 -1
  3. package/css/display.css +1 -1
  4. package/css/display.css.map +1 -1
  5. package/css/flex-utils.css +1 -1
  6. package/css/flex-utils.css.map +1 -1
  7. package/css/float-elements.css.map +1 -1
  8. package/css/global.bundle.css.map +1 -1
  9. package/css/ionic/bundle.ionic.css +1 -0
  10. package/css/ionic/bundle.ionic.css.map +1 -0
  11. package/css/ionic/core.ionic.css +1 -0
  12. package/css/ionic/core.ionic.css.map +1 -0
  13. package/css/ionic/global.bundle.ionic.css +1 -0
  14. package/css/ionic/global.bundle.ionic.css.map +1 -0
  15. package/css/ionic/ionic-swiper.ionic.css +1 -0
  16. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  17. package/css/ionic/link.ionic.css +1 -0
  18. package/css/ionic/link.ionic.css.map +1 -0
  19. package/css/ionic/structure.ionic.css +1 -0
  20. package/css/ionic/structure.ionic.css.map +1 -0
  21. package/css/ionic/typography.ionic.css +1 -0
  22. package/css/ionic/typography.ionic.css.map +1 -0
  23. package/css/ionic/utils.bundle.ionic.css +1 -0
  24. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  25. package/css/ionic-swiper.css +1 -1
  26. package/css/ionic-swiper.css.map +1 -1
  27. package/css/ionic.bundle.css +1 -1
  28. package/css/ionic.bundle.css.map +1 -1
  29. package/css/normalize.css.map +1 -1
  30. package/css/padding.css.map +1 -1
  31. package/css/palettes/dark.always.css.map +1 -1
  32. package/css/palettes/dark.class.css.map +1 -1
  33. package/css/palettes/dark.system.css.map +1 -1
  34. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  35. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  36. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  37. package/css/palettes/high-contrast.always.css.map +1 -1
  38. package/css/palettes/high-contrast.class.css.map +1 -1
  39. package/css/palettes/high-contrast.system.css.map +1 -1
  40. package/css/structure.css.map +1 -1
  41. package/css/text-alignment.css.map +1 -1
  42. package/css/text-transformation.css.map +1 -1
  43. package/css/typography.css.map +1 -1
  44. package/css/utils.bundle.css +1 -1
  45. package/css/utils.bundle.css.map +1 -1
  46. package/dist/index.js +206 -170
  47. package/dist/index.js.map +1 -1
  48. package/dist/types/components/IonRouterOutlet.d.ts +2 -2
  49. package/dist/types/components/__tests__/createInlineOverlayComponent.spec.d.ts +1 -0
  50. package/dist/types/components/createInlineOverlayComponent.d.ts +1 -1
  51. package/dist/types/components/createRoutingComponent.d.ts +1 -1
  52. package/dist/types/components/proxies.d.ts +3 -0
  53. package/dist/types/components/react-component-lib/createComponent.d.ts +1 -1
  54. package/dist/types/components/react-component-lib/utils/index.d.ts +1 -1
  55. package/dist/types/components/utils/index.d.ts +1 -1
  56. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -20,61 +20,64 @@ import { defineCustomElement as defineCustomElement$e } from '@ionic/core/compon
20
20
  import { defineCustomElement as defineCustomElement$f } from '@ionic/core/components/ion-content.js';
21
21
  import { defineCustomElement as defineCustomElement$g } from '@ionic/core/components/ion-datetime.js';
22
22
  import { defineCustomElement as defineCustomElement$h } from '@ionic/core/components/ion-datetime-button.js';
23
- import { defineCustomElement as defineCustomElement$i } from '@ionic/core/components/ion-fab.js';
24
- import { defineCustomElement as defineCustomElement$j } from '@ionic/core/components/ion-fab-list.js';
25
- import { defineCustomElement as defineCustomElement$k } from '@ionic/core/components/ion-footer.js';
26
- import { defineCustomElement as defineCustomElement$l } from '@ionic/core/components/ion-grid.js';
27
- import { defineCustomElement as defineCustomElement$m } from '@ionic/core/components/ion-header.js';
28
- import { defineCustomElement as defineCustomElement$n } from '@ionic/core/components/ion-img.js';
29
- import { defineCustomElement as defineCustomElement$o } from '@ionic/core/components/ion-infinite-scroll.js';
30
- import { defineCustomElement as defineCustomElement$p } from '@ionic/core/components/ion-infinite-scroll-content.js';
31
- import { defineCustomElement as defineCustomElement$q } from '@ionic/core/components/ion-input.js';
32
- import { defineCustomElement as defineCustomElement$r } from '@ionic/core/components/ion-input-otp.js';
33
- import { defineCustomElement as defineCustomElement$s } from '@ionic/core/components/ion-input-password-toggle.js';
34
- import { defineCustomElement as defineCustomElement$t } from '@ionic/core/components/ion-item-divider.js';
35
- import { defineCustomElement as defineCustomElement$u } from '@ionic/core/components/ion-item-group.js';
36
- import { defineCustomElement as defineCustomElement$v } from '@ionic/core/components/ion-item-options.js';
37
- import { defineCustomElement as defineCustomElement$w } from '@ionic/core/components/ion-item-sliding.js';
38
- import { defineCustomElement as defineCustomElement$x } from '@ionic/core/components/ion-label.js';
39
- import { defineCustomElement as defineCustomElement$y } from '@ionic/core/components/ion-list.js';
40
- import { defineCustomElement as defineCustomElement$z } from '@ionic/core/components/ion-list-header.js';
41
- import { defineCustomElement as defineCustomElement$A } from '@ionic/core/components/ion-menu.js';
42
- import { defineCustomElement as defineCustomElement$B } from '@ionic/core/components/ion-menu-button.js';
43
- import { defineCustomElement as defineCustomElement$C } from '@ionic/core/components/ion-menu-toggle.js';
44
- import { defineCustomElement as defineCustomElement$1m } from '@ionic/core/components/ion-nav.js';
45
- import { defineCustomElement as defineCustomElement$D } from '@ionic/core/components/ion-nav-link.js';
46
- import { defineCustomElement as defineCustomElement$E } from '@ionic/core/components/ion-note.js';
47
- import { defineCustomElement as defineCustomElement$F } from '@ionic/core/components/ion-picker.js';
48
- import { defineCustomElement as defineCustomElement$G } from '@ionic/core/components/ion-picker-column.js';
49
- import { defineCustomElement as defineCustomElement$H } from '@ionic/core/components/ion-picker-column-option.js';
50
- import { defineCustomElement as defineCustomElement$I } from '@ionic/core/components/ion-progress-bar.js';
51
- import { defineCustomElement as defineCustomElement$J } from '@ionic/core/components/ion-radio.js';
52
- import { defineCustomElement as defineCustomElement$K } from '@ionic/core/components/ion-radio-group.js';
53
- import { defineCustomElement as defineCustomElement$L } from '@ionic/core/components/ion-range.js';
54
- import { defineCustomElement as defineCustomElement$M } from '@ionic/core/components/ion-refresher.js';
55
- import { defineCustomElement as defineCustomElement$N } from '@ionic/core/components/ion-refresher-content.js';
56
- import { defineCustomElement as defineCustomElement$O } from '@ionic/core/components/ion-reorder.js';
57
- import { defineCustomElement as defineCustomElement$P } from '@ionic/core/components/ion-reorder-group.js';
58
- import { defineCustomElement as defineCustomElement$Q } from '@ionic/core/components/ion-ripple-effect.js';
59
- import { defineCustomElement as defineCustomElement$R } from '@ionic/core/components/ion-row.js';
60
- import { defineCustomElement as defineCustomElement$S } from '@ionic/core/components/ion-searchbar.js';
61
- import { defineCustomElement as defineCustomElement$T } from '@ionic/core/components/ion-segment.js';
62
- import { defineCustomElement as defineCustomElement$U } from '@ionic/core/components/ion-segment-button.js';
63
- import { defineCustomElement as defineCustomElement$V } from '@ionic/core/components/ion-segment-content.js';
64
- import { defineCustomElement as defineCustomElement$W } from '@ionic/core/components/ion-segment-view.js';
65
- import { defineCustomElement as defineCustomElement$X } from '@ionic/core/components/ion-select.js';
66
- import { defineCustomElement as defineCustomElement$Y } from '@ionic/core/components/ion-select-modal.js';
67
- import { defineCustomElement as defineCustomElement$Z } from '@ionic/core/components/ion-select-option.js';
68
- import { defineCustomElement as defineCustomElement$_ } from '@ionic/core/components/ion-skeleton-text.js';
69
- import { defineCustomElement as defineCustomElement$$ } from '@ionic/core/components/ion-spinner.js';
70
- import { defineCustomElement as defineCustomElement$10 } from '@ionic/core/components/ion-split-pane.js';
71
- import { defineCustomElement as defineCustomElement$11 } from '@ionic/core/components/ion-tab.js';
72
- import { defineCustomElement as defineCustomElement$12 } from '@ionic/core/components/ion-text.js';
73
- import { defineCustomElement as defineCustomElement$13 } from '@ionic/core/components/ion-textarea.js';
74
- import { defineCustomElement as defineCustomElement$14 } from '@ionic/core/components/ion-thumbnail.js';
75
- import { defineCustomElement as defineCustomElement$15 } from '@ionic/core/components/ion-title.js';
76
- import { defineCustomElement as defineCustomElement$16 } from '@ionic/core/components/ion-toggle.js';
77
- import { defineCustomElement as defineCustomElement$17 } from '@ionic/core/components/ion-toolbar.js';
23
+ import { defineCustomElement as defineCustomElement$i } from '@ionic/core/components/ion-divider.js';
24
+ import { defineCustomElement as defineCustomElement$j } from '@ionic/core/components/ion-fab.js';
25
+ import { defineCustomElement as defineCustomElement$k } from '@ionic/core/components/ion-fab-list.js';
26
+ import { defineCustomElement as defineCustomElement$l } from '@ionic/core/components/ion-footer.js';
27
+ import { defineCustomElement as defineCustomElement$m } from '@ionic/core/components/ion-gallery.js';
28
+ import { defineCustomElement as defineCustomElement$n } from '@ionic/core/components/ion-gallery-item.js';
29
+ import { defineCustomElement as defineCustomElement$o } from '@ionic/core/components/ion-grid.js';
30
+ import { defineCustomElement as defineCustomElement$p } from '@ionic/core/components/ion-header.js';
31
+ import { defineCustomElement as defineCustomElement$q } from '@ionic/core/components/ion-img.js';
32
+ import { defineCustomElement as defineCustomElement$r } from '@ionic/core/components/ion-infinite-scroll.js';
33
+ import { defineCustomElement as defineCustomElement$s } from '@ionic/core/components/ion-infinite-scroll-content.js';
34
+ import { defineCustomElement as defineCustomElement$t } from '@ionic/core/components/ion-input.js';
35
+ import { defineCustomElement as defineCustomElement$u } from '@ionic/core/components/ion-input-otp.js';
36
+ import { defineCustomElement as defineCustomElement$v } from '@ionic/core/components/ion-input-password-toggle.js';
37
+ import { defineCustomElement as defineCustomElement$w } from '@ionic/core/components/ion-item-divider.js';
38
+ import { defineCustomElement as defineCustomElement$x } from '@ionic/core/components/ion-item-group.js';
39
+ import { defineCustomElement as defineCustomElement$y } from '@ionic/core/components/ion-item-options.js';
40
+ import { defineCustomElement as defineCustomElement$z } from '@ionic/core/components/ion-item-sliding.js';
41
+ import { defineCustomElement as defineCustomElement$A } from '@ionic/core/components/ion-label.js';
42
+ import { defineCustomElement as defineCustomElement$B } from '@ionic/core/components/ion-list.js';
43
+ import { defineCustomElement as defineCustomElement$C } from '@ionic/core/components/ion-list-header.js';
44
+ import { defineCustomElement as defineCustomElement$D } from '@ionic/core/components/ion-menu.js';
45
+ import { defineCustomElement as defineCustomElement$E } from '@ionic/core/components/ion-menu-button.js';
46
+ import { defineCustomElement as defineCustomElement$F } from '@ionic/core/components/ion-menu-toggle.js';
47
+ import { defineCustomElement as defineCustomElement$1p } from '@ionic/core/components/ion-nav.js';
48
+ import { defineCustomElement as defineCustomElement$G } from '@ionic/core/components/ion-nav-link.js';
49
+ import { defineCustomElement as defineCustomElement$H } from '@ionic/core/components/ion-note.js';
50
+ import { defineCustomElement as defineCustomElement$I } from '@ionic/core/components/ion-picker.js';
51
+ import { defineCustomElement as defineCustomElement$J } from '@ionic/core/components/ion-picker-column.js';
52
+ import { defineCustomElement as defineCustomElement$K } from '@ionic/core/components/ion-picker-column-option.js';
53
+ import { defineCustomElement as defineCustomElement$L } from '@ionic/core/components/ion-progress-bar.js';
54
+ import { defineCustomElement as defineCustomElement$M } from '@ionic/core/components/ion-radio.js';
55
+ import { defineCustomElement as defineCustomElement$N } from '@ionic/core/components/ion-radio-group.js';
56
+ import { defineCustomElement as defineCustomElement$O } from '@ionic/core/components/ion-range.js';
57
+ import { defineCustomElement as defineCustomElement$P } from '@ionic/core/components/ion-refresher.js';
58
+ import { defineCustomElement as defineCustomElement$Q } from '@ionic/core/components/ion-refresher-content.js';
59
+ import { defineCustomElement as defineCustomElement$R } from '@ionic/core/components/ion-reorder.js';
60
+ import { defineCustomElement as defineCustomElement$S } from '@ionic/core/components/ion-reorder-group.js';
61
+ import { defineCustomElement as defineCustomElement$T } from '@ionic/core/components/ion-ripple-effect.js';
62
+ import { defineCustomElement as defineCustomElement$U } from '@ionic/core/components/ion-row.js';
63
+ import { defineCustomElement as defineCustomElement$V } from '@ionic/core/components/ion-searchbar.js';
64
+ import { defineCustomElement as defineCustomElement$W } from '@ionic/core/components/ion-segment.js';
65
+ import { defineCustomElement as defineCustomElement$X } from '@ionic/core/components/ion-segment-button.js';
66
+ import { defineCustomElement as defineCustomElement$Y } from '@ionic/core/components/ion-segment-content.js';
67
+ import { defineCustomElement as defineCustomElement$Z } from '@ionic/core/components/ion-segment-view.js';
68
+ import { defineCustomElement as defineCustomElement$_ } from '@ionic/core/components/ion-select.js';
69
+ import { defineCustomElement as defineCustomElement$$ } from '@ionic/core/components/ion-select-modal.js';
70
+ import { defineCustomElement as defineCustomElement$10 } from '@ionic/core/components/ion-select-option.js';
71
+ import { defineCustomElement as defineCustomElement$11 } from '@ionic/core/components/ion-skeleton-text.js';
72
+ import { defineCustomElement as defineCustomElement$12 } from '@ionic/core/components/ion-spinner.js';
73
+ import { defineCustomElement as defineCustomElement$13 } from '@ionic/core/components/ion-split-pane.js';
74
+ import { defineCustomElement as defineCustomElement$14 } from '@ionic/core/components/ion-tab.js';
75
+ import { defineCustomElement as defineCustomElement$15 } from '@ionic/core/components/ion-text.js';
76
+ import { defineCustomElement as defineCustomElement$16 } from '@ionic/core/components/ion-textarea.js';
77
+ import { defineCustomElement as defineCustomElement$17 } from '@ionic/core/components/ion-thumbnail.js';
78
+ import { defineCustomElement as defineCustomElement$18 } from '@ionic/core/components/ion-title.js';
79
+ import { defineCustomElement as defineCustomElement$19 } from '@ionic/core/components/ion-toggle.js';
80
+ import { defineCustomElement as defineCustomElement$1a } from '@ionic/core/components/ion-toolbar.js';
78
81
  import { IonBreadcrumb as IonBreadcrumb$1 } from '@ionic/core/components/ion-breadcrumb.js';
79
82
  import { IonButton as IonButton$1 } from '@ionic/core/components/ion-button.js';
80
83
  import { IonCard as IonCard$1 } from '@ionic/core/components/ion-card.js';
@@ -82,20 +85,20 @@ import { IonFabButton as IonFabButton$1 } from '@ionic/core/components/ion-fab-b
82
85
  import { IonItemOption as IonItemOption$1 } from '@ionic/core/components/ion-item-option.js';
83
86
  import { IonItem as IonItem$1 } from '@ionic/core/components/ion-item.js';
84
87
  import { IonRouterLink as IonRouterLink$1 } from '@ionic/core/components/ion-router-link.js';
85
- import { defineCustomElement as defineCustomElement$18 } from '@ionic/core/components/ion-alert.js';
86
- import { defineCustomElement as defineCustomElement$19 } from '@ionic/core/components/ion-loading.js';
87
- import { defineCustomElement as defineCustomElement$1a } from '@ionic/core/components/ion-toast.js';
88
- import { defineCustomElement as defineCustomElement$1b } from '@ionic/core/components/ion-picker-legacy.js';
89
- import { defineCustomElement as defineCustomElement$1c } from '@ionic/core/components/ion-action-sheet.js';
90
- import { defineCustomElement as defineCustomElement$1d } from '@ionic/core/components/ion-modal.js';
91
- import { defineCustomElement as defineCustomElement$1e } from '@ionic/core/components/ion-popover.js';
92
- import { defineCustomElement as defineCustomElement$1k } from '@ionic/core/components/ion-app.js';
93
- import { defineCustomElement as defineCustomElement$1i } from '@ionic/core/components/ion-back-button.js';
94
- import { defineCustomElement as defineCustomElement$1j } from '@ionic/core/components/ion-router-outlet.js';
95
- import { defineCustomElement as defineCustomElement$1g } from '@ionic/core/components/ion-tab-bar.js';
96
- import { defineCustomElement as defineCustomElement$1f } from '@ionic/core/components/ion-tab-button.js';
97
- import { defineCustomElement as defineCustomElement$1h } from '@ionic/core/components/ion-tabs.js';
98
- import { defineCustomElement as defineCustomElement$1l } from 'ionicons/components/ion-icon.js';
88
+ import { defineCustomElement as defineCustomElement$1b } from '@ionic/core/components/ion-alert.js';
89
+ import { defineCustomElement as defineCustomElement$1c } from '@ionic/core/components/ion-loading.js';
90
+ import { defineCustomElement as defineCustomElement$1d } from '@ionic/core/components/ion-toast.js';
91
+ import { defineCustomElement as defineCustomElement$1e } from '@ionic/core/components/ion-picker-legacy.js';
92
+ import { defineCustomElement as defineCustomElement$1f } from '@ionic/core/components/ion-action-sheet.js';
93
+ import { defineCustomElement as defineCustomElement$1g } from '@ionic/core/components/ion-modal.js';
94
+ import { defineCustomElement as defineCustomElement$1h } from '@ionic/core/components/ion-popover.js';
95
+ import { defineCustomElement as defineCustomElement$1n } from '@ionic/core/components/ion-app.js';
96
+ import { defineCustomElement as defineCustomElement$1l } from '@ionic/core/components/ion-back-button.js';
97
+ import { defineCustomElement as defineCustomElement$1m } from '@ionic/core/components/ion-router-outlet.js';
98
+ import { defineCustomElement as defineCustomElement$1j } from '@ionic/core/components/ion-tab-bar.js';
99
+ import { defineCustomElement as defineCustomElement$1i } from '@ionic/core/components/ion-tab-button.js';
100
+ import { defineCustomElement as defineCustomElement$1k } from '@ionic/core/components/ion-tabs.js';
101
+ import { defineCustomElement as defineCustomElement$1o } from 'ionicons/components/ion-icon.js';
99
102
 
100
103
  const IonLifeCycleContext = /*@__PURE__*/ React.createContext({
101
104
  onIonViewWillEnter: () => {
@@ -549,6 +552,10 @@ const createForwardRef$1 = (ReactComponent, displayName) => {
549
552
  return jsx(ReactComponent, { ...props, forwardedRef: ref });
550
553
  };
551
554
  forwardRef.displayName = displayName;
555
+ // Cast the render function to the type React.forwardRef already infers for it.
556
+ // React 18's `forwardRef` wraps the props in `PropsWithoutRef`, and since
557
+ // `PropType` is unconstrained TypeScript can't prove the round-trip is safe.
558
+ // The cast keeps the inferred component type intact without widening to `any`.
552
559
  return React.forwardRef(forwardRef);
553
560
  };
554
561
  const defineCustomElement = (tagName, customElement) => {
@@ -643,60 +650,63 @@ const IonCol = /*@__PURE__*/ createReactComponent('ion-col', undefined, undefine
643
650
  const IonContent = /*@__PURE__*/ createReactComponent('ion-content', undefined, undefined, defineCustomElement$f);
644
651
  const IonDatetime = /*@__PURE__*/ createReactComponent('ion-datetime', undefined, undefined, defineCustomElement$g);
645
652
  const IonDatetimeButton = /*@__PURE__*/ createReactComponent('ion-datetime-button', undefined, undefined, defineCustomElement$h);
646
- const IonFab = /*@__PURE__*/ createReactComponent('ion-fab', undefined, undefined, defineCustomElement$i);
647
- const IonFabList = /*@__PURE__*/ createReactComponent('ion-fab-list', undefined, undefined, defineCustomElement$j);
648
- const IonFooter = /*@__PURE__*/ createReactComponent('ion-footer', undefined, undefined, defineCustomElement$k);
649
- const IonGrid = /*@__PURE__*/ createReactComponent('ion-grid', undefined, undefined, defineCustomElement$l);
650
- const IonHeader = /*@__PURE__*/ createReactComponent('ion-header', undefined, undefined, defineCustomElement$m);
651
- const IonImg = /*@__PURE__*/ createReactComponent('ion-img', undefined, undefined, defineCustomElement$n);
652
- const IonInfiniteScroll = /*@__PURE__*/ createReactComponent('ion-infinite-scroll', undefined, undefined, defineCustomElement$o);
653
- const IonInfiniteScrollContent = /*@__PURE__*/ createReactComponent('ion-infinite-scroll-content', undefined, undefined, defineCustomElement$p);
654
- const IonInput = /*@__PURE__*/ createReactComponent('ion-input', undefined, undefined, defineCustomElement$q);
655
- const IonInputOtp = /*@__PURE__*/ createReactComponent('ion-input-otp', undefined, undefined, defineCustomElement$r);
656
- const IonInputPasswordToggle = /*@__PURE__*/ createReactComponent('ion-input-password-toggle', undefined, undefined, defineCustomElement$s);
657
- const IonItemDivider = /*@__PURE__*/ createReactComponent('ion-item-divider', undefined, undefined, defineCustomElement$t);
658
- const IonItemGroup = /*@__PURE__*/ createReactComponent('ion-item-group', undefined, undefined, defineCustomElement$u);
659
- const IonItemOptions = /*@__PURE__*/ createReactComponent('ion-item-options', undefined, undefined, defineCustomElement$v);
660
- const IonItemSliding = /*@__PURE__*/ createReactComponent('ion-item-sliding', undefined, undefined, defineCustomElement$w);
661
- const IonLabel = /*@__PURE__*/ createReactComponent('ion-label', undefined, undefined, defineCustomElement$x);
662
- const IonList = /*@__PURE__*/ createReactComponent('ion-list', undefined, undefined, defineCustomElement$y);
663
- const IonListHeader = /*@__PURE__*/ createReactComponent('ion-list-header', undefined, undefined, defineCustomElement$z);
664
- const IonMenu = /*@__PURE__*/ createReactComponent('ion-menu', undefined, undefined, defineCustomElement$A);
665
- const IonMenuButton = /*@__PURE__*/ createReactComponent('ion-menu-button', undefined, undefined, defineCustomElement$B);
666
- const IonMenuToggle = /*@__PURE__*/ createReactComponent('ion-menu-toggle', undefined, undefined, defineCustomElement$C);
667
- const IonNavLink = /*@__PURE__*/ createReactComponent('ion-nav-link', undefined, undefined, defineCustomElement$D);
668
- const IonNote = /*@__PURE__*/ createReactComponent('ion-note', undefined, undefined, defineCustomElement$E);
669
- const IonPicker = /*@__PURE__*/ createReactComponent('ion-picker', undefined, undefined, defineCustomElement$F);
670
- const IonPickerColumn = /*@__PURE__*/ createReactComponent('ion-picker-column', undefined, undefined, defineCustomElement$G);
671
- const IonPickerColumnOption = /*@__PURE__*/ createReactComponent('ion-picker-column-option', undefined, undefined, defineCustomElement$H);
672
- const IonProgressBar = /*@__PURE__*/ createReactComponent('ion-progress-bar', undefined, undefined, defineCustomElement$I);
673
- const IonRadio = /*@__PURE__*/ createReactComponent('ion-radio', undefined, undefined, defineCustomElement$J);
674
- const IonRadioGroup = /*@__PURE__*/ createReactComponent('ion-radio-group', undefined, undefined, defineCustomElement$K);
675
- const IonRange = /*@__PURE__*/ createReactComponent('ion-range', undefined, undefined, defineCustomElement$L);
676
- const IonRefresher = /*@__PURE__*/ createReactComponent('ion-refresher', undefined, undefined, defineCustomElement$M);
677
- const IonRefresherContent = /*@__PURE__*/ createReactComponent('ion-refresher-content', undefined, undefined, defineCustomElement$N);
678
- const IonReorder = /*@__PURE__*/ createReactComponent('ion-reorder', undefined, undefined, defineCustomElement$O);
679
- const IonReorderGroup = /*@__PURE__*/ createReactComponent('ion-reorder-group', undefined, undefined, defineCustomElement$P);
680
- const IonRippleEffect = /*@__PURE__*/ createReactComponent('ion-ripple-effect', undefined, undefined, defineCustomElement$Q);
681
- const IonRow = /*@__PURE__*/ createReactComponent('ion-row', undefined, undefined, defineCustomElement$R);
682
- const IonSearchbar = /*@__PURE__*/ createReactComponent('ion-searchbar', undefined, undefined, defineCustomElement$S);
683
- const IonSegment = /*@__PURE__*/ createReactComponent('ion-segment', undefined, undefined, defineCustomElement$T);
684
- const IonSegmentButton = /*@__PURE__*/ createReactComponent('ion-segment-button', undefined, undefined, defineCustomElement$U);
685
- const IonSegmentContent = /*@__PURE__*/ createReactComponent('ion-segment-content', undefined, undefined, defineCustomElement$V);
686
- const IonSegmentView = /*@__PURE__*/ createReactComponent('ion-segment-view', undefined, undefined, defineCustomElement$W);
687
- const IonSelect = /*@__PURE__*/ createReactComponent('ion-select', undefined, undefined, defineCustomElement$X);
688
- const IonSelectModal = /*@__PURE__*/ createReactComponent('ion-select-modal', undefined, undefined, defineCustomElement$Y);
689
- const IonSelectOption = /*@__PURE__*/ createReactComponent('ion-select-option', undefined, undefined, defineCustomElement$Z);
690
- const IonSkeletonText = /*@__PURE__*/ createReactComponent('ion-skeleton-text', undefined, undefined, defineCustomElement$_);
691
- const IonSpinner = /*@__PURE__*/ createReactComponent('ion-spinner', undefined, undefined, defineCustomElement$$);
692
- const IonSplitPane = /*@__PURE__*/ createReactComponent('ion-split-pane', undefined, undefined, defineCustomElement$10);
693
- const IonTab = /*@__PURE__*/ createReactComponent('ion-tab', undefined, undefined, defineCustomElement$11);
694
- const IonText = /*@__PURE__*/ createReactComponent('ion-text', undefined, undefined, defineCustomElement$12);
695
- const IonTextarea = /*@__PURE__*/ createReactComponent('ion-textarea', undefined, undefined, defineCustomElement$13);
696
- const IonThumbnail = /*@__PURE__*/ createReactComponent('ion-thumbnail', undefined, undefined, defineCustomElement$14);
697
- const IonTitle = /*@__PURE__*/ createReactComponent('ion-title', undefined, undefined, defineCustomElement$15);
698
- const IonToggle = /*@__PURE__*/ createReactComponent('ion-toggle', undefined, undefined, defineCustomElement$16);
699
- const IonToolbar = /*@__PURE__*/ createReactComponent('ion-toolbar', undefined, undefined, defineCustomElement$17);
653
+ const IonDivider = /*@__PURE__*/ createReactComponent('ion-divider', undefined, undefined, defineCustomElement$i);
654
+ const IonFab = /*@__PURE__*/ createReactComponent('ion-fab', undefined, undefined, defineCustomElement$j);
655
+ const IonFabList = /*@__PURE__*/ createReactComponent('ion-fab-list', undefined, undefined, defineCustomElement$k);
656
+ const IonFooter = /*@__PURE__*/ createReactComponent('ion-footer', undefined, undefined, defineCustomElement$l);
657
+ const IonGallery = /*@__PURE__*/ createReactComponent('ion-gallery', undefined, undefined, defineCustomElement$m);
658
+ const IonGalleryItem = /*@__PURE__*/ createReactComponent('ion-gallery-item', undefined, undefined, defineCustomElement$n);
659
+ const IonGrid = /*@__PURE__*/ createReactComponent('ion-grid', undefined, undefined, defineCustomElement$o);
660
+ const IonHeader = /*@__PURE__*/ createReactComponent('ion-header', undefined, undefined, defineCustomElement$p);
661
+ const IonImg = /*@__PURE__*/ createReactComponent('ion-img', undefined, undefined, defineCustomElement$q);
662
+ const IonInfiniteScroll = /*@__PURE__*/ createReactComponent('ion-infinite-scroll', undefined, undefined, defineCustomElement$r);
663
+ const IonInfiniteScrollContent = /*@__PURE__*/ createReactComponent('ion-infinite-scroll-content', undefined, undefined, defineCustomElement$s);
664
+ const IonInput = /*@__PURE__*/ createReactComponent('ion-input', undefined, undefined, defineCustomElement$t);
665
+ const IonInputOtp = /*@__PURE__*/ createReactComponent('ion-input-otp', undefined, undefined, defineCustomElement$u);
666
+ const IonInputPasswordToggle = /*@__PURE__*/ createReactComponent('ion-input-password-toggle', undefined, undefined, defineCustomElement$v);
667
+ const IonItemDivider = /*@__PURE__*/ createReactComponent('ion-item-divider', undefined, undefined, defineCustomElement$w);
668
+ const IonItemGroup = /*@__PURE__*/ createReactComponent('ion-item-group', undefined, undefined, defineCustomElement$x);
669
+ const IonItemOptions = /*@__PURE__*/ createReactComponent('ion-item-options', undefined, undefined, defineCustomElement$y);
670
+ const IonItemSliding = /*@__PURE__*/ createReactComponent('ion-item-sliding', undefined, undefined, defineCustomElement$z);
671
+ const IonLabel = /*@__PURE__*/ createReactComponent('ion-label', undefined, undefined, defineCustomElement$A);
672
+ const IonList = /*@__PURE__*/ createReactComponent('ion-list', undefined, undefined, defineCustomElement$B);
673
+ const IonListHeader = /*@__PURE__*/ createReactComponent('ion-list-header', undefined, undefined, defineCustomElement$C);
674
+ const IonMenu = /*@__PURE__*/ createReactComponent('ion-menu', undefined, undefined, defineCustomElement$D);
675
+ const IonMenuButton = /*@__PURE__*/ createReactComponent('ion-menu-button', undefined, undefined, defineCustomElement$E);
676
+ const IonMenuToggle = /*@__PURE__*/ createReactComponent('ion-menu-toggle', undefined, undefined, defineCustomElement$F);
677
+ const IonNavLink = /*@__PURE__*/ createReactComponent('ion-nav-link', undefined, undefined, defineCustomElement$G);
678
+ const IonNote = /*@__PURE__*/ createReactComponent('ion-note', undefined, undefined, defineCustomElement$H);
679
+ const IonPicker = /*@__PURE__*/ createReactComponent('ion-picker', undefined, undefined, defineCustomElement$I);
680
+ const IonPickerColumn = /*@__PURE__*/ createReactComponent('ion-picker-column', undefined, undefined, defineCustomElement$J);
681
+ const IonPickerColumnOption = /*@__PURE__*/ createReactComponent('ion-picker-column-option', undefined, undefined, defineCustomElement$K);
682
+ const IonProgressBar = /*@__PURE__*/ createReactComponent('ion-progress-bar', undefined, undefined, defineCustomElement$L);
683
+ const IonRadio = /*@__PURE__*/ createReactComponent('ion-radio', undefined, undefined, defineCustomElement$M);
684
+ const IonRadioGroup = /*@__PURE__*/ createReactComponent('ion-radio-group', undefined, undefined, defineCustomElement$N);
685
+ const IonRange = /*@__PURE__*/ createReactComponent('ion-range', undefined, undefined, defineCustomElement$O);
686
+ const IonRefresher = /*@__PURE__*/ createReactComponent('ion-refresher', undefined, undefined, defineCustomElement$P);
687
+ const IonRefresherContent = /*@__PURE__*/ createReactComponent('ion-refresher-content', undefined, undefined, defineCustomElement$Q);
688
+ const IonReorder = /*@__PURE__*/ createReactComponent('ion-reorder', undefined, undefined, defineCustomElement$R);
689
+ const IonReorderGroup = /*@__PURE__*/ createReactComponent('ion-reorder-group', undefined, undefined, defineCustomElement$S);
690
+ const IonRippleEffect = /*@__PURE__*/ createReactComponent('ion-ripple-effect', undefined, undefined, defineCustomElement$T);
691
+ const IonRow = /*@__PURE__*/ createReactComponent('ion-row', undefined, undefined, defineCustomElement$U);
692
+ const IonSearchbar = /*@__PURE__*/ createReactComponent('ion-searchbar', undefined, undefined, defineCustomElement$V);
693
+ const IonSegment = /*@__PURE__*/ createReactComponent('ion-segment', undefined, undefined, defineCustomElement$W);
694
+ const IonSegmentButton = /*@__PURE__*/ createReactComponent('ion-segment-button', undefined, undefined, defineCustomElement$X);
695
+ const IonSegmentContent = /*@__PURE__*/ createReactComponent('ion-segment-content', undefined, undefined, defineCustomElement$Y);
696
+ const IonSegmentView = /*@__PURE__*/ createReactComponent('ion-segment-view', undefined, undefined, defineCustomElement$Z);
697
+ const IonSelect = /*@__PURE__*/ createReactComponent('ion-select', undefined, undefined, defineCustomElement$_);
698
+ const IonSelectModal = /*@__PURE__*/ createReactComponent('ion-select-modal', undefined, undefined, defineCustomElement$$);
699
+ const IonSelectOption = /*@__PURE__*/ createReactComponent('ion-select-option', undefined, undefined, defineCustomElement$10);
700
+ const IonSkeletonText = /*@__PURE__*/ createReactComponent('ion-skeleton-text', undefined, undefined, defineCustomElement$11);
701
+ const IonSpinner = /*@__PURE__*/ createReactComponent('ion-spinner', undefined, undefined, defineCustomElement$12);
702
+ const IonSplitPane = /*@__PURE__*/ createReactComponent('ion-split-pane', undefined, undefined, defineCustomElement$13);
703
+ const IonTab = /*@__PURE__*/ createReactComponent('ion-tab', undefined, undefined, defineCustomElement$14);
704
+ const IonText = /*@__PURE__*/ createReactComponent('ion-text', undefined, undefined, defineCustomElement$15);
705
+ const IonTextarea = /*@__PURE__*/ createReactComponent('ion-textarea', undefined, undefined, defineCustomElement$16);
706
+ const IonThumbnail = /*@__PURE__*/ createReactComponent('ion-thumbnail', undefined, undefined, defineCustomElement$17);
707
+ const IonTitle = /*@__PURE__*/ createReactComponent('ion-title', undefined, undefined, defineCustomElement$18);
708
+ const IonToggle = /*@__PURE__*/ createReactComponent('ion-toggle', undefined, undefined, defineCustomElement$19);
709
+ const IonToolbar = /*@__PURE__*/ createReactComponent('ion-toolbar', undefined, undefined, defineCustomElement$1a);
700
710
 
701
711
  const createForwardRef = (ReactComponent, // TODO(FW-2959): type
702
712
  displayName) => {
@@ -704,6 +714,10 @@ displayName) => {
704
714
  return jsx(ReactComponent, { ...props, forwardedRef: ref });
705
715
  };
706
716
  forwardRef.displayName = displayName;
717
+ // Cast the render function to the type React.forwardRef already infers for it.
718
+ // React 18's `forwardRef` wraps the props in `PropsWithoutRef`, and since
719
+ // `PropType` is unconstrained TypeScript can't prove the round-trip is safe.
720
+ // The cast keeps the inferred component type intact without widening to `any`.
707
721
  return React.forwardRef(forwardRef);
708
722
  };
709
723
  const isPlatform = (platform) => {
@@ -953,6 +967,42 @@ const createInlineOverlayComponent = (tagName, defineCustomElement, hasDelegateH
953
967
  componentWillUnmount() {
954
968
  this.isUnmounted = true;
955
969
  const node = this.ref.current;
970
+ if (!node) {
971
+ return;
972
+ }
973
+ /**
974
+ * CoreDelegate (or user code in onWillPresent) can move the overlay out
975
+ * of where React rendered it. React's unmount only removes the node from
976
+ * its original React location, so we recover a relocated host here,
977
+ * regardless of open state.
978
+ *
979
+ * We can't gate this on `isOpen`: the overlay can be moved before it
980
+ * finishes presenting (e.g. the React 18 StrictMode mount/unmount cycle,
981
+ * where the present events that flip `isOpen` haven't fired yet), which
982
+ * would orphan the relocated host in the DOM. It also has to run
983
+ * synchronously here, since React's portal `removeChild` runs after
984
+ * `componentWillUnmount` returns and needs the host where it expects it.
985
+ */
986
+ if (node.isConnected) {
987
+ if (this.props.isNested) {
988
+ /**
989
+ * Nested overlays render inline inside a `<template>`. If the host
990
+ * has been moved out of that template, React's unmount won't reach
991
+ * it, so remove it directly. A host still in its template is left
992
+ * for React to remove.
993
+ */
994
+ if (!(node.parentElement instanceof HTMLTemplateElement)) {
995
+ node.remove();
996
+ }
997
+ }
998
+ else if (this.portalTarget && node.parentNode !== this.portalTarget) {
999
+ /**
1000
+ * Portaled overlays: move the host back into `portalTarget` so
1001
+ * React's portal `removeChild` can find it.
1002
+ */
1003
+ this.portalTarget.appendChild(node);
1004
+ }
1005
+ }
956
1006
  /**
957
1007
  * If the overlay is being unmounted, but is still
958
1008
  * open, this means the unmount was triggered outside
@@ -966,31 +1016,13 @@ const createInlineOverlayComponent = (tagName, defineCustomElement, hasDelegateH
966
1016
  * Unmounting the overlay at this stage should skip
967
1017
  * the dismiss lifecycle, including skipping the transition.
968
1018
  *
1019
+ * Detach the local event listener that performs the state updates,
1020
+ * before dismissing the overlay, to prevent the callback handlers
1021
+ * executing after the component has been unmounted. This is to
1022
+ * avoid memory leaks.
969
1023
  */
970
- if (node && this.state.isOpen) {
971
- /**
972
- * Detach the local event listener that performs the state updates,
973
- * before dismissing the overlay, to prevent the callback handlers
974
- * executing after the component has been unmounted. This is to
975
- * avoid memory leaks.
976
- */
1024
+ if (this.state.isOpen) {
977
1025
  node.removeEventListener('didDismiss', this.handleDidDismiss);
978
- if (this.props.isNested) {
979
- /**
980
- * Nested overlays render inline (no portal). CoreDelegate may
981
- * have moved the node out of its React parent, so React's
982
- * unmount won't reach it. Remove it directly.
983
- */
984
- node.remove();
985
- }
986
- else if (node.isConnected && this.portalTarget && node.parentNode !== this.portalTarget) {
987
- /**
988
- * Portaled path: move the overlay back into `portalTarget` so
989
- * React's portal removeChild can find it. CoreDelegate (or user
990
- * code in onWillPresent) may have moved it elsewhere while open.
991
- */
992
- this.portalTarget.appendChild(node);
993
- }
994
1026
  detachProps(node, this.props);
995
1027
  }
996
1028
  }
@@ -1051,25 +1083,29 @@ const createInlineOverlayComponent = (tagName, defineCustomElement, hasDelegateH
1051
1083
  }
1052
1084
  };
1053
1085
  // Forward the nesting context as a prop to avoid contextType on the class.
1054
- const ReactComponentWithNesting = (props) => createElement(NestedOverlayContext.Consumer, null, (isNested) => createElement(ReactComponent, { ...props, isNested }));
1086
+ // The render function is passed via `children` (not as a varargs child) so it
1087
+ // matches `Context.Consumer`'s render-prop signature `(value) => ReactNode`.
1088
+ const ReactComponentWithNesting = (props) => createElement(NestedOverlayContext.Consumer, {
1089
+ children: (isNested) => createElement(ReactComponent, { ...props, isNested }),
1090
+ });
1055
1091
  ReactComponentWithNesting.displayName = displayName;
1056
1092
  return createForwardRef(ReactComponentWithNesting, displayName);
1057
1093
  };
1058
1094
  const DELEGATE_HOST = 'ion-delegate-host';
1059
1095
 
1060
- const IonAlert = /*@__PURE__*/ createInlineOverlayComponent('ion-alert', defineCustomElement$18);
1096
+ const IonAlert = /*@__PURE__*/ createInlineOverlayComponent('ion-alert', defineCustomElement$1b);
1061
1097
 
1062
- const IonLoading = /*@__PURE__*/ createInlineOverlayComponent('ion-loading', defineCustomElement$19);
1098
+ const IonLoading = /*@__PURE__*/ createInlineOverlayComponent('ion-loading', defineCustomElement$1c);
1063
1099
 
1064
- const IonToast = /*@__PURE__*/ createInlineOverlayComponent('ion-toast', defineCustomElement$1a);
1100
+ const IonToast = /*@__PURE__*/ createInlineOverlayComponent('ion-toast', defineCustomElement$1d);
1065
1101
 
1066
- const IonPickerLegacy = /*@__PURE__*/ createInlineOverlayComponent('ion-picker-legacy', defineCustomElement$1b);
1102
+ const IonPickerLegacy = /*@__PURE__*/ createInlineOverlayComponent('ion-picker-legacy', defineCustomElement$1e);
1067
1103
 
1068
- const IonActionSheet = /*@__PURE__*/ createInlineOverlayComponent('ion-action-sheet', defineCustomElement$1c);
1104
+ const IonActionSheet = /*@__PURE__*/ createInlineOverlayComponent('ion-action-sheet', defineCustomElement$1f);
1069
1105
 
1070
- const IonModal = /*@__PURE__*/ createInlineOverlayComponent('ion-modal', defineCustomElement$1d, true);
1106
+ const IonModal = /*@__PURE__*/ createInlineOverlayComponent('ion-modal', defineCustomElement$1g, true);
1071
1107
 
1072
- const IonPopover = /*@__PURE__*/ createInlineOverlayComponent('ion-popover', defineCustomElement$1e);
1108
+ const IonPopover = /*@__PURE__*/ createInlineOverlayComponent('ion-popover', defineCustomElement$1h);
1073
1109
 
1074
1110
  const IonContext = React.createContext({
1075
1111
  addOverlay: () => {
@@ -1161,14 +1197,14 @@ const IonOverlayManager = ({ onAddOverlay, onRemoveOverlay }) => {
1161
1197
  }) }));
1162
1198
  };
1163
1199
 
1164
- const IonTabButtonInner = /*@__PURE__*/ createReactComponent('ion-tab-button', undefined, undefined, defineCustomElement$1f);
1165
- const IonTabBarInner = /*@__PURE__*/ createReactComponent('ion-tab-bar', undefined, undefined, defineCustomElement$1g);
1166
- const IonTabsInner = /*@__PURE__*/ createReactComponent('ion-tabs', undefined, undefined, defineCustomElement$1h);
1167
- const IonBackButtonInner = /*@__PURE__*/ createReactComponent('ion-back-button', undefined, undefined, defineCustomElement$1i);
1168
- const IonRouterOutletInner = /*@__PURE__*/ createReactComponent('ion-router-outlet', undefined, undefined, defineCustomElement$1j);
1169
- const IonAppInner = /*@__PURE__*/ createReactComponent('ion-app', undefined, undefined, defineCustomElement$1k);
1200
+ const IonTabButtonInner = /*@__PURE__*/ createReactComponent('ion-tab-button', undefined, undefined, defineCustomElement$1i);
1201
+ const IonTabBarInner = /*@__PURE__*/ createReactComponent('ion-tab-bar', undefined, undefined, defineCustomElement$1j);
1202
+ const IonTabsInner = /*@__PURE__*/ createReactComponent('ion-tabs', undefined, undefined, defineCustomElement$1k);
1203
+ const IonBackButtonInner = /*@__PURE__*/ createReactComponent('ion-back-button', undefined, undefined, defineCustomElement$1l);
1204
+ const IonRouterOutletInner = /*@__PURE__*/ createReactComponent('ion-router-outlet', undefined, undefined, defineCustomElement$1m);
1205
+ const IonAppInner = /*@__PURE__*/ createReactComponent('ion-app', undefined, undefined, defineCustomElement$1n);
1170
1206
  // ionicons
1171
- const IonIconInner = /*@__PURE__*/ createReactComponent('ion-icon', undefined, undefined, defineCustomElement$1l);
1207
+ const IonIconInner = /*@__PURE__*/ createReactComponent('ion-icon', undefined, undefined, defineCustomElement$1o);
1172
1208
 
1173
1209
  class IonApp extends React.Component {
1174
1210
  constructor(props) {
@@ -1321,7 +1357,7 @@ const ReactDelegate = (addView, removeView) => {
1321
1357
  };
1322
1358
  };
1323
1359
 
1324
- const IonNavInner = createReactComponent('ion-nav', undefined, undefined, defineCustomElement$1m);
1360
+ const IonNavInner = createReactComponent('ion-nav', undefined, undefined, defineCustomElement$1p);
1325
1361
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
1326
1362
  const IonNavInternal = ({ children, forwardedRef, ...restOfProps }) => {
1327
1363
  const [views, setViews] = useState([]);
@@ -2093,7 +2129,7 @@ function useController(displayName, controller, defineCustomElement) {
2093
2129
  * @returns Returns the present and dismiss methods in an array
2094
2130
  */
2095
2131
  function useIonActionSheet() {
2096
- const controller = useController('IonActionSheet', actionSheetController, defineCustomElement$1c);
2132
+ const controller = useController('IonActionSheet', actionSheetController, defineCustomElement$1f);
2097
2133
  const present = useCallback((buttonsOrOptions, header) => {
2098
2134
  if (Array.isArray(buttonsOrOptions)) {
2099
2135
  return controller.present({
@@ -2113,7 +2149,7 @@ function useIonActionSheet() {
2113
2149
  * @returns Returns the present and dismiss methods in an array
2114
2150
  */
2115
2151
  function useIonAlert() {
2116
- const controller = useController('IonAlert', alertController, defineCustomElement$18);
2152
+ const controller = useController('IonAlert', alertController, defineCustomElement$1b);
2117
2153
  const present = useCallback((messageOrOptions, buttons) => {
2118
2154
  if (typeof messageOrOptions === 'string') {
2119
2155
  return controller.present({
@@ -2133,7 +2169,7 @@ function useIonAlert() {
2133
2169
  * @returns Returns the present and dismiss methods in an array
2134
2170
  */
2135
2171
  function useIonToast() {
2136
- const controller = useController('IonToast', toastController, defineCustomElement$1a);
2172
+ const controller = useController('IonToast', toastController, defineCustomElement$1d);
2137
2173
  const present = useCallback((messageOrOptions, duration) => {
2138
2174
  if (typeof messageOrOptions === 'string') {
2139
2175
  return controller.present({
@@ -2219,7 +2255,7 @@ function useOverlay(displayName, controller, defineCustomElement, component, com
2219
2255
  * @returns Returns the present and dismiss methods in an array
2220
2256
  */
2221
2257
  function useIonModal(component, componentProps) {
2222
- const controller = useOverlay('IonModal', modalController, defineCustomElement$1d, component, componentProps);
2258
+ const controller = useOverlay('IonModal', modalController, defineCustomElement$1g, component, componentProps);
2223
2259
  const present = useCallback((options = {}) => {
2224
2260
  controller.present(options);
2225
2261
  }, [controller.present]);
@@ -2234,7 +2270,7 @@ function useIonModal(component, componentProps) {
2234
2270
  * @returns Returns the present and dismiss methods in an array
2235
2271
  */
2236
2272
  function useIonPopover(component, componentProps) {
2237
- const controller = useOverlay('IonPopover', popoverController, defineCustomElement$1e, component, componentProps);
2273
+ const controller = useOverlay('IonPopover', popoverController, defineCustomElement$1h, component, componentProps);
2238
2274
  const present = useCallback((options = {}) => {
2239
2275
  controller.present(options);
2240
2276
  }, [controller.present]);
@@ -2247,7 +2283,7 @@ function useIonPopover(component, componentProps) {
2247
2283
  * @deprecated Use the inline ion-picker component instead.
2248
2284
  */
2249
2285
  function useIonPicker() {
2250
- const controller = useController('IonPicker', pickerController, defineCustomElement$1b);
2286
+ const controller = useController('IonPicker', pickerController, defineCustomElement$1e);
2251
2287
  const present = useCallback((columnsOrOptions, buttons) => {
2252
2288
  if (Array.isArray(columnsOrOptions)) {
2253
2289
  return controller.present({
@@ -2267,7 +2303,7 @@ function useIonPicker() {
2267
2303
  * @returns Returns the present and dismiss methods in an array
2268
2304
  */
2269
2305
  function useIonLoading() {
2270
- const controller = useController('IonLoading', loadingController, defineCustomElement$19);
2306
+ const controller = useController('IonLoading', loadingController, defineCustomElement$1c);
2271
2307
  const present = useCallback((messageOrOptions = {}, duration, spinner) => {
2272
2308
  if (typeof messageOrOptions === 'string') {
2273
2309
  return controller.present({
@@ -2613,5 +2649,5 @@ class ViewStacks {
2613
2649
  }
2614
2650
  }
2615
2651
 
2616
- export { CreateAnimation, DefaultIonLifeCycleContext, IonAccordion, IonAccordionGroup, IonActionSheet, IonAlert, IonApp, IonAvatar, IonBackButton, IonBackdrop, IonBadge, IonBreadcrumb, IonBreadcrumbs, IonButton, IonButtons, IonCard, IonCardContent, IonCardHeader, IonCardSubtitle, IonCardTitle, IonCheckbox, IonChip, IonCol, IonContent, IonDatetime, IonDatetimeButton, IonFab, IonFabButton, IonFabList, IonFooter, IonGrid, IonHeader, IonIcon, IonImg, IonInfiniteScroll, IonInfiniteScrollContent, IonInput, IonInputOtp, IonInputPasswordToggle, IonItem, IonItemDivider, IonItemGroup, IonItemOption, IonItemOptions, IonItemSliding, IonLabel, IonLifeCycleContext, IonList, IonListHeader, IonLoading, IonMenu, IonMenuButton, IonMenuToggle, IonModal, IonNav, IonNavLink, IonNote, IonPage, IonPicker, IonPickerColumn, IonPickerColumnOption, IonPickerLegacy, IonPopover, IonProgressBar, IonRadio, IonRadioGroup, IonRange, IonRedirect, IonRefresher, IonRefresherContent, IonReorder, IonReorderGroup, IonRippleEffect, IonRoute, IonRouterContext, IonRouterLink, IonRouterOutlet, IonRow, IonSearchbar, IonSegment, IonSegmentButton, IonSegmentContent, IonSegmentView, IonSelect, IonSelectModal, IonSelectOption, IonSkeletonText, IonSpinner, IonSplitPane, IonTab, IonTabBar, IonTabButton, IonTabs, IonTabsContext, IonText, IonTextarea, IonThumbnail, IonTitle, IonToast, IonToggle, IonToolbar, LocationHistory, NavContext, NavManager, RouteManagerContext, StackContext, ViewLifeCycleManager, ViewStacks, generateId, getConfig, getPlatforms, isPlatform, setupIonicReact, useIonActionSheet, useIonAlert, useIonLoading, useIonModal, useIonPicker, useIonPopover, useIonRouter, useIonToast, useIonViewDidEnter, useIonViewDidLeave, useIonViewWillEnter, useIonViewWillLeave, withIonLifeCycle };
2652
+ export { CreateAnimation, DefaultIonLifeCycleContext, IonAccordion, IonAccordionGroup, IonActionSheet, IonAlert, IonApp, IonAvatar, IonBackButton, IonBackdrop, IonBadge, IonBreadcrumb, IonBreadcrumbs, IonButton, IonButtons, IonCard, IonCardContent, IonCardHeader, IonCardSubtitle, IonCardTitle, IonCheckbox, IonChip, IonCol, IonContent, IonDatetime, IonDatetimeButton, IonDivider, IonFab, IonFabButton, IonFabList, IonFooter, IonGallery, IonGalleryItem, IonGrid, IonHeader, IonIcon, IonImg, IonInfiniteScroll, IonInfiniteScrollContent, IonInput, IonInputOtp, IonInputPasswordToggle, IonItem, IonItemDivider, IonItemGroup, IonItemOption, IonItemOptions, IonItemSliding, IonLabel, IonLifeCycleContext, IonList, IonListHeader, IonLoading, IonMenu, IonMenuButton, IonMenuToggle, IonModal, IonNav, IonNavLink, IonNote, IonPage, IonPicker, IonPickerColumn, IonPickerColumnOption, IonPickerLegacy, IonPopover, IonProgressBar, IonRadio, IonRadioGroup, IonRange, IonRedirect, IonRefresher, IonRefresherContent, IonReorder, IonReorderGroup, IonRippleEffect, IonRoute, IonRouterContext, IonRouterLink, IonRouterOutlet, IonRow, IonSearchbar, IonSegment, IonSegmentButton, IonSegmentContent, IonSegmentView, IonSelect, IonSelectModal, IonSelectOption, IonSkeletonText, IonSpinner, IonSplitPane, IonTab, IonTabBar, IonTabButton, IonTabs, IonTabsContext, IonText, IonTextarea, IonThumbnail, IonTitle, IonToast, IonToggle, IonToolbar, LocationHistory, NavContext, NavManager, RouteManagerContext, StackContext, ViewLifeCycleManager, ViewStacks, generateId, getConfig, getPlatforms, isPlatform, setupIonicReact, useIonActionSheet, useIonAlert, useIonLoading, useIonModal, useIonPicker, useIonPopover, useIonRouter, useIonToast, useIonViewDidEnter, useIonViewDidLeave, useIonViewWillEnter, useIonViewWillLeave, withIonLifeCycle };
2617
2653
  //# sourceMappingURL=index.js.map