@ionic/core 8.8.19-dev.11787076261.138d5922 → 8.8.19-dev.11787084784.17cf25cf

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 (802) 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-legacy-column.d.ts +11 -0
  59. package/components/ion-picker-legacy-column.js +4 -0
  60. package/components/ion-picker-legacy.d.ts +11 -0
  61. package/components/ion-picker-legacy.js +4 -0
  62. package/components/ion-picker.js +1 -1
  63. package/components/ion-popover.js +1 -1
  64. package/components/ion-progress-bar.js +1 -1
  65. package/components/ion-radio-group.js +1 -1
  66. package/components/ion-radio.js +1 -1
  67. package/components/ion-range.js +1 -1
  68. package/components/ion-refresher-content.js +1 -1
  69. package/components/ion-refresher.js +1 -1
  70. package/components/ion-reorder-group.js +1 -1
  71. package/components/ion-reorder.js +1 -1
  72. package/components/ion-ripple-effect.js +1 -1
  73. package/components/ion-route-redirect.js +1 -1
  74. package/components/ion-route.js +1 -1
  75. package/components/ion-router-link.js +1 -1
  76. package/components/ion-router-outlet.js +1 -1
  77. package/components/ion-router.js +1 -1
  78. package/components/ion-row.js +1 -1
  79. package/components/ion-searchbar.js +1 -1
  80. package/components/ion-segment-button.js +1 -1
  81. package/components/ion-segment-content.js +1 -1
  82. package/components/ion-segment-view.js +1 -1
  83. package/components/ion-segment.js +1 -1
  84. package/components/ion-select-modal.js +1 -1
  85. package/components/ion-select-option.js +1 -1
  86. package/components/ion-select-popover.js +1 -1
  87. package/components/ion-select.js +1 -1
  88. package/components/ion-skeleton-text.js +1 -1
  89. package/components/ion-spinner.js +1 -1
  90. package/components/ion-split-pane.js +1 -1
  91. package/components/ion-tab-bar.js +1 -1
  92. package/components/ion-tab-button.js +1 -1
  93. package/components/ion-tab.js +1 -1
  94. package/components/ion-tabs.js +1 -1
  95. package/components/ion-text.js +1 -1
  96. package/components/ion-textarea.js +1 -1
  97. package/components/ion-thumbnail.js +1 -1
  98. package/components/ion-title.js +1 -1
  99. package/components/ion-toast.js +1 -1
  100. package/components/ion-toggle.js +1 -1
  101. package/components/ion-toolbar.js +1 -1
  102. package/components/{p-DV85C0e0.js → p--JUspHvy.js} +1 -1
  103. package/components/p-A3O24YmY.js +4 -0
  104. package/components/p-ABkNVeU9.js +4 -0
  105. package/components/p-B-JJgYSG.js +4 -0
  106. package/components/p-B9jFTlwE.js +4 -0
  107. package/components/p-BLmJ0zRm.js +4 -0
  108. package/components/p-BMI53wYL.js +4 -0
  109. package/components/p-BSEgsdFI.js +4 -0
  110. package/components/p-BTEOs1at.js +4 -0
  111. package/components/{p-DwpKZ6rl.js → p-BkKAANMJ.js} +1 -1
  112. package/components/p-BlIAuGv2.js +4 -0
  113. package/components/p-Bnsn6KaP.js +4 -0
  114. package/components/p-BsBCoGa-.js +4 -0
  115. package/components/p-Bz0dSlXZ.js +4 -0
  116. package/components/p-C53feagD.js +4 -0
  117. package/components/p-CHqRYvYm.js +4 -0
  118. package/components/p-CQGnMY3n.js +4 -0
  119. package/components/p-CSZf8_j0.js +4 -0
  120. package/components/{p-30_sZS2V.js → p-C_hpsif8.js} +1 -1
  121. package/components/p-C_xFdyXe.js +4 -0
  122. package/components/p-Cf2jSDS8.js +4 -0
  123. package/components/p-Cfx4M1Bn.js +4 -0
  124. package/components/{p-J-p0EtHR.js → p-ChIZKXUu.js} +1 -1
  125. package/components/p-CkMSOsFF.js +4 -0
  126. package/components/p-Cl0B-RWe.js +4 -0
  127. package/components/p-CmR5uXej.js +4 -0
  128. package/components/p-Cp4GRDqq.js +4 -0
  129. package/components/p-CsNJ1ULL.js +4 -0
  130. package/components/p-CtWGkNnJ.js +4 -0
  131. package/components/p-CzCbeKys.js +4 -0
  132. package/components/p-D-aHdMxW.js +4 -0
  133. package/components/p-D0d8qTwj.js +4 -0
  134. package/components/p-D13Eaw-8.js +4 -0
  135. package/components/{p-BpG8kBfD.js → p-D3xo7hqU.js} +1 -1
  136. package/components/p-D6Ynv7Xh.js +4 -0
  137. package/components/{p-_0JhwClE.js → p-D7uN07a3.js} +1 -1
  138. package/components/p-DCnGU1fF.js +4 -0
  139. package/components/p-DGvrK8dD.js +4 -0
  140. package/components/p-DOFCbuQR.js +4 -0
  141. package/components/p-DRxvM2Ic.js +4 -0
  142. package/components/p-DV5mPYQS.js +4 -0
  143. package/components/p-DWkAgceV.js +4 -0
  144. package/components/p-DiVJyqlX.js +4 -0
  145. package/components/{p-ryyf_ItD.js → p-DqLB8yFQ.js} +1 -1
  146. package/components/p-DqZAXv2t.js +4 -0
  147. package/components/p-Osve4qkc.js +4 -0
  148. package/components/p-R8zmRi4c.js +4 -0
  149. package/components/p-SLS1rDZM.js +4 -0
  150. package/components/p-aJ6PBUvj.js +4 -0
  151. package/components/p-cyNmxje6.js +4 -0
  152. package/components/p-gAg0kXZp.js +4 -0
  153. package/components/p-gYiraiT_.js +4 -0
  154. package/components/p-j5IxBIan.js +4 -0
  155. package/components/p-k_E4tX5Z.js +4 -0
  156. package/components/p-oD4kcBRX.js +4 -0
  157. package/components/p-rCa2eL0j.js +4 -0
  158. package/components/p-vRBNsYbs.js +4 -0
  159. package/components/p-yEQxMl70.js +4 -0
  160. package/components/p-yzCsOZE2.js +4 -0
  161. package/dist/cjs/{animation-C0mOHzej.js → animation-Ch16T-Nb.js} +4 -4
  162. package/dist/cjs/{app-globals-BREG4twP.js → app-globals-Dd89e0MR.js} +1 -1
  163. package/dist/cjs/{button-active-BKj1rdFx.js → button-active-COnxOe4X.js} +3 -3
  164. package/dist/cjs/config-D6C-KlA9.js +201 -0
  165. package/dist/cjs/{dir-Brx7VkvP.js → dir-Cn0z1rJH.js} +1 -1
  166. package/dist/cjs/{format-pp0Du3K-.js → format-BUFWn4Bn.js} +30 -40
  167. package/dist/cjs/{framework-delegate-NTLQ5YzV.js → framework-delegate-BgU6U9Ez.js} +7 -5
  168. package/dist/cjs/{gesture-controller-BDUH7687.js → gesture-controller-dtqlP_q4.js} +8 -15
  169. package/dist/cjs/{haptic-Ch-X4gRx.js → haptic-ClPPQ_PS.js} +3 -2
  170. package/dist/cjs/{hardware-back-button-fqpYh-kd.js → hardware-back-button-CXmUnTJC.js} +4 -4
  171. package/dist/cjs/{helpers-CaLhEmTE.js → helpers-gntk8bfm.js} +3 -3
  172. package/dist/cjs/{index-Ck9advCT.js → index-BS2uhvhT.js} +5 -5
  173. package/dist/cjs/{index-uvry__L4.js → index-BfaXsATC.js} +14 -31
  174. package/dist/cjs/{index-BlshL9ib.js → index-BhhuJ1Yx.js} +2 -2
  175. package/dist/cjs/{index-D48vawBq.js → index-BiRrzGDi.js} +2 -2
  176. package/dist/cjs/{index-P1nQxrpZ.js → index-CAvQ7Tka.js} +4 -10
  177. package/dist/cjs/{index-wOmugbdg.js → index-DqmRDbxg.js} +1 -1
  178. package/dist/cjs/{index-D2X6b92x.js → index-ooS8B4p9.js} +7 -6
  179. package/dist/cjs/index.cjs.js +18 -18
  180. package/dist/cjs/{input-shims-DvHAFqiP.js → input-shims-Bn1cXfCM.js} +11 -9
  181. package/dist/cjs/input.utils-BwhxZooW.js +150 -0
  182. package/dist/cjs/ion-accordion_2.cjs.entry.js +340 -368
  183. package/dist/cjs/ion-action-sheet.cjs.entry.js +76 -187
  184. package/dist/cjs/ion-alert.cjs.entry.js +111 -273
  185. package/dist/cjs/ion-app_8.cjs.entry.js +190 -307
  186. package/dist/cjs/ion-avatar_3.cjs.entry.js +4 -10
  187. package/dist/cjs/ion-back-button.cjs.entry.js +23 -47
  188. package/dist/cjs/ion-backdrop.cjs.entry.js +14 -18
  189. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +121 -199
  190. package/dist/cjs/ion-button_2.cjs.entry.js +66 -138
  191. package/dist/cjs/ion-card_5.cjs.entry.js +30 -82
  192. package/dist/cjs/ion-checkbox.cjs.entry.js +101 -152
  193. package/dist/cjs/ion-chip.cjs.entry.js +11 -17
  194. package/dist/cjs/ion-col_3.cjs.entry.js +10 -134
  195. package/dist/cjs/ion-datetime-button.cjs.entry.js +241 -253
  196. package/dist/cjs/ion-datetime_3.cjs.entry.js +3167 -0
  197. package/dist/cjs/ion-fab_3.cjs.entry.js +81 -139
  198. package/dist/cjs/ion-img.cjs.entry.js +12 -34
  199. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +72 -100
  200. package/dist/cjs/ion-input-otp.cjs.entry.js +372 -435
  201. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +22 -36
  202. package/dist/cjs/ion-input.cjs.entry.js +211 -343
  203. package/dist/cjs/ion-item-option_3.cjs.entry.js +54 -94
  204. package/dist/cjs/ion-item_8.cjs.entry.js +92 -191
  205. package/dist/cjs/ion-loading.cjs.entry.js +60 -146
  206. package/dist/cjs/ion-menu_3.cjs.entry.js +106 -168
  207. package/dist/cjs/ion-modal.cjs.entry.js +261 -455
  208. package/dist/cjs/ion-nav_2.cjs.entry.js +158 -101
  209. package/dist/cjs/ion-picker-column-option.cjs.entry.js +33 -37
  210. package/dist/cjs/ion-picker-column.cjs.entry.js +405 -417
  211. package/dist/cjs/ion-picker.cjs.entry.js +392 -401
  212. package/dist/cjs/ion-popover.cjs.entry.js +205 -319
  213. package/dist/cjs/ion-progress-bar.cjs.entry.js +25 -31
  214. package/dist/cjs/ion-radio_2.cjs.entry.js +134 -207
  215. package/dist/cjs/ion-range.cjs.entry.js +245 -302
  216. package/dist/cjs/ion-refresher_2.cjs.entry.js +93 -165
  217. package/dist/cjs/ion-reorder_2.cjs.entry.js +23 -53
  218. package/dist/cjs/ion-ripple-effect.cjs.entry.js +14 -14
  219. package/dist/cjs/ion-route_4.cjs.entry.js +71 -175
  220. package/dist/cjs/ion-searchbar.cjs.entry.js +200 -291
  221. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  222. package/dist/cjs/ion-segment-view.cjs.entry.js +17 -28
  223. package/dist/cjs/ion-segment_2.cjs.entry.js +126 -169
  224. package/dist/cjs/ion-select-modal.cjs.entry.js +48 -104
  225. package/dist/cjs/ion-select_3.cjs.entry.js +260 -787
  226. package/dist/cjs/ion-spinner.cjs.entry.js +10 -24
  227. package/dist/cjs/ion-split-pane.cjs.entry.js +16 -29
  228. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +41 -100
  229. package/dist/cjs/ion-tab_2.cjs.entry.js +27 -53
  230. package/dist/cjs/ion-text.cjs.entry.js +5 -11
  231. package/dist/cjs/ion-textarea.cjs.entry.js +188 -296
  232. package/dist/cjs/ion-toast.cjs.entry.js +117 -236
  233. package/dist/cjs/ion-toggle.cjs.entry.js +122 -175
  234. package/dist/cjs/{ionic-global-k6hOWWpn.js → ionic-global-BerQGEpE.js} +8 -13
  235. package/dist/cjs/ionic.cjs.js +4 -4
  236. package/dist/cjs/{ios.transition-KvuRAe2W.js → ios.transition-IMJRwn29.js} +17 -13
  237. package/dist/cjs/{item-multiple-inputs-BdYSbfKN.js → item-multiple-inputs-jOJZE_I0.js} +1 -1
  238. package/dist/cjs/{keyboard-cHxZlTyz.js → keyboard-UuAS4D_9.js} +2 -2
  239. package/dist/cjs/{keyboard-controller-PtZoN2GS.js → keyboard-controller-GXBiBRKS.js} +6 -6
  240. package/dist/cjs/{keyboard-Cix5TVkD.js → keyboard-hHzlEQpk.js} +2 -2
  241. package/dist/cjs/loader.cjs.js +4 -4
  242. package/dist/cjs/{md.transition-Bjl5Ozph.js → md.transition-CgQZxcoT.js} +8 -7
  243. package/dist/cjs/notch-controller-_SwR025y.js +155 -0
  244. package/dist/cjs/{overlays-IlP4H2Gn.js → overlays-DuSEMhIW.js} +33 -48
  245. package/dist/cjs/{status-tap-BR_ujYHg.js → status-tap-CSvBT7FV.js} +3 -3
  246. package/dist/cjs/{swipe-back-DzQKEl5g.js → swipe-back-CuIiziaa.js} +5 -5
  247. package/dist/cjs/{theme-Bw0rpaNN.js → theme-CeDs6Hcv.js} +1 -6
  248. package/dist/collection/collection-manifest.json +10 -6
  249. package/dist/collection/components/accordion/accordion.js +312 -315
  250. package/dist/collection/components/accordion-group/accordion-group.js +25 -48
  251. package/dist/collection/components/action-sheet/action-sheet.ios.css +2 -228
  252. package/dist/collection/components/action-sheet/action-sheet.js +64 -173
  253. package/dist/collection/components/action-sheet/action-sheet.md.css +2 -174
  254. package/dist/collection/components/action-sheet/test/basic/fixture.js +0 -3
  255. package/dist/collection/components/alert/alert.ios.css +10 -279
  256. package/dist/collection/components/alert/alert.js +97 -257
  257. package/dist/collection/components/alert/alert.md.css +20 -268
  258. package/dist/collection/components/app/app.js +0 -3
  259. package/dist/collection/components/back-button/back-button.js +19 -42
  260. package/dist/collection/components/backdrop/backdrop.js +14 -16
  261. package/dist/collection/components/badge/badge.js +0 -6
  262. package/dist/collection/components/breadcrumb/breadcrumb.js +30 -91
  263. package/dist/collection/components/breadcrumbs/breadcrumbs.js +88 -103
  264. package/dist/collection/components/button/button.js +61 -132
  265. package/dist/collection/components/buttons/buttons.js +15 -13
  266. package/dist/collection/components/card/card.js +21 -54
  267. package/dist/collection/components/card-header/card-header.js +8 -12
  268. package/dist/collection/components/card-subtitle/card-subtitle.js +0 -6
  269. package/dist/collection/components/card-title/card-title.js +0 -6
  270. package/dist/collection/components/checkbox/checkbox.js +97 -147
  271. package/dist/collection/components/chip/chip.js +10 -14
  272. package/dist/collection/components/col/col.js +3 -127
  273. package/dist/collection/components/content/content.js +64 -93
  274. package/dist/collection/components/datetime/datetime.ios.css +2 -42
  275. package/dist/collection/components/datetime/datetime.js +816 -1051
  276. package/dist/collection/components/datetime/datetime.md.css +1 -42
  277. package/dist/collection/components/datetime/utils/data.js +14 -13
  278. package/dist/collection/components/datetime/utils/format.js +11 -21
  279. package/dist/collection/components/datetime/utils/manipulation.js +8 -8
  280. package/dist/collection/components/datetime/utils/parse.js +10 -10
  281. package/dist/collection/components/datetime/utils/state.js +2 -8
  282. package/dist/collection/components/datetime/utils/validate.js +5 -4
  283. package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -5
  284. package/dist/collection/components/datetime-button/datetime-button.js +237 -247
  285. package/dist/collection/components/datetime-button/datetime-button.md.css +0 -5
  286. package/dist/collection/components/fab/fab.js +13 -20
  287. package/dist/collection/components/fab-button/fab-button.js +55 -104
  288. package/dist/collection/components/fab-list/fab-list.js +11 -10
  289. package/dist/collection/components/footer/footer.js +44 -50
  290. package/dist/collection/components/grid/grid.js +6 -4
  291. package/dist/collection/components/header/header.js +25 -35
  292. package/dist/collection/components/img/img.js +10 -34
  293. package/dist/collection/components/infinite-scroll/infinite-scroll.js +66 -73
  294. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +3 -20
  295. package/dist/collection/components/input/input.ios.css +26 -57
  296. package/dist/collection/components/input/input.js +206 -336
  297. package/dist/collection/components/input/input.md.css +43 -79
  298. package/dist/collection/components/input-otp/input-otp.js +368 -430
  299. package/dist/collection/components/input-password-toggle/input-password-toggle.js +19 -32
  300. package/dist/collection/components/item/item.js +53 -99
  301. package/dist/collection/components/item-divider/item-divider.js +12 -17
  302. package/dist/collection/components/item-group/item-group.js +1 -1
  303. package/dist/collection/components/item-option/item-option.js +22 -50
  304. package/dist/collection/components/item-options/item-options.js +8 -11
  305. package/dist/collection/components/item-sliding/item-sliding.js +21 -27
  306. package/dist/collection/components/label/label.js +6 -26
  307. package/dist/collection/components/list/list.js +8 -11
  308. package/dist/collection/components/list-header/list-header.js +2 -12
  309. package/dist/collection/components/loading/loading.js +51 -135
  310. package/dist/collection/components/menu/menu.js +61 -103
  311. package/dist/collection/components/menu-button/menu-button.js +21 -30
  312. package/dist/collection/components/menu-toggle/menu-toggle.js +15 -22
  313. package/dist/collection/components/modal/animations/ios.enter.js +1 -1
  314. package/dist/collection/components/modal/animations/md.enter.js +1 -1
  315. package/dist/collection/components/modal/gestures/sheet.js +10 -22
  316. package/dist/collection/components/modal/gestures/swipe-to-close.js +3 -15
  317. package/dist/collection/components/modal/modal.js +228 -398
  318. package/dist/collection/components/modal/safe-area-utils.js +7 -6
  319. package/dist/collection/components/modal/test/fixtures.js +0 -3
  320. package/dist/collection/components/nav/nav.js +247 -69
  321. package/dist/collection/components/nav/view-controller.js +1 -7
  322. package/dist/collection/components/nav-link/nav-link.js +10 -21
  323. package/dist/collection/components/note/note.js +2 -8
  324. package/dist/collection/components/picker/picker.js +390 -398
  325. package/dist/collection/components/picker-column/picker-column.css +0 -3
  326. package/dist/collection/components/picker-column/picker-column.js +404 -414
  327. package/dist/collection/components/picker-column-option/picker-column-option.js +31 -33
  328. package/dist/collection/components/picker-column-option/picker-column-option.md.css +1 -6
  329. package/dist/collection/components/picker-legacy/animations/ios.enter.js +27 -0
  330. package/dist/collection/components/picker-legacy/animations/ios.leave.js +23 -0
  331. package/dist/collection/components/picker-legacy/picker-interface.js +1 -0
  332. package/dist/collection/components/picker-legacy/picker.ios.css +300 -0
  333. package/dist/collection/components/picker-legacy/picker.js +890 -0
  334. package/dist/collection/components/picker-legacy/picker.md.css +287 -0
  335. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +231 -0
  336. package/dist/collection/components/picker-legacy-column/picker-column.js +422 -0
  337. package/dist/collection/components/picker-legacy-column/picker-column.md.css +222 -0
  338. package/dist/collection/components/picker-legacy-column/test/test.utils.js +43 -0
  339. package/dist/collection/components/popover/animations/ios.enter.js +2 -1
  340. package/dist/collection/components/popover/animations/md.enter.js +2 -1
  341. package/dist/collection/components/popover/popover.ios.css +0 -15
  342. package/dist/collection/components/popover/popover.js +185 -302
  343. package/dist/collection/components/popover/popover.md.css +0 -15
  344. package/dist/collection/components/popover/test/fixture.js +0 -1
  345. package/dist/collection/components/popover/utils.js +6 -4
  346. package/dist/collection/components/progress-bar/progress-bar.js +23 -27
  347. package/dist/collection/components/radio/radio.js +66 -102
  348. package/dist/collection/components/radio-group/radio-group.js +66 -101
  349. package/dist/collection/components/radio-group/test/fixtures.js +0 -2
  350. package/dist/collection/components/range/range.js +240 -296
  351. package/dist/collection/components/refresher/refresher.js +78 -110
  352. package/dist/collection/components/refresher-content/refresher-content.js +4 -41
  353. package/dist/collection/components/reorder/reorder.js +1 -2
  354. package/dist/collection/components/reorder-group/reorder-group.js +15 -44
  355. package/dist/collection/components/ripple-effect/ripple-effect.js +13 -12
  356. package/dist/collection/components/route/route.js +10 -39
  357. package/dist/collection/components/route-redirect/route-redirect.js +0 -31
  358. package/dist/collection/components/router/router.js +33 -37
  359. package/dist/collection/components/router/utils/dom.js +7 -25
  360. package/dist/collection/components/router/utils/matching.js +9 -7
  361. package/dist/collection/components/router/utils/parser.js +1 -1
  362. package/dist/collection/components/router/utils/path.js +1 -0
  363. package/dist/collection/components/router-link/router-link.js +12 -37
  364. package/dist/collection/components/router-outlet/router-outlet.js +21 -82
  365. package/dist/collection/components/row/row.js +1 -1
  366. package/dist/collection/components/searchbar/searchbar.js +199 -289
  367. package/dist/collection/components/segment/segment.js +85 -120
  368. package/dist/collection/components/segment-button/segment-button.js +37 -43
  369. package/dist/collection/components/segment-content/segment-content.js +1 -1
  370. package/dist/collection/components/segment-view/segment-view.js +16 -26
  371. package/dist/collection/components/select/select.ios.css +69 -96
  372. package/dist/collection/components/select/select.js +213 -629
  373. package/dist/collection/components/select/select.md.css +85 -118
  374. package/dist/collection/components/select-modal/select-modal.ios.css +0 -218
  375. package/dist/collection/components/select-modal/select-modal.js +38 -92
  376. package/dist/collection/components/select-modal/select-modal.md.css +0 -164
  377. package/dist/collection/components/select-modal/test/fixtures.js +1 -8
  378. package/dist/collection/components/select-option/select-option.js +9 -110
  379. package/dist/collection/components/select-popover/select-popover.ios.css +0 -218
  380. package/dist/collection/components/select-popover/select-popover.js +36 -103
  381. package/dist/collection/components/select-popover/select-popover.md.css +0 -164
  382. package/dist/collection/components/select-popover/test/fixtures.js +1 -8
  383. package/dist/collection/components/skeleton-text/skeleton-text.js +8 -12
  384. package/dist/collection/components/spinner/spinner.js +9 -21
  385. package/dist/collection/components/split-pane/split-pane.js +15 -27
  386. package/dist/collection/components/tab/tab.js +6 -17
  387. package/dist/collection/components/tab-bar/tab-bar.js +14 -32
  388. package/dist/collection/components/tab-button/tab-button.js +23 -62
  389. package/dist/collection/components/tabs/tabs.js +20 -33
  390. package/dist/collection/components/text/text.js +2 -8
  391. package/dist/collection/components/textarea/textarea.ios.css +62 -94
  392. package/dist/collection/components/textarea/textarea.js +181 -287
  393. package/dist/collection/components/textarea/textarea.md.css +77 -103
  394. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  395. package/dist/collection/components/title/title.js +2 -18
  396. package/dist/collection/components/toast/toast.js +106 -223
  397. package/dist/collection/components/toggle/toggle.js +115 -167
  398. package/dist/collection/components/toolbar/toolbar.js +7 -15
  399. package/dist/collection/global/config.js +6 -4
  400. package/dist/collection/global/ionic-global.js +2 -8
  401. package/dist/collection/index.js +1 -1
  402. package/dist/collection/utils/animation/animation.js +3 -3
  403. package/dist/collection/utils/config.js +4 -5
  404. package/dist/collection/utils/focus-controller/index.js +1 -1
  405. package/dist/collection/utils/focus-trap.js +3 -3
  406. package/dist/collection/utils/forms/index.js +0 -1
  407. package/dist/collection/utils/framework-delegate.js +6 -4
  408. package/dist/collection/utils/gesture/gesture-controller.js +8 -15
  409. package/dist/collection/utils/gesture/index.js +2 -10
  410. package/dist/collection/utils/gesture/listener.js +1 -1
  411. package/dist/collection/utils/hardware-back-button.js +3 -3
  412. package/dist/collection/utils/helpers.js +2 -2
  413. package/dist/collection/utils/input-shims/hacks/scroll-assist.js +5 -4
  414. package/dist/collection/utils/input-shims/hacks/scroll-data.js +2 -1
  415. package/dist/collection/utils/keyboard/keyboard-controller.js +5 -5
  416. package/dist/collection/utils/keyboard/keyboard.js +1 -1
  417. package/dist/collection/utils/logging/index.js +4 -23
  418. package/dist/collection/utils/menu-controller/index.js +2 -1
  419. package/dist/collection/utils/native/haptic.js +3 -2
  420. package/dist/collection/utils/native/keyboard.js +2 -2
  421. package/dist/collection/utils/native/status-bar.js +1 -1
  422. package/dist/collection/utils/overlays.js +23 -38
  423. package/dist/collection/utils/platform.js +5 -4
  424. package/dist/collection/utils/rtl/dir.js +1 -1
  425. package/dist/collection/utils/sanitization/index.js +20 -276
  426. package/dist/collection/utils/slot-mutation-controller.js +2 -1
  427. package/dist/collection/utils/test/playwright/apply-keyboard-focus.js +1 -1
  428. package/dist/collection/utils/test/playwright/drag-element.js +3 -2
  429. package/dist/collection/utils/test/playwright/generator.js +4 -3
  430. package/dist/collection/utils/test/playwright/page/event-spy.js +12 -11
  431. package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -4
  432. package/dist/collection/utils/test/playwright/page/utils/set-content.js +1 -1
  433. package/dist/collection/utils/test/playwright/page/utils/set-ion-viewport.js +3 -2
  434. package/dist/collection/utils/test/press-keys.js +17 -10
  435. package/dist/collection/utils/theme.js +1 -6
  436. package/dist/collection/utils/transition/ios.transition.js +13 -9
  437. package/dist/collection/utils/transition/md.transition.js +4 -3
  438. package/dist/docs.json +1256 -556
  439. package/dist/esm/{animation-CGFdmGk9.js → animation-DLJpuoEz.js} +4 -4
  440. package/dist/esm/{app-globals-CYmMeGdU.js → app-globals-D0C5S4hU.js} +1 -1
  441. package/dist/esm/{button-active--80YqSHA.js → button-active-BSpTQmS9.js} +3 -3
  442. package/dist/esm/config-DQCONYYp.js +195 -0
  443. package/dist/esm/{dir-B-FxiyeI.js → dir-C53feagD.js} +1 -1
  444. package/dist/esm/{format-Dcwga61t.js → format-CAmvpAez.js} +31 -41
  445. package/dist/esm/{framework-delegate--ajhSeKH.js → framework-delegate-FnPGymXL.js} +7 -5
  446. package/dist/esm/{gesture-controller-TXPDHL13.js → gesture-controller-BTEOs1at.js} +8 -15
  447. package/dist/esm/{haptic-Cq4UAeka.js → haptic-DzAMWJuk.js} +3 -2
  448. package/dist/esm/{hardware-back-button-gLJHMX_F.js → hardware-back-button-B93Gru0Y.js} +4 -4
  449. package/dist/esm/{helpers-DexiPLIC.js → helpers-HEqiOzXb.js} +3 -3
  450. package/dist/esm/{index-BCgUwrV0.js → index-BRHzoo00.js} +2 -2
  451. package/dist/esm/{index-8s8kZKJ7.js → index-B_dQk_WE.js} +5 -5
  452. package/dist/esm/{index-DppOcPFQ.js → index-CfgBF1SE.js} +4 -10
  453. package/dist/esm/{index-BvabGprD.js → index-DV3sJJW8.js} +2 -2
  454. package/dist/esm/{index-_Za5VB9w.js → index-Dw-wN0Ja.js} +2 -2
  455. package/dist/esm/{index-CumkqGQF.js → index-Q6UPU0Ay.js} +7 -6
  456. package/dist/esm/{index-ChhhtsGZ.js → index-tcQvqkiX.js} +15 -32
  457. package/dist/esm/index.js +15 -16
  458. package/dist/esm/{input-shims-BB0AKb_k.js → input-shims-LXhI7LEx.js} +11 -9
  459. package/dist/esm/input.utils-Y6NgW8bw.js +147 -0
  460. package/dist/esm/ion-accordion_2.entry.js +340 -368
  461. package/dist/esm/ion-action-sheet.entry.js +76 -187
  462. package/dist/esm/ion-alert.entry.js +110 -272
  463. package/dist/esm/ion-app_8.entry.js +190 -307
  464. package/dist/esm/ion-avatar_3.entry.js +4 -10
  465. package/dist/esm/ion-back-button.entry.js +23 -47
  466. package/dist/esm/ion-backdrop.entry.js +14 -18
  467. package/dist/esm/ion-breadcrumb_2.entry.js +121 -199
  468. package/dist/esm/ion-button_2.entry.js +66 -138
  469. package/dist/esm/ion-card_5.entry.js +30 -82
  470. package/dist/esm/ion-checkbox.entry.js +101 -152
  471. package/dist/esm/ion-chip.entry.js +11 -17
  472. package/dist/esm/ion-col_3.entry.js +10 -134
  473. package/dist/esm/ion-datetime-button.entry.js +241 -253
  474. package/dist/esm/ion-datetime_3.entry.js +3163 -0
  475. package/dist/esm/ion-fab_3.entry.js +81 -139
  476. package/dist/esm/ion-img.entry.js +12 -34
  477. package/dist/esm/ion-infinite-scroll_2.entry.js +71 -99
  478. package/dist/esm/ion-input-otp.entry.js +372 -435
  479. package/dist/esm/ion-input-password-toggle.entry.js +22 -36
  480. package/dist/esm/ion-input.entry.js +209 -341
  481. package/dist/esm/ion-item-option_3.entry.js +54 -94
  482. package/dist/esm/ion-item_8.entry.js +92 -191
  483. package/dist/esm/ion-loading.entry.js +59 -145
  484. package/dist/esm/ion-menu_3.entry.js +106 -168
  485. package/dist/esm/ion-modal.entry.js +261 -455
  486. package/dist/esm/ion-nav_2.entry.js +158 -101
  487. package/dist/esm/ion-picker-column-option.entry.js +33 -37
  488. package/dist/esm/ion-picker-column.entry.js +405 -417
  489. package/dist/esm/ion-picker.entry.js +392 -401
  490. package/dist/esm/ion-popover.entry.js +205 -319
  491. package/dist/esm/ion-progress-bar.entry.js +25 -31
  492. package/dist/esm/ion-radio_2.entry.js +134 -207
  493. package/dist/esm/ion-range.entry.js +245 -302
  494. package/dist/esm/ion-refresher_2.entry.js +91 -163
  495. package/dist/esm/ion-reorder_2.entry.js +23 -53
  496. package/dist/esm/ion-ripple-effect.entry.js +14 -14
  497. package/dist/esm/ion-route_4.entry.js +71 -175
  498. package/dist/esm/ion-searchbar.entry.js +200 -291
  499. package/dist/esm/ion-segment-content.entry.js +2 -2
  500. package/dist/esm/ion-segment-view.entry.js +17 -28
  501. package/dist/esm/ion-segment_2.entry.js +126 -169
  502. package/dist/esm/ion-select-modal.entry.js +48 -104
  503. package/dist/esm/ion-select_3.entry.js +260 -787
  504. package/dist/esm/ion-spinner.entry.js +10 -24
  505. package/dist/esm/ion-split-pane.entry.js +16 -29
  506. package/dist/esm/ion-tab-bar_2.entry.js +41 -100
  507. package/dist/esm/ion-tab_2.entry.js +27 -53
  508. package/dist/esm/ion-text.entry.js +5 -11
  509. package/dist/esm/ion-textarea.entry.js +187 -295
  510. package/dist/esm/ion-toast.entry.js +116 -235
  511. package/dist/esm/ion-toggle.entry.js +122 -175
  512. package/dist/esm/{ionic-global-BVB7BrLT.js → ionic-global-Cp_eT4sZ.js} +8 -13
  513. package/dist/esm/ionic.js +5 -5
  514. package/dist/esm/{ios.transition-BdhybwLl.js → ios.transition-ClFrsIrS.js} +17 -13
  515. package/dist/esm/{item-multiple-inputs-rU8VaNNg.js → item-multiple-inputs-DlNuqNJm.js} +1 -1
  516. package/dist/esm/{keyboard-DAF8GNJ9.js → keyboard-CUw4ekVy.js} +2 -2
  517. package/dist/esm/{keyboard-controller-DEwoa1ev.js → keyboard-controller-BaaVITYt.js} +6 -6
  518. package/dist/esm/{keyboard-Cj8mLJeq.js → keyboard-ywgs5efA.js} +2 -2
  519. package/dist/esm/loader.js +5 -5
  520. package/dist/esm/{md.transition-B5lqKGCs.js → md.transition-D0msQmzI.js} +8 -7
  521. package/dist/esm/notch-controller-DKDjU_O7.js +153 -0
  522. package/dist/esm/{overlays-CjWwtvf1.js → overlays-Dg0q2_tJ.js} +33 -48
  523. package/dist/esm/{status-tap-DpLhkDWs.js → status-tap-vO-6s4Yp.js} +3 -3
  524. package/dist/esm/{swipe-back-cz4-lyG3.js → swipe-back-DQ1q5MgD.js} +5 -5
  525. package/dist/esm/{theme-byZM6qHV.js → theme-DiVJyqlX.js} +1 -6
  526. package/dist/html.html-data.json +80 -52
  527. package/dist/ionic/index.esm.js +1 -1
  528. package/dist/ionic/ionic.esm.js +1 -1
  529. package/dist/ionic/p-01f81ea5.entry.js +4 -0
  530. package/dist/ionic/p-06c232a4.entry.js +4 -0
  531. package/dist/ionic/p-0caa922c.entry.js +4 -0
  532. package/dist/ionic/p-0dc33652.entry.js +4 -0
  533. package/dist/ionic/p-0fa9c382.entry.js +4 -0
  534. package/dist/ionic/p-10e833ef.entry.js +4 -0
  535. package/dist/ionic/p-21eb76d5.entry.js +4 -0
  536. package/dist/ionic/p-27d30585.entry.js +4 -0
  537. package/dist/ionic/p-2a05aa64.entry.js +4 -0
  538. package/dist/ionic/p-2b204c59.entry.js +4 -0
  539. package/dist/ionic/p-2bb2cb18.entry.js +4 -0
  540. package/dist/ionic/p-2fa58e80.entry.js +4 -0
  541. package/dist/ionic/p-3353c229.entry.js +4 -0
  542. package/dist/ionic/p-34586ead.entry.js +4 -0
  543. package/dist/ionic/p-37e720da.entry.js +4 -0
  544. package/dist/ionic/p-390ca786.entry.js +4 -0
  545. package/dist/ionic/p-3ae5f277.entry.js +4 -0
  546. package/dist/ionic/p-4654ae1c.entry.js +4 -0
  547. package/dist/ionic/p-4745f534.entry.js +4 -0
  548. package/dist/ionic/p-4858af1f.entry.js +4 -0
  549. package/dist/ionic/p-4baa5b82.entry.js +4 -0
  550. package/dist/ionic/p-4e92a11f.entry.js +4 -0
  551. package/dist/ionic/p-50e1194a.entry.js +4 -0
  552. package/dist/ionic/p-5d1da0a2.entry.js +4 -0
  553. package/dist/ionic/p-5e2f73ee.entry.js +4 -0
  554. package/dist/ionic/p-5eb8e86d.entry.js +4 -0
  555. package/dist/ionic/p-65ebdf1b.entry.js +4 -0
  556. package/dist/ionic/p-696bdcf6.entry.js +4 -0
  557. package/dist/ionic/p-746fa988.entry.js +4 -0
  558. package/dist/ionic/p-75dc25ba.entry.js +4 -0
  559. package/dist/ionic/p-7c319341.entry.js +4 -0
  560. package/dist/ionic/p-829367ed.entry.js +4 -0
  561. package/dist/ionic/p-84d5ce05.entry.js +4 -0
  562. package/dist/ionic/p-874b4bd8.entry.js +4 -0
  563. package/dist/ionic/p-8eb8ee76.entry.js +4 -0
  564. package/dist/ionic/p-9eeaBrnk.js +4 -0
  565. package/dist/ionic/p-9f9db3a2.entry.js +4 -0
  566. package/dist/ionic/p-9fa3c405.entry.js +4 -0
  567. package/dist/ionic/p-BGqMS-oh.js +4 -0
  568. package/dist/ionic/p-BTEOs1at.js +4 -0
  569. package/dist/ionic/p-BUFIpxKM.js +4 -0
  570. package/dist/ionic/p-C0eMdTCW.js +4 -0
  571. package/dist/ionic/p-C53feagD.js +4 -0
  572. package/dist/ionic/p-CFlfIb2g.js +4 -0
  573. package/dist/ionic/p-CKvCXMs9.js +4 -0
  574. package/dist/ionic/p-Cl0B-RWe.js +4 -0
  575. package/dist/ionic/p-CmcFnK-B.js +4 -0
  576. package/dist/ionic/p-CtWGkNnJ.js +4 -0
  577. package/dist/ionic/p-Cx3IXROA.js +4 -0
  578. package/dist/ionic/p-D-3ycHmd.js +4 -0
  579. package/dist/ionic/p-D13Eaw-8.js +4 -0
  580. package/dist/ionic/p-D4uTWt4-.js +4 -0
  581. package/dist/ionic/p-DC3RagnA.js +4 -0
  582. package/dist/ionic/{p-CKUuSnDR.js → p-DIuEbVLu.js} +1 -1
  583. package/dist/ionic/{p-BvabGprD.js → p-DV3sJJW8.js} +1 -1
  584. package/dist/ionic/p-DiVJyqlX.js +4 -0
  585. package/dist/ionic/p-DoJvtrbw.js +4 -0
  586. package/dist/ionic/p-DqN5EA2O.js +4 -0
  587. package/dist/ionic/p-DzWaWHGc.js +4 -0
  588. package/dist/ionic/{p-I3In7hMC.js → p-KjNvRoEp.js} +1 -1
  589. package/dist/ionic/p-Nqf6uvGh.js +4 -0
  590. package/dist/ionic/p-SNAkTDfm.js +4 -0
  591. package/dist/ionic/p-VAemlbDS.js +4 -0
  592. package/dist/ionic/p-a3bdcae6.entry.js +4 -0
  593. package/dist/ionic/p-aaeedb6b.entry.js +4 -0
  594. package/dist/ionic/p-af55a72f.entry.js +4 -0
  595. package/dist/ionic/p-b2020591.entry.js +4 -0
  596. package/dist/ionic/p-b9fadbfe.entry.js +4 -0
  597. package/dist/ionic/{p-CQ_4TirR.js → p-biz8zWmJ.js} +1 -1
  598. package/dist/ionic/p-c0fb8edd.entry.js +4 -0
  599. package/dist/ionic/p-c38b648e.entry.js +4 -0
  600. package/dist/ionic/p-c4d8641b.entry.js +4 -0
  601. package/dist/ionic/{p-40424a88.entry.js → p-c6e49f3f.entry.js} +1 -1
  602. package/dist/ionic/p-ca2ab74d.entry.js +4 -0
  603. package/dist/ionic/p-d889ff6d.entry.js +4 -0
  604. package/dist/ionic/p-dfa8d673.entry.js +4 -0
  605. package/dist/ionic/p-ea56626d.entry.js +4 -0
  606. package/dist/ionic/p-ef4c3bee.entry.js +4 -0
  607. package/dist/ionic/p-f386f6ae.entry.js +4 -0
  608. package/dist/ionic/p-mjKAFv89.js +4 -0
  609. package/dist/ionic/p-tcQvqkiX.js +5 -0
  610. package/dist/ionic/p-uWtqTrG8.js +4 -0
  611. package/dist/ionic/p-viFHDgRs.js +4 -0
  612. package/dist/ionic/p-xWb6fgfq.js +4 -0
  613. package/dist/types/components/img/img.d.ts +0 -2
  614. package/dist/types/components/input/input.d.ts +6 -12
  615. package/dist/types/components/modal/modal-interface.d.ts +0 -9
  616. package/dist/types/components/modal/modal.d.ts +4 -11
  617. package/dist/types/components/nav/nav-interface.d.ts +1 -0
  618. package/dist/types/components/nav/nav.d.ts +22 -2
  619. package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +5 -0
  620. package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +5 -0
  621. package/dist/types/components/picker-legacy/picker-interface.d.ts +52 -0
  622. package/dist/types/components/picker-legacy/picker.d.ts +158 -0
  623. package/dist/types/components/picker-legacy-column/picker-column.d.ts +46 -0
  624. package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +9 -0
  625. package/dist/types/components/range/range.d.ts +1 -0
  626. package/dist/types/components/route/route.d.ts +1 -1
  627. package/dist/types/components/router-outlet/router-outlet.d.ts +0 -7
  628. package/dist/types/components/searchbar/searchbar.d.ts +1 -1
  629. package/dist/types/components/select/select-interface.d.ts +0 -31
  630. package/dist/types/components/select/select.d.ts +6 -30
  631. package/dist/types/components/select-option/select-option.d.ts +1 -42
  632. package/dist/types/components/textarea/textarea.d.ts +5 -12
  633. package/dist/types/components.d.ts +311 -74
  634. package/dist/types/index.d.ts +1 -1
  635. package/dist/types/interface.d.ts +1 -0
  636. package/dist/types/utils/config.d.ts +8 -1
  637. package/dist/types/utils/forms/index.d.ts +0 -1
  638. package/dist/types/utils/logging/index.d.ts +1 -2
  639. package/dist/types/utils/overlays.d.ts +9 -11
  640. package/dist/types/utils/sanitization/index.d.ts +2 -58
  641. package/dist/types/utils/test/playwright/playwright-page.d.ts +1 -1
  642. package/dist/types/utils/test/playwright/testExpect.d.ts +1 -1
  643. package/hydrate/index.js +7322 -10670
  644. package/hydrate/index.mjs +7322 -10670
  645. package/package.json +12 -55
  646. package/components/p--m5cCjbK.js +0 -4
  647. package/components/p-8FN7p701.js +0 -4
  648. package/components/p-B-FxiyeI.js +0 -4
  649. package/components/p-B4uHHhPK.js +0 -4
  650. package/components/p-BMPN55of.js +0 -4
  651. package/components/p-BMS4t-kJ.js +0 -4
  652. package/components/p-BOvLNVKq.js +0 -4
  653. package/components/p-BSQPZ79H.js +0 -4
  654. package/components/p-BWBigMsI.js +0 -4
  655. package/components/p-BZ4-QTes.js +0 -4
  656. package/components/p-BhamHSw3.js +0 -4
  657. package/components/p-BjluhQMI.js +0 -4
  658. package/components/p-BlsIikdZ.js +0 -4
  659. package/components/p-Blug1Vxu.js +0 -4
  660. package/components/p-BqPNzJf6.js +0 -4
  661. package/components/p-C5KYjZWD.js +0 -4
  662. package/components/p-C91npEel.js +0 -4
  663. package/components/p-C9BGR5fy.js +0 -4
  664. package/components/p-CD4fmpem.js +0 -4
  665. package/components/p-CEW4RXZO.js +0 -4
  666. package/components/p-CKhiNOEg.js +0 -4
  667. package/components/p-CO2zzh3W.js +0 -4
  668. package/components/p-CVb3x_r3.js +0 -4
  669. package/components/p-CWLrHG8Y.js +0 -4
  670. package/components/p-CbhUdtjf.js +0 -4
  671. package/components/p-CejmQs3h.js +0 -4
  672. package/components/p-CfnNZz_d.js +0 -4
  673. package/components/p-CmKf4pgI.js +0 -4
  674. package/components/p-Cs5f-uOS.js +0 -4
  675. package/components/p-D7-vHX0A.js +0 -4
  676. package/components/p-DKrhJJV0.js +0 -4
  677. package/components/p-DRfgH82D.js +0 -4
  678. package/components/p-DSzSbVP2.js +0 -4
  679. package/components/p-DVKS-ovH.js +0 -4
  680. package/components/p-DWCzVL3Y.js +0 -4
  681. package/components/p-Dd8ajo9a.js +0 -4
  682. package/components/p-DdnhY_oj.js +0 -4
  683. package/components/p-DgZOZQjJ.js +0 -4
  684. package/components/p-Dmd2xqCe.js +0 -4
  685. package/components/p-G0TxqHfe.js +0 -4
  686. package/components/p-GG5GhznE.js +0 -4
  687. package/components/p-LXu5-6Ti.js +0 -4
  688. package/components/p-TXPDHL13.js +0 -4
  689. package/components/p-UQSiXX2Z.js +0 -4
  690. package/components/p-UuPYCOZE.js +0 -4
  691. package/components/p-WeeS7GvC.js +0 -4
  692. package/components/p-_IKFD3ID.js +0 -4
  693. package/components/p-byZM6qHV.js +0 -4
  694. package/components/p-hh7qIC-X.js +0 -4
  695. package/components/p-idq4JFo2.js +0 -4
  696. package/components/p-qT1szVjw.js +0 -4
  697. package/components/p-wzAhIh03.js +0 -4
  698. package/components/p-ypuYdSDB.js +0 -4
  699. package/components/p-yuj4Nkm_.js +0 -4
  700. package/dist/cjs/config-CjUbvdPW.js +0 -36
  701. package/dist/cjs/index-B7zJsYWS.js +0 -429
  702. package/dist/cjs/input.utils-BZdMWVrt.js +0 -35
  703. package/dist/cjs/ion-datetime.cjs.entry.js +0 -2770
  704. package/dist/cjs/overlay-control-label-D2sdL2O8.js +0 -50
  705. package/dist/cjs/select-option-render-pULCGldr.js +0 -123
  706. package/dist/cjs/slot-mutation-controller-CgTGFqlW.js +0 -397
  707. package/dist/collection/utils/forms/start-container-controller.js +0 -132
  708. package/dist/collection/utils/overlay-control-label.js +0 -45
  709. package/dist/collection/utils/select-option-render.js +0 -118
  710. package/dist/esm/config-DWCzVL3Y.js +0 -32
  711. package/dist/esm/index-CKM1DdGm.js +0 -424
  712. package/dist/esm/input.utils-B1ValN_N.js +0 -33
  713. package/dist/esm/ion-datetime.entry.js +0 -2768
  714. package/dist/esm/overlay-control-label-BSQPZ79H.js +0 -47
  715. package/dist/esm/select-option-render-C4m76VGH.js +0 -121
  716. package/dist/esm/slot-mutation-controller-u741eD3Z.js +0 -393
  717. package/dist/ionic/p-06533d51.entry.js +0 -4
  718. package/dist/ionic/p-08443c08.entry.js +0 -4
  719. package/dist/ionic/p-0FNc80PN.js +0 -4
  720. package/dist/ionic/p-141f5b47.entry.js +0 -4
  721. package/dist/ionic/p-14a5e8f5.entry.js +0 -4
  722. package/dist/ionic/p-19269e04.entry.js +0 -4
  723. package/dist/ionic/p-19abbc33.entry.js +0 -4
  724. package/dist/ionic/p-1edf0573.entry.js +0 -4
  725. package/dist/ionic/p-4204184c.entry.js +0 -4
  726. package/dist/ionic/p-4bc3ecdb.entry.js +0 -4
  727. package/dist/ionic/p-4eOQC00Z.js +0 -4
  728. package/dist/ionic/p-4eed9ca1.entry.js +0 -4
  729. package/dist/ionic/p-53bac1c9.entry.js +0 -4
  730. package/dist/ionic/p-5506caeb.entry.js +0 -4
  731. package/dist/ionic/p-5521dc1f.entry.js +0 -4
  732. package/dist/ionic/p-5993a77f.entry.js +0 -4
  733. package/dist/ionic/p-5c3626de.entry.js +0 -4
  734. package/dist/ionic/p-5d3b411c.entry.js +0 -4
  735. package/dist/ionic/p-60576951.entry.js +0 -4
  736. package/dist/ionic/p-7116e558.entry.js +0 -4
  737. package/dist/ionic/p-711a8319.entry.js +0 -4
  738. package/dist/ionic/p-71419a55.entry.js +0 -4
  739. package/dist/ionic/p-79325ffe.entry.js +0 -4
  740. package/dist/ionic/p-7bb3e957.entry.js +0 -4
  741. package/dist/ionic/p-82525fb0.entry.js +0 -4
  742. package/dist/ionic/p-84a38904.entry.js +0 -4
  743. package/dist/ionic/p-865fa114.entry.js +0 -4
  744. package/dist/ionic/p-8e1d9e3a.entry.js +0 -4
  745. package/dist/ionic/p-8f204f1e.entry.js +0 -4
  746. package/dist/ionic/p-9055e897.entry.js +0 -4
  747. package/dist/ionic/p-9658e083.entry.js +0 -4
  748. package/dist/ionic/p-988baee1.entry.js +0 -4
  749. package/dist/ionic/p-9nmHvEvw.js +0 -4
  750. package/dist/ionic/p-B-FxiyeI.js +0 -4
  751. package/dist/ionic/p-BB0LlG4y.js +0 -4
  752. package/dist/ionic/p-BMPN55of.js +0 -4
  753. package/dist/ionic/p-BQ8oNV0v.js +0 -4
  754. package/dist/ionic/p-BSQPZ79H.js +0 -4
  755. package/dist/ionic/p-BhamHSw3.js +0 -4
  756. package/dist/ionic/p-BjvtSsVI.js +0 -4
  757. package/dist/ionic/p-BkfAWuv6.js +0 -4
  758. package/dist/ionic/p-BwIp10KV.js +0 -4
  759. package/dist/ionic/p-C-94tAim.js +0 -4
  760. package/dist/ionic/p-C6eME8Ey.js +0 -4
  761. package/dist/ionic/p-CMRtMbJc.js +0 -4
  762. package/dist/ionic/p-CPcPmkGv.js +0 -4
  763. package/dist/ionic/p-CaRuIadB.js +0 -4
  764. package/dist/ionic/p-Cdjxf_yg.js +0 -4
  765. package/dist/ionic/p-ChhhtsGZ.js +0 -5
  766. package/dist/ionic/p-CmKf4pgI.js +0 -4
  767. package/dist/ionic/p-D5t_-oMk.js +0 -4
  768. package/dist/ionic/p-D94b61er.js +0 -4
  769. package/dist/ionic/p-DAztxQR0.js +0 -4
  770. package/dist/ionic/p-DCI3rXQo.js +0 -4
  771. package/dist/ionic/p-DDhtUaaA.js +0 -4
  772. package/dist/ionic/p-DWCzVL3Y.js +0 -4
  773. package/dist/ionic/p-DkUB-ROc.js +0 -4
  774. package/dist/ionic/p-Dn0mqQ_R.js +0 -4
  775. package/dist/ionic/p-T71k3C35.js +0 -4
  776. package/dist/ionic/p-TXPDHL13.js +0 -4
  777. package/dist/ionic/p-a71232d6.entry.js +0 -4
  778. package/dist/ionic/p-a73d8742.entry.js +0 -4
  779. package/dist/ionic/p-a8421d18.entry.js +0 -4
  780. package/dist/ionic/p-a8c2c343.entry.js +0 -4
  781. package/dist/ionic/p-acf0a6af.entry.js +0 -4
  782. package/dist/ionic/p-ad98e3ff.entry.js +0 -4
  783. package/dist/ionic/p-af5166f5.entry.js +0 -4
  784. package/dist/ionic/p-bc2bad5f.entry.js +0 -4
  785. package/dist/ionic/p-be08d500.entry.js +0 -4
  786. package/dist/ionic/p-be9a4f51.entry.js +0 -4
  787. package/dist/ionic/p-byZM6qHV.js +0 -4
  788. package/dist/ionic/p-ccc5044d.entry.js +0 -4
  789. package/dist/ionic/p-ce32912b.entry.js +0 -4
  790. package/dist/ionic/p-ded69ceb.entry.js +0 -4
  791. package/dist/ionic/p-e0c6e31e.entry.js +0 -4
  792. package/dist/ionic/p-e1e5b507.entry.js +0 -4
  793. package/dist/ionic/p-e8c3e08a.entry.js +0 -4
  794. package/dist/ionic/p-ed5d540d.entry.js +0 -4
  795. package/dist/ionic/p-f046aa37.entry.js +0 -4
  796. package/dist/ionic/p-f2802440.entry.js +0 -4
  797. package/dist/ionic/p-f402f5a4.entry.js +0 -4
  798. package/dist/ionic/p-fe1bfbcf.entry.js +0 -4
  799. package/dist/types/utils/forms/start-container-controller.d.ts +0 -34
  800. package/dist/types/utils/overlay-control-label.d.ts +0 -32
  801. package/dist/types/utils/select-option-render.d.ts +0 -53
  802. /package/components/{p-LpMHEu3v.js → p-CO7fmmxt.js} +0 -0
