@ionic/core 7.6.7-dev.11706571117.1bcbc36b → 7.6.7-dev.11706824245.18d35376
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 +2 -2
- package/components/alert.js +2 -2
- package/components/backdrop.js +0 -12
- package/components/button.js +2 -2
- package/components/checkbox.js +2 -2
- package/components/data.js +1 -1
- package/components/gesture-controller.js +1 -1
- package/components/ion-back-button.js +1 -1
- package/components/ion-badge.js +2 -2
- package/components/ion-breadcrumb.js +2 -2
- package/components/ion-card-subtitle.js +2 -2
- package/components/ion-card-title.js +1 -1
- package/components/ion-card.js +2 -2
- package/components/ion-content.js +3 -4
- package/components/ion-datetime-button.js +2 -2
- package/components/ion-datetime.js +40 -64
- package/components/ion-fab-button.js +2 -2
- package/components/ion-infinite-scroll-content.js +2 -2
- package/components/ion-input.js +2 -2
- package/components/ion-item-divider.js +2 -2
- package/components/ion-item-option.js +2 -2
- package/components/ion-item-options.js +2 -2
- package/components/ion-loading.js +2 -2
- package/components/ion-menu-button.js +1 -1
- package/components/ion-menu.js +21 -15
- package/components/ion-modal.js +2 -2
- package/components/ion-nav.js +7 -3
- 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-progress-bar.js +2 -2
- package/components/ion-range.js +2 -2
- package/components/ion-refresher-content.js +1 -1
- package/components/ion-refresher.js +2 -2
- package/components/ion-router-link.js +1 -1
- package/components/ion-searchbar.js +2 -2
- package/components/ion-segment-button.js +2 -2
- package/components/ion-select.js +2 -2
- package/components/ion-split-pane.js +26 -15
- package/components/ion-tab-bar.js +2 -2
- package/components/ion-textarea.js +2 -2
- package/components/ion-toast.js +2 -2
- package/components/ion-toggle.js +2 -2
- package/components/ion-toolbar.js +2 -2
- package/components/item.js +2 -8
- package/components/label.js +1 -1
- package/components/list-header.js +2 -2
- package/components/note.js +2 -2
- package/components/overlays.js +11 -4
- package/components/picker-column-option.js +122 -0
- package/components/picker-column.js +351 -322
- package/components/picker-column2.js +379 -0
- package/components/{picker-internal.js → picker.js} +29 -22
- package/components/popover.js +1 -1
- package/components/radio.js +2 -2
- package/components/select-popover.js +1 -1
- package/css/core.css +101 -34
- package/css/core.css.map +1 -1
- package/css/global.bundle.css +1 -1
- package/css/ionic.bundle.css +1 -1
- package/css/ionic.bundle.css.map +1 -1
- package/css/themes/dark.always.css +160 -0
- package/css/themes/dark.always.css.map +1 -0
- package/css/themes/dark.class.css +160 -0
- package/css/themes/dark.class.css.map +1 -0
- package/css/themes/dark.css +3 -0
- package/css/themes/dark.css.map +1 -0
- package/css/themes/dark.system.css +162 -0
- package/css/themes/dark.system.css.map +1 -0
- package/css/themes/high-contrast-dark.always.css +177 -0
- package/css/themes/high-contrast-dark.always.css.map +1 -0
- package/css/themes/high-contrast-dark.class.css +177 -0
- package/css/themes/high-contrast-dark.class.css.map +1 -0
- package/css/themes/high-contrast-dark.css +3 -0
- package/css/themes/high-contrast-dark.css.map +1 -0
- package/css/themes/high-contrast-dark.system.css +179 -0
- package/css/themes/high-contrast-dark.system.css.map +1 -0
- package/css/themes/high-contrast-light.always.css +93 -0
- package/css/themes/high-contrast-light.always.css.map +1 -0
- package/css/themes/high-contrast-light.class.css +93 -0
- package/css/themes/high-contrast-light.class.css.map +1 -0
- package/css/themes/high-contrast-light.css +3 -0
- package/css/themes/high-contrast-light.css.map +1 -0
- package/css/themes/high-contrast-light.system.css +95 -0
- package/css/themes/high-contrast-light.system.css.map +1 -0
- package/css/typography.css +1 -1
- package/dist/cjs/{button-active-85665616.js → button-active-d432e262.js} +1 -1
- package/dist/cjs/{data-a5109f09.js → data-e2bf21de.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 +6 -6
- package/dist/cjs/ion-alert.cjs.entry.js +6 -6
- package/dist/cjs/ion-app_8.cjs.entry.js +6 -7
- package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-back-button.cjs.entry.js +1 -1
- package/dist/cjs/ion-backdrop.cjs.entry.js +0 -12
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-card_5.cjs.entry.js +5 -5
- package/dist/cjs/ion-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/ion-datetime-button.cjs.entry.js +3 -3
- package/dist/cjs/ion-datetime_3.cjs.entry.js +37 -57
- package/dist/cjs/ion-fab_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-input.cjs.entry.js +2 -2
- package/dist/cjs/ion-item-option_3.cjs.entry.js +5 -5
- package/dist/cjs/ion-item_8.cjs.entry.js +9 -14
- package/dist/cjs/ion-loading.cjs.entry.js +4 -3
- package/dist/cjs/ion-menu_3.cjs.entry.js +25 -20
- package/dist/cjs/ion-modal.cjs.entry.js +5 -5
- package/dist/cjs/ion-nav_2.cjs.entry.js +6 -3
- 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} +104 -87
- package/dist/cjs/{ion-picker-internal.cjs.entry.js → ion-picker.cjs.entry.js} +26 -19
- package/dist/cjs/ion-popover.cjs.entry.js +3 -2
- package/dist/cjs/ion-progress-bar.cjs.entry.js +2 -2
- package/dist/cjs/ion-radio_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-range.cjs.entry.js +3 -3
- package/dist/cjs/ion-refresher_2.cjs.entry.js +6 -6
- package/dist/cjs/ion-reorder_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-route_4.cjs.entry.js +1 -1
- package/dist/cjs/ion-searchbar.cjs.entry.js +2 -2
- package/dist/cjs/ion-segment_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-select_3.cjs.entry.js +5 -4
- package/dist/cjs/ion-split-pane.cjs.entry.js +24 -14
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-textarea.cjs.entry.js +2 -2
- package/dist/cjs/ion-toast.cjs.entry.js +5 -5
- package/dist/cjs/ion-toggle.cjs.entry.js +3 -3
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{overlays-8285b485.js → overlays-3afa911d.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/action-sheet/action-sheet.ios.css +7 -7
- package/dist/collection/components/action-sheet/action-sheet.md.css +1 -1
- package/dist/collection/components/action-sheet/test/a11y/action-sheet.e2e.js +23 -14
- package/dist/collection/components/alert/alert.ios.css +12 -12
- package/dist/collection/components/alert/alert.md.css +17 -17
- package/dist/collection/components/alert/test/a11y/alert.e2e.js +22 -9
- package/dist/collection/components/back-button/back-button.ios.css +1 -1
- package/dist/collection/components/back-button/test/a11y/back-button.e2e.js +21 -0
- package/dist/collection/components/backdrop/backdrop.js +0 -12
- package/dist/collection/components/badge/badge.ios.css +1 -1
- package/dist/collection/components/badge/badge.md.css +1 -1
- package/dist/collection/components/badge/test/a11y/badge.e2e.js +18 -0
- package/dist/collection/components/breadcrumb/breadcrumb.ios.css +9 -9
- package/dist/collection/components/breadcrumb/breadcrumb.md.css +9 -9
- package/dist/collection/components/button/button.ios.css +11 -11
- package/dist/collection/components/button/button.md.css +9 -9
- package/dist/collection/components/button/test/a11y/button.e2e.js +48 -0
- package/dist/collection/components/button/test/basic/button.e2e.js +1 -1
- package/dist/collection/components/button/test/wrap/button.e2e.js +12 -24
- package/dist/collection/components/card/card.ios.css +1 -1
- package/dist/collection/components/card/card.md.css +1 -1
- package/dist/collection/components/card-subtitle/card-subtitle.ios.css +1 -1
- package/dist/collection/components/card-subtitle/card-subtitle.md.css +1 -1
- package/dist/collection/components/card-title/card-title.md.css +1 -1
- package/dist/collection/components/checkbox/checkbox.ios.css +2 -2
- package/dist/collection/components/checkbox/checkbox.md.css +2 -2
- package/dist/collection/components/checkbox/test/a11y/checkbox.e2e.js +11 -2
- package/dist/collection/components/content/content.css +0 -4
- package/dist/collection/components/content/content.js +2 -3
- package/dist/collection/components/datetime/datetime.ios.css +98 -45
- package/dist/collection/components/datetime/datetime.js +24 -36
- package/dist/collection/components/datetime/datetime.md.css +100 -42
- package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +4 -4
- package/dist/collection/components/datetime/test/a11y/datetime.spec.js +6 -9
- package/dist/collection/components/datetime/test/basic/datetime.e2e.js +22 -12
- package/dist/collection/components/datetime/test/datetime.e2e.js +3 -3
- package/dist/collection/components/datetime/test/disable-dates/datetime.e2e.js +1 -1
- package/dist/collection/components/datetime/test/disabled/datetime.e2e.js +4 -4
- package/dist/collection/components/datetime/test/disabled/datetime.spec.js +4 -4
- package/dist/collection/components/datetime/test/display/datetime.e2e.js +9 -9
- package/dist/collection/components/datetime/test/locale/datetime.e2e.js +5 -5
- package/dist/collection/components/datetime/test/minmax/datetime.e2e.js +17 -17
- package/dist/collection/components/datetime/test/month-year-picker/datetime.e2e.js +2 -2
- package/dist/collection/components/datetime/test/multiple/datetime.e2e.js +2 -2
- package/dist/collection/components/datetime/test/position/datetime.e2e.js +1 -1
- package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +75 -73
- package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +4 -4
- package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +8 -8
- package/dist/collection/components/datetime/test/set-value/datetime.e2e.js +4 -4
- package/dist/collection/components/datetime/test/time-label/datetime.e2e.js +2 -2
- package/dist/collection/components/datetime/test/values/datetime.e2e.js +19 -16
- package/dist/collection/components/datetime/utils/data.js +1 -1
- package/dist/collection/components/datetime-button/datetime-button.css +1 -1
- package/dist/collection/components/datetime-button/test/basic/datetime-button.e2e.js +14 -14
- package/dist/collection/components/datetime-button/test/disabled/datetime-button.e2e.js +2 -2
- package/dist/collection/components/datetime-button/test/multiple/datetime-button.e2e.js +6 -6
- package/dist/collection/components/fab-button/fab-button.ios.css +13 -13
- package/dist/collection/components/fab-button/fab-button.md.css +4 -4
- package/dist/collection/components/fab-button/test/a11y/fab-button.e2e.js +50 -0
- package/dist/collection/components/header/test/condense/header.e2e.js +2 -2
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +3 -3
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +3 -3
- package/dist/collection/components/input/input.ios.css +8 -8
- package/dist/collection/components/input/input.md.css +16 -16
- package/dist/collection/components/input/test/a11y/input.e2e.js +41 -3
- package/dist/collection/components/item/item.ios.css +44 -7
- package/dist/collection/components/item/item.js +0 -7
- package/dist/collection/components/item/item.md.css +52 -15
- package/dist/collection/components/item-divider/item-divider.ios.css +2 -2
- package/dist/collection/components/item-divider/item-divider.md.css +3 -3
- package/dist/collection/components/item-option/item-option.ios.css +2 -2
- package/dist/collection/components/item-option/item-option.md.css +1 -1
- package/dist/collection/components/item-options/item-options.ios.css +1 -1
- package/dist/collection/components/item-options/item-options.md.css +1 -1
- package/dist/collection/components/item-sliding/test/a11y/item-sliding.e2e.js +28 -0
- package/dist/collection/components/label/label.md.css +2 -2
- package/dist/collection/components/label/test/a11y/label.e2e.js +20 -0
- package/dist/collection/components/list-header/list-header.ios.css +2 -2
- package/dist/collection/components/list-header/list-header.md.css +1 -1
- package/dist/collection/components/loading/loading.ios.css +2 -2
- package/dist/collection/components/loading/loading.md.css +3 -3
- package/dist/collection/components/loading/test/a11y/loading.e2e.js +21 -5
- package/dist/collection/components/menu/menu.ios.css +64 -3
- package/dist/collection/components/menu/menu.js +19 -13
- package/dist/collection/components/menu/menu.md.css +64 -3
- package/dist/collection/components/menu-button/menu-button.ios.css +1 -1
- package/dist/collection/components/menu-button/test/a11y/menu-button.e2e.js +14 -0
- package/dist/collection/components/modal/modal.ios.css +1 -1
- package/dist/collection/components/modal/modal.md.css +1 -1
- package/dist/collection/components/modal/test/standalone/modal.e2e.js +1 -1
- package/dist/collection/components/nav/nav.js +22 -2
- package/dist/collection/components/nav/test/nav-controller.spec.js +36 -36
- package/dist/collection/components/note/note.ios.css +1 -1
- package/dist/collection/components/note/note.md.css +1 -1
- package/dist/collection/components/note/test/a11y/note.e2e.js +6 -6
- package/dist/collection/components/picker/picker.ios.css +112 -211
- package/dist/collection/components/picker/picker.js +488 -738
- package/dist/collection/components/picker/picker.md.css +108 -198
- 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/test/custom/picker.e2e.js +85 -0
- package/dist/collection/components/{picker-internal/test/keyboard-entry/picker-internal.e2e.js → picker/test/keyboard-entry/picker.e2e.js} +79 -42
- package/dist/collection/components/{picker-column-internal/picker-column-internal.md.css → picker-column/picker-column.css} +96 -83
- package/dist/collection/components/picker-column/picker-column.js +499 -335
- 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 +91 -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-column-option/test/picker-column-option.spec.js +29 -0
- package/dist/collection/components/{picker-internal/picker-internal.ios.css → picker-legacy/picker.ios.css} +205 -100
- package/dist/collection/components/picker-legacy/picker.js +811 -0
- package/dist/collection/components/{picker-internal/picker-internal.md.css → picker-legacy/picker.md.css} +194 -98
- 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-legacy-column/picker-column.js +419 -0
- package/dist/collection/components/{picker-column → picker-legacy-column}/picker-column.md.css +1 -1
- 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/popover/popover.ios.css +1 -1
- package/dist/collection/components/progress-bar/progress-bar.ios.css +2 -2
- package/dist/collection/components/progress-bar/progress-bar.md.css +2 -2
- package/dist/collection/components/progress-bar/test/a11y/progress-bar.e2e.js +24 -0
- package/dist/collection/components/radio/radio.ios.css +2 -2
- package/dist/collection/components/radio/radio.md.css +2 -2
- package/dist/collection/components/radio/test/a11y/radio.e2e.js +114 -81
- package/dist/collection/components/range/range.ios.css +3 -3
- package/dist/collection/components/range/range.md.css +5 -5
- package/dist/collection/components/range/test/a11y/range.e2e.js +18 -8
- package/dist/collection/components/refresher/refresher.ios.css +1 -1
- package/dist/collection/components/refresher/refresher.md.css +4 -4
- package/dist/collection/components/refresher/test/a11y/refresher.e2e.js +25 -0
- package/dist/collection/components/refresher/test/test.utils.js +1 -1
- package/dist/collection/components/refresher-content/refresher-content.js +1 -1
- package/dist/collection/components/ripple-effect/test/basic/ripple-effect.e2e.js +2 -2
- package/dist/collection/components/router-link/router-link.css +1 -1
- package/dist/collection/components/router-link/test/a11y/router-link.e2e.js +23 -0
- package/dist/collection/components/searchbar/searchbar.ios.css +4 -4
- package/dist/collection/components/searchbar/searchbar.md.css +4 -4
- package/dist/collection/components/segment/test/a11y/segment.e2e.js +23 -0
- package/dist/collection/components/segment-button/segment-button.ios.css +3 -3
- package/dist/collection/components/segment-button/segment-button.md.css +2 -2
- package/dist/collection/components/select/select.ios.css +5 -5
- package/dist/collection/components/select/select.md.css +14 -14
- package/dist/collection/components/select/test/a11y/select.e2e.js +68 -4
- package/dist/collection/components/select-popover/select-popover.md.css +4 -4
- package/dist/collection/components/select-popover/test/a11y/select-popover.e2e.js +32 -0
- package/dist/collection/components/split-pane/split-pane.ios.css +3 -55
- package/dist/collection/components/split-pane/split-pane.js +46 -12
- package/dist/collection/components/split-pane/split-pane.md.css +3 -55
- package/dist/collection/components/split-pane/test/wrapped-menu/split-pane.e2e.js +41 -0
- package/dist/collection/components/tab-bar/tab-bar.ios.css +4 -4
- package/dist/collection/components/tab-bar/tab-bar.md.css +3 -3
- package/dist/collection/components/tabs/tabs.js +6 -18
- package/dist/collection/components/textarea/test/a11y/textarea.e2e.js +41 -3
- package/dist/collection/components/textarea/textarea.ios.css +7 -7
- package/dist/collection/components/textarea/textarea.md.css +15 -15
- package/dist/collection/components/toast/test/a11y/toast.e2e.js +89 -24
- package/dist/collection/components/toast/toast.ios.css +3 -3
- package/dist/collection/components/toast/toast.md.css +5 -5
- package/dist/collection/components/toggle/test/a11y/toggle.e2e.js +8 -2
- package/dist/collection/components/toggle/toggle.ios.css +2 -2
- package/dist/collection/components/toggle/toggle.md.css +2 -2
- package/dist/collection/components/toolbar/toolbar.ios.css +2 -2
- package/dist/collection/components/toolbar/toolbar.md.css +1 -1
- package/dist/collection/css/test/a11y/typography.e2e.js +18 -0
- package/dist/collection/themes/test/colors/theme.e2e.js +170 -0
- 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/collection/utils/test/playwright/generator.js +1 -0
- package/dist/collection/utils/test/playwright/page/utils/set-content.js +1 -1
- package/dist/docs.json +508 -66
- package/dist/esm/{button-active-b62776db.js → button-active-3bcbd115.js} +1 -1
- package/dist/esm/{data-775093f5.js → data-6a31d701.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 +6 -6
- package/dist/esm/ion-alert.entry.js +6 -6
- package/dist/esm/ion-app_8.entry.js +6 -7
- package/dist/esm/ion-avatar_3.entry.js +2 -2
- package/dist/esm/ion-back-button.entry.js +1 -1
- package/dist/esm/ion-backdrop.entry.js +0 -12
- package/dist/esm/ion-breadcrumb_2.entry.js +2 -2
- package/dist/esm/ion-button_2.entry.js +2 -2
- package/dist/esm/ion-card_5.entry.js +5 -5
- package/dist/esm/ion-checkbox.entry.js +2 -2
- package/dist/esm/ion-datetime-button.entry.js +3 -3
- package/dist/esm/ion-datetime_3.entry.js +36 -56
- package/dist/esm/ion-fab_3.entry.js +2 -2
- package/dist/esm/ion-infinite-scroll_2.entry.js +2 -2
- package/dist/esm/ion-input.entry.js +2 -2
- package/dist/esm/ion-item-option_3.entry.js +5 -5
- package/dist/esm/ion-item_8.entry.js +9 -14
- package/dist/esm/ion-loading.entry.js +4 -3
- package/dist/esm/ion-menu_3.entry.js +25 -20
- package/dist/esm/ion-modal.entry.js +5 -5
- package/dist/esm/ion-nav_2.entry.js +6 -3
- 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} +104 -87
- package/dist/esm/{ion-picker-internal.entry.js → ion-picker.entry.js} +26 -19
- package/dist/esm/ion-popover.entry.js +3 -2
- package/dist/esm/ion-progress-bar.entry.js +2 -2
- package/dist/esm/ion-radio_2.entry.js +2 -2
- package/dist/esm/ion-range.entry.js +3 -3
- package/dist/esm/ion-refresher_2.entry.js +6 -6
- package/dist/esm/ion-reorder_2.entry.js +1 -1
- package/dist/esm/ion-route_4.entry.js +1 -1
- package/dist/esm/ion-searchbar.entry.js +2 -2
- package/dist/esm/ion-segment_2.entry.js +3 -3
- package/dist/esm/ion-select_3.entry.js +5 -4
- package/dist/esm/ion-split-pane.entry.js +24 -14
- package/dist/esm/ion-tab-bar_2.entry.js +2 -2
- package/dist/esm/ion-textarea.entry.js +2 -2
- package/dist/esm/ion-toast.entry.js +5 -5
- package/dist/esm/ion-toggle.entry.js +3 -3
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{overlays-bb824d56.js → overlays-8b24f0d5.js} +11 -4
- package/dist/esm/{swipe-back-a6f386fc.js → swipe-back-a8ca7f93.js} +2 -2
- package/dist/esm-es5/{button-active-b62776db.js → button-active-3bcbd115.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-avatar_3.entry.js +1 -1
- package/dist/esm-es5/ion-back-button.entry.js +1 -1
- package/dist/esm-es5/ion-backdrop.entry.js +1 -1
- package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
- package/dist/esm-es5/ion-button_2.entry.js +1 -1
- package/dist/esm-es5/ion-card_5.entry.js +1 -1
- package/dist/esm-es5/ion-checkbox.entry.js +1 -1
- package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
- package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
- package/dist/esm-es5/ion-fab_3.entry.js +1 -1
- package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
- package/dist/esm-es5/ion-input.entry.js +1 -1
- package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
- package/dist/esm-es5/ion-item_8.entry.js +1 -1
- package/dist/esm-es5/ion-loading.entry.js +1 -1
- package/dist/esm-es5/ion-menu_3.entry.js +1 -1
- package/dist/esm-es5/ion-modal.entry.js +1 -1
- package/dist/esm-es5/ion-nav_2.entry.js +1 -1
- package/dist/esm-es5/ion-picker-column-option.entry.js +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-progress-bar.entry.js +1 -1
- package/dist/esm-es5/ion-radio_2.entry.js +1 -1
- package/dist/esm-es5/ion-range.entry.js +1 -1
- package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
- package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
- package/dist/esm-es5/ion-route_4.entry.js +1 -1
- package/dist/esm-es5/ion-searchbar.entry.js +1 -1
- package/dist/esm-es5/ion-segment_2.entry.js +1 -1
- package/dist/esm-es5/ion-select_3.entry.js +1 -1
- package/dist/esm-es5/ion-split-pane.entry.js +1 -1
- package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
- package/dist/esm-es5/ion-textarea.entry.js +1 -1
- package/dist/esm-es5/ion-toast.entry.js +1 -1
- package/dist/esm-es5/ion-toggle.entry.js +1 -1
- package/dist/esm-es5/ionic.js +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/overlays-8b24f0d5.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-249633a4.entry.js → p-0055506a.entry.js} +1 -1
- package/dist/ionic/p-0708a9c1.system.js +4 -0
- package/dist/ionic/{p-b6f6f00e.entry.js → p-07d725a7.entry.js} +1 -1
- package/dist/ionic/{p-c1c57873.system.entry.js → p-0a0a84ce.system.entry.js} +1 -1
- package/dist/ionic/p-0ac49b0c.system.entry.js +4 -0
- package/dist/ionic/p-0d3c5eaa.system.entry.js +4 -0
- package/dist/ionic/{p-5a85d71d.entry.js → p-0d850325.entry.js} +1 -1
- package/dist/ionic/p-0f55b1b0.entry.js +4 -0
- package/dist/ionic/p-10607f89.entry.js +4 -0
- package/dist/ionic/{p-d2707f9d.system.js → p-114ea79c.system.js} +1 -1
- package/dist/ionic/p-14196559.entry.js +4 -0
- package/dist/ionic/p-14b8100f.system.entry.js +4 -0
- package/dist/ionic/p-15878390.system.entry.js +4 -0
- package/dist/ionic/{p-f3478ed6.system.entry.js → p-16e781a6.system.entry.js} +1 -1
- package/dist/ionic/p-1a5f0313.system.js +1 -1
- package/dist/ionic/p-1c445de9.entry.js +4 -0
- package/dist/ionic/{p-c7c8429a.system.js → p-20d469d0.system.js} +1 -1
- package/dist/ionic/p-2800e6d5.system.entry.js +4 -0
- package/dist/ionic/p-283d8f5e.system.entry.js +4 -0
- package/dist/ionic/{p-8084e9cb.entry.js → p-28525772.entry.js} +1 -1
- package/dist/ionic/p-2aa29487.system.entry.js +4 -0
- package/dist/ionic/{p-54c92c77.entry.js → p-305423e0.entry.js} +1 -1
- package/dist/ionic/p-327211c1.entry.js +4 -0
- package/dist/ionic/{p-bc6d16ca.entry.js → p-32b129a2.entry.js} +1 -1
- package/dist/ionic/{p-b43cf55f.entry.js → p-34f05cec.entry.js} +1 -1
- package/dist/ionic/p-3587df88.system.entry.js +4 -0
- package/dist/ionic/p-381ca6f8.system.entry.js +4 -0
- package/dist/ionic/p-3cf67784.entry.js +4 -0
- package/dist/ionic/{p-31b2326e.system.js → p-3e1e14d9.system.js} +1 -1
- package/dist/ionic/{p-3b83e483.system.entry.js → p-3f3ae637.system.entry.js} +2 -2
- package/dist/ionic/p-4a13a07c.system.entry.js +4 -0
- package/dist/ionic/p-4eaf5dcd.system.entry.js +4 -0
- package/dist/ionic/p-5186ff3f.system.entry.js +4 -0
- package/dist/ionic/p-51abefb7.system.js +4 -0
- package/dist/ionic/p-59a95822.entry.js +4 -0
- package/dist/ionic/p-659086a2.system.entry.js +4 -0
- package/dist/ionic/p-6793b96e.system.entry.js +4 -0
- package/dist/ionic/{p-7bae84aa.entry.js → p-69926b34.entry.js} +1 -1
- package/dist/ionic/p-6b0c8263.entry.js +4 -0
- package/dist/ionic/p-71f30cfc.system.entry.js +4 -0
- package/dist/ionic/p-7a3e1f37.system.entry.js +4 -0
- package/dist/ionic/p-7ae141f1.entry.js +4 -0
- package/dist/ionic/p-7e8ef0bb.system.entry.js +4 -0
- package/dist/ionic/p-89c5f8ba.system.entry.js +4 -0
- package/dist/ionic/{p-cdce5ba3.system.entry.js → p-8a1d33e3.system.entry.js} +1 -1
- package/dist/ionic/{p-1f7fc88d.entry.js → p-8aaade76.entry.js} +1 -1
- package/dist/ionic/{p-f5d2dc9b.js → p-8ededb41.js} +1 -1
- package/dist/ionic/p-94265b3d.entry.js +4 -0
- package/dist/ionic/{p-35e1a80f.system.entry.js → p-943caced.system.entry.js} +1 -1
- package/dist/ionic/{p-2c3842e8.system.entry.js → p-97657f32.system.entry.js} +1 -1
- package/dist/ionic/p-97e39972.system.entry.js +4 -0
- package/dist/ionic/p-9b930e4f.entry.js +4 -0
- package/dist/ionic/{p-bb3615f7.js → p-9b97df10.js} +1 -1
- package/dist/ionic/{p-db798370.system.entry.js → p-9cbfb298.system.entry.js} +1 -1
- package/dist/ionic/{p-c3bfe92d.entry.js → p-a114831c.entry.js} +1 -1
- package/dist/ionic/p-a60a1ce5.js +4 -0
- package/dist/ionic/{p-1052ef2b.entry.js → p-ae8747aa.entry.js} +1 -1
- package/dist/ionic/p-b13f5e6a.entry.js +4 -0
- package/dist/ionic/{p-10c34f0a.system.entry.js → p-b6e4e9ce.system.entry.js} +1 -1
- package/dist/ionic/p-b8213f04.entry.js +4 -0
- package/dist/ionic/p-b8fbc01d.entry.js +4 -0
- package/dist/ionic/p-c33d312f.js +4 -0
- package/dist/ionic/{p-85e04029.entry.js → p-c6a6ffe6.entry.js} +1 -1
- package/dist/ionic/{p-688a36c7.entry.js → p-c7bdd72f.entry.js} +1 -1
- package/dist/ionic/{p-df62accd.entry.js → p-c9028fdc.entry.js} +1 -1
- package/dist/ionic/{p-5c2da581.system.entry.js → p-cb0cfc39.system.entry.js} +1 -1
- package/dist/ionic/{p-5628d04e.entry.js → p-cd6a60d2.entry.js} +1 -1
- package/dist/ionic/{p-7510e462.entry.js → p-d545e325.entry.js} +1 -1
- package/dist/ionic/p-d5a21de8.entry.js +4 -0
- package/dist/ionic/p-d6674fed.entry.js +4 -0
- package/dist/ionic/p-db00f04e.entry.js +4 -0
- package/dist/ionic/p-ddf79d90.system.entry.js +4 -0
- package/dist/ionic/p-def451e2.system.entry.js +4 -0
- package/dist/ionic/p-df5134fa.entry.js +4 -0
- package/dist/ionic/{p-8f1ebb7d.system.js → p-df75bd2c.system.js} +1 -1
- package/dist/ionic/p-df7aaa62.entry.js +4 -0
- package/dist/ionic/p-dfd21411.system.entry.js +4 -0
- package/dist/ionic/p-e22bf111.js +4 -0
- package/dist/ionic/p-e652d9e4.entry.js +4 -0
- package/dist/ionic/p-e9a36c6f.entry.js +4 -0
- package/dist/ionic/p-ea9a8424.system.entry.js +4 -0
- package/dist/ionic/{p-41aa2662.entry.js → p-eeb87a49.entry.js} +1 -1
- package/dist/ionic/p-ef6ec008.system.entry.js +4 -0
- package/dist/ionic/p-ef9e6f77.system.entry.js +4 -0
- package/dist/ionic/{p-7751def0.system.entry.js → p-f003e500.system.entry.js} +1 -1
- package/dist/ionic/p-f27b18ba.system.entry.js +4 -0
- package/dist/ionic/p-f62122bb.system.entry.js +4 -0
- package/dist/ionic/p-f864df50.system.entry.js +4 -0
- package/dist/ionic/{p-1a0bf247.system.entry.js → p-fc58a772.system.entry.js} +1 -1
- package/dist/ionic/p-fdc3ff96.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 +11 -7
- package/dist/types/components/item/item.d.ts +0 -1
- package/dist/types/components/menu/menu.d.ts +12 -2
- package/dist/types/components/nav/nav.d.ts +4 -1
- package/dist/types/components/picker/picker-interfaces.d.ts +8 -0
- package/dist/types/components/picker/picker.d.ts +75 -129
- package/dist/types/components/picker-column/picker-column-interfaces.d.ts +4 -0
- package/dist/types/components/picker-column/picker-column.d.ts +99 -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/split-pane/split-pane.d.ts +14 -2
- package/dist/types/components/tabs/tabs-interface.d.ts +3 -4
- package/dist/types/components/tabs/tabs.d.ts +6 -3
- package/dist/types/components.d.ts +163 -128
- 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/dist/types/utils/test/playwright/generator.d.ts +3 -1
- package/hydrate/index.js +1491 -1379
- package/package.json +2 -2
- 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/item/test/item.spec.js +0 -20
- package/dist/collection/components/picker-column-internal/picker-column-internal.js +0 -566
- 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 -560
- 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-bb824d56.js +0 -4
- package/dist/esm-es5/swipe-back-a6f386fc.js +0 -4
- package/dist/ionic/p-024e2739.entry.js +0 -4
- package/dist/ionic/p-06128c8c.entry.js +0 -4
- package/dist/ionic/p-06f72943.system.entry.js +0 -4
- package/dist/ionic/p-0d2b6901.entry.js +0 -4
- package/dist/ionic/p-127ff448.entry.js +0 -4
- package/dist/ionic/p-35ce400e.system.js +0 -4
- package/dist/ionic/p-3dbaaa5b.system.entry.js +0 -4
- package/dist/ionic/p-3de38800.system.entry.js +0 -4
- package/dist/ionic/p-41040a92.system.entry.js +0 -4
- package/dist/ionic/p-436bd99a.entry.js +0 -4
- package/dist/ionic/p-49c52149.system.entry.js +0 -4
- package/dist/ionic/p-4dc3bc8b.entry.js +0 -4
- package/dist/ionic/p-525b6ac4.system.entry.js +0 -4
- package/dist/ionic/p-5aecd304.system.entry.js +0 -4
- package/dist/ionic/p-5f698182.entry.js +0 -4
- package/dist/ionic/p-61bf9f6f.system.entry.js +0 -4
- package/dist/ionic/p-6899d5af.entry.js +0 -4
- package/dist/ionic/p-6a6477b2.js +0 -4
- package/dist/ionic/p-6b9eee40.system.entry.js +0 -4
- package/dist/ionic/p-6ba863b1.system.entry.js +0 -4
- package/dist/ionic/p-6e165986.system.entry.js +0 -4
- package/dist/ionic/p-719ad110.system.entry.js +0 -4
- package/dist/ionic/p-73547cf9.entry.js +0 -4
- package/dist/ionic/p-7a02dd61.system.entry.js +0 -4
- package/dist/ionic/p-7ffe791a.system.js +0 -4
- package/dist/ionic/p-80ddd0c1.entry.js +0 -4
- package/dist/ionic/p-87e10168.system.entry.js +0 -4
- package/dist/ionic/p-89c28901.system.entry.js +0 -4
- package/dist/ionic/p-8bad1486.system.entry.js +0 -4
- package/dist/ionic/p-90000ff6.js +0 -4
- package/dist/ionic/p-928e945d.system.entry.js +0 -4
- package/dist/ionic/p-9cf0846d.system.entry.js +0 -4
- package/dist/ionic/p-a0953474.entry.js +0 -4
- package/dist/ionic/p-a2d75455.entry.js +0 -4
- package/dist/ionic/p-a706cf11.system.entry.js +0 -4
- package/dist/ionic/p-aca77953.entry.js +0 -4
- package/dist/ionic/p-afafbba0.entry.js +0 -4
- package/dist/ionic/p-b09c8228.entry.js +0 -4
- package/dist/ionic/p-ba4890eb.system.entry.js +0 -4
- package/dist/ionic/p-beeceaf5.system.entry.js +0 -4
- package/dist/ionic/p-c10cc51e.system.entry.js +0 -4
- package/dist/ionic/p-c4177035.entry.js +0 -4
- package/dist/ionic/p-c48a9ef3.system.entry.js +0 -4
- package/dist/ionic/p-cb301b9a.entry.js +0 -4
- package/dist/ionic/p-d6beb1c9.system.entry.js +0 -4
- package/dist/ionic/p-dc1d883c.system.entry.js +0 -4
- package/dist/ionic/p-e150f8fc.entry.js +0 -4
- package/dist/ionic/p-e814f9c0.entry.js +0 -4
- package/dist/ionic/p-eb210b21.system.entry.js +0 -4
- package/dist/ionic/p-eb80ca40.entry.js +0 -4
- package/dist/ionic/p-f48a49ae.system.entry.js +0 -4
- package/dist/ionic/p-f865bc9a.entry.js +0 -4
- package/dist/ionic/p-fd1a0431.js +0 -4
- package/dist/types/components/picker-column-internal/picker-column-internal-interfaces.d.ts +0 -5
- 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}/picker-column.ios.css +0 -0
- /package/dist/collection/components/{picker-column → picker-legacy-column}/test/test.utils.js +0 -0
- /package/dist/esm-es5/{data-775093f5.js → data-6a31d701.js} +0 -0
- /package/dist/ionic/{p-87bb3735.system.js → p-7ff4359e.system.js} +0 -0
- /package/dist/ionic/{p-18cae04f.js → p-a64accf5.js} +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
|
@@ -21,28 +21,28 @@ configs().forEach(({ title, screenshot, config }) => {
|
|
|
21
21
|
await page.setContent(`
|
|
22
22
|
<ion-datetime size="cover" presentation="date" prefer-wheel="true" value="2019-05-30" max="2022"></ion-datetime>
|
|
23
23
|
`, config);
|
|
24
|
-
await page.
|
|
24
|
+
await page.waitForSelector('.datetime-ready');
|
|
25
25
|
await expect(page).toHaveScreenshot(screenshot(`datetime-wheel-date-diff`));
|
|
26
26
|
});
|
|
27
27
|
test('should not have visual regressions for date-time wheel', async ({ page }) => {
|
|
28
28
|
await page.setContent(`
|
|
29
29
|
<ion-datetime size="cover" presentation="date-time" prefer-wheel="true" value="2019-05-30T16:30:00" max="2022"></ion-datetime>
|
|
30
30
|
`, config);
|
|
31
|
-
await page.
|
|
31
|
+
await page.waitForSelector('.datetime-ready');
|
|
32
32
|
await expect(page).toHaveScreenshot(screenshot(`datetime-wheel-date-time-diff`));
|
|
33
33
|
});
|
|
34
34
|
test('should not have visual regressions for time-date wheel', async ({ page }) => {
|
|
35
35
|
await page.setContent(`
|
|
36
36
|
<ion-datetime size="cover" presentation="time-date" prefer-wheel="true" value="2019-05-30T16:30:00" max="2022"></ion-datetime>
|
|
37
37
|
`, config);
|
|
38
|
-
await page.
|
|
38
|
+
await page.waitForSelector('.datetime-ready');
|
|
39
39
|
await expect(page).toHaveScreenshot(screenshot(`datetime-wheel-time-date-diff`));
|
|
40
40
|
});
|
|
41
41
|
test('should render a condense header when specified', async ({ page }) => {
|
|
42
42
|
await page.setContent(`
|
|
43
43
|
<ion-datetime size="cover" presentation="time-date" prefer-wheel="true" value="2019-05-30T16:30:00" max="2022"><div slot="title">My Custom Title</div></ion-datetime>
|
|
44
44
|
`, config);
|
|
45
|
-
await page.
|
|
45
|
+
await page.waitForSelector('.datetime-ready');
|
|
46
46
|
const datetime = page.locator('ion-datetime');
|
|
47
47
|
await expect(datetime).toHaveScreenshot(screenshot(`datetime-wheel-header-diff`));
|
|
48
48
|
});
|
|
@@ -59,16 +59,16 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
59
59
|
await page.setContent(`
|
|
60
60
|
<ion-datetime presentation="date" prefer-wheel="true" min="2019-05-05" max="2023-10-01" value="2019-05-30"></ion-datetime>
|
|
61
61
|
`, config);
|
|
62
|
-
await page.
|
|
63
|
-
const dayValues = page.locator('ion-datetime .day-column
|
|
62
|
+
await page.waitForSelector('.datetime-ready');
|
|
63
|
+
const dayValues = page.locator('ion-datetime .day-column ion-picker-column-option');
|
|
64
64
|
expect(await dayValues.count()).toEqual(27);
|
|
65
65
|
});
|
|
66
66
|
test('should respect the max bounds', async ({ page }) => {
|
|
67
67
|
await page.setContent(`
|
|
68
68
|
<ion-datetime presentation="date" prefer-wheel="true" min="2019-05-05" max="2023-10-01" value="2023-10-01"></ion-datetime>
|
|
69
69
|
`, config);
|
|
70
|
-
await page.
|
|
71
|
-
const dayValues = page.locator('ion-datetime .day-column
|
|
70
|
+
await page.waitForSelector('.datetime-ready');
|
|
71
|
+
const dayValues = page.locator('ion-datetime .day-column ion-picker-column-option');
|
|
72
72
|
expect(await dayValues.count()).toEqual(1);
|
|
73
73
|
});
|
|
74
74
|
test('should respect isDateEnabled preference', async ({ page }) => {
|
|
@@ -85,10 +85,10 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
85
85
|
}
|
|
86
86
|
</script>
|
|
87
87
|
`, config);
|
|
88
|
-
await page.
|
|
89
|
-
const disabledMonths = page.locator('.month-column
|
|
90
|
-
const disabledYears = page.locator('.year-column
|
|
91
|
-
const disabledDays = page.locator('.day-column
|
|
88
|
+
await page.waitForSelector('.datetime-ready');
|
|
89
|
+
const disabledMonths = page.locator('.month-column ion-picker-column-option.option-disabled');
|
|
90
|
+
const disabledYears = page.locator('.year-column ion-picker-column-option.option-disabled');
|
|
91
|
+
const disabledDays = page.locator('.day-column ion-picker-column-option.option-disabled');
|
|
92
92
|
expect(await disabledMonths.count()).toBe(0);
|
|
93
93
|
expect(await disabledYears.count()).toBe(0);
|
|
94
94
|
expect(await disabledDays.count()).toBe(15);
|
|
@@ -104,10 +104,10 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
104
104
|
year-values="2022,2020,2019"
|
|
105
105
|
></ion-datetime>
|
|
106
106
|
`, config);
|
|
107
|
-
await page.
|
|
108
|
-
const monthValues = page.locator('.month-column
|
|
109
|
-
const yearValues = page.locator('.year-column
|
|
110
|
-
const dayValues = page.locator('.day-column
|
|
107
|
+
await page.waitForSelector('.datetime-ready');
|
|
108
|
+
const monthValues = page.locator('.month-column ion-picker-column-option');
|
|
109
|
+
const yearValues = page.locator('.year-column ion-picker-column-option');
|
|
110
|
+
const dayValues = page.locator('.day-column ion-picker-column-option');
|
|
111
111
|
expect(await monthValues.count()).toBe(2);
|
|
112
112
|
expect(await yearValues.count()).toBe(3);
|
|
113
113
|
expect(await dayValues.count()).toBe(5);
|
|
@@ -132,9 +132,9 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
132
132
|
}
|
|
133
133
|
</script>
|
|
134
134
|
`, config);
|
|
135
|
-
await page.
|
|
135
|
+
await page.waitForSelector('.datetime-ready');
|
|
136
136
|
const ionChange = await page.spyOnEvent('ionChange');
|
|
137
|
-
const monthValues = page.locator('.month-column
|
|
137
|
+
const monthValues = page.locator('.month-column ion-picker-column-option');
|
|
138
138
|
// Change month value
|
|
139
139
|
await monthValues.nth(0).click();
|
|
140
140
|
await ionChange.next();
|
|
@@ -159,9 +159,9 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
159
159
|
}
|
|
160
160
|
</script>
|
|
161
161
|
`, config);
|
|
162
|
-
await page.
|
|
162
|
+
await page.waitForSelector('.datetime-ready');
|
|
163
163
|
const ionChange = await page.spyOnEvent('ionChange');
|
|
164
|
-
const dayValues = page.locator('.day-column
|
|
164
|
+
const dayValues = page.locator('.day-column ion-picker-column-option');
|
|
165
165
|
// Change day value
|
|
166
166
|
await dayValues.nth(0).click();
|
|
167
167
|
await ionChange.next();
|
|
@@ -173,9 +173,9 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
173
173
|
prefer-wheel="true"
|
|
174
174
|
></ion-datetime>
|
|
175
175
|
`, config);
|
|
176
|
-
await page.
|
|
176
|
+
await page.waitForSelector('.datetime-ready');
|
|
177
177
|
const ionChange = await page.spyOnEvent('ionChange');
|
|
178
|
-
const yearValues = page.locator('.year-column
|
|
178
|
+
const yearValues = page.locator('.year-column ion-picker-column-option');
|
|
179
179
|
/**
|
|
180
180
|
* Change year value
|
|
181
181
|
* The 0th index is the current
|
|
@@ -188,13 +188,13 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
188
188
|
await page.setContent(`
|
|
189
189
|
<ion-datetime presentation="date" prefer-wheel="true" min="2019-05-05" max="2023-10-01" value="2019-05-30"></ion-datetime>
|
|
190
190
|
`, config);
|
|
191
|
-
await page.
|
|
191
|
+
await page.waitForSelector('.datetime-ready');
|
|
192
192
|
const datetime = page.locator('ion-datetime');
|
|
193
193
|
await datetime.evaluate((el) => (el.value = '2021-05-25T12:40:00.000Z'));
|
|
194
194
|
await page.waitForChanges();
|
|
195
|
-
const selectedMonth = datetime.locator('.month-column
|
|
196
|
-
const selectedDay = datetime.locator('.day-column
|
|
197
|
-
const selectedYear = datetime.locator('.year-column
|
|
195
|
+
const selectedMonth = datetime.locator('.month-column ion-picker-column-option.option-active');
|
|
196
|
+
const selectedDay = datetime.locator('.day-column ion-picker-column-option.option-active');
|
|
197
|
+
const selectedYear = datetime.locator('.year-column ion-picker-column-option.option-active');
|
|
198
198
|
await expect(selectedMonth).toHaveText(/May/);
|
|
199
199
|
await expect(selectedDay).toHaveText(/25/);
|
|
200
200
|
await expect(selectedYear).toHaveText(/2021/);
|
|
@@ -212,9 +212,9 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
212
212
|
value="2022-01-01"
|
|
213
213
|
></ion-datetime>
|
|
214
214
|
`, config);
|
|
215
|
-
await page.
|
|
216
|
-
const monthValues = page.locator('.month-column
|
|
217
|
-
const dayValues = page.locator('.day-column
|
|
215
|
+
await page.waitForSelector('.datetime-ready');
|
|
216
|
+
const monthValues = page.locator('.month-column ion-picker-column-option');
|
|
217
|
+
const dayValues = page.locator('.day-column ion-picker-column-option');
|
|
218
218
|
await expect(monthValues).toHaveText(['1月', '2月', '3月']);
|
|
219
219
|
await expect(dayValues).toHaveText(['1日', '2日', '3日']);
|
|
220
220
|
});
|
|
@@ -227,8 +227,8 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
227
227
|
value="2022-01-01"
|
|
228
228
|
></ion-datetime>
|
|
229
229
|
`, config);
|
|
230
|
-
await page.
|
|
231
|
-
const columns = page.locator('ion-picker-column
|
|
230
|
+
await page.waitForSelector('.datetime-ready');
|
|
231
|
+
const columns = page.locator('ion-picker-column');
|
|
232
232
|
await expect(columns.nth(0)).toHaveClass(/month-column/);
|
|
233
233
|
await expect(columns.nth(1)).toHaveClass(/day-column/);
|
|
234
234
|
await expect(columns.nth(2)).toHaveClass(/year-column/);
|
|
@@ -242,8 +242,8 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
242
242
|
value="2022-01-01"
|
|
243
243
|
></ion-datetime>
|
|
244
244
|
`, config);
|
|
245
|
-
await page.
|
|
246
|
-
const columns = page.locator('ion-picker-column
|
|
245
|
+
await page.waitForSelector('.datetime-ready');
|
|
246
|
+
const columns = page.locator('ion-picker-column');
|
|
247
247
|
await expect(columns.nth(0)).toHaveClass(/day-column/);
|
|
248
248
|
await expect(columns.nth(1)).toHaveClass(/month-column/);
|
|
249
249
|
await expect(columns.nth(2)).toHaveClass(/year-column/);
|
|
@@ -255,16 +255,16 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
255
255
|
await page.setContent(`
|
|
256
256
|
<ion-datetime presentation="date-time" prefer-wheel="true" min="2019-05-05" value="2019-05-10T16:30:00"></ion-datetime>
|
|
257
257
|
`, config);
|
|
258
|
-
await page.
|
|
259
|
-
const dayValues = page.locator('ion-datetime .date-column
|
|
258
|
+
await page.waitForSelector('.datetime-ready');
|
|
259
|
+
const dayValues = page.locator('ion-datetime .date-column ion-picker-column-option');
|
|
260
260
|
expect(await dayValues.count()).toEqual(57);
|
|
261
261
|
});
|
|
262
262
|
test('should respect the max bounds', async ({ page }) => {
|
|
263
263
|
await page.setContent(`
|
|
264
264
|
<ion-datetime presentation="date-time" prefer-wheel="true" max="2023-06-10" value="2023-06-05T16:30:00"></ion-datetime>
|
|
265
265
|
`, config);
|
|
266
|
-
await page.
|
|
267
|
-
const dayValues = page.locator('ion-datetime .date-column
|
|
266
|
+
await page.waitForSelector('.datetime-ready');
|
|
267
|
+
const dayValues = page.locator('ion-datetime .date-column ion-picker-column-option');
|
|
268
268
|
expect(await dayValues.count()).toEqual(41);
|
|
269
269
|
});
|
|
270
270
|
test('should respect isDateEnabled preference', async ({ page }) => {
|
|
@@ -281,8 +281,8 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
281
281
|
}
|
|
282
282
|
</script>
|
|
283
283
|
`, config);
|
|
284
|
-
await page.
|
|
285
|
-
const disabledDates = page.locator('.date-column
|
|
284
|
+
await page.waitForSelector('.datetime-ready');
|
|
285
|
+
const disabledDates = page.locator('.date-column ion-picker-column-option.option-disabled');
|
|
286
286
|
expect(await disabledDates.count()).toBe(44);
|
|
287
287
|
});
|
|
288
288
|
test('should respect month, day, and year preferences', async ({ page }) => {
|
|
@@ -296,8 +296,8 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
296
296
|
year-values="2022,2020,2019"
|
|
297
297
|
></ion-datetime>
|
|
298
298
|
`, config);
|
|
299
|
-
await page.
|
|
300
|
-
const dateValues = page.locator('.date-column
|
|
299
|
+
await page.waitForSelector('.datetime-ready');
|
|
300
|
+
const dateValues = page.locator('.date-column ion-picker-column-option');
|
|
301
301
|
expect(await dateValues.count()).toBe(5);
|
|
302
302
|
});
|
|
303
303
|
test('should correctly localize the date data', async ({ page }) => {
|
|
@@ -311,8 +311,8 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
311
311
|
value="2022-02-01"
|
|
312
312
|
></ion-datetime>
|
|
313
313
|
`, config);
|
|
314
|
-
await page.
|
|
315
|
-
const dateValues = page.locator('.date-column
|
|
314
|
+
await page.waitForSelector('.datetime-ready');
|
|
315
|
+
const dateValues = page.locator('.date-column ion-picker-column-option');
|
|
316
316
|
await expect(dateValues).toHaveText(['2月1日(火)', '2月2日(水)', '2月3日(木)']);
|
|
317
317
|
});
|
|
318
318
|
test('should respect min and max bounds even across years', async ({ page }) => {
|
|
@@ -325,17 +325,18 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
325
325
|
max="2023-01-01"
|
|
326
326
|
></ion-datetime>
|
|
327
327
|
`, config);
|
|
328
|
-
await page.
|
|
328
|
+
await page.waitForSelector('.datetime-ready');
|
|
329
329
|
const dateColumn = page.locator('.date-column');
|
|
330
|
-
const
|
|
330
|
+
const dateColumnScrollEl = dateColumn.locator('.picker-opts');
|
|
331
|
+
const dateValues = dateColumn.locator('ion-picker-column-option');
|
|
331
332
|
expect(await dateValues.count()).toBe(90);
|
|
332
333
|
/**
|
|
333
334
|
* Select 1st item to change the dates rendered
|
|
334
335
|
*/
|
|
335
|
-
await expect(dateValues.nth(0)).
|
|
336
|
-
await
|
|
336
|
+
await expect(dateValues.nth(0)).toHaveJSProperty('value', '2022-1-1');
|
|
337
|
+
await dateColumnScrollEl.evaluate((el) => (el.scrollTop = 0));
|
|
337
338
|
await page.waitForChanges();
|
|
338
|
-
await expect(dateValues.nth(0)).
|
|
339
|
+
await expect(dateValues.nth(0)).toHaveJSProperty('value', '2021-12-1');
|
|
339
340
|
});
|
|
340
341
|
test('should keep sliding window if default window is within min and max constraints', async ({ page }) => {
|
|
341
342
|
await page.setContent(`
|
|
@@ -347,8 +348,8 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
347
348
|
min="2010-01-01"
|
|
348
349
|
></ion-datetime>
|
|
349
350
|
`, config);
|
|
350
|
-
await page.
|
|
351
|
-
const dayValues = page.locator('.date-column
|
|
351
|
+
await page.waitForSelector('.datetime-ready');
|
|
352
|
+
const dayValues = page.locator('.date-column ion-picker-column-option');
|
|
352
353
|
expect(await dayValues.count()).toBe(92);
|
|
353
354
|
});
|
|
354
355
|
test('should narrow sliding window if default window is not within min and max constraints', async ({ page }) => {
|
|
@@ -361,8 +362,8 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
361
362
|
min="2022-05-01"
|
|
362
363
|
></ion-datetime>
|
|
363
364
|
`, config);
|
|
364
|
-
await page.
|
|
365
|
-
const dayValues = page.locator('.date-column
|
|
365
|
+
await page.waitForSelector('.datetime-ready');
|
|
366
|
+
const dayValues = page.locator('.date-column ion-picker-column-option');
|
|
366
367
|
expect(await dayValues.count()).toBe(15);
|
|
367
368
|
});
|
|
368
369
|
test('selecting date should update value when no value is set', async ({ page }) => {
|
|
@@ -372,9 +373,9 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
372
373
|
prefer-wheel="true"
|
|
373
374
|
></ion-datetime>
|
|
374
375
|
`, config);
|
|
375
|
-
await page.
|
|
376
|
+
await page.waitForSelector('.datetime-ready');
|
|
376
377
|
const ionChange = await page.spyOnEvent('ionChange');
|
|
377
|
-
const dayValues = page.locator('.date-column
|
|
378
|
+
const dayValues = page.locator('.date-column ion-picker-column-option');
|
|
378
379
|
// Change day/month value
|
|
379
380
|
await dayValues.nth(0).click();
|
|
380
381
|
await ionChange.next();
|
|
@@ -385,16 +386,16 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
385
386
|
await page.setContent(`
|
|
386
387
|
<ion-datetime presentation="time-date" prefer-wheel="true" min="2019-05-05" value="2019-05-10T16:30:00"></ion-datetime>
|
|
387
388
|
`, config);
|
|
388
|
-
await page.
|
|
389
|
-
const dayValues = page.locator('ion-datetime .date-column
|
|
389
|
+
await page.waitForSelector('.datetime-ready');
|
|
390
|
+
const dayValues = page.locator('ion-datetime .date-column ion-picker-column-option');
|
|
390
391
|
expect(await dayValues.count()).toEqual(57);
|
|
391
392
|
});
|
|
392
393
|
test('should respect the max bounds', async ({ page }) => {
|
|
393
394
|
await page.setContent(`
|
|
394
395
|
<ion-datetime presentation="time-date" prefer-wheel="true" max="2023-06-10" value="2023-06-05T16:30:00"></ion-datetime>
|
|
395
396
|
`, config);
|
|
396
|
-
await page.
|
|
397
|
-
const dayValues = page.locator('ion-datetime .date-column
|
|
397
|
+
await page.waitForSelector('.datetime-ready');
|
|
398
|
+
const dayValues = page.locator('ion-datetime .date-column ion-picker-column-option');
|
|
398
399
|
expect(await dayValues.count()).toEqual(41);
|
|
399
400
|
});
|
|
400
401
|
test('should respect isDateEnabled preference', async ({ page }) => {
|
|
@@ -411,8 +412,8 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
411
412
|
}
|
|
412
413
|
</script>
|
|
413
414
|
`, config);
|
|
414
|
-
await page.
|
|
415
|
-
const disabledDates = page.locator('.date-column
|
|
415
|
+
await page.waitForSelector('.datetime-ready');
|
|
416
|
+
const disabledDates = page.locator('.date-column ion-picker-column-option.option-disabled');
|
|
416
417
|
expect(await disabledDates.count()).toBe(44);
|
|
417
418
|
});
|
|
418
419
|
test('should respect month, day, and year preferences', async ({ page }) => {
|
|
@@ -426,8 +427,8 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
426
427
|
year-values="2022,2020,2019"
|
|
427
428
|
></ion-datetime>
|
|
428
429
|
`, config);
|
|
429
|
-
await page.
|
|
430
|
-
const dateValues = page.locator('.date-column
|
|
430
|
+
await page.waitForSelector('.datetime-ready');
|
|
431
|
+
const dateValues = page.locator('.date-column ion-picker-column-option');
|
|
431
432
|
expect(await dateValues.count()).toBe(5);
|
|
432
433
|
});
|
|
433
434
|
test('should correctly localize the date data', async ({ page }) => {
|
|
@@ -441,8 +442,8 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
441
442
|
value="2022-02-01"
|
|
442
443
|
></ion-datetime>
|
|
443
444
|
`, config);
|
|
444
|
-
await page.
|
|
445
|
-
const dateValues = page.locator('.date-column
|
|
445
|
+
await page.waitForSelector('.datetime-ready');
|
|
446
|
+
const dateValues = page.locator('.date-column ion-picker-column-option');
|
|
446
447
|
await expect(dateValues).toHaveText(['2月1日(火)', '2月2日(水)', '2月3日(木)']);
|
|
447
448
|
});
|
|
448
449
|
test('should respect min and max bounds even across years', async ({ page }) => {
|
|
@@ -455,17 +456,18 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
455
456
|
max="2023-01-01"
|
|
456
457
|
></ion-datetime>
|
|
457
458
|
`, config);
|
|
458
|
-
await page.
|
|
459
|
+
await page.waitForSelector('.datetime-ready');
|
|
459
460
|
const dateColumn = page.locator('.date-column');
|
|
460
|
-
const
|
|
461
|
+
const dateColumnScrollEl = dateColumn.locator('.picker-opts');
|
|
462
|
+
const dateValues = dateColumn.locator('ion-picker-column-option');
|
|
461
463
|
expect(await dateValues.count()).toBe(90);
|
|
462
464
|
/**
|
|
463
465
|
* Select 1st item to change the dates rendered
|
|
464
466
|
*/
|
|
465
|
-
await expect(dateValues.nth(0)).
|
|
466
|
-
await
|
|
467
|
+
await expect(dateValues.nth(0)).toHaveJSProperty('value', '2022-1-1');
|
|
468
|
+
await dateColumnScrollEl.evaluate((el) => (el.scrollTop = 0));
|
|
467
469
|
await page.waitForChanges();
|
|
468
|
-
await expect(dateValues.nth(0)).
|
|
470
|
+
await expect(dateValues.nth(0)).toHaveJSProperty('value', '2021-12-1');
|
|
469
471
|
});
|
|
470
472
|
test('should keep sliding window if default window is within min and max constraints', async ({ page }) => {
|
|
471
473
|
await page.setContent(`
|
|
@@ -477,8 +479,8 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
477
479
|
min="2010-01-01"
|
|
478
480
|
></ion-datetime>
|
|
479
481
|
`, config);
|
|
480
|
-
await page.
|
|
481
|
-
const dayValues = page.locator('.date-column
|
|
482
|
+
await page.waitForSelector('.datetime-ready');
|
|
483
|
+
const dayValues = page.locator('.date-column ion-picker-column-option');
|
|
482
484
|
expect(await dayValues.count()).toBe(92);
|
|
483
485
|
});
|
|
484
486
|
test('should narrow sliding window if default window is not within min and max constraints', async ({ page }) => {
|
|
@@ -491,8 +493,8 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
|
491
493
|
min="2022-05-01"
|
|
492
494
|
></ion-datetime>
|
|
493
495
|
`, config);
|
|
494
|
-
await page.
|
|
495
|
-
const dayValues = page.locator('.date-column
|
|
496
|
+
await page.waitForSelector('.datetime-ready');
|
|
497
|
+
const dayValues = page.locator('.date-column ion-picker-column-option');
|
|
496
498
|
expect(await dayValues.count()).toBe(15);
|
|
497
499
|
});
|
|
498
500
|
});
|
|
@@ -85,7 +85,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
|
|
|
85
85
|
await page.setContent(`
|
|
86
86
|
<ion-datetime presentation="date"></ion-datetime>
|
|
87
87
|
`, config);
|
|
88
|
-
await page.
|
|
88
|
+
await page.waitForSelector('.datetime-ready');
|
|
89
89
|
const datetime = page.locator('ion-datetime');
|
|
90
90
|
const monthYearButton = page.locator('ion-datetime .calendar-month-year');
|
|
91
91
|
await monthYearButton.click();
|
|
@@ -136,7 +136,7 @@ class DatetimePresentationFixture {
|
|
|
136
136
|
await this.page.setContent(`
|
|
137
137
|
<ion-datetime presentation="${presentation}" value="2010-03-10T13:00:00"></ion-datetime>
|
|
138
138
|
`, config);
|
|
139
|
-
await this.page.
|
|
139
|
+
await this.page.waitForSelector('.datetime-ready');
|
|
140
140
|
this.datetime = this.page.locator('ion-datetime');
|
|
141
141
|
}
|
|
142
142
|
async screenshot(name, screenshotFn) {
|
|
@@ -151,7 +151,7 @@ class TimePickerFixture {
|
|
|
151
151
|
await this.page.setContent(`
|
|
152
152
|
<ion-datetime presentation="time" value="${value}"></ion-datetime>
|
|
153
153
|
`, config);
|
|
154
|
-
await this.page.
|
|
154
|
+
await this.page.waitForSelector('.datetime-ready');
|
|
155
155
|
this.timePicker = this.page.locator('ion-datetime');
|
|
156
156
|
}
|
|
157
157
|
async setValue(value) {
|
|
@@ -161,7 +161,7 @@ class TimePickerFixture {
|
|
|
161
161
|
await this.page.waitForChanges();
|
|
162
162
|
}
|
|
163
163
|
async expectTime(hour, minute, ampm) {
|
|
164
|
-
const pickerColumns = this.timePicker.locator('ion-picker-column
|
|
164
|
+
const pickerColumns = this.timePicker.locator('ion-picker-column');
|
|
165
165
|
await expect(pickerColumns.nth(0)).toHaveJSProperty('value', hour);
|
|
166
166
|
await expect(pickerColumns.nth(1)).toHaveJSProperty('value', minute);
|
|
167
167
|
await expect(pickerColumns.nth(2)).toHaveJSProperty('value', ampm);
|
|
@@ -20,7 +20,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config, scree
|
|
|
20
20
|
await page.setContent(`
|
|
21
21
|
<ion-datetime value="2022-02-28" readonly></ion-datetime>
|
|
22
22
|
`, config);
|
|
23
|
-
await page.
|
|
23
|
+
await page.waitForSelector('.datetime-ready');
|
|
24
24
|
const febFirstButton = page.locator(`.calendar-day[data-day='1'][data-month='2']`);
|
|
25
25
|
await expect(febFirstButton).toBeDisabled();
|
|
26
26
|
});
|
|
@@ -29,12 +29,12 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config, scree
|
|
|
29
29
|
<ion-datetime value="2022-02-22T16:30:00" readonly></ion-datetime>
|
|
30
30
|
`, config);
|
|
31
31
|
const ionChange = await page.spyOnEvent('ionChange');
|
|
32
|
-
await page.
|
|
32
|
+
await page.waitForSelector('.datetime-ready');
|
|
33
33
|
const calendarMonthYear = page.locator('ion-datetime .calendar-month-year');
|
|
34
34
|
await expect(calendarMonthYear).toHaveText('February 2022');
|
|
35
35
|
await calendarMonthYear.click();
|
|
36
36
|
await page.waitForChanges();
|
|
37
|
-
await page.locator('.month-column
|
|
37
|
+
await page.locator('.month-column ion-picker-column-option').nth(2).click();
|
|
38
38
|
await page.waitForChanges();
|
|
39
39
|
await expect(calendarMonthYear).toHaveText('March 2022');
|
|
40
40
|
await expect(ionChange).not.toHaveReceivedEvent();
|
|
@@ -44,16 +44,16 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config, scree
|
|
|
44
44
|
<ion-datetime value="2022-02-22T16:30:00" readonly></ion-datetime>
|
|
45
45
|
`, config);
|
|
46
46
|
const tabKey = browserName === 'webkit' ? 'Alt+Tab' : 'Tab';
|
|
47
|
-
await page.
|
|
47
|
+
await page.waitForSelector('.datetime-ready');
|
|
48
48
|
const calendarMonthYear = page.locator('ion-datetime .calendar-month-year');
|
|
49
|
-
const monthYearButton = page.locator('.calendar-month-year
|
|
49
|
+
const monthYearButton = page.locator('.calendar-month-year-toggle');
|
|
50
50
|
await expect(calendarMonthYear).toHaveText('February 2022');
|
|
51
51
|
await page.keyboard.press(tabKey);
|
|
52
52
|
await expect(monthYearButton).toBeFocused();
|
|
53
53
|
await page.waitForChanges();
|
|
54
54
|
await page.keyboard.press('Enter');
|
|
55
55
|
await page.waitForChanges();
|
|
56
|
-
const marchPickerItem = page.locator('.month-column
|
|
56
|
+
const marchPickerItem = page.locator('.month-column ion-picker-column-option').nth(2);
|
|
57
57
|
await expect(marchPickerItem).toBeVisible();
|
|
58
58
|
});
|
|
59
59
|
test('should view next month via next button', async ({ page }) => {
|
|
@@ -75,7 +75,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config, scree
|
|
|
75
75
|
`, config);
|
|
76
76
|
const tabKey = browserName === 'webkit' ? 'Alt+Tab' : 'Tab';
|
|
77
77
|
const datetime = page.locator('ion-datetime');
|
|
78
|
-
const monthYearButton = page.locator('.calendar-month-year
|
|
78
|
+
const monthYearButton = page.locator('.calendar-month-year-toggle');
|
|
79
79
|
const prevButton = page.locator('.calendar-next-prev ion-button:nth-child(1)');
|
|
80
80
|
const nextButton = page.locator('.calendar-next-prev ion-button:nth-child(2)');
|
|
81
81
|
const calendarMonthYear = page.locator('ion-datetime .calendar-month-year');
|
|
@@ -105,7 +105,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config, scree
|
|
|
105
105
|
|
|
106
106
|
<ion-datetime value="2022-02-22T16:30:00" show-default-buttons="true" show-clear-button="true" readonly></ion-datetime>
|
|
107
107
|
`, config);
|
|
108
|
-
await page.
|
|
108
|
+
await page.waitForSelector('.datetime-ready');
|
|
109
109
|
const clearButton = page.locator('#clear-button button');
|
|
110
110
|
await expect(clearButton).toBeDisabled();
|
|
111
111
|
});
|
|
@@ -7,7 +7,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
|
|
|
7
7
|
test.describe(title('datetime: set-value'), () => {
|
|
8
8
|
test('should update the active date when value is initially set', async ({ page }) => {
|
|
9
9
|
await page.goto('/src/components/datetime/test/set-value', config);
|
|
10
|
-
await page.
|
|
10
|
+
await page.waitForSelector('.datetime-ready');
|
|
11
11
|
const datetime = page.locator('ion-datetime');
|
|
12
12
|
await datetime.evaluate((el) => (el.value = '2021-11-25T12:40:00.000Z'));
|
|
13
13
|
await page.waitForChanges();
|
|
@@ -16,7 +16,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
|
|
|
16
16
|
});
|
|
17
17
|
test('should update the active time when value is initially set', async ({ page }) => {
|
|
18
18
|
await page.goto('/src/components/datetime/test/set-value', config);
|
|
19
|
-
await page.
|
|
19
|
+
await page.waitForSelector('.datetime-ready');
|
|
20
20
|
const datetime = page.locator('ion-datetime');
|
|
21
21
|
await datetime.evaluate((el) => (el.value = '2021-11-25T12:40:00.000Z'));
|
|
22
22
|
await page.waitForChanges();
|
|
@@ -27,7 +27,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
|
|
|
27
27
|
await page.setContent(`
|
|
28
28
|
<ion-datetime presentation="date" locale="en-US"></ion-datetime>
|
|
29
29
|
`, config);
|
|
30
|
-
await page.
|
|
30
|
+
await page.waitForSelector('.datetime-ready');
|
|
31
31
|
const datetime = page.locator('ion-datetime');
|
|
32
32
|
const activeDayButton = page.locator('.calendar-day-active');
|
|
33
33
|
await datetime.evaluate((el) => (el.value = '2021-10-05'));
|
|
@@ -39,7 +39,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
|
|
|
39
39
|
});
|
|
40
40
|
test('should scroll to new month when value is initially set and then updated', async ({ page }) => {
|
|
41
41
|
await page.goto('/src/components/datetime/test/set-value', config);
|
|
42
|
-
await page.
|
|
42
|
+
await page.waitForSelector('.datetime-ready');
|
|
43
43
|
const datetime = page.locator('ion-datetime');
|
|
44
44
|
await datetime.evaluate((el) => (el.value = '2021-05-25T12:40:00.000Z'));
|
|
45
45
|
await page.waitForChanges();
|
|
@@ -9,7 +9,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
|
|
|
9
9
|
await page.setContent(`
|
|
10
10
|
<ion-datetime></ion-datetime>
|
|
11
11
|
`, config);
|
|
12
|
-
await page.
|
|
12
|
+
await page.waitForSelector('.datetime-ready');
|
|
13
13
|
const timeLabel = page.locator('ion-datetime .time-header');
|
|
14
14
|
await expect(timeLabel).toHaveText('Time');
|
|
15
15
|
});
|
|
@@ -17,7 +17,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
|
|
|
17
17
|
await page.setContent(`
|
|
18
18
|
<ion-datetime show-default-time-label="false"></ion-datetime>
|
|
19
19
|
`, config);
|
|
20
|
-
await page.
|
|
20
|
+
await page.waitForSelector('.datetime-ready');
|
|
21
21
|
const timeLabel = page.locator('ion-datetime .time-header');
|
|
22
22
|
await expect(timeLabel).toHaveText('');
|
|
23
23
|
});
|