@ionic/core 9.0.0 → 9.0.1-dev.11787248963.10a00c73
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-63OhffQv.js → p-66ogmUZU.js} +1 -1
- package/components/p-6Vp915Y7.js +4 -0
- package/components/p-7PNwKFZi.js +4 -0
- package/components/{p-G0TxqHfe.js → p-A8MJRBIY.js} +1 -1
- package/components/p-AQcCdH2_.js +4 -0
- package/{dist/ionic/p-Dn0mqQ_R.js → components/p-B6x5_b9w.js} +1 -1
- package/components/p-B8MQjdvk.js +4 -0
- package/components/p-BA_4ZIEg.js +4 -0
- package/components/p-BFtL8t1r.js +4 -0
- package/components/{p-DaA_8eqt.js → p-BMfgF-Tv.js} +1 -1
- package/components/p-BPDxVIRr.js +4 -0
- package/components/p-BSARlp49.js +4 -0
- package/components/p-B_gJaBk0.js +4 -0
- package/components/p-BdwCtX8Y.js +4 -0
- package/components/p-Bg4OwDwb.js +4 -0
- package/components/{p-DV85C0e0.js → p-BgUIV8NQ.js} +1 -1
- package/components/p-Bnc0m4SW.js +4 -0
- package/components/p-BpLt_Ptn.js +4 -0
- package/components/p-BqBDq1Ma.js +4 -0
- package/components/{p-C_phlPMC.js → p-BrFaQbGY.js} +1 -1
- package/{dist/ionic/p-Cdjxf_yg.js → components/p-BuPAFTWI.js} +1 -1
- package/components/p-Bx2saTHs.js +4 -0
- package/components/p-BxhE2W85.js +4 -0
- package/components/p-CHswSpKy.js +4 -0
- package/components/{p-fruGqVHh.js → p-CQAjyETU.js} +1 -1
- package/components/{p-1jI5oW-W.js → p-CR9OgE6N.js} +1 -1
- package/components/p-CWETxTjE.js +4 -0
- package/components/p-CaZeZIL2.js +4 -0
- package/components/p-CaiZOhfC.js +4 -0
- package/components/p-CgvDC7hC.js +4 -0
- package/components/{p-BqPNzJf6.js → p-CqyGR9Aq.js} +1 -1
- package/components/{p-UIBJkZf8.js → p-D0YpjgON.js} +1 -1
- package/components/p-D7ysFE2B.js +4 -0
- package/{dist/ionic/p-4eOQC00Z.js → components/p-DCWfzDM8.js} +1 -1
- package/components/{p-DwpKZ6rl.js → p-DDdkefwf.js} +1 -1
- package/components/{p-DzRT60Tw.js → p-DEW7CnUc.js} +1 -1
- package/components/p-DQ1IPvZO.js +4 -0
- package/components/p-DcOH6-o5.js +4 -0
- package/components/{p-DD5fQ4EQ.js → p-DfdYCsov.js} +1 -1
- package/components/{p-DSzSbVP2.js → p-DhOoEIAs.js} +1 -1
- package/components/{p-DM-PrAoh.js → p-Dl_7b_UJ.js} +1 -1
- package/components/p-DqAI6tg7.js +4 -0
- package/components/p-DrehWDfv.js +4 -0
- package/components/{p-ryyf_ItD.js → p-DysqCsJu.js} +1 -1
- package/components/p-H1f2qsk4.js +4 -0
- package/components/p-HVYBAhFx.js +4 -0
- package/components/{p-CbhUdtjf.js → p-Kmrg3Fed.js} +1 -1
- package/components/{p-Bjig0DJK.js → p-RFfE9hF6.js} +1 -1
- package/{dist/ionic/p-CBWAXjA5.js → components/p-SR-LLqp_.js} +1 -1
- package/components/p-eFI3mtEX.js +4 -0
- package/components/p-gFwXiYC_.js +4 -0
- package/components/p-tX3UxCnU.js +4 -0
- package/components/p-v2NpoOHp.js +4 -0
- package/dist/cjs/{animation-C0mOHzej.js → animation-D-OqR4a4.js} +1 -1
- package/dist/cjs/{app-globals-BREG4twP.js → app-globals-BzgwARwJ.js} +1 -1
- package/dist/cjs/{button-active-CVMevT9a.js → button-active-BlWSD7uK.js} +2 -2
- package/dist/cjs/{format-pp0Du3K-.js → format-D7ig6Vm0.js} +1 -1
- package/dist/cjs/{framework-delegate-Dfo5XsGv.js → framework-delegate-BZUx4TnE.js} +1 -1
- package/dist/cjs/{gesture-controller-BDUH7687.js → gesture-controller-CeJslptU.js} +6 -14
- package/dist/cjs/{hardware-back-button-fqpYh-kd.js → hardware-back-button-JOAEFSzc.js} +1 -1
- package/dist/cjs/{helpers-YPQybDph.js → helpers-Dj5o76mq.js} +1 -1
- package/dist/cjs/{index-BLdJCcJY.js → index-2sO-zkZ2.js} +4 -4
- package/dist/cjs/{index-uvry__L4.js → index-BrVMoqUk.js} +3 -1
- package/dist/cjs/{index-zVCah4Uz.js → index-C8zH6b3d.js} +2 -2
- package/dist/cjs/{index-DXsPSne6.js → index-CZ6vzt_q.js} +5 -5
- package/dist/cjs/{index-DDg31ZF5.js → index-Csue6G3m.js} +2 -2
- package/dist/cjs/{index-DwlRtFZe.js → index-DRPqwSvU.js} +1 -1
- package/dist/cjs/{index-B7zJsYWS.js → index-EJLjthTK.js} +1 -2
- package/dist/cjs/index.cjs.js +14 -14
- package/dist/cjs/{input-shims-Cbu1fcye.js → input-shims-Bh7bnt2v.js} +3 -3
- package/dist/cjs/{input.utils-BZdMWVrt.js → input.utils-Cq3g9uHy.js} +1 -1
- package/dist/cjs/ion-accordion_2.cjs.entry.js +335 -364
- package/dist/cjs/ion-action-sheet.cjs.entry.js +60 -140
- package/dist/cjs/ion-alert.cjs.entry.js +67 -159
- package/dist/cjs/ion-app_8.cjs.entry.js +163 -258
- package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -8
- package/dist/cjs/ion-back-button.cjs.entry.js +21 -45
- package/dist/cjs/ion-backdrop.cjs.entry.js +14 -18
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +117 -195
- package/dist/cjs/ion-button_2.cjs.entry.js +61 -130
- package/dist/cjs/ion-card_5.cjs.entry.js +28 -80
- package/dist/cjs/ion-checkbox.cjs.entry.js +98 -147
- package/dist/cjs/ion-chip.cjs.entry.js +10 -16
- package/dist/cjs/ion-col_3.cjs.entry.js +6 -126
- package/dist/cjs/ion-datetime-button.cjs.entry.js +232 -248
- package/dist/cjs/ion-datetime.cjs.entry.js +775 -953
- package/dist/cjs/ion-fab_3.cjs.entry.js +78 -136
- package/dist/cjs/ion-img.cjs.entry.js +11 -31
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +71 -98
- package/dist/cjs/ion-input-otp.cjs.entry.js +352 -424
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +14 -29
- package/dist/cjs/ion-input.cjs.entry.js +158 -302
- package/dist/cjs/ion-item-option_3.cjs.entry.js +54 -98
- package/dist/cjs/ion-item_8.cjs.entry.js +61 -157
- package/dist/cjs/ion-loading.cjs.entry.js +54 -131
- package/dist/cjs/ion-menu_3.cjs.entry.js +94 -158
- package/dist/cjs/ion-modal.cjs.entry.js +206 -362
- package/dist/cjs/ion-nav_2.cjs.entry.js +26 -78
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +23 -33
- package/dist/cjs/ion-picker-column.cjs.entry.js +389 -410
- package/dist/cjs/ion-picker.cjs.entry.js +390 -400
- package/dist/cjs/ion-popover.cjs.entry.js +184 -292
- package/dist/cjs/ion-progress-bar.cjs.entry.js +23 -29
- package/dist/cjs/ion-radio_2.cjs.entry.js +128 -201
- package/dist/cjs/ion-range.cjs.entry.js +223 -293
- package/dist/cjs/ion-refresher_2.cjs.entry.js +89 -154
- package/dist/cjs/ion-reorder_2.cjs.entry.js +19 -49
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +13 -13
- package/dist/cjs/ion-route_4.cjs.entry.js +45 -144
- package/dist/cjs/ion-searchbar.cjs.entry.js +182 -268
- package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
- package/dist/cjs/ion-segment-view.cjs.entry.js +12 -24
- package/dist/cjs/ion-segment_2.cjs.entry.js +122 -161
- package/dist/cjs/ion-select-modal.cjs.entry.js +19 -21
- package/dist/cjs/ion-select_3.cjs.entry.js +151 -319
- package/dist/cjs/ion-spinner.cjs.entry.js +6 -21
- package/dist/cjs/ion-split-pane.cjs.entry.js +14 -27
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +32 -89
- package/dist/cjs/ion-tab_2.cjs.entry.js +22 -49
- package/dist/cjs/ion-text.cjs.entry.js +2 -8
- package/dist/cjs/ion-textarea.cjs.entry.js +139 -256
- package/dist/cjs/ion-toast.cjs.entry.js +106 -221
- package/dist/cjs/ion-toggle.cjs.entry.js +114 -165
- package/dist/cjs/{ionic-global-k6hOWWpn.js → ionic-global-DvgIzM2F.js} +1 -1
- package/dist/cjs/ionic.cjs.js +4 -4
- package/dist/cjs/{ios.transition-zTmJz8T-.js → ios.transition-zIgdoSYe.js} +4 -4
- package/dist/cjs/{item-multiple-inputs-BdYSbfKN.js → item-multiple-inputs-DG-ZGm6j.js} +1 -1
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/{md.transition-nb_4pUXu.js → md.transition-CXeJ9rfh.js} +4 -4
- package/dist/cjs/{overlays-KaNVDNqC.js → overlays-Bg0auTQa.js} +6 -6
- package/dist/cjs/{select-option-render-pULCGldr.js → select-option-render-7m1WdFzF.js} +2 -2
- package/dist/cjs/{slot-mutation-controller-DPHmqXdV.js → slot-mutation-controller-BJEJzx_e.js} +1 -1
- package/dist/cjs/{status-tap-o9IIymsP.js → status-tap-DxbUM5XX.js} +3 -3
- package/dist/cjs/{swipe-back-B7X9VOlH.js → swipe-back-F_DBt-Aw.js} +4 -4
- package/dist/collection/components/accordion/accordion.js +310 -314
- package/dist/collection/components/accordion-group/accordion-group.js +23 -46
- package/dist/collection/components/action-sheet/action-sheet.js +49 -128
- package/dist/collection/components/action-sheet/test/basic/fixture.js +0 -3
- package/dist/collection/components/alert/alert.js +56 -147
- package/dist/collection/components/app/app.js +0 -3
- package/dist/collection/components/back-button/back-button.js +19 -42
- package/dist/collection/components/backdrop/backdrop.js +14 -16
- package/dist/collection/components/badge/badge.js +0 -6
- package/dist/collection/components/breadcrumb/breadcrumb.js +29 -90
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +87 -102
- package/dist/collection/components/button/button.js +59 -127
- package/dist/collection/components/buttons/buttons.js +15 -13
- package/dist/collection/components/card/card.js +20 -53
- package/dist/collection/components/card-header/card-header.js +8 -12
- package/dist/collection/components/card-subtitle/card-subtitle.js +0 -6
- package/dist/collection/components/card-title/card-title.js +0 -6
- package/dist/collection/components/checkbox/checkbox.js +95 -143
- package/dist/collection/components/chip/chip.js +10 -14
- package/dist/collection/components/col/col.js +0 -120
- package/dist/collection/components/content/content.js +60 -90
- package/dist/collection/components/datetime/datetime.js +762 -939
- package/dist/collection/components/datetime-button/datetime-button.js +229 -244
- package/dist/collection/components/fab/fab.js +13 -20
- package/dist/collection/components/fab-button/fab-button.js +54 -103
- package/dist/collection/components/fab-list/fab-list.js +11 -10
- package/dist/collection/components/footer/footer.js +43 -49
- package/dist/collection/components/grid/grid.js +6 -4
- package/dist/collection/components/header/header.js +23 -33
- package/dist/collection/components/img/img.js +9 -28
- package/dist/collection/components/infinite-scroll/infinite-scroll.js +66 -73
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +3 -20
- package/dist/collection/components/input/input.js +154 -297
- package/dist/collection/components/input-otp/input-otp.js +350 -421
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +13 -27
- package/dist/collection/components/item/item.js +37 -80
- package/dist/collection/components/item-divider/item-divider.js +10 -15
- package/dist/collection/components/item-option/item-option.js +20 -48
- package/dist/collection/components/item-options/item-options.js +7 -10
- package/dist/collection/components/item-sliding/item-sliding.js +26 -36
- package/dist/collection/components/label/label.js +4 -24
- package/dist/collection/components/list/list.js +6 -9
- package/dist/collection/components/list-header/list-header.js +0 -10
- package/dist/collection/components/loading/loading.js +46 -122
- package/dist/collection/components/menu/menu.js +55 -99
- package/dist/collection/components/menu-button/menu-button.js +19 -28
- package/dist/collection/components/menu-toggle/menu-toggle.js +13 -20
- package/dist/collection/components/modal/modal.js +196 -351
- package/dist/collection/components/modal/test/fixtures.js +0 -3
- package/dist/collection/components/nav/nav.js +12 -45
- package/dist/collection/components/nav/view-controller.js +1 -7
- package/dist/collection/components/nav-link/nav-link.js +9 -20
- package/dist/collection/components/note/note.js +0 -6
- package/dist/collection/components/picker/picker.js +388 -397
- package/dist/collection/components/picker-column/picker-column.js +389 -409
- package/dist/collection/components/picker-column-option/picker-column-option.js +21 -30
- package/dist/collection/components/popover/popover.js +176 -283
- package/dist/collection/components/popover/test/fixture.js +0 -1
- package/dist/collection/components/progress-bar/progress-bar.js +22 -26
- package/dist/collection/components/radio/radio.js +62 -98
- package/dist/collection/components/radio-group/radio-group.js +64 -99
- package/dist/collection/components/radio-group/test/fixtures.js +0 -2
- package/dist/collection/components/range/range.js +220 -289
- package/dist/collection/components/refresher/refresher.js +79 -105
- package/dist/collection/components/refresher-content/refresher-content.js +3 -40
- package/dist/collection/components/reorder/reorder.js +0 -1
- package/dist/collection/components/reorder-group/reorder-group.js +14 -43
- package/dist/collection/components/ripple-effect/ripple-effect.js +12 -11
- package/dist/collection/components/route/route.js +9 -38
- package/dist/collection/components/route-redirect/route-redirect.js +0 -31
- package/dist/collection/components/router/router.js +27 -35
- package/dist/collection/components/router/utils/matching.js +0 -1
- package/dist/collection/components/router-link/router-link.js +10 -35
- package/dist/collection/components/router-outlet/router-outlet.js +12 -34
- package/dist/collection/components/searchbar/searchbar.js +180 -265
- package/dist/collection/components/segment/segment.js +76 -113
- package/dist/collection/components/segment-button/segment-button.js +44 -44
- package/dist/collection/components/segment-view/segment-view.js +12 -23
- package/dist/collection/components/select/select.js +127 -240
- package/dist/collection/components/select-modal/select-modal.js +11 -12
- package/dist/collection/components/select-modal/test/fixtures.js +1 -8
- package/dist/collection/components/select-option/select-option.js +7 -44
- package/dist/collection/components/select-popover/select-popover.js +10 -25
- package/dist/collection/components/select-popover/test/fixtures.js +1 -8
- package/dist/collection/components/skeleton-text/skeleton-text.js +6 -10
- package/dist/collection/components/spinner/spinner.js +6 -19
- package/dist/collection/components/split-pane/split-pane.js +13 -25
- package/dist/collection/components/tab/tab.js +4 -15
- package/dist/collection/components/tab-bar/tab-bar.js +12 -30
- package/dist/collection/components/tab-button/tab-button.js +19 -56
- package/dist/collection/components/tabs/tabs.js +17 -31
- package/dist/collection/components/text/text.js +0 -6
- package/dist/collection/components/textarea/textarea.js +135 -251
- package/dist/collection/components/title/title.js +0 -16
- package/dist/collection/components/toast/toast.js +97 -211
- package/dist/collection/components/toggle/toggle.js +111 -161
- package/dist/collection/components/toolbar/toolbar.js +3 -8
- package/dist/collection/global/config.js +3 -1
- package/dist/collection/utils/gesture/gesture-controller.js +6 -14
- package/dist/collection/utils/sanitization/index.js +0 -1
- package/dist/collection/utils/test/late-props/late-props.js +69 -0
- package/dist/collection/utils/test/playwright/page/event-spy.js +8 -9
- package/dist/collection/utils/test/press-keys.js +1 -4
- package/dist/docs.json +1 -1
- package/dist/esm/{animation-CGFdmGk9.js → animation-TxGPYeDn.js} +1 -1
- package/dist/esm/{app-globals-CYmMeGdU.js → app-globals-Do8rJest.js} +1 -1
- package/dist/esm/{button-active-BDOsVAiZ.js → button-active-ChA4D-ml.js} +2 -2
- package/dist/esm/{format-Dcwga61t.js → format-CVk5e_GP.js} +2 -2
- package/dist/esm/{framework-delegate-BHTU2Ip9.js → framework-delegate-DaLWnISz.js} +1 -1
- package/dist/esm/{gesture-controller-TXPDHL13.js → gesture-controller-B_gJaBk0.js} +6 -14
- package/dist/esm/{hardware-back-button-gLJHMX_F.js → hardware-back-button-D8W4L0JP.js} +1 -1
- package/dist/esm/{helpers-CAGf8Wgp.js → helpers-BIgoInJU.js} +1 -1
- package/dist/esm/{index-DcPaH5uL.js → index-BmLuEdV7.js} +1 -1
- package/dist/esm/{index-T0JxBI8V.js → index-BmOR8tCv.js} +2 -2
- package/dist/esm/{index-CqneaaGd.js → index-C5ZdL0qp.js} +5 -5
- package/dist/esm/{index-WlteAIqz.js → index-C8Dsa6li.js} +4 -4
- package/dist/esm/{index-ChhhtsGZ.js → index-CKYcsw8f.js} +3 -1
- package/dist/esm/{index-Clc-28O1.js → index-DHw2lZxe.js} +2 -2
- package/dist/esm/{index-CKM1DdGm.js → index-elneMH8y.js} +1 -2
- package/dist/esm/index.js +14 -14
- package/dist/esm/{input-shims-B8sfni1e.js → input-shims-09NN97kF.js} +3 -3
- package/dist/esm/{input.utils-B1ValN_N.js → input.utils-BxyH9l1w.js} +1 -1
- package/dist/esm/ion-accordion_2.entry.js +335 -364
- package/dist/esm/ion-action-sheet.entry.js +60 -140
- package/dist/esm/ion-alert.entry.js +67 -159
- package/dist/esm/ion-app_8.entry.js +163 -258
- package/dist/esm/ion-avatar_3.entry.js +2 -8
- package/dist/esm/ion-back-button.entry.js +21 -45
- package/dist/esm/ion-backdrop.entry.js +14 -18
- package/dist/esm/ion-breadcrumb_2.entry.js +117 -195
- package/dist/esm/ion-button_2.entry.js +61 -130
- package/dist/esm/ion-card_5.entry.js +28 -80
- package/dist/esm/ion-checkbox.entry.js +98 -147
- package/dist/esm/ion-chip.entry.js +10 -16
- package/dist/esm/ion-col_3.entry.js +6 -126
- package/dist/esm/ion-datetime-button.entry.js +232 -248
- package/dist/esm/ion-datetime.entry.js +775 -953
- package/dist/esm/ion-fab_3.entry.js +78 -136
- package/dist/esm/ion-img.entry.js +11 -31
- package/dist/esm/ion-infinite-scroll_2.entry.js +71 -98
- package/dist/esm/ion-input-otp.entry.js +352 -424
- package/dist/esm/ion-input-password-toggle.entry.js +14 -29
- package/dist/esm/ion-input.entry.js +158 -302
- package/dist/esm/ion-item-option_3.entry.js +54 -98
- package/dist/esm/ion-item_8.entry.js +61 -157
- package/dist/esm/ion-loading.entry.js +54 -131
- package/dist/esm/ion-menu_3.entry.js +94 -158
- package/dist/esm/ion-modal.entry.js +206 -362
- package/dist/esm/ion-nav_2.entry.js +26 -78
- package/dist/esm/ion-picker-column-option.entry.js +23 -33
- package/dist/esm/ion-picker-column.entry.js +389 -410
- package/dist/esm/ion-picker.entry.js +390 -400
- package/dist/esm/ion-popover.entry.js +184 -292
- package/dist/esm/ion-progress-bar.entry.js +23 -29
- package/dist/esm/ion-radio_2.entry.js +128 -201
- package/dist/esm/ion-range.entry.js +223 -293
- package/dist/esm/ion-refresher_2.entry.js +89 -154
- package/dist/esm/ion-reorder_2.entry.js +19 -49
- package/dist/esm/ion-ripple-effect.entry.js +13 -13
- package/dist/esm/ion-route_4.entry.js +45 -144
- package/dist/esm/ion-searchbar.entry.js +182 -268
- package/dist/esm/ion-segment-content.entry.js +1 -1
- package/dist/esm/ion-segment-view.entry.js +12 -24
- package/dist/esm/ion-segment_2.entry.js +122 -161
- package/dist/esm/ion-select-modal.entry.js +19 -21
- package/dist/esm/ion-select_3.entry.js +151 -319
- package/dist/esm/ion-spinner.entry.js +6 -21
- package/dist/esm/ion-split-pane.entry.js +14 -27
- package/dist/esm/ion-tab-bar_2.entry.js +32 -89
- package/dist/esm/ion-tab_2.entry.js +22 -49
- package/dist/esm/ion-text.entry.js +2 -8
- package/dist/esm/ion-textarea.entry.js +139 -256
- package/dist/esm/ion-toast.entry.js +106 -221
- package/dist/esm/ion-toggle.entry.js +114 -165
- package/dist/esm/{ionic-global-BVB7BrLT.js → ionic-global-lrowsHfi.js} +1 -1
- package/dist/esm/ionic.js +5 -5
- package/dist/esm/{ios.transition-DXRCmcbC.js → ios.transition-BQhADrk1.js} +4 -4
- package/dist/esm/{item-multiple-inputs-rU8VaNNg.js → item-multiple-inputs-D_N3fDkD.js} +1 -1
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{md.transition-BMngO4i_.js → md.transition-D58NpmRa.js} +4 -4
- package/dist/esm/{overlays-CPmIs9Ls.js → overlays-BpnIFlXI.js} +6 -6
- package/dist/esm/{select-option-render-C4m76VGH.js → select-option-render-lIuu64EV.js} +2 -2
- package/dist/esm/{slot-mutation-controller-DiE_C9un.js → slot-mutation-controller-rS_T3FDR.js} +1 -1
- package/dist/esm/{status-tap-CHB7KwIb.js → status-tap-CpFQMLl6.js} +3 -3
- package/dist/esm/{swipe-back-C9HW1bug.js → swipe-back-rmc7zeNW.js} +4 -4
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-05800a02.entry.js +4 -0
- package/dist/ionic/p-0eb50dca.entry.js +4 -0
- package/dist/ionic/p-16e9f542.entry.js +4 -0
- package/dist/ionic/p-18d532a3.entry.js +4 -0
- package/dist/ionic/p-1db2afb4.entry.js +4 -0
- package/dist/ionic/p-1df75f9e.entry.js +4 -0
- package/dist/ionic/p-295ff427.entry.js +4 -0
- package/dist/ionic/p-34b9379b.entry.js +4 -0
- package/dist/ionic/p-39a8d4e0.entry.js +4 -0
- package/dist/ionic/p-4437015c.entry.js +4 -0
- package/dist/ionic/p-478035a7.entry.js +4 -0
- package/dist/ionic/p-485fb218.entry.js +4 -0
- package/dist/ionic/p-48c859fe.entry.js +4 -0
- package/dist/ionic/p-49b9d405.entry.js +4 -0
- package/dist/ionic/p-56307aea.entry.js +4 -0
- package/dist/ionic/p-5b906fd6.entry.js +4 -0
- package/dist/ionic/p-5ee2d7b1.entry.js +4 -0
- package/dist/ionic/p-5f216b79.entry.js +4 -0
- package/dist/ionic/p-61c799d1.entry.js +4 -0
- package/dist/ionic/p-63bbba8d.entry.js +4 -0
- package/dist/ionic/p-68507e70.entry.js +4 -0
- package/dist/ionic/{p-ded69ceb.entry.js → p-6f048604.entry.js} +1 -1
- package/dist/ionic/p-70ee8888.entry.js +4 -0
- package/dist/ionic/p-72ad7c64.entry.js +4 -0
- package/dist/ionic/p-75887ee0.entry.js +4 -0
- package/dist/ionic/p-873a315a.entry.js +4 -0
- package/dist/ionic/p-881b6954.entry.js +4 -0
- package/dist/ionic/p-886d9e66.entry.js +4 -0
- package/dist/ionic/p-8dd4c026.entry.js +4 -0
- package/dist/ionic/p-8e007f11.entry.js +4 -0
- package/dist/ionic/p-8f51110d.entry.js +4 -0
- package/dist/ionic/p-90ba736e.entry.js +4 -0
- package/dist/ionic/p-959df5f8.entry.js +4 -0
- package/dist/ionic/p-9e455875.entry.js +4 -0
- package/dist/ionic/{p-CBR_W98Z.js → p-9wczfs_v.js} +1 -1
- package/dist/ionic/p-B1Y7LZhV.js +4 -0
- package/dist/ionic/p-B5RyLYvl.js +4 -0
- package/dist/ionic/{p-CPcPmkGv.js → p-BQv5i5Kf.js} +1 -1
- package/{components/p-8FN7p701.js → dist/ionic/p-BZVE25Gu.js} +1 -1
- package/{components/p-DFvZn99E.js → dist/ionic/p-BZxjcGRP.js} +1 -1
- package/dist/ionic/p-B_gJaBk0.js +4 -0
- package/dist/ionic/p-BnGA34Pd.js +4 -0
- package/dist/ionic/p-ByLaqOPm.js +4 -0
- package/dist/ionic/p-C06QNN45.js +4 -0
- package/dist/ionic/p-C4IBDDj6.js +4 -0
- package/dist/ionic/p-CCVlNZ__.js +4 -0
- package/dist/ionic/{p-CMRtMbJc.js → p-CDBop-kz.js} +1 -1
- package/dist/ionic/p-CKYcsw8f.js +5 -0
- package/dist/ionic/p-CazSodad.js +4 -0
- package/{components/p-ia3IDdJS.js → dist/ionic/p-ClrlQU2y.js} +1 -1
- package/dist/ionic/{p-UIBJkZf8.js → p-D0YpjgON.js} +1 -1
- package/dist/ionic/p-D0dfUysx.js +4 -0
- package/dist/ionic/{p-BB0LlG4y.js → p-D9yvytgv.js} +1 -1
- package/{components/p-C5KYjZWD.js → dist/ionic/p-DF_Uqql8.js} +1 -1
- package/dist/ionic/{p-BYEAtHr-.js → p-DXJgZWgi.js} +1 -1
- package/dist/ionic/{p-D94_RztK.js → p-DdhHqKj-.js} +1 -1
- package/dist/ionic/p-De0eY881.js +4 -0
- package/dist/ionic/p-DgUL3JbO.js +4 -0
- package/dist/ionic/{p-7CBuOvEo.js → p-RzUn7cKs.js} +1 -1
- package/dist/ionic/p-VquyMbjp.js +4 -0
- package/dist/ionic/p-a0fee899.entry.js +4 -0
- package/dist/ionic/p-a54bcd16.entry.js +4 -0
- package/dist/ionic/p-aebc4d69.entry.js +4 -0
- package/dist/ionic/p-b5f37106.entry.js +4 -0
- package/dist/ionic/{p-40424a88.entry.js → p-b62bfce8.entry.js} +1 -1
- package/dist/ionic/p-b7a11b58.entry.js +4 -0
- package/dist/ionic/p-bbf6878c.entry.js +4 -0
- package/dist/ionic/p-c49165af.entry.js +4 -0
- package/dist/ionic/p-cad4eccf.entry.js +4 -0
- package/dist/ionic/p-cdc5115e.entry.js +4 -0
- package/dist/ionic/p-d3384a40.entry.js +4 -0
- package/dist/ionic/p-d8bae128.entry.js +4 -0
- package/dist/ionic/p-d8deff43.entry.js +4 -0
- package/dist/ionic/p-ddfb7e5f.entry.js +4 -0
- package/dist/ionic/p-e538f18d.entry.js +4 -0
- package/dist/ionic/p-f376876b.entry.js +4 -0
- package/dist/ionic/p-f7dd1ed9.entry.js +4 -0
- package/dist/ionic/p-fbd83d4c.entry.js +4 -0
- package/dist/types/components/refresher/refresher.d.ts +7 -0
- package/hydrate/index.js +5450 -8380
- package/hydrate/index.mjs +5450 -8380
- package/package.json +1 -1
- package/components/p--m5cCjbK.js +0 -4
- package/components/p-B4uHHhPK.js +0 -4
- package/components/p-BNJOu1Q2.js +0 -4
- package/components/p-BOvLNVKq.js +0 -4
- package/components/p-BeamQXHF.js +0 -4
- package/components/p-BjluhQMI.js +0 -4
- package/components/p-BlsIikdZ.js +0 -4
- package/components/p-BrD9Xv62.js +0 -4
- package/components/p-BvJqoZ5R.js +0 -4
- package/components/p-Bz6z3Asd.js +0 -4
- package/components/p-C6HnVvHO.js +0 -4
- package/components/p-C7jvh5Wy.js +0 -4
- package/components/p-C9BGR5fy.js +0 -4
- package/components/p-CB-y1CdP.js +0 -4
- package/components/p-CHH3loEE.js +0 -4
- package/components/p-CJKUWjmg.js +0 -4
- package/components/p-CMLAwl_N.js +0 -4
- package/components/p-CejmQs3h.js +0 -4
- package/components/p-CtZqa4HM.js +0 -4
- package/components/p-D9qIVSWm.js +0 -4
- package/components/p-DE-3iMNW.js +0 -4
- package/components/p-DHFt2rdc.js +0 -4
- package/components/p-D_RCyzwu.js +0 -4
- package/components/p-D_tD8r3L.js +0 -4
- package/components/p-DjCtLZbF.js +0 -4
- package/components/p-Dmd2xqCe.js +0 -4
- package/components/p-G6JR-cr_.js +0 -4
- package/components/p-GG5GhznE.js +0 -4
- package/components/p-TXPDHL13.js +0 -4
- package/components/p-_IKFD3ID.js +0 -4
- package/components/p-dKq2jIum.js +0 -4
- package/components/p-iYhH60Tc.js +0 -4
- package/dist/ionic/p-06ec7136.entry.js +0 -4
- package/dist/ionic/p-09fe4fa3.entry.js +0 -4
- package/dist/ionic/p-10d45a07.entry.js +0 -4
- package/dist/ionic/p-208c8a07.entry.js +0 -4
- package/dist/ionic/p-212474fa.entry.js +0 -4
- package/dist/ionic/p-2eef1396.entry.js +0 -4
- package/dist/ionic/p-347e005d.entry.js +0 -4
- package/dist/ionic/p-3a0b3f1d.entry.js +0 -4
- package/dist/ionic/p-3b071259.entry.js +0 -4
- package/dist/ionic/p-4204184c.entry.js +0 -4
- package/dist/ionic/p-47464391.entry.js +0 -4
- package/dist/ionic/p-4f9c9126.entry.js +0 -4
- package/dist/ionic/p-5JsKPLJD.js +0 -4
- package/dist/ionic/p-5bc485c6.entry.js +0 -4
- package/dist/ionic/p-603a61e6.entry.js +0 -4
- package/dist/ionic/p-60576951.entry.js +0 -4
- package/dist/ionic/p-67a81d33.entry.js +0 -4
- package/dist/ionic/p-6affb775.entry.js +0 -4
- package/dist/ionic/p-6f120c25.entry.js +0 -4
- package/dist/ionic/p-71c82b60.entry.js +0 -4
- package/dist/ionic/p-79325ffe.entry.js +0 -4
- package/dist/ionic/p-7e4d51fa.entry.js +0 -4
- package/dist/ionic/p-7f5d4664.entry.js +0 -4
- package/dist/ionic/p-80ee82fc.entry.js +0 -4
- package/dist/ionic/p-84af7dbc.entry.js +0 -4
- package/dist/ionic/p-89ca830a.entry.js +0 -4
- package/dist/ionic/p-93b8ec8f.entry.js +0 -4
- package/dist/ionic/p-946f65c2.entry.js +0 -4
- package/dist/ionic/p-9c4b39fb.entry.js +0 -4
- package/dist/ionic/p-B1NEZUzQ.js +0 -4
- package/dist/ionic/p-B1ck5iy-.js +0 -4
- package/dist/ionic/p-B4FrqdW0.js +0 -4
- package/dist/ionic/p-C-94tAim.js +0 -4
- package/dist/ionic/p-C-eHZMYE.js +0 -4
- package/dist/ionic/p-CaRuIadB.js +0 -4
- package/dist/ionic/p-ChhhtsGZ.js +0 -5
- package/dist/ionic/p-CzS1qWve.js +0 -4
- package/dist/ionic/p-DjjfauRM.js +0 -4
- package/dist/ionic/p-DkUB-ROc.js +0 -4
- package/dist/ionic/p-DplOqGUv.js +0 -4
- package/dist/ionic/p-Dst_XmZh.js +0 -4
- package/dist/ionic/p-TXPDHL13.js +0 -4
- package/dist/ionic/p-a438b193.entry.js +0 -4
- package/dist/ionic/p-babaaaa7.entry.js +0 -4
- package/dist/ionic/p-be08d500.entry.js +0 -4
- package/dist/ionic/p-be9a4f51.entry.js +0 -4
- package/dist/ionic/p-c00d3092.entry.js +0 -4
- package/dist/ionic/p-c36dc8f5.entry.js +0 -4
- package/dist/ionic/p-c72a7e17.entry.js +0 -4
- package/dist/ionic/p-c8edd88c.entry.js +0 -4
- package/dist/ionic/p-ce0e380b.entry.js +0 -4
- package/dist/ionic/p-ce32912b.entry.js +0 -4
- package/dist/ionic/p-d07cf130.entry.js +0 -4
- package/dist/ionic/p-d27edeb3.entry.js +0 -4
- package/dist/ionic/p-d5d2c506.entry.js +0 -4
- package/dist/ionic/p-d5e31ca9.entry.js +0 -4
- package/dist/ionic/p-de91444f.entry.js +0 -4
- package/dist/ionic/p-df72866d.entry.js +0 -4
- package/dist/ionic/p-e47e3151.entry.js +0 -4
- package/dist/ionic/p-e621e5e8.entry.js +0 -4
- package/dist/ionic/p-eea9cf93.entry.js +0 -4
- package/dist/ionic/p-f402f5a4.entry.js +0 -4
- package/dist/ionic/p-fe1bfbcf.entry.js +0 -4
- package/dist/ionic/p-ffb90460.entry.js +0 -4
|
@@ -31,126 +31,103 @@ import { createSwipeToDismissGesture } from "./gestures/swipe-to-dismiss";
|
|
|
31
31
|
* @part button cancel - Any button element with role "cancel" that is displayed inside of the toast.
|
|
32
32
|
*/
|
|
33
33
|
export class Toast {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
translucent = false;
|
|
132
|
-
/**
|
|
133
|
-
* If `true`, the toast will animate.
|
|
134
|
-
*/
|
|
135
|
-
animated = true;
|
|
136
|
-
/**
|
|
137
|
-
* The name of the icon to display, or the path to a valid SVG file. See `ion-icon`.
|
|
138
|
-
* https://ionic.io/ionicons
|
|
139
|
-
*/
|
|
140
|
-
icon;
|
|
141
|
-
/**
|
|
142
|
-
* Additional attributes to pass to the toast.
|
|
143
|
-
*/
|
|
144
|
-
htmlAttributes;
|
|
145
|
-
/**
|
|
146
|
-
* If set to 'vertical', the Toast can be dismissed with
|
|
147
|
-
* a swipe gesture. The swipe direction is determined by
|
|
148
|
-
* the value of the `position` property:
|
|
149
|
-
* `top`: The Toast can be swiped up to dismiss.
|
|
150
|
-
* `bottom`: The Toast can be swiped down to dismiss.
|
|
151
|
-
* `middle`: The Toast can be swiped up or down to dismiss.
|
|
152
|
-
*/
|
|
153
|
-
swipeGesture;
|
|
34
|
+
constructor() {
|
|
35
|
+
this.delegateController = createDelegateController(this);
|
|
36
|
+
this.lockController = createLockController();
|
|
37
|
+
this.triggerController = createTriggerController();
|
|
38
|
+
this.customHTMLEnabled = config.get('innerHTMLTemplatesEnabled', ENABLE_HTML_CONTENT_DEFAULT);
|
|
39
|
+
this.presented = false;
|
|
40
|
+
/**
|
|
41
|
+
* When `true`, content inside of .toast-content
|
|
42
|
+
* will have aria-hidden elements removed causing
|
|
43
|
+
* screen readers to announce the remaining content.
|
|
44
|
+
*/
|
|
45
|
+
this.revealContentToScreenReader = false;
|
|
46
|
+
/** @internal */
|
|
47
|
+
this.hasController = false;
|
|
48
|
+
/**
|
|
49
|
+
* How many milliseconds to wait before hiding the toast. By default, it will show
|
|
50
|
+
* until `dismiss()` is called.
|
|
51
|
+
*/
|
|
52
|
+
this.duration = config.getNumber('toastDuration', 0);
|
|
53
|
+
/**
|
|
54
|
+
* Defines how the message and buttons are laid out in the toast.
|
|
55
|
+
* 'baseline': The message and the buttons will appear on the same line.
|
|
56
|
+
* Message text may wrap within the message container.
|
|
57
|
+
* 'stacked': The buttons containers and message will stack on top
|
|
58
|
+
* of each other. Use this if you have long text in your buttons.
|
|
59
|
+
*/
|
|
60
|
+
this.layout = 'baseline';
|
|
61
|
+
/**
|
|
62
|
+
* If `true`, the keyboard will be automatically dismissed when the overlay is presented.
|
|
63
|
+
*/
|
|
64
|
+
this.keyboardClose = false;
|
|
65
|
+
/**
|
|
66
|
+
* The starting position of the toast on the screen. Can be tweaked further
|
|
67
|
+
* using the `positionAnchor` property.
|
|
68
|
+
*/
|
|
69
|
+
this.position = 'bottom';
|
|
70
|
+
/**
|
|
71
|
+
* If `true`, the toast will be translucent.
|
|
72
|
+
* Only applies when the mode is `"ios"` and the device supports
|
|
73
|
+
* [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
|
|
74
|
+
*/
|
|
75
|
+
this.translucent = false;
|
|
76
|
+
/**
|
|
77
|
+
* If `true`, the toast will animate.
|
|
78
|
+
*/
|
|
79
|
+
this.animated = true;
|
|
80
|
+
/**
|
|
81
|
+
* If `true`, the toast will open. If `false`, the toast will close.
|
|
82
|
+
* Use this if you need finer grained control over presentation, otherwise
|
|
83
|
+
* just use the toastController or the `trigger` property.
|
|
84
|
+
* Note: `isOpen` will not automatically be set back to `false` when
|
|
85
|
+
* the toast dismisses. You will need to do that in your code.
|
|
86
|
+
*/
|
|
87
|
+
this.isOpen = false;
|
|
88
|
+
this.dispatchCancelHandler = (ev) => {
|
|
89
|
+
const role = ev.detail.role;
|
|
90
|
+
if (isCancel(role)) {
|
|
91
|
+
const cancelButton = this.getButtons().find((b) => b.role === 'cancel');
|
|
92
|
+
this.callButtonHandler(cancelButton);
|
|
93
|
+
}
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Create a new swipe gesture so Toast
|
|
97
|
+
* can be swiped to dismiss.
|
|
98
|
+
*/
|
|
99
|
+
this.createSwipeGesture = (toastPosition) => {
|
|
100
|
+
const gesture = (this.gesture = createSwipeToDismissGesture(this.el, toastPosition, () => {
|
|
101
|
+
/**
|
|
102
|
+
* If the gesture completed then
|
|
103
|
+
* we should dismiss the toast.
|
|
104
|
+
*/
|
|
105
|
+
this.dismiss(undefined, GESTURE);
|
|
106
|
+
}));
|
|
107
|
+
gesture.enable(true);
|
|
108
|
+
};
|
|
109
|
+
/**
|
|
110
|
+
* Destroy an existing swipe gesture
|
|
111
|
+
* so Toast can no longer be swiped to dismiss.
|
|
112
|
+
*/
|
|
113
|
+
this.destroySwipeGesture = () => {
|
|
114
|
+
const { gesture } = this;
|
|
115
|
+
if (gesture === undefined) {
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
gesture.destroy();
|
|
119
|
+
this.gesture = undefined;
|
|
120
|
+
};
|
|
121
|
+
/**
|
|
122
|
+
* Returns `true` if swipeGesture
|
|
123
|
+
* is configured to a value that enables the swipe behavior.
|
|
124
|
+
* Returns `false` otherwise.
|
|
125
|
+
*/
|
|
126
|
+
this.prefersSwipeGesture = () => {
|
|
127
|
+
const { swipeGesture } = this;
|
|
128
|
+
return swipeGesture === 'vertical';
|
|
129
|
+
};
|
|
130
|
+
}
|
|
154
131
|
swipeGestureChanged() {
|
|
155
132
|
/**
|
|
156
133
|
* If the Toast is presented, then we need to destroy
|
|
@@ -178,14 +155,6 @@ export class Toast {
|
|
|
178
155
|
this.createSwipeGesture(this.lastPresentedPosition);
|
|
179
156
|
}
|
|
180
157
|
}
|
|
181
|
-
/**
|
|
182
|
-
* If `true`, the toast will open. If `false`, the toast will close.
|
|
183
|
-
* Use this if you need finer grained control over presentation, otherwise
|
|
184
|
-
* just use the toastController or the `trigger` property.
|
|
185
|
-
* Note: `isOpen` will not automatically be set back to `false` when
|
|
186
|
-
* the toast dismisses. You will need to do that in your code.
|
|
187
|
-
*/
|
|
188
|
-
isOpen = false;
|
|
189
158
|
onIsOpenChange(newValue, oldValue) {
|
|
190
159
|
if (newValue === true && oldValue === false) {
|
|
191
160
|
this.present();
|
|
@@ -194,53 +163,12 @@ export class Toast {
|
|
|
194
163
|
this.dismiss();
|
|
195
164
|
}
|
|
196
165
|
}
|
|
197
|
-
/**
|
|
198
|
-
* An ID corresponding to the trigger element that
|
|
199
|
-
* causes the toast to open when clicked.
|
|
200
|
-
*/
|
|
201
|
-
trigger;
|
|
202
166
|
triggerChanged() {
|
|
203
167
|
const { trigger, el, triggerController } = this;
|
|
204
168
|
if (trigger) {
|
|
205
169
|
triggerController.addClickListener(el, trigger);
|
|
206
170
|
}
|
|
207
171
|
}
|
|
208
|
-
/**
|
|
209
|
-
* Emitted after the toast has presented.
|
|
210
|
-
*/
|
|
211
|
-
didPresent;
|
|
212
|
-
/**
|
|
213
|
-
* Emitted before the toast has presented.
|
|
214
|
-
*/
|
|
215
|
-
willPresent;
|
|
216
|
-
/**
|
|
217
|
-
* Emitted before the toast has dismissed.
|
|
218
|
-
*/
|
|
219
|
-
willDismiss;
|
|
220
|
-
/**
|
|
221
|
-
* Emitted after the toast has dismissed.
|
|
222
|
-
*/
|
|
223
|
-
didDismiss;
|
|
224
|
-
/**
|
|
225
|
-
* Emitted after the toast has presented.
|
|
226
|
-
* Shorthand for ionToastWillDismiss.
|
|
227
|
-
*/
|
|
228
|
-
didPresentShorthand;
|
|
229
|
-
/**
|
|
230
|
-
* Emitted before the toast has presented.
|
|
231
|
-
* Shorthand for ionToastWillPresent.
|
|
232
|
-
*/
|
|
233
|
-
willPresentShorthand;
|
|
234
|
-
/**
|
|
235
|
-
* Emitted before the toast has dismissed.
|
|
236
|
-
* Shorthand for ionToastWillDismiss.
|
|
237
|
-
*/
|
|
238
|
-
willDismissShorthand;
|
|
239
|
-
/**
|
|
240
|
-
* Emitted after the toast has dismissed.
|
|
241
|
-
* Shorthand for ionToastDidDismiss.
|
|
242
|
-
*/
|
|
243
|
-
didDismissShorthand;
|
|
244
172
|
connectedCallback() {
|
|
245
173
|
prepareOverlay(this.el);
|
|
246
174
|
this.triggerChanged();
|
|
@@ -438,48 +366,6 @@ export class Toast {
|
|
|
438
366
|
}
|
|
439
367
|
return true;
|
|
440
368
|
}
|
|
441
|
-
dispatchCancelHandler = (ev) => {
|
|
442
|
-
const role = ev.detail.role;
|
|
443
|
-
if (isCancel(role)) {
|
|
444
|
-
const cancelButton = this.getButtons().find((b) => b.role === 'cancel');
|
|
445
|
-
this.callButtonHandler(cancelButton);
|
|
446
|
-
}
|
|
447
|
-
};
|
|
448
|
-
/**
|
|
449
|
-
* Create a new swipe gesture so Toast
|
|
450
|
-
* can be swiped to dismiss.
|
|
451
|
-
*/
|
|
452
|
-
createSwipeGesture = (toastPosition) => {
|
|
453
|
-
const gesture = (this.gesture = createSwipeToDismissGesture(this.el, toastPosition, () => {
|
|
454
|
-
/**
|
|
455
|
-
* If the gesture completed then
|
|
456
|
-
* we should dismiss the toast.
|
|
457
|
-
*/
|
|
458
|
-
this.dismiss(undefined, GESTURE);
|
|
459
|
-
}));
|
|
460
|
-
gesture.enable(true);
|
|
461
|
-
};
|
|
462
|
-
/**
|
|
463
|
-
* Destroy an existing swipe gesture
|
|
464
|
-
* so Toast can no longer be swiped to dismiss.
|
|
465
|
-
*/
|
|
466
|
-
destroySwipeGesture = () => {
|
|
467
|
-
const { gesture } = this;
|
|
468
|
-
if (gesture === undefined) {
|
|
469
|
-
return;
|
|
470
|
-
}
|
|
471
|
-
gesture.destroy();
|
|
472
|
-
this.gesture = undefined;
|
|
473
|
-
};
|
|
474
|
-
/**
|
|
475
|
-
* Returns `true` if swipeGesture
|
|
476
|
-
* is configured to a value that enables the swipe behavior.
|
|
477
|
-
* Returns `false` otherwise.
|
|
478
|
-
*/
|
|
479
|
-
prefersSwipeGesture = () => {
|
|
480
|
-
const { swipeGesture } = this;
|
|
481
|
-
return swipeGesture === 'vertical';
|
|
482
|
-
};
|
|
483
369
|
renderButtons(buttons, side) {
|
|
484
370
|
if (buttons.length === 0) {
|
|
485
371
|
return;
|
|
@@ -24,108 +24,117 @@ import { getIonMode } from "../../global/ionic-global";
|
|
|
24
24
|
* @part error-text - Supporting text displayed beneath the toggle label when the toggle is invalid and touched.
|
|
25
25
|
*/
|
|
26
26
|
export class Toggle {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
27
|
+
constructor() {
|
|
28
|
+
this.inputId = `ion-tg-${toggleIds++}`;
|
|
29
|
+
this.inputLabelId = `${this.inputId}-lbl`;
|
|
30
|
+
this.helperTextId = `${this.inputId}-helper-text`;
|
|
31
|
+
this.errorTextId = `${this.inputId}-error-text`;
|
|
32
|
+
this.lastDrag = 0;
|
|
33
|
+
this.inheritedAttributes = {};
|
|
34
|
+
this.didLoad = false;
|
|
35
|
+
this.activated = false;
|
|
36
|
+
/**
|
|
37
|
+
* Track validation state for proper aria-live announcements.
|
|
38
|
+
*/
|
|
39
|
+
this.isInvalid = false;
|
|
40
|
+
/**
|
|
41
|
+
* The name of the control, which is submitted with the form data.
|
|
42
|
+
*/
|
|
43
|
+
this.name = this.inputId;
|
|
44
|
+
/**
|
|
45
|
+
* If `true`, the toggle is selected.
|
|
46
|
+
*/
|
|
47
|
+
this.checked = false;
|
|
48
|
+
/**
|
|
49
|
+
* If `true`, the user cannot interact with the toggle.
|
|
50
|
+
*/
|
|
51
|
+
this.disabled = false;
|
|
52
|
+
/**
|
|
53
|
+
* The value of the toggle does not mean if it's checked or not, use the `checked`
|
|
54
|
+
* property for that.
|
|
55
|
+
*
|
|
56
|
+
* The value of a toggle is analogous to the value of a `<input type="checkbox">`,
|
|
57
|
+
* it's only used when the toggle participates in a native `<form>`.
|
|
58
|
+
*/
|
|
59
|
+
this.value = 'on';
|
|
60
|
+
/**
|
|
61
|
+
* Enables the on/off accessibility switch labels within the toggle.
|
|
62
|
+
*/
|
|
63
|
+
this.enableOnOffLabels = config.get('toggleOnOffLabels');
|
|
64
|
+
/**
|
|
65
|
+
* Where to place the label relative to the input.
|
|
66
|
+
* `"start"`: The label will appear to the left of the toggle in LTR and to the right in RTL.
|
|
67
|
+
* `"end"`: The label will appear to the right of the toggle in LTR and to the left in RTL.
|
|
68
|
+
* `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("...").
|
|
69
|
+
* `"stacked"`: The label will appear above the toggle regardless of the direction. The alignment of the label can be controlled with the `alignment` property.
|
|
70
|
+
*/
|
|
71
|
+
this.labelPlacement = 'start';
|
|
72
|
+
/**
|
|
73
|
+
* If true, screen readers will announce it as a required field. This property
|
|
74
|
+
* works only for accessibility purposes, it will not prevent the form from
|
|
75
|
+
* submitting if the value is invalid.
|
|
76
|
+
*/
|
|
77
|
+
this.required = false;
|
|
78
|
+
this.setupGesture = async () => {
|
|
79
|
+
const { toggleTrack } = this;
|
|
80
|
+
if (toggleTrack) {
|
|
81
|
+
this.gesture = (await import('../../utils/gesture')).createGesture({
|
|
82
|
+
el: toggleTrack,
|
|
83
|
+
gestureName: 'toggle',
|
|
84
|
+
gesturePriority: 100,
|
|
85
|
+
threshold: 5,
|
|
86
|
+
passive: false,
|
|
87
|
+
onStart: () => this.onStart(),
|
|
88
|
+
onMove: (ev) => this.onMove(ev),
|
|
89
|
+
onEnd: (ev) => this.onEnd(ev),
|
|
90
|
+
});
|
|
91
|
+
this.disabledChanged();
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
this.onKeyDown = (ev) => {
|
|
95
|
+
if (ev.key === ' ') {
|
|
96
|
+
ev.preventDefault();
|
|
97
|
+
if (!this.disabled) {
|
|
98
|
+
this.toggleChecked();
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
this.onClick = (ev) => {
|
|
103
|
+
/**
|
|
104
|
+
* The haptics for the toggle on tap is
|
|
105
|
+
* an iOS-only feature. As such, it should
|
|
106
|
+
* only trigger on iOS.
|
|
107
|
+
*/
|
|
108
|
+
const enableHaptics = isPlatform('ios');
|
|
109
|
+
if (this.disabled) {
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
ev.preventDefault();
|
|
113
|
+
if (this.lastDrag + 300 < Date.now()) {
|
|
114
|
+
this.toggleChecked();
|
|
115
|
+
enableHaptics && hapticSelection();
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
/**
|
|
119
|
+
* Stops propagation when the display label is clicked,
|
|
120
|
+
* otherwise, two clicks will be triggered.
|
|
121
|
+
*/
|
|
122
|
+
this.onDivLabelClick = (ev) => {
|
|
123
|
+
ev.stopPropagation();
|
|
124
|
+
};
|
|
125
|
+
this.onFocus = () => {
|
|
126
|
+
this.ionFocus.emit();
|
|
127
|
+
};
|
|
128
|
+
this.onBlur = () => {
|
|
129
|
+
this.ionBlur.emit();
|
|
130
|
+
};
|
|
131
|
+
this.getSwitchLabelIcon = (mode, checked) => {
|
|
132
|
+
if (mode === 'md') {
|
|
133
|
+
return checked ? checkmarkOutline : removeOutline;
|
|
134
|
+
}
|
|
135
|
+
return checked ? removeOutline : ellipseOutline;
|
|
136
|
+
};
|
|
137
|
+
}
|
|
129
138
|
disabledChanged() {
|
|
130
139
|
if (this.gesture) {
|
|
131
140
|
this.gesture.enable(!this.disabled);
|
|
@@ -196,22 +205,6 @@ export class Toggle {
|
|
|
196
205
|
this.setupGesture();
|
|
197
206
|
this.didLoad = true;
|
|
198
207
|
}
|
|
199
|
-
setupGesture = async () => {
|
|
200
|
-
const { toggleTrack } = this;
|
|
201
|
-
if (toggleTrack) {
|
|
202
|
-
this.gesture = (await import('../../utils/gesture')).createGesture({
|
|
203
|
-
el: toggleTrack,
|
|
204
|
-
gestureName: 'toggle',
|
|
205
|
-
gesturePriority: 100,
|
|
206
|
-
threshold: 5,
|
|
207
|
-
passive: false,
|
|
208
|
-
onStart: () => this.onStart(),
|
|
209
|
-
onMove: (ev) => this.onMove(ev),
|
|
210
|
-
onEnd: (ev) => this.onEnd(ev),
|
|
211
|
-
});
|
|
212
|
-
this.disabledChanged();
|
|
213
|
-
}
|
|
214
|
-
};
|
|
215
208
|
disconnectedCallback() {
|
|
216
209
|
if (this.gesture) {
|
|
217
210
|
this.gesture.destroy();
|
|
@@ -256,49 +249,6 @@ export class Toggle {
|
|
|
256
249
|
setFocus() {
|
|
257
250
|
this.el.focus();
|
|
258
251
|
}
|
|
259
|
-
onKeyDown = (ev) => {
|
|
260
|
-
if (ev.key === ' ') {
|
|
261
|
-
ev.preventDefault();
|
|
262
|
-
if (!this.disabled) {
|
|
263
|
-
this.toggleChecked();
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
};
|
|
267
|
-
onClick = (ev) => {
|
|
268
|
-
/**
|
|
269
|
-
* The haptics for the toggle on tap is
|
|
270
|
-
* an iOS-only feature. As such, it should
|
|
271
|
-
* only trigger on iOS.
|
|
272
|
-
*/
|
|
273
|
-
const enableHaptics = isPlatform('ios');
|
|
274
|
-
if (this.disabled) {
|
|
275
|
-
return;
|
|
276
|
-
}
|
|
277
|
-
ev.preventDefault();
|
|
278
|
-
if (this.lastDrag + 300 < Date.now()) {
|
|
279
|
-
this.toggleChecked();
|
|
280
|
-
enableHaptics && hapticSelection();
|
|
281
|
-
}
|
|
282
|
-
};
|
|
283
|
-
/**
|
|
284
|
-
* Stops propagation when the display label is clicked,
|
|
285
|
-
* otherwise, two clicks will be triggered.
|
|
286
|
-
*/
|
|
287
|
-
onDivLabelClick = (ev) => {
|
|
288
|
-
ev.stopPropagation();
|
|
289
|
-
};
|
|
290
|
-
onFocus = () => {
|
|
291
|
-
this.ionFocus.emit();
|
|
292
|
-
};
|
|
293
|
-
onBlur = () => {
|
|
294
|
-
this.ionBlur.emit();
|
|
295
|
-
};
|
|
296
|
-
getSwitchLabelIcon = (mode, checked) => {
|
|
297
|
-
if (mode === 'md') {
|
|
298
|
-
return checked ? checkmarkOutline : removeOutline;
|
|
299
|
-
}
|
|
300
|
-
return checked ? removeOutline : ellipseOutline;
|
|
301
|
-
};
|
|
302
252
|
renderOnOffSwitchLabels(mode, checked) {
|
|
303
253
|
const icon = this.getSwitchLabelIcon(mode, checked);
|
|
304
254
|
return (h("ion-icon", { class: {
|
|
@@ -18,14 +18,9 @@ import { getIonMode } from "../../global/ionic-global";
|
|
|
18
18
|
* @part content - The container for the default slot, wrapping content provided without a named slot.
|
|
19
19
|
*/
|
|
20
20
|
export class Toolbar {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
* The color to use from your application's color palette.
|
|
25
|
-
* Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
|
|
26
|
-
* For more information on colors, see [theming](/docs/theming/basics).
|
|
27
|
-
*/
|
|
28
|
-
color;
|
|
21
|
+
constructor() {
|
|
22
|
+
this.childrenStyles = new Map();
|
|
23
|
+
}
|
|
29
24
|
componentWillLoad() {
|
|
30
25
|
const buttons = Array.from(this.el.querySelectorAll('ion-buttons'));
|
|
31
26
|
const firstButtons = buttons.find((button) => {
|