@ionic/react 8.8.11-dev.11781532458.19fb3990 → 8.8.11-dev.11781639886.140139f2

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-swiper.css +1 -1
  10. package/css/ionic-swiper.css.map +1 -1
  11. package/css/ionic.bundle.css +1 -1
  12. package/css/ionic.bundle.css.map +1 -1
  13. package/css/normalize.css.map +1 -1
  14. package/css/padding.css.map +1 -1
  15. package/css/palettes/dark.always.css.map +1 -1
  16. package/css/palettes/dark.class.css.map +1 -1
  17. package/css/palettes/dark.system.css.map +1 -1
  18. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  19. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  20. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  21. package/css/palettes/high-contrast.always.css.map +1 -1
  22. package/css/palettes/high-contrast.class.css.map +1 -1
  23. package/css/palettes/high-contrast.system.css.map +1 -1
  24. package/css/structure.css.map +1 -1
  25. package/css/text-alignment.css.map +1 -1
  26. package/css/text-transformation.css.map +1 -1
  27. package/css/typography.css.map +1 -1
  28. package/css/utils.bundle.css +1 -1
  29. package/css/utils.bundle.css.map +1 -1
  30. package/dist/index.js +200 -176
  31. package/dist/index.js.map +1 -1
  32. package/dist/types/components/IonRouterOutlet.d.ts +2 -2
  33. package/dist/types/components/__tests__/createInlineOverlayComponent.spec.d.ts +1 -0
  34. package/dist/types/components/createInlineOverlayComponent.d.ts +1 -1
  35. package/dist/types/components/createRoutingComponent.d.ts +1 -1
  36. package/dist/types/components/proxies.d.ts +0 -3
  37. package/dist/types/components/react-component-lib/createComponent.d.ts +1 -1
  38. package/dist/types/components/react-component-lib/utils/index.d.ts +1 -1
  39. package/dist/types/components/utils/index.d.ts +1 -1
  40. package/package.json +2 -2
  41. package/css/ionic/bundle.ionic.css +0 -1
  42. package/css/ionic/bundle.ionic.css.map +0 -1
  43. package/css/ionic/core.ionic.css +0 -1
  44. package/css/ionic/core.ionic.css.map +0 -1
  45. package/css/ionic/global.bundle.ionic.css +0 -1
  46. package/css/ionic/global.bundle.ionic.css.map +0 -1
  47. package/css/ionic/ionic-swiper.ionic.css +0 -1
  48. package/css/ionic/ionic-swiper.ionic.css.map +0 -1
  49. package/css/ionic/link.ionic.css +0 -1
  50. package/css/ionic/link.ionic.css.map +0 -1
  51. package/css/ionic/structure.ionic.css +0 -1
  52. package/css/ionic/structure.ionic.css.map +0 -1
  53. package/css/ionic/typography.ionic.css +0 -1
  54. package/css/ionic/typography.ionic.css.map +0 -1
  55. package/css/ionic/utils.bundle.ionic.css +0 -1
  56. package/css/ionic/utils.bundle.ionic.css.map +0 -1
package/dist/index.js CHANGED
@@ -20,64 +20,61 @@ 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-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';
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';
81
78
  import { IonBreadcrumb as IonBreadcrumb$1 } from '@ionic/core/components/ion-breadcrumb.js';
82
79
  import { IonButton as IonButton$1 } from '@ionic/core/components/ion-button.js';
83
80
  import { IonCard as IonCard$1 } from '@ionic/core/components/ion-card.js';
@@ -85,20 +82,20 @@ import { IonFabButton as IonFabButton$1 } from '@ionic/core/components/ion-fab-b
85
82
  import { IonItemOption as IonItemOption$1 } from '@ionic/core/components/ion-item-option.js';
86
83
  import { IonItem as IonItem$1 } from '@ionic/core/components/ion-item.js';
87
84
  import { IonRouterLink as IonRouterLink$1 } from '@ionic/core/components/ion-router-link.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';
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';
102
99
 
