@ionic/core 9.0.11-dev.11793890855.1bf6a6e5 → 9.0.11-dev.11793906456.1ea7a0a7

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 (1105) hide show
  1. package/components/index.js +1 -1
  2. package/components/ion-accordion-group.js +1 -1
  3. package/components/ion-accordion.js +1 -1
  4. package/components/ion-action-sheet.js +1 -1
  5. package/components/ion-alert.js +1 -1
  6. package/components/ion-app.js +1 -1
  7. package/components/ion-avatar.js +1 -1
  8. package/components/ion-back-button.js +1 -1
  9. package/components/ion-backdrop.js +1 -1
  10. package/components/ion-badge.js +1 -1
  11. package/components/ion-breadcrumb.js +1 -1
  12. package/components/ion-breadcrumbs.js +1 -1
  13. package/components/ion-button.js +1 -1
  14. package/components/ion-buttons.js +1 -1
  15. package/components/ion-card-content.js +1 -1
  16. package/components/ion-card-header.js +1 -1
  17. package/components/ion-card-subtitle.js +1 -1
  18. package/components/ion-card-title.js +1 -1
  19. package/components/ion-card.js +1 -1
  20. package/components/ion-checkbox.js +1 -1
  21. package/components/ion-chip.js +1 -1
  22. package/components/ion-col.js +1 -1
  23. package/components/ion-content.js +1 -1
  24. package/components/ion-datetime-button.js +1 -1
  25. package/components/ion-datetime.js +1 -1
  26. package/components/ion-fab-button.js +1 -1
  27. package/components/ion-fab-list.js +1 -1
  28. package/components/ion-fab.js +1 -1
  29. package/components/ion-footer.js +1 -1
  30. package/components/ion-grid.js +1 -1
  31. package/components/ion-header.js +1 -1
  32. package/components/ion-icon.js +1 -1
  33. package/components/ion-img.js +1 -1
  34. package/components/ion-infinite-scroll-content.js +1 -1
  35. package/components/ion-infinite-scroll.js +1 -1
  36. package/components/ion-input-otp.js +1 -1
  37. package/components/ion-input-password-toggle.js +1 -1
  38. package/components/ion-input.js +1 -1
  39. package/components/ion-item-divider.js +1 -1
  40. package/components/ion-item-group.js +1 -1
  41. package/components/ion-item-option.js +1 -1
  42. package/components/ion-item-options.js +1 -1
  43. package/components/ion-item-sliding.js +1 -1
  44. package/components/ion-item.js +1 -1
  45. package/components/ion-label.js +1 -1
  46. package/components/ion-list-header.js +1 -1
  47. package/components/ion-list.js +1 -1
  48. package/components/ion-loading.js +1 -1
  49. package/components/ion-menu-button.js +1 -1
  50. package/components/ion-menu-toggle.js +1 -1
  51. package/components/ion-menu.js +1 -1
  52. package/components/ion-modal.js +1 -1
  53. package/components/ion-nav-link.js +1 -1
  54. package/components/ion-nav.js +1 -1
  55. package/components/ion-note.js +1 -1
  56. package/components/ion-picker-column-option.js +1 -1
  57. package/components/ion-picker-column.js +1 -1
  58. package/components/ion-picker.js +1 -1
  59. package/components/ion-popover.js +1 -1
  60. package/components/ion-progress-bar.js +1 -1
  61. package/components/ion-radio-group.js +1 -1
  62. package/components/ion-radio.js +1 -1
  63. package/components/ion-range.js +1 -1
  64. package/components/ion-refresher-content.js +1 -1
  65. package/components/ion-refresher.js +1 -1
  66. package/components/ion-reorder-group.js +1 -1
  67. package/components/ion-reorder.js +1 -1
  68. package/components/ion-ripple-effect.js +1 -1
  69. package/components/ion-route-redirect.js +1 -1
  70. package/components/ion-route.js +1 -1
  71. package/components/ion-router-link.js +1 -1
  72. package/components/ion-router-outlet.js +1 -1
  73. package/components/ion-router.js +1 -1
  74. package/components/ion-row.js +1 -1
  75. package/components/ion-searchbar.js +1 -1
  76. package/components/ion-segment-button.js +1 -1
  77. package/components/ion-segment-content.js +1 -1
  78. package/components/ion-segment-view.js +1 -1
  79. package/components/ion-segment.js +1 -1
  80. package/components/ion-select-modal.js +1 -1
  81. package/components/ion-select-option.js +1 -1
  82. package/components/ion-select-popover.js +1 -1
  83. package/components/ion-select.js +1 -1
  84. package/components/ion-skeleton-text.js +1 -1
  85. package/components/ion-spinner.js +1 -1
  86. package/components/ion-split-pane.js +1 -1
  87. package/components/ion-tab-bar.js +1 -1
  88. package/components/ion-tab-button.js +1 -1
  89. package/components/ion-tab.js +1 -1
  90. package/components/ion-tabs.js +1 -1
  91. package/components/ion-text.js +1 -1
  92. package/components/ion-textarea.js +1 -1
  93. package/components/ion-thumbnail.js +1 -1
  94. package/components/ion-title.js +1 -1
  95. package/components/ion-toast.js +1 -1
  96. package/components/ion-toggle.js +1 -1
  97. package/components/ion-toolbar.js +1 -1
  98. package/components/{p-Dce65ayP.js → p-07wRJfkt.js} +1 -1
  99. package/components/p-3avHDbEF.js +4 -0
  100. package/components/p-7KepMw9O.js +4 -0
  101. package/components/p-7NbIvzb4.js +4 -0
  102. package/components/p-B3dSuofL.js +4 -0
  103. package/components/p-BBsseItU.js +4 -0
  104. package/components/p-BMHdI-wb.js +4 -0
  105. package/components/p-BSQPZ79H.js +4 -0
  106. package/components/p-BT2InaHz.js +4 -0
  107. package/components/{p-BmnPbSf3.js → p-BWbz71uB.js} +1 -1
  108. package/components/p-BZ1k9WL7.js +4 -0
  109. package/components/p-BhamHSw3.js +4 -0
  110. package/components/p-BmVRXR1y.js +4 -0
  111. package/components/p-BrrMFd9K.js +4 -0
  112. package/components/p-C-SO5kIs.js +4 -0
  113. package/components/p-C0TdbIVo.js +4 -0
  114. package/components/p-C6Y0cCH_.js +4 -0
  115. package/components/p-C8BAigo3.js +4 -0
  116. package/components/{p-i08Rz__6.js → p-CCFj0kgH.js} +1 -1
  117. package/components/p-CRb2xRCz.js +4 -0
  118. package/components/p-CUQjkOdi.js +4 -0
  119. package/components/p-CW84OFQa.js +4 -0
  120. package/{dist/ionic/p-CaOPF8Xt.js → components/p-CdrNHfZl.js} +1 -1
  121. package/components/{p-B8TMb1l1.js → p-ChkSQqfP.js} +1 -1
  122. package/components/{p-CXzJ234J.js → p-ChsJlFCQ.js} +1 -1
  123. package/components/p-CjPRDxby.js +4 -0
  124. package/components/p-CohRJRIu.js +4 -0
  125. package/components/{p-YAWKbhjV.js → p-CqvARtmt.js} +1 -1
  126. package/components/p-Ct2aBEue.js +4 -0
  127. package/components/p-CvyvLbPe.js +4 -0
  128. package/components/{p-CiEBXUnh.js → p-CwEis84J.js} +1 -1
  129. package/{dist/ionic/p-BPA4-c6T.js → components/p-D5_mEbGJ.js} +1 -1
  130. package/components/p-D8FyR2IB.js +4 -0
  131. package/components/{p-cm7z1a2E.js → p-DHo45oj7.js} +1 -1
  132. package/components/p-DJztqcrH.js +4 -0
  133. package/components/p-DLEJ61lJ.js +4 -0
  134. package/components/p-DRm4t-by.js +4 -0
  135. package/components/p-DTGCMApY.js +4 -0
  136. package/components/p-D_U0pDe5.js +4 -0
  137. package/components/p-DaW9OZ6S.js +4 -0
  138. package/components/p-Dah8BCNg.js +4 -0
  139. package/components/p-DaojW_d_.js +4 -0
  140. package/components/{p-CSSj6cqb.js → p-Dbi3KqKm.js} +1 -1
  141. package/components/p-DnBabjgY.js +4 -0
  142. package/components/p-Ds5vN3iu.js +4 -0
  143. package/components/p-DwTzX8Vi.js +4 -0
  144. package/components/p-Dy7x-KDF.js +4 -0
  145. package/components/p-HthJZjZ6.js +4 -0
  146. package/components/p-KbMCbGRA.js +4 -0
  147. package/{dist/ionic/p-B7XMQegr.js → components/p-LkEGRiq0.js} +1 -1
  148. package/components/p-LpMHEu3v.js +4 -0
  149. package/components/p-PkD1iLNN.js +4 -0
  150. package/components/p-R4UxBukQ.js +4 -0
  151. package/components/p-RhI78AKb.js +4 -0
  152. package/components/p-byZM6qHV.js +4 -0
  153. package/components/p-hLu-eIbb.js +4 -0
  154. package/components/p-kKGBuIkf.js +4 -0
  155. package/components/p-z-EWo6r-.js +4 -0
  156. package/css/core.css +1 -1
  157. package/css/core.css.map +1 -1
  158. package/css/display.css +1 -1
  159. package/css/display.css.map +1 -1
  160. package/css/flex-utils.css +1 -1
  161. package/css/flex-utils.css.map +1 -1
  162. package/css/float-elements.css.map +1 -1
  163. package/css/global.bundle.css.map +1 -1
  164. package/css/ionic-swiper.css +1 -1
  165. package/css/ionic-swiper.css.map +1 -1
  166. package/css/ionic.bundle.css +1 -1
  167. package/css/ionic.bundle.css.map +1 -1
  168. package/css/normalize.css.map +1 -1
  169. package/css/padding.css.map +1 -1
  170. package/css/palettes/dark.always.css.map +1 -1
  171. package/css/palettes/dark.class.css.map +1 -1
  172. package/css/palettes/dark.system.css.map +1 -1
  173. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  174. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  175. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  176. package/css/palettes/high-contrast.always.css.map +1 -1
  177. package/css/palettes/high-contrast.class.css.map +1 -1
  178. package/css/palettes/high-contrast.system.css.map +1 -1
  179. package/css/structure.css.map +1 -1
  180. package/css/text-alignment.css.map +1 -1
  181. package/css/text-transformation.css.map +1 -1
  182. package/css/typography.css.map +1 -1
  183. package/css/utils.bundle.css +1 -1
  184. package/css/utils.bundle.css.map +1 -1
  185. package/dist/cjs/{animation-zKIdNEmG.js → animation-UiXhXV49.js} +3 -3
  186. package/dist/cjs/{app-globals-BDrxn8eR.js → app-globals-BoFCZq0K.js} +1 -1
  187. package/dist/cjs/{attribute-controller-D7O2snOZ.js → attribute-controller-0-lwbVEj.js} +2 -3
  188. package/dist/cjs/{button-active-CY7cZvH5.js → button-active-DzN1aPt-.js} +2 -2
  189. package/dist/cjs/{capacitor-DmA66EwP.js → capacitor-BTjfXFlK.js} +3 -3
  190. package/dist/cjs/focus-visible-CCvKiLh3.js +77 -0
  191. package/dist/cjs/{format-C6r4Asi4.js → format-CVjpvAl1.js} +1 -1
  192. package/dist/cjs/{framework-delegate-CAdDEnFS.js → framework-delegate-hNMKEiQC.js} +2 -4
  193. package/dist/cjs/{haptic-Ch-X4gRx.js → haptic-BD5qPgy8.js} +1 -1
  194. package/dist/cjs/{helpers-DHNLF4fD.js → helpers-BrETKUUX.js} +10 -88
  195. package/dist/cjs/{index-B3s1jjBU.js → index-B4ONUQRp.js} +1 -1
  196. package/dist/cjs/{index-C3pmpKlo.js → index-BTc0Jnhx.js} +15 -17
  197. package/dist/cjs/{index-CB1PuDlX.js → index-BiQyIvoc.js} +5 -55
  198. package/dist/cjs/{index-DhGCo_n8.js → index-DMz2Eyis.js} +2 -2
  199. package/dist/cjs/{index-lD5wTj_b.js → index-DNBYnlrc.js} +4 -4
  200. package/dist/cjs/{index-C6QFfpm5.js → index-bwclzjks.js} +7 -9
  201. package/dist/cjs/{index-CxDnX7hd.js → index-wOmugbdg.js} +0 -2
  202. package/dist/cjs/index.cjs.js +18 -20
  203. package/dist/cjs/{input-shims-CjkWx7ae.js → input-shims-CRmdShL9.js} +16 -18
  204. package/dist/cjs/{input.utils-CD4DNiim.js → input.utils-Becpo0ax.js} +1 -1
  205. package/dist/cjs/ion-accordion_2.cjs.entry.js +29 -57
  206. package/dist/cjs/ion-action-sheet.cjs.entry.js +37 -42
  207. package/dist/cjs/ion-alert.cjs.entry.js +45 -50
  208. package/dist/cjs/ion-app_8.cjs.entry.js +196 -466
  209. package/dist/cjs/ion-avatar_3.cjs.entry.js +13 -124
  210. package/dist/cjs/ion-back-button.cjs.entry.js +23 -31
  211. package/dist/cjs/ion-backdrop.cjs.entry.js +7 -11
  212. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +18 -42
  213. package/dist/cjs/ion-button_2.cjs.entry.js +23 -61
  214. package/dist/cjs/ion-card_5.cjs.entry.js +34 -57
  215. package/dist/cjs/ion-checkbox.cjs.entry.js +17 -43
  216. package/dist/cjs/ion-chip.cjs.entry.js +9 -51
  217. package/dist/cjs/ion-col_3.cjs.entry.js +63 -56
  218. package/dist/cjs/ion-datetime-button.cjs.entry.js +13 -45
  219. package/dist/cjs/ion-datetime.cjs.entry.js +63 -407
  220. package/dist/cjs/ion-fab_3.cjs.entry.js +28 -40
  221. package/dist/cjs/ion-img.cjs.entry.js +4 -9
  222. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +16 -91
  223. package/dist/cjs/ion-input-otp.cjs.entry.js +10 -75
  224. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +14 -42
  225. package/dist/cjs/ion-input.cjs.entry.js +38 -147
  226. package/dist/cjs/ion-item-option_3.cjs.entry.js +52 -466
  227. package/dist/cjs/ion-item_8.cjs.entry.js +51 -118
  228. package/dist/cjs/ion-loading.cjs.entry.js +28 -33
  229. package/dist/cjs/ion-menu_3.cjs.entry.js +36 -54
  230. package/dist/cjs/ion-modal.cjs.entry.js +155 -304
  231. package/dist/cjs/ion-nav_2.cjs.entry.js +10 -14
  232. package/dist/cjs/ion-picker-column-option.cjs.entry.js +8 -13
  233. package/dist/cjs/ion-picker-column.cjs.entry.js +15 -17
  234. package/dist/cjs/ion-picker.cjs.entry.js +6 -11
  235. package/dist/cjs/ion-popover.cjs.entry.js +28 -33
  236. package/dist/cjs/ion-progress-bar.cjs.entry.js +9 -28
  237. package/dist/cjs/ion-radio_2.cjs.entry.js +18 -37
  238. package/dist/cjs/ion-range.cjs.entry.js +13 -21
  239. package/dist/cjs/ion-refresher_2.cjs.entry.js +20 -45
  240. package/dist/cjs/ion-reorder_2.cjs.entry.js +13 -31
  241. package/dist/cjs/ion-ripple-effect.cjs.entry.js +7 -16
  242. package/dist/cjs/ion-route_4.cjs.entry.js +10 -12
  243. package/dist/cjs/ion-searchbar.cjs.entry.js +32 -118
  244. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  245. package/dist/cjs/ion-segment-view.cjs.entry.js +3 -13
  246. package/dist/cjs/ion-segment_2.cjs.entry.js +16 -24
  247. package/dist/cjs/ion-select-modal.cjs.entry.js +25 -54
  248. package/dist/cjs/ion-select_3.cjs.entry.js +81 -203
  249. package/dist/cjs/ion-spinner.cjs.entry.js +8 -31
  250. package/dist/cjs/ion-split-pane.cjs.entry.js +9 -14
  251. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +27 -150
  252. package/dist/cjs/ion-tab_2.cjs.entry.js +7 -9
  253. package/dist/cjs/ion-text.cjs.entry.js +7 -8
  254. package/dist/cjs/ion-textarea.cjs.entry.js +41 -178
  255. package/dist/cjs/ion-toast.cjs.entry.js +57 -86
  256. package/dist/cjs/ion-toggle.cjs.entry.js +25 -67
  257. package/dist/cjs/ionic-global-48ceLiJ6.js +156 -0
  258. package/dist/cjs/ionic.cjs.js +4 -5
  259. package/dist/cjs/{ios.transition-BjOYqzH0.js → ios.transition-CN092Fh6.js} +4 -7
  260. package/dist/cjs/{item-multiple-inputs-D0lzjl68.js → item-multiple-inputs-C-hz7xrh.js} +1 -1
  261. package/dist/cjs/{keyboard-Cix5TVkD.js → keyboard-4OBzkjOG.js} +5 -3
  262. package/dist/cjs/{keyboard-cHxZlTyz.js → keyboard-BMpscicm.js} +1 -1
  263. package/dist/cjs/keyboard-controller-DZE97OtR.js +167 -0
  264. package/dist/cjs/loader.cjs.js +4 -5
  265. package/dist/cjs/{md.transition-C4i7l6ui.js → md.transition-B6961Ny9.js} +4 -6
  266. package/dist/cjs/{overlay-control-label-DnRLQR1t.js → overlay-control-label-D2sdL2O8.js} +11 -13
  267. package/dist/cjs/{overlays-DziOxcCT.js → overlays-BbVQG3UT.js} +176 -314
  268. package/dist/cjs/{select-option-render-X_iZ-xeh.js → select-option-render-CzyhrkOu.js} +2 -2
  269. package/dist/cjs/{slot-mutation-controller-BS-L1szN.js → slot-mutation-controller-CRa_cKOh.js} +13 -100
  270. package/dist/cjs/{status-tap-D5yiKwdj.js → status-tap-hRIvObiJ.js} +3 -5
  271. package/dist/cjs/{swipe-back-xM_5R5s-.js → swipe-back-C-aigThB.js} +2 -4
  272. package/dist/cjs/{theme-Cy4joHPt.js → theme-Bw0rpaNN.js} +1 -25
  273. package/dist/cjs/validity-BpS37YFM.js +19 -0
  274. package/dist/collection/collection-manifest.json +0 -8
  275. package/dist/collection/components/accordion/accordion.ios.css +58 -73
  276. package/dist/collection/components/accordion/accordion.js +27 -36
  277. package/dist/collection/components/accordion/accordion.md.css +59 -67
  278. package/dist/collection/components/accordion-group/accordion-group.ios.css +4 -16
  279. package/dist/collection/components/accordion-group/accordion-group.js +8 -44
  280. package/dist/collection/components/accordion-group/accordion-group.md.css +4 -22
  281. package/dist/collection/components/action-sheet/action-sheet.ios.css +54 -184
  282. package/dist/collection/components/action-sheet/action-sheet.js +13 -16
  283. package/dist/collection/components/action-sheet/action-sheet.md.css +55 -179
  284. package/dist/collection/components/alert/alert.ios.css +54 -247
  285. package/dist/collection/components/alert/alert.js +19 -22
  286. package/dist/collection/components/alert/alert.md.css +56 -243
  287. package/dist/collection/components/app/app.js +83 -15
  288. package/dist/collection/components/avatar/avatar.ios.css +33 -7
  289. package/dist/collection/components/avatar/avatar.js +4 -120
  290. package/dist/collection/components/avatar/avatar.md.css +0 -51
  291. package/dist/collection/components/back-button/back-button.ios.css +48 -60
  292. package/dist/collection/components/back-button/back-button.js +20 -26
  293. package/dist/collection/components/back-button/back-button.md.css +48 -60
  294. package/dist/collection/components/backdrop/backdrop.ios.css +19 -56
  295. package/dist/collection/components/backdrop/backdrop.js +6 -12
  296. package/dist/collection/components/backdrop/backdrop.md.css +19 -56
  297. package/dist/collection/components/badge/badge.ios.css +12 -137
  298. package/dist/collection/components/badge/badge.js +9 -143
  299. package/dist/collection/components/badge/badge.md.css +12 -122
  300. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +8 -20
  301. package/dist/collection/components/breadcrumb/breadcrumb.js +11 -31
  302. package/dist/collection/components/breadcrumb/breadcrumb.md.css +8 -20
  303. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +0 -6
  304. package/dist/collection/components/breadcrumbs/breadcrumbs.js +9 -11
  305. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +0 -6
  306. package/dist/collection/components/button/button.ios.css +46 -154
  307. package/dist/collection/components/button/button.js +27 -63
  308. package/dist/collection/components/button/button.md.css +50 -150
  309. package/dist/collection/components/buttons/buttons.ios.css +7 -59
  310. package/dist/collection/components/buttons/buttons.js +9 -15
  311. package/dist/collection/components/buttons/buttons.md.css +3 -55
  312. package/dist/collection/components/card/card.ios.css +14 -65
  313. package/dist/collection/components/card/card.js +10 -41
  314. package/dist/collection/components/card/card.md.css +14 -65
  315. package/dist/collection/components/card-content/card-content.ios.css +35 -20
  316. package/dist/collection/components/card-content/card-content.js +10 -12
  317. package/dist/collection/components/card-content/card-content.md.css +35 -20
  318. package/dist/collection/components/card-header/card-header.ios.css +15 -27
  319. package/dist/collection/components/card-header/card-header.js +10 -13
  320. package/dist/collection/components/card-header/card-header.md.css +15 -27
  321. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +0 -12
  322. package/dist/collection/components/card-subtitle/card-subtitle.js +8 -11
  323. package/dist/collection/components/card-subtitle/card-subtitle.md.css +0 -12
  324. package/dist/collection/components/card-title/card-title.ios.css +0 -73
  325. package/dist/collection/components/card-title/card-title.js +8 -11
  326. package/dist/collection/components/card-title/card-title.md.css +0 -73
  327. package/dist/collection/components/checkbox/checkbox.ios.css +115 -244
  328. package/dist/collection/components/checkbox/checkbox.js +15 -80
  329. package/dist/collection/components/checkbox/checkbox.md.css +116 -245
  330. package/dist/collection/components/chip/chip.ios.css +14 -67
  331. package/dist/collection/components/chip/chip.js +8 -108
  332. package/dist/collection/components/chip/chip.md.css +14 -67
  333. package/dist/collection/components/col/col.css +4 -192
  334. package/dist/collection/components/col/col.js +67 -210
  335. package/dist/collection/components/content/{content.ios.css → content.css} +37 -106
  336. package/dist/collection/components/content/content.js +13 -22
  337. package/dist/collection/components/datetime/datetime.ios.css +114 -469
  338. package/dist/collection/components/datetime/datetime.js +52 -451
  339. package/dist/collection/components/datetime/datetime.md.css +103 -447
  340. package/dist/collection/components/datetime/utils/data.js +5 -5
  341. package/dist/collection/components/datetime/utils/state.js +1 -18
  342. package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -6
  343. package/dist/collection/components/datetime-button/datetime-button.js +12 -43
  344. package/dist/collection/components/datetime-button/datetime-button.md.css +0 -6
  345. package/dist/collection/components/fab/fab.css +1 -25
  346. package/dist/collection/components/fab/fab.js +5 -9
  347. package/dist/collection/components/fab-button/fab-button.ios.css +6 -18
  348. package/dist/collection/components/fab-button/fab-button.js +21 -31
  349. package/dist/collection/components/fab-button/fab-button.md.css +8 -20
  350. package/dist/collection/components/fab-list/fab-list.css +0 -12
  351. package/dist/collection/components/fab-list/fab-list.js +5 -9
  352. package/dist/collection/components/footer/footer.ios.css +6 -33
  353. package/dist/collection/components/footer/footer.js +25 -117
  354. package/dist/collection/components/footer/footer.md.css +0 -40
  355. package/dist/collection/components/grid/grid.css +0 -12
  356. package/dist/collection/components/grid/grid.js +5 -9
  357. package/dist/collection/components/header/header.ios.css +133 -178
  358. package/dist/collection/components/header/header.js +39 -180
  359. package/dist/collection/components/header/header.md.css +9 -199
  360. package/dist/collection/components/header/header.utils.js +13 -5
  361. package/dist/collection/components/img/img.js +2 -7
  362. package/dist/collection/components/infinite-scroll/infinite-scroll.js +5 -99
  363. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -12
  364. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +10 -16
  365. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -12
  366. package/dist/collection/components/input/input.ios.css +160 -254
  367. package/dist/collection/components/input/input.js +44 -172
  368. package/dist/collection/components/input/input.md.css +232 -224
  369. package/dist/collection/components/input-otp/input-otp.ios.css +60 -105
  370. package/dist/collection/components/input-otp/input-otp.js +8 -74
  371. package/dist/collection/components/input-otp/input-otp.md.css +60 -105
  372. package/dist/collection/components/input-password-toggle/input-password-toggle.js +10 -37
  373. package/dist/collection/components/item/item.ios.css +80 -120
  374. package/dist/collection/components/item/item.js +21 -51
  375. package/dist/collection/components/item/item.md.css +79 -131
  376. package/dist/collection/components/item-divider/item-divider.ios.css +0 -18
  377. package/dist/collection/components/item-divider/item-divider.js +8 -11
  378. package/dist/collection/components/item-divider/item-divider.md.css +0 -18
  379. package/dist/collection/components/item-group/item-group.ios.css +0 -12
  380. package/dist/collection/components/item-group/item-group.js +7 -13
  381. package/dist/collection/components/item-group/item-group.md.css +0 -12
  382. package/dist/collection/components/item-option/item-option.ios.css +29 -136
  383. package/dist/collection/components/item-option/item-option.js +9 -73
  384. package/dist/collection/components/item-option/item-option.md.css +29 -136
  385. package/dist/collection/components/item-options/item-options.ios.css +34 -77
  386. package/dist/collection/components/item-options/item-options.js +7 -13
  387. package/dist/collection/components/item-options/item-options.md.css +34 -77
  388. package/dist/collection/components/item-sliding/{item-sliding.native.css → item-sliding.css} +9 -84
  389. package/dist/collection/components/item-sliding/item-sliding.js +35 -419
  390. package/dist/collection/components/item-sliding/test/test.utils.js +0 -13
  391. package/dist/collection/components/label/label.ios.css +0 -18
  392. package/dist/collection/components/label/label.js +8 -11
  393. package/dist/collection/components/label/label.md.css +0 -18
  394. package/dist/collection/components/list/list.ios.css +14 -54
  395. package/dist/collection/components/list/list.js +9 -48
  396. package/dist/collection/components/list/list.md.css +16 -56
  397. package/dist/collection/components/list-header/list-header.ios.css +38 -82
  398. package/dist/collection/components/list-header/list-header.js +8 -11
  399. package/dist/collection/components/list-header/list-header.md.css +38 -82
  400. package/dist/collection/components/loading/loading.ios.css +1 -13
  401. package/dist/collection/components/loading/loading.js +12 -15
  402. package/dist/collection/components/loading/loading.md.css +1 -13
  403. package/dist/collection/components/menu/menu.ios.css +3 -15
  404. package/dist/collection/components/menu/menu.js +7 -12
  405. package/dist/collection/components/menu/menu.md.css +3 -15
  406. package/dist/collection/components/menu-button/menu-button.ios.css +14 -48
  407. package/dist/collection/components/menu-button/menu-button.js +10 -23
  408. package/dist/collection/components/menu-button/menu-button.md.css +15 -49
  409. package/dist/collection/components/menu-toggle/menu-toggle.js +5 -8
  410. package/dist/collection/components/modal/animations/sheet.js +2 -8
  411. package/dist/collection/components/modal/gestures/sheet.js +8 -96
  412. package/dist/collection/components/modal/modal.ios.css +70 -178
  413. package/dist/collection/components/modal/modal.js +13 -52
  414. package/dist/collection/components/modal/modal.md.css +70 -178
  415. package/dist/collection/components/nav/nav.css +1 -7
  416. package/dist/collection/components/nav/nav.js +4 -10
  417. package/dist/collection/components/nav-link/nav-link.js +1 -5
  418. package/dist/collection/components/note/note.ios.css +0 -12
  419. package/dist/collection/components/note/note.js +8 -11
  420. package/dist/collection/components/note/note.md.css +0 -12
  421. package/dist/collection/components/picker/picker.ios.css +3 -15
  422. package/dist/collection/components/picker/picker.js +5 -8
  423. package/dist/collection/components/picker/picker.md.css +3 -15
  424. package/dist/collection/components/picker-column/picker-column.css +2 -9
  425. package/dist/collection/components/picker-column/picker-column.js +7 -8
  426. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
  427. package/dist/collection/components/picker-column-option/picker-column-option.js +7 -13
  428. package/dist/collection/components/picker-column-option/picker-column-option.md.css +0 -6
  429. package/dist/collection/components/popover/popover.ios.css +1 -13
  430. package/dist/collection/components/popover/popover.js +16 -19
  431. package/dist/collection/components/popover/popover.md.css +1 -13
  432. package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -48
  433. package/dist/collection/components/progress-bar/progress-bar.js +7 -43
  434. package/dist/collection/components/progress-bar/progress-bar.md.css +17 -48
  435. package/dist/collection/components/radio/radio.ios.css +102 -207
  436. package/dist/collection/components/radio/radio.js +9 -14
  437. package/dist/collection/components/radio/radio.md.css +102 -207
  438. package/dist/collection/components/radio-group/radio-group.ios.css +19 -43
  439. package/dist/collection/components/radio-group/radio-group.js +7 -48
  440. package/dist/collection/components/radio-group/radio-group.md.css +19 -43
  441. package/dist/collection/components/range/range.ios.css +85 -128
  442. package/dist/collection/components/range/range.js +10 -16
  443. package/dist/collection/components/range/range.md.css +85 -128
  444. package/dist/collection/components/refresher/refresher.ios.css +1 -14
  445. package/dist/collection/components/refresher/refresher.js +8 -11
  446. package/dist/collection/components/refresher/refresher.md.css +2 -15
  447. package/dist/collection/components/refresher-content/refresher-content.js +7 -34
  448. package/dist/collection/components/reorder/reorder.ios.css +0 -6
  449. package/dist/collection/components/reorder/reorder.js +6 -25
  450. package/dist/collection/components/reorder/reorder.md.css +0 -6
  451. package/dist/collection/components/reorder-group/reorder-group.css +0 -6
  452. package/dist/collection/components/reorder-group/reorder-group.js +4 -8
  453. package/dist/collection/components/ripple-effect/{ripple-effect.common.css → ripple-effect.css} +1 -7
  454. package/dist/collection/components/ripple-effect/ripple-effect.js +6 -14
  455. package/dist/collection/components/route/route.js +0 -4
  456. package/dist/collection/components/router/router.js +0 -4
  457. package/dist/collection/components/router-link/router-link.css +2 -8
  458. package/dist/collection/components/router-link/router-link.js +5 -9
  459. package/dist/collection/components/router-outlet/router-outlet.css +1 -7
  460. package/dist/collection/components/router-outlet/router-outlet.js +3 -6
  461. package/dist/collection/components/row/row.css +0 -16
  462. package/dist/collection/components/row/row.js +2 -9
  463. package/dist/collection/components/searchbar/searchbar.ios.css +18 -56
  464. package/dist/collection/components/searchbar/searchbar.js +42 -164
  465. package/dist/collection/components/searchbar/searchbar.md.css +18 -56
  466. package/dist/collection/components/segment/segment.ios.css +2 -45
  467. package/dist/collection/components/segment/segment.js +8 -11
  468. package/dist/collection/components/segment/segment.md.css +2 -45
  469. package/dist/collection/components/segment-button/segment-button.ios.css +105 -146
  470. package/dist/collection/components/segment-button/segment-button.js +8 -11
  471. package/dist/collection/components/segment-button/segment-button.md.css +107 -148
  472. package/dist/collection/components/segment-content/segment-content.js +1 -1
  473. package/dist/collection/components/segment-view/segment-view.ios.css +0 -6
  474. package/dist/collection/components/segment-view/segment-view.js +4 -13
  475. package/dist/collection/components/segment-view/segment-view.md.css +0 -6
  476. package/dist/collection/components/select/select.ios.css +148 -304
  477. package/dist/collection/components/select/select.js +82 -232
  478. package/dist/collection/components/select/select.md.css +150 -320
  479. package/dist/collection/components/select-modal/select-modal.ios.css +45 -293
  480. package/dist/collection/components/select-modal/select-modal.js +15 -63
  481. package/dist/collection/components/select-modal/select-modal.md.css +43 -273
  482. package/dist/collection/components/select-option/select-option.js +4 -8
  483. package/dist/collection/components/select-popover/select-popover.ios.css +124 -188
  484. package/dist/collection/components/select-popover/select-popover.js +9 -17
  485. package/dist/collection/components/select-popover/select-popover.md.css +47 -228
  486. package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
  487. package/dist/collection/components/skeleton-text/skeleton-text.js +5 -9
  488. package/dist/collection/components/spinner/{spinner.ionic.css → spinner.css} +10 -78
  489. package/dist/collection/components/spinner/spinner.js +6 -47
  490. package/dist/collection/components/split-pane/split-pane.ios.css +2 -20
  491. package/dist/collection/components/split-pane/split-pane.js +8 -15
  492. package/dist/collection/components/split-pane/split-pane.md.css +2 -20
  493. package/dist/collection/components/tab/tab.js +2 -6
  494. package/dist/collection/components/tab-bar/tab-bar.ios.css +43 -86
  495. package/dist/collection/components/tab-bar/tab-bar.js +15 -178
  496. package/dist/collection/components/tab-bar/tab-bar.md.css +43 -86
  497. package/dist/collection/components/tab-button/tab-button.ios.css +95 -171
  498. package/dist/collection/components/tab-button/tab-button.js +9 -54
  499. package/dist/collection/components/tab-button/tab-button.md.css +93 -137
  500. package/dist/collection/components/tabs/tabs.css +1 -7
  501. package/dist/collection/components/tabs/tabs.js +1 -4
  502. package/dist/collection/components/text/text.css +0 -6
  503. package/dist/collection/components/text/text.js +6 -7
  504. package/dist/collection/components/textarea/textarea.ios.css +174 -322
  505. package/dist/collection/components/textarea/textarea.js +43 -205
  506. package/dist/collection/components/textarea/textarea.md.css +176 -339
  507. package/dist/collection/components/thumbnail/thumbnail.css +0 -6
  508. package/dist/collection/components/thumbnail/thumbnail.js +2 -9
  509. package/dist/collection/components/title/title.ios.css +4 -32
  510. package/dist/collection/components/title/title.js +7 -13
  511. package/dist/collection/components/title/title.md.css +4 -39
  512. package/dist/collection/components/toast/animations/utils.js +1 -1
  513. package/dist/collection/components/toast/toast.ios.css +45 -84
  514. package/dist/collection/components/toast/toast.js +13 -79
  515. package/dist/collection/components/toast/toast.md.css +45 -84
  516. package/dist/collection/components/toggle/toggle.ios.css +127 -247
  517. package/dist/collection/components/toggle/toggle.js +18 -58
  518. package/dist/collection/components/toggle/toggle.md.css +127 -245
  519. package/dist/collection/components/toolbar/toolbar.ios.css +47 -90
  520. package/dist/collection/components/toolbar/toolbar.js +14 -216
  521. package/dist/collection/components/toolbar/toolbar.md.css +47 -90
  522. package/dist/collection/global/ionic-global.js +13 -239
  523. package/dist/collection/utils/focus-trap.js +4 -15
  524. package/dist/collection/utils/focus-visible.js +2 -73
  525. package/dist/collection/utils/forms/click-controller.js +9 -95
  526. package/dist/collection/utils/forms/index.js +0 -1
  527. package/dist/collection/utils/forms/validity.js +0 -31
  528. package/dist/collection/utils/framework-delegate.js +1 -3
  529. package/dist/collection/utils/hardware-back-button.js +0 -15
  530. package/dist/collection/utils/helpers.js +3 -84
  531. package/dist/collection/utils/keyboard/keyboard-controller.js +1 -3
  532. package/dist/collection/utils/media.js +0 -1
  533. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  534. package/dist/collection/utils/menu-controller/animations/push.js +1 -2
  535. package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
  536. package/dist/collection/utils/overlay-control-label.js +11 -13
  537. package/dist/collection/utils/overlays.js +10 -289
  538. package/dist/collection/utils/test/playwright/drag-element.js +9 -32
  539. package/dist/collection/utils/test/playwright/generator.js +23 -48
  540. package/dist/collection/utils/test/playwright/index.js +0 -1
  541. package/dist/collection/utils/test/playwright/page/utils/goto.js +1 -10
  542. package/dist/collection/utils/test/playwright/page/utils/set-content.js +3 -26
  543. package/dist/collection/utils/theme.js +1 -25
  544. package/dist/collection/utils/transition/ios.transition.js +0 -1
  545. package/dist/docs.json +304 -9167
  546. package/dist/esm/{animation-GasMiLY0.js → animation-C_V9lXzL.js} +2 -2
  547. package/dist/esm/{app-globals-DbCTe1Vv.js → app-globals-CNfpAPW6.js} +1 -1
  548. package/dist/esm/{attribute-controller-CbJaN4Zr.js → attribute-controller-ItNOXNp9.js} +1 -2
  549. package/dist/esm/{button-active-DLOYzeXl.js → button-active-rB-Ct9KZ.js} +2 -2
  550. package/dist/esm/{capacitor-CFERIeaU.js → capacitor-BY7l8HgR.js} +1 -1
  551. package/dist/esm/focus-visible-BmVRXR1y.js +75 -0
  552. package/dist/esm/{format-DUHrIiJq.js → format-Ck1cw5z7.js} +2 -2
  553. package/dist/esm/{framework-delegate-99Ms_INy.js → framework-delegate-CW5_kWfc.js} +2 -4
  554. package/dist/esm/{haptic-Cq4UAeka.js → haptic-ES_sSPLn.js} +1 -1
  555. package/dist/esm/{helpers-B_F2b1gy.js → helpers-p94IkmEA.js} +8 -86
  556. package/dist/esm/{index-hR6kxzTq.js → index-BpRUsN_W.js} +5 -55
  557. package/dist/esm/{index-BkJpfpXI.js → index-BvabGprD.js} +1 -2
  558. package/dist/esm/{index-BeR_5uou.js → index-CBkVO5D0.js} +2 -2
  559. package/dist/esm/{index-BRYliuA-.js → index-CK8uF0iB.js} +1 -1
  560. package/dist/esm/{index-BoEdvSPU.js → index-DLDbwWW7.js} +2 -4
  561. package/dist/esm/{index-D86Q8ZLS.js → index-txcXIB3P.js} +10 -12
  562. package/dist/esm/{index-D5lNz-tr.js → index-vgPixHgF.js} +4 -4
  563. package/dist/esm/index.js +12 -14
  564. package/dist/esm/{input-shims-CJVi9djP.js → input-shims-KNXj3DAv.js} +5 -7
  565. package/dist/esm/{input.utils-gPgFKve4.js → input.utils-DZY_K8Po.js} +1 -1
  566. package/dist/esm/ion-accordion_2.entry.js +29 -57
  567. package/dist/esm/ion-action-sheet.entry.js +22 -27
  568. package/dist/esm/ion-alert.entry.js +29 -34
  569. package/dist/esm/ion-app_8.entry.js +194 -464
  570. package/dist/esm/ion-avatar_3.entry.js +13 -124
  571. package/dist/esm/ion-back-button.entry.js +23 -31
  572. package/dist/esm/ion-backdrop.entry.js +7 -11
  573. package/dist/esm/ion-breadcrumb_2.entry.js +18 -42
  574. package/dist/esm/ion-button_2.entry.js +23 -61
  575. package/dist/esm/ion-card_5.entry.js +34 -57
  576. package/dist/esm/ion-checkbox.entry.js +17 -43
  577. package/dist/esm/ion-chip.entry.js +9 -51
  578. package/dist/esm/ion-col_3.entry.js +63 -56
  579. package/dist/esm/ion-datetime-button.entry.js +13 -45
  580. package/dist/esm/ion-datetime.entry.js +62 -406
  581. package/dist/esm/ion-fab_3.entry.js +28 -40
  582. package/dist/esm/ion-img.entry.js +4 -9
  583. package/dist/esm/ion-infinite-scroll_2.entry.js +16 -91
  584. package/dist/esm/ion-input-otp.entry.js +10 -75
  585. package/dist/esm/ion-input-password-toggle.entry.js +14 -42
  586. package/dist/esm/ion-input.entry.js +38 -147
  587. package/dist/esm/ion-item-option_3.entry.js +52 -466
  588. package/dist/esm/ion-item_8.entry.js +51 -118
  589. package/dist/esm/ion-loading.entry.js +17 -22
  590. package/dist/esm/ion-menu_3.entry.js +27 -45
  591. package/dist/esm/ion-modal.entry.js +88 -237
  592. package/dist/esm/ion-nav_2.entry.js +10 -14
  593. package/dist/esm/ion-picker-column-option.entry.js +8 -13
  594. package/dist/esm/ion-picker-column.entry.js +12 -14
  595. package/dist/esm/ion-picker.entry.js +6 -11
  596. package/dist/esm/ion-popover.entry.js +18 -23
  597. package/dist/esm/ion-progress-bar.entry.js +9 -28
  598. package/dist/esm/ion-radio_2.entry.js +18 -37
  599. package/dist/esm/ion-range.entry.js +13 -21
  600. package/dist/esm/ion-refresher_2.entry.js +20 -45
  601. package/dist/esm/ion-reorder_2.entry.js +13 -31
  602. package/dist/esm/ion-ripple-effect.entry.js +7 -16
  603. package/dist/esm/ion-route_4.entry.js +10 -12
  604. package/dist/esm/ion-searchbar.entry.js +32 -118
  605. package/dist/esm/ion-segment-content.entry.js +2 -2
  606. package/dist/esm/ion-segment-view.entry.js +3 -13
  607. package/dist/esm/ion-segment_2.entry.js +16 -24
  608. package/dist/esm/ion-select-modal.entry.js +24 -53
  609. package/dist/esm/ion-select_3.entry.js +76 -198
  610. package/dist/esm/ion-spinner.entry.js +8 -31
  611. package/dist/esm/ion-split-pane.entry.js +9 -14
  612. package/dist/esm/ion-tab-bar_2.entry.js +26 -149
  613. package/dist/esm/ion-tab_2.entry.js +7 -9
  614. package/dist/esm/ion-text.entry.js +7 -8
  615. package/dist/esm/ion-textarea.entry.js +41 -178
  616. package/dist/esm/ion-toast.entry.js +19 -48
  617. package/dist/esm/ion-toggle.entry.js +25 -67
  618. package/dist/esm/ionic-global-Cep6oYzK.js +151 -0
  619. package/dist/esm/ionic.js +5 -6
  620. package/dist/esm/{ios.transition-C9thfQYf.js → ios.transition-CW92wRDL.js} +4 -7
  621. package/dist/esm/{item-multiple-inputs-CSJsB7-I.js → item-multiple-inputs-Bd2LO7qK.js} +1 -1
  622. package/dist/esm/{keyboard-Cj8mLJeq.js → keyboard-BumguZrM.js} +5 -3
  623. package/dist/esm/{keyboard-DAF8GNJ9.js → keyboard-CutS8BPd.js} +1 -1
  624. package/dist/esm/keyboard-controller-DqohyEsZ.js +165 -0
  625. package/dist/esm/loader.js +5 -6
  626. package/dist/esm/{md.transition-BEhPsy_z.js → md.transition-yhfkYX1P.js} +4 -6
  627. package/dist/esm/{overlay-control-label-CODBQrPj.js → overlay-control-label-BSQPZ79H.js} +11 -13
  628. package/dist/esm/{overlays-C8sf7PId.js → overlays-BBgMM61s.js} +164 -307
  629. package/dist/esm/{select-option-render-D5kt0cO9.js → select-option-render-BSDT9oSA.js} +2 -2
  630. package/dist/esm/{slot-mutation-controller-DanfZTCH.js → slot-mutation-controller-uKdPbY9K.js} +10 -97
  631. package/dist/esm/{status-tap-B8UQS38n.js → status-tap-BskkGI4e.js} +3 -5
  632. package/dist/esm/{swipe-back-Bgftkxen.js → swipe-back-BZdyM2Q-.js} +2 -4
  633. package/dist/esm/{theme-BUF_V-Kg.js → theme-byZM6qHV.js} +1 -25
  634. package/dist/esm/validity-DJztqcrH.js +17 -0
  635. package/dist/html.html-data.json +156 -2657
  636. package/dist/ionic/index.esm.js +1 -1
  637. package/dist/ionic/ionic.esm.js +1 -1
  638. package/dist/ionic/p-00cd107d.entry.js +4 -0
  639. package/dist/ionic/p-013b9aba.entry.js +4 -0
  640. package/dist/ionic/p-014c3633.entry.js +4 -0
  641. package/dist/ionic/p-0562139b.entry.js +4 -0
  642. package/dist/ionic/p-0a789930.entry.js +4 -0
  643. package/dist/ionic/p-0f1613f2.entry.js +4 -0
  644. package/dist/ionic/p-1252621e.entry.js +4 -0
  645. package/dist/ionic/p-129f7b95.entry.js +4 -0
  646. package/dist/ionic/p-16de8fd9.entry.js +4 -0
  647. package/dist/ionic/p-1bb1be7e.entry.js +4 -0
  648. package/dist/ionic/p-1f342c2d.entry.js +4 -0
  649. package/dist/ionic/p-1ffa5577.entry.js +4 -0
  650. package/dist/ionic/p-210f906e.entry.js +4 -0
  651. package/dist/ionic/p-27960f65.entry.js +4 -0
  652. package/dist/ionic/p-3c6fc2e8.entry.js +4 -0
  653. package/dist/ionic/p-436d4ac8.entry.js +4 -0
  654. package/dist/ionic/p-43729675.entry.js +4 -0
  655. package/dist/ionic/p-4468e439.entry.js +4 -0
  656. package/dist/ionic/p-4e4e5919.entry.js +4 -0
  657. package/dist/ionic/p-51af4728.entry.js +4 -0
  658. package/dist/ionic/p-59e4b521.entry.js +4 -0
  659. package/dist/ionic/{p-BMPN55of.js → p-5a3UxQAh.js} +1 -1
  660. package/dist/ionic/p-5b47b8d5.entry.js +4 -0
  661. package/dist/ionic/p-5dcddfd5.entry.js +4 -0
  662. package/dist/ionic/p-694f3e78.entry.js +4 -0
  663. package/dist/ionic/p-76c189e7.entry.js +4 -0
  664. package/dist/ionic/p-77252596.entry.js +4 -0
  665. package/dist/ionic/p-77540bcb.entry.js +4 -0
  666. package/dist/ionic/p-77e7b612.entry.js +4 -0
  667. package/dist/ionic/p-7868eb92.entry.js +4 -0
  668. package/dist/ionic/p-800ce1e0.entry.js +4 -0
  669. package/dist/ionic/p-84470714.entry.js +4 -0
  670. package/dist/ionic/p-87fb6d59.entry.js +4 -0
  671. package/dist/ionic/p-8B39TMv-.js +4 -0
  672. package/dist/ionic/p-8af85fa8.entry.js +4 -0
  673. package/dist/ionic/p-8c85e250.entry.js +4 -0
  674. package/dist/ionic/p-8dQB1sG_.js +4 -0
  675. package/dist/ionic/p-9515f840.entry.js +4 -0
  676. package/dist/ionic/p-96d040b0.entry.js +4 -0
  677. package/dist/ionic/p-9d7e5a0b.entry.js +4 -0
  678. package/dist/ionic/p-B0afqOUt.js +4 -0
  679. package/dist/ionic/p-B2JD8_LP.js +4 -0
  680. package/dist/ionic/p-B2y1T0dN.js +4 -0
  681. package/dist/ionic/{p-T71k3C35.js → p-BBZQUbCq.js} +1 -1
  682. package/dist/ionic/p-BHBb21Hp.js +4 -0
  683. package/{components/p-B7ExaLVL.js → dist/ionic/p-BO10QT9r.js} +1 -1
  684. package/dist/ionic/p-BSQPZ79H.js +4 -0
  685. package/{components/p-BmfO2-NE.js → dist/ionic/p-BWKtcudz.js} +1 -1
  686. package/dist/ionic/p-BexAj0yw.js +4 -0
  687. package/dist/ionic/p-BgkRGRO3.js +4 -0
  688. package/dist/ionic/p-BmVRXR1y.js +4 -0
  689. package/dist/ionic/p-BpRUsN_W.js +6 -0
  690. package/dist/ionic/p-BvabGprD.js +4 -0
  691. package/dist/ionic/p-C4SpVvhx.js +4 -0
  692. package/{components/p-o89R3aqe.js → dist/ionic/p-CJmyfI8x.js} +1 -1
  693. package/dist/ionic/p-CNdt1FPc.js +4 -0
  694. package/dist/ionic/{p-DuxayXEj.js → p-Cf6KtUnA.js} +1 -1
  695. package/dist/ionic/p-CfccUand.js +4 -0
  696. package/dist/ionic/p-DArnNWiu.js +4 -0
  697. package/dist/ionic/p-DBFcFCH5.js +4 -0
  698. package/dist/ionic/{p-Bjt84heL.js → p-DCmOKz8e.js} +1 -1
  699. package/dist/ionic/p-DFPZa_No.js +4 -0
  700. package/dist/ionic/p-DJztqcrH.js +4 -0
  701. package/dist/ionic/p-DYKDWM2f.js +4 -0
  702. package/dist/ionic/{p-rwBGNQHN.js → p-DfvWlTdB.js} +1 -1
  703. package/dist/ionic/p-DriE1ZAo.js +4 -0
  704. package/dist/ionic/{p-CeHcVwSj.js → p-DxftXYZp.js} +1 -1
  705. package/dist/ionic/p-DzQk7Lu8.js +4 -0
  706. package/dist/ionic/p-SEecsUh7.js +4 -0
  707. package/dist/ionic/p-a45caa30.entry.js +4 -0
  708. package/dist/ionic/p-af15fc5d.entry.js +4 -0
  709. package/dist/ionic/p-af4b4719.entry.js +4 -0
  710. package/dist/ionic/p-b0faaae2.entry.js +4 -0
  711. package/dist/ionic/p-b3aadfe8.entry.js +4 -0
  712. package/dist/ionic/p-b5bcbbc1.entry.js +4 -0
  713. package/dist/ionic/p-byZM6qHV.js +4 -0
  714. package/dist/ionic/p-c293f854.entry.js +4 -0
  715. package/dist/ionic/p-c56c23b6.entry.js +4 -0
  716. package/dist/ionic/p-c7ea2647.entry.js +4 -0
  717. package/dist/ionic/p-c8c77f7b.entry.js +4 -0
  718. package/dist/ionic/p-cbc73380.entry.js +4 -0
  719. package/dist/ionic/p-d58e9da3.entry.js +4 -0
  720. package/dist/ionic/p-e1haAYzm.js +4 -0
  721. package/dist/ionic/p-ec08a7e6.entry.js +4 -0
  722. package/dist/ionic/p-f37e6ed2.entry.js +4 -0
  723. package/dist/ionic/p-f6a1ab48.entry.js +4 -0
  724. package/dist/types/components/accordion/accordion.d.ts +3 -12
  725. package/dist/types/components/accordion-group/accordion-group.d.ts +1 -12
  726. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
  727. package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
  728. package/dist/types/components/alert/alert-interface.d.ts +7 -3
  729. package/dist/types/components/alert/alert.d.ts +2 -3
  730. package/dist/types/components/app/app.d.ts +5 -4
  731. package/dist/types/components/avatar/avatar.d.ts +0 -32
  732. package/dist/types/components/back-button/back-button.d.ts +3 -10
  733. package/dist/types/components/backdrop/backdrop.d.ts +0 -4
  734. package/dist/types/components/badge/badge.d.ts +1 -34
  735. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -14
  736. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  737. package/dist/types/components/button/button.d.ts +8 -23
  738. package/dist/types/components/buttons/buttons.d.ts +1 -5
  739. package/dist/types/components/card/card.d.ts +1 -8
  740. package/dist/types/components/card-content/card-content.d.ts +1 -2
  741. package/dist/types/components/card-header/card-header.d.ts +2 -3
  742. package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
  743. package/dist/types/components/card-title/card-title.d.ts +1 -2
  744. package/dist/types/components/checkbox/checkbox.d.ts +5 -26
  745. package/dist/types/components/chip/chip.d.ts +1 -26
  746. package/dist/types/components/col/col.d.ts +6 -52
  747. package/dist/types/components/content/content.d.ts +0 -3
  748. package/dist/types/components/datetime/datetime-interface.d.ts +0 -4
  749. package/dist/types/components/datetime/datetime.d.ts +7 -99
  750. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  751. package/dist/types/components/datetime/utils/state.d.ts +2 -5
  752. package/dist/types/components/datetime-button/datetime-button.d.ts +1 -2
  753. package/dist/types/components/fab/fab.d.ts +0 -4
  754. package/dist/types/components/fab-button/fab-button.d.ts +3 -11
  755. package/dist/types/components/fab-list/fab-list.d.ts +0 -4
  756. package/dist/types/components/footer/footer.d.ts +3 -20
  757. package/dist/types/components/grid/grid.d.ts +0 -4
  758. package/dist/types/components/header/header.d.ts +3 -26
  759. package/dist/types/components/header/header.utils.d.ts +5 -4
  760. package/dist/types/components/img/img.d.ts +0 -2
  761. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -21
  762. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +0 -4
  763. package/dist/types/components/input/input.d.ts +5 -45
  764. package/dist/types/components/input-otp/input-otp.d.ts +0 -37
  765. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +0 -14
  766. package/dist/types/components/item/item.d.ts +4 -17
  767. package/dist/types/components/item-divider/item-divider.d.ts +1 -2
  768. package/dist/types/components/item-group/item-group.d.ts +0 -4
  769. package/dist/types/components/item-option/item-option.d.ts +1 -18
  770. package/dist/types/components/item-options/item-options.d.ts +0 -4
  771. package/dist/types/components/item-sliding/item-sliding.d.ts +1 -47
  772. package/dist/types/components/item-sliding/test/test.utils.d.ts +0 -13
  773. package/dist/types/components/label/label.d.ts +1 -2
  774. package/dist/types/components/list/list.d.ts +1 -15
  775. package/dist/types/components/list-header/list-header.d.ts +1 -2
  776. package/dist/types/components/loading/loading-interface.d.ts +7 -2
  777. package/dist/types/components/loading/loading.d.ts +2 -3
  778. package/dist/types/components/menu/menu.d.ts +0 -3
  779. package/dist/types/components/menu-button/menu-button.d.ts +1 -8
  780. package/dist/types/components/menu-toggle/menu-toggle.d.ts +0 -3
  781. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  782. package/dist/types/components/modal/modal-interface.d.ts +7 -4
  783. package/dist/types/components/modal/modal.d.ts +1 -11
  784. package/dist/types/components/nav/nav-interface.d.ts +1 -9
  785. package/dist/types/components/nav/nav.d.ts +1 -5
  786. package/dist/types/components/nav-link/nav-link.d.ts +0 -4
  787. package/dist/types/components/note/note.d.ts +1 -2
  788. package/dist/types/components/picker/picker.d.ts +1 -2
  789. package/dist/types/components/picker-column/picker-column.d.ts +1 -2
  790. package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
  791. package/dist/types/components/popover/popover-interface.d.ts +6 -3
  792. package/dist/types/components/popover/popover.d.ts +5 -6
  793. package/dist/types/components/progress-bar/progress-bar.d.ts +1 -10
  794. package/dist/types/components/radio/radio.d.ts +1 -2
  795. package/dist/types/components/radio-group/radio-group.d.ts +0 -12
  796. package/dist/types/components/range/range.d.ts +1 -2
  797. package/dist/types/components/refresher/refresher.d.ts +1 -2
  798. package/dist/types/components/refresher-content/refresher-content.d.ts +0 -10
  799. package/dist/types/components/reorder/reorder.d.ts +0 -9
  800. package/dist/types/components/reorder-group/reorder-group.d.ts +0 -4
  801. package/dist/types/components/ripple-effect/ripple-effect.d.ts +0 -4
  802. package/dist/types/components/route/route.d.ts +0 -4
  803. package/dist/types/components/router/router.d.ts +0 -4
  804. package/dist/types/components/router-link/router-link.d.ts +0 -4
  805. package/dist/types/components/router-outlet/router-outlet.d.ts +1 -4
  806. package/dist/types/components/row/row.d.ts +0 -4
  807. package/dist/types/components/searchbar/searchbar.d.ts +10 -56
  808. package/dist/types/components/segment/segment.d.ts +1 -2
  809. package/dist/types/components/segment-button/segment-button.d.ts +1 -2
  810. package/dist/types/components/select/select.d.ts +15 -59
  811. package/dist/types/components/select-modal/select-modal.d.ts +0 -13
  812. package/dist/types/components/select-option/select-option.d.ts +4 -7
  813. package/dist/types/components/select-popover/select-popover.d.ts +0 -3
  814. package/dist/types/components/skeleton-text/skeleton-text.d.ts +0 -4
  815. package/dist/types/components/spinner/spinner.d.ts +0 -15
  816. package/dist/types/components/split-pane/split-pane.d.ts +0 -4
  817. package/dist/types/components/tab/tab.d.ts +0 -4
  818. package/dist/types/components/tab-bar/tab-bar-interface.d.ts +0 -1
  819. package/dist/types/components/tab-bar/tab-bar.d.ts +3 -41
  820. package/dist/types/components/tab-button/tab-button.d.ts +1 -12
  821. package/dist/types/components/tabs/tabs.d.ts +0 -3
  822. package/dist/types/components/text/text.d.ts +1 -2
  823. package/dist/types/components/textarea/textarea.d.ts +17 -75
  824. package/dist/types/components/thumbnail/thumbnail.d.ts +0 -4
  825. package/dist/types/components/title/title.d.ts +0 -4
  826. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  827. package/dist/types/components/toast/toast-interface.d.ts +7 -3
  828. package/dist/types/components/toast/toast.d.ts +2 -19
  829. package/dist/types/components/toggle/toggle.d.ts +1 -18
  830. package/dist/types/components/toolbar/toolbar.d.ts +3 -43
  831. package/dist/types/components.d.ts +213 -1874
  832. package/dist/types/global/ionic-global.d.ts +2 -28
  833. package/dist/types/interface.d.ts +0 -3
  834. package/dist/types/utils/config.d.ts +4 -128
  835. package/dist/types/utils/focus-trap.d.ts +1 -1
  836. package/dist/types/utils/focus-visible.d.ts +0 -33
  837. package/dist/types/utils/forms/click-controller.d.ts +5 -16
  838. package/dist/types/utils/forms/index.d.ts +0 -1
  839. package/dist/types/utils/forms/validity.d.ts +0 -7
  840. package/dist/types/utils/helpers.d.ts +0 -29
  841. package/dist/types/utils/overlay-control-label.d.ts +9 -11
  842. package/dist/types/utils/overlays-interface.d.ts +1 -31
  843. package/dist/types/utils/overlays.d.ts +1 -1
  844. package/dist/types/utils/test/playwright/drag-element.d.ts +3 -16
  845. package/dist/types/utils/test/playwright/generator.d.ts +2 -31
  846. package/dist/types/utils/test/playwright/index.d.ts +0 -1
  847. package/dist/types/utils/theme.d.ts +0 -9
  848. package/hydrate/index.js +1284 -5846
  849. package/hydrate/index.mjs +1284 -5846
  850. package/package.json +4 -7
  851. package/components/ion-divider.d.ts +0 -11
  852. package/components/ion-divider.js +0 -4
  853. package/components/ion-gallery-item.d.ts +0 -11
  854. package/components/ion-gallery-item.js +0 -4
  855. package/components/ion-gallery.d.ts +0 -11
  856. package/components/ion-gallery.js +0 -4
  857. package/components/p-0rXxxCTt.js +0 -4
  858. package/components/p-3Qs1sQxU.js +0 -4
  859. package/components/p-3SVb97od.js +0 -4
  860. package/components/p-7-zF1amS.js +0 -4
  861. package/components/p-AgF3xGwz.js +0 -4
  862. package/components/p-BHiggB_l.js +0 -4
  863. package/components/p-BNBa8_Ls.js +0 -4
  864. package/components/p-BNV7BMZo.js +0 -4
  865. package/components/p-BUF_V-Kg.js +0 -4
  866. package/components/p-BYk20Mf5.js +0 -4
  867. package/components/p-B_o50gvn.js +0 -4
  868. package/components/p-BfDzKnZ-.js +0 -4
  869. package/components/p-C0H1LYQ5.js +0 -4
  870. package/components/p-C7BPrXxF.js +0 -4
  871. package/components/p-C93i7QCU.js +0 -4
  872. package/components/p-C9qQ2zBV.js +0 -4
  873. package/components/p-CAekGbOf.js +0 -4
  874. package/components/p-CE7N7-7s.js +0 -4
  875. package/components/p-CL3vSQL7.js +0 -4
  876. package/components/p-CODBQrPj.js +0 -4
  877. package/components/p-CehdCO1m.js +0 -4
  878. package/components/p-CvxND1-3.js +0 -4
  879. package/components/p-CyvtM0H1.js +0 -4
  880. package/components/p-CzDkZh7h.js +0 -4
  881. package/components/p-DEh2reav.js +0 -4
  882. package/components/p-DFBWAYvo.js +0 -4
  883. package/components/p-DFjX2uxL.js +0 -4
  884. package/components/p-DLXAGW46.js +0 -4
  885. package/components/p-DQwGbYN_.js +0 -4
  886. package/components/p-DRpeTf7R.js +0 -4
  887. package/components/p-Da8LCPwo.js +0 -4
  888. package/components/p-DbKRl9BQ.js +0 -4
  889. package/components/p-DdOVnjsY.js +0 -4
  890. package/components/p-DibGn4gb.js +0 -4
  891. package/components/p-DirxxGzo.js +0 -4
  892. package/components/p-DmdTkb5k.js +0 -4
  893. package/components/p-DmhWSY74.js +0 -4
  894. package/components/p-DtZimz8H.js +0 -4
  895. package/components/p-ET0FZop5.js +0 -4
  896. package/components/p-LoXpKVmq.js +0 -4
  897. package/components/p-NZGZhPF5.js +0 -4
  898. package/components/p-NcQUGze-.js +0 -4
  899. package/components/p-PFwuhbqg.js +0 -4
  900. package/components/p-fU4OdAZ9.js +0 -4
  901. package/components/p-iNIvlAGo.js +0 -4
  902. package/components/p-py1vB-7U.js +0 -4
  903. package/components/p-qbig9BW8.js +0 -4
  904. package/css/ionic/bundle.ionic.css +0 -1
  905. package/css/ionic/bundle.ionic.css.map +0 -1
  906. package/css/ionic/core.ionic.css +0 -1
  907. package/css/ionic/core.ionic.css.map +0 -1
  908. package/css/ionic/global.bundle.ionic.css +0 -1
  909. package/css/ionic/global.bundle.ionic.css.map +0 -1
  910. package/css/ionic/ionic-swiper.ionic.css +0 -1
  911. package/css/ionic/ionic-swiper.ionic.css.map +0 -1
  912. package/css/ionic/link.ionic.css +0 -1
  913. package/css/ionic/link.ionic.css.map +0 -1
  914. package/css/ionic/structure.ionic.css +0 -1
  915. package/css/ionic/structure.ionic.css.map +0 -1
  916. package/css/ionic/typography.ionic.css +0 -1
  917. package/css/ionic/typography.ionic.css.map +0 -1
  918. package/css/ionic/utils.bundle.ionic.css +0 -1
  919. package/css/ionic/utils.bundle.ionic.css.map +0 -1
  920. package/dist/cjs/clear-button-press-controller-C6PTS3jC.js +0 -45
  921. package/dist/cjs/focus-visible-DGPRKkcx.js +0 -151
  922. package/dist/cjs/index-DkNv4J_i.js +0 -10
  923. package/dist/cjs/ion-divider.cjs.entry.js +0 -52
  924. package/dist/cjs/ion-gallery-item.cjs.entry.js +0 -59
  925. package/dist/cjs/ion-gallery.cjs.entry.js +0 -608
  926. package/dist/cjs/ionic-global-CZX42KL4.js +0 -551
  927. package/dist/cjs/scroll-hide-controller-BSVBCkbw.js +0 -345
  928. package/dist/cjs/validity-CoPMWggj.js +0 -51
  929. package/dist/collection/components/accordion/accordion.ionic.css +0 -199
  930. package/dist/collection/components/accordion-group/accordion-group.ionic.css +0 -93
  931. package/dist/collection/components/action-sheet/action-sheet.ionic.css +0 -490
  932. package/dist/collection/components/alert/alert.ionic.css +0 -779
  933. package/dist/collection/components/avatar/avatar.ionic.css +0 -379
  934. package/dist/collection/components/backdrop/backdrop.ionic.css +0 -109
  935. package/dist/collection/components/badge/badge.ionic.css +0 -269
  936. package/dist/collection/components/button/button.ionic.css +0 -640
  937. package/dist/collection/components/buttons/buttons.ionic.css +0 -97
  938. package/dist/collection/components/card/card.ionic.css +0 -144
  939. package/dist/collection/components/card-content/card-content.ionic.css +0 -88
  940. package/dist/collection/components/card-header/card-header.ionic.css +0 -85
  941. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +0 -143
  942. package/dist/collection/components/checkbox/checkbox.ionic.css +0 -535
  943. package/dist/collection/components/chip/chip.ionic.css +0 -216
  944. package/dist/collection/components/content/content.ionic.css +0 -352
  945. package/dist/collection/components/content/content.md.css +0 -347
  946. package/dist/collection/components/datetime/datetime.ionic.css +0 -903
  947. package/dist/collection/components/divider/divider.ionic.css +0 -148
  948. package/dist/collection/components/divider/divider.ios.css +0 -87
  949. package/dist/collection/components/divider/divider.js +0 -94
  950. package/dist/collection/components/divider/divider.md.css +0 -87
  951. package/dist/collection/components/footer/footer-interface.js +0 -1
  952. package/dist/collection/components/gallery/gallery-constants.js +0 -12
  953. package/dist/collection/components/gallery/gallery-interface.js +0 -1
  954. package/dist/collection/components/gallery/gallery.css +0 -15
  955. package/dist/collection/components/gallery/gallery.js +0 -678
  956. package/dist/collection/components/gallery/test/utils.js +0 -100
  957. package/dist/collection/components/gallery-item/gallery-item.css +0 -49
  958. package/dist/collection/components/gallery-item/gallery-item.js +0 -98
  959. package/dist/collection/components/header/header-interface.js +0 -1
  960. package/dist/collection/components/header/header.ionic.css +0 -286
  961. package/dist/collection/components/input/input.ionic.css +0 -961
  962. package/dist/collection/components/input-otp/input-otp.ionic.css +0 -369
  963. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +0 -78
  964. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +0 -61
  965. package/dist/collection/components/item/item.ionic.css +0 -495
  966. package/dist/collection/components/item-option/item-option.ionic.css +0 -276
  967. package/dist/collection/components/item-options/item-options.ionic.css +0 -221
  968. package/dist/collection/components/item-sliding/item-sliding.ionic.css +0 -211
  969. package/dist/collection/components/list/list.ionic.css +0 -212
  970. package/dist/collection/components/list-header/list-header.ionic.css +0 -189
  971. package/dist/collection/components/menu-button/menu-button.ionic.css +0 -236
  972. package/dist/collection/components/modal/animations/ionic.enter.js +0 -40
  973. package/dist/collection/components/modal/animations/ionic.leave.js +0 -28
  974. package/dist/collection/components/modal/modal.ionic.css +0 -266
  975. package/dist/collection/components/popover/popover.ionic.css +0 -290
  976. package/dist/collection/components/progress-bar/progress-bar.ionic.css +0 -287
  977. package/dist/collection/components/radio/radio.ionic.css +0 -421
  978. package/dist/collection/components/radio-group/radio-group.ionic.css +0 -118
  979. package/dist/collection/components/range/range.ionic.css +0 -566
  980. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +0 -215
  981. package/dist/collection/components/searchbar/searchbar.ionic.css +0 -621
  982. package/dist/collection/components/segment/segment.ionic.css +0 -115
  983. package/dist/collection/components/segment-button/segment-button.ionic.css +0 -351
  984. package/dist/collection/components/select/select.ionic.css +0 -976
  985. package/dist/collection/components/select-modal/select-modal.ionic.css +0 -254
  986. package/dist/collection/components/select-popover/select-popover.ionic.css +0 -253
  987. package/dist/collection/components/spinner/spinner.native.css +0 -199
  988. package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -249
  989. package/dist/collection/components/tab-button/tab-button.ionic.css +0 -372
  990. package/dist/collection/components/textarea/textarea.ionic.css +0 -989
  991. package/dist/collection/components/title/title.ionic.css +0 -125
  992. package/dist/collection/components/toast/toast.ionic.css +0 -391
  993. package/dist/collection/components/toggle/toggle.ionic.css +0 -510
  994. package/dist/collection/components/toolbar/test/image.svg +0 -1
  995. package/dist/collection/components/toolbar/toolbar.ionic.css +0 -249
  996. package/dist/collection/utils/css-value-validation.js +0 -39
  997. package/dist/collection/utils/forms/clear-button-press-controller.js +0 -40
  998. package/dist/collection/utils/scroll-hide-controller.js +0 -178
  999. package/dist/collection/utils/test/playwright/field-geometry.js +0 -34
  1000. package/dist/esm/clear-button-press-controller-6ph4kKYn.js +0 -43
  1001. package/dist/esm/focus-visible-BYk20Mf5.js +0 -146
  1002. package/dist/esm/index-ZjP4CjeZ.js +0 -7
  1003. package/dist/esm/ion-divider.entry.js +0 -50
  1004. package/dist/esm/ion-gallery-item.entry.js +0 -57
  1005. package/dist/esm/ion-gallery.entry.js +0 -606
  1006. package/dist/esm/ionic-global-DSbFWXp3.js +0 -540
  1007. package/dist/esm/scroll-hide-controller-Chts2wJU.js +0 -342
  1008. package/dist/esm/validity-NcQUGze-.js +0 -48
  1009. package/dist/ionic/p-038465e3.entry.js +0 -4
  1010. package/dist/ionic/p-0b453760.entry.js +0 -4
  1011. package/dist/ionic/p-0bd5a7c9.entry.js +0 -4
  1012. package/dist/ionic/p-188a2e35.entry.js +0 -4
  1013. package/dist/ionic/p-1b045882.entry.js +0 -4
  1014. package/dist/ionic/p-1b769779.entry.js +0 -4
  1015. package/dist/ionic/p-1d709b26.entry.js +0 -4
  1016. package/dist/ionic/p-1d735170.entry.js +0 -4
  1017. package/dist/ionic/p-1d87b153.entry.js +0 -4
  1018. package/dist/ionic/p-2b1e9500.entry.js +0 -4
  1019. package/dist/ionic/p-2gcJ-f11.js +0 -4
  1020. package/dist/ionic/p-308f9b89.entry.js +0 -4
  1021. package/dist/ionic/p-338cb1e7.entry.js +0 -4
  1022. package/dist/ionic/p-39e3be74.entry.js +0 -4
  1023. package/dist/ionic/p-3a03d05e.entry.js +0 -4
  1024. package/dist/ionic/p-3a54495e.entry.js +0 -4
  1025. package/dist/ionic/p-3b47fdc7.entry.js +0 -4
  1026. package/dist/ionic/p-3be131ed.entry.js +0 -4
  1027. package/dist/ionic/p-3ddd32cc.entry.js +0 -4
  1028. package/dist/ionic/p-3f15086f.entry.js +0 -4
  1029. package/dist/ionic/p-4152cb6a.entry.js +0 -4
  1030. package/dist/ionic/p-49edfb46.entry.js +0 -4
  1031. package/dist/ionic/p-522663a4.entry.js +0 -4
  1032. package/dist/ionic/p-561cfcc1.entry.js +0 -4
  1033. package/dist/ionic/p-6dc9331b.entry.js +0 -4
  1034. package/dist/ionic/p-6e4ee264.entry.js +0 -4
  1035. package/dist/ionic/p-7df4dcb4.entry.js +0 -4
  1036. package/dist/ionic/p-8183df6b.entry.js +0 -4
  1037. package/dist/ionic/p-82efbf09.entry.js +0 -4
  1038. package/dist/ionic/p-86bf24f4.entry.js +0 -4
  1039. package/dist/ionic/p-8b107444.entry.js +0 -4
  1040. package/dist/ionic/p-8ecb459a.entry.js +0 -4
  1041. package/dist/ionic/p-8ff4bf6c.entry.js +0 -4
  1042. package/dist/ionic/p-905c8b38.entry.js +0 -4
  1043. package/dist/ionic/p-9613f2c3.entry.js +0 -4
  1044. package/dist/ionic/p-973f8069.entry.js +0 -4
  1045. package/dist/ionic/p-9b41acf3.entry.js +0 -4
  1046. package/dist/ionic/p-B36ii-hs.js +0 -4
  1047. package/dist/ionic/p-BKwe4f9b.js +0 -4
  1048. package/dist/ionic/p-BUF_V-Kg.js +0 -4
  1049. package/dist/ionic/p-BXRdzJMJ.js +0 -4
  1050. package/dist/ionic/p-BYk20Mf5.js +0 -4
  1051. package/dist/ionic/p-BfDzKnZ-.js +0 -4
  1052. package/dist/ionic/p-BfUzA1cP.js +0 -4
  1053. package/dist/ionic/p-BkJpfpXI.js +0 -4
  1054. package/dist/ionic/p-C3TLUO-J.js +0 -4
  1055. package/dist/ionic/p-C4WiowQL.js +0 -4
  1056. package/dist/ionic/p-CIGNaXM1.js +0 -4
  1057. package/dist/ionic/p-CODBQrPj.js +0 -4
  1058. package/dist/ionic/p-CXkgZKSx.js +0 -4
  1059. package/dist/ionic/p-Co3ilg7B.js +0 -4
  1060. package/dist/ionic/p-D5t_-oMk.js +0 -4
  1061. package/dist/ionic/p-D7LiFzrm.js +0 -4
  1062. package/dist/ionic/p-DOdxt_P_.js +0 -4
  1063. package/dist/ionic/p-DRbid4Vh.js +0 -4
  1064. package/dist/ionic/p-DsBidY1y.js +0 -4
  1065. package/dist/ionic/p-DxPRC9Jk.js +0 -4
  1066. package/dist/ionic/p-Hb0L-KUN.js +0 -4
  1067. package/dist/ionic/p-NcQUGze-.js +0 -4
  1068. package/dist/ionic/p-WdouEyt8.js +0 -4
  1069. package/dist/ionic/p-ZjP4CjeZ.js +0 -4
  1070. package/dist/ionic/p-a1555032.entry.js +0 -4
  1071. package/dist/ionic/p-a4299509.entry.js +0 -4
  1072. package/dist/ionic/p-b076511a.entry.js +0 -4
  1073. package/dist/ionic/p-b1cd18f0.entry.js +0 -4
  1074. package/dist/ionic/p-b4de840a.entry.js +0 -4
  1075. package/dist/ionic/p-b51eb274.entry.js +0 -4
  1076. package/dist/ionic/p-b6e633f5.entry.js +0 -4
  1077. package/dist/ionic/p-bf40b9eb.entry.js +0 -4
  1078. package/dist/ionic/p-c1fc48c7.entry.js +0 -4
  1079. package/dist/ionic/p-ce8bea16.entry.js +0 -4
  1080. package/dist/ionic/p-ceca04fb.entry.js +0 -4
  1081. package/dist/ionic/p-dbf53341.entry.js +0 -4
  1082. package/dist/ionic/p-de0de6a6.entry.js +0 -4
  1083. package/dist/ionic/p-e715a580.entry.js +0 -4
  1084. package/dist/ionic/p-ec99dc1f.entry.js +0 -4
  1085. package/dist/ionic/p-f10a94a8.entry.js +0 -4
  1086. package/dist/ionic/p-f3057b31.entry.js +0 -4
  1087. package/dist/ionic/p-fa74dd94.entry.js +0 -4
  1088. package/dist/ionic/p-fd00e28d.entry.js +0 -4
  1089. package/dist/ionic/p-hR6kxzTq.js +0 -6
  1090. package/dist/ionic/p-pVSZ4TVa.js +0 -4
  1091. package/dist/types/components/divider/divider.d.ts +0 -20
  1092. package/dist/types/components/footer/footer-interface.d.ts +0 -1
  1093. package/dist/types/components/gallery/gallery-constants.d.ts +0 -9
  1094. package/dist/types/components/gallery/gallery-interface.d.ts +0 -10
  1095. package/dist/types/components/gallery/gallery.d.ts +0 -218
  1096. package/dist/types/components/gallery/test/utils.d.ts +0 -3
  1097. package/dist/types/components/gallery-item/gallery-item.d.ts +0 -33
  1098. package/dist/types/components/header/header-interface.d.ts +0 -1
  1099. package/dist/types/components/modal/animations/ionic.enter.d.ts +0 -6
  1100. package/dist/types/components/modal/animations/ionic.leave.d.ts +0 -6
  1101. package/dist/types/utils/css-value-validation.d.ts +0 -21
  1102. package/dist/types/utils/forms/clear-button-press-controller.d.ts +0 -20
  1103. package/dist/types/utils/scroll-hide-controller.d.ts +0 -56
  1104. package/dist/types/utils/test/playwright/field-geometry.d.ts +0 -13
  1105. /package/dist/collection/components/{refresher-content/refresher-content.css → input-password-toggle/input-password-toggle.css} +0 -0
