@ionic/core 8.8.20-dev.11787158518.168a2fea → 8.8.20-dev.11789504012.1a675914
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/index.js +1 -1
- package/components/ion-accordion-group.js +1 -1
- package/components/ion-accordion.js +1 -1
- package/components/ion-action-sheet.js +1 -1
- package/components/ion-alert.js +1 -1
- package/components/ion-app.js +1 -1
- package/components/ion-avatar.js +1 -1
- package/components/ion-back-button.js +1 -1
- package/components/ion-backdrop.js +1 -1
- package/components/ion-badge.js +1 -1
- package/components/ion-breadcrumb.js +1 -1
- package/components/ion-breadcrumbs.js +1 -1
- package/components/ion-button.js +1 -1
- package/components/ion-buttons.js +1 -1
- package/components/ion-card-content.js +1 -1
- package/components/ion-card-header.js +1 -1
- package/components/ion-card-subtitle.js +1 -1
- package/components/ion-card-title.js +1 -1
- package/components/ion-card.js +1 -1
- package/components/ion-checkbox.js +1 -1
- package/components/ion-chip.js +1 -1
- package/components/ion-col.js +1 -1
- package/components/ion-content.js +1 -1
- package/components/ion-datetime-button.js +1 -1
- package/components/ion-datetime.js +1 -1
- package/components/ion-divider.d.ts +11 -0
- package/components/ion-divider.js +4 -0
- package/components/ion-fab-button.js +1 -1
- package/components/ion-fab-list.js +1 -1
- package/components/ion-fab.js +1 -1
- package/components/ion-footer.js +1 -1
- package/components/ion-gallery-item.d.ts +11 -0
- package/components/ion-gallery-item.js +4 -0
- package/components/ion-gallery.d.ts +11 -0
- package/components/ion-gallery.js +4 -0
- package/components/ion-grid.js +1 -1
- package/components/ion-header.js +1 -1
- package/components/ion-icon.js +1 -1
- package/components/ion-img.js +1 -1
- package/components/ion-infinite-scroll-content.js +1 -1
- package/components/ion-infinite-scroll.js +1 -1
- package/components/ion-input-otp.js +1 -1
- package/components/ion-input-password-toggle.js +1 -1
- package/components/ion-input.js +1 -1
- package/components/ion-item-divider.js +1 -1
- package/components/ion-item-group.js +1 -1
- package/components/ion-item-option.js +1 -1
- package/components/ion-item-options.js +1 -1
- package/components/ion-item-sliding.js +1 -1
- package/components/ion-item.js +1 -1
- package/components/ion-label.js +1 -1
- package/components/ion-list-header.js +1 -1
- package/components/ion-list.js +1 -1
- package/components/ion-loading.js +1 -1
- package/components/ion-menu-button.js +1 -1
- package/components/ion-menu-toggle.js +1 -1
- package/components/ion-menu.js +1 -1
- package/components/ion-modal.js +1 -1
- package/components/ion-nav-link.js +1 -1
- package/components/ion-nav.js +1 -1
- package/components/ion-note.js +1 -1
- package/components/ion-picker-column-option.js +1 -1
- package/components/ion-picker-column.js +1 -1
- package/components/ion-picker-legacy-column.d.ts +11 -0
- package/components/ion-picker-legacy-column.js +4 -0
- package/components/ion-picker-legacy.d.ts +11 -0
- package/components/ion-picker-legacy.js +4 -0
- package/components/ion-picker.js +1 -1
- package/components/ion-popover.js +1 -1
- package/components/ion-progress-bar.js +1 -1
- package/components/ion-radio-group.js +1 -1
- package/components/ion-radio.js +1 -1
- package/components/ion-range.js +1 -1
- 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-ripple-effect.js +1 -1
- package/components/ion-route-redirect.js +1 -1
- package/components/ion-route.js +1 -1
- package/components/ion-router-link.js +1 -1
- package/components/ion-router-outlet.js +1 -1
- package/components/ion-router.js +1 -1
- package/components/ion-row.js +1 -1
- package/components/ion-searchbar.js +1 -1
- package/components/ion-segment-button.js +1 -1
- package/components/ion-segment-content.js +1 -1
- package/components/ion-segment-view.js +1 -1
- package/components/ion-segment.js +1 -1
- package/components/ion-select-modal.js +1 -1
- package/components/ion-select-option.js +1 -1
- package/components/ion-select-popover.js +1 -1
- package/components/ion-select.js +1 -1
- package/components/ion-skeleton-text.js +1 -1
- package/components/ion-spinner.js +1 -1
- package/components/ion-split-pane.js +1 -1
- package/components/ion-tab-bar.js +1 -1
- package/components/ion-tab-button.js +1 -1
- package/components/ion-tab.js +1 -1
- package/components/ion-tabs.js +1 -1
- package/components/ion-text.js +1 -1
- package/components/ion-textarea.js +1 -1
- package/components/ion-thumbnail.js +1 -1
- package/components/ion-title.js +1 -1
- package/components/ion-toast.js +1 -1
- package/components/ion-toggle.js +1 -1
- package/components/ion-toolbar.js +1 -1
- package/components/p-0MMiHJhx.js +4 -0
- package/components/p-0rXxxCTt.js +4 -0
- package/components/{p-DwpKZ6rl.js → p-B2SvA6NE.js} +1 -1
- package/components/p-B4GJERAm.js +4 -0
- package/components/p-B9_sPaDw.js +4 -0
- package/components/p-BE21dB_a.js +4 -0
- package/components/p-BJyeT56g.js +4 -0
- package/components/p-BTBa_wH7.js +4 -0
- package/components/p-BTEOs1at.js +4 -0
- package/components/p-BU8Blvqg.js +4 -0
- package/components/p-BXXTyrCp.js +4 -0
- package/components/p-BXjGM4gW.js +4 -0
- package/components/p-BXuZo5-p.js +4 -0
- package/components/p-BYRVyMu9.js +4 -0
- package/components/{p-ryyf_ItD.js → p-BZwQa9ey.js} +1 -1
- package/components/p-BZxBDeEU.js +4 -0
- package/components/p-BcWO94Sl.js +4 -0
- package/components/p-BjW8SOqw.js +4 -0
- package/components/p-Br6q6Rgq.js +4 -0
- package/components/p-BwKpO3Is.js +4 -0
- package/components/p-BwzRqsq1.js +4 -0
- package/components/p-C-cw-bM-.js +4 -0
- package/components/p-C0K6CGg9.js +4 -0
- package/components/p-C2J-Hvv3.js +4 -0
- package/components/p-C3ydXg9O.js +4 -0
- package/components/p-C5Bnq_Hm.js +4 -0
- package/components/p-C5JYXyPD.js +4 -0
- package/components/p-C898H5L0.js +4 -0
- package/components/p-C8kcgEG7.js +4 -0
- package/components/p-CEz0vNHD.js +4 -0
- package/components/p-CH8ypgvS.js +4 -0
- package/components/{p-CMLAwl_N.js → p-CKLXmqy1.js} +1 -1
- package/components/p-CMtmHGrE.js +4 -0
- package/components/p-CNlz8OTE.js +4 -0
- package/components/p-CODBQrPj.js +4 -0
- package/components/p-CToV3-ig.js +4 -0
- package/components/p-CV7PNBGr.js +4 -0
- package/components/p-CVYFPBs-.js +4 -0
- package/components/p-CgbD1udy.js +4 -0
- package/components/p-CjlmHeGM.js +4 -0
- package/components/p-ClTdIlic.js +4 -0
- package/components/p-CstXr-x9.js +4 -0
- package/components/{p-DzRT60Tw.js → p-Cu8FoYIJ.js} +1 -1
- package/components/p-CxhjkdQ_.js +4 -0
- package/components/p-D0Iqw6OZ.js +4 -0
- package/components/p-D12Xsfh7.js +4 -0
- package/components/p-DExJ63jR.js +4 -0
- package/components/p-DHvfufkW.js +4 -0
- package/components/p-DRUGmlKi.js +4 -0
- package/components/p-DYq-5riI.js +4 -0
- package/components/p-DaJxRxSQ.js +4 -0
- package/components/p-Db3A3kHi.js +4 -0
- package/components/p-Df6AAcu8.js +4 -0
- package/components/p-Dh1f5tAK.js +4 -0
- package/components/{p-63OhffQv.js → p-Di8NbWfs.js} +1 -1
- package/components/p-DqkLOArC.js +4 -0
- package/components/p-DriGEn08.js +4 -0
- package/components/p-DylrHLJF.js +4 -0
- package/components/p-WeNgVmOy.js +4 -0
- package/components/p-Wn4ujuPW.js +4 -0
- package/components/p-X6YgGSBf.js +4 -0
- package/components/p-dLA3JnNJ.js +4 -0
- package/components/p-eRqVSlkn.js +4 -0
- package/components/p-fUXE2zLc.js +4 -0
- package/components/p-o8OKV5aD.js +4 -0
- package/components/p-pztWcmzj.js +4 -0
- package/components/p-vXpMhGrs.js +4 -0
- package/css/core.css +1 -1
- package/css/core.css.map +1 -1
- package/css/display.css +1 -1
- package/css/display.css.map +1 -1
- package/css/flex-utils.css +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/bundle.ionic.css +1 -0
- package/css/ionic/bundle.ionic.css.map +1 -0
- package/css/ionic/core.ionic.css +1 -0
- package/css/ionic/core.ionic.css.map +1 -0
- package/css/ionic/global.bundle.ionic.css +1 -0
- package/css/ionic/global.bundle.ionic.css.map +1 -0
- package/css/ionic/ionic-swiper.ionic.css +1 -0
- package/css/ionic/ionic-swiper.ionic.css.map +1 -0
- package/css/ionic/link.ionic.css +1 -0
- package/css/ionic/link.ionic.css.map +1 -0
- package/css/ionic/structure.ionic.css +1 -0
- package/css/ionic/structure.ionic.css.map +1 -0
- package/css/ionic/typography.ionic.css +1 -0
- package/css/ionic/typography.ionic.css.map +1 -0
- package/css/ionic/utils.bundle.ionic.css +1 -0
- package/css/ionic/utils.bundle.ionic.css.map +1 -0
- 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 +1 -1
- package/css/utils.bundle.css.map +1 -1
- package/dist/cjs/{animation-C0mOHzej.js → animation-CxRPIayb.js} +6 -6
- package/dist/cjs/{app-globals-BREG4twP.js → app-globals-BwvlV6g7.js} +1 -1
- package/dist/cjs/{button-active-CVMevT9a.js → button-active-qCQDwE2m.js} +3 -3
- package/dist/cjs/{capacitor-DmA66EwP.js → capacitor-CRl0exFC.js} +3 -3
- package/dist/cjs/clear-button-press-controller-C7B9kyMa.js +45 -0
- package/dist/cjs/{config-CjUbvdPW.js → config-DWdFbSNK.js} +4 -5
- package/dist/cjs/{dir-zwDPRE5K.js → dir-DD0jPVH3.js} +3 -2
- package/dist/cjs/{focus-visible-CCvKiLh3.js → focus-visible-BIj-I3-C.js} +24 -0
- package/dist/cjs/{format-pp0Du3K-.js → format-COAsdjOc.js} +30 -40
- package/dist/cjs/{framework-delegate-Dfo5XsGv.js → framework-delegate-IvkF1VuM.js} +10 -6
- package/dist/cjs/{gesture-controller-BDUH7687.js → gesture-controller-dtqlP_q4.js} +8 -15
- package/dist/cjs/{haptic-Ch-X4gRx.js → haptic-DG25gZzb.js} +4 -3
- package/dist/cjs/{helpers-YPQybDph.js → helpers-Dhimwhpn.js} +74 -7
- package/dist/cjs/{index-DwlRtFZe.js → index-BJ2-LydH.js} +3 -9
- package/dist/cjs/{index-zVCah4Uz.js → index-Bsq0SbXc.js} +2 -2
- package/dist/cjs/{index-uvry__L4.js → index-C1knGA9x.js} +65 -33
- package/dist/cjs/{index-wOmugbdg.js → index-CxDnX7hd.js} +2 -0
- package/dist/cjs/{index-DXsPSne6.js → index-DhDV4RxJ.js} +16 -15
- package/dist/cjs/{index-BLdJCcJY.js → index-DuleInoh.js} +5 -5
- package/dist/cjs/{index-B7zJsYWS.js → index-YYUVCfP-.js} +3 -3
- package/dist/cjs/{index-DDg31ZF5.js → index-yon1HGB7.js} +10 -9
- package/dist/cjs/index.cjs.js +18 -18
- package/dist/cjs/{input-shims-Cbu1fcye.js → input-shims-BgJcHtqI.js} +23 -20
- package/dist/cjs/input.utils--RmR5lVe.js +150 -0
- package/dist/cjs/ion-accordion_2.cjs.entry.js +376 -376
- package/dist/cjs/ion-action-sheet.cjs.entry.js +87 -179
- package/dist/cjs/ion-alert.cjs.entry.js +126 -251
- package/dist/cjs/ion-app_8.cjs.entry.js +608 -461
- package/dist/cjs/ion-avatar_3.cjs.entry.js +125 -19
- package/dist/cjs/ion-back-button.cjs.entry.js +49 -65
- package/dist/cjs/ion-backdrop.cjs.entry.js +22 -23
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +157 -210
- package/dist/cjs/ion-button_2.cjs.entry.js +118 -153
- package/dist/cjs/ion-card_5.cjs.entry.js +80 -110
- package/dist/cjs/ion-checkbox.cjs.entry.js +134 -160
- package/dist/cjs/ion-chip.cjs.entry.js +56 -21
- package/dist/cjs/ion-col_3.cjs.entry.js +61 -186
- package/dist/cjs/ion-datetime-button.cjs.entry.js +248 -256
- package/dist/cjs/ion-datetime_3.cjs.entry.js +3210 -0
- package/dist/cjs/ion-divider.cjs.entry.js +51 -0
- package/dist/cjs/ion-fab_3.cjs.entry.js +109 -155
- package/dist/cjs/ion-gallery-item.cjs.entry.js +59 -0
- package/dist/cjs/ion-gallery.cjs.entry.js +608 -0
- package/dist/cjs/ion-img.cjs.entry.js +17 -35
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +157 -109
- package/dist/cjs/ion-input-otp.cjs.entry.js +437 -435
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +54 -40
- package/dist/cjs/ion-input.cjs.entry.js +305 -351
- package/dist/cjs/ion-item-option_3.cjs.entry.js +512 -137
- package/dist/cjs/ion-item_8.cjs.entry.js +186 -218
- package/dist/cjs/ion-loading.cjs.entry.js +69 -152
- package/dist/cjs/ion-menu_3.cjs.entry.js +136 -182
- package/dist/cjs/ion-modal.cjs.entry.js +501 -571
- package/dist/cjs/ion-nav_2.cjs.entry.js +164 -104
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +40 -40
- package/dist/cjs/ion-picker-column.cjs.entry.js +410 -422
- package/dist/cjs/ion-picker.cjs.entry.js +401 -406
- package/dist/cjs/ion-popover.cjs.entry.js +212 -324
- package/dist/cjs/ion-progress-bar.cjs.entry.js +48 -36
- package/dist/cjs/ion-radio_2.cjs.entry.js +162 -217
- package/dist/cjs/ion-range.cjs.entry.js +251 -309
- package/dist/cjs/ion-refresher_2.cjs.entry.js +127 -175
- package/dist/cjs/ion-reorder_2.cjs.entry.js +47 -60
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +26 -18
- package/dist/cjs/ion-route_4.cjs.entry.js +76 -179
- package/dist/cjs/ion-searchbar.cjs.entry.js +305 -308
- package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
- package/dist/cjs/ion-segment-view.cjs.entry.js +27 -28
- package/dist/cjs/ion-segment_2.cjs.entry.js +141 -177
- package/dist/cjs/ion-select-modal.cjs.entry.js +71 -50
- package/dist/cjs/ion-select_3.cjs.entry.js +416 -507
- package/dist/cjs/ion-spinner.cjs.entry.js +36 -28
- package/dist/cjs/ion-split-pane.cjs.entry.js +25 -34
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +180 -117
- package/dist/cjs/ion-tab_2.cjs.entry.js +30 -55
- package/dist/cjs/ion-text.cjs.entry.js +7 -13
- package/dist/cjs/ion-textarea.cjs.entry.js +310 -303
- package/dist/cjs/ion-toast.cjs.entry.js +170 -265
- package/dist/cjs/ion-toggle.cjs.entry.js +172 -184
- package/dist/cjs/ionic-global-DYLhJaw7.js +519 -0
- package/dist/cjs/ionic.cjs.js +4 -4
- package/dist/cjs/{ios.transition-zTmJz8T-.js → ios.transition-Blgf-vZU.js} +21 -15
- package/dist/cjs/{item-multiple-inputs-BdYSbfKN.js → item-multiple-inputs-DKn76MYO.js} +1 -1
- package/dist/cjs/{keyboard-cHxZlTyz.js → keyboard-BgioTbwQ.js} +3 -3
- package/dist/cjs/{keyboard-Cix5TVkD.js → keyboard-Otnp8OQI.js} +5 -4
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/{md.transition-nb_4pUXu.js → md.transition-ClgvbGfq.js} +11 -9
- package/dist/cjs/notch-controller-0hkmmSGo.js +155 -0
- package/dist/cjs/{overlay-control-label-D2sdL2O8.js → overlay-control-label-DnRLQR1t.js} +13 -11
- package/dist/cjs/{overlays-KaNVDNqC.js → overlays-Bxjqh2m3.js} +336 -60
- package/dist/cjs/scroll-hide-controller-qWMU5yOk.js +345 -0
- package/dist/cjs/{select-option-render-pULCGldr.js → select-option-render-BqJEK1N1.js} +4 -3
- package/dist/cjs/{status-tap-o9IIymsP.js → status-tap-ClA8u57t.js} +5 -4
- package/dist/cjs/{swipe-back-B7X9VOlH.js → swipe-back-4vY7mi8i.js} +6 -5
- package/dist/cjs/{theme-Bw0rpaNN.js → theme-IlOsGAz7.js} +26 -7
- package/dist/cjs/validity-QmuwEptc.js +51 -0
- package/dist/collection/collection-manifest.json +13 -1
- package/dist/collection/components/accordion/accordion.ionic.css +201 -0
- package/dist/collection/components/accordion/accordion.ios.css +73 -58
- package/dist/collection/components/accordion/accordion.js +331 -324
- package/dist/collection/components/accordion/accordion.md.css +67 -59
- package/dist/collection/components/accordion-group/accordion-group.ionic.css +93 -0
- package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
- package/dist/collection/components/accordion-group/accordion-group.js +69 -56
- package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
- package/dist/collection/components/action-sheet/action-sheet.ionic.css +494 -0
- package/dist/collection/components/action-sheet/action-sheet.ios.css +184 -54
- package/dist/collection/components/action-sheet/action-sheet.js +76 -166
- package/dist/collection/components/action-sheet/action-sheet.md.css +179 -55
- package/dist/collection/components/action-sheet/test/basic/fixture.js +0 -3
- package/dist/collection/components/alert/alert.ionic.css +787 -0
- package/dist/collection/components/alert/alert.ios.css +247 -54
- package/dist/collection/components/alert/alert.js +113 -236
- package/dist/collection/components/alert/alert.md.css +243 -56
- package/dist/collection/components/app/app.js +15 -86
- package/dist/collection/components/avatar/avatar.ionic.css +385 -0
- package/dist/collection/components/avatar/avatar.ios.css +7 -33
- package/dist/collection/components/avatar/avatar.js +120 -4
- package/dist/collection/components/avatar/avatar.md.css +51 -0
- package/dist/collection/components/back-button/back-button.ios.css +60 -48
- package/dist/collection/components/back-button/back-button.js +45 -61
- package/dist/collection/components/back-button/back-button.md.css +60 -48
- package/dist/collection/components/backdrop/backdrop.ionic.css +109 -0
- package/dist/collection/components/backdrop/backdrop.ios.css +56 -19
- package/dist/collection/components/backdrop/backdrop.js +26 -22
- package/dist/collection/components/backdrop/backdrop.md.css +56 -19
- package/dist/collection/components/badge/badge.ionic.css +272 -0
- package/dist/collection/components/badge/badge.ios.css +137 -12
- package/dist/collection/components/badge/badge.js +145 -15
- package/dist/collection/components/badge/badge.md.css +122 -12
- package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
- package/dist/collection/components/breadcrumb/breadcrumb.js +60 -99
- package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
- package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +99 -112
- package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
- package/dist/collection/components/button/button.ionic.css +644 -0
- package/dist/collection/components/button/button.ios.css +154 -46
- package/dist/collection/components/button/button.js +122 -157
- package/dist/collection/components/button/button.md.css +150 -50
- package/dist/collection/components/buttons/buttons.ionic.css +97 -0
- package/dist/collection/components/buttons/buttons.ios.css +59 -7
- package/dist/collection/components/buttons/buttons.js +29 -21
- package/dist/collection/components/buttons/buttons.md.css +55 -3
- package/dist/collection/components/card/card.ionic.css +144 -0
- package/dist/collection/components/card/card.ios.css +65 -14
- package/dist/collection/components/card/card.js +61 -63
- package/dist/collection/components/card/card.md.css +65 -14
- package/dist/collection/components/card-content/card-content.ionic.css +89 -0
- package/dist/collection/components/card-content/card-content.ios.css +20 -35
- package/dist/collection/components/card-content/card-content.js +12 -10
- package/dist/collection/components/card-content/card-content.md.css +20 -35
- package/dist/collection/components/card-header/card-header.ionic.css +85 -0
- package/dist/collection/components/card-header/card-header.ios.css +27 -15
- package/dist/collection/components/card-header/card-header.js +20 -21
- package/dist/collection/components/card-header/card-header.md.css +27 -15
- package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +144 -0
- package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
- package/dist/collection/components/card-subtitle/card-subtitle.js +11 -14
- package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
- package/dist/collection/components/card-title/card-title.ios.css +73 -0
- package/dist/collection/components/card-title/card-title.js +11 -14
- package/dist/collection/components/card-title/card-title.md.css +73 -0
- package/dist/collection/components/checkbox/checkbox.ionic.css +536 -0
- package/dist/collection/components/checkbox/checkbox.ios.css +246 -115
- package/dist/collection/components/checkbox/checkbox.js +172 -157
- package/dist/collection/components/checkbox/checkbox.md.css +247 -116
- package/dist/collection/components/chip/chip.ionic.css +217 -0
- package/dist/collection/components/chip/chip.ios.css +67 -14
- package/dist/collection/components/chip/chip.js +116 -20
- package/dist/collection/components/chip/chip.md.css +67 -14
- package/dist/collection/components/col/col.css +192 -4
- package/dist/collection/components/col/col.js +212 -186
- package/dist/collection/components/content/content.css +47 -2
- package/dist/collection/components/content/content.js +78 -102
- package/dist/collection/components/datetime/datetime.ionic.css +703 -0
- package/dist/collection/components/datetime/datetime.ios.css +304 -148
- package/dist/collection/components/datetime/datetime.js +900 -1090
- package/dist/collection/components/datetime/datetime.md.css +294 -138
- package/dist/collection/components/datetime/utils/data.js +19 -18
- package/dist/collection/components/datetime/utils/format.js +11 -21
- package/dist/collection/components/datetime/utils/manipulation.js +8 -8
- package/dist/collection/components/datetime/utils/parse.js +10 -10
- package/dist/collection/components/datetime/utils/state.js +2 -8
- package/dist/collection/components/datetime/utils/validate.js +5 -4
- package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -5
- package/dist/collection/components/datetime-button/datetime-button.js +246 -253
- package/dist/collection/components/datetime-button/datetime-button.md.css +6 -5
- package/dist/collection/components/divider/divider.ionic.css +148 -0
- package/dist/collection/components/divider/divider.ios.css +87 -0
- package/dist/collection/components/divider/divider.js +94 -0
- package/dist/collection/components/divider/divider.md.css +87 -0
- package/dist/collection/components/fab/fab.css +25 -1
- package/dist/collection/components/fab/fab.js +22 -25
- package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
- package/dist/collection/components/fab-button/fab-button.js +79 -117
- package/dist/collection/components/fab-button/fab-button.md.css +20 -8
- package/dist/collection/components/fab-list/fab-list.css +12 -0
- package/dist/collection/components/fab-list/fab-list.js +20 -15
- package/dist/collection/components/footer/footer-interface.js +1 -0
- package/dist/collection/components/footer/footer.ios.css +33 -6
- package/dist/collection/components/footer/footer.js +151 -65
- package/dist/collection/components/footer/footer.md.css +40 -0
- package/dist/collection/components/gallery/gallery-constants.js +12 -0
- package/dist/collection/components/gallery/gallery-interface.js +1 -0
- package/dist/collection/components/gallery/gallery.css +15 -0
- package/dist/collection/components/gallery/gallery.js +679 -0
- package/dist/collection/components/gallery/test/utils.js +100 -0
- package/dist/collection/components/gallery-item/gallery-item.css +49 -0
- package/dist/collection/components/gallery-item/gallery-item.js +99 -0
- package/dist/collection/components/grid/grid.css +12 -0
- package/dist/collection/components/grid/grid.js +15 -9
- package/dist/collection/components/header/header-interface.js +1 -0
- package/dist/collection/components/header/header.ionic.css +250 -0
- package/dist/collection/components/header/header.ios.css +178 -133
- package/dist/collection/components/header/header.js +202 -70
- package/dist/collection/components/header/header.md.css +199 -9
- package/dist/collection/components/header/header.utils.js +6 -13
- package/dist/collection/components/img/img.js +16 -34
- package/dist/collection/components/infinite-scroll/infinite-scroll.js +164 -76
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +19 -30
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
- package/dist/collection/components/input/input.ionic.css +891 -0
- package/dist/collection/components/input/input.ios.css +247 -191
- package/dist/collection/components/input/input.js +333 -357
- package/dist/collection/components/input/input.md.css +234 -285
- package/dist/collection/components/input-otp/input-otp.ionic.css +371 -0
- package/dist/collection/components/input-otp/input-otp.ios.css +105 -60
- package/dist/collection/components/input-otp/input-otp.js +437 -432
- package/dist/collection/components/input-otp/input-otp.md.css +105 -60
- package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +78 -0
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +51 -36
- package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +61 -0
- package/dist/collection/components/item/item.ionic.css +496 -0
- package/dist/collection/components/item/item.ios.css +120 -80
- package/dist/collection/components/item/item.js +98 -113
- package/dist/collection/components/item/item.md.css +131 -79
- package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
- package/dist/collection/components/item-divider/item-divider.js +21 -23
- package/dist/collection/components/item-divider/item-divider.md.css +18 -0
- package/dist/collection/components/item-group/item-group.ios.css +12 -0
- package/dist/collection/components/item-group/item-group.js +13 -7
- package/dist/collection/components/item-group/item-group.md.css +12 -0
- package/dist/collection/components/item-option/item-option.ionic.css +277 -0
- package/dist/collection/components/item-option/item-option.ios.css +136 -29
- package/dist/collection/components/item-option/item-option.js +92 -56
- package/dist/collection/components/item-option/item-option.md.css +136 -29
- package/dist/collection/components/item-options/item-options.ionic.css +221 -0
- package/dist/collection/components/item-options/item-options.ios.css +77 -34
- package/dist/collection/components/item-options/item-options.js +20 -17
- package/dist/collection/components/item-options/item-options.md.css +77 -34
- package/dist/collection/components/item-sliding/item-sliding.ionic.css +211 -0
- package/dist/collection/components/item-sliding/item-sliding.js +441 -61
- package/dist/collection/components/item-sliding/{item-sliding.css → item-sliding.native.css} +84 -9
- package/dist/collection/components/item-sliding/test/test.utils.js +13 -0
- package/dist/collection/components/label/label.ios.css +18 -0
- package/dist/collection/components/label/label.js +15 -32
- package/dist/collection/components/label/label.md.css +18 -0
- package/dist/collection/components/list/list.ionic.css +212 -0
- package/dist/collection/components/list/list.ios.css +54 -14
- package/dist/collection/components/list/list.js +55 -19
- package/dist/collection/components/list/list.md.css +56 -16
- package/dist/collection/components/list-header/list-header.ionic.css +190 -0
- package/dist/collection/components/list-header/list-header.ios.css +82 -38
- package/dist/collection/components/list-header/list-header.js +11 -18
- package/dist/collection/components/list-header/list-header.md.css +82 -38
- package/dist/collection/components/loading/loading.ios.css +13 -1
- package/dist/collection/components/loading/loading.js +62 -143
- package/dist/collection/components/loading/loading.md.css +13 -1
- package/dist/collection/components/menu/menu.ios.css +15 -3
- package/dist/collection/components/menu/menu.js +71 -108
- package/dist/collection/components/menu/menu.md.css +15 -3
- package/dist/collection/components/menu-button/menu-button.ionic.css +236 -0
- package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
- package/dist/collection/components/menu-button/menu-button.js +43 -38
- package/dist/collection/components/menu-button/menu-button.md.css +49 -15
- package/dist/collection/components/menu-toggle/menu-toggle.js +21 -25
- package/dist/collection/components/modal/animations/ionic.enter.js +40 -0
- package/dist/collection/components/modal/animations/ionic.leave.js +28 -0
- package/dist/collection/components/modal/animations/ios.enter.js +1 -1
- package/dist/collection/components/modal/animations/md.enter.js +1 -1
- package/dist/collection/components/modal/animations/sheet.js +8 -2
- package/dist/collection/components/modal/gestures/sheet.js +86 -32
- package/dist/collection/components/modal/gestures/swipe-to-close.js +3 -15
- package/dist/collection/components/modal/modal.ionic.css +255 -0
- package/dist/collection/components/modal/modal.ios.css +178 -70
- package/dist/collection/components/modal/modal.js +272 -404
- package/dist/collection/components/modal/modal.md.css +178 -70
- package/dist/collection/components/modal/safe-area-utils.js +7 -6
- package/dist/collection/components/modal/test/fixtures.js +0 -3
- package/dist/collection/components/nav/nav.css +7 -1
- package/dist/collection/components/nav/nav.js +256 -72
- package/dist/collection/components/nav/view-controller.js +1 -7
- package/dist/collection/components/nav-link/nav-link.js +14 -21
- package/dist/collection/components/note/note.ios.css +12 -0
- package/dist/collection/components/note/note.js +11 -14
- package/dist/collection/components/note/note.md.css +12 -0
- package/dist/collection/components/picker/picker.ios.css +15 -3
- package/dist/collection/components/picker/picker.js +398 -403
- package/dist/collection/components/picker/picker.md.css +15 -3
- package/dist/collection/components/picker-column/picker-column.css +9 -5
- package/dist/collection/components/picker-column/picker-column.js +409 -418
- package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
- package/dist/collection/components/picker-column-option/picker-column-option.js +42 -38
- package/dist/collection/components/picker-column-option/picker-column-option.md.css +7 -6
- package/dist/collection/components/picker-legacy/animations/ios.enter.js +27 -0
- package/dist/collection/components/picker-legacy/animations/ios.leave.js +23 -0
- package/dist/collection/components/picker-legacy/picker-interface.js +1 -0
- package/dist/collection/components/picker-legacy/picker.ios.css +312 -0
- package/dist/collection/components/picker-legacy/picker.js +891 -0
- package/dist/collection/components/picker-legacy/picker.md.css +299 -0
- package/dist/collection/components/picker-legacy-column/picker-column.ios.css +243 -0
- package/dist/collection/components/picker-legacy-column/picker-column.js +422 -0
- package/dist/collection/components/picker-legacy-column/picker-column.md.css +234 -0
- package/dist/collection/components/picker-legacy-column/test/test.utils.js +43 -0
- package/dist/collection/components/popover/animations/ios.enter.js +2 -1
- package/dist/collection/components/popover/animations/md.enter.js +2 -1
- package/dist/collection/components/popover/popover.ionic.css +290 -0
- package/dist/collection/components/popover/popover.ios.css +15 -2
- package/dist/collection/components/popover/popover.js +199 -313
- package/dist/collection/components/popover/popover.md.css +15 -2
- package/dist/collection/components/popover/test/fixture.js +0 -1
- package/dist/collection/components/popover/utils.js +6 -4
- package/dist/collection/components/progress-bar/progress-bar.ionic.css +287 -0
- package/dist/collection/components/progress-bar/progress-bar.ios.css +48 -17
- package/dist/collection/components/progress-bar/progress-bar.js +65 -33
- package/dist/collection/components/progress-bar/progress-bar.md.css +48 -17
- package/dist/collection/components/radio/radio.ionic.css +422 -0
- package/dist/collection/components/radio/radio.ios.css +207 -102
- package/dist/collection/components/radio/radio.js +77 -108
- package/dist/collection/components/radio/radio.md.css +207 -102
- package/dist/collection/components/radio-group/radio-group.ionic.css +119 -0
- package/dist/collection/components/radio-group/radio-group.ios.css +43 -19
- package/dist/collection/components/radio-group/radio-group.js +113 -107
- package/dist/collection/components/radio-group/radio-group.md.css +43 -19
- package/dist/collection/components/radio-group/test/fixtures.js +0 -2
- package/dist/collection/components/range/range.ionic.css +567 -0
- package/dist/collection/components/range/range.ios.css +128 -85
- package/dist/collection/components/range/range.js +247 -305
- package/dist/collection/components/range/range.md.css +128 -85
- package/dist/collection/components/refresher/refresher.ios.css +14 -1
- package/dist/collection/components/refresher/refresher.js +88 -117
- package/dist/collection/components/refresher/refresher.md.css +15 -2
- package/dist/collection/components/refresher-content/refresher-content.js +37 -47
- package/dist/collection/components/reorder/reorder.ios.css +6 -0
- package/dist/collection/components/reorder/reorder.js +26 -7
- package/dist/collection/components/reorder/reorder.md.css +6 -0
- package/dist/collection/components/reorder-group/reorder-group.css +6 -0
- package/dist/collection/components/reorder-group/reorder-group.js +22 -47
- package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
- package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +215 -0
- package/dist/collection/components/ripple-effect/ripple-effect.js +26 -17
- package/dist/collection/components/route/route.js +14 -39
- package/dist/collection/components/route-redirect/route-redirect.js +0 -31
- package/dist/collection/components/router/router.js +37 -37
- package/dist/collection/components/router/utils/dom.js +7 -25
- package/dist/collection/components/router/utils/matching.js +9 -7
- package/dist/collection/components/router/utils/parser.js +1 -1
- package/dist/collection/components/router/utils/path.js +1 -0
- package/dist/collection/components/router-link/router-link.css +8 -2
- package/dist/collection/components/router-link/router-link.js +19 -40
- package/dist/collection/components/router-outlet/router-outlet.css +7 -1
- package/dist/collection/components/router-outlet/router-outlet.js +25 -83
- package/dist/collection/components/row/row.css +16 -0
- package/dist/collection/components/row/row.js +9 -2
- package/dist/collection/components/searchbar/searchbar.ionic.css +622 -0
- package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
- package/dist/collection/components/searchbar/searchbar.js +356 -321
- package/dist/collection/components/searchbar/searchbar.md.css +56 -18
- package/dist/collection/components/segment/segment.ionic.css +115 -0
- package/dist/collection/components/segment/segment.ios.css +45 -2
- package/dist/collection/components/segment/segment.js +94 -126
- package/dist/collection/components/segment/segment.md.css +45 -2
- package/dist/collection/components/segment-button/segment-button.ionic.css +352 -0
- package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
- package/dist/collection/components/segment-button/segment-button.js +46 -49
- package/dist/collection/components/segment-button/segment-button.md.css +148 -107
- package/dist/collection/components/segment-content/segment-content.js +1 -1
- package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
- package/dist/collection/components/segment-view/segment-view.js +27 -28
- package/dist/collection/components/segment-view/segment-view.md.css +6 -0
- package/dist/collection/components/select/select.ionic.css +809 -0
- package/dist/collection/components/select/select.ios.css +351 -206
- package/dist/collection/components/select/select.js +431 -431
- package/dist/collection/components/select/select.md.css +383 -230
- package/dist/collection/components/select-modal/select-modal.ionic.css +257 -0
- package/dist/collection/components/select-modal/select-modal.ios.css +293 -45
- package/dist/collection/components/select-modal/select-modal.js +81 -37
- package/dist/collection/components/select-modal/select-modal.md.css +273 -43
- package/dist/collection/components/select-modal/test/fixtures.js +1 -8
- package/dist/collection/components/select-option/select-option.js +15 -48
- package/dist/collection/components/select-popover/select-popover.ionic.css +255 -0
- package/dist/collection/components/select-popover/select-popover.ios.css +188 -124
- package/dist/collection/components/select-popover/select-popover.js +37 -44
- package/dist/collection/components/select-popover/select-popover.md.css +228 -47
- package/dist/collection/components/select-popover/test/fixtures.js +1 -8
- package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
- package/dist/collection/components/skeleton-text/skeleton-text.js +15 -15
- package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +78 -10
- package/dist/collection/components/spinner/spinner.js +55 -26
- package/dist/collection/components/spinner/spinner.native.css +199 -0
- package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
- package/dist/collection/components/split-pane/split-pane.js +28 -33
- package/dist/collection/components/split-pane/split-pane.md.css +20 -2
- package/dist/collection/components/tab/tab.js +10 -17
- package/dist/collection/components/tab-bar/tab-bar.ionic.css +249 -0
- package/dist/collection/components/tab-bar/tab-bar.ios.css +86 -43
- package/dist/collection/components/tab-bar/tab-bar.js +190 -44
- package/dist/collection/components/tab-bar/tab-bar.md.css +86 -43
- package/dist/collection/components/tab-button/tab-button.ionic.css +373 -0
- package/dist/collection/components/tab-button/tab-button.ios.css +171 -95
- package/dist/collection/components/tab-button/tab-button.js +74 -68
- package/dist/collection/components/tab-button/tab-button.md.css +137 -93
- package/dist/collection/components/tabs/tabs.css +7 -1
- package/dist/collection/components/tabs/tabs.js +23 -33
- package/dist/collection/components/text/text.css +6 -0
- package/dist/collection/components/text/text.js +7 -12
- package/dist/collection/components/textarea/textarea.ionic.css +898 -0
- package/dist/collection/components/textarea/textarea.ios.css +329 -221
- package/dist/collection/components/textarea/textarea.js +334 -302
- package/dist/collection/components/textarea/textarea.md.css +358 -231
- package/dist/collection/components/thumbnail/thumbnail.css +6 -0
- package/dist/collection/components/thumbnail/thumbnail.js +9 -2
- package/dist/collection/components/title/title.ionic.css +127 -0
- package/dist/collection/components/title/title.ios.css +32 -4
- package/dist/collection/components/title/title.js +13 -23
- package/dist/collection/components/title/title.md.css +39 -4
- package/dist/collection/components/toast/animations/utils.js +1 -1
- package/dist/collection/components/toast/toast.ionic.css +394 -0
- package/dist/collection/components/toast/toast.ios.css +84 -45
- package/dist/collection/components/toast/toast.js +178 -232
- package/dist/collection/components/toast/toast.md.css +84 -45
- package/dist/collection/components/toggle/toggle.ionic.css +512 -0
- package/dist/collection/components/toggle/toggle.ios.css +247 -127
- package/dist/collection/components/toggle/toggle.js +164 -175
- package/dist/collection/components/toggle/toggle.md.css +245 -127
- package/dist/collection/components/toolbar/test/image.svg +1 -0
- package/dist/collection/components/toolbar/toolbar.ionic.css +249 -0
- package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
- package/dist/collection/components/toolbar/toolbar.js +222 -25
- package/dist/collection/components/toolbar/toolbar.md.css +90 -47
- package/dist/collection/global/config.js +6 -4
- package/dist/collection/global/ionic-global.js +242 -20
- package/dist/collection/index.js +1 -1
- package/dist/collection/utils/animation/animation.js +3 -3
- package/dist/collection/utils/config.js +4 -5
- package/dist/collection/utils/css-value-validation.js +39 -0
- package/dist/collection/utils/focus-controller/index.js +1 -1
- package/dist/collection/utils/focus-trap.js +16 -5
- package/dist/collection/utils/focus-visible.js +22 -0
- package/dist/collection/utils/forms/clear-button-press-controller.js +40 -0
- package/dist/collection/utils/forms/index.js +1 -1
- package/dist/collection/utils/forms/validity.js +31 -0
- package/dist/collection/utils/framework-delegate.js +9 -5
- package/dist/collection/utils/gesture/gesture-controller.js +8 -15
- package/dist/collection/utils/gesture/index.js +2 -10
- package/dist/collection/utils/hardware-back-button.js +18 -3
- package/dist/collection/utils/helpers.js +72 -5
- package/dist/collection/utils/input-shims/hacks/scroll-assist.js +5 -4
- package/dist/collection/utils/input-shims/hacks/scroll-data.js +2 -1
- package/dist/collection/utils/keyboard/keyboard-controller.js +8 -6
- package/dist/collection/utils/keyboard/keyboard.js +1 -1
- package/dist/collection/utils/logging/index.js +4 -23
- package/dist/collection/utils/media.js +1 -0
- package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
- package/dist/collection/utils/menu-controller/animations/push.js +2 -1
- package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
- package/dist/collection/utils/menu-controller/index.js +2 -1
- package/dist/collection/utils/native/haptic.js +3 -2
- package/dist/collection/utils/native/keyboard.js +2 -2
- package/dist/collection/utils/native/status-bar.js +1 -1
- package/dist/collection/utils/overlay-control-label.js +13 -11
- package/dist/collection/utils/overlays.js +312 -45
- package/dist/collection/utils/platform.js +5 -4
- package/dist/collection/utils/rtl/dir.js +3 -2
- package/dist/collection/utils/sanitization/index.js +2 -2
- package/dist/collection/utils/scroll-hide-controller.js +178 -0
- package/dist/collection/utils/select-option-render.js +2 -1
- package/dist/collection/utils/slot-mutation-controller.js +2 -1
- package/dist/collection/utils/test/playwright/apply-keyboard-focus.js +1 -1
- package/dist/collection/utils/test/playwright/drag-element.js +35 -11
- package/dist/collection/utils/test/playwright/generator.js +51 -25
- package/dist/collection/utils/test/playwright/page/event-spy.js +12 -11
- package/dist/collection/utils/test/playwright/page/utils/goto.js +15 -5
- package/dist/collection/utils/test/playwright/page/utils/set-content.js +27 -4
- package/dist/collection/utils/test/playwright/page/utils/set-ion-viewport.js +3 -2
- package/dist/collection/utils/test/press-keys.js +17 -10
- package/dist/collection/utils/theme.js +26 -7
- package/dist/collection/utils/transition/ios.transition.js +14 -9
- package/dist/collection/utils/transition/md.transition.js +4 -3
- package/dist/docs.json +10054 -537
- package/dist/esm/{animation-CGFdmGk9.js → animation-BsVixxLP.js} +5 -5
- package/dist/esm/{app-globals-CYmMeGdU.js → app-globals-rPvWQFXp.js} +1 -1
- package/dist/esm/{button-active-BDOsVAiZ.js → button-active-BS8YgJRD.js} +3 -3
- package/dist/esm/{capacitor-CFERIeaU.js → capacitor-BnXrCBvt.js} +1 -1
- package/dist/esm/clear-button-press-controller-Ci6Q_x5-.js +43 -0
- package/dist/esm/{config-DWCzVL3Y.js → config-BwKpO3Is.js} +4 -5
- package/dist/esm/{dir-Dojwmvde.js → dir-o8OKV5aD.js} +3 -2
- package/dist/esm/{focus-visible-BmVRXR1y.js → focus-visible-vXpMhGrs.js} +23 -1
- package/dist/esm/{format-Dcwga61t.js → format-2WlZcMvG.js} +31 -41
- package/dist/esm/{framework-delegate-BHTU2Ip9.js → framework-delegate-P5K_3uYw.js} +10 -6
- package/dist/esm/{gesture-controller-TXPDHL13.js → gesture-controller-BTEOs1at.js} +8 -15
- package/dist/esm/{haptic-Cq4UAeka.js → haptic-ByW74Ow9.js} +4 -3
- package/dist/esm/{helpers-CAGf8Wgp.js → helpers-ChPZH7zh.js} +74 -8
- package/dist/esm/{index-DcPaH5uL.js → index-Bck1OwMs.js} +3 -9
- package/dist/esm/{index-ChhhtsGZ.js → index-C0EQceqV.js} +66 -34
- package/dist/esm/{index-Clc-28O1.js → index-C7EAbm0C.js} +5 -4
- package/dist/esm/{index-CqneaaGd.js → index-C7F1yJyV.js} +13 -12
- package/dist/esm/{index-WlteAIqz.js → index-CXSPjEca.js} +5 -5
- package/dist/esm/{index-CKM1DdGm.js → index-Mq5pCWmZ.js} +3 -3
- package/dist/esm/{index-BvabGprD.js → index-PnwG0glX.js} +2 -1
- package/dist/esm/{index-T0JxBI8V.js → index-niemeDYi.js} +2 -2
- package/dist/esm/index.js +17 -18
- package/dist/esm/{input-shims-B8sfni1e.js → input-shims-CM5m0K8T.js} +15 -12
- package/dist/esm/input.utils-DhJNJPiU.js +147 -0
- package/dist/esm/ion-accordion_2.entry.js +376 -376
- package/dist/esm/ion-action-sheet.entry.js +87 -179
- package/dist/esm/ion-alert.entry.js +126 -251
- package/dist/esm/ion-app_8.entry.js +607 -460
- package/dist/esm/ion-avatar_3.entry.js +125 -19
- package/dist/esm/ion-back-button.entry.js +49 -65
- package/dist/esm/ion-backdrop.entry.js +22 -23
- package/dist/esm/ion-breadcrumb_2.entry.js +157 -210
- package/dist/esm/ion-button_2.entry.js +118 -153
- package/dist/esm/ion-card_5.entry.js +80 -110
- package/dist/esm/ion-checkbox.entry.js +134 -160
- package/dist/esm/ion-chip.entry.js +56 -21
- package/dist/esm/ion-col_3.entry.js +61 -186
- package/dist/esm/ion-datetime-button.entry.js +248 -256
- package/dist/esm/ion-datetime_3.entry.js +3206 -0
- package/dist/esm/ion-divider.entry.js +49 -0
- package/dist/esm/ion-fab_3.entry.js +109 -155
- package/dist/esm/ion-gallery-item.entry.js +57 -0
- package/dist/esm/ion-gallery.entry.js +606 -0
- package/dist/esm/ion-img.entry.js +17 -35
- package/dist/esm/ion-infinite-scroll_2.entry.js +157 -109
- package/dist/esm/ion-input-otp.entry.js +437 -435
- package/dist/esm/ion-input-password-toggle.entry.js +54 -40
- package/dist/esm/ion-input.entry.js +303 -349
- package/dist/esm/ion-item-option_3.entry.js +512 -137
- package/dist/esm/ion-item_8.entry.js +186 -218
- package/dist/esm/ion-loading.entry.js +69 -152
- package/dist/esm/ion-menu_3.entry.js +136 -182
- package/dist/esm/ion-modal.entry.js +459 -529
- package/dist/esm/ion-nav_2.entry.js +164 -104
- package/dist/esm/ion-picker-column-option.entry.js +40 -40
- package/dist/esm/ion-picker-column.entry.js +410 -422
- package/dist/esm/ion-picker.entry.js +401 -406
- package/dist/esm/ion-popover.entry.js +212 -324
- package/dist/esm/ion-progress-bar.entry.js +48 -36
- package/dist/esm/ion-radio_2.entry.js +162 -217
- package/dist/esm/ion-range.entry.js +251 -309
- package/dist/esm/ion-refresher_2.entry.js +127 -175
- package/dist/esm/ion-reorder_2.entry.js +47 -60
- package/dist/esm/ion-ripple-effect.entry.js +26 -18
- package/dist/esm/ion-route_4.entry.js +76 -179
- package/dist/esm/ion-searchbar.entry.js +305 -308
- package/dist/esm/ion-segment-content.entry.js +2 -2
- package/dist/esm/ion-segment-view.entry.js +27 -28
- package/dist/esm/ion-segment_2.entry.js +141 -177
- package/dist/esm/ion-select-modal.entry.js +71 -50
- package/dist/esm/ion-select_3.entry.js +416 -507
- package/dist/esm/ion-spinner.entry.js +36 -28
- package/dist/esm/ion-split-pane.entry.js +25 -34
- package/dist/esm/ion-tab-bar_2.entry.js +179 -116
- package/dist/esm/ion-tab_2.entry.js +30 -55
- package/dist/esm/ion-text.entry.js +7 -13
- package/dist/esm/ion-textarea.entry.js +309 -302
- package/dist/esm/ion-toast.entry.js +149 -244
- package/dist/esm/ion-toggle.entry.js +172 -184
- package/dist/esm/ionic-global-BJDU78B6.js +508 -0
- package/dist/esm/ionic.js +5 -5
- package/dist/esm/{ios.transition-DXRCmcbC.js → ios.transition-6oGu53GR.js} +21 -15
- package/dist/esm/{item-multiple-inputs-rU8VaNNg.js → item-multiple-inputs-C6onMFOo.js} +1 -1
- package/dist/esm/{keyboard-Cj8mLJeq.js → keyboard-XukEYIFf.js} +5 -4
- package/dist/esm/{keyboard-DAF8GNJ9.js → keyboard-x-uHYVoq.js} +3 -3
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{md.transition-BMngO4i_.js → md.transition-Dy5HxiSE.js} +11 -9
- package/dist/esm/notch-controller-BYB7mUMg.js +153 -0
- package/dist/esm/{overlay-control-label-BSQPZ79H.js → overlay-control-label-CODBQrPj.js} +13 -11
- package/dist/esm/{overlays-CPmIs9Ls.js → overlays-C3YvaMgX.js} +333 -57
- package/dist/esm/scroll-hide-controller-B3MRYNXh.js +342 -0
- package/dist/esm/{select-option-render-C4m76VGH.js → select-option-render-BlKZ2H83.js} +4 -3
- package/dist/esm/{status-tap-CHB7KwIb.js → status-tap-DK-ylvU7.js} +5 -4
- package/dist/esm/{swipe-back-C9HW1bug.js → swipe-back-DFICtpMC.js} +6 -5
- package/dist/esm/theme-DaJxRxSQ.js +67 -0
- package/dist/esm/validity-BjW8SOqw.js +48 -0
- package/dist/html.html-data.json +2690 -123
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p--sroV-k-.js +4 -0
- package/dist/ionic/p-0115c2fa.entry.js +4 -0
- package/dist/ionic/p-0ac15b5f.entry.js +4 -0
- package/dist/ionic/p-0b2c58e0.entry.js +4 -0
- package/dist/ionic/p-0bfb8d9e.entry.js +4 -0
- package/dist/ionic/p-1147fa06.entry.js +4 -0
- package/dist/ionic/p-1e45586e.entry.js +4 -0
- package/dist/ionic/p-1febf200.entry.js +4 -0
- package/dist/ionic/p-208cecae.entry.js +4 -0
- package/dist/ionic/p-29f69d29.entry.js +4 -0
- package/dist/ionic/p-2b5e04c5.entry.js +4 -0
- package/dist/ionic/p-311ef139.entry.js +4 -0
- package/dist/ionic/p-3eff3411.entry.js +4 -0
- package/dist/ionic/p-3f17704b.entry.js +4 -0
- package/dist/ionic/p-46e754ae.entry.js +4 -0
- package/dist/ionic/p-4901a10b.entry.js +4 -0
- package/dist/ionic/p-4c8178d8.entry.js +4 -0
- package/dist/ionic/p-5196bee9.entry.js +4 -0
- package/dist/ionic/p-5386b094.entry.js +4 -0
- package/dist/ionic/p-54579b68.entry.js +4 -0
- package/dist/ionic/p-54baa1af.entry.js +4 -0
- package/dist/ionic/p-59e59209.entry.js +4 -0
- package/dist/ionic/p-5ad0c670.entry.js +4 -0
- package/dist/ionic/p-62602fbd.entry.js +4 -0
- package/dist/ionic/p-6b86cb62.entry.js +4 -0
- package/dist/ionic/p-7134537b.entry.js +4 -0
- package/dist/ionic/p-72eacca0.entry.js +4 -0
- package/dist/ionic/p-7ae06f6f.entry.js +4 -0
- package/dist/ionic/p-7bde9ee1.entry.js +4 -0
- package/dist/ionic/p-7f59020c.entry.js +4 -0
- package/dist/ionic/p-7k7Q1A38.js +4 -0
- package/dist/ionic/p-87ab986c.entry.js +4 -0
- package/dist/ionic/p-9dff6288.entry.js +4 -0
- package/dist/ionic/p-9e09cb80.entry.js +4 -0
- package/dist/ionic/p-BFhQ1N-L.js +4 -0
- package/dist/ionic/p-BG7tpRhR.js +4 -0
- package/dist/ionic/p-BITyMTKr.js +4 -0
- package/dist/ionic/p-BRPONI7N.js +4 -0
- package/dist/ionic/p-BTEOs1at.js +4 -0
- package/dist/ionic/p-BVdSuKmt.js +4 -0
- package/dist/ionic/p-BYRVyMu9.js +4 -0
- package/dist/ionic/p-BjW8SOqw.js +4 -0
- package/dist/ionic/p-Bpx1lBiP.js +4 -0
- package/dist/ionic/p-BwKpO3Is.js +4 -0
- package/dist/ionic/p-C-BLhfUi.js +4 -0
- package/dist/ionic/p-C-aO35cw.js +4 -0
- package/dist/ionic/p-C0EQceqV.js +5 -0
- package/dist/ionic/p-CDrQfM-I.js +4 -0
- package/dist/ionic/p-CODBQrPj.js +4 -0
- package/dist/ionic/p-CTSaffvS.js +4 -0
- package/dist/ionic/p-CaM5HwzM.js +4 -0
- package/dist/ionic/p-CgaW5Zy8.js +4 -0
- package/dist/ionic/p-Cipl19Qe.js +4 -0
- package/dist/ionic/p-CnBfCmL2.js +4 -0
- package/dist/ionic/p-D-Xit5Ye.js +4 -0
- package/dist/ionic/p-D7LIC84Z.js +4 -0
- package/dist/ionic/p-D844sgjq.js +4 -0
- package/dist/ionic/p-DWDKFjrH.js +4 -0
- package/dist/ionic/p-DaJxRxSQ.js +4 -0
- package/dist/ionic/p-DhyWlGap.js +4 -0
- package/dist/ionic/p-DiyY-i-5.js +4 -0
- package/dist/ionic/p-DrxPmT9E.js +4 -0
- package/dist/ionic/p-PnwG0glX.js +4 -0
- package/dist/ionic/p-YIsE5bNG.js +4 -0
- package/dist/ionic/p-a320cdb2.entry.js +4 -0
- package/dist/ionic/p-a37444b3.entry.js +4 -0
- package/dist/ionic/p-a4bed36b.entry.js +4 -0
- package/dist/ionic/p-a7914fe5.entry.js +4 -0
- package/dist/ionic/p-aa298c58.entry.js +4 -0
- package/dist/ionic/p-ace3062d.entry.js +4 -0
- package/dist/ionic/p-b70775b0.entry.js +4 -0
- package/dist/ionic/p-b7c75507.entry.js +4 -0
- package/dist/ionic/p-b920f149.entry.js +4 -0
- package/dist/ionic/p-c39025c0.entry.js +4 -0
- package/dist/ionic/p-c9cda5ce.entry.js +4 -0
- package/dist/ionic/p-cc314123.entry.js +4 -0
- package/dist/ionic/p-d1f42864.entry.js +4 -0
- package/dist/ionic/p-d4506138.entry.js +4 -0
- package/dist/ionic/p-dbd06d8d.entry.js +4 -0
- package/dist/ionic/p-dda49380.entry.js +4 -0
- package/dist/ionic/p-de4e8418.entry.js +4 -0
- package/dist/ionic/p-e95618c4.entry.js +4 -0
- package/dist/ionic/p-f89fcf62.entry.js +4 -0
- package/dist/ionic/p-fcce2dda.entry.js +4 -0
- package/dist/ionic/p-fd2a869f.entry.js +4 -0
- package/dist/ionic/p-fd95a423.entry.js +4 -0
- package/dist/ionic/p-fe14205b.entry.js +4 -0
- package/dist/ionic/p-i6iV8hMy.js +4 -0
- package/dist/ionic/p-nUlpIttM.js +4 -0
- package/dist/ionic/p-o8OKV5aD.js +4 -0
- package/dist/ionic/p-vXpMhGrs.js +4 -0
- package/dist/ionic/p-zRFin7iz.js +4 -0
- package/dist/ionic/p-zn4qAQ_d.js +4 -0
- package/dist/types/components/accordion/accordion.d.ts +12 -3
- package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
- package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
- package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
- package/dist/types/components/alert/alert-interface.d.ts +3 -7
- package/dist/types/components/alert/alert.d.ts +3 -2
- package/dist/types/components/app/app.d.ts +4 -5
- package/dist/types/components/avatar/avatar.d.ts +32 -0
- package/dist/types/components/back-button/back-button.d.ts +8 -1
- package/dist/types/components/backdrop/backdrop.d.ts +4 -0
- package/dist/types/components/badge/badge.d.ts +34 -1
- package/dist/types/components/breadcrumb/breadcrumb.d.ts +14 -1
- package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
- package/dist/types/components/button/button.d.ts +23 -8
- package/dist/types/components/buttons/buttons.d.ts +5 -1
- package/dist/types/components/card/card.d.ts +8 -1
- package/dist/types/components/card-content/card-content.d.ts +2 -1
- package/dist/types/components/card-header/card-header.d.ts +3 -2
- package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
- package/dist/types/components/card-title/card-title.d.ts +2 -1
- package/dist/types/components/checkbox/checkbox.d.ts +26 -5
- package/dist/types/components/chip/chip.d.ts +26 -1
- package/dist/types/components/col/col.d.ts +52 -5
- package/dist/types/components/content/content.d.ts +3 -0
- package/dist/types/components/datetime/datetime.d.ts +26 -1
- package/dist/types/components/datetime/utils/data.d.ts +5 -5
- package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
- package/dist/types/components/divider/divider.d.ts +20 -0
- package/dist/types/components/fab/fab.d.ts +4 -0
- package/dist/types/components/fab-button/fab-button.d.ts +11 -3
- package/dist/types/components/fab-list/fab-list.d.ts +4 -0
- package/dist/types/components/footer/footer-interface.d.ts +1 -0
- package/dist/types/components/footer/footer.d.ts +20 -3
- package/dist/types/components/gallery/gallery-constants.d.ts +9 -0
- package/dist/types/components/gallery/gallery-interface.d.ts +10 -0
- package/dist/types/components/gallery/gallery.d.ts +218 -0
- package/dist/types/components/gallery/test/utils.d.ts +3 -0
- package/dist/types/components/gallery-item/gallery-item.d.ts +33 -0
- package/dist/types/components/grid/grid.d.ts +4 -0
- package/dist/types/components/header/header-interface.d.ts +1 -0
- package/dist/types/components/header/header.d.ts +26 -3
- package/dist/types/components/header/header.utils.d.ts +4 -5
- package/dist/types/components/img/img.d.ts +2 -1
- package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +21 -0
- package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
- package/dist/types/components/input/input.d.ts +40 -17
- package/dist/types/components/input-otp/input-otp.d.ts +37 -0
- package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +14 -0
- package/dist/types/components/item/item.d.ts +17 -4
- package/dist/types/components/item-divider/item-divider.d.ts +2 -1
- package/dist/types/components/item-group/item-group.d.ts +4 -0
- package/dist/types/components/item-option/item-option.d.ts +18 -1
- package/dist/types/components/item-options/item-options.d.ts +4 -0
- package/dist/types/components/item-sliding/item-sliding.d.ts +47 -1
- package/dist/types/components/item-sliding/test/test.utils.d.ts +13 -0
- package/dist/types/components/label/label.d.ts +2 -1
- package/dist/types/components/list/list.d.ts +15 -1
- package/dist/types/components/list-header/list-header.d.ts +2 -1
- package/dist/types/components/loading/loading-interface.d.ts +2 -7
- package/dist/types/components/loading/loading.d.ts +3 -2
- package/dist/types/components/menu/menu.d.ts +3 -0
- package/dist/types/components/menu-button/menu-button.d.ts +8 -1
- package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
- package/dist/types/components/modal/animations/ionic.enter.d.ts +6 -0
- package/dist/types/components/modal/animations/ionic.leave.d.ts +6 -0
- package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
- package/dist/types/components/modal/modal-interface.d.ts +4 -16
- package/dist/types/components/modal/modal.d.ts +15 -12
- package/dist/types/components/nav/nav-interface.d.ts +10 -1
- package/dist/types/components/nav/nav.d.ts +27 -3
- package/dist/types/components/nav-link/nav-link.d.ts +4 -0
- package/dist/types/components/note/note.d.ts +2 -1
- package/dist/types/components/picker/picker.d.ts +2 -1
- package/dist/types/components/picker-column/picker-column.d.ts +2 -1
- package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
- package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +5 -0
- package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +5 -0
- package/dist/types/components/picker-legacy/picker-interface.d.ts +52 -0
- package/dist/types/components/picker-legacy/picker.d.ts +159 -0
- package/dist/types/components/picker-legacy-column/picker-column.d.ts +46 -0
- package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +9 -0
- package/dist/types/components/popover/popover-interface.d.ts +3 -6
- package/dist/types/components/popover/popover.d.ts +6 -5
- package/dist/types/components/progress-bar/progress-bar.d.ts +10 -1
- package/dist/types/components/radio/radio.d.ts +2 -1
- package/dist/types/components/radio-group/radio-group.d.ts +12 -0
- package/dist/types/components/range/range.d.ts +2 -1
- package/dist/types/components/refresher/refresher.d.ts +2 -1
- package/dist/types/components/refresher-content/refresher-content.d.ts +10 -0
- package/dist/types/components/reorder/reorder.d.ts +9 -0
- package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
- package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
- package/dist/types/components/route/route.d.ts +5 -1
- package/dist/types/components/router/router.d.ts +4 -0
- package/dist/types/components/router-link/router-link.d.ts +4 -0
- package/dist/types/components/router-outlet/router-outlet.d.ts +4 -8
- package/dist/types/components/row/row.d.ts +4 -0
- package/dist/types/components/searchbar/searchbar.d.ts +57 -11
- package/dist/types/components/segment/segment.d.ts +2 -1
- package/dist/types/components/segment-button/segment-button.d.ts +2 -1
- package/dist/types/components/select/select.d.ts +55 -26
- package/dist/types/components/select-modal/select-modal.d.ts +13 -0
- package/dist/types/components/select-option/select-option.d.ts +7 -4
- package/dist/types/components/select-popover/select-popover.d.ts +3 -0
- package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
- package/dist/types/components/spinner/spinner.d.ts +15 -0
- package/dist/types/components/split-pane/split-pane.d.ts +4 -0
- package/dist/types/components/tab/tab.d.ts +4 -0
- package/dist/types/components/tab-bar/tab-bar-interface.d.ts +1 -0
- package/dist/types/components/tab-bar/tab-bar.d.ts +41 -3
- package/dist/types/components/tab-button/tab-button.d.ts +12 -1
- package/dist/types/components/tabs/tabs.d.ts +3 -0
- package/dist/types/components/text/text.d.ts +2 -1
- package/dist/types/components/textarea/textarea.d.ts +58 -16
- package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
- package/dist/types/components/title/title.d.ts +4 -0
- package/dist/types/components/toast/animations/utils.d.ts +2 -2
- package/dist/types/components/toast/toast-interface.d.ts +3 -7
- package/dist/types/components/toast/toast.d.ts +19 -2
- package/dist/types/components/toggle/toggle.d.ts +18 -1
- package/dist/types/components/toolbar/toolbar.d.ts +43 -3
- package/dist/types/components.d.ts +2171 -263
- package/dist/types/global/ionic-global.d.ts +28 -2
- package/dist/types/index.d.ts +1 -1
- package/dist/types/interface.d.ts +4 -0
- package/dist/types/utils/config.d.ts +133 -3
- package/dist/types/utils/css-value-validation.d.ts +21 -0
- package/dist/types/utils/focus-trap.d.ts +1 -1
- package/dist/types/utils/focus-visible.d.ts +13 -0
- package/dist/types/utils/forms/clear-button-press-controller.d.ts +20 -0
- package/dist/types/utils/forms/index.d.ts +1 -1
- package/dist/types/utils/forms/validity.d.ts +7 -0
- package/dist/types/utils/helpers.d.ts +22 -0
- package/dist/types/utils/logging/index.d.ts +1 -2
- package/dist/types/utils/overlay-control-label.d.ts +11 -9
- package/dist/types/utils/overlays-interface.d.ts +31 -1
- package/dist/types/utils/overlays.d.ts +10 -12
- package/dist/types/utils/scroll-hide-controller.d.ts +56 -0
- package/dist/types/utils/test/playwright/drag-element.d.ts +16 -3
- package/dist/types/utils/test/playwright/generator.d.ts +31 -2
- package/dist/types/utils/test/playwright/playwright-page.d.ts +1 -1
- package/dist/types/utils/test/playwright/testExpect.d.ts +1 -1
- package/dist/types/utils/theme.d.ts +9 -0
- package/hydrate/index.js +12008 -10485
- package/hydrate/index.mjs +12008 -10485
- package/package.json +16 -56
- package/components/p--m5cCjbK.js +0 -4
- package/components/p-1jI5oW-W.js +0 -4
- package/components/p-8FN7p701.js +0 -4
- package/components/p-B4uHHhPK.js +0 -4
- package/components/p-BMPN55of.js +0 -4
- package/components/p-BNJOu1Q2.js +0 -4
- package/components/p-BOvLNVKq.js +0 -4
- package/components/p-BSQPZ79H.js +0 -4
- package/components/p-BeamQXHF.js +0 -4
- package/components/p-BhamHSw3.js +0 -4
- package/components/p-Bjig0DJK.js +0 -4
- package/components/p-BjluhQMI.js +0 -4
- package/components/p-BlsIikdZ.js +0 -4
- package/components/p-BmVRXR1y.js +0 -4
- package/components/p-BqPNzJf6.js +0 -4
- package/components/p-BrD9Xv62.js +0 -4
- package/components/p-BvJqoZ5R.js +0 -4
- package/components/p-Bz6z3Asd.js +0 -4
- package/components/p-C5KYjZWD.js +0 -4
- package/components/p-C6HnVvHO.js +0 -4
- package/components/p-C7jvh5Wy.js +0 -4
- package/components/p-C9BGR5fy.js +0 -4
- package/components/p-CB-y1CdP.js +0 -4
- package/components/p-CEW4RXZO.js +0 -4
- package/components/p-CHH3loEE.js +0 -4
- package/components/p-CIGNaXM1.js +0 -4
- package/components/p-CJKUWjmg.js +0 -4
- package/components/p-C_phlPMC.js +0 -4
- package/components/p-CbhUdtjf.js +0 -4
- package/components/p-CejmQs3h.js +0 -4
- package/components/p-CtZqa4HM.js +0 -4
- package/components/p-D7-vHX0A.js +0 -4
- package/components/p-D9qIVSWm.js +0 -4
- package/components/p-DD5fQ4EQ.js +0 -4
- package/components/p-DE-3iMNW.js +0 -4
- package/components/p-DFvZn99E.js +0 -4
- package/components/p-DHFt2rdc.js +0 -4
- package/components/p-DJztqcrH.js +0 -4
- package/components/p-DM-PrAoh.js +0 -4
- package/components/p-DSzSbVP2.js +0 -4
- package/components/p-DV85C0e0.js +0 -4
- package/components/p-DWCzVL3Y.js +0 -4
- package/components/p-D_RCyzwu.js +0 -4
- package/components/p-D_tD8r3L.js +0 -4
- package/components/p-DaA_8eqt.js +0 -4
- package/components/p-DjCtLZbF.js +0 -4
- package/components/p-Dmd2xqCe.js +0 -4
- package/components/p-Dojwmvde.js +0 -4
- package/components/p-G0TxqHfe.js +0 -4
- package/components/p-G6JR-cr_.js +0 -4
- package/components/p-GG5GhznE.js +0 -4
- package/components/p-LpMHEu3v.js +0 -4
- package/components/p-TXPDHL13.js +0 -4
- package/components/p-UIBJkZf8.js +0 -4
- package/components/p-ZjP4CjeZ.js +0 -4
- package/components/p-_IKFD3ID.js +0 -4
- package/components/p-byZM6qHV.js +0 -4
- package/components/p-dKq2jIum.js +0 -4
- package/components/p-fruGqVHh.js +0 -4
- package/components/p-iYhH60Tc.js +0 -4
- package/components/p-ia3IDdJS.js +0 -4
- package/dist/cjs/hardware-back-button-fqpYh-kd.js +0 -121
- package/dist/cjs/index-DkNv4J_i.js +0 -10
- package/dist/cjs/input.utils-BZdMWVrt.js +0 -35
- package/dist/cjs/ion-datetime.cjs.entry.js +0 -2770
- package/dist/cjs/ionic-global-k6hOWWpn.js +0 -156
- package/dist/cjs/keyboard-controller-PtZoN2GS.js +0 -167
- package/dist/cjs/slot-mutation-controller-DPHmqXdV.js +0 -397
- package/dist/cjs/validity-BpS37YFM.js +0 -19
- package/dist/collection/utils/forms/start-container-controller.js +0 -132
- package/dist/esm/hardware-back-button-gLJHMX_F.js +0 -115
- package/dist/esm/index-ZjP4CjeZ.js +0 -7
- package/dist/esm/input.utils-B1ValN_N.js +0 -33
- package/dist/esm/ion-datetime.entry.js +0 -2768
- package/dist/esm/ionic-global-BVB7BrLT.js +0 -151
- package/dist/esm/keyboard-controller-DEwoa1ev.js +0 -165
- package/dist/esm/slot-mutation-controller-DiE_C9un.js +0 -393
- package/dist/esm/theme-byZM6qHV.js +0 -48
- package/dist/esm/validity-DJztqcrH.js +0 -17
- package/dist/ionic/p-06ec7136.entry.js +0 -4
- package/dist/ionic/p-09fe4fa3.entry.js +0 -4
- package/dist/ionic/p-10d45a07.entry.js +0 -4
- package/dist/ionic/p-208c8a07.entry.js +0 -4
- package/dist/ionic/p-212474fa.entry.js +0 -4
- package/dist/ionic/p-2eef1396.entry.js +0 -4
- package/dist/ionic/p-347e005d.entry.js +0 -4
- package/dist/ionic/p-3a0b3f1d.entry.js +0 -4
- package/dist/ionic/p-3b071259.entry.js +0 -4
- package/dist/ionic/p-40424a88.entry.js +0 -4
- package/dist/ionic/p-4204184c.entry.js +0 -4
- package/dist/ionic/p-47464391.entry.js +0 -4
- package/dist/ionic/p-4eOQC00Z.js +0 -4
- package/dist/ionic/p-4f9c9126.entry.js +0 -4
- package/dist/ionic/p-5JsKPLJD.js +0 -4
- package/dist/ionic/p-5bc485c6.entry.js +0 -4
- package/dist/ionic/p-603a61e6.entry.js +0 -4
- package/dist/ionic/p-60576951.entry.js +0 -4
- package/dist/ionic/p-67a81d33.entry.js +0 -4
- package/dist/ionic/p-6affb775.entry.js +0 -4
- package/dist/ionic/p-6f120c25.entry.js +0 -4
- package/dist/ionic/p-71c82b60.entry.js +0 -4
- package/dist/ionic/p-79325ffe.entry.js +0 -4
- package/dist/ionic/p-7CBuOvEo.js +0 -4
- package/dist/ionic/p-7e4d51fa.entry.js +0 -4
- package/dist/ionic/p-7f5d4664.entry.js +0 -4
- package/dist/ionic/p-80ee82fc.entry.js +0 -4
- package/dist/ionic/p-84af7dbc.entry.js +0 -4
- package/dist/ionic/p-89ca830a.entry.js +0 -4
- package/dist/ionic/p-93b8ec8f.entry.js +0 -4
- package/dist/ionic/p-946f65c2.entry.js +0 -4
- package/dist/ionic/p-9c4b39fb.entry.js +0 -4
- package/dist/ionic/p-B1NEZUzQ.js +0 -4
- package/dist/ionic/p-B1ck5iy-.js +0 -4
- package/dist/ionic/p-B4FrqdW0.js +0 -4
- package/dist/ionic/p-BB0LlG4y.js +0 -4
- package/dist/ionic/p-BMPN55of.js +0 -4
- package/dist/ionic/p-BSQPZ79H.js +0 -4
- package/dist/ionic/p-BYEAtHr-.js +0 -4
- package/dist/ionic/p-BhamHSw3.js +0 -4
- package/dist/ionic/p-BmVRXR1y.js +0 -4
- package/dist/ionic/p-BvabGprD.js +0 -4
- package/dist/ionic/p-C-94tAim.js +0 -4
- package/dist/ionic/p-C-eHZMYE.js +0 -4
- package/dist/ionic/p-CBR_W98Z.js +0 -4
- package/dist/ionic/p-CBWAXjA5.js +0 -4
- package/dist/ionic/p-CIGNaXM1.js +0 -4
- package/dist/ionic/p-CMRtMbJc.js +0 -4
- package/dist/ionic/p-CPcPmkGv.js +0 -4
- package/dist/ionic/p-CaRuIadB.js +0 -4
- package/dist/ionic/p-Cdjxf_yg.js +0 -4
- package/dist/ionic/p-ChhhtsGZ.js +0 -5
- package/dist/ionic/p-CzS1qWve.js +0 -4
- package/dist/ionic/p-D5t_-oMk.js +0 -4
- package/dist/ionic/p-D94_RztK.js +0 -4
- package/dist/ionic/p-DJztqcrH.js +0 -4
- package/dist/ionic/p-DWCzVL3Y.js +0 -4
- package/dist/ionic/p-DjjfauRM.js +0 -4
- package/dist/ionic/p-DkUB-ROc.js +0 -4
- package/dist/ionic/p-Dn0mqQ_R.js +0 -4
- package/dist/ionic/p-Dojwmvde.js +0 -4
- package/dist/ionic/p-DplOqGUv.js +0 -4
- package/dist/ionic/p-Dst_XmZh.js +0 -4
- package/dist/ionic/p-T71k3C35.js +0 -4
- package/dist/ionic/p-TXPDHL13.js +0 -4
- package/dist/ionic/p-UIBJkZf8.js +0 -4
- package/dist/ionic/p-ZjP4CjeZ.js +0 -4
- package/dist/ionic/p-a438b193.entry.js +0 -4
- package/dist/ionic/p-babaaaa7.entry.js +0 -4
- package/dist/ionic/p-be08d500.entry.js +0 -4
- package/dist/ionic/p-be9a4f51.entry.js +0 -4
- package/dist/ionic/p-byZM6qHV.js +0 -4
- package/dist/ionic/p-c00d3092.entry.js +0 -4
- package/dist/ionic/p-c36dc8f5.entry.js +0 -4
- package/dist/ionic/p-c72a7e17.entry.js +0 -4
- package/dist/ionic/p-c8edd88c.entry.js +0 -4
- package/dist/ionic/p-ce0e380b.entry.js +0 -4
- package/dist/ionic/p-ce32912b.entry.js +0 -4
- package/dist/ionic/p-d07cf130.entry.js +0 -4
- package/dist/ionic/p-d27edeb3.entry.js +0 -4
- package/dist/ionic/p-d5d2c506.entry.js +0 -4
- package/dist/ionic/p-d5e31ca9.entry.js +0 -4
- package/dist/ionic/p-de91444f.entry.js +0 -4
- package/dist/ionic/p-ded69ceb.entry.js +0 -4
- package/dist/ionic/p-df72866d.entry.js +0 -4
- package/dist/ionic/p-e47e3151.entry.js +0 -4
- package/dist/ionic/p-e621e5e8.entry.js +0 -4
- package/dist/ionic/p-eea9cf93.entry.js +0 -4
- package/dist/ionic/p-f402f5a4.entry.js +0 -4
- package/dist/ionic/p-fe1bfbcf.entry.js +0 -4
- package/dist/ionic/p-ffb90460.entry.js +0 -4
- package/dist/types/utils/forms/start-container-controller.d.ts +0 -34
- /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
|
@@ -2,32 +2,197 @@
|
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
4
|
import { Host, forceUpdate, h } from "@stencil/core";
|
|
5
|
+
import { createClearButtonPressController } from "../../utils/forms/index";
|
|
5
6
|
import { debounceEvent, raf, componentOnReady, inheritAttributes } from "../../utils/helpers";
|
|
6
7
|
import { isRTL } from "../../utils/rtl/index";
|
|
7
|
-
import { createColorClasses } from "../../utils/theme";
|
|
8
|
+
import { createColorClasses, hostContext } from "../../utils/theme";
|
|
8
9
|
import { arrowBackSharp, closeCircle, closeSharp, searchOutline, searchSharp } from "ionicons/icons";
|
|
9
10
|
import { config } from "../../global/config";
|
|
10
|
-
import {
|
|
11
|
+
import { getIonTheme } from "../../global/ionic-global";
|
|
11
12
|
/**
|
|
12
|
-
* @virtualProp {"ios" | "md"} mode - The mode determines
|
|
13
|
+
* @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
|
|
14
|
+
* @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
|
|
13
15
|
*/
|
|
14
16
|
export class Searchbar {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
17
|
+
constructor() {
|
|
18
|
+
this.isCancelVisible = false;
|
|
19
|
+
this.shouldAlignLeft = true;
|
|
20
|
+
this.inputId = `ion-searchbar-${searchbarIds++}`;
|
|
21
|
+
this.inheritedAttributes = {};
|
|
22
|
+
this.focused = false;
|
|
23
|
+
this.noAnimate = true;
|
|
24
|
+
/** Keeps the clear button mounted for the duration of a press. */
|
|
25
|
+
this.isClearButtonPressed = false;
|
|
26
|
+
this.clearButtonPressController = createClearButtonPressController((isPressed) => (this.isClearButtonPressed = isPressed));
|
|
27
|
+
/**
|
|
28
|
+
* If `true`, enable searchbar animation.
|
|
29
|
+
*/
|
|
30
|
+
this.animated = false;
|
|
31
|
+
/**
|
|
32
|
+
* Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user.
|
|
33
|
+
* Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
|
|
34
|
+
*/
|
|
35
|
+
this.autocapitalize = 'off';
|
|
36
|
+
/**
|
|
37
|
+
* Set the input's autocomplete property.
|
|
38
|
+
*/
|
|
39
|
+
this.autocomplete = 'off';
|
|
40
|
+
/**
|
|
41
|
+
* Set the input's autocorrect property.
|
|
42
|
+
*/
|
|
43
|
+
this.autocorrect = 'off';
|
|
44
|
+
/**
|
|
45
|
+
* Set the cancel button text. Only available when the theme is `"ios"`.
|
|
46
|
+
*/
|
|
47
|
+
this.cancelButtonText = 'Cancel';
|
|
48
|
+
/**
|
|
49
|
+
* If `true`, the user cannot interact with the input.
|
|
50
|
+
*/
|
|
51
|
+
this.disabled = false;
|
|
52
|
+
/**
|
|
53
|
+
* If used in a form, set the name of the control, which is submitted with the form data.
|
|
54
|
+
*/
|
|
55
|
+
this.name = this.inputId;
|
|
56
|
+
/**
|
|
57
|
+
* Set the input's placeholder.
|
|
58
|
+
* `placeholder` can accept either plaintext or HTML as a string.
|
|
59
|
+
* To display characters normally reserved for HTML, they
|
|
60
|
+
* must be escaped. For example `<Ionic>` would become
|
|
61
|
+
* `<Ionic>`
|
|
62
|
+
*
|
|
63
|
+
* For more information: [Security Documentation](https://ionicframework.com/docs/faq/security)
|
|
64
|
+
*/
|
|
65
|
+
this.placeholder = 'Search';
|
|
66
|
+
/**
|
|
67
|
+
* Sets the behavior for the cancel button. Defaults to `"never"`.
|
|
68
|
+
* Setting to `"focus"` shows the cancel button on focus.
|
|
69
|
+
* Setting to `"never"` hides the cancel button.
|
|
70
|
+
* Setting to `"always"` shows the cancel button regardless
|
|
71
|
+
* of focus state.
|
|
72
|
+
*/
|
|
73
|
+
this.showCancelButton = 'never';
|
|
74
|
+
/**
|
|
75
|
+
* Sets the behavior for the clear button. Defaults to `"focus"`.
|
|
76
|
+
* Setting to `"focus"` shows the clear button on focus if the
|
|
77
|
+
* input is not empty.
|
|
78
|
+
* Setting to `"never"` hides the clear button.
|
|
79
|
+
* Setting to `"always"` shows the clear button regardless
|
|
80
|
+
* of focus state, but only if the input is not empty.
|
|
81
|
+
*/
|
|
82
|
+
this.showClearButton = 'always';
|
|
83
|
+
/**
|
|
84
|
+
* If `true`, enable spellcheck on the input.
|
|
85
|
+
*/
|
|
86
|
+
this.spellcheck = false;
|
|
87
|
+
/**
|
|
88
|
+
* Set the type of the input.
|
|
89
|
+
*/
|
|
90
|
+
this.type = 'search';
|
|
91
|
+
/**
|
|
92
|
+
* the value of the searchbar.
|
|
93
|
+
*/
|
|
94
|
+
this.value = '';
|
|
95
|
+
/**
|
|
96
|
+
* Clears the input field and triggers the control change.
|
|
97
|
+
*/
|
|
98
|
+
this.onClearInput = async (shouldFocus) => {
|
|
99
|
+
this.clearButtonPressController.release();
|
|
100
|
+
if (this.clearTimeout) {
|
|
101
|
+
clearTimeout(this.clearTimeout);
|
|
102
|
+
}
|
|
103
|
+
this.ionClear.emit();
|
|
104
|
+
return new Promise((resolve) => {
|
|
105
|
+
// setTimeout() fixes https://github.com/ionic-team/ionic-framework/issues/7527
|
|
106
|
+
// wait for 4 frames
|
|
107
|
+
this.clearTimeout = setTimeout(() => {
|
|
108
|
+
const value = this.getValue();
|
|
109
|
+
if (value !== '') {
|
|
110
|
+
this.value = '';
|
|
111
|
+
this.emitInputChange();
|
|
112
|
+
/**
|
|
113
|
+
* When tapping clear button
|
|
114
|
+
* ensure input is focused after
|
|
115
|
+
* clearing input so users
|
|
116
|
+
* can quickly start typing.
|
|
117
|
+
*/
|
|
118
|
+
if (shouldFocus && !this.focused) {
|
|
119
|
+
this.setFocus();
|
|
120
|
+
/**
|
|
121
|
+
* The setFocus call above will clear focusedValue,
|
|
122
|
+
* but ionChange will never have gotten a chance to
|
|
123
|
+
* fire. Manually revert focusedValue so onBlur can
|
|
124
|
+
* compare against what was in the box before the clear.
|
|
125
|
+
*/
|
|
126
|
+
this.focusedValue = value;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
resolve();
|
|
130
|
+
}, 16 * 4);
|
|
131
|
+
});
|
|
132
|
+
};
|
|
133
|
+
/**
|
|
134
|
+
* Clears the input field and tells the input to blur since
|
|
135
|
+
* the clearInput function doesn't want the input to blur
|
|
136
|
+
* then calls the custom cancel function if the user passed one in.
|
|
137
|
+
*/
|
|
138
|
+
this.onCancelSearchbar = async (ev) => {
|
|
139
|
+
if (ev) {
|
|
140
|
+
ev.preventDefault();
|
|
141
|
+
ev.stopPropagation();
|
|
142
|
+
}
|
|
143
|
+
this.ionCancel.emit();
|
|
144
|
+
// get cached values before clearing the input
|
|
145
|
+
const value = this.getValue();
|
|
146
|
+
const focused = this.focused;
|
|
147
|
+
await this.onClearInput();
|
|
148
|
+
/**
|
|
149
|
+
* If there used to be something in the box, and we weren't focused
|
|
150
|
+
* beforehand (meaning no blur fired that would already handle this),
|
|
151
|
+
* manually fire ionChange.
|
|
152
|
+
*/
|
|
153
|
+
if (value && !focused) {
|
|
154
|
+
this.emitValueChange(ev);
|
|
155
|
+
}
|
|
156
|
+
if (this.nativeInput) {
|
|
157
|
+
this.nativeInput.blur();
|
|
158
|
+
}
|
|
159
|
+
};
|
|
160
|
+
/**
|
|
161
|
+
* Update the Searchbar input value when the input changes
|
|
162
|
+
*/
|
|
163
|
+
this.onInput = (ev) => {
|
|
164
|
+
const input = ev.target;
|
|
165
|
+
if (input) {
|
|
166
|
+
this.value = input.value;
|
|
167
|
+
}
|
|
168
|
+
this.emitInputChange(ev);
|
|
169
|
+
};
|
|
170
|
+
this.onChange = (ev) => {
|
|
171
|
+
this.emitValueChange(ev);
|
|
172
|
+
};
|
|
173
|
+
/**
|
|
174
|
+
* Sets the Searchbar to not focused and checks if it should align left
|
|
175
|
+
* based on whether there is a value in the searchbar or not.
|
|
176
|
+
*/
|
|
177
|
+
this.onBlur = (ev) => {
|
|
178
|
+
this.focused = false;
|
|
179
|
+
this.ionBlur.emit();
|
|
180
|
+
this.positionElements();
|
|
181
|
+
if (this.focusedValue !== this.value) {
|
|
182
|
+
this.emitValueChange(ev);
|
|
183
|
+
}
|
|
184
|
+
this.focusedValue = undefined;
|
|
185
|
+
};
|
|
186
|
+
/**
|
|
187
|
+
* Sets the Searchbar to focused and active on input focus.
|
|
188
|
+
*/
|
|
189
|
+
this.onFocus = () => {
|
|
190
|
+
this.focused = true;
|
|
191
|
+
this.focusedValue = this.value;
|
|
192
|
+
this.ionFocus.emit();
|
|
193
|
+
this.positionElements();
|
|
194
|
+
};
|
|
195
|
+
}
|
|
31
196
|
/**
|
|
32
197
|
* lang and dir are globally enumerated attributes.
|
|
33
198
|
* As a result, creating these as properties
|
|
@@ -36,177 +201,21 @@ export class Searchbar {
|
|
|
36
201
|
* to the inner `<input>` element.
|
|
37
202
|
*/
|
|
38
203
|
onLangChanged(newValue) {
|
|
39
|
-
this.inheritedAttributes = {
|
|
40
|
-
...this.inheritedAttributes,
|
|
41
|
-
lang: newValue,
|
|
42
|
-
};
|
|
204
|
+
this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { lang: newValue });
|
|
43
205
|
forceUpdate(this);
|
|
44
206
|
}
|
|
45
207
|
onDirChanged(newValue) {
|
|
46
|
-
this.inheritedAttributes = {
|
|
47
|
-
...this.inheritedAttributes,
|
|
48
|
-
dir: newValue,
|
|
49
|
-
};
|
|
208
|
+
this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { dir: newValue });
|
|
50
209
|
forceUpdate(this);
|
|
51
210
|
}
|
|
52
|
-
/**
|
|
53
|
-
* The color to use from your application's color palette.
|
|
54
|
-
* Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
|
|
55
|
-
* For more information on colors, see [theming](/docs/theming/basics).
|
|
56
|
-
*/
|
|
57
|
-
color;
|
|
58
|
-
/**
|
|
59
|
-
* If `true`, enable searchbar animation.
|
|
60
|
-
*/
|
|
61
|
-
animated = false;
|
|
62
|
-
/**
|
|
63
|
-
* Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user.
|
|
64
|
-
* Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
|
|
65
|
-
*/
|
|
66
|
-
autocapitalize = 'off';
|
|
67
|
-
/**
|
|
68
|
-
* Set the input's autocomplete property.
|
|
69
|
-
*/
|
|
70
|
-
autocomplete = 'off';
|
|
71
|
-
/**
|
|
72
|
-
* Set the input's autocorrect property.
|
|
73
|
-
*/
|
|
74
|
-
autocorrect = false;
|
|
75
|
-
/**
|
|
76
|
-
* Set the cancel button icon. Only applies to `md` mode.
|
|
77
|
-
* Defaults to `arrow-back-sharp`.
|
|
78
|
-
*/
|
|
79
|
-
cancelButtonIcon = config.get('backButtonIcon', arrowBackSharp);
|
|
80
|
-
/**
|
|
81
|
-
* Set the cancel button text. Only applies to `ios` mode.
|
|
82
|
-
*/
|
|
83
|
-
cancelButtonText = 'Cancel';
|
|
84
|
-
/**
|
|
85
|
-
* Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
|
|
86
|
-
*/
|
|
87
|
-
clearIcon;
|
|
88
|
-
/**
|
|
89
|
-
* Set the amount of time, in milliseconds, to wait to trigger the `ionInput` event after each keystroke.
|
|
90
|
-
*/
|
|
91
|
-
debounce;
|
|
92
211
|
debounceChanged() {
|
|
93
212
|
const { ionInput, debounce, originalIonInput } = this;
|
|
94
213
|
/**
|
|
95
214
|
* If debounce is undefined, we have to manually revert the ionInput emitter in case
|
|
96
215
|
* debounce used to be set to a number. Otherwise, the event would stay debounced.
|
|
97
216
|
*/
|
|
98
|
-
this.ionInput = debounce === undefined ? originalIonInput
|
|
217
|
+
this.ionInput = debounce === undefined ? originalIonInput !== null && originalIonInput !== void 0 ? originalIonInput : ionInput : debounceEvent(ionInput, debounce);
|
|
99
218
|
}
|
|
100
|
-
/**
|
|
101
|
-
* If `true`, the user cannot interact with the input.
|
|
102
|
-
*/
|
|
103
|
-
disabled = false;
|
|
104
|
-
/**
|
|
105
|
-
* A hint to the browser for which keyboard to display.
|
|
106
|
-
* Possible values: `"none"`, `"text"`, `"tel"`, `"url"`,
|
|
107
|
-
* `"email"`, `"numeric"`, `"decimal"`, and `"search"`.
|
|
108
|
-
*/
|
|
109
|
-
inputmode;
|
|
110
|
-
/**
|
|
111
|
-
* A hint to the browser for which enter key to display.
|
|
112
|
-
* Possible values: `"enter"`, `"done"`, `"go"`, `"next"`,
|
|
113
|
-
* `"previous"`, `"search"`, and `"send"`.
|
|
114
|
-
*/
|
|
115
|
-
enterkeyhint;
|
|
116
|
-
/**
|
|
117
|
-
* This attribute specifies the maximum number of characters that the user can enter.
|
|
118
|
-
*/
|
|
119
|
-
maxlength;
|
|
120
|
-
/**
|
|
121
|
-
* This attribute specifies the minimum number of characters that the user can enter.
|
|
122
|
-
*/
|
|
123
|
-
minlength;
|
|
124
|
-
/**
|
|
125
|
-
* If used in a form, set the name of the control, which is submitted with the form data.
|
|
126
|
-
*/
|
|
127
|
-
name = this.inputId;
|
|
128
|
-
/**
|
|
129
|
-
* Set the input's placeholder.
|
|
130
|
-
* `placeholder` can accept either plaintext or HTML as a string.
|
|
131
|
-
* To display characters normally reserved for HTML, they
|
|
132
|
-
* must be escaped. For example `<Ionic>` would become
|
|
133
|
-
* `<Ionic>`
|
|
134
|
-
*
|
|
135
|
-
* For more information: [Security Documentation](https://ionicframework.com/docs/faq/security)
|
|
136
|
-
*/
|
|
137
|
-
placeholder = 'Search';
|
|
138
|
-
/**
|
|
139
|
-
* The icon to use as the search icon. Defaults to `search-outline` in
|
|
140
|
-
* `ios` mode and `search-sharp` in `md` mode.
|
|
141
|
-
*/
|
|
142
|
-
searchIcon;
|
|
143
|
-
/**
|
|
144
|
-
* Sets the behavior for the cancel button. Defaults to `"never"`.
|
|
145
|
-
* Setting to `"focus"` shows the cancel button on focus.
|
|
146
|
-
* Setting to `"never"` hides the cancel button.
|
|
147
|
-
* Setting to `"always"` shows the cancel button regardless
|
|
148
|
-
* of focus state.
|
|
149
|
-
*/
|
|
150
|
-
showCancelButton = 'never';
|
|
151
|
-
/**
|
|
152
|
-
* Sets the behavior for the clear button. Defaults to `"focus"`.
|
|
153
|
-
* Setting to `"focus"` shows the clear button on focus if the
|
|
154
|
-
* input is not empty.
|
|
155
|
-
* Setting to `"never"` hides the clear button.
|
|
156
|
-
* Setting to `"always"` shows the clear button regardless
|
|
157
|
-
* of focus state, but only if the input is not empty.
|
|
158
|
-
*/
|
|
159
|
-
showClearButton = 'always';
|
|
160
|
-
/**
|
|
161
|
-
* If `true`, enable spellcheck on the input.
|
|
162
|
-
*/
|
|
163
|
-
spellcheck = false;
|
|
164
|
-
/**
|
|
165
|
-
* Set the type of the input.
|
|
166
|
-
*/
|
|
167
|
-
type = 'search';
|
|
168
|
-
/**
|
|
169
|
-
* the value of the searchbar.
|
|
170
|
-
*/
|
|
171
|
-
value = '';
|
|
172
|
-
/**
|
|
173
|
-
* Emitted when the `value` of the `ion-searchbar` element has changed.
|
|
174
|
-
*/
|
|
175
|
-
ionInput;
|
|
176
|
-
/**
|
|
177
|
-
* The `ionChange` event is fired for `<ion-searchbar>` elements when the user
|
|
178
|
-
* modifies the element's value. Unlike the `ionInput` event, the `ionChange`
|
|
179
|
-
* event is not necessarily fired for each alteration to an element's value.
|
|
180
|
-
*
|
|
181
|
-
* The `ionChange` event is fired when the value has been committed
|
|
182
|
-
* by the user. This can happen when the element loses focus or
|
|
183
|
-
* when the "Enter" key is pressed. `ionChange` can also fire
|
|
184
|
-
* when clicking the clear or cancel buttons.
|
|
185
|
-
*
|
|
186
|
-
* This event will not emit when programmatically setting the `value` property.
|
|
187
|
-
*/
|
|
188
|
-
ionChange;
|
|
189
|
-
/**
|
|
190
|
-
* Emitted when the cancel button is clicked.
|
|
191
|
-
*/
|
|
192
|
-
ionCancel;
|
|
193
|
-
/**
|
|
194
|
-
* Emitted when the clear input button is clicked.
|
|
195
|
-
*/
|
|
196
|
-
ionClear;
|
|
197
|
-
/**
|
|
198
|
-
* Emitted when the input loses focus.
|
|
199
|
-
*/
|
|
200
|
-
ionBlur;
|
|
201
|
-
/**
|
|
202
|
-
* Emitted when the input has focus.
|
|
203
|
-
*/
|
|
204
|
-
ionFocus;
|
|
205
|
-
/**
|
|
206
|
-
* Emitted when the styles change.
|
|
207
|
-
* @internal
|
|
208
|
-
*/
|
|
209
|
-
ionStyle;
|
|
210
219
|
valueChanged() {
|
|
211
220
|
const inputEl = this.nativeInput;
|
|
212
221
|
const value = this.getValue();
|
|
@@ -224,9 +233,7 @@ export class Searchbar {
|
|
|
224
233
|
this.emitStyle();
|
|
225
234
|
}
|
|
226
235
|
componentWillLoad() {
|
|
227
|
-
this.inheritedAttributes = {
|
|
228
|
-
...inheritAttributes(this.el, ['lang', 'dir']),
|
|
229
|
-
};
|
|
236
|
+
this.inheritedAttributes = Object.assign({}, inheritAttributes(this.el, ['lang', 'dir']));
|
|
230
237
|
}
|
|
231
238
|
componentDidLoad() {
|
|
232
239
|
this.originalIonInput = this.ionInput;
|
|
@@ -237,13 +244,15 @@ export class Searchbar {
|
|
|
237
244
|
}, 300);
|
|
238
245
|
}
|
|
239
246
|
disconnectedCallback() {
|
|
247
|
+
var _a;
|
|
248
|
+
this.clearButtonPressController.destroy();
|
|
240
249
|
if (this.loadTimeout) {
|
|
241
250
|
clearTimeout(this.loadTimeout);
|
|
242
251
|
}
|
|
243
252
|
if (this.clearTimeout) {
|
|
244
253
|
clearTimeout(this.clearTimeout);
|
|
245
254
|
}
|
|
246
|
-
this.searchIconResizeObserver
|
|
255
|
+
(_a = this.searchIconResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
247
256
|
}
|
|
248
257
|
emitStyle() {
|
|
249
258
|
this.ionStyle.emit({
|
|
@@ -299,105 +308,6 @@ export class Searchbar {
|
|
|
299
308
|
const { value } = this;
|
|
300
309
|
this.ionInput.emit({ value, event });
|
|
301
310
|
}
|
|
302
|
-
/**
|
|
303
|
-
* Clears the input field and triggers the control change.
|
|
304
|
-
*/
|
|
305
|
-
onClearInput = async (shouldFocus) => {
|
|
306
|
-
if (this.clearTimeout) {
|
|
307
|
-
clearTimeout(this.clearTimeout);
|
|
308
|
-
}
|
|
309
|
-
this.ionClear.emit();
|
|
310
|
-
return new Promise((resolve) => {
|
|
311
|
-
// setTimeout() fixes https://github.com/ionic-team/ionic-framework/issues/7527
|
|
312
|
-
// wait for 4 frames
|
|
313
|
-
this.clearTimeout = setTimeout(() => {
|
|
314
|
-
const value = this.getValue();
|
|
315
|
-
if (value !== '') {
|
|
316
|
-
this.value = '';
|
|
317
|
-
this.emitInputChange();
|
|
318
|
-
/**
|
|
319
|
-
* When tapping clear button
|
|
320
|
-
* ensure input is focused after
|
|
321
|
-
* clearing input so users
|
|
322
|
-
* can quickly start typing.
|
|
323
|
-
*/
|
|
324
|
-
if (shouldFocus && !this.focused) {
|
|
325
|
-
this.setFocus();
|
|
326
|
-
/**
|
|
327
|
-
* The setFocus call above will clear focusedValue,
|
|
328
|
-
* but ionChange will never have gotten a chance to
|
|
329
|
-
* fire. Manually revert focusedValue so onBlur can
|
|
330
|
-
* compare against what was in the box before the clear.
|
|
331
|
-
*/
|
|
332
|
-
this.focusedValue = value;
|
|
333
|
-
}
|
|
334
|
-
}
|
|
335
|
-
resolve();
|
|
336
|
-
}, 16 * 4);
|
|
337
|
-
});
|
|
338
|
-
};
|
|
339
|
-
/**
|
|
340
|
-
* Clears the input field and tells the input to blur since
|
|
341
|
-
* the clearInput function doesn't want the input to blur
|
|
342
|
-
* then calls the custom cancel function if the user passed one in.
|
|
343
|
-
*/
|
|
344
|
-
onCancelSearchbar = async (ev) => {
|
|
345
|
-
if (ev) {
|
|
346
|
-
ev.preventDefault();
|
|
347
|
-
ev.stopPropagation();
|
|
348
|
-
}
|
|
349
|
-
this.ionCancel.emit();
|
|
350
|
-
// get cached values before clearing the input
|
|
351
|
-
const value = this.getValue();
|
|
352
|
-
const focused = this.focused;
|
|
353
|
-
await this.onClearInput();
|
|
354
|
-
/**
|
|
355
|
-
* If there used to be something in the box, and we weren't focused
|
|
356
|
-
* beforehand (meaning no blur fired that would already handle this),
|
|
357
|
-
* manually fire ionChange.
|
|
358
|
-
*/
|
|
359
|
-
if (value && !focused) {
|
|
360
|
-
this.emitValueChange(ev);
|
|
361
|
-
}
|
|
362
|
-
if (this.nativeInput) {
|
|
363
|
-
this.nativeInput.blur();
|
|
364
|
-
}
|
|
365
|
-
};
|
|
366
|
-
/**
|
|
367
|
-
* Update the Searchbar input value when the input changes
|
|
368
|
-
*/
|
|
369
|
-
onInput = (ev) => {
|
|
370
|
-
const input = ev.target;
|
|
371
|
-
if (input) {
|
|
372
|
-
this.value = input.value;
|
|
373
|
-
}
|
|
374
|
-
this.emitInputChange(ev);
|
|
375
|
-
};
|
|
376
|
-
onChange = (ev) => {
|
|
377
|
-
this.emitValueChange(ev);
|
|
378
|
-
};
|
|
379
|
-
/**
|
|
380
|
-
* Sets the Searchbar to not focused and checks if it should align left
|
|
381
|
-
* based on whether there is a value in the searchbar or not.
|
|
382
|
-
*/
|
|
383
|
-
onBlur = (ev) => {
|
|
384
|
-
this.focused = false;
|
|
385
|
-
this.ionBlur.emit();
|
|
386
|
-
this.positionElements();
|
|
387
|
-
if (this.focusedValue !== this.value) {
|
|
388
|
-
this.emitValueChange(ev);
|
|
389
|
-
}
|
|
390
|
-
this.focusedValue = undefined;
|
|
391
|
-
};
|
|
392
|
-
/**
|
|
393
|
-
* Sets the Searchbar to focused and active on input focus.
|
|
394
|
-
*/
|
|
395
|
-
onFocus = () => {
|
|
396
|
-
this.focused = true;
|
|
397
|
-
this.focusedValue = this.value;
|
|
398
|
-
this.ionFocus.emit();
|
|
399
|
-
this.positionElements();
|
|
400
|
-
};
|
|
401
311
|
/**
|
|
402
312
|
* Positions the input search icon, placeholder, and the cancel button
|
|
403
313
|
* based on the input value and if it is focused. (ios only)
|
|
@@ -405,10 +315,10 @@ export class Searchbar {
|
|
|
405
315
|
positionElements() {
|
|
406
316
|
const value = this.getValue();
|
|
407
317
|
const prevAlignLeft = this.shouldAlignLeft;
|
|
408
|
-
const
|
|
318
|
+
const theme = getIonTheme(this);
|
|
409
319
|
const shouldAlignLeft = !this.animated || value.trim() !== '' || !!this.focused;
|
|
410
320
|
this.shouldAlignLeft = shouldAlignLeft;
|
|
411
|
-
if (
|
|
321
|
+
if (theme !== 'ios') {
|
|
412
322
|
return;
|
|
413
323
|
}
|
|
414
324
|
if (prevAlignLeft !== shouldAlignLeft) {
|
|
@@ -440,6 +350,7 @@ export class Searchbar {
|
|
|
440
350
|
doc.body.appendChild(tempSpan);
|
|
441
351
|
// Get the width of the span then remove it
|
|
442
352
|
raf(() => {
|
|
353
|
+
var _a, _b;
|
|
443
354
|
const textWidth = tempSpan.offsetWidth;
|
|
444
355
|
tempSpan.remove();
|
|
445
356
|
// Calculate the input padding
|
|
@@ -458,14 +369,15 @@ export class Searchbar {
|
|
|
458
369
|
* If it is zero, set up a ResizeObserver and call this function when it observes a width greater than 0.
|
|
459
370
|
*/
|
|
460
371
|
if (iconWidth === 0) {
|
|
461
|
-
this.searchIconResizeObserver
|
|
372
|
+
(_a = this.searchIconResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
462
373
|
this.searchIconResizeObserver = new ResizeObserver((entries) => {
|
|
374
|
+
var _a;
|
|
463
375
|
if (entries[0].contentRect.width > 0) {
|
|
464
|
-
this.searchIconResizeObserver
|
|
376
|
+
(_a = this.searchIconResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
465
377
|
this.positionPlaceholder();
|
|
466
378
|
}
|
|
467
379
|
});
|
|
468
|
-
this.searchIconResizeObserver
|
|
380
|
+
(_b = this.searchIconResizeObserver) === null || _b === void 0 ? void 0 : _b.observe(iconEl);
|
|
469
381
|
return;
|
|
470
382
|
}
|
|
471
383
|
const iconLeft = 'calc(50% - ' + (textWidth / 2 + iconWidth + 8) + 'px)';
|
|
@@ -518,6 +430,12 @@ export class Searchbar {
|
|
|
518
430
|
hasValue() {
|
|
519
431
|
return this.getValue() !== '';
|
|
520
432
|
}
|
|
433
|
+
shouldShowSearchIcon() {
|
|
434
|
+
if (this.searchIcon === false || this.searchIcon === 'false') {
|
|
435
|
+
return false;
|
|
436
|
+
}
|
|
437
|
+
return true;
|
|
438
|
+
}
|
|
521
439
|
/**
|
|
522
440
|
* Determines whether or not the cancel button should be visible onscreen.
|
|
523
441
|
* Cancel button should be shown if one of two conditions applies:
|
|
@@ -534,53 +452,132 @@ export class Searchbar {
|
|
|
534
452
|
* Determines whether or not the clear button should be visible onscreen.
|
|
535
453
|
* Clear button should be shown if one of two conditions applies:
|
|
536
454
|
* 1. `showClearButton` is set to `always`.
|
|
537
|
-
* 2. `showClearButton` is set to `focus`, and the searchbar has been
|
|
455
|
+
* 2. `showClearButton` is set to `focus`, and the searchbar has been
|
|
456
|
+
* focused or a clear button press is still in flight.
|
|
457
|
+
* Unless the `theme` is `ionic` and the searchbar is disabled.
|
|
538
458
|
*/
|
|
539
459
|
shouldShowClearButton() {
|
|
540
|
-
|
|
460
|
+
const theme = getIonTheme(this);
|
|
461
|
+
if (this.showClearButton === 'never' ||
|
|
462
|
+
(this.showClearButton === 'focus' && !this.focused && !this.isClearButtonPressed)) {
|
|
463
|
+
return false;
|
|
464
|
+
}
|
|
465
|
+
if (theme === 'ionic' && this.disabled) {
|
|
541
466
|
return false;
|
|
542
467
|
}
|
|
543
468
|
return true;
|
|
544
469
|
}
|
|
470
|
+
getShape() {
|
|
471
|
+
const theme = getIonTheme(this);
|
|
472
|
+
const { shape } = this;
|
|
473
|
+
// TODO(ROU-11677): Remove theme check when shapes are defined for all themes.
|
|
474
|
+
if (theme !== 'ionic') {
|
|
475
|
+
return undefined;
|
|
476
|
+
}
|
|
477
|
+
if (shape === undefined) {
|
|
478
|
+
return 'round';
|
|
479
|
+
}
|
|
480
|
+
return shape;
|
|
481
|
+
}
|
|
482
|
+
getSize() {
|
|
483
|
+
const theme = getIonTheme(this);
|
|
484
|
+
const { size } = this;
|
|
485
|
+
// TODO(ROU-11678): Remove theme check when sizes are defined for all themes.
|
|
486
|
+
if (theme !== 'ionic') {
|
|
487
|
+
return undefined;
|
|
488
|
+
}
|
|
489
|
+
if (size === undefined) {
|
|
490
|
+
return 'medium';
|
|
491
|
+
}
|
|
492
|
+
return size;
|
|
493
|
+
}
|
|
494
|
+
/**
|
|
495
|
+
* Get the icon to use for the clear icon.
|
|
496
|
+
* If an icon is set on the component, use that.
|
|
497
|
+
* Otherwise, use the icon set in the config.
|
|
498
|
+
* If no icon is set in the config, use the default icon.
|
|
499
|
+
*/
|
|
500
|
+
get searchbarClearIcon() {
|
|
501
|
+
// Return the icon if it is explicitly set
|
|
502
|
+
if (this.clearIcon != null) {
|
|
503
|
+
return this.clearIcon;
|
|
504
|
+
}
|
|
505
|
+
// Determine the theme and map to the default icon
|
|
506
|
+
const theme = getIonTheme(this);
|
|
507
|
+
const defaultIcon = theme === 'ios' ? closeCircle : closeSharp;
|
|
508
|
+
// Return the configured searchbar clear icon or the default icon
|
|
509
|
+
return config.get('searchbarClearIcon', defaultIcon);
|
|
510
|
+
}
|
|
511
|
+
/**
|
|
512
|
+
* Get the icon to use for the search icon.
|
|
513
|
+
* If an icon is set on the component, use that.
|
|
514
|
+
* Otherwise, use the icon set in the config.
|
|
515
|
+
* If no icon is set in the config, use the default icon.
|
|
516
|
+
*/
|
|
517
|
+
get searchbarSearchIcon() {
|
|
518
|
+
// Return the icon if it is explicitly set.
|
|
519
|
+
// If the icon is set to a boolean or string 'true', use the default icon.
|
|
520
|
+
if (this.searchIcon != null && this.searchIcon !== 'true' && typeof this.searchIcon !== 'boolean') {
|
|
521
|
+
return this.searchIcon;
|
|
522
|
+
}
|
|
523
|
+
// Determine the theme and map to the default icon
|
|
524
|
+
const theme = getIonTheme(this);
|
|
525
|
+
const defaultIcon = theme === 'ios' ? searchOutline : searchSharp;
|
|
526
|
+
// Return the configured searchbar search icon or the default icon
|
|
527
|
+
return config.get('searchbarSearchIcon', defaultIcon);
|
|
528
|
+
}
|
|
529
|
+
/**
|
|
530
|
+
* Get the icon to use for the cancel icon.
|
|
531
|
+
* If an icon is set on the component, use that.
|
|
532
|
+
* Otherwise, use the icon set in the config.
|
|
533
|
+
* If no icon is set in the config, use the default icon.
|
|
534
|
+
*/
|
|
535
|
+
get searchbarCancelIcon() {
|
|
536
|
+
// Return the icon if it is explicitly set
|
|
537
|
+
if (this.cancelButtonIcon != null) {
|
|
538
|
+
return this.cancelButtonIcon;
|
|
539
|
+
}
|
|
540
|
+
// Return the configured searchbar cancel icon, the back button icon or the default icon
|
|
541
|
+
return config.get('searchbarCancelIcon', config.get('backButtonIcon', arrowBackSharp));
|
|
542
|
+
}
|
|
545
543
|
render() {
|
|
546
|
-
const { cancelButtonText, autocapitalize } = this;
|
|
544
|
+
const { cancelButtonText, autocapitalize, searchbarCancelIcon, searchbarClearIcon, searchbarSearchIcon } = this;
|
|
547
545
|
const animated = this.animated && config.getBoolean('animated', true);
|
|
548
|
-
const
|
|
549
|
-
const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
|
|
550
|
-
const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
|
|
546
|
+
const theme = getIonTheme(this);
|
|
551
547
|
const shouldShowCancelButton = this.shouldShowCancelButton();
|
|
552
|
-
const
|
|
553
|
-
|
|
554
|
-
|
|
548
|
+
const shape = this.getShape();
|
|
549
|
+
const size = this.getSize();
|
|
550
|
+
const cancelButton = this.showCancelButton !== 'never' && (h("button", { key: '0096e98ef31b167640a8168ffac68c70826c91b6', "aria-label": cancelButtonText, "aria-hidden": shouldShowCancelButton ? undefined : 'true', type: "button", tabIndex: theme === 'ios' && !shouldShowCancelButton ? -1 : undefined, onMouseDown: this.onCancelSearchbar, onTouchStart: this.onCancelSearchbar, class: "searchbar-cancel-button" }, h("div", { key: 'cf7c7c798dfaced7256db4b0143bf9f277c1c556', "aria-hidden": "true" }, theme === 'md' || theme === 'ionic' ? (h("ion-icon", { "aria-hidden": "true", icon: searchbarCancelIcon, lazy: false })) : (cancelButtonText))));
|
|
551
|
+
return (h(Host, { key: 'e0ccf5cb212922eca551d6e264c5e388ed1b8491', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses(this.color, {
|
|
552
|
+
[theme]: true,
|
|
555
553
|
'searchbar-animated': animated,
|
|
556
554
|
'searchbar-disabled': this.disabled,
|
|
557
555
|
'searchbar-no-animate': animated && this.noAnimate,
|
|
558
556
|
'searchbar-has-value': this.hasValue(),
|
|
559
557
|
'searchbar-left-aligned': this.shouldAlignLeft,
|
|
560
558
|
'searchbar-has-focus': this.focused,
|
|
559
|
+
'searchbar-should-show-search-icon': this.shouldShowSearchIcon(),
|
|
561
560
|
'searchbar-should-show-clear': this.shouldShowClearButton(),
|
|
562
561
|
'searchbar-should-show-cancel': this.shouldShowCancelButton(),
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
* button is activated.
|
|
568
|
-
*/
|
|
569
|
-
ev.preventDefault();
|
|
570
|
-
}, onClick: () => this.onClearInput(true) }, h("ion-icon", { key: 'bbf8d05eb1070a0d34a22236dfaaf11d8dcc06af', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
|
|
562
|
+
[`searchbar-shape-${shape}`]: shape !== undefined,
|
|
563
|
+
[`searchbar-size-${size}`]: size !== undefined,
|
|
564
|
+
'in-toolbar': hostContext('ion-toolbar', this.el),
|
|
565
|
+
}) }, h("div", { key: '523e4b3e95eabc18ea89fe53d89e9de3fb4d4136', class: "searchbar-input-container" }, h("input", Object.assign({ key: '4a725ef40344a1f3b39a79a29792e74fd071160c', "aria-label": "search text", disabled: this.disabled, ref: (el) => (this.nativeInput = el), class: "searchbar-input", inputMode: this.inputmode, enterKeyHint: this.enterkeyhint, name: this.name, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, minLength: this.minlength, maxLength: this.maxlength, placeholder: this.placeholder, type: this.type, value: this.getValue(), autoCapitalize: autocapitalize === 'default' ? undefined : autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, spellcheck: this.spellcheck }, this.inheritedAttributes)), (theme === 'md' || theme === 'ionic') && cancelButton, this.shouldShowSearchIcon() && (h("ion-icon", { key: '98279385e1beefdfe509d567fa8fd000a06cedc3', "aria-hidden": "true", icon: searchbarSearchIcon, lazy: false, class: "searchbar-search-icon" })), this.shouldShowClearButton() && (h("button", { key: 'd8253933563466f0d99cbb30100169e5e196d4d1', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: this.clearButtonPressController.onPointerDown, onPointerCancel: this.clearButtonPressController.release, onClick: () => this.onClearInput(true) }, h("ion-icon", { key: 'c8aafd99ecdd1655094cc09e8774706e8830ea2f', "aria-hidden": "true", icon: searchbarClearIcon, lazy: false, class: "searchbar-clear-icon" })))), theme === 'ios' && cancelButton));
|
|
571
566
|
}
|
|
572
567
|
static get is() { return "ion-searchbar"; }
|
|
573
568
|
static get encapsulation() { return "scoped"; }
|
|
574
569
|
static get originalStyleUrls() {
|
|
575
570
|
return {
|
|
576
571
|
"ios": ["searchbar.ios.scss"],
|
|
577
|
-
"md": ["searchbar.md.scss"]
|
|
572
|
+
"md": ["searchbar.md.scss"],
|
|
573
|
+
"ionic": ["searchbar.ionic.scss"]
|
|
578
574
|
};
|
|
579
575
|
}
|
|
580
576
|
static get styleUrls() {
|
|
581
577
|
return {
|
|
582
578
|
"ios": ["searchbar.ios.css"],
|
|
583
|
-
"md": ["searchbar.md.css"]
|
|
579
|
+
"md": ["searchbar.md.css"],
|
|
580
|
+
"ionic": ["searchbar.ionic.css"]
|
|
584
581
|
};
|
|
585
582
|
}
|
|
586
583
|
static get properties() {
|
|
@@ -679,11 +676,11 @@ export class Searchbar {
|
|
|
679
676
|
"defaultValue": "'off'"
|
|
680
677
|
},
|
|
681
678
|
"autocorrect": {
|
|
682
|
-
"type": "
|
|
679
|
+
"type": "string",
|
|
683
680
|
"mutable": false,
|
|
684
681
|
"complexType": {
|
|
685
|
-
"original": "
|
|
686
|
-
"resolved": "
|
|
682
|
+
"original": "'on' | 'off'",
|
|
683
|
+
"resolved": "\"off\" | \"on\"",
|
|
687
684
|
"references": {}
|
|
688
685
|
},
|
|
689
686
|
"required": false,
|
|
@@ -696,27 +693,26 @@ export class Searchbar {
|
|
|
696
693
|
"setter": false,
|
|
697
694
|
"reflect": false,
|
|
698
695
|
"attribute": "autocorrect",
|
|
699
|
-
"defaultValue": "
|
|
696
|
+
"defaultValue": "'off'"
|
|
700
697
|
},
|
|
701
698
|
"cancelButtonIcon": {
|
|
702
699
|
"type": "string",
|
|
703
700
|
"mutable": false,
|
|
704
701
|
"complexType": {
|
|
705
702
|
"original": "string",
|
|
706
|
-
"resolved": "string",
|
|
703
|
+
"resolved": "string | undefined",
|
|
707
704
|
"references": {}
|
|
708
705
|
},
|
|
709
706
|
"required": false,
|
|
710
|
-
"optional":
|
|
707
|
+
"optional": true,
|
|
711
708
|
"docs": {
|
|
712
709
|
"tags": [],
|
|
713
|
-
"text": "Set the cancel button icon. Only
|
|
710
|
+
"text": "Set the cancel button icon. Only available when the theme is `\"md\"`.\nDefaults to `\"arrow-back-sharp\"`."
|
|
714
711
|
},
|
|
715
712
|
"getter": false,
|
|
716
713
|
"setter": false,
|
|
717
714
|
"reflect": false,
|
|
718
|
-
"attribute": "cancel-button-icon"
|
|
719
|
-
"defaultValue": "config.get('backButtonIcon', arrowBackSharp) as string"
|
|
715
|
+
"attribute": "cancel-button-icon"
|
|
720
716
|
},
|
|
721
717
|
"cancelButtonText": {
|
|
722
718
|
"type": "string",
|
|
@@ -730,7 +726,7 @@ export class Searchbar {
|
|
|
730
726
|
"optional": false,
|
|
731
727
|
"docs": {
|
|
732
728
|
"tags": [],
|
|
733
|
-
"text": "Set the cancel button text. Only
|
|
729
|
+
"text": "Set the cancel button text. Only available when the theme is `\"ios\"`."
|
|
734
730
|
},
|
|
735
731
|
"getter": false,
|
|
736
732
|
"setter": false,
|
|
@@ -750,7 +746,7 @@ export class Searchbar {
|
|
|
750
746
|
"optional": true,
|
|
751
747
|
"docs": {
|
|
752
748
|
"tags": [],
|
|
753
|
-
"text": "Set the clear icon. Defaults to
|
|
749
|
+
"text": "Set the clear icon. Defaults to `\"close-circle\"` for `\"ios\"` theme and `\"close-sharp\"` for `\"md\"` and `\"ionic\"` theme."
|
|
754
750
|
},
|
|
755
751
|
"getter": false,
|
|
756
752
|
"setter": false,
|
|
@@ -913,18 +909,18 @@ export class Searchbar {
|
|
|
913
909
|
"defaultValue": "'Search'"
|
|
914
910
|
},
|
|
915
911
|
"searchIcon": {
|
|
916
|
-
"type": "
|
|
912
|
+
"type": "any",
|
|
917
913
|
"mutable": false,
|
|
918
914
|
"complexType": {
|
|
919
|
-
"original": "string",
|
|
920
|
-
"resolved": "string | undefined",
|
|
915
|
+
"original": "string | boolean",
|
|
916
|
+
"resolved": "boolean | string | undefined",
|
|
921
917
|
"references": {}
|
|
922
918
|
},
|
|
923
919
|
"required": false,
|
|
924
920
|
"optional": true,
|
|
925
921
|
"docs": {
|
|
926
922
|
"tags": [],
|
|
927
|
-
"text": "The icon to use as the search icon. Defaults to
|
|
923
|
+
"text": "The icon to use as the search icon. Defaults to `\"search-outline\"` in\nthe `\"ios\"` theme and `\"search-sharp\"` in the `\"md\"` and `\"ionic\"` themes.\nIf `false`, no search icon will be displayed."
|
|
928
924
|
},
|
|
929
925
|
"getter": false,
|
|
930
926
|
"setter": false,
|
|
@@ -1030,13 +1026,52 @@ export class Searchbar {
|
|
|
1030
1026
|
"reflect": false,
|
|
1031
1027
|
"attribute": "value",
|
|
1032
1028
|
"defaultValue": "''"
|
|
1029
|
+
},
|
|
1030
|
+
"shape": {
|
|
1031
|
+
"type": "string",
|
|
1032
|
+
"mutable": false,
|
|
1033
|
+
"complexType": {
|
|
1034
|
+
"original": "'soft' | 'round' | 'rectangular'",
|
|
1035
|
+
"resolved": "\"rectangular\" | \"round\" | \"soft\" | undefined",
|
|
1036
|
+
"references": {}
|
|
1037
|
+
},
|
|
1038
|
+
"required": false,
|
|
1039
|
+
"optional": true,
|
|
1040
|
+
"docs": {
|
|
1041
|
+
"tags": [],
|
|
1042
|
+
"text": "Set to `\"soft\"` for a searchbar with slightly rounded corners,\n`\"round\"` for a searchbar with fully rounded corners,\nor `\"rectangular\"` for a searchbar without rounded corners.\n\nDefaults to `\"round\"` for the ionic theme, and `undefined` for all other themes."
|
|
1043
|
+
},
|
|
1044
|
+
"getter": false,
|
|
1045
|
+
"setter": false,
|
|
1046
|
+
"reflect": false,
|
|
1047
|
+
"attribute": "shape"
|
|
1048
|
+
},
|
|
1049
|
+
"size": {
|
|
1050
|
+
"type": "string",
|
|
1051
|
+
"mutable": false,
|
|
1052
|
+
"complexType": {
|
|
1053
|
+
"original": "'small' | 'medium' | 'large'",
|
|
1054
|
+
"resolved": "\"large\" | \"medium\" | \"small\" | undefined",
|
|
1055
|
+
"references": {}
|
|
1056
|
+
},
|
|
1057
|
+
"required": false,
|
|
1058
|
+
"optional": true,
|
|
1059
|
+
"docs": {
|
|
1060
|
+
"tags": [],
|
|
1061
|
+
"text": "Set to `\"large\"` for a searchbar with an increase in height,\nwhile \"small\" and \"medium\" provide progressively smaller heights.\n\nDefaults to `\"medium\"` for the ionic theme, and `undefined` for all other themes."
|
|
1062
|
+
},
|
|
1063
|
+
"getter": false,
|
|
1064
|
+
"setter": false,
|
|
1065
|
+
"reflect": false,
|
|
1066
|
+
"attribute": "size"
|
|
1033
1067
|
}
|
|
1034
1068
|
};
|
|
1035
1069
|
}
|
|
1036
1070
|
static get states() {
|
|
1037
1071
|
return {
|
|
1038
1072
|
"focused": {},
|
|
1039
|
-
"noAnimate": {}
|
|
1073
|
+
"noAnimate": {},
|
|
1074
|
+
"isClearButtonPressed": {}
|
|
1040
1075
|
};
|
|
1041
1076
|
}
|
|
1042
1077
|
static get events() {
|