@ionic/core 8.2.2-dev.11717796763.1aa87d5c → 8.2.2-nightly.20240607
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 +8 -13
- package/components/alert.js +10 -14
- package/components/backdrop.js +6 -10
- package/components/button.js +12 -41
- package/components/buttons.js +6 -10
- package/components/checkbox.js +13 -26
- package/components/data.js +4 -4
- package/components/index2.js +2 -1
- package/components/index4.js +7 -8
- package/components/index6.js +30 -27
- package/components/index7.js +27 -124
- package/components/index8.js +111 -150
- package/components/index9.js +167 -0
- package/components/input-shims.js +1 -1
- package/components/input.utils.js +1 -1
- package/components/ion-accordion-group.js +6 -9
- package/components/ion-accordion.js +9 -15
- package/components/ion-app.js +6 -5
- package/components/ion-avatar.js +3 -52
- package/components/ion-back-button.js +19 -28
- package/components/ion-badge.js +6 -42
- package/components/ion-breadcrumb.js +10 -16
- package/components/ion-breadcrumbs.js +5 -9
- package/components/ion-card-content.js +5 -9
- package/components/ion-card-header.js +5 -9
- package/components/ion-card-subtitle.js +5 -9
- package/components/ion-card-title.js +5 -9
- package/components/ion-card.js +9 -17
- package/components/ion-chip.js +8 -45
- package/components/ion-col.js +5 -5
- package/components/ion-content.js +11 -11
- package/components/ion-datetime-button.js +6 -9
- package/components/ion-datetime.js +20 -47
- package/components/ion-fab-button.js +9 -15
- package/components/ion-fab-list.js +5 -5
- package/components/ion-fab.js +6 -6
- package/components/ion-footer.js +11 -15
- package/components/ion-grid.js +5 -5
- package/components/ion-header.js +11 -15
- package/components/ion-img.js +2 -5
- package/components/ion-infinite-scroll-content.js +8 -12
- package/components/ion-infinite-scroll.js +5 -5
- package/components/ion-input-password-toggle.js +8 -7
- package/components/ion-input.js +20 -101
- package/components/ion-item-divider.js +5 -9
- package/components/ion-item-group.js +5 -9
- package/components/ion-item-option.js +7 -11
- package/components/ion-item-options.js +5 -9
- package/components/ion-item-sliding.js +5 -5
- package/components/ion-loading.js +8 -12
- package/components/ion-menu-button.js +9 -13
- package/components/ion-menu-toggle.js +5 -5
- package/components/ion-menu.js +7 -11
- package/components/ion-modal.js +11 -14
- package/components/ion-nav-link.js +1 -1
- package/components/ion-nav.js +6 -7
- package/components/ion-note.js +5 -9
- package/components/ion-picker-legacy.js +8 -7
- package/components/ion-progress-bar.js +6 -10
- package/components/ion-range.js +8 -11
- package/components/ion-refresher-content.js +8 -9
- package/components/ion-refresher.js +7 -11
- package/components/ion-reorder-group.js +5 -5
- package/components/ion-reorder.js +5 -23
- package/components/ion-router-link.js +6 -6
- package/components/ion-router-outlet.js +2 -2
- package/components/ion-row.js +2 -5
- package/components/ion-searchbar.js +16 -79
- package/components/ion-segment-button.js +8 -12
- package/components/ion-segment.js +5 -9
- package/components/ion-select-option.js +2 -5
- package/components/ion-select.js +28 -67
- package/components/ion-skeleton-text.js +5 -5
- package/components/ion-split-pane.js +8 -12
- package/components/ion-tab-bar.js +5 -9
- package/components/ion-tab-button.js +7 -11
- package/components/ion-tab.js +2 -2
- package/components/ion-tabs.js +2 -2
- package/components/ion-text.js +5 -5
- package/components/ion-textarea.js +9 -13
- package/components/ion-thumbnail.js +2 -5
- package/components/ion-title.js +5 -9
- package/components/ion-toast.js +9 -13
- package/components/ion-toggle.js +18 -56
- package/components/ion-toolbar.js +7 -11
- package/components/ionic-global.js +14 -191
- package/components/ios.transition.js +0 -1
- package/components/item.js +11 -17
- package/components/label.js +5 -9
- package/components/list-header.js +5 -9
- package/components/list.js +6 -10
- package/components/overlays.js +2 -1
- package/components/picker-column-option.js +5 -9
- package/components/picker-column.js +7 -7
- package/components/picker-column2.js +4 -4
- package/components/picker.js +4 -8
- package/components/popover.js +8 -11
- package/components/radio-group.js +3 -5
- package/components/radio.js +8 -12
- package/components/ripple-effect.js +5 -5
- package/components/select-popover.js +2 -9
- package/components/spinner.js +6 -6
- package/components/status-tap.js +1 -1
- package/css/core.css +1 -1
- package/css/core.css.map +1 -1
- package/css/display.css.map +1 -1
- package/css/flex-utils.css.map +1 -1
- package/css/float-elements.css.map +1 -1
- package/css/global.bundle.css.map +1 -1
- package/css/ionic-swiper.css +1 -1
- package/css/ionic-swiper.css.map +1 -1
- package/css/ionic.bundle.css +1 -1
- package/css/ionic.bundle.css.map +1 -1
- package/css/normalize.css.map +1 -1
- package/css/padding.css.map +1 -1
- package/css/palettes/dark.always.css.map +1 -1
- package/css/palettes/dark.class.css.map +1 -1
- package/css/palettes/dark.system.css.map +1 -1
- package/css/palettes/high-contrast-dark.always.css.map +1 -1
- package/css/palettes/high-contrast-dark.class.css.map +1 -1
- package/css/palettes/high-contrast-dark.system.css.map +1 -1
- package/css/palettes/high-contrast.always.css.map +1 -1
- package/css/palettes/high-contrast.class.css.map +1 -1
- package/css/palettes/high-contrast.system.css.map +1 -1
- package/css/structure.css.map +1 -1
- package/css/text-alignment.css.map +1 -1
- package/css/text-transformation.css.map +1 -1
- package/css/typography.css.map +1 -1
- package/css/utils.bundle.css.map +1 -1
- package/dist/cjs/{app-globals-5b0a3f95.js → app-globals-64aa7919.js} +1 -1
- package/dist/cjs/{data-7d67d1e3.js → data-21dc0f81.js} +6 -6
- package/dist/cjs/{hardware-back-button-a90bf4cd.js → hardware-back-button-9931602c.js} +1 -1
- package/dist/cjs/index-5915f9b3.js +38 -0
- package/dist/cjs/{index-ca6de37f.js → index-5b6a7459.js} +2 -2
- package/dist/cjs/{index-59095e03.js → index-63e64bb7.js} +12 -13
- package/dist/cjs/{index-71f7488c.js → index-8a653282.js} +8 -7
- package/dist/cjs/index.cjs.js +8 -7
- package/dist/cjs/{input-shims-58aadbb2.js → input-shims-9e59ef62.js} +2 -3
- package/dist/cjs/{input.utils-d9907cfc.js → input.utils-611cde0b.js} +2 -2
- package/dist/cjs/ion-accordion_2.cjs.entry.js +14 -23
- package/dist/cjs/ion-action-sheet.cjs.entry.js +11 -15
- package/dist/cjs/ion-alert.cjs.entry.js +13 -16
- package/dist/cjs/ion-app_8.cjs.entry.js +67 -86
- package/dist/cjs/ion-avatar_3.cjs.entry.js +7 -90
- package/dist/cjs/ion-back-button.cjs.entry.js +18 -27
- package/dist/cjs/ion-backdrop.cjs.entry.js +6 -10
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +13 -23
- package/dist/cjs/ion-button_2.cjs.entry.js +15 -44
- package/dist/cjs/ion-card_5.cjs.entry.js +25 -48
- package/dist/cjs/ion-checkbox.cjs.entry.js +12 -23
- package/dist/cjs/ion-chip.cjs.entry.js +7 -42
- package/dist/cjs/ion-col_3.cjs.entry.js +10 -13
- package/dist/cjs/ion-datetime-button.cjs.entry.js +11 -14
- package/dist/cjs/ion-datetime_3.cjs.entry.js +108 -135
- package/dist/cjs/ion-fab_3.cjs.entry.js +17 -23
- package/dist/cjs/ion-img.cjs.entry.js +2 -5
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +13 -16
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +10 -9
- package/dist/cjs/ion-input.cjs.entry.js +20 -99
- package/dist/cjs/ion-item-option_3.cjs.entry.js +16 -23
- package/dist/cjs/ion-item_8.cjs.entry.js +39 -69
- package/dist/cjs/ion-loading.cjs.entry.js +11 -14
- package/dist/cjs/ion-menu_3.cjs.entry.js +22 -29
- package/dist/cjs/ion-modal.cjs.entry.js +19 -22
- package/dist/cjs/ion-nav_2.cjs.entry.js +8 -9
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +5 -9
- package/dist/cjs/ion-picker-column.cjs.entry.js +7 -7
- package/dist/cjs/ion-picker.cjs.entry.js +4 -8
- package/dist/cjs/ion-popover.cjs.entry.js +14 -17
- package/dist/cjs/ion-progress-bar.cjs.entry.js +6 -10
- package/dist/cjs/ion-radio_2.cjs.entry.js +10 -16
- package/dist/cjs/ion-range.cjs.entry.js +13 -16
- package/dist/cjs/ion-refresher_2.cjs.entry.js +14 -18
- package/dist/cjs/ion-reorder_2.cjs.entry.js +9 -26
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +5 -5
- package/dist/cjs/ion-route_4.cjs.entry.js +6 -6
- package/dist/cjs/ion-searchbar.cjs.entry.js +15 -78
- package/dist/cjs/ion-segment_2.cjs.entry.js +12 -20
- package/dist/cjs/ion-select_3.cjs.entry.js +32 -80
- package/dist/cjs/ion-spinner.cjs.entry.js +6 -6
- package/dist/cjs/ion-split-pane.cjs.entry.js +8 -12
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +11 -19
- package/dist/cjs/ion-tab_2.cjs.entry.js +4 -4
- package/dist/cjs/ion-text.cjs.entry.js +5 -5
- package/dist/cjs/ion-textarea.cjs.entry.js +11 -14
- package/dist/cjs/ion-toast.cjs.entry.js +32 -36
- package/dist/cjs/ion-toggle.cjs.entry.js +17 -55
- package/dist/cjs/ionic-global-46459c38.js +237 -0
- package/dist/cjs/ionic.cjs.js +3 -3
- package/dist/cjs/{ios.transition-4a91b726.js → ios.transition-d94b6863.js} +3 -3
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/{md.transition-1d783fa9.js → md.transition-297be114.js} +3 -2
- package/dist/cjs/{overlays-0c0d0193.js → overlays-569f7878.js} +4 -3
- package/dist/cjs/{status-tap-87959a2f.js → status-tap-607c6244.js} +2 -2
- package/dist/collection/components/accordion/accordion.ios.css +0 -12
- package/dist/collection/components/accordion/accordion.js +15 -19
- package/dist/collection/components/accordion/accordion.md.css +0 -6
- package/dist/collection/components/accordion-group/accordion-group.ios.css +0 -12
- package/dist/collection/components/accordion-group/accordion-group.js +8 -11
- package/dist/collection/components/accordion-group/accordion-group.md.css +0 -18
- package/dist/collection/components/action-sheet/action-sheet.ios.css +6 -18
- package/dist/collection/components/action-sheet/action-sheet.js +10 -14
- package/dist/collection/components/action-sheet/action-sheet.md.css +5 -17
- package/dist/collection/components/alert/alert.ios.css +1 -19
- package/dist/collection/components/alert/alert.js +12 -15
- package/dist/collection/components/alert/alert.md.css +1 -19
- package/dist/collection/components/app/app.js +4 -8
- package/dist/collection/components/avatar/avatar.ios.css +0 -12
- package/dist/collection/components/avatar/avatar.js +4 -92
- package/dist/collection/components/avatar/avatar.md.css +0 -12
- package/dist/collection/components/back-button/back-button.ios.css +48 -60
- package/dist/collection/components/back-button/back-button.js +19 -27
- package/dist/collection/components/back-button/back-button.md.css +48 -60
- package/dist/collection/components/backdrop/backdrop.ios.css +1 -13
- package/dist/collection/components/backdrop/backdrop.js +6 -12
- package/dist/collection/components/backdrop/backdrop.md.css +1 -13
- package/dist/collection/components/badge/badge.ios.css +0 -12
- package/dist/collection/components/badge/badge.js +8 -75
- package/dist/collection/components/badge/badge.md.css +0 -12
- package/dist/collection/components/breadcrumb/breadcrumb.ios.css +8 -20
- package/dist/collection/components/breadcrumb/breadcrumb.js +10 -16
- package/dist/collection/components/breadcrumb/breadcrumb.md.css +8 -20
- package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +0 -6
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +9 -11
- package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +0 -6
- package/dist/collection/components/button/button.ios.css +16 -42
- package/dist/collection/components/button/button.js +17 -46
- package/dist/collection/components/button/button.md.css +20 -33
- package/dist/collection/components/button/test/clear/button.e2e.js +3 -6
- package/dist/collection/components/button/test/outline/button.e2e.js +0 -1
- package/dist/collection/components/button/test/round/button.e2e.js +52 -0
- package/dist/collection/components/button/test/size/button.e2e.js +1 -18
- package/dist/collection/components/buttons/buttons.ios.css +4 -22
- package/dist/collection/components/buttons/buttons.js +8 -14
- package/dist/collection/components/buttons/buttons.md.css +0 -18
- package/dist/collection/components/card/card.ios.css +4 -30
- package/dist/collection/components/card/card.js +10 -34
- package/dist/collection/components/card/card.md.css +4 -30
- package/dist/collection/components/card-content/card-content.ios.css +0 -12
- package/dist/collection/components/card-content/card-content.js +8 -11
- package/dist/collection/components/card-content/card-content.md.css +0 -12
- package/dist/collection/components/card-header/card-header.ios.css +0 -12
- package/dist/collection/components/card-header/card-header.js +9 -12
- package/dist/collection/components/card-header/card-header.md.css +0 -12
- package/dist/collection/components/card-subtitle/card-subtitle.ios.css +0 -12
- package/dist/collection/components/card-subtitle/card-subtitle.js +8 -11
- package/dist/collection/components/card-subtitle/card-subtitle.md.css +0 -12
- package/dist/collection/components/card-title/card-title.ios.css +0 -12
- package/dist/collection/components/card-title/card-title.js +8 -11
- package/dist/collection/components/card-title/card-title.md.css +0 -12
- package/dist/collection/components/checkbox/checkbox.ios.css +2 -20
- package/dist/collection/components/checkbox/checkbox.js +14 -59
- package/dist/collection/components/checkbox/checkbox.md.css +3 -21
- package/dist/collection/components/checkbox/test/basic/checkbox.e2e.js +1 -66
- package/dist/collection/components/checkbox/test/label/checkbox.e2e.js +1 -1
- package/dist/collection/components/checkbox/test/states/checkbox.e2e.js +1 -32
- package/dist/collection/components/chip/chip.ios.css +1 -20
- package/dist/collection/components/chip/chip.js +8 -77
- package/dist/collection/components/chip/chip.md.css +1 -20
- package/dist/collection/components/chip/test/states/chip.e2e.js +0 -16
- package/dist/collection/components/col/col.css +0 -12
- package/dist/collection/components/col/col.js +5 -9
- package/dist/collection/components/content/content.css +2 -8
- package/dist/collection/components/content/content.js +10 -13
- package/dist/collection/components/datetime/datetime.ios.css +3 -15
- package/dist/collection/components/datetime/datetime.js +19 -47
- package/dist/collection/components/datetime/datetime.md.css +3 -15
- package/dist/collection/components/datetime/utils/data.js +3 -3
- package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -6
- package/dist/collection/components/datetime-button/datetime-button.js +8 -11
- package/dist/collection/components/datetime-button/datetime-button.md.css +0 -6
- package/dist/collection/components/fab/fab.css +1 -25
- package/dist/collection/components/fab/fab.js +5 -9
- package/dist/collection/components/fab-button/fab-button.ios.css +6 -18
- package/dist/collection/components/fab-button/fab-button.js +14 -19
- package/dist/collection/components/fab-button/fab-button.md.css +8 -20
- package/dist/collection/components/fab-list/fab-list.css +0 -12
- package/dist/collection/components/fab-list/fab-list.js +5 -9
- package/dist/collection/components/footer/footer.ios.css +2 -14
- package/dist/collection/components/footer/footer.js +14 -17
- package/dist/collection/components/footer/footer.md.css +0 -12
- package/dist/collection/components/grid/grid.css +0 -12
- package/dist/collection/components/grid/grid.js +5 -9
- package/dist/collection/components/header/header.ios.css +2 -14
- package/dist/collection/components/header/header.js +14 -17
- package/dist/collection/components/header/header.md.css +0 -12
- package/dist/collection/components/img/img.js +2 -8
- package/dist/collection/components/infinite-scroll/infinite-scroll.js +4 -8
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -12
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +10 -16
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -12
- package/dist/collection/components/input/input.ios.css +2 -21
- package/dist/collection/components/input/input.js +30 -128
- package/dist/collection/components/input/input.md.css +4 -43
- package/dist/collection/components/input/test/basic/input.e2e.js +0 -66
- package/dist/collection/components/input/test/bottom-content/input.e2e.js +5 -24
- package/dist/collection/components/input/test/fill/input.e2e.js +39 -37
- package/dist/collection/components/input/test/highlight/input.e2e.js +0 -94
- package/dist/collection/components/input/test/slot/input.e2e.js +0 -14
- package/dist/collection/components/input/test/states/input.e2e.js +0 -173
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +5 -6
- package/dist/collection/components/item/item.ios.css +8 -20
- package/dist/collection/components/item/item.js +16 -21
- package/dist/collection/components/item/item.md.css +7 -31
- package/dist/collection/components/item-divider/item-divider.ios.css +0 -18
- package/dist/collection/components/item-divider/item-divider.js +8 -11
- package/dist/collection/components/item-divider/item-divider.md.css +0 -18
- package/dist/collection/components/item-group/item-group.ios.css +0 -12
- package/dist/collection/components/item-group/item-group.js +7 -13
- package/dist/collection/components/item-group/item-group.md.css +0 -12
- package/dist/collection/components/item-option/item-option.ios.css +2 -14
- package/dist/collection/components/item-option/item-option.js +8 -11
- package/dist/collection/components/item-option/item-option.md.css +2 -14
- package/dist/collection/components/item-options/item-options.ios.css +0 -18
- package/dist/collection/components/item-options/item-options.js +7 -13
- package/dist/collection/components/item-options/item-options.md.css +0 -18
- package/dist/collection/components/item-sliding/item-sliding.css +0 -6
- package/dist/collection/components/item-sliding/item-sliding.js +4 -8
- package/dist/collection/components/label/label.ios.css +0 -18
- package/dist/collection/components/label/label.js +8 -11
- package/dist/collection/components/label/label.md.css +0 -18
- package/dist/collection/components/list/list.ios.css +0 -18
- package/dist/collection/components/list/list.js +9 -12
- package/dist/collection/components/list/list.md.css +0 -18
- package/dist/collection/components/list-header/list-header.ios.css +0 -18
- package/dist/collection/components/list-header/list-header.js +8 -11
- package/dist/collection/components/list-header/list-header.md.css +0 -18
- package/dist/collection/components/loading/loading.ios.css +1 -13
- package/dist/collection/components/loading/loading.js +10 -13
- package/dist/collection/components/loading/loading.md.css +1 -13
- package/dist/collection/components/menu/menu.ios.css +3 -15
- package/dist/collection/components/menu/menu.js +7 -12
- package/dist/collection/components/menu/menu.md.css +3 -15
- package/dist/collection/components/menu-button/menu-button.ios.css +4 -16
- package/dist/collection/components/menu-button/menu-button.js +9 -12
- package/dist/collection/components/menu-button/menu-button.md.css +5 -17
- package/dist/collection/components/menu-toggle/menu-toggle.js +5 -8
- package/dist/collection/components/modal/modal.ios.css +2 -14
- package/dist/collection/components/modal/modal.js +10 -13
- package/dist/collection/components/modal/modal.md.css +2 -14
- package/dist/collection/components/nav/nav.css +1 -7
- package/dist/collection/components/nav/nav.js +6 -12
- package/dist/collection/components/nav-link/nav-link.js +1 -5
- package/dist/collection/components/note/note.ios.css +0 -12
- package/dist/collection/components/note/note.js +8 -11
- package/dist/collection/components/note/note.md.css +0 -12
- package/dist/collection/components/picker/picker.ios.css +3 -15
- package/dist/collection/components/picker/picker.js +5 -8
- package/dist/collection/components/picker/picker.md.css +3 -15
- package/dist/collection/components/picker-column/picker-column.css +2 -9
- package/dist/collection/components/picker-column/picker-column.js +7 -8
- package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
- package/dist/collection/components/picker-column-option/picker-column-option.js +7 -13
- package/dist/collection/components/picker-column-option/picker-column-option.md.css +0 -6
- package/dist/collection/components/picker-legacy/picker.ios.css +1 -13
- package/dist/collection/components/picker-legacy/picker.js +6 -7
- package/dist/collection/components/picker-legacy/picker.md.css +1 -13
- package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -12
- package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
- package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -12
- package/dist/collection/components/popover/popover.ios.css +1 -13
- package/dist/collection/components/popover/popover.js +12 -15
- package/dist/collection/components/popover/popover.md.css +1 -13
- package/dist/collection/components/progress-bar/progress-bar.ios.css +2 -8
- package/dist/collection/components/progress-bar/progress-bar.js +7 -10
- package/dist/collection/components/progress-bar/progress-bar.md.css +2 -8
- package/dist/collection/components/radio/radio.ios.css +2 -20
- package/dist/collection/components/radio/radio.js +9 -12
- package/dist/collection/components/radio/radio.md.css +2 -20
- package/dist/collection/components/radio-group/radio-group.js +3 -9
- package/dist/collection/components/range/range.ios.css +0 -12
- package/dist/collection/components/range/range.js +9 -12
- package/dist/collection/components/range/range.md.css +0 -12
- package/dist/collection/components/refresher/refresher.ios.css +1 -14
- package/dist/collection/components/refresher/refresher.js +8 -11
- package/dist/collection/components/refresher/refresher.md.css +2 -15
- package/dist/collection/components/refresher-content/refresher-content.js +7 -12
- package/dist/collection/components/reorder/reorder.ios.css +0 -6
- package/dist/collection/components/reorder/reorder.js +6 -26
- package/dist/collection/components/reorder/reorder.md.css +0 -6
- package/dist/collection/components/reorder-group/reorder-group.css +0 -6
- package/dist/collection/components/reorder-group/reorder-group.js +4 -8
- package/dist/collection/components/ripple-effect/ripple-effect.css +1 -7
- package/dist/collection/components/ripple-effect/ripple-effect.js +4 -8
- package/dist/collection/components/route/route.js +0 -4
- package/dist/collection/components/router/router.js +2 -6
- package/dist/collection/components/router-link/router-link.css +2 -8
- package/dist/collection/components/router-link/router-link.js +5 -9
- package/dist/collection/components/router-outlet/router-outlet.css +1 -7
- package/dist/collection/components/router-outlet/router-outlet.js +3 -6
- package/dist/collection/components/row/row.css +0 -12
- package/dist/collection/components/row/row.js +2 -9
- package/dist/collection/components/searchbar/searchbar.ios.css +2 -14
- package/dist/collection/components/searchbar/searchbar.js +25 -85
- package/dist/collection/components/searchbar/searchbar.md.css +2 -14
- package/dist/collection/components/segment/segment.ios.css +0 -18
- package/dist/collection/components/segment/segment.js +8 -11
- package/dist/collection/components/segment/segment.md.css +0 -18
- package/dist/collection/components/segment-button/segment-button.ios.css +4 -16
- package/dist/collection/components/segment-button/segment-button.js +9 -12
- package/dist/collection/components/segment-button/segment-button.md.css +6 -18
- package/dist/collection/components/select/select.ios.css +3 -22
- package/dist/collection/components/select/select.js +31 -70
- package/dist/collection/components/select/select.md.css +5 -38
- package/dist/collection/components/select-option/select-option.js +2 -9
- package/dist/collection/components/select-popover/select-popover.ios.css +0 -18
- package/dist/collection/components/select-popover/select-popover.js +4 -12
- package/dist/collection/components/select-popover/select-popover.md.css +0 -18
- package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
- package/dist/collection/components/skeleton-text/skeleton-text.js +5 -9
- package/dist/collection/components/spinner/spinner.css +0 -6
- package/dist/collection/components/spinner/spinner.js +6 -10
- package/dist/collection/components/split-pane/split-pane.ios.css +2 -20
- package/dist/collection/components/split-pane/split-pane.js +8 -14
- package/dist/collection/components/split-pane/split-pane.md.css +2 -20
- package/dist/collection/components/tab/tab.js +2 -6
- package/dist/collection/components/tab-bar/tab-bar.ios.css +0 -18
- package/dist/collection/components/tab-bar/tab-bar.js +9 -12
- package/dist/collection/components/tab-bar/tab-bar.md.css +0 -18
- package/dist/collection/components/tab-bar/test/basic/tab-bar.e2e.js +0 -34
- package/dist/collection/components/tab-button/tab-button.ios.css +3 -15
- package/dist/collection/components/tab-button/tab-button.js +8 -11
- package/dist/collection/components/tab-button/tab-button.md.css +3 -15
- package/dist/collection/components/tabs/tabs.css +1 -7
- package/dist/collection/components/tabs/tabs.js +1 -4
- package/dist/collection/components/text/text.css +0 -6
- package/dist/collection/components/text/text.js +6 -7
- package/dist/collection/components/textarea/textarea.ios.css +1 -26
- package/dist/collection/components/textarea/textarea.js +12 -15
- package/dist/collection/components/textarea/textarea.md.css +2 -39
- package/dist/collection/components/thumbnail/thumbnail.css +0 -6
- package/dist/collection/components/thumbnail/thumbnail.js +2 -9
- package/dist/collection/components/title/title.ios.css +0 -6
- package/dist/collection/components/title/title.js +7 -13
- package/dist/collection/components/title/title.md.css +0 -6
- package/dist/collection/components/toast/animations/utils.js +1 -1
- package/dist/collection/components/toast/toast.ios.css +0 -12
- package/dist/collection/components/toast/toast.js +11 -15
- package/dist/collection/components/toast/toast.md.css +0 -12
- package/dist/collection/components/toggle/toggle.ios.css +2 -23
- package/dist/collection/components/toggle/toggle.js +18 -55
- package/dist/collection/components/toggle/toggle.md.css +2 -20
- package/dist/collection/components/toolbar/toolbar.ios.css +2 -14
- package/dist/collection/components/toolbar/toolbar.js +10 -13
- package/dist/collection/components/toolbar/toolbar.md.css +2 -14
- package/dist/collection/css/test/{typography/a11y → a11y}/typography.e2e.js +1 -1
- package/dist/collection/global/ionic-global.js +13 -161
- package/dist/collection/index.js +0 -1
- package/dist/collection/themes/{native/test → test}/colors/theme.e2e.js +1 -1
- package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
- package/dist/collection/utils/menu-controller/animations/push.js +1 -2
- package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
- package/dist/collection/utils/test/playwright/generator.js +23 -48
- package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -14
- package/dist/collection/utils/test/playwright/page/utils/set-content.js +1 -13
- package/dist/collection/utils/transition/ios.transition.js +0 -1
- package/dist/docs.json +348 -6522
- package/dist/esm/{app-globals-1fabe499.js → app-globals-232dc3ed.js} +1 -1
- package/dist/esm/{button-active-367a8e84.js → button-active-f7898f4b.js} +1 -1
- package/dist/esm/{data-63b889c5.js → data-ae11fd43.js} +4 -4
- package/dist/esm/{hardware-back-button-2da817f5.js → hardware-back-button-7f93f261.js} +2 -2
- package/dist/esm/{index-00b4cca5.js → index-5cc724f3.js} +1 -1
- package/dist/esm/{index-33a3d901.js → index-92f14156.js} +5 -4
- package/dist/esm/index-9b0d46f4.js +34 -0
- package/dist/esm/{index-3321c202.js → index-c71c5417.js} +1 -1
- package/dist/esm/{index-44013081.js → index-c8c3afda.js} +8 -9
- package/dist/esm/index.js +9 -8
- package/dist/esm/{input-shims-c142630d.js → input-shims-0314bbe5.js} +2 -3
- package/dist/esm/{input.utils-68c66dbc.js → input.utils-09c71bc7.js} +1 -1
- package/dist/esm/ion-accordion_2.entry.js +14 -23
- package/dist/esm/ion-action-sheet.entry.js +13 -17
- package/dist/esm/ion-alert.entry.js +15 -18
- package/dist/esm/ion-app_8.entry.js +57 -76
- package/dist/esm/ion-avatar_3.entry.js +8 -91
- package/dist/esm/ion-back-button.entry.js +19 -28
- package/dist/esm/ion-backdrop.entry.js +7 -11
- package/dist/esm/ion-breadcrumb_2.entry.js +14 -24
- package/dist/esm/ion-button_2.entry.js +13 -42
- package/dist/esm/ion-card_5.entry.js +26 -49
- package/dist/esm/ion-checkbox.entry.js +13 -24
- package/dist/esm/ion-chip.entry.js +8 -43
- package/dist/esm/ion-col_3.entry.js +11 -14
- package/dist/esm/ion-datetime-button.entry.js +8 -11
- package/dist/esm/ion-datetime_3.entry.js +33 -60
- package/dist/esm/ion-fab_3.entry.js +18 -24
- package/dist/esm/ion-img.entry.js +3 -6
- package/dist/esm/ion-infinite-scroll_2.entry.js +14 -17
- package/dist/esm/ion-input-password-toggle.entry.js +8 -7
- package/dist/esm/ion-input.entry.js +21 -100
- package/dist/esm/ion-item-option_3.entry.js +17 -24
- package/dist/esm/ion-item_8.entry.js +40 -70
- package/dist/esm/ion-loading.entry.js +12 -15
- package/dist/esm/ion-menu_3.entry.js +23 -30
- package/dist/esm/ion-modal.entry.js +15 -18
- package/dist/esm/ion-nav_2.entry.js +9 -10
- package/dist/esm/ion-picker-column-option.entry.js +6 -10
- package/dist/esm/ion-picker-column.entry.js +8 -8
- package/dist/esm/ion-picker.entry.js +5 -9
- package/dist/esm/ion-popover.entry.js +12 -15
- package/dist/esm/ion-progress-bar.entry.js +7 -11
- package/dist/esm/ion-radio_2.entry.js +11 -17
- package/dist/esm/ion-range.entry.js +9 -12
- package/dist/esm/ion-refresher_2.entry.js +15 -19
- package/dist/esm/ion-reorder_2.entry.js +10 -27
- package/dist/esm/ion-ripple-effect.entry.js +6 -6
- package/dist/esm/ion-route_4.entry.js +7 -7
- package/dist/esm/ion-searchbar.entry.js +16 -79
- package/dist/esm/ion-segment_2.entry.js +13 -21
- package/dist/esm/ion-select_3.entry.js +33 -81
- package/dist/esm/ion-spinner.entry.js +7 -7
- package/dist/esm/ion-split-pane.entry.js +9 -13
- package/dist/esm/ion-tab-bar_2.entry.js +12 -20
- package/dist/esm/ion-tab_2.entry.js +5 -5
- package/dist/esm/ion-text.entry.js +6 -6
- package/dist/esm/ion-textarea.entry.js +12 -15
- package/dist/esm/ion-toast.entry.js +12 -16
- package/dist/esm/ion-toggle.entry.js +18 -56
- package/dist/esm/ionic-global-b9c0d1da.js +231 -0
- package/dist/esm/ionic.js +5 -5
- package/dist/esm/{ios.transition-688eab99.js → ios.transition-2f45f5c1.js} +4 -4
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{md.transition-0540d1d2.js → md.transition-6fcc955f.js} +4 -3
- package/dist/esm/{overlays-a0e93007.js → overlays-0d212972.js} +3 -2
- package/dist/esm/{status-tap-8d02be66.js → status-tap-53150009.js} +3 -3
- package/dist/esm-es5/app-globals-232dc3ed.js +4 -0
- package/dist/esm-es5/{button-active-367a8e84.js → button-active-f7898f4b.js} +1 -1
- package/dist/esm-es5/data-ae11fd43.js +4 -0
- package/dist/esm-es5/{hardware-back-button-2da817f5.js → hardware-back-button-7f93f261.js} +1 -1
- package/dist/esm-es5/index-5cc724f3.js +4 -0
- package/dist/esm-es5/index-92f14156.js +4 -0
- package/dist/esm-es5/index-9b0d46f4.js +4 -0
- package/dist/esm-es5/{index-3321c202.js → index-c71c5417.js} +1 -1
- package/dist/esm-es5/index-c8c3afda.js +4 -0
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/input-shims-0314bbe5.js +4 -0
- package/dist/esm-es5/input.utils-09c71bc7.js +4 -0
- 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-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 +1 -1
- 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_2.entry.js +1 -1
- package/dist/esm-es5/ion-select_3.entry.js +1 -1
- package/dist/esm-es5/ion-spinner.entry.js +1 -1
- package/dist/esm-es5/ion-split-pane.entry.js +1 -1
- package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
- package/dist/esm-es5/ion-tab_2.entry.js +1 -1
- package/dist/esm-es5/ion-text.entry.js +1 -1
- package/dist/esm-es5/ion-textarea.entry.js +1 -1
- package/dist/esm-es5/ion-toast.entry.js +1 -1
- package/dist/esm-es5/ion-toggle.entry.js +1 -1
- package/dist/esm-es5/ionic-global-b9c0d1da.js +4 -0
- package/dist/esm-es5/ionic.js +1 -1
- package/dist/esm-es5/ios.transition-2f45f5c1.js +4 -0
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/md.transition-6fcc955f.js +4 -0
- package/dist/esm-es5/overlays-0d212972.js +4 -0
- package/dist/esm-es5/status-tap-53150009.js +4 -0
- package/dist/html.html-data.json +130 -2084
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/ionic.js +1 -1
- package/dist/ionic/{p-a42e4adb.js → p-00333e13.js} +1 -1
- package/dist/ionic/p-0471d705.entry.js +4 -0
- package/dist/ionic/p-05bbe79d.entry.js +4 -0
- package/dist/ionic/{p-2fa9c16c.js → p-06e58c4e.js} +1 -1
- package/dist/ionic/p-06fee233.js +4 -0
- package/dist/ionic/p-0769896d.system.entry.js +4 -0
- package/dist/ionic/{p-2ac68c59.system.js → p-0c06e09b.system.js} +1 -1
- package/dist/ionic/{p-c23822f8.entry.js → p-13260c59.entry.js} +1 -1
- package/dist/ionic/p-13d3abce.system.entry.js +4 -0
- package/dist/ionic/p-1731ab58.system.entry.js +4 -0
- package/dist/ionic/p-17c10451.system.entry.js +4 -0
- package/dist/ionic/p-184fc032.system.js +4 -0
- package/dist/ionic/p-18fd2107.entry.js +4 -0
- package/dist/ionic/p-1a0848af.system.entry.js +4 -0
- package/dist/ionic/p-1cebad78.system.entry.js +4 -0
- package/dist/ionic/{p-c47b75e3.entry.js → p-1de7f9e4.entry.js} +1 -1
- package/dist/ionic/{p-4079d071.entry.js → p-266db4b6.entry.js} +1 -1
- package/dist/ionic/p-2690b1de.js +4 -0
- package/dist/ionic/p-26e469a2.system.entry.js +4 -0
- package/dist/ionic/p-2b13fb8c.entry.js +4 -0
- package/dist/ionic/p-2e7673a0.system.entry.js +4 -0
- package/dist/ionic/p-3886b5d0.entry.js +4 -0
- package/dist/ionic/p-38c67b66.system.entry.js +4 -0
- package/dist/ionic/{p-15901e6c.js → p-395a0dd7.js} +1 -1
- package/dist/ionic/p-3a0091c2.system.entry.js +4 -0
- package/dist/ionic/p-3b199ab6.entry.js +4 -0
- package/dist/ionic/p-3c1b674f.entry.js +4 -0
- package/dist/ionic/p-3dba7283.entry.js +4 -0
- package/dist/ionic/p-3ea44c31.system.entry.js +4 -0
- package/dist/ionic/p-418ad596.entry.js +4 -0
- package/dist/ionic/{p-644c505f.js → p-44c6eb74.js} +1 -1
- package/dist/ionic/p-44f6a3e4.system.entry.js +4 -0
- package/dist/ionic/p-4c3d1c73.entry.js +4 -0
- package/dist/ionic/p-4d6b6aef.system.entry.js +4 -0
- package/dist/ionic/p-4d7ab66a.system.entry.js +4 -0
- package/dist/ionic/p-4f610234.entry.js +4 -0
- package/dist/ionic/p-52df00b5.entry.js +4 -0
- package/dist/ionic/p-56cb7d41.entry.js +4 -0
- package/dist/ionic/p-591528fc.entry.js +4 -0
- package/dist/ionic/p-5b121ea3.system.entry.js +4 -0
- package/dist/ionic/p-5bbd2b10.entry.js +4 -0
- package/dist/ionic/p-5c22c8fa.system.js +4 -0
- package/dist/ionic/{p-a2b60239.system.entry.js → p-5d6e77bd.system.entry.js} +1 -1
- package/dist/ionic/p-5f2dc7f9.entry.js +4 -0
- package/dist/ionic/p-6017cbeb.system.js +4 -0
- package/dist/ionic/{p-3862d08b.system.entry.js → p-60eb4c0d.system.entry.js} +1 -1
- package/dist/ionic/p-6167004c.system.entry.js +4 -0
- package/dist/ionic/p-617caf82.entry.js +4 -0
- package/dist/ionic/p-624e1ca6.system.js +4 -0
- package/dist/ionic/p-646d46b1.entry.js +4 -0
- package/dist/ionic/p-64e15640.system.entry.js +4 -0
- package/dist/ionic/p-65fd47cb.system.entry.js +4 -0
- package/dist/ionic/p-66621486.system.entry.js +4 -0
- package/dist/ionic/p-666583e1.system.entry.js +4 -0
- package/dist/ionic/p-68e5bec9.system.entry.js +4 -0
- package/dist/ionic/{p-fa019443.system.js → p-6ad705f8.system.js} +1 -1
- package/dist/ionic/p-6c76eff8.system.entry.js +4 -0
- package/dist/ionic/p-6cf5d476.system.js +4 -0
- package/dist/ionic/p-6ee1e402.system.js +4 -0
- package/dist/ionic/p-705c21cb.system.entry.js +4 -0
- package/dist/ionic/p-72ee2cd6.entry.js +4 -0
- package/dist/ionic/p-733db888.entry.js +4 -0
- package/dist/ionic/p-738cb3bd.entry.js +4 -0
- package/dist/ionic/p-75cb6744.system.js +4 -0
- package/dist/ionic/p-796cfde4.entry.js +4 -0
- package/dist/ionic/{p-fc9f9e4d.system.js → p-7a43878b.system.js} +1 -1
- package/dist/ionic/p-7a86bd75.js +4 -0
- package/dist/ionic/p-7f84a4c8.system.entry.js +4 -0
- package/dist/ionic/{p-e7e3ba54.system.entry.js → p-8d3e57a0.system.entry.js} +1 -1
- package/dist/ionic/p-8ee5c5bf.js +4 -0
- package/dist/ionic/{p-b5cc6e57.system.entry.js → p-9286b16d.system.entry.js} +2 -2
- package/dist/ionic/p-943bc98f.system.entry.js +4 -0
- package/dist/ionic/p-94953ea1.system.entry.js +4 -0
- package/dist/ionic/p-94c6f6ab.system.entry.js +4 -0
- package/dist/ionic/p-9690c79d.system.entry.js +4 -0
- package/dist/ionic/{p-cd99310b.js → p-96cc4814.js} +1 -1
- package/dist/ionic/p-98f199c6.system.entry.js +4 -0
- package/dist/ionic/{p-2df16673.system.js → p-99a4d7c7.system.js} +2 -2
- package/dist/ionic/{p-1b75a2d2.system.js → p-9ea607bd.system.js} +2 -2
- package/dist/ionic/p-9f5f3485.js +4 -0
- package/dist/ionic/p-a07f9cb7.system.entry.js +4 -0
- package/dist/ionic/p-a3aaeca8.system.entry.js +4 -0
- package/dist/ionic/{p-1ecfe64f.system.js → p-a688052d.system.js} +1 -1
- package/dist/ionic/p-ab27a195.system.entry.js +4 -0
- package/dist/ionic/{p-4058051c.entry.js → p-ac34105e.entry.js} +1 -1
- package/dist/ionic/p-af9d3f33.entry.js +4 -0
- package/dist/ionic/p-b1e856df.entry.js +4 -0
- package/dist/ionic/p-b6fe4a42.entry.js +4 -0
- package/dist/ionic/p-b7fa6074.js +4 -0
- package/dist/ionic/p-b9fcfe50.system.js +4 -0
- package/dist/ionic/{p-128f0f15.system.entry.js → p-bbc5329a.system.entry.js} +2 -2
- package/dist/ionic/p-c1859486.system.js +4 -0
- package/dist/ionic/{p-2d618ba6.system.entry.js → p-c350c8f8.system.entry.js} +1 -1
- package/dist/ionic/p-c5477854.system.entry.js +4 -0
- package/dist/ionic/p-c91c13d2.js +4 -0
- package/dist/ionic/p-cb5d9dd4.entry.js +4 -0
- package/dist/ionic/p-ccab4d05.system.entry.js +4 -0
- package/dist/ionic/p-cdddc32e.entry.js +4 -0
- package/dist/ionic/p-d2293261.system.entry.js +4 -0
- package/dist/ionic/p-d2753e35.js +4 -0
- package/dist/ionic/p-d2db72d1.entry.js +4 -0
- package/dist/ionic/p-d529141b.entry.js +4 -0
- package/dist/ionic/p-d5f62e4e.entry.js +4 -0
- package/dist/ionic/{p-6649365e.js → p-d60342e3.js} +1 -1
- package/dist/ionic/p-d7b97091.entry.js +4 -0
- package/dist/ionic/p-d820d1f1.entry.js +4 -0
- package/dist/ionic/p-d9e26540.system.entry.js +4 -0
- package/dist/ionic/p-da0001cd.system.entry.js +4 -0
- package/dist/ionic/p-dbee9e95.system.entry.js +4 -0
- package/dist/ionic/p-df3ebee9.system.entry.js +4 -0
- package/dist/ionic/p-df4bdf05.entry.js +4 -0
- package/dist/ionic/p-dfb78785.system.js +4 -0
- package/dist/ionic/p-e08fb9c2.system.entry.js +4 -0
- package/dist/ionic/p-e12d7323.entry.js +4 -0
- package/dist/ionic/p-e4587da1.js +4 -0
- package/dist/ionic/{p-493a4548.js → p-e6964b3a.js} +1 -1
- package/dist/ionic/{p-e59d16bd.entry.js → p-e6a47e94.entry.js} +1 -1
- package/dist/ionic/p-ea4f2b31.entry.js +4 -0
- package/dist/ionic/p-eaed7394.entry.js +4 -0
- package/dist/ionic/{p-67f85d9a.system.entry.js → p-eb8098d5.system.entry.js} +1 -1
- package/dist/ionic/p-ecf5f3e0.entry.js +4 -0
- package/dist/ionic/p-ed72bc6c.system.entry.js +4 -0
- package/dist/ionic/p-ef1c5743.entry.js +4 -0
- package/dist/ionic/p-f181073a.entry.js +4 -0
- package/dist/ionic/{p-41c9fb60.entry.js → p-f3ff1e58.entry.js} +1 -1
- package/dist/ionic/p-f52c2d9a.entry.js +4 -0
- package/dist/ionic/p-f654e4df.entry.js +4 -0
- package/dist/ionic/{p-d98a1d99.system.js → p-f687573e.system.js} +1 -1
- package/dist/ionic/p-fa2abaef.entry.js +4 -0
- package/dist/ionic/p-ff4b7e40.system.js +4 -0
- package/dist/types/components/accordion/accordion.d.ts +2 -3
- package/dist/types/components/accordion-group/accordion-group.d.ts +1 -2
- package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
- package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
- package/dist/types/components/alert/alert-interface.d.ts +7 -3
- package/dist/types/components/alert/alert.d.ts +2 -3
- package/dist/types/components/app/app.d.ts +0 -4
- package/dist/types/components/avatar/avatar.d.ts +0 -25
- package/dist/types/components/back-button/back-button.d.ts +1 -2
- package/dist/types/components/backdrop/backdrop.d.ts +0 -4
- package/dist/types/components/badge/badge.d.ts +1 -23
- package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -2
- package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
- package/dist/types/components/button/button.d.ts +4 -15
- package/dist/types/components/buttons/buttons.d.ts +1 -5
- package/dist/types/components/card/card.d.ts +1 -8
- package/dist/types/components/card-content/card-content.d.ts +1 -2
- package/dist/types/components/card-header/card-header.d.ts +2 -3
- package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
- package/dist/types/components/card-title/card-title.d.ts +1 -2
- package/dist/types/components/checkbox/checkbox.d.ts +4 -14
- package/dist/types/components/chip/chip.d.ts +1 -19
- package/dist/types/components/col/col.d.ts +0 -4
- package/dist/types/components/content/content.d.ts +0 -3
- package/dist/types/components/datetime/datetime.d.ts +1 -18
- package/dist/types/components/datetime/utils/data.d.ts +3 -3
- package/dist/types/components/datetime-button/datetime-button.d.ts +1 -2
- package/dist/types/components/fab/fab.d.ts +0 -4
- package/dist/types/components/fab-button/fab-button.d.ts +3 -4
- package/dist/types/components/fab-list/fab-list.d.ts +0 -4
- package/dist/types/components/footer/footer.d.ts +3 -4
- package/dist/types/components/grid/grid.d.ts +0 -4
- package/dist/types/components/header/header.d.ts +3 -4
- package/dist/types/components/img/img.d.ts +0 -3
- package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -4
- package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +0 -4
- package/dist/types/components/input/input.d.ts +5 -31
- package/dist/types/components/item/item.d.ts +4 -5
- package/dist/types/components/item-divider/item-divider.d.ts +1 -2
- package/dist/types/components/item-group/item-group.d.ts +0 -4
- package/dist/types/components/item-option/item-option.d.ts +1 -2
- package/dist/types/components/item-options/item-options.d.ts +0 -4
- package/dist/types/components/item-sliding/item-sliding.d.ts +0 -4
- package/dist/types/components/label/label.d.ts +1 -2
- package/dist/types/components/list/list.d.ts +1 -2
- package/dist/types/components/list-header/list-header.d.ts +1 -2
- package/dist/types/components/loading/loading-interface.d.ts +7 -2
- package/dist/types/components/loading/loading.d.ts +2 -3
- package/dist/types/components/menu/menu.d.ts +0 -3
- package/dist/types/components/menu-button/menu-button.d.ts +1 -2
- package/dist/types/components/menu-toggle/menu-toggle.d.ts +0 -3
- package/dist/types/components/modal/modal-interface.d.ts +7 -3
- package/dist/types/components/modal/modal.d.ts +1 -2
- package/dist/types/components/nav/nav-interface.d.ts +1 -9
- package/dist/types/components/nav/nav.d.ts +1 -5
- package/dist/types/components/nav-link/nav-link.d.ts +0 -4
- package/dist/types/components/note/note.d.ts +1 -2
- package/dist/types/components/picker/picker.d.ts +1 -2
- package/dist/types/components/picker-column/picker-column.d.ts +1 -2
- package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
- package/dist/types/components/picker-legacy/picker.d.ts +1 -2
- package/dist/types/components/popover/popover-interface.d.ts +6 -3
- package/dist/types/components/popover/popover.d.ts +5 -6
- package/dist/types/components/progress-bar/progress-bar.d.ts +1 -2
- package/dist/types/components/radio/radio.d.ts +1 -2
- package/dist/types/components/radio-group/radio-group.d.ts +0 -4
- package/dist/types/components/range/range.d.ts +1 -2
- package/dist/types/components/refresher/refresher.d.ts +1 -2
- package/dist/types/components/refresher-content/refresher-content.d.ts +0 -4
- package/dist/types/components/reorder/reorder.d.ts +0 -11
- package/dist/types/components/reorder-group/reorder-group.d.ts +0 -4
- package/dist/types/components/ripple-effect/ripple-effect.d.ts +0 -4
- package/dist/types/components/route/route.d.ts +0 -4
- package/dist/types/components/router/router.d.ts +0 -4
- package/dist/types/components/router-link/router-link.d.ts +0 -4
- package/dist/types/components/router-outlet/router-outlet.d.ts +1 -4
- package/dist/types/components/row/row.d.ts +0 -4
- package/dist/types/components/searchbar/searchbar.d.ts +8 -27
- package/dist/types/components/segment/segment.d.ts +1 -2
- package/dist/types/components/segment-button/segment-button.d.ts +1 -2
- package/dist/types/components/select/select.d.ts +5 -24
- package/dist/types/components/select-option/select-option.d.ts +0 -4
- package/dist/types/components/select-popover/select-popover.d.ts +0 -3
- package/dist/types/components/skeleton-text/skeleton-text.d.ts +0 -4
- package/dist/types/components/spinner/spinner.d.ts +0 -4
- package/dist/types/components/split-pane/split-pane.d.ts +0 -4
- package/dist/types/components/tab/tab.d.ts +0 -4
- package/dist/types/components/tab-bar/tab-bar.d.ts +2 -3
- package/dist/types/components/tab-button/tab-button.d.ts +1 -2
- package/dist/types/components/tabs/tabs.d.ts +0 -3
- package/dist/types/components/text/text.d.ts +1 -2
- package/dist/types/components/textarea/textarea.d.ts +2 -3
- package/dist/types/components/thumbnail/thumbnail.d.ts +0 -4
- package/dist/types/components/title/title.d.ts +0 -4
- package/dist/types/components/toast/animations/utils.d.ts +2 -2
- package/dist/types/components/toast/toast-interface.d.ts +7 -3
- package/dist/types/components/toast/toast.d.ts +2 -3
- package/dist/types/components/toggle/toggle.d.ts +1 -19
- package/dist/types/components/toolbar/toolbar.d.ts +3 -4
- package/dist/types/components.d.ts +174 -1278
- package/dist/types/global/ionic-global.d.ts +2 -25
- package/dist/types/index.d.ts +0 -1
- package/dist/types/interface.d.ts +0 -3
- package/dist/types/utils/config.d.ts +2 -99
- package/dist/types/utils/overlays-interface.d.ts +1 -31
- package/dist/types/utils/platform.d.ts +2 -2
- package/dist/types/utils/test/playwright/generator.d.ts +2 -31
- package/hydrate/index.js +624 -1595
- package/package.json +4 -8
- package/components/ghost-duotone.js +0 -6
- package/css/ionic/bundle.ionic.css +0 -1
- package/css/ionic/bundle.ionic.css.map +0 -1
- package/css/ionic/core.ionic.css +0 -1
- package/css/ionic/core.ionic.css.map +0 -1
- package/css/ionic/global.bundle.ionic.css +0 -1
- package/css/ionic/global.bundle.ionic.css.map +0 -1
- package/css/ionic/ionic-swiper.ionic.css +0 -1
- package/css/ionic/ionic-swiper.ionic.css.map +0 -1
- package/css/ionic/link.ionic.css +0 -1
- package/css/ionic/link.ionic.css.map +0 -1
- package/css/ionic/structure.ionic.css +0 -1
- package/css/ionic/structure.ionic.css.map +0 -1
- package/css/ionic/typography.ionic.css +0 -1
- package/css/ionic/typography.ionic.css.map +0 -1
- package/css/ionic/utils.bundle.ionic.css +0 -1
- package/css/ionic/utils.bundle.ionic.css.map +0 -1
- package/dist/cjs/ghost-duotone-cd930d5c.js +0 -8
- package/dist/cjs/ionic-global-2bd379ad.js +0 -418
- package/dist/collection/components/avatar/avatar.ionic.css +0 -255
- package/dist/collection/components/avatar/test/shape/avatar.e2e.js +0 -134
- package/dist/collection/components/avatar/test/size/avatar.e2e.js +0 -147
- package/dist/collection/components/badge/badge.ionic.css +0 -256
- package/dist/collection/components/badge/test/shape/badge.e2e.js +0 -84
- package/dist/collection/components/badge/test/size/badge.e2e.js +0 -96
- package/dist/collection/components/button/button.ionic.css +0 -417
- package/dist/collection/components/button/test/shape/button.e2e.js +0 -250
- package/dist/collection/components/button/test/states/button.e2e.js +0 -51
- package/dist/collection/components/card/card.ionic.css +0 -88
- package/dist/collection/components/card/test/shape/card.e2e.js +0 -40
- package/dist/collection/components/checkbox/checkbox.ionic.css +0 -498
- package/dist/collection/components/chip/chip.ionic.css +0 -141
- package/dist/collection/components/chip/test/shape/chip.e2e.js +0 -39
- package/dist/collection/components/chip/test/size/chip.e2e.js +0 -26
- package/dist/collection/components/input/input.ionic.css +0 -1031
- package/dist/collection/components/input/test/shape/input.e2e.js +0 -165
- package/dist/collection/components/input/test/size/input.e2e.js +0 -164
- package/dist/collection/components/item/item.ionic.css +0 -137
- package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -163
- package/dist/collection/components/tab-button/tab-button.ionic.css +0 -264
- package/dist/collection/css/test/link/basic/link.e2e.js +0 -35
- package/dist/collection/css/test/typography/basic/typography.e2e.js +0 -90
- package/dist/collection/global/test/ionic-global.spec.js +0 -109
- package/dist/esm/ghost-duotone-157f18b8.js +0 -6
- package/dist/esm/ionic-global-be8fa30a.js +0 -408
- package/dist/esm-es5/app-globals-1fabe499.js +0 -4
- package/dist/esm-es5/data-63b889c5.js +0 -4
- package/dist/esm-es5/ghost-duotone-157f18b8.js +0 -4
- package/dist/esm-es5/index-00b4cca5.js +0 -4
- package/dist/esm-es5/index-33a3d901.js +0 -4
- package/dist/esm-es5/index-44013081.js +0 -4
- package/dist/esm-es5/input-shims-c142630d.js +0 -4
- package/dist/esm-es5/input.utils-68c66dbc.js +0 -4
- package/dist/esm-es5/ionic-global-be8fa30a.js +0 -4
- package/dist/esm-es5/ios.transition-688eab99.js +0 -4
- package/dist/esm-es5/md.transition-0540d1d2.js +0 -4
- package/dist/esm-es5/overlays-a0e93007.js +0 -4
- package/dist/esm-es5/status-tap-8d02be66.js +0 -4
- package/dist/ionic/p-0116d120.entry.js +0 -4
- package/dist/ionic/p-01ae1aa0.entry.js +0 -4
- package/dist/ionic/p-021bee2f.system.entry.js +0 -4
- package/dist/ionic/p-036d86ec.system.entry.js +0 -4
- package/dist/ionic/p-0a93c048.system.js +0 -4
- package/dist/ionic/p-1219eea0.system.entry.js +0 -4
- package/dist/ionic/p-132e1004.entry.js +0 -4
- package/dist/ionic/p-1a5d178f.entry.js +0 -4
- package/dist/ionic/p-1d548fea.system.entry.js +0 -4
- package/dist/ionic/p-1dbb7fa3.entry.js +0 -4
- package/dist/ionic/p-22388c4d.entry.js +0 -4
- package/dist/ionic/p-22fef691.js +0 -4
- package/dist/ionic/p-24592a4d.system.entry.js +0 -4
- package/dist/ionic/p-25732faa.system.entry.js +0 -4
- package/dist/ionic/p-27e42c9e.system.js +0 -4
- package/dist/ionic/p-28a10445.system.js +0 -4
- package/dist/ionic/p-2efee8e9.entry.js +0 -4
- package/dist/ionic/p-302c9c7a.system.entry.js +0 -4
- package/dist/ionic/p-350462f9.system.entry.js +0 -4
- package/dist/ionic/p-359afeb0.system.entry.js +0 -4
- package/dist/ionic/p-37e801db.entry.js +0 -4
- package/dist/ionic/p-3b989be4.entry.js +0 -4
- package/dist/ionic/p-3c031826.system.entry.js +0 -4
- package/dist/ionic/p-3c18022f.entry.js +0 -4
- package/dist/ionic/p-3c93f058.system.entry.js +0 -4
- package/dist/ionic/p-3cccd1c7.system.entry.js +0 -4
- package/dist/ionic/p-3d25c6d9.entry.js +0 -4
- package/dist/ionic/p-3df9b7f5.js +0 -4
- package/dist/ionic/p-3e2568b9.system.js +0 -4
- package/dist/ionic/p-3e9a1680.js +0 -4
- package/dist/ionic/p-40c14f53.system.entry.js +0 -4
- package/dist/ionic/p-42452dc9.entry.js +0 -4
- package/dist/ionic/p-42816eab.entry.js +0 -4
- package/dist/ionic/p-42bb5ed7.system.entry.js +0 -4
- package/dist/ionic/p-44314b44.system.entry.js +0 -4
- package/dist/ionic/p-479bec54.entry.js +0 -4
- package/dist/ionic/p-4b9c6418.system.entry.js +0 -4
- package/dist/ionic/p-4d6c2031.system.entry.js +0 -4
- package/dist/ionic/p-4ec67d0a.entry.js +0 -4
- package/dist/ionic/p-5436c152.system.entry.js +0 -4
- package/dist/ionic/p-546438d8.js +0 -4
- package/dist/ionic/p-563a8d3b.entry.js +0 -4
- package/dist/ionic/p-56c72f65.system.entry.js +0 -4
- package/dist/ionic/p-59cd0dd7.system.entry.js +0 -4
- package/dist/ionic/p-5b5f7a34.entry.js +0 -4
- package/dist/ionic/p-61dd8967.system.entry.js +0 -4
- package/dist/ionic/p-61ddbdb9.entry.js +0 -4
- package/dist/ionic/p-645a7748.entry.js +0 -4
- package/dist/ionic/p-6746c32a.entry.js +0 -4
- package/dist/ionic/p-6c57ed08.js +0 -4
- package/dist/ionic/p-6daa3633.entry.js +0 -4
- package/dist/ionic/p-72e98815.system.js +0 -4
- package/dist/ionic/p-752e285d.entry.js +0 -4
- package/dist/ionic/p-79113968.js +0 -4
- package/dist/ionic/p-7b590e46.system.js +0 -4
- package/dist/ionic/p-7b914bfb.entry.js +0 -4
- package/dist/ionic/p-7bf2087e.entry.js +0 -4
- package/dist/ionic/p-7dad531c.system.entry.js +0 -4
- package/dist/ionic/p-7f5f8a14.entry.js +0 -4
- package/dist/ionic/p-82df3737.system.entry.js +0 -4
- package/dist/ionic/p-87e823ce.js +0 -4
- package/dist/ionic/p-8a04868b.system.entry.js +0 -4
- package/dist/ionic/p-8ac5efa9.entry.js +0 -4
- package/dist/ionic/p-8ed0cef4.system.entry.js +0 -4
- package/dist/ionic/p-90027267.system.js +0 -4
- package/dist/ionic/p-935801cc.entry.js +0 -4
- package/dist/ionic/p-96f109ca.entry.js +0 -4
- package/dist/ionic/p-9771abb4.entry.js +0 -4
- package/dist/ionic/p-9b925d37.system.entry.js +0 -4
- package/dist/ionic/p-9ba25d15.entry.js +0 -4
- package/dist/ionic/p-9ead4417.js +0 -4
- package/dist/ionic/p-a06d7e6a.system.js +0 -4
- package/dist/ionic/p-a3b856e6.system.entry.js +0 -4
- package/dist/ionic/p-ada5e8bb.entry.js +0 -4
- package/dist/ionic/p-b8ce15f6.system.entry.js +0 -4
- package/dist/ionic/p-bab398d1.entry.js +0 -4
- package/dist/ionic/p-bb7162de.system.js +0 -4
- package/dist/ionic/p-bee73070.entry.js +0 -4
- package/dist/ionic/p-c24b81cc.entry.js +0 -4
- package/dist/ionic/p-c374ab05.system.js +0 -4
- package/dist/ionic/p-c79decb5.system.entry.js +0 -4
- package/dist/ionic/p-c859a8da.system.js +0 -4
- package/dist/ionic/p-ca5aaed3.system.entry.js +0 -4
- package/dist/ionic/p-d281c150.system.entry.js +0 -4
- package/dist/ionic/p-d2a580db.entry.js +0 -4
- package/dist/ionic/p-d4f55a93.entry.js +0 -4
- package/dist/ionic/p-d5fc7d63.entry.js +0 -4
- package/dist/ionic/p-db08a2d0.system.entry.js +0 -4
- package/dist/ionic/p-db3f14c1.system.entry.js +0 -4
- package/dist/ionic/p-db8fac3d.system.entry.js +0 -4
- package/dist/ionic/p-dc60009b.system.entry.js +0 -4
- package/dist/ionic/p-dc8a3888.entry.js +0 -4
- package/dist/ionic/p-e2313846.entry.js +0 -4
- package/dist/ionic/p-e8aa220a.js +0 -4
- package/dist/ionic/p-ebc71ff5.system.entry.js +0 -4
- package/dist/ionic/p-f0fab903.system.entry.js +0 -4
- package/dist/ionic/p-f621b019.entry.js +0 -4
- package/dist/ionic/p-f997141e.entry.js +0 -4
- package/dist/ionic/p-fb17d462.entry.js +0 -4
- package/dist/ionic/p-fb8ecdb4.system.entry.js +0 -4
- package/dist/ionic/p-fc0922fa.system.entry.js +0 -4
- package/dist/ionic/p-fcb1218a.system.entry.js +0 -4
- package/dist/ionic/p-ff54800f.system.entry.js +0 -4
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Convert a pixels given value into rem
|
|
3
|
-
*
|
|
4
|
-
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
5
|
-
* @param context (optional) - Baseline value
|
|
6
|
-
*/
|
|
7
1
|
/**
|
|
8
2
|
* Convert a font size to a dynamic font size.
|
|
9
3
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -79,7 +73,6 @@
|
|
|
79
73
|
* @prop --highlight-color-focused: The color of the highlight on the input when focused
|
|
80
74
|
* @prop --highlight-color-valid: The color of the highlight on the input when valid
|
|
81
75
|
* @prop --highlight-color-invalid: The color of the highlight on the input when invalid
|
|
82
|
-
* @prop --text-color-invalid: The color of the error text on the input when invalid. Only applies to ionic theme.
|
|
83
76
|
*
|
|
84
77
|
* @prop --border-color: Color of the border below the input when using helper text, error text, or counter
|
|
85
78
|
* @prop --border-radius: Radius of the input. A large radius may display unevenly when using fill="outline"; if needed, use shape="round" instead or increase --padding-start.
|
|
@@ -142,18 +135,18 @@
|
|
|
142
135
|
padding-right: 0;
|
|
143
136
|
padding-top: 0;
|
|
144
137
|
padding-bottom: 0;
|
|
145
|
-
color: inherit;
|
|
146
138
|
font-family: inherit;
|
|
147
139
|
font-size: inherit;
|
|
148
140
|
font-style: inherit;
|
|
149
141
|
font-weight: inherit;
|
|
150
142
|
letter-spacing: inherit;
|
|
151
|
-
text-align: inherit;
|
|
152
143
|
text-decoration: inherit;
|
|
153
144
|
text-indent: inherit;
|
|
154
145
|
text-overflow: inherit;
|
|
155
146
|
text-transform: inherit;
|
|
147
|
+
text-align: inherit;
|
|
156
148
|
white-space: inherit;
|
|
149
|
+
color: inherit;
|
|
157
150
|
display: inline-block;
|
|
158
151
|
position: relative;
|
|
159
152
|
flex: 1;
|
|
@@ -613,12 +606,6 @@
|
|
|
613
606
|
display: none;
|
|
614
607
|
}
|
|
615
608
|
|
|
616
|
-
/**
|
|
617
|
-
* Convert a pixels given value into rem
|
|
618
|
-
*
|
|
619
|
-
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
620
|
-
* @param context (optional) - Baseline value
|
|
621
|
-
*/
|
|
622
609
|
/**
|
|
623
610
|
* Convert a font size to a dynamic font size.
|
|
624
611
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -674,12 +661,6 @@
|
|
|
674
661
|
* }
|
|
675
662
|
* }
|
|
676
663
|
*/
|
|
677
|
-
/**
|
|
678
|
-
* Convert a pixels given value into rem
|
|
679
|
-
*
|
|
680
|
-
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
681
|
-
* @param context (optional) - Baseline value
|
|
682
|
-
*/
|
|
683
664
|
/**
|
|
684
665
|
* Convert a font size to a dynamic font size.
|
|
685
666
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -4,16 +4,13 @@
|
|
|
4
4
|
import { Build, Host, forceUpdate, h } from "@stencil/core";
|
|
5
5
|
import { createNotchController } from "../../utils/forms/index";
|
|
6
6
|
import { inheritAriaAttributes, debounceEvent, inheritAttributes, componentOnReady } from "../../utils/helpers";
|
|
7
|
-
import { printIonWarning } from "../../utils/logging/index";
|
|
8
7
|
import { createSlotMutationController } from "../../utils/slot-mutation-controller";
|
|
9
8
|
import { createColorClasses, hostContext } from "../../utils/theme";
|
|
10
9
|
import { closeCircle, closeSharp } from "ionicons/icons";
|
|
11
|
-
import {
|
|
12
|
-
import { getIonTheme } from "../../global/ionic-global";
|
|
10
|
+
import { getIonMode } from "../../global/ionic-global";
|
|
13
11
|
import { getCounterText } from "./input.utils";
|
|
14
12
|
/**
|
|
15
|
-
* @virtualProp {"ios" | "md"} mode - The mode determines
|
|
16
|
-
* @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
|
|
13
|
+
* @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
|
|
17
14
|
*
|
|
18
15
|
* @slot label - The label text to associate with the input. Use the `labelPlacement` property to control where the label is placed relative to the input. Use this if you need to render a label with custom HTML. (EXPERIMENTAL)
|
|
19
16
|
* @slot start - Content to display at the leading edge of the input. (EXPERIMENTAL)
|
|
@@ -96,7 +93,7 @@ export class Input {
|
|
|
96
93
|
this.inputmode = undefined;
|
|
97
94
|
this.helperText = undefined;
|
|
98
95
|
this.label = undefined;
|
|
99
|
-
this.labelPlacement =
|
|
96
|
+
this.labelPlacement = 'start';
|
|
100
97
|
this.max = undefined;
|
|
101
98
|
this.maxlength = undefined;
|
|
102
99
|
this.min = undefined;
|
|
@@ -110,7 +107,6 @@ export class Input {
|
|
|
110
107
|
this.shape = undefined;
|
|
111
108
|
this.spellcheck = false;
|
|
112
109
|
this.step = undefined;
|
|
113
|
-
this.size = 'medium';
|
|
114
110
|
this.type = 'text';
|
|
115
111
|
this.value = '';
|
|
116
112
|
}
|
|
@@ -153,9 +149,6 @@ export class Input {
|
|
|
153
149
|
}
|
|
154
150
|
componentWillLoad() {
|
|
155
151
|
this.inheritedAttributes = Object.assign(Object.assign({}, inheritAriaAttributes(this.el)), inheritAttributes(this.el, ['tabindex', 'title', 'data-form-type']));
|
|
156
|
-
if (this.labelPlacement === undefined) {
|
|
157
|
-
this.labelPlacement = getIonTheme(this) === 'ionic' ? ionicThemeDefaultLabelPlacement : 'start';
|
|
158
|
-
}
|
|
159
152
|
}
|
|
160
153
|
connectedCallback() {
|
|
161
154
|
const { el } = this;
|
|
@@ -258,44 +251,6 @@ export class Input {
|
|
|
258
251
|
getValue() {
|
|
259
252
|
return typeof this.value === 'number' ? this.value.toString() : (this.value || '').toString();
|
|
260
253
|
}
|
|
261
|
-
getLabelPlacement() {
|
|
262
|
-
const theme = getIonTheme(this);
|
|
263
|
-
const { el, labelPlacement } = this;
|
|
264
|
-
if (theme === 'ionic' && labelPlacement !== 'stacked' && labelPlacement !== 'floating') {
|
|
265
|
-
printIonWarning(`The "${labelPlacement}" label placement is not supported in the ${theme} theme. The default value of "${ionicThemeDefaultLabelPlacement}" will be used instead.`, el);
|
|
266
|
-
return ionicThemeDefaultLabelPlacement;
|
|
267
|
-
}
|
|
268
|
-
return labelPlacement;
|
|
269
|
-
}
|
|
270
|
-
// TODO(FW-6201): Remove this method when size is supported in ios and md
|
|
271
|
-
getSize() {
|
|
272
|
-
const theme = getIonTheme(this);
|
|
273
|
-
const { size } = this;
|
|
274
|
-
if (theme !== 'ionic' && (size === 'large' || size === 'xlarge')) {
|
|
275
|
-
printIonWarning(`The "${size}" size is not supported in the ${theme} theme.`);
|
|
276
|
-
// Fallback to medium size, which is the default size for all themes.
|
|
277
|
-
return 'medium';
|
|
278
|
-
}
|
|
279
|
-
return size;
|
|
280
|
-
}
|
|
281
|
-
getShape() {
|
|
282
|
-
const theme = getIonTheme(this);
|
|
283
|
-
const { shape } = this;
|
|
284
|
-
// TODO(ROU-5475): Remove the check for `soft` when the shape is supported in ios and md.
|
|
285
|
-
if ((theme === 'ios' && shape === 'round') || (theme !== 'ionic' && shape === 'soft')) {
|
|
286
|
-
printIonWarning(`The "${shape}" shape is not supported in the ${theme} theme.`);
|
|
287
|
-
return undefined;
|
|
288
|
-
}
|
|
289
|
-
if (shape !== undefined) {
|
|
290
|
-
return shape;
|
|
291
|
-
}
|
|
292
|
-
// TODO(FW-6229): Update this when the default shape has been decided.
|
|
293
|
-
if (theme !== 'ionic') {
|
|
294
|
-
return undefined;
|
|
295
|
-
}
|
|
296
|
-
// Fallback to round shape, which is the default shape for the ionic theme.
|
|
297
|
-
return 'round';
|
|
298
|
-
}
|
|
299
254
|
checkClearOnEdit(ev) {
|
|
300
255
|
if (!this.shouldClearOnEdit()) {
|
|
301
256
|
return;
|
|
@@ -392,9 +347,9 @@ export class Input {
|
|
|
392
347
|
* when fill="outline".
|
|
393
348
|
*/
|
|
394
349
|
renderLabelContainer() {
|
|
395
|
-
const
|
|
396
|
-
const hasOutlineFill = this.fill === 'outline';
|
|
397
|
-
if (hasOutlineFill
|
|
350
|
+
const mode = getIonMode(this);
|
|
351
|
+
const hasOutlineFill = mode === 'md' && this.fill === 'outline';
|
|
352
|
+
if (hasOutlineFill) {
|
|
398
353
|
/**
|
|
399
354
|
* The outline fill has a special outline
|
|
400
355
|
* that appears around the input and the label.
|
|
@@ -411,40 +366,19 @@ export class Input {
|
|
|
411
366
|
];
|
|
412
367
|
}
|
|
413
368
|
/**
|
|
414
|
-
* If not using the outline style,
|
|
415
|
-
*
|
|
416
|
-
* theme, the outline will be rendered elsewhere.
|
|
369
|
+
* If not using the outline style,
|
|
370
|
+
* we can render just the label.
|
|
417
371
|
*/
|
|
418
372
|
return this.renderLabel();
|
|
419
373
|
}
|
|
420
|
-
/**
|
|
421
|
-
* Get the icon to use for the clear icon.
|
|
422
|
-
* If an icon is set on the component, use that.
|
|
423
|
-
* Otherwise, use the icon set in the config.
|
|
424
|
-
* If no icon is set in the config, use the default icon.
|
|
425
|
-
*
|
|
426
|
-
* @internal
|
|
427
|
-
* @returns {string} The icon to use for the clear icon.
|
|
428
|
-
*/
|
|
429
|
-
get inputClearIcon() {
|
|
430
|
-
const theme = getIonTheme(this);
|
|
431
|
-
const defaultClearIcon = theme === 'ios' ? closeCircle : closeSharp;
|
|
432
|
-
const icon = this.clearInputIcon;
|
|
433
|
-
if (icon !== undefined) {
|
|
434
|
-
// Icon is set on the component.
|
|
435
|
-
return icon;
|
|
436
|
-
}
|
|
437
|
-
return config.get('inputClearIcon', defaultClearIcon);
|
|
438
|
-
}
|
|
439
374
|
render() {
|
|
440
|
-
const { disabled, fill, readonly, inputId, el, hasFocus,
|
|
441
|
-
const
|
|
375
|
+
const { disabled, fill, readonly, shape, inputId, labelPlacement, el, hasFocus, clearInputIcon } = this;
|
|
376
|
+
const mode = getIonMode(this);
|
|
442
377
|
const value = this.getValue();
|
|
443
|
-
const size = this.getSize();
|
|
444
|
-
const shape = this.getShape();
|
|
445
378
|
const inItem = hostContext('ion-item', this.el);
|
|
446
|
-
const shouldRenderHighlight =
|
|
447
|
-
const
|
|
379
|
+
const shouldRenderHighlight = mode === 'md' && fill !== 'outline' && !inItem;
|
|
380
|
+
const defaultClearIcon = mode === 'ios' ? closeCircle : closeSharp;
|
|
381
|
+
const clearIconData = clearInputIcon !== null && clearInputIcon !== void 0 ? clearInputIcon : defaultClearIcon;
|
|
448
382
|
const hasValue = this.hasValue();
|
|
449
383
|
const hasStartEndSlots = el.querySelector('[slot="start"], [slot="end"]') !== null;
|
|
450
384
|
/**
|
|
@@ -465,30 +399,18 @@ export class Input {
|
|
|
465
399
|
* TODO(FW-5592): Remove hasStartEndSlots condition
|
|
466
400
|
*/
|
|
467
401
|
const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
|
|
468
|
-
return (h(Host, { key: '
|
|
469
|
-
[
|
|
402
|
+
return (h(Host, { key: '907ce98a82b5cfae5a08504cd79e00a2330b7444', class: createColorClasses(this.color, {
|
|
403
|
+
[mode]: true,
|
|
470
404
|
'has-value': hasValue,
|
|
471
405
|
'has-focus': hasFocus,
|
|
472
406
|
'label-floating': labelShouldFloat,
|
|
473
407
|
[`input-fill-${fill}`]: fill !== undefined,
|
|
474
408
|
[`input-shape-${shape}`]: shape !== undefined,
|
|
475
|
-
[`input-size-${size}`]: true,
|
|
476
409
|
[`input-label-placement-${labelPlacement}`]: true,
|
|
477
410
|
'in-item': inItem,
|
|
478
411
|
'in-item-color': hostContext('ion-item.ion-color', this.el),
|
|
479
412
|
'input-disabled': disabled,
|
|
480
|
-
|
|
481
|
-
}) }, h("label", { key: '350594ad2c6a512616d4a49a328c407ff18c6933', class: "input-wrapper", htmlFor: inputId }, this.renderLabelContainer(), h("div", { key: 'bfd407e6b4ce04f70531ab368f24ff7005004c78', class: "native-wrapper" },
|
|
482
|
-
/**
|
|
483
|
-
* For the ionic theme, we render the outline container here
|
|
484
|
-
* instead of higher up, so it can be positioned relative to
|
|
485
|
-
* the native wrapper instead of the <label> element or the
|
|
486
|
-
* entire component. This allows the label text to be positioned
|
|
487
|
-
* above the outline, while staying within the bounds of the
|
|
488
|
-
* <label> element, ensuring that clicking the label text
|
|
489
|
-
* focuses the input.
|
|
490
|
-
*/
|
|
491
|
-
theme === 'ionic' && fill === 'outline' && h("div", { key: 'ce9a9c1be75fdb7db26c6896fef7540b5095066f', class: "input-outline" }), h("slot", { key: '0bb13e899d99e049aa8abfaa37368ea564ef9f60', name: "start" }), h("input", Object.assign({ key: '09aa379cebd047867a5e147866dd159f6b2d03ab', class: "native-input", ref: (input) => (this.nativeInput = input), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder || '', readOnly: readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, type: this.type, value: value, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeydown, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd }, this.inheritedAttributes)), clearInput && !readonly && !disabled && (h("button", { key: '39c27ad8c71f8c87617fedd9b7fc22d67e6b3c43', "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: (ev) => {
|
|
413
|
+
}) }, h("label", { key: '59d5bb45d2a5b828bba0ed8687a632a551e2f4d8', class: "input-wrapper", htmlFor: inputId }, this.renderLabelContainer(), h("div", { key: 'f93f129d08246d0e9a601c100d718534d6403853', class: "native-wrapper" }, h("slot", { key: '54eeb1a6bace662b7eb0d7e27180ea3d7e3a3729', name: "start" }), h("input", Object.assign({ key: 'b3e0be55bc1a4a539ae3b0fdcf7fc078723cca16', class: "native-input", ref: (input) => (this.nativeInput = input), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder || '', readOnly: readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, type: this.type, value: value, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeydown, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd }, this.inheritedAttributes)), this.clearInput && !readonly && !disabled && (h("button", { key: '5f6373504a6d0d074bfbf875c794d45ea2748175', "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: (ev) => {
|
|
492
414
|
/**
|
|
493
415
|
* This prevents mobile browsers from
|
|
494
416
|
* blurring the input when the clear
|
|
@@ -503,22 +425,20 @@ export class Input {
|
|
|
503
425
|
* for screen readers as it means users would be unable to swipe past the clear button.
|
|
504
426
|
*/
|
|
505
427
|
ev.stopPropagation();
|
|
506
|
-
}, onClick: this.clearTextInput }, h("ion-icon", { key: '
|
|
428
|
+
}, onClick: this.clearTextInput }, h("ion-icon", { key: '230d77973aa83458ceb32bf52e3abe9bc322cfe6', "aria-hidden": "true", icon: clearIconData }))), h("slot", { key: '9d69ac6e8a3c4b2b303dba2478f82695d5755ed2', name: "end" })), shouldRenderHighlight && h("div", { key: 'ac61f16237ce731e0745ab72d0fc3f066252464a', class: "input-highlight" })), this.renderBottomContent()));
|
|
507
429
|
}
|
|
508
430
|
static get is() { return "ion-input"; }
|
|
509
431
|
static get encapsulation() { return "scoped"; }
|
|
510
432
|
static get originalStyleUrls() {
|
|
511
433
|
return {
|
|
512
434
|
"ios": ["input.ios.scss"],
|
|
513
|
-
"md": ["input.md.scss"]
|
|
514
|
-
"ionic": ["input.ionic.scss"]
|
|
435
|
+
"md": ["input.md.scss"]
|
|
515
436
|
};
|
|
516
437
|
}
|
|
517
438
|
static get styleUrls() {
|
|
518
439
|
return {
|
|
519
440
|
"ios": ["input.ios.css"],
|
|
520
|
-
"md": ["input.md.css"]
|
|
521
|
-
"ionic": ["input.ionic.css"]
|
|
441
|
+
"md": ["input.md.css"]
|
|
522
442
|
};
|
|
523
443
|
}
|
|
524
444
|
static get properties() {
|
|
@@ -569,7 +489,7 @@ export class Input {
|
|
|
569
489
|
"mutable": false,
|
|
570
490
|
"complexType": {
|
|
571
491
|
"original": "AutocompleteTypes",
|
|
572
|
-
"resolved": "\"name\" | \"email\" | \"
|
|
492
|
+
"resolved": "\"name\" | \"email\" | \"tel\" | \"url\" | \"on\" | \"off\" | \"honorific-prefix\" | \"given-name\" | \"additional-name\" | \"family-name\" | \"honorific-suffix\" | \"nickname\" | \"username\" | \"new-password\" | \"current-password\" | \"one-time-code\" | \"organization-title\" | \"organization\" | \"street-address\" | \"address-line1\" | \"address-line2\" | \"address-line3\" | \"address-level4\" | \"address-level3\" | \"address-level2\" | \"address-level1\" | \"country\" | \"country-name\" | \"postal-code\" | \"cc-name\" | \"cc-given-name\" | \"cc-additional-name\" | \"cc-family-name\" | \"cc-number\" | \"cc-exp\" | \"cc-exp-month\" | \"cc-exp-year\" | \"cc-csc\" | \"cc-type\" | \"transaction-currency\" | \"transaction-amount\" | \"language\" | \"bday\" | \"bday-day\" | \"bday-month\" | \"bday-year\" | \"sex\" | \"tel-country-code\" | \"tel-national\" | \"tel-area-code\" | \"tel-local\" | \"tel-extension\" | \"impp\" | \"photo\"",
|
|
573
493
|
"references": {
|
|
574
494
|
"AutocompleteTypes": {
|
|
575
495
|
"location": "import",
|
|
@@ -790,7 +710,7 @@ export class Input {
|
|
|
790
710
|
"optional": true,
|
|
791
711
|
"docs": {
|
|
792
712
|
"tags": [],
|
|
793
|
-
"text": "The fill for the item. If `\"solid\"` the item will have a background. If\n`\"outline\"` the item will be transparent with a border. Only available
|
|
713
|
+
"text": "The fill for the item. If `\"solid\"` the item will have a background. If\n`\"outline\"` the item will be transparent with a border. Only available in `md` mode."
|
|
794
714
|
},
|
|
795
715
|
"attribute": "fill",
|
|
796
716
|
"reflect": false
|
|
@@ -848,20 +768,21 @@ export class Input {
|
|
|
848
768
|
},
|
|
849
769
|
"labelPlacement": {
|
|
850
770
|
"type": "string",
|
|
851
|
-
"mutable":
|
|
771
|
+
"mutable": false,
|
|
852
772
|
"complexType": {
|
|
853
773
|
"original": "'start' | 'end' | 'floating' | 'stacked' | 'fixed'",
|
|
854
|
-
"resolved": "\"end\" | \"fixed\" | \"floating\" | \"stacked\" | \"start\"
|
|
774
|
+
"resolved": "\"end\" | \"fixed\" | \"floating\" | \"stacked\" | \"start\"",
|
|
855
775
|
"references": {}
|
|
856
776
|
},
|
|
857
777
|
"required": false,
|
|
858
|
-
"optional":
|
|
778
|
+
"optional": false,
|
|
859
779
|
"docs": {
|
|
860
780
|
"tags": [],
|
|
861
|
-
"text": "Where to place the label relative to the input.\n`\"start\"`: The label will appear to the left of the input in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the input in LTR and to the left in RTL.\n`\"floating\"`: The label will appear smaller and above the input when the input is focused or it has a value. Otherwise it will appear on top of the input.\n`\"stacked\"`: The label will appear smaller and above the input regardless even when the input is blurred or has no value.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\")
|
|
781
|
+
"text": "Where to place the label relative to the input.\n`\"start\"`: The label will appear to the left of the input in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the input in LTR and to the left in RTL.\n`\"floating\"`: The label will appear smaller and above the input when the input is focused or it has a value. Otherwise it will appear on top of the input.\n`\"stacked\"`: The label will appear smaller and above the input regardless even when the input is blurred or has no value.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\")."
|
|
862
782
|
},
|
|
863
783
|
"attribute": "label-placement",
|
|
864
|
-
"reflect": false
|
|
784
|
+
"reflect": false,
|
|
785
|
+
"defaultValue": "'start'"
|
|
865
786
|
},
|
|
866
787
|
"max": {
|
|
867
788
|
"type": "any",
|
|
@@ -1040,15 +961,15 @@ export class Input {
|
|
|
1040
961
|
"type": "string",
|
|
1041
962
|
"mutable": false,
|
|
1042
963
|
"complexType": {
|
|
1043
|
-
"original": "'
|
|
1044
|
-
"resolved": "\"
|
|
964
|
+
"original": "'round'",
|
|
965
|
+
"resolved": "\"round\" | undefined",
|
|
1045
966
|
"references": {}
|
|
1046
967
|
},
|
|
1047
968
|
"required": false,
|
|
1048
969
|
"optional": true,
|
|
1049
970
|
"docs": {
|
|
1050
971
|
"tags": [],
|
|
1051
|
-
"text": "
|
|
972
|
+
"text": "The shape of the input. If \"round\" it will have an increased border radius."
|
|
1052
973
|
},
|
|
1053
974
|
"attribute": "shape",
|
|
1054
975
|
"reflect": false
|
|
@@ -1088,24 +1009,6 @@ export class Input {
|
|
|
1088
1009
|
"attribute": "step",
|
|
1089
1010
|
"reflect": false
|
|
1090
1011
|
},
|
|
1091
|
-
"size": {
|
|
1092
|
-
"type": "string",
|
|
1093
|
-
"mutable": false,
|
|
1094
|
-
"complexType": {
|
|
1095
|
-
"original": "'medium' | 'large' | 'xlarge'",
|
|
1096
|
-
"resolved": "\"large\" | \"medium\" | \"xlarge\" | undefined",
|
|
1097
|
-
"references": {}
|
|
1098
|
-
},
|
|
1099
|
-
"required": false,
|
|
1100
|
-
"optional": true,
|
|
1101
|
-
"docs": {
|
|
1102
|
-
"tags": [],
|
|
1103
|
-
"text": "The size of the input. If \"large\", it will have an increased height. By default the\nsize is medium. This property only applies to the `\"ionic\"` theme."
|
|
1104
|
-
},
|
|
1105
|
-
"attribute": "size",
|
|
1106
|
-
"reflect": false,
|
|
1107
|
-
"defaultValue": "'medium'"
|
|
1108
|
-
},
|
|
1109
1012
|
"type": {
|
|
1110
1013
|
"type": "string",
|
|
1111
1014
|
"mutable": false,
|
|
@@ -1297,4 +1200,3 @@ export class Input {
|
|
|
1297
1200
|
}
|
|
1298
1201
|
}
|
|
1299
1202
|
let inputIds = 0;
|
|
1300
|
-
const ionicThemeDefaultLabelPlacement = 'stacked';
|
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Convert a pixels given value into rem
|
|
3
|
-
*
|
|
4
|
-
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
5
|
-
* @param context (optional) - Baseline value
|
|
6
|
-
*/
|
|
7
1
|
/**
|
|
8
2
|
* Convert a font size to a dynamic font size.
|
|
9
3
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -79,7 +73,6 @@
|
|
|
79
73
|
* @prop --highlight-color-focused: The color of the highlight on the input when focused
|
|
80
74
|
* @prop --highlight-color-valid: The color of the highlight on the input when valid
|
|
81
75
|
* @prop --highlight-color-invalid: The color of the highlight on the input when invalid
|
|
82
|
-
* @prop --text-color-invalid: The color of the error text on the input when invalid. Only applies to ionic theme.
|
|
83
76
|
*
|
|
84
77
|
* @prop --border-color: Color of the border below the input when using helper text, error text, or counter
|
|
85
78
|
* @prop --border-radius: Radius of the input. A large radius may display unevenly when using fill="outline"; if needed, use shape="round" instead or increase --padding-start.
|
|
@@ -142,18 +135,18 @@
|
|
|
142
135
|
padding-right: 0;
|
|
143
136
|
padding-top: 0;
|
|
144
137
|
padding-bottom: 0;
|
|
145
|
-
color: inherit;
|
|
146
138
|
font-family: inherit;
|
|
147
139
|
font-size: inherit;
|
|
148
140
|
font-style: inherit;
|
|
149
141
|
font-weight: inherit;
|
|
150
142
|
letter-spacing: inherit;
|
|
151
|
-
text-align: inherit;
|
|
152
143
|
text-decoration: inherit;
|
|
153
144
|
text-indent: inherit;
|
|
154
145
|
text-overflow: inherit;
|
|
155
146
|
text-transform: inherit;
|
|
147
|
+
text-align: inherit;
|
|
156
148
|
white-space: inherit;
|
|
149
|
+
color: inherit;
|
|
157
150
|
display: inline-block;
|
|
158
151
|
position: relative;
|
|
159
152
|
flex: 1;
|
|
@@ -613,12 +606,6 @@
|
|
|
613
606
|
display: none;
|
|
614
607
|
}
|
|
615
608
|
|
|
616
|
-
/**
|
|
617
|
-
* Convert a pixels given value into rem
|
|
618
|
-
*
|
|
619
|
-
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
620
|
-
* @param context (optional) - Baseline value
|
|
621
|
-
*/
|
|
622
609
|
/**
|
|
623
610
|
* Convert a font size to a dynamic font size.
|
|
624
611
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -674,12 +661,6 @@
|
|
|
674
661
|
* }
|
|
675
662
|
* }
|
|
676
663
|
*/
|
|
677
|
-
/**
|
|
678
|
-
* Convert a pixels given value into rem
|
|
679
|
-
*
|
|
680
|
-
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
681
|
-
* @param context (optional) - Baseline value
|
|
682
|
-
*/
|
|
683
664
|
/**
|
|
684
665
|
* Convert a font size to a dynamic font size.
|
|
685
666
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -735,12 +716,6 @@
|
|
|
735
716
|
* }
|
|
736
717
|
* }
|
|
737
718
|
*/
|
|
738
|
-
/**
|
|
739
|
-
* Convert a pixels given value into rem
|
|
740
|
-
*
|
|
741
|
-
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
742
|
-
* @param context (optional) - Baseline value
|
|
743
|
-
*/
|
|
744
719
|
/**
|
|
745
720
|
* Convert a font size to a dynamic font size.
|
|
746
721
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -866,12 +841,6 @@
|
|
|
866
841
|
max-width: calc(100% / 0.75);
|
|
867
842
|
}
|
|
868
843
|
|
|
869
|
-
/**
|
|
870
|
-
* Convert a pixels given value into rem
|
|
871
|
-
*
|
|
872
|
-
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
873
|
-
* @param context (optional) - Baseline value
|
|
874
|
-
*/
|
|
875
844
|
/**
|
|
876
845
|
* Convert a font size to a dynamic font size.
|
|
877
846
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -1028,9 +997,7 @@
|
|
|
1028
997
|
* Label text should not extend
|
|
1029
998
|
* beyond the bounds of the input.
|
|
1030
999
|
*/
|
|
1031
|
-
max-width: calc(
|
|
1032
|
-
(100% - var(--padding-start) - var(--padding-end) - 8px) / 0.75
|
|
1033
|
-
);
|
|
1000
|
+
max-width: calc((100% - var(--padding-start) - var(--padding-end) - 8px) / 0.75);
|
|
1034
1001
|
}
|
|
1035
1002
|
|
|
1036
1003
|
/**
|
|
@@ -1047,8 +1014,8 @@
|
|
|
1047
1014
|
}
|
|
1048
1015
|
|
|
1049
1016
|
:host(.input-fill-outline) .input-outline-container {
|
|
1050
|
-
right: 0;
|
|
1051
1017
|
left: 0;
|
|
1018
|
+
right: 0;
|
|
1052
1019
|
top: 0;
|
|
1053
1020
|
bottom: 0;
|
|
1054
1021
|
display: flex;
|
|
@@ -1155,12 +1122,6 @@
|
|
|
1155
1122
|
border-top: none;
|
|
1156
1123
|
}
|
|
1157
1124
|
|
|
1158
|
-
/**
|
|
1159
|
-
* Convert a pixels given value into rem
|
|
1160
|
-
*
|
|
1161
|
-
* @param pixels - Value in pixels to be converted (i.e. px)
|
|
1162
|
-
* @param context (optional) - Baseline value
|
|
1163
|
-
*/
|
|
1164
1125
|
/**
|
|
1165
1126
|
* Convert a font size to a dynamic font size.
|
|
1166
1127
|
* Fonts that participate in Dynamic Type should use
|
|
@@ -100,69 +100,3 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, screenshot, c
|
|
|
100
100
|
});
|
|
101
101
|
});
|
|
102
102
|
});
|
|
103
|
-
configs({ modes: ['ionic-md'] }).forEach(({ title, screenshot, config }) => {
|
|
104
|
-
test.describe(title('input: clear button in ionic theme, visual checks'), () => {
|
|
105
|
-
test('should not have visual regressions', async ({ page }) => {
|
|
106
|
-
await page.setContent(`
|
|
107
|
-
<ion-input
|
|
108
|
-
label="Label"
|
|
109
|
-
label-placement="stacked"
|
|
110
|
-
clear-input="true"
|
|
111
|
-
value="Text"
|
|
112
|
-
></ion-input>
|
|
113
|
-
`, config);
|
|
114
|
-
const input = page.locator('ion-input');
|
|
115
|
-
await input.evaluate((el) => el.setFocus());
|
|
116
|
-
await page.waitForChanges();
|
|
117
|
-
await expect(input).toHaveScreenshot(screenshot(`input-with-clear-button`));
|
|
118
|
-
});
|
|
119
|
-
test('should not have visual regressions when clear button is focused', async ({ page, pageUtils }) => {
|
|
120
|
-
// extra padding around input ensures focus ring doesn't get cut off at screenshot edges
|
|
121
|
-
await page.setContent(`
|
|
122
|
-
<style>
|
|
123
|
-
#container {
|
|
124
|
-
padding: 10px;
|
|
125
|
-
}
|
|
126
|
-
</style>
|
|
127
|
-
|
|
128
|
-
<div id="container">
|
|
129
|
-
<ion-input
|
|
130
|
-
label="Label"
|
|
131
|
-
label-placement="stacked"
|
|
132
|
-
clear-input="true"
|
|
133
|
-
value="Text"
|
|
134
|
-
></ion-input>
|
|
135
|
-
</div>
|
|
136
|
-
`, config);
|
|
137
|
-
const input = page.locator('ion-input');
|
|
138
|
-
await input.evaluate((el) => el.setFocus());
|
|
139
|
-
await page.waitForChanges();
|
|
140
|
-
await pageUtils.pressKeys('Tab');
|
|
141
|
-
const container = page.locator('#container');
|
|
142
|
-
await expect(container).toHaveScreenshot(screenshot(`input-clear-button-focused`));
|
|
143
|
-
});
|
|
144
|
-
});
|
|
145
|
-
});
|
|
146
|
-
configs({ modes: ['ionic-md'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
147
|
-
test.describe(title('input: clear button in ionic theme, functionality checks'), () => {
|
|
148
|
-
test('should show clear button when any part of input is focused', async ({ page, pageUtils }) => {
|
|
149
|
-
await page.setContent(`
|
|
150
|
-
<ion-input
|
|
151
|
-
label="Label"
|
|
152
|
-
label-placement="stacked"
|
|
153
|
-
clear-input="true"
|
|
154
|
-
value="Text"
|
|
155
|
-
></ion-input>
|
|
156
|
-
`, config);
|
|
157
|
-
const input = page.locator('ion-input');
|
|
158
|
-
const clearButton = input.locator('.input-clear-icon');
|
|
159
|
-
await expect(clearButton).not.toBeVisible();
|
|
160
|
-
await input.evaluate((el) => el.setFocus());
|
|
161
|
-
await expect(clearButton).toBeVisible();
|
|
162
|
-
// ensure blurring native input doesn't immediately hide clear button
|
|
163
|
-
await pageUtils.pressKeys('Tab');
|
|
164
|
-
await expect(clearButton).toBeFocused();
|
|
165
|
-
await expect(clearButton).toBeVisible();
|
|
166
|
-
});
|
|
167
|
-
});
|
|
168
|
-
});
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { expect } from "@playwright/test";
|
|
5
5
|
import { configs, test } from "../../../../utils/test/playwright/index";
|
|
6
|
-
configs({ directions: ['ltr']
|
|
6
|
+
configs({ directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
|
|
7
7
|
test.describe(title('input: bottom content'), () => {
|
|
8
8
|
test('entire input component should render correctly with no fill', async ({ page }) => {
|
|
9
9
|
await page.setContent(`
|
|
@@ -28,24 +28,6 @@ configs({ directions: ['ltr'], modes: ['md', 'ios'] }).forEach(({ title, screens
|
|
|
28
28
|
});
|
|
29
29
|
});
|
|
30
30
|
});
|
|
31
|
-
configs({ directions: ['ltr'], modes: ['ionic-md'] }).forEach(({ title, screenshot, config }) => {
|
|
32
|
-
test.describe(title('input: bottom content'), () => {
|
|
33
|
-
test('entire input component should render correctly with no fill', async ({ page }) => {
|
|
34
|
-
await page.setContent(`
|
|
35
|
-
<ion-input value="hi@ionic.io" label="Email" helper-text="Enter an email" maxlength="20" counter="true"></ion-input>
|
|
36
|
-
`, config);
|
|
37
|
-
const input = page.locator('ion-input');
|
|
38
|
-
await expect(input).toHaveScreenshot(screenshot(`input-full-bottom-no-fill`));
|
|
39
|
-
});
|
|
40
|
-
test('entire input component should render correctly with outline fill', async ({ page }) => {
|
|
41
|
-
await page.setContent(`
|
|
42
|
-
<ion-input fill="outline" value="hi@ionic.io" label="Email" helper-text="Enter an email" maxlength="20" counter="true"></ion-input>
|
|
43
|
-
`, config);
|
|
44
|
-
const input = page.locator('ion-input');
|
|
45
|
-
await expect(input).toHaveScreenshot(screenshot(`input-full-bottom-outline`));
|
|
46
|
-
});
|
|
47
|
-
});
|
|
48
|
-
});
|
|
49
31
|
/**
|
|
50
32
|
* Rendering is the same across modes
|
|
51
33
|
*/
|
|
@@ -61,7 +43,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
|
|
|
61
43
|
/**
|
|
62
44
|
* Rendering is the same across modes
|
|
63
45
|
*/
|
|
64
|
-
configs({ modes: ['md'
|
|
46
|
+
configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
|
|
65
47
|
test.describe(title('input: hint text'), () => {
|
|
66
48
|
test.describe('input: hint text functionality', () => {
|
|
67
49
|
test('helper text should be visible initially', async ({ page }) => {
|
|
@@ -80,18 +62,17 @@ configs({ modes: ['md', 'ionic-md'], directions: ['ltr'] }).forEach(({ title, sc
|
|
|
80
62
|
await expect(errorText).toBeVisible();
|
|
81
63
|
await expect(errorText).toHaveText('my error');
|
|
82
64
|
});
|
|
83
|
-
test('error text
|
|
65
|
+
test('error text should change when variable is customized', async ({ page }) => {
|
|
84
66
|
await page.setContent(`
|
|
85
67
|
<style>
|
|
86
68
|
ion-input.custom-input {
|
|
87
69
|
--highlight-color-invalid: purple;
|
|
88
|
-
--text-color-invalid: purple; /* ionic only */
|
|
89
70
|
}
|
|
90
71
|
</style>
|
|
91
72
|
<ion-input class="ion-invalid ion-touched custom-input" label="my label" error-text="my error"></ion-input>
|
|
92
73
|
`, config);
|
|
93
|
-
const
|
|
94
|
-
await expect(
|
|
74
|
+
const errorText = page.locator('ion-input .error-text');
|
|
75
|
+
await expect(errorText).toHaveScreenshot(screenshot(`input-error-custom-color`));
|
|
95
76
|
});
|
|
96
77
|
});
|
|
97
78
|
test.describe('input: hint text rendering', () => {
|