@@ -1,153 +1,14 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { Build, getMode, setMode, getElement } from "@stencil/core";
4
+ import { getMode, setMode } from "@stencil/core";
5
5
  import { printIonWarning } from "../utils/logging/index";
6
- import { shouldUseCloseWatcher } from "../utils/hardware-back-button";
7
6
  import { isPlatform, setupPlatforms } from "../utils/platform";
8
7
  import { config, configFromSession, configFromURL, saveConfig } from "./config";
8
+ // TODO(FW-2832): types
9
9
  let defaultMode;
10
- let defaultTheme = 'md';
11
- let rICHandle;
12
- /**
13
- * Prints a warning message to the developer to inform them of
14
- * an invalid configuration of mode and theme.
15
- * @param mode The invalid mode configuration.
16
- * @param theme The invalid theme configuration.
17
- */
18
- const printInvalidModeWarning = (mode, theme, ref) => {
19
- printIonWarning(`Invalid mode and theme combination provided: mode: ${mode}, theme: ${theme}. Fallback mode ${getDefaultModeForTheme(theme)} will be used.`, ref);
20
- };
21
- /**
22
- * Validates if a mode is accepted for a theme configuration.
23
- * @param mode The mode to validate.
24
- * @param theme The theme the mode is being used with.
25
- * @returns `true` if the mode is valid for the theme, `false` if invalid.
26
- */
27
- export const isModeValidForTheme = (mode, theme) => {
28
- if (mode === 'md') {
29
- return theme === 'md' || theme === 'ionic';
30
- }
31
- else if (mode === 'ios') {
32
- return theme === 'ios' || theme === 'ionic';
33
- }
34
- return false;
35
- };
36
- /**
37
- * Returns the default mode for a specified theme.
38
- * @param theme The theme to return a default mode for.
39
- * @returns The default mode, either `ios` or `md`.
40
- */
41
- const getDefaultModeForTheme = (theme) => {
42
- if (theme === 'ios') {
43
- return 'ios';
44
- }
45
- return 'md';
46
- };
47
- /**
48
- * Returns the default theme for a specified mode.
49
- * @param mode The mode to return a default theme for.
50
- * @returns The default theme.
51
- */
52
- const getDefaultThemeForMode = (mode) => {
53
- if (mode === 'ios') {
54
- return 'ios';
55
- }
56
- return 'md';
57
- };
58
- const isModeSupported = (elmMode) => ['ios', 'md'].includes(elmMode);
59
- const isThemeSupported = (theme) => ['ios', 'md', 'ionic'].includes(theme);
60
- const isIonicElement = (elm) => elm.tagName?.startsWith('ION-');
61
- /**
62
- * Returns the mode value of the element reference or the closest
63
- * parent with a valid mode.
64
- * @param ref The element reference to look up the mode for.
65
- * @param theme Optionally can provide the theme to avoid an additional look-up.
66
- * @returns The mode value for the element reference.
67
- */
68
- export const getIonMode = (ref, theme = getIonTheme(ref)) => {
69
- if (ref?.mode && isModeValidForTheme(ref?.mode, theme)) {
70
- /**
71
- * If the reference already has a mode configuration,
72
- * use it instead of performing a look-up.
73
- */
74
- return ref.mode;
75
- }
76
- else {
77
- const el = getElement(ref);
78
- const mode = el.closest('[mode]')?.getAttribute('mode') || defaultMode;
79
- if (isModeValidForTheme(mode, theme)) {
80
- /**
81
- * The mode configuration is supported for the configured theme.
82
- */
83
- return mode;
84
- }
85
- else {
86
- printInvalidModeWarning(mode, theme, ref);
87
- }
88
- }
89
- return getDefaultModeForTheme(theme);
90
- };
91
- /**
92
- * Returns the theme value of the element reference or the closest
93
- * parent with a valid theme.
94
- *
95
- * @param ref The element reference to look up the theme for.
96
- * @returns The theme value for the element reference, defaults to
97
- * the default theme if it cannot be determined.
98
- */
99
- export const getIonTheme = (ref) => {
100
- const theme = ref && getMode(ref);
101
- if (theme) {
102
- return theme;
103
- }
104
- /**
105
- * If the theme cannot be detected, then fallback to using
106
- * the `mode` attribute to determine the style sheets to use.
107
- */
108
- const el = getElement(ref);
109
- const mode = ref?.mode ?? el.closest('[mode]')?.getAttribute('mode');
110
- if (mode) {
111
- return getDefaultThemeForMode(mode);
112
- }
113
- /**
114
- * If a mode is not detected, then fallback to using the
115
- * default theme.
116
- */
117
- return defaultTheme;
118
- };
119
- export const rIC = (callback) => {
120
- if ('requestIdleCallback' in window) {
121
- return window.requestIdleCallback(callback);
122
- }
123
- return setTimeout(callback, 32);
124
- };
125
- export const cIC = (id) => {
126
- if ('cancelIdleCallback' in window) {
127
- window.cancelIdleCallback(id);
128
- }
129
- else {
130
- clearTimeout(id);
131
- }
132
- };
133
- export const needInputShims = () => {
134
- /**
135
- * iOS always needs input shims
136
- */
137
- const needsShimsIOS = isPlatform(window, 'ios') && isPlatform(window, 'mobile');
138
- if (needsShimsIOS) {
139
- return true;
140
- }
141
- /**
142
- * Android only needs input shims when running
143
- * in the browser and only if the browser is using the
144
- * new Chrome 108+ resize behavior: https://developer.chrome.com/blog/viewport-resize-behavior/
145
- */
146
- const isAndroidMobileWeb = isPlatform(window, 'android') && isPlatform(window, 'mobileweb');
147
- if (isAndroidMobileWeb) {
148
- return true;
149
- }
150
- return false;
10
+ export const getIonMode = (ref) => {
11
+ return (ref && getMode(ref)) || defaultMode;
151
12
  };
152
13
  export const initialize = (userConfig = {}) => {
153
14
  if (typeof window === 'undefined') {
@@ -171,120 +32,33 @@ export const initialize = (userConfig = {}) => {
171
32
  }
172
33
  // Setup platforms
173
34
  setupPlatforms(win);
35
+ // first see if the mode was set as an attribute on <html>
36
+ // which could have been set by the user, or by pre-rendering
37
+ // otherwise get the mode via config settings, and fallback to md
174
38
  Ionic.config = config;
175
- /**
176
- * Check if the mode was set as an attribute on <html>
177
- * which could have been set by the user, or by pre-rendering
178
- * otherwise get the mode via config settings, and fallback to md.
179
- */
180
39
  Ionic.mode = defaultMode = config.get('mode', doc.documentElement.getAttribute('mode') || (isPlatform(win, 'ios') ? 'ios' : 'md'));
181
- /**
182
- * Check if the theme was set as an attribute on <html>
183
- * which could have been set by the user, or by pre-rendering
184
- * otherwise get the theme via config settings, and fallback to md.
185
- */
186
- Ionic.theme = defaultTheme = config.get('theme', doc.documentElement.getAttribute('theme') || getDefaultThemeForMode(defaultMode));
187
- if (!isModeValidForTheme(defaultMode, defaultTheme)) {
188
- printInvalidModeWarning(defaultMode, defaultTheme, configObj);
189
- defaultMode = getDefaultModeForTheme(defaultTheme);
190
- }
191
40
  config.set('mode', defaultMode);
192
41
  doc.documentElement.setAttribute('mode', defaultMode);
193
42
  doc.documentElement.classList.add(defaultMode);
194
- config.set('theme', defaultTheme);
195
- doc.documentElement.setAttribute('theme', defaultTheme);
196
- doc.documentElement.classList.add(defaultTheme);
197
43
  if (config.getBoolean('_testing')) {
198
44
  config.set('animated', false);
199
45
  }
46
+ const isIonicElement = (elm) => elm.tagName?.startsWith('ION-');
47
+ const isAllowedIonicModeValue = (elmMode) => ['ios', 'md'].includes(elmMode);
200
48
  setMode((elm) => {
201
- /**
202
- * Iterate over all the element nodes, to both validate and
203
- * set the "mode" that is used for determining the styles to
204
- * apply to the element.
205
- *
206
- * setMode refers to Stencil's internal metadata for "mode",
207
- * which is used to set the correct styleUrl for the component.
208
- *
209
- * If the "theme" attribute or property is set, then use it
210
- * to determine the style sheets to use.
211
- *
212
- * If the "mode" attribute or property is set, then use it
213
- * to determine the style sheets to use. This is fallback
214
- * behavior for applications that are not setting the "theme".
215
- */
216
49
  while (elm) {
217
- const theme = elm.getAttribute('theme');
218
- if (theme) {
219
- if (isThemeSupported(theme)) {
220
- return theme;
221
- }
222
- else if (isIonicElement(elm)) {
223
- printIonWarning(`Invalid theme: "${theme}". Supported themes include: "ios" or "md".`);
224
- }
225
- }
226
- /**
227
- * If a theme is not detected, then fallback to using the
228
- * `mode` attribute to determine the style sheets to use.
229
- */
230
- const elmMode = elm.getAttribute('mode');
50
+ const elmMode = elm.mode || elm.getAttribute('mode');
231
51
  if (elmMode) {
232
- if (isModeSupported(elmMode)) {
52
+ if (isAllowedIonicModeValue(elmMode)) {
233
53
  return elmMode;
234
54
  }
235
55
  else if (isIonicElement(elm)) {
236
- printIonWarning(`Invalid mode: "${elmMode}". Ionic modes can be only "ios" or "md"`);
56
+ printIonWarning('Invalid ionic mode: "' + elmMode + '", expected: "ios" or "md"');
237
57
  }
238
58
  }
239
59
  elm = elm.parentElement;
240
60
  }
241
- return defaultTheme;
61
+ return defaultMode;
242
62
  });
243
- // `IonApp` code
244
- // ----------------------------------------------
245
- if (Build.isBrowser) {
246
- // If initialize is called again, clear the previous pending callback
247
- if (rICHandle !== undefined) {
248
- cIC(rICHandle);
249
- }
250
- rICHandle = rIC(async () => {
251
- const isHybrid = isPlatform(window, 'hybrid');
252
- if (!config.getBoolean('_testing')) {
253
- import('../utils/tap-click').then((module) => module.startTapClick(config));
254
- }
255
- if (config.getBoolean('statusTap', isHybrid)) {
256
- import('../utils/status-tap').then((module) => module.startStatusTap());
257
- }
258
- if (config.getBoolean('inputShims', needInputShims())) {
259
- /**
260
- * needInputShims() ensures that only iOS and Android
261
- * platforms proceed into this block.
262
- */
263
- const platform = isPlatform(window, 'ios') ? 'ios' : 'android';
264
- import('../utils/input-shims/input-shims').then((module) => module.startInputShims(config, platform));
265
- }
266
- const hardwareBackButtonModule = await import('../utils/hardware-back-button');
267
- const supportsHardwareBackButtonEvents = isHybrid || shouldUseCloseWatcher();
268
- if (config.getBoolean('hardwareBackButton', supportsHardwareBackButtonEvents)) {
269
- hardwareBackButtonModule.startHardwareBackButton();
270
- }
271
- else {
272
- /**
273
- * If an app sets hardwareBackButton: false and experimentalCloseWatcher: true
274
- * then the close watcher will not be used.
275
- */
276
- if (shouldUseCloseWatcher()) {
277
- printIonWarning('[ion-app] - experimentalCloseWatcher was set to `true`, but hardwareBackButton was set to `false`. Both config options must be `true` for the Close Watcher API to be used.');
278
- }
279
- hardwareBackButtonModule.blockHardwareBackButton();
280
- }
281
- if (typeof window !== 'undefined') {
282
- import('../utils/keyboard/keyboard').then((module) => module.startKeyboardAssist(window));
283
- }
284
- import('../utils/focus-visible').then((module) => module.getOrInitFocusVisibleUtility());
285
- // Reset handle once executed
286
- rICHandle = undefined;
287
- });
288
- }
289
63
  };
290
64
  export default initialize;
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { focusRedirectedElement } from "./helpers";
4
+ import { focusVisibleElement } from "./helpers";
5
5
  /**
6
6
  * This query string selects elements that
7
7
  * are eligible to receive focus. We select
@@ -14,7 +14,7 @@ import { focusRedirectedElement } from "./helpers";
14
14
  * Note: We need this distinction because `disabled="false"` is
15
15
  * valid usage for the disabled property on ion-button.
16
16
  */
17
- export const focusableQueryString = '[tabindex]:not([tabindex^="-"]):not([hidden]):not([disabled]), input:not([type=hidden]):not([tabindex^="-"]):not([hidden]):not([disabled]), textarea:not([tabindex^="-"]):not([hidden]):not([disabled]), button:not([tabindex^="-"]):not([hidden]):not([disabled]), select:not([tabindex^="-"]):not([hidden]):not([disabled]), ion-checkbox:not([tabindex^="-"]):not([hidden]):not([disabled]), ion-radio:not([tabindex^="-"]):not([hidden]):not([disabled]), ion-textarea:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable[disabled="false"]:not([tabindex^="-"]):not([hidden])';
17
+ export const focusableQueryString = '[tabindex]:not([tabindex^="-"]):not([hidden]):not([disabled]), input:not([type=hidden]):not([tabindex^="-"]):not([hidden]):not([disabled]), textarea:not([tabindex^="-"]):not([hidden]):not([disabled]), button:not([tabindex^="-"]):not([hidden]):not([disabled]), select:not([tabindex^="-"]):not([hidden]):not([disabled]), ion-checkbox:not([tabindex^="-"]):not([hidden]):not([disabled]), ion-radio:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable[disabled="false"]:not([tabindex^="-"]):not([hidden])';
18
18
  /**
19
19
  * Focuses the first descendant in a context
20
20
  * that can receive focus. If none exists,
@@ -66,18 +66,7 @@ const focusElementInContext = (hostToFocus, fallbackElement) => {
66
66
  const shadowRoot = hostToFocus?.shadowRoot;
67
67
  if (shadowRoot) {
68
68
  // If there are no inner focusable elements, just focus the host element.
69
- const innerFocusable = shadowRoot.querySelector(focusableQueryString);
70
- // If the host has a setFocus() method, use it to delegate focus properly.
71
- // This is needed for shadow DOM components like ion-textarea that override
72
- // focus() to delegate to their inner native elements.
73
- const hasSetFocus = typeof hostToFocus.setFocus === 'function';
74
- if (innerFocusable && hasSetFocus) {
75
- // Keep the host element so we can call setFocus() on it
76
- elementToFocus = hostToFocus;
77
- }
78
- else {
79
- elementToFocus = innerFocusable || hostToFocus;
80
- }
69
+ elementToFocus = shadowRoot.querySelector(focusableQueryString) || hostToFocus;
81
70
  }
82
71
  if (elementToFocus) {
83
72
  const radioGroup = elementToFocus.closest('ion-radio-group');
@@ -85,7 +74,7 @@ const focusElementInContext = (hostToFocus, fallbackElement) => {
85
74
  radioGroup.setFocus();
86
75
  }
87
76
  else {
88
- focusRedirectedElement(elementToFocus);
77
+ focusVisibleElement(elementToFocus);
89
78
  }
90
79
  }
91
80
  else {
@@ -17,58 +17,9 @@ const FOCUS_KEYS = [
17
17
  'Home',
18
18
  'End',
19
19
  ];
20
- let focusVisibleUtility = null;
21
- export const getOrInitFocusVisibleUtility = () => {
22
- if (!focusVisibleUtility) {
23
- focusVisibleUtility = startFocusVisible();
24
- }
25
- return focusVisibleUtility;
26
- };
27
- /**
28
- * Used to set focus on an element that uses `ion-focusable`.
29
- * Do not use this if focusing the element as a result of a keyboard
30
- * event as the focus utility should handle this for us. This method
31
- * should be used when we want to programmatically focus an element as
32
- * a result of another user action. (Ex: We focus the first element
33
- * inside of a popover when the user presents it, but the popover is not always
34
- * presented as a result of keyboard action.)
35
- *
36
- * @param elements - The elements to set focus on.
37
- */
38
- export const focusElements = (elements) => {
39
- const focusVisible = getOrInitFocusVisibleUtility();
40
- focusVisible.setFocus(elements);
41
- };
42
- /**
43
- * Reports whether the most recent interaction on the page was keyboard-driven.
44
- *
45
- * Check this before drawing the keyboard focus indicator programmatically.
46
- *
47
- * @returns `true` while the user is navigating with a keyboard, and before the
48
- * first interaction on the page.
49
- */
50
- export const isKeyboardMode = () => getOrInitFocusVisibleUtility().isKeyboardMode();
51
- /**
52
- * Watches how the user is interacting with the page and marks the focused
53
- * element with `ion-focused`, so the keyboard focus indicator is only drawn
54
- * while the user navigates with a keyboard.
55
- *
56
- * @param rootEl Scopes the utility to this element's shadow root, so it only
57
- * reacts to interactions inside it. Omit it to listen on the document.
58
- * @returns `setFocus` to mark elements focused programmatically, and `destroy`
59
- * to detach the listeners.
60
- */
61
20
  export const startFocusVisible = (rootEl) => {
62
21
  let currentFocus = [];
63
- /*
64
- * Starts as `true` so an element focused before the user has interacted,
65
- * such as one focused on page load, still draws an indicator.
66
- */
67
22
  let keyboardMode = true;
68
- /*
69
- * `ref` is where the listeners go and `root` is the element focus falls back
70
- * to once it leaves everything inside `ref`.
71
- */
72
23
  const ref = rootEl ? rootEl.shadowRoot : document;
73
24
  const root = rootEl ? rootEl : document.body;
74
25
  const setFocus = (elements) => {
@@ -80,24 +31,12 @@ export const startFocusVisible = (rootEl) => {
80
31
  keyboardMode = false;
81
32
  setFocus([]);
82
33
  };
83
- /*
84
- * Only the keys that move focus keep the indicator on. Any other key means
85
- * the user is typing into the focused element rather than navigating, so the
86
- * indicator is dropped.
87
- */
88
34
  const onKeydown = (ev) => {
89
35
  keyboardMode = FOCUS_KEYS.includes(ev.key);
90
36
  if (!keyboardMode) {
91
37
  setFocus([]);
92
38
  }
93
39
  };
94
- /*
95
- * The indicator does not always belong to the element that took focus. The
96
- * composed path is walked so every `ion-focusable` ancestor is marked too,
97
- * which is how an `ion-item` draws the indicator for a checkbox slotted into
98
- * it, since a checkbox in an item drops the class itself. The composed path
99
- * is used because it reaches hosts across shadow boundaries.
100
- */
101
40
  const onFocusin = (ev) => {
102
41
  if (keyboardMode && ev.composedPath !== undefined) {
103
42
  const toFocus = ev.composedPath().filter((el) => {
@@ -110,27 +49,18 @@ export const startFocusVisible = (rootEl) => {
110
49
  setFocus(toFocus);
111
50
  }
112
51
  };
113
- /*
114
- * Focus landing back on `root` means it left every focusable element, so
115
- * nothing should stay marked. Focus moving between elements is left alone
116
- * because `onFocusin` marks the new one.
117
- */
118
52
  const onFocusout = () => {
119
53
  if (ref.activeElement === root) {
120
54
  setFocus([]);
121
55
  }
122
56
  };
123
- /*
124
- * Capture phase, so the mode is current for the overlay focus trap, which
125
- * intercepts Tab in its own capture listener.
126
- */
127
- ref.addEventListener('keydown', onKeydown, true);
57
+ ref.addEventListener('keydown', onKeydown);
128
58
  ref.addEventListener('focusin', onFocusin);
129
59
  ref.addEventListener('focusout', onFocusout);
130
60
  ref.addEventListener('touchstart', pointerDown, { passive: true });
131
61
  ref.addEventListener('mousedown', pointerDown);
132
62
  const destroy = () => {
133
- ref.removeEventListener('keydown', onKeydown, true);
63
+ ref.removeEventListener('keydown', onKeydown);
134
64
  ref.removeEventListener('focusin', onFocusin);
135
65
  ref.removeEventListener('focusout', onFocusout);
136
66
  ref.removeEventListener('touchstart', pointerDown);
@@ -139,6 +69,5 @@ export const startFocusVisible = (rootEl) => {
139
69
  return {
140
70
  destroy,
141
71
  setFocus,
142
- isKeyboardMode: () => keyboardMode,
143
72
  };
144
73
  };
@@ -2,11 +2,6 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { raf } from "../helpers";
5
- /**
6
- * Content that handles its own click, so clicking it should not also activate
7
- * the form control.
8
- */
9
- const INTERACTIVE_CONTENT = 'a[href], button, details, embed, iframe, select, textarea, input:not([type="hidden"]), audio[controls], video[controls], [contenteditable]:not([contenteditable="false"]), .ion-activatable, .ion-focusable';
10
5
  /**
11
6
  * The content slotted into a form control's start or end slot that a click
12
7
  * started on, or `null` when the click did not start on slotted content.
@@ -25,24 +20,6 @@ export const getSlottedClickContent = (ev, el) => {
25
20
  * end slot.
26
21
  */
27
22
  const isSlottedClick = (ev, el) => getSlottedClickContent(ev, el) !== null;
28
- /**
29
- * Whether a click started on slotted content that handles its own click.
30
- *
31
- * The composed path is used rather than `closest` so that a control which
32
- * keeps its interactive element inside its own shadow root, such as
33
- * `ion-datetime-button`, is still recognized.
34
- */
35
- const isInteractiveSlottedClick = (ev, el) => {
36
- const slotted = getSlottedClickContent(ev, el);
37
- if (slotted === null) {
38
- return false;
39
- }
40
- const path = ev.composedPath();
41
- return path.slice(0, path.indexOf(slotted) + 1).some((node) => {
42
- const target = node;
43
- return target.nodeType === Node.ELEMENT_NODE && target.matches(INTERACTIVE_CONTENT);
44
- });
45
- };
46
23
  /**
47
24
  * A utility for form components that wrap their content in a <label>, such as
48
25
  * ion-input, ion-textarea and ion-select.
@@ -52,30 +29,21 @@ const isInteractiveSlottedClick = (ev, el) => {
52
29
  * the host as a duplicate, so the slotted click is remembered and the click
53
30
  * that follows it is suppressed.
54
31
  *
55
- * Chromium and Firefox skip the forwarding when the click lands on interactive
56
- * content, such as a slotted button, so the slotted click is remembered for a
57
- * frame rather than until a forwarded click that may never arrive.
58
- *
59
- * A native control inside the host's shadow root is found through the composed
60
- * path, because its click is retargeted to the host. That click is already
61
- * emitted from the host, so only the duplicate is suppressed.
62
- *
63
- * Components using `delegatesFocus`, such as ion-textarea, can reject the focus
64
- * a press on interactive slotted content moves to the native control by calling
65
- * `handleMouseDown` from the label and `rejectFocus` from the focus handler.
32
+ * Browsers skip the forwarding when the click lands on interactive content,
33
+ * such as a slotted button, so the slotted click is remembered for a frame
34
+ * rather than until a forwarded click that may never arrive.
66
35
  *
67
36
  * @internal
68
37
  * @param el - The host element.
69
38
  * @param getNativeInput - A callback returning the native form control the
70
39
  * label points at, for components that have one. Those components emit the
71
- * click from the host rather than the control. Omit it for components whose
40
+ * click from the host rather than the control, so the control's click is
41
+ * always stopped and re-dispatched from the host. Omit it for components whose
72
42
  * label has no `for` attribute, such as ion-select, where the browser forwards
73
43
  * to an internal control that already re-bubbles targeting the host.
74
44
  */
75
45
  export const createClickController = (el, getNativeInput) => {
76
46
  let hasSlottedClick = false;
77
- let rejectingFocus = false;
78
- let removeDisarmListeners;
79
47
  const handleClickCapture = (ev) => {
80
48
  if (isSlottedClick(ev, el)) {
81
49
  hasSlottedClick = true;
@@ -90,67 +58,13 @@ export const createClickController = (el, getNativeInput) => {
90
58
  return;
91
59
  }
92
60
  const nativeInput = getNativeInput();
93
- if (nativeInput !== undefined && ev.composedPath()[0] === nativeInput) {
94
- const isRetargeted = el.shadowRoot !== null && nativeInput.getRootNode() === el.shadowRoot;
95
- if (hasSlottedClick || !isRetargeted) {
96
- ev.stopPropagation();
97
- }
98
- if (!hasSlottedClick && !isRetargeted) {
61
+ if (nativeInput !== undefined && ev.target === nativeInput) {
62
+ ev.stopPropagation();
63
+ if (!hasSlottedClick) {
99
64
  el.click();
100
65
  }
101
66
  hasSlottedClick = false;
102
67
  }
103
68
  };
104
- /**
105
- * The press ends with a click, which can land outside the label, or with a
106
- * `dragstart` or `pointercancel` when no click comes. The listeners capture
107
- * so a slotted control calling `stopPropagation` can't leave it armed.
108
- */
109
- const armFocusRejection = () => {
110
- removeDisarmListeners?.();
111
- rejectingFocus = true;
112
- const events = ['click', 'dragstart', 'pointercancel'];
113
- const removeListeners = () => {
114
- removeDisarmListeners = undefined;
115
- events.forEach((name) => document.removeEventListener(name, disarm, true));
116
- };
117
- const disarm = () => {
118
- removeListeners();
119
- raf(() => (rejectingFocus = false));
120
- };
121
- removeDisarmListeners = removeListeners;
122
- events.forEach((name) => document.addEventListener(name, disarm, true));
123
- };
124
- const handleMouseDown = (ev) => {
125
- if (ev.button !== 0 || !isInteractiveSlottedClick(ev, el)) {
126
- return;
127
- }
128
- armFocusRejection();
129
- };
130
- /**
131
- * Drops focus moved to the native control by a press on interactive slotted
132
- * content, and returns whether it did. WebKit forwards the label's click even
133
- * then, so focus goes back to the content it came from inside the host.
134
- */
135
- const rejectFocus = (ev) => {
136
- if (!rejectingFocus) {
137
- return false;
138
- }
139
- const previous = ev.relatedTarget;
140
- if (previous !== null && previous !== el && el.contains(previous)) {
141
- previous.focus();
142
- }
143
- // The related target can be a slotted host that isn't focusable, such as ion-button.
144
- const nativeInput = getNativeInput?.();
145
- if (nativeInput !== undefined &&
146
- nativeInput.getRootNode().activeElement === nativeInput) {
147
- nativeInput.blur();
148
- }
149
- return true;
150
- };
151
- const cancelFocusRejection = () => {
152
- removeDisarmListeners?.();
153
- rejectingFocus = false;
154
- };
155
- return { handleClickCapture, handleMouseDown, rejectFocus, cancelFocusRejection, destroy: cancelFocusRejection };
69
+ return { handleClickCapture };
156
70
  };
@@ -7,4 +7,3 @@ export * from './compare-with-utils';
7
7
  export * from './item-multiple-inputs';
8
8
  export * from './click-controller';
9
9
  export * from './validity';
10
- export * from './clear-button-press-controller';
@@ -13,34 +13,3 @@ export const checkInvalidState = (el) => {
13
13
  const hasIonInvalid = el.classList.contains('ion-invalid');
14
14
  return hasIonTouched && hasIonInvalid;
15
15
  };
16
- export const getValidityFlags = (validity) => {
17
- return {
18
- badInput: validity.badInput,
19
- customError: validity.customError,
20
- patternMismatch: validity.patternMismatch,
21
- rangeOverflow: validity.rangeOverflow,
22
- rangeUnderflow: validity.rangeUnderflow,
23
- stepMismatch: validity.stepMismatch,
24
- tooLong: validity.tooLong,
25
- tooShort: validity.tooShort,
26
- typeMismatch: validity.typeMismatch,
27
- valueMissing: validity.valueMissing,
28
- };
29
- };
30
- /**
31
- * Reports the validity state of a native form element to ElementInternals.
32
- * This delegates to the native element's built-in validation, which automatically
33
- * handles required, minlength, maxlength, and other constraints.
34
- */
35
- export const reportValidityToElementInternals = (nativeElement, internals) => {
36
- if (!nativeElement?.validity) {
37
- return;
38
- }
39
- if (nativeElement.validity.valid) {
40
- internals.setValidity({});
41
- }
42
- else {
43
- const validityFlags = getValidityFlags(nativeElement.validity);
44
- internals.setValidity(validityFlags, nativeElement.validationMessage, nativeElement);
45
- }
46
- };
@@ -1,7 +1,6 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { config } from "../global/config";
5
4
  import { componentOnReady } from "./helpers";
6
5
  // TODO(FW-2832): types
7
6
  export const attachComponent = async (delegate, container, component, cssClasses, componentProps, inline) => {
@@ -100,8 +99,7 @@ export const CoreDelegate = () => {
100
99
  * Get the root of the app and
101
100
  * add the overlay there.
102
101
  */
103
- const appRootSelector = config.get('appRootSelector', 'ion-app');
104
- const app = document.querySelector(appRootSelector) || document.body;
102
+ const app = document.querySelector('ion-app') || document.body;
105
103
  /**
106
104
  * Create a placeholder comment so that
107
105
  * we can return this component to where