@ionic/react 8.2.8-dev.11725452518.16aa47d3 → 8.2.8-dev.11725551009.1bc973e7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/css/core.css +1 -1
- package/css/core.css.map +1 -1
- package/css/display.css.map +1 -1
- package/css/flex-utils.css.map +1 -1
- package/css/float-elements.css.map +1 -1
- package/css/global.bundle.css +1 -1
- package/css/global.bundle.css.map +1 -1
- package/css/ionic-swiper.css +1 -1
- package/css/ionic-swiper.css.map +1 -1
- package/css/ionic.bundle.css +1 -1
- package/css/ionic.bundle.css.map +1 -1
- package/css/normalize.css.map +1 -1
- package/css/padding.css.map +1 -1
- package/css/palettes/dark.always.css.map +1 -1
- package/css/palettes/dark.class.css.map +1 -1
- package/css/palettes/dark.system.css.map +1 -1
- package/css/palettes/high-contrast-dark.always.css.map +1 -1
- package/css/palettes/high-contrast-dark.class.css.map +1 -1
- package/css/palettes/high-contrast-dark.system.css.map +1 -1
- package/css/palettes/high-contrast.always.css.map +1 -1
- package/css/palettes/high-contrast.class.css.map +1 -1
- package/css/palettes/high-contrast.system.css.map +1 -1
- package/css/structure.css +1 -1
- package/css/structure.css.map +1 -1
- package/css/text-alignment.css.map +1 -1
- package/css/text-transformation.css.map +1 -1
- package/css/typography.css +1 -1
- package/css/typography.css.map +1 -1
- package/css/utils.bundle.css.map +1 -1
- package/dist/index.js +278 -685
- package/dist/index.js.map +1 -1
- package/dist/types/components/IonActionSheet.d.ts +1 -0
- package/dist/types/components/IonAlert.d.ts +1 -0
- package/dist/types/components/IonApp.d.ts +3 -3
- package/dist/types/components/IonLoading.d.ts +1 -0
- package/dist/types/components/IonModal.d.ts +1 -0
- package/dist/types/components/IonPickerLegacy.d.ts +1 -0
- package/dist/types/components/IonPopover.d.ts +1 -0
- package/dist/types/components/IonRouterOutlet.d.ts +3 -3
- package/dist/types/components/IonToast.d.ts +1 -0
- package/dist/types/components/createControllerComponent.d.ts +1 -1
- package/dist/types/components/createOverlayComponent.d.ts +1 -1
- package/dist/types/components/index.d.ts +1 -1
- package/dist/types/components/inner-proxies.d.ts +5 -3
- package/dist/types/components/navigation/IonBackButton.d.ts +2 -2
- package/dist/types/components/navigation/IonNav.d.ts +1 -1
- package/dist/types/components/navigation/IonTabBar.d.ts +6 -6
- package/dist/types/components/navigation/IonTabButton.d.ts +1 -1
- package/dist/types/components/navigation/IonTabs.d.ts +2 -2
- package/dist/types/components/proxies.d.ts +70 -0
- package/dist/types/components/react-component-lib/createComponent.d.ts +1 -1
- package/dist/types/components/react-component-lib/createOverlayComponent.d.ts +1 -1
- package/dist/types/components/react-component-lib/utils/attachProps.d.ts +2 -2
- package/dist/types/components/routing-proxies.d.ts +29 -28
- package/dist/types/contexts/IonLifeCycleContext.d.ts +1 -1
- package/dist/types/lifecycle/IonLifeCycleHOC.d.ts +1 -1
- package/dist/types/routing/ViewLifeCycleManager.d.ts +1 -1
- package/dist/types/routing/ViewStacks.d.ts +2 -0
- package/dist/types/utils/HTMLElementSSR.d.ts +4 -1
- package/package.json +5 -8
- package/css/ionic/bundle.ionic.css +0 -1
- package/css/ionic/bundle.ionic.css.map +0 -1
- package/css/ionic/core.ionic.css +0 -1
- package/css/ionic/core.ionic.css.map +0 -1
- package/css/ionic/global.bundle.ionic.css +0 -1
- package/css/ionic/global.bundle.ionic.css.map +0 -1
- package/css/ionic/ionic-swiper.ionic.css +0 -1
- package/css/ionic/ionic-swiper.ionic.css.map +0 -1
- package/css/ionic/link.ionic.css +0 -1
- package/css/ionic/link.ionic.css.map +0 -1
- package/css/ionic/structure.ionic.css +0 -1
- package/css/ionic/structure.ionic.css.map +0 -1
- package/css/ionic/typography.ionic.css +0 -1
- package/css/ionic/typography.ionic.css.map +0 -1
- package/css/ionic/utils.bundle.ionic.css +0 -1
- package/css/ionic/utils.bundle.ionic.css.map +0 -1
- package/dist/types/components/components.d.ts +0 -258
package/dist/index.js
CHANGED
|
@@ -1,75 +1,76 @@
|
|
|
1
1
|
import React, { useContext, useRef, useEffect, createElement, useState, useMemo, Fragment, useCallback } from 'react';
|
|
2
2
|
import { isPlatform as isPlatform$1, getPlatforms as getPlatforms$1, componentOnReady, createAnimation, actionSheetController, alertController, toastController, modalController, popoverController, pickerController, loadingController, initialize } from '@ionic/core/components';
|
|
3
3
|
export { IonicSafeString, IonicSlides, createAnimation, createGesture, getIonPageElement, getTimeGivenProgression, iosTransitionAnimation, mdTransitionAnimation, openURL } from '@ionic/core/components';
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
28
|
-
import {
|
|
29
|
-
import {
|
|
30
|
-
import {
|
|
31
|
-
import {
|
|
32
|
-
import {
|
|
33
|
-
import {
|
|
34
|
-
import {
|
|
35
|
-
import {
|
|
36
|
-
import {
|
|
37
|
-
import {
|
|
38
|
-
import {
|
|
39
|
-
import {
|
|
40
|
-
import {
|
|
41
|
-
import {
|
|
42
|
-
import { defineCustomElement as defineCustomElement$
|
|
43
|
-
import {
|
|
44
|
-
import {
|
|
45
|
-
import {
|
|
46
|
-
import {
|
|
47
|
-
import {
|
|
48
|
-
import {
|
|
49
|
-
import {
|
|
50
|
-
import {
|
|
51
|
-
import {
|
|
52
|
-
import {
|
|
53
|
-
import {
|
|
54
|
-
import {
|
|
55
|
-
import {
|
|
56
|
-
import {
|
|
57
|
-
import {
|
|
58
|
-
import {
|
|
59
|
-
import {
|
|
60
|
-
import {
|
|
61
|
-
import {
|
|
62
|
-
import {
|
|
63
|
-
import {
|
|
64
|
-
import {
|
|
65
|
-
import {
|
|
66
|
-
import {
|
|
67
|
-
import {
|
|
68
|
-
import {
|
|
69
|
-
import {
|
|
70
|
-
import {
|
|
71
|
-
import {
|
|
72
|
-
import {
|
|
4
|
+
import { __rest } from 'tslib';
|
|
5
|
+
import ReactDOM, { createPortal } from 'react-dom';
|
|
6
|
+
import { defineCustomElement as defineCustomElement$1 } from '@ionic/core/components/ion-accordion.js';
|
|
7
|
+
import { defineCustomElement as defineCustomElement$2 } from '@ionic/core/components/ion-accordion-group.js';
|
|
8
|
+
import { defineCustomElement as defineCustomElement$3 } from '@ionic/core/components/ion-avatar.js';
|
|
9
|
+
import { defineCustomElement as defineCustomElement$4 } from '@ionic/core/components/ion-backdrop.js';
|
|
10
|
+
import { defineCustomElement as defineCustomElement$5 } from '@ionic/core/components/ion-badge.js';
|
|
11
|
+
import { defineCustomElement as defineCustomElement$6 } from '@ionic/core/components/ion-breadcrumbs.js';
|
|
12
|
+
import { defineCustomElement as defineCustomElement$7 } from '@ionic/core/components/ion-buttons.js';
|
|
13
|
+
import { defineCustomElement as defineCustomElement$8 } from '@ionic/core/components/ion-card-content.js';
|
|
14
|
+
import { defineCustomElement as defineCustomElement$9 } from '@ionic/core/components/ion-card-header.js';
|
|
15
|
+
import { defineCustomElement as defineCustomElement$a } from '@ionic/core/components/ion-card-subtitle.js';
|
|
16
|
+
import { defineCustomElement as defineCustomElement$b } from '@ionic/core/components/ion-card-title.js';
|
|
17
|
+
import { defineCustomElement as defineCustomElement$c } from '@ionic/core/components/ion-checkbox.js';
|
|
18
|
+
import { defineCustomElement as defineCustomElement$d } from '@ionic/core/components/ion-chip.js';
|
|
19
|
+
import { defineCustomElement as defineCustomElement$e } from '@ionic/core/components/ion-col.js';
|
|
20
|
+
import { defineCustomElement as defineCustomElement$f } from '@ionic/core/components/ion-content.js';
|
|
21
|
+
import { defineCustomElement as defineCustomElement$g } from '@ionic/core/components/ion-datetime.js';
|
|
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-password-toggle.js';
|
|
33
|
+
import { defineCustomElement as defineCustomElement$s } from '@ionic/core/components/ion-item-divider.js';
|
|
34
|
+
import { defineCustomElement as defineCustomElement$t } from '@ionic/core/components/ion-item-group.js';
|
|
35
|
+
import { defineCustomElement as defineCustomElement$u } from '@ionic/core/components/ion-item-options.js';
|
|
36
|
+
import { defineCustomElement as defineCustomElement$v } from '@ionic/core/components/ion-item-sliding.js';
|
|
37
|
+
import { defineCustomElement as defineCustomElement$w } from '@ionic/core/components/ion-label.js';
|
|
38
|
+
import { defineCustomElement as defineCustomElement$x } from '@ionic/core/components/ion-list.js';
|
|
39
|
+
import { defineCustomElement as defineCustomElement$y } from '@ionic/core/components/ion-list-header.js';
|
|
40
|
+
import { defineCustomElement as defineCustomElement$z } from '@ionic/core/components/ion-menu.js';
|
|
41
|
+
import { defineCustomElement as defineCustomElement$A } from '@ionic/core/components/ion-menu-button.js';
|
|
42
|
+
import { defineCustomElement as defineCustomElement$B } from '@ionic/core/components/ion-menu-toggle.js';
|
|
43
|
+
import { defineCustomElement as defineCustomElement$1i } from '@ionic/core/components/ion-nav.js';
|
|
44
|
+
import { defineCustomElement as defineCustomElement$C } from '@ionic/core/components/ion-nav-link.js';
|
|
45
|
+
import { defineCustomElement as defineCustomElement$D } from '@ionic/core/components/ion-note.js';
|
|
46
|
+
import { defineCustomElement as defineCustomElement$E } from '@ionic/core/components/ion-picker.js';
|
|
47
|
+
import { defineCustomElement as defineCustomElement$F } from '@ionic/core/components/ion-picker-column.js';
|
|
48
|
+
import { defineCustomElement as defineCustomElement$G } from '@ionic/core/components/ion-picker-column-option.js';
|
|
49
|
+
import { defineCustomElement as defineCustomElement$H } from '@ionic/core/components/ion-progress-bar.js';
|
|
50
|
+
import { defineCustomElement as defineCustomElement$I } from '@ionic/core/components/ion-radio.js';
|
|
51
|
+
import { defineCustomElement as defineCustomElement$J } from '@ionic/core/components/ion-radio-group.js';
|
|
52
|
+
import { defineCustomElement as defineCustomElement$K } from '@ionic/core/components/ion-range.js';
|
|
53
|
+
import { defineCustomElement as defineCustomElement$L } from '@ionic/core/components/ion-refresher.js';
|
|
54
|
+
import { defineCustomElement as defineCustomElement$M } from '@ionic/core/components/ion-refresher-content.js';
|
|
55
|
+
import { defineCustomElement as defineCustomElement$N } from '@ionic/core/components/ion-reorder.js';
|
|
56
|
+
import { defineCustomElement as defineCustomElement$O } from '@ionic/core/components/ion-reorder-group.js';
|
|
57
|
+
import { defineCustomElement as defineCustomElement$P } from '@ionic/core/components/ion-ripple-effect.js';
|
|
58
|
+
import { defineCustomElement as defineCustomElement$Q } from '@ionic/core/components/ion-row.js';
|
|
59
|
+
import { defineCustomElement as defineCustomElement$R } from '@ionic/core/components/ion-searchbar.js';
|
|
60
|
+
import { defineCustomElement as defineCustomElement$S } from '@ionic/core/components/ion-segment.js';
|
|
61
|
+
import { defineCustomElement as defineCustomElement$T } from '@ionic/core/components/ion-segment-button.js';
|
|
62
|
+
import { defineCustomElement as defineCustomElement$U } from '@ionic/core/components/ion-select.js';
|
|
63
|
+
import { defineCustomElement as defineCustomElement$V } from '@ionic/core/components/ion-select-option.js';
|
|
64
|
+
import { defineCustomElement as defineCustomElement$W } from '@ionic/core/components/ion-skeleton-text.js';
|
|
65
|
+
import { defineCustomElement as defineCustomElement$X } from '@ionic/core/components/ion-spinner.js';
|
|
66
|
+
import { defineCustomElement as defineCustomElement$Y } from '@ionic/core/components/ion-split-pane.js';
|
|
67
|
+
import { defineCustomElement as defineCustomElement$Z } from '@ionic/core/components/ion-tab.js';
|
|
68
|
+
import { defineCustomElement as defineCustomElement$_ } from '@ionic/core/components/ion-text.js';
|
|
69
|
+
import { defineCustomElement as defineCustomElement$$ } from '@ionic/core/components/ion-textarea.js';
|
|
70
|
+
import { defineCustomElement as defineCustomElement$10 } from '@ionic/core/components/ion-thumbnail.js';
|
|
71
|
+
import { defineCustomElement as defineCustomElement$11 } from '@ionic/core/components/ion-title.js';
|
|
72
|
+
import { defineCustomElement as defineCustomElement$12 } from '@ionic/core/components/ion-toggle.js';
|
|
73
|
+
import { defineCustomElement as defineCustomElement$13 } from '@ionic/core/components/ion-toolbar.js';
|
|
73
74
|
import { IonBreadcrumb as IonBreadcrumb$1 } from '@ionic/core/components/ion-breadcrumb.js';
|
|
74
75
|
import { IonButton as IonButton$1 } from '@ionic/core/components/ion-button.js';
|
|
75
76
|
import { IonCard as IonCard$1 } from '@ionic/core/components/ion-card.js';
|
|
@@ -77,7 +78,6 @@ import { IonFabButton as IonFabButton$1 } from '@ionic/core/components/ion-fab-b
|
|
|
77
78
|
import { IonItemOption as IonItemOption$1 } from '@ionic/core/components/ion-item-option.js';
|
|
78
79
|
import { IonItem as IonItem$1 } from '@ionic/core/components/ion-item.js';
|
|
79
80
|
import { IonRouterLink as IonRouterLink$1 } from '@ionic/core/components/ion-router-link.js';
|
|
80
|
-
import { __rest } from 'tslib';
|
|
81
81
|
import { defineCustomElement as defineCustomElement$14 } from '@ionic/core/components/ion-alert.js';
|
|
82
82
|
import { defineCustomElement as defineCustomElement$15 } from '@ionic/core/components/ion-loading.js';
|
|
83
83
|
import { defineCustomElement as defineCustomElement$16 } from '@ionic/core/components/ion-toast.js';
|
|
@@ -85,12 +85,12 @@ import { defineCustomElement as defineCustomElement$17 } from '@ionic/core/compo
|
|
|
85
85
|
import { defineCustomElement as defineCustomElement$18 } from '@ionic/core/components/ion-action-sheet.js';
|
|
86
86
|
import { defineCustomElement as defineCustomElement$19 } from '@ionic/core/components/ion-modal.js';
|
|
87
87
|
import { defineCustomElement as defineCustomElement$1a } from '@ionic/core/components/ion-popover.js';
|
|
88
|
-
import
|
|
89
|
-
import { defineCustomElement as defineCustomElement$1g } from '@ionic/core/components/ion-
|
|
90
|
-
import { defineCustomElement as defineCustomElement$1f } from '@ionic/core/components/ion-back-button.js';
|
|
88
|
+
import { defineCustomElement as defineCustomElement$1h } from '@ionic/core/components/ion-app.js';
|
|
89
|
+
import { defineCustomElement as defineCustomElement$1g } from '@ionic/core/components/ion-back-button.js';
|
|
91
90
|
import { defineCustomElement as defineCustomElement$1c } from '@ionic/core/components/ion-router-outlet.js';
|
|
92
91
|
import { defineCustomElement as defineCustomElement$1b } from '@ionic/core/components/ion-tab-bar.js';
|
|
93
92
|
import { defineCustomElement as defineCustomElement$1e } from '@ionic/core/components/ion-tab-button.js';
|
|
93
|
+
import { defineCustomElement as defineCustomElement$1f } from '@ionic/core/components/ion-tabs.js';
|
|
94
94
|
import { defineCustomElement as defineCustomElement$1d } from 'ionicons/components/ion-icon.js';
|
|
95
95
|
|
|
96
96
|
const IonLifeCycleContext = /*@__PURE__*/ React.createContext({
|
|
@@ -410,543 +410,6 @@ const NavContext = /*@__PURE__*/ React.createContext({
|
|
|
410
410
|
},
|
|
411
411
|
});
|
|
412
412
|
|
|
413
|
-
/**
|
|
414
|
-
* This file was automatically generated by the Stencil React Output Target.
|
|
415
|
-
* Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
|
|
416
|
-
*/
|
|
417
|
-
const IonAccordion = /*@__PURE__*/ createComponent({
|
|
418
|
-
tagName: 'ion-accordion',
|
|
419
|
-
elementClass: IonAccordion$1,
|
|
420
|
-
react: React,
|
|
421
|
-
events: {},
|
|
422
|
-
defineCustomElement: defineCustomElement$1
|
|
423
|
-
});
|
|
424
|
-
const IonAccordionGroup = /*@__PURE__*/ createComponent({
|
|
425
|
-
tagName: 'ion-accordion-group',
|
|
426
|
-
elementClass: IonAccordionGroup$1,
|
|
427
|
-
react: React,
|
|
428
|
-
events: { onIonChange: 'ionChange' },
|
|
429
|
-
defineCustomElement: defineCustomElement$2
|
|
430
|
-
});
|
|
431
|
-
const IonAvatar = /*@__PURE__*/ createComponent({
|
|
432
|
-
tagName: 'ion-avatar',
|
|
433
|
-
elementClass: IonAvatar$1,
|
|
434
|
-
react: React,
|
|
435
|
-
events: {},
|
|
436
|
-
defineCustomElement: defineCustomElement$3
|
|
437
|
-
});
|
|
438
|
-
const IonBackdrop = /*@__PURE__*/ createComponent({
|
|
439
|
-
tagName: 'ion-backdrop',
|
|
440
|
-
elementClass: IonBackdrop$1,
|
|
441
|
-
react: React,
|
|
442
|
-
events: { onIonBackdropTap: 'ionBackdropTap' },
|
|
443
|
-
defineCustomElement: defineCustomElement$4
|
|
444
|
-
});
|
|
445
|
-
const IonBadge = /*@__PURE__*/ createComponent({
|
|
446
|
-
tagName: 'ion-badge',
|
|
447
|
-
elementClass: IonBadge$1,
|
|
448
|
-
react: React,
|
|
449
|
-
events: {},
|
|
450
|
-
defineCustomElement: defineCustomElement$5
|
|
451
|
-
});
|
|
452
|
-
const IonBreadcrumbs = /*@__PURE__*/ createComponent({
|
|
453
|
-
tagName: 'ion-breadcrumbs',
|
|
454
|
-
elementClass: IonBreadcrumbs$1,
|
|
455
|
-
react: React,
|
|
456
|
-
events: { onIonCollapsedClick: 'ionCollapsedClick' },
|
|
457
|
-
defineCustomElement: defineCustomElement$6
|
|
458
|
-
});
|
|
459
|
-
const IonButtons = /*@__PURE__*/ createComponent({
|
|
460
|
-
tagName: 'ion-buttons',
|
|
461
|
-
elementClass: IonButtons$1,
|
|
462
|
-
react: React,
|
|
463
|
-
events: {},
|
|
464
|
-
defineCustomElement: defineCustomElement$7
|
|
465
|
-
});
|
|
466
|
-
const IonCardContent = /*@__PURE__*/ createComponent({
|
|
467
|
-
tagName: 'ion-card-content',
|
|
468
|
-
elementClass: IonCardContent$1,
|
|
469
|
-
react: React,
|
|
470
|
-
events: {},
|
|
471
|
-
defineCustomElement: defineCustomElement$8
|
|
472
|
-
});
|
|
473
|
-
const IonCardHeader = /*@__PURE__*/ createComponent({
|
|
474
|
-
tagName: 'ion-card-header',
|
|
475
|
-
elementClass: IonCardHeader$1,
|
|
476
|
-
react: React,
|
|
477
|
-
events: {},
|
|
478
|
-
defineCustomElement: defineCustomElement$9
|
|
479
|
-
});
|
|
480
|
-
const IonCardSubtitle = /*@__PURE__*/ createComponent({
|
|
481
|
-
tagName: 'ion-card-subtitle',
|
|
482
|
-
elementClass: IonCardSubtitle$1,
|
|
483
|
-
react: React,
|
|
484
|
-
events: {},
|
|
485
|
-
defineCustomElement: defineCustomElement$a
|
|
486
|
-
});
|
|
487
|
-
const IonCardTitle = /*@__PURE__*/ createComponent({
|
|
488
|
-
tagName: 'ion-card-title',
|
|
489
|
-
elementClass: IonCardTitle$1,
|
|
490
|
-
react: React,
|
|
491
|
-
events: {},
|
|
492
|
-
defineCustomElement: defineCustomElement$b
|
|
493
|
-
});
|
|
494
|
-
const IonCheckbox = /*@__PURE__*/ createComponent({
|
|
495
|
-
tagName: 'ion-checkbox',
|
|
496
|
-
elementClass: IonCheckbox$1,
|
|
497
|
-
react: React,
|
|
498
|
-
events: {
|
|
499
|
-
onIonChange: 'ionChange',
|
|
500
|
-
onIonFocus: 'ionFocus',
|
|
501
|
-
onIonBlur: 'ionBlur'
|
|
502
|
-
},
|
|
503
|
-
defineCustomElement: defineCustomElement$c
|
|
504
|
-
});
|
|
505
|
-
const IonChip = /*@__PURE__*/ createComponent({
|
|
506
|
-
tagName: 'ion-chip',
|
|
507
|
-
elementClass: IonChip$1,
|
|
508
|
-
react: React,
|
|
509
|
-
events: {},
|
|
510
|
-
defineCustomElement: defineCustomElement$d
|
|
511
|
-
});
|
|
512
|
-
const IonCol = /*@__PURE__*/ createComponent({
|
|
513
|
-
tagName: 'ion-col',
|
|
514
|
-
elementClass: IonCol$1,
|
|
515
|
-
react: React,
|
|
516
|
-
events: {},
|
|
517
|
-
defineCustomElement: defineCustomElement$e
|
|
518
|
-
});
|
|
519
|
-
const IonContent = /*@__PURE__*/ createComponent({
|
|
520
|
-
tagName: 'ion-content',
|
|
521
|
-
elementClass: IonContent$1,
|
|
522
|
-
react: React,
|
|
523
|
-
events: {
|
|
524
|
-
onIonScrollStart: 'ionScrollStart',
|
|
525
|
-
onIonScroll: 'ionScroll',
|
|
526
|
-
onIonScrollEnd: 'ionScrollEnd'
|
|
527
|
-
},
|
|
528
|
-
defineCustomElement: defineCustomElement$f
|
|
529
|
-
});
|
|
530
|
-
const IonDatetime = /*@__PURE__*/ createComponent({
|
|
531
|
-
tagName: 'ion-datetime',
|
|
532
|
-
elementClass: IonDatetime$1,
|
|
533
|
-
react: React,
|
|
534
|
-
events: {
|
|
535
|
-
onIonCancel: 'ionCancel',
|
|
536
|
-
onIonChange: 'ionChange',
|
|
537
|
-
onIonFocus: 'ionFocus',
|
|
538
|
-
onIonBlur: 'ionBlur'
|
|
539
|
-
},
|
|
540
|
-
defineCustomElement: defineCustomElement$g
|
|
541
|
-
});
|
|
542
|
-
const IonDatetimeButton = /*@__PURE__*/ createComponent({
|
|
543
|
-
tagName: 'ion-datetime-button',
|
|
544
|
-
elementClass: IonDatetimeButton$1,
|
|
545
|
-
react: React,
|
|
546
|
-
events: {},
|
|
547
|
-
defineCustomElement: defineCustomElement$h
|
|
548
|
-
});
|
|
549
|
-
const IonFab = /*@__PURE__*/ createComponent({
|
|
550
|
-
tagName: 'ion-fab',
|
|
551
|
-
elementClass: IonFab$1,
|
|
552
|
-
react: React,
|
|
553
|
-
events: {},
|
|
554
|
-
defineCustomElement: defineCustomElement$i
|
|
555
|
-
});
|
|
556
|
-
const IonFabList = /*@__PURE__*/ createComponent({
|
|
557
|
-
tagName: 'ion-fab-list',
|
|
558
|
-
elementClass: IonFabList$1,
|
|
559
|
-
react: React,
|
|
560
|
-
events: {},
|
|
561
|
-
defineCustomElement: defineCustomElement$j
|
|
562
|
-
});
|
|
563
|
-
const IonFooter = /*@__PURE__*/ createComponent({
|
|
564
|
-
tagName: 'ion-footer',
|
|
565
|
-
elementClass: IonFooter$1,
|
|
566
|
-
react: React,
|
|
567
|
-
events: {},
|
|
568
|
-
defineCustomElement: defineCustomElement$k
|
|
569
|
-
});
|
|
570
|
-
const IonGrid = /*@__PURE__*/ createComponent({
|
|
571
|
-
tagName: 'ion-grid',
|
|
572
|
-
elementClass: IonGrid$1,
|
|
573
|
-
react: React,
|
|
574
|
-
events: {},
|
|
575
|
-
defineCustomElement: defineCustomElement$l
|
|
576
|
-
});
|
|
577
|
-
const IonHeader = /*@__PURE__*/ createComponent({
|
|
578
|
-
tagName: 'ion-header',
|
|
579
|
-
elementClass: IonHeader$1,
|
|
580
|
-
react: React,
|
|
581
|
-
events: {},
|
|
582
|
-
defineCustomElement: defineCustomElement$m
|
|
583
|
-
});
|
|
584
|
-
const IonImg = /*@__PURE__*/ createComponent({
|
|
585
|
-
tagName: 'ion-img',
|
|
586
|
-
elementClass: IonImg$1,
|
|
587
|
-
react: React,
|
|
588
|
-
events: {
|
|
589
|
-
onIonImgWillLoad: 'ionImgWillLoad',
|
|
590
|
-
onIonImgDidLoad: 'ionImgDidLoad',
|
|
591
|
-
onIonError: 'ionError'
|
|
592
|
-
},
|
|
593
|
-
defineCustomElement: defineCustomElement$n
|
|
594
|
-
});
|
|
595
|
-
const IonInfiniteScroll = /*@__PURE__*/ createComponent({
|
|
596
|
-
tagName: 'ion-infinite-scroll',
|
|
597
|
-
elementClass: IonInfiniteScroll$1,
|
|
598
|
-
react: React,
|
|
599
|
-
events: { onIonInfinite: 'ionInfinite' },
|
|
600
|
-
defineCustomElement: defineCustomElement$o
|
|
601
|
-
});
|
|
602
|
-
const IonInfiniteScrollContent = /*@__PURE__*/ createComponent({
|
|
603
|
-
tagName: 'ion-infinite-scroll-content',
|
|
604
|
-
elementClass: IonInfiniteScrollContent$1,
|
|
605
|
-
react: React,
|
|
606
|
-
events: {},
|
|
607
|
-
defineCustomElement: defineCustomElement$p
|
|
608
|
-
});
|
|
609
|
-
const IonInput = /*@__PURE__*/ createComponent({
|
|
610
|
-
tagName: 'ion-input',
|
|
611
|
-
elementClass: IonInput$1,
|
|
612
|
-
react: React,
|
|
613
|
-
events: {
|
|
614
|
-
onIonInput: 'ionInput',
|
|
615
|
-
onIonChange: 'ionChange',
|
|
616
|
-
onIonBlur: 'ionBlur',
|
|
617
|
-
onIonFocus: 'ionFocus'
|
|
618
|
-
},
|
|
619
|
-
defineCustomElement: defineCustomElement$q
|
|
620
|
-
});
|
|
621
|
-
const IonInputPasswordToggle = /*@__PURE__*/ createComponent({
|
|
622
|
-
tagName: 'ion-input-password-toggle',
|
|
623
|
-
elementClass: IonInputPasswordToggle$1,
|
|
624
|
-
react: React,
|
|
625
|
-
events: {},
|
|
626
|
-
defineCustomElement: defineCustomElement$r
|
|
627
|
-
});
|
|
628
|
-
const IonItemDivider = /*@__PURE__*/ createComponent({
|
|
629
|
-
tagName: 'ion-item-divider',
|
|
630
|
-
elementClass: IonItemDivider$1,
|
|
631
|
-
react: React,
|
|
632
|
-
events: {},
|
|
633
|
-
defineCustomElement: defineCustomElement$s
|
|
634
|
-
});
|
|
635
|
-
const IonItemGroup = /*@__PURE__*/ createComponent({
|
|
636
|
-
tagName: 'ion-item-group',
|
|
637
|
-
elementClass: IonItemGroup$1,
|
|
638
|
-
react: React,
|
|
639
|
-
events: {},
|
|
640
|
-
defineCustomElement: defineCustomElement$t
|
|
641
|
-
});
|
|
642
|
-
const IonItemOptions = /*@__PURE__*/ createComponent({
|
|
643
|
-
tagName: 'ion-item-options',
|
|
644
|
-
elementClass: IonItemOptions$1,
|
|
645
|
-
react: React,
|
|
646
|
-
events: { onIonSwipe: 'ionSwipe' },
|
|
647
|
-
defineCustomElement: defineCustomElement$u
|
|
648
|
-
});
|
|
649
|
-
const IonItemSliding = /*@__PURE__*/ createComponent({
|
|
650
|
-
tagName: 'ion-item-sliding',
|
|
651
|
-
elementClass: IonItemSliding$1,
|
|
652
|
-
react: React,
|
|
653
|
-
events: { onIonDrag: 'ionDrag' },
|
|
654
|
-
defineCustomElement: defineCustomElement$v
|
|
655
|
-
});
|
|
656
|
-
const IonLabel = /*@__PURE__*/ createComponent({
|
|
657
|
-
tagName: 'ion-label',
|
|
658
|
-
elementClass: IonLabel$1,
|
|
659
|
-
react: React,
|
|
660
|
-
events: {},
|
|
661
|
-
defineCustomElement: defineCustomElement$w
|
|
662
|
-
});
|
|
663
|
-
const IonList = /*@__PURE__*/ createComponent({
|
|
664
|
-
tagName: 'ion-list',
|
|
665
|
-
elementClass: IonList$1,
|
|
666
|
-
react: React,
|
|
667
|
-
events: {},
|
|
668
|
-
defineCustomElement: defineCustomElement$x
|
|
669
|
-
});
|
|
670
|
-
const IonListHeader = /*@__PURE__*/ createComponent({
|
|
671
|
-
tagName: 'ion-list-header',
|
|
672
|
-
elementClass: IonListHeader$1,
|
|
673
|
-
react: React,
|
|
674
|
-
events: {},
|
|
675
|
-
defineCustomElement: defineCustomElement$y
|
|
676
|
-
});
|
|
677
|
-
const IonMenu = /*@__PURE__*/ createComponent({
|
|
678
|
-
tagName: 'ion-menu',
|
|
679
|
-
elementClass: IonMenu$1,
|
|
680
|
-
react: React,
|
|
681
|
-
events: {
|
|
682
|
-
onIonWillOpen: 'ionWillOpen',
|
|
683
|
-
onIonWillClose: 'ionWillClose',
|
|
684
|
-
onIonDidOpen: 'ionDidOpen',
|
|
685
|
-
onIonDidClose: 'ionDidClose'
|
|
686
|
-
},
|
|
687
|
-
defineCustomElement: defineCustomElement$z
|
|
688
|
-
});
|
|
689
|
-
const IonMenuButton = /*@__PURE__*/ createComponent({
|
|
690
|
-
tagName: 'ion-menu-button',
|
|
691
|
-
elementClass: IonMenuButton$1,
|
|
692
|
-
react: React,
|
|
693
|
-
events: {},
|
|
694
|
-
defineCustomElement: defineCustomElement$A
|
|
695
|
-
});
|
|
696
|
-
const IonMenuToggle = /*@__PURE__*/ createComponent({
|
|
697
|
-
tagName: 'ion-menu-toggle',
|
|
698
|
-
elementClass: IonMenuToggle$1,
|
|
699
|
-
react: React,
|
|
700
|
-
events: {},
|
|
701
|
-
defineCustomElement: defineCustomElement$B
|
|
702
|
-
});
|
|
703
|
-
const IonNavLink = /*@__PURE__*/ createComponent({
|
|
704
|
-
tagName: 'ion-nav-link',
|
|
705
|
-
elementClass: IonNavLink$1,
|
|
706
|
-
react: React,
|
|
707
|
-
events: {},
|
|
708
|
-
defineCustomElement: defineCustomElement$C
|
|
709
|
-
});
|
|
710
|
-
const IonNote = /*@__PURE__*/ createComponent({
|
|
711
|
-
tagName: 'ion-note',
|
|
712
|
-
elementClass: IonNote$1,
|
|
713
|
-
react: React,
|
|
714
|
-
events: {},
|
|
715
|
-
defineCustomElement: defineCustomElement$D
|
|
716
|
-
});
|
|
717
|
-
const IonPicker = /*@__PURE__*/ createComponent({
|
|
718
|
-
tagName: 'ion-picker',
|
|
719
|
-
elementClass: IonPicker$1,
|
|
720
|
-
react: React,
|
|
721
|
-
events: {},
|
|
722
|
-
defineCustomElement: defineCustomElement$E
|
|
723
|
-
});
|
|
724
|
-
const IonPickerColumn = /*@__PURE__*/ createComponent({
|
|
725
|
-
tagName: 'ion-picker-column',
|
|
726
|
-
elementClass: IonPickerColumn$1,
|
|
727
|
-
react: React,
|
|
728
|
-
events: { onIonChange: 'ionChange' },
|
|
729
|
-
defineCustomElement: defineCustomElement$F
|
|
730
|
-
});
|
|
731
|
-
const IonPickerColumnOption = /*@__PURE__*/ createComponent({
|
|
732
|
-
tagName: 'ion-picker-column-option',
|
|
733
|
-
elementClass: IonPickerColumnOption$1,
|
|
734
|
-
react: React,
|
|
735
|
-
events: {},
|
|
736
|
-
defineCustomElement: defineCustomElement$G
|
|
737
|
-
});
|
|
738
|
-
const IonProgressBar = /*@__PURE__*/ createComponent({
|
|
739
|
-
tagName: 'ion-progress-bar',
|
|
740
|
-
elementClass: IonProgressBar$1,
|
|
741
|
-
react: React,
|
|
742
|
-
events: {},
|
|
743
|
-
defineCustomElement: defineCustomElement$H
|
|
744
|
-
});
|
|
745
|
-
const IonRadio = /*@__PURE__*/ createComponent({
|
|
746
|
-
tagName: 'ion-radio',
|
|
747
|
-
elementClass: IonRadio$1,
|
|
748
|
-
react: React,
|
|
749
|
-
events: {
|
|
750
|
-
onIonFocus: 'ionFocus',
|
|
751
|
-
onIonBlur: 'ionBlur'
|
|
752
|
-
},
|
|
753
|
-
defineCustomElement: defineCustomElement$I
|
|
754
|
-
});
|
|
755
|
-
const IonRadioGroup = /*@__PURE__*/ createComponent({
|
|
756
|
-
tagName: 'ion-radio-group',
|
|
757
|
-
elementClass: IonRadioGroup$1,
|
|
758
|
-
react: React,
|
|
759
|
-
events: { onIonChange: 'ionChange' },
|
|
760
|
-
defineCustomElement: defineCustomElement$J
|
|
761
|
-
});
|
|
762
|
-
const IonRange = /*@__PURE__*/ createComponent({
|
|
763
|
-
tagName: 'ion-range',
|
|
764
|
-
elementClass: IonRange$1,
|
|
765
|
-
react: React,
|
|
766
|
-
events: {
|
|
767
|
-
onIonChange: 'ionChange',
|
|
768
|
-
onIonInput: 'ionInput',
|
|
769
|
-
onIonFocus: 'ionFocus',
|
|
770
|
-
onIonBlur: 'ionBlur',
|
|
771
|
-
onIonKnobMoveStart: 'ionKnobMoveStart',
|
|
772
|
-
onIonKnobMoveEnd: 'ionKnobMoveEnd'
|
|
773
|
-
},
|
|
774
|
-
defineCustomElement: defineCustomElement$K
|
|
775
|
-
});
|
|
776
|
-
const IonRefresher = /*@__PURE__*/ createComponent({
|
|
777
|
-
tagName: 'ion-refresher',
|
|
778
|
-
elementClass: IonRefresher$1,
|
|
779
|
-
react: React,
|
|
780
|
-
events: {
|
|
781
|
-
onIonRefresh: 'ionRefresh',
|
|
782
|
-
onIonPull: 'ionPull',
|
|
783
|
-
onIonStart: 'ionStart'
|
|
784
|
-
},
|
|
785
|
-
defineCustomElement: defineCustomElement$L
|
|
786
|
-
});
|
|
787
|
-
const IonRefresherContent = /*@__PURE__*/ createComponent({
|
|
788
|
-
tagName: 'ion-refresher-content',
|
|
789
|
-
elementClass: IonRefresherContent$1,
|
|
790
|
-
react: React,
|
|
791
|
-
events: {},
|
|
792
|
-
defineCustomElement: defineCustomElement$M
|
|
793
|
-
});
|
|
794
|
-
const IonReorder = /*@__PURE__*/ createComponent({
|
|
795
|
-
tagName: 'ion-reorder',
|
|
796
|
-
elementClass: IonReorder$1,
|
|
797
|
-
react: React,
|
|
798
|
-
events: {},
|
|
799
|
-
defineCustomElement: defineCustomElement$N
|
|
800
|
-
});
|
|
801
|
-
const IonReorderGroup = /*@__PURE__*/ createComponent({
|
|
802
|
-
tagName: 'ion-reorder-group',
|
|
803
|
-
elementClass: IonReorderGroup$1,
|
|
804
|
-
react: React,
|
|
805
|
-
events: { onIonItemReorder: 'ionItemReorder' },
|
|
806
|
-
defineCustomElement: defineCustomElement$O
|
|
807
|
-
});
|
|
808
|
-
const IonRippleEffect = /*@__PURE__*/ createComponent({
|
|
809
|
-
tagName: 'ion-ripple-effect',
|
|
810
|
-
elementClass: IonRippleEffect$1,
|
|
811
|
-
react: React,
|
|
812
|
-
events: {},
|
|
813
|
-
defineCustomElement: defineCustomElement$P
|
|
814
|
-
});
|
|
815
|
-
const IonRow = /*@__PURE__*/ createComponent({
|
|
816
|
-
tagName: 'ion-row',
|
|
817
|
-
elementClass: IonRow$1,
|
|
818
|
-
react: React,
|
|
819
|
-
events: {},
|
|
820
|
-
defineCustomElement: defineCustomElement$Q
|
|
821
|
-
});
|
|
822
|
-
const IonSearchbar = /*@__PURE__*/ createComponent({
|
|
823
|
-
tagName: 'ion-searchbar',
|
|
824
|
-
elementClass: IonSearchbar$1,
|
|
825
|
-
react: React,
|
|
826
|
-
events: {
|
|
827
|
-
onIonInput: 'ionInput',
|
|
828
|
-
onIonChange: 'ionChange',
|
|
829
|
-
onIonCancel: 'ionCancel',
|
|
830
|
-
onIonClear: 'ionClear',
|
|
831
|
-
onIonBlur: 'ionBlur',
|
|
832
|
-
onIonFocus: 'ionFocus'
|
|
833
|
-
},
|
|
834
|
-
defineCustomElement: defineCustomElement$R
|
|
835
|
-
});
|
|
836
|
-
const IonSegment = /*@__PURE__*/ createComponent({
|
|
837
|
-
tagName: 'ion-segment',
|
|
838
|
-
elementClass: IonSegment$1,
|
|
839
|
-
react: React,
|
|
840
|
-
events: { onIonChange: 'ionChange' },
|
|
841
|
-
defineCustomElement: defineCustomElement$S
|
|
842
|
-
});
|
|
843
|
-
const IonSegmentButton = /*@__PURE__*/ createComponent({
|
|
844
|
-
tagName: 'ion-segment-button',
|
|
845
|
-
elementClass: IonSegmentButton$1,
|
|
846
|
-
react: React,
|
|
847
|
-
events: {},
|
|
848
|
-
defineCustomElement: defineCustomElement$T
|
|
849
|
-
});
|
|
850
|
-
const IonSelect = /*@__PURE__*/ createComponent({
|
|
851
|
-
tagName: 'ion-select',
|
|
852
|
-
elementClass: IonSelect$1,
|
|
853
|
-
react: React,
|
|
854
|
-
events: {
|
|
855
|
-
onIonChange: 'ionChange',
|
|
856
|
-
onIonCancel: 'ionCancel',
|
|
857
|
-
onIonDismiss: 'ionDismiss',
|
|
858
|
-
onIonFocus: 'ionFocus',
|
|
859
|
-
onIonBlur: 'ionBlur'
|
|
860
|
-
},
|
|
861
|
-
defineCustomElement: defineCustomElement$U
|
|
862
|
-
});
|
|
863
|
-
const IonSelectOption = /*@__PURE__*/ createComponent({
|
|
864
|
-
tagName: 'ion-select-option',
|
|
865
|
-
elementClass: IonSelectOption$1,
|
|
866
|
-
react: React,
|
|
867
|
-
events: {},
|
|
868
|
-
defineCustomElement: defineCustomElement$V
|
|
869
|
-
});
|
|
870
|
-
const IonSkeletonText = /*@__PURE__*/ createComponent({
|
|
871
|
-
tagName: 'ion-skeleton-text',
|
|
872
|
-
elementClass: IonSkeletonText$1,
|
|
873
|
-
react: React,
|
|
874
|
-
events: {},
|
|
875
|
-
defineCustomElement: defineCustomElement$W
|
|
876
|
-
});
|
|
877
|
-
const IonSpinner = /*@__PURE__*/ createComponent({
|
|
878
|
-
tagName: 'ion-spinner',
|
|
879
|
-
elementClass: IonSpinner$1,
|
|
880
|
-
react: React,
|
|
881
|
-
events: {},
|
|
882
|
-
defineCustomElement: defineCustomElement$X
|
|
883
|
-
});
|
|
884
|
-
const IonSplitPane = /*@__PURE__*/ createComponent({
|
|
885
|
-
tagName: 'ion-split-pane',
|
|
886
|
-
elementClass: IonSplitPane$1,
|
|
887
|
-
react: React,
|
|
888
|
-
events: { onIonSplitPaneVisible: 'ionSplitPaneVisible' },
|
|
889
|
-
defineCustomElement: defineCustomElement$Y
|
|
890
|
-
});
|
|
891
|
-
const IonTab = /*@__PURE__*/ createComponent({
|
|
892
|
-
tagName: 'ion-tab',
|
|
893
|
-
elementClass: IonTab$1,
|
|
894
|
-
react: React,
|
|
895
|
-
events: {},
|
|
896
|
-
defineCustomElement: defineCustomElement$Z
|
|
897
|
-
});
|
|
898
|
-
const IonText = /*@__PURE__*/ createComponent({
|
|
899
|
-
tagName: 'ion-text',
|
|
900
|
-
elementClass: IonText$1,
|
|
901
|
-
react: React,
|
|
902
|
-
events: {},
|
|
903
|
-
defineCustomElement: defineCustomElement$_
|
|
904
|
-
});
|
|
905
|
-
const IonTextarea = /*@__PURE__*/ createComponent({
|
|
906
|
-
tagName: 'ion-textarea',
|
|
907
|
-
elementClass: IonTextarea$1,
|
|
908
|
-
react: React,
|
|
909
|
-
events: {
|
|
910
|
-
onIonChange: 'ionChange',
|
|
911
|
-
onIonInput: 'ionInput',
|
|
912
|
-
onIonBlur: 'ionBlur',
|
|
913
|
-
onIonFocus: 'ionFocus'
|
|
914
|
-
},
|
|
915
|
-
defineCustomElement: defineCustomElement$$
|
|
916
|
-
});
|
|
917
|
-
const IonThumbnail = /*@__PURE__*/ createComponent({
|
|
918
|
-
tagName: 'ion-thumbnail',
|
|
919
|
-
elementClass: IonThumbnail$1,
|
|
920
|
-
react: React,
|
|
921
|
-
events: {},
|
|
922
|
-
defineCustomElement: defineCustomElement$10
|
|
923
|
-
});
|
|
924
|
-
const IonTitle = /*@__PURE__*/ createComponent({
|
|
925
|
-
tagName: 'ion-title',
|
|
926
|
-
elementClass: IonTitle$1,
|
|
927
|
-
react: React,
|
|
928
|
-
events: {},
|
|
929
|
-
defineCustomElement: defineCustomElement$11
|
|
930
|
-
});
|
|
931
|
-
const IonToggle = /*@__PURE__*/ createComponent({
|
|
932
|
-
tagName: 'ion-toggle',
|
|
933
|
-
elementClass: IonToggle$1,
|
|
934
|
-
react: React,
|
|
935
|
-
events: {
|
|
936
|
-
onIonChange: 'ionChange',
|
|
937
|
-
onIonFocus: 'ionFocus',
|
|
938
|
-
onIonBlur: 'ionBlur'
|
|
939
|
-
},
|
|
940
|
-
defineCustomElement: defineCustomElement$12
|
|
941
|
-
});
|
|
942
|
-
const IonToolbar = /*@__PURE__*/ createComponent({
|
|
943
|
-
tagName: 'ion-toolbar',
|
|
944
|
-
elementClass: IonToolbar$1,
|
|
945
|
-
react: React,
|
|
946
|
-
events: {},
|
|
947
|
-
defineCustomElement: defineCustomElement$13
|
|
948
|
-
});
|
|
949
|
-
|
|
950
413
|
const dashToPascalCase = (str) => str
|
|
951
414
|
.toLowerCase()
|
|
952
415
|
.split('-')
|
|
@@ -1090,6 +553,139 @@ const defineCustomElement = (tagName, customElement) => {
|
|
|
1090
553
|
}
|
|
1091
554
|
};
|
|
1092
555
|
|
|
556
|
+
const createReactComponent = (tagName, ReactComponentContext, manipulatePropsFunction, defineCustomElement) => {
|
|
557
|
+
if (defineCustomElement !== undefined) {
|
|
558
|
+
defineCustomElement();
|
|
559
|
+
}
|
|
560
|
+
const displayName = dashToPascalCase(tagName);
|
|
561
|
+
const ReactComponent = class extends React.Component {
|
|
562
|
+
constructor(props) {
|
|
563
|
+
super(props);
|
|
564
|
+
this.setComponentElRef = (element) => {
|
|
565
|
+
this.componentEl = element;
|
|
566
|
+
};
|
|
567
|
+
}
|
|
568
|
+
componentDidMount() {
|
|
569
|
+
this.componentDidUpdate(this.props);
|
|
570
|
+
}
|
|
571
|
+
componentDidUpdate(prevProps) {
|
|
572
|
+
attachProps(this.componentEl, this.props, prevProps);
|
|
573
|
+
}
|
|
574
|
+
render() {
|
|
575
|
+
const _a = this.props, { children, forwardedRef, style, className, ref } = _a, cProps = __rest(_a, ["children", "forwardedRef", "style", "className", "ref"]);
|
|
576
|
+
let propsToPass = Object.keys(cProps).reduce((acc, name) => {
|
|
577
|
+
const value = cProps[name];
|
|
578
|
+
if (name.indexOf('on') === 0 && name[2] === name[2].toUpperCase()) {
|
|
579
|
+
const eventName = name.substring(2).toLowerCase();
|
|
580
|
+
if (typeof document !== 'undefined' && isCoveredByReact(eventName)) {
|
|
581
|
+
acc[name] = value;
|
|
582
|
+
}
|
|
583
|
+
}
|
|
584
|
+
else {
|
|
585
|
+
// we should only render strings, booleans, and numbers as attrs in html.
|
|
586
|
+
// objects, functions, arrays etc get synced via properties on mount.
|
|
587
|
+
const type = typeof value;
|
|
588
|
+
if (type === 'string' || type === 'boolean' || type === 'number') {
|
|
589
|
+
acc[camelToDashCase(name)] = value;
|
|
590
|
+
}
|
|
591
|
+
}
|
|
592
|
+
return acc;
|
|
593
|
+
}, {});
|
|
594
|
+
if (manipulatePropsFunction) {
|
|
595
|
+
propsToPass = manipulatePropsFunction(this.props, propsToPass);
|
|
596
|
+
}
|
|
597
|
+
const newProps = Object.assign(Object.assign({}, propsToPass), { ref: mergeRefs(forwardedRef, this.setComponentElRef), style });
|
|
598
|
+
/**
|
|
599
|
+
* We use createElement here instead of
|
|
600
|
+
* React.createElement to work around a
|
|
601
|
+
* bug in Vite (https://github.com/vitejs/vite/issues/6104).
|
|
602
|
+
* React.createElement causes all elements to be rendered
|
|
603
|
+
* as <tagname> instead of the actual Web Component.
|
|
604
|
+
*/
|
|
605
|
+
return createElement(tagName, newProps, children);
|
|
606
|
+
}
|
|
607
|
+
static get displayName() {
|
|
608
|
+
return displayName;
|
|
609
|
+
}
|
|
610
|
+
};
|
|
611
|
+
// If context was passed to createReactComponent then conditionally add it to the Component Class
|
|
612
|
+
if (ReactComponentContext) {
|
|
613
|
+
ReactComponent.contextType = ReactComponentContext;
|
|
614
|
+
}
|
|
615
|
+
return createForwardRef$1(ReactComponent, displayName);
|
|
616
|
+
};
|
|
617
|
+
|
|
618
|
+
/* eslint-disable */
|
|
619
|
+
/* tslint:disable */
|
|
620
|
+
/* auto-generated react proxies */
|
|
621
|
+
const IonAccordion = /*@__PURE__*/ createReactComponent('ion-accordion', undefined, undefined, defineCustomElement$1);
|
|
622
|
+
const IonAccordionGroup = /*@__PURE__*/ createReactComponent('ion-accordion-group', undefined, undefined, defineCustomElement$2);
|
|
623
|
+
const IonAvatar = /*@__PURE__*/ createReactComponent('ion-avatar', undefined, undefined, defineCustomElement$3);
|
|
624
|
+
const IonBackdrop = /*@__PURE__*/ createReactComponent('ion-backdrop', undefined, undefined, defineCustomElement$4);
|
|
625
|
+
const IonBadge = /*@__PURE__*/ createReactComponent('ion-badge', undefined, undefined, defineCustomElement$5);
|
|
626
|
+
const IonBreadcrumbs = /*@__PURE__*/ createReactComponent('ion-breadcrumbs', undefined, undefined, defineCustomElement$6);
|
|
627
|
+
const IonButtons = /*@__PURE__*/ createReactComponent('ion-buttons', undefined, undefined, defineCustomElement$7);
|
|
628
|
+
const IonCardContent = /*@__PURE__*/ createReactComponent('ion-card-content', undefined, undefined, defineCustomElement$8);
|
|
629
|
+
const IonCardHeader = /*@__PURE__*/ createReactComponent('ion-card-header', undefined, undefined, defineCustomElement$9);
|
|
630
|
+
const IonCardSubtitle = /*@__PURE__*/ createReactComponent('ion-card-subtitle', undefined, undefined, defineCustomElement$a);
|
|
631
|
+
const IonCardTitle = /*@__PURE__*/ createReactComponent('ion-card-title', undefined, undefined, defineCustomElement$b);
|
|
632
|
+
const IonCheckbox = /*@__PURE__*/ createReactComponent('ion-checkbox', undefined, undefined, defineCustomElement$c);
|
|
633
|
+
const IonChip = /*@__PURE__*/ createReactComponent('ion-chip', undefined, undefined, defineCustomElement$d);
|
|
634
|
+
const IonCol = /*@__PURE__*/ createReactComponent('ion-col', undefined, undefined, defineCustomElement$e);
|
|
635
|
+
const IonContent = /*@__PURE__*/ createReactComponent('ion-content', undefined, undefined, defineCustomElement$f);
|
|
636
|
+
const IonDatetime = /*@__PURE__*/ createReactComponent('ion-datetime', undefined, undefined, defineCustomElement$g);
|
|
637
|
+
const IonDatetimeButton = /*@__PURE__*/ createReactComponent('ion-datetime-button', undefined, undefined, defineCustomElement$h);
|
|
638
|
+
const IonFab = /*@__PURE__*/ createReactComponent('ion-fab', undefined, undefined, defineCustomElement$i);
|
|
639
|
+
const IonFabList = /*@__PURE__*/ createReactComponent('ion-fab-list', undefined, undefined, defineCustomElement$j);
|
|
640
|
+
const IonFooter = /*@__PURE__*/ createReactComponent('ion-footer', undefined, undefined, defineCustomElement$k);
|
|
641
|
+
const IonGrid = /*@__PURE__*/ createReactComponent('ion-grid', undefined, undefined, defineCustomElement$l);
|
|
642
|
+
const IonHeader = /*@__PURE__*/ createReactComponent('ion-header', undefined, undefined, defineCustomElement$m);
|
|
643
|
+
const IonImg = /*@__PURE__*/ createReactComponent('ion-img', undefined, undefined, defineCustomElement$n);
|
|
644
|
+
const IonInfiniteScroll = /*@__PURE__*/ createReactComponent('ion-infinite-scroll', undefined, undefined, defineCustomElement$o);
|
|
645
|
+
const IonInfiniteScrollContent = /*@__PURE__*/ createReactComponent('ion-infinite-scroll-content', undefined, undefined, defineCustomElement$p);
|
|
646
|
+
const IonInput = /*@__PURE__*/ createReactComponent('ion-input', undefined, undefined, defineCustomElement$q);
|
|
647
|
+
const IonInputPasswordToggle = /*@__PURE__*/ createReactComponent('ion-input-password-toggle', undefined, undefined, defineCustomElement$r);
|
|
648
|
+
const IonItemDivider = /*@__PURE__*/ createReactComponent('ion-item-divider', undefined, undefined, defineCustomElement$s);
|
|
649
|
+
const IonItemGroup = /*@__PURE__*/ createReactComponent('ion-item-group', undefined, undefined, defineCustomElement$t);
|
|
650
|
+
const IonItemOptions = /*@__PURE__*/ createReactComponent('ion-item-options', undefined, undefined, defineCustomElement$u);
|
|
651
|
+
const IonItemSliding = /*@__PURE__*/ createReactComponent('ion-item-sliding', undefined, undefined, defineCustomElement$v);
|
|
652
|
+
const IonLabel = /*@__PURE__*/ createReactComponent('ion-label', undefined, undefined, defineCustomElement$w);
|
|
653
|
+
const IonList = /*@__PURE__*/ createReactComponent('ion-list', undefined, undefined, defineCustomElement$x);
|
|
654
|
+
const IonListHeader = /*@__PURE__*/ createReactComponent('ion-list-header', undefined, undefined, defineCustomElement$y);
|
|
655
|
+
const IonMenu = /*@__PURE__*/ createReactComponent('ion-menu', undefined, undefined, defineCustomElement$z);
|
|
656
|
+
const IonMenuButton = /*@__PURE__*/ createReactComponent('ion-menu-button', undefined, undefined, defineCustomElement$A);
|
|
657
|
+
const IonMenuToggle = /*@__PURE__*/ createReactComponent('ion-menu-toggle', undefined, undefined, defineCustomElement$B);
|
|
658
|
+
const IonNavLink = /*@__PURE__*/ createReactComponent('ion-nav-link', undefined, undefined, defineCustomElement$C);
|
|
659
|
+
const IonNote = /*@__PURE__*/ createReactComponent('ion-note', undefined, undefined, defineCustomElement$D);
|
|
660
|
+
const IonPicker = /*@__PURE__*/ createReactComponent('ion-picker', undefined, undefined, defineCustomElement$E);
|
|
661
|
+
const IonPickerColumn = /*@__PURE__*/ createReactComponent('ion-picker-column', undefined, undefined, defineCustomElement$F);
|
|
662
|
+
const IonPickerColumnOption = /*@__PURE__*/ createReactComponent('ion-picker-column-option', undefined, undefined, defineCustomElement$G);
|
|
663
|
+
const IonProgressBar = /*@__PURE__*/ createReactComponent('ion-progress-bar', undefined, undefined, defineCustomElement$H);
|
|
664
|
+
const IonRadio = /*@__PURE__*/ createReactComponent('ion-radio', undefined, undefined, defineCustomElement$I);
|
|
665
|
+
const IonRadioGroup = /*@__PURE__*/ createReactComponent('ion-radio-group', undefined, undefined, defineCustomElement$J);
|
|
666
|
+
const IonRange = /*@__PURE__*/ createReactComponent('ion-range', undefined, undefined, defineCustomElement$K);
|
|
667
|
+
const IonRefresher = /*@__PURE__*/ createReactComponent('ion-refresher', undefined, undefined, defineCustomElement$L);
|
|
668
|
+
const IonRefresherContent = /*@__PURE__*/ createReactComponent('ion-refresher-content', undefined, undefined, defineCustomElement$M);
|
|
669
|
+
const IonReorder = /*@__PURE__*/ createReactComponent('ion-reorder', undefined, undefined, defineCustomElement$N);
|
|
670
|
+
const IonReorderGroup = /*@__PURE__*/ createReactComponent('ion-reorder-group', undefined, undefined, defineCustomElement$O);
|
|
671
|
+
const IonRippleEffect = /*@__PURE__*/ createReactComponent('ion-ripple-effect', undefined, undefined, defineCustomElement$P);
|
|
672
|
+
const IonRow = /*@__PURE__*/ createReactComponent('ion-row', undefined, undefined, defineCustomElement$Q);
|
|
673
|
+
const IonSearchbar = /*@__PURE__*/ createReactComponent('ion-searchbar', undefined, undefined, defineCustomElement$R);
|
|
674
|
+
const IonSegment = /*@__PURE__*/ createReactComponent('ion-segment', undefined, undefined, defineCustomElement$S);
|
|
675
|
+
const IonSegmentButton = /*@__PURE__*/ createReactComponent('ion-segment-button', undefined, undefined, defineCustomElement$T);
|
|
676
|
+
const IonSelect = /*@__PURE__*/ createReactComponent('ion-select', undefined, undefined, defineCustomElement$U);
|
|
677
|
+
const IonSelectOption = /*@__PURE__*/ createReactComponent('ion-select-option', undefined, undefined, defineCustomElement$V);
|
|
678
|
+
const IonSkeletonText = /*@__PURE__*/ createReactComponent('ion-skeleton-text', undefined, undefined, defineCustomElement$W);
|
|
679
|
+
const IonSpinner = /*@__PURE__*/ createReactComponent('ion-spinner', undefined, undefined, defineCustomElement$X);
|
|
680
|
+
const IonSplitPane = /*@__PURE__*/ createReactComponent('ion-split-pane', undefined, undefined, defineCustomElement$Y);
|
|
681
|
+
const IonTab = /*@__PURE__*/ createReactComponent('ion-tab', undefined, undefined, defineCustomElement$Z);
|
|
682
|
+
const IonText = /*@__PURE__*/ createReactComponent('ion-text', undefined, undefined, defineCustomElement$_);
|
|
683
|
+
const IonTextarea = /*@__PURE__*/ createReactComponent('ion-textarea', undefined, undefined, defineCustomElement$$);
|
|
684
|
+
const IonThumbnail = /*@__PURE__*/ createReactComponent('ion-thumbnail', undefined, undefined, defineCustomElement$10);
|
|
685
|
+
const IonTitle = /*@__PURE__*/ createReactComponent('ion-title', undefined, undefined, defineCustomElement$11);
|
|
686
|
+
const IonToggle = /*@__PURE__*/ createReactComponent('ion-toggle', undefined, undefined, defineCustomElement$12);
|
|
687
|
+
const IonToolbar = /*@__PURE__*/ createReactComponent('ion-toolbar', undefined, undefined, defineCustomElement$13);
|
|
688
|
+
|
|
1093
689
|
const createForwardRef = (ReactComponent, // TODO(FW-2959): type
|
|
1094
690
|
displayName) => {
|
|
1095
691
|
const forwardRef = (props, ref) => {
|
|
@@ -1477,73 +1073,12 @@ const IonOverlayManager = ({ onAddOverlay, onRemoveOverlay }) => {
|
|
|
1477
1073
|
})));
|
|
1478
1074
|
};
|
|
1479
1075
|
|
|
1480
|
-
const createReactComponent = (tagName, ReactComponentContext, manipulatePropsFunction, defineCustomElement) => {
|
|
1481
|
-
if (defineCustomElement !== undefined) {
|
|
1482
|
-
defineCustomElement();
|
|
1483
|
-
}
|
|
1484
|
-
const displayName = dashToPascalCase(tagName);
|
|
1485
|
-
const ReactComponent = class extends React.Component {
|
|
1486
|
-
constructor(props) {
|
|
1487
|
-
super(props);
|
|
1488
|
-
this.setComponentElRef = (element) => {
|
|
1489
|
-
this.componentEl = element;
|
|
1490
|
-
};
|
|
1491
|
-
}
|
|
1492
|
-
componentDidMount() {
|
|
1493
|
-
this.componentDidUpdate(this.props);
|
|
1494
|
-
}
|
|
1495
|
-
componentDidUpdate(prevProps) {
|
|
1496
|
-
attachProps(this.componentEl, this.props, prevProps);
|
|
1497
|
-
}
|
|
1498
|
-
render() {
|
|
1499
|
-
const _a = this.props, { children, forwardedRef, style, className, ref } = _a, cProps = __rest(_a, ["children", "forwardedRef", "style", "className", "ref"]);
|
|
1500
|
-
let propsToPass = Object.keys(cProps).reduce((acc, name) => {
|
|
1501
|
-
const value = cProps[name];
|
|
1502
|
-
if (name.indexOf('on') === 0 && name[2] === name[2].toUpperCase()) {
|
|
1503
|
-
const eventName = name.substring(2).toLowerCase();
|
|
1504
|
-
if (typeof document !== 'undefined' && isCoveredByReact(eventName)) {
|
|
1505
|
-
acc[name] = value;
|
|
1506
|
-
}
|
|
1507
|
-
}
|
|
1508
|
-
else {
|
|
1509
|
-
// we should only render strings, booleans, and numbers as attrs in html.
|
|
1510
|
-
// objects, functions, arrays etc get synced via properties on mount.
|
|
1511
|
-
const type = typeof value;
|
|
1512
|
-
if (type === 'string' || type === 'boolean' || type === 'number') {
|
|
1513
|
-
acc[camelToDashCase(name)] = value;
|
|
1514
|
-
}
|
|
1515
|
-
}
|
|
1516
|
-
return acc;
|
|
1517
|
-
}, {});
|
|
1518
|
-
if (manipulatePropsFunction) {
|
|
1519
|
-
propsToPass = manipulatePropsFunction(this.props, propsToPass);
|
|
1520
|
-
}
|
|
1521
|
-
const newProps = Object.assign(Object.assign({}, propsToPass), { ref: mergeRefs(forwardedRef, this.setComponentElRef), style });
|
|
1522
|
-
/**
|
|
1523
|
-
* We use createElement here instead of
|
|
1524
|
-
* React.createElement to work around a
|
|
1525
|
-
* bug in Vite (https://github.com/vitejs/vite/issues/6104).
|
|
1526
|
-
* React.createElement causes all elements to be rendered
|
|
1527
|
-
* as <tagname> instead of the actual Web Component.
|
|
1528
|
-
*/
|
|
1529
|
-
return createElement(tagName, newProps, children);
|
|
1530
|
-
}
|
|
1531
|
-
static get displayName() {
|
|
1532
|
-
return displayName;
|
|
1533
|
-
}
|
|
1534
|
-
};
|
|
1535
|
-
// If context was passed to createReactComponent then conditionally add it to the Component Class
|
|
1536
|
-
if (ReactComponentContext) {
|
|
1537
|
-
ReactComponent.contextType = ReactComponentContext;
|
|
1538
|
-
}
|
|
1539
|
-
return createForwardRef$1(ReactComponent, displayName);
|
|
1540
|
-
};
|
|
1541
|
-
|
|
1542
1076
|
const IonTabButtonInner = /*@__PURE__*/ createReactComponent('ion-tab-button', undefined, undefined, defineCustomElement$1e);
|
|
1543
1077
|
const IonTabBarInner = /*@__PURE__*/ createReactComponent('ion-tab-bar', undefined, undefined, defineCustomElement$1b);
|
|
1544
|
-
const
|
|
1078
|
+
const IonTabsInner = /*@__PURE__*/ createReactComponent('ion-tabs', undefined, undefined, defineCustomElement$1f);
|
|
1079
|
+
const IonBackButtonInner = /*@__PURE__*/ createReactComponent('ion-back-button', undefined, undefined, defineCustomElement$1g);
|
|
1545
1080
|
const IonRouterOutletInner = /*@__PURE__*/ createReactComponent('ion-router-outlet', undefined, undefined, defineCustomElement$1c);
|
|
1546
|
-
const IonAppInner = /*@__PURE__*/ createReactComponent('ion-app', undefined, undefined, defineCustomElement$
|
|
1081
|
+
const IonAppInner = /*@__PURE__*/ createReactComponent('ion-app', undefined, undefined, defineCustomElement$1h);
|
|
1547
1082
|
// ionicons
|
|
1548
1083
|
const IonIconInner = /*@__PURE__*/ createReactComponent('ion-icon', undefined, undefined, defineCustomElement$1d);
|
|
1549
1084
|
|
|
@@ -1706,7 +1241,7 @@ const ReactDelegate = (addView, removeView) => {
|
|
|
1706
1241
|
};
|
|
1707
1242
|
};
|
|
1708
1243
|
|
|
1709
|
-
const IonNavInner = createReactComponent('ion-nav', undefined, undefined, defineCustomElement$
|
|
1244
|
+
const IonNavInner = createReactComponent('ion-nav', undefined, undefined, defineCustomElement$1i);
|
|
1710
1245
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1711
1246
|
const IonNavInternal = (_a) => {
|
|
1712
1247
|
var { children, forwardedRef } = _a, restOfProps = __rest(_a, ["children", "forwardedRef"]);
|
|
@@ -1961,9 +1496,15 @@ class IonTabBarUnwrapped extends React.PureComponent {
|
|
|
1961
1496
|
};
|
|
1962
1497
|
}
|
|
1963
1498
|
onTabButtonClick(e, onClickFn) {
|
|
1499
|
+
var _a;
|
|
1964
1500
|
const tappedTab = this.state.tabs[e.detail.tab];
|
|
1965
1501
|
const originalHref = tappedTab.originalHref;
|
|
1966
|
-
|
|
1502
|
+
/**
|
|
1503
|
+
* If the router outlet is not defined, then the tabs is being used
|
|
1504
|
+
* as a basic tab navigation without the router. In this case, we
|
|
1505
|
+
* don't want to update the href else the URL will change.
|
|
1506
|
+
*/
|
|
1507
|
+
const currentHref = ((_a = this.props.routerOutletRef) === null || _a === void 0 ? void 0 : _a.current) ? e.detail.href : '';
|
|
1967
1508
|
const { activeTab: prevActiveTab } = this.state;
|
|
1968
1509
|
if (onClickFn) {
|
|
1969
1510
|
/**
|
|
@@ -2077,23 +1618,36 @@ const IonTabs = /*@__PURE__*/ (() => class extends React.Component {
|
|
|
2077
1618
|
render() {
|
|
2078
1619
|
let outlet;
|
|
2079
1620
|
let tabBar;
|
|
1621
|
+
// Check if IonTabs has any IonTab children
|
|
1622
|
+
let hasTab = false;
|
|
2080
1623
|
const _a = this.props, { className, onIonTabsDidChange, onIonTabsWillChange } = _a, props = __rest(_a, ["className", "onIonTabsDidChange", "onIonTabsWillChange"]);
|
|
2081
1624
|
const children = typeof this.props.children === 'function'
|
|
2082
1625
|
? this.props.children(this.ionTabContextState)
|
|
2083
1626
|
: this.props.children;
|
|
1627
|
+
const outletProps = {
|
|
1628
|
+
ref: this.routerOutletRef,
|
|
1629
|
+
};
|
|
2084
1630
|
React.Children.forEach(children, (child) => {
|
|
2085
1631
|
// eslint-disable-next-line no-prototype-builtins
|
|
2086
1632
|
if (child == null || typeof child !== 'object' || !child.hasOwnProperty('type')) {
|
|
2087
1633
|
return;
|
|
2088
1634
|
}
|
|
2089
1635
|
if (child.type === IonRouterOutlet || child.type.isRouterOutlet) {
|
|
2090
|
-
outlet = React.cloneElement(child);
|
|
1636
|
+
outlet = React.cloneElement(child, outletProps);
|
|
2091
1637
|
}
|
|
2092
1638
|
else if (child.type === Fragment && child.props.children[0].type === IonRouterOutlet) {
|
|
2093
|
-
outlet = child.props.children[0];
|
|
1639
|
+
outlet = React.cloneElement(child.props.children[0], outletProps);
|
|
1640
|
+
}
|
|
1641
|
+
else if (child.type === IonTab) {
|
|
1642
|
+
/**
|
|
1643
|
+
* This indicates that IonTabs will be using a basic tab-based navigation
|
|
1644
|
+
* without the history stack or URL updates associated with the router.
|
|
1645
|
+
*/
|
|
1646
|
+
hasTab = true;
|
|
2094
1647
|
}
|
|
2095
1648
|
let childProps = {
|
|
2096
1649
|
ref: this.tabBarRef,
|
|
1650
|
+
routerOutletRef: this.routerOutletRef,
|
|
2097
1651
|
};
|
|
2098
1652
|
/**
|
|
2099
1653
|
* Only pass these props
|
|
@@ -2116,17 +1670,56 @@ const IonTabs = /*@__PURE__*/ (() => class extends React.Component {
|
|
|
2116
1670
|
tabBar = React.cloneElement(child.props.children[1], childProps);
|
|
2117
1671
|
}
|
|
2118
1672
|
});
|
|
2119
|
-
if (!outlet) {
|
|
2120
|
-
throw new Error('IonTabs must contain an IonRouterOutlet');
|
|
1673
|
+
if (!outlet && !hasTab) {
|
|
1674
|
+
throw new Error('IonTabs must contain an IonRouterOutlet or an IonTab');
|
|
1675
|
+
}
|
|
1676
|
+
if (outlet && hasTab) {
|
|
1677
|
+
throw new Error('IonTabs cannot contain an IonRouterOutlet and an IonTab at the same time');
|
|
2121
1678
|
}
|
|
2122
1679
|
if (!tabBar) {
|
|
2123
1680
|
throw new Error('IonTabs needs a IonTabBar');
|
|
2124
1681
|
}
|
|
1682
|
+
if (hasTab) {
|
|
1683
|
+
return React.createElement(IonTabsInner, Object.assign({}, this.props));
|
|
1684
|
+
}
|
|
1685
|
+
/**
|
|
1686
|
+
* TODO(ROU-11051)
|
|
1687
|
+
*
|
|
1688
|
+
* There is no error handling for the case where there
|
|
1689
|
+
* is no associated Route for the given IonTabButton.
|
|
1690
|
+
*
|
|
1691
|
+
* More investigation is needed to determine how to
|
|
1692
|
+
* handle this to prevent any overwriting of the
|
|
1693
|
+
* IonTabButton's onClick handler and how the routing
|
|
1694
|
+
* is handled.
|
|
1695
|
+
*/
|
|
2125
1696
|
return (React.createElement(IonTabsContext.Provider, { value: this.ionTabContextState }, this.context.hasIonicRouter() ? (React.createElement(PageManager, Object.assign({ className: className ? `${className}` : '', routeInfo: this.context.routeInfo }, props),
|
|
2126
|
-
React.createElement(
|
|
2127
|
-
|
|
2128
|
-
|
|
2129
|
-
|
|
1697
|
+
React.createElement(IonTabsInner, Object.assign({}, this.props), React.Children.map(children, (child) => {
|
|
1698
|
+
if (React.isValidElement(child)) {
|
|
1699
|
+
const isTabBar = child.type === IonTabBar ||
|
|
1700
|
+
child.type.isTabBar ||
|
|
1701
|
+
(child.type === Fragment &&
|
|
1702
|
+
(child.props.children[1].type === IonTabBar || child.props.children[1].type.isTabBar));
|
|
1703
|
+
const isRouterOutlet = child.type === IonRouterOutlet ||
|
|
1704
|
+
child.type.isRouterOutlet ||
|
|
1705
|
+
(child.type === Fragment && child.props.children[0].type === IonRouterOutlet);
|
|
1706
|
+
if (isTabBar) {
|
|
1707
|
+
/**
|
|
1708
|
+
* The modified tabBar needs to be returned to include
|
|
1709
|
+
* the context and the overridden methods.
|
|
1710
|
+
*/
|
|
1711
|
+
return tabBar;
|
|
1712
|
+
}
|
|
1713
|
+
if (isRouterOutlet) {
|
|
1714
|
+
/**
|
|
1715
|
+
* The modified outlet needs to be returned to include
|
|
1716
|
+
* the ref.
|
|
1717
|
+
*/
|
|
1718
|
+
return outlet;
|
|
1719
|
+
}
|
|
1720
|
+
}
|
|
1721
|
+
return child;
|
|
1722
|
+
})))) : (React.createElement("div", Object.assign({ className: className ? `${className}` : 'ion-tabs' }, props, { style: hostStyles }),
|
|
2130
1723
|
tabBar.props.slot === 'top' ? tabBar : null,
|
|
2131
1724
|
React.createElement("div", { style: tabsInner, className: "tabs-inner" }, outlet),
|
|
2132
1725
|
tabBar.props.slot === 'bottom' ? tabBar : null))));
|
|
@@ -2230,7 +1823,7 @@ class IonRedirect extends React.PureComponent {
|
|
|
2230
1823
|
}
|
|
2231
1824
|
|
|
2232
1825
|
const IonRouterContext = React.createContext({
|
|
2233
|
-
routeInfo: undefined,
|
|
1826
|
+
routeInfo: undefined,
|
|
2234
1827
|
push: () => {
|
|
2235
1828
|
throw new Error('An Ionic Router is required for IonRouterContext');
|
|
2236
1829
|
},
|