@ionic/core 7.5.8-dev.11702664817.19cab605 → 7.5.8-dev.11704294569.1abc989d
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/action-sheet.js +1 -1
- package/components/alert.js +2 -2
- package/components/button.js +2 -2
- package/components/checkbox.js +2 -2
- package/components/data.js +1 -1
- package/components/ion-back-button.js +1 -1
- package/components/ion-badge.js +2 -2
- package/components/ion-content.js +2 -3
- package/components/ion-datetime.js +30 -39
- package/components/ion-fab-button.js +2 -2
- package/components/ion-input.js +2 -2
- package/components/ion-item-option.js +2 -2
- package/components/ion-loading.js +1 -1
- package/components/ion-menu-button.js +1 -1
- package/components/ion-picker-column-internal.d.ts +11 -0
- package/components/ion-picker-column-internal.js +9 -0
- package/components/ion-picker-column.js +2 -2
- package/components/{ion-picker-legacy.d.ts → ion-picker-internal.d.ts} +4 -4
- package/components/ion-picker-internal.js +9 -0
- package/components/ion-picker.js +309 -1
- package/components/ion-progress-bar.js +2 -2
- package/components/ion-range.js +2 -2
- package/components/ion-refresher-content.js +1 -1
- package/components/ion-refresher.js +1 -1
- package/components/ion-router-link.js +1 -1
- package/components/ion-searchbar.js +1 -1
- package/components/ion-segment-button.js +1 -1
- package/components/ion-select.js +2 -2
- package/components/ion-tab-bar.js +2 -2
- package/components/ion-textarea.js +2 -2
- package/components/ion-title.js +1 -22
- package/components/ion-toast.js +2 -2
- package/components/ion-toggle.js +2 -2
- package/components/item.js +2 -2
- package/components/label.js +1 -1
- package/components/overlays.js +3 -6
- package/components/picker-column-internal.js +390 -0
- package/components/picker-column.js +322 -351
- package/components/{picker.js → picker-internal.js} +22 -29
- package/components/radio.js +2 -2
- package/components/select-popover.js +1 -1
- package/css/core.css +35 -34
- package/css/core.css.map +1 -1
- package/css/global.bundle.css +1 -1
- package/css/ionic.bundle.css +1 -1
- package/css/ionic.bundle.css.map +1 -1
- package/css/themes/dark.always.css +122 -0
- package/css/themes/dark.always.css.map +1 -0
- package/css/themes/dark.class.css +122 -0
- package/css/themes/dark.class.css.map +1 -0
- package/css/themes/dark.css +3 -0
- package/css/themes/dark.css.map +1 -0
- package/css/themes/dark.system.css +124 -0
- package/css/themes/dark.system.css.map +1 -0
- package/css/typography.css +1 -1
- package/dist/cjs/{data-e7526b58.js → data-36b9094e.js} +1 -1
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/ion-action-sheet.cjs.entry.js +2 -2
- package/dist/cjs/ion-alert.cjs.entry.js +3 -3
- package/dist/cjs/ion-app_8.cjs.entry.js +4 -25
- package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-back-button.cjs.entry.js +1 -1
- package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/ion-datetime-button.cjs.entry.js +1 -1
- package/dist/cjs/ion-datetime_3.cjs.entry.js +36 -30
- package/dist/cjs/ion-fab_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-input.cjs.entry.js +2 -2
- package/dist/cjs/ion-item-option_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-item_8.cjs.entry.js +3 -3
- package/dist/cjs/ion-loading.cjs.entry.js +2 -2
- package/dist/cjs/ion-menu_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-modal.cjs.entry.js +1 -1
- package/dist/cjs/{ion-picker-column.cjs.entry.js → ion-picker-column-internal.cjs.entry.js} +87 -104
- package/dist/cjs/{ion-picker.cjs.entry.js → ion-picker-internal.cjs.entry.js} +19 -26
- package/dist/cjs/ion-popover.cjs.entry.js +1 -1
- package/dist/cjs/ion-progress-bar.cjs.entry.js +2 -2
- package/dist/cjs/ion-radio_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-range.cjs.entry.js +2 -2
- package/dist/cjs/ion-refresher_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_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-select_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-textarea.cjs.entry.js +2 -2
- package/dist/cjs/ion-toast.cjs.entry.js +3 -3
- package/dist/cjs/ion-toggle.cjs.entry.js +2 -2
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{overlays-e8e05b0e.js → overlays-2c6b1072.js} +3 -6
- package/dist/collection/collection-manifest.json +8 -9
- package/dist/collection/components/action-sheet/action-sheet.ios.css +3 -3
- package/dist/collection/components/action-sheet/test/a11y/action-sheet.e2e.js +23 -14
- package/dist/collection/components/alert/alert.ios.css +6 -6
- package/dist/collection/components/alert/alert.md.css +6 -6
- package/dist/collection/components/alert/test/a11y/alert.e2e.js +22 -9
- package/dist/collection/components/back-button/back-button.ios.css +1 -1
- package/dist/collection/components/back-button/test/a11y/back-button.e2e.js +21 -0
- package/dist/collection/components/badge/badge.ios.css +1 -1
- package/dist/collection/components/badge/badge.md.css +1 -1
- package/dist/collection/components/badge/test/a11y/badge.e2e.js +18 -0
- package/dist/collection/components/button/button.ios.css +11 -11
- package/dist/collection/components/button/button.md.css +9 -9
- package/dist/collection/components/button/test/a11y/button.e2e.js +48 -0
- package/dist/collection/components/button/test/wrap/button.e2e.js +24 -12
- package/dist/collection/components/checkbox/checkbox.ios.css +2 -2
- package/dist/collection/components/checkbox/checkbox.md.css +2 -2
- package/dist/collection/components/checkbox/test/a11y/checkbox.e2e.js +11 -2
- package/dist/collection/components/content/content.js +2 -3
- package/dist/collection/components/datetime/datetime.ios.css +13 -8
- package/dist/collection/components/datetime/datetime.js +16 -19
- package/dist/collection/components/datetime/datetime.md.css +13 -8
- package/dist/collection/components/datetime/test/datetime.e2e.js +2 -2
- package/dist/collection/components/datetime/test/disabled/datetime.spec.js +4 -4
- package/dist/collection/components/datetime/test/locale/datetime.e2e.js +2 -2
- package/dist/collection/components/datetime/test/minmax/datetime.e2e.js +6 -6
- package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +41 -43
- package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +1 -1
- package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +2 -2
- package/dist/collection/components/datetime/test/values/datetime.e2e.js +12 -15
- package/dist/collection/components/datetime/utils/data.js +1 -1
- package/dist/collection/components/fab-button/fab-button.ios.css +13 -13
- package/dist/collection/components/fab-button/fab-button.md.css +4 -4
- package/dist/collection/components/fab-button/test/a11y/fab-button.e2e.js +50 -0
- package/dist/collection/components/input/input.ios.css +3 -3
- package/dist/collection/components/input/input.md.css +3 -3
- package/dist/collection/components/input/test/a11y/input.e2e.js +35 -3
- package/dist/collection/components/item/item.ios.css +3 -3
- package/dist/collection/components/item/item.md.css +4 -4
- package/dist/collection/components/item-option/item-option.ios.css +2 -2
- package/dist/collection/components/item-option/item-option.md.css +1 -1
- package/dist/collection/components/item-sliding/test/a11y/item-sliding.e2e.js +28 -0
- package/dist/collection/components/label/label.md.css +1 -1
- package/dist/collection/components/label/test/a11y/label.e2e.js +20 -0
- package/dist/collection/components/loading/loading.md.css +1 -1
- package/dist/collection/components/loading/test/a11y/loading.e2e.js +21 -5
- package/dist/collection/components/menu-button/menu-button.ios.css +1 -1
- package/dist/collection/components/menu-button/test/a11y/menu-button.e2e.js +14 -0
- package/dist/collection/components/picker/picker.ios.css +211 -112
- package/dist/collection/components/picker/picker.js +744 -472
- package/dist/collection/components/picker/picker.md.css +198 -108
- package/dist/collection/components/picker/test/basic/picker.e2e.js +13 -99
- package/dist/collection/components/{picker-legacy → picker}/test/is-open/picker.e2e.js +4 -4
- package/dist/collection/components/{picker-legacy → picker}/test/picker-id.spec.js +5 -5
- package/dist/collection/components/{picker-legacy → picker}/test/trigger/picker.e2e.js +1 -1
- package/dist/collection/components/picker-column/picker-column.js +335 -497
- package/dist/collection/components/{picker-legacy-column → picker-column}/picker-column.md.css +1 -1
- package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column-aria.spec.js +3 -3
- package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column-dynamic.spec.js +2 -2
- package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column.spec.js +2 -2
- package/dist/collection/components/{picker-legacy-column → picker-column}/test/standalone/picker-column.e2e.js +3 -3
- package/dist/collection/components/{picker-column-option/picker-column-option.md.css → picker-column-internal/picker-column-internal.ios.css} +53 -6
- package/dist/collection/components/picker-column-internal/picker-column-internal.js +565 -0
- package/dist/collection/components/{picker-column/picker-column.css → picker-column-internal/picker-column-internal.md.css} +83 -96
- package/dist/collection/components/{picker-column/test/basic/picker-column.e2e.js → picker-column-internal/test/basic/picker-column-internal.e2e.js} +8 -8
- package/dist/collection/components/picker-column-internal/test/disabled/picker-column-internal.e2e.js +162 -0
- package/dist/collection/components/{picker-legacy/picker.md.css → picker-internal/picker-internal.ios.css} +100 -192
- package/dist/collection/components/picker-internal/picker-internal.js +544 -0
- package/dist/collection/components/{picker-legacy/picker.ios.css → picker-internal/picker-internal.md.css} +98 -207
- package/dist/collection/components/picker-internal/test/a11y/picker-internal.e2e.js +31 -0
- package/dist/collection/components/picker-internal/test/basic/picker-internal.e2e.js +118 -0
- package/dist/collection/components/{picker/test/keyboard-entry/picker.e2e.js → picker-internal/test/keyboard-entry/picker-internal.e2e.js} +32 -63
- package/dist/collection/components/progress-bar/progress-bar.ios.css +2 -2
- package/dist/collection/components/progress-bar/progress-bar.md.css +2 -2
- package/dist/collection/components/progress-bar/test/a11y/progress-bar.e2e.js +24 -0
- package/dist/collection/components/radio/radio.ios.css +2 -2
- package/dist/collection/components/radio/radio.md.css +2 -2
- package/dist/collection/components/radio/test/a11y/radio.e2e.js +44 -6
- package/dist/collection/components/range/range.ios.css +1 -1
- package/dist/collection/components/range/range.md.css +3 -3
- package/dist/collection/components/range/test/a11y/range.e2e.js +18 -8
- package/dist/collection/components/refresher/refresher.md.css +2 -2
- package/dist/collection/components/refresher/test/a11y/refresher.e2e.js +25 -0
- package/dist/collection/components/refresher-content/refresher-content.js +1 -1
- package/dist/collection/components/router-link/router-link.css +1 -1
- package/dist/collection/components/router-link/test/a11y/router-link.e2e.js +23 -0
- package/dist/collection/components/searchbar/searchbar.ios.css +1 -1
- package/dist/collection/components/segment/test/a11y/segment.e2e.js +23 -0
- package/dist/collection/components/segment-button/segment-button.md.css +2 -2
- package/dist/collection/components/select/select.ios.css +3 -3
- package/dist/collection/components/select/select.md.css +3 -3
- package/dist/collection/components/select/test/a11y/select.e2e.js +59 -4
- package/dist/collection/components/select-popover/select-popover.md.css +4 -4
- package/dist/collection/components/select-popover/test/a11y/select-popover.e2e.js +32 -0
- package/dist/collection/components/tab-bar/tab-bar.ios.css +1 -1
- package/dist/collection/components/tab-bar/tab-bar.md.css +1 -1
- package/dist/collection/components/textarea/test/a11y/textarea.e2e.js +35 -3
- package/dist/collection/components/textarea/textarea.ios.css +3 -3
- package/dist/collection/components/textarea/textarea.md.css +3 -3
- package/dist/collection/components/title/test/a11y/title.e2e.js +0 -39
- package/dist/collection/components/title/title.js +1 -22
- package/dist/collection/components/toast/test/a11y/toast.e2e.js +56 -24
- package/dist/collection/components/toast/toast.ios.css +1 -1
- package/dist/collection/components/toast/toast.md.css +2 -2
- package/dist/collection/components/toggle/test/a11y/toggle.e2e.js +8 -2
- package/dist/collection/components/toggle/toggle.ios.css +1 -1
- package/dist/collection/components/toggle/toggle.md.css +2 -2
- package/dist/collection/css/test/a11y/typography.e2e.js +18 -0
- package/dist/collection/themes/test/colors/theme.e2e.js +114 -0
- package/dist/collection/utils/overlays.js +3 -6
- package/dist/collection/utils/test/playwright/generator.js +1 -0
- package/dist/collection/utils/test/playwright/page/utils/set-content.js +1 -1
- package/dist/docs.json +24 -472
- package/dist/esm/{data-4b9508c9.js → data-f5c75b4e.js} +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/ion-action-sheet.entry.js +2 -2
- package/dist/esm/ion-alert.entry.js +3 -3
- package/dist/esm/ion-app_8.entry.js +4 -25
- package/dist/esm/ion-avatar_3.entry.js +2 -2
- package/dist/esm/ion-back-button.entry.js +1 -1
- package/dist/esm/ion-button_2.entry.js +2 -2
- package/dist/esm/ion-checkbox.entry.js +2 -2
- package/dist/esm/ion-datetime-button.entry.js +1 -1
- package/dist/esm/ion-datetime_3.entry.js +35 -29
- package/dist/esm/ion-fab_3.entry.js +2 -2
- package/dist/esm/ion-input.entry.js +2 -2
- package/dist/esm/ion-item-option_3.entry.js +2 -2
- package/dist/esm/ion-item_8.entry.js +3 -3
- package/dist/esm/ion-loading.entry.js +2 -2
- package/dist/esm/ion-menu_3.entry.js +2 -2
- package/dist/esm/ion-modal.entry.js +1 -1
- package/dist/esm/{ion-picker-column.entry.js → ion-picker-column-internal.entry.js} +87 -104
- package/dist/esm/{ion-picker.entry.js → ion-picker-internal.entry.js} +19 -26
- package/dist/esm/ion-popover.entry.js +1 -1
- package/dist/esm/ion-progress-bar.entry.js +2 -2
- package/dist/esm/ion-radio_2.entry.js +2 -2
- package/dist/esm/ion-range.entry.js +2 -2
- package/dist/esm/ion-refresher_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_2.entry.js +1 -1
- package/dist/esm/ion-select_3.entry.js +4 -4
- package/dist/esm/ion-tab-bar_2.entry.js +2 -2
- package/dist/esm/ion-textarea.entry.js +2 -2
- package/dist/esm/ion-toast.entry.js +3 -3
- package/dist/esm/ion-toggle.entry.js +2 -2
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{overlays-fbc5cab5.js → overlays-d23ea6e1.js} +3 -6
- package/dist/esm-es5/index.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-avatar_3.entry.js +1 -1
- package/dist/esm-es5/ion-back-button.entry.js +1 -1
- package/dist/esm-es5/ion-button_2.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-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-picker-column-internal.entry.js +4 -0
- package/dist/esm-es5/ion-picker-internal.entry.js +4 -0
- 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-route_4.entry.js +1 -1
- package/dist/esm-es5/ion-searchbar.entry.js +1 -1
- package/dist/esm-es5/ion-segment_2.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-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/ionic.js +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/overlays-d23ea6e1.js +4 -0
- package/dist/html.html-data.json +1 -152
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-4911a5d6.entry.js → p-023b1cf4.entry.js} +1 -1
- package/dist/ionic/{p-232d1f22.entry.js → p-02e066a0.entry.js} +1 -1
- package/dist/ionic/{p-3fd26bd6.system.entry.js → p-0339b688.system.entry.js} +1 -1
- package/dist/ionic/{p-6d72fb44.entry.js → p-0941a5d7.entry.js} +1 -1
- package/dist/ionic/{p-ab9456e9.system.entry.js → p-098f4d12.system.entry.js} +1 -1
- package/dist/ionic/{p-73190c5f.entry.js → p-0afef6b9.entry.js} +1 -1
- package/dist/ionic/{p-51a087d6.entry.js → p-0ebcff25.entry.js} +1 -1
- package/dist/ionic/{p-34c39c48.entry.js → p-1286049a.entry.js} +1 -1
- package/dist/ionic/{p-5bebc7b3.system.entry.js → p-12869199.system.entry.js} +1 -1
- package/dist/ionic/{p-fbf3a689.system.entry.js → p-193ff029.system.entry.js} +1 -1
- package/dist/ionic/{p-22e5af95.entry.js → p-1de103b7.entry.js} +1 -1
- package/dist/ionic/{p-846ee227.entry.js → p-1e57bd24.entry.js} +1 -1
- package/dist/ionic/{p-21c3515a.entry.js → p-29bf41bd.entry.js} +1 -1
- package/dist/ionic/p-2dd0355d.system.entry.js +4 -0
- package/dist/ionic/{p-4a36430f.system.entry.js → p-2f2293da.system.entry.js} +1 -1
- package/dist/ionic/{p-ea69616e.entry.js → p-31cf9613.entry.js} +1 -1
- package/dist/ionic/{p-4a081ea9.entry.js → p-3b568d18.entry.js} +1 -1
- package/dist/ionic/p-3e13501a.system.entry.js +4 -0
- package/dist/ionic/{p-93000a81.system.entry.js → p-3e625023.system.entry.js} +1 -1
- package/dist/ionic/{p-3f6270b3.entry.js → p-55a0cd33.entry.js} +1 -1
- package/dist/ionic/{p-a8baa23e.entry.js → p-57798ba6.entry.js} +1 -1
- package/dist/ionic/{p-7b725280.entry.js → p-5b20db28.entry.js} +1 -1
- package/dist/ionic/{p-5d42b6b4.entry.js → p-5b834053.entry.js} +1 -1
- package/dist/ionic/{p-8f5d30f5.entry.js → p-5fbfa8c9.entry.js} +1 -1
- package/dist/ionic/p-5ff60387.system.entry.js +4 -0
- package/dist/ionic/{p-563c41f0.system.entry.js → p-60b386c9.system.entry.js} +1 -1
- package/dist/ionic/p-67da080d.entry.js +4 -0
- package/dist/ionic/{p-2ab4e925.system.entry.js → p-6f96f7b1.system.entry.js} +1 -1
- package/dist/ionic/p-73ea8f82.system.entry.js +4 -0
- package/dist/ionic/{p-c9a21dfd.system.entry.js → p-76c94634.system.entry.js} +1 -1
- package/dist/ionic/{p-b752714f.system.entry.js → p-7828a27f.system.entry.js} +1 -1
- package/dist/ionic/{p-4bee86bd.entry.js → p-7a63e024.entry.js} +1 -1
- package/dist/ionic/{p-4a31c99f.entry.js → p-7c7e21a7.entry.js} +1 -1
- package/dist/ionic/p-80fa068e.entry.js +4 -0
- package/dist/ionic/{p-26798a7b.system.entry.js → p-8e086176.system.entry.js} +1 -1
- package/dist/ionic/{p-96dbbac1.system.entry.js → p-90483001.system.entry.js} +1 -1
- package/dist/ionic/{p-e8e86f69.system.entry.js → p-93f25d0d.system.entry.js} +1 -1
- package/dist/ionic/{p-a9a80f5b.entry.js → p-9588396d.entry.js} +1 -1
- package/dist/ionic/{p-32303650.system.entry.js → p-98c798de.system.entry.js} +1 -1
- package/dist/ionic/p-9eae578e.system.entry.js +4 -0
- package/dist/ionic/{p-f910cc73.system.entry.js → p-9eec42cc.system.entry.js} +1 -1
- package/dist/ionic/{p-a225bf0f.system.entry.js → p-a8e90d15.system.entry.js} +1 -1
- package/dist/ionic/p-ab11130c.system.js +4 -0
- package/dist/ionic/{p-6fd64e7c.system.entry.js → p-ad8bed54.system.entry.js} +1 -1
- package/dist/ionic/{p-27bcbbc7.system.entry.js → p-b1a2a195.system.entry.js} +1 -1
- package/dist/ionic/{p-a98dc0c1.entry.js → p-bcd073dd.entry.js} +1 -1
- package/dist/ionic/{p-18ba8221.entry.js → p-be6344dd.entry.js} +1 -1
- package/dist/ionic/p-c14f8ac8.js +4 -0
- package/dist/ionic/{p-73aa7604.entry.js → p-c7c7c110.entry.js} +1 -1
- package/dist/ionic/p-c9e07b2f.entry.js +4 -0
- package/dist/ionic/p-ccc2fb62.system.entry.js +4 -0
- package/dist/ionic/p-cce9f61a.system.entry.js +4 -0
- package/dist/ionic/{p-6b7c55cd.entry.js → p-cef8c5c2.entry.js} +1 -1
- package/dist/ionic/{p-6fbecbda.entry.js → p-d1025b3d.entry.js} +1 -1
- package/dist/ionic/{p-b4d31b30.system.entry.js → p-d32188f3.system.entry.js} +1 -1
- package/dist/ionic/{p-ef126ae8.system.entry.js → p-d39db09e.system.entry.js} +1 -1
- package/dist/ionic/{p-42ba3902.entry.js → p-d51019a8.entry.js} +1 -1
- package/dist/ionic/p-d7e9a0ac.entry.js +4 -0
- package/dist/ionic/{p-b133e9b4.entry.js → p-ddb30596.entry.js} +1 -1
- package/dist/ionic/{p-8017aad2.system.entry.js → p-de74582b.system.entry.js} +1 -1
- package/dist/ionic/p-e3584231.system.js +1 -1
- package/dist/ionic/p-ebcf6eca.entry.js +4 -0
- package/dist/ionic/{p-c18de88a.system.entry.js → p-ec040c06.system.entry.js} +1 -1
- package/dist/ionic/{p-464975c5.system.entry.js → p-ed25b7cc.system.entry.js} +1 -1
- package/dist/ionic/{p-e7ea9815.system.entry.js → p-f957d584.system.entry.js} +1 -1
- package/dist/ionic/{p-54dfc9b5.system.js → p-fff7a57e.system.js} +1 -1
- package/dist/types/components/datetime/utils/data.d.ts +7 -11
- package/dist/types/components/picker/picker.d.ts +129 -75
- package/dist/types/components/picker-column/picker-column.d.ts +39 -99
- package/dist/types/components/picker-column-internal/picker-column-internal-interfaces.d.ts +5 -0
- package/dist/types/components/picker-column-internal/picker-column-internal.d.ts +102 -0
- package/dist/types/components/picker-internal/picker-internal-interfaces.d.ts +8 -0
- package/dist/types/components/picker-internal/picker-internal.d.ts +102 -0
- package/dist/types/components.d.ts +122 -154
- package/dist/types/interface.d.ts +1 -1
- package/dist/types/utils/config.d.ts +2 -2
- package/dist/types/utils/overlays.d.ts +2 -5
- package/hydrate/index.js +1205 -1350
- package/package.json +1 -1
- package/components/ion-picker-column-option.d.ts +0 -11
- package/components/ion-picker-column-option.js +0 -9
- package/components/ion-picker-legacy-column.d.ts +0 -11
- package/components/ion-picker-legacy-column.js +0 -9
- package/components/ion-picker-legacy.js +0 -309
- package/components/picker-column-option.js +0 -122
- package/components/picker-column2.js +0 -379
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +0 -104
- package/dist/collection/components/picker/test/a11y/picker.e2e.js +0 -15
- package/dist/collection/components/picker/test/custom/picker.e2e.js +0 -85
- package/dist/collection/components/picker-column/test/disabled/picker-column.e2e.js +0 -91
- package/dist/collection/components/picker-column/test/slots/picker-column.e2e.js +0 -39
- package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -87
- package/dist/collection/components/picker-column-option/picker-column-option.js +0 -173
- package/dist/collection/components/picker-column-option/test/a11y/picker-column-option.e2e.js +0 -18
- package/dist/collection/components/picker-column-option/test/basic/picker-column-option.e2e.js +0 -37
- package/dist/collection/components/picker-column-option/test/picker-column-option.spec.js +0 -29
- package/dist/collection/components/picker-legacy/picker.js +0 -817
- package/dist/collection/components/picker-legacy/test/basic/picker.e2e.js +0 -25
- package/dist/collection/components/picker-legacy-column/picker-column.js +0 -419
- package/dist/collection/components/title/test/title.spec.js +0 -132
- package/dist/esm/ion-picker-column-option.entry.js +0 -100
- package/dist/esm-es5/ion-picker-column-option.entry.js +0 -4
- package/dist/esm-es5/ion-picker-column.entry.js +0 -4
- package/dist/esm-es5/ion-picker.entry.js +0 -4
- package/dist/esm-es5/overlays-fbc5cab5.js +0 -4
- package/dist/ionic/p-17da5ed1.entry.js +0 -4
- package/dist/ionic/p-36d194c5.entry.js +0 -4
- package/dist/ionic/p-3993ae66.entry.js +0 -4
- package/dist/ionic/p-5a1aac13.system.entry.js +0 -4
- package/dist/ionic/p-6e70dd1a.system.entry.js +0 -4
- package/dist/ionic/p-8e42850f.entry.js +0 -4
- package/dist/ionic/p-8fa6583d.system.js +0 -4
- package/dist/ionic/p-91af3c52.system.entry.js +0 -4
- package/dist/ionic/p-afcf4620.entry.js +0 -4
- package/dist/ionic/p-b3d0a3d6.system.entry.js +0 -4
- package/dist/ionic/p-b7010c69.system.entry.js +0 -4
- package/dist/ionic/p-c41bff4e.system.entry.js +0 -4
- package/dist/ionic/p-ca8938f4.js +0 -4
- package/dist/ionic/p-cde52378.system.entry.js +0 -4
- package/dist/ionic/p-ea74e0c6.entry.js +0 -4
- package/dist/ionic/p-ffd5dba4.system.entry.js +0 -4
- package/dist/types/components/picker/picker-interfaces.d.ts +0 -8
- package/dist/types/components/picker-column/picker-column-interfaces.d.ts +0 -4
- package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -66
- package/dist/types/components/picker-legacy/picker.d.ts +0 -158
- package/dist/types/components/picker-legacy-column/picker-column.d.ts +0 -46
- /package/dist/collection/components/{picker-legacy → picker}/animations/ios.enter.js +0 -0
- /package/dist/collection/components/{picker-legacy → picker}/animations/ios.leave.js +0 -0
- /package/dist/collection/components/picker/{picker-interfaces.js → picker-interface.js} +0 -0
- /package/dist/collection/components/{picker-legacy-column → picker-column}/picker-column.ios.css +0 -0
- /package/dist/collection/components/{picker-legacy-column → picker-column}/test/test.utils.js +0 -0
- /package/dist/collection/components/{picker-column/picker-column-interfaces.js → picker-column-internal/picker-column-internal-interfaces.js} +0 -0
- /package/dist/collection/components/{picker-legacy/picker-interface.js → picker-internal/picker-internal-interfaces.js} +0 -0
- /package/dist/esm-es5/{data-4b9508c9.js → data-f5c75b4e.js} +0 -0
- /package/dist/ionic/{p-368f5215.js → p-2aea8b1e.js} +0 -0
- /package/dist/ionic/{p-f58981c2.system.js → p-82e3d633.system.js} +0 -0
- /package/dist/types/components/{picker-legacy → picker}/animations/ios.enter.d.ts +0 -0
- /package/dist/types/components/{picker-legacy → picker}/animations/ios.leave.d.ts +0 -0
- /package/dist/types/components/{picker-legacy → picker}/picker-interface.d.ts +0 -0
- /package/dist/types/components/{picker-legacy-column → picker-column}/test/test.utils.d.ts +0 -0
|
@@ -2,16 +2,18 @@
|
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
4
|
import { r as registerInstance, d as createEvent, h, H as Host, f as getElement } from './index-08d686eb.js';
|
|
5
|
-
import { d as doc } from './index-7a14ecec.js';
|
|
6
5
|
import { r as raf, g as getElementRoot } from './helpers-ae653409.js';
|
|
7
6
|
import { a as hapticSelectionStart, b as hapticSelectionChanged, h as hapticSelectionEnd } from './haptic-152c4172.js';
|
|
8
7
|
import { a as isPlatform, b as getIonMode } from './ionic-global-c0cda98e.js';
|
|
9
8
|
import { c as createColorClasses } from './theme-01f3f29c.js';
|
|
10
9
|
import './capacitor-b0e5fe83.js';
|
|
10
|
+
import './index-7a14ecec.js';
|
|
11
11
|
|
|
12
|
-
const
|
|
12
|
+
const pickerColumnInternalIosCss = ":host{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;height:200px;outline:none;font-size:22px;-webkit-scroll-snap-type:y mandatory;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory;overflow-x:hidden;overflow-y:scroll;scrollbar-width:none;text-align:center}:host::-webkit-scrollbar{display:none}:host .picker-item{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden;scroll-snap-align:center}:host .picker-item-empty,:host .picker-item[disabled]{cursor:default}:host .picker-item-empty,:host(:not([disabled])) .picker-item[disabled]{scroll-snap-align:none}:host([disabled]){overflow-y:hidden}:host .picker-item[disabled]{opacity:0.4}:host(.picker-column-active) .picker-item.picker-item-active{color:var(--ion-color-base)}@media (any-hover: hover){:host(:focus){outline:none;background:rgba(var(--ion-color-base-rgb), 0.2)}}";
|
|
13
13
|
|
|
14
|
-
const
|
|
14
|
+
const pickerColumnInternalMdCss = ":host{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;height:200px;outline:none;font-size:22px;-webkit-scroll-snap-type:y mandatory;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory;overflow-x:hidden;overflow-y:scroll;scrollbar-width:none;text-align:center}:host::-webkit-scrollbar{display:none}:host .picker-item{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden;scroll-snap-align:center}:host .picker-item-empty,:host .picker-item[disabled]{cursor:default}:host .picker-item-empty,:host(:not([disabled])) .picker-item[disabled]{scroll-snap-align:none}:host([disabled]){overflow-y:hidden}:host .picker-item[disabled]{opacity:0.4}:host(.picker-column-active) .picker-item.picker-item-active{color:var(--ion-color-base)}@media (any-hover: hover){:host(:focus){outline:none;background:rgba(var(--ion-color-base-rgb), 0.2)}}:host .picker-item-active{color:var(--ion-color-base)}";
|
|
15
|
+
|
|
16
|
+
const PickerColumnInternal = class {
|
|
15
17
|
constructor(hostRef) {
|
|
16
18
|
registerInstance(this, hostRef);
|
|
17
19
|
this.ionChange = createEvent(this, "ionChange", 7);
|
|
@@ -19,11 +21,11 @@ const PickerColumn = class {
|
|
|
19
21
|
this.isColumnVisible = false;
|
|
20
22
|
this.canExitInputMode = true;
|
|
21
23
|
this.centerPickerItemInView = (target, smooth = true, canExitInputMode = true) => {
|
|
22
|
-
const {
|
|
23
|
-
if (isColumnVisible
|
|
24
|
+
const { el, isColumnVisible } = this;
|
|
25
|
+
if (isColumnVisible) {
|
|
24
26
|
// (Vertical offset from parent) - (three empty picker rows) + (half the height of the target to ensure the scroll triggers)
|
|
25
27
|
const top = target.offsetTop - 3 * target.clientHeight + target.clientHeight / 2;
|
|
26
|
-
if (
|
|
28
|
+
if (el.scrollTop !== top) {
|
|
27
29
|
/**
|
|
28
30
|
* Setting this flag prevents input
|
|
29
31
|
* mode from exiting in the picker column's
|
|
@@ -32,7 +34,7 @@ const PickerColumn = class {
|
|
|
32
34
|
* of these can cause a scroll to occur.
|
|
33
35
|
*/
|
|
34
36
|
this.canExitInputMode = canExitInputMode;
|
|
35
|
-
|
|
37
|
+
el.scroll({
|
|
36
38
|
top,
|
|
37
39
|
left: 0,
|
|
38
40
|
behavior: smooth ? 'smooth' : undefined,
|
|
@@ -43,9 +45,11 @@ const PickerColumn = class {
|
|
|
43
45
|
this.setPickerItemActiveState = (item, isActive) => {
|
|
44
46
|
if (isActive) {
|
|
45
47
|
item.classList.add(PICKER_ITEM_ACTIVE_CLASS);
|
|
48
|
+
item.part.add(PICKER_ITEM_ACTIVE_PART);
|
|
46
49
|
}
|
|
47
50
|
else {
|
|
48
51
|
item.classList.remove(PICKER_ITEM_ACTIVE_CLASS);
|
|
52
|
+
item.part.remove(PICKER_ITEM_ACTIVE_PART);
|
|
49
53
|
}
|
|
50
54
|
};
|
|
51
55
|
/**
|
|
@@ -99,13 +103,11 @@ const PickerColumn = class {
|
|
|
99
103
|
* be disabled on Android.
|
|
100
104
|
*/
|
|
101
105
|
const enableHaptics = isPlatform('ios');
|
|
102
|
-
const { el
|
|
106
|
+
const { el } = this;
|
|
103
107
|
let timeout;
|
|
104
108
|
let activeEl = this.activeItem;
|
|
105
109
|
const scrollCallback = () => {
|
|
106
110
|
raf(() => {
|
|
107
|
-
if (!scrollEl)
|
|
108
|
-
return;
|
|
109
111
|
if (timeout) {
|
|
110
112
|
clearTimeout(timeout);
|
|
111
113
|
timeout = undefined;
|
|
@@ -118,54 +120,21 @@ const PickerColumn = class {
|
|
|
118
120
|
* Select item in the center of the column
|
|
119
121
|
* which is the month/year that we want to select
|
|
120
122
|
*/
|
|
121
|
-
const bbox =
|
|
123
|
+
const bbox = el.getBoundingClientRect();
|
|
122
124
|
const centerX = bbox.x + bbox.width / 2;
|
|
123
125
|
const centerY = bbox.y + bbox.height / 2;
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
* This means that if an ion-backdrop is overlaying the
|
|
127
|
-
* picker then the appropriate picker column option will
|
|
128
|
-
* not be selected. To account for this, we use elementsFromPoint
|
|
129
|
-
* and use an Array.find to find the appropriate column option
|
|
130
|
-
* at that point.
|
|
131
|
-
*
|
|
132
|
-
* Additionally, the picker column could be used in the
|
|
133
|
-
* Shadow DOM (i.e. in ion-datetime) so we need to make
|
|
134
|
-
* sure we are choosing the correct host otherwise
|
|
135
|
-
* the elements returns by elementsFromPoint will be
|
|
136
|
-
* retargeted. To account for this, we check to see
|
|
137
|
-
* if the picker column has a parent shadow root. If
|
|
138
|
-
* so, we use that shadow root when doing elementsFromPoint.
|
|
139
|
-
* Otherwise, we just use the document.
|
|
140
|
-
*/
|
|
141
|
-
const rootNode = el.getRootNode();
|
|
142
|
-
const hasParentShadow = rootNode instanceof ShadowRoot;
|
|
143
|
-
const referenceNode = hasParentShadow ? rootNode : doc;
|
|
144
|
-
/**
|
|
145
|
-
* If the reference node is undefined
|
|
146
|
-
* then it's likely that doc is undefined
|
|
147
|
-
* due to being in an SSR environment.
|
|
148
|
-
*/
|
|
149
|
-
if (referenceNode === undefined) {
|
|
150
|
-
return;
|
|
151
|
-
}
|
|
152
|
-
const elementsAtPoint = referenceNode.elementsFromPoint(centerX, centerY);
|
|
153
|
-
/**
|
|
154
|
-
* elementsFromPoint can returns multiple elements
|
|
155
|
-
* so find the relevant picker column option if one exists.
|
|
156
|
-
*/
|
|
157
|
-
const newActiveElement = elementsAtPoint.find((el) => el.tagName === 'ION-PICKER-COLUMN-OPTION');
|
|
158
|
-
if (activeEl !== undefined) {
|
|
126
|
+
const activeElement = el.shadowRoot.elementFromPoint(centerX, centerY);
|
|
127
|
+
if (activeEl !== null) {
|
|
159
128
|
this.setPickerItemActiveState(activeEl, false);
|
|
160
129
|
}
|
|
161
|
-
if (
|
|
130
|
+
if (activeElement === null || activeElement.disabled) {
|
|
162
131
|
return;
|
|
163
132
|
}
|
|
164
133
|
/**
|
|
165
134
|
* If we are selecting a new value,
|
|
166
135
|
* we need to run haptics again.
|
|
167
136
|
*/
|
|
168
|
-
if (
|
|
137
|
+
if (activeElement !== activeEl) {
|
|
169
138
|
enableHaptics && hapticSelectionChanged();
|
|
170
139
|
if (this.canExitInputMode) {
|
|
171
140
|
/**
|
|
@@ -182,8 +151,8 @@ const PickerColumn = class {
|
|
|
182
151
|
this.exitInputMode();
|
|
183
152
|
}
|
|
184
153
|
}
|
|
185
|
-
activeEl =
|
|
186
|
-
this.setPickerItemActiveState(
|
|
154
|
+
activeEl = activeElement;
|
|
155
|
+
this.setPickerItemActiveState(activeElement, true);
|
|
187
156
|
timeout = setTimeout(() => {
|
|
188
157
|
this.isScrolling = false;
|
|
189
158
|
enableHaptics && hapticSelectionEnd();
|
|
@@ -205,7 +174,20 @@ const PickerColumn = class {
|
|
|
205
174
|
* case, we should exit input mode.
|
|
206
175
|
*/
|
|
207
176
|
this.canExitInputMode = true;
|
|
208
|
-
|
|
177
|
+
const dataIndex = activeElement.getAttribute('data-index');
|
|
178
|
+
/**
|
|
179
|
+
* If no value it is
|
|
180
|
+
* possible we hit one of the
|
|
181
|
+
* empty padding columns.
|
|
182
|
+
*/
|
|
183
|
+
if (dataIndex === null) {
|
|
184
|
+
return;
|
|
185
|
+
}
|
|
186
|
+
const index = parseInt(dataIndex, 10);
|
|
187
|
+
const selectedItem = this.items[index];
|
|
188
|
+
if (selectedItem.value !== this.value) {
|
|
189
|
+
this.setValue(selectedItem.value);
|
|
190
|
+
}
|
|
209
191
|
}, 250);
|
|
210
192
|
});
|
|
211
193
|
};
|
|
@@ -214,11 +196,9 @@ const PickerColumn = class {
|
|
|
214
196
|
* does not fire when component is initially shown.
|
|
215
197
|
*/
|
|
216
198
|
raf(() => {
|
|
217
|
-
|
|
218
|
-
return;
|
|
219
|
-
scrollEl.addEventListener('scroll', scrollCallback);
|
|
199
|
+
el.addEventListener('scroll', scrollCallback);
|
|
220
200
|
this.destroyScrollListener = () => {
|
|
221
|
-
|
|
201
|
+
el.removeEventListener('scroll', scrollCallback);
|
|
222
202
|
};
|
|
223
203
|
});
|
|
224
204
|
};
|
|
@@ -246,6 +226,7 @@ const PickerColumn = class {
|
|
|
246
226
|
};
|
|
247
227
|
this.isActive = false;
|
|
248
228
|
this.disabled = false;
|
|
229
|
+
this.items = [];
|
|
249
230
|
this.value = undefined;
|
|
250
231
|
this.color = 'primary';
|
|
251
232
|
this.numericInput = false;
|
|
@@ -256,7 +237,7 @@ const PickerColumn = class {
|
|
|
256
237
|
* Only scroll the active item into view when the picker column
|
|
257
238
|
* is actively visible to the user.
|
|
258
239
|
*/
|
|
259
|
-
this.scrollActiveItemIntoView(
|
|
240
|
+
this.scrollActiveItemIntoView();
|
|
260
241
|
}
|
|
261
242
|
}
|
|
262
243
|
/**
|
|
@@ -294,33 +275,36 @@ const PickerColumn = class {
|
|
|
294
275
|
}
|
|
295
276
|
};
|
|
296
277
|
new IntersectionObserver(visibleCallback, { threshold: 0.001 }).observe(this.el);
|
|
297
|
-
const parentEl = (this.parentEl = this.el.closest('ion-picker'));
|
|
278
|
+
const parentEl = (this.parentEl = this.el.closest('ion-picker-internal'));
|
|
298
279
|
if (parentEl !== null) {
|
|
299
280
|
// TODO(FW-2832): type
|
|
300
281
|
parentEl.addEventListener('ionInputModeChange', (ev) => this.inputModeChange(ev));
|
|
301
282
|
}
|
|
302
283
|
}
|
|
303
284
|
componentDidRender() {
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
285
|
+
var _a;
|
|
286
|
+
const { activeItem, items, isColumnVisible, value } = this;
|
|
287
|
+
if (isColumnVisible) {
|
|
288
|
+
if (activeItem) {
|
|
289
|
+
this.scrollActiveItemIntoView();
|
|
290
|
+
}
|
|
291
|
+
else if (((_a = items[0]) === null || _a === void 0 ? void 0 : _a.value) !== value) {
|
|
292
|
+
/**
|
|
293
|
+
* If the picker column does not have an active item and the current value
|
|
294
|
+
* does not match the first item in the picker column, that means
|
|
295
|
+
* the value is out of bounds. In this case, we assign the value to the
|
|
296
|
+
* first item to match the scroll position of the column.
|
|
297
|
+
*
|
|
298
|
+
*/
|
|
299
|
+
this.setValue(items[0].value);
|
|
316
300
|
}
|
|
317
301
|
}
|
|
318
302
|
}
|
|
319
303
|
/** @internal */
|
|
320
|
-
async scrollActiveItemIntoView(
|
|
304
|
+
async scrollActiveItemIntoView() {
|
|
321
305
|
const activeEl = this.activeItem;
|
|
322
306
|
if (activeEl) {
|
|
323
|
-
this.centerPickerItemInView(activeEl,
|
|
307
|
+
this.centerPickerItemInView(activeEl, false, false);
|
|
324
308
|
}
|
|
325
309
|
}
|
|
326
310
|
/**
|
|
@@ -331,53 +315,52 @@ const PickerColumn = class {
|
|
|
331
315
|
* @internal
|
|
332
316
|
*/
|
|
333
317
|
async setValue(value) {
|
|
334
|
-
|
|
335
|
-
return;
|
|
336
|
-
}
|
|
318
|
+
const { items } = this;
|
|
337
319
|
this.value = value;
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
* Sets focus on the scrollable container within the picker column.
|
|
342
|
-
* Use this method instead of the global `pickerColumn.focus()`.
|
|
343
|
-
*/
|
|
344
|
-
async setFocus() {
|
|
345
|
-
if (this.scrollEl) {
|
|
346
|
-
this.scrollEl.focus();
|
|
320
|
+
const findItem = items.find((item) => item.value === value && item.disabled !== true);
|
|
321
|
+
if (findItem) {
|
|
322
|
+
this.ionChange.emit(findItem);
|
|
347
323
|
}
|
|
348
324
|
}
|
|
349
325
|
get activeItem() {
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
* If the whole picker column is disabled, the current value should appear active
|
|
355
|
-
* If the current value item is specifically disabled, it should not appear active
|
|
356
|
-
*/
|
|
357
|
-
if (!this.disabled && option.disabled) {
|
|
358
|
-
return false;
|
|
359
|
-
}
|
|
360
|
-
return option.value === value;
|
|
361
|
-
});
|
|
326
|
+
// If the whole picker column is disabled, the current value should appear active
|
|
327
|
+
// If the current value item is specifically disabled, it should not appear active
|
|
328
|
+
const selector = `.picker-item[data-value="${this.value}"]${this.disabled ? '' : ':not([disabled])'}`;
|
|
329
|
+
return getElementRoot(this.el).querySelector(selector);
|
|
362
330
|
}
|
|
363
331
|
render() {
|
|
364
|
-
const { color, disabled, isActive, numericInput } = this;
|
|
332
|
+
const { items, color, disabled: pickerDisabled, isActive, numericInput } = this;
|
|
365
333
|
const mode = getIonMode(this);
|
|
366
|
-
|
|
334
|
+
/**
|
|
335
|
+
* exportparts is needed so ion-datetime can expose the parts
|
|
336
|
+
* from two layers of shadow nesting. If this causes problems,
|
|
337
|
+
* the attribute can be moved to datetime.tsx and set on every
|
|
338
|
+
* instance of ion-picker-column-internal there instead.
|
|
339
|
+
*/
|
|
340
|
+
return (h(Host, { exportparts: `${PICKER_ITEM_PART}, ${PICKER_ITEM_ACTIVE_PART}`, disabled: pickerDisabled, tabindex: pickerDisabled ? null : 0, class: createColorClasses(color, {
|
|
367
341
|
[mode]: true,
|
|
368
342
|
['picker-column-active']: isActive,
|
|
369
343
|
['picker-column-numeric-input']: numericInput,
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
344
|
+
}) }, h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), items.map((item, index) => {
|
|
345
|
+
const isItemDisabled = pickerDisabled || item.disabled || false;
|
|
346
|
+
return (h("button", { tabindex: "-1", class: {
|
|
347
|
+
'picker-item': true,
|
|
348
|
+
}, "data-value": item.value, "data-index": index, onClick: (ev) => {
|
|
349
|
+
this.centerPickerItemInView(ev.target, true);
|
|
350
|
+
}, disabled: isItemDisabled, part: PICKER_ITEM_PART }, item.text));
|
|
351
|
+
}), h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0")));
|
|
374
352
|
}
|
|
375
353
|
get el() { return getElement(this); }
|
|
376
354
|
static get watchers() { return {
|
|
377
355
|
"value": ["valueChange"]
|
|
378
356
|
}; }
|
|
379
357
|
};
|
|
380
|
-
const PICKER_ITEM_ACTIVE_CLASS = '
|
|
381
|
-
|
|
358
|
+
const PICKER_ITEM_ACTIVE_CLASS = 'picker-item-active';
|
|
359
|
+
const PICKER_ITEM_PART = 'wheel-item';
|
|
360
|
+
const PICKER_ITEM_ACTIVE_PART = 'active';
|
|
361
|
+
PickerColumnInternal.style = {
|
|
362
|
+
ios: pickerColumnInternalIosCss,
|
|
363
|
+
md: pickerColumnInternalMdCss
|
|
364
|
+
};
|
|
382
365
|
|
|
383
|
-
export {
|
|
366
|
+
export { PickerColumnInternal as ion_picker_column_internal };
|
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
import { r as registerInstance, d as createEvent, h, H as Host, f as getElement } from './index-08d686eb.js';
|
|
5
5
|
import { g as getElementRoot } from './helpers-ae653409.js';
|
|
6
6
|
|
|
7
|
-
const
|
|
7
|
+
const pickerInternalIosCss = ":host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:200px;direction:ltr;z-index:0}:host .picker-before,:host .picker-after{position:absolute;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:1;pointer-events:none}:host .picker-before{top:0;height:83px}@supports (inset-inline-start: 0){:host .picker-before{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host .picker-before{left:0}:host-context([dir=rtl]) .picker-before{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)) .picker-before{left:unset;right:unset;right:0}}}:host .picker-after{top:116px;height:84px}@supports (inset-inline-start: 0){:host .picker-after{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host .picker-after{left:0}:host-context([dir=rtl]) .picker-after{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)) .picker-after{left:unset;right:unset;right:0}}}:host .picker-highlight{border-radius:8px;left:0;right:0;top:50%;bottom:0;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;position:absolute;width:calc(100% - 16px);height:34px;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:var(--wheel-highlight-background);z-index:-1}:host input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}:host ::slotted(ion-picker-column-internal:first-of-type){text-align:start}:host ::slotted(ion-picker-column-internal:last-of-type){text-align:end}:host ::slotted(ion-picker-column-internal:only-child){text-align:center}:host .picker-before{background:-webkit-gradient(linear, left top, left bottom, color-stop(20%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), to(rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8)));background:linear-gradient(to bottom, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8) 100%)}:host .picker-after{background:-webkit-gradient(linear, left bottom, left top, color-stop(20%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), to(rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8)));background:linear-gradient(to top, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8) 100%)}:host .picker-highlight{background:var(--wheel-highlight-background, var(--ion-color-step-150, #eeeeef))}";
|
|
8
8
|
|
|
9
|
-
const
|
|
9
|
+
const pickerInternalMdCss = ":host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:200px;direction:ltr;z-index:0}:host .picker-before,:host .picker-after{position:absolute;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:1;pointer-events:none}:host .picker-before{top:0;height:83px}@supports (inset-inline-start: 0){:host .picker-before{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host .picker-before{left:0}:host-context([dir=rtl]) .picker-before{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)) .picker-before{left:unset;right:unset;right:0}}}:host .picker-after{top:116px;height:84px}@supports (inset-inline-start: 0){:host .picker-after{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host .picker-after{left:0}:host-context([dir=rtl]) .picker-after{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)) .picker-after{left:unset;right:unset;right:0}}}:host .picker-highlight{border-radius:8px;left:0;right:0;top:50%;bottom:0;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;position:absolute;width:calc(100% - 16px);height:34px;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:var(--wheel-highlight-background);z-index:-1}:host input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}:host ::slotted(ion-picker-column-internal:first-of-type){text-align:start}:host ::slotted(ion-picker-column-internal:last-of-type){text-align:end}:host ::slotted(ion-picker-column-internal:only-child){text-align:center}:host .picker-before{background:-webkit-gradient(linear, left top, left bottom, color-stop(20%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), color-stop(90%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0)));background:linear-gradient(to bottom, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0) 90%)}:host .picker-after{background:-webkit-gradient(linear, left bottom, left top, color-stop(30%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), color-stop(90%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0)));background:linear-gradient(to top, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 30%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0) 90%)}";
|
|
10
10
|
|
|
11
|
-
const
|
|
11
|
+
const PickerInternal = class {
|
|
12
12
|
constructor(hostRef) {
|
|
13
13
|
registerInstance(this, hostRef);
|
|
14
14
|
this.ionInputModeChange = createEvent(this, "ionInputModeChange", 7);
|
|
@@ -40,7 +40,7 @@ const Picker = class {
|
|
|
40
40
|
this.onFocusOut = (ev) => {
|
|
41
41
|
// TODO(FW-2832): type
|
|
42
42
|
const { relatedTarget } = ev;
|
|
43
|
-
if (!relatedTarget || (relatedTarget.tagName !== 'ION-PICKER-COLUMN' && relatedTarget !== this.inputEl)) {
|
|
43
|
+
if (!relatedTarget || (relatedTarget.tagName !== 'ION-PICKER-COLUMN-INTERNAL' && relatedTarget !== this.inputEl)) {
|
|
44
44
|
this.exitInputMode();
|
|
45
45
|
}
|
|
46
46
|
};
|
|
@@ -58,7 +58,7 @@ const Picker = class {
|
|
|
58
58
|
* make sure that this function only ever runs when
|
|
59
59
|
* focusing a picker column.
|
|
60
60
|
*/
|
|
61
|
-
if (target.tagName !== 'ION-PICKER-COLUMN') {
|
|
61
|
+
if (target.tagName !== 'ION-PICKER-COLUMN-INTERNAL') {
|
|
62
62
|
return;
|
|
63
63
|
}
|
|
64
64
|
/**
|
|
@@ -125,7 +125,7 @@ const Picker = class {
|
|
|
125
125
|
* since we just tapped the highlight and
|
|
126
126
|
* not a column.
|
|
127
127
|
*/
|
|
128
|
-
if (ev.target.tagName === 'ION-PICKER-COLUMN') {
|
|
128
|
+
if (ev.target.tagName === 'ION-PICKER-COLUMN-INTERNAL') {
|
|
129
129
|
/**
|
|
130
130
|
* If user taps 2 different columns
|
|
131
131
|
* then we should just switch to input mode
|
|
@@ -159,7 +159,7 @@ const Picker = class {
|
|
|
159
159
|
* If there is only 1 numeric input column
|
|
160
160
|
* then we should skip multi column input.
|
|
161
161
|
*/
|
|
162
|
-
const columns = el.querySelectorAll('ion-picker-column.picker-column-numeric-input');
|
|
162
|
+
const columns = el.querySelectorAll('ion-picker-column-internal.picker-column-numeric-input');
|
|
163
163
|
const columnEl = columns.length === 1 ? ev.target : undefined;
|
|
164
164
|
this.actionOnClick = () => {
|
|
165
165
|
this.enterInputMode(columnEl);
|
|
@@ -193,7 +193,7 @@ const Picker = class {
|
|
|
193
193
|
* Only active input mode if there is at
|
|
194
194
|
* least one column that accepts numeric input.
|
|
195
195
|
*/
|
|
196
|
-
const hasInputColumn = el.querySelector('ion-picker-column.picker-column-numeric-input');
|
|
196
|
+
const hasInputColumn = el.querySelector('ion-picker-column-internal.picker-column-numeric-input');
|
|
197
197
|
if (!hasInputColumn) {
|
|
198
198
|
return;
|
|
199
199
|
}
|
|
@@ -246,7 +246,7 @@ const Picker = class {
|
|
|
246
246
|
if (!inputEl || !inputModeColumn) {
|
|
247
247
|
return;
|
|
248
248
|
}
|
|
249
|
-
const
|
|
249
|
+
const values = inputModeColumn.items.filter((item) => item.disabled !== true);
|
|
250
250
|
/**
|
|
251
251
|
* If users pause for a bit, the search
|
|
252
252
|
* value should be reset similar to how a
|
|
@@ -286,13 +286,8 @@ const Picker = class {
|
|
|
286
286
|
* 0+(?=[1-9]) --> Match 1 or more zeros that are followed by 1-9
|
|
287
287
|
* 0+(?=0$) --> Match 1 or more zeros that must be followed by one 0 and end.
|
|
288
288
|
*/
|
|
289
|
-
const findItemFromCompleteValue =
|
|
290
|
-
|
|
291
|
-
* Keyboard entry is currently only used inside of Datetime
|
|
292
|
-
* where we guarantee textContent is set.
|
|
293
|
-
* If we end up exposing this feature publicly we should revisit this assumption.
|
|
294
|
-
*/
|
|
295
|
-
const parsedText = textContent.replace(/^0+(?=[1-9])|0+(?=0$)/, '');
|
|
289
|
+
const findItemFromCompleteValue = values.find(({ text }) => {
|
|
290
|
+
const parsedText = text.replace(/^0+(?=[1-9])|0+(?=0$)/, '');
|
|
296
291
|
return parsedText === inputEl.value;
|
|
297
292
|
});
|
|
298
293
|
if (findItemFromCompleteValue) {
|
|
@@ -317,11 +312,9 @@ const Picker = class {
|
|
|
317
312
|
*/
|
|
318
313
|
this.searchColumn = (colEl, value, zeroBehavior = 'start') => {
|
|
319
314
|
const behavior = zeroBehavior === 'start' ? /^0+/ : /0$/;
|
|
320
|
-
const
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
if (option) {
|
|
324
|
-
colEl.setValue(option.value);
|
|
315
|
+
const item = colEl.items.find(({ text, disabled }) => disabled !== true && text.replace(behavior, '') === value);
|
|
316
|
+
if (item) {
|
|
317
|
+
colEl.setValue(item.value);
|
|
325
318
|
}
|
|
326
319
|
};
|
|
327
320
|
this.selectMultiColumn = () => {
|
|
@@ -329,7 +322,7 @@ const Picker = class {
|
|
|
329
322
|
if (!inputEl) {
|
|
330
323
|
return;
|
|
331
324
|
}
|
|
332
|
-
const numericPickers = Array.from(el.querySelectorAll('ion-picker-column')).filter((col) => col.numericInput);
|
|
325
|
+
const numericPickers = Array.from(el.querySelectorAll('ion-picker-column-internal')).filter((col) => col.numericInput);
|
|
333
326
|
const firstColumn = numericPickers[0];
|
|
334
327
|
const lastColumn = numericPickers[1];
|
|
335
328
|
let value = inputEl.value;
|
|
@@ -481,9 +474,9 @@ const Picker = class {
|
|
|
481
474
|
}
|
|
482
475
|
get el() { return getElement(this); }
|
|
483
476
|
};
|
|
484
|
-
|
|
485
|
-
ios:
|
|
486
|
-
md:
|
|
477
|
+
PickerInternal.style = {
|
|
478
|
+
ios: pickerInternalIosCss,
|
|
479
|
+
md: pickerInternalMdCss
|
|
487
480
|
};
|
|
488
481
|
|
|
489
|
-
export {
|
|
482
|
+
export { PickerInternal as ion_picker_internal };
|
|
@@ -6,7 +6,7 @@ import { C as CoreDelegate, a as attachComponent, d as detachComponent } from '.
|
|
|
6
6
|
import { r as raf, g as getElementRoot, a as addEventListener, m as hasLazyBuild } from './helpers-ae653409.js';
|
|
7
7
|
import { c as createLockController } from './lock-controller-316928be.js';
|
|
8
8
|
import { p as printIonWarning } from './index-9b0d46f4.js';
|
|
9
|
-
import { B as BACKDROP, j as prepareOverlay, k as setOverlayId, f as present, o as focusFirstDescendant, g as dismiss, h as eventMethod } from './overlays-
|
|
9
|
+
import { B as BACKDROP, j as prepareOverlay, k as setOverlayId, f as present, o as focusFirstDescendant, g as dismiss, h as eventMethod } from './overlays-d23ea6e1.js';
|
|
10
10
|
import { b as getIonMode, a as isPlatform } from './ionic-global-c0cda98e.js';
|
|
11
11
|
import { g as getClassMap } from './theme-01f3f29c.js';
|
|
12
12
|
import { e as deepReady, w as waitForMount } from './index-d8817fb0.js';
|
|
@@ -6,9 +6,9 @@ import { l as clamp } from './helpers-ae653409.js';
|
|
|
6
6
|
import { c as createColorClasses } from './theme-01f3f29c.js';
|
|
7
7
|
import { c as config, b as getIonMode } from './ionic-global-c0cda98e.js';
|
|
8
8
|
|
|
9
|
-
const progressBarIosCss = ":host{--background:rgba(var(--ion-color-primary-rgb,
|
|
9
|
+
const progressBarIosCss = ":host{--background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.3);--progress-background:var(--ion-color-primary, #0054e9);--buffer-background:var(--background);display:block;position:relative;width:100%;contain:strict;direction:ltr;overflow:hidden}.progress,.progress-indeterminate,.indeterminate-bar-primary,.indeterminate-bar-secondary,.progress-buffer-bar{left:0;right:0;top:0;bottom:0;position:absolute;width:100%;height:100%}.buffer-circles-container,.buffer-circles{left:0;right:0;top:0;bottom:0;position:absolute}.buffer-circles{right:-10px;left:-10px;}.progress,.progress-buffer-bar,.buffer-circles-container{-webkit-transform-origin:left top;transform-origin:left top;-webkit-transition:-webkit-transform 150ms linear;transition:-webkit-transform 150ms linear;transition:transform 150ms linear;transition:transform 150ms linear, -webkit-transform 150ms linear}.progress,.progress-indeterminate{background:var(--progress-background);z-index:2}.progress-buffer-bar{background:var(--buffer-background);z-index:1}.buffer-circles-container{overflow:hidden}.indeterminate-bar-primary{top:0;right:0;bottom:0;left:-145.166611%;-webkit-animation:primary-indeterminate-translate 2s infinite linear;animation:primary-indeterminate-translate 2s infinite linear}.indeterminate-bar-primary .progress-indeterminate{-webkit-animation:primary-indeterminate-scale 2s infinite linear;animation:primary-indeterminate-scale 2s infinite linear;-webkit-animation-play-state:inherit;animation-play-state:inherit}.indeterminate-bar-secondary{top:0;right:0;bottom:0;left:-54.888891%;-webkit-animation:secondary-indeterminate-translate 2s infinite linear;animation:secondary-indeterminate-translate 2s infinite linear}.indeterminate-bar-secondary .progress-indeterminate{-webkit-animation:secondary-indeterminate-scale 2s infinite linear;animation:secondary-indeterminate-scale 2s infinite linear;-webkit-animation-play-state:inherit;animation-play-state:inherit}.buffer-circles{background-image:radial-gradient(ellipse at center, var(--buffer-background) 0%, var(--buffer-background) 30%, transparent 30%);background-repeat:repeat-x;background-position:5px center;background-size:10px 10px;z-index:0;-webkit-animation:buffering 450ms infinite linear;animation:buffering 450ms infinite linear}:host(.progress-bar-reversed){-webkit-transform:scaleX(-1);transform:scaleX(-1)}:host(.progress-paused) .indeterminate-bar-secondary,:host(.progress-paused) .indeterminate-bar-primary,:host(.progress-paused) .buffer-circles{-webkit-animation-play-state:paused;animation-play-state:paused}:host(.ion-color) .progress-buffer-bar{background:rgba(var(--ion-color-base-rgb), 0.3)}:host(.ion-color) .buffer-circles{background-image:radial-gradient(ellipse at center, rgba(var(--ion-color-base-rgb), 0.3) 0%, rgba(var(--ion-color-base-rgb), 0.3) 30%, transparent 30%)}:host(.ion-color) .progress,:host(.ion-color) .progress-indeterminate{background:var(--ion-color-base)}@-webkit-keyframes primary-indeterminate-translate{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{-webkit-animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);-webkit-transform:translateX(0);transform:translateX(0)}59.15%{-webkit-animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);-webkit-transform:translateX(83.67142%);transform:translateX(83.67142%)}100%{-webkit-transform:translateX(200.611057%);transform:translateX(200.611057%)}}@keyframes primary-indeterminate-translate{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{-webkit-animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);-webkit-transform:translateX(0);transform:translateX(0)}59.15%{-webkit-animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);-webkit-transform:translateX(83.67142%);transform:translateX(83.67142%)}100%{-webkit-transform:translateX(200.611057%);transform:translateX(200.611057%)}}@-webkit-keyframes primary-indeterminate-scale{0%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}36.65%{-webkit-animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}69.15%{-webkit-animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);-webkit-transform:scaleX(0.661479);transform:scaleX(0.661479)}100%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}}@keyframes primary-indeterminate-scale{0%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}36.65%{-webkit-animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}69.15%{-webkit-animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);-webkit-transform:scaleX(0.661479);transform:scaleX(0.661479)}100%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}}@-webkit-keyframes secondary-indeterminate-translate{0%{-webkit-animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);-webkit-transform:translateX(0);transform:translateX(0)}25%{-webkit-animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);-webkit-transform:translateX(37.651913%);transform:translateX(37.651913%)}48.35%{-webkit-animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);-webkit-transform:translateX(84.386165%);transform:translateX(84.386165%)}100%{-webkit-transform:translateX(160.277782%);transform:translateX(160.277782%)}}@keyframes secondary-indeterminate-translate{0%{-webkit-animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);-webkit-transform:translateX(0);transform:translateX(0)}25%{-webkit-animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);-webkit-transform:translateX(37.651913%);transform:translateX(37.651913%)}48.35%{-webkit-animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);-webkit-transform:translateX(84.386165%);transform:translateX(84.386165%)}100%{-webkit-transform:translateX(160.277782%);transform:translateX(160.277782%)}}@-webkit-keyframes secondary-indeterminate-scale{0%{-webkit-animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}19.15%{-webkit-animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);-webkit-transform:scaleX(0.457104);transform:scaleX(0.457104)}44.15%{-webkit-animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);-webkit-transform:scaleX(0.72796);transform:scaleX(0.72796)}100%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}}@keyframes secondary-indeterminate-scale{0%{-webkit-animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}19.15%{-webkit-animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);-webkit-transform:scaleX(0.457104);transform:scaleX(0.457104)}44.15%{-webkit-animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);-webkit-transform:scaleX(0.72796);transform:scaleX(0.72796)}100%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}}@-webkit-keyframes buffering{to{-webkit-transform:translateX(-10px);transform:translateX(-10px)}}@keyframes buffering{to{-webkit-transform:translateX(-10px);transform:translateX(-10px)}}:host{height:3px}";
|
|
10
10
|
|
|
11
|
-
const progressBarMdCss = ":host{--background:rgba(var(--ion-color-primary-rgb,
|
|
11
|
+
const progressBarMdCss = ":host{--background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.3);--progress-background:var(--ion-color-primary, #0054e9);--buffer-background:var(--background);display:block;position:relative;width:100%;contain:strict;direction:ltr;overflow:hidden}.progress,.progress-indeterminate,.indeterminate-bar-primary,.indeterminate-bar-secondary,.progress-buffer-bar{left:0;right:0;top:0;bottom:0;position:absolute;width:100%;height:100%}.buffer-circles-container,.buffer-circles{left:0;right:0;top:0;bottom:0;position:absolute}.buffer-circles{right:-10px;left:-10px;}.progress,.progress-buffer-bar,.buffer-circles-container{-webkit-transform-origin:left top;transform-origin:left top;-webkit-transition:-webkit-transform 150ms linear;transition:-webkit-transform 150ms linear;transition:transform 150ms linear;transition:transform 150ms linear, -webkit-transform 150ms linear}.progress,.progress-indeterminate{background:var(--progress-background);z-index:2}.progress-buffer-bar{background:var(--buffer-background);z-index:1}.buffer-circles-container{overflow:hidden}.indeterminate-bar-primary{top:0;right:0;bottom:0;left:-145.166611%;-webkit-animation:primary-indeterminate-translate 2s infinite linear;animation:primary-indeterminate-translate 2s infinite linear}.indeterminate-bar-primary .progress-indeterminate{-webkit-animation:primary-indeterminate-scale 2s infinite linear;animation:primary-indeterminate-scale 2s infinite linear;-webkit-animation-play-state:inherit;animation-play-state:inherit}.indeterminate-bar-secondary{top:0;right:0;bottom:0;left:-54.888891%;-webkit-animation:secondary-indeterminate-translate 2s infinite linear;animation:secondary-indeterminate-translate 2s infinite linear}.indeterminate-bar-secondary .progress-indeterminate{-webkit-animation:secondary-indeterminate-scale 2s infinite linear;animation:secondary-indeterminate-scale 2s infinite linear;-webkit-animation-play-state:inherit;animation-play-state:inherit}.buffer-circles{background-image:radial-gradient(ellipse at center, var(--buffer-background) 0%, var(--buffer-background) 30%, transparent 30%);background-repeat:repeat-x;background-position:5px center;background-size:10px 10px;z-index:0;-webkit-animation:buffering 450ms infinite linear;animation:buffering 450ms infinite linear}:host(.progress-bar-reversed){-webkit-transform:scaleX(-1);transform:scaleX(-1)}:host(.progress-paused) .indeterminate-bar-secondary,:host(.progress-paused) .indeterminate-bar-primary,:host(.progress-paused) .buffer-circles{-webkit-animation-play-state:paused;animation-play-state:paused}:host(.ion-color) .progress-buffer-bar{background:rgba(var(--ion-color-base-rgb), 0.3)}:host(.ion-color) .buffer-circles{background-image:radial-gradient(ellipse at center, rgba(var(--ion-color-base-rgb), 0.3) 0%, rgba(var(--ion-color-base-rgb), 0.3) 30%, transparent 30%)}:host(.ion-color) .progress,:host(.ion-color) .progress-indeterminate{background:var(--ion-color-base)}@-webkit-keyframes primary-indeterminate-translate{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{-webkit-animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);-webkit-transform:translateX(0);transform:translateX(0)}59.15%{-webkit-animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);-webkit-transform:translateX(83.67142%);transform:translateX(83.67142%)}100%{-webkit-transform:translateX(200.611057%);transform:translateX(200.611057%)}}@keyframes primary-indeterminate-translate{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{-webkit-animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);-webkit-transform:translateX(0);transform:translateX(0)}59.15%{-webkit-animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);-webkit-transform:translateX(83.67142%);transform:translateX(83.67142%)}100%{-webkit-transform:translateX(200.611057%);transform:translateX(200.611057%)}}@-webkit-keyframes primary-indeterminate-scale{0%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}36.65%{-webkit-animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}69.15%{-webkit-animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);-webkit-transform:scaleX(0.661479);transform:scaleX(0.661479)}100%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}}@keyframes primary-indeterminate-scale{0%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}36.65%{-webkit-animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}69.15%{-webkit-animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);-webkit-transform:scaleX(0.661479);transform:scaleX(0.661479)}100%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}}@-webkit-keyframes secondary-indeterminate-translate{0%{-webkit-animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);-webkit-transform:translateX(0);transform:translateX(0)}25%{-webkit-animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);-webkit-transform:translateX(37.651913%);transform:translateX(37.651913%)}48.35%{-webkit-animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);-webkit-transform:translateX(84.386165%);transform:translateX(84.386165%)}100%{-webkit-transform:translateX(160.277782%);transform:translateX(160.277782%)}}@keyframes secondary-indeterminate-translate{0%{-webkit-animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);-webkit-transform:translateX(0);transform:translateX(0)}25%{-webkit-animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);-webkit-transform:translateX(37.651913%);transform:translateX(37.651913%)}48.35%{-webkit-animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);-webkit-transform:translateX(84.386165%);transform:translateX(84.386165%)}100%{-webkit-transform:translateX(160.277782%);transform:translateX(160.277782%)}}@-webkit-keyframes secondary-indeterminate-scale{0%{-webkit-animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}19.15%{-webkit-animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);-webkit-transform:scaleX(0.457104);transform:scaleX(0.457104)}44.15%{-webkit-animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);-webkit-transform:scaleX(0.72796);transform:scaleX(0.72796)}100%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}}@keyframes secondary-indeterminate-scale{0%{-webkit-animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}19.15%{-webkit-animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);-webkit-transform:scaleX(0.457104);transform:scaleX(0.457104)}44.15%{-webkit-animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);-webkit-transform:scaleX(0.72796);transform:scaleX(0.72796)}100%{-webkit-transform:scaleX(0.08);transform:scaleX(0.08)}}@-webkit-keyframes buffering{to{-webkit-transform:translateX(-10px);transform:translateX(-10px)}}@keyframes buffering{to{-webkit-transform:translateX(-10px);transform:translateX(-10px)}}:host{height:4px}";
|
|
12
12
|
|
|
13
13
|
const ProgressBar = class {
|
|
14
14
|
constructor(hostRef) {
|