@ionic/core 7.5.8-dev.11701791090.18ebbea8 → 7.5.8-dev.11701806358.1ca1b519
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/backdrop.js +0 -12
- package/components/data.js +1 -1
- package/components/gesture-controller.js +1 -1
- package/components/ion-content.js +1 -1
- package/components/ion-datetime.js +40 -64
- package/components/ion-input.js +2 -21
- package/components/ion-picker-column-option.d.ts +11 -0
- package/components/ion-picker-column-option.js +9 -0
- package/components/ion-picker-column.js +2 -2
- package/components/ion-picker-legacy-column.d.ts +11 -0
- package/components/ion-picker-legacy-column.js +9 -0
- package/components/{ion-picker-internal.d.ts → ion-picker-legacy.d.ts} +4 -4
- package/components/ion-picker-legacy.js +309 -0
- package/components/ion-picker.js +1 -309
- package/components/ion-textarea.js +2 -25
- package/components/overlays.js +11 -4
- package/components/picker-column-option.js +122 -0
- package/components/picker-column.js +363 -317
- package/components/picker-column2.js +379 -0
- package/components/{picker-internal.js → picker.js} +16 -16
- package/dist/cjs/{button-active-417ccdcb.js → button-active-9d7e0640.js} +1 -1
- package/dist/cjs/{data-36b9094e.js → data-e7526b58.js} +1 -1
- package/dist/cjs/{gesture-controller-c40c045a.js → gesture-controller-9436f482.js} +1 -0
- package/dist/cjs/{index-d1b59ffa.js → index-ee07ed59.js} +1 -1
- package/dist/cjs/index.cjs.js +3 -3
- package/dist/cjs/ion-action-sheet.cjs.entry.js +4 -4
- package/dist/cjs/ion-alert.cjs.entry.js +4 -4
- package/dist/cjs/ion-app_8.cjs.entry.js +2 -2
- package/dist/cjs/ion-backdrop.cjs.entry.js +0 -12
- package/dist/cjs/ion-datetime-button.cjs.entry.js +1 -1
- package/dist/cjs/ion-datetime_3.cjs.entry.js +36 -56
- package/dist/cjs/ion-input.cjs.entry.js +2 -21
- package/dist/cjs/ion-item-option_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-loading.cjs.entry.js +2 -1
- package/dist/cjs/ion-menu_3.cjs.entry.js +3 -3
- package/dist/cjs/ion-modal.cjs.entry.js +3 -3
- package/dist/cjs/ion-nav_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +104 -0
- package/dist/cjs/{ion-picker-column-internal.cjs.entry.js → ion-picker-column.cjs.entry.js} +105 -72
- package/dist/cjs/{ion-picker-internal.cjs.entry.js → ion-picker.cjs.entry.js} +13 -13
- package/dist/cjs/ion-popover.cjs.entry.js +2 -1
- package/dist/cjs/ion-range.cjs.entry.js +1 -1
- package/dist/cjs/ion-refresher_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-reorder_2.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 +2 -1
- package/dist/cjs/ion-textarea.cjs.entry.js +2 -25
- package/dist/cjs/ion-toast.cjs.entry.js +2 -1
- package/dist/cjs/ion-toggle.cjs.entry.js +1 -1
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{overlays-5c379703.js → overlays-e8e05b0e.js} +11 -4
- package/dist/cjs/{swipe-back-2a858bbd.js → swipe-back-b8f2330b.js} +2 -2
- package/dist/collection/collection-manifest.json +7 -6
- package/dist/collection/components/backdrop/backdrop.js +0 -12
- package/dist/collection/components/content/content.css +0 -4
- package/dist/collection/components/datetime/datetime.ios.css +83 -37
- package/dist/collection/components/datetime/datetime.js +24 -36
- package/dist/collection/components/datetime/datetime.md.css +88 -37
- package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +1 -1
- package/dist/collection/components/datetime/test/a11y/datetime.spec.js +6 -9
- package/dist/collection/components/datetime/test/basic/datetime.e2e.js +10 -0
- 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/month-year-picker/datetime.e2e.js +1 -1
- package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +43 -41
- package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +1 -1
- package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +4 -4
- package/dist/collection/components/datetime/test/values/datetime.e2e.js +15 -12
- package/dist/collection/components/datetime/utils/data.js +1 -1
- package/dist/collection/components/input/input.js +2 -21
- package/dist/collection/components/input/test/clear-on-edit/input.e2e.js +9 -21
- package/dist/collection/components/picker/picker.ios.css +100 -205
- package/dist/collection/components/picker/picker.js +461 -743
- package/dist/collection/components/picker/picker.md.css +98 -194
- package/dist/collection/components/{picker-internal/test/a11y/picker-internal.e2e.js → picker/test/a11y/picker.e2e.js} +2 -2
- package/dist/collection/components/picker/test/basic/picker.e2e.js +99 -13
- package/dist/collection/components/{picker-internal/test/keyboard-entry/picker-internal.e2e.js → picker/test/keyboard-entry/picker.e2e.js} +23 -22
- package/dist/collection/components/picker-column/picker-column.ios.css +120 -160
- package/dist/collection/components/picker-column/picker-column.js +514 -329
- package/dist/collection/components/picker-column/picker-column.md.css +134 -107
- package/dist/collection/components/{picker-column-internal/test/basic/picker-column-internal.e2e.js → picker-column/test/basic/picker-column.e2e.js} +8 -8
- package/dist/collection/components/picker-column/test/disabled/picker-column.e2e.js +113 -0
- package/dist/collection/components/picker-column/test/slots/picker-column.e2e.js +39 -0
- package/dist/collection/components/picker-column-option/picker-column-option.ios.css +87 -0
- package/dist/collection/components/picker-column-option/picker-column-option.js +173 -0
- package/dist/collection/components/{picker-column-internal/picker-column-internal.ios.css → picker-column-option/picker-column-option.md.css} +6 -53
- package/dist/collection/components/picker-column-option/test/a11y/picker-column-option.e2e.js +18 -0
- package/dist/collection/components/picker-column-option/test/basic/picker-column-option.e2e.js +37 -0
- package/dist/collection/components/picker-legacy/picker.ios.css +367 -0
- package/dist/collection/components/picker-legacy/picker.js +817 -0
- package/dist/collection/components/{picker-internal/picker-internal.ios.css → picker-legacy/picker.md.css} +192 -100
- package/dist/collection/components/picker-legacy/test/basic/picker.e2e.js +25 -0
- package/dist/collection/components/{picker → picker-legacy}/test/is-open/picker.e2e.js +4 -4
- package/dist/collection/components/{picker → picker-legacy}/test/picker-id.spec.js +5 -5
- package/dist/collection/components/{picker → picker-legacy}/test/trigger/picker.e2e.js +1 -1
- package/dist/collection/components/{picker-internal/picker-internal.md.css → picker-legacy-column/picker-column.ios.css} +98 -101
- package/dist/collection/components/picker-legacy-column/picker-column.js +419 -0
- package/dist/collection/components/{picker-column-internal/picker-column-internal.md.css → picker-legacy-column/picker-column.md.css} +113 -63
- package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column-aria.spec.js +3 -3
- package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column-dynamic.spec.js +2 -2
- package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column.spec.js +2 -2
- package/dist/collection/components/{picker-column → picker-legacy-column}/test/standalone/picker-column.e2e.js +3 -3
- package/dist/collection/components/textarea/test/clear-on-edit/textarea.e2e.js +0 -28
- package/dist/collection/components/textarea/textarea.js +2 -25
- package/dist/collection/utils/gesture/gesture-controller.js +1 -1
- package/dist/collection/utils/overlays.js +11 -4
- package/dist/collection/utils/test/overlays/overlays-scroll-blocking.spec.js +65 -0
- package/dist/docs.json +493 -40
- package/dist/esm/{button-active-3fdf3e4f.js → button-active-ed9d848c.js} +1 -1
- package/dist/esm/{data-f5c75b4e.js → data-4b9508c9.js} +1 -1
- package/dist/esm/{gesture-controller-1bf57181.js → gesture-controller-314a54f6.js} +1 -1
- package/dist/esm/{index-2cf77112.js → index-39782642.js} +2 -2
- package/dist/esm/index.js +3 -3
- package/dist/esm/ion-action-sheet.entry.js +4 -4
- package/dist/esm/ion-alert.entry.js +4 -4
- package/dist/esm/ion-app_8.entry.js +2 -2
- package/dist/esm/ion-backdrop.entry.js +0 -12
- package/dist/esm/ion-datetime-button.entry.js +1 -1
- package/dist/esm/ion-datetime_3.entry.js +35 -55
- package/dist/esm/ion-input.entry.js +2 -21
- package/dist/esm/ion-item-option_3.entry.js +1 -1
- package/dist/esm/ion-loading.entry.js +2 -1
- package/dist/esm/ion-menu_3.entry.js +3 -3
- package/dist/esm/ion-modal.entry.js +3 -3
- package/dist/esm/ion-nav_2.entry.js +1 -1
- package/dist/esm/ion-picker-column-option.entry.js +100 -0
- package/dist/esm/{ion-picker-column-internal.entry.js → ion-picker-column.entry.js} +105 -72
- package/dist/esm/{ion-picker-internal.entry.js → ion-picker.entry.js} +13 -13
- package/dist/esm/ion-popover.entry.js +2 -1
- package/dist/esm/ion-range.entry.js +1 -1
- package/dist/esm/ion-refresher_2.entry.js +3 -3
- package/dist/esm/ion-reorder_2.entry.js +1 -1
- package/dist/esm/ion-segment_2.entry.js +1 -1
- package/dist/esm/ion-select_3.entry.js +2 -1
- package/dist/esm/ion-textarea.entry.js +2 -25
- package/dist/esm/ion-toast.entry.js +2 -1
- package/dist/esm/ion-toggle.entry.js +1 -1
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{overlays-abf58489.js → overlays-fbc5cab5.js} +11 -4
- package/dist/esm/{swipe-back-a6f386fc.js → swipe-back-a8ca7f93.js} +2 -2
- package/dist/esm-es5/{button-active-3fdf3e4f.js → button-active-ed9d848c.js} +1 -1
- package/dist/esm-es5/{gesture-controller-1bf57181.js → gesture-controller-314a54f6.js} +1 -1
- package/dist/esm-es5/{index-2cf77112.js → index-39782642.js} +1 -1
- 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-backdrop.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-input.entry.js +1 -1
- package/dist/esm-es5/ion-item-option_3.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 +4 -0
- package/dist/esm-es5/ion-picker-column.entry.js +4 -0
- package/dist/esm-es5/ion-picker.entry.js +4 -0
- package/dist/esm-es5/ion-popover.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-segment_2.entry.js +1 -1
- package/dist/esm-es5/ion-select_3.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-fbc5cab5.js +4 -0
- package/dist/esm-es5/swipe-back-a8ca7f93.js +4 -0
- package/dist/html.html-data.json +152 -1
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-b0dc1cf9.system.js → p-1d624e03.system.js} +1 -1
- package/dist/ionic/{p-d40a974a.entry.js → p-1fc72959.entry.js} +1 -1
- package/dist/ionic/{p-c7c8429a.system.js → p-20d469d0.system.js} +1 -1
- package/dist/ionic/{p-0519cd21.entry.js → p-21c3515a.entry.js} +1 -1
- package/dist/ionic/{p-6470b136.entry.js → p-22e5af95.entry.js} +1 -1
- package/dist/ionic/p-232d1f22.entry.js +4 -0
- package/dist/ionic/p-23672c82.system.entry.js +4 -0
- package/dist/ionic/p-26798a7b.system.entry.js +4 -0
- package/dist/ionic/p-27bcbbc7.system.entry.js +4 -0
- package/dist/ionic/{p-765a08a7.system.entry.js → p-32303650.system.entry.js} +1 -1
- package/dist/ionic/p-3ba01a9c.system.entry.js +4 -0
- package/dist/ionic/{p-31b2326e.system.js → p-3e1e14d9.system.js} +1 -1
- package/dist/ionic/{p-667df818.system.entry.js → p-3fd26bd6.system.entry.js} +1 -1
- package/dist/ionic/{p-864c4046.entry.js → p-42ba3902.entry.js} +1 -1
- package/dist/ionic/{p-88fde0e0.entry.js → p-4911a5d6.entry.js} +1 -1
- package/dist/ionic/{p-a6f9dd7b.entry.js → p-4a081ea9.entry.js} +1 -1
- package/dist/ionic/{p-7b8d0af2.system.entry.js → p-4a36430f.system.entry.js} +1 -1
- package/dist/ionic/p-51abefb7.system.js +4 -0
- package/dist/ionic/{p-0b1bc636.entry.js → p-535d2a67.entry.js} +1 -1
- package/dist/ionic/{p-af5cfad2.system.js → p-54dfc9b5.system.js} +1 -1
- package/dist/ionic/p-563c41f0.system.entry.js +4 -0
- package/dist/ionic/{p-b04e4d62.entry.js → p-5d42b6b4.entry.js} +1 -1
- package/dist/ionic/{p-50880712.entry.js → p-6b7c55cd.entry.js} +1 -1
- package/dist/ionic/{p-a1987850.entry.js → p-6d72fb44.entry.js} +1 -1
- package/dist/ionic/{p-e6d68e02.system.entry.js → p-6fd64e7c.system.entry.js} +1 -1
- package/dist/ionic/p-73190c5f.entry.js +4 -0
- package/dist/ionic/p-73aa7604.entry.js +4 -0
- package/dist/ionic/{p-17f893be.js → p-76d3765d.js} +1 -1
- package/dist/ionic/{p-94389114.system.entry.js → p-77965464.system.entry.js} +1 -1
- package/dist/ionic/{p-98b14ece.entry.js → p-7b725280.entry.js} +1 -1
- package/dist/ionic/p-8017aad2.system.entry.js +4 -0
- package/dist/ionic/p-846ee227.entry.js +4 -0
- package/dist/ionic/p-8c97cdc0.entry.js +4 -0
- package/dist/ionic/{p-f5d2dc9b.js → p-8ededb41.js} +1 -1
- package/dist/ionic/p-8fa6583d.system.js +4 -0
- package/dist/ionic/p-9282b16f.entry.js +4 -0
- package/dist/ionic/{p-d7be6b7e.system.entry.js → p-96dbbac1.system.entry.js} +1 -1
- package/dist/ionic/{p-bb3615f7.js → p-9b97df10.js} +1 -1
- package/dist/ionic/p-9ba90516.system.entry.js +4 -0
- package/dist/ionic/{p-a0126dd5.system.entry.js → p-9c229210.system.entry.js} +2 -2
- package/dist/ionic/{p-7faba551.system.entry.js → p-a225bf0f.system.entry.js} +1 -1
- package/dist/ionic/p-a60a1ce5.js +4 -0
- package/dist/ionic/p-a8baa23e.entry.js +4 -0
- package/dist/ionic/{p-ad019ef0.entry.js → p-a9a80f5b.entry.js} +1 -1
- package/dist/ionic/p-afcf4620.entry.js +4 -0
- package/dist/ionic/{p-ddb30596.entry.js → p-b133e9b4.entry.js} +1 -1
- package/dist/ionic/{p-08f196ce.system.entry.js → p-b4d31b30.system.entry.js} +1 -1
- package/dist/ionic/{p-e553006f.system.entry.js → p-c18de88a.system.entry.js} +1 -1
- package/dist/ionic/p-c2910c78.entry.js +4 -0
- package/dist/ionic/p-c8f0a036.entry.js +4 -0
- package/dist/ionic/p-ca8938f4.js +4 -0
- package/dist/ionic/p-ca9d1792.system.entry.js +4 -0
- package/dist/ionic/{p-c3d09cf2.system.entry.js → p-cde52378.system.entry.js} +1 -1
- package/dist/ionic/p-da15f571.system.entry.js +4 -0
- package/dist/ionic/p-e3584231.system.js +1 -1
- package/dist/ionic/{p-6577aea9.system.entry.js → p-e8e86f69.system.entry.js} +1 -1
- package/dist/ionic/{p-9eec42cc.system.entry.js → p-f910cc73.system.entry.js} +1 -1
- package/dist/ionic/{p-3b686a65.system.entry.js → p-fbf3a689.system.entry.js} +1 -1
- package/dist/ionic/p-fe4dde76.entry.js +4 -0
- package/dist/ionic/p-ffd5dba4.system.entry.js +4 -0
- package/dist/types/components/backdrop/backdrop.d.ts +0 -3
- package/dist/types/components/datetime/datetime.d.ts +0 -1
- package/dist/types/components/datetime/utils/data.d.ts +2 -2
- package/dist/types/components/menu/menu.d.ts +1 -1
- package/dist/types/components/picker/picker-interfaces.d.ts +8 -0
- package/dist/types/components/picker/picker.d.ts +74 -131
- package/dist/types/components/picker-column/picker-column.d.ts +105 -39
- package/dist/types/components/picker-column-option/picker-column-option.d.ts +66 -0
- package/dist/types/components/picker-legacy/picker.d.ts +158 -0
- package/dist/types/components/picker-legacy-column/picker-column.d.ts +46 -0
- package/dist/types/components.d.ts +163 -122
- package/dist/types/interface.d.ts +1 -1
- package/dist/types/utils/config.d.ts +2 -2
- package/dist/types/utils/gesture/gesture-controller.d.ts +1 -0
- package/dist/types/utils/overlays.d.ts +5 -2
- package/hydrate/index.js +1367 -1296
- package/package.json +1 -1
- package/components/ion-picker-column-internal.d.ts +0 -11
- package/components/ion-picker-column-internal.js +0 -9
- package/components/ion-picker-internal.js +0 -9
- package/components/picker-column-internal.js +0 -390
- package/dist/collection/components/picker-column-internal/picker-column-internal.js +0 -565
- package/dist/collection/components/picker-column-internal/test/disabled/picker-column-internal.e2e.js +0 -162
- package/dist/collection/components/picker-internal/picker-internal.js +0 -544
- package/dist/collection/components/picker-internal/test/basic/picker-internal.e2e.js +0 -118
- package/dist/esm-es5/ion-picker-column-internal.entry.js +0 -4
- package/dist/esm-es5/ion-picker-internal.entry.js +0 -4
- package/dist/esm-es5/overlays-abf58489.js +0 -4
- package/dist/esm-es5/swipe-back-a6f386fc.js +0 -4
- package/dist/ionic/p-18b6bd23.system.entry.js +0 -4
- package/dist/ionic/p-1d17219f.entry.js +0 -4
- package/dist/ionic/p-25b32c3d.entry.js +0 -4
- package/dist/ionic/p-2ba0657d.system.entry.js +0 -4
- package/dist/ionic/p-35ce400e.system.js +0 -4
- package/dist/ionic/p-3de71759.entry.js +0 -4
- package/dist/ionic/p-3e960213.system.entry.js +0 -4
- package/dist/ionic/p-61d7d7fb.js +0 -4
- package/dist/ionic/p-67da080d.entry.js +0 -4
- package/dist/ionic/p-6a6477b2.js +0 -4
- package/dist/ionic/p-73637557.system.entry.js +0 -4
- package/dist/ionic/p-73ea8f82.system.entry.js +0 -4
- package/dist/ionic/p-80fa068e.entry.js +0 -4
- package/dist/ionic/p-82045bc1.entry.js +0 -4
- package/dist/ionic/p-908475e7.system.entry.js +0 -4
- package/dist/ionic/p-9c3b6849.entry.js +0 -4
- package/dist/ionic/p-b4bad293.system.entry.js +0 -4
- package/dist/ionic/p-c3289ef2.entry.js +0 -4
- package/dist/ionic/p-cce9f61a.system.entry.js +0 -4
- package/dist/ionic/p-d1cb29a8.system.entry.js +0 -4
- package/dist/ionic/p-e94c392d.entry.js +0 -4
- package/dist/ionic/p-f2c21dae.system.js +0 -4
- package/dist/ionic/p-f51666d3.entry.js +0 -4
- package/dist/types/components/picker-column-internal/picker-column-internal.d.ts +0 -102
- package/dist/types/components/picker-internal/picker-internal-interfaces.d.ts +0 -8
- package/dist/types/components/picker-internal/picker-internal.d.ts +0 -102
- /package/dist/collection/components/{picker-internal/picker-internal-interfaces.js → picker/picker-interfaces.js} +0 -0
- /package/dist/collection/components/{picker-column-internal/picker-column-internal-interfaces.js → picker-column/picker-column-interfaces.js} +0 -0
- /package/dist/collection/components/{picker → picker-legacy}/animations/ios.enter.js +0 -0
- /package/dist/collection/components/{picker → picker-legacy}/animations/ios.leave.js +0 -0
- /package/dist/collection/components/{picker → picker-legacy}/picker-interface.js +0 -0
- /package/dist/collection/components/{picker-column → picker-legacy-column}/test/test.utils.js +0 -0
- /package/dist/esm-es5/{data-f5c75b4e.js → data-4b9508c9.js} +0 -0
- /package/dist/ionic/{p-2aea8b1e.js → p-368f5215.js} +0 -0
- /package/dist/ionic/{p-82e3d633.system.js → p-f58981c2.system.js} +0 -0
- /package/dist/types/components/{picker-column-internal/picker-column-internal-interfaces.d.ts → picker-column/picker-column-interfaces.d.ts} +0 -0
- /package/dist/types/components/{picker → picker-legacy}/animations/ios.enter.d.ts +0 -0
- /package/dist/types/components/{picker → picker-legacy}/animations/ios.leave.d.ts +0 -0
- /package/dist/types/components/{picker → picker-legacy}/picker-interface.d.ts +0 -0
- /package/dist/types/components/{picker-column → picker-legacy-column}/test/test.utils.d.ts +0 -0
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
|
+
*/
|
|
4
|
+
'use strict';
|
|
5
|
+
|
|
6
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
7
|
+
|
|
8
|
+
const index = require('./index-bbb4336c.js');
|
|
9
|
+
const helpers = require('./helpers-76bb7efb.js');
|
|
10
|
+
const theme = require('./theme-d1c573d2.js');
|
|
11
|
+
const ionicGlobal = require('./ionic-global-f4a2093b.js');
|
|
12
|
+
|
|
13
|
+
const pickerColumnOptionIosCss = "button{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;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}:host(.option-disabled){opacity:0.4}:host(.option-disabled) button{cursor:default}";
|
|
14
|
+
|
|
15
|
+
const pickerColumnOptionMdCss = "button{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;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}:host(.option-disabled){opacity:0.4}:host(.option-disabled) button{cursor:default}:host(.option-active){color:var(--ion-color-base)}";
|
|
16
|
+
|
|
17
|
+
const PickerColumnOption = class {
|
|
18
|
+
constructor(hostRef) {
|
|
19
|
+
index.registerInstance(this, hostRef);
|
|
20
|
+
/**
|
|
21
|
+
* We keep track of the parent picker column
|
|
22
|
+
* so we can update the value of it when
|
|
23
|
+
* clicking an enable option.
|
|
24
|
+
*/
|
|
25
|
+
this.pickerColumn = null;
|
|
26
|
+
this.ariaLabel = null;
|
|
27
|
+
this.disabled = false;
|
|
28
|
+
this.value = undefined;
|
|
29
|
+
this.color = 'primary';
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* The aria-label of the option has changed after the
|
|
33
|
+
* first render and needs to be updated within the component.
|
|
34
|
+
*
|
|
35
|
+
* @param ariaLbl The new aria-label value.
|
|
36
|
+
*/
|
|
37
|
+
onAriaLabelChange(ariaLbl) {
|
|
38
|
+
this.ariaLabel = ariaLbl;
|
|
39
|
+
}
|
|
40
|
+
componentWillLoad() {
|
|
41
|
+
const inheritedAttributes = helpers.inheritAttributes(this.el, ['aria-label']);
|
|
42
|
+
/**
|
|
43
|
+
* The initial value of `aria-label` needs to be set for
|
|
44
|
+
* the first render.
|
|
45
|
+
|
|
46
|
+
*/
|
|
47
|
+
this.ariaLabel = inheritedAttributes['aria-label'] || null;
|
|
48
|
+
}
|
|
49
|
+
connectedCallback() {
|
|
50
|
+
this.pickerColumn = this.el.closest('ion-picker-column');
|
|
51
|
+
}
|
|
52
|
+
disconnectedCallback() {
|
|
53
|
+
this.pickerColumn = null;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* The column options can load at any time
|
|
57
|
+
* so the options needs to tell the
|
|
58
|
+
* parent picker column when it is loaded
|
|
59
|
+
* so the picker column can ensure it is
|
|
60
|
+
* centered in the view.
|
|
61
|
+
*
|
|
62
|
+
* We intentionally run this for every
|
|
63
|
+
* option. If we only ran this from
|
|
64
|
+
* the selected option then if the newly
|
|
65
|
+
* loaded options were not selected then
|
|
66
|
+
* scrollActiveItemIntoView would not be called.
|
|
67
|
+
*/
|
|
68
|
+
componentDidLoad() {
|
|
69
|
+
const { pickerColumn } = this;
|
|
70
|
+
if (pickerColumn !== null) {
|
|
71
|
+
pickerColumn.scrollActiveItemIntoView();
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* When an option is clicked update the
|
|
76
|
+
* parent picker column value. This
|
|
77
|
+
* component will handle centering the option
|
|
78
|
+
* in the column view.
|
|
79
|
+
*/
|
|
80
|
+
onClick() {
|
|
81
|
+
const { pickerColumn } = this;
|
|
82
|
+
if (pickerColumn !== null) {
|
|
83
|
+
pickerColumn.setValue(this.value);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
render() {
|
|
87
|
+
const { color, disabled, ariaLabel } = this;
|
|
88
|
+
const mode = ionicGlobal.getIonMode(this);
|
|
89
|
+
return (index.h(index.Host, { class: theme.createColorClasses(color, {
|
|
90
|
+
[mode]: true,
|
|
91
|
+
['option-disabled']: disabled,
|
|
92
|
+
}) }, index.h("button", { tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, index.h("slot", null))));
|
|
93
|
+
}
|
|
94
|
+
get el() { return index.getElement(this); }
|
|
95
|
+
static get watchers() { return {
|
|
96
|
+
"aria-label": ["onAriaLabelChange"]
|
|
97
|
+
}; }
|
|
98
|
+
};
|
|
99
|
+
PickerColumnOption.style = {
|
|
100
|
+
ios: pickerColumnOptionIosCss,
|
|
101
|
+
md: pickerColumnOptionMdCss
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
exports.ion_picker_column_option = PickerColumnOption;
|
|
@@ -6,18 +6,18 @@
|
|
|
6
6
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
7
7
|
|
|
8
8
|
const index = require('./index-bbb4336c.js');
|
|
9
|
+
const index$1 = require('./index-306a7476.js');
|
|
9
10
|
const helpers = require('./helpers-76bb7efb.js');
|
|
10
11
|
const haptic = require('./haptic-216df36c.js');
|
|
11
12
|
const ionicGlobal = require('./ionic-global-f4a2093b.js');
|
|
12
13
|
const theme = require('./theme-d1c573d2.js');
|
|
13
14
|
require('./capacitor-46980811.js');
|
|
14
|
-
require('./index-306a7476.js');
|
|
15
15
|
|
|
16
|
-
const
|
|
16
|
+
const pickerColumnIosCss = ":host{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;max-width:100%;height:200px;font-size:22px;text-align:center}.picker-opts{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;min-width:26px;max-height:200px;outline:none;text-align:inherit;-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}.picker-opts::-webkit-scrollbar{display:none}::slotted(ion-picker-column-option){display:block;scroll-snap-align:center}.picker-item-empty,:host(:not([disabled])) ::slotted(ion-picker-column-option.option-disabled){scroll-snap-align:none}::slotted([slot=prefix]),::slotted([slot=suffix]){max-width:200px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::slotted([slot=prefix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:end;justify-content:end}::slotted([slot=suffix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:start;justify-content:start}: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) .picker-opts{outline:none;background:rgba(var(--ion-color-base-rgb), 0.2)}}";
|
|
17
17
|
|
|
18
|
-
const
|
|
18
|
+
const pickerColumnMdCss = ":host{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;max-width:100%;height:200px;font-size:22px;text-align:center}.picker-opts{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;min-width:26px;max-height:200px;outline:none;text-align:inherit;-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}.picker-opts::-webkit-scrollbar{display:none}::slotted(ion-picker-column-option){display:block;scroll-snap-align:center}.picker-item-empty,:host(:not([disabled])) ::slotted(ion-picker-column-option.option-disabled){scroll-snap-align:none}::slotted([slot=prefix]),::slotted([slot=suffix]){max-width:200px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::slotted([slot=prefix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:end;justify-content:end}::slotted([slot=suffix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:start;justify-content:start}: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) .picker-opts{outline:none;background:rgba(var(--ion-color-base-rgb), 0.2)}}:host .picker-item-active{color:var(--ion-color-base)}";
|
|
19
19
|
|
|
20
|
-
const
|
|
20
|
+
const PickerColumn = class {
|
|
21
21
|
constructor(hostRef) {
|
|
22
22
|
index.registerInstance(this, hostRef);
|
|
23
23
|
this.ionChange = index.createEvent(this, "ionChange", 7);
|
|
@@ -25,11 +25,11 @@ const PickerColumnInternal = class {
|
|
|
25
25
|
this.isColumnVisible = false;
|
|
26
26
|
this.canExitInputMode = true;
|
|
27
27
|
this.centerPickerItemInView = (target, smooth = true, canExitInputMode = true) => {
|
|
28
|
-
const {
|
|
29
|
-
if (isColumnVisible) {
|
|
28
|
+
const { isColumnVisible, scrollEl } = this;
|
|
29
|
+
if (isColumnVisible && scrollEl) {
|
|
30
30
|
// (Vertical offset from parent) - (three empty picker rows) + (half the height of the target to ensure the scroll triggers)
|
|
31
31
|
const top = target.offsetTop - 3 * target.clientHeight + target.clientHeight / 2;
|
|
32
|
-
if (
|
|
32
|
+
if (scrollEl.scrollTop !== top) {
|
|
33
33
|
/**
|
|
34
34
|
* Setting this flag prevents input
|
|
35
35
|
* mode from exiting in the picker column's
|
|
@@ -38,7 +38,7 @@ const PickerColumnInternal = class {
|
|
|
38
38
|
* of these can cause a scroll to occur.
|
|
39
39
|
*/
|
|
40
40
|
this.canExitInputMode = canExitInputMode;
|
|
41
|
-
|
|
41
|
+
scrollEl.scroll({
|
|
42
42
|
top,
|
|
43
43
|
left: 0,
|
|
44
44
|
behavior: smooth ? 'smooth' : undefined,
|
|
@@ -107,11 +107,13 @@ const PickerColumnInternal = class {
|
|
|
107
107
|
* be disabled on Android.
|
|
108
108
|
*/
|
|
109
109
|
const enableHaptics = ionicGlobal.isPlatform('ios');
|
|
110
|
-
const { el } = this;
|
|
110
|
+
const { el, scrollEl } = this;
|
|
111
111
|
let timeout;
|
|
112
112
|
let activeEl = this.activeItem;
|
|
113
113
|
const scrollCallback = () => {
|
|
114
114
|
helpers.raf(() => {
|
|
115
|
+
if (!scrollEl)
|
|
116
|
+
return;
|
|
115
117
|
if (timeout) {
|
|
116
118
|
clearTimeout(timeout);
|
|
117
119
|
timeout = undefined;
|
|
@@ -124,21 +126,54 @@ const PickerColumnInternal = class {
|
|
|
124
126
|
* Select item in the center of the column
|
|
125
127
|
* which is the month/year that we want to select
|
|
126
128
|
*/
|
|
127
|
-
const bbox =
|
|
129
|
+
const bbox = scrollEl.getBoundingClientRect();
|
|
128
130
|
const centerX = bbox.x + bbox.width / 2;
|
|
129
131
|
const centerY = bbox.y + bbox.height / 2;
|
|
130
|
-
|
|
131
|
-
|
|
132
|
+
/**
|
|
133
|
+
* elementFromPoint returns the top-most element.
|
|
134
|
+
* This means that if an ion-backdrop is overlaying the
|
|
135
|
+
* picker then the appropriate picker column option will
|
|
136
|
+
* not be selected. To account for this, we use elementsFromPoint
|
|
137
|
+
* and use an Array.find to find the appropriate column option
|
|
138
|
+
* at that point.
|
|
139
|
+
*
|
|
140
|
+
* Additionally, the picker column could be used in the
|
|
141
|
+
* Shadow DOM (i.e. in ion-datetime) so we need to make
|
|
142
|
+
* sure we are choosing the correct host otherwise
|
|
143
|
+
* the elements returns by elementsFromPoint will be
|
|
144
|
+
* retargeted. To account for this, we check to see
|
|
145
|
+
* if the picker column has a parent shadow root. If
|
|
146
|
+
* so, we use that shadow root when doing elementsFromPoint.
|
|
147
|
+
* Otherwise, we just use the document.
|
|
148
|
+
*/
|
|
149
|
+
const rootNode = el.getRootNode();
|
|
150
|
+
const hasParentShadow = rootNode instanceof ShadowRoot;
|
|
151
|
+
const referenceNode = hasParentShadow ? rootNode : index$1.doc;
|
|
152
|
+
/**
|
|
153
|
+
* If the reference node is undefined
|
|
154
|
+
* then it's likely that doc is undefined
|
|
155
|
+
* due to being in an SSR environment.
|
|
156
|
+
*/
|
|
157
|
+
if (referenceNode === undefined) {
|
|
158
|
+
return;
|
|
159
|
+
}
|
|
160
|
+
const elementsAtPoint = referenceNode.elementsFromPoint(centerX, centerY);
|
|
161
|
+
/**
|
|
162
|
+
* elementsFromPoint can returns multiple elements
|
|
163
|
+
* so find the relevant picker column option if one exists.
|
|
164
|
+
*/
|
|
165
|
+
const newActiveElement = elementsAtPoint.find((el) => el.tagName === 'ION-PICKER-COLUMN-OPTION');
|
|
166
|
+
if (activeEl !== undefined) {
|
|
132
167
|
this.setPickerItemActiveState(activeEl, false);
|
|
133
168
|
}
|
|
134
|
-
if (
|
|
169
|
+
if (newActiveElement === undefined || newActiveElement.disabled) {
|
|
135
170
|
return;
|
|
136
171
|
}
|
|
137
172
|
/**
|
|
138
173
|
* If we are selecting a new value,
|
|
139
174
|
* we need to run haptics again.
|
|
140
175
|
*/
|
|
141
|
-
if (
|
|
176
|
+
if (newActiveElement !== activeEl) {
|
|
142
177
|
enableHaptics && haptic.hapticSelectionChanged();
|
|
143
178
|
if (this.canExitInputMode) {
|
|
144
179
|
/**
|
|
@@ -155,8 +190,8 @@ const PickerColumnInternal = class {
|
|
|
155
190
|
this.exitInputMode();
|
|
156
191
|
}
|
|
157
192
|
}
|
|
158
|
-
activeEl =
|
|
159
|
-
this.setPickerItemActiveState(
|
|
193
|
+
activeEl = newActiveElement;
|
|
194
|
+
this.setPickerItemActiveState(newActiveElement, true);
|
|
160
195
|
timeout = setTimeout(() => {
|
|
161
196
|
this.isScrolling = false;
|
|
162
197
|
enableHaptics && haptic.hapticSelectionEnd();
|
|
@@ -178,20 +213,7 @@ const PickerColumnInternal = class {
|
|
|
178
213
|
* case, we should exit input mode.
|
|
179
214
|
*/
|
|
180
215
|
this.canExitInputMode = true;
|
|
181
|
-
|
|
182
|
-
/**
|
|
183
|
-
* If no value it is
|
|
184
|
-
* possible we hit one of the
|
|
185
|
-
* empty padding columns.
|
|
186
|
-
*/
|
|
187
|
-
if (dataIndex === null) {
|
|
188
|
-
return;
|
|
189
|
-
}
|
|
190
|
-
const index = parseInt(dataIndex, 10);
|
|
191
|
-
const selectedItem = this.items[index];
|
|
192
|
-
if (selectedItem.value !== this.value) {
|
|
193
|
-
this.setValue(selectedItem.value);
|
|
194
|
-
}
|
|
216
|
+
this.setValue(newActiveElement.value);
|
|
195
217
|
}, 250);
|
|
196
218
|
});
|
|
197
219
|
};
|
|
@@ -200,9 +222,11 @@ const PickerColumnInternal = class {
|
|
|
200
222
|
* does not fire when component is initially shown.
|
|
201
223
|
*/
|
|
202
224
|
helpers.raf(() => {
|
|
203
|
-
|
|
225
|
+
if (!scrollEl)
|
|
226
|
+
return;
|
|
227
|
+
scrollEl.addEventListener('scroll', scrollCallback);
|
|
204
228
|
this.destroyScrollListener = () => {
|
|
205
|
-
|
|
229
|
+
scrollEl.removeEventListener('scroll', scrollCallback);
|
|
206
230
|
};
|
|
207
231
|
});
|
|
208
232
|
};
|
|
@@ -279,28 +303,25 @@ const PickerColumnInternal = class {
|
|
|
279
303
|
}
|
|
280
304
|
};
|
|
281
305
|
new IntersectionObserver(visibleCallback, { threshold: 0.001 }).observe(this.el);
|
|
282
|
-
const parentEl = (this.parentEl = this.el.closest('ion-picker
|
|
306
|
+
const parentEl = (this.parentEl = this.el.closest('ion-picker'));
|
|
283
307
|
if (parentEl !== null) {
|
|
284
308
|
// TODO(FW-2832): type
|
|
285
309
|
parentEl.addEventListener('ionInputModeChange', (ev) => this.inputModeChange(ev));
|
|
286
310
|
}
|
|
287
311
|
}
|
|
288
312
|
componentDidRender() {
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
*
|
|
302
|
-
*/
|
|
303
|
-
this.setValue(items[0].value);
|
|
313
|
+
const { el, activeItem, isColumnVisible, value } = this;
|
|
314
|
+
if (isColumnVisible && !activeItem) {
|
|
315
|
+
const firstOption = el.querySelector('ion-picker-column-option');
|
|
316
|
+
/**
|
|
317
|
+
* If the picker column does not have an active item and the current value
|
|
318
|
+
* does not match the first item in the picker column, that means
|
|
319
|
+
* the value is out of bounds. In this case, we assign the value to the
|
|
320
|
+
* first item to match the scroll position of the column.
|
|
321
|
+
*
|
|
322
|
+
*/
|
|
323
|
+
if (firstOption !== null && firstOption.value !== value) {
|
|
324
|
+
this.setValue(firstOption.value);
|
|
304
325
|
}
|
|
305
326
|
}
|
|
306
327
|
}
|
|
@@ -319,52 +340,64 @@ const PickerColumnInternal = class {
|
|
|
319
340
|
* @internal
|
|
320
341
|
*/
|
|
321
342
|
async setValue(value) {
|
|
322
|
-
|
|
343
|
+
if (this.value === value) {
|
|
344
|
+
return;
|
|
345
|
+
}
|
|
323
346
|
this.value = value;
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
347
|
+
this.ionChange.emit({ value });
|
|
348
|
+
}
|
|
349
|
+
/**
|
|
350
|
+
* Sets focus on the scrollable container within the picker column.
|
|
351
|
+
* Use this method instead of the global `pickerColumn.focus()`.
|
|
352
|
+
*/
|
|
353
|
+
async setFocus() {
|
|
354
|
+
if (this.scrollEl) {
|
|
355
|
+
this.scrollEl.focus();
|
|
327
356
|
}
|
|
328
357
|
}
|
|
329
358
|
get activeItem() {
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
359
|
+
const { value } = this;
|
|
360
|
+
const options = Array.from(this.el.querySelectorAll('ion-picker-column-option'));
|
|
361
|
+
return options.find((option) => {
|
|
362
|
+
/**
|
|
363
|
+
* If the whole picker column is disabled, the current value should appear active
|
|
364
|
+
* If the current value item is specifically disabled, it should not appear active
|
|
365
|
+
*/
|
|
366
|
+
if (!this.disabled && option.disabled) {
|
|
367
|
+
return false;
|
|
368
|
+
}
|
|
369
|
+
return option.value === value;
|
|
370
|
+
});
|
|
334
371
|
}
|
|
335
372
|
render() {
|
|
336
|
-
const {
|
|
373
|
+
const { color, disabled: pickerDisabled, isActive, numericInput } = this;
|
|
337
374
|
const mode = ionicGlobal.getIonMode(this);
|
|
338
375
|
/**
|
|
339
376
|
* exportparts is needed so ion-datetime can expose the parts
|
|
340
377
|
* from two layers of shadow nesting. If this causes problems,
|
|
341
378
|
* the attribute can be moved to datetime.tsx and set on every
|
|
342
|
-
* instance of ion-picker-column
|
|
379
|
+
* instance of ion-picker-column there instead.
|
|
380
|
+
* TODO FW-5580 remove exportparts
|
|
343
381
|
*/
|
|
344
|
-
return (index.h(index.Host, { exportparts: `${PICKER_ITEM_PART}, ${PICKER_ITEM_ACTIVE_PART}`, disabled: pickerDisabled,
|
|
382
|
+
return (index.h(index.Host, { exportparts: `${PICKER_ITEM_PART}, ${PICKER_ITEM_ACTIVE_PART}`, disabled: pickerDisabled, class: theme.createColorClasses(color, {
|
|
345
383
|
[mode]: true,
|
|
346
384
|
['picker-column-active']: isActive,
|
|
347
385
|
['picker-column-numeric-input']: numericInput,
|
|
348
|
-
}) }, index.h("
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
'picker-item': true,
|
|
352
|
-
}, "data-value": item.value, "data-index": index$1, onClick: (ev) => {
|
|
353
|
-
this.centerPickerItemInView(ev.target, true);
|
|
354
|
-
}, disabled: isItemDisabled, part: PICKER_ITEM_PART }, item.text));
|
|
355
|
-
}), index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0")));
|
|
386
|
+
}) }, index.h("slot", { name: "prefix" }), index.h("div", { class: "picker-opts", tabindex: pickerDisabled ? undefined : 0, ref: (el) => {
|
|
387
|
+
this.scrollEl = el;
|
|
388
|
+
} }, index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("slot", null), index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0")), index.h("slot", { name: "suffix" })));
|
|
356
389
|
}
|
|
357
390
|
get el() { return index.getElement(this); }
|
|
358
391
|
static get watchers() { return {
|
|
359
392
|
"value": ["valueChange"]
|
|
360
393
|
}; }
|
|
361
394
|
};
|
|
362
|
-
const PICKER_ITEM_ACTIVE_CLASS = '
|
|
395
|
+
const PICKER_ITEM_ACTIVE_CLASS = 'option-active';
|
|
363
396
|
const PICKER_ITEM_PART = 'wheel-item';
|
|
364
397
|
const PICKER_ITEM_ACTIVE_PART = 'active';
|
|
365
|
-
|
|
366
|
-
ios:
|
|
367
|
-
md:
|
|
398
|
+
PickerColumn.style = {
|
|
399
|
+
ios: pickerColumnIosCss,
|
|
400
|
+
md: pickerColumnMdCss
|
|
368
401
|
};
|
|
369
402
|
|
|
370
|
-
exports.
|
|
403
|
+
exports.ion_picker_column = PickerColumn;
|
|
@@ -8,11 +8,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
8
8
|
const index = require('./index-bbb4336c.js');
|
|
9
9
|
const helpers = require('./helpers-76bb7efb.js');
|
|
10
10
|
|
|
11
|
-
const
|
|
11
|
+
const pickerIosCss = ":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:first-of-type){text-align:start}:host ::slotted(ion-picker-column:last-of-type){text-align:end}:host ::slotted(ion-picker-column: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))}";
|
|
12
12
|
|
|
13
|
-
const
|
|
13
|
+
const pickerMdCss = ":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:first-of-type){text-align:start}:host ::slotted(ion-picker-column:last-of-type){text-align:end}:host ::slotted(ion-picker-column: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%)}";
|
|
14
14
|
|
|
15
|
-
const
|
|
15
|
+
const Picker = class {
|
|
16
16
|
constructor(hostRef) {
|
|
17
17
|
index.registerInstance(this, hostRef);
|
|
18
18
|
this.ionInputModeChange = index.createEvent(this, "ionInputModeChange", 7);
|
|
@@ -44,7 +44,7 @@ const PickerInternal = class {
|
|
|
44
44
|
this.onFocusOut = (ev) => {
|
|
45
45
|
// TODO(FW-2832): type
|
|
46
46
|
const { relatedTarget } = ev;
|
|
47
|
-
if (!relatedTarget || (relatedTarget.tagName !== 'ION-PICKER-COLUMN
|
|
47
|
+
if (!relatedTarget || (relatedTarget.tagName !== 'ION-PICKER-COLUMN' && relatedTarget !== this.inputEl)) {
|
|
48
48
|
this.exitInputMode();
|
|
49
49
|
}
|
|
50
50
|
};
|
|
@@ -62,7 +62,7 @@ const PickerInternal = class {
|
|
|
62
62
|
* make sure that this function only ever runs when
|
|
63
63
|
* focusing a picker column.
|
|
64
64
|
*/
|
|
65
|
-
if (target.tagName !== 'ION-PICKER-COLUMN
|
|
65
|
+
if (target.tagName !== 'ION-PICKER-COLUMN') {
|
|
66
66
|
return;
|
|
67
67
|
}
|
|
68
68
|
/**
|
|
@@ -129,7 +129,7 @@ const PickerInternal = class {
|
|
|
129
129
|
* since we just tapped the highlight and
|
|
130
130
|
* not a column.
|
|
131
131
|
*/
|
|
132
|
-
if (ev.target.tagName === 'ION-PICKER-COLUMN
|
|
132
|
+
if (ev.target.tagName === 'ION-PICKER-COLUMN') {
|
|
133
133
|
/**
|
|
134
134
|
* If user taps 2 different columns
|
|
135
135
|
* then we should just switch to input mode
|
|
@@ -163,7 +163,7 @@ const PickerInternal = class {
|
|
|
163
163
|
* If there is only 1 numeric input column
|
|
164
164
|
* then we should skip multi column input.
|
|
165
165
|
*/
|
|
166
|
-
const columns = el.querySelectorAll('ion-picker-column
|
|
166
|
+
const columns = el.querySelectorAll('ion-picker-column.picker-column-numeric-input');
|
|
167
167
|
const columnEl = columns.length === 1 ? ev.target : undefined;
|
|
168
168
|
this.actionOnClick = () => {
|
|
169
169
|
this.enterInputMode(columnEl);
|
|
@@ -197,7 +197,7 @@ const PickerInternal = class {
|
|
|
197
197
|
* Only active input mode if there is at
|
|
198
198
|
* least one column that accepts numeric input.
|
|
199
199
|
*/
|
|
200
|
-
const hasInputColumn = el.querySelector('ion-picker-column
|
|
200
|
+
const hasInputColumn = el.querySelector('ion-picker-column.picker-column-numeric-input');
|
|
201
201
|
if (!hasInputColumn) {
|
|
202
202
|
return;
|
|
203
203
|
}
|
|
@@ -326,7 +326,7 @@ const PickerInternal = class {
|
|
|
326
326
|
if (!inputEl) {
|
|
327
327
|
return;
|
|
328
328
|
}
|
|
329
|
-
const numericPickers = Array.from(el.querySelectorAll('ion-picker-column
|
|
329
|
+
const numericPickers = Array.from(el.querySelectorAll('ion-picker-column')).filter((col) => col.numericInput);
|
|
330
330
|
const firstColumn = numericPickers[0];
|
|
331
331
|
const lastColumn = numericPickers[1];
|
|
332
332
|
let value = inputEl.value;
|
|
@@ -478,9 +478,9 @@ const PickerInternal = class {
|
|
|
478
478
|
}
|
|
479
479
|
get el() { return index.getElement(this); }
|
|
480
480
|
};
|
|
481
|
-
|
|
482
|
-
ios:
|
|
483
|
-
md:
|
|
481
|
+
Picker.style = {
|
|
482
|
+
ios: pickerIosCss,
|
|
483
|
+
md: pickerMdCss
|
|
484
484
|
};
|
|
485
485
|
|
|
486
|
-
exports.
|
|
486
|
+
exports.ion_picker = Picker;
|
|
@@ -10,12 +10,13 @@ const frameworkDelegate = require('./framework-delegate-1c29b14a.js');
|
|
|
10
10
|
const helpers = require('./helpers-76bb7efb.js');
|
|
11
11
|
const lockController = require('./lock-controller-6585a42a.js');
|
|
12
12
|
const index$1 = require('./index-5915f9b3.js');
|
|
13
|
-
const overlays = require('./overlays-
|
|
13
|
+
const overlays = require('./overlays-e8e05b0e.js');
|
|
14
14
|
const ionicGlobal = require('./ionic-global-f4a2093b.js');
|
|
15
15
|
const theme = require('./theme-d1c573d2.js');
|
|
16
16
|
const index$2 = require('./index-d4c2e02c.js');
|
|
17
17
|
const animation = require('./animation-cc40e39c.js');
|
|
18
18
|
require('./index-306a7476.js');
|
|
19
|
+
require('./gesture-controller-9436f482.js');
|
|
19
20
|
require('./hardware-back-button-76833cac.js');
|
|
20
21
|
|
|
21
22
|
/**
|
|
@@ -96,7 +96,7 @@ const Range = class {
|
|
|
96
96
|
this.setupGesture = async () => {
|
|
97
97
|
const rangeSlider = this.rangeSlider;
|
|
98
98
|
if (rangeSlider) {
|
|
99
|
-
this.gesture = (await Promise.resolve().then(function () { return require('./index-
|
|
99
|
+
this.gesture = (await Promise.resolve().then(function () { return require('./index-ee07ed59.js'); })).createGesture({
|
|
100
100
|
el: rangeSlider,
|
|
101
101
|
gestureName: 'range',
|
|
102
102
|
gesturePriority: 100,
|
|
@@ -334,7 +334,7 @@ const Refresher = class {
|
|
|
334
334
|
});
|
|
335
335
|
};
|
|
336
336
|
this.scrollEl.addEventListener('scroll', this.scrollListenerCallback);
|
|
337
|
-
this.gesture = (await Promise.resolve().then(function () { return require('./index-
|
|
337
|
+
this.gesture = (await Promise.resolve().then(function () { return require('./index-ee07ed59.js'); })).createGesture({
|
|
338
338
|
el: this.scrollEl,
|
|
339
339
|
gestureName: 'refresher',
|
|
340
340
|
gesturePriority: 31,
|
|
@@ -386,7 +386,7 @@ const Refresher = class {
|
|
|
386
386
|
refreshingCircle.style.setProperty('animation-delay', '-655ms');
|
|
387
387
|
});
|
|
388
388
|
}
|
|
389
|
-
this.gesture = (await Promise.resolve().then(function () { return require('./index-
|
|
389
|
+
this.gesture = (await Promise.resolve().then(function () { return require('./index-ee07ed59.js'); })).createGesture({
|
|
390
390
|
el: this.scrollEl,
|
|
391
391
|
gestureName: 'refresher',
|
|
392
392
|
gesturePriority: 31,
|
|
@@ -512,7 +512,7 @@ const Refresher = class {
|
|
|
512
512
|
this.setupNativeRefresher(contentEl);
|
|
513
513
|
}
|
|
514
514
|
else {
|
|
515
|
-
this.gesture = (await Promise.resolve().then(function () { return require('./index-
|
|
515
|
+
this.gesture = (await Promise.resolve().then(function () { return require('./index-ee07ed59.js'); })).createGesture({
|
|
516
516
|
el: contentEl,
|
|
517
517
|
gestureName: 'refresher',
|
|
518
518
|
gesturePriority: 31,
|
|
@@ -70,7 +70,7 @@ const ReorderGroup = class {
|
|
|
70
70
|
if (contentEl) {
|
|
71
71
|
this.scrollEl = await index$2.getScrollElement(contentEl);
|
|
72
72
|
}
|
|
73
|
-
this.gesture = (await Promise.resolve().then(function () { return require('./index-
|
|
73
|
+
this.gesture = (await Promise.resolve().then(function () { return require('./index-ee07ed59.js'); })).createGesture({
|
|
74
74
|
el: this.el,
|
|
75
75
|
gestureName: 'reorder',
|
|
76
76
|
gesturePriority: 110,
|
|
@@ -124,7 +124,7 @@ const Segment = class {
|
|
|
124
124
|
*/
|
|
125
125
|
this.scrollActiveButtonIntoView(false);
|
|
126
126
|
});
|
|
127
|
-
this.gesture = (await Promise.resolve().then(function () { return require('./index-
|
|
127
|
+
this.gesture = (await Promise.resolve().then(function () { return require('./index-ee07ed59.js'); })).createGesture({
|
|
128
128
|
el: this.el,
|
|
129
129
|
gestureName: 'segment',
|
|
130
130
|
gesturePriority: 100,
|
|
@@ -10,7 +10,7 @@ const formController = require('./form-controller-7d42a722.js');
|
|
|
10
10
|
const notchController = require('./notch-controller-1dce508a.js');
|
|
11
11
|
const helpers = require('./helpers-76bb7efb.js');
|
|
12
12
|
const index$1 = require('./index-5915f9b3.js');
|
|
13
|
-
const overlays = require('./overlays-
|
|
13
|
+
const overlays = require('./overlays-e8e05b0e.js');
|
|
14
14
|
const dir = require('./dir-94c21456.js');
|
|
15
15
|
const theme = require('./theme-d1c573d2.js');
|
|
16
16
|
const watchOptions = require('./watch-options-f5f3e158.js');
|
|
@@ -18,6 +18,7 @@ const index$2 = require('./index-09471526.js');
|
|
|
18
18
|
const ionicGlobal = require('./ionic-global-f4a2093b.js');
|
|
19
19
|
require('./index-306a7476.js');
|
|
20
20
|
require('./framework-delegate-1c29b14a.js');
|
|
21
|
+
require('./gesture-controller-9436f482.js');
|
|
21
22
|
require('./hardware-back-button-76833cac.js');
|
|
22
23
|
|
|
23
24
|
const selectIosCss = ":host{--padding-top:0px;--padding-end:0px;--padding-bottom:0px;--padding-start:0px;--placeholder-color:currentColor;--placeholder-opacity:0.6;--background:transparent;--border-style:solid;--highlight-color-focused:var(--ion-color-primary, #3880ff);--highlight-color-valid:var(--ion-color-success, #2dd36f);--highlight-color-invalid:var(--ion-color-danger, #eb445a);--highlight-color:var(--highlight-color-focused);display:block;position:relative;font-family:var(--ion-font-family, inherit);white-space:nowrap;cursor:pointer;z-index:2}:host(:not(.legacy-select)){width:100%;min-height:44px}:host(.select-label-placement-floating),:host(.select-label-placement-stacked){min-height:56px}:host(.ion-color){--highlight-color-focused:var(--ion-color-base)}:host(.legacy-select){-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;overflow:hidden}:host(.in-item.legacy-select){position:static;max-width:45%}:host(.select-disabled){pointer-events:none}:host(.ion-focused) button{border:2px solid #5e9ed6}:host([slot=start]:not(.legacy-select)),:host([slot=end]:not(.legacy-select)){width:auto}.select-placeholder{color:var(--placeholder-color);opacity:var(--placeholder-opacity)}:host(.legacy-select) label{top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;opacity:0}@supports (inset-inline-start: 0){:host(.legacy-select) label{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host(.legacy-select) label{left:0}:host-context([dir=rtl]):host(.legacy-select) label,:host-context([dir=rtl]).legacy-select label{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(.legacy-select:dir(rtl)) label{left:unset;right:unset;right:0}}}:host(.legacy-select) label::-moz-focus-inner{border:0}button{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}.select-icon{-webkit-margin-start:4px;margin-inline-start:4px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0;position:relative}:host(.in-item-color) .select-icon{color:inherit}:host(.select-label-placement-stacked) .select-icon,:host(.select-label-placement-floating) .select-icon{position:absolute;height:100%}:host(.select-ltr.select-label-placement-stacked) .select-icon,:host(.select-ltr.select-label-placement-floating) .select-icon{right:var(--padding-end, 0)}:host(.select-rtl.select-label-placement-stacked) .select-icon,:host(.select-rtl.select-label-placement-floating) .select-icon{left:var(--padding-start, 0)}.select-text{-ms-flex:1;flex:1;min-width:16px;font-size:inherit;text-overflow:ellipsis;white-space:inherit;overflow:hidden}.select-wrapper{-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);border-radius:var(--border-radius);display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;height:inherit;min-height:inherit;-webkit-transition:background-color 15ms linear;transition:background-color 15ms linear;background:var(--background);line-height:normal;cursor:inherit;-webkit-box-sizing:border-box;box-sizing:border-box}.select-wrapper .select-placeholder{-webkit-transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1)}:host(.ion-touched.ion-invalid){--highlight-color:var(--highlight-color-invalid)}:host(.ion-valid){--highlight-color:var(--highlight-color-valid)}.label-text-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;max-width:200px;-webkit-transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);pointer-events:none}.label-text,::slotted([slot=label]){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.label-text-wrapper-hidden,.select-outline-notch-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-webkit-transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);overflow:hidden}:host(.select-justify-space-between) .select-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.select-justify-start) .select-wrapper{-ms-flex-pack:start;justify-content:start}:host(.select-justify-end) .select-wrapper{-ms-flex-pack:end;justify-content:end}:host(.select-label-placement-start) .select-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.select-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.select-label-placement-end) .select-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.select-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0}:host(.select-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.select-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.select-label-placement-stacked) .select-wrapper,:host(.select-label-placement-floating) .select-wrapper{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:start}:host(.select-label-placement-stacked) .label-text-wrapper,:host(.select-label-placement-floating) .label-text-wrapper{max-width:100%}:host(.select-ltr.select-label-placement-stacked) .label-text-wrapper,:host(.select-ltr.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host(.select-rtl.select-label-placement-stacked) .label-text-wrapper,:host(.select-rtl.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}:host(.select-label-placement-stacked) .native-wrapper,:host(.select-label-placement-floating) .native-wrapper{margin-left:0;margin-right:0;margin-top:1px;margin-bottom:0;-ms-flex-positive:1;flex-grow:1;width:100%}:host(.select-label-placement-floating) .label-text-wrapper{-webkit-transform:translateY(100%) scale(1);transform:translateY(100%) scale(1)}:host(.select-label-placement-floating) .native-wrapper .select-placeholder{opacity:0}:host(.select-expanded.select-label-placement-floating) .native-wrapper .select-placeholder,:host(.ion-focused.select-label-placement-floating) .native-wrapper .select-placeholder,:host(.has-value.select-label-placement-floating) .native-wrapper .select-placeholder{opacity:1}:host(.select-label-placement-stacked) .label-text-wrapper,:host(.select-expanded.select-label-placement-floating) .label-text-wrapper,:host(.ion-focused.select-label-placement-floating) .label-text-wrapper,:host(.has-value.select-label-placement-floating) .label-text-wrapper{-webkit-transform:translateY(50%) scale(0.75);transform:translateY(50%) scale(0.75);max-width:calc(100% / 0.75)}:host(.legacy-select){--padding-top:10px;--padding-end:8px;--padding-bottom:10px;--padding-start:16px}.select-icon{width:1.125rem;height:1.125rem;color:var(--ion-color-step-650, #595959)}:host(.select-label-placement-stacked) .native-wrapper,:host(.select-label-placement-floating) .native-wrapper{width:calc(100% - 1.125rem - 4px)}:host(.select-disabled){opacity:0.3}";
|