@ionic/core 8.0.1-dev.11713879639.102f51a0 → 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/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 -4
- 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/dist/cjs/index.cjs.js +1 -1
- 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 +14 -13
- 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 -4
- 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 -4
- 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/overlays.js +2 -1
- package/dist/docs.json +96 -1
- package/dist/esm/index.js +1 -1
- 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 +14 -13
- 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 -4
- 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/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-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-4761ae79.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 -145
- package/package.json +1 -1
- package/dist/ionic/p-32dfbcdc.entry.js +0 -4
- package/dist/ionic/p-34f26d8b.entry.js +0 -4
- package/dist/ionic/p-582db405.system.entry.js +0 -4
- package/dist/ionic/p-629da37e.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-ce5bf737.system.entry.js +0 -4
- package/dist/ionic/p-cf45a5c7.system.entry.js +0 -4
- package/dist/ionic/p-e781c893.entry.js +0 -4
- package/dist/ionic/p-e832408b.system.entry.js +0 -4
- package/dist/ionic/p-ec178f19.entry.js +0 -4
- package/dist/ionic/p-f6fec6a0.entry.js +0 -4
|
@@ -242,11 +242,11 @@ const ItemDivider = class {
|
|
|
242
242
|
}
|
|
243
243
|
render() {
|
|
244
244
|
const mode = ionicGlobal.getIonMode(this);
|
|
245
|
-
return (index.h(index.Host, { key: '
|
|
245
|
+
return (index.h(index.Host, { key: '60fda1dab7dbc0038ec7ff68a661896430f7d5c5', class: theme.createColorClasses(this.color, {
|
|
246
246
|
[mode]: true,
|
|
247
247
|
'item-divider-sticky': this.sticky,
|
|
248
248
|
item: true,
|
|
249
|
-
}) }, index.h("slot", { key: '
|
|
249
|
+
}) }, index.h("slot", { key: '6ce072dfc2adfa699a2c34ffe25ed221c74d9eea', name: "start" }), index.h("div", { key: '9a441be204ee2f0b567432722407c75e3cbbe942', class: "item-divider-inner" }, index.h("div", { key: 'fd6f2969b345dba51400a290473e594d2d019dc5', class: "item-divider-wrapper" }, index.h("slot", { key: 'ebf5601b21c4cf199c01bf142865b8da0c1ba4a6' })), index.h("slot", { key: '249af8f30113f2c986976d518126661f65531121', name: "end" }))));
|
|
250
250
|
}
|
|
251
251
|
get el() { return index.getElement(this); }
|
|
252
252
|
};
|
|
@@ -267,7 +267,7 @@ const ItemGroup = class {
|
|
|
267
267
|
}
|
|
268
268
|
render() {
|
|
269
269
|
const mode = ionicGlobal.getIonMode(this);
|
|
270
|
-
return (index.h(index.Host, { key: '
|
|
270
|
+
return (index.h(index.Host, { key: '24ff047b7c45f963f0dad072c65d38a230c2bc97', role: "group", class: {
|
|
271
271
|
[mode]: true,
|
|
272
272
|
// Used internally for styling
|
|
273
273
|
[`item-group-${mode}`]: true,
|
|
@@ -337,13 +337,13 @@ const Label = class {
|
|
|
337
337
|
render() {
|
|
338
338
|
const position = this.position;
|
|
339
339
|
const mode = ionicGlobal.getIonMode(this);
|
|
340
|
-
return (index.h(index.Host, { key: '
|
|
340
|
+
return (index.h(index.Host, { key: 'c2c0f388dab910d294efb9fbb409ee4ef829c1ed', class: theme.createColorClasses(this.color, {
|
|
341
341
|
[mode]: true,
|
|
342
342
|
'in-item-color': theme.hostContext('ion-item.ion-color', this.el),
|
|
343
343
|
[`label-${position}`]: position !== undefined,
|
|
344
344
|
[`label-no-animate`]: this.noAnimate,
|
|
345
345
|
'label-rtl': document.dir === 'rtl',
|
|
346
|
-
}) }, index.h("slot", { key: '
|
|
346
|
+
}) }, index.h("slot", { key: '4de6b69950f417873a13c851018ec31ea2686f0a' })));
|
|
347
347
|
}
|
|
348
348
|
get el() { return index.getElement(this); }
|
|
349
349
|
static get watchers() { return {
|
|
@@ -384,7 +384,7 @@ const List = class {
|
|
|
384
384
|
render() {
|
|
385
385
|
const mode = ionicGlobal.getIonMode(this);
|
|
386
386
|
const { lines, inset } = this;
|
|
387
|
-
return (index.h(index.Host, { key: '
|
|
387
|
+
return (index.h(index.Host, { key: '8bde220025a7eeca6da075379c6487c4c9bdddc1', role: "list", class: {
|
|
388
388
|
[mode]: true,
|
|
389
389
|
// Used internally for styling
|
|
390
390
|
[`list-${mode}`]: true,
|
|
@@ -415,10 +415,10 @@ const ListHeader = class {
|
|
|
415
415
|
render() {
|
|
416
416
|
const { lines } = this;
|
|
417
417
|
const mode = ionicGlobal.getIonMode(this);
|
|
418
|
-
return (index.h(index.Host, { key: '
|
|
418
|
+
return (index.h(index.Host, { key: '7e2e050f13722f2b870a2415d99a9e631e9ca267', class: theme.createColorClasses(this.color, {
|
|
419
419
|
[mode]: true,
|
|
420
420
|
[`list-header-lines-${lines}`]: lines !== undefined,
|
|
421
|
-
}) }, index.h("div", { key: '
|
|
421
|
+
}) }, index.h("div", { key: '6117bebc45800d874e9b75355476fbced5cc8398', class: "list-header-inner" }, index.h("slot", { key: '9165fb274cd2c45a5a65c271d8b1f30e8a00c890' }))));
|
|
422
422
|
}
|
|
423
423
|
};
|
|
424
424
|
ListHeader.style = {
|
|
@@ -439,9 +439,9 @@ const Note = class {
|
|
|
439
439
|
}
|
|
440
440
|
render() {
|
|
441
441
|
const mode = ionicGlobal.getIonMode(this);
|
|
442
|
-
return (index.h(index.Host, { key: '
|
|
442
|
+
return (index.h(index.Host, { key: '90ec2fe8c9487608ed8c0bdc32c2e80a6a0890b3', class: theme.createColorClasses(this.color, {
|
|
443
443
|
[mode]: true,
|
|
444
|
-
}) }, index.h("slot", { key: '
|
|
444
|
+
}) }, index.h("slot", { key: '115ee3f79e6c526b0644443aad468e99385d0eda' })));
|
|
445
445
|
}
|
|
446
446
|
};
|
|
447
447
|
Note.style = {
|
|
@@ -474,11 +474,11 @@ const SkeletonText = class {
|
|
|
474
474
|
const animated = this.animated && ionicGlobal.config.getBoolean('animated', true);
|
|
475
475
|
const inMedia = theme.hostContext('ion-avatar', this.el) || theme.hostContext('ion-thumbnail', this.el);
|
|
476
476
|
const mode = ionicGlobal.getIonMode(this);
|
|
477
|
-
return (index.h(index.Host, { key: '
|
|
477
|
+
return (index.h(index.Host, { key: '1a3e78e9a6f740d609d1f0b7a16cb6eff4a2d617', class: {
|
|
478
478
|
[mode]: true,
|
|
479
479
|
'skeleton-text-animated': animated,
|
|
480
480
|
'in-media': inMedia,
|
|
481
|
-
} }, index.h("span", { key: '
|
|
481
|
+
} }, index.h("span", { key: 'be3eabe196ec6e8ec19857375ba30f4c8aa58e7f' }, "\u00A0")));
|
|
482
482
|
}
|
|
483
483
|
get el() { return index.getElement(this); }
|
|
484
484
|
};
|
|
@@ -9,7 +9,7 @@ const index = require('./index-bbc6c29f.js');
|
|
|
9
9
|
const config = require('./config-4f60b98a.js');
|
|
10
10
|
const helpers = require('./helpers-afaa9001.js');
|
|
11
11
|
const lockController = require('./lock-controller-6585a42a.js');
|
|
12
|
-
const overlays = require('./overlays-
|
|
12
|
+
const overlays = require('./overlays-574e681c.js');
|
|
13
13
|
const theme = require('./theme-d1c573d2.js');
|
|
14
14
|
const ionicGlobal = require('./ionic-global-62487d02.js');
|
|
15
15
|
const animation = require('./animation-b4fdf128.js');
|
|
@@ -262,9 +262,9 @@ const Loading = class {
|
|
|
262
262
|
* Otherwise, don't set aria-labelledby.
|
|
263
263
|
*/
|
|
264
264
|
const ariaLabelledBy = message !== undefined ? msgId : null;
|
|
265
|
-
return (index.h(index.Host, Object.assign({ key: '
|
|
265
|
+
return (index.h(index.Host, Object.assign({ key: '4610b316b10a4df3416d0e83062935f3079baff2', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
|
|
266
266
|
zIndex: `${40000 + this.overlayIndex}`,
|
|
267
|
-
}, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, theme.getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), index.h("ion-backdrop", { key: '
|
|
267
|
+
}, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, theme.getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), index.h("ion-backdrop", { key: 'd07d0759ed13093c4c4fe06be442dde4bd9c2c31', visible: this.showBackdrop, tappable: this.backdropDismiss }), index.h("div", { key: 'ed3ec8b48f049b592fbea9767cc3d448dc037938', tabindex: "0" }), index.h("div", { key: 'c515f3badf149d83c1d67374ef3507415fe51422', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (index.h("div", { key: '265d1673c2deb751aeca285f5a18863bb629ca5e', class: "loading-spinner" }, index.h("ion-spinner", { key: '155bf7c92f6d7afd8edbb39f2b47ad05b7d503f1', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), index.h("div", { key: 'b0e21df5cf54f9b48a218a03543d8c86f5406522', tabindex: "0" })));
|
|
268
268
|
}
|
|
269
269
|
get el() { return index.getElement(this); }
|
|
270
270
|
static get watchers() { return {
|
|
@@ -7,7 +7,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
7
7
|
|
|
8
8
|
const index = require('./index-bbc6c29f.js');
|
|
9
9
|
const cubicBezier = require('./cubic-bezier-f2dccc53.js');
|
|
10
|
-
const overlays = require('./overlays-
|
|
10
|
+
const overlays = require('./overlays-574e681c.js');
|
|
11
11
|
const gestureController = require('./gesture-controller-9436f482.js');
|
|
12
12
|
const hardwareBackButton = require('./hardware-back-button-44e7c052.js');
|
|
13
13
|
const helpers = require('./helpers-afaa9001.js');
|
|
@@ -599,14 +599,14 @@ const Menu = class {
|
|
|
599
599
|
* the ionBackButton listener in the menu controller
|
|
600
600
|
* will handle closing the menu when Escape is pressed.
|
|
601
601
|
*/
|
|
602
|
-
return (index.h(index.Host, { key: '
|
|
602
|
+
return (index.h(index.Host, { key: '30c0c9bfb8973e4a6feb658f8c4ee8e362f464ed', onKeyDown: hardwareBackButton.shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
|
|
603
603
|
[mode]: true,
|
|
604
604
|
[`menu-type-${type}`]: true,
|
|
605
605
|
'menu-enabled': !disabled,
|
|
606
606
|
[`menu-side-${side}`]: true,
|
|
607
607
|
'menu-pane-visible': isPaneVisible,
|
|
608
608
|
'split-pane-side': theme.hostContext('ion-split-pane', el),
|
|
609
|
-
} }, index.h("div", { key: '
|
|
609
|
+
} }, index.h("div", { key: '34b0e5840906862cf1bc27207e089004b0402c56', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, index.h("slot", { key: '2cd7e61a8c0987ca4b3f1f8b33cba7152f1275fe' })), index.h("ion-backdrop", { key: 'd190b1f9b66c76e276f27bfe074d3aab796180fb', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
|
|
610
610
|
}
|
|
611
611
|
get el() { return index.getElement(this); }
|
|
612
612
|
static get watchers() { return {
|
|
@@ -679,7 +679,7 @@ const MenuButton = class {
|
|
|
679
679
|
type: this.type,
|
|
680
680
|
};
|
|
681
681
|
const ariaLabel = inheritedAttributes['aria-label'] || 'menu';
|
|
682
|
-
return (index.h(index.Host, { key: '
|
|
682
|
+
return (index.h(index.Host, { key: '95a8b9f09c7fae9713a8dc003ed277f6f31403da', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: theme.createColorClasses(color, {
|
|
683
683
|
[mode]: true,
|
|
684
684
|
button: true, // ion-buttons target .button
|
|
685
685
|
'menu-button-hidden': hidden,
|
|
@@ -688,7 +688,7 @@ const MenuButton = class {
|
|
|
688
688
|
'in-toolbar-color': theme.hostContext('ion-toolbar[color]', this.el),
|
|
689
689
|
'ion-activatable': true,
|
|
690
690
|
'ion-focusable': true,
|
|
691
|
-
}) }, index.h("button", Object.assign({ key: '
|
|
691
|
+
}) }, index.h("button", Object.assign({ key: '39f3ce20c400d2fac4890a042e8e44426709fca5' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), index.h("span", { key: '310978dc1cdef668de6720cde2a2304253679176', class: "button-inner" }, index.h("slot", { key: '2a2b9de524c1fc3c526fe9559cb077b976852725' }, index.h("ion-icon", { key: '9c22d7ea9fc3d76c32ec1c1b4b13d982c60b8c2d', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && index.h("ion-ripple-effect", { key: 'c58c9e29c763070383472f65a9d322a684bcb564', type: "unbounded" }))));
|
|
692
692
|
}
|
|
693
693
|
get el() { return index.getElement(this); }
|
|
694
694
|
};
|
|
@@ -719,10 +719,10 @@ const MenuToggle = class {
|
|
|
719
719
|
render() {
|
|
720
720
|
const mode = ionicGlobal.getIonMode(this);
|
|
721
721
|
const hidden = this.autoHide && !this.visible;
|
|
722
|
-
return (index.h(index.Host, { key: '
|
|
722
|
+
return (index.h(index.Host, { key: '90e621f09792383f1badcc1b402b1ac7d08c5f98', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
|
|
723
723
|
[mode]: true,
|
|
724
724
|
'menu-toggle-hidden': hidden,
|
|
725
|
-
} }, index.h("slot", { key: '
|
|
725
|
+
} }, index.h("slot", { key: 'c0abdd1d91e9d80ee3704e3e374ebe1f29078460' })));
|
|
726
726
|
}
|
|
727
727
|
};
|
|
728
728
|
MenuToggle.style = IonMenuToggleStyle0;
|
|
@@ -12,7 +12,7 @@ const helpers = require('./helpers-afaa9001.js');
|
|
|
12
12
|
const lockController = require('./lock-controller-6585a42a.js');
|
|
13
13
|
const index$4 = require('./index-5915f9b3.js');
|
|
14
14
|
const capacitor = require('./capacitor-c04564bf.js');
|
|
15
|
-
const overlays = require('./overlays-
|
|
15
|
+
const overlays = require('./overlays-574e681c.js');
|
|
16
16
|
const theme = require('./theme-d1c573d2.js');
|
|
17
17
|
const index$5 = require('./index-6d6ac424.js');
|
|
18
18
|
const ionicGlobal = require('./ionic-global-62487d02.js');
|
|
@@ -818,7 +818,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
818
818
|
* as inputs should not be focusable outside
|
|
819
819
|
* the sheet.
|
|
820
820
|
*/
|
|
821
|
-
baseEl.classList.remove(
|
|
821
|
+
baseEl.classList.remove(overlays.FOCUS_TRAP_DISABLE_CLASS);
|
|
822
822
|
};
|
|
823
823
|
const disableBackdrop = () => {
|
|
824
824
|
baseEl.style.setProperty('pointer-events', 'none');
|
|
@@ -830,7 +830,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
|
|
|
830
830
|
* Adding this class disables focus trapping
|
|
831
831
|
* for the sheet temporarily.
|
|
832
832
|
*/
|
|
833
|
-
baseEl.classList.add(
|
|
833
|
+
baseEl.classList.add(overlays.FOCUS_TRAP_DISABLE_CLASS);
|
|
834
834
|
};
|
|
835
835
|
/**
|
|
836
836
|
* After the entering animation completes,
|
|
@@ -1195,6 +1195,7 @@ const Modal = class {
|
|
|
1195
1195
|
this.isOpen = false;
|
|
1196
1196
|
this.trigger = undefined;
|
|
1197
1197
|
this.keepContentsMounted = false;
|
|
1198
|
+
this.focusTrap = true;
|
|
1198
1199
|
this.canDismiss = true;
|
|
1199
1200
|
}
|
|
1200
1201
|
onIsOpenChange(newValue, oldValue) {
|
|
@@ -1651,23 +1652,23 @@ const Modal = class {
|
|
|
1651
1652
|
return true;
|
|
1652
1653
|
}
|
|
1653
1654
|
render() {
|
|
1654
|
-
const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes } = this;
|
|
1655
|
+
const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap } = this;
|
|
1655
1656
|
const showHandle = handle !== false && isSheetModal;
|
|
1656
1657
|
const mode = ionicGlobal.getIonMode(this);
|
|
1657
1658
|
const isCardModal = presentingElement !== undefined && mode === 'ios';
|
|
1658
1659
|
const isHandleCycle = handleBehavior === 'cycle';
|
|
1659
|
-
return (index$3.h(index$3.Host, Object.assign({ key: '
|
|
1660
|
+
return (index$3.h(index$3.Host, Object.assign({ key: 'fe6fd17cf857127f89d652b9aa3e9473d28c55db', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
1660
1661
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
1661
|
-
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, 'overlay-hidden': true }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), index$3.h("ion-backdrop", { key: '
|
|
1662
|
+
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, 'overlay-hidden': true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), index$3.h("ion-backdrop", { key: '0f3a31363c2717e5483bc0412c25804897d4aff8', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && index$3.h("div", { key: '0e5ed59162ff08fe0a9f757e06bdacc75f65c0ed', class: "modal-shadow" }), index$3.h("div", Object.assign({ key: '35cdbe2238765e5f346ad7be64f7eefa8c78f0c0',
|
|
1662
1663
|
/*
|
|
1663
1664
|
role and aria-modal must be used on the
|
|
1664
1665
|
same element. They must also be set inside the
|
|
1665
1666
|
shadow DOM otherwise ion-button will not be highlighted
|
|
1666
1667
|
when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
|
|
1667
1668
|
*/
|
|
1668
|
-
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (index$3.h("button", { key: '
|
|
1669
|
+
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (index$3.h("button", { key: '7a4031eaebf9a098f4c4220a5fe9d1c25cc0ec92', class: "modal-handle",
|
|
1669
1670
|
// Prevents the handle from receiving keyboard focus when it does not cycle
|
|
1670
|
-
tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), index$3.h("slot", { key: '
|
|
1671
|
+
tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), index$3.h("slot", { key: '534adc8e5bd850199fe2e9e16f0e7c19217d8486' }))));
|
|
1671
1672
|
}
|
|
1672
1673
|
get el() { return index$3.getElement(this); }
|
|
1673
1674
|
static get watchers() { return {
|
|
@@ -902,7 +902,7 @@ const Nav = class {
|
|
|
902
902
|
}
|
|
903
903
|
}
|
|
904
904
|
render() {
|
|
905
|
-
return index.h("slot", { key: '
|
|
905
|
+
return index.h("slot", { key: 'e9d99a8a0b84f02f9964d8143cd5e647e43334f9' });
|
|
906
906
|
}
|
|
907
907
|
get el() { return index.getElement(this); }
|
|
908
908
|
static get watchers() { return {
|
|
@@ -944,7 +944,7 @@ const NavLink = class {
|
|
|
944
944
|
this.routerAnimation = undefined;
|
|
945
945
|
}
|
|
946
946
|
render() {
|
|
947
|
-
return index.h(index.Host, { key: '
|
|
947
|
+
return index.h(index.Host, { key: '42c23dcdec5fdb25defebaf6e8a9fa75754ff8eb', onClick: this.onClick });
|
|
948
948
|
}
|
|
949
949
|
get el() { return index.getElement(this); }
|
|
950
950
|
};
|
|
@@ -88,10 +88,10 @@ const PickerColumnOption = class {
|
|
|
88
88
|
render() {
|
|
89
89
|
const { color, disabled, ariaLabel } = this;
|
|
90
90
|
const mode = ionicGlobal.getIonMode(this);
|
|
91
|
-
return (index.h(index.Host, { key: '
|
|
91
|
+
return (index.h(index.Host, { key: 'cc4435a0ce0e55be1321bcabaf342ed68cf5ba1e', class: theme.createColorClasses(color, {
|
|
92
92
|
[mode]: true,
|
|
93
93
|
['option-disabled']: disabled,
|
|
94
|
-
}) }, index.h("button", { key: '
|
|
94
|
+
}) }, index.h("button", { key: '0187fb967771e0787807a8538dce4e59f6a98565', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, index.h("slot", { key: 'dbe52552f3f27332816748c12d929cc81060841d' }))));
|
|
95
95
|
}
|
|
96
96
|
get el() { return index.getElement(this); }
|
|
97
97
|
static get watchers() { return {
|
|
@@ -13,7 +13,7 @@ const ionicGlobal = require('./ionic-global-62487d02.js');
|
|
|
13
13
|
const theme = require('./theme-d1c573d2.js');
|
|
14
14
|
require('./capacitor-c04564bf.js');
|
|
15
15
|
|
|
16
|
-
const pickerColumnCss = ":host{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;max-width:100%;height:200px;font-size:22px;text-align:center}.picker-opts{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;min-width:26px;max-height:200px;outline:none;text-align:inherit;-webkit-scroll-snap-type:y mandatory;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory;overflow-x:hidden;overflow-y:scroll;scrollbar-width:none}.picker-item-empty{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.picker-opts::-webkit-scrollbar{display:none}::slotted(ion-picker-column-option){display:block;scroll-snap-align:center}.picker-item-empty,:host(:not([disabled])) ::slotted(ion-picker-column-option.option-disabled){scroll-snap-align:none}::slotted([slot=prefix]),::slotted([slot=suffix]){max-width:200px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::slotted([slot=prefix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:end;justify-content:end}::slotted([slot=suffix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:start;justify-content:start}:host(.picker-column-disabled) .picker-opts{overflow-y:hidden}:host(.picker-column-disabled) ::slotted(ion-picker-column-option){cursor:default;opacity:0.4;pointer-events:none}@media (any-hover: hover){:host(:focus) .picker-opts{outline:none;background:rgba(var(--ion-color-base-rgb), 0.2)}}";
|
|
16
|
+
const pickerColumnCss = ":host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;max-width:100%;height:200px;font-size:22px;text-align:center}.assistive-focusable{left:0;right:0;top:0;bottom:0;position:absolute;z-index:1;pointer-events:none}.assistive-focusable:focus{outline:none}.picker-opts{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;min-width:26px;max-height:200px;outline:none;text-align:inherit;-webkit-scroll-snap-type:y mandatory;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory;overflow-x:hidden;overflow-y:scroll;scrollbar-width:none}.picker-item-empty{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.picker-opts::-webkit-scrollbar{display:none}::slotted(ion-picker-column-option){display:block;scroll-snap-align:center}.picker-item-empty,:host(:not([disabled])) ::slotted(ion-picker-column-option.option-disabled){scroll-snap-align:none}::slotted([slot=prefix]),::slotted([slot=suffix]){max-width:200px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::slotted([slot=prefix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:end;justify-content:end}::slotted([slot=suffix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:start;justify-content:start}:host(.picker-column-disabled) .picker-opts{overflow-y:hidden}:host(.picker-column-disabled) ::slotted(ion-picker-column-option){cursor:default;opacity:0.4;pointer-events:none}@media (any-hover: hover){:host(:focus) .picker-opts{outline:none;background:rgba(var(--ion-color-base-rgb), 0.2)}}";
|
|
17
17
|
const IonPickerColumnStyle0 = pickerColumnCss;
|
|
18
18
|
|
|
19
19
|
const PickerColumn = class {
|
|
@@ -23,6 +23,7 @@ const PickerColumn = class {
|
|
|
23
23
|
this.isScrolling = false;
|
|
24
24
|
this.isColumnVisible = false;
|
|
25
25
|
this.canExitInputMode = true;
|
|
26
|
+
this.updateValueTextOnScroll = false;
|
|
26
27
|
this.centerPickerItemInView = (target, smooth = true, canExitInputMode = true) => {
|
|
27
28
|
const { isColumnVisible, scrollEl } = this;
|
|
28
29
|
if (isColumnVisible && scrollEl) {
|
|
@@ -37,6 +38,7 @@ const PickerColumn = class {
|
|
|
37
38
|
* of these can cause a scroll to occur.
|
|
38
39
|
*/
|
|
39
40
|
this.canExitInputMode = canExitInputMode;
|
|
41
|
+
this.updateValueTextOnScroll = false;
|
|
40
42
|
scrollEl.scroll({
|
|
41
43
|
top,
|
|
42
44
|
left: 0,
|
|
@@ -109,6 +111,7 @@ const PickerColumn = class {
|
|
|
109
111
|
let activeEl = this.activeItem;
|
|
110
112
|
const scrollCallback = () => {
|
|
111
113
|
helpers.raf(() => {
|
|
114
|
+
var _a;
|
|
112
115
|
if (!scrollEl)
|
|
113
116
|
return;
|
|
114
117
|
if (timeout) {
|
|
@@ -189,8 +192,23 @@ const PickerColumn = class {
|
|
|
189
192
|
}
|
|
190
193
|
activeEl = newActiveElement;
|
|
191
194
|
this.setPickerItemActiveState(newActiveElement, true);
|
|
195
|
+
/**
|
|
196
|
+
* Set the aria-valuetext even though the value prop has not been updated yet.
|
|
197
|
+
* This enables some screen readers to announce the value as the users drag
|
|
198
|
+
* as opposed to when their release their pointer from the screen.
|
|
199
|
+
*
|
|
200
|
+
* When the value is programmatically updated, we will smoothly scroll
|
|
201
|
+
* to the new option. However, we do not want to update aria-valuetext mid-scroll
|
|
202
|
+
* as that can cause the old value to be briefly set before being set to the
|
|
203
|
+
* correct option. This will cause some screen readers to announce the old value
|
|
204
|
+
* again before announcing the new value. The correct valuetext will be set on render.
|
|
205
|
+
*/
|
|
206
|
+
if (this.updateValueTextOnScroll) {
|
|
207
|
+
(_a = this.assistiveFocusable) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-valuetext', this.getOptionValueText(newActiveElement));
|
|
208
|
+
}
|
|
192
209
|
timeout = setTimeout(() => {
|
|
193
210
|
this.isScrolling = false;
|
|
211
|
+
this.updateValueTextOnScroll = true;
|
|
194
212
|
enableHaptics && haptic.hapticSelectionEnd();
|
|
195
213
|
/**
|
|
196
214
|
* Certain tasks (such as those that
|
|
@@ -249,12 +267,139 @@ const PickerColumn = class {
|
|
|
249
267
|
*/
|
|
250
268
|
this.el.classList.remove('picker-column-active');
|
|
251
269
|
};
|
|
270
|
+
/**
|
|
271
|
+
* Find the next enabled option after the active option.
|
|
272
|
+
* @param stride - How many options to "jump" over in order to select the next option.
|
|
273
|
+
* This can be used to implement PageUp/PageDown behaviors where pressing these keys
|
|
274
|
+
* scrolls the picker by more than 1 option. For example, a stride of 5 means select
|
|
275
|
+
* the enabled option 5 options after the active one. Note that the actual option selected
|
|
276
|
+
* may be past the stride if the option at the stride is disabled.
|
|
277
|
+
*/
|
|
278
|
+
this.findNextOption = (stride = 1) => {
|
|
279
|
+
const { activeItem } = this;
|
|
280
|
+
if (!activeItem)
|
|
281
|
+
return null;
|
|
282
|
+
let prevNode = activeItem;
|
|
283
|
+
let node = activeItem.nextElementSibling;
|
|
284
|
+
while (node != null) {
|
|
285
|
+
if (stride > 0) {
|
|
286
|
+
stride--;
|
|
287
|
+
}
|
|
288
|
+
if (node.tagName === 'ION-PICKER-COLUMN-OPTION' && !node.disabled && stride === 0) {
|
|
289
|
+
return node;
|
|
290
|
+
}
|
|
291
|
+
prevNode = node;
|
|
292
|
+
// Use nextElementSibling instead of nextSibling to avoid text/comment nodes
|
|
293
|
+
node = node.nextElementSibling;
|
|
294
|
+
}
|
|
295
|
+
return prevNode;
|
|
296
|
+
};
|
|
297
|
+
/**
|
|
298
|
+
* Find the next enabled option after the active option.
|
|
299
|
+
* @param stride - How many options to "jump" over in order to select the next option.
|
|
300
|
+
* This can be used to implement PageUp/PageDown behaviors where pressing these keys
|
|
301
|
+
* scrolls the picker by more than 1 option. For example, a stride of 5 means select
|
|
302
|
+
* the enabled option 5 options before the active one. Note that the actual option selected
|
|
303
|
+
* may be past the stride if the option at the stride is disabled.
|
|
304
|
+
*/
|
|
305
|
+
this.findPreviousOption = (stride = 1) => {
|
|
306
|
+
const { activeItem } = this;
|
|
307
|
+
if (!activeItem)
|
|
308
|
+
return null;
|
|
309
|
+
let nextNode = activeItem;
|
|
310
|
+
let node = activeItem.previousElementSibling;
|
|
311
|
+
while (node != null) {
|
|
312
|
+
if (stride > 0) {
|
|
313
|
+
stride--;
|
|
314
|
+
}
|
|
315
|
+
if (node.tagName === 'ION-PICKER-COLUMN-OPTION' && !node.disabled && stride === 0) {
|
|
316
|
+
return node;
|
|
317
|
+
}
|
|
318
|
+
nextNode = node;
|
|
319
|
+
// Use previousElementSibling instead of previousSibling to avoid text/comment nodes
|
|
320
|
+
node = node.previousElementSibling;
|
|
321
|
+
}
|
|
322
|
+
return nextNode;
|
|
323
|
+
};
|
|
324
|
+
this.onKeyDown = (ev) => {
|
|
325
|
+
/**
|
|
326
|
+
* The below operations should be inverted when running on a mobile device.
|
|
327
|
+
* For example, swiping up will dispatch an "ArrowUp" event. On desktop,
|
|
328
|
+
* this should cause the previous option to be selected. On mobile, swiping
|
|
329
|
+
* up causes a view to scroll down. As a result, swiping up on mobile should
|
|
330
|
+
* cause the next option to be selected. The Home/End operations remain
|
|
331
|
+
* unchanged because those always represent the first/last options, respectively.
|
|
332
|
+
*/
|
|
333
|
+
const mobile = ionicGlobal.isPlatform('mobile');
|
|
334
|
+
let newOption = null;
|
|
335
|
+
switch (ev.key) {
|
|
336
|
+
case 'ArrowDown':
|
|
337
|
+
newOption = mobile ? this.findPreviousOption() : this.findNextOption();
|
|
338
|
+
break;
|
|
339
|
+
case 'ArrowUp':
|
|
340
|
+
newOption = mobile ? this.findNextOption() : this.findPreviousOption();
|
|
341
|
+
break;
|
|
342
|
+
case 'PageUp':
|
|
343
|
+
newOption = mobile ? this.findNextOption(5) : this.findPreviousOption(5);
|
|
344
|
+
break;
|
|
345
|
+
case 'PageDown':
|
|
346
|
+
newOption = mobile ? this.findPreviousOption(5) : this.findNextOption(5);
|
|
347
|
+
break;
|
|
348
|
+
case 'Home':
|
|
349
|
+
/**
|
|
350
|
+
* There is no guarantee that the first child will be an ion-picker-column-option,
|
|
351
|
+
* so we do not use firstElementChild.
|
|
352
|
+
*/
|
|
353
|
+
newOption = this.el.querySelector('ion-picker-column-option:first-of-type');
|
|
354
|
+
break;
|
|
355
|
+
case 'End':
|
|
356
|
+
/**
|
|
357
|
+
* There is no guarantee that the last child will be an ion-picker-column-option,
|
|
358
|
+
* so we do not use lastElementChild.
|
|
359
|
+
*/
|
|
360
|
+
newOption = this.el.querySelector('ion-picker-column-option:last-of-type');
|
|
361
|
+
break;
|
|
362
|
+
}
|
|
363
|
+
if (newOption !== null) {
|
|
364
|
+
this.value = newOption.value;
|
|
365
|
+
// This stops any default browser behavior such as scrolling
|
|
366
|
+
ev.preventDefault();
|
|
367
|
+
}
|
|
368
|
+
};
|
|
369
|
+
/**
|
|
370
|
+
* Utility to generate the correct text for aria-valuetext.
|
|
371
|
+
*/
|
|
372
|
+
this.getOptionValueText = (el) => {
|
|
373
|
+
var _a;
|
|
374
|
+
return el ? (_a = el.getAttribute('aria-label')) !== null && _a !== void 0 ? _a : el.innerText : '';
|
|
375
|
+
};
|
|
376
|
+
/**
|
|
377
|
+
* Render an element that overlays the column. This element is for assistive
|
|
378
|
+
* tech to allow users to navigate the column up/down. This element should receive
|
|
379
|
+
* focus as it listens for synthesized keyboard events as required by the
|
|
380
|
+
* slider role: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/slider_role
|
|
381
|
+
*/
|
|
382
|
+
this.renderAssistiveFocusable = () => {
|
|
383
|
+
const { activeItem } = this;
|
|
384
|
+
const valueText = this.getOptionValueText(activeItem);
|
|
385
|
+
/**
|
|
386
|
+
* When using the picker, the valuetext provides important context that valuenow
|
|
387
|
+
* does not. Additionally, using non-zero valuemin/valuemax values can cause
|
|
388
|
+
* WebKit to incorrectly announce numeric valuetext values (such as a year
|
|
389
|
+
* like "2024") as percentages: https://bugs.webkit.org/show_bug.cgi?id=273126
|
|
390
|
+
*/
|
|
391
|
+
return (index.h("div", { ref: (el) => (this.assistiveFocusable = el), class: "assistive-focusable", role: "slider", tabindex: this.disabled ? undefined : 0, "aria-label": this.ariaLabel, "aria-valuemin": 0, "aria-valuemax": 0, "aria-valuenow": 0, "aria-valuetext": valueText, "aria-orientation": "vertical", onKeyDown: (ev) => this.onKeyDown(ev) }));
|
|
392
|
+
};
|
|
393
|
+
this.ariaLabel = null;
|
|
252
394
|
this.isActive = false;
|
|
253
395
|
this.disabled = false;
|
|
254
396
|
this.value = undefined;
|
|
255
397
|
this.color = 'primary';
|
|
256
398
|
this.numericInput = false;
|
|
257
399
|
}
|
|
400
|
+
ariaLabelChanged(newValue) {
|
|
401
|
+
this.ariaLabel = newValue;
|
|
402
|
+
}
|
|
258
403
|
valueChange() {
|
|
259
404
|
if (this.isColumnVisible) {
|
|
260
405
|
/**
|
|
@@ -370,6 +515,10 @@ const PickerColumn = class {
|
|
|
370
515
|
this.scrollEl.focus();
|
|
371
516
|
}
|
|
372
517
|
}
|
|
518
|
+
connectedCallback() {
|
|
519
|
+
var _a;
|
|
520
|
+
this.ariaLabel = (_a = this.el.getAttribute('aria-label')) !== null && _a !== void 0 ? _a : 'Select a value';
|
|
521
|
+
}
|
|
373
522
|
get activeItem() {
|
|
374
523
|
const { value } = this;
|
|
375
524
|
const options = Array.from(this.el.querySelectorAll('ion-picker-column-option'));
|
|
@@ -387,17 +536,18 @@ const PickerColumn = class {
|
|
|
387
536
|
render() {
|
|
388
537
|
const { color, disabled, isActive, numericInput } = this;
|
|
389
538
|
const mode = ionicGlobal.getIonMode(this);
|
|
390
|
-
return (index.h(index.Host, { key: '
|
|
539
|
+
return (index.h(index.Host, { key: '5a6b90bacbfa016d937d1c7ae6c55fd1e19729b5', class: theme.createColorClasses(color, {
|
|
391
540
|
[mode]: true,
|
|
392
541
|
['picker-column-active']: isActive,
|
|
393
542
|
['picker-column-numeric-input']: numericInput,
|
|
394
543
|
['picker-column-disabled']: disabled,
|
|
395
|
-
}) }, index.h("slot", { key: '
|
|
544
|
+
}) }, this.renderAssistiveFocusable(), index.h("slot", { key: '25785dd94823696945830461404d4127ebfbdb82', name: "prefix" }), index.h("div", { key: '94cb28b3a212574400c84f8e086a1c82654549dc', "aria-hidden": "true", class: "picker-opts", ref: (el) => {
|
|
396
545
|
this.scrollEl = el;
|
|
397
|
-
} }, index.h("div", { key: '
|
|
546
|
+
} }, index.h("div", { key: '19b174ac090d4670323fc2bd8ed8da44bf1ea692', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { key: '8c7ce6384e94acfb6154d5850f4dbabbd542edce', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { key: 'ea4f5026eff35400698e84f0c88c57ed443d82d0', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("slot", { key: '627cb80802653c8e047304d71d1b12865df316b0' }), index.h("div", { key: '468a4fdb3ba93bc5df7e99d68b388f8b52d70945', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { key: '88d0030269d256b4217e99e26e9a80af81120164', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { key: 'fb312153e4ad2bdcf1646751d78eeb9afd83e79c', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0")), index.h("slot", { key: '7fb8379b86f016f70546110e1abf05fb02eb98fb', name: "suffix" })));
|
|
398
547
|
}
|
|
399
548
|
get el() { return index.getElement(this); }
|
|
400
549
|
static get watchers() { return {
|
|
550
|
+
"aria-label": ["ariaLabelChanged"],
|
|
401
551
|
"value": ["valueChange"]
|
|
402
552
|
}; }
|
|
403
553
|
};
|
|
@@ -484,7 +484,7 @@ const Picker = class {
|
|
|
484
484
|
this.emitInputModeChange();
|
|
485
485
|
}
|
|
486
486
|
render() {
|
|
487
|
-
return (index.h(index.Host, { key: '
|
|
487
|
+
return (index.h(index.Host, { key: '02b0687b1f80ba295a965dfba76dd59e2d1de5d3', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, index.h("input", { key: 'f83ed84bcf9e02539c00d8a4e63e6a0d7fc4ac71', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
|
|
488
488
|
var _a;
|
|
489
489
|
/**
|
|
490
490
|
* The "Enter" key represents
|
|
@@ -499,7 +499,7 @@ const Picker = class {
|
|
|
499
499
|
if (ev.key === 'Enter') {
|
|
500
500
|
(_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.blur();
|
|
501
501
|
}
|
|
502
|
-
}, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), index.h("div", { key: '
|
|
502
|
+
}, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), index.h("div", { key: '45b07fb0617d8e006712776bf78302288edb3ff4', class: "picker-before" }), index.h("div", { key: '73009229368e0d62b09c913aacade26f068a7aa9', class: "picker-after" }), index.h("div", { key: 'b73da00e446cd1cfd511c39212e14a00d355752e', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), index.h("slot", { key: 'd969f5efc5ddb9eda6c4828702efd1ceeb69f767' })));
|
|
503
503
|
}
|
|
504
504
|
get el() { return index.getElement(this); }
|
|
505
505
|
};
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
7
7
|
|
|
8
8
|
const index = require('./index-bbc6c29f.js');
|
|
9
|
-
const overlays = require('./overlays-
|
|
9
|
+
const overlays = require('./overlays-574e681c.js');
|
|
10
10
|
const frameworkDelegate = require('./framework-delegate-55f5683a.js');
|
|
11
11
|
const helpers = require('./helpers-afaa9001.js');
|
|
12
12
|
const lockController = require('./lock-controller-6585a42a.js');
|
|
@@ -1067,6 +1067,7 @@ const Popover = class {
|
|
|
1067
1067
|
this.arrow = true;
|
|
1068
1068
|
this.isOpen = false;
|
|
1069
1069
|
this.keyboardEvents = false;
|
|
1070
|
+
this.focusTrap = true;
|
|
1070
1071
|
this.keepContentsMounted = false;
|
|
1071
1072
|
}
|
|
1072
1073
|
onTriggerChange() {
|
|
@@ -1293,12 +1294,12 @@ const Popover = class {
|
|
|
1293
1294
|
}
|
|
1294
1295
|
render() {
|
|
1295
1296
|
const mode = ionicGlobal.getIonMode(this);
|
|
1296
|
-
const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes } = this;
|
|
1297
|
+
const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
|
|
1297
1298
|
const desktop = ionicGlobal.isPlatform('desktop');
|
|
1298
1299
|
const enableArrow = arrow && !parentPopover;
|
|
1299
|
-
return (index.h(index.Host, Object.assign({ key: '
|
|
1300
|
+
return (index.h(index.Host, Object.assign({ key: '17e5e8b3e7ba5e251665fb9d0ade10c781f82f0e', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
1300
1301
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
1301
|
-
}, class: Object.assign(Object.assign({}, theme.getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && index.h("ion-backdrop", { key: '
|
|
1302
|
+
}, class: Object.assign(Object.assign({}, theme.getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && index.h("ion-backdrop", { key: 'c12fb94b375d7e88a0c5d715440c0f66ad7ee817', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), index.h("div", { key: '478b388cc9a5a382003a2863e968e77a174914ab', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && index.h("div", { key: 'f1c63a0079f197a8d4577e7c00a654871fb9d816', class: "popover-arrow", part: "arrow" }), index.h("div", { key: '08b62a321c09ad4b0f90460468ecbc1d56320bf1', class: "popover-content", part: "content" }, index.h("slot", { key: '55645ff597f64d434219caa28015cf2a4ceb0ee5' })))));
|
|
1302
1303
|
}
|
|
1303
1304
|
get el() { return index.getElement(this); }
|
|
1304
1305
|
static get watchers() { return {
|
|
@@ -31,7 +31,7 @@ const ProgressBar = class {
|
|
|
31
31
|
const mode = ionicGlobal.getIonMode(this);
|
|
32
32
|
// If the progress is displayed as a solid bar.
|
|
33
33
|
const progressSolid = buffer === 1;
|
|
34
|
-
return (index.h(index.Host, { key: '
|
|
34
|
+
return (index.h(index.Host, { key: 'b293f4475bcdaa7851b41ebfda659037f0365120', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: theme.createColorClasses(color, {
|
|
35
35
|
[mode]: true,
|
|
36
36
|
[`progress-bar-${type}`]: true,
|
|
37
37
|
'progress-paused': paused,
|
|
@@ -112,7 +112,7 @@ const Radio = class {
|
|
|
112
112
|
const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
|
|
113
113
|
const mode = ionicGlobal.getIonMode(this);
|
|
114
114
|
const inItem = theme.hostContext('ion-item', el);
|
|
115
|
-
return (index.h(index.Host, { key: '
|
|
115
|
+
return (index.h(index.Host, { key: 'e44cade8aa8415bdc825f9d17fc8562487cf5d35', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: theme.createColorClasses(color, {
|
|
116
116
|
[mode]: true,
|
|
117
117
|
'in-item': inItem,
|
|
118
118
|
'radio-checked': checked,
|
|
@@ -123,10 +123,10 @@ const Radio = class {
|
|
|
123
123
|
// Focus and active styling should not apply when the radio is in an item
|
|
124
124
|
'ion-activatable': !inItem,
|
|
125
125
|
'ion-focusable': !inItem,
|
|
126
|
-
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, index.h("label", { key: '
|
|
126
|
+
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, index.h("label", { key: '48a99aa80a7d7b4085ef26faf3167903c975517c', class: "radio-wrapper" }, index.h("div", { key: 'a8d74e0603b41215ea3e867356a9be0dcf3722d8', class: {
|
|
127
127
|
'label-text-wrapper': true,
|
|
128
128
|
'label-text-wrapper-hidden': !hasLabel,
|
|
129
|
-
}, part: "label" }, index.h("slot", { key: '
|
|
129
|
+
}, part: "label" }, index.h("slot", { key: '9e3cce6254e70b02d50381537438a70435b031cc' })), index.h("div", { key: 'bfa3ee188d911e056a3e60178eac41362efb94b3', class: "native-wrapper" }, this.renderRadioControl()))));
|
|
130
130
|
}
|
|
131
131
|
get el() { return index.getElement(this); }
|
|
132
132
|
static get watchers() { return {
|
|
@@ -291,7 +291,7 @@ const RadioGroup = class {
|
|
|
291
291
|
const { label, labelId, el, name, value } = this;
|
|
292
292
|
const mode = ionicGlobal.getIonMode(this);
|
|
293
293
|
helpers.renderHiddenInput(true, el, name, value, false);
|
|
294
|
-
return index.h(index.Host, { key: '
|
|
294
|
+
return index.h(index.Host, { key: '7801c5d6b3916efb15b4e479c6b90a8925e254a4', role: "radiogroup", "aria-labelledby": label ? labelId : null, onClick: this.onClick, class: mode });
|
|
295
295
|
}
|
|
296
296
|
get el() { return index.getElement(this); }
|
|
297
297
|
static get watchers() { return {
|