@ionic/core 9.0.1-dev.11787177893.1979eb13 → 9.0.1-dev.11787589191.1e183b55
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-BPnXVGaS.js +4 -0
- package/components/p-BQAiulS1.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-DV85C0e0.js → p-BgUIV8NQ.js} +1 -1
- package/components/p-Bh2ta0iG.js +4 -0
- package/components/p-BnUOVmKh.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-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-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-D1OCo42s.js +4 -0
- package/components/p-D7ysFE2B.js +4 -0
- package/{dist/ionic/p-4eOQC00Z.js → components/p-DCWfzDM8.js} +1 -1
- package/components/p-DD57rSP_.js +4 -0
- 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-DnXLaaf7.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-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 +94 -159
- package/dist/cjs/ion-alert.cjs.entry.js +86 -170
- 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 +45 -87
- package/dist/cjs/ion-item_8.cjs.entry.js +61 -157
- package/dist/cjs/ion-loading.cjs.entry.js +60 -133
- package/dist/cjs/ion-menu_3.cjs.entry.js +94 -158
- package/dist/cjs/ion-modal.cjs.entry.js +280 -383
- 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 +196 -294
- 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 +84 -156
- 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 +111 -154
- 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-B5JeC8OQ.js} +58 -35
- 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 +84 -148
- package/dist/collection/components/action-sheet/test/basic/fixture.js +0 -3
- package/dist/collection/components/alert/alert.js +76 -159
- 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 +16 -24
- 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 +53 -125
- 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 +271 -373
- 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 +189 -286
- 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 +74 -107
- 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 +33 -37
- 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/overlays.js +51 -29
- package/dist/collection/utils/sanitization/index.js +0 -1
- 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 +94 -159
- package/dist/esm/ion-alert.entry.js +86 -170
- 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 +45 -87
- package/dist/esm/ion-item_8.entry.js +61 -157
- package/dist/esm/ion-loading.entry.js +60 -133
- package/dist/esm/ion-menu_3.entry.js +94 -158
- package/dist/esm/ion-modal.entry.js +280 -383
- 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 +196 -294
- 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 +84 -156
- 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 +111 -154
- 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-CefdMZgF.js} +58 -36
- 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-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-36abc1ee.entry.js +4 -0
- package/dist/ionic/p-39a8d4e0.entry.js +4 -0
- package/dist/ionic/p-408973f4.entry.js +4 -0
- package/dist/ionic/p-46a938a9.entry.js +4 -0
- package/dist/ionic/p-47626333.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-56307aea.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-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-881b6954.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-8f464a8f.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-9455207b.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-DLLCmV-y.js +4 -0
- package/dist/ionic/{p-BYEAtHr-.js → p-DXJgZWgi.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-a2fa2de2.entry.js +4 -0
- package/dist/ionic/p-a53b0908.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-b875a59e.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-f3b671aa.entry.js +4 -0
- package/dist/ionic/p-f521b13c.entry.js +4 -0
- package/dist/ionic/p-f8713b2c.entry.js +4 -0
- package/dist/ionic/p-fbd83d4c.entry.js +4 -0
- package/dist/types/components/action-sheet/action-sheet.d.ts +10 -0
- package/dist/types/components/alert/alert.d.ts +7 -0
- package/dist/types/components/modal/modal.d.ts +8 -0
- package/dist/types/components/refresher/refresher.d.ts +4 -4
- package/dist/types/utils/overlays.d.ts +9 -0
- package/hydrate/index.js +5621 -8448
- package/hydrate/index.mjs +5621 -8448
- 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-fruGqVHh.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-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-983b6c91.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-D94_RztK.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
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, c as createEvent,
|
|
5
|
-
import { c as createButtonActiveGesture } from './button-active-
|
|
6
|
-
import { r as raf } from './helpers-
|
|
4
|
+
import { r as registerInstance, c as createEvent, a as readTask, h, d as Host, g as getElement } from './index-CKYcsw8f.js';
|
|
5
|
+
import { c as createButtonActiveGesture } from './button-active-ChA4D-ml.js';
|
|
6
|
+
import { r as raf } from './helpers-BIgoInJU.js';
|
|
7
7
|
import { c as createLockController } from './lock-controller-B-hirT0v.js';
|
|
8
|
-
import { c as createDelegateController, d as createTriggerController, e as present, f as dismiss, g as eventMethod,
|
|
9
|
-
import { r as renderOptionLabel } from './select-option-render-
|
|
8
|
+
import { c as createDelegateController, d as createTriggerController, B as BACKDROP, i as isCancel, e as present, f as dismiss, g as eventMethod, s as safeCall, h as prepareOverlay, r as restoreRootFocusTrapAccessibility, j as cleanupRootFocusTrapAccessibility, k as setOverlayId } from './overlays-CefdMZgF.js';
|
|
9
|
+
import { r as renderOptionLabel } from './select-option-render-lIuu64EV.js';
|
|
10
10
|
import { g as getClassMap } from './theme-byZM6qHV.js';
|
|
11
|
-
import { b as getIonMode } from './ionic-global-
|
|
12
|
-
import { c as createAnimation } from './animation-
|
|
11
|
+
import { b as getIonMode } from './ionic-global-lrowsHfi.js';
|
|
12
|
+
import { c as createAnimation } from './animation-TxGPYeDn.js';
|
|
13
13
|
import './haptic-Cq4UAeka.js';
|
|
14
14
|
import './capacitor-CFERIeaU.js';
|
|
15
15
|
import './index-ZjP4CjeZ.js';
|
|
16
|
-
import './index-
|
|
17
|
-
import './gesture-controller-
|
|
16
|
+
import './index-BmLuEdV7.js';
|
|
17
|
+
import './gesture-controller-B_gJaBk0.js';
|
|
18
18
|
import './dir-Dojwmvde.js';
|
|
19
|
-
import './hardware-back-button-
|
|
20
|
-
import './framework-delegate-
|
|
21
|
-
import './index-
|
|
19
|
+
import './hardware-back-button-D8W4L0JP.js';
|
|
20
|
+
import './framework-delegate-DaLWnISz.js';
|
|
21
|
+
import './index-elneMH8y.js';
|
|
22
22
|
|
|
23
23
|
/**
|
|
24
24
|
* iOS Action Sheet Enter Animation
|
|
@@ -119,45 +119,54 @@ const ActionSheet = class {
|
|
|
119
119
|
this.willPresentShorthand = createEvent(this, "willPresent", 7);
|
|
120
120
|
this.willDismissShorthand = createEvent(this, "willDismiss", 7);
|
|
121
121
|
this.didDismissShorthand = createEvent(this, "didDismiss", 7);
|
|
122
|
+
this.delegateController = createDelegateController(this);
|
|
123
|
+
this.lockController = createLockController();
|
|
124
|
+
this.triggerController = createTriggerController();
|
|
125
|
+
this.hasRadioButtons = false;
|
|
126
|
+
this.presented = false;
|
|
127
|
+
/** @internal */
|
|
128
|
+
this.hasController = false;
|
|
129
|
+
/**
|
|
130
|
+
* If `true`, the keyboard will be automatically dismissed when the overlay is presented.
|
|
131
|
+
*/
|
|
132
|
+
this.keyboardClose = true;
|
|
133
|
+
/**
|
|
134
|
+
* An array of buttons for the action sheet.
|
|
135
|
+
*/
|
|
136
|
+
this.buttons = [];
|
|
137
|
+
/**
|
|
138
|
+
* If `true`, the action sheet will be dismissed when the backdrop is clicked.
|
|
139
|
+
*/
|
|
140
|
+
this.backdropDismiss = true;
|
|
141
|
+
/**
|
|
142
|
+
* If `true`, the action sheet will be translucent.
|
|
143
|
+
* Only applies when the mode is `"ios"` and the device supports
|
|
144
|
+
* [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
|
|
145
|
+
*/
|
|
146
|
+
this.translucent = false;
|
|
147
|
+
/**
|
|
148
|
+
* If `true`, the action sheet will animate.
|
|
149
|
+
*/
|
|
150
|
+
this.animated = true;
|
|
151
|
+
/**
|
|
152
|
+
* If `true`, the action sheet will open. If `false`, the action sheet will close.
|
|
153
|
+
* Use this if you need finer grained control over presentation, otherwise
|
|
154
|
+
* just use the actionSheetController or the `trigger` property.
|
|
155
|
+
* Note: `isOpen` will not automatically be set back to `false` when
|
|
156
|
+
* the action sheet dismisses. You will need to do that in your code.
|
|
157
|
+
*/
|
|
158
|
+
this.isOpen = false;
|
|
159
|
+
this.onBackdropTap = () => {
|
|
160
|
+
this.dismiss(undefined, BACKDROP);
|
|
161
|
+
};
|
|
162
|
+
this.dispatchCancelHandler = (ev) => {
|
|
163
|
+
const role = ev.detail.role;
|
|
164
|
+
if (isCancel(role)) {
|
|
165
|
+
const cancelButton = this.getButtons().find((b) => b.role === 'cancel');
|
|
166
|
+
this.callButtonHandler(cancelButton);
|
|
167
|
+
}
|
|
168
|
+
};
|
|
122
169
|
}
|
|
123
|
-
delegateController = createDelegateController(this);
|
|
124
|
-
lockController = createLockController();
|
|
125
|
-
triggerController = createTriggerController();
|
|
126
|
-
wrapperEl;
|
|
127
|
-
groupEl;
|
|
128
|
-
gesture;
|
|
129
|
-
hasRadioButtons = false;
|
|
130
|
-
presented = false;
|
|
131
|
-
lastFocus;
|
|
132
|
-
animation;
|
|
133
|
-
/**
|
|
134
|
-
* The ID of the currently active/selected radio button.
|
|
135
|
-
* Used for keyboard navigation and ARIA attributes.
|
|
136
|
-
*/
|
|
137
|
-
activeRadioId;
|
|
138
|
-
get el() { return getElement(this); }
|
|
139
|
-
/** @internal */
|
|
140
|
-
overlayIndex;
|
|
141
|
-
/** @internal */
|
|
142
|
-
delegate;
|
|
143
|
-
/** @internal */
|
|
144
|
-
hasController = false;
|
|
145
|
-
/**
|
|
146
|
-
* If `true`, the keyboard will be automatically dismissed when the overlay is presented.
|
|
147
|
-
*/
|
|
148
|
-
keyboardClose = true;
|
|
149
|
-
/**
|
|
150
|
-
* Animation to use when the action sheet is presented.
|
|
151
|
-
*/
|
|
152
|
-
enterAnimation;
|
|
153
|
-
/**
|
|
154
|
-
* Animation to use when the action sheet is dismissed.
|
|
155
|
-
*/
|
|
156
|
-
leaveAnimation;
|
|
157
|
-
/**
|
|
158
|
-
* An array of buttons for the action sheet.
|
|
159
|
-
*/
|
|
160
|
-
buttons = [];
|
|
161
170
|
buttonsChanged() {
|
|
162
171
|
const radioButtons = this.getRadioButtons();
|
|
163
172
|
this.hasRadioButtons = radioButtons.length > 0;
|
|
@@ -171,45 +180,6 @@ const ActionSheet = class {
|
|
|
171
180
|
}
|
|
172
181
|
}
|
|
173
182
|
}
|
|
174
|
-
/**
|
|
175
|
-
* Additional classes to apply for custom CSS. If multiple classes are
|
|
176
|
-
* provided they should be separated by spaces.
|
|
177
|
-
*/
|
|
178
|
-
cssClass;
|
|
179
|
-
/**
|
|
180
|
-
* If `true`, the action sheet will be dismissed when the backdrop is clicked.
|
|
181
|
-
*/
|
|
182
|
-
backdropDismiss = true;
|
|
183
|
-
/**
|
|
184
|
-
* Title for the action sheet.
|
|
185
|
-
*/
|
|
186
|
-
header;
|
|
187
|
-
/**
|
|
188
|
-
* Subtitle for the action sheet.
|
|
189
|
-
*/
|
|
190
|
-
subHeader;
|
|
191
|
-
/**
|
|
192
|
-
* If `true`, the action sheet will be translucent.
|
|
193
|
-
* Only applies when the mode is `"ios"` and the device supports
|
|
194
|
-
* [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
|
|
195
|
-
*/
|
|
196
|
-
translucent = false;
|
|
197
|
-
/**
|
|
198
|
-
* If `true`, the action sheet will animate.
|
|
199
|
-
*/
|
|
200
|
-
animated = true;
|
|
201
|
-
/**
|
|
202
|
-
* Additional attributes to pass to the action sheet.
|
|
203
|
-
*/
|
|
204
|
-
htmlAttributes;
|
|
205
|
-
/**
|
|
206
|
-
* If `true`, the action sheet will open. If `false`, the action sheet will close.
|
|
207
|
-
* Use this if you need finer grained control over presentation, otherwise
|
|
208
|
-
* just use the actionSheetController or the `trigger` property.
|
|
209
|
-
* Note: `isOpen` will not automatically be set back to `false` when
|
|
210
|
-
* the action sheet dismisses. You will need to do that in your code.
|
|
211
|
-
*/
|
|
212
|
-
isOpen = false;
|
|
213
183
|
onIsOpenChange(newValue, oldValue) {
|
|
214
184
|
if (newValue === true && oldValue === false) {
|
|
215
185
|
this.present();
|
|
@@ -218,53 +188,12 @@ const ActionSheet = class {
|
|
|
218
188
|
this.dismiss();
|
|
219
189
|
}
|
|
220
190
|
}
|
|
221
|
-
/**
|
|
222
|
-
* An ID corresponding to the trigger element that
|
|
223
|
-
* causes the action sheet to open when clicked.
|
|
224
|
-
*/
|
|
225
|
-
trigger;
|
|
226
191
|
triggerChanged() {
|
|
227
192
|
const { trigger, el, triggerController } = this;
|
|
228
193
|
if (trigger) {
|
|
229
194
|
triggerController.addClickListener(el, trigger);
|
|
230
195
|
}
|
|
231
196
|
}
|
|
232
|
-
/**
|
|
233
|
-
* Emitted after the action sheet has presented.
|
|
234
|
-
*/
|
|
235
|
-
didPresent;
|
|
236
|
-
/**
|
|
237
|
-
* Emitted before the action sheet has presented.
|
|
238
|
-
*/
|
|
239
|
-
willPresent;
|
|
240
|
-
/**
|
|
241
|
-
* Emitted before the action sheet has dismissed.
|
|
242
|
-
*/
|
|
243
|
-
willDismiss;
|
|
244
|
-
/**
|
|
245
|
-
* Emitted after the action sheet has dismissed.
|
|
246
|
-
*/
|
|
247
|
-
didDismiss;
|
|
248
|
-
/**
|
|
249
|
-
* Emitted after the action sheet has presented.
|
|
250
|
-
* Shorthand for ionActionSheetWillDismiss.
|
|
251
|
-
*/
|
|
252
|
-
didPresentShorthand;
|
|
253
|
-
/**
|
|
254
|
-
* Emitted before the action sheet has presented.
|
|
255
|
-
* Shorthand for ionActionSheetWillPresent.
|
|
256
|
-
*/
|
|
257
|
-
willPresentShorthand;
|
|
258
|
-
/**
|
|
259
|
-
* Emitted before the action sheet has dismissed.
|
|
260
|
-
* Shorthand for ionActionSheetWillDismiss.
|
|
261
|
-
*/
|
|
262
|
-
willDismissShorthand;
|
|
263
|
-
/**
|
|
264
|
-
* Emitted after the action sheet has dismissed.
|
|
265
|
-
* Shorthand for ionActionSheetDidDismiss.
|
|
266
|
-
*/
|
|
267
|
-
didDismissShorthand;
|
|
268
197
|
/**
|
|
269
198
|
* Present the action sheet overlay after it has been created.
|
|
270
199
|
*/
|
|
@@ -373,16 +302,6 @@ const ActionSheet = class {
|
|
|
373
302
|
const buttonIndex = index !== undefined ? index : allButtons.indexOf(button);
|
|
374
303
|
return `action-sheet-button-${this.overlayIndex}-${buttonIndex}`;
|
|
375
304
|
}
|
|
376
|
-
onBackdropTap = () => {
|
|
377
|
-
this.dismiss(undefined, BACKDROP);
|
|
378
|
-
};
|
|
379
|
-
dispatchCancelHandler = (ev) => {
|
|
380
|
-
const role = ev.detail.role;
|
|
381
|
-
if (isCancel(role)) {
|
|
382
|
-
const cancelButton = this.getButtons().find((b) => b.role === 'cancel');
|
|
383
|
-
this.callButtonHandler(cancelButton);
|
|
384
|
-
}
|
|
385
|
-
};
|
|
386
305
|
/**
|
|
387
306
|
* When the action sheet has radio buttons, we want to follow the
|
|
388
307
|
* keyboard navigation pattern for radio groups:
|
|
@@ -459,6 +378,13 @@ const ActionSheet = class {
|
|
|
459
378
|
connectedCallback() {
|
|
460
379
|
prepareOverlay(this.el);
|
|
461
380
|
this.triggerChanged();
|
|
381
|
+
// `componentDidLoad` only fires once per instance, so a reconnect has to
|
|
382
|
+
// rebuild the gesture its disconnect destroyed.
|
|
383
|
+
this.setupButtonActiveGesture();
|
|
384
|
+
// Re-apply the root lock if moved without dismiss() being called
|
|
385
|
+
if (this.presented) {
|
|
386
|
+
restoreRootFocusTrapAccessibility(this.el);
|
|
387
|
+
}
|
|
462
388
|
}
|
|
463
389
|
disconnectedCallback() {
|
|
464
390
|
if (this.gesture) {
|
|
@@ -478,24 +404,32 @@ const ActionSheet = class {
|
|
|
478
404
|
// Initialize activeRadioId for radio buttons
|
|
479
405
|
this.buttonsChanged();
|
|
480
406
|
}
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
407
|
+
/**
|
|
408
|
+
* Only create gesture if:
|
|
409
|
+
* 1. A gesture does not already exist
|
|
410
|
+
* 2. App is running in iOS mode
|
|
411
|
+
* 3. A wrapper ref exists
|
|
412
|
+
* 4. A group ref exists
|
|
413
|
+
* 5. The host is still connected, since a reconnect can schedule this and
|
|
414
|
+
* disconnect again before the task runs
|
|
415
|
+
*/
|
|
416
|
+
setupButtonActiveGesture() {
|
|
489
417
|
const { groupEl, wrapperEl } = this;
|
|
490
|
-
if (
|
|
491
|
-
|
|
492
|
-
const isScrollable = groupEl.scrollHeight > groupEl.clientHeight;
|
|
493
|
-
if (!isScrollable) {
|
|
494
|
-
this.gesture = createButtonActiveGesture(wrapperEl, (refEl) => refEl.classList.contains('action-sheet-button'));
|
|
495
|
-
this.gesture.enable(true);
|
|
496
|
-
}
|
|
497
|
-
});
|
|
418
|
+
if (getIonMode(this) !== 'ios' || !wrapperEl || !groupEl) {
|
|
419
|
+
return;
|
|
498
420
|
}
|
|
421
|
+
readTask(() => {
|
|
422
|
+
// Two calls before the first flushes would otherwise both create a
|
|
423
|
+
// gesture, orphaning the first with its listeners still bound.
|
|
424
|
+
if (this.gesture || !this.el.isConnected || groupEl.scrollHeight > groupEl.clientHeight) {
|
|
425
|
+
return;
|
|
426
|
+
}
|
|
427
|
+
this.gesture = createButtonActiveGesture(wrapperEl, (refEl) => refEl.classList.contains('action-sheet-button'));
|
|
428
|
+
this.gesture.enable(true);
|
|
429
|
+
});
|
|
430
|
+
}
|
|
431
|
+
componentDidLoad() {
|
|
432
|
+
this.setupButtonActiveGesture();
|
|
499
433
|
/**
|
|
500
434
|
* If action sheet was rendered with isOpen="true"
|
|
501
435
|
* then we should open action sheet immediately.
|
|
@@ -588,18 +522,19 @@ const ActionSheet = class {
|
|
|
588
522
|
const cancelButton = allButtons.find((b) => b.role === 'cancel');
|
|
589
523
|
const buttons = allButtons.filter((b) => b.role !== 'cancel');
|
|
590
524
|
const headerID = `action-sheet-${overlayIndex}-header`;
|
|
591
|
-
return (h(Host, { key: '
|
|
525
|
+
return (h(Host, { key: '326d4af08e832e10e1882fbbf67dba3221095865', role: "dialog", "aria-modal": "true", "aria-labelledby": header !== undefined ? headerID : null, tabindex: "-1", ...htmlAttributes, style: {
|
|
592
526
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
593
527
|
}, class: {
|
|
594
528
|
[mode]: true,
|
|
595
529
|
...getClassMap(this.cssClass),
|
|
596
530
|
'overlay-hidden': true,
|
|
597
531
|
'action-sheet-translucent': this.translucent,
|
|
598
|
-
}, onIonActionSheetWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }, h("ion-backdrop", { key: '
|
|
532
|
+
}, onIonActionSheetWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }, h("ion-backdrop", { key: '8cb6a0d763a60f61f563a1b7d572ad5e9afd6e40', tappable: this.backdropDismiss }), h("div", { key: 'f8b8da0f52ae674a5e313632ee3d049bed3f813f', tabindex: "0", "aria-hidden": "true" }), h("div", { key: '53cf0d1b01a2cda23c27fc8b96edaccf892e61b3', class: "action-sheet-wrapper ion-overlay-wrapper", ref: (el) => (this.wrapperEl = el) }, h("div", { key: '6df261ff946c3b4496535df04cc70e2cfa3cc2da', class: "action-sheet-container" }, h("div", { key: '6f6f2846d19baa738651b990d8613aa0ecac9479', class: "action-sheet-group", ref: (el) => (this.groupEl = el), role: hasRadioButtons ? 'radiogroup' : undefined }, header !== undefined && (h("div", { key: '3f36df8eaaedb5e61a41bbf44134f25f263d1e7e', id: headerID, class: {
|
|
599
533
|
'action-sheet-title': true,
|
|
600
534
|
'action-sheet-has-sub-title': this.subHeader !== undefined,
|
|
601
|
-
} }, header, this.subHeader && h("div", { key: '
|
|
535
|
+
} }, header, this.subHeader && h("div", { key: 'a6b2bf51123eaae4ed873e65c00c426e9c511ac0', class: "action-sheet-sub-title" }, this.subHeader))), this.renderActionSheetButtons(buttons)), cancelButton && (h("div", { key: '4dd96553327003b899bc03a815a06a7cce35db29', class: "action-sheet-group action-sheet-group-cancel" }, h("button", { key: 'a1928040a3d20f2e50230b7d6003467d2916f5b4', ...cancelButton.htmlAttributes, type: "button", class: buttonClass(cancelButton), onClick: () => this.buttonClick(cancelButton) }, h("span", { key: '2fa9d0e4072f1fd55f08048966495a627a14ef8f', class: "action-sheet-button-inner" }, cancelButton.icon && (h("ion-icon", { key: 'c2eec9967cb9f0b75d4428bb548674199089203c', icon: cancelButton.icon, "aria-hidden": "true", lazy: false, class: "action-sheet-icon" })), cancelButton.text), mode === 'md' && h("ion-ripple-effect", { key: '09e71f28d77ae16481b832863f49b3f7d7dd76f9' })))))), h("div", { key: '386fbe5ca2a88e9b52bd3b9d8f3daddbc630e6f6', tabindex: "0", "aria-hidden": "true" })));
|
|
602
536
|
}
|
|
537
|
+
get el() { return getElement(this); }
|
|
603
538
|
static get watchers() { return {
|
|
604
539
|
"buttons": [{
|
|
605
540
|
"buttonsChanged": 0
|
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, c as createEvent, e as config,
|
|
4
|
+
import { r as registerInstance, c as createEvent, e as config, f as printIonWarning, i as forceUpdate, h, d as Host, g as getElement } from './index-CKYcsw8f.js';
|
|
5
5
|
import { E as ENABLE_HTML_CONTENT_DEFAULT } from './config-DWCzVL3Y.js';
|
|
6
|
-
import { c as createButtonActiveGesture } from './button-active-
|
|
7
|
-
import { r as raf } from './helpers-
|
|
6
|
+
import { c as createButtonActiveGesture } from './button-active-ChA4D-ml.js';
|
|
7
|
+
import { r as raf } from './helpers-BIgoInJU.js';
|
|
8
8
|
import { c as createLockController } from './lock-controller-B-hirT0v.js';
|
|
9
9
|
import { g as getOverlayLabelJustify, a as getOverlayLabelPlacement } from './overlay-control-label-BSQPZ79H.js';
|
|
10
|
-
import { c as createDelegateController, d as createTriggerController, h as prepareOverlay, k as setOverlayId, j as cleanupRootFocusTrapAccessibility, e as present, f as dismiss, g as eventMethod, s as safeCall
|
|
11
|
-
import { s as sanitizeDOMString } from './index-
|
|
12
|
-
import { r as renderOptionLabel } from './select-option-render-
|
|
10
|
+
import { c as createDelegateController, d as createTriggerController, B as BACKDROP, i as isCancel, h as prepareOverlay, r as restoreRootFocusTrapAccessibility, k as setOverlayId, j as cleanupRootFocusTrapAccessibility, e as present, f as dismiss, g as eventMethod, s as safeCall } from './overlays-CefdMZgF.js';
|
|
11
|
+
import { s as sanitizeDOMString } from './index-elneMH8y.js';
|
|
12
|
+
import { r as renderOptionLabel } from './select-option-render-lIuu64EV.js';
|
|
13
13
|
import { g as getClassMap } from './theme-byZM6qHV.js';
|
|
14
|
-
import { b as getIonMode } from './ionic-global-
|
|
15
|
-
import { c as createAnimation } from './animation-
|
|
14
|
+
import { b as getIonMode } from './ionic-global-lrowsHfi.js';
|
|
15
|
+
import { c as createAnimation } from './animation-TxGPYeDn.js';
|
|
16
16
|
import './haptic-Cq4UAeka.js';
|
|
17
17
|
import './capacitor-CFERIeaU.js';
|
|
18
18
|
import './index-ZjP4CjeZ.js';
|
|
19
|
-
import './index-
|
|
20
|
-
import './gesture-controller-
|
|
19
|
+
import './index-BmLuEdV7.js';
|
|
20
|
+
import './gesture-controller-B_gJaBk0.js';
|
|
21
21
|
import './dir-Dojwmvde.js';
|
|
22
|
-
import './hardware-back-button-
|
|
23
|
-
import './framework-delegate-
|
|
22
|
+
import './hardware-back-button-D8W4L0JP.js';
|
|
23
|
+
import './framework-delegate-DaLWnISz.js';
|
|
24
24
|
|
|
25
25
|
/**
|
|
26
26
|
* iOS Alert Enter Animation
|
|
@@ -122,103 +122,61 @@ const Alert = class {
|
|
|
122
122
|
this.willPresentShorthand = createEvent(this, "willPresent", 7);
|
|
123
123
|
this.willDismissShorthand = createEvent(this, "willDismiss", 7);
|
|
124
124
|
this.didDismissShorthand = createEvent(this, "didDismiss", 7);
|
|
125
|
+
this.delegateController = createDelegateController(this);
|
|
126
|
+
this.lockController = createLockController();
|
|
127
|
+
this.triggerController = createTriggerController();
|
|
128
|
+
this.customHTMLEnabled = config.get('innerHTMLTemplatesEnabled', ENABLE_HTML_CONTENT_DEFAULT);
|
|
129
|
+
this.processedInputs = [];
|
|
130
|
+
this.processedButtons = [];
|
|
131
|
+
this.isButtonGroupWrapped = false;
|
|
132
|
+
this.presented = false;
|
|
133
|
+
/** @internal */
|
|
134
|
+
this.hasController = false;
|
|
135
|
+
/**
|
|
136
|
+
* If `true`, the keyboard will be automatically dismissed when the overlay is presented.
|
|
137
|
+
*/
|
|
138
|
+
this.keyboardClose = true;
|
|
139
|
+
/**
|
|
140
|
+
* Array of buttons to be added to the alert.
|
|
141
|
+
*/
|
|
142
|
+
this.buttons = [];
|
|
143
|
+
/**
|
|
144
|
+
* Array of input to show in the alert.
|
|
145
|
+
*/
|
|
146
|
+
this.inputs = [];
|
|
147
|
+
/**
|
|
148
|
+
* If `true`, the alert will be dismissed when the backdrop is clicked.
|
|
149
|
+
*/
|
|
150
|
+
this.backdropDismiss = true;
|
|
151
|
+
/**
|
|
152
|
+
* If `true`, the alert will be translucent.
|
|
153
|
+
* Only applies when the mode is `"ios"` and the device supports
|
|
154
|
+
* [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
|
|
155
|
+
*/
|
|
156
|
+
this.translucent = false;
|
|
157
|
+
/**
|
|
158
|
+
* If `true`, the alert will animate.
|
|
159
|
+
*/
|
|
160
|
+
this.animated = true;
|
|
161
|
+
/**
|
|
162
|
+
* If `true`, the alert will open. If `false`, the alert will close.
|
|
163
|
+
* Use this if you need finer grained control over presentation, otherwise
|
|
164
|
+
* just use the alertController or the `trigger` property.
|
|
165
|
+
* Note: `isOpen` will not automatically be set back to `false` when
|
|
166
|
+
* the alert dismisses. You will need to do that in your code.
|
|
167
|
+
*/
|
|
168
|
+
this.isOpen = false;
|
|
169
|
+
this.onBackdropTap = () => {
|
|
170
|
+
this.dismiss(undefined, BACKDROP);
|
|
171
|
+
};
|
|
172
|
+
this.dispatchCancelHandler = (ev) => {
|
|
173
|
+
const role = ev.detail.role;
|
|
174
|
+
if (isCancel(role)) {
|
|
175
|
+
const cancelButton = this.processedButtons.find((b) => b.role === 'cancel');
|
|
176
|
+
this.callButtonHandler(cancelButton);
|
|
177
|
+
}
|
|
178
|
+
};
|
|
125
179
|
}
|
|
126
|
-
delegateController = createDelegateController(this);
|
|
127
|
-
lockController = createLockController();
|
|
128
|
-
triggerController = createTriggerController();
|
|
129
|
-
customHTMLEnabled = config.get('innerHTMLTemplatesEnabled', ENABLE_HTML_CONTENT_DEFAULT);
|
|
130
|
-
activeId;
|
|
131
|
-
inputType;
|
|
132
|
-
processedInputs = [];
|
|
133
|
-
processedButtons = [];
|
|
134
|
-
wrapperEl;
|
|
135
|
-
buttonGroupEl;
|
|
136
|
-
buttonGroupResizeObserver;
|
|
137
|
-
gesture;
|
|
138
|
-
isButtonGroupWrapped = false;
|
|
139
|
-
presented = false;
|
|
140
|
-
lastFocus;
|
|
141
|
-
get el() { return getElement(this); }
|
|
142
|
-
/** @internal */
|
|
143
|
-
overlayIndex;
|
|
144
|
-
/** @internal */
|
|
145
|
-
delegate;
|
|
146
|
-
/** @internal */
|
|
147
|
-
hasController = false;
|
|
148
|
-
/**
|
|
149
|
-
* If `true`, the keyboard will be automatically dismissed when the overlay is presented.
|
|
150
|
-
*/
|
|
151
|
-
keyboardClose = true;
|
|
152
|
-
/**
|
|
153
|
-
* Animation to use when the alert is presented.
|
|
154
|
-
*/
|
|
155
|
-
enterAnimation;
|
|
156
|
-
/**
|
|
157
|
-
* Animation to use when the alert is dismissed.
|
|
158
|
-
*/
|
|
159
|
-
leaveAnimation;
|
|
160
|
-
/**
|
|
161
|
-
* Additional classes to apply for custom CSS. If multiple classes are
|
|
162
|
-
* provided they should be separated by spaces.
|
|
163
|
-
*/
|
|
164
|
-
cssClass;
|
|
165
|
-
/**
|
|
166
|
-
* The main title in the heading of the alert.
|
|
167
|
-
*/
|
|
168
|
-
header;
|
|
169
|
-
/**
|
|
170
|
-
* The subtitle in the heading of the alert. Displayed under the title.
|
|
171
|
-
*/
|
|
172
|
-
subHeader;
|
|
173
|
-
/**
|
|
174
|
-
* The main message to be displayed in the alert.
|
|
175
|
-
* `message` can accept either plaintext or HTML as a string.
|
|
176
|
-
* To display characters normally reserved for HTML, they
|
|
177
|
-
* must be escaped. For example `<Ionic>` would become
|
|
178
|
-
* `<Ionic>`
|
|
179
|
-
*
|
|
180
|
-
* For more information: [Security Documentation](https://ionicframework.com/docs/faq/security)
|
|
181
|
-
*
|
|
182
|
-
* This property accepts custom HTML as a string.
|
|
183
|
-
* Content is parsed as plaintext by default.
|
|
184
|
-
* `innerHTMLTemplatesEnabled` must be set to `true` in the Ionic config
|
|
185
|
-
* before custom HTML can be used.
|
|
186
|
-
*/
|
|
187
|
-
message;
|
|
188
|
-
/**
|
|
189
|
-
* Array of buttons to be added to the alert.
|
|
190
|
-
*/
|
|
191
|
-
buttons = [];
|
|
192
|
-
/**
|
|
193
|
-
* Array of input to show in the alert.
|
|
194
|
-
*/
|
|
195
|
-
inputs = [];
|
|
196
|
-
/**
|
|
197
|
-
* If `true`, the alert will be dismissed when the backdrop is clicked.
|
|
198
|
-
*/
|
|
199
|
-
backdropDismiss = true;
|
|
200
|
-
/**
|
|
201
|
-
* If `true`, the alert will be translucent.
|
|
202
|
-
* Only applies when the mode is `"ios"` and the device supports
|
|
203
|
-
* [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
|
|
204
|
-
*/
|
|
205
|
-
translucent = false;
|
|
206
|
-
/**
|
|
207
|
-
* If `true`, the alert will animate.
|
|
208
|
-
*/
|
|
209
|
-
animated = true;
|
|
210
|
-
/**
|
|
211
|
-
* Additional attributes to pass to the alert.
|
|
212
|
-
*/
|
|
213
|
-
htmlAttributes;
|
|
214
|
-
/**
|
|
215
|
-
* If `true`, the alert will open. If `false`, the alert will close.
|
|
216
|
-
* Use this if you need finer grained control over presentation, otherwise
|
|
217
|
-
* just use the alertController or the `trigger` property.
|
|
218
|
-
* Note: `isOpen` will not automatically be set back to `false` when
|
|
219
|
-
* the alert dismisses. You will need to do that in your code.
|
|
220
|
-
*/
|
|
221
|
-
isOpen = false;
|
|
222
180
|
onIsOpenChange(newValue, oldValue) {
|
|
223
181
|
if (newValue === true && oldValue === false) {
|
|
224
182
|
this.present();
|
|
@@ -227,53 +185,12 @@ const Alert = class {
|
|
|
227
185
|
this.dismiss();
|
|
228
186
|
}
|
|
229
187
|
}
|
|
230
|
-
/**
|
|
231
|
-
* An ID corresponding to the trigger element that
|
|
232
|
-
* causes the alert to open when clicked.
|
|
233
|
-
*/
|
|
234
|
-
trigger;
|
|
235
188
|
triggerChanged() {
|
|
236
189
|
const { trigger, el, triggerController } = this;
|
|
237
190
|
if (trigger) {
|
|
238
191
|
triggerController.addClickListener(el, trigger);
|
|
239
192
|
}
|
|
240
193
|
}
|
|
241
|
-
/**
|
|
242
|
-
* Emitted after the alert has presented.
|
|
243
|
-
*/
|
|
244
|
-
didPresent;
|
|
245
|
-
/**
|
|
246
|
-
* Emitted before the alert has presented.
|
|
247
|
-
*/
|
|
248
|
-
willPresent;
|
|
249
|
-
/**
|
|
250
|
-
* Emitted before the alert has dismissed.
|
|
251
|
-
*/
|
|
252
|
-
willDismiss;
|
|
253
|
-
/**
|
|
254
|
-
* Emitted after the alert has dismissed.
|
|
255
|
-
*/
|
|
256
|
-
didDismiss;
|
|
257
|
-
/**
|
|
258
|
-
* Emitted after the alert has presented.
|
|
259
|
-
* Shorthand for ionAlertWillDismiss.
|
|
260
|
-
*/
|
|
261
|
-
didPresentShorthand;
|
|
262
|
-
/**
|
|
263
|
-
* Emitted before the alert has presented.
|
|
264
|
-
* Shorthand for ionAlertWillPresent.
|
|
265
|
-
*/
|
|
266
|
-
willPresentShorthand;
|
|
267
|
-
/**
|
|
268
|
-
* Emitted before the alert has dismissed.
|
|
269
|
-
* Shorthand for ionAlertWillDismiss.
|
|
270
|
-
*/
|
|
271
|
-
willDismissShorthand;
|
|
272
|
-
/**
|
|
273
|
-
* Emitted after the alert has dismissed.
|
|
274
|
-
* Shorthand for ionAlertDidDismiss.
|
|
275
|
-
*/
|
|
276
|
-
didDismissShorthand;
|
|
277
194
|
onKeydown(ev) {
|
|
278
195
|
const inputTypes = new Set(this.processedInputs.map((i) => i.type));
|
|
279
196
|
/**
|
|
@@ -379,10 +296,15 @@ const Alert = class {
|
|
|
379
296
|
this.triggerChanged();
|
|
380
297
|
/**
|
|
381
298
|
* If the alert was previously connected and is being reattached, the
|
|
382
|
-
* ResizeObserver
|
|
383
|
-
* instance, so re-establish
|
|
299
|
+
* `ResizeObserver` and the button gesture were torn down. `componentDidLoad`
|
|
300
|
+
* only fires once per instance, so re-establish both here on reconnect.
|
|
384
301
|
*/
|
|
385
302
|
this.setupButtonGroupResizeObserver();
|
|
303
|
+
this.setupButtonActiveGesture();
|
|
304
|
+
// Re-apply the root lock if moved without dismiss() being called
|
|
305
|
+
if (this.presented) {
|
|
306
|
+
restoreRootFocusTrapAccessibility(this.el);
|
|
307
|
+
}
|
|
386
308
|
}
|
|
387
309
|
componentWillLoad() {
|
|
388
310
|
if (!this.htmlAttributes?.id) {
|
|
@@ -404,17 +326,20 @@ const Alert = class {
|
|
|
404
326
|
this.buttonGroupResizeObserver?.disconnect();
|
|
405
327
|
this.buttonGroupResizeObserver = undefined;
|
|
406
328
|
}
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
329
|
+
/**
|
|
330
|
+
* Only create gesture if:
|
|
331
|
+
* 1. A gesture does not already exist
|
|
332
|
+
* 2. App is running in iOS mode
|
|
333
|
+
* 3. A wrapper ref exists
|
|
334
|
+
*/
|
|
335
|
+
setupButtonActiveGesture() {
|
|
414
336
|
if (!this.gesture && getIonMode(this) === 'ios' && this.wrapperEl) {
|
|
415
337
|
this.gesture = createButtonActiveGesture(this.wrapperEl, (refEl) => refEl.classList.contains('alert-button'));
|
|
416
338
|
this.gesture.enable(true);
|
|
417
339
|
}
|
|
340
|
+
}
|
|
341
|
+
componentDidLoad() {
|
|
342
|
+
this.setupButtonActiveGesture();
|
|
418
343
|
this.setupButtonGroupResizeObserver();
|
|
419
344
|
/**
|
|
420
345
|
* If alert was rendered with isOpen="true"
|
|
@@ -664,16 +589,6 @@ const Alert = class {
|
|
|
664
589
|
}
|
|
665
590
|
})));
|
|
666
591
|
}
|
|
667
|
-
onBackdropTap = () => {
|
|
668
|
-
this.dismiss(undefined, BACKDROP);
|
|
669
|
-
};
|
|
670
|
-
dispatchCancelHandler = (ev) => {
|
|
671
|
-
const role = ev.detail.role;
|
|
672
|
-
if (isCancel(role)) {
|
|
673
|
-
const cancelButton = this.processedButtons.find((b) => b.role === 'cancel');
|
|
674
|
-
this.callButtonHandler(cancelButton);
|
|
675
|
-
}
|
|
676
|
-
};
|
|
677
592
|
setupButtonGroupResizeObserver() {
|
|
678
593
|
/**
|
|
679
594
|
* Re-evaluate vertical layout when the button group resizes so a 2-button
|
|
@@ -747,15 +662,16 @@ const Alert = class {
|
|
|
747
662
|
* If neither are defined, do not set aria-labelledby.
|
|
748
663
|
*/
|
|
749
664
|
const ariaLabelledBy = header && subHeader ? `${hdrId} ${subHdrId}` : header ? hdrId : subHeader ? subHdrId : null;
|
|
750
|
-
return (h(Host, { key: '
|
|
665
|
+
return (h(Host, { key: '083b5250dc4c76e85240e0225abcb7ca2b66de2f', tabindex: "-1", style: {
|
|
751
666
|
zIndex: `${20000 + overlayIndex}`,
|
|
752
667
|
}, class: {
|
|
753
668
|
...getClassMap(this.cssClass),
|
|
754
669
|
[mode]: true,
|
|
755
670
|
'overlay-hidden': true,
|
|
756
671
|
'alert-translucent': this.translucent,
|
|
757
|
-
}, onIonAlertWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }, h("ion-backdrop", { key: '
|
|
672
|
+
}, onIonAlertWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }, h("ion-backdrop", { key: '65c92a956d998ae9016396dd2a29c42ab7376d0e', tappable: this.backdropDismiss }), h("div", { key: 'f2288fa0b7ef9d0bf031c168fe78c48422cf91c8', tabindex: "0", "aria-hidden": "true" }), h("div", { key: 'dbb109435c378f77c6b0231e58756f8a0467732d', class: "alert-wrapper ion-overlay-wrapper", role: role, "aria-modal": "true", "aria-labelledby": ariaLabelledBy, "aria-describedby": message !== undefined ? msgId : null, tabindex: "0", ref: (el) => (this.wrapperEl = el), ...htmlAttributes }, h("div", { key: '075597f94719673cf1f894a8566e1036849afa75', class: "alert-head" }, header && (h("h2", { key: 'f96f4b1db8473c62040beed6e96108c733978d73', id: hdrId, class: "alert-title" }, header)), subHeader && !header && (h("h2", { key: 'dbd824ef19a07bddde4eb928f11de7c7cadf98b8', id: subHdrId, class: "alert-sub-title" }, subHeader)), subHeader && header && (h("h3", { key: '4774fa13700dd23aec7930492acae80de3bdf5d1', id: subHdrId, class: "alert-sub-title" }, subHeader))), this.renderAlertMessage(msgId), this.renderAlertInputs(), this.renderAlertButtons()), h("div", { key: '5c728b7457e231f64294bbec821bdb547c6437dd', tabindex: "0", "aria-hidden": "true" })));
|
|
758
673
|
}
|
|
674
|
+
get el() { return getElement(this); }
|
|
759
675
|
static get watchers() { return {
|
|
760
676
|
"isOpen": [{
|
|
761
677
|
"onIsOpenChange": 0
|