@ionic/core 7.5.8-dev.11701448395.18799530 → 7.5.8-dev.11701788142.11dcb825
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/ion-input.js +21 -2
- package/components/ion-refresher-content.js +3 -10
- package/components/ion-refresher.js +183 -4
- package/components/ion-searchbar.js +2 -0
- package/components/ion-textarea.js +25 -2
- package/dist/cjs/{app-globals-28656db1.js → app-globals-0af482c7.js} +1 -1
- package/dist/cjs/{button-active-75b38d77.js → button-active-417ccdcb.js} +1 -1
- package/dist/cjs/{index-097270a3.js → index-5cbb20f9.js} +1 -1
- package/dist/cjs/{index-b0102f48.js → index-bbb4336c.js} +39 -1
- package/dist/cjs/{index-cb3e0ab7.js → index-d4c2e02c.js} +3 -3
- package/dist/cjs/index.cjs.js +7 -7
- package/dist/cjs/ion-accordion_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-action-sheet.cjs.entry.js +4 -4
- package/dist/cjs/ion-alert.cjs.entry.js +4 -4
- package/dist/cjs/ion-app_8.cjs.entry.js +4 -4
- package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-back-button.cjs.entry.js +2 -2
- package/dist/cjs/ion-backdrop.cjs.entry.js +2 -2
- package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-card_5.cjs.entry.js +2 -2
- package/dist/cjs/ion-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/ion-chip.cjs.entry.js +2 -2
- package/dist/cjs/ion-col_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-datetime-button.cjs.entry.js +2 -2
- package/dist/cjs/ion-datetime_3.cjs.entry.js +3 -3
- package/dist/cjs/ion-fab_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-img.cjs.entry.js +2 -2
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-input.cjs.entry.js +23 -4
- package/dist/cjs/ion-item-option_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-item_8.cjs.entry.js +2 -2
- package/dist/cjs/ion-loading.cjs.entry.js +3 -3
- package/dist/cjs/ion-menu_3.cjs.entry.js +4 -4
- package/dist/cjs/ion-modal.cjs.entry.js +4 -4
- package/dist/cjs/ion-nav_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-picker-column-internal.cjs.entry.js +2 -2
- package/dist/cjs/ion-picker-internal.cjs.entry.js +1 -1
- package/dist/cjs/ion-popover.cjs.entry.js +4 -4
- package/dist/cjs/ion-progress-bar.cjs.entry.js +2 -2
- package/dist/cjs/ion-radio_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-range.cjs.entry.js +2 -2
- package/dist/cjs/ion-refresher_2.cjs.entry.js +14 -30
- package/dist/cjs/ion-reorder_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-ripple-effect.cjs.entry.js +2 -2
- package/dist/cjs/ion-route_4.cjs.entry.js +2 -2
- package/dist/cjs/ion-searchbar.cjs.entry.js +4 -2
- package/dist/cjs/ion-segment_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-select_3.cjs.entry.js +3 -3
- package/dist/cjs/ion-spinner.cjs.entry.js +2 -2
- package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
- package/dist/cjs/ion-tab-bar_2.cjs.entry.js +2 -2
- package/dist/cjs/ion-tab_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-text.cjs.entry.js +2 -2
- package/dist/cjs/ion-textarea.cjs.entry.js +27 -4
- package/dist/cjs/ion-toast.cjs.entry.js +3 -3
- package/dist/cjs/ion-toggle.cjs.entry.js +2 -2
- package/dist/cjs/{ionic-global-62510d64.js → ionic-global-f4a2093b.js} +1 -1
- package/dist/cjs/ionic.cjs.js +4 -4
- package/dist/cjs/{ios.transition-d9c0e4fb.js → ios.transition-a4ffb5a2.js} +2 -2
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/{md.transition-4fac8a87.js → md.transition-292abe1c.js} +2 -2
- package/dist/cjs/{overlays-b1471172.js → overlays-5c379703.js} +1 -1
- package/dist/cjs/{status-tap-0aa8e1f2.js → status-tap-415acac6.js} +1 -1
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/input/input.js +23 -4
- package/dist/collection/components/input/test/clear-on-edit/input.e2e.js +21 -9
- package/dist/collection/components/refresher/refresher.utils.js +10 -20
- package/dist/collection/components/refresher-content/refresher-content.js +3 -9
- package/dist/collection/components/searchbar/searchbar.js +3 -1
- package/dist/collection/components/textarea/test/clear-on-edit/textarea.e2e.js +28 -0
- package/dist/collection/components/textarea/textarea.js +27 -4
- package/dist/docs.json +7 -7
- package/dist/esm/{app-globals-c23144fc.js → app-globals-722340c4.js} +1 -1
- package/dist/esm/{button-active-7013b5a1.js → button-active-3fdf3e4f.js} +1 -1
- package/dist/esm/{index-39329c6f.js → index-08d686eb.js} +39 -1
- package/dist/esm/{index-7a818ed3.js → index-80492ed3.js} +1 -1
- package/dist/esm/{index-bebaae5d.js → index-d8817fb0.js} +3 -3
- package/dist/esm/index.js +7 -7
- package/dist/esm/ion-accordion_2.entry.js +2 -2
- package/dist/esm/ion-action-sheet.entry.js +4 -4
- package/dist/esm/ion-alert.entry.js +4 -4
- package/dist/esm/ion-app_8.entry.js +4 -4
- package/dist/esm/ion-avatar_3.entry.js +2 -2
- package/dist/esm/ion-back-button.entry.js +2 -2
- package/dist/esm/ion-backdrop.entry.js +2 -2
- package/dist/esm/ion-breadcrumb_2.entry.js +2 -2
- package/dist/esm/ion-button_2.entry.js +2 -2
- package/dist/esm/ion-card_5.entry.js +2 -2
- package/dist/esm/ion-checkbox.entry.js +2 -2
- package/dist/esm/ion-chip.entry.js +2 -2
- package/dist/esm/ion-col_3.entry.js +2 -2
- package/dist/esm/ion-datetime-button.entry.js +2 -2
- package/dist/esm/ion-datetime_3.entry.js +3 -3
- package/dist/esm/ion-fab_3.entry.js +2 -2
- package/dist/esm/ion-img.entry.js +2 -2
- package/dist/esm/ion-infinite-scroll_2.entry.js +2 -2
- package/dist/esm/ion-input.entry.js +23 -4
- package/dist/esm/ion-item-option_3.entry.js +2 -2
- package/dist/esm/ion-item_8.entry.js +2 -2
- package/dist/esm/ion-loading.entry.js +3 -3
- package/dist/esm/ion-menu_3.entry.js +4 -4
- package/dist/esm/ion-modal.entry.js +4 -4
- package/dist/esm/ion-nav_2.entry.js +3 -3
- package/dist/esm/ion-picker-column-internal.entry.js +2 -2
- package/dist/esm/ion-picker-internal.entry.js +1 -1
- package/dist/esm/ion-popover.entry.js +4 -4
- package/dist/esm/ion-progress-bar.entry.js +2 -2
- package/dist/esm/ion-radio_2.entry.js +2 -2
- package/dist/esm/ion-range.entry.js +2 -2
- package/dist/esm/ion-refresher_2.entry.js +14 -30
- package/dist/esm/ion-reorder_2.entry.js +2 -2
- package/dist/esm/ion-ripple-effect.entry.js +2 -2
- package/dist/esm/ion-route_4.entry.js +2 -2
- package/dist/esm/ion-searchbar.entry.js +4 -2
- package/dist/esm/ion-segment_2.entry.js +2 -2
- package/dist/esm/ion-select_3.entry.js +3 -3
- package/dist/esm/ion-spinner.entry.js +2 -2
- package/dist/esm/ion-split-pane.entry.js +2 -2
- package/dist/esm/ion-tab-bar_2.entry.js +2 -2
- package/dist/esm/ion-tab_2.entry.js +1 -1
- package/dist/esm/ion-text.entry.js +2 -2
- package/dist/esm/ion-textarea.entry.js +27 -4
- package/dist/esm/ion-toast.entry.js +3 -3
- package/dist/esm/ion-toggle.entry.js +2 -2
- package/dist/esm/{ionic-global-6c78e871.js → ionic-global-c0cda98e.js} +1 -1
- package/dist/esm/ionic.js +5 -5
- package/dist/esm/{ios.transition-daa373e9.js → ios.transition-fd16bec1.js} +2 -2
- package/dist/esm/loader.js +4 -4
- package/dist/esm/{md.transition-91c3d3cc.js → md.transition-94ac93e1.js} +2 -2
- package/dist/esm/{overlays-64e67e2c.js → overlays-abf58489.js} +1 -1
- package/dist/esm/{status-tap-9dd45200.js → status-tap-2b93b1b5.js} +1 -1
- package/dist/esm-es5/app-globals-722340c4.js +4 -0
- package/dist/esm-es5/{button-active-7013b5a1.js → button-active-3fdf3e4f.js} +1 -1
- package/dist/esm-es5/{index-39329c6f.js → index-08d686eb.js} +1 -1
- package/dist/esm-es5/{index-7a818ed3.js → index-80492ed3.js} +1 -1
- package/dist/esm-es5/{index-bebaae5d.js → index-d8817fb0.js} +1 -1
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
- package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
- package/dist/esm-es5/ion-alert.entry.js +1 -1
- package/dist/esm-es5/ion-app_8.entry.js +1 -1
- package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
- package/dist/esm-es5/ion-back-button.entry.js +1 -1
- package/dist/esm-es5/ion-backdrop.entry.js +1 -1
- package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
- package/dist/esm-es5/ion-button_2.entry.js +1 -1
- package/dist/esm-es5/ion-card_5.entry.js +1 -1
- package/dist/esm-es5/ion-checkbox.entry.js +1 -1
- package/dist/esm-es5/ion-chip.entry.js +1 -1
- package/dist/esm-es5/ion-col_3.entry.js +1 -1
- package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
- package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
- package/dist/esm-es5/ion-fab_3.entry.js +1 -1
- package/dist/esm-es5/ion-img.entry.js +1 -1
- package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
- package/dist/esm-es5/ion-input.entry.js +1 -1
- package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
- package/dist/esm-es5/ion-item_8.entry.js +1 -1
- package/dist/esm-es5/ion-loading.entry.js +1 -1
- package/dist/esm-es5/ion-menu_3.entry.js +1 -1
- package/dist/esm-es5/ion-modal.entry.js +1 -1
- package/dist/esm-es5/ion-nav_2.entry.js +1 -1
- package/dist/esm-es5/ion-picker-column-internal.entry.js +1 -1
- package/dist/esm-es5/ion-picker-internal.entry.js +1 -1
- package/dist/esm-es5/ion-popover.entry.js +1 -1
- package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
- package/dist/esm-es5/ion-radio_2.entry.js +1 -1
- package/dist/esm-es5/ion-range.entry.js +1 -1
- package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
- package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
- package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
- package/dist/esm-es5/ion-route_4.entry.js +1 -1
- package/dist/esm-es5/ion-searchbar.entry.js +1 -1
- package/dist/esm-es5/ion-segment_2.entry.js +1 -1
- package/dist/esm-es5/ion-select_3.entry.js +1 -1
- package/dist/esm-es5/ion-spinner.entry.js +1 -1
- package/dist/esm-es5/ion-split-pane.entry.js +1 -1
- package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
- package/dist/esm-es5/ion-tab_2.entry.js +1 -1
- package/dist/esm-es5/ion-text.entry.js +1 -1
- package/dist/esm-es5/ion-textarea.entry.js +1 -1
- package/dist/esm-es5/ion-toast.entry.js +1 -1
- package/dist/esm-es5/ion-toggle.entry.js +1 -1
- package/dist/esm-es5/{ionic-global-6c78e871.js → ionic-global-c0cda98e.js} +1 -1
- package/dist/esm-es5/ionic.js +1 -1
- package/dist/esm-es5/{ios.transition-daa373e9.js → ios.transition-fd16bec1.js} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/{md.transition-91c3d3cc.js → md.transition-94ac93e1.js} +1 -1
- package/dist/esm-es5/{overlays-64e67e2c.js → overlays-abf58489.js} +1 -1
- package/dist/esm-es5/{status-tap-9dd45200.js → status-tap-2b93b1b5.js} +1 -1
- package/dist/html.html-data.json +2 -2
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/ionic.js +1 -1
- package/dist/ionic/{p-46dbd723.entry.js → p-0519cd21.entry.js} +1 -1
- package/dist/ionic/p-08f196ce.system.entry.js +4 -0
- package/dist/ionic/p-093033ee.entry.js +4 -0
- package/dist/ionic/{p-f34d6a49.entry.js → p-0add7211.entry.js} +1 -1
- package/dist/ionic/{p-e8e530fc.entry.js → p-0b1bc636.entry.js} +1 -1
- package/dist/ionic/{p-a0945c3a.system.entry.js → p-0e53f8ea.system.entry.js} +1 -1
- package/dist/ionic/{p-161d0916.entry.js → p-1161a793.entry.js} +1 -1
- package/dist/ionic/{p-89026d53.entry.js → p-1208f939.entry.js} +1 -1
- package/dist/ionic/p-1786bc72.js +4 -0
- package/dist/ionic/{p-312221db.entry.js → p-17da5ed1.entry.js} +1 -1
- package/dist/ionic/p-17f893be.js +4 -0
- package/dist/ionic/{p-83fada9e.system.entry.js → p-18b6bd23.system.entry.js} +1 -1
- package/dist/ionic/{p-5fb707e0.entry.js → p-18ba8221.entry.js} +1 -1
- package/dist/ionic/{p-d1530ea9.entry.js → p-1d17219f.entry.js} +1 -1
- package/dist/ionic/{p-1ff22253.entry.js → p-2092f39f.entry.js} +1 -1
- package/dist/ionic/{p-2507b0c0.entry.js → p-25b32c3d.entry.js} +1 -1
- package/dist/ionic/{p-b81a8111.system.entry.js → p-2938823a.system.entry.js} +1 -1
- package/dist/ionic/{p-df361680.system.entry.js → p-2ab4e925.system.entry.js} +1 -1
- package/dist/ionic/{p-45db7949.system.entry.js → p-2ba0657d.system.entry.js} +1 -1
- package/dist/ionic/{p-0263eb49.system.js → p-30029cc2.system.js} +1 -1
- package/dist/ionic/{p-ac4a7fc0.js → p-31158892.js} +1 -1
- package/dist/ionic/{p-18032a93.entry.js → p-34c39c48.entry.js} +1 -1
- package/dist/ionic/p-350f7292.system.entry.js +4 -0
- package/dist/ionic/{p-86c2bbc8.entry.js → p-353b349d.entry.js} +1 -1
- package/dist/ionic/{p-bc97b5cd.system.entry.js → p-3b686a65.system.entry.js} +1 -1
- package/dist/ionic/{p-33f3cd49.entry.js → p-3de71759.entry.js} +1 -1
- package/dist/ionic/{p-f0384573.system.entry.js → p-3e960213.system.entry.js} +1 -1
- package/dist/ionic/{p-a3a145d3.entry.js → p-3f6270b3.entry.js} +1 -1
- package/dist/ionic/{p-23a27e78.system.entry.js → p-3fd37993.system.entry.js} +1 -1
- package/dist/ionic/{p-426bdba9.system.js → p-3fe96156.system.js} +1 -1
- package/dist/ionic/{p-e26030f8.system.js → p-4155f352.system.js} +1 -1
- package/dist/ionic/p-4890093d.js +4 -0
- package/dist/ionic/{p-5f46d93e.entry.js → p-4a31c99f.entry.js} +1 -1
- package/dist/ionic/{p-2cd9cb80.system.entry.js → p-4fb51e61.system.entry.js} +1 -1
- package/dist/ionic/{p-71d986ae.entry.js → p-50880712.entry.js} +1 -1
- package/dist/ionic/{p-d3e123c0.entry.js → p-51a087d6.entry.js} +1 -1
- package/dist/ionic/{p-aac289d2.system.entry.js → p-564af202.system.entry.js} +1 -1
- package/dist/ionic/{p-abab375b.system.js → p-57477107.system.js} +1 -1
- package/dist/ionic/p-588fdf40.entry.js +4 -0
- package/dist/ionic/{p-a5c81b99.entry.js → p-5a68960f.entry.js} +1 -1
- package/dist/ionic/{p-34d6f520.system.js → p-5b365ca7.system.js} +1 -1
- package/dist/ionic/{p-eef8d7e8.system.entry.js → p-5bebc7b3.system.entry.js} +1 -1
- package/dist/ionic/{p-21f015cf.js → p-5ecae037.js} +1 -1
- package/dist/ionic/{p-06600f70.js → p-61d7d7fb.js} +1 -1
- package/dist/ionic/{p-2657f213.entry.js → p-6470b136.entry.js} +1 -1
- package/dist/ionic/{p-5f127075.system.entry.js → p-6577aea9.system.entry.js} +1 -1
- package/dist/ionic/{p-d0251fc4.entry.js → p-67da080d.entry.js} +1 -1
- package/dist/ionic/{p-2a7e6572.system.entry.js → p-6ad34705.system.entry.js} +1 -1
- package/dist/ionic/{p-1cbc21e2.system.entry.js → p-6e70dd1a.system.entry.js} +1 -1
- package/dist/ionic/{p-64af4468.entry.js → p-6fbecbda.entry.js} +1 -1
- package/dist/ionic/{p-0827d00e.system.entry.js → p-73637557.system.entry.js} +1 -1
- package/dist/ionic/{p-fcf49977.system.entry.js → p-73ea8f82.system.entry.js} +1 -1
- package/dist/ionic/{p-57c0d5bf.system.entry.js → p-7b8d0af2.system.entry.js} +1 -1
- package/dist/ionic/{p-315ad733.system.entry.js → p-7faba551.system.entry.js} +1 -1
- package/dist/ionic/{p-bbe3feee.entry.js → p-80fa068e.entry.js} +1 -1
- package/dist/ionic/{p-b11ceee2.entry.js → p-82045bc1.entry.js} +1 -1
- package/dist/ionic/{p-8c202d6e.system.entry.js → p-868d0165.system.entry.js} +1 -1
- package/dist/ionic/{p-ee4a54e3.entry.js → p-88fde0e0.entry.js} +1 -1
- package/dist/ionic/{p-67598744.entry.js → p-8f5d30f5.entry.js} +1 -1
- package/dist/ionic/{p-edc5c693.system.entry.js → p-908475e7.system.entry.js} +1 -1
- package/dist/ionic/{p-3acad8ff.system.entry.js → p-93000a81.system.entry.js} +1 -1
- package/dist/ionic/{p-2ac9d078.system.entry.js → p-94389114.system.entry.js} +1 -1
- package/dist/ionic/{p-a0db3de9.system.entry.js → p-9709ebd8.system.entry.js} +1 -1
- package/dist/ionic/{p-12cdcb59.js → p-9738fd82.js} +1 -1
- package/dist/ionic/{p-6cf08720.entry.js → p-98b14ece.entry.js} +1 -1
- package/dist/ionic/{p-a70b5d24.entry.js → p-98f3d827.entry.js} +1 -1
- package/dist/ionic/{p-58dd7c15.entry.js → p-9c3b6849.entry.js} +1 -1
- package/dist/ionic/{p-93dac17a.system.entry.js → p-9eec42cc.system.entry.js} +1 -1
- package/dist/ionic/{p-89cfbc88.system.entry.js → p-a0126dd5.system.entry.js} +1 -1
- package/dist/ionic/{p-70ecb18b.entry.js → p-a1987850.entry.js} +1 -1
- package/dist/ionic/{p-53a3283e.entry.js → p-a4afcc88.entry.js} +1 -1
- package/dist/ionic/{p-27e6473f.entry.js → p-a6f9dd7b.entry.js} +1 -1
- package/dist/ionic/{p-99fe0543.entry.js → p-a98dc0c1.entry.js} +1 -1
- package/dist/ionic/{p-90db28f8.system.entry.js → p-a9e3b5be.system.entry.js} +1 -1
- package/dist/ionic/{p-a843a90e.system.entry.js → p-ab9456e9.system.entry.js} +1 -1
- package/dist/ionic/p-ad019ef0.entry.js +4 -0
- package/dist/ionic/{p-ad78c421.system.js → p-af5cfad2.system.js} +1 -1
- package/dist/ionic/{p-a1b4dba7.entry.js → p-b04e4d62.entry.js} +1 -1
- package/dist/ionic/{p-1631b52f.system.js → p-b0dc1cf9.system.js} +1 -1
- package/dist/ionic/{p-98ac0e27.system.entry.js → p-b3b3efba.system.entry.js} +2 -2
- package/dist/ionic/{p-58ff9e5b.system.js → p-b4a51c42.system.js} +1 -1
- package/dist/ionic/{p-b5e33ebc.system.entry.js → p-b4bad293.system.entry.js} +1 -1
- package/dist/ionic/{p-3cb5466e.entry.js → p-b5f9f14c.entry.js} +1 -1
- package/dist/ionic/{p-b0fcf130.system.entry.js → p-b6f5e4f2.system.entry.js} +1 -1
- package/dist/ionic/{p-7ae5ca1f.system.entry.js → p-b7010c69.system.entry.js} +1 -1
- package/dist/ionic/{p-a99f14a7.system.entry.js → p-b752714f.system.entry.js} +1 -1
- package/dist/ionic/{p-f444fea5.entry.js → p-c3289ef2.entry.js} +1 -1
- package/dist/ionic/{p-acdd8148.js → p-c3c3333a.js} +1 -1
- package/dist/ionic/{p-5a7d5905.system.entry.js → p-c3d09cf2.system.entry.js} +1 -1
- package/dist/ionic/{p-8261be6c.system.entry.js → p-c847fb35.system.entry.js} +1 -1
- package/dist/ionic/{p-e3c44332.system.entry.js → p-c91ccbfa.system.entry.js} +1 -1
- package/dist/ionic/{p-9f376964.system.entry.js → p-c9a21dfd.system.entry.js} +1 -1
- package/dist/ionic/{p-ad953217.system.entry.js → p-caf21b46.system.entry.js} +1 -1
- package/dist/ionic/{p-19545a49.system.entry.js → p-cce9f61a.system.entry.js} +1 -1
- package/dist/ionic/{p-1c6c6098.entry.js → p-cfe57b1b.entry.js} +1 -1
- package/dist/ionic/p-cff478d8.entry.js +4 -0
- package/dist/ionic/{p-742e11cf.system.entry.js → p-d1cb29a8.system.entry.js} +1 -1
- package/dist/ionic/{p-c04accad.entry.js → p-d37b441e.entry.js} +1 -1
- package/dist/ionic/{p-f8c5a0dd.system.js → p-d3b030b8.system.js} +1 -1
- package/dist/ionic/{p-3f5ae764.entry.js → p-d40a974a.entry.js} +1 -1
- package/dist/ionic/{p-91f9e81b.js → p-d662d908.js} +1 -1
- package/dist/ionic/{p-41f7af3f.system.entry.js → p-d7be6b7e.system.entry.js} +1 -1
- package/dist/ionic/{p-3535a36c.entry.js → p-ddb30596.entry.js} +1 -1
- package/dist/ionic/{p-c5ae50be.system.js → p-e3584231.system.js} +1 -1
- package/dist/ionic/p-e4d90573.js +4 -0
- package/dist/ionic/{p-ca32685b.system.entry.js → p-e553006f.system.entry.js} +1 -1
- package/dist/ionic/{p-27a5f2c7.system.entry.js → p-e6d68e02.system.entry.js} +1 -1
- package/dist/ionic/{p-8a75f7bf.system.entry.js → p-e7ea9815.system.entry.js} +1 -1
- package/dist/ionic/{p-8a10752d.entry.js → p-e94c392d.entry.js} +1 -1
- package/dist/ionic/p-ea69616e.entry.js +4 -0
- package/dist/ionic/{p-4f71a9cf.system.entry.js → p-ef126ae8.system.entry.js} +1 -1
- package/dist/ionic/{p-f10de9d5.system.js → p-f2c21dae.system.js} +1 -1
- package/dist/ionic/{p-7484b1d6.system.js → p-f7a36cd0.system.js} +1 -1
- package/dist/ionic/{p-e4045e04.entry.js → p-f8a5bb89.entry.js} +1 -1
- package/dist/types/components/input/input.d.ts +5 -1
- package/dist/types/components/refresher/refresher.utils.d.ts +0 -17
- package/dist/types/components/searchbar/searchbar.d.ts +2 -0
- package/dist/types/components/textarea/textarea.d.ts +5 -1
- package/dist/types/components.d.ts +7 -7
- package/hydrate/index.d.ts +1 -1
- package/hydrate/index.js +61 -33
- package/package.json +2 -2
- package/components/refresher.utils.js +0 -198
- package/dist/esm-es5/app-globals-c23144fc.js +0 -4
- package/dist/ionic/p-079eb722.system.entry.js +0 -4
- package/dist/ionic/p-405f1a72.entry.js +0 -4
- package/dist/ionic/p-5c7f13cd.system.entry.js +0 -4
- package/dist/ionic/p-6744eca5.entry.js +0 -4
- package/dist/ionic/p-af959b5d.entry.js +0 -4
- package/dist/ionic/p-b8f2134e.js +0 -4
- package/dist/ionic/p-c53c8d83.entry.js +0 -4
- package/dist/ionic/p-cde72008.js +0 -4
- package/dist/ionic/p-ddccf1f4.js +0 -4
- package/dist/ionic/p-e145b9f9.entry.js +0 -4
- package/dist/ionic/p-eab6401e.js +0 -4
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { expect } from "@playwright/test";
|
|
5
5
|
import { test, configs } from "../../../../utils/test/playwright/index";
|
|
6
|
+
const IGNORED_KEYS = ['Enter', 'Tab', 'Shift', 'Meta', 'Alt', 'Control'];
|
|
6
7
|
configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
7
8
|
test.describe(title('input: clearOnEdit'), () => {
|
|
8
9
|
test('should clear when typed into', async ({ page }) => {
|
|
@@ -13,21 +14,32 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
|
|
|
13
14
|
await ionInput.next();
|
|
14
15
|
await expect(input).toHaveJSProperty('value', 'h');
|
|
15
16
|
});
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
17
|
+
IGNORED_KEYS.forEach((ignoredKey) => {
|
|
18
|
+
test(`should not clear when ${ignoredKey} is pressed`, async ({ page }) => {
|
|
19
|
+
await page.setContent(`<ion-input value="abc" clear-on-edit="true" aria-label="input"></ion-input>`, config);
|
|
20
|
+
const input = page.locator('ion-input');
|
|
21
|
+
await input.locator('input').focus();
|
|
22
|
+
await page.keyboard.press(ignoredKey);
|
|
23
|
+
await page.waitForChanges();
|
|
24
|
+
await expect(input).toHaveJSProperty('value', 'abc');
|
|
25
|
+
});
|
|
23
26
|
});
|
|
24
|
-
test('should
|
|
27
|
+
test('should clear after when pressing valid key after pressing ignored key', async ({ page }) => {
|
|
28
|
+
test.info().annotations.push({
|
|
29
|
+
type: 'issue',
|
|
30
|
+
description: 'https://github.com/ionic-team/ionic-framework/issues/28633',
|
|
31
|
+
});
|
|
25
32
|
await page.setContent(`<ion-input value="abc" clear-on-edit="true" aria-label="input"></ion-input>`, config);
|
|
26
33
|
const input = page.locator('ion-input');
|
|
27
34
|
await input.locator('input').focus();
|
|
28
|
-
|
|
35
|
+
// ignored
|
|
36
|
+
await page.keyboard.press('Shift');
|
|
29
37
|
await page.waitForChanges();
|
|
30
38
|
await expect(input).toHaveJSProperty('value', 'abc');
|
|
39
|
+
// allowed
|
|
40
|
+
await page.keyboard.press('a');
|
|
41
|
+
await page.waitForChanges();
|
|
42
|
+
await expect(input).toHaveJSProperty('value', 'a');
|
|
31
43
|
});
|
|
32
44
|
});
|
|
33
45
|
});
|
|
@@ -162,25 +162,6 @@ export const translateElement = (el, value, duration = 200) => {
|
|
|
162
162
|
};
|
|
163
163
|
// Utils
|
|
164
164
|
// -----------------------------
|
|
165
|
-
/**
|
|
166
|
-
* In order to use the native iOS refresher the device must support rubber band scrolling.
|
|
167
|
-
* The ios + mobile platform check ensures that desktop Safari is not included. Desktop Safari
|
|
168
|
-
* has a slightly different rubber band effect that is not compatible with the native refresher
|
|
169
|
-
* in Ionic.
|
|
170
|
-
*
|
|
171
|
-
* We also need to be careful not to include devices that spoof their user agent.
|
|
172
|
-
* For example, when using iOS emulation in Chrome the user agent will be spoofed such that
|
|
173
|
-
* isPlatform('ios') and isPlatform('mobile') both return true. To work around this,
|
|
174
|
-
* we check to see if the apple-pay-logo is supported as a named image which is only
|
|
175
|
-
* true on Apple devices.
|
|
176
|
-
*
|
|
177
|
-
* We previously checked referencEl.style.webkitOverflowScrolling to explicitly check
|
|
178
|
-
* for rubber band support. However, this property was removed on iPadOS and it's possible
|
|
179
|
-
* that this will be removed on iOS in the future too.
|
|
180
|
-
*/
|
|
181
|
-
export const supportsRubberBandScrolling = () => {
|
|
182
|
-
return (isPlatform('ios') && isPlatform('mobile') && CSS.supports('background: -webkit-named-image(apple-pay-logo-black)'));
|
|
183
|
-
};
|
|
184
165
|
export const shouldUseNativeRefresher = async (referenceEl, mode) => {
|
|
185
166
|
const refresherContent = referenceEl.querySelector('ion-refresher-content');
|
|
186
167
|
if (!refresherContent) {
|
|
@@ -191,5 +172,14 @@ export const shouldUseNativeRefresher = async (referenceEl, mode) => {
|
|
|
191
172
|
const refreshingSpinner = referenceEl.querySelector('ion-refresher-content .refresher-refreshing ion-spinner');
|
|
192
173
|
return (pullingSpinner !== null &&
|
|
193
174
|
refreshingSpinner !== null &&
|
|
194
|
-
|
|
175
|
+
/**
|
|
176
|
+
* We use webkitOverflowScrolling for feature detection with rubber band scrolling
|
|
177
|
+
* on iOS. When doing referenceEl.style, webkitOverflowScrolling is undefined on non-iOS platforms.
|
|
178
|
+
* However, it will be the empty string on iOS.
|
|
179
|
+
* Note that we do not use getPropertyValue (and thus need to cast as any) because calling
|
|
180
|
+
* getPropertyValue('-webkit-overflow-scrolling') will return the empty string if it is not
|
|
181
|
+
* set on the element, even if the platform does not support that.
|
|
182
|
+
*/
|
|
183
|
+
((mode === 'ios' && isPlatform('mobile') && referenceEl.style.webkitOverflowScrolling !== undefined) ||
|
|
184
|
+
mode === 'md'));
|
|
195
185
|
};
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Host, h } from "@stencil/core";
|
|
5
5
|
import { ENABLE_HTML_CONTENT_DEFAULT } from "../../utils/config";
|
|
6
|
+
import { isPlatform } from "../../utils/platform";
|
|
6
7
|
import { sanitizeDOMString } from "../../utils/sanitization/index";
|
|
7
8
|
import { arrowDown, caretBackSharp } from "ionicons/icons";
|
|
8
9
|
import { config } from "../../global/config";
|
|
9
10
|
import { getIonMode } from "../../global/ionic-global";
|
|
10
|
-
import { supportsRubberBandScrolling } from "../refresher/refresher.utils";
|
|
11
11
|
import { SPINNERS } from "../spinner/spinner-configs";
|
|
12
12
|
export class RefresherContent {
|
|
13
13
|
constructor() {
|
|
@@ -19,15 +19,9 @@ export class RefresherContent {
|
|
|
19
19
|
}
|
|
20
20
|
componentWillLoad() {
|
|
21
21
|
if (this.pullingIcon === undefined) {
|
|
22
|
-
/**
|
|
23
|
-
* The native iOS refresher uses a spinner instead of
|
|
24
|
-
* an icon, so we need to see if this device supports
|
|
25
|
-
* the native iOS refresher.
|
|
26
|
-
*/
|
|
27
|
-
const hasRubberBandScrolling = supportsRubberBandScrolling();
|
|
28
22
|
const mode = getIonMode(this);
|
|
29
|
-
const overflowRefresher =
|
|
30
|
-
this.pullingIcon = config.get('refreshingIcon', mode === 'ios' &&
|
|
23
|
+
const overflowRefresher = this.el.style.webkitOverflowScrolling !== undefined ? 'lines' : arrowDown;
|
|
24
|
+
this.pullingIcon = config.get('refreshingIcon', mode === 'ios' && isPlatform('mobile') ? config.get('spinner', overflowRefresher) : 'circular');
|
|
31
25
|
}
|
|
32
26
|
if (this.refreshingSpinner === undefined) {
|
|
33
27
|
const mode = getIonMode(this);
|
|
@@ -180,6 +180,8 @@ export class Searchbar {
|
|
|
180
180
|
*
|
|
181
181
|
* Developers who wish to focus an input when an overlay is presented
|
|
182
182
|
* should call `setFocus` after `didPresent` has resolved.
|
|
183
|
+
*
|
|
184
|
+
* See [managing focus](/docs/developing/managing-focus) for more information.
|
|
183
185
|
*/
|
|
184
186
|
async setFocus() {
|
|
185
187
|
if (this.nativeInput) {
|
|
@@ -890,7 +892,7 @@ export class Searchbar {
|
|
|
890
892
|
"return": "Promise<void>"
|
|
891
893
|
},
|
|
892
894
|
"docs": {
|
|
893
|
-
"text": "Sets focus on the native `input` in `ion-searchbar`. Use this method instead of the global\n`input.focus()`.\n\nDevelopers who wish to focus an input when a page enters\nshould call `setFocus()` in the `ionViewDidEnter()` lifecycle method.\n\nDevelopers who wish to focus an input when an overlay is presented\nshould call `setFocus` after `didPresent` has resolved.",
|
|
895
|
+
"text": "Sets focus on the native `input` in `ion-searchbar`. Use this method instead of the global\n`input.focus()`.\n\nDevelopers who wish to focus an input when a page enters\nshould call `setFocus()` in the `ionViewDidEnter()` lifecycle method.\n\nDevelopers who wish to focus an input when an overlay is presented\nshould call `setFocus` after `didPresent` has resolved.\n\nSee [managing focus](/docs/developing/managing-focus) for more information.",
|
|
894
896
|
"tags": []
|
|
895
897
|
}
|
|
896
898
|
},
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { expect } from "@playwright/test";
|
|
5
5
|
import { test, configs } from "../../../../utils/test/playwright/index";
|
|
6
|
+
const IGNORED_KEYS = ['Tab', 'Shift', 'Meta', 'Alt', 'Control'];
|
|
6
7
|
configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) => {
|
|
7
8
|
test.describe(title('textarea: clearOnEdit'), () => {
|
|
8
9
|
test('should clear when typed into', async ({ page }) => {
|
|
@@ -21,5 +22,32 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
|
|
|
21
22
|
await page.waitForChanges();
|
|
22
23
|
await expect(textarea).toHaveJSProperty('value', 'abc');
|
|
23
24
|
});
|
|
25
|
+
IGNORED_KEYS.forEach((ignoredKey) => {
|
|
26
|
+
test(`should not clear when ${ignoredKey} is pressed`, async ({ page }) => {
|
|
27
|
+
await page.setContent(`<ion-textarea value="abc" clear-on-edit="true" aria-label="textarea"></ion-textarea>`, config);
|
|
28
|
+
const textarea = page.locator('ion-textarea');
|
|
29
|
+
await textarea.locator('textarea').focus();
|
|
30
|
+
await page.keyboard.press(ignoredKey);
|
|
31
|
+
await page.waitForChanges();
|
|
32
|
+
await expect(textarea).toHaveJSProperty('value', 'abc');
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
test('should clear after when pressing valid key after pressing ignored key', async ({ page }) => {
|
|
36
|
+
test.info().annotations.push({
|
|
37
|
+
type: 'issue',
|
|
38
|
+
description: 'https://github.com/ionic-team/ionic-framework/issues/28633',
|
|
39
|
+
});
|
|
40
|
+
await page.setContent(`<ion-textarea value="abc" clear-on-edit="true" aria-label="textarea"></ion-textarea>`, config);
|
|
41
|
+
const textarea = page.locator('ion-textarea');
|
|
42
|
+
await textarea.locator('textarea').focus();
|
|
43
|
+
// ignored
|
|
44
|
+
await page.keyboard.press('Shift');
|
|
45
|
+
await page.waitForChanges();
|
|
46
|
+
await expect(textarea).toHaveJSProperty('value', 'abc');
|
|
47
|
+
// allowed
|
|
48
|
+
await page.keyboard.press('a');
|
|
49
|
+
await page.waitForChanges();
|
|
50
|
+
await expect(textarea).toHaveJSProperty('value', 'a');
|
|
51
|
+
});
|
|
24
52
|
});
|
|
25
53
|
});
|
|
@@ -160,6 +160,8 @@ export class Textarea {
|
|
|
160
160
|
/**
|
|
161
161
|
* Sets focus on the native `textarea` in `ion-textarea`. Use this method instead of the global
|
|
162
162
|
* `textarea.focus()`.
|
|
163
|
+
*
|
|
164
|
+
* See [managing focus](/docs/developing/managing-focus) for more information.
|
|
163
165
|
*/
|
|
164
166
|
async setFocus() {
|
|
165
167
|
if (this.nativeInput) {
|
|
@@ -232,15 +234,36 @@ export class Textarea {
|
|
|
232
234
|
if (!this.clearOnEdit) {
|
|
233
235
|
return;
|
|
234
236
|
}
|
|
237
|
+
/**
|
|
238
|
+
* The following keys do not modify the
|
|
239
|
+
* contents of the input. As a result, pressing
|
|
240
|
+
* them should not edit the textarea.
|
|
241
|
+
*
|
|
242
|
+
* We can't check to see if the value of the textarea
|
|
243
|
+
* was changed because we call checkClearOnEdit
|
|
244
|
+
* in a keydown listener, and the key has not yet
|
|
245
|
+
* been added to the textarea.
|
|
246
|
+
*
|
|
247
|
+
* Unlike ion-input, the "Enter" key does modify the
|
|
248
|
+
* textarea by adding a new line, so "Enter" is not
|
|
249
|
+
* included in the IGNORED_KEYS array.
|
|
250
|
+
*/
|
|
251
|
+
const IGNORED_KEYS = ['Tab', 'Shift', 'Meta', 'Alt', 'Control'];
|
|
235
252
|
/**
|
|
236
253
|
* Clear the textarea if the control has not been previously cleared
|
|
237
254
|
* during focus.
|
|
238
255
|
*/
|
|
239
|
-
if (!this.didTextareaClearOnEdit && this.hasValue() && ev.key
|
|
256
|
+
if (!this.didTextareaClearOnEdit && this.hasValue() && !IGNORED_KEYS.includes(ev.key)) {
|
|
240
257
|
this.value = '';
|
|
241
258
|
this.emitInputChange(ev);
|
|
259
|
+
/**
|
|
260
|
+
* Only set this flag if we cleared the input.
|
|
261
|
+
* Otherwise pressing an IGNORED_KEYS first and
|
|
262
|
+
* then an allowed key will cause the input to not
|
|
263
|
+
* be cleared.
|
|
264
|
+
*/
|
|
265
|
+
this.didTextareaClearOnEdit = true;
|
|
242
266
|
}
|
|
243
|
-
this.didTextareaClearOnEdit = true;
|
|
244
267
|
}
|
|
245
268
|
focusChange() {
|
|
246
269
|
this.emitStyle();
|
|
@@ -448,7 +471,7 @@ Developers can use the "legacy" property to continue using the legacy form marku
|
|
|
448
471
|
"optional": false,
|
|
449
472
|
"docs": {
|
|
450
473
|
"tags": [],
|
|
451
|
-
"text": "
|
|
474
|
+
"text": "Sets the [`autofocus` attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autofocus) on the native input element.\n\nThis may not be sufficient for the element to be focused on page load. See [managing focus](/docs/developing/managing-focus) for more information."
|
|
452
475
|
},
|
|
453
476
|
"attribute": "autofocus",
|
|
454
477
|
"reflect": false,
|
|
@@ -1035,7 +1058,7 @@ Developers can use the "legacy" property to continue using the legacy form marku
|
|
|
1035
1058
|
"return": "Promise<void>"
|
|
1036
1059
|
},
|
|
1037
1060
|
"docs": {
|
|
1038
|
-
"text": "Sets focus on the native `textarea` in `ion-textarea`. Use this method instead of the global\n`textarea.focus()
|
|
1061
|
+
"text": "Sets focus on the native `textarea` in `ion-textarea`. Use this method instead of the global\n`textarea.focus()`.\n\nSee [managing focus](/docs/developing/managing-focus) for more information.",
|
|
1039
1062
|
"tags": []
|
|
1040
1063
|
}
|
|
1041
1064
|
},
|
package/dist/docs.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
"timestamp": "2023-12-
|
|
2
|
+
"timestamp": "2023-12-05T14:57:32",
|
|
3
3
|
"compiler": {
|
|
4
4
|
"name": "@stencil/core",
|
|
5
|
-
"version": "4.8.
|
|
5
|
+
"version": "4.8.1",
|
|
6
6
|
"typescriptVersion": "5.2.2"
|
|
7
7
|
},
|
|
8
8
|
"components": [
|
|
@@ -9991,7 +9991,7 @@
|
|
|
9991
9991
|
"mutable": false,
|
|
9992
9992
|
"attr": "autofocus",
|
|
9993
9993
|
"reflectToAttr": false,
|
|
9994
|
-
"docs": "
|
|
9994
|
+
"docs": "Sets the [`autofocus` attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autofocus) on the native input element.\n\nThis may not be sufficient for the element to be focused on page load. See [managing focus](/docs/developing/managing-focus) for more information.",
|
|
9995
9995
|
"docsTags": [],
|
|
9996
9996
|
"default": "false",
|
|
9997
9997
|
"values": [
|
|
@@ -10978,7 +10978,7 @@
|
|
|
10978
10978
|
},
|
|
10979
10979
|
"signature": "setFocus() => Promise<void>",
|
|
10980
10980
|
"parameters": [],
|
|
10981
|
-
"docs": "Sets focus on the native `input` in `ion-input`. Use this method instead of the global\n`input.focus()`.\n\nDevelopers who wish to focus an input when a page enters\nshould call `setFocus()` in the `ionViewDidEnter()` lifecycle method.\n\nDevelopers who wish to focus an input when an overlay is presented\nshould call `setFocus` after `didPresent` has resolved.",
|
|
10981
|
+
"docs": "Sets focus on the native `input` in `ion-input`. Use this method instead of the global\n`input.focus()`.\n\nDevelopers who wish to focus an input when a page enters\nshould call `setFocus()` in the `ionViewDidEnter()` lifecycle method.\n\nDevelopers who wish to focus an input when an overlay is presented\nshould call `setFocus` after `didPresent` has resolved.\n\nSee [managing focus](/docs/developing/managing-focus) for more information.",
|
|
10982
10982
|
"docsTags": []
|
|
10983
10983
|
}
|
|
10984
10984
|
],
|
|
@@ -22977,7 +22977,7 @@
|
|
|
22977
22977
|
},
|
|
22978
22978
|
"signature": "setFocus() => Promise<void>",
|
|
22979
22979
|
"parameters": [],
|
|
22980
|
-
"docs": "Sets focus on the native `input` in `ion-searchbar`. Use this method instead of the global\n`input.focus()`.\n\nDevelopers who wish to focus an input when a page enters\nshould call `setFocus()` in the `ionViewDidEnter()` lifecycle method.\n\nDevelopers who wish to focus an input when an overlay is presented\nshould call `setFocus` after `didPresent` has resolved.",
|
|
22980
|
+
"docs": "Sets focus on the native `input` in `ion-searchbar`. Use this method instead of the global\n`input.focus()`.\n\nDevelopers who wish to focus an input when a page enters\nshould call `setFocus()` in the `ionViewDidEnter()` lifecycle method.\n\nDevelopers who wish to focus an input when an overlay is presented\nshould call `setFocus` after `didPresent` has resolved.\n\nSee [managing focus](/docs/developing/managing-focus) for more information.",
|
|
22981
22981
|
"docsTags": []
|
|
22982
22982
|
}
|
|
22983
22983
|
],
|
|
@@ -26100,7 +26100,7 @@
|
|
|
26100
26100
|
"mutable": false,
|
|
26101
26101
|
"attr": "autofocus",
|
|
26102
26102
|
"reflectToAttr": false,
|
|
26103
|
-
"docs": "
|
|
26103
|
+
"docs": "Sets the [`autofocus` attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autofocus) on the native input element.\n\nThis may not be sufficient for the element to be focused on page load. See [managing focus](/docs/developing/managing-focus) for more information.",
|
|
26104
26104
|
"docsTags": [],
|
|
26105
26105
|
"default": "false",
|
|
26106
26106
|
"values": [
|
|
@@ -26918,7 +26918,7 @@
|
|
|
26918
26918
|
},
|
|
26919
26919
|
"signature": "setFocus() => Promise<void>",
|
|
26920
26920
|
"parameters": [],
|
|
26921
|
-
"docs": "Sets focus on the native `textarea` in `ion-textarea`. Use this method instead of the global\n`textarea.focus()
|
|
26921
|
+
"docs": "Sets focus on the native `textarea` in `ion-textarea`. Use this method instead of the global\n`textarea.focus()`.\n\nSee [managing focus](/docs/developing/managing-focus) for more information.",
|
|
26922
26922
|
"docsTags": []
|
|
26923
26923
|
}
|
|
26924
26924
|
],
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { w as writeTask } from './index-
|
|
4
|
+
import { w as writeTask } from './index-08d686eb.js';
|
|
5
5
|
import { h as hapticSelectionEnd, a as hapticSelectionStart, b as hapticSelectionChanged } from './haptic-152c4172.js';
|
|
6
6
|
import { createGesture } from './index-2cf77112.js';
|
|
7
7
|
|
|
@@ -263,6 +263,17 @@ const convertToPrivate = (node) => {
|
|
|
263
263
|
vnode.$name$ = node.vname;
|
|
264
264
|
return vnode;
|
|
265
265
|
};
|
|
266
|
+
/**
|
|
267
|
+
* Entrypoint of the client-side hydration process. Facilitates calls to hydrate the
|
|
268
|
+
* document and all its nodes.
|
|
269
|
+
*
|
|
270
|
+
* This process will also reconstruct the shadow root and slot DOM nodes for components using shadow DOM.
|
|
271
|
+
*
|
|
272
|
+
* @param hostElm The element to hydrate.
|
|
273
|
+
* @param tagName The element's tag name.
|
|
274
|
+
* @param hostId The host ID assigned to the element by the server.
|
|
275
|
+
* @param hostRef The host reference for the element.
|
|
276
|
+
*/
|
|
266
277
|
const initializeClientHydrate = (hostElm, tagName, hostId, hostRef) => {
|
|
267
278
|
const endHydrate = createTime('hydrateClient', tagName);
|
|
268
279
|
const shadowRoot = hostElm.shadowRoot;
|
|
@@ -280,6 +291,8 @@ const initializeClientHydrate = (hostElm, tagName, hostId, hostRef) => {
|
|
|
280
291
|
const orgLocationId = c.$hostId$ + '.' + c.$nodeId$;
|
|
281
292
|
const orgLocationNode = plt.$orgLocNodes$.get(orgLocationId);
|
|
282
293
|
const node = c.$elm$;
|
|
294
|
+
// Put the node back in its original location since the native Shadow DOM
|
|
295
|
+
// can handle rendering it its correct location now
|
|
283
296
|
if (orgLocationNode && supportsShadow && orgLocationNode['s-en'] === '') {
|
|
284
297
|
orgLocationNode.parentNode.insertBefore(node, orgLocationNode.nextSibling);
|
|
285
298
|
}
|
|
@@ -301,6 +314,22 @@ const initializeClientHydrate = (hostElm, tagName, hostId, hostRef) => {
|
|
|
301
314
|
}
|
|
302
315
|
endHydrate();
|
|
303
316
|
};
|
|
317
|
+
/**
|
|
318
|
+
* Recursively constructs the virtual node tree for a host element and its children.
|
|
319
|
+
* The tree is constructed by parsing the annotations set on the nodes by the server.
|
|
320
|
+
*
|
|
321
|
+
* In addition to constructing the vNode tree, we also track information about the node's
|
|
322
|
+
* descendants like which are slots, which should exist in the shadow root, and which
|
|
323
|
+
* are nodes that should be rendered as children of the parent node.
|
|
324
|
+
*
|
|
325
|
+
* @param parentVNode The vNode representing the parent node.
|
|
326
|
+
* @param childRenderNodes An array of all child nodes in the parent's node tree.
|
|
327
|
+
* @param slotNodes An array of all slot nodes in the parent's node tree.
|
|
328
|
+
* @param shadowRootNodes An array all nodes that should be rendered in the shadow root in the parent's node tree.
|
|
329
|
+
* @param hostElm The parent element.
|
|
330
|
+
* @param node The node to construct the vNode tree for.
|
|
331
|
+
* @param hostId The host ID assigned to the element by the server.
|
|
332
|
+
*/
|
|
304
333
|
const clientHydrate = (parentVNode, childRenderNodes, slotNodes, shadowRootNodes, hostElm, node, hostId) => {
|
|
305
334
|
let childNodeType;
|
|
306
335
|
let childIdSplt;
|
|
@@ -445,6 +474,13 @@ const clientHydrate = (parentVNode, childRenderNodes, slotNodes, shadowRootNodes
|
|
|
445
474
|
parentVNode.$children$ = [vnode];
|
|
446
475
|
}
|
|
447
476
|
};
|
|
477
|
+
/**
|
|
478
|
+
* Recursively locate any comments representing an original location for a node in a node's
|
|
479
|
+
* children or shadowRoot children.
|
|
480
|
+
*
|
|
481
|
+
* @param node The node to search.
|
|
482
|
+
* @param orgLocNodes A map of the original location annotation and the current node being searched.
|
|
483
|
+
*/
|
|
448
484
|
const initializeDocumentHydrate = (node, orgLocNodes) => {
|
|
449
485
|
if (node.nodeType === 1 /* NODE_TYPE.ElementNode */) {
|
|
450
486
|
let i = 0;
|
|
@@ -2527,12 +2563,14 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
|
|
|
2527
2563
|
// If we have styles, add them to the DOM
|
|
2528
2564
|
if (dataStyles.innerHTML.length) {
|
|
2529
2565
|
dataStyles.setAttribute('data-styles', '');
|
|
2530
|
-
head.insertBefore(dataStyles, metaCharset ? metaCharset.nextSibling : head.firstChild);
|
|
2531
2566
|
// Apply CSP nonce to the style tag if it exists
|
|
2532
2567
|
const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);
|
|
2533
2568
|
if (nonce != null) {
|
|
2534
2569
|
dataStyles.setAttribute('nonce', nonce);
|
|
2535
2570
|
}
|
|
2571
|
+
// Insert the styles into the document head
|
|
2572
|
+
// NOTE: this _needs_ to happen last so we can ensure the nonce (and other attributes) are applied
|
|
2573
|
+
head.insertBefore(dataStyles, metaCharset ? metaCharset.nextSibling : head.firstChild);
|
|
2536
2574
|
}
|
|
2537
2575
|
// Process deferred connectedCallbacks now all components have been registered
|
|
2538
2576
|
isBootstrapping = false;
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import { p as printIonWarning } from './index-9b0d46f4.js';
|
|
5
5
|
import { MENU_BACK_BUTTON_PRIORITY } from './hardware-back-button-b2bc76db.js';
|
|
6
6
|
import { c as componentOnReady } from './helpers-ae653409.js';
|
|
7
|
-
import { b as getIonMode } from './ionic-global-
|
|
7
|
+
import { b as getIonMode } from './ionic-global-c0cda98e.js';
|
|
8
8
|
import { c as createAnimation } from './animation-fb0e0f6f.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { w as writeTask, B as Build } from './index-
|
|
4
|
+
import { w as writeTask, B as Build } from './index-08d686eb.js';
|
|
5
5
|
import { r as raf } from './helpers-ae653409.js';
|
|
6
6
|
|
|
7
7
|
const LIFECYCLE_WILL_ENTER = 'ionViewWillEnter';
|
|
@@ -10,8 +10,8 @@ const LIFECYCLE_WILL_LEAVE = 'ionViewWillLeave';
|
|
|
10
10
|
const LIFECYCLE_DID_LEAVE = 'ionViewDidLeave';
|
|
11
11
|
const LIFECYCLE_WILL_UNLOAD = 'ionViewWillUnload';
|
|
12
12
|
|
|
13
|
-
const iosTransitionAnimation = () => import('./ios.transition-
|
|
14
|
-
const mdTransitionAnimation = () => import('./md.transition-
|
|
13
|
+
const iosTransitionAnimation = () => import('./ios.transition-fd16bec1.js');
|
|
14
|
+
const mdTransitionAnimation = () => import('./md.transition-94ac93e1.js');
|
|
15
15
|
// TODO(FW-2832): types
|
|
16
16
|
const transition = (opts) => {
|
|
17
17
|
return new Promise((resolve, reject) => {
|
package/dist/esm/index.js
CHANGED
|
@@ -2,19 +2,19 @@
|
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
4
|
export { c as createAnimation } from './animation-fb0e0f6f.js';
|
|
5
|
-
export { a as LIFECYCLE_DID_ENTER, c as LIFECYCLE_DID_LEAVE, L as LIFECYCLE_WILL_ENTER, b as LIFECYCLE_WILL_LEAVE, d as LIFECYCLE_WILL_UNLOAD, g as getIonPageElement } from './index-
|
|
6
|
-
export { iosTransitionAnimation } from './ios.transition-
|
|
7
|
-
export { mdTransitionAnimation } from './md.transition-
|
|
5
|
+
export { a as LIFECYCLE_DID_ENTER, c as LIFECYCLE_DID_LEAVE, L as LIFECYCLE_WILL_ENTER, b as LIFECYCLE_WILL_LEAVE, d as LIFECYCLE_WILL_UNLOAD, g as getIonPageElement } from './index-d8817fb0.js';
|
|
6
|
+
export { iosTransitionAnimation } from './ios.transition-fd16bec1.js';
|
|
7
|
+
export { mdTransitionAnimation } from './md.transition-94ac93e1.js';
|
|
8
8
|
export { g as getTimeGivenProgression } from './cubic-bezier-fe2083dc.js';
|
|
9
9
|
export { createGesture } from './index-2cf77112.js';
|
|
10
|
-
export { g as getPlatforms, i as initialize, a as isPlatform } from './ionic-global-
|
|
10
|
+
export { g as getPlatforms, i as initialize, a as isPlatform } from './ionic-global-c0cda98e.js';
|
|
11
11
|
export { c as componentOnReady } from './helpers-ae653409.js';
|
|
12
12
|
export { I as IonicSafeString, g as getMode, s as setupConfig } from './config-49c88215.js';
|
|
13
13
|
export { o as openURL } from './theme-01f3f29c.js';
|
|
14
|
-
export { m as menuController } from './index-
|
|
15
|
-
export { b as actionSheetController, a as alertController, l as loadingController, m as modalController, p as pickerController, c as popoverController, t as toastController } from './overlays-
|
|
14
|
+
export { m as menuController } from './index-80492ed3.js';
|
|
15
|
+
export { b as actionSheetController, a as alertController, l as loadingController, m as modalController, p as pickerController, c as popoverController, t as toastController } from './overlays-abf58489.js';
|
|
16
16
|
import './index-7a14ecec.js';
|
|
17
|
-
import './index-
|
|
17
|
+
import './index-08d686eb.js';
|
|
18
18
|
import './gesture-controller-1bf57181.js';
|
|
19
19
|
import './index-9b0d46f4.js';
|
|
20
20
|
import './hardware-back-button-b2bc76db.js';
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host, f as getElement, d as createEvent } from './index-
|
|
4
|
+
import { r as registerInstance, h, H as Host, f as getElement, d as createEvent } from './index-08d686eb.js';
|
|
5
5
|
import { r as raf, t as transitionEndAsync, a as addEventListener, b as removeEventListener, g as getElementRoot } from './helpers-ae653409.js';
|
|
6
6
|
import { l as chevronDown } from './index-c132c5f1.js';
|
|
7
|
-
import { c as config, b as getIonMode } from './ionic-global-
|
|
7
|
+
import { c as config, b as getIonMode } from './ionic-global-c0cda98e.js';
|
|
8
8
|
import { p as printIonWarning } from './index-9b0d46f4.js';
|
|
9
9
|
|
|
10
10
|
const accordionIosCss = ":host{display:block;position:relative;width:100%;background-color:var(--ion-background-color, #ffffff);overflow:hidden;z-index:0}:host(.accordion-expanding) ::slotted(ion-item[slot=header]),:host(.accordion-expanded) ::slotted(ion-item[slot=header]){--border-width:0px}:host(.accordion-animated){-webkit-transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}:host(.accordion-animated) #content{-webkit-transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}#content{overflow:hidden;will-change:max-height}:host(.accordion-collapsing) #content{max-height:0 !important}:host(.accordion-collapsed) #content{display:none}:host(.accordion-expanding) #content{max-height:0}:host(.accordion-expanding) #content-wrapper{overflow:auto}:host(.accordion-disabled) #header,:host(.accordion-readonly) #header,:host(.accordion-disabled) #content,:host(.accordion-readonly) #content{pointer-events:none}:host(.accordion-disabled) #header,:host(.accordion-disabled) #content{opacity:0.4}@media (prefers-reduced-motion: reduce){:host,#content{-webkit-transition:none !important;transition:none !important}}:host(.accordion-next) ::slotted(ion-item[slot=header]){--border-width:0.55px 0px 0.55px 0px}";
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, d as createEvent, e as readTask, h, H as Host, f as getElement } from './index-
|
|
5
|
-
import { c as createButtonActiveGesture } from './button-active-
|
|
4
|
+
import { r as registerInstance, d as createEvent, e as readTask, h, H as Host, f as getElement } from './index-08d686eb.js';
|
|
5
|
+
import { c as createButtonActiveGesture } from './button-active-3fdf3e4f.js';
|
|
6
6
|
import { r as raf } from './helpers-ae653409.js';
|
|
7
7
|
import { c as createLockController } from './lock-controller-316928be.js';
|
|
8
|
-
import { d as createDelegateController, e as createTriggerController, B as BACKDROP, i as isCancel, f as present, g as dismiss, h as eventMethod, s as safeCall, j as prepareOverlay, k as setOverlayId } from './overlays-
|
|
8
|
+
import { d as createDelegateController, e as createTriggerController, B as BACKDROP, i as isCancel, f as present, g as dismiss, h as eventMethod, s as safeCall, j as prepareOverlay, k as setOverlayId } from './overlays-abf58489.js';
|
|
9
9
|
import { g as getClassMap } from './theme-01f3f29c.js';
|
|
10
|
-
import { b as getIonMode } from './ionic-global-
|
|
10
|
+
import { b as getIonMode } from './ionic-global-c0cda98e.js';
|
|
11
11
|
import { c as createAnimation } from './animation-fb0e0f6f.js';
|
|
12
12
|
import './haptic-152c4172.js';
|
|
13
13
|
import './capacitor-b0e5fe83.js';
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, d as createEvent, i as forceUpdate, h, H as Host, f as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, d as createEvent, i as forceUpdate, h, H as Host, f as getElement } from './index-08d686eb.js';
|
|
5
5
|
import { E as ENABLE_HTML_CONTENT_DEFAULT, a as sanitizeDOMString } from './config-49c88215.js';
|
|
6
|
-
import { c as createButtonActiveGesture } from './button-active-
|
|
6
|
+
import { c as createButtonActiveGesture } from './button-active-3fdf3e4f.js';
|
|
7
7
|
import { r as raf } from './helpers-ae653409.js';
|
|
8
8
|
import { c as createLockController } from './lock-controller-316928be.js';
|
|
9
|
-
import { d as createDelegateController, e as createTriggerController, B as BACKDROP, i as isCancel, j as prepareOverlay, k as setOverlayId, f as present, g as dismiss, h as eventMethod, s as safeCall } from './overlays-
|
|
9
|
+
import { d as createDelegateController, e as createTriggerController, B as BACKDROP, i as isCancel, j as prepareOverlay, k as setOverlayId, f as present, g as dismiss, h as eventMethod, s as safeCall } from './overlays-abf58489.js';
|
|
10
10
|
import { g as getClassMap } from './theme-01f3f29c.js';
|
|
11
|
-
import { c as config, b as getIonMode } from './ionic-global-
|
|
11
|
+
import { c as config, b as getIonMode } from './ionic-global-c0cda98e.js';
|
|
12
12
|
import { c as createAnimation } from './animation-fb0e0f6f.js';
|
|
13
13
|
import './haptic-152c4172.js';
|
|
14
14
|
import './capacitor-b0e5fe83.js';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host, f as getElement, d as createEvent, e as readTask, i as forceUpdate, w as writeTask } from './index-
|
|
5
|
-
import { b as getIonMode, c as config, a as isPlatform } from './ionic-global-
|
|
4
|
+
import { r as registerInstance, h, H as Host, f as getElement, d as createEvent, e as readTask, i as forceUpdate, w as writeTask } from './index-08d686eb.js';
|
|
5
|
+
import { b as getIonMode, c as config, a as isPlatform } from './ionic-global-c0cda98e.js';
|
|
6
6
|
import { m as hasLazyBuild, c as componentOnReady, l as clamp, i as inheritAriaAttributes, s as shallowEqualStringMap } from './helpers-ae653409.js';
|
|
7
7
|
import { i as isRTL } from './dir-babeabeb.js';
|
|
8
8
|
import { c as createColorClasses, h as hostContext } from './theme-01f3f29c.js';
|
|
@@ -11,7 +11,7 @@ import { c as createKeyboardController } from './keyboard-controller-5d90929a.js
|
|
|
11
11
|
import { g as getTimeGivenProgression } from './cubic-bezier-fe2083dc.js';
|
|
12
12
|
import { a as attachComponent, d as detachComponent } from './framework-delegate-bc1fd82a.js';
|
|
13
13
|
import { c as createLockController } from './lock-controller-316928be.js';
|
|
14
|
-
import { t as transition } from './index-
|
|
14
|
+
import { t as transition } from './index-d8817fb0.js';
|
|
15
15
|
import './index-9b0d46f4.js';
|
|
16
16
|
import './index-7a14ecec.js';
|
|
17
17
|
import './keyboard-dbb05fb9.js';
|
|
@@ -31,7 +31,7 @@ const App = class {
|
|
|
31
31
|
import('./index-ba9976bb.js').then((module) => module.startTapClick(config));
|
|
32
32
|
}
|
|
33
33
|
if (config.getBoolean('statusTap', isHybrid)) {
|
|
34
|
-
import('./status-tap-
|
|
34
|
+
import('./status-tap-2b93b1b5.js').then((module) => module.startStatusTap());
|
|
35
35
|
}
|
|
36
36
|
if (config.getBoolean('inputShims', needInputShims())) {
|
|
37
37
|
/**
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host } from './index-
|
|
5
|
-
import { b as getIonMode } from './ionic-global-
|
|
4
|
+
import { r as registerInstance, h, H as Host } from './index-08d686eb.js';
|
|
5
|
+
import { b as getIonMode } from './ionic-global-c0cda98e.js';
|
|
6
6
|
import { c as createColorClasses } from './theme-01f3f29c.js';
|
|
7
7
|
|
|
8
8
|
const avatarIosCss = ":host{border-radius:var(--border-radius);display:block}::slotted(ion-img),::slotted(img){border-radius:var(--border-radius);width:100%;height:100%;-o-object-fit:cover;object-fit:cover;overflow:hidden}:host{--border-radius:50%;width:48px;height:48px}";
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, h, H as Host, f as getElement } from './index-
|
|
4
|
+
import { r as registerInstance, h, H as Host, f as getElement } from './index-08d686eb.js';
|
|
5
5
|
import { i as inheritAriaAttributes } from './helpers-ae653409.js';
|
|
6
6
|
import { o as openURL, c as createColorClasses, h as hostContext } from './theme-01f3f29c.js';
|
|
7
7
|
import { c as chevronBack, a as arrowBackSharp } from './index-c132c5f1.js';
|
|
8
|
-
import { c as config, b as getIonMode } from './ionic-global-
|
|
8
|
+
import { c as config, b as getIonMode } from './ionic-global-c0cda98e.js';
|
|
9
9
|
|
|
10
10
|
const backButtonIosCss = ":host{--background:transparent;--color-focused:currentColor;--color-hover:currentColor;--icon-margin-top:0;--icon-margin-bottom:0;--icon-padding-top:0;--icon-padding-end:0;--icon-padding-bottom:0;--icon-padding-start:0;--margin-top:0;--margin-end:0;--margin-bottom:0;--margin-start:0;--min-width:auto;--min-height:auto;--padding-top:0;--padding-end:0;--padding-bottom:0;--padding-start:0;--opacity:1;--ripple-color:currentColor;--transition:background-color, opacity 100ms linear;display:none;min-width:var(--min-width);min-height:var(--min-height);color:var(--color);font-family:var(--ion-font-family, inherit);text-align:center;text-decoration:none;text-overflow:ellipsis;text-transform:none;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-font-kerning:none;font-kerning:none}ion-ripple-effect{color:var(--ripple-color)}:host(.ion-color) .button-native{color:var(--ion-color-base)}:host(.show-back-button){display:block}:host(.back-button-disabled){cursor:default;opacity:0.5;pointer-events:none}.button-native{border-radius:var(--border-radius);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;-webkit-margin-start:var(--margin-start);margin-inline-start:var(--margin-start);-webkit-margin-end:var(--margin-end);margin-inline-end:var(--margin-end);margin-top:var(--margin-top);margin-bottom:var(--margin-bottom);-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);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;display:block;position:relative;width:100%;height:100%;min-height:inherit;-webkit-transition:var(--transition);transition:var(--transition);border:0;outline:none;background:var(--background);line-height:1;cursor:pointer;opacity:var(--opacity);overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.button-inner{display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;z-index:1}ion-icon{-webkit-padding-start:var(--icon-padding-start);padding-inline-start:var(--icon-padding-start);-webkit-padding-end:var(--icon-padding-end);padding-inline-end:var(--icon-padding-end);padding-top:var(--icon-padding-top);padding-bottom:var(--icon-padding-bottom);-webkit-margin-start:var(--icon-margin-start);margin-inline-start:var(--icon-margin-start);-webkit-margin-end:var(--icon-margin-end);margin-inline-end:var(--icon-margin-end);margin-top:var(--icon-margin-top);margin-bottom:var(--icon-margin-bottom);display:inherit;font-size:var(--icon-font-size);font-weight:var(--icon-font-weight);pointer-events:none}:host(.ion-focused) .button-native{color:var(--color-focused)}:host(.ion-focused) .button-native::after{background:var(--background-focused);opacity:var(--background-focused-opacity)}.button-native::after{left:0;right:0;top:0;bottom:0;position:absolute;content:\"\";opacity:0}@media (any-hover: hover){:host(:hover) .button-native{color:var(--color-hover)}:host(:hover) .button-native::after{background:var(--background-hover);opacity:var(--background-hover-opacity)}}:host(.ion-color.ion-focused) .button-native{color:var(--ion-color-base)}@media (any-hover: hover){:host(.ion-color:hover) .button-native{color:var(--ion-color-base)}}:host(.in-toolbar:not(.in-toolbar-color)){color:var(--ion-toolbar-color, var(--color))}:host{--background-hover:transparent;--background-hover-opacity:1;--background-focused:currentColor;--background-focused-opacity:.1;--border-radius:4px;--color:var(--ion-color-primary, #3880ff);--icon-margin-end:1px;--icon-margin-start:-4px;--icon-font-size:1.6em;--min-height:32px;font-size:clamp(17px, 1.0625rem, 21.998px)}.button-native{-webkit-transform:translateZ(0);transform:translateZ(0);overflow:visible;z-index:99}:host(.ion-activated) .button-native{opacity:0.4}@media (any-hover: hover){:host(:hover){opacity:0.6}}";
|
|
11
11
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
3
|
*/
|
|
4
|
-
import { r as registerInstance, d as createEvent, h, H as Host } from './index-
|
|
4
|
+
import { r as registerInstance, d as createEvent, h, H as Host } from './index-08d686eb.js';
|
|
5
5
|
import { G as GESTURE_CONTROLLER } from './gesture-controller-1bf57181.js';
|
|
6
|
-
import { b as getIonMode } from './ionic-global-
|
|
6
|
+
import { b as getIonMode } from './ionic-global-c0cda98e.js';
|
|
7
7
|
|
|
8
8
|
const backdropIosCss = ":host{left:0;right:0;top:0;bottom:0;display:block;position:absolute;-webkit-transform:translateZ(0);transform:translateZ(0);contain:strict;cursor:pointer;opacity:0.01;-ms-touch-action:none;touch-action:none;z-index:2}:host(.backdrop-hide){background:transparent}:host(.backdrop-no-tappable){cursor:auto}:host{background-color:var(--ion-backdrop-color, #000)}";
|
|
9
9
|
|