@ionic/core 8.8.16-dev.11784914346.10d0804c → 8.8.16-dev.11785274070.1b3387c9

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 (1135) 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-8cRBED2y.js +4 -0
  99. package/components/p-B--DzMaF.js +4 -0
  100. package/components/p-B-XasJcm.js +4 -0
  101. package/components/p-B4i0QYxB.js +4 -0
  102. package/components/p-B5Ia5kbJ.js +4 -0
  103. package/components/p-BRF87FDL.js +4 -0
  104. package/components/p-BSQPZ79H.js +4 -0
  105. package/components/p-BTPfOxsU.js +4 -0
  106. package/{dist/ionic/p-Cm20lBQw.js → components/p-BT_5jSqG.js} +1 -1
  107. package/components/p-Baq1XyAy.js +4 -0
  108. package/components/p-BmVRXR1y.js +4 -0
  109. package/components/p-BnTB62Lu.js +4 -0
  110. package/components/p-Bz0dSlXZ.js +4 -0
  111. package/components/p-C1aScSTo.js +4 -0
  112. package/components/{p-BKSylJVh.js → p-C4t5ymfq.js} +1 -1
  113. package/components/p-CHqRYvYm.js +4 -0
  114. package/components/p-CIGNaXM1.js +4 -0
  115. package/components/p-CPa2WmW7.js +4 -0
  116. package/components/p-CYdwJYjZ.js +4 -0
  117. package/components/p-CYhGN6l4.js +4 -0
  118. package/components/p-C_xFdyXe.js +4 -0
  119. package/components/p-CbJDPICP.js +4 -0
  120. package/components/{p-BE21dB_a.js → p-Cf2jSDS8.js} +1 -1
  121. package/components/p-Ciz1-FuE.js +4 -0
  122. package/components/p-CmR5uXej.js +4 -0
  123. package/components/p-CtQ-1ZRt.js +4 -0
  124. package/components/p-CtWGkNnJ.js +4 -0
  125. package/{dist/ionic/p-BlZo7Gy-.js → components/p-CtukzcyX.js} +1 -1
  126. package/components/p-CwcD5kE9.js +4 -0
  127. package/components/p-CyFtf1Mm.js +4 -0
  128. package/components/p-CzuRCorP.js +4 -0
  129. package/components/p-D-lHU3L1.js +4 -0
  130. package/components/p-D1-tlI3U.js +4 -0
  131. package/components/{p-DP96lPOT.js → p-D13Eaw-8.js} +1 -1
  132. package/components/p-D355UF9s.js +4 -0
  133. package/components/{p-Dqgyr3aJ.js → p-D5Ubpm7D.js} +1 -1
  134. package/components/p-D6Ynv7Xh.js +4 -0
  135. package/components/p-D7bSXQD3.js +4 -0
  136. package/components/p-DDuPXV-I.js +4 -0
  137. package/components/p-DEI720fP.js +4 -0
  138. package/components/p-DIE4pXMl.js +4 -0
  139. package/components/p-DJztqcrH.js +4 -0
  140. package/components/p-DK0D_QD_.js +4 -0
  141. package/components/p-DNQI6d-L.js +4 -0
  142. package/components/p-DZvgPU3M.js +4 -0
  143. package/components/p-DfjhtfFw.js +4 -0
  144. package/components/p-Dg1a5T1q.js +4 -0
  145. package/components/p-DiVJyqlX.js +4 -0
  146. package/components/p-DnL1c9_X.js +4 -0
  147. package/components/p-Ds1Brlka.js +4 -0
  148. package/components/p-DvTinP2Q.js +4 -0
  149. package/components/p-Dy5czMtc.js +4 -0
  150. package/components/{p-CVYFPBs-.js → p-LMGfIvTf.js} +1 -1
  151. package/components/p-LpMHEu3v.js +4 -0
  152. package/components/p-Sh0ICmPV.js +4 -0
  153. package/components/p-XX59Wsi5.js +4 -0
  154. package/components/p-ZjP4CjeZ.js +4 -0
  155. package/components/{p-Fagxa-Vi.js → p-cyNmxje6.js} +1 -1
  156. package/components/p-ijF0iCrA.js +4 -0
  157. package/components/{p-DylrHLJF.js → p-jOtMJMv8.js} +1 -1
  158. package/components/p-oqjkU_Qx.js +4 -0
  159. package/css/core.css +1 -1
  160. package/css/core.css.map +1 -1
  161. package/css/display.css +1 -1
  162. package/css/display.css.map +1 -1
  163. package/css/flex-utils.css +1 -1
  164. package/css/flex-utils.css.map +1 -1
  165. package/css/float-elements.css.map +1 -1
  166. package/css/global.bundle.css.map +1 -1
  167. package/css/ionic-swiper.css +1 -1
  168. package/css/ionic-swiper.css.map +1 -1
  169. package/css/ionic.bundle.css +1 -1
  170. package/css/ionic.bundle.css.map +1 -1
  171. package/css/normalize.css.map +1 -1
  172. package/css/padding.css.map +1 -1
  173. package/css/palettes/dark.always.css.map +1 -1
  174. package/css/palettes/dark.class.css.map +1 -1
  175. package/css/palettes/dark.system.css.map +1 -1
  176. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  177. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  178. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  179. package/css/palettes/high-contrast.always.css.map +1 -1
  180. package/css/palettes/high-contrast.class.css.map +1 -1
  181. package/css/palettes/high-contrast.system.css.map +1 -1
  182. package/css/structure.css.map +1 -1
  183. package/css/text-alignment.css.map +1 -1
  184. package/css/text-transformation.css.map +1 -1
  185. package/css/typography.css.map +1 -1
  186. package/css/utils.bundle.css +1 -1
  187. package/css/utils.bundle.css.map +1 -1
  188. package/dist/cjs/{animation-B3xfVcDO.js → animation-BJq0kcy2.js} +3 -3
  189. package/dist/cjs/{app-globals-3ZoCVkn-.js → app-globals-7VMuu6PT.js} +1 -1
  190. package/dist/cjs/{button-active-3tZKuPbT.js → button-active-0mPOKmV2.js} +2 -2
  191. package/dist/cjs/{capacitor-CQSg1uCo.js → capacitor-DmA66EwP.js} +3 -3
  192. package/dist/{esm/focus-visible-vXpMhGrs.js → cjs/focus-visible-CCvKiLh3.js} +3 -23
  193. package/dist/cjs/{format-BCIkDef_.js → format-PxvGiOik.js} +1 -1
  194. package/dist/cjs/{framework-delegate-DC5nq_NN.js → framework-delegate-BtICZDHr.js} +2 -4
  195. package/dist/cjs/{haptic-eix26ESE.js → haptic-ClPPQ_PS.js} +1 -1
  196. package/dist/cjs/hardware-back-button-iUuF_76h.js +121 -0
  197. package/dist/cjs/{helpers-DiOgV5hw.js → helpers-Cv23MFHM.js} +4 -71
  198. package/dist/cjs/{index-BaJ7_YbC.js → index-BERfRao3.js} +4 -4
  199. package/dist/cjs/{index-BxEZd5IE.js → index-CIrkNXqJ.js} +2 -2
  200. package/dist/cjs/{index-GZU9YrFc.js → index-Ct7gcRif.js} +4 -41
  201. package/dist/cjs/{index-Bj07IRTB.js → index-Cueg3U4w.js} +1 -1
  202. package/dist/cjs/{index-bX3nz2vw.js → index-D81eLYUM.js} +8 -9
  203. package/dist/cjs/index-DkNv4J_i.js +10 -0
  204. package/dist/cjs/{index-DYRcC3bw.js → index-IPWmFzOn.js} +15 -15
  205. package/dist/cjs/{index-CgAbCW6L.js → index-wOmugbdg.js} +1 -3
  206. package/dist/cjs/index.cjs.js +14 -14
  207. package/dist/cjs/{input-shims-BSEBw22J.js → input-shims-CFLg7uzj.js} +17 -18
  208. package/dist/cjs/{input.utils-D68wgI2Y.js → input.utils-DetjmtH2.js} +5 -5
  209. package/dist/cjs/ion-accordion_2.cjs.entry.js +29 -61
  210. package/dist/cjs/ion-action-sheet.cjs.entry.js +28 -27
  211. package/dist/cjs/ion-alert.cjs.entry.js +34 -32
  212. package/dist/cjs/ion-app_8.cjs.entry.js +212 -462
  213. package/dist/cjs/ion-avatar_3.cjs.entry.js +13 -125
  214. package/dist/cjs/ion-back-button.cjs.entry.js +22 -31
  215. package/dist/cjs/ion-backdrop.cjs.entry.js +7 -10
  216. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +18 -54
  217. package/dist/cjs/ion-button_2.cjs.entry.js +24 -61
  218. package/dist/cjs/ion-card_5.cjs.entry.js +33 -55
  219. package/dist/cjs/ion-checkbox.cjs.entry.js +17 -37
  220. package/dist/cjs/ion-chip.cjs.entry.js +9 -50
  221. package/dist/cjs/ion-col_3.cjs.entry.js +57 -56
  222. package/dist/cjs/ion-datetime-button.cjs.entry.js +11 -21
  223. package/dist/cjs/{ion-datetime_3.cjs.entry.js → ion-datetime.cjs.entry.js} +41 -760
  224. package/dist/cjs/ion-fab_3.cjs.entry.js +28 -44
  225. package/dist/cjs/ion-img.cjs.entry.js +6 -8
  226. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +16 -91
  227. package/dist/cjs/ion-input-otp.cjs.entry.js +9 -74
  228. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +15 -53
  229. package/dist/cjs/ion-input.cjs.entry.js +35 -125
  230. package/dist/cjs/ion-item-option_3.cjs.entry.js +52 -467
  231. package/dist/cjs/ion-item_8.cjs.entry.js +50 -121
  232. package/dist/cjs/ion-loading.cjs.entry.js +22 -20
  233. package/dist/cjs/ion-menu_3.cjs.entry.js +29 -47
  234. package/dist/cjs/ion-modal.cjs.entry.js +165 -269
  235. package/dist/cjs/ion-nav_2.cjs.entry.js +12 -128
  236. package/dist/cjs/ion-picker-column-option.cjs.entry.js +9 -19
  237. package/dist/cjs/ion-picker-column.cjs.entry.js +14 -20
  238. package/dist/cjs/ion-picker.cjs.entry.js +6 -10
  239. package/dist/cjs/ion-popover.cjs.entry.js +23 -21
  240. package/dist/cjs/ion-progress-bar.cjs.entry.js +9 -27
  241. package/dist/cjs/ion-radio_2.cjs.entry.js +17 -35
  242. package/dist/cjs/ion-range.cjs.entry.js +13 -20
  243. package/dist/cjs/ion-refresher_2.cjs.entry.js +21 -39
  244. package/dist/cjs/ion-reorder_2.cjs.entry.js +14 -38
  245. package/dist/cjs/ion-ripple-effect.cjs.entry.js +7 -15
  246. package/dist/cjs/ion-route_4.cjs.entry.js +26 -13
  247. package/dist/cjs/ion-searchbar.cjs.entry.js +25 -138
  248. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  249. package/dist/cjs/ion-segment-view.cjs.entry.js +3 -13
  250. package/dist/cjs/ion-segment_2.cjs.entry.js +16 -23
  251. package/dist/cjs/ion-select-modal.cjs.entry.js +26 -48
  252. package/dist/cjs/ion-select_3.cjs.entry.js +108 -199
  253. package/dist/cjs/ion-spinner.cjs.entry.js +8 -30
  254. package/dist/cjs/ion-split-pane.cjs.entry.js +9 -13
  255. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +28 -150
  256. package/dist/cjs/ion-tab_2.cjs.entry.js +7 -8
  257. package/dist/cjs/ion-text.cjs.entry.js +7 -7
  258. package/dist/cjs/ion-textarea.cjs.entry.js +23 -137
  259. package/dist/cjs/ion-toast.cjs.entry.js +46 -69
  260. package/dist/cjs/ion-toggle.cjs.entry.js +25 -82
  261. package/dist/cjs/ionic-global-CbxQmwkf.js +151 -0
  262. package/dist/cjs/ionic.cjs.js +4 -4
  263. package/dist/cjs/{ios.transition-DpFQfFfT.js → ios.transition-BOSWOaiK.js} +5 -7
  264. package/dist/cjs/{keyboard-Bn0Ppim6.js → keyboard-UuAS4D_9.js} +1 -1
  265. package/dist/cjs/keyboard-controller-GXBiBRKS.js +167 -0
  266. package/dist/cjs/{keyboard-faZBQysj.js → keyboard-hHzlEQpk.js} +3 -4
  267. package/dist/cjs/loader.cjs.js +4 -4
  268. package/dist/cjs/{md.transition-ChJcoZUH.js → md.transition-B8-wBZqt.js} +5 -6
  269. package/dist/cjs/{notch-controller-BO0UGB4F.js → notch-controller-18PzRGXd.js} +4 -4
  270. package/dist/cjs/{overlay-control-label-DnRLQR1t.js → overlay-control-label-D2sdL2O8.js} +11 -13
  271. package/dist/cjs/{overlays-CFGbPUmE.js → overlays-DJVbo1cW.js} +43 -315
  272. package/dist/cjs/{select-option-render-DqBHEjDn.js → select-option-render-DTF50t5r.js} +2 -2
  273. package/dist/cjs/{status-tap-x2qDo5QR.js → status-tap-BXX8H8_Y.js} +3 -4
  274. package/dist/cjs/{swipe-back-CvZt_4YX.js → swipe-back-C0GCB18x.js} +2 -3
  275. package/dist/cjs/{theme-IlOsGAz7.js → theme-CeDs6Hcv.js} +1 -25
  276. package/dist/cjs/validity-BpS37YFM.js +19 -0
  277. package/dist/collection/collection-manifest.json +1 -13
  278. package/dist/collection/components/accordion/accordion.ios.css +58 -73
  279. package/dist/collection/components/accordion/accordion.js +27 -41
  280. package/dist/collection/components/accordion/accordion.md.css +59 -67
  281. package/dist/collection/components/accordion-group/accordion-group.ios.css +4 -16
  282. package/dist/collection/components/accordion-group/accordion-group.js +8 -44
  283. package/dist/collection/components/accordion-group/accordion-group.md.css +4 -22
  284. package/dist/collection/components/action-sheet/action-sheet.ios.css +55 -186
  285. package/dist/collection/components/action-sheet/action-sheet.js +18 -18
  286. package/dist/collection/components/action-sheet/action-sheet.md.css +56 -181
  287. package/dist/collection/components/alert/alert.ios.css +55 -249
  288. package/dist/collection/components/alert/alert.js +23 -22
  289. package/dist/collection/components/alert/alert.md.css +57 -245
  290. package/dist/collection/components/app/app.js +83 -15
  291. package/dist/collection/components/avatar/avatar.ios.css +33 -7
  292. package/dist/collection/components/avatar/avatar.js +4 -120
  293. package/dist/collection/components/avatar/avatar.md.css +0 -51
  294. package/dist/collection/components/back-button/back-button.ios.css +48 -60
  295. package/dist/collection/components/back-button/back-button.js +19 -27
  296. package/dist/collection/components/back-button/back-button.md.css +48 -60
  297. package/dist/collection/components/backdrop/backdrop.ios.css +19 -56
  298. package/dist/collection/components/backdrop/backdrop.js +6 -12
  299. package/dist/collection/components/backdrop/backdrop.md.css +19 -56
  300. package/dist/collection/components/badge/badge.ios.css +12 -139
  301. package/dist/collection/components/badge/badge.js +9 -145
  302. package/dist/collection/components/badge/badge.md.css +12 -123
  303. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +8 -20
  304. package/dist/collection/components/breadcrumb/breadcrumb.js +11 -43
  305. package/dist/collection/components/breadcrumb/breadcrumb.md.css +8 -20
  306. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +0 -6
  307. package/dist/collection/components/breadcrumbs/breadcrumbs.js +9 -11
  308. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +0 -6
  309. package/dist/collection/components/button/button.ios.css +46 -154
  310. package/dist/collection/components/button/button.js +27 -63
  311. package/dist/collection/components/button/button.md.css +50 -150
  312. package/dist/collection/components/buttons/buttons.ios.css +7 -59
  313. package/dist/collection/components/buttons/buttons.js +9 -15
  314. package/dist/collection/components/buttons/buttons.md.css +3 -55
  315. package/dist/collection/components/card/card.ios.css +14 -65
  316. package/dist/collection/components/card/card.js +10 -41
  317. package/dist/collection/components/card/card.md.css +14 -65
  318. package/dist/collection/components/card-content/card-content.ios.css +35 -20
  319. package/dist/collection/components/card-content/card-content.js +10 -12
  320. package/dist/collection/components/card-content/card-content.md.css +35 -20
  321. package/dist/collection/components/card-header/card-header.ios.css +15 -27
  322. package/dist/collection/components/card-header/card-header.js +10 -13
  323. package/dist/collection/components/card-header/card-header.md.css +15 -27
  324. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +0 -12
  325. package/dist/collection/components/card-subtitle/card-subtitle.js +8 -11
  326. package/dist/collection/components/card-subtitle/card-subtitle.md.css +0 -12
  327. package/dist/collection/components/card-title/card-title.ios.css +0 -73
  328. package/dist/collection/components/card-title/card-title.js +8 -11
  329. package/dist/collection/components/card-title/card-title.md.css +0 -73
  330. package/dist/collection/components/checkbox/checkbox.ios.css +99 -163
  331. package/dist/collection/components/checkbox/checkbox.js +15 -73
  332. package/dist/collection/components/checkbox/checkbox.md.css +100 -164
  333. package/dist/collection/components/chip/chip.ios.css +14 -67
  334. package/dist/collection/components/chip/chip.js +8 -108
  335. package/dist/collection/components/chip/chip.md.css +14 -67
  336. package/dist/collection/components/col/col.css +4 -192
  337. package/dist/collection/components/col/col.js +61 -211
  338. package/dist/collection/components/content/content.css +2 -47
  339. package/dist/collection/components/content/content.js +11 -16
  340. package/dist/collection/components/datetime/datetime.ios.css +148 -304
  341. package/dist/collection/components/datetime/datetime.js +28 -112
  342. package/dist/collection/components/datetime/datetime.md.css +138 -294
  343. package/dist/collection/components/datetime/utils/data.js +5 -5
  344. package/dist/collection/components/datetime-button/datetime-button.ios.css +5 -6
  345. package/dist/collection/components/datetime-button/datetime-button.js +9 -19
  346. package/dist/collection/components/datetime-button/datetime-button.md.css +5 -6
  347. package/dist/collection/components/fab/fab.css +1 -25
  348. package/dist/collection/components/fab/fab.js +5 -9
  349. package/dist/collection/components/fab-button/fab-button.ios.css +6 -18
  350. package/dist/collection/components/fab-button/fab-button.js +21 -36
  351. package/dist/collection/components/fab-button/fab-button.md.css +8 -20
  352. package/dist/collection/components/fab-list/fab-list.css +0 -12
  353. package/dist/collection/components/fab-list/fab-list.js +5 -9
  354. package/dist/collection/components/footer/footer.ios.css +6 -33
  355. package/dist/collection/components/footer/footer.js +25 -117
  356. package/dist/collection/components/footer/footer.md.css +0 -40
  357. package/dist/collection/components/grid/grid.css +0 -12
  358. package/dist/collection/components/grid/grid.js +5 -9
  359. package/dist/collection/components/header/header.ios.css +133 -178
  360. package/dist/collection/components/header/header.js +39 -181
  361. package/dist/collection/components/header/header.md.css +9 -199
  362. package/dist/collection/components/header/header.utils.js +13 -6
  363. package/dist/collection/components/img/img.js +6 -7
  364. package/dist/collection/components/infinite-scroll/infinite-scroll.js +5 -100
  365. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -12
  366. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +10 -16
  367. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -12
  368. package/dist/collection/components/input/input.ios.css +136 -225
  369. package/dist/collection/components/input/input.js +42 -153
  370. package/dist/collection/components/input/input.md.css +208 -195
  371. package/dist/collection/components/input-otp/input-otp.ios.css +60 -105
  372. package/dist/collection/components/input-otp/input-otp.js +7 -74
  373. package/dist/collection/components/input-otp/input-otp.md.css +60 -105
  374. package/dist/collection/components/input-password-toggle/input-password-toggle.js +12 -48
  375. package/dist/collection/components/item/item.ios.css +69 -109
  376. package/dist/collection/components/item/item.js +21 -56
  377. package/dist/collection/components/item/item.md.css +68 -120
  378. package/dist/collection/components/item-divider/item-divider.ios.css +0 -18
  379. package/dist/collection/components/item-divider/item-divider.js +8 -11
  380. package/dist/collection/components/item-divider/item-divider.md.css +0 -18
  381. package/dist/collection/components/item-group/item-group.ios.css +0 -12
  382. package/dist/collection/components/item-group/item-group.js +7 -13
  383. package/dist/collection/components/item-group/item-group.md.css +0 -12
  384. package/dist/collection/components/item-option/item-option.ios.css +29 -136
  385. package/dist/collection/components/item-option/item-option.js +9 -73
  386. package/dist/collection/components/item-option/item-option.md.css +29 -136
  387. package/dist/collection/components/item-options/item-options.ios.css +34 -77
  388. package/dist/collection/components/item-options/item-options.js +7 -13
  389. package/dist/collection/components/item-options/item-options.md.css +34 -77
  390. package/dist/collection/components/item-sliding/{item-sliding.native.css → item-sliding.css} +9 -84
  391. package/dist/collection/components/item-sliding/item-sliding.js +35 -421
  392. package/dist/collection/components/item-sliding/test/test.utils.js +0 -13
  393. package/dist/collection/components/label/label.ios.css +0 -18
  394. package/dist/collection/components/label/label.js +8 -11
  395. package/dist/collection/components/label/label.md.css +0 -18
  396. package/dist/collection/components/list/list.ios.css +14 -54
  397. package/dist/collection/components/list/list.js +9 -48
  398. package/dist/collection/components/list/list.md.css +16 -56
  399. package/dist/collection/components/list-header/list-header.ios.css +38 -82
  400. package/dist/collection/components/list-header/list-header.js +8 -11
  401. package/dist/collection/components/list-header/list-header.md.css +38 -82
  402. package/dist/collection/components/loading/loading.ios.css +1 -13
  403. package/dist/collection/components/loading/loading.js +16 -15
  404. package/dist/collection/components/loading/loading.md.css +1 -13
  405. package/dist/collection/components/menu/menu.ios.css +3 -15
  406. package/dist/collection/components/menu/menu.js +7 -12
  407. package/dist/collection/components/menu/menu.md.css +3 -15
  408. package/dist/collection/components/menu-button/menu-button.ios.css +14 -48
  409. package/dist/collection/components/menu-button/menu-button.js +10 -26
  410. package/dist/collection/components/menu-button/menu-button.md.css +15 -49
  411. package/dist/collection/components/menu-toggle/menu-toggle.js +5 -8
  412. package/dist/collection/components/modal/animations/sheet.js +2 -8
  413. package/dist/collection/components/modal/gestures/sheet.js +10 -76
  414. package/dist/collection/components/modal/modal.ios.css +70 -178
  415. package/dist/collection/components/modal/modal.js +42 -60
  416. package/dist/collection/components/modal/modal.md.css +70 -178
  417. package/dist/collection/components/nav/nav.css +1 -7
  418. package/dist/collection/components/nav/nav.js +8 -229
  419. package/dist/collection/components/nav-link/nav-link.js +1 -5
  420. package/dist/collection/components/note/note.ios.css +0 -12
  421. package/dist/collection/components/note/note.js +8 -11
  422. package/dist/collection/components/note/note.md.css +0 -12
  423. package/dist/collection/components/picker/picker.ios.css +3 -15
  424. package/dist/collection/components/picker/picker.js +5 -8
  425. package/dist/collection/components/picker/picker.md.css +3 -15
  426. package/dist/collection/components/picker-column/picker-column.css +5 -9
  427. package/dist/collection/components/picker-column/picker-column.js +8 -16
  428. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
  429. package/dist/collection/components/picker-column-option/picker-column-option.js +8 -21
  430. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -7
  431. package/dist/collection/components/popover/popover.ios.css +2 -15
  432. package/dist/collection/components/popover/popover.js +20 -19
  433. package/dist/collection/components/popover/popover.md.css +2 -15
  434. package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -48
  435. package/dist/collection/components/progress-bar/progress-bar.js +7 -43
  436. package/dist/collection/components/progress-bar/progress-bar.md.css +17 -48
  437. package/dist/collection/components/radio/radio.ios.css +91 -134
  438. package/dist/collection/components/radio/radio.js +10 -15
  439. package/dist/collection/components/radio/radio.md.css +91 -134
  440. package/dist/collection/components/radio-group/radio-group.ios.css +19 -43
  441. package/dist/collection/components/radio-group/radio-group.js +7 -48
  442. package/dist/collection/components/radio-group/radio-group.md.css +19 -43
  443. package/dist/collection/components/range/range.ios.css +85 -128
  444. package/dist/collection/components/range/range.js +10 -16
  445. package/dist/collection/components/range/range.md.css +85 -128
  446. package/dist/collection/components/refresher/refresher.ios.css +1 -14
  447. package/dist/collection/components/refresher/refresher.js +8 -11
  448. package/dist/collection/components/refresher/refresher.md.css +2 -15
  449. package/dist/collection/components/refresher-content/refresher-content.js +7 -28
  450. package/dist/collection/components/reorder/reorder.ios.css +0 -6
  451. package/dist/collection/components/reorder/reorder.js +6 -33
  452. package/dist/collection/components/reorder/reorder.md.css +0 -6
  453. package/dist/collection/components/reorder-group/reorder-group.css +0 -6
  454. package/dist/collection/components/reorder-group/reorder-group.js +4 -8
  455. package/dist/collection/components/ripple-effect/{ripple-effect.common.css → ripple-effect.css} +1 -7
  456. package/dist/collection/components/ripple-effect/ripple-effect.js +6 -14
  457. package/dist/collection/components/route/route.js +1 -5
  458. package/dist/collection/components/router/router.js +0 -4
  459. package/dist/collection/components/router/utils/dom.js +22 -3
  460. package/dist/collection/components/router-link/router-link.css +2 -8
  461. package/dist/collection/components/router-link/router-link.js +5 -9
  462. package/dist/collection/components/router-outlet/router-outlet.css +1 -7
  463. package/dist/collection/components/router-outlet/router-outlet.js +40 -10
  464. package/dist/collection/components/row/row.css +0 -16
  465. package/dist/collection/components/row/row.js +2 -9
  466. package/dist/collection/components/searchbar/searchbar.ios.css +18 -56
  467. package/dist/collection/components/searchbar/searchbar.js +38 -185
  468. package/dist/collection/components/searchbar/searchbar.md.css +18 -56
  469. package/dist/collection/components/segment/segment.ios.css +2 -45
  470. package/dist/collection/components/segment/segment.js +8 -11
  471. package/dist/collection/components/segment/segment.md.css +2 -45
  472. package/dist/collection/components/segment-button/segment-button.ios.css +105 -146
  473. package/dist/collection/components/segment-button/segment-button.js +8 -11
  474. package/dist/collection/components/segment-button/segment-button.md.css +107 -148
  475. package/dist/collection/components/segment-content/segment-content.js +1 -1
  476. package/dist/collection/components/segment-view/segment-view.ios.css +0 -6
  477. package/dist/collection/components/segment-view/segment-view.js +4 -13
  478. package/dist/collection/components/segment-view/segment-view.md.css +0 -6
  479. package/dist/collection/components/select/select.ios.css +177 -316
  480. package/dist/collection/components/select/select.js +110 -232
  481. package/dist/collection/components/select/select.md.css +179 -332
  482. package/dist/collection/components/select-modal/select-modal.ios.css +46 -295
  483. package/dist/collection/components/select-modal/select-modal.js +15 -58
  484. package/dist/collection/components/select-modal/select-modal.md.css +43 -274
  485. package/dist/collection/components/select-option/select-option.js +4 -8
  486. package/dist/collection/components/select-popover/select-popover.ios.css +125 -190
  487. package/dist/collection/components/select-popover/select-popover.js +9 -17
  488. package/dist/collection/components/select-popover/select-popover.md.css +48 -230
  489. package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
  490. package/dist/collection/components/skeleton-text/skeleton-text.js +5 -9
  491. package/dist/collection/components/spinner/{spinner.ionic.css → spinner.css} +10 -78
  492. package/dist/collection/components/spinner/spinner.js +6 -47
  493. package/dist/collection/components/split-pane/split-pane.ios.css +2 -20
  494. package/dist/collection/components/split-pane/split-pane.js +8 -15
  495. package/dist/collection/components/split-pane/split-pane.md.css +2 -20
  496. package/dist/collection/components/tab/tab.js +2 -6
  497. package/dist/collection/components/tab-bar/tab-bar.ios.css +43 -86
  498. package/dist/collection/components/tab-bar/tab-bar.js +15 -179
  499. package/dist/collection/components/tab-bar/tab-bar.md.css +43 -86
  500. package/dist/collection/components/tab-button/tab-button.ios.css +95 -171
  501. package/dist/collection/components/tab-button/tab-button.js +9 -54
  502. package/dist/collection/components/tab-button/tab-button.md.css +93 -137
  503. package/dist/collection/components/tabs/tabs.css +1 -7
  504. package/dist/collection/components/tabs/tabs.js +1 -4
  505. package/dist/collection/components/text/text.css +0 -6
  506. package/dist/collection/components/text/text.js +6 -7
  507. package/dist/collection/components/textarea/textarea.ios.css +158 -298
  508. package/dist/collection/components/textarea/textarea.js +24 -162
  509. package/dist/collection/components/textarea/textarea.md.css +159 -312
  510. package/dist/collection/components/thumbnail/thumbnail.css +0 -6
  511. package/dist/collection/components/thumbnail/thumbnail.js +2 -9
  512. package/dist/collection/components/title/title.ios.css +4 -32
  513. package/dist/collection/components/title/title.js +7 -13
  514. package/dist/collection/components/title/title.md.css +4 -39
  515. package/dist/collection/components/toast/animations/utils.js +1 -1
  516. package/dist/collection/components/toast/toast.ios.css +45 -84
  517. package/dist/collection/components/toast/toast.js +13 -76
  518. package/dist/collection/components/toast/toast.md.css +45 -84
  519. package/dist/collection/components/toggle/toggle.ios.css +131 -247
  520. package/dist/collection/components/toggle/toggle.js +18 -73
  521. package/dist/collection/components/toggle/toggle.md.css +131 -244
  522. package/dist/collection/components/toolbar/toolbar.ios.css +47 -90
  523. package/dist/collection/components/toolbar/toolbar.js +13 -218
  524. package/dist/collection/components/toolbar/toolbar.md.css +47 -90
  525. package/dist/collection/global/ionic-global.js +13 -241
  526. package/dist/collection/index.js +1 -1
  527. package/dist/collection/utils/focus-trap.js +2 -13
  528. package/dist/collection/utils/focus-visible.js +0 -22
  529. package/dist/collection/utils/forms/validity.js +0 -31
  530. package/dist/collection/utils/framework-delegate.js +1 -3
  531. package/dist/collection/utils/hardware-back-button.js +0 -15
  532. package/dist/collection/utils/helpers.js +3 -70
  533. package/dist/collection/utils/keyboard/keyboard-controller.js +1 -3
  534. package/dist/collection/utils/media.js +0 -1
  535. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  536. package/dist/collection/utils/menu-controller/animations/push.js +1 -2
  537. package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
  538. package/dist/collection/utils/overlay-control-label.js +11 -13
  539. package/dist/collection/utils/overlays.js +32 -295
  540. package/dist/collection/utils/platform.js +2 -2
  541. package/dist/collection/utils/test/playwright/drag-element.js +9 -32
  542. package/dist/collection/utils/test/playwright/generator.js +23 -48
  543. package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -14
  544. package/dist/collection/utils/test/playwright/page/utils/set-content.js +3 -26
  545. package/dist/collection/utils/theme.js +1 -25
  546. package/dist/collection/utils/transition/ios.transition.js +0 -1
  547. package/dist/docs.json +502 -10022
  548. package/dist/esm/{animation-B2qdQ_ou.js → animation-DLJpuoEz.js} +2 -2
  549. package/dist/esm/{app-globals-DZ-iIjxA.js → app-globals-DNgPBV1i.js} +1 -1
  550. package/dist/esm/{button-active-BmajAby6.js → button-active-BSpTQmS9.js} +2 -2
  551. package/dist/esm/{capacitor-CtQSWUU0.js → capacitor-CFERIeaU.js} +1 -1
  552. package/dist/{cjs/focus-visible-BIj-I3-C.js → esm/focus-visible-BmVRXR1y.js} +1 -27
  553. package/dist/esm/{format-2WlZcMvG.js → format-CAmvpAez.js} +1 -1
  554. package/dist/esm/{framework-delegate-DO2QXccA.js → framework-delegate-FnPGymXL.js} +2 -4
  555. package/dist/esm/{haptic-DFgKNCce.js → haptic-DzAMWJuk.js} +1 -1
  556. package/dist/esm/hardware-back-button-B93Gru0Y.js +115 -0
  557. package/dist/esm/{helpers-DfF5_wJc.js → helpers-HEqiOzXb.js} +5 -71
  558. package/dist/esm/{index-Di034G4O.js → index-0f4UTH6Z.js} +11 -11
  559. package/dist/esm/{index-BjaaZqVY.js → index-BRHzoo00.js} +3 -4
  560. package/dist/esm/{index-BIUWGRUl.js → index-B_dQk_WE.js} +4 -4
  561. package/dist/esm/{index-D2tu5BUg.js → index-BvabGprD.js} +2 -3
  562. package/dist/esm/{index-Mq5pCWmZ.js → index-DQSkZyOJ.js} +1 -1
  563. package/dist/esm/{index-KxK0gcRp.js → index-MEDq2S8l.js} +2 -2
  564. package/dist/esm/index-ZjP4CjeZ.js +7 -0
  565. package/dist/esm/{index-C0EQceqV.js → index-tcQvqkiX.js} +4 -41
  566. package/dist/esm/index.js +14 -13
  567. package/dist/esm/{input-shims-DvNNw70a.js → input-shims-D10mwcw1.js} +6 -7
  568. package/dist/esm/{input.utils-_LkBfBWt.js → input.utils-Y6NgW8bw.js} +3 -3
  569. package/dist/esm/ion-accordion_2.entry.js +29 -61
  570. package/dist/esm/ion-action-sheet.entry.js +28 -27
  571. package/dist/esm/ion-alert.entry.js +34 -32
  572. package/dist/esm/ion-app_8.entry.js +211 -461
  573. package/dist/esm/ion-avatar_3.entry.js +13 -125
  574. package/dist/esm/ion-back-button.entry.js +22 -31
  575. package/dist/esm/ion-backdrop.entry.js +7 -10
  576. package/dist/esm/ion-breadcrumb_2.entry.js +18 -54
  577. package/dist/esm/ion-button_2.entry.js +24 -61
  578. package/dist/esm/ion-card_5.entry.js +33 -55
  579. package/dist/esm/ion-checkbox.entry.js +17 -37
  580. package/dist/esm/ion-chip.entry.js +9 -50
  581. package/dist/esm/ion-col_3.entry.js +57 -56
  582. package/dist/esm/ion-datetime-button.entry.js +11 -21
  583. package/dist/esm/{ion-datetime_3.entry.js → ion-datetime.entry.js} +42 -759
  584. package/dist/esm/ion-fab_3.entry.js +28 -44
  585. package/dist/esm/ion-img.entry.js +6 -8
  586. package/dist/esm/ion-infinite-scroll_2.entry.js +16 -91
  587. package/dist/esm/ion-input-otp.entry.js +9 -74
  588. package/dist/esm/ion-input-password-toggle.entry.js +15 -53
  589. package/dist/esm/ion-input.entry.js +35 -125
  590. package/dist/esm/ion-item-option_3.entry.js +52 -467
  591. package/dist/esm/ion-item_8.entry.js +50 -121
  592. package/dist/esm/ion-loading.entry.js +22 -20
  593. package/dist/esm/ion-menu_3.entry.js +29 -47
  594. package/dist/esm/ion-modal.entry.js +118 -222
  595. package/dist/esm/ion-nav_2.entry.js +12 -128
  596. package/dist/esm/ion-picker-column-option.entry.js +9 -19
  597. package/dist/esm/ion-picker-column.entry.js +13 -19
  598. package/dist/esm/ion-picker.entry.js +6 -10
  599. package/dist/esm/ion-popover.entry.js +23 -21
  600. package/dist/esm/ion-progress-bar.entry.js +9 -27
  601. package/dist/esm/ion-radio_2.entry.js +17 -35
  602. package/dist/esm/ion-range.entry.js +13 -20
  603. package/dist/esm/ion-refresher_2.entry.js +21 -39
  604. package/dist/esm/ion-reorder_2.entry.js +14 -38
  605. package/dist/esm/ion-ripple-effect.entry.js +7 -15
  606. package/dist/esm/ion-route_4.entry.js +26 -13
  607. package/dist/esm/ion-searchbar.entry.js +25 -138
  608. package/dist/esm/ion-segment-content.entry.js +2 -2
  609. package/dist/esm/ion-segment-view.entry.js +3 -13
  610. package/dist/esm/ion-segment_2.entry.js +16 -23
  611. package/dist/esm/ion-select-modal.entry.js +26 -48
  612. package/dist/esm/ion-select_3.entry.js +109 -200
  613. package/dist/esm/ion-spinner.entry.js +8 -30
  614. package/dist/esm/ion-split-pane.entry.js +9 -13
  615. package/dist/esm/ion-tab-bar_2.entry.js +27 -149
  616. package/dist/esm/ion-tab_2.entry.js +7 -8
  617. package/dist/esm/ion-text.entry.js +7 -7
  618. package/dist/esm/ion-textarea.entry.js +23 -137
  619. package/dist/esm/ion-toast.entry.js +21 -44
  620. package/dist/esm/ion-toggle.entry.js +25 -82
  621. package/dist/esm/ionic-global-pMW1XhFZ.js +146 -0
  622. package/dist/esm/ionic.js +5 -5
  623. package/dist/esm/{ios.transition-CgScDbsb.js → ios.transition-ClFrsIrS.js} +5 -7
  624. package/dist/esm/{keyboard-CyyguLDw.js → keyboard-CUw4ekVy.js} +1 -1
  625. package/dist/esm/keyboard-controller-BaaVITYt.js +165 -0
  626. package/dist/esm/{keyboard-WJix-wcz.js → keyboard-ywgs5efA.js} +3 -4
  627. package/dist/esm/loader.js +5 -5
  628. package/dist/esm/{md.transition-DThqYazt.js → md.transition-D0msQmzI.js} +5 -6
  629. package/dist/esm/{notch-controller-MTblRxjD.js → notch-controller-DKDjU_O7.js} +2 -2
  630. package/dist/esm/{overlay-control-label-CODBQrPj.js → overlay-control-label-BSQPZ79H.js} +11 -13
  631. package/dist/esm/{overlays-tv6nLsmk.js → overlays-Cx65ihix.js} +40 -312
  632. package/dist/esm/{select-option-render-BlKZ2H83.js → select-option-render-B8nWZRnd.js} +2 -2
  633. package/dist/esm/{status-tap-CoPI1M2q.js → status-tap-Kan2W7sh.js} +3 -4
  634. package/dist/esm/{swipe-back-qmvTRnSq.js → swipe-back-DQ1q5MgD.js} +2 -3
  635. package/dist/esm/{theme-DaJxRxSQ.js → theme-DiVJyqlX.js} +1 -25
  636. package/dist/esm/validity-DJztqcrH.js +17 -0
  637. package/dist/html.html-data.json +146 -2713
  638. package/dist/ionic/index.esm.js +1 -1
  639. package/dist/ionic/ionic.esm.js +1 -1
  640. package/dist/ionic/p-0baa0557.entry.js +4 -0
  641. package/dist/ionic/p-0bb0c363.entry.js +4 -0
  642. package/dist/ionic/p-0be097d7.entry.js +4 -0
  643. package/dist/ionic/p-0e7de053.entry.js +4 -0
  644. package/dist/ionic/p-2967f939.entry.js +4 -0
  645. package/dist/ionic/p-306b2e91.entry.js +4 -0
  646. package/dist/ionic/p-341032b3.entry.js +4 -0
  647. package/dist/ionic/p-345e3384.entry.js +4 -0
  648. package/dist/ionic/p-34c8f2dc.entry.js +4 -0
  649. package/dist/ionic/p-3ce3a59d.entry.js +4 -0
  650. package/dist/ionic/p-426130ad.entry.js +4 -0
  651. package/dist/ionic/p-4cad6a3e.entry.js +4 -0
  652. package/dist/ionic/p-4e92a11f.entry.js +4 -0
  653. package/dist/ionic/p-5520a019.entry.js +4 -0
  654. package/dist/ionic/p-5599e1e1.entry.js +4 -0
  655. package/dist/ionic/p-63c71314.entry.js +4 -0
  656. package/dist/ionic/p-656e8181.entry.js +4 -0
  657. package/dist/ionic/p-694aa5fc.entry.js +4 -0
  658. package/dist/ionic/p-73d06afe.entry.js +4 -0
  659. package/dist/ionic/p-7cb5cf53.entry.js +4 -0
  660. package/dist/ionic/p-7d8a1978.entry.js +4 -0
  661. package/dist/ionic/p-80b44b3c.entry.js +4 -0
  662. package/dist/ionic/p-89c9c057.entry.js +4 -0
  663. package/dist/ionic/p-8c898f59.entry.js +4 -0
  664. package/dist/ionic/p-8d6cca7b.entry.js +4 -0
  665. package/dist/ionic/p-8f6862d1.entry.js +4 -0
  666. package/dist/ionic/p-907d4f18.entry.js +4 -0
  667. package/dist/ionic/p-9366f06d.entry.js +4 -0
  668. package/dist/ionic/p-99aac476.entry.js +4 -0
  669. package/dist/ionic/p-9a29ba8c.entry.js +4 -0
  670. package/dist/ionic/p-9eeaBrnk.js +4 -0
  671. package/dist/ionic/{p--sroV-k-.js → p-BDtODLZ4.js} +1 -1
  672. package/dist/ionic/p-BGqMS-oh.js +4 -0
  673. package/dist/ionic/p-BSQPZ79H.js +4 -0
  674. package/dist/ionic/p-BUFIpxKM.js +4 -0
  675. package/dist/ionic/p-BmVRXR1y.js +4 -0
  676. package/dist/ionic/p-BvabGprD.js +4 -0
  677. package/dist/ionic/{p-7k7Q1A38.js → p-C0eMdTCW.js} +1 -1
  678. package/dist/ionic/p-CFlfIb2g.js +4 -0
  679. package/dist/ionic/p-CGqbOURp.js +4 -0
  680. package/dist/ionic/p-CIGNaXM1.js +4 -0
  681. package/dist/ionic/{p-OkgYzj-7.js → p-CKvCXMs9.js} +1 -1
  682. package/dist/ionic/p-CtWGkNnJ.js +4 -0
  683. package/dist/ionic/p-Cx3IXROA.js +4 -0
  684. package/dist/ionic/{p-DQDmksdT.js → p-D13Eaw-8.js} +1 -1
  685. package/dist/ionic/p-D4uTWt4-.js +4 -0
  686. package/dist/ionic/p-D9iu80E_.js +4 -0
  687. package/dist/ionic/p-DC3RagnA.js +4 -0
  688. package/dist/ionic/p-DCOvXkOm.js +4 -0
  689. package/dist/ionic/p-DIuEbVLu.js +4 -0
  690. package/dist/ionic/p-DJztqcrH.js +4 -0
  691. package/dist/ionic/p-DSG2s2Eb.js +4 -0
  692. package/dist/ionic/p-DeSfrUWZ.js +4 -0
  693. package/dist/ionic/p-Dfbt-q2k.js +4 -0
  694. package/dist/ionic/p-DiVJyqlX.js +4 -0
  695. package/dist/ionic/p-DoJvtrbw.js +4 -0
  696. package/dist/ionic/p-DzTgLDb_.js +4 -0
  697. package/{components/p-DmVUl5t4.js → dist/ionic/p-VAemlbDS.js} +1 -1
  698. package/dist/ionic/{p-oUgyLDGL.js → p-Wk5HzclC.js} +1 -1
  699. package/dist/ionic/p-ZjP4CjeZ.js +4 -0
  700. package/dist/ionic/p-a1448991.entry.js +4 -0
  701. package/dist/ionic/p-a256aeb6.entry.js +4 -0
  702. package/dist/ionic/p-aeff523a.entry.js +4 -0
  703. package/dist/ionic/p-b758be3c.entry.js +4 -0
  704. package/dist/ionic/p-b7737b44.entry.js +4 -0
  705. package/dist/ionic/p-ba99d16b.entry.js +4 -0
  706. package/dist/ionic/p-c3563965.entry.js +4 -0
  707. package/dist/ionic/p-cdfe2531.entry.js +4 -0
  708. package/dist/ionic/p-cf1fb54f.entry.js +4 -0
  709. package/dist/ionic/p-d183a4ba.entry.js +4 -0
  710. package/dist/ionic/p-d3089de6.entry.js +4 -0
  711. package/dist/ionic/p-d4844d9e.entry.js +4 -0
  712. package/dist/ionic/p-dc46ac10.entry.js +4 -0
  713. package/dist/ionic/p-e3842b54.entry.js +4 -0
  714. package/dist/ionic/p-e56b1836.entry.js +4 -0
  715. package/dist/ionic/p-f09f9642.entry.js +4 -0
  716. package/dist/ionic/p-f44a99c8.entry.js +4 -0
  717. package/dist/ionic/p-f49558ca.entry.js +4 -0
  718. package/dist/ionic/p-f5b1f739.entry.js +4 -0
  719. package/dist/ionic/p-f88310b9.entry.js +4 -0
  720. package/dist/ionic/p-fd1438bf.entry.js +4 -0
  721. package/dist/ionic/p-fd4e56cd.entry.js +4 -0
  722. package/dist/ionic/p-mjKAFv89.js +4 -0
  723. package/dist/ionic/p-tcQvqkiX.js +5 -0
  724. package/dist/ionic/p-viFHDgRs.js +4 -0
  725. package/dist/ionic/p-xWb6fgfq.js +4 -0
  726. package/dist/types/components/accordion/accordion.d.ts +3 -6
  727. package/dist/types/components/accordion-group/accordion-group.d.ts +1 -12
  728. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
  729. package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
  730. package/dist/types/components/alert/alert-interface.d.ts +7 -3
  731. package/dist/types/components/alert/alert.d.ts +2 -3
  732. package/dist/types/components/app/app.d.ts +5 -4
  733. package/dist/types/components/avatar/avatar.d.ts +0 -32
  734. package/dist/types/components/back-button/back-button.d.ts +1 -2
  735. package/dist/types/components/backdrop/backdrop.d.ts +0 -4
  736. package/dist/types/components/badge/badge.d.ts +1 -34
  737. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -4
  738. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  739. package/dist/types/components/button/button.d.ts +8 -23
  740. package/dist/types/components/buttons/buttons.d.ts +1 -5
  741. package/dist/types/components/card/card.d.ts +1 -8
  742. package/dist/types/components/card-content/card-content.d.ts +1 -2
  743. package/dist/types/components/card-header/card-header.d.ts +2 -3
  744. package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
  745. package/dist/types/components/card-title/card-title.d.ts +1 -2
  746. package/dist/types/components/checkbox/checkbox.d.ts +4 -14
  747. package/dist/types/components/chip/chip.d.ts +1 -26
  748. package/dist/types/components/col/col.d.ts +5 -52
  749. package/dist/types/components/content/content.d.ts +0 -3
  750. package/dist/types/components/datetime/datetime.d.ts +1 -26
  751. package/dist/types/components/datetime/utils/data.d.ts +5 -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 -5
  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 +1 -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 +6 -32
  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 -2
  766. package/dist/types/components/item/item.d.ts +4 -11
  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 -3
  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 +12 -15
  784. package/dist/types/components/nav/nav-interface.d.ts +1 -10
  785. package/dist/types/components/nav/nav.d.ts +3 -27
  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 -4
  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 +1 -5
  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 +8 -4
  806. package/dist/types/components/row/row.d.ts +0 -4
  807. package/dist/types/components/searchbar/searchbar.d.ts +10 -52
  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 +14 -49
  811. package/dist/types/components/select-modal/select-modal.d.ts +0 -8
  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 +4 -53
  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 -15
  830. package/dist/types/components/toolbar/toolbar.d.ts +3 -43
  831. package/dist/types/components.d.ts +263 -2171
  832. package/dist/types/global/ionic-global.d.ts +2 -28
  833. package/dist/types/index.d.ts +1 -1
  834. package/dist/types/interface.d.ts +0 -4
  835. package/dist/types/utils/config.d.ts +2 -114
  836. package/dist/types/utils/focus-trap.d.ts +1 -1
  837. package/dist/types/utils/focus-visible.d.ts +0 -13
  838. package/dist/types/utils/forms/validity.d.ts +0 -7
  839. package/dist/types/utils/helpers.d.ts +0 -22
  840. package/dist/types/utils/overlay-control-label.d.ts +9 -11
  841. package/dist/types/utils/overlays-interface.d.ts +1 -31
  842. package/dist/types/utils/overlays.d.ts +12 -10
  843. package/dist/types/utils/test/playwright/drag-element.d.ts +3 -16
  844. package/dist/types/utils/test/playwright/generator.d.ts +2 -31
  845. package/dist/types/utils/theme.d.ts +0 -9
  846. package/hydrate/index.js +1373 -6187
  847. package/hydrate/index.mjs +1373 -6187
  848. package/package.json +41 -13
  849. package/components/ion-divider.d.ts +0 -11
  850. package/components/ion-divider.js +0 -4
  851. package/components/ion-gallery-item.d.ts +0 -11
  852. package/components/ion-gallery-item.js +0 -4
  853. package/components/ion-gallery.d.ts +0 -11
  854. package/components/ion-gallery.js +0 -4
  855. package/components/ion-picker-legacy-column.d.ts +0 -11
  856. package/components/ion-picker-legacy-column.js +0 -4
  857. package/components/ion-picker-legacy.d.ts +0 -11
  858. package/components/ion-picker-legacy.js +0 -4
  859. package/components/p-0RwSa3tV.js +0 -4
  860. package/components/p-4u9RNymb.js +0 -4
  861. package/components/p-B8xhFBOE.js +0 -4
  862. package/components/p-BAnNwWMA.js +0 -4
  863. package/components/p-BDqjX7Z_.js +0 -4
  864. package/components/p-BI03N_8J.js +0 -4
  865. package/components/p-BISCDmUD.js +0 -4
  866. package/components/p-BLlJA2Q9.js +0 -4
  867. package/components/p-BYSs-jZz.js +0 -4
  868. package/components/p-BYZR_5L4.js +0 -4
  869. package/components/p-B_zaqq5F.js +0 -4
  870. package/components/p-BaPtaYEC.js +0 -4
  871. package/components/p-BiG3Zevl.js +0 -4
  872. package/components/p-BjW8SOqw.js +0 -4
  873. package/components/p-BoWc8hp0.js +0 -4
  874. package/components/p-BqRIq3ti.js +0 -4
  875. package/components/p-BskJOMNV.js +0 -4
  876. package/components/p-C4q_m_U_.js +0 -4
  877. package/components/p-C9QYu-sR.js +0 -4
  878. package/components/p-CEbQglhY.js +0 -4
  879. package/components/p-CGwI_XL6.js +0 -4
  880. package/components/p-CIdlZzoM.js +0 -4
  881. package/components/p-CO9VfZyc.js +0 -4
  882. package/components/p-CODBQrPj.js +0 -4
  883. package/components/p-CWq1hA4y.js +0 -4
  884. package/components/p-CeL9Glto.js +0 -4
  885. package/components/p-Cjx0xPoU.js +0 -4
  886. package/components/p-Cl94E1nn.js +0 -4
  887. package/components/p-Cog60JgJ.js +0 -4
  888. package/components/p-CyGaZ-Qb.js +0 -4
  889. package/components/p-CyWeCU8e.js +0 -4
  890. package/components/p-CzFNvOq3.js +0 -4
  891. package/components/p-Czw29-II.js +0 -4
  892. package/components/p-D0Iqw6OZ.js +0 -4
  893. package/components/p-D1t981Ih.js +0 -4
  894. package/components/p-D4UIY4kz.js +0 -4
  895. package/components/p-D6un2jDV.js +0 -4
  896. package/components/p-D9583Eo8.js +0 -4
  897. package/components/p-DABI8XVx.js +0 -4
  898. package/components/p-DEZQwbtZ.js +0 -4
  899. package/components/p-DEnOtJ3m.js +0 -4
  900. package/components/p-DJw3WM2A.js +0 -4
  901. package/components/p-DRnK3A-V.js +0 -4
  902. package/components/p-DS1w_1X1.js +0 -4
  903. package/components/p-DaJxRxSQ.js +0 -4
  904. package/components/p-Daj5LWIm.js +0 -4
  905. package/components/p-DcVqGRkT.js +0 -4
  906. package/components/p-Dg8OSVcP.js +0 -4
  907. package/components/p-Dght1fh7.js +0 -4
  908. package/components/p-Dhi5xtNS.js +0 -4
  909. package/components/p-Dn77l_LX.js +0 -4
  910. package/components/p-GpxJMpJu.js +0 -4
  911. package/components/p-I0lsm6wZ.js +0 -4
  912. package/components/p-TaMIMwf5.js +0 -4
  913. package/components/p-ZWbVyMi6.js +0 -4
  914. package/components/p-_rgGxkzx.js +0 -4
  915. package/components/p-fIOYmaqA.js +0 -4
  916. package/components/p-vXpMhGrs.js +0 -4
  917. package/css/ionic/bundle.ionic.css +0 -1
  918. package/css/ionic/bundle.ionic.css.map +0 -1
  919. package/css/ionic/core.ionic.css +0 -1
  920. package/css/ionic/core.ionic.css.map +0 -1
  921. package/css/ionic/global.bundle.ionic.css +0 -1
  922. package/css/ionic/global.bundle.ionic.css.map +0 -1
  923. package/css/ionic/ionic-swiper.ionic.css +0 -1
  924. package/css/ionic/ionic-swiper.ionic.css.map +0 -1
  925. package/css/ionic/link.ionic.css +0 -1
  926. package/css/ionic/link.ionic.css.map +0 -1
  927. package/css/ionic/structure.ionic.css +0 -1
  928. package/css/ionic/structure.ionic.css.map +0 -1
  929. package/css/ionic/typography.ionic.css +0 -1
  930. package/css/ionic/typography.ionic.css.map +0 -1
  931. package/css/ionic/utils.bundle.ionic.css +0 -1
  932. package/css/ionic/utils.bundle.ionic.css.map +0 -1
  933. package/dist/cjs/caret-down-vtVgfXIs.js +0 -8
  934. package/dist/cjs/caret-left-CxZXLRv5.js +0 -8
  935. package/dist/cjs/caret-right-CRCgv98E.js +0 -8
  936. package/dist/cjs/ion-divider.cjs.entry.js +0 -51
  937. package/dist/cjs/ion-gallery-item.cjs.entry.js +0 -59
  938. package/dist/cjs/ion-gallery.cjs.entry.js +0 -607
  939. package/dist/cjs/ionic-global-QoUqobrQ.js +0 -519
  940. package/dist/cjs/list-a-7GSA6K.js +0 -8
  941. package/dist/cjs/scroll-hide-controller-G9HOmmhN.js +0 -345
  942. package/dist/cjs/validity-QmuwEptc.js +0 -51
  943. package/dist/cjs/x-BTF99yFH.js +0 -8
  944. package/dist/collection/components/accordion/accordion.ionic.css +0 -201
  945. package/dist/collection/components/accordion-group/accordion-group.ionic.css +0 -93
  946. package/dist/collection/components/action-sheet/action-sheet.ionic.css +0 -491
  947. package/dist/collection/components/alert/alert.ionic.css +0 -784
  948. package/dist/collection/components/avatar/avatar.ionic.css +0 -391
  949. package/dist/collection/components/backdrop/backdrop.ionic.css +0 -109
  950. package/dist/collection/components/badge/badge.ionic.css +0 -275
  951. package/dist/collection/components/button/button.ionic.css +0 -646
  952. package/dist/collection/components/buttons/buttons.ionic.css +0 -97
  953. package/dist/collection/components/card/card.ionic.css +0 -144
  954. package/dist/collection/components/card-content/card-content.ionic.css +0 -89
  955. package/dist/collection/components/card-header/card-header.ionic.css +0 -85
  956. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +0 -144
  957. package/dist/collection/components/checkbox/checkbox.ionic.css +0 -543
  958. package/dist/collection/components/chip/chip.ionic.css +0 -217
  959. package/dist/collection/components/datetime/datetime.ionic.css +0 -703
  960. package/dist/collection/components/divider/divider.ionic.css +0 -148
  961. package/dist/collection/components/divider/divider.ios.css +0 -87
  962. package/dist/collection/components/divider/divider.js +0 -94
  963. package/dist/collection/components/divider/divider.md.css +0 -87
  964. package/dist/collection/components/footer/footer-interface.js +0 -1
  965. package/dist/collection/components/gallery/gallery-constants.js +0 -12
  966. package/dist/collection/components/gallery/gallery-interface.js +0 -1
  967. package/dist/collection/components/gallery/gallery.css +0 -15
  968. package/dist/collection/components/gallery/gallery.js +0 -679
  969. package/dist/collection/components/gallery/test/utils.js +0 -100
  970. package/dist/collection/components/gallery-item/gallery-item.css +0 -49
  971. package/dist/collection/components/gallery-item/gallery-item.js +0 -99
  972. package/dist/collection/components/header/header-interface.js +0 -1
  973. package/dist/collection/components/header/header.ionic.css +0 -250
  974. package/dist/collection/components/input/input.ionic.css +0 -889
  975. package/dist/collection/components/input-otp/input-otp.ionic.css +0 -371
  976. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +0 -78
  977. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +0 -61
  978. package/dist/collection/components/item/item.ionic.css +0 -496
  979. package/dist/collection/components/item-option/item-option.ionic.css +0 -278
  980. package/dist/collection/components/item-options/item-options.ionic.css +0 -221
  981. package/dist/collection/components/item-sliding/item-sliding.ionic.css +0 -211
  982. package/dist/collection/components/list/list.ionic.css +0 -212
  983. package/dist/collection/components/list-header/list-header.ionic.css +0 -190
  984. package/dist/collection/components/menu-button/menu-button.ionic.css +0 -236
  985. package/dist/collection/components/modal/animations/ionic.enter.js +0 -40
  986. package/dist/collection/components/modal/animations/ionic.leave.js +0 -28
  987. package/dist/collection/components/modal/modal.ionic.css +0 -255
  988. package/dist/collection/components/picker-legacy/animations/ios.enter.js +0 -27
  989. package/dist/collection/components/picker-legacy/animations/ios.leave.js +0 -23
  990. package/dist/collection/components/picker-legacy/picker-interface.js +0 -1
  991. package/dist/collection/components/picker-legacy/picker.ios.css +0 -312
  992. package/dist/collection/components/picker-legacy/picker.js +0 -891
  993. package/dist/collection/components/picker-legacy/picker.md.css +0 -299
  994. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -243
  995. package/dist/collection/components/picker-legacy-column/picker-column.js +0 -422
  996. package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -234
  997. package/dist/collection/components/picker-legacy-column/test/test.utils.js +0 -43
  998. package/dist/collection/components/popover/popover.ionic.css +0 -290
  999. package/dist/collection/components/progress-bar/progress-bar.ionic.css +0 -287
  1000. package/dist/collection/components/radio/radio.ionic.css +0 -422
  1001. package/dist/collection/components/radio-group/radio-group.ionic.css +0 -119
  1002. package/dist/collection/components/range/range.ionic.css +0 -567
  1003. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +0 -215
  1004. package/dist/collection/components/searchbar/searchbar.ionic.css +0 -626
  1005. package/dist/collection/components/segment/segment.ionic.css +0 -115
  1006. package/dist/collection/components/segment-button/segment-button.ionic.css +0 -353
  1007. package/dist/collection/components/select/select.ionic.css +0 -810
  1008. package/dist/collection/components/select-modal/select-modal.ionic.css +0 -254
  1009. package/dist/collection/components/select-popover/select-popover.ionic.css +0 -252
  1010. package/dist/collection/components/spinner/spinner.native.css +0 -199
  1011. package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -249
  1012. package/dist/collection/components/tab-button/tab-button.ionic.css +0 -374
  1013. package/dist/collection/components/textarea/textarea.ionic.css +0 -898
  1014. package/dist/collection/components/title/title.ionic.css +0 -127
  1015. package/dist/collection/components/toast/toast.ionic.css +0 -394
  1016. package/dist/collection/components/toggle/toggle.ionic.css +0 -508
  1017. package/dist/collection/components/toolbar/test/image.svg +0 -1
  1018. package/dist/collection/components/toolbar/toolbar.ionic.css +0 -249
  1019. package/dist/collection/utils/css-value-validation.js +0 -39
  1020. package/dist/collection/utils/scroll-hide-controller.js +0 -178
  1021. package/dist/esm/caret-down-D1t981Ih.js +0 -6
  1022. package/dist/esm/caret-left-fIOYmaqA.js +0 -6
  1023. package/dist/esm/caret-right-BYSs-jZz.js +0 -6
  1024. package/dist/esm/ion-divider.entry.js +0 -49
  1025. package/dist/esm/ion-gallery-item.entry.js +0 -57
  1026. package/dist/esm/ion-gallery.entry.js +0 -605
  1027. package/dist/esm/ionic-global-BpkTponr.js +0 -508
  1028. package/dist/esm/list-Dhi5xtNS.js +0 -6
  1029. package/dist/esm/scroll-hide-controller-CUNW7EpD.js +0 -342
  1030. package/dist/esm/validity-BjW8SOqw.js +0 -48
  1031. package/dist/esm/x-BDqjX7Z_.js +0 -6
  1032. package/dist/ionic/p-05ce9821.entry.js +0 -4
  1033. package/dist/ionic/p-07bd8446.entry.js +0 -4
  1034. package/dist/ionic/p-085b8cdf.entry.js +0 -4
  1035. package/dist/ionic/p-0ef6bfc4.entry.js +0 -4
  1036. package/dist/ionic/p-103e1d9f.entry.js +0 -4
  1037. package/dist/ionic/p-18bc4f2d.entry.js +0 -4
  1038. package/dist/ionic/p-1b6e3914.entry.js +0 -4
  1039. package/dist/ionic/p-248265c2.entry.js +0 -4
  1040. package/dist/ionic/p-25b51635.entry.js +0 -4
  1041. package/dist/ionic/p-2740db6e.entry.js +0 -4
  1042. package/dist/ionic/p-274a829d.entry.js +0 -4
  1043. package/dist/ionic/p-2a1abbb1.entry.js +0 -4
  1044. package/dist/ionic/p-3b4c5cb5.entry.js +0 -4
  1045. package/dist/ionic/p-3bc5b5e9.entry.js +0 -4
  1046. package/dist/ionic/p-3cfb4ff2.entry.js +0 -4
  1047. package/dist/ionic/p-41afaf15.entry.js +0 -4
  1048. package/dist/ionic/p-43b00c5b.entry.js +0 -4
  1049. package/dist/ionic/p-507dbb1c.entry.js +0 -4
  1050. package/dist/ionic/p-56224b93.entry.js +0 -4
  1051. package/dist/ionic/p-5732396e.entry.js +0 -4
  1052. package/dist/ionic/p-58d8877d.entry.js +0 -4
  1053. package/dist/ionic/p-5d079dc1.entry.js +0 -4
  1054. package/dist/ionic/p-5e9665dd.entry.js +0 -4
  1055. package/dist/ionic/p-5fee5cc1.entry.js +0 -4
  1056. package/dist/ionic/p-602cf876.entry.js +0 -4
  1057. package/dist/ionic/p-64734604.entry.js +0 -4
  1058. package/dist/ionic/p-678ee14a.entry.js +0 -4
  1059. package/dist/ionic/p-68ea8ed1.entry.js +0 -4
  1060. package/dist/ionic/p-69feeff9.entry.js +0 -4
  1061. package/dist/ionic/p-6e1ec775.entry.js +0 -4
  1062. package/dist/ionic/p-745d6b2b.entry.js +0 -4
  1063. package/dist/ionic/p-83acfa2d.entry.js +0 -4
  1064. package/dist/ionic/p-849b1759.entry.js +0 -4
  1065. package/dist/ionic/p-86f040e0.entry.js +0 -4
  1066. package/dist/ionic/p-89fedfda.entry.js +0 -4
  1067. package/dist/ionic/p-8cb23f27.entry.js +0 -4
  1068. package/dist/ionic/p-8d5fd199.entry.js +0 -4
  1069. package/dist/ionic/p-BDSH5ckF.js +0 -4
  1070. package/dist/ionic/p-BDqjX7Z_.js +0 -4
  1071. package/dist/ionic/p-BFy_BK46.js +0 -4
  1072. package/dist/ionic/p-BYSs-jZz.js +0 -4
  1073. package/dist/ionic/p-BjW8SOqw.js +0 -4
  1074. package/dist/ionic/p-Bq8S4vhI.js +0 -4
  1075. package/dist/ionic/p-C0EQceqV.js +0 -5
  1076. package/dist/ionic/p-C1I_d964.js +0 -4
  1077. package/dist/ionic/p-CB91Gr9M.js +0 -4
  1078. package/dist/ionic/p-CEkwLb3L.js +0 -4
  1079. package/dist/ionic/p-CJsJQPQD.js +0 -4
  1080. package/dist/ionic/p-CODBQrPj.js +0 -4
  1081. package/dist/ionic/p-Ch7MBNn_.js +0 -4
  1082. package/dist/ionic/p-CnAWnbNK.js +0 -4
  1083. package/dist/ionic/p-D1t981Ih.js +0 -4
  1084. package/dist/ionic/p-D2tu5BUg.js +0 -4
  1085. package/dist/ionic/p-D4MT1z4_.js +0 -4
  1086. package/dist/ionic/p-D4veLKCq.js +0 -4
  1087. package/dist/ionic/p-DF7ubVci.js +0 -4
  1088. package/dist/ionic/p-DMaSfupH.js +0 -4
  1089. package/dist/ionic/p-DTsDGZPd.js +0 -4
  1090. package/dist/ionic/p-DaJxRxSQ.js +0 -4
  1091. package/dist/ionic/p-DdCaKRle.js +0 -4
  1092. package/dist/ionic/p-Dhi5xtNS.js +0 -4
  1093. package/dist/ionic/p-Dy243NXW.js +0 -4
  1094. package/dist/ionic/p-YIsE5bNG.js +0 -4
  1095. package/dist/ionic/p-b97778f5.entry.js +0 -4
  1096. package/dist/ionic/p-be9db7e8.entry.js +0 -4
  1097. package/dist/ionic/p-c04429f2.entry.js +0 -4
  1098. package/dist/ionic/p-c25a2a9b.entry.js +0 -4
  1099. package/dist/ionic/p-c76d57fb.entry.js +0 -4
  1100. package/dist/ionic/p-ca3a07b5.entry.js +0 -4
  1101. package/dist/ionic/p-ced3cda1.entry.js +0 -4
  1102. package/dist/ionic/p-cf22e991.entry.js +0 -4
  1103. package/dist/ionic/p-d0c1d21d.entry.js +0 -4
  1104. package/dist/ionic/p-d0d42da6.entry.js +0 -4
  1105. package/dist/ionic/p-d272ff4f.entry.js +0 -4
  1106. package/dist/ionic/p-d33dfc12.entry.js +0 -4
  1107. package/dist/ionic/p-d34bfb61.entry.js +0 -4
  1108. package/dist/ionic/p-ddde8df3.entry.js +0 -4
  1109. package/dist/ionic/p-df642ef5.entry.js +0 -4
  1110. package/dist/ionic/p-e04d63e1.entry.js +0 -4
  1111. package/dist/ionic/p-f8001f8f.entry.js +0 -4
  1112. package/dist/ionic/p-fIOYmaqA.js +0 -4
  1113. package/dist/ionic/p-fc6d26ff.entry.js +0 -4
  1114. package/dist/ionic/p-im8OkZlj.js +0 -4
  1115. package/dist/ionic/p-lMb_45ax.js +0 -4
  1116. package/dist/ionic/p-vXpMhGrs.js +0 -4
  1117. package/dist/types/components/divider/divider.d.ts +0 -20
  1118. package/dist/types/components/footer/footer-interface.d.ts +0 -1
  1119. package/dist/types/components/gallery/gallery-constants.d.ts +0 -9
  1120. package/dist/types/components/gallery/gallery-interface.d.ts +0 -10
  1121. package/dist/types/components/gallery/gallery.d.ts +0 -218
  1122. package/dist/types/components/gallery/test/utils.d.ts +0 -3
  1123. package/dist/types/components/gallery-item/gallery-item.d.ts +0 -33
  1124. package/dist/types/components/header/header-interface.d.ts +0 -1
  1125. package/dist/types/components/modal/animations/ionic.enter.d.ts +0 -6
  1126. package/dist/types/components/modal/animations/ionic.leave.d.ts +0 -6
  1127. package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +0 -5
  1128. package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +0 -5
  1129. package/dist/types/components/picker-legacy/picker-interface.d.ts +0 -52
  1130. package/dist/types/components/picker-legacy/picker.d.ts +0 -159
  1131. package/dist/types/components/picker-legacy-column/picker-column.d.ts +0 -46
  1132. package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +0 -9
  1133. package/dist/types/utils/css-value-validation.d.ts +0 -21
  1134. package/dist/types/utils/scroll-hide-controller.d.ts +0 -56
  1135. /package/dist/collection/components/{refresher-content/refresher-content.css → input-password-toggle/input-password-toggle.css} +0 -0