103
100
  const IonLifeCycleContext = /*@__PURE__*/ React.createContext({
104
101
  onIonViewWillEnter: () => {
@@ -552,6 +549,10 @@ const createForwardRef$1 = (ReactComponent, displayName) => {
552
549
  return jsx(ReactComponent, { ...props, forwardedRef: ref });
553
550
  };
554
551
  forwardRef.displayName = displayName;
552
+ // Cast the render function to the type React.forwardRef already infers for it.
553
+ // React 18's `forwardRef` wraps the props in `PropsWithoutRef`, and since
554
+ // `PropType` is unconstrained TypeScript can't prove the round-trip is safe.
555
+ // The cast keeps the inferred component type intact without widening to `any`.
555
556
  return React.forwardRef(forwardRef);
556
557
  };
557
558
  const defineCustomElement = (tagName, customElement) => {
@@ -646,63 +647,60 @@ const IonCol = /*@__PURE__*/ createReactComponent('ion-col', undefined, undefine
646
647
  const IonContent = /*@__PURE__*/ createReactComponent('ion-content', undefined, undefined, defineCustomElement$f);
647
648
  const IonDatetime = /*@__PURE__*/ createReactComponent('ion-datetime', undefined, undefined, defineCustomElement$g);
648
649
  const IonDatetimeButton = /*@__PURE__*/ createReactComponent('ion-datetime-button', undefined, undefined, defineCustomElement$h);
649
- const IonDivider = /*@__PURE__*/ createReactComponent('ion-divider', undefined, undefined, defineCustomElement$i);
650
- const IonFab = /*@__PURE__*/ createReactComponent('ion-fab', undefined, undefined, defineCustomElement$j);
651
- const IonFabList = /*@__PURE__*/ createReactComponent('ion-fab-list', undefined, undefined, defineCustomElement$k);
652
- const IonFooter = /*@__PURE__*/ createReactComponent('ion-footer', undefined, undefined, defineCustomElement$l);
653
- const IonGallery = /*@__PURE__*/ createReactComponent('ion-gallery', undefined, undefined, defineCustomElement$m);
654
- const IonGalleryItem = /*@__PURE__*/ createReactComponent('ion-gallery-item', undefined, undefined, defineCustomElement$n);
655
- const IonGrid = /*@__PURE__*/ createReactComponent('ion-grid', undefined, undefined, defineCustomElement$o);
656
- const IonHeader = /*@__PURE__*/ createReactComponent('ion-header', undefined, undefined, defineCustomElement$p);
657
- const IonImg = /*@__PURE__*/ createReactComponent('ion-img', undefined, undefined, defineCustomElement$q);
658
- const IonInfiniteScroll = /*@__PURE__*/ createReactComponent('ion-infinite-scroll', undefined, undefined, defineCustomElement$r);
659
- const IonInfiniteScrollContent = /*@__PURE__*/ createReactComponent('ion-infinite-scroll-content', undefined, undefined, defineCustomElement$s);
660
- const IonInput = /*@__PURE__*/ createReactComponent('ion-input', undefined, undefined, defineCustomElement$t);
661
- const IonInputOtp = /*@__PURE__*/ createReactComponent('ion-input-otp', undefined, undefined, defineCustomElement$u);
662
- const IonInputPasswordToggle = /*@__PURE__*/ createReactComponent('ion-input-password-toggle', undefined, undefined, defineCustomElement$v);
663
- const IonItemDivider = /*@__PURE__*/ createReactComponent('ion-item-divider', undefined, undefined, defineCustomElement$w);
664
- const IonItemGroup = /*@__PURE__*/ createReactComponent('ion-item-group', undefined, undefined, defineCustomElement$x);
665
- const IonItemOptions = /*@__PURE__*/ createReactComponent('ion-item-options', undefined, undefined, defineCustomElement$y);
666
- const IonItemSliding = /*@__PURE__*/ createReactComponent('ion-item-sliding', undefined, undefined, defineCustomElement$z);
667
- const IonLabel = /*@__PURE__*/ createReactComponent('ion-label', undefined, undefined, defineCustomElement$A);
668
- const IonList = /*@__PURE__*/ createReactComponent('ion-list', undefined, undefined, defineCustomElement$B);
669
- const IonListHeader = /*@__PURE__*/ createReactComponent('ion-list-header', undefined, undefined, defineCustomElement$C);
670
- const IonMenu = /*@__PURE__*/ createReactComponent('ion-menu', undefined, undefined, defineCustomElement$D);
671
- const IonMenuButton = /*@__PURE__*/ createReactComponent('ion-menu-button', undefined, undefined, defineCustomElement$E);
672
- const IonMenuToggle = /*@__PURE__*/ createReactComponent('ion-menu-toggle', undefined, undefined, defineCustomElement$F);
673
- const IonNavLink = /*@__PURE__*/ createReactComponent('ion-nav-link', undefined, undefined, defineCustomElement$G);
674
- const IonNote = /*@__PURE__*/ createReactComponent('ion-note', undefined, undefined, defineCustomElement$H);
675
- const IonPicker = /*@__PURE__*/ createReactComponent('ion-picker', undefined, undefined, defineCustomElement$I);
676
- const IonPickerColumn = /*@__PURE__*/ createReactComponent('ion-picker-column', undefined, undefined, defineCustomElement$J);
677
- const IonPickerColumnOption = /*@__PURE__*/ createReactComponent('ion-picker-column-option', undefined, undefined, defineCustomElement$K);
678
- const IonProgressBar = /*@__PURE__*/ createReactComponent('ion-progress-bar', undefined, undefined, defineCustomElement$L);
679
- const IonRadio = /*@__PURE__*/ createReactComponent('ion-radio', undefined, undefined, defineCustomElement$M);
680
- const IonRadioGroup = /*@__PURE__*/ createReactComponent('ion-radio-group', undefined, undefined, defineCustomElement$N);
681
- const IonRange = /*@__PURE__*/ createReactComponent('ion-range', undefined, undefined, defineCustomElement$O);
682
- const IonRefresher = /*@__PURE__*/ createReactComponent('ion-refresher', undefined, undefined, defineCustomElement$P);
683
- const IonRefresherContent = /*@__PURE__*/ createReactComponent('ion-refresher-content', undefined, undefined, defineCustomElement$Q);
684
- const IonReorder = /*@__PURE__*/ createReactComponent('ion-reorder', undefined, undefined, defineCustomElement$R);
685
- const IonReorderGroup = /*@__PURE__*/ createReactComponent('ion-reorder-group', undefined, undefined, defineCustomElement$S);
686
- const IonRippleEffect = /*@__PURE__*/ createReactComponent('ion-ripple-effect', undefined, undefined, defineCustomElement$T);
687
- const IonRow = /*@__PURE__*/ createReactComponent('ion-row', undefined, undefined, defineCustomElement$U);
688
- const IonSearchbar = /*@__PURE__*/ createReactComponent('ion-searchbar', undefined, undefined, defineCustomElement$V);
689
- const IonSegment = /*@__PURE__*/ createReactComponent('ion-segment', undefined, undefined, defineCustomElement$W);
690
- const IonSegmentButton = /*@__PURE__*/ createReactComponent('ion-segment-button', undefined, undefined, defineCustomElement$X);
691
- const IonSegmentContent = /*@__PURE__*/ createReactComponent('ion-segment-content', undefined, undefined, defineCustomElement$Y);
692
- const IonSegmentView = /*@__PURE__*/ createReactComponent('ion-segment-view', undefined, undefined, defineCustomElement$Z);
693
- const IonSelect = /*@__PURE__*/ createReactComponent('ion-select', undefined, undefined, defineCustomElement$_);
694
- const IonSelectModal = /*@__PURE__*/ createReactComponent('ion-select-modal', undefined, undefined, defineCustomElement$$);
695
- const IonSelectOption = /*@__PURE__*/ createReactComponent('ion-select-option', undefined, undefined, defineCustomElement$10);
696
- const IonSkeletonText = /*@__PURE__*/ createReactComponent('ion-skeleton-text', undefined, undefined, defineCustomElement$11);
697
- const IonSpinner = /*@__PURE__*/ createReactComponent('ion-spinner', undefined, undefined, defineCustomElement$12);
698
- const IonSplitPane = /*@__PURE__*/ createReactComponent('ion-split-pane', undefined, undefined, defineCustomElement$13);
699
- const IonTab = /*@__PURE__*/ createReactComponent('ion-tab', undefined, undefined, defineCustomElement$14);
700
- const IonText = /*@__PURE__*/ createReactComponent('ion-text', undefined, undefined, defineCustomElement$15);
701
- const IonTextarea = /*@__PURE__*/ createReactComponent('ion-textarea', undefined, undefined, defineCustomElement$16);
702
- const IonThumbnail = /*@__PURE__*/ createReactComponent('ion-thumbnail', undefined, undefined, defineCustomElement$17);
703
- const IonTitle = /*@__PURE__*/ createReactComponent('ion-title', undefined, undefined, defineCustomElement$18);
704
- const IonToggle = /*@__PURE__*/ createReactComponent('ion-toggle', undefined, undefined, defineCustomElement$19);
705
- const IonToolbar = /*@__PURE__*/ createReactComponent('ion-toolbar', undefined, undefined, defineCustomElement$1a);
650
+ const IonFab = /*@__PURE__*/ createReactComponent('ion-fab', undefined, undefined, defineCustomElement$i);
651
+ const IonFabList = /*@__PURE__*/ createReactComponent('ion-fab-list', undefined, undefined, defineCustomElement$j);
652
+ const IonFooter = /*@__PURE__*/ createReactComponent('ion-footer', undefined, undefined, defineCustomElement$k);
653
+ const IonGrid = /*@__PURE__*/ createReactComponent('ion-grid', undefined, undefined, defineCustomElement$l);
654
+ const IonHeader = /*@__PURE__*/ createReactComponent('ion-header', undefined, undefined, defineCustomElement$m);
655
+ const IonImg = /*@__PURE__*/ createReactComponent('ion-img', undefined, undefined, defineCustomElement$n);
656
+ const IonInfiniteScroll = /*@__PURE__*/ createReactComponent('ion-infinite-scroll', undefined, undefined, defineCustomElement$o);
657
+ const IonInfiniteScrollContent = /*@__PURE__*/ createReactComponent('ion-infinite-scroll-content', undefined, undefined, defineCustomElement$p);
658
+ const IonInput = /*@__PURE__*/ createReactComponent('ion-input', undefined, undefined, defineCustomElement$q);
659
+ const IonInputOtp = /*@__PURE__*/ createReactComponent('ion-input-otp', undefined, undefined, defineCustomElement$r);
660
+ const IonInputPasswordToggle = /*@__PURE__*/ createReactComponent('ion-input-password-toggle', undefined, undefined, defineCustomElement$s);
661
+ const IonItemDivider = /*@__PURE__*/ createReactComponent('ion-item-divider', undefined, undefined, defineCustomElement$t);
662
+ const IonItemGroup = /*@__PURE__*/ createReactComponent('ion-item-group', undefined, undefined, defineCustomElement$u);
663
+ const IonItemOptions = /*@__PURE__*/ createReactComponent('ion-item-options', undefined, undefined, defineCustomElement$v);
664
+ const IonItemSliding = /*@__PURE__*/ createReactComponent('ion-item-sliding', undefined, undefined, defineCustomElement$w);
665
+ const IonLabel = /*@__PURE__*/ createReactComponent('ion-label', undefined, undefined, defineCustomElement$x);
666
+ const IonList = /*@__PURE__*/ createReactComponent('ion-list', undefined, undefined, defineCustomElement$y);
667
+ const IonListHeader = /*@__PURE__*/ createReactComponent('ion-list-header', undefined, undefined, defineCustomElement$z);
668
+ const IonMenu = /*@__PURE__*/ createReactComponent('ion-menu', undefined, undefined, defineCustomElement$A);
669
+ const IonMenuButton = /*@__PURE__*/ createReactComponent('ion-menu-button', undefined, undefined, defineCustomElement$B);
670
+ const IonMenuToggle = /*@__PURE__*/ createReactComponent('ion-menu-toggle', undefined, undefined, defineCustomElement$C);
671
+ const IonNavLink = /*@__PURE__*/ createReactComponent('ion-nav-link', undefined, undefined, defineCustomElement$D);
672
+ const IonNote = /*@__PURE__*/ createReactComponent('ion-note', undefined, undefined, defineCustomElement$E);
673
+ const IonPicker = /*@__PURE__*/ createReactComponent('ion-picker', undefined, undefined, defineCustomElement$F);
674
+ const IonPickerColumn = /*@__PURE__*/ createReactComponent('ion-picker-column', undefined, undefined, defineCustomElement$G);
675
+ const IonPickerColumnOption = /*@__PURE__*/ createReactComponent('ion-picker-column-option', undefined, undefined, defineCustomElement$H);
676
+ const IonProgressBar = /*@__PURE__*/ createReactComponent('ion-progress-bar', undefined, undefined, defineCustomElement$I);
677
+ const IonRadio = /*@__PURE__*/ createReactComponent('ion-radio', undefined, undefined, defineCustomElement$J);
678
+ const IonRadioGroup = /*@__PURE__*/ createReactComponent('ion-radio-group', undefined, undefined, defineCustomElement$K);
679
+ const IonRange = /*@__PURE__*/ createReactComponent('ion-range', undefined, undefined, defineCustomElement$L);
680
+ const IonRefresher = /*@__PURE__*/ createReactComponent('ion-refresher', undefined, undefined, defineCustomElement$M);
681
+ const IonRefresherContent = /*@__PURE__*/ createReactComponent('ion-refresher-content', undefined, undefined, defineCustomElement$N);
682
+ const IonReorder = /*@__PURE__*/ createReactComponent('ion-reorder', undefined, undefined, defineCustomElement$O);
683
+ const IonReorderGroup = /*@__PURE__*/ createReactComponent('ion-reorder-group', undefined, undefined, defineCustomElement$P);
684
+ const IonRippleEffect = /*@__PURE__*/ createReactComponent('ion-ripple-effect', undefined, undefined, defineCustomElement$Q);
685
+ const IonRow = /*@__PURE__*/ createReactComponent('ion-row', undefined, undefined, defineCustomElement$R);
686
+ const IonSearchbar = /*@__PURE__*/ createReactComponent('ion-searchbar', undefined, undefined, defineCustomElement$S);
687
+ const IonSegment = /*@__PURE__*/ createReactComponent('ion-segment', undefined, undefined, defineCustomElement$T);
688
+ const IonSegmentButton = /*@__PURE__*/ createReactComponent('ion-segment-button', undefined, undefined, defineCustomElement$U);
689
+ const IonSegmentContent = /*@__PURE__*/ createReactComponent('ion-segment-content', undefined, undefined, defineCustomElement$V);
690
+ const IonSegmentView = /*@__PURE__*/ createReactComponent('ion-segment-view', undefined, undefined, defineCustomElement$W);
691
+ const IonSelect = /*@__PURE__*/ createReactComponent('ion-select', undefined, undefined, defineCustomElement$X);
692
+ const IonSelectModal = /*@__PURE__*/ createReactComponent('ion-select-modal', undefined, undefined, defineCustomElement$Y);
693
+ const IonSelectOption = /*@__PURE__*/ createReactComponent('ion-select-option', undefined, undefined, defineCustomElement$Z);
694
+ const IonSkeletonText = /*@__PURE__*/ createReactComponent('ion-skeleton-text', undefined, undefined, defineCustomElement$_);
695
+ const IonSpinner = /*@__PURE__*/ createReactComponent('ion-spinner', undefined, undefined, defineCustomElement$$);
696
+ const IonSplitPane = /*@__PURE__*/ createReactComponent('ion-split-pane', undefined, undefined, defineCustomElement$10);
697
+ const IonTab = /*@__PURE__*/ createReactComponent('ion-tab', undefined, undefined, defineCustomElement$11);
698
+ const IonText = /*@__PURE__*/ createReactComponent('ion-text', undefined, undefined, defineCustomElement$12);
699
+ const IonTextarea = /*@__PURE__*/ createReactComponent('ion-textarea', undefined, undefined, defineCustomElement$13);
700
+ const IonThumbnail = /*@__PURE__*/ createReactComponent('ion-thumbnail', undefined, undefined, defineCustomElement$14);
701
+ const IonTitle = /*@__PURE__*/ createReactComponent('ion-title', undefined, undefined, defineCustomElement$15);
702
+ const IonToggle = /*@__PURE__*/ createReactComponent('ion-toggle', undefined, undefined, defineCustomElement$16);
703
+ const IonToolbar = /*@__PURE__*/ createReactComponent('ion-toolbar', undefined, undefined, defineCustomElement$17);
706
704
 
707
705
  const createForwardRef = (ReactComponent, // TODO(FW-2959): type
708
706
  displayName) => {
@@ -710,6 +708,10 @@ displayName) => {
710
708
  return jsx(ReactComponent, { ...props, forwardedRef: ref });
711
709
  };
712
710
  forwardRef.displayName = displayName;
711
+ // Cast the render function to the type React.forwardRef already infers for it.
712
+ // React 18's `forwardRef` wraps the props in `PropsWithoutRef`, and since
713
+ // `PropType` is unconstrained TypeScript can't prove the round-trip is safe.
714
+ // The cast keeps the inferred component type intact without widening to `any`.
713
715
  return React.forwardRef(forwardRef);
714
716
  };
715
717
  const isPlatform = (platform) => {
@@ -959,6 +961,42 @@ const createInlineOverlayComponent = (tagName, defineCustomElement, hasDelegateH
959
961
  componentWillUnmount() {
960
962
  this.isUnmounted = true;
961
963
  const node = this.ref.current;
964
+ if (!node) {
965
+ return;
966
+ }
967
+ /**
968
+ * CoreDelegate (or user code in onWillPresent) can move the overlay out
969
+ * of where React rendered it. React's unmount only removes the node from
970
+ * its original React location, so we recover a relocated host here,
971
+ * regardless of open state.
972
+ *
973
+ * We can't gate this on `isOpen`: the overlay can be moved before it
974
+ * finishes presenting (e.g. the React 18 StrictMode mount/unmount cycle,
975
+ * where the present events that flip `isOpen` haven't fired yet), which
976
+ * would orphan the relocated host in the DOM. It also has to run
977
+ * synchronously here, since React's portal `removeChild` runs after
978
+ * `componentWillUnmount` returns and needs the host where it expects it.
979
+ */
980
+ if (node.isConnected) {
981
+ if (this.props.isNested) {
982
+ /**
983
+ * Nested overlays render inline inside a `<template>`. If the host
984
+ * has been moved out of that template, React's unmount won't reach
985
+ * it, so remove it directly. A host still in its template is left
986
+ * for React to remove.
987
+ */
988
+ if (!(node.parentElement instanceof HTMLTemplateElement)) {
989
+ node.remove();
990
+ }
991
+ }
992
+ else if (this.portalTarget && node.parentNode !== this.portalTarget) {
993
+ /**
994
+ * Portaled overlays: move the host back into `portalTarget` so
995
+ * React's portal `removeChild` can find it.
996
+ */
997
+ this.portalTarget.appendChild(node);
998
+ }
999
+ }
962
1000
  /**
963
1001
  * If the overlay is being unmounted, but is still
964
1002
  * open, this means the unmount was triggered outside
@@ -972,31 +1010,13 @@ const createInlineOverlayComponent = (tagName, defineCustomElement, hasDelegateH
972
1010
  * Unmounting the overlay at this stage should skip
973
1011
  * the dismiss lifecycle, including skipping the transition.
974
1012
  *
1013
+ * Detach the local event listener that performs the state updates,
1014
+ * before dismissing the overlay, to prevent the callback handlers
1015
+ * executing after the component has been unmounted. This is to
1016
+ * avoid memory leaks.
975
1017
  */
976
- if (node && this.state.isOpen) {
977
- /**
978
- * Detach the local event listener that performs the state updates,
979
- * before dismissing the overlay, to prevent the callback handlers
980
- * executing after the component has been unmounted. This is to
981
- * avoid memory leaks.
982
- */
1018
+ if (this.state.isOpen) {
983
1019
  node.removeEventListener('didDismiss', this.handleDidDismiss);
984
- if (this.props.isNested) {
985
- /**
986
- * Nested overlays render inline (no portal). CoreDelegate may
987
- * have moved the node out of its React parent, so React's
988
- * unmount won't reach it. Remove it directly.
989
- */
990
- node.remove();
991
- }
992
- else if (node.isConnected && this.portalTarget && node.parentNode !== this.portalTarget) {
993
- /**
994
- * Portaled path: move the overlay back into `portalTarget` so
995
- * React's portal removeChild can find it. CoreDelegate (or user
996
- * code in onWillPresent) may have moved it elsewhere while open.
997
- */
998
- this.portalTarget.appendChild(node);
999
- }
1000
1020
  detachProps(node, this.props);
1001
1021
  }
1002
1022
  }
@@ -1057,25 +1077,29 @@ const createInlineOverlayComponent = (tagName, defineCustomElement, hasDelegateH
1057
1077
  }
1058
1078
  };
1059
1079
  // Forward the nesting context as a prop to avoid contextType on the class.
1060
- const ReactComponentWithNesting = (props) => createElement(NestedOverlayContext.Consumer, null, (isNested) => createElement(ReactComponent, { ...props, isNested }));
1080
+ // The render function is passed via `children` (not as a varargs child) so it
1081
+ // matches `Context.Consumer`'s render-prop signature `(value) => ReactNode`.
1082
+ const ReactComponentWithNesting = (props) => createElement(NestedOverlayContext.Consumer, {
1083
+ children: (isNested) => createElement(ReactComponent, { ...props, isNested }),
1084
+ });
1061
1085
  ReactComponentWithNesting.displayName = displayName;
1062
1086
  return createForwardRef(ReactComponentWithNesting, displayName);
1063
1087
  };
1064
1088
  const DELEGATE_HOST = 'ion-delegate-host';
1065
1089
 
1066
- const IonAlert = /*@__PURE__*/ createInlineOverlayComponent('ion-alert', defineCustomElement$1b);
1090
+ const IonAlert = /*@__PURE__*/ createInlineOverlayComponent('ion-alert', defineCustomElement$18);
1067
1091
 
1068
- const IonLoading = /*@__PURE__*/ createInlineOverlayComponent('ion-loading', defineCustomElement$1c);
1092
+ const IonLoading = /*@__PURE__*/ createInlineOverlayComponent('ion-loading', defineCustomElement$19);
1069
1093
 
1070
- const IonToast = /*@__PURE__*/ createInlineOverlayComponent('ion-toast', defineCustomElement$1d);
1094
+ const IonToast = /*@__PURE__*/ createInlineOverlayComponent('ion-toast', defineCustomElement$1a);
1071
1095
 
1072
- const IonPickerLegacy = /*@__PURE__*/ createInlineOverlayComponent('ion-picker-legacy', defineCustomElement$1e);
1096
+ const IonPickerLegacy = /*@__PURE__*/ createInlineOverlayComponent('ion-picker-legacy', defineCustomElement$1b);
1073
1097
 
1074
- const IonActionSheet = /*@__PURE__*/ createInlineOverlayComponent('ion-action-sheet', defineCustomElement$1f);
1098
+ const IonActionSheet = /*@__PURE__*/ createInlineOverlayComponent('ion-action-sheet', defineCustomElement$1c);
1075
1099
 
1076
- const IonModal = /*@__PURE__*/ createInlineOverlayComponent('ion-modal', defineCustomElement$1g, true);
1100
+ const IonModal = /*@__PURE__*/ createInlineOverlayComponent('ion-modal', defineCustomElement$1d, true);
1077
1101
 
1078
- const IonPopover = /*@__PURE__*/ createInlineOverlayComponent('ion-popover', defineCustomElement$1h);
1102
+ const IonPopover = /*@__PURE__*/ createInlineOverlayComponent('ion-popover', defineCustomElement$1e);
1079
1103
 
1080
1104
  const IonContext = React.createContext({
1081
1105
  addOverlay: () => {
@@ -1167,14 +1191,14 @@ const IonOverlayManager = ({ onAddOverlay, onRemoveOverlay }) => {
1167
1191
  }) }));
1168
1192
  };
1169
1193
 
1170
- const IonTabButtonInner = /*@__PURE__*/ createReactComponent('ion-tab-button', undefined, undefined, defineCustomElement$1i);
1171
- const IonTabBarInner = /*@__PURE__*/ createReactComponent('ion-tab-bar', undefined, undefined, defineCustomElement$1j);
1172
- const IonTabsInner = /*@__PURE__*/ createReactComponent('ion-tabs', undefined, undefined, defineCustomElement$1k);
1173
- const IonBackButtonInner = /*@__PURE__*/ createReactComponent('ion-back-button', undefined, undefined, defineCustomElement$1l);
1174
- const IonRouterOutletInner = /*@__PURE__*/ createReactComponent('ion-router-outlet', undefined, undefined, defineCustomElement$1m);
1175
- const IonAppInner = /*@__PURE__*/ createReactComponent('ion-app', undefined, undefined, defineCustomElement$1n);
1194
+ const IonTabButtonInner = /*@__PURE__*/ createReactComponent('ion-tab-button', undefined, undefined, defineCustomElement$1f);
1195
+ const IonTabBarInner = /*@__PURE__*/ createReactComponent('ion-tab-bar', undefined, undefined, defineCustomElement$1g);
1196
+ const IonTabsInner = /*@__PURE__*/ createReactComponent('ion-tabs', undefined, undefined, defineCustomElement$1h);
1197
+ const IonBackButtonInner = /*@__PURE__*/ createReactComponent('ion-back-button', undefined, undefined, defineCustomElement$1i);
1198
+ const IonRouterOutletInner = /*@__PURE__*/ createReactComponent('ion-router-outlet', undefined, undefined, defineCustomElement$1j);
1199
+ const IonAppInner = /*@__PURE__*/ createReactComponent('ion-app', undefined, undefined, defineCustomElement$1k);
1176
1200
  // ionicons
1177
- const IonIconInner = /*@__PURE__*/ createReactComponent('ion-icon', undefined, undefined, defineCustomElement$1o);
1201
+ const IonIconInner = /*@__PURE__*/ createReactComponent('ion-icon', undefined, undefined, defineCustomElement$1l);
1178
1202
 
1179
1203
  class IonApp extends React.Component {
1180
1204
  constructor(props) {
@@ -1327,7 +1351,7 @@ const ReactDelegate = (addView, removeView) => {
1327
1351
  };
1328
1352
  };
1329
1353
 
1330
- const IonNavInner = createReactComponent('ion-nav', undefined, undefined, defineCustomElement$1p);
1354
+ const IonNavInner = createReactComponent('ion-nav', undefined, undefined, defineCustomElement$1m);
1331
1355
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
1332
1356
  const IonNavInternal = ({ children, forwardedRef, ...restOfProps }) => {
1333
1357
  const [views, setViews] = useState([]);
@@ -2099,7 +2123,7 @@ function useController(displayName, controller, defineCustomElement) {
2099
2123
  * @returns Returns the present and dismiss methods in an array
2100
2124
  */
2101
2125
  function useIonActionSheet() {
2102
- const controller = useController('IonActionSheet', actionSheetController, defineCustomElement$1f);
2126
+ const controller = useController('IonActionSheet', actionSheetController, defineCustomElement$1c);
2103
2127
  const present = useCallback((buttonsOrOptions, header) => {
2104
2128
  if (Array.isArray(buttonsOrOptions)) {
2105
2129
  return controller.present({
@@ -2119,7 +2143,7 @@ function useIonActionSheet() {
2119
2143
  * @returns Returns the present and dismiss methods in an array
2120
2144
  */
2121
2145
  function useIonAlert() {
2122
- const controller = useController('IonAlert', alertController, defineCustomElement$1b);
2146
+ const controller = useController('IonAlert', alertController, defineCustomElement$18);
2123
2147
  const present = useCallback((messageOrOptions, buttons) => {
2124
2148
  if (typeof messageOrOptions === 'string') {
2125
2149
  return controller.present({
@@ -2139,7 +2163,7 @@ function useIonAlert() {
2139
2163
  * @returns Returns the present and dismiss methods in an array
2140
2164
  */
2141
2165
  function useIonToast() {
2142
- const controller = useController('IonToast', toastController, defineCustomElement$1d);
2166
+ const controller = useController('IonToast', toastController, defineCustomElement$1a);
2143
2167
  const present = useCallback((messageOrOptions, duration) => {
2144
2168
  if (typeof messageOrOptions === 'string') {
2145
2169
  return controller.present({
@@ -2225,7 +2249,7 @@ function useOverlay(displayName, controller, defineCustomElement, component, com
2225
2249
  * @returns Returns the present and dismiss methods in an array
2226
2250
  */
2227
2251
  function useIonModal(component, componentProps) {
2228
- const controller = useOverlay('IonModal', modalController, defineCustomElement$1g, component, componentProps);
2252
+ const controller = useOverlay('IonModal', modalController, defineCustomElement$1d, component, componentProps);
2229
2253
  const present = useCallback((options = {}) => {
2230
2254
  controller.present(options);
2231
2255
  }, [controller.present]);
@@ -2240,7 +2264,7 @@ function useIonModal(component, componentProps) {
2240
2264
  * @returns Returns the present and dismiss methods in an array
2241
2265
  */
2242
2266
  function useIonPopover(component, componentProps) {
2243
- const controller = useOverlay('IonPopover', popoverController, defineCustomElement$1h, component, componentProps);
2267
+ const controller = useOverlay('IonPopover', popoverController, defineCustomElement$1e, component, componentProps);
2244
2268
  const present = useCallback((options = {}) => {
2245
2269
  controller.present(options);
2246
2270
  }, [controller.present]);
@@ -2253,7 +2277,7 @@ function useIonPopover(component, componentProps) {
2253
2277
  * @deprecated Use the inline ion-picker component instead.
2254
2278
  */
2255
2279
  function useIonPicker() {
2256
- const controller = useController('IonPicker', pickerController, defineCustomElement$1e);
2280
+ const controller = useController('IonPicker', pickerController, defineCustomElement$1b);
2257
2281
  const present = useCallback((columnsOrOptions, buttons) => {
2258
2282
  if (Array.isArray(columnsOrOptions)) {
2259
2283
  return controller.present({
@@ -2273,7 +2297,7 @@ function useIonPicker() {
2273
2297
  * @returns Returns the present and dismiss methods in an array
2274
2298
  */
2275
2299
  function useIonLoading() {
2276
- const controller = useController('IonLoading', loadingController, defineCustomElement$1c);
2300
+ const controller = useController('IonLoading', loadingController, defineCustomElement$19);
2277
2301
  const present = useCallback((messageOrOptions = {}, duration, spinner) => {
2278
2302
  if (typeof messageOrOptions === 'string') {
2279
2303
  return controller.present({
@@ -2619,5 +2643,5 @@ class ViewStacks {
2619
2643
  }
2620
2644
  }
2621
2645
 
2622
- 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 };
2646
+ 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 };
2623
2647
  //# sourceMappingURL=index.js.map