@ionic/core 7.6.2-dev.11702924017.193c825c → 7.6.2-dev.11702926577.1a448647
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 +4 -4
- package/components/backdrop.js +12 -0
- package/components/button-active.js +1 -1
- package/components/button.js +2 -2
- 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 +64 -40
- 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/overlays.js +4 -11
- 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/dist/cjs/{button-active-466dfc8a.js → button-active-962fe442.js} +2 -2
- package/dist/cjs/{data-e2bf21de.js → data-a5109f09.js} +1 -1
- package/dist/cjs/{gesture-controller-9436f482.js → gesture-controller-c40c045a.js} +0 -1
- package/dist/cjs/{index-ee07ed59.js → index-d1b59ffa.js} +1 -1
- package/dist/cjs/index.cjs.js +3 -3
- package/dist/cjs/ion-action-sheet.cjs.entry.js +8 -8
- 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 +12 -0
- package/dist/cjs/ion-button_2.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 +56 -36
- package/dist/cjs/ion-item-option_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-loading.cjs.entry.js +1 -2
- 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.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 -2
- 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 +1 -2
- package/dist/cjs/ion-toast.cjs.entry.js +3 -3
- 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-7773cbe1.js → overlays-e77cc023.js} +4 -11
- package/dist/cjs/{swipe-back-b8f2330b.js → swipe-back-2a858bbd.js} +2 -2
- package/dist/collection/collection-manifest.json +6 -7
- package/dist/collection/components/action-sheet/action-sheet.ios.css +2 -9
- package/dist/collection/components/action-sheet/action-sheet.js +2 -2
- package/dist/collection/components/action-sheet/action-sheet.md.css +2 -9
- package/dist/collection/components/action-sheet/test/basic/action-sheet-rendering.e2e.js +0 -20
- package/dist/collection/components/backdrop/backdrop.js +12 -0
- package/dist/collection/components/button/button.ios.css +1 -1
- package/dist/collection/components/button/button.md.css +1 -1
- package/dist/collection/components/button/test/wrap/button.e2e.js +24 -12
- package/dist/collection/components/content/content.css +4 -0
- package/dist/collection/components/datetime/datetime.ios.css +38 -91
- package/dist/collection/components/datetime/datetime.js +36 -24
- package/dist/collection/components/datetime/datetime.md.css +38 -96
- package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +1 -1
- package/dist/collection/components/datetime/test/a11y/datetime.spec.js +9 -6
- package/dist/collection/components/datetime/test/basic/datetime.e2e.js +0 -10
- 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 +41 -43
- 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 +12 -15
- package/dist/collection/components/datetime/utils/data.js +1 -1
- 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}/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/test/a11y/picker.e2e.js → picker-internal/test/a11y/picker-internal.e2e.js} +2 -2
- 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/utils/gesture/button-active.js +1 -1
- package/dist/collection/utils/gesture/gesture-controller.js +1 -1
- package/dist/collection/utils/overlays.js +4 -11
- package/dist/docs.json +42 -484
- package/dist/esm/{button-active-2758ff14.js → button-active-308d3edd.js} +2 -2
- package/dist/esm/{data-6a31d701.js → data-775093f5.js} +1 -1
- package/dist/esm/{gesture-controller-314a54f6.js → gesture-controller-1bf57181.js} +1 -1
- package/dist/esm/{index-39782642.js → index-2cf77112.js} +2 -2
- package/dist/esm/index.js +3 -3
- package/dist/esm/ion-action-sheet.entry.js +8 -8
- 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 +12 -0
- package/dist/esm/ion-button_2.entry.js +2 -2
- package/dist/esm/ion-datetime-button.entry.js +1 -1
- package/dist/esm/ion-datetime_3.entry.js +55 -35
- package/dist/esm/ion-item-option_3.entry.js +1 -1
- package/dist/esm/ion-loading.entry.js +1 -2
- 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.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 -2
- 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 +1 -2
- package/dist/esm/ion-toast.entry.js +3 -3
- 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-94dac1cb.js → overlays-b33f6bca.js} +4 -11
- package/dist/esm/{swipe-back-a8ca7f93.js → swipe-back-a6f386fc.js} +2 -2
- package/dist/esm-es5/button-active-308d3edd.js +4 -0
- package/dist/esm-es5/{gesture-controller-314a54f6.js → gesture-controller-1bf57181.js} +1 -1
- package/dist/esm-es5/{index-39782642.js → index-2cf77112.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-button_2.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-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-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-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-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-b33f6bca.js +4 -0
- package/dist/esm-es5/swipe-back-a6f386fc.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-0235067a.js +4 -0
- package/dist/ionic/{p-f6cae0b2.system.entry.js → p-06abe918.system.entry.js} +1 -1
- package/dist/ionic/{p-5ff211d0.system.entry.js → p-10ec9af7.system.entry.js} +1 -1
- package/dist/ionic/{p-10339dcc.entry.js → p-11786dc7.entry.js} +1 -1
- package/dist/ionic/{p-1b14f0f8.entry.js → p-11a3973f.entry.js} +1 -1
- package/dist/ionic/p-12a62500.entry.js +4 -0
- package/dist/ionic/p-19d9ceb8.system.js +1 -1
- package/dist/ionic/{p-642ac927.entry.js → p-1b27ac67.entry.js} +1 -1
- package/dist/ionic/p-1c249831.entry.js +4 -0
- package/dist/ionic/{p-e2737fef.system.entry.js → p-22827063.system.entry.js} +1 -1
- package/dist/ionic/{p-d2634efe.system.entry.js → p-28740823.system.entry.js} +1 -1
- package/dist/ionic/{p-c01803db.entry.js → p-2894d5f6.entry.js} +1 -1
- package/dist/ionic/{p-b2b5d761.entry.js → p-2a583966.entry.js} +1 -1
- package/dist/ionic/{p-beed2450.system.entry.js → p-2df97906.system.entry.js} +1 -1
- package/dist/ionic/{p-3e1e14d9.system.js → p-31b2326e.system.js} +1 -1
- package/dist/ionic/p-35ce400e.system.js +4 -0
- package/dist/ionic/p-3671f1b9.system.js +4 -0
- package/dist/ionic/{p-bb3fd397.entry.js → p-3e8d5e53.entry.js} +1 -1
- package/dist/ionic/p-47bb15a1.entry.js +4 -0
- package/dist/ionic/p-4d145435.entry.js +4 -0
- package/dist/ionic/p-507ddbfe.system.entry.js +4 -0
- package/dist/ionic/p-648ad047.system.entry.js +4 -0
- package/dist/ionic/p-6a6477b2.js +4 -0
- package/dist/ionic/p-6ab03751.js +4 -0
- package/dist/ionic/{p-25312768.system.entry.js → p-6b0ce9b4.system.entry.js} +1 -1
- package/dist/ionic/p-6c277fa2.system.entry.js +4 -0
- package/dist/ionic/p-6fba0ce1.system.entry.js +4 -0
- package/dist/ionic/{p-3af5faf8.system.entry.js → p-745e3339.system.entry.js} +1 -1
- package/dist/ionic/{p-ba5d9e27.entry.js → p-767f1a92.entry.js} +1 -1
- package/dist/ionic/p-7dc892f8.entry.js +4 -0
- package/dist/ionic/p-85f48531.entry.js +4 -0
- package/dist/ionic/p-8f301ac5.system.entry.js +4 -0
- package/dist/ionic/p-932f2259.system.entry.js +4 -0
- package/dist/ionic/{p-0e908476.system.entry.js → p-96d4814f.system.entry.js} +1 -1
- package/dist/ionic/{p-964dcdb2.system.entry.js → p-9fda6824.system.entry.js} +1 -1
- package/dist/ionic/{p-bec6ae40.entry.js → p-a3ca2e64.entry.js} +1 -1
- package/dist/ionic/{p-4793c14c.system.entry.js → p-a42ef163.system.entry.js} +1 -1
- package/dist/ionic/{p-6e4c7340.system.entry.js → p-a821750c.system.entry.js} +1 -1
- package/dist/ionic/{p-ed8402d6.entry.js → p-aee39e06.entry.js} +1 -1
- package/dist/ionic/{p-1ab2642a.system.js → p-afa9f205.system.js} +1 -1
- package/dist/ionic/p-b1f29949.system.entry.js +4 -0
- package/dist/ionic/p-b7a2ffc9.system.entry.js +4 -0
- package/dist/ionic/{p-92bfb607.entry.js → p-b964aba3.entry.js} +1 -1
- package/dist/ionic/{p-9b97df10.js → p-bb3615f7.js} +1 -1
- package/dist/ionic/{p-3dc1b0f9.entry.js → p-c1701827.entry.js} +1 -1
- package/dist/ionic/{p-20755eb0.entry.js → p-c5acfeb1.entry.js} +1 -1
- package/dist/ionic/{p-20d469d0.system.js → p-c7c8429a.system.js} +1 -1
- package/dist/ionic/p-cd1b920b.entry.js +4 -0
- package/dist/ionic/p-da5e2652.entry.js +4 -0
- package/dist/ionic/{p-3b434dee.system.entry.js → p-dc71e4ef.system.entry.js} +1 -1
- package/dist/ionic/{p-db05ecb6.system.entry.js → p-ddd48faf.system.entry.js} +1 -1
- package/dist/ionic/p-ec652bc0.system.entry.js +4 -0
- package/dist/ionic/{p-13d4dfe7.entry.js → p-f2bfd3d7.entry.js} +1 -1
- package/dist/ionic/{p-8ededb41.js → p-f5d2dc9b.js} +1 -1
- package/dist/ionic/p-f6e9c227.system.js +4 -0
- package/dist/ionic/p-f894e0ad.entry.js +4 -0
- package/dist/types/components/action-sheet/action-sheet-interface.d.ts +0 -1
- package/dist/types/components/backdrop/backdrop.d.ts +3 -0
- package/dist/types/components/datetime/datetime.d.ts +1 -0
- package/dist/types/components/datetime/utils/data.d.ts +7 -11
- package/dist/types/components/menu/menu.d.ts +1 -1
- 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/gesture/gesture-controller.d.ts +0 -1
- package/dist/types/utils/overlays.d.ts +2 -5
- package/hydrate/index.js +1199 -1300
- package/package.json +2 -2
- 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/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/utils/test/overlays/overlays-scroll-blocking.spec.js +0 -65
- package/dist/esm/ion-picker-column-option.entry.js +0 -100
- package/dist/esm-es5/button-active-2758ff14.js +0 -4
- 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-94dac1cb.js +0 -4
- package/dist/esm-es5/swipe-back-a8ca7f93.js +0 -4
- package/dist/ionic/p-26ff1180.entry.js +0 -4
- package/dist/ionic/p-2f449cdf.system.entry.js +0 -4
- package/dist/ionic/p-3717e641.system.entry.js +0 -4
- package/dist/ionic/p-51abefb7.system.js +0 -4
- package/dist/ionic/p-71483cbb.entry.js +0 -4
- package/dist/ionic/p-73fbf18d.entry.js +0 -4
- package/dist/ionic/p-75a3e35b.entry.js +0 -4
- package/dist/ionic/p-77d78f68.system.entry.js +0 -4
- package/dist/ionic/p-7c0d778d.system.js +0 -4
- package/dist/ionic/p-80ad9792.system.js +0 -4
- package/dist/ionic/p-85a67421.system.entry.js +0 -4
- package/dist/ionic/p-8ad6d643.entry.js +0 -4
- package/dist/ionic/p-9164a09d.entry.js +0 -4
- package/dist/ionic/p-a1bd098f.system.entry.js +0 -4
- package/dist/ionic/p-a41eaff2.system.entry.js +0 -4
- package/dist/ionic/p-a60a1ce5.js +0 -4
- package/dist/ionic/p-c001b24f.entry.js +0 -4
- package/dist/ionic/p-c19bf524.entry.js +0 -4
- package/dist/ionic/p-c6176849.system.entry.js +0 -4
- package/dist/ionic/p-cf350317.entry.js +0 -4
- package/dist/ionic/p-d3525765.js +0 -4
- package/dist/ionic/p-dc63dccb.system.entry.js +0 -4
- package/dist/ionic/p-f0717d98.js +0 -4
- package/dist/ionic/p-f0dea903.system.entry.js +0 -4
- package/dist/ionic/p-f60807dd.system.entry.js +0 -4
- package/dist/ionic/p-f8c5008f.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}/picker-column.md.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-6a31d701.js → data-775093f5.js} +0 -0
- /package/dist/ionic/{p-a64accf5.js → p-18cae04f.js} +0 -0
- /package/dist/ionic/{p-7ff4359e.system.js → p-87bb3735.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
|
@@ -54,48 +54,15 @@
|
|
|
54
54
|
* }
|
|
55
55
|
*/
|
|
56
56
|
:host {
|
|
57
|
-
display: flex;
|
|
58
|
-
align-items: center;
|
|
59
|
-
justify-content: center;
|
|
60
|
-
max-width: 100%;
|
|
61
|
-
height: 200px;
|
|
62
|
-
font-size: 22px;
|
|
63
|
-
text-align: center;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
.picker-opts {
|
|
67
|
-
/**
|
|
68
|
-
* This padding must be set here and not on the
|
|
69
|
-
* host to ensure that the focus highlight on the
|
|
70
|
-
* column is not overly narrow.
|
|
71
|
-
*/
|
|
72
57
|
-webkit-padding-start: 16px;
|
|
73
58
|
padding-inline-start: 16px;
|
|
74
59
|
-webkit-padding-end: 16px;
|
|
75
60
|
padding-inline-end: 16px;
|
|
76
61
|
padding-top: 0px;
|
|
77
62
|
padding-bottom: 0px;
|
|
78
|
-
|
|
79
|
-
* When using reactive data, such as in datetime's
|
|
80
|
-
* wheel picker, there may be layout shifts between
|
|
81
|
-
* individual columns in a picker as the columns
|
|
82
|
-
* shrink to fit the widest item in the column.
|
|
83
|
-
* Setting a minimum width avoids this layout shifting.
|
|
84
|
-
*
|
|
85
|
-
* Note that we need this min-width set on the same
|
|
86
|
-
* element as the vertical padding (i.e. not on the
|
|
87
|
-
* host).
|
|
88
|
-
*/
|
|
89
|
-
min-width: 26px;
|
|
90
|
-
max-height: 200px;
|
|
63
|
+
height: 200px;
|
|
91
64
|
outline: none;
|
|
92
|
-
|
|
93
|
-
* Added so that text-align can be set on the host
|
|
94
|
-
* from external components. For example, datetime
|
|
95
|
-
* changes the alignment of specific columns in its
|
|
96
|
-
* wheel pickers.
|
|
97
|
-
*/
|
|
98
|
-
text-align: inherit;
|
|
65
|
+
font-size: 22px;
|
|
99
66
|
scroll-snap-type: y mandatory;
|
|
100
67
|
/**
|
|
101
68
|
* Need to explicitly set overflow-x: hidden
|
|
@@ -104,9 +71,17 @@
|
|
|
104
71
|
overflow-x: hidden;
|
|
105
72
|
overflow-y: scroll;
|
|
106
73
|
scrollbar-width: none;
|
|
74
|
+
text-align: center;
|
|
107
75
|
}
|
|
108
76
|
|
|
109
|
-
|
|
77
|
+
/**
|
|
78
|
+
* Hide scrollbars on Chrome and Safari
|
|
79
|
+
*/
|
|
80
|
+
:host::-webkit-scrollbar {
|
|
81
|
+
display: none;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
:host .picker-item {
|
|
110
85
|
padding-left: 0;
|
|
111
86
|
padding-right: 0;
|
|
112
87
|
padding-top: 0;
|
|
@@ -128,82 +103,94 @@
|
|
|
128
103
|
text-align: inherit;
|
|
129
104
|
text-overflow: ellipsis;
|
|
130
105
|
white-space: nowrap;
|
|
106
|
+
cursor: pointer;
|
|
131
107
|
overflow: hidden;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
/**
|
|
135
|
-
* Hide scrollbars on Chrome and Safari
|
|
136
|
-
*/
|
|
137
|
-
.picker-opts::-webkit-scrollbar {
|
|
138
|
-
display: none;
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
::slotted(ion-picker-column-option) {
|
|
142
|
-
display: block;
|
|
143
108
|
scroll-snap-align: center;
|
|
144
109
|
}
|
|
145
110
|
|
|
146
|
-
.picker-item-empty,
|
|
147
|
-
:host
|
|
148
|
-
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
::slotted([slot=prefix]), ::slotted([slot=suffix]) {
|
|
152
|
-
max-width: 200px;
|
|
153
|
-
text-overflow: ellipsis;
|
|
154
|
-
white-space: nowrap;
|
|
155
|
-
overflow: hidden;
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
::slotted([slot=prefix]) {
|
|
159
|
-
/**
|
|
160
|
-
* This is added in addition to the column's own padding so that there is white
|
|
161
|
-
* space between the slot and the column's focus highlight.
|
|
162
|
-
*/
|
|
163
|
-
-webkit-padding-start: 16px;
|
|
164
|
-
padding-inline-start: 16px;
|
|
165
|
-
-webkit-padding-end: 16px;
|
|
166
|
-
padding-inline-end: 16px;
|
|
167
|
-
padding-top: 0;
|
|
168
|
-
padding-bottom: 0;
|
|
169
|
-
justify-content: end;
|
|
111
|
+
:host .picker-item-empty,
|
|
112
|
+
:host .picker-item[disabled] {
|
|
113
|
+
cursor: default;
|
|
170
114
|
}
|
|
171
115
|
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
* space between the slot and the column's focus highlight.
|
|
176
|
-
*/
|
|
177
|
-
-webkit-padding-start: 16px;
|
|
178
|
-
padding-inline-start: 16px;
|
|
179
|
-
-webkit-padding-end: 16px;
|
|
180
|
-
padding-inline-end: 16px;
|
|
181
|
-
padding-top: 0;
|
|
182
|
-
padding-bottom: 0;
|
|
183
|
-
justify-content: start;
|
|
116
|
+
:host .picker-item-empty,
|
|
117
|
+
:host(:not([disabled])) .picker-item[disabled] {
|
|
118
|
+
scroll-snap-align: none;
|
|
184
119
|
}
|
|
185
120
|
|
|
186
|
-
:host(
|
|
121
|
+
:host([disabled]) {
|
|
187
122
|
overflow-y: hidden;
|
|
188
123
|
}
|
|
189
124
|
|
|
190
|
-
|
|
191
|
-
* When the column is disabled, none of the options
|
|
192
|
-
* should be interactive. However, we do not disable
|
|
193
|
-
* the buttons because that would require overriding the
|
|
194
|
-
* app's preference for each option. In this case,
|
|
195
|
-
* the picker column interactive as a whole is
|
|
196
|
-
* disabled, not individual options.
|
|
197
|
-
*/
|
|
198
|
-
:host(.picker-column-disabled) ::slotted(ion-picker-column-option) {
|
|
199
|
-
cursor: default;
|
|
125
|
+
:host .picker-item[disabled] {
|
|
200
126
|
opacity: 0.4;
|
|
201
|
-
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
:host(.picker-column-active) .picker-item.picker-item-active {
|
|
130
|
+
color: var(--ion-color-base);
|
|
202
131
|
}
|
|
203
132
|
|
|
204
133
|
@media (any-hover: hover) {
|
|
205
|
-
:host(:focus)
|
|
134
|
+
:host(:focus) {
|
|
206
135
|
outline: none;
|
|
207
136
|
background: rgba(var(--ion-color-base-rgb), 0.2);
|
|
208
137
|
}
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Convert a font size to a dynamic font size.
|
|
141
|
+
* Fonts that participate in Dynamic Type should use
|
|
142
|
+
* dynamic font sizes.
|
|
143
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
144
|
+
* @param unit (optional) - The unit to convert to. Use this if you want to
|
|
145
|
+
* convert to a unit other than $baselineUnit.
|
|
146
|
+
*/
|
|
147
|
+
/**
|
|
148
|
+
* Convert a font size to a dynamic font size but impose
|
|
149
|
+
* a maximum font size.
|
|
150
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
151
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
152
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
153
|
+
* convert to a unit other than $baselineUnit.
|
|
154
|
+
*/
|
|
155
|
+
/**
|
|
156
|
+
* Convert a font size to a dynamic font size but impose
|
|
157
|
+
* a minimum font size.
|
|
158
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
159
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
160
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
161
|
+
* convert to a unit other than $baselineUnit.
|
|
162
|
+
*/
|
|
163
|
+
/**
|
|
164
|
+
* Convert a font size to a dynamic font size but impose
|
|
165
|
+
* maximum and minimum font sizes.
|
|
166
|
+
* @param size - The initial font size including the unit (i.e. px or pt)
|
|
167
|
+
* @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
|
|
168
|
+
* @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
|
|
169
|
+
* @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
|
|
170
|
+
* convert to a unit other than $baselineUnit.
|
|
171
|
+
*/
|
|
172
|
+
/**
|
|
173
|
+
* A heuristic that applies CSS to tablet
|
|
174
|
+
* viewports.
|
|
175
|
+
*
|
|
176
|
+
* Usage:
|
|
177
|
+
* @include tablet-viewport() {
|
|
178
|
+
* :host {
|
|
179
|
+
* background-color: green;
|
|
180
|
+
* }
|
|
181
|
+
* }
|
|
182
|
+
*/
|
|
183
|
+
/**
|
|
184
|
+
* A heuristic that applies CSS to mobile
|
|
185
|
+
* viewports (i.e. phones, not tablets).
|
|
186
|
+
*
|
|
187
|
+
* Usage:
|
|
188
|
+
* @include mobile-viewport() {
|
|
189
|
+
* :host {
|
|
190
|
+
* background-color: blue;
|
|
191
|
+
* }
|
|
192
|
+
* }
|
|
193
|
+
*/
|
|
194
|
+
:host .picker-item-active {
|
|
195
|
+
color: var(--ion-color-base);
|
|
209
196
|
}
|
|
@@ -7,20 +7,20 @@ import { configs, test } from "../../../../utils/test/playwright/index";
|
|
|
7
7
|
* This behavior does not vary across modes/directions.
|
|
8
8
|
*/
|
|
9
9
|
configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
10
|
-
test.describe(title('picker-column'), () => {
|
|
10
|
+
test.describe(title('picker-column-internal'), () => {
|
|
11
11
|
test.beforeEach(async ({ page }) => {
|
|
12
|
-
await page.goto('/src/components/picker-column/test/basic', config);
|
|
12
|
+
await page.goto('/src/components/picker-column-internal/test/basic', config);
|
|
13
13
|
});
|
|
14
14
|
test('should render a picker item for each item', async ({ page }) => {
|
|
15
|
-
const columns = page.locator('ion-picker-column
|
|
15
|
+
const columns = page.locator('ion-picker-column-internal .picker-item:not(.picker-item-empty)');
|
|
16
16
|
await expect(columns).toHaveCount(24);
|
|
17
17
|
});
|
|
18
18
|
test('should render 6 empty picker items', async ({ page }) => {
|
|
19
|
-
const columns = page.locator('ion-picker-column .picker-item-empty');
|
|
19
|
+
const columns = page.locator('ion-picker-column-internal .picker-item-empty');
|
|
20
20
|
await expect(columns).toHaveCount(6);
|
|
21
21
|
});
|
|
22
22
|
test('should not have an active item when value is not set', async ({ page }) => {
|
|
23
|
-
const activeColumn = page.locator('ion-picker-column
|
|
23
|
+
const activeColumn = page.locator('ion-picker-column-internal .picker-item-active');
|
|
24
24
|
await expect(activeColumn).toHaveCount(0);
|
|
25
25
|
});
|
|
26
26
|
test('should have an active item when value is set', async ({ page }) => {
|
|
@@ -28,7 +28,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
|
|
|
28
28
|
el.value = '12';
|
|
29
29
|
});
|
|
30
30
|
await page.waitForChanges();
|
|
31
|
-
const activeColumn = page.locator('ion-picker-column
|
|
31
|
+
const activeColumn = page.locator('ion-picker-column-internal .picker-item-active');
|
|
32
32
|
expect(activeColumn).not.toBeNull();
|
|
33
33
|
});
|
|
34
34
|
// TODO FW-3616
|
|
@@ -38,8 +38,8 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
|
|
|
38
38
|
el.scrollTop = 801;
|
|
39
39
|
});
|
|
40
40
|
await page.waitForChanges();
|
|
41
|
-
const activeColumn = page.locator('ion-picker-column
|
|
42
|
-
await
|
|
41
|
+
const activeColumn = page.locator('ion-picker-column-internal .picker-item-active');
|
|
42
|
+
expect(await (activeColumn === null || activeColumn === void 0 ? void 0 : activeColumn.innerText())).toEqual('23');
|
|
43
43
|
});
|
|
44
44
|
test('should not emit ionChange when the value is modified externally', async ({ page, skip }) => {
|
|
45
45
|
skip.browser('firefox', 'https://bugzilla.mozilla.org/show_bug.cgi?id=1766890');
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
|
+
*/
|
|
4
|
+
import { expect } from "@playwright/test";
|
|
5
|
+
import { configs, test } from "../../../../utils/test/playwright/index";
|
|
6
|
+
/**
|
|
7
|
+
* This behavior does not vary across directions.
|
|
8
|
+
*/
|
|
9
|
+
configs({ directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
|
|
10
|
+
test.describe(title('picker-column-internal: disabled rendering'), () => {
|
|
11
|
+
test('should not have visual regressions', async ({ page }) => {
|
|
12
|
+
await page.setContent(`
|
|
13
|
+
<ion-picker-internal>
|
|
14
|
+
<ion-picker-column-internal value="b"></ion-picker-column-internal>
|
|
15
|
+
</ion-picker-internal>
|
|
16
|
+
|
|
17
|
+
<script>
|
|
18
|
+
const column = document.querySelector('ion-picker-column-internal');
|
|
19
|
+
column.items = [
|
|
20
|
+
{ text: 'A', value: 'a', disabled: true },
|
|
21
|
+
{ text: 'B', value: 'b' },
|
|
22
|
+
{ text: 'C', value: 'c', disabled: true }
|
|
23
|
+
]
|
|
24
|
+
</script>
|
|
25
|
+
`, config);
|
|
26
|
+
const picker = page.locator('ion-picker-internal');
|
|
27
|
+
await expect(picker).toHaveScreenshot(screenshot(`picker-internal-disabled`));
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
/**
|
|
32
|
+
* This behavior does not vary across modes/directions.
|
|
33
|
+
*/
|
|
34
|
+
configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
35
|
+
test.describe(title('picker-column-internal: disabled items'), () => {
|
|
36
|
+
test('all picker items should be enabled by default', async ({ page }) => {
|
|
37
|
+
await page.setContent(`
|
|
38
|
+
<ion-picker-internal>
|
|
39
|
+
<ion-picker-column-internal></ion-picker-column-internal>
|
|
40
|
+
</ion-picker-internal>
|
|
41
|
+
|
|
42
|
+
<script>
|
|
43
|
+
const column = document.querySelector('ion-picker-column-internal');
|
|
44
|
+
column.items = [
|
|
45
|
+
{ text: 'A', value: 'a' },
|
|
46
|
+
{ text: 'B', value: 'b' },
|
|
47
|
+
{ text: 'C', value: 'c' }
|
|
48
|
+
]
|
|
49
|
+
</script>
|
|
50
|
+
`, config);
|
|
51
|
+
const pickerItems = page.locator('ion-picker-column-internal .picker-item:not(.picker-item-empty, [disabled])');
|
|
52
|
+
expect(await pickerItems.count()).toBe(3);
|
|
53
|
+
});
|
|
54
|
+
test('disabled picker item should not be interactive', async ({ page }) => {
|
|
55
|
+
await page.setContent(`
|
|
56
|
+
<ion-picker-internal>
|
|
57
|
+
<ion-picker-column-internal></ion-picker-column-internal>
|
|
58
|
+
</ion-picker-internal>
|
|
59
|
+
|
|
60
|
+
<script>
|
|
61
|
+
const column = document.querySelector('ion-picker-column-internal');
|
|
62
|
+
column.items = [
|
|
63
|
+
{ text: 'A', value: 'a' },
|
|
64
|
+
{ text: 'B', value: 'b', disabled: true },
|
|
65
|
+
{ text: 'C', value: 'c' }
|
|
66
|
+
]
|
|
67
|
+
</script>
|
|
68
|
+
`, config);
|
|
69
|
+
const disabledItem = page.locator('ion-picker-column-internal .picker-item[disabled]');
|
|
70
|
+
await expect(disabledItem).not.toBeEnabled();
|
|
71
|
+
});
|
|
72
|
+
test('disabled picker item should not be considered active', async ({ page }) => {
|
|
73
|
+
await page.setContent(`
|
|
74
|
+
<ion-picker-internal>
|
|
75
|
+
<ion-picker-column-internal value="b"></ion-picker-column-internal>
|
|
76
|
+
</ion-picker-internal>
|
|
77
|
+
|
|
78
|
+
<script>
|
|
79
|
+
const column = document.querySelector('ion-picker-column-internal');
|
|
80
|
+
column.items = [
|
|
81
|
+
{ text: 'A', value: 'a' },
|
|
82
|
+
{ text: 'B', value: 'b', disabled: true },
|
|
83
|
+
{ text: 'C', value: 'c' }
|
|
84
|
+
]
|
|
85
|
+
</script>
|
|
86
|
+
`, config);
|
|
87
|
+
const disabledItem = page.locator('ion-picker-column-internal .picker-item[data-value="b"]');
|
|
88
|
+
await expect(disabledItem).not.toHaveClass(/picker-item-active/);
|
|
89
|
+
});
|
|
90
|
+
test('setting the value to a disabled item should not cause that item to be active', async ({ page }) => {
|
|
91
|
+
await page.setContent(`
|
|
92
|
+
<ion-picker-internal>
|
|
93
|
+
<ion-picker-column-internal></ion-picker-column-internal>
|
|
94
|
+
</ion-picker-internal>
|
|
95
|
+
|
|
96
|
+
<script>
|
|
97
|
+
const column = document.querySelector('ion-picker-column-internal');
|
|
98
|
+
column.items = [
|
|
99
|
+
{ text: 'A', value: 'a' },
|
|
100
|
+
{ text: 'B', value: 'b', disabled: true },
|
|
101
|
+
{ text: 'C', value: 'c' }
|
|
102
|
+
]
|
|
103
|
+
</script>
|
|
104
|
+
`, config);
|
|
105
|
+
const pickerColumn = page.locator('ion-picker-column-internal');
|
|
106
|
+
await pickerColumn.evaluate((el) => (el.value = 'b'));
|
|
107
|
+
await page.waitForChanges();
|
|
108
|
+
const disabledItem = page.locator('ion-picker-column-internal .picker-item[data-value="b"]');
|
|
109
|
+
await expect(disabledItem).toBeDisabled();
|
|
110
|
+
await expect(disabledItem).not.toHaveClass(/picker-item-active/);
|
|
111
|
+
});
|
|
112
|
+
test('defaulting the value to a disabled item should not cause that item to be active', async ({ page }) => {
|
|
113
|
+
await page.setContent(`
|
|
114
|
+
<ion-picker-internal>
|
|
115
|
+
<ion-picker-column-internal></ion-picker-column-internal>
|
|
116
|
+
</ion-picker-internal>
|
|
117
|
+
|
|
118
|
+
<script>
|
|
119
|
+
const column = document.querySelector('ion-picker-column-internal');
|
|
120
|
+
column.items = [
|
|
121
|
+
{ text: 'A', value: 'a' },
|
|
122
|
+
{ text: 'B', value: 'b', disabled: true },
|
|
123
|
+
{ text: 'C', value: 'c' }
|
|
124
|
+
]
|
|
125
|
+
column.value = 'b'
|
|
126
|
+
</script>
|
|
127
|
+
`, config);
|
|
128
|
+
const disabledItem = page.locator('ion-picker-column-internal .picker-item[data-value="b"]');
|
|
129
|
+
await expect(disabledItem).toBeDisabled();
|
|
130
|
+
await expect(disabledItem).not.toHaveClass(/picker-item-active/);
|
|
131
|
+
});
|
|
132
|
+
});
|
|
133
|
+
});
|
|
134
|
+
/**
|
|
135
|
+
* This behavior does not vary across directions.
|
|
136
|
+
*/
|
|
137
|
+
configs({ directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
|
|
138
|
+
test.describe(title('picker-column-internal: disabled column rendering'), () => {
|
|
139
|
+
test.beforeEach(async ({ page }) => {
|
|
140
|
+
await page.goto('/src/components/picker-column-internal/test/disabled', config);
|
|
141
|
+
});
|
|
142
|
+
test('disabled column should not have visual regressions', async ({ page }) => {
|
|
143
|
+
const disabledColumn = page.locator('#column-disabled');
|
|
144
|
+
await page.waitForChanges();
|
|
145
|
+
await expect(disabledColumn).toHaveScreenshot(screenshot('picker-internal-disabled-column'));
|
|
146
|
+
});
|
|
147
|
+
});
|
|
148
|
+
});
|
|
149
|
+
/**
|
|
150
|
+
* This behavior does not vary across modes/directions.
|
|
151
|
+
*/
|
|
152
|
+
configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
153
|
+
test.describe(title('picker-column-internal: disabled column'), () => {
|
|
154
|
+
test.beforeEach(async ({ page }) => {
|
|
155
|
+
await page.goto('/src/components/picker-column-internal/test/disabled', config);
|
|
156
|
+
});
|
|
157
|
+
test('item in disabled column should not be interactive', async ({ page }) => {
|
|
158
|
+
const secondItem = page.locator('#column-disabled .picker-item:not(.picker-item-empty)').nth(1);
|
|
159
|
+
await expect(secondItem).toBeDisabled();
|
|
160
|
+
});
|
|
161
|
+
});
|
|
162
|
+
});
|