voyager-ionic-core 8.3.4 → 8.4.1
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/alert.js +7 -5
- package/components/backdrop.js +1 -1
- package/components/button.js +2 -2
- package/components/buttons.js +2 -2
- package/components/checkbox.js +7 -5
- package/components/content.js +446 -0
- package/components/header.js +375 -0
- package/components/index4.js +2 -2
- package/components/ion-app.js +1 -1
- package/components/ion-avatar.js +1 -1
- package/components/ion-back-button.js +2 -2
- package/components/ion-badge.js +2 -2
- package/components/ion-breadcrumb.js +4 -4
- package/components/ion-breadcrumbs.js +2 -2
- package/components/ion-card-content.js +1 -1
- package/components/ion-card-header.js +2 -2
- package/components/ion-card-subtitle.js +2 -2
- package/components/ion-card-title.js +2 -2
- package/components/ion-card.js +1 -1
- package/components/ion-chip.js +2 -2
- package/components/ion-col.js +2 -2
- package/components/ion-content.js +1 -441
- package/components/ion-datetime-button.js +2 -2
- package/components/ion-datetime.js +2 -2
- 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 +1 -351
- 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 +3 -3
- 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 +3 -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 +47 -20
- package/components/ion-modal.js +1 -1737
- 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 +24 -5
- package/components/ion-segment-content.d.ts +11 -0
- package/components/ion-segment-content.js +37 -0
- package/components/ion-segment-view.d.ts +11 -0
- package/components/ion-segment-view.js +140 -0
- package/components/ion-segment.js +110 -15
- package/components/ion-select-modal.d.ts +11 -0
- package/components/ion-select-modal.js +9 -0
- package/components/ion-select-option.js +1 -1
- package/components/ion-select.js +114 -41
- 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 +1 -70
- package/components/ion-toast.js +4 -4
- package/components/ion-toggle.js +3 -3
- package/components/ion-toolbar.js +1 -88
- package/components/label.js +2 -2
- package/components/list-header.js +2 -2
- package/components/list.js +1 -1
- package/components/modal.js +1742 -0
- package/components/overlays.js +27 -12
- package/components/picker-column-option.js +2 -2
- package/components/picker-column.js +3 -3
- package/components/picker-column2.js +2 -2
- package/components/picker.js +2 -2
- package/components/popover.js +2 -2
- package/components/radio-group.js +12 -4
- package/components/radio.js +7 -5
- package/components/ripple-effect.js +1 -1
- package/components/select-modal.js +197 -0
- package/components/select-popover.js +1 -1
- package/components/spinner.js +1 -1
- package/components/title.js +75 -0
- package/components/toolbar.js +93 -0
- package/dist/cjs/{index-9cd00dc3.js → index-8e789962.js} +2 -2
- package/dist/cjs/index.cjs.js +2 -2
- package/dist/cjs/ion-action-sheet.cjs.entry.js +1 -1
- package/dist/cjs/ion-alert.cjs.entry.js +8 -6
- package/dist/cjs/ion-app_8.cjs.entry.js +36 -17
- package/dist/cjs/ion-avatar_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-back-button.cjs.entry.js +2 -2
- package/dist/cjs/ion-backdrop.cjs.entry.js +1 -1
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +6 -6
- package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-card_5.cjs.entry.js +8 -8
- package/dist/cjs/ion-checkbox.cjs.entry.js +5 -4
- package/dist/cjs/ion-chip.cjs.entry.js +2 -2
- package/dist/cjs/ion-col_3.cjs.entry.js +5 -5
- package/dist/cjs/ion-datetime-button.cjs.entry.js +2 -2
- package/dist/cjs/ion-datetime_3.cjs.entry.js +7 -7
- 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 +3 -3
- package/dist/cjs/ion-item-option_3.cjs.entry.js +6 -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 +52 -25
- package/dist/cjs/ion-modal.cjs.entry.js +5 -5
- 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 +3 -3
- package/dist/cjs/ion-picker.cjs.entry.js +2 -2
- package/dist/cjs/ion-popover.cjs.entry.js +3 -3
- package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/ion-radio_2.cjs.entry.js +17 -8
- 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-content.cjs.entry.js +23 -0
- package/dist/cjs/ion-segment-view.cjs.entry.js +122 -0
- package/dist/cjs/ion-segment_2.cjs.entry.js +132 -19
- package/dist/cjs/ion-select-modal.cjs.entry.js +111 -0
- package/dist/cjs/ion-select_3.cjs.entry.js +40 -15
- 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 +5 -5
- package/dist/cjs/ion-toggle.cjs.entry.js +3 -3
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{overlays-ba0f6986.js → overlays-aa669eb8.js} +26 -11
- package/dist/collection/collection-manifest.json +3 -0
- package/dist/collection/components/alert/alert.js +7 -5
- package/dist/collection/components/app/app.js +1 -1
- package/dist/collection/components/avatar/avatar.js +1 -1
- package/dist/collection/components/back-button/back-button.js +2 -2
- package/dist/collection/components/backdrop/backdrop.js +1 -1
- package/dist/collection/components/badge/badge.js +2 -2
- package/dist/collection/components/breadcrumb/breadcrumb.js +4 -4
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +2 -2
- package/dist/collection/components/button/button.js +2 -2
- package/dist/collection/components/buttons/buttons.js +2 -2
- package/dist/collection/components/card/card.js +1 -1
- package/dist/collection/components/card-content/card-content.js +1 -1
- package/dist/collection/components/card-header/card-header.js +2 -2
- package/dist/collection/components/card-subtitle/card-subtitle.js +2 -2
- package/dist/collection/components/card-title/card-title.js +2 -2
- package/dist/collection/components/checkbox/checkbox.js +29 -4
- package/dist/collection/components/chip/chip.js +2 -2
- package/dist/collection/components/col/col.js +2 -2
- package/dist/collection/components/content/content.js +3 -3
- package/dist/collection/components/datetime/datetime.js +2 -2
- 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/header/header.utils.js +21 -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 +3 -3
- 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 +3 -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 +75 -27
- package/dist/collection/components/menu-button/menu-button.js +2 -2
- package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
- package/dist/collection/components/modal/modal.js +4 -4
- package/dist/collection/components/nav/nav.js +1 -1
- package/dist/collection/components/nav-link/nav-link.js +1 -1
- package/dist/collection/components/note/note.js +2 -2
- package/dist/collection/components/picker/picker.js +2 -2
- package/dist/collection/components/picker-column/picker-column.js +3 -3
- 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 +2 -2
- package/dist/collection/components/progress-bar/progress-bar.js +1 -1
- package/dist/collection/components/radio/radio.js +9 -7
- package/dist/collection/components/radio-group/radio-group.js +34 -3
- 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 +115 -14
- package/dist/collection/components/segment-button/segment-button.js +40 -5
- package/dist/collection/components/segment-content/segment-content.css +6 -0
- package/dist/collection/components/segment-content/segment-content.js +21 -0
- package/dist/collection/components/segment-view/segment-view-interface.js +1 -0
- package/dist/collection/components/segment-view/segment-view.ios.css +83 -0
- package/dist/collection/components/segment-view/segment-view.js +227 -0
- package/dist/collection/components/segment-view/segment-view.md.css +83 -0
- package/dist/collection/components/select/select.js +61 -16
- package/dist/collection/components/select-modal/select-modal-interface.js +1 -0
- package/dist/collection/components/select-modal/select-modal.ios.css +3 -0
- package/dist/collection/components/select-modal/select-modal.js +159 -0
- package/dist/collection/components/select-modal/select-modal.md.css +110 -0
- package/dist/collection/components/select-modal/test/fixtures.js +48 -0
- 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.ios.css +1 -1
- package/dist/collection/components/toast/toast.js +2 -2
- package/dist/collection/components/toast/toast.md.css +1 -1
- package/dist/collection/components/toggle/toggle.js +3 -3
- package/dist/collection/components/toolbar/toolbar.js +2 -2
- package/dist/collection/utils/focus-trap.js +8 -2
- package/dist/collection/utils/menu-controller/index.js +2 -2
- package/dist/collection/utils/overlays.js +19 -9
- package/dist/docs.json +426 -29
- package/dist/esm/{index-fe1782b1.js → index-24b48b06.js} +2 -2
- package/dist/esm/index.js +2 -2
- package/dist/esm/ion-action-sheet.entry.js +1 -1
- package/dist/esm/ion-alert.entry.js +8 -6
- package/dist/esm/ion-app_8.entry.js +36 -17
- package/dist/esm/ion-avatar_3.entry.js +4 -4
- package/dist/esm/ion-back-button.entry.js +2 -2
- package/dist/esm/ion-backdrop.entry.js +1 -1
- package/dist/esm/ion-breadcrumb_2.entry.js +6 -6
- package/dist/esm/ion-button_2.entry.js +2 -2
- package/dist/esm/ion-card_5.entry.js +8 -8
- package/dist/esm/ion-checkbox.entry.js +5 -4
- package/dist/esm/ion-chip.entry.js +2 -2
- package/dist/esm/ion-col_3.entry.js +5 -5
- package/dist/esm/ion-datetime-button.entry.js +2 -2
- package/dist/esm/ion-datetime_3.entry.js +7 -7
- 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 +3 -3
- package/dist/esm/ion-item-option_3.entry.js +6 -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 +52 -25
- package/dist/esm/ion-modal.entry.js +5 -5
- 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 +3 -3
- package/dist/esm/ion-picker.entry.js +2 -2
- package/dist/esm/ion-popover.entry.js +3 -3
- package/dist/esm/ion-progress-bar.entry.js +1 -1
- package/dist/esm/ion-radio_2.entry.js +17 -8
- 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-content.entry.js +19 -0
- package/dist/esm/ion-segment-view.entry.js +118 -0
- package/dist/esm/ion-segment_2.entry.js +132 -19
- package/dist/esm/ion-select-modal.entry.js +107 -0
- package/dist/esm/ion-select_3.entry.js +40 -15
- 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 +5 -5
- package/dist/esm/ion-toggle.entry.js +3 -3
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{overlays-ae10d43d.js → overlays-e7b9d6d9.js} +27 -12
- package/dist/esm-es5/{index-fe1782b1.js → index-24b48b06.js} +1 -1
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
- package/dist/esm-es5/ion-alert.entry.js +1 -1
- package/dist/esm-es5/ion-app_8.entry.js +1 -1
- package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
- package/dist/esm-es5/ion-back-button.entry.js +1 -1
- package/dist/esm-es5/ion-backdrop.entry.js +1 -1
- package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
- package/dist/esm-es5/ion-button_2.entry.js +1 -1
- package/dist/esm-es5/ion-card_5.entry.js +1 -1
- package/dist/esm-es5/ion-checkbox.entry.js +2 -2
- package/dist/esm-es5/ion-chip.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-content.entry.js +4 -0
- package/dist/esm-es5/ion-segment-view.entry.js +4 -0
- package/dist/esm-es5/ion-segment_2.entry.js +1 -1
- package/dist/esm-es5/ion-select-modal.entry.js +4 -0
- 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-e7b9d6d9.js +4 -0
- package/dist/html.html-data.json +65 -2
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-313ccc01.system.entry.js → p-01186920.system.entry.js} +1 -1
- package/dist/ionic/{p-7251fed5.entry.js → p-04909654.entry.js} +1 -1
- package/dist/ionic/{p-e3e1e3de.entry.js → p-081a4ce4.entry.js} +1 -1
- package/dist/ionic/p-0aa833fb.system.js +4 -0
- package/dist/ionic/{p-79e7be3a.system.entry.js → p-1046866e.system.entry.js} +1 -1
- package/dist/ionic/p-12a722b8.system.entry.js +4 -0
- package/dist/ionic/{p-41c89b8d.entry.js → p-12c45a7c.entry.js} +1 -1
- package/dist/ionic/p-14be4015.entry.js +4 -0
- package/dist/ionic/{p-c71f301f.system.entry.js → p-14e159ea.system.entry.js} +1 -1
- package/dist/ionic/p-15e76dd1.entry.js +4 -0
- package/dist/ionic/{p-003eecb9.entry.js → p-16188af7.entry.js} +1 -1
- package/dist/ionic/p-16799667.system.entry.js +4 -0
- package/dist/ionic/p-16bfb979.system.entry.js +4 -0
- package/dist/ionic/{p-8836d0eb.system.entry.js → p-17a9ca63.system.entry.js} +1 -1
- package/dist/ionic/{p-b54fc1ae.entry.js → p-19ec4f42.entry.js} +1 -1
- package/dist/ionic/{p-8b6232a6.system.entry.js → p-1e010627.system.entry.js} +2 -2
- package/dist/ionic/{p-cdb11938.system.entry.js → p-1e67b266.system.entry.js} +1 -1
- package/dist/ionic/{p-0790b342.system.entry.js → p-1fe02220.system.entry.js} +1 -1
- package/dist/ionic/{p-836d39d4.system.entry.js → p-2172893e.system.entry.js} +1 -1
- package/dist/ionic/{p-4a0a4204.system.entry.js → p-2507278c.system.entry.js} +1 -1
- package/dist/ionic/{p-75c0dc65.system.entry.js → p-2799c6d3.system.entry.js} +1 -1
- package/dist/ionic/{p-a879ecb7.system.entry.js → p-2abae1cc.system.entry.js} +1 -1
- package/dist/ionic/{p-293ed6ac.system.entry.js → p-2b838f86.system.entry.js} +1 -1
- package/dist/ionic/p-2b9b78c7.entry.js +4 -0
- package/dist/ionic/{p-f0ab13a8.system.entry.js → p-2bd0ae94.system.entry.js} +1 -1
- package/dist/ionic/{p-4a82bd1c.system.entry.js → p-2e46590d.system.entry.js} +1 -1
- package/dist/ionic/{p-148b8abb.entry.js → p-2fc0dafe.entry.js} +1 -1
- package/dist/ionic/p-322c5fb4.system.js +2 -2
- package/dist/ionic/{p-60cc7986.entry.js → p-33a8a71b.entry.js} +1 -1
- package/dist/ionic/{p-18105026.system.entry.js → p-37cb43bd.system.entry.js} +1 -1
- package/dist/ionic/{p-be71fe0f.system.entry.js → p-404aede0.system.entry.js} +1 -1
- package/dist/ionic/p-424eb140.system.entry.js +4 -0
- package/dist/ionic/{p-b7657e8d.entry.js → p-4439fc2a.entry.js} +1 -1
- package/dist/ionic/{p-c34659b9.entry.js → p-45693d7e.entry.js} +1 -1
- package/dist/ionic/p-49a0e74c.entry.js +4 -0
- package/dist/ionic/{p-fd0cb4ef.entry.js → p-4ec778aa.entry.js} +1 -1
- package/dist/ionic/p-508d024a.entry.js +4 -0
- package/dist/ionic/{p-f559ac5b.entry.js → p-51796b2d.entry.js} +1 -1
- package/dist/ionic/{p-9ece8dcf.entry.js → p-52d7a191.entry.js} +1 -1
- package/dist/ionic/{p-ce705aac.system.entry.js → p-567de071.system.entry.js} +1 -1
- package/dist/ionic/{p-95823c62.system.entry.js → p-5823babc.system.entry.js} +2 -2
- package/dist/ionic/{p-baffaf8d.system.entry.js → p-58d5df0c.system.entry.js} +1 -1
- package/dist/ionic/{p-521eca2e.entry.js → p-5ab1b709.entry.js} +1 -1
- package/dist/ionic/{p-8d44cf1f.entry.js → p-5b932840.entry.js} +1 -1
- package/dist/ionic/{p-53add985.system.entry.js → p-5fce0c0b.system.entry.js} +1 -1
- package/dist/ionic/p-626fd66d.system.entry.js +4 -0
- package/dist/ionic/{p-233e6c93.entry.js → p-62af944c.entry.js} +1 -1
- package/dist/ionic/{p-00b01a55.system.entry.js → p-63b0abde.system.entry.js} +1 -1
- package/dist/ionic/{p-ad9b5007.system.entry.js → p-6416c34c.system.entry.js} +1 -1
- package/dist/ionic/{p-857ca696.system.entry.js → p-6499df44.system.entry.js} +1 -1
- package/dist/ionic/p-69666e8a.system.entry.js +4 -0
- package/dist/ionic/{p-9e208825.entry.js → p-6b280620.entry.js} +1 -1
- package/dist/ionic/{p-5e842258.entry.js → p-6d32975a.entry.js} +1 -1
- package/dist/ionic/p-6d6cedc5.entry.js +4 -0
- package/dist/ionic/p-73dc4950.entry.js +4 -0
- package/dist/ionic/{p-fcd71204.system.entry.js → p-7458862e.system.entry.js} +1 -1
- package/dist/ionic/{p-a3711608.system.entry.js → p-797eeea8.system.entry.js} +1 -1
- package/dist/ionic/{p-f8c8b9ba.entry.js → p-7b9a2b23.entry.js} +1 -1
- package/dist/ionic/{p-bd25d639.system.entry.js → p-7ddc46c3.system.entry.js} +1 -1
- package/dist/ionic/{p-6817cf42.system.entry.js → p-7ed1657c.system.entry.js} +1 -1
- package/dist/ionic/p-908d6080.entry.js +4 -0
- package/dist/ionic/{p-af999a31.entry.js → p-937a7e21.entry.js} +1 -1
- package/dist/ionic/p-942b5e13.entry.js +4 -0
- package/dist/ionic/{p-4c8fceb0.entry.js → p-95775830.entry.js} +1 -1
- package/dist/ionic/{p-6ceb04b5.entry.js → p-982315a6.entry.js} +1 -1
- package/dist/ionic/{p-973f0b15.system.entry.js → p-98231c01.system.entry.js} +1 -1
- package/dist/ionic/{p-25928b83.system.entry.js → p-985a7e17.system.entry.js} +1 -1
- package/dist/ionic/{p-e3a5da9d.entry.js → p-98ff6b32.entry.js} +1 -1
- package/dist/ionic/{p-6e85e450.entry.js → p-9df2c6fb.entry.js} +1 -1
- package/dist/ionic/{p-d58f21d2.entry.js → p-9e33104d.entry.js} +1 -1
- package/dist/ionic/{p-da263d8e.entry.js → p-9fa07aec.entry.js} +1 -1
- package/dist/ionic/{p-9910f786.entry.js → p-a43467d8.entry.js} +1 -1
- package/dist/ionic/{p-6b8893dd.entry.js → p-a61cba41.entry.js} +1 -1
- package/dist/ionic/p-adbc4bdf.entry.js +4 -0
- package/dist/ionic/{p-49bc6544.entry.js → p-afecb188.entry.js} +1 -1
- package/dist/ionic/p-b2272f51.system.entry.js +4 -0
- package/dist/ionic/{p-be715dd3.system.entry.js → p-b335ffed.system.entry.js} +1 -1
- package/dist/ionic/{p-6d50faff.entry.js → p-b79ba17c.entry.js} +1 -1
- package/dist/ionic/{p-e3f13b08.js → p-b82d4cab.js} +1 -1
- package/dist/ionic/{p-68c4df55.entry.js → p-b9d7015f.entry.js} +1 -1
- package/dist/ionic/{p-7243df6f.entry.js → p-bb0db172.entry.js} +1 -1
- package/dist/ionic/{p-df83e308.system.entry.js → p-bc36ad98.system.entry.js} +1 -1
- package/dist/ionic/{p-773d118d.entry.js → p-bdad26e3.entry.js} +1 -1
- package/dist/ionic/p-c29f8157.system.entry.js +4 -0
- package/dist/ionic/p-c2b74d92.system.entry.js +4 -0
- package/dist/ionic/{p-176b372f.entry.js → p-c41ac815.entry.js} +1 -1
- package/dist/ionic/{p-79b12fda.system.js → p-c449820c.system.js} +1 -1
- package/dist/ionic/{p-5417b9bb.entry.js → p-c9f3a539.entry.js} +1 -1
- package/dist/ionic/{p-2ea1ca4f.system.entry.js → p-ca065903.system.entry.js} +1 -1
- package/dist/ionic/{p-2ca6eac2.system.entry.js → p-cac0e0b3.system.entry.js} +1 -1
- package/dist/ionic/{p-3c968c7f.system.entry.js → p-d18ab582.system.entry.js} +2 -2
- package/dist/ionic/{p-92d7a3d1.entry.js → p-d7aa6b00.entry.js} +1 -1
- package/dist/ionic/{p-21cfd4de.entry.js → p-da074ff7.entry.js} +1 -1
- package/dist/ionic/{p-89a0a446.entry.js → p-de930745.entry.js} +1 -1
- package/dist/ionic/{p-960803fc.system.entry.js → p-e4ee80be.system.entry.js} +1 -1
- package/dist/ionic/{p-d754c709.system.entry.js → p-e4f69534.system.entry.js} +1 -1
- package/dist/ionic/{p-dda5c73d.entry.js → p-e563a35c.entry.js} +1 -1
- package/dist/ionic/p-e6635685.js +4 -0
- package/dist/ionic/{p-7740e32c.system.js → p-e7ed4a7f.system.js} +1 -1
- package/dist/ionic/{p-0373d924.system.entry.js → p-ebf042e0.system.entry.js} +1 -1
- package/dist/ionic/{p-9b6c6302.system.entry.js → p-ed75fcfb.system.entry.js} +1 -1
- package/dist/ionic/{p-01503bbd.system.entry.js → p-f3102647.system.entry.js} +1 -1
- package/dist/ionic/p-fbf284c7.entry.js +4 -0
- package/dist/ionic/{p-6562e0a9.system.entry.js → p-fca6ef5f.system.entry.js} +1 -1
- package/dist/ionic/p-fec61c32.entry.js +4 -0
- package/dist/ionic/{p-b0180ce1.system.entry.js → p-ffd131f9.system.entry.js} +1 -1
- package/dist/types/components/checkbox/checkbox.d.ts +2 -1
- package/dist/types/components/menu/menu-interface.d.ts +5 -2
- package/dist/types/components/menu/menu.d.ts +6 -6
- package/dist/types/components/radio/radio.d.ts +1 -1
- package/dist/types/components/radio-group/radio-group.d.ts +2 -0
- package/dist/types/components/segment/segment.d.ts +21 -1
- package/dist/types/components/segment-button/segment-button.d.ts +4 -0
- package/dist/types/components/segment-content/segment-content.d.ts +4 -0
- package/dist/types/components/segment-view/segment-view-interface.d.ts +4 -0
- package/dist/types/components/segment-view/segment-view.d.ts +55 -0
- package/dist/types/components/select/select-interface.d.ts +1 -1
- package/dist/types/components/select/select.d.ts +5 -4
- package/dist/types/components/select-modal/select-modal-interface.d.ts +10 -0
- package/dist/types/components/select-modal/select-modal.d.ts +16 -0
- package/dist/types/components/select-modal/test/fixtures.d.ts +16 -0
- package/dist/types/components.d.ts +104 -13
- package/dist/types/utils/focus-trap.d.ts +1 -1
- package/dist/types/utils/overlays-interface.d.ts +1 -1
- package/hydrate/index.js +695 -228
- package/hydrate/index.mjs +695 -228
- package/package.json +1 -1
- package/dist/esm-es5/overlays-ae10d43d.js +0 -4
- package/dist/ionic/p-04fc24ee.system.js +0 -4
- package/dist/ionic/p-110e03be.system.entry.js +0 -4
- package/dist/ionic/p-2200e26b.entry.js +0 -4
- package/dist/ionic/p-44d1539c.system.entry.js +0 -4
- package/dist/ionic/p-53854390.entry.js +0 -4
- package/dist/ionic/p-5800e441.entry.js +0 -4
- package/dist/ionic/p-5c831f49.js +0 -4
- package/dist/ionic/p-63d65dbc.system.entry.js +0 -4
- package/dist/ionic/p-72ffd137.system.entry.js +0 -4
- package/dist/ionic/p-82ab7ccb.entry.js +0 -4
- package/dist/ionic/p-87a4407b.entry.js +0 -4
- package/dist/ionic/p-9172535c.entry.js +0 -4
- package/dist/ionic/p-93f37ceb.system.entry.js +0 -4
- package/dist/ionic/p-9895e7f3.entry.js +0 -4
- package/dist/ionic/p-a0c88dc2.system.entry.js +0 -4
- package/dist/ionic/p-a89dac49.entry.js +0 -4
- package/dist/ionic/p-f88ebc36.entry.js +0 -4
package/hydrate/index.js
CHANGED
|
@@ -4392,7 +4392,7 @@ const createLockController = () => {
|
|
|
4392
4392
|
* Note: We need this distinction because `disabled="false"` is
|
|
4393
4393
|
* valid usage for the disabled property on ion-button.
|
|
4394
4394
|
*/
|
|
4395
|
-
const focusableQueryString = '[tabindex]:not([tabindex^="-"]):not([hidden]):not([disabled]), input:not([type=hidden]):not([tabindex^="-"]):not([hidden]):not([disabled]), textarea:not([tabindex^="-"]):not([hidden]):not([disabled]), button:not([tabindex^="-"]):not([hidden]):not([disabled]), select:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable[disabled="false"]:not([tabindex^="-"]):not([hidden])';
|
|
4395
|
+
const focusableQueryString = '[tabindex]:not([tabindex^="-"]):not([hidden]):not([disabled]), input:not([type=hidden]):not([tabindex^="-"]):not([hidden]):not([disabled]), textarea:not([tabindex^="-"]):not([hidden]):not([disabled]), button:not([tabindex^="-"]):not([hidden]):not([disabled]), select:not([tabindex^="-"]):not([hidden]):not([disabled]), ion-checkbox:not([tabindex^="-"]):not([hidden]):not([disabled]), ion-radio:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable[disabled="false"]:not([tabindex^="-"]):not([hidden])';
|
|
4396
4396
|
/**
|
|
4397
4397
|
* Focuses the first descendant in a context
|
|
4398
4398
|
* that can receive focus. If none exists,
|
|
@@ -4447,7 +4447,13 @@ const focusElementInContext = (hostToFocus, fallbackElement) => {
|
|
|
4447
4447
|
elementToFocus = shadowRoot.querySelector(focusableQueryString) || hostToFocus;
|
|
4448
4448
|
}
|
|
4449
4449
|
if (elementToFocus) {
|
|
4450
|
-
|
|
4450
|
+
const radioGroup = elementToFocus.closest('ion-radio-group');
|
|
4451
|
+
if (radioGroup) {
|
|
4452
|
+
radioGroup.setFocus();
|
|
4453
|
+
}
|
|
4454
|
+
else {
|
|
4455
|
+
focusVisibleElement(elementToFocus);
|
|
4456
|
+
}
|
|
4451
4457
|
}
|
|
4452
4458
|
else {
|
|
4453
4459
|
// Focus fallback element instead of letting focus escape
|
|
@@ -4623,6 +4629,7 @@ const createController = (tagName) => {
|
|
|
4623
4629
|
};
|
|
4624
4630
|
const alertController = /*@__PURE__*/ createController('ion-alert');
|
|
4625
4631
|
const actionSheetController = /*@__PURE__*/ createController('ion-action-sheet');
|
|
4632
|
+
const modalController = /*@__PURE__*/ createController('ion-modal');
|
|
4626
4633
|
const popoverController = /*@__PURE__*/ createController('ion-popover');
|
|
4627
4634
|
/**
|
|
4628
4635
|
* Prepares the overlay element to be presented.
|
|
@@ -5397,21 +5404,30 @@ const createTriggerController = () => {
|
|
|
5397
5404
|
* like TalkBack do not announce or interact with the content until the
|
|
5398
5405
|
* animation is complete, avoiding confusion for users.
|
|
5399
5406
|
*
|
|
5400
|
-
*
|
|
5401
|
-
* in
|
|
5402
|
-
* styles)
|
|
5403
|
-
*
|
|
5407
|
+
* When the overlay is presented on an Android device, TalkBack's focus rings
|
|
5408
|
+
* may appear in the wrong position due to the transition (specifically
|
|
5409
|
+
* `transform` styles). This occurs because the focus rings are initially
|
|
5410
|
+
* displayed at the starting position of the elements before the transition
|
|
5411
|
+
* begins. This workaround ensures the focus rings do not appear in the
|
|
5412
|
+
* incorrect location.
|
|
5413
|
+
*
|
|
5414
|
+
* If this solution is applied to iOS devices, then it leads to a bug where
|
|
5415
|
+
* the overlays cannot be accessed by screen readers. This is due to
|
|
5416
|
+
* VoiceOver not being able to update the accessibility tree when the
|
|
5417
|
+
* `aria-hidden` is removed.
|
|
5404
5418
|
*
|
|
5405
5419
|
* @param overlay - The overlay that is being animated.
|
|
5406
5420
|
*/
|
|
5407
5421
|
const hideAnimatingOverlayFromScreenReaders = (overlay) => {
|
|
5408
5422
|
if (doc === undefined)
|
|
5409
5423
|
return;
|
|
5410
|
-
|
|
5411
|
-
|
|
5412
|
-
|
|
5413
|
-
|
|
5414
|
-
|
|
5424
|
+
if (isPlatform('android')) {
|
|
5425
|
+
/**
|
|
5426
|
+
* Once the animation is complete, this attribute will be removed.
|
|
5427
|
+
* This is done at the end of the `present` method.
|
|
5428
|
+
*/
|
|
5429
|
+
overlay.setAttribute('aria-hidden', 'true');
|
|
5430
|
+
}
|
|
5415
5431
|
};
|
|
5416
5432
|
/**
|
|
5417
5433
|
* Ensure that underlying overlays have aria-hidden if necessary so that screen readers
|
|
@@ -7291,13 +7307,15 @@ class Alert {
|
|
|
7291
7307
|
const msgId = `alert-${overlayIndex}-msg`;
|
|
7292
7308
|
const role = this.inputs.length > 0 || this.buttons.length > 0 ? 'alertdialog' : 'alert';
|
|
7293
7309
|
/**
|
|
7294
|
-
*
|
|
7295
|
-
* If
|
|
7310
|
+
* Use both the header and subHeader ids if they are defined.
|
|
7311
|
+
* If only the header is defined, use the header id.
|
|
7312
|
+
* If only the subHeader is defined, use the subHeader id.
|
|
7313
|
+
* If neither are defined, do not set aria-labelledby.
|
|
7296
7314
|
*/
|
|
7297
|
-
const ariaLabelledBy = header ? hdrId : subHeader ? subHdrId : null;
|
|
7298
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
7315
|
+
const ariaLabelledBy = header && subHeader ? `${hdrId} ${subHdrId}` : header ? hdrId : subHeader ? subHdrId : null;
|
|
7316
|
+
return (hAsync(Host, Object.assign({ key: 'ad7e14b4f92a09387aa80abfb718a755e4e889d6', role: role, "aria-modal": "true", "aria-labelledby": ariaLabelledBy, "aria-describedby": message !== undefined ? msgId : null, tabindex: "-1" }, htmlAttributes, { style: {
|
|
7299
7317
|
zIndex: `${20000 + overlayIndex}`,
|
|
7300
|
-
}, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'alert-translucent': this.translucent }), onIonAlertWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }), hAsync("ion-backdrop", { key: '
|
|
7318
|
+
}, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'alert-translucent': this.translucent }), onIonAlertWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }), hAsync("ion-backdrop", { key: '4b4693dca3c910aa9a61c4d90295d785ec6cbe3d', tappable: this.backdropDismiss }), hAsync("div", { key: '64fd19b8f1d8246dcc869053f858bc33506def4b', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: 'e61ba6f339c3a02cecd37d8b641ee5043018eb29', class: "alert-wrapper ion-overlay-wrapper", ref: (el) => (this.wrapperEl = el) }, hAsync("div", { key: '044e00667ffcb74aa2c5e0d0b42669c4004dbb4f', class: "alert-head" }, header && (hAsync("h2", { key: '1aaae8d58722c4cf5debb1f00415ab7ed0a52bbd', id: hdrId, class: "alert-title" }, header)), subHeader && !header && (hAsync("h2", { key: '9c9854dc3b0ad40f1861a49b76d5636afcae9c74', id: subHdrId, class: "alert-sub-title" }, subHeader)), subHeader && header && (hAsync("h3", { key: '19aaca9912f77cde4ae8079be210eda697ed8de1', id: subHdrId, class: "alert-sub-title" }, subHeader))), this.renderAlertMessage(msgId), this.renderAlertInputs(), this.renderAlertButtons()), hAsync("div", { key: 'a85d27c516f7cdbc85b19f40d2f0bd865490b6a7', tabindex: "0", "aria-hidden": "true" })));
|
|
7301
7319
|
}
|
|
7302
7320
|
get el() { return getElement(this); }
|
|
7303
7321
|
static get watchers() { return {
|
|
@@ -7375,7 +7393,7 @@ class App {
|
|
|
7375
7393
|
}
|
|
7376
7394
|
render() {
|
|
7377
7395
|
const mode = getIonMode$1(this);
|
|
7378
|
-
return (hAsync(Host, { key: '
|
|
7396
|
+
return (hAsync(Host, { key: '96715520fd05d6f0e6fa26a8ba78792cfccd4c0a', class: {
|
|
7379
7397
|
[mode]: true,
|
|
7380
7398
|
'ion-page': true,
|
|
7381
7399
|
'force-statusbar-padding': config.getBoolean('_forceStatusbarPadding'),
|
|
@@ -7406,7 +7424,7 @@ class Avatar {
|
|
|
7406
7424
|
registerInstance(this, hostRef);
|
|
7407
7425
|
}
|
|
7408
7426
|
render() {
|
|
7409
|
-
return (hAsync(Host, { key: '
|
|
7427
|
+
return (hAsync(Host, { key: '998217066084f966bf5d356fed85bcbd451f675a', class: getIonMode$1(this) }, hAsync("slot", { key: '1a6f7c9d4dc6a875f86b5b3cda6d59cb39587f22' })));
|
|
7410
7428
|
}
|
|
7411
7429
|
static get style() { return {
|
|
7412
7430
|
ios: IonAvatarIosStyle0,
|
|
@@ -7494,7 +7512,7 @@ class BackButton {
|
|
|
7494
7512
|
const showBackButton = defaultHref !== undefined;
|
|
7495
7513
|
const mode = getIonMode$1(this);
|
|
7496
7514
|
const ariaLabel = inheritedAttributes['aria-label'] || backButtonText || 'back';
|
|
7497
|
-
return (hAsync(Host, { key: '
|
|
7515
|
+
return (hAsync(Host, { key: '5466624a10f1ab56f5469e6dc07080303880f2fe', onClick: this.onClick, class: createColorClasses$1(color, {
|
|
7498
7516
|
[mode]: true,
|
|
7499
7517
|
button: true, // ion-buttons target .button
|
|
7500
7518
|
'back-button-disabled': disabled,
|
|
@@ -7504,7 +7522,7 @@ class BackButton {
|
|
|
7504
7522
|
'ion-activatable': true,
|
|
7505
7523
|
'ion-focusable': true,
|
|
7506
7524
|
'show-back-button': showBackButton,
|
|
7507
|
-
}) }, hAsync("button", { key: '
|
|
7525
|
+
}) }, hAsync("button", { key: '63bc75ef0ad7cc9fb79e58217a3314b20acd73e3', type: type, disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }, hAsync("span", { key: '5d3eacbd11af2245c6e1151cab446a0d96559ad8', class: "button-inner" }, backButtonIcon && (hAsync("ion-icon", { key: '6439af0ae463764174e7d3207f02267811df666d', part: "icon", icon: backButtonIcon, "aria-hidden": "true", lazy: false, "flip-rtl": icon === undefined })), backButtonText && (hAsync("span", { key: '8ee89fb18dfdb5b75948a8b197ff4cdbc008742f', part: "text", "aria-hidden": "true", class: "button-text" }, backButtonText))), mode === 'md' && hAsync("ion-ripple-effect", { key: '63803a884998bc73bea5afe0b2a0a14e3fa4d6bf', type: this.rippleType }))));
|
|
7508
7526
|
}
|
|
7509
7527
|
get el() { return getElement(this); }
|
|
7510
7528
|
static get style() { return {
|
|
@@ -7557,7 +7575,7 @@ class Backdrop {
|
|
|
7557
7575
|
}
|
|
7558
7576
|
render() {
|
|
7559
7577
|
const mode = getIonMode$1(this);
|
|
7560
|
-
return (hAsync(Host, { key: '
|
|
7578
|
+
return (hAsync(Host, { key: '7abaf2c310aa399607451b14063265e8a5846938', "aria-hidden": "true", class: {
|
|
7561
7579
|
[mode]: true,
|
|
7562
7580
|
'backdrop-hide': !this.visible,
|
|
7563
7581
|
'backdrop-no-tappable': !this.tappable,
|
|
@@ -7597,9 +7615,9 @@ class Badge {
|
|
|
7597
7615
|
}
|
|
7598
7616
|
render() {
|
|
7599
7617
|
const mode = getIonMode$1(this);
|
|
7600
|
-
return (hAsync(Host, { key: '
|
|
7618
|
+
return (hAsync(Host, { key: '1a2d39c5deec771a2f2196447627b62a7d4c8389', class: createColorClasses$1(this.color, {
|
|
7601
7619
|
[mode]: true,
|
|
7602
|
-
}) }, hAsync("slot", { key: '
|
|
7620
|
+
}) }, hAsync("slot", { key: 'fc1b6587f1ed24715748eb6785e7fb7a57cdd5cd' })));
|
|
7603
7621
|
}
|
|
7604
7622
|
static get style() { return {
|
|
7605
7623
|
ios: IonBadgeIosStyle0,
|
|
@@ -7685,7 +7703,7 @@ class Breadcrumb {
|
|
|
7685
7703
|
// to show the separator as long as it isn't also the last breadcrumb
|
|
7686
7704
|
// otherwise if not collapsed use the value in separator
|
|
7687
7705
|
const showSeparator = last ? false : collapsed ? (showCollapsedIndicator && !last ? true : false) : separator;
|
|
7688
|
-
return (hAsync(Host, { key: '
|
|
7706
|
+
return (hAsync(Host, { key: '32ca61c83721dff52b5e97171ed449dce3584a55', onClick: (ev) => openURL(href, ev, routerDirection, routerAnimation), "aria-disabled": disabled ? 'true' : null, class: createColorClasses$1(color, {
|
|
7689
7707
|
[mode]: true,
|
|
7690
7708
|
'breadcrumb-active': active,
|
|
7691
7709
|
'breadcrumb-collapsed': collapsed,
|
|
@@ -7695,15 +7713,15 @@ class Breadcrumb {
|
|
|
7695
7713
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
7696
7714
|
'ion-activatable': clickable,
|
|
7697
7715
|
'ion-focusable': clickable,
|
|
7698
|
-
}) }, hAsync(TagType, Object.assign({ key: '
|
|
7716
|
+
}) }, hAsync(TagType, Object.assign({ key: '479feb845f4a6d8009d5422b33eb423730b9722b' }, attrs, { class: "breadcrumb-native", part: "native", disabled: disabled, onFocus: this.onFocus, onBlur: this.onBlur }, inheritedAttributes), hAsync("slot", { key: '3c5dcaeb0d258235d1b7707868026ff1d1404099', name: "start" }), hAsync("slot", { key: 'f1cfb934443cd97dc220882c5e3596ea879d66cf' }), hAsync("slot", { key: '539710121b5b1f3ee8d4c24a9651b67c2ae08add', name: "end" })), showCollapsedIndicator && (hAsync("button", { key: 'ed53a95ccd89022c8b7bee0658a221ec62a5c73b', part: "collapsed-indicator", "aria-label": "Show more breadcrumbs", onClick: () => this.collapsedIndicatorClick(), ref: (collapsedEl) => (this.collapsedRef = collapsedEl), class: {
|
|
7699
7717
|
'breadcrumbs-collapsed-indicator': true,
|
|
7700
|
-
} }, hAsync("ion-icon", { key: '
|
|
7718
|
+
} }, hAsync("ion-icon", { key: 'a849e1142a86f06f207cf11662fa2a560ab7fc6a', "aria-hidden": "true", icon: ellipsisHorizontal, lazy: false }))), showSeparator && (
|
|
7701
7719
|
/**
|
|
7702
7720
|
* Separators should not be announced by narrators.
|
|
7703
7721
|
* We add aria-hidden on the span so that this applies
|
|
7704
7722
|
* to any custom separators too.
|
|
7705
7723
|
*/
|
|
7706
|
-
hAsync("span", { key: '
|
|
7724
|
+
hAsync("span", { key: 'fc3c741cb01fafef8b26046c7ee5b190efc69a7c', class: "breadcrumb-separator", part: "separator", "aria-hidden": "true" }, hAsync("slot", { key: '4871932ae1dae520767e0713e7cee2d11b0bba6d', name: "separator" }, mode === 'ios' ? (hAsync("ion-icon", { icon: chevronForwardOutline, lazy: false, "flip-rtl": true })) : (hAsync("span", null, "/")))))));
|
|
7707
7725
|
}
|
|
7708
7726
|
get el() { return getElement(this); }
|
|
7709
7727
|
static get style() { return {
|
|
@@ -7843,12 +7861,12 @@ class Breadcrumbs {
|
|
|
7843
7861
|
render() {
|
|
7844
7862
|
const { color, collapsed } = this;
|
|
7845
7863
|
const mode = getIonMode$1(this);
|
|
7846
|
-
return (hAsync(Host, { key: '
|
|
7864
|
+
return (hAsync(Host, { key: 'fe64e9cdf597ede2db140bf5fa05a0359d82db57', class: createColorClasses$1(color, {
|
|
7847
7865
|
[mode]: true,
|
|
7848
7866
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
7849
7867
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
7850
7868
|
'breadcrumbs-collapsed': collapsed,
|
|
7851
|
-
}) }, hAsync("slot", { key: '
|
|
7869
|
+
}) }, hAsync("slot", { key: 'a2c99b579e339055c50a613d5c6b61032f5ddffe', onSlotchange: this.slotChanged })));
|
|
7852
7870
|
}
|
|
7853
7871
|
get el() { return getElement(this); }
|
|
7854
7872
|
static get watchers() { return {
|
|
@@ -8091,7 +8109,7 @@ class Button {
|
|
|
8091
8109
|
{
|
|
8092
8110
|
type !== 'button' && this.renderHiddenButton();
|
|
8093
8111
|
}
|
|
8094
|
-
return (hAsync(Host, { key: '
|
|
8112
|
+
return (hAsync(Host, { key: '340a809d85698741bb36e796355cae89a970655f', onClick: this.handleClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses$1(color, {
|
|
8095
8113
|
[mode]: true,
|
|
8096
8114
|
[buttonType]: true,
|
|
8097
8115
|
[`${buttonType}-${expand}`]: expand !== undefined,
|
|
@@ -8106,7 +8124,7 @@ class Button {
|
|
|
8106
8124
|
'button-disabled': disabled,
|
|
8107
8125
|
'ion-activatable': true,
|
|
8108
8126
|
'ion-focusable': true,
|
|
8109
|
-
}) }, hAsync(TagType, Object.assign({ key: '
|
|
8127
|
+
}) }, hAsync(TagType, Object.assign({ key: '03ae1b94a0d606aa65aa6f82c2fc76abcf3f1300' }, attrs, { class: "button-native", part: "native", disabled: disabled, onFocus: this.onFocus, onBlur: this.onBlur }, inheritedAttributes), hAsync("span", { key: '90bf53d4ffcab88ee596ece7113d5b6409e61143', class: "button-inner" }, hAsync("slot", { key: 'a7876695f0d8702e8bcb471ae4c0984f27d77458', name: "icon-only", onSlotchange: this.slotChanged }), hAsync("slot", { key: '2c8551586f8726884d7797a6d3fee2d4b3aab35f', name: "start" }), hAsync("slot", { key: '9ab07accdb22b08d0a463a7c821c9793507d1f7d' }), hAsync("slot", { key: '8984afe177e6ba021435875a3798e2a64f3bdf2c', name: "end" })), mode === 'md' && hAsync("ion-ripple-effect", { key: '3e9f01e7a1198b6b7109502293a971da7072a4f3', type: this.rippleType }))));
|
|
8110
8128
|
}
|
|
8111
8129
|
get el() { return getElement(this); }
|
|
8112
8130
|
static get watchers() { return {
|
|
@@ -8157,10 +8175,10 @@ class Buttons {
|
|
|
8157
8175
|
}
|
|
8158
8176
|
render() {
|
|
8159
8177
|
const mode = getIonMode$1(this);
|
|
8160
|
-
return (hAsync(Host, { key: '
|
|
8178
|
+
return (hAsync(Host, { key: '58c1fc5eb867d0731c63549b1ccb3ec3bbbe6e1b', class: {
|
|
8161
8179
|
[mode]: true,
|
|
8162
8180
|
['buttons-collapse']: this.collapse,
|
|
8163
|
-
} }, hAsync("slot", { key: '
|
|
8181
|
+
} }, hAsync("slot", { key: '0c8f95b9840c8fa0c4e50be84c5159620a3eb5c8' })));
|
|
8164
8182
|
}
|
|
8165
8183
|
static get style() { return {
|
|
8166
8184
|
ios: IonButtonsIosStyle0,
|
|
@@ -8229,7 +8247,7 @@ class Card {
|
|
|
8229
8247
|
}
|
|
8230
8248
|
render() {
|
|
8231
8249
|
const mode = getIonMode$1(this);
|
|
8232
|
-
return (hAsync(Host, { key: '
|
|
8250
|
+
return (hAsync(Host, { key: '85e9b30bd81e79a0c7ac75cb3664bdcf9e4afc4d', class: createColorClasses$1(this.color, {
|
|
8233
8251
|
[mode]: true,
|
|
8234
8252
|
'card-disabled': this.disabled,
|
|
8235
8253
|
'ion-activatable': this.isClickable(),
|
|
@@ -8276,7 +8294,7 @@ class CardContent {
|
|
|
8276
8294
|
}
|
|
8277
8295
|
render() {
|
|
8278
8296
|
const mode = getIonMode$1(this);
|
|
8279
|
-
return (hAsync(Host, { key: '
|
|
8297
|
+
return (hAsync(Host, { key: 'd98e4d1fc6ad3237549f9bc17e4c67ec5059b1b3', class: {
|
|
8280
8298
|
[mode]: true,
|
|
8281
8299
|
// Used internally for styling
|
|
8282
8300
|
[`card-content-${mode}`]: true,
|
|
@@ -8313,11 +8331,11 @@ class CardHeader {
|
|
|
8313
8331
|
}
|
|
8314
8332
|
render() {
|
|
8315
8333
|
const mode = getIonMode$1(this);
|
|
8316
|
-
return (hAsync(Host, { key: '
|
|
8334
|
+
return (hAsync(Host, { key: '64246b81931203a64d553c788cd736f41e23f37b', class: createColorClasses$1(this.color, {
|
|
8317
8335
|
'card-header-translucent': this.translucent,
|
|
8318
8336
|
'ion-inherit-color': true,
|
|
8319
8337
|
[mode]: true,
|
|
8320
|
-
}) }, hAsync("slot", { key: '
|
|
8338
|
+
}) }, hAsync("slot", { key: 'af2da2dfe266889afeb57fac25c6a730558dbba4' })));
|
|
8321
8339
|
}
|
|
8322
8340
|
static get style() { return {
|
|
8323
8341
|
ios: IonCardHeaderIosStyle0,
|
|
@@ -8352,10 +8370,10 @@ class CardSubtitle {
|
|
|
8352
8370
|
}
|
|
8353
8371
|
render() {
|
|
8354
8372
|
const mode = getIonMode$1(this);
|
|
8355
|
-
return (hAsync(Host, { key: '
|
|
8373
|
+
return (hAsync(Host, { key: '84d820a19d9074f9c8bc61ccba1ca40062a60b73', role: "heading", "aria-level": "3", class: createColorClasses$1(this.color, {
|
|
8356
8374
|
'ion-inherit-color': true,
|
|
8357
8375
|
[mode]: true,
|
|
8358
|
-
}) }, hAsync("slot", { key: '
|
|
8376
|
+
}) }, hAsync("slot", { key: 'e4d07d395a1f4469a90847636083101b32b776a1' })));
|
|
8359
8377
|
}
|
|
8360
8378
|
static get style() { return {
|
|
8361
8379
|
ios: IonCardSubtitleIosStyle0,
|
|
@@ -8389,10 +8407,10 @@ class CardTitle {
|
|
|
8389
8407
|
}
|
|
8390
8408
|
render() {
|
|
8391
8409
|
const mode = getIonMode$1(this);
|
|
8392
|
-
return (hAsync(Host, { key: '
|
|
8410
|
+
return (hAsync(Host, { key: 'fca001a86396e83718d5211cd71912fdf40dea2f', role: "heading", "aria-level": "2", class: createColorClasses$1(this.color, {
|
|
8393
8411
|
'ion-inherit-color': true,
|
|
8394
8412
|
[mode]: true,
|
|
8395
|
-
}) }, hAsync("slot", { key: '
|
|
8413
|
+
}) }, hAsync("slot", { key: '2ba416aed488b2ff462fa75fb3b70373a6dd7da6' })));
|
|
8396
8414
|
}
|
|
8397
8415
|
static get style() { return {
|
|
8398
8416
|
ios: IonCardTitleIosStyle0,
|
|
@@ -8477,7 +8495,8 @@ class Checkbox {
|
|
|
8477
8495
|
componentWillLoad() {
|
|
8478
8496
|
this.inheritedAttributes = Object.assign({}, inheritAriaAttributes(this.el));
|
|
8479
8497
|
}
|
|
8480
|
-
|
|
8498
|
+
/** @internal */
|
|
8499
|
+
async setFocus() {
|
|
8481
8500
|
if (this.focusEl) {
|
|
8482
8501
|
this.focusEl.focus();
|
|
8483
8502
|
}
|
|
@@ -8487,7 +8506,7 @@ class Checkbox {
|
|
|
8487
8506
|
const mode = getIonMode$1(this);
|
|
8488
8507
|
const path = getSVGPath(mode, indeterminate);
|
|
8489
8508
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
8490
|
-
return (hAsync(Host, { key: '
|
|
8509
|
+
return (hAsync(Host, { key: '6dc787e1100521d08c4900104e1a3e2f594e919f', "aria-checked": indeterminate ? 'mixed' : `${checked}`, class: createColorClasses$1(color, {
|
|
8491
8510
|
[mode]: true,
|
|
8492
8511
|
'in-item': hostContext('ion-item', el),
|
|
8493
8512
|
'checkbox-checked': checked,
|
|
@@ -8497,10 +8516,10 @@ class Checkbox {
|
|
|
8497
8516
|
[`checkbox-justify-${justify}`]: justify !== undefined,
|
|
8498
8517
|
[`checkbox-alignment-${alignment}`]: alignment !== undefined,
|
|
8499
8518
|
[`checkbox-label-placement-${labelPlacement}`]: true,
|
|
8500
|
-
}), onClick: this.onClick }, hAsync("label", { key: '
|
|
8519
|
+
}), onClick: this.onClick }, hAsync("label", { key: '68222fb736a5ec3f2e488649b0e2ce0417dcb224', class: "checkbox-wrapper" }, hAsync("input", Object.assign({ key: 'f12962d7e9b19c744cfdbdeccc67ae7f5d080281', type: "checkbox", checked: checked ? true : undefined, disabled: disabled, id: inputId, onChange: this.toggleChecked, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, inheritedAttributes)), hAsync("div", { key: 'c72df2699414b1e5a41a1bc267bc634f0c93dcff', class: {
|
|
8501
8520
|
'label-text-wrapper': true,
|
|
8502
8521
|
'label-text-wrapper-hidden': el.textContent === '',
|
|
8503
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
8522
|
+
}, part: "label" }, hAsync("slot", { key: 'a2a80285178a7e0e3b536fc9ca26b8b444aa4307' })), hAsync("div", { key: 'c2b05e0d1fe8df5dcd72858220b5ff51ecaee4cc', class: "native-wrapper" }, hAsync("svg", { key: 'ee24913fded72258ebd9713654a6dba92a18fcf7', class: "checkbox-icon", viewBox: "0 0 24 24", part: "container" }, path)))));
|
|
8504
8523
|
}
|
|
8505
8524
|
getSVGPath(mode, indeterminate) {
|
|
8506
8525
|
let path = indeterminate ? (hAsync("path", { d: "M6 12L18 12", part: "mark" })) : (hAsync("path", { d: "M5.9,12.5l3.8,3.8l8.8-8.8", part: "mark" }));
|
|
@@ -8526,7 +8545,8 @@ class Checkbox {
|
|
|
8526
8545
|
"value": [8],
|
|
8527
8546
|
"labelPlacement": [1, "label-placement"],
|
|
8528
8547
|
"justify": [1],
|
|
8529
|
-
"alignment": [1]
|
|
8548
|
+
"alignment": [1],
|
|
8549
|
+
"setFocus": [64]
|
|
8530
8550
|
},
|
|
8531
8551
|
"$listeners$": undefined,
|
|
8532
8552
|
"$lazyBundleId$": "-",
|
|
@@ -8553,12 +8573,12 @@ class Chip {
|
|
|
8553
8573
|
}
|
|
8554
8574
|
render() {
|
|
8555
8575
|
const mode = getIonMode$1(this);
|
|
8556
|
-
return (hAsync(Host, { key: '
|
|
8576
|
+
return (hAsync(Host, { key: 'fa2e9a4837ef87a17ef10f388e8caa7f604d9145', "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
|
|
8557
8577
|
[mode]: true,
|
|
8558
8578
|
'chip-outline': this.outline,
|
|
8559
8579
|
'chip-disabled': this.disabled,
|
|
8560
8580
|
'ion-activatable': true,
|
|
8561
|
-
}) }, hAsync("slot", { key: '
|
|
8581
|
+
}) }, hAsync("slot", { key: '3793fbd9d915cef7241fb101e2bc64c08b9ba482' }), mode === 'md' && hAsync("ion-ripple-effect", { key: 'd3b95b53918611dec095a50f2aaaab65617947a4' })));
|
|
8562
8582
|
}
|
|
8563
8583
|
static get style() { return {
|
|
8564
8584
|
ios: IonChipIosStyle0,
|
|
@@ -8709,9 +8729,9 @@ class Col {
|
|
|
8709
8729
|
render() {
|
|
8710
8730
|
const isRTL = document.dir === 'rtl';
|
|
8711
8731
|
const mode = getIonMode$1(this);
|
|
8712
|
-
return (hAsync(Host, { key: '
|
|
8732
|
+
return (hAsync(Host, { key: '32ed75d81dd09d9bc8999f6d42e5b3cb99c84d91', class: {
|
|
8713
8733
|
[mode]: true,
|
|
8714
|
-
}, style: Object.assign(Object.assign(Object.assign(Object.assign({}, this.calculateOffset(isRTL)), this.calculatePull(isRTL)), this.calculatePush(isRTL)), this.calculateSize()) }, hAsync("slot", { key: '
|
|
8734
|
+
}, style: Object.assign(Object.assign(Object.assign(Object.assign({}, this.calculateOffset(isRTL)), this.calculatePull(isRTL)), this.calculatePush(isRTL)), this.calculateSize()) }, hAsync("slot", { key: '38f8d0440c20cc6d1b1d6a654d07f16de61d8134' })));
|
|
8715
8735
|
}
|
|
8716
8736
|
static get style() { return IonColStyle0; }
|
|
8717
8737
|
static get cmpMeta() { return {
|
|
@@ -9085,7 +9105,7 @@ class Content {
|
|
|
9085
9105
|
const forceOverscroll = this.shouldForceOverscroll();
|
|
9086
9106
|
const transitionShadow = mode === 'ios';
|
|
9087
9107
|
this.resize();
|
|
9088
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
9108
|
+
return (hAsync(Host, Object.assign({ key: 'f2a24aa66dbf5c76f9d4b06f708eb73cadc239df', role: isMainContent ? 'main' : undefined, class: createColorClasses$1(this.color, {
|
|
9089
9109
|
[mode]: true,
|
|
9090
9110
|
'content-sizing': hostContext('ion-popover', this.el),
|
|
9091
9111
|
overscroll: forceOverscroll,
|
|
@@ -9093,12 +9113,12 @@ class Content {
|
|
|
9093
9113
|
}), style: {
|
|
9094
9114
|
'--offset-top': `${this.cTop}px`,
|
|
9095
9115
|
'--offset-bottom': `${this.cBottom}px`,
|
|
9096
|
-
} }, inheritedAttributes), hAsync("div", { key: '
|
|
9116
|
+
} }, inheritedAttributes), hAsync("div", { key: '6480ca7648b278abb36477b3838bccbcd4995e2a', ref: (el) => (this.backgroundContentEl = el), id: "background-content", part: "background" }), fixedSlotPlacement === 'before' ? hAsync("slot", { name: "fixed" }) : null, hAsync("div", { key: '29a23b663f5f0215bb000820c01e1814c0d55985', class: {
|
|
9097
9117
|
'inner-scroll': true,
|
|
9098
9118
|
'scroll-x': scrollX,
|
|
9099
9119
|
'scroll-y': scrollY,
|
|
9100
9120
|
overscroll: (scrollX || scrollY) && forceOverscroll,
|
|
9101
|
-
}, ref: (scrollEl) => (this.scrollEl = scrollEl), onScroll: this.scrollEvents ? (ev) => this.onScroll(ev) : undefined, part: "scroll" }, hAsync("slot", { key: '
|
|
9121
|
+
}, ref: (scrollEl) => (this.scrollEl = scrollEl), onScroll: this.scrollEvents ? (ev) => this.onScroll(ev) : undefined, part: "scroll" }, hAsync("slot", { key: '0fe1bd05609a4b88ae2ce9addf5d5dc5dc1806f0' })), transitionShadow ? (hAsync("div", { class: "transition-effect" }, hAsync("div", { class: "transition-cover" }), hAsync("div", { class: "transition-shadow" }))) : null, fixedSlotPlacement === 'after' ? hAsync("slot", { name: "fixed" }) : null));
|
|
9102
9122
|
}
|
|
9103
9123
|
get el() { return getElement(this); }
|
|
9104
9124
|
static get style() { return IonContentStyle0; }
|
|
@@ -12619,7 +12639,7 @@ class Datetime {
|
|
|
12619
12639
|
const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
|
|
12620
12640
|
const hasWheelVariant = hasDatePresentation && preferWheel;
|
|
12621
12641
|
renderHiddenInput(true, el, name, formatValue(value), disabled);
|
|
12622
|
-
return (hAsync(Host, { key: '
|
|
12642
|
+
return (hAsync(Host, { key: '7afbb1a7e6c78389b4588999779e5c90e010e85d', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, createColorClasses$1(color, {
|
|
12623
12643
|
[mode]: true,
|
|
12624
12644
|
['datetime-readonly']: readonly,
|
|
12625
12645
|
['datetime-disabled']: disabled,
|
|
@@ -12629,7 +12649,7 @@ class Datetime {
|
|
|
12629
12649
|
[`datetime-size-${size}`]: true,
|
|
12630
12650
|
[`datetime-prefer-wheel`]: hasWheelVariant,
|
|
12631
12651
|
[`datetime-grid`]: isGridStyle,
|
|
12632
|
-
})) }, hAsync("div", { key: '
|
|
12652
|
+
})) }, hAsync("div", { key: '297c458d4d17154cb297e2ef5926505bcb2d1fce', class: "intersection-tracker", ref: (el) => (this.intersectionTrackerRef = el) }), this.renderDatetime(mode)));
|
|
12633
12653
|
}
|
|
12634
12654
|
get el() { return getElement(this); }
|
|
12635
12655
|
static get watchers() { return {
|
|
@@ -13037,11 +13057,11 @@ class DatetimeButton {
|
|
|
13037
13057
|
render() {
|
|
13038
13058
|
const { color, dateText, timeText, selectedButton, datetimeActive, disabled } = this;
|
|
13039
13059
|
const mode = getIonMode$1(this);
|
|
13040
|
-
return (hAsync(Host, { key: '
|
|
13060
|
+
return (hAsync(Host, { key: '26e606af6f067a5774db37ed41387ffebb941777', class: createColorClasses$1(color, {
|
|
13041
13061
|
[mode]: true,
|
|
13042
13062
|
[`${selectedButton}-active`]: datetimeActive,
|
|
13043
13063
|
['datetime-button-disabled']: disabled,
|
|
13044
|
-
}) }, dateText && (hAsync("button", { key: '
|
|
13064
|
+
}) }, dateText && (hAsync("button", { key: '6b7aa66a15b4a6d89d411e40586de28a2ac9f343', class: "ion-activatable", id: "date-button", "aria-expanded": datetimeActive ? 'true' : 'false', onClick: this.handleDateClick, disabled: disabled, part: "native", ref: (el) => (this.dateTargetEl = el) }, hAsync("slot", { key: 'd42f34fd167be34386319e7ea788c2ab03c90b87', name: "date-target" }, dateText), mode === 'md' && hAsync("ion-ripple-effect", { key: '47dd34f3c2799064cac7a5fe25440ecc043950f0' }))), timeText && (hAsync("button", { key: 'd77424a20fae320654774c7bfc8a8e2369d3afe3', class: "ion-activatable", id: "time-button", "aria-expanded": datetimeActive ? 'true' : 'false', onClick: this.handleTimeClick, disabled: disabled, part: "native", ref: (el) => (this.timeTargetEl = el) }, hAsync("slot", { key: 'ac088a78141bb53f2efd48dd7745f8954c92378b', name: "time-target" }, timeText), mode === 'md' && hAsync("ion-ripple-effect", { key: 'b3a58ddfd28b9396e2518ffd62a045ec13d8b9d0' })))));
|
|
13045
13065
|
}
|
|
13046
13066
|
get el() { return getElement(this); }
|
|
13047
13067
|
static get style() { return {
|
|
@@ -13115,12 +13135,12 @@ class Fab {
|
|
|
13115
13135
|
render() {
|
|
13116
13136
|
const { horizontal, vertical, edge } = this;
|
|
13117
13137
|
const mode = getIonMode$1(this);
|
|
13118
|
-
return (hAsync(Host, { key: '
|
|
13138
|
+
return (hAsync(Host, { key: '8a310806d0e748d7ebb0ed3d9a2652038e0f2960', class: {
|
|
13119
13139
|
[mode]: true,
|
|
13120
13140
|
[`fab-horizontal-${horizontal}`]: horizontal !== undefined,
|
|
13121
13141
|
[`fab-vertical-${vertical}`]: vertical !== undefined,
|
|
13122
13142
|
'fab-edge': edge,
|
|
13123
|
-
} }, hAsync("slot", { key: '
|
|
13143
|
+
} }, hAsync("slot", { key: '9394ef6d6e5b0410fa6ba212171f687fb178ce2d' })));
|
|
13124
13144
|
}
|
|
13125
13145
|
get el() { return getElement(this); }
|
|
13126
13146
|
static get watchers() { return {
|
|
@@ -13210,7 +13230,7 @@ class FabButton {
|
|
|
13210
13230
|
rel: this.rel,
|
|
13211
13231
|
target: this.target,
|
|
13212
13232
|
};
|
|
13213
|
-
return (hAsync(Host, { key: '
|
|
13233
|
+
return (hAsync(Host, { key: '4eee204d20b0e2ffed49a88f6cb3e04b6697965c', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses$1(color, {
|
|
13214
13234
|
[mode]: true,
|
|
13215
13235
|
'fab-button-in-list': inList,
|
|
13216
13236
|
'fab-button-translucent-in-list': inList && translucent,
|
|
@@ -13221,7 +13241,7 @@ class FabButton {
|
|
|
13221
13241
|
'ion-activatable': true,
|
|
13222
13242
|
'ion-focusable': true,
|
|
13223
13243
|
[`fab-button-${size}`]: size !== undefined,
|
|
13224
|
-
}) }, hAsync(TagType, Object.assign({ key: '
|
|
13244
|
+
}) }, hAsync(TagType, Object.assign({ key: '914561622c0c6bd41453e828a7d8a39f924875ac' }, attrs, { class: "button-native", part: "native", disabled: disabled, onFocus: this.onFocus, onBlur: this.onBlur, onClick: (ev) => openURL(href, ev, this.routerDirection, this.routerAnimation) }, inheritedAttributes), hAsync("ion-icon", { key: '2c8090742a64c62a79243667027a195cca9d5912', "aria-hidden": "true", icon: this.closeIcon, part: "close-icon", class: "close-icon", lazy: false }), hAsync("span", { key: 'c3e55291e4c4d306d34a4b95dd2e727e87bdf39c', class: "button-inner" }, hAsync("slot", { key: 'f8e57f71d8f8878d9746cfece82f57f19ef9e988' })), mode === 'md' && hAsync("ion-ripple-effect", { key: 'a5e94fa0bb9836072300617245ed0c1b4887bac6' }))));
|
|
13225
13245
|
}
|
|
13226
13246
|
get el() { return getElement(this); }
|
|
13227
13247
|
static get style() { return {
|
|
@@ -13272,11 +13292,11 @@ class FabList {
|
|
|
13272
13292
|
}
|
|
13273
13293
|
render() {
|
|
13274
13294
|
const mode = getIonMode$1(this);
|
|
13275
|
-
return (hAsync(Host, { key: '
|
|
13295
|
+
return (hAsync(Host, { key: '64b33366447f66c7f979cfac56307fbb1a6fac1c', class: {
|
|
13276
13296
|
[mode]: true,
|
|
13277
13297
|
'fab-list-active': this.activated,
|
|
13278
13298
|
[`fab-list-side-${this.side}`]: true,
|
|
13279
|
-
} }, hAsync("slot", { key: '
|
|
13299
|
+
} }, hAsync("slot", { key: 'd9f474f7f20fd7e813db358fddc720534ca05bb6' })));
|
|
13280
13300
|
}
|
|
13281
13301
|
get el() { return getElement(this); }
|
|
13282
13302
|
static get watchers() { return {
|
|
@@ -13728,7 +13748,7 @@ class Footer {
|
|
|
13728
13748
|
const mode = getIonMode$1(this);
|
|
13729
13749
|
const tabs = this.el.closest('ion-tabs');
|
|
13730
13750
|
const tabBar = tabs === null || tabs === void 0 ? void 0 : tabs.querySelector(':scope > ion-tab-bar');
|
|
13731
|
-
return (hAsync(Host, { key: '
|
|
13751
|
+
return (hAsync(Host, { key: 'ddc228f1a1e7fa4f707dccf74db2490ca3241137', role: "contentinfo", class: {
|
|
13732
13752
|
[mode]: true,
|
|
13733
13753
|
// Used internally for styling
|
|
13734
13754
|
[`footer-${mode}`]: true,
|
|
@@ -13736,7 +13756,7 @@ class Footer {
|
|
|
13736
13756
|
[`footer-translucent-${mode}`]: translucent,
|
|
13737
13757
|
['footer-toolbar-padding']: !this.keyboardVisible && (!tabBar || tabBar.slot !== 'bottom'),
|
|
13738
13758
|
[`footer-collapse-${collapse}`]: collapse !== undefined,
|
|
13739
|
-
} }, mode === 'ios' && translucent && hAsync("div", { key: '
|
|
13759
|
+
} }, mode === 'ios' && translucent && hAsync("div", { key: 'e16ed4963ff94e06de77eb8038201820af73937c', class: "footer-background" }), hAsync("slot", { key: 'f186934febf85d37133d9351a96c1a64b0a4b203' })));
|
|
13740
13760
|
}
|
|
13741
13761
|
get el() { return getElement(this); }
|
|
13742
13762
|
static get style() { return {
|
|
@@ -13767,10 +13787,10 @@ class Grid {
|
|
|
13767
13787
|
}
|
|
13768
13788
|
render() {
|
|
13769
13789
|
const mode = getIonMode$1(this);
|
|
13770
|
-
return (hAsync(Host, { key: '
|
|
13790
|
+
return (hAsync(Host, { key: '617127ecfabf9bf615bef1dda1be3fed5a065949', class: {
|
|
13771
13791
|
[mode]: true,
|
|
13772
13792
|
'grid-fixed': this.fixed,
|
|
13773
|
-
} }, hAsync("slot", { key: '
|
|
13793
|
+
} }, hAsync("slot", { key: 'c781fff853b093d8f44bdb7943bbc4f17c903803' })));
|
|
13774
13794
|
}
|
|
13775
13795
|
static get style() { return IonGridStyle0; }
|
|
13776
13796
|
static get cmpMeta() { return {
|
|
@@ -13909,13 +13929,32 @@ mainHeaderIndex, scrollHeaderIndex, scrollEl) => {
|
|
|
13909
13929
|
};
|
|
13910
13930
|
const setHeaderActive = (headerIndex, active = true) => {
|
|
13911
13931
|
const headerEl = headerIndex.el;
|
|
13932
|
+
const toolbars = headerIndex.toolbars;
|
|
13933
|
+
const ionTitles = toolbars.map((toolbar) => toolbar.ionTitleEl);
|
|
13912
13934
|
if (active) {
|
|
13913
13935
|
headerEl.classList.remove('header-collapse-condense-inactive');
|
|
13914
|
-
|
|
13936
|
+
ionTitles.forEach((ionTitle) => {
|
|
13937
|
+
if (ionTitle) {
|
|
13938
|
+
ionTitle.removeAttribute('aria-hidden');
|
|
13939
|
+
}
|
|
13940
|
+
});
|
|
13915
13941
|
}
|
|
13916
13942
|
else {
|
|
13917
13943
|
headerEl.classList.add('header-collapse-condense-inactive');
|
|
13918
|
-
|
|
13944
|
+
/**
|
|
13945
|
+
* The small title should only be accessed by screen readers
|
|
13946
|
+
* when the large title collapses into the small title due
|
|
13947
|
+
* to scrolling.
|
|
13948
|
+
*
|
|
13949
|
+
* Originally, the header was given `aria-hidden="true"`
|
|
13950
|
+
* but this caused issues with screen readers not being
|
|
13951
|
+
* able to access any focusable elements within the header.
|
|
13952
|
+
*/
|
|
13953
|
+
ionTitles.forEach((ionTitle) => {
|
|
13954
|
+
if (ionTitle) {
|
|
13955
|
+
ionTitle.setAttribute('aria-hidden', 'true');
|
|
13956
|
+
}
|
|
13957
|
+
});
|
|
13919
13958
|
}
|
|
13920
13959
|
};
|
|
13921
13960
|
const scaleLargeTitles = (toolbars = [], scale = 1, transition = false) => {
|
|
@@ -14101,14 +14140,14 @@ class Header {
|
|
|
14101
14140
|
const collapse = this.collapse || 'none';
|
|
14102
14141
|
// banner role must be at top level, so remove role if inside a menu
|
|
14103
14142
|
const roleType = hostContext('ion-menu', this.el) ? 'none' : 'banner';
|
|
14104
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
14143
|
+
return (hAsync(Host, Object.assign({ key: 'b6cc27f0b08afc9fcc889683525da765d80ba672', role: roleType, class: {
|
|
14105
14144
|
[mode]: true,
|
|
14106
14145
|
// Used internally for styling
|
|
14107
14146
|
[`header-${mode}`]: true,
|
|
14108
14147
|
[`header-translucent`]: this.translucent,
|
|
14109
14148
|
[`header-collapse-${collapse}`]: true,
|
|
14110
14149
|
[`header-translucent-${mode}`]: this.translucent,
|
|
14111
|
-
} }, inheritedAttributes), mode === 'ios' && translucent && hAsync("div", { key: '
|
|
14150
|
+
} }, inheritedAttributes), mode === 'ios' && translucent && hAsync("div", { key: '395766d4dcee3398bc91960db21f922095292f14', class: "header-background" }), hAsync("slot", { key: '09a67ece27b258ff1248805d43d92a49b2c6859a' })));
|
|
14112
14151
|
}
|
|
14113
14152
|
get el() { return getElement(this); }
|
|
14114
14153
|
static get style() { return {
|
|
@@ -14387,7 +14426,7 @@ class Img {
|
|
|
14387
14426
|
render() {
|
|
14388
14427
|
const { loadSrc, alt, onLoad, loadError, inheritedAttributes } = this;
|
|
14389
14428
|
const { draggable } = inheritedAttributes;
|
|
14390
|
-
return (hAsync(Host, { key: '
|
|
14429
|
+
return (hAsync(Host, { key: 'da600442894427dee1974a28e545613afac69fca', class: getIonMode$1(this) }, hAsync("img", { key: '16df0c7069af86c0fa7ce5af598bc0f63b4eb71a', decoding: "async", src: loadSrc, alt: alt, onLoad: onLoad, onError: loadError, part: "image", draggable: isDraggable(draggable) })));
|
|
14391
14430
|
}
|
|
14392
14431
|
get el() { return getElement(this); }
|
|
14393
14432
|
static get watchers() { return {
|
|
@@ -14594,7 +14633,7 @@ class InfiniteScroll {
|
|
|
14594
14633
|
render() {
|
|
14595
14634
|
const mode = getIonMode$1(this);
|
|
14596
14635
|
const disabled = this.disabled;
|
|
14597
|
-
return (hAsync(Host, { key: '
|
|
14636
|
+
return (hAsync(Host, { key: 'e844956795f69be33396ce4480aa7a54ad01b28c', class: {
|
|
14598
14637
|
[mode]: true,
|
|
14599
14638
|
'infinite-scroll-loading': this.isLoading,
|
|
14600
14639
|
'infinite-scroll-enabled': !disabled,
|
|
@@ -14650,11 +14689,11 @@ class InfiniteScrollContent {
|
|
|
14650
14689
|
}
|
|
14651
14690
|
render() {
|
|
14652
14691
|
const mode = getIonMode$1(this);
|
|
14653
|
-
return (hAsync(Host, { key: '
|
|
14692
|
+
return (hAsync(Host, { key: '7c16060dcfe2a0b0fb3e2f8f4c449589a76f1baa', class: {
|
|
14654
14693
|
[mode]: true,
|
|
14655
14694
|
// Used internally for styling
|
|
14656
14695
|
[`infinite-scroll-content-${mode}`]: true,
|
|
14657
|
-
} }, hAsync("div", { key: '
|
|
14696
|
+
} }, hAsync("div", { key: 'a94f4d8746e053dc718f97520bd7e48cb316443a', class: "infinite-loading" }, this.loadingSpinner && (hAsync("div", { key: '10143d5d2a50a2a2bc5de1cee8e7ab51263bcf23', class: "infinite-loading-spinner" }, hAsync("ion-spinner", { key: '8846e88191690d9c61a0b462889ed56fbfed8b0d', name: this.loadingSpinner }))), this.loadingText !== undefined && this.renderLoadingText())));
|
|
14658
14697
|
}
|
|
14659
14698
|
static get style() { return {
|
|
14660
14699
|
ios: IonInfiniteScrollContentIosStyle0,
|
|
@@ -15401,7 +15440,7 @@ class Input {
|
|
|
15401
15440
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
15402
15441
|
*/
|
|
15403
15442
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
|
|
15404
|
-
return (hAsync(Host, { key: '
|
|
15443
|
+
return (hAsync(Host, { key: '54b5662d9a7f011a85e4119650c92b9af275bf96', class: createColorClasses$1(this.color, {
|
|
15405
15444
|
[mode]: true,
|
|
15406
15445
|
'has-value': hasValue,
|
|
15407
15446
|
'has-focus': hasFocus,
|
|
@@ -15412,7 +15451,7 @@ class Input {
|
|
|
15412
15451
|
'in-item': inItem,
|
|
15413
15452
|
'in-item-color': hostContext('ion-item.ion-color', this.el),
|
|
15414
15453
|
'input-disabled': disabled,
|
|
15415
|
-
}) }, hAsync("label", { key: '
|
|
15454
|
+
}) }, hAsync("label", { key: '551cf8a932af3275689ecf32988b84355404e8f1', class: "input-wrapper", htmlFor: inputId }, this.renderLabelContainer(), hAsync("div", { key: 'b3601dca7e0f23517748f6e7feb899c953355bc4', class: "native-wrapper" }, hAsync("slot", { key: 'd687a9bb4c5778cfee35ce1b8d6d16ddc8eca768', name: "start" }), hAsync("input", Object.assign({ key: 'ab927e84e43bedf8b7827bb743888a1778292deb', 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, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId }, this.inheritedAttributes)), this.clearInput && !readonly && !disabled && (hAsync("button", { key: '0d2ee3f7e69cee75f071f37b2e9bc174572c5a01', "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: (ev) => {
|
|
15416
15455
|
/**
|
|
15417
15456
|
* This prevents mobile browsers from
|
|
15418
15457
|
* blurring the input when the clear
|
|
@@ -15427,7 +15466,7 @@ class Input {
|
|
|
15427
15466
|
* for screen readers as it means users would be unable to swipe past the clear button.
|
|
15428
15467
|
*/
|
|
15429
15468
|
ev.stopPropagation();
|
|
15430
|
-
}, onClick: this.clearTextInput }, hAsync("ion-icon", { key: '
|
|
15469
|
+
}, onClick: this.clearTextInput }, hAsync("ion-icon", { key: 'c7715111897f43839c10d38662616edb662cd49b', "aria-hidden": "true", icon: clearIconData }))), hAsync("slot", { key: 'afc44cbe1ad50f17942d5297a12509abecbd6ecd', name: "end" })), shouldRenderHighlight && hAsync("div", { key: 'ee3af32cd9003d497f33e352e56313d43295f3a9', class: "input-highlight" })), this.renderBottomContent()));
|
|
15431
15470
|
}
|
|
15432
15471
|
get el() { return getElement(this); }
|
|
15433
15472
|
static get watchers() { return {
|
|
@@ -15549,16 +15588,16 @@ class InputPasswordToggle {
|
|
|
15549
15588
|
const showPasswordIcon = (_a = this.showIcon) !== null && _a !== void 0 ? _a : eye;
|
|
15550
15589
|
const hidePasswordIcon = (_b = this.hideIcon) !== null && _b !== void 0 ? _b : eyeOff;
|
|
15551
15590
|
const isPasswordVisible = type === 'text';
|
|
15552
|
-
return (hAsync(Host, { key: '
|
|
15591
|
+
return (hAsync(Host, { key: 'd9811e25bfeb2aa197352bb9be852e9e420739d5', class: createColorClasses$1(color, {
|
|
15553
15592
|
[mode]: true,
|
|
15554
|
-
}) }, hAsync("ion-button", { key: '
|
|
15593
|
+
}) }, hAsync("ion-button", { key: '1eaea1442b248fb2b8d61538b27274e647a07804', mode: mode, color: color, fill: "clear", shape: "round", "aria-checked": isPasswordVisible ? 'true' : 'false', "aria-label": "show password", role: "switch", type: "button", onPointerDown: (ev) => {
|
|
15555
15594
|
/**
|
|
15556
15595
|
* This prevents mobile browsers from
|
|
15557
15596
|
* blurring the input when the password toggle
|
|
15558
15597
|
* button is activated.
|
|
15559
15598
|
*/
|
|
15560
15599
|
ev.preventDefault();
|
|
15561
|
-
}, onClick: this.togglePasswordVisibility }, hAsync("ion-icon", { key: '
|
|
15600
|
+
}, onClick: this.togglePasswordVisibility }, hAsync("ion-icon", { key: '9c88de8f4631d9bde222ce2edf6950d639e04773', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
|
|
15562
15601
|
}
|
|
15563
15602
|
get el() { return getElement(this); }
|
|
15564
15603
|
static get watchers() { return {
|
|
@@ -15854,11 +15893,11 @@ class ItemDivider {
|
|
|
15854
15893
|
}
|
|
15855
15894
|
render() {
|
|
15856
15895
|
const mode = getIonMode$1(this);
|
|
15857
|
-
return (hAsync(Host, { key: '
|
|
15896
|
+
return (hAsync(Host, { key: '6cff318230a9b2a9db529df154285d3dd9822efe', class: createColorClasses$1(this.color, {
|
|
15858
15897
|
[mode]: true,
|
|
15859
15898
|
'item-divider-sticky': this.sticky,
|
|
15860
15899
|
item: true,
|
|
15861
|
-
}) }, hAsync("slot", { key: '
|
|
15900
|
+
}) }, hAsync("slot", { key: 'eb50dfab74ab0fd13697db17ecd60e8fa0bf1750', name: "start" }), hAsync("div", { key: '2806efd89d086f4fb844a479d9c095e1e0775713', class: "item-divider-inner" }, hAsync("div", { key: '77b7d5fa987e5f1c26d8023cd1f974a8a263a3de', class: "item-divider-wrapper" }, hAsync("slot", { key: 'dbafb0deb140a19a2a9748fd5b48760c39c6fd2e' })), hAsync("slot", { key: 'ef9a848fe21e84ef21cd273b8a4d9f95f558175b', name: "end" }))));
|
|
15862
15901
|
}
|
|
15863
15902
|
get el() { return getElement(this); }
|
|
15864
15903
|
static get style() { return {
|
|
@@ -15890,7 +15929,7 @@ class ItemGroup {
|
|
|
15890
15929
|
}
|
|
15891
15930
|
render() {
|
|
15892
15931
|
const mode = getIonMode$1(this);
|
|
15893
|
-
return (hAsync(Host, { key: '
|
|
15932
|
+
return (hAsync(Host, { key: 'f9ffe0290d3fa546494fe55f952d8554f2a8abf8', role: "group", class: {
|
|
15894
15933
|
[mode]: true,
|
|
15895
15934
|
// Used internally for styling
|
|
15896
15935
|
[`item-group-${mode}`]: true,
|
|
@@ -15958,12 +15997,12 @@ class ItemOption {
|
|
|
15958
15997
|
href: this.href,
|
|
15959
15998
|
target: this.target,
|
|
15960
15999
|
};
|
|
15961
|
-
return (hAsync(Host, { key: '
|
|
16000
|
+
return (hAsync(Host, { key: '89310624997821858c1abde60c0ffb142ca466e0', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
15962
16001
|
[mode]: true,
|
|
15963
16002
|
'item-option-disabled': disabled,
|
|
15964
16003
|
'item-option-expandable': expandable,
|
|
15965
16004
|
'ion-activatable': true,
|
|
15966
|
-
}) }, hAsync(TagType, Object.assign({ key: '
|
|
16005
|
+
}) }, hAsync(TagType, Object.assign({ key: 'e4dfbb3048eed03a7f7e84c6f75545e0ca9b45fb' }, attrs, { class: "button-native", part: "native", disabled: disabled }), hAsync("span", { key: 'dffcf437fbdc15f2e7a19e60a015e90c73c8377d', class: "button-inner" }, hAsync("slot", { key: '48a23512e0601e062118d8b2c46c8bb96f25509f', name: "top" }), hAsync("div", { key: '952a9a9aa3a476aa1f4408d7e208bf9e916b8c30', class: "horizontal-wrapper" }, hAsync("slot", { key: 'f8d18a61c1ecec4a22a55443cf72bbc51383b64f', name: "start" }), hAsync("slot", { key: '1f9f219e6f879d2e0bf6d80cf0d3f518eb14ce0e', name: "icon-only" }), hAsync("slot", { key: 'a55adcdbe68131e5b1855c2dd45dd9454ab544fb' }), hAsync("slot", { key: '3c4c85a4fbb7efc797d8bc5adf6d238da022ff9f', name: "end" })), hAsync("slot", { key: '503c7e4b306745c523f57f24399ea06ba9b1e21d', name: "bottom" })), mode === 'md' && hAsync("ion-ripple-effect", { key: 'b0e270b0c4f3ff9f9b6d74bad12a9278d7633226' }))));
|
|
15967
16006
|
}
|
|
15968
16007
|
get el() { return getElement(this); }
|
|
15969
16008
|
static get style() { return {
|
|
@@ -16010,7 +16049,7 @@ class ItemOptions {
|
|
|
16010
16049
|
render() {
|
|
16011
16050
|
const mode = getIonMode$1(this);
|
|
16012
16051
|
const isEnd = isEndSide(this.side);
|
|
16013
|
-
return (hAsync(Host, { key: '
|
|
16052
|
+
return (hAsync(Host, { key: '6d91399d2aaaa81d514d0bbc8dffe53eeec25d36', class: {
|
|
16014
16053
|
[mode]: true,
|
|
16015
16054
|
// Used internally for styling
|
|
16016
16055
|
[`item-options-${mode}`]: true,
|
|
@@ -16358,6 +16397,8 @@ class ItemSliding {
|
|
|
16358
16397
|
optsWidth = -this.optsWidthLeftSide;
|
|
16359
16398
|
openAmount = optsWidth + (openAmount - optsWidth) * ELASTIC_FACTOR;
|
|
16360
16399
|
}
|
|
16400
|
+
if (openAmount === 0)
|
|
16401
|
+
return;
|
|
16361
16402
|
this.setOpenAmount(openAmount, false);
|
|
16362
16403
|
}
|
|
16363
16404
|
onEnd(gesture) {
|
|
@@ -16472,7 +16513,7 @@ class ItemSliding {
|
|
|
16472
16513
|
}
|
|
16473
16514
|
render() {
|
|
16474
16515
|
const mode = getIonMode$1(this);
|
|
16475
|
-
return (hAsync(Host, { key: '
|
|
16516
|
+
return (hAsync(Host, { key: 'a5216b11d92a1e1afed09d139212e0df81fdab79', class: {
|
|
16476
16517
|
[mode]: true,
|
|
16477
16518
|
'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
|
|
16478
16519
|
'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
|
|
@@ -16581,13 +16622,13 @@ class Label {
|
|
|
16581
16622
|
render() {
|
|
16582
16623
|
const position = this.position;
|
|
16583
16624
|
const mode = getIonMode$1(this);
|
|
16584
|
-
return (hAsync(Host, { key: '
|
|
16625
|
+
return (hAsync(Host, { key: '6353a70565ef6fbbbf4042b000e536c61bcf99a9', class: createColorClasses$1(this.color, {
|
|
16585
16626
|
[mode]: true,
|
|
16586
16627
|
'in-item-color': hostContext('ion-item.ion-color', this.el),
|
|
16587
16628
|
[`label-${position}`]: position !== undefined,
|
|
16588
16629
|
[`label-no-animate`]: this.noAnimate,
|
|
16589
16630
|
'label-rtl': document.dir === 'rtl',
|
|
16590
|
-
}) }, hAsync("slot", { key: '
|
|
16631
|
+
}) }, hAsync("slot", { key: '6ef9c2758c0168442aa84941af0a6cec1ef1ec21' })));
|
|
16591
16632
|
}
|
|
16592
16633
|
get el() { return getElement(this); }
|
|
16593
16634
|
static get watchers() { return {
|
|
@@ -16643,7 +16684,7 @@ class List {
|
|
|
16643
16684
|
render() {
|
|
16644
16685
|
const mode = getIonMode$1(this);
|
|
16645
16686
|
const { lines, inset } = this;
|
|
16646
|
-
return (hAsync(Host, { key: '
|
|
16687
|
+
return (hAsync(Host, { key: '5ff2b0b3989cc99ce17abb8bcd7ec1847940d1ec', role: "list", class: {
|
|
16647
16688
|
[mode]: true,
|
|
16648
16689
|
// Used internally for styling
|
|
16649
16690
|
[`list-${mode}`]: true,
|
|
@@ -16689,10 +16730,10 @@ class ListHeader {
|
|
|
16689
16730
|
render() {
|
|
16690
16731
|
const { lines } = this;
|
|
16691
16732
|
const mode = getIonMode$1(this);
|
|
16692
|
-
return (hAsync(Host, { key: '
|
|
16733
|
+
return (hAsync(Host, { key: 'fb78bd8601cbd7b90ec84a96e0c8325be1132b1e', class: createColorClasses$1(this.color, {
|
|
16693
16734
|
[mode]: true,
|
|
16694
16735
|
[`list-header-lines-${lines}`]: lines !== undefined,
|
|
16695
|
-
}) }, hAsync("div", { key: '
|
|
16736
|
+
}) }, hAsync("div", { key: '2580ad49f3a54973e15f14d645a1e55a6fa066ac', class: "list-header-inner" }, hAsync("slot", { key: '677b2e2ec8eeb3ae6ad329e86c76451cf3ae6c2f' }))));
|
|
16696
16737
|
}
|
|
16697
16738
|
static get style() { return {
|
|
16698
16739
|
ios: IonListHeaderIosStyle0,
|
|
@@ -16961,9 +17002,9 @@ class Loading {
|
|
|
16961
17002
|
* Otherwise, don't set aria-labelledby.
|
|
16962
17003
|
*/
|
|
16963
17004
|
const ariaLabelledBy = message !== undefined ? msgId : null;
|
|
16964
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
17005
|
+
return (hAsync(Host, Object.assign({ key: 'd97f536b7f443ea19a2bbf2dcbc7f546b8e0a092', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
|
|
16965
17006
|
zIndex: `${40000 + this.overlayIndex}`,
|
|
16966
|
-
}, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), hAsync("ion-backdrop", { key: '
|
|
17007
|
+
}, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), hAsync("ion-backdrop", { key: '6cd39bd7912fd080ab59d041644054c96d238ea9', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: 'c14ca5a9308844f11bcb010257e15208a75b39bc', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: '118bceefa8e1cf8b225a858f224e6d919cf03c26', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (hAsync("div", { key: '490d6e8ae4433835fe273162d7b90deab944fb39', class: "loading-spinner" }, hAsync("ion-spinner", { key: 'c5cf6549c43df4cb23814b3e62ec4d9e7ea2b64f', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), hAsync("div", { key: '2b888362122d3b66b0492d53b0c21bd6a2a97501', tabindex: "0", "aria-hidden": "true" })));
|
|
16967
17008
|
}
|
|
16968
17009
|
get el() { return getElement(this); }
|
|
16969
17010
|
static get watchers() { return {
|
|
@@ -17315,7 +17356,7 @@ const createMenuController = () => {
|
|
|
17315
17356
|
menus.splice(index, 1);
|
|
17316
17357
|
}
|
|
17317
17358
|
};
|
|
17318
|
-
const _setOpen = async (menu, shouldOpen, animated) => {
|
|
17359
|
+
const _setOpen = async (menu, shouldOpen, animated, role) => {
|
|
17319
17360
|
if (isAnimatingSync()) {
|
|
17320
17361
|
return false;
|
|
17321
17362
|
}
|
|
@@ -17325,7 +17366,7 @@ const createMenuController = () => {
|
|
|
17325
17366
|
await openedMenu.setOpen(false, false);
|
|
17326
17367
|
}
|
|
17327
17368
|
}
|
|
17328
|
-
return menu._setOpen(shouldOpen, animated);
|
|
17369
|
+
return menu._setOpen(shouldOpen, animated, role);
|
|
17329
17370
|
};
|
|
17330
17371
|
const _createAnimation = (type, menuCmp) => {
|
|
17331
17372
|
const animationBuilder = menuAnimations.get(type); // TODO(FW-2832): type
|
|
@@ -17559,13 +17600,13 @@ class Menu {
|
|
|
17559
17600
|
if (shouldClose) {
|
|
17560
17601
|
ev.preventDefault();
|
|
17561
17602
|
ev.stopPropagation();
|
|
17562
|
-
this.close();
|
|
17603
|
+
this.close(undefined, BACKDROP);
|
|
17563
17604
|
}
|
|
17564
17605
|
}
|
|
17565
17606
|
}
|
|
17566
17607
|
onKeydown(ev) {
|
|
17567
17608
|
if (ev.key === 'Escape') {
|
|
17568
|
-
this.close();
|
|
17609
|
+
this.close(undefined, BACKDROP);
|
|
17569
17610
|
}
|
|
17570
17611
|
}
|
|
17571
17612
|
/**
|
|
@@ -17594,8 +17635,8 @@ class Menu {
|
|
|
17594
17635
|
* Closes the menu. If the menu is already closed or it can't be closed,
|
|
17595
17636
|
* it returns `false`.
|
|
17596
17637
|
*/
|
|
17597
|
-
close(animated = true) {
|
|
17598
|
-
return this.setOpen(false, animated);
|
|
17638
|
+
close(animated = true, role) {
|
|
17639
|
+
return this.setOpen(false, animated, role);
|
|
17599
17640
|
}
|
|
17600
17641
|
/**
|
|
17601
17642
|
* Toggles the menu. If the menu is already open, it will try to close, otherwise it will try to open it.
|
|
@@ -17608,8 +17649,8 @@ class Menu {
|
|
|
17608
17649
|
* Opens or closes the button.
|
|
17609
17650
|
* If the operation can't be completed successfully, it returns `false`.
|
|
17610
17651
|
*/
|
|
17611
|
-
setOpen(shouldOpen, animated = true) {
|
|
17612
|
-
return menuController._setOpen(this, shouldOpen, animated);
|
|
17652
|
+
setOpen(shouldOpen, animated = true, role) {
|
|
17653
|
+
return menuController._setOpen(this, shouldOpen, animated, role);
|
|
17613
17654
|
}
|
|
17614
17655
|
trapKeyboardFocus(ev, doc) {
|
|
17615
17656
|
const target = ev.target;
|
|
@@ -17647,12 +17688,12 @@ class Menu {
|
|
|
17647
17688
|
}
|
|
17648
17689
|
}
|
|
17649
17690
|
}
|
|
17650
|
-
async _setOpen(shouldOpen, animated = true) {
|
|
17691
|
+
async _setOpen(shouldOpen, animated = true, role) {
|
|
17651
17692
|
// If the menu is disabled or it is currently being animated, let's do nothing
|
|
17652
17693
|
if (!this._isActive() || this.isAnimating || shouldOpen === this._isOpen) {
|
|
17653
17694
|
return false;
|
|
17654
17695
|
}
|
|
17655
|
-
this.beforeAnimation(shouldOpen);
|
|
17696
|
+
this.beforeAnimation(shouldOpen, role);
|
|
17656
17697
|
await this.loadAnimation();
|
|
17657
17698
|
await this.startAnimation(shouldOpen, animated);
|
|
17658
17699
|
/**
|
|
@@ -17664,7 +17705,7 @@ class Menu {
|
|
|
17664
17705
|
this.operationCancelled = false;
|
|
17665
17706
|
return false;
|
|
17666
17707
|
}
|
|
17667
|
-
this.afterAnimation(shouldOpen);
|
|
17708
|
+
this.afterAnimation(shouldOpen, role);
|
|
17668
17709
|
return true;
|
|
17669
17710
|
}
|
|
17670
17711
|
async loadAnimation() {
|
|
@@ -17739,7 +17780,7 @@ class Menu {
|
|
|
17739
17780
|
return checkEdgeSide(window, detail.currentX, this.isEndSide, this.maxEdgeStart);
|
|
17740
17781
|
}
|
|
17741
17782
|
onWillStart() {
|
|
17742
|
-
this.beforeAnimation(!this._isOpen);
|
|
17783
|
+
this.beforeAnimation(!this._isOpen, GESTURE);
|
|
17743
17784
|
return this.loadAnimation();
|
|
17744
17785
|
}
|
|
17745
17786
|
onStart() {
|
|
@@ -17806,11 +17847,27 @@ class Menu {
|
|
|
17806
17847
|
const playTo = this._isOpen ? !shouldComplete : shouldComplete;
|
|
17807
17848
|
this.animation
|
|
17808
17849
|
.easing('cubic-bezier(0.4, 0.0, 0.6, 1)')
|
|
17809
|
-
.onFinish(() => this.afterAnimation(shouldOpen), { oneTimeCallback: true })
|
|
17850
|
+
.onFinish(() => this.afterAnimation(shouldOpen, GESTURE), { oneTimeCallback: true })
|
|
17810
17851
|
.progressEnd(playTo ? 1 : 0, this._isOpen ? 1 - newStepValue : newStepValue, 300);
|
|
17811
17852
|
}
|
|
17812
|
-
beforeAnimation(shouldOpen) {
|
|
17853
|
+
beforeAnimation(shouldOpen, role) {
|
|
17813
17854
|
assert(!this.isAnimating, '_before() should not be called while animating');
|
|
17855
|
+
/**
|
|
17856
|
+
* When the menu is presented on an Android device, TalkBack's focus rings
|
|
17857
|
+
* may appear in the wrong position due to the transition (specifically
|
|
17858
|
+
* `transform` styles). This occurs because the focus rings are initially
|
|
17859
|
+
* displayed at the starting position of the elements before the transition
|
|
17860
|
+
* begins. This workaround ensures the focus rings do not appear in the
|
|
17861
|
+
* incorrect location.
|
|
17862
|
+
*
|
|
17863
|
+
* If this solution is applied to iOS devices, then it leads to a bug where
|
|
17864
|
+
* the overlays cannot be accessed by screen readers. This is due to
|
|
17865
|
+
* VoiceOver not being able to update the accessibility tree when the
|
|
17866
|
+
* `aria-hidden` is removed.
|
|
17867
|
+
*/
|
|
17868
|
+
if (isPlatform('android')) {
|
|
17869
|
+
this.el.setAttribute('aria-hidden', 'true');
|
|
17870
|
+
}
|
|
17814
17871
|
// this places the menu into the correct location before it animates in
|
|
17815
17872
|
// this css class doesn't actually kick off any animations
|
|
17816
17873
|
this.el.classList.add(SHOW_MENU);
|
|
@@ -17848,10 +17905,10 @@ class Menu {
|
|
|
17848
17905
|
this.ionWillOpen.emit();
|
|
17849
17906
|
}
|
|
17850
17907
|
else {
|
|
17851
|
-
this.ionWillClose.emit();
|
|
17908
|
+
this.ionWillClose.emit({ role });
|
|
17852
17909
|
}
|
|
17853
17910
|
}
|
|
17854
|
-
afterAnimation(isOpen) {
|
|
17911
|
+
afterAnimation(isOpen, role) {
|
|
17855
17912
|
var _a;
|
|
17856
17913
|
// keep opening/closing the menu disabled for a touch more yet
|
|
17857
17914
|
// only add listeners/css if it's enabled and isOpen
|
|
@@ -17863,6 +17920,16 @@ class Menu {
|
|
|
17863
17920
|
this.blocker.unblock();
|
|
17864
17921
|
}
|
|
17865
17922
|
if (isOpen) {
|
|
17923
|
+
/**
|
|
17924
|
+
* When the menu is presented on an Android device, TalkBack's focus rings
|
|
17925
|
+
* may appear in the wrong position due to the transition (specifically
|
|
17926
|
+
* `transform` styles). The menu is hidden from screen readers during the
|
|
17927
|
+
* transition to prevent this. Once the transition is complete, the menu
|
|
17928
|
+
* is shown again.
|
|
17929
|
+
*/
|
|
17930
|
+
if (isPlatform('android')) {
|
|
17931
|
+
this.el.removeAttribute('aria-hidden');
|
|
17932
|
+
}
|
|
17866
17933
|
// emit open event
|
|
17867
17934
|
this.ionDidOpen.emit();
|
|
17868
17935
|
/**
|
|
@@ -17878,6 +17945,7 @@ class Menu {
|
|
|
17878
17945
|
document.addEventListener('focus', this.handleFocus, true);
|
|
17879
17946
|
}
|
|
17880
17947
|
else {
|
|
17948
|
+
this.el.removeAttribute('aria-hidden');
|
|
17881
17949
|
// remove css classes and unhide content from screen readers
|
|
17882
17950
|
this.el.classList.remove(SHOW_MENU);
|
|
17883
17951
|
/**
|
|
@@ -17901,7 +17969,7 @@ class Menu {
|
|
|
17901
17969
|
this.animation.stop();
|
|
17902
17970
|
}
|
|
17903
17971
|
// emit close event
|
|
17904
|
-
this.ionDidClose.emit();
|
|
17972
|
+
this.ionDidClose.emit({ role });
|
|
17905
17973
|
// undo focus trapping so multiple menus don't collide
|
|
17906
17974
|
document.removeEventListener('focus', this.handleFocus, true);
|
|
17907
17975
|
}
|
|
@@ -17933,7 +18001,7 @@ class Menu {
|
|
|
17933
18001
|
* If the menu is disabled then we should
|
|
17934
18002
|
* forcibly close the menu even if it is open.
|
|
17935
18003
|
*/
|
|
17936
|
-
this.afterAnimation(false);
|
|
18004
|
+
this.afterAnimation(false, GESTURE);
|
|
17937
18005
|
}
|
|
17938
18006
|
}
|
|
17939
18007
|
render() {
|
|
@@ -17944,14 +18012,14 @@ class Menu {
|
|
|
17944
18012
|
* the ionBackButton listener in the menu controller
|
|
17945
18013
|
* will handle closing the menu when Escape is pressed.
|
|
17946
18014
|
*/
|
|
17947
|
-
return (hAsync(Host, { key: '
|
|
18015
|
+
return (hAsync(Host, { key: 'da96fdb4c5ddf60e615cc4cdda7ccdb3fd7e089b', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
|
|
17948
18016
|
[mode]: true,
|
|
17949
18017
|
[`menu-type-${type}`]: true,
|
|
17950
18018
|
'menu-enabled': !disabled,
|
|
17951
18019
|
[`menu-side-${side}`]: true,
|
|
17952
18020
|
'menu-pane-visible': isPaneVisible,
|
|
17953
18021
|
'split-pane-side': hostContext('ion-split-pane', el),
|
|
17954
|
-
} }, hAsync("div", { key: '
|
|
18022
|
+
} }, hAsync("div", { key: '894e680fe227534711128c7aca980964ddb5a08a', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, hAsync("slot", { key: 'e9f5934518dc0cceaeadf1f2820614595fec6bc9' })), hAsync("ion-backdrop", { key: '7282077817657b1bb6c155f1404c0a519fece993', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
|
|
17955
18023
|
}
|
|
17956
18024
|
get el() { return getElement(this); }
|
|
17957
18025
|
static get watchers() { return {
|
|
@@ -18054,7 +18122,7 @@ class MenuButton {
|
|
|
18054
18122
|
type: this.type,
|
|
18055
18123
|
};
|
|
18056
18124
|
const ariaLabel = inheritedAttributes['aria-label'] || 'menu';
|
|
18057
|
-
return (hAsync(Host, { key: '
|
|
18125
|
+
return (hAsync(Host, { key: '7ec29715ce7926b7c2b08f3d9cac8aaa16b3dc28', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses$1(color, {
|
|
18058
18126
|
[mode]: true,
|
|
18059
18127
|
button: true, // ion-buttons target .button
|
|
18060
18128
|
'menu-button-hidden': hidden,
|
|
@@ -18063,7 +18131,7 @@ class MenuButton {
|
|
|
18063
18131
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
18064
18132
|
'ion-activatable': true,
|
|
18065
18133
|
'ion-focusable': true,
|
|
18066
|
-
}) }, hAsync("button", Object.assign({ key: '
|
|
18134
|
+
}) }, hAsync("button", Object.assign({ key: 'd4c5929264af3ba0328118bcc27d2ab7ef5d3809' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), hAsync("span", { key: '7bfa6e9a93105486623d044861e879ec79ff64f1', class: "button-inner" }, hAsync("slot", { key: '071ab58e285832fc188706166f5547d45d501ac5' }, hAsync("ion-icon", { key: '918ec5d791921de9821c347af4f65f97dd94aabf', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && hAsync("ion-ripple-effect", { key: '00ffdd53f635e706c1dbd01b8e7944498650fe81', type: "unbounded" }))));
|
|
18067
18135
|
}
|
|
18068
18136
|
get el() { return getElement(this); }
|
|
18069
18137
|
static get style() { return {
|
|
@@ -18112,10 +18180,10 @@ class MenuToggle {
|
|
|
18112
18180
|
render() {
|
|
18113
18181
|
const mode = getIonMode$1(this);
|
|
18114
18182
|
const hidden = this.autoHide && !this.visible;
|
|
18115
|
-
return (hAsync(Host, { key: '
|
|
18183
|
+
return (hAsync(Host, { key: '7c27ea5b0795676bf5cb33e1f83aa142c197f64e', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
|
|
18116
18184
|
[mode]: true,
|
|
18117
18185
|
'menu-toggle-hidden': hidden,
|
|
18118
|
-
} }, hAsync("slot", { key: '
|
|
18186
|
+
} }, hAsync("slot", { key: '69f187becedc0fe34603d41d279f043cf0fdf776' })));
|
|
18119
18187
|
}
|
|
18120
18188
|
static get style() { return IonMenuToggleStyle0; }
|
|
18121
18189
|
static get cmpMeta() { return {
|
|
@@ -20119,18 +20187,18 @@ class Modal {
|
|
|
20119
20187
|
const mode = getIonMode$1(this);
|
|
20120
20188
|
const isCardModal = presentingElement !== undefined && mode === 'ios';
|
|
20121
20189
|
const isHandleCycle = handleBehavior === 'cycle';
|
|
20122
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
20190
|
+
return (hAsync(Host, Object.assign({ key: 'b4da5111fe4719fa450c39b2d4bd884a302a7924', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
20123
20191
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
20124
|
-
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), hAsync("ion-backdrop", { key: '
|
|
20192
|
+
}, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), hAsync("ion-backdrop", { key: 'c12dbf747e0eb914eaf1331798548ffc7e147763', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && hAsync("div", { key: 'da546ee80c6576b5acc66e959fd5009e0b9a8160', class: "modal-shadow" }), hAsync("div", Object.assign({ key: '306ebe6427440ad5f7ed36d590e562d15a503b75',
|
|
20125
20193
|
/*
|
|
20126
20194
|
role and aria-modal must be used on the
|
|
20127
20195
|
same element. They must also be set inside the
|
|
20128
20196
|
shadow DOM otherwise ion-button will not be highlighted
|
|
20129
20197
|
when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
|
|
20130
20198
|
*/
|
|
20131
|
-
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: '
|
|
20199
|
+
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: 'c5d17e346fe255a7c0cacbbf15c0083f2d09c488', class: "modal-handle",
|
|
20132
20200
|
// Prevents the handle from receiving keyboard focus when it does not cycle
|
|
20133
|
-
tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), hAsync("slot", { key: '
|
|
20201
|
+
tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), hAsync("slot", { key: '5cc714170a00b67f3eda0cd1d6f37c1489a99c83' }))));
|
|
20134
20202
|
}
|
|
20135
20203
|
get el() { return getElement(this); }
|
|
20136
20204
|
static get watchers() { return {
|
|
@@ -21079,7 +21147,7 @@ class Nav {
|
|
|
21079
21147
|
}
|
|
21080
21148
|
}
|
|
21081
21149
|
render() {
|
|
21082
|
-
return hAsync("slot", { key: '
|
|
21150
|
+
return hAsync("slot", { key: 'dfe98cb6604a2015a49f41beffebdd2da957dfff' });
|
|
21083
21151
|
}
|
|
21084
21152
|
get el() { return getElement(this); }
|
|
21085
21153
|
static get watchers() { return {
|
|
@@ -21152,7 +21220,7 @@ class NavLink {
|
|
|
21152
21220
|
this.routerAnimation = undefined;
|
|
21153
21221
|
}
|
|
21154
21222
|
render() {
|
|
21155
|
-
return hAsync(Host, { key: '
|
|
21223
|
+
return hAsync(Host, { key: 'd2f8545b4fbd5aa25ef36eb01dffbc5d35ccfbb9', onClick: this.onClick });
|
|
21156
21224
|
}
|
|
21157
21225
|
get el() { return getElement(this); }
|
|
21158
21226
|
static get cmpMeta() { return {
|
|
@@ -21186,9 +21254,9 @@ class Note {
|
|
|
21186
21254
|
}
|
|
21187
21255
|
render() {
|
|
21188
21256
|
const mode = getIonMode$1(this);
|
|
21189
|
-
return (hAsync(Host, { key: '
|
|
21257
|
+
return (hAsync(Host, { key: '10a3495bc21166176986441479f8f7539029d161', class: createColorClasses$1(this.color, {
|
|
21190
21258
|
[mode]: true,
|
|
21191
|
-
}) }, hAsync("slot", { key: '
|
|
21259
|
+
}) }, hAsync("slot", { key: 'b6a9459e1b85f608fafd060a4bfeb11637ebe873' })));
|
|
21192
21260
|
}
|
|
21193
21261
|
static get style() { return {
|
|
21194
21262
|
ios: IonNoteIosStyle0,
|
|
@@ -21685,7 +21753,7 @@ class Picker$1 {
|
|
|
21685
21753
|
this.emitInputModeChange();
|
|
21686
21754
|
}
|
|
21687
21755
|
render() {
|
|
21688
|
-
return (hAsync(Host, { key: '
|
|
21756
|
+
return (hAsync(Host, { key: 'f92214a09dc85b65873676f40fde2b802960e704', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, hAsync("input", { key: '6da37f75aca4ea1c9cb3bc733ebda2116279f313', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
|
|
21689
21757
|
var _a;
|
|
21690
21758
|
/**
|
|
21691
21759
|
* The "Enter" key represents
|
|
@@ -21700,7 +21768,7 @@ class Picker$1 {
|
|
|
21700
21768
|
if (ev.key === 'Enter') {
|
|
21701
21769
|
(_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.blur();
|
|
21702
21770
|
}
|
|
21703
|
-
}, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), hAsync("div", { key: '
|
|
21771
|
+
}, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), hAsync("div", { key: '298e99d83dd3f5bf2798150bab0bb4024af472fa', class: "picker-before" }), hAsync("div", { key: 'ea578f04eb562a4dc6d6cc92de133dcb9fb7f42a', class: "picker-after" }), hAsync("div", { key: '84567824956dfe967992a629904836ba8b75b3ec', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), hAsync("slot", { key: 'df81f8fb90e1f649b608328034528f5c31c70c3b' })));
|
|
21704
21772
|
}
|
|
21705
21773
|
get el() { return getElement(this); }
|
|
21706
21774
|
static get style() { return {
|
|
@@ -21953,11 +22021,11 @@ class Picker {
|
|
|
21953
22021
|
render() {
|
|
21954
22022
|
const { htmlAttributes } = this;
|
|
21955
22023
|
const mode = getIonMode$1(this);
|
|
21956
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
22024
|
+
return (hAsync(Host, Object.assign({ key: '0712fa8732141848e50ad2e08e2ba66ef2a48991', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
|
|
21957
22025
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
21958
22026
|
}, class: Object.assign({ [mode]: true,
|
|
21959
22027
|
// Used internally for styling
|
|
21960
|
-
[`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), hAsync("ion-backdrop", { key: '
|
|
22028
|
+
[`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), hAsync("ion-backdrop", { key: 'c997632ef0488698739664012de5a6494de438b6', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: '20045054a76cca997b410835fa6b305af22dcb12', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: 'a73a6ac20b685ed9694d4fa95ea236ce5d63fdbf', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, hAsync("div", { key: '1221cdcc2ff013deeba12170129c8fe78308330c', class: "picker-toolbar" }, this.buttons.map((b) => (hAsync("div", { class: buttonWrapperClass(b) }, hAsync("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass$1(b) }, b.text))))), hAsync("div", { key: '45038a58430a4251100797b902e7034243137564', class: "picker-columns" }, hAsync("div", { key: 'c579bb69cddd4090912855ffd7f59536280f34b9', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => hAsync("ion-picker-legacy-column", { col: c })), hAsync("div", { key: '978c6632d82a97d053b729c9de65dd3af4c4cee2', class: "picker-below-highlight" }))), hAsync("div", { key: 'e7e9dc437a3cf6d559e2cb0df71af69047a2ae31', tabindex: "0", "aria-hidden": "true" })));
|
|
21961
22029
|
}
|
|
21962
22030
|
get el() { return getElement(this); }
|
|
21963
22031
|
static get watchers() { return {
|
|
@@ -22539,12 +22607,12 @@ class PickerColumn {
|
|
|
22539
22607
|
render() {
|
|
22540
22608
|
const { color, disabled, isActive, numericInput } = this;
|
|
22541
22609
|
const mode = getIonMode$1(this);
|
|
22542
|
-
return (hAsync(Host, { key: '
|
|
22610
|
+
return (hAsync(Host, { key: 'a221dc10f1eb7c41637a16d2c7167c16939822fd', class: createColorClasses$1(color, {
|
|
22543
22611
|
[mode]: true,
|
|
22544
22612
|
['picker-column-active']: isActive,
|
|
22545
22613
|
['picker-column-numeric-input']: numericInput,
|
|
22546
22614
|
['picker-column-disabled']: disabled,
|
|
22547
|
-
}) }, this.renderAssistiveFocusable(), hAsync("slot", { key: '
|
|
22615
|
+
}) }, this.renderAssistiveFocusable(), hAsync("slot", { key: '81b0656f606856f3dc0a657bf167d81a5011405e', name: "prefix" }), hAsync("div", { key: '71b9de67c04150255dd66592601c9d926db0c31c', "aria-hidden": "true", class: "picker-opts", ref: (el) => {
|
|
22548
22616
|
this.scrollEl = el;
|
|
22549
22617
|
},
|
|
22550
22618
|
/**
|
|
@@ -22565,7 +22633,7 @@ class PickerColumn {
|
|
|
22565
22633
|
* To prevent this, we set the tabIndex to -1. This
|
|
22566
22634
|
* will match the behavior of the other browsers.
|
|
22567
22635
|
*/
|
|
22568
|
-
tabIndex: -1 }, hAsync("div", { key: '
|
|
22636
|
+
tabIndex: -1 }, hAsync("div", { key: 'ebdc2f08c83db0cf17b4be29f28fcb00f529601e', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("div", { key: '04ab56fcb8e6a7d6af00204c4560feb99ff34a56', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("div", { key: '6cf8f538903faf0fe1e4130f3eaf7b4e2e17cb52', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("slot", { key: '1cc392307b70c576be5b81b5226ceba735957f0f' }), hAsync("div", { key: '23e3f28e2a99b9aa8b7c8f68ad9583e3ca63e9e2', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("div", { key: '8a0563f09780c3116af0caebe4f40587ec1f041f', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("div", { key: '13207e248fc0009f37e0c90a3ee2bac2f130b856', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0")), hAsync("slot", { key: '55ecf2ab5f214f936c2468cbdb7952daf89416b8', name: "suffix" })));
|
|
22569
22637
|
}
|
|
22570
22638
|
get el() { return getElement(this); }
|
|
22571
22639
|
static get watchers() { return {
|
|
@@ -22932,9 +23000,9 @@ class PickerColumnCmp {
|
|
|
22932
23000
|
render() {
|
|
22933
23001
|
const col = this.col;
|
|
22934
23002
|
const mode = getIonMode$1(this);
|
|
22935
|
-
return (hAsync(Host, { key: '
|
|
23003
|
+
return (hAsync(Host, { key: 'c015eb8bc01b3287cbd1d71af0aa311b6be89d36', class: Object.assign({ [mode]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, getClassMap(col.cssClass)), style: {
|
|
22936
23004
|
'max-width': this.col.columnWidth,
|
|
22937
|
-
} }, col.prefix && (hAsync("div", { key: '
|
|
23005
|
+
} }, col.prefix && (hAsync("div", { key: 'f9de3fe2f5c7ad3256d6e5f44b6d03a2b1f96ffb', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), hAsync("div", { key: '10f9c12aa174f96c7cf9adc30efbb26695c0aa64', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (hAsync("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (hAsync("div", { key: '1d9c0892ce56e0da9044c79eb953827166f5190b', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
|
|
22938
23006
|
}
|
|
22939
23007
|
get el() { return getElement(this); }
|
|
22940
23008
|
static get watchers() { return {
|
|
@@ -23038,10 +23106,10 @@ class PickerColumnOption {
|
|
|
23038
23106
|
render() {
|
|
23039
23107
|
const { color, disabled, ariaLabel } = this;
|
|
23040
23108
|
const mode = getIonMode$1(this);
|
|
23041
|
-
return (hAsync(Host, { key: '
|
|
23109
|
+
return (hAsync(Host, { key: 'c743c6ef44bb9f765cc15b3b5d2864de6520203a', class: createColorClasses$1(color, {
|
|
23042
23110
|
[mode]: true,
|
|
23043
23111
|
['option-disabled']: disabled,
|
|
23044
|
-
}) }, hAsync("button", { key: '
|
|
23112
|
+
}) }, hAsync("button", { key: '4c3d9eb245c52b2c007f727e145cfb55759bd7a9', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, hAsync("slot", { key: '4c907d2187cbe9d5941e27f2b12578e2b7271461' }))));
|
|
23045
23113
|
}
|
|
23046
23114
|
get el() { return getElement(this); }
|
|
23047
23115
|
static get watchers() { return {
|
|
@@ -24355,9 +24423,9 @@ class Popover {
|
|
|
24355
24423
|
const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
|
|
24356
24424
|
const desktop = isPlatform('desktop');
|
|
24357
24425
|
const enableArrow = arrow && !parentPopover;
|
|
24358
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
24426
|
+
return (hAsync(Host, Object.assign({ key: 'ffe8b37c9ffb5cac210a7307e6cdfcf78712905b', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
24359
24427
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
24360
|
-
}, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && hAsync("ion-backdrop", { key: '
|
|
24428
|
+
}, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && hAsync("ion-backdrop", { key: '12b3ffa3928b4d56a4f09c3d2f5d493d47b45255', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), hAsync("div", { key: '2c2862d5c7e75b637973c712b4982bf4978c0cdf', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && hAsync("div", { key: '0cfacc52afaa7abc28c1b7742889d7a1c23a37ad', class: "popover-arrow", part: "arrow" }), hAsync("div", { key: '3ef570c44d4fe7f063dd419008c92c8c40d3cd22', class: "popover-content", part: "content" }, hAsync("slot", { key: '6fc5dfdce20fee1642bc1f05d41b5bf7d1034457' })))));
|
|
24361
24429
|
}
|
|
24362
24430
|
get el() { return getElement(this); }
|
|
24363
24431
|
static get watchers() { return {
|
|
@@ -24449,7 +24517,7 @@ class ProgressBar {
|
|
|
24449
24517
|
const mode = getIonMode$1(this);
|
|
24450
24518
|
// If the progress is displayed as a solid bar.
|
|
24451
24519
|
const progressSolid = buffer === 1;
|
|
24452
|
-
return (hAsync(Host, { key: '
|
|
24520
|
+
return (hAsync(Host, { key: '8d8ddf0b26fe33803d3a6168cbedd523d1a888e7', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses$1(color, {
|
|
24453
24521
|
[mode]: true,
|
|
24454
24522
|
[`progress-bar-${type}`]: true,
|
|
24455
24523
|
'progress-paused': paused,
|
|
@@ -24582,8 +24650,10 @@ class Radio {
|
|
|
24582
24650
|
}
|
|
24583
24651
|
/** @internal */
|
|
24584
24652
|
async setFocus(ev) {
|
|
24585
|
-
ev
|
|
24586
|
-
|
|
24653
|
+
if (ev !== undefined) {
|
|
24654
|
+
ev.stopPropagation();
|
|
24655
|
+
ev.preventDefault();
|
|
24656
|
+
}
|
|
24587
24657
|
this.el.focus();
|
|
24588
24658
|
}
|
|
24589
24659
|
/** @internal */
|
|
@@ -24617,7 +24687,7 @@ class Radio {
|
|
|
24617
24687
|
const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
|
|
24618
24688
|
const mode = getIonMode$1(this);
|
|
24619
24689
|
const inItem = hostContext('ion-item', el);
|
|
24620
|
-
return (hAsync(Host, { key: '
|
|
24690
|
+
return (hAsync(Host, { key: '5a0adab55ad009305de4856fa1b9f93f2279a734', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses$1(color, {
|
|
24621
24691
|
[mode]: true,
|
|
24622
24692
|
'in-item': inItem,
|
|
24623
24693
|
'radio-checked': checked,
|
|
@@ -24628,10 +24698,10 @@ class Radio {
|
|
|
24628
24698
|
// Focus and active styling should not apply when the radio is in an item
|
|
24629
24699
|
'ion-activatable': !inItem,
|
|
24630
24700
|
'ion-focusable': !inItem,
|
|
24631
|
-
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, hAsync("label", { key: '
|
|
24701
|
+
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, hAsync("label", { key: 'f5673a798e6d87868339f046445f707e1d93b7b6', class: "radio-wrapper" }, hAsync("div", { key: 'e9190c06f75a171cab63e3f74ccf771c3ed87005', class: {
|
|
24632
24702
|
'label-text-wrapper': true,
|
|
24633
24703
|
'label-text-wrapper-hidden': !hasLabel,
|
|
24634
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
24704
|
+
}, part: "label" }, hAsync("slot", { key: '6cedf4e7b3bd03e4a635727dd7b6094bab64af64' })), hAsync("div", { key: '26dd48d9d2848b7f100b732abdc4a3171adde483', class: "native-wrapper" }, this.renderRadioControl()))));
|
|
24635
24705
|
}
|
|
24636
24706
|
get el() { return getElement(this); }
|
|
24637
24707
|
static get watchers() { return {
|
|
@@ -24763,7 +24833,9 @@ class RadioGroup {
|
|
|
24763
24833
|
this.ionChange.emit({ value, event });
|
|
24764
24834
|
}
|
|
24765
24835
|
onKeydown(ev) {
|
|
24766
|
-
|
|
24836
|
+
// We don't want the value to automatically change/emit when the radio group is part of a select interface
|
|
24837
|
+
// as this will cause the interface to close when navigating through the radio group options
|
|
24838
|
+
const inSelectInterface = !!this.el.closest('ion-select-popover') || !!this.el.closest('ion-select-modal');
|
|
24767
24839
|
if (ev.target && !this.el.contains(ev.target)) {
|
|
24768
24840
|
return;
|
|
24769
24841
|
}
|
|
@@ -24787,7 +24859,7 @@ class RadioGroup {
|
|
|
24787
24859
|
}
|
|
24788
24860
|
if (next && radios.includes(next)) {
|
|
24789
24861
|
next.setFocus(ev);
|
|
24790
|
-
if (!
|
|
24862
|
+
if (!inSelectInterface) {
|
|
24791
24863
|
this.value = next.value;
|
|
24792
24864
|
this.emitValueChange(ev);
|
|
24793
24865
|
}
|
|
@@ -24812,11 +24884,16 @@ class RadioGroup {
|
|
|
24812
24884
|
}
|
|
24813
24885
|
}
|
|
24814
24886
|
}
|
|
24887
|
+
/** @internal */
|
|
24888
|
+
async setFocus() {
|
|
24889
|
+
const radioToFocus = this.getRadios().find((r) => r.tabIndex !== -1);
|
|
24890
|
+
radioToFocus === null || radioToFocus === void 0 ? void 0 : radioToFocus.setFocus();
|
|
24891
|
+
}
|
|
24815
24892
|
render() {
|
|
24816
24893
|
const { label, labelId, el, name, value } = this;
|
|
24817
24894
|
const mode = getIonMode$1(this);
|
|
24818
24895
|
renderHiddenInput(true, el, name, value, false);
|
|
24819
|
-
return hAsync(Host, { key: '
|
|
24896
|
+
return hAsync(Host, { key: 'a853e38901f0f4ba17bbf21ebb5da5b5c20b327e', role: "radiogroup", "aria-labelledby": label ? labelId : null, onClick: this.onClick, class: mode });
|
|
24820
24897
|
}
|
|
24821
24898
|
get el() { return getElement(this); }
|
|
24822
24899
|
static get watchers() { return {
|
|
@@ -24829,7 +24906,8 @@ class RadioGroup {
|
|
|
24829
24906
|
"allowEmptySelection": [4, "allow-empty-selection"],
|
|
24830
24907
|
"compareWith": [1, "compare-with"],
|
|
24831
24908
|
"name": [1],
|
|
24832
|
-
"value": [1032]
|
|
24909
|
+
"value": [1032],
|
|
24910
|
+
"setFocus": [64]
|
|
24833
24911
|
},
|
|
24834
24912
|
"$listeners$": [[4, "keydown", "onKeydown"]],
|
|
24835
24913
|
"$lazyBundleId$": "-",
|
|
@@ -25448,7 +25526,7 @@ class Range {
|
|
|
25448
25526
|
const needsEndAdjustment = inItem && !hasEndContent;
|
|
25449
25527
|
const mode = getIonMode$1(this);
|
|
25450
25528
|
renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
|
|
25451
|
-
return (hAsync(Host, { key: '
|
|
25529
|
+
return (hAsync(Host, { key: '05c699caaead7cc74deaae2a958c4632191473a8', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
|
|
25452
25530
|
[mode]: true,
|
|
25453
25531
|
'in-item': inItem,
|
|
25454
25532
|
'range-disabled': disabled,
|
|
@@ -25457,10 +25535,10 @@ class Range {
|
|
|
25457
25535
|
[`range-label-placement-${labelPlacement}`]: true,
|
|
25458
25536
|
'range-item-start-adjustment': needsStartAdjustment,
|
|
25459
25537
|
'range-item-end-adjustment': needsEndAdjustment,
|
|
25460
|
-
}) }, hAsync("label", { key: '
|
|
25538
|
+
}) }, hAsync("label", { key: '959837bcc48c4bda33ae1f62b66ef444329a2961', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: 'a434c6b5c26f57f52b3af98d881e7e6a179c89fc', class: {
|
|
25461
25539
|
'label-text-wrapper': true,
|
|
25462
25540
|
'label-text-wrapper-hidden': !hasLabel,
|
|
25463
|
-
}, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '
|
|
25541
|
+
}, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '87df1037b6b3337bd1fab05d33a26bf658c57914', class: "native-wrapper" }, hAsync("slot", { key: '2cb88f101da49b70aeae29b0bf5445fac241bb2f', name: "start" }), this.renderRangeSlider(), hAsync("slot", { key: '17b835cfb2bd9b8e1957afd425543ff02b913d83', name: "end" })))));
|
|
25464
25542
|
}
|
|
25465
25543
|
get el() { return getElement(this); }
|
|
25466
25544
|
static get watchers() { return {
|
|
@@ -26361,7 +26439,7 @@ class Refresher {
|
|
|
26361
26439
|
}
|
|
26362
26440
|
render() {
|
|
26363
26441
|
const mode = getIonMode$1(this);
|
|
26364
|
-
return (hAsync(Host, { key: '
|
|
26442
|
+
return (hAsync(Host, { key: '9d4ac22988aec2c6af0b0c90934c52f62f0e4ce3', slot: "fixed", class: {
|
|
26365
26443
|
[mode]: true,
|
|
26366
26444
|
// Used internally for styling
|
|
26367
26445
|
[`refresher-${mode}`]: true,
|
|
@@ -26589,7 +26667,7 @@ class RefresherContent {
|
|
|
26589
26667
|
const pullingIcon = this.pullingIcon;
|
|
26590
26668
|
const hasSpinner = pullingIcon != null && SPINNERS[pullingIcon] !== undefined;
|
|
26591
26669
|
const mode = getIonMode$1(this);
|
|
26592
|
-
return (hAsync(Host, { key: '
|
|
26670
|
+
return (hAsync(Host, { key: '19633bbcf02e3dba885d6bdcdaf2269bf4c8e2f5', class: mode }, hAsync("div", { key: '28922e434a55a6cac0476fe2bee56941ce0d1c02', class: "refresher-pulling" }, this.pullingIcon && hasSpinner && (hAsync("div", { key: 'fe575bf996021884677e9b23a3215d63caf894f5', class: "refresher-pulling-icon" }, hAsync("div", { key: '59fe12297fd95bc33b8df8cd35316e2a1c084d91', class: "spinner-arrow-container" }, hAsync("ion-spinner", { key: 'af9cc013ae04945c140b2865610ca73edb52ab48', name: this.pullingIcon, paused: true }), mode === 'md' && this.pullingIcon === 'circular' && (hAsync("div", { key: '34df66ad1b0f706a0532957251aa2c20bf4587d8', class: "arrow-container" }, hAsync("ion-icon", { key: 'ffdb5c123e606b823491c6c51cc2b497f62581bb', icon: caretBackSharp, "aria-hidden": "true" })))))), this.pullingIcon && !hasSpinner && (hAsync("div", { key: 'ac3a2032bb969264d20fa057e9123441005d7a9d', class: "refresher-pulling-icon" }, hAsync("ion-icon", { key: 'd969d10915548e72aae289b52154366f3dd39b31', icon: this.pullingIcon, lazy: false, "aria-hidden": "true" }))), this.pullingText !== undefined && this.renderPullingText()), hAsync("div", { key: 'a8f854f81a94812d7bef8ce088331d94f49ff53d', class: "refresher-refreshing" }, this.refreshingSpinner && (hAsync("div", { key: 'a1f646945370e40c844d62bc0c647443ae9dfbe7', class: "refresher-refreshing-icon" }, hAsync("ion-spinner", { key: 'ab3ff4047769b6436e222b46d193c1e8b23e2fce', name: this.refreshingSpinner }))), this.refreshingText !== undefined && this.renderRefreshingText())));
|
|
26593
26671
|
}
|
|
26594
26672
|
get el() { return getElement(this); }
|
|
26595
26673
|
static get cmpMeta() { return {
|
|
@@ -26632,7 +26710,7 @@ class Reorder {
|
|
|
26632
26710
|
render() {
|
|
26633
26711
|
const mode = getIonMode$1(this);
|
|
26634
26712
|
const reorderIcon = mode === 'ios' ? reorderThreeOutline : reorderTwoSharp;
|
|
26635
|
-
return (hAsync(Host, { key: '
|
|
26713
|
+
return (hAsync(Host, { key: '27266e30bcb7e10c57fb6d546399cfb1f1c93b23', class: mode }, hAsync("slot", { key: '8745cb9a31458e884c27eed1fb90d104fe9a79eb' }, hAsync("ion-icon", { key: '6c4b9631a2f5610f1e21b2db025b6702d0d593bf', icon: reorderIcon, lazy: false, class: "reorder-icon", part: "icon", "aria-hidden": "true" }))));
|
|
26636
26714
|
}
|
|
26637
26715
|
get el() { return getElement(this); }
|
|
26638
26716
|
static get style() { return {
|
|
@@ -26886,7 +26964,7 @@ class ReorderGroup {
|
|
|
26886
26964
|
}
|
|
26887
26965
|
render() {
|
|
26888
26966
|
const mode = getIonMode$1(this);
|
|
26889
|
-
return (hAsync(Host, { key: '
|
|
26967
|
+
return (hAsync(Host, { key: 'a38c7fbceb677201330a602273d5b55abb32da19', class: {
|
|
26890
26968
|
[mode]: true,
|
|
26891
26969
|
'reorder-enabled': !this.disabled,
|
|
26892
26970
|
'reorder-list-active': this.state !== 0 /* ReorderGroupState.Idle */,
|
|
@@ -26994,7 +27072,7 @@ class RippleEffect {
|
|
|
26994
27072
|
}
|
|
26995
27073
|
render() {
|
|
26996
27074
|
const mode = getIonMode$1(this);
|
|
26997
|
-
return (hAsync(Host, { key: '
|
|
27075
|
+
return (hAsync(Host, { key: '7ae559bda5d2c1856a45bfa150c2cb4f83373f8e', role: "presentation", class: {
|
|
26998
27076
|
[mode]: true,
|
|
26999
27077
|
unbounded: this.unbounded,
|
|
27000
27078
|
} }));
|
|
@@ -27936,10 +28014,10 @@ class RouterLink {
|
|
|
27936
28014
|
rel: this.rel,
|
|
27937
28015
|
target: this.target,
|
|
27938
28016
|
};
|
|
27939
|
-
return (hAsync(Host, { key: '
|
|
28017
|
+
return (hAsync(Host, { key: '529ceed5beaf92d7b4cc315c82f449eac18310e8', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
27940
28018
|
[mode]: true,
|
|
27941
28019
|
'ion-activatable': true,
|
|
27942
|
-
}) }, hAsync("a", Object.assign({ key: '
|
|
28020
|
+
}) }, hAsync("a", Object.assign({ key: 'd5f1f8b256695d70bdafd20ff3d1b625963fa2da' }, attrs), hAsync("slot", { key: '613fcdb36a71e076f989551ea21f1d5c118b1cd2' }))));
|
|
27943
28021
|
}
|
|
27944
28022
|
static get style() { return IonRouterLinkStyle0; }
|
|
27945
28023
|
static get cmpMeta() { return {
|
|
@@ -28135,7 +28213,7 @@ class RouterOutlet {
|
|
|
28135
28213
|
return true;
|
|
28136
28214
|
}
|
|
28137
28215
|
render() {
|
|
28138
|
-
return hAsync("slot", { key: '
|
|
28216
|
+
return hAsync("slot", { key: '44a7798b8574966f7fd699564b6006411a98a805' });
|
|
28139
28217
|
}
|
|
28140
28218
|
get el() { return getElement(this); }
|
|
28141
28219
|
static get watchers() { return {
|
|
@@ -28169,7 +28247,7 @@ class Row {
|
|
|
28169
28247
|
registerInstance(this, hostRef);
|
|
28170
28248
|
}
|
|
28171
28249
|
render() {
|
|
28172
|
-
return (hAsync(Host, { key: '
|
|
28250
|
+
return (hAsync(Host, { key: 'aea072a5005e3f1f309f0d1ae5be5ee19869b035', class: getIonMode$1(this) }, hAsync("slot", { key: '2a481c2126ac6ca65f0a1bbd07c2d3365409cb78' })));
|
|
28173
28251
|
}
|
|
28174
28252
|
static get style() { return IonRowStyle0; }
|
|
28175
28253
|
static get cmpMeta() { return {
|
|
@@ -28563,8 +28641,8 @@ class Searchbar {
|
|
|
28563
28641
|
const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
|
|
28564
28642
|
const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
|
|
28565
28643
|
const shouldShowCancelButton = this.shouldShowCancelButton();
|
|
28566
|
-
const cancelButton = this.showCancelButton !== 'never' && (hAsync("button", { key: '
|
|
28567
|
-
return (hAsync(Host, { key: '
|
|
28644
|
+
const cancelButton = this.showCancelButton !== 'never' && (hAsync("button", { key: '0ef595eb1628928d4c7fdb166b8e41768700fa6e', "aria-label": cancelButtonText, "aria-hidden": shouldShowCancelButton ? undefined : 'true', type: "button", tabIndex: mode === 'ios' && !shouldShowCancelButton ? -1 : undefined, onMouseDown: this.onCancelSearchbar, onTouchStart: this.onCancelSearchbar, class: "searchbar-cancel-button" }, hAsync("div", { key: 'ea2c9b36d991acf5af7662059cb6b045f683ca94', "aria-hidden": "true" }, mode === 'md' ? (hAsync("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
|
|
28645
|
+
return (hAsync(Host, { key: '17d57ece5852d03047e4d53ddad6c9d88a432a00', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
|
|
28568
28646
|
[mode]: true,
|
|
28569
28647
|
'searchbar-animated': animated,
|
|
28570
28648
|
'searchbar-disabled': this.disabled,
|
|
@@ -28574,14 +28652,14 @@ class Searchbar {
|
|
|
28574
28652
|
'searchbar-has-focus': this.focused,
|
|
28575
28653
|
'searchbar-should-show-clear': this.shouldShowClearButton(),
|
|
28576
28654
|
'searchbar-should-show-cancel': this.shouldShowCancelButton(),
|
|
28577
|
-
}) }, hAsync("div", { key: '
|
|
28655
|
+
}) }, hAsync("div", { key: 'f67c2124e70c24eef0a271516e9c4bdaf7e98ceb', class: "searchbar-input-container" }, hAsync("input", Object.assign({ key: '8c7f7ccc6809cca30ccc8c4e98e349d3f916321d', "aria-label": "search text", disabled: this.disabled, ref: (el) => (this.nativeInput = el), class: "searchbar-input", inputMode: this.inputmode, enterKeyHint: this.enterkeyhint, name: this.name, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, minLength: this.minlength, maxLength: this.maxlength, placeholder: this.placeholder, type: this.type, value: this.getValue(), autoCapitalize: autocapitalize === 'default' ? undefined : autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, spellcheck: this.spellcheck }, this.inheritedAttributes)), mode === 'md' && cancelButton, hAsync("ion-icon", { key: 'f06524d3163b3883bbde937862aa1e0e8f49f6e1', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), hAsync("button", { key: '9f7ba2bec93412ecb674b197be13db1de308bb57', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
|
|
28578
28656
|
/**
|
|
28579
28657
|
* This prevents mobile browsers from
|
|
28580
28658
|
* blurring the input when the clear
|
|
28581
28659
|
* button is activated.
|
|
28582
28660
|
*/
|
|
28583
28661
|
ev.preventDefault();
|
|
28584
|
-
}, onClick: () => this.onClearInput(true) }, hAsync("ion-icon", { key: '
|
|
28662
|
+
}, onClick: () => this.onClearInput(true) }, hAsync("ion-icon", { key: '19fc3dbc722acc47ff7eb3c94ad4de8aed38dff4', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
|
|
28585
28663
|
}
|
|
28586
28664
|
get el() { return getElement(this); }
|
|
28587
28665
|
static get watchers() { return {
|
|
@@ -28648,6 +28726,7 @@ class Segment {
|
|
|
28648
28726
|
this.ionChange = createEvent(this, "ionChange", 7);
|
|
28649
28727
|
this.ionSelect = createEvent(this, "ionSelect", 7);
|
|
28650
28728
|
this.ionStyle = createEvent(this, "ionStyle", 7);
|
|
28729
|
+
this.segmentViewEl = null;
|
|
28651
28730
|
this.onClick = (ev) => {
|
|
28652
28731
|
const current = ev.target;
|
|
28653
28732
|
const previous = this.checked;
|
|
@@ -28662,7 +28741,13 @@ class Segment {
|
|
|
28662
28741
|
if (current !== previous) {
|
|
28663
28742
|
this.emitValueChange();
|
|
28664
28743
|
}
|
|
28665
|
-
if (this.
|
|
28744
|
+
if (this.segmentViewEl) {
|
|
28745
|
+
this.updateSegmentView();
|
|
28746
|
+
if (this.scrollable && previous) {
|
|
28747
|
+
this.checkButton(previous, current);
|
|
28748
|
+
}
|
|
28749
|
+
}
|
|
28750
|
+
else if (this.scrollable || !this.swipeGesture) {
|
|
28666
28751
|
if (previous) {
|
|
28667
28752
|
this.checkButton(previous, current);
|
|
28668
28753
|
}
|
|
@@ -28718,19 +28803,49 @@ class Segment {
|
|
|
28718
28803
|
swipeGestureChanged() {
|
|
28719
28804
|
this.gestureChanged();
|
|
28720
28805
|
}
|
|
28721
|
-
valueChanged(value) {
|
|
28806
|
+
valueChanged(value, oldValue) {
|
|
28807
|
+
// Force a value to exist if we're using a segment view
|
|
28808
|
+
if (this.segmentViewEl && value === undefined) {
|
|
28809
|
+
this.value = this.getButtons()[0].value;
|
|
28810
|
+
return;
|
|
28811
|
+
}
|
|
28812
|
+
if (oldValue !== undefined && value !== undefined) {
|
|
28813
|
+
const buttons = this.getButtons();
|
|
28814
|
+
const previous = buttons.find((button) => button.value === oldValue);
|
|
28815
|
+
const current = buttons.find((button) => button.value === value);
|
|
28816
|
+
if (previous && current) {
|
|
28817
|
+
if (!this.segmentViewEl) {
|
|
28818
|
+
this.checkButton(previous, current);
|
|
28819
|
+
}
|
|
28820
|
+
else if (this.triggerScrollOnValueChange !== false) {
|
|
28821
|
+
this.updateSegmentView();
|
|
28822
|
+
}
|
|
28823
|
+
}
|
|
28824
|
+
}
|
|
28825
|
+
else if (value !== undefined && oldValue === undefined && this.segmentViewEl) {
|
|
28826
|
+
this.updateSegmentView();
|
|
28827
|
+
}
|
|
28722
28828
|
/**
|
|
28723
28829
|
* `ionSelect` is emitted every time the value changes (internal or external changes).
|
|
28724
28830
|
* Used by `ion-segment-button` to determine if the button should be checked.
|
|
28725
28831
|
*/
|
|
28726
28832
|
this.ionSelect.emit({ value });
|
|
28727
|
-
|
|
28833
|
+
// The scroll listener should handle scrolling the active button into view as needed
|
|
28834
|
+
if (!this.segmentViewEl) {
|
|
28835
|
+
this.scrollActiveButtonIntoView();
|
|
28836
|
+
}
|
|
28837
|
+
this.triggerScrollOnValueChange = undefined;
|
|
28728
28838
|
}
|
|
28729
28839
|
disabledChanged() {
|
|
28730
28840
|
this.gestureChanged();
|
|
28731
|
-
|
|
28732
|
-
|
|
28733
|
-
button
|
|
28841
|
+
if (!this.segmentViewEl) {
|
|
28842
|
+
const buttons = this.getButtons();
|
|
28843
|
+
for (const button of buttons) {
|
|
28844
|
+
button.disabled = this.disabled;
|
|
28845
|
+
}
|
|
28846
|
+
}
|
|
28847
|
+
else {
|
|
28848
|
+
this.segmentViewEl.disabled = this.disabled;
|
|
28734
28849
|
}
|
|
28735
28850
|
}
|
|
28736
28851
|
gestureChanged() {
|
|
@@ -28740,6 +28855,10 @@ class Segment {
|
|
|
28740
28855
|
}
|
|
28741
28856
|
connectedCallback() {
|
|
28742
28857
|
this.emitStyle();
|
|
28858
|
+
this.segmentViewEl = this.getSegmentView();
|
|
28859
|
+
}
|
|
28860
|
+
disconnectedCallback() {
|
|
28861
|
+
this.segmentViewEl = null;
|
|
28743
28862
|
}
|
|
28744
28863
|
componentWillLoad() {
|
|
28745
28864
|
this.emitStyle();
|
|
@@ -28773,6 +28892,9 @@ class Segment {
|
|
|
28773
28892
|
if (this.disabled) {
|
|
28774
28893
|
this.disabledChanged();
|
|
28775
28894
|
}
|
|
28895
|
+
// Update segment view based on the initial value,
|
|
28896
|
+
// but do not animate the scroll
|
|
28897
|
+
this.updateSegmentView(false);
|
|
28776
28898
|
}
|
|
28777
28899
|
onStart(detail) {
|
|
28778
28900
|
this.valueBeforeGesture = this.value;
|
|
@@ -28789,6 +28911,7 @@ class Segment {
|
|
|
28789
28911
|
if (value !== undefined) {
|
|
28790
28912
|
if (this.valueBeforeGesture !== value) {
|
|
28791
28913
|
this.emitValueChange();
|
|
28914
|
+
this.updateSegmentView();
|
|
28792
28915
|
}
|
|
28793
28916
|
}
|
|
28794
28917
|
this.valueBeforeGesture = undefined;
|
|
@@ -28816,12 +28939,7 @@ class Segment {
|
|
|
28816
28939
|
setActivated(activated) {
|
|
28817
28940
|
const buttons = this.getButtons();
|
|
28818
28941
|
buttons.forEach((button) => {
|
|
28819
|
-
|
|
28820
|
-
button.classList.add('segment-button-activated');
|
|
28821
|
-
}
|
|
28822
|
-
else {
|
|
28823
|
-
button.classList.remove('segment-button-activated');
|
|
28824
|
-
}
|
|
28942
|
+
button.classList.toggle('segment-button-activated', activated);
|
|
28825
28943
|
});
|
|
28826
28944
|
this.activated = activated;
|
|
28827
28945
|
}
|
|
@@ -28872,6 +28990,7 @@ class Segment {
|
|
|
28872
28990
|
currentIndicator.classList.add('segment-button-indicator-animated');
|
|
28873
28991
|
// Remove the transform to slide the indicator back to the button clicked
|
|
28874
28992
|
currentIndicator.style.setProperty('transform', '');
|
|
28993
|
+
this.scrollActiveButtonIntoView(true);
|
|
28875
28994
|
});
|
|
28876
28995
|
this.value = current.value;
|
|
28877
28996
|
this.setCheckedClasses();
|
|
@@ -28887,6 +29006,60 @@ class Segment {
|
|
|
28887
29006
|
buttons[next].classList.add('segment-button-after-checked');
|
|
28888
29007
|
}
|
|
28889
29008
|
}
|
|
29009
|
+
getSegmentView() {
|
|
29010
|
+
const buttons = this.getButtons();
|
|
29011
|
+
// Get the first button with a contentId
|
|
29012
|
+
const firstContentId = buttons.find((button) => button.contentId);
|
|
29013
|
+
// Get the segment content with an id matching the button's contentId
|
|
29014
|
+
const segmentContent = document.querySelector(`ion-segment-content[id="${firstContentId === null || firstContentId === void 0 ? void 0 : firstContentId.contentId}"]`);
|
|
29015
|
+
// Return the segment view for that matching segment content
|
|
29016
|
+
return segmentContent === null || segmentContent === void 0 ? void 0 : segmentContent.closest('ion-segment-view');
|
|
29017
|
+
}
|
|
29018
|
+
handleSegmentViewScroll(ev) {
|
|
29019
|
+
const { scrollRatio, isManualScroll } = ev.detail;
|
|
29020
|
+
if (!isManualScroll) {
|
|
29021
|
+
return;
|
|
29022
|
+
}
|
|
29023
|
+
const dispatchedFrom = ev.target;
|
|
29024
|
+
const segmentViewEl = this.segmentViewEl;
|
|
29025
|
+
const segmentEl = this.el;
|
|
29026
|
+
// Only update the indicator if the event was dispatched from the correct segment view
|
|
29027
|
+
if (ev.composedPath().includes(segmentViewEl) || (dispatchedFrom === null || dispatchedFrom === void 0 ? void 0 : dispatchedFrom.contains(segmentEl))) {
|
|
29028
|
+
const buttons = this.getButtons();
|
|
29029
|
+
// If no buttons are found or there is no value set then do nothing
|
|
29030
|
+
if (!buttons.length)
|
|
29031
|
+
return;
|
|
29032
|
+
const index = buttons.findIndex((button) => button.value === this.value);
|
|
29033
|
+
const current = buttons[index];
|
|
29034
|
+
const nextIndex = Math.round(scrollRatio * (buttons.length - 1));
|
|
29035
|
+
if (this.lastNextIndex === undefined || this.lastNextIndex !== nextIndex) {
|
|
29036
|
+
this.lastNextIndex = nextIndex;
|
|
29037
|
+
this.triggerScrollOnValueChange = false;
|
|
29038
|
+
this.checkButton(current, buttons[nextIndex]);
|
|
29039
|
+
this.emitValueChange();
|
|
29040
|
+
}
|
|
29041
|
+
}
|
|
29042
|
+
}
|
|
29043
|
+
/**
|
|
29044
|
+
* Finds the related segment view and sets its current content
|
|
29045
|
+
* based on the selected segment button. This method
|
|
29046
|
+
* should be called on initial load of the segment,
|
|
29047
|
+
* after the gesture is completed (if dragging between segments)
|
|
29048
|
+
* and when a segment button is clicked directly.
|
|
29049
|
+
*/
|
|
29050
|
+
updateSegmentView(smoothScroll = true) {
|
|
29051
|
+
const buttons = this.getButtons();
|
|
29052
|
+
const button = buttons.find((btn) => btn.value === this.value);
|
|
29053
|
+
// If the button does not have a contentId then there is
|
|
29054
|
+
// no associated segment view to update
|
|
29055
|
+
if (!(button === null || button === void 0 ? void 0 : button.contentId)) {
|
|
29056
|
+
return;
|
|
29057
|
+
}
|
|
29058
|
+
const segmentView = this.segmentViewEl;
|
|
29059
|
+
if (segmentView) {
|
|
29060
|
+
segmentView.setContent(button.contentId, smoothScroll);
|
|
29061
|
+
}
|
|
29062
|
+
}
|
|
28890
29063
|
scrollActiveButtonIntoView(smoothScroll = true) {
|
|
28891
29064
|
const { scrollable, value, el } = this;
|
|
28892
29065
|
if (scrollable) {
|
|
@@ -29069,14 +29242,14 @@ class Segment {
|
|
|
29069
29242
|
}
|
|
29070
29243
|
render() {
|
|
29071
29244
|
const mode = getIonMode$1(this);
|
|
29072
|
-
return (hAsync(Host, { key: '
|
|
29245
|
+
return (hAsync(Host, { key: '66bd7a565ba73540b3bbe56dd23b95e59bcef9bc', role: "tablist", onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
29073
29246
|
[mode]: true,
|
|
29074
29247
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
29075
29248
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
29076
29249
|
'segment-activated': this.activated,
|
|
29077
29250
|
'segment-disabled': this.disabled,
|
|
29078
29251
|
'segment-scrollable': this.scrollable,
|
|
29079
|
-
}) }, hAsync("slot", { key: '
|
|
29252
|
+
}) }, hAsync("slot", { key: '782c521b1a33729b8eab1c4b879bc3f2ff48ae1b', onSlotchange: this.onSlottedItemsChange })));
|
|
29080
29253
|
}
|
|
29081
29254
|
get el() { return getElement(this); }
|
|
29082
29255
|
static get watchers() { return {
|
|
@@ -29101,7 +29274,7 @@ class Segment {
|
|
|
29101
29274
|
"selectOnFocus": [4, "select-on-focus"],
|
|
29102
29275
|
"activated": [32]
|
|
29103
29276
|
},
|
|
29104
|
-
"$listeners$": [[0, "keydown", "onKeyDown"]],
|
|
29277
|
+
"$listeners$": [[16, "ionSegmentViewScroll", "handleSegmentViewScroll"], [0, "keydown", "onKeyDown"]],
|
|
29105
29278
|
"$lazyBundleId$": "-",
|
|
29106
29279
|
"$attrsToReflect$": [["color", "color"]]
|
|
29107
29280
|
}; }
|
|
@@ -29138,6 +29311,7 @@ class SegmentButton {
|
|
|
29138
29311
|
}
|
|
29139
29312
|
};
|
|
29140
29313
|
this.checked = false;
|
|
29314
|
+
this.contentId = undefined;
|
|
29141
29315
|
this.disabled = false;
|
|
29142
29316
|
this.layout = 'icon-top';
|
|
29143
29317
|
this.type = 'button';
|
|
@@ -29153,6 +29327,26 @@ class SegmentButton {
|
|
|
29153
29327
|
addEventListener$1(segmentEl, 'ionSelect', this.updateState);
|
|
29154
29328
|
addEventListener$1(segmentEl, 'ionStyle', this.updateStyle);
|
|
29155
29329
|
}
|
|
29330
|
+
// Return if there is no contentId defined
|
|
29331
|
+
if (!this.contentId)
|
|
29332
|
+
return;
|
|
29333
|
+
// Attempt to find the Segment Content by its contentId
|
|
29334
|
+
const segmentContent = document.getElementById(this.contentId);
|
|
29335
|
+
// If no associated Segment Content exists, log an error and return
|
|
29336
|
+
if (!segmentContent) {
|
|
29337
|
+
console.error(`Segment Button: Unable to find Segment Content with id="${this.contentId}".`);
|
|
29338
|
+
return;
|
|
29339
|
+
}
|
|
29340
|
+
// Ensure the found element is a valid ION-SEGMENT-CONTENT
|
|
29341
|
+
if (segmentContent.tagName !== 'ION-SEGMENT-CONTENT') {
|
|
29342
|
+
console.error(`Segment Button: Element with id="${this.contentId}" is not an <ion-segment-content> element.`);
|
|
29343
|
+
return;
|
|
29344
|
+
}
|
|
29345
|
+
// Prevent buttons from being disabled when associated with segment content
|
|
29346
|
+
if (this.disabled) {
|
|
29347
|
+
console.warn(`Segment Button: Segment buttons cannot be disabled when associated with an <ion-segment-content>.`);
|
|
29348
|
+
this.disabled = false;
|
|
29349
|
+
}
|
|
29156
29350
|
}
|
|
29157
29351
|
disconnectedCallback() {
|
|
29158
29352
|
const segmentEl = this.segmentEl;
|
|
@@ -29186,7 +29380,7 @@ class SegmentButton {
|
|
|
29186
29380
|
const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
|
|
29187
29381
|
const mode = getIonMode$1(this);
|
|
29188
29382
|
const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
|
|
29189
|
-
return (hAsync(Host, { key: '
|
|
29383
|
+
return (hAsync(Host, { key: 'd50a5d5e2f6206e8523598f258d8217d2903f69b', class: {
|
|
29190
29384
|
[mode]: true,
|
|
29191
29385
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
29192
29386
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
@@ -29202,10 +29396,7 @@ class SegmentButton {
|
|
|
29202
29396
|
'ion-activatable': true,
|
|
29203
29397
|
'ion-activatable-instant': true,
|
|
29204
29398
|
'ion-focusable': true,
|
|
29205
|
-
} }, hAsync("button", Object.assign({ key: '
|
|
29206
|
-
'segment-button-indicator': true,
|
|
29207
|
-
'segment-button-indicator-animated': true,
|
|
29208
|
-
} }, hAsync("div", { key: '65c72a151080998c1e548c87d4d4ebd5c7dda72f', part: "indicator-background", class: "segment-button-indicator-background" }))));
|
|
29399
|
+
} }, hAsync("button", Object.assign({ key: 'b4f6f145286ba8ab79669e11035b906daa85ae7e', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), hAsync("span", { key: '67965996c9ffe70553875e00d3da0ae5b2b1d814', class: "button-inner" }, hAsync("slot", { key: '5087988fe45a8fdf388ec44c395d0b745b207806' })), mode === 'md' && hAsync("ion-ripple-effect", { key: 'b24858de0750bbc769b3183fac0077dfe817ba27' })), hAsync("div", { key: '97b4359432acd1c9da0816360cd1df9472e183f7', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: '0561738ea15b0986f4ed3d8276d5e6f2d13f7e51', part: "indicator-background", class: "segment-button-indicator-background" }))));
|
|
29209
29400
|
}
|
|
29210
29401
|
get el() { return getElement(this); }
|
|
29211
29402
|
static get watchers() { return {
|
|
@@ -29219,6 +29410,7 @@ class SegmentButton {
|
|
|
29219
29410
|
"$flags$": 41,
|
|
29220
29411
|
"$tagName$": "ion-segment-button",
|
|
29221
29412
|
"$members$": {
|
|
29413
|
+
"contentId": [513, "content-id"],
|
|
29222
29414
|
"disabled": [1028],
|
|
29223
29415
|
"layout": [1],
|
|
29224
29416
|
"type": [1],
|
|
@@ -29228,6 +29420,151 @@ class SegmentButton {
|
|
|
29228
29420
|
},
|
|
29229
29421
|
"$listeners$": undefined,
|
|
29230
29422
|
"$lazyBundleId$": "-",
|
|
29423
|
+
"$attrsToReflect$": [["contentId", "content-id"]]
|
|
29424
|
+
}; }
|
|
29425
|
+
}
|
|
29426
|
+
|
|
29427
|
+
const segmentContentCss = ":host{scroll-snap-align:center;scroll-snap-stop:always;-ms-flex-negative:0;flex-shrink:0;width:100%}";
|
|
29428
|
+
var IonSegmentContentStyle0 = segmentContentCss;
|
|
29429
|
+
|
|
29430
|
+
class SegmentContent {
|
|
29431
|
+
constructor(hostRef) {
|
|
29432
|
+
registerInstance(this, hostRef);
|
|
29433
|
+
}
|
|
29434
|
+
render() {
|
|
29435
|
+
return (hAsync(Host, { key: '03684b2999ac64fe13e376fd7e7f279976e9d4f2' }, hAsync("slot", { key: '143031075bf33ca19e7cfd76fc8a67b83ccaf11c' })));
|
|
29436
|
+
}
|
|
29437
|
+
static get style() { return IonSegmentContentStyle0; }
|
|
29438
|
+
static get cmpMeta() { return {
|
|
29439
|
+
"$flags$": 9,
|
|
29440
|
+
"$tagName$": "ion-segment-content",
|
|
29441
|
+
"$members$": undefined,
|
|
29442
|
+
"$listeners$": undefined,
|
|
29443
|
+
"$lazyBundleId$": "-",
|
|
29444
|
+
"$attrsToReflect$": []
|
|
29445
|
+
}; }
|
|
29446
|
+
}
|
|
29447
|
+
|
|
29448
|
+
const segmentViewIosCss = ":host{display:-ms-flexbox;display:flex;height:100%;overflow-x:scroll;-webkit-scroll-snap-type:x mandatory;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}:host::-webkit-scrollbar{display:none}:host(.segment-view-disabled){-ms-touch-action:none;touch-action:none;overflow-x:hidden}:host(.segment-view-scroll-disabled){pointer-events:none}:host(.segment-view-disabled){opacity:0.3}";
|
|
29449
|
+
var IonSegmentViewIosStyle0 = segmentViewIosCss;
|
|
29450
|
+
|
|
29451
|
+
const segmentViewMdCss = ":host{display:-ms-flexbox;display:flex;height:100%;overflow-x:scroll;-webkit-scroll-snap-type:x mandatory;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}:host::-webkit-scrollbar{display:none}:host(.segment-view-disabled){-ms-touch-action:none;touch-action:none;overflow-x:hidden}:host(.segment-view-scroll-disabled){pointer-events:none}:host(.segment-view-disabled){opacity:0.3}";
|
|
29452
|
+
var IonSegmentViewMdStyle0 = segmentViewMdCss;
|
|
29453
|
+
|
|
29454
|
+
class SegmentView {
|
|
29455
|
+
constructor(hostRef) {
|
|
29456
|
+
registerInstance(this, hostRef);
|
|
29457
|
+
this.ionSegmentViewScroll = createEvent(this, "ionSegmentViewScroll", 7);
|
|
29458
|
+
this.scrollEndTimeout = null;
|
|
29459
|
+
this.isTouching = false;
|
|
29460
|
+
this.disabled = false;
|
|
29461
|
+
this.isManualScroll = undefined;
|
|
29462
|
+
}
|
|
29463
|
+
handleScroll(ev) {
|
|
29464
|
+
var _a;
|
|
29465
|
+
const { scrollLeft, scrollWidth, clientWidth } = ev.target;
|
|
29466
|
+
const scrollRatio = scrollLeft / (scrollWidth - clientWidth);
|
|
29467
|
+
this.ionSegmentViewScroll.emit({
|
|
29468
|
+
scrollRatio,
|
|
29469
|
+
isManualScroll: (_a = this.isManualScroll) !== null && _a !== void 0 ? _a : true,
|
|
29470
|
+
});
|
|
29471
|
+
// Reset the timeout to check for scroll end
|
|
29472
|
+
this.resetScrollEndTimeout();
|
|
29473
|
+
}
|
|
29474
|
+
/**
|
|
29475
|
+
* Handle touch start event to know when the user is actively dragging the segment view.
|
|
29476
|
+
*/
|
|
29477
|
+
handleScrollStart() {
|
|
29478
|
+
if (this.scrollEndTimeout) {
|
|
29479
|
+
clearTimeout(this.scrollEndTimeout);
|
|
29480
|
+
this.scrollEndTimeout = null;
|
|
29481
|
+
}
|
|
29482
|
+
this.isTouching = true;
|
|
29483
|
+
}
|
|
29484
|
+
/**
|
|
29485
|
+
* Handle touch end event to know when the user is no longer dragging the segment view.
|
|
29486
|
+
*/
|
|
29487
|
+
handleTouchEnd() {
|
|
29488
|
+
this.isTouching = false;
|
|
29489
|
+
}
|
|
29490
|
+
/**
|
|
29491
|
+
* Reset the scroll end detection timer. This is called on every scroll event.
|
|
29492
|
+
*/
|
|
29493
|
+
resetScrollEndTimeout() {
|
|
29494
|
+
if (this.scrollEndTimeout) {
|
|
29495
|
+
clearTimeout(this.scrollEndTimeout);
|
|
29496
|
+
this.scrollEndTimeout = null;
|
|
29497
|
+
}
|
|
29498
|
+
this.scrollEndTimeout = setTimeout(() => {
|
|
29499
|
+
this.checkForScrollEnd();
|
|
29500
|
+
},
|
|
29501
|
+
// Setting this to a lower value may result in inconsistencies in behavior
|
|
29502
|
+
// across browsers (particularly Firefox).
|
|
29503
|
+
// Ideally, all of this logic is removed once the scroll end event is
|
|
29504
|
+
// supported on all browsers (https://caniuse.com/?search=scrollend)
|
|
29505
|
+
100);
|
|
29506
|
+
}
|
|
29507
|
+
/**
|
|
29508
|
+
* Check if the scroll has ended and the user is not actively touching.
|
|
29509
|
+
* If the conditions are met (active content is enabled and no active touch),
|
|
29510
|
+
* reset the scroll position and emit the scroll end event.
|
|
29511
|
+
*/
|
|
29512
|
+
checkForScrollEnd() {
|
|
29513
|
+
// Only emit scroll end event if the active content is not disabled and
|
|
29514
|
+
// the user is not touching the segment view
|
|
29515
|
+
if (!this.isTouching) {
|
|
29516
|
+
this.isManualScroll = undefined;
|
|
29517
|
+
}
|
|
29518
|
+
}
|
|
29519
|
+
/**
|
|
29520
|
+
* @internal
|
|
29521
|
+
*
|
|
29522
|
+
* This method is used to programmatically set the displayed segment content
|
|
29523
|
+
* in the segment view. Calling this method will update the `value` of the
|
|
29524
|
+
* corresponding segment button.
|
|
29525
|
+
*
|
|
29526
|
+
* @param id: The id of the segment content to display.
|
|
29527
|
+
* @param smoothScroll: Whether to animate the scroll transition.
|
|
29528
|
+
*/
|
|
29529
|
+
async setContent(id, smoothScroll = true) {
|
|
29530
|
+
const contents = this.getSegmentContents();
|
|
29531
|
+
const index = contents.findIndex((content) => content.id === id);
|
|
29532
|
+
if (index === -1)
|
|
29533
|
+
return;
|
|
29534
|
+
this.isManualScroll = false;
|
|
29535
|
+
this.resetScrollEndTimeout();
|
|
29536
|
+
const contentWidth = this.el.offsetWidth;
|
|
29537
|
+
this.el.scrollTo({
|
|
29538
|
+
top: 0,
|
|
29539
|
+
left: index * contentWidth,
|
|
29540
|
+
behavior: smoothScroll ? 'smooth' : 'instant',
|
|
29541
|
+
});
|
|
29542
|
+
}
|
|
29543
|
+
getSegmentContents() {
|
|
29544
|
+
return Array.from(this.el.querySelectorAll('ion-segment-content'));
|
|
29545
|
+
}
|
|
29546
|
+
render() {
|
|
29547
|
+
const { disabled, isManualScroll } = this;
|
|
29548
|
+
return (hAsync(Host, { key: '9f4f11d31c4db776f077e59ae895b35dd4454717', class: {
|
|
29549
|
+
'segment-view-disabled': disabled,
|
|
29550
|
+
'segment-view-scroll-disabled': isManualScroll === false,
|
|
29551
|
+
} }, hAsync("slot", { key: 'ea58b21f031cee2ab2b70580f336deaefa364538' })));
|
|
29552
|
+
}
|
|
29553
|
+
get el() { return getElement(this); }
|
|
29554
|
+
static get style() { return {
|
|
29555
|
+
ios: IonSegmentViewIosStyle0,
|
|
29556
|
+
md: IonSegmentViewMdStyle0
|
|
29557
|
+
}; }
|
|
29558
|
+
static get cmpMeta() { return {
|
|
29559
|
+
"$flags$": 41,
|
|
29560
|
+
"$tagName$": "ion-segment-view",
|
|
29561
|
+
"$members$": {
|
|
29562
|
+
"disabled": [4],
|
|
29563
|
+
"isManualScroll": [32],
|
|
29564
|
+
"setContent": [64]
|
|
29565
|
+
},
|
|
29566
|
+
"$listeners$": [[1, "scroll", "handleScroll"], [1, "touchstart", "handleScrollStart"], [1, "touchend", "handleTouchEnd"]],
|
|
29567
|
+
"$lazyBundleId$": "-",
|
|
29231
29568
|
"$attrsToReflect$": []
|
|
29232
29569
|
}; }
|
|
29233
29570
|
}
|
|
@@ -29388,13 +29725,12 @@ class Select {
|
|
|
29388
29725
|
this.setFocus();
|
|
29389
29726
|
});
|
|
29390
29727
|
await overlay.present();
|
|
29391
|
-
// focus selected option for popovers
|
|
29392
|
-
if (this.interface === 'popover') {
|
|
29393
|
-
const indexOfSelected = this.childOpts.
|
|
29728
|
+
// focus selected option for popovers and modals
|
|
29729
|
+
if (this.interface === 'popover' || this.interface === 'modal') {
|
|
29730
|
+
const indexOfSelected = this.childOpts.findIndex((o) => o.value === this.value);
|
|
29394
29731
|
if (indexOfSelected > -1) {
|
|
29395
29732
|
const selectedItem = overlay.querySelector(`.select-interface-option:nth-child(${indexOfSelected + 1})`);
|
|
29396
29733
|
if (selectedItem) {
|
|
29397
|
-
focusVisibleElement(selectedItem);
|
|
29398
29734
|
/**
|
|
29399
29735
|
* Browsers such as Firefox do not
|
|
29400
29736
|
* correctly delegate focus when manually
|
|
@@ -29408,8 +29744,11 @@ class Select {
|
|
|
29408
29744
|
*/
|
|
29409
29745
|
const interactiveEl = selectedItem.querySelector('ion-radio, ion-checkbox');
|
|
29410
29746
|
if (interactiveEl) {
|
|
29411
|
-
|
|
29747
|
+
// Needs to be called before `focusVisibleElement` to prevent issue with focus event bubbling
|
|
29748
|
+
// and removing `ion-focused` style
|
|
29749
|
+
interactiveEl.setFocus();
|
|
29412
29750
|
}
|
|
29751
|
+
focusVisibleElement(selectedItem);
|
|
29413
29752
|
}
|
|
29414
29753
|
}
|
|
29415
29754
|
else {
|
|
@@ -29418,11 +29757,14 @@ class Select {
|
|
|
29418
29757
|
*/
|
|
29419
29758
|
const firstEnabledOption = overlay.querySelector('ion-radio:not(.radio-disabled), ion-checkbox:not(.checkbox-disabled)');
|
|
29420
29759
|
if (firstEnabledOption) {
|
|
29421
|
-
focusVisibleElement(firstEnabledOption.closest('ion-item'));
|
|
29422
29760
|
/**
|
|
29423
29761
|
* Focus the option for the same reason as we do above.
|
|
29762
|
+
*
|
|
29763
|
+
* Needs to be called before `focusVisibleElement` to prevent issue with focus event bubbling
|
|
29764
|
+
* and removing `ion-focused` style
|
|
29424
29765
|
*/
|
|
29425
|
-
firstEnabledOption.
|
|
29766
|
+
firstEnabledOption.setFocus();
|
|
29767
|
+
focusVisibleElement(firstEnabledOption.closest('ion-item'));
|
|
29426
29768
|
}
|
|
29427
29769
|
}
|
|
29428
29770
|
}
|
|
@@ -29444,6 +29786,9 @@ class Select {
|
|
|
29444
29786
|
if (selectInterface === 'popover') {
|
|
29445
29787
|
return this.openPopover(ev);
|
|
29446
29788
|
}
|
|
29789
|
+
if (selectInterface === 'modal') {
|
|
29790
|
+
return this.openModal();
|
|
29791
|
+
}
|
|
29447
29792
|
return this.openAlert();
|
|
29448
29793
|
}
|
|
29449
29794
|
updateOverlayOptions() {
|
|
@@ -29460,7 +29805,13 @@ class Select {
|
|
|
29460
29805
|
case 'popover':
|
|
29461
29806
|
const popover = overlay.querySelector('ion-select-popover');
|
|
29462
29807
|
if (popover) {
|
|
29463
|
-
popover.options = this.
|
|
29808
|
+
popover.options = this.createOverlaySelectOptions(childOpts, value);
|
|
29809
|
+
}
|
|
29810
|
+
break;
|
|
29811
|
+
case 'modal':
|
|
29812
|
+
const modal = overlay.querySelector('ion-select-modal');
|
|
29813
|
+
if (modal) {
|
|
29814
|
+
modal.options = this.createOverlaySelectOptions(childOpts, value);
|
|
29464
29815
|
}
|
|
29465
29816
|
break;
|
|
29466
29817
|
case 'alert':
|
|
@@ -29515,7 +29866,7 @@ class Select {
|
|
|
29515
29866
|
});
|
|
29516
29867
|
return alertInputs;
|
|
29517
29868
|
}
|
|
29518
|
-
|
|
29869
|
+
createOverlaySelectOptions(data, selectValue) {
|
|
29519
29870
|
const popoverOptions = data.map((option) => {
|
|
29520
29871
|
const value = getOptionValue(option);
|
|
29521
29872
|
// Remove hydrated before copying over classes
|
|
@@ -29575,7 +29926,7 @@ class Select {
|
|
|
29575
29926
|
message: interfaceOptions.message,
|
|
29576
29927
|
multiple,
|
|
29577
29928
|
value,
|
|
29578
|
-
options: this.
|
|
29929
|
+
options: this.createOverlaySelectOptions(this.childOpts, value),
|
|
29579
29930
|
} });
|
|
29580
29931
|
return popoverController.create(popoverOpts);
|
|
29581
29932
|
}
|
|
@@ -29610,6 +29961,17 @@ class Select {
|
|
|
29610
29961
|
] });
|
|
29611
29962
|
return alertController.create(alertOpts);
|
|
29612
29963
|
}
|
|
29964
|
+
openModal() {
|
|
29965
|
+
const { multiple, value, interfaceOptions } = this;
|
|
29966
|
+
const mode = getIonMode$1(this);
|
|
29967
|
+
const modalOpts = Object.assign(Object.assign({}, interfaceOptions), { mode, cssClass: ['select-modal', interfaceOptions.cssClass], component: 'ion-select-modal', componentProps: {
|
|
29968
|
+
header: interfaceOptions.header,
|
|
29969
|
+
multiple,
|
|
29970
|
+
value,
|
|
29971
|
+
options: this.createOverlaySelectOptions(this.childOpts, value),
|
|
29972
|
+
} });
|
|
29973
|
+
return modalController.create(modalOpts);
|
|
29974
|
+
}
|
|
29613
29975
|
/**
|
|
29614
29976
|
* Close the select interface.
|
|
29615
29977
|
*/
|
|
@@ -29817,7 +30179,7 @@ class Select {
|
|
|
29817
30179
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
29818
30180
|
*/
|
|
29819
30181
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
|
|
29820
|
-
return (hAsync(Host, { key: '
|
|
30182
|
+
return (hAsync(Host, { key: '144dfa5c49549a74fe516c65b9b8104a477ac789', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
29821
30183
|
[mode]: true,
|
|
29822
30184
|
'in-item': inItem,
|
|
29823
30185
|
'in-item-color': hostContext('ion-item.ion-color', el),
|
|
@@ -29833,7 +30195,7 @@ class Select {
|
|
|
29833
30195
|
[`select-justify-${justify}`]: justifyEnabled,
|
|
29834
30196
|
[`select-shape-${shape}`]: shape !== undefined,
|
|
29835
30197
|
[`select-label-placement-${labelPlacement}`]: true,
|
|
29836
|
-
}) }, hAsync("label", { key: '
|
|
30198
|
+
}) }, hAsync("label", { key: '0edcfcbac575a9dccc77991531b6980d1caebf42', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), hAsync("div", { key: '348151d90cb093f5d21c7d4a834264ac4a312c40', class: "select-wrapper-inner" }, hAsync("slot", { key: '8b7708c7f81217435c58276da0c08bba766d9500', name: "start" }), hAsync("div", { key: '10c520a335da0a0d1cf40f9365597beb244d3b48', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: '0f15c40a5495e98e29d2a21ba21e0bc6f1c0125a', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: 'c87faad2e5ebf7f9453397d7ede43abd64d21294', class: "select-highlight" }))));
|
|
29837
30199
|
}
|
|
29838
30200
|
get el() { return getElement(this); }
|
|
29839
30201
|
static get watchers() { return {
|
|
@@ -29913,6 +30275,108 @@ const textForValue = (opts, value, compareWith) => {
|
|
|
29913
30275
|
let selectIds = 0;
|
|
29914
30276
|
const OPTION_CLASS = 'select-interface-option';
|
|
29915
30277
|
|
|
30278
|
+
const ionicSelectModalMdCss = ".sc-ion-select-modal-ionic-h{height:100%}ion-list.sc-ion-select-modal-ionic ion-radio.sc-ion-select-modal-ionic::part(container){display:none}ion-list.sc-ion-select-modal-ionic ion-radio.sc-ion-select-modal-ionic::part(label){margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}ion-item.sc-ion-select-modal-ionic{--inner-border-width:0}.item-radio-checked.sc-ion-select-modal-ionic{--background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.08);--background-focused:var(--ion-color-primary, #0054e9);--background-focused-opacity:0.2;--background-hover:var(--ion-color-primary, #0054e9);--background-hover-opacity:0.12}.item-checkbox-checked.sc-ion-select-modal-ionic{--background-activated:var(--ion-item-color, var(--ion-text-color, #000));--background-focused:var(--ion-item-color, var(--ion-text-color, #000));--background-hover:var(--ion-item-color, var(--ion-text-color, #000));--color:var(--ion-color-primary, #0054e9)}";
|
|
30279
|
+
var IonSelectModalIonicStyle0 = ionicSelectModalMdCss;
|
|
30280
|
+
|
|
30281
|
+
const selectModalIosCss = ".sc-ion-select-modal-ios-h{height:100%}";
|
|
30282
|
+
var IonSelectModalIosStyle0 = selectModalIosCss;
|
|
30283
|
+
|
|
30284
|
+
const selectModalMdCss = ".sc-ion-select-modal-md-h{height:100%}ion-list.sc-ion-select-modal-md ion-radio.sc-ion-select-modal-md::part(container){display:none}ion-list.sc-ion-select-modal-md ion-radio.sc-ion-select-modal-md::part(label){margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}ion-item.sc-ion-select-modal-md{--inner-border-width:0}.item-radio-checked.sc-ion-select-modal-md{--background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.08);--background-focused:var(--ion-color-primary, #0054e9);--background-focused-opacity:0.2;--background-hover:var(--ion-color-primary, #0054e9);--background-hover-opacity:0.12}.item-checkbox-checked.sc-ion-select-modal-md{--background-activated:var(--ion-item-color, var(--ion-text-color, #000));--background-focused:var(--ion-item-color, var(--ion-text-color, #000));--background-hover:var(--ion-item-color, var(--ion-text-color, #000));--color:var(--ion-color-primary, #0054e9)}";
|
|
30285
|
+
var IonSelectModalMdStyle0 = selectModalMdCss;
|
|
30286
|
+
|
|
30287
|
+
class SelectModal {
|
|
30288
|
+
constructor(hostRef) {
|
|
30289
|
+
registerInstance(this, hostRef);
|
|
30290
|
+
this.header = undefined;
|
|
30291
|
+
this.multiple = undefined;
|
|
30292
|
+
this.options = [];
|
|
30293
|
+
}
|
|
30294
|
+
closeModal() {
|
|
30295
|
+
const modal = this.el.closest('ion-modal');
|
|
30296
|
+
if (modal) {
|
|
30297
|
+
modal.dismiss();
|
|
30298
|
+
}
|
|
30299
|
+
}
|
|
30300
|
+
findOptionFromEvent(ev) {
|
|
30301
|
+
const { options } = this;
|
|
30302
|
+
return options.find((o) => o.value === ev.target.value);
|
|
30303
|
+
}
|
|
30304
|
+
getValues(ev) {
|
|
30305
|
+
const { multiple, options } = this;
|
|
30306
|
+
if (multiple) {
|
|
30307
|
+
// this is a modal with checkboxes (multiple value select)
|
|
30308
|
+
// return an array of all the checked values
|
|
30309
|
+
return options.filter((o) => o.checked).map((o) => o.value);
|
|
30310
|
+
}
|
|
30311
|
+
// this is a modal with radio buttons (single value select)
|
|
30312
|
+
// return the value that was clicked, otherwise undefined
|
|
30313
|
+
const option = ev ? this.findOptionFromEvent(ev) : null;
|
|
30314
|
+
return option ? option.value : undefined;
|
|
30315
|
+
}
|
|
30316
|
+
callOptionHandler(ev) {
|
|
30317
|
+
const option = this.findOptionFromEvent(ev);
|
|
30318
|
+
const values = this.getValues(ev);
|
|
30319
|
+
if (option === null || option === void 0 ? void 0 : option.handler) {
|
|
30320
|
+
safeCall(option.handler, values);
|
|
30321
|
+
}
|
|
30322
|
+
}
|
|
30323
|
+
setChecked(ev) {
|
|
30324
|
+
const { multiple } = this;
|
|
30325
|
+
const option = this.findOptionFromEvent(ev);
|
|
30326
|
+
// this is a modal with checkboxes (multiple value select)
|
|
30327
|
+
// we need to set the checked value for this option
|
|
30328
|
+
if (multiple && option) {
|
|
30329
|
+
option.checked = ev.detail.checked;
|
|
30330
|
+
}
|
|
30331
|
+
}
|
|
30332
|
+
renderRadioOptions() {
|
|
30333
|
+
const checked = this.options.filter((o) => o.checked).map((o) => o.value)[0];
|
|
30334
|
+
return (hAsync("ion-radio-group", { value: checked, onIonChange: (ev) => this.callOptionHandler(ev) }, this.options.map((option) => (hAsync("ion-item", { class: Object.assign({
|
|
30335
|
+
// TODO FW-4784
|
|
30336
|
+
'item-radio-checked': option.value === checked
|
|
30337
|
+
}, getClassMap(option.cssClass)) }, hAsync("ion-radio", { value: option.value, disabled: option.disabled, justify: "start", labelPlacement: "end", onClick: () => this.closeModal(), onKeyUp: (ev) => {
|
|
30338
|
+
if (ev.key === ' ') {
|
|
30339
|
+
/**
|
|
30340
|
+
* Selecting a radio option with keyboard navigation,
|
|
30341
|
+
* either through the Enter or Space keys, should
|
|
30342
|
+
* dismiss the modal.
|
|
30343
|
+
*/
|
|
30344
|
+
this.closeModal();
|
|
30345
|
+
}
|
|
30346
|
+
} }, option.text))))));
|
|
30347
|
+
}
|
|
30348
|
+
renderCheckboxOptions() {
|
|
30349
|
+
return this.options.map((option) => (hAsync("ion-item", { class: Object.assign({
|
|
30350
|
+
// TODO FW-4784
|
|
30351
|
+
'item-checkbox-checked': option.checked
|
|
30352
|
+
}, getClassMap(option.cssClass)) }, hAsync("ion-checkbox", { value: option.value, disabled: option.disabled, checked: option.checked, justify: "start", labelPlacement: "end", onIonChange: (ev) => {
|
|
30353
|
+
this.setChecked(ev);
|
|
30354
|
+
this.callOptionHandler(ev);
|
|
30355
|
+
} }, option.text))));
|
|
30356
|
+
}
|
|
30357
|
+
render() {
|
|
30358
|
+
return (hAsync(Host, { key: 'f4b92f4fc3d646f9a327e43a9622abaf69659c28', class: getIonMode$1(this) }, hAsync("ion-header", { key: '11232ef496e7abd69e55cef988963a4869a7b01e' }, hAsync("ion-toolbar", { key: 'e7c41878691a504d44c658db02807867df542588' }, this.header !== undefined && hAsync("ion-title", { key: 'fcf9d33e0f3e0076ff14805de68848f9ef199cca' }, this.header), hAsync("ion-buttons", { key: '748a967ae0ce68bc2fd018a6b9ebe0e4b810f6ac', slot: "end" }, hAsync("ion-button", { key: 'f5e60791870b5085a31b7af70ed4bb3fb83eb185', onClick: () => this.closeModal() }, "Close")))), hAsync("ion-content", { key: '159797957b6f788a9b393d91864c18db34481c68' }, hAsync("ion-list", { key: '4124554fe8b2411637cbf02f08e50e0d8f804175' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
|
|
30359
|
+
}
|
|
30360
|
+
get el() { return getElement(this); }
|
|
30361
|
+
static get style() { return {
|
|
30362
|
+
ionic: IonSelectModalIonicStyle0,
|
|
30363
|
+
ios: IonSelectModalIosStyle0,
|
|
30364
|
+
md: IonSelectModalMdStyle0
|
|
30365
|
+
}; }
|
|
30366
|
+
static get cmpMeta() { return {
|
|
30367
|
+
"$flags$": 34,
|
|
30368
|
+
"$tagName$": "ion-select-modal",
|
|
30369
|
+
"$members$": {
|
|
30370
|
+
"header": [1],
|
|
30371
|
+
"multiple": [4],
|
|
30372
|
+
"options": [16]
|
|
30373
|
+
},
|
|
30374
|
+
"$listeners$": undefined,
|
|
30375
|
+
"$lazyBundleId$": "-",
|
|
30376
|
+
"$attrsToReflect$": []
|
|
30377
|
+
}; }
|
|
30378
|
+
}
|
|
30379
|
+
|
|
29916
30380
|
const selectOptionCss = ":host{display:none}";
|
|
29917
30381
|
var IonSelectOptionStyle0 = selectOptionCss;
|
|
29918
30382
|
|
|
@@ -29924,7 +30388,7 @@ class SelectOption {
|
|
|
29924
30388
|
this.value = undefined;
|
|
29925
30389
|
}
|
|
29926
30390
|
render() {
|
|
29927
|
-
return hAsync(Host, { key: '
|
|
30391
|
+
return hAsync(Host, { key: '2e6fa159464f04f6d8720f960141f67918bc7534', role: "option", id: this.inputId, class: getIonMode$1(this) });
|
|
29928
30392
|
}
|
|
29929
30393
|
get el() { return getElement(this); }
|
|
29930
30394
|
static get style() { return IonSelectOptionStyle0; }
|
|
@@ -30044,7 +30508,7 @@ class SelectPopover {
|
|
|
30044
30508
|
render() {
|
|
30045
30509
|
const { header, message, options, subHeader } = this;
|
|
30046
30510
|
const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
|
|
30047
|
-
return (hAsync(Host, { key: '
|
|
30511
|
+
return (hAsync(Host, { key: 'dd0990db4de4f175b176b27f35501dd1604ca400', class: getIonMode$1(this) }, hAsync("ion-list", { key: 'cea2bc3687b8b2490a2a9ff4a1e16cd34169558e' }, header !== undefined && hAsync("ion-list-header", { key: '194aebb53453c43f913daae45a1a3066a1708c4c' }, header), hasSubHeaderOrMessage && (hAsync("ion-item", { key: 'b706b07a3c63ad8104d2db413e210c735ec1bec9' }, hAsync("ion-label", { key: '6e52b5b4cf6b04ff3dd5671d64264233de4190d5', class: "ion-text-wrap" }, subHeader !== undefined && hAsync("h3", { key: '6ef4440d17f5db8c96c63b9aa5073f4fe4b8ad62' }, subHeader), message !== undefined && hAsync("p", { key: 'c7b3b76c30ecd606c0e985a0258c13d3a75756e7' }, message)))), this.renderOptions(options))));
|
|
30048
30512
|
}
|
|
30049
30513
|
get el() { return getElement(this); }
|
|
30050
30514
|
static get style() { return {
|
|
@@ -30092,11 +30556,11 @@ class SkeletonText {
|
|
|
30092
30556
|
const animated = this.animated && config.getBoolean('animated', true);
|
|
30093
30557
|
const inMedia = hostContext('ion-avatar', this.el) || hostContext('ion-thumbnail', this.el);
|
|
30094
30558
|
const mode = getIonMode$1(this);
|
|
30095
|
-
return (hAsync(Host, { key: '
|
|
30559
|
+
return (hAsync(Host, { key: 'fdfabf9364caf507450239b62be24f08873bd650', class: {
|
|
30096
30560
|
[mode]: true,
|
|
30097
30561
|
'skeleton-text-animated': animated,
|
|
30098
30562
|
'in-media': inMedia,
|
|
30099
|
-
} }, hAsync("span", { key: '
|
|
30563
|
+
} }, hAsync("span", { key: '3482c88dcc177547185ce87972afa064a542367d' }, "\u00A0")));
|
|
30100
30564
|
}
|
|
30101
30565
|
get el() { return getElement(this); }
|
|
30102
30566
|
static get style() { return IonSkeletonTextStyle0; }
|
|
@@ -30149,7 +30613,7 @@ class Spinner {
|
|
|
30149
30613
|
svgs.push(buildLine(spinner, duration, i, spinner.lines));
|
|
30150
30614
|
}
|
|
30151
30615
|
}
|
|
30152
|
-
return (hAsync(Host, { key: '
|
|
30616
|
+
return (hAsync(Host, { key: '9d30ee9f5aa0dd0e220da07e75d05b8b2435224d', class: createColorClasses$1(self.color, {
|
|
30153
30617
|
[mode]: true,
|
|
30154
30618
|
[`spinner-${spinnerName}`]: true,
|
|
30155
30619
|
'spinner-paused': self.paused || config.getBoolean('_testing'),
|
|
@@ -30249,12 +30713,12 @@ class SplitPane {
|
|
|
30249
30713
|
}
|
|
30250
30714
|
render() {
|
|
30251
30715
|
const mode = getIonMode$1(this);
|
|
30252
|
-
return (hAsync(Host, { key: '
|
|
30716
|
+
return (hAsync(Host, { key: '1ca0b0299d03605bb358112ca56cbafbe58f00f5', class: {
|
|
30253
30717
|
[mode]: true,
|
|
30254
30718
|
// Used internally for styling
|
|
30255
30719
|
[`split-pane-${mode}`]: true,
|
|
30256
30720
|
'split-pane-visible': this.visible,
|
|
30257
|
-
} }, hAsync("slot", { key: '
|
|
30721
|
+
} }, hAsync("slot", { key: 'abe231361727ae7fc63edd592a4490caac1909fb' })));
|
|
30258
30722
|
}
|
|
30259
30723
|
get el() { return getElement(this); }
|
|
30260
30724
|
static get watchers() { return {
|
|
@@ -30323,10 +30787,10 @@ class Tab {
|
|
|
30323
30787
|
}
|
|
30324
30788
|
render() {
|
|
30325
30789
|
const { tab, active, component } = this;
|
|
30326
|
-
return (hAsync(Host, { key: '
|
|
30790
|
+
return (hAsync(Host, { key: 'cb75d0877979b3b8df8f7e1952bfa9677da1eaa5', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
|
|
30327
30791
|
'ion-page': component === undefined,
|
|
30328
30792
|
'tab-hidden': !active,
|
|
30329
|
-
} }, hAsync("slot", { key: '
|
|
30793
|
+
} }, hAsync("slot", { key: '37fbb7b7a6b03eb93b1dacd2dc1025b78eb2aa6b' })));
|
|
30330
30794
|
}
|
|
30331
30795
|
get el() { return getElement(this); }
|
|
30332
30796
|
static get watchers() { return {
|
|
@@ -30404,11 +30868,11 @@ class TabBar {
|
|
|
30404
30868
|
const { color, translucent, keyboardVisible } = this;
|
|
30405
30869
|
const mode = getIonMode$1(this);
|
|
30406
30870
|
const shouldHide = keyboardVisible && this.el.getAttribute('slot') !== 'top';
|
|
30407
|
-
return (hAsync(Host, { key: '
|
|
30871
|
+
return (hAsync(Host, { key: 'a87fd2ea5df053705a37ea7ffec043e75c4a9907', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses$1(color, {
|
|
30408
30872
|
[mode]: true,
|
|
30409
30873
|
'tab-bar-translucent': translucent,
|
|
30410
30874
|
'tab-bar-hidden': shouldHide,
|
|
30411
|
-
}) }, hAsync("slot", { key: '
|
|
30875
|
+
}) }, hAsync("slot", { key: '81a6223299b6cab29d7ddced590e9152e2b3ded0' })));
|
|
30412
30876
|
}
|
|
30413
30877
|
get el() { return getElement(this); }
|
|
30414
30878
|
static get watchers() { return {
|
|
@@ -30506,7 +30970,7 @@ class TabButton {
|
|
|
30506
30970
|
rel,
|
|
30507
30971
|
target,
|
|
30508
30972
|
};
|
|
30509
|
-
return (hAsync(Host, { key: '
|
|
30973
|
+
return (hAsync(Host, { key: '5976c45943ea7ea8e7c1a85fc9996de421439f08', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
|
|
30510
30974
|
[mode]: true,
|
|
30511
30975
|
'tab-selected': selected,
|
|
30512
30976
|
'tab-disabled': disabled,
|
|
@@ -30518,7 +30982,7 @@ class TabButton {
|
|
|
30518
30982
|
'ion-activatable': true,
|
|
30519
30983
|
'ion-selectable': true,
|
|
30520
30984
|
'ion-focusable': true,
|
|
30521
|
-
} }, hAsync("a", Object.assign({ key: '
|
|
30985
|
+
} }, hAsync("a", Object.assign({ key: '1db09d861b67ff292018fb4b0dc7b85bd4677eb8' }, attrs, { class: "button-native", part: "native", role: "tab", "aria-selected": selected ? 'true' : null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? '-1' : undefined }, inheritedAttributes), hAsync("span", { key: '4381eafcb27e8c7bb0d86d4f115ceb0caf03b9b4', class: "button-inner" }, hAsync("slot", { key: '1981135f6fbb88376c1bd923c55c70fe8b5c5159' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '0509bc7155d055d1ed710600e9cf4df135881491', type: "unbounded" }))));
|
|
30522
30986
|
}
|
|
30523
30987
|
get el() { return getElement(this); }
|
|
30524
30988
|
static get style() { return {
|
|
@@ -30694,7 +31158,7 @@ class Tabs {
|
|
|
30694
31158
|
return Array.from(this.el.querySelectorAll('ion-tab'));
|
|
30695
31159
|
}
|
|
30696
31160
|
render() {
|
|
30697
|
-
return (hAsync(Host, { key: '
|
|
31161
|
+
return (hAsync(Host, { key: 'e01ccf6bfaccad094515be50e407399c733fc226', onIonTabButtonClick: this.onTabClicked }, hAsync("slot", { key: '38d2d01dbfd8a08f01e6f0e27274b21d75424e37', name: "top" }), hAsync("div", { key: '7e894f0f423e2d43e1c68daff5f9f6c442fad237', class: "tabs-inner" }, hAsync("slot", { key: 'df16be529a0370a26d0adf850530b31607507c23' })), hAsync("slot", { key: '44642e1cb24c3281c43db75fd69a32fe0defe40a', name: "bottom" })));
|
|
30698
31162
|
}
|
|
30699
31163
|
get el() { return getElement(this); }
|
|
30700
31164
|
static get style() { return IonTabsStyle0; }
|
|
@@ -30736,9 +31200,9 @@ class Text {
|
|
|
30736
31200
|
}
|
|
30737
31201
|
render() {
|
|
30738
31202
|
const mode = getIonMode$1(this);
|
|
30739
|
-
return (hAsync(Host, { key: '
|
|
31203
|
+
return (hAsync(Host, { key: 'e134d70c04344b708a2ecf6253722781ad2ca826', class: createColorClasses$1(this.color, {
|
|
30740
31204
|
[mode]: true,
|
|
30741
|
-
}) }, hAsync("slot", { key: '
|
|
31205
|
+
}) }, hAsync("slot", { key: 'da79c760f7ebbcd007ce110439f05a62cb22eac8' })));
|
|
30742
31206
|
}
|
|
30743
31207
|
static get style() { return IonTextStyle0; }
|
|
30744
31208
|
static get cmpMeta() { return {
|
|
@@ -31120,7 +31584,7 @@ class Textarea {
|
|
|
31120
31584
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
31121
31585
|
*/
|
|
31122
31586
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
|
|
31123
|
-
return (hAsync(Host, { key: '
|
|
31587
|
+
return (hAsync(Host, { key: 'd6e25c83d8eab8cb1a5b6ab411c9a13847f69f8d', class: createColorClasses$1(this.color, {
|
|
31124
31588
|
[mode]: true,
|
|
31125
31589
|
'has-value': hasValue,
|
|
31126
31590
|
'has-focus': hasFocus,
|
|
@@ -31129,7 +31593,7 @@ class Textarea {
|
|
|
31129
31593
|
[`textarea-shape-${shape}`]: shape !== undefined,
|
|
31130
31594
|
[`textarea-label-placement-${labelPlacement}`]: true,
|
|
31131
31595
|
'textarea-disabled': disabled,
|
|
31132
|
-
}) }, hAsync("label", { key: '
|
|
31596
|
+
}) }, hAsync("label", { key: 'f840a5be2b776a4b9c18c6da24e0b7d3d4838fee', class: "textarea-wrapper", htmlFor: inputId }, this.renderLabelContainer(), hAsync("div", { key: '979461fc0d4684926d79d75759c63c6867b7622b', class: "textarea-wrapper-inner" }, hAsync("div", { key: '88f0d5d4bac29597cc2588e5b2ed72fb4fbe153d', class: "start-slot-wrapper" }, hAsync("slot", { key: '21dcca0e59c1260e3d0d1e126c1c590de15c4bad', name: "start" })), hAsync("div", { key: '3c48a4bb3d763a389d3429123e7c110064b9b8d4', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, hAsync("textarea", Object.assign({ key: '1550599ad15b3f215c104c014e90711f073ace8b', class: "native-textarea", ref: (el) => (this.nativeInput = el), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: this.placeholder || '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, cols: this.cols, rows: this.rows, wrap: this.wrap, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeyDown, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId }, this.inheritedAttributes), value)), hAsync("div", { key: '4f01ab4d2994a6de6f49eb9ed2e310d00daf21b2', class: "end-slot-wrapper" }, hAsync("slot", { key: '501e288b6807e039972bb4f0b63906114255518a', name: "end" }))), shouldRenderHighlight && hAsync("div", { key: 'd3008eed34494aa9f8e98a28eac3b465dc4c2bd0', class: "textarea-highlight" })), this.renderBottomContent()));
|
|
31133
31597
|
}
|
|
31134
31598
|
get el() { return getElement(this); }
|
|
31135
31599
|
static get watchers() { return {
|
|
@@ -31191,7 +31655,7 @@ class Thumbnail {
|
|
|
31191
31655
|
registerInstance(this, hostRef);
|
|
31192
31656
|
}
|
|
31193
31657
|
render() {
|
|
31194
|
-
return (hAsync(Host, { key: '
|
|
31658
|
+
return (hAsync(Host, { key: 'cfa9aeb1d4fd624a9732c5230d29dd887e4b7771', class: getIonMode$1(this) }, hAsync("slot", { key: '29bc6e64063cba44e2643228df54394883933918' })));
|
|
31195
31659
|
}
|
|
31196
31660
|
static get style() { return IonThumbnailStyle0; }
|
|
31197
31661
|
static get cmpMeta() { return {
|
|
@@ -31638,10 +32102,10 @@ const createSwipeToDismissGesture = (el, toastPosition, onDismiss) => {
|
|
|
31638
32102
|
return gesture;
|
|
31639
32103
|
};
|
|
31640
32104
|
|
|
31641
|
-
const toastIosCss = ":host{--border-width:0;--border-style:none;--border-color:initial;--box-shadow:none;--min-width:auto;--width:auto;--min-height:auto;--height:auto;--max-height:auto;--white-space:normal;top:0;display:block;position:absolute;width:100%;height:100%;outline:none;color:var(--color);font-family:var(--ion-font-family, inherit);contain:strict;z-index:1001;pointer-events:none}:host{inset-inline-start:0}:host(.overlay-hidden){display:none}:host(.ion-color){--button-color:inherit;color:var(--ion-color-contrast)}:host(.ion-color) .toast-button-cancel{color:inherit}:host(.ion-color) .toast-wrapper{background:var(--ion-color-base)}.toast-wrapper{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}.toast-wrapper{inset-inline-start:var(--start);inset-inline-end:var(--end)}.toast-wrapper.toast-top{-webkit-transform:translate3d(0, -100%, 0);transform:translate3d(0, -100%, 0);top:0}.toast-wrapper.toast-bottom{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0);bottom:0}.toast-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;
|
|
32105
|
+
const toastIosCss = ":host{--border-width:0;--border-style:none;--border-color:initial;--box-shadow:none;--min-width:auto;--width:auto;--min-height:auto;--height:auto;--max-height:auto;--white-space:normal;top:0;display:block;position:absolute;width:100%;height:100%;outline:none;color:var(--color);font-family:var(--ion-font-family, inherit);contain:strict;z-index:1001;pointer-events:none}:host{inset-inline-start:0}:host(.overlay-hidden){display:none}:host(.ion-color){--button-color:inherit;color:var(--ion-color-contrast)}:host(.ion-color) .toast-button-cancel{color:inherit}:host(.ion-color) .toast-wrapper{background:var(--ion-color-base)}.toast-wrapper{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);pointer-events:auto}.toast-wrapper{inset-inline-start:var(--start);inset-inline-end:var(--end)}.toast-wrapper.toast-top{-webkit-transform:translate3d(0, -100%, 0);transform:translate3d(0, -100%, 0);top:0}.toast-wrapper.toast-bottom{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0);bottom:0}.toast-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:inherit;min-height:inherit;max-height:inherit;contain:content}.toast-layout-stacked .toast-container{-ms-flex-wrap:wrap;flex-wrap:wrap}.toast-layout-baseline .toast-content{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}.toast-icon{-webkit-margin-start:16px;margin-inline-start:16px}.toast-content{min-width:0}.toast-message{-ms-flex:1;flex:1;white-space:var(--white-space)}.toast-button-group{display:-ms-flexbox;display:flex}.toast-layout-stacked .toast-button-group{-ms-flex-pack:end;justify-content:end;width:100%}.toast-button{border:0;outline:none;color:var(--button-color);z-index:0}.toast-icon,.toast-button-icon{font-size:1.4em}.toast-button-inner{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}@media (any-hover: hover){.toast-button:hover{cursor:pointer}}:host{--background:var(--ion-color-step-50, var(--ion-background-color-step-50, #f2f2f2));--border-radius:14px;--button-color:var(--ion-color-primary, #0054e9);--color:var(--ion-color-step-850, var(--ion-text-color-step-150, #262626));--max-width:700px;--max-height:478px;--start:10px;--end:10px;font-size:clamp(14px, 0.875rem, 43.4px)}.toast-wrapper{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:auto;margin-bottom:auto;display:block;position:absolute;z-index:10}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){:host(.toast-translucent) .toast-wrapper{background:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}:host(.ion-color.toast-translucent) .toast-wrapper{background:rgba(var(--ion-color-base-rgb), 0.8)}}.toast-wrapper.toast-middle{opacity:0.01}.toast-content{-webkit-padding-start:15px;padding-inline-start:15px;-webkit-padding-end:15px;padding-inline-end:15px;padding-top:15px;padding-bottom:15px}.toast-header{margin-bottom:2px;font-weight:500}.toast-button{-webkit-padding-start:15px;padding-inline-start:15px;-webkit-padding-end:15px;padding-inline-end:15px;padding-top:10px;padding-bottom:10px;min-height:44px;-webkit-transition:background-color, opacity 100ms linear;transition:background-color, opacity 100ms linear;border:0;background-color:transparent;font-family:var(--ion-font-family);font-size:clamp(17px, 1.0625rem, 21.998px);font-weight:500;overflow:hidden}.toast-button.ion-activated{opacity:0.4}@media (any-hover: hover){.toast-button:hover{opacity:0.6}}";
|
|
31642
32106
|
var IonToastIosStyle0 = toastIosCss;
|
|
31643
32107
|
|
|
31644
|
-
const toastMdCss = ":host{--border-width:0;--border-style:none;--border-color:initial;--box-shadow:none;--min-width:auto;--width:auto;--min-height:auto;--height:auto;--max-height:auto;--white-space:normal;top:0;display:block;position:absolute;width:100%;height:100%;outline:none;color:var(--color);font-family:var(--ion-font-family, inherit);contain:strict;z-index:1001;pointer-events:none}:host{inset-inline-start:0}:host(.overlay-hidden){display:none}:host(.ion-color){--button-color:inherit;color:var(--ion-color-contrast)}:host(.ion-color) .toast-button-cancel{color:inherit}:host(.ion-color) .toast-wrapper{background:var(--ion-color-base)}.toast-wrapper{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}.toast-wrapper{inset-inline-start:var(--start);inset-inline-end:var(--end)}.toast-wrapper.toast-top{-webkit-transform:translate3d(0, -100%, 0);transform:translate3d(0, -100%, 0);top:0}.toast-wrapper.toast-bottom{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0);bottom:0}.toast-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;
|
|
32108
|
+
const toastMdCss = ":host{--border-width:0;--border-style:none;--border-color:initial;--box-shadow:none;--min-width:auto;--width:auto;--min-height:auto;--height:auto;--max-height:auto;--white-space:normal;top:0;display:block;position:absolute;width:100%;height:100%;outline:none;color:var(--color);font-family:var(--ion-font-family, inherit);contain:strict;z-index:1001;pointer-events:none}:host{inset-inline-start:0}:host(.overlay-hidden){display:none}:host(.ion-color){--button-color:inherit;color:var(--ion-color-contrast)}:host(.ion-color) .toast-button-cancel{color:inherit}:host(.ion-color) .toast-wrapper{background:var(--ion-color-base)}.toast-wrapper{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);pointer-events:auto}.toast-wrapper{inset-inline-start:var(--start);inset-inline-end:var(--end)}.toast-wrapper.toast-top{-webkit-transform:translate3d(0, -100%, 0);transform:translate3d(0, -100%, 0);top:0}.toast-wrapper.toast-bottom{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0);bottom:0}.toast-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:inherit;min-height:inherit;max-height:inherit;contain:content}.toast-layout-stacked .toast-container{-ms-flex-wrap:wrap;flex-wrap:wrap}.toast-layout-baseline .toast-content{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}.toast-icon{-webkit-margin-start:16px;margin-inline-start:16px}.toast-content{min-width:0}.toast-message{-ms-flex:1;flex:1;white-space:var(--white-space)}.toast-button-group{display:-ms-flexbox;display:flex}.toast-layout-stacked .toast-button-group{-ms-flex-pack:end;justify-content:end;width:100%}.toast-button{border:0;outline:none;color:var(--button-color);z-index:0}.toast-icon,.toast-button-icon{font-size:1.4em}.toast-button-inner{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}@media (any-hover: hover){.toast-button:hover{cursor:pointer}}:host{--background:var(--ion-color-step-800, var(--ion-background-color-step-800, #333333));--border-radius:4px;--box-shadow:0 3px 5px -1px rgba(0, 0, 0, 0.2), 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12);--button-color:var(--ion-color-primary, #0054e9);--color:var(--ion-color-step-50, var(--ion-text-color-step-950, #f2f2f2));--max-width:700px;--start:8px;--end:8px;font-size:0.875rem}.toast-wrapper{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:auto;margin-bottom:auto;display:block;position:absolute;opacity:0.01;z-index:10}.toast-content{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:14px;padding-bottom:14px}.toast-header{margin-bottom:2px;font-weight:500;line-height:1.25rem}.toast-message{line-height:1.25rem}.toast-layout-baseline .toast-button-group-start{-webkit-margin-start:8px;margin-inline-start:8px}.toast-layout-stacked .toast-button-group-start{-webkit-margin-end:8px;margin-inline-end:8px;margin-top:8px}.toast-layout-baseline .toast-button-group-end{-webkit-margin-end:8px;margin-inline-end:8px}.toast-layout-stacked .toast-button-group-end{-webkit-margin-end:8px;margin-inline-end:8px;margin-bottom:8px}.toast-button{-webkit-padding-start:15px;padding-inline-start:15px;-webkit-padding-end:15px;padding-inline-end:15px;padding-top:10px;padding-bottom:10px;position:relative;background-color:transparent;font-family:var(--ion-font-family);font-size:0.875rem;font-weight:500;letter-spacing:0.84px;text-transform:uppercase;overflow:hidden}.toast-button-cancel{color:var(--ion-color-step-100, var(--ion-text-color-step-900, #e6e6e6))}.toast-button-icon-only{border-radius:50%;-webkit-padding-start:9px;padding-inline-start:9px;-webkit-padding-end:9px;padding-inline-end:9px;padding-top:9px;padding-bottom:9px;width:36px;height:36px}@media (any-hover: hover){.toast-button:hover{background-color:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.08)}.toast-button-cancel:hover{background-color:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.08)}}";
|
|
31645
32109
|
var IonToastMdStyle0 = toastMdCss;
|
|
31646
32110
|
|
|
31647
32111
|
// TODO(FW-2832): types
|
|
@@ -32027,9 +32491,9 @@ class Toast {
|
|
|
32027
32491
|
if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
|
|
32028
32492
|
printIonWarning('This toast is using start and end buttons with the stacked toast layout. We recommend following the best practice of using either start or end buttons with the stacked toast layout.', el);
|
|
32029
32493
|
}
|
|
32030
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
32494
|
+
return (hAsync(Host, Object.assign({ key: 'c05655ff06af8d0e48c2a85396b07ad942fa81b4', tabindex: "-1" }, this.htmlAttributes, { style: {
|
|
32031
32495
|
zIndex: `${60000 + this.overlayIndex}`,
|
|
32032
|
-
}, class: createColorClasses$1(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), hAsync("div", { key: '
|
|
32496
|
+
}, class: createColorClasses$1(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), hAsync("div", { key: '9393ead4de1bf28529661d6f64049d34e18d725c', class: wrapperClass }, hAsync("div", { key: '3e9dd73c17c337849c3f26e8d0f395b3e5ee20a7', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (hAsync("ion-icon", { key: '5d15b18364301ad55e44e9f601014ac33181590b', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), hAsync("div", { key: 'f6dd164502637a882c5caf18445d8509b85ad6f9', class: "toast-content", role: "status", "aria-atomic": "true", "aria-live": "polite" }, !revealContentToScreenReader && header !== undefined && this.renderHeader('oldHeader', 'true'), !revealContentToScreenReader && message !== undefined && this.renderToastMessage('oldMessage', 'true'), revealContentToScreenReader && header !== undefined && this.renderHeader('header'), revealContentToScreenReader && message !== undefined && this.renderToastMessage('header')), this.renderButtons(endButtons, 'end')))));
|
|
32033
32497
|
}
|
|
32034
32498
|
get el() { return getElement(this); }
|
|
32035
32499
|
static get watchers() { return {
|
|
@@ -32249,7 +32713,7 @@ class Toggle {
|
|
|
32249
32713
|
const value = this.getValue();
|
|
32250
32714
|
const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
|
|
32251
32715
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
32252
|
-
return (hAsync(Host, { key: '
|
|
32716
|
+
return (hAsync(Host, { key: 'f52195ec3bc14c024647cb41319c32a4cd330e19', onClick: this.onClick, class: createColorClasses$1(color, {
|
|
32253
32717
|
[mode]: true,
|
|
32254
32718
|
'in-item': hostContext('ion-item', el),
|
|
32255
32719
|
'toggle-activated': activated,
|
|
@@ -32259,10 +32723,10 @@ class Toggle {
|
|
|
32259
32723
|
[`toggle-alignment-${alignment}`]: alignment !== undefined,
|
|
32260
32724
|
[`toggle-label-placement-${labelPlacement}`]: true,
|
|
32261
32725
|
[`toggle-${rtl}`]: true,
|
|
32262
|
-
}) }, hAsync("label", { key: '
|
|
32726
|
+
}) }, hAsync("label", { key: 'f8b3a215ad85b2cee611ad63449b584e1640f27f', class: "toggle-wrapper" }, hAsync("input", Object.assign({ key: 'f387b1ea840737a9737917e516834c887be99c09', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, this.inheritedAttributes)), hAsync("div", { key: '936af880db59fe377cd2de9101eb28a1c4fb8914', class: {
|
|
32263
32727
|
'label-text-wrapper': true,
|
|
32264
32728
|
'label-text-wrapper-hidden': !this.hasLabel,
|
|
32265
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
32729
|
+
}, part: "label" }, hAsync("slot", { key: '80a6672e2e792c15011a9496dcd75363cdba31c6' })), hAsync("div", { key: '2b2b318b38ab27b194c0dab4cecd77d9d780f2ca', class: "native-wrapper" }, this.renderToggleControl()))));
|
|
32266
32730
|
}
|
|
32267
32731
|
get el() { return getElement(this); }
|
|
32268
32732
|
static get watchers() { return {
|
|
@@ -32366,10 +32830,10 @@ class Toolbar {
|
|
|
32366
32830
|
this.childrenStyles.forEach((value) => {
|
|
32367
32831
|
Object.assign(childStyles, value);
|
|
32368
32832
|
});
|
|
32369
|
-
return (hAsync(Host, { key: '
|
|
32833
|
+
return (hAsync(Host, { key: '462538a5ecd01baf3cde116c9f029aeda26c81be', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
|
|
32370
32834
|
[mode]: true,
|
|
32371
32835
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
32372
|
-
})) }, hAsync("div", { key: '
|
|
32836
|
+
})) }, hAsync("div", { key: 'c0b4415d3b2472de643a9be7cb3b13b3b628621b', class: "toolbar-background" }), hAsync("div", { key: '0ccb8a2dbeaa28d8f9bed87629c0c097446690c2', class: "toolbar-container" }, hAsync("slot", { key: '3e726dac359e923df21d80301651f16063a3de20', name: "start" }), hAsync("slot", { key: 'cd799330b56a7f8833bc61bb2807aafb21846f71', name: "secondary" }), hAsync("div", { key: '395282e6ac8c53576922dcdb5f08c25d34638c86', class: "toolbar-content" }, hAsync("slot", { key: 'a437c60e4ba5aae65e55169ae82a6f379868ec1d' })), hAsync("slot", { key: '711af9b9d321a7b31ede924c9bdcad767aa9a1ca', name: "primary" }), hAsync("slot", { key: 'ecc02edeaf80a837890bcb08d5096df1e22a0b9a', name: "end" }))));
|
|
32373
32837
|
}
|
|
32374
32838
|
get el() { return getElement(this); }
|
|
32375
32839
|
static get style() { return {
|
|
@@ -32419,11 +32883,11 @@ class ToolbarTitle {
|
|
|
32419
32883
|
render() {
|
|
32420
32884
|
const mode = getIonMode$1(this);
|
|
32421
32885
|
const size = this.getSize();
|
|
32422
|
-
return (hAsync(Host, { key: '
|
|
32886
|
+
return (hAsync(Host, { key: '7293d2ecd6262feb0d8d769effbb208230baed89', class: createColorClasses$1(this.color, {
|
|
32423
32887
|
[mode]: true,
|
|
32424
32888
|
[`title-${size}`]: true,
|
|
32425
32889
|
'title-rtl': document.dir === 'rtl',
|
|
32426
|
-
}) }, hAsync("div", { key: '
|
|
32890
|
+
}) }, hAsync("div", { key: '086ec3a361ebdf6506846a8704b457cda3a6f897', class: "toolbar-title" }, hAsync("slot", { key: '59add7eb92b82d6832a8f0894f897c51fdf4f214' }))));
|
|
32427
32891
|
}
|
|
32428
32892
|
get el() { return getElement(this); }
|
|
32429
32893
|
static get watchers() { return {
|
|
@@ -32524,7 +32988,10 @@ registerComponents([
|
|
|
32524
32988
|
Searchbar,
|
|
32525
32989
|
Segment,
|
|
32526
32990
|
SegmentButton,
|
|
32991
|
+
SegmentContent,
|
|
32992
|
+
SegmentView,
|
|
32527
32993
|
Select,
|
|
32994
|
+
SelectModal,
|
|
32528
32995
|
SelectOption,
|
|
32529
32996
|
SelectPopover,
|
|
32530
32997
|
SkeletonText,
|