@ionic/core 8.8.19-dev.11786610762.137bbb21 → 8.8.19-dev.11786730389.1a1927bf

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.
Files changed (1232) hide show
  1. package/components/index.js +1 -1
  2. package/components/ion-accordion-group.js +1 -1
  3. package/components/ion-accordion.js +1 -1
  4. package/components/ion-action-sheet.js +1 -1
  5. package/components/ion-alert.js +1 -1
  6. package/components/ion-app.js +1 -1
  7. package/components/ion-avatar.js +1 -1
  8. package/components/ion-back-button.js +1 -1
  9. package/components/ion-backdrop.js +1 -1
  10. package/components/ion-badge.js +1 -1
  11. package/components/ion-breadcrumb.js +1 -1
  12. package/components/ion-breadcrumbs.js +1 -1
  13. package/components/ion-button.js +1 -1
  14. package/components/ion-buttons.js +1 -1
  15. package/components/ion-card-content.js +1 -1
  16. package/components/ion-card-header.js +1 -1
  17. package/components/ion-card-subtitle.js +1 -1
  18. package/components/ion-card-title.js +1 -1
  19. package/components/ion-card.js +1 -1
  20. package/components/ion-checkbox.js +1 -1
  21. package/components/ion-chip.js +1 -1
  22. package/components/ion-col.js +1 -1
  23. package/components/ion-content.js +1 -1
  24. package/components/ion-datetime-button.js +1 -1
  25. package/components/ion-datetime.js +1 -1
  26. package/components/ion-fab-button.js +1 -1
  27. package/components/ion-fab-list.js +1 -1
  28. package/components/ion-fab.js +1 -1
  29. package/components/ion-footer.js +1 -1
  30. package/components/ion-grid.js +1 -1
  31. package/components/ion-header.js +1 -1
  32. package/components/ion-icon.js +1 -1
  33. package/components/ion-img.js +1 -1
  34. package/components/ion-infinite-scroll-content.js +1 -1
  35. package/components/ion-infinite-scroll.js +1 -1
  36. package/components/ion-input-otp.js +1 -1
  37. package/components/ion-input-password-toggle.js +1 -1
  38. package/components/ion-input.js +1 -1
  39. package/components/ion-item-divider.js +1 -1
  40. package/components/ion-item-group.js +1 -1
  41. package/components/ion-item-option.js +1 -1
  42. package/components/ion-item-options.js +1 -1
  43. package/components/ion-item-sliding.js +1 -1
  44. package/components/ion-item.js +1 -1
  45. package/components/ion-label.js +1 -1
  46. package/components/ion-list-header.js +1 -1
  47. package/components/ion-list.js +1 -1
  48. package/components/ion-loading.js +1 -1
  49. package/components/ion-menu-button.js +1 -1
  50. package/components/ion-menu-toggle.js +1 -1
  51. package/components/ion-menu.js +1 -1
  52. package/components/ion-modal.js +1 -1
  53. package/components/ion-nav-link.js +1 -1
  54. package/components/ion-nav.js +1 -1
  55. package/components/ion-note.js +1 -1
  56. package/components/ion-picker-column-option.js +1 -1
  57. package/components/ion-picker-column.js +1 -1
  58. package/components/ion-picker.js +1 -1
  59. package/components/ion-popover.js +1 -1
  60. package/components/ion-progress-bar.js +1 -1
  61. package/components/ion-radio-group.js +1 -1
  62. package/components/ion-radio.js +1 -1
  63. package/components/ion-range.js +1 -1
  64. package/components/ion-refresher-content.js +1 -1
  65. package/components/ion-refresher.js +1 -1
  66. package/components/ion-reorder-group.js +1 -1
  67. package/components/ion-reorder.js +1 -1
  68. package/components/ion-ripple-effect.js +1 -1
  69. package/components/ion-route-redirect.js +1 -1
  70. package/components/ion-route.js +1 -1
  71. package/components/ion-router-link.js +1 -1
  72. package/components/ion-router-outlet.js +1 -1
  73. package/components/ion-router.js +1 -1
  74. package/components/ion-row.js +1 -1
  75. package/components/ion-searchbar.js +1 -1
  76. package/components/ion-segment-button.js +1 -1
  77. package/components/ion-segment-content.js +1 -1
  78. package/components/ion-segment-view.js +1 -1
  79. package/components/ion-segment.js +1 -1
  80. package/components/ion-select-modal.js +1 -1
  81. package/components/ion-select-option.js +1 -1
  82. package/components/ion-select-popover.js +1 -1
  83. package/components/ion-select.js +1 -1
  84. package/components/ion-skeleton-text.js +1 -1
  85. package/components/ion-spinner.js +1 -1
  86. package/components/ion-split-pane.js +1 -1
  87. package/components/ion-tab-bar.js +1 -1
  88. package/components/ion-tab-button.js +1 -1
  89. package/components/ion-tab.js +1 -1
  90. package/components/ion-tabs.js +1 -1
  91. package/components/ion-text.js +1 -1
  92. package/components/ion-textarea.js +1 -1
  93. package/components/ion-thumbnail.js +1 -1
  94. package/components/ion-title.js +1 -1
  95. package/components/ion-toast.js +1 -1
  96. package/components/ion-toggle.js +1 -1
  97. package/components/ion-toolbar.js +1 -1
  98. package/components/p-0Pyit076.js +4 -0
  99. package/components/{p-CpHPq11n.js → p-30_sZS2V.js} +1 -1
  100. package/components/p-83oP9gzn.js +4 -0
  101. package/components/p-8FN7p701.js +4 -0
  102. package/components/p-B-FxiyeI.js +4 -0
  103. package/components/p-B6dUPQXq.js +4 -0
  104. package/components/p-BMPN55of.js +4 -0
  105. package/components/p-BMS4t-kJ.js +4 -0
  106. package/components/p-BO4sUqUv.js +4 -0
  107. package/components/p-BSQPZ79H.js +4 -0
  108. package/components/p-Bc4wROfM.js +4 -0
  109. package/components/p-BhamHSw3.js +4 -0
  110. package/components/p-BmVRXR1y.js +4 -0
  111. package/components/p-BpG8kBfD.js +4 -0
  112. package/components/p-BqPNzJf6.js +4 -0
  113. package/components/p-BsVxQGUT.js +4 -0
  114. package/components/p-BxUIQcD9.js +4 -0
  115. package/components/p-C1O9GEug.js +4 -0
  116. package/components/p-C5KYjZWD.js +4 -0
  117. package/components/p-C9BGR5fy.js +4 -0
  118. package/components/p-CD4fmpem.js +4 -0
  119. package/components/p-CEW4RXZO.js +4 -0
  120. package/components/p-CIGNaXM1.js +4 -0
  121. package/components/p-CKhiNOEg.js +4 -0
  122. package/components/p-CO2zzh3W.js +4 -0
  123. package/components/p-CVnwvOBD.js +4 -0
  124. package/components/p-CbhUdtjf.js +4 -0
  125. package/components/p-CejmQs3h.js +4 -0
  126. package/components/p-CfnGxjv-.js +4 -0
  127. package/components/p-ClFYbgND.js +4 -0
  128. package/components/p-CmKf4pgI.js +4 -0
  129. package/components/p-Cs5f-uOS.js +4 -0
  130. package/components/p-D7-vHX0A.js +4 -0
  131. package/components/{p-CA4M5WkT.js → p-DIgGHN7D.js} +1 -1
  132. package/components/p-DJztqcrH.js +4 -0
  133. package/components/p-DRfgH82D.js +4 -0
  134. package/components/p-DTY4otpr.js +4 -0
  135. package/components/p-DV85C0e0.js +4 -0
  136. package/components/p-DVKS-ovH.js +4 -0
  137. package/components/p-DWCzVL3Y.js +4 -0
  138. package/components/p-D_XD0pVT.js +4 -0
  139. package/components/p-Dd8ajo9a.js +4 -0
  140. package/components/p-DdnhY_oj.js +4 -0
  141. package/components/p-Dm7h4Nyv.js +4 -0
  142. package/components/{p-B2SvA6NE.js → p-DwpKZ6rl.js} +1 -1
  143. package/components/p-DyePCNGr.js +4 -0
  144. package/components/p-G0TxqHfe.js +4 -0
  145. package/components/{p-Ch8jco3x.js → p-J-p0EtHR.js} +1 -1
  146. package/components/p-LXu5-6Ti.js +4 -0
  147. package/components/p-LpMHEu3v.js +4 -0
  148. package/components/p-MCJ7HjWe.js +4 -0
  149. package/components/p-Obm7si-x.js +4 -0
  150. package/components/p-TXPDHL13.js +4 -0
  151. package/components/p-UuPYCOZE.js +4 -0
  152. package/components/p-WeeS7GvC.js +4 -0
  153. package/components/p-ZjP4CjeZ.js +4 -0
  154. package/components/{p-CzlL9T_X.js → p-_0JhwClE.js} +1 -1
  155. package/components/p-_IKFD3ID.js +4 -0
  156. package/components/p-byZM6qHV.js +4 -0
  157. package/components/p-hh7qIC-X.js +4 -0
  158. package/components/p-idq4JFo2.js +4 -0
  159. package/components/{p-BZwQa9ey.js → p-ryyf_ItD.js} +1 -1
  160. package/components/p-tYCT3JGl.js +4 -0
  161. package/components/p-wzAhIh03.js +4 -0
  162. package/components/p-xOjr4bwc.js +4 -0
  163. package/components/{p-Dovs7FIs.js → p-yuj4Nkm_.js} +1 -1
  164. package/css/core.css +1 -1
  165. package/css/core.css.map +1 -1
  166. package/css/display.css +1 -1
  167. package/css/display.css.map +1 -1
  168. package/css/flex-utils.css +1 -1
  169. package/css/flex-utils.css.map +1 -1
  170. package/css/float-elements.css.map +1 -1
  171. package/css/global.bundle.css.map +1 -1
  172. package/css/ionic-swiper.css +1 -1
  173. package/css/ionic-swiper.css.map +1 -1
  174. package/css/ionic.bundle.css +1 -1
  175. package/css/ionic.bundle.css.map +1 -1
  176. package/css/normalize.css.map +1 -1
  177. package/css/padding.css.map +1 -1
  178. package/css/palettes/dark.always.css.map +1 -1
  179. package/css/palettes/dark.class.css.map +1 -1
  180. package/css/palettes/dark.system.css.map +1 -1
  181. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  182. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  183. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  184. package/css/palettes/high-contrast.always.css.map +1 -1
  185. package/css/palettes/high-contrast.class.css.map +1 -1
  186. package/css/palettes/high-contrast.system.css.map +1 -1
  187. package/css/structure.css.map +1 -1
  188. package/css/text-alignment.css.map +1 -1
  189. package/css/text-transformation.css.map +1 -1
  190. package/css/typography.css.map +1 -1
  191. package/css/utils.bundle.css +1 -1
  192. package/css/utils.bundle.css.map +1 -1
  193. package/dist/cjs/{animation-qlGmEn5Y.js → animation-C0mOHzej.js} +6 -6
  194. package/dist/cjs/{app-globals-CtK-3pCu.js → app-globals-BREG4twP.js} +1 -1
  195. package/dist/cjs/{button-active-CugpWmFI.js → button-active-BKj1rdFx.js} +3 -3
  196. package/dist/cjs/{capacitor-BixsAzyb.js → capacitor-DmA66EwP.js} +3 -3
  197. package/dist/cjs/{config-DWdFbSNK.js → config-CjUbvdPW.js} +5 -4
  198. package/dist/cjs/{dir-Cn0z1rJH.js → dir-Brx7VkvP.js} +1 -1
  199. package/dist/{esm/focus-visible-vXpMhGrs.js → cjs/focus-visible-CCvKiLh3.js} +3 -23
  200. package/dist/cjs/{format-COAsdjOc.js → format-pp0Du3K-.js} +40 -30
  201. package/dist/cjs/{framework-delegate-CJT_QJQI.js → framework-delegate-NTLQ5YzV.js} +6 -10
  202. package/dist/cjs/{gesture-controller-dtqlP_q4.js → gesture-controller-BDUH7687.js} +15 -8
  203. package/dist/cjs/{haptic-BFgF-QCg.js → haptic-Ch-X4gRx.js} +3 -4
  204. package/dist/cjs/hardware-back-button-fqpYh-kd.js +121 -0
  205. package/dist/cjs/{helpers-Fh1iXsX9.js → helpers-CaLhEmTE.js} +6 -73
  206. package/dist/cjs/{index-YYUVCfP-.js → index-B7zJsYWS.js} +3 -3
  207. package/dist/cjs/{index-CNicxECl.js → index-BlshL9ib.js} +8 -9
  208. package/dist/cjs/{index-D94mERjz.js → index-Ck9advCT.js} +5 -5
  209. package/dist/cjs/{index-CM8iGvyx.js → index-D2X6b92x.js} +15 -16
  210. package/dist/cjs/{index-DRFkZu3V.js → index-D48vawBq.js} +2 -2
  211. package/dist/cjs/index-DkNv4J_i.js +10 -0
  212. package/dist/cjs/{index-CAvQ7Tka.js → index-P1nQxrpZ.js} +10 -4
  213. package/dist/cjs/{index-C1knGA9x.js → index-uvry__L4.js} +33 -65
  214. package/dist/cjs/{index-CxDnX7hd.js → index-wOmugbdg.js} +0 -2
  215. package/dist/cjs/index.cjs.js +17 -17
  216. package/dist/cjs/{input-shims-C8NCYfWv.js → input-shims-DvHAFqiP.js} +19 -22
  217. package/dist/cjs/{input.utils-CYZZsbdf.js → input.utils-CP4fzrqk.js} +6 -7
  218. package/dist/cjs/ion-accordion_2.cjs.entry.js +378 -382
  219. package/dist/cjs/ion-action-sheet.cjs.entry.js +178 -86
  220. package/dist/cjs/ion-alert.cjs.entry.js +250 -125
  221. package/dist/cjs/ion-app_8.cjs.entry.js +461 -608
  222. package/dist/cjs/ion-avatar_3.cjs.entry.js +19 -125
  223. package/dist/cjs/ion-back-button.cjs.entry.js +64 -49
  224. package/dist/cjs/ion-backdrop.cjs.entry.js +23 -22
  225. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +211 -169
  226. package/dist/cjs/ion-button_2.cjs.entry.js +152 -117
  227. package/dist/cjs/ion-card_5.cjs.entry.js +109 -79
  228. package/dist/cjs/ion-checkbox.cjs.entry.js +163 -129
  229. package/dist/cjs/ion-chip.cjs.entry.js +21 -56
  230. package/dist/cjs/ion-col_3.cjs.entry.js +186 -61
  231. package/dist/cjs/ion-datetime-button.cjs.entry.js +255 -247
  232. package/dist/cjs/ion-datetime.cjs.entry.js +2770 -0
  233. package/dist/cjs/ion-fab_3.cjs.entry.js +154 -112
  234. package/dist/cjs/ion-img.cjs.entry.js +34 -16
  235. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +108 -156
  236. package/dist/cjs/ion-input-otp.cjs.entry.js +435 -437
  237. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +40 -64
  238. package/dist/cjs/ion-input.cjs.entry.js +330 -276
  239. package/dist/cjs/ion-item-option_3.cjs.entry.js +136 -511
  240. package/dist/cjs/ion-item_8.cjs.entry.js +217 -189
  241. package/dist/cjs/ion-loading.cjs.entry.js +151 -68
  242. package/dist/cjs/ion-menu_3.cjs.entry.js +181 -137
  243. package/dist/cjs/ion-modal.cjs.entry.js +570 -500
  244. package/dist/cjs/ion-nav_2.cjs.entry.js +103 -163
  245. package/dist/cjs/ion-picker-column-option.cjs.entry.js +39 -39
  246. package/dist/cjs/ion-picker-column.cjs.entry.js +421 -409
  247. package/dist/cjs/ion-picker.cjs.entry.js +405 -400
  248. package/dist/cjs/ion-popover.cjs.entry.js +323 -211
  249. package/dist/cjs/ion-progress-bar.cjs.entry.js +35 -47
  250. package/dist/cjs/ion-radio_2.cjs.entry.js +216 -161
  251. package/dist/cjs/ion-range.cjs.entry.js +307 -249
  252. package/dist/cjs/ion-refresher_2.cjs.entry.js +174 -121
  253. package/dist/cjs/ion-reorder_2.cjs.entry.js +59 -53
  254. package/dist/cjs/ion-ripple-effect.cjs.entry.js +18 -26
  255. package/dist/cjs/ion-route_4.cjs.entry.js +178 -75
  256. package/dist/cjs/ion-searchbar.cjs.entry.js +308 -331
  257. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  258. package/dist/cjs/ion-segment-view.cjs.entry.js +28 -27
  259. package/dist/cjs/ion-segment_2.cjs.entry.js +177 -141
  260. package/dist/cjs/ion-select-modal.cjs.entry.js +49 -69
  261. package/dist/cjs/ion-select_3.cjs.entry.js +481 -385
  262. package/dist/cjs/ion-spinner.cjs.entry.js +28 -36
  263. package/dist/cjs/ion-split-pane.cjs.entry.js +34 -25
  264. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +116 -179
  265. package/dist/cjs/ion-tab_2.cjs.entry.js +54 -29
  266. package/dist/cjs/ion-text.cjs.entry.js +13 -7
  267. package/dist/cjs/ion-textarea.cjs.entry.js +274 -269
  268. package/dist/cjs/ion-toast.cjs.entry.js +264 -169
  269. package/dist/cjs/ion-toggle.cjs.entry.js +184 -187
  270. package/dist/cjs/ionic-global-k6hOWWpn.js +156 -0
  271. package/dist/cjs/ionic.cjs.js +4 -4
  272. package/dist/cjs/{ios.transition-BgDCUY4Y.js → ios.transition-KvuRAe2W.js} +14 -20
  273. package/dist/cjs/{item-multiple-inputs-DKn76MYO.js → item-multiple-inputs-BdYSbfKN.js} +1 -1
  274. package/dist/cjs/{keyboard-nne7rvBK.js → keyboard-Cix5TVkD.js} +4 -5
  275. package/dist/cjs/{keyboard-BbZXOwZg.js → keyboard-cHxZlTyz.js} +3 -3
  276. package/dist/cjs/keyboard-controller-PtZoN2GS.js +167 -0
  277. package/dist/cjs/loader.cjs.js +4 -4
  278. package/dist/cjs/{md.transition-Debf4tYr.js → md.transition-Bjl5Ozph.js} +8 -10
  279. package/dist/cjs/{notch-controller-CFlPw7ER.js → notch-controller-BEUpEgb5.js} +4 -4
  280. package/dist/cjs/{overlay-control-label-DnRLQR1t.js → overlay-control-label-D2sdL2O8.js} +11 -13
  281. package/dist/cjs/{overlays-DYBUkNQu.js → overlays-IlP4H2Gn.js} +60 -336
  282. package/dist/cjs/{select-option-render-BqJEK1N1.js → select-option-render-pULCGldr.js} +3 -4
  283. package/dist/cjs/{status-tap-hwqc0yb_.js → status-tap-BR_ujYHg.js} +3 -4
  284. package/dist/cjs/{swipe-back-DqQx5QCp.js → swipe-back-DzQKEl5g.js} +5 -6
  285. package/dist/cjs/{theme-IlOsGAz7.js → theme-Bw0rpaNN.js} +7 -26
  286. package/dist/cjs/validity-BpS37YFM.js +19 -0
  287. package/dist/collection/collection-manifest.json +1 -13
  288. package/dist/collection/components/accordion/accordion.ios.css +58 -73
  289. package/dist/collection/components/accordion/accordion.js +327 -338
  290. package/dist/collection/components/accordion/accordion.md.css +59 -67
  291. package/dist/collection/components/accordion-group/accordion-group.ios.css +4 -16
  292. package/dist/collection/components/accordion-group/accordion-group.js +56 -69
  293. package/dist/collection/components/accordion-group/accordion-group.md.css +4 -22
  294. package/dist/collection/components/action-sheet/action-sheet.ios.css +54 -184
  295. package/dist/collection/components/action-sheet/action-sheet.js +166 -76
  296. package/dist/collection/components/action-sheet/action-sheet.md.css +55 -179
  297. package/dist/collection/components/action-sheet/test/basic/fixture.js +3 -0
  298. package/dist/collection/components/alert/alert.ios.css +54 -247
  299. package/dist/collection/components/alert/alert.js +236 -113
  300. package/dist/collection/components/alert/alert.md.css +56 -243
  301. package/dist/collection/components/app/app.js +86 -15
  302. package/dist/collection/components/avatar/avatar.ios.css +33 -7
  303. package/dist/collection/components/avatar/avatar.js +4 -120
  304. package/dist/collection/components/avatar/avatar.md.css +0 -51
  305. package/dist/collection/components/back-button/back-button.ios.css +48 -60
  306. package/dist/collection/components/back-button/back-button.js +61 -46
  307. package/dist/collection/components/back-button/back-button.md.css +48 -60
  308. package/dist/collection/components/backdrop/backdrop.ios.css +19 -56
  309. package/dist/collection/components/backdrop/backdrop.js +22 -26
  310. package/dist/collection/components/backdrop/backdrop.md.css +19 -56
  311. package/dist/collection/components/badge/badge.ios.css +12 -137
  312. package/dist/collection/components/badge/badge.js +15 -145
  313. package/dist/collection/components/badge/badge.md.css +12 -122
  314. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +8 -20
  315. package/dist/collection/components/breadcrumb/breadcrumb.js +101 -72
  316. package/dist/collection/components/breadcrumb/breadcrumb.md.css +8 -20
  317. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +0 -6
  318. package/dist/collection/components/breadcrumbs/breadcrumbs.js +112 -99
  319. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +0 -6
  320. package/dist/collection/components/button/button.ios.css +46 -154
  321. package/dist/collection/components/button/button.js +157 -122
  322. package/dist/collection/components/button/button.md.css +50 -150
  323. package/dist/collection/components/buttons/buttons.ios.css +7 -59
  324. package/dist/collection/components/buttons/buttons.js +21 -29
  325. package/dist/collection/components/buttons/buttons.md.css +3 -55
  326. package/dist/collection/components/card/card.ios.css +14 -65
  327. package/dist/collection/components/card/card.js +63 -61
  328. package/dist/collection/components/card/card.md.css +14 -65
  329. package/dist/collection/components/card-content/card-content.ios.css +35 -20
  330. package/dist/collection/components/card-content/card-content.js +10 -12
  331. package/dist/collection/components/card-content/card-content.md.css +35 -20
  332. package/dist/collection/components/card-header/card-header.ios.css +15 -27
  333. package/dist/collection/components/card-header/card-header.js +21 -20
  334. package/dist/collection/components/card-header/card-header.md.css +15 -27
  335. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +0 -12
  336. package/dist/collection/components/card-subtitle/card-subtitle.js +14 -11
  337. package/dist/collection/components/card-subtitle/card-subtitle.md.css +0 -12
  338. package/dist/collection/components/card-title/card-title.ios.css +0 -73
  339. package/dist/collection/components/card-title/card-title.js +14 -11
  340. package/dist/collection/components/card-title/card-title.md.css +0 -73
  341. package/dist/collection/components/checkbox/checkbox.ios.css +117 -242
  342. package/dist/collection/components/checkbox/checkbox.js +160 -165
  343. package/dist/collection/components/checkbox/checkbox.md.css +118 -243
  344. package/dist/collection/components/chip/chip.ios.css +14 -67
  345. package/dist/collection/components/chip/chip.js +20 -116
  346. package/dist/collection/components/chip/chip.md.css +14 -67
  347. package/dist/collection/components/col/col.css +4 -192
  348. package/dist/collection/components/col/col.js +186 -212
  349. package/dist/collection/components/content/content.css +2 -47
  350. package/dist/collection/components/content/content.js +102 -78
  351. package/dist/collection/components/datetime/datetime.ios.css +148 -304
  352. package/dist/collection/components/datetime/datetime.js +1068 -910
  353. package/dist/collection/components/datetime/datetime.md.css +138 -294
  354. package/dist/collection/components/datetime/utils/data.js +18 -19
  355. package/dist/collection/components/datetime/utils/format.js +21 -11
  356. package/dist/collection/components/datetime/utils/manipulation.js +8 -8
  357. package/dist/collection/components/datetime/utils/parse.js +10 -10
  358. package/dist/collection/components/datetime/utils/state.js +8 -2
  359. package/dist/collection/components/datetime/utils/validate.js +4 -5
  360. package/dist/collection/components/datetime-button/datetime-button.ios.css +5 -6
  361. package/dist/collection/components/datetime-button/datetime-button.js +253 -246
  362. package/dist/collection/components/datetime-button/datetime-button.md.css +5 -6
  363. package/dist/collection/components/fab/fab.css +1 -25
  364. package/dist/collection/components/fab/fab.js +25 -22
  365. package/dist/collection/components/fab-button/fab-button.ios.css +6 -18
  366. package/dist/collection/components/fab-button/fab-button.js +117 -83
  367. package/dist/collection/components/fab-button/fab-button.md.css +8 -20
  368. package/dist/collection/components/fab-list/fab-list.css +0 -12
  369. package/dist/collection/components/fab-list/fab-list.js +15 -20
  370. package/dist/collection/components/footer/footer.ios.css +6 -33
  371. package/dist/collection/components/footer/footer.js +65 -151
  372. package/dist/collection/components/footer/footer.md.css +0 -40
  373. package/dist/collection/components/grid/grid.css +0 -12
  374. package/dist/collection/components/grid/grid.js +9 -15
  375. package/dist/collection/components/header/header.ios.css +133 -178
  376. package/dist/collection/components/header/header.js +70 -202
  377. package/dist/collection/components/header/header.md.css +9 -199
  378. package/dist/collection/components/header/header.utils.js +13 -6
  379. package/dist/collection/components/img/img.js +34 -16
  380. package/dist/collection/components/infinite-scroll/infinite-scroll.js +76 -164
  381. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -12
  382. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +30 -19
  383. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -12
  384. package/dist/collection/components/input/input.ios.css +135 -223
  385. package/dist/collection/components/input/input.js +339 -307
  386. package/dist/collection/components/input/input.md.css +207 -193
  387. package/dist/collection/components/input-otp/input-otp.ios.css +60 -105
  388. package/dist/collection/components/input-otp/input-otp.js +432 -437
  389. package/dist/collection/components/input-otp/input-otp.md.css +60 -105
  390. package/dist/collection/components/input-password-toggle/input-password-toggle.js +37 -60
  391. package/dist/collection/components/item/item.ios.css +80 -120
  392. package/dist/collection/components/item/item.js +113 -102
  393. package/dist/collection/components/item/item.md.css +79 -131
  394. package/dist/collection/components/item-divider/item-divider.ios.css +0 -18
  395. package/dist/collection/components/item-divider/item-divider.js +23 -21
  396. package/dist/collection/components/item-divider/item-divider.md.css +0 -18
  397. package/dist/collection/components/item-group/item-group.ios.css +0 -12
  398. package/dist/collection/components/item-group/item-group.js +7 -13
  399. package/dist/collection/components/item-group/item-group.md.css +0 -12
  400. package/dist/collection/components/item-option/item-option.ios.css +29 -136
  401. package/dist/collection/components/item-option/item-option.js +56 -92
  402. package/dist/collection/components/item-option/item-option.md.css +29 -136
  403. package/dist/collection/components/item-options/item-options.ios.css +34 -77
  404. package/dist/collection/components/item-options/item-options.js +17 -20
  405. package/dist/collection/components/item-options/item-options.md.css +34 -77
  406. package/dist/collection/components/item-sliding/{item-sliding.native.css → item-sliding.css} +9 -84
  407. package/dist/collection/components/item-sliding/item-sliding.js +61 -441
  408. package/dist/collection/components/item-sliding/test/test.utils.js +0 -13
  409. package/dist/collection/components/label/label.ios.css +0 -18
  410. package/dist/collection/components/label/label.js +32 -15
  411. package/dist/collection/components/label/label.md.css +0 -18
  412. package/dist/collection/components/list/list.ios.css +14 -54
  413. package/dist/collection/components/list/list.js +19 -55
  414. package/dist/collection/components/list/list.md.css +16 -56
  415. package/dist/collection/components/list-header/list-header.ios.css +38 -82
  416. package/dist/collection/components/list-header/list-header.js +18 -11
  417. package/dist/collection/components/list-header/list-header.md.css +38 -82
  418. package/dist/collection/components/loading/loading.ios.css +1 -13
  419. package/dist/collection/components/loading/loading.js +143 -62
  420. package/dist/collection/components/loading/loading.md.css +1 -13
  421. package/dist/collection/components/menu/menu.ios.css +3 -15
  422. package/dist/collection/components/menu/menu.js +108 -71
  423. package/dist/collection/components/menu/menu.md.css +3 -15
  424. package/dist/collection/components/menu-button/menu-button.ios.css +14 -48
  425. package/dist/collection/components/menu-button/menu-button.js +38 -45
  426. package/dist/collection/components/menu-button/menu-button.md.css +15 -49
  427. package/dist/collection/components/menu-toggle/menu-toggle.js +25 -21
  428. package/dist/collection/components/modal/animations/ios.enter.js +1 -1
  429. package/dist/collection/components/modal/animations/md.enter.js +1 -1
  430. package/dist/collection/components/modal/animations/sheet.js +2 -8
  431. package/dist/collection/components/modal/gestures/sheet.js +32 -86
  432. package/dist/collection/components/modal/gestures/swipe-to-close.js +15 -3
  433. package/dist/collection/components/modal/modal.ios.css +70 -178
  434. package/dist/collection/components/modal/modal.js +404 -272
  435. package/dist/collection/components/modal/modal.md.css +70 -178
  436. package/dist/collection/components/modal/safe-area-utils.js +6 -7
  437. package/dist/collection/components/modal/test/fixtures.js +3 -0
  438. package/dist/collection/components/nav/nav.css +1 -7
  439. package/dist/collection/components/nav/nav.js +72 -256
  440. package/dist/collection/components/nav/view-controller.js +7 -1
  441. package/dist/collection/components/nav-link/nav-link.js +21 -14
  442. package/dist/collection/components/note/note.ios.css +0 -12
  443. package/dist/collection/components/note/note.js +14 -11
  444. package/dist/collection/components/note/note.md.css +0 -12
  445. package/dist/collection/components/picker/picker.ios.css +3 -15
  446. package/dist/collection/components/picker/picker.js +403 -398
  447. package/dist/collection/components/picker/picker.md.css +3 -15
  448. package/dist/collection/components/picker-column/picker-column.css +5 -9
  449. package/dist/collection/components/picker-column/picker-column.js +418 -409
  450. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
  451. package/dist/collection/components/picker-column-option/picker-column-option.js +38 -42
  452. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -7
  453. package/dist/collection/components/popover/animations/ios.enter.js +1 -2
  454. package/dist/collection/components/popover/animations/md.enter.js +1 -2
  455. package/dist/collection/components/popover/popover.ios.css +2 -15
  456. package/dist/collection/components/popover/popover.js +313 -199
  457. package/dist/collection/components/popover/popover.md.css +2 -15
  458. package/dist/collection/components/popover/test/fixture.js +1 -0
  459. package/dist/collection/components/popover/utils.js +4 -6
  460. package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -48
  461. package/dist/collection/components/progress-bar/progress-bar.js +33 -65
  462. package/dist/collection/components/progress-bar/progress-bar.md.css +17 -48
  463. package/dist/collection/components/radio/radio.ios.css +102 -207
  464. package/dist/collection/components/radio/radio.js +108 -77
  465. package/dist/collection/components/radio/radio.md.css +102 -207
  466. package/dist/collection/components/radio-group/radio-group.ios.css +19 -43
  467. package/dist/collection/components/radio-group/radio-group.js +107 -113
  468. package/dist/collection/components/radio-group/radio-group.md.css +19 -43
  469. package/dist/collection/components/radio-group/test/fixtures.js +2 -0
  470. package/dist/collection/components/range/range.ios.css +85 -128
  471. package/dist/collection/components/range/range.js +303 -245
  472. package/dist/collection/components/range/range.md.css +85 -128
  473. package/dist/collection/components/refresher/refresher.ios.css +1 -14
  474. package/dist/collection/components/refresher/refresher.js +117 -88
  475. package/dist/collection/components/refresher/refresher.md.css +2 -15
  476. package/dist/collection/components/refresher-content/refresher-content.js +47 -31
  477. package/dist/collection/components/reorder/reorder.ios.css +0 -6
  478. package/dist/collection/components/reorder/reorder.js +7 -33
  479. package/dist/collection/components/reorder/reorder.md.css +0 -6
  480. package/dist/collection/components/reorder-group/reorder-group.css +0 -6
  481. package/dist/collection/components/reorder-group/reorder-group.js +47 -22
  482. package/dist/collection/components/ripple-effect/{ripple-effect.common.css → ripple-effect.css} +1 -7
  483. package/dist/collection/components/ripple-effect/ripple-effect.js +17 -26
  484. package/dist/collection/components/route/route.js +39 -14
  485. package/dist/collection/components/route-redirect/route-redirect.js +31 -0
  486. package/dist/collection/components/router/router.js +37 -37
  487. package/dist/collection/components/router/utils/dom.js +25 -7
  488. package/dist/collection/components/router/utils/matching.js +7 -9
  489. package/dist/collection/components/router/utils/parser.js +1 -1
  490. package/dist/collection/components/router/utils/path.js +0 -1
  491. package/dist/collection/components/router-link/router-link.css +2 -8
  492. package/dist/collection/components/router-link/router-link.js +40 -19
  493. package/dist/collection/components/router-outlet/router-outlet.css +1 -7
  494. package/dist/collection/components/router-outlet/router-outlet.js +83 -25
  495. package/dist/collection/components/row/row.css +0 -16
  496. package/dist/collection/components/row/row.js +2 -9
  497. package/dist/collection/components/searchbar/searchbar.ios.css +18 -56
  498. package/dist/collection/components/searchbar/searchbar.js +321 -380
  499. package/dist/collection/components/searchbar/searchbar.md.css +18 -56
  500. package/dist/collection/components/segment/segment.ios.css +2 -45
  501. package/dist/collection/components/segment/segment.js +126 -94
  502. package/dist/collection/components/segment/segment.md.css +2 -45
  503. package/dist/collection/components/segment-button/segment-button.ios.css +105 -146
  504. package/dist/collection/components/segment-button/segment-button.js +49 -46
  505. package/dist/collection/components/segment-button/segment-button.md.css +107 -148
  506. package/dist/collection/components/segment-content/segment-content.js +1 -1
  507. package/dist/collection/components/segment-view/segment-view.ios.css +0 -6
  508. package/dist/collection/components/segment-view/segment-view.js +28 -27
  509. package/dist/collection/components/segment-view/segment-view.md.css +0 -6
  510. package/dist/collection/components/select/select.ios.css +177 -316
  511. package/dist/collection/components/select/select.js +401 -399
  512. package/dist/collection/components/select/select.md.css +179 -332
  513. package/dist/collection/components/select-modal/select-modal.ios.css +45 -293
  514. package/dist/collection/components/select-modal/select-modal.js +37 -79
  515. package/dist/collection/components/select-modal/select-modal.md.css +43 -273
  516. package/dist/collection/components/select-modal/test/fixtures.js +8 -1
  517. package/dist/collection/components/select-option/select-option.js +48 -15
  518. package/dist/collection/components/select-popover/select-popover.ios.css +124 -188
  519. package/dist/collection/components/select-popover/select-popover.js +44 -37
  520. package/dist/collection/components/select-popover/select-popover.md.css +47 -228
  521. package/dist/collection/components/select-popover/test/fixtures.js +8 -1
  522. package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
  523. package/dist/collection/components/skeleton-text/skeleton-text.js +15 -15
  524. package/dist/collection/components/spinner/{spinner.ionic.css → spinner.css} +10 -78
  525. package/dist/collection/components/spinner/spinner.js +26 -55
  526. package/dist/collection/components/split-pane/split-pane.ios.css +2 -20
  527. package/dist/collection/components/split-pane/split-pane.js +33 -28
  528. package/dist/collection/components/split-pane/split-pane.md.css +2 -20
  529. package/dist/collection/components/tab/tab.js +17 -10
  530. package/dist/collection/components/tab-bar/tab-bar.ios.css +43 -86
  531. package/dist/collection/components/tab-bar/tab-bar.js +44 -190
  532. package/dist/collection/components/tab-bar/tab-bar.md.css +43 -86
  533. package/dist/collection/components/tab-button/tab-button.ios.css +95 -171
  534. package/dist/collection/components/tab-button/tab-button.js +68 -74
  535. package/dist/collection/components/tab-button/tab-button.md.css +93 -137
  536. package/dist/collection/components/tabs/tabs.css +1 -7
  537. package/dist/collection/components/tabs/tabs.js +33 -23
  538. package/dist/collection/components/text/text.css +0 -6
  539. package/dist/collection/components/text/text.js +12 -7
  540. package/dist/collection/components/textarea/textarea.ios.css +158 -298
  541. package/dist/collection/components/textarea/textarea.js +275 -295
  542. package/dist/collection/components/textarea/textarea.md.css +159 -312
  543. package/dist/collection/components/thumbnail/thumbnail.css +0 -6
  544. package/dist/collection/components/thumbnail/thumbnail.js +2 -9
  545. package/dist/collection/components/title/title.ios.css +4 -32
  546. package/dist/collection/components/title/title.js +23 -13
  547. package/dist/collection/components/title/title.md.css +4 -39
  548. package/dist/collection/components/toast/animations/utils.js +1 -1
  549. package/dist/collection/components/toast/toast.ios.css +45 -84
  550. package/dist/collection/components/toast/toast.js +232 -178
  551. package/dist/collection/components/toast/toast.md.css +45 -84
  552. package/dist/collection/components/toggle/toggle.ios.css +127 -247
  553. package/dist/collection/components/toggle/toggle.js +175 -177
  554. package/dist/collection/components/toggle/toggle.md.css +127 -245
  555. package/dist/collection/components/toolbar/toolbar.ios.css +47 -90
  556. package/dist/collection/components/toolbar/toolbar.js +25 -222
  557. package/dist/collection/components/toolbar/toolbar.md.css +47 -90
  558. package/dist/collection/global/config.js +4 -6
  559. package/dist/collection/global/ionic-global.js +20 -242
  560. package/dist/collection/index.js +1 -1
  561. package/dist/collection/utils/animation/animation.js +3 -3
  562. package/dist/collection/utils/config.js +5 -4
  563. package/dist/collection/utils/focus-controller/index.js +1 -1
  564. package/dist/collection/utils/focus-trap.js +5 -16
  565. package/dist/collection/utils/focus-visible.js +0 -22
  566. package/dist/collection/utils/forms/index.js +0 -1
  567. package/dist/collection/utils/forms/validity.js +0 -31
  568. package/dist/collection/utils/framework-delegate.js +5 -9
  569. package/dist/collection/utils/gesture/gesture-controller.js +15 -8
  570. package/dist/collection/utils/gesture/index.js +10 -2
  571. package/dist/collection/utils/gesture/listener.js +1 -1
  572. package/dist/collection/utils/hardware-back-button.js +3 -18
  573. package/dist/collection/utils/helpers.js +5 -72
  574. package/dist/collection/utils/input-shims/hacks/scroll-assist.js +4 -5
  575. package/dist/collection/utils/input-shims/hacks/scroll-data.js +1 -2
  576. package/dist/collection/utils/keyboard/keyboard-controller.js +6 -8
  577. package/dist/collection/utils/keyboard/keyboard.js +1 -1
  578. package/dist/collection/utils/logging/index.js +23 -4
  579. package/dist/collection/utils/media.js +0 -1
  580. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  581. package/dist/collection/utils/menu-controller/animations/push.js +1 -2
  582. package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
  583. package/dist/collection/utils/menu-controller/index.js +1 -2
  584. package/dist/collection/utils/native/haptic.js +2 -3
  585. package/dist/collection/utils/native/keyboard.js +2 -2
  586. package/dist/collection/utils/native/status-bar.js +1 -1
  587. package/dist/collection/utils/overlay-control-label.js +11 -13
  588. package/dist/collection/utils/overlays.js +45 -312
  589. package/dist/collection/utils/platform.js +4 -5
  590. package/dist/collection/utils/rtl/dir.js +1 -1
  591. package/dist/collection/utils/sanitization/index.js +2 -2
  592. package/dist/collection/utils/select-option-render.js +1 -2
  593. package/dist/collection/utils/slot-mutation-controller.js +1 -2
  594. package/dist/collection/utils/test/playwright/apply-keyboard-focus.js +1 -1
  595. package/dist/collection/utils/test/playwright/drag-element.js +11 -35
  596. package/dist/collection/utils/test/playwright/generator.js +25 -51
  597. package/dist/collection/utils/test/playwright/page/event-spy.js +11 -12
  598. package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -15
  599. package/dist/collection/utils/test/playwright/page/utils/set-content.js +4 -27
  600. package/dist/collection/utils/test/playwright/page/utils/set-ion-viewport.js +2 -3
  601. package/dist/collection/utils/test/press-keys.js +10 -17
  602. package/dist/collection/utils/theme.js +7 -26
  603. package/dist/collection/utils/transition/ios.transition.js +9 -14
  604. package/dist/collection/utils/transition/md.transition.js +3 -4
  605. package/dist/docs.json +503 -10023
  606. package/dist/esm/{animation-ChfHU0RG.js → animation-CGFdmGk9.js} +5 -5
  607. package/dist/esm/{app-globals-D1OOQlqq.js → app-globals-CYmMeGdU.js} +1 -1
  608. package/dist/esm/{button-active-CPYK0dNo.js → button-active--80YqSHA.js} +3 -3
  609. package/dist/esm/{capacitor-DG_4yVXz.js → capacitor-CFERIeaU.js} +1 -1
  610. package/dist/esm/{config-BwKpO3Is.js → config-DWCzVL3Y.js} +5 -4
  611. package/dist/esm/{dir-C53feagD.js → dir-B-FxiyeI.js} +1 -1
  612. package/dist/{cjs/focus-visible-BIj-I3-C.js → esm/focus-visible-BmVRXR1y.js} +1 -27
  613. package/dist/esm/{format-2WlZcMvG.js → format-Dcwga61t.js} +41 -31
  614. package/dist/esm/{framework-delegate-DO2QXccA.js → framework-delegate--ajhSeKH.js} +6 -10
  615. package/dist/esm/{gesture-controller-BTEOs1at.js → gesture-controller-TXPDHL13.js} +15 -8
  616. package/dist/esm/{haptic-BWlRCqa-.js → haptic-Cq4UAeka.js} +3 -4
  617. package/dist/esm/hardware-back-button-gLJHMX_F.js +115 -0
  618. package/dist/esm/{helpers-DfF5_wJc.js → helpers-DexiPLIC.js} +7 -73
  619. package/dist/esm/{index-BSDDOljg.js → index-8s8kZKJ7.js} +5 -5
  620. package/dist/esm/{index-DNY2GOUg.js → index-BCgUwrV0.js} +3 -4
  621. package/dist/esm/{index-B4Kq2YNk.js → index-BvabGprD.js} +1 -2
  622. package/dist/esm/{index-Mq5pCWmZ.js → index-CKM1DdGm.js} +3 -3
  623. package/dist/esm/{index-C0EQceqV.js → index-ChhhtsGZ.js} +34 -66
  624. package/dist/esm/{index-7eS8XtuU.js → index-CumkqGQF.js} +12 -13
  625. package/dist/esm/{index-CfgBF1SE.js → index-DppOcPFQ.js} +10 -4
  626. package/dist/esm/index-ZjP4CjeZ.js +7 -0
  627. package/dist/esm/{index-taYRjZGp.js → index-_Za5VB9w.js} +2 -2
  628. package/dist/esm/index.js +17 -16
  629. package/dist/esm/{input-shims-tZfqB5a5.js → input-shims-BB0AKb_k.js} +11 -14
  630. package/dist/esm/{input.utils-fs4B7WL5.js → input.utils-J6HWocLA.js} +4 -5
  631. package/dist/esm/ion-accordion_2.entry.js +378 -382
  632. package/dist/esm/ion-action-sheet.entry.js +178 -86
  633. package/dist/esm/ion-alert.entry.js +250 -125
  634. package/dist/esm/ion-app_8.entry.js +460 -607
  635. package/dist/esm/ion-avatar_3.entry.js +19 -125
  636. package/dist/esm/ion-back-button.entry.js +64 -49
  637. package/dist/esm/ion-backdrop.entry.js +23 -22
  638. package/dist/esm/ion-breadcrumb_2.entry.js +211 -169
  639. package/dist/esm/ion-button_2.entry.js +152 -117
  640. package/dist/esm/ion-card_5.entry.js +109 -79
  641. package/dist/esm/ion-checkbox.entry.js +163 -129
  642. package/dist/esm/ion-chip.entry.js +21 -56
  643. package/dist/esm/ion-col_3.entry.js +186 -61
  644. package/dist/esm/ion-datetime-button.entry.js +255 -247
  645. package/dist/esm/ion-datetime.entry.js +2768 -0
  646. package/dist/esm/ion-fab_3.entry.js +154 -112
  647. package/dist/esm/ion-img.entry.js +34 -16
  648. package/dist/esm/ion-infinite-scroll_2.entry.js +108 -156
  649. package/dist/esm/ion-input-otp.entry.js +435 -437
  650. package/dist/esm/ion-input-password-toggle.entry.js +40 -64
  651. package/dist/esm/ion-input.entry.js +330 -276
  652. package/dist/esm/ion-item-option_3.entry.js +136 -511
  653. package/dist/esm/ion-item_8.entry.js +217 -189
  654. package/dist/esm/ion-loading.entry.js +151 -68
  655. package/dist/esm/ion-menu_3.entry.js +181 -137
  656. package/dist/esm/ion-modal.entry.js +528 -458
  657. package/dist/esm/ion-nav_2.entry.js +103 -163
  658. package/dist/esm/ion-picker-column-option.entry.js +39 -39
  659. package/dist/esm/ion-picker-column.entry.js +421 -409
  660. package/dist/esm/ion-picker.entry.js +405 -400
  661. package/dist/esm/ion-popover.entry.js +323 -211
  662. package/dist/esm/ion-progress-bar.entry.js +35 -47
  663. package/dist/esm/ion-radio_2.entry.js +216 -161
  664. package/dist/esm/ion-range.entry.js +307 -249
  665. package/dist/esm/ion-refresher_2.entry.js +174 -121
  666. package/dist/esm/ion-reorder_2.entry.js +59 -53
  667. package/dist/esm/ion-ripple-effect.entry.js +18 -26
  668. package/dist/esm/ion-route_4.entry.js +178 -75
  669. package/dist/esm/ion-searchbar.entry.js +308 -331
  670. package/dist/esm/ion-segment-content.entry.js +2 -2
  671. package/dist/esm/ion-segment-view.entry.js +28 -27
  672. package/dist/esm/ion-segment_2.entry.js +177 -141
  673. package/dist/esm/ion-select-modal.entry.js +49 -69
  674. package/dist/esm/ion-select_3.entry.js +482 -386
  675. package/dist/esm/ion-spinner.entry.js +28 -36
  676. package/dist/esm/ion-split-pane.entry.js +34 -25
  677. package/dist/esm/ion-tab-bar_2.entry.js +115 -178
  678. package/dist/esm/ion-tab_2.entry.js +54 -29
  679. package/dist/esm/ion-text.entry.js +13 -7
  680. package/dist/esm/ion-textarea.entry.js +274 -269
  681. package/dist/esm/ion-toast.entry.js +243 -148
  682. package/dist/esm/ion-toggle.entry.js +184 -187
  683. package/dist/esm/ionic-global-BVB7BrLT.js +151 -0
  684. package/dist/esm/ionic.js +5 -5
  685. package/dist/esm/{ios.transition-C3r-0w96.js → ios.transition-BdhybwLl.js} +14 -20
  686. package/dist/esm/{item-multiple-inputs-C6onMFOo.js → item-multiple-inputs-rU8VaNNg.js} +1 -1
  687. package/dist/esm/{keyboard-BzbtCDwZ.js → keyboard-Cj8mLJeq.js} +4 -5
  688. package/dist/esm/{keyboard-DYGmALa7.js → keyboard-DAF8GNJ9.js} +3 -3
  689. package/dist/esm/keyboard-controller-DEwoa1ev.js +165 -0
  690. package/dist/esm/loader.js +5 -5
  691. package/dist/esm/{md.transition-CPHOF5T9.js → md.transition-B5lqKGCs.js} +8 -10
  692. package/dist/esm/{notch-controller-CsbpmbOz.js → notch-controller-CrUGyHYz.js} +2 -2
  693. package/dist/esm/{overlay-control-label-CODBQrPj.js → overlay-control-label-BSQPZ79H.js} +11 -13
  694. package/dist/esm/{overlays-C1NQMs9y.js → overlays-CjWwtvf1.js} +57 -333
  695. package/dist/esm/{select-option-render-BlKZ2H83.js → select-option-render-C4m76VGH.js} +3 -4
  696. package/dist/esm/{status-tap-BueE8Coq.js → status-tap-DpLhkDWs.js} +3 -4
  697. package/dist/esm/{swipe-back-qmvTRnSq.js → swipe-back-cz4-lyG3.js} +5 -6
  698. package/dist/esm/theme-byZM6qHV.js +48 -0
  699. package/dist/esm/validity-DJztqcrH.js +17 -0
  700. package/dist/html.html-data.json +146 -2713
  701. package/dist/ionic/index.esm.js +1 -1
  702. package/dist/ionic/ionic.esm.js +1 -1
  703. package/dist/ionic/p-0266b7e1.entry.js +4 -0
  704. package/dist/ionic/p-08443c08.entry.js +4 -0
  705. package/dist/ionic/p-08f1ed1c.entry.js +4 -0
  706. package/dist/ionic/p-09b47b7d.entry.js +4 -0
  707. package/dist/ionic/p-0FNc80PN.js +4 -0
  708. package/dist/ionic/p-12589d59.entry.js +4 -0
  709. package/dist/ionic/p-1d2e53e8.entry.js +4 -0
  710. package/dist/ionic/p-1edf0573.entry.js +4 -0
  711. package/dist/ionic/p-214e000a.entry.js +4 -0
  712. package/dist/ionic/p-21a7fb2a.entry.js +4 -0
  713. package/dist/ionic/p-2ce59395.entry.js +4 -0
  714. package/dist/ionic/p-33829e94.entry.js +4 -0
  715. package/dist/ionic/p-374b10cb.entry.js +4 -0
  716. package/dist/ionic/p-3835a020.entry.js +4 -0
  717. package/dist/ionic/p-3c5fdd27.entry.js +4 -0
  718. package/dist/ionic/p-40424a88.entry.js +4 -0
  719. package/dist/ionic/p-48b6835f.entry.js +4 -0
  720. package/dist/ionic/p-4eOQC00Z.js +4 -0
  721. package/dist/ionic/p-5394e1d4.entry.js +4 -0
  722. package/dist/ionic/p-53bac1c9.entry.js +4 -0
  723. package/dist/ionic/p-5506caeb.entry.js +4 -0
  724. package/dist/ionic/p-5993a77f.entry.js +4 -0
  725. package/dist/ionic/p-6277efba.entry.js +4 -0
  726. package/dist/ionic/p-62e71297.entry.js +4 -0
  727. package/dist/ionic/p-6b286c5c.entry.js +4 -0
  728. package/dist/ionic/p-7116e558.entry.js +4 -0
  729. package/dist/ionic/p-74f30659.entry.js +4 -0
  730. package/dist/ionic/p-7bb3e957.entry.js +4 -0
  731. package/dist/ionic/p-82525fb0.entry.js +4 -0
  732. package/dist/ionic/p-865fa114.entry.js +4 -0
  733. package/dist/ionic/p-8a21bdbd.entry.js +4 -0
  734. package/dist/ionic/p-8e1d9e3a.entry.js +4 -0
  735. package/dist/ionic/p-8f3a1995.entry.js +4 -0
  736. package/dist/ionic/p-91c6faf1.entry.js +4 -0
  737. package/dist/ionic/p-9b865fe6.entry.js +4 -0
  738. package/dist/ionic/p-9nmHvEvw.js +4 -0
  739. package/dist/ionic/p-B-FxiyeI.js +4 -0
  740. package/dist/ionic/p-BB0LlG4y.js +4 -0
  741. package/dist/ionic/p-BMPN55of.js +4 -0
  742. package/dist/ionic/p-BQ8oNV0v.js +4 -0
  743. package/dist/ionic/p-BSQPZ79H.js +4 -0
  744. package/dist/ionic/p-BhamHSw3.js +4 -0
  745. package/dist/ionic/p-BjvtSsVI.js +4 -0
  746. package/dist/ionic/p-BkfAWuv6.js +4 -0
  747. package/dist/ionic/p-BmVRXR1y.js +4 -0
  748. package/dist/ionic/p-BnMQxWON.js +4 -0
  749. package/dist/ionic/p-BvabGprD.js +4 -0
  750. package/{components/p-Va26YR7l.js → dist/ionic/p-BwIp10KV.js} +1 -1
  751. package/dist/ionic/p-C-94tAim.js +4 -0
  752. package/dist/ionic/p-C6eME8Ey.js +4 -0
  753. package/dist/ionic/p-CIGNaXM1.js +4 -0
  754. package/dist/ionic/p-CKUuSnDR.js +4 -0
  755. package/dist/ionic/p-CMRtMbJc.js +4 -0
  756. package/dist/ionic/p-CPcPmkGv.js +4 -0
  757. package/dist/ionic/p-CQ_4TirR.js +4 -0
  758. package/dist/ionic/p-CaRuIadB.js +4 -0
  759. package/dist/ionic/p-Cdjxf_yg.js +4 -0
  760. package/dist/ionic/p-ChhhtsGZ.js +5 -0
  761. package/dist/ionic/p-CmKf4pgI.js +4 -0
  762. package/dist/ionic/p-D5t_-oMk.js +4 -0
  763. package/dist/ionic/p-D94b61er.js +4 -0
  764. package/dist/ionic/p-DCI3rXQo.js +4 -0
  765. package/dist/ionic/p-DDhtUaaA.js +4 -0
  766. package/dist/ionic/p-DJztqcrH.js +4 -0
  767. package/dist/ionic/p-DWCzVL3Y.js +4 -0
  768. package/dist/ionic/p-Dn0mqQ_R.js +4 -0
  769. package/dist/ionic/p-I3In7hMC.js +4 -0
  770. package/dist/ionic/p-T71k3C35.js +4 -0
  771. package/dist/ionic/p-TXPDHL13.js +4 -0
  772. package/dist/ionic/p-ZjP4CjeZ.js +4 -0
  773. package/dist/ionic/p-a641d428.entry.js +4 -0
  774. package/dist/ionic/p-ac6ef997.entry.js +4 -0
  775. package/dist/ionic/p-acf0a6af.entry.js +4 -0
  776. package/dist/ionic/p-ad98e3ff.entry.js +4 -0
  777. package/dist/ionic/p-af5166f5.entry.js +4 -0
  778. package/dist/ionic/p-b24dc0a1.entry.js +4 -0
  779. package/dist/ionic/p-ba8a598f.entry.js +4 -0
  780. package/dist/ionic/p-bf7c1f05.entry.js +4 -0
  781. package/dist/ionic/p-byZM6qHV.js +4 -0
  782. package/dist/ionic/p-c3f65965.entry.js +4 -0
  783. package/dist/ionic/p-c8fbe544.entry.js +4 -0
  784. package/dist/ionic/p-cb12f6c3.entry.js +4 -0
  785. package/dist/ionic/p-cec87704.entry.js +4 -0
  786. package/dist/ionic/p-dbfd2d52.entry.js +4 -0
  787. package/dist/ionic/p-e1e5b507.entry.js +4 -0
  788. package/dist/ionic/p-ede019ef.entry.js +4 -0
  789. package/dist/ionic/p-efef6788.entry.js +4 -0
  790. package/dist/ionic/p-f046aa37.entry.js +4 -0
  791. package/dist/ionic/p-f402f5a4.entry.js +4 -0
  792. package/dist/ionic/p-f622796d.entry.js +4 -0
  793. package/dist/ionic/{p-CnIzWLAn.js → p-kJA95YWg.js} +1 -1
  794. package/dist/types/components/accordion/accordion.d.ts +3 -6
  795. package/dist/types/components/accordion-group/accordion-group.d.ts +1 -12
  796. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
  797. package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
  798. package/dist/types/components/alert/alert-interface.d.ts +7 -3
  799. package/dist/types/components/alert/alert.d.ts +2 -3
  800. package/dist/types/components/app/app.d.ts +5 -4
  801. package/dist/types/components/avatar/avatar.d.ts +0 -32
  802. package/dist/types/components/back-button/back-button.d.ts +1 -2
  803. package/dist/types/components/backdrop/backdrop.d.ts +0 -4
  804. package/dist/types/components/badge/badge.d.ts +1 -34
  805. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -4
  806. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  807. package/dist/types/components/button/button.d.ts +8 -23
  808. package/dist/types/components/buttons/buttons.d.ts +1 -5
  809. package/dist/types/components/card/card.d.ts +1 -8
  810. package/dist/types/components/card-content/card-content.d.ts +1 -2
  811. package/dist/types/components/card-header/card-header.d.ts +2 -3
  812. package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
  813. package/dist/types/components/card-title/card-title.d.ts +1 -2
  814. package/dist/types/components/checkbox/checkbox.d.ts +4 -14
  815. package/dist/types/components/chip/chip.d.ts +1 -26
  816. package/dist/types/components/col/col.d.ts +5 -52
  817. package/dist/types/components/content/content.d.ts +0 -3
  818. package/dist/types/components/datetime/datetime.d.ts +1 -26
  819. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  820. package/dist/types/components/datetime-button/datetime-button.d.ts +1 -2
  821. package/dist/types/components/fab/fab.d.ts +0 -4
  822. package/dist/types/components/fab-button/fab-button.d.ts +3 -5
  823. package/dist/types/components/fab-list/fab-list.d.ts +0 -4
  824. package/dist/types/components/footer/footer.d.ts +3 -20
  825. package/dist/types/components/grid/grid.d.ts +0 -4
  826. package/dist/types/components/header/header.d.ts +3 -26
  827. package/dist/types/components/header/header.utils.d.ts +5 -4
  828. package/dist/types/components/img/img.d.ts +1 -2
  829. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -21
  830. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +0 -4
  831. package/dist/types/components/input/input.d.ts +6 -35
  832. package/dist/types/components/input-otp/input-otp.d.ts +0 -37
  833. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +0 -2
  834. package/dist/types/components/item/item.d.ts +4 -11
  835. package/dist/types/components/item-divider/item-divider.d.ts +1 -2
  836. package/dist/types/components/item-group/item-group.d.ts +0 -4
  837. package/dist/types/components/item-option/item-option.d.ts +1 -18
  838. package/dist/types/components/item-options/item-options.d.ts +0 -4
  839. package/dist/types/components/item-sliding/item-sliding.d.ts +1 -47
  840. package/dist/types/components/item-sliding/test/test.utils.d.ts +0 -13
  841. package/dist/types/components/label/label.d.ts +1 -2
  842. package/dist/types/components/list/list.d.ts +1 -15
  843. package/dist/types/components/list-header/list-header.d.ts +1 -2
  844. package/dist/types/components/loading/loading-interface.d.ts +7 -2
  845. package/dist/types/components/loading/loading.d.ts +2 -3
  846. package/dist/types/components/menu/menu.d.ts +0 -3
  847. package/dist/types/components/menu-button/menu-button.d.ts +1 -3
  848. package/dist/types/components/menu-toggle/menu-toggle.d.ts +0 -3
  849. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  850. package/dist/types/components/modal/modal-interface.d.ts +16 -4
  851. package/dist/types/components/modal/modal.d.ts +12 -15
  852. package/dist/types/components/nav/nav-interface.d.ts +1 -10
  853. package/dist/types/components/nav/nav.d.ts +3 -27
  854. package/dist/types/components/nav-link/nav-link.d.ts +0 -4
  855. package/dist/types/components/note/note.d.ts +1 -2
  856. package/dist/types/components/picker/picker.d.ts +1 -2
  857. package/dist/types/components/picker-column/picker-column.d.ts +1 -2
  858. package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
  859. package/dist/types/components/popover/popover-interface.d.ts +6 -3
  860. package/dist/types/components/popover/popover.d.ts +5 -6
  861. package/dist/types/components/progress-bar/progress-bar.d.ts +1 -10
  862. package/dist/types/components/radio/radio.d.ts +1 -2
  863. package/dist/types/components/radio-group/radio-group.d.ts +0 -12
  864. package/dist/types/components/range/range.d.ts +1 -2
  865. package/dist/types/components/refresher/refresher.d.ts +1 -2
  866. package/dist/types/components/refresher-content/refresher-content.d.ts +0 -4
  867. package/dist/types/components/reorder/reorder.d.ts +0 -9
  868. package/dist/types/components/reorder-group/reorder-group.d.ts +0 -4
  869. package/dist/types/components/ripple-effect/ripple-effect.d.ts +0 -4
  870. package/dist/types/components/route/route.d.ts +1 -5
  871. package/dist/types/components/router/router.d.ts +0 -4
  872. package/dist/types/components/router-link/router-link.d.ts +0 -4
  873. package/dist/types/components/router-outlet/router-outlet.d.ts +8 -4
  874. package/dist/types/components/row/row.d.ts +0 -4
  875. package/dist/types/components/searchbar/searchbar.d.ts +11 -57
  876. package/dist/types/components/segment/segment.d.ts +1 -2
  877. package/dist/types/components/segment-button/segment-button.d.ts +1 -2
  878. package/dist/types/components/select/select.d.ts +14 -49
  879. package/dist/types/components/select-modal/select-modal.d.ts +0 -8
  880. package/dist/types/components/select-option/select-option.d.ts +4 -7
  881. package/dist/types/components/select-popover/select-popover.d.ts +0 -3
  882. package/dist/types/components/skeleton-text/skeleton-text.d.ts +0 -4
  883. package/dist/types/components/spinner/spinner.d.ts +0 -15
  884. package/dist/types/components/split-pane/split-pane.d.ts +0 -4
  885. package/dist/types/components/tab/tab.d.ts +0 -4
  886. package/dist/types/components/tab-bar/tab-bar-interface.d.ts +0 -1
  887. package/dist/types/components/tab-bar/tab-bar.d.ts +3 -41
  888. package/dist/types/components/tab-button/tab-button.d.ts +1 -12
  889. package/dist/types/components/tabs/tabs.d.ts +0 -3
  890. package/dist/types/components/text/text.d.ts +1 -2
  891. package/dist/types/components/textarea/textarea.d.ts +4 -53
  892. package/dist/types/components/thumbnail/thumbnail.d.ts +0 -4
  893. package/dist/types/components/title/title.d.ts +0 -4
  894. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  895. package/dist/types/components/toast/toast-interface.d.ts +7 -3
  896. package/dist/types/components/toast/toast.d.ts +2 -19
  897. package/dist/types/components/toggle/toggle.d.ts +1 -15
  898. package/dist/types/components/toolbar/toolbar.d.ts +3 -43
  899. package/dist/types/components.d.ts +263 -2171
  900. package/dist/types/global/ionic-global.d.ts +2 -28
  901. package/dist/types/index.d.ts +1 -1
  902. package/dist/types/interface.d.ts +0 -4
  903. package/dist/types/utils/config.d.ts +3 -114
  904. package/dist/types/utils/focus-trap.d.ts +1 -1
  905. package/dist/types/utils/focus-visible.d.ts +0 -13
  906. package/dist/types/utils/forms/index.d.ts +0 -1
  907. package/dist/types/utils/forms/validity.d.ts +0 -7
  908. package/dist/types/utils/helpers.d.ts +0 -22
  909. package/dist/types/utils/logging/index.d.ts +2 -1
  910. package/dist/types/utils/overlay-control-label.d.ts +9 -11
  911. package/dist/types/utils/overlays-interface.d.ts +1 -31
  912. package/dist/types/utils/overlays.d.ts +12 -10
  913. package/dist/types/utils/test/playwright/drag-element.d.ts +3 -16
  914. package/dist/types/utils/test/playwright/generator.d.ts +2 -31
  915. package/dist/types/utils/test/playwright/playwright-page.d.ts +1 -1
  916. package/dist/types/utils/test/playwright/testExpect.d.ts +1 -1
  917. package/dist/types/utils/theme.d.ts +0 -9
  918. package/hydrate/index.js +10310 -12033
  919. package/hydrate/index.mjs +10310 -12033
  920. package/package.json +56 -17
  921. package/components/ion-divider.d.ts +0 -11
  922. package/components/ion-divider.js +0 -4
  923. package/components/ion-gallery-item.d.ts +0 -11
  924. package/components/ion-gallery-item.js +0 -4
  925. package/components/ion-gallery.d.ts +0 -11
  926. package/components/ion-gallery.js +0 -4
  927. package/components/ion-picker-legacy-column.d.ts +0 -11
  928. package/components/ion-picker-legacy-column.js +0 -4
  929. package/components/ion-picker-legacy.d.ts +0 -11
  930. package/components/ion-picker-legacy.js +0 -4
  931. package/components/p-6hUZIMBp.js +0 -4
  932. package/components/p-9mfpAwJh.js +0 -4
  933. package/components/p-B2aAAEfp.js +0 -4
  934. package/components/p-B2lpqDWK.js +0 -4
  935. package/components/p-BDoEcs72.js +0 -4
  936. package/components/p-BDqjX7Z_.js +0 -4
  937. package/components/p-BE21dB_a.js +0 -4
  938. package/components/p-BFpXpzD-.js +0 -4
  939. package/components/p-BTEOs1at.js +0 -4
  940. package/components/p-BUNIyvqe.js +0 -4
  941. package/components/p-BYSs-jZz.js +0 -4
  942. package/components/p-BYoGvMgh.js +0 -4
  943. package/components/p-BYrCPOBM.js +0 -4
  944. package/components/p-BbVhJs-a.js +0 -4
  945. package/components/p-BhRXIcSN.js +0 -4
  946. package/components/p-BjW8SOqw.js +0 -4
  947. package/components/p-BsiHrVPa.js +0 -4
  948. package/components/p-BwKpO3Is.js +0 -4
  949. package/components/p-Bz8jnuiy.js +0 -4
  950. package/components/p-C-Ea1l5K.js +0 -4
  951. package/components/p-C3X10Pc6.js +0 -4
  952. package/components/p-C53feagD.js +0 -4
  953. package/components/p-CH6jbAEI.js +0 -4
  954. package/components/p-CJE5t2qs.js +0 -4
  955. package/components/p-CODBQrPj.js +0 -4
  956. package/components/p-CUbb1HkU.js +0 -4
  957. package/components/p-CVYFPBs-.js +0 -4
  958. package/components/p-CVoLDZ7z.js +0 -4
  959. package/components/p-CZrORZXS.js +0 -4
  960. package/components/p-Cc3oC60a.js +0 -4
  961. package/components/p-Cl0B-RWe.js +0 -4
  962. package/components/p-CmoUesXp.js +0 -4
  963. package/components/p-CyNW8ypn.js +0 -4
  964. package/components/p-CzxyxYID.js +0 -4
  965. package/components/p-D0Iqw6OZ.js +0 -4
  966. package/components/p-D0LT3Z3i.js +0 -4
  967. package/components/p-D1t981Ih.js +0 -4
  968. package/components/p-D6tqrIYY.js +0 -4
  969. package/components/p-D9C5yWpF.js +0 -4
  970. package/components/p-DCRXgAoM.js +0 -4
  971. package/components/p-DL5wyRub.js +0 -4
  972. package/components/p-DQlXUUDh.js +0 -4
  973. package/components/p-DRWN7QM2.js +0 -4
  974. package/components/p-DaJxRxSQ.js +0 -4
  975. package/components/p-DbmfFkd1.js +0 -4
  976. package/components/p-Dhi5xtNS.js +0 -4
  977. package/components/p-DnwLgh9U.js +0 -4
  978. package/components/p-DoZB3DcY.js +0 -4
  979. package/components/p-DrrpZB81.js +0 -4
  980. package/components/p-DrzWRqnG.js +0 -4
  981. package/components/p-DylrHLJF.js +0 -4
  982. package/components/p-Dypq4kXE.js +0 -4
  983. package/components/p-DzeMJvWL.js +0 -4
  984. package/components/p-Dzk4Tr0X.js +0 -4
  985. package/components/p-Rkm2AOZ2.js +0 -4
  986. package/components/p-UYngqo1f.js +0 -4
  987. package/components/p-asUhrzOB.js +0 -4
  988. package/components/p-fIOYmaqA.js +0 -4
  989. package/components/p-jlwpz7Ms.js +0 -4
  990. package/components/p-kInyVu79.js +0 -4
  991. package/components/p-miSYSxcc.js +0 -4
  992. package/components/p-paDbTUL9.js +0 -4
  993. package/components/p-vXpMhGrs.js +0 -4
  994. package/components/p-znZTPd7u.js +0 -4
  995. package/css/ionic/bundle.ionic.css +0 -1
  996. package/css/ionic/bundle.ionic.css.map +0 -1
  997. package/css/ionic/core.ionic.css +0 -1
  998. package/css/ionic/core.ionic.css.map +0 -1
  999. package/css/ionic/global.bundle.ionic.css +0 -1
  1000. package/css/ionic/global.bundle.ionic.css.map +0 -1
  1001. package/css/ionic/ionic-swiper.ionic.css +0 -1
  1002. package/css/ionic/ionic-swiper.ionic.css.map +0 -1
  1003. package/css/ionic/link.ionic.css +0 -1
  1004. package/css/ionic/link.ionic.css.map +0 -1
  1005. package/css/ionic/structure.ionic.css +0 -1
  1006. package/css/ionic/structure.ionic.css.map +0 -1
  1007. package/css/ionic/typography.ionic.css +0 -1
  1008. package/css/ionic/typography.ionic.css.map +0 -1
  1009. package/css/ionic/utils.bundle.ionic.css +0 -1
  1010. package/css/ionic/utils.bundle.ionic.css.map +0 -1
  1011. package/dist/cjs/caret-down-vtVgfXIs.js +0 -8
  1012. package/dist/cjs/caret-left-CxZXLRv5.js +0 -8
  1013. package/dist/cjs/caret-right-CRCgv98E.js +0 -8
  1014. package/dist/cjs/clear-button-press-controller-2hAy_qdm.js +0 -45
  1015. package/dist/cjs/ion-datetime_3.cjs.entry.js +0 -3242
  1016. package/dist/cjs/ion-divider.cjs.entry.js +0 -51
  1017. package/dist/cjs/ion-gallery-item.cjs.entry.js +0 -59
  1018. package/dist/cjs/ion-gallery.cjs.entry.js +0 -607
  1019. package/dist/cjs/ionic-global-DvEcO0tQ.js +0 -519
  1020. package/dist/cjs/list-a-7GSA6K.js +0 -8
  1021. package/dist/cjs/scroll-hide-controller-DAf_DwKc.js +0 -345
  1022. package/dist/cjs/validity-QmuwEptc.js +0 -51
  1023. package/dist/cjs/x-BTF99yFH.js +0 -8
  1024. package/dist/collection/components/accordion/accordion.ionic.css +0 -201
  1025. package/dist/collection/components/accordion-group/accordion-group.ionic.css +0 -93
  1026. package/dist/collection/components/action-sheet/action-sheet.ionic.css +0 -494
  1027. package/dist/collection/components/alert/alert.ionic.css +0 -787
  1028. package/dist/collection/components/avatar/avatar.ionic.css +0 -385
  1029. package/dist/collection/components/backdrop/backdrop.ionic.css +0 -109
  1030. package/dist/collection/components/badge/badge.ionic.css +0 -272
  1031. package/dist/collection/components/button/button.ionic.css +0 -644
  1032. package/dist/collection/components/buttons/buttons.ionic.css +0 -97
  1033. package/dist/collection/components/card/card.ionic.css +0 -144
  1034. package/dist/collection/components/card-content/card-content.ionic.css +0 -89
  1035. package/dist/collection/components/card-header/card-header.ionic.css +0 -85
  1036. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +0 -144
  1037. package/dist/collection/components/checkbox/checkbox.ionic.css +0 -543
  1038. package/dist/collection/components/chip/chip.ionic.css +0 -217
  1039. package/dist/collection/components/datetime/datetime.ionic.css +0 -703
  1040. package/dist/collection/components/divider/divider.ionic.css +0 -148
  1041. package/dist/collection/components/divider/divider.ios.css +0 -87
  1042. package/dist/collection/components/divider/divider.js +0 -94
  1043. package/dist/collection/components/divider/divider.md.css +0 -87
  1044. package/dist/collection/components/footer/footer-interface.js +0 -1
  1045. package/dist/collection/components/gallery/gallery-constants.js +0 -12
  1046. package/dist/collection/components/gallery/gallery-interface.js +0 -1
  1047. package/dist/collection/components/gallery/gallery.css +0 -15
  1048. package/dist/collection/components/gallery/gallery.js +0 -679
  1049. package/dist/collection/components/gallery/test/utils.js +0 -100
  1050. package/dist/collection/components/gallery-item/gallery-item.css +0 -49
  1051. package/dist/collection/components/gallery-item/gallery-item.js +0 -99
  1052. package/dist/collection/components/header/header-interface.js +0 -1
  1053. package/dist/collection/components/header/header.ionic.css +0 -250
  1054. package/dist/collection/components/input/input.ionic.css +0 -891
  1055. package/dist/collection/components/input-otp/input-otp.ionic.css +0 -371
  1056. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +0 -78
  1057. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +0 -61
  1058. package/dist/collection/components/item/item.ionic.css +0 -496
  1059. package/dist/collection/components/item-option/item-option.ionic.css +0 -277
  1060. package/dist/collection/components/item-options/item-options.ionic.css +0 -221
  1061. package/dist/collection/components/item-sliding/item-sliding.ionic.css +0 -211
  1062. package/dist/collection/components/list/list.ionic.css +0 -212
  1063. package/dist/collection/components/list-header/list-header.ionic.css +0 -190
  1064. package/dist/collection/components/menu-button/menu-button.ionic.css +0 -236
  1065. package/dist/collection/components/modal/animations/ionic.enter.js +0 -40
  1066. package/dist/collection/components/modal/animations/ionic.leave.js +0 -28
  1067. package/dist/collection/components/modal/modal.ionic.css +0 -255
  1068. package/dist/collection/components/picker-legacy/animations/ios.enter.js +0 -27
  1069. package/dist/collection/components/picker-legacy/animations/ios.leave.js +0 -23
  1070. package/dist/collection/components/picker-legacy/picker-interface.js +0 -1
  1071. package/dist/collection/components/picker-legacy/picker.ios.css +0 -312
  1072. package/dist/collection/components/picker-legacy/picker.js +0 -891
  1073. package/dist/collection/components/picker-legacy/picker.md.css +0 -299
  1074. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -243
  1075. package/dist/collection/components/picker-legacy-column/picker-column.js +0 -422
  1076. package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -234
  1077. package/dist/collection/components/picker-legacy-column/test/test.utils.js +0 -43
  1078. package/dist/collection/components/popover/popover.ionic.css +0 -290
  1079. package/dist/collection/components/progress-bar/progress-bar.ionic.css +0 -287
  1080. package/dist/collection/components/radio/radio.ionic.css +0 -422
  1081. package/dist/collection/components/radio-group/radio-group.ionic.css +0 -119
  1082. package/dist/collection/components/range/range.ionic.css +0 -567
  1083. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +0 -215
  1084. package/dist/collection/components/searchbar/searchbar.ionic.css +0 -622
  1085. package/dist/collection/components/segment/segment.ionic.css +0 -115
  1086. package/dist/collection/components/segment-button/segment-button.ionic.css +0 -352
  1087. package/dist/collection/components/select/select.ionic.css +0 -809
  1088. package/dist/collection/components/select-modal/select-modal.ionic.css +0 -257
  1089. package/dist/collection/components/select-popover/select-popover.ionic.css +0 -255
  1090. package/dist/collection/components/spinner/spinner.native.css +0 -199
  1091. package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -249
  1092. package/dist/collection/components/tab-button/tab-button.ionic.css +0 -373
  1093. package/dist/collection/components/textarea/textarea.ionic.css +0 -898
  1094. package/dist/collection/components/title/title.ionic.css +0 -127
  1095. package/dist/collection/components/toast/toast.ionic.css +0 -394
  1096. package/dist/collection/components/toggle/toggle.ionic.css +0 -512
  1097. package/dist/collection/components/toolbar/test/image.svg +0 -1
  1098. package/dist/collection/components/toolbar/toolbar.ionic.css +0 -249
  1099. package/dist/collection/utils/css-value-validation.js +0 -39
  1100. package/dist/collection/utils/forms/clear-button-press-controller.js +0 -40
  1101. package/dist/collection/utils/scroll-hide-controller.js +0 -178
  1102. package/dist/esm/caret-down-D1t981Ih.js +0 -6
  1103. package/dist/esm/caret-left-fIOYmaqA.js +0 -6
  1104. package/dist/esm/caret-right-BYSs-jZz.js +0 -6
  1105. package/dist/esm/clear-button-press-controller-C79TPm5p.js +0 -43
  1106. package/dist/esm/ion-datetime_3.entry.js +0 -3238
  1107. package/dist/esm/ion-divider.entry.js +0 -49
  1108. package/dist/esm/ion-gallery-item.entry.js +0 -57
  1109. package/dist/esm/ion-gallery.entry.js +0 -605
  1110. package/dist/esm/ionic-global-CEwbmRLz.js +0 -508
  1111. package/dist/esm/list-Dhi5xtNS.js +0 -6
  1112. package/dist/esm/scroll-hide-controller-CfbtPBWv.js +0 -342
  1113. package/dist/esm/theme-DaJxRxSQ.js +0 -67
  1114. package/dist/esm/validity-BjW8SOqw.js +0 -48
  1115. package/dist/esm/x-BDqjX7Z_.js +0 -6
  1116. package/dist/ionic/p--sroV-k-.js +0 -4
  1117. package/dist/ionic/p-00731d20.entry.js +0 -4
  1118. package/dist/ionic/p-03c20a50.entry.js +0 -4
  1119. package/dist/ionic/p-03ec6673.entry.js +0 -4
  1120. package/dist/ionic/p-0405ec57.entry.js +0 -4
  1121. package/dist/ionic/p-04f16322.entry.js +0 -4
  1122. package/dist/ionic/p-09123f89.entry.js +0 -4
  1123. package/dist/ionic/p-15028853.entry.js +0 -4
  1124. package/dist/ionic/p-16c5db90.entry.js +0 -4
  1125. package/dist/ionic/p-1d1dfb68.entry.js +0 -4
  1126. package/dist/ionic/p-231572a0.entry.js +0 -4
  1127. package/dist/ionic/p-2740db6e.entry.js +0 -4
  1128. package/dist/ionic/p-2a6d4601.entry.js +0 -4
  1129. package/dist/ionic/p-2d8fe33c.entry.js +0 -4
  1130. package/dist/ionic/p-2dbc50d9.entry.js +0 -4
  1131. package/dist/ionic/p-32d3095c.entry.js +0 -4
  1132. package/dist/ionic/p-356cd619.entry.js +0 -4
  1133. package/dist/ionic/p-391bdb60.entry.js +0 -4
  1134. package/dist/ionic/p-3b2ab5b4.entry.js +0 -4
  1135. package/dist/ionic/p-4e3e750a.entry.js +0 -4
  1136. package/dist/ionic/p-4fee0df6.entry.js +0 -4
  1137. package/dist/ionic/p-547d010c.entry.js +0 -4
  1138. package/dist/ionic/p-54895118.entry.js +0 -4
  1139. package/dist/ionic/p-6163d04d.entry.js +0 -4
  1140. package/dist/ionic/p-679c1448.entry.js +0 -4
  1141. package/dist/ionic/p-6de524e5.entry.js +0 -4
  1142. package/dist/ionic/p-764d7ea2.entry.js +0 -4
  1143. package/dist/ionic/p-7k7Q1A38.js +0 -4
  1144. package/dist/ionic/p-81BMEE8Q.js +0 -4
  1145. package/dist/ionic/p-8d6d7acb.entry.js +0 -4
  1146. package/dist/ionic/p-96732fe2.entry.js +0 -4
  1147. package/dist/ionic/p-96c4c1b9.entry.js +0 -4
  1148. package/dist/ionic/p-9745f518.entry.js +0 -4
  1149. package/dist/ionic/p-9a40af3c.entry.js +0 -4
  1150. package/dist/ionic/p-9e725104.entry.js +0 -4
  1151. package/dist/ionic/p-B4Kq2YNk.js +0 -4
  1152. package/dist/ionic/p-BDqjX7Z_.js +0 -4
  1153. package/dist/ionic/p-BTEOs1at.js +0 -4
  1154. package/dist/ionic/p-BYSs-jZz.js +0 -4
  1155. package/dist/ionic/p-BbWo-T8F.js +0 -4
  1156. package/dist/ionic/p-BjW8SOqw.js +0 -4
  1157. package/dist/ionic/p-Bvz8PHo5.js +0 -4
  1158. package/dist/ionic/p-BwKpO3Is.js +0 -4
  1159. package/dist/ionic/p-C0EQceqV.js +0 -5
  1160. package/dist/ionic/p-C1_a9uRb.js +0 -4
  1161. package/dist/ionic/p-C53feagD.js +0 -4
  1162. package/dist/ionic/p-C6WD6qSF.js +0 -4
  1163. package/dist/ionic/p-C7urd_wE.js +0 -4
  1164. package/dist/ionic/p-CCgRIJJv.js +0 -4
  1165. package/dist/ionic/p-CEkwLb3L.js +0 -4
  1166. package/dist/ionic/p-CGFf6My7.js +0 -4
  1167. package/dist/ionic/p-CLUwRxij.js +0 -4
  1168. package/dist/ionic/p-CODBQrPj.js +0 -4
  1169. package/dist/ionic/p-CP_sVwEm.js +0 -4
  1170. package/dist/ionic/p-CSMWpRc0.js +0 -4
  1171. package/dist/ionic/p-CYYo93al.js +0 -4
  1172. package/dist/ionic/p-Cipl19Qe.js +0 -4
  1173. package/dist/ionic/p-Cl0B-RWe.js +0 -4
  1174. package/dist/ionic/p-Cvvva6Z7.js +0 -4
  1175. package/dist/ionic/p-D1t981Ih.js +0 -4
  1176. package/dist/ionic/p-DINFwXlp.js +0 -4
  1177. package/dist/ionic/p-DIvCXVmD.js +0 -4
  1178. package/dist/ionic/p-DTsDGZPd.js +0 -4
  1179. package/dist/ionic/p-DaJxRxSQ.js +0 -4
  1180. package/dist/ionic/p-Dhi5xtNS.js +0 -4
  1181. package/dist/ionic/p-DtQgCTtW.js +0 -4
  1182. package/dist/ionic/p-DuRx6DeQ.js +0 -4
  1183. package/dist/ionic/p-YGLqXqFd.js +0 -4
  1184. package/dist/ionic/p-YIsE5bNG.js +0 -4
  1185. package/dist/ionic/p-a61c2ace.entry.js +0 -4
  1186. package/dist/ionic/p-abb516e3.entry.js +0 -4
  1187. package/dist/ionic/p-b54edee6.entry.js +0 -4
  1188. package/dist/ionic/p-c076ac5c.entry.js +0 -4
  1189. package/dist/ionic/p-c4ff25cb.entry.js +0 -4
  1190. package/dist/ionic/p-c7279756.entry.js +0 -4
  1191. package/dist/ionic/p-c7ebed50.entry.js +0 -4
  1192. package/dist/ionic/p-cd0037e4.entry.js +0 -4
  1193. package/dist/ionic/p-d261938d.entry.js +0 -4
  1194. package/dist/ionic/p-d33dfc12.entry.js +0 -4
  1195. package/dist/ionic/p-d7764330.entry.js +0 -4
  1196. package/dist/ionic/p-defb23a2.entry.js +0 -4
  1197. package/dist/ionic/p-df642ef5.entry.js +0 -4
  1198. package/dist/ionic/p-e2a35249.entry.js +0 -4
  1199. package/dist/ionic/p-e2b952ef.entry.js +0 -4
  1200. package/dist/ionic/p-e77cfd1e.entry.js +0 -4
  1201. package/dist/ionic/p-ecb9d3d3.entry.js +0 -4
  1202. package/dist/ionic/p-efd13adf.entry.js +0 -4
  1203. package/dist/ionic/p-f0904c1d.entry.js +0 -4
  1204. package/dist/ionic/p-f33689f7.entry.js +0 -4
  1205. package/dist/ionic/p-f693efe9.entry.js +0 -4
  1206. package/dist/ionic/p-f788396b.entry.js +0 -4
  1207. package/dist/ionic/p-fIOYmaqA.js +0 -4
  1208. package/dist/ionic/p-fa16fad8.entry.js +0 -4
  1209. package/dist/ionic/p-lMb_45ax.js +0 -4
  1210. package/dist/ionic/p-oadJNPuo.js +0 -4
  1211. package/dist/ionic/p-vXpMhGrs.js +0 -4
  1212. package/dist/ionic/p-wNjWCZVO.js +0 -4
  1213. package/dist/types/components/divider/divider.d.ts +0 -20
  1214. package/dist/types/components/footer/footer-interface.d.ts +0 -1
  1215. package/dist/types/components/gallery/gallery-constants.d.ts +0 -9
  1216. package/dist/types/components/gallery/gallery-interface.d.ts +0 -10
  1217. package/dist/types/components/gallery/gallery.d.ts +0 -218
  1218. package/dist/types/components/gallery/test/utils.d.ts +0 -3
  1219. package/dist/types/components/gallery-item/gallery-item.d.ts +0 -33
  1220. package/dist/types/components/header/header-interface.d.ts +0 -1
  1221. package/dist/types/components/modal/animations/ionic.enter.d.ts +0 -6
  1222. package/dist/types/components/modal/animations/ionic.leave.d.ts +0 -6
  1223. package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +0 -5
  1224. package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +0 -5
  1225. package/dist/types/components/picker-legacy/picker-interface.d.ts +0 -52
  1226. package/dist/types/components/picker-legacy/picker.d.ts +0 -159
  1227. package/dist/types/components/picker-legacy-column/picker-column.d.ts +0 -46
  1228. package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +0 -9
  1229. package/dist/types/utils/css-value-validation.d.ts +0 -21
  1230. package/dist/types/utils/forms/clear-button-press-controller.d.ts +0 -20
  1231. package/dist/types/utils/scroll-hide-controller.d.ts +0 -56
  1232. /package/dist/collection/components/{refresher-content/refresher-content.css → input-password-toggle/input-password-toggle.css} +0 -0