@@ -12,22 +12,186 @@ import { getIonMode } from "../../global/ionic-global";
12
12
  * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
13
13
  */
14
14
  export class Searchbar {
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;
15
+ constructor() {
16
+ this.isCancelVisible = false;
17
+ this.shouldAlignLeft = true;
18
+ this.inputId = `ion-searchbar-${searchbarIds++}`;
19
+ this.inheritedAttributes = {};
20
+ this.focused = false;
21
+ this.noAnimate = true;
22
+ /**
23
+ * If `true`, enable searchbar animation.
24
+ */
25
+ this.animated = false;
26
+ /**
27
+ * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user.
28
+ * Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
29
+ */
30
+ this.autocapitalize = 'off';
31
+ /**
32
+ * Set the input's autocomplete property.
33
+ */
34
+ this.autocomplete = 'off';
35
+ /**
36
+ * Set the input's autocorrect property.
37
+ */
38
+ this.autocorrect = 'off';
39
+ /**
40
+ * Set the cancel button icon. Only applies to `md` mode.
41
+ * Defaults to `arrow-back-sharp`.
42
+ */
43
+ this.cancelButtonIcon = config.get('backButtonIcon', arrowBackSharp);
44
+ /**
45
+ * Set the cancel button text. Only applies to `ios` mode.
46
+ */
47
+ this.cancelButtonText = 'Cancel';
48
+ /**
49
+ * If `true`, the user cannot interact with the input.
50
+ */
51
+ this.disabled = false;
52
+ /**
53
+ * If used in a form, set the name of the control, which is submitted with the form data.
54
+ */
55
+ this.name = this.inputId;
56
+ /**
57
+ * Set the input's placeholder.
58
+ * `placeholder` can accept either plaintext or HTML as a string.
59
+ * To display characters normally reserved for HTML, they
60
+ * must be escaped. For example `<Ionic>` would become
61
+ * `&lt;Ionic&gt;`
62
+ *
63
+ * For more information: [Security Documentation](https://ionicframework.com/docs/faq/security)
64
+ */
65
+ this.placeholder = 'Search';
66
+ /**
67
+ * Sets the behavior for the cancel button. Defaults to `"never"`.
68
+ * Setting to `"focus"` shows the cancel button on focus.
69
+ * Setting to `"never"` hides the cancel button.
70
+ * Setting to `"always"` shows the cancel button regardless
71
+ * of focus state.
72
+ */
73
+ this.showCancelButton = 'never';
74
+ /**
75
+ * Sets the behavior for the clear button. Defaults to `"focus"`.
76
+ * Setting to `"focus"` shows the clear button on focus if the
77
+ * input is not empty.
78
+ * Setting to `"never"` hides the clear button.
79
+ * Setting to `"always"` shows the clear button regardless
80
+ * of focus state, but only if the input is not empty.
81
+ */
82
+ this.showClearButton = 'always';
83
+ /**
84
+ * If `true`, enable spellcheck on the input.
85
+ */
86
+ this.spellcheck = false;
87
+ /**
88
+ * Set the type of the input.
89
+ */
90
+ this.type = 'search';
91
+ /**
92
+ * the value of the searchbar.
93
+ */
94
+ this.value = '';
95
+ /**
96
+ * Clears the input field and triggers the control change.
97
+ */
98
+ this.onClearInput = async (shouldFocus) => {
99
+ if (this.clearTimeout) {
100
+ clearTimeout(this.clearTimeout);
101
+ }
102
+ this.ionClear.emit();
103
+ return new Promise((resolve) => {
104
+ // setTimeout() fixes https://github.com/ionic-team/ionic-framework/issues/7527
105
+ // wait for 4 frames
106
+ this.clearTimeout = setTimeout(() => {
107
+ const value = this.getValue();
108
+ if (value !== '') {
109
+ this.value = '';
110
+ this.emitInputChange();
111
+ /**
112
+ * When tapping clear button
113
+ * ensure input is focused after
114
+ * clearing input so users
115
+ * can quickly start typing.
116
+ */
117
+ if (shouldFocus && !this.focused) {
118
+ this.setFocus();
119
+ /**
120
+ * The setFocus call above will clear focusedValue,
121
+ * but ionChange will never have gotten a chance to
122
+ * fire. Manually revert focusedValue so onBlur can
123
+ * compare against what was in the box before the clear.
124
+ */
125
+ this.focusedValue = value;
126
+ }
127
+ }
128
+ resolve();
129
+ }, 16 * 4);
130
+ });
131
+ };
132
+ /**
133
+ * Clears the input field and tells the input to blur since
134
+ * the clearInput function doesn't want the input to blur
135
+ * then calls the custom cancel function if the user passed one in.
136
+ */
137
+ this.onCancelSearchbar = async (ev) => {
138
+ if (ev) {
139
+ ev.preventDefault();
140
+ ev.stopPropagation();
141
+ }
142
+ this.ionCancel.emit();
143
+ // get cached values before clearing the input
144
+ const value = this.getValue();
145
+ const focused = this.focused;
146
+ await this.onClearInput();
147
+ /**
148
+ * If there used to be something in the box, and we weren't focused
149
+ * beforehand (meaning no blur fired that would already handle this),
150
+ * manually fire ionChange.
151
+ */
152
+ if (value && !focused) {
153
+ this.emitValueChange(ev);
154
+ }
155
+ if (this.nativeInput) {
156
+ this.nativeInput.blur();
157
+ }
158
+ };
159
+ /**
160
+ * Update the Searchbar input value when the input changes
161
+ */
162
+ this.onInput = (ev) => {
163
+ const input = ev.target;
164
+ if (input) {
165
+ this.value = input.value;
166
+ }
167
+ this.emitInputChange(ev);
168
+ };
169
+ this.onChange = (ev) => {
170
+ this.emitValueChange(ev);
171
+ };
172
+ /**
173
+ * Sets the Searchbar to not focused and checks if it should align left
174
+ * based on whether there is a value in the searchbar or not.
175
+ */
176
+ this.onBlur = (ev) => {
177
+ this.focused = false;
178
+ this.ionBlur.emit();
179
+ this.positionElements();
180
+ if (this.focusedValue !== this.value) {
181
+ this.emitValueChange(ev);
182
+ }
183
+ this.focusedValue = undefined;
184
+ };
185
+ /**
186
+ * Sets the Searchbar to focused and active on input focus.
187
+ */
188
+ this.onFocus = () => {
189
+ this.focused = true;
190
+ this.focusedValue = this.value;
191
+ this.ionFocus.emit();
192
+ this.positionElements();
193
+ };
194
+ }
31
195
  /**
32
196
  * lang and dir are globally enumerated attributes.
33
197
  * As a result, creating these as properties
@@ -36,177 +200,21 @@ export class Searchbar {
36
200
  * to the inner `<input>` element.
37
201
  */
38
202
  onLangChanged(newValue) {
39
- this.inheritedAttributes = {
40
- ...this.inheritedAttributes,
41
- lang: newValue,
42
- };
203
+ this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { lang: newValue });
43
204
  forceUpdate(this);
44
205
  }
