@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
|
@@ -6,36 +6,27 @@ import { inheritAttributes } from "../../utils/helpers";
|
|
|
6
6
|
import { createColorClasses } from "../../utils/theme";
|
|
7
7
|
import { getIonMode } from "../../global/ionic-global";
|
|
8
8
|
export class PickerColumnOption {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
* The text value of the option.
|
|
31
|
-
*/
|
|
32
|
-
value;
|
|
33
|
-
/**
|
|
34
|
-
* The color to use from your application's color palette.
|
|
35
|
-
* Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
|
|
36
|
-
* For more information on colors, see [theming](/docs/theming/basics).
|
|
37
|
-
*/
|
|
38
|
-
color;
|
|
9
|
+
constructor() {
|
|
10
|
+
/**
|
|
11
|
+
* We keep track of the parent picker column
|
|
12
|
+
* so we can update the value of it when
|
|
13
|
+
* clicking an enable option.
|
|
14
|
+
*/
|
|
15
|
+
this.pickerColumn = null;
|
|
16
|
+
/**
|
|
17
|
+
* The aria-label of the option.
|
|
18
|
+
*
|
|
19
|
+
* If the value changes, then it will trigger a
|
|
20
|
+
* re-render of the picker since it's a @State variable.
|
|
21
|
+
* Otherwise, the `aria-label` attribute cannot be updated
|
|
22
|
+
* after the component is loaded.
|
|
23
|
+
*/
|
|
24
|
+
this.ariaLabel = null;
|
|
25
|
+
/**
|
|
26
|
+
* If `true`, the user cannot interact with the picker column option.
|
|
27
|
+
*/
|
|
28
|
+
this.disabled = false;
|
|
29
|
+
}
|
|
39
30
|
/**
|
|
40
31
|
* The aria-label of the option has changed after the
|
|
41
32
|
* first render and needs to be updated within the component.
|
|
@@ -7,7 +7,7 @@ import { CoreDelegate, attachComponent, detachComponent } from "../../utils/fram
|
|
|
7
7
|
import { addEventListener, raf, hasLazyBuild } from "../../utils/helpers";
|
|
8
8
|
import { createLockController } from "../../utils/lock-controller";
|
|
9
9
|
import { printIonWarning } from "../../utils/logging/index";
|
|
10
|
-
import { BACKDROP, cleanupRootFocusTrapAccessibility, dismiss, eventMethod, FOCUS_TRAP_DISABLE_CLASS, prepareOverlay, present, setOverlayId, } from "../../utils/overlays";
|
|
10
|
+
import { BACKDROP, cleanupRootFocusTrapAccessibility, dismiss, eventMethod, FOCUS_TRAP_DISABLE_CLASS, prepareOverlay, present, restoreRootFocusTrapAccessibility, setOverlayId, } from "../../utils/overlays";
|
|
11
11
|
import { isPlatform } from "../../utils/platform";
|
|
12
12
|
import { getClassMap } from "../../utils/theme";
|
|
13
13
|
import { deepReady, waitForMount } from "../../utils/transition/index";
|
|
@@ -28,182 +28,182 @@ import { configureDismissInteraction, configureKeyboardInteraction, configureTri
|
|
|
28
28
|
* @part content - The wrapper element for the default slot.
|
|
29
29
|
*/
|
|
30
30
|
export class Popover {
|
|
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
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
31
|
+
constructor() {
|
|
32
|
+
this.parentPopover = null;
|
|
33
|
+
this.coreDelegate = CoreDelegate();
|
|
34
|
+
this.lockController = createLockController();
|
|
35
|
+
this.inline = false;
|
|
36
|
+
this.focusDescendantOnPresent = false;
|
|
37
|
+
this.presented = false;
|
|
38
|
+
/** @internal */
|
|
39
|
+
this.hasController = false;
|
|
40
|
+
/**
|
|
41
|
+
* If `true`, the keyboard will be automatically dismissed when the overlay is presented.
|
|
42
|
+
*/
|
|
43
|
+
this.keyboardClose = true;
|
|
44
|
+
/**
|
|
45
|
+
* If `true`, the popover will be dismissed when the backdrop is clicked.
|
|
46
|
+
*/
|
|
47
|
+
this.backdropDismiss = true;
|
|
48
|
+
/**
|
|
49
|
+
* If `true`, a backdrop will be displayed behind the popover.
|
|
50
|
+
* This property controls whether or not the backdrop
|
|
51
|
+
* darkens the screen when the popover is presented.
|
|
52
|
+
* It does not control whether or not the backdrop
|
|
53
|
+
* is active or present in the DOM.
|
|
54
|
+
*/
|
|
55
|
+
this.showBackdrop = true;
|
|
56
|
+
/**
|
|
57
|
+
* If `true`, the popover will be translucent.
|
|
58
|
+
* Only applies when the mode is `"ios"` and the device supports
|
|
59
|
+
* [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
|
|
60
|
+
*/
|
|
61
|
+
this.translucent = false;
|
|
62
|
+
/**
|
|
63
|
+
* If `true`, the popover will animate.
|
|
64
|
+
*/
|
|
65
|
+
this.animated = true;
|
|
66
|
+
/**
|
|
67
|
+
* Describes what kind of interaction with the trigger that
|
|
68
|
+
* should cause the popover to open. Does not apply when the `trigger`
|
|
69
|
+
* property is `undefined`.
|
|
70
|
+
* If `"click"`, the popover will be presented when the trigger is left clicked.
|
|
71
|
+
* If `"hover"`, the popover will be presented when a pointer hovers over the trigger.
|
|
72
|
+
* If `"context-menu"`, the popover will be presented when the trigger is right
|
|
73
|
+
* clicked on desktop and long pressed on mobile. This will also prevent your
|
|
74
|
+
* device's normal context menu from appearing.
|
|
75
|
+
*/
|
|
76
|
+
this.triggerAction = 'click';
|
|
77
|
+
/**
|
|
78
|
+
* Describes how to calculate the popover width.
|
|
79
|
+
* If `"cover"`, the popover width will match the width of the trigger.
|
|
80
|
+
* If `"auto"`, the popover width will be set to a static default value.
|
|
81
|
+
*/
|
|
82
|
+
this.size = 'auto';
|
|
83
|
+
/**
|
|
84
|
+
* If `true`, the popover will be automatically
|
|
85
|
+
* dismissed when the content has been clicked.
|
|
86
|
+
*/
|
|
87
|
+
this.dismissOnSelect = false;
|
|
88
|
+
/**
|
|
89
|
+
* Describes what to position the popover relative to.
|
|
90
|
+
* If `"trigger"`, the popover will be positioned relative
|
|
91
|
+
* to the trigger button. If passing in an event, this is
|
|
92
|
+
* determined via event.target.
|
|
93
|
+
* If `"event"`, the popover will be positioned relative
|
|
94
|
+
* to the x/y coordinates of the trigger action. If passing
|
|
95
|
+
* in an event, this is determined via event.clientX and event.clientY.
|
|
96
|
+
*/
|
|
97
|
+
this.reference = 'trigger';
|
|
98
|
+
/**
|
|
99
|
+
* Describes which side of the `reference` point to position
|
|
100
|
+
* the popover on. The `"start"` and `"end"` values are RTL-aware,
|
|
101
|
+
* and the `"left"` and `"right"` values are not.
|
|
102
|
+
*/
|
|
103
|
+
this.side = 'bottom';
|
|
104
|
+
/**
|
|
105
|
+
* If `true`, the popover will display an arrow that points at the
|
|
106
|
+
* `reference` when running in `ios` mode. Does not apply in `md` mode.
|
|
107
|
+
*/
|
|
108
|
+
this.arrow = true;
|
|
109
|
+
/**
|
|
110
|
+
* If `true`, the popover will open. If `false`, the popover will close.
|
|
111
|
+
* Use this if you need finer grained control over presentation, otherwise
|
|
112
|
+
* just use the popoverController or the `trigger` property.
|
|
113
|
+
* Note: `isOpen` will not automatically be set back to `false` when
|
|
114
|
+
* the popover dismisses. You will need to do that in your code.
|
|
115
|
+
*/
|
|
116
|
+
this.isOpen = false;
|
|
117
|
+
/**
|
|
118
|
+
* @internal
|
|
119
|
+
*
|
|
120
|
+
* If `true` the popover will not register its own keyboard event handlers.
|
|
121
|
+
* This allows the contents of the popover to handle their own keyboard interactions.
|
|
122
|
+
*
|
|
123
|
+
* If `false`, the popover will register its own keyboard event handlers for
|
|
124
|
+
* navigating `ion-list` items within a popover (up/down/home/end/etc.).
|
|
125
|
+
* This will also cancel browser keyboard event bindings to prevent scroll
|
|
126
|
+
* behavior in a popover using a list of items.
|
|
127
|
+
*/
|
|
128
|
+
this.keyboardEvents = false;
|
|
129
|
+
/**
|
|
130
|
+
* If `true`, focus will not be allowed to move outside of this overlay.
|
|
131
|
+
* If `false`, focus will be allowed to move outside of the overlay.
|
|
132
|
+
*
|
|
133
|
+
* In most scenarios this property should remain set to `true`. Setting
|
|
134
|
+
* this property to `false` can cause severe accessibility issues as users
|
|
135
|
+
* relying on assistive technologies may be able to move focus into
|
|
136
|
+
* a confusing state. We recommend only setting this to `false` when
|
|
137
|
+
* absolutely necessary.
|
|
138
|
+
*
|
|
139
|
+
* Developers may want to consider disabling focus trapping if this
|
|
140
|
+
* overlay presents a non-Ionic overlay from a 3rd party library.
|
|
141
|
+
* Developers would disable focus trapping on the Ionic overlay
|
|
142
|
+
* when presenting the 3rd party overlay and then re-enable
|
|
143
|
+
* focus trapping when dismissing the 3rd party overlay and moving
|
|
144
|
+
* focus back to the Ionic overlay.
|
|
145
|
+
*/
|
|
146
|
+
this.focusTrap = true;
|
|
147
|
+
/**
|
|
148
|
+
* If `true`, the component passed into `ion-popover` will
|
|
149
|
+
* automatically be mounted when the popover is created. The
|
|
150
|
+
* component will remain mounted even when the popover is dismissed.
|
|
151
|
+
* However, the component will be destroyed when the popover is
|
|
152
|
+
* destroyed. This property is not reactive and should only be
|
|
153
|
+
* used when initially creating a popover.
|
|
154
|
+
*
|
|
155
|
+
* Note: This feature only applies to inline popovers in JavaScript
|
|
156
|
+
* frameworks such as Angular, React, and Vue.
|
|
157
|
+
*/
|
|
158
|
+
this.keepContentsMounted = false;
|
|
159
|
+
this.onBackdropTap = () => {
|
|
160
|
+
this.dismiss(undefined, BACKDROP);
|
|
161
|
+
};
|
|
162
|
+
this.onLifecycle = (modalEvent) => {
|
|
163
|
+
const el = this.usersElement;
|
|
164
|
+
const name = LIFECYCLE_MAP[modalEvent.type];
|
|
165
|
+
if (el && name) {
|
|
166
|
+
const event = new CustomEvent(name, {
|
|
167
|
+
bubbles: false,
|
|
168
|
+
cancelable: false,
|
|
169
|
+
detail: modalEvent.detail,
|
|
170
|
+
});
|
|
171
|
+
el.dispatchEvent(event);
|
|
172
|
+
}
|
|
173
|
+
};
|
|
174
|
+
this.configureTriggerInteraction = () => {
|
|
175
|
+
const { trigger, triggerAction, el, destroyTriggerInteraction } = this;
|
|
176
|
+
if (destroyTriggerInteraction) {
|
|
177
|
+
destroyTriggerInteraction();
|
|
178
|
+
}
|
|
179
|
+
if (trigger === undefined) {
|
|
180
|
+
return;
|
|
181
|
+
}
|
|
182
|
+
const triggerEl = (this.triggerEl = trigger !== undefined ? document.getElementById(trigger) : null);
|
|
183
|
+
if (!triggerEl) {
|
|
184
|
+
printIonWarning(`[ion-popover] - A trigger element with the ID "${trigger}" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on ion-popover.`, this.el);
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
this.destroyTriggerInteraction = configureTriggerInteraction(triggerEl, triggerAction, el);
|
|
188
|
+
};
|
|
189
|
+
this.configureKeyboardInteraction = () => {
|
|
190
|
+
const { destroyKeyboardInteraction, el } = this;
|
|
191
|
+
if (destroyKeyboardInteraction) {
|
|
192
|
+
destroyKeyboardInteraction();
|
|
193
|
+
}
|
|
194
|
+
this.destroyKeyboardInteraction = configureKeyboardInteraction(el);
|
|
195
|
+
};
|
|
196
|
+
this.configureDismissInteraction = () => {
|
|
197
|
+
const { destroyDismissInteraction, parentPopover, triggerAction, triggerEl, el } = this;
|
|
198
|
+
if (!parentPopover || !triggerEl) {
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
if (destroyDismissInteraction) {
|
|
202
|
+
destroyDismissInteraction();
|
|
203
|
+
}
|
|
204
|
+
this.destroyDismissInteraction = configureDismissInteraction(triggerEl, triggerAction, el, parentPopover);
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
207
|
onTriggerChange() {
|
|
208
208
|
this.configureTriggerInteraction();
|
|
209
209
|
}
|
|
@@ -215,70 +215,17 @@ export class Popover {
|
|
|
215
215
|
this.dismiss();
|
|
216
216
|
}
|
|
217
217
|
}
|
|
218
|
-
/**
|
|
219
|
-
* If `true`, the component passed into `ion-popover` will
|
|
220
|
-
* automatically be mounted when the popover is created. The
|
|
221
|
-
* component will remain mounted even when the popover is dismissed.
|
|
222
|
-
* However, the component will be destroyed when the popover is
|
|
223
|
-
* destroyed. This property is not reactive and should only be
|
|
224
|
-
* used when initially creating a popover.
|
|
225
|
-
*
|
|
226
|
-
* Note: This feature only applies to inline popovers in JavaScript
|
|
227
|
-
* frameworks such as Angular, React, and Vue.
|
|
228
|
-
*/
|
|
229
|
-
keepContentsMounted = false;
|
|
230
|
-
/**
|
|
231
|
-
* Emitted after the popover has presented.
|
|
232
|
-
*/
|
|
233
|
-
didPresent;
|
|
234
|
-
/**
|
|
235
|
-
* Emitted before the popover has presented.
|
|
236
|
-
*/
|
|
237
|
-
willPresent;
|
|
238
|
-
/**
|
|
239
|
-
* Emitted before the popover has dismissed.
|
|
240
|
-
*/
|
|
241
|
-
willDismiss;
|
|
242
|
-
/**
|
|
243
|
-
* Emitted after the popover has dismissed.
|
|
244
|
-
*/
|
|
245
|
-
didDismiss;
|
|
246
|
-
/**
|
|
247
|
-
* Emitted after the popover has presented.
|
|
248
|
-
* Shorthand for ionPopoverWillDismiss.
|
|
249
|
-
*/
|
|
250
|
-
didPresentShorthand;
|
|
251
|
-
/**
|
|
252
|
-
* Emitted before the popover has presented.
|
|
253
|
-
* Shorthand for ionPopoverWillPresent.
|
|
254
|
-
*/
|
|
255
|
-
willPresentShorthand;
|
|
256
|
-
/**
|
|
257
|
-
* Emitted before the popover has dismissed.
|
|
258
|
-
* Shorthand for ionPopoverWillDismiss.
|
|
259
|
-
*/
|
|
260
|
-
willDismissShorthand;
|
|
261
|
-
/**
|
|
262
|
-
* Emitted after the popover has dismissed.
|
|
263
|
-
* Shorthand for ionPopoverDidDismiss.
|
|
264
|
-
*/
|
|
265
|
-
didDismissShorthand;
|
|
266
|
-
/**
|
|
267
|
-
* Emitted before the popover has presented, but after the component
|
|
268
|
-
* has been mounted in the DOM.
|
|
269
|
-
* This event exists for ion-popover to resolve an issue with the
|
|
270
|
-
* popover and the lazy build, that the transition is unable to get
|
|
271
|
-
* the correct dimensions of the popover with auto sizing.
|
|
272
|
-
* This is not required for other overlays, since the existing
|
|
273
|
-
* overlay transitions are not effected by auto sizing content.
|
|
274
|
-
*
|
|
275
|
-
* @internal
|
|
276
|
-
*/
|
|
277
|
-
ionMount;
|
|
278
218
|
connectedCallback() {
|
|
279
219
|
const { configureTriggerInteraction, el } = this;
|
|
280
220
|
prepareOverlay(el);
|
|
281
221
|
configureTriggerInteraction();
|
|
222
|
+
// Re-apply the root lock if moved without dismiss() being called
|
|
223
|
+
if (this.presented) {
|
|
224
|
+
restoreRootFocusTrapAccessibility(el);
|
|
225
|
+
// The disconnect tore down the header observer, and `present()` is its
|
|
226
|
+
// only other caller, so a move mid-layout would lose the recalculation.
|
|
227
|
+
this.recalculateContentOnHeaderReady();
|
|
228
|
+
}
|
|
282
229
|
}
|
|
283
230
|
disconnectedCallback() {
|
|
284
231
|
const { destroyTriggerInteraction } = this;
|
|
@@ -456,6 +403,9 @@ export class Popover {
|
|
|
456
403
|
if (!header || contentElements.length === 0) {
|
|
457
404
|
return;
|
|
458
405
|
}
|
|
406
|
+
// Both `present()` and a reconnect call this, so drop any existing
|
|
407
|
+
// observer. Below the guards, so a call that bails cannot leave none.
|
|
408
|
+
this.headerResizeObserver?.disconnect();
|
|
459
409
|
this.headerResizeObserver = new ResizeObserver(async () => {
|
|
460
410
|
if (header.offsetHeight > 0) {
|
|
461
411
|
this.headerResizeObserver?.disconnect();
|
|
@@ -523,59 +473,12 @@ export class Popover {
|
|
|
523
473
|
onWillDismiss() {
|
|
524
474
|
return eventMethod(this.el, 'ionPopoverWillDismiss');
|
|
525
475
|
}
|
|
526
|
-
onBackdropTap = () => {
|
|
527
|
-
this.dismiss(undefined, BACKDROP);
|
|
528
|
-
};
|
|
529
|
-
onLifecycle = (modalEvent) => {
|
|
530
|
-
const el = this.usersElement;
|
|
531
|
-
const name = LIFECYCLE_MAP[modalEvent.type];
|
|
532
|
-
if (el && name) {
|
|
533
|
-
const event = new CustomEvent(name, {
|
|
534
|
-
bubbles: false,
|
|
535
|
-
cancelable: false,
|
|
536
|
-
detail: modalEvent.detail,
|
|
537
|
-
});
|
|
538
|
-
el.dispatchEvent(event);
|
|
539
|
-
}
|
|
540
|
-
};
|
|
541
|
-
configureTriggerInteraction = () => {
|
|
542
|
-
const { trigger, triggerAction, el, destroyTriggerInteraction } = this;
|
|
543
|
-
if (destroyTriggerInteraction) {
|
|
544
|
-
destroyTriggerInteraction();
|
|
545
|
-
}
|
|
546
|
-
if (trigger === undefined) {
|
|
547
|
-
return;
|
|
548
|
-
}
|
|
549
|
-
const triggerEl = (this.triggerEl = trigger !== undefined ? document.getElementById(trigger) : null);
|
|
550
|
-
if (!triggerEl) {
|
|
551
|
-
printIonWarning(`[ion-popover] - A trigger element with the ID "${trigger}" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on ion-popover.`, this.el);
|
|
552
|
-
return;
|
|
553
|
-
}
|
|
554
|
-
this.destroyTriggerInteraction = configureTriggerInteraction(triggerEl, triggerAction, el);
|
|
555
|
-
};
|
|
556
|
-
configureKeyboardInteraction = () => {
|
|
557
|
-
const { destroyKeyboardInteraction, el } = this;
|
|
558
|
-
if (destroyKeyboardInteraction) {
|
|
559
|
-
destroyKeyboardInteraction();
|
|
560
|
-
}
|
|
561
|
-
this.destroyKeyboardInteraction = configureKeyboardInteraction(el);
|
|
562
|
-
};
|
|
563
|
-
configureDismissInteraction = () => {
|
|
564
|
-
const { destroyDismissInteraction, parentPopover, triggerAction, triggerEl, el } = this;
|
|
565
|
-
if (!parentPopover || !triggerEl) {
|
|
566
|
-
return;
|
|
567
|
-
}
|
|
568
|
-
if (destroyDismissInteraction) {
|
|
569
|
-
destroyDismissInteraction();
|
|
570
|
-
}
|
|
571
|
-
this.destroyDismissInteraction = configureDismissInteraction(triggerEl, triggerAction, el, parentPopover);
|
|
572
|
-
};
|
|
573
476
|
render() {
|
|
574
477
|
const mode = getIonMode(this);
|
|
575
478
|
const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
|
|
576
479
|
const desktop = isPlatform('desktop');
|
|
577
480
|
const enableArrow = arrow && !parentPopover;
|
|
578
|
-
return (h(Host, { key: '
|
|
481
|
+
return (h(Host, { key: '5a41565e6129c73112835aab18b7ae213de040f2', "aria-modal": "true", "no-router": true, tabindex: "-1", ...htmlAttributes, style: {
|
|
579
482
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
580
483
|
}, class: {
|
|
581
484
|
...getClassMap(this.cssClass),
|
|
@@ -586,7 +489,7 @@ export class Popover {
|
|
|
586
489
|
[`popover-side-${side}`]: true,
|
|
587
490
|
[FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false,
|
|
588
491
|
'popover-nested': !!parentPopover,
|
|
589
|
-
}, onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }, !parentPopover && h("ion-backdrop", { key: '
|
|
492
|
+
}, onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }, !parentPopover && h("ion-backdrop", { key: '59e724e4a6ce25eae78ccf1668effd988be7232a', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { key: '88d787ca20ac7cbacc4190bd771645dbe6083ad9', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { key: 'f766e6413cc4545f27a43d5931c033261e3daa2c', class: "popover-arrow", part: "arrow" }), h("div", { key: '675bddff0c071378858bb2d07bec91da68c2652a', class: "popover-content", part: "content" }, h("slot", { key: '1c446b867083016b24b1b3baccd19b9fc08e114a' })))));
|
|
590
493
|
}
|
|
591
494
|
static get is() { return "ion-popover"; }
|
|
592
495
|
static get encapsulation() { return "shadow"; }
|