@@ -1,201 +1,33 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import arrowLeftRegular from "@phosphor-icons/core/assets/regular/arrow-left.svg";
5
- import magnifyingGlassRegular from "@phosphor-icons/core/assets/regular/magnifying-glass.svg";
6
- import xRegular from "@phosphor-icons/core/assets/regular/x.svg";
7
4
  import { Host, forceUpdate, h } from "@stencil/core";
8
- import { createClearButtonPressController } from "../../utils/forms/index";
9
5
  import { debounceEvent, raf, componentOnReady, inheritAttributes } from "../../utils/helpers";
10
6
  import { isRTL } from "../../utils/rtl/index";
11
- import { createColorClasses, hostContext } from "../../utils/theme";
7
+ import { createColorClasses } from "../../utils/theme";
12
8
  import { arrowBackSharp, closeCircle, closeSharp, searchOutline, searchSharp } from "ionicons/icons";
13
9
  import { config } from "../../global/config";
14
- import { getIonTheme } from "../../global/ionic-global";
10
+ import { getIonMode } from "../../global/ionic-global";
15
11
  /**
16
- * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
17
- * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
12
+ * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
18
13
  */
19
14
  export class Searchbar {
20
- constructor() {
21
- this.isCancelVisible = false;
22
- this.shouldAlignLeft = true;
23
- this.inputId = `ion-searchbar-${searchbarIds++}`;
24
- this.inheritedAttributes = {};
25
- this.focused = false;
26
- this.noAnimate = true;
27
- /** Keeps the clear button mounted for the duration of a press. */
28
- this.isClearButtonPressed = false;
29
- this.clearButtonPressController = createClearButtonPressController((isPressed) => (this.isClearButtonPressed = isPressed));
30
- /**
31
- * If `true`, enable searchbar animation.
32
- */
33
- this.animated = false;
34
- /**
35
- * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user.
36
- * Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
37
- */
38
- this.autocapitalize = 'off';
39
- /**
40
- * Set the input's autocomplete property.
41
- */
42
- this.autocomplete = 'off';
43
- /**
44
- * Set the input's autocorrect property.
45
- */
46
- this.autocorrect = 'off';
47
- /**
48
- * Set the cancel button text. Only available when the theme is `"ios"`.
49
- */
50
- this.cancelButtonText = 'Cancel';
51
- /**
52
- * If `true`, the user cannot interact with the input.
53
- */
54
- this.disabled = false;
55
- /**
56
- * If used in a form, set the name of the control, which is submitted with the form data.
57
- */
58
- this.name = this.inputId;
59
- /**
60
- * Set the input's placeholder.
61
- * `placeholder` can accept either plaintext or HTML as a string.
62
- * To display characters normally reserved for HTML, they
63
- * must be escaped. For example `<Ionic>` would become
64
- * `&lt;Ionic&gt;`
65
- *
66
- * For more information: [Security Documentation](https://ionicframework.com/docs/faq/security)
67
- */
68
- this.placeholder = 'Search';
69
- /**
70
- * Sets the behavior for the cancel button. Defaults to `"never"`.
71
- * Setting to `"focus"` shows the cancel button on focus.
72
- * Setting to `"never"` hides the cancel button.
73
- * Setting to `"always"` shows the cancel button regardless
74
- * of focus state.
75
- */
76
- this.showCancelButton = 'never';
77
- /**
78
- * Sets the behavior for the clear button. Defaults to `"focus"`.
79
- * Setting to `"focus"` shows the clear button on focus if the
80
- * input is not empty.
81
- * Setting to `"never"` hides the clear button.
82
- * Setting to `"always"` shows the clear button regardless
83
- * of focus state, but only if the input is not empty.
84
- */
85
- this.showClearButton = 'always';
86
- /**
87
- * If `true`, enable spellcheck on the input.
88
- */
89
- this.spellcheck = false;
90
- /**
91
- * Set the type of the input.
92
- */
93
- this.type = 'search';
94
- /**
95
- * the value of the searchbar.
96
- */
97
- this.value = '';
98
- /**
99
- * Clears the input field and triggers the control change.
100
- */
101
- this.onClearInput = async (shouldFocus) => {
102
- this.clearButtonPressController.release();
103
- if (this.clearTimeout) {
104
- clearTimeout(this.clearTimeout);
105
- }
106
- this.ionClear.emit();
107
- return new Promise((resolve) => {
108
- // setTimeout() fixes https://github.com/ionic-team/ionic-framework/issues/7527
109
- // wait for 4 frames
110
- this.clearTimeout = setTimeout(() => {
111
- const value = this.getValue();
112
- if (value !== '') {
113
- this.value = '';
114
- this.emitInputChange();
115
- /**
116
- * When tapping clear button
117
- * ensure input is focused after
118
- * clearing input so users
119
- * can quickly start typing.
120
- */
121
- if (shouldFocus && !this.focused) {
122
- this.setFocus();
123
- /**
124
- * The setFocus call above will clear focusedValue,
125
- * but ionChange will never have gotten a chance to
126
- * fire. Manually revert focusedValue so onBlur can
127
- * compare against what was in the box before the clear.
128
- */
129
- this.focusedValue = value;
130
- }
131
- }
132
- resolve();
133
- }, 16 * 4);
134
- });
135
- };
136
- /**
137
- * Clears the input field and tells the input to blur since
138
- * the clearInput function doesn't want the input to blur
139
- * then calls the custom cancel function if the user passed one in.
140
- */
141
- this.onCancelSearchbar = async (ev) => {
142
- if (ev) {
143
- ev.preventDefault();
144
- ev.stopPropagation();
145
- }
146
- this.ionCancel.emit();
147
- // get cached values before clearing the input
148
- const value = this.getValue();
149
- const focused = this.focused;
150
- await this.onClearInput();
151
- /**
152
- * If there used to be something in the box, and we weren't focused
153
- * beforehand (meaning no blur fired that would already handle this),
154
- * manually fire ionChange.
155
- */
156
- if (value && !focused) {
157
- this.emitValueChange(ev);
158
- }
159
- if (this.nativeInput) {
160
- this.nativeInput.blur();
161
- }
162
- };
163
- /**
164
- * Update the Searchbar input value when the input changes
165
- */
166
- this.onInput = (ev) => {
167
- const input = ev.target;
168
- if (input) {
169
- this.value = input.value;
170
- }
171
- this.emitInputChange(ev);
172
- };
173
- this.onChange = (ev) => {
174
- this.emitValueChange(ev);
175
- };
176
- /**
177
- * Sets the Searchbar to not focused and checks if it should align left
178
- * based on whether there is a value in the searchbar or not.
179
- */
180
- this.onBlur = (ev) => {
181
- this.focused = false;
182
- this.ionBlur.emit();
183
- this.positionElements();
184
- if (this.focusedValue !== this.value) {
185
- this.emitValueChange(ev);
186
- }
187
- this.focusedValue = undefined;
188
- };
189
- /**
190
- * Sets the Searchbar to focused and active on input focus.
191
- */
192
- this.onFocus = () => {
193
- this.focused = true;
194
- this.focusedValue = this.value;
195
- this.ionFocus.emit();
196
- this.positionElements();
197
- };
198
- }
15
+ nativeInput;
16
+ isCancelVisible = false;
17
+ shouldAlignLeft = true;
18
+ originalIonInput;
19
+ inputId = `ion-searchbar-${searchbarIds++}`;
20
+ inheritedAttributes = {};
21
+ loadTimeout;
22
+ clearTimeout;
23
+ searchIconResizeObserver;
24
+ /**
25
+ * The value of the input when the textarea is focused.
26
+ */
27
+ focusedValue;
28
+ el;
29
+ focused = false;
30
+ noAnimate = true;
199
31
  /**
200
32
  * lang and dir are globally enumerated attributes.
201
33
  * As a result, creating these as properties
@@ -204,21 +36,177 @@ export class Searchbar {
204
36
  * to the inner `<input>` element.
205
37
  */
206
38
  onLangChanged(newValue) {
207
- this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { lang: newValue });
39
+ this.inheritedAttributes = {
40
+ ...this.inheritedAttributes,
41
+ lang: newValue,
42
+ };
208
43
  forceUpdate(this);
209
44
  }
