@ionic/core 8.0.1-dev.11713911458.1ad5f4cf → 8.0.1-dev.11714492860.17c00351
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/input-shims.js +5 -5
- package/components/ion-content.js +6 -4
- package/components/ion-datetime-button.js +2 -2
- package/components/ion-datetime.js +15 -13
- 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-input-password-toggle.js +3 -3
- package/components/ion-input.js +8 -12
- 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 +10 -8
- package/components/ion-nav-link.js +1 -1
- package/components/ion-nav.js +1 -1
- package/components/ion-note.js +2 -2
- package/components/ion-picker-legacy.js +2 -2
- package/components/ion-progress-bar.js +1 -1
- package/components/ion-range.js +3 -3
- 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 +4 -4
- 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-select.js +2 -2
- 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-textarea.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-toggle.js +3 -3
- package/components/ion-toolbar.js +2 -2
- package/components/label.js +2 -2
- package/components/list-header.js +2 -2
- package/components/list.js +1 -1
- package/components/overlays.js +3 -2
- package/components/picker-column-option.js +2 -2
- package/components/picker-column.js +156 -4
- package/components/picker-column2.js +2 -2
- package/components/picker.js +2 -2
- package/components/popover.js +6 -4
- package/components/radio-group.js +1 -1
- package/components/radio.js +3 -3
- package/components/ripple-effect.js +1 -1
- package/components/select-popover.js +1 -1
- package/components/spinner.js +1 -1
- package/css/palettes/dark.always.css +1 -1
- package/css/palettes/dark.always.css.map +1 -1
- package/css/palettes/dark.class.css +1 -1
- package/css/palettes/dark.class.css.map +1 -1
- package/css/palettes/dark.system.css +1 -1
- package/css/palettes/dark.system.css.map +1 -1
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/{input-shims-9e59ef62.js → input-shims-20d639e6.js} +5 -5
- package/dist/cjs/ion-action-sheet.cjs.entry.js +1 -1
- package/dist/cjs/ion-alert.cjs.entry.js +1 -1
- package/dist/cjs/ion-app_8.cjs.entry.js +15 -14
- 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 +2 -2
- package/dist/cjs/ion-datetime_3.cjs.entry.js +20 -18
- 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-input-password-toggle.cjs.entry.js +3 -3
- package/dist/cjs/ion-input.cjs.entry.js +7 -12
- package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-item_8.cjs.entry.js +12 -12
- package/dist/cjs/ion-loading.cjs.entry.js +3 -3
- package/dist/cjs/ion-menu_3.cjs.entry.js +7 -7
- package/dist/cjs/ion-modal.cjs.entry.js +9 -8
- package/dist/cjs/ion-nav_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +2 -2
- package/dist/cjs/ion-picker-column.cjs.entry.js +154 -4
- package/dist/cjs/ion-picker.cjs.entry.js +2 -2
- package/dist/cjs/ion-popover.cjs.entry.js +5 -4
- package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/ion-radio_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-range.cjs.entry.js +3 -3
- 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 +4 -4
- package/dist/cjs/ion-segment_2.cjs.entry.js +5 -5
- package/dist/cjs/ion-select_3.cjs.entry.js +5 -5
- 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-textarea.cjs.entry.js +2 -2
- package/dist/cjs/ion-toast.cjs.entry.js +3 -3
- package/dist/cjs/ion-toggle.cjs.entry.js +3 -3
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{overlays-10c452b2.js → overlays-574e681c.js} +3 -1
- package/dist/collection/components/content/content.js +23 -4
- package/dist/collection/components/content/test/content.spec.js +27 -0
- package/dist/collection/components/datetime/datetime.js +15 -13
- package/dist/collection/components/datetime/test/overlay-roles/datetime.e2e.js +34 -0
- package/dist/collection/components/datetime-button/datetime-button.js +2 -2
- 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/input/input.js +24 -12
- package/dist/collection/components/input/test/input.spec.js +13 -0
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +3 -3
- 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 +2 -2
- 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/gestures/sheet.js +3 -2
- package/dist/collection/components/modal/modal.js +25 -6
- package/dist/collection/components/modal/test/basic/modal.spec.js +19 -0
- 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.css +19 -0
- package/dist/collection/components/picker-column/picker-column.js +158 -3
- package/dist/collection/components/picker-column/test/picker-column.spec.js +83 -0
- package/dist/collection/components/picker-column-option/picker-column-option.js +2 -2
- package/dist/collection/components/picker-legacy/picker.js +2 -2
- package/dist/collection/components/picker-legacy-column/picker-column.js +2 -2
- package/dist/collection/components/popover/popover.js +23 -4
- package/dist/collection/components/popover/test/basic/popover.spec.js +19 -0
- package/dist/collection/components/progress-bar/progress-bar.js +1 -1
- package/dist/collection/components/radio/radio.js +3 -3
- package/dist/collection/components/radio-group/radio-group.js +1 -1
- package/dist/collection/components/range/range.js +3 -3
- 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 +4 -4
- 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/select.js +2 -2
- 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/textarea/textarea.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 +3 -3
- package/dist/collection/components/toolbar/toolbar.js +2 -2
- package/dist/collection/utils/input-shims/hacks/scroll-assist.js +5 -5
- package/dist/collection/utils/overlays.js +2 -1
- package/dist/docs.json +96 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/{input-shims-0314bbe5.js → input-shims-4530285e.js} +5 -5
- package/dist/esm/ion-action-sheet.entry.js +1 -1
- package/dist/esm/ion-alert.entry.js +1 -1
- package/dist/esm/ion-app_8.entry.js +15 -14
- 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 +2 -2
- package/dist/esm/ion-datetime_3.entry.js +20 -18
- 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-input-password-toggle.entry.js +3 -3
- package/dist/esm/ion-input.entry.js +7 -12
- package/dist/esm/ion-item-option_3.entry.js +4 -4
- package/dist/esm/ion-item_8.entry.js +12 -12
- package/dist/esm/ion-loading.entry.js +3 -3
- package/dist/esm/ion-menu_3.entry.js +7 -7
- package/dist/esm/ion-modal.entry.js +9 -8
- package/dist/esm/ion-nav_2.entry.js +2 -2
- package/dist/esm/ion-picker-column-option.entry.js +2 -2
- package/dist/esm/ion-picker-column.entry.js +154 -4
- package/dist/esm/ion-picker.entry.js +2 -2
- package/dist/esm/ion-popover.entry.js +5 -4
- package/dist/esm/ion-progress-bar.entry.js +1 -1
- package/dist/esm/ion-radio_2.entry.js +4 -4
- package/dist/esm/ion-range.entry.js +3 -3
- 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 +4 -4
- package/dist/esm/ion-segment_2.entry.js +5 -5
- package/dist/esm/ion-select_3.entry.js +5 -5
- 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-textarea.entry.js +2 -2
- package/dist/esm/ion-toast.entry.js +3 -3
- package/dist/esm/ion-toggle.entry.js +3 -3
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{overlays-6fb4a2f2.js → overlays-1eac28e2.js} +3 -2
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/input-shims-4530285e.js +4 -0
- package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
- package/dist/esm-es5/ion-alert.entry.js +1 -1
- package/dist/esm-es5/ion-app_8.entry.js +1 -1
- package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
- package/dist/esm-es5/ion-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-input-password-toggle.entry.js +1 -1
- package/dist/esm-es5/ion-input.entry.js +1 -1
- package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
- package/dist/esm-es5/ion-item_8.entry.js +1 -1
- package/dist/esm-es5/ion-loading.entry.js +1 -1
- package/dist/esm-es5/ion-menu_3.entry.js +1 -1
- package/dist/esm-es5/ion-modal.entry.js +1 -1
- package/dist/esm-es5/ion-nav_2.entry.js +1 -1
- package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
- package/dist/esm-es5/ion-picker-column.entry.js +1 -1
- package/dist/esm-es5/ion-picker.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-range.entry.js +1 -1
- package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
- package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
- package/dist/esm-es5/ion-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-textarea.entry.js +1 -1
- package/dist/esm-es5/ion-toast.entry.js +1 -1
- package/dist/esm-es5/ion-toggle.entry.js +1 -1
- package/dist/esm-es5/ionic.js +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/{overlays-6fb4a2f2.js → overlays-1eac28e2.js} +1 -1
- package/dist/html.html-data.json +24 -0
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-50205ef9.system.entry.js → p-0d88f9c2.system.entry.js} +1 -1
- package/dist/ionic/{p-1fe1f512.entry.js → p-1a8d2fe3.entry.js} +1 -1
- package/dist/ionic/{p-3008ca4e.system.entry.js → p-1aff89d0.system.entry.js} +1 -1
- package/dist/ionic/{p-4a01cec0.entry.js → p-2185597f.entry.js} +1 -1
- package/dist/ionic/{p-7f33a6e2.system.entry.js → p-22d183b4.system.entry.js} +2 -2
- package/dist/ionic/{p-5f15ee76.entry.js → p-255b6f01.entry.js} +1 -1
- package/dist/ionic/p-282cc565.js +4 -0
- package/dist/ionic/{p-4f6ebc2b.entry.js → p-2870db48.entry.js} +1 -1
- package/dist/ionic/p-2a517297.system.entry.js +4 -0
- package/dist/ionic/{p-cbd87df6.entry.js → p-2b45e94f.entry.js} +1 -1
- package/dist/ionic/{p-cf8101a6.system.entry.js → p-2c1cc9bf.system.entry.js} +1 -1
- package/dist/ionic/p-2e56ebdc.entry.js +4 -0
- package/dist/ionic/{p-e62d4a6c.entry.js → p-30a40a57.entry.js} +1 -1
- package/dist/ionic/{p-98af538a.system.entry.js → p-320f9186.system.entry.js} +2 -2
- package/dist/ionic/{p-6ef17d86.system.entry.js → p-3339b5ca.system.entry.js} +1 -1
- package/dist/ionic/p-39a3eca2.entry.js +4 -0
- package/dist/ionic/{p-703f62c1.entry.js → p-3af6a819.entry.js} +1 -1
- package/dist/ionic/{p-8a5152e5.entry.js → p-3f7e6661.entry.js} +1 -1
- package/dist/ionic/{p-814efd87.system.entry.js → p-4195e4d0.system.entry.js} +1 -1
- package/dist/ionic/{p-dbc3e90c.entry.js → p-454c2bfe.entry.js} +1 -1
- package/dist/ionic/{p-2690b1de.js → p-46111310.js} +1 -1
- package/dist/ionic/p-46f407f0.system.js +4 -0
- package/dist/ionic/{p-4809ddae.system.entry.js → p-47915d5c.system.entry.js} +1 -1
- package/dist/ionic/{p-5ad55625.entry.js → p-49a47e7c.entry.js} +1 -1
- package/dist/ionic/p-4b078620.entry.js +4 -0
- package/dist/ionic/{p-332aa81e.entry.js → p-4c24ae09.entry.js} +1 -1
- package/dist/ionic/{p-904df2ee.system.entry.js → p-4c3d0457.system.entry.js} +1 -1
- package/dist/ionic/{p-530207f9.entry.js → p-4f1d1637.entry.js} +1 -1
- package/dist/ionic/{p-341b3f37.entry.js → p-4fc2a1ce.entry.js} +1 -1
- package/dist/ionic/{p-53d69c70.system.entry.js → p-5015ef54.system.entry.js} +1 -1
- package/dist/ionic/{p-e8a713b5.entry.js → p-5087e4df.entry.js} +1 -1
- package/dist/ionic/{p-5895b91d.entry.js → p-5408ee96.entry.js} +1 -1
- package/dist/ionic/p-55b9eb6b.system.entry.js +4 -0
- package/dist/ionic/p-56932fb6.entry.js +4 -0
- package/dist/ionic/{p-987e38ef.system.entry.js → p-56c470c2.system.entry.js} +1 -1
- package/dist/ionic/{p-5c26fed5.system.entry.js → p-5983ad03.system.entry.js} +1 -1
- package/dist/ionic/p-5a82c7b9.system.entry.js +4 -0
- package/dist/ionic/p-5e074809.system.entry.js +4 -0
- package/dist/ionic/{p-e81c3ca2.system.entry.js → p-676e0f71.system.entry.js} +1 -1
- package/dist/ionic/{p-eac224fa.entry.js → p-70605125.entry.js} +1 -1
- package/dist/ionic/{p-9fd3ca09.system.entry.js → p-70e00e9f.system.entry.js} +1 -1
- package/dist/ionic/p-70e5135e.system.entry.js +4 -0
- package/dist/ionic/{p-1472c130.entry.js → p-71044f08.entry.js} +1 -1
- package/dist/ionic/{p-fa0bf39d.system.entry.js → p-75a6989a.system.entry.js} +1 -1
- package/dist/ionic/{p-68afa357.system.entry.js → p-7e5972a0.system.entry.js} +2 -2
- package/dist/ionic/p-8134b3c4.entry.js +4 -0
- package/dist/ionic/{p-4f77a080.system.entry.js → p-89f2d585.system.entry.js} +1 -1
- package/dist/ionic/{p-6cf780b6.system.entry.js → p-8ffff03f.system.entry.js} +1 -1
- package/dist/ionic/p-90f77fc2.entry.js +4 -0
- package/dist/ionic/{p-d277ba16.entry.js → p-91cb391a.entry.js} +1 -1
- package/dist/ionic/{p-bc3d649d.entry.js → p-9277e3d2.entry.js} +1 -1
- package/dist/ionic/{p-ca5bb110.system.entry.js → p-94d20e10.system.entry.js} +1 -1
- package/dist/ionic/{p-48f60474.entry.js → p-962f482c.entry.js} +1 -1
- package/dist/ionic/p-9832568f.entry.js +4 -0
- package/dist/ionic/{p-f956e38a.entry.js → p-9876ce3b.entry.js} +1 -1
- package/dist/ionic/{p-151e8afd.entry.js → p-9a06b83d.entry.js} +1 -1
- package/dist/ionic/{p-f8f8c5a8.system.entry.js → p-9dbd1f93.system.entry.js} +1 -1
- package/dist/ionic/{p-c54b167f.system.entry.js → p-9e829e8f.system.entry.js} +1 -1
- package/dist/ionic/p-a0351a92.system.js +4 -0
- package/dist/ionic/{p-c927dbe2.system.entry.js → p-a0dd50e4.system.entry.js} +1 -1
- package/dist/ionic/{p-2b86020c.system.entry.js → p-a4ce5696.system.entry.js} +1 -1
- package/dist/ionic/{p-1ba197b6.entry.js → p-a51785b7.entry.js} +1 -1
- package/dist/ionic/{p-e292247e.system.entry.js → p-a6f505f5.system.entry.js} +1 -1
- package/dist/ionic/{p-d061515d.system.entry.js → p-ac058b0e.system.entry.js} +1 -1
- package/dist/ionic/{p-38010e7c.system.entry.js → p-ae6f15b0.system.entry.js} +1 -1
- package/dist/ionic/{p-91b568e2.system.entry.js → p-b0fc315c.system.entry.js} +1 -1
- package/dist/ionic/p-b1b68c3e.entry.js +4 -0
- package/dist/ionic/{p-e93cd31c.entry.js → p-b80dfa1b.entry.js} +1 -1
- package/dist/ionic/{p-df0d39c7.system.entry.js → p-b8d966bb.system.entry.js} +2 -2
- package/dist/ionic/{p-90f8498c.entry.js → p-ba8fd3f7.entry.js} +1 -1
- package/dist/ionic/{p-3d977e09.system.entry.js → p-bd62a431.system.entry.js} +2 -2
- package/dist/ionic/{p-70f6b982.entry.js → p-bebb01a5.entry.js} +1 -1
- package/dist/ionic/p-c34a80bd.entry.js +4 -0
- package/dist/ionic/{p-ca6decbd.entry.js → p-cfd91e4b.entry.js} +1 -1
- package/dist/ionic/{p-aa79cc0e.system.entry.js → p-d3a32834.system.entry.js} +2 -2
- package/dist/ionic/{p-275dd0ba.system.entry.js → p-d5559e4d.system.entry.js} +1 -1
- package/dist/ionic/p-d724072e.system.entry.js +4 -0
- package/dist/ionic/{p-55bc2a11.system.entry.js → p-d833beb7.system.entry.js} +1 -1
- package/dist/ionic/p-d8d6ebc0.system.js +1 -1
- package/dist/ionic/{p-7c93f00b.system.entry.js → p-da29453c.system.entry.js} +1 -1
- package/dist/ionic/{p-e099a6f3.entry.js → p-dffd0e36.entry.js} +1 -1
- package/dist/ionic/{p-07584ab4.system.js → p-e22c0afe.system.js} +1 -1
- package/dist/ionic/{p-1c42ad90.entry.js → p-eb1428cc.entry.js} +1 -1
- package/dist/ionic/{p-e1ad8e76.entry.js → p-f49da44a.entry.js} +1 -1
- package/dist/ionic/p-f5006fa9.system.entry.js +4 -0
- package/dist/ionic/p-fe9a80b7.entry.js +4 -0
- package/dist/types/components/content/content.d.ts +8 -0
- package/dist/types/components/input/input.d.ts +4 -0
- package/dist/types/components/modal/modal-interface.d.ts +1 -0
- package/dist/types/components/modal/modal.d.ts +18 -0
- package/dist/types/components/picker-column/picker-column.d.ts +35 -0
- package/dist/types/components/popover/popover-interface.d.ts +1 -0
- package/dist/types/components/popover/popover.d.ts +18 -0
- package/dist/types/components.d.ts +32 -0
- package/dist/types/utils/overlays.d.ts +1 -0
- package/hydrate/index.js +309 -153
- package/package.json +1 -1
- package/dist/esm-es5/input-shims-0314bbe5.js +0 -4
- package/dist/ionic/p-34f26d8b.entry.js +0 -4
- package/dist/ionic/p-4d2b2d23.system.entry.js +0 -4
- package/dist/ionic/p-582db405.system.entry.js +0 -4
- package/dist/ionic/p-7372cf23.system.entry.js +0 -4
- package/dist/ionic/p-84ead641.entry.js +0 -4
- package/dist/ionic/p-91dabef7.system.js +0 -4
- package/dist/ionic/p-a28ea4d8.system.entry.js +0 -4
- package/dist/ionic/p-a39a73e3.entry.js +0 -4
- package/dist/ionic/p-a90201f2.js +0 -4
- package/dist/ionic/p-ac045dad.entry.js +0 -4
- package/dist/ionic/p-ba35f07f.entry.js +0 -4
- package/dist/ionic/p-c2762c6a.system.entry.js +0 -4
- package/dist/ionic/p-cc258008.entry.js +0 -4
- package/dist/ionic/p-ce5bf737.system.entry.js +0 -4
- package/dist/ionic/p-cf45a5c7.system.entry.js +0 -4
- package/dist/ionic/p-dfb78785.system.js +0 -4
- package/dist/ionic/p-e5f99a0d.entry.js +0 -4
- package/dist/ionic/p-e781c893.entry.js +0 -4
- package/dist/ionic/p-ec178f19.entry.js +0 -4
- package/dist/ionic/p-f6fec6a0.entry.js +0 -4
|
@@ -48,6 +48,7 @@ export class Content {
|
|
|
48
48
|
};
|
|
49
49
|
this.color = undefined;
|
|
50
50
|
this.fullscreen = false;
|
|
51
|
+
this.fixedSlotPlacement = 'after';
|
|
51
52
|
this.forceOverscroll = undefined;
|
|
52
53
|
this.scrollX = false;
|
|
53
54
|
this.scrollY = true;
|
|
@@ -329,13 +330,13 @@ export class Content {
|
|
|
329
330
|
}
|
|
330
331
|
}
|
|
331
332
|
render() {
|
|
332
|
-
const { isMainContent, scrollX, scrollY, el } = this;
|
|
333
|
+
const { fixedSlotPlacement, isMainContent, scrollX, scrollY, el } = this;
|
|
333
334
|
const rtl = isRTL(el) ? 'rtl' : 'ltr';
|
|
334
335
|
const mode = getIonMode(this);
|
|
335
336
|
const forceOverscroll = this.shouldForceOverscroll();
|
|
336
337
|
const transitionShadow = mode === 'ios';
|
|
337
338
|
this.resize();
|
|
338
|
-
return (h(Host, { key: '
|
|
339
|
+
return (h(Host, { key: 'f599a7da14969df38c20a6f650179d2a319fb58b', role: isMainContent ? 'main' : undefined, class: createColorClasses(this.color, {
|
|
339
340
|
[mode]: true,
|
|
340
341
|
'content-sizing': hostContext('ion-popover', this.el),
|
|
341
342
|
overscroll: forceOverscroll,
|
|
@@ -343,12 +344,12 @@ export class Content {
|
|
|
343
344
|
}), style: {
|
|
344
345
|
'--offset-top': `${this.cTop}px`,
|
|
345
346
|
'--offset-bottom': `${this.cBottom}px`,
|
|
346
|
-
} }, h("div", { key: '
|
|
347
|
+
} }, h("div", { key: '7c545c3c95ea05abd036d0462936ac153d2a8fc6', ref: (el) => (this.backgroundContentEl = el), id: "background-content", part: "background" }), fixedSlotPlacement === 'before' ? h("slot", { name: "fixed" }) : null, h("div", { key: 'a67ab7438466c99f74b7ba59964802c3ba86ac5b', class: {
|
|
347
348
|
'inner-scroll': true,
|
|
348
349
|
'scroll-x': scrollX,
|
|
349
350
|
'scroll-y': scrollY,
|
|
350
351
|
overscroll: (scrollX || scrollY) && forceOverscroll,
|
|
351
|
-
}, ref: (scrollEl) => (this.scrollEl = scrollEl), onScroll: this.scrollEvents ? (ev) => this.onScroll(ev) : undefined, part: "scroll" }, h("slot", { key: '
|
|
352
|
+
}, ref: (scrollEl) => (this.scrollEl = scrollEl), onScroll: this.scrollEvents ? (ev) => this.onScroll(ev) : undefined, part: "scroll" }, h("slot", { key: '6d10fcac2e40b4dd6c20d91a8957ac07251d2fa7' })), transitionShadow ? (h("div", { class: "transition-effect" }, h("div", { class: "transition-cover" }), h("div", { class: "transition-shadow" }))) : null, fixedSlotPlacement === 'after' ? h("slot", { name: "fixed" }) : null));
|
|
352
353
|
}
|
|
353
354
|
static get is() { return "ion-content"; }
|
|
354
355
|
static get encapsulation() { return "shadow"; }
|
|
@@ -405,6 +406,24 @@ export class Content {
|
|
|
405
406
|
"reflect": false,
|
|
406
407
|
"defaultValue": "false"
|
|
407
408
|
},
|
|
409
|
+
"fixedSlotPlacement": {
|
|
410
|
+
"type": "string",
|
|
411
|
+
"mutable": false,
|
|
412
|
+
"complexType": {
|
|
413
|
+
"original": "'after' | 'before'",
|
|
414
|
+
"resolved": "\"after\" | \"before\"",
|
|
415
|
+
"references": {}
|
|
416
|
+
},
|
|
417
|
+
"required": false,
|
|
418
|
+
"optional": false,
|
|
419
|
+
"docs": {
|
|
420
|
+
"tags": [],
|
|
421
|
+
"text": "Controls where the fixed content is placed relative to the main content\nin the DOM. This can be used to control the order in which fixed elements\nreceive keyboard focus.\nFor example, if a FAB in the fixed slot should receive keyboard focus before\nthe main page content, set this property to `'before'`."
|
|
422
|
+
},
|
|
423
|
+
"attribute": "fixed-slot-placement",
|
|
424
|
+
"reflect": false,
|
|
425
|
+
"defaultValue": "'after'"
|
|
426
|
+
},
|
|
408
427
|
"forceOverscroll": {
|
|
409
428
|
"type": "boolean",
|
|
410
429
|
"mutable": true,
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
|
+
*/
|
|
4
|
+
import { newSpecPage } from "@stencil/core/testing";
|
|
5
|
+
import { Content } from "../content";
|
|
6
|
+
describe('content: fixed slot placement', () => {
|
|
7
|
+
it('should should fixed slot after content', async () => {
|
|
8
|
+
const page = await newSpecPage({
|
|
9
|
+
components: [Content],
|
|
10
|
+
html: '<ion-content></ion-content>',
|
|
11
|
+
});
|
|
12
|
+
const content = page.body.querySelector('ion-content');
|
|
13
|
+
const fixedSlot = content.shadowRoot.querySelector('slot[name="fixed"]');
|
|
14
|
+
const scrollEl = content.shadowRoot.querySelector('[part="scroll"]');
|
|
15
|
+
expect(fixedSlot.nextElementSibling).not.toBe(scrollEl);
|
|
16
|
+
});
|
|
17
|
+
it('should should fixed slot before content', async () => {
|
|
18
|
+
const page = await newSpecPage({
|
|
19
|
+
components: [Content],
|
|
20
|
+
html: `<ion-content fixed-slot-placement="before"></ion-content>`,
|
|
21
|
+
});
|
|
22
|
+
const content = page.body.querySelector('ion-content');
|
|
23
|
+
const fixedSlot = content.shadowRoot.querySelector('slot[name="fixed"]');
|
|
24
|
+
const scrollEl = content.shadowRoot.querySelector('[part="scroll"]');
|
|
25
|
+
expect(fixedSlot.nextElementSibling).toBe(scrollEl);
|
|
26
|
+
});
|
|
27
|
+
});
|
|
@@ -85,10 +85,10 @@ export class Datetime {
|
|
|
85
85
|
const { activeParts } = this;
|
|
86
86
|
return Array.isArray(activeParts) ? activeParts[0] : activeParts;
|
|
87
87
|
};
|
|
88
|
-
this.closeParentOverlay = () => {
|
|
88
|
+
this.closeParentOverlay = (role) => {
|
|
89
89
|
const popoverOrModal = this.el.closest('ion-modal, ion-popover');
|
|
90
90
|
if (popoverOrModal) {
|
|
91
|
-
popoverOrModal.dismiss();
|
|
91
|
+
popoverOrModal.dismiss(undefined, role);
|
|
92
92
|
}
|
|
93
93
|
};
|
|
94
94
|
this.setWorkingParts = (parts) => {
|
|
@@ -758,7 +758,7 @@ export class Datetime {
|
|
|
758
758
|
}
|
|
759
759
|
}
|
|
760
760
|
if (closeOverlay) {
|
|
761
|
-
this.closeParentOverlay();
|
|
761
|
+
this.closeParentOverlay(CONFIRM_ROLE);
|
|
762
762
|
}
|
|
763
763
|
}
|
|
764
764
|
/**
|
|
@@ -778,7 +778,7 @@ export class Datetime {
|
|
|
778
778
|
async cancel(closeOverlay = false) {
|
|
779
779
|
this.ionCancel.emit();
|
|
780
780
|
if (closeOverlay) {
|
|
781
|
-
this.closeParentOverlay();
|
|
781
|
+
this.closeParentOverlay(CANCEL_ROLE);
|
|
782
782
|
}
|
|
783
783
|
}
|
|
784
784
|
get isCalendarPicker() {
|
|
@@ -1090,7 +1090,7 @@ export class Datetime {
|
|
|
1090
1090
|
const todayString = workingParts.day !== null
|
|
1091
1091
|
? `${workingParts.year}-${workingParts.month}-${workingParts.day}`
|
|
1092
1092
|
: `${defaultParts.year}-${defaultParts.month}-${defaultParts.day}`;
|
|
1093
|
-
return (h("ion-picker-column", { class: "date-column", color: this.color, disabled: disabled, value: todayString, onIonChange: (ev) => {
|
|
1093
|
+
return (h("ion-picker-column", { "aria-label": "Select a date", class: "date-column", color: this.color, disabled: disabled, value: todayString, onIonChange: (ev) => {
|
|
1094
1094
|
const { value } = ev.detail;
|
|
1095
1095
|
const findPart = parts.find(({ month, day, year }) => value === `${year}-${month}-${day}`);
|
|
1096
1096
|
this.setWorkingParts(Object.assign(Object.assign({}, workingParts), findPart));
|
|
@@ -1165,7 +1165,7 @@ export class Datetime {
|
|
|
1165
1165
|
const { disabled, workingParts } = this;
|
|
1166
1166
|
const activePart = this.getActivePartsWithFallback();
|
|
1167
1167
|
const pickerColumnValue = (_a = (workingParts.day !== null ? workingParts.day : this.defaultParts.day)) !== null && _a !== void 0 ? _a : undefined;
|
|
1168
|
-
return (h("ion-picker-column", { class: "day-column", color: this.color, disabled: disabled, value: pickerColumnValue, onIonChange: (ev) => {
|
|
1168
|
+
return (h("ion-picker-column", { "aria-label": "Select a day", class: "day-column", color: this.color, disabled: disabled, value: pickerColumnValue, onIonChange: (ev) => {
|
|
1169
1169
|
this.setWorkingParts(Object.assign(Object.assign({}, workingParts), { day: ev.detail.value }));
|
|
1170
1170
|
this.setActiveParts(Object.assign(Object.assign({}, activePart), { day: ev.detail.value }));
|
|
1171
1171
|
ev.stopPropagation();
|
|
@@ -1177,7 +1177,7 @@ export class Datetime {
|
|
|
1177
1177
|
}
|
|
1178
1178
|
const { disabled, workingParts } = this;
|
|
1179
1179
|
const activePart = this.getActivePartsWithFallback();
|
|
1180
|
-
return (h("ion-picker-column", { class: "month-column", color: this.color, disabled: disabled, value: workingParts.month, onIonChange: (ev) => {
|
|
1180
|
+
return (h("ion-picker-column", { "aria-label": "Select a month", class: "month-column", color: this.color, disabled: disabled, value: workingParts.month, onIonChange: (ev) => {
|
|
1181
1181
|
this.setWorkingParts(Object.assign(Object.assign({}, workingParts), { month: ev.detail.value }));
|
|
1182
1182
|
this.setActiveParts(Object.assign(Object.assign({}, activePart), { month: ev.detail.value }));
|
|
1183
1183
|
ev.stopPropagation();
|
|
@@ -1189,7 +1189,7 @@ export class Datetime {
|
|
|
1189
1189
|
}
|
|
1190
1190
|
const { disabled, workingParts } = this;
|
|
1191
1191
|
const activePart = this.getActivePartsWithFallback();
|
|
1192
|
-
return (h("ion-picker-column", { class: "year-column", color: this.color, disabled: disabled, value: workingParts.year, onIonChange: (ev) => {
|
|
1192
|
+
return (h("ion-picker-column", { "aria-label": "Select a year", class: "year-column", color: this.color, disabled: disabled, value: workingParts.year, onIonChange: (ev) => {
|
|
1193
1193
|
this.setWorkingParts(Object.assign(Object.assign({}, workingParts), { year: ev.detail.value }));
|
|
1194
1194
|
this.setActiveParts(Object.assign(Object.assign({}, activePart), { year: ev.detail.value }));
|
|
1195
1195
|
ev.stopPropagation();
|
|
@@ -1222,7 +1222,7 @@ export class Datetime {
|
|
|
1222
1222
|
if (hoursData.length === 0)
|
|
1223
1223
|
return [];
|
|
1224
1224
|
const activePart = this.getActivePartsWithFallback();
|
|
1225
|
-
return (h("ion-picker-column", { color: this.color, disabled: disabled, value: activePart.hour, numericInput: true, onIonChange: (ev) => {
|
|
1225
|
+
return (h("ion-picker-column", { "aria-label": "Select an hour", color: this.color, disabled: disabled, value: activePart.hour, numericInput: true, onIonChange: (ev) => {
|
|
1226
1226
|
this.setWorkingParts(Object.assign(Object.assign({}, workingParts), { hour: ev.detail.value }));
|
|
1227
1227
|
this.setActiveParts(Object.assign(Object.assign({}, activePart), { hour: ev.detail.value }));
|
|
1228
1228
|
ev.stopPropagation();
|
|
@@ -1233,7 +1233,7 @@ export class Datetime {
|
|
|
1233
1233
|
if (minutesData.length === 0)
|
|
1234
1234
|
return [];
|
|
1235
1235
|
const activePart = this.getActivePartsWithFallback();
|
|
1236
|
-
return (h("ion-picker-column", { color: this.color, disabled: disabled, value: activePart.minute, numericInput: true, onIonChange: (ev) => {
|
|
1236
|
+
return (h("ion-picker-column", { "aria-label": "Select a minute", color: this.color, disabled: disabled, value: activePart.minute, numericInput: true, onIonChange: (ev) => {
|
|
1237
1237
|
this.setWorkingParts(Object.assign(Object.assign({}, workingParts), { minute: ev.detail.value }));
|
|
1238
1238
|
this.setActiveParts(Object.assign(Object.assign({}, activePart), { minute: ev.detail.value }));
|
|
1239
1239
|
ev.stopPropagation();
|
|
@@ -1246,7 +1246,7 @@ export class Datetime {
|
|
|
1246
1246
|
}
|
|
1247
1247
|
const activePart = this.getActivePartsWithFallback();
|
|
1248
1248
|
const isDayPeriodRTL = isLocaleDayPeriodRTL(this.locale);
|
|
1249
|
-
return (h("ion-picker-column", { style: isDayPeriodRTL ? { order: '-1' } : {}, color: this.color, disabled: disabled, value: activePart.ampm, onIonChange: (ev) => {
|
|
1249
|
+
return (h("ion-picker-column", { "aria-label": "Select a day period", style: isDayPeriodRTL ? { order: '-1' } : {}, color: this.color, disabled: disabled, value: activePart.ampm, onIonChange: (ev) => {
|
|
1250
1250
|
const hour = calculateHourFromAMPM(workingParts, ev.detail.value);
|
|
1251
1251
|
this.setWorkingParts(Object.assign(Object.assign({}, workingParts), { ampm: ev.detail.value, hour }));
|
|
1252
1252
|
this.setActiveParts(Object.assign(Object.assign({}, activePart), { ampm: ev.detail.value, hour }));
|
|
@@ -1556,7 +1556,7 @@ export class Datetime {
|
|
|
1556
1556
|
const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
|
|
1557
1557
|
const hasWheelVariant = hasDatePresentation && preferWheel;
|
|
1558
1558
|
renderHiddenInput(true, el, name, formatValue(value), disabled);
|
|
1559
|
-
return (h(Host, { key: '
|
|
1559
|
+
return (h(Host, { key: '4e247382419e963381c8dcde52ba5aaaae0e6cee', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, createColorClasses(color, {
|
|
1560
1560
|
[mode]: true,
|
|
1561
1561
|
['datetime-readonly']: readonly,
|
|
1562
1562
|
['datetime-disabled']: disabled,
|
|
@@ -1566,7 +1566,7 @@ export class Datetime {
|
|
|
1566
1566
|
[`datetime-size-${size}`]: true,
|
|
1567
1567
|
[`datetime-prefer-wheel`]: hasWheelVariant,
|
|
1568
1568
|
[`datetime-grid`]: isGridStyle,
|
|
1569
|
-
})) }, h("div", { key: '
|
|
1569
|
+
})) }, h("div", { key: '27bc39dd318bab9dc4078eedc4fc1b4842f145e6', class: "intersection-tracker", ref: (el) => (this.intersectionTrackerRef = el) }), this.renderDatetime(mode)));
|
|
1570
1570
|
}
|
|
1571
1571
|
static get is() { return "ion-datetime"; }
|
|
1572
1572
|
static get encapsulation() { return "shadow"; }
|
|
@@ -2396,5 +2396,7 @@ export class Datetime {
|
|
|
2396
2396
|
}
|
|
2397
2397
|
}
|
|
2398
2398
|
let datetimeIds = 0;
|
|
2399
|
+
const CANCEL_ROLE = 'datetime-cancel';
|
|
2400
|
+
const CONFIRM_ROLE = 'datetime-confirm';
|
|
2399
2401
|
const WHEEL_ITEM_PART = 'wheel-item';
|
|
2400
2402
|
const WHEEL_ITEM_ACTIVE_PART = `active`;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
|
+
*/
|
|
4
|
+
import { expect } from "@playwright/test";
|
|
5
|
+
import { configs, test } from "../../../../utils/test/playwright/index";
|
|
6
|
+
configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ config, title }) => {
|
|
7
|
+
test.describe(title('datetime: overlay roles'), () => {
|
|
8
|
+
test.beforeEach(async ({ page }) => {
|
|
9
|
+
await page.setContent(`
|
|
10
|
+
<ion-modal>
|
|
11
|
+
<ion-datetime></ion-datetime>
|
|
12
|
+
</ion-modal>
|
|
13
|
+
`, config);
|
|
14
|
+
});
|
|
15
|
+
test('should pass role to overlay when calling confirm method', async ({ page }) => {
|
|
16
|
+
const ionModalDidDismiss = await page.spyOnEvent('ionModalDidDismiss');
|
|
17
|
+
const modal = page.locator('ion-modal');
|
|
18
|
+
const datetime = page.locator('ion-datetime');
|
|
19
|
+
await modal.evaluate((el) => el.present());
|
|
20
|
+
await datetime.evaluate((el) => el.confirm(true));
|
|
21
|
+
await ionModalDidDismiss.next();
|
|
22
|
+
expect(ionModalDidDismiss).toHaveReceivedEventDetail({ data: undefined, role: 'datetime-confirm' });
|
|
23
|
+
});
|
|
24
|
+
test('should pass role to overlay when calling cancel method', async ({ page }) => {
|
|
25
|
+
const ionModalDidDismiss = await page.spyOnEvent('ionModalDidDismiss');
|
|
26
|
+
const modal = page.locator('ion-modal');
|
|
27
|
+
const datetime = page.locator('ion-datetime');
|
|
28
|
+
await modal.evaluate((el) => el.present());
|
|
29
|
+
await datetime.evaluate((el) => el.cancel(true));
|
|
30
|
+
await ionModalDidDismiss.next();
|
|
31
|
+
expect(ionModalDidDismiss).toHaveReceivedEventDetail({ data: undefined, role: 'datetime-cancel' });
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
});
|
|
@@ -337,11 +337,11 @@ export class DatetimeButton {
|
|
|
337
337
|
render() {
|
|
338
338
|
const { color, dateText, timeText, selectedButton, datetimeActive, disabled } = this;
|
|
339
339
|
const mode = getIonMode(this);
|
|
340
|
-
return (h(Host, { key: '
|
|
340
|
+
return (h(Host, { key: '0be955404133adbb31ae16a6599014bb29765f19', class: createColorClasses(color, {
|
|
341
341
|
[mode]: true,
|
|
342
342
|
[`${selectedButton}-active`]: datetimeActive,
|
|
343
343
|
['datetime-button-disabled']: disabled,
|
|
344
|
-
}) }, dateText && (h("button", { key: '
|
|
344
|
+
}) }, dateText && (h("button", { key: '812dcb50b17768cc13a5cfa0bcce8b113cee0f09', class: "ion-activatable", id: "date-button", "aria-expanded": datetimeActive ? 'true' : 'false', onClick: this.handleDateClick, disabled: disabled, part: "native", ref: (el) => (this.dateTargetEl = el) }, h("slot", { key: '46930c740a32a78502df9e651f9bd5914d6a9fea', name: "date-target" }, dateText), mode === 'md' && h("ion-ripple-effect", { key: '0602999cc8435dc37aa22da7f5531bc8cb71e1b4' }))), timeText && (h("button", { key: 'ecdd21da5181ecbdce03209f9f6673b7dcbc1f78', class: "ion-activatable", id: "time-button", "aria-expanded": datetimeActive ? 'true' : 'false', onClick: this.handleTimeClick, disabled: disabled, part: "native", ref: (el) => (this.timeTargetEl = el) }, h("slot", { key: 'b5b093b5166d12d11e27360788edaac916d44390', name: "time-target" }, timeText), mode === 'md' && h("ion-ripple-effect", { key: '70bb3a04f4748d13233eeb257503968dbd1161a9' })))));
|
|
345
345
|
}
|
|
346
346
|
static get is() { return "ion-datetime-button"; }
|
|
347
347
|
static get encapsulation() { return "shadow"; }
|
|
@@ -47,12 +47,12 @@ export class Fab {
|
|
|
47
47
|
render() {
|
|
48
48
|
const { horizontal, vertical, edge } = this;
|
|
49
49
|
const mode = getIonMode(this);
|
|
50
|
-
return (h(Host, { key: '
|
|
50
|
+
return (h(Host, { key: 'cb44cf6486b0a6439b99da87c065b0b52e2514f4', class: {
|
|
51
51
|
[mode]: true,
|
|
52
52
|
[`fab-horizontal-${horizontal}`]: horizontal !== undefined,
|
|
53
53
|
[`fab-vertical-${vertical}`]: vertical !== undefined,
|
|
54
54
|
'fab-edge': edge,
|
|
55
|
-
} }, h("slot", { key: '
|
|
55
|
+
} }, h("slot", { key: '1ed484c7ecb10cd81fbca9a4f5c4049bf82f9f8a' })));
|
|
56
56
|
}
|
|
57
57
|
static get is() { return "ion-fab"; }
|
|
58
58
|
static get encapsulation() { return "shadow"; }
|
|
@@ -63,7 +63,7 @@ export class FabButton {
|
|
|
63
63
|
rel: this.rel,
|
|
64
64
|
target: this.target,
|
|
65
65
|
};
|
|
66
|
-
return (h(Host, { key: '
|
|
66
|
+
return (h(Host, { key: 'eb347f7d6749c40637540d84778eb8d1b667a947', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses(color, {
|
|
67
67
|
[mode]: true,
|
|
68
68
|
'fab-button-in-list': inList,
|
|
69
69
|
'fab-button-translucent-in-list': inList && translucent,
|
|
@@ -74,7 +74,7 @@ export class FabButton {
|
|
|
74
74
|
'ion-activatable': true,
|
|
75
75
|
'ion-focusable': true,
|
|
76
76
|
[`fab-button-${size}`]: size !== undefined,
|
|
77
|
-
}) }, h(TagType, Object.assign({ key: '
|
|
77
|
+
}) }, h(TagType, Object.assign({ key: '83e853c8815f41543c848eb2e05ec2bb1716110a' }, 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: '798deede94de658e4345acf7c2aafe2ab2567b0b', "aria-hidden": "true", icon: this.closeIcon, part: "close-icon", class: "close-icon", lazy: false }), h("span", { key: '99252fde6de1aca73fc240a6da7e29acac9acb18', class: "button-inner" }, h("slot", { key: 'dc73e9b41bf1f0e385e5784f975dfb81e37c8dfb' })), mode === 'md' && h("ion-ripple-effect", { key: '8413e162f44a0350f54dff06cff7aad101de3549' }))));
|
|
78
78
|
}
|
|
79
79
|
static get is() { return "ion-fab-button"; }
|
|
80
80
|
static get encapsulation() { return "shadow"; }
|
|
@@ -18,11 +18,11 @@ export class FabList {
|
|
|
18
18
|
}
|
|
19
19
|
render() {
|
|
20
20
|
const mode = getIonMode(this);
|
|
21
|
-
return (h(Host, { key: '
|
|
21
|
+
return (h(Host, { key: 'fa1d195b9950654ba0e984bf61d981c977d05275', class: {
|
|
22
22
|
[mode]: true,
|
|
23
23
|
'fab-list-active': this.activated,
|
|
24
24
|
[`fab-list-side-${this.side}`]: true,
|
|
25
|
-
} }, h("slot", { key: '
|
|
25
|
+
} }, h("slot", { key: '2ec738c66c05112e1e2521155d6adfc36d2fd1db' })));
|
|
26
26
|
}
|
|
27
27
|
static get is() { return "ion-fab-list"; }
|
|
28
28
|
static get encapsulation() { return "shadow"; }
|
|
@@ -80,7 +80,7 @@ export class Footer {
|
|
|
80
80
|
const mode = getIonMode(this);
|
|
81
81
|
const tabs = this.el.closest('ion-tabs');
|
|
82
82
|
const tabBar = tabs === null || tabs === void 0 ? void 0 : tabs.querySelector(':scope > ion-tab-bar');
|
|
83
|
-
return (h(Host, { key: '
|
|
83
|
+
return (h(Host, { key: '5da19dc38ba73e1ddfd1bef3ebd485105d77c751', role: "contentinfo", class: {
|
|
84
84
|
[mode]: true,
|
|
85
85
|
// Used internally for styling
|
|
86
86
|
[`footer-${mode}`]: true,
|
|
@@ -88,7 +88,7 @@ export class Footer {
|
|
|
88
88
|
[`footer-translucent-${mode}`]: translucent,
|
|
89
89
|
['footer-toolbar-padding']: !this.keyboardVisible && (!tabBar || tabBar.slot !== 'bottom'),
|
|
90
90
|
[`footer-collapse-${collapse}`]: collapse !== undefined,
|
|
91
|
-
} }, mode === 'ios' && translucent && h("div", { key: '
|
|
91
|
+
} }, mode === 'ios' && translucent && h("div", { key: 'fafad08090a33d8c4e8a5b63d61929dcb89aab47', class: "footer-background" }), h("slot", { key: 'e0a443d346afa55e4317c0bc1263fdbe3c619559' })));
|
|
92
92
|
}
|
|
93
93
|
static get is() { return "ion-footer"; }
|
|
94
94
|
static get originalStyleUrls() {
|
|
@@ -9,10 +9,10 @@ export class Grid {
|
|
|
9
9
|
}
|
|
10
10
|
render() {
|
|
11
11
|
const mode = getIonMode(this);
|
|
12
|
-
return (h(Host, { key: '
|
|
12
|
+
return (h(Host, { key: '930ce78b02f8360fbca08a35d364d2c09128c6c8', class: {
|
|
13
13
|
[mode]: true,
|
|
14
14
|
'grid-fixed': this.fixed,
|
|
15
|
-
} }, h("slot", { key: '
|
|
15
|
+
} }, h("slot", { key: 'c47bf7ef2197f5ebc42d3e2c55044276fb0db393' })));
|
|
16
16
|
}
|
|
17
17
|
static get is() { return "ion-grid"; }
|
|
18
18
|
static get encapsulation() { return "shadow"; }
|
|
@@ -140,14 +140,14 @@ export class Header {
|
|
|
140
140
|
const collapse = this.collapse || 'none';
|
|
141
141
|
// banner role must be at top level, so remove role if inside a menu
|
|
142
142
|
const roleType = hostContext('ion-menu', this.el) ? 'none' : 'banner';
|
|
143
|
-
return (h(Host, Object.assign({ key: '
|
|
143
|
+
return (h(Host, Object.assign({ key: 'c687314ef290793a9d633ad20cfc5eeb47621e31', role: roleType, class: {
|
|
144
144
|
[mode]: true,
|
|
145
145
|
// Used internally for styling
|
|
146
146
|
[`header-${mode}`]: true,
|
|
147
147
|
[`header-translucent`]: this.translucent,
|
|
148
148
|
[`header-collapse-${collapse}`]: true,
|
|
149
149
|
[`header-translucent-${mode}`]: this.translucent,
|
|
150
|
-
} }, inheritedAttributes), mode === 'ios' && translucent && h("div", { key: '
|
|
150
|
+
} }, inheritedAttributes), mode === 'ios' && translucent && h("div", { key: 'b429996046082405a91e7c23f95516db0b736f12', class: "header-background" }), h("slot", { key: 'e17a8965f8d3a33c1bfcb056c153d8242e5229fa' })));
|
|
151
151
|
}
|
|
152
152
|
static get is() { return "ion-header"; }
|
|
153
153
|
static get originalStyleUrls() {
|
|
@@ -71,7 +71,7 @@ export class Img {
|
|
|
71
71
|
render() {
|
|
72
72
|
const { loadSrc, alt, onLoad, loadError, inheritedAttributes } = this;
|
|
73
73
|
const { draggable } = inheritedAttributes;
|
|
74
|
-
return (h(Host, { key: '
|
|
74
|
+
return (h(Host, { key: '14d24d65ec8e5522192ca58035264971b1ab883b', class: getIonMode(this) }, h("img", { key: '345ba155a5fdce5e66c397a599b7333d37d9cb1d', decoding: "async", src: loadSrc, alt: alt, onLoad: onLoad, onError: loadError, part: "image", draggable: isDraggable(draggable) })));
|
|
75
75
|
}
|
|
76
76
|
static get is() { return "ion-img"; }
|
|
77
77
|
static get encapsulation() { return "shadow"; }
|
|
@@ -167,7 +167,7 @@ export class InfiniteScroll {
|
|
|
167
167
|
render() {
|
|
168
168
|
const mode = getIonMode(this);
|
|
169
169
|
const disabled = this.disabled;
|
|
170
|
-
return (h(Host, { key: '
|
|
170
|
+
return (h(Host, { key: '1444429a86950c449953cbf578436cc8cabf40ec', class: {
|
|
171
171
|
[mode]: true,
|
|
172
172
|
'infinite-scroll-loading': this.isLoading,
|
|
173
173
|
'infinite-scroll-enabled': !disabled,
|
|
@@ -27,11 +27,11 @@ export class InfiniteScrollContent {
|
|
|
27
27
|
}
|
|
28
28
|
render() {
|
|
29
29
|
const mode = getIonMode(this);
|
|
30
|
-
return (h(Host, { key: '
|
|
30
|
+
return (h(Host, { key: '060278bf9cb0321e182352f9613be4ebbb028259', class: {
|
|
31
31
|
[mode]: true,
|
|
32
32
|
// Used internally for styling
|
|
33
33
|
[`infinite-scroll-content-${mode}`]: true,
|
|
34
|
-
} }, h("div", { key: '
|
|
34
|
+
} }, h("div", { key: '07d3cada920145f979ad315bd187fb878e0c3da3', class: "infinite-loading" }, this.loadingSpinner && (h("div", { key: '6254f175d7543d09f3dd47cd0589a2809182cd8c', class: "infinite-loading-spinner" }, h("ion-spinner", { key: 'a6a816d1c65b60b786333b209b63492aa716a283', name: this.loadingSpinner }))), this.loadingText !== undefined && this.renderLoadingText())));
|
|
35
35
|
}
|
|
36
36
|
static get is() { return "ion-infinite-scroll-content"; }
|
|
37
37
|
static get originalStyleUrls() {
|
|
@@ -81,6 +81,7 @@ export class Input {
|
|
|
81
81
|
this.autocorrect = 'off';
|
|
82
82
|
this.autofocus = false;
|
|
83
83
|
this.clearInput = false;
|
|
84
|
+
this.clearInputIcon = undefined;
|
|
84
85
|
this.clearOnEdit = undefined;
|
|
85
86
|
this.counter = false;
|
|
86
87
|
this.counterFormatter = undefined;
|
|
@@ -371,11 +372,13 @@ export class Input {
|
|
|
371
372
|
return this.renderLabel();
|
|
372
373
|
}
|
|
373
374
|
render() {
|
|
374
|
-
const { disabled, fill, readonly, shape, inputId, labelPlacement, el, hasFocus } = this;
|
|
375
|
+
const { disabled, fill, readonly, shape, inputId, labelPlacement, el, hasFocus, clearInputIcon } = this;
|
|
375
376
|
const mode = getIonMode(this);
|
|
376
377
|
const value = this.getValue();
|
|
377
378
|
const inItem = hostContext('ion-item', this.el);
|
|
378
379
|
const shouldRenderHighlight = mode === 'md' && fill !== 'outline' && !inItem;
|
|
380
|
+
const defaultClearIcon = mode === 'ios' ? closeCircle : closeSharp;
|
|
381
|
+
const clearIconData = clearInputIcon !== null && clearInputIcon !== void 0 ? clearInputIcon : defaultClearIcon;
|
|
379
382
|
const hasValue = this.hasValue();
|
|
380
383
|
const hasStartEndSlots = el.querySelector('[slot="start"], [slot="end"]') !== null;
|
|
381
384
|
/**
|
|
@@ -396,7 +399,7 @@ export class Input {
|
|
|
396
399
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
397
400
|
*/
|
|
398
401
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
|
|
399
|
-
return (h(Host, { key: '
|
|
402
|
+
return (h(Host, { key: '72705dc05d44da17c617402c2d236a7b58b314f4', class: createColorClasses(this.color, {
|
|
400
403
|
[mode]: true,
|
|
401
404
|
'has-value': hasValue,
|
|
402
405
|
'has-focus': hasFocus,
|
|
@@ -407,22 +410,14 @@ export class Input {
|
|
|
407
410
|
'in-item': inItem,
|
|
408
411
|
'in-item-color': hostContext('ion-item.ion-color', this.el),
|
|
409
412
|
'input-disabled': disabled,
|
|
410
|
-
}) }, h("label", { key: '
|
|
413
|
+
}) }, h("label", { key: 'f8c3f6da165b1299f0a6ceb5f4801e4d11eef832', class: "input-wrapper", htmlFor: inputId }, this.renderLabelContainer(), h("div", { key: 'a9232033f23a51ec542bf23e7691966eefdf30c1', class: "native-wrapper" }, h("slot", { key: 'c38d8d6a4bbb64d5416a2f5948055610278c4527', name: "start" }), h("input", Object.assign({ key: 'bb00038edf66e9617439b5b12600f38a9ba06dc6', class: "native-input", ref: (input) => (this.nativeInput = input), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder || '', readOnly: readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, type: this.type, value: value, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeydown, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd }, this.inheritedAttributes)), this.clearInput && !readonly && !disabled && (h("button", { key: '8aa7bdac43a74bc16c7163b5af8dff6d5b37ce0a', "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: (ev) => {
|
|
411
414
|
/**
|
|
412
415
|
* This prevents mobile browsers from
|
|
413
416
|
* blurring the input when the clear
|
|
414
417
|
* button is activated.
|
|
415
418
|
*/
|
|
416
419
|
ev.preventDefault();
|
|
417
|
-
},
|
|
418
|
-
/**
|
|
419
|
-
* Prevent the focusin event from bubbling otherwise it will cause the focusin
|
|
420
|
-
* event listener in scroll assist to fire. When this fires, focus will be moved
|
|
421
|
-
* back to the input even if the clear button was never tapped. This poses issues
|
|
422
|
-
* for screen readers as it means users would be unable to swipe past the clear button.
|
|
423
|
-
*/
|
|
424
|
-
ev.stopPropagation();
|
|
425
|
-
}, onClick: this.clearTextInput }, h("ion-icon", { key: '8284ba60924a42fd6d352d23441524f8a027e0ce', "aria-hidden": "true", icon: mode === 'ios' ? closeCircle : closeSharp }))), h("slot", { key: '8f3c04ecc32cb04a06ebb916b79071414b2a5263', name: "end" })), shouldRenderHighlight && h("div", { key: '7e97782b292fd140b3fe7f13de05dfafb4b0fa28', class: "input-highlight" })), this.renderBottomContent()));
|
|
420
|
+
}, onClick: this.clearTextInput }, h("ion-icon", { key: '200261c73f9610ef80609605ef2bc7b0affaf857', "aria-hidden": "true", icon: clearIconData }))), h("slot", { key: '5f4511c2f332c906d1d24dfce77e8758e3869d1f', name: "end" })), shouldRenderHighlight && h("div", { key: '092a55c60b3ca1aaa4cc0ddd782b3ffc7cbc03fa', class: "input-highlight" })), this.renderBottomContent()));
|
|
426
421
|
}
|
|
427
422
|
static get is() { return "ion-input"; }
|
|
428
423
|
static get encapsulation() { return "scoped"; }
|
|
@@ -559,6 +554,23 @@ export class Input {
|
|
|
559
554
|
"reflect": false,
|
|
560
555
|
"defaultValue": "false"
|
|
561
556
|
},
|
|
557
|
+
"clearInputIcon": {
|
|
558
|
+
"type": "string",
|
|
559
|
+
"mutable": false,
|
|
560
|
+
"complexType": {
|
|
561
|
+
"original": "string",
|
|
562
|
+
"resolved": "string | undefined",
|
|
563
|
+
"references": {}
|
|
564
|
+
},
|
|
565
|
+
"required": false,
|
|
566
|
+
"optional": true,
|
|
567
|
+
"docs": {
|
|
568
|
+
"tags": [],
|
|
569
|
+
"text": "The icon to use for the clear button. Only applies when `clearInput` is set to `true`."
|
|
570
|
+
},
|
|
571
|
+
"attribute": "clear-input-icon",
|
|
572
|
+
"reflect": false
|
|
573
|
+
},
|
|
562
574
|
"clearOnEdit": {
|
|
563
575
|
"type": "boolean",
|
|
564
576
|
"mutable": false,
|
|
@@ -83,3 +83,16 @@ describe('input: label rendering', () => {
|
|
|
83
83
|
expect(labelText.textContent).toBe('Label Prop Text');
|
|
84
84
|
});
|
|
85
85
|
});
|
|
86
|
+
// https://github.com/ionic-team/ionic-framework/issues/26974
|
|
87
|
+
describe('input: clear icon', () => {
|
|
88
|
+
it('should render custom icon', async () => {
|
|
89
|
+
const page = await newSpecPage({
|
|
90
|
+
components: [Input],
|
|
91
|
+
html: `
|
|
92
|
+
<ion-input clear-input-icon="foo" clear-input="true"></ion-input>
|
|
93
|
+
`,
|
|
94
|
+
});
|
|
95
|
+
const icon = page.body.querySelector('ion-input ion-icon');
|
|
96
|
+
expect(icon.getAttribute('icon')).toBe('foo');
|
|
97
|
+
});
|
|
98
|
+
});
|
|
@@ -60,16 +60,16 @@ export class InputPasswordToggle {
|
|
|
60
60
|
const showPasswordIcon = (_a = this.showIcon) !== null && _a !== void 0 ? _a : eye;
|
|
61
61
|
const hidePasswordIcon = (_b = this.hideIcon) !== null && _b !== void 0 ? _b : eyeOff;
|
|
62
62
|
const isPasswordVisible = type === 'text';
|
|
63
|
-
return (h(Host, { key: '
|
|
63
|
+
return (h(Host, { key: 'ed1c29726ce0c91548f0e2ada61e3f8b5c813d2d', class: createColorClasses(color, {
|
|
64
64
|
[mode]: true,
|
|
65
|
-
}) }, h("ion-button", { key: '
|
|
65
|
+
}) }, h("ion-button", { key: '9698eccdaedb86cf12d20acc53660371b3af3c55', mode: mode, color: color, fill: "clear", shape: "round", "aria-checked": isPasswordVisible ? 'true' : 'false', "aria-label": "show password", role: "switch", type: "button", onPointerDown: (ev) => {
|
|
66
66
|
/**
|
|
67
67
|
* This prevents mobile browsers from
|
|
68
68
|
* blurring the input when the password toggle
|
|
69
69
|
* button is activated.
|
|
70
70
|
*/
|
|
71
71
|
ev.preventDefault();
|
|
72
|
-
}, onClick: this.togglePasswordVisibility }, h("ion-icon", { key: '
|
|
72
|
+
}, onClick: this.togglePasswordVisibility }, h("ion-icon", { key: '1f2119c30b56c800d9af44e6499445a0ebb466cf', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
|
|
73
73
|
}
|
|
74
74
|
static get is() { return "ion-input-password-toggle"; }
|
|
75
75
|
static get encapsulation() { return "shadow"; }
|
|
@@ -18,11 +18,11 @@ export class ItemDivider {
|
|
|
18
18
|
}
|
|
19
19
|
render() {
|
|
20
20
|
const mode = getIonMode(this);
|
|
21
|
-
return (h(Host, { key: '
|
|
21
|
+
return (h(Host, { key: '60fda1dab7dbc0038ec7ff68a661896430f7d5c5', class: createColorClasses(this.color, {
|
|
22
22
|
[mode]: true,
|
|
23
23
|
'item-divider-sticky': this.sticky,
|
|
24
24
|
item: true,
|
|
25
|
-
}) }, h("slot", { key: '
|
|
25
|
+
}) }, h("slot", { key: '6ce072dfc2adfa699a2c34ffe25ed221c74d9eea', name: "start" }), h("div", { key: '9a441be204ee2f0b567432722407c75e3cbbe942', class: "item-divider-inner" }, h("div", { key: 'fd6f2969b345dba51400a290473e594d2d019dc5', class: "item-divider-wrapper" }, h("slot", { key: 'ebf5601b21c4cf199c01bf142865b8da0c1ba4a6' })), h("slot", { key: '249af8f30113f2c986976d518126661f65531121', name: "end" }))));
|
|
26
26
|
}
|
|
27
27
|
static get is() { return "ion-item-divider"; }
|
|
28
28
|
static get encapsulation() { return "shadow"; }
|
|
@@ -6,7 +6,7 @@ import { getIonMode } from "../../global/ionic-global";
|
|
|
6
6
|
export class ItemGroup {
|
|
7
7
|
render() {
|
|
8
8
|
const mode = getIonMode(this);
|
|
9
|
-
return (h(Host, { key: '
|
|
9
|
+
return (h(Host, { key: '24ff047b7c45f963f0dad072c65d38a230c2bc97', role: "group", class: {
|
|
10
10
|
[mode]: true,
|
|
11
11
|
// Used internally for styling
|
|
12
12
|
[`item-group-${mode}`]: true,
|
|
@@ -44,12 +44,12 @@ export class ItemOption {
|
|
|
44
44
|
href: this.href,
|
|
45
45
|
target: this.target,
|
|
46
46
|
};
|
|
47
|
-
return (h(Host, { key: '
|
|
47
|
+
return (h(Host, { key: '1900e015f593fefd710478a2088e052399c957eb', onClick: this.onClick, class: createColorClasses(this.color, {
|
|
48
48
|
[mode]: true,
|
|
49
49
|
'item-option-disabled': disabled,
|
|
50
50
|
'item-option-expandable': expandable,
|
|
51
51
|
'ion-activatable': true,
|
|
52
|
-
}) }, h(TagType, Object.assign({ key: '
|
|
52
|
+
}) }, h(TagType, Object.assign({ key: '5db2bb9bc72b7b00c324e4189cd1b5f862680ebb' }, attrs, { class: "button-native", part: "native", disabled: disabled }), h("span", { key: '6927e812ad001c5e7bd17f440d82c3830c58957b', class: "button-inner" }, h("slot", { key: '0fde4333def94c55d1318868c2bc71e780d5876a', name: "top" }), h("div", { key: '7ecc9ae8ddf66d7ed5d9f30becc9faf820e1c62e', class: "horizontal-wrapper" }, h("slot", { key: 'a15567fd4bd91080e9fbb6bb0c9b0e67d8a67051', name: "start" }), h("slot", { key: '7f86cdd28063e23f9d78997623333c5037c4f364', name: "icon-only" }), h("slot", { key: '4abb69ce3ad6c4917dd87b7b1eb0fa1c69917d73' }), h("slot", { key: '8b35a29f48722040465f182679ac17209937578d', name: "end" })), h("slot", { key: 'fa15a00891b41d66a4ccb51575dec54b72d0059e', name: "bottom" })), mode === 'md' && h("ion-ripple-effect", { key: '0c071910c90fafca8026f59d78f4d9d5224d150a' }))));
|
|
53
53
|
}
|
|
54
54
|
static get is() { return "ion-item-option"; }
|
|
55
55
|
static get encapsulation() { return "shadow"; }
|
|
@@ -17,7 +17,7 @@ export class ItemOptions {
|
|
|
17
17
|
render() {
|
|
18
18
|
const mode = getIonMode(this);
|
|
19
19
|
const isEnd = isEndSide(this.side);
|
|
20
|
-
return (h(Host, { key: '
|
|
20
|
+
return (h(Host, { key: 'e28cd6a236323b5cc203c9b96782aa81024da924', class: {
|
|
21
21
|
[mode]: true,
|
|
22
22
|
// Used internally for styling
|
|
23
23
|
[`item-options-${mode}`]: true,
|
|
@@ -386,7 +386,7 @@ export class ItemSliding {
|
|
|
386
386
|
}
|
|
387
387
|
render() {
|
|
388
388
|
const mode = getIonMode(this);
|
|
389
|
-
return (h(Host, { key: '
|
|
389
|
+
return (h(Host, { key: '99f87c8bd794ae69830b407ba55013ac44793c26', class: {
|
|
390
390
|
[mode]: true,
|
|
391
391
|
'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
|
|
392
392
|
'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
|