@ionic/core 8.4.4 → 8.4.6-dev.11741906766.14c01edc
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/checkbox.js +40 -6
- package/components/index6.js +11 -3
- package/components/ion-input.js +22 -9
- package/components/ion-item-divider.js +2 -2
- package/components/ion-item-group.js +1 -1
- package/components/ion-item-option.js +2 -2
- package/components/ion-item-options.js +1 -1
- package/components/ion-item-sliding.js +1 -1
- package/components/ion-loading.js +2 -2
- package/components/ion-menu-button.js +2 -2
- package/components/ion-menu-toggle.js +2 -2
- package/components/ion-menu.js +2 -2
- package/components/ion-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 +2 -2
- package/components/ion-segment-content.js +1 -1
- package/components/ion-segment-view.js +2 -2
- package/components/ion-segment.js +2 -2
- package/components/ion-select-option.js +1 -1
- package/components/ion-select.js +50 -6
- 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 +21 -8
- package/components/ion-thumbnail.js +1 -1
- package/components/ion-toast.js +2 -2
- package/components/ion-toggle.js +40 -6
- package/components/label.js +2 -2
- package/components/list-header.js +2 -2
- package/components/modal.js +267 -35
- package/components/picker-column-option.js +2 -2
- package/components/picker-column2.js +2 -2
- package/components/popover.js +2 -2
- package/components/radio-group.js +39 -2
- package/components/radio.js +3 -3
- package/components/ripple-effect.js +1 -1
- package/components/select-modal.js +1 -1
- package/components/select-popover.js +1 -1
- package/components/spinner.js +1 -1
- package/components/title.js +2 -2
- package/components/toolbar.js +2 -2
- package/css/core.css.map +1 -1
- package/css/ionic.bundle.css.map +1 -1
- package/dist/cjs/{data-21dc0f81.js → data-27cc2c9c.js} +1 -1
- package/dist/cjs/{index-5915f9b3.js → index-48b2a28e.js} +11 -3
- package/dist/cjs/{index-77e085b4.js → index-9b945a2d.js} +1 -1
- package/dist/cjs/{index-55a184f7.js → index-f68a486a.js} +3 -3
- package/dist/cjs/{index-864d95f4.js → index-fd6383b6.js} +1 -1
- package/dist/cjs/index.cjs.js +6 -6
- package/dist/cjs/{input-shims-52924092.js → input-shims-2d27a5be.js} +4 -2
- package/dist/cjs/{input.utils-e4144534.js → input.utils-2f642324.js} +1 -1
- package/dist/cjs/ion-accordion_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-action-sheet.cjs.entry.js +2 -2
- package/dist/cjs/ion-alert.cjs.entry.js +2 -2
- package/dist/cjs/ion-app_8.cjs.entry.js +10 -10
- package/dist/cjs/ion-avatar_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-button_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-checkbox.cjs.entry.js +37 -6
- package/dist/cjs/ion-col_3.cjs.entry.js +1 -1
- 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-infinite-scroll_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +1 -1
- package/dist/cjs/ion-input.cjs.entry.js +21 -9
- package/dist/cjs/ion-item-option_3.cjs.entry.js +6 -6
- package/dist/cjs/ion-item_8.cjs.entry.js +11 -11
- package/dist/cjs/ion-loading.cjs.entry.js +4 -4
- package/dist/cjs/ion-menu_3.cjs.entry.js +9 -9
- package/dist/cjs/ion-modal.cjs.entry.js +270 -39
- package/dist/cjs/ion-nav_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +2 -2
- package/dist/cjs/ion-popover.cjs.entry.js +5 -5
- package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/ion-radio_2.cjs.entry.js +39 -4
- package/dist/cjs/ion-range.cjs.entry.js +5 -5
- package/dist/cjs/ion-refresher_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-reorder_2.cjs.entry.js +4 -4
- 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 +1 -1
- package/dist/cjs/ion-segment-view.cjs.entry.js +2 -2
- package/dist/cjs/ion-segment_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-select-modal.cjs.entry.js +3 -3
- package/dist/cjs/ion-select_3.cjs.entry.js +51 -10
- 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 +20 -8
- package/dist/cjs/ion-toast.cjs.entry.js +4 -4
- package/dist/cjs/ion-toggle.cjs.entry.js +37 -6
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/{ios.transition-abac30e4.js → ios.transition-f970164c.js} +2 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{md.transition-e328f70d.js → md.transition-aa8820dd.js} +2 -2
- package/dist/cjs/{overlays-2f264f05.js → overlays-737576a2.js} +1 -1
- package/dist/cjs/{status-tap-191ccc90.js → status-tap-08d1ac81.js} +3 -2
- package/dist/collection/components/checkbox/checkbox.ios.css +52 -15
- package/dist/collection/components/checkbox/checkbox.js +90 -4
- package/dist/collection/components/checkbox/checkbox.md.css +52 -15
- package/dist/collection/components/input/input.ios.css +3 -2
- package/dist/collection/components/input/input.js +18 -4
- package/dist/collection/components/input/input.md.css +7 -2
- 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-header/list-header.js +2 -2
- package/dist/collection/components/loading/loading.js +2 -2
- package/dist/collection/components/menu/menu.js +2 -2
- package/dist/collection/components/menu-button/menu-button.js +2 -2
- package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
- package/dist/collection/components/modal/animations/ios.enter.js +50 -4
- package/dist/collection/components/modal/animations/ios.leave.js +24 -2
- package/dist/collection/components/modal/animations/md.enter.js +52 -5
- package/dist/collection/components/modal/animations/md.leave.js +26 -3
- package/dist/collection/components/modal/animations/sheet.js +11 -2
- package/dist/collection/components/modal/gestures/sheet.js +87 -10
- package/dist/collection/components/modal/modal.ios.css +16 -0
- package/dist/collection/components/modal/modal.js +32 -7
- package/dist/collection/components/modal/modal.md.css +6 -0
- package/dist/collection/components/nav/nav.js +1 -1
- package/dist/collection/components/nav-link/nav-link.js +1 -1
- package/dist/collection/components/note/note.js +2 -2
- package/dist/collection/components/picker-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 +3 -3
- package/dist/collection/components/radio-group/radio-group.ios.css +205 -0
- package/dist/collection/components/radio-group/radio-group.js +72 -1
- package/dist/collection/components/radio-group/radio-group.md.css +205 -0
- package/dist/collection/components/range/range.js +3 -3
- package/dist/collection/components/refresher/refresher.js +1 -1
- package/dist/collection/components/refresher-content/refresher-content.js +1 -1
- package/dist/collection/components/reorder/reorder.js +1 -1
- package/dist/collection/components/reorder-group/reorder-group.js +1 -1
- package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
- package/dist/collection/components/router-link/router-link.js +2 -2
- package/dist/collection/components/router-outlet/router-outlet.js +1 -1
- package/dist/collection/components/row/row.js +1 -1
- package/dist/collection/components/searchbar/searchbar.js +4 -4
- package/dist/collection/components/segment/segment.js +2 -2
- package/dist/collection/components/segment-button/segment-button.js +2 -2
- package/dist/collection/components/segment-content/segment-content.js +1 -1
- package/dist/collection/components/segment-view/segment-view.js +2 -2
- package/dist/collection/components/select/select.ios.css +59 -0
- package/dist/collection/components/select/select.js +100 -4
- package/dist/collection/components/select/select.md.css +61 -0
- package/dist/collection/components/select-modal/select-modal.js +1 -1
- 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.ios.css +3 -2
- package/dist/collection/components/textarea/textarea.js +17 -3
- package/dist/collection/components/textarea/textarea.md.css +7 -2
- package/dist/collection/components/thumbnail/thumbnail.js +1 -1
- package/dist/collection/components/title/title.js +2 -2
- package/dist/collection/components/toast/toast.js +2 -2
- package/dist/collection/components/toggle/toggle.ios.css +52 -15
- package/dist/collection/components/toggle/toggle.js +90 -4
- package/dist/collection/components/toggle/toggle.md.css +52 -15
- package/dist/collection/components/toolbar/toolbar.js +6 -2
- package/dist/collection/utils/logging/index.js +10 -3
- package/dist/docs.json +379 -2
- package/dist/esm/{data-ae11fd43.js → data-174ad5e0.js} +1 -1
- package/dist/esm/{index-9b0d46f4.js → index-738d7504.js} +11 -3
- package/dist/esm/{index-d4642b24.js → index-933ca126.js} +1 -1
- package/dist/esm/{index-c4a831fd.js → index-a313df53.js} +3 -3
- package/dist/esm/{index-df741ec6.js → index-c63afbe6.js} +1 -1
- package/dist/esm/index.js +6 -6
- package/dist/esm/{input-shims-80c5b98e.js → input-shims-3070628a.js} +4 -2
- package/dist/esm/{input.utils-3a4c0a2a.js → input.utils-926c04a8.js} +1 -1
- package/dist/esm/ion-accordion_2.entry.js +1 -1
- package/dist/esm/ion-action-sheet.entry.js +2 -2
- package/dist/esm/ion-alert.entry.js +2 -2
- package/dist/esm/ion-app_8.entry.js +10 -10
- package/dist/esm/ion-avatar_3.entry.js +1 -1
- package/dist/esm/ion-button_2.entry.js +1 -1
- package/dist/esm/ion-checkbox.entry.js +37 -6
- package/dist/esm/ion-col_3.entry.js +1 -1
- package/dist/esm/ion-datetime-button.entry.js +2 -2
- package/dist/esm/ion-datetime_3.entry.js +7 -7
- package/dist/esm/ion-infinite-scroll_2.entry.js +2 -2
- package/dist/esm/ion-input-password-toggle.entry.js +1 -1
- package/dist/esm/ion-input.entry.js +22 -10
- package/dist/esm/ion-item-option_3.entry.js +6 -6
- package/dist/esm/ion-item_8.entry.js +11 -11
- package/dist/esm/ion-loading.entry.js +4 -4
- package/dist/esm/ion-menu_3.entry.js +9 -9
- package/dist/esm/ion-modal.entry.js +270 -39
- package/dist/esm/ion-nav_2.entry.js +4 -4
- package/dist/esm/ion-picker-column-option.entry.js +2 -2
- package/dist/esm/ion-popover.entry.js +5 -5
- package/dist/esm/ion-progress-bar.entry.js +1 -1
- package/dist/esm/ion-radio_2.entry.js +39 -4
- package/dist/esm/ion-range.entry.js +5 -5
- package/dist/esm/ion-refresher_2.entry.js +4 -4
- package/dist/esm/ion-reorder_2.entry.js +4 -4
- 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 +1 -1
- package/dist/esm/ion-segment-view.entry.js +2 -2
- package/dist/esm/ion-segment_2.entry.js +4 -4
- package/dist/esm/ion-select-modal.entry.js +3 -3
- package/dist/esm/ion-select_3.entry.js +51 -10
- 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 +21 -9
- package/dist/esm/ion-toast.entry.js +4 -4
- package/dist/esm/ion-toggle.entry.js +37 -6
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/{ios.transition-a81c9c6b.js → ios.transition-5fe4d6c8.js} +2 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{md.transition-dbb51edc.js → md.transition-3d0d3730.js} +2 -2
- package/dist/esm/{overlays-4ff1fca8.js → overlays-7579a420.js} +1 -1
- package/dist/esm/{status-tap-73b183f4.js → status-tap-6367b913.js} +3 -2
- package/dist/esm-es5/{data-ae11fd43.js → data-174ad5e0.js} +1 -1
- package/dist/esm-es5/index-738d7504.js +4 -0
- package/dist/esm-es5/{index-d4642b24.js → index-933ca126.js} +1 -1
- package/dist/esm-es5/{index-c4a831fd.js → index-a313df53.js} +1 -1
- package/dist/esm-es5/{index-df741ec6.js → index-c63afbe6.js} +1 -1
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/input-shims-3070628a.js +4 -0
- package/dist/esm-es5/{input.utils-3a4c0a2a.js → input.utils-926c04a8.js} +1 -1
- package/dist/esm-es5/ion-accordion_2.entry.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-button_2.entry.js +1 -1
- package/dist/esm-es5/ion-checkbox.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-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-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 +1 -1
- package/dist/esm-es5/ion-segment-view.entry.js +1 -1
- package/dist/esm-es5/ion-segment_2.entry.js +1 -1
- package/dist/esm-es5/ion-select-modal.entry.js +1 -1
- package/dist/esm-es5/ion-select_3.entry.js +1 -1
- package/dist/esm-es5/ion-spinner.entry.js +1 -1
- package/dist/esm-es5/ion-split-pane.entry.js +1 -1
- package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
- package/dist/esm-es5/ion-tab_2.entry.js +1 -1
- package/dist/esm-es5/ion-text.entry.js +1 -1
- package/dist/esm-es5/ion-textarea.entry.js +1 -1
- package/dist/esm-es5/ion-toast.entry.js +1 -1
- package/dist/esm-es5/ion-toggle.entry.js +1 -1
- package/dist/esm-es5/ionic.js +1 -1
- package/dist/esm-es5/{ios.transition-a81c9c6b.js → ios.transition-5fe4d6c8.js} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/md.transition-3d0d3730.js +4 -0
- package/dist/esm-es5/{overlays-4ff1fca8.js → overlays-7579a420.js} +1 -1
- package/dist/esm-es5/status-tap-6367b913.js +4 -0
- package/dist/html.html-data.json +48 -0
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-f30071a2.system.js → p-042d5353.system.js} +1 -1
- package/dist/ionic/{p-ad780230.js → p-060e4551.js} +1 -1
- package/dist/ionic/p-094c82d7.entry.js +4 -0
- package/dist/ionic/{p-1ef02643.system.entry.js → p-0adb6909.system.entry.js} +1 -1
- package/dist/ionic/{p-a9b9259c.entry.js → p-0be8a0b5.entry.js} +1 -1
- package/dist/ionic/{p-811ff2a0.system.entry.js → p-0bedc891.system.entry.js} +1 -1
- package/dist/ionic/p-0ec5b7cf.system.js +4 -0
- package/dist/ionic/{p-df61d353.entry.js → p-13886789.entry.js} +1 -1
- package/dist/ionic/p-143ff664.system.entry.js +4 -0
- package/dist/ionic/p-18f9b6d5.entry.js +4 -0
- package/dist/ionic/{p-afd7a6a9.entry.js → p-19c32a76.entry.js} +1 -1
- package/dist/ionic/{p-dd141012.system.entry.js → p-1a9613bf.system.entry.js} +1 -1
- package/dist/ionic/{p-f687573e.system.js → p-1bf5ec17.system.js} +1 -1
- package/dist/ionic/{p-dbac4f3e.system.entry.js → p-1d2844a5.system.entry.js} +1 -1
- package/dist/ionic/{p-dc8cbb8b.entry.js → p-1f837356.entry.js} +1 -1
- package/dist/ionic/p-2027221d.js +4 -0
- package/dist/ionic/{p-b8e3b3ca.system.entry.js → p-21371278.system.entry.js} +1 -1
- package/dist/ionic/{p-adbbf974.system.js → p-24ae7b33.system.js} +1 -1
- package/dist/ionic/p-29a5b4e4.entry.js +4 -0
- package/dist/ionic/{p-611d105b.entry.js → p-2ee9a2c6.entry.js} +1 -1
- package/dist/ionic/p-2fa5a4b1.entry.js +4 -0
- package/dist/ionic/{p-782ed885.system.js → p-3479f51b.system.js} +1 -1
- package/dist/ionic/{p-3705c194.entry.js → p-35f14792.entry.js} +1 -1
- package/dist/ionic/{p-21d1c1c7.system.entry.js → p-37a438ad.system.entry.js} +2 -2
- package/dist/ionic/{p-cd239b25.entry.js → p-3af7b907.entry.js} +1 -1
- package/dist/ionic/{p-8dbe745b.system.js → p-3bd5fedc.system.js} +1 -1
- package/dist/ionic/{p-31d6b3d0.system.entry.js → p-3be7cdeb.system.entry.js} +2 -2
- package/dist/ionic/p-3f4327f7.js +4 -0
- package/dist/ionic/{p-85f19de9.entry.js → p-42f6e75c.entry.js} +1 -1
- package/dist/ionic/{p-bf973e4b.system.entry.js → p-4470f87b.system.entry.js} +2 -2
- package/dist/ionic/p-4493c1ac.entry.js +4 -0
- package/dist/ionic/{p-0b860115.system.entry.js → p-4630688e.system.entry.js} +1 -1
- package/dist/ionic/{p-a8cc566d.system.entry.js → p-472c7e08.system.entry.js} +1 -1
- package/dist/ionic/{p-1a289aba.system.entry.js → p-491de063.system.entry.js} +1 -1
- package/dist/ionic/{p-ec631b0f.js → p-4c44d04c.js} +1 -1
- package/dist/ionic/{p-8db97fa1.js → p-4c94580e.js} +1 -1
- package/dist/ionic/{p-36079188.system.entry.js → p-4d0190ad.system.entry.js} +1 -1
- package/dist/ionic/{p-53d4d8c7.entry.js → p-50f38461.entry.js} +1 -1
- package/dist/ionic/{p-91fe21bb.system.js → p-51c363e7.system.js} +1 -1
- package/dist/ionic/{p-bf7f7084.system.entry.js → p-524ad57e.system.entry.js} +2 -2
- package/dist/ionic/p-54893ae3.entry.js +4 -0
- package/dist/ionic/p-54e9620f.js +4 -0
- package/dist/ionic/{p-4e1b109b.entry.js → p-58c482af.entry.js} +1 -1
- package/dist/ionic/{p-f59611e2.system.js → p-5eb6f582.system.js} +1 -1
- package/dist/ionic/p-606887b7.system.entry.js +4 -0
- package/dist/ionic/p-6797c66e.system.js +4 -0
- package/dist/ionic/{p-9023f5eb.entry.js → p-72e6a9c6.entry.js} +1 -1
- package/dist/ionic/{p-f1b20f28.entry.js → p-747f9517.entry.js} +1 -1
- package/dist/ionic/{p-00ab8b89.system.js → p-77991411.system.js} +2 -2
- package/dist/ionic/{p-16cd36e4.entry.js → p-7ff4f502.entry.js} +1 -1
- package/dist/ionic/{p-3250466d.system.entry.js → p-81378456.system.entry.js} +2 -2
- package/dist/ionic/p-81474833.system.entry.js +4 -0
- package/dist/ionic/{p-39b5611c.entry.js → p-838cc359.entry.js} +1 -1
- package/dist/ionic/{p-df4c00a4.system.entry.js → p-888d383b.system.entry.js} +1 -1
- package/dist/ionic/{p-5175f06a.entry.js → p-8b1c1fd7.entry.js} +1 -1
- package/dist/ionic/{p-6390c6ab.system.entry.js → p-8deac7df.system.entry.js} +1 -1
- package/dist/ionic/{p-b88c5ce4.entry.js → p-8fa4fa3f.entry.js} +1 -1
- package/dist/ionic/{p-f1ad06bd.system.entry.js → p-8fa62efe.system.entry.js} +1 -1
- package/dist/ionic/{p-4979cd1d.entry.js → p-8fc426e2.entry.js} +1 -1
- package/dist/ionic/p-959cf042.system.entry.js +4 -0
- package/dist/ionic/{p-32d4ac00.entry.js → p-9b069739.entry.js} +1 -1
- package/dist/ionic/{p-3fc787a8.system.entry.js → p-9df36075.system.entry.js} +1 -1
- package/dist/ionic/{p-85446175.js → p-9e51f822.js} +1 -1
- package/dist/ionic/{p-fd0f8d68.entry.js → p-a520973b.entry.js} +1 -1
- package/dist/ionic/{p-89204f3f.system.js → p-a587b2ae.system.js} +1 -1
- package/dist/ionic/p-a9f2c0a7.entry.js +4 -0
- package/dist/ionic/{p-4cfb0dc8.entry.js → p-ab7337e1.entry.js} +1 -1
- package/dist/ionic/{p-f9e7de97.system.entry.js → p-ac58d726.system.entry.js} +1 -1
- package/dist/ionic/{p-3c66a690.entry.js → p-ace2d2be.entry.js} +1 -1
- package/dist/ionic/{p-b7ed7f16.entry.js → p-ada878ce.entry.js} +1 -1
- package/dist/ionic/{p-f1be5454.entry.js → p-b055d618.entry.js} +1 -1
- package/dist/ionic/{p-7d425376.system.entry.js → p-b2296998.system.entry.js} +1 -1
- package/dist/ionic/{p-da5ae6cf.system.entry.js → p-b2ee0628.system.entry.js} +1 -1
- package/dist/ionic/{p-1cfb788a.entry.js → p-b6174297.entry.js} +1 -1
- package/dist/ionic/p-b8c2dbcd.entry.js +4 -0
- package/dist/ionic/{p-2f890012.system.entry.js → p-b9eb1465.system.entry.js} +1 -1
- package/dist/ionic/{p-afcd55c6.entry.js → p-b9f2e353.entry.js} +1 -1
- package/dist/ionic/p-bbc6db8c.entry.js +4 -0
- package/dist/ionic/p-bc3e5577.system.entry.js +4 -0
- package/dist/ionic/p-bf64af90.system.js +1 -1
- package/dist/ionic/p-c258efb9.entry.js +4 -0
- package/dist/ionic/{p-847fd113.entry.js → p-c25c0ba4.entry.js} +1 -1
- package/dist/ionic/p-c5b5f44a.entry.js +4 -0
- package/dist/ionic/{p-8cfaf64f.system.entry.js → p-c6a20407.system.entry.js} +1 -1
- package/dist/ionic/{p-96f7bb84.system.entry.js → p-c8331397.system.entry.js} +1 -1
- package/dist/ionic/{p-9e7a9a27.entry.js → p-c8bf9ba7.entry.js} +1 -1
- package/dist/ionic/{p-af873227.system.js → p-d7032956.system.js} +1 -1
- package/dist/ionic/p-d8c9d5ac.system.entry.js +4 -0
- package/dist/ionic/{p-d4308e05.system.entry.js → p-daf1e8ec.system.entry.js} +1 -1
- package/dist/ionic/{p-684c6a80.system.entry.js → p-def7a8bd.system.entry.js} +1 -1
- package/dist/ionic/{p-37e874f1.js → p-e00b72ce.js} +1 -1
- package/dist/ionic/{p-7737b8fa.js → p-e0a05506.js} +1 -1
- package/dist/ionic/{p-f97efff5.system.entry.js → p-e0c0218f.system.entry.js} +1 -1
- package/dist/ionic/{p-6386ccd6.system.entry.js → p-e0c43e11.system.entry.js} +1 -1
- package/dist/ionic/{p-8b378b48.system.entry.js → p-e4683bfd.system.entry.js} +1 -1
- package/dist/ionic/{p-0eb49e5c.system.entry.js → p-e5708e5d.system.entry.js} +1 -1
- package/dist/ionic/{p-a8584808.system.entry.js → p-e5c27d9f.system.entry.js} +1 -1
- package/dist/ionic/p-e5cf01f1.entry.js +4 -0
- package/dist/ionic/{p-27da8c2c.js → p-e7309bfa.js} +1 -1
- package/dist/ionic/p-ed768b77.entry.js +4 -0
- package/dist/ionic/{p-ded39921.entry.js → p-eec4b772.entry.js} +1 -1
- package/dist/ionic/{p-34b077b1.system.entry.js → p-eeee3990.system.entry.js} +1 -1
- package/dist/ionic/{p-360f5507.entry.js → p-efa0f3f5.entry.js} +1 -1
- package/dist/ionic/p-f02e9382.system.entry.js +4 -0
- package/dist/ionic/{p-c8c27ae7.system.entry.js → p-f6bb9be7.system.entry.js} +1 -1
- package/dist/ionic/{p-d60342e3.js → p-f7ce606e.js} +1 -1
- package/dist/ionic/{p-11bbdab8.system.entry.js → p-f94b2f2f.system.entry.js} +1 -1
- package/dist/ionic/{p-c5abee89.system.entry.js → p-ff4a1ba0.system.entry.js} +1 -1
- package/dist/types/components/checkbox/checkbox.d.ts +25 -0
- package/dist/types/components/input/input.d.ts +8 -0
- package/dist/types/components/modal/animations/sheet.d.ts +1 -0
- package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
- package/dist/types/components/modal/modal-interface.d.ts +1 -0
- package/dist/types/components/modal/modal.d.ts +14 -0
- package/dist/types/components/radio-group/radio-group.d.ts +15 -0
- package/dist/types/components/select/select.d.ts +29 -0
- package/dist/types/components/textarea/textarea.d.ts +8 -0
- package/dist/types/components/toggle/toggle.d.ts +25 -0
- package/dist/types/components/toolbar/toolbar.d.ts +4 -0
- package/dist/types/components.d.ts +96 -0
- package/dist/types/utils/config.d.ts +9 -0
- package/dist/types/utils/logging/index.d.ts +13 -1
- package/hydrate/index.js +575 -153
- package/hydrate/index.mjs +575 -153
- package/package.json +2 -2
- package/dist/esm-es5/index-9b0d46f4.js +0 -4
- package/dist/esm-es5/input-shims-80c5b98e.js +0 -4
- package/dist/esm-es5/md.transition-dbb51edc.js +0 -4
- package/dist/esm-es5/status-tap-73b183f4.js +0 -4
- package/dist/ionic/p-06fee233.js +0 -4
- package/dist/ionic/p-1332050e.entry.js +0 -4
- package/dist/ionic/p-19179876.js +0 -4
- package/dist/ionic/p-1ffab75e.entry.js +0 -4
- package/dist/ionic/p-2d4658d4.system.entry.js +0 -4
- package/dist/ionic/p-3e0bb0e1.entry.js +0 -4
- package/dist/ionic/p-3ef5e7fc.entry.js +0 -4
- package/dist/ionic/p-51fc2fac.system.entry.js +0 -4
- package/dist/ionic/p-5430a6da.entry.js +0 -4
- package/dist/ionic/p-64279526.js +0 -4
- package/dist/ionic/p-64da0521.system.js +0 -4
- package/dist/ionic/p-6aa6839e.entry.js +0 -4
- package/dist/ionic/p-6cb61a35.entry.js +0 -4
- package/dist/ionic/p-8d611ccd.entry.js +0 -4
- package/dist/ionic/p-9048389e.entry.js +0 -4
- package/dist/ionic/p-a300835e.system.entry.js +0 -4
- package/dist/ionic/p-a6042939.entry.js +0 -4
- package/dist/ionic/p-a6f13a4e.system.entry.js +0 -4
- package/dist/ionic/p-aae8187b.system.entry.js +0 -4
- package/dist/ionic/p-ae518f0b.system.entry.js +0 -4
- package/dist/ionic/p-cbd5b96a.entry.js +0 -4
- package/dist/ionic/p-ccbb47f5.entry.js +0 -4
- package/dist/ionic/p-e394222f.entry.js +0 -4
- package/dist/ionic/p-ea925d34.system.entry.js +0 -4
- package/dist/ionic/p-ff4b7e40.system.js +0 -4
|
@@ -530,14 +530,14 @@ export class Segment {
|
|
|
530
530
|
}
|
|
531
531
|
render() {
|
|
532
532
|
const mode = getIonMode(this);
|
|
533
|
-
return (h(Host, { key: '
|
|
533
|
+
return (h(Host, { key: 'a64e39352050b516f7dc82ce95a4bcff8431d1d0', role: "tablist", onClick: this.onClick, class: createColorClasses(this.color, {
|
|
534
534
|
[mode]: true,
|
|
535
535
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
536
536
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
537
537
|
'segment-activated': this.activated,
|
|
538
538
|
'segment-disabled': this.disabled,
|
|
539
539
|
'segment-scrollable': this.scrollable,
|
|
540
|
-
}) }, h("slot", { key: '
|
|
540
|
+
}) }, h("slot", { key: 'bb3f3ec30e59e0461fa620d8961ab730cc802a4e', onSlotchange: this.onSlottedItemsChange })));
|
|
541
541
|
}
|
|
542
542
|
static get is() { return "ion-segment"; }
|
|
543
543
|
static get encapsulation() { return "shadow"; }
|
|
@@ -130,7 +130,7 @@ export class SegmentButton {
|
|
|
130
130
|
const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
|
|
131
131
|
const mode = getIonMode(this);
|
|
132
132
|
const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
|
|
133
|
-
return (h(Host, { key: '
|
|
133
|
+
return (h(Host, { key: 'e1e582b9a142cb07043ba08f02ad25f5a1fa5690', class: {
|
|
134
134
|
[mode]: true,
|
|
135
135
|
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
136
136
|
'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
|
|
@@ -146,7 +146,7 @@ export class SegmentButton {
|
|
|
146
146
|
'ion-activatable': true,
|
|
147
147
|
'ion-activatable-instant': true,
|
|
148
148
|
'ion-focusable': true,
|
|
149
|
-
} }, h("button", Object.assign({ key: '
|
|
149
|
+
} }, h("button", Object.assign({ key: '8621a028894fb382854ff28779d0cadd3d9035f7', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), h("span", { key: '5c55858dbfb50734fb02d24091ebac3e0d05259f', class: "button-inner" }, h("slot", { key: '1f3bb8d76a1039ad648e202c650db06dfca88f79' })), mode === 'md' && h("ion-ripple-effect", { key: 'bda74b25bfdd431a8a36f0ee727b9184e9074321' })), h("div", { key: 'ff11369e921d6d0a540c75c37f692a3853e903f7', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, h("div", { key: '74ec4ca69331ed3f155fd8a8a356545941887df1', part: "indicator-background", class: "segment-button-indicator-background" }))));
|
|
150
150
|
}
|
|
151
151
|
static get is() { return "ion-segment-button"; }
|
|
152
152
|
static get encapsulation() { return "shadow"; }
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import { Host, h } from "@stencil/core";
|
|
5
5
|
export class SegmentContent {
|
|
6
6
|
render() {
|
|
7
|
-
return (h(Host, { key: '
|
|
7
|
+
return (h(Host, { key: '64b3965b14c749e77e9ce13b59f349d971e245c8' }, h("slot", { key: '2d0bed34f9bc93f92e713cb51e42220f3cecd8f5' })));
|
|
8
8
|
}
|
|
9
9
|
static get is() { return "ion-segment-content"; }
|
|
10
10
|
static get encapsulation() { return "shadow"; }
|
|
@@ -94,10 +94,10 @@ export class SegmentView {
|
|
|
94
94
|
}
|
|
95
95
|
render() {
|
|
96
96
|
const { disabled, isManualScroll } = this;
|
|
97
|
-
return (h(Host, { key: '
|
|
97
|
+
return (h(Host, { key: 'fa528d2d9ae0f00fc3067defe2a047dce77c814a', class: {
|
|
98
98
|
'segment-view-disabled': disabled,
|
|
99
99
|
'segment-view-scroll-disabled': isManualScroll === false,
|
|
100
|
-
} }, h("slot", { key: '
|
|
100
|
+
} }, h("slot", { key: '74dc8b4d073caeff1bab272d11b9ea3e1a215954' })));
|
|
101
101
|
}
|
|
102
102
|
static get is() { return "ion-segment-view"; }
|
|
103
103
|
static get encapsulation() { return "shadow"; }
|
|
@@ -299,6 +299,63 @@ button {
|
|
|
299
299
|
--highlight-color: var(--highlight-color-valid);
|
|
300
300
|
}
|
|
301
301
|
|
|
302
|
+
.select-bottom {
|
|
303
|
+
/**
|
|
304
|
+
* The bottom content should take on the start and end
|
|
305
|
+
* padding so it is always aligned with either the label
|
|
306
|
+
* or the start of the text select.
|
|
307
|
+
*/
|
|
308
|
+
-webkit-padding-start: var(--padding-start);
|
|
309
|
+
padding-inline-start: var(--padding-start);
|
|
310
|
+
-webkit-padding-end: var(--padding-end);
|
|
311
|
+
padding-inline-end: var(--padding-end);
|
|
312
|
+
padding-top: 5px;
|
|
313
|
+
padding-bottom: 0;
|
|
314
|
+
display: flex;
|
|
315
|
+
justify-content: space-between;
|
|
316
|
+
border-top: var(--border-width) var(--border-style) var(--border-color);
|
|
317
|
+
font-size: 0.75rem;
|
|
318
|
+
white-space: normal;
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
/**
|
|
322
|
+
* If the select has a validity state, the
|
|
323
|
+
* border and label should reflect that as a color.
|
|
324
|
+
* The invalid state should show if the select is
|
|
325
|
+
* invalid and has already been touched.
|
|
326
|
+
* The valid state should show if the select
|
|
327
|
+
* is valid, has already been touched, and
|
|
328
|
+
* is currently focused. Do not show the valid
|
|
329
|
+
* highlight when the select is blurred.
|
|
330
|
+
*/
|
|
331
|
+
:host(.has-focus.ion-valid),
|
|
332
|
+
:host(.ion-touched.ion-invalid) {
|
|
333
|
+
--border-color: var(--highlight-color);
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
/**
|
|
337
|
+
* Error text should only be shown when .ion-invalid is
|
|
338
|
+
* present on the select. Otherwise the helper text should
|
|
339
|
+
* be shown.
|
|
340
|
+
*/
|
|
341
|
+
.select-bottom .error-text {
|
|
342
|
+
display: none;
|
|
343
|
+
color: var(--highlight-color-invalid);
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
.select-bottom .helper-text {
|
|
347
|
+
display: block;
|
|
348
|
+
color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
:host(.ion-touched.ion-invalid) .select-bottom .error-text {
|
|
352
|
+
display: block;
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
:host(.ion-touched.ion-invalid) .select-bottom .helper-text {
|
|
356
|
+
display: none;
|
|
357
|
+
}
|
|
358
|
+
|
|
302
359
|
.label-text-wrapper {
|
|
303
360
|
/**
|
|
304
361
|
* This causes the label to take up
|
|
@@ -686,6 +743,8 @@ button {
|
|
|
686
743
|
* }
|
|
687
744
|
*/
|
|
688
745
|
:host {
|
|
746
|
+
--border-width: 0.55px;
|
|
747
|
+
--border-color: var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-250, var(--ion-background-color-step-250, #c8c7cc))));
|
|
689
748
|
--highlight-height: 0px;
|
|
690
749
|
}
|
|
691
750
|
|
|
@@ -23,10 +23,15 @@ import { getIonMode } from "../../global/ionic-global";
|
|
|
23
23
|
* @part icon - The select icon container.
|
|
24
24
|
* @part container - The container for the selected text or placeholder.
|
|
25
25
|
* @part label - The label text describing the select.
|
|
26
|
+
* @part supporting-text - Supporting text displayed beneath the select.
|
|
27
|
+
* @part helper-text - Supporting text displayed beneath the select when the select is valid.
|
|
28
|
+
* @part error-text - Supporting text displayed beneath the select when the select is invalid and touched.
|
|
26
29
|
*/
|
|
27
30
|
export class Select {
|
|
28
31
|
constructor() {
|
|
29
32
|
this.inputId = `ion-sel-${selectIds++}`;
|
|
33
|
+
this.helperTextId = `${this.inputId}-helper-text`;
|
|
34
|
+
this.errorTextId = `${this.inputId}-error-text`;
|
|
30
35
|
this.inheritedAttributes = {};
|
|
31
36
|
this.onClick = (ev) => {
|
|
32
37
|
const target = ev.target;
|
|
@@ -77,6 +82,8 @@ export class Select {
|
|
|
77
82
|
this.compareWith = undefined;
|
|
78
83
|
this.disabled = false;
|
|
79
84
|
this.fill = undefined;
|
|
85
|
+
this.errorText = undefined;
|
|
86
|
+
this.helperText = undefined;
|
|
80
87
|
this.interface = 'alert';
|
|
81
88
|
this.interfaceOptions = {};
|
|
82
89
|
this.justify = undefined;
|
|
@@ -91,6 +98,7 @@ export class Select {
|
|
|
91
98
|
this.expandedIcon = undefined;
|
|
92
99
|
this.shape = undefined;
|
|
93
100
|
this.value = undefined;
|
|
101
|
+
this.required = false;
|
|
94
102
|
}
|
|
95
103
|
styleChanged() {
|
|
96
104
|
this.emitStyle();
|
|
@@ -655,8 +663,44 @@ export class Select {
|
|
|
655
663
|
return renderedLabel;
|
|
656
664
|
}
|
|
657
665
|
renderListbox() {
|
|
658
|
-
const { disabled, inputId, isExpanded } = this;
|
|
659
|
-
return (h("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
|
|
666
|
+
const { disabled, inputId, isExpanded, required } = this;
|
|
667
|
+
return (h("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, "aria-required": `${required}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
|
|
668
|
+
}
|
|
669
|
+
getHintTextID() {
|
|
670
|
+
const { el, helperText, errorText, helperTextId, errorTextId } = this;
|
|
671
|
+
if (el.classList.contains('ion-touched') && el.classList.contains('ion-invalid') && errorText) {
|
|
672
|
+
return errorTextId;
|
|
673
|
+
}
|
|
674
|
+
if (helperText) {
|
|
675
|
+
return helperTextId;
|
|
676
|
+
}
|
|
677
|
+
return undefined;
|
|
678
|
+
}
|
|
679
|
+
/**
|
|
680
|
+
* Renders the helper text or error text values
|
|
681
|
+
*/
|
|
682
|
+
renderHintText() {
|
|
683
|
+
const { helperText, errorText, helperTextId, errorTextId } = this;
|
|
684
|
+
return [
|
|
685
|
+
h("div", { id: helperTextId, class: "helper-text", part: "supporting-text helper-text" }, helperText),
|
|
686
|
+
h("div", { id: errorTextId, class: "error-text", part: "supporting-text error-text" }, errorText),
|
|
687
|
+
];
|
|
688
|
+
}
|
|
689
|
+
/**
|
|
690
|
+
* Responsible for rendering helper text, and error text. This element
|
|
691
|
+
* should only be rendered if hint text is set.
|
|
692
|
+
*/
|
|
693
|
+
renderBottomContent() {
|
|
694
|
+
const { helperText, errorText } = this;
|
|
695
|
+
/**
|
|
696
|
+
* undefined and empty string values should
|
|
697
|
+
* be treated as not having helper/error text.
|
|
698
|
+
*/
|
|
699
|
+
const hasHintText = !!helperText || !!errorText;
|
|
700
|
+
if (!hasHintText) {
|
|
701
|
+
return;
|
|
702
|
+
}
|
|
703
|
+
return h("div", { class: "select-bottom" }, this.renderHintText());
|
|
660
704
|
}
|
|
661
705
|
render() {
|
|
662
706
|
const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
|
|
@@ -687,7 +731,7 @@ export class Select {
|
|
|
687
731
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
688
732
|
*/
|
|
689
733
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
|
|
690
|
-
return (h(Host, { key: '
|
|
734
|
+
return (h(Host, { key: 'aa7bd7fbb6479c7805486990650a406e5470fd13', onClick: this.onClick, class: createColorClasses(this.color, {
|
|
691
735
|
[mode]: true,
|
|
692
736
|
'in-item': inItem,
|
|
693
737
|
'in-item-color': hostContext('ion-item.ion-color', el),
|
|
@@ -703,7 +747,7 @@ export class Select {
|
|
|
703
747
|
[`select-justify-${justify}`]: justifyEnabled,
|
|
704
748
|
[`select-shape-${shape}`]: shape !== undefined,
|
|
705
749
|
[`select-label-placement-${labelPlacement}`]: true,
|
|
706
|
-
}) }, h("label", { key: '
|
|
750
|
+
}) }, h("label", { key: 'fde3cdfd0ef7d1a20263e35ff4358ee7f61a789f', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), h("div", { key: '6fb8deedc827b6be2f19f9e57a62efefaaba200f', class: "select-wrapper-inner" }, h("slot", { key: 'a57a204ea1cbd9c4bac338f14e196e780dab0a10', name: "start" }), h("div", { key: '78b83e1484a446537e038527d539d997e330cd69', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), h("slot", { key: '9fc660134e5247c4e5243c7d9d71ac6cec08705d', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && h("div", { key: '7f143285efa7fd7756dfdc5517ca33e84c8a027e', class: "select-highlight" })), this.renderBottomContent()));
|
|
707
751
|
}
|
|
708
752
|
static get is() { return "ion-select"; }
|
|
709
753
|
static get encapsulation() { return "shadow"; }
|
|
@@ -820,6 +864,40 @@ export class Select {
|
|
|
820
864
|
"attribute": "fill",
|
|
821
865
|
"reflect": false
|
|
822
866
|
},
|
|
867
|
+
"errorText": {
|
|
868
|
+
"type": "string",
|
|
869
|
+
"mutable": false,
|
|
870
|
+
"complexType": {
|
|
871
|
+
"original": "string",
|
|
872
|
+
"resolved": "string | undefined",
|
|
873
|
+
"references": {}
|
|
874
|
+
},
|
|
875
|
+
"required": false,
|
|
876
|
+
"optional": true,
|
|
877
|
+
"docs": {
|
|
878
|
+
"tags": [],
|
|
879
|
+
"text": "Text that is placed under the select and displayed when an error is detected."
|
|
880
|
+
},
|
|
881
|
+
"attribute": "error-text",
|
|
882
|
+
"reflect": false
|
|
883
|
+
},
|
|
884
|
+
"helperText": {
|
|
885
|
+
"type": "string",
|
|
886
|
+
"mutable": false,
|
|
887
|
+
"complexType": {
|
|
888
|
+
"original": "string",
|
|
889
|
+
"resolved": "string | undefined",
|
|
890
|
+
"references": {}
|
|
891
|
+
},
|
|
892
|
+
"required": false,
|
|
893
|
+
"optional": true,
|
|
894
|
+
"docs": {
|
|
895
|
+
"tags": [],
|
|
896
|
+
"text": "Text that is placed under the select and displayed when no error is detected."
|
|
897
|
+
},
|
|
898
|
+
"attribute": "helper-text",
|
|
899
|
+
"reflect": false
|
|
900
|
+
},
|
|
823
901
|
"interface": {
|
|
824
902
|
"type": "string",
|
|
825
903
|
"mutable": false,
|
|
@@ -1069,6 +1147,24 @@ export class Select {
|
|
|
1069
1147
|
},
|
|
1070
1148
|
"attribute": "value",
|
|
1071
1149
|
"reflect": false
|
|
1150
|
+
},
|
|
1151
|
+
"required": {
|
|
1152
|
+
"type": "boolean",
|
|
1153
|
+
"mutable": false,
|
|
1154
|
+
"complexType": {
|
|
1155
|
+
"original": "boolean",
|
|
1156
|
+
"resolved": "boolean",
|
|
1157
|
+
"references": {}
|
|
1158
|
+
},
|
|
1159
|
+
"required": false,
|
|
1160
|
+
"optional": false,
|
|
1161
|
+
"docs": {
|
|
1162
|
+
"tags": [],
|
|
1163
|
+
"text": "If true, screen readers will announce it as a required field. This property\nworks only for accessibility purposes, it will not prevent the form from\nsubmitting if the value is invalid."
|
|
1164
|
+
},
|
|
1165
|
+
"attribute": "required",
|
|
1166
|
+
"reflect": false,
|
|
1167
|
+
"defaultValue": "false"
|
|
1072
1168
|
}
|
|
1073
1169
|
};
|
|
1074
1170
|
}
|
|
@@ -299,6 +299,63 @@ button {
|
|
|
299
299
|
--highlight-color: var(--highlight-color-valid);
|
|
300
300
|
}
|
|
301
301
|
|
|
302
|
+
.select-bottom {
|
|
303
|
+
/**
|
|
304
|
+
* The bottom content should take on the start and end
|
|
305
|
+
* padding so it is always aligned with either the label
|
|
306
|
+
* or the start of the text select.
|
|
307
|
+
*/
|
|
308
|
+
-webkit-padding-start: var(--padding-start);
|
|
309
|
+
padding-inline-start: var(--padding-start);
|
|
310
|
+
-webkit-padding-end: var(--padding-end);
|
|
311
|
+
padding-inline-end: var(--padding-end);
|
|
312
|
+
padding-top: 5px;
|
|
313
|
+
padding-bottom: 0;
|
|
314
|
+
display: flex;
|
|
315
|
+
justify-content: space-between;
|
|
316
|
+
border-top: var(--border-width) var(--border-style) var(--border-color);
|
|
317
|
+
font-size: 0.75rem;
|
|
318
|
+
white-space: normal;
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
/**
|
|
322
|
+
* If the select has a validity state, the
|
|
323
|
+
* border and label should reflect that as a color.
|
|
324
|
+
* The invalid state should show if the select is
|
|
325
|
+
* invalid and has already been touched.
|
|
326
|
+
* The valid state should show if the select
|
|
327
|
+
* is valid, has already been touched, and
|
|
328
|
+
* is currently focused. Do not show the valid
|
|
329
|
+
* highlight when the select is blurred.
|
|
330
|
+
*/
|
|
331
|
+
:host(.has-focus.ion-valid),
|
|
332
|
+
:host(.ion-touched.ion-invalid) {
|
|
333
|
+
--border-color: var(--highlight-color);
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
/**
|
|
337
|
+
* Error text should only be shown when .ion-invalid is
|
|
338
|
+
* present on the select. Otherwise the helper text should
|
|
339
|
+
* be shown.
|
|
340
|
+
*/
|
|
341
|
+
.select-bottom .error-text {
|
|
342
|
+
display: none;
|
|
343
|
+
color: var(--highlight-color-invalid);
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
.select-bottom .helper-text {
|
|
347
|
+
display: block;
|
|
348
|
+
color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
:host(.ion-touched.ion-invalid) .select-bottom .error-text {
|
|
352
|
+
display: block;
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
:host(.ion-touched.ion-invalid) .select-bottom .helper-text {
|
|
356
|
+
display: none;
|
|
357
|
+
}
|
|
358
|
+
|
|
302
359
|
.label-text-wrapper {
|
|
303
360
|
/**
|
|
304
361
|
* This causes the label to take up
|
|
@@ -768,6 +825,10 @@ button {
|
|
|
768
825
|
--border-color: var(--highlight-color);
|
|
769
826
|
}
|
|
770
827
|
|
|
828
|
+
/**
|
|
829
|
+
* The bottom content should never have
|
|
830
|
+
* a border with the solid style.
|
|
831
|
+
*/
|
|
771
832
|
:host(.select-fill-solid) .select-bottom {
|
|
772
833
|
border-top: none;
|
|
773
834
|
}
|
|
@@ -77,7 +77,7 @@ export class SelectModal {
|
|
|
77
77
|
} }, option.text))));
|
|
78
78
|
}
|
|
79
79
|
render() {
|
|
80
|
-
return (h(Host, { key: '
|
|
80
|
+
return (h(Host, { key: '885198a9f21884e3bfb9bf0af53e0ee3ae37b231', class: getIonMode(this) }, h("ion-header", { key: 'd8b63726869747ac711e4fda78a50ce46f72970c' }, h("ion-toolbar", { key: '9ab2a4c1480dd74eeae38d7b580a2e87fb71270e' }, this.header !== undefined && h("ion-title", { key: '87a7034385ef57f55cefdd0371dbb66a64827290' }, this.header), h("ion-buttons", { key: '0a35424ea13ca002abc9a43b6138730254f187d0', slot: "end" }, h("ion-button", { key: '238bf40b47128d9aa995d14d9ff9ebcae4f79492', onClick: () => this.closeModal() }, "Close")))), h("ion-content", { key: '4a256f3381f8cabbc7194337b8ae4aa1c3ab1066' }, h("ion-list", { key: 'acd38fc52024632176467ed6a84106a454021544' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
|
|
81
81
|
}
|
|
82
82
|
static get is() { return "ion-select-modal"; }
|
|
83
83
|
static get encapsulation() { return "scoped"; }
|
|
@@ -10,7 +10,7 @@ export class SelectOption {
|
|
|
10
10
|
this.value = undefined;
|
|
11
11
|
}
|
|
12
12
|
render() {
|
|
13
|
-
return h(Host, { key: '
|
|
13
|
+
return h(Host, { key: '8c96c199ce3a3065de3fe446500f567236e0610a', role: "option", id: this.inputId, class: getIonMode(this) });
|
|
14
14
|
}
|
|
15
15
|
static get is() { return "ion-select-option"; }
|
|
16
16
|
static get encapsulation() { return "shadow"; }
|
|
@@ -102,7 +102,7 @@ export class SelectPopover {
|
|
|
102
102
|
render() {
|
|
103
103
|
const { header, message, options, subHeader } = this;
|
|
104
104
|
const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
|
|
105
|
-
return (h(Host, { key: '
|
|
105
|
+
return (h(Host, { key: '542367ab8fb72bfebf7e65630b91017d68827fd6', class: getIonMode(this) }, h("ion-list", { key: 'f2f0f37e1365cd7780b02de1a1698700d0df48a7' }, header !== undefined && h("ion-list-header", { key: '4b8800a68e800f19277a44b7074ca24b70218daf' }, header), hasSubHeaderOrMessage && (h("ion-item", { key: '932b7903daf97d5a57d289b7ee49e868bb9b0cf5' }, h("ion-label", { key: 'fc3f1b69aa2a0bc6125d35692dcad3a8a99fd160', class: "ion-text-wrap" }, subHeader !== undefined && h("h3", { key: 'eceab2f47afa95f04b138342b0bdbfa1f50919a8' }, subHeader), message !== undefined && h("p", { key: '70f4e27ad1316318efd0c17efce31e5e45c8fa02' }, message)))), this.renderOptions(options))));
|
|
106
106
|
}
|
|
107
107
|
static get is() { return "ion-select-popover"; }
|
|
108
108
|
static get encapsulation() { return "scoped"; }
|
|
@@ -25,11 +25,11 @@ export class SkeletonText {
|
|
|
25
25
|
const animated = this.animated && config.getBoolean('animated', true);
|
|
26
26
|
const inMedia = hostContext('ion-avatar', this.el) || hostContext('ion-thumbnail', this.el);
|
|
27
27
|
const mode = getIonMode(this);
|
|
28
|
-
return (h(Host, { key: '
|
|
28
|
+
return (h(Host, { key: 'c193f9a8e8efab5139544f047bdae4b6d421aa86', class: {
|
|
29
29
|
[mode]: true,
|
|
30
30
|
'skeleton-text-animated': animated,
|
|
31
31
|
'in-media': inMedia,
|
|
32
|
-
} }, h("span", { key: '
|
|
32
|
+
} }, h("span", { key: 'e15db679bd3c359b4df5123efd2f92e5b380fde3' }, "\u00A0")));
|
|
33
33
|
}
|
|
34
34
|
static get is() { return "ion-skeleton-text"; }
|
|
35
35
|
static get encapsulation() { return "shadow"; }
|
|
@@ -39,7 +39,7 @@ export class Spinner {
|
|
|
39
39
|
svgs.push(buildLine(spinner, duration, i, spinner.lines));
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
|
-
return (h(Host, { key: '
|
|
42
|
+
return (h(Host, { key: 'e0dfa8a3ee2a0469eb31323f506750bd77d65797', class: createColorClasses(self.color, {
|
|
43
43
|
[mode]: true,
|
|
44
44
|
[`spinner-${spinnerName}`]: true,
|
|
45
45
|
'spinner-paused': self.paused || config.getBoolean('_testing'),
|
|
@@ -118,12 +118,12 @@ export class SplitPane {
|
|
|
118
118
|
}
|
|
119
119
|
render() {
|
|
120
120
|
const mode = getIonMode(this);
|
|
121
|
-
return (h(Host, { key: '
|
|
121
|
+
return (h(Host, { key: '76be70d7fbebc52646a5851f47accc1006615b85', class: {
|
|
122
122
|
[mode]: true,
|
|
123
123
|
// Used internally for styling
|
|
124
124
|
[`split-pane-${mode}`]: true,
|
|
125
125
|
'split-pane-visible': this.visible,
|
|
126
|
-
} }, h("slot", { key: '
|
|
126
|
+
} }, h("slot", { key: '9a859530f4fb18aff43255bc3940feb9aca625d7' })));
|
|
127
127
|
}
|
|
128
128
|
static get is() { return "ion-split-pane"; }
|
|
129
129
|
static get encapsulation() { return "shadow"; }
|
|
@@ -48,10 +48,10 @@ export class Tab {
|
|
|
48
48
|
}
|
|
49
49
|
render() {
|
|
50
50
|
const { tab, active, component } = this;
|
|
51
|
-
return (h(Host, { key: '
|
|
51
|
+
return (h(Host, { key: '2107ece2f1ebdf748bac8adb78a9ad67e7fc9057', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
|
|
52
52
|
'ion-page': component === undefined,
|
|
53
53
|
'tab-hidden': !active,
|
|
54
|
-
} }, h("slot", { key: '
|
|
54
|
+
} }, h("slot", { key: 'b4a1bc1aa79f6b82b8f77b544bcb74e65229b541' })));
|
|
55
55
|
}
|
|
56
56
|
static get is() { return "ion-tab"; }
|
|
57
57
|
static get encapsulation() { return "shadow"; }
|
|
@@ -51,11 +51,11 @@ export class TabBar {
|
|
|
51
51
|
const { color, translucent, keyboardVisible } = this;
|
|
52
52
|
const mode = getIonMode(this);
|
|
53
53
|
const shouldHide = keyboardVisible && this.el.getAttribute('slot') !== 'top';
|
|
54
|
-
return (h(Host, { key: '
|
|
54
|
+
return (h(Host, { key: '62303a7f9d8c98ffab51a5900c144c5117b9c543', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses(color, {
|
|
55
55
|
[mode]: true,
|
|
56
56
|
'tab-bar-translucent': translucent,
|
|
57
57
|
'tab-bar-hidden': shouldHide,
|
|
58
|
-
}) }, h("slot", { key: '
|
|
58
|
+
}) }, h("slot", { key: '5771a9828f748c2bd6b5e26758b9723c6b3de5ff' })));
|
|
59
59
|
}
|
|
60
60
|
static get is() { return "ion-tab-bar"; }
|
|
61
61
|
static get encapsulation() { return "shadow"; }
|
|
@@ -70,7 +70,7 @@ export class TabButton {
|
|
|
70
70
|
rel,
|
|
71
71
|
target,
|
|
72
72
|
};
|
|
73
|
-
return (h(Host, { key: '
|
|
73
|
+
return (h(Host, { key: 'a86d441d8df350fe991f2f948fc6b6ad007728f7', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
|
|
74
74
|
[mode]: true,
|
|
75
75
|
'tab-selected': selected,
|
|
76
76
|
'tab-disabled': disabled,
|
|
@@ -82,7 +82,7 @@ export class TabButton {
|
|
|
82
82
|
'ion-activatable': true,
|
|
83
83
|
'ion-selectable': true,
|
|
84
84
|
'ion-focusable': true,
|
|
85
|
-
} }, h("a", Object.assign({ key: '
|
|
85
|
+
} }, h("a", Object.assign({ key: '8dfe1ccff2cf21601c5aea7f7f877c0fbe384e09' }, attrs, { class: "button-native", part: "native", role: "tab", "aria-selected": selected ? 'true' : null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? '-1' : undefined }, inheritedAttributes), h("span", { key: '3f557cf6e96e22b9318b4aee19ede810eb7fb720', class: "button-inner" }, h("slot", { key: '836dd090dbe3c2ea97dc263fca7d01dea6ea0eb6' })), mode === 'md' && h("ion-ripple-effect", { key: '488a924fd04602c1b23e03d1a4c84dfa0f2ca03d', type: "unbounded" }))));
|
|
86
86
|
}
|
|
87
87
|
static get is() { return "ion-tab-button"; }
|
|
88
88
|
static get encapsulation() { return "shadow"; }
|
|
@@ -145,7 +145,7 @@ export class Tabs {
|
|
|
145
145
|
return Array.from(this.el.querySelectorAll('ion-tab'));
|
|
146
146
|
}
|
|
147
147
|
render() {
|
|
148
|
-
return (h(Host, { key: '
|
|
148
|
+
return (h(Host, { key: 'd357c4607cfc89fb88404fe12ea7ef5b397fe6bf', onIonTabButtonClick: this.onTabClicked }, h("slot", { key: '18661896589a4ab3c74164f448b928abec9b4db0', name: "top" }), h("div", { key: '3bf30ea2540a196e868a78a861824b4b5d933afd', class: "tabs-inner" }, h("slot", { key: '7cfc154d4d6c1642188ab6508a6be72c8234585e' })), h("slot", { key: '8057679c959195cbdfae156b8ae0cbfd978c5037', name: "bottom" })));
|
|
149
149
|
}
|
|
150
150
|
static get is() { return "ion-tabs"; }
|
|
151
151
|
static get encapsulation() { return "shadow"; }
|
|
@@ -13,9 +13,9 @@ export class Text {
|
|
|
13
13
|
}
|
|
14
14
|
render() {
|
|
15
15
|
const mode = getIonMode(this);
|
|
16
|
-
return (h(Host, { key: '
|
|
16
|
+
return (h(Host, { key: '0c2546ea3f24b0a6bfd606199441d0a4edfa4ca1', class: createColorClasses(this.color, {
|
|
17
17
|
[mode]: true,
|
|
18
|
-
}) }, h("slot", { key: '
|
|
18
|
+
}) }, h("slot", { key: 'b7623ccb06f9461090a1f33e9f85886c7a4d5eff' })));
|
|
19
19
|
}
|
|
20
20
|
static get is() { return "ion-text"; }
|
|
21
21
|
static get encapsulation() { return "shadow"; }
|
|
@@ -373,6 +373,7 @@
|
|
|
373
373
|
justify-content: space-between;
|
|
374
374
|
border-top: var(--border-width) var(--border-style) var(--border-color);
|
|
375
375
|
font-size: 0.75rem;
|
|
376
|
+
white-space: normal;
|
|
376
377
|
}
|
|
377
378
|
|
|
378
379
|
/**
|
|
@@ -396,7 +397,7 @@
|
|
|
396
397
|
|
|
397
398
|
.textarea-bottom .helper-text {
|
|
398
399
|
display: block;
|
|
399
|
-
color: var(--ion-color-step-
|
|
400
|
+
color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
|
|
400
401
|
}
|
|
401
402
|
|
|
402
403
|
:host(.ion-touched.ion-invalid) .textarea-bottom .error-text {
|
|
@@ -415,7 +416,7 @@
|
|
|
415
416
|
*/
|
|
416
417
|
-webkit-margin-start: auto;
|
|
417
418
|
margin-inline-start: auto;
|
|
418
|
-
color: var(--ion-color-step-
|
|
419
|
+
color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
|
|
419
420
|
white-space: nowrap;
|
|
420
421
|
padding-inline-start: 16px;
|
|
421
422
|
}
|
|
@@ -112,6 +112,17 @@ export class Textarea {
|
|
|
112
112
|
}
|
|
113
113
|
this.runAutoGrow();
|
|
114
114
|
}
|
|
115
|
+
/**
|
|
116
|
+
* dir is a globally enumerated attribute.
|
|
117
|
+
* As a result, creating these as properties
|
|
118
|
+
* can have unintended side effects. Instead, we
|
|
119
|
+
* listen for attribute changes and inherit them
|
|
120
|
+
* to the inner `<textarea>` element.
|
|
121
|
+
*/
|
|
122
|
+
onDirChanged(newValue) {
|
|
123
|
+
this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { dir: newValue });
|
|
124
|
+
forceUpdate(this);
|
|
125
|
+
}
|
|
115
126
|
connectedCallback() {
|
|
116
127
|
const { el } = this;
|
|
117
128
|
this.slotMutationController = createSlotMutationController(el, ['label', 'start', 'end'], () => forceUpdate(this));
|
|
@@ -139,7 +150,7 @@ export class Textarea {
|
|
|
139
150
|
}
|
|
140
151
|
}
|
|
141
152
|
componentWillLoad() {
|
|
142
|
-
this.inheritedAttributes = Object.assign(Object.assign({}, inheritAriaAttributes(this.el)), inheritAttributes(this.el, ['data-form-type', 'title', 'tabindex']));
|
|
153
|
+
this.inheritedAttributes = Object.assign(Object.assign({}, inheritAriaAttributes(this.el)), inheritAttributes(this.el, ['data-form-type', 'title', 'tabindex', 'dir']));
|
|
143
154
|
}
|
|
144
155
|
componentDidLoad() {
|
|
145
156
|
this.originalIonInput = this.ionInput;
|
|
@@ -374,7 +385,7 @@ export class Textarea {
|
|
|
374
385
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
375
386
|
*/
|
|
376
387
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
|
|
377
|
-
return (h(Host, { key: '
|
|
388
|
+
return (h(Host, { key: '3bf42ea1fa739f334427c70f91a89b8b0e0f21ec', class: createColorClasses(this.color, {
|
|
378
389
|
[mode]: true,
|
|
379
390
|
'has-value': hasValue,
|
|
380
391
|
'has-focus': hasFocus,
|
|
@@ -383,7 +394,7 @@ export class Textarea {
|
|
|
383
394
|
[`textarea-shape-${shape}`]: shape !== undefined,
|
|
384
395
|
[`textarea-label-placement-${labelPlacement}`]: true,
|
|
385
396
|
'textarea-disabled': disabled,
|
|
386
|
-
}) }, h("label", { key: '
|
|
397
|
+
}) }, h("label", { key: 'f7acceeb74849d13a6af8d39b66ea2701384c955', class: "textarea-wrapper", htmlFor: inputId }, this.renderLabelContainer(), h("div", { key: '05e9f2ebad1742a9e66d243d18c22ddd4c83ee04', class: "textarea-wrapper-inner" }, h("div", { key: '70a9935351c38413ced05f5e4dc0055b9b001ee9', class: "start-slot-wrapper" }, h("slot", { key: '11206eaa31d112c01f2218bf2ff46375ad819d1f', name: "start" })), h("div", { key: 'bfd215dbb5f4d60f5fb62d37226fdc6ce61ec107', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, h("textarea", Object.assign({ key: '2fa5cdf4c6614dd8cd4b7d2a19811a79c96ac50d', 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)), h("div", { key: '8a67ad8e3b5650680f770cefc562d190f6760718', class: "end-slot-wrapper" }, h("slot", { key: '03bb6bc5f2808c1f474a6c3168169d17f7569fda', name: "end" }))), shouldRenderHighlight && h("div", { key: 'cd564bd01a1ca3f914218e34a78d296ad0838e4a', class: "textarea-highlight" })), this.renderBottomContent()));
|
|
387
398
|
}
|
|
388
399
|
static get is() { return "ion-textarea"; }
|
|
389
400
|
static get encapsulation() { return "scoped"; }
|
|
@@ -1035,6 +1046,9 @@ export class Textarea {
|
|
|
1035
1046
|
}, {
|
|
1036
1047
|
"propName": "value",
|
|
1037
1048
|
"methodName": "valueChanged"
|
|
1049
|
+
}, {
|
|
1050
|
+
"propName": "dir",
|
|
1051
|
+
"methodName": "onDirChanged"
|
|
1038
1052
|
}];
|
|
1039
1053
|
}
|
|
1040
1054
|
}
|