45
206
  onDirChanged(newValue) {
46
- this.inheritedAttributes = {
47
- ...this.inheritedAttributes,
48
- dir: newValue,
49
- };
207
+ this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { dir: newValue });
50
208
  forceUpdate(this);
51
209
  }
52
- /**
53
- * The color to use from your application's color palette.
54
- * Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
55
- * For more information on colors, see [theming](/docs/theming/basics).
56
- */
57
- color;
58
- /**
59
- * If `true`, enable searchbar animation.
60
- */
61
- animated = false;
62
- /**
63
- * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user.
64
- * Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
65
- */
66
- autocapitalize = 'off';
67
- /**
68
- * Set the input's autocomplete property.
69
- */
70
- autocomplete = 'off';
71
- /**
72
- * Set the input's autocorrect property.
73
- */
74
- autocorrect = false;
75
- /**
76
- * Set the cancel button icon. Only applies to `md` mode.
77
- * Defaults to `arrow-back-sharp`.
78
- */
79
- cancelButtonIcon = config.get('backButtonIcon', arrowBackSharp);
80
- /**
81
- * Set the cancel button text. Only applies to `ios` mode.
82
- */
83
- cancelButtonText = 'Cancel';
84
- /**
85
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
86
- */
87
- clearIcon;
88
- /**
89
- * Set the amount of time, in milliseconds, to wait to trigger the `ionInput` event after each keystroke.
90
- */
91
- debounce;
92
210
  debounceChanged() {
93
211
  const { ionInput, debounce, originalIonInput } = this;
94
212
  /**
95
213
  * If debounce is undefined, we have to manually revert the ionInput emitter in case
96
214
  * debounce used to be set to a number. Otherwise, the event would stay debounced.
97
215
  */
98
- this.ionInput = debounce === undefined ? originalIonInput ?? ionInput : debounceEvent(ionInput, debounce);
216
+ this.ionInput = debounce === undefined ? originalIonInput !== null && originalIonInput !== void 0 ? originalIonInput : ionInput : debounceEvent(ionInput, debounce);
99
217
  }
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;
210
218
  valueChanged() {
211
219
  const inputEl = this.nativeInput;
212
220
  const value = this.getValue();
@@ -224,9 +232,7 @@ export class Searchbar {
224
232
  this.emitStyle();
225
233
  }
226
234
  componentWillLoad() {
227
- this.inheritedAttributes = {
228
- ...inheritAttributes(this.el, ['lang', 'dir']),
229
- };
235
+ this.inheritedAttributes = Object.assign({}, inheritAttributes(this.el, ['lang', 'dir']));
230
236
  }
231
237
  componentDidLoad() {
232
238
  this.originalIonInput = this.ionInput;
@@ -237,13 +243,14 @@ export class Searchbar {
237
243
  }, 300);
238
244
  }