210
45
  onDirChanged(newValue) {
211
- this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { dir: newValue });
46
+ this.inheritedAttributes = {
47
+ ...this.inheritedAttributes,
48
+ dir: newValue,
49
+ };
212
50
  forceUpdate(this);
213
51
  }
52
+ /**
53
+ * The color to use from your application's color palette.
54
+ * Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
55
+ * For more information on colors, see [theming](/docs/theming/basics).
56
+ */
57
+ color;
58
+ /**
59
+ * If `true`, enable searchbar animation.
60
+ */
61
+ animated = false;
62
+ /**
63
+ * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user.
64
+ * Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
65
+ */
66
+ autocapitalize = 'off';
67
+ /**
68
+ * Set the input's autocomplete property.
69
+ */
70
+ autocomplete = 'off';
71
+ /**
72
+ * Set the input's autocorrect property.
73
+ */
74
+ autocorrect = false;
75
+ /**
76
+ * Set the cancel button icon. Only applies to `md` mode.
77
+ * Defaults to `arrow-back-sharp`.
78
+ */
79
+ cancelButtonIcon = config.get('backButtonIcon', arrowBackSharp);
80
+ /**
81
+ * Set the cancel button text. Only applies to `ios` mode.
82
+ */
83
+ cancelButtonText = 'Cancel';
84
+ /**
85
+ * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
86
+ */
87
+ clearIcon;
88
+ /**
89
+ * Set the amount of time, in milliseconds, to wait to trigger the `ionInput` event after each keystroke.
90
+ */
91
+ debounce;
214
92
  debounceChanged() {
215
93
  const { ionInput, debounce, originalIonInput } = this;
216
94
  /**
217
95
  * If debounce is undefined, we have to manually revert the ionInput emitter in case
218
96
  * debounce used to be set to a number. Otherwise, the event would stay debounced.
219
97
  */
220
- this.ionInput = debounce === undefined ? originalIonInput !== null && originalIonInput !== void 0 ? originalIonInput : ionInput : debounceEvent(ionInput, debounce);
98
+ this.ionInput = debounce === undefined ? originalIonInput ?? ionInput : debounceEvent(ionInput, debounce);
221
99
  }
