@ionic/core 8.8.19-dev.11786610762.137bbb21 → 8.8.19-nightly.20260814

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 (1139) 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.js +1 -1
  59. package/components/ion-picker-legacy.js +1 -1
  60. package/components/ion-picker.js +1 -1
  61. package/components/ion-popover.js +1 -1
  62. package/components/ion-progress-bar.js +1 -1
  63. package/components/ion-radio-group.js +1 -1
  64. package/components/ion-radio.js +1 -1
  65. package/components/ion-range.js +1 -1
  66. package/components/ion-refresher-content.js +1 -1
  67. package/components/ion-refresher.js +1 -1
  68. package/components/ion-reorder-group.js +1 -1
  69. package/components/ion-reorder.js +1 -1
  70. package/components/ion-ripple-effect.js +1 -1
  71. package/components/ion-route-redirect.js +1 -1
  72. package/components/ion-route.js +1 -1
  73. package/components/ion-router-link.js +1 -1
  74. package/components/ion-router-outlet.js +1 -1
  75. package/components/ion-router.js +1 -1
  76. package/components/ion-row.js +1 -1
  77. package/components/ion-searchbar.js +1 -1
  78. package/components/ion-segment-button.js +1 -1
  79. package/components/ion-segment-content.js +1 -1
  80. package/components/ion-segment-view.js +1 -1
  81. package/components/ion-segment.js +1 -1
  82. package/components/ion-select-modal.js +1 -1
  83. package/components/ion-select-option.js +1 -1
  84. package/components/ion-select-popover.js +1 -1
  85. package/components/ion-select.js +1 -1
  86. package/components/ion-skeleton-text.js +1 -1
  87. package/components/ion-spinner.js +1 -1
  88. package/components/ion-split-pane.js +1 -1
  89. package/components/ion-tab-bar.js +1 -1
  90. package/components/ion-tab-button.js +1 -1
  91. package/components/ion-tab.js +1 -1
  92. package/components/ion-tabs.js +1 -1
  93. package/components/ion-text.js +1 -1
  94. package/components/ion-textarea.js +1 -1
  95. package/components/ion-thumbnail.js +1 -1
  96. package/components/ion-title.js +1 -1
  97. package/components/ion-toast.js +1 -1
  98. package/components/ion-toggle.js +1 -1
  99. package/components/ion-toolbar.js +1 -1
  100. package/components/p--JUspHvy.js +4 -0
  101. package/components/{p-paDbTUL9.js → p-A3O24YmY.js} +1 -1
  102. package/components/p-ABkNVeU9.js +4 -0
  103. package/components/{p-CA4M5WkT.js → p-B-JJgYSG.js} +1 -1
  104. package/components/p-B9jFTlwE.js +4 -0
  105. package/components/p-BLmJ0zRm.js +4 -0
  106. package/components/p-BMI53wYL.js +4 -0
  107. package/components/p-BSEgsdFI.js +4 -0
  108. package/{dist/ionic/p-Cipl19Qe.js → components/p-BkKAANMJ.js} +1 -1
  109. package/components/p-BlIAuGv2.js +4 -0
  110. package/components/p-BmVRXR1y.js +4 -0
  111. package/components/p-Bnsn6KaP.js +4 -0
  112. package/components/p-BsBCoGa-.js +4 -0
  113. package/components/p-Bz0dSlXZ.js +4 -0
  114. package/components/p-CHqRYvYm.js +4 -0
  115. package/components/p-CIGNaXM1.js +4 -0
  116. package/components/p-CO7fmmxt.js +4 -0
  117. package/components/p-CQGnMY3n.js +4 -0
  118. package/components/p-CSZf8_j0.js +4 -0
  119. package/components/{p-CpHPq11n.js → p-C_hpsif8.js} +1 -1
  120. package/components/p-C_xFdyXe.js +4 -0
  121. package/components/{p-BE21dB_a.js → p-Cf2jSDS8.js} +1 -1
  122. package/components/p-Cfx4M1Bn.js +4 -0
  123. package/components/{p-Ch8jco3x.js → p-ChIZKXUu.js} +1 -1
  124. package/components/p-CkMSOsFF.js +4 -0
  125. package/components/p-CmR5uXej.js +4 -0
  126. package/components/p-Cp4GRDqq.js +4 -0
  127. package/components/p-CsNJ1ULL.js +4 -0
  128. package/components/p-CtWGkNnJ.js +4 -0
  129. package/components/p-CzCbeKys.js +4 -0
  130. package/components/p-D-aHdMxW.js +4 -0
  131. package/components/p-D0d8qTwj.js +4 -0
  132. package/components/{p-znZTPd7u.js → p-D13Eaw-8.js} +1 -1
  133. package/components/p-D3xo7hqU.js +4 -0
  134. package/components/p-D6Ynv7Xh.js +4 -0
  135. package/components/{p-CzlL9T_X.js → p-D7uN07a3.js} +1 -1
  136. package/components/p-DCnGU1fF.js +4 -0
  137. package/components/p-DGvrK8dD.js +4 -0
  138. package/components/p-DJztqcrH.js +4 -0
  139. package/components/p-DOFCbuQR.js +4 -0
  140. package/components/p-DRxvM2Ic.js +4 -0
  141. package/components/p-DV5mPYQS.js +4 -0
  142. package/components/p-DWkAgceV.js +4 -0
  143. package/components/p-DiVJyqlX.js +4 -0
  144. package/components/{p-BZwQa9ey.js → p-DqLB8yFQ.js} +1 -1
  145. package/components/p-DqZAXv2t.js +4 -0
  146. package/components/{p-miSYSxcc.js → p-Osve4qkc.js} +1 -1
  147. package/components/p-R8zmRi4c.js +4 -0
  148. package/components/p-SLS1rDZM.js +4 -0
  149. package/components/p-ZjP4CjeZ.js +4 -0
  150. package/components/p-aJ6PBUvj.js +4 -0
  151. package/{dist/ionic/p-C7urd_wE.js → components/p-cyNmxje6.js} +1 -1
  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/css/core.css +1 -1
  162. package/css/core.css.map +1 -1
  163. package/css/display.css +1 -1
  164. package/css/display.css.map +1 -1
  165. package/css/flex-utils.css +1 -1
  166. package/css/flex-utils.css.map +1 -1
  167. package/css/float-elements.css.map +1 -1
  168. package/css/global.bundle.css.map +1 -1
  169. package/css/ionic-swiper.css +1 -1
  170. package/css/ionic-swiper.css.map +1 -1
  171. package/css/ionic.bundle.css +1 -1
  172. package/css/ionic.bundle.css.map +1 -1
  173. package/css/normalize.css.map +1 -1
  174. package/css/padding.css.map +1 -1
  175. package/css/palettes/dark.always.css.map +1 -1
  176. package/css/palettes/dark.class.css.map +1 -1
  177. package/css/palettes/dark.system.css.map +1 -1
  178. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  179. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  180. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  181. package/css/palettes/high-contrast.always.css.map +1 -1
  182. package/css/palettes/high-contrast.class.css.map +1 -1
  183. package/css/palettes/high-contrast.system.css.map +1 -1
  184. package/css/structure.css.map +1 -1
  185. package/css/text-alignment.css.map +1 -1
  186. package/css/text-transformation.css.map +1 -1
  187. package/css/typography.css.map +1 -1
  188. package/css/utils.bundle.css +1 -1
  189. package/css/utils.bundle.css.map +1 -1
  190. package/dist/cjs/{animation-qlGmEn5Y.js → animation-Ch16T-Nb.js} +3 -3
  191. package/dist/cjs/{app-globals-CtK-3pCu.js → app-globals-Dd89e0MR.js} +1 -1
  192. package/dist/cjs/{button-active-CugpWmFI.js → button-active-COnxOe4X.js} +2 -2
  193. package/dist/cjs/{capacitor-BixsAzyb.js → capacitor-DmA66EwP.js} +3 -3
  194. package/dist/cjs/config-D6C-KlA9.js +201 -0
  195. package/dist/{esm/focus-visible-vXpMhGrs.js → cjs/focus-visible-CCvKiLh3.js} +3 -23
  196. package/dist/cjs/{format-COAsdjOc.js → format-BUFWn4Bn.js} +1 -1
  197. package/dist/cjs/{framework-delegate-CJT_QJQI.js → framework-delegate-BgU6U9Ez.js} +2 -4
  198. package/dist/cjs/{haptic-BFgF-QCg.js → haptic-ClPPQ_PS.js} +1 -1
  199. package/dist/cjs/hardware-back-button-CXmUnTJC.js +121 -0
  200. package/dist/cjs/{helpers-Fh1iXsX9.js → helpers-gntk8bfm.js} +4 -71
  201. package/dist/cjs/{index-D94mERjz.js → index-BS2uhvhT.js} +4 -4
  202. package/dist/cjs/{index-C1knGA9x.js → index-BfaXsATC.js} +4 -53
  203. package/dist/cjs/{index-CNicxECl.js → index-BhhuJ1Yx.js} +8 -9
  204. package/dist/cjs/{index-DRFkZu3V.js → index-BiRrzGDi.js} +2 -2
  205. package/dist/cjs/index-DkNv4J_i.js +10 -0
  206. package/dist/cjs/{index-CxDnX7hd.js → index-DqmRDbxg.js} +1 -3
  207. package/dist/cjs/{index-CM8iGvyx.js → index-ooS8B4p9.js} +15 -15
  208. package/dist/cjs/index.cjs.js +16 -16
  209. package/dist/cjs/{input-shims-C8NCYfWv.js → input-shims-Bn1cXfCM.js} +17 -18
  210. package/dist/cjs/{input.utils-CYZZsbdf.js → input.utils-BwhxZooW.js} +5 -5
  211. package/dist/cjs/ion-accordion_2.cjs.entry.js +29 -61
  212. package/dist/cjs/ion-action-sheet.cjs.entry.js +22 -41
  213. package/dist/cjs/ion-alert.cjs.entry.js +41 -78
  214. package/dist/cjs/ion-app_8.cjs.entry.js +194 -458
  215. package/dist/cjs/ion-avatar_3.cjs.entry.js +13 -125
  216. package/dist/cjs/ion-back-button.cjs.entry.js +22 -31
  217. package/dist/cjs/ion-backdrop.cjs.entry.js +7 -10
  218. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +18 -54
  219. package/dist/cjs/ion-button_2.cjs.entry.js +24 -61
  220. package/dist/cjs/ion-card_5.cjs.entry.js +33 -55
  221. package/dist/cjs/ion-checkbox.cjs.entry.js +17 -34
  222. package/dist/cjs/ion-chip.cjs.entry.js +9 -50
  223. package/dist/cjs/ion-col_3.cjs.entry.js +57 -56
  224. package/dist/cjs/ion-datetime-button.cjs.entry.js +9 -13
  225. package/dist/cjs/ion-datetime_3.cjs.entry.js +46 -121
  226. package/dist/cjs/ion-fab_3.cjs.entry.js +28 -44
  227. package/dist/cjs/ion-img.cjs.entry.js +4 -8
  228. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +17 -93
  229. package/dist/cjs/ion-input-otp.cjs.entry.js +9 -74
  230. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +15 -53
  231. package/dist/cjs/ion-input.cjs.entry.js +40 -132
  232. package/dist/cjs/ion-item-option_3.cjs.entry.js +52 -467
  233. package/dist/cjs/ion-item_8.cjs.entry.js +50 -121
  234. package/dist/cjs/ion-loading.cjs.entry.js +19 -22
  235. package/dist/cjs/ion-menu_3.cjs.entry.js +29 -47
  236. package/dist/cjs/ion-modal.cjs.entry.js +138 -262
  237. package/dist/cjs/ion-nav_2.cjs.entry.js +11 -14
  238. package/dist/cjs/ion-picker-column-option.cjs.entry.js +8 -12
  239. package/dist/cjs/ion-picker-column.cjs.entry.js +14 -14
  240. package/dist/cjs/ion-picker.cjs.entry.js +6 -10
  241. package/dist/cjs/ion-popover.cjs.entry.js +19 -21
  242. package/dist/cjs/ion-progress-bar.cjs.entry.js +9 -27
  243. package/dist/cjs/ion-radio_2.cjs.entry.js +18 -36
  244. package/dist/cjs/ion-range.cjs.entry.js +13 -20
  245. package/dist/cjs/ion-refresher_2.cjs.entry.js +23 -42
  246. package/dist/cjs/ion-reorder_2.cjs.entry.js +14 -38
  247. package/dist/cjs/ion-ripple-effect.cjs.entry.js +7 -15
  248. package/dist/cjs/ion-route_4.cjs.entry.js +10 -11
  249. package/dist/cjs/ion-searchbar.cjs.entry.js +32 -146
  250. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  251. package/dist/cjs/ion-segment-view.cjs.entry.js +3 -13
  252. package/dist/cjs/ion-segment_2.cjs.entry.js +16 -23
  253. package/dist/cjs/ion-select-modal.cjs.entry.js +38 -114
  254. package/dist/cjs/ion-select_3.cjs.entry.js +108 -557
  255. package/dist/cjs/ion-spinner.cjs.entry.js +8 -30
  256. package/dist/cjs/ion-split-pane.cjs.entry.js +9 -13
  257. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +28 -150
  258. package/dist/cjs/ion-tab_2.cjs.entry.js +7 -8
  259. package/dist/cjs/ion-text.cjs.entry.js +7 -7
  260. package/dist/cjs/ion-textarea.cjs.entry.js +23 -137
  261. package/dist/cjs/ion-toast.cjs.entry.js +46 -70
  262. package/dist/cjs/ion-toggle.cjs.entry.js +26 -82
  263. package/dist/cjs/ionic-global-BerQGEpE.js +151 -0
  264. package/dist/cjs/ionic.cjs.js +4 -4
  265. package/dist/cjs/{ios.transition-BgDCUY4Y.js → ios.transition-IMJRwn29.js} +5 -7
  266. package/dist/cjs/{item-multiple-inputs-DKn76MYO.js → item-multiple-inputs-jOJZE_I0.js} +1 -1
  267. package/dist/cjs/{keyboard-BbZXOwZg.js → keyboard-UuAS4D_9.js} +1 -1
  268. package/dist/cjs/keyboard-controller-GXBiBRKS.js +167 -0
  269. package/dist/cjs/{keyboard-nne7rvBK.js → keyboard-hHzlEQpk.js} +3 -4
  270. package/dist/cjs/loader.cjs.js +4 -4
  271. package/dist/cjs/{md.transition-Debf4tYr.js → md.transition-CgQZxcoT.js} +5 -6
  272. package/dist/cjs/{notch-controller-CFlPw7ER.js → notch-controller-_SwR025y.js} +4 -4
  273. package/dist/cjs/{overlays-DYBUkNQu.js → overlays-DuSEMhIW.js} +18 -309
  274. package/dist/cjs/{status-tap-hwqc0yb_.js → status-tap-CSvBT7FV.js} +3 -4
  275. package/dist/cjs/{swipe-back-DqQx5QCp.js → swipe-back-CuIiziaa.js} +2 -3
  276. package/dist/cjs/{theme-IlOsGAz7.js → theme-CeDs6Hcv.js} +1 -25
  277. package/dist/cjs/validity-BpS37YFM.js +19 -0
  278. package/dist/collection/collection-manifest.json +1 -9
  279. package/dist/collection/components/accordion/accordion.ios.css +58 -73
  280. package/dist/collection/components/accordion/accordion.js +27 -41
  281. package/dist/collection/components/accordion/accordion.md.css +59 -67
  282. package/dist/collection/components/accordion-group/accordion-group.ios.css +4 -16
  283. package/dist/collection/components/accordion-group/accordion-group.js +8 -44
  284. package/dist/collection/components/accordion-group/accordion-group.md.css +4 -22
  285. package/dist/collection/components/action-sheet/action-sheet.ios.css +11 -367
  286. package/dist/collection/components/action-sheet/action-sheet.js +13 -32
  287. package/dist/collection/components/action-sheet/action-sheet.md.css +10 -306
  288. package/dist/collection/components/alert/alert.ios.css +19 -481
  289. package/dist/collection/components/alert/alert.js +30 -67
  290. package/dist/collection/components/alert/alert.md.css +29 -464
  291. package/dist/collection/components/app/app.js +83 -15
  292. package/dist/collection/components/avatar/avatar.ios.css +33 -7
  293. package/dist/collection/components/avatar/avatar.js +4 -120
  294. package/dist/collection/components/avatar/avatar.md.css +0 -51
  295. package/dist/collection/components/back-button/back-button.ios.css +48 -60
  296. package/dist/collection/components/back-button/back-button.js +19 -27
  297. package/dist/collection/components/back-button/back-button.md.css +48 -60
  298. package/dist/collection/components/backdrop/backdrop.ios.css +19 -56
  299. package/dist/collection/components/backdrop/backdrop.js +6 -12
  300. package/dist/collection/components/backdrop/backdrop.md.css +19 -56
  301. package/dist/collection/components/badge/badge.ios.css +12 -137
  302. package/dist/collection/components/badge/badge.js +9 -145
  303. package/dist/collection/components/badge/badge.md.css +12 -122
  304. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +8 -20
  305. package/dist/collection/components/breadcrumb/breadcrumb.js +11 -43
  306. package/dist/collection/components/breadcrumb/breadcrumb.md.css +8 -20
  307. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +0 -6
  308. package/dist/collection/components/breadcrumbs/breadcrumbs.js +9 -11
  309. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +0 -6
  310. package/dist/collection/components/button/button.ios.css +46 -154
  311. package/dist/collection/components/button/button.js +27 -63
  312. package/dist/collection/components/button/button.md.css +50 -150
  313. package/dist/collection/components/buttons/buttons.ios.css +7 -59
  314. package/dist/collection/components/buttons/buttons.js +9 -15
  315. package/dist/collection/components/buttons/buttons.md.css +3 -55
  316. package/dist/collection/components/card/card.ios.css +14 -65
  317. package/dist/collection/components/card/card.js +10 -41
  318. package/dist/collection/components/card/card.md.css +14 -65
  319. package/dist/collection/components/card-content/card-content.ios.css +35 -20
  320. package/dist/collection/components/card-content/card-content.js +10 -12
  321. package/dist/collection/components/card-content/card-content.md.css +35 -20
  322. package/dist/collection/components/card-header/card-header.ios.css +15 -27
  323. package/dist/collection/components/card-header/card-header.js +10 -13
  324. package/dist/collection/components/card-header/card-header.md.css +15 -27
  325. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +0 -12
  326. package/dist/collection/components/card-subtitle/card-subtitle.js +8 -11
  327. package/dist/collection/components/card-subtitle/card-subtitle.md.css +0 -12
  328. package/dist/collection/components/card-title/card-title.ios.css +0 -73
  329. package/dist/collection/components/card-title/card-title.js +8 -11
  330. package/dist/collection/components/card-title/card-title.md.css +0 -73
  331. package/dist/collection/components/checkbox/checkbox.ios.css +117 -242
  332. package/dist/collection/components/checkbox/checkbox.js +14 -69
  333. package/dist/collection/components/checkbox/checkbox.md.css +118 -243
  334. package/dist/collection/components/chip/chip.ios.css +14 -67
  335. package/dist/collection/components/chip/chip.js +8 -108
  336. package/dist/collection/components/chip/chip.md.css +14 -67
  337. package/dist/collection/components/col/col.css +4 -192
  338. package/dist/collection/components/col/col.js +61 -211
  339. package/dist/collection/components/content/content.css +2 -47
  340. package/dist/collection/components/content/content.js +11 -16
  341. package/dist/collection/components/datetime/datetime.ios.css +106 -302
  342. package/dist/collection/components/datetime/datetime.js +20 -97
  343. package/dist/collection/components/datetime/datetime.md.css +96 -293
  344. package/dist/collection/components/datetime/utils/data.js +5 -5
  345. package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -6
  346. package/dist/collection/components/datetime-button/datetime-button.js +8 -11
  347. package/dist/collection/components/datetime-button/datetime-button.md.css +0 -6
  348. package/dist/collection/components/fab/fab.css +1 -25
  349. package/dist/collection/components/fab/fab.js +5 -9
  350. package/dist/collection/components/fab-button/fab-button.ios.css +6 -18
  351. package/dist/collection/components/fab-button/fab-button.js +21 -36
  352. package/dist/collection/components/fab-button/fab-button.md.css +8 -20
  353. package/dist/collection/components/fab-list/fab-list.css +0 -12
  354. package/dist/collection/components/fab-list/fab-list.js +5 -9
  355. package/dist/collection/components/footer/footer.ios.css +6 -33
  356. package/dist/collection/components/footer/footer.js +25 -117
  357. package/dist/collection/components/footer/footer.md.css +0 -40
  358. package/dist/collection/components/grid/grid.css +0 -12
  359. package/dist/collection/components/grid/grid.js +5 -9
  360. package/dist/collection/components/header/header.ios.css +133 -178
  361. package/dist/collection/components/header/header.js +39 -181
  362. package/dist/collection/components/header/header.md.css +9 -199
  363. package/dist/collection/components/header/header.utils.js +13 -6
  364. package/dist/collection/components/img/img.js +2 -8
  365. package/dist/collection/components/infinite-scroll/infinite-scroll.js +5 -100
  366. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -12
  367. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +10 -16
  368. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -12
  369. package/dist/collection/components/input/input.ios.css +137 -224
  370. package/dist/collection/components/input/input.js +45 -158
  371. package/dist/collection/components/input/input.md.css +209 -194
  372. package/dist/collection/components/input-otp/input-otp.ios.css +60 -105
  373. package/dist/collection/components/input-otp/input-otp.js +7 -74
  374. package/dist/collection/components/input-otp/input-otp.md.css +60 -105
  375. package/dist/collection/components/input-password-toggle/input-password-toggle.js +12 -48
  376. package/dist/collection/components/item/item.ios.css +80 -120
  377. package/dist/collection/components/item/item.js +21 -56
  378. package/dist/collection/components/item/item.md.css +79 -131
  379. package/dist/collection/components/item-divider/item-divider.ios.css +0 -18
  380. package/dist/collection/components/item-divider/item-divider.js +8 -11
  381. package/dist/collection/components/item-divider/item-divider.md.css +0 -18
  382. package/dist/collection/components/item-group/item-group.ios.css +0 -12
  383. package/dist/collection/components/item-group/item-group.js +7 -13
  384. package/dist/collection/components/item-group/item-group.md.css +0 -12
  385. package/dist/collection/components/item-option/item-option.ios.css +29 -136
  386. package/dist/collection/components/item-option/item-option.js +9 -73
  387. package/dist/collection/components/item-option/item-option.md.css +29 -136
  388. package/dist/collection/components/item-options/item-options.ios.css +34 -77
  389. package/dist/collection/components/item-options/item-options.js +7 -13
  390. package/dist/collection/components/item-options/item-options.md.css +34 -77
  391. package/dist/collection/components/item-sliding/{item-sliding.native.css → item-sliding.css} +9 -84
  392. package/dist/collection/components/item-sliding/item-sliding.js +35 -421
  393. package/dist/collection/components/item-sliding/test/test.utils.js +0 -13
  394. package/dist/collection/components/label/label.ios.css +0 -18
  395. package/dist/collection/components/label/label.js +8 -11
  396. package/dist/collection/components/label/label.md.css +0 -18
  397. package/dist/collection/components/list/list.ios.css +14 -54
  398. package/dist/collection/components/list/list.js +9 -48
  399. package/dist/collection/components/list/list.md.css +16 -56
  400. package/dist/collection/components/list-header/list-header.ios.css +38 -82
  401. package/dist/collection/components/list-header/list-header.js +8 -11
  402. package/dist/collection/components/list-header/list-header.md.css +38 -82
  403. package/dist/collection/components/loading/loading.ios.css +1 -13
  404. package/dist/collection/components/loading/loading.js +11 -14
  405. package/dist/collection/components/loading/loading.md.css +1 -13
  406. package/dist/collection/components/menu/menu.ios.css +3 -15
  407. package/dist/collection/components/menu/menu.js +7 -12
  408. package/dist/collection/components/menu/menu.md.css +3 -15
  409. package/dist/collection/components/menu-button/menu-button.ios.css +14 -48
  410. package/dist/collection/components/menu-button/menu-button.js +10 -26
  411. package/dist/collection/components/menu-button/menu-button.md.css +15 -49
  412. package/dist/collection/components/menu-toggle/menu-toggle.js +5 -8
  413. package/dist/collection/components/modal/animations/sheet.js +2 -8
  414. package/dist/collection/components/modal/gestures/sheet.js +10 -76
  415. package/dist/collection/components/modal/modal.ios.css +70 -178
  416. package/dist/collection/components/modal/modal.js +12 -50
  417. package/dist/collection/components/modal/modal.md.css +70 -178
  418. package/dist/collection/components/nav/nav.css +1 -7
  419. package/dist/collection/components/nav/nav.js +5 -11
  420. package/dist/collection/components/nav-link/nav-link.js +1 -5
  421. package/dist/collection/components/note/note.ios.css +0 -12
  422. package/dist/collection/components/note/note.js +8 -11
  423. package/dist/collection/components/note/note.md.css +0 -12
  424. package/dist/collection/components/picker/picker.ios.css +3 -15
  425. package/dist/collection/components/picker/picker.js +5 -8
  426. package/dist/collection/components/picker/picker.md.css +3 -15
  427. package/dist/collection/components/picker-column/picker-column.css +2 -9
  428. package/dist/collection/components/picker-column/picker-column.js +7 -8
  429. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
  430. package/dist/collection/components/picker-column-option/picker-column-option.js +7 -13
  431. package/dist/collection/components/picker-column-option/picker-column-option.md.css +0 -6
  432. package/dist/collection/components/picker-legacy/picker.ios.css +1 -13
  433. package/dist/collection/components/picker-legacy/picker.js +6 -7
  434. package/dist/collection/components/picker-legacy/picker.md.css +1 -13
  435. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -12
  436. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  437. package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -12
  438. package/dist/collection/components/popover/popover.ios.css +1 -29
  439. package/dist/collection/components/popover/popover.js +15 -18
  440. package/dist/collection/components/popover/popover.md.css +1 -29
  441. package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -48
  442. package/dist/collection/components/progress-bar/progress-bar.js +7 -43
  443. package/dist/collection/components/progress-bar/progress-bar.md.css +17 -48
  444. package/dist/collection/components/radio/radio.ios.css +102 -207
  445. package/dist/collection/components/radio/radio.js +9 -14
  446. package/dist/collection/components/radio/radio.md.css +102 -207
  447. package/dist/collection/components/radio-group/radio-group.ios.css +19 -43
  448. package/dist/collection/components/radio-group/radio-group.js +7 -48
  449. package/dist/collection/components/radio-group/radio-group.md.css +19 -43
  450. package/dist/collection/components/range/range.ios.css +85 -128
  451. package/dist/collection/components/range/range.js +10 -16
  452. package/dist/collection/components/range/range.md.css +85 -128
  453. package/dist/collection/components/refresher/refresher.ios.css +1 -14
  454. package/dist/collection/components/refresher/refresher.js +8 -11
  455. package/dist/collection/components/refresher/refresher.md.css +2 -15
  456. package/dist/collection/components/refresher-content/refresher-content.js +7 -28
  457. package/dist/collection/components/reorder/reorder.ios.css +0 -6
  458. package/dist/collection/components/reorder/reorder.js +6 -33
  459. package/dist/collection/components/reorder/reorder.md.css +0 -6
  460. package/dist/collection/components/reorder-group/reorder-group.css +0 -6
  461. package/dist/collection/components/reorder-group/reorder-group.js +4 -8
  462. package/dist/collection/components/ripple-effect/{ripple-effect.common.css → ripple-effect.css} +1 -7
  463. package/dist/collection/components/ripple-effect/ripple-effect.js +6 -14
  464. package/dist/collection/components/route/route.js +0 -4
  465. package/dist/collection/components/router/router.js +0 -4
  466. package/dist/collection/components/router-link/router-link.css +2 -8
  467. package/dist/collection/components/router-link/router-link.js +5 -9
  468. package/dist/collection/components/router-outlet/router-outlet.css +1 -7
  469. package/dist/collection/components/router-outlet/router-outlet.js +3 -6
  470. package/dist/collection/components/row/row.css +0 -16
  471. package/dist/collection/components/row/row.js +2 -9
  472. package/dist/collection/components/searchbar/searchbar.ios.css +18 -56
  473. package/dist/collection/components/searchbar/searchbar.js +42 -191
  474. package/dist/collection/components/searchbar/searchbar.md.css +18 -56
  475. package/dist/collection/components/segment/segment.ios.css +2 -45
  476. package/dist/collection/components/segment/segment.js +8 -11
  477. package/dist/collection/components/segment/segment.md.css +2 -45
  478. package/dist/collection/components/segment-button/segment-button.ios.css +105 -146
  479. package/dist/collection/components/segment-button/segment-button.js +8 -11
  480. package/dist/collection/components/segment-button/segment-button.md.css +107 -148
  481. package/dist/collection/components/segment-content/segment-content.js +1 -1
  482. package/dist/collection/components/segment-view/segment-view.ios.css +0 -6
  483. package/dist/collection/components/segment-view/segment-view.js +4 -13
  484. package/dist/collection/components/segment-view/segment-view.md.css +0 -6
  485. package/dist/collection/components/select/select.ios.css +176 -348
  486. package/dist/collection/components/select/select.js +92 -521
  487. package/dist/collection/components/select/select.md.css +178 -364
  488. package/dist/collection/components/select-modal/select-modal.ios.css +0 -466
  489. package/dist/collection/components/select-modal/select-modal.js +30 -126
  490. package/dist/collection/components/select-modal/select-modal.md.css +0 -394
  491. package/dist/collection/components/select-option/select-option.js +4 -72
  492. package/dist/collection/components/select-popover/select-popover.ios.css +20 -302
  493. package/dist/collection/components/select-popover/select-popover.js +29 -89
  494. package/dist/collection/components/select-popover/select-popover.md.css +0 -345
  495. package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
  496. package/dist/collection/components/skeleton-text/skeleton-text.js +5 -9
  497. package/dist/collection/components/spinner/{spinner.ionic.css → spinner.css} +10 -78
  498. package/dist/collection/components/spinner/spinner.js +6 -47
  499. package/dist/collection/components/split-pane/split-pane.ios.css +2 -20
  500. package/dist/collection/components/split-pane/split-pane.js +8 -15
  501. package/dist/collection/components/split-pane/split-pane.md.css +2 -20
  502. package/dist/collection/components/tab/tab.js +2 -6
  503. package/dist/collection/components/tab-bar/tab-bar.ios.css +43 -86
  504. package/dist/collection/components/tab-bar/tab-bar.js +15 -179
  505. package/dist/collection/components/tab-bar/tab-bar.md.css +43 -86
  506. package/dist/collection/components/tab-button/tab-button.ios.css +95 -171
  507. package/dist/collection/components/tab-button/tab-button.js +9 -54
  508. package/dist/collection/components/tab-button/tab-button.md.css +93 -137
  509. package/dist/collection/components/tabs/tabs.css +1 -7
  510. package/dist/collection/components/tabs/tabs.js +1 -4
  511. package/dist/collection/components/text/text.css +0 -6
  512. package/dist/collection/components/text/text.js +6 -7
  513. package/dist/collection/components/textarea/textarea.ios.css +158 -298
  514. package/dist/collection/components/textarea/textarea.js +24 -162
  515. package/dist/collection/components/textarea/textarea.md.css +159 -312
  516. package/dist/collection/components/thumbnail/thumbnail.css +0 -6
  517. package/dist/collection/components/thumbnail/thumbnail.js +2 -9
  518. package/dist/collection/components/title/title.ios.css +4 -32
  519. package/dist/collection/components/title/title.js +7 -13
  520. package/dist/collection/components/title/title.md.css +4 -39
  521. package/dist/collection/components/toast/animations/utils.js +1 -1
  522. package/dist/collection/components/toast/toast.ios.css +45 -84
  523. package/dist/collection/components/toast/toast.js +13 -76
  524. package/dist/collection/components/toast/toast.md.css +45 -84
  525. package/dist/collection/components/toggle/toggle.ios.css +127 -247
  526. package/dist/collection/components/toggle/toggle.js +18 -72
  527. package/dist/collection/components/toggle/toggle.md.css +127 -245
  528. package/dist/collection/components/toolbar/toolbar.ios.css +47 -90
  529. package/dist/collection/components/toolbar/toolbar.js +13 -218
  530. package/dist/collection/components/toolbar/toolbar.md.css +47 -90
  531. package/dist/collection/global/ionic-global.js +13 -241
  532. package/dist/collection/utils/focus-trap.js +2 -13
  533. package/dist/collection/utils/focus-visible.js +0 -22
  534. package/dist/collection/utils/forms/index.js +0 -1
  535. package/dist/collection/utils/forms/validity.js +0 -31
  536. package/dist/collection/utils/framework-delegate.js +1 -3
  537. package/dist/collection/utils/hardware-back-button.js +0 -15
  538. package/dist/collection/utils/helpers.js +3 -70
  539. package/dist/collection/utils/keyboard/keyboard-controller.js +1 -3
  540. package/dist/collection/utils/media.js +0 -1
  541. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  542. package/dist/collection/utils/menu-controller/animations/push.js +1 -2
  543. package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
  544. package/dist/collection/utils/overlays.js +8 -290
  545. package/dist/collection/utils/sanitization/index.js +18 -274
  546. package/dist/collection/utils/test/playwright/drag-element.js +9 -32
  547. package/dist/collection/utils/test/playwright/generator.js +23 -48
  548. package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -14
  549. package/dist/collection/utils/test/playwright/page/utils/set-content.js +3 -26
  550. package/dist/collection/utils/theme.js +1 -25
  551. package/dist/collection/utils/transition/ios.transition.js +0 -1
  552. package/dist/docs.json +286 -9090
  553. package/dist/esm/{animation-ChfHU0RG.js → animation-DLJpuoEz.js} +2 -2
  554. package/dist/esm/{app-globals-D1OOQlqq.js → app-globals-D0C5S4hU.js} +1 -1
  555. package/dist/esm/{button-active-CPYK0dNo.js → button-active-BSpTQmS9.js} +2 -2
  556. package/dist/esm/{capacitor-DG_4yVXz.js → capacitor-CFERIeaU.js} +1 -1
  557. package/dist/esm/config-DQCONYYp.js +195 -0
  558. package/dist/{cjs/focus-visible-BIj-I3-C.js → esm/focus-visible-BmVRXR1y.js} +1 -27
  559. package/dist/esm/{format-2WlZcMvG.js → format-CAmvpAez.js} +1 -1
  560. package/dist/esm/{framework-delegate-DO2QXccA.js → framework-delegate-FnPGymXL.js} +2 -4
  561. package/dist/esm/{haptic-BWlRCqa-.js → haptic-DzAMWJuk.js} +1 -1
  562. package/dist/esm/hardware-back-button-B93Gru0Y.js +115 -0
  563. package/dist/esm/{helpers-DfF5_wJc.js → helpers-HEqiOzXb.js} +5 -71
  564. package/dist/esm/{index-DNY2GOUg.js → index-BRHzoo00.js} +3 -4
  565. package/dist/esm/{index-BSDDOljg.js → index-B_dQk_WE.js} +4 -4
  566. package/dist/esm/{index-B4Kq2YNk.js → index-DV3sJJW8.js} +2 -3
  567. package/dist/esm/{index-taYRjZGp.js → index-Dw-wN0Ja.js} +2 -2
  568. package/dist/esm/{index-7eS8XtuU.js → index-Q6UPU0Ay.js} +11 -11
  569. package/dist/esm/index-ZjP4CjeZ.js +7 -0
  570. package/dist/esm/{index-C0EQceqV.js → index-tcQvqkiX.js} +4 -53
  571. package/dist/esm/index.js +14 -14
  572. package/dist/esm/{input-shims-tZfqB5a5.js → input-shims-LXhI7LEx.js} +6 -7
  573. package/dist/esm/{input.utils-fs4B7WL5.js → input.utils-Y6NgW8bw.js} +3 -3
  574. package/dist/esm/ion-accordion_2.entry.js +29 -61
  575. package/dist/esm/ion-action-sheet.entry.js +22 -41
  576. package/dist/esm/ion-alert.entry.js +40 -77
  577. package/dist/esm/ion-app_8.entry.js +193 -457
  578. package/dist/esm/ion-avatar_3.entry.js +13 -125
  579. package/dist/esm/ion-back-button.entry.js +22 -31
  580. package/dist/esm/ion-backdrop.entry.js +7 -10
  581. package/dist/esm/ion-breadcrumb_2.entry.js +18 -54
  582. package/dist/esm/ion-button_2.entry.js +24 -61
  583. package/dist/esm/ion-card_5.entry.js +33 -55
  584. package/dist/esm/ion-checkbox.entry.js +17 -34
  585. package/dist/esm/ion-chip.entry.js +9 -50
  586. package/dist/esm/ion-col_3.entry.js +57 -56
  587. package/dist/esm/ion-datetime-button.entry.js +9 -13
  588. package/dist/esm/ion-datetime_3.entry.js +46 -121
  589. package/dist/esm/ion-fab_3.entry.js +28 -44
  590. package/dist/esm/ion-img.entry.js +4 -8
  591. package/dist/esm/ion-infinite-scroll_2.entry.js +16 -92
  592. package/dist/esm/ion-input-otp.entry.js +9 -74
  593. package/dist/esm/ion-input-password-toggle.entry.js +15 -53
  594. package/dist/esm/ion-input.entry.js +40 -132
  595. package/dist/esm/ion-item-option_3.entry.js +52 -467
  596. package/dist/esm/ion-item_8.entry.js +50 -121
  597. package/dist/esm/ion-loading.entry.js +18 -21
  598. package/dist/esm/ion-menu_3.entry.js +29 -47
  599. package/dist/esm/ion-modal.entry.js +91 -215
  600. package/dist/esm/ion-nav_2.entry.js +11 -14
  601. package/dist/esm/ion-picker-column-option.entry.js +8 -12
  602. package/dist/esm/ion-picker-column.entry.js +13 -13
  603. package/dist/esm/ion-picker.entry.js +6 -10
  604. package/dist/esm/ion-popover.entry.js +19 -21
  605. package/dist/esm/ion-progress-bar.entry.js +9 -27
  606. package/dist/esm/ion-radio_2.entry.js +18 -36
  607. package/dist/esm/ion-range.entry.js +13 -20
  608. package/dist/esm/ion-refresher_2.entry.js +21 -40
  609. package/dist/esm/ion-reorder_2.entry.js +14 -38
  610. package/dist/esm/ion-ripple-effect.entry.js +7 -15
  611. package/dist/esm/ion-route_4.entry.js +10 -11
  612. package/dist/esm/ion-searchbar.entry.js +32 -146
  613. package/dist/esm/ion-segment-content.entry.js +2 -2
  614. package/dist/esm/ion-segment-view.entry.js +3 -13
  615. package/dist/esm/ion-segment_2.entry.js +16 -23
  616. package/dist/esm/ion-select-modal.entry.js +38 -114
  617. package/dist/esm/ion-select_3.entry.js +108 -557
  618. package/dist/esm/ion-spinner.entry.js +8 -30
  619. package/dist/esm/ion-split-pane.entry.js +9 -13
  620. package/dist/esm/ion-tab-bar_2.entry.js +27 -149
  621. package/dist/esm/ion-tab_2.entry.js +7 -8
  622. package/dist/esm/ion-text.entry.js +7 -7
  623. package/dist/esm/ion-textarea.entry.js +23 -137
  624. package/dist/esm/ion-toast.entry.js +21 -45
  625. package/dist/esm/ion-toggle.entry.js +26 -82
  626. package/dist/esm/ionic-global-Cp_eT4sZ.js +146 -0
  627. package/dist/esm/ionic.js +5 -5
  628. package/dist/esm/{ios.transition-C3r-0w96.js → ios.transition-ClFrsIrS.js} +5 -7
  629. package/dist/esm/{item-multiple-inputs-C6onMFOo.js → item-multiple-inputs-DlNuqNJm.js} +1 -1
  630. package/dist/esm/{keyboard-DYGmALa7.js → keyboard-CUw4ekVy.js} +1 -1
  631. package/dist/esm/keyboard-controller-BaaVITYt.js +165 -0
  632. package/dist/esm/{keyboard-BzbtCDwZ.js → keyboard-ywgs5efA.js} +3 -4
  633. package/dist/esm/loader.js +5 -5
  634. package/dist/esm/{md.transition-CPHOF5T9.js → md.transition-D0msQmzI.js} +5 -6
  635. package/dist/esm/{notch-controller-CsbpmbOz.js → notch-controller-DKDjU_O7.js} +2 -2
  636. package/dist/esm/{overlays-C1NQMs9y.js → overlays-Dg0q2_tJ.js} +15 -306
  637. package/dist/esm/{status-tap-BueE8Coq.js → status-tap-vO-6s4Yp.js} +3 -4
  638. package/dist/esm/{swipe-back-qmvTRnSq.js → swipe-back-DQ1q5MgD.js} +2 -3
  639. package/dist/esm/{theme-DaJxRxSQ.js → theme-DiVJyqlX.js} +1 -25
  640. package/dist/esm/validity-DJztqcrH.js +17 -0
  641. package/dist/html.html-data.json +160 -2699
  642. package/dist/ionic/index.esm.js +1 -1
  643. package/dist/ionic/ionic.esm.js +1 -1
  644. package/dist/ionic/p-01f81ea5.entry.js +4 -0
  645. package/dist/ionic/p-06c232a4.entry.js +4 -0
  646. package/dist/ionic/p-0caa922c.entry.js +4 -0
  647. package/dist/ionic/p-0dc33652.entry.js +4 -0
  648. package/dist/ionic/p-0fa9c382.entry.js +4 -0
  649. package/dist/ionic/p-10e833ef.entry.js +4 -0
  650. package/dist/ionic/p-21eb76d5.entry.js +4 -0
  651. package/dist/ionic/p-27d30585.entry.js +4 -0
  652. package/dist/ionic/p-2a05aa64.entry.js +4 -0
  653. package/dist/ionic/p-2b204c59.entry.js +4 -0
  654. package/dist/ionic/p-2bb2cb18.entry.js +4 -0
  655. package/dist/ionic/p-2fa58e80.entry.js +4 -0
  656. package/dist/ionic/p-3353c229.entry.js +4 -0
  657. package/dist/ionic/p-34586ead.entry.js +4 -0
  658. package/dist/ionic/p-37e720da.entry.js +4 -0
  659. package/dist/ionic/p-390ca786.entry.js +4 -0
  660. package/dist/ionic/p-3ae5f277.entry.js +4 -0
  661. package/dist/ionic/p-4654ae1c.entry.js +4 -0
  662. package/dist/ionic/p-4745f534.entry.js +4 -0
  663. package/dist/ionic/p-4858af1f.entry.js +4 -0
  664. package/dist/ionic/p-4baa5b82.entry.js +4 -0
  665. package/dist/ionic/p-4e92a11f.entry.js +4 -0
  666. package/dist/ionic/p-50e1194a.entry.js +4 -0
  667. package/dist/ionic/p-5334df12.entry.js +4 -0
  668. package/dist/ionic/p-5d1da0a2.entry.js +4 -0
  669. package/dist/ionic/p-5e2f73ee.entry.js +4 -0
  670. package/dist/ionic/p-5eb8e86d.entry.js +4 -0
  671. package/dist/ionic/p-65ebdf1b.entry.js +4 -0
  672. package/dist/ionic/p-746fa988.entry.js +4 -0
  673. package/dist/ionic/p-75dc25ba.entry.js +4 -0
  674. package/dist/ionic/p-7c319341.entry.js +4 -0
  675. package/dist/ionic/p-829367ed.entry.js +4 -0
  676. package/dist/ionic/p-84d5ce05.entry.js +4 -0
  677. package/dist/ionic/p-874b4bd8.entry.js +4 -0
  678. package/dist/ionic/p-8eb8ee76.entry.js +4 -0
  679. package/dist/ionic/p-9eeaBrnk.js +4 -0
  680. package/dist/ionic/p-9f9db3a2.entry.js +4 -0
  681. package/dist/ionic/p-9fa3c405.entry.js +4 -0
  682. package/dist/ionic/p-BGqMS-oh.js +4 -0
  683. package/dist/ionic/p-BUFIpxKM.js +4 -0
  684. package/dist/ionic/p-BmVRXR1y.js +4 -0
  685. package/dist/ionic/{p-7k7Q1A38.js → p-C0eMdTCW.js} +1 -1
  686. package/dist/ionic/p-CFlfIb2g.js +4 -0
  687. package/dist/ionic/p-CIGNaXM1.js +4 -0
  688. package/{components/p-BUNIyvqe.js → dist/ionic/p-CKvCXMs9.js} +1 -1
  689. package/dist/ionic/p-CmcFnK-B.js +4 -0
  690. package/dist/ionic/p-CtWGkNnJ.js +4 -0
  691. package/dist/ionic/p-Cx3IXROA.js +4 -0
  692. package/dist/ionic/p-D-3ycHmd.js +4 -0
  693. package/dist/ionic/{p-CCgRIJJv.js → p-D13Eaw-8.js} +1 -1
  694. package/dist/ionic/p-D4uTWt4-.js +4 -0
  695. package/dist/ionic/{p-CnIzWLAn.js → p-DC3RagnA.js} +1 -1
  696. package/dist/ionic/p-DIuEbVLu.js +4 -0
  697. package/dist/ionic/p-DJztqcrH.js +4 -0
  698. package/dist/ionic/p-DV3sJJW8.js +4 -0
  699. package/dist/ionic/p-DiVJyqlX.js +4 -0
  700. package/dist/ionic/p-DoJvtrbw.js +4 -0
  701. package/dist/ionic/p-DqN5EA2O.js +4 -0
  702. package/dist/ionic/p-DzWaWHGc.js +4 -0
  703. package/dist/ionic/p-KjNvRoEp.js +4 -0
  704. package/dist/ionic/p-Nqf6uvGh.js +4 -0
  705. package/dist/ionic/p-SNAkTDfm.js +4 -0
  706. package/dist/ionic/{p-CYYo93al.js → p-VAemlbDS.js} +1 -1
  707. package/dist/ionic/p-ZjP4CjeZ.js +4 -0
  708. package/dist/ionic/p-a3bdcae6.entry.js +4 -0
  709. package/dist/ionic/p-aaeedb6b.entry.js +4 -0
  710. package/dist/ionic/p-af55a72f.entry.js +4 -0
  711. package/dist/ionic/p-b2020591.entry.js +4 -0
  712. package/dist/ionic/p-b9fadbfe.entry.js +4 -0
  713. package/dist/ionic/p-biz8zWmJ.js +4 -0
  714. package/dist/ionic/p-c0fb8edd.entry.js +4 -0
  715. package/dist/ionic/p-c38b648e.entry.js +4 -0
  716. package/dist/ionic/p-c4d8641b.entry.js +4 -0
  717. package/dist/ionic/p-c6e49f3f.entry.js +4 -0
  718. package/dist/ionic/p-ca2ab74d.entry.js +4 -0
  719. package/dist/ionic/p-d889ff6d.entry.js +4 -0
  720. package/dist/ionic/p-dfa8d673.entry.js +4 -0
  721. package/dist/ionic/p-ea56626d.entry.js +4 -0
  722. package/dist/ionic/p-ef4c3bee.entry.js +4 -0
  723. package/dist/ionic/p-f386f6ae.entry.js +4 -0
  724. package/{components/p-BYoGvMgh.js → dist/ionic/p-mjKAFv89.js} +1 -1
  725. package/dist/ionic/p-tcQvqkiX.js +5 -0
  726. package/dist/ionic/p-uWtqTrG8.js +4 -0
  727. package/dist/ionic/{p-DINFwXlp.js → p-viFHDgRs.js} +1 -1
  728. package/dist/ionic/p-xWb6fgfq.js +4 -0
  729. package/dist/types/components/accordion/accordion.d.ts +3 -6
  730. package/dist/types/components/accordion-group/accordion-group.d.ts +1 -12
  731. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
  732. package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
  733. package/dist/types/components/alert/alert-interface.d.ts +7 -3
  734. package/dist/types/components/alert/alert.d.ts +2 -3
  735. package/dist/types/components/app/app.d.ts +5 -4
  736. package/dist/types/components/avatar/avatar.d.ts +0 -32
  737. package/dist/types/components/back-button/back-button.d.ts +1 -2
  738. package/dist/types/components/backdrop/backdrop.d.ts +0 -4
  739. package/dist/types/components/badge/badge.d.ts +1 -34
  740. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -4
  741. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  742. package/dist/types/components/button/button.d.ts +8 -23
  743. package/dist/types/components/buttons/buttons.d.ts +1 -5
  744. package/dist/types/components/card/card.d.ts +1 -8
  745. package/dist/types/components/card-content/card-content.d.ts +1 -2
  746. package/dist/types/components/card-header/card-header.d.ts +2 -3
  747. package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
  748. package/dist/types/components/card-title/card-title.d.ts +1 -2
  749. package/dist/types/components/checkbox/checkbox.d.ts +4 -14
  750. package/dist/types/components/chip/chip.d.ts +1 -26
  751. package/dist/types/components/col/col.d.ts +5 -52
  752. package/dist/types/components/content/content.d.ts +0 -3
  753. package/dist/types/components/datetime/datetime.d.ts +1 -26
  754. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  755. package/dist/types/components/datetime-button/datetime-button.d.ts +1 -2
  756. package/dist/types/components/fab/fab.d.ts +0 -4
  757. package/dist/types/components/fab-button/fab-button.d.ts +3 -5
  758. package/dist/types/components/fab-list/fab-list.d.ts +0 -4
  759. package/dist/types/components/footer/footer.d.ts +3 -20
  760. package/dist/types/components/grid/grid.d.ts +0 -4
  761. package/dist/types/components/header/header.d.ts +3 -26
  762. package/dist/types/components/header/header.utils.d.ts +5 -4
  763. package/dist/types/components/img/img.d.ts +0 -3
  764. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -21
  765. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +0 -4
  766. package/dist/types/components/input/input.d.ts +5 -34
  767. package/dist/types/components/input-otp/input-otp.d.ts +0 -37
  768. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +0 -2
  769. package/dist/types/components/item/item.d.ts +4 -11
  770. package/dist/types/components/item-divider/item-divider.d.ts +1 -2
  771. package/dist/types/components/item-group/item-group.d.ts +0 -4
  772. package/dist/types/components/item-option/item-option.d.ts +1 -18
  773. package/dist/types/components/item-options/item-options.d.ts +0 -4
  774. package/dist/types/components/item-sliding/item-sliding.d.ts +1 -47
  775. package/dist/types/components/item-sliding/test/test.utils.d.ts +0 -13
  776. package/dist/types/components/label/label.d.ts +1 -2
  777. package/dist/types/components/list/list.d.ts +1 -15
  778. package/dist/types/components/list-header/list-header.d.ts +1 -2
  779. package/dist/types/components/loading/loading-interface.d.ts +7 -2
  780. package/dist/types/components/loading/loading.d.ts +2 -3
  781. package/dist/types/components/menu/menu.d.ts +0 -3
  782. package/dist/types/components/menu-button/menu-button.d.ts +1 -3
  783. package/dist/types/components/menu-toggle/menu-toggle.d.ts +0 -3
  784. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  785. package/dist/types/components/modal/modal-interface.d.ts +7 -4
  786. package/dist/types/components/modal/modal.d.ts +1 -11
  787. package/dist/types/components/nav/nav-interface.d.ts +1 -9
  788. package/dist/types/components/nav/nav.d.ts +1 -5
  789. package/dist/types/components/nav-link/nav-link.d.ts +0 -4
  790. package/dist/types/components/note/note.d.ts +1 -2
  791. package/dist/types/components/picker/picker.d.ts +1 -2
  792. package/dist/types/components/picker-column/picker-column.d.ts +1 -2
  793. package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
  794. package/dist/types/components/picker-legacy/picker.d.ts +1 -2
  795. package/dist/types/components/popover/popover-interface.d.ts +6 -3
  796. package/dist/types/components/popover/popover.d.ts +5 -6
  797. package/dist/types/components/progress-bar/progress-bar.d.ts +1 -10
  798. package/dist/types/components/radio/radio.d.ts +1 -2
  799. package/dist/types/components/radio-group/radio-group.d.ts +0 -12
  800. package/dist/types/components/range/range.d.ts +1 -2
  801. package/dist/types/components/refresher/refresher.d.ts +1 -2
  802. package/dist/types/components/refresher-content/refresher-content.d.ts +0 -4
  803. package/dist/types/components/reorder/reorder.d.ts +0 -9
  804. package/dist/types/components/reorder-group/reorder-group.d.ts +0 -4
  805. package/dist/types/components/ripple-effect/ripple-effect.d.ts +0 -4
  806. package/dist/types/components/route/route.d.ts +0 -4
  807. package/dist/types/components/router/router.d.ts +0 -4
  808. package/dist/types/components/router-link/router-link.d.ts +0 -4
  809. package/dist/types/components/router-outlet/router-outlet.d.ts +1 -4
  810. package/dist/types/components/row/row.d.ts +0 -4
  811. package/dist/types/components/searchbar/searchbar.d.ts +10 -56
  812. package/dist/types/components/segment/segment.d.ts +1 -2
  813. package/dist/types/components/segment-button/segment-button.d.ts +1 -2
  814. package/dist/types/components/select/select-interface.d.ts +0 -31
  815. package/dist/types/components/select/select.d.ts +13 -66
  816. package/dist/types/components/select-modal/select-modal.d.ts +0 -8
  817. package/dist/types/components/select-option/select-option.d.ts +1 -45
  818. package/dist/types/components/select-popover/select-popover.d.ts +0 -3
  819. package/dist/types/components/skeleton-text/skeleton-text.d.ts +0 -4
  820. package/dist/types/components/spinner/spinner.d.ts +0 -15
  821. package/dist/types/components/split-pane/split-pane.d.ts +0 -4
  822. package/dist/types/components/tab/tab.d.ts +0 -4
  823. package/dist/types/components/tab-bar/tab-bar-interface.d.ts +0 -1
  824. package/dist/types/components/tab-bar/tab-bar.d.ts +3 -41
  825. package/dist/types/components/tab-button/tab-button.d.ts +1 -12
  826. package/dist/types/components/tabs/tabs.d.ts +0 -3
  827. package/dist/types/components/text/text.d.ts +1 -2
  828. package/dist/types/components/textarea/textarea.d.ts +4 -53
  829. package/dist/types/components/thumbnail/thumbnail.d.ts +0 -4
  830. package/dist/types/components/title/title.d.ts +0 -4
  831. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  832. package/dist/types/components/toast/toast-interface.d.ts +7 -3
  833. package/dist/types/components/toast/toast.d.ts +2 -19
  834. package/dist/types/components/toggle/toggle.d.ts +1 -15
  835. package/dist/types/components/toolbar/toolbar.d.ts +3 -43
  836. package/dist/types/components.d.ts +211 -1882
  837. package/dist/types/global/ionic-global.d.ts +2 -28
  838. package/dist/types/interface.d.ts +0 -3
  839. package/dist/types/utils/config.d.ts +2 -106
  840. package/dist/types/utils/focus-trap.d.ts +1 -1
  841. package/dist/types/utils/focus-visible.d.ts +0 -13
  842. package/dist/types/utils/forms/index.d.ts +0 -1
  843. package/dist/types/utils/forms/validity.d.ts +0 -7
  844. package/dist/types/utils/helpers.d.ts +0 -22
  845. package/dist/types/utils/overlays-interface.d.ts +1 -31
  846. package/dist/types/utils/overlays.d.ts +1 -1
  847. package/dist/types/utils/sanitization/index.d.ts +2 -58
  848. package/dist/types/utils/test/playwright/drag-element.d.ts +3 -16
  849. package/dist/types/utils/test/playwright/generator.d.ts +2 -31
  850. package/dist/types/utils/theme.d.ts +0 -9
  851. package/hydrate/index.js +1406 -6402
  852. package/hydrate/index.mjs +1406 -6402
  853. package/package.json +5 -9
  854. package/components/ion-divider.d.ts +0 -11
  855. package/components/ion-divider.js +0 -4
  856. package/components/ion-gallery-item.d.ts +0 -11
  857. package/components/ion-gallery-item.js +0 -4
  858. package/components/ion-gallery.d.ts +0 -11
  859. package/components/ion-gallery.js +0 -4
  860. package/components/p-6hUZIMBp.js +0 -4
  861. package/components/p-9mfpAwJh.js +0 -4
  862. package/components/p-B2SvA6NE.js +0 -4
  863. package/components/p-B2aAAEfp.js +0 -4
  864. package/components/p-B2lpqDWK.js +0 -4
  865. package/components/p-BDoEcs72.js +0 -4
  866. package/components/p-BDqjX7Z_.js +0 -4
  867. package/components/p-BFpXpzD-.js +0 -4
  868. package/components/p-BYSs-jZz.js +0 -4
  869. package/components/p-BYrCPOBM.js +0 -4
  870. package/components/p-BbVhJs-a.js +0 -4
  871. package/components/p-BhRXIcSN.js +0 -4
  872. package/components/p-BjW8SOqw.js +0 -4
  873. package/components/p-BsiHrVPa.js +0 -4
  874. package/components/p-BwKpO3Is.js +0 -4
  875. package/components/p-Bz8jnuiy.js +0 -4
  876. package/components/p-C-Ea1l5K.js +0 -4
  877. package/components/p-C3X10Pc6.js +0 -4
  878. package/components/p-CH6jbAEI.js +0 -4
  879. package/components/p-CJE5t2qs.js +0 -4
  880. package/components/p-CODBQrPj.js +0 -4
  881. package/components/p-CUbb1HkU.js +0 -4
  882. package/components/p-CVYFPBs-.js +0 -4
  883. package/components/p-CVoLDZ7z.js +0 -4
  884. package/components/p-CZrORZXS.js +0 -4
  885. package/components/p-Cc3oC60a.js +0 -4
  886. package/components/p-CmoUesXp.js +0 -4
  887. package/components/p-CyNW8ypn.js +0 -4
  888. package/components/p-CzxyxYID.js +0 -4
  889. package/components/p-D0Iqw6OZ.js +0 -4
  890. package/components/p-D0LT3Z3i.js +0 -4
  891. package/components/p-D1t981Ih.js +0 -4
  892. package/components/p-D6tqrIYY.js +0 -4
  893. package/components/p-D9C5yWpF.js +0 -4
  894. package/components/p-DCRXgAoM.js +0 -4
  895. package/components/p-DL5wyRub.js +0 -4
  896. package/components/p-DQlXUUDh.js +0 -4
  897. package/components/p-DRWN7QM2.js +0 -4
  898. package/components/p-DaJxRxSQ.js +0 -4
  899. package/components/p-DbmfFkd1.js +0 -4
  900. package/components/p-Dhi5xtNS.js +0 -4
  901. package/components/p-DnwLgh9U.js +0 -4
  902. package/components/p-DoZB3DcY.js +0 -4
  903. package/components/p-Dovs7FIs.js +0 -4
  904. package/components/p-DrrpZB81.js +0 -4
  905. package/components/p-DrzWRqnG.js +0 -4
  906. package/components/p-DylrHLJF.js +0 -4
  907. package/components/p-Dypq4kXE.js +0 -4
  908. package/components/p-DzeMJvWL.js +0 -4
  909. package/components/p-Dzk4Tr0X.js +0 -4
  910. package/components/p-Rkm2AOZ2.js +0 -4
  911. package/components/p-UYngqo1f.js +0 -4
  912. package/components/p-Va26YR7l.js +0 -4
  913. package/components/p-asUhrzOB.js +0 -4
  914. package/components/p-fIOYmaqA.js +0 -4
  915. package/components/p-jlwpz7Ms.js +0 -4
  916. package/components/p-kInyVu79.js +0 -4
  917. package/components/p-vXpMhGrs.js +0 -4
  918. package/css/ionic/bundle.ionic.css +0 -1
  919. package/css/ionic/bundle.ionic.css.map +0 -1
  920. package/css/ionic/core.ionic.css +0 -1
  921. package/css/ionic/core.ionic.css.map +0 -1
  922. package/css/ionic/global.bundle.ionic.css +0 -1
  923. package/css/ionic/global.bundle.ionic.css.map +0 -1
  924. package/css/ionic/ionic-swiper.ionic.css +0 -1
  925. package/css/ionic/ionic-swiper.ionic.css.map +0 -1
  926. package/css/ionic/link.ionic.css +0 -1
  927. package/css/ionic/link.ionic.css.map +0 -1
  928. package/css/ionic/structure.ionic.css +0 -1
  929. package/css/ionic/structure.ionic.css.map +0 -1
  930. package/css/ionic/typography.ionic.css +0 -1
  931. package/css/ionic/typography.ionic.css.map +0 -1
  932. package/css/ionic/utils.bundle.ionic.css +0 -1
  933. package/css/ionic/utils.bundle.ionic.css.map +0 -1
  934. package/dist/cjs/caret-down-vtVgfXIs.js +0 -8
  935. package/dist/cjs/caret-left-CxZXLRv5.js +0 -8
  936. package/dist/cjs/caret-right-CRCgv98E.js +0 -8
  937. package/dist/cjs/clear-button-press-controller-2hAy_qdm.js +0 -45
  938. package/dist/cjs/config-DWdFbSNK.js +0 -35
  939. package/dist/cjs/index-YYUVCfP-.js +0 -429
  940. package/dist/cjs/ion-divider.cjs.entry.js +0 -51
  941. package/dist/cjs/ion-gallery-item.cjs.entry.js +0 -59
  942. package/dist/cjs/ion-gallery.cjs.entry.js +0 -607
  943. package/dist/cjs/ionic-global-DvEcO0tQ.js +0 -519
  944. package/dist/cjs/list-a-7GSA6K.js +0 -8
  945. package/dist/cjs/overlay-control-label-DnRLQR1t.js +0 -52
  946. package/dist/cjs/scroll-hide-controller-DAf_DwKc.js +0 -345
  947. package/dist/cjs/select-option-render-BqJEK1N1.js +0 -124
  948. package/dist/cjs/validity-QmuwEptc.js +0 -51
  949. package/dist/cjs/x-BTF99yFH.js +0 -8
  950. package/dist/collection/components/accordion/accordion.ionic.css +0 -201
  951. package/dist/collection/components/accordion-group/accordion-group.ionic.css +0 -93
  952. package/dist/collection/components/action-sheet/action-sheet.ionic.css +0 -494
  953. package/dist/collection/components/alert/alert.ionic.css +0 -787
  954. package/dist/collection/components/avatar/avatar.ionic.css +0 -385
  955. package/dist/collection/components/backdrop/backdrop.ionic.css +0 -109
  956. package/dist/collection/components/badge/badge.ionic.css +0 -272
  957. package/dist/collection/components/button/button.ionic.css +0 -644
  958. package/dist/collection/components/buttons/buttons.ionic.css +0 -97
  959. package/dist/collection/components/card/card.ionic.css +0 -144
  960. package/dist/collection/components/card-content/card-content.ionic.css +0 -89
  961. package/dist/collection/components/card-header/card-header.ionic.css +0 -85
  962. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +0 -144
  963. package/dist/collection/components/checkbox/checkbox.ionic.css +0 -543
  964. package/dist/collection/components/chip/chip.ionic.css +0 -217
  965. package/dist/collection/components/datetime/datetime.ionic.css +0 -703
  966. package/dist/collection/components/divider/divider.ionic.css +0 -148
  967. package/dist/collection/components/divider/divider.ios.css +0 -87
  968. package/dist/collection/components/divider/divider.js +0 -94
  969. package/dist/collection/components/divider/divider.md.css +0 -87
  970. package/dist/collection/components/footer/footer-interface.js +0 -1
  971. package/dist/collection/components/gallery/gallery-constants.js +0 -12
  972. package/dist/collection/components/gallery/gallery-interface.js +0 -1
  973. package/dist/collection/components/gallery/gallery.css +0 -15
  974. package/dist/collection/components/gallery/gallery.js +0 -679
  975. package/dist/collection/components/gallery/test/utils.js +0 -100
  976. package/dist/collection/components/gallery-item/gallery-item.css +0 -49
  977. package/dist/collection/components/gallery-item/gallery-item.js +0 -99
  978. package/dist/collection/components/header/header-interface.js +0 -1
  979. package/dist/collection/components/header/header.ionic.css +0 -250
  980. package/dist/collection/components/input/input.ionic.css +0 -891
  981. package/dist/collection/components/input-otp/input-otp.ionic.css +0 -371
  982. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +0 -78
  983. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +0 -61
  984. package/dist/collection/components/item/item.ionic.css +0 -496
  985. package/dist/collection/components/item-option/item-option.ionic.css +0 -277
  986. package/dist/collection/components/item-options/item-options.ionic.css +0 -221
  987. package/dist/collection/components/item-sliding/item-sliding.ionic.css +0 -211
  988. package/dist/collection/components/list/list.ionic.css +0 -212
  989. package/dist/collection/components/list-header/list-header.ionic.css +0 -190
  990. package/dist/collection/components/menu-button/menu-button.ionic.css +0 -236
  991. package/dist/collection/components/modal/animations/ionic.enter.js +0 -40
  992. package/dist/collection/components/modal/animations/ionic.leave.js +0 -28
  993. package/dist/collection/components/modal/modal.ionic.css +0 -255
  994. package/dist/collection/components/popover/popover.ionic.css +0 -290
  995. package/dist/collection/components/progress-bar/progress-bar.ionic.css +0 -287
  996. package/dist/collection/components/radio/radio.ionic.css +0 -422
  997. package/dist/collection/components/radio-group/radio-group.ionic.css +0 -119
  998. package/dist/collection/components/range/range.ionic.css +0 -567
  999. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +0 -215
  1000. package/dist/collection/components/searchbar/searchbar.ionic.css +0 -622
  1001. package/dist/collection/components/segment/segment.ionic.css +0 -115
  1002. package/dist/collection/components/segment-button/segment-button.ionic.css +0 -352
  1003. package/dist/collection/components/select/select.ionic.css +0 -809
  1004. package/dist/collection/components/select-modal/select-modal.ionic.css +0 -257
  1005. package/dist/collection/components/select-popover/select-popover.ionic.css +0 -255
  1006. package/dist/collection/components/spinner/spinner.native.css +0 -199
  1007. package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -249
  1008. package/dist/collection/components/tab-button/tab-button.ionic.css +0 -373
  1009. package/dist/collection/components/textarea/textarea.ionic.css +0 -898
  1010. package/dist/collection/components/title/title.ionic.css +0 -127
  1011. package/dist/collection/components/toast/toast.ionic.css +0 -394
  1012. package/dist/collection/components/toggle/toggle.ionic.css +0 -512
  1013. package/dist/collection/components/toolbar/test/image.svg +0 -1
  1014. package/dist/collection/components/toolbar/toolbar.ionic.css +0 -249
  1015. package/dist/collection/utils/css-value-validation.js +0 -39
  1016. package/dist/collection/utils/forms/clear-button-press-controller.js +0 -40
  1017. package/dist/collection/utils/overlay-control-label.js +0 -47
  1018. package/dist/collection/utils/scroll-hide-controller.js +0 -178
  1019. package/dist/collection/utils/select-option-render.js +0 -119
  1020. package/dist/esm/caret-down-D1t981Ih.js +0 -6
  1021. package/dist/esm/caret-left-fIOYmaqA.js +0 -6
  1022. package/dist/esm/caret-right-BYSs-jZz.js +0 -6
  1023. package/dist/esm/clear-button-press-controller-C79TPm5p.js +0 -43
  1024. package/dist/esm/config-BwKpO3Is.js +0 -31
  1025. package/dist/esm/index-Mq5pCWmZ.js +0 -424
  1026. package/dist/esm/ion-divider.entry.js +0 -49
  1027. package/dist/esm/ion-gallery-item.entry.js +0 -57
  1028. package/dist/esm/ion-gallery.entry.js +0 -605
  1029. package/dist/esm/ionic-global-CEwbmRLz.js +0 -508
  1030. package/dist/esm/list-Dhi5xtNS.js +0 -6
  1031. package/dist/esm/overlay-control-label-CODBQrPj.js +0 -49
  1032. package/dist/esm/scroll-hide-controller-CfbtPBWv.js +0 -342
  1033. package/dist/esm/select-option-render-BlKZ2H83.js +0 -122
  1034. package/dist/esm/validity-BjW8SOqw.js +0 -48
  1035. package/dist/esm/x-BDqjX7Z_.js +0 -6
  1036. package/dist/ionic/p--sroV-k-.js +0 -4
  1037. package/dist/ionic/p-00731d20.entry.js +0 -4
  1038. package/dist/ionic/p-03c20a50.entry.js +0 -4
  1039. package/dist/ionic/p-03ec6673.entry.js +0 -4
  1040. package/dist/ionic/p-0405ec57.entry.js +0 -4
  1041. package/dist/ionic/p-04f16322.entry.js +0 -4
  1042. package/dist/ionic/p-09123f89.entry.js +0 -4
  1043. package/dist/ionic/p-15028853.entry.js +0 -4
  1044. package/dist/ionic/p-16c5db90.entry.js +0 -4
  1045. package/dist/ionic/p-1d1dfb68.entry.js +0 -4
  1046. package/dist/ionic/p-231572a0.entry.js +0 -4
  1047. package/dist/ionic/p-2740db6e.entry.js +0 -4
  1048. package/dist/ionic/p-2a6d4601.entry.js +0 -4
  1049. package/dist/ionic/p-2d8fe33c.entry.js +0 -4
  1050. package/dist/ionic/p-2dbc50d9.entry.js +0 -4
  1051. package/dist/ionic/p-32d3095c.entry.js +0 -4
  1052. package/dist/ionic/p-356cd619.entry.js +0 -4
  1053. package/dist/ionic/p-391bdb60.entry.js +0 -4
  1054. package/dist/ionic/p-3b2ab5b4.entry.js +0 -4
  1055. package/dist/ionic/p-4e3e750a.entry.js +0 -4
  1056. package/dist/ionic/p-4fee0df6.entry.js +0 -4
  1057. package/dist/ionic/p-547d010c.entry.js +0 -4
  1058. package/dist/ionic/p-54895118.entry.js +0 -4
  1059. package/dist/ionic/p-6163d04d.entry.js +0 -4
  1060. package/dist/ionic/p-679c1448.entry.js +0 -4
  1061. package/dist/ionic/p-6de524e5.entry.js +0 -4
  1062. package/dist/ionic/p-764d7ea2.entry.js +0 -4
  1063. package/dist/ionic/p-81BMEE8Q.js +0 -4
  1064. package/dist/ionic/p-8d6d7acb.entry.js +0 -4
  1065. package/dist/ionic/p-96732fe2.entry.js +0 -4
  1066. package/dist/ionic/p-96c4c1b9.entry.js +0 -4
  1067. package/dist/ionic/p-9745f518.entry.js +0 -4
  1068. package/dist/ionic/p-9a40af3c.entry.js +0 -4
  1069. package/dist/ionic/p-9e725104.entry.js +0 -4
  1070. package/dist/ionic/p-B4Kq2YNk.js +0 -4
  1071. package/dist/ionic/p-BDqjX7Z_.js +0 -4
  1072. package/dist/ionic/p-BYSs-jZz.js +0 -4
  1073. package/dist/ionic/p-BbWo-T8F.js +0 -4
  1074. package/dist/ionic/p-BjW8SOqw.js +0 -4
  1075. package/dist/ionic/p-Bvz8PHo5.js +0 -4
  1076. package/dist/ionic/p-BwKpO3Is.js +0 -4
  1077. package/dist/ionic/p-C0EQceqV.js +0 -5
  1078. package/dist/ionic/p-C1_a9uRb.js +0 -4
  1079. package/dist/ionic/p-C6WD6qSF.js +0 -4
  1080. package/dist/ionic/p-CEkwLb3L.js +0 -4
  1081. package/dist/ionic/p-CGFf6My7.js +0 -4
  1082. package/dist/ionic/p-CLUwRxij.js +0 -4
  1083. package/dist/ionic/p-CODBQrPj.js +0 -4
  1084. package/dist/ionic/p-CP_sVwEm.js +0 -4
  1085. package/dist/ionic/p-CSMWpRc0.js +0 -4
  1086. package/dist/ionic/p-Cvvva6Z7.js +0 -4
  1087. package/dist/ionic/p-D1t981Ih.js +0 -4
  1088. package/dist/ionic/p-DIvCXVmD.js +0 -4
  1089. package/dist/ionic/p-DTsDGZPd.js +0 -4
  1090. package/dist/ionic/p-DaJxRxSQ.js +0 -4
  1091. package/dist/ionic/p-Dhi5xtNS.js +0 -4
  1092. package/dist/ionic/p-DtQgCTtW.js +0 -4
  1093. package/dist/ionic/p-DuRx6DeQ.js +0 -4
  1094. package/dist/ionic/p-YGLqXqFd.js +0 -4
  1095. package/dist/ionic/p-YIsE5bNG.js +0 -4
  1096. package/dist/ionic/p-a61c2ace.entry.js +0 -4
  1097. package/dist/ionic/p-abb516e3.entry.js +0 -4
  1098. package/dist/ionic/p-b54edee6.entry.js +0 -4
  1099. package/dist/ionic/p-c076ac5c.entry.js +0 -4
  1100. package/dist/ionic/p-c4ff25cb.entry.js +0 -4
  1101. package/dist/ionic/p-c7279756.entry.js +0 -4
  1102. package/dist/ionic/p-c7ebed50.entry.js +0 -4
  1103. package/dist/ionic/p-cd0037e4.entry.js +0 -4
  1104. package/dist/ionic/p-d261938d.entry.js +0 -4
  1105. package/dist/ionic/p-d33dfc12.entry.js +0 -4
  1106. package/dist/ionic/p-d7764330.entry.js +0 -4
  1107. package/dist/ionic/p-defb23a2.entry.js +0 -4
  1108. package/dist/ionic/p-df642ef5.entry.js +0 -4
  1109. package/dist/ionic/p-e2a35249.entry.js +0 -4
  1110. package/dist/ionic/p-e2b952ef.entry.js +0 -4
  1111. package/dist/ionic/p-e77cfd1e.entry.js +0 -4
  1112. package/dist/ionic/p-ecb9d3d3.entry.js +0 -4
  1113. package/dist/ionic/p-efd13adf.entry.js +0 -4
  1114. package/dist/ionic/p-f0904c1d.entry.js +0 -4
  1115. package/dist/ionic/p-f33689f7.entry.js +0 -4
  1116. package/dist/ionic/p-f693efe9.entry.js +0 -4
  1117. package/dist/ionic/p-f788396b.entry.js +0 -4
  1118. package/dist/ionic/p-fIOYmaqA.js +0 -4
  1119. package/dist/ionic/p-fa16fad8.entry.js +0 -4
  1120. package/dist/ionic/p-lMb_45ax.js +0 -4
  1121. package/dist/ionic/p-oadJNPuo.js +0 -4
  1122. package/dist/ionic/p-vXpMhGrs.js +0 -4
  1123. package/dist/ionic/p-wNjWCZVO.js +0 -4
  1124. package/dist/types/components/divider/divider.d.ts +0 -20
  1125. package/dist/types/components/footer/footer-interface.d.ts +0 -1
  1126. package/dist/types/components/gallery/gallery-constants.d.ts +0 -9
  1127. package/dist/types/components/gallery/gallery-interface.d.ts +0 -10
  1128. package/dist/types/components/gallery/gallery.d.ts +0 -218
  1129. package/dist/types/components/gallery/test/utils.d.ts +0 -3
  1130. package/dist/types/components/gallery-item/gallery-item.d.ts +0 -33
  1131. package/dist/types/components/header/header-interface.d.ts +0 -1
  1132. package/dist/types/components/modal/animations/ionic.enter.d.ts +0 -6
  1133. package/dist/types/components/modal/animations/ionic.leave.d.ts +0 -6
  1134. package/dist/types/utils/css-value-validation.d.ts +0 -21
  1135. package/dist/types/utils/forms/clear-button-press-controller.d.ts +0 -20
  1136. package/dist/types/utils/overlay-control-label.d.ts +0 -34
  1137. package/dist/types/utils/scroll-hide-controller.d.ts +0 -56
  1138. package/dist/types/utils/select-option-render.d.ts +0 -53
  1139. /package/dist/collection/components/{refresher-content/refresher-content.css → input-password-toggle/input-password-toggle.css} +0 -0
