@ionic/core 9.0.0 → 9.0.1-dev.11787248963.10a00c73
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-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-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.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-63OhffQv.js → p-66ogmUZU.js} +1 -1
- package/components/p-6Vp915Y7.js +4 -0
- package/components/p-7PNwKFZi.js +4 -0
- package/components/{p-G0TxqHfe.js → p-A8MJRBIY.js} +1 -1
- package/components/p-AQcCdH2_.js +4 -0
- package/{dist/ionic/p-Dn0mqQ_R.js → components/p-B6x5_b9w.js} +1 -1
- package/components/p-B8MQjdvk.js +4 -0
- package/components/p-BA_4ZIEg.js +4 -0
- package/components/p-BFtL8t1r.js +4 -0
- package/components/{p-DaA_8eqt.js → p-BMfgF-Tv.js} +1 -1
- package/components/p-BPDxVIRr.js +4 -0
- package/components/p-BSARlp49.js +4 -0
- package/components/p-B_gJaBk0.js +4 -0
- package/components/p-BdwCtX8Y.js +4 -0
- package/components/p-Bg4OwDwb.js +4 -0
- package/components/{p-DV85C0e0.js → p-BgUIV8NQ.js} +1 -1
- package/components/p-Bnc0m4SW.js +4 -0
- package/components/p-BpLt_Ptn.js +4 -0
- package/components/p-BqBDq1Ma.js +4 -0
- package/components/{p-C_phlPMC.js → p-BrFaQbGY.js} +1 -1
- package/{dist/ionic/p-Cdjxf_yg.js → components/p-BuPAFTWI.js} +1 -1
- package/components/p-Bx2saTHs.js +4 -0
- package/components/p-BxhE2W85.js +4 -0
- package/components/p-CHswSpKy.js +4 -0
- package/components/{p-fruGqVHh.js → p-CQAjyETU.js} +1 -1
- package/components/{p-1jI5oW-W.js → p-CR9OgE6N.js} +1 -1
- package/components/p-CWETxTjE.js +4 -0
- package/components/p-CaZeZIL2.js +4 -0
- package/components/p-CaiZOhfC.js +4 -0
- package/components/p-CgvDC7hC.js +4 -0
- package/components/{p-BqPNzJf6.js → p-CqyGR9Aq.js} +1 -1
- package/components/{p-UIBJkZf8.js → p-D0YpjgON.js} +1 -1
- package/components/p-D7ysFE2B.js +4 -0
- package/{dist/ionic/p-4eOQC00Z.js → components/p-DCWfzDM8.js} +1 -1
- package/components/{p-DwpKZ6rl.js → p-DDdkefwf.js} +1 -1
- package/components/{p-DzRT60Tw.js → p-DEW7CnUc.js} +1 -1
- package/components/p-DQ1IPvZO.js +4 -0
- package/components/p-DcOH6-o5.js +4 -0
- package/components/{p-DD5fQ4EQ.js → p-DfdYCsov.js} +1 -1
- package/components/{p-DSzSbVP2.js → p-DhOoEIAs.js} +1 -1
- package/components/{p-DM-PrAoh.js → p-Dl_7b_UJ.js} +1 -1
- package/components/p-DqAI6tg7.js +4 -0
- package/components/p-DrehWDfv.js +4 -0
- package/components/{p-ryyf_ItD.js → p-DysqCsJu.js} +1 -1
- package/components/p-H1f2qsk4.js +4 -0
- package/components/p-HVYBAhFx.js +4 -0
- package/components/{p-CbhUdtjf.js → p-Kmrg3Fed.js} +1 -1
- package/components/{p-Bjig0DJK.js → p-RFfE9hF6.js} +1 -1
- package/{dist/ionic/p-CBWAXjA5.js → components/p-SR-LLqp_.js} +1 -1
- package/components/p-eFI3mtEX.js +4 -0
- package/components/p-gFwXiYC_.js +4 -0
- package/components/p-tX3UxCnU.js +4 -0
- package/components/p-v2NpoOHp.js +4 -0
- package/dist/cjs/{animation-C0mOHzej.js → animation-D-OqR4a4.js} +1 -1
- package/dist/cjs/{app-globals-BREG4twP.js → app-globals-BzgwARwJ.js} +1 -1
- package/dist/cjs/{button-active-CVMevT9a.js → button-active-BlWSD7uK.js} +2 -2
- package/dist/cjs/{format-pp0Du3K-.js → format-D7ig6Vm0.js} +1 -1
- package/dist/cjs/{framework-delegate-Dfo5XsGv.js → framework-delegate-BZUx4TnE.js} +1 -1
- package/dist/cjs/{gesture-controller-BDUH7687.js → gesture-controller-CeJslptU.js} +6 -14
- package/dist/cjs/{hardware-back-button-fqpYh-kd.js → hardware-back-button-JOAEFSzc.js} +1 -1
- package/dist/cjs/{helpers-YPQybDph.js → helpers-Dj5o76mq.js} +1 -1
- package/dist/cjs/{index-BLdJCcJY.js → index-2sO-zkZ2.js} +4 -4
- package/dist/cjs/{index-uvry__L4.js → index-BrVMoqUk.js} +3 -1
- package/dist/cjs/{index-zVCah4Uz.js → index-C8zH6b3d.js} +2 -2
- package/dist/cjs/{index-DXsPSne6.js → index-CZ6vzt_q.js} +5 -5
- package/dist/cjs/{index-DDg31ZF5.js → index-Csue6G3m.js} +2 -2
- package/dist/cjs/{index-DwlRtFZe.js → index-DRPqwSvU.js} +1 -1
- package/dist/cjs/{index-B7zJsYWS.js → index-EJLjthTK.js} +1 -2
- package/dist/cjs/index.cjs.js +14 -14
- package/dist/cjs/{input-shims-Cbu1fcye.js → input-shims-Bh7bnt2v.js} +3 -3
- package/dist/cjs/{input.utils-BZdMWVrt.js → input.utils-Cq3g9uHy.js} +1 -1
- package/dist/cjs/ion-accordion_2.cjs.entry.js +335 -364
- package/dist/cjs/ion-action-sheet.cjs.entry.js +60 -140
- package/dist/cjs/ion-alert.cjs.entry.js +67 -159
- package/dist/cjs/ion-app_8.cjs.entry.js +163 -258
- package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -8
- package/dist/cjs/ion-back-button.cjs.entry.js +21 -45
- package/dist/cjs/ion-backdrop.cjs.entry.js +14 -18
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +117 -195
- package/dist/cjs/ion-button_2.cjs.entry.js +61 -130
- package/dist/cjs/ion-card_5.cjs.entry.js +28 -80
- package/dist/cjs/ion-checkbox.cjs.entry.js +98 -147
- package/dist/cjs/ion-chip.cjs.entry.js +10 -16
- package/dist/cjs/ion-col_3.cjs.entry.js +6 -126
- package/dist/cjs/ion-datetime-button.cjs.entry.js +232 -248
- package/dist/cjs/ion-datetime.cjs.entry.js +775 -953
- package/dist/cjs/ion-fab_3.cjs.entry.js +78 -136
- package/dist/cjs/ion-img.cjs.entry.js +11 -31
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +71 -98
- package/dist/cjs/ion-input-otp.cjs.entry.js +352 -424
- package/dist/cjs/ion-input-password-toggle.cjs.entry.js +14 -29
- package/dist/cjs/ion-input.cjs.entry.js +158 -302
- package/dist/cjs/ion-item-option_3.cjs.entry.js +54 -98
- package/dist/cjs/ion-item_8.cjs.entry.js +61 -157
- package/dist/cjs/ion-loading.cjs.entry.js +54 -131
- package/dist/cjs/ion-menu_3.cjs.entry.js +94 -158
- package/dist/cjs/ion-modal.cjs.entry.js +206 -362
- package/dist/cjs/ion-nav_2.cjs.entry.js +26 -78
- package/dist/cjs/ion-picker-column-option.cjs.entry.js +23 -33
- package/dist/cjs/ion-picker-column.cjs.entry.js +389 -410
- package/dist/cjs/ion-picker.cjs.entry.js +390 -400
- package/dist/cjs/ion-popover.cjs.entry.js +184 -292
- package/dist/cjs/ion-progress-bar.cjs.entry.js +23 -29
- package/dist/cjs/ion-radio_2.cjs.entry.js +128 -201
- package/dist/cjs/ion-range.cjs.entry.js +223 -293
- package/dist/cjs/ion-refresher_2.cjs.entry.js +89 -154
- package/dist/cjs/ion-reorder_2.cjs.entry.js +19 -49
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +13 -13
- package/dist/cjs/ion-route_4.cjs.entry.js +45 -144
- package/dist/cjs/ion-searchbar.cjs.entry.js +182 -268
- package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
- package/dist/cjs/ion-segment-view.cjs.entry.js +12 -24
- package/dist/cjs/ion-segment_2.cjs.entry.js +122 -161
- package/dist/cjs/ion-select-modal.cjs.entry.js +19 -21
- package/dist/cjs/ion-select_3.cjs.entry.js +151 -319
- package/dist/cjs/ion-spinner.cjs.entry.js +6 -21
- package/dist/cjs/ion-split-pane.cjs.entry.js +14 -27
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +32 -89
- package/dist/cjs/ion-tab_2.cjs.entry.js +22 -49
- package/dist/cjs/ion-text.cjs.entry.js +2 -8
- package/dist/cjs/ion-textarea.cjs.entry.js +139 -256
- package/dist/cjs/ion-toast.cjs.entry.js +106 -221
- package/dist/cjs/ion-toggle.cjs.entry.js +114 -165
- package/dist/cjs/{ionic-global-k6hOWWpn.js → ionic-global-DvgIzM2F.js} +1 -1
- package/dist/cjs/ionic.cjs.js +4 -4
- package/dist/cjs/{ios.transition-zTmJz8T-.js → ios.transition-zIgdoSYe.js} +4 -4
- package/dist/cjs/{item-multiple-inputs-BdYSbfKN.js → item-multiple-inputs-DG-ZGm6j.js} +1 -1
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/{md.transition-nb_4pUXu.js → md.transition-CXeJ9rfh.js} +4 -4
- package/dist/cjs/{overlays-KaNVDNqC.js → overlays-Bg0auTQa.js} +6 -6
- package/dist/cjs/{select-option-render-pULCGldr.js → select-option-render-7m1WdFzF.js} +2 -2
- package/dist/cjs/{slot-mutation-controller-DPHmqXdV.js → slot-mutation-controller-BJEJzx_e.js} +1 -1
- package/dist/cjs/{status-tap-o9IIymsP.js → status-tap-DxbUM5XX.js} +3 -3
- package/dist/cjs/{swipe-back-B7X9VOlH.js → swipe-back-F_DBt-Aw.js} +4 -4
- package/dist/collection/components/accordion/accordion.js +310 -314
- package/dist/collection/components/accordion-group/accordion-group.js +23 -46
- package/dist/collection/components/action-sheet/action-sheet.js +49 -128
- package/dist/collection/components/action-sheet/test/basic/fixture.js +0 -3
- package/dist/collection/components/alert/alert.js +56 -147
- package/dist/collection/components/app/app.js +0 -3
- package/dist/collection/components/back-button/back-button.js +19 -42
- package/dist/collection/components/backdrop/backdrop.js +14 -16
- package/dist/collection/components/badge/badge.js +0 -6
- package/dist/collection/components/breadcrumb/breadcrumb.js +29 -90
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +87 -102
- package/dist/collection/components/button/button.js +59 -127
- package/dist/collection/components/buttons/buttons.js +15 -13
- package/dist/collection/components/card/card.js +20 -53
- package/dist/collection/components/card-header/card-header.js +8 -12
- package/dist/collection/components/card-subtitle/card-subtitle.js +0 -6
- package/dist/collection/components/card-title/card-title.js +0 -6
- package/dist/collection/components/checkbox/checkbox.js +95 -143
- package/dist/collection/components/chip/chip.js +10 -14
- package/dist/collection/components/col/col.js +0 -120
- package/dist/collection/components/content/content.js +60 -90
- package/dist/collection/components/datetime/datetime.js +762 -939
- package/dist/collection/components/datetime-button/datetime-button.js +229 -244
- package/dist/collection/components/fab/fab.js +13 -20
- package/dist/collection/components/fab-button/fab-button.js +54 -103
- package/dist/collection/components/fab-list/fab-list.js +11 -10
- package/dist/collection/components/footer/footer.js +43 -49
- package/dist/collection/components/grid/grid.js +6 -4
- package/dist/collection/components/header/header.js +23 -33
- package/dist/collection/components/img/img.js +9 -28
- package/dist/collection/components/infinite-scroll/infinite-scroll.js +66 -73
- package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +3 -20
- package/dist/collection/components/input/input.js +154 -297
- package/dist/collection/components/input-otp/input-otp.js +350 -421
- package/dist/collection/components/input-password-toggle/input-password-toggle.js +13 -27
- package/dist/collection/components/item/item.js +37 -80
- package/dist/collection/components/item-divider/item-divider.js +10 -15
- package/dist/collection/components/item-option/item-option.js +20 -48
- package/dist/collection/components/item-options/item-options.js +7 -10
- package/dist/collection/components/item-sliding/item-sliding.js +26 -36
- package/dist/collection/components/label/label.js +4 -24
- package/dist/collection/components/list/list.js +6 -9
- package/dist/collection/components/list-header/list-header.js +0 -10
- package/dist/collection/components/loading/loading.js +46 -122
- package/dist/collection/components/menu/menu.js +55 -99
- package/dist/collection/components/menu-button/menu-button.js +19 -28
- package/dist/collection/components/menu-toggle/menu-toggle.js +13 -20
- package/dist/collection/components/modal/modal.js +196 -351
- package/dist/collection/components/modal/test/fixtures.js +0 -3
- package/dist/collection/components/nav/nav.js +12 -45
- package/dist/collection/components/nav/view-controller.js +1 -7
- package/dist/collection/components/nav-link/nav-link.js +9 -20
- package/dist/collection/components/note/note.js +0 -6
- package/dist/collection/components/picker/picker.js +388 -397
- package/dist/collection/components/picker-column/picker-column.js +389 -409
- package/dist/collection/components/picker-column-option/picker-column-option.js +21 -30
- package/dist/collection/components/popover/popover.js +176 -283
- package/dist/collection/components/popover/test/fixture.js +0 -1
- package/dist/collection/components/progress-bar/progress-bar.js +22 -26
- package/dist/collection/components/radio/radio.js +62 -98
- package/dist/collection/components/radio-group/radio-group.js +64 -99
- package/dist/collection/components/radio-group/test/fixtures.js +0 -2
- package/dist/collection/components/range/range.js +220 -289
- package/dist/collection/components/refresher/refresher.js +79 -105
- package/dist/collection/components/refresher-content/refresher-content.js +3 -40
- package/dist/collection/components/reorder/reorder.js +0 -1
- package/dist/collection/components/reorder-group/reorder-group.js +14 -43
- package/dist/collection/components/ripple-effect/ripple-effect.js +12 -11
- package/dist/collection/components/route/route.js +9 -38
- package/dist/collection/components/route-redirect/route-redirect.js +0 -31
- package/dist/collection/components/router/router.js +27 -35
- package/dist/collection/components/router/utils/matching.js +0 -1
- package/dist/collection/components/router-link/router-link.js +10 -35
- package/dist/collection/components/router-outlet/router-outlet.js +12 -34
- package/dist/collection/components/searchbar/searchbar.js +180 -265
- package/dist/collection/components/segment/segment.js +76 -113
- package/dist/collection/components/segment-button/segment-button.js +44 -44
- package/dist/collection/components/segment-view/segment-view.js +12 -23
- package/dist/collection/components/select/select.js +127 -240
- package/dist/collection/components/select-modal/select-modal.js +11 -12
- package/dist/collection/components/select-modal/test/fixtures.js +1 -8
- package/dist/collection/components/select-option/select-option.js +7 -44
- package/dist/collection/components/select-popover/select-popover.js +10 -25
- package/dist/collection/components/select-popover/test/fixtures.js +1 -8
- package/dist/collection/components/skeleton-text/skeleton-text.js +6 -10
- package/dist/collection/components/spinner/spinner.js +6 -19
- package/dist/collection/components/split-pane/split-pane.js +13 -25
- package/dist/collection/components/tab/tab.js +4 -15
- package/dist/collection/components/tab-bar/tab-bar.js +12 -30
- package/dist/collection/components/tab-button/tab-button.js +19 -56
- package/dist/collection/components/tabs/tabs.js +17 -31
- package/dist/collection/components/text/text.js +0 -6
- package/dist/collection/components/textarea/textarea.js +135 -251
- package/dist/collection/components/title/title.js +0 -16
- package/dist/collection/components/toast/toast.js +97 -211
- package/dist/collection/components/toggle/toggle.js +111 -161
- package/dist/collection/components/toolbar/toolbar.js +3 -8
- package/dist/collection/global/config.js +3 -1
- package/dist/collection/utils/gesture/gesture-controller.js +6 -14
- package/dist/collection/utils/sanitization/index.js +0 -1
- package/dist/collection/utils/test/late-props/late-props.js +69 -0
- package/dist/collection/utils/test/playwright/page/event-spy.js +8 -9
- package/dist/collection/utils/test/press-keys.js +1 -4
- package/dist/docs.json +1 -1
- package/dist/esm/{animation-CGFdmGk9.js → animation-TxGPYeDn.js} +1 -1
- package/dist/esm/{app-globals-CYmMeGdU.js → app-globals-Do8rJest.js} +1 -1
- package/dist/esm/{button-active-BDOsVAiZ.js → button-active-ChA4D-ml.js} +2 -2
- package/dist/esm/{format-Dcwga61t.js → format-CVk5e_GP.js} +2 -2
- package/dist/esm/{framework-delegate-BHTU2Ip9.js → framework-delegate-DaLWnISz.js} +1 -1
- package/dist/esm/{gesture-controller-TXPDHL13.js → gesture-controller-B_gJaBk0.js} +6 -14
- package/dist/esm/{hardware-back-button-gLJHMX_F.js → hardware-back-button-D8W4L0JP.js} +1 -1
- package/dist/esm/{helpers-CAGf8Wgp.js → helpers-BIgoInJU.js} +1 -1
- package/dist/esm/{index-DcPaH5uL.js → index-BmLuEdV7.js} +1 -1
- package/dist/esm/{index-T0JxBI8V.js → index-BmOR8tCv.js} +2 -2
- package/dist/esm/{index-CqneaaGd.js → index-C5ZdL0qp.js} +5 -5
- package/dist/esm/{index-WlteAIqz.js → index-C8Dsa6li.js} +4 -4
- package/dist/esm/{index-ChhhtsGZ.js → index-CKYcsw8f.js} +3 -1
- package/dist/esm/{index-Clc-28O1.js → index-DHw2lZxe.js} +2 -2
- package/dist/esm/{index-CKM1DdGm.js → index-elneMH8y.js} +1 -2
- package/dist/esm/index.js +14 -14
- package/dist/esm/{input-shims-B8sfni1e.js → input-shims-09NN97kF.js} +3 -3
- package/dist/esm/{input.utils-B1ValN_N.js → input.utils-BxyH9l1w.js} +1 -1
- package/dist/esm/ion-accordion_2.entry.js +335 -364
- package/dist/esm/ion-action-sheet.entry.js +60 -140
- package/dist/esm/ion-alert.entry.js +67 -159
- package/dist/esm/ion-app_8.entry.js +163 -258
- package/dist/esm/ion-avatar_3.entry.js +2 -8
- package/dist/esm/ion-back-button.entry.js +21 -45
- package/dist/esm/ion-backdrop.entry.js +14 -18
- package/dist/esm/ion-breadcrumb_2.entry.js +117 -195
- package/dist/esm/ion-button_2.entry.js +61 -130
- package/dist/esm/ion-card_5.entry.js +28 -80
- package/dist/esm/ion-checkbox.entry.js +98 -147
- package/dist/esm/ion-chip.entry.js +10 -16
- package/dist/esm/ion-col_3.entry.js +6 -126
- package/dist/esm/ion-datetime-button.entry.js +232 -248
- package/dist/esm/ion-datetime.entry.js +775 -953
- package/dist/esm/ion-fab_3.entry.js +78 -136
- package/dist/esm/ion-img.entry.js +11 -31
- package/dist/esm/ion-infinite-scroll_2.entry.js +71 -98
- package/dist/esm/ion-input-otp.entry.js +352 -424
- package/dist/esm/ion-input-password-toggle.entry.js +14 -29
- package/dist/esm/ion-input.entry.js +158 -302
- package/dist/esm/ion-item-option_3.entry.js +54 -98
- package/dist/esm/ion-item_8.entry.js +61 -157
- package/dist/esm/ion-loading.entry.js +54 -131
- package/dist/esm/ion-menu_3.entry.js +94 -158
- package/dist/esm/ion-modal.entry.js +206 -362
- package/dist/esm/ion-nav_2.entry.js +26 -78
- package/dist/esm/ion-picker-column-option.entry.js +23 -33
- package/dist/esm/ion-picker-column.entry.js +389 -410
- package/dist/esm/ion-picker.entry.js +390 -400
- package/dist/esm/ion-popover.entry.js +184 -292
- package/dist/esm/ion-progress-bar.entry.js +23 -29
- package/dist/esm/ion-radio_2.entry.js +128 -201
- package/dist/esm/ion-range.entry.js +223 -293
- package/dist/esm/ion-refresher_2.entry.js +89 -154
- package/dist/esm/ion-reorder_2.entry.js +19 -49
- package/dist/esm/ion-ripple-effect.entry.js +13 -13
- package/dist/esm/ion-route_4.entry.js +45 -144
- package/dist/esm/ion-searchbar.entry.js +182 -268
- package/dist/esm/ion-segment-content.entry.js +1 -1
- package/dist/esm/ion-segment-view.entry.js +12 -24
- package/dist/esm/ion-segment_2.entry.js +122 -161
- package/dist/esm/ion-select-modal.entry.js +19 -21
- package/dist/esm/ion-select_3.entry.js +151 -319
- package/dist/esm/ion-spinner.entry.js +6 -21
- package/dist/esm/ion-split-pane.entry.js +14 -27
- package/dist/esm/ion-tab-bar_2.entry.js +32 -89
- package/dist/esm/ion-tab_2.entry.js +22 -49
- package/dist/esm/ion-text.entry.js +2 -8
- package/dist/esm/ion-textarea.entry.js +139 -256
- package/dist/esm/ion-toast.entry.js +106 -221
- package/dist/esm/ion-toggle.entry.js +114 -165
- package/dist/esm/{ionic-global-BVB7BrLT.js → ionic-global-lrowsHfi.js} +1 -1
- package/dist/esm/ionic.js +5 -5
- package/dist/esm/{ios.transition-DXRCmcbC.js → ios.transition-BQhADrk1.js} +4 -4
- package/dist/esm/{item-multiple-inputs-rU8VaNNg.js → item-multiple-inputs-D_N3fDkD.js} +1 -1
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{md.transition-BMngO4i_.js → md.transition-D58NpmRa.js} +4 -4
- package/dist/esm/{overlays-CPmIs9Ls.js → overlays-BpnIFlXI.js} +6 -6
- package/dist/esm/{select-option-render-C4m76VGH.js → select-option-render-lIuu64EV.js} +2 -2
- package/dist/esm/{slot-mutation-controller-DiE_C9un.js → slot-mutation-controller-rS_T3FDR.js} +1 -1
- package/dist/esm/{status-tap-CHB7KwIb.js → status-tap-CpFQMLl6.js} +3 -3
- package/dist/esm/{swipe-back-C9HW1bug.js → swipe-back-rmc7zeNW.js} +4 -4
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-05800a02.entry.js +4 -0
- package/dist/ionic/p-0eb50dca.entry.js +4 -0
- package/dist/ionic/p-16e9f542.entry.js +4 -0
- package/dist/ionic/p-18d532a3.entry.js +4 -0
- package/dist/ionic/p-1db2afb4.entry.js +4 -0
- package/dist/ionic/p-1df75f9e.entry.js +4 -0
- package/dist/ionic/p-295ff427.entry.js +4 -0
- package/dist/ionic/p-34b9379b.entry.js +4 -0
- package/dist/ionic/p-39a8d4e0.entry.js +4 -0
- package/dist/ionic/p-4437015c.entry.js +4 -0
- package/dist/ionic/p-478035a7.entry.js +4 -0
- package/dist/ionic/p-485fb218.entry.js +4 -0
- package/dist/ionic/p-48c859fe.entry.js +4 -0
- package/dist/ionic/p-49b9d405.entry.js +4 -0
- package/dist/ionic/p-56307aea.entry.js +4 -0
- package/dist/ionic/p-5b906fd6.entry.js +4 -0
- package/dist/ionic/p-5ee2d7b1.entry.js +4 -0
- package/dist/ionic/p-5f216b79.entry.js +4 -0
- package/dist/ionic/p-61c799d1.entry.js +4 -0
- package/dist/ionic/p-63bbba8d.entry.js +4 -0
- package/dist/ionic/p-68507e70.entry.js +4 -0
- package/dist/ionic/{p-ded69ceb.entry.js → p-6f048604.entry.js} +1 -1
- package/dist/ionic/p-70ee8888.entry.js +4 -0
- package/dist/ionic/p-72ad7c64.entry.js +4 -0
- package/dist/ionic/p-75887ee0.entry.js +4 -0
- package/dist/ionic/p-873a315a.entry.js +4 -0
- package/dist/ionic/p-881b6954.entry.js +4 -0
- package/dist/ionic/p-886d9e66.entry.js +4 -0
- package/dist/ionic/p-8dd4c026.entry.js +4 -0
- package/dist/ionic/p-8e007f11.entry.js +4 -0
- package/dist/ionic/p-8f51110d.entry.js +4 -0
- package/dist/ionic/p-90ba736e.entry.js +4 -0
- package/dist/ionic/p-959df5f8.entry.js +4 -0
- package/dist/ionic/p-9e455875.entry.js +4 -0
- package/dist/ionic/{p-CBR_W98Z.js → p-9wczfs_v.js} +1 -1
- package/dist/ionic/p-B1Y7LZhV.js +4 -0
- package/dist/ionic/p-B5RyLYvl.js +4 -0
- package/dist/ionic/{p-CPcPmkGv.js → p-BQv5i5Kf.js} +1 -1
- package/{components/p-8FN7p701.js → dist/ionic/p-BZVE25Gu.js} +1 -1
- package/{components/p-DFvZn99E.js → dist/ionic/p-BZxjcGRP.js} +1 -1
- package/dist/ionic/p-B_gJaBk0.js +4 -0
- package/dist/ionic/p-BnGA34Pd.js +4 -0
- package/dist/ionic/p-ByLaqOPm.js +4 -0
- package/dist/ionic/p-C06QNN45.js +4 -0
- package/dist/ionic/p-C4IBDDj6.js +4 -0
- package/dist/ionic/p-CCVlNZ__.js +4 -0
- package/dist/ionic/{p-CMRtMbJc.js → p-CDBop-kz.js} +1 -1
- package/dist/ionic/p-CKYcsw8f.js +5 -0
- package/dist/ionic/p-CazSodad.js +4 -0
- package/{components/p-ia3IDdJS.js → dist/ionic/p-ClrlQU2y.js} +1 -1
- package/dist/ionic/{p-UIBJkZf8.js → p-D0YpjgON.js} +1 -1
- package/dist/ionic/p-D0dfUysx.js +4 -0
- package/dist/ionic/{p-BB0LlG4y.js → p-D9yvytgv.js} +1 -1
- package/{components/p-C5KYjZWD.js → dist/ionic/p-DF_Uqql8.js} +1 -1
- package/dist/ionic/{p-BYEAtHr-.js → p-DXJgZWgi.js} +1 -1
- package/dist/ionic/{p-D94_RztK.js → p-DdhHqKj-.js} +1 -1
- package/dist/ionic/p-De0eY881.js +4 -0
- package/dist/ionic/p-DgUL3JbO.js +4 -0
- package/dist/ionic/{p-7CBuOvEo.js → p-RzUn7cKs.js} +1 -1
- package/dist/ionic/p-VquyMbjp.js +4 -0
- package/dist/ionic/p-a0fee899.entry.js +4 -0
- package/dist/ionic/p-a54bcd16.entry.js +4 -0
- package/dist/ionic/p-aebc4d69.entry.js +4 -0
- package/dist/ionic/p-b5f37106.entry.js +4 -0
- package/dist/ionic/{p-40424a88.entry.js → p-b62bfce8.entry.js} +1 -1
- package/dist/ionic/p-b7a11b58.entry.js +4 -0
- package/dist/ionic/p-bbf6878c.entry.js +4 -0
- package/dist/ionic/p-c49165af.entry.js +4 -0
- package/dist/ionic/p-cad4eccf.entry.js +4 -0
- package/dist/ionic/p-cdc5115e.entry.js +4 -0
- package/dist/ionic/p-d3384a40.entry.js +4 -0
- package/dist/ionic/p-d8bae128.entry.js +4 -0
- package/dist/ionic/p-d8deff43.entry.js +4 -0
- package/dist/ionic/p-ddfb7e5f.entry.js +4 -0
- package/dist/ionic/p-e538f18d.entry.js +4 -0
- package/dist/ionic/p-f376876b.entry.js +4 -0
- package/dist/ionic/p-f7dd1ed9.entry.js +4 -0
- package/dist/ionic/p-fbd83d4c.entry.js +4 -0
- package/dist/types/components/refresher/refresher.d.ts +7 -0
- package/hydrate/index.js +5450 -8380
- package/hydrate/index.mjs +5450 -8380
- package/package.json +1 -1
- package/components/p--m5cCjbK.js +0 -4
- package/components/p-B4uHHhPK.js +0 -4
- package/components/p-BNJOu1Q2.js +0 -4
- package/components/p-BOvLNVKq.js +0 -4
- package/components/p-BeamQXHF.js +0 -4
- package/components/p-BjluhQMI.js +0 -4
- package/components/p-BlsIikdZ.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-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-CHH3loEE.js +0 -4
- package/components/p-CJKUWjmg.js +0 -4
- package/components/p-CMLAwl_N.js +0 -4
- package/components/p-CejmQs3h.js +0 -4
- package/components/p-CtZqa4HM.js +0 -4
- package/components/p-D9qIVSWm.js +0 -4
- package/components/p-DE-3iMNW.js +0 -4
- package/components/p-DHFt2rdc.js +0 -4
- package/components/p-D_RCyzwu.js +0 -4
- package/components/p-D_tD8r3L.js +0 -4
- package/components/p-DjCtLZbF.js +0 -4
- package/components/p-Dmd2xqCe.js +0 -4
- package/components/p-G6JR-cr_.js +0 -4
- package/components/p-GG5GhznE.js +0 -4
- package/components/p-TXPDHL13.js +0 -4
- package/components/p-_IKFD3ID.js +0 -4
- package/components/p-dKq2jIum.js +0 -4
- package/components/p-iYhH60Tc.js +0 -4
- 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-4204184c.entry.js +0 -4
- package/dist/ionic/p-47464391.entry.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-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-C-94tAim.js +0 -4
- package/dist/ionic/p-C-eHZMYE.js +0 -4
- package/dist/ionic/p-CaRuIadB.js +0 -4
- package/dist/ionic/p-ChhhtsGZ.js +0 -5
- package/dist/ionic/p-CzS1qWve.js +0 -4
- package/dist/ionic/p-DjjfauRM.js +0 -4
- package/dist/ionic/p-DkUB-ROc.js +0 -4
- package/dist/ionic/p-DplOqGUv.js +0 -4
- package/dist/ionic/p-Dst_XmZh.js +0 -4
- package/dist/ionic/p-TXPDHL13.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-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-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
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, c as createEvent,
|
|
5
|
-
import { d as debounceEvent, b as inheritAttributes, c as componentOnReady, r as raf } from './helpers-
|
|
4
|
+
import { r as registerInstance, c as createEvent, e as config, i as forceUpdate, h, d as Host, g as getElement } from './index-CKYcsw8f.js';
|
|
5
|
+
import { d as debounceEvent, b as inheritAttributes, c as componentOnReady, r as raf } from './helpers-BIgoInJU.js';
|
|
6
6
|
import { i as isRTL } from './dir-Dojwmvde.js';
|
|
7
7
|
import { c as createColorClasses } from './theme-byZM6qHV.js';
|
|
8
8
|
import { a as arrowBackSharp, s as searchOutline, i as searchSharp, g as closeCircle, h as closeSharp } from './index-BvabGprD.js';
|
|
9
|
-
import { b as getIonMode } from './ionic-global-
|
|
9
|
+
import { b as getIonMode } from './ionic-global-lrowsHfi.js';
|
|
10
10
|
|
|
11
11
|
const searchbarIosCss = () => `.sc-ion-searchbar-ios-h{--placeholder-color:initial;--placeholder-font-style:initial;--placeholder-font-weight:initial;--placeholder-opacity:var(--ion-placeholder-opacity, 0.6);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;width:100%;color:var(--color);font-family:var(--ion-font-family, inherit);-webkit-box-sizing:border-box;box-sizing:border-box}.ion-color.sc-ion-searchbar-ios-h{color:var(--ion-color-contrast)}.ion-color.sc-ion-searchbar-ios-h .searchbar-input.sc-ion-searchbar-ios{background:var(--ion-color-base)}.ion-color.sc-ion-searchbar-ios-h .searchbar-clear-button.sc-ion-searchbar-ios,.ion-color.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios,.ion-color.sc-ion-searchbar-ios-h .searchbar-search-icon.sc-ion-searchbar-ios{color:inherit}.searchbar-search-icon.sc-ion-searchbar-ios{color:var(--icon-color);pointer-events:none}.searchbar-input-container.sc-ion-searchbar-ios{display:block;position:relative;-ms-flex-negative:1;flex-shrink:1;width:100%}.searchbar-input.sc-ion-searchbar-ios{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;border-radius:var(--border-radius);display:block;width:100%;min-height:inherit;border:0;outline:none;background:var(--background);font-family:inherit;-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}.searchbar-input.sc-ion-searchbar-ios::-webkit-input-placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity)}.searchbar-input.sc-ion-searchbar-ios::-moz-placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity)}.searchbar-input.sc-ion-searchbar-ios:-ms-input-placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity)}.searchbar-input.sc-ion-searchbar-ios::-ms-input-placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity)}.searchbar-input.sc-ion-searchbar-ios::placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity)}.searchbar-input.sc-ion-searchbar-ios::-webkit-search-cancel-button,.searchbar-input.sc-ion-searchbar-ios::-ms-clear{display:none}.searchbar-cancel-button.sc-ion-searchbar-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:none;height:100%;border:0;outline:none;color:var(--cancel-button-color);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.searchbar-cancel-button.sc-ion-searchbar-ios>div.sc-ion-searchbar-ios{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%}.searchbar-clear-button.sc-ion-searchbar-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;display:none;min-height:0;outline:none;color:var(--clear-button-color);-webkit-appearance:none;-moz-appearance:none;appearance:none}.searchbar-clear-button.sc-ion-searchbar-ios:focus{opacity:0.5}.searchbar-has-value.searchbar-should-show-clear.sc-ion-searchbar-ios-h .searchbar-clear-button.sc-ion-searchbar-ios{display:block}.searchbar-disabled.sc-ion-searchbar-ios-h{cursor:default;opacity:0.4;pointer-events:none}.sc-ion-searchbar-ios-h{--background:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.07);--border-radius:10px;--box-shadow:none;--cancel-button-color:var(--ion-color-primary, #0054e9);--clear-button-color:var(--ion-color-step-600, var(--ion-text-color-step-400, #666666));--color:var(--ion-text-color, #000);--icon-color:var(--ion-color-step-600, var(--ion-text-color-step-400, #666666));-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:12px;padding-inline-end:12px;padding-top:12px;padding-bottom:12px;min-height:60px;contain:content}.searchbar-input-container.sc-ion-searchbar-ios{min-height:36px}.searchbar-search-icon.sc-ion-searchbar-ios{-webkit-margin-start:calc(50% - 60px);margin-inline-start:calc(50% - 60px);top:0;position:absolute;width:1.375rem;height:100%;contain:strict}.searchbar-search-icon.sc-ion-searchbar-ios{inset-inline-start:5px}.searchbar-input.sc-ion-searchbar-ios{-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px;padding-top:6px;padding-bottom:6px;height:100%;font-size:1.0625rem;font-weight:400;contain:strict}.searchbar-has-value.searchbar-should-show-clear.sc-ion-searchbar-ios-h .searchbar-input.sc-ion-searchbar-ios{-webkit-padding-start:1.75rem;padding-inline-start:1.75rem;-webkit-padding-end:1.75rem;padding-inline-end:1.75rem}.searchbar-clear-button.sc-ion-searchbar-ios{top:0;background-position:center;position:absolute;width:1.875rem;height:100%;border:0;background-color:transparent}.searchbar-clear-button.sc-ion-searchbar-ios{inset-inline-end:0}.searchbar-clear-icon.sc-ion-searchbar-ios{width:1.125rem;height:100%}.searchbar-cancel-button.sc-ion-searchbar-ios{-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:0;padding-inline-end:0;padding-top:0;padding-bottom:0;-ms-flex-negative:0;flex-shrink:0;background-color:transparent;font-size:17px}.searchbar-left-aligned.sc-ion-searchbar-ios-h .searchbar-search-icon.sc-ion-searchbar-ios{-webkit-margin-start:0;margin-inline-start:0}.searchbar-left-aligned.sc-ion-searchbar-ios-h .searchbar-input.sc-ion-searchbar-ios{-webkit-padding-start:1.875rem;padding-inline-start:1.875rem}.searchbar-has-focus.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios,.searchbar-should-show-cancel.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios,.searchbar-animated.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios{display:block}.searchbar-animated.sc-ion-searchbar-ios-h .searchbar-search-icon.sc-ion-searchbar-ios,.searchbar-animated.sc-ion-searchbar-ios-h .searchbar-input.sc-ion-searchbar-ios{-webkit-transition:all 300ms ease;transition:all 300ms ease}.searchbar-animated.searchbar-has-focus.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios,.searchbar-animated.searchbar-should-show-cancel.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios{opacity:1;pointer-events:auto}.searchbar-animated.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios{-webkit-margin-end:-100%;margin-inline-end:-100%;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);-webkit-transition:all 300ms ease;transition:all 300ms ease;opacity:0;pointer-events:none}.searchbar-no-animate.sc-ion-searchbar-ios-h .searchbar-search-icon.sc-ion-searchbar-ios,.searchbar-no-animate.sc-ion-searchbar-ios-h .searchbar-input.sc-ion-searchbar-ios,.searchbar-no-animate.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios{-webkit-transition-duration:0ms;transition-duration:0ms}.ion-color.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios{color:var(--ion-color-base)}@media (any-hover: hover){.ion-color.sc-ion-searchbar-ios-h .searchbar-cancel-button.sc-ion-searchbar-ios:hover{color:var(--ion-color-tint)}}ion-toolbar.sc-ion-searchbar-ios-h,ion-toolbar .sc-ion-searchbar-ios-h{padding-top:1px;padding-bottom:15px;min-height:52px}ion-toolbar.ion-color.sc-ion-searchbar-ios-h:not(.ion-color),ion-toolbar.ion-color .sc-ion-searchbar-ios-h:not(.ion-color){color:inherit}ion-toolbar.ion-color.sc-ion-searchbar-ios-h:not(.ion-color) .searchbar-cancel-button.sc-ion-searchbar-ios,ion-toolbar.ion-color .sc-ion-searchbar-ios-h:not(.ion-color) .searchbar-cancel-button.sc-ion-searchbar-ios{color:currentColor}ion-toolbar.ion-color.sc-ion-searchbar-ios-h .searchbar-search-icon.sc-ion-searchbar-ios,ion-toolbar.ion-color .sc-ion-searchbar-ios-h .searchbar-search-icon.sc-ion-searchbar-ios{color:currentColor;opacity:0.5}ion-toolbar.ion-color.sc-ion-searchbar-ios-h:not(.ion-color) .searchbar-input.sc-ion-searchbar-ios,ion-toolbar.ion-color .sc-ion-searchbar-ios-h:not(.ion-color) .searchbar-input.sc-ion-searchbar-ios{background:rgba(var(--ion-color-contrast-rgb), 0.07);color:currentColor}ion-toolbar.ion-color.sc-ion-searchbar-ios-h:not(.ion-color) .searchbar-clear-button.sc-ion-searchbar-ios,ion-toolbar.ion-color .sc-ion-searchbar-ios-h:not(.ion-color) .searchbar-clear-button.sc-ion-searchbar-ios{color:currentColor;opacity:0.5}`;
|
|
12
12
|
|
|
@@ -22,23 +22,185 @@ const Searchbar = class {
|
|
|
22
22
|
this.ionBlur = createEvent(this, "ionBlur", 7);
|
|
23
23
|
this.ionFocus = createEvent(this, "ionFocus", 7);
|
|
24
24
|
this.ionStyle = createEvent(this, "ionStyle", 7);
|
|
25
|
+
this.isCancelVisible = false;
|
|
26
|
+
this.shouldAlignLeft = true;
|
|
27
|
+
this.inputId = `ion-searchbar-${searchbarIds++}`;
|
|
28
|
+
this.inheritedAttributes = {};
|
|
29
|
+
this.focused = false;
|
|
30
|
+
this.noAnimate = true;
|
|
31
|
+
/**
|
|
32
|
+
* If `true`, enable searchbar animation.
|
|
33
|
+
*/
|
|
34
|
+
this.animated = false;
|
|
35
|
+
/**
|
|
36
|
+
* Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user.
|
|
37
|
+
* Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
|
|
38
|
+
*/
|
|
39
|
+
this.autocapitalize = 'off';
|
|
40
|
+
/**
|
|
41
|
+
* Set the input's autocomplete property.
|
|
42
|
+
*/
|
|
43
|
+
this.autocomplete = 'off';
|
|
44
|
+
/**
|
|
45
|
+
* Set the input's autocorrect property.
|
|
46
|
+
*/
|
|
47
|
+
this.autocorrect = false;
|
|
48
|
+
/**
|
|
49
|
+
* Set the cancel button icon. Only applies to `md` mode.
|
|
50
|
+
* Defaults to `arrow-back-sharp`.
|
|
51
|
+
*/
|
|
52
|
+
this.cancelButtonIcon = config.get('backButtonIcon', arrowBackSharp);
|
|
53
|
+
/**
|
|
54
|
+
* Set the cancel button text. Only applies to `ios` mode.
|
|
55
|
+
*/
|
|
56
|
+
this.cancelButtonText = 'Cancel';
|
|
57
|
+
/**
|
|
58
|
+
* If `true`, the user cannot interact with the input.
|
|
59
|
+
*/
|
|
60
|
+
this.disabled = false;
|
|
61
|
+
/**
|
|
62
|
+
* If used in a form, set the name of the control, which is submitted with the form data.
|
|
63
|
+
*/
|
|
64
|
+
this.name = this.inputId;
|
|
65
|
+
/**
|
|
66
|
+
* Set the input's placeholder.
|
|
67
|
+
* `placeholder` can accept either plaintext or HTML as a string.
|
|
68
|
+
* To display characters normally reserved for HTML, they
|
|
69
|
+
* must be escaped. For example `<Ionic>` would become
|
|
70
|
+
* `<Ionic>`
|
|
71
|
+
*
|
|
72
|
+
* For more information: [Security Documentation](https://ionicframework.com/docs/faq/security)
|
|
73
|
+
*/
|
|
74
|
+
this.placeholder = 'Search';
|
|
75
|
+
/**
|
|
76
|
+
* Sets the behavior for the cancel button. Defaults to `"never"`.
|
|
77
|
+
* Setting to `"focus"` shows the cancel button on focus.
|
|
78
|
+
* Setting to `"never"` hides the cancel button.
|
|
79
|
+
* Setting to `"always"` shows the cancel button regardless
|
|
80
|
+
* of focus state.
|
|
81
|
+
*/
|
|
82
|
+
this.showCancelButton = 'never';
|
|
83
|
+
/**
|
|
84
|
+
* Sets the behavior for the clear button. Defaults to `"focus"`.
|
|
85
|
+
* Setting to `"focus"` shows the clear button on focus if the
|
|
86
|
+
* input is not empty.
|
|
87
|
+
* Setting to `"never"` hides the clear button.
|
|
88
|
+
* Setting to `"always"` shows the clear button regardless
|
|
89
|
+
* of focus state, but only if the input is not empty.
|
|
90
|
+
*/
|
|
91
|
+
this.showClearButton = 'always';
|
|
92
|
+
/**
|
|
93
|
+
* If `true`, enable spellcheck on the input.
|
|
94
|
+
*/
|
|
95
|
+
this.spellcheck = false;
|
|
96
|
+
/**
|
|
97
|
+
* Set the type of the input.
|
|
98
|
+
*/
|
|
99
|
+
this.type = 'search';
|
|
100
|
+
/**
|
|
101
|
+
* the value of the searchbar.
|
|
102
|
+
*/
|
|
103
|
+
this.value = '';
|
|
104
|
+
/**
|
|
105
|
+
* Clears the input field and triggers the control change.
|
|
106
|
+
*/
|
|
107
|
+
this.onClearInput = async (shouldFocus) => {
|
|
108
|
+
if (this.clearTimeout) {
|
|
109
|
+
clearTimeout(this.clearTimeout);
|
|
110
|
+
}
|
|
111
|
+
this.ionClear.emit();
|
|
112
|
+
return new Promise((resolve) => {
|
|
113
|
+
// setTimeout() fixes https://github.com/ionic-team/ionic-framework/issues/7527
|
|
114
|
+
// wait for 4 frames
|
|
115
|
+
this.clearTimeout = setTimeout(() => {
|
|
116
|
+
const value = this.getValue();
|
|
117
|
+
if (value !== '') {
|
|
118
|
+
this.value = '';
|
|
119
|
+
this.emitInputChange();
|
|
120
|
+
/**
|
|
121
|
+
* When tapping clear button
|
|
122
|
+
* ensure input is focused after
|
|
123
|
+
* clearing input so users
|
|
124
|
+
* can quickly start typing.
|
|
125
|
+
*/
|
|
126
|
+
if (shouldFocus && !this.focused) {
|
|
127
|
+
this.setFocus();
|
|
128
|
+
/**
|
|
129
|
+
* The setFocus call above will clear focusedValue,
|
|
130
|
+
* but ionChange will never have gotten a chance to
|
|
131
|
+
* fire. Manually revert focusedValue so onBlur can
|
|
132
|
+
* compare against what was in the box before the clear.
|
|
133
|
+
*/
|
|
134
|
+
this.focusedValue = value;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
resolve();
|
|
138
|
+
}, 16 * 4);
|
|
139
|
+
});
|
|
140
|
+
};
|
|
141
|
+
/**
|
|
142
|
+
* Clears the input field and tells the input to blur since
|
|
143
|
+
* the clearInput function doesn't want the input to blur
|
|
144
|
+
* then calls the custom cancel function if the user passed one in.
|
|
145
|
+
*/
|
|
146
|
+
this.onCancelSearchbar = async (ev) => {
|
|
147
|
+
if (ev) {
|
|
148
|
+
ev.preventDefault();
|
|
149
|
+
ev.stopPropagation();
|
|
150
|
+
}
|
|
151
|
+
this.ionCancel.emit();
|
|
152
|
+
// get cached values before clearing the input
|
|
153
|
+
const value = this.getValue();
|
|
154
|
+
const focused = this.focused;
|
|
155
|
+
await this.onClearInput();
|
|
156
|
+
/**
|
|
157
|
+
* If there used to be something in the box, and we weren't focused
|
|
158
|
+
* beforehand (meaning no blur fired that would already handle this),
|
|
159
|
+
* manually fire ionChange.
|
|
160
|
+
*/
|
|
161
|
+
if (value && !focused) {
|
|
162
|
+
this.emitValueChange(ev);
|
|
163
|
+
}
|
|
164
|
+
if (this.nativeInput) {
|
|
165
|
+
this.nativeInput.blur();
|
|
166
|
+
}
|
|
167
|
+
};
|
|
168
|
+
/**
|
|
169
|
+
* Update the Searchbar input value when the input changes
|
|
170
|
+
*/
|
|
171
|
+
this.onInput = (ev) => {
|
|
172
|
+
const input = ev.target;
|
|
173
|
+
if (input) {
|
|
174
|
+
this.value = input.value;
|
|
175
|
+
}
|
|
176
|
+
this.emitInputChange(ev);
|
|
177
|
+
};
|
|
178
|
+
this.onChange = (ev) => {
|
|
179
|
+
this.emitValueChange(ev);
|
|
180
|
+
};
|
|
181
|
+
/**
|
|
182
|
+
* Sets the Searchbar to not focused and checks if it should align left
|
|
183
|
+
* based on whether there is a value in the searchbar or not.
|
|
184
|
+
*/
|
|
185
|
+
this.onBlur = (ev) => {
|
|
186
|
+
this.focused = false;
|
|
187
|
+
this.ionBlur.emit();
|
|
188
|
+
this.positionElements();
|
|
189
|
+
if (this.focusedValue !== this.value) {
|
|
190
|
+
this.emitValueChange(ev);
|
|
191
|
+
}
|
|
192
|
+
this.focusedValue = undefined;
|
|
193
|
+
};
|
|
194
|
+
/**
|
|
195
|
+
* Sets the Searchbar to focused and active on input focus.
|
|
196
|
+
*/
|
|
197
|
+
this.onFocus = () => {
|
|
198
|
+
this.focused = true;
|
|
199
|
+
this.focusedValue = this.value;
|
|
200
|
+
this.ionFocus.emit();
|
|
201
|
+
this.positionElements();
|
|
202
|
+
};
|
|
25
203
|
}
|
|
26
|
-
nativeInput;
|
|
27
|
-
isCancelVisible = false;
|
|
28
|
-
shouldAlignLeft = true;
|
|
29
|
-
originalIonInput;
|
|
30
|
-
inputId = `ion-searchbar-${searchbarIds++}`;
|
|
31
|
-
inheritedAttributes = {};
|
|
32
|
-
loadTimeout;
|
|
33
|
-
clearTimeout;
|
|
34
|
-
searchIconResizeObserver;
|
|
35
|
-
/**
|
|
36
|
-
* The value of the input when the textarea is focused.
|
|
37
|
-
*/
|
|
38
|
-
focusedValue;
|
|
39
|
-
get el() { return getElement(this); }
|
|
40
|
-
focused = false;
|
|
41
|
-
noAnimate = true;
|
|
42
204
|
/**
|
|
43
205
|
* lang and dir are globally enumerated attributes.
|
|
44
206
|
* As a result, creating these as properties
|
|
@@ -60,46 +222,6 @@ const Searchbar = class {
|
|
|
60
222
|
};
|
|
61
223
|
forceUpdate(this);
|
|
62
224
|
}
|
|
63
|
-
/**
|
|
64
|
-
* The color to use from your application's color palette.
|
|
65
|
-
* Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
|
|
66
|
-
* For more information on colors, see [theming](/docs/theming/basics).
|
|
67
|
-
*/
|
|
68
|
-
color;
|
|
69
|
-
/**
|
|
70
|
-
* If `true`, enable searchbar animation.
|
|
71
|
-
*/
|
|
72
|
-
animated = false;
|
|
73
|
-
/**
|
|
74
|
-
* Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user.
|
|
75
|
-
* Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
|
|
76
|
-
*/
|
|
77
|
-
autocapitalize = 'off';
|
|
78
|
-
/**
|
|
79
|
-
* Set the input's autocomplete property.
|
|
80
|
-
*/
|
|
81
|
-
autocomplete = 'off';
|
|
82
|
-
/**
|
|
83
|
-
* Set the input's autocorrect property.
|
|
84
|
-
*/
|
|
85
|
-
autocorrect = false;
|
|
86
|
-
/**
|
|
87
|
-
* Set the cancel button icon. Only applies to `md` mode.
|
|
88
|
-
* Defaults to `arrow-back-sharp`.
|
|
89
|
-
*/
|
|
90
|
-
cancelButtonIcon = config.get('backButtonIcon', arrowBackSharp);
|
|
91
|
-
/**
|
|
92
|
-
* Set the cancel button text. Only applies to `ios` mode.
|
|
93
|
-
*/
|
|
94
|
-
cancelButtonText = 'Cancel';
|
|
95
|
-
/**
|
|
96
|
-
* Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
|
|
97
|
-
*/
|
|
98
|
-
clearIcon;
|
|
99
|
-
/**
|
|
100
|
-
* Set the amount of time, in milliseconds, to wait to trigger the `ionInput` event after each keystroke.
|
|
101
|
-
*/
|
|
102
|
-
debounce;
|
|
103
225
|
debounceChanged() {
|
|
104
226
|
const { ionInput, debounce, originalIonInput } = this;
|
|
105
227
|
/**
|
|
@@ -108,116 +230,6 @@ const Searchbar = class {
|
|
|
108
230
|
*/
|
|
109
231
|
this.ionInput = debounce === undefined ? originalIonInput ?? ionInput : debounceEvent(ionInput, debounce);
|
|
110
232
|
}
|
|
111
|
-
/**
|
|
112
|
-
* If `true`, the user cannot interact with the input.
|
|
113
|
-
*/
|
|
114
|
-
disabled = false;
|
|
115
|
-
/**
|
|
116
|
-
* A hint to the browser for which keyboard to display.
|
|
117
|
-
* Possible values: `"none"`, `"text"`, `"tel"`, `"url"`,
|
|
118
|
-
* `"email"`, `"numeric"`, `"decimal"`, and `"search"`.
|
|
119
|
-
*/
|
|
120
|
-
inputmode;
|
|
121
|
-
/**
|
|
122
|
-
* A hint to the browser for which enter key to display.
|
|
123
|
-
* Possible values: `"enter"`, `"done"`, `"go"`, `"next"`,
|
|
124
|
-
* `"previous"`, `"search"`, and `"send"`.
|
|
125
|
-
*/
|
|
126
|
-
enterkeyhint;
|
|
127
|
-
/**
|
|
128
|
-
* This attribute specifies the maximum number of characters that the user can enter.
|
|
129
|
-
*/
|
|
130
|
-
maxlength;
|
|
131
|
-
/**
|
|
132
|
-
* This attribute specifies the minimum number of characters that the user can enter.
|
|
133
|
-
*/
|
|
134
|
-
minlength;
|
|
135
|
-
/**
|
|
136
|
-
* If used in a form, set the name of the control, which is submitted with the form data.
|
|
137
|
-
*/
|
|
138
|
-
name = this.inputId;
|
|
139
|
-
/**
|
|
140
|
-
* Set the input's placeholder.
|
|
141
|
-
* `placeholder` can accept either plaintext or HTML as a string.
|
|
142
|
-
* To display characters normally reserved for HTML, they
|
|
143
|
-
* must be escaped. For example `<Ionic>` would become
|
|
144
|
-
* `<Ionic>`
|
|
145
|
-
*
|
|
146
|
-
* For more information: [Security Documentation](https://ionicframework.com/docs/faq/security)
|
|
147
|
-
*/
|
|
148
|
-
placeholder = 'Search';
|
|
149
|
-
/**
|
|
150
|
-
* The icon to use as the search icon. Defaults to `search-outline` in
|
|
151
|
-
* `ios` mode and `search-sharp` in `md` mode.
|
|
152
|
-
*/
|
|
153
|
-
searchIcon;
|
|
154
|
-
/**
|
|
155
|
-
* Sets the behavior for the cancel button. Defaults to `"never"`.
|
|
156
|
-
* Setting to `"focus"` shows the cancel button on focus.
|
|
157
|
-
* Setting to `"never"` hides the cancel button.
|
|
158
|
-
* Setting to `"always"` shows the cancel button regardless
|
|
159
|
-
* of focus state.
|
|
160
|
-
*/
|
|
161
|
-
showCancelButton = 'never';
|
|
162
|
-
/**
|
|
163
|
-
* Sets the behavior for the clear button. Defaults to `"focus"`.
|
|
164
|
-
* Setting to `"focus"` shows the clear button on focus if the
|
|
165
|
-
* input is not empty.
|
|
166
|
-
* Setting to `"never"` hides the clear button.
|
|
167
|
-
* Setting to `"always"` shows the clear button regardless
|
|
168
|
-
* of focus state, but only if the input is not empty.
|
|
169
|
-
*/
|
|
170
|
-
showClearButton = 'always';
|
|
171
|
-
/**
|
|
172
|
-
* If `true`, enable spellcheck on the input.
|
|
173
|
-
*/
|
|
174
|
-
spellcheck = false;
|
|
175
|
-
/**
|
|
176
|
-
* Set the type of the input.
|
|
177
|
-
*/
|
|
178
|
-
type = 'search';
|
|
179
|
-
/**
|
|
180
|
-
* the value of the searchbar.
|
|
181
|
-
*/
|
|
182
|
-
value = '';
|
|
183
|
-
/**
|
|
184
|
-
* Emitted when the `value` of the `ion-searchbar` element has changed.
|
|
185
|
-
*/
|
|
186
|
-
ionInput;
|
|
187
|
-
/**
|
|
188
|
-
* The `ionChange` event is fired for `<ion-searchbar>` elements when the user
|
|
189
|
-
* modifies the element's value. Unlike the `ionInput` event, the `ionChange`
|
|
190
|
-
* event is not necessarily fired for each alteration to an element's value.
|
|
191
|
-
*
|
|
192
|
-
* The `ionChange` event is fired when the value has been committed
|
|
193
|
-
* by the user. This can happen when the element loses focus or
|
|
194
|
-
* when the "Enter" key is pressed. `ionChange` can also fire
|
|
195
|
-
* when clicking the clear or cancel buttons.
|
|
196
|
-
*
|
|
197
|
-
* This event will not emit when programmatically setting the `value` property.
|
|
198
|
-
*/
|
|
199
|
-
ionChange;
|
|
200
|
-
/**
|
|
201
|
-
* Emitted when the cancel button is clicked.
|
|
202
|
-
*/
|
|
203
|
-
ionCancel;
|
|
204
|
-
/**
|
|
205
|
-
* Emitted when the clear input button is clicked.
|
|
206
|
-
*/
|
|
207
|
-
ionClear;
|
|
208
|
-
/**
|
|
209
|
-
* Emitted when the input loses focus.
|
|
210
|
-
*/
|
|
211
|
-
ionBlur;
|
|
212
|
-
/**
|
|
213
|
-
* Emitted when the input has focus.
|
|
214
|
-
*/
|
|
215
|
-
ionFocus;
|
|
216
|
-
/**
|
|
217
|
-
* Emitted when the styles change.
|
|
218
|
-
* @internal
|
|
219
|
-
*/
|
|
220
|
-
ionStyle;
|
|
221
233
|
valueChanged() {
|
|
222
234
|
const inputEl = this.nativeInput;
|
|
223
235
|
const value = this.getValue();
|
|
@@ -310,105 +322,6 @@ const Searchbar = class {
|
|
|
310
322
|
const { value } = this;
|
|
311
323
|
this.ionInput.emit({ value, event });
|
|
312
324
|
}
|
|
313
|
-
/**
|
|
314
|
-
* Clears the input field and triggers the control change.
|
|
315
|
-
*/
|
|
316
|
-
onClearInput = async (shouldFocus) => {
|
|
317
|
-
if (this.clearTimeout) {
|
|
318
|
-
clearTimeout(this.clearTimeout);
|
|
319
|
-
}
|
|
320
|
-
this.ionClear.emit();
|
|
321
|
-
return new Promise((resolve) => {
|
|
322
|
-
// setTimeout() fixes https://github.com/ionic-team/ionic-framework/issues/7527
|
|
323
|
-
// wait for 4 frames
|
|
324
|
-
this.clearTimeout = setTimeout(() => {
|
|
325
|
-
const value = this.getValue();
|
|
326
|
-
if (value !== '') {
|
|
327
|
-
this.value = '';
|
|
328
|
-
this.emitInputChange();
|
|
329
|
-
/**
|
|
330
|
-
* When tapping clear button
|
|
331
|
-
* ensure input is focused after
|
|
332
|
-
* clearing input so users
|
|
333
|
-
* can quickly start typing.
|
|
334
|
-
*/
|
|
335
|
-
if (shouldFocus && !this.focused) {
|
|
336
|
-
this.setFocus();
|
|
337
|
-
/**
|
|
338
|
-
* The setFocus call above will clear focusedValue,
|
|
339
|
-
* but ionChange will never have gotten a chance to
|
|
340
|
-
* fire. Manually revert focusedValue so onBlur can
|
|
341
|
-
* compare against what was in the box before the clear.
|
|
342
|
-
*/
|
|
343
|
-
this.focusedValue = value;
|
|
344
|
-
}
|
|
345
|
-
}
|
|
346
|
-
resolve();
|
|
347
|
-
}, 16 * 4);
|
|
348
|
-
});
|
|
349
|
-
};
|
|
350
|
-
/**
|
|
351
|
-
* Clears the input field and tells the input to blur since
|
|
352
|
-
* the clearInput function doesn't want the input to blur
|
|
353
|
-
* then calls the custom cancel function if the user passed one in.
|
|
354
|
-
*/
|
|
355
|
-
onCancelSearchbar = async (ev) => {
|
|
356
|
-
if (ev) {
|
|
357
|
-
ev.preventDefault();
|
|
358
|
-
ev.stopPropagation();
|
|
359
|
-
}
|
|
360
|
-
this.ionCancel.emit();
|
|
361
|
-
// get cached values before clearing the input
|
|
362
|
-
const value = this.getValue();
|
|
363
|
-
const focused = this.focused;
|
|
364
|
-
await this.onClearInput();
|
|
365
|
-
/**
|
|
366
|
-
* If there used to be something in the box, and we weren't focused
|
|
367
|
-
* beforehand (meaning no blur fired that would already handle this),
|
|
368
|
-
* manually fire ionChange.
|
|
369
|
-
*/
|
|
370
|
-
if (value && !focused) {
|
|
371
|
-
this.emitValueChange(ev);
|
|
372
|
-
}
|
|
373
|
-
if (this.nativeInput) {
|
|
374
|
-
this.nativeInput.blur();
|
|
375
|
-
}
|
|
376
|
-
};
|
|
377
|
-
/**
|
|
378
|
-
* Update the Searchbar input value when the input changes
|
|
379
|
-
*/
|
|
380
|
-
onInput = (ev) => {
|
|
381
|
-
const input = ev.target;
|
|
382
|
-
if (input) {
|
|
383
|
-
this.value = input.value;
|
|
384
|
-
}
|
|
385
|
-
this.emitInputChange(ev);
|
|
386
|
-
};
|
|
387
|
-
onChange = (ev) => {
|
|
388
|
-
this.emitValueChange(ev);
|
|
389
|
-
};
|
|
390
|
-
/**
|
|
391
|
-
* Sets the Searchbar to not focused and checks if it should align left
|
|
392
|
-
* based on whether there is a value in the searchbar or not.
|
|
393
|
-
*/
|
|
394
|
-
onBlur = (ev) => {
|
|
395
|
-
this.focused = false;
|
|
396
|
-
this.ionBlur.emit();
|
|
397
|
-
this.positionElements();
|
|
398
|
-
if (this.focusedValue !== this.value) {
|
|
399
|
-
this.emitValueChange(ev);
|
|
400
|
-
}
|
|
401
|
-
this.focusedValue = undefined;
|
|
402
|
-
};
|
|
403
|
-
/**
|
|
404
|
-
* Sets the Searchbar to focused and active on input focus.
|
|
405
|
-
*/
|
|
406
|
-
onFocus = () => {
|
|
407
|
-
this.focused = true;
|
|
408
|
-
this.focusedValue = this.value;
|
|
409
|
-
this.ionFocus.emit();
|
|
410
|
-
this.positionElements();
|
|
411
|
-
};
|
|
412
325
|
/**
|
|
413
326
|
* Positions the input search icon, placeholder, and the cancel button
|
|
414
327
|
* based on the input value and if it is focused. (ios only)
|
|
@@ -580,6 +493,7 @@ const Searchbar = class {
|
|
|
580
493
|
ev.preventDefault();
|
|
581
494
|
}, 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));
|
|
582
495
|
}
|
|
496
|
+
get el() { return getElement(this); }
|
|
583
497
|
static get watchers() { return {
|
|
584
498
|
"lang": [{
|
|
585
499
|
"onLangChanged": 0
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, d as Host } from './index-
|
|
4
|
+
import { r as registerInstance, h, d as Host } from './index-CKYcsw8f.js';
|
|
5
5
|
|
|
6
6
|
const segmentContentCss = () => `:host{scroll-snap-align:center;scroll-snap-stop:always;-ms-flex-negative:0;flex-shrink:0;width:100%;min-height:1px;overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none;}:host::-webkit-scrollbar{display:none}`;
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, c as createEvent,
|
|
4
|
+
import { r as registerInstance, c as createEvent, h, d as Host, g as getElement } from './index-CKYcsw8f.js';
|
|
5
5
|
import { i as isRTL } from './dir-Dojwmvde.js';
|
|
6
6
|
|
|
7
7
|
const segmentViewIosCss = () => `:host{display:-ms-flexbox;display:flex;height:100%;overflow-x:scroll;-webkit-scroll-snap-type:x mandatory;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}:host::-webkit-scrollbar{display:none}:host(.segment-view-disabled),:host(.segment-view-swipe-disabled){-ms-touch-action:none;touch-action:none;overflow-x:hidden}:host(.segment-view-scroll-disabled){pointer-events:none}:host(.segment-view-disabled){opacity:0.3}`;
|
|
@@ -12,30 +12,17 @@ const SegmentView = class {
|
|
|
12
12
|
constructor(hostRef) {
|
|
13
13
|
registerInstance(this, hostRef);
|
|
14
14
|
this.ionSegmentViewScroll = createEvent(this, "ionSegmentViewScroll", 7);
|
|
15
|
+
this.scrollEndTimeout = null;
|
|
16
|
+
this.isTouching = false;
|
|
17
|
+
/**
|
|
18
|
+
* If `true`, the segment view cannot be interacted with.
|
|
19
|
+
*/
|
|
20
|
+
this.disabled = false;
|
|
21
|
+
/**
|
|
22
|
+
* If `true`, users will be able to swipe the segment view to navigate between segment contents.
|
|
23
|
+
*/
|
|
24
|
+
this.swipeGesture = true;
|
|
15
25
|
}
|
|
16
|
-
scrollEndTimeout = null;
|
|
17
|
-
isTouching = false;
|
|
18
|
-
get el() { return getElement(this); }
|
|
19
|
-
/**
|
|
20
|
-
* If `true`, the segment view cannot be interacted with.
|
|
21
|
-
*/
|
|
22
|
-
disabled = false;
|
|
23
|
-
/**
|
|
24
|
-
* If `true`, users will be able to swipe the segment view to navigate between segment contents.
|
|
25
|
-
*/
|
|
26
|
-
swipeGesture = true;
|
|
27
|
-
/**
|
|
28
|
-
* @internal
|
|
29
|
-
*
|
|
30
|
-
* If `true`, the segment view is scrollable.
|
|
31
|
-
* If `false`, pointer events will be disabled. This is to prevent issues with
|
|
32
|
-
* quickly scrolling after interacting with a segment button.
|
|
33
|
-
*/
|
|
34
|
-
isManualScroll;
|
|
35
|
-
/**
|
|
36
|
-
* Emitted when the segment view is scrolled.
|
|
37
|
-
*/
|
|
38
|
-
ionSegmentViewScroll;
|
|
39
26
|
handleScroll(ev) {
|
|
40
27
|
const { scrollLeft, scrollWidth, clientWidth } = ev.target;
|
|
41
28
|
const max = scrollWidth - clientWidth;
|
|
@@ -128,6 +115,7 @@ const SegmentView = class {
|
|
|
128
115
|
'segment-view-swipe-disabled': swipeGesture === false,
|
|
129
116
|
} }, h("slot", { key: 'ad5aa8b79790c490e13438afa0cbb2c241eab0a1' })));
|
|
130
117
|
}
|
|
118
|
+
get el() { return getElement(this); }
|
|
131
119
|
};
|
|
132
120
|
SegmentView.style = {
|
|
133
121
|
ios: segmentViewIosCss(),
|