100
+ /**
101
+ * If `true`, the user cannot interact with the input.
102
+ */
103
+ disabled = false;
104
+ /**
105
+ * A hint to the browser for which keyboard to display.
106
+ * Possible values: `"none"`, `"text"`, `"tel"`, `"url"`,
107
+ * `"email"`, `"numeric"`, `"decimal"`, and `"search"`.
108
+ */
109
+ inputmode;
110
+ /**
111
+ * A hint to the browser for which enter key to display.
112
+ * Possible values: `"enter"`, `"done"`, `"go"`, `"next"`,
113
+ * `"previous"`, `"search"`, and `"send"`.
114
+ */
115
+ enterkeyhint;
116
+ /**
117
+ * This attribute specifies the maximum number of characters that the user can enter.
118
+ */
119
+ maxlength;
120
+ /**
121
+ * This attribute specifies the minimum number of characters that the user can enter.
122
+ */
123
+ minlength;
124
+ /**
125
+ * If used in a form, set the name of the control, which is submitted with the form data.
126
+ */
127
+ name = this.inputId;
128
+ /**
129
+ * Set the input's placeholder.
130
+ * `placeholder` can accept either plaintext or HTML as a string.
131
+ * To display characters normally reserved for HTML, they
132
+ * must be escaped. For example `<Ionic>` would become
133
+ * `&lt;Ionic&gt;`
134
+ *
135
+ * For more information: [Security Documentation](https://ionicframework.com/docs/faq/security)
136
+ */
137
+ placeholder = 'Search';
138
+ /**
139
+ * The icon to use as the search icon. Defaults to `search-outline` in
140
+ * `ios` mode and `search-sharp` in `md` mode.
141
+ */
142
+ searchIcon;
143
+ /**
144
+ * Sets the behavior for the cancel button. Defaults to `"never"`.
145
+ * Setting to `"focus"` shows the cancel button on focus.
146
+ * Setting to `"never"` hides the cancel button.
147
+ * Setting to `"always"` shows the cancel button regardless
148
+ * of focus state.
149
+ */
150
+ showCancelButton = 'never';
151
+ /**
152
+ * Sets the behavior for the clear button. Defaults to `"focus"`.
153
+ * Setting to `"focus"` shows the clear button on focus if the
154
+ * input is not empty.
155
+ * Setting to `"never"` hides the clear button.
156
+ * Setting to `"always"` shows the clear button regardless
157
+ * of focus state, but only if the input is not empty.
158
+ */
159
+ showClearButton = 'always';
160
+ /**
161
+ * If `true`, enable spellcheck on the input.
162
+ */
163
+ spellcheck = false;
164
+ /**
165
+ * Set the type of the input.
166
+ */
167
+ type = 'search';
168
+ /**
169
+ * the value of the searchbar.
170
+ */
171
+ value = '';
172
+ /**
173
+ * Emitted when the `value` of the `ion-searchbar` element has changed.
174
+ */
175
+ ionInput;
176
+ /**
177
+ * The `ionChange` event is fired for `<ion-searchbar>` elements when the user
178
+ * modifies the element's value. Unlike the `ionInput` event, the `ionChange`
179
+ * event is not necessarily fired for each alteration to an element's value.
180
+ *
181
+ * The `ionChange` event is fired when the value has been committed
182
+ * by the user. This can happen when the element loses focus or
183
+ * when the "Enter" key is pressed. `ionChange` can also fire
184
+ * when clicking the clear or cancel buttons.
185
+ *
186
+ * This event will not emit when programmatically setting the `value` property.
187
+ */
188
+ ionChange;
189
+ /**
190
+ * Emitted when the cancel button is clicked.
191
+ */
192
+ ionCancel;
193
+ /**
194
+ * Emitted when the clear input button is clicked.
195
+ */
196
+ ionClear;
197
+ /**
198
+ * Emitted when the input loses focus.
199
+ */
200
+ ionBlur;
201
+ /**
202
+ * Emitted when the input has focus.
203
+ */
204
+ ionFocus;
205
+ /**
206
+ * Emitted when the styles change.
207
+ * @internal
208
+ */
209
+ ionStyle;
222
210
  valueChanged() {
223
211
  const inputEl = this.nativeInput;
224
212
  const value = this.getValue();
@@ -236,7 +224,9 @@ export class Searchbar {
236
224
  this.emitStyle();
237
225
  }
238
226
  componentWillLoad() {
239
- this.inheritedAttributes = Object.assign({}, inheritAttributes(this.el, ['lang', 'dir']));
227
+ this.inheritedAttributes = {
228
+ ...inheritAttributes(this.el, ['lang', 'dir']),
229
+ };
240
230
  }
241
231
  componentDidLoad() {
242
232
  this.originalIonInput = this.ionInput;
@@ -247,15 +237,13 @@ export class Searchbar {
247
237
  }, 300);
248
238
  }
