voyager-ionic-core 8.3.3 → 8.4.0
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/action-sheet.js +2 -2
- 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 +356 -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 +20 -5
- package/components/ion-item-divider.js +2 -2
- package/components/ion-item-group.js +1 -1
- package/components/ion-item-option.js +2 -2
- package/components/ion-item-options.js +1 -1
- package/components/ion-item-sliding.js +1 -1
- package/components/ion-loading.js +2 -2
- package/components/ion-menu-button.js +2 -2
- package/components/ion-menu-toggle.js +2 -2
- package/components/ion-menu.js +19 -19
- 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 +19 -4
- package/components/ion-thumbnail.js +1 -1
- package/components/ion-title.js +1 -70
- package/components/ion-toast.js +2 -2
- 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 +62 -7
- 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 +5 -3
- 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 +3 -3
- package/dist/cjs/ion-alert.cjs.entry.js +8 -6
- package/dist/cjs/ion-app_8.cjs.entry.js +15 -15
- 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 +20 -5
- package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-item_8.cjs.entry.js +12 -12
- package/dist/cjs/ion-loading.cjs.entry.js +3 -3
- package/dist/cjs/ion-menu_3.cjs.entry.js +24 -24
- 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 +12 -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 +19 -4
- package/dist/cjs/ion-toast.cjs.entry.js +3 -3
- package/dist/cjs/ion-toggle.cjs.entry.js +3 -3
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{overlays-0123d7d4.js → overlays-ba0f6986.js} +62 -7
- package/dist/collection/collection-manifest.json +3 -0
- package/dist/collection/components/action-sheet/action-sheet.js +2 -2
- 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/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 +20 -5
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +3 -3
- package/dist/collection/components/item-divider/item-divider.js +2 -2
- package/dist/collection/components/item-group/item-group.js +1 -1
- package/dist/collection/components/item-option/item-option.js +2 -2
- package/dist/collection/components/item-options/item-options.js +1 -1
- package/dist/collection/components/item-sliding/item-sliding.js +1 -1
- package/dist/collection/components/label/label.js +2 -2
- package/dist/collection/components/list/list.js +1 -1
- package/dist/collection/components/list-header/list-header.js +2 -2
- package/dist/collection/components/loading/loading.js +2 -2
- package/dist/collection/components/menu/menu.js +47 -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 +5 -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 +19 -4
- package/dist/collection/components/thumbnail/thumbnail.js +1 -1
- package/dist/collection/components/title/title.js +2 -2
- package/dist/collection/components/toast/toast.js +2 -2
- package/dist/collection/components/toggle/toggle.js +3 -3
- package/dist/collection/components/toolbar/toolbar.js +2 -2
- package/dist/collection/utils/menu-controller/index.js +2 -2
- package/dist/collection/utils/overlays.js +62 -7
- 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 +3 -3
- package/dist/esm/ion-alert.entry.js +8 -6
- package/dist/esm/ion-app_8.entry.js +15 -15
- 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 +20 -5
- package/dist/esm/ion-item-option_3.entry.js +4 -4
- package/dist/esm/ion-item_8.entry.js +12 -12
- package/dist/esm/ion-loading.entry.js +3 -3
- package/dist/esm/ion-menu_3.entry.js +24 -24
- 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 +12 -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 +19 -4
- package/dist/esm/ion-toast.entry.js +3 -3
- package/dist/esm/ion-toggle.entry.js +3 -3
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{overlays-9c75ec54.js → overlays-ae10d43d.js} +62 -7
- 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-ae10d43d.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-ecb57d24.system.entry.js → p-0161caf9.system.entry.js} +1 -1
- package/dist/ionic/p-0437ace4.system.entry.js +4 -0
- package/dist/ionic/p-04fc24ee.system.js +4 -0
- package/dist/ionic/{p-e3e1e3de.entry.js → p-081a4ce4.entry.js} +1 -1
- package/dist/ionic/p-09cf2394.entry.js +4 -0
- package/dist/ionic/p-14be4015.entry.js +4 -0
- 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-b54fc1ae.entry.js → p-19ec4f42.entry.js} +1 -1
- package/dist/ionic/p-1b7605a7.system.entry.js +4 -0
- package/dist/ionic/p-1c1b8e1f.entry.js +4 -0
- package/dist/ionic/{p-8b6232a6.system.entry.js → p-1e010627.system.entry.js} +2 -2
- package/dist/ionic/{p-f50ae0d5.system.entry.js → p-1e41f2aa.system.entry.js} +1 -1
- package/dist/ionic/{p-cdb11938.system.entry.js → p-1e67b266.system.entry.js} +1 -1
- package/dist/ionic/{p-bd25d639.system.entry.js → p-1ebd1e27.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-4a82bd1c.system.entry.js → p-2e46590d.system.entry.js} +1 -1
- package/dist/ionic/p-2fc0dafe.entry.js +4 -0
- package/dist/ionic/p-322c5fb4.system.js +2 -2
- package/dist/ionic/p-33a8a71b.entry.js +4 -0
- package/dist/ionic/{p-4b0fedb7.system.entry.js → p-37cb43bd.system.entry.js} +1 -1
- package/dist/ionic/{p-ad9b5007.system.entry.js → p-3b419d79.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-ed6962d3.system.entry.js → p-4561cd09.system.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-9fef1364.entry.js → p-4a274c89.entry.js} +1 -1
- package/dist/ionic/{p-d57661a1.entry.js → p-4b000207.entry.js} +1 -1
- package/dist/ionic/{p-fd0cb4ef.entry.js → p-4ec778aa.entry.js} +1 -1
- 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-8ed31163.system.entry.js → p-5393e8bb.system.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-cff5585e.system.entry.js → p-5b5c1505.system.entry.js} +1 -1
- package/dist/ionic/{p-8d44cf1f.entry.js → p-5b932840.entry.js} +1 -1
- package/dist/ionic/{p-9cc3bcc5.system.entry.js → p-5bd39e5e.system.entry.js} +2 -2
- package/dist/ionic/p-5c831f49.js +4 -0
- package/dist/ionic/{p-5800e441.entry.js → p-5f79d8c5.entry.js} +1 -1
- package/dist/ionic/{p-772dacba.system.entry.js → p-5fce0c0b.system.entry.js} +1 -1
- 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-6734db42.system.entry.js +4 -0
- package/dist/ionic/p-69666e8a.system.entry.js +4 -0
- package/dist/ionic/{p-5e842258.entry.js → p-6d32975a.entry.js} +1 -1
- 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-6817cf42.system.entry.js → p-7ed1657c.system.entry.js} +1 -1
- package/dist/ionic/{p-22c020db.system.entry.js → p-857ca696.system.entry.js} +1 -1
- package/dist/ionic/{p-a4d51b8d.system.js → p-8f05ba3b.system.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-4c8fceb0.entry.js → p-95775830.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-9910f786.entry.js +4 -0
- package/dist/ionic/{p-6e85e450.entry.js → p-9df2c6fb.entry.js} +1 -1
- package/dist/ionic/{p-7251fed5.entry.js → p-9ee1e8a6.entry.js} +1 -1
- package/dist/ionic/{p-da263d8e.entry.js → p-9fa07aec.entry.js} +1 -1
- package/dist/ionic/{p-a41699db.entry.js → p-a1051806.entry.js} +1 -1
- package/dist/ionic/p-a1b9a163.entry.js +4 -0
- package/dist/ionic/p-a34b4d94.entry.js +4 -0
- package/dist/ionic/{p-8836d0eb.system.entry.js → p-a49378bb.system.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-755b27f0.system.entry.js → p-b335ffed.system.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-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-5e66bcf2.entry.js → p-db0c8e7d.entry.js} +1 -1
- package/dist/ionic/{p-89a0a446.entry.js → p-de930745.entry.js} +1 -1
- package/dist/ionic/p-e2252ad6.entry.js +4 -0
- package/dist/ionic/{p-960803fc.system.entry.js → p-e4ee80be.system.entry.js} +1 -1
- package/dist/ionic/p-e563a35c.entry.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-f10b70a1.entry.js +4 -0
- package/dist/ionic/{p-01503bbd.system.entry.js → p-f3102647.system.entry.js} +1 -1
- package/dist/ionic/{p-6562e0a9.system.entry.js → p-fca6ef5f.system.entry.js} +1 -1
- 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/input/input.d.ts +3 -0
- 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/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/textarea/textarea.d.ts +3 -0
- package/dist/types/components.d.ts +103 -13
- package/dist/types/utils/overlays-interface.d.ts +1 -1
- package/hydrate/index.js +708 -225
- package/hydrate/index.mjs +708 -225
- package/package.json +1 -1
- package/dist/esm-es5/overlays-9c75ec54.js +0 -4
- package/dist/ionic/p-0fa0c92b.entry.js +0 -4
- package/dist/ionic/p-100b83fd.system.entry.js +0 -4
- package/dist/ionic/p-2200e26b.entry.js +0 -4
- package/dist/ionic/p-2b7c93b4.entry.js +0 -4
- package/dist/ionic/p-2c4bdd9d.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-72ffd137.system.entry.js +0 -4
- package/dist/ionic/p-82ab7ccb.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-98871496.system.js +0 -4
- package/dist/ionic/p-9c23044d.entry.js +0 -4
- package/dist/ionic/p-a0c88dc2.system.entry.js +0 -4
- package/dist/ionic/p-a440397c.js +0 -4
- package/dist/ionic/p-a72fb8a1.system.entry.js +0 -4
- package/dist/ionic/p-ab8a2ff1.entry.js +0 -4
- package/dist/ionic/p-b4c950f8.entry.js +0 -4
- package/dist/ionic/p-bfa2e81c.entry.js +0 -4
- package/dist/ionic/p-d77e12ca.entry.js +0 -4
- package/dist/ionic/p-f88ebc36.entry.js +0 -4
package/components/overlays.js
CHANGED
|
@@ -500,9 +500,19 @@ const present = async (overlay, name, iosEnterAnimation, mdEnterAnimation, opts)
|
|
|
500
500
|
if (overlay.presented) {
|
|
501
501
|
return;
|
|
502
502
|
}
|
|
503
|
-
|
|
503
|
+
/**
|
|
504
|
+
* Due to accessibility guidelines, toasts do not have
|
|
505
|
+
* focus traps.
|
|
506
|
+
*
|
|
507
|
+
* All other overlays should have focus traps to prevent
|
|
508
|
+
* the keyboard focus from leaving the overlay.
|
|
509
|
+
*/
|
|
510
|
+
if (overlay.el.tagName !== 'ION-TOAST') {
|
|
511
|
+
setRootAriaHidden(true);
|
|
512
|
+
}
|
|
504
513
|
document.body.classList.add(BACKDROP_NO_SCROLL);
|
|
505
|
-
|
|
514
|
+
hideUnderlyingOverlaysFromScreenReaders(overlay.el);
|
|
515
|
+
hideAnimatingOverlayFromScreenReaders(overlay.el);
|
|
506
516
|
overlay.presented = true;
|
|
507
517
|
overlay.willPresent.emit();
|
|
508
518
|
(_a = overlay.willPresentShorthand) === null || _a === void 0 ? void 0 : _a.emit();
|
|
@@ -542,6 +552,11 @@ const present = async (overlay, name, iosEnterAnimation, mdEnterAnimation, opts)
|
|
|
542
552
|
* it would still have aria-hidden on being presented again.
|
|
543
553
|
* Removing it here ensures the overlay is visible to screen
|
|
544
554
|
* readers.
|
|
555
|
+
*
|
|
556
|
+
* If this overlay was being presented, then it was hidden
|
|
557
|
+
* from screen readers during the animation. Now that the
|
|
558
|
+
* animation is complete, we can reveal the overlay to
|
|
559
|
+
* screen readers.
|
|
545
560
|
*/
|
|
546
561
|
overlay.el.removeAttribute('aria-hidden');
|
|
547
562
|
};
|
|
@@ -599,17 +614,35 @@ const dismiss = async (overlay, data, role, name, iosLeaveAnimation, mdLeaveAnim
|
|
|
599
614
|
if (!overlay.presented) {
|
|
600
615
|
return false;
|
|
601
616
|
}
|
|
602
|
-
const lastOverlay = doc !== undefined && getPresentedOverlays(doc).length === 1;
|
|
603
617
|
/**
|
|
604
|
-
*
|
|
605
|
-
*
|
|
618
|
+
* For accessibility, toasts lack focus traps and don’t receive
|
|
619
|
+
* `aria-hidden` on the root element when presented.
|
|
620
|
+
*
|
|
621
|
+
* All other overlays use focus traps to keep keyboard focus
|
|
622
|
+
* within the overlay, setting `aria-hidden` on the root element
|
|
623
|
+
* to enhance accessibility.
|
|
624
|
+
*
|
|
625
|
+
* Therefore, we must remove `aria-hidden` from the root element
|
|
626
|
+
* when the last non-toast overlay is dismissed.
|
|
606
627
|
*/
|
|
607
|
-
|
|
628
|
+
const overlaysNotToast = doc !== undefined ? getPresentedOverlays(doc).filter((o) => o.tagName !== 'ION-TOAST') : [];
|
|
629
|
+
const lastOverlayNotToast = overlaysNotToast.length === 1 && overlaysNotToast[0].id === overlay.el.id;
|
|
630
|
+
/**
|
|
631
|
+
* If this is the last visible overlay that is not a toast
|
|
632
|
+
* then we want to re-add the root to the accessibility tree.
|
|
633
|
+
*/
|
|
634
|
+
if (lastOverlayNotToast) {
|
|
608
635
|
setRootAriaHidden(false);
|
|
609
636
|
document.body.classList.remove(BACKDROP_NO_SCROLL);
|
|
610
637
|
}
|
|
611
638
|
overlay.presented = false;
|
|
612
639
|
try {
|
|
640
|
+
/**
|
|
641
|
+
* There is no need to show the overlay to screen readers during
|
|
642
|
+
* the dismiss animation. This is because the overlay will be removed
|
|
643
|
+
* from the DOM after the animation is complete.
|
|
644
|
+
*/
|
|
645
|
+
hideAnimatingOverlayFromScreenReaders(overlay.el);
|
|
613
646
|
// Overlay contents should not be clickable during dismiss
|
|
614
647
|
overlay.el.style.setProperty('pointer-events', 'none');
|
|
615
648
|
overlay.willDismiss.emit({ data, role });
|
|
@@ -844,6 +877,28 @@ const createTriggerController = () => {
|
|
|
844
877
|
removeClickListener,
|
|
845
878
|
};
|
|
846
879
|
};
|
|
880
|
+
/**
|
|
881
|
+
* The overlay that is being animated also needs to hide from screen
|
|
882
|
+
* readers during its animation. This ensures that assistive technologies
|
|
883
|
+
* like TalkBack do not announce or interact with the content until the
|
|
884
|
+
* animation is complete, avoiding confusion for users.
|
|
885
|
+
*
|
|
886
|
+
* If the overlay is being presented, it prevents focus rings from appearing
|
|
887
|
+
* in incorrect positions due to the transition (specifically `transform`
|
|
888
|
+
* styles), ensuring that when aria-hidden is removed, the focus rings are
|
|
889
|
+
* correctly displayed in the final location of the elements.
|
|
890
|
+
*
|
|
891
|
+
* @param overlay - The overlay that is being animated.
|
|
892
|
+
*/
|
|
893
|
+
const hideAnimatingOverlayFromScreenReaders = (overlay) => {
|
|
894
|
+
if (doc === undefined)
|
|
895
|
+
return;
|
|
896
|
+
/**
|
|
897
|
+
* Once the animation is complete, this attribute will be removed.
|
|
898
|
+
* This is done at the end of the `present` method.
|
|
899
|
+
*/
|
|
900
|
+
overlay.setAttribute('aria-hidden', 'true');
|
|
901
|
+
};
|
|
847
902
|
/**
|
|
848
903
|
* Ensure that underlying overlays have aria-hidden if necessary so that screen readers
|
|
849
904
|
* cannot move focus to these elements. Note that we cannot rely on focus/focusin/focusout
|
|
@@ -854,7 +909,7 @@ const createTriggerController = () => {
|
|
|
854
909
|
* @param newTopMostOverlay - The overlay that is being presented. Since the overlay has not been
|
|
855
910
|
* fully presented yet at the time this function is called it will not be included in the getPresentedOverlays result.
|
|
856
911
|
*/
|
|
857
|
-
const
|
|
912
|
+
const hideUnderlyingOverlaysFromScreenReaders = (newTopMostOverlay) => {
|
|
858
913
|
var _a;
|
|
859
914
|
if (doc === undefined)
|
|
860
915
|
return;
|
|
@@ -86,10 +86,10 @@ const PickerColumnOption = /*@__PURE__*/ proxyCustomElement(class PickerColumnOp
|
|
|
86
86
|
render() {
|
|
87
87
|
const { color, disabled, ariaLabel } = this;
|
|
88
88
|
const mode = getIonMode(this);
|
|
89
|
-
return (h(Host, { key: '
|
|
89
|
+
return (h(Host, { key: 'c743c6ef44bb9f765cc15b3b5d2864de6520203a', class: createColorClasses(color, {
|
|
90
90
|
[mode]: true,
|
|
91
91
|
['option-disabled']: disabled,
|
|
92
|
-
}) }, h("button", { key: '
|
|
92
|
+
}) }, h("button", { key: '4c3d9eb245c52b2c007f727e145cfb55759bd7a9', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, h("slot", { key: '4c907d2187cbe9d5941e27f2b12578e2b7271461' }))));
|
|
93
93
|
}
|
|
94
94
|
get el() { return this; }
|
|
95
95
|
static get watchers() { return {
|
|
@@ -533,12 +533,12 @@ const PickerColumn = /*@__PURE__*/ proxyCustomElement(class PickerColumn extends
|
|
|
533
533
|
render() {
|
|
534
534
|
const { color, disabled, isActive, numericInput } = this;
|
|
535
535
|
const mode = getIonMode(this);
|
|
536
|
-
return (h(Host, { key: '
|
|
536
|
+
return (h(Host, { key: 'a221dc10f1eb7c41637a16d2c7167c16939822fd', class: createColorClasses(color, {
|
|
537
537
|
[mode]: true,
|
|
538
538
|
['picker-column-active']: isActive,
|
|
539
539
|
['picker-column-numeric-input']: numericInput,
|
|
540
540
|
['picker-column-disabled']: disabled,
|
|
541
|
-
}) }, this.renderAssistiveFocusable(), h("slot", { key: '
|
|
541
|
+
}) }, this.renderAssistiveFocusable(), h("slot", { key: '81b0656f606856f3dc0a657bf167d81a5011405e', name: "prefix" }), h("div", { key: '71b9de67c04150255dd66592601c9d926db0c31c', "aria-hidden": "true", class: "picker-opts", ref: (el) => {
|
|
542
542
|
this.scrollEl = el;
|
|
543
543
|
},
|
|
544
544
|
/**
|
|
@@ -559,7 +559,7 @@ const PickerColumn = /*@__PURE__*/ proxyCustomElement(class PickerColumn extends
|
|
|
559
559
|
* To prevent this, we set the tabIndex to -1. This
|
|
560
560
|
* will match the behavior of the other browsers.
|
|
561
561
|
*/
|
|
562
|
-
tabIndex: -1 }, h("div", { key: '
|
|
562
|
+
tabIndex: -1 }, h("div", { key: 'ebdc2f08c83db0cf17b4be29f28fcb00f529601e', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '04ab56fcb8e6a7d6af00204c4560feb99ff34a56', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '6cf8f538903faf0fe1e4130f3eaf7b4e2e17cb52', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("slot", { key: '1cc392307b70c576be5b81b5226ceba735957f0f' }), h("div", { key: '23e3f28e2a99b9aa8b7c8f68ad9583e3ca63e9e2', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '8a0563f09780c3116af0caebe4f40587ec1f041f', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '13207e248fc0009f37e0c90a3ee2bac2f130b856', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0")), h("slot", { key: '55ecf2ab5f214f936c2468cbdb7952daf89416b8', name: "suffix" })));
|
|
563
563
|
}
|
|
564
564
|
get el() { return this; }
|
|
565
565
|
static get watchers() { return {
|
|
@@ -343,9 +343,9 @@ const PickerColumnCmp = /*@__PURE__*/ proxyCustomElement(class PickerColumnCmp e
|
|
|
343
343
|
render() {
|
|
344
344
|
const col = this.col;
|
|
345
345
|
const mode = getIonMode(this);
|
|
346
|
-
return (h(Host, { key: '
|
|
346
|
+
return (h(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: {
|
|
347
347
|
'max-width': this.col.columnWidth,
|
|
348
|
-
} }, col.prefix && (h("div", { key: '
|
|
348
|
+
} }, col.prefix && (h("div", { key: 'f9de3fe2f5c7ad3256d6e5f44b6d03a2b1f96ffb', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), h("div", { key: '10f9c12aa174f96c7cf9adc30efbb26695c0aa64', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (h("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (h("div", { key: '1d9c0892ce56e0da9044c79eb953827166f5190b', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
|
|
349
349
|
}
|
|
350
350
|
get el() { return this; }
|
|
351
351
|
static get watchers() { return {
|
package/components/picker.js
CHANGED
|
@@ -482,7 +482,7 @@ const Picker = /*@__PURE__*/ proxyCustomElement(class Picker extends HTMLElement
|
|
|
482
482
|
this.emitInputModeChange();
|
|
483
483
|
}
|
|
484
484
|
render() {
|
|
485
|
-
return (h(Host, { key: '
|
|
485
|
+
return (h(Host, { key: 'f92214a09dc85b65873676f40fde2b802960e704', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, h("input", { key: '6da37f75aca4ea1c9cb3bc733ebda2116279f313', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
|
|
486
486
|
var _a;
|
|
487
487
|
/**
|
|
488
488
|
* The "Enter" key represents
|
|
@@ -497,7 +497,7 @@ const Picker = /*@__PURE__*/ proxyCustomElement(class Picker extends HTMLElement
|
|
|
497
497
|
if (ev.key === 'Enter') {
|
|
498
498
|
(_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.blur();
|
|
499
499
|
}
|
|
500
|
-
}, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), h("div", { key: '
|
|
500
|
+
}, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), h("div", { key: '298e99d83dd3f5bf2798150bab0bb4024af472fa', class: "picker-before" }), h("div", { key: 'ea578f04eb562a4dc6d6cc92de133dcb9fb7f42a', class: "picker-after" }), h("div", { key: '84567824956dfe967992a629904836ba8b75b3ec', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), h("slot", { key: 'df81f8fb90e1f649b608328034528f5c31c70c3b' })));
|
|
501
501
|
}
|
|
502
502
|
get el() { return this; }
|
|
503
503
|
static get style() { return {
|
package/components/popover.js
CHANGED
|
@@ -1294,9 +1294,9 @@ const Popover = /*@__PURE__*/ proxyCustomElement(class Popover extends HTMLEleme
|
|
|
1294
1294
|
const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
|
|
1295
1295
|
const desktop = isPlatform('desktop');
|
|
1296
1296
|
const enableArrow = arrow && !parentPopover;
|
|
1297
|
-
return (h(Host, Object.assign({ key: '
|
|
1297
|
+
return (h(Host, Object.assign({ key: 'ffe8b37c9ffb5cac210a7307e6cdfcf78712905b', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
|
|
1298
1298
|
zIndex: `${20000 + this.overlayIndex}`,
|
|
1299
|
-
}, 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 && h("ion-backdrop", { key: '
|
|
1299
|
+
}, 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 && h("ion-backdrop", { key: '12b3ffa3928b4d56a4f09c3d2f5d493d47b45255', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { key: '2c2862d5c7e75b637973c712b4982bf4978c0cdf', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { key: '0cfacc52afaa7abc28c1b7742889d7a1c23a37ad', class: "popover-arrow", part: "arrow" }), h("div", { key: '3ef570c44d4fe7f063dd419008c92c8c40d3cd22', class: "popover-content", part: "content" }, h("slot", { key: '6fc5dfdce20fee1642bc1f05d41b5bf7d1034457' })))));
|
|
1300
1300
|
}
|
|
1301
1301
|
get el() { return this; }
|
|
1302
1302
|
static get watchers() { return {
|
|
@@ -105,7 +105,9 @@ const RadioGroup = /*@__PURE__*/ proxyCustomElement(class RadioGroup extends HTM
|
|
|
105
105
|
this.ionChange.emit({ value, event });
|
|
106
106
|
}
|
|
107
107
|
onKeydown(ev) {
|
|
108
|
-
|
|
108
|
+
// We don't want the value to automatically change/emit when the radio group is part of a select interface
|
|
109
|
+
// as this will cause the interface to close when navigating through the radio group options
|
|
110
|
+
const inSelectInterface = !!this.el.closest('ion-select-popover') || !!this.el.closest('ion-select-modal');
|
|
109
111
|
if (ev.target && !this.el.contains(ev.target)) {
|
|
110
112
|
return;
|
|
111
113
|
}
|
|
@@ -129,7 +131,7 @@ const RadioGroup = /*@__PURE__*/ proxyCustomElement(class RadioGroup extends HTM
|
|
|
129
131
|
}
|
|
130
132
|
if (next && radios.includes(next)) {
|
|
131
133
|
next.setFocus(ev);
|
|
132
|
-
if (!
|
|
134
|
+
if (!inSelectInterface) {
|
|
133
135
|
this.value = next.value;
|
|
134
136
|
this.emitValueChange(ev);
|
|
135
137
|
}
|
|
@@ -158,7 +160,7 @@ const RadioGroup = /*@__PURE__*/ proxyCustomElement(class RadioGroup extends HTM
|
|
|
158
160
|
const { label, labelId, el, name, value } = this;
|
|
159
161
|
const mode = getIonMode(this);
|
|
160
162
|
renderHiddenInput(true, el, name, value, false);
|
|
161
|
-
return h(Host, { key: '
|
|
163
|
+
return h(Host, { key: '99f543b9caa8e2d30a80e7ea7ecf6b6fdacc76eb', role: "radiogroup", "aria-labelledby": label ? labelId : null, onClick: this.onClick, class: mode });
|
|
162
164
|
}
|
|
163
165
|
get el() { return this; }
|
|
164
166
|
static get watchers() { return {
|
package/components/radio.js
CHANGED
|
@@ -122,8 +122,10 @@ const Radio = /*@__PURE__*/ proxyCustomElement(class Radio extends HTMLElement {
|
|
|
122
122
|
}
|
|
123
123
|
/** @internal */
|
|
124
124
|
async setFocus(ev) {
|
|
125
|
-
ev
|
|
126
|
-
|
|
125
|
+
if (ev !== undefined) {
|
|
126
|
+
ev.stopPropagation();
|
|
127
|
+
ev.preventDefault();
|
|
128
|
+
}
|
|
127
129
|
this.el.focus();
|
|
128
130
|
}
|
|
129
131
|
/** @internal */
|
|
@@ -157,7 +159,7 @@ const Radio = /*@__PURE__*/ proxyCustomElement(class Radio extends HTMLElement {
|
|
|
157
159
|
const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
|
|
158
160
|
const mode = getIonMode(this);
|
|
159
161
|
const inItem = hostContext('ion-item', el);
|
|
160
|
-
return (h(Host, { key: '
|
|
162
|
+
return (h(Host, { key: '5a0adab55ad009305de4856fa1b9f93f2279a734', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses(color, {
|
|
161
163
|
[mode]: true,
|
|
162
164
|
'in-item': inItem,
|
|
163
165
|
'radio-checked': checked,
|
|
@@ -168,10 +170,10 @@ const Radio = /*@__PURE__*/ proxyCustomElement(class Radio extends HTMLElement {
|
|
|
168
170
|
// Focus and active styling should not apply when the radio is in an item
|
|
169
171
|
'ion-activatable': !inItem,
|
|
170
172
|
'ion-focusable': !inItem,
|
|
171
|
-
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, h("label", { key: '
|
|
173
|
+
}), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, h("label", { key: 'f5673a798e6d87868339f046445f707e1d93b7b6', class: "radio-wrapper" }, h("div", { key: 'e9190c06f75a171cab63e3f74ccf771c3ed87005', class: {
|
|
172
174
|
'label-text-wrapper': true,
|
|
173
175
|
'label-text-wrapper-hidden': !hasLabel,
|
|
174
|
-
}, part: "label" }, h("slot", { key: '
|
|
176
|
+
}, part: "label" }, h("slot", { key: '6cedf4e7b3bd03e4a635727dd7b6094bab64af64' })), h("div", { key: '26dd48d9d2848b7f100b732abdc4a3171adde483', class: "native-wrapper" }, this.renderRadioControl()))));
|
|
175
177
|
}
|
|
176
178
|
get el() { return this; }
|
|
177
179
|
static get watchers() { return {
|
|
@@ -66,7 +66,7 @@ const RippleEffect = /*@__PURE__*/ proxyCustomElement(class RippleEffect extends
|
|
|
66
66
|
}
|
|
67
67
|
render() {
|
|
68
68
|
const mode = getIonMode(this);
|
|
69
|
-
return (h(Host, { key: '
|
|
69
|
+
return (h(Host, { key: '7ae559bda5d2c1856a45bfa150c2cb4f83373f8e', role: "presentation", class: {
|
|
70
70
|
[mode]: true,
|
|
71
71
|
unbounded: this.unbounded,
|
|
72
72
|
} }));
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
|
+
*/
|
|
4
|
+
import { proxyCustomElement, HTMLElement, h, forceUpdate, Host } from '@stencil/core/internal/client';
|
|
5
|
+
import { b as getIonMode } from './ionic-global.js';
|
|
6
|
+
import { s as safeCall } from './overlays.js';
|
|
7
|
+
import { g as getClassMap } from './theme.js';
|
|
8
|
+
import { d as defineCustomElement$d } from './button.js';
|
|
9
|
+
import { d as defineCustomElement$c } from './buttons.js';
|
|
10
|
+
import { d as defineCustomElement$b } from './checkbox.js';
|
|
11
|
+
import { d as defineCustomElement$a } from './content.js';
|
|
12
|
+
import { d as defineCustomElement$9 } from './header.js';
|
|
13
|
+
import { d as defineCustomElement$8 } from './icon.js';
|
|
14
|
+
import { d as defineCustomElement$7 } from './item.js';
|
|
15
|
+
import { d as defineCustomElement$6 } from './list.js';
|
|
16
|
+
import { d as defineCustomElement$5 } from './radio.js';
|
|
17
|
+
import { d as defineCustomElement$4 } from './radio-group.js';
|
|
18
|
+
import { d as defineCustomElement$3 } from './ripple-effect.js';
|
|
19
|
+
import { d as defineCustomElement$2 } from './title.js';
|
|
20
|
+
import { d as defineCustomElement$1 } from './toolbar.js';
|
|
21
|
+
|
|
22
|
+
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)}";
|
|
23
|
+
const IonSelectModalIonicStyle0 = ionicSelectModalMdCss;
|
|
24
|
+
|
|
25
|
+
const selectModalIosCss = ".sc-ion-select-modal-ios-h{height:100%}";
|
|
26
|
+
const IonSelectModalIosStyle0 = selectModalIosCss;
|
|
27
|
+
|
|
28
|
+
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)}";
|
|
29
|
+
const IonSelectModalMdStyle0 = selectModalMdCss;
|
|
30
|
+
|
|
31
|
+
const SelectModal = /*@__PURE__*/ proxyCustomElement(class SelectModal extends HTMLElement {
|
|
32
|
+
constructor() {
|
|
33
|
+
super();
|
|
34
|
+
this.__registerHost();
|
|
35
|
+
this.header = undefined;
|
|
36
|
+
this.multiple = undefined;
|
|
37
|
+
this.options = [];
|
|
38
|
+
}
|
|
39
|
+
closeModal() {
|
|
40
|
+
const modal = this.el.closest('ion-modal');
|
|
41
|
+
if (modal) {
|
|
42
|
+
modal.dismiss();
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
findOptionFromEvent(ev) {
|
|
46
|
+
const { options } = this;
|
|
47
|
+
return options.find((o) => o.value === ev.target.value);
|
|
48
|
+
}
|
|
49
|
+
getValues(ev) {
|
|
50
|
+
const { multiple, options } = this;
|
|
51
|
+
if (multiple) {
|
|
52
|
+
// this is a modal with checkboxes (multiple value select)
|
|
53
|
+
// return an array of all the checked values
|
|
54
|
+
return options.filter((o) => o.checked).map((o) => o.value);
|
|
55
|
+
}
|
|
56
|
+
// this is a modal with radio buttons (single value select)
|
|
57
|
+
// return the value that was clicked, otherwise undefined
|
|
58
|
+
const option = ev ? this.findOptionFromEvent(ev) : null;
|
|
59
|
+
return option ? option.value : undefined;
|
|
60
|
+
}
|
|
61
|
+
callOptionHandler(ev) {
|
|
62
|
+
const option = this.findOptionFromEvent(ev);
|
|
63
|
+
const values = this.getValues(ev);
|
|
64
|
+
if (option === null || option === void 0 ? void 0 : option.handler) {
|
|
65
|
+
safeCall(option.handler, values);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
setChecked(ev) {
|
|
69
|
+
const { multiple } = this;
|
|
70
|
+
const option = this.findOptionFromEvent(ev);
|
|
71
|
+
// this is a modal with checkboxes (multiple value select)
|
|
72
|
+
// we need to set the checked value for this option
|
|
73
|
+
if (multiple && option) {
|
|
74
|
+
option.checked = ev.detail.checked;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
renderRadioOptions() {
|
|
78
|
+
const checked = this.options.filter((o) => o.checked).map((o) => o.value)[0];
|
|
79
|
+
return (h("ion-radio-group", { value: checked, onIonChange: (ev) => this.callOptionHandler(ev) }, this.options.map((option) => (h("ion-item", { class: Object.assign({
|
|
80
|
+
// TODO FW-4784
|
|
81
|
+
'item-radio-checked': option.value === checked
|
|
82
|
+
}, getClassMap(option.cssClass)) }, h("ion-radio", { value: option.value, disabled: option.disabled, justify: "start", labelPlacement: "end", onClick: () => this.closeModal(), onKeyUp: (ev) => {
|
|
83
|
+
if (ev.key === ' ') {
|
|
84
|
+
/**
|
|
85
|
+
* Selecting a radio option with keyboard navigation,
|
|
86
|
+
* either through the Enter or Space keys, should
|
|
87
|
+
* dismiss the modal.
|
|
88
|
+
*/
|
|
89
|
+
this.closeModal();
|
|
90
|
+
}
|
|
91
|
+
} }, option.text))))));
|
|
92
|
+
}
|
|
93
|
+
renderCheckboxOptions() {
|
|
94
|
+
return this.options.map((option) => (h("ion-item", { class: Object.assign({
|
|
95
|
+
// TODO FW-4784
|
|
96
|
+
'item-checkbox-checked': option.checked
|
|
97
|
+
}, getClassMap(option.cssClass)) }, h("ion-checkbox", { value: option.value, disabled: option.disabled, checked: option.checked, justify: "start", labelPlacement: "end", onIonChange: (ev) => {
|
|
98
|
+
this.setChecked(ev);
|
|
99
|
+
this.callOptionHandler(ev);
|
|
100
|
+
// TODO FW-4784
|
|
101
|
+
forceUpdate(this);
|
|
102
|
+
} }, option.text))));
|
|
103
|
+
}
|
|
104
|
+
render() {
|
|
105
|
+
return (h(Host, { key: 'f4b92f4fc3d646f9a327e43a9622abaf69659c28', class: getIonMode(this) }, h("ion-header", { key: '11232ef496e7abd69e55cef988963a4869a7b01e' }, h("ion-toolbar", { key: 'e7c41878691a504d44c658db02807867df542588' }, this.header !== undefined && h("ion-title", { key: 'fcf9d33e0f3e0076ff14805de68848f9ef199cca' }, this.header), h("ion-buttons", { key: '748a967ae0ce68bc2fd018a6b9ebe0e4b810f6ac', slot: "end" }, h("ion-button", { key: 'f5e60791870b5085a31b7af70ed4bb3fb83eb185', onClick: () => this.closeModal() }, "Close")))), h("ion-content", { key: '159797957b6f788a9b393d91864c18db34481c68' }, h("ion-list", { key: '4124554fe8b2411637cbf02f08e50e0d8f804175' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
|
|
106
|
+
}
|
|
107
|
+
get el() { return this; }
|
|
108
|
+
static get style() { return {
|
|
109
|
+
ionic: IonSelectModalIonicStyle0,
|
|
110
|
+
ios: IonSelectModalIosStyle0,
|
|
111
|
+
md: IonSelectModalMdStyle0
|
|
112
|
+
}; }
|
|
113
|
+
}, [34, "ion-select-modal", {
|
|
114
|
+
"header": [1],
|
|
115
|
+
"multiple": [4],
|
|
116
|
+
"options": [16]
|
|
117
|
+
}]);
|
|
118
|
+
function defineCustomElement() {
|
|
119
|
+
if (typeof customElements === "undefined") {
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
const components = ["ion-select-modal", "ion-button", "ion-buttons", "ion-checkbox", "ion-content", "ion-header", "ion-icon", "ion-item", "ion-list", "ion-radio", "ion-radio-group", "ion-ripple-effect", "ion-title", "ion-toolbar"];
|
|
123
|
+
components.forEach(tagName => { switch (tagName) {
|
|
124
|
+
case "ion-select-modal":
|
|
125
|
+
if (!customElements.get(tagName)) {
|
|
126
|
+
customElements.define(tagName, SelectModal);
|
|
127
|
+
}
|
|
128
|
+
break;
|
|
129
|
+
case "ion-button":
|
|
130
|
+
if (!customElements.get(tagName)) {
|
|
131
|
+
defineCustomElement$d();
|
|
132
|
+
}
|
|
133
|
+
break;
|
|
134
|
+
case "ion-buttons":
|
|
135
|
+
if (!customElements.get(tagName)) {
|
|
136
|
+
defineCustomElement$c();
|
|
137
|
+
}
|
|
138
|
+
break;
|
|
139
|
+
case "ion-checkbox":
|
|
140
|
+
if (!customElements.get(tagName)) {
|
|
141
|
+
defineCustomElement$b();
|
|
142
|
+
}
|
|
143
|
+
break;
|
|
144
|
+
case "ion-content":
|
|
145
|
+
if (!customElements.get(tagName)) {
|
|
146
|
+
defineCustomElement$a();
|
|
147
|
+
}
|
|
148
|
+
break;
|
|
149
|
+
case "ion-header":
|
|
150
|
+
if (!customElements.get(tagName)) {
|
|
151
|
+
defineCustomElement$9();
|
|
152
|
+
}
|
|
153
|
+
break;
|
|
154
|
+
case "ion-icon":
|
|
155
|
+
if (!customElements.get(tagName)) {
|
|
156
|
+
defineCustomElement$8();
|
|
157
|
+
}
|
|
158
|
+
break;
|
|
159
|
+
case "ion-item":
|
|
160
|
+
if (!customElements.get(tagName)) {
|
|
161
|
+
defineCustomElement$7();
|
|
162
|
+
}
|
|
163
|
+
break;
|
|
164
|
+
case "ion-list":
|
|
165
|
+
if (!customElements.get(tagName)) {
|
|
166
|
+
defineCustomElement$6();
|
|
167
|
+
}
|
|
168
|
+
break;
|
|
169
|
+
case "ion-radio":
|
|
170
|
+
if (!customElements.get(tagName)) {
|
|
171
|
+
defineCustomElement$5();
|
|
172
|
+
}
|
|
173
|
+
break;
|
|
174
|
+
case "ion-radio-group":
|
|
175
|
+
if (!customElements.get(tagName)) {
|
|
176
|
+
defineCustomElement$4();
|
|
177
|
+
}
|
|
178
|
+
break;
|
|
179
|
+
case "ion-ripple-effect":
|
|
180
|
+
if (!customElements.get(tagName)) {
|
|
181
|
+
defineCustomElement$3();
|
|
182
|
+
}
|
|
183
|
+
break;
|
|
184
|
+
case "ion-title":
|
|
185
|
+
if (!customElements.get(tagName)) {
|
|
186
|
+
defineCustomElement$2();
|
|
187
|
+
}
|
|
188
|
+
break;
|
|
189
|
+
case "ion-toolbar":
|
|
190
|
+
if (!customElements.get(tagName)) {
|
|
191
|
+
defineCustomElement$1();
|
|
192
|
+
}
|
|
193
|
+
break;
|
|
194
|
+
} });
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
export { SelectModal as S, defineCustomElement as d };
|
|
@@ -117,7 +117,7 @@ const SelectPopover = /*@__PURE__*/ proxyCustomElement(class SelectPopover exten
|
|
|
117
117
|
render() {
|
|
118
118
|
const { header, message, options, subHeader } = this;
|
|
119
119
|
const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
|
|
120
|
-
return (h(Host, { key: '
|
|
120
|
+
return (h(Host, { key: 'dd0990db4de4f175b176b27f35501dd1604ca400', class: getIonMode(this) }, h("ion-list", { key: 'cea2bc3687b8b2490a2a9ff4a1e16cd34169558e' }, header !== undefined && h("ion-list-header", { key: '194aebb53453c43f913daae45a1a3066a1708c4c' }, header), hasSubHeaderOrMessage && (h("ion-item", { key: 'b706b07a3c63ad8104d2db413e210c735ec1bec9' }, h("ion-label", { key: '6e52b5b4cf6b04ff3dd5671d64264233de4190d5', class: "ion-text-wrap" }, subHeader !== undefined && h("h3", { key: '6ef4440d17f5db8c96c63b9aa5073f4fe4b8ad62' }, subHeader), message !== undefined && h("p", { key: 'c7b3b76c30ecd606c0e985a0258c13d3a75756e7' }, message)))), this.renderOptions(options))));
|
|
121
121
|
}
|
|
122
122
|
get el() { return this; }
|
|
123
123
|
static get style() { return {
|
package/components/spinner.js
CHANGED
|
@@ -185,7 +185,7 @@ const Spinner = /*@__PURE__*/ proxyCustomElement(class Spinner extends HTMLEleme
|
|
|
185
185
|
svgs.push(buildLine(spinner, duration, i, spinner.lines));
|
|
186
186
|
}
|
|
187
187
|
}
|
|
188
|
-
return (h(Host, { key: '
|
|
188
|
+
return (h(Host, { key: '9d30ee9f5aa0dd0e220da07e75d05b8b2435224d', class: createColorClasses(self.color, {
|
|
189
189
|
[mode]: true,
|
|
190
190
|
[`spinner-${spinnerName}`]: true,
|
|
191
191
|
'spinner-paused': self.paused || config.getBoolean('_testing'),
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
|
+
*/
|
|
4
|
+
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
|
5
|
+
import { c as createColorClasses } from './theme.js';
|
|
6
|
+
import { b as getIonMode } from './ionic-global.js';
|
|
7
|
+
|
|
8
|
+
const titleIosCss = ":host{--color:initial;display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-align:center;align-items:center;-webkit-transform:translateZ(0);transform:translateZ(0);color:var(--color)}:host(.ion-color){color:var(--ion-color-base)}.toolbar-title{display:block;width:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;pointer-events:auto}:host(.title-small) .toolbar-title{white-space:normal}:host{top:0;-webkit-padding-start:90px;padding-inline-start:90px;-webkit-padding-end:90px;padding-inline-end:90px;padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);position:absolute;width:100%;height:100%;-webkit-transform:translateZ(0);transform:translateZ(0);font-size:min(1.0625rem, 20.4px);font-weight:600;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;pointer-events:none}:host{inset-inline-start:0}:host(.title-small){-webkit-padding-start:9px;padding-inline-start:9px;-webkit-padding-end:9px;padding-inline-end:9px;padding-top:6px;padding-bottom:16px;position:relative;font-size:min(0.8125rem, 23.4px);font-weight:normal}:host(.title-large){-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:12px;padding-inline-end:12px;padding-top:2px;padding-bottom:4px;-webkit-transform-origin:left center;transform-origin:left center;position:static;-ms-flex-align:end;align-items:flex-end;min-width:100%;font-size:min(2.125rem, 61.2px);font-weight:700;text-align:start}:host(.title-large.title-rtl){-webkit-transform-origin:right center;transform-origin:right center}:host(.title-large.ion-cloned-element){--color:var(--ion-text-color, #000);font-family:var(--ion-font-family)}:host(.title-large) .toolbar-title{-webkit-transform-origin:inherit;transform-origin:inherit;width:auto}:host-context([dir=rtl]):host(.title-large) .toolbar-title,:host-context([dir=rtl]).title-large .toolbar-title{-webkit-transform-origin:calc(100% - inherit);transform-origin:calc(100% - inherit)}@supports selector(:dir(rtl)){:host(.title-large:dir(rtl)) .toolbar-title{-webkit-transform-origin:calc(100% - inherit);transform-origin:calc(100% - inherit)}}";
|
|
9
|
+
const IonTitleIosStyle0 = titleIosCss;
|
|
10
|
+
|
|
11
|
+
const titleMdCss = ":host{--color:initial;display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-align:center;align-items:center;-webkit-transform:translateZ(0);transform:translateZ(0);color:var(--color)}:host(.ion-color){color:var(--ion-color-base)}.toolbar-title{display:block;width:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;pointer-events:auto}:host(.title-small) .toolbar-title{white-space:normal}:host{-webkit-padding-start:20px;padding-inline-start:20px;-webkit-padding-end:20px;padding-inline-end:20px;padding-top:0;padding-bottom:0;font-size:1.25rem;font-weight:500;letter-spacing:0.0125em}:host(.title-small){width:100%;height:100%;font-size:0.9375rem;font-weight:normal}";
|
|
12
|
+
const IonTitleMdStyle0 = titleMdCss;
|
|
13
|
+
|
|
14
|
+
const ToolbarTitle = /*@__PURE__*/ proxyCustomElement(class ToolbarTitle extends HTMLElement {
|
|
15
|
+
constructor() {
|
|
16
|
+
super();
|
|
17
|
+
this.__registerHost();
|
|
18
|
+
this.__attachShadow();
|
|
19
|
+
this.ionStyle = createEvent(this, "ionStyle", 7);
|
|
20
|
+
this.color = undefined;
|
|
21
|
+
this.size = undefined;
|
|
22
|
+
}
|
|
23
|
+
sizeChanged() {
|
|
24
|
+
this.emitStyle();
|
|
25
|
+
}
|
|
26
|
+
connectedCallback() {
|
|
27
|
+
this.emitStyle();
|
|
28
|
+
}
|
|
29
|
+
emitStyle() {
|
|
30
|
+
const size = this.getSize();
|
|
31
|
+
this.ionStyle.emit({
|
|
32
|
+
[`title-${size}`]: true,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
getSize() {
|
|
36
|
+
return this.size !== undefined ? this.size : 'default';
|
|
37
|
+
}
|
|
38
|
+
render() {
|
|
39
|
+
const mode = getIonMode(this);
|
|
40
|
+
const size = this.getSize();
|
|
41
|
+
return (h(Host, { key: '7293d2ecd6262feb0d8d769effbb208230baed89', class: createColorClasses(this.color, {
|
|
42
|
+
[mode]: true,
|
|
43
|
+
[`title-${size}`]: true,
|
|
44
|
+
'title-rtl': document.dir === 'rtl',
|
|
45
|
+
}) }, h("div", { key: '086ec3a361ebdf6506846a8704b457cda3a6f897', class: "toolbar-title" }, h("slot", { key: '59add7eb92b82d6832a8f0894f897c51fdf4f214' }))));
|
|
46
|
+
}
|
|
47
|
+
get el() { return this; }
|
|
48
|
+
static get watchers() { return {
|
|
49
|
+
"size": ["sizeChanged"]
|
|
50
|
+
}; }
|
|
51
|
+
static get style() { return {
|
|
52
|
+
ios: IonTitleIosStyle0,
|
|
53
|
+
md: IonTitleMdStyle0
|
|
54
|
+
}; }
|
|
55
|
+
}, [33, "ion-title", {
|
|
56
|
+
"color": [513],
|
|
57
|
+
"size": [1]
|
|
58
|
+
}, undefined, {
|
|
59
|
+
"size": ["sizeChanged"]
|
|
60
|
+
}]);
|
|
61
|
+
function defineCustomElement() {
|
|
62
|
+
if (typeof customElements === "undefined") {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
const components = ["ion-title"];
|
|
66
|
+
components.forEach(tagName => { switch (tagName) {
|
|
67
|
+
case "ion-title":
|
|
68
|
+
if (!customElements.get(tagName)) {
|
|
69
|
+
customElements.define(tagName, ToolbarTitle);
|
|
70
|
+
}
|
|
71
|
+
break;
|
|
72
|
+
} });
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
export { ToolbarTitle as T, defineCustomElement as d };
|