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.mjs
CHANGED
|
@@ -4388,7 +4388,7 @@ const createLockController = () => {
|
|
|
4388
4388
|
* Note: We need this distinction because `disabled="false"` is
|
|
4389
4389
|
* valid usage for the disabled property on ion-button.
|
|
4390
4390
|
*/
|
|
4391
|
-
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])';
|
|
4391
|
+
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])';
|
|
4392
4392
|
/**
|
|
4393
4393
|
* Focuses the first descendant in a context
|
|
4394
4394
|
* that can receive focus. If none exists,
|
|
@@ -4443,7 +4443,13 @@ const focusElementInContext = (hostToFocus, fallbackElement) => {
|
|
|
4443
4443
|
elementToFocus = shadowRoot.querySelector(focusableQueryString) || hostToFocus;
|
|
4444
4444
|
}
|
|
4445
4445
|
if (elementToFocus) {
|
|
4446
|
-
|
|
4446
|
+
const radioGroup = elementToFocus.closest('ion-radio-group');
|
|
4447
|
+
if (radioGroup) {
|
|
4448
|
+
radioGroup.setFocus();
|
|
4449
|
+
}
|
|
4450
|
+
else {
|
|
4451
|
+
focusVisibleElement(elementToFocus);
|
|
4452
|
+
}
|
|
4447
4453
|
}
|
|
4448
4454
|
else {
|
|
4449
4455
|
// Focus fallback element instead of letting focus escape
|
|
@@ -4619,6 +4625,7 @@ const createController = (tagName) => {
|
|
|
4619
4625
|
};
|
|
4620
4626
|
const alertController = /*@__PURE__*/ createController('ion-alert');
|
|
4621
4627
|
const actionSheetController = /*@__PURE__*/ createController('ion-action-sheet');
|
|
4628
|
+
const modalController = /*@__PURE__*/ createController('ion-modal');
|
|
4622
4629
|
const popoverController = /*@__PURE__*/ createController('ion-popover');
|
|
4623
4630
|
/**
|
|
4624
4631
|
* Prepares the overlay element to be presented.
|
|
@@ -5393,21 +5400,30 @@ const createTriggerController = () => {
|
|
|
5393
5400
|
* like TalkBack do not announce or interact with the content until the
|
|
5394
5401
|
* animation is complete, avoiding confusion for users.
|
|
5395
5402
|
*
|
|
5396
|
-
*
|
|
5397
|
-
* in
|
|
5398
|
-
* styles)
|
|
5399
|
-
*
|
|
5403
|
+
* When the overlay is presented on an Android device, TalkBack's focus rings
|
|
5404
|
+
* may appear in the wrong position due to the transition (specifically
|
|
5405
|
+
* `transform` styles). This occurs because the focus rings are initially
|
|
5406
|
+
* displayed at the starting position of the elements before the transition
|
|
5407
|
+
* begins. This workaround ensures the focus rings do not appear in the
|
|
5408
|
+
* incorrect location.
|
|
5409
|
+
*
|
|
5410
|
+
* If this solution is applied to iOS devices, then it leads to a bug where
|
|
5411
|
+
* the overlays cannot be accessed by screen readers. This is due to
|
|
5412
|
+
* VoiceOver not being able to update the accessibility tree when the
|
|
5413
|
+
* `aria-hidden` is removed.
|
|
5400
5414
|
*
|
|
5401
5415
|
* @param overlay - The overlay that is being animated.
|
|
5402
5416
|
*/
|
|
5403
5417
|
const hideAnimatingOverlayFromScreenReaders = (overlay) => {
|
|
5404
5418
|
if (doc === undefined)
|
|
5405
5419
|
return;
|
|
5406
|
-
|
|
5407
|
-
|
|
5408
|
-
|
|
5409
|
-
|
|
5410
|
-
|
|
5420
|
+
if (isPlatform('android')) {
|
|
5421
|
+
/**
|
|
5422
|
+
* Once the animation is complete, this attribute will be removed.
|
|
5423
|
+
* This is done at the end of the `present` method.
|
|
5424
|
+
*/
|
|
5425
|
+
overlay.setAttribute('aria-hidden', 'true');
|
|
5426
|
+
}
|
|
5411
5427
|
};
|
|
5412
5428
|
/**
|
|
5413
5429
|
* Ensure that underlying overlays have aria-hidden if necessary so that screen readers
|
|
@@ -7287,13 +7303,15 @@ class Alert {
|
|
|
7287
7303
|
const msgId = `alert-${overlayIndex}-msg`;
|
|
7288
7304
|
const role = this.inputs.length > 0 || this.buttons.length > 0 ? 'alertdialog' : 'alert';
|
|
7289
7305
|
/**
|
|
7290
|
-
*
|
|
7291
|
-
* If
|
|
7306
|
+
* Use both the header and subHeader ids if they are defined.
|
|
7307
|
+
* If only the header is defined, use the header id.
|
|
7308
|
+
* If only the subHeader is defined, use the subHeader id.
|
|
7309
|
+
* If neither are defined, do not set aria-labelledby.
|
|
7292
7310
|
*/
|
|
7293
|
-
const ariaLabelledBy = header ? hdrId : subHeader ? subHdrId : null;
|
|
7294
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
7311
|
+
const ariaLabelledBy = header && subHeader ? `${hdrId} ${subHdrId}` : header ? hdrId : subHeader ? subHdrId : null;
|
|
7312
|
+
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: {
|
|
7295
7313
|
zIndex: `${20000 + overlayIndex}`,
|
|
7296
|
-
}, 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: '
|
|
7314
|
+
}, 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" })));
|
|
7297
7315
|
}
|
|
7298
7316
|
get el() { return getElement(this); }
|
|
7299
7317
|
static get watchers() { return {
|
|
@@ -7371,7 +7389,7 @@ class App {
|
|
|
7371
7389
|
}
|
|
7372
7390
|
render() {
|
|
7373
7391
|
const mode = getIonMode$1(this);
|
|
7374
|
-
return (hAsync(Host, { key: '
|
|
7392
|
+
return (hAsync(Host, { key: '96715520fd05d6f0e6fa26a8ba78792cfccd4c0a', class: {
|
|
7375
7393
|
[mode]: true,
|
|
7376
7394
|
'ion-page': true,
|
|
7377
7395
|
'force-statusbar-padding': config.getBoolean('_forceStatusbarPadding'),
|
|
@@ -7402,7 +7420,7 @@ class Avatar {
|
|
|
7402
7420
|
registerInstance(this, hostRef);
|
|
7403
7421
|
}
|
|
7404
7422
|
render() {
|
|
7405
|
-
return (hAsync(Host, { key: '
|
|
7423
|
+
return (hAsync(Host, { key: '998217066084f966bf5d356fed85bcbd451f675a', class: getIonMode$1(this) }, hAsync("slot", { key: '1a6f7c9d4dc6a875f86b5b3cda6d59cb39587f22' })));
|
|
7406
7424
|
}
|
|
7407
7425
|
static get style() { return {
|
|
7408
7426
|
ios: IonAvatarIosStyle0,
|
|
@@ -7490,7 +7508,7 @@ class BackButton {
|
|
|
7490
7508
|
const showBackButton = defaultHref !== undefined;
|
|
7491
7509
|
const mode = getIonMode$1(this);
|
|
7492
7510
|
const ariaLabel = inheritedAttributes['aria-label'] || backButtonText || 'back';
|
|
7493
|
-
return (hAsync(Host, { key: '
|
|
7511
|
+
return (hAsync(Host, { key: '5466624a10f1ab56f5469e6dc07080303880f2fe', onClick: this.onClick, class: createColorClasses$1(color, {
|
|
7494
7512
|
[mode]: true,
|
|
7495
7513
|
button: true, // ion-buttons target .button
|
|
7496
7514
|
'back-button-disabled': disabled,
|
|
@@ -7500,7 +7518,7 @@ class BackButton {
|
|
|
7500
7518
|
'ion-activatable': true,
|
|
7501
7519
|
'ion-focusable': true,
|
|
7502
7520
|
'show-back-button': showBackButton,
|
|
7503
|
-
}) }, hAsync("button", { key: '
|
|
7521
|
+
}) }, 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 }))));
|
|
7504
7522
|
}
|
|
7505
7523
|
get el() { return getElement(this); }
|
|
7506
7524
|
static get style() { return {
|
|
@@ -7553,7 +7571,7 @@ class Backdrop {
|
|
|
7553
7571
|
}
|
|
7554
7572
|
render() {
|
|
7555
7573
|
const mode = getIonMode$1(this);
|
|
7556
|
-
return (hAsync(Host, { key: '
|
|
7574
|
+
return (hAsync(Host, { key: '7abaf2c310aa399607451b14063265e8a5846938', "aria-hidden": "true", class: {
|
|
7557
7575
|
[mode]: true,
|
|
7558
7576
|
'backdrop-hide': !this.visible,
|
|
7559
7577
|
'backdrop-no-tappable': !this.tappable,
|
|
@@ -7593,9 +7611,9 @@ class Badge {
|
|
|
7593
7611
|
}
|
|
7594
7612
|
render() {
|
|
7595
7613
|
const mode = getIonMode$1(this);
|
|
7596
|
-
return (hAsync(Host, { key: '
|
|
7614
|
+
return (hAsync(Host, { key: '1a2d39c5deec771a2f2196447627b62a7d4c8389', class: createColorClasses$1(this.color, {
|
|
7597
7615
|
[mode]: true,
|
|
7598
|
-
}) }, hAsync("slot", { key: '
|
|
7616
|
+
}) }, hAsync("slot", { key: 'fc1b6587f1ed24715748eb6785e7fb7a57cdd5cd' })));
|
|
7599
7617
|
}
|
|
7600
7618
|
static get style() { return {
|
|
7601
7619
|
ios: IonBadgeIosStyle0,
|
|
@@ -7681,7 +7699,7 @@ class Breadcrumb {
|
|
|
7681
7699
|
// to show the separator as long as it isn't also the last breadcrumb
|
|
7682
7700
|
// otherwise if not collapsed use the value in separator
|
|
7683
7701
|
const showSeparator = last ? false : collapsed ? (showCollapsedIndicator && !last ? true : false) : separator;
|
|
7684
|
-
return (hAsync(Host, { key: '
|
|
7702
|
+
return (hAsync(Host, { key: '32ca61c83721dff52b5e97171ed449dce3584a55', onClick: (ev) => openURL(href, ev, routerDirection, routerAnimation), "aria-disabled": disabled ? 'true' : null, class: createColorClasses$1(color, {
|
|
7685
7703
|
[mode]: true,
|
|
7686
7704
|
'breadcrumb-active': active,
|
|
7687
7705
|
'breadcrumb-collapsed': collapsed,
|
|
@@ -7691,15 +7709,15 @@ class Breadcrumb {
|
|
|
7691
7709
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
7692
7710
|
'ion-activatable': clickable,
|
|
7693
7711
|
'ion-focusable': clickable,
|
|
7694
|
-
}) }, hAsync(TagType, Object.assign({ key: '
|
|
7712
|
+
}) }, 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: {
|
|
7695
7713
|
'breadcrumbs-collapsed-indicator': true,
|
|
7696
|
-
} }, hAsync("ion-icon", { key: '
|
|
7714
|
+
} }, hAsync("ion-icon", { key: 'a849e1142a86f06f207cf11662fa2a560ab7fc6a', "aria-hidden": "true", icon: ellipsisHorizontal, lazy: false }))), showSeparator && (
|
|
7697
7715
|
/**
|
|
7698
7716
|
* Separators should not be announced by narrators.
|
|
7699
7717
|
* We add aria-hidden on the span so that this applies
|
|
7700
7718
|
* to any custom separators too.
|
|
7701
7719
|
*/
|
|
7702
|
-
hAsync("span", { key: '
|
|
7720
|
+
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, "/")))))));
|
|
7703
7721
|
}
|
|
7704
7722
|
get el() { return getElement(this); }
|
|
7705
7723
|
static get style() { return {
|
|
@@ -7839,12 +7857,12 @@ class Breadcrumbs {
|
|
|
7839
7857
|
render() {
|
|
7840
7858
|
const { color, collapsed } = this;
|
|
7841
7859
|
const mode = getIonMode$1(this);
|
|
7842
|
-
return (hAsync(Host, { key: '
|
|
7860
|
+
return (hAsync(Host, { key: 'fe64e9cdf597ede2db140bf5fa05a0359d82db57', class: createColorClasses$1(color, {
|
|
7843
7861
|
[mode]: true,
|
|
7844
7862
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
7845
7863
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
7846
7864
|
'breadcrumbs-collapsed': collapsed,
|
|
7847
|
-
}) }, hAsync("slot", { key: '
|
|
7865
|
+
}) }, hAsync("slot", { key: 'a2c99b579e339055c50a613d5c6b61032f5ddffe', onSlotchange: this.slotChanged })));
|
|
7848
7866
|
}
|
|
7849
7867
|
get el() { return getElement(this); }
|
|
7850
7868
|
static get watchers() { return {
|
|
@@ -8087,7 +8105,7 @@ class Button {
|
|
|
8087
8105
|
{
|
|
8088
8106
|
type !== 'button' && this.renderHiddenButton();
|
|
8089
8107
|
}
|
|
8090
|
-
return (hAsync(Host, { key: '
|
|
8108
|
+
return (hAsync(Host, { key: '340a809d85698741bb36e796355cae89a970655f', onClick: this.handleClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses$1(color, {
|
|
8091
8109
|
[mode]: true,
|
|
8092
8110
|
[buttonType]: true,
|
|
8093
8111
|
[`${buttonType}-${expand}`]: expand !== undefined,
|
|
@@ -8102,7 +8120,7 @@ class Button {
|
|
|
8102
8120
|
'button-disabled': disabled,
|
|
8103
8121
|
'ion-activatable': true,
|
|
8104
8122
|
'ion-focusable': true,
|
|
8105
|
-
}) }, hAsync(TagType, Object.assign({ key: '
|
|
8123
|
+
}) }, 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 }))));
|
|
8106
8124
|
}
|
|
8107
8125
|
get el() { return getElement(this); }
|
|
8108
8126
|
static get watchers() { return {
|
|
@@ -8153,10 +8171,10 @@ class Buttons {
|
|
|
8153
8171
|
}
|
|
8154
8172
|
render() {
|
|
8155
8173
|
const mode = getIonMode$1(this);
|
|
8156
|
-
return (hAsync(Host, { key: '
|
|
8174
|
+
return (hAsync(Host, { key: '58c1fc5eb867d0731c63549b1ccb3ec3bbbe6e1b', class: {
|
|
8157
8175
|
[mode]: true,
|
|
8158
8176
|
['buttons-collapse']: this.collapse,
|
|
8159
|
-
} }, hAsync("slot", { key: '
|
|
8177
|
+
} }, hAsync("slot", { key: '0c8f95b9840c8fa0c4e50be84c5159620a3eb5c8' })));
|
|
8160
8178
|
}
|
|
8161
8179
|
static get style() { return {
|
|
8162
8180
|
ios: IonButtonsIosStyle0,
|
|
@@ -8225,7 +8243,7 @@ class Card {
|
|
|
8225
8243
|
}
|
|
8226
8244
|
render() {
|
|
8227
8245
|
const mode = getIonMode$1(this);
|
|
8228
|
-
return (hAsync(Host, { key: '
|
|
8246
|
+
return (hAsync(Host, { key: '85e9b30bd81e79a0c7ac75cb3664bdcf9e4afc4d', class: createColorClasses$1(this.color, {
|
|
8229
8247
|
[mode]: true,
|
|
8230
8248
|
'card-disabled': this.disabled,
|
|
8231
8249
|
'ion-activatable': this.isClickable(),
|
|
@@ -8272,7 +8290,7 @@ class CardContent {
|
|
|
8272
8290
|
}
|
|
8273
8291
|
render() {
|
|
8274
8292
|
const mode = getIonMode$1(this);
|
|
8275
|
-
return (hAsync(Host, { key: '
|
|
8293
|
+
return (hAsync(Host, { key: 'd98e4d1fc6ad3237549f9bc17e4c67ec5059b1b3', class: {
|
|
8276
8294
|
[mode]: true,
|
|
8277
8295
|
// Used internally for styling
|
|
8278
8296
|
[`card-content-${mode}`]: true,
|
|
@@ -8309,11 +8327,11 @@ class CardHeader {
|
|
|
8309
8327
|
}
|
|
8310
8328
|
render() {
|
|
8311
8329
|
const mode = getIonMode$1(this);
|
|
8312
|
-
return (hAsync(Host, { key: '
|
|
8330
|
+
return (hAsync(Host, { key: '64246b81931203a64d553c788cd736f41e23f37b', class: createColorClasses$1(this.color, {
|
|
8313
8331
|
'card-header-translucent': this.translucent,
|
|
8314
8332
|
'ion-inherit-color': true,
|
|
8315
8333
|
[mode]: true,
|
|
8316
|
-
}) }, hAsync("slot", { key: '
|
|
8334
|
+
}) }, hAsync("slot", { key: 'af2da2dfe266889afeb57fac25c6a730558dbba4' })));
|
|
8317
8335
|
}
|
|
8318
8336
|
static get style() { return {
|
|
8319
8337
|
ios: IonCardHeaderIosStyle0,
|
|
@@ -8348,10 +8366,10 @@ class CardSubtitle {
|
|
|
8348
8366
|
}
|
|
8349
8367
|
render() {
|
|
8350
8368
|
const mode = getIonMode$1(this);
|
|
8351
|
-
return (hAsync(Host, { key: '
|
|
8369
|
+
return (hAsync(Host, { key: '84d820a19d9074f9c8bc61ccba1ca40062a60b73', role: "heading", "aria-level": "3", class: createColorClasses$1(this.color, {
|
|
8352
8370
|
'ion-inherit-color': true,
|
|
8353
8371
|
[mode]: true,
|
|
8354
|
-
}) }, hAsync("slot", { key: '
|
|
8372
|
+
}) }, hAsync("slot", { key: 'e4d07d395a1f4469a90847636083101b32b776a1' })));
|
|
8355
8373
|
}
|
|
8356
8374
|
static get style() { return {
|
|
8357
8375
|
ios: IonCardSubtitleIosStyle0,
|
|
@@ -8385,10 +8403,10 @@ class CardTitle {
|
|
|
8385
8403
|
}
|
|
8386
8404
|
render() {
|
|
8387
8405
|
const mode = getIonMode$1(this);
|
|
8388
|
-
return (hAsync(Host, { key: '
|
|
8406
|
+
return (hAsync(Host, { key: 'fca001a86396e83718d5211cd71912fdf40dea2f', role: "heading", "aria-level": "2", class: createColorClasses$1(this.color, {
|
|
8389
8407
|
'ion-inherit-color': true,
|
|
8390
8408
|
[mode]: true,
|
|
8391
|
-
}) }, hAsync("slot", { key: '
|
|
8409
|
+
}) }, hAsync("slot", { key: '2ba416aed488b2ff462fa75fb3b70373a6dd7da6' })));
|
|
8392
8410
|
}
|
|
8393
8411
|
static get style() { return {
|
|
8394
8412
|
ios: IonCardTitleIosStyle0,
|
|
@@ -8473,7 +8491,8 @@ class Checkbox {
|
|
|
8473
8491
|
componentWillLoad() {
|
|
8474
8492
|
this.inheritedAttributes = Object.assign({}, inheritAriaAttributes(this.el));
|
|
8475
8493
|
}
|
|
8476
|
-
|
|
8494
|
+
/** @internal */
|
|
8495
|
+
async setFocus() {
|
|
8477
8496
|
if (this.focusEl) {
|
|
8478
8497
|
this.focusEl.focus();
|
|
8479
8498
|
}
|
|
@@ -8483,7 +8502,7 @@ class Checkbox {
|
|
|
8483
8502
|
const mode = getIonMode$1(this);
|
|
8484
8503
|
const path = getSVGPath(mode, indeterminate);
|
|
8485
8504
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
8486
|
-
return (hAsync(Host, { key: '
|
|
8505
|
+
return (hAsync(Host, { key: '6dc787e1100521d08c4900104e1a3e2f594e919f', "aria-checked": indeterminate ? 'mixed' : `${checked}`, class: createColorClasses$1(color, {
|
|
8487
8506
|
[mode]: true,
|
|
8488
8507
|
'in-item': hostContext('ion-item', el),
|
|
8489
8508
|
'checkbox-checked': checked,
|
|
@@ -8493,10 +8512,10 @@ class Checkbox {
|
|
|
8493
8512
|
[`checkbox-justify-${justify}`]: justify !== undefined,
|
|
8494
8513
|
[`checkbox-alignment-${alignment}`]: alignment !== undefined,
|
|
8495
8514
|
[`checkbox-label-placement-${labelPlacement}`]: true,
|
|
8496
|
-
}), onClick: this.onClick }, hAsync("label", { key: '
|
|
8515
|
+
}), 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: {
|
|
8497
8516
|
'label-text-wrapper': true,
|
|
8498
8517
|
'label-text-wrapper-hidden': el.textContent === '',
|
|
8499
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
8518
|
+
}, 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)))));
|
|
8500
8519
|
}
|
|
8501
8520
|
getSVGPath(mode, indeterminate) {
|
|
8502
8521
|
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" }));
|
|
@@ -8522,7 +8541,8 @@ class Checkbox {
|
|
|
8522
8541
|
"value": [8],
|
|
8523
8542
|
"labelPlacement": [1, "label-placement"],
|
|
8524
8543
|
"justify": [1],
|
|
8525
|
-
"alignment": [1]
|
|
8544
|
+
"alignment": [1],
|
|
8545
|
+
"setFocus": [64]
|
|
8526
8546
|
},
|
|
8527
8547
|
"$listeners$": undefined,
|
|
8528
8548
|
"$lazyBundleId$": "-",
|
|
@@ -8549,12 +8569,12 @@ class Chip {
|
|
|
8549
8569
|
}
|
|
8550
8570
|
render() {
|
|
8551
8571
|
const mode = getIonMode$1(this);
|
|
8552
|
-
return (hAsync(Host, { key: '
|
|
8572
|
+
return (hAsync(Host, { key: 'fa2e9a4837ef87a17ef10f388e8caa7f604d9145', "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
|
|
8553
8573
|
[mode]: true,
|
|
8554
8574
|
'chip-outline': this.outline,
|
|
8555
8575
|
'chip-disabled': this.disabled,
|
|
8556
8576
|
'ion-activatable': true,
|
|
8557
|
-
}) }, hAsync("slot", { key: '
|
|
8577
|
+
}) }, hAsync("slot", { key: '3793fbd9d915cef7241fb101e2bc64c08b9ba482' }), mode === 'md' && hAsync("ion-ripple-effect", { key: 'd3b95b53918611dec095a50f2aaaab65617947a4' })));
|
|
8558
8578
|
}
|
|
8559
8579
|
static get style() { return {
|
|
8560
8580
|
ios: IonChipIosStyle0,
|
|
@@ -8705,9 +8725,9 @@ class Col {
|
|
|
8705
8725
|
render() {
|
|
8706
8726
|
const isRTL = document.dir === 'rtl';
|
|
8707
8727
|
const mode = getIonMode$1(this);
|
|
8708
|
-
return (hAsync(Host, { key: '
|
|
8728
|
+
return (hAsync(Host, { key: '32ed75d81dd09d9bc8999f6d42e5b3cb99c84d91', class: {
|
|
8709
8729
|
[mode]: true,
|
|
8710
|
-
}, style: Object.assign(Object.assign(Object.assign(Object.assign({}, this.calculateOffset(isRTL)), this.calculatePull(isRTL)), this.calculatePush(isRTL)), this.calculateSize()) }, hAsync("slot", { key: '
|
|
8730
|
+
}, style: Object.assign(Object.assign(Object.assign(Object.assign({}, this.calculateOffset(isRTL)), this.calculatePull(isRTL)), this.calculatePush(isRTL)), this.calculateSize()) }, hAsync("slot", { key: '38f8d0440c20cc6d1b1d6a654d07f16de61d8134' })));
|
|
8711
8731
|
}
|
|
8712
8732
|
static get style() { return IonColStyle0; }
|
|
8713
8733
|
static get cmpMeta() { return {
|
|
@@ -9081,7 +9101,7 @@ class Content {
|
|
|
9081
9101
|
const forceOverscroll = this.shouldForceOverscroll();
|
|
9082
9102
|
const transitionShadow = mode === 'ios';
|
|
9083
9103
|
this.resize();
|
|
9084
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
9104
|
+
return (hAsync(Host, Object.assign({ key: 'f2a24aa66dbf5c76f9d4b06f708eb73cadc239df', role: isMainContent ? 'main' : undefined, class: createColorClasses$1(this.color, {
|
|
9085
9105
|
[mode]: true,
|
|
9086
9106
|
'content-sizing': hostContext('ion-popover', this.el),
|
|
9087
9107
|
overscroll: forceOverscroll,
|
|
@@ -9089,12 +9109,12 @@ class Content {
|
|
|
9089
9109
|
}), style: {
|
|
9090
9110
|
'--offset-top': `${this.cTop}px`,
|
|
9091
9111
|
'--offset-bottom': `${this.cBottom}px`,
|
|
9092
|
-
} }, inheritedAttributes), hAsync("div", { key: '
|
|
9112
|
+
} }, 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: {
|
|
9093
9113
|
'inner-scroll': true,
|
|
9094
9114
|
'scroll-x': scrollX,
|
|
9095
9115
|
'scroll-y': scrollY,
|
|
9096
9116
|
overscroll: (scrollX || scrollY) && forceOverscroll,
|
|
9097
|
-
}, ref: (scrollEl) => (this.scrollEl = scrollEl), onScroll: this.scrollEvents ? (ev) => this.onScroll(ev) : undefined, part: "scroll" }, hAsync("slot", { key: '
|
|
9117
|
+
}, 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));
|
|
9098
9118
|
}
|
|
9099
9119
|
get el() { return getElement(this); }
|
|
9100
9120
|
static get style() { return IonContentStyle0; }
|
|
@@ -12615,7 +12635,7 @@ class Datetime {
|
|
|
12615
12635
|
const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
|
|
12616
12636
|
const hasWheelVariant = hasDatePresentation && preferWheel;
|
|
12617
12637
|
renderHiddenInput(true, el, name, formatValue(value), disabled);
|
|
12618
|
-
return (hAsync(Host, { key: '
|
|
12638
|
+
return (hAsync(Host, { key: '7afbb1a7e6c78389b4588999779e5c90e010e85d', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, createColorClasses$1(color, {
|
|
12619
12639
|
[mode]: true,
|
|
12620
12640
|
['datetime-readonly']: readonly,
|
|
12621
12641
|
['datetime-disabled']: disabled,
|
|
@@ -12625,7 +12645,7 @@ class Datetime {
|
|
|
12625
12645
|
[`datetime-size-${size}`]: true,
|
|
12626
12646
|
[`datetime-prefer-wheel`]: hasWheelVariant,
|
|
12627
12647
|
[`datetime-grid`]: isGridStyle,
|
|
12628
|
-
})) }, hAsync("div", { key: '
|
|
12648
|
+
})) }, hAsync("div", { key: '297c458d4d17154cb297e2ef5926505bcb2d1fce', class: "intersection-tracker", ref: (el) => (this.intersectionTrackerRef = el) }), this.renderDatetime(mode)));
|
|
12629
12649
|
}
|
|
12630
12650
|
get el() { return getElement(this); }
|
|
12631
12651
|
static get watchers() { return {
|
|
@@ -13033,11 +13053,11 @@ class DatetimeButton {
|
|
|
13033
13053
|
render() {
|
|
13034
13054
|
const { color, dateText, timeText, selectedButton, datetimeActive, disabled } = this;
|
|
13035
13055
|
const mode = getIonMode$1(this);
|
|
13036
|
-
return (hAsync(Host, { key: '
|
|
13056
|
+
return (hAsync(Host, { key: '26e606af6f067a5774db37ed41387ffebb941777', class: createColorClasses$1(color, {
|
|
13037
13057
|
[mode]: true,
|
|
13038
13058
|
[`${selectedButton}-active`]: datetimeActive,
|
|
13039
13059
|
['datetime-button-disabled']: disabled,
|
|
13040
|
-
}) }, dateText && (hAsync("button", { key: '
|
|
13060
|
+
}) }, 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' })))));
|
|
13041
13061
|
}
|
|
13042
13062
|
get el() { return getElement(this); }
|
|
13043
13063
|
static get style() { return {
|
|
@@ -13111,12 +13131,12 @@ class Fab {
|
|
|
13111
13131
|
render() {
|
|
13112
13132
|
const { horizontal, vertical, edge } = this;
|
|
13113
13133
|
const mode = getIonMode$1(this);
|
|
13114
|
-
return (hAsync(Host, { key: '
|
|
13134
|
+
return (hAsync(Host, { key: '8a310806d0e748d7ebb0ed3d9a2652038e0f2960', class: {
|
|
13115
13135
|
[mode]: true,
|
|
13116
13136
|
[`fab-horizontal-${horizontal}`]: horizontal !== undefined,
|
|
13117
13137
|
[`fab-vertical-${vertical}`]: vertical !== undefined,
|
|
13118
13138
|
'fab-edge': edge,
|
|
13119
|
-
} }, hAsync("slot", { key: '
|
|
13139
|
+
} }, hAsync("slot", { key: '9394ef6d6e5b0410fa6ba212171f687fb178ce2d' })));
|
|
13120
13140
|
}
|
|
13121
13141
|
get el() { return getElement(this); }
|
|
13122
13142
|
static get watchers() { return {
|
|
@@ -13206,7 +13226,7 @@ class FabButton {
|
|
|
13206
13226
|
rel: this.rel,
|
|
13207
13227
|
target: this.target,
|
|
13208
13228
|
};
|
|
13209
|
-
return (hAsync(Host, { key: '
|
|
13229
|
+
return (hAsync(Host, { key: '4eee204d20b0e2ffed49a88f6cb3e04b6697965c', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses$1(color, {
|
|
13210
13230
|
[mode]: true,
|
|
13211
13231
|
'fab-button-in-list': inList,
|
|
13212
13232
|
'fab-button-translucent-in-list': inList && translucent,
|
|
@@ -13217,7 +13237,7 @@ class FabButton {
|
|
|
13217
13237
|
'ion-activatable': true,
|
|
13218
13238
|
'ion-focusable': true,
|
|
13219
13239
|
[`fab-button-${size}`]: size !== undefined,
|
|
13220
|
-
}) }, hAsync(TagType, Object.assign({ key: '
|
|
13240
|
+
}) }, 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' }))));
|
|
13221
13241
|
}
|
|
13222
13242
|
get el() { return getElement(this); }
|
|
13223
13243
|
static get style() { return {
|
|
@@ -13268,11 +13288,11 @@ class FabList {
|
|
|
13268
13288
|
}
|
|
13269
13289
|
render() {
|
|
13270
13290
|
const mode = getIonMode$1(this);
|
|
13271
|
-
return (hAsync(Host, { key: '
|
|
13291
|
+
return (hAsync(Host, { key: '64b33366447f66c7f979cfac56307fbb1a6fac1c', class: {
|
|
13272
13292
|
[mode]: true,
|
|
13273
13293
|
'fab-list-active': this.activated,
|
|
13274
13294
|
[`fab-list-side-${this.side}`]: true,
|
|
13275
|
-
} }, hAsync("slot", { key: '
|
|
13295
|
+
} }, hAsync("slot", { key: 'd9f474f7f20fd7e813db358fddc720534ca05bb6' })));
|
|
13276
13296
|
}
|
|
13277
13297
|
get el() { return getElement(this); }
|
|
13278
13298
|
static get watchers() { return {
|
|
@@ -13724,7 +13744,7 @@ class Footer {
|
|
|
13724
13744
|
const mode = getIonMode$1(this);
|
|
13725
13745
|
const tabs = this.el.closest('ion-tabs');
|
|
13726
13746
|
const tabBar = tabs === null || tabs === void 0 ? void 0 : tabs.querySelector(':scope > ion-tab-bar');
|
|
13727
|
-
return (hAsync(Host, { key: '
|
|
13747
|
+
return (hAsync(Host, { key: 'ddc228f1a1e7fa4f707dccf74db2490ca3241137', role: "contentinfo", class: {
|
|
13728
13748
|
[mode]: true,
|
|
13729
13749
|
// Used internally for styling
|
|
13730
13750
|
[`footer-${mode}`]: true,
|
|
@@ -13732,7 +13752,7 @@ class Footer {
|
|
|
13732
13752
|
[`footer-translucent-${mode}`]: translucent,
|
|
13733
13753
|
['footer-toolbar-padding']: !this.keyboardVisible && (!tabBar || tabBar.slot !== 'bottom'),
|
|
13734
13754
|
[`footer-collapse-${collapse}`]: collapse !== undefined,
|
|
13735
|
-
} }, mode === 'ios' && translucent && hAsync("div", { key: '
|
|
13755
|
+
} }, mode === 'ios' && translucent && hAsync("div", { key: 'e16ed4963ff94e06de77eb8038201820af73937c', class: "footer-background" }), hAsync("slot", { key: 'f186934febf85d37133d9351a96c1a64b0a4b203' })));
|
|
13736
13756
|
}
|
|
13737
13757
|
get el() { return getElement(this); }
|
|
13738
13758
|
static get style() { return {
|
|
@@ -13763,10 +13783,10 @@ class Grid {
|
|
|
13763
13783
|
}
|
|
13764
13784
|
render() {
|
|
13765
13785
|
const mode = getIonMode$1(this);
|
|
13766
|
-
return (hAsync(Host, { key: '
|
|
13786
|
+
return (hAsync(Host, { key: '617127ecfabf9bf615bef1dda1be3fed5a065949', class: {
|
|
13767
13787
|
[mode]: true,
|
|
13768
13788
|
'grid-fixed': this.fixed,
|
|
13769
|
-
} }, hAsync("slot", { key: '
|
|
13789
|
+
} }, hAsync("slot", { key: 'c781fff853b093d8f44bdb7943bbc4f17c903803' })));
|
|
13770
13790
|
}
|
|
13771
13791
|
static get style() { return IonGridStyle0; }
|
|
13772
13792
|
static get cmpMeta() { return {
|
|
@@ -13905,13 +13925,32 @@ mainHeaderIndex, scrollHeaderIndex, scrollEl) => {
|
|
|
13905
13925
|
};
|
|
13906
13926
|
const setHeaderActive = (headerIndex, active = true) => {
|
|
13907
13927
|
const headerEl = headerIndex.el;
|
|
13928
|
+
const toolbars = headerIndex.toolbars;
|
|
13929
|
+
const ionTitles = toolbars.map((toolbar) => toolbar.ionTitleEl);
|
|
13908
13930
|
if (active) {
|
|
13909
13931
|
headerEl.classList.remove('header-collapse-condense-inactive');
|
|
13910
|
-
|
|
13932
|
+
ionTitles.forEach((ionTitle) => {
|
|
13933
|
+
if (ionTitle) {
|
|
13934
|
+
ionTitle.removeAttribute('aria-hidden');
|
|
13935
|
+
}
|
|
13936
|
+
});
|
|
13911
13937
|
}
|
|
13912
13938
|
else {
|
|
13913
13939
|
headerEl.classList.add('header-collapse-condense-inactive');
|
|
13914
|
-
|
|
13940
|
+
/**
|
|
13941
|
+
* The small title should only be accessed by screen readers
|
|
13942
|
+
* when the large title collapses into the small title due
|
|
13943
|
+
* to scrolling.
|
|
13944
|
+
*
|
|
13945
|
+
* Originally, the header was given `aria-hidden="true"`
|
|
13946
|
+
* but this caused issues with screen readers not being
|
|
13947
|
+
* able to access any focusable elements within the header.
|
|
13948
|
+
*/
|
|
13949
|
+
ionTitles.forEach((ionTitle) => {
|
|
13950
|
+
if (ionTitle) {
|
|
13951
|
+
ionTitle.setAttribute('aria-hidden', 'true');
|
|
13952
|
+
}
|
|
13953
|
+
});
|
|
13915
13954
|
}
|
|
13916
13955
|
};
|
|
13917
13956
|
const scaleLargeTitles = (toolbars = [], scale = 1, transition = false) => {
|
|
@@ -14097,14 +14136,14 @@ class Header {
|
|
|
14097
14136
|
const collapse = this.collapse || 'none';
|
|
14098
14137
|
// banner role must be at top level, so remove role if inside a menu
|
|
14099
14138
|
const roleType = hostContext('ion-menu', this.el) ? 'none' : 'banner';
|
|
14100
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
14139
|
+
return (hAsync(Host, Object.assign({ key: 'b6cc27f0b08afc9fcc889683525da765d80ba672', role: roleType, class: {
|
|
14101
14140
|
[mode]: true,
|
|
14102
14141
|
// Used internally for styling
|
|
14103
14142
|
[`header-${mode}`]: true,
|
|
14104
14143
|
[`header-translucent`]: this.translucent,
|
|
14105
14144
|
[`header-collapse-${collapse}`]: true,
|
|
14106
14145
|
[`header-translucent-${mode}`]: this.translucent,
|
|
14107
|
-
} }, inheritedAttributes), mode === 'ios' && translucent && hAsync("div", { key: '
|
|
14146
|
+
} }, inheritedAttributes), mode === 'ios' && translucent && hAsync("div", { key: '395766d4dcee3398bc91960db21f922095292f14', class: "header-background" }), hAsync("slot", { key: '09a67ece27b258ff1248805d43d92a49b2c6859a' })));
|
|
14108
14147
|
}
|
|
14109
14148
|
get el() { return getElement(this); }
|
|
14110
14149
|
static get style() { return {
|
|
@@ -14383,7 +14422,7 @@ class Img {
|
|
|
14383
14422
|
render() {
|
|
14384
14423
|
const { loadSrc, alt, onLoad, loadError, inheritedAttributes } = this;
|
|
14385
14424
|
const { draggable } = inheritedAttributes;
|
|
14386
|
-
return (hAsync(Host, { key: '
|
|
14425
|
+
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) })));
|
|
14387
14426
|
}
|
|
14388
14427
|
get el() { return getElement(this); }
|
|
14389
14428
|
static get watchers() { return {
|
|
@@ -14590,7 +14629,7 @@ class InfiniteScroll {
|
|
|
14590
14629
|
render() {
|
|
14591
14630
|
const mode = getIonMode$1(this);
|
|
14592
14631
|
const disabled = this.disabled;
|
|
14593
|
-
return (hAsync(Host, { key: '
|
|
14632
|
+
return (hAsync(Host, { key: 'e844956795f69be33396ce4480aa7a54ad01b28c', class: {
|
|
14594
14633
|
[mode]: true,
|
|
14595
14634
|
'infinite-scroll-loading': this.isLoading,
|
|
14596
14635
|
'infinite-scroll-enabled': !disabled,
|
|
@@ -14646,11 +14685,11 @@ class InfiniteScrollContent {
|
|
|
14646
14685
|
}
|
|
14647
14686
|
render() {
|
|
14648
14687
|
const mode = getIonMode$1(this);
|
|
14649
|
-
return (hAsync(Host, { key: '
|
|
14688
|
+
return (hAsync(Host, { key: '7c16060dcfe2a0b0fb3e2f8f4c449589a76f1baa', class: {
|
|
14650
14689
|
[mode]: true,
|
|
14651
14690
|
// Used internally for styling
|
|
14652
14691
|
[`infinite-scroll-content-${mode}`]: true,
|
|
14653
|
-
} }, hAsync("div", { key: '
|
|
14692
|
+
} }, 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())));
|
|
14654
14693
|
}
|
|
14655
14694
|
static get style() { return {
|
|
14656
14695
|
ios: IonInfiniteScrollContentIosStyle0,
|
|
@@ -15397,7 +15436,7 @@ class Input {
|
|
|
15397
15436
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
15398
15437
|
*/
|
|
15399
15438
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
|
|
15400
|
-
return (hAsync(Host, { key: '
|
|
15439
|
+
return (hAsync(Host, { key: '54b5662d9a7f011a85e4119650c92b9af275bf96', class: createColorClasses$1(this.color, {
|
|
15401
15440
|
[mode]: true,
|
|
15402
15441
|
'has-value': hasValue,
|
|
15403
15442
|
'has-focus': hasFocus,
|
|
@@ -15408,7 +15447,7 @@ class Input {
|
|
|
15408
15447
|
'in-item': inItem,
|
|
15409
15448
|
'in-item-color': hostContext('ion-item.ion-color', this.el),
|
|
15410
15449
|
'input-disabled': disabled,
|
|
15411
|
-
}) }, hAsync("label", { key: '
|
|
15450
|
+
}) }, 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) => {
|
|
15412
15451
|
/**
|
|
15413
15452
|
* This prevents mobile browsers from
|
|
15414
15453
|
* blurring the input when the clear
|
|
@@ -15423,7 +15462,7 @@ class Input {
|
|
|
15423
15462
|
* for screen readers as it means users would be unable to swipe past the clear button.
|
|
15424
15463
|
*/
|
|
15425
15464
|
ev.stopPropagation();
|
|
15426
|
-
}, onClick: this.clearTextInput }, hAsync("ion-icon", { key: '
|
|
15465
|
+
}, 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()));
|
|
15427
15466
|
}
|
|
15428
15467
|
get el() { return getElement(this); }
|
|
15429
15468
|
static get watchers() { return {
|
|
@@ -15545,16 +15584,16 @@ class InputPasswordToggle {
|
|
|
15545
15584
|
const showPasswordIcon = (_a = this.showIcon) !== null && _a !== void 0 ? _a : eye;
|
|
15546
15585
|
const hidePasswordIcon = (_b = this.hideIcon) !== null && _b !== void 0 ? _b : eyeOff;
|
|
15547
15586
|
const isPasswordVisible = type === 'text';
|
|
15548
|
-
return (hAsync(Host, { key: '
|
|
15587
|
+
return (hAsync(Host, { key: 'd9811e25bfeb2aa197352bb9be852e9e420739d5', class: createColorClasses$1(color, {
|
|
15549
15588
|
[mode]: true,
|
|
15550
|
-
}) }, hAsync("ion-button", { key: '
|
|
15589
|
+
}) }, 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) => {
|
|
15551
15590
|
/**
|
|
15552
15591
|
* This prevents mobile browsers from
|
|
15553
15592
|
* blurring the input when the password toggle
|
|
15554
15593
|
* button is activated.
|
|
15555
15594
|
*/
|
|
15556
15595
|
ev.preventDefault();
|
|
15557
|
-
}, onClick: this.togglePasswordVisibility }, hAsync("ion-icon", { key: '
|
|
15596
|
+
}, onClick: this.togglePasswordVisibility }, hAsync("ion-icon", { key: '9c88de8f4631d9bde222ce2edf6950d639e04773', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
|
|
15558
15597
|
}
|
|
15559
15598
|
get el() { return getElement(this); }
|
|
15560
15599
|
static get watchers() { return {
|
|
@@ -15850,11 +15889,11 @@ class ItemDivider {
|
|
|
15850
15889
|
}
|
|
15851
15890
|
render() {
|
|
15852
15891
|
const mode = getIonMode$1(this);
|
|
15853
|
-
return (hAsync(Host, { key: '
|
|
15892
|
+
return (hAsync(Host, { key: '6cff318230a9b2a9db529df154285d3dd9822efe', class: createColorClasses$1(this.color, {
|
|
15854
15893
|
[mode]: true,
|
|
15855
15894
|
'item-divider-sticky': this.sticky,
|
|
15856
15895
|
item: true,
|
|
15857
|
-
}) }, hAsync("slot", { key: '
|
|
15896
|
+
}) }, 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" }))));
|
|
15858
15897
|
}
|
|
15859
15898
|
get el() { return getElement(this); }
|
|
15860
15899
|
static get style() { return {
|
|
@@ -15886,7 +15925,7 @@ class ItemGroup {
|
|
|
15886
15925
|
}
|
|
15887
15926
|
render() {
|
|
15888
15927
|
const mode = getIonMode$1(this);
|
|
15889
|
-
return (hAsync(Host, { key: '
|
|
15928
|
+
return (hAsync(Host, { key: 'f9ffe0290d3fa546494fe55f952d8554f2a8abf8', role: "group", class: {
|
|
15890
15929
|
[mode]: true,
|
|
15891
15930
|
// Used internally for styling
|
|
15892
15931
|
[`item-group-${mode}`]: true,
|
|
@@ -15954,12 +15993,12 @@ class ItemOption {
|
|
|
15954
15993
|
href: this.href,
|
|
15955
15994
|
target: this.target,
|
|
15956
15995
|
};
|
|
15957
|
-
return (hAsync(Host, { key: '
|
|
15996
|
+
return (hAsync(Host, { key: '89310624997821858c1abde60c0ffb142ca466e0', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
15958
15997
|
[mode]: true,
|
|
15959
15998
|
'item-option-disabled': disabled,
|
|
15960
15999
|
'item-option-expandable': expandable,
|
|
15961
16000
|
'ion-activatable': true,
|
|
15962
|
-
}) }, hAsync(TagType, Object.assign({ key: '
|
|
16001
|
+
}) }, 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' }))));
|
|
15963
16002
|
}
|
|
15964
16003
|
get el() { return getElement(this); }
|
|
15965
16004
|
static get style() { return {
|
|
@@ -16006,7 +16045,7 @@ class ItemOptions {
|
|
|
16006
16045
|
render() {
|
|
16007
16046
|
const mode = getIonMode$1(this);
|
|
16008
16047
|
const isEnd = isEndSide(this.side);
|
|
16009
|
-
return (hAsync(Host, { key: '
|
|
16048
|
+
return (hAsync(Host, { key: '6d91399d2aaaa81d514d0bbc8dffe53eeec25d36', class: {
|
|
16010
16049
|
[mode]: true,
|
|
16011
16050
|
// Used internally for styling
|
|
16012
16051
|
[`item-options-${mode}`]: true,
|
|
@@ -16354,6 +16393,8 @@ class ItemSliding {
|
|
|
16354
16393
|
optsWidth = -this.optsWidthLeftSide;
|
|
16355
16394
|
openAmount = optsWidth + (openAmount - optsWidth) * ELASTIC_FACTOR;
|
|
16356
16395
|
}
|
|
16396
|
+
if (openAmount === 0)
|
|
16397
|
+
return;
|
|
16357
16398
|
this.setOpenAmount(openAmount, false);
|
|
16358
16399
|
}
|
|
16359
16400
|
onEnd(gesture) {
|
|
@@ -16468,7 +16509,7 @@ class ItemSliding {
|
|
|
16468
16509
|
}
|
|
16469
16510
|
render() {
|
|
16470
16511
|
const mode = getIonMode$1(this);
|
|
16471
|
-
return (hAsync(Host, { key: '
|
|
16512
|
+
return (hAsync(Host, { key: 'a5216b11d92a1e1afed09d139212e0df81fdab79', class: {
|
|
16472
16513
|
[mode]: true,
|
|
16473
16514
|
'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
|
|
16474
16515
|
'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
|
|
@@ -16577,13 +16618,13 @@ class Label {
|
|
|
16577
16618
|
render() {
|
|
16578
16619
|
const position = this.position;
|
|
16579
16620
|
const mode = getIonMode$1(this);
|
|
16580
|
-
return (hAsync(Host, { key: '
|
|
16621
|
+
return (hAsync(Host, { key: '6353a70565ef6fbbbf4042b000e536c61bcf99a9', class: createColorClasses$1(this.color, {
|
|
16581
16622
|
[mode]: true,
|
|
16582
16623
|
'in-item-color': hostContext('ion-item.ion-color', this.el),
|
|
16583
16624
|
[`label-${position}`]: position !== undefined,
|
|
16584
16625
|
[`label-no-animate`]: this.noAnimate,
|
|
16585
16626
|
'label-rtl': document.dir === 'rtl',
|
|
16586
|
-
}) }, hAsync("slot", { key: '
|
|
16627
|
+
}) }, hAsync("slot", { key: '6ef9c2758c0168442aa84941af0a6cec1ef1ec21' })));
|
|
16587
16628
|
}
|
|
16588
16629
|
get el() { return getElement(this); }
|
|
16589
16630
|
static get watchers() { return {
|
|
@@ -16639,7 +16680,7 @@ class List {
|
|
|
16639
16680
|
render() {
|
|
16640
16681
|
const mode = getIonMode$1(this);
|
|
16641
16682
|
const { lines, inset } = this;
|
|
16642
|
-
return (hAsync(Host, { key: '
|
|
16683
|
+
return (hAsync(Host, { key: '5ff2b0b3989cc99ce17abb8bcd7ec1847940d1ec', role: "list", class: {
|
|
16643
16684
|
[mode]: true,
|
|
16644
16685
|
// Used internally for styling
|
|
16645
16686
|
[`list-${mode}`]: true,
|
|
@@ -16685,10 +16726,10 @@ class ListHeader {
|
|
|
16685
16726
|
render() {
|
|
16686
16727
|
const { lines } = this;
|
|
16687
16728
|
const mode = getIonMode$1(this);
|
|
16688
|
-
return (hAsync(Host, { key: '
|
|
16729
|
+
return (hAsync(Host, { key: 'fb78bd8601cbd7b90ec84a96e0c8325be1132b1e', class: createColorClasses$1(this.color, {
|
|
16689
16730
|
[mode]: true,
|
|
16690
16731
|
[`list-header-lines-${lines}`]: lines !== undefined,
|
|
16691
|
-
}) }, hAsync("div", { key: '
|
|
16732
|
+
}) }, hAsync("div", { key: '2580ad49f3a54973e15f14d645a1e55a6fa066ac', class: "list-header-inner" }, hAsync("slot", { key: '677b2e2ec8eeb3ae6ad329e86c76451cf3ae6c2f' }))));
|
|
16692
16733
|
}
|
|
16693
16734
|
static get style() { return {
|
|
16694
16735
|
ios: IonListHeaderIosStyle0,
|
|
@@ -16957,9 +16998,9 @@ class Loading {
|
|
|
16957
16998
|
* Otherwise, don't set aria-labelledby.
|
|
16958
16999
|
*/
|
|
16959
17000
|
const ariaLabelledBy = message !== undefined ? msgId : null;
|
|
16960
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
17001
|
+
return (hAsync(Host, Object.assign({ key: 'd97f536b7f443ea19a2bbf2dcbc7f546b8e0a092', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
|
|
16961
17002
|
zIndex: `${40000 + this.overlayIndex}`,
|
|
16962
|
-
}, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), hAsync("ion-backdrop", { key: '
|
|
17003
|
+
}, 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" })));
|
|
16963
17004
|
}
|
|
16964
17005
|
get el() { return getElement(this); }
|
|
16965
17006
|
static get watchers() { return {
|
|
@@ -17311,7 +17352,7 @@ const createMenuController = () => {
|
|
|
17311
17352
|
menus.splice(index, 1);
|
|
17312
17353
|
}
|
|
17313
17354
|
};
|
|
17314
|
-
const _setOpen = async (menu, shouldOpen, animated) => {
|
|
17355
|
+
const _setOpen = async (menu, shouldOpen, animated, role) => {
|
|
17315
17356
|
if (isAnimatingSync()) {
|
|
17316
17357
|
return false;
|
|
17317
17358
|
}
|
|
@@ -17321,7 +17362,7 @@ const createMenuController = () => {
|
|
|
17321
17362
|
await openedMenu.setOpen(false, false);
|
|
17322
17363
|
}
|
|
17323
17364
|
}
|
|
17324
|
-
return menu._setOpen(shouldOpen, animated);
|
|
17365
|
+
return menu._setOpen(shouldOpen, animated, role);
|
|
17325
17366
|
};
|
|
17326
17367
|
const _createAnimation = (type, menuCmp) => {
|
|
17327
17368
|
const animationBuilder = menuAnimations.get(type); // TODO(FW-2832): type
|
|
@@ -17555,13 +17596,13 @@ class Menu {
|
|
|
17555
17596
|
if (shouldClose) {
|
|
17556
17597
|
ev.preventDefault();
|
|
17557
17598
|
ev.stopPropagation();
|
|
17558
|
-
this.close();
|
|
17599
|
+
this.close(undefined, BACKDROP);
|
|
17559
17600
|
}
|
|
17560
17601
|
}
|
|
17561
17602
|
}
|
|
17562
17603
|
onKeydown(ev) {
|
|
17563
17604
|
if (ev.key === 'Escape') {
|
|
17564
|
-
this.close();
|
|
17605
|
+
this.close(undefined, BACKDROP);
|
|
17565
17606
|
}
|
|
17566
17607
|
}
|
|
17567
17608
|
/**
|
|
@@ -17590,8 +17631,8 @@ class Menu {
|
|
|
17590
17631
|
* Closes the menu. If the menu is already closed or it can't be closed,
|
|
17591
17632
|
* it returns `false`.
|
|
17592
17633
|
*/
|
|
17593
|
-
close(animated = true) {
|
|
17594
|
-
return this.setOpen(false, animated);
|
|
17634
|
+
close(animated = true, role) {
|
|
17635
|
+
return this.setOpen(false, animated, role);
|
|
17595
17636
|
}
|
|
17596
17637
|
/**
|
|
17597
17638
|
* Toggles the menu. If the menu is already open, it will try to close, otherwise it will try to open it.
|
|
@@ -17604,8 +17645,8 @@ class Menu {
|
|
|
17604
17645
|
* Opens or closes the button.
|
|
17605
17646
|
* If the operation can't be completed successfully, it returns `false`.
|
|
17606
17647
|
*/
|
|
17607
|
-
setOpen(shouldOpen, animated = true) {
|
|
17608
|
-
return menuController._setOpen(this, shouldOpen, animated);
|
|
17648
|
+
setOpen(shouldOpen, animated = true, role) {
|
|
17649
|
+
return menuController._setOpen(this, shouldOpen, animated, role);
|
|
17609
17650
|
}
|
|
17610
17651
|
trapKeyboardFocus(ev, doc) {
|
|
17611
17652
|
const target = ev.target;
|
|
@@ -17643,12 +17684,12 @@ class Menu {
|
|
|
17643
17684
|
}
|
|
17644
17685
|
}
|
|
17645
17686
|
}
|
|
17646
|
-
async _setOpen(shouldOpen, animated = true) {
|
|
17687
|
+
async _setOpen(shouldOpen, animated = true, role) {
|
|
17647
17688
|
// If the menu is disabled or it is currently being animated, let's do nothing
|
|
17648
17689
|
if (!this._isActive() || this.isAnimating || shouldOpen === this._isOpen) {
|
|
17649
17690
|
return false;
|
|
17650
17691
|
}
|
|
17651
|
-
this.beforeAnimation(shouldOpen);
|
|
17692
|
+
this.beforeAnimation(shouldOpen, role);
|
|
17652
17693
|
await this.loadAnimation();
|
|
17653
17694
|
await this.startAnimation(shouldOpen, animated);
|
|
17654
17695
|
/**
|
|
@@ -17660,7 +17701,7 @@ class Menu {
|
|
|
17660
17701
|
this.operationCancelled = false;
|
|
17661
17702
|
return false;
|
|
17662
17703
|
}
|
|
17663
|
-
this.afterAnimation(shouldOpen);
|
|
17704
|
+
this.afterAnimation(shouldOpen, role);
|
|
17664
17705
|
return true;
|
|
17665
17706
|
}
|
|
17666
17707
|
async loadAnimation() {
|
|
@@ -17735,7 +17776,7 @@ class Menu {
|
|
|
17735
17776
|
return checkEdgeSide(window, detail.currentX, this.isEndSide, this.maxEdgeStart);
|
|
17736
17777
|
}
|
|
17737
17778
|
onWillStart() {
|
|
17738
|
-
this.beforeAnimation(!this._isOpen);
|
|
17779
|
+
this.beforeAnimation(!this._isOpen, GESTURE);
|
|
17739
17780
|
return this.loadAnimation();
|
|
17740
17781
|
}
|
|
17741
17782
|
onStart() {
|
|
@@ -17802,11 +17843,27 @@ class Menu {
|
|
|
17802
17843
|
const playTo = this._isOpen ? !shouldComplete : shouldComplete;
|
|
17803
17844
|
this.animation
|
|
17804
17845
|
.easing('cubic-bezier(0.4, 0.0, 0.6, 1)')
|
|
17805
|
-
.onFinish(() => this.afterAnimation(shouldOpen), { oneTimeCallback: true })
|
|
17846
|
+
.onFinish(() => this.afterAnimation(shouldOpen, GESTURE), { oneTimeCallback: true })
|
|
17806
17847
|
.progressEnd(playTo ? 1 : 0, this._isOpen ? 1 - newStepValue : newStepValue, 300);
|
|
17807
17848
|
}
|
|
17808
|
-
beforeAnimation(shouldOpen) {
|
|
17849
|
+
beforeAnimation(shouldOpen, role) {
|
|
17809
17850
|
assert(!this.isAnimating, '_before() should not be called while animating');
|
|
17851
|
+
/**
|
|
17852
|
+
* When the menu is presented on an Android device, TalkBack's focus rings
|
|
17853
|
+
* may appear in the wrong position due to the transition (specifically
|
|
17854
|
+
* `transform` styles). This occurs because the focus rings are initially
|
|
17855
|
+
* displayed at the starting position of the elements before the transition
|
|
17856
|
+
* begins. This workaround ensures the focus rings do not appear in the
|
|
17857
|
+
* incorrect location.
|
|
17858
|
+
*
|
|
17859
|
+
* If this solution is applied to iOS devices, then it leads to a bug where
|
|
17860
|
+
* the overlays cannot be accessed by screen readers. This is due to
|
|
17861
|
+
* VoiceOver not being able to update the accessibility tree when the
|
|
17862
|
+
* `aria-hidden` is removed.
|
|
17863
|
+
*/
|
|
17864
|
+
if (isPlatform('android')) {
|
|
17865
|
+
this.el.setAttribute('aria-hidden', 'true');
|
|
17866
|
+
}
|
|
17810
17867
|
// this places the menu into the correct location before it animates in
|
|
17811
17868
|
// this css class doesn't actually kick off any animations
|
|
17812
17869
|
this.el.classList.add(SHOW_MENU);
|
|
@@ -17844,10 +17901,10 @@ class Menu {
|
|
|
17844
17901
|
this.ionWillOpen.emit();
|
|
17845
17902
|
}
|
|
17846
17903
|
else {
|
|
17847
|
-
this.ionWillClose.emit();
|
|
17904
|
+
this.ionWillClose.emit({ role });
|
|
17848
17905
|
}
|
|
17849
17906
|
}
|
|
17850
|
-
afterAnimation(isOpen) {
|
|
17907
|
+
afterAnimation(isOpen, role) {
|
|
17851
17908
|
var _a;
|
|
17852
17909
|
// keep opening/closing the menu disabled for a touch more yet
|
|
17853
17910
|
// only add listeners/css if it's enabled and isOpen
|
|
@@ -17859,6 +17916,16 @@ class Menu {
|
|
|
17859
17916
|
this.blocker.unblock();
|
|
17860
17917
|
}
|
|
17861
17918
|
if (isOpen) {
|
|
17919
|
+
/**
|
|
17920
|
+
* When the menu is presented on an Android device, TalkBack's focus rings
|
|
17921
|
+
* may appear in the wrong position due to the transition (specifically
|
|
17922
|
+
* `transform` styles). The menu is hidden from screen readers during the
|
|
17923
|
+
* transition to prevent this. Once the transition is complete, the menu
|
|
17924
|
+
* is shown again.
|
|
17925
|
+
*/
|
|
17926
|
+
if (isPlatform('android')) {
|
|
17927
|
+
this.el.removeAttribute('aria-hidden');
|
|
17928
|
+
}
|
|
17862
17929
|
// emit open event
|
|
17863
17930
|
this.ionDidOpen.emit();
|
|
17864
17931
|
/**
|
|
@@ -17874,6 +17941,7 @@ class Menu {
|
|
|
17874
17941
|
document.addEventListener('focus', this.handleFocus, true);
|
|
17875
17942
|
}
|
|
17876
17943
|
else {
|
|
17944
|
+
this.el.removeAttribute('aria-hidden');
|
|
17877
17945
|
// remove css classes and unhide content from screen readers
|
|
17878
17946
|
this.el.classList.remove(SHOW_MENU);
|
|
17879
17947
|
/**
|
|
@@ -17897,7 +17965,7 @@ class Menu {
|
|
|
17897
17965
|
this.animation.stop();
|
|
17898
17966
|
}
|
|
17899
17967
|
// emit close event
|
|
17900
|
-
this.ionDidClose.emit();
|
|
17968
|
+
this.ionDidClose.emit({ role });
|
|
17901
17969
|
// undo focus trapping so multiple menus don't collide
|
|
17902
17970
|
document.removeEventListener('focus', this.handleFocus, true);
|
|
17903
17971
|
}
|
|
@@ -17929,7 +17997,7 @@ class Menu {
|
|
|
17929
17997
|
* If the menu is disabled then we should
|
|
17930
17998
|
* forcibly close the menu even if it is open.
|
|
17931
17999
|
*/
|
|
17932
|
-
this.afterAnimation(false);
|
|
18000
|
+
this.afterAnimation(false, GESTURE);
|
|
17933
18001
|
}
|
|
17934
18002
|
}
|
|
17935
18003
|
render() {
|
|
@@ -17940,14 +18008,14 @@ class Menu {
|
|
|
17940
18008
|
* the ionBackButton listener in the menu controller
|
|
17941
18009
|
* will handle closing the menu when Escape is pressed.
|
|
17942
18010
|
*/
|
|
17943
|
-
return (hAsync(Host, { key: '
|
|
18011
|
+
return (hAsync(Host, { key: 'da96fdb4c5ddf60e615cc4cdda7ccdb3fd7e089b', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
|
|
17944
18012
|
[mode]: true,
|
|
17945
18013
|
[`menu-type-${type}`]: true,
|
|
17946
18014
|
'menu-enabled': !disabled,
|
|
17947
18015
|
[`menu-side-${side}`]: true,
|
|
17948
18016
|
'menu-pane-visible': isPaneVisible,
|
|
17949
18017
|
'split-pane-side': hostContext('ion-split-pane', el),
|
|
17950
|
-
} }, hAsync("div", { key: '
|
|
18018
|
+
} }, 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" })));
|
|
17951
18019
|
}
|
|
17952
18020
|
get el() { return getElement(this); }
|
|
17953
18021
|
static get watchers() { return {
|
|
@@ -18050,7 +18118,7 @@ class MenuButton {
|
|
|
18050
18118
|
type: this.type,
|
|
18051
18119
|
};
|
|
18052
18120
|
const ariaLabel = inheritedAttributes['aria-label'] || 'menu';
|
|
18053
|
-
return (hAsync(Host, { key: '
|
|
18121
|
+
return (hAsync(Host, { key: '7ec29715ce7926b7c2b08f3d9cac8aaa16b3dc28', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses$1(color, {
|
|
18054
18122
|
[mode]: true,
|
|
18055
18123
|
button: true, // ion-buttons target .button
|
|
18056
18124
|
'menu-button-hidden': hidden,
|
|
@@ -18059,7 +18127,7 @@ class MenuButton {
|
|
|
18059
18127
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
18060
18128
|
'ion-activatable': true,
|
|
18061
18129
|
'ion-focusable': true,
|
|
18062
|
-
}) }, hAsync("button", Object.assign({ key: '
|
|
18130
|
+
}) }, 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" }))));
|
|
18063
18131
|
}
|
|
18064
18132
|
get el() { return getElement(this); }
|
|
18065
18133
|
static get style() { return {
|
|
@@ -18108,10 +18176,10 @@ class MenuToggle {
|
|
|
18108
18176
|
render() {
|
|
18109
18177
|
const mode = getIonMode$1(this);
|
|
18110
18178
|
const hidden = this.autoHide && !this.visible;
|
|
18111
|
-
return (hAsync(Host, { key: '
|
|
18179
|
+
return (hAsync(Host, { key: '7c27ea5b0795676bf5cb33e1f83aa142c197f64e', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
|
|
18112
18180
|
[mode]: true,
|
|
18113
18181
|
'menu-toggle-hidden': hidden,
|
|
18114
|
-
} }, hAsync("slot", { key: '
|
|
18182
|
+
} }, hAsync("slot", { key: '69f187becedc0fe34603d41d279f043cf0fdf776' })));
|
|
18115
18183
|
}
|
|
18116
18184
|
static get style() { return IonMenuToggleStyle0; }
|
|
18117
18185
|
static get cmpMeta() { return {
|
|
@@ -20115,18 +20183,18 @@ class Modal {
|
|
|
20115
20183
|
const mode = getIonMode$1(this);
|
|
20116
20184
|
const isCardModal = presentingElement !== undefined && mode === 'ios';
|
|
20117
20185
|
const isHandleCycle = handleBehavior === 'cycle';
|
|
20118
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
20186
|
+
return (hAsync(Host, Object.assign({ key: 'b4da5111fe4719fa450c39b2d4bd884a302a7924', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
20119
20187
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
20120
|
-
}, 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: '
|
|
20188
|
+
}, 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',
|
|
20121
20189
|
/*
|
|
20122
20190
|
role and aria-modal must be used on the
|
|
20123
20191
|
same element. They must also be set inside the
|
|
20124
20192
|
shadow DOM otherwise ion-button will not be highlighted
|
|
20125
20193
|
when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
|
|
20126
20194
|
*/
|
|
20127
|
-
role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: '
|
|
20195
|
+
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",
|
|
20128
20196
|
// Prevents the handle from receiving keyboard focus when it does not cycle
|
|
20129
|
-
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: '
|
|
20197
|
+
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' }))));
|
|
20130
20198
|
}
|
|
20131
20199
|
get el() { return getElement(this); }
|
|
20132
20200
|
static get watchers() { return {
|
|
@@ -21075,7 +21143,7 @@ class Nav {
|
|
|
21075
21143
|
}
|
|
21076
21144
|
}
|
|
21077
21145
|
render() {
|
|
21078
|
-
return hAsync("slot", { key: '
|
|
21146
|
+
return hAsync("slot", { key: 'dfe98cb6604a2015a49f41beffebdd2da957dfff' });
|
|
21079
21147
|
}
|
|
21080
21148
|
get el() { return getElement(this); }
|
|
21081
21149
|
static get watchers() { return {
|
|
@@ -21148,7 +21216,7 @@ class NavLink {
|
|
|
21148
21216
|
this.routerAnimation = undefined;
|
|
21149
21217
|
}
|
|
21150
21218
|
render() {
|
|
21151
|
-
return hAsync(Host, { key: '
|
|
21219
|
+
return hAsync(Host, { key: 'd2f8545b4fbd5aa25ef36eb01dffbc5d35ccfbb9', onClick: this.onClick });
|
|
21152
21220
|
}
|
|
21153
21221
|
get el() { return getElement(this); }
|
|
21154
21222
|
static get cmpMeta() { return {
|
|
@@ -21182,9 +21250,9 @@ class Note {
|
|
|
21182
21250
|
}
|
|
21183
21251
|
render() {
|
|
21184
21252
|
const mode = getIonMode$1(this);
|
|
21185
|
-
return (hAsync(Host, { key: '
|
|
21253
|
+
return (hAsync(Host, { key: '10a3495bc21166176986441479f8f7539029d161', class: createColorClasses$1(this.color, {
|
|
21186
21254
|
[mode]: true,
|
|
21187
|
-
}) }, hAsync("slot", { key: '
|
|
21255
|
+
}) }, hAsync("slot", { key: 'b6a9459e1b85f608fafd060a4bfeb11637ebe873' })));
|
|
21188
21256
|
}
|
|
21189
21257
|
static get style() { return {
|
|
21190
21258
|
ios: IonNoteIosStyle0,
|
|
@@ -21681,7 +21749,7 @@ class Picker$1 {
|
|
|
21681
21749
|
this.emitInputModeChange();
|
|
21682
21750
|
}
|
|
21683
21751
|
render() {
|
|
21684
|
-
return (hAsync(Host, { key: '
|
|
21752
|
+
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) => {
|
|
21685
21753
|
var _a;
|
|
21686
21754
|
/**
|
|
21687
21755
|
* The "Enter" key represents
|
|
@@ -21696,7 +21764,7 @@ class Picker$1 {
|
|
|
21696
21764
|
if (ev.key === 'Enter') {
|
|
21697
21765
|
(_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.blur();
|
|
21698
21766
|
}
|
|
21699
|
-
}, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), hAsync("div", { key: '
|
|
21767
|
+
}, 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' })));
|
|
21700
21768
|
}
|
|
21701
21769
|
get el() { return getElement(this); }
|
|
21702
21770
|
static get style() { return {
|
|
@@ -21949,11 +22017,11 @@ class Picker {
|
|
|
21949
22017
|
render() {
|
|
21950
22018
|
const { htmlAttributes } = this;
|
|
21951
22019
|
const mode = getIonMode$1(this);
|
|
21952
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
22020
|
+
return (hAsync(Host, Object.assign({ key: '0712fa8732141848e50ad2e08e2ba66ef2a48991', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
|
|
21953
22021
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
21954
22022
|
}, class: Object.assign({ [mode]: true,
|
|
21955
22023
|
// Used internally for styling
|
|
21956
|
-
[`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), hAsync("ion-backdrop", { key: '
|
|
22024
|
+
[`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" })));
|
|
21957
22025
|
}
|
|
21958
22026
|
get el() { return getElement(this); }
|
|
21959
22027
|
static get watchers() { return {
|
|
@@ -22535,12 +22603,12 @@ class PickerColumn {
|
|
|
22535
22603
|
render() {
|
|
22536
22604
|
const { color, disabled, isActive, numericInput } = this;
|
|
22537
22605
|
const mode = getIonMode$1(this);
|
|
22538
|
-
return (hAsync(Host, { key: '
|
|
22606
|
+
return (hAsync(Host, { key: 'a221dc10f1eb7c41637a16d2c7167c16939822fd', class: createColorClasses$1(color, {
|
|
22539
22607
|
[mode]: true,
|
|
22540
22608
|
['picker-column-active']: isActive,
|
|
22541
22609
|
['picker-column-numeric-input']: numericInput,
|
|
22542
22610
|
['picker-column-disabled']: disabled,
|
|
22543
|
-
}) }, this.renderAssistiveFocusable(), hAsync("slot", { key: '
|
|
22611
|
+
}) }, this.renderAssistiveFocusable(), hAsync("slot", { key: '81b0656f606856f3dc0a657bf167d81a5011405e', name: "prefix" }), hAsync("div", { key: '71b9de67c04150255dd66592601c9d926db0c31c', "aria-hidden": "true", class: "picker-opts", ref: (el) => {
|
|
22544
22612
|
this.scrollEl = el;
|
|
22545
22613
|
},
|
|
22546
22614
|
/**
|
|
@@ -22561,7 +22629,7 @@ class PickerColumn {
|
|
|
22561
22629
|
* To prevent this, we set the tabIndex to -1. This
|
|
22562
22630
|
* will match the behavior of the other browsers.
|
|
22563
22631
|
*/
|
|
22564
|
-
tabIndex: -1 }, hAsync("div", { key: '
|
|
22632
|
+
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" })));
|
|
22565
22633
|
}
|
|
22566
22634
|
get el() { return getElement(this); }
|
|
22567
22635
|
static get watchers() { return {
|
|
@@ -22928,9 +22996,9 @@ class PickerColumnCmp {
|
|
|
22928
22996
|
render() {
|
|
22929
22997
|
const col = this.col;
|
|
22930
22998
|
const mode = getIonMode$1(this);
|
|
22931
|
-
return (hAsync(Host, { key: '
|
|
22999
|
+
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: {
|
|
22932
23000
|
'max-width': this.col.columnWidth,
|
|
22933
|
-
} }, col.prefix && (hAsync("div", { key: '
|
|
23001
|
+
} }, 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))));
|
|
22934
23002
|
}
|
|
22935
23003
|
get el() { return getElement(this); }
|
|
22936
23004
|
static get watchers() { return {
|
|
@@ -23034,10 +23102,10 @@ class PickerColumnOption {
|
|
|
23034
23102
|
render() {
|
|
23035
23103
|
const { color, disabled, ariaLabel } = this;
|
|
23036
23104
|
const mode = getIonMode$1(this);
|
|
23037
|
-
return (hAsync(Host, { key: '
|
|
23105
|
+
return (hAsync(Host, { key: 'c743c6ef44bb9f765cc15b3b5d2864de6520203a', class: createColorClasses$1(color, {
|
|
23038
23106
|
[mode]: true,
|
|
23039
23107
|
['option-disabled']: disabled,
|
|
23040
|
-
}) }, hAsync("button", { key: '
|
|
23108
|
+
}) }, hAsync("button", { key: '4c3d9eb245c52b2c007f727e145cfb55759bd7a9', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, hAsync("slot", { key: '4c907d2187cbe9d5941e27f2b12578e2b7271461' }))));
|
|
23041
23109
|
}
|
|
23042
23110
|
get el() { return getElement(this); }
|
|
23043
23111
|
static get watchers() { return {
|
|
@@ -24351,9 +24419,9 @@ class Popover {
|
|
|
24351
24419
|
const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
|
|
24352
24420
|
const desktop = isPlatform('desktop');
|
|
24353
24421
|
const enableArrow = arrow && !parentPopover;
|
|
24354
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
24422
|
+
return (hAsync(Host, Object.assign({ key: 'ffe8b37c9ffb5cac210a7307e6cdfcf78712905b', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
24355
24423
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
24356
|
-
}, 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: '
|
|
24424
|
+
}, 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' })))));
|
|
24357
24425
|
}
|
|
24358
24426
|
get el() { return getElement(this); }
|
|
24359
24427
|
static get watchers() { return {
|
|
@@ -24445,7 +24513,7 @@ class ProgressBar {
|
|
|
24445
24513
|
const mode = getIonMode$1(this);
|
|
24446
24514
|
// If the progress is displayed as a solid bar.
|
|
24447
24515
|
const progressSolid = buffer === 1;
|
|
24448
|
-
return (hAsync(Host, { key: '
|
|
24516
|
+
return (hAsync(Host, { key: '8d8ddf0b26fe33803d3a6168cbedd523d1a888e7', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses$1(color, {
|
|
24449
24517
|
[mode]: true,
|
|
24450
24518
|
[`progress-bar-${type}`]: true,
|
|
24451
24519
|
'progress-paused': paused,
|
|
@@ -24578,8 +24646,10 @@ class Radio {
|
|
|
24578
24646
|
}
|
|
24579
24647
|
/** @internal */
|
|
24580
24648
|
async setFocus(ev) {
|
|
24581
|
-
ev
|
|
24582
|
-
|
|
24649
|
+
if (ev !== undefined) {
|
|
24650
|
+
ev.stopPropagation();
|
|
24651
|
+
ev.preventDefault();
|
|
24652
|
+
}
|
|
24583
24653
|
this.el.focus();
|
|
24584
24654
|
}
|
|
24585
24655
|
/** @internal */
|
|
@@ -24613,7 +24683,7 @@ class Radio {
|
|
|
24613
24683
|
const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
|
|
24614
24684
|
const mode = getIonMode$1(this);
|
|
24615
24685
|
const inItem = hostContext('ion-item', el);
|
|
24616
|
-
return (hAsync(Host, { key: '
|
|
24686
|
+
return (hAsync(Host, { key: '5a0adab55ad009305de4856fa1b9f93f2279a734', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses$1(color, {
|
|
24617
24687
|
[mode]: true,
|
|
24618
24688
|
'in-item': inItem,
|
|
24619
24689
|
'radio-checked': checked,
|
|
@@ -24624,10 +24694,10 @@ class Radio {
|
|
|
24624
24694
|
// Focus and active styling should not apply when the radio is in an item
|
|
24625
24695
|
'ion-activatable': !inItem,
|
|
24626
24696
|
'ion-focusable': !inItem,
|
|
24627
|
-
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, hAsync("label", { key: '
|
|
24697
|
+
}), 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: {
|
|
24628
24698
|
'label-text-wrapper': true,
|
|
24629
24699
|
'label-text-wrapper-hidden': !hasLabel,
|
|
24630
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
24700
|
+
}, part: "label" }, hAsync("slot", { key: '6cedf4e7b3bd03e4a635727dd7b6094bab64af64' })), hAsync("div", { key: '26dd48d9d2848b7f100b732abdc4a3171adde483', class: "native-wrapper" }, this.renderRadioControl()))));
|
|
24631
24701
|
}
|
|
24632
24702
|
get el() { return getElement(this); }
|
|
24633
24703
|
static get watchers() { return {
|
|
@@ -24759,7 +24829,9 @@ class RadioGroup {
|
|
|
24759
24829
|
this.ionChange.emit({ value, event });
|
|
24760
24830
|
}
|
|
24761
24831
|
onKeydown(ev) {
|
|
24762
|
-
|
|
24832
|
+
// We don't want the value to automatically change/emit when the radio group is part of a select interface
|
|
24833
|
+
// as this will cause the interface to close when navigating through the radio group options
|
|
24834
|
+
const inSelectInterface = !!this.el.closest('ion-select-popover') || !!this.el.closest('ion-select-modal');
|
|
24763
24835
|
if (ev.target && !this.el.contains(ev.target)) {
|
|
24764
24836
|
return;
|
|
24765
24837
|
}
|
|
@@ -24783,7 +24855,7 @@ class RadioGroup {
|
|
|
24783
24855
|
}
|
|
24784
24856
|
if (next && radios.includes(next)) {
|
|
24785
24857
|
next.setFocus(ev);
|
|
24786
|
-
if (!
|
|
24858
|
+
if (!inSelectInterface) {
|
|
24787
24859
|
this.value = next.value;
|
|
24788
24860
|
this.emitValueChange(ev);
|
|
24789
24861
|
}
|
|
@@ -24808,11 +24880,16 @@ class RadioGroup {
|
|
|
24808
24880
|
}
|
|
24809
24881
|
}
|
|
24810
24882
|
}
|
|
24883
|
+
/** @internal */
|
|
24884
|
+
async setFocus() {
|
|
24885
|
+
const radioToFocus = this.getRadios().find((r) => r.tabIndex !== -1);
|
|
24886
|
+
radioToFocus === null || radioToFocus === void 0 ? void 0 : radioToFocus.setFocus();
|
|
24887
|
+
}
|
|
24811
24888
|
render() {
|
|
24812
24889
|
const { label, labelId, el, name, value } = this;
|
|
24813
24890
|
const mode = getIonMode$1(this);
|
|
24814
24891
|
renderHiddenInput(true, el, name, value, false);
|
|
24815
|
-
return hAsync(Host, { key: '
|
|
24892
|
+
return hAsync(Host, { key: 'a853e38901f0f4ba17bbf21ebb5da5b5c20b327e', role: "radiogroup", "aria-labelledby": label ? labelId : null, onClick: this.onClick, class: mode });
|
|
24816
24893
|
}
|
|
24817
24894
|
get el() { return getElement(this); }
|
|
24818
24895
|
static get watchers() { return {
|
|
@@ -24825,7 +24902,8 @@ class RadioGroup {
|
|
|
24825
24902
|
"allowEmptySelection": [4, "allow-empty-selection"],
|
|
24826
24903
|
"compareWith": [1, "compare-with"],
|
|
24827
24904
|
"name": [1],
|
|
24828
|
-
"value": [1032]
|
|
24905
|
+
"value": [1032],
|
|
24906
|
+
"setFocus": [64]
|
|
24829
24907
|
},
|
|
24830
24908
|
"$listeners$": [[4, "keydown", "onKeydown"]],
|
|
24831
24909
|
"$lazyBundleId$": "-",
|
|
@@ -25444,7 +25522,7 @@ class Range {
|
|
|
25444
25522
|
const needsEndAdjustment = inItem && !hasEndContent;
|
|
25445
25523
|
const mode = getIonMode$1(this);
|
|
25446
25524
|
renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
|
|
25447
|
-
return (hAsync(Host, { key: '
|
|
25525
|
+
return (hAsync(Host, { key: '05c699caaead7cc74deaae2a958c4632191473a8', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
|
|
25448
25526
|
[mode]: true,
|
|
25449
25527
|
'in-item': inItem,
|
|
25450
25528
|
'range-disabled': disabled,
|
|
@@ -25453,10 +25531,10 @@ class Range {
|
|
|
25453
25531
|
[`range-label-placement-${labelPlacement}`]: true,
|
|
25454
25532
|
'range-item-start-adjustment': needsStartAdjustment,
|
|
25455
25533
|
'range-item-end-adjustment': needsEndAdjustment,
|
|
25456
|
-
}) }, hAsync("label", { key: '
|
|
25534
|
+
}) }, hAsync("label", { key: '959837bcc48c4bda33ae1f62b66ef444329a2961', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: 'a434c6b5c26f57f52b3af98d881e7e6a179c89fc', class: {
|
|
25457
25535
|
'label-text-wrapper': true,
|
|
25458
25536
|
'label-text-wrapper-hidden': !hasLabel,
|
|
25459
|
-
}, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '
|
|
25537
|
+
}, 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" })))));
|
|
25460
25538
|
}
|
|
25461
25539
|
get el() { return getElement(this); }
|
|
25462
25540
|
static get watchers() { return {
|
|
@@ -26357,7 +26435,7 @@ class Refresher {
|
|
|
26357
26435
|
}
|
|
26358
26436
|
render() {
|
|
26359
26437
|
const mode = getIonMode$1(this);
|
|
26360
|
-
return (hAsync(Host, { key: '
|
|
26438
|
+
return (hAsync(Host, { key: '9d4ac22988aec2c6af0b0c90934c52f62f0e4ce3', slot: "fixed", class: {
|
|
26361
26439
|
[mode]: true,
|
|
26362
26440
|
// Used internally for styling
|
|
26363
26441
|
[`refresher-${mode}`]: true,
|
|
@@ -26585,7 +26663,7 @@ class RefresherContent {
|
|
|
26585
26663
|
const pullingIcon = this.pullingIcon;
|
|
26586
26664
|
const hasSpinner = pullingIcon != null && SPINNERS[pullingIcon] !== undefined;
|
|
26587
26665
|
const mode = getIonMode$1(this);
|
|
26588
|
-
return (hAsync(Host, { key: '
|
|
26666
|
+
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())));
|
|
26589
26667
|
}
|
|
26590
26668
|
get el() { return getElement(this); }
|
|
26591
26669
|
static get cmpMeta() { return {
|
|
@@ -26628,7 +26706,7 @@ class Reorder {
|
|
|
26628
26706
|
render() {
|
|
26629
26707
|
const mode = getIonMode$1(this);
|
|
26630
26708
|
const reorderIcon = mode === 'ios' ? reorderThreeOutline : reorderTwoSharp;
|
|
26631
|
-
return (hAsync(Host, { key: '
|
|
26709
|
+
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" }))));
|
|
26632
26710
|
}
|
|
26633
26711
|
get el() { return getElement(this); }
|
|
26634
26712
|
static get style() { return {
|
|
@@ -26882,7 +26960,7 @@ class ReorderGroup {
|
|
|
26882
26960
|
}
|
|
26883
26961
|
render() {
|
|
26884
26962
|
const mode = getIonMode$1(this);
|
|
26885
|
-
return (hAsync(Host, { key: '
|
|
26963
|
+
return (hAsync(Host, { key: 'a38c7fbceb677201330a602273d5b55abb32da19', class: {
|
|
26886
26964
|
[mode]: true,
|
|
26887
26965
|
'reorder-enabled': !this.disabled,
|
|
26888
26966
|
'reorder-list-active': this.state !== 0 /* ReorderGroupState.Idle */,
|
|
@@ -26990,7 +27068,7 @@ class RippleEffect {
|
|
|
26990
27068
|
}
|
|
26991
27069
|
render() {
|
|
26992
27070
|
const mode = getIonMode$1(this);
|
|
26993
|
-
return (hAsync(Host, { key: '
|
|
27071
|
+
return (hAsync(Host, { key: '7ae559bda5d2c1856a45bfa150c2cb4f83373f8e', role: "presentation", class: {
|
|
26994
27072
|
[mode]: true,
|
|
26995
27073
|
unbounded: this.unbounded,
|
|
26996
27074
|
} }));
|
|
@@ -27932,10 +28010,10 @@ class RouterLink {
|
|
|
27932
28010
|
rel: this.rel,
|
|
27933
28011
|
target: this.target,
|
|
27934
28012
|
};
|
|
27935
|
-
return (hAsync(Host, { key: '
|
|
28013
|
+
return (hAsync(Host, { key: '529ceed5beaf92d7b4cc315c82f449eac18310e8', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
27936
28014
|
[mode]: true,
|
|
27937
28015
|
'ion-activatable': true,
|
|
27938
|
-
}) }, hAsync("a", Object.assign({ key: '
|
|
28016
|
+
}) }, hAsync("a", Object.assign({ key: 'd5f1f8b256695d70bdafd20ff3d1b625963fa2da' }, attrs), hAsync("slot", { key: '613fcdb36a71e076f989551ea21f1d5c118b1cd2' }))));
|
|
27939
28017
|
}
|
|
27940
28018
|
static get style() { return IonRouterLinkStyle0; }
|
|
27941
28019
|
static get cmpMeta() { return {
|
|
@@ -28131,7 +28209,7 @@ class RouterOutlet {
|
|
|
28131
28209
|
return true;
|
|
28132
28210
|
}
|
|
28133
28211
|
render() {
|
|
28134
|
-
return hAsync("slot", { key: '
|
|
28212
|
+
return hAsync("slot", { key: '44a7798b8574966f7fd699564b6006411a98a805' });
|
|
28135
28213
|
}
|
|
28136
28214
|
get el() { return getElement(this); }
|
|
28137
28215
|
static get watchers() { return {
|
|
@@ -28165,7 +28243,7 @@ class Row {
|
|
|
28165
28243
|
registerInstance(this, hostRef);
|
|
28166
28244
|
}
|
|
28167
28245
|
render() {
|
|
28168
|
-
return (hAsync(Host, { key: '
|
|
28246
|
+
return (hAsync(Host, { key: 'aea072a5005e3f1f309f0d1ae5be5ee19869b035', class: getIonMode$1(this) }, hAsync("slot", { key: '2a481c2126ac6ca65f0a1bbd07c2d3365409cb78' })));
|
|
28169
28247
|
}
|
|
28170
28248
|
static get style() { return IonRowStyle0; }
|
|
28171
28249
|
static get cmpMeta() { return {
|
|
@@ -28559,8 +28637,8 @@ class Searchbar {
|
|
|
28559
28637
|
const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
|
|
28560
28638
|
const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
|
|
28561
28639
|
const shouldShowCancelButton = this.shouldShowCancelButton();
|
|
28562
|
-
const cancelButton = this.showCancelButton !== 'never' && (hAsync("button", { key: '
|
|
28563
|
-
return (hAsync(Host, { key: '
|
|
28640
|
+
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))));
|
|
28641
|
+
return (hAsync(Host, { key: '17d57ece5852d03047e4d53ddad6c9d88a432a00', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
|
|
28564
28642
|
[mode]: true,
|
|
28565
28643
|
'searchbar-animated': animated,
|
|
28566
28644
|
'searchbar-disabled': this.disabled,
|
|
@@ -28570,14 +28648,14 @@ class Searchbar {
|
|
|
28570
28648
|
'searchbar-has-focus': this.focused,
|
|
28571
28649
|
'searchbar-should-show-clear': this.shouldShowClearButton(),
|
|
28572
28650
|
'searchbar-should-show-cancel': this.shouldShowCancelButton(),
|
|
28573
|
-
}) }, hAsync("div", { key: '
|
|
28651
|
+
}) }, 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) => {
|
|
28574
28652
|
/**
|
|
28575
28653
|
* This prevents mobile browsers from
|
|
28576
28654
|
* blurring the input when the clear
|
|
28577
28655
|
* button is activated.
|
|
28578
28656
|
*/
|
|
28579
28657
|
ev.preventDefault();
|
|
28580
|
-
}, onClick: () => this.onClearInput(true) }, hAsync("ion-icon", { key: '
|
|
28658
|
+
}, 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));
|
|
28581
28659
|
}
|
|
28582
28660
|
get el() { return getElement(this); }
|
|
28583
28661
|
static get watchers() { return {
|
|
@@ -28644,6 +28722,7 @@ class Segment {
|
|
|
28644
28722
|
this.ionChange = createEvent(this, "ionChange", 7);
|
|
28645
28723
|
this.ionSelect = createEvent(this, "ionSelect", 7);
|
|
28646
28724
|
this.ionStyle = createEvent(this, "ionStyle", 7);
|
|
28725
|
+
this.segmentViewEl = null;
|
|
28647
28726
|
this.onClick = (ev) => {
|
|
28648
28727
|
const current = ev.target;
|
|
28649
28728
|
const previous = this.checked;
|
|
@@ -28658,7 +28737,13 @@ class Segment {
|
|
|
28658
28737
|
if (current !== previous) {
|
|
28659
28738
|
this.emitValueChange();
|
|
28660
28739
|
}
|
|
28661
|
-
if (this.
|
|
28740
|
+
if (this.segmentViewEl) {
|
|
28741
|
+
this.updateSegmentView();
|
|
28742
|
+
if (this.scrollable && previous) {
|
|
28743
|
+
this.checkButton(previous, current);
|
|
28744
|
+
}
|
|
28745
|
+
}
|
|
28746
|
+
else if (this.scrollable || !this.swipeGesture) {
|
|
28662
28747
|
if (previous) {
|
|
28663
28748
|
this.checkButton(previous, current);
|
|
28664
28749
|
}
|
|
@@ -28714,19 +28799,49 @@ class Segment {
|
|
|
28714
28799
|
swipeGestureChanged() {
|
|
28715
28800
|
this.gestureChanged();
|
|
28716
28801
|
}
|
|
28717
|
-
valueChanged(value) {
|
|
28802
|
+
valueChanged(value, oldValue) {
|
|
28803
|
+
// Force a value to exist if we're using a segment view
|
|
28804
|
+
if (this.segmentViewEl && value === undefined) {
|
|
28805
|
+
this.value = this.getButtons()[0].value;
|
|
28806
|
+
return;
|
|
28807
|
+
}
|
|
28808
|
+
if (oldValue !== undefined && value !== undefined) {
|
|
28809
|
+
const buttons = this.getButtons();
|
|
28810
|
+
const previous = buttons.find((button) => button.value === oldValue);
|
|
28811
|
+
const current = buttons.find((button) => button.value === value);
|
|
28812
|
+
if (previous && current) {
|
|
28813
|
+
if (!this.segmentViewEl) {
|
|
28814
|
+
this.checkButton(previous, current);
|
|
28815
|
+
}
|
|
28816
|
+
else if (this.triggerScrollOnValueChange !== false) {
|
|
28817
|
+
this.updateSegmentView();
|
|
28818
|
+
}
|
|
28819
|
+
}
|
|
28820
|
+
}
|
|
28821
|
+
else if (value !== undefined && oldValue === undefined && this.segmentViewEl) {
|
|
28822
|
+
this.updateSegmentView();
|
|
28823
|
+
}
|
|
28718
28824
|
/**
|
|
28719
28825
|
* `ionSelect` is emitted every time the value changes (internal or external changes).
|
|
28720
28826
|
* Used by `ion-segment-button` to determine if the button should be checked.
|
|
28721
28827
|
*/
|
|
28722
28828
|
this.ionSelect.emit({ value });
|
|
28723
|
-
|
|
28829
|
+
// The scroll listener should handle scrolling the active button into view as needed
|
|
28830
|
+
if (!this.segmentViewEl) {
|
|
28831
|
+
this.scrollActiveButtonIntoView();
|
|
28832
|
+
}
|
|
28833
|
+
this.triggerScrollOnValueChange = undefined;
|
|
28724
28834
|
}
|
|
28725
28835
|
disabledChanged() {
|
|
28726
28836
|
this.gestureChanged();
|
|
28727
|
-
|
|
28728
|
-
|
|
28729
|
-
button
|
|
28837
|
+
if (!this.segmentViewEl) {
|
|
28838
|
+
const buttons = this.getButtons();
|
|
28839
|
+
for (const button of buttons) {
|
|
28840
|
+
button.disabled = this.disabled;
|
|
28841
|
+
}
|
|
28842
|
+
}
|
|
28843
|
+
else {
|
|
28844
|
+
this.segmentViewEl.disabled = this.disabled;
|
|
28730
28845
|
}
|
|
28731
28846
|
}
|
|
28732
28847
|
gestureChanged() {
|
|
@@ -28736,6 +28851,10 @@ class Segment {
|
|
|
28736
28851
|
}
|
|
28737
28852
|
connectedCallback() {
|
|
28738
28853
|
this.emitStyle();
|
|
28854
|
+
this.segmentViewEl = this.getSegmentView();
|
|
28855
|
+
}
|
|
28856
|
+
disconnectedCallback() {
|
|
28857
|
+
this.segmentViewEl = null;
|
|
28739
28858
|
}
|
|
28740
28859
|
componentWillLoad() {
|
|
28741
28860
|
this.emitStyle();
|
|
@@ -28769,6 +28888,9 @@ class Segment {
|
|
|
28769
28888
|
if (this.disabled) {
|
|
28770
28889
|
this.disabledChanged();
|
|
28771
28890
|
}
|
|
28891
|
+
// Update segment view based on the initial value,
|
|
28892
|
+
// but do not animate the scroll
|
|
28893
|
+
this.updateSegmentView(false);
|
|
28772
28894
|
}
|
|
28773
28895
|
onStart(detail) {
|
|
28774
28896
|
this.valueBeforeGesture = this.value;
|
|
@@ -28785,6 +28907,7 @@ class Segment {
|
|
|
28785
28907
|
if (value !== undefined) {
|
|
28786
28908
|
if (this.valueBeforeGesture !== value) {
|
|
28787
28909
|
this.emitValueChange();
|
|
28910
|
+
this.updateSegmentView();
|
|
28788
28911
|
}
|
|
28789
28912
|
}
|
|
28790
28913
|
this.valueBeforeGesture = undefined;
|
|
@@ -28812,12 +28935,7 @@ class Segment {
|
|
|
28812
28935
|
setActivated(activated) {
|
|
28813
28936
|
const buttons = this.getButtons();
|
|
28814
28937
|
buttons.forEach((button) => {
|
|
28815
|
-
|
|
28816
|
-
button.classList.add('segment-button-activated');
|
|
28817
|
-
}
|
|
28818
|
-
else {
|
|
28819
|
-
button.classList.remove('segment-button-activated');
|
|
28820
|
-
}
|
|
28938
|
+
button.classList.toggle('segment-button-activated', activated);
|
|
28821
28939
|
});
|
|
28822
28940
|
this.activated = activated;
|
|
28823
28941
|
}
|
|
@@ -28868,6 +28986,7 @@ class Segment {
|
|
|
28868
28986
|
currentIndicator.classList.add('segment-button-indicator-animated');
|
|
28869
28987
|
// Remove the transform to slide the indicator back to the button clicked
|
|
28870
28988
|
currentIndicator.style.setProperty('transform', '');
|
|
28989
|
+
this.scrollActiveButtonIntoView(true);
|
|
28871
28990
|
});
|
|
28872
28991
|
this.value = current.value;
|
|
28873
28992
|
this.setCheckedClasses();
|
|
@@ -28883,6 +29002,60 @@ class Segment {
|
|
|
28883
29002
|
buttons[next].classList.add('segment-button-after-checked');
|
|
28884
29003
|
}
|
|
28885
29004
|
}
|
|
29005
|
+
getSegmentView() {
|
|
29006
|
+
const buttons = this.getButtons();
|
|
29007
|
+
// Get the first button with a contentId
|
|
29008
|
+
const firstContentId = buttons.find((button) => button.contentId);
|
|
29009
|
+
// Get the segment content with an id matching the button's contentId
|
|
29010
|
+
const segmentContent = document.querySelector(`ion-segment-content[id="${firstContentId === null || firstContentId === void 0 ? void 0 : firstContentId.contentId}"]`);
|
|
29011
|
+
// Return the segment view for that matching segment content
|
|
29012
|
+
return segmentContent === null || segmentContent === void 0 ? void 0 : segmentContent.closest('ion-segment-view');
|
|
29013
|
+
}
|
|
29014
|
+
handleSegmentViewScroll(ev) {
|
|
29015
|
+
const { scrollRatio, isManualScroll } = ev.detail;
|
|
29016
|
+
if (!isManualScroll) {
|
|
29017
|
+
return;
|
|
29018
|
+
}
|
|
29019
|
+
const dispatchedFrom = ev.target;
|
|
29020
|
+
const segmentViewEl = this.segmentViewEl;
|
|
29021
|
+
const segmentEl = this.el;
|
|
29022
|
+
// Only update the indicator if the event was dispatched from the correct segment view
|
|
29023
|
+
if (ev.composedPath().includes(segmentViewEl) || (dispatchedFrom === null || dispatchedFrom === void 0 ? void 0 : dispatchedFrom.contains(segmentEl))) {
|
|
29024
|
+
const buttons = this.getButtons();
|
|
29025
|
+
// If no buttons are found or there is no value set then do nothing
|
|
29026
|
+
if (!buttons.length)
|
|
29027
|
+
return;
|
|
29028
|
+
const index = buttons.findIndex((button) => button.value === this.value);
|
|
29029
|
+
const current = buttons[index];
|
|
29030
|
+
const nextIndex = Math.round(scrollRatio * (buttons.length - 1));
|
|
29031
|
+
if (this.lastNextIndex === undefined || this.lastNextIndex !== nextIndex) {
|
|
29032
|
+
this.lastNextIndex = nextIndex;
|
|
29033
|
+
this.triggerScrollOnValueChange = false;
|
|
29034
|
+
this.checkButton(current, buttons[nextIndex]);
|
|
29035
|
+
this.emitValueChange();
|
|
29036
|
+
}
|
|
29037
|
+
}
|
|
29038
|
+
}
|
|
29039
|
+
/**
|
|
29040
|
+
* Finds the related segment view and sets its current content
|
|
29041
|
+
* based on the selected segment button. This method
|
|
29042
|
+
* should be called on initial load of the segment,
|
|
29043
|
+
* after the gesture is completed (if dragging between segments)
|
|
29044
|
+
* and when a segment button is clicked directly.
|
|
29045
|
+
*/
|
|
29046
|
+
updateSegmentView(smoothScroll = true) {
|
|
29047
|
+
const buttons = this.getButtons();
|
|
29048
|
+
const button = buttons.find((btn) => btn.value === this.value);
|
|
29049
|
+
// If the button does not have a contentId then there is
|
|
29050
|
+
// no associated segment view to update
|
|
29051
|
+
if (!(button === null || button === void 0 ? void 0 : button.contentId)) {
|
|
29052
|
+
return;
|
|
29053
|
+
}
|
|
29054
|
+
const segmentView = this.segmentViewEl;
|
|
29055
|
+
if (segmentView) {
|
|
29056
|
+
segmentView.setContent(button.contentId, smoothScroll);
|
|
29057
|
+
}
|
|
29058
|
+
}
|
|
28886
29059
|
scrollActiveButtonIntoView(smoothScroll = true) {
|
|
28887
29060
|
const { scrollable, value, el } = this;
|
|
28888
29061
|
if (scrollable) {
|
|
@@ -29065,14 +29238,14 @@ class Segment {
|
|
|
29065
29238
|
}
|
|
29066
29239
|
render() {
|
|
29067
29240
|
const mode = getIonMode$1(this);
|
|
29068
|
-
return (hAsync(Host, { key: '
|
|
29241
|
+
return (hAsync(Host, { key: '66bd7a565ba73540b3bbe56dd23b95e59bcef9bc', role: "tablist", onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
29069
29242
|
[mode]: true,
|
|
29070
29243
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
29071
29244
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
29072
29245
|
'segment-activated': this.activated,
|
|
29073
29246
|
'segment-disabled': this.disabled,
|
|
29074
29247
|
'segment-scrollable': this.scrollable,
|
|
29075
|
-
}) }, hAsync("slot", { key: '
|
|
29248
|
+
}) }, hAsync("slot", { key: '782c521b1a33729b8eab1c4b879bc3f2ff48ae1b', onSlotchange: this.onSlottedItemsChange })));
|
|
29076
29249
|
}
|
|
29077
29250
|
get el() { return getElement(this); }
|
|
29078
29251
|
static get watchers() { return {
|
|
@@ -29097,7 +29270,7 @@ class Segment {
|
|
|
29097
29270
|
"selectOnFocus": [4, "select-on-focus"],
|
|
29098
29271
|
"activated": [32]
|
|
29099
29272
|
},
|
|
29100
|
-
"$listeners$": [[0, "keydown", "onKeyDown"]],
|
|
29273
|
+
"$listeners$": [[16, "ionSegmentViewScroll", "handleSegmentViewScroll"], [0, "keydown", "onKeyDown"]],
|
|
29101
29274
|
"$lazyBundleId$": "-",
|
|
29102
29275
|
"$attrsToReflect$": [["color", "color"]]
|
|
29103
29276
|
}; }
|
|
@@ -29134,6 +29307,7 @@ class SegmentButton {
|
|
|
29134
29307
|
}
|
|
29135
29308
|
};
|
|
29136
29309
|
this.checked = false;
|
|
29310
|
+
this.contentId = undefined;
|
|
29137
29311
|
this.disabled = false;
|
|
29138
29312
|
this.layout = 'icon-top';
|
|
29139
29313
|
this.type = 'button';
|
|
@@ -29149,6 +29323,26 @@ class SegmentButton {
|
|
|
29149
29323
|
addEventListener$1(segmentEl, 'ionSelect', this.updateState);
|
|
29150
29324
|
addEventListener$1(segmentEl, 'ionStyle', this.updateStyle);
|
|
29151
29325
|
}
|
|
29326
|
+
// Return if there is no contentId defined
|
|
29327
|
+
if (!this.contentId)
|
|
29328
|
+
return;
|
|
29329
|
+
// Attempt to find the Segment Content by its contentId
|
|
29330
|
+
const segmentContent = document.getElementById(this.contentId);
|
|
29331
|
+
// If no associated Segment Content exists, log an error and return
|
|
29332
|
+
if (!segmentContent) {
|
|
29333
|
+
console.error(`Segment Button: Unable to find Segment Content with id="${this.contentId}".`);
|
|
29334
|
+
return;
|
|
29335
|
+
}
|
|
29336
|
+
// Ensure the found element is a valid ION-SEGMENT-CONTENT
|
|
29337
|
+
if (segmentContent.tagName !== 'ION-SEGMENT-CONTENT') {
|
|
29338
|
+
console.error(`Segment Button: Element with id="${this.contentId}" is not an <ion-segment-content> element.`);
|
|
29339
|
+
return;
|
|
29340
|
+
}
|
|
29341
|
+
// Prevent buttons from being disabled when associated with segment content
|
|
29342
|
+
if (this.disabled) {
|
|
29343
|
+
console.warn(`Segment Button: Segment buttons cannot be disabled when associated with an <ion-segment-content>.`);
|
|
29344
|
+
this.disabled = false;
|
|
29345
|
+
}
|
|
29152
29346
|
}
|
|
29153
29347
|
disconnectedCallback() {
|
|
29154
29348
|
const segmentEl = this.segmentEl;
|
|
@@ -29182,7 +29376,7 @@ class SegmentButton {
|
|
|
29182
29376
|
const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
|
|
29183
29377
|
const mode = getIonMode$1(this);
|
|
29184
29378
|
const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
|
|
29185
|
-
return (hAsync(Host, { key: '
|
|
29379
|
+
return (hAsync(Host, { key: 'd50a5d5e2f6206e8523598f258d8217d2903f69b', class: {
|
|
29186
29380
|
[mode]: true,
|
|
29187
29381
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
29188
29382
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
@@ -29198,10 +29392,7 @@ class SegmentButton {
|
|
|
29198
29392
|
'ion-activatable': true,
|
|
29199
29393
|
'ion-activatable-instant': true,
|
|
29200
29394
|
'ion-focusable': true,
|
|
29201
|
-
} }, hAsync("button", Object.assign({ key: '
|
|
29202
|
-
'segment-button-indicator': true,
|
|
29203
|
-
'segment-button-indicator-animated': true,
|
|
29204
|
-
} }, hAsync("div", { key: '65c72a151080998c1e548c87d4d4ebd5c7dda72f', part: "indicator-background", class: "segment-button-indicator-background" }))));
|
|
29395
|
+
} }, 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" }))));
|
|
29205
29396
|
}
|
|
29206
29397
|
get el() { return getElement(this); }
|
|
29207
29398
|
static get watchers() { return {
|
|
@@ -29215,6 +29406,7 @@ class SegmentButton {
|
|
|
29215
29406
|
"$flags$": 41,
|
|
29216
29407
|
"$tagName$": "ion-segment-button",
|
|
29217
29408
|
"$members$": {
|
|
29409
|
+
"contentId": [513, "content-id"],
|
|
29218
29410
|
"disabled": [1028],
|
|
29219
29411
|
"layout": [1],
|
|
29220
29412
|
"type": [1],
|
|
@@ -29224,6 +29416,151 @@ class SegmentButton {
|
|
|
29224
29416
|
},
|
|
29225
29417
|
"$listeners$": undefined,
|
|
29226
29418
|
"$lazyBundleId$": "-",
|
|
29419
|
+
"$attrsToReflect$": [["contentId", "content-id"]]
|
|
29420
|
+
}; }
|
|
29421
|
+
}
|
|
29422
|
+
|
|
29423
|
+
const segmentContentCss = ":host{scroll-snap-align:center;scroll-snap-stop:always;-ms-flex-negative:0;flex-shrink:0;width:100%}";
|
|
29424
|
+
var IonSegmentContentStyle0 = segmentContentCss;
|
|
29425
|
+
|
|
29426
|
+
class SegmentContent {
|
|
29427
|
+
constructor(hostRef) {
|
|
29428
|
+
registerInstance(this, hostRef);
|
|
29429
|
+
}
|
|
29430
|
+
render() {
|
|
29431
|
+
return (hAsync(Host, { key: '03684b2999ac64fe13e376fd7e7f279976e9d4f2' }, hAsync("slot", { key: '143031075bf33ca19e7cfd76fc8a67b83ccaf11c' })));
|
|
29432
|
+
}
|
|
29433
|
+
static get style() { return IonSegmentContentStyle0; }
|
|
29434
|
+
static get cmpMeta() { return {
|
|
29435
|
+
"$flags$": 9,
|
|
29436
|
+
"$tagName$": "ion-segment-content",
|
|
29437
|
+
"$members$": undefined,
|
|
29438
|
+
"$listeners$": undefined,
|
|
29439
|
+
"$lazyBundleId$": "-",
|
|
29440
|
+
"$attrsToReflect$": []
|
|
29441
|
+
}; }
|
|
29442
|
+
}
|
|
29443
|
+
|
|
29444
|
+
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}";
|
|
29445
|
+
var IonSegmentViewIosStyle0 = segmentViewIosCss;
|
|
29446
|
+
|
|
29447
|
+
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}";
|
|
29448
|
+
var IonSegmentViewMdStyle0 = segmentViewMdCss;
|
|
29449
|
+
|
|
29450
|
+
class SegmentView {
|
|
29451
|
+
constructor(hostRef) {
|
|
29452
|
+
registerInstance(this, hostRef);
|
|
29453
|
+
this.ionSegmentViewScroll = createEvent(this, "ionSegmentViewScroll", 7);
|
|
29454
|
+
this.scrollEndTimeout = null;
|
|
29455
|
+
this.isTouching = false;
|
|
29456
|
+
this.disabled = false;
|
|
29457
|
+
this.isManualScroll = undefined;
|
|
29458
|
+
}
|
|
29459
|
+
handleScroll(ev) {
|
|
29460
|
+
var _a;
|
|
29461
|
+
const { scrollLeft, scrollWidth, clientWidth } = ev.target;
|
|
29462
|
+
const scrollRatio = scrollLeft / (scrollWidth - clientWidth);
|
|
29463
|
+
this.ionSegmentViewScroll.emit({
|
|
29464
|
+
scrollRatio,
|
|
29465
|
+
isManualScroll: (_a = this.isManualScroll) !== null && _a !== void 0 ? _a : true,
|
|
29466
|
+
});
|
|
29467
|
+
// Reset the timeout to check for scroll end
|
|
29468
|
+
this.resetScrollEndTimeout();
|
|
29469
|
+
}
|
|
29470
|
+
/**
|
|
29471
|
+
* Handle touch start event to know when the user is actively dragging the segment view.
|
|
29472
|
+
*/
|
|
29473
|
+
handleScrollStart() {
|
|
29474
|
+
if (this.scrollEndTimeout) {
|
|
29475
|
+
clearTimeout(this.scrollEndTimeout);
|
|
29476
|
+
this.scrollEndTimeout = null;
|
|
29477
|
+
}
|
|
29478
|
+
this.isTouching = true;
|
|
29479
|
+
}
|
|
29480
|
+
/**
|
|
29481
|
+
* Handle touch end event to know when the user is no longer dragging the segment view.
|
|
29482
|
+
*/
|
|
29483
|
+
handleTouchEnd() {
|
|
29484
|
+
this.isTouching = false;
|
|
29485
|
+
}
|
|
29486
|
+
/**
|
|
29487
|
+
* Reset the scroll end detection timer. This is called on every scroll event.
|
|
29488
|
+
*/
|
|
29489
|
+
resetScrollEndTimeout() {
|
|
29490
|
+
if (this.scrollEndTimeout) {
|
|
29491
|
+
clearTimeout(this.scrollEndTimeout);
|
|
29492
|
+
this.scrollEndTimeout = null;
|
|
29493
|
+
}
|
|
29494
|
+
this.scrollEndTimeout = setTimeout(() => {
|
|
29495
|
+
this.checkForScrollEnd();
|
|
29496
|
+
},
|
|
29497
|
+
// Setting this to a lower value may result in inconsistencies in behavior
|
|
29498
|
+
// across browsers (particularly Firefox).
|
|
29499
|
+
// Ideally, all of this logic is removed once the scroll end event is
|
|
29500
|
+
// supported on all browsers (https://caniuse.com/?search=scrollend)
|
|
29501
|
+
100);
|
|
29502
|
+
}
|
|
29503
|
+
/**
|
|
29504
|
+
* Check if the scroll has ended and the user is not actively touching.
|
|
29505
|
+
* If the conditions are met (active content is enabled and no active touch),
|
|
29506
|
+
* reset the scroll position and emit the scroll end event.
|
|
29507
|
+
*/
|
|
29508
|
+
checkForScrollEnd() {
|
|
29509
|
+
// Only emit scroll end event if the active content is not disabled and
|
|
29510
|
+
// the user is not touching the segment view
|
|
29511
|
+
if (!this.isTouching) {
|
|
29512
|
+
this.isManualScroll = undefined;
|
|
29513
|
+
}
|
|
29514
|
+
}
|
|
29515
|
+
/**
|
|
29516
|
+
* @internal
|
|
29517
|
+
*
|
|
29518
|
+
* This method is used to programmatically set the displayed segment content
|
|
29519
|
+
* in the segment view. Calling this method will update the `value` of the
|
|
29520
|
+
* corresponding segment button.
|
|
29521
|
+
*
|
|
29522
|
+
* @param id: The id of the segment content to display.
|
|
29523
|
+
* @param smoothScroll: Whether to animate the scroll transition.
|
|
29524
|
+
*/
|
|
29525
|
+
async setContent(id, smoothScroll = true) {
|
|
29526
|
+
const contents = this.getSegmentContents();
|
|
29527
|
+
const index = contents.findIndex((content) => content.id === id);
|
|
29528
|
+
if (index === -1)
|
|
29529
|
+
return;
|
|
29530
|
+
this.isManualScroll = false;
|
|
29531
|
+
this.resetScrollEndTimeout();
|
|
29532
|
+
const contentWidth = this.el.offsetWidth;
|
|
29533
|
+
this.el.scrollTo({
|
|
29534
|
+
top: 0,
|
|
29535
|
+
left: index * contentWidth,
|
|
29536
|
+
behavior: smoothScroll ? 'smooth' : 'instant',
|
|
29537
|
+
});
|
|
29538
|
+
}
|
|
29539
|
+
getSegmentContents() {
|
|
29540
|
+
return Array.from(this.el.querySelectorAll('ion-segment-content'));
|
|
29541
|
+
}
|
|
29542
|
+
render() {
|
|
29543
|
+
const { disabled, isManualScroll } = this;
|
|
29544
|
+
return (hAsync(Host, { key: '9f4f11d31c4db776f077e59ae895b35dd4454717', class: {
|
|
29545
|
+
'segment-view-disabled': disabled,
|
|
29546
|
+
'segment-view-scroll-disabled': isManualScroll === false,
|
|
29547
|
+
} }, hAsync("slot", { key: 'ea58b21f031cee2ab2b70580f336deaefa364538' })));
|
|
29548
|
+
}
|
|
29549
|
+
get el() { return getElement(this); }
|
|
29550
|
+
static get style() { return {
|
|
29551
|
+
ios: IonSegmentViewIosStyle0,
|
|
29552
|
+
md: IonSegmentViewMdStyle0
|
|
29553
|
+
}; }
|
|
29554
|
+
static get cmpMeta() { return {
|
|
29555
|
+
"$flags$": 41,
|
|
29556
|
+
"$tagName$": "ion-segment-view",
|
|
29557
|
+
"$members$": {
|
|
29558
|
+
"disabled": [4],
|
|
29559
|
+
"isManualScroll": [32],
|
|
29560
|
+
"setContent": [64]
|
|
29561
|
+
},
|
|
29562
|
+
"$listeners$": [[1, "scroll", "handleScroll"], [1, "touchstart", "handleScrollStart"], [1, "touchend", "handleTouchEnd"]],
|
|
29563
|
+
"$lazyBundleId$": "-",
|
|
29227
29564
|
"$attrsToReflect$": []
|
|
29228
29565
|
}; }
|
|
29229
29566
|
}
|
|
@@ -29384,13 +29721,12 @@ class Select {
|
|
|
29384
29721
|
this.setFocus();
|
|
29385
29722
|
});
|
|
29386
29723
|
await overlay.present();
|
|
29387
|
-
// focus selected option for popovers
|
|
29388
|
-
if (this.interface === 'popover') {
|
|
29389
|
-
const indexOfSelected = this.childOpts.
|
|
29724
|
+
// focus selected option for popovers and modals
|
|
29725
|
+
if (this.interface === 'popover' || this.interface === 'modal') {
|
|
29726
|
+
const indexOfSelected = this.childOpts.findIndex((o) => o.value === this.value);
|
|
29390
29727
|
if (indexOfSelected > -1) {
|
|
29391
29728
|
const selectedItem = overlay.querySelector(`.select-interface-option:nth-child(${indexOfSelected + 1})`);
|
|
29392
29729
|
if (selectedItem) {
|
|
29393
|
-
focusVisibleElement(selectedItem);
|
|
29394
29730
|
/**
|
|
29395
29731
|
* Browsers such as Firefox do not
|
|
29396
29732
|
* correctly delegate focus when manually
|
|
@@ -29404,8 +29740,11 @@ class Select {
|
|
|
29404
29740
|
*/
|
|
29405
29741
|
const interactiveEl = selectedItem.querySelector('ion-radio, ion-checkbox');
|
|
29406
29742
|
if (interactiveEl) {
|
|
29407
|
-
|
|
29743
|
+
// Needs to be called before `focusVisibleElement` to prevent issue with focus event bubbling
|
|
29744
|
+
// and removing `ion-focused` style
|
|
29745
|
+
interactiveEl.setFocus();
|
|
29408
29746
|
}
|
|
29747
|
+
focusVisibleElement(selectedItem);
|
|
29409
29748
|
}
|
|
29410
29749
|
}
|
|
29411
29750
|
else {
|
|
@@ -29414,11 +29753,14 @@ class Select {
|
|
|
29414
29753
|
*/
|
|
29415
29754
|
const firstEnabledOption = overlay.querySelector('ion-radio:not(.radio-disabled), ion-checkbox:not(.checkbox-disabled)');
|
|
29416
29755
|
if (firstEnabledOption) {
|
|
29417
|
-
focusVisibleElement(firstEnabledOption.closest('ion-item'));
|
|
29418
29756
|
/**
|
|
29419
29757
|
* Focus the option for the same reason as we do above.
|
|
29758
|
+
*
|
|
29759
|
+
* Needs to be called before `focusVisibleElement` to prevent issue with focus event bubbling
|
|
29760
|
+
* and removing `ion-focused` style
|
|
29420
29761
|
*/
|
|
29421
|
-
firstEnabledOption.
|
|
29762
|
+
firstEnabledOption.setFocus();
|
|
29763
|
+
focusVisibleElement(firstEnabledOption.closest('ion-item'));
|
|
29422
29764
|
}
|
|
29423
29765
|
}
|
|
29424
29766
|
}
|
|
@@ -29440,6 +29782,9 @@ class Select {
|
|
|
29440
29782
|
if (selectInterface === 'popover') {
|
|
29441
29783
|
return this.openPopover(ev);
|
|
29442
29784
|
}
|
|
29785
|
+
if (selectInterface === 'modal') {
|
|
29786
|
+
return this.openModal();
|
|
29787
|
+
}
|
|
29443
29788
|
return this.openAlert();
|
|
29444
29789
|
}
|
|
29445
29790
|
updateOverlayOptions() {
|
|
@@ -29456,7 +29801,13 @@ class Select {
|
|
|
29456
29801
|
case 'popover':
|
|
29457
29802
|
const popover = overlay.querySelector('ion-select-popover');
|
|
29458
29803
|
if (popover) {
|
|
29459
|
-
popover.options = this.
|
|
29804
|
+
popover.options = this.createOverlaySelectOptions(childOpts, value);
|
|
29805
|
+
}
|
|
29806
|
+
break;
|
|
29807
|
+
case 'modal':
|
|
29808
|
+
const modal = overlay.querySelector('ion-select-modal');
|
|
29809
|
+
if (modal) {
|
|
29810
|
+
modal.options = this.createOverlaySelectOptions(childOpts, value);
|
|
29460
29811
|
}
|
|
29461
29812
|
break;
|
|
29462
29813
|
case 'alert':
|
|
@@ -29511,7 +29862,7 @@ class Select {
|
|
|
29511
29862
|
});
|
|
29512
29863
|
return alertInputs;
|
|
29513
29864
|
}
|
|
29514
|
-
|
|
29865
|
+
createOverlaySelectOptions(data, selectValue) {
|
|
29515
29866
|
const popoverOptions = data.map((option) => {
|
|
29516
29867
|
const value = getOptionValue(option);
|
|
29517
29868
|
// Remove hydrated before copying over classes
|
|
@@ -29571,7 +29922,7 @@ class Select {
|
|
|
29571
29922
|
message: interfaceOptions.message,
|
|
29572
29923
|
multiple,
|
|
29573
29924
|
value,
|
|
29574
|
-
options: this.
|
|
29925
|
+
options: this.createOverlaySelectOptions(this.childOpts, value),
|
|
29575
29926
|
} });
|
|
29576
29927
|
return popoverController.create(popoverOpts);
|
|
29577
29928
|
}
|
|
@@ -29606,6 +29957,17 @@ class Select {
|
|
|
29606
29957
|
] });
|
|
29607
29958
|
return alertController.create(alertOpts);
|
|
29608
29959
|
}
|
|
29960
|
+
openModal() {
|
|
29961
|
+
const { multiple, value, interfaceOptions } = this;
|
|
29962
|
+
const mode = getIonMode$1(this);
|
|
29963
|
+
const modalOpts = Object.assign(Object.assign({}, interfaceOptions), { mode, cssClass: ['select-modal', interfaceOptions.cssClass], component: 'ion-select-modal', componentProps: {
|
|
29964
|
+
header: interfaceOptions.header,
|
|
29965
|
+
multiple,
|
|
29966
|
+
value,
|
|
29967
|
+
options: this.createOverlaySelectOptions(this.childOpts, value),
|
|
29968
|
+
} });
|
|
29969
|
+
return modalController.create(modalOpts);
|
|
29970
|
+
}
|
|
29609
29971
|
/**
|
|
29610
29972
|
* Close the select interface.
|
|
29611
29973
|
*/
|
|
@@ -29813,7 +30175,7 @@ class Select {
|
|
|
29813
30175
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
29814
30176
|
*/
|
|
29815
30177
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
|
|
29816
|
-
return (hAsync(Host, { key: '
|
|
30178
|
+
return (hAsync(Host, { key: '144dfa5c49549a74fe516c65b9b8104a477ac789', onClick: this.onClick, class: createColorClasses$1(this.color, {
|
|
29817
30179
|
[mode]: true,
|
|
29818
30180
|
'in-item': inItem,
|
|
29819
30181
|
'in-item-color': hostContext('ion-item.ion-color', el),
|
|
@@ -29829,7 +30191,7 @@ class Select {
|
|
|
29829
30191
|
[`select-justify-${justify}`]: justifyEnabled,
|
|
29830
30192
|
[`select-shape-${shape}`]: shape !== undefined,
|
|
29831
30193
|
[`select-label-placement-${labelPlacement}`]: true,
|
|
29832
|
-
}) }, hAsync("label", { key: '
|
|
30194
|
+
}) }, 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" }))));
|
|
29833
30195
|
}
|
|
29834
30196
|
get el() { return getElement(this); }
|
|
29835
30197
|
static get watchers() { return {
|
|
@@ -29909,6 +30271,108 @@ const textForValue = (opts, value, compareWith) => {
|
|
|
29909
30271
|
let selectIds = 0;
|
|
29910
30272
|
const OPTION_CLASS = 'select-interface-option';
|
|
29911
30273
|
|
|
30274
|
+
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)}";
|
|
30275
|
+
var IonSelectModalIonicStyle0 = ionicSelectModalMdCss;
|
|
30276
|
+
|
|
30277
|
+
const selectModalIosCss = ".sc-ion-select-modal-ios-h{height:100%}";
|
|
30278
|
+
var IonSelectModalIosStyle0 = selectModalIosCss;
|
|
30279
|
+
|
|
30280
|
+
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)}";
|
|
30281
|
+
var IonSelectModalMdStyle0 = selectModalMdCss;
|
|
30282
|
+
|
|
30283
|
+
class SelectModal {
|
|
30284
|
+
constructor(hostRef) {
|
|
30285
|
+
registerInstance(this, hostRef);
|
|
30286
|
+
this.header = undefined;
|
|
30287
|
+
this.multiple = undefined;
|
|
30288
|
+
this.options = [];
|
|
30289
|
+
}
|
|
30290
|
+
closeModal() {
|
|
30291
|
+
const modal = this.el.closest('ion-modal');
|
|
30292
|
+
if (modal) {
|
|
30293
|
+
modal.dismiss();
|
|
30294
|
+
}
|
|
30295
|
+
}
|
|
30296
|
+
findOptionFromEvent(ev) {
|
|
30297
|
+
const { options } = this;
|
|
30298
|
+
return options.find((o) => o.value === ev.target.value);
|
|
30299
|
+
}
|
|
30300
|
+
getValues(ev) {
|
|
30301
|
+
const { multiple, options } = this;
|
|
30302
|
+
if (multiple) {
|
|
30303
|
+
// this is a modal with checkboxes (multiple value select)
|
|
30304
|
+
// return an array of all the checked values
|
|
30305
|
+
return options.filter((o) => o.checked).map((o) => o.value);
|
|
30306
|
+
}
|
|
30307
|
+
// this is a modal with radio buttons (single value select)
|
|
30308
|
+
// return the value that was clicked, otherwise undefined
|
|
30309
|
+
const option = ev ? this.findOptionFromEvent(ev) : null;
|
|
30310
|
+
return option ? option.value : undefined;
|
|
30311
|
+
}
|
|
30312
|
+
callOptionHandler(ev) {
|
|
30313
|
+
const option = this.findOptionFromEvent(ev);
|
|
30314
|
+
const values = this.getValues(ev);
|
|
30315
|
+
if (option === null || option === void 0 ? void 0 : option.handler) {
|
|
30316
|
+
safeCall(option.handler, values);
|
|
30317
|
+
}
|
|
30318
|
+
}
|
|
30319
|
+
setChecked(ev) {
|
|
30320
|
+
const { multiple } = this;
|
|
30321
|
+
const option = this.findOptionFromEvent(ev);
|
|
30322
|
+
// this is a modal with checkboxes (multiple value select)
|
|
30323
|
+
// we need to set the checked value for this option
|
|
30324
|
+
if (multiple && option) {
|
|
30325
|
+
option.checked = ev.detail.checked;
|
|
30326
|
+
}
|
|
30327
|
+
}
|
|
30328
|
+
renderRadioOptions() {
|
|
30329
|
+
const checked = this.options.filter((o) => o.checked).map((o) => o.value)[0];
|
|
30330
|
+
return (hAsync("ion-radio-group", { value: checked, onIonChange: (ev) => this.callOptionHandler(ev) }, this.options.map((option) => (hAsync("ion-item", { class: Object.assign({
|
|
30331
|
+
// TODO FW-4784
|
|
30332
|
+
'item-radio-checked': option.value === checked
|
|
30333
|
+
}, getClassMap(option.cssClass)) }, hAsync("ion-radio", { value: option.value, disabled: option.disabled, justify: "start", labelPlacement: "end", onClick: () => this.closeModal(), onKeyUp: (ev) => {
|
|
30334
|
+
if (ev.key === ' ') {
|
|
30335
|
+
/**
|
|
30336
|
+
* Selecting a radio option with keyboard navigation,
|
|
30337
|
+
* either through the Enter or Space keys, should
|
|
30338
|
+
* dismiss the modal.
|
|
30339
|
+
*/
|
|
30340
|
+
this.closeModal();
|
|
30341
|
+
}
|
|
30342
|
+
} }, option.text))))));
|
|
30343
|
+
}
|
|
30344
|
+
renderCheckboxOptions() {
|
|
30345
|
+
return this.options.map((option) => (hAsync("ion-item", { class: Object.assign({
|
|
30346
|
+
// TODO FW-4784
|
|
30347
|
+
'item-checkbox-checked': option.checked
|
|
30348
|
+
}, getClassMap(option.cssClass)) }, hAsync("ion-checkbox", { value: option.value, disabled: option.disabled, checked: option.checked, justify: "start", labelPlacement: "end", onIonChange: (ev) => {
|
|
30349
|
+
this.setChecked(ev);
|
|
30350
|
+
this.callOptionHandler(ev);
|
|
30351
|
+
} }, option.text))));
|
|
30352
|
+
}
|
|
30353
|
+
render() {
|
|
30354
|
+
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()))));
|
|
30355
|
+
}
|
|
30356
|
+
get el() { return getElement(this); }
|
|
30357
|
+
static get style() { return {
|
|
30358
|
+
ionic: IonSelectModalIonicStyle0,
|
|
30359
|
+
ios: IonSelectModalIosStyle0,
|
|
30360
|
+
md: IonSelectModalMdStyle0
|
|
30361
|
+
}; }
|
|
30362
|
+
static get cmpMeta() { return {
|
|
30363
|
+
"$flags$": 34,
|
|
30364
|
+
"$tagName$": "ion-select-modal",
|
|
30365
|
+
"$members$": {
|
|
30366
|
+
"header": [1],
|
|
30367
|
+
"multiple": [4],
|
|
30368
|
+
"options": [16]
|
|
30369
|
+
},
|
|
30370
|
+
"$listeners$": undefined,
|
|
30371
|
+
"$lazyBundleId$": "-",
|
|
30372
|
+
"$attrsToReflect$": []
|
|
30373
|
+
}; }
|
|
30374
|
+
}
|
|
30375
|
+
|
|
29912
30376
|
const selectOptionCss = ":host{display:none}";
|
|
29913
30377
|
var IonSelectOptionStyle0 = selectOptionCss;
|
|
29914
30378
|
|
|
@@ -29920,7 +30384,7 @@ class SelectOption {
|
|
|
29920
30384
|
this.value = undefined;
|
|
29921
30385
|
}
|
|
29922
30386
|
render() {
|
|
29923
|
-
return hAsync(Host, { key: '
|
|
30387
|
+
return hAsync(Host, { key: '2e6fa159464f04f6d8720f960141f67918bc7534', role: "option", id: this.inputId, class: getIonMode$1(this) });
|
|
29924
30388
|
}
|
|
29925
30389
|
get el() { return getElement(this); }
|
|
29926
30390
|
static get style() { return IonSelectOptionStyle0; }
|
|
@@ -30040,7 +30504,7 @@ class SelectPopover {
|
|
|
30040
30504
|
render() {
|
|
30041
30505
|
const { header, message, options, subHeader } = this;
|
|
30042
30506
|
const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
|
|
30043
|
-
return (hAsync(Host, { key: '
|
|
30507
|
+
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))));
|
|
30044
30508
|
}
|
|
30045
30509
|
get el() { return getElement(this); }
|
|
30046
30510
|
static get style() { return {
|
|
@@ -30088,11 +30552,11 @@ class SkeletonText {
|
|
|
30088
30552
|
const animated = this.animated && config.getBoolean('animated', true);
|
|
30089
30553
|
const inMedia = hostContext('ion-avatar', this.el) || hostContext('ion-thumbnail', this.el);
|
|
30090
30554
|
const mode = getIonMode$1(this);
|
|
30091
|
-
return (hAsync(Host, { key: '
|
|
30555
|
+
return (hAsync(Host, { key: 'fdfabf9364caf507450239b62be24f08873bd650', class: {
|
|
30092
30556
|
[mode]: true,
|
|
30093
30557
|
'skeleton-text-animated': animated,
|
|
30094
30558
|
'in-media': inMedia,
|
|
30095
|
-
} }, hAsync("span", { key: '
|
|
30559
|
+
} }, hAsync("span", { key: '3482c88dcc177547185ce87972afa064a542367d' }, "\u00A0")));
|
|
30096
30560
|
}
|
|
30097
30561
|
get el() { return getElement(this); }
|
|
30098
30562
|
static get style() { return IonSkeletonTextStyle0; }
|
|
@@ -30145,7 +30609,7 @@ class Spinner {
|
|
|
30145
30609
|
svgs.push(buildLine(spinner, duration, i, spinner.lines));
|
|
30146
30610
|
}
|
|
30147
30611
|
}
|
|
30148
|
-
return (hAsync(Host, { key: '
|
|
30612
|
+
return (hAsync(Host, { key: '9d30ee9f5aa0dd0e220da07e75d05b8b2435224d', class: createColorClasses$1(self.color, {
|
|
30149
30613
|
[mode]: true,
|
|
30150
30614
|
[`spinner-${spinnerName}`]: true,
|
|
30151
30615
|
'spinner-paused': self.paused || config.getBoolean('_testing'),
|
|
@@ -30245,12 +30709,12 @@ class SplitPane {
|
|
|
30245
30709
|
}
|
|
30246
30710
|
render() {
|
|
30247
30711
|
const mode = getIonMode$1(this);
|
|
30248
|
-
return (hAsync(Host, { key: '
|
|
30712
|
+
return (hAsync(Host, { key: '1ca0b0299d03605bb358112ca56cbafbe58f00f5', class: {
|
|
30249
30713
|
[mode]: true,
|
|
30250
30714
|
// Used internally for styling
|
|
30251
30715
|
[`split-pane-${mode}`]: true,
|
|
30252
30716
|
'split-pane-visible': this.visible,
|
|
30253
|
-
} }, hAsync("slot", { key: '
|
|
30717
|
+
} }, hAsync("slot", { key: 'abe231361727ae7fc63edd592a4490caac1909fb' })));
|
|
30254
30718
|
}
|
|
30255
30719
|
get el() { return getElement(this); }
|
|
30256
30720
|
static get watchers() { return {
|
|
@@ -30319,10 +30783,10 @@ class Tab {
|
|
|
30319
30783
|
}
|
|
30320
30784
|
render() {
|
|
30321
30785
|
const { tab, active, component } = this;
|
|
30322
|
-
return (hAsync(Host, { key: '
|
|
30786
|
+
return (hAsync(Host, { key: 'cb75d0877979b3b8df8f7e1952bfa9677da1eaa5', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
|
|
30323
30787
|
'ion-page': component === undefined,
|
|
30324
30788
|
'tab-hidden': !active,
|
|
30325
|
-
} }, hAsync("slot", { key: '
|
|
30789
|
+
} }, hAsync("slot", { key: '37fbb7b7a6b03eb93b1dacd2dc1025b78eb2aa6b' })));
|
|
30326
30790
|
}
|
|
30327
30791
|
get el() { return getElement(this); }
|
|
30328
30792
|
static get watchers() { return {
|
|
@@ -30400,11 +30864,11 @@ class TabBar {
|
|
|
30400
30864
|
const { color, translucent, keyboardVisible } = this;
|
|
30401
30865
|
const mode = getIonMode$1(this);
|
|
30402
30866
|
const shouldHide = keyboardVisible && this.el.getAttribute('slot') !== 'top';
|
|
30403
|
-
return (hAsync(Host, { key: '
|
|
30867
|
+
return (hAsync(Host, { key: 'a87fd2ea5df053705a37ea7ffec043e75c4a9907', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses$1(color, {
|
|
30404
30868
|
[mode]: true,
|
|
30405
30869
|
'tab-bar-translucent': translucent,
|
|
30406
30870
|
'tab-bar-hidden': shouldHide,
|
|
30407
|
-
}) }, hAsync("slot", { key: '
|
|
30871
|
+
}) }, hAsync("slot", { key: '81a6223299b6cab29d7ddced590e9152e2b3ded0' })));
|
|
30408
30872
|
}
|
|
30409
30873
|
get el() { return getElement(this); }
|
|
30410
30874
|
static get watchers() { return {
|
|
@@ -30502,7 +30966,7 @@ class TabButton {
|
|
|
30502
30966
|
rel,
|
|
30503
30967
|
target,
|
|
30504
30968
|
};
|
|
30505
|
-
return (hAsync(Host, { key: '
|
|
30969
|
+
return (hAsync(Host, { key: '5976c45943ea7ea8e7c1a85fc9996de421439f08', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
|
|
30506
30970
|
[mode]: true,
|
|
30507
30971
|
'tab-selected': selected,
|
|
30508
30972
|
'tab-disabled': disabled,
|
|
@@ -30514,7 +30978,7 @@ class TabButton {
|
|
|
30514
30978
|
'ion-activatable': true,
|
|
30515
30979
|
'ion-selectable': true,
|
|
30516
30980
|
'ion-focusable': true,
|
|
30517
|
-
} }, hAsync("a", Object.assign({ key: '
|
|
30981
|
+
} }, 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" }))));
|
|
30518
30982
|
}
|
|
30519
30983
|
get el() { return getElement(this); }
|
|
30520
30984
|
static get style() { return {
|
|
@@ -30690,7 +31154,7 @@ class Tabs {
|
|
|
30690
31154
|
return Array.from(this.el.querySelectorAll('ion-tab'));
|
|
30691
31155
|
}
|
|
30692
31156
|
render() {
|
|
30693
|
-
return (hAsync(Host, { key: '
|
|
31157
|
+
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" })));
|
|
30694
31158
|
}
|
|
30695
31159
|
get el() { return getElement(this); }
|
|
30696
31160
|
static get style() { return IonTabsStyle0; }
|
|
@@ -30732,9 +31196,9 @@ class Text {
|
|
|
30732
31196
|
}
|
|
30733
31197
|
render() {
|
|
30734
31198
|
const mode = getIonMode$1(this);
|
|
30735
|
-
return (hAsync(Host, { key: '
|
|
31199
|
+
return (hAsync(Host, { key: 'e134d70c04344b708a2ecf6253722781ad2ca826', class: createColorClasses$1(this.color, {
|
|
30736
31200
|
[mode]: true,
|
|
30737
|
-
}) }, hAsync("slot", { key: '
|
|
31201
|
+
}) }, hAsync("slot", { key: 'da79c760f7ebbcd007ce110439f05a62cb22eac8' })));
|
|
30738
31202
|
}
|
|
30739
31203
|
static get style() { return IonTextStyle0; }
|
|
30740
31204
|
static get cmpMeta() { return {
|
|
@@ -31116,7 +31580,7 @@ class Textarea {
|
|
|
31116
31580
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
31117
31581
|
*/
|
|
31118
31582
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
|
|
31119
|
-
return (hAsync(Host, { key: '
|
|
31583
|
+
return (hAsync(Host, { key: 'd6e25c83d8eab8cb1a5b6ab411c9a13847f69f8d', class: createColorClasses$1(this.color, {
|
|
31120
31584
|
[mode]: true,
|
|
31121
31585
|
'has-value': hasValue,
|
|
31122
31586
|
'has-focus': hasFocus,
|
|
@@ -31125,7 +31589,7 @@ class Textarea {
|
|
|
31125
31589
|
[`textarea-shape-${shape}`]: shape !== undefined,
|
|
31126
31590
|
[`textarea-label-placement-${labelPlacement}`]: true,
|
|
31127
31591
|
'textarea-disabled': disabled,
|
|
31128
|
-
}) }, hAsync("label", { key: '
|
|
31592
|
+
}) }, 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()));
|
|
31129
31593
|
}
|
|
31130
31594
|
get el() { return getElement(this); }
|
|
31131
31595
|
static get watchers() { return {
|
|
@@ -31187,7 +31651,7 @@ class Thumbnail {
|
|
|
31187
31651
|
registerInstance(this, hostRef);
|
|
31188
31652
|
}
|
|
31189
31653
|
render() {
|
|
31190
|
-
return (hAsync(Host, { key: '
|
|
31654
|
+
return (hAsync(Host, { key: 'cfa9aeb1d4fd624a9732c5230d29dd887e4b7771', class: getIonMode$1(this) }, hAsync("slot", { key: '29bc6e64063cba44e2643228df54394883933918' })));
|
|
31191
31655
|
}
|
|
31192
31656
|
static get style() { return IonThumbnailStyle0; }
|
|
31193
31657
|
static get cmpMeta() { return {
|
|
@@ -31634,10 +32098,10 @@ const createSwipeToDismissGesture = (el, toastPosition, onDismiss) => {
|
|
|
31634
32098
|
return gesture;
|
|
31635
32099
|
};
|
|
31636
32100
|
|
|
31637
|
-
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;
|
|
32101
|
+
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}}";
|
|
31638
32102
|
var IonToastIosStyle0 = toastIosCss;
|
|
31639
32103
|
|
|
31640
|
-
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;
|
|
32104
|
+
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)}}";
|
|
31641
32105
|
var IonToastMdStyle0 = toastMdCss;
|
|
31642
32106
|
|
|
31643
32107
|
// TODO(FW-2832): types
|
|
@@ -32023,9 +32487,9 @@ class Toast {
|
|
|
32023
32487
|
if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
|
|
32024
32488
|
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);
|
|
32025
32489
|
}
|
|
32026
|
-
return (hAsync(Host, Object.assign({ key: '
|
|
32490
|
+
return (hAsync(Host, Object.assign({ key: 'c05655ff06af8d0e48c2a85396b07ad942fa81b4', tabindex: "-1" }, this.htmlAttributes, { style: {
|
|
32027
32491
|
zIndex: `${60000 + this.overlayIndex}`,
|
|
32028
|
-
}, 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: '
|
|
32492
|
+
}, 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')))));
|
|
32029
32493
|
}
|
|
32030
32494
|
get el() { return getElement(this); }
|
|
32031
32495
|
static get watchers() { return {
|
|
@@ -32245,7 +32709,7 @@ class Toggle {
|
|
|
32245
32709
|
const value = this.getValue();
|
|
32246
32710
|
const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
|
|
32247
32711
|
renderHiddenInput(true, el, name, checked ? value : '', disabled);
|
|
32248
|
-
return (hAsync(Host, { key: '
|
|
32712
|
+
return (hAsync(Host, { key: 'f52195ec3bc14c024647cb41319c32a4cd330e19', onClick: this.onClick, class: createColorClasses$1(color, {
|
|
32249
32713
|
[mode]: true,
|
|
32250
32714
|
'in-item': hostContext('ion-item', el),
|
|
32251
32715
|
'toggle-activated': activated,
|
|
@@ -32255,10 +32719,10 @@ class Toggle {
|
|
|
32255
32719
|
[`toggle-alignment-${alignment}`]: alignment !== undefined,
|
|
32256
32720
|
[`toggle-label-placement-${labelPlacement}`]: true,
|
|
32257
32721
|
[`toggle-${rtl}`]: true,
|
|
32258
|
-
}) }, hAsync("label", { key: '
|
|
32722
|
+
}) }, 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: {
|
|
32259
32723
|
'label-text-wrapper': true,
|
|
32260
32724
|
'label-text-wrapper-hidden': !this.hasLabel,
|
|
32261
|
-
}, part: "label" }, hAsync("slot", { key: '
|
|
32725
|
+
}, part: "label" }, hAsync("slot", { key: '80a6672e2e792c15011a9496dcd75363cdba31c6' })), hAsync("div", { key: '2b2b318b38ab27b194c0dab4cecd77d9d780f2ca', class: "native-wrapper" }, this.renderToggleControl()))));
|
|
32262
32726
|
}
|
|
32263
32727
|
get el() { return getElement(this); }
|
|
32264
32728
|
static get watchers() { return {
|
|
@@ -32362,10 +32826,10 @@ class Toolbar {
|
|
|
32362
32826
|
this.childrenStyles.forEach((value) => {
|
|
32363
32827
|
Object.assign(childStyles, value);
|
|
32364
32828
|
});
|
|
32365
|
-
return (hAsync(Host, { key: '
|
|
32829
|
+
return (hAsync(Host, { key: '462538a5ecd01baf3cde116c9f029aeda26c81be', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
|
|
32366
32830
|
[mode]: true,
|
|
32367
32831
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
32368
|
-
})) }, hAsync("div", { key: '
|
|
32832
|
+
})) }, 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" }))));
|
|
32369
32833
|
}
|
|
32370
32834
|
get el() { return getElement(this); }
|
|
32371
32835
|
static get style() { return {
|
|
@@ -32415,11 +32879,11 @@ class ToolbarTitle {
|
|
|
32415
32879
|
render() {
|
|
32416
32880
|
const mode = getIonMode$1(this);
|
|
32417
32881
|
const size = this.getSize();
|
|
32418
|
-
return (hAsync(Host, { key: '
|
|
32882
|
+
return (hAsync(Host, { key: '7293d2ecd6262feb0d8d769effbb208230baed89', class: createColorClasses$1(this.color, {
|
|
32419
32883
|
[mode]: true,
|
|
32420
32884
|
[`title-${size}`]: true,
|
|
32421
32885
|
'title-rtl': document.dir === 'rtl',
|
|
32422
|
-
}) }, hAsync("div", { key: '
|
|
32886
|
+
}) }, hAsync("div", { key: '086ec3a361ebdf6506846a8704b457cda3a6f897', class: "toolbar-title" }, hAsync("slot", { key: '59add7eb92b82d6832a8f0894f897c51fdf4f214' }))));
|
|
32423
32887
|
}
|
|
32424
32888
|
get el() { return getElement(this); }
|
|
32425
32889
|
static get watchers() { return {
|
|
@@ -32520,7 +32984,10 @@ registerComponents([
|
|
|
32520
32984
|
Searchbar,
|
|
32521
32985
|
Segment,
|
|
32522
32986
|
SegmentButton,
|
|
32987
|
+
SegmentContent,
|
|
32988
|
+
SegmentView,
|
|
32523
32989
|
Select,
|
|
32990
|
+
SelectModal,
|
|
32524
32991
|
SelectOption,
|
|
32525
32992
|
SelectPopover,
|
|
32526
32993
|
SkeletonText,
|