249
239
  disconnectedCallback() {
250
- var _a;
251
- this.clearButtonPressController.destroy();
252
240
  if (this.loadTimeout) {
253
241
  clearTimeout(this.loadTimeout);
254
242
  }
255
243
  if (this.clearTimeout) {
256
244
  clearTimeout(this.clearTimeout);
257
245
  }
258
- (_a = this.searchIconResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
246
+ this.searchIconResizeObserver?.disconnect();
259
247
  }
260
248
  emitStyle() {
261
249
  this.ionStyle.emit({
@@ -311,6 +299,105 @@ export class Searchbar {
311
299
  const { value } = this;
312
300
  this.ionInput.emit({ value, event });
313
301
  }
302
+ /**
303
+ * Clears the input field and triggers the control change.
304
+ */
305
+ onClearInput = async (shouldFocus) => {
306
+ if (this.clearTimeout) {
307
+ clearTimeout(this.clearTimeout);
308
+ }
309
+ this.ionClear.emit();
310
+ return new Promise((resolve) => {
311
+ // setTimeout() fixes https://github.com/ionic-team/ionic-framework/issues/7527
312
+ // wait for 4 frames
313
+ this.clearTimeout = setTimeout(() => {
314
+ const value = this.getValue();
315
+ if (value !== '') {
316
+ this.value = '';
317
+ this.emitInputChange();
318
+ /**
319
+ * When tapping clear button
320
+ * ensure input is focused after
321
+ * clearing input so users
322
+ * can quickly start typing.
323
+ */
324
+ if (shouldFocus && !this.focused) {
325
+ this.setFocus();
326
+ /**
327
+ * The setFocus call above will clear focusedValue,
328
+ * but ionChange will never have gotten a chance to
329
+ * fire. Manually revert focusedValue so onBlur can
330
+ * compare against what was in the box before the clear.
331
+ */
332
+ this.focusedValue = value;
333
+ }
334
+ }
335
+ resolve();
336
+ }, 16 * 4);
337
+ });
338
+ };
339
+ /**
340
+ * Clears the input field and tells the input to blur since
341
+ * the clearInput function doesn't want the input to blur
342
+ * then calls the custom cancel function if the user passed one in.
343
+ */
344
+ onCancelSearchbar = async (ev) => {
345
+ if (ev) {
346
+ ev.preventDefault();
347
+ ev.stopPropagation();
348
+ }
349
+ this.ionCancel.emit();
350
+ // get cached values before clearing the input
351
+ const value = this.getValue();
352
+ const focused = this.focused;
353
+ await this.onClearInput();
354
+ /**
355
+ * If there used to be something in the box, and we weren't focused
356
+ * beforehand (meaning no blur fired that would already handle this),
357
+ * manually fire ionChange.
358
+ */
359
+ if (value && !focused) {
360
+ this.emitValueChange(ev);
361
+ }
362
+ if (this.nativeInput) {
363
+ this.nativeInput.blur();
364
+ }
365
+ };
366
+ /**
367
+ * Update the Searchbar input value when the input changes
368
+ */
369
+ onInput = (ev) => {
370
+ const input = ev.target;
371
+ if (input) {
372
+ this.value = input.value;
373
+ }
374
+ this.emitInputChange(ev);
375
+ };
376
+ onChange = (ev) => {
377
+ this.emitValueChange(ev);
378
+ };
379
+ /**
380
+ * Sets the Searchbar to not focused and checks if it should align left
381
+ * based on whether there is a value in the searchbar or not.
382
+ */
383
+ onBlur = (ev) => {
384
+ this.focused = false;
385
+ this.ionBlur.emit();
386
+ this.positionElements();
387
+ if (this.focusedValue !== this.value) {
388
+ this.emitValueChange(ev);
389
+ }
390
+ this.focusedValue = undefined;
391
+ };
392
+ /**
393
+ * Sets the Searchbar to focused and active on input focus.
394
+ */
395
+ onFocus = () => {
396
+ this.focused = true;
397
+ this.focusedValue = this.value;
398
+ this.ionFocus.emit();
399
+ this.positionElements();
400
+ };
314
401
  /**
315
402
  * Positions the input search icon, placeholder, and the cancel button
316
403
  * based on the input value and if it is focused. (ios only)
@@ -318,10 +405,10 @@ export class Searchbar {
318
405
  positionElements() {
319
406
  const value = this.getValue();
320
407
  const prevAlignLeft = this.shouldAlignLeft;
321
- const theme = getIonTheme(this);
408
+ const mode = getIonMode(this);
322
409
  const shouldAlignLeft = !this.animated || value.trim() !== '' || !!this.focused;
323
410
  this.shouldAlignLeft = shouldAlignLeft;
324
- if (theme !== 'ios') {
411
+ if (mode !== 'ios') {
325
412
  return;
326
413
  }
327
414
  if (prevAlignLeft !== shouldAlignLeft) {
@@ -353,7 +440,6 @@ export class Searchbar {
353
440
  doc.body.appendChild(tempSpan);
354
441
  // Get the width of the span then remove it
355
442
  raf(() => {
356
- var _a, _b;
357
443
  const textWidth = tempSpan.offsetWidth;
358
444
  tempSpan.remove();
359
445
  // Calculate the input padding
@@ -372,15 +458,14 @@ export class Searchbar {
372
458
  * If it is zero, set up a ResizeObserver and call this function when it observes a width greater than 0.
373
459
  */
374
460
  if (iconWidth === 0) {
375
- (_a = this.searchIconResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
461
+ this.searchIconResizeObserver?.disconnect();
376
462
  this.searchIconResizeObserver = new ResizeObserver((entries) => {
377
- var _a;
378
463
  if (entries[0].contentRect.width > 0) {
379
- (_a = this.searchIconResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
464
+ this.searchIconResizeObserver?.disconnect();
380
465
  this.positionPlaceholder();
381
466
  }
382
467
  });
383
- (_b = this.searchIconResizeObserver) === null || _b === void 0 ? void 0 : _b.observe(iconEl);
468
+ this.searchIconResizeObserver?.observe(iconEl);
384
469
  return;
385
470
  }
386
471
  const iconLeft = 'calc(50% - ' + (textWidth / 2 + iconWidth + 8) + 'px)';
@@ -433,12 +518,6 @@ export class Searchbar {
433
518
  hasValue() {
434
519
  return this.getValue() !== '';
435
520
  }
436
- shouldShowSearchIcon() {
437
- if (this.searchIcon === false || this.searchIcon === 'false') {
438
- return false;
439
- }
440
- return true;
441
- }
442
521
  /**
443
522
  * Determines whether or not the cancel button should be visible onscreen.
444
523
  * Cancel button should be shown if one of two conditions applies:
@@ -455,153 +534,53 @@ export class Searchbar {
455
534
  * Determines whether or not the clear button should be visible onscreen.
456
535
  * Clear button should be shown if one of two conditions applies:
457
536
  * 1. `showClearButton` is set to `always`.
458
- * 2. `showClearButton` is set to `focus`, and the searchbar has been
459
- * focused or a clear button press is still in flight.
460
- * Unless the `theme` is `ionic` and the searchbar is disabled.
537
+ * 2. `showClearButton` is set to `focus`, and the searchbar has been focused.
461
538
  */
462
539
  shouldShowClearButton() {
463
- const theme = getIonTheme(this);
464
- if (this.showClearButton === 'never' ||
465
- (this.showClearButton === 'focus' && !this.focused && !this.isClearButtonPressed)) {
466
- return false;
467
- }
468
- if (theme === 'ionic' && this.disabled) {
540
+ if (this.showClearButton === 'never' || (this.showClearButton === 'focus' && !this.focused)) {
469
541
  return false;
470
542
  }
471
543
  return true;
472
544
  }
473
- getShape() {
474
- const theme = getIonTheme(this);
475
- const { shape } = this;
476
- // TODO(ROU-11677): Remove theme check when shapes are defined for all themes.
477
- if (theme !== 'ionic') {
478
- return undefined;
479
- }
480
- if (shape === undefined) {
481
- return 'round';
482
- }
483
- return shape;
484
- }
485
- getSize() {
486
- const theme = getIonTheme(this);
487
- const { size } = this;
488
- // TODO(ROU-11678): Remove theme check when sizes are defined for all themes.
489
- if (theme !== 'ionic') {
490
- return undefined;
491
- }
492
- if (size === undefined) {
493
- return 'medium';
494
- }
495
- return size;
496
- }
497
- /**
498
- * Get the icon to use for the clear icon.
499
- * If an icon is set on the component, use that.
500
- * Otherwise, use the icon set in the config.
501
- * If no icon is set in the config, use the default icon.
502
- */
503
- get searchbarClearIcon() {
504
- // Return the icon if it is explicitly set
505
- if (this.clearIcon != null) {
506
- return this.clearIcon;
507
- }
508
- // Determine the theme and map to default icons
509
- const theme = getIonTheme(this);
510
- const defaultIcons = {
511
- ios: closeCircle,
512
- ionic: xRegular,
513
- md: closeSharp,
514
- };
515
- // Get the default icon based on the theme, falling back to 'md' icon if necessary
516
- const defaultIcon = defaultIcons[theme] || defaultIcons.md;
517
- // Return the configured searchbar clear icon or the default icon
518
- return config.get('searchbarClearIcon', defaultIcon);
519
- }
520
- /**
521
- * Get the icon to use for the search icon.
522
- * If an icon is set on the component, use that.
523
- * Otherwise, use the icon set in the config.
524
- * If no icon is set in the config, use the default icon.
525
- */
526
- get searchbarSearchIcon() {
527
- // Return the icon if it is explicitly set.
528
- // If the icon is set to a boolean or string 'true', use the default icon.
529
- if (this.searchIcon != null && this.searchIcon !== 'true' && typeof this.searchIcon !== 'boolean') {
530
- return this.searchIcon;
531
- }
532
- // Determine the theme and map to default icons
533
- const theme = getIonTheme(this);
534
- const defaultIcons = {
535
- ios: searchOutline,
536
- ionic: magnifyingGlassRegular,
537
- md: searchSharp,
538
- };
539
- // Get the default icon based on the theme, falling back to 'md' icon if necessary
540
- const defaultIcon = defaultIcons[theme] || defaultIcons.md;
541
- // Return the configured searchbar search icon or the default icon
542
- return config.get('searchbarSearchIcon', defaultIcon);
543
- }
544
- /**
545
- * Get the icon to use for the cancel icon.
546
- * If an icon is set on the component, use that.
547
- * Otherwise, use the icon set in the config.
548
- * If no icon is set in the config, use the default icon.
549
- */
550
- get searchbarCancelIcon() {
551
- // Return the icon if it is explicitly set
552
- if (this.cancelButtonIcon != null) {
553
- return this.cancelButtonIcon;
554
- }
555
- // Determine the theme and map to default icons
556
- const theme = getIonTheme(this);
557
- const defaultIcons = {
558
- ios: arrowBackSharp,
559
- ionic: arrowLeftRegular,
560
- md: arrowBackSharp,
561
- };
562
- // Get the default icon based on the theme, falling back to 'md' icon if necessary
563
- const defaultIcon = defaultIcons[theme] || defaultIcons.md;
564
- // Return the configured searchbar cancel icon, the back button icon or the default icon
565
- return config.get('searchbarCancelIcon', config.get('backButtonIcon', defaultIcon));
566
- }
567
545
  render() {
568
- const { cancelButtonText, autocapitalize, searchbarCancelIcon, searchbarClearIcon, searchbarSearchIcon } = this;
546
+ const { cancelButtonText, autocapitalize } = this;
569
547
  const animated = this.animated && config.getBoolean('animated', true);
570
- const theme = getIonTheme(this);
548
+ const mode = getIonMode(this);
549
+ const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
550
+ const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
571
551
  const shouldShowCancelButton = this.shouldShowCancelButton();
572
- const shape = this.getShape();
573
- const size = this.getSize();
574
- const cancelButton = this.showCancelButton !== 'never' && (h("button", { key: 'b7c0ac188898cd320c11ecc3f100a686468b0b24', "aria-label": cancelButtonText, "aria-hidden": shouldShowCancelButton ? undefined : 'true', type: "button", tabIndex: theme === 'ios' && !shouldShowCancelButton ? -1 : undefined, onMouseDown: this.onCancelSearchbar, onTouchStart: this.onCancelSearchbar, class: "searchbar-cancel-button" }, h("div", { key: '3f04b6dcc64a2e51a4de863694888e5af3692387', "aria-hidden": "true" }, theme === 'md' || theme === 'ionic' ? (h("ion-icon", { "aria-hidden": "true", icon: searchbarCancelIcon, lazy: false })) : (cancelButtonText))));
575
- return (h(Host, { key: '9c31c41ff5026a9c42f45a5cfd3c98d8eb4e9925', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses(this.color, {
576
- [theme]: true,
552
+ const cancelButton = this.showCancelButton !== 'never' && (h("button", { key: '73964da43dbd099fc7f3d30cbc4da11087701ac5', "aria-label": cancelButtonText, "aria-hidden": shouldShowCancelButton ? undefined : 'true', type: "button", tabIndex: mode === 'ios' && !shouldShowCancelButton ? -1 : undefined, onMouseDown: this.onCancelSearchbar, onTouchStart: this.onCancelSearchbar, class: "searchbar-cancel-button" }, h("div", { key: '27335a0e35f6c253c074685fa0b088404927bcbb', "aria-hidden": "true" }, mode === 'md' ? (h("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
553
+ return (h(Host, { key: '1b4f6c4e7dffb02e092f0026ce3875822d98a631', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses(this.color, {
554
+ [mode]: true,
577
555
  'searchbar-animated': animated,
578
556
  'searchbar-disabled': this.disabled,
579
557
  'searchbar-no-animate': animated && this.noAnimate,
580
558
  'searchbar-has-value': this.hasValue(),
581
559
  'searchbar-left-aligned': this.shouldAlignLeft,
582
560
  'searchbar-has-focus': this.focused,
583
- 'searchbar-should-show-search-icon': this.shouldShowSearchIcon(),
584
561
  'searchbar-should-show-clear': this.shouldShowClearButton(),
585
562
  'searchbar-should-show-cancel': this.shouldShowCancelButton(),
586
- [`searchbar-shape-${shape}`]: shape !== undefined,
587
- [`searchbar-size-${size}`]: size !== undefined,
588
- 'in-toolbar': hostContext('ion-toolbar', this.el),
589
- }) }, h("div", { key: '5710382c91b47ecfba36aab7bd8497723cb1aa04', class: "searchbar-input-container" }, h("input", Object.assign({ key: '1ab27cbebfad408b96d1bb1b57e4caa7420ced72', "aria-label": "search text", disabled: this.disabled, ref: (el) => (this.nativeInput = el), class: "searchbar-input", inputMode: this.inputmode, enterKeyHint: this.enterkeyhint, name: this.name, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, minLength: this.minlength, maxLength: this.maxlength, placeholder: this.placeholder, type: this.type, value: this.getValue(), autoCapitalize: autocapitalize === 'default' ? undefined : autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, spellcheck: this.spellcheck }, this.inheritedAttributes)), (theme === 'md' || theme === 'ionic') && cancelButton, this.shouldShowSearchIcon() && (h("ion-icon", { key: '3e0d29f6f35e6b817bb4bc7f879e8445c2ceadee', "aria-hidden": "true", icon: searchbarSearchIcon, lazy: false, class: "searchbar-search-icon" })), this.shouldShowClearButton() && (h("button", { key: '87521fd5630077725fd30173d17fd1d49819c209', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: this.clearButtonPressController.onPointerDown, onPointerCancel: this.clearButtonPressController.release, onClick: () => this.onClearInput(true) }, h("ion-icon", { key: 'd93452bbe539c582846e4a5826c0671e235349d0', "aria-hidden": "true", icon: searchbarClearIcon, lazy: false, class: "searchbar-clear-icon" })))), theme === 'ios' && cancelButton));
563
+ }) }, h("div", { key: '587e1950e329cfb9d3658be5b2a6491e7af9321a', class: "searchbar-input-container" }, h("input", { key: '7f78a3d22cce03af277a538b4d9f85faddf1fa80', "aria-label": "search text", disabled: this.disabled, ref: (el) => (this.nativeInput = el), class: "searchbar-input", inputMode: this.inputmode, enterKeyHint: this.enterkeyhint, name: this.name, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, minLength: this.minlength, maxLength: this.maxlength, placeholder: this.placeholder, type: this.type, value: this.getValue(), autoCapitalize: autocapitalize === 'default' ? undefined : autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect ? 'on' : 'off', spellcheck: this.spellcheck, ...this.inheritedAttributes }), mode === 'md' && cancelButton, h("ion-icon", { key: '9fd3e458978b64e9e3358bcbb26471753f6ff2a6', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), h("button", { key: 'c7864c85923668dfa25f5fc4a70c7dbf6da191b7', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
564
+ /**
565
+ * This prevents mobile browsers from
566
+ * blurring the input when the clear
567
+ * button is activated.
568
+ */
569
+ ev.preventDefault();
570
+ }, onClick: () => this.onClearInput(true) }, h("ion-icon", { key: '47e7a15c6c6d4df4c54c62b042842e499627da05', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
590
571
  }
591
572
  static get is() { return "ion-searchbar"; }
592
573
  static get encapsulation() { return "scoped"; }
593
574
  static get originalStyleUrls() {
594
575
  return {
595
576
  "ios": ["searchbar.ios.scss"],
596
- "md": ["searchbar.md.scss"],
597
- "ionic": ["searchbar.ionic.scss"]
577
+ "md": ["searchbar.md.scss"]
598
578
  };
599
579
  }
600
580
  static get styleUrls() {
601
581
  return {
602
582
  "ios": ["searchbar.ios.css"],
603
- "md": ["searchbar.md.css"],
604
- "ionic": ["searchbar.ionic.css"]
583
+ "md": ["searchbar.md.css"]
605
584
  };
606
585
  }
607
586
  static get properties() {
@@ -700,11 +679,11 @@ export class Searchbar {
700
679
  "defaultValue": "'off'"
701
680
  },
702
681
  "autocorrect": {
703
- "type": "string",
682
+ "type": "boolean",
704
683
  "mutable": false,
705
684
  "complexType": {
706
- "original": "'on' | 'off'",
707
- "resolved": "\"off\" | \"on\"",
685
+ "original": "boolean",
686
+ "resolved": "boolean",
708
687
  "references": {}
709
688
  },
710
689
  "required": false,
@@ -717,26 +696,27 @@ export class Searchbar {
717
696
  "setter": false,
718
697
  "reflect": false,
719
698
  "attribute": "autocorrect",
720
- "defaultValue": "'off'"
699
+ "defaultValue": "false"
721
700
  },
722
701
  "cancelButtonIcon": {
723
702
  "type": "string",
724
703
  "mutable": false,
725
704
  "complexType": {
726
705
  "original": "string",
727
- "resolved": "string | undefined",
706
+ "resolved": "string",
728
707
  "references": {}
729
708
  },
730
709
  "required": false,
731
- "optional": true,
710
+ "optional": false,
732
711
  "docs": {
733
712
  "tags": [],
734
- "text": "Set the cancel button icon. Only available when the theme is `\"md\"`.\nDefaults to `\"arrow-back-sharp\"`."
713
+ "text": "Set the cancel button icon. Only applies to `md` mode.\nDefaults to `arrow-back-sharp`."
735
714
  },
736
715
  "getter": false,
737
716
  "setter": false,
738
717
  "reflect": false,
739
- "attribute": "cancel-button-icon"
718
+ "attribute": "cancel-button-icon",
719
+ "defaultValue": "config.get('backButtonIcon', arrowBackSharp) as string"
740
720
  },
741
721
  "cancelButtonText": {
742
722
  "type": "string",
@@ -750,7 +730,7 @@ export class Searchbar {
750
730
  "optional": false,
751
731
  "docs": {
752
732
  "tags": [],
753
- "text": "Set the cancel button text. Only available when the theme is `\"ios\"`."
733
+ "text": "Set the cancel button text. Only applies to `ios` mode."
754
734
  },
755
735
  "getter": false,
756
736
  "setter": false,
@@ -770,7 +750,7 @@ export class Searchbar {
770
750
  "optional": true,
771
751
  "docs": {
772
752
  "tags": [],
773
- "text": "Set the clear icon. Defaults to `\"close-circle\"` for `\"ios\"` theme and `\"close-sharp\"` for `\"md\"` and `\"ionic\"` theme."
753
+ "text": "Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`."
774
754
  },
775
755
  "getter": false,
776
756
  "setter": false,
@@ -933,18 +913,18 @@ export class Searchbar {
933
913
  "defaultValue": "'Search'"
934
914
  },
935
915
  "searchIcon": {
936
- "type": "any",
916
+ "type": "string",
937
917
  "mutable": false,
938
918
  "complexType": {
939
- "original": "string | boolean",
940
- "resolved": "boolean | string | undefined",
919
+ "original": "string",
920
+ "resolved": "string | undefined",
941
921
  "references": {}
942
922
  },
943
923
  "required": false,
944
924
  "optional": true,
945
925
  "docs": {
946
926
  "tags": [],
947
- "text": "The icon to use as the search icon. Defaults to `\"search-outline\"` in\nthe `\"ios\"` theme and `\"search-sharp\"` in the `\"md\"` and `\"ionic\"` themes.\nIf `false`, no search icon will be displayed."
927
+ "text": "The icon to use as the search icon. Defaults to `search-outline` in\n`ios` mode and `search-sharp` in `md` mode."
948
928
  },
949
929
  "getter": false,
950
930
  "setter": false,
@@ -1050,52 +1030,13 @@ export class Searchbar {
1050
1030
  "reflect": false,
1051
1031
  "attribute": "value",
1052
1032
  "defaultValue": "''"
1053
- },
1054
- "shape": {
1055
- "type": "string",
1056
- "mutable": false,
1057
- "complexType": {
1058
- "original": "'soft' | 'round' | 'rectangular'",
1059
- "resolved": "\"rectangular\" | \"round\" | \"soft\" | undefined",
1060
- "references": {}
1061
- },
1062
- "required": false,
1063
- "optional": true,
1064
- "docs": {
1065
- "tags": [],
1066
- "text": "Set to `\"soft\"` for a searchbar with slightly rounded corners,\n`\"round\"` for a searchbar with fully rounded corners,\nor `\"rectangular\"` for a searchbar without rounded corners.\n\nDefaults to `\"round\"` for the ionic theme, and `undefined` for all other themes."
1067
- },
1068
- "getter": false,
1069
- "setter": false,
1070
- "reflect": false,
1071
- "attribute": "shape"
1072
- },
1073
- "size": {
1074
- "type": "string",
1075
- "mutable": false,
1076
- "complexType": {
1077
- "original": "'small' | 'medium' | 'large'",
1078
- "resolved": "\"large\" | \"medium\" | \"small\" | undefined",
1079
- "references": {}
1080
- },
1081
- "required": false,
1082
- "optional": true,
1083
- "docs": {
1084
- "tags": [],
1085
- "text": "Set to `\"large\"` for a searchbar with an increase in height,\nwhile \"small\" and \"medium\" provide progressively smaller heights.\n\nDefaults to `\"medium\"` for the ionic theme, and `undefined` for all other themes."
1086
- },
1087
- "getter": false,
1088
- "setter": false,
1089
- "reflect": false,
1090
- "attribute": "size"
1091
1033
  }
1092
1034
  };
1093
1035
  }
1094
1036
  static get states() {
1095
1037
  return {
1096
1038
  "focused": {},
1097
- "noAnimate": {},
1098
- "isClearButtonPressed": {}
1039
+ "noAnimate": {}
1099
1040
  };
1100
1041
  }
1101
1042
  static get events() {