@ionic/core 7.7.5 → 7.8.1-dev.11710449785.14ebd5a0
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/data.js +23 -38
- package/components/ion-datetime-button.js +11 -10
- package/components/ion-datetime.js +75 -12
- package/components/ion-fab-button.js +2 -2
- package/components/ion-fab-list.js +2 -2
- package/components/ion-fab.js +2 -2
- package/components/ion-footer.js +2 -2
- package/components/ion-grid.js +2 -2
- package/components/ion-header.js +2 -2
- package/components/ion-img.js +1 -1
- package/components/ion-infinite-scroll-content.js +2 -2
- package/components/ion-infinite-scroll.js +1 -1
- package/components/ion-item-divider.js +2 -2
- package/components/ion-item-group.js +1 -1
- package/components/ion-item-option.js +2 -2
- package/components/ion-item-options.js +1 -1
- package/components/ion-item-sliding.js +1 -1
- package/components/ion-loading.js +2 -2
- package/components/ion-menu-button.js +2 -2
- package/components/ion-menu-toggle.js +2 -2
- package/components/ion-menu.js +2 -2
- package/components/ion-modal.js +3 -3
- package/components/ion-nav-link.js +1 -1
- package/components/ion-nav.js +1 -1
- package/components/ion-picker.js +2 -2
- package/components/ion-progress-bar.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-router-link.js +2 -2
- package/components/ion-router-outlet.js +1 -1
- package/components/ion-row.js +1 -1
- package/components/ion-searchbar.js +34 -5
- package/components/ion-segment-button.js +3 -3
- package/components/ion-segment.js +2 -2
- package/components/ion-select-option.js +1 -1
- package/components/ion-skeleton-text.js +2 -2
- package/components/ion-split-pane.js +2 -2
- package/components/ion-tab-bar.js +2 -2
- package/components/ion-tab-button.js +2 -2
- package/components/ion-tab.js +2 -2
- package/components/ion-tabs.js +1 -1
- package/components/ion-text.js +2 -2
- package/components/ion-thumbnail.js +1 -1
- package/components/ion-title.js +2 -2
- package/components/ion-toast.js +2 -2
- package/components/ion-toolbar.js +2 -2
- package/components/label.js +1 -1
- package/components/list-header.js +2 -2
- package/components/list.js +1 -1
- package/components/note.js +2 -2
- package/components/picker-column-internal.js +8 -4
- package/components/picker-column.js +2 -2
- package/components/picker-internal.js +2 -2
- package/components/popover.js +2 -2
- package/components/radio-group.js +1 -1
- package/components/ripple-effect.js +1 -1
- package/components/select-popover.js +1 -1
- package/components/spinner.js +1 -1
- package/dist/cjs/{data-a5109f09.js → data-4487a815.js} +22 -39
- package/dist/cjs/ion-app_8.cjs.entry.js +9 -9
- package/dist/cjs/ion-avatar_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-col_3.cjs.entry.js +3 -3
- package/dist/cjs/ion-datetime-button.cjs.entry.js +11 -10
- package/dist/cjs/ion-datetime_3.cjs.entry.js +76 -16
- package/dist/cjs/ion-fab_3.cjs.entry.js +6 -6
- package/dist/cjs/ion-img.cjs.entry.js +1 -1
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-item_8.cjs.entry.js +11 -11
- package/dist/cjs/ion-loading.cjs.entry.js +2 -2
- package/dist/cjs/ion-menu_3.cjs.entry.js +6 -6
- package/dist/cjs/ion-modal.cjs.entry.js +3 -3
- package/dist/cjs/ion-nav_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-picker-column-internal.cjs.entry.js +8 -4
- package/dist/cjs/ion-picker-internal.cjs.entry.js +2 -2
- package/dist/cjs/ion-popover.cjs.entry.js +2 -2
- package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/ion-radio_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-refresher_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-reorder_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +1 -1
- package/dist/cjs/ion-route_4.cjs.entry.js +2 -2
- package/dist/cjs/ion-searchbar.cjs.entry.js +28 -4
- package/dist/cjs/ion-segment_2.cjs.entry.js +5 -5
- package/dist/cjs/ion-select_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-spinner.cjs.entry.js +1 -1
- package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-text.cjs.entry.js +2 -2
- package/dist/cjs/ion-toast.cjs.entry.js +2 -2
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/alert/test/a11y/alert.e2e.js +4 -0
- package/dist/collection/components/datetime/datetime.js +56 -12
- package/dist/collection/components/datetime/test/basic/datetime.e2e.js +77 -0
- package/dist/collection/components/datetime/test/format.spec.js +65 -15
- package/dist/collection/components/datetime/utils/format.js +24 -37
- package/dist/collection/components/datetime/utils/validate.js +45 -0
- package/dist/collection/components/datetime-button/datetime-button.js +11 -10
- package/dist/collection/components/datetime-button/test/basic/datetime-button.e2e.js +65 -0
- package/dist/collection/components/fab/fab.js +2 -2
- package/dist/collection/components/fab-button/fab-button.js +2 -2
- package/dist/collection/components/fab-list/fab-list.js +2 -2
- package/dist/collection/components/footer/footer.js +2 -2
- package/dist/collection/components/grid/grid.js +2 -2
- package/dist/collection/components/header/header.js +2 -2
- package/dist/collection/components/img/img.js +1 -1
- package/dist/collection/components/infinite-scroll/infinite-scroll.js +1 -1
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +2 -2
- package/dist/collection/components/item-divider/item-divider.js +2 -2
- package/dist/collection/components/item-group/item-group.js +1 -1
- package/dist/collection/components/item-option/item-option.js +2 -2
- package/dist/collection/components/item-options/item-options.js +1 -1
- package/dist/collection/components/item-sliding/item-sliding.js +1 -1
- package/dist/collection/components/label/label.js +1 -1
- package/dist/collection/components/list/list.js +1 -1
- package/dist/collection/components/list-header/list-header.js +2 -2
- package/dist/collection/components/loading/loading.js +2 -2
- package/dist/collection/components/menu/menu.js +2 -2
- package/dist/collection/components/menu-button/menu-button.js +2 -2
- package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
- package/dist/collection/components/modal/modal.js +3 -3
- package/dist/collection/components/nav/nav.js +1 -1
- package/dist/collection/components/nav-link/nav-link.js +1 -1
- package/dist/collection/components/note/note.js +2 -2
- package/dist/collection/components/picker/picker.js +2 -2
- package/dist/collection/components/picker-column/picker-column.js +2 -2
- package/dist/collection/components/picker-column-internal/picker-column-internal.js +8 -4
- package/dist/collection/components/picker-internal/picker-internal.js +2 -2
- package/dist/collection/components/popover/popover.js +2 -2
- package/dist/collection/components/progress-bar/progress-bar.js +1 -1
- package/dist/collection/components/radio-group/radio-group.js +1 -1
- package/dist/collection/components/refresher/refresher.js +1 -1
- package/dist/collection/components/refresher-content/refresher-content.js +1 -1
- package/dist/collection/components/reorder/reorder.js +1 -1
- package/dist/collection/components/reorder-group/reorder-group.js +1 -1
- package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
- package/dist/collection/components/router-link/router-link.js +2 -2
- package/dist/collection/components/router-outlet/router-outlet.js +1 -1
- package/dist/collection/components/row/row.js +1 -1
- package/dist/collection/components/searchbar/searchbar.js +84 -5
- package/dist/collection/components/searchbar/test/searchbar.spec.js +20 -2
- package/dist/collection/components/segment/segment.js +2 -2
- package/dist/collection/components/segment-button/segment-button.js +3 -3
- package/dist/collection/components/select-option/select-option.js +1 -1
- package/dist/collection/components/select-popover/select-popover.js +1 -1
- package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
- package/dist/collection/components/spinner/spinner.js +1 -1
- package/dist/collection/components/split-pane/split-pane.js +2 -2
- package/dist/collection/components/tab/tab.js +2 -2
- package/dist/collection/components/tab-bar/tab-bar.js +2 -2
- package/dist/collection/components/tab-button/tab-button.js +2 -2
- package/dist/collection/components/tabs/tabs.js +1 -1
- package/dist/collection/components/text/text.js +2 -2
- package/dist/collection/components/thumbnail/thumbnail.js +1 -1
- package/dist/collection/components/title/title.js +2 -2
- package/dist/collection/components/toast/toast.js +2 -2
- package/dist/collection/components/toggle/toggle.js +1 -1
- package/dist/collection/components/toolbar/toolbar.js +2 -2
- package/dist/docs.json +114 -2
- package/dist/esm/{data-0f3ab200.js → data-bb424ba8.js} +23 -38
- package/dist/esm/ion-app_8.entry.js +9 -9
- package/dist/esm/ion-avatar_3.entry.js +1 -1
- package/dist/esm/ion-col_3.entry.js +3 -3
- package/dist/esm/ion-datetime-button.entry.js +11 -10
- package/dist/esm/ion-datetime_3.entry.js +76 -16
- package/dist/esm/ion-fab_3.entry.js +6 -6
- package/dist/esm/ion-img.entry.js +1 -1
- package/dist/esm/ion-infinite-scroll_2.entry.js +3 -3
- package/dist/esm/ion-item-option_3.entry.js +4 -4
- package/dist/esm/ion-item_8.entry.js +11 -11
- package/dist/esm/ion-loading.entry.js +2 -2
- package/dist/esm/ion-menu_3.entry.js +6 -6
- package/dist/esm/ion-modal.entry.js +3 -3
- package/dist/esm/ion-nav_2.entry.js +2 -2
- package/dist/esm/ion-picker-column-internal.entry.js +8 -4
- package/dist/esm/ion-picker-internal.entry.js +2 -2
- package/dist/esm/ion-popover.entry.js +2 -2
- package/dist/esm/ion-progress-bar.entry.js +1 -1
- package/dist/esm/ion-radio_2.entry.js +1 -1
- package/dist/esm/ion-refresher_2.entry.js +2 -2
- package/dist/esm/ion-reorder_2.entry.js +2 -2
- package/dist/esm/ion-ripple-effect.entry.js +1 -1
- package/dist/esm/ion-route_4.entry.js +2 -2
- package/dist/esm/ion-searchbar.entry.js +29 -5
- package/dist/esm/ion-segment_2.entry.js +5 -5
- package/dist/esm/ion-select_3.entry.js +2 -2
- package/dist/esm/ion-spinner.entry.js +1 -1
- package/dist/esm/ion-split-pane.entry.js +2 -2
- package/dist/esm/ion-tab-bar_2.entry.js +4 -4
- package/dist/esm/ion-tab_2.entry.js +3 -3
- package/dist/esm/ion-text.entry.js +2 -2
- package/dist/esm/ion-toast.entry.js +2 -2
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm-es5/data-bb424ba8.js +4 -0
- package/dist/esm-es5/ion-app_8.entry.js +1 -1
- package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
- package/dist/esm-es5/ion-col_3.entry.js +1 -1
- package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
- package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
- package/dist/esm-es5/ion-fab_3.entry.js +1 -1
- package/dist/esm-es5/ion-img.entry.js +1 -1
- package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
- package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
- package/dist/esm-es5/ion-item_8.entry.js +1 -1
- package/dist/esm-es5/ion-loading.entry.js +1 -1
- package/dist/esm-es5/ion-menu_3.entry.js +1 -1
- package/dist/esm-es5/ion-modal.entry.js +1 -1
- package/dist/esm-es5/ion-nav_2.entry.js +1 -1
- package/dist/esm-es5/ion-picker-column-internal.entry.js +1 -1
- package/dist/esm-es5/ion-picker-internal.entry.js +1 -1
- package/dist/esm-es5/ion-popover.entry.js +1 -1
- package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
- package/dist/esm-es5/ion-radio_2.entry.js +1 -1
- package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
- package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
- package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
- package/dist/esm-es5/ion-route_4.entry.js +1 -1
- package/dist/esm-es5/ion-searchbar.entry.js +1 -1
- package/dist/esm-es5/ion-segment_2.entry.js +1 -1
- package/dist/esm-es5/ion-select_3.entry.js +1 -1
- package/dist/esm-es5/ion-spinner.entry.js +1 -1
- package/dist/esm-es5/ion-split-pane.entry.js +1 -1
- package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
- package/dist/esm-es5/ion-tab_2.entry.js +1 -1
- package/dist/esm-es5/ion-text.entry.js +1 -1
- package/dist/esm-es5/ion-toast.entry.js +1 -1
- package/dist/esm-es5/ionic.js +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/html.html-data.json +13 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-08a5d8eb.entry.js → p-0188824c.entry.js} +1 -1
- package/dist/ionic/{p-ba385465.system.entry.js → p-079817f9.system.entry.js} +1 -1
- package/dist/ionic/{p-b13b7128.system.entry.js → p-0971ee6d.system.entry.js} +1 -1
- package/dist/ionic/{p-db6a5af3.system.entry.js → p-0dbbf52a.system.entry.js} +1 -1
- package/dist/ionic/{p-f5bc27d6.system.entry.js → p-0eb111e7.system.entry.js} +1 -1
- package/dist/ionic/{p-996922b4.system.entry.js → p-0ef05e5d.system.entry.js} +1 -1
- package/dist/ionic/{p-86438241.system.entry.js → p-0fa9c8f7.system.entry.js} +1 -1
- package/dist/ionic/{p-8f466a2c.system.entry.js → p-11d480a7.system.entry.js} +1 -1
- package/dist/ionic/{p-f9f7b24a.system.entry.js → p-1561982b.system.entry.js} +1 -1
- package/dist/ionic/{p-45ea497f.entry.js → p-15ced5aa.entry.js} +1 -1
- package/dist/ionic/p-2055bdba.entry.js +4 -0
- package/dist/ionic/{p-cf88a096.system.entry.js → p-25f56cd7.system.entry.js} +1 -1
- package/dist/ionic/{p-6a0a3e18.system.entry.js → p-2791b018.system.entry.js} +1 -1
- package/dist/ionic/{p-e59803ca.entry.js → p-2b78245e.entry.js} +1 -1
- package/dist/ionic/{p-72c8ca65.system.entry.js → p-2bc25d50.system.entry.js} +2 -2
- package/dist/ionic/{p-479402e1.entry.js → p-2c94053b.entry.js} +1 -1
- package/dist/ionic/{p-9074a84e.system.entry.js → p-2d88f64e.system.entry.js} +1 -1
- package/dist/ionic/p-2fec06f2.entry.js +4 -0
- package/dist/ionic/p-327f8d66.entry.js +4 -0
- package/dist/ionic/p-3789920e.js +4 -0
- package/dist/ionic/{p-c7d8cec2.entry.js → p-3b85bb44.entry.js} +1 -1
- package/dist/ionic/{p-059fcb53.system.entry.js → p-43438ce1.system.entry.js} +2 -2
- package/dist/ionic/p-45362829.system.entry.js +4 -0
- package/dist/ionic/p-46ca8bb1.entry.js +4 -0
- package/dist/ionic/{p-08410e29.system.entry.js → p-4e74f845.system.entry.js} +1 -1
- package/dist/ionic/{p-7b809cc0.system.entry.js → p-4f73a163.system.entry.js} +1 -1
- package/dist/ionic/{p-345e2dac.system.entry.js → p-51dd4f12.system.entry.js} +1 -1
- package/dist/ionic/{p-5d8fca58.entry.js → p-51ebe7c6.entry.js} +1 -1
- package/dist/ionic/{p-cfe767f1.entry.js → p-526258be.entry.js} +1 -1
- package/dist/ionic/{p-fef4907e.system.entry.js → p-58b335fd.system.entry.js} +1 -1
- package/dist/ionic/{p-3377236e.entry.js → p-5e3e64b5.entry.js} +1 -1
- package/dist/ionic/{p-b9b8e462.system.entry.js → p-5f3fc112.system.entry.js} +1 -1
- package/dist/ionic/p-60c9fd9e.system.js +1 -1
- package/dist/ionic/{p-3ca0c7f2.entry.js → p-62f36e54.entry.js} +1 -1
- package/dist/ionic/{p-e8d46a2e.entry.js → p-65409f36.entry.js} +1 -1
- package/dist/ionic/p-6a110cb2.entry.js +4 -0
- package/dist/ionic/p-6ec0c1ee.system.entry.js +4 -0
- package/dist/ionic/{p-4830fae8.system.entry.js → p-7126abb8.system.entry.js} +1 -1
- package/dist/ionic/{p-b0ccd173.system.entry.js → p-7186eb03.system.entry.js} +1 -1
- package/dist/ionic/{p-6b5630b9.system.entry.js → p-7c91266e.system.entry.js} +1 -1
- package/dist/ionic/{p-f5dce0c6.entry.js → p-80808af6.entry.js} +1 -1
- package/dist/ionic/p-8a1b0abb.system.js +4 -0
- package/dist/ionic/{p-33dd4d0b.system.entry.js → p-8a21c7b4.system.entry.js} +1 -1
- package/dist/ionic/{p-09fc100a.entry.js → p-8be61e52.entry.js} +1 -1
- package/dist/ionic/{p-e4bf5d87.system.entry.js → p-8e127a08.system.entry.js} +1 -1
- package/dist/ionic/{p-0e7c8334.system.entry.js → p-966a5ae4.system.entry.js} +1 -1
- package/dist/ionic/{p-ae3aeb39.entry.js → p-98bac954.entry.js} +1 -1
- package/dist/ionic/{p-231a3636.system.entry.js → p-a53d569a.system.entry.js} +1 -1
- package/dist/ionic/{p-3270e211.entry.js → p-a7959307.entry.js} +1 -1
- package/dist/ionic/{p-7f865669.entry.js → p-ab7c79d9.entry.js} +1 -1
- package/dist/ionic/p-b7aec03b.entry.js +4 -0
- package/dist/ionic/p-bbb655e2.system.entry.js +4 -0
- package/dist/ionic/{p-ca935c03.entry.js → p-bc68a14a.entry.js} +1 -1
- package/dist/ionic/{p-36a80e5c.entry.js → p-c0d7aace.entry.js} +1 -1
- package/dist/ionic/{p-04721936.system.entry.js → p-c1a58ab3.system.entry.js} +1 -1
- package/dist/ionic/{p-84283745.entry.js → p-c63a69cd.entry.js} +1 -1
- package/dist/ionic/{p-8ce6d551.entry.js → p-c99bfffe.entry.js} +1 -1
- package/dist/ionic/{p-c6f9f608.entry.js → p-d637b857.entry.js} +1 -1
- package/dist/ionic/{p-09b047e0.entry.js → p-dd5a925f.entry.js} +1 -1
- package/dist/ionic/{p-c711b464.entry.js → p-deb09b58.entry.js} +1 -1
- package/dist/ionic/{p-95c2fa04.entry.js → p-e2236935.entry.js} +1 -1
- package/dist/ionic/{p-abcc9680.entry.js → p-e631799d.entry.js} +1 -1
- package/dist/ionic/{p-e155f315.system.entry.js → p-e6c115f6.system.entry.js} +1 -1
- package/dist/ionic/{p-8c74bd0e.system.entry.js → p-e7bdaac8.system.entry.js} +2 -2
- package/dist/ionic/p-f520f6a5.entry.js +4 -0
- package/dist/ionic/p-f89380a5.system.entry.js +4 -0
- package/dist/ionic/p-f98bd898.entry.js +4 -0
- package/dist/types/components/datetime/datetime-interface.d.ts +10 -0
- package/dist/types/components/datetime/datetime.d.ts +10 -1
- package/dist/types/components/datetime/utils/format.d.ts +7 -13
- package/dist/types/components/datetime/utils/validate.d.ts +8 -0
- package/dist/types/components/searchbar/searchbar.d.ts +38 -0
- package/dist/types/components/toggle/toggle.d.ts +1 -1
- package/dist/types/components.d.ts +36 -4
- package/hydrate/index.js +230 -154
- package/package.json +1 -1
- package/dist/esm-es5/data-0f3ab200.js +0 -4
- package/dist/ionic/p-1522bf28.entry.js +0 -4
- package/dist/ionic/p-6f5b32c7.system.entry.js +0 -4
- package/dist/ionic/p-7330c044.system.js +0 -4
- package/dist/ionic/p-76afa95f.entry.js +0 -4
- package/dist/ionic/p-81f18ed1.system.entry.js +0 -4
- package/dist/ionic/p-addb7662.entry.js +0 -4
- package/dist/ionic/p-b80ef521.entry.js +0 -4
- package/dist/ionic/p-c05202a7.entry.js +0 -4
- package/dist/ionic/p-c67c9644.entry.js +0 -4
- package/dist/ionic/p-d070ab1e.system.entry.js +0 -4
- package/dist/ionic/p-de0392f4.entry.js +0 -4
- package/dist/ionic/p-e447e552.entry.js +0 -4
- package/dist/ionic/p-ef269a56.system.entry.js +0 -4
- package/dist/ionic/p-f7dce541.js +0 -4
package/components/data.js
CHANGED
|
@@ -832,7 +832,25 @@ const getFormattedDayPeriod = (dayPeriod) => {
|
|
|
832
832
|
}
|
|
833
833
|
return dayPeriod.toUpperCase();
|
|
834
834
|
};
|
|
835
|
-
|
|
835
|
+
/**
|
|
836
|
+
* Including time zone options may lead to the rendered text showing a
|
|
837
|
+
* different time from what was selected in the Datetime, which could cause
|
|
838
|
+
* confusion.
|
|
839
|
+
*/
|
|
840
|
+
const stripTimeZone = (formatOptions) => {
|
|
841
|
+
return Object.assign(Object.assign({}, formatOptions), {
|
|
842
|
+
/**
|
|
843
|
+
* Setting the time zone to UTC ensures that the value shown is always the
|
|
844
|
+
* same as what was selected and safeguards against older Safari bugs with
|
|
845
|
+
* Intl.DateTimeFormat.
|
|
846
|
+
*/
|
|
847
|
+
timeZone: 'UTC',
|
|
848
|
+
/**
|
|
849
|
+
* We do not want to display the time zone name
|
|
850
|
+
*/
|
|
851
|
+
timeZoneName: undefined });
|
|
852
|
+
};
|
|
853
|
+
const getLocalizedTime = (locale, refParts, hourCycle, formatOptions = { hour: 'numeric', minute: 'numeric' }) => {
|
|
836
854
|
const timeParts = {
|
|
837
855
|
hour: refParts.hour,
|
|
838
856
|
minute: refParts.minute,
|
|
@@ -840,28 +858,12 @@ const getLocalizedTime = (locale, refParts, hourCycle) => {
|
|
|
840
858
|
if (timeParts.hour === undefined || timeParts.minute === undefined) {
|
|
841
859
|
return 'Invalid Time';
|
|
842
860
|
}
|
|
843
|
-
return new Intl.DateTimeFormat(locale, {
|
|
844
|
-
hour: 'numeric',
|
|
845
|
-
minute: 'numeric',
|
|
846
|
-
/**
|
|
847
|
-
* Setting the timeZone to UTC prevents
|
|
848
|
-
* new Intl.DatetimeFormat from subtracting
|
|
849
|
-
* the user's current timezone offset
|
|
850
|
-
* when formatting the time.
|
|
851
|
-
*/
|
|
852
|
-
timeZone: 'UTC',
|
|
861
|
+
return new Intl.DateTimeFormat(locale, Object.assign(Object.assign({}, stripTimeZone(formatOptions)), {
|
|
853
862
|
/**
|
|
854
863
|
* We use hourCycle here instead of hour12 due to:
|
|
855
864
|
* https://bugs.chromium.org/p/chromium/issues/detail?id=1347316&q=hour12&can=2
|
|
856
865
|
*/
|
|
857
|
-
hourCycle
|
|
858
|
-
/**
|
|
859
|
-
* Setting Z at the end indicates that this
|
|
860
|
-
* date string is in the UTC time zone. This
|
|
861
|
-
* prevents new Date from adding the time zone
|
|
862
|
-
* offset when getting the ISO string.
|
|
863
|
-
*/
|
|
864
|
-
}).format(new Date(convertDataToISO(Object.assign({
|
|
866
|
+
hourCycle })).format(new Date(convertDataToISO(Object.assign({
|
|
865
867
|
/**
|
|
866
868
|
* JS uses a simplified ISO 8601 format which allows for
|
|
867
869
|
* date-only formats and date-time formats, but not
|
|
@@ -947,14 +949,6 @@ const generateDayAriaLabel = (locale, today, refParts) => {
|
|
|
947
949
|
*/
|
|
948
950
|
return today ? `Today, ${labelString}` : labelString;
|
|
949
951
|
};
|
|
950
|
-
/**
|
|
951
|
-
* Gets the day of the week, month, and day
|
|
952
|
-
* Used for the header in MD mode.
|
|
953
|
-
*/
|
|
954
|
-
const getMonthAndDay = (locale, refParts) => {
|
|
955
|
-
const date = getNormalizedDate(refParts);
|
|
956
|
-
return new Intl.DateTimeFormat(locale, { weekday: 'short', month: 'short', day: 'numeric', timeZone: 'UTC' }).format(date);
|
|
957
|
-
};
|
|
958
952
|
/**
|
|
959
953
|
* Given a locale and a date object,
|
|
960
954
|
* return a formatted string that includes
|
|
@@ -965,15 +959,6 @@ const getMonthAndYear = (locale, refParts) => {
|
|
|
965
959
|
const date = getNormalizedDate(refParts);
|
|
966
960
|
return new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric', timeZone: 'UTC' }).format(date);
|
|
967
961
|
};
|
|
968
|
-
/**
|
|
969
|
-
* Given a locale and a date object,
|
|
970
|
-
* return a formatted string that includes
|
|
971
|
-
* the short month, numeric day, and full year.
|
|
972
|
-
* Example: Apr 22, 2021
|
|
973
|
-
*/
|
|
974
|
-
const getMonthDayAndYear = (locale, refParts) => {
|
|
975
|
-
return getLocalizedDateTime(locale, refParts, { month: 'short', day: 'numeric', year: 'numeric' });
|
|
976
|
-
};
|
|
977
962
|
/**
|
|
978
963
|
* Given a locale and a date object,
|
|
979
964
|
* return a formatted string that includes
|
|
@@ -1023,7 +1008,7 @@ const getNormalizedDate = (refParts) => {
|
|
|
1023
1008
|
*/
|
|
1024
1009
|
const getLocalizedDateTime = (locale, refParts, options) => {
|
|
1025
1010
|
const date = getNormalizedDate(refParts);
|
|
1026
|
-
return getDateTimeFormat(locale, options).format(date);
|
|
1011
|
+
return getDateTimeFormat(locale, stripTimeZone(options)).format(date);
|
|
1027
1012
|
};
|
|
1028
1013
|
/**
|
|
1029
1014
|
* Given a locale, DatetimeParts, and options
|
|
@@ -1622,4 +1607,4 @@ const getTimeColumnsData = (locale, refParts, hourCycle, minParts, maxParts, all
|
|
|
1622
1607
|
};
|
|
1623
1608
|
};
|
|
1624
1609
|
|
|
1625
|
-
export { getNumDaysInMonth as A, getCombinedDateColumnData as B, getMonthColumnData as C, getDayColumnData as D, getYearColumnData as E, isMonthFirstLocale as F, getTimeColumnsData as G, isLocaleDayPeriodRTL as H, getMonthAndYear as I, getDaysOfWeek as J, getDaysOfMonth as K, getHourCycle as L, getLocalizedTime as M,
|
|
1610
|
+
export { getNumDaysInMonth as A, getCombinedDateColumnData as B, getMonthColumnData as C, getDayColumnData as D, getYearColumnData as E, isMonthFirstLocale as F, getTimeColumnsData as G, isLocaleDayPeriodRTL as H, getMonthAndYear as I, getDaysOfWeek as J, getDaysOfMonth as K, getHourCycle as L, getLocalizedTime as M, getLocalizedDateTime as N, formatValue as O, clampDate as P, parseAmPm as Q, calculateHourFromAMPM as R, getDay as a, isAfter as b, isSameDay as c, getPreviousMonth as d, getNextMonth as e, getPartsFromCalendarDay as f, generateDayAriaLabel as g, getNextYear as h, isBefore as i, getPreviousYear as j, getEndOfWeek as k, getStartOfWeek as l, getPreviousDay as m, getNextDay as n, getPreviousWeek as o, getNextWeek as p, parseMinParts as q, parseMaxParts as r, parseDate as s, convertToArrayOfNumbers as t, convertDataToISO as u, validateParts as v, warnIfValueOutOfBounds as w, getToday as x, getClosestValidDate as y, generateMonths as z };
|
|
@@ -6,7 +6,7 @@ import { a as addEventListener, c as componentOnReady } from './helpers.js';
|
|
|
6
6
|
import { a as printIonError } from './index6.js';
|
|
7
7
|
import { c as createColorClasses } from './theme.js';
|
|
8
8
|
import { b as getIonMode } from './ionic-global.js';
|
|
9
|
-
import { s as parseDate, x as getToday, L as getHourCycle,
|
|
9
|
+
import { s as parseDate, x as getToday, L as getHourCycle, N as getLocalizedDateTime, M as getLocalizedTime } from './data.js';
|
|
10
10
|
import { d as defineCustomElement$2 } from './ripple-effect.js';
|
|
11
11
|
|
|
12
12
|
const iosDatetimeButtonCss = ":host{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}:host button{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;-webkit-margin-start:2px;margin-inline-start:2px;-webkit-margin-end:2px;margin-inline-end:2px;margin-top:0px;margin-bottom:0px;position:relative;-webkit-transition:150ms color ease-in-out;transition:150ms color ease-in-out;border:none;background:var(--ion-color-step-300, #edeef0);color:var(--ion-text-color, #000);font-family:inherit;font-size:1rem;cursor:pointer;overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none}:host(.time-active) #time-button,:host(.date-active) #date-button{color:var(--ion-color-base)}:host(.datetime-button-disabled){pointer-events:none}:host(.datetime-button-disabled) button{opacity:0.4}";
|
|
@@ -43,11 +43,12 @@ const DatetimeButton = /*@__PURE__*/ proxyCustomElement(class DatetimeButton ext
|
|
|
43
43
|
* to the locale specified on ion-datetime.
|
|
44
44
|
*/
|
|
45
45
|
this.setDateTimeText = () => {
|
|
46
|
+
var _a, _b, _c, _d, _e;
|
|
46
47
|
const { datetimeEl, datetimePresentation } = this;
|
|
47
48
|
if (!datetimeEl) {
|
|
48
49
|
return;
|
|
49
50
|
}
|
|
50
|
-
const { value, locale, hourCycle, preferWheel, multiple, titleSelectedDatesFormatter } = datetimeEl;
|
|
51
|
+
const { value, locale, formatOptions, hourCycle, preferWheel, multiple, titleSelectedDatesFormatter } = datetimeEl;
|
|
51
52
|
const parsedValues = this.getParsedDateValues(value);
|
|
52
53
|
/**
|
|
53
54
|
* Both ion-datetime and ion-datetime-button default
|
|
@@ -70,8 +71,8 @@ const DatetimeButton = /*@__PURE__*/ proxyCustomElement(class DatetimeButton ext
|
|
|
70
71
|
switch (datetimePresentation) {
|
|
71
72
|
case 'date-time':
|
|
72
73
|
case 'time-date':
|
|
73
|
-
const dateText =
|
|
74
|
-
const timeText = getLocalizedTime(locale, firstParsedDatetime, computedHourCycle);
|
|
74
|
+
const dateText = getLocalizedDateTime(locale, firstParsedDatetime, (_a = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.date) !== null && _a !== void 0 ? _a : { month: 'short', day: 'numeric', year: 'numeric' });
|
|
75
|
+
const timeText = getLocalizedTime(locale, firstParsedDatetime, computedHourCycle, formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time);
|
|
75
76
|
if (preferWheel) {
|
|
76
77
|
this.dateText = `${dateText} ${timeText}`;
|
|
77
78
|
}
|
|
@@ -94,20 +95,20 @@ const DatetimeButton = /*@__PURE__*/ proxyCustomElement(class DatetimeButton ext
|
|
|
94
95
|
this.dateText = headerText;
|
|
95
96
|
}
|
|
96
97
|
else {
|
|
97
|
-
this.dateText =
|
|
98
|
+
this.dateText = getLocalizedDateTime(locale, firstParsedDatetime, (_b = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.date) !== null && _b !== void 0 ? _b : { month: 'short', day: 'numeric', year: 'numeric' });
|
|
98
99
|
}
|
|
99
100
|
break;
|
|
100
101
|
case 'time':
|
|
101
|
-
this.timeText = getLocalizedTime(locale, firstParsedDatetime, computedHourCycle);
|
|
102
|
+
this.timeText = getLocalizedTime(locale, firstParsedDatetime, computedHourCycle, formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time);
|
|
102
103
|
break;
|
|
103
104
|
case 'month-year':
|
|
104
|
-
this.dateText =
|
|
105
|
+
this.dateText = getLocalizedDateTime(locale, firstParsedDatetime, (_c = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.date) !== null && _c !== void 0 ? _c : { month: 'long', year: 'numeric' });
|
|
105
106
|
break;
|
|
106
107
|
case 'month':
|
|
107
|
-
this.dateText = getLocalizedDateTime(locale, firstParsedDatetime, { month: 'long' });
|
|
108
|
+
this.dateText = getLocalizedDateTime(locale, firstParsedDatetime, (_d = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time) !== null && _d !== void 0 ? _d : { month: 'long' });
|
|
108
109
|
break;
|
|
109
110
|
case 'year':
|
|
110
|
-
this.dateText = getLocalizedDateTime(locale, firstParsedDatetime, { year: 'numeric' });
|
|
111
|
+
this.dateText = getLocalizedDateTime(locale, firstParsedDatetime, (_e = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time) !== null && _e !== void 0 ? _e : { year: 'numeric' });
|
|
111
112
|
break;
|
|
112
113
|
}
|
|
113
114
|
};
|
|
@@ -336,7 +337,7 @@ const DatetimeButton = /*@__PURE__*/ proxyCustomElement(class DatetimeButton ext
|
|
|
336
337
|
render() {
|
|
337
338
|
const { color, dateText, timeText, selectedButton, datetimeActive, disabled } = this;
|
|
338
339
|
const mode = getIonMode(this);
|
|
339
|
-
return (h(Host, { key: '
|
|
340
|
+
return (h(Host, { key: 'a38773e24ea0a28315be89baf0ef97f564b5d74b', class: createColorClasses(color, {
|
|
340
341
|
[mode]: true,
|
|
341
342
|
[`${selectedButton}-active`]: datetimeActive,
|
|
342
343
|
['datetime-button-disabled']: disabled,
|
|
@@ -9,7 +9,7 @@ import { i as isRTL } from './dir.js';
|
|
|
9
9
|
import { c as createColorClasses } from './theme.js';
|
|
10
10
|
import { a as chevronBack, f as chevronForward, c as chevronDown, g as caretUpSharp, h as caretDownSharp } from './index7.js';
|
|
11
11
|
import { b as getIonMode } from './ionic-global.js';
|
|
12
|
-
import { g as generateDayAriaLabel, a as getDay, i as isBefore, b as isAfter, c as isSameDay, d as getPreviousMonth, e as getNextMonth, v as validateParts, f as getPartsFromCalendarDay, h as getNextYear, j as getPreviousYear, k as getEndOfWeek, l as getStartOfWeek, m as getPreviousDay, n as getNextDay, o as getPreviousWeek, p as getNextWeek, q as parseMinParts, r as parseMaxParts, s as parseDate, w as warnIfValueOutOfBounds, t as convertToArrayOfNumbers, u as convertDataToISO, x as getToday, y as getClosestValidDate, z as generateMonths, A as getNumDaysInMonth, B as getCombinedDateColumnData, C as getMonthColumnData, D as getDayColumnData, E as getYearColumnData, F as isMonthFirstLocale, G as getTimeColumnsData, H as isLocaleDayPeriodRTL, I as getMonthAndYear, J as getDaysOfWeek, K as getDaysOfMonth, L as getHourCycle, M as getLocalizedTime, N as
|
|
12
|
+
import { g as generateDayAriaLabel, a as getDay, i as isBefore, b as isAfter, c as isSameDay, d as getPreviousMonth, e as getNextMonth, v as validateParts, f as getPartsFromCalendarDay, h as getNextYear, j as getPreviousYear, k as getEndOfWeek, l as getStartOfWeek, m as getPreviousDay, n as getNextDay, o as getPreviousWeek, p as getNextWeek, q as parseMinParts, r as parseMaxParts, s as parseDate, w as warnIfValueOutOfBounds, t as convertToArrayOfNumbers, u as convertDataToISO, x as getToday, y as getClosestValidDate, z as generateMonths, A as getNumDaysInMonth, B as getCombinedDateColumnData, C as getMonthColumnData, D as getDayColumnData, E as getYearColumnData, F as isMonthFirstLocale, G as getTimeColumnsData, H as isLocaleDayPeriodRTL, I as getMonthAndYear, J as getDaysOfWeek, K as getDaysOfMonth, L as getHourCycle, M as getLocalizedTime, N as getLocalizedDateTime, O as formatValue, P as clampDate, Q as parseAmPm, R as calculateHourFromAMPM } from './data.js';
|
|
13
13
|
import { d as defineCustomElement$c } from './backdrop.js';
|
|
14
14
|
import { d as defineCustomElement$b } from './button.js';
|
|
15
15
|
import { d as defineCustomElement$a } from './buttons.js';
|
|
@@ -189,6 +189,48 @@ const getHighlightStyles = (highlightedDates, dateIsoString, el) => {
|
|
|
189
189
|
return undefined;
|
|
190
190
|
};
|
|
191
191
|
|
|
192
|
+
/**
|
|
193
|
+
* If a time zone is provided in the format options, the rendered text could
|
|
194
|
+
* differ from what was selected in the Datetime, which could cause
|
|
195
|
+
* confusion.
|
|
196
|
+
*/
|
|
197
|
+
const warnIfTimeZoneProvided = (el, formatOptions) => {
|
|
198
|
+
var _a, _b, _c, _d;
|
|
199
|
+
if (((_a = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.date) === null || _a === void 0 ? void 0 : _a.timeZone) ||
|
|
200
|
+
((_b = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.date) === null || _b === void 0 ? void 0 : _b.timeZoneName) ||
|
|
201
|
+
((_c = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time) === null || _c === void 0 ? void 0 : _c.timeZone) ||
|
|
202
|
+
((_d = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time) === null || _d === void 0 ? void 0 : _d.timeZoneName)) {
|
|
203
|
+
printIonWarning('Datetime: "timeZone" and "timeZoneName" are not supported in "formatOptions".', el);
|
|
204
|
+
}
|
|
205
|
+
};
|
|
206
|
+
const checkForPresentationFormatMismatch = (el, presentation, formatOptions) => {
|
|
207
|
+
// formatOptions is not required
|
|
208
|
+
if (!formatOptions)
|
|
209
|
+
return;
|
|
210
|
+
// If formatOptions is provided, the date and/or time objects are required, depending on the presentation
|
|
211
|
+
switch (presentation) {
|
|
212
|
+
case 'date':
|
|
213
|
+
case 'month-year':
|
|
214
|
+
case 'month':
|
|
215
|
+
case 'year':
|
|
216
|
+
if (formatOptions.date === undefined) {
|
|
217
|
+
printIonWarning(`Datetime: The '${presentation}' presentation requires a date object in formatOptions.`, el);
|
|
218
|
+
}
|
|
219
|
+
break;
|
|
220
|
+
case 'time':
|
|
221
|
+
if (formatOptions.time === undefined) {
|
|
222
|
+
printIonWarning(`Datetime: The 'time' presentation requires a time object in formatOptions.`, el);
|
|
223
|
+
}
|
|
224
|
+
break;
|
|
225
|
+
case 'date-time':
|
|
226
|
+
case 'time-date':
|
|
227
|
+
if (formatOptions.date === undefined && formatOptions.time === undefined) {
|
|
228
|
+
printIonWarning(`Datetime: The '${presentation}' presentation requires either a date or time object (or both) in formatOptions.`, el);
|
|
229
|
+
}
|
|
230
|
+
break;
|
|
231
|
+
}
|
|
232
|
+
};
|
|
233
|
+
|
|
192
234
|
const datetimeIosCss = ":host{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;background:var(--background);overflow:hidden}ion-picker-column-internal{min-width:26px}: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}@supports (background: -webkit-named-image(apple-pay-logo-black)) and (not (aspect-ratio: 1/1)){: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{position:absolute;visibility:hidden;pointer-events:none}@supports (inset-inline-start: 0){: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{inset-inline-start:-99999px}}@supports not (inset-inline-start: 0){: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{left:-99999px}:host-context([dir=rtl]):host(.show-month-and-year) .calendar-next-prev,:host-context([dir=rtl]).show-month-and-year .calendar-next-prev,:host-context([dir=rtl]):host(.show-month-and-year) .calendar-days-of-week,:host-context([dir=rtl]).show-month-and-year .calendar-days-of-week,:host-context([dir=rtl]):host(.show-month-and-year) .calendar-body,:host-context([dir=rtl]).show-month-and-year .calendar-body,:host-context([dir=rtl]):host(.show-month-and-year) .datetime-time,:host-context([dir=rtl]).show-month-and-year .datetime-time{left:unset;right:unset;right:-99999px}@supports selector(:dir(rtl)){:host(.show-month-and-year:dir(rtl)) .calendar-next-prev,:host(.show-month-and-year:dir(rtl)) .calendar-days-of-week,:host(.show-month-and-year:dir(rtl)) .calendar-body,:host(.show-month-and-year:dir(rtl)) .datetime-time{left:unset;right:unset;right:-99999px}}}}@supports (not (background: -webkit-named-image(apple-pay-logo-black))) or ((background: -webkit-named-image(apple-pay-logo-black)) and (aspect-ratio: 1/1)){: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}.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-item,:host .calendar-action-buttons ion-button{--background:translucent}:host .calendar-action-buttons ion-item ion-label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;width:auto}:host .calendar-action-buttons ion-item ion-icon{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:0;padding-inline-end:0;padding-top:0;padding-bottom:0}: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: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, #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-base)}:host(.in-item){position:static}:host(.show-month-and-year) .calendar-action-buttons ion-item{--color:var(--ion-color-base)}:host{--background:var(--ion-color-light, #ffffff);--background-rgb:var(--ion-color-light-rgb);--title-color:var(--ion-color-step-600, #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, #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}:host .calendar-action-buttons ion-item{--padding-start:16px;--background-hover:transparent;--background-activated:transparent;font-size:min(1rem, 25.6px);font-weight:600}:host .calendar-action-buttons ion-item ion-icon,:host .calendar-action-buttons ion-buttons ion-button{color:var(--ion-color-base)}:host .calendar-action-buttons ion-buttons{padding-left:0;padding-right:0;padding-top:8px;padding-bottom:0}: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, #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-base-rgb), 0.2)}:host .calendar-day.calendar-day-today{color:var(--ion-color-base)}:host .calendar-day.calendar-day-active{color:var(--ion-color-base);font-weight:600}:host .calendar-day.calendar-day-today.calendar-day-active{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, #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%}";
|
|
193
235
|
const IonDatetimeIosStyle0 = datetimeIosCss;
|
|
194
236
|
|
|
@@ -815,6 +857,7 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
815
857
|
this.color = 'primary';
|
|
816
858
|
this.name = this.inputId;
|
|
817
859
|
this.disabled = false;
|
|
860
|
+
this.formatOptions = undefined;
|
|
818
861
|
this.readonly = false;
|
|
819
862
|
this.isDateEnabled = undefined;
|
|
820
863
|
this.min = undefined;
|
|
@@ -842,6 +885,11 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
842
885
|
this.size = 'fixed';
|
|
843
886
|
this.preferWheel = false;
|
|
844
887
|
}
|
|
888
|
+
formatOptionsChanged() {
|
|
889
|
+
const { el, formatOptions, presentation } = this;
|
|
890
|
+
checkForPresentationFormatMismatch(el, presentation, formatOptions);
|
|
891
|
+
warnIfTimeZoneProvided(el, formatOptions);
|
|
892
|
+
}
|
|
845
893
|
disabledChanged() {
|
|
846
894
|
this.emitStyle();
|
|
847
895
|
}
|
|
@@ -851,6 +899,10 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
851
899
|
maxChanged() {
|
|
852
900
|
this.processMaxParts();
|
|
853
901
|
}
|
|
902
|
+
presentationChanged() {
|
|
903
|
+
const { el, formatOptions, presentation } = this;
|
|
904
|
+
checkForPresentationFormatMismatch(el, presentation, formatOptions);
|
|
905
|
+
}
|
|
854
906
|
get isGridStyle() {
|
|
855
907
|
const { presentation, preferWheel } = this;
|
|
856
908
|
const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
|
|
@@ -953,6 +1005,7 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
953
1005
|
this.initializeKeyboardListeners();
|
|
954
1006
|
}
|
|
955
1007
|
componentDidLoad() {
|
|
1008
|
+
const { el, intersectionTrackerRef } = this;
|
|
956
1009
|
/**
|
|
957
1010
|
* If a scrollable element is hidden using `display: none`,
|
|
958
1011
|
* it will not have a scroll height meaning we cannot scroll elements
|
|
@@ -978,14 +1031,14 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
978
1031
|
this.el.classList.add('datetime-ready');
|
|
979
1032
|
});
|
|
980
1033
|
};
|
|
981
|
-
const visibleIO = new IntersectionObserver(visibleCallback, { threshold: 0.01 });
|
|
1034
|
+
const visibleIO = new IntersectionObserver(visibleCallback, { threshold: 0.01, root: el });
|
|
982
1035
|
/**
|
|
983
1036
|
* Use raf to avoid a race condition between the component loading and
|
|
984
1037
|
* its display animation starting (such as when shown in a modal). This
|
|
985
1038
|
* could cause the datetime to start at a visibility of 0, erroneously
|
|
986
1039
|
* triggering the `hiddenIO` observer below.
|
|
987
1040
|
*/
|
|
988
|
-
raf(() => visibleIO === null || visibleIO === void 0 ? void 0 : visibleIO.observe(
|
|
1041
|
+
raf(() => visibleIO === null || visibleIO === void 0 ? void 0 : visibleIO.observe(intersectionTrackerRef));
|
|
989
1042
|
/**
|
|
990
1043
|
* We need to clean up listeners when the datetime is hidden
|
|
991
1044
|
* in a popover/modal so that we can properly scroll containers
|
|
@@ -1011,8 +1064,8 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1011
1064
|
this.el.classList.remove('datetime-ready');
|
|
1012
1065
|
});
|
|
1013
1066
|
};
|
|
1014
|
-
const hiddenIO = new IntersectionObserver(hiddenCallback, { threshold: 0 });
|
|
1015
|
-
raf(() => hiddenIO === null || hiddenIO === void 0 ? void 0 : hiddenIO.observe(
|
|
1067
|
+
const hiddenIO = new IntersectionObserver(hiddenCallback, { threshold: 0, root: el });
|
|
1068
|
+
raf(() => hiddenIO === null || hiddenIO === void 0 ? void 0 : hiddenIO.observe(intersectionTrackerRef));
|
|
1016
1069
|
/**
|
|
1017
1070
|
* Datetime uses Ionic components that emit
|
|
1018
1071
|
* ionFocus and ionBlur. These events are
|
|
@@ -1086,7 +1139,7 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1086
1139
|
});
|
|
1087
1140
|
}
|
|
1088
1141
|
componentWillLoad() {
|
|
1089
|
-
const { el, highlightedDates, multiple, presentation, preferWheel } = this;
|
|
1142
|
+
const { el, formatOptions, highlightedDates, multiple, presentation, preferWheel } = this;
|
|
1090
1143
|
if (multiple) {
|
|
1091
1144
|
if (presentation !== 'date') {
|
|
1092
1145
|
printIonWarning('Multiple date selection is only supported for presentation="date".', el);
|
|
@@ -1103,6 +1156,10 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1103
1156
|
printIonWarning('The highlightedDates property is not supported with preferWheel="true".', el);
|
|
1104
1157
|
}
|
|
1105
1158
|
}
|
|
1159
|
+
if (formatOptions) {
|
|
1160
|
+
checkForPresentationFormatMismatch(el, presentation, formatOptions);
|
|
1161
|
+
warnIfTimeZoneProvided(el, formatOptions);
|
|
1162
|
+
}
|
|
1106
1163
|
const hourValues = (this.parsedHourValues = convertToArrayOfNumbers(this.hourValues));
|
|
1107
1164
|
const minuteValues = (this.parsedMinuteValues = convertToArrayOfNumbers(this.minuteValues));
|
|
1108
1165
|
const monthValues = (this.parsedMonthValues = convertToArrayOfNumbers(this.monthValues));
|
|
@@ -1610,7 +1667,7 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1610
1667
|
return h("slot", { name: "time-label" }, "Time");
|
|
1611
1668
|
}
|
|
1612
1669
|
renderTimeOverlay() {
|
|
1613
|
-
const { disabled, hourCycle, isTimePopoverOpen, locale } = this;
|
|
1670
|
+
const { disabled, hourCycle, isTimePopoverOpen, locale, formatOptions } = this;
|
|
1614
1671
|
const computedHourCycle = getHourCycle(locale, hourCycle);
|
|
1615
1672
|
const activePart = this.getActivePartsWithFallback();
|
|
1616
1673
|
return [
|
|
@@ -1630,7 +1687,7 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1630
1687
|
await popoverRef.onWillDismiss();
|
|
1631
1688
|
this.isTimePopoverOpen = false;
|
|
1632
1689
|
}
|
|
1633
|
-
} }, getLocalizedTime(locale, activePart, computedHourCycle)),
|
|
1690
|
+
} }, getLocalizedTime(locale, activePart, computedHourCycle, formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time)),
|
|
1634
1691
|
h("ion-popover", { alignment: "center", translucent: true, overlayIndex: 1, arrow: false, onWillPresent: (ev) => {
|
|
1635
1692
|
/**
|
|
1636
1693
|
* Intersection Observers do not consistently fire between Blink and Webkit
|
|
@@ -1653,7 +1710,8 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1653
1710
|
];
|
|
1654
1711
|
}
|
|
1655
1712
|
getHeaderSelectedDateText() {
|
|
1656
|
-
|
|
1713
|
+
var _a;
|
|
1714
|
+
const { activeParts, formatOptions, multiple, titleSelectedDatesFormatter } = this;
|
|
1657
1715
|
const isArray = Array.isArray(activeParts);
|
|
1658
1716
|
let headerText;
|
|
1659
1717
|
if (multiple && isArray && activeParts.length !== 1) {
|
|
@@ -1669,7 +1727,7 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1669
1727
|
}
|
|
1670
1728
|
else {
|
|
1671
1729
|
// for exactly 1 day selected (multiple set or not), show a formatted version of that
|
|
1672
|
-
headerText =
|
|
1730
|
+
headerText = getLocalizedDateTime(this.locale, this.getActivePartsWithFallback(), (_a = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.date) !== null && _a !== void 0 ? _a : { weekday: 'short', month: 'short', day: 'numeric' });
|
|
1673
1731
|
}
|
|
1674
1732
|
return headerText;
|
|
1675
1733
|
}
|
|
@@ -1758,7 +1816,7 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1758
1816
|
const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
|
|
1759
1817
|
const hasWheelVariant = hasDatePresentation && preferWheel;
|
|
1760
1818
|
renderHiddenInput(true, el, name, formatValue(value), disabled);
|
|
1761
|
-
return (h(Host, { key: '
|
|
1819
|
+
return (h(Host, { key: '064dc72b5494a687e93e7605f7e1ec2d00f523ad', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, createColorClasses(color, {
|
|
1762
1820
|
[mode]: true,
|
|
1763
1821
|
['datetime-readonly']: readonly,
|
|
1764
1822
|
['datetime-disabled']: disabled,
|
|
@@ -1768,13 +1826,15 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1768
1826
|
[`datetime-size-${size}`]: true,
|
|
1769
1827
|
[`datetime-prefer-wheel`]: hasWheelVariant,
|
|
1770
1828
|
[`datetime-grid`]: isGridStyle,
|
|
1771
|
-
})) }, this.renderDatetime(mode)));
|
|
1829
|
+
})) }, h("div", { key: '258b34ca5d9bacfaa886a7de278f41a30be48c44', class: "intersection-tracker", ref: (el) => (this.intersectionTrackerRef = el) }), this.renderDatetime(mode)));
|
|
1772
1830
|
}
|
|
1773
1831
|
get el() { return this; }
|
|
1774
1832
|
static get watchers() { return {
|
|
1833
|
+
"formatOptions": ["formatOptionsChanged"],
|
|
1775
1834
|
"disabled": ["disabledChanged"],
|
|
1776
1835
|
"min": ["minChanged"],
|
|
1777
1836
|
"max": ["maxChanged"],
|
|
1837
|
+
"presentation": ["presentationChanged"],
|
|
1778
1838
|
"yearValues": ["yearValuesChanged"],
|
|
1779
1839
|
"monthValues": ["monthValuesChanged"],
|
|
1780
1840
|
"dayValues": ["dayValuesChanged"],
|
|
@@ -1790,6 +1850,7 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1790
1850
|
"color": [1],
|
|
1791
1851
|
"name": [1],
|
|
1792
1852
|
"disabled": [4],
|
|
1853
|
+
"formatOptions": [16],
|
|
1793
1854
|
"readonly": [4],
|
|
1794
1855
|
"isDateEnabled": [16],
|
|
1795
1856
|
"min": [1025],
|
|
@@ -1825,9 +1886,11 @@ const Datetime = /*@__PURE__*/ proxyCustomElement(class Datetime extends HTMLEle
|
|
|
1825
1886
|
"reset": [64],
|
|
1826
1887
|
"cancel": [64]
|
|
1827
1888
|
}, undefined, {
|
|
1889
|
+
"formatOptions": ["formatOptionsChanged"],
|
|
1828
1890
|
"disabled": ["disabledChanged"],
|
|
1829
1891
|
"min": ["minChanged"],
|
|
1830
1892
|
"max": ["maxChanged"],
|
|
1893
|
+
"presentation": ["presentationChanged"],
|
|
1831
1894
|
"yearValues": ["yearValuesChanged"],
|
|
1832
1895
|
"monthValues": ["monthValuesChanged"],
|
|
1833
1896
|
"dayValues": ["dayValuesChanged"],
|
|
@@ -71,7 +71,7 @@ const FabButton = /*@__PURE__*/ proxyCustomElement(class FabButton extends HTMLE
|
|
|
71
71
|
rel: this.rel,
|
|
72
72
|
target: this.target,
|
|
73
73
|
};
|
|
74
|
-
return (h(Host, { key: '
|
|
74
|
+
return (h(Host, { key: 'c6d1a3ea95ee1fb6c86447881ff8ed7d885b9fb5', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses(color, {
|
|
75
75
|
[mode]: true,
|
|
76
76
|
'fab-button-in-list': inList,
|
|
77
77
|
'fab-button-translucent-in-list': inList && translucent,
|
|
@@ -82,7 +82,7 @@ const FabButton = /*@__PURE__*/ proxyCustomElement(class FabButton extends HTMLE
|
|
|
82
82
|
'ion-activatable': true,
|
|
83
83
|
'ion-focusable': true,
|
|
84
84
|
[`fab-button-${size}`]: size !== undefined,
|
|
85
|
-
}) }, h(TagType, Object.assign({ key: '
|
|
85
|
+
}) }, h(TagType, Object.assign({ key: 'd57e55e43e3e1fa7a255e25bfb9eb81a20200aa4' }, attrs, { class: "button-native", part: "native", disabled: disabled, onFocus: this.onFocus, onBlur: this.onBlur, onClick: (ev) => openURL(href, ev, this.routerDirection, this.routerAnimation) }, inheritedAttributes), h("ion-icon", { key: '561252585dc5f5ed260987fc8fef2558700b2700', "aria-hidden": "true", icon: this.closeIcon, part: "close-icon", class: "close-icon", lazy: false }), h("span", { key: 'd156660a55d4d849c24368ee79217e66c6423b37', class: "button-inner" }, h("slot", { key: '35d4507eec7e4f646e1ef9206b8d6c9fd5a43c37' })), mode === 'md' && h("ion-ripple-effect", null))));
|
|
86
86
|
}
|
|
87
87
|
get el() { return this; }
|
|
88
88
|
static get style() { return {
|
|
@@ -25,11 +25,11 @@ const FabList = /*@__PURE__*/ proxyCustomElement(class FabList extends HTMLEleme
|
|
|
25
25
|
}
|
|
26
26
|
render() {
|
|
27
27
|
const mode = getIonMode(this);
|
|
28
|
-
return (h(Host, { key: '
|
|
28
|
+
return (h(Host, { key: 'edbed7730aa2f177a6fb39a89af805b9699bc9ae', class: {
|
|
29
29
|
[mode]: true,
|
|
30
30
|
'fab-list-active': this.activated,
|
|
31
31
|
[`fab-list-side-${this.side}`]: true,
|
|
32
|
-
} }, h("slot", { key: '
|
|
32
|
+
} }, h("slot", { key: '3ecb467b6d09dc02a1ab3cb76403f7c56e8ec6b2' })));
|
|
33
33
|
}
|
|
34
34
|
get el() { return this; }
|
|
35
35
|
static get watchers() { return {
|
package/components/ion-fab.js
CHANGED
|
@@ -54,12 +54,12 @@ const Fab = /*@__PURE__*/ proxyCustomElement(class Fab extends HTMLElement {
|
|
|
54
54
|
render() {
|
|
55
55
|
const { horizontal, vertical, edge } = this;
|
|
56
56
|
const mode = getIonMode(this);
|
|
57
|
-
return (h(Host, { key: '
|
|
57
|
+
return (h(Host, { key: '2960656845d8ab1d643e56870cfeefbceb44fb20', class: {
|
|
58
58
|
[mode]: true,
|
|
59
59
|
[`fab-horizontal-${horizontal}`]: horizontal !== undefined,
|
|
60
60
|
[`fab-vertical-${vertical}`]: vertical !== undefined,
|
|
61
61
|
'fab-edge': edge,
|
|
62
|
-
} }, h("slot", { key: '
|
|
62
|
+
} }, h("slot", { key: 'eed164a50594167959905a90d678d417bc99098d' })));
|
|
63
63
|
}
|
|
64
64
|
get el() { return this; }
|
|
65
65
|
static get watchers() { return {
|
package/components/ion-footer.js
CHANGED
|
@@ -115,7 +115,7 @@ const Footer = /*@__PURE__*/ proxyCustomElement(class Footer extends HTMLElement
|
|
|
115
115
|
const mode = getIonMode(this);
|
|
116
116
|
const tabs = this.el.closest('ion-tabs');
|
|
117
117
|
const tabBar = tabs === null || tabs === void 0 ? void 0 : tabs.querySelector(':scope > ion-tab-bar');
|
|
118
|
-
return (h(Host, { key: '
|
|
118
|
+
return (h(Host, { key: '6f2827ba2e64d1a889c0631bc2a6d5df97b338ce', role: "contentinfo", class: {
|
|
119
119
|
[mode]: true,
|
|
120
120
|
// Used internally for styling
|
|
121
121
|
[`footer-${mode}`]: true,
|
|
@@ -123,7 +123,7 @@ const Footer = /*@__PURE__*/ proxyCustomElement(class Footer extends HTMLElement
|
|
|
123
123
|
[`footer-translucent-${mode}`]: translucent,
|
|
124
124
|
['footer-toolbar-padding']: !this.keyboardVisible && (!tabBar || tabBar.slot !== 'bottom'),
|
|
125
125
|
[`footer-collapse-${collapse}`]: collapse !== undefined,
|
|
126
|
-
} }, mode === 'ios' && translucent && h("div", { class: "footer-background" }), h("slot", { key: '
|
|
126
|
+
} }, mode === 'ios' && translucent && h("div", { class: "footer-background" }), h("slot", { key: 'b07574feb587a1089b001e7d158fd8d05e32304b' })));
|
|
127
127
|
}
|
|
128
128
|
get el() { return this; }
|
|
129
129
|
static get style() { return {
|
package/components/ion-grid.js
CHANGED
|
@@ -16,10 +16,10 @@ const Grid = /*@__PURE__*/ proxyCustomElement(class Grid extends HTMLElement {
|
|
|
16
16
|
}
|
|
17
17
|
render() {
|
|
18
18
|
const mode = getIonMode(this);
|
|
19
|
-
return (h(Host, { key: '
|
|
19
|
+
return (h(Host, { key: '265ab989098511c0b7e7d99edc792081f3ac7dfe', class: {
|
|
20
20
|
[mode]: true,
|
|
21
21
|
'grid-fixed': this.fixed,
|
|
22
|
-
} }, h("slot", { key: '
|
|
22
|
+
} }, h("slot", { key: '83e3ea4d1a60d1a6dab6b592e70a98924c0cfd7c' })));
|
|
23
23
|
}
|
|
24
24
|
static get style() { return IonGridStyle0; }
|
|
25
25
|
}, [1, "ion-grid", {
|
package/components/ion-header.js
CHANGED
|
@@ -321,14 +321,14 @@ const Header = /*@__PURE__*/ proxyCustomElement(class Header extends HTMLElement
|
|
|
321
321
|
const collapse = this.collapse || 'none';
|
|
322
322
|
// banner role must be at top level, so remove role if inside a menu
|
|
323
323
|
const roleType = hostContext('ion-menu', this.el) ? 'none' : 'banner';
|
|
324
|
-
return (h(Host, Object.assign({ key: '
|
|
324
|
+
return (h(Host, Object.assign({ key: 'be4386a218c20dc4c18320dbbcfb25574d13d27e', role: roleType, class: {
|
|
325
325
|
[mode]: true,
|
|
326
326
|
// Used internally for styling
|
|
327
327
|
[`header-${mode}`]: true,
|
|
328
328
|
[`header-translucent`]: this.translucent,
|
|
329
329
|
[`header-collapse-${collapse}`]: true,
|
|
330
330
|
[`header-translucent-${mode}`]: this.translucent,
|
|
331
|
-
} }, inheritedAttributes), mode === 'ios' && translucent && h("div", { class: "header-background" }), h("slot", { key: '
|
|
331
|
+
} }, inheritedAttributes), mode === 'ios' && translucent && h("div", { class: "header-background" }), h("slot", { key: '74c401fb331aeb40c733605fd580949ad53989b8' })));
|
|
332
332
|
}
|
|
333
333
|
get el() { return this; }
|
|
334
334
|
static get style() { return {
|
package/components/ion-img.js
CHANGED
|
@@ -78,7 +78,7 @@ const Img = /*@__PURE__*/ proxyCustomElement(class Img extends HTMLElement {
|
|
|
78
78
|
render() {
|
|
79
79
|
const { loadSrc, alt, onLoad, loadError, inheritedAttributes } = this;
|
|
80
80
|
const { draggable } = inheritedAttributes;
|
|
81
|
-
return (h(Host, { key: '
|
|
81
|
+
return (h(Host, { key: '212cb19b83defa47a677e44659eccc5e7e1bc5a2', class: getIonMode(this) }, h("img", { key: '975230d5ef5f262c8e5f040eb59cd1033241f3c8', decoding: "async", src: loadSrc, alt: alt, onLoad: onLoad, onError: loadError, part: "image", draggable: isDraggable(draggable) })));
|
|
82
82
|
}
|
|
83
83
|
get el() { return this; }
|
|
84
84
|
static get watchers() { return {
|
|
@@ -35,11 +35,11 @@ const InfiniteScrollContent = /*@__PURE__*/ proxyCustomElement(class InfiniteScr
|
|
|
35
35
|
}
|
|
36
36
|
render() {
|
|
37
37
|
const mode = getIonMode(this);
|
|
38
|
-
return (h(Host, { key: '
|
|
38
|
+
return (h(Host, { key: '38c67d2c7ea4c304e71dacea64add0bffab69906', class: {
|
|
39
39
|
[mode]: true,
|
|
40
40
|
// Used internally for styling
|
|
41
41
|
[`infinite-scroll-content-${mode}`]: true,
|
|
42
|
-
} }, h("div", { key: '
|
|
42
|
+
} }, h("div", { key: 'a23484ccbaf65e0e3ecb59befea425cfdbc782fd', class: "infinite-loading" }, this.loadingSpinner && (h("div", { class: "infinite-loading-spinner" }, h("ion-spinner", { name: this.loadingSpinner }))), this.loadingText !== undefined && this.renderLoadingText())));
|
|
43
43
|
}
|
|
44
44
|
static get style() { return {
|
|
45
45
|
ios: IonInfiniteScrollContentIosStyle0,
|
|
@@ -174,7 +174,7 @@ const InfiniteScroll = /*@__PURE__*/ proxyCustomElement(class InfiniteScroll ext
|
|
|
174
174
|
render() {
|
|
175
175
|
const mode = getIonMode(this);
|
|
176
176
|
const disabled = this.disabled;
|
|
177
|
-
return (h(Host, { key: '
|
|
177
|
+
return (h(Host, { key: 'cf712b0f22fe89b41377402da44f5575118ed34f', class: {
|
|
178
178
|
[mode]: true,
|
|
179
179
|
'infinite-scroll-loading': this.isLoading,
|
|
180
180
|
'infinite-scroll-enabled': !disabled,
|
|
@@ -21,11 +21,11 @@ const ItemDivider = /*@__PURE__*/ proxyCustomElement(class ItemDivider extends H
|
|
|
21
21
|
}
|
|
22
22
|
render() {
|
|
23
23
|
const mode = getIonMode(this);
|
|
24
|
-
return (h(Host, { key: '
|
|
24
|
+
return (h(Host, { key: 'd9d5993694639e8f1ed589f0e8c3f4920ce30e02', class: createColorClasses(this.color, {
|
|
25
25
|
[mode]: true,
|
|
26
26
|
'item-divider-sticky': this.sticky,
|
|
27
27
|
item: true,
|
|
28
|
-
}) }, h("slot", { key: '
|
|
28
|
+
}) }, h("slot", { key: '1da8c38cbf07ef591ceae94b0d70bf620990e568', name: "start" }), h("div", { key: '349a581fd1688b01ce7c67da99ae22cb4a5a85f7', class: "item-divider-inner" }, h("div", { key: '80e22ba4f5da2af40bb32a445b840baa59edfbcc', class: "item-divider-wrapper" }, h("slot", { key: '6d3fb95c8eba128e56defccbcc5d4b1fa3ec4c4a' })), h("slot", { key: '83a97c131348c8cf840c30ccbf83c78edc125c14', name: "end" }))));
|
|
29
29
|
}
|
|
30
30
|
get el() { return this; }
|
|
31
31
|
static get style() { return {
|
|
@@ -17,7 +17,7 @@ const ItemGroup = /*@__PURE__*/ proxyCustomElement(class ItemGroup extends HTMLE
|
|
|
17
17
|
}
|
|
18
18
|
render() {
|
|
19
19
|
const mode = getIonMode(this);
|
|
20
|
-
return (h(Host, { key: '
|
|
20
|
+
return (h(Host, { key: '1d7de42c40d5f37324342fa7be2420bf6499705e', role: "group", class: {
|
|
21
21
|
[mode]: true,
|
|
22
22
|
// Used internally for styling
|
|
23
23
|
[`item-group-${mode}`]: true,
|
|
@@ -43,12 +43,12 @@ const ItemOption = /*@__PURE__*/ proxyCustomElement(class ItemOption extends HTM
|
|
|
43
43
|
href: this.href,
|
|
44
44
|
target: this.target,
|
|
45
45
|
};
|
|
46
|
-
return (h(Host, { key: '
|
|
46
|
+
return (h(Host, { key: '7e208b463b2d36984791a7c9c1d24af88b468a03', onClick: this.onClick, class: createColorClasses(this.color, {
|
|
47
47
|
[mode]: true,
|
|
48
48
|
'item-option-disabled': disabled,
|
|
49
49
|
'item-option-expandable': expandable,
|
|
50
50
|
'ion-activatable': true,
|
|
51
|
-
}) }, h(TagType, Object.assign({ key: '
|
|
51
|
+
}) }, h(TagType, Object.assign({ key: '9f48210793e88f25b675add863453432e6d8be51' }, attrs, { class: "button-native", part: "native", disabled: disabled }), h("span", { key: '3ebb5d9b7369f77ca49c8d700a95e4e2335a7f24', class: "button-inner" }, h("slot", { key: '7df01a2c40554effe0e36e7fe29ac469a89ad395', name: "top" }), h("div", { key: '1bdc411990a89a0523dd170bf4d61c2f28af3018', class: "horizontal-wrapper" }, h("slot", { key: '967a0cc8ff611439fddf28c20c3f197be1a314a5', name: "start" }), h("slot", { key: '7848ded44ce1b0e303f1c1a423fc1ae51e5997d4', name: "icon-only" }), h("slot", { key: '6076bb1a50cebe374ecd8507133eaccd2ee2d08b' }), h("slot", { key: '71505008df081744492fb22b41229ada64506834', name: "end" })), h("slot", { key: 'c213321eafe801c1ace8573b4736c2f0ab585703', name: "bottom" })), mode === 'md' && h("ion-ripple-effect", null))));
|
|
52
52
|
}
|
|
53
53
|
get el() { return this; }
|
|
54
54
|
static get style() { return {
|
|
@@ -27,7 +27,7 @@ const ItemOptions = /*@__PURE__*/ proxyCustomElement(class ItemOptions extends H
|
|
|
27
27
|
render() {
|
|
28
28
|
const mode = getIonMode(this);
|
|
29
29
|
const isEnd = isEndSide(this.side);
|
|
30
|
-
return (h(Host, { key: '
|
|
30
|
+
return (h(Host, { key: '42ec58a1a2a6a886309595103468d2c39e81f58b', class: {
|
|
31
31
|
[mode]: true,
|
|
32
32
|
// Used internally for styling
|
|
33
33
|
[`item-options-${mode}`]: true,
|