@ionic/core 8.8.17 → 8.8.18-dev.11786108988.1fd94742
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/components/index.js +1 -1
- package/components/ion-accordion-group.js +1 -1
- package/components/ion-accordion.js +1 -1
- package/components/ion-action-sheet.js +1 -1
- package/components/ion-alert.js +1 -1
- package/components/ion-app.js +1 -1
- package/components/ion-avatar.js +1 -1
- package/components/ion-back-button.js +1 -1
- package/components/ion-backdrop.js +1 -1
- package/components/ion-badge.js +1 -1
- package/components/ion-breadcrumb.js +1 -1
- package/components/ion-breadcrumbs.js +1 -1
- package/components/ion-button.js +1 -1
- package/components/ion-buttons.js +1 -1
- package/components/ion-card-content.js +1 -1
- package/components/ion-card-header.js +1 -1
- package/components/ion-card-subtitle.js +1 -1
- package/components/ion-card-title.js +1 -1
- package/components/ion-card.js +1 -1
- package/components/ion-checkbox.js +1 -1
- package/components/ion-chip.js +1 -1
- package/components/ion-col.js +1 -1
- package/components/ion-content.js +1 -1
- package/components/ion-datetime-button.js +1 -1
- package/components/ion-datetime.js +1 -1
- package/components/ion-fab-button.js +1 -1
- package/components/ion-fab-list.js +1 -1
- package/components/ion-fab.js +1 -1
- package/components/ion-footer.js +1 -1
- package/components/ion-grid.js +1 -1
- package/components/ion-header.js +1 -1
- package/components/ion-icon.js +1 -1
- package/components/ion-img.js +1 -1
- package/components/ion-infinite-scroll-content.js +1 -1
- package/components/ion-infinite-scroll.js +1 -1
- package/components/ion-input-otp.js +1 -1
- package/components/ion-input-password-toggle.js +1 -1
- package/components/ion-input.js +1 -1
- package/components/ion-item-divider.js +1 -1
- package/components/ion-item-group.js +1 -1
- package/components/ion-item-option.js +1 -1
- package/components/ion-item-options.js +1 -1
- package/components/ion-item-sliding.js +1 -1
- package/components/ion-item.js +1 -1
- package/components/ion-label.js +1 -1
- package/components/ion-list-header.js +1 -1
- package/components/ion-list.js +1 -1
- package/components/ion-loading.js +1 -1
- package/components/ion-menu-button.js +1 -1
- package/components/ion-menu-toggle.js +1 -1
- package/components/ion-menu.js +1 -1
- package/components/ion-modal.js +1 -1
- package/components/ion-nav-link.js +1 -1
- package/components/ion-nav.js +1 -1
- package/components/ion-note.js +1 -1
- package/components/ion-picker-column-option.js +1 -1
- package/components/ion-picker-column.js +1 -1
- package/components/ion-picker.js +1 -1
- package/components/ion-popover.js +1 -1
- package/components/ion-progress-bar.js +1 -1
- package/components/ion-radio-group.js +1 -1
- package/components/ion-radio.js +1 -1
- package/components/ion-range.js +1 -1
- package/components/ion-refresher-content.js +1 -1
- package/components/ion-refresher.js +1 -1
- package/components/ion-reorder-group.js +1 -1
- package/components/ion-reorder.js +1 -1
- package/components/ion-ripple-effect.js +1 -1
- package/components/ion-route-redirect.js +1 -1
- package/components/ion-route.js +1 -1
- package/components/ion-router-link.js +1 -1
- package/components/ion-router-outlet.js +1 -1
- package/components/ion-router.js +1 -1
- package/components/ion-row.js +1 -1
- package/components/ion-searchbar.js +1 -1
- package/components/ion-segment-button.js +1 -1
- package/components/ion-segment-content.js +1 -1
- package/components/ion-segment-view.js +1 -1
- package/components/ion-segment.js +1 -1
- package/components/ion-select-modal.js +1 -1
- package/components/ion-select-option.js +1 -1
- package/components/ion-select-popover.js +1 -1
- package/components/ion-select.js +1 -1
- package/components/ion-skeleton-text.js +1 -1
- package/components/ion-spinner.js +1 -1
- package/components/ion-split-pane.js +1 -1
- package/components/ion-tab-bar.js +1 -1
- package/components/ion-tab-button.js +1 -1
- package/components/ion-tab.js +1 -1
- package/components/ion-tabs.js +1 -1
- package/components/ion-text.js +1 -1
- package/components/ion-textarea.js +1 -1
- package/components/ion-thumbnail.js +1 -1
- package/components/ion-title.js +1 -1
- package/components/ion-toast.js +1 -1
- package/components/ion-toggle.js +1 -1
- package/components/ion-toolbar.js +1 -1
- package/components/p-0tt0PTAe.js +4 -0
- package/components/p-3dKnMgX5.js +4 -0
- package/components/p-6e_5igwn.js +4 -0
- package/components/{p--JUspHvy.js → p-AqD_wmvU.js} +1 -1
- package/components/p-B-FxiyeI.js +4 -0
- package/components/p-B4COLbAV.js +4 -0
- package/components/p-B9zzUBwR.js +4 -0
- package/components/p-BFU7kgcj.js +4 -0
- package/components/p-BMPN55of.js +4 -0
- package/components/p-BPbRjpb2.js +4 -0
- package/components/p-BSQPZ79H.js +4 -0
- package/{dist/ionic/p-KjNvRoEp.js → components/p-BXQ7upSC.js} +1 -1
- package/components/p-BhamHSw3.js +4 -0
- package/components/p-BrXE0XUu.js +4 -0
- package/components/p-Bv7Rqz3Z.js +4 -0
- package/components/p-Bw7MMRH7.js +4 -0
- package/components/p-C-X5vb8f.js +4 -0
- package/components/p-C117Majq.js +4 -0
- package/components/{p-ChIZKXUu.js → p-C6JOi8wS.js} +1 -1
- package/components/p-CCVPk59A.js +4 -0
- package/components/p-CEW4RXZO.js +4 -0
- package/components/p-CKMc290p.js +4 -0
- package/components/{p-BkKAANMJ.js → p-CO5nI-BZ.js} +1 -1
- package/components/p-COQ_7Wwc.js +4 -0
- package/components/p-CQbh6Be_.js +4 -0
- package/components/p-CQtcj8t7.js +4 -0
- package/components/p-Cap9bvqr.js +4 -0
- package/components/p-CdP7ze2J.js +4 -0
- package/components/p-CfyJ_Ogc.js +4 -0
- package/components/p-ChWC4-vA.js +4 -0
- package/components/p-CmKf4pgI.js +4 -0
- package/components/p-CqYSqB9_.js +4 -0
- package/{dist/ionic/p-DC3RagnA.js → components/p-Cwsd9bue.js} +1 -1
- package/components/{p-D3xo7hqU.js → p-D0pL_HuH.js} +1 -1
- package/components/p-D0xd6h3Q.js +4 -0
- package/components/p-D28LaDuR.js +4 -0
- package/components/p-D7-vHX0A.js +4 -0
- package/components/p-D9KqizZs.js +4 -0
- package/components/p-DIZE3CVV.js +4 -0
- package/components/p-DL8rd5jo.js +4 -0
- package/components/p-DRcApg6F.js +4 -0
- package/components/p-DTTnwMiS.js +4 -0
- package/components/p-DWCzVL3Y.js +4 -0
- package/components/p-DYmrV1HT.js +4 -0
- package/components/{p-DqLB8yFQ.js → p-Dcu-SAJG.js} +1 -1
- package/components/p-DnINLmwC.js +4 -0
- package/components/{p-DRugphUN.js → p-DsNz6_gM.js} +1 -1
- package/components/p-DtiuiOTk.js +4 -0
- package/components/p-DunYzubP.js +4 -0
- package/components/p-DwcSJ9u1.js +4 -0
- package/components/p-QCPSB1bo.js +4 -0
- package/components/p-RvtofbHn.js +4 -0
- package/components/p-TXPDHL13.js +4 -0
- package/components/p-WOFp6fXj.js +4 -0
- package/components/p-byZM6qHV.js +4 -0
- package/components/{p-C_hpsif8.js → p-ltNYIRmI.js} +1 -1
- package/components/p-miSGCTAU.js +4 -0
- package/components/p-mpdX3emm.js +4 -0
- package/components/p-nvqVLrWC.js +4 -0
- package/components/p-qiWM96Sz.js +4 -0
- package/components/p-vlF0Bcfd.js +4 -0
- package/dist/cjs/{animation-BJq0kcy2.js → animation-D5WDBRvT.js} +4 -4
- package/dist/cjs/{app-globals-BlqrqKTN.js → app-globals-C2s3Cbal.js} +1 -1
- package/dist/cjs/{button-active-0mPOKmV2.js → button-active-CXI2TseG.js} +3 -3
- package/dist/cjs/config-CjUbvdPW.js +36 -0
- package/dist/cjs/{dir-Cn0z1rJH.js → dir-Brx7VkvP.js} +1 -1
- package/dist/cjs/{format-PxvGiOik.js → format-ZfKtcdit.js} +40 -30
- package/dist/cjs/{framework-delegate-BtICZDHr.js → framework-delegate-Bdvk3JQO.js} +5 -7
- package/dist/cjs/{gesture-controller-dtqlP_q4.js → gesture-controller-BDUH7687.js} +15 -8
- package/dist/cjs/{haptic-ClPPQ_PS.js → haptic-Ch-X4gRx.js} +2 -3
- package/dist/cjs/{hardware-back-button-iUuF_76h.js → hardware-back-button-zr8zeYaH.js} +4 -4
- package/dist/cjs/{helpers-Cv23MFHM.js → helpers-DURh1XdY.js} +3 -3
- package/dist/cjs/{index-aC4x3Fk3.js → index-B7sCu6vN.js} +6 -7
- package/dist/cjs/{index-CIrkNXqJ.js → index-BnhnwL1o.js} +2 -2
- package/dist/cjs/{index-D81eLYUM.js → index-Btdix80K.js} +2 -2
- package/dist/cjs/{index-Ct7gcRif.js → index-CAThePqm.js} +4 -6
- package/dist/cjs/index-DhSx3VvD.js +429 -0
- package/dist/cjs/{index-BERfRao3.js → index-DsoHs7Ly.js} +5 -5
- package/dist/cjs/{index-CAvQ7Tka.js → index-P1nQxrpZ.js} +10 -4
- package/dist/cjs/{index-DqmRDbxg.js → index-wOmugbdg.js} +1 -1
- package/dist/cjs/index.cjs.js +18 -18
- package/dist/cjs/{input-shims-CFLg7uzj.js → input-shims-CPbWb84M.js} +9 -11
- package/dist/cjs/{input.utils-DetjmtH2.js → input.utils-CkASW3mE.js} +3 -4
- package/dist/cjs/ion-accordion_2.cjs.entry.js +368 -340
- package/dist/cjs/ion-action-sheet.cjs.entry.js +187 -76
- package/dist/cjs/ion-alert.cjs.entry.js +273 -111
- package/dist/cjs/ion-app_8.cjs.entry.js +306 -190
- package/dist/cjs/ion-avatar_3.cjs.entry.js +10 -4
- package/dist/cjs/ion-back-button.cjs.entry.js +47 -23
- package/dist/cjs/ion-backdrop.cjs.entry.js +18 -14
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +199 -121
- package/dist/cjs/ion-button_2.cjs.entry.js +138 -66
- package/dist/cjs/ion-card_5.cjs.entry.js +82 -30
- package/dist/cjs/ion-checkbox.cjs.entry.js +152 -101
- package/dist/cjs/ion-chip.cjs.entry.js +17 -11
- package/dist/cjs/ion-col_3.cjs.entry.js +134 -10
- package/dist/cjs/ion-datetime-button.cjs.entry.js +253 -241
- package/dist/cjs/ion-datetime.cjs.entry.js +2767 -0
- package/dist/cjs/ion-fab_3.cjs.entry.js +139 -81
- package/dist/cjs/ion-img.cjs.entry.js +34 -12
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +100 -72
- package/dist/cjs/ion-input-otp.cjs.entry.js +433 -370
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +33 -19
- package/dist/cjs/ion-input.cjs.entry.js +314 -168
- package/dist/cjs/ion-item-option_3.cjs.entry.js +91 -51
- package/dist/cjs/ion-item_8.cjs.entry.js +181 -82
- package/dist/cjs/ion-loading.cjs.entry.js +146 -60
- package/dist/cjs/ion-menu_3.cjs.entry.js +163 -101
- package/dist/cjs/ion-modal.cjs.entry.js +418 -251
- package/dist/cjs/ion-nav_2.cjs.entry.js +100 -157
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +37 -33
- package/dist/cjs/ion-picker-column.cjs.entry.js +417 -405
- package/dist/cjs/ion-picker.cjs.entry.js +401 -392
- package/dist/cjs/ion-popover.cjs.entry.js +319 -205
- package/dist/cjs/ion-progress-bar.cjs.entry.js +31 -25
- package/dist/cjs/ion-radio_2.cjs.entry.js +206 -133
- package/dist/cjs/ion-range.cjs.entry.js +302 -237
- package/dist/cjs/ion-refresher_2.cjs.entry.js +165 -93
- package/dist/cjs/ion-reorder_2.cjs.entry.js +53 -23
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +14 -14
- package/dist/cjs/ion-route_4.cjs.entry.js +175 -71
- package/dist/cjs/ion-searchbar.cjs.entry.js +291 -200
- package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
- package/dist/cjs/ion-segment-view.cjs.entry.js +28 -17
- package/dist/cjs/ion-segment_2.cjs.entry.js +169 -126
- package/dist/cjs/ion-select-modal.cjs.entry.js +104 -48
- package/dist/cjs/ion-select_3.cjs.entry.js +759 -214
- package/dist/cjs/ion-spinner.cjs.entry.js +24 -10
- package/dist/cjs/ion-split-pane.cjs.entry.js +29 -16
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +100 -41
- package/dist/cjs/ion-tab_2.cjs.entry.js +53 -27
- package/dist/cjs/ion-text.cjs.entry.js +11 -5
- package/dist/cjs/ion-textarea.cjs.entry.js +263 -144
- package/dist/cjs/ion-toast.cjs.entry.js +236 -117
- package/dist/cjs/ion-toggle.cjs.entry.js +175 -122
- package/dist/cjs/{ionic-global-B-cA6LkY.js → ionic-global-dMut1Czp.js} +13 -8
- package/dist/cjs/ionic.cjs.js +4 -4
- package/dist/cjs/{ios.transition-BOSWOaiK.js → ios.transition-CeaFa0y2.js} +13 -17
- package/dist/cjs/{item-multiple-inputs-D-gyg57c.js → item-multiple-inputs-HQO5Iy9I.js} +1 -1
- package/dist/cjs/{keyboard-hHzlEQpk.js → keyboard-Cix5TVkD.js} +2 -2
- package/dist/cjs/{keyboard-UuAS4D_9.js → keyboard-cHxZlTyz.js} +2 -2
- package/dist/cjs/{keyboard-controller-GXBiBRKS.js → keyboard-controller-PtZoN2GS.js} +6 -6
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/{md.transition-B8-wBZqt.js → md.transition-D4Q5jny7.js} +7 -8
- package/dist/cjs/{notch-controller-18PzRGXd.js → notch-controller-fMfidI-7.js} +1 -1
- package/dist/cjs/overlay-control-label-D2sdL2O8.js +50 -0
- package/dist/cjs/{overlays-DdtIYQUH.js → overlays-C2qrqpHm.js} +48 -33
- package/dist/cjs/select-option-render-Dh16lTnA.js +123 -0
- package/dist/cjs/{status-tap-BXX8H8_Y.js → status-tap-CgjQ-6jq.js} +3 -3
- package/dist/cjs/{swipe-back-C0GCB18x.js → swipe-back-CmfRYdWQ.js} +5 -5
- package/dist/cjs/{theme-CeDs6Hcv.js → theme-Bw0rpaNN.js} +6 -1
- package/dist/collection/collection-manifest.json +6 -10
- package/dist/collection/components/accordion/accordion.js +315 -312
- package/dist/collection/components/accordion-group/accordion-group.js +48 -25
- package/dist/collection/components/action-sheet/action-sheet.ios.css +228 -2
- package/dist/collection/components/action-sheet/action-sheet.js +173 -64
- package/dist/collection/components/action-sheet/action-sheet.md.css +174 -2
- package/dist/collection/components/action-sheet/test/basic/fixture.js +3 -0
- package/dist/collection/components/alert/alert.ios.css +279 -10
- package/dist/collection/components/alert/alert.js +257 -97
- package/dist/collection/components/alert/alert.md.css +268 -20
- package/dist/collection/components/app/app.js +3 -0
- package/dist/collection/components/back-button/back-button.js +42 -19
- package/dist/collection/components/backdrop/backdrop.js +16 -14
- package/dist/collection/components/badge/badge.js +6 -0
- package/dist/collection/components/breadcrumb/breadcrumb.js +91 -30
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +103 -88
- package/dist/collection/components/button/button.js +132 -61
- package/dist/collection/components/buttons/buttons.js +13 -15
- package/dist/collection/components/card/card.js +54 -21
- package/dist/collection/components/card-header/card-header.js +12 -8
- package/dist/collection/components/card-subtitle/card-subtitle.js +6 -0
- package/dist/collection/components/card-title/card-title.js +6 -0
- package/dist/collection/components/checkbox/checkbox.js +147 -97
- package/dist/collection/components/chip/chip.js +14 -10
- package/dist/collection/components/col/col.js +127 -3
- package/dist/collection/components/content/content.js +92 -64
- package/dist/collection/components/datetime/datetime.ios.css +42 -2
- package/dist/collection/components/datetime/datetime.js +1038 -803
- package/dist/collection/components/datetime/datetime.md.css +42 -1
- package/dist/collection/components/datetime/utils/data.js +13 -14
- package/dist/collection/components/datetime/utils/format.js +21 -11
- package/dist/collection/components/datetime/utils/manipulation.js +8 -8
- package/dist/collection/components/datetime/utils/parse.js +10 -10
- package/dist/collection/components/datetime/utils/state.js +8 -2
- package/dist/collection/components/datetime/utils/validate.js +4 -5
- package/dist/collection/components/datetime-button/datetime-button.ios.css +5 -0
- package/dist/collection/components/datetime-button/datetime-button.js +247 -237
- package/dist/collection/components/datetime-button/datetime-button.md.css +5 -0
- package/dist/collection/components/fab/fab.js +20 -13
- package/dist/collection/components/fab-button/fab-button.js +104 -55
- package/dist/collection/components/fab-list/fab-list.js +10 -11
- package/dist/collection/components/footer/footer.js +50 -44
- package/dist/collection/components/grid/grid.js +4 -6
- package/dist/collection/components/header/header.js +35 -25
- package/dist/collection/components/img/img.js +34 -10
- package/dist/collection/components/infinite-scroll/infinite-scroll.js +73 -66
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +20 -3
- package/dist/collection/components/input/input.ios.css +1 -2
- package/dist/collection/components/input/input.js +309 -164
- package/dist/collection/components/input/input.md.css +1 -2
- package/dist/collection/components/input-otp/input-otp.js +428 -366
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +29 -16
- package/dist/collection/components/item/item.js +99 -53
- package/dist/collection/components/item-divider/item-divider.js +15 -10
- package/dist/collection/components/item-option/item-option.js +49 -21
- package/dist/collection/components/item-options/item-options.js +10 -7
- package/dist/collection/components/item-sliding/item-sliding.js +26 -20
- package/dist/collection/components/label/label.js +24 -4
- package/dist/collection/components/list/list.js +10 -7
- package/dist/collection/components/list-header/list-header.js +10 -0
- package/dist/collection/components/loading/loading.js +135 -51
- package/dist/collection/components/menu/menu.js +101 -59
- package/dist/collection/components/menu-button/menu-button.js +29 -20
- package/dist/collection/components/menu-toggle/menu-toggle.js +20 -13
- package/dist/collection/components/modal/animations/ios.enter.js +1 -1
- package/dist/collection/components/modal/animations/md.enter.js +1 -1
- package/dist/collection/components/modal/gestures/sheet.js +6 -7
- package/dist/collection/components/modal/gestures/swipe-to-close.js +1 -2
- package/dist/collection/components/modal/modal.js +393 -224
- package/dist/collection/components/modal/safe-area-utils.js +4 -5
- package/dist/collection/components/modal/test/fixtures.js +3 -0
- package/dist/collection/components/nav/nav.js +69 -247
- package/dist/collection/components/nav/view-controller.js +7 -1
- package/dist/collection/components/nav-link/nav-link.js +20 -9
- package/dist/collection/components/note/note.js +6 -0
- package/dist/collection/components/picker/picker.js +398 -390
- package/dist/collection/components/picker-column/picker-column.css +3 -0
- package/dist/collection/components/picker-column/picker-column.js +414 -404
- package/dist/collection/components/picker-column-option/picker-column-option.js +33 -31
- package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -1
- package/dist/collection/components/popover/animations/ios.enter.js +1 -2
- package/dist/collection/components/popover/animations/md.enter.js +1 -2
- package/dist/collection/components/popover/popover.ios.css +15 -0
- package/dist/collection/components/popover/popover.js +302 -185
- package/dist/collection/components/popover/popover.md.css +15 -0
- package/dist/collection/components/popover/test/fixture.js +1 -0
- package/dist/collection/components/popover/utils.js +4 -6
- package/dist/collection/components/progress-bar/progress-bar.js +27 -23
- package/dist/collection/components/radio/radio.js +102 -66
- package/dist/collection/components/radio-group/radio-group.js +100 -65
- package/dist/collection/components/radio-group/test/fixtures.js +2 -0
- package/dist/collection/components/range/range.js +296 -232
- package/dist/collection/components/refresher/refresher.js +110 -78
- package/dist/collection/components/refresher-content/refresher-content.js +41 -4
- package/dist/collection/components/reorder/reorder.js +2 -1
- package/dist/collection/components/reorder-group/reorder-group.js +44 -15
- package/dist/collection/components/ripple-effect/ripple-effect.js +12 -13
- package/dist/collection/components/route/route.js +39 -10
- package/dist/collection/components/route-redirect/route-redirect.js +31 -0
- package/dist/collection/components/router/router.js +37 -33
- package/dist/collection/components/router/utils/dom.js +25 -7
- package/dist/collection/components/router/utils/matching.js +7 -9
- package/dist/collection/components/router/utils/parser.js +1 -1
- package/dist/collection/components/router/utils/path.js +0 -1
- package/dist/collection/components/router-link/router-link.js +37 -12
- package/dist/collection/components/router-outlet/router-outlet.js +82 -21
- package/dist/collection/components/row/row.js +1 -1
- package/dist/collection/components/searchbar/searchbar.js +289 -199
- package/dist/collection/components/segment/segment.js +120 -85
- package/dist/collection/components/segment-button/segment-button.js +43 -37
- package/dist/collection/components/segment-content/segment-content.js +1 -1
- package/dist/collection/components/segment-view/segment-view.js +26 -16
- package/dist/collection/components/select/select.ios.css +33 -0
- package/dist/collection/components/select/select.js +597 -166
- package/dist/collection/components/select/select.md.css +33 -0
- package/dist/collection/components/select-modal/select-modal.ios.css +218 -0
- package/dist/collection/components/select-modal/select-modal.js +92 -38
- package/dist/collection/components/select-modal/select-modal.md.css +164 -0
- package/dist/collection/components/select-modal/test/fixtures.js +8 -1
- package/dist/collection/components/select-option/select-option.js +110 -9
- package/dist/collection/components/select-popover/select-popover.ios.css +218 -0
- package/dist/collection/components/select-popover/select-popover.js +103 -36
- package/dist/collection/components/select-popover/select-popover.md.css +164 -0
- package/dist/collection/components/select-popover/test/fixtures.js +8 -1
- package/dist/collection/components/skeleton-text/skeleton-text.js +12 -8
- package/dist/collection/components/spinner/spinner.js +21 -9
- package/dist/collection/components/split-pane/split-pane.js +27 -15
- package/dist/collection/components/tab/tab.js +17 -6
- package/dist/collection/components/tab-bar/tab-bar.js +32 -14
- package/dist/collection/components/tab-button/tab-button.js +62 -23
- package/dist/collection/components/tabs/tabs.js +33 -20
- package/dist/collection/components/text/text.js +8 -2
- package/dist/collection/components/textarea/textarea.js +257 -139
- package/dist/collection/components/thumbnail/thumbnail.js +1 -1
- package/dist/collection/components/title/title.js +18 -2
- package/dist/collection/components/toast/toast.js +223 -106
- package/dist/collection/components/toggle/toggle.js +167 -115
- package/dist/collection/components/toolbar/toolbar.js +15 -7
- package/dist/collection/global/config.js +4 -6
- package/dist/collection/global/ionic-global.js +8 -2
- package/dist/collection/index.js +1 -1
- package/dist/collection/utils/animation/animation.js +3 -3
- package/dist/collection/utils/config.js +5 -4
- package/dist/collection/utils/focus-controller/index.js +1 -1
- package/dist/collection/utils/focus-trap.js +3 -3
- package/dist/collection/utils/framework-delegate.js +4 -6
- package/dist/collection/utils/gesture/gesture-controller.js +15 -8
- package/dist/collection/utils/gesture/index.js +10 -2
- package/dist/collection/utils/gesture/listener.js +1 -1
- package/dist/collection/utils/hardware-back-button.js +3 -3
- package/dist/collection/utils/helpers.js +2 -2
- package/dist/collection/utils/input-shims/hacks/scroll-assist.js +4 -5
- package/dist/collection/utils/input-shims/hacks/scroll-data.js +1 -2
- package/dist/collection/utils/keyboard/keyboard-controller.js +5 -5
- package/dist/collection/utils/keyboard/keyboard.js +1 -1
- package/dist/collection/utils/menu-controller/index.js +1 -2
- package/dist/collection/utils/native/haptic.js +2 -3
- package/dist/collection/utils/native/keyboard.js +2 -2
- package/dist/collection/utils/native/status-bar.js +1 -1
- package/dist/collection/utils/overlay-control-label.js +45 -0
- package/dist/collection/utils/overlays.js +38 -23
- package/dist/collection/utils/platform.js +4 -5
- package/dist/collection/utils/rtl/dir.js +1 -1
- package/dist/collection/utils/sanitization/index.js +276 -20
- package/dist/collection/utils/select-option-render.js +118 -0
- package/dist/collection/utils/slot-mutation-controller.js +1 -2
- package/dist/collection/utils/test/playwright/apply-keyboard-focus.js +1 -1
- package/dist/collection/utils/test/playwright/drag-element.js +2 -3
- package/dist/collection/utils/test/playwright/generator.js +3 -4
- package/dist/collection/utils/test/playwright/page/event-spy.js +11 -12
- package/dist/collection/utils/test/playwright/page/utils/goto.js +4 -5
- package/dist/collection/utils/test/playwright/page/utils/set-content.js +1 -1
- package/dist/collection/utils/test/playwright/page/utils/set-ion-viewport.js +2 -3
- package/dist/collection/utils/test/press-keys.js +10 -17
- package/dist/collection/utils/theme.js +6 -1
- package/dist/collection/utils/transition/ios.transition.js +9 -13
- package/dist/collection/utils/transition/md.transition.js +3 -4
- package/dist/docs.json +556 -1272
- package/dist/esm/{animation-DLJpuoEz.js → animation-CVK55yMY.js} +4 -4
- package/dist/esm/{app-globals-D0C5S4hU.js → app-globals-Bk1_t4sH.js} +1 -1
- package/dist/esm/{button-active-BSpTQmS9.js → button-active-CdCqmeT0.js} +3 -3
- package/dist/esm/config-DWCzVL3Y.js +32 -0
- package/dist/esm/{dir-C53feagD.js → dir-B-FxiyeI.js} +1 -1
- package/dist/esm/{format-CAmvpAez.js → format-sMi4BZ_l.js} +41 -31
- package/dist/esm/{framework-delegate-FnPGymXL.js → framework-delegate-BfAlKlW5.js} +5 -7
- package/dist/esm/{gesture-controller-BTEOs1at.js → gesture-controller-TXPDHL13.js} +15 -8
- package/dist/esm/{haptic-DzAMWJuk.js → haptic-Cq4UAeka.js} +2 -3
- package/dist/esm/{hardware-back-button-B93Gru0Y.js → hardware-back-button-DcHMMB9j.js} +4 -4
- package/dist/esm/{helpers-HEqiOzXb.js → helpers-BPcITY5s.js} +3 -3
- package/dist/esm/{index-BRHzoo00.js → index-B9GsUd2c.js} +2 -2
- package/dist/esm/{index-DV3sJJW8.js → index-BvabGprD.js} +2 -2
- package/dist/esm/{index-tcQvqkiX.js → index-D1CQtpUN.js} +5 -7
- package/dist/esm/index-DDa8edAS.js +424 -0
- package/dist/esm/{index-MEDq2S8l.js → index-DcUt1pPn.js} +2 -2
- package/dist/esm/{index-CfgBF1SE.js → index-DppOcPFQ.js} +10 -4
- package/dist/esm/{index-B_dQk_WE.js → index-DqVqy_Cy.js} +5 -5
- package/dist/esm/{index-Q6UPU0Ay.js → index-ks-BjikL.js} +6 -7
- package/dist/esm/index.js +16 -15
- package/dist/esm/{input-shims-D10mwcw1.js → input-shims-C1dCKVMO.js} +9 -11
- package/dist/esm/{input.utils-Y6NgW8bw.js → input.utils-Dd5xwlP6.js} +3 -4
- package/dist/esm/ion-accordion_2.entry.js +368 -340
- package/dist/esm/ion-action-sheet.entry.js +187 -76
- package/dist/esm/ion-alert.entry.js +272 -110
- package/dist/esm/ion-app_8.entry.js +306 -190
- package/dist/esm/ion-avatar_3.entry.js +10 -4
- package/dist/esm/ion-back-button.entry.js +47 -23
- package/dist/esm/ion-backdrop.entry.js +18 -14
- package/dist/esm/ion-breadcrumb_2.entry.js +199 -121
- package/dist/esm/ion-button_2.entry.js +138 -66
- package/dist/esm/ion-card_5.entry.js +82 -30
- package/dist/esm/ion-checkbox.entry.js +152 -101
- package/dist/esm/ion-chip.entry.js +17 -11
- package/dist/esm/ion-col_3.entry.js +134 -10
- package/dist/esm/ion-datetime-button.entry.js +253 -241
- package/dist/esm/ion-datetime.entry.js +2765 -0
- package/dist/esm/ion-fab_3.entry.js +139 -81
- package/dist/esm/ion-img.entry.js +34 -12
- package/dist/esm/ion-infinite-scroll_2.entry.js +99 -71
- package/dist/esm/ion-input-otp.entry.js +433 -370
- package/dist/esm/ion-input-password-toggle.entry.js +33 -19
- package/dist/esm/ion-input.entry.js +314 -168
- package/dist/esm/ion-item-option_3.entry.js +91 -51
- package/dist/esm/ion-item_8.entry.js +181 -82
- package/dist/esm/ion-loading.entry.js +145 -59
- package/dist/esm/ion-menu_3.entry.js +163 -101
- package/dist/esm/ion-modal.entry.js +418 -251
- package/dist/esm/ion-nav_2.entry.js +100 -157
- package/dist/esm/ion-picker-column-option.entry.js +37 -33
- package/dist/esm/ion-picker-column.entry.js +417 -405
- package/dist/esm/ion-picker.entry.js +401 -392
- package/dist/esm/ion-popover.entry.js +319 -205
- package/dist/esm/ion-progress-bar.entry.js +31 -25
- package/dist/esm/ion-radio_2.entry.js +206 -133
- package/dist/esm/ion-range.entry.js +302 -237
- package/dist/esm/ion-refresher_2.entry.js +163 -91
- package/dist/esm/ion-reorder_2.entry.js +53 -23
- package/dist/esm/ion-ripple-effect.entry.js +14 -14
- package/dist/esm/ion-route_4.entry.js +175 -71
- package/dist/esm/ion-searchbar.entry.js +291 -200
- package/dist/esm/ion-segment-content.entry.js +2 -2
- package/dist/esm/ion-segment-view.entry.js +28 -17
- package/dist/esm/ion-segment_2.entry.js +169 -126
- package/dist/esm/ion-select-modal.entry.js +104 -48
- package/dist/esm/ion-select_3.entry.js +760 -215
- package/dist/esm/ion-spinner.entry.js +24 -10
- package/dist/esm/ion-split-pane.entry.js +29 -16
- package/dist/esm/ion-tab-bar_2.entry.js +100 -41
- package/dist/esm/ion-tab_2.entry.js +53 -27
- package/dist/esm/ion-text.entry.js +11 -5
- package/dist/esm/ion-textarea.entry.js +263 -144
- package/dist/esm/ion-toast.entry.js +235 -116
- package/dist/esm/ion-toggle.entry.js +175 -122
- package/dist/esm/{ionic-global-Cp_eT4sZ.js → ionic-global-5bZ91kOL.js} +13 -8
- package/dist/esm/ionic.js +5 -5
- package/dist/esm/{ios.transition-ClFrsIrS.js → ios.transition-OcwIGkv9.js} +13 -17
- package/dist/esm/{item-multiple-inputs-DlNuqNJm.js → item-multiple-inputs-ifd3ZrqY.js} +1 -1
- package/dist/esm/{keyboard-ywgs5efA.js → keyboard-Cj8mLJeq.js} +2 -2
- package/dist/esm/{keyboard-CUw4ekVy.js → keyboard-DAF8GNJ9.js} +2 -2
- package/dist/esm/{keyboard-controller-BaaVITYt.js → keyboard-controller-DEwoa1ev.js} +6 -6
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{md.transition-D0msQmzI.js → md.transition-BetdF0bc.js} +7 -8
- package/dist/esm/{notch-controller-DKDjU_O7.js → notch-controller-DBSn-Uat.js} +1 -1
- package/dist/esm/overlay-control-label-BSQPZ79H.js +47 -0
- package/dist/esm/{overlays-Dg0q2_tJ.js → overlays-DUzb9CQf.js} +48 -33
- package/dist/esm/select-option-render-DsW8svRr.js +121 -0
- package/dist/esm/{status-tap-Kan2W7sh.js → status-tap-C-wNhea0.js} +3 -3
- package/dist/esm/{swipe-back-DQ1q5MgD.js → swipe-back-D6YSgAn7.js} +5 -5
- package/dist/esm/{theme-DiVJyqlX.js → theme-byZM6qHV.js} +6 -1
- package/dist/html.html-data.json +52 -80
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-01eaee58.entry.js +4 -0
- package/dist/ionic/p-0c567140.entry.js +4 -0
- package/dist/ionic/p-105bb794.entry.js +4 -0
- package/dist/ionic/p-10d55bb6.entry.js +4 -0
- package/dist/ionic/p-173a87d8.entry.js +4 -0
- package/dist/ionic/p-178da672.entry.js +4 -0
- package/dist/ionic/p-1ead2857.entry.js +4 -0
- package/dist/ionic/p-224e2464.entry.js +4 -0
- package/dist/ionic/p-2268e718.entry.js +4 -0
- package/dist/ionic/p-2b5283f3.entry.js +4 -0
- package/dist/ionic/p-2b6decac.entry.js +4 -0
- package/dist/ionic/p-2da5d9c6.entry.js +4 -0
- package/dist/ionic/p-31890acd.entry.js +4 -0
- package/dist/ionic/p-34ef7425.entry.js +4 -0
- package/dist/ionic/p-34f7c1d8.entry.js +4 -0
- package/dist/ionic/p-3b1e6fa4.entry.js +4 -0
- package/dist/ionic/p-42fefd2c.entry.js +4 -0
- package/dist/ionic/p-440cd489.entry.js +4 -0
- package/dist/ionic/{p-aaeedb6b.entry.js → p-460da491.entry.js} +1 -1
- package/dist/ionic/p-53f680e8.entry.js +4 -0
- package/dist/ionic/p-57ba508f.entry.js +4 -0
- package/dist/ionic/p-599e5a75.entry.js +4 -0
- package/dist/ionic/p-5f670a9e.entry.js +4 -0
- package/dist/ionic/p-63502088.entry.js +4 -0
- package/dist/ionic/p-6e6bf45d.entry.js +4 -0
- package/dist/ionic/p-6f0b6a48.entry.js +4 -0
- package/dist/ionic/p-7438c462.entry.js +4 -0
- package/dist/ionic/p-747716e7.entry.js +4 -0
- package/dist/ionic/p-7759fcaf.entry.js +4 -0
- package/dist/ionic/p-7a8338e2.entry.js +4 -0
- package/dist/ionic/p-80f9f1dc.entry.js +4 -0
- package/dist/ionic/p-83ff4dcb.entry.js +4 -0
- package/dist/ionic/p-86f03895.entry.js +4 -0
- package/dist/ionic/p-87b8d70e.entry.js +4 -0
- package/dist/ionic/p-888236bf.entry.js +4 -0
- package/dist/ionic/p-8a92ca23.entry.js +4 -0
- package/dist/ionic/p-8c9af4ad.entry.js +4 -0
- package/dist/ionic/p-9669f546.entry.js +4 -0
- package/dist/ionic/p-9bcd8b74.entry.js +4 -0
- package/dist/ionic/p-B-FxiyeI.js +4 -0
- package/dist/ionic/p-B2trYd8K.js +4 -0
- package/dist/ionic/p-BMPN55of.js +4 -0
- package/dist/ionic/{p-DIuEbVLu.js → p-BNKr91bi.js} +1 -1
- package/dist/ionic/p-BSQPZ79H.js +4 -0
- package/dist/ionic/p-BSzG1VcX.js +4 -0
- package/dist/ionic/p-BVgBHS96.js +4 -0
- package/dist/ionic/p-BX2IOAqC.js +4 -0
- package/dist/ionic/p-BhamHSw3.js +4 -0
- package/dist/ionic/p-BufXJ_A8.js +4 -0
- package/dist/ionic/{p-DV3sJJW8.js → p-BvabGprD.js} +1 -1
- package/dist/ionic/p-C73UOs4m.js +4 -0
- package/{components/p-B-JJgYSG.js → dist/ionic/p-CHpEzg-o.js} +1 -1
- package/dist/ionic/p-CUSwMljM.js +4 -0
- package/dist/ionic/p-CeOSrSdu.js +4 -0
- package/dist/ionic/p-CfkB7_FV.js +4 -0
- package/dist/ionic/p-CmKf4pgI.js +4 -0
- package/dist/ionic/p-CnM-CMw7.js +4 -0
- package/dist/ionic/p-D1CQtpUN.js +5 -0
- package/dist/ionic/p-D5t_-oMk.js +4 -0
- package/dist/ionic/p-DVYb1IVZ.js +4 -0
- package/dist/ionic/p-DWCzVL3Y.js +4 -0
- package/dist/ionic/p-DfJ-SVJf.js +4 -0
- package/dist/ionic/p-DmXrLsoD.js +4 -0
- package/dist/ionic/p-DtLHAMFW.js +4 -0
- package/dist/ionic/p-Dtlob2JL.js +4 -0
- package/dist/ionic/p-F7ipfyOA.js +4 -0
- package/dist/ionic/{p-DoJvtrbw.js → p-I9ETXg5W.js} +1 -1
- package/dist/ionic/{p-Wk5HzclC.js → p-IaXd5VMv.js} +1 -1
- package/dist/ionic/p-T71k3C35.js +4 -0
- package/dist/ionic/p-TXPDHL13.js +4 -0
- package/dist/ionic/p-aL0G45tD.js +4 -0
- package/dist/ionic/p-acbb97c3.entry.js +4 -0
- package/dist/ionic/p-aeb85531.entry.js +4 -0
- package/dist/ionic/p-b157f80d.entry.js +4 -0
- package/dist/ionic/p-b158de5d.entry.js +4 -0
- package/dist/ionic/{p-c6e49f3f.entry.js → p-b40c9715.entry.js} +1 -1
- package/dist/ionic/p-b852101e.entry.js +4 -0
- package/dist/ionic/p-byZM6qHV.js +4 -0
- package/dist/ionic/p-c0d81bee.entry.js +4 -0
- package/dist/ionic/p-c8a327fb.entry.js +4 -0
- package/dist/ionic/p-d42ae99f.entry.js +4 -0
- package/dist/ionic/p-d47ff529.entry.js +4 -0
- package/dist/ionic/p-eHi73fGE.js +4 -0
- package/dist/ionic/p-eeabce92.entry.js +4 -0
- package/dist/ionic/p-efc66d77.entry.js +4 -0
- package/dist/ionic/p-f6d203dc.entry.js +4 -0
- package/dist/ionic/p-u2a770LZ.js +4 -0
- package/dist/types/components/img/img.d.ts +2 -0
- package/dist/types/components/input/input.d.ts +1 -1
- package/dist/types/components/modal/modal.d.ts +11 -4
- package/dist/types/components/nav/nav-interface.d.ts +0 -1
- package/dist/types/components/nav/nav.d.ts +2 -22
- package/dist/types/components/route/route.d.ts +1 -1
- package/dist/types/components/router-outlet/router-outlet.d.ts +7 -0
- package/dist/types/components/searchbar/searchbar.d.ts +1 -1
- package/dist/types/components/select/select-interface.d.ts +31 -0
- package/dist/types/components/select/select.d.ts +18 -0
- package/dist/types/components/select-option/select-option.d.ts +42 -1
- package/dist/types/components.d.ts +74 -311
- package/dist/types/index.d.ts +1 -1
- package/dist/types/interface.d.ts +0 -1
- package/dist/types/utils/config.d.ts +0 -8
- package/dist/types/utils/overlay-control-label.d.ts +32 -0
- package/dist/types/utils/overlays.d.ts +11 -9
- package/dist/types/utils/sanitization/index.d.ts +58 -2
- package/dist/types/utils/select-option-render.d.ts +53 -0
- package/dist/types/utils/test/playwright/playwright-page.d.ts +1 -1
- package/dist/types/utils/test/playwright/testExpect.d.ts +1 -1
- package/hydrate/index.js +10278 -7052
- package/hydrate/index.mjs +10278 -7052
- package/package.json +54 -11
- package/components/ion-picker-legacy-column.d.ts +0 -11
- package/components/ion-picker-legacy-column.js +0 -4
- package/components/ion-picker-legacy.d.ts +0 -11
- package/components/ion-picker-legacy.js +0 -4
- package/components/p-A3O24YmY.js +0 -4
- package/components/p-ABkNVeU9.js +0 -4
- package/components/p-B9jFTlwE.js +0 -4
- package/components/p-BLmJ0zRm.js +0 -4
- package/components/p-BMI53wYL.js +0 -4
- package/components/p-BSEgsdFI.js +0 -4
- package/components/p-BTEOs1at.js +0 -4
- package/components/p-BlIAuGv2.js +0 -4
- package/components/p-Bnsn6KaP.js +0 -4
- package/components/p-BsBCoGa-.js +0 -4
- package/components/p-Bz0dSlXZ.js +0 -4
- package/components/p-C53feagD.js +0 -4
- package/components/p-CHqRYvYm.js +0 -4
- package/components/p-CQGnMY3n.js +0 -4
- package/components/p-CSZf8_j0.js +0 -4
- package/components/p-C_xFdyXe.js +0 -4
- package/components/p-Cf2jSDS8.js +0 -4
- package/components/p-Cfx4M1Bn.js +0 -4
- package/components/p-CkMSOsFF.js +0 -4
- package/components/p-Cl0B-RWe.js +0 -4
- package/components/p-CmR5uXej.js +0 -4
- package/components/p-CsNJ1ULL.js +0 -4
- package/components/p-CtWGkNnJ.js +0 -4
- package/components/p-CzCbeKys.js +0 -4
- package/components/p-D-aHdMxW.js +0 -4
- package/components/p-D0d8qTwj.js +0 -4
- package/components/p-D13Eaw-8.js +0 -4
- package/components/p-D6Ynv7Xh.js +0 -4
- package/components/p-DCnGU1fF.js +0 -4
- package/components/p-DGvrK8dD.js +0 -4
- package/components/p-DHTSTb52.js +0 -4
- package/components/p-DJZp0KTQ.js +0 -4
- package/components/p-DOFCbuQR.js +0 -4
- package/components/p-DV5mPYQS.js +0 -4
- package/components/p-DWkAgceV.js +0 -4
- package/components/p-DiVJyqlX.js +0 -4
- package/components/p-DqZAXv2t.js +0 -4
- package/components/p-KEFO0w3i.js +0 -4
- package/components/p-Osve4qkc.js +0 -4
- package/components/p-SLS1rDZM.js +0 -4
- package/components/p-VWbRkLT7.js +0 -4
- package/components/p-aJ6PBUvj.js +0 -4
- package/components/p-cyNmxje6.js +0 -4
- package/components/p-gAg0kXZp.js +0 -4
- package/components/p-j5IxBIan.js +0 -4
- package/components/p-k_E4tX5Z.js +0 -4
- package/components/p-oD4kcBRX.js +0 -4
- package/components/p-rCa2eL0j.js +0 -4
- package/components/p-scxfI1Dd.js +0 -4
- package/components/p-sijaAIYG.js +0 -4
- package/components/p-yzCsOZE2.js +0 -4
- package/dist/cjs/config-xninhj0J.js +0 -201
- package/dist/cjs/ion-datetime_3.cjs.entry.js +0 -3164
- package/dist/collection/components/picker-legacy/animations/ios.enter.js +0 -27
- package/dist/collection/components/picker-legacy/animations/ios.leave.js +0 -23
- package/dist/collection/components/picker-legacy/picker-interface.js +0 -1
- package/dist/collection/components/picker-legacy/picker.ios.css +0 -300
- package/dist/collection/components/picker-legacy/picker.js +0 -890
- package/dist/collection/components/picker-legacy/picker.md.css +0 -287
- package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -231
- package/dist/collection/components/picker-legacy-column/picker-column.js +0 -422
- package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -222
- package/dist/collection/components/picker-legacy-column/test/test.utils.js +0 -43
- package/dist/esm/config-DQCONYYp.js +0 -195
- package/dist/esm/ion-datetime_3.entry.js +0 -3160
- package/dist/ionic/p-01f81ea5.entry.js +0 -4
- package/dist/ionic/p-06c232a4.entry.js +0 -4
- package/dist/ionic/p-0dc33652.entry.js +0 -4
- package/dist/ionic/p-0fa9c382.entry.js +0 -4
- package/dist/ionic/p-10e833ef.entry.js +0 -4
- package/dist/ionic/p-20b1a044.entry.js +0 -4
- package/dist/ionic/p-21eb76d5.entry.js +0 -4
- package/dist/ionic/p-27d30585.entry.js +0 -4
- package/dist/ionic/p-2a05aa64.entry.js +0 -4
- package/dist/ionic/p-2b204c59.entry.js +0 -4
- package/dist/ionic/p-2bb2cb18.entry.js +0 -4
- package/dist/ionic/p-2fa58e80.entry.js +0 -4
- package/dist/ionic/p-3353c229.entry.js +0 -4
- package/dist/ionic/p-34586ead.entry.js +0 -4
- package/dist/ionic/p-37e720da.entry.js +0 -4
- package/dist/ionic/p-390ca786.entry.js +0 -4
- package/dist/ionic/p-3ae5f277.entry.js +0 -4
- package/dist/ionic/p-4654ae1c.entry.js +0 -4
- package/dist/ionic/p-4745f534.entry.js +0 -4
- package/dist/ionic/p-4858af1f.entry.js +0 -4
- package/dist/ionic/p-485fda23.entry.js +0 -4
- package/dist/ionic/p-4ac4f3d6.entry.js +0 -4
- package/dist/ionic/p-4baa5b82.entry.js +0 -4
- package/dist/ionic/p-4e92a11f.entry.js +0 -4
- package/dist/ionic/p-5018dfc8.entry.js +0 -4
- package/dist/ionic/p-50e1194a.entry.js +0 -4
- package/dist/ionic/p-5d1da0a2.entry.js +0 -4
- package/dist/ionic/p-5eb8e86d.entry.js +0 -4
- package/dist/ionic/p-65ebdf1b.entry.js +0 -4
- package/dist/ionic/p-75dc25ba.entry.js +0 -4
- package/dist/ionic/p-7c319341.entry.js +0 -4
- package/dist/ionic/p-829367ed.entry.js +0 -4
- package/dist/ionic/p-84d5ce05.entry.js +0 -4
- package/dist/ionic/p-874b4bd8.entry.js +0 -4
- package/dist/ionic/p-8eb8ee76.entry.js +0 -4
- package/dist/ionic/p-8fce95d5.entry.js +0 -4
- package/dist/ionic/p-9eeaBrnk.js +0 -4
- package/dist/ionic/p-9f1103ce.entry.js +0 -4
- package/dist/ionic/p-9f9db3a2.entry.js +0 -4
- package/dist/ionic/p-BGqMS-oh.js +0 -4
- package/dist/ionic/p-BTEOs1at.js +0 -4
- package/dist/ionic/p-BUFIpxKM.js +0 -4
- package/dist/ionic/p-C0eMdTCW.js +0 -4
- package/dist/ionic/p-C53feagD.js +0 -4
- package/dist/ionic/p-CFlfIb2g.js +0 -4
- package/dist/ionic/p-CKvCXMs9.js +0 -4
- package/dist/ionic/p-Cl0B-RWe.js +0 -4
- package/dist/ionic/p-CtWGkNnJ.js +0 -4
- package/dist/ionic/p-Cx3IXROA.js +0 -4
- package/dist/ionic/p-D-3ycHmd.js +0 -4
- package/dist/ionic/p-D13Eaw-8.js +0 -4
- package/dist/ionic/p-D4uTWt4-.js +0 -4
- package/dist/ionic/p-DSG2s2Eb.js +0 -4
- package/dist/ionic/p-Dfbt-q2k.js +0 -4
- package/dist/ionic/p-DiVJyqlX.js +0 -4
- package/dist/ionic/p-DqN5EA2O.js +0 -4
- package/dist/ionic/p-DzWaWHGc.js +0 -4
- package/dist/ionic/p-Nqf6uvGh.js +0 -4
- package/dist/ionic/p-SNAkTDfm.js +0 -4
- package/dist/ionic/p-VAemlbDS.js +0 -4
- package/dist/ionic/p-a3bdcae6.entry.js +0 -4
- package/dist/ionic/p-ad306193.entry.js +0 -4
- package/dist/ionic/p-b6a7397c.entry.js +0 -4
- package/dist/ionic/p-c0fb8edd.entry.js +0 -4
- package/dist/ionic/p-c38b648e.entry.js +0 -4
- package/dist/ionic/p-c4d8641b.entry.js +0 -4
- package/dist/ionic/p-ca2ab74d.entry.js +0 -4
- package/dist/ionic/p-d889ff6d.entry.js +0 -4
- package/dist/ionic/p-dfa8d673.entry.js +0 -4
- package/dist/ionic/p-e0be05c5.entry.js +0 -4
- package/dist/ionic/p-ef4c3bee.entry.js +0 -4
- package/dist/ionic/p-f386f6ae.entry.js +0 -4
- package/dist/ionic/p-mjKAFv89.js +0 -4
- package/dist/ionic/p-tcQvqkiX.js +0 -5
- package/dist/ionic/p-viFHDgRs.js +0 -4
- package/dist/ionic/p-xWb6fgfq.js +0 -4
- package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +0 -5
- package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +0 -5
- package/dist/types/components/picker-legacy/picker-interface.d.ts +0 -52
- package/dist/types/components/picker-legacy/picker.d.ts +0 -158
- package/dist/types/components/picker-legacy-column/picker-column.d.ts +0 -46
- package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +0 -9
- /package/components/{p-CO7fmmxt.js → p-LpMHEu3v.js} +0 -0
|
@@ -1,29 +1,38 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, d as Host,
|
|
5
|
-
import { b as getIonMode } from './ionic-global-
|
|
6
|
-
import { k as hasShadowDom, i as inheritAriaAttributes } from './helpers-
|
|
7
|
-
import { h as hostContext, o as openURL, c as createColorClasses } from './theme-
|
|
8
|
-
import { t as close } from './index-
|
|
4
|
+
import { r as registerInstance, g as getElement, h, d as Host, c as createEvent, f as printIonWarning } from './index-D1CQtpUN.js';
|
|
5
|
+
import { b as getIonMode } from './ionic-global-5bZ91kOL.js';
|
|
6
|
+
import { k as hasShadowDom, i as inheritAriaAttributes } from './helpers-BPcITY5s.js';
|
|
7
|
+
import { h as hostContext, o as openURL, c as createColorClasses } from './theme-byZM6qHV.js';
|
|
8
|
+
import { t as close } from './index-BvabGprD.js';
|
|
9
9
|
|
|
10
10
|
const fabCss = () => `:host{position:absolute;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;z-index:999}:host(.fab-horizontal-center){left:0px;right:0px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto}:host(.fab-horizontal-start){left:calc(10px + var(--ion-safe-area-left, 0px));}:host-context([dir=rtl]):host(.fab-horizontal-start),:host-context([dir=rtl]).fab-horizontal-start{right:calc(10px + var(--ion-safe-area-right, 0px));left:unset}@supports selector(:dir(rtl)){:host(.fab-horizontal-start:dir(rtl)){right:calc(10px + var(--ion-safe-area-right, 0px));left:unset}}:host(.fab-horizontal-end){right:calc(10px + var(--ion-safe-area-right, 0px));}:host-context([dir=rtl]):host(.fab-horizontal-end),:host-context([dir=rtl]).fab-horizontal-end{left:calc(10px + var(--ion-safe-area-left, 0px));right:unset}@supports selector(:dir(rtl)){:host(.fab-horizontal-end:dir(rtl)){left:calc(10px + var(--ion-safe-area-left, 0px));right:unset}}:host(.fab-vertical-top){top:10px}:host(.fab-vertical-top.fab-edge){top:0}:host(.fab-vertical-top.fab-edge) ::slotted(ion-fab-button){margin-top:-50%}:host(.fab-vertical-top.fab-edge) ::slotted(ion-fab-button.fab-button-small){margin-top:calc((-100% + 16px) / 2)}:host(.fab-vertical-top.fab-edge) ::slotted(ion-fab-list.fab-list-side-start),:host(.fab-vertical-top.fab-edge) ::slotted(ion-fab-list.fab-list-side-end){margin-top:-50%}:host(.fab-vertical-top.fab-edge) ::slotted(ion-fab-list.fab-list-side-top),:host(.fab-vertical-top.fab-edge) ::slotted(ion-fab-list.fab-list-side-bottom){margin-top:calc(50% + 10px)}:host(.fab-vertical-bottom){bottom:10px}:host(.fab-vertical-bottom.fab-edge){bottom:0}:host(.fab-vertical-bottom.fab-edge) ::slotted(ion-fab-button){margin-bottom:-50%}:host(.fab-vertical-bottom.fab-edge) ::slotted(ion-fab-button.fab-button-small){margin-bottom:calc((-100% + 16px) / 2)}:host(.fab-vertical-bottom.fab-edge) ::slotted(ion-fab-list.fab-list-side-start),:host(.fab-vertical-bottom.fab-edge) ::slotted(ion-fab-list.fab-list-side-end){margin-bottom:-50%}:host(.fab-vertical-bottom.fab-edge) ::slotted(ion-fab-list.fab-list-side-top),:host(.fab-vertical-bottom.fab-edge) ::slotted(ion-fab-list.fab-list-side-bottom){margin-bottom:calc(50% + 10px)}:host(.fab-vertical-center){top:0px;bottom:0px;margin-top:auto;margin-bottom:auto}`;
|
|
11
11
|
|
|
12
12
|
const Fab = class {
|
|
13
13
|
constructor(hostRef) {
|
|
14
14
|
registerInstance(this, hostRef);
|
|
15
|
-
/**
|
|
16
|
-
* If `true`, the fab will display on the edge of the header if
|
|
17
|
-
* `vertical` is `"top"`, and on the edge of the footer if
|
|
18
|
-
* it is `"bottom"`. Should be used with a `fixed` slot.
|
|
19
|
-
*/
|
|
20
|
-
this.edge = false;
|
|
21
|
-
/**
|
|
22
|
-
* If `true`, both the `ion-fab-button` and all `ion-fab-list` inside `ion-fab` will become active.
|
|
23
|
-
* That means `ion-fab-button` will become a `close` icon and `ion-fab-list` will become visible.
|
|
24
|
-
*/
|
|
25
|
-
this.activated = false;
|
|
26
15
|
}
|
|
16
|
+
get el() { return getElement(this); }
|
|
17
|
+
/**
|
|
18
|
+
* Where to align the fab horizontally in the viewport.
|
|
19
|
+
*/
|
|
20
|
+
horizontal;
|
|
21
|
+
/**
|
|
22
|
+
* Where to align the fab vertically in the viewport.
|
|
23
|
+
*/
|
|
24
|
+
vertical;
|
|
25
|
+
/**
|
|
26
|
+
* If `true`, the fab will display on the edge of the header if
|
|
27
|
+
* `vertical` is `"top"`, and on the edge of the footer if
|
|
28
|
+
* it is `"bottom"`. Should be used with a `fixed` slot.
|
|
29
|
+
*/
|
|
30
|
+
edge = false;
|
|
31
|
+
/**
|
|
32
|
+
* If `true`, both the `ion-fab-button` and all `ion-fab-list` inside `ion-fab` will become active.
|
|
33
|
+
* That means `ion-fab-button` will become a `close` icon and `ion-fab-list` will become visible.
|
|
34
|
+
*/
|
|
35
|
+
activated = false;
|
|
27
36
|
activatedChanged() {
|
|
28
37
|
const activated = this.activated;
|
|
29
38
|
const fab = this.getFab();
|
|
@@ -68,7 +77,6 @@ const Fab = class {
|
|
|
68
77
|
'fab-edge': edge,
|
|
69
78
|
} }, h("slot", { key: '9394ef6d6e5b0410fa6ba212171f687fb178ce2d' })));
|
|
70
79
|
}
|
|
71
|
-
get el() { return getElement(this); }
|
|
72
80
|
static get watchers() { return {
|
|
73
81
|
"activated": [{
|
|
74
82
|
"activatedChanged": 0
|
|
@@ -86,68 +94,119 @@ const FabButton = class {
|
|
|
86
94
|
registerInstance(this, hostRef);
|
|
87
95
|
this.ionFocus = createEvent(this, "ionFocus", 7);
|
|
88
96
|
this.ionBlur = createEvent(this, "ionBlur", 7);
|
|
89
|
-
this.fab = null;
|
|
90
|
-
this.formButtonEl = null;
|
|
91
|
-
this.formEl = null;
|
|
92
|
-
this.inheritedAttributes = {};
|
|
93
|
-
/**
|
|
94
|
-
* If `true`, the fab button will be show a close icon.
|
|
95
|
-
*/
|
|
96
|
-
this.activated = false;
|
|
97
|
-
/**
|
|
98
|
-
* If `true`, the user cannot interact with the fab button.
|
|
99
|
-
*/
|
|
100
|
-
this.disabled = false;
|
|
101
|
-
/**
|
|
102
|
-
* When using a router, it specifies the transition direction when navigating to
|
|
103
|
-
* another page using `href`.
|
|
104
|
-
*/
|
|
105
|
-
this.routerDirection = 'forward';
|
|
106
|
-
/**
|
|
107
|
-
* If `true`, the fab button will show when in a fab-list.
|
|
108
|
-
*/
|
|
109
|
-
this.show = false;
|
|
110
|
-
/**
|
|
111
|
-
* If `true`, the fab button will be translucent.
|
|
112
|
-
* Only applies when the mode is `"ios"` and the device supports
|
|
113
|
-
* [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
|
|
114
|
-
*/
|
|
115
|
-
this.translucent = false;
|
|
116
|
-
/**
|
|
117
|
-
* The type of the button.
|
|
118
|
-
*/
|
|
119
|
-
this.type = 'button';
|
|
120
|
-
/**
|
|
121
|
-
* The icon name to use for the close icon. This will appear when the fab button
|
|
122
|
-
* is pressed. Only applies if it is the main button inside of a fab containing a
|
|
123
|
-
* fab list.
|
|
124
|
-
*/
|
|
125
|
-
this.closeIcon = close;
|
|
126
|
-
this.onFocus = () => {
|
|
127
|
-
this.ionFocus.emit();
|
|
128
|
-
};
|
|
129
|
-
this.onBlur = () => {
|
|
130
|
-
this.ionBlur.emit();
|
|
131
|
-
};
|
|
132
|
-
this.onClick = (ev) => {
|
|
133
|
-
const { el, fab } = this;
|
|
134
|
-
if (this.type !== 'button' && hasShadowDom(el)) {
|
|
135
|
-
this.submitForm(ev);
|
|
136
|
-
}
|
|
137
|
-
if (fab) {
|
|
138
|
-
fab.toggle();
|
|
139
|
-
}
|
|
140
|
-
};
|
|
141
97
|
}
|
|
98
|
+
fab = null;
|
|
99
|
+
formButtonEl = null;
|
|
100
|
+
formEl = null;
|
|
101
|
+
inheritedAttributes = {};
|
|
102
|
+
get el() { return getElement(this); }
|
|
103
|
+
/**
|
|
104
|
+
* The color to use from your application's color palette.
|
|
105
|
+
* Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
|
|
106
|
+
* For more information on colors, see [theming](/docs/theming/basics).
|
|
107
|
+
*/
|
|
108
|
+
color;
|
|
109
|
+
/**
|
|
110
|
+
* If `true`, the fab button will be show a close icon.
|
|
111
|
+
*/
|
|
112
|
+
activated = false;
|
|
113
|
+
/**
|
|
114
|
+
* If `true`, the user cannot interact with the fab button.
|
|
115
|
+
*/
|
|
116
|
+
disabled = false;
|
|
142
117
|
disabledChanged() {
|
|
143
118
|
const { disabled } = this;
|
|
144
119
|
if (this.formButtonEl) {
|
|
145
120
|
this.formButtonEl.disabled = disabled;
|
|
146
121
|
}
|
|
147
122
|
}
|
|
123
|
+
/**
|
|
124
|
+
* This attribute instructs browsers to download a URL instead of navigating to
|
|
125
|
+
* it, so the user will be prompted to save it as a local file. If the attribute
|
|
126
|
+
* has a value, it is used as the pre-filled file name in the Save prompt
|
|
127
|
+
* (the user can still change the file name if they want).
|
|
128
|
+
*/
|
|
129
|
+
download;
|
|
130
|
+
/**
|
|
131
|
+
* Contains a URL or a URL fragment that the hyperlink points to.
|
|
132
|
+
* If this property is set, an anchor tag will be rendered.
|
|
133
|
+
*/
|
|
134
|
+
href;
|
|
135
|
+
/**
|
|
136
|
+
* Specifies the relationship of the target object to the link object.
|
|
137
|
+
* The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types).
|
|
138
|
+
*/
|
|
139
|
+
rel;
|
|
140
|
+
/**
|
|
141
|
+
* When using a router, it specifies the transition direction when navigating to
|
|
142
|
+
* another page using `href`.
|
|
143
|
+
*/
|
|
144
|
+
routerDirection = 'forward';
|
|
145
|
+
/**
|
|
146
|
+
* When using a router, it specifies the transition animation when navigating to
|
|
147
|
+
* another page using `href`.
|
|
148
|
+
*/
|
|
149
|
+
routerAnimation;
|
|
150
|
+
/**
|
|
151
|
+
* Specifies where to display the linked URL.
|
|
152
|
+
* Only applies when an `href` is provided.
|
|
153
|
+
* Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
|
|
154
|
+
*/
|
|
155
|
+
target;
|
|
156
|
+
/**
|
|
157
|
+
* If `true`, the fab button will show when in a fab-list.
|
|
158
|
+
*/
|
|
159
|
+
show = false;
|
|
160
|
+
/**
|
|
161
|
+
* If `true`, the fab button will be translucent.
|
|
162
|
+
* Only applies when the mode is `"ios"` and the device supports
|
|
163
|
+
* [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
|
|
164
|
+
*/
|
|
165
|
+
translucent = false;
|
|
166
|
+
/**
|
|
167
|
+
* The type of the button.
|
|
168
|
+
*/
|
|
169
|
+
type = 'button';
|
|
170
|
+
/**
|
|
171
|
+
* The HTML form element or form element id. Used to submit a form when the button is not a child of the form.
|
|
172
|
+
*/
|
|
173
|
+
form;
|
|
174
|
+
/**
|
|
175
|
+
* The size of the button. Set this to `small` in order to have a mini fab button.
|
|
176
|
+
*/
|
|
177
|
+
size;
|
|
178
|
+
/**
|
|
179
|
+
* The icon name to use for the close icon. This will appear when the fab button
|
|
180
|
+
* is pressed. Only applies if it is the main button inside of a fab containing a
|
|
181
|
+
* fab list.
|
|
182
|
+
*/
|
|
183
|
+
closeIcon = close;
|
|
184
|
+
/**
|
|
185
|
+
* Emitted when the button has focus.
|
|
186
|
+
*/
|
|
187
|
+
ionFocus;
|
|
188
|
+
/**
|
|
189
|
+
* Emitted when the button loses focus.
|
|
190
|
+
*/
|
|
191
|
+
ionBlur;
|
|
148
192
|
connectedCallback() {
|
|
149
193
|
this.fab = this.el.closest('ion-fab');
|
|
150
194
|
}
|
|
195
|
+
onFocus = () => {
|
|
196
|
+
this.ionFocus.emit();
|
|
197
|
+
};
|
|
198
|
+
onBlur = () => {
|
|
199
|
+
this.ionBlur.emit();
|
|
200
|
+
};
|
|
201
|
+
onClick = (ev) => {
|
|
202
|
+
const { el, fab } = this;
|
|
203
|
+
if (this.type !== 'button' && hasShadowDom(el)) {
|
|
204
|
+
this.submitForm(ev);
|
|
205
|
+
}
|
|
206
|
+
if (fab) {
|
|
207
|
+
fab.toggle();
|
|
208
|
+
}
|
|
209
|
+
};
|
|
151
210
|
/**
|
|
152
211
|
* The native button rendered inside `ion-fab-button` is in the Shadow DOM and
|
|
153
212
|
* does not participate in form submission, so a hidden native button is added
|
|
@@ -238,9 +297,8 @@ const FabButton = class {
|
|
|
238
297
|
'ion-activatable': true,
|
|
239
298
|
'ion-focusable': true,
|
|
240
299
|
[`fab-button-${size}`]: size !== undefined,
|
|
241
|
-
}) }, h(TagType,
|
|
300
|
+
}) }, h(TagType, { key: '9e2fd462316e1aec50f53fa1b7ad7f02fd399592', ...attrs, class: "button-native", part: "native", disabled: disabled, onFocus: this.onFocus, onBlur: this.onBlur, onClick: (ev) => type === 'button' && openURL(href, ev, this.routerDirection, this.routerAnimation), ...inheritedAttributes }, h("ion-icon", { key: 'c3bdb8614eb249297afc963810066658dc85efd6', "aria-hidden": "true", icon: this.closeIcon, part: "close-icon", class: "close-icon", lazy: false }), h("span", { key: 'a6a505b24d21cc716d2e3351ad4c380b95c768d7', class: "button-inner" }, h("slot", { key: 'f44fc1e95533438ee3adc8cc5bdd9e1e85849fd6' })), mode === 'md' && h("ion-ripple-effect", { key: 'b7c7dc7fceb0bb5613239608225f040010b7b2bd' }))));
|
|
242
301
|
}
|
|
243
|
-
get el() { return getElement(this); }
|
|
244
302
|
static get watchers() { return {
|
|
245
303
|
"disabled": [{
|
|
246
304
|
"disabledChanged": 0
|
|
@@ -257,16 +315,13 @@ const fabListCss = () => `:host{margin-left:0;margin-right:0;margin-top:calc(100
|
|
|
257
315
|
const FabList = class {
|
|
258
316
|
constructor(hostRef) {
|
|
259
317
|
registerInstance(this, hostRef);
|
|
260
|
-
this.activateTimeouts = [];
|
|
261
|
-
/**
|
|
262
|
-
* If `true`, the fab list will show all fab buttons in the list.
|
|
263
|
-
*/
|
|
264
|
-
this.activated = false;
|
|
265
|
-
/**
|
|
266
|
-
* The side the fab list will show on relative to the main fab button.
|
|
267
|
-
*/
|
|
268
|
-
this.side = 'bottom';
|
|
269
318
|
}
|
|
319
|
+
get el() { return getElement(this); }
|
|
320
|
+
activateTimeouts = [];
|
|
321
|
+
/**
|
|
322
|
+
* If `true`, the fab list will show all fab buttons in the list.
|
|
323
|
+
*/
|
|
324
|
+
activated = false;
|
|
270
325
|
activatedChanged(activated) {
|
|
271
326
|
this.activateTimeouts.forEach(clearTimeout);
|
|
272
327
|
this.activateTimeouts = [];
|
|
@@ -277,6 +332,10 @@ const FabList = class {
|
|
|
277
332
|
this.activateTimeouts.push(setTimeout(() => (fab.show = activated), i * timeout));
|
|
278
333
|
});
|
|
279
334
|
}
|
|
335
|
+
/**
|
|
336
|
+
* The side the fab list will show on relative to the main fab button.
|
|
337
|
+
*/
|
|
338
|
+
side = 'bottom';
|
|
280
339
|
disconnectedCallback() {
|
|
281
340
|
this.activateTimeouts.forEach(clearTimeout);
|
|
282
341
|
this.activateTimeouts = [];
|
|
@@ -289,7 +348,6 @@ const FabList = class {
|
|
|
289
348
|
[`fab-list-side-${this.side}`]: true,
|
|
290
349
|
} }, h("slot", { key: 'd9e1541cb044e209bc2dff14080f3b938a2b84ae' })));
|
|
291
350
|
}
|
|
292
|
-
get el() { return getElement(this); }
|
|
293
351
|
static get watchers() { return {
|
|
294
352
|
"activated": [{
|
|
295
353
|
"activatedChanged": 0
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, c as createEvent,
|
|
5
|
-
import { b as inheritAttributes } from './helpers-
|
|
6
|
-
import { b as getIonMode } from './ionic-global-
|
|
4
|
+
import { r as registerInstance, c as createEvent, g as getElement, f as printIonWarning, h, d as Host } from './index-D1CQtpUN.js';
|
|
5
|
+
import { b as inheritAttributes } from './helpers-BPcITY5s.js';
|
|
6
|
+
import { b as getIonMode } from './ionic-global-5bZ91kOL.js';
|
|
7
7
|
|
|
8
8
|
const imgCss = () => `:host{display:block;-o-object-fit:contain;object-fit:contain}img{display:block;width:100%;height:100%;-o-object-fit:inherit;object-fit:inherit;-o-object-position:inherit;object-position:inherit}`;
|
|
9
9
|
|
|
@@ -13,21 +13,38 @@ const Img = class {
|
|
|
13
13
|
this.ionImgWillLoad = createEvent(this, "ionImgWillLoad", 7);
|
|
14
14
|
this.ionImgDidLoad = createEvent(this, "ionImgDidLoad", 7);
|
|
15
15
|
this.ionError = createEvent(this, "ionError", 7);
|
|
16
|
-
this.inheritedAttributes = {};
|
|
17
|
-
this.onLoad = () => {
|
|
18
|
-
this.ionImgDidLoad.emit();
|
|
19
|
-
};
|
|
20
|
-
this.onError = () => {
|
|
21
|
-
this.ionError.emit();
|
|
22
|
-
};
|
|
23
16
|
}
|
|
17
|
+
io;
|
|
18
|
+
inheritedAttributes = {};
|
|
19
|
+
loadTimeout;
|
|
20
|
+
get el() { return getElement(this); }
|
|
21
|
+
loadSrc;
|
|
22
|
+
loadError;
|
|
23
|
+
/**
|
|
24
|
+
* This attribute defines the alternative text describing the image.
|
|
25
|
+
* Users will see this text displayed if the image URL is wrong,
|
|
26
|
+
* the image is not in one of the supported formats, or if the image is not yet downloaded.
|
|
27
|
+
*/
|
|
28
|
+
alt;
|
|
29
|
+
/**
|
|
30
|
+
* The image URL. This attribute is mandatory for the `<img>` element.
|
|
31
|
+
*/
|
|
32
|
+
src;
|
|
24
33
|
srcChanged() {
|
|
25
34
|
this.addIO();
|
|
26
35
|
}
|
|
36
|
+
/** Emitted when the img src has been set */
|
|
37
|
+
ionImgWillLoad;
|
|
38
|
+
/** Emitted when the image has finished loading */
|
|
39
|
+
ionImgDidLoad;
|
|
40
|
+
/** Emitted when the img fails to load */
|
|
41
|
+
ionError;
|
|
27
42
|
componentWillLoad() {
|
|
28
43
|
this.inheritedAttributes = inheritAttributes(this.el, ['draggable']);
|
|
29
44
|
}
|
|
30
45
|
componentDidLoad() {
|
|
46
|
+
printIonWarning('[ion-img] - This component is deprecated and will be removed in Ionic v10. ' +
|
|
47
|
+
'Use a native <img> with the loading="lazy" attribute instead.', this.el);
|
|
31
48
|
this.addIO();
|
|
32
49
|
}
|
|
33
50
|
disconnectedCallback() {
|
|
@@ -71,6 +88,12 @@ const Img = class {
|
|
|
71
88
|
this.loadSrc = this.src;
|
|
72
89
|
this.ionImgWillLoad.emit();
|
|
73
90
|
}
|
|
91
|
+
onLoad = () => {
|
|
92
|
+
this.ionImgDidLoad.emit();
|
|
93
|
+
};
|
|
94
|
+
onError = () => {
|
|
95
|
+
this.ionError.emit();
|
|
96
|
+
};
|
|
74
97
|
removeIO() {
|
|
75
98
|
if (this.io) {
|
|
76
99
|
this.io.disconnect();
|
|
@@ -80,9 +103,8 @@ const Img = class {
|
|
|
80
103
|
render() {
|
|
81
104
|
const { loadSrc, alt, onLoad, loadError, inheritedAttributes } = this;
|
|
82
105
|
const { draggable } = inheritedAttributes;
|
|
83
|
-
return (h(Host, { key: '
|
|
106
|
+
return (h(Host, { key: '57bfb44d9850381fe7b6fcf0c9019b03f7ef86ec', class: getIonMode(this) }, h("img", { key: '888ec06a266fa2751fc0147ede6a567f4e2b29a6', decoding: "async", src: loadSrc, alt: alt, onLoad: onLoad, onError: loadError, part: "image", draggable: isDraggable(draggable) })));
|
|
84
107
|
}
|
|
85
|
-
get el() { return getElement(this); }
|
|
86
108
|
static get watchers() { return {
|
|
87
109
|
"src": [{
|
|
88
110
|
"srcChanged": 0
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, c as createEvent, w as writeTask, a as readTask, h, d as Host,
|
|
5
|
-
import { f as findClosestIonContent, p as printIonContentErrorMsg, g as getScrollElement } from './index-
|
|
6
|
-
import { b as getIonMode } from './ionic-global-
|
|
7
|
-
import { E as ENABLE_HTML_CONTENT_DEFAULT
|
|
8
|
-
import './
|
|
4
|
+
import { r as registerInstance, c as createEvent, g as getElement, w as writeTask, a as readTask, h, d as Host, e as config } from './index-D1CQtpUN.js';
|
|
5
|
+
import { f as findClosestIonContent, p as printIonContentErrorMsg, g as getScrollElement } from './index-DcUt1pPn.js';
|
|
6
|
+
import { b as getIonMode } from './ionic-global-5bZ91kOL.js';
|
|
7
|
+
import { E as ENABLE_HTML_CONTENT_DEFAULT } from './config-DWCzVL3Y.js';
|
|
8
|
+
import { s as sanitizeDOMString } from './index-DDa8edAS.js';
|
|
9
|
+
import './helpers-BPcITY5s.js';
|
|
9
10
|
|
|
10
11
|
const infiniteScrollCss = () => `ion-infinite-scroll{display:none;width:100%}.infinite-scroll-enabled{display:block}`;
|
|
11
12
|
|
|
@@ -13,71 +14,31 @@ const InfiniteScroll = class {
|
|
|
13
14
|
constructor(hostRef) {
|
|
14
15
|
registerInstance(this, hostRef);
|
|
15
16
|
this.ionInfinite = createEvent(this, "ionInfinite", 7);
|
|
16
|
-
this.thrPx = 0;
|
|
17
|
-
this.thrPc = 0;
|
|
18
|
-
/**
|
|
19
|
-
* didFire exists so that ionInfinite
|
|
20
|
-
* does not fire multiple times if
|
|
21
|
-
* users continue to scroll after
|
|
22
|
-
* scrolling into the infinite
|
|
23
|
-
* scroll threshold.
|
|
24
|
-
*/
|
|
25
|
-
this.didFire = false;
|
|
26
|
-
this.isBusy = false;
|
|
27
|
-
this.isLoading = false;
|
|
28
|
-
/**
|
|
29
|
-
* The threshold distance from the bottom
|
|
30
|
-
* of the content to call the `infinite` output event when scrolled.
|
|
31
|
-
* The threshold value can be either a percent, or
|
|
32
|
-
* in pixels. For example, use the value of `10%` for the `infinite`
|
|
33
|
-
* output event to get called when the user has scrolled 10%
|
|
34
|
-
* from the bottom of the page. Use the value `100px` when the
|
|
35
|
-
* scroll is within 100 pixels from the bottom of the page.
|
|
36
|
-
*/
|
|
37
|
-
this.threshold = '15%';
|
|
38
|
-
/**
|
|
39
|
-
* If `true`, the infinite scroll will be hidden and scroll event listeners
|
|
40
|
-
* will be removed.
|
|
41
|
-
*
|
|
42
|
-
* Set this to true to disable the infinite scroll from actively
|
|
43
|
-
* trying to receive new data while scrolling. This is useful
|
|
44
|
-
* when it is known that there is no more data that can be added, and
|
|
45
|
-
* the infinite scroll is no longer needed.
|
|
46
|
-
*/
|
|
47
|
-
this.disabled = false;
|
|
48
|
-
/**
|
|
49
|
-
* The position of the infinite scroll element.
|
|
50
|
-
* The value can be either `top` or `bottom`.
|
|
51
|
-
*/
|
|
52
|
-
this.position = 'bottom';
|
|
53
|
-
this.onScroll = () => {
|
|
54
|
-
const scrollEl = this.scrollEl;
|
|
55
|
-
if (!scrollEl || !this.canStart()) {
|
|
56
|
-
return 1;
|
|
57
|
-
}
|
|
58
|
-
const infiniteHeight = this.el.offsetHeight;
|
|
59
|
-
if (infiniteHeight === 0) {
|
|
60
|
-
// if there is no height of this element then do nothing
|
|
61
|
-
return 2;
|
|
62
|
-
}
|
|
63
|
-
const scrollTop = scrollEl.scrollTop;
|
|
64
|
-
const scrollHeight = scrollEl.scrollHeight;
|
|
65
|
-
const height = scrollEl.offsetHeight;
|
|
66
|
-
const threshold = this.thrPc !== 0 ? height * this.thrPc : this.thrPx;
|
|
67
|
-
const distanceFromInfinite = this.position === 'bottom'
|
|
68
|
-
? scrollHeight - infiniteHeight - scrollTop - threshold - height
|
|
69
|
-
: scrollTop - infiniteHeight - threshold;
|
|
70
|
-
if (distanceFromInfinite < 0) {
|
|
71
|
-
if (!this.didFire) {
|
|
72
|
-
this.isLoading = true;
|
|
73
|
-
this.didFire = true;
|
|
74
|
-
this.ionInfinite.emit();
|
|
75
|
-
return 3;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
return 4;
|
|
79
|
-
};
|
|
80
17
|
}
|
|
18
|
+
thrPx = 0;
|
|
19
|
+
thrPc = 0;
|
|
20
|
+
scrollEl;
|
|
21
|
+
/**
|
|
22
|
+
* didFire exists so that ionInfinite
|
|
23
|
+
* does not fire multiple times if
|
|
24
|
+
* users continue to scroll after
|
|
25
|
+
* scrolling into the infinite
|
|
26
|
+
* scroll threshold.
|
|
27
|
+
*/
|
|
28
|
+
didFire = false;
|
|
29
|
+
isBusy = false;
|
|
30
|
+
get el() { return getElement(this); }
|
|
31
|
+
isLoading = false;
|
|
32
|
+
/**
|
|
33
|
+
* The threshold distance from the bottom
|
|
34
|
+
* of the content to call the `infinite` output event when scrolled.
|
|
35
|
+
* The threshold value can be either a percent, or
|
|
36
|
+
* in pixels. For example, use the value of `10%` for the `infinite`
|
|
37
|
+
* output event to get called when the user has scrolled 10%
|
|
38
|
+
* from the bottom of the page. Use the value `100px` when the
|
|
39
|
+
* scroll is within 100 pixels from the bottom of the page.
|
|
40
|
+
*/
|
|
41
|
+
threshold = '15%';
|
|
81
42
|
thresholdChanged() {
|
|
82
43
|
const val = this.threshold;
|
|
83
44
|
if (val.lastIndexOf('%') > -1) {
|
|
@@ -89,6 +50,16 @@ const InfiniteScroll = class {
|
|
|
89
50
|
this.thrPc = 0;
|
|
90
51
|
}
|
|
91
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* If `true`, the infinite scroll will be hidden and scroll event listeners
|
|
55
|
+
* will be removed.
|
|
56
|
+
*
|
|
57
|
+
* Set this to true to disable the infinite scroll from actively
|
|
58
|
+
* trying to receive new data while scrolling. This is useful
|
|
59
|
+
* when it is known that there is no more data that can be added, and
|
|
60
|
+
* the infinite scroll is no longer needed.
|
|
61
|
+
*/
|
|
62
|
+
disabled = false;
|
|
92
63
|
disabledChanged() {
|
|
93
64
|
const disabled = this.disabled;
|
|
94
65
|
if (disabled) {
|
|
@@ -97,6 +68,18 @@ const InfiniteScroll = class {
|
|
|
97
68
|
}
|
|
98
69
|
this.enableScrollEvents(!disabled);
|
|
99
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* The position of the infinite scroll element.
|
|
73
|
+
* The value can be either `top` or `bottom`.
|
|
74
|
+
*/
|
|
75
|
+
position = 'bottom';
|
|
76
|
+
/**
|
|
77
|
+
* Emitted when the scroll reaches
|
|
78
|
+
* the threshold distance. From within your infinite handler,
|
|
79
|
+
* you must call the infinite scroll's `complete()` method when
|
|
80
|
+
* your async operation has completed.
|
|
81
|
+
*/
|
|
82
|
+
ionInfinite;
|
|
100
83
|
async connectedCallback() {
|
|
101
84
|
const contentEl = findClosestIonContent(this.el);
|
|
102
85
|
if (!contentEl) {
|
|
@@ -118,6 +101,33 @@ const InfiniteScroll = class {
|
|
|
118
101
|
this.enableScrollEvents(false);
|
|
119
102
|
this.scrollEl = undefined;
|
|
120
103
|
}
|
|
104
|
+
onScroll = () => {
|
|
105
|
+
const scrollEl = this.scrollEl;
|
|
106
|
+
if (!scrollEl || !this.canStart()) {
|
|
107
|
+
return 1;
|
|
108
|
+
}
|
|
109
|
+
const infiniteHeight = this.el.offsetHeight;
|
|
110
|
+
if (infiniteHeight === 0) {
|
|
111
|
+
// if there is no height of this element then do nothing
|
|
112
|
+
return 2;
|
|
113
|
+
}
|
|
114
|
+
const scrollTop = scrollEl.scrollTop;
|
|
115
|
+
const scrollHeight = scrollEl.scrollHeight;
|
|
116
|
+
const height = scrollEl.offsetHeight;
|
|
117
|
+
const threshold = this.thrPc !== 0 ? height * this.thrPc : this.thrPx;
|
|
118
|
+
const distanceFromInfinite = this.position === 'bottom'
|
|
119
|
+
? scrollHeight - infiniteHeight - scrollTop - threshold - height
|
|
120
|
+
: scrollTop - infiniteHeight - threshold;
|
|
121
|
+
if (distanceFromInfinite < 0) {
|
|
122
|
+
if (!this.didFire) {
|
|
123
|
+
this.isLoading = true;
|
|
124
|
+
this.didFire = true;
|
|
125
|
+
this.ionInfinite.emit();
|
|
126
|
+
return 3;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
return 4;
|
|
130
|
+
};
|
|
121
131
|
/**
|
|
122
132
|
* Call `complete()` within the `ionInfinite` output event handler when
|
|
123
133
|
* your async operation has completed. For example, the `loading`
|
|
@@ -202,7 +212,6 @@ const InfiniteScroll = class {
|
|
|
202
212
|
'infinite-scroll-enabled': !disabled,
|
|
203
213
|
} }));
|
|
204
214
|
}
|
|
205
|
-
get el() { return getElement(this); }
|
|
206
215
|
static get watchers() { return {
|
|
207
216
|
"threshold": [{
|
|
208
217
|
"thresholdChanged": 0
|
|
@@ -221,8 +230,27 @@ const infiniteScrollContentMdCss = () => `ion-infinite-scroll-content{display:-m
|
|
|
221
230
|
const InfiniteScrollContent = class {
|
|
222
231
|
constructor(hostRef) {
|
|
223
232
|
registerInstance(this, hostRef);
|
|
224
|
-
this.customHTMLEnabled = config.get('innerHTMLTemplatesEnabled', ENABLE_HTML_CONTENT_DEFAULT);
|
|
225
233
|
}
|
|
234
|
+
customHTMLEnabled = config.get('innerHTMLTemplatesEnabled', ENABLE_HTML_CONTENT_DEFAULT);
|
|
235
|
+
/**
|
|
236
|
+
* An animated SVG spinner that shows while loading.
|
|
237
|
+
*/
|
|
238
|
+
loadingSpinner;
|
|
239
|
+
/**
|
|
240
|
+
* Optional text to display while loading.
|
|
241
|
+
* `loadingText` can accept either plaintext or HTML as a string.
|
|
242
|
+
* To display characters normally reserved for HTML, they
|
|
243
|
+
* must be escaped. For example `<Ionic>` would become
|
|
244
|
+
* `<Ionic>`
|
|
245
|
+
*
|
|
246
|
+
* For more information: [Security Documentation](https://ionicframework.com/docs/faq/security)
|
|
247
|
+
*
|
|
248
|
+
* This property accepts custom HTML as a string.
|
|
249
|
+
* Content is parsed as plaintext by default.
|
|
250
|
+
* `innerHTMLTemplatesEnabled` must be set to `true` in the Ionic config
|
|
251
|
+
* before custom HTML can be used.
|
|
252
|
+
*/
|
|
253
|
+
loadingText;
|
|
226
254
|
componentDidLoad() {
|
|
227
255
|
if (this.loadingSpinner === undefined) {
|
|
228
256
|
const mode = getIonMode(this);
|