@@ -6,7 +6,7 @@ import { focusFirstDescendant, focusLastDescendant, focusableQueryString } from
6
6
  import { shouldUseCloseWatcher } from "./hardware-back-button";
7
7
  import { printIonError, printIonWarning } from "./logging/index";
8
8
  import { config } from "../global/config";
9
- import { getIonMode, getIonTheme } from "../global/ionic-global";
9
+ import { getIonMode } from "../global/ionic-global";
10
10
  import { CoreDelegate } from "./framework-delegate";
11
11
  import { BACKDROP_NO_SCROLL } from "./gesture/gesture-controller";
12
12
  import { OVERLAY_BACK_BUTTON_PRIORITY } from "./hardware-back-button";
@@ -14,115 +14,8 @@ import { addEventListener, componentOnReady, focusVisibleElement, getElementRoot
14
14
  let lastOverlayIndex = 0;
15
15
  let lastId = 0;
16
16
  export const activeAnimations = new WeakMap();
17
- const OVERLAY_FOCUS_TRAP_SELECTOR = 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-picker-legacy,ion-popover';
18
17
  /**
19
- * The focus trap is generic and knows nothing about which components are
20
- * inside an overlay. Components mark their elements with these `data-*`
21
- * attributes, which the trap reads, to control how Tab moves through them.
22
- * This keeps private component class names (e.g. `.modal-handle`,
23
- * `.action-sheet-button`) out of the trap, so changing a component does
24
- * not silently break Tab order.
25
- *
26
- * - `data-focus-ignore`: skip this element as a tab stop.
27
- * - `data-focus-order`: explicit numeric placement in the tab sequence.
28
- * - `data-roving-focus`: a container whose focusable descendants share a
29
- * single tab stop via a roving tabindex.
30
- */
31
- const FOCUS_IGNORE_SELECTOR = '[data-focus-ignore]';
32
- const FOCUS_ORDER_SELECTOR = '[data-focus-order]';
33
- const ROVING_FOCUS_SELECTOR = '[data-roving-focus]';
34
- /**
35
- * Returns the roving-focus group an element belongs to, or `null`.
36
- * A member is a descendant of a `[data-roving-focus]` container. The
37
- * container itself is not a member. Members share a single tab stop.
38
- */
39
- const getRovingFocusGroup = (el) => {
40
- const group = el.closest(ROVING_FOCUS_SELECTOR);
41
- return group !== null && group !== el ? group : null;
42
- };
43
- /**
44
- * Whether an element participates in a roving-focus group.
45
- */
46
- const isRovingFocusItem = (el) => getRovingFocusGroup(el) !== null;
47
- /**
48
- * Returns the currently focused element for keyboard focus checks.
49
- *
50
- * Starts from `document.activeElement` (non-shadow / light DOM focus).
51
- * If focus is inside one or more open shadow roots
52
- * (e.g. native control inside `ion-radio`), walks through nested
53
- * `shadowRoot.activeElement` values until the innermost focused node is reached.
54
- */
55
- const getActiveElement = (ownerDoc) => {
56
- var _a;
57
- let active = ownerDoc.activeElement;
58
- if (!active) {
59
- return null;
60
- }
61
- while ((_a = active.shadowRoot) === null || _a === void 0 ? void 0 : _a.activeElement) {
62
- active = active.shadowRoot.activeElement;
63
- }
64
- return active;
65
- };
66
- /**
67
- * Walks from a focused node (possibly deep inside shadow roots) up to
68
- * the nearest roving-focus host (e.g. `ion-radio` inside an
69
- * `ion-radio-group`, or an action sheet `<button role="radio">`).
70
- */
71
- const getRovingFocusHost = (active) => {
72
- let n = active;
73
- while (n) {
74
- if (isRovingFocusItem(n)) {
75
- return n;
76
- }
77
- const root = n.getRootNode();
78
- if (root instanceof ShadowRoot && root.host instanceof HTMLElement) {
79
- n = root.host;
80
- }
81
- else {
82
- return null;
83
- }
84
- }
85
- return null;
86
- };
87
- /**
88
- * Reorders focusables for components that declare an explicit tab order
89
- * via `data-focus-order`. Elements without the attribute keep their
90
- * visual order and are visited first. Elements with it are appended
91
- * afterwards, sorted by ascending numeric value.
92
- *
93
- * Example (sheet modal): the options have no order and are visited
94
- * first in visual order, then the drag handle (`data-focus-order="1"`),
95
- * then the header Cancel button (`data-focus-order="2"`).
96
- */
97
- const applyFocusOrder = (elements) => {
98
- const sortByVisualPosition = (els) => [...els].sort((a, b) => {
99
- const ra = a.getBoundingClientRect();
100
- const rb = b.getBoundingClientRect();
101
- const topDiff = ra.top - rb.top;
102
- if (Math.abs(topDiff) > 1) {
103
- return topDiff;
104
- }
105
- return ra.left - rb.left;
106
- });
107
- const unordered = elements.filter((el) => !el.matches(FOCUS_ORDER_SELECTOR));
108
- const ordered = elements
109
- .filter((el) => el.matches(FOCUS_ORDER_SELECTOR))
110
- .sort((a, b) => Number(a.getAttribute('data-focus-order')) - Number(b.getAttribute('data-focus-order')));
111
- return [...sortByVisualPosition(unordered), ...ordered];
112
- };
113
- /**
114
- * Roving-focus members use a tabindex pattern where only one member is
115
- * tabbable (`tabIndex="0"`) while the others are not (`tabIndex="-1"`).
116
- * This returns the index of the current tabbable member.
117
- */
118
- const getTabbableRovingFocusIndex = (elements, overlay) => {
119
- return elements.findIndex((el) => {
120
- return overlay.contains(el) && isRovingFocusItem(el) && el.tabIndex >= 0;
121
- });
122
- };
123
- /**
124
- * Determines if the overlay's backdrop is always blocking
125
- * (no background interaction).
18
+ * Determines if the overlay's backdrop is always blocking (no background interaction).
126
19
  * Returns false if showBackdrop=false or backdropBreakpoint > 0.
127
20
  */
128
21
  const isBackdropAlwaysBlocking = (el) => {
@@ -146,10 +39,6 @@ export const alertController = /*@__PURE__*/ createController('ion-alert');
146
39
  export const actionSheetController = /*@__PURE__*/ createController('ion-action-sheet');
147
40
  export const loadingController = /*@__PURE__*/ createController('ion-loading');
148
41
  export const modalController = /*@__PURE__*/ createController('ion-modal');
149
- /**
150
- * @deprecated Use the inline ion-picker component instead.
151
- */
152
- export const pickerController = /*@__PURE__*/ createController('ion-picker-legacy');
153
42
  export const popoverController = /*@__PURE__*/ createController('ion-popover');
154
43
  export const toastController = /*@__PURE__*/ createController('ion-toast');
155
44
  /**
@@ -243,7 +132,7 @@ const focusElementInOverlay = (hostToFocus, overlay) => {
243
132
  * Should NOT include: Toast
244
133
  */
245
134
  const trapKeyboardFocus = (ev, doc) => {
246
- const lastOverlay = getPresentedOverlay(doc, OVERLAY_FOCUS_TRAP_SELECTOR);
135
+ const lastOverlay = getPresentedOverlay(doc, 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-popover');
247
136
  const target = ev.target;
248
137
  /**
249
138
  * If no active overlay, ignore this event.
@@ -426,176 +315,6 @@ const connectListeners = (doc) => {
426
315
  doc.addEventListener('focus', (ev) => {
427
316
  trapKeyboardFocus(ev, doc);
428
317
  }, true);
429
- /**
430
- * Remember which roving-focus member last received focus
431
- * (arrows, click, or Tab). A roving group keeps `tabIndex=0` on a
432
- * single member (e.g. the checked/first radio), so the Tab trap
433
- * uses this when wrapping back into the group or focusing its slot.
434
- */
435
- doc.addEventListener('focusin', (ev) => {
436
- const lastOverlay = getPresentedOverlay(doc, OVERLAY_FOCUS_TRAP_SELECTOR);
437
- if (!lastOverlay || lastOverlay.classList.contains(FOCUS_TRAP_DISABLE_CLASS)) {
438
- return;
439
- }
440
- const target = ev.target;
441
- if (!(target instanceof HTMLElement)) {
442
- return;
443
- }
444
- const rovingHost = getRovingFocusHost(target);
445
- if (rovingHost && lastOverlay.contains(rovingHost)) {
446
- lastOverlay.trapLastRovingFocus = rovingHost;
447
- }
448
- }, true);
449
- // Listen for keydown events to intercept Tab navigation.
450
- // This is needed for Safari and Firefox which may skip focusable
451
- // elements or allow focus to escape the overlay.
452
- // It also ensures proper focus delegation for shadow DOM elements
453
- // like ion-textarea.
454
- doc.addEventListener('keydown', (ev) => {
455
- var _a, _b, _c;
456
- if (ev.key !== 'Tab' && ev.key !== 'Alt+Tab')
457
- return;
458
- const lastOverlay = getPresentedOverlay(doc, OVERLAY_FOCUS_TRAP_SELECTOR);
459
- if (!lastOverlay || lastOverlay.classList.contains(FOCUS_TRAP_DISABLE_CLASS))
460
- return;
461
- const activeElement = getActiveElement(doc);
462
- if (activeElement === lastOverlay) {
463
- ev.preventDefault();
464
- focusFirstDescendant(lastOverlay);
465
- return;
466
- }
467
- // Check if activeElement is inside the overlay (including shadow DOM)
468
- const isInsideOverlay = activeElement
469
- ? lastOverlay.contains(activeElement) ||
470
- (activeElement.getRootNode() instanceof ShadowRoot &&
471
- lastOverlay.contains(activeElement.getRootNode().host)) ||
472
- ((_b = (_a = lastOverlay.shadowRoot) === null || _a === void 0 ? void 0 : _a.contains(activeElement)) !== null && _b !== void 0 ? _b : false)
473
- : false;
474
- if (!isInsideOverlay)
475
- return;
476
- // Get all focusable elements from both light and shadow DOM
477
- let allFocusable = [
478
- ...lastOverlay.querySelectorAll(focusableQueryString),
479
- ...(((_c = lastOverlay.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelectorAll(focusableQueryString)) || []),
480
- ];
481
- /**
482
- * Some elements match `focusableQueryString` but are not
483
- * intended tab stops (e.g. the `ion-item` wrappers a select
484
- * modal renders around its options). Components opt these out
485
- * with `data-focus-ignore` so Tab can move between the real
486
- * controls.
487
- */
488
- allFocusable = allFocusable.filter((el) => !el.matches(FOCUS_IGNORE_SELECTOR));
489
- /**
490
- * A roving-focus group is a single tab stop: only its currently
491
- * tabbable member (`tabIndex >= 0`) participates. Other
492
- * focusables inside the group are not independent tab stops —
493
- * this includes inactive members and focusable wrappers such as
494
- * the `ion-item` that carries `ion-focusable` on behalf of a
495
- * radio. Drop them so Tab moves between the group and the
496
- * surrounding controls (e.g. the handle), not into the wrappers.
497
- */
498
- allFocusable = allFocusable.filter((el) => !isRovingFocusItem(el) || el.tabIndex >= 0);
499
- /**
500
- * When a component declares an explicit tab order via
501
- * `data-focus-order` (e.g. a sheet modal's handle and Cancel
502
- * button), reorder accordingly. Overlays that declare no order
503
- * keep their DOM order.
504
- */
505
- if (allFocusable.some((el) => el.matches(FOCUS_ORDER_SELECTOR))) {
506
- allFocusable = applyFocusOrder(allFocusable);
507
- }
508
- if (allFocusable.length === 0) {
509
- ev.preventDefault();
510
- return;
511
- }
512
- // Find current element's index (accounting for shadow DOM)
513
- let currentIndex = activeElement
514
- ? allFocusable.findIndex((el) => {
515
- var _a;
516
- if (el === activeElement)
517
- return true;
518
- if ((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.contains(activeElement))
519
- return true;
520
- const rootNode = activeElement.getRootNode();
521
- return rootNode instanceof ShadowRoot && rootNode.host === el;
522
- })
523
- : -1;
524
- /**
525
- * A roving-focus group keeps `tabIndex=0` on a single member
526
- * while the others are `-1`. Arrow keys can move focus onto a
527
- * `tabIndex=-1` member, which `focusableQueryString` excludes,
528
- * so `findIndex` yields -1 and Tab would wrap to
529
- * `allFocusable[0]`. Treat focus on any group member as the
530
- * group's tabbable slot so Tab goes to the next control (e.g.
531
- * handle → Cancel), not back to the first member.
532
- */
533
- if (currentIndex < 0 && activeElement) {
534
- const rovingHost = getRovingFocusHost(activeElement);
535
- if (rovingHost && lastOverlay.contains(rovingHost)) {
536
- const directIndex = allFocusable.indexOf(rovingHost);
537
- if (directIndex >= 0) {
538
- currentIndex = directIndex;
539
- }
540
- else {
541
- const tabbableIndex = getTabbableRovingFocusIndex(allFocusable, lastOverlay);
542
- if (tabbableIndex >= 0) {
543
- currentIndex = tabbableIndex;
544
- }
545
- }
546
- }
547
- }
548
- ev.preventDefault();
549
- // Helper to focus an element, handling shadow DOM properly
550
- const focusElement = (element) => {
551
- const shadowRoot = element.shadowRoot;
552
- if (shadowRoot) {
553
- const innerFocusable = shadowRoot.querySelector(focusableQueryString);
554
- if (innerFocusable && typeof element.setFocus !== 'function') {
555
- focusVisibleElement(innerFocusable);
556
- return;
557
- }
558
- }
559
- focusVisibleElement(element);
560
- };
561
- let nextIndex;
562
- if (ev.shiftKey) {
563
- // Shift+Tab: previous element, wrap to last if at first
564
- if (currentIndex <= 0) {
565
- nextIndex = allFocusable.length - 1;
566
- }
567
- else {
568
- nextIndex = currentIndex - 1;
569
- }
570
- }
571
- else {
572
- // Tab: next element, wrap to first if at last
573
- if (currentIndex < 0 || currentIndex >= allFocusable.length - 1) {
574
- nextIndex = 0;
575
- }
576
- else {
577
- nextIndex = currentIndex + 1;
578
- }
579
- }
580
- const nextEl = allFocusable[nextIndex];
581
- const overlayTrap = lastOverlay;
582
- const tabbableRovingIndex = getTabbableRovingFocusIndex(allFocusable, lastOverlay);
583
- /**
584
- * The trap list only includes one tabbable member of a roving
585
- * group (`tabIndex >= 0`), usually the checked/first radio.
586
- * `focusin` tracks the real last-focused member. Use it whenever
587
- * Tab would focus that slot (wrap from Cancel, Shift+Tab from
588
- * handle, etc.).
589
- */
590
- let focusTarget = nextEl;
591
- if (tabbableRovingIndex >= 0 && nextIndex === tabbableRovingIndex) {
592
- const saved = overlayTrap.trapLastRovingFocus;
593
- if ((saved === null || saved === void 0 ? void 0 : saved.isConnected) && lastOverlay.contains(saved) && saved !== nextEl) {
594
- focusTarget = saved;
595
- }
596
- }
597
- focusElement(focusTarget);
598
- }, true);
599
318
  // handle back-button click
600
319
  doc.addEventListener('ionBackButton', (ev) => {
601
320
  const lastOverlay = getPresentedOverlay(doc);
@@ -647,7 +366,7 @@ export const dismissOverlay = (doc, data, role, overlayTag, id) => {
647
366
  */
648
367
  export const getOverlays = (doc, selector) => {
649
368
  if (selector === undefined) {
650
- selector = 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-picker-legacy,ion-popover,ion-toast';
369
+ selector = 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-popover,ion-toast';
651
370
  }
652
371
  return Array.from(doc.querySelectorAll(selector)).filter((c) => c.overlayIndex > 0);
653
372
  };
@@ -709,7 +428,30 @@ export const setRootAriaHidden = (hidden = false) => {
709
428
  viewContainer.removeAttribute('aria-hidden');
710
429
  }
711
430
  };
712
- export const present = async (overlay, name, iosEnterAnimation, mdEnterAnimation, ionicEnterAnimation, opts) => {
431
+ /**
432
+ * Cleans up root `aria-hidden` and `backdrop-no-scroll` when
433
+ * an overlay is removed from the DOM without going through
434
+ * the `dismiss()` flow (e.g., when a framework unmounts the
435
+ * overlay during a route change).
436
+ *
437
+ * Should be called from an overlay's `disconnectedCallback`
438
+ * when the overlay was still presented at the time of removal.
439
+ */
440
+ export const cleanupRootFocusTrapAccessibility = () => {
441
+ if (typeof document === 'undefined') {
442
+ return;
443
+ }
444
+ const remainingOverlays = getPresentedOverlays(document);
445
+ const hasRemainingLocking = remainingOverlays.some((o) => {
446
+ const el = o;
447
+ return el.tagName !== 'ION-TOAST' && el.focusTrap !== false && isBackdropAlwaysBlocking(el);
448
+ });
449
+ if (!hasRemainingLocking) {
450
+ setRootAriaHidden(false);
451
+ document.body.classList.remove(BACKDROP_NO_SCROLL);
452
+ }
453
+ };
454
+ export const present = async (overlay, name, iosEnterAnimation, mdEnterAnimation, opts) => {
713
455
  var _a, _b;
714
456
  if (overlay.presented) {
715
457
  return;
@@ -757,15 +499,11 @@ export const present = async (overlay, name, iosEnterAnimation, mdEnterAnimation
757
499
  document.body.classList.add(BACKDROP_NO_SCROLL);
758
500
  }
759
501
  (_a = overlay.willPresentShorthand) === null || _a === void 0 ? void 0 : _a.emit();
760
- const theme = getIonTheme(overlay);
761
502
  const mode = getIonMode(overlay);
762
- const selectedAnimation = mode === 'ios'
763
- ? iosEnterAnimation
764
- : theme === 'ionic' && ionicEnterAnimation
765
- ? ionicEnterAnimation
766
- : mdEnterAnimation;
767
503
  // get the user's animation fn if one was provided
768
- const animationBuilder = overlay.enterAnimation ? overlay.enterAnimation : config.get(name, selectedAnimation);
504
+ const animationBuilder = overlay.enterAnimation
505
+ ? overlay.enterAnimation
506
+ : config.get(name, mode === 'ios' ? iosEnterAnimation : mdEnterAnimation);
769
507
  const completed = await overlayAnimation(overlay, animationBuilder, overlay.el, opts);
770
508
  if (completed) {
771
509
  overlay.didPresent.emit();
@@ -943,8 +681,7 @@ export const dismiss = async (overlay, data, role, name, iosLeaveAnimation, mdLe
943
681
  return true;
944
682
  };
945
683
  const getAppRoot = (doc) => {
946
- const appRootSelector = config.get('appRootSelector', 'ion-app');
947
- return doc.querySelector(appRootSelector) || doc.body;
684
+ return doc.querySelector('ion-app') || doc.body;
948
685
  };
949
686
  const overlayAnimation = async (overlay, animationBuilder, baseEl, opts) => {
950
687
  // Make overlay visible in case it's hidden
@@ -66,9 +66,9 @@ const isDesktop = (win) => !isMobile(win);
66
66
  const isHybrid = (win) => isCordova(win) || isCapacitorNative(win);
67
67
  const isCordova = (win) => !!(win['cordova'] || win['phonegap'] || win['PhoneGap']);
68
68
  const isCapacitorNative = (win) => {
69
+ var _a;
69
70
  const capacitor = win['Capacitor'];
70
- // TODO(ROU-11693): Remove when we no longer support Capacitor 2, which does not have isNativePlatform
71
- return !!((capacitor === null || capacitor === void 0 ? void 0 : capacitor.isNative) || ((capacitor === null || capacitor === void 0 ? void 0 : capacitor.isNativePlatform) && !!capacitor.isNativePlatform()));
71
+ return !!((_a = capacitor === null || capacitor === void 0 ? void 0 : capacitor.isNativePlatform) === null || _a === void 0 ? void 0 : _a.call(capacitor));
72
72
  };
73
73
  const isElectron = (win) => testUserAgent(win, /electron/i);
74
74
  const isPWA = (win) => { var _a; return !!(((_a = win.matchMedia) === null || _a === void 0 ? void 0 : _a.call(win, '(display-mode: standalone)').matches) || win.navigator.standalone); };
@@ -8,19 +8,7 @@
8
8
  *
9
9
  * See https://playwright.dev/docs/api/class-mouse#mouse-move for more information.
10
10
  */
11
- /**
12
- * Drags an element by the given number of pixels on the X and Y axes.
13
- *
14
- * @param el The element to drag.
15
- * @param page The E2E Page object.
16
- * @param dragByX The number of pixels to drag on the X axis. Negative values drag left, positive values drag right.
17
- * @param dragByY The number of pixels to drag on the Y axis. Negative values drag up, positive values drag down.
18
- * @param startXCoord The X coordinate to start the drag from. Defaults to the center of the element.
19
- * @param startYCoord The Y coordinate to start the drag from. Defaults to the center of the element.
20
- * @param releaseDrag Whether to release the drag at the end of the gesture. Defaults to `true`.
21
- * @param steps The number of steps to divide the drag into. More steps reduce velocity; fewer steps increase it. Use this to control whether velocity-based thresholds (e.g. full-swipe) are triggered, particularly in Safari where gesture velocity is calculated relative to animation frames. Defaults to `10`.
22
- */
23
- export const dragElementBy = async (el, page, dragByX = 0, dragByY = 0, startXCoord, startYCoord, releaseDrag = true, steps) => {
11
+ export const dragElementBy = async (el, page, dragByX = 0, dragByY = 0, startXCoord, startYCoord, releaseDrag = true) => {
24
12
  const boundingBox = await el.boundingBox();
25
13
  if (!boundingBox) {
26
14
  throw new Error('Cannot get a bounding box for an element that is not visible. See https://playwright.dev/docs/api/class-locator#locator-bounding-box for more information');
@@ -36,18 +24,17 @@ export const dragElementBy = async (el, page, dragByX = 0, dragByY = 0, startXCo
36
24
  // Clearing it here allows the drag gesture to proceed normally.
37
25
  await page.evaluate(() => { var _a; return (_a = window.getSelection()) === null || _a === void 0 ? void 0 : _a.removeAllRanges(); });
38
26
  // Drag the element.
39
- await moveElement(page, startX, startY, dragByX, dragByY, steps);
27
+ await moveElement(page, startX, startY, dragByX, dragByY);
40
28
  if (releaseDrag) {
41
29
  await page.mouse.up();
42
30
  }
43
31
  };
44
32
  /**
45
33
  * Drags an element by the given amount of pixels on the Y axis.
46
- *
47
34
  * @param el The element to drag.
48
35
  * @param page The E2E Page object.
49
- * @param dragByY The number of pixels to drag on the Y axis.
50
- * @param startYCoord The Y coordinate to start the drag from. Defaults to the center of the element.
36
+ * @param dragByY The amount of pixels to drag the element by.
37
+ * @param startYCoord The Y coordinate to start the drag gesture at. Defaults to the center of the element.
51
38
  */
52
39
  export const dragElementByYAxis = async (el, page, dragByY, startYCoord) => {
53
40
  const boundingBox = await el.boundingBox();
@@ -89,7 +76,8 @@ const validateDragByY = (startY, dragByY, viewportHeight) => {
89
76
  throw new Error(`The element is being dragged past the top of the viewport. Update the dragByY value to prevent going out of bounds. A recommended value is ${recommendedDragByY}.`);
90
77
  }
91
78
  };
92
- const moveElement = async (page, startX, startY, dragByX = 0, dragByY = 0, steps = 10) => {
79
+ const moveElement = async (page, startX, startY, dragByX = 0, dragByY = 0) => {
80
+ const steps = 10;
93
81
  const browser = page.context().browser().browserType().name();
94
82
  const viewport = page.viewportSize();
95
83
  if (viewport === null) {
@@ -104,21 +92,10 @@ const moveElement = async (page, startX, startY, dragByX = 0, dragByY = 0, steps
104
92
  const middleX = startX + (endX - startX) * (i / steps);
105
93
  const middleY = startY + (endY - startY) * (i / steps);
106
94
  await page.mouse.move(middleX, middleY);
107
- /**
108
- * In Safari, gesture velocity is calculated relative to animation
109
- * frames, causing velocity to accumulate faster than in other
110
- * browsers. Without waiting for a repaint, consecutive `mouse.move`
111
- * events arrive with ~0ms time delta and velocity never accumulates,
112
- * causing gesture
113
- * detection to fail.
114
- */
95
+ // Safari needs to wait for a repaint to occur before moving the mouse again.
115
96
  if (browser === 'webkit' && i % 2 === 0) {
116
- /**
117
- * Repainting every 2 steps is enough to keep the drag gesture
118
- * smooth. Repainting on every step makes the test slow, and
119
- * repainting every 4+ steps means Safari does not see enough
120
- * frames to track the gesture reliably.
121
- */
97
+ // Repainting every 2 steps is enough to keep the drag gesture smooth.
98
+ // Anything past 4 steps will cause the drag gesture to be flaky.
122
99
  await page.evaluate(() => new Promise(requestAnimationFrame));
123
100
  }
124
101
  }
@@ -8,56 +8,34 @@
8
8
  * each test title is unique.
9
9
  */
10
10
  const generateTitle = (title, config) => {
11
- const { direction, palette, mode, theme } = config;
12
- /**
13
- * The iOS theme can only be used with the iOS mode,
14
- * and the MD theme can only be used with the MD mode.
15
- *
16
- * This logic enables the fallback behavior for existing tests,
17
- * where we only tested against a mode, which accounted for both
18
- * the theme and mode.
19
- */
20
- if (theme === 'ios' || theme === 'md') {
21
- if (palette === 'light') {
22
- /**
23
- * Ionic has many existing tests that existed prior to
24
- * the introduction of theme testing. To maintain backwards
25
- * compatibility, we will not include the theme in the test
26
- * title if the theme is set to light.
27
- */
28
- return `${title} - ${mode}/${direction}`;
29
- }
30
- return `${title} - ${mode}/${direction}/${palette}`;
11
+ const { mode, direction, palette } = config;
12
+ if (palette === 'light') {
13
+ /**
14
+ * Ionic has many existing tests that existed prior to
15
+ * the introduction of palette testing. To maintain backwards
16
+ * compatibility, we will not include the palette in the test
17
+ * title if the palette is set to light.
18
+ */
19
+ return `${title} - ${mode}/${direction}`;
31
20
  }
32
- return `${title} - ${theme}/${mode}/${direction}/${palette}`;
21
+ return `${title} - ${mode}/${direction}/${palette}`;
33
22
  };
34
23
  /**
35
24
  * Generates a unique filename based on a base filename
36
25
  * and a test config.
37
26
  */
38
27
  const generateScreenshotName = (fileName, config) => {
39
- const { direction, palette, mode, theme } = config;
40
- /**
41
- * The iOS theme can only be used with the iOS mode,
42
- * and the MD theme can only be used with the MD mode.
43
- *
44
- * This logic enables the fallback behavior for existing tests,
45
- * where we only tested against a mode, which accounted for both
46
- * the theme and mode.
47
- */
48
- if (theme === 'ios' || theme === 'md') {
49
- if (palette === 'light') {
50
- /**
51
- * Ionic has many existing tests that existed prior to
52
- * the introduction of theme testing. To maintain backwards
53
- * compatibility, we will not include the theme in the screenshot
54
- * name if the theme is set to light.
55
- */
56
- return `${fileName}-${mode}-${direction}.png`;
57
- }
58
- return `${fileName}-${mode}-${direction}-${palette}.png`;
28
+ const { mode, direction, palette } = config;
29
+ if (palette === 'light') {
30
+ /**
31
+ * Ionic has many existing tests that existed prior to
32
+ * the introduction of palette testing. To maintain backwards
33
+ * compatibility, we will not include the palette in the screenshot
34
+ * name if the palette is set to light.
35
+ */
36
+ return `${fileName}-${mode}-${direction}.png`;
59
37
  }
60
- return `${fileName}-${theme}-${mode}-${direction}-${palette}.png`;
38
+ return `${fileName}-${mode}-${direction}-${palette}.png`;
61
39
  };
62
40
  /**
63
41
  * Given a config generate an array of test variants.
@@ -70,16 +48,13 @@ export const configs = (testConfig = DEFAULT_TEST_CONFIG_OPTION) => {
70
48
  * If certain options are not provided,
71
49
  * fall back to the defaults.
72
50
  */
73
- const processedModes = modes !== null && modes !== void 0 ? modes : DEFAULT_MODES;
51
+ const processedMode = modes !== null && modes !== void 0 ? modes : DEFAULT_MODES;
74
52
  const processedDirection = directions !== null && directions !== void 0 ? directions : DEFAULT_DIRECTIONS;
75
53
  const processedPalette = (_a = testConfig.palettes) !== null && _a !== void 0 ? _a : DEFAULT_PALETTES;
76
- processedModes.forEach((mode) => {
77
- const [themeOrCombinedMode, modeName] = mode.split('-');
78
- const parsedTheme = themeOrCombinedMode;
79
- const parsedMode = modeName !== null && modeName !== void 0 ? modeName : themeOrCombinedMode;
54
+ processedMode.forEach((mode) => {
80
55
  processedDirection.forEach((direction) => {
81
56
  processedPalette.forEach((palette) => {
82
- configs.push({ direction, palette, mode: parsedMode, theme: parsedTheme });
57
+ configs.push({ mode, direction, palette });
83
58
  });
84
59
  });
85
60
  });
@@ -9,7 +9,7 @@
9
9
  * to be hydrated before proceeding with the test.
10
10
  */
11
11
  export const goto = async (page, url, testInfo, originalFn, options) => {
12
- var _a, _b, _c, _d, _e;
12
+ var _a, _b, _c, _d;
13
13
  if (options === undefined && testInfo.project.metadata.mode === undefined) {
14
14
  throw new Error(`
15
15
  A config must be passed to page.goto to use a generator test:
@@ -21,18 +21,15 @@ configs().forEach(({ config, title }) => {
21
21
  });`);
22
22
  }
23
23
  let mode;
24
- let theme;
25
24
  let direction;
26
25
  let palette;
27
26
  if (options == undefined) {
28
27
  mode = testInfo.project.metadata.mode;
29
- theme = testInfo.project.metadata.theme;
30
28
  direction = testInfo.project.metadata.rtl ? 'rtl' : 'ltr';
31
29
  palette = testInfo.project.metadata.palette;
32
30
  }
33
31
  else {
34
32
  mode = options.mode;
35
- theme = options.theme;
36
33
  direction = options.direction;
37
34
  palette = options.palette;
38
35
  }
@@ -45,15 +42,13 @@ configs().forEach(({ config, title }) => {
45
42
  */
46
43
  const urlToParams = new URLSearchParams(paramsString);
47
44
  const formattedMode = (_a = urlToParams.get('ionic:mode')) !== null && _a !== void 0 ? _a : mode;
48
- const formattedTheme = (_b = urlToParams.get('ionic:theme')) !== null && _b !== void 0 ? _b : theme;
49
- const formattedRtl = (_c = urlToParams.get('rtl')) !== null && _c !== void 0 ? _c : rtlString;
50
- const formattedPalette = (_d = urlToParams.get('palette')) !== null && _d !== void 0 ? _d : palette;
51
- const ionicTesting = (_e = urlToParams.get('ionic:_testing')) !== null && _e !== void 0 ? _e : true;
45
+ const formattedRtl = (_b = urlToParams.get('rtl')) !== null && _b !== void 0 ? _b : rtlString;
46
+ const formattedPalette = (_c = urlToParams.get('palette')) !== null && _c !== void 0 ? _c : palette;
47
+ const ionicTesting = (_d = urlToParams.get('ionic:_testing')) !== null && _d !== void 0 ? _d : true;
52
48
  /**
53
49
  * Pass through other custom query params
54
50
  */
55
51
  urlToParams.delete('ionic:mode');
56
- urlToParams.delete('ionic:theme');
57
52
  urlToParams.delete('rtl');
58
53
  urlToParams.delete('palette');
59
54
  urlToParams.delete('ionic:_testing');
@@ -64,15 +59,11 @@ configs().forEach(({ config, title }) => {
64
59
  */
65
60
  const remainingQueryParams = decodeURIComponent(urlToParams.toString());
66
61
  const remainingQueryParamsString = remainingQueryParams == '' ? '' : `&${remainingQueryParams}`;
67
- const formattedUrl = `${splitUrl[0]}?ionic:_testing=${ionicTesting}&ionic:mode=${formattedMode}&ionic:theme=${formattedTheme}&rtl=${formattedRtl}&palette=${formattedPalette}${remainingQueryParamsString}`;
62
+ const formattedUrl = `${splitUrl[0]}?ionic:_testing=${ionicTesting}&ionic:mode=${formattedMode}&rtl=${formattedRtl}&palette=${formattedPalette}${remainingQueryParamsString}`;
68
63
  testInfo.annotations.push({
69
64
  type: 'mode',
70
65
  description: formattedMode,
71
66
  });
72
- testInfo.annotations.push({
73
- type: 'theme',
74
- description: formattedTheme,
75
- });
76
67
  testInfo.annotations.push({
77
68
  type: 'direction',
78
69
  description: formattedRtl === 'true' ? 'rtl' : 'ltr',