239
245
  disconnectedCallback() {
246
+ var _a;
240
247
  if (this.loadTimeout) {
241
248
  clearTimeout(this.loadTimeout);
242
249
  }
243
250
  if (this.clearTimeout) {
244
251
  clearTimeout(this.clearTimeout);
245
252
  }
246
- this.searchIconResizeObserver?.disconnect();
253
+ (_a = this.searchIconResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
247
254
  }
248
255
  emitStyle() {
249
256
  this.ionStyle.emit({
@@ -299,105 +306,6 @@ export class Searchbar {
299
306
  const { value } = this;
300
307
  this.ionInput.emit({ value, event });
301
308
  }
302
- /**
303
- * Clears the input field and triggers the control change.
304
- */
305
- onClearInput = async (shouldFocus) => {
306
- if (this.clearTimeout) {
307
- clearTimeout(this.clearTimeout);
308
- }
309
- this.ionClear.emit();
310
- return new Promise((resolve) => {
311
- // setTimeout() fixes https://github.com/ionic-team/ionic-framework/issues/7527
312
- // wait for 4 frames
313
- this.clearTimeout = setTimeout(() => {
314
- const value = this.getValue();
315
- if (value !== '') {
316
- this.value = '';
317
- this.emitInputChange();
318
- /**
319
- * When tapping clear button
320
- * ensure input is focused after
321
- * clearing input so users
322
- * can quickly start typing.
323
- */
324
- if (shouldFocus && !this.focused) {
325
- this.setFocus();
326
- /**
327
- * The setFocus call above will clear focusedValue,
328
- * but ionChange will never have gotten a chance to
329
- * fire. Manually revert focusedValue so onBlur can
330
- * compare against what was in the box before the clear.
331
- */
332
- this.focusedValue = value;
333
- }
334
- }
335
- resolve();
336
- }, 16 * 4);
337
- });
338
- };
339
- /**
340
- * Clears the input field and tells the input to blur since
341
- * the clearInput function doesn't want the input to blur
342
- * then calls the custom cancel function if the user passed one in.
343
- */
344
- onCancelSearchbar = async (ev) => {
345
- if (ev) {
346
- ev.preventDefault();
347
- ev.stopPropagation();
348
- }
349
- this.ionCancel.emit();
350
- // get cached values before clearing the input
351
- const value = this.getValue();
352
- const focused = this.focused;
353
- await this.onClearInput();
354
- /**
355
- * If there used to be something in the box, and we weren't focused
356
- * beforehand (meaning no blur fired that would already handle this),
357
- * manually fire ionChange.
358
- */
359
- if (value && !focused) {
360
- this.emitValueChange(ev);
361
- }
362
- if (this.nativeInput) {
363
- this.nativeInput.blur();
364
- }
365
- };
366
- /**
367
- * Update the Searchbar input value when the input changes
368
- */
369
- onInput = (ev) => {
370
- const input = ev.target;
371
- if (input) {
372
- this.value = input.value;
373
- }
374
- this.emitInputChange(ev);
375
- };
376
- onChange = (ev) => {
377
- this.emitValueChange(ev);
378
- };
379
- /**
380
- * Sets the Searchbar to not focused and checks if it should align left
381
- * based on whether there is a value in the searchbar or not.
382
- */
383
- onBlur = (ev) => {
384
- this.focused = false;
385
- this.ionBlur.emit();
386
- this.positionElements();
387
- if (this.focusedValue !== this.value) {
388
- this.emitValueChange(ev);
389
- }
390
- this.focusedValue = undefined;
391
- };
392
- /**
393
- * Sets the Searchbar to focused and active on input focus.
394
- */
395
- onFocus = () => {
396
- this.focused = true;
397
- this.focusedValue = this.value;
398
- this.ionFocus.emit();
399
- this.positionElements();
400
- };
401
309
  /**
402
310
  * Positions the input search icon, placeholder, and the cancel button
403
311
  * based on the input value and if it is focused. (ios only)
@@ -440,6 +348,7 @@ export class Searchbar {
440
348
  doc.body.appendChild(tempSpan);
441
349
  // Get the width of the span then remove it
442
350
  raf(() => {
351
+ var _a, _b;
443
352
  const textWidth = tempSpan.offsetWidth;
444
353
  tempSpan.remove();
445
354
  // Calculate the input padding
@@ -458,14 +367,15 @@ export class Searchbar {
458
367
  * If it is zero, set up a ResizeObserver and call this function when it observes a width greater than 0.
459
368
  */
460
369
  if (iconWidth === 0) {
461
- this.searchIconResizeObserver?.disconnect();
370
+ (_a = this.searchIconResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
462
371
  this.searchIconResizeObserver = new ResizeObserver((entries) => {
372
+ var _a;
463
373
  if (entries[0].contentRect.width > 0) {
464
- this.searchIconResizeObserver?.disconnect();
374
+ (_a = this.searchIconResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
465
375
  this.positionPlaceholder();
466
376
  }
467
377
  });
468
- this.searchIconResizeObserver?.observe(iconEl);
378
+ (_b = this.searchIconResizeObserver) === null || _b === void 0 ? void 0 : _b.observe(iconEl);
469
379
  return;
470
380
  }
471
381
  const iconLeft = 'calc(50% - ' + (textWidth / 2 + iconWidth + 8) + 'px)';
@@ -549,8 +459,8 @@ export class Searchbar {
549
459
  const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
550
460
  const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
551
461
  const shouldShowCancelButton = this.shouldShowCancelButton();
552
- const cancelButton = this.showCancelButton !== 'never' && (h("button", { key: '47ee586db12684db8b2d16a790976bd247cbbc62', "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: '55e6b556a46e7bba14c2cfe1b58542499d2334ab', "aria-hidden": "true" }, mode === 'md' ? (h("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
553
- return (h(Host, { key: '468d524b52a0d29d840e2c3cdafba46152716b15', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses(this.color, {
462
+ const cancelButton = this.showCancelButton !== 'never' && (h("button", { key: '226b7a676b4819cda4062b8334fa8d4c4cee6f1a', "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: '89adb4efa17a78c973bbd5527cfac91d99ceb9bb', "aria-hidden": "true" }, mode === 'md' ? (h("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
463
+ return (h(Host, { key: '237dd767403dba3cb3d7de8905996e275669da3b', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses(this.color, {
554
464
  [mode]: true,
555
465
  'searchbar-animated': animated,
556
466
  'searchbar-disabled': this.disabled,
@@ -560,14 +470,14 @@ export class Searchbar {
560
470
  'searchbar-has-focus': this.focused,
561
471
  'searchbar-should-show-clear': this.shouldShowClearButton(),
562
472
  'searchbar-should-show-cancel': this.shouldShowCancelButton(),
563
- }) }, h("div", { key: '94378bdfdf883c28941ef770d64347705d6f8345', class: "searchbar-input-container" }, h("input", { key: 'deea2190823bf8652703148d308aa21473605930', "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: '0ecc28496ab545f2064b71b994b4cbf0968c2108', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), h("button", { key: '1bcc77d70eaa08f2ae7fc6173642f114fe387fb7', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
473
+ }) }, h("div", { key: '5b4bdf7280bea710304b6975e76390fe6ceb7417', class: "searchbar-input-container" }, h("input", Object.assign({ key: '01a0820a2cf904aec1c7d84b542ab7918d435632', "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)), mode === 'md' && cancelButton, h("ion-icon", { key: 'cd64973206b1cc59d221112861733b7ee25f0323', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), h("button", { key: '2061fa8449bbc576cf8c5130ea613378ea492944', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
564
474
  /**
565
475
  * This prevents mobile browsers from
566
476
  * blurring the input when the clear
567
477
  * button is activated.
568
478
  */
569
479
  ev.preventDefault();
570
- }, onClick: () => this.onClearInput(true) }, h("ion-icon", { key: 'bbf8d05eb1070a0d34a22236dfaaf11d8dcc06af', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
480
+ }, onClick: () => this.onClearInput(true) }, h("ion-icon", { key: '00df6f7742bff70b1b088d544b8c00e962e7216c', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
571
481
  }
572
482
  static get is() { return "ion-searchbar"; }
573
483
  static get encapsulation() { return "scoped"; }
@@ -679,11 +589,11 @@ export class Searchbar {
679
589
  "defaultValue": "'off'"
680
590
  },
681
591
  "autocorrect": {
682
- "type": "boolean",
592
+ "type": "string",
683
593
  "mutable": false,
684
594
  "complexType": {
685
- "original": "boolean",
686
- "resolved": "boolean",
595
+ "original": "'on' | 'off'",
596
+ "resolved": "\"off\" | \"on\"",
687
597
  "references": {}
688
598
  },
689
599
  "required": false,
@@ -696,7 +606,7 @@ export class Searchbar {
696
606
  "setter": false,
697
607
  "reflect": false,
698
608
  "attribute": "autocorrect",
699
- "defaultValue": "false"
609
+ "defaultValue": "'off'"
700
610
  },
701
611
  "cancelButtonIcon": {
702
612
  "type": "string",