@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
@@ -1,679 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- import { Host, h } from "@stencil/core";
5
- import { isCssVariable, isValidLengthPercentage } from "../../utils/css-value-validation";
6
- import { raf } from "../../utils/helpers";
7
- import { printIonWarning } from "../../utils/logging/index";
8
- import { getIonTheme } from "../../global/ionic-global";
9
- import { DEFAULT_COLUMNS, DEFAULT_GAP } from "./gallery-constants";
10
- // TODO(FW-7285): Replace with global breakpoints
11
- const BREAKPOINTS = {
12
- xs: 0,
13
- sm: 576,
14
- md: 768,
15
- lg: 992,
16
- xl: 1200,
17
- xxl: 1400,
18
- };
19
- const BREAKPOINT_ORDER = ['xs', 'sm', 'md', 'lg', 'xl', 'xxl'];
20
- /**
21
- * The tag of the component used to wrap each gallery item.
22
- */
23
- const GALLERY_ITEM_SELECTOR = 'ion-gallery-item';
24
- /**
25
- * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
26
- * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
27
- *
28
- * @slot - One or more `ion-gallery-item` components, placed in a responsive
29
- * gallery layout.
30
- */
31
- export class Gallery {
32
- constructor() {
33
- // Keep track of whether we've warned about invalid columns, invalid gap,
34
- // and unused order properties to avoid duplicate warnings on screen resize.
35
- this.hasWarnedInvalidColumns = false;
36
- this.hasWarnedInvalidGap = false;
37
- this.hasWarnedUnusedOrder = false;
38
- this.hasWarnedInvalidItems = false;
39
- /**
40
- * The visual layout of the gallery. When `uniform`, rows take up the height
41
- * of the tallest item and are spaced evenly across the gallery. Additionally,
42
- * items will have an aspect ratio of 1/1, forcing them to be square unless a
43
- * height is explicitly set. When `masonry`, items will be positioned under each
44
- * other with only the specified gap between them.
45
- */
46
- this.layout = 'uniform';
47
- /**
48
- * The number of columns to display. Can be set as a number or an object of
49
- * breakpoint values (e.g. `{ xs: 2, sm: 3, md: 4 }`).
50
- */
51
- this.columns = DEFAULT_COLUMNS;
52
- /**
53
- * The space between gallery items. Accepts valid CSS [length-percentage](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/length-percentage)
54
- * values like `16px`, `1rem`, `20%`, math functions like `calc(10px + 20%)`,
55
- * CSS variables like `var(--app-gallery-gap)`, or numbers (treated as pixel
56
- * values). Can also be set as a breakpoint map
57
- * (e.g. `{ xs: '8px', sm: '1rem', md: '24px' }`). Does not accept
58
- * space-separated values or CSS keyword values like `inherit`, `auto`, etc.
59
- */
60
- this.gap = DEFAULT_GAP;
61
- /**
62
- * Listen for the slotchange event on the slot. When the gallery's items are
63
- * added or removed, re-collapse wrappers, re-observe items for size changes,
64
- * and recompute the masonry grid.
65
- */
66
- this.onSlotChange = () => {
67
- this.collapseWrappers();
68
- this.observeResizes();
69
- this.scheduleMasonryResize();
70
- };
71
- /**
72
- * Measure the host and children, then compute masonry placement.
73
- */
74
- this.resizeMasonryGrid = () => {
75
- this.masonryRaf = undefined;
76
- if (this.layout !== 'masonry') {
77
- this.clearMasonryStyles();
78
- return;
79
- }
80
- const width = this.el.getBoundingClientRect().width;
81
- const columns = this.getColumnsForWidth(width);
82
- // Skip masonry placement when width/columns does not resolve
83
- // to a valid breakpoint column count.
84
- if (columns === undefined) {
85
- return;
86
- }
87
- const styles = getComputedStyle(this.el);
88
- const rowHeight = parseFloat(styles.getPropertyValue('grid-auto-rows')) || 0;
89
- const rowGap = parseFloat(styles.getPropertyValue('row-gap')) || parseFloat(styles.getPropertyValue('gap')) || 0;
90
- const items = this.getItems();
91
- this.layoutMasonry(items, rowHeight, rowGap, columns);
92
- };
93
- }
94
- onColumnsOrGapChanged() {
95
- this.syncResponsiveLayout();
96
- }
97
- onLayoutOrOrderChanged() {
98
- this.syncResponsiveLayout();
99
- this.syncItemLayout();
100
- // Wait until the next animation frame to warn about unused order
101
- // to avoid erroneous warnings when the layout and order are updated
102
- // in the same frame.
103
- raf(() => {
104
- this.warnUnusedOrder();
105
- });
106
- }
107
- /**
108
- * Sync the current layout with each item when the gallery's `layout`
109
- * changes.
110
- */
111
- syncItemLayout() {
112
- this.getItems().forEach((item) => {
113
- item.syncGalleryLayout();
114
- });
115
- }
116
- componentDidLoad() {
117
- this.collapseWrappers();
118
- this.updateResponsiveStyles(true);
119
- this.resizeObserver = new ResizeObserver(() => {
120
- this.updateResponsiveStyles();
121
- this.scheduleMasonryResize();
122
- });
123
- this.observeResizes();
124
- this.scheduleMasonryResize();
125
- this.warnUnusedOrder();
126
- }
127
- disconnectedCallback() {
128
- var _a;
129
- if (this.masonryRaf !== undefined) {
130
- cancelAnimationFrame(this.masonryRaf);
131
- this.masonryRaf = undefined;
132
- }
133
- (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
134
- this.resizeObserver = undefined;
135
- }
136
- /**
137
- * Observe the host and each item for size changes. Items are observed in
138
- * addition to the host so masonry placement is recomputed when an item's
139
- * rendered height changes — most importantly when a dynamically added
140
- * `ion-gallery-item` finishes hydrating, which (unlike an `<img>`) emits no
141
- * `load` event and does not change the host's measured size while collapsed.
142
- */
143
- observeResizes() {
144
- const observer = this.resizeObserver;
145
- if (observer === undefined) {
146
- return;
147
- }
148
- observer.disconnect();
149
- observer.observe(this.el);
150
- this.getItems().forEach((item) => observer.observe(item));
151
- }
152
- /**
153
- * Listen for the load event on child elements.
154
- * When the layout is `masonry`, this listener is used to schedule a resize
155
- * of the masonry grid when the child elements load. This is useful for when
156
- * images take time to load.
157
- */
158
- onChildLoad(ev) {
159
- if (this.layout !== 'masonry') {
160
- return;
161
- }
162
- const target = ev.target;
163
- if (target instanceof Node && this.el.contains(target)) {
164
- this.scheduleMasonryResize();
165
- }
166
- }
167
- /**
168
- * Recompute the gallery column and gap variables and masonry placement when
169
- * columns, gap, layout, or order change.
170
- */
171
- syncResponsiveLayout() {
172
- this.updateResponsiveStyles(true);
173
- this.scheduleMasonryResize();
174
- }
175
- /**
176
- * Batch masonry measurements to a single animation frame.
177
- * This avoids repeated sync layouts during rapid resize/load/slot changes.
178
- */
179
- scheduleMasonryResize() {
180
- if (this.layout !== 'masonry') {
181
- this.clearMasonryStyles();
182
- return;
183
- }
184
- if (this.masonryRaf !== undefined) {
185
- cancelAnimationFrame(this.masonryRaf);
186
- }
187
- this.masonryRaf = requestAnimationFrame(this.resizeMasonryGrid);
188
- }
189
- /**
190
- * Normalize a single column value (`columns` as a number, string, or one entry from
191
- * a `columns` breakpoint map) to a positive integer. Returns `undefined` when
192
- * the input cannot be interpreted as a finite number.
193
- */
194
- sanitizeColumns(columns) {
195
- if (columns === undefined) {
196
- return undefined;
197
- }
198
- const numericColumns = typeof columns === 'number' ? columns : Number(columns);
199
- if (!Number.isFinite(numericColumns) || !Number.isInteger(numericColumns) || numericColumns <= 0) {
200
- return undefined;
201
- }
202
- return numericColumns;
203
- }
204
- /**
205
- * Normalize a single gap value (`gap` as a number, a string such as a CSS
206
- * length-percentage or `var()` reference, or one entry from a `gap`
207
- * breakpoint map) to a CSS length string. Returns `undefined` when the
208
- * input cannot be interpreted as a valid CSS length or `var()` reference.
209
- */
210
- sanitizeGap(gap) {
211
- if (gap === undefined) {
212
- return undefined;
213
- }
214
- const normalizedGap = typeof gap === 'string' ? gap.trim() : gap;
215
- if (normalizedGap === '' || typeof normalizedGap === 'object') {
216
- return undefined;
217
- }
218
- const numericGap = Number(normalizedGap);
219
- if (Number.isFinite(numericGap)) {
220
- return numericGap < 0 ? undefined : `${numericGap}px`;
221
- }
222
- if (typeof normalizedGap !== 'string') {
223
- return undefined;
224
- }
225
- if (isCssVariable(normalizedGap)) {
226
- return normalizedGap;
227
- }
228
- const isValidCssLength = isValidLengthPercentage(normalizedGap);
229
- return isValidCssLength ? normalizedGap : undefined;
230
- }
231
- /**
232
- * Check if the value is a breakpoint map object.
233
- */
234
- isBreakpointMap(value) {
235
- return typeof value === 'object' && value !== null && !Array.isArray(value);
236
- }
237
- /**
238
- * Check if the breakpoint map has any invalid values for the provided
239
- * sanitizer. A breakpoint map is invalid when there are no valid breakpoint
240
- * keys set (e.g. `{}` or `{ colums: 3 }`), or when a value under a
241
- * breakpoint key fails the sanitizer (e.g. `{ xs: -3 }`, `{ sm: 'foo' }`).
242
- */
243
- hasInvalidBreakpointMap(breakpointMap, sanitizeValue) {
244
- let hasBreakpointEntry = false;
245
- for (const breakpoint of BREAKPOINT_ORDER) {
246
- const value = breakpointMap[breakpoint];
247
- if (value !== undefined) {
248
- hasBreakpointEntry = true;
249
- if (sanitizeValue(value) === undefined) {
250
- return true;
251
- }
252
- }
253
- }
254
- return !hasBreakpointEntry;
255
- }
256
- /**
257
- * Resolve a responsive value from a breakpoint map.
258
- * Uses a breakpoint-specific default when custom values are missing/invalid.
259
- */
260
- resolveFromBreakpoints(width, breakpointMap, sanitizeProvided, getSanitizedDefault) {
261
- let resolvedValue;
262
- for (const bp of BREAKPOINT_ORDER) {
263
- const providedValue = breakpointMap[bp];
264
- const sanitizedProvided = sanitizeProvided(providedValue);
265
- const sanitizedDefault = getSanitizedDefault(bp);
266
- const resolved = providedValue === undefined || sanitizedProvided === undefined ? sanitizedDefault : sanitizedProvided;
267
- if (resolved !== undefined && width >= BREAKPOINTS[bp]) {
268
- resolvedValue = resolved;
269
- }
270
- }
271
- return resolvedValue;
272
- }
273
- /**
274
- * Get the columns from a responsive breakpoint map.
275
- * Returns the columns for the last matching breakpoint.
276
- */
277
- getColumnsFromBreakpointMap(width, breakpointMap) {
278
- return this.resolveFromBreakpoints(width, breakpointMap, (value) => this.sanitizeColumns(value), (bp) => this.sanitizeColumns(DEFAULT_COLUMNS[bp]));
279
- }
280
- /**
281
- * Get the gap from a responsive breakpoint map.
282
- * Returns the gap for the last matching breakpoint.
283
- */
284
- getGapFromBreakpointMap(width, breakpointMap) {
285
- return this.resolveFromBreakpoints(width, breakpointMap, (value) => this.sanitizeGap(value), () => this.sanitizeGap(DEFAULT_GAP));
286
- }
287
- /**
288
- * Warn about an invalid columns value when it is set to a negative number,
289
- * an empty breakpoint map, a map with no supported breakpoint keys,
290
- * or a map with invalid breakpoint values.
291
- */
292
- warnInvalidColumns(columns) {
293
- if (this.hasWarnedInvalidColumns) {
294
- return;
295
- }
296
- printIonWarning(`[ion-gallery] - Invalid "columns" value (${JSON.stringify(columns)}). Expected a positive integer or breakpoint map object (e.g. { xs: 2, md: 4 }). Falling back to default responsive columns.`, this.el);
297
- this.hasWarnedInvalidColumns = true;
298
- }
299
- /**
300
- * Warn about an invalid gap value when it is set to a negative number,
301
- * an empty breakpoint map, a map with no supported breakpoint keys,
302
- * or a map with invalid breakpoint values.
303
- */
304
- warnInvalidGap(gap) {
305
- if (this.hasWarnedInvalidGap) {
306
- return;
307
- }
308
- printIonWarning(`[ion-gallery] - Invalid "gap" value (${JSON.stringify(gap)}). Expected a non-negative number, CSS length string, CSS variable (e.g. var(--app-gap)), or breakpoint map object (e.g. { xs: 8, md: "1rem" }).`, this.el);
309
- this.hasWarnedInvalidGap = true;
310
- }
311
- /**
312
- * Warn when `order` is explicitly set while layout is `uniform`.
313
- */
314
- warnUnusedOrder() {
315
- const { layout } = this;
316
- const order = this.order == null ? undefined : this.order;
317
- if (this.hasWarnedUnusedOrder || layout !== 'uniform' || order === undefined) {
318
- return;
319
- }
320
- printIonWarning(`[ion-gallery] - "order" has no effect when "layout" is "uniform". Set "layout" to "masonry" for "order" to apply.`, this.el);
321
- this.hasWarnedUnusedOrder = true;
322
- }
323
- /**
324
- * Resolve the active columns value for the current width. Falls back to
325
- * the default responsive columns when the provided prop is invalid.
326
- */
327
- getColumnsForWidth(width) {
328
- const { columns } = this;
329
- const isBreakpointColumns = this.isBreakpointMap(columns);
330
- const hasInvalidBreakpointColumns = isBreakpointColumns && this.hasInvalidBreakpointMap(columns, (value) => this.sanitizeColumns(value));
331
- const sanitizedColumns = isBreakpointColumns
332
- ? this.getColumnsFromBreakpointMap(width, columns)
333
- : this.sanitizeColumns(columns);
334
- if (hasInvalidBreakpointColumns || (!isBreakpointColumns && sanitizedColumns === undefined)) {
335
- this.warnInvalidColumns(columns);
336
- }
337
- if (sanitizedColumns !== undefined) {
338
- return sanitizedColumns;
339
- }
340
- return this.getColumnsFromBreakpointMap(width, DEFAULT_COLUMNS);
341
- }
342
- /**
343
- * Resolve the active gap value for the current width.
344
- */
345
- getGapForWidth(width) {
346
- const { gap } = this;
347
- const providedGap = gap !== null && gap !== void 0 ? gap : DEFAULT_GAP;
348
- const isBreakpointGap = this.isBreakpointMap(providedGap);
349
- const hasInvalidBreakpointGap = isBreakpointGap && this.hasInvalidBreakpointMap(providedGap, (value) => this.sanitizeGap(value));
350
- const sanitizedGap = isBreakpointGap
351
- ? this.getGapFromBreakpointMap(width, providedGap)
352
- : this.sanitizeGap(providedGap);
353
- if (hasInvalidBreakpointGap || (!isBreakpointGap && sanitizedGap === undefined)) {
354
- this.warnInvalidGap(providedGap);
355
- }
356
- if (sanitizedGap !== undefined) {
357
- return sanitizedGap;
358
- }
359
- return this.sanitizeGap(DEFAULT_GAP);
360
- }
361
- /**
362
- * Update the responsive styles for the gallery. This is used to update
363
- * the columns and gap when the component width changes.
364
- */
365
- updateResponsiveStyles(force = false) {
366
- const width = this.el.getBoundingClientRect().width;
367
- // Only update the columns if the component width has changed by more than
368
- // 1px or if the force flag is true. This prevents unnecessary re-renders
369
- // when the component width has not changed.
370
- if (!width || (!force && this.lastWidth !== undefined && Math.abs(this.lastWidth - width) < 1)) {
371
- return;
372
- }
373
- this.lastWidth = width;
374
- const columns = this.getColumnsForWidth(width);
375
- this.el.style.setProperty('--internal-gallery-columns', `${columns}`);
376
- const gap = this.getGapForWidth(width);
377
- this.el.style.setProperty('--internal-gallery-gap', `${gap}`);
378
- }
379
- /**
380
- * Return the `ion-gallery-item` elements to place in the grid. Each item is a
381
- * direct grid cell, whether a direct child or nested inside a pass-through
382
- * wrapper (e.g. a layout `<div>`). Items belonging to a nested `ion-gallery`
383
- * are excluded.
384
- */
385
- getItems() {
386
- return Array.from(this.el.querySelectorAll(GALLERY_ITEM_SELECTOR)).filter((item) => item.closest('ion-gallery') === this.el);
387
- }
388
- /**
389
- * Collapse each pass-through wrapper's box with `display: contents` so its
390
- * items participate in the gallery grid. Restore the box of a wrapper that
391
- * no longer contains items, and warn about children that contain none.
392
- */
393
- collapseWrappers() {
394
- const items = this.getItems();
395
- Array.from(this.el.children).forEach((child) => {
396
- if (child.matches(GALLERY_ITEM_SELECTOR)) {
397
- return;
398
- }
399
- if (!items.some((item) => child.contains(item))) {
400
- // If the wrapper was previously collapsed with `display: contents`
401
- // but now contains no items, clear the display style.
402
- if (child.style.display === 'contents') {
403
- child.style.display = '';
404
- }
405
- this.warnInvalidItems();
406
- return;
407
- }
408
- // Collapse the wrapper's box so its items sit directly in the grid.
409
- child.style.display = 'contents';
410
- });
411
- }
412
- /**
413
- * Warn when the gallery has content that is not wrapped in an
414
- * `ion-gallery-item` component. Items belonging to a nested
415
- * gallery are considered invalid content for the parent gallery.
416
- */
417
- warnInvalidItems() {
418
- if (this.hasWarnedInvalidItems) {
419
- return;
420
- }
421
- printIonWarning(`[ion-gallery] - Gallery items must be wrapped in "ion-gallery-item" components. Direct children that are not "ion-gallery-item" (and do not contain one) are ignored.`, this.el);
422
- this.hasWarnedInvalidItems = true;
423
- }
424
- /**
425
- * Clear the item styles for the given item element.
426
- * This is used to switch between uniform and masonry layouts.
427
- */
428
- clearItemStyles(itemEl) {
429
- itemEl.style.gridRowStart = '';
430
- itemEl.style.gridRowEnd = '';
431
- itemEl.style.gridColumn = '';
432
- itemEl.style.marginBottom = '';
433
- }
434
- /**
435
- * Clear placement styles for all items when leaving masonry mode.
436
- */
437
- clearMasonryStyles() {
438
- this.getItems().forEach((itemEl) => this.clearItemStyles(itemEl));
439
- }
440
- /**
441
- * Whether the item contains any images that have not finished loading.
442
- * Used to defer masonry placement until the rendered height is final.
443
- */
444
- hasUnloadedImages(itemEl) {
445
- return Array.from(itemEl.querySelectorAll('img')).some((img) => !img.complete || img.naturalHeight === 0);
446
- }
447
- /**
448
- * Convert a rendered item height to the number of grid rows it should span.
449
- * Returns undefined when the item has images that are not fully loaded yet.
450
- */
451
- calculateRowSpan(itemEl, rowHeight, rowGap) {
452
- if (this.hasUnloadedImages(itemEl)) {
453
- return undefined;
454
- }
455
- const height = itemEl.getBoundingClientRect().height;
456
- const itemStyles = getComputedStyle(itemEl);
457
- const marginBottom = parseFloat(itemStyles.getPropertyValue('margin-bottom')) || 0;
458
- const denominator = rowHeight + rowGap;
459
- if (!denominator || !Number.isFinite(denominator)) {
460
- return 1;
461
- }
462
- return Math.ceil((height + marginBottom + rowGap) / denominator) || 1;
463
- }
464
- /**
465
- * Get the index of the column to position the item in.
466
- * When the order is `best-fit`, the column with the shortest height is
467
- * returned. Otherwise, items are placed in the column that matches their
468
- * natural DOM order.
469
- */
470
- getColumnIndex(index, columnHeights, columns) {
471
- const order = this.getOrder();
472
- if (order === 'best-fit') {
473
- let columnIndex = 0;
474
- for (let i = 1; i < columns; i++) {
475
- if (columnHeights[i] < columnHeights[columnIndex]) {
476
- columnIndex = i;
477
- }
478
- }
479
- return columnIndex;
480
- }
481
- return index % columns;
482
- }
483
- /**
484
- * Apply masonry placement by assigning each item a column and row span.
485
- */
486
- layoutMasonry(items, rowHeight, rowGap, columns) {
487
- const columnHeights = new Array(columns).fill(0);
488
- const lastItemsByColumn = new Array(columns).fill(undefined);
489
- items.forEach((itemEl, i) => {
490
- itemEl.style.marginBottom = '';
491
- const span = this.calculateRowSpan(itemEl, rowHeight, rowGap);
492
- if (span === undefined) {
493
- this.clearItemStyles(itemEl);
494
- return;
495
- }
496
- const columnIndex = this.getColumnIndex(i, columnHeights, columns);
497
- const start = columnHeights[columnIndex] + 1;
498
- itemEl.style.gridColumn = `${columnIndex + 1}`;
499
- itemEl.style.gridRowStart = `${start}`;
500
- itemEl.style.gridRowEnd = `span ${span}`;
501
- columnHeights[columnIndex] = start + span - 1;
502
- lastItemsByColumn[columnIndex] = itemEl;
503
- });
504
- // Remove trailing space from the final item in each column while preserving
505
- // spacing between all non-final items.
506
- lastItemsByColumn.forEach((itemEl) => {
507
- if (itemEl === undefined) {
508
- return;
509
- }
510
- itemEl.style.marginBottom = '0px';
511
- const spanWithoutTrailingGap = this.calculateRowSpan(itemEl, rowHeight, rowGap);
512
- if (spanWithoutTrailingGap === undefined) {
513
- this.clearItemStyles(itemEl);
514
- return;
515
- }
516
- itemEl.style.gridRowEnd = `span ${spanWithoutTrailingGap}`;
517
- });
518
- }
519
- /**
520
- * Resolved order for layout and CSS. Order should be `undefined` for
521
- * the uniform layout. When order is not set, it should be `"sequential"`
522
- * for the masonry layout.
523
- */
524
- getOrder() {
525
- const { layout } = this;
526
- const order = this.order == null ? undefined : this.order;
527
- if (layout === 'uniform') {
528
- return undefined;
529
- }
530
- if (layout === 'masonry' && order === undefined) {
531
- return 'sequential';
532
- }
533
- return order;
534
- }
535
- render() {
536
- const { layout } = this;
537
- const order = this.getOrder();
538
- const theme = getIonTheme(this);
539
- return (h(Host, { key: '4a0a9cdd0da106ac0bd2c188a4c6612edab43b33', class: {
540
- [theme]: true,
541
- [`gallery-layout-${layout}`]: true,
542
- [`gallery-order-${order}`]: layout === 'masonry' && order !== undefined,
543
- } }, h("slot", { key: 'dc6414ce9762ad7daaedc1583db35e0613a76e11', onSlotchange: this.onSlotChange })));
544
- }
545
- static get is() { return "ion-gallery"; }
546
- static get encapsulation() { return "shadow"; }
547
- static get originalStyleUrls() {
548
- return {
549
- "$": ["gallery.scss"]
550
- };
551
- }
552
- static get styleUrls() {
553
- return {
554
- "$": ["gallery.css"]
555
- };
556
- }
557
- static get properties() {
558
- return {
559
- "layout": {
560
- "type": "string",
561
- "mutable": false,
562
- "complexType": {
563
- "original": "'uniform' | 'masonry'",
564
- "resolved": "\"masonry\" | \"uniform\"",
565
- "references": {}
566
- },
567
- "required": false,
568
- "optional": false,
569
- "docs": {
570
- "tags": [],
571
- "text": "The visual layout of the gallery. When `uniform`, rows take up the height\nof the tallest item and are spaced evenly across the gallery. Additionally,\nitems will have an aspect ratio of 1/1, forcing them to be square unless a\nheight is explicitly set. When `masonry`, items will be positioned under each\nother with only the specified gap between them."
572
- },
573
- "getter": false,
574
- "setter": false,
575
- "reflect": false,
576
- "attribute": "layout",
577
- "defaultValue": "'uniform'"
578
- },
579
- "order": {
580
- "type": "string",
581
- "mutable": false,
582
- "complexType": {
583
- "original": "'sequential' | 'best-fit'",
584
- "resolved": "\"best-fit\" | \"sequential\" | undefined",
585
- "references": {}
586
- },
587
- "required": false,
588
- "optional": true,
589
- "docs": {
590
- "tags": [],
591
- "text": "The order in which items are positioned. Only applies when layout is\n`masonry`. When `sequential`, items are positioned in the order they are\nplaced in the DOM. When `best-fit`, items are positioned under the column\nwith the most available space. Defaults to `sequential` when layout is\n`masonry` and `order` is not explicitly set."
592
- },
593
- "getter": false,
594
- "setter": false,
595
- "reflect": false,
596
- "attribute": "order"
597
- },
598
- "columns": {
599
- "type": "any",
600
- "mutable": false,
601
- "complexType": {
602
- "original": "GalleryColumns",
603
- "resolved": "GalleryBreakpoints<string | number> | number | string",
604
- "references": {
605
- "GalleryColumns": {
606
- "location": "import",
607
- "path": "./gallery-interface",
608
- "id": "src/components/gallery/gallery-interface.ts::GalleryColumns",
609
- "referenceLocation": "GalleryColumns"
610
- }
611
- }
612
- },
613
- "required": false,
614
- "optional": false,
615
- "docs": {
616
- "tags": [],
617
- "text": "The number of columns to display. Can be set as a number or an object of\nbreakpoint values (e.g. `{ xs: 2, sm: 3, md: 4 }`)."
618
- },
619
- "getter": false,
620
- "setter": false,
621
- "reflect": false,
622
- "attribute": "columns",
623
- "defaultValue": "{\n xs: 2,\n sm: 3,\n md: 4,\n lg: 6,\n xl: 8,\n xxl: 10,\n}"
624
- },
625
- "gap": {
626
- "type": "any",
627
- "mutable": false,
628
- "complexType": {
629
- "original": "GalleryGap",
630
- "resolved": "GalleryBreakpoints<string | number> | number | string",
631
- "references": {
632
- "GalleryGap": {
633
- "location": "import",
634
- "path": "./gallery-interface",
635
- "id": "src/components/gallery/gallery-interface.ts::GalleryGap",
636
- "referenceLocation": "GalleryGap"
637
- }
638
- }
639
- },
640
- "required": false,
641
- "optional": false,
642
- "docs": {
643
- "tags": [],
644
- "text": "The space between gallery items. Accepts valid CSS [length-percentage](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/length-percentage)\nvalues like `16px`, `1rem`, `20%`, math functions like `calc(10px + 20%)`,\nCSS variables like `var(--app-gallery-gap)`, or numbers (treated as pixel\nvalues). Can also be set as a breakpoint map\n(e.g. `{ xs: '8px', sm: '1rem', md: '24px' }`). Does not accept\nspace-separated values or CSS keyword values like `inherit`, `auto`, etc."
645
- },
646
- "getter": false,
647
- "setter": false,
648
- "reflect": false,
649
- "attribute": "gap",
650
- "defaultValue": "'16px'"
651
- }
652
- };
653
- }
654
- static get elementRef() { return "el"; }
655
- static get watchers() {
656
- return [{
657
- "propName": "columns",
658
- "methodName": "onColumnsOrGapChanged"
659
- }, {
660
- "propName": "gap",
661
- "methodName": "onColumnsOrGapChanged"
662
- }, {
663
- "propName": "layout",
664
- "methodName": "onLayoutOrOrderChanged"
665
- }, {
666
- "propName": "order",
667
- "methodName": "onLayoutOrOrderChanged"
668
- }];
669
- }
670
- static get listeners() {
671
- return [{
672
- "name": "load",
673
- "method": "onChildLoad",
674
- "target": undefined,
675
- "capture": true,
676
- "passive": false
677
- }];
678
- }
679
- }