voyager-ionic-core 8.5.1 → 8.5.3
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/checkbox.js +18 -6
- package/components/helpers.js +1 -11
- package/components/index9.js +1 -1
- package/components/ion-datetime.js +5 -5
- package/components/ion-range.js +21 -5
- package/components/ion-segment-button.js +20 -51
- package/components/ion-segment-content.js +1 -1
- package/components/overlays.js +3 -2
- package/components/picker.js +54 -77
- package/dist/cjs/{framework-delegate-11b0ba2f.js → framework-delegate-50a86d56.js} +1 -1
- package/dist/cjs/{helpers-d0dfbb50.js → helpers-3a248559.js} +0 -11
- package/dist/cjs/{index-fd6383b6.js → index-4b70187a.js} +1 -1
- package/dist/cjs/{index-9b945a2d.js → index-509ca0d3.js} +1 -1
- package/dist/cjs/{index-363fe6b2.js → index-e36bd277.js} +1 -1
- package/dist/cjs/{index-f68a486a.js → index-e630fd95.js} +3 -3
- package/dist/cjs/index.cjs.js +7 -7
- package/dist/cjs/{input-shims-2d27a5be.js → input-shims-22a9973f.js} +2 -2
- package/dist/cjs/{input.utils-2f642324.js → input.utils-e82b8ed0.js} +1 -1
- package/dist/cjs/ion-accordion_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-action-sheet.cjs.entry.js +3 -3
- package/dist/cjs/ion-alert.cjs.entry.js +3 -3
- package/dist/cjs/ion-app_8.cjs.entry.js +8 -8
- package/dist/cjs/ion-back-button.cjs.entry.js +1 -1
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-button_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-card_5.cjs.entry.js +1 -1
- package/dist/cjs/ion-checkbox.cjs.entry.js +19 -7
- package/dist/cjs/ion-datetime-button.cjs.entry.js +1 -1
- package/dist/cjs/ion-datetime_3.cjs.entry.js +8 -8
- package/dist/cjs/ion-fab_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-img.cjs.entry.js +1 -1
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-input.cjs.entry.js +3 -3
- package/dist/cjs/ion-item-option_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-item_8.cjs.entry.js +1 -1
- package/dist/cjs/ion-loading.cjs.entry.js +3 -3
- package/dist/cjs/ion-menu_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-modal.cjs.entry.js +5 -5
- package/dist/cjs/ion-nav_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +1 -1
- package/dist/cjs/ion-picker-column.cjs.entry.js +1 -1
- package/dist/cjs/ion-picker.cjs.entry.js +55 -78
- package/dist/cjs/ion-popover.cjs.entry.js +4 -4
- package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/ion-radio_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-range.cjs.entry.js +23 -7
- package/dist/cjs/ion-refresher_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-reorder_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-route_4.cjs.entry.js +1 -1
- package/dist/cjs/ion-searchbar.cjs.entry.js +1 -1
- package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
- package/dist/cjs/ion-segment_2.cjs.entry.js +20 -51
- package/dist/cjs/ion-select-modal.cjs.entry.js +3 -3
- package/dist/cjs/ion-select_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-tab_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-textarea.cjs.entry.js +3 -3
- package/dist/cjs/ion-toast.cjs.entry.js +3 -3
- package/dist/cjs/ion-toggle.cjs.entry.js +1 -1
- package/dist/cjs/{ios.transition-f970164c.js → ios.transition-ae7afca9.js} +2 -2
- package/dist/cjs/{md.transition-aa8820dd.js → md.transition-26003e25.js} +2 -2
- package/dist/cjs/{notch-controller-58d2e557.js → notch-controller-ae03a497.js} +1 -1
- package/dist/cjs/{overlays-737576a2.js → overlays-32e1b66b.js} +5 -4
- package/dist/cjs/{status-tap-08d1ac81.js → status-tap-03023755.js} +2 -2
- package/dist/cjs/{swipe-back-5c0003bd.js → swipe-back-652bdd0b.js} +1 -1
- package/dist/collection/components/checkbox/checkbox.ios.css +5 -16
- package/dist/collection/components/checkbox/checkbox.js +16 -4
- package/dist/collection/components/checkbox/checkbox.md.css +5 -16
- package/dist/collection/components/datetime/datetime.js +5 -5
- package/dist/collection/components/picker/picker.js +54 -77
- package/dist/collection/components/range/range.js +21 -5
- package/dist/collection/components/segment-button/segment-button.js +20 -51
- package/dist/collection/components/segment-content/segment-content.css +9 -0
- package/dist/collection/utils/helpers.js +0 -10
- package/dist/collection/utils/overlays.js +3 -2
- package/dist/docs.json +1 -1
- package/dist/esm/{framework-delegate-c7d92b77.js → framework-delegate-2eea1763.js} +1 -1
- package/dist/esm/{helpers-e48b0397.js → helpers-78efeec3.js} +1 -11
- package/dist/esm/{index-8222b29f.js → index-40894f4b.js} +1 -1
- package/dist/esm/{index-933ca126.js → index-e919e353.js} +1 -1
- package/dist/esm/{index-a313df53.js → index-ecb55b8d.js} +3 -3
- package/dist/esm/{index-c63afbe6.js → index-f9f5d018.js} +1 -1
- package/dist/esm/index.js +7 -7
- package/dist/esm/{input-shims-3070628a.js → input-shims-7dc1f6dc.js} +2 -2
- package/dist/esm/{input.utils-926c04a8.js → input.utils-28bf4ef0.js} +1 -1
- package/dist/esm/ion-accordion_2.entry.js +1 -1
- package/dist/esm/ion-action-sheet.entry.js +3 -3
- package/dist/esm/ion-alert.entry.js +3 -3
- package/dist/esm/ion-app_8.entry.js +8 -8
- package/dist/esm/ion-back-button.entry.js +1 -1
- package/dist/esm/ion-breadcrumb_2.entry.js +1 -1
- package/dist/esm/ion-button_2.entry.js +1 -1
- package/dist/esm/ion-card_5.entry.js +1 -1
- package/dist/esm/ion-checkbox.entry.js +19 -7
- package/dist/esm/ion-datetime-button.entry.js +1 -1
- package/dist/esm/ion-datetime_3.entry.js +8 -8
- package/dist/esm/ion-fab_3.entry.js +1 -1
- package/dist/esm/ion-img.entry.js +1 -1
- package/dist/esm/ion-infinite-scroll_2.entry.js +2 -2
- package/dist/esm/ion-input.entry.js +3 -3
- package/dist/esm/ion-item-option_3.entry.js +2 -2
- package/dist/esm/ion-item_8.entry.js +1 -1
- package/dist/esm/ion-loading.entry.js +3 -3
- package/dist/esm/ion-menu_3.entry.js +4 -4
- package/dist/esm/ion-modal.entry.js +5 -5
- package/dist/esm/ion-nav_2.entry.js +4 -4
- package/dist/esm/ion-picker-column-option.entry.js +1 -1
- package/dist/esm/ion-picker-column.entry.js +1 -1
- package/dist/esm/ion-picker.entry.js +55 -78
- package/dist/esm/ion-popover.entry.js +4 -4
- package/dist/esm/ion-progress-bar.entry.js +1 -1
- package/dist/esm/ion-radio_2.entry.js +1 -1
- package/dist/esm/ion-range.entry.js +23 -7
- package/dist/esm/ion-refresher_2.entry.js +2 -2
- package/dist/esm/ion-reorder_2.entry.js +2 -2
- package/dist/esm/ion-route_4.entry.js +1 -1
- package/dist/esm/ion-searchbar.entry.js +1 -1
- package/dist/esm/ion-segment-content.entry.js +1 -1
- package/dist/esm/ion-segment_2.entry.js +20 -51
- package/dist/esm/ion-select-modal.entry.js +3 -3
- package/dist/esm/ion-select_3.entry.js +4 -4
- package/dist/esm/ion-tab-bar_2.entry.js +1 -1
- package/dist/esm/ion-tab_2.entry.js +2 -2
- package/dist/esm/ion-textarea.entry.js +3 -3
- package/dist/esm/ion-toast.entry.js +3 -3
- package/dist/esm/ion-toggle.entry.js +1 -1
- package/dist/esm/{ios.transition-5fe4d6c8.js → ios.transition-7fe5dbea.js} +2 -2
- package/dist/esm/{md.transition-3d0d3730.js → md.transition-8dc58b46.js} +2 -2
- package/dist/esm/{notch-controller-381a5334.js → notch-controller-00d92e89.js} +1 -1
- package/dist/esm/{overlays-7579a420.js → overlays-41a5d51b.js} +5 -4
- package/dist/esm/{status-tap-6367b913.js → status-tap-f6d08e9e.js} +2 -2
- package/dist/esm/{swipe-back-326faa1c.js → swipe-back-5c7708b8.js} +1 -1
- package/dist/esm-es5/{framework-delegate-c7d92b77.js → framework-delegate-2eea1763.js} +1 -1
- package/dist/esm-es5/helpers-78efeec3.js +4 -0
- package/dist/esm-es5/{index-8222b29f.js → index-40894f4b.js} +1 -1
- package/dist/esm-es5/{index-933ca126.js → index-e919e353.js} +1 -1
- package/dist/esm-es5/index-ecb55b8d.js +4 -0
- package/dist/esm-es5/{index-c63afbe6.js → index-f9f5d018.js} +1 -1
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/{input-shims-3070628a.js → input-shims-7dc1f6dc.js} +1 -1
- package/dist/esm-es5/{input.utils-926c04a8.js → input.utils-28bf4ef0.js} +1 -1
- package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
- package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
- package/dist/esm-es5/ion-alert.entry.js +1 -1
- package/dist/esm-es5/ion-app_8.entry.js +1 -1
- package/dist/esm-es5/ion-back-button.entry.js +1 -1
- package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
- package/dist/esm-es5/ion-button_2.entry.js +1 -1
- package/dist/esm-es5/ion-card_5.entry.js +1 -1
- package/dist/esm-es5/ion-checkbox.entry.js +1 -1
- package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
- package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
- package/dist/esm-es5/ion-fab_3.entry.js +1 -1
- package/dist/esm-es5/ion-img.entry.js +1 -1
- package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
- package/dist/esm-es5/ion-input.entry.js +1 -1
- package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
- package/dist/esm-es5/ion-item_8.entry.js +1 -1
- package/dist/esm-es5/ion-loading.entry.js +1 -1
- package/dist/esm-es5/ion-menu_3.entry.js +1 -1
- package/dist/esm-es5/ion-modal.entry.js +1 -1
- package/dist/esm-es5/ion-nav_2.entry.js +1 -1
- package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
- package/dist/esm-es5/ion-picker-column.entry.js +1 -1
- package/dist/esm-es5/ion-picker.entry.js +1 -1
- package/dist/esm-es5/ion-popover.entry.js +1 -1
- package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
- package/dist/esm-es5/ion-radio_2.entry.js +1 -1
- package/dist/esm-es5/ion-range.entry.js +1 -1
- package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
- package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
- package/dist/esm-es5/ion-route_4.entry.js +1 -1
- package/dist/esm-es5/ion-searchbar.entry.js +1 -1
- package/dist/esm-es5/ion-segment-content.entry.js +1 -1
- package/dist/esm-es5/ion-segment_2.entry.js +1 -1
- package/dist/esm-es5/ion-select-modal.entry.js +1 -1
- package/dist/esm-es5/ion-select_3.entry.js +1 -1
- package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
- package/dist/esm-es5/ion-tab_2.entry.js +1 -1
- package/dist/esm-es5/ion-textarea.entry.js +1 -1
- package/dist/esm-es5/ion-toast.entry.js +1 -1
- package/dist/esm-es5/ion-toggle.entry.js +1 -1
- package/dist/esm-es5/{ios.transition-5fe4d6c8.js → ios.transition-7fe5dbea.js} +1 -1
- package/dist/esm-es5/md.transition-8dc58b46.js +4 -0
- package/dist/esm-es5/{notch-controller-381a5334.js → notch-controller-00d92e89.js} +1 -1
- package/dist/esm-es5/{overlays-7579a420.js → overlays-41a5d51b.js} +1 -1
- package/dist/esm-es5/{status-tap-6367b913.js → status-tap-f6d08e9e.js} +1 -1
- package/dist/esm-es5/swipe-back-5c7708b8.js +4 -0
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-b0e53bc7.entry.js → p-0186a592.entry.js} +1 -1
- package/dist/ionic/p-027a48f1.entry.js +4 -0
- package/dist/ionic/{p-ceaea4ce.js → p-058b7f35.js} +1 -1
- package/dist/ionic/{p-c25c0ba4.entry.js → p-05b65d7a.entry.js} +1 -1
- package/dist/ionic/{p-d7032956.system.js → p-09d185ff.system.js} +1 -1
- package/dist/ionic/{p-bbc6db8c.entry.js → p-0a456b7f.entry.js} +1 -1
- package/dist/ionic/{p-472c7e08.system.entry.js → p-0d1be7c9.system.entry.js} +1 -1
- package/dist/ionic/{p-e0c43e11.system.entry.js → p-14114a59.system.entry.js} +1 -1
- package/dist/ionic/{p-3e86b4fa.system.js → p-15bb1dde.system.js} +1 -1
- package/dist/ionic/{p-a9f2c0a7.entry.js → p-180b4f9a.entry.js} +1 -1
- package/dist/ionic/{p-42f6e75c.entry.js → p-1b0b2210.entry.js} +1 -1
- package/dist/ionic/{p-8fc426e2.entry.js → p-1c8b3ac9.entry.js} +1 -1
- package/dist/ionic/{p-0c9b8240.system.entry.js → p-1de5dfcd.system.entry.js} +1 -1
- package/dist/ionic/p-2567237c.entry.js +4 -0
- package/dist/ionic/{p-4493c1ac.entry.js → p-29da3dcd.entry.js} +1 -1
- package/dist/ionic/p-2a2c6bf4.system.entry.js +4 -0
- package/dist/ionic/{p-c5b5f44a.entry.js → p-3281aab3.entry.js} +1 -1
- package/dist/ionic/{p-7f39653f.entry.js → p-33518a04.entry.js} +1 -1
- package/dist/ionic/p-33cf8185.system.js +4 -0
- package/dist/ionic/{p-1f837356.entry.js → p-383a6058.entry.js} +1 -1
- package/dist/ionic/{p-44e168f3.system.js → p-3855fef7.system.js} +2 -2
- package/dist/ionic/{p-b2296998.system.entry.js → p-38eaf9cf.system.entry.js} +1 -1
- package/dist/ionic/{p-3bd5fedc.system.js → p-3ba2a2cd.system.js} +1 -1
- package/dist/ionic/{p-7ff4f502.entry.js → p-41e70fa2.entry.js} +1 -1
- package/dist/ionic/{p-d37fdc68.system.entry.js → p-44fde7d5.system.entry.js} +1 -1
- package/dist/ionic/{p-4c44d04c.js → p-44ff75ea.js} +1 -1
- package/dist/ionic/{p-297d6806.system.js → p-455cd7cc.system.js} +1 -1
- package/dist/ionic/{p-c8331397.system.entry.js → p-4662a25c.system.entry.js} +1 -1
- package/dist/ionic/{p-2fa5a4b1.entry.js → p-48ded460.entry.js} +1 -1
- package/dist/ionic/{p-9df36075.system.entry.js → p-49d53551.system.entry.js} +1 -1
- package/dist/ionic/p-4b07c60a.system.js +4 -0
- package/dist/ionic/{p-1a9613bf.system.entry.js → p-4c7e6fec.system.entry.js} +1 -1
- package/dist/ionic/{p-1164ff6b.system.entry.js → p-4ea4c73a.system.entry.js} +1 -1
- package/dist/ionic/{p-2ab4a324.system.entry.js → p-4eeca839.system.entry.js} +1 -1
- package/dist/ionic/{p-5f4ff20a.entry.js → p-50e0ce13.entry.js} +1 -1
- package/dist/ionic/{p-def7a8bd.system.entry.js → p-51479be0.system.entry.js} +1 -1
- package/dist/ionic/{p-67163d4a.entry.js → p-552d9d62.entry.js} +1 -1
- package/dist/ionic/{p-4470f87b.system.entry.js → p-5578033e.system.entry.js} +1 -1
- package/dist/ionic/p-5fb1321f.entry.js +4 -0
- package/dist/ionic/p-61373098.js +4 -0
- package/dist/ionic/{p-023e8017.system.entry.js → p-6155027f.system.entry.js} +1 -1
- package/dist/ionic/{p-e00b72ce.js → p-624ecf03.js} +1 -1
- package/dist/ionic/{p-060e4551.js → p-64d8ac48.js} +1 -1
- package/dist/ionic/{p-b85d199c.entry.js → p-657ada6a.entry.js} +1 -1
- package/dist/ionic/{p-491de063.system.entry.js → p-65943bec.system.entry.js} +1 -1
- package/dist/ionic/{p-54893ae3.entry.js → p-65e732b9.entry.js} +1 -1
- package/dist/ionic/{p-a587b2ae.system.js → p-6c044a1d.system.js} +1 -1
- package/dist/ionic/{p-e0c0218f.system.entry.js → p-7058a5e4.system.entry.js} +1 -1
- package/dist/ionic/p-707408c5.system.entry.js +4 -0
- package/dist/ionic/{p-a63b345e.system.entry.js → p-70abb1f2.system.entry.js} +1 -1
- package/dist/ionic/{p-e0a05506.js → p-756e4559.js} +1 -1
- package/dist/ionic/p-772d1657.system.js +4 -0
- package/dist/ionic/{p-606887b7.system.entry.js → p-7b886108.system.entry.js} +1 -1
- package/dist/ionic/p-7c9daa6f.entry.js +4 -0
- package/dist/ionic/{p-0be8a0b5.entry.js → p-7f49a9c4.entry.js} +1 -1
- package/dist/ionic/{p-4888cb66.system.entry.js → p-8048804d.system.entry.js} +1 -1
- package/dist/ionic/{p-b9eb1465.system.entry.js → p-843ac05d.system.entry.js} +1 -1
- package/dist/ionic/{p-13886789.entry.js → p-87b0d2c9.entry.js} +1 -1
- package/dist/ionic/{p-ff4a1ba0.system.entry.js → p-8b22be32.system.entry.js} +1 -1
- package/dist/ionic/{p-f02e9382.system.entry.js → p-8cf6f383.system.entry.js} +1 -1
- package/dist/ionic/{p-1d98a7f1.entry.js → p-8d98e2bb.entry.js} +1 -1
- package/dist/ionic/{p-2b59470f.system.entry.js → p-9263275e.system.entry.js} +1 -1
- package/dist/ionic/p-96eec056.entry.js +4 -0
- package/dist/ionic/{p-042d5353.system.js → p-978bdf4c.system.js} +1 -1
- package/dist/ionic/p-9870728f.js +4 -0
- package/dist/ionic/{p-b055d618.entry.js → p-99803283.entry.js} +1 -1
- package/dist/ionic/{p-9a2ff5ea.system.js → p-9e45532a.system.js} +1 -1
- package/dist/ionic/{p-3be7cdeb.system.entry.js → p-a26d7667.system.entry.js} +1 -1
- package/dist/ionic/{p-24ae7b33.system.js → p-a3c931ad.system.js} +1 -1
- package/dist/ionic/{p-e5c27d9f.system.entry.js → p-a75a9e5a.system.entry.js} +1 -1
- package/dist/ionic/{p-ace2d2be.entry.js → p-a7830ff8.entry.js} +1 -1
- package/dist/ionic/{p-888d383b.system.entry.js → p-a9198501.system.entry.js} +1 -1
- package/dist/ionic/{p-524ad57e.system.entry.js → p-ac09b6e9.system.entry.js} +1 -1
- package/dist/ionic/{p-ada878ce.entry.js → p-b1673667.entry.js} +1 -1
- package/dist/ionic/{p-c6a20407.system.entry.js → p-b1f9fbe8.system.entry.js} +1 -1
- package/dist/ionic/{p-838cc359.entry.js → p-b87a9f1d.entry.js} +1 -1
- package/dist/ionic/{p-e5708e5d.system.entry.js → p-b8a461f5.system.entry.js} +1 -1
- package/dist/ionic/{p-f554845e.js → p-b9fa7882.js} +1 -1
- package/dist/ionic/p-bf64af90.system.js +1 -1
- package/dist/ionic/{p-daf1e8ec.system.entry.js → p-c27c57ea.system.entry.js} +1 -1
- package/dist/ionic/{p-e7309bfa.js → p-c3f9d9fe.js} +1 -1
- package/dist/ionic/{p-49cb79a1.system.entry.js → p-c53c414d.system.entry.js} +1 -1
- package/dist/ionic/{p-b9f2e353.entry.js → p-ccb740ea.entry.js} +1 -1
- package/dist/ionic/{p-37a438ad.system.entry.js → p-cec54707.system.entry.js} +1 -1
- package/dist/ionic/{p-5f8cd560.entry.js → p-cf14f70d.entry.js} +1 -1
- package/dist/ionic/{p-efa0f3f5.entry.js → p-cfc08422.entry.js} +1 -1
- package/dist/ionic/{p-eec4b772.entry.js → p-cff4f96c.entry.js} +1 -1
- package/dist/ionic/{p-a6df5168.system.entry.js → p-d046659b.system.entry.js} +1 -1
- package/dist/ionic/p-d40f2b7a.js +4 -0
- package/dist/ionic/{p-6bb846d3.entry.js → p-d455de62.entry.js} +1 -1
- package/dist/ionic/{p-3479f51b.system.js → p-d70a9e6d.system.js} +1 -1
- package/dist/ionic/{p-4d0190ad.system.entry.js → p-d882f1e2.system.entry.js} +2 -2
- package/dist/ionic/{p-d8c9d5ac.system.entry.js → p-db3b409e.system.entry.js} +1 -1
- package/dist/ionic/{p-c8bf9ba7.entry.js → p-e11ff516.entry.js} +1 -1
- package/dist/ionic/{p-81474833.system.entry.js → p-e29c5aab.system.entry.js} +1 -1
- package/dist/ionic/{p-3af7b907.entry.js → p-e2ce5f8b.entry.js} +1 -1
- package/dist/ionic/p-e3012c2d.js +4 -0
- package/dist/ionic/p-e3284879.system.entry.js +4 -0
- package/dist/ionic/{p-6e24cf82.entry.js → p-e3e4eed7.entry.js} +1 -1
- package/dist/ionic/{p-50f38461.entry.js → p-e4d2c281.entry.js} +1 -1
- package/dist/ionic/p-e8245753.entry.js +4 -0
- package/dist/ionic/p-ece78e7b.js +4 -0
- package/dist/ionic/{p-51c363e7.system.js → p-ee86cfff.system.js} +1 -1
- package/dist/ionic/{p-6797c66e.system.js → p-f23124c4.system.js} +1 -1
- package/dist/ionic/{p-8deac7df.system.entry.js → p-f387b3c6.system.entry.js} +1 -1
- package/dist/ionic/p-f53ee2e7.js +4 -0
- package/dist/ionic/{p-f94b2f2f.system.entry.js → p-f5a04e5e.system.entry.js} +1 -1
- package/dist/ionic/p-f70fc14a.entry.js +4 -0
- package/dist/ionic/{p-b6174297.entry.js → p-f834322a.entry.js} +1 -1
- package/dist/ionic/{p-96450929.system.entry.js → p-f84f4d8e.system.entry.js} +1 -1
- package/dist/ionic/{p-0749768d.entry.js → p-fa70eaab.entry.js} +1 -1
- package/dist/ionic/{p-4c94580e.js → p-ffa3ba3c.js} +1 -1
- package/dist/types/components/checkbox/checkbox.d.ts +2 -0
- package/dist/types/components/picker/picker.d.ts +8 -0
- package/dist/types/components/range/range.d.ts +9 -1
- package/dist/types/components/segment-button/segment-button.d.ts +1 -2
- package/dist/types/utils/helpers.d.ts +0 -1
- package/hydrate/index.js +121 -156
- package/hydrate/index.mjs +121 -156
- package/package.json +2 -2
- package/dist/esm-es5/helpers-e48b0397.js +0 -4
- package/dist/esm-es5/index-a313df53.js +0 -4
- package/dist/esm-es5/md.transition-3d0d3730.js +0 -4
- package/dist/esm-es5/swipe-back-326faa1c.js +0 -4
- package/dist/ionic/p-094c82d7.entry.js +0 -4
- package/dist/ionic/p-143ff664.system.entry.js +0 -4
- package/dist/ionic/p-18f9b6d5.entry.js +0 -4
- package/dist/ionic/p-1d2844a5.system.entry.js +0 -4
- package/dist/ionic/p-2027221d.js +0 -4
- package/dist/ionic/p-294271c7.system.js +0 -4
- package/dist/ionic/p-2ee9a2c6.entry.js +0 -4
- package/dist/ionic/p-54e9620f.js +0 -4
- package/dist/ionic/p-58c482af.entry.js +0 -4
- package/dist/ionic/p-5eb6f582.system.js +0 -4
- package/dist/ionic/p-72e6a9c6.entry.js +0 -4
- package/dist/ionic/p-77991411.system.js +0 -4
- package/dist/ionic/p-85f6070f.entry.js +0 -4
- package/dist/ionic/p-9a5420dd.js +0 -4
- package/dist/ionic/p-9e51f822.js +0 -4
- package/dist/ionic/p-b9ea58ef.js +0 -4
- package/dist/ionic/p-c8402249.js +0 -4
- package/dist/ionic/p-ed768b77.entry.js +0 -4
- package/dist/ionic/p-eeee3990.system.entry.js +0 -4
package/components/checkbox.js
CHANGED
|
@@ -6,10 +6,10 @@ import { i as inheritAriaAttributes, e as renderHiddenInput } from './helpers.js
|
|
|
6
6
|
import { c as createColorClasses, h as hostContext } from './theme.js';
|
|
7
7
|
import { b as getIonMode } from './ionic-global.js';
|
|
8
8
|
|
|
9
|
-
const checkboxIosCss = ":host{--checkbox-background-checked:var(--ion-color-primary, #0054e9);--border-color-checked:var(--ion-color-primary, #0054e9);--checkmark-color:var(--ion-color-primary-contrast, #fff);--transition:none;display:inline-block;position:relative;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-color){--checkbox-background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}.checkbox-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper,:host(.in-item:not(.checkbox-label-placement-stacked):not([slot])) .native-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.checkbox-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.checkbox-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}input{
|
|
9
|
+
const checkboxIosCss = ":host{--checkbox-background-checked:var(--ion-color-primary, #0054e9);--border-color-checked:var(--ion-color-primary, #0054e9);--checkmark-color:var(--ion-color-primary-contrast, #fff);--transition:none;display:inline-block;position:relative;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-color){--checkbox-background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}.checkbox-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper,:host(.in-item:not(.checkbox-label-placement-stacked):not([slot])) .native-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.checkbox-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.checkbox-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}input{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.checkbox-icon{border-radius:var(--border-radius);position:relative;width:var(--size);height:var(--size);-webkit-transition:var(--transition);transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--checkbox-background);-webkit-box-sizing:border-box;box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}.checkbox-bottom{padding-top:4px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;font-size:0.75rem;white-space:normal}:host(.checkbox-label-placement-stacked) .checkbox-bottom{font-size:1rem}.checkbox-bottom .error-text{display:none;color:var(--ion-color-danger, #c5000f)}.checkbox-bottom .helper-text{display:block;color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d))}:host(.ion-touched.ion-invalid) .checkbox-bottom .error-text{display:block}:host(.ion-touched.ion-invalid) .checkbox-bottom .helper-text{display:none}:host(.checkbox-label-placement-start) .checkbox-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.checkbox-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-end) .checkbox-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse;-ms-flex-pack:start;justify-content:start}:host(.checkbox-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.checkbox-label-placement-stacked) .checkbox-wrapper{-ms-flex-direction:column;flex-direction:column;text-align:center}:host(.checkbox-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host(.checkbox-justify-space-between) .checkbox-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.checkbox-justify-start) .checkbox-wrapper{-ms-flex-pack:start;justify-content:start}:host(.checkbox-justify-end) .checkbox-wrapper{-ms-flex-pack:end;justify-content:end}:host(.checkbox-alignment-start) .checkbox-wrapper{-ms-flex-align:start;align-items:start}:host(.checkbox-alignment-center) .checkbox-wrapper{-ms-flex-align:center;align-items:center}:host(.checkbox-justify-space-between),:host(.checkbox-justify-start),:host(.checkbox-justify-end),:host(.checkbox-alignment-start),:host(.checkbox-alignment-center){display:block}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--checkbox-background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:50%;--border-width:0.125rem;--border-style:solid;--border-color:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.23);--checkbox-background:var(--ion-item-background, var(--ion-background-color, #fff));--size:min(1.375rem, 55.836px);--checkmark-width:1.5px}:host(.checkbox-disabled){opacity:0.3}";
|
|
10
10
|
const IonCheckboxIosStyle0 = checkboxIosCss;
|
|
11
11
|
|
|
12
|
-
const checkboxMdCss = ":host{--checkbox-background-checked:var(--ion-color-primary, #0054e9);--border-color-checked:var(--ion-color-primary, #0054e9);--checkmark-color:var(--ion-color-primary-contrast, #fff);--transition:none;display:inline-block;position:relative;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-color){--checkbox-background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}.checkbox-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper,:host(.in-item:not(.checkbox-label-placement-stacked):not([slot])) .native-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.checkbox-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.checkbox-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}input{
|
|
12
|
+
const checkboxMdCss = ":host{--checkbox-background-checked:var(--ion-color-primary, #0054e9);--border-color-checked:var(--ion-color-primary, #0054e9);--checkmark-color:var(--ion-color-primary-contrast, #fff);--transition:none;display:inline-block;position:relative;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-color){--checkbox-background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}.checkbox-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper,:host(.in-item:not(.checkbox-label-placement-stacked):not([slot])) .native-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.checkbox-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.checkbox-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}input{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.checkbox-icon{border-radius:var(--border-radius);position:relative;width:var(--size);height:var(--size);-webkit-transition:var(--transition);transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--checkbox-background);-webkit-box-sizing:border-box;box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}.checkbox-bottom{padding-top:4px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;font-size:0.75rem;white-space:normal}:host(.checkbox-label-placement-stacked) .checkbox-bottom{font-size:1rem}.checkbox-bottom .error-text{display:none;color:var(--ion-color-danger, #c5000f)}.checkbox-bottom .helper-text{display:block;color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d))}:host(.ion-touched.ion-invalid) .checkbox-bottom .error-text{display:block}:host(.ion-touched.ion-invalid) .checkbox-bottom .helper-text{display:none}:host(.checkbox-label-placement-start) .checkbox-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.checkbox-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-end) .checkbox-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse;-ms-flex-pack:start;justify-content:start}:host(.checkbox-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.checkbox-label-placement-stacked) .checkbox-wrapper{-ms-flex-direction:column;flex-direction:column;text-align:center}:host(.checkbox-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host(.checkbox-justify-space-between) .checkbox-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.checkbox-justify-start) .checkbox-wrapper{-ms-flex-pack:start;justify-content:start}:host(.checkbox-justify-end) .checkbox-wrapper{-ms-flex-pack:end;justify-content:end}:host(.checkbox-alignment-start) .checkbox-wrapper{-ms-flex-align:start;align-items:start}:host(.checkbox-alignment-center) .checkbox-wrapper{-ms-flex-align:center;align-items:center}:host(.checkbox-justify-space-between),:host(.checkbox-justify-start),:host(.checkbox-justify-end),:host(.checkbox-alignment-start),:host(.checkbox-alignment-center){display:block}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--checkbox-background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:calc(var(--size) * .125);--border-width:2px;--border-style:solid;--border-color:rgb(var(--ion-text-color-rgb, 0, 0, 0), 0.6);--checkmark-width:3;--checkbox-background:var(--ion-item-background, var(--ion-background-color, #fff));--transition:background 180ms cubic-bezier(0.4, 0, 0.2, 1);--size:18px}.checkbox-icon path{stroke-dasharray:30;stroke-dashoffset:30}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{stroke-dashoffset:0;-webkit-transition:stroke-dashoffset 90ms linear 90ms;transition:stroke-dashoffset 90ms linear 90ms}:host(.checkbox-disabled) .label-text-wrapper{opacity:0.38}:host(.checkbox-disabled) .native-wrapper{opacity:0.63}";
|
|
13
13
|
const IonCheckboxMdStyle0 = checkboxMdCss;
|
|
14
14
|
|
|
15
15
|
const Checkbox = /*@__PURE__*/ proxyCustomElement(class Checkbox extends HTMLElement {
|
|
@@ -21,6 +21,7 @@ const Checkbox = /*@__PURE__*/ proxyCustomElement(class Checkbox extends HTMLEle
|
|
|
21
21
|
this.ionFocus = createEvent(this, "ionFocus", 7);
|
|
22
22
|
this.ionBlur = createEvent(this, "ionBlur", 7);
|
|
23
23
|
this.inputId = `ion-cb-${checkboxIds++}`;
|
|
24
|
+
this.inputLabelId = `${this.inputId}-lbl`;
|
|
24
25
|
this.helperTextId = `${this.inputId}-helper-text`;
|
|
25
26
|
this.errorTextId = `${this.inputId}-error-text`;
|
|
26
27
|
this.inheritedAttributes = {};
|
|
@@ -49,6 +50,14 @@ const Checkbox = /*@__PURE__*/ proxyCustomElement(class Checkbox extends HTMLEle
|
|
|
49
50
|
this.onBlur = () => {
|
|
50
51
|
this.ionBlur.emit();
|
|
51
52
|
};
|
|
53
|
+
this.onKeyDown = (ev) => {
|
|
54
|
+
if (ev.key === ' ') {
|
|
55
|
+
ev.preventDefault();
|
|
56
|
+
if (!this.disabled) {
|
|
57
|
+
this.toggleChecked(ev);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
};
|
|
52
61
|
this.onClick = (ev) => {
|
|
53
62
|
if (this.disabled) {
|
|
54
63
|
return;
|
|
@@ -107,8 +116,11 @@ const Checkbox = /*@__PURE__*/ proxyCustomElement(class Checkbox extends HTMLEle
|
|
|
107
116
|
const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, required, } = this;
|
|
108
117
|
const mode = getIonMode(this);
|
|
109
118
|
const path = getSVGPath(mode, indeterminate);
|
|
119
|
+
const hasLabelContent = el.textContent !== '';
|
|
110
120
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
111
|
-
|
|
121
|
+
// The host element must have a checkbox role to ensure proper VoiceOver
|
|
122
|
+
// support in Safari for accessibility.
|
|
123
|
+
return (h(Host, { key: '90bb17a4fae17088524555968a002327400807cf', role: "checkbox", "aria-checked": indeterminate ? 'mixed' : `${checked}`, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, "aria-labelledby": hasLabelContent ? this.inputLabelId : null, "aria-label": inheritedAttributes['aria-label'] || null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? undefined : 0, onKeyDown: this.onKeyDown, class: createColorClasses(color, {
|
|
112
124
|
[mode]: true,
|
|
113
125
|
'in-item': hostContext('ion-item', el),
|
|
114
126
|
'checkbox-checked': checked,
|
|
@@ -118,10 +130,10 @@ const Checkbox = /*@__PURE__*/ proxyCustomElement(class Checkbox extends HTMLEle
|
|
|
118
130
|
[`checkbox-justify-${justify}`]: justify !== undefined,
|
|
119
131
|
[`checkbox-alignment-${alignment}`]: alignment !== undefined,
|
|
120
132
|
[`checkbox-label-placement-${labelPlacement}`]: true,
|
|
121
|
-
}), onClick: this.onClick }, h("label", { key: '
|
|
133
|
+
}), onClick: this.onClick }, h("label", { key: '58b5762aa358dff81910874631e06620a2ae1561', class: "checkbox-wrapper", htmlFor: inputId }, h("input", Object.assign({ key: '6abe299d690c345d36d6fd76ab113fdccfbbac52', type: "checkbox", checked: checked ? true : undefined, disabled: disabled, id: inputId, onChange: this.toggleChecked, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl), required: required }, inheritedAttributes)), h("div", { key: '2654168e45ccfdbcfe13af8c97e0e21d61ba0150', class: {
|
|
122
134
|
'label-text-wrapper': true,
|
|
123
|
-
'label-text-wrapper-hidden':
|
|
124
|
-
}, part: "label" }, h("slot", { key: '
|
|
135
|
+
'label-text-wrapper-hidden': !hasLabelContent,
|
|
136
|
+
}, part: "label", id: this.inputLabelId }, h("slot", { key: 'a91f3f67d9ddd6b616e48799aba11cae3564d1ab' }), this.renderHintText()), h("div", { key: 'd5a9170b084d09df6b02f416e744085b5bcf0dde', class: "native-wrapper" }, h("svg", { key: 'b1968ce4aa9d652a9f2bdc427ea3a65e6c04df51', class: "checkbox-icon", viewBox: "0 0 24 24", part: "container" }, path)))));
|
|
125
137
|
}
|
|
126
138
|
getSVGPath(mode, indeterminate) {
|
|
127
139
|
let path = indeterminate ? (h("path", { d: "M6 12L18 12", part: "mark" })) : (h("path", { d: "M5.9,12.5l3.8,3.8l8.8-8.8", part: "mark" }));
|
package/components/helpers.js
CHANGED
|
@@ -330,16 +330,6 @@ const shallowEqualStringMap = (map1, map2) => {
|
|
|
330
330
|
}
|
|
331
331
|
return true;
|
|
332
332
|
};
|
|
333
|
-
const getNextSiblingOfType = (element) => {
|
|
334
|
-
let sibling = element.nextSibling;
|
|
335
|
-
while (sibling) {
|
|
336
|
-
if (sibling.nodeType === Node.ELEMENT_NODE && sibling !== null) {
|
|
337
|
-
return sibling;
|
|
338
|
-
}
|
|
339
|
-
sibling = sibling.nextSibling;
|
|
340
|
-
}
|
|
341
|
-
return null;
|
|
342
|
-
};
|
|
343
333
|
/**
|
|
344
334
|
* Checks input for usable number. Not NaN and not Infinite.
|
|
345
335
|
*/
|
|
@@ -347,4 +337,4 @@ const isSafeNumber = (input) => {
|
|
|
347
337
|
return typeof input === 'number' && !isNaN(input) && isFinite(input);
|
|
348
338
|
};
|
|
349
339
|
|
|
350
|
-
export { addEventListener as a, removeEventListener as b, componentOnReady as c, inheritAttributes as d, renderHiddenInput as e, focusVisibleElement as f, getElementRoot as g, hasShadowDom as h, inheritAriaAttributes as i, hasLazyBuild as j, clamp as k, debounceEvent as l, isEndSide as m, assert as n, isSafeNumber as o, debounce as p,
|
|
340
|
+
export { addEventListener as a, removeEventListener as b, componentOnReady as c, inheritAttributes as d, renderHiddenInput as e, focusVisibleElement as f, getElementRoot as g, hasShadowDom as h, inheritAriaAttributes as i, hasLazyBuild as j, clamp as k, debounceEvent as l, isEndSide as m, assert as n, isSafeNumber as o, debounce as p, pointerCoord as q, raf as r, shallowEqualStringMap as s, transitionEndAsync as t };
|
package/components/index9.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
4
|
import { d as doc } from './index5.js';
|
|
5
|
-
import {
|
|
5
|
+
import { q as pointerCoord } from './helpers.js';
|
|
6
6
|
|
|
7
7
|
const startTapClick = (config) => {
|
|
8
8
|
if (doc === undefined) {
|
|
@@ -1429,7 +1429,7 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1429
1429
|
const activePart = this.getActivePartsWithFallback();
|
|
1430
1430
|
return (h("ion-picker-column", { "aria-label": "Select an hour", color: this.color, disabled: disabled, value: activePart.hour, numericInput: true, onIonChange: (ev) => {
|
|
1431
1431
|
this.setWorkingParts(Object.assign(Object.assign({}, workingParts), { hour: ev.detail.value }));
|
|
1432
|
-
this.setActiveParts(Object.assign(Object.assign({},
|
|
1432
|
+
this.setActiveParts(Object.assign(Object.assign({}, this.getActivePartsWithFallback()), { hour: ev.detail.value }));
|
|
1433
1433
|
ev.stopPropagation();
|
|
1434
1434
|
} }, hoursData.map((hour) => (h("ion-picker-column-option", { part: hour.value === activePart.hour ? `${WHEEL_ITEM_PART} ${WHEEL_ITEM_ACTIVE_PART}` : WHEEL_ITEM_PART, key: hour.value, disabled: hour.disabled, value: hour.value }, hour.text)))));
|
|
1435
1435
|
}
|
|
@@ -1440,7 +1440,7 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1440
1440
|
const activePart = this.getActivePartsWithFallback();
|
|
1441
1441
|
return (h("ion-picker-column", { "aria-label": "Select a minute", color: this.color, disabled: disabled, value: activePart.minute, numericInput: true, onIonChange: (ev) => {
|
|
1442
1442
|
this.setWorkingParts(Object.assign(Object.assign({}, workingParts), { minute: ev.detail.value }));
|
|
1443
|
-
this.setActiveParts(Object.assign(Object.assign({},
|
|
1443
|
+
this.setActiveParts(Object.assign(Object.assign({}, this.getActivePartsWithFallback()), { minute: ev.detail.value }));
|
|
1444
1444
|
ev.stopPropagation();
|
|
1445
1445
|
} }, minutesData.map((minute) => (h("ion-picker-column-option", { part: minute.value === activePart.minute ? `${WHEEL_ITEM_PART} ${WHEEL_ITEM_ACTIVE_PART}` : WHEEL_ITEM_PART, key: minute.value, disabled: minute.disabled, value: minute.value }, minute.text)))));
|
|
1446
1446
|
}
|
|
@@ -1454,7 +1454,7 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1454
1454
|
return (h("ion-picker-column", { "aria-label": "Select a day period", style: isDayPeriodRTL ? { order: '-1' } : {}, color: this.color, disabled: disabled, value: activePart.ampm, onIonChange: (ev) => {
|
|
1455
1455
|
const hour = calculateHourFromAMPM(workingParts, ev.detail.value);
|
|
1456
1456
|
this.setWorkingParts(Object.assign(Object.assign({}, workingParts), { ampm: ev.detail.value, hour }));
|
|
1457
|
-
this.setActiveParts(Object.assign(Object.assign({},
|
|
1457
|
+
this.setActiveParts(Object.assign(Object.assign({}, this.getActivePartsWithFallback()), { ampm: ev.detail.value, hour }));
|
|
1458
1458
|
ev.stopPropagation();
|
|
1459
1459
|
} }, dayPeriodData.map((dayPeriod) => (h("ion-picker-column-option", { part: dayPeriod.value === activePart.ampm ? `${WHEEL_ITEM_PART} ${WHEEL_ITEM_ACTIVE_PART}` : WHEEL_ITEM_PART, key: dayPeriod.value, disabled: dayPeriod.disabled, value: dayPeriod.value }, dayPeriod.text)))));
|
|
1460
1460
|
}
|
|
@@ -1761,7 +1761,7 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1761
1761
|
const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
|
|
1762
1762
|
const hasWheelVariant = hasDatePresentation && preferWheel;
|
|
1763
1763
|
renderHiddenInput(true, el, name, formatValue(value), disabled);
|
|
1764
|
-
return (h(Host, { key: '
|
|
1764
|
+
return (h(Host, { key: '08d429533a09c600b936ad1e022658051c765595', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, createColorClasses(color, {
|
|
1765
1765
|
[mode]: true,
|
|
1766
1766
|
['datetime-readonly']: readonly,
|
|
1767
1767
|
['datetime-disabled']: disabled,
|
|
@@ -1771,7 +1771,7 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1771
1771
|
[`datetime-size-${size}`]: true,
|
|
1772
1772
|
[`datetime-prefer-wheel`]: hasWheelVariant,
|
|
1773
1773
|
[`datetime-grid`]: isGridStyle,
|
|
1774
|
-
})) }, h("div", { key: '
|
|
1774
|
+
})) }, h("div", { key: 'f4ff0fcd1e059767a7ef14fcc76ebfd55d23a97b', class: "intersection-tracker", ref: (el) => (this.intersectionTrackerRef = el) }), this.renderDatetime(mode)));
|
|
1775
1775
|
}
|
|
1776
1776
|
get el() { return this; }
|
|
1777
1777
|
static get watchers() { return {
|
package/components/ion-range.js
CHANGED
|
@@ -79,6 +79,19 @@ const Range = /*@__PURE__*/ proxyCustomElement(class Range extends HTMLElement {
|
|
|
79
79
|
this.inheritedAttributes = {};
|
|
80
80
|
this.contentEl = null;
|
|
81
81
|
this.initialContentScrollY = true;
|
|
82
|
+
/**
|
|
83
|
+
* Compares two RangeValue inputs to determine if they are different.
|
|
84
|
+
*
|
|
85
|
+
* @param newVal - The new value.
|
|
86
|
+
* @param oldVal - The old value.
|
|
87
|
+
* @returns `true` if the values are different, `false` otherwise.
|
|
88
|
+
*/
|
|
89
|
+
this.compareValues = (newVal, oldVal) => {
|
|
90
|
+
if (typeof newVal === 'object' && typeof oldVal === 'object') {
|
|
91
|
+
return newVal.lower !== oldVal.lower || newVal.upper !== oldVal.upper;
|
|
92
|
+
}
|
|
93
|
+
return newVal !== oldVal;
|
|
94
|
+
};
|
|
82
95
|
this.clampBounds = (value) => {
|
|
83
96
|
return clamp(this.min, value, this.max);
|
|
84
97
|
};
|
|
@@ -212,7 +225,11 @@ const Range = /*@__PURE__*/ proxyCustomElement(class Range extends HTMLElement {
|
|
|
212
225
|
this.gesture.enable(!this.disabled);
|
|
213
226
|
}
|
|
214
227
|
}
|
|
215
|
-
valueChanged() {
|
|
228
|
+
valueChanged(newValue, oldValue) {
|
|
229
|
+
const valuesChanged = this.compareValues(newValue, oldValue);
|
|
230
|
+
if (valuesChanged) {
|
|
231
|
+
this.ionInput.emit({ value: this.value });
|
|
232
|
+
}
|
|
216
233
|
if (!this.noUpdate) {
|
|
217
234
|
this.updateRatio();
|
|
218
235
|
}
|
|
@@ -457,7 +474,6 @@ const Range = /*@__PURE__*/ proxyCustomElement(class Range extends HTMLElement {
|
|
|
457
474
|
lower: Math.min(valA, valB),
|
|
458
475
|
upper: Math.max(valA, valB),
|
|
459
476
|
};
|
|
460
|
-
this.ionInput.emit({ value: this.value });
|
|
461
477
|
this.noUpdate = false;
|
|
462
478
|
}
|
|
463
479
|
setFocus(knob) {
|
|
@@ -625,7 +641,7 @@ const Range = /*@__PURE__*/ proxyCustomElement(class Range extends HTMLElement {
|
|
|
625
641
|
const needsEndAdjustment = inItem && !hasEndContent;
|
|
626
642
|
const mode = getIonMode(this);
|
|
627
643
|
renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
|
|
628
|
-
return (h(Host, { key: '
|
|
644
|
+
return (h(Host, { key: 'e97cb7eab877eb1624429b4a79107130c6809cf5', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses(this.color, {
|
|
629
645
|
[mode]: true,
|
|
630
646
|
'in-item': inItem,
|
|
631
647
|
'range-disabled': disabled,
|
|
@@ -634,10 +650,10 @@ const Range = /*@__PURE__*/ proxyCustomElement(class Range extends HTMLElement {
|
|
|
634
650
|
[`range-label-placement-${labelPlacement}`]: true,
|
|
635
651
|
'range-item-start-adjustment': needsStartAdjustment,
|
|
636
652
|
'range-item-end-adjustment': needsEndAdjustment,
|
|
637
|
-
}) }, h("label", { key: '
|
|
653
|
+
}) }, h("label", { key: 'a43e9859f74f83460439efefccb5fbb9f387c9ee', class: "range-wrapper", id: "range-label" }, h("div", { key: '75352a30f30dbd0228c6138eb4324a5c021dbb48', class: {
|
|
638
654
|
'label-text-wrapper': true,
|
|
639
655
|
'label-text-wrapper-hidden': !hasLabel,
|
|
640
|
-
}, part: "label" }, label !== undefined ? h("div", { class: "label-text" }, label) : h("slot", { name: "label" })), h("div", { key: '
|
|
656
|
+
}, part: "label" }, label !== undefined ? h("div", { class: "label-text" }, label) : h("slot", { name: "label" })), h("div", { key: '6a3e147c3e5d938bb2b50522a290f6fdfcf40f05', class: "native-wrapper" }, h("slot", { key: '6627236eac9f711fa9c27879a017dd994e65811e', name: "start" }), this.renderRangeSlider(), h("slot", { key: '6af3bbadacd036bc7cd30732227f76d7c64117fb', name: "end" })))));
|
|
641
657
|
}
|
|
642
658
|
get el() { return this; }
|
|
643
659
|
static get watchers() { return {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
4
|
import { proxyCustomElement, HTMLElement, forceUpdate, h, Host } from '@stencil/core/internal/client';
|
|
5
|
-
import { a as addEventListener, b as removeEventListener, d as inheritAttributes
|
|
5
|
+
import { a as addEventListener, b as removeEventListener, d as inheritAttributes } from './helpers.js';
|
|
6
6
|
import { h as hostContext } from './theme.js';
|
|
7
7
|
import { b as getIonMode } from './ionic-global.js';
|
|
8
8
|
import { d as defineCustomElement$2 } from './ripple-effect.js';
|
|
@@ -43,61 +43,15 @@ const SegmentButton = /*@__PURE__*/ proxyCustomElement(class SegmentButton exten
|
|
|
43
43
|
valueChanged() {
|
|
44
44
|
this.updateState();
|
|
45
45
|
}
|
|
46
|
-
|
|
47
|
-
return new Promise((resolve, reject) => {
|
|
48
|
-
let timeoutId = undefined;
|
|
49
|
-
let animationFrameId;
|
|
50
|
-
const check = () => {
|
|
51
|
-
if (!ionSegment) {
|
|
52
|
-
reject(new Error(`Segment not found when looking for Segment Content`));
|
|
53
|
-
return;
|
|
54
|
-
}
|
|
55
|
-
const segmentView = getNextSiblingOfType(ionSegment); // Skip the text nodes
|
|
56
|
-
const segmentContent = segmentView === null || segmentView === void 0 ? void 0 : segmentView.querySelector(`ion-segment-content[id="${contentId}"]`);
|
|
57
|
-
if (segmentContent && timeoutId) {
|
|
58
|
-
clearTimeout(timeoutId); // Clear the timeout if the segmentContent is found
|
|
59
|
-
cancelAnimationFrame(animationFrameId);
|
|
60
|
-
resolve(segmentContent);
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
animationFrameId = requestAnimationFrame(check); // Keep checking on the next animation frame
|
|
64
|
-
}
|
|
65
|
-
};
|
|
66
|
-
check();
|
|
67
|
-
// Set a timeout to reject the promise
|
|
68
|
-
timeoutId = setTimeout(() => {
|
|
69
|
-
cancelAnimationFrame(animationFrameId);
|
|
70
|
-
reject(new Error(`Unable to find Segment Content with id="${contentId} within 1000 ms`));
|
|
71
|
-
}, 1000);
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
async connectedCallback() {
|
|
46
|
+
connectedCallback() {
|
|
75
47
|
const segmentEl = (this.segmentEl = this.el.closest('ion-segment'));
|
|
76
48
|
if (segmentEl) {
|
|
77
49
|
this.updateState();
|
|
78
50
|
addEventListener(segmentEl, 'ionSelect', this.updateState);
|
|
79
51
|
addEventListener(segmentEl, 'ionStyle', this.updateStyle);
|
|
80
52
|
}
|
|
81
|
-
// Return if there is no contentId defined
|
|
82
|
-
if (!this.contentId)
|
|
83
|
-
return;
|
|
84
|
-
let segmentContent;
|
|
85
|
-
try {
|
|
86
|
-
// Attempt to find the Segment Content by its contentId
|
|
87
|
-
segmentContent = await this.waitForSegmentContent(segmentEl, this.contentId);
|
|
88
|
-
}
|
|
89
|
-
catch (error) {
|
|
90
|
-
// If no associated Segment Content exists, log an error and return
|
|
91
|
-
console.error('Segment Button: ', error.message);
|
|
92
|
-
return;
|
|
93
|
-
}
|
|
94
|
-
// Ensure the found element is a valid ION-SEGMENT-CONTENT
|
|
95
|
-
if (segmentContent.tagName !== 'ION-SEGMENT-CONTENT') {
|
|
96
|
-
console.error(`Segment Button: Element with id="${this.contentId}" is not an <ion-segment-content> element.`);
|
|
97
|
-
return;
|
|
98
|
-
}
|
|
99
53
|
// Prevent buttons from being disabled when associated with segment content
|
|
100
|
-
if (this.disabled) {
|
|
54
|
+
if (this.contentId && this.disabled) {
|
|
101
55
|
console.warn(`Segment Button: Segment buttons cannot be disabled when associated with an <ion-segment-content>.`);
|
|
102
56
|
this.disabled = false;
|
|
103
57
|
}
|
|
@@ -112,6 +66,21 @@ const SegmentButton = /*@__PURE__*/ proxyCustomElement(class SegmentButton exten
|
|
|
112
66
|
}
|
|
113
67
|
componentWillLoad() {
|
|
114
68
|
this.inheritedAttributes = Object.assign({}, inheritAttributes(this.el, ['aria-label']));
|
|
69
|
+
// Return if there is no contentId defined
|
|
70
|
+
if (!this.contentId)
|
|
71
|
+
return;
|
|
72
|
+
// Attempt to find the Segment Content by its contentId
|
|
73
|
+
const segmentContent = document.getElementById(this.contentId);
|
|
74
|
+
// If no associated Segment Content exists, log an error and return
|
|
75
|
+
if (!segmentContent) {
|
|
76
|
+
console.error(`Segment Button: Unable to find Segment Content with id="${this.contentId}".`);
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
// Ensure the found element is a valid ION-SEGMENT-CONTENT
|
|
80
|
+
if (segmentContent.tagName !== 'ION-SEGMENT-CONTENT') {
|
|
81
|
+
console.error(`Segment Button: Element with id="${this.contentId}" is not an <ion-segment-content> element.`);
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
115
84
|
}
|
|
116
85
|
get hasLabel() {
|
|
117
86
|
return !!this.el.querySelector('ion-label');
|
|
@@ -134,7 +103,7 @@ const SegmentButton = /*@__PURE__*/ proxyCustomElement(class SegmentButton exten
|
|
|
134
103
|
const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
|
|
135
104
|
const mode = getIonMode(this);
|
|
136
105
|
const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
|
|
137
|
-
return (h(Host, { key: '
|
|
106
|
+
return (h(Host, { key: 'f2f679a08b131cd35d63f649b9d1f1907df30a89', class: {
|
|
138
107
|
[mode]: true,
|
|
139
108
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
140
109
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
@@ -150,7 +119,7 @@ const SegmentButton = /*@__PURE__*/ proxyCustomElement(class SegmentButton exten
|
|
|
150
119
|
'ion-activatable': true,
|
|
151
120
|
'ion-activatable-instant': true,
|
|
152
121
|
'ion-focusable': true,
|
|
153
|
-
} }, h("button", Object.assign({ key: '
|
|
122
|
+
} }, h("button", Object.assign({ key: '8e887b5031da705a3695c0870be08696d66188de', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), h("span", { key: '73b795c39cb09438e50922abf6b3a010e31fa2b6', class: "button-inner" }, h("slot", { key: '9769ddc917d7e459bd80dcd81c10c379e73d1b3e' })), mode === 'md' && h("ion-ripple-effect", { key: '8e4c06d6bae1034af8cc5db86fcca0ae72d042b1' })), h("div", { key: 'ae73ee0e429e54a43269f99b6d3d7e1c6e8f60cc', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, h("div", { key: 'd38eabe8161403799cfbad73dd6bf912d965442c', part: "indicator-background", class: "segment-button-indicator-background" }))));
|
|
154
123
|
}
|
|
155
124
|
get el() { return this; }
|
|
156
125
|
static get watchers() { return {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
|
|
5
5
|
|
|
6
|
-
const segmentContentCss = ":host{scroll-snap-align:center;scroll-snap-stop:always;-ms-flex-negative:0;flex-shrink:0;width:100
|
|
6
|
+
const segmentContentCss = ":host{scroll-snap-align:center;scroll-snap-stop:always;-ms-flex-negative:0;flex-shrink:0;width:100%;overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none;}:host::-webkit-scrollbar{display:none}";
|
|
7
7
|
const IonSegmentContentStyle0 = segmentContentCss;
|
|
8
8
|
|
|
9
9
|
const SegmentContent = /*@__PURE__*/ proxyCustomElement(class SegmentContent extends HTMLElement {
|
package/components/overlays.js
CHANGED
|
@@ -515,8 +515,8 @@ const present = async (overlay, name, iosEnterAnimation, mdEnterAnimation, opts)
|
|
|
515
515
|
*/
|
|
516
516
|
if (overlay.el.tagName !== 'ION-TOAST') {
|
|
517
517
|
setRootAriaHidden(true);
|
|
518
|
+
document.body.classList.add(BACKDROP_NO_SCROLL);
|
|
518
519
|
}
|
|
519
|
-
document.body.classList.add(BACKDROP_NO_SCROLL);
|
|
520
520
|
hideUnderlyingOverlaysFromScreenReaders(overlay.el);
|
|
521
521
|
hideAnimatingOverlayFromScreenReaders(overlay.el);
|
|
522
522
|
overlay.presented = true;
|
|
@@ -620,6 +620,7 @@ const dismiss = async (overlay, data, role, name, iosLeaveAnimation, mdLeaveAnim
|
|
|
620
620
|
if (!overlay.presented) {
|
|
621
621
|
return false;
|
|
622
622
|
}
|
|
623
|
+
const presentedOverlays = doc !== undefined ? getPresentedOverlays(doc) : [];
|
|
623
624
|
/**
|
|
624
625
|
* For accessibility, toasts lack focus traps and don’t receive
|
|
625
626
|
* `aria-hidden` on the root element when presented.
|
|
@@ -631,7 +632,7 @@ const dismiss = async (overlay, data, role, name, iosLeaveAnimation, mdLeaveAnim
|
|
|
631
632
|
* Therefore, we must remove `aria-hidden` from the root element
|
|
632
633
|
* when the last non-toast overlay is dismissed.
|
|
633
634
|
*/
|
|
634
|
-
const overlaysNotToast =
|
|
635
|
+
const overlaysNotToast = presentedOverlays.filter((o) => o.tagName !== 'ION-TOAST');
|
|
635
636
|
const lastOverlayNotToast = overlaysNotToast.length === 1 && overlaysNotToast[0].id === overlay.el.id;
|
|
636
637
|
/**
|
|
637
638
|
* If this is the last visible overlay that is not a toast
|
package/components/picker.js
CHANGED
|
@@ -321,13 +321,59 @@ const Picker = /*@__PURE__*/ proxyCustomElement(class Picker extends HTMLElement
|
|
|
321
321
|
* or trailing zeros when looking at the item text.
|
|
322
322
|
*/
|
|
323
323
|
this.searchColumn = (colEl, value, zeroBehavior = 'start') => {
|
|
324
|
+
if (!value) {
|
|
325
|
+
return false;
|
|
326
|
+
}
|
|
324
327
|
const behavior = zeroBehavior === 'start' ? /^0+/ : /0$/;
|
|
328
|
+
value = value.replace(behavior, '');
|
|
325
329
|
const option = Array.from(colEl.querySelectorAll('ion-picker-column-option')).find((el) => {
|
|
326
330
|
return el.disabled !== true && el.textContent.replace(behavior, '') === value;
|
|
327
331
|
});
|
|
328
332
|
if (option) {
|
|
329
333
|
colEl.setValue(option.value);
|
|
330
334
|
}
|
|
335
|
+
return !!option;
|
|
336
|
+
};
|
|
337
|
+
/**
|
|
338
|
+
* Attempts to intelligently search the first and second
|
|
339
|
+
* column as if they're number columns for the provided numbers
|
|
340
|
+
* where the first two numbers are the first column
|
|
341
|
+
* and the last 2 are the last column. Tries to allow for the first
|
|
342
|
+
* number to be ignored for situations where typos occurred.
|
|
343
|
+
*/
|
|
344
|
+
this.multiColumnSearch = (firstColumn, secondColumn, input) => {
|
|
345
|
+
if (input.length === 0) {
|
|
346
|
+
return;
|
|
347
|
+
}
|
|
348
|
+
const inputArray = input.split('');
|
|
349
|
+
const hourValue = inputArray.slice(0, 2).join('');
|
|
350
|
+
// Try to find a match for the first two digits in the first column
|
|
351
|
+
const foundHour = this.searchColumn(firstColumn, hourValue);
|
|
352
|
+
// If we have more than 2 digits and found a match for hours,
|
|
353
|
+
// use the remaining digits for the second column (minutes)
|
|
354
|
+
if (inputArray.length > 2 && foundHour) {
|
|
355
|
+
const minuteValue = inputArray.slice(2, 4).join('');
|
|
356
|
+
this.searchColumn(secondColumn, minuteValue);
|
|
357
|
+
}
|
|
358
|
+
// If we couldn't find a match for the two-digit hour, try single digit approaches
|
|
359
|
+
else if (!foundHour && inputArray.length >= 1) {
|
|
360
|
+
// First try the first digit as a single-digit hour
|
|
361
|
+
let singleDigitHour = inputArray[0];
|
|
362
|
+
let singleDigitFound = this.searchColumn(firstColumn, singleDigitHour);
|
|
363
|
+
// If that didn't work, try the second digit as a single-digit hour
|
|
364
|
+
// (handles case where user made a typo in the first digit, or they typed over themselves)
|
|
365
|
+
if (!singleDigitFound) {
|
|
366
|
+
inputArray.shift();
|
|
367
|
+
singleDigitHour = inputArray[0];
|
|
368
|
+
singleDigitFound = this.searchColumn(firstColumn, singleDigitHour);
|
|
369
|
+
}
|
|
370
|
+
// If we found a single-digit hour and have remaining digits,
|
|
371
|
+
// use up to 2 of the remaining digits for the second column
|
|
372
|
+
if (singleDigitFound && inputArray.length > 1) {
|
|
373
|
+
const remainingDigits = inputArray.slice(1, 3).join('');
|
|
374
|
+
this.searchColumn(secondColumn, remainingDigits);
|
|
375
|
+
}
|
|
376
|
+
}
|
|
331
377
|
};
|
|
332
378
|
this.selectMultiColumn = () => {
|
|
333
379
|
const { inputEl, el } = this;
|
|
@@ -338,82 +384,13 @@ const Picker = /*@__PURE__*/ proxyCustomElement(class Picker extends HTMLElement
|
|
|
338
384
|
const firstColumn = numericPickers[0];
|
|
339
385
|
const lastColumn = numericPickers[1];
|
|
340
386
|
let value = inputEl.value;
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
case 2:
|
|
347
|
-
/**
|
|
348
|
-
* If the first character is `0` or `1` it is
|
|
349
|
-
* possible that users are trying to type `09`
|
|
350
|
-
* or `11` into the hour field, so we should look
|
|
351
|
-
* at that first.
|
|
352
|
-
*/
|
|
353
|
-
const firstCharacter = inputEl.value.substring(0, 1);
|
|
354
|
-
value = firstCharacter === '0' || firstCharacter === '1' ? inputEl.value : firstCharacter;
|
|
355
|
-
this.searchColumn(firstColumn, value);
|
|
356
|
-
/**
|
|
357
|
-
* If only checked the first value,
|
|
358
|
-
* we can check the second value
|
|
359
|
-
* for a match in the minutes column
|
|
360
|
-
*/
|
|
361
|
-
if (value.length === 1) {
|
|
362
|
-
minuteValue = inputEl.value.substring(inputEl.value.length - 1);
|
|
363
|
-
this.searchColumn(lastColumn, minuteValue, 'end');
|
|
364
|
-
}
|
|
365
|
-
break;
|
|
366
|
-
case 3:
|
|
367
|
-
/**
|
|
368
|
-
* If the first character is `0` or `1` it is
|
|
369
|
-
* possible that users are trying to type `09`
|
|
370
|
-
* or `11` into the hour field, so we should look
|
|
371
|
-
* at that first.
|
|
372
|
-
*/
|
|
373
|
-
const firstCharacterAgain = inputEl.value.substring(0, 1);
|
|
374
|
-
value =
|
|
375
|
-
firstCharacterAgain === '0' || firstCharacterAgain === '1'
|
|
376
|
-
? inputEl.value.substring(0, 2)
|
|
377
|
-
: firstCharacterAgain;
|
|
378
|
-
this.searchColumn(firstColumn, value);
|
|
379
|
-
/**
|
|
380
|
-
* If only checked the first value,
|
|
381
|
-
* we can check the second value
|
|
382
|
-
* for a match in the minutes column
|
|
383
|
-
*/
|
|
384
|
-
minuteValue = value.length === 1 ? inputEl.value.substring(1) : inputEl.value.substring(2);
|
|
385
|
-
this.searchColumn(lastColumn, minuteValue, 'end');
|
|
386
|
-
break;
|
|
387
|
-
case 4:
|
|
388
|
-
/**
|
|
389
|
-
* If the first character is `0` or `1` it is
|
|
390
|
-
* possible that users are trying to type `09`
|
|
391
|
-
* or `11` into the hour field, so we should look
|
|
392
|
-
* at that first.
|
|
393
|
-
*/
|
|
394
|
-
const firstCharacterAgainAgain = inputEl.value.substring(0, 1);
|
|
395
|
-
value =
|
|
396
|
-
firstCharacterAgainAgain === '0' || firstCharacterAgainAgain === '1'
|
|
397
|
-
? inputEl.value.substring(0, 2)
|
|
398
|
-
: firstCharacterAgainAgain;
|
|
399
|
-
this.searchColumn(firstColumn, value);
|
|
400
|
-
/**
|
|
401
|
-
* If only checked the first value,
|
|
402
|
-
* we can check the second value
|
|
403
|
-
* for a match in the minutes column
|
|
404
|
-
*/
|
|
405
|
-
const minuteValueAgain = value.length === 1
|
|
406
|
-
? inputEl.value.substring(1, inputEl.value.length)
|
|
407
|
-
: inputEl.value.substring(2, inputEl.value.length);
|
|
408
|
-
this.searchColumn(lastColumn, minuteValueAgain, 'end');
|
|
409
|
-
break;
|
|
410
|
-
default:
|
|
411
|
-
const startIndex = inputEl.value.length - 4;
|
|
412
|
-
const newString = inputEl.value.substring(startIndex);
|
|
413
|
-
inputEl.value = newString;
|
|
414
|
-
this.selectMultiColumn();
|
|
415
|
-
break;
|
|
387
|
+
if (value.length > 4) {
|
|
388
|
+
const startIndex = inputEl.value.length - 4;
|
|
389
|
+
const newString = inputEl.value.substring(startIndex);
|
|
390
|
+
inputEl.value = newString;
|
|
391
|
+
value = newString;
|
|
416
392
|
}
|
|
393
|
+
this.multiColumnSearch(firstColumn, lastColumn, value);
|
|
417
394
|
};
|
|
418
395
|
/**
|
|
419
396
|
* Searches the value of the active column
|
|
@@ -482,7 +459,7 @@ const Picker = /*@__PURE__*/ proxyCustomElement(class Picker extends HTMLElement
|
|
|
482
459
|
this.emitInputModeChange();
|
|
483
460
|
}
|
|
484
461
|
render() {
|
|
485
|
-
return (h(Host, { key: '
|
|
462
|
+
return (h(Host, { key: '28f81e4ed44a633178561757c5199c2c98f94b74', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, h("input", { key: 'abb3d1ad25ef63856af7804111175a4d50008bc0', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
|
|
486
463
|
var _a;
|
|
487
464
|
/**
|
|
488
465
|
* The "Enter" key represents
|
|
@@ -497,7 +474,7 @@ const Picker = /*@__PURE__*/ proxyCustomElement(class Picker extends HTMLElement
|
|
|
497
474
|
if (ev.key === 'Enter') {
|
|
498
475
|
(_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.blur();
|
|
499
476
|
}
|
|
500
|
-
}, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), h("div", { key: '
|
|
477
|
+
}, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), h("div", { key: '334a5abdc02e6b127c57177f626d7e4ff5526183', class: "picker-before" }), h("div", { key: 'ffd6271931129e88fc7c820e919d684899e420c5', class: "picker-after" }), h("div", { key: '78d1d95fd09e04f154ea59f24a1cece72c47ed7b', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), h("slot", { key: '0bd5b9f875d3c71f6cbbde2054baeb1b0a2e8cd5' })));
|
|
501
478
|
}
|
|
502
479
|
get el() { return this; }
|
|
503
480
|
static get style() { return {
|
|
@@ -332,16 +332,6 @@ const shallowEqualStringMap = (map1, map2) => {
|
|
|
332
332
|
}
|
|
333
333
|
return true;
|
|
334
334
|
};
|
|
335
|
-
const getNextSiblingOfType = (element) => {
|
|
336
|
-
let sibling = element.nextSibling;
|
|
337
|
-
while (sibling) {
|
|
338
|
-
if (sibling.nodeType === Node.ELEMENT_NODE && sibling !== null) {
|
|
339
|
-
return sibling;
|
|
340
|
-
}
|
|
341
|
-
sibling = sibling.nextSibling;
|
|
342
|
-
}
|
|
343
|
-
return null;
|
|
344
|
-
};
|
|
345
335
|
/**
|
|
346
336
|
* Checks input for usable number. Not NaN and not Infinite.
|
|
347
337
|
*/
|
|
@@ -357,7 +347,6 @@ exports.debounce = debounce;
|
|
|
357
347
|
exports.debounceEvent = debounceEvent;
|
|
358
348
|
exports.focusVisibleElement = focusVisibleElement;
|
|
359
349
|
exports.getElementRoot = getElementRoot;
|
|
360
|
-
exports.getNextSiblingOfType = getNextSiblingOfType;
|
|
361
350
|
exports.hasLazyBuild = hasLazyBuild;
|
|
362
351
|
exports.hasShadowDom = hasShadowDom;
|
|
363
352
|
exports.inheritAriaAttributes = inheritAriaAttributes;
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
const index$1 = require('./index-c8d52405.js');
|
|
7
7
|
const hardwareBackButton = require('./hardware-back-button-5a99001f.js');
|
|
8
8
|
const index = require('./index-48b2a28e.js');
|
|
9
|
-
const helpers = require('./helpers-
|
|
9
|
+
const helpers = require('./helpers-3a248559.js');
|
|
10
10
|
const ionicGlobal = require('./ionic-global-acb665ad.js');
|
|
11
11
|
const animation = require('./animation-b4fdf128.js');
|
|
12
12
|
|