@ionic/core 9.0.11-dev.11793890855.1bf6a6e5 → 9.0.11-dev.11793906456.1ea7a0a7
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/index.js +1 -1
- package/components/ion-accordion-group.js +1 -1
- package/components/ion-accordion.js +1 -1
- package/components/ion-action-sheet.js +1 -1
- package/components/ion-alert.js +1 -1
- package/components/ion-app.js +1 -1
- package/components/ion-avatar.js +1 -1
- package/components/ion-back-button.js +1 -1
- package/components/ion-backdrop.js +1 -1
- package/components/ion-badge.js +1 -1
- package/components/ion-breadcrumb.js +1 -1
- package/components/ion-breadcrumbs.js +1 -1
- package/components/ion-button.js +1 -1
- package/components/ion-buttons.js +1 -1
- package/components/ion-card-content.js +1 -1
- package/components/ion-card-header.js +1 -1
- package/components/ion-card-subtitle.js +1 -1
- package/components/ion-card-title.js +1 -1
- package/components/ion-card.js +1 -1
- package/components/ion-checkbox.js +1 -1
- package/components/ion-chip.js +1 -1
- package/components/ion-col.js +1 -1
- package/components/ion-content.js +1 -1
- package/components/ion-datetime-button.js +1 -1
- package/components/ion-datetime.js +1 -1
- package/components/ion-fab-button.js +1 -1
- package/components/ion-fab-list.js +1 -1
- package/components/ion-fab.js +1 -1
- package/components/ion-footer.js +1 -1
- package/components/ion-grid.js +1 -1
- package/components/ion-header.js +1 -1
- package/components/ion-icon.js +1 -1
- package/components/ion-img.js +1 -1
- package/components/ion-infinite-scroll-content.js +1 -1
- package/components/ion-infinite-scroll.js +1 -1
- package/components/ion-input-otp.js +1 -1
- package/components/ion-input-password-toggle.js +1 -1
- package/components/ion-input.js +1 -1
- package/components/ion-item-divider.js +1 -1
- package/components/ion-item-group.js +1 -1
- package/components/ion-item-option.js +1 -1
- package/components/ion-item-options.js +1 -1
- package/components/ion-item-sliding.js +1 -1
- package/components/ion-item.js +1 -1
- package/components/ion-label.js +1 -1
- package/components/ion-list-header.js +1 -1
- package/components/ion-list.js +1 -1
- package/components/ion-loading.js +1 -1
- package/components/ion-menu-button.js +1 -1
- package/components/ion-menu-toggle.js +1 -1
- package/components/ion-menu.js +1 -1
- package/components/ion-modal.js +1 -1
- package/components/ion-nav-link.js +1 -1
- package/components/ion-nav.js +1 -1
- package/components/ion-note.js +1 -1
- package/components/ion-picker-column-option.js +1 -1
- package/components/ion-picker-column.js +1 -1
- package/components/ion-picker.js +1 -1
- package/components/ion-popover.js +1 -1
- package/components/ion-progress-bar.js +1 -1
- package/components/ion-radio-group.js +1 -1
- package/components/ion-radio.js +1 -1
- package/components/ion-range.js +1 -1
- package/components/ion-refresher-content.js +1 -1
- package/components/ion-refresher.js +1 -1
- package/components/ion-reorder-group.js +1 -1
- package/components/ion-reorder.js +1 -1
- package/components/ion-ripple-effect.js +1 -1
- package/components/ion-route-redirect.js +1 -1
- package/components/ion-route.js +1 -1
- package/components/ion-router-link.js +1 -1
- package/components/ion-router-outlet.js +1 -1
- package/components/ion-router.js +1 -1
- package/components/ion-row.js +1 -1
- package/components/ion-searchbar.js +1 -1
- package/components/ion-segment-button.js +1 -1
- package/components/ion-segment-content.js +1 -1
- package/components/ion-segment-view.js +1 -1
- package/components/ion-segment.js +1 -1
- package/components/ion-select-modal.js +1 -1
- package/components/ion-select-option.js +1 -1
- package/components/ion-select-popover.js +1 -1
- package/components/ion-select.js +1 -1
- package/components/ion-skeleton-text.js +1 -1
- package/components/ion-spinner.js +1 -1
- package/components/ion-split-pane.js +1 -1
- package/components/ion-tab-bar.js +1 -1
- package/components/ion-tab-button.js +1 -1
- package/components/ion-tab.js +1 -1
- package/components/ion-tabs.js +1 -1
- package/components/ion-text.js +1 -1
- package/components/ion-textarea.js +1 -1
- package/components/ion-thumbnail.js +1 -1
- package/components/ion-title.js +1 -1
- package/components/ion-toast.js +1 -1
- package/components/ion-toggle.js +1 -1
- package/components/ion-toolbar.js +1 -1
- package/components/{p-Dce65ayP.js → p-07wRJfkt.js} +1 -1
- package/components/p-3avHDbEF.js +4 -0
- package/components/p-7KepMw9O.js +4 -0
- package/components/p-7NbIvzb4.js +4 -0
- package/components/p-B3dSuofL.js +4 -0
- package/components/p-BBsseItU.js +4 -0
- package/components/p-BMHdI-wb.js +4 -0
- package/components/p-BSQPZ79H.js +4 -0
- package/components/p-BT2InaHz.js +4 -0
- package/components/{p-BmnPbSf3.js → p-BWbz71uB.js} +1 -1
- package/components/p-BZ1k9WL7.js +4 -0
- package/components/p-BhamHSw3.js +4 -0
- package/components/p-BmVRXR1y.js +4 -0
- package/components/p-BrrMFd9K.js +4 -0
- package/components/p-C-SO5kIs.js +4 -0
- package/components/p-C0TdbIVo.js +4 -0
- package/components/p-C6Y0cCH_.js +4 -0
- package/components/p-C8BAigo3.js +4 -0
- package/components/{p-i08Rz__6.js → p-CCFj0kgH.js} +1 -1
- package/components/p-CRb2xRCz.js +4 -0
- package/components/p-CUQjkOdi.js +4 -0
- package/components/p-CW84OFQa.js +4 -0
- package/{dist/ionic/p-CaOPF8Xt.js → components/p-CdrNHfZl.js} +1 -1
- package/components/{p-B8TMb1l1.js → p-ChkSQqfP.js} +1 -1
- package/components/{p-CXzJ234J.js → p-ChsJlFCQ.js} +1 -1
- package/components/p-CjPRDxby.js +4 -0
- package/components/p-CohRJRIu.js +4 -0
- package/components/{p-YAWKbhjV.js → p-CqvARtmt.js} +1 -1
- package/components/p-Ct2aBEue.js +4 -0
- package/components/p-CvyvLbPe.js +4 -0
- package/components/{p-CiEBXUnh.js → p-CwEis84J.js} +1 -1
- package/{dist/ionic/p-BPA4-c6T.js → components/p-D5_mEbGJ.js} +1 -1
- package/components/p-D8FyR2IB.js +4 -0
- package/components/{p-cm7z1a2E.js → p-DHo45oj7.js} +1 -1
- package/components/p-DJztqcrH.js +4 -0
- package/components/p-DLEJ61lJ.js +4 -0
- package/components/p-DRm4t-by.js +4 -0
- package/components/p-DTGCMApY.js +4 -0
- package/components/p-D_U0pDe5.js +4 -0
- package/components/p-DaW9OZ6S.js +4 -0
- package/components/p-Dah8BCNg.js +4 -0
- package/components/p-DaojW_d_.js +4 -0
- package/components/{p-CSSj6cqb.js → p-Dbi3KqKm.js} +1 -1
- package/components/p-DnBabjgY.js +4 -0
- package/components/p-Ds5vN3iu.js +4 -0
- package/components/p-DwTzX8Vi.js +4 -0
- package/components/p-Dy7x-KDF.js +4 -0
- package/components/p-HthJZjZ6.js +4 -0
- package/components/p-KbMCbGRA.js +4 -0
- package/{dist/ionic/p-B7XMQegr.js → components/p-LkEGRiq0.js} +1 -1
- package/components/p-LpMHEu3v.js +4 -0
- package/components/p-PkD1iLNN.js +4 -0
- package/components/p-R4UxBukQ.js +4 -0
- package/components/p-RhI78AKb.js +4 -0
- package/components/p-byZM6qHV.js +4 -0
- package/components/p-hLu-eIbb.js +4 -0
- package/components/p-kKGBuIkf.js +4 -0
- package/components/p-z-EWo6r-.js +4 -0
- package/css/core.css +1 -1
- package/css/core.css.map +1 -1
- package/css/display.css +1 -1
- package/css/display.css.map +1 -1
- package/css/flex-utils.css +1 -1
- package/css/flex-utils.css.map +1 -1
- package/css/float-elements.css.map +1 -1
- package/css/global.bundle.css.map +1 -1
- package/css/ionic-swiper.css +1 -1
- package/css/ionic-swiper.css.map +1 -1
- package/css/ionic.bundle.css +1 -1
- package/css/ionic.bundle.css.map +1 -1
- package/css/normalize.css.map +1 -1
- package/css/padding.css.map +1 -1
- package/css/palettes/dark.always.css.map +1 -1
- package/css/palettes/dark.class.css.map +1 -1
- package/css/palettes/dark.system.css.map +1 -1
- package/css/palettes/high-contrast-dark.always.css.map +1 -1
- package/css/palettes/high-contrast-dark.class.css.map +1 -1
- package/css/palettes/high-contrast-dark.system.css.map +1 -1
- package/css/palettes/high-contrast.always.css.map +1 -1
- package/css/palettes/high-contrast.class.css.map +1 -1
- package/css/palettes/high-contrast.system.css.map +1 -1
- package/css/structure.css.map +1 -1
- package/css/text-alignment.css.map +1 -1
- package/css/text-transformation.css.map +1 -1
- package/css/typography.css.map +1 -1
- package/css/utils.bundle.css +1 -1
- package/css/utils.bundle.css.map +1 -1
- package/dist/cjs/{animation-zKIdNEmG.js → animation-UiXhXV49.js} +3 -3
- package/dist/cjs/{app-globals-BDrxn8eR.js → app-globals-BoFCZq0K.js} +1 -1
- package/dist/cjs/{attribute-controller-D7O2snOZ.js → attribute-controller-0-lwbVEj.js} +2 -3
- package/dist/cjs/{button-active-CY7cZvH5.js → button-active-DzN1aPt-.js} +2 -2
- package/dist/cjs/{capacitor-DmA66EwP.js → capacitor-BTjfXFlK.js} +3 -3
- package/dist/cjs/focus-visible-CCvKiLh3.js +77 -0
- package/dist/cjs/{format-C6r4Asi4.js → format-CVjpvAl1.js} +1 -1
- package/dist/cjs/{framework-delegate-CAdDEnFS.js → framework-delegate-hNMKEiQC.js} +2 -4
- package/dist/cjs/{haptic-Ch-X4gRx.js → haptic-BD5qPgy8.js} +1 -1
- package/dist/cjs/{helpers-DHNLF4fD.js → helpers-BrETKUUX.js} +10 -88
- package/dist/cjs/{index-B3s1jjBU.js → index-B4ONUQRp.js} +1 -1
- package/dist/cjs/{index-C3pmpKlo.js → index-BTc0Jnhx.js} +15 -17
- package/dist/cjs/{index-CB1PuDlX.js → index-BiQyIvoc.js} +5 -55
- package/dist/cjs/{index-DhGCo_n8.js → index-DMz2Eyis.js} +2 -2
- package/dist/cjs/{index-lD5wTj_b.js → index-DNBYnlrc.js} +4 -4
- package/dist/cjs/{index-C6QFfpm5.js → index-bwclzjks.js} +7 -9
- package/dist/cjs/{index-CxDnX7hd.js → index-wOmugbdg.js} +0 -2
- package/dist/cjs/index.cjs.js +18 -20
- package/dist/cjs/{input-shims-CjkWx7ae.js → input-shims-CRmdShL9.js} +16 -18
- package/dist/cjs/{input.utils-CD4DNiim.js → input.utils-Becpo0ax.js} +1 -1
- package/dist/cjs/ion-accordion_2.cjs.entry.js +29 -57
- package/dist/cjs/ion-action-sheet.cjs.entry.js +37 -42
- package/dist/cjs/ion-alert.cjs.entry.js +45 -50
- package/dist/cjs/ion-app_8.cjs.entry.js +196 -466
- package/dist/cjs/ion-avatar_3.cjs.entry.js +13 -124
- package/dist/cjs/ion-back-button.cjs.entry.js +23 -31
- package/dist/cjs/ion-backdrop.cjs.entry.js +7 -11
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +18 -42
- package/dist/cjs/ion-button_2.cjs.entry.js +23 -61
- package/dist/cjs/ion-card_5.cjs.entry.js +34 -57
- package/dist/cjs/ion-checkbox.cjs.entry.js +17 -43
- package/dist/cjs/ion-chip.cjs.entry.js +9 -51
- package/dist/cjs/ion-col_3.cjs.entry.js +63 -56
- package/dist/cjs/ion-datetime-button.cjs.entry.js +13 -45
- package/dist/cjs/ion-datetime.cjs.entry.js +63 -407
- package/dist/cjs/ion-fab_3.cjs.entry.js +28 -40
- package/dist/cjs/ion-img.cjs.entry.js +4 -9
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +16 -91
- package/dist/cjs/ion-input-otp.cjs.entry.js +10 -75
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +14 -42
- package/dist/cjs/ion-input.cjs.entry.js +38 -147
- package/dist/cjs/ion-item-option_3.cjs.entry.js +52 -466
- package/dist/cjs/ion-item_8.cjs.entry.js +51 -118
- package/dist/cjs/ion-loading.cjs.entry.js +28 -33
- package/dist/cjs/ion-menu_3.cjs.entry.js +36 -54
- package/dist/cjs/ion-modal.cjs.entry.js +155 -304
- package/dist/cjs/ion-nav_2.cjs.entry.js +10 -14
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +8 -13
- package/dist/cjs/ion-picker-column.cjs.entry.js +15 -17
- package/dist/cjs/ion-picker.cjs.entry.js +6 -11
- package/dist/cjs/ion-popover.cjs.entry.js +28 -33
- package/dist/cjs/ion-progress-bar.cjs.entry.js +9 -28
- package/dist/cjs/ion-radio_2.cjs.entry.js +18 -37
- package/dist/cjs/ion-range.cjs.entry.js +13 -21
- package/dist/cjs/ion-refresher_2.cjs.entry.js +20 -45
- package/dist/cjs/ion-reorder_2.cjs.entry.js +13 -31
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +7 -16
- package/dist/cjs/ion-route_4.cjs.entry.js +10 -12
- package/dist/cjs/ion-searchbar.cjs.entry.js +32 -118
- package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
- package/dist/cjs/ion-segment-view.cjs.entry.js +3 -13
- package/dist/cjs/ion-segment_2.cjs.entry.js +16 -24
- package/dist/cjs/ion-select-modal.cjs.entry.js +25 -54
- package/dist/cjs/ion-select_3.cjs.entry.js +81 -203
- package/dist/cjs/ion-spinner.cjs.entry.js +8 -31
- package/dist/cjs/ion-split-pane.cjs.entry.js +9 -14
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +27 -150
- package/dist/cjs/ion-tab_2.cjs.entry.js +7 -9
- package/dist/cjs/ion-text.cjs.entry.js +7 -8
- package/dist/cjs/ion-textarea.cjs.entry.js +41 -178
- package/dist/cjs/ion-toast.cjs.entry.js +57 -86
- package/dist/cjs/ion-toggle.cjs.entry.js +25 -67
- package/dist/cjs/ionic-global-48ceLiJ6.js +156 -0
- package/dist/cjs/ionic.cjs.js +4 -5
- package/dist/cjs/{ios.transition-BjOYqzH0.js → ios.transition-CN092Fh6.js} +4 -7
- package/dist/cjs/{item-multiple-inputs-D0lzjl68.js → item-multiple-inputs-C-hz7xrh.js} +1 -1
- package/dist/cjs/{keyboard-Cix5TVkD.js → keyboard-4OBzkjOG.js} +5 -3
- package/dist/cjs/{keyboard-cHxZlTyz.js → keyboard-BMpscicm.js} +1 -1
- package/dist/cjs/keyboard-controller-DZE97OtR.js +167 -0
- package/dist/cjs/loader.cjs.js +4 -5
- package/dist/cjs/{md.transition-C4i7l6ui.js → md.transition-B6961Ny9.js} +4 -6
- package/dist/cjs/{overlay-control-label-DnRLQR1t.js → overlay-control-label-D2sdL2O8.js} +11 -13
- package/dist/cjs/{overlays-DziOxcCT.js → overlays-BbVQG3UT.js} +176 -314
- package/dist/cjs/{select-option-render-X_iZ-xeh.js → select-option-render-CzyhrkOu.js} +2 -2
- package/dist/cjs/{slot-mutation-controller-BS-L1szN.js → slot-mutation-controller-CRa_cKOh.js} +13 -100
- package/dist/cjs/{status-tap-D5yiKwdj.js → status-tap-hRIvObiJ.js} +3 -5
- package/dist/cjs/{swipe-back-xM_5R5s-.js → swipe-back-C-aigThB.js} +2 -4
- package/dist/cjs/{theme-Cy4joHPt.js → theme-Bw0rpaNN.js} +1 -25
- package/dist/cjs/validity-BpS37YFM.js +19 -0
- package/dist/collection/collection-manifest.json +0 -8
- package/dist/collection/components/accordion/accordion.ios.css +58 -73
- package/dist/collection/components/accordion/accordion.js +27 -36
- package/dist/collection/components/accordion/accordion.md.css +59 -67
- package/dist/collection/components/accordion-group/accordion-group.ios.css +4 -16
- package/dist/collection/components/accordion-group/accordion-group.js +8 -44
- package/dist/collection/components/accordion-group/accordion-group.md.css +4 -22
- package/dist/collection/components/action-sheet/action-sheet.ios.css +54 -184
- package/dist/collection/components/action-sheet/action-sheet.js +13 -16
- package/dist/collection/components/action-sheet/action-sheet.md.css +55 -179
- package/dist/collection/components/alert/alert.ios.css +54 -247
- package/dist/collection/components/alert/alert.js +19 -22
- package/dist/collection/components/alert/alert.md.css +56 -243
- package/dist/collection/components/app/app.js +83 -15
- package/dist/collection/components/avatar/avatar.ios.css +33 -7
- package/dist/collection/components/avatar/avatar.js +4 -120
- package/dist/collection/components/avatar/avatar.md.css +0 -51
- package/dist/collection/components/back-button/back-button.ios.css +48 -60
- package/dist/collection/components/back-button/back-button.js +20 -26
- package/dist/collection/components/back-button/back-button.md.css +48 -60
- package/dist/collection/components/backdrop/backdrop.ios.css +19 -56
- package/dist/collection/components/backdrop/backdrop.js +6 -12
- package/dist/collection/components/backdrop/backdrop.md.css +19 -56
- package/dist/collection/components/badge/badge.ios.css +12 -137
- package/dist/collection/components/badge/badge.js +9 -143
- package/dist/collection/components/badge/badge.md.css +12 -122
- package/dist/collection/components/breadcrumb/breadcrumb.ios.css +8 -20
- package/dist/collection/components/breadcrumb/breadcrumb.js +11 -31
- package/dist/collection/components/breadcrumb/breadcrumb.md.css +8 -20
- package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +0 -6
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +9 -11
- package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +0 -6
- package/dist/collection/components/button/button.ios.css +46 -154
- package/dist/collection/components/button/button.js +27 -63
- package/dist/collection/components/button/button.md.css +50 -150
- package/dist/collection/components/buttons/buttons.ios.css +7 -59
- package/dist/collection/components/buttons/buttons.js +9 -15
- package/dist/collection/components/buttons/buttons.md.css +3 -55
- package/dist/collection/components/card/card.ios.css +14 -65
- package/dist/collection/components/card/card.js +10 -41
- package/dist/collection/components/card/card.md.css +14 -65
- package/dist/collection/components/card-content/card-content.ios.css +35 -20
- package/dist/collection/components/card-content/card-content.js +10 -12
- package/dist/collection/components/card-content/card-content.md.css +35 -20
- package/dist/collection/components/card-header/card-header.ios.css +15 -27
- package/dist/collection/components/card-header/card-header.js +10 -13
- package/dist/collection/components/card-header/card-header.md.css +15 -27
- package/dist/collection/components/card-subtitle/card-subtitle.ios.css +0 -12
- package/dist/collection/components/card-subtitle/card-subtitle.js +8 -11
- package/dist/collection/components/card-subtitle/card-subtitle.md.css +0 -12
- package/dist/collection/components/card-title/card-title.ios.css +0 -73
- package/dist/collection/components/card-title/card-title.js +8 -11
- package/dist/collection/components/card-title/card-title.md.css +0 -73
- package/dist/collection/components/checkbox/checkbox.ios.css +115 -244
- package/dist/collection/components/checkbox/checkbox.js +15 -80
- package/dist/collection/components/checkbox/checkbox.md.css +116 -245
- package/dist/collection/components/chip/chip.ios.css +14 -67
- package/dist/collection/components/chip/chip.js +8 -108
- package/dist/collection/components/chip/chip.md.css +14 -67
- package/dist/collection/components/col/col.css +4 -192
- package/dist/collection/components/col/col.js +67 -210
- package/dist/collection/components/content/{content.ios.css → content.css} +37 -106
- package/dist/collection/components/content/content.js +13 -22
- package/dist/collection/components/datetime/datetime.ios.css +114 -469
- package/dist/collection/components/datetime/datetime.js +52 -451
- package/dist/collection/components/datetime/datetime.md.css +103 -447
- package/dist/collection/components/datetime/utils/data.js +5 -5
- package/dist/collection/components/datetime/utils/state.js +1 -18
- package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -6
- package/dist/collection/components/datetime-button/datetime-button.js +12 -43
- package/dist/collection/components/datetime-button/datetime-button.md.css +0 -6
- package/dist/collection/components/fab/fab.css +1 -25
- package/dist/collection/components/fab/fab.js +5 -9
- package/dist/collection/components/fab-button/fab-button.ios.css +6 -18
- package/dist/collection/components/fab-button/fab-button.js +21 -31
- package/dist/collection/components/fab-button/fab-button.md.css +8 -20
- package/dist/collection/components/fab-list/fab-list.css +0 -12
- package/dist/collection/components/fab-list/fab-list.js +5 -9
- package/dist/collection/components/footer/footer.ios.css +6 -33
- package/dist/collection/components/footer/footer.js +25 -117
- package/dist/collection/components/footer/footer.md.css +0 -40
- package/dist/collection/components/grid/grid.css +0 -12
- package/dist/collection/components/grid/grid.js +5 -9
- package/dist/collection/components/header/header.ios.css +133 -178
- package/dist/collection/components/header/header.js +39 -180
- package/dist/collection/components/header/header.md.css +9 -199
- package/dist/collection/components/header/header.utils.js +13 -5
- package/dist/collection/components/img/img.js +2 -7
- package/dist/collection/components/infinite-scroll/infinite-scroll.js +5 -99
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -12
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +10 -16
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -12
- package/dist/collection/components/input/input.ios.css +160 -254
- package/dist/collection/components/input/input.js +44 -172
- package/dist/collection/components/input/input.md.css +232 -224
- package/dist/collection/components/input-otp/input-otp.ios.css +60 -105
- package/dist/collection/components/input-otp/input-otp.js +8 -74
- package/dist/collection/components/input-otp/input-otp.md.css +60 -105
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +10 -37
- package/dist/collection/components/item/item.ios.css +80 -120
- package/dist/collection/components/item/item.js +21 -51
- package/dist/collection/components/item/item.md.css +79 -131
- package/dist/collection/components/item-divider/item-divider.ios.css +0 -18
- package/dist/collection/components/item-divider/item-divider.js +8 -11
- package/dist/collection/components/item-divider/item-divider.md.css +0 -18
- package/dist/collection/components/item-group/item-group.ios.css +0 -12
- package/dist/collection/components/item-group/item-group.js +7 -13
- package/dist/collection/components/item-group/item-group.md.css +0 -12
- package/dist/collection/components/item-option/item-option.ios.css +29 -136
- package/dist/collection/components/item-option/item-option.js +9 -73
- package/dist/collection/components/item-option/item-option.md.css +29 -136
- package/dist/collection/components/item-options/item-options.ios.css +34 -77
- package/dist/collection/components/item-options/item-options.js +7 -13
- package/dist/collection/components/item-options/item-options.md.css +34 -77
- package/dist/collection/components/item-sliding/{item-sliding.native.css → item-sliding.css} +9 -84
- package/dist/collection/components/item-sliding/item-sliding.js +35 -419
- package/dist/collection/components/item-sliding/test/test.utils.js +0 -13
- package/dist/collection/components/label/label.ios.css +0 -18
- package/dist/collection/components/label/label.js +8 -11
- package/dist/collection/components/label/label.md.css +0 -18
- package/dist/collection/components/list/list.ios.css +14 -54
- package/dist/collection/components/list/list.js +9 -48
- package/dist/collection/components/list/list.md.css +16 -56
- package/dist/collection/components/list-header/list-header.ios.css +38 -82
- package/dist/collection/components/list-header/list-header.js +8 -11
- package/dist/collection/components/list-header/list-header.md.css +38 -82
- package/dist/collection/components/loading/loading.ios.css +1 -13
- package/dist/collection/components/loading/loading.js +12 -15
- package/dist/collection/components/loading/loading.md.css +1 -13
- package/dist/collection/components/menu/menu.ios.css +3 -15
- package/dist/collection/components/menu/menu.js +7 -12
- package/dist/collection/components/menu/menu.md.css +3 -15
- package/dist/collection/components/menu-button/menu-button.ios.css +14 -48
- package/dist/collection/components/menu-button/menu-button.js +10 -23
- package/dist/collection/components/menu-button/menu-button.md.css +15 -49
- package/dist/collection/components/menu-toggle/menu-toggle.js +5 -8
- package/dist/collection/components/modal/animations/sheet.js +2 -8
- package/dist/collection/components/modal/gestures/sheet.js +8 -96
- package/dist/collection/components/modal/modal.ios.css +70 -178
- package/dist/collection/components/modal/modal.js +13 -52
- package/dist/collection/components/modal/modal.md.css +70 -178
- package/dist/collection/components/nav/nav.css +1 -7
- package/dist/collection/components/nav/nav.js +4 -10
- package/dist/collection/components/nav-link/nav-link.js +1 -5
- package/dist/collection/components/note/note.ios.css +0 -12
- package/dist/collection/components/note/note.js +8 -11
- package/dist/collection/components/note/note.md.css +0 -12
- package/dist/collection/components/picker/picker.ios.css +3 -15
- package/dist/collection/components/picker/picker.js +5 -8
- package/dist/collection/components/picker/picker.md.css +3 -15
- package/dist/collection/components/picker-column/picker-column.css +2 -9
- package/dist/collection/components/picker-column/picker-column.js +7 -8
- package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
- package/dist/collection/components/picker-column-option/picker-column-option.js +7 -13
- package/dist/collection/components/picker-column-option/picker-column-option.md.css +0 -6
- package/dist/collection/components/popover/popover.ios.css +1 -13
- package/dist/collection/components/popover/popover.js +16 -19
- package/dist/collection/components/popover/popover.md.css +1 -13
- package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -48
- package/dist/collection/components/progress-bar/progress-bar.js +7 -43
- package/dist/collection/components/progress-bar/progress-bar.md.css +17 -48
- package/dist/collection/components/radio/radio.ios.css +102 -207
- package/dist/collection/components/radio/radio.js +9 -14
- package/dist/collection/components/radio/radio.md.css +102 -207
- package/dist/collection/components/radio-group/radio-group.ios.css +19 -43
- package/dist/collection/components/radio-group/radio-group.js +7 -48
- package/dist/collection/components/radio-group/radio-group.md.css +19 -43
- package/dist/collection/components/range/range.ios.css +85 -128
- package/dist/collection/components/range/range.js +10 -16
- package/dist/collection/components/range/range.md.css +85 -128
- package/dist/collection/components/refresher/refresher.ios.css +1 -14
- package/dist/collection/components/refresher/refresher.js +8 -11
- package/dist/collection/components/refresher/refresher.md.css +2 -15
- package/dist/collection/components/refresher-content/refresher-content.js +7 -34
- package/dist/collection/components/reorder/reorder.ios.css +0 -6
- package/dist/collection/components/reorder/reorder.js +6 -25
- package/dist/collection/components/reorder/reorder.md.css +0 -6
- package/dist/collection/components/reorder-group/reorder-group.css +0 -6
- package/dist/collection/components/reorder-group/reorder-group.js +4 -8
- package/dist/collection/components/ripple-effect/{ripple-effect.common.css → ripple-effect.css} +1 -7
- package/dist/collection/components/ripple-effect/ripple-effect.js +6 -14
- package/dist/collection/components/route/route.js +0 -4
- package/dist/collection/components/router/router.js +0 -4
- package/dist/collection/components/router-link/router-link.css +2 -8
- package/dist/collection/components/router-link/router-link.js +5 -9
- package/dist/collection/components/router-outlet/router-outlet.css +1 -7
- package/dist/collection/components/router-outlet/router-outlet.js +3 -6
- package/dist/collection/components/row/row.css +0 -16
- package/dist/collection/components/row/row.js +2 -9
- package/dist/collection/components/searchbar/searchbar.ios.css +18 -56
- package/dist/collection/components/searchbar/searchbar.js +42 -164
- package/dist/collection/components/searchbar/searchbar.md.css +18 -56
- package/dist/collection/components/segment/segment.ios.css +2 -45
- package/dist/collection/components/segment/segment.js +8 -11
- package/dist/collection/components/segment/segment.md.css +2 -45
- package/dist/collection/components/segment-button/segment-button.ios.css +105 -146
- package/dist/collection/components/segment-button/segment-button.js +8 -11
- package/dist/collection/components/segment-button/segment-button.md.css +107 -148
- package/dist/collection/components/segment-content/segment-content.js +1 -1
- package/dist/collection/components/segment-view/segment-view.ios.css +0 -6
- package/dist/collection/components/segment-view/segment-view.js +4 -13
- package/dist/collection/components/segment-view/segment-view.md.css +0 -6
- package/dist/collection/components/select/select.ios.css +148 -304
- package/dist/collection/components/select/select.js +82 -232
- package/dist/collection/components/select/select.md.css +150 -320
- package/dist/collection/components/select-modal/select-modal.ios.css +45 -293
- package/dist/collection/components/select-modal/select-modal.js +15 -63
- package/dist/collection/components/select-modal/select-modal.md.css +43 -273
- package/dist/collection/components/select-option/select-option.js +4 -8
- package/dist/collection/components/select-popover/select-popover.ios.css +124 -188
- package/dist/collection/components/select-popover/select-popover.js +9 -17
- package/dist/collection/components/select-popover/select-popover.md.css +47 -228
- package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
- package/dist/collection/components/skeleton-text/skeleton-text.js +5 -9
- package/dist/collection/components/spinner/{spinner.ionic.css → spinner.css} +10 -78
- package/dist/collection/components/spinner/spinner.js +6 -47
- package/dist/collection/components/split-pane/split-pane.ios.css +2 -20
- package/dist/collection/components/split-pane/split-pane.js +8 -15
- package/dist/collection/components/split-pane/split-pane.md.css +2 -20
- package/dist/collection/components/tab/tab.js +2 -6
- package/dist/collection/components/tab-bar/tab-bar.ios.css +43 -86
- package/dist/collection/components/tab-bar/tab-bar.js +15 -178
- package/dist/collection/components/tab-bar/tab-bar.md.css +43 -86
- package/dist/collection/components/tab-button/tab-button.ios.css +95 -171
- package/dist/collection/components/tab-button/tab-button.js +9 -54
- package/dist/collection/components/tab-button/tab-button.md.css +93 -137
- package/dist/collection/components/tabs/tabs.css +1 -7
- package/dist/collection/components/tabs/tabs.js +1 -4
- package/dist/collection/components/text/text.css +0 -6
- package/dist/collection/components/text/text.js +6 -7
- package/dist/collection/components/textarea/textarea.ios.css +174 -322
- package/dist/collection/components/textarea/textarea.js +43 -205
- package/dist/collection/components/textarea/textarea.md.css +176 -339
- package/dist/collection/components/thumbnail/thumbnail.css +0 -6
- package/dist/collection/components/thumbnail/thumbnail.js +2 -9
- package/dist/collection/components/title/title.ios.css +4 -32
- package/dist/collection/components/title/title.js +7 -13
- package/dist/collection/components/title/title.md.css +4 -39
- package/dist/collection/components/toast/animations/utils.js +1 -1
- package/dist/collection/components/toast/toast.ios.css +45 -84
- package/dist/collection/components/toast/toast.js +13 -79
- package/dist/collection/components/toast/toast.md.css +45 -84
- package/dist/collection/components/toggle/toggle.ios.css +127 -247
- package/dist/collection/components/toggle/toggle.js +18 -58
- package/dist/collection/components/toggle/toggle.md.css +127 -245
- package/dist/collection/components/toolbar/toolbar.ios.css +47 -90
- package/dist/collection/components/toolbar/toolbar.js +14 -216
- package/dist/collection/components/toolbar/toolbar.md.css +47 -90
- package/dist/collection/global/ionic-global.js +13 -239
- package/dist/collection/utils/focus-trap.js +4 -15
- package/dist/collection/utils/focus-visible.js +2 -73
- package/dist/collection/utils/forms/click-controller.js +9 -95
- package/dist/collection/utils/forms/index.js +0 -1
- package/dist/collection/utils/forms/validity.js +0 -31
- package/dist/collection/utils/framework-delegate.js +1 -3
- package/dist/collection/utils/hardware-back-button.js +0 -15
- package/dist/collection/utils/helpers.js +3 -84
- package/dist/collection/utils/keyboard/keyboard-controller.js +1 -3
- package/dist/collection/utils/media.js +0 -1
- package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
- package/dist/collection/utils/menu-controller/animations/push.js +1 -2
- package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
- package/dist/collection/utils/overlay-control-label.js +11 -13
- package/dist/collection/utils/overlays.js +10 -289
- package/dist/collection/utils/test/playwright/drag-element.js +9 -32
- package/dist/collection/utils/test/playwright/generator.js +23 -48
- package/dist/collection/utils/test/playwright/index.js +0 -1
- package/dist/collection/utils/test/playwright/page/utils/goto.js +1 -10
- package/dist/collection/utils/test/playwright/page/utils/set-content.js +3 -26
- package/dist/collection/utils/theme.js +1 -25
- package/dist/collection/utils/transition/ios.transition.js +0 -1
- package/dist/docs.json +304 -9167
- package/dist/esm/{animation-GasMiLY0.js → animation-C_V9lXzL.js} +2 -2
- package/dist/esm/{app-globals-DbCTe1Vv.js → app-globals-CNfpAPW6.js} +1 -1
- package/dist/esm/{attribute-controller-CbJaN4Zr.js → attribute-controller-ItNOXNp9.js} +1 -2
- package/dist/esm/{button-active-DLOYzeXl.js → button-active-rB-Ct9KZ.js} +2 -2
- package/dist/esm/{capacitor-CFERIeaU.js → capacitor-BY7l8HgR.js} +1 -1
- package/dist/esm/focus-visible-BmVRXR1y.js +75 -0
- package/dist/esm/{format-DUHrIiJq.js → format-Ck1cw5z7.js} +2 -2
- package/dist/esm/{framework-delegate-99Ms_INy.js → framework-delegate-CW5_kWfc.js} +2 -4
- package/dist/esm/{haptic-Cq4UAeka.js → haptic-ES_sSPLn.js} +1 -1
- package/dist/esm/{helpers-B_F2b1gy.js → helpers-p94IkmEA.js} +8 -86
- package/dist/esm/{index-hR6kxzTq.js → index-BpRUsN_W.js} +5 -55
- package/dist/esm/{index-BkJpfpXI.js → index-BvabGprD.js} +1 -2
- package/dist/esm/{index-BeR_5uou.js → index-CBkVO5D0.js} +2 -2
- package/dist/esm/{index-BRYliuA-.js → index-CK8uF0iB.js} +1 -1
- package/dist/esm/{index-BoEdvSPU.js → index-DLDbwWW7.js} +2 -4
- package/dist/esm/{index-D86Q8ZLS.js → index-txcXIB3P.js} +10 -12
- package/dist/esm/{index-D5lNz-tr.js → index-vgPixHgF.js} +4 -4
- package/dist/esm/index.js +12 -14
- package/dist/esm/{input-shims-CJVi9djP.js → input-shims-KNXj3DAv.js} +5 -7
- package/dist/esm/{input.utils-gPgFKve4.js → input.utils-DZY_K8Po.js} +1 -1
- package/dist/esm/ion-accordion_2.entry.js +29 -57
- package/dist/esm/ion-action-sheet.entry.js +22 -27
- package/dist/esm/ion-alert.entry.js +29 -34
- package/dist/esm/ion-app_8.entry.js +194 -464
- package/dist/esm/ion-avatar_3.entry.js +13 -124
- package/dist/esm/ion-back-button.entry.js +23 -31
- package/dist/esm/ion-backdrop.entry.js +7 -11
- package/dist/esm/ion-breadcrumb_2.entry.js +18 -42
- package/dist/esm/ion-button_2.entry.js +23 -61
- package/dist/esm/ion-card_5.entry.js +34 -57
- package/dist/esm/ion-checkbox.entry.js +17 -43
- package/dist/esm/ion-chip.entry.js +9 -51
- package/dist/esm/ion-col_3.entry.js +63 -56
- package/dist/esm/ion-datetime-button.entry.js +13 -45
- package/dist/esm/ion-datetime.entry.js +62 -406
- package/dist/esm/ion-fab_3.entry.js +28 -40
- package/dist/esm/ion-img.entry.js +4 -9
- package/dist/esm/ion-infinite-scroll_2.entry.js +16 -91
- package/dist/esm/ion-input-otp.entry.js +10 -75
- package/dist/esm/ion-input-password-toggle.entry.js +14 -42
- package/dist/esm/ion-input.entry.js +38 -147
- package/dist/esm/ion-item-option_3.entry.js +52 -466
- package/dist/esm/ion-item_8.entry.js +51 -118
- package/dist/esm/ion-loading.entry.js +17 -22
- package/dist/esm/ion-menu_3.entry.js +27 -45
- package/dist/esm/ion-modal.entry.js +88 -237
- package/dist/esm/ion-nav_2.entry.js +10 -14
- package/dist/esm/ion-picker-column-option.entry.js +8 -13
- package/dist/esm/ion-picker-column.entry.js +12 -14
- package/dist/esm/ion-picker.entry.js +6 -11
- package/dist/esm/ion-popover.entry.js +18 -23
- package/dist/esm/ion-progress-bar.entry.js +9 -28
- package/dist/esm/ion-radio_2.entry.js +18 -37
- package/dist/esm/ion-range.entry.js +13 -21
- package/dist/esm/ion-refresher_2.entry.js +20 -45
- package/dist/esm/ion-reorder_2.entry.js +13 -31
- package/dist/esm/ion-ripple-effect.entry.js +7 -16
- package/dist/esm/ion-route_4.entry.js +10 -12
- package/dist/esm/ion-searchbar.entry.js +32 -118
- package/dist/esm/ion-segment-content.entry.js +2 -2
- package/dist/esm/ion-segment-view.entry.js +3 -13
- package/dist/esm/ion-segment_2.entry.js +16 -24
- package/dist/esm/ion-select-modal.entry.js +24 -53
- package/dist/esm/ion-select_3.entry.js +76 -198
- package/dist/esm/ion-spinner.entry.js +8 -31
- package/dist/esm/ion-split-pane.entry.js +9 -14
- package/dist/esm/ion-tab-bar_2.entry.js +26 -149
- package/dist/esm/ion-tab_2.entry.js +7 -9
- package/dist/esm/ion-text.entry.js +7 -8
- package/dist/esm/ion-textarea.entry.js +41 -178
- package/dist/esm/ion-toast.entry.js +19 -48
- package/dist/esm/ion-toggle.entry.js +25 -67
- package/dist/esm/ionic-global-Cep6oYzK.js +151 -0
- package/dist/esm/ionic.js +5 -6
- package/dist/esm/{ios.transition-C9thfQYf.js → ios.transition-CW92wRDL.js} +4 -7
- package/dist/esm/{item-multiple-inputs-CSJsB7-I.js → item-multiple-inputs-Bd2LO7qK.js} +1 -1
- package/dist/esm/{keyboard-Cj8mLJeq.js → keyboard-BumguZrM.js} +5 -3
- package/dist/esm/{keyboard-DAF8GNJ9.js → keyboard-CutS8BPd.js} +1 -1
- package/dist/esm/keyboard-controller-DqohyEsZ.js +165 -0
- package/dist/esm/loader.js +5 -6
- package/dist/esm/{md.transition-BEhPsy_z.js → md.transition-yhfkYX1P.js} +4 -6
- package/dist/esm/{overlay-control-label-CODBQrPj.js → overlay-control-label-BSQPZ79H.js} +11 -13
- package/dist/esm/{overlays-C8sf7PId.js → overlays-BBgMM61s.js} +164 -307
- package/dist/esm/{select-option-render-D5kt0cO9.js → select-option-render-BSDT9oSA.js} +2 -2
- package/dist/esm/{slot-mutation-controller-DanfZTCH.js → slot-mutation-controller-uKdPbY9K.js} +10 -97
- package/dist/esm/{status-tap-B8UQS38n.js → status-tap-BskkGI4e.js} +3 -5
- package/dist/esm/{swipe-back-Bgftkxen.js → swipe-back-BZdyM2Q-.js} +2 -4
- package/dist/esm/{theme-BUF_V-Kg.js → theme-byZM6qHV.js} +1 -25
- package/dist/esm/validity-DJztqcrH.js +17 -0
- package/dist/html.html-data.json +156 -2657
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-00cd107d.entry.js +4 -0
- package/dist/ionic/p-013b9aba.entry.js +4 -0
- package/dist/ionic/p-014c3633.entry.js +4 -0
- package/dist/ionic/p-0562139b.entry.js +4 -0
- package/dist/ionic/p-0a789930.entry.js +4 -0
- package/dist/ionic/p-0f1613f2.entry.js +4 -0
- package/dist/ionic/p-1252621e.entry.js +4 -0
- package/dist/ionic/p-129f7b95.entry.js +4 -0
- package/dist/ionic/p-16de8fd9.entry.js +4 -0
- package/dist/ionic/p-1bb1be7e.entry.js +4 -0
- package/dist/ionic/p-1f342c2d.entry.js +4 -0
- package/dist/ionic/p-1ffa5577.entry.js +4 -0
- package/dist/ionic/p-210f906e.entry.js +4 -0
- package/dist/ionic/p-27960f65.entry.js +4 -0
- package/dist/ionic/p-3c6fc2e8.entry.js +4 -0
- package/dist/ionic/p-436d4ac8.entry.js +4 -0
- package/dist/ionic/p-43729675.entry.js +4 -0
- package/dist/ionic/p-4468e439.entry.js +4 -0
- package/dist/ionic/p-4e4e5919.entry.js +4 -0
- package/dist/ionic/p-51af4728.entry.js +4 -0
- package/dist/ionic/p-59e4b521.entry.js +4 -0
- package/dist/ionic/{p-BMPN55of.js → p-5a3UxQAh.js} +1 -1
- package/dist/ionic/p-5b47b8d5.entry.js +4 -0
- package/dist/ionic/p-5dcddfd5.entry.js +4 -0
- package/dist/ionic/p-694f3e78.entry.js +4 -0
- package/dist/ionic/p-76c189e7.entry.js +4 -0
- package/dist/ionic/p-77252596.entry.js +4 -0
- package/dist/ionic/p-77540bcb.entry.js +4 -0
- package/dist/ionic/p-77e7b612.entry.js +4 -0
- package/dist/ionic/p-7868eb92.entry.js +4 -0
- package/dist/ionic/p-800ce1e0.entry.js +4 -0
- package/dist/ionic/p-84470714.entry.js +4 -0
- package/dist/ionic/p-87fb6d59.entry.js +4 -0
- package/dist/ionic/p-8B39TMv-.js +4 -0
- package/dist/ionic/p-8af85fa8.entry.js +4 -0
- package/dist/ionic/p-8c85e250.entry.js +4 -0
- package/dist/ionic/p-8dQB1sG_.js +4 -0
- package/dist/ionic/p-9515f840.entry.js +4 -0
- package/dist/ionic/p-96d040b0.entry.js +4 -0
- package/dist/ionic/p-9d7e5a0b.entry.js +4 -0
- package/dist/ionic/p-B0afqOUt.js +4 -0
- package/dist/ionic/p-B2JD8_LP.js +4 -0
- package/dist/ionic/p-B2y1T0dN.js +4 -0
- package/dist/ionic/{p-T71k3C35.js → p-BBZQUbCq.js} +1 -1
- package/dist/ionic/p-BHBb21Hp.js +4 -0
- package/{components/p-B7ExaLVL.js → dist/ionic/p-BO10QT9r.js} +1 -1
- package/dist/ionic/p-BSQPZ79H.js +4 -0
- package/{components/p-BmfO2-NE.js → dist/ionic/p-BWKtcudz.js} +1 -1
- package/dist/ionic/p-BexAj0yw.js +4 -0
- package/dist/ionic/p-BgkRGRO3.js +4 -0
- package/dist/ionic/p-BmVRXR1y.js +4 -0
- package/dist/ionic/p-BpRUsN_W.js +6 -0
- package/dist/ionic/p-BvabGprD.js +4 -0
- package/dist/ionic/p-C4SpVvhx.js +4 -0
- package/{components/p-o89R3aqe.js → dist/ionic/p-CJmyfI8x.js} +1 -1
- package/dist/ionic/p-CNdt1FPc.js +4 -0
- package/dist/ionic/{p-DuxayXEj.js → p-Cf6KtUnA.js} +1 -1
- package/dist/ionic/p-CfccUand.js +4 -0
- package/dist/ionic/p-DArnNWiu.js +4 -0
- package/dist/ionic/p-DBFcFCH5.js +4 -0
- package/dist/ionic/{p-Bjt84heL.js → p-DCmOKz8e.js} +1 -1
- package/dist/ionic/p-DFPZa_No.js +4 -0
- package/dist/ionic/p-DJztqcrH.js +4 -0
- package/dist/ionic/p-DYKDWM2f.js +4 -0
- package/dist/ionic/{p-rwBGNQHN.js → p-DfvWlTdB.js} +1 -1
- package/dist/ionic/p-DriE1ZAo.js +4 -0
- package/dist/ionic/{p-CeHcVwSj.js → p-DxftXYZp.js} +1 -1
- package/dist/ionic/p-DzQk7Lu8.js +4 -0
- package/dist/ionic/p-SEecsUh7.js +4 -0
- package/dist/ionic/p-a45caa30.entry.js +4 -0
- package/dist/ionic/p-af15fc5d.entry.js +4 -0
- package/dist/ionic/p-af4b4719.entry.js +4 -0
- package/dist/ionic/p-b0faaae2.entry.js +4 -0
- package/dist/ionic/p-b3aadfe8.entry.js +4 -0
- package/dist/ionic/p-b5bcbbc1.entry.js +4 -0
- package/dist/ionic/p-byZM6qHV.js +4 -0
- package/dist/ionic/p-c293f854.entry.js +4 -0
- package/dist/ionic/p-c56c23b6.entry.js +4 -0
- package/dist/ionic/p-c7ea2647.entry.js +4 -0
- package/dist/ionic/p-c8c77f7b.entry.js +4 -0
- package/dist/ionic/p-cbc73380.entry.js +4 -0
- package/dist/ionic/p-d58e9da3.entry.js +4 -0
- package/dist/ionic/p-e1haAYzm.js +4 -0
- package/dist/ionic/p-ec08a7e6.entry.js +4 -0
- package/dist/ionic/p-f37e6ed2.entry.js +4 -0
- package/dist/ionic/p-f6a1ab48.entry.js +4 -0
- package/dist/types/components/accordion/accordion.d.ts +3 -12
- package/dist/types/components/accordion-group/accordion-group.d.ts +1 -12
- package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
- package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
- package/dist/types/components/alert/alert-interface.d.ts +7 -3
- package/dist/types/components/alert/alert.d.ts +2 -3
- package/dist/types/components/app/app.d.ts +5 -4
- package/dist/types/components/avatar/avatar.d.ts +0 -32
- package/dist/types/components/back-button/back-button.d.ts +3 -10
- package/dist/types/components/backdrop/backdrop.d.ts +0 -4
- package/dist/types/components/badge/badge.d.ts +1 -34
- package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -14
- package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
- package/dist/types/components/button/button.d.ts +8 -23
- package/dist/types/components/buttons/buttons.d.ts +1 -5
- package/dist/types/components/card/card.d.ts +1 -8
- package/dist/types/components/card-content/card-content.d.ts +1 -2
- package/dist/types/components/card-header/card-header.d.ts +2 -3
- package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
- package/dist/types/components/card-title/card-title.d.ts +1 -2
- package/dist/types/components/checkbox/checkbox.d.ts +5 -26
- package/dist/types/components/chip/chip.d.ts +1 -26
- package/dist/types/components/col/col.d.ts +6 -52
- package/dist/types/components/content/content.d.ts +0 -3
- package/dist/types/components/datetime/datetime-interface.d.ts +0 -4
- package/dist/types/components/datetime/datetime.d.ts +7 -99
- package/dist/types/components/datetime/utils/data.d.ts +5 -5
- package/dist/types/components/datetime/utils/state.d.ts +2 -5
- package/dist/types/components/datetime-button/datetime-button.d.ts +1 -2
- package/dist/types/components/fab/fab.d.ts +0 -4
- package/dist/types/components/fab-button/fab-button.d.ts +3 -11
- package/dist/types/components/fab-list/fab-list.d.ts +0 -4
- package/dist/types/components/footer/footer.d.ts +3 -20
- package/dist/types/components/grid/grid.d.ts +0 -4
- package/dist/types/components/header/header.d.ts +3 -26
- package/dist/types/components/header/header.utils.d.ts +5 -4
- package/dist/types/components/img/img.d.ts +0 -2
- package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -21
- package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +0 -4
- package/dist/types/components/input/input.d.ts +5 -45
- package/dist/types/components/input-otp/input-otp.d.ts +0 -37
- package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +0 -14
- package/dist/types/components/item/item.d.ts +4 -17
- package/dist/types/components/item-divider/item-divider.d.ts +1 -2
- package/dist/types/components/item-group/item-group.d.ts +0 -4
- package/dist/types/components/item-option/item-option.d.ts +1 -18
- package/dist/types/components/item-options/item-options.d.ts +0 -4
- package/dist/types/components/item-sliding/item-sliding.d.ts +1 -47
- package/dist/types/components/item-sliding/test/test.utils.d.ts +0 -13
- package/dist/types/components/label/label.d.ts +1 -2
- package/dist/types/components/list/list.d.ts +1 -15
- package/dist/types/components/list-header/list-header.d.ts +1 -2
- package/dist/types/components/loading/loading-interface.d.ts +7 -2
- package/dist/types/components/loading/loading.d.ts +2 -3
- package/dist/types/components/menu/menu.d.ts +0 -3
- package/dist/types/components/menu-button/menu-button.d.ts +1 -8
- package/dist/types/components/menu-toggle/menu-toggle.d.ts +0 -3
- package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
- package/dist/types/components/modal/modal-interface.d.ts +7 -4
- package/dist/types/components/modal/modal.d.ts +1 -11
- package/dist/types/components/nav/nav-interface.d.ts +1 -9
- package/dist/types/components/nav/nav.d.ts +1 -5
- package/dist/types/components/nav-link/nav-link.d.ts +0 -4
- package/dist/types/components/note/note.d.ts +1 -2
- package/dist/types/components/picker/picker.d.ts +1 -2
- package/dist/types/components/picker-column/picker-column.d.ts +1 -2
- package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
- package/dist/types/components/popover/popover-interface.d.ts +6 -3
- package/dist/types/components/popover/popover.d.ts +5 -6
- package/dist/types/components/progress-bar/progress-bar.d.ts +1 -10
- package/dist/types/components/radio/radio.d.ts +1 -2
- package/dist/types/components/radio-group/radio-group.d.ts +0 -12
- package/dist/types/components/range/range.d.ts +1 -2
- package/dist/types/components/refresher/refresher.d.ts +1 -2
- package/dist/types/components/refresher-content/refresher-content.d.ts +0 -10
- package/dist/types/components/reorder/reorder.d.ts +0 -9
- package/dist/types/components/reorder-group/reorder-group.d.ts +0 -4
- package/dist/types/components/ripple-effect/ripple-effect.d.ts +0 -4
- package/dist/types/components/route/route.d.ts +0 -4
- package/dist/types/components/router/router.d.ts +0 -4
- package/dist/types/components/router-link/router-link.d.ts +0 -4
- package/dist/types/components/router-outlet/router-outlet.d.ts +1 -4
- package/dist/types/components/row/row.d.ts +0 -4
- package/dist/types/components/searchbar/searchbar.d.ts +10 -56
- package/dist/types/components/segment/segment.d.ts +1 -2
- package/dist/types/components/segment-button/segment-button.d.ts +1 -2
- package/dist/types/components/select/select.d.ts +15 -59
- package/dist/types/components/select-modal/select-modal.d.ts +0 -13
- package/dist/types/components/select-option/select-option.d.ts +4 -7
- package/dist/types/components/select-popover/select-popover.d.ts +0 -3
- package/dist/types/components/skeleton-text/skeleton-text.d.ts +0 -4
- package/dist/types/components/spinner/spinner.d.ts +0 -15
- package/dist/types/components/split-pane/split-pane.d.ts +0 -4
- package/dist/types/components/tab/tab.d.ts +0 -4
- package/dist/types/components/tab-bar/tab-bar-interface.d.ts +0 -1
- package/dist/types/components/tab-bar/tab-bar.d.ts +3 -41
- package/dist/types/components/tab-button/tab-button.d.ts +1 -12
- package/dist/types/components/tabs/tabs.d.ts +0 -3
- package/dist/types/components/text/text.d.ts +1 -2
- package/dist/types/components/textarea/textarea.d.ts +17 -75
- package/dist/types/components/thumbnail/thumbnail.d.ts +0 -4
- package/dist/types/components/title/title.d.ts +0 -4
- package/dist/types/components/toast/animations/utils.d.ts +2 -2
- package/dist/types/components/toast/toast-interface.d.ts +7 -3
- package/dist/types/components/toast/toast.d.ts +2 -19
- package/dist/types/components/toggle/toggle.d.ts +1 -18
- package/dist/types/components/toolbar/toolbar.d.ts +3 -43
- package/dist/types/components.d.ts +213 -1874
- package/dist/types/global/ionic-global.d.ts +2 -28
- package/dist/types/interface.d.ts +0 -3
- package/dist/types/utils/config.d.ts +4 -128
- package/dist/types/utils/focus-trap.d.ts +1 -1
- package/dist/types/utils/focus-visible.d.ts +0 -33
- package/dist/types/utils/forms/click-controller.d.ts +5 -16
- package/dist/types/utils/forms/index.d.ts +0 -1
- package/dist/types/utils/forms/validity.d.ts +0 -7
- package/dist/types/utils/helpers.d.ts +0 -29
- package/dist/types/utils/overlay-control-label.d.ts +9 -11
- package/dist/types/utils/overlays-interface.d.ts +1 -31
- package/dist/types/utils/overlays.d.ts +1 -1
- package/dist/types/utils/test/playwright/drag-element.d.ts +3 -16
- package/dist/types/utils/test/playwright/generator.d.ts +2 -31
- package/dist/types/utils/test/playwright/index.d.ts +0 -1
- package/dist/types/utils/theme.d.ts +0 -9
- package/hydrate/index.js +1284 -5846
- package/hydrate/index.mjs +1284 -5846
- package/package.json +4 -7
- package/components/ion-divider.d.ts +0 -11
- package/components/ion-divider.js +0 -4
- package/components/ion-gallery-item.d.ts +0 -11
- package/components/ion-gallery-item.js +0 -4
- package/components/ion-gallery.d.ts +0 -11
- package/components/ion-gallery.js +0 -4
- package/components/p-0rXxxCTt.js +0 -4
- package/components/p-3Qs1sQxU.js +0 -4
- package/components/p-3SVb97od.js +0 -4
- package/components/p-7-zF1amS.js +0 -4
- package/components/p-AgF3xGwz.js +0 -4
- package/components/p-BHiggB_l.js +0 -4
- package/components/p-BNBa8_Ls.js +0 -4
- package/components/p-BNV7BMZo.js +0 -4
- package/components/p-BUF_V-Kg.js +0 -4
- package/components/p-BYk20Mf5.js +0 -4
- package/components/p-B_o50gvn.js +0 -4
- package/components/p-BfDzKnZ-.js +0 -4
- package/components/p-C0H1LYQ5.js +0 -4
- package/components/p-C7BPrXxF.js +0 -4
- package/components/p-C93i7QCU.js +0 -4
- package/components/p-C9qQ2zBV.js +0 -4
- package/components/p-CAekGbOf.js +0 -4
- package/components/p-CE7N7-7s.js +0 -4
- package/components/p-CL3vSQL7.js +0 -4
- package/components/p-CODBQrPj.js +0 -4
- package/components/p-CehdCO1m.js +0 -4
- package/components/p-CvxND1-3.js +0 -4
- package/components/p-CyvtM0H1.js +0 -4
- package/components/p-CzDkZh7h.js +0 -4
- package/components/p-DEh2reav.js +0 -4
- package/components/p-DFBWAYvo.js +0 -4
- package/components/p-DFjX2uxL.js +0 -4
- package/components/p-DLXAGW46.js +0 -4
- package/components/p-DQwGbYN_.js +0 -4
- package/components/p-DRpeTf7R.js +0 -4
- package/components/p-Da8LCPwo.js +0 -4
- package/components/p-DbKRl9BQ.js +0 -4
- package/components/p-DdOVnjsY.js +0 -4
- package/components/p-DibGn4gb.js +0 -4
- package/components/p-DirxxGzo.js +0 -4
- package/components/p-DmdTkb5k.js +0 -4
- package/components/p-DmhWSY74.js +0 -4
- package/components/p-DtZimz8H.js +0 -4
- package/components/p-ET0FZop5.js +0 -4
- package/components/p-LoXpKVmq.js +0 -4
- package/components/p-NZGZhPF5.js +0 -4
- package/components/p-NcQUGze-.js +0 -4
- package/components/p-PFwuhbqg.js +0 -4
- package/components/p-fU4OdAZ9.js +0 -4
- package/components/p-iNIvlAGo.js +0 -4
- package/components/p-py1vB-7U.js +0 -4
- package/components/p-qbig9BW8.js +0 -4
- package/css/ionic/bundle.ionic.css +0 -1
- package/css/ionic/bundle.ionic.css.map +0 -1
- package/css/ionic/core.ionic.css +0 -1
- package/css/ionic/core.ionic.css.map +0 -1
- package/css/ionic/global.bundle.ionic.css +0 -1
- package/css/ionic/global.bundle.ionic.css.map +0 -1
- package/css/ionic/ionic-swiper.ionic.css +0 -1
- package/css/ionic/ionic-swiper.ionic.css.map +0 -1
- package/css/ionic/link.ionic.css +0 -1
- package/css/ionic/link.ionic.css.map +0 -1
- package/css/ionic/structure.ionic.css +0 -1
- package/css/ionic/structure.ionic.css.map +0 -1
- package/css/ionic/typography.ionic.css +0 -1
- package/css/ionic/typography.ionic.css.map +0 -1
- package/css/ionic/utils.bundle.ionic.css +0 -1
- package/css/ionic/utils.bundle.ionic.css.map +0 -1
- package/dist/cjs/clear-button-press-controller-C6PTS3jC.js +0 -45
- package/dist/cjs/focus-visible-DGPRKkcx.js +0 -151
- package/dist/cjs/index-DkNv4J_i.js +0 -10
- package/dist/cjs/ion-divider.cjs.entry.js +0 -52
- package/dist/cjs/ion-gallery-item.cjs.entry.js +0 -59
- package/dist/cjs/ion-gallery.cjs.entry.js +0 -608
- package/dist/cjs/ionic-global-CZX42KL4.js +0 -551
- package/dist/cjs/scroll-hide-controller-BSVBCkbw.js +0 -345
- package/dist/cjs/validity-CoPMWggj.js +0 -51
- package/dist/collection/components/accordion/accordion.ionic.css +0 -199
- package/dist/collection/components/accordion-group/accordion-group.ionic.css +0 -93
- package/dist/collection/components/action-sheet/action-sheet.ionic.css +0 -490
- package/dist/collection/components/alert/alert.ionic.css +0 -779
- package/dist/collection/components/avatar/avatar.ionic.css +0 -379
- package/dist/collection/components/backdrop/backdrop.ionic.css +0 -109
- package/dist/collection/components/badge/badge.ionic.css +0 -269
- package/dist/collection/components/button/button.ionic.css +0 -640
- package/dist/collection/components/buttons/buttons.ionic.css +0 -97
- package/dist/collection/components/card/card.ionic.css +0 -144
- package/dist/collection/components/card-content/card-content.ionic.css +0 -88
- package/dist/collection/components/card-header/card-header.ionic.css +0 -85
- package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +0 -143
- package/dist/collection/components/checkbox/checkbox.ionic.css +0 -535
- package/dist/collection/components/chip/chip.ionic.css +0 -216
- package/dist/collection/components/content/content.ionic.css +0 -352
- package/dist/collection/components/content/content.md.css +0 -347
- package/dist/collection/components/datetime/datetime.ionic.css +0 -903
- package/dist/collection/components/divider/divider.ionic.css +0 -148
- package/dist/collection/components/divider/divider.ios.css +0 -87
- package/dist/collection/components/divider/divider.js +0 -94
- package/dist/collection/components/divider/divider.md.css +0 -87
- package/dist/collection/components/footer/footer-interface.js +0 -1
- package/dist/collection/components/gallery/gallery-constants.js +0 -12
- package/dist/collection/components/gallery/gallery-interface.js +0 -1
- package/dist/collection/components/gallery/gallery.css +0 -15
- package/dist/collection/components/gallery/gallery.js +0 -678
- package/dist/collection/components/gallery/test/utils.js +0 -100
- package/dist/collection/components/gallery-item/gallery-item.css +0 -49
- package/dist/collection/components/gallery-item/gallery-item.js +0 -98
- package/dist/collection/components/header/header-interface.js +0 -1
- package/dist/collection/components/header/header.ionic.css +0 -286
- package/dist/collection/components/input/input.ionic.css +0 -961
- package/dist/collection/components/input-otp/input-otp.ionic.css +0 -369
- package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +0 -78
- package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +0 -61
- package/dist/collection/components/item/item.ionic.css +0 -495
- package/dist/collection/components/item-option/item-option.ionic.css +0 -276
- package/dist/collection/components/item-options/item-options.ionic.css +0 -221
- package/dist/collection/components/item-sliding/item-sliding.ionic.css +0 -211
- package/dist/collection/components/list/list.ionic.css +0 -212
- package/dist/collection/components/list-header/list-header.ionic.css +0 -189
- package/dist/collection/components/menu-button/menu-button.ionic.css +0 -236
- package/dist/collection/components/modal/animations/ionic.enter.js +0 -40
- package/dist/collection/components/modal/animations/ionic.leave.js +0 -28
- package/dist/collection/components/modal/modal.ionic.css +0 -266
- package/dist/collection/components/popover/popover.ionic.css +0 -290
- package/dist/collection/components/progress-bar/progress-bar.ionic.css +0 -287
- package/dist/collection/components/radio/radio.ionic.css +0 -421
- package/dist/collection/components/radio-group/radio-group.ionic.css +0 -118
- package/dist/collection/components/range/range.ionic.css +0 -566
- package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +0 -215
- package/dist/collection/components/searchbar/searchbar.ionic.css +0 -621
- package/dist/collection/components/segment/segment.ionic.css +0 -115
- package/dist/collection/components/segment-button/segment-button.ionic.css +0 -351
- package/dist/collection/components/select/select.ionic.css +0 -976
- package/dist/collection/components/select-modal/select-modal.ionic.css +0 -254
- package/dist/collection/components/select-popover/select-popover.ionic.css +0 -253
- package/dist/collection/components/spinner/spinner.native.css +0 -199
- package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -249
- package/dist/collection/components/tab-button/tab-button.ionic.css +0 -372
- package/dist/collection/components/textarea/textarea.ionic.css +0 -989
- package/dist/collection/components/title/title.ionic.css +0 -125
- package/dist/collection/components/toast/toast.ionic.css +0 -391
- package/dist/collection/components/toggle/toggle.ionic.css +0 -510
- package/dist/collection/components/toolbar/test/image.svg +0 -1
- package/dist/collection/components/toolbar/toolbar.ionic.css +0 -249
- package/dist/collection/utils/css-value-validation.js +0 -39
- package/dist/collection/utils/forms/clear-button-press-controller.js +0 -40
- package/dist/collection/utils/scroll-hide-controller.js +0 -178
- package/dist/collection/utils/test/playwright/field-geometry.js +0 -34
- package/dist/esm/clear-button-press-controller-6ph4kKYn.js +0 -43
- package/dist/esm/focus-visible-BYk20Mf5.js +0 -146
- package/dist/esm/index-ZjP4CjeZ.js +0 -7
- package/dist/esm/ion-divider.entry.js +0 -50
- package/dist/esm/ion-gallery-item.entry.js +0 -57
- package/dist/esm/ion-gallery.entry.js +0 -606
- package/dist/esm/ionic-global-DSbFWXp3.js +0 -540
- package/dist/esm/scroll-hide-controller-Chts2wJU.js +0 -342
- package/dist/esm/validity-NcQUGze-.js +0 -48
- package/dist/ionic/p-038465e3.entry.js +0 -4
- package/dist/ionic/p-0b453760.entry.js +0 -4
- package/dist/ionic/p-0bd5a7c9.entry.js +0 -4
- package/dist/ionic/p-188a2e35.entry.js +0 -4
- package/dist/ionic/p-1b045882.entry.js +0 -4
- package/dist/ionic/p-1b769779.entry.js +0 -4
- package/dist/ionic/p-1d709b26.entry.js +0 -4
- package/dist/ionic/p-1d735170.entry.js +0 -4
- package/dist/ionic/p-1d87b153.entry.js +0 -4
- package/dist/ionic/p-2b1e9500.entry.js +0 -4
- package/dist/ionic/p-2gcJ-f11.js +0 -4
- package/dist/ionic/p-308f9b89.entry.js +0 -4
- package/dist/ionic/p-338cb1e7.entry.js +0 -4
- package/dist/ionic/p-39e3be74.entry.js +0 -4
- package/dist/ionic/p-3a03d05e.entry.js +0 -4
- package/dist/ionic/p-3a54495e.entry.js +0 -4
- package/dist/ionic/p-3b47fdc7.entry.js +0 -4
- package/dist/ionic/p-3be131ed.entry.js +0 -4
- package/dist/ionic/p-3ddd32cc.entry.js +0 -4
- package/dist/ionic/p-3f15086f.entry.js +0 -4
- package/dist/ionic/p-4152cb6a.entry.js +0 -4
- package/dist/ionic/p-49edfb46.entry.js +0 -4
- package/dist/ionic/p-522663a4.entry.js +0 -4
- package/dist/ionic/p-561cfcc1.entry.js +0 -4
- package/dist/ionic/p-6dc9331b.entry.js +0 -4
- package/dist/ionic/p-6e4ee264.entry.js +0 -4
- package/dist/ionic/p-7df4dcb4.entry.js +0 -4
- package/dist/ionic/p-8183df6b.entry.js +0 -4
- package/dist/ionic/p-82efbf09.entry.js +0 -4
- package/dist/ionic/p-86bf24f4.entry.js +0 -4
- package/dist/ionic/p-8b107444.entry.js +0 -4
- package/dist/ionic/p-8ecb459a.entry.js +0 -4
- package/dist/ionic/p-8ff4bf6c.entry.js +0 -4
- package/dist/ionic/p-905c8b38.entry.js +0 -4
- package/dist/ionic/p-9613f2c3.entry.js +0 -4
- package/dist/ionic/p-973f8069.entry.js +0 -4
- package/dist/ionic/p-9b41acf3.entry.js +0 -4
- package/dist/ionic/p-B36ii-hs.js +0 -4
- package/dist/ionic/p-BKwe4f9b.js +0 -4
- package/dist/ionic/p-BUF_V-Kg.js +0 -4
- package/dist/ionic/p-BXRdzJMJ.js +0 -4
- package/dist/ionic/p-BYk20Mf5.js +0 -4
- package/dist/ionic/p-BfDzKnZ-.js +0 -4
- package/dist/ionic/p-BfUzA1cP.js +0 -4
- package/dist/ionic/p-BkJpfpXI.js +0 -4
- package/dist/ionic/p-C3TLUO-J.js +0 -4
- package/dist/ionic/p-C4WiowQL.js +0 -4
- package/dist/ionic/p-CIGNaXM1.js +0 -4
- package/dist/ionic/p-CODBQrPj.js +0 -4
- package/dist/ionic/p-CXkgZKSx.js +0 -4
- package/dist/ionic/p-Co3ilg7B.js +0 -4
- package/dist/ionic/p-D5t_-oMk.js +0 -4
- package/dist/ionic/p-D7LiFzrm.js +0 -4
- package/dist/ionic/p-DOdxt_P_.js +0 -4
- package/dist/ionic/p-DRbid4Vh.js +0 -4
- package/dist/ionic/p-DsBidY1y.js +0 -4
- package/dist/ionic/p-DxPRC9Jk.js +0 -4
- package/dist/ionic/p-Hb0L-KUN.js +0 -4
- package/dist/ionic/p-NcQUGze-.js +0 -4
- package/dist/ionic/p-WdouEyt8.js +0 -4
- package/dist/ionic/p-ZjP4CjeZ.js +0 -4
- package/dist/ionic/p-a1555032.entry.js +0 -4
- package/dist/ionic/p-a4299509.entry.js +0 -4
- package/dist/ionic/p-b076511a.entry.js +0 -4
- package/dist/ionic/p-b1cd18f0.entry.js +0 -4
- package/dist/ionic/p-b4de840a.entry.js +0 -4
- package/dist/ionic/p-b51eb274.entry.js +0 -4
- package/dist/ionic/p-b6e633f5.entry.js +0 -4
- package/dist/ionic/p-bf40b9eb.entry.js +0 -4
- package/dist/ionic/p-c1fc48c7.entry.js +0 -4
- package/dist/ionic/p-ce8bea16.entry.js +0 -4
- package/dist/ionic/p-ceca04fb.entry.js +0 -4
- package/dist/ionic/p-dbf53341.entry.js +0 -4
- package/dist/ionic/p-de0de6a6.entry.js +0 -4
- package/dist/ionic/p-e715a580.entry.js +0 -4
- package/dist/ionic/p-ec99dc1f.entry.js +0 -4
- package/dist/ionic/p-f10a94a8.entry.js +0 -4
- package/dist/ionic/p-f3057b31.entry.js +0 -4
- package/dist/ionic/p-fa74dd94.entry.js +0 -4
- package/dist/ionic/p-fd00e28d.entry.js +0 -4
- package/dist/ionic/p-hR6kxzTq.js +0 -6
- package/dist/ionic/p-pVSZ4TVa.js +0 -4
- package/dist/types/components/divider/divider.d.ts +0 -20
- package/dist/types/components/footer/footer-interface.d.ts +0 -1
- package/dist/types/components/gallery/gallery-constants.d.ts +0 -9
- package/dist/types/components/gallery/gallery-interface.d.ts +0 -10
- package/dist/types/components/gallery/gallery.d.ts +0 -218
- package/dist/types/components/gallery/test/utils.d.ts +0 -3
- package/dist/types/components/gallery-item/gallery-item.d.ts +0 -33
- package/dist/types/components/header/header-interface.d.ts +0 -1
- package/dist/types/components/modal/animations/ionic.enter.d.ts +0 -6
- package/dist/types/components/modal/animations/ionic.leave.d.ts +0 -6
- package/dist/types/utils/css-value-validation.d.ts +0 -21
- package/dist/types/utils/forms/clear-button-press-controller.d.ts +0 -20
- package/dist/types/utils/scroll-hide-controller.d.ts +0 -56
- package/dist/types/utils/test/playwright/field-geometry.d.ts +0 -13
- /package/dist/collection/components/{refresher-content/refresher-content.css → input-password-toggle/input-password-toggle.css} +0 -0
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { c as printIonError, a as printIonWarning, r as registerInstance, d as createEvent, w as writeTask, i as config, h, f as Host, g as getElement } from './index-
|
|
5
|
-
import { startFocusVisible } from './focus-visible-
|
|
6
|
-
import { r as raf, g as getElementRoot, a as renderHiddenInput } from './helpers-
|
|
7
|
-
import { F as FOCUS_TRAP_DISABLE_CLASS } from './overlays-
|
|
4
|
+
import { c as printIonError, a as printIonWarning, r as registerInstance, d as createEvent, w as writeTask, i as config, h, f as Host, g as getElement } from './index-BpRUsN_W.js';
|
|
5
|
+
import { startFocusVisible } from './focus-visible-BmVRXR1y.js';
|
|
6
|
+
import { r as raf, g as getElementRoot, a as renderHiddenInput } from './helpers-p94IkmEA.js';
|
|
7
|
+
import { F as FOCUS_TRAP_DISABLE_CLASS } from './overlays-BBgMM61s.js';
|
|
8
8
|
import { i as isRTL } from './dir-Dj4J3LkD.js';
|
|
9
|
-
import { c as createColorClasses } from './theme-
|
|
10
|
-
import { b as
|
|
11
|
-
import { b as getIonMode
|
|
12
|
-
import { r as removeDateTzOffset, g as getNextMonth, a as getPreviousMonth, b as getTodayLabel, c as getYear, d as getHourCycle, e as getInternalHourValue, f as getFormattedHour, h as addTimePadding, i as getLocalizedDayPeriod, j as isBefore, k as isSameDay, l as isAfter, m as is24Hour, n as getNumDaysInMonth, o as getDay, p as generateDayAriaLabel,
|
|
13
|
-
import './
|
|
14
|
-
import './framework-delegate-99Ms_INy.js';
|
|
9
|
+
import { c as createColorClasses } from './theme-byZM6qHV.js';
|
|
10
|
+
import { b as chevronDown, d as caretUpSharp, e as chevronForward, f as caretDownSharp, c as chevronBack } from './index-BvabGprD.js';
|
|
11
|
+
import { b as getIonMode } from './ionic-global-Cep6oYzK.js';
|
|
12
|
+
import { r as removeDateTzOffset, g as getNextMonth, a as getPreviousMonth, b as getTodayLabel, c as getYear, d as getHourCycle, e as getInternalHourValue, f as getFormattedHour, h as addTimePadding, i as getLocalizedDayPeriod, j as isBefore, k as isSameDay, l as isAfter, m as is24Hour, n as getNumDaysInMonth, o as getDay, p as generateDayAriaLabel, v as validateParts, q as getPartsFromCalendarDay, s as getNextYear, t as getPreviousYear, u as getEndOfWeek, w as getStartOfWeek, x as getPreviousDay, y as getNextDay, z as getPreviousWeek, A as getNextWeek, B as parseMinParts, C as parseMaxParts, D as parseDate, E as warnIfValueOutOfBounds, F as parseAmPm, G as clampDate, H as convertToArrayOfNumbers, I as convertDataToISO, J as getClosestValidDate, K as isMonthFirstLocale, L as isLocaleDayPeriodRTL, M as calculateHourFromAMPM, N as getMonthAndYear, O as getLocalizedTime, P as getLocalizedDateTime, Q as formatValue } from './format-Ck1cw5z7.js';
|
|
13
|
+
import './framework-delegate-CW5_kWfc.js';
|
|
15
14
|
import './gesture-controller-B_gJaBk0.js';
|
|
16
15
|
|
|
17
16
|
/**
|
|
@@ -52,20 +51,20 @@ const hour23 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
|
|
|
52
51
|
// h24 hour system uses 1-24. Midnight starts at 24:00.
|
|
53
52
|
const hour24 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 0];
|
|
54
53
|
/**
|
|
55
|
-
* Given a locale and a
|
|
54
|
+
* Given a locale and a mode,
|
|
56
55
|
* return an array with formatted days
|
|
57
|
-
* of the week. iOS
|
|
58
|
-
*
|
|
56
|
+
* of the week. iOS should display days
|
|
57
|
+
* such as "Mon" or "Tue".
|
|
59
58
|
* MD should display days such as "M"
|
|
60
59
|
* or "T".
|
|
61
60
|
*/
|
|
62
|
-
const getDaysOfWeek = (locale,
|
|
61
|
+
const getDaysOfWeek = (locale, mode, firstDayOfWeek = 0) => {
|
|
63
62
|
/**
|
|
64
63
|
* Nov 1st, 2020 starts on a Sunday.
|
|
65
64
|
* ion-datetime assumes weeks start on Sunday,
|
|
66
65
|
* but is configurable via `firstDayOfWeek`.
|
|
67
66
|
*/
|
|
68
|
-
const weekdayFormat =
|
|
67
|
+
const weekdayFormat = mode === 'ios' ? 'short' : 'narrow';
|
|
69
68
|
const intl = new Intl.DateTimeFormat(locale, { weekday: weekdayFormat });
|
|
70
69
|
const startDate = new Date('11/01/2020');
|
|
71
70
|
const daysOfWeek = [];
|
|
@@ -605,7 +604,7 @@ const isDayDisabled = (refParts, minParts, maxParts, dayValues) => {
|
|
|
605
604
|
* Given a locale, a date, the selected date(s), and today's date,
|
|
606
605
|
* generate the state for a given calendar day button.
|
|
607
606
|
*/
|
|
608
|
-
const getCalendarDayState = (locale, refParts, activeParts, todayParts, minParts, maxParts, dayValues
|
|
607
|
+
const getCalendarDayState = (locale, refParts, activeParts, todayParts, minParts, maxParts, dayValues) => {
|
|
609
608
|
/**
|
|
610
609
|
* activeParts signals what day(s) are currently selected in the datetime.
|
|
611
610
|
* If multiple="true", this will be an array, but the logic in this util
|
|
@@ -621,20 +620,6 @@ const getCalendarDayState = (locale, refParts, activeParts, todayParts, minParts
|
|
|
621
620
|
const isActive = activePartsArray.find((parts) => isSameDay(refParts, parts)) !== undefined;
|
|
622
621
|
const isToday = isSameDay(refParts, todayParts);
|
|
623
622
|
const disabled = isDayDisabled(refParts, minParts, maxParts, dayValues);
|
|
624
|
-
/**
|
|
625
|
-
* Range state: determine if this day is the range start, end, or in between.
|
|
626
|
-
*/
|
|
627
|
-
let isRangeStart = false;
|
|
628
|
-
let isRangeEnd = false;
|
|
629
|
-
let isInRange = false;
|
|
630
|
-
if (rangeParts) {
|
|
631
|
-
const { start, end } = rangeParts;
|
|
632
|
-
isRangeStart = isSameDay(refParts, start);
|
|
633
|
-
if (end) {
|
|
634
|
-
isRangeEnd = isSameDay(refParts, end);
|
|
635
|
-
isInRange = !disabled && !isRangeStart && !isRangeEnd && isAfter(refParts, start) && isBefore(refParts, end);
|
|
636
|
-
}
|
|
637
|
-
}
|
|
638
623
|
/**
|
|
639
624
|
* Note that we always return one object regardless of whether activeParts
|
|
640
625
|
* was an array, since we pare down to one value for isActive.
|
|
@@ -643,9 +628,6 @@ const getCalendarDayState = (locale, refParts, activeParts, todayParts, minParts
|
|
|
643
628
|
disabled,
|
|
644
629
|
isActive,
|
|
645
630
|
isToday,
|
|
646
|
-
isRangeStart,
|
|
647
|
-
isRangeEnd,
|
|
648
|
-
isInRange,
|
|
649
631
|
ariaSelected: isActive ? 'true' : null,
|
|
650
632
|
ariaLabel: generateDayAriaLabel(locale, isToday, refParts),
|
|
651
633
|
text: refParts.day != null ? getDay(locale, refParts) : null,
|
|
@@ -768,11 +750,9 @@ const checkForPresentationFormatMismatch = (el, presentation, formatOptions) =>
|
|
|
768
750
|
}
|
|
769
751
|
};
|
|
770
752
|
|
|
771
|
-
const datetimeIonicCss = () => `:host{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;background:var(--background);overflow:hidden}:host(.datetime-size-fixed){width:auto;height:auto}:host(.datetime-size-cover){width:100%}:host(:not(.datetime-ready)) .datetime-year{position:absolute;pointer-events:none}:host(.datetime-ready) .datetime-year{display:none}:host .wheel-order-year-first .day-column{-ms-flex-order:3;order:3;text-align:end}:host .wheel-order-year-first .month-column{-ms-flex-order:2;order:2;text-align:end}:host .wheel-order-year-first .year-column{-ms-flex-order:1;order:1;text-align:start}:host .datetime-calendar,:host .datetime-year{display:-ms-flexbox;display:flex;-ms-flex:1 1 auto;flex:1 1 auto;-ms-flex-flow:column;flex-flow:column}:host(.show-month-and-year) .datetime-year{display:-ms-flexbox;display:flex}:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{display:none}:host(.month-year-picker-open) .datetime-footer{display:none}:host(.datetime-disabled){pointer-events:none}:host(.datetime-disabled) .calendar-days-of-week,:host(.datetime-disabled) .datetime-time{opacity:0.4}:host(.datetime-readonly){pointer-events:none;}:host(.datetime-readonly) .calendar-action-buttons,:host(.datetime-readonly) .calendar-body,:host(.datetime-readonly) .datetime-year{pointer-events:initial}:host(.datetime-readonly) .calendar-day[disabled]:not(.calendar-day-constrained),:host(.datetime-readonly) .datetime-action-buttons ion-button[disabled]{opacity:1}:host .datetime-header .datetime-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host .datetime-action-buttons.has-clear-button{width:100%}:host .datetime-action-buttons,::slotted([slot=buttons]),.datetime-action-buttons .datetime-action-buttons-container{display:-ms-flexbox;display:flex}:host .calendar-action-buttons{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host .calendar-days-of-week{display:grid;grid-template-columns:repeat(7, 1fr);text-align:center}.calendar-days-of-week .day-of-week{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0}:host .calendar-body{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-webkit-scroll-snap-type:x mandatory;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory;overflow-x:scroll;overflow-y:hidden;scrollbar-width:none;outline:none}:host .calendar-body .calendar-month{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;scroll-snap-align:start;scroll-snap-stop:always;-ms-flex-negative:0;flex-shrink:0;width:100%}:host .calendar-body .calendar-month-disabled{scroll-snap-align:none}:host .calendar-body::-webkit-scrollbar{display:none}:host .calendar-body .calendar-month-grid{display:grid;grid-template-columns:repeat(7, 1fr)}:host .calendar-day-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;min-width:0;min-height:0;overflow:visible;z-index:0}:host .calendar-day-wrapper:focus-within{z-index:1}.datetime-range-announcement{-webkit-margin-start:-1px;margin-inline-start:-1px;-webkit-margin-end:-1px;margin-inline-end:-1px;margin-top:-1px;margin-bottom:-1px;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;position:absolute;width:1px;height:1px;border:0;white-space:nowrap;overflow:hidden;clip:rect(0, 0, 0, 0)}:host .calendar-day-wrapper-in-range::before,:host .calendar-day-wrapper-range-start::before,:host .calendar-day-wrapper-range-end::before{position:absolute;top:50%;inset-inline-start:0;inset-inline-end:0;height:var(--range-track-height);-webkit-transform:translateY(-50%);transform:translateY(-50%);background:-webkit-gradient(linear, left top, left bottom, from(var(--range-background)), to(var(--range-background))), -webkit-gradient(linear, left top, left bottom, from(var(--background)), to(var(--background)));background:linear-gradient(var(--range-background), var(--range-background)), linear-gradient(var(--background), var(--background));content:"";z-index:-1}:host .calendar-day-wrapper-range-start::before{inset-inline-start:50%}:host .calendar-day-wrapper-range-end::before{inset-inline-end:50%}:host .calendar-day-wrapper-in-range:not(:nth-child(7n)):has(+.calendar-day-wrapper-in-range)::before,:host .calendar-day-wrapper-in-range:not(:nth-child(7n)):has(+.calendar-day-wrapper-range-end)::before,:host .calendar-day-wrapper-range-start:not(:nth-child(7n)):has(+.calendar-day-wrapper-in-range)::before,:host .calendar-day-wrapper-range-start:not(:nth-child(7n)):has(+.calendar-day-wrapper-range-end)::before{inset-inline-end:-1px}:host .calendar-day-wrapper-in-range:nth-child(7n)::before,:host .calendar-day-wrapper-range-start:nth-child(7n)::before{inset-inline-end:calc(var(--range-track-edge-overflow, 0px) * -1)}:host .calendar-day-wrapper-in-range:nth-child(7n+1)::before,:host .calendar-day-wrapper-range-end:nth-child(7n+1)::before{inset-inline-start:calc(var(--range-track-edge-overflow, 0px) * -1)}:host .calendar-day-wrapper-range-start.calendar-day-wrapper-range-end::before{display:none}:host(.datetime-disabled.datetime-range) .calendar-month-grid{opacity:0.4}:host(.datetime-disabled.datetime-range) .calendar-month-grid .calendar-day[disabled]{opacity:1}.calendar-day{-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px;padding-top:0px;padding-bottom:0px;-webkit-margin-start:0px;margin-inline-start:0px;-webkit-margin-end:0px;margin-inline-end:0px;margin-top:0px;margin-bottom:0px;display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;border:none;outline:none;background:none;color:currentColor;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;z-index:0}.calendar-day[disabled]{pointer-events:none}:host .datetime-time{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host .time-header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host .time-body{display:-ms-flexbox;display:flex;border:none;font-family:inherit;font-size:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}:host(.in-item){position:static}.calendar-month-year{min-width:0}.calendar-month-year-toggle{color:inherit;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-align:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;white-space:inherit;position:relative;border:0;outline:none;background:transparent;cursor:pointer;z-index:1}.calendar-month-year-toggle ion-icon{-ms-flex-negative:0;flex-shrink:0}.calendar-month-year-toggle #toggle-wrapper{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center}:host{--background:var(--token-bg-surface-default, var(--token-primitives-base-white, #ffffff));--focus-ring-color:var(--token-border-focus-default, var(--token-semantics-primary-400, var(--token-primitives-blue-400, #b5c0f7)));--focus-ring-width:var(--token-border-size-050, var(--token-scale-050, 2px));--body-opacity:0;--year-opacity:0}:host .calendar-body{opacity:var(--body-opacity)}:host .datetime-year{opacity:var(--year-opacity)}:host(.datetime-ready) .calendar-body{--body-opacity:1}:host(.datetime-ready) .datetime-year{--year-opacity:1}:host .datetime-header{-webkit-padding-start:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-start:var(--token-space-400, var(--token-scale-400, 16px));-webkit-padding-end:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-end:var(--token-space-400, var(--token-scale-400, 16px));padding-top:var(--token-space-200, var(--token-scale-200, 8px));padding-bottom:var(--token-space-400, var(--token-scale-400, 16px));display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:start;-ms-flex-pack:justify;justify-content:space-between;height:var(--token-scale-1400, 56px);margin-bottom:var(--token-space-200, var(--token-scale-200, 8px));border-bottom:solid var(--token-border-size-025, var(--token-scale-025, 1px)) var(--token-primitives-neutral-400, #d0d7df)}:host .datetime-header .datetime-title{font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-450, 1.125rem);font-weight:var(--token-font-weight-medium, 500);letter-spacing:var(--token-font-letter-spacing-0, 0);line-height:1.555556;color:var(--token-primitives-neutral-800, #6c727a)}:host .datetime-header .datetime-selected-date{font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-350, 0.875rem);font-weight:var(--token-font-weight-regular, 400);letter-spacing:var(--token-font-letter-spacing-0, 0);line-height:1.714286;color:var(--token-primitives-neutral-1000, #383e45)}.calendar-action-buttons{padding-top:var(--token-space-200, var(--token-scale-200, 8px));padding-bottom:var(--token-space-200, var(--token-scale-200, 8px));-ms-flex-align:center;align-items:center;height:var(--token-scale-1400, 56px);-webkit-box-sizing:border-box;box-sizing:border-box}.calendar-month-year{-ms-flex:1 0 0px;flex:1 0 0}.calendar-month-year-toggle{border-radius:var(--token-border-radius-full, 999px);font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-400, 1rem);font-weight:var(--token-font-weight-medium, 500);letter-spacing:var(--token-font-letter-spacing-100, 0.01em);line-height:1.5;-webkit-padding-start:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-start:var(--token-space-400, var(--token-scale-400, 16px));-webkit-padding-end:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-end:var(--token-space-400, var(--token-scale-400, 16px));padding-top:var(--token-space-200, var(--token-scale-200, 8px));padding-bottom:var(--token-space-200, var(--token-scale-200, 8px));min-width:var(--token-scale-1600, 64px);min-height:var(--token-scale-1000, 40px);border:var(--focus-ring-width) solid transparent;color:var(--token-semantics-primary-base, var(--token-semantics-primary-700, var(--token-primitives-blue-700, #105cef)))}@media (any-hover: hover){.calendar-month-year-toggle:hover{background:var(--token-primitives-neutral-200, #ebeef2)}}.calendar-month-year-toggle.ion-focused{border-color:var(--focus-ring-color)}.calendar-month-year-toggle.ion-activated{background:var(--token-primitives-neutral-200, #ebeef2)}.calendar-next-prev ion-button.button-has-icon-only{--color:var(--token-primitives-neutral-1000, #383e45);--background-activated:var(--token-primitives-neutral-200, #ebeef2);--background-hover:var(--token-primitives-neutral-200, #ebeef2);--background-hover-opacity:1;min-height:var(--token-scale-1000, 40px)}.calendar-next-prev ion-button.button-has-icon-only.ion-focused::part(native){border:var(--token-border-size-050, var(--token-scale-050, 2px)) solid var(--token-border-focus-default, var(--token-semantics-primary-400, var(--token-primitives-blue-400, #b5c0f7)));outline:none}.calendar-days-of-week{font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-300, 0.75rem);font-weight:var(--token-font-weight-medium, 500);letter-spacing:var(--token-font-letter-spacing-150, 0.015em);line-height:1.666667;text-transform:uppercase;-ms-flex-line-pack:center;align-content:center;height:var(--token-scale-1200, 48px);color:var(--token-primitives-neutral-800, #6c727a)}.calendar-day{border-radius:var(--token-border-radius-full, 999px);-webkit-padding-start:var(--token-space-100, var(--token-scale-100, 4px));padding-inline-start:var(--token-space-100, var(--token-scale-100, 4px));-webkit-padding-end:var(--token-space-100, var(--token-scale-100, 4px));padding-inline-end:var(--token-space-100, var(--token-scale-100, 4px));padding-top:var(--token-space-100, var(--token-scale-100, 4px));padding-bottom:var(--token-space-100, var(--token-scale-100, 4px));font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-350, 0.875rem);font-weight:var(--token-font-weight-medium, 500);letter-spacing:var(--token-font-letter-spacing-100, 0.01em);line-height:1.428571;width:var(--token-scale-1200, 48px);min-width:var(--token-scale-1200, 48px);height:var(--token-scale-1200, 48px);color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528))}.calendar-day[disabled]:not(.calendar-day-constrained){color:var(--token-text-disabled, var(--token-primitives-neutral-500, #9fa5ad))}.calendar-day.calendar-day-today{color:var(--token-text-select, var(--token-semantics-primary-700, var(--token-primitives-blue-700, #105cef)))}.calendar-day.calendar-day-active,.calendar-day.calendar-day-active.calendar-day-adjacent-day{background:var(--token-bg-primary-subtle-default, var(--token-semantics-primary-100, var(--token-primitives-blue-100, #f0f2ff)))}.calendar-day:focus-visible{border:var(--focus-ring-width) solid var(--focus-ring-color)}@media (any-hover: hover){.calendar-day:not([disabled]):not(:active):not(.calendar-day-in-range):hover{background:var(--token-semantics-primary-200, var(--token-primitives-blue-200, #e4e8ff))}}.calendar-day:active,.calendar-day.calendar-day-adjacent-day:active{background:var(--token-bg-primary-subtle-press, var(--token-semantics-primary-300, var(--token-primitives-blue-300, #d0d7fa)))}.calendar-day.calendar-day-adjacent-day{color:var(--token-text-subtlest, var(--token-primitives-neutral-800, #6c727a))}.calendar-day.calendar-day-active.calendar-day-adjacent-day{color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528))}:host{--range-background:var(--token-bg-primary-subtle-default, var(--token-semantics-primary-100, var(--token-primitives-blue-100, #f0f2ff)));--range-track-height:var(--token-scale-1200, 48px)}:host .calendar-day.calendar-day-range-start,:host .calendar-day.calendar-day-range-end{border-radius:var(--token-border-radius-full, 999px);background:var(--token-bg-primary-base-default, var(--token-semantics-primary-base, var(--token-semantics-primary-700, var(--token-primitives-blue-700, #105cef))));color:var(--token-text-inverse, var(--token-primitives-base-white, #ffffff))}.calendar-day.calendar-day-in-range{border-radius:0;background:none;color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528))}.calendar-day.calendar-day-today.calendar-day-in-range{color:var(--token-text-select, var(--token-semantics-primary-700, var(--token-primitives-blue-700, #105cef)))}:host .calendar-day.calendar-day-today.calendar-day-range-start,:host .calendar-day.calendar-day-today.calendar-day-range-end{color:var(--token-text-inverse, var(--token-primitives-base-white, #ffffff))}@media (any-hover: hover){.calendar-day.calendar-day-range-start:not([disabled]):not(:active):hover,.calendar-day.calendar-day-range-end:not([disabled]):not(:active):hover{background:var(--token-bg-primary-base-press, var(--token-semantics-primary-900, var(--token-primitives-blue-900, #0d4bc3)))}}.calendar-day.calendar-day-range-start:active,.calendar-day.calendar-day-range-end:active{background:var(--token-bg-primary-base-press, var(--token-semantics-primary-900, var(--token-primitives-blue-900, #0d4bc3)))}.calendar-day.calendar-day-in-range:active{background:var(--token-bg-primary-subtle-press, var(--token-semantics-primary-300, var(--token-primitives-blue-300, #d0d7fa)))}:host(.datetime-disabled.datetime-range) .calendar-day[disabled]:not(.calendar-day-constrained){color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528))}:host(.datetime-disabled.datetime-range) .calendar-day.calendar-day-adjacent-day[disabled]{color:var(--token-text-subtlest, var(--token-primitives-neutral-800, #6c727a))}:host(.datetime-disabled.datetime-range) .calendar-day.calendar-day-today[disabled]{color:var(--token-text-select, var(--token-semantics-primary-700, var(--token-primitives-blue-700, #105cef)))}:host(.datetime-disabled.datetime-range) .calendar-day.calendar-day-range-start[disabled],:host(.datetime-disabled.datetime-range) .calendar-day.calendar-day-range-end[disabled]{color:var(--token-text-inverse, var(--token-primitives-base-white, #ffffff))}:host(.datetime-readonly) .calendar-day.calendar-day-range-start[disabled],:host(.datetime-readonly) .calendar-day.calendar-day-range-end[disabled]{color:var(--token-text-inverse, var(--token-primitives-base-white, #ffffff))}:host(.datetime-readonly) .calendar-day.calendar-day-in-range[disabled]{color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528))}:host(.datetime-readonly) .calendar-day.calendar-day-today.calendar-day-in-range[disabled]{color:var(--token-text-select, var(--token-semantics-primary-700, var(--token-primitives-blue-700, #105cef)))}:host(.datetime-readonly) .calendar-day.calendar-day-today.calendar-day-range-start[disabled],:host(.datetime-readonly) .calendar-day.calendar-day-today.calendar-day-range-end[disabled]{color:var(--token-text-inverse, var(--token-primitives-base-white, #ffffff))}:host .datetime-time{-webkit-padding-start:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-start:var(--token-space-400, var(--token-scale-400, 16px));-webkit-padding-end:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-end:var(--token-space-400, var(--token-scale-400, 16px));padding-top:var(--token-space-100, var(--token-scale-100, 4px));padding-bottom:var(--token-space-100, var(--token-scale-100, 4px))}:host .datetime-time .time-header{font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-400, 1rem);font-weight:var(--token-font-weight-medium, 500);letter-spacing:var(--token-font-letter-spacing-100, 0.01em);line-height:1.5;color:var(--token-primitives-neutral-800, #6c727a)}:host .datetime-time button{-webkit-padding-start:var(--token-space-200, var(--token-scale-200, 8px));padding-inline-start:var(--token-space-200, var(--token-scale-200, 8px));-webkit-padding-end:var(--token-space-200, var(--token-scale-200, 8px));padding-inline-end:var(--token-space-200, var(--token-scale-200, 8px));padding-top:var(--token-space-0, var(--token-scale-0, 0px));padding-bottom:var(--token-space-0, var(--token-scale-0, 0px));font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-350, 0.875rem);font-weight:var(--token-font-weight-medium, 500);letter-spacing:var(--token-font-letter-spacing-0, 0);line-height:1.714286;border-radius:var(--token-border-radius-full, 999px);display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:var(--token-scale-800, 32px);background-color:var(--token-primitives-neutral-100, #f6f7fa);color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528))}:host .datetime-footer{padding-left:0;padding-right:0;padding-top:var(--token-space-200, var(--token-scale-200, 8px));padding-bottom:0;margin-left:0;margin-right:0;margin-top:var(--token-space-200, var(--token-scale-200, 8px));margin-bottom:0;border-left:0;border-right:0;border-top:solid var(--token-border-size-025, var(--token-scale-025, 1px)) var(--token-primitives-neutral-400, #d0d7df);border-bottom:0}:host .datetime-buttons .datetime-action-buttons,.datetime-action-buttons .datetime-action-buttons-container,::slotted([slot=buttons]){-ms-flex-flow:column;flex-flow:column;-ms-flex-align:stretch;align-items:stretch;gap:var(--token-space-200, var(--token-scale-200, 8px))}`;
|
|
753
|
+
const datetimeIosCss = () => `:host{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;background:var(--background);overflow:hidden}:host(.datetime-size-fixed){width:auto;height:auto}:host(.datetime-size-fixed:not(.datetime-prefer-wheel)){max-width:350px}:host(.datetime-size-fixed.datetime-prefer-wheel){min-width:350px;max-width:-webkit-max-content;max-width:-moz-max-content;max-width:max-content}:host(.datetime-size-cover){width:100%}:host .calendar-body,:host .datetime-year{opacity:0}:host(:not(.datetime-ready)) .datetime-year{position:absolute;pointer-events:none}:host(.datetime-ready) .calendar-body{opacity:1}:host(.datetime-ready) .datetime-year{display:none;opacity:1}:host .wheel-order-year-first .day-column{-ms-flex-order:3;order:3;text-align:end}:host .wheel-order-year-first .month-column{-ms-flex-order:2;order:2;text-align:end}:host .wheel-order-year-first .year-column{-ms-flex-order:1;order:1;text-align:start}:host .datetime-calendar,:host .datetime-year{display:-ms-flexbox;display:flex;-ms-flex:1 1 auto;flex:1 1 auto;-ms-flex-flow:column;flex-flow:column}:host(.show-month-and-year) .datetime-year{display:-ms-flexbox;display:flex}:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{display:none}:host(.month-year-picker-open) .datetime-footer{display:none}:host(.datetime-disabled){pointer-events:none}:host(.datetime-disabled) .calendar-days-of-week,:host(.datetime-disabled) .datetime-time{opacity:0.4}:host(.datetime-readonly){pointer-events:none;}:host(.datetime-readonly) .calendar-action-buttons,:host(.datetime-readonly) .calendar-body,:host(.datetime-readonly) .datetime-year{pointer-events:initial}:host(.datetime-readonly) .calendar-day[disabled]:not(.calendar-day-constrained),:host(.datetime-readonly) .datetime-action-buttons ion-button[disabled]{opacity:1}:host .datetime-header .datetime-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host .datetime-action-buttons.has-clear-button{width:100%}:host .datetime-action-buttons ion-buttons{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host .datetime-action-buttons ion-button{--color:var(--ion-color-primary, #0054e9)}.datetime-action-buttons .datetime-action-buttons-container{display:-ms-flexbox;display:flex}:host .calendar-action-buttons{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host .calendar-action-buttons ion-button{--background:transparent}:host .calendar-days-of-week{display:grid;grid-template-columns:repeat(7, 1fr);text-align:center}.calendar-days-of-week .day-of-week{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0}:host .calendar-body{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-webkit-scroll-snap-type:x mandatory;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory;overflow-x:scroll;overflow-y:hidden;scrollbar-width:none;outline:none}:host .calendar-body .calendar-month{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;scroll-snap-align:start;scroll-snap-stop:always;-ms-flex-negative:0;flex-shrink:0;width:100%}:host .calendar-body .calendar-month-disabled{scroll-snap-align:none}:host .calendar-body::-webkit-scrollbar{display:none}:host .calendar-body .calendar-month-grid{display:grid;grid-template-columns:repeat(7, 1fr)}:host .calendar-day-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;min-width:0;min-height:0;overflow:visible}.calendar-day{border-radius:50%;-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px;padding-top:0px;padding-bottom:0px;-webkit-margin-start:0px;margin-inline-start:0px;-webkit-margin-end:0px;margin-inline-end:0px;margin-top:0px;margin-bottom:0px;display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;border:none;outline:none;background:none;color:currentColor;font-family:var(--ion-font-family, inherit);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;z-index:0}:host .calendar-day[disabled]{pointer-events:none;opacity:0.4}.calendar-day:not(.calendar-day-adjacent-day):focus{background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);-webkit-box-shadow:0px 0px 0px 4px rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);box-shadow:0px 0px 0px 4px rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2)}:host(.ion-color) .calendar-day:not(.calendar-day-adjacent-day):focus{background:rgba(var(--ion-color-base-rgb), 0.2);-webkit-box-shadow:0px 0px 0px 4px rgba(var(--ion-color-base-rgb), 0.2);box-shadow:0px 0px 0px 4px rgba(var(--ion-color-base-rgb), 0.2)}:host .datetime-time{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host(.datetime-presentation-time) .datetime-time{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}:host ion-popover{--height:200px}:host .time-header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host .time-body{border-radius:8px;-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:12px;padding-inline-end:12px;padding-top:6px;padding-bottom:6px;display:-ms-flexbox;display:flex;border:none;background:var(--ion-color-step-300, var(--ion-background-color-step-300, #edeef0));color:var(--ion-text-color, #000);font-family:inherit;font-size:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}:host .time-body-active{color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .time-body-active{color:var(--ion-color-base)}:host(.in-item){position:static}:host(.show-month-and-year) .calendar-action-buttons .calendar-month-year-toggle{color:var(--ion-color-primary, #0054e9)}:host(.ion-color.show-month-and-year) .calendar-action-buttons .calendar-month-year-toggle{color:var(--ion-color-base)}.calendar-month-year{min-width:0}.calendar-month-year-toggle{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;position:relative;border:0;outline:none;background:transparent;cursor:pointer;z-index:1}.calendar-month-year-toggle::after{left:0;right:0;top:0;bottom:0;position:absolute;content:"";opacity:0;-webkit-transition:opacity 15ms linear, background-color 15ms linear;transition:opacity 15ms linear, background-color 15ms linear;z-index:-1}.calendar-month-year-toggle.ion-focused::after{background:currentColor}.calendar-month-year-toggle:disabled{opacity:0.3;pointer-events:none}.calendar-month-year-toggle ion-icon{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:0;padding-inline-end:0;padding-top:0;padding-bottom:0;-ms-flex-negative:0;flex-shrink:0}.calendar-month-year-toggle #toggle-wrapper{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center}ion-picker{--highlight-background:var(--wheel-highlight-background);--highlight-border-radius:var(--wheel-highlight-border-radius);--fade-background-rgb:var(--wheel-fade-background-rgb)}:host{--background:var(--ion-color-light, #f4f5f8);--background-rgb:var(--ion-color-light-rgb, 244, 245, 248);--title-color:var(--ion-color-step-600, var(--ion-text-color-step-400, #666666))}:host(.datetime-presentation-date-time:not(.datetime-prefer-wheel)),:host(.datetime-presentation-time-date:not(.datetime-prefer-wheel)),:host(.datetime-presentation-date:not(.datetime-prefer-wheel)){min-height:350px}:host .datetime-header{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:16px;padding-bottom:16px;border-bottom:0.55px solid var(--ion-color-step-200, var(--ion-background-color-step-200, #cccccc));font-size:min(0.875rem, 22.4px)}:host .datetime-header .datetime-title{color:var(--title-color)}:host .datetime-header .datetime-selected-date{margin-top:10px}.calendar-month-year-toggle{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;min-height:44px;font-size:min(1rem, 25.6px);font-weight:600}.calendar-month-year-toggle.ion-focused::after{opacity:0.15}.calendar-month-year-toggle #toggle-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:8px;margin-inline-end:8px;margin-top:10px;margin-bottom:10px}:host .calendar-action-buttons .calendar-month-year-toggle ion-icon,:host .calendar-action-buttons ion-buttons ion-button{color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .calendar-action-buttons .calendar-month-year-toggle ion-icon,:host(.ion-color) .calendar-action-buttons ion-buttons ion-button{color:var(--ion-color-base)}:host .calendar-action-buttons ion-buttons{-ms-flex-align:stretch;align-items:stretch;height:100%}:host .calendar-action-buttons ion-buttons ion-button{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}:host .calendar-days-of-week{-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:0;padding-bottom:0;color:var(--ion-color-step-300, var(--ion-text-color-step-700, #b3b3b3));font-size:min(0.75rem, 19.2px);font-weight:600;line-height:24px;text-transform:uppercase}@supports (border-radius: mod(1px, 1px)){.calendar-days-of-week .day-of-week{width:clamp(20px, calc(mod(min(1rem, 24px), 24px) * 10), 100%);height:24px;overflow:hidden}.calendar-day{border-radius:max(8px, mod(min(1rem, 24px), 24px) * 10)}}@supports ((border-radius: mod(1px, 1px)) and (background: -webkit-named-image(apple-pay-logo-black)) and (not (contain-intrinsic-size: none))) or (not (border-radius: mod(1px, 1px))){.calendar-days-of-week .day-of-week{width:auto;height:auto;overflow:initial}.calendar-day{border-radius:32px}}:host .calendar-body .calendar-month .calendar-month-grid{-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:8px;padding-bottom:8px;-ms-flex-align:center;align-items:center;height:calc(100% - 16px)}:host .calendar-day-wrapper{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;height:0;min-height:1rem}:host .calendar-day{width:40px;min-width:40px;height:40px;font-size:min(1.25rem, 32px)}.calendar-day.calendar-day-active{background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);font-size:min(1.375rem, 35.2px)}:host(.ion-color) .calendar-day.calendar-day-active{background:rgba(var(--ion-color-base-rgb), 0.2)}:host .calendar-day.calendar-day-today{color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .calendar-day.calendar-day-today{color:var(--ion-color-base)}:host .calendar-day.calendar-day-active,:host .calendar-day.calendar-day-adjacent-day.calendar-day-active{color:var(--ion-color-primary, #0054e9);font-weight:600}:host(.ion-color) .calendar-day.calendar-day-active,:host(.ion-color) .calendar-day.calendar-day-adjacent-day.calendar-day-active{color:var(--ion-color-base)}:host .calendar-day.calendar-day-today.calendar-day-active{background:var(--ion-color-primary, #0054e9);color:var(--ion-color-primary-contrast, #fff)}:host(.ion-color) .calendar-day.calendar-day-today.calendar-day-active{background:var(--ion-color-base);color:var(--ion-color-contrast)}:host .calendar-day.calendar-day-adjacent-day{color:var(--ion-color-step-300, var(--ion-text-color-step-700, #b3b3b3))}:host .datetime-time{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:8px;padding-bottom:16px;font-size:min(1rem, 25.6px)}:host .datetime-time .time-header{font-weight:600}:host .datetime-buttons{-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:8px;padding-bottom:8px;border-top:0.55px solid var(--ion-color-step-200, var(--ion-background-color-step-200, #cccccc))}:host .datetime-buttons ::slotted(ion-buttons),:host .datetime-buttons ion-buttons{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}:host .datetime-action-buttons{width:100%}`;
|
|
772
754
|
|
|
773
|
-
const datetimeIosCss = () => `:host{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;background:var(--background);overflow:hidden}:host(.datetime-size-fixed){width:auto;height:auto}:host(.datetime-size-cover){width:100%}:host(:not(.datetime-ready)) .datetime-year{position:absolute;pointer-events:none}:host(.datetime-ready) .datetime-year{display:none}:host .wheel-order-year-first .day-column{-ms-flex-order:3;order:3;text-align:end}:host .wheel-order-year-first .month-column{-ms-flex-order:2;order:2;text-align:end}:host .wheel-order-year-first .year-column{-ms-flex-order:1;order:1;text-align:start}:host .datetime-calendar,:host .datetime-year{display:-ms-flexbox;display:flex;-ms-flex:1 1 auto;flex:1 1 auto;-ms-flex-flow:column;flex-flow:column}:host(.show-month-and-year) .datetime-year{display:-ms-flexbox;display:flex}:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{display:none}:host(.month-year-picker-open) .datetime-footer{display:none}:host(.datetime-disabled){pointer-events:none}:host(.datetime-disabled) .calendar-days-of-week,:host(.datetime-disabled) .datetime-time{opacity:0.4}:host(.datetime-readonly){pointer-events:none;}:host(.datetime-readonly) .calendar-action-buttons,:host(.datetime-readonly) .calendar-body,:host(.datetime-readonly) .datetime-year{pointer-events:initial}:host(.datetime-readonly) .calendar-day[disabled]:not(.calendar-day-constrained),:host(.datetime-readonly) .datetime-action-buttons ion-button[disabled]{opacity:1}:host .datetime-header .datetime-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host .datetime-action-buttons.has-clear-button{width:100%}:host .datetime-action-buttons,::slotted([slot=buttons]),.datetime-action-buttons .datetime-action-buttons-container{display:-ms-flexbox;display:flex}:host .calendar-action-buttons{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host .calendar-days-of-week{display:grid;grid-template-columns:repeat(7, 1fr);text-align:center}.calendar-days-of-week .day-of-week{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0}:host .calendar-body{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-webkit-scroll-snap-type:x mandatory;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory;overflow-x:scroll;overflow-y:hidden;scrollbar-width:none;outline:none}:host .calendar-body .calendar-month{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;scroll-snap-align:start;scroll-snap-stop:always;-ms-flex-negative:0;flex-shrink:0;width:100%}:host .calendar-body .calendar-month-disabled{scroll-snap-align:none}:host .calendar-body::-webkit-scrollbar{display:none}:host .calendar-body .calendar-month-grid{display:grid;grid-template-columns:repeat(7, 1fr)}:host .calendar-day-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;min-width:0;min-height:0;overflow:visible;z-index:0}:host .calendar-day-wrapper:focus-within{z-index:1}.datetime-range-announcement{-webkit-margin-start:-1px;margin-inline-start:-1px;-webkit-margin-end:-1px;margin-inline-end:-1px;margin-top:-1px;margin-bottom:-1px;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;position:absolute;width:1px;height:1px;border:0;white-space:nowrap;overflow:hidden;clip:rect(0, 0, 0, 0)}:host .calendar-day-wrapper-in-range::before,:host .calendar-day-wrapper-range-start::before,:host .calendar-day-wrapper-range-end::before{position:absolute;top:50%;inset-inline-start:0;inset-inline-end:0;height:var(--range-track-height);-webkit-transform:translateY(-50%);transform:translateY(-50%);background:-webkit-gradient(linear, left top, left bottom, from(var(--range-background)), to(var(--range-background))), -webkit-gradient(linear, left top, left bottom, from(var(--background)), to(var(--background)));background:linear-gradient(var(--range-background), var(--range-background)), linear-gradient(var(--background), var(--background));content:"";z-index:-1}:host .calendar-day-wrapper-range-start::before{inset-inline-start:50%}:host .calendar-day-wrapper-range-end::before{inset-inline-end:50%}:host .calendar-day-wrapper-in-range:not(:nth-child(7n)):has(+.calendar-day-wrapper-in-range)::before,:host .calendar-day-wrapper-in-range:not(:nth-child(7n)):has(+.calendar-day-wrapper-range-end)::before,:host .calendar-day-wrapper-range-start:not(:nth-child(7n)):has(+.calendar-day-wrapper-in-range)::before,:host .calendar-day-wrapper-range-start:not(:nth-child(7n)):has(+.calendar-day-wrapper-range-end)::before{inset-inline-end:-1px}:host .calendar-day-wrapper-in-range:nth-child(7n)::before,:host .calendar-day-wrapper-range-start:nth-child(7n)::before{inset-inline-end:calc(var(--range-track-edge-overflow, 0px) * -1)}:host .calendar-day-wrapper-in-range:nth-child(7n+1)::before,:host .calendar-day-wrapper-range-end:nth-child(7n+1)::before{inset-inline-start:calc(var(--range-track-edge-overflow, 0px) * -1)}:host .calendar-day-wrapper-range-start.calendar-day-wrapper-range-end::before{display:none}:host(.datetime-disabled.datetime-range) .calendar-month-grid{opacity:0.4}:host(.datetime-disabled.datetime-range) .calendar-month-grid .calendar-day[disabled]{opacity:1}.calendar-day{-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px;padding-top:0px;padding-bottom:0px;-webkit-margin-start:0px;margin-inline-start:0px;-webkit-margin-end:0px;margin-inline-end:0px;margin-top:0px;margin-bottom:0px;display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;border:none;outline:none;background:none;color:currentColor;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;z-index:0}.calendar-day[disabled]{pointer-events:none}:host .datetime-time{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host .time-header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host .time-body{display:-ms-flexbox;display:flex;border:none;font-family:inherit;font-size:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}:host(.in-item){position:static}.calendar-month-year{min-width:0}.calendar-month-year-toggle{color:inherit;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-align:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;white-space:inherit;position:relative;border:0;outline:none;background:transparent;cursor:pointer;z-index:1}.calendar-month-year-toggle ion-icon{-ms-flex-negative:0;flex-shrink:0}.calendar-month-year-toggle #toggle-wrapper{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center}:host{}:host(.datetime-size-fixed:not(.datetime-prefer-wheel)){max-width:350px}:host .calendar-body,:host .datetime-year{opacity:0}:host(.datetime-ready) .calendar-body,:host(.datetime-ready) .datetime-year{opacity:1}:host(.datetime-size-fixed.datetime-prefer-wheel){min-width:350px;max-width:-webkit-max-content;max-width:-moz-max-content;max-width:max-content}:host .calendar-action-buttons ion-button{--background:transparent}.calendar-day{border-radius:50%;font-family:var(--ion-font-family, inherit)}:host .calendar-day[disabled]{opacity:0.4}.calendar-day:not(.calendar-day-adjacent-day):focus{background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);-webkit-box-shadow:0px 0px 0px 4px rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);box-shadow:0px 0px 0px 4px rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2)}:host(.ion-color) .calendar-day:not(.calendar-day-adjacent-day):focus{background:rgba(var(--ion-color-base-rgb), 0.2);-webkit-box-shadow:0px 0px 0px 4px rgba(var(--ion-color-base-rgb), 0.2);box-shadow:0px 0px 0px 4px rgba(var(--ion-color-base-rgb), 0.2)}:host .calendar-next-prev{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:start}.calendar-next-prev ion-button ion-icon[slot=icon-only]{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}:host(.datetime-presentation-time) .datetime-time{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}:host ion-popover{--height:200px}:host .time-body{border-radius:8px;-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:12px;padding-inline-end:12px;padding-top:6px;padding-bottom:6px;background:var(--ion-color-step-300, var(--ion-background-color-step-300, #edeef0));color:var(--ion-text-color, #000)}:host .time-body-active{color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .time-body-active{color:var(--ion-color-base)}:host(.show-month-and-year) .calendar-action-buttons .calendar-month-year-toggle{color:var(--ion-color-primary, #0054e9)}:host(.ion-color.show-month-and-year) .calendar-action-buttons .calendar-month-year-toggle{color:var(--ion-color-base)}:host .datetime-action-buttons ion-button{--color:var(--ion-color-primary, #0054e9)}.calendar-month-year-toggle::after{right:0;left:0;top:0;bottom:0;position:absolute;content:"";opacity:0;-webkit-transition:opacity 15ms linear, background-color 15ms linear;transition:opacity 15ms linear, background-color 15ms linear;z-index:-1}.calendar-month-year-toggle.ion-focused::after{background:currentColor}.calendar-month-year-toggle:disabled{opacity:0.3;pointer-events:none}.calendar-month-year-toggle ion-icon{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:0;padding-inline-end:0;padding-top:0;padding-bottom:0}ion-picker{--highlight-background:var(--wheel-highlight-background);--highlight-border-radius:var(--wheel-highlight-border-radius);--fade-background-rgb:var(--wheel-fade-background-rgb)}:host .datetime-action-buttons{-ms-flex-pack:justify;justify-content:space-between}:host{--background:var(--ion-color-light, #f4f5f8);--background-rgb:var(--ion-color-light-rgb, 244, 245, 248);--title-color:var(--ion-color-step-600, var(--ion-text-color-step-400, #666666))}:host(.datetime-presentation-date-time:not(.datetime-prefer-wheel)),:host(.datetime-presentation-time-date:not(.datetime-prefer-wheel)),:host(.datetime-presentation-date:not(.datetime-prefer-wheel)){min-height:350px}:host .datetime-header{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:16px;padding-bottom:16px;border-bottom:0.55px solid var(--ion-color-step-200, var(--ion-background-color-step-200, #cccccc));font-size:min(0.875rem, 22.4px)}:host .datetime-header .datetime-title{color:var(--title-color)}:host .datetime-header .datetime-selected-date{margin-top:10px}.calendar-month-year-toggle{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;min-height:44px;font-size:min(1rem, 25.6px);font-weight:600}.calendar-month-year-toggle.ion-focused::after{opacity:0.15}.calendar-month-year-toggle #toggle-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:8px;margin-inline-end:8px;margin-top:10px;margin-bottom:10px}:host .calendar-action-buttons .calendar-month-year-toggle ion-icon,:host .calendar-action-buttons ion-button{color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .calendar-action-buttons .calendar-month-year-toggle ion-icon,:host(.ion-color) .calendar-action-buttons ion-button{color:var(--ion-color-base)}:host .calendar-action-buttons ion-button{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}:host .calendar-action-buttons .calendar-next-prev{-ms-flex-align:stretch;align-items:stretch}.calendar-next-prev ion-button{--padding-top:0;--padding-bottom:0;--padding-start:5px;--padding-end:5px;-webkit-margin-start:2px;margin-inline-start:2px;-webkit-margin-end:2px;margin-inline-end:2px;min-height:32px}.calendar-next-prev ion-button ion-icon[slot=icon-only]{font-size:1.65em;line-height:0.67}:host .calendar-days-of-week{-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:0;padding-bottom:0;color:var(--ion-color-step-300, var(--ion-text-color-step-700, #b3b3b3));font-size:min(0.75rem, 19.2px);font-weight:600;line-height:24px;text-transform:uppercase}@supports (border-radius: mod(1px, 1px)){.calendar-days-of-week .day-of-week{width:clamp(20px, calc(mod(min(1rem, 24px), 24px) * 10), 100%);height:24px;overflow:hidden}.calendar-day{border-radius:max(8px, mod(min(1rem, 24px), 24px) * 10)}}@supports ((border-radius: mod(1px, 1px)) and (background: -webkit-named-image(apple-pay-logo-black)) and (not (contain-intrinsic-size: none))) or (not (border-radius: mod(1px, 1px))){.calendar-days-of-week .day-of-week{width:auto;height:auto;overflow:initial}.calendar-day{border-radius:32px}}:host .calendar-body .calendar-month .calendar-month-grid{-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:8px;padding-bottom:8px;-ms-flex-align:center;align-items:center;height:calc(100% - 16px)}:host .calendar-day-wrapper{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;height:0;min-height:1rem}:host .calendar-day{width:40px;min-width:40px;height:40px;font-size:min(1.25rem, 32px)}.calendar-day.calendar-day-active{background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);font-size:min(1.375rem, 35.2px)}:host(.ion-color) .calendar-day.calendar-day-active{background:rgba(var(--ion-color-base-rgb), 0.2)}:host .calendar-day.calendar-day-today{color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .calendar-day.calendar-day-today{color:var(--ion-color-base)}:host .calendar-day.calendar-day-active,:host .calendar-day.calendar-day-adjacent-day.calendar-day-active{color:var(--ion-color-primary, #0054e9);font-weight:600}:host(.ion-color) .calendar-day.calendar-day-active,:host(.ion-color) .calendar-day.calendar-day-adjacent-day.calendar-day-active{color:var(--ion-color-base)}:host .calendar-day.calendar-day-today.calendar-day-active{background:var(--ion-color-primary, #0054e9);color:var(--ion-color-primary-contrast, #fff)}:host(.ion-color) .calendar-day.calendar-day-today.calendar-day-active{background:var(--ion-color-base);color:var(--ion-color-contrast)}:host .calendar-day.calendar-day-adjacent-day{color:var(--ion-color-step-300, var(--ion-text-color-step-700, #b3b3b3))}:host{--range-background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.12);--range-track-height:40px;--range-track-edge-overflow:8px}:host(.ion-color){--range-background:rgba(var(--ion-color-base-rgb), 0.12)}:host(.datetime-range) .calendar-day-wrapper{height:auto}:host .calendar-day.calendar-day-range-start,:host .calendar-day.calendar-day-range-end{border-radius:50%;background:var(--ion-color-primary, #0054e9);color:var(--ion-color-primary-contrast, #fff);font-weight:600}:host(.ion-color) .calendar-day.calendar-day-range-start,:host(.ion-color) .calendar-day.calendar-day-range-end{background:var(--ion-color-base);color:var(--ion-color-contrast)}:host .datetime-time{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:8px;padding-bottom:16px;font-size:min(1rem, 25.6px)}:host .datetime-time .time-header{font-weight:600}:host .datetime-buttons{-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:8px;padding-bottom:8px;border-top:0.55px solid var(--ion-color-step-200, var(--ion-background-color-step-200, #cccccc))}:host .datetime-buttons,::slotted([slot=buttons]){display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}:host .datetime-action-buttons,::slotted([slot=buttons]){width:100%}`;
|
|
774
|
-
|
|
775
|
-
const datetimeMdCss = () => `:host{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;background:var(--background);overflow:hidden}:host(.datetime-size-fixed){width:auto;height:auto}:host(.datetime-size-cover){width:100%}:host(:not(.datetime-ready)) .datetime-year{position:absolute;pointer-events:none}:host(.datetime-ready) .datetime-year{display:none}:host .wheel-order-year-first .day-column{-ms-flex-order:3;order:3;text-align:end}:host .wheel-order-year-first .month-column{-ms-flex-order:2;order:2;text-align:end}:host .wheel-order-year-first .year-column{-ms-flex-order:1;order:1;text-align:start}:host .datetime-calendar,:host .datetime-year{display:-ms-flexbox;display:flex;-ms-flex:1 1 auto;flex:1 1 auto;-ms-flex-flow:column;flex-flow:column}:host(.show-month-and-year) .datetime-year{display:-ms-flexbox;display:flex}:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{display:none}:host(.month-year-picker-open) .datetime-footer{display:none}:host(.datetime-disabled){pointer-events:none}:host(.datetime-disabled) .calendar-days-of-week,:host(.datetime-disabled) .datetime-time{opacity:0.4}:host(.datetime-readonly){pointer-events:none;}:host(.datetime-readonly) .calendar-action-buttons,:host(.datetime-readonly) .calendar-body,:host(.datetime-readonly) .datetime-year{pointer-events:initial}:host(.datetime-readonly) .calendar-day[disabled]:not(.calendar-day-constrained),:host(.datetime-readonly) .datetime-action-buttons ion-button[disabled]{opacity:1}:host .datetime-header .datetime-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host .datetime-action-buttons.has-clear-button{width:100%}:host .datetime-action-buttons,::slotted([slot=buttons]),.datetime-action-buttons .datetime-action-buttons-container{display:-ms-flexbox;display:flex}:host .calendar-action-buttons{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host .calendar-days-of-week{display:grid;grid-template-columns:repeat(7, 1fr);text-align:center}.calendar-days-of-week .day-of-week{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0}:host .calendar-body{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-webkit-scroll-snap-type:x mandatory;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory;overflow-x:scroll;overflow-y:hidden;scrollbar-width:none;outline:none}:host .calendar-body .calendar-month{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;scroll-snap-align:start;scroll-snap-stop:always;-ms-flex-negative:0;flex-shrink:0;width:100%}:host .calendar-body .calendar-month-disabled{scroll-snap-align:none}:host .calendar-body::-webkit-scrollbar{display:none}:host .calendar-body .calendar-month-grid{display:grid;grid-template-columns:repeat(7, 1fr)}:host .calendar-day-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;min-width:0;min-height:0;overflow:visible;z-index:0}:host .calendar-day-wrapper:focus-within{z-index:1}.datetime-range-announcement{-webkit-margin-start:-1px;margin-inline-start:-1px;-webkit-margin-end:-1px;margin-inline-end:-1px;margin-top:-1px;margin-bottom:-1px;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;position:absolute;width:1px;height:1px;border:0;white-space:nowrap;overflow:hidden;clip:rect(0, 0, 0, 0)}:host .calendar-day-wrapper-in-range::before,:host .calendar-day-wrapper-range-start::before,:host .calendar-day-wrapper-range-end::before{position:absolute;top:50%;inset-inline-start:0;inset-inline-end:0;height:var(--range-track-height);-webkit-transform:translateY(-50%);transform:translateY(-50%);background:-webkit-gradient(linear, left top, left bottom, from(var(--range-background)), to(var(--range-background))), -webkit-gradient(linear, left top, left bottom, from(var(--background)), to(var(--background)));background:linear-gradient(var(--range-background), var(--range-background)), linear-gradient(var(--background), var(--background));content:"";z-index:-1}:host .calendar-day-wrapper-range-start::before{inset-inline-start:50%}:host .calendar-day-wrapper-range-end::before{inset-inline-end:50%}:host .calendar-day-wrapper-in-range:not(:nth-child(7n)):has(+.calendar-day-wrapper-in-range)::before,:host .calendar-day-wrapper-in-range:not(:nth-child(7n)):has(+.calendar-day-wrapper-range-end)::before,:host .calendar-day-wrapper-range-start:not(:nth-child(7n)):has(+.calendar-day-wrapper-in-range)::before,:host .calendar-day-wrapper-range-start:not(:nth-child(7n)):has(+.calendar-day-wrapper-range-end)::before{inset-inline-end:-1px}:host .calendar-day-wrapper-in-range:nth-child(7n)::before,:host .calendar-day-wrapper-range-start:nth-child(7n)::before{inset-inline-end:calc(var(--range-track-edge-overflow, 0px) * -1)}:host .calendar-day-wrapper-in-range:nth-child(7n+1)::before,:host .calendar-day-wrapper-range-end:nth-child(7n+1)::before{inset-inline-start:calc(var(--range-track-edge-overflow, 0px) * -1)}:host .calendar-day-wrapper-range-start.calendar-day-wrapper-range-end::before{display:none}:host(.datetime-disabled.datetime-range) .calendar-month-grid{opacity:0.4}:host(.datetime-disabled.datetime-range) .calendar-month-grid .calendar-day[disabled]{opacity:1}.calendar-day{-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px;padding-top:0px;padding-bottom:0px;-webkit-margin-start:0px;margin-inline-start:0px;-webkit-margin-end:0px;margin-inline-end:0px;margin-top:0px;margin-bottom:0px;display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;border:none;outline:none;background:none;color:currentColor;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;z-index:0}.calendar-day[disabled]{pointer-events:none}:host .datetime-time{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host .time-header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host .time-body{display:-ms-flexbox;display:flex;border:none;font-family:inherit;font-size:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}:host(.in-item){position:static}.calendar-month-year{min-width:0}.calendar-month-year-toggle{color:inherit;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-align:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;white-space:inherit;position:relative;border:0;outline:none;background:transparent;cursor:pointer;z-index:1}.calendar-month-year-toggle ion-icon{-ms-flex-negative:0;flex-shrink:0}.calendar-month-year-toggle #toggle-wrapper{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center}:host{}:host(.datetime-size-fixed:not(.datetime-prefer-wheel)){max-width:350px}:host .calendar-body,:host .datetime-year{opacity:0}:host(.datetime-ready) .calendar-body,:host(.datetime-ready) .datetime-year{opacity:1}:host(.datetime-size-fixed.datetime-prefer-wheel){min-width:350px;max-width:-webkit-max-content;max-width:-moz-max-content;max-width:max-content}:host .calendar-action-buttons ion-button{--background:transparent}.calendar-day{border-radius:50%;font-family:var(--ion-font-family, inherit)}:host .calendar-day[disabled]{opacity:0.4}.calendar-day:not(.calendar-day-adjacent-day):focus{background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);-webkit-box-shadow:0px 0px 0px 4px rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);box-shadow:0px 0px 0px 4px rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2)}:host(.ion-color) .calendar-day:not(.calendar-day-adjacent-day):focus{background:rgba(var(--ion-color-base-rgb), 0.2);-webkit-box-shadow:0px 0px 0px 4px rgba(var(--ion-color-base-rgb), 0.2);box-shadow:0px 0px 0px 4px rgba(var(--ion-color-base-rgb), 0.2)}:host .calendar-next-prev{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:start}.calendar-next-prev ion-button ion-icon[slot=icon-only]{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}:host(.datetime-presentation-time) .datetime-time{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}:host ion-popover{--height:200px}:host .time-body{border-radius:8px;-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:12px;padding-inline-end:12px;padding-top:6px;padding-bottom:6px;background:var(--ion-color-step-300, var(--ion-background-color-step-300, #edeef0));color:var(--ion-text-color, #000)}:host .time-body-active{color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .time-body-active{color:var(--ion-color-base)}:host(.show-month-and-year) .calendar-action-buttons .calendar-month-year-toggle{color:var(--ion-color-primary, #0054e9)}:host(.ion-color.show-month-and-year) .calendar-action-buttons .calendar-month-year-toggle{color:var(--ion-color-base)}:host .datetime-action-buttons ion-button{--color:var(--ion-color-primary, #0054e9)}.calendar-month-year-toggle::after{right:0;left:0;top:0;bottom:0;position:absolute;content:"";opacity:0;-webkit-transition:opacity 15ms linear, background-color 15ms linear;transition:opacity 15ms linear, background-color 15ms linear;z-index:-1}.calendar-month-year-toggle.ion-focused::after{background:currentColor}.calendar-month-year-toggle:disabled{opacity:0.3;pointer-events:none}.calendar-month-year-toggle ion-icon{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:0;padding-inline-end:0;padding-top:0;padding-bottom:0}ion-picker{--highlight-background:var(--wheel-highlight-background);--highlight-border-radius:var(--wheel-highlight-border-radius);--fade-background-rgb:var(--wheel-fade-background-rgb)}:host .datetime-action-buttons{-ms-flex-pack:justify;justify-content:space-between}:host{--background:var(--ion-color-step-100, var(--ion-background-color-step-100, #ffffff));--title-color:var(--ion-color-primary-contrast, #fff)}:host(.ion-color){--title-color:var(--ion-color-contrast)}:host .datetime-header{-webkit-padding-start:20px;padding-inline-start:20px;-webkit-padding-end:20px;padding-inline-end:20px;padding-top:20px;padding-bottom:20px;background:var(--ion-color-primary, #0054e9);color:var(--title-color)}:host(.ion-color) .datetime-header{background:var(--ion-color-base)}:host .datetime-header .datetime-title{font-size:0.75rem;text-transform:uppercase}:host .datetime-header .datetime-selected-date{margin-top:30px;font-size:2.125rem}:host .calendar-action-buttons ion-button{--color:var(--ion-color-step-650, var(--ion-text-color-step-350, #595959))}.calendar-next-prev ion-button{--padding-top:12px;--padding-end:12px;--padding-bottom:12px;--padding-start:12px;--border-radius:50%;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;width:3rem;height:3rem}.calendar-next-prev ion-button ion-icon[slot=icon-only]{font-size:1.8em}.calendar-month-year-toggle{-webkit-padding-start:20px;padding-inline-start:20px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:12px;padding-bottom:12px;min-height:48px;background:transparent;color:var(--ion-color-step-650, var(--ion-text-color-step-350, #595959));z-index:1}.calendar-month-year-toggle.ion-focused::after{opacity:0.04}.calendar-month-year-toggle ion-ripple-effect{color:currentColor}@media (any-hover: hover){.calendar-month-year-toggle.ion-activatable:not(.ion-focused):hover::after{background:currentColor;opacity:0.04}}:host .calendar-days-of-week{-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;padding-top:0px;padding-bottom:0px;color:var(--ion-color-step-500, var(--ion-text-color-step-500, gray));font-size:0.875rem;line-height:36px}:host .calendar-body .calendar-month .calendar-month-grid{-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;padding-top:4px;padding-bottom:4px;grid-template-rows:repeat(6, 1fr)}:host .calendar-day{width:42px;min-width:42px;height:42px;font-size:0.875rem}:host .calendar-day.calendar-day-today{border:1px solid var(--ion-color-primary, #0054e9);color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .calendar-day.calendar-day-today{border:1px solid var(--ion-color-base);color:var(--ion-color-base)}:host .calendar-day.calendar-day-active,:host .calendar-day.calendar-day-adjacent-day.calendar-day-active{color:var(--ion-color-primary-contrast, #fff)}:host(.ion-color) .calendar-day.calendar-day-active,:host(.ion-color) .calendar-day.calendar-day-adjacent-day.calendar-day-active{color:var(--ion-color-contrast)}.calendar-day.calendar-day-active,.calendar-day.calendar-day-active:focus{border:1px solid var(--ion-color-primary, #0054e9);background:var(--ion-color-primary, #0054e9)}:host(.ion-color) .calendar-day.calendar-day-active,:host(.ion-color) .calendar-day.calendar-day-active:focus{border:1px solid var(--ion-color-base);background:var(--ion-color-base)}:host .calendar-day.calendar-day-adjacent-day{color:var(--ion-color-step-500, var(--ion-text-color-step-500, gray))}:host{--range-background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.12);--range-track-height:42px;--range-track-edge-overflow:10px}:host(.ion-color){--range-background:rgba(var(--ion-color-base-rgb), 0.12)}:host .calendar-day.calendar-day-range-start,:host .calendar-day.calendar-day-range-end{border-radius:50%;background:var(--ion-color-primary, #0054e9);color:var(--ion-color-primary-contrast, #fff)}:host(.ion-color) .calendar-day.calendar-day-range-start,:host(.ion-color) .calendar-day.calendar-day-range-end{background:var(--ion-color-base);color:var(--ion-color-contrast)}:host .datetime-time{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:8px;padding-bottom:8px}:host .time-header{color:var(--ion-color-step-650, var(--ion-text-color-step-350, #595959))}:host(.datetime-presentation-month) .datetime-year,:host(.datetime-presentation-year) .datetime-year,:host(.datetime-presentation-month-year) .datetime-year{margin-top:20px;margin-bottom:20px}:host .datetime-buttons{-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;padding-top:10px;padding-bottom:10px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}`;
|
|
755
|
+
const datetimeMdCss = () => `:host{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;background:var(--background);overflow:hidden}:host(.datetime-size-fixed){width:auto;height:auto}:host(.datetime-size-fixed:not(.datetime-prefer-wheel)){max-width:350px}:host(.datetime-size-fixed.datetime-prefer-wheel){min-width:350px;max-width:-webkit-max-content;max-width:-moz-max-content;max-width:max-content}:host(.datetime-size-cover){width:100%}:host .calendar-body,:host .datetime-year{opacity:0}:host(:not(.datetime-ready)) .datetime-year{position:absolute;pointer-events:none}:host(.datetime-ready) .calendar-body{opacity:1}:host(.datetime-ready) .datetime-year{display:none;opacity:1}:host .wheel-order-year-first .day-column{-ms-flex-order:3;order:3;text-align:end}:host .wheel-order-year-first .month-column{-ms-flex-order:2;order:2;text-align:end}:host .wheel-order-year-first .year-column{-ms-flex-order:1;order:1;text-align:start}:host .datetime-calendar,:host .datetime-year{display:-ms-flexbox;display:flex;-ms-flex:1 1 auto;flex:1 1 auto;-ms-flex-flow:column;flex-flow:column}:host(.show-month-and-year) .datetime-year{display:-ms-flexbox;display:flex}:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{display:none}:host(.month-year-picker-open) .datetime-footer{display:none}:host(.datetime-disabled){pointer-events:none}:host(.datetime-disabled) .calendar-days-of-week,:host(.datetime-disabled) .datetime-time{opacity:0.4}:host(.datetime-readonly){pointer-events:none;}:host(.datetime-readonly) .calendar-action-buttons,:host(.datetime-readonly) .calendar-body,:host(.datetime-readonly) .datetime-year{pointer-events:initial}:host(.datetime-readonly) .calendar-day[disabled]:not(.calendar-day-constrained),:host(.datetime-readonly) .datetime-action-buttons ion-button[disabled]{opacity:1}:host .datetime-header .datetime-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host .datetime-action-buttons.has-clear-button{width:100%}:host .datetime-action-buttons ion-buttons{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host .datetime-action-buttons ion-button{--color:var(--ion-color-primary, #0054e9)}.datetime-action-buttons .datetime-action-buttons-container{display:-ms-flexbox;display:flex}:host .calendar-action-buttons{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host .calendar-action-buttons ion-button{--background:transparent}:host .calendar-days-of-week{display:grid;grid-template-columns:repeat(7, 1fr);text-align:center}.calendar-days-of-week .day-of-week{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0}:host .calendar-body{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-webkit-scroll-snap-type:x mandatory;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory;overflow-x:scroll;overflow-y:hidden;scrollbar-width:none;outline:none}:host .calendar-body .calendar-month{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;scroll-snap-align:start;scroll-snap-stop:always;-ms-flex-negative:0;flex-shrink:0;width:100%}:host .calendar-body .calendar-month-disabled{scroll-snap-align:none}:host .calendar-body::-webkit-scrollbar{display:none}:host .calendar-body .calendar-month-grid{display:grid;grid-template-columns:repeat(7, 1fr)}:host .calendar-day-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;min-width:0;min-height:0;overflow:visible}.calendar-day{border-radius:50%;-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px;padding-top:0px;padding-bottom:0px;-webkit-margin-start:0px;margin-inline-start:0px;-webkit-margin-end:0px;margin-inline-end:0px;margin-top:0px;margin-bottom:0px;display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;border:none;outline:none;background:none;color:currentColor;font-family:var(--ion-font-family, inherit);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;z-index:0}:host .calendar-day[disabled]{pointer-events:none;opacity:0.4}.calendar-day:not(.calendar-day-adjacent-day):focus{background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);-webkit-box-shadow:0px 0px 0px 4px rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);box-shadow:0px 0px 0px 4px rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2)}:host(.ion-color) .calendar-day:not(.calendar-day-adjacent-day):focus{background:rgba(var(--ion-color-base-rgb), 0.2);-webkit-box-shadow:0px 0px 0px 4px rgba(var(--ion-color-base-rgb), 0.2);box-shadow:0px 0px 0px 4px rgba(var(--ion-color-base-rgb), 0.2)}:host .datetime-time{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host(.datetime-presentation-time) .datetime-time{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}:host ion-popover{--height:200px}:host .time-header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host .time-body{border-radius:8px;-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:12px;padding-inline-end:12px;padding-top:6px;padding-bottom:6px;display:-ms-flexbox;display:flex;border:none;background:var(--ion-color-step-300, var(--ion-background-color-step-300, #edeef0));color:var(--ion-text-color, #000);font-family:inherit;font-size:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}:host .time-body-active{color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .time-body-active{color:var(--ion-color-base)}:host(.in-item){position:static}:host(.show-month-and-year) .calendar-action-buttons .calendar-month-year-toggle{color:var(--ion-color-primary, #0054e9)}:host(.ion-color.show-month-and-year) .calendar-action-buttons .calendar-month-year-toggle{color:var(--ion-color-base)}.calendar-month-year{min-width:0}.calendar-month-year-toggle{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;position:relative;border:0;outline:none;background:transparent;cursor:pointer;z-index:1}.calendar-month-year-toggle::after{left:0;right:0;top:0;bottom:0;position:absolute;content:"";opacity:0;-webkit-transition:opacity 15ms linear, background-color 15ms linear;transition:opacity 15ms linear, background-color 15ms linear;z-index:-1}.calendar-month-year-toggle.ion-focused::after{background:currentColor}.calendar-month-year-toggle:disabled{opacity:0.3;pointer-events:none}.calendar-month-year-toggle ion-icon{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:0;padding-inline-end:0;padding-top:0;padding-bottom:0;-ms-flex-negative:0;flex-shrink:0}.calendar-month-year-toggle #toggle-wrapper{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center}ion-picker{--highlight-background:var(--wheel-highlight-background);--highlight-border-radius:var(--wheel-highlight-border-radius);--fade-background-rgb:var(--wheel-fade-background-rgb)}:host{--background:var(--ion-color-step-100, var(--ion-background-color-step-100, #ffffff));--title-color:var(--ion-color-primary-contrast, #fff)}:host(.ion-color){--title-color:var(--ion-color-contrast)}:host .datetime-header{-webkit-padding-start:20px;padding-inline-start:20px;-webkit-padding-end:20px;padding-inline-end:20px;padding-top:20px;padding-bottom:20px;background:var(--ion-color-primary, #0054e9);color:var(--title-color)}:host(.ion-color) .datetime-header{background:var(--ion-color-base)}:host .datetime-header .datetime-title{font-size:0.75rem;text-transform:uppercase}:host .datetime-header .datetime-selected-date{margin-top:30px;font-size:2.125rem}:host .calendar-action-buttons ion-button{--color:var(--ion-color-step-650, var(--ion-text-color-step-350, #595959))}.calendar-month-year-toggle{-webkit-padding-start:20px;padding-inline-start:20px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:12px;padding-bottom:12px;min-height:48px;background:transparent;color:var(--ion-color-step-650, var(--ion-text-color-step-350, #595959));z-index:1}.calendar-month-year-toggle.ion-focused::after{opacity:0.04}.calendar-month-year-toggle ion-ripple-effect{color:currentColor}@media (any-hover: hover){.calendar-month-year-toggle.ion-activatable:not(.ion-focused):hover::after{background:currentColor;opacity:0.04}}:host .calendar-days-of-week{-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;padding-top:0px;padding-bottom:0px;color:var(--ion-color-step-500, var(--ion-text-color-step-500, gray));font-size:0.875rem;line-height:36px}:host .calendar-body .calendar-month .calendar-month-grid{-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;padding-top:4px;padding-bottom:4px;grid-template-rows:repeat(6, 1fr)}:host .calendar-day{width:42px;min-width:42px;height:42px;font-size:0.875rem}:host .calendar-day.calendar-day-today{border:1px solid var(--ion-color-primary, #0054e9);color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .calendar-day.calendar-day-today{border:1px solid var(--ion-color-base);color:var(--ion-color-base)}:host .calendar-day.calendar-day-active,:host .calendar-day.calendar-day-adjacent-day.calendar-day-active{color:var(--ion-color-primary-contrast, #fff)}:host(.ion-color) .calendar-day.calendar-day-active,:host(.ion-color) .calendar-day.calendar-day-adjacent-day.calendar-day-active{color:var(--ion-color-contrast)}.calendar-day.calendar-day-active,.calendar-day.calendar-day-active:focus{border:1px solid var(--ion-color-primary, #0054e9);background:var(--ion-color-primary, #0054e9)}:host(.ion-color) .calendar-day.calendar-day-active,:host(.ion-color) .calendar-day.calendar-day-active:focus{border:1px solid var(--ion-color-base);background:var(--ion-color-base)}:host .calendar-day.calendar-day-adjacent-day{color:var(--ion-color-step-500, var(--ion-text-color-step-500, gray))}:host .datetime-time{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:8px;padding-bottom:8px}:host .time-header{color:var(--ion-color-step-650, var(--ion-text-color-step-350, #595959))}:host(.datetime-presentation-month) .datetime-year,:host(.datetime-presentation-year) .datetime-year,:host(.datetime-presentation-month-year) .datetime-year{margin-top:20px;margin-bottom:20px}:host .datetime-buttons{-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;padding-top:10px;padding-bottom:10px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}`;
|
|
776
756
|
|
|
777
757
|
const Datetime = class {
|
|
778
758
|
constructor(hostRef) {
|
|
@@ -858,22 +838,8 @@ const Datetime = class {
|
|
|
858
838
|
/**
|
|
859
839
|
* If `true`, multiple dates can be selected at once. Only
|
|
860
840
|
* applies to `presentation="date"` and `preferWheel="false"`.
|
|
861
|
-
*
|
|
862
|
-
* @deprecated Use `selectionMode="multiple"` instead.
|
|
863
841
|
*/
|
|
864
842
|
this.multiple = false;
|
|
865
|
-
/**
|
|
866
|
-
* The text shown in the datetime header when the start of the range
|
|
867
|
-
* is empty, also used by screen readers to announce the start date.
|
|
868
|
-
* Only applies when `selectionMode="range"`.
|
|
869
|
-
*/
|
|
870
|
-
this.startDateLabel = 'Start date';
|
|
871
|
-
/**
|
|
872
|
-
* The text shown in the datetime header when the end of the range
|
|
873
|
-
* is empty, also used by screen readers to announce the end date.
|
|
874
|
-
* Only applies when `selectionMode="range"`.
|
|
875
|
-
*/
|
|
876
|
-
this.endDateLabel = 'End date';
|
|
877
843
|
/**
|
|
878
844
|
* If `true`, a header will be shown above the calendar
|
|
879
845
|
* picker. This will include both the slotted title, and
|
|
@@ -926,8 +892,8 @@ const Datetime = class {
|
|
|
926
892
|
*/
|
|
927
893
|
this.preferWheel = false;
|
|
928
894
|
this.warnIfIncorrectValueUsage = () => {
|
|
929
|
-
const { value } = this;
|
|
930
|
-
if (!
|
|
895
|
+
const { multiple, value } = this;
|
|
896
|
+
if (!multiple && Array.isArray(value)) {
|
|
931
897
|
/**
|
|
932
898
|
* We do some processing on the `value` array so
|
|
933
899
|
* that it looks more like an array when logged to
|
|
@@ -936,13 +902,7 @@ const Datetime = class {
|
|
|
936
902
|
* Default toString() behavior: a,b
|
|
937
903
|
* Custom behavior: ['a', 'b']
|
|
938
904
|
*/
|
|
939
|
-
printIonWarning(`[ion-datetime] - An array of values was passed, but
|
|
940
|
-
|
|
941
|
-
Value Passed: [${value.map((v) => `'${v}'`).join(', ')}]
|
|
942
|
-
`, this.el);
|
|
943
|
-
}
|
|
944
|
-
if (this.isRangeMode && Array.isArray(value) && value.length > 2) {
|
|
945
|
-
printIonWarning(`[ion-datetime] - More than 2 values were passed with selectionMode="range". Only the first and last values will be used.
|
|
905
|
+
printIonWarning(`[ion-datetime] - An array of values was passed, but multiple is "false". This is incorrect usage and may result in unexpected behaviors. To dismiss this warning, pass a string to the "value" property when multiple="false".
|
|
946
906
|
|
|
947
907
|
Value Passed: [${value.map((v) => `'${v}'`).join(', ')}]
|
|
948
908
|
`, this.el);
|
|
@@ -968,9 +928,6 @@ const Datetime = class {
|
|
|
968
928
|
};
|
|
969
929
|
this.getActivePart = () => {
|
|
970
930
|
const { activeParts } = this;
|
|
971
|
-
if (this.isRangeParts(activeParts)) {
|
|
972
|
-
return activeParts.start;
|
|
973
|
-
}
|
|
974
931
|
return Array.isArray(activeParts) ? activeParts[0] : activeParts;
|
|
975
932
|
};
|
|
976
933
|
this.closeParentOverlay = (role) => {
|
|
@@ -985,33 +942,6 @@ const Datetime = class {
|
|
|
985
942
|
...parts,
|
|
986
943
|
};
|
|
987
944
|
};
|
|
988
|
-
/**
|
|
989
|
-
* Checks whether the span from start to end contains any disabled day.
|
|
990
|
-
* Used by range mode to prevent selecting across disabled dates.
|
|
991
|
-
*/
|
|
992
|
-
this.rangeContainsDisabledDate = (start, end) => {
|
|
993
|
-
const { minParts, maxParts, parsedDayValues, parsedMonthValues, parsedYearValues, isDateEnabled } = this;
|
|
994
|
-
let cursor = getNextDay(start);
|
|
995
|
-
while (isBefore(cursor, end)) {
|
|
996
|
-
if (isDayDisabled(cursor, minParts, maxParts, parsedDayValues) ||
|
|
997
|
-
(parsedMonthValues !== undefined && !parsedMonthValues.includes(cursor.month)) ||
|
|
998
|
-
(parsedYearValues !== undefined && !parsedYearValues.includes(cursor.year))) {
|
|
999
|
-
return true;
|
|
1000
|
-
}
|
|
1001
|
-
if (isDateEnabled) {
|
|
1002
|
-
try {
|
|
1003
|
-
if (!isDateEnabled(convertDataToISO(cursor))) {
|
|
1004
|
-
return true;
|
|
1005
|
-
}
|
|
1006
|
-
}
|
|
1007
|
-
catch {
|
|
1008
|
-
// Swallow user callback exceptions during validation
|
|
1009
|
-
}
|
|
1010
|
-
}
|
|
1011
|
-
cursor = getNextDay(cursor);
|
|
1012
|
-
}
|
|
1013
|
-
return false;
|
|
1014
|
-
};
|
|
1015
945
|
this.setActiveParts = (parts, removeDate = false) => {
|
|
1016
946
|
/** if the datetime component is in readonly mode,
|
|
1017
947
|
* allow browsing of the calendar without changing
|
|
@@ -1021,7 +951,7 @@ const Datetime = class {
|
|
|
1021
951
|
return;
|
|
1022
952
|
}
|
|
1023
953
|
this.hasUnconfirmedSelection = true;
|
|
1024
|
-
const { minParts, maxParts, activeParts } = this;
|
|
954
|
+
const { multiple, minParts, maxParts, activeParts } = this;
|
|
1025
955
|
/**
|
|
1026
956
|
* When setting the active parts, it is possible
|
|
1027
957
|
* to set invalid data. For example,
|
|
@@ -1034,10 +964,7 @@ const Datetime = class {
|
|
|
1034
964
|
*/
|
|
1035
965
|
const validatedParts = validateParts(parts, minParts, maxParts);
|
|
1036
966
|
this.setWorkingParts(validatedParts);
|
|
1037
|
-
if (
|
|
1038
|
-
this.setActivePartsRange(validatedParts);
|
|
1039
|
-
}
|
|
1040
|
-
else if (this.isMultipleMode) {
|
|
967
|
+
if (multiple) {
|
|
1041
968
|
const activePartsArray = Array.isArray(activeParts) ? activeParts : [activeParts];
|
|
1042
969
|
if (removeDate) {
|
|
1043
970
|
this.activeParts = activePartsArray.filter((p) => !isSameDay(p, validatedParts));
|
|
@@ -1057,25 +984,6 @@ const Datetime = class {
|
|
|
1057
984
|
}
|
|
1058
985
|
this.confirm();
|
|
1059
986
|
};
|
|
1060
|
-
/**
|
|
1061
|
-
* Handles range selection logic when a day is clicked.
|
|
1062
|
-
*
|
|
1063
|
-
* Creating a new range: first click sets start, second sets end.
|
|
1064
|
-
* Modifying an existing range:
|
|
1065
|
-
* - Before range → new start
|
|
1066
|
-
* - Within range → new end
|
|
1067
|
-
* - After range → new end
|
|
1068
|
-
* If the resulting span contains a disabled date, start a new range instead.
|
|
1069
|
-
*/
|
|
1070
|
-
this.setActivePartsRange = (parts) => {
|
|
1071
|
-
const current = this.rangeParts;
|
|
1072
|
-
if (!current || isBefore(parts, current.start) || this.rangeContainsDisabledDate(current.start, parts)) {
|
|
1073
|
-
this.activeParts = { start: parts };
|
|
1074
|
-
}
|
|
1075
|
-
else {
|
|
1076
|
-
this.activeParts = { start: current.start, end: parts };
|
|
1077
|
-
}
|
|
1078
|
-
};
|
|
1079
987
|
this.initializeKeyboardListeners = () => {
|
|
1080
988
|
const calendarBodyRef = this.calendarBodyRef;
|
|
1081
989
|
if (!calendarBodyRef) {
|
|
@@ -1487,57 +1395,6 @@ const Datetime = class {
|
|
|
1487
1395
|
if (hasValue) {
|
|
1488
1396
|
warnIfValueOutOfBounds(valueToProcess, minParts, maxParts);
|
|
1489
1397
|
}
|
|
1490
|
-
/**
|
|
1491
|
-
* Range mode: convert the value array into DatetimeRangeParts.
|
|
1492
|
-
*/
|
|
1493
|
-
if (this.isRangeMode) {
|
|
1494
|
-
/**
|
|
1495
|
-
* The calendar navigates to the start of the range, or to the default
|
|
1496
|
-
* date when there is nothing selected, so that an empty range mode
|
|
1497
|
-
* opens on the same month as the other selection modes.
|
|
1498
|
-
*/
|
|
1499
|
-
let navigateTo;
|
|
1500
|
-
if (hasValue && Array.isArray(valueToProcess)) {
|
|
1501
|
-
let rangeValues = valueToProcess;
|
|
1502
|
-
// If more than 2 entries, use first and last
|
|
1503
|
-
if (rangeValues.length > 2) {
|
|
1504
|
-
rangeValues = [rangeValues[0], rangeValues[rangeValues.length - 1]];
|
|
1505
|
-
}
|
|
1506
|
-
let startParts = rangeValues[0];
|
|
1507
|
-
let endParts = rangeValues.length > 1 ? rangeValues[1] : undefined;
|
|
1508
|
-
// Normalize reversed pairs so earlier date is start
|
|
1509
|
-
if (endParts && isAfter(startParts, endParts)) {
|
|
1510
|
-
const temp = startParts;
|
|
1511
|
-
startParts = endParts;
|
|
1512
|
-
endParts = temp;
|
|
1513
|
-
}
|
|
1514
|
-
this.activeParts = endParts ? { start: startParts, end: endParts } : { start: startParts };
|
|
1515
|
-
/**
|
|
1516
|
-
* Stay on the end date's month when it is already showing, such as
|
|
1517
|
-
* right after the user picks it, instead of jumping back to the start.
|
|
1518
|
-
*/
|
|
1519
|
-
navigateTo = startParts;
|
|
1520
|
-
if (endParts && endParts.month === workingParts.month && endParts.year === workingParts.year) {
|
|
1521
|
-
navigateTo = endParts;
|
|
1522
|
-
}
|
|
1523
|
-
}
|
|
1524
|
-
else {
|
|
1525
|
-
this.activeParts = [];
|
|
1526
|
-
navigateTo = Array.isArray(valueToProcess) ? valueToProcess[0] : valueToProcess;
|
|
1527
|
-
}
|
|
1528
|
-
const targetValue = clampDate(navigateTo, minParts, maxParts);
|
|
1529
|
-
const { month, day, year } = targetValue;
|
|
1530
|
-
const didChangeMonth = (month !== undefined && month !== workingParts.month) || (year !== undefined && year !== workingParts.year);
|
|
1531
|
-
const bodyIsVisible = el.classList.contains('datetime-ready');
|
|
1532
|
-
const { isGridStyle, showMonthAndYear } = this;
|
|
1533
|
-
if (isGridStyle && didChangeMonth && bodyIsVisible && !showMonthAndYear) {
|
|
1534
|
-
this.animateToDate(targetValue);
|
|
1535
|
-
}
|
|
1536
|
-
else {
|
|
1537
|
-
this.setWorkingParts({ month, day, year, hour: 0, minute: 0, ampm: 'am' });
|
|
1538
|
-
}
|
|
1539
|
-
return;
|
|
1540
|
-
}
|
|
1541
1398
|
/**
|
|
1542
1399
|
* If there are multiple values, clamp to the last one.
|
|
1543
1400
|
* This is because the last value is the one that the user
|
|
@@ -1699,27 +1556,6 @@ const Datetime = class {
|
|
|
1699
1556
|
const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
|
|
1700
1557
|
return hasDatePresentation && !preferWheel;
|
|
1701
1558
|
}
|
|
1702
|
-
get isMultipleMode() {
|
|
1703
|
-
return this.selectionMode === 'multiple' || (this.selectionMode === undefined && this.multiple);
|
|
1704
|
-
}
|
|
1705
|
-
get isRangeMode() {
|
|
1706
|
-
return this.selectionMode === 'range';
|
|
1707
|
-
}
|
|
1708
|
-
/**
|
|
1709
|
-
* Type guard: returns true if the given activeParts is a DatetimeRangeParts object.
|
|
1710
|
-
*/
|
|
1711
|
-
isRangeParts(parts) {
|
|
1712
|
-
return this.isRangeMode && parts !== null && typeof parts === 'object' && !Array.isArray(parts) && 'start' in parts;
|
|
1713
|
-
}
|
|
1714
|
-
/**
|
|
1715
|
-
* Returns the current range parts if in range mode, or undefined otherwise.
|
|
1716
|
-
*/
|
|
1717
|
-
get rangeParts() {
|
|
1718
|
-
if (this.isRangeParts(this.activeParts)) {
|
|
1719
|
-
return this.activeParts;
|
|
1720
|
-
}
|
|
1721
|
-
return undefined;
|
|
1722
|
-
}
|
|
1723
1559
|
yearValuesChanged() {
|
|
1724
1560
|
this.parsedYearValues = convertToArrayOfNumbers(this.yearValues);
|
|
1725
1561
|
}
|
|
@@ -1755,19 +1591,6 @@ const Datetime = class {
|
|
|
1755
1591
|
*/
|
|
1756
1592
|
async confirm(closeOverlay = false) {
|
|
1757
1593
|
const { isCalendarPicker, activeParts, preferWheel, workingParts } = this;
|
|
1758
|
-
/**
|
|
1759
|
-
* In range mode, only confirm when both start and end are selected.
|
|
1760
|
-
*/
|
|
1761
|
-
if (this.isRangeMode) {
|
|
1762
|
-
if (!this.isRangeParts(activeParts) || !activeParts.end) {
|
|
1763
|
-
return;
|
|
1764
|
-
}
|
|
1765
|
-
this.setValue([convertDataToISO(activeParts.start), convertDataToISO(activeParts.end)]);
|
|
1766
|
-
if (closeOverlay) {
|
|
1767
|
-
this.closeParentOverlay(CONFIRM_ROLE);
|
|
1768
|
-
}
|
|
1769
|
-
return;
|
|
1770
|
-
}
|
|
1771
1594
|
/**
|
|
1772
1595
|
* We only update the value if the presentation is not a calendar picker.
|
|
1773
1596
|
*/
|
|
@@ -1803,23 +1626,6 @@ const Datetime = class {
|
|
|
1803
1626
|
* @param startDate A valid [ISO-8601 string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#date_time_string_format) to reset the datetime state to.
|
|
1804
1627
|
*/
|
|
1805
1628
|
async reset(startDate) {
|
|
1806
|
-
if (this.isRangeMode) {
|
|
1807
|
-
/**
|
|
1808
|
-
* In range mode, reset clears the full range. If a startDate
|
|
1809
|
-
* is provided, the calendar navigates to that month without
|
|
1810
|
-
* selecting anything so the user begins a fresh selection.
|
|
1811
|
-
*/
|
|
1812
|
-
this.activeParts = [];
|
|
1813
|
-
this.hasUnconfirmedSelection = false;
|
|
1814
|
-
if (startDate) {
|
|
1815
|
-
const parsed = parseDate(startDate);
|
|
1816
|
-
if (parsed) {
|
|
1817
|
-
const target = Array.isArray(parsed) ? parsed[0] : parsed;
|
|
1818
|
-
this.setWorkingParts(clampDate(target, this.minParts, this.maxParts));
|
|
1819
|
-
}
|
|
1820
|
-
}
|
|
1821
|
-
return;
|
|
1822
|
-
}
|
|
1823
1629
|
this.processValue(startDate);
|
|
1824
1630
|
}
|
|
1825
1631
|
/**
|
|
@@ -2055,11 +1861,8 @@ const Datetime = class {
|
|
|
2055
1861
|
});
|
|
2056
1862
|
}
|
|
2057
1863
|
componentWillLoad() {
|
|
2058
|
-
const { el, formatOptions, highlightedDates, multiple,
|
|
2059
|
-
if (
|
|
2060
|
-
printIonWarning('[ion-datetime] - The "multiple" property is deprecated. Use selectionMode="multiple" instead.', el);
|
|
2061
|
-
}
|
|
2062
|
-
if (this.isMultipleMode) {
|
|
1864
|
+
const { el, formatOptions, highlightedDates, multiple, presentation, preferWheel } = this;
|
|
1865
|
+
if (multiple) {
|
|
2063
1866
|
if (presentation !== 'date') {
|
|
2064
1867
|
printIonWarning('[ion-datetime] - Multiple date selection is only supported for presentation="date".', el);
|
|
2065
1868
|
}
|
|
@@ -2067,17 +1870,6 @@ const Datetime = class {
|
|
|
2067
1870
|
printIonWarning('[ion-datetime] - Multiple date selection is not supported with preferWheel="true".', el);
|
|
2068
1871
|
}
|
|
2069
1872
|
}
|
|
2070
|
-
if (this.isRangeMode) {
|
|
2071
|
-
if (presentation !== 'date') {
|
|
2072
|
-
printIonWarning('[ion-datetime] - Range selection is only supported for presentation="date".', el);
|
|
2073
|
-
}
|
|
2074
|
-
if (preferWheel) {
|
|
2075
|
-
printIonWarning('[ion-datetime] - Range selection is not supported with preferWheel="true".', el);
|
|
2076
|
-
}
|
|
2077
|
-
}
|
|
2078
|
-
if (selectionMode !== undefined && multiple) {
|
|
2079
|
-
printIonWarning('[ion-datetime] - Both "selectionMode" and "multiple" are set. "selectionMode" takes precedence.', el);
|
|
2080
|
-
}
|
|
2081
1873
|
if (highlightedDates !== undefined) {
|
|
2082
1874
|
if (presentation !== 'date' && presentation !== 'date-time' && presentation !== 'time-date') {
|
|
2083
1875
|
printIonWarning('[ion-datetime] - The highlightedDates property is only supported with the date, date-time, and time-date presentations.', el);
|
|
@@ -2124,7 +1916,6 @@ const Datetime = class {
|
|
|
2124
1916
|
* are rendered independently of presentation.
|
|
2125
1917
|
*/
|
|
2126
1918
|
renderFooter() {
|
|
2127
|
-
const theme = getIonTheme(this);
|
|
2128
1919
|
const { disabled, readonly, showDefaultButtons, showClearButton } = this;
|
|
2129
1920
|
/**
|
|
2130
1921
|
* The cancel, clear, and confirm buttons
|
|
@@ -2132,13 +1923,6 @@ const Datetime = class {
|
|
|
2132
1923
|
* is disabled or readonly.
|
|
2133
1924
|
*/
|
|
2134
1925
|
const isButtonDisabled = disabled || readonly;
|
|
2135
|
-
/**
|
|
2136
|
-
* In range mode, the confirm button should be disabled until
|
|
2137
|
-
* both a start and end date have been selected.
|
|
2138
|
-
*/
|
|
2139
|
-
const isRangeIncomplete = this.isRangeMode && (!this.isRangeParts(this.activeParts) || !this.activeParts.end);
|
|
2140
|
-
const isConfirmDisabled = isButtonDisabled || isRangeIncomplete;
|
|
2141
|
-
const confirmFill = theme === 'ionic' ? 'solid' : undefined;
|
|
2142
1926
|
const hasSlottedButtons = this.el.querySelector('[slot="buttons"]') !== null;
|
|
2143
1927
|
if (!hasSlottedButtons && !showDefaultButtons && !showClearButton) {
|
|
2144
1928
|
return;
|
|
@@ -2157,7 +1941,7 @@ const Datetime = class {
|
|
|
2157
1941
|
return (h("div", { class: "datetime-footer" }, h("div", { class: "datetime-buttons" }, h("div", { class: {
|
|
2158
1942
|
['datetime-action-buttons']: true,
|
|
2159
1943
|
['has-clear-button']: this.showClearButton,
|
|
2160
|
-
} }, h("slot", { name: "buttons" }, showDefaultButtons && (h("ion-button", { id: "cancel-button", color: this.color, onClick: () => this.cancel(true), disabled: isButtonDisabled }, this.cancelText)), h("div", { class: "datetime-action-buttons-container" }, showClearButton && (h("ion-button", { id: "clear-button", color: this.color, onClick: () => clearButtonClick(), disabled: isButtonDisabled }, this.clearText)), showDefaultButtons && (h("ion-button", { id: "confirm-button",
|
|
1944
|
+
} }, h("slot", { name: "buttons" }, h("ion-buttons", null, showDefaultButtons && (h("ion-button", { id: "cancel-button", color: this.color, onClick: () => this.cancel(true), disabled: isButtonDisabled }, this.cancelText)), h("div", { class: "datetime-action-buttons-container" }, showClearButton && (h("ion-button", { id: "clear-button", color: this.color, onClick: () => clearButtonClick(), disabled: isButtonDisabled }, this.clearText)), showDefaultButtons && (h("ion-button", { id: "confirm-button", color: this.color, onClick: () => this.confirm(true), disabled: isButtonDisabled }, this.doneText)))))))));
|
|
2161
1945
|
}
|
|
2162
1946
|
/**
|
|
2163
1947
|
* Wheel picker render methods
|
|
@@ -2346,8 +2130,8 @@ const Datetime = class {
|
|
|
2346
2130
|
...this.workingParts,
|
|
2347
2131
|
month: ev.detail.value,
|
|
2348
2132
|
});
|
|
2349
|
-
// Month wheel is navigation-only in multi-select
|
|
2350
|
-
if (!this.
|
|
2133
|
+
// Month wheel is navigation-only in multi-select mode as a fix for https://github.com/ionic-team/ionic-framework/issues/29673
|
|
2134
|
+
if (!this.multiple) {
|
|
2351
2135
|
this.setActiveParts({
|
|
2352
2136
|
...activePart,
|
|
2353
2137
|
month: ev.detail.value,
|
|
@@ -2368,8 +2152,8 @@ const Datetime = class {
|
|
|
2368
2152
|
...this.workingParts,
|
|
2369
2153
|
year: ev.detail.value,
|
|
2370
2154
|
});
|
|
2371
|
-
// Year wheel is navigation-only in multi-select
|
|
2372
|
-
if (!this.
|
|
2155
|
+
// Year wheel is navigation-only in multi-select mode as a fix for https://github.com/ionic-team/ionic-framework/issues/29673
|
|
2156
|
+
if (!this.multiple) {
|
|
2373
2157
|
this.setActiveParts({
|
|
2374
2158
|
...activePart,
|
|
2375
2159
|
year: ev.detail.value,
|
|
@@ -2471,8 +2255,10 @@ const Datetime = class {
|
|
|
2471
2255
|
/**
|
|
2472
2256
|
* Grid Render Methods
|
|
2473
2257
|
*/
|
|
2474
|
-
renderCalendarHeader(
|
|
2475
|
-
const { disabled
|
|
2258
|
+
renderCalendarHeader(mode) {
|
|
2259
|
+
const { disabled } = this;
|
|
2260
|
+
const expandedIcon = mode === 'ios' ? chevronDown : caretUpSharp;
|
|
2261
|
+
const collapsedIcon = mode === 'ios' ? chevronForward : caretDownSharp;
|
|
2476
2262
|
const prevMonthDisabled = disabled || isPrevMonthDisabled(this.workingParts, this.minParts, this.maxParts);
|
|
2477
2263
|
const nextMonthDisabled = disabled || isNextMonthDisabled(this.workingParts, this.maxParts);
|
|
2478
2264
|
const hostDir = isRTL(this.el) ? 'rtl' : 'ltr';
|
|
@@ -2480,7 +2266,7 @@ const Datetime = class {
|
|
|
2480
2266
|
'calendar-month-year-toggle': true,
|
|
2481
2267
|
'ion-activatable': true,
|
|
2482
2268
|
'ion-focusable': true,
|
|
2483
|
-
}, part: "month-year-button", disabled: disabled, "aria-label": this.showMonthAndYear ? 'Hide year picker' : 'Show year picker', onClick: () => this.toggleMonthAndYearView() }, h("span", { id: "toggle-wrapper" }, getMonthAndYear(this.locale, this.workingParts),
|
|
2269
|
+
}, part: "month-year-button", disabled: disabled, "aria-label": this.showMonthAndYear ? 'Hide year picker' : 'Show year picker', onClick: () => this.toggleMonthAndYearView() }, h("span", { id: "toggle-wrapper" }, getMonthAndYear(this.locale, this.workingParts), h("ion-icon", { dir: hostDir, "aria-hidden": "true", icon: this.showMonthAndYear ? expandedIcon : collapsedIcon, lazy: false, flipRtl: true })), mode === 'md' && h("ion-ripple-effect", null))), h("div", { class: "calendar-next-prev" }, h("ion-buttons", null, h("ion-button", { "aria-label": "Previous month", disabled: prevMonthDisabled, onClick: () => this.prevMonth(), part: "navigation-button previous-button" }, h("ion-icon", { dir: hostDir, "aria-hidden": "true", slot: "icon-only", icon: chevronBack, lazy: false, flipRtl: true })), h("ion-button", { "aria-label": "Next month", disabled: nextMonthDisabled, onClick: () => this.nextMonth(), part: "navigation-button next-button" }, h("ion-icon", { dir: hostDir, "aria-hidden": "true", slot: "icon-only", icon: chevronForward, lazy: false, flipRtl: true }))))), h("div", { class: "calendar-days-of-week", "aria-hidden": "true", part: "calendar-days-of-week" }, getDaysOfWeek(this.locale, mode, this.firstDayOfWeek % 7).map((d) => {
|
|
2484
2270
|
return h("div", { class: "day-of-week" }, d);
|
|
2485
2271
|
}))));
|
|
2486
2272
|
}
|
|
@@ -2513,7 +2299,7 @@ const Datetime = class {
|
|
|
2513
2299
|
'calendar-month-disabled': !isWorkingMonth && swipeDisabled,
|
|
2514
2300
|
} }, h("div", { class: "calendar-month-grid" }, getDaysOfMonth(month, year, this.firstDayOfWeek % 7, this.showAdjacentDays).map((dateObject, index) => {
|
|
2515
2301
|
const { day, dayOfWeek, isAdjacentDay } = dateObject;
|
|
2516
|
-
const { el, highlightedDates, isDateEnabled, showAdjacentDays } = this;
|
|
2302
|
+
const { el, highlightedDates, isDateEnabled, multiple, showAdjacentDays } = this;
|
|
2517
2303
|
let _month = month;
|
|
2518
2304
|
let _year = year;
|
|
2519
2305
|
if (showAdjacentDays && isAdjacentDay && day !== null) {
|
|
@@ -2542,7 +2328,7 @@ const Datetime = class {
|
|
|
2542
2328
|
}
|
|
2543
2329
|
const referenceParts = { month: _month, day, year: _year, isAdjacentDay };
|
|
2544
2330
|
const isCalendarPadding = day === null;
|
|
2545
|
-
const { isActive, isToday, ariaLabel, ariaSelected, disabled: isDayDisabled,
|
|
2331
|
+
const { isActive, isToday, ariaLabel, ariaSelected, disabled: isDayDisabled, text, } = getCalendarDayState(this.locale, referenceParts, this.activeParts, this.todayParts, this.minParts, this.maxParts, this.parsedDayValues);
|
|
2546
2332
|
const dateIsoString = convertDataToISO(referenceParts);
|
|
2547
2333
|
let isCalDayDisabled = isCalMonthDisabled || isDayDisabled;
|
|
2548
2334
|
if (!isCalDayDisabled && isDateEnabled !== undefined) {
|
|
@@ -2565,57 +2351,24 @@ const Datetime = class {
|
|
|
2565
2351
|
*/
|
|
2566
2352
|
const isCalDayConstrained = isCalDayDisabled && isDatetimeDisabled;
|
|
2567
2353
|
const isButtonDisabled = isCalDayDisabled || isDatetimeDisabled;
|
|
2568
|
-
/**
|
|
2569
|
-
* Determine if this day is part of the range selection.
|
|
2570
|
-
* Range styling takes priority over highlightedDates.
|
|
2571
|
-
*/
|
|
2572
|
-
const isPartOfRange = isRangeStart || isRangeEnd || isInRange;
|
|
2573
2354
|
let dateStyle = undefined;
|
|
2574
2355
|
/**
|
|
2575
|
-
* Custom highlight styles should not override the style for selected dates
|
|
2576
|
-
*
|
|
2356
|
+
* Custom highlight styles should not override the style for selected dates,
|
|
2357
|
+
* nor apply to "filler days" at the start of the grid.
|
|
2577
2358
|
*/
|
|
2578
|
-
if (highlightedDates !== undefined && !isActive &&
|
|
2359
|
+
if (highlightedDates !== undefined && !isActive && day !== null && !isAdjacentDay) {
|
|
2579
2360
|
dateStyle = getHighlightStyles(highlightedDates, dateIsoString, el);
|
|
2580
2361
|
}
|
|
2581
2362
|
let dateParts = undefined;
|
|
2582
2363
|
// "Filler days" at the beginning of the grid should not get the calendar day
|
|
2583
2364
|
// CSS parts added to them
|
|
2584
2365
|
if (!isCalendarPadding && !isAdjacentDay) {
|
|
2585
|
-
dateParts = `calendar-day${isActive
|
|
2366
|
+
dateParts = `calendar-day${isActive ? ' active' : ''}${isToday ? ' today' : ''}${isCalDayDisabled ? ' disabled' : ''}`;
|
|
2586
2367
|
}
|
|
2587
2368
|
else if (isAdjacentDay) {
|
|
2588
|
-
|
|
2589
|
-
* Adjacent days skip 'active' and 'today' parts but still
|
|
2590
|
-
* include range parts so ::part() styling is consistent
|
|
2591
|
-
* with the visual range track rendering.
|
|
2592
|
-
*/
|
|
2593
|
-
dateParts = `calendar-day${isCalDayDisabled ? ' disabled' : ''}${isRangeStart ? ' range-start range-selection' : ''}${isRangeEnd ? ' range-end range-selection' : ''}${isInRange ? ' range-selection' : ''}`;
|
|
2594
|
-
}
|
|
2595
|
-
/**
|
|
2596
|
-
* Build the wrapper's shadow part attribute for range track styling.
|
|
2597
|
-
*/
|
|
2598
|
-
const hasCompleteRange = this.rangeParts?.end !== undefined;
|
|
2599
|
-
const wrapperParts = isPartOfRange && hasCompleteRange && !isCalendarPadding ? 'range-track' : undefined;
|
|
2600
|
-
/**
|
|
2601
|
-
* Build the aria-label for range mode accessibility.
|
|
2602
|
-
*/
|
|
2603
|
-
let rangeAriaLabel = ariaLabel;
|
|
2604
|
-
if (this.isRangeMode && ariaLabel) {
|
|
2605
|
-
if (isRangeStart) {
|
|
2606
|
-
rangeAriaLabel += `, ${this.startDateLabel}`;
|
|
2607
|
-
}
|
|
2608
|
-
if (isRangeEnd) {
|
|
2609
|
-
rangeAriaLabel += `, ${this.endDateLabel}`;
|
|
2610
|
-
}
|
|
2369
|
+
dateParts = `calendar-day${isCalDayDisabled ? ' disabled' : ''}`;
|
|
2611
2370
|
}
|
|
2612
|
-
return (h("div", { class: {
|
|
2613
|
-
'calendar-day-wrapper': true,
|
|
2614
|
-
// A start without an end is only the circle until the range is complete
|
|
2615
|
-
'calendar-day-wrapper-range-start': isRangeStart && this.rangeParts?.end !== undefined,
|
|
2616
|
-
'calendar-day-wrapper-in-range': isInRange,
|
|
2617
|
-
'calendar-day-wrapper-range-end': isRangeEnd,
|
|
2618
|
-
}, part: wrapperParts }, h("button", {
|
|
2371
|
+
return (h("div", { class: "calendar-day-wrapper" }, h("button", {
|
|
2619
2372
|
// We need to use !important for the inline styles here because
|
|
2620
2373
|
// otherwise the CSS shadow parts will override these styles.
|
|
2621
2374
|
// See https://github.com/WICG/webcomponents/issues/847
|
|
@@ -2631,45 +2384,28 @@ const Datetime = class {
|
|
|
2631
2384
|
}, tabindex: "-1", "data-day": day, "data-month": _month, "data-year": _year, "data-index": index, "data-day-of-week": dayOfWeek, disabled: isButtonDisabled, class: {
|
|
2632
2385
|
'calendar-day-padding': isCalendarPadding,
|
|
2633
2386
|
'calendar-day': true,
|
|
2634
|
-
'calendar-day-active': isActive
|
|
2387
|
+
'calendar-day-active': isActive,
|
|
2635
2388
|
'calendar-day-constrained': isCalDayConstrained,
|
|
2636
2389
|
'calendar-day-today': isToday,
|
|
2637
2390
|
'calendar-day-adjacent-day': isAdjacentDay,
|
|
2638
|
-
|
|
2639
|
-
'calendar-day-range-end': isRangeEnd,
|
|
2640
|
-
'calendar-day-in-range': isInRange,
|
|
2641
|
-
}, part: dateParts, "aria-hidden": isCalendarPadding ? 'true' : null, "aria-selected": isActive || isRangeStart || isRangeEnd ? 'true' : ariaSelected, "aria-label": rangeAriaLabel, onClick: () => {
|
|
2391
|
+
}, part: dateParts, "aria-hidden": isCalendarPadding ? 'true' : null, "aria-selected": ariaSelected, "aria-label": ariaLabel, onClick: () => {
|
|
2642
2392
|
if (isCalendarPadding) {
|
|
2643
2393
|
return;
|
|
2644
2394
|
}
|
|
2645
2395
|
if (isAdjacentDay) {
|
|
2646
2396
|
// The user selected a day outside the current month. Ignore this button, as the month will be re-rendered.
|
|
2647
2397
|
this.el.blur();
|
|
2648
|
-
|
|
2649
|
-
|
|
2650
|
-
|
|
2651
|
-
if (this.isRangeMode) {
|
|
2652
|
-
/**
|
|
2653
|
-
* Wait for the calendar to reach the adjacent month before
|
|
2654
|
-
* updating the range. setActiveParts also moves workingParts,
|
|
2655
|
-
* which would make the scroll overshoot by a month.
|
|
2656
|
-
*/
|
|
2657
|
-
this.animateToDate(referenceParts).then(() => this.setActiveParts(referenceParts));
|
|
2658
|
-
}
|
|
2659
|
-
else {
|
|
2660
|
-
this.animateToDate(referenceParts);
|
|
2661
|
-
this.confirm();
|
|
2662
|
-
}
|
|
2398
|
+
this.activeParts = { ...activePart, ...referenceParts };
|
|
2399
|
+
this.animateToDate(referenceParts);
|
|
2400
|
+
this.confirm();
|
|
2663
2401
|
}
|
|
2664
2402
|
else {
|
|
2665
2403
|
this.setWorkingParts({
|
|
2666
2404
|
...this.workingParts,
|
|
2667
2405
|
...referenceParts,
|
|
2668
2406
|
});
|
|
2669
|
-
|
|
2670
|
-
|
|
2671
|
-
}
|
|
2672
|
-
else if (this.isMultipleMode) {
|
|
2407
|
+
// Multiple only needs date info so we can wipe out other fields like time.
|
|
2408
|
+
if (multiple) {
|
|
2673
2409
|
this.setActiveParts(referenceParts, isActive);
|
|
2674
2410
|
}
|
|
2675
2411
|
else {
|
|
@@ -2688,8 +2424,8 @@ const Datetime = class {
|
|
|
2688
2424
|
return this.renderMonth(month, year);
|
|
2689
2425
|
})));
|
|
2690
2426
|
}
|
|
2691
|
-
renderCalendar(
|
|
2692
|
-
return (h("div", { class: "datetime-calendar", key: "datetime-calendar" }, this.renderCalendarHeader(
|
|
2427
|
+
renderCalendar(mode) {
|
|
2428
|
+
return (h("div", { class: "datetime-calendar", key: "datetime-calendar" }, this.renderCalendarHeader(mode), this.renderCalendarBody()));
|
|
2693
2429
|
}
|
|
2694
2430
|
renderTimeLabel() {
|
|
2695
2431
|
const hasSlottedTimeLabel = this.el.querySelector('[slot="time-label"]') !== null;
|
|
@@ -2742,23 +2478,10 @@ const Datetime = class {
|
|
|
2742
2478
|
];
|
|
2743
2479
|
}
|
|
2744
2480
|
getHeaderSelectedDateText() {
|
|
2745
|
-
const { activeParts, formatOptions, titleSelectedDatesFormatter } = this;
|
|
2481
|
+
const { activeParts, formatOptions, multiple, titleSelectedDatesFormatter } = this;
|
|
2746
2482
|
const isArray = Array.isArray(activeParts);
|
|
2747
|
-
const dateFormatOptions = formatOptions?.date ?? { weekday: 'short', month: 'short', day: 'numeric' };
|
|
2748
2483
|
let headerText;
|
|
2749
|
-
if (
|
|
2750
|
-
headerText = this.getRangeHeaderText(formatOptions?.date ?? { month: 'short', day: 'numeric' });
|
|
2751
|
-
if (titleSelectedDatesFormatter !== undefined) {
|
|
2752
|
-
try {
|
|
2753
|
-
const rangeValues = this.getRangeValueArray();
|
|
2754
|
-
headerText = titleSelectedDatesFormatter(rangeValues);
|
|
2755
|
-
}
|
|
2756
|
-
catch (e) {
|
|
2757
|
-
printIonError('[ion-datetime] - Exception in provided `titleSelectedDatesFormatter`:', e);
|
|
2758
|
-
}
|
|
2759
|
-
}
|
|
2760
|
-
}
|
|
2761
|
-
else if (this.isMultipleMode && isArray && activeParts.length !== 1) {
|
|
2484
|
+
if (multiple && isArray && activeParts.length !== 1) {
|
|
2762
2485
|
headerText = `${activeParts.length} days`; // default/fallback for multiple selection
|
|
2763
2486
|
if (titleSelectedDatesFormatter !== undefined) {
|
|
2764
2487
|
try {
|
|
@@ -2771,37 +2494,10 @@ const Datetime = class {
|
|
|
2771
2494
|
}
|
|
2772
2495
|
else {
|
|
2773
2496
|
// for exactly 1 day selected (multiple set or not), show a formatted version of that
|
|
2774
|
-
headerText = getLocalizedDateTime(this.locale, this.getActivePartsWithFallback(),
|
|
2497
|
+
headerText = getLocalizedDateTime(this.locale, this.getActivePartsWithFallback(), formatOptions?.date ?? { weekday: 'short', month: 'short', day: 'numeric' });
|
|
2775
2498
|
}
|
|
2776
2499
|
return headerText;
|
|
2777
2500
|
}
|
|
2778
|
-
/**
|
|
2779
|
-
* Returns the formatted range header text.
|
|
2780
|
-
* Shows "Start date - End date" with placeholders from startDateLabel/endDateLabel.
|
|
2781
|
-
*/
|
|
2782
|
-
getRangeHeaderText(dateFormatOptions) {
|
|
2783
|
-
const range = this.rangeParts;
|
|
2784
|
-
if (!range) {
|
|
2785
|
-
return `${this.startDateLabel} - ${this.endDateLabel}`;
|
|
2786
|
-
}
|
|
2787
|
-
const startText = getLocalizedDateTime(this.locale, range.start, dateFormatOptions);
|
|
2788
|
-
const endText = range.end ? getLocalizedDateTime(this.locale, range.end, dateFormatOptions) : this.endDateLabel;
|
|
2789
|
-
return `${startText} - ${endText}`;
|
|
2790
|
-
}
|
|
2791
|
-
/**
|
|
2792
|
-
* Returns the current range value as an ISO string array for
|
|
2793
|
-
* titleSelectedDatesFormatter and ionChange.
|
|
2794
|
-
*/
|
|
2795
|
-
getRangeValueArray() {
|
|
2796
|
-
const range = this.rangeParts;
|
|
2797
|
-
if (!range) {
|
|
2798
|
-
return [];
|
|
2799
|
-
}
|
|
2800
|
-
if (!range.end) {
|
|
2801
|
-
return [convertDataToISO(range.start)];
|
|
2802
|
-
}
|
|
2803
|
-
return [convertDataToISO(range.start), convertDataToISO(range.end)];
|
|
2804
|
-
}
|
|
2805
2501
|
renderHeader(showExpandedHeader = true) {
|
|
2806
2502
|
const hasSlottedTitle = this.el.querySelector('[slot="title"]') !== null;
|
|
2807
2503
|
if (!hasSlottedTitle && !this.showDefaultTitle) {
|
|
@@ -2836,7 +2532,7 @@ const Datetime = class {
|
|
|
2836
2532
|
* Render entry point
|
|
2837
2533
|
* All presentation types are rendered from here.
|
|
2838
2534
|
*/
|
|
2839
|
-
renderDatetime(
|
|
2535
|
+
renderDatetime(mode) {
|
|
2840
2536
|
const { presentation, preferWheel } = this;
|
|
2841
2537
|
/**
|
|
2842
2538
|
* Certain presentation types have separate grid and wheel displays.
|
|
@@ -2850,7 +2546,7 @@ const Datetime = class {
|
|
|
2850
2546
|
case 'date-time':
|
|
2851
2547
|
return [
|
|
2852
2548
|
this.renderHeader(),
|
|
2853
|
-
this.renderCalendar(
|
|
2549
|
+
this.renderCalendar(mode),
|
|
2854
2550
|
this.renderCalendarViewMonthYearPicker(),
|
|
2855
2551
|
this.renderTime(),
|
|
2856
2552
|
this.renderFooter(),
|
|
@@ -2859,7 +2555,7 @@ const Datetime = class {
|
|
|
2859
2555
|
return [
|
|
2860
2556
|
this.renderHeader(),
|
|
2861
2557
|
this.renderTime(),
|
|
2862
|
-
this.renderCalendar(
|
|
2558
|
+
this.renderCalendar(mode),
|
|
2863
2559
|
this.renderCalendarViewMonthYearPicker(),
|
|
2864
2560
|
this.renderFooter(),
|
|
2865
2561
|
];
|
|
@@ -2872,62 +2568,24 @@ const Datetime = class {
|
|
|
2872
2568
|
default:
|
|
2873
2569
|
return [
|
|
2874
2570
|
this.renderHeader(),
|
|
2875
|
-
this.renderCalendar(
|
|
2571
|
+
this.renderCalendar(mode),
|
|
2876
2572
|
this.renderCalendarViewMonthYearPicker(),
|
|
2877
2573
|
this.renderFooter(),
|
|
2878
2574
|
];
|
|
2879
2575
|
}
|
|
2880
2576
|
}
|
|
2881
|
-
/**
|
|
2882
|
-
* Get the icon to use for the next icon.
|
|
2883
|
-
* Use the icon set in the config.
|
|
2884
|
-
* If no icon is set in the config, use the default icon.
|
|
2885
|
-
*/
|
|
2886
|
-
get datetimeNextIcon() {
|
|
2887
|
-
return config.get('datetimeNextIcon', chevronForward);
|
|
2888
|
-
}
|
|
2889
|
-
/**
|
|
2890
|
-
* Get the icon to use for the previous icon.
|
|
2891
|
-
* Use the icon set in the config.
|
|
2892
|
-
* If no icon is set in the config, use the default icon.
|
|
2893
|
-
*/
|
|
2894
|
-
get datetimePreviousIcon() {
|
|
2895
|
-
return config.get('datetimePreviousIcon', chevronBack);
|
|
2896
|
-
}
|
|
2897
|
-
/**
|
|
2898
|
-
* Get the icon to use for the show month and year icon.
|
|
2899
|
-
* Use the icon set in the config.
|
|
2900
|
-
* If no icon is set in the config, use the default icon.
|
|
2901
|
-
*/
|
|
2902
|
-
get datetimeCollapsedIcon() {
|
|
2903
|
-
// Determine the theme and map to the default icon
|
|
2904
|
-
const theme = getIonTheme(this);
|
|
2905
|
-
const defaultIcon = theme === 'ios' ? chevronForward : caretDownSharp;
|
|
2906
|
-
return config.get('datetimeCollapsedIcon', defaultIcon);
|
|
2907
|
-
}
|
|
2908
|
-
/**
|
|
2909
|
-
* Get the icon to use for the hide month and year icon.
|
|
2910
|
-
* Use the icon set in the config.
|
|
2911
|
-
* If no icon is set in the config, use the default icon.
|
|
2912
|
-
*/
|
|
2913
|
-
get datetimeExpandedIcon() {
|
|
2914
|
-
// Determine the theme and map to the default icon
|
|
2915
|
-
const theme = getIonTheme(this);
|
|
2916
|
-
const defaultIcon = theme === 'ios' ? chevronDown : caretUpSharp;
|
|
2917
|
-
return config.get('datetimeExpandedIcon', defaultIcon);
|
|
2918
|
-
}
|
|
2919
2577
|
render() {
|
|
2920
2578
|
const { name, value, disabled, el, color, readonly, showMonthAndYear, preferWheel, presentation, size, isGridStyle, } = this;
|
|
2921
|
-
const
|
|
2579
|
+
const mode = getIonMode(this);
|
|
2922
2580
|
const isMonthAndYearPresentation = presentation === 'year' || presentation === 'month' || presentation === 'month-year';
|
|
2923
2581
|
const shouldShowMonthAndYear = showMonthAndYear || isMonthAndYearPresentation;
|
|
2924
2582
|
const monthYearPickerOpen = showMonthAndYear && !isMonthAndYearPresentation;
|
|
2925
2583
|
const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
|
|
2926
2584
|
const hasWheelVariant = hasDatePresentation && preferWheel;
|
|
2927
2585
|
renderHiddenInput(true, el, name, formatValue(value), disabled);
|
|
2928
|
-
return (h(Host, { key: '
|
|
2586
|
+
return (h(Host, { key: '465c9c22bccabc4a82ea4054c536c6086b85ddf9', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: {
|
|
2929
2587
|
...createColorClasses(color, {
|
|
2930
|
-
[
|
|
2588
|
+
[mode]: true,
|
|
2931
2589
|
['datetime-readonly']: readonly,
|
|
2932
2590
|
['datetime-disabled']: disabled,
|
|
2933
2591
|
'show-month-and-year': shouldShowMonthAndYear,
|
|
@@ -2936,9 +2594,8 @@ const Datetime = class {
|
|
|
2936
2594
|
[`datetime-size-${size}`]: true,
|
|
2937
2595
|
[`datetime-prefer-wheel`]: hasWheelVariant,
|
|
2938
2596
|
[`datetime-grid`]: isGridStyle,
|
|
2939
|
-
[`datetime-range`]: this.isRangeMode,
|
|
2940
2597
|
}),
|
|
2941
|
-
} }, h("div", { key: '
|
|
2598
|
+
} }, h("div", { key: '9732b003440a0ca23520bc8a09e73125d88fd565', class: "intersection-tracker", ref: (el) => (this.intersectionTrackerRef = el) }), this.renderDatetime(mode)));
|
|
2942
2599
|
}
|
|
2943
2600
|
get el() { return getElement(this); }
|
|
2944
2601
|
static get watchers() { return {
|
|
@@ -2984,7 +2641,6 @@ const WHEEL_PART = 'wheel';
|
|
|
2984
2641
|
const WHEEL_ITEM_PART = 'wheel-item';
|
|
2985
2642
|
const WHEEL_ITEM_ACTIVE_PART = `active`;
|
|
2986
2643
|
Datetime.style = {
|
|
2987
|
-
ionic: datetimeIonicCss(),
|
|
2988
2644
|
ios: datetimeIosCss(),
|
|
2989
2645
|
md: datetimeMdCss()
|
|
2990
2646
|
};
|