@ionic/core 8.8.16-dev.11784841344.1aa1a41c → 8.8.16-nightly.20260724

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 (1120) hide show
  1. package/components/index.js +1 -1
  2. package/components/ion-accordion-group.js +1 -1
  3. package/components/ion-accordion.js +1 -1
  4. package/components/ion-action-sheet.js +1 -1
  5. package/components/ion-alert.js +1 -1
  6. package/components/ion-app.js +1 -1
  7. package/components/ion-avatar.js +1 -1
  8. package/components/ion-back-button.js +1 -1
  9. package/components/ion-backdrop.js +1 -1
  10. package/components/ion-badge.js +1 -1
  11. package/components/ion-breadcrumb.js +1 -1
  12. package/components/ion-breadcrumbs.js +1 -1
  13. package/components/ion-button.js +1 -1
  14. package/components/ion-buttons.js +1 -1
  15. package/components/ion-card-content.js +1 -1
  16. package/components/ion-card-header.js +1 -1
  17. package/components/ion-card-subtitle.js +1 -1
  18. package/components/ion-card-title.js +1 -1
  19. package/components/ion-card.js +1 -1
  20. package/components/ion-checkbox.js +1 -1
  21. package/components/ion-chip.js +1 -1
  22. package/components/ion-col.js +1 -1
  23. package/components/ion-content.js +1 -1
  24. package/components/ion-datetime-button.js +1 -1
  25. package/components/ion-datetime.js +1 -1
  26. package/components/ion-fab-button.js +1 -1
  27. package/components/ion-fab-list.js +1 -1
  28. package/components/ion-fab.js +1 -1
  29. package/components/ion-footer.js +1 -1
  30. package/components/ion-grid.js +1 -1
  31. package/components/ion-header.js +1 -1
  32. package/components/ion-icon.js +1 -1
  33. package/components/ion-img.js +1 -1
  34. package/components/ion-infinite-scroll-content.js +1 -1
  35. package/components/ion-infinite-scroll.js +1 -1
  36. package/components/ion-input-otp.js +1 -1
  37. package/components/ion-input-password-toggle.js +1 -1
  38. package/components/ion-input.js +1 -1
  39. package/components/ion-item-divider.js +1 -1
  40. package/components/ion-item-group.js +1 -1
  41. package/components/ion-item-option.js +1 -1
  42. package/components/ion-item-options.js +1 -1
  43. package/components/ion-item-sliding.js +1 -1
  44. package/components/ion-item.js +1 -1
  45. package/components/ion-label.js +1 -1
  46. package/components/ion-list-header.js +1 -1
  47. package/components/ion-list.js +1 -1
  48. package/components/ion-loading.js +1 -1
  49. package/components/ion-menu-button.js +1 -1
  50. package/components/ion-menu-toggle.js +1 -1
  51. package/components/ion-menu.js +1 -1
  52. package/components/ion-modal.js +1 -1
  53. package/components/ion-nav-link.js +1 -1
  54. package/components/ion-nav.js +1 -1
  55. package/components/ion-note.js +1 -1
  56. package/components/ion-picker-column-option.js +1 -1
  57. package/components/ion-picker-column.js +1 -1
  58. package/components/ion-picker-legacy-column.js +1 -1
  59. package/components/ion-picker-legacy.js +1 -1
  60. package/components/ion-picker.js +1 -1
  61. package/components/ion-popover.js +1 -1
  62. package/components/ion-progress-bar.js +1 -1
  63. package/components/ion-radio-group.js +1 -1
  64. package/components/ion-radio.js +1 -1
  65. package/components/ion-range.js +1 -1
  66. package/components/ion-refresher-content.js +1 -1
  67. package/components/ion-refresher.js +1 -1
  68. package/components/ion-reorder-group.js +1 -1
  69. package/components/ion-reorder.js +1 -1
  70. package/components/ion-ripple-effect.js +1 -1
  71. package/components/ion-route-redirect.js +1 -1
  72. package/components/ion-route.js +1 -1
  73. package/components/ion-router-link.js +1 -1
  74. package/components/ion-router-outlet.js +1 -1
  75. package/components/ion-router.js +1 -1
  76. package/components/ion-row.js +1 -1
  77. package/components/ion-searchbar.js +1 -1
  78. package/components/ion-segment-button.js +1 -1
  79. package/components/ion-segment-content.js +1 -1
  80. package/components/ion-segment-view.js +1 -1
  81. package/components/ion-segment.js +1 -1
  82. package/components/ion-select-modal.js +1 -1
  83. package/components/ion-select-option.js +1 -1
  84. package/components/ion-select-popover.js +1 -1
  85. package/components/ion-select.js +1 -1
  86. package/components/ion-skeleton-text.js +1 -1
  87. package/components/ion-spinner.js +1 -1
  88. package/components/ion-split-pane.js +1 -1
  89. package/components/ion-tab-bar.js +1 -1
  90. package/components/ion-tab-button.js +1 -1
  91. package/components/ion-tab.js +1 -1
  92. package/components/ion-tabs.js +1 -1
  93. package/components/ion-text.js +1 -1
  94. package/components/ion-textarea.js +1 -1
  95. package/components/ion-thumbnail.js +1 -1
  96. package/components/ion-title.js +1 -1
  97. package/components/ion-toast.js +1 -1
  98. package/components/ion-toggle.js +1 -1
  99. package/components/ion-toolbar.js +1 -1
  100. package/components/p--JUspHvy.js +4 -0
  101. package/components/p-5bE_Wz4Y.js +4 -0
  102. package/components/p-B60hm8Qv.js +4 -0
  103. package/components/p-B9jFTlwE.js +4 -0
  104. package/components/p-BHrrc-3d.js +4 -0
  105. package/components/p-BIPPbW0M.js +4 -0
  106. package/components/p-BLmJ0zRm.js +4 -0
  107. package/components/p-BSEgsdFI.js +4 -0
  108. package/components/p-BTPfOxsU.js +4 -0
  109. package/{dist/ionic/p-Cm20lBQw.js → components/p-BT_5jSqG.js} +1 -1
  110. package/components/p-BUYFy35a.js +4 -0
  111. package/components/p-BWEZufiK.js +4 -0
  112. package/components/p-Baq1XyAy.js +4 -0
  113. package/components/p-BirPFsRD.js +4 -0
  114. package/components/p-BjfgFSSR.js +4 -0
  115. package/components/p-BmVRXR1y.js +4 -0
  116. package/components/p-BnqQlm7c.js +4 -0
  117. package/components/p-BqpciLfi.js +4 -0
  118. package/components/p-BsPelv04.js +4 -0
  119. package/components/p-BsQPAqo9.js +4 -0
  120. package/components/p-Bz0dSlXZ.js +4 -0
  121. package/components/p-C1aScSTo.js +4 -0
  122. package/components/{p-BKSylJVh.js → p-C4t5ymfq.js} +1 -1
  123. package/components/p-CHqRYvYm.js +4 -0
  124. package/components/p-CI3ncNZm.js +4 -0
  125. package/components/p-CIGNaXM1.js +4 -0
  126. package/components/p-CO7fmmxt.js +4 -0
  127. package/components/p-CSZf8_j0.js +4 -0
  128. package/components/p-CU5rbWAW.js +4 -0
  129. package/components/p-C_xFdyXe.js +4 -0
  130. package/components/{p-BE21dB_a.js → p-Cf2jSDS8.js} +1 -1
  131. package/components/p-Cfx4M1Bn.js +4 -0
  132. package/components/p-Ciz1-FuE.js +4 -0
  133. package/components/p-CmR5uXej.js +4 -0
  134. package/components/p-CtWGkNnJ.js +4 -0
  135. package/{dist/ionic/p-BlZo7Gy-.js → components/p-CtukzcyX.js} +1 -1
  136. package/components/{p-DP96lPOT.js → p-D13Eaw-8.js} +1 -1
  137. package/components/{p-Dqgyr3aJ.js → p-D5Ubpm7D.js} +1 -1
  138. package/components/p-D6Ynv7Xh.js +4 -0
  139. package/components/p-D7bSXQD3.js +4 -0
  140. package/components/p-DIE4pXMl.js +4 -0
  141. package/components/p-DJztqcrH.js +4 -0
  142. package/components/p-DNQI6d-L.js +4 -0
  143. package/components/p-DOFCbuQR.js +4 -0
  144. package/components/p-Dfrs7c--.js +4 -0
  145. package/components/p-DiVJyqlX.js +4 -0
  146. package/components/p-DnL1c9_X.js +4 -0
  147. package/components/{p-BZwQa9ey.js → p-DqLB8yFQ.js} +1 -1
  148. package/components/p-DqZAXv2t.js +4 -0
  149. package/components/p-Sh0ICmPV.js +4 -0
  150. package/components/p-W5nO8mX_.js +4 -0
  151. package/components/p-ZjP4CjeZ.js +4 -0
  152. package/components/{p-Fagxa-Vi.js → p-cyNmxje6.js} +1 -1
  153. package/components/p-ijF0iCrA.js +4 -0
  154. package/components/p-j5IxBIan.js +4 -0
  155. package/components/p-k_E4tX5Z.js +4 -0
  156. package/components/p-lE_JGpHD.js +4 -0
  157. package/components/p-nyXeHk23.js +4 -0
  158. package/components/p-rCa2eL0j.js +4 -0
  159. package/components/p-ryqmO0B-.js +4 -0
  160. package/css/core.css +1 -1
  161. package/css/core.css.map +1 -1
  162. package/css/display.css +1 -1
  163. package/css/display.css.map +1 -1
  164. package/css/flex-utils.css +1 -1
  165. package/css/flex-utils.css.map +1 -1
  166. package/css/float-elements.css.map +1 -1
  167. package/css/global.bundle.css.map +1 -1
  168. package/css/ionic-swiper.css +1 -1
  169. package/css/ionic-swiper.css.map +1 -1
  170. package/css/ionic.bundle.css +1 -1
  171. package/css/ionic.bundle.css.map +1 -1
  172. package/css/normalize.css.map +1 -1
  173. package/css/padding.css.map +1 -1
  174. package/css/palettes/dark.always.css.map +1 -1
  175. package/css/palettes/dark.class.css.map +1 -1
  176. package/css/palettes/dark.system.css.map +1 -1
  177. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  178. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  179. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  180. package/css/palettes/high-contrast.always.css.map +1 -1
  181. package/css/palettes/high-contrast.class.css.map +1 -1
  182. package/css/palettes/high-contrast.system.css.map +1 -1
  183. package/css/structure.css.map +1 -1
  184. package/css/text-alignment.css.map +1 -1
  185. package/css/text-transformation.css.map +1 -1
  186. package/css/typography.css.map +1 -1
  187. package/css/utils.bundle.css +1 -1
  188. package/css/utils.bundle.css.map +1 -1
  189. package/dist/cjs/{animation-B3xfVcDO.js → animation-BJq0kcy2.js} +3 -3
  190. package/dist/cjs/{app-globals-3ZoCVkn-.js → app-globals-BlqrqKTN.js} +1 -1
  191. package/dist/cjs/{button-active-3tZKuPbT.js → button-active-0mPOKmV2.js} +2 -2
  192. package/dist/cjs/{capacitor-CQSg1uCo.js → capacitor-DmA66EwP.js} +3 -3
  193. package/dist/cjs/config-xninhj0J.js +201 -0
  194. package/dist/{esm/focus-visible-vXpMhGrs.js → cjs/focus-visible-CCvKiLh3.js} +3 -23
  195. package/dist/cjs/{format-BCIkDef_.js → format-PxvGiOik.js} +1 -1
  196. package/dist/cjs/{framework-delegate-DC5nq_NN.js → framework-delegate-BtICZDHr.js} +2 -4
  197. package/dist/cjs/{haptic-eix26ESE.js → haptic-ClPPQ_PS.js} +1 -1
  198. package/dist/cjs/hardware-back-button-iUuF_76h.js +121 -0
  199. package/dist/cjs/{helpers-DiOgV5hw.js → helpers-Cv23MFHM.js} +4 -71
  200. package/dist/cjs/{index-BaJ7_YbC.js → index-BERfRao3.js} +4 -4
  201. package/dist/cjs/{index-BxEZd5IE.js → index-CIrkNXqJ.js} +2 -2
  202. package/dist/cjs/{index-GZU9YrFc.js → index-Ct7gcRif.js} +4 -41
  203. package/dist/cjs/{index-bX3nz2vw.js → index-D81eLYUM.js} +8 -9
  204. package/dist/cjs/index-DkNv4J_i.js +10 -0
  205. package/dist/cjs/{index-Cu9JNpPi.js → index-DqmRDbxg.js} +1 -3
  206. package/dist/cjs/{index-DYRcC3bw.js → index-aC4x3Fk3.js} +15 -15
  207. package/dist/cjs/index.cjs.js +16 -16
  208. package/dist/cjs/{input-shims-BSEBw22J.js → input-shims-CFLg7uzj.js} +17 -18
  209. package/dist/cjs/{input.utils-D68wgI2Y.js → input.utils-DetjmtH2.js} +5 -5
  210. package/dist/cjs/ion-accordion_2.cjs.entry.js +29 -61
  211. package/dist/cjs/ion-action-sheet.cjs.entry.js +22 -41
  212. package/dist/cjs/ion-alert.cjs.entry.js +41 -78
  213. package/dist/cjs/ion-app_8.cjs.entry.js +157 -292
  214. package/dist/cjs/ion-avatar_3.cjs.entry.js +13 -125
  215. package/dist/cjs/ion-back-button.cjs.entry.js +22 -31
  216. package/dist/cjs/ion-backdrop.cjs.entry.js +7 -10
  217. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +18 -54
  218. package/dist/cjs/ion-button_2.cjs.entry.js +24 -61
  219. package/dist/cjs/ion-card_5.cjs.entry.js +33 -55
  220. package/dist/cjs/ion-checkbox.cjs.entry.js +17 -37
  221. package/dist/cjs/ion-chip.cjs.entry.js +9 -50
  222. package/dist/cjs/ion-col_3.cjs.entry.js +57 -56
  223. package/dist/cjs/ion-datetime-button.cjs.entry.js +9 -13
  224. package/dist/cjs/ion-datetime_3.cjs.entry.js +46 -121
  225. package/dist/cjs/ion-fab_3.cjs.entry.js +28 -44
  226. package/dist/cjs/ion-img.cjs.entry.js +4 -8
  227. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +17 -93
  228. package/dist/cjs/ion-input-otp.cjs.entry.js +9 -74
  229. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +15 -53
  230. package/dist/cjs/ion-input.cjs.entry.js +34 -124
  231. package/dist/cjs/ion-item-option_3.cjs.entry.js +52 -467
  232. package/dist/cjs/ion-item_8.cjs.entry.js +50 -121
  233. package/dist/cjs/ion-loading.cjs.entry.js +19 -22
  234. package/dist/cjs/ion-menu_3.cjs.entry.js +29 -47
  235. package/dist/cjs/ion-modal.cjs.entry.js +146 -264
  236. package/dist/cjs/ion-nav_2.cjs.entry.js +11 -14
  237. package/dist/cjs/ion-picker-column-option.cjs.entry.js +8 -12
  238. package/dist/cjs/ion-picker-column.cjs.entry.js +14 -14
  239. package/dist/cjs/ion-picker.cjs.entry.js +6 -10
  240. package/dist/cjs/ion-popover.cjs.entry.js +19 -21
  241. package/dist/cjs/ion-progress-bar.cjs.entry.js +9 -27
  242. package/dist/cjs/ion-radio_2.cjs.entry.js +17 -35
  243. package/dist/cjs/ion-range.cjs.entry.js +13 -20
  244. package/dist/cjs/ion-refresher_2.cjs.entry.js +23 -42
  245. package/dist/cjs/ion-reorder_2.cjs.entry.js +14 -38
  246. package/dist/cjs/ion-ripple-effect.cjs.entry.js +7 -15
  247. package/dist/cjs/ion-route_4.cjs.entry.js +10 -11
  248. package/dist/cjs/ion-searchbar.cjs.entry.js +24 -137
  249. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  250. package/dist/cjs/ion-segment-view.cjs.entry.js +3 -13
  251. package/dist/cjs/ion-segment_2.cjs.entry.js +16 -23
  252. package/dist/cjs/ion-select-modal.cjs.entry.js +38 -114
  253. package/dist/cjs/ion-select_3.cjs.entry.js +108 -557
  254. package/dist/cjs/ion-spinner.cjs.entry.js +8 -30
  255. package/dist/cjs/ion-split-pane.cjs.entry.js +9 -13
  256. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +23 -147
  257. package/dist/cjs/ion-tab_2.cjs.entry.js +7 -8
  258. package/dist/cjs/ion-text.cjs.entry.js +7 -7
  259. package/dist/cjs/ion-textarea.cjs.entry.js +23 -137
  260. package/dist/cjs/ion-toast.cjs.entry.js +46 -70
  261. package/dist/cjs/ion-toggle.cjs.entry.js +25 -82
  262. package/dist/cjs/ionic-global-B-cA6LkY.js +151 -0
  263. package/dist/cjs/ionic.cjs.js +4 -4
  264. package/dist/cjs/{ios.transition-DpFQfFfT.js → ios.transition-BOSWOaiK.js} +5 -7
  265. package/dist/cjs/{keyboard-Bn0Ppim6.js → keyboard-UuAS4D_9.js} +1 -1
  266. package/dist/cjs/{keyboard-controller-CefyW9lm.js → keyboard-controller-GXBiBRKS.js} +9 -11
  267. package/dist/cjs/{keyboard-faZBQysj.js → keyboard-hHzlEQpk.js} +3 -4
  268. package/dist/cjs/loader.cjs.js +4 -4
  269. package/dist/cjs/{md.transition-ChJcoZUH.js → md.transition-B8-wBZqt.js} +5 -6
  270. package/dist/cjs/{notch-controller-BO0UGB4F.js → notch-controller-18PzRGXd.js} +4 -4
  271. package/dist/cjs/{overlays-CFGbPUmE.js → overlays-DdtIYQUH.js} +18 -309
  272. package/dist/cjs/{status-tap-x2qDo5QR.js → status-tap-BXX8H8_Y.js} +3 -4
  273. package/dist/cjs/{swipe-back-CvZt_4YX.js → swipe-back-C0GCB18x.js} +2 -3
  274. package/dist/cjs/{theme-IlOsGAz7.js → theme-CeDs6Hcv.js} +1 -25
  275. package/dist/cjs/validity-BpS37YFM.js +19 -0
  276. package/dist/collection/collection-manifest.json +1 -9
  277. package/dist/collection/components/accordion/accordion.ios.css +58 -73
  278. package/dist/collection/components/accordion/accordion.js +27 -41
  279. package/dist/collection/components/accordion/accordion.md.css +59 -67
  280. package/dist/collection/components/accordion-group/accordion-group.ios.css +4 -16
  281. package/dist/collection/components/accordion-group/accordion-group.js +8 -44
  282. package/dist/collection/components/accordion-group/accordion-group.md.css +4 -22
  283. package/dist/collection/components/action-sheet/action-sheet.ios.css +11 -367
  284. package/dist/collection/components/action-sheet/action-sheet.js +13 -32
  285. package/dist/collection/components/action-sheet/action-sheet.md.css +10 -306
  286. package/dist/collection/components/alert/alert.ios.css +19 -481
  287. package/dist/collection/components/alert/alert.js +30 -67
  288. package/dist/collection/components/alert/alert.md.css +29 -464
  289. package/dist/collection/components/app/app.js +83 -15
  290. package/dist/collection/components/avatar/avatar.ios.css +33 -7
  291. package/dist/collection/components/avatar/avatar.js +4 -120
  292. package/dist/collection/components/avatar/avatar.md.css +0 -51
  293. package/dist/collection/components/back-button/back-button.ios.css +48 -60
  294. package/dist/collection/components/back-button/back-button.js +19 -27
  295. package/dist/collection/components/back-button/back-button.md.css +48 -60
  296. package/dist/collection/components/backdrop/backdrop.ios.css +19 -56
  297. package/dist/collection/components/backdrop/backdrop.js +6 -12
  298. package/dist/collection/components/backdrop/backdrop.md.css +19 -56
  299. package/dist/collection/components/badge/badge.ios.css +12 -137
  300. package/dist/collection/components/badge/badge.js +9 -145
  301. package/dist/collection/components/badge/badge.md.css +12 -122
  302. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +8 -20
  303. package/dist/collection/components/breadcrumb/breadcrumb.js +11 -43
  304. package/dist/collection/components/breadcrumb/breadcrumb.md.css +8 -20
  305. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +0 -6
  306. package/dist/collection/components/breadcrumbs/breadcrumbs.js +9 -11
  307. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +0 -6
  308. package/dist/collection/components/button/button.ios.css +46 -154
  309. package/dist/collection/components/button/button.js +27 -63
  310. package/dist/collection/components/button/button.md.css +50 -150
  311. package/dist/collection/components/buttons/buttons.ios.css +7 -59
  312. package/dist/collection/components/buttons/buttons.js +9 -15
  313. package/dist/collection/components/buttons/buttons.md.css +3 -55
  314. package/dist/collection/components/card/card.ios.css +14 -65
  315. package/dist/collection/components/card/card.js +10 -41
  316. package/dist/collection/components/card/card.md.css +14 -65
  317. package/dist/collection/components/card-content/card-content.ios.css +35 -20
  318. package/dist/collection/components/card-content/card-content.js +10 -12
  319. package/dist/collection/components/card-content/card-content.md.css +35 -20
  320. package/dist/collection/components/card-header/card-header.ios.css +15 -27
  321. package/dist/collection/components/card-header/card-header.js +10 -13
  322. package/dist/collection/components/card-header/card-header.md.css +15 -27
  323. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +0 -12
  324. package/dist/collection/components/card-subtitle/card-subtitle.js +8 -11
  325. package/dist/collection/components/card-subtitle/card-subtitle.md.css +0 -12
  326. package/dist/collection/components/card-title/card-title.ios.css +0 -73
  327. package/dist/collection/components/card-title/card-title.js +8 -11
  328. package/dist/collection/components/card-title/card-title.md.css +0 -73
  329. package/dist/collection/components/checkbox/checkbox.ios.css +99 -163
  330. package/dist/collection/components/checkbox/checkbox.js +15 -73
  331. package/dist/collection/components/checkbox/checkbox.md.css +100 -164
  332. package/dist/collection/components/chip/chip.ios.css +14 -67
  333. package/dist/collection/components/chip/chip.js +8 -108
  334. package/dist/collection/components/chip/chip.md.css +14 -67
  335. package/dist/collection/components/col/col.css +4 -192
  336. package/dist/collection/components/col/col.js +61 -211
  337. package/dist/collection/components/content/content.css +2 -8
  338. package/dist/collection/components/content/content.js +11 -16
  339. package/dist/collection/components/datetime/datetime.ios.css +106 -302
  340. package/dist/collection/components/datetime/datetime.js +20 -97
  341. package/dist/collection/components/datetime/datetime.md.css +96 -293
  342. package/dist/collection/components/datetime/utils/data.js +5 -5
  343. package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -6
  344. package/dist/collection/components/datetime-button/datetime-button.js +8 -11
  345. package/dist/collection/components/datetime-button/datetime-button.md.css +0 -6
  346. package/dist/collection/components/fab/fab.css +1 -25
  347. package/dist/collection/components/fab/fab.js +5 -9
  348. package/dist/collection/components/fab-button/fab-button.ios.css +6 -18
  349. package/dist/collection/components/fab-button/fab-button.js +21 -36
  350. package/dist/collection/components/fab-button/fab-button.md.css +8 -20
  351. package/dist/collection/components/fab-list/fab-list.css +0 -12
  352. package/dist/collection/components/fab-list/fab-list.js +5 -9
  353. package/dist/collection/components/footer/footer.ios.css +2 -14
  354. package/dist/collection/components/footer/footer.js +16 -21
  355. package/dist/collection/components/footer/footer.md.css +0 -12
  356. package/dist/collection/components/grid/grid.css +0 -12
  357. package/dist/collection/components/grid/grid.js +5 -9
  358. package/dist/collection/components/header/header.ios.css +10 -25
  359. package/dist/collection/components/header/header.js +19 -50
  360. package/dist/collection/components/header/header.md.css +8 -23
  361. package/dist/collection/components/header/header.utils.js +5 -5
  362. package/dist/collection/components/img/img.js +2 -8
  363. package/dist/collection/components/infinite-scroll/infinite-scroll.js +5 -100
  364. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -12
  365. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +10 -16
  366. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -12
  367. package/dist/collection/components/input/input.ios.css +137 -224
  368. package/dist/collection/components/input/input.js +37 -148
  369. package/dist/collection/components/input/input.md.css +209 -194
  370. package/dist/collection/components/input-otp/input-otp.ios.css +60 -105
  371. package/dist/collection/components/input-otp/input-otp.js +7 -74
  372. package/dist/collection/components/input-otp/input-otp.md.css +60 -105
  373. package/dist/collection/components/input-password-toggle/input-password-toggle.js +12 -48
  374. package/dist/collection/components/item/item.ios.css +69 -109
  375. package/dist/collection/components/item/item.js +21 -56
  376. package/dist/collection/components/item/item.md.css +68 -120
  377. package/dist/collection/components/item-divider/item-divider.ios.css +0 -18
  378. package/dist/collection/components/item-divider/item-divider.js +8 -11
  379. package/dist/collection/components/item-divider/item-divider.md.css +0 -18
  380. package/dist/collection/components/item-group/item-group.ios.css +0 -12
  381. package/dist/collection/components/item-group/item-group.js +7 -13
  382. package/dist/collection/components/item-group/item-group.md.css +0 -12
  383. package/dist/collection/components/item-option/item-option.ios.css +29 -136
  384. package/dist/collection/components/item-option/item-option.js +9 -73
  385. package/dist/collection/components/item-option/item-option.md.css +29 -136
  386. package/dist/collection/components/item-options/item-options.ios.css +34 -77
  387. package/dist/collection/components/item-options/item-options.js +7 -13
  388. package/dist/collection/components/item-options/item-options.md.css +34 -77
  389. package/dist/collection/components/item-sliding/{item-sliding.native.css → item-sliding.css} +9 -84
  390. package/dist/collection/components/item-sliding/item-sliding.js +35 -421
  391. package/dist/collection/components/item-sliding/test/test.utils.js +0 -13
  392. package/dist/collection/components/label/label.ios.css +0 -18
  393. package/dist/collection/components/label/label.js +8 -11
  394. package/dist/collection/components/label/label.md.css +0 -18
  395. package/dist/collection/components/list/list.ios.css +14 -54
  396. package/dist/collection/components/list/list.js +9 -48
  397. package/dist/collection/components/list/list.md.css +16 -56
  398. package/dist/collection/components/list-header/list-header.ios.css +38 -82
  399. package/dist/collection/components/list-header/list-header.js +8 -11
  400. package/dist/collection/components/list-header/list-header.md.css +38 -82
  401. package/dist/collection/components/loading/loading.ios.css +1 -13
  402. package/dist/collection/components/loading/loading.js +11 -14
  403. package/dist/collection/components/loading/loading.md.css +1 -13
  404. package/dist/collection/components/menu/menu.ios.css +3 -15
  405. package/dist/collection/components/menu/menu.js +7 -12
  406. package/dist/collection/components/menu/menu.md.css +3 -15
  407. package/dist/collection/components/menu-button/menu-button.ios.css +14 -48
  408. package/dist/collection/components/menu-button/menu-button.js +10 -26
  409. package/dist/collection/components/menu-button/menu-button.md.css +15 -49
  410. package/dist/collection/components/menu-toggle/menu-toggle.js +5 -8
  411. package/dist/collection/components/modal/animations/sheet.js +2 -8
  412. package/dist/collection/components/modal/gestures/sheet.js +10 -76
  413. package/dist/collection/components/modal/modal.ios.css +70 -178
  414. package/dist/collection/components/modal/modal.js +20 -52
  415. package/dist/collection/components/modal/modal.md.css +70 -178
  416. package/dist/collection/components/nav/nav.css +1 -7
  417. package/dist/collection/components/nav/nav.js +5 -11
  418. package/dist/collection/components/nav-link/nav-link.js +1 -5
  419. package/dist/collection/components/note/note.ios.css +0 -12
  420. package/dist/collection/components/note/note.js +8 -11
  421. package/dist/collection/components/note/note.md.css +0 -12
  422. package/dist/collection/components/picker/picker.ios.css +3 -15
  423. package/dist/collection/components/picker/picker.js +5 -8
  424. package/dist/collection/components/picker/picker.md.css +3 -15
  425. package/dist/collection/components/picker-column/picker-column.css +2 -9
  426. package/dist/collection/components/picker-column/picker-column.js +7 -8
  427. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
  428. package/dist/collection/components/picker-column-option/picker-column-option.js +7 -13
  429. package/dist/collection/components/picker-column-option/picker-column-option.md.css +0 -6
  430. package/dist/collection/components/picker-legacy/picker.ios.css +1 -13
  431. package/dist/collection/components/picker-legacy/picker.js +6 -7
  432. package/dist/collection/components/picker-legacy/picker.md.css +1 -13
  433. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -12
  434. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  435. package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -12
  436. package/dist/collection/components/popover/popover.ios.css +1 -29
  437. package/dist/collection/components/popover/popover.js +15 -18
  438. package/dist/collection/components/popover/popover.md.css +1 -29
  439. package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -48
  440. package/dist/collection/components/progress-bar/progress-bar.js +7 -43
  441. package/dist/collection/components/progress-bar/progress-bar.md.css +17 -48
  442. package/dist/collection/components/radio/radio.ios.css +91 -134
  443. package/dist/collection/components/radio/radio.js +9 -14
  444. package/dist/collection/components/radio/radio.md.css +91 -134
  445. package/dist/collection/components/radio-group/radio-group.ios.css +19 -43
  446. package/dist/collection/components/radio-group/radio-group.js +7 -48
  447. package/dist/collection/components/radio-group/radio-group.md.css +19 -43
  448. package/dist/collection/components/range/range.ios.css +85 -128
  449. package/dist/collection/components/range/range.js +10 -16
  450. package/dist/collection/components/range/range.md.css +85 -128
  451. package/dist/collection/components/refresher/refresher.ios.css +1 -14
  452. package/dist/collection/components/refresher/refresher.js +8 -11
  453. package/dist/collection/components/refresher/refresher.md.css +2 -15
  454. package/dist/collection/components/refresher-content/refresher-content.js +7 -28
  455. package/dist/collection/components/reorder/reorder.ios.css +0 -6
  456. package/dist/collection/components/reorder/reorder.js +6 -33
  457. package/dist/collection/components/reorder/reorder.md.css +0 -6
  458. package/dist/collection/components/reorder-group/reorder-group.css +0 -6
  459. package/dist/collection/components/reorder-group/reorder-group.js +4 -8
  460. package/dist/collection/components/ripple-effect/{ripple-effect.common.css → ripple-effect.css} +1 -7
  461. package/dist/collection/components/ripple-effect/ripple-effect.js +6 -14
  462. package/dist/collection/components/route/route.js +0 -4
  463. package/dist/collection/components/router/router.js +0 -4
  464. package/dist/collection/components/router-link/router-link.css +2 -8
  465. package/dist/collection/components/router-link/router-link.js +5 -9
  466. package/dist/collection/components/router-outlet/router-outlet.css +1 -7
  467. package/dist/collection/components/router-outlet/router-outlet.js +3 -6
  468. package/dist/collection/components/row/row.css +0 -16
  469. package/dist/collection/components/row/row.js +2 -9
  470. package/dist/collection/components/searchbar/searchbar.ios.css +18 -56
  471. package/dist/collection/components/searchbar/searchbar.js +33 -180
  472. package/dist/collection/components/searchbar/searchbar.md.css +18 -56
  473. package/dist/collection/components/segment/segment.ios.css +2 -45
  474. package/dist/collection/components/segment/segment.js +8 -11
  475. package/dist/collection/components/segment/segment.md.css +2 -45
  476. package/dist/collection/components/segment-button/segment-button.ios.css +105 -146
  477. package/dist/collection/components/segment-button/segment-button.js +8 -11
  478. package/dist/collection/components/segment-button/segment-button.md.css +107 -148
  479. package/dist/collection/components/segment-content/segment-content.js +1 -1
  480. package/dist/collection/components/segment-view/segment-view.ios.css +0 -6
  481. package/dist/collection/components/segment-view/segment-view.js +4 -13
  482. package/dist/collection/components/segment-view/segment-view.md.css +0 -6
  483. package/dist/collection/components/select/select.ios.css +176 -348
  484. package/dist/collection/components/select/select.js +92 -521
  485. package/dist/collection/components/select/select.md.css +178 -364
  486. package/dist/collection/components/select-modal/select-modal.ios.css +0 -466
  487. package/dist/collection/components/select-modal/select-modal.js +30 -126
  488. package/dist/collection/components/select-modal/select-modal.md.css +0 -394
  489. package/dist/collection/components/select-option/select-option.js +4 -72
  490. package/dist/collection/components/select-popover/select-popover.ios.css +20 -302
  491. package/dist/collection/components/select-popover/select-popover.js +29 -89
  492. package/dist/collection/components/select-popover/select-popover.md.css +0 -345
  493. package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
  494. package/dist/collection/components/skeleton-text/skeleton-text.js +5 -9
  495. package/dist/collection/components/spinner/{spinner.ionic.css → spinner.css} +10 -78
  496. package/dist/collection/components/spinner/spinner.js +6 -47
  497. package/dist/collection/components/split-pane/split-pane.ios.css +2 -20
  498. package/dist/collection/components/split-pane/split-pane.js +8 -15
  499. package/dist/collection/components/split-pane/split-pane.md.css +2 -20
  500. package/dist/collection/components/tab/tab.js +2 -6
  501. package/dist/collection/components/tab-bar/tab-bar.ios.css +43 -71
  502. package/dist/collection/components/tab-bar/tab-bar.js +13 -171
  503. package/dist/collection/components/tab-bar/tab-bar.md.css +43 -71
  504. package/dist/collection/components/tab-button/tab-button.ios.css +95 -171
  505. package/dist/collection/components/tab-button/tab-button.js +9 -54
  506. package/dist/collection/components/tab-button/tab-button.md.css +93 -137
  507. package/dist/collection/components/tabs/tabs.css +1 -7
  508. package/dist/collection/components/tabs/tabs.js +1 -4
  509. package/dist/collection/components/text/text.css +0 -6
  510. package/dist/collection/components/text/text.js +6 -7
  511. package/dist/collection/components/textarea/textarea.ios.css +158 -298
  512. package/dist/collection/components/textarea/textarea.js +24 -162
  513. package/dist/collection/components/textarea/textarea.md.css +159 -312
  514. package/dist/collection/components/thumbnail/thumbnail.css +0 -6
  515. package/dist/collection/components/thumbnail/thumbnail.js +2 -9
  516. package/dist/collection/components/title/title.ios.css +4 -32
  517. package/dist/collection/components/title/title.js +7 -13
  518. package/dist/collection/components/title/title.md.css +4 -32
  519. package/dist/collection/components/toast/animations/utils.js +1 -1
  520. package/dist/collection/components/toast/toast.ios.css +45 -84
  521. package/dist/collection/components/toast/toast.js +13 -76
  522. package/dist/collection/components/toast/toast.md.css +45 -84
  523. package/dist/collection/components/toggle/toggle.ios.css +131 -247
  524. package/dist/collection/components/toggle/toggle.js +18 -73
  525. package/dist/collection/components/toggle/toggle.md.css +131 -244
  526. package/dist/collection/components/toolbar/toolbar.ios.css +47 -90
  527. package/dist/collection/components/toolbar/toolbar.js +13 -218
  528. package/dist/collection/components/toolbar/toolbar.md.css +47 -90
  529. package/dist/collection/global/ionic-global.js +13 -241
  530. package/dist/collection/utils/focus-trap.js +2 -13
  531. package/dist/collection/utils/focus-visible.js +0 -22
  532. package/dist/collection/utils/forms/validity.js +0 -31
  533. package/dist/collection/utils/framework-delegate.js +1 -3
  534. package/dist/collection/utils/hardware-back-button.js +0 -15
  535. package/dist/collection/utils/helpers.js +3 -70
  536. package/dist/collection/utils/keyboard/keyboard-controller.js +1 -3
  537. package/dist/collection/utils/media.js +0 -1
  538. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  539. package/dist/collection/utils/menu-controller/animations/push.js +1 -2
  540. package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
  541. package/dist/collection/utils/overlays.js +8 -290
  542. package/dist/collection/utils/sanitization/index.js +18 -274
  543. package/dist/collection/utils/test/playwright/drag-element.js +9 -32
  544. package/dist/collection/utils/test/playwright/generator.js +23 -48
  545. package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -14
  546. package/dist/collection/utils/test/playwright/page/utils/set-content.js +3 -26
  547. package/dist/collection/utils/theme.js +1 -25
  548. package/dist/collection/utils/transition/ios.transition.js +0 -1
  549. package/dist/docs.json +284 -8976
  550. package/dist/esm/{animation-B2qdQ_ou.js → animation-DLJpuoEz.js} +2 -2
  551. package/dist/esm/{app-globals-DZ-iIjxA.js → app-globals-D0C5S4hU.js} +1 -1
  552. package/dist/esm/{button-active-BmajAby6.js → button-active-BSpTQmS9.js} +2 -2
  553. package/dist/esm/{capacitor-CtQSWUU0.js → capacitor-CFERIeaU.js} +1 -1
  554. package/dist/esm/config-DQCONYYp.js +195 -0
  555. package/dist/{cjs/focus-visible-BIj-I3-C.js → esm/focus-visible-BmVRXR1y.js} +1 -27
  556. package/dist/esm/{format-2WlZcMvG.js → format-CAmvpAez.js} +1 -1
  557. package/dist/esm/{framework-delegate-DO2QXccA.js → framework-delegate-FnPGymXL.js} +2 -4
  558. package/dist/esm/{haptic-DFgKNCce.js → haptic-DzAMWJuk.js} +1 -1
  559. package/dist/esm/hardware-back-button-B93Gru0Y.js +115 -0
  560. package/dist/esm/{helpers-DfF5_wJc.js → helpers-HEqiOzXb.js} +5 -71
  561. package/dist/esm/{index-BjaaZqVY.js → index-BRHzoo00.js} +3 -4
  562. package/dist/esm/{index-BIUWGRUl.js → index-B_dQk_WE.js} +4 -4
  563. package/dist/esm/{index-1y3VhUSy.js → index-DV3sJJW8.js} +2 -3
  564. package/dist/esm/{index-KxK0gcRp.js → index-MEDq2S8l.js} +2 -2
  565. package/dist/esm/{index-Di034G4O.js → index-Q6UPU0Ay.js} +11 -11
  566. package/dist/esm/index-ZjP4CjeZ.js +7 -0
  567. package/dist/esm/{index-C0EQceqV.js → index-tcQvqkiX.js} +4 -41
  568. package/dist/esm/index.js +14 -14
  569. package/dist/esm/{input-shims-DvNNw70a.js → input-shims-D10mwcw1.js} +6 -7
  570. package/dist/esm/{input.utils-_LkBfBWt.js → input.utils-Y6NgW8bw.js} +3 -3
  571. package/dist/esm/ion-accordion_2.entry.js +29 -61
  572. package/dist/esm/ion-action-sheet.entry.js +22 -41
  573. package/dist/esm/ion-alert.entry.js +40 -77
  574. package/dist/esm/ion-app_8.entry.js +157 -292
  575. package/dist/esm/ion-avatar_3.entry.js +13 -125
  576. package/dist/esm/ion-back-button.entry.js +22 -31
  577. package/dist/esm/ion-backdrop.entry.js +7 -10
  578. package/dist/esm/ion-breadcrumb_2.entry.js +18 -54
  579. package/dist/esm/ion-button_2.entry.js +24 -61
  580. package/dist/esm/ion-card_5.entry.js +33 -55
  581. package/dist/esm/ion-checkbox.entry.js +17 -37
  582. package/dist/esm/ion-chip.entry.js +9 -50
  583. package/dist/esm/ion-col_3.entry.js +57 -56
  584. package/dist/esm/ion-datetime-button.entry.js +9 -13
  585. package/dist/esm/ion-datetime_3.entry.js +46 -121
  586. package/dist/esm/ion-fab_3.entry.js +28 -44
  587. package/dist/esm/ion-img.entry.js +4 -8
  588. package/dist/esm/ion-infinite-scroll_2.entry.js +16 -92
  589. package/dist/esm/ion-input-otp.entry.js +9 -74
  590. package/dist/esm/ion-input-password-toggle.entry.js +15 -53
  591. package/dist/esm/ion-input.entry.js +34 -124
  592. package/dist/esm/ion-item-option_3.entry.js +52 -467
  593. package/dist/esm/ion-item_8.entry.js +50 -121
  594. package/dist/esm/ion-loading.entry.js +18 -21
  595. package/dist/esm/ion-menu_3.entry.js +29 -47
  596. package/dist/esm/ion-modal.entry.js +99 -217
  597. package/dist/esm/ion-nav_2.entry.js +11 -14
  598. package/dist/esm/ion-picker-column-option.entry.js +8 -12
  599. package/dist/esm/ion-picker-column.entry.js +13 -13
  600. package/dist/esm/ion-picker.entry.js +6 -10
  601. package/dist/esm/ion-popover.entry.js +19 -21
  602. package/dist/esm/ion-progress-bar.entry.js +9 -27
  603. package/dist/esm/ion-radio_2.entry.js +17 -35
  604. package/dist/esm/ion-range.entry.js +13 -20
  605. package/dist/esm/ion-refresher_2.entry.js +21 -40
  606. package/dist/esm/ion-reorder_2.entry.js +14 -38
  607. package/dist/esm/ion-ripple-effect.entry.js +7 -15
  608. package/dist/esm/ion-route_4.entry.js +10 -11
  609. package/dist/esm/ion-searchbar.entry.js +24 -137
  610. package/dist/esm/ion-segment-content.entry.js +2 -2
  611. package/dist/esm/ion-segment-view.entry.js +3 -13
  612. package/dist/esm/ion-segment_2.entry.js +16 -23
  613. package/dist/esm/ion-select-modal.entry.js +38 -114
  614. package/dist/esm/ion-select_3.entry.js +108 -557
  615. package/dist/esm/ion-spinner.entry.js +8 -30
  616. package/dist/esm/ion-split-pane.entry.js +9 -13
  617. package/dist/esm/ion-tab-bar_2.entry.js +23 -147
  618. package/dist/esm/ion-tab_2.entry.js +7 -8
  619. package/dist/esm/ion-text.entry.js +7 -7
  620. package/dist/esm/ion-textarea.entry.js +23 -137
  621. package/dist/esm/ion-toast.entry.js +21 -45
  622. package/dist/esm/ion-toggle.entry.js +25 -82
  623. package/dist/esm/ionic-global-Cp_eT4sZ.js +146 -0
  624. package/dist/esm/ionic.js +5 -5
  625. package/dist/esm/{ios.transition-CgScDbsb.js → ios.transition-ClFrsIrS.js} +5 -7
  626. package/dist/esm/{keyboard-CyyguLDw.js → keyboard-CUw4ekVy.js} +1 -1
  627. package/dist/esm/{keyboard-controller-BFwRdk2T.js → keyboard-controller-BaaVITYt.js} +3 -5
  628. package/dist/esm/{keyboard-WJix-wcz.js → keyboard-ywgs5efA.js} +3 -4
  629. package/dist/esm/loader.js +5 -5
  630. package/dist/esm/{md.transition-DThqYazt.js → md.transition-D0msQmzI.js} +5 -6
  631. package/dist/esm/{notch-controller-MTblRxjD.js → notch-controller-DKDjU_O7.js} +2 -2
  632. package/dist/esm/{overlays-tv6nLsmk.js → overlays-Dg0q2_tJ.js} +15 -306
  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 +165 -2672
  638. package/dist/ionic/index.esm.js +1 -1
  639. package/dist/ionic/ionic.esm.js +1 -1
  640. package/dist/ionic/p-01f81ea5.entry.js +4 -0
  641. package/dist/ionic/p-06c232a4.entry.js +4 -0
  642. package/dist/ionic/p-0dc33652.entry.js +4 -0
  643. package/dist/ionic/p-0fa9c382.entry.js +4 -0
  644. package/dist/ionic/p-20b1a044.entry.js +4 -0
  645. package/dist/ionic/p-21eb76d5.entry.js +4 -0
  646. package/dist/ionic/p-27d30585.entry.js +4 -0
  647. package/dist/ionic/p-2a05aa64.entry.js +4 -0
  648. package/dist/ionic/p-2bb2cb18.entry.js +4 -0
  649. package/dist/ionic/p-3353c229.entry.js +4 -0
  650. package/dist/ionic/p-34586ead.entry.js +4 -0
  651. package/dist/ionic/p-37e720da.entry.js +4 -0
  652. package/dist/ionic/p-390ca786.entry.js +4 -0
  653. package/dist/ionic/p-3a126bca.entry.js +4 -0
  654. package/dist/ionic/p-3a7d1e91.entry.js +4 -0
  655. package/dist/ionic/p-3ae5f277.entry.js +4 -0
  656. package/dist/ionic/p-4745f534.entry.js +4 -0
  657. package/dist/ionic/p-4858af1f.entry.js +4 -0
  658. package/dist/ionic/p-485fda23.entry.js +4 -0
  659. package/dist/ionic/p-4baa5b82.entry.js +4 -0
  660. package/dist/ionic/p-4e92a11f.entry.js +4 -0
  661. package/dist/ionic/p-5018dfc8.entry.js +4 -0
  662. package/dist/ionic/p-50e1194a.entry.js +4 -0
  663. package/dist/ionic/p-5d1da0a2.entry.js +4 -0
  664. package/dist/ionic/p-5eb8e86d.entry.js +4 -0
  665. package/dist/ionic/p-65ebdf1b.entry.js +4 -0
  666. package/dist/ionic/p-6ebdbebe.entry.js +4 -0
  667. package/dist/ionic/p-75dc25ba.entry.js +4 -0
  668. package/dist/ionic/p-84d5ce05.entry.js +4 -0
  669. package/dist/ionic/p-874b4bd8.entry.js +4 -0
  670. package/dist/ionic/p-8c8eee7d.entry.js +4 -0
  671. package/dist/ionic/p-8eb8ee76.entry.js +4 -0
  672. package/dist/ionic/p-8fce95d5.entry.js +4 -0
  673. package/dist/ionic/p-9a65ac7f.entry.js +4 -0
  674. package/dist/ionic/p-9eeaBrnk.js +4 -0
  675. package/dist/ionic/p-9f1103ce.entry.js +4 -0
  676. package/dist/ionic/p-9f9db3a2.entry.js +4 -0
  677. package/dist/ionic/p-BGqMS-oh.js +4 -0
  678. package/dist/ionic/p-BUFIpxKM.js +4 -0
  679. package/dist/ionic/p-BmVRXR1y.js +4 -0
  680. package/dist/ionic/{p-7k7Q1A38.js → p-C0eMdTCW.js} +1 -1
  681. package/dist/ionic/p-CFlfIb2g.js +4 -0
  682. package/dist/ionic/p-CIGNaXM1.js +4 -0
  683. package/dist/ionic/{p-OkgYzj-7.js → p-CKvCXMs9.js} +1 -1
  684. package/dist/ionic/p-CtWGkNnJ.js +4 -0
  685. package/dist/ionic/p-Cx3IXROA.js +4 -0
  686. package/dist/ionic/p-D-3ycHmd.js +4 -0
  687. package/dist/ionic/{p-DQDmksdT.js → p-D13Eaw-8.js} +1 -1
  688. package/dist/ionic/p-D4uTWt4-.js +4 -0
  689. package/dist/ionic/p-DC3RagnA.js +4 -0
  690. package/dist/ionic/p-DIuEbVLu.js +4 -0
  691. package/dist/ionic/p-DJztqcrH.js +4 -0
  692. package/dist/ionic/p-DSG2s2Eb.js +4 -0
  693. package/dist/ionic/p-DV3sJJW8.js +4 -0
  694. package/dist/ionic/p-Dfbt-q2k.js +4 -0
  695. package/dist/ionic/p-DiVJyqlX.js +4 -0
  696. package/dist/ionic/p-DoJvtrbw.js +4 -0
  697. package/dist/ionic/p-DzWaWHGc.js +4 -0
  698. package/dist/ionic/p-KjNvRoEp.js +4 -0
  699. package/dist/ionic/p-Nqf6uvGh.js +4 -0
  700. package/dist/ionic/p-SNAkTDfm.js +4 -0
  701. package/{components/p-DmVUl5t4.js → dist/ionic/p-VAemlbDS.js} +1 -1
  702. package/dist/ionic/{p-oUgyLDGL.js → p-Wk5HzclC.js} +1 -1
  703. package/dist/ionic/p-ZjP4CjeZ.js +4 -0
  704. package/dist/ionic/p-a21add2f.entry.js +4 -0
  705. package/dist/ionic/p-a3bdcae6.entry.js +4 -0
  706. package/dist/ionic/p-ad306193.entry.js +4 -0
  707. package/dist/ionic/p-b6a7397c.entry.js +4 -0
  708. package/dist/ionic/p-c0fb8edd.entry.js +4 -0
  709. package/dist/ionic/p-c38b648e.entry.js +4 -0
  710. package/dist/ionic/p-c4d8641b.entry.js +4 -0
  711. package/dist/ionic/p-c6e49f3f.entry.js +4 -0
  712. package/dist/ionic/p-ca2ab74d.entry.js +4 -0
  713. package/dist/ionic/p-d889ff6d.entry.js +4 -0
  714. package/dist/ionic/p-dfa8d673.entry.js +4 -0
  715. package/dist/ionic/p-e0be05c5.entry.js +4 -0
  716. package/dist/ionic/p-ec090e0a.entry.js +4 -0
  717. package/dist/ionic/p-ef4c3bee.entry.js +4 -0
  718. package/dist/ionic/p-f386f6ae.entry.js +4 -0
  719. package/dist/ionic/p-fabcce6c.entry.js +4 -0
  720. package/dist/ionic/p-mjKAFv89.js +4 -0
  721. package/dist/ionic/p-tcQvqkiX.js +5 -0
  722. package/dist/ionic/p-viFHDgRs.js +4 -0
  723. package/dist/ionic/p-xWb6fgfq.js +4 -0
  724. package/dist/types/components/accordion/accordion.d.ts +3 -6
  725. package/dist/types/components/accordion-group/accordion-group.d.ts +1 -12
  726. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
  727. package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
  728. package/dist/types/components/alert/alert-interface.d.ts +7 -3
  729. package/dist/types/components/alert/alert.d.ts +2 -3
  730. package/dist/types/components/app/app.d.ts +5 -4
  731. package/dist/types/components/avatar/avatar.d.ts +0 -32
  732. package/dist/types/components/back-button/back-button.d.ts +1 -2
  733. package/dist/types/components/backdrop/backdrop.d.ts +0 -4
  734. package/dist/types/components/badge/badge.d.ts +1 -34
  735. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -4
  736. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  737. package/dist/types/components/button/button.d.ts +8 -23
  738. package/dist/types/components/buttons/buttons.d.ts +1 -5
  739. package/dist/types/components/card/card.d.ts +1 -8
  740. package/dist/types/components/card-content/card-content.d.ts +1 -2
  741. package/dist/types/components/card-header/card-header.d.ts +2 -3
  742. package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
  743. package/dist/types/components/card-title/card-title.d.ts +1 -2
  744. package/dist/types/components/checkbox/checkbox.d.ts +4 -14
  745. package/dist/types/components/chip/chip.d.ts +1 -26
  746. package/dist/types/components/col/col.d.ts +5 -52
  747. package/dist/types/components/content/content.d.ts +0 -3
  748. package/dist/types/components/datetime/datetime.d.ts +1 -26
  749. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  750. package/dist/types/components/datetime-button/datetime-button.d.ts +1 -2
  751. package/dist/types/components/fab/fab.d.ts +0 -4
  752. package/dist/types/components/fab-button/fab-button.d.ts +3 -5
  753. package/dist/types/components/fab-list/fab-list.d.ts +0 -4
  754. package/dist/types/components/footer/footer.d.ts +3 -4
  755. package/dist/types/components/grid/grid.d.ts +0 -4
  756. package/dist/types/components/header/header.d.ts +3 -9
  757. package/dist/types/components/header/header.utils.d.ts +3 -3
  758. package/dist/types/components/img/img.d.ts +0 -3
  759. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -21
  760. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +0 -4
  761. package/dist/types/components/input/input.d.ts +5 -31
  762. package/dist/types/components/input-otp/input-otp.d.ts +0 -37
  763. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +0 -2
  764. package/dist/types/components/item/item.d.ts +4 -11
  765. package/dist/types/components/item-divider/item-divider.d.ts +1 -2
  766. package/dist/types/components/item-group/item-group.d.ts +0 -4
  767. package/dist/types/components/item-option/item-option.d.ts +1 -18
  768. package/dist/types/components/item-options/item-options.d.ts +0 -4
  769. package/dist/types/components/item-sliding/item-sliding.d.ts +1 -47
  770. package/dist/types/components/item-sliding/test/test.utils.d.ts +0 -13
  771. package/dist/types/components/label/label.d.ts +1 -2
  772. package/dist/types/components/list/list.d.ts +1 -15
  773. package/dist/types/components/list-header/list-header.d.ts +1 -2
  774. package/dist/types/components/loading/loading-interface.d.ts +7 -2
  775. package/dist/types/components/loading/loading.d.ts +2 -3
  776. package/dist/types/components/menu/menu.d.ts +0 -3
  777. package/dist/types/components/menu-button/menu-button.d.ts +1 -3
  778. package/dist/types/components/menu-toggle/menu-toggle.d.ts +0 -3
  779. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  780. package/dist/types/components/modal/modal-interface.d.ts +7 -4
  781. package/dist/types/components/modal/modal.d.ts +1 -11
  782. package/dist/types/components/nav/nav-interface.d.ts +1 -9
  783. package/dist/types/components/nav/nav.d.ts +1 -5
  784. package/dist/types/components/nav-link/nav-link.d.ts +0 -4
  785. package/dist/types/components/note/note.d.ts +1 -2
  786. package/dist/types/components/picker/picker.d.ts +1 -2
  787. package/dist/types/components/picker-column/picker-column.d.ts +1 -2
  788. package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
  789. package/dist/types/components/picker-legacy/picker.d.ts +1 -2
  790. package/dist/types/components/popover/popover-interface.d.ts +6 -3
  791. package/dist/types/components/popover/popover.d.ts +5 -6
  792. package/dist/types/components/progress-bar/progress-bar.d.ts +1 -10
  793. package/dist/types/components/radio/radio.d.ts +1 -2
  794. package/dist/types/components/radio-group/radio-group.d.ts +0 -12
  795. package/dist/types/components/range/range.d.ts +1 -2
  796. package/dist/types/components/refresher/refresher.d.ts +1 -2
  797. package/dist/types/components/refresher-content/refresher-content.d.ts +0 -4
  798. package/dist/types/components/reorder/reorder.d.ts +0 -9
  799. package/dist/types/components/reorder-group/reorder-group.d.ts +0 -4
  800. package/dist/types/components/ripple-effect/ripple-effect.d.ts +0 -4
  801. package/dist/types/components/route/route.d.ts +0 -4
  802. package/dist/types/components/router/router.d.ts +0 -4
  803. package/dist/types/components/router-link/router-link.d.ts +0 -4
  804. package/dist/types/components/router-outlet/router-outlet.d.ts +1 -4
  805. package/dist/types/components/row/row.d.ts +0 -4
  806. package/dist/types/components/searchbar/searchbar.d.ts +9 -51
  807. package/dist/types/components/segment/segment.d.ts +1 -2
  808. package/dist/types/components/segment-button/segment-button.d.ts +1 -2
  809. package/dist/types/components/select/select-interface.d.ts +0 -31
  810. package/dist/types/components/select/select.d.ts +13 -66
  811. package/dist/types/components/select-modal/select-modal.d.ts +0 -8
  812. package/dist/types/components/select-option/select-option.d.ts +1 -45
  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.d.ts +2 -37
  819. package/dist/types/components/tab-button/tab-button.d.ts +1 -12
  820. package/dist/types/components/tabs/tabs.d.ts +0 -3
  821. package/dist/types/components/text/text.d.ts +1 -2
  822. package/dist/types/components/textarea/textarea.d.ts +4 -53
  823. package/dist/types/components/thumbnail/thumbnail.d.ts +0 -4
  824. package/dist/types/components/title/title.d.ts +0 -4
  825. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  826. package/dist/types/components/toast/toast-interface.d.ts +7 -3
  827. package/dist/types/components/toast/toast.d.ts +2 -19
  828. package/dist/types/components/toggle/toggle.d.ts +1 -15
  829. package/dist/types/components/toolbar/toolbar.d.ts +3 -43
  830. package/dist/types/components.d.ts +207 -1854
  831. package/dist/types/global/ionic-global.d.ts +2 -28
  832. package/dist/types/interface.d.ts +0 -3
  833. package/dist/types/utils/config.d.ts +2 -106
  834. package/dist/types/utils/focus-trap.d.ts +1 -1
  835. package/dist/types/utils/focus-visible.d.ts +0 -13
  836. package/dist/types/utils/forms/validity.d.ts +0 -7
  837. package/dist/types/utils/helpers.d.ts +0 -22
  838. package/dist/types/utils/overlays-interface.d.ts +1 -31
  839. package/dist/types/utils/overlays.d.ts +1 -1
  840. package/dist/types/utils/sanitization/index.d.ts +2 -58
  841. package/dist/types/utils/test/playwright/drag-element.d.ts +3 -16
  842. package/dist/types/utils/test/playwright/generator.d.ts +2 -31
  843. package/dist/types/utils/theme.d.ts +0 -9
  844. package/hydrate/index.js +1360 -6012
  845. package/hydrate/index.mjs +1360 -6012
  846. package/package.json +5 -9
  847. package/components/ion-divider.d.ts +0 -11
  848. package/components/ion-divider.js +0 -4
  849. package/components/ion-gallery-item.d.ts +0 -11
  850. package/components/ion-gallery-item.js +0 -4
  851. package/components/ion-gallery.d.ts +0 -11
  852. package/components/ion-gallery.js +0 -4
  853. package/components/p-0RwSa3tV.js +0 -4
  854. package/components/p-B8KYxaMx.js +0 -4
  855. package/components/p-BDqjX7Z_.js +0 -4
  856. package/components/p-BI03N_8J.js +0 -4
  857. package/components/p-BISCDmUD.js +0 -4
  858. package/components/p-BLlJA2Q9.js +0 -4
  859. package/components/p-BYSs-jZz.js +0 -4
  860. package/components/p-BiG3Zevl.js +0 -4
  861. package/components/p-BjW8SOqw.js +0 -4
  862. package/components/p-BoWc8hp0.js +0 -4
  863. package/components/p-BqRIq3ti.js +0 -4
  864. package/components/p-BskJOMNV.js +0 -4
  865. package/components/p-BwKpO3Is.js +0 -4
  866. package/components/p-C4q_m_U_.js +0 -4
  867. package/components/p-C9QYu-sR.js +0 -4
  868. package/components/p-CEbQglhY.js +0 -4
  869. package/components/p-CGwI_XL6.js +0 -4
  870. package/components/p-CIdlZzoM.js +0 -4
  871. package/components/p-CJCMdFb9.js +0 -4
  872. package/components/p-CODBQrPj.js +0 -4
  873. package/components/p-CVYFPBs-.js +0 -4
  874. package/components/p-CWq1hA4y.js +0 -4
  875. package/components/p-CeL9Glto.js +0 -4
  876. package/components/p-Ck_9SoHZ.js +0 -4
  877. package/components/p-Cl94E1nn.js +0 -4
  878. package/components/p-CmnPD02Z.js +0 -4
  879. package/components/p-Cog60JgJ.js +0 -4
  880. package/components/p-CyGaZ-Qb.js +0 -4
  881. package/components/p-CzFNvOq3.js +0 -4
  882. package/components/p-Czw29-II.js +0 -4
  883. package/components/p-D-Xa9lMG.js +0 -4
  884. package/components/p-D0Iqw6OZ.js +0 -4
  885. package/components/p-D1t981Ih.js +0 -4
  886. package/components/p-D4UIY4kz.js +0 -4
  887. package/components/p-D6un2jDV.js +0 -4
  888. package/components/p-D9583Eo8.js +0 -4
  889. package/components/p-DABI8XVx.js +0 -4
  890. package/components/p-DEZQwbtZ.js +0 -4
  891. package/components/p-DEnOtJ3m.js +0 -4
  892. package/components/p-DFSqPtzD.js +0 -4
  893. package/components/p-DJw3WM2A.js +0 -4
  894. package/components/p-DS1w_1X1.js +0 -4
  895. package/components/p-DaJxRxSQ.js +0 -4
  896. package/components/p-Daj5LWIm.js +0 -4
  897. package/components/p-Dg8OSVcP.js +0 -4
  898. package/components/p-Dhi5xtNS.js +0 -4
  899. package/components/p-DiKh2eQw.js +0 -4
  900. package/components/p-Dn77l_LX.js +0 -4
  901. package/components/p-DylrHLJF.js +0 -4
  902. package/components/p-I0lsm6wZ.js +0 -4
  903. package/components/p-J03hHbbL.js +0 -4
  904. package/components/p-NPsFR8Ng.js +0 -4
  905. package/components/p-TaMIMwf5.js +0 -4
  906. package/components/p-U2gyA6Z0.js +0 -4
  907. package/components/p-ZWbVyMi6.js +0 -4
  908. package/components/p-_rgGxkzx.js +0 -4
  909. package/components/p-fIOYmaqA.js +0 -4
  910. package/components/p-q8wGOPJB.js +0 -4
  911. package/components/p-vXpMhGrs.js +0 -4
  912. package/css/ionic/bundle.ionic.css +0 -1
  913. package/css/ionic/bundle.ionic.css.map +0 -1
  914. package/css/ionic/core.ionic.css +0 -1
  915. package/css/ionic/core.ionic.css.map +0 -1
  916. package/css/ionic/global.bundle.ionic.css +0 -1
  917. package/css/ionic/global.bundle.ionic.css.map +0 -1
  918. package/css/ionic/ionic-swiper.ionic.css +0 -1
  919. package/css/ionic/ionic-swiper.ionic.css.map +0 -1
  920. package/css/ionic/link.ionic.css +0 -1
  921. package/css/ionic/link.ionic.css.map +0 -1
  922. package/css/ionic/structure.ionic.css +0 -1
  923. package/css/ionic/structure.ionic.css.map +0 -1
  924. package/css/ionic/typography.ionic.css +0 -1
  925. package/css/ionic/typography.ionic.css.map +0 -1
  926. package/css/ionic/utils.bundle.ionic.css +0 -1
  927. package/css/ionic/utils.bundle.ionic.css.map +0 -1
  928. package/dist/cjs/caret-down-vtVgfXIs.js +0 -8
  929. package/dist/cjs/caret-left-CxZXLRv5.js +0 -8
  930. package/dist/cjs/caret-right-CRCgv98E.js +0 -8
  931. package/dist/cjs/config-DWdFbSNK.js +0 -35
  932. package/dist/cjs/index-Bj07IRTB.js +0 -429
  933. package/dist/cjs/ion-divider.cjs.entry.js +0 -51
  934. package/dist/cjs/ion-gallery-item.cjs.entry.js +0 -59
  935. package/dist/cjs/ion-gallery.cjs.entry.js +0 -607
  936. package/dist/cjs/ionic-global-QoUqobrQ.js +0 -519
  937. package/dist/cjs/list-a-7GSA6K.js +0 -8
  938. package/dist/cjs/overlay-control-label-DnRLQR1t.js +0 -52
  939. package/dist/cjs/select-option-render-DqBHEjDn.js +0 -124
  940. package/dist/cjs/validity-QmuwEptc.js +0 -51
  941. package/dist/cjs/x-BTF99yFH.js +0 -8
  942. package/dist/collection/components/accordion/accordion.ionic.css +0 -201
  943. package/dist/collection/components/accordion-group/accordion-group.ionic.css +0 -93
  944. package/dist/collection/components/action-sheet/action-sheet.ionic.css +0 -494
  945. package/dist/collection/components/alert/alert.ionic.css +0 -787
  946. package/dist/collection/components/avatar/avatar.ionic.css +0 -385
  947. package/dist/collection/components/backdrop/backdrop.ionic.css +0 -109
  948. package/dist/collection/components/badge/badge.ionic.css +0 -272
  949. package/dist/collection/components/button/button.ionic.css +0 -644
  950. package/dist/collection/components/buttons/buttons.ionic.css +0 -97
  951. package/dist/collection/components/card/card.ionic.css +0 -144
  952. package/dist/collection/components/card-content/card-content.ionic.css +0 -89
  953. package/dist/collection/components/card-header/card-header.ionic.css +0 -85
  954. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +0 -144
  955. package/dist/collection/components/checkbox/checkbox.ionic.css +0 -543
  956. package/dist/collection/components/chip/chip.ionic.css +0 -217
  957. package/dist/collection/components/datetime/datetime.ionic.css +0 -703
  958. package/dist/collection/components/divider/divider.ionic.css +0 -148
  959. package/dist/collection/components/divider/divider.ios.css +0 -87
  960. package/dist/collection/components/divider/divider.js +0 -94
  961. package/dist/collection/components/divider/divider.md.css +0 -87
  962. package/dist/collection/components/gallery/gallery-constants.js +0 -12
  963. package/dist/collection/components/gallery/gallery-interface.js +0 -1
  964. package/dist/collection/components/gallery/gallery.css +0 -15
  965. package/dist/collection/components/gallery/gallery.js +0 -679
  966. package/dist/collection/components/gallery/test/utils.js +0 -100
  967. package/dist/collection/components/gallery-item/gallery-item.css +0 -49
  968. package/dist/collection/components/gallery-item/gallery-item.js +0 -99
  969. package/dist/collection/components/header/header.ionic.css +0 -97
  970. package/dist/collection/components/input/input.ionic.css +0 -888
  971. package/dist/collection/components/input-otp/input-otp.ionic.css +0 -371
  972. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +0 -78
  973. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +0 -61
  974. package/dist/collection/components/item/item.ionic.css +0 -496
  975. package/dist/collection/components/item-option/item-option.ionic.css +0 -277
  976. package/dist/collection/components/item-options/item-options.ionic.css +0 -221
  977. package/dist/collection/components/item-sliding/item-sliding.ionic.css +0 -211
  978. package/dist/collection/components/list/list.ionic.css +0 -212
  979. package/dist/collection/components/list-header/list-header.ionic.css +0 -190
  980. package/dist/collection/components/menu-button/menu-button.ionic.css +0 -236
  981. package/dist/collection/components/modal/animations/ionic.enter.js +0 -40
  982. package/dist/collection/components/modal/animations/ionic.leave.js +0 -28
  983. package/dist/collection/components/modal/modal.ionic.css +0 -255
  984. package/dist/collection/components/popover/popover.ionic.css +0 -290
  985. package/dist/collection/components/progress-bar/progress-bar.ionic.css +0 -287
  986. package/dist/collection/components/radio/radio.ionic.css +0 -422
  987. package/dist/collection/components/radio-group/radio-group.ionic.css +0 -119
  988. package/dist/collection/components/range/range.ionic.css +0 -567
  989. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +0 -215
  990. package/dist/collection/components/searchbar/searchbar.ionic.css +0 -622
  991. package/dist/collection/components/segment/segment.ionic.css +0 -115
  992. package/dist/collection/components/segment-button/segment-button.ionic.css +0 -352
  993. package/dist/collection/components/select/select.ionic.css +0 -809
  994. package/dist/collection/components/select-modal/select-modal.ionic.css +0 -257
  995. package/dist/collection/components/select-popover/select-popover.ionic.css +0 -255
  996. package/dist/collection/components/spinner/spinner.native.css +0 -199
  997. package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -227
  998. package/dist/collection/components/tab-button/tab-button.ionic.css +0 -373
  999. package/dist/collection/components/textarea/textarea.ionic.css +0 -898
  1000. package/dist/collection/components/title/title.ionic.css +0 -127
  1001. package/dist/collection/components/toast/toast.ionic.css +0 -394
  1002. package/dist/collection/components/toggle/toggle.ionic.css +0 -508
  1003. package/dist/collection/components/toolbar/test/image.svg +0 -1
  1004. package/dist/collection/components/toolbar/toolbar.ionic.css +0 -249
  1005. package/dist/collection/utils/css-value-validation.js +0 -39
  1006. package/dist/collection/utils/overlay-control-label.js +0 -47
  1007. package/dist/collection/utils/select-option-render.js +0 -119
  1008. package/dist/esm/caret-down-D1t981Ih.js +0 -6
  1009. package/dist/esm/caret-left-fIOYmaqA.js +0 -6
  1010. package/dist/esm/caret-right-BYSs-jZz.js +0 -6
  1011. package/dist/esm/config-BwKpO3Is.js +0 -31
  1012. package/dist/esm/index-Mq5pCWmZ.js +0 -424
  1013. package/dist/esm/ion-divider.entry.js +0 -49
  1014. package/dist/esm/ion-gallery-item.entry.js +0 -57
  1015. package/dist/esm/ion-gallery.entry.js +0 -605
  1016. package/dist/esm/ionic-global-BpkTponr.js +0 -508
  1017. package/dist/esm/list-Dhi5xtNS.js +0 -6
  1018. package/dist/esm/overlay-control-label-CODBQrPj.js +0 -49
  1019. package/dist/esm/select-option-render-BlKZ2H83.js +0 -122
  1020. package/dist/esm/validity-BjW8SOqw.js +0 -48
  1021. package/dist/esm/x-BDqjX7Z_.js +0 -6
  1022. package/dist/ionic/p--sroV-k-.js +0 -4
  1023. package/dist/ionic/p-05ce9821.entry.js +0 -4
  1024. package/dist/ionic/p-085b8cdf.entry.js +0 -4
  1025. package/dist/ionic/p-0c4d9d7c.entry.js +0 -4
  1026. package/dist/ionic/p-0ef6bfc4.entry.js +0 -4
  1027. package/dist/ionic/p-1b6e3914.entry.js +0 -4
  1028. package/dist/ionic/p-1y3VhUSy.js +0 -4
  1029. package/dist/ionic/p-25b51635.entry.js +0 -4
  1030. package/dist/ionic/p-2740db6e.entry.js +0 -4
  1031. package/dist/ionic/p-274a829d.entry.js +0 -4
  1032. package/dist/ionic/p-2a1abbb1.entry.js +0 -4
  1033. package/dist/ionic/p-2fba8f15.entry.js +0 -4
  1034. package/dist/ionic/p-3b4c5cb5.entry.js +0 -4
  1035. package/dist/ionic/p-3cfb4ff2.entry.js +0 -4
  1036. package/dist/ionic/p-40dc9dbd.entry.js +0 -4
  1037. package/dist/ionic/p-41afaf15.entry.js +0 -4
  1038. package/dist/ionic/p-42a882b7.entry.js +0 -4
  1039. package/dist/ionic/p-507dbb1c.entry.js +0 -4
  1040. package/dist/ionic/p-54419365.entry.js +0 -4
  1041. package/dist/ionic/p-602cf876.entry.js +0 -4
  1042. package/dist/ionic/p-6293e9f1.entry.js +0 -4
  1043. package/dist/ionic/p-678ee14a.entry.js +0 -4
  1044. package/dist/ionic/p-68ea8ed1.entry.js +0 -4
  1045. package/dist/ionic/p-6e1ec775.entry.js +0 -4
  1046. package/dist/ionic/p-745d6b2b.entry.js +0 -4
  1047. package/dist/ionic/p-7b2fe639.entry.js +0 -4
  1048. package/dist/ionic/p-7de397c7.entry.js +0 -4
  1049. package/dist/ionic/p-89fedfda.entry.js +0 -4
  1050. package/dist/ionic/p-8cf82b85.entry.js +0 -4
  1051. package/dist/ionic/p-8d5fd199.entry.js +0 -4
  1052. package/dist/ionic/p-9e9be378.entry.js +0 -4
  1053. package/dist/ionic/p-BDSH5ckF.js +0 -4
  1054. package/dist/ionic/p-BDqjX7Z_.js +0 -4
  1055. package/dist/ionic/p-BFy_BK46.js +0 -4
  1056. package/dist/ionic/p-BYSs-jZz.js +0 -4
  1057. package/dist/ionic/p-BjW8SOqw.js +0 -4
  1058. package/dist/ionic/p-Bq8S4vhI.js +0 -4
  1059. package/dist/ionic/p-BwKpO3Is.js +0 -4
  1060. package/dist/ionic/p-C0EQceqV.js +0 -5
  1061. package/dist/ionic/p-CB91Gr9M.js +0 -4
  1062. package/dist/ionic/p-CEkwLb3L.js +0 -4
  1063. package/dist/ionic/p-CJsJQPQD.js +0 -4
  1064. package/dist/ionic/p-CODBQrPj.js +0 -4
  1065. package/dist/ionic/p-Ch7MBNn_.js +0 -4
  1066. package/dist/ionic/p-CnAWnbNK.js +0 -4
  1067. package/dist/ionic/p-D1t981Ih.js +0 -4
  1068. package/dist/ionic/p-D4MT1z4_.js +0 -4
  1069. package/dist/ionic/p-D4veLKCq.js +0 -4
  1070. package/dist/ionic/p-DF7ubVci.js +0 -4
  1071. package/dist/ionic/p-DMaSfupH.js +0 -4
  1072. package/dist/ionic/p-DTsDGZPd.js +0 -4
  1073. package/dist/ionic/p-DaJxRxSQ.js +0 -4
  1074. package/dist/ionic/p-DdCaKRle.js +0 -4
  1075. package/dist/ionic/p-Dhi5xtNS.js +0 -4
  1076. package/dist/ionic/p-Dy243NXW.js +0 -4
  1077. package/dist/ionic/p-MqqcZQSB.js +0 -4
  1078. package/dist/ionic/p-YIsE5bNG.js +0 -4
  1079. package/dist/ionic/p-a09c7a4c.entry.js +0 -4
  1080. package/dist/ionic/p-a6e04ca3.entry.js +0 -4
  1081. package/dist/ionic/p-a6fe63f0.entry.js +0 -4
  1082. package/dist/ionic/p-a797625e.entry.js +0 -4
  1083. package/dist/ionic/p-b275f17e.entry.js +0 -4
  1084. package/dist/ionic/p-b3d04a86.entry.js +0 -4
  1085. package/dist/ionic/p-c5635175.entry.js +0 -4
  1086. package/dist/ionic/p-c76d57fb.entry.js +0 -4
  1087. package/dist/ionic/p-ca3a07b5.entry.js +0 -4
  1088. package/dist/ionic/p-ced3cda1.entry.js +0 -4
  1089. package/dist/ionic/p-cf22e991.entry.js +0 -4
  1090. package/dist/ionic/p-d0c1d21d.entry.js +0 -4
  1091. package/dist/ionic/p-d0d42da6.entry.js +0 -4
  1092. package/dist/ionic/p-d0dfc9a3.entry.js +0 -4
  1093. package/dist/ionic/p-d0f253fc.entry.js +0 -4
  1094. package/dist/ionic/p-d33dfc12.entry.js +0 -4
  1095. package/dist/ionic/p-d34bfb61.entry.js +0 -4
  1096. package/dist/ionic/p-dc8e0b91.entry.js +0 -4
  1097. package/dist/ionic/p-ddde8df3.entry.js +0 -4
  1098. package/dist/ionic/p-df642ef5.entry.js +0 -4
  1099. package/dist/ionic/p-e04d63e1.entry.js +0 -4
  1100. package/dist/ionic/p-eeb7b373.entry.js +0 -4
  1101. package/dist/ionic/p-f692219d.entry.js +0 -4
  1102. package/dist/ionic/p-f8001f8f.entry.js +0 -4
  1103. package/dist/ionic/p-fIOYmaqA.js +0 -4
  1104. package/dist/ionic/p-fb457fdd.entry.js +0 -4
  1105. package/dist/ionic/p-fc6d26ff.entry.js +0 -4
  1106. package/dist/ionic/p-im8OkZlj.js +0 -4
  1107. package/dist/ionic/p-lMb_45ax.js +0 -4
  1108. package/dist/ionic/p-vXpMhGrs.js +0 -4
  1109. package/dist/types/components/divider/divider.d.ts +0 -20
  1110. package/dist/types/components/gallery/gallery-constants.d.ts +0 -9
  1111. package/dist/types/components/gallery/gallery-interface.d.ts +0 -10
  1112. package/dist/types/components/gallery/gallery.d.ts +0 -218
  1113. package/dist/types/components/gallery/test/utils.d.ts +0 -3
  1114. package/dist/types/components/gallery-item/gallery-item.d.ts +0 -33
  1115. package/dist/types/components/modal/animations/ionic.enter.d.ts +0 -6
  1116. package/dist/types/components/modal/animations/ionic.leave.d.ts +0 -6
  1117. package/dist/types/utils/css-value-validation.d.ts +0 -21
  1118. package/dist/types/utils/overlay-control-label.d.ts +0 -34
  1119. package/dist/types/utils/select-option-render.d.ts +0 -53
  1120. /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
- }