@@ -1,249 +0,0 @@
1
- /**
2
- * A heuristic that applies CSS to tablet
3
- * viewports.
4
- *
5
- * Usage:
6
- * @include tablet-viewport() {
7
- * :host {
8
- * background-color: green;
9
- * }
10
- * }
11
- */
12
- /**
13
- * A heuristic that applies CSS to mobile
14
- * viewports (i.e. phones, not tablets).
15
- *
16
- * Usage:
17
- * @include mobile-viewport() {
18
- * :host {
19
- * background-color: blue;
20
- * }
21
- * }
22
- */
23
- :host {
24
- /**
25
- * @prop --background: Background of the toolbar
26
- *
27
- * @prop --border-color: Color of the toolbar border
28
- * @prop --border-style: Style of the toolbar border
29
- * @prop --border-width: Width of the toolbar border
30
- *
31
- * @prop --color: Color of the toolbar text
32
- *
33
- * @prop --min-height: Minimum height of the toolbar
34
- *
35
- * @prop --opacity: Opacity of the toolbar background
36
- *
37
- * @prop --padding-top: Top padding of the toolbar
38
- * @prop --padding-end: Right padding if direction is left-to-right, and left padding if direction is right-to-left of the toolbar
39
- * @prop --padding-bottom: Bottom padding of the toolbar
40
- * @prop --padding-start: Left padding if direction is left-to-right, and right padding if direction is right-to-left of the toolbar
41
- */
42
- --border-width: 0;
43
- --border-style: solid;
44
- --opacity: 1;
45
- --opacity-scale: 1;
46
- -moz-osx-font-smoothing: grayscale;
47
- -webkit-font-smoothing: antialiased;
48
- display: block;
49
- position: relative;
50
- width: 100%;
51
- padding-right: var(--ion-safe-area-right);
52
- padding-left: var(--ion-safe-area-left);
53
- color: var(--color);
54
- contain: content;
55
- box-sizing: border-box;
56
- }
57
-
58
- .toolbar-container {
59
- -webkit-padding-start: var(--padding-start);
60
- padding-inline-start: var(--padding-start);
61
- -webkit-padding-end: var(--padding-end);
62
- padding-inline-end: var(--padding-end);
63
- padding-top: var(--padding-top);
64
- padding-bottom: var(--padding-bottom);
65
- display: flex;
66
- position: relative;
67
- flex-direction: row;
68
- align-items: center;
69
- justify-content: space-between;
70
- width: 100%;
71
- min-height: var(--min-height);
72
- contain: content;
73
- overflow: hidden;
74
- box-sizing: border-box;
75
- }
76
-
77
- .toolbar-background {
78
- right: 0;
79
- left: 0;
80
- top: 0;
81
- bottom: 0;
82
- position: absolute;
83
- transform: translateZ(0);
84
- border-width: var(--border-width);
85
- border-style: var(--border-style);
86
- border-color: var(--border-color);
87
- background: var(--background);
88
- contain: strict;
89
- opacity: calc(var(--opacity) * var(--opacity-scale));
90
- pointer-events: none;
91
- }
92
-
93
- ::slotted(ion-progress-bar) {
94
- right: 0;
95
- left: 0;
96
- bottom: 0;
97
- position: absolute;
98
- }
99
-
100
- /**
101
- * A heuristic that applies CSS to tablet
102
- * viewports.
103
- *
104
- * Usage:
105
- * @include tablet-viewport() {
106
- * :host {
107
- * background-color: green;
108
- * }
109
- * }
110
- */
111
- /**
112
- * A heuristic that applies CSS to mobile
113
- * viewports (i.e. phones, not tablets).
114
- *
115
- * Usage:
116
- * @include mobile-viewport() {
117
- * :host {
118
- * background-color: blue;
119
- * }
120
- * }
121
- */
122
- /**
123
- * Convert a pixels given value into rem
124
- *
125
- * @param pixels - Value in pixels to be converted (i.e. px)
126
- * @param context (optional) - Baseline value
127
- */
128
- /**
129
- * Convert a font size to a dynamic font size.
130
- * Fonts that participate in Dynamic Type should use
131
- * dynamic font sizes.
132
- * @param size - The initial font size including the unit (i.e. px or pt)
133
- * @param unit (optional) - The unit to convert to. Use this if you want to
134
- * convert to a unit other than $baselineUnit.
135
- */
136
- /**
137
- * Convert a font size to a dynamic font size but impose
138
- * a maximum font size.
139
- * @param size - The initial font size including the unit (i.e. px or pt)
140
- * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
141
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
142
- * convert to a unit other than $baselineUnit.
143
- */
144
- /**
145
- * Convert a font size to a dynamic font size but impose
146
- * a minimum font size.
147
- * @param size - The initial font size including the unit (i.e. px or pt)
148
- * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
149
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
150
- * convert to a unit other than $baselineUnit.
151
- */
152
- /**
153
- * Convert a font size to a dynamic font size but impose
154
- * maximum and minimum font sizes.
155
- * @param size - The initial font size including the unit (i.e. px or pt)
156
- * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
157
- * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
158
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
159
- * convert to a unit other than $baselineUnit.
160
- */
161
- :host {
162
- --background: var(--token-bg-surface-default, var(--token-primitives-base-white, #ffffff));
163
- --color: var(--token-text-default, var(--token-primitives-neutral-1200, #242424));
164
- --border-color: currentColor;
165
- --padding-top: var(--token-space-200, var(--token-scale-200, 8px));
166
- --padding-bottom: var(--token-space-200, var(--token-scale-200, 8px));
167
- --padding-start: var(--token-space-200, var(--token-scale-200, 8px));
168
- --padding-end: var(--token-space-200, var(--token-scale-200, 8px));
169
- --min-height: var(--token-scale-1400, 56px);
170
- }
171
-
172
- .toolbar-container {
173
- gap: var(--token-space-400, var(--token-scale-400, 16px));
174
- z-index: 10;
175
- }
176
-
177
- .toolbar-background {
178
- z-index: -1;
179
- }
180
-
181
- .toolbar-content {
182
- flex: 1 1 auto;
183
- min-width: 0;
184
- }
185
-
186
- :host(.toolbar-searchbar) ::slotted(ion-searchbar) {
187
- padding-left: 0;
188
- padding-right: 0;
189
- padding-top: 0;
190
- padding-bottom: 0;
191
- }
192
-
193
- ::slotted(ion-buttons) {
194
- gap: var(--token-space-200, var(--token-scale-200, 8px));
195
- }
196
-
197
- ::slotted(ion-title) {
198
- -webkit-padding-start: var(--token-space-200, var(--token-scale-200, 8px));
199
- padding-inline-start: var(--token-space-200, var(--token-scale-200, 8px));
200
- -webkit-padding-end: var(--token-space-200, var(--token-scale-200, 8px));
201
- padding-inline-end: var(--token-space-200, var(--token-scale-200, 8px));
202
- }
203
-
204
- :host(.toolbar-title-large) ::slotted(ion-title) {
205
- -webkit-padding-start: var(--token-space-400, var(--token-scale-400, 16px));
206
- padding-inline-start: var(--token-space-400, var(--token-scale-400, 16px));
207
- -webkit-padding-end: var(--token-space-400, var(--token-scale-400, 16px));
208
- padding-inline-end: var(--token-space-400, var(--token-scale-400, 16px));
209
- }
210
-
211
- :host(.has-end-content) slot[name=end],
212
- :host(.show-end) slot[name=end] {
213
- display: flex;
214
- flex: 0 0 var(--start-end-size, 0);
215
- justify-content: flex-end;
216
- text-align: end;
217
- }
218
-
219
- :host(.has-start-content) slot[name=start],
220
- :host(.show-start) slot[name=start] {
221
- display: flex;
222
- flex: 0 0 var(--start-end-size, 0);
223
- }
224
-
225
- :host(.has-primary-content) slot[name=primary],
226
- :host(.show-primary) slot[name=primary] {
227
- display: flex;
228
- flex: 0 0 var(--primary-secondary-size, 0);
229
- justify-content: flex-end;
230
- text-align: end;
231
- }
232
-
233
- :host(.has-secondary-content) slot[name=secondary],
234
- :host(.show-secondary) slot[name=secondary] {
235
- display: flex;
236
- flex: 0 0 var(--primary-secondary-size, 0);
237
- }
238
-
239
- :host(.toolbar-title-placement-start) ::slotted(ion-title) {
240
- text-align: start;
241
- }
242
-
243
- :host(.toolbar-title-placement-center) ::slotted(ion-title) {
244
- text-align: center;
245
- }
246
-
247
- :host(.toolbar-title-placement-end) ::slotted(ion-title) {
248
- text-align: end;
249
- }
@@ -1,39 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- /**
5
- * Helpers for validating user-supplied CSS values using regular expressions, without
6
- * relying on browser CSS APIs.
7
- */
8
- // Matches `<length>` (`<number>` + unit identifier) or `<percentage>` (`<number>%`).
9
- const LENGTH_PERCENTAGE_PATTERN = /^[-+]?(?:\d+\.?\d*|\.\d+)(?:%|[a-z]+)$/i;
10
- // Matches simple `calc` / `min` / `max` / `clamp(...)` functions.
11
- const MATH_FUNCTION_PATTERN = /^(calc|min|max|clamp)\s*\(.+\)$/i;
12
- // Matches a `var(--name)` reference with an optional fallback, e.g.
13
- // `var(--my-gap)` or `var(--my-gap, 16px)`.
14
- const VAR_FUNCTION_PATTERN = /^var\(\s*--[^\s,)]+\s*(?:,[\s\S]*)?\)$/i;
15
- /**
16
- * Returns whether `value` matches the [length-percentage](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/length-percentage)
17
- * syntax. Accepts `<length>` (`<number>` + unit identifier) or `<percentage>` (`<number>%`).
18
- * Also supports simple `calc` / `min` / `max` / `clamp(...)` functions.
19
- *
20
- * @param value String value to validate.
21
- */
22
- export function isValidLengthPercentage(value) {
23
- const v = value.trim();
24
- if (!v) {
25
- return false;
26
- }
27
- return MATH_FUNCTION_PATTERN.test(v) || LENGTH_PERCENTAGE_PATTERN.test(v);
28
- }
29
- /**
30
- * Returns whether `value` is a single [`var()`](https://developer.mozilla.org/en-US/docs/Web/CSS/var)
31
- * reference, e.g. `var(--my-token)` or `var(--my-token, 16px)`. The referenced
32
- * custom property is resolved by the browser, so the resolved value is not
33
- * validated here.
34
- *
35
- * @param value String value to validate.
36
- */
37
- export function isCssVariable(value) {
38
- return VAR_FUNCTION_PATTERN.test(value.trim());
39
- }
@@ -1,40 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- import { doc } from "../browser/index";
5
- /**
6
- * Tracks an in-flight press on a clear button so a blur landing mid-press can't
7
- * hide or unmount the button before the press produces its click.
8
- *
9
- * Calling `preventDefault()` on `pointerdown` is meant to stop the field
10
- * blurring, but not every browser honors it (iOS Safari blurs anyway). The
11
- * press is released on `click` rather than `pointerup` because touch
12
- * dispatches the click after the finger lifts.
13
- *
14
- * @internal
15
- * @param onPressChange Receives the press state.
16
- */
17
- export const createClearButtonPressController = (onPressChange) => {
18
- const release = () => {
19
- doc === null || doc === void 0 ? void 0 : doc.removeEventListener('click', release);
20
- onPressChange(false);
21
- };
22
- const onPointerDown = (ev) => {
23
- ev.preventDefault();
24
- // Only a primary press produces a click.
25
- if (ev.button !== 0) {
26
- return;
27
- }
28
- onPressChange(true);
29
- doc === null || doc === void 0 ? void 0 : doc.addEventListener('click', release, { once: true });
30
- };
31
- // Teardown also clears the press, so a disconnect mid-press can't leave the button stuck visible.
32
- const destroy = () => {
33
- release();
34
- };
35
- return {
36
- onPointerDown,
37
- release,
38
- destroy,
39
- };
40
- };
@@ -1,47 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- // TODO(FW-6886, FW-6892, FW-6891): Remove this file in favor of the Modular Ionic component config. Each overlay will be able to select its own defaults for label placement and justify based on the interface and theme, so this utility will no longer be necessary.
5
- /**
6
- * Returns the default `labelPlacement` for a radio or checkbox option
7
- * rendered inside an overlay. Defaults follow each theme's established
8
- * option-row layout:
9
- * - `ionic`: always `"start"`.
10
- * - `ios`: `"start"` for radio in `alert` and `popover`. The `modal`
11
- * interface flips iOS radio back to `"end"`. Checkbox is always
12
- * `"end"` on iOS.
13
- * - everything else (e.g. `md`): `"end"`.
14
- *
15
- * `interfaceType` is optional; only `"modal"` changes the result, so
16
- * callers that aren't a modal can omit it.
17
- *
18
- * Used by `alert`, `select-popover`, and `select-modal` as the fallback
19
- * when an option doesn't explicitly set `labelPlacement`.
20
- */
21
- export const getOverlayLabelPlacement = (theme, control, interfaceType) => {
22
- if (theme === 'ionic' || (theme === 'ios' && control === 'radio' && interfaceType !== 'modal')) {
23
- return 'start';
24
- }
25
- return 'end';
26
- };
27
- /**
28
- * Returns the default `justify` for a radio or checkbox option rendered
29
- * inside an overlay. Defaults follow each theme's option-row layout:
30
- * - `ionic`: always `"space-between"`.
31
- * - `ios`: `"space-between"` for radio in `alert` and `popover`. The
32
- * `modal` interface falls back to `"start"`. Checkbox is always `"start"`
33
- * on iOS.
34
- * - everything else (e.g. `md`): `"start"`.
35
- *
36
- * `interfaceType` is optional; only `"modal"` changes the result, so
37
- * callers that aren't a modal can omit it.
38
- *
39
- * Used by `alert`, `select-popover`, and `select-modal` as the fallback when
40
- * an option doesn't explicitly set `justify`.
41
- */
42
- export const getOverlayLabelJustify = (theme, control, interfaceType) => {
43
- if (theme === 'ionic' || (theme === 'ios' && control === 'radio' && interfaceType !== 'modal')) {
44
- return 'space-between';
45
- }
46
- return 'start';
47
- };
@@ -1,178 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- import { readTask, writeTask } from "@stencil/core";
5
- import { getScrollElement } from "./content";
6
- const TOP_VISIBLE_THRESHOLD = 80;
7
- const SCROLL_HIDE_THRESHOLD = 60;
8
- const WHEEL_SUPPRESS_DURATION_MS = 80;
9
- const SUPPRESS_SHOW_DURATION_MS = 400;
10
- /**
11
- * Creates a controller that manages scroll-based hide/show behavior
12
- * for headers, footers, and tab bars.
13
- *
14
- * Listens to both wheel and scroll events. Wheel events (desktop mice)
15
- * give direction instantly via deltaY. Scroll events cover touch,
16
- * trackpad, and programmatic scrolling where wheel doesn't fire.
17
- * A short suppression window stops them from double-processing the
18
- * same gesture.
19
- *
20
- * When the user reverses scroll direction, we save that position as
21
- * an anchor. The bar only hides after scrolling 60px past that
22
- * anchor, which prevents flickering on small or jittery movements.
23
- * Showing is immediate on direction change.
24
- *
25
- * When `options` is provided, the controller also handles the DOM
26
- * setup: ResizeObserver for height tracking, CSS variable read/write,
27
- * content partner/hidden class toggling, inert/aria-hidden, and
28
- * full teardown cleanup. This avoids duplicating the same setup
29
- * across header, footer, and tab-bar.
30
- *
31
- * @internal
32
- * @param contentEl The content element to resolve the scroll element from.
33
- * @param options Configuration for DOM setup (classes, CSS vars, a11y).
34
- */
35
- export const createScrollHideController = async (contentEl, options) => {
36
- const { el, cssVar, hiddenClass, contentPartnerClass, contentHiddenClass, shouldKeepAriaHidden } = options;
37
- let controllerIsHidden = false;
38
- let resizeObserver;
39
- // --- DOM setup: height tracking, classes, a11y ---
40
- const updateHideHeight = () => {
41
- readTask(() => {
42
- const heightPx = el.offsetHeight;
43
- writeTask(() => {
44
- el.style.setProperty(cssVar, `${heightPx}px`);
45
- contentEl.style.setProperty(cssVar, `${heightPx}px`);
46
- });
47
- });
48
- };
49
- const setHidden = (hidden) => {
50
- controllerIsHidden = hidden;
51
- el.classList.toggle(hiddenClass, hidden);
52
- if (hidden) {
53
- el.setAttribute('inert', '');
54
- el.setAttribute('aria-hidden', 'true');
55
- }
56
- else {
57
- el.removeAttribute('inert');
58
- if (!shouldKeepAriaHidden || !shouldKeepAriaHidden()) {
59
- el.removeAttribute('aria-hidden');
60
- }
61
- }
62
- contentEl.classList.toggle(contentHiddenClass, hidden);
63
- };
64
- // --- Scroll math ---
65
- const scrollEl = await getScrollElement(contentEl);
66
- let lastScrollPosition = 0;
67
- let scrollPositionAtDirectionChange = 0;
68
- let lastWheelEventTimestamp = 0;
69
- let suppressShowUntil = 0;
70
- const commitHide = (hidden) => {
71
- if (hidden) {
72
- suppressShowUntil = Date.now() + SUPPRESS_SHOW_DURATION_MS;
73
- }
74
- else {
75
- suppressShowUntil = 0;
76
- }
77
- setHidden(hidden);
78
- };
79
- const handleWheel = (wheelEvent) => {
80
- lastWheelEventTimestamp = Date.now();
81
- readTask(() => {
82
- const currentScrollTop = scrollEl.scrollTop;
83
- // Both wheel and scroll events fire for mouse wheel input.
84
- // Scroll events are suppressed for 80ms after a wheel event,
85
- // but when they resume, handleScroll needs an up-to-date
86
- // lastScrollPosition or it may detect the wrong direction.
87
- lastScrollPosition = currentScrollTop;
88
- if (currentScrollTop <= TOP_VISIBLE_THRESHOLD) {
89
- if (controllerIsHidden) {
90
- writeTask(() => commitHide(false));
91
- }
92
- return;
93
- }
94
- if (wheelEvent.deltaY < 0) {
95
- scrollPositionAtDirectionChange = currentScrollTop;
96
- if (controllerIsHidden) {
97
- writeTask(() => commitHide(false));
98
- }
99
- }
100
- else if (wheelEvent.deltaY > 0) {
101
- const scrolledSinceDirectionChange = currentScrollTop - scrollPositionAtDirectionChange;
102
- if (scrolledSinceDirectionChange >= SCROLL_HIDE_THRESHOLD && !controllerIsHidden) {
103
- writeTask(() => commitHide(true));
104
- }
105
- }
106
- });
107
- };
108
- const handleScroll = () => {
109
- if (Date.now() - lastWheelEventTimestamp < WHEEL_SUPPRESS_DURATION_MS) {
110
- return;
111
- }
112
- readTask(() => {
113
- const currentScrollTop = scrollEl.scrollTop;
114
- if (currentScrollTop <= TOP_VISIBLE_THRESHOLD) {
115
- if (controllerIsHidden) {
116
- writeTask(() => commitHide(false));
117
- }
118
- lastScrollPosition = currentScrollTop;
119
- return;
120
- }
121
- if (currentScrollTop === lastScrollPosition) {
122
- return;
123
- }
124
- const isScrollingDown = currentScrollTop > lastScrollPosition;
125
- const wasScrollingDown = lastScrollPosition > scrollPositionAtDirectionChange;
126
- if (isScrollingDown !== wasScrollingDown) {
127
- scrollPositionAtDirectionChange = lastScrollPosition;
128
- }
129
- const scrolledSinceDirectionChange = Math.abs(currentScrollTop - scrollPositionAtDirectionChange);
130
- const requiredScrollDistance = isScrollingDown ? SCROLL_HIDE_THRESHOLD : 0;
131
- lastScrollPosition = currentScrollTop;
132
- if (scrolledSinceDirectionChange < requiredScrollDistance) {
133
- return;
134
- }
135
- const shouldHide = isScrollingDown;
136
- if (shouldHide !== controllerIsHidden) {
137
- if (!shouldHide && Date.now() < suppressShowUntil) {
138
- return;
139
- }
140
- writeTask(() => commitHide(shouldHide));
141
- }
142
- });
143
- };
144
- // --- Controller ---
145
- let initialized = false;
146
- const init = () => {
147
- initialized = true;
148
- updateHideHeight();
149
- if (typeof ResizeObserver !== 'undefined') {
150
- resizeObserver = new ResizeObserver(() => updateHideHeight());
151
- resizeObserver.observe(el);
152
- }
153
- scrollEl.addEventListener('scroll', handleScroll, { passive: true });
154
- scrollEl.addEventListener('wheel', handleWheel, { passive: true });
155
- contentEl.classList.add(contentPartnerClass);
156
- };
157
- const destroy = () => {
158
- if (!initialized)
159
- return;
160
- scrollEl.removeEventListener('scroll', handleScroll);
161
- scrollEl.removeEventListener('wheel', handleWheel);
162
- if (resizeObserver) {
163
- resizeObserver.disconnect();
164
- resizeObserver = undefined;
165
- }
166
- contentEl.classList.remove(contentPartnerClass, contentHiddenClass);
167
- contentEl.style.removeProperty(cssVar);
168
- if (controllerIsHidden) {
169
- el.classList.remove(hiddenClass);
170
- el.removeAttribute('inert');
171
- el.removeAttribute('aria-hidden');
172
- controllerIsHidden = false;
173
- }
174
- el.style.removeProperty(cssVar);
175
- };
176
- const isHidden = () => controllerIsHidden;
177
- return { isHidden, init, destroy };
178
- };
@@ -1,119 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- import { h } from "@stencil/core";
5
- import { sanitizeDOMTree } from "./sanitization/index";
6
- /**
7
- * Converts a DOM node into a Stencil VNode (or text string) so the
8
- * resulting tree is rendered through the component's normal render
9
- * path. Rendering through Stencil ensures that scoped CSS classes
10
- * (e.g. `sc-ion-action-sheet-ionic`) are applied to every element.
11
- *
12
- * Highly recommended to pre-sanitize the source DOM (see
13
- * `getOptionContent` in select.tsx). This function performs pure
14
- * structural conversion — no security filtering.
15
- *
16
- * Preserves attributes only — properties set imperatively on the source
17
- * element (e.g. `input.value` after a user types) won't carry through.
18
- * In practice this isn't a concern: interactive controls shouldn't
19
- * appear in select-option rich content since they'd nest inside the
20
- * overlay's button/radio/checkbox wrapper, which is invalid HTML and
21
- * an accessibility issue.
22
- *
23
- * @param node - The DOM node to convert. Text nodes become strings,
24
- * element nodes become VNodes, and any other node types are skipped.
25
- * @param keyPrefix - String prefix used to build a stable VNode key,
26
- * so Stencil's diff can preserve elements across re-renders.
27
- * @param index - Position of this node among its siblings. Combined
28
- * with `keyPrefix` to form the final unique key.
29
- * @returns The converted VNode, a text string, or `null` if the node
30
- * type isn't supported.
31
- *
32
- * @internal Exported only so it can be unit tested; not part of the
33
- * public API.
34
- */
35
- export const cloneToVNode = (node, keyPrefix, index) => {
36
- var _a;
37
- if (node.nodeType === Node.TEXT_NODE) {
38
- return (_a = node.textContent) !== null && _a !== void 0 ? _a : '';
39
- }
40
- if (node.nodeType !== Node.ELEMENT_NODE) {
41
- return null;
42
- }
43
- const el = node;
44
- const tag = el.tagName.toLowerCase();
45
- const key = `${keyPrefix}-${index}`;
46
- const attrs = { key };
47
- for (let i = 0; i < el.attributes.length; i++) {
48
- const attr = el.attributes.item(i);
49
- attrs[attr.name] = attr.value;
50
- }
51
- const children = Array.from(el.childNodes)
52
- .map((child, i) => cloneToVNode(child, key, i))
53
- .filter((c) => c !== null);
54
- return h(tag, attrs, children);
55
- };
56
- /**
57
- * Renders cloned DOM content as Stencil JSX. Walking the source DOM
58
- * into VNodes (rather than injecting it via innerHTML) keeps the
59
- * content inside Stencil's render path, so scoped CSS classes are
60
- * applied automatically and component attributes like `size` or
61
- * `color` survive intact.
62
- *
63
- * Span elements should be used when this content renders within buttons,
64
- * depending on the select interface. Buttons can only have phrasing
65
- * content to prevent accessibility issues.
66
- *
67
- * @param id - Unique identifier for generating stable virtual DOM keys.
68
- * @param content - The HTMLElement container whose child nodes will be cloned.
69
- * @param className - CSS class applied to the wrapper element.
70
- * @param useSpan - Whether to use a span element instead of a div for the wrapper.
71
- */
72
- const renderClonedContent = (id, content, className, useSpan = false) => {
73
- const Tag = useSpan ? 'span' : 'div';
74
- const keyPrefix = `${className}-${id}`;
75
- /**
76
- * Do not remove. This is the only sanitization pass for callers that pass
77
- * an `HTMLElement` straight to `renderOptionLabel` (e.g. vanilla JS)
78
- * without going through `getOptionContent`, which sanitizes upstream.
79
- * `cloneToVNode` does pure structural conversion and no security
80
- * filtering, so dropping this call would reopen an XSS hole on the
81
- * direct `HTMLElement` path.
82
- */
83
- sanitizeDOMTree(content);
84
- return (h(Tag, { class: className, key: keyPrefix }, Array.from(content.childNodes).map((child, i) => cloneToVNode(child, keyPrefix, i))));
85
- };
86
- /**
87
- * Renders the label content for a select option within an overlay
88
- * interface based on the presence of rich content.
89
- *
90
- * Span elements should be used when this content renders within buttons,
91
- * depending on the select interface. Buttons can only have phrasing
92
- * content to prevent accessibility issues.
93
- *
94
- * @param option - The content option data containing label, slots,
95
- * and description.
96
- * @param className - The base CSS class for the label element.
97
- * @param useSpan - Whether to use a span element instead of a div for the label.
98
- */
99
- export const renderOptionLabel = (option, className, useSpan = false) => {
100
- const { id, label, startContent, endContent, description } = option;
101
- const hasRichContent = !!startContent || !!endContent || !!description;
102
- const Tag = useSpan ? 'span' : 'div';
103
- // Render simple string label if there is no rich content to display
104
- if (!hasRichContent && (typeof label === 'string' || !label)) {
105
- return (h(Tag, { class: className, key: `${className}-${id}` }, label));
106
- }
107
- // Render the main label
108
- const labelEl = typeof label === 'string' || !label ? (
109
- // Label is a simple string or undefined
110
- h(Tag, { key: `${className}-label-${id}` }, label)) : (
111
- // Label is an HTMLElement with potential rich content
112
- renderClonedContent(id, label, `${className}-text`, useSpan));
113
- // No rich content, render just the label
114
- if (!hasRichContent) {
115
- return (h(Tag, { class: className, key: `${className}-${id}` }, labelEl));
116
- }
117
- // Render label with rich content (start, end, description)
118
- return (h(Tag, { class: `${className} ${className}-has-rich-content`, key: `${className}-${id}` }, startContent && renderClonedContent(id, startContent, 'select-option-start', useSpan), h(Tag, { class: "select-option-content", key: `${className}-content-${id}` }, labelEl, description && (h(Tag, { class: "select-option-description", key: `${className}-desc-${id}` }, description))), endContent && renderClonedContent(id, endContent, 'select-option-end', useSpan)));
119
- };
@@ -1,6 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- const caretDownSvg = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNTYgMjU2IiBmaWxsPSJjdXJyZW50Q29sb3IiPjxwYXRoIGQ9Ik0yMTMuNjYsMTAxLjY2bC04MCw4MGE4LDgsMCwwLDEtMTEuMzIsMGwtODAtODBBOCw4LDAsMCwxLDUzLjY2LDkwLjM0TDEyOCwxNjQuNjlsNzQuMzQtNzQuMzVhOCw4LDAsMCwxLDExLjMyLDExLjMyWiIvPjwvc3ZnPg==';
5
-
6
- export { caretDownSvg as c };
@@ -1,6 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- const caretLeftSvg = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNTYgMjU2IiBmaWxsPSJjdXJyZW50Q29sb3IiPjxwYXRoIGQ9Ik0xNjUuNjYsMjAyLjM0YTgsOCwwLDAsMS0xMS4zMiwxMS4zMmwtODAtODBhOCw4LDAsMCwxLDAtMTEuMzJsODAtODBhOCw4LDAsMCwxLDExLjMyLDExLjMyTDkxLjMxLDEyOFoiLz48L3N2Zz4=';
5
-
6
- export { caretLeftSvg as c };