@ionic/core 8.8.15 → 8.8.16-dev.11784840230.17f5a1f4

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-divider.d.ts +11 -0
  27. package/components/ion-divider.js +4 -0
  28. package/components/ion-fab-button.js +1 -1
  29. package/components/ion-fab-list.js +1 -1
  30. package/components/ion-fab.js +1 -1
  31. package/components/ion-footer.js +1 -1
  32. package/components/ion-gallery-item.d.ts +11 -0
  33. package/components/ion-gallery-item.js +4 -0
  34. package/components/ion-gallery.d.ts +11 -0
  35. package/components/ion-gallery.js +4 -0
  36. package/components/ion-grid.js +1 -1
  37. package/components/ion-header.js +1 -1
  38. package/components/ion-icon.js +1 -1
  39. package/components/ion-img.js +1 -1
  40. package/components/ion-infinite-scroll-content.js +1 -1
  41. package/components/ion-infinite-scroll.js +1 -1
  42. package/components/ion-input-otp.js +1 -1
  43. package/components/ion-input-password-toggle.js +1 -1
  44. package/components/ion-input.js +1 -1
  45. package/components/ion-item-divider.js +1 -1
  46. package/components/ion-item-group.js +1 -1
  47. package/components/ion-item-option.js +1 -1
  48. package/components/ion-item-options.js +1 -1
  49. package/components/ion-item-sliding.js +1 -1
  50. package/components/ion-item.js +1 -1
  51. package/components/ion-label.js +1 -1
  52. package/components/ion-list-header.js +1 -1
  53. package/components/ion-list.js +1 -1
  54. package/components/ion-loading.js +1 -1
  55. package/components/ion-menu-button.js +1 -1
  56. package/components/ion-menu-toggle.js +1 -1
  57. package/components/ion-menu.js +1 -1
  58. package/components/ion-modal.js +1 -1
  59. package/components/ion-nav-link.js +1 -1
  60. package/components/ion-nav.js +1 -1
  61. package/components/ion-note.js +1 -1
  62. package/components/ion-picker-column-option.js +1 -1
  63. package/components/ion-picker-column.js +1 -1
  64. package/components/ion-picker-legacy-column.js +1 -1
  65. package/components/ion-picker-legacy.js +1 -1
  66. package/components/ion-picker.js +1 -1
  67. package/components/ion-popover.js +1 -1
  68. package/components/ion-progress-bar.js +1 -1
  69. package/components/ion-radio-group.js +1 -1
  70. package/components/ion-radio.js +1 -1
  71. package/components/ion-range.js +1 -1
  72. package/components/ion-refresher-content.js +1 -1
  73. package/components/ion-refresher.js +1 -1
  74. package/components/ion-reorder-group.js +1 -1
  75. package/components/ion-reorder.js +1 -1
  76. package/components/ion-ripple-effect.js +1 -1
  77. package/components/ion-route-redirect.js +1 -1
  78. package/components/ion-route.js +1 -1
  79. package/components/ion-router-link.js +1 -1
  80. package/components/ion-router-outlet.js +1 -1
  81. package/components/ion-router.js +1 -1
  82. package/components/ion-row.js +1 -1
  83. package/components/ion-searchbar.js +1 -1
  84. package/components/ion-segment-button.js +1 -1
  85. package/components/ion-segment-content.js +1 -1
  86. package/components/ion-segment-view.js +1 -1
  87. package/components/ion-segment.js +1 -1
  88. package/components/ion-select-modal.js +1 -1
  89. package/components/ion-select-option.js +1 -1
  90. package/components/ion-select-popover.js +1 -1
  91. package/components/ion-select.js +1 -1
  92. package/components/ion-skeleton-text.js +1 -1
  93. package/components/ion-spinner.js +1 -1
  94. package/components/ion-split-pane.js +1 -1
  95. package/components/ion-tab-bar.js +1 -1
  96. package/components/ion-tab-button.js +1 -1
  97. package/components/ion-tab.js +1 -1
  98. package/components/ion-tabs.js +1 -1
  99. package/components/ion-text.js +1 -1
  100. package/components/ion-textarea.js +1 -1
  101. package/components/ion-thumbnail.js +1 -1
  102. package/components/ion-title.js +1 -1
  103. package/components/ion-toast.js +1 -1
  104. package/components/ion-toggle.js +1 -1
  105. package/components/ion-toolbar.js +1 -1
  106. package/components/p-0RwSa3tV.js +4 -0
  107. package/components/p-B8KYxaMx.js +4 -0
  108. package/components/p-BDqjX7Z_.js +4 -0
  109. package/components/{p-Cf2jSDS8.js → p-BE21dB_a.js} +1 -1
  110. package/components/p-BI03N_8J.js +4 -0
  111. package/components/p-BISCDmUD.js +4 -0
  112. package/components/{p-C4t5ymfq.js → p-BKSylJVh.js} +1 -1
  113. package/components/p-BLlJA2Q9.js +4 -0
  114. package/components/p-BYSs-jZz.js +4 -0
  115. package/components/p-BYZR_5L4.js +4 -0
  116. package/components/{p-DqLB8yFQ.js → p-BZwQa9ey.js} +1 -1
  117. package/components/p-BiG3Zevl.js +4 -0
  118. package/components/p-BjW8SOqw.js +4 -0
  119. package/components/p-BoWc8hp0.js +4 -0
  120. package/components/p-BqRIq3ti.js +4 -0
  121. package/components/p-BskJOMNV.js +4 -0
  122. package/components/p-BwKpO3Is.js +4 -0
  123. package/components/p-C4q_m_U_.js +4 -0
  124. package/components/p-C9QYu-sR.js +4 -0
  125. package/components/p-CEbQglhY.js +4 -0
  126. package/components/p-CGwI_XL6.js +4 -0
  127. package/components/p-CIdlZzoM.js +4 -0
  128. package/components/p-CJCMdFb9.js +4 -0
  129. package/components/p-CMjVajuI.js +4 -0
  130. package/components/p-CODBQrPj.js +4 -0
  131. package/components/p-CVYFPBs-.js +4 -0
  132. package/components/p-CWq1hA4y.js +4 -0
  133. package/components/p-CeL9Glto.js +4 -0
  134. package/components/p-Ck_9SoHZ.js +4 -0
  135. package/components/p-Cl94E1nn.js +4 -0
  136. package/components/p-CmnPD02Z.js +4 -0
  137. package/components/p-Cog60JgJ.js +4 -0
  138. package/components/p-CyGaZ-Qb.js +4 -0
  139. package/components/p-CzFNvOq3.js +4 -0
  140. package/components/p-Czw29-II.js +4 -0
  141. package/components/p-D0Iqw6OZ.js +4 -0
  142. package/components/p-D1t981Ih.js +4 -0
  143. package/components/p-D4UIY4kz.js +4 -0
  144. package/components/p-D6un2jDV.js +4 -0
  145. package/components/p-D9583Eo8.js +4 -0
  146. package/components/p-DABI8XVx.js +4 -0
  147. package/components/p-DEZQwbtZ.js +4 -0
  148. package/components/p-DEnOtJ3m.js +4 -0
  149. package/components/p-DFSqPtzD.js +4 -0
  150. package/components/p-DJw3WM2A.js +4 -0
  151. package/{dist/ionic/p-D13Eaw-8.js → components/p-DP96lPOT.js} +1 -1
  152. package/components/p-DS1w_1X1.js +4 -0
  153. package/components/p-DaJxRxSQ.js +4 -0
  154. package/components/p-Daj5LWIm.js +4 -0
  155. package/components/p-Dg8OSVcP.js +4 -0
  156. package/components/p-Dhi5xtNS.js +4 -0
  157. package/components/p-DiKh2eQw.js +4 -0
  158. package/{dist/ionic/p-VAemlbDS.js → components/p-DmVUl5t4.js} +1 -1
  159. package/components/p-Dn77l_LX.js +4 -0
  160. package/components/{p-D5Ubpm7D.js → p-Dqgyr3aJ.js} +1 -1
  161. package/components/p-DylrHLJF.js +4 -0
  162. package/components/{p-cyNmxje6.js → p-Fagxa-Vi.js} +1 -1
  163. package/components/p-I0lsm6wZ.js +4 -0
  164. package/components/p-J03hHbbL.js +4 -0
  165. package/components/p-NPsFR8Ng.js +4 -0
  166. package/components/p-TaMIMwf5.js +4 -0
  167. package/components/p-U2gyA6Z0.js +4 -0
  168. package/components/p-ZWbVyMi6.js +4 -0
  169. package/components/p-_rgGxkzx.js +4 -0
  170. package/components/p-fIOYmaqA.js +4 -0
  171. package/components/p-vXpMhGrs.js +4 -0
  172. package/css/core.css +1 -1
  173. package/css/core.css.map +1 -1
  174. package/css/display.css +1 -1
  175. package/css/display.css.map +1 -1
  176. package/css/flex-utils.css +1 -1
  177. package/css/flex-utils.css.map +1 -1
  178. package/css/float-elements.css.map +1 -1
  179. package/css/global.bundle.css.map +1 -1
  180. package/css/ionic/bundle.ionic.css +1 -0
  181. package/css/ionic/bundle.ionic.css.map +1 -0
  182. package/css/ionic/core.ionic.css +1 -0
  183. package/css/ionic/core.ionic.css.map +1 -0
  184. package/css/ionic/global.bundle.ionic.css +1 -0
  185. package/css/ionic/global.bundle.ionic.css.map +1 -0
  186. package/css/ionic/ionic-swiper.ionic.css +1 -0
  187. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  188. package/css/ionic/link.ionic.css +1 -0
  189. package/css/ionic/link.ionic.css.map +1 -0
  190. package/css/ionic/structure.ionic.css +1 -0
  191. package/css/ionic/structure.ionic.css.map +1 -0
  192. package/css/ionic/typography.ionic.css +1 -0
  193. package/css/ionic/typography.ionic.css.map +1 -0
  194. package/css/ionic/utils.bundle.ionic.css +1 -0
  195. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  196. package/css/ionic-swiper.css +1 -1
  197. package/css/ionic-swiper.css.map +1 -1
  198. package/css/ionic.bundle.css +1 -1
  199. package/css/ionic.bundle.css.map +1 -1
  200. package/css/normalize.css.map +1 -1
  201. package/css/padding.css.map +1 -1
  202. package/css/palettes/dark.always.css.map +1 -1
  203. package/css/palettes/dark.class.css.map +1 -1
  204. package/css/palettes/dark.system.css.map +1 -1
  205. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  206. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  207. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  208. package/css/palettes/high-contrast.always.css.map +1 -1
  209. package/css/palettes/high-contrast.class.css.map +1 -1
  210. package/css/palettes/high-contrast.system.css.map +1 -1
  211. package/css/structure.css.map +1 -1
  212. package/css/text-alignment.css.map +1 -1
  213. package/css/text-transformation.css.map +1 -1
  214. package/css/typography.css.map +1 -1
  215. package/css/utils.bundle.css +1 -1
  216. package/css/utils.bundle.css.map +1 -1
  217. package/dist/cjs/{animation-BJq0kcy2.js → animation-B3xfVcDO.js} +3 -3
  218. package/dist/cjs/{app-globals-BlqrqKTN.js → app-globals-3ZoCVkn-.js} +1 -1
  219. package/dist/cjs/{button-active-0mPOKmV2.js → button-active-3tZKuPbT.js} +2 -2
  220. package/dist/cjs/{capacitor-DmA66EwP.js → capacitor-CQSg1uCo.js} +3 -3
  221. package/dist/cjs/caret-down-vtVgfXIs.js +8 -0
  222. package/dist/cjs/caret-left-CxZXLRv5.js +8 -0
  223. package/dist/cjs/caret-right-CRCgv98E.js +8 -0
  224. package/dist/cjs/config-DWdFbSNK.js +35 -0
  225. package/dist/cjs/{focus-visible-CCvKiLh3.js → focus-visible-BIj-I3-C.js} +24 -0
  226. package/dist/cjs/{format-PxvGiOik.js → format-BCIkDef_.js} +1 -1
  227. package/dist/cjs/{framework-delegate-BtICZDHr.js → framework-delegate-DC5nq_NN.js} +4 -2
  228. package/dist/cjs/{haptic-ClPPQ_PS.js → haptic-eix26ESE.js} +1 -1
  229. package/dist/cjs/{helpers-Cv23MFHM.js → helpers-DiOgV5hw.js} +71 -4
  230. package/dist/cjs/{index-BERfRao3.js → index-BaJ7_YbC.js} +4 -4
  231. package/dist/cjs/index-Bj07IRTB.js +429 -0
  232. package/dist/cjs/{index-CIrkNXqJ.js → index-BxEZd5IE.js} +2 -2
  233. package/dist/cjs/{index-DqmRDbxg.js → index-Cu9JNpPi.js} +3 -1
  234. package/dist/cjs/{index-aC4x3Fk3.js → index-DYRcC3bw.js} +15 -15
  235. package/dist/cjs/{index-Ct7gcRif.js → index-GZU9YrFc.js} +41 -4
  236. package/dist/cjs/{index-D81eLYUM.js → index-bX3nz2vw.js} +9 -8
  237. package/dist/cjs/index.cjs.js +16 -16
  238. package/dist/cjs/{input-shims-CFLg7uzj.js → input-shims-BSEBw22J.js} +18 -17
  239. package/dist/cjs/{input.utils-DetjmtH2.js → input.utils-D68wgI2Y.js} +5 -5
  240. package/dist/cjs/ion-accordion_2.cjs.entry.js +61 -29
  241. package/dist/cjs/ion-action-sheet.cjs.entry.js +41 -22
  242. package/dist/cjs/ion-alert.cjs.entry.js +78 -41
  243. package/dist/cjs/ion-app_8.cjs.entry.js +292 -157
  244. package/dist/cjs/ion-avatar_3.cjs.entry.js +125 -13
  245. package/dist/cjs/ion-back-button.cjs.entry.js +31 -22
  246. package/dist/cjs/ion-backdrop.cjs.entry.js +10 -7
  247. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +54 -18
  248. package/dist/cjs/ion-button_2.cjs.entry.js +61 -24
  249. package/dist/cjs/ion-card_5.cjs.entry.js +55 -33
  250. package/dist/cjs/ion-checkbox.cjs.entry.js +37 -17
  251. package/dist/cjs/ion-chip.cjs.entry.js +50 -9
  252. package/dist/cjs/ion-col_3.cjs.entry.js +56 -57
  253. package/dist/cjs/ion-datetime-button.cjs.entry.js +13 -9
  254. package/dist/cjs/ion-datetime_3.cjs.entry.js +121 -46
  255. package/dist/cjs/ion-divider.cjs.entry.js +51 -0
  256. package/dist/cjs/ion-fab_3.cjs.entry.js +44 -28
  257. package/dist/cjs/ion-gallery-item.cjs.entry.js +59 -0
  258. package/dist/cjs/ion-gallery.cjs.entry.js +607 -0
  259. package/dist/cjs/ion-img.cjs.entry.js +8 -4
  260. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +93 -17
  261. package/dist/cjs/ion-input-otp.cjs.entry.js +74 -9
  262. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +53 -15
  263. package/dist/cjs/ion-input.cjs.entry.js +124 -34
  264. package/dist/cjs/ion-item-option_3.cjs.entry.js +467 -52
  265. package/dist/cjs/ion-item_8.cjs.entry.js +121 -50
  266. package/dist/cjs/ion-loading.cjs.entry.js +22 -19
  267. package/dist/cjs/ion-menu_3.cjs.entry.js +47 -29
  268. package/dist/cjs/ion-modal.cjs.entry.js +262 -138
  269. package/dist/cjs/ion-nav_2.cjs.entry.js +14 -11
  270. package/dist/cjs/ion-picker-column-option.cjs.entry.js +12 -8
  271. package/dist/cjs/ion-picker-column.cjs.entry.js +14 -14
  272. package/dist/cjs/ion-picker.cjs.entry.js +10 -6
  273. package/dist/cjs/ion-popover.cjs.entry.js +21 -19
  274. package/dist/cjs/ion-progress-bar.cjs.entry.js +27 -9
  275. package/dist/cjs/ion-radio_2.cjs.entry.js +35 -17
  276. package/dist/cjs/ion-range.cjs.entry.js +20 -13
  277. package/dist/cjs/ion-refresher_2.cjs.entry.js +42 -23
  278. package/dist/cjs/ion-reorder_2.cjs.entry.js +38 -14
  279. package/dist/cjs/ion-ripple-effect.cjs.entry.js +15 -7
  280. package/dist/cjs/ion-route_4.cjs.entry.js +11 -10
  281. package/dist/cjs/ion-searchbar.cjs.entry.js +137 -24
  282. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  283. package/dist/cjs/ion-segment-view.cjs.entry.js +13 -3
  284. package/dist/cjs/ion-segment_2.cjs.entry.js +23 -16
  285. package/dist/cjs/ion-select-modal.cjs.entry.js +114 -38
  286. package/dist/cjs/ion-select_3.cjs.entry.js +557 -108
  287. package/dist/cjs/ion-spinner.cjs.entry.js +30 -8
  288. package/dist/cjs/ion-split-pane.cjs.entry.js +13 -9
  289. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +147 -23
  290. package/dist/cjs/ion-tab_2.cjs.entry.js +8 -7
  291. package/dist/cjs/ion-text.cjs.entry.js +7 -7
  292. package/dist/cjs/ion-textarea.cjs.entry.js +137 -23
  293. package/dist/cjs/ion-toast.cjs.entry.js +70 -46
  294. package/dist/cjs/ion-toggle.cjs.entry.js +82 -25
  295. package/dist/cjs/ionic-global-QoUqobrQ.js +519 -0
  296. package/dist/cjs/ionic.cjs.js +4 -4
  297. package/dist/cjs/{ios.transition-BOSWOaiK.js → ios.transition-DpFQfFfT.js} +7 -5
  298. package/dist/cjs/{keyboard-UuAS4D_9.js → keyboard-Bn0Ppim6.js} +1 -1
  299. package/dist/cjs/{keyboard-controller-GXBiBRKS.js → keyboard-controller-CefyW9lm.js} +11 -9
  300. package/dist/cjs/{keyboard-hHzlEQpk.js → keyboard-faZBQysj.js} +4 -3
  301. package/dist/cjs/list-a-7GSA6K.js +8 -0
  302. package/dist/cjs/loader.cjs.js +4 -4
  303. package/dist/cjs/{md.transition-B8-wBZqt.js → md.transition-ChJcoZUH.js} +6 -5
  304. package/dist/cjs/{notch-controller-18PzRGXd.js → notch-controller-BO0UGB4F.js} +4 -4
  305. package/dist/cjs/overlay-control-label-DnRLQR1t.js +52 -0
  306. package/dist/cjs/{overlays-DdtIYQUH.js → overlays-CFGbPUmE.js} +309 -18
  307. package/dist/cjs/select-option-render-DqBHEjDn.js +124 -0
  308. package/dist/cjs/{status-tap-BXX8H8_Y.js → status-tap-x2qDo5QR.js} +4 -3
  309. package/dist/cjs/{swipe-back-C0GCB18x.js → swipe-back-CvZt_4YX.js} +3 -2
  310. package/dist/cjs/{theme-CeDs6Hcv.js → theme-IlOsGAz7.js} +25 -1
  311. package/dist/cjs/validity-QmuwEptc.js +51 -0
  312. package/dist/cjs/x-BTF99yFH.js +8 -0
  313. package/dist/collection/collection-manifest.json +9 -1
  314. package/dist/collection/components/accordion/accordion.ionic.css +201 -0
  315. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  316. package/dist/collection/components/accordion/accordion.js +41 -27
  317. package/dist/collection/components/accordion/accordion.md.css +67 -59
  318. package/dist/collection/components/accordion-group/accordion-group.ionic.css +93 -0
  319. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  320. package/dist/collection/components/accordion-group/accordion-group.js +44 -8
  321. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  322. package/dist/collection/components/action-sheet/action-sheet.ionic.css +494 -0
  323. package/dist/collection/components/action-sheet/action-sheet.ios.css +367 -11
  324. package/dist/collection/components/action-sheet/action-sheet.js +32 -13
  325. package/dist/collection/components/action-sheet/action-sheet.md.css +306 -10
  326. package/dist/collection/components/alert/alert.ionic.css +787 -0
  327. package/dist/collection/components/alert/alert.ios.css +481 -19
  328. package/dist/collection/components/alert/alert.js +67 -30
  329. package/dist/collection/components/alert/alert.md.css +464 -29
  330. package/dist/collection/components/app/app.js +15 -83
  331. package/dist/collection/components/avatar/avatar.ionic.css +385 -0
  332. package/dist/collection/components/avatar/avatar.ios.css +7 -33
  333. package/dist/collection/components/avatar/avatar.js +120 -4
  334. package/dist/collection/components/avatar/avatar.md.css +51 -0
  335. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  336. package/dist/collection/components/back-button/back-button.js +27 -19
  337. package/dist/collection/components/back-button/back-button.md.css +60 -48
  338. package/dist/collection/components/backdrop/backdrop.ionic.css +109 -0
  339. package/dist/collection/components/backdrop/backdrop.ios.css +56 -19
  340. package/dist/collection/components/backdrop/backdrop.js +12 -6
  341. package/dist/collection/components/backdrop/backdrop.md.css +56 -19
  342. package/dist/collection/components/badge/badge.ionic.css +272 -0
  343. package/dist/collection/components/badge/badge.ios.css +137 -12
  344. package/dist/collection/components/badge/badge.js +145 -9
  345. package/dist/collection/components/badge/badge.md.css +122 -12
  346. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  347. package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
  348. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  349. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  350. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  351. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  352. package/dist/collection/components/button/button.ionic.css +644 -0
  353. package/dist/collection/components/button/button.ios.css +154 -46
  354. package/dist/collection/components/button/button.js +63 -27
  355. package/dist/collection/components/button/button.md.css +150 -50
  356. package/dist/collection/components/buttons/buttons.ionic.css +97 -0
  357. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  358. package/dist/collection/components/buttons/buttons.js +15 -9
  359. package/dist/collection/components/buttons/buttons.md.css +55 -3
  360. package/dist/collection/components/card/card.ionic.css +144 -0
  361. package/dist/collection/components/card/card.ios.css +65 -14
  362. package/dist/collection/components/card/card.js +41 -10
  363. package/dist/collection/components/card/card.md.css +65 -14
  364. package/dist/collection/components/card-content/card-content.ionic.css +89 -0
  365. package/dist/collection/components/card-content/card-content.ios.css +20 -35
  366. package/dist/collection/components/card-content/card-content.js +12 -10
  367. package/dist/collection/components/card-content/card-content.md.css +20 -35
  368. package/dist/collection/components/card-header/card-header.ionic.css +85 -0
  369. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  370. package/dist/collection/components/card-header/card-header.js +13 -10
  371. package/dist/collection/components/card-header/card-header.md.css +27 -15
  372. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +144 -0
  373. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  374. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  375. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  376. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  377. package/dist/collection/components/card-title/card-title.js +11 -8
  378. package/dist/collection/components/card-title/card-title.md.css +73 -0
  379. package/dist/collection/components/checkbox/checkbox.ionic.css +543 -0
  380. package/dist/collection/components/checkbox/checkbox.ios.css +163 -99
  381. package/dist/collection/components/checkbox/checkbox.js +73 -15
  382. package/dist/collection/components/checkbox/checkbox.md.css +164 -100
  383. package/dist/collection/components/chip/chip.ionic.css +217 -0
  384. package/dist/collection/components/chip/chip.ios.css +67 -14
  385. package/dist/collection/components/chip/chip.js +108 -8
  386. package/dist/collection/components/chip/chip.md.css +67 -14
  387. package/dist/collection/components/col/col.css +192 -4
  388. package/dist/collection/components/col/col.js +211 -61
  389. package/dist/collection/components/content/content.css +8 -2
  390. package/dist/collection/components/content/content.js +16 -11
  391. package/dist/collection/components/datetime/datetime.ionic.css +703 -0
  392. package/dist/collection/components/datetime/datetime.ios.css +302 -106
  393. package/dist/collection/components/datetime/datetime.js +97 -20
  394. package/dist/collection/components/datetime/datetime.md.css +293 -96
  395. package/dist/collection/components/datetime/utils/data.js +5 -5
  396. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  397. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  398. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  399. package/dist/collection/components/divider/divider.ionic.css +148 -0
  400. package/dist/collection/components/divider/divider.ios.css +87 -0
  401. package/dist/collection/components/divider/divider.js +94 -0
  402. package/dist/collection/components/divider/divider.md.css +87 -0
  403. package/dist/collection/components/fab/fab.css +25 -1
  404. package/dist/collection/components/fab/fab.js +9 -5
  405. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  406. package/dist/collection/components/fab-button/fab-button.js +36 -21
  407. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  408. package/dist/collection/components/fab-list/fab-list.css +12 -0
  409. package/dist/collection/components/fab-list/fab-list.js +9 -5
  410. package/dist/collection/components/footer/footer.ios.css +14 -2
  411. package/dist/collection/components/footer/footer.js +21 -16
  412. package/dist/collection/components/footer/footer.md.css +12 -0
  413. package/dist/collection/components/gallery/gallery-constants.js +12 -0
  414. package/dist/collection/components/gallery/gallery-interface.js +1 -0
  415. package/dist/collection/components/gallery/gallery.css +15 -0
  416. package/dist/collection/components/gallery/gallery.js +679 -0
  417. package/dist/collection/components/gallery/test/utils.js +100 -0
  418. package/dist/collection/components/gallery-item/gallery-item.css +49 -0
  419. package/dist/collection/components/gallery-item/gallery-item.js +99 -0
  420. package/dist/collection/components/grid/grid.css +12 -0
  421. package/dist/collection/components/grid/grid.js +9 -5
  422. package/dist/collection/components/header/header.ionic.css +97 -0
  423. package/dist/collection/components/header/header.ios.css +25 -10
  424. package/dist/collection/components/header/header.js +50 -19
  425. package/dist/collection/components/header/header.md.css +23 -8
  426. package/dist/collection/components/header/header.utils.js +5 -5
  427. package/dist/collection/components/img/img.js +8 -2
  428. package/dist/collection/components/infinite-scroll/infinite-scroll.js +100 -5
  429. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  430. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  431. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  432. package/dist/collection/components/input/input.ionic.css +888 -0
  433. package/dist/collection/components/input/input.ios.css +224 -137
  434. package/dist/collection/components/input/input.js +148 -37
  435. package/dist/collection/components/input/input.md.css +194 -209
  436. package/dist/collection/components/input-otp/input-otp.ionic.css +371 -0
  437. package/dist/collection/components/input-otp/input-otp.ios.css +105 -60
  438. package/dist/collection/components/input-otp/input-otp.js +74 -7
  439. package/dist/collection/components/input-otp/input-otp.md.css +105 -60
  440. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +78 -0
  441. package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
  442. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +61 -0
  443. package/dist/collection/components/item/item.ionic.css +496 -0
  444. package/dist/collection/components/item/item.ios.css +109 -69
  445. package/dist/collection/components/item/item.js +56 -21
  446. package/dist/collection/components/item/item.md.css +120 -68
  447. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  448. package/dist/collection/components/item-divider/item-divider.js +11 -8
  449. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  450. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  451. package/dist/collection/components/item-group/item-group.js +13 -7
  452. package/dist/collection/components/item-group/item-group.md.css +12 -0
  453. package/dist/collection/components/item-option/item-option.ionic.css +277 -0
  454. package/dist/collection/components/item-option/item-option.ios.css +136 -29
  455. package/dist/collection/components/item-option/item-option.js +73 -9
  456. package/dist/collection/components/item-option/item-option.md.css +136 -29
  457. package/dist/collection/components/item-options/item-options.ionic.css +221 -0
  458. package/dist/collection/components/item-options/item-options.ios.css +77 -34
  459. package/dist/collection/components/item-options/item-options.js +13 -7
  460. package/dist/collection/components/item-options/item-options.md.css +77 -34
  461. package/dist/collection/components/item-sliding/item-sliding.ionic.css +211 -0
  462. package/dist/collection/components/item-sliding/item-sliding.js +421 -35
  463. package/dist/collection/components/item-sliding/{item-sliding.css → item-sliding.native.css} +84 -9
  464. package/dist/collection/components/item-sliding/test/test.utils.js +13 -0
  465. package/dist/collection/components/label/label.ios.css +18 -0
  466. package/dist/collection/components/label/label.js +11 -8
  467. package/dist/collection/components/label/label.md.css +18 -0
  468. package/dist/collection/components/list/list.ionic.css +212 -0
  469. package/dist/collection/components/list/list.ios.css +54 -14
  470. package/dist/collection/components/list/list.js +48 -9
  471. package/dist/collection/components/list/list.md.css +56 -16
  472. package/dist/collection/components/list-header/list-header.ionic.css +190 -0
  473. package/dist/collection/components/list-header/list-header.ios.css +82 -38
  474. package/dist/collection/components/list-header/list-header.js +11 -8
  475. package/dist/collection/components/list-header/list-header.md.css +82 -38
  476. package/dist/collection/components/loading/loading.ios.css +13 -1
  477. package/dist/collection/components/loading/loading.js +14 -11
  478. package/dist/collection/components/loading/loading.md.css +13 -1
  479. package/dist/collection/components/menu/menu.ios.css +15 -3
  480. package/dist/collection/components/menu/menu.js +12 -7
  481. package/dist/collection/components/menu/menu.md.css +15 -3
  482. package/dist/collection/components/menu-button/menu-button.ionic.css +236 -0
  483. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  484. package/dist/collection/components/menu-button/menu-button.js +26 -10
  485. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  486. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  487. package/dist/collection/components/modal/animations/ionic.enter.js +40 -0
  488. package/dist/collection/components/modal/animations/ionic.leave.js +28 -0
  489. package/dist/collection/components/modal/animations/sheet.js +8 -2
  490. package/dist/collection/components/modal/gestures/sheet.js +76 -10
  491. package/dist/collection/components/modal/modal.ionic.css +255 -0
  492. package/dist/collection/components/modal/modal.ios.css +178 -70
  493. package/dist/collection/components/modal/modal.js +50 -12
  494. package/dist/collection/components/modal/modal.md.css +178 -70
  495. package/dist/collection/components/nav/nav.css +7 -1
  496. package/dist/collection/components/nav/nav.js +11 -5
  497. package/dist/collection/components/nav-link/nav-link.js +5 -1
  498. package/dist/collection/components/note/note.ios.css +12 -0
  499. package/dist/collection/components/note/note.js +11 -8
  500. package/dist/collection/components/note/note.md.css +12 -0
  501. package/dist/collection/components/picker/picker.ios.css +15 -3
  502. package/dist/collection/components/picker/picker.js +8 -5
  503. package/dist/collection/components/picker/picker.md.css +15 -3
  504. package/dist/collection/components/picker-column/picker-column.css +9 -2
  505. package/dist/collection/components/picker-column/picker-column.js +8 -7
  506. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  507. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  508. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  509. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  510. package/dist/collection/components/picker-legacy/picker.js +7 -6
  511. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  512. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  513. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  514. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  515. package/dist/collection/components/popover/popover.ionic.css +290 -0
  516. package/dist/collection/components/popover/popover.ios.css +29 -1
  517. package/dist/collection/components/popover/popover.js +18 -15
  518. package/dist/collection/components/popover/popover.md.css +29 -1
  519. package/dist/collection/components/progress-bar/progress-bar.ionic.css +287 -0
  520. package/dist/collection/components/progress-bar/progress-bar.ios.css +48 -17
  521. package/dist/collection/components/progress-bar/progress-bar.js +43 -7
  522. package/dist/collection/components/progress-bar/progress-bar.md.css +48 -17
  523. package/dist/collection/components/radio/radio.ionic.css +422 -0
  524. package/dist/collection/components/radio/radio.ios.css +134 -91
  525. package/dist/collection/components/radio/radio.js +14 -9
  526. package/dist/collection/components/radio/radio.md.css +134 -91
  527. package/dist/collection/components/radio-group/radio-group.ionic.css +119 -0
  528. package/dist/collection/components/radio-group/radio-group.ios.css +43 -19
  529. package/dist/collection/components/radio-group/radio-group.js +48 -7
  530. package/dist/collection/components/radio-group/radio-group.md.css +43 -19
  531. package/dist/collection/components/range/range.ionic.css +567 -0
  532. package/dist/collection/components/range/range.ios.css +128 -85
  533. package/dist/collection/components/range/range.js +16 -10
  534. package/dist/collection/components/range/range.md.css +128 -85
  535. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  536. package/dist/collection/components/refresher/refresher.js +11 -8
  537. package/dist/collection/components/refresher/refresher.md.css +15 -2
  538. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  539. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  540. package/dist/collection/components/reorder/reorder.js +33 -6
  541. package/dist/collection/components/reorder/reorder.md.css +6 -0
  542. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  543. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  544. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  545. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +215 -0
  546. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  547. package/dist/collection/components/route/route.js +4 -0
  548. package/dist/collection/components/router/router.js +4 -0
  549. package/dist/collection/components/router-link/router-link.css +8 -2
  550. package/dist/collection/components/router-link/router-link.js +9 -5
  551. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  552. package/dist/collection/components/router-outlet/router-outlet.js +6 -3
  553. package/dist/collection/components/row/row.css +16 -0
  554. package/dist/collection/components/row/row.js +9 -2
  555. package/dist/collection/components/searchbar/searchbar.ionic.css +622 -0
  556. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  557. package/dist/collection/components/searchbar/searchbar.js +180 -33
  558. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  559. package/dist/collection/components/segment/segment.ionic.css +115 -0
  560. package/dist/collection/components/segment/segment.ios.css +45 -2
  561. package/dist/collection/components/segment/segment.js +11 -8
  562. package/dist/collection/components/segment/segment.md.css +45 -2
  563. package/dist/collection/components/segment-button/segment-button.ionic.css +352 -0
  564. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  565. package/dist/collection/components/segment-button/segment-button.js +11 -8
  566. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  567. package/dist/collection/components/segment-content/segment-content.js +1 -1
  568. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  569. package/dist/collection/components/segment-view/segment-view.js +13 -4
  570. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  571. package/dist/collection/components/select/select.ionic.css +809 -0
  572. package/dist/collection/components/select/select.ios.css +348 -176
  573. package/dist/collection/components/select/select.js +521 -92
  574. package/dist/collection/components/select/select.md.css +364 -178
  575. package/dist/collection/components/select-modal/select-modal.ionic.css +261 -0
  576. package/dist/collection/components/select-modal/select-modal.ios.css +466 -0
  577. package/dist/collection/components/select-modal/select-modal.js +126 -30
  578. package/dist/collection/components/select-modal/select-modal.md.css +394 -0
  579. package/dist/collection/components/select-option/select-option.js +72 -4
  580. package/dist/collection/components/select-popover/select-popover.ionic.css +255 -0
  581. package/dist/collection/components/select-popover/select-popover.ios.css +302 -20
  582. package/dist/collection/components/select-popover/select-popover.js +89 -29
  583. package/dist/collection/components/select-popover/select-popover.md.css +345 -0
  584. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  585. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  586. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +78 -10
  587. package/dist/collection/components/spinner/spinner.js +47 -6
  588. package/dist/collection/components/spinner/spinner.native.css +199 -0
  589. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  590. package/dist/collection/components/split-pane/split-pane.js +15 -8
  591. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  592. package/dist/collection/components/tab/tab.js +6 -2
  593. package/dist/collection/components/tab-bar/tab-bar.ionic.css +227 -0
  594. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  595. package/dist/collection/components/tab-bar/tab-bar.js +171 -13
  596. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  597. package/dist/collection/components/tab-button/tab-button.ionic.css +373 -0
  598. package/dist/collection/components/tab-button/tab-button.ios.css +171 -95
  599. package/dist/collection/components/tab-button/tab-button.js +54 -9
  600. package/dist/collection/components/tab-button/tab-button.md.css +137 -93
  601. package/dist/collection/components/tabs/tabs.css +7 -1
  602. package/dist/collection/components/tabs/tabs.js +4 -1
  603. package/dist/collection/components/text/text.css +6 -0
  604. package/dist/collection/components/text/text.js +7 -6
  605. package/dist/collection/components/textarea/textarea.ionic.css +898 -0
  606. package/dist/collection/components/textarea/textarea.ios.css +298 -158
  607. package/dist/collection/components/textarea/textarea.js +162 -24
  608. package/dist/collection/components/textarea/textarea.md.css +312 -159
  609. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  610. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  611. package/dist/collection/components/title/title.ionic.css +127 -0
  612. package/dist/collection/components/title/title.ios.css +32 -4
  613. package/dist/collection/components/title/title.js +13 -7
  614. package/dist/collection/components/title/title.md.css +32 -4
  615. package/dist/collection/components/toast/animations/utils.js +1 -1
  616. package/dist/collection/components/toast/toast.ionic.css +394 -0
  617. package/dist/collection/components/toast/toast.ios.css +84 -45
  618. package/dist/collection/components/toast/toast.js +76 -13
  619. package/dist/collection/components/toast/toast.md.css +84 -45
  620. package/dist/collection/components/toggle/toggle.ionic.css +508 -0
  621. package/dist/collection/components/toggle/toggle.ios.css +247 -131
  622. package/dist/collection/components/toggle/toggle.js +73 -18
  623. package/dist/collection/components/toggle/toggle.md.css +244 -131
  624. package/dist/collection/components/toolbar/test/image.svg +1 -0
  625. package/dist/collection/components/toolbar/toolbar.ionic.css +249 -0
  626. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  627. package/dist/collection/components/toolbar/toolbar.js +218 -13
  628. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  629. package/dist/collection/global/ionic-global.js +241 -13
  630. package/dist/collection/utils/css-value-validation.js +39 -0
  631. package/dist/collection/utils/focus-trap.js +13 -2
  632. package/dist/collection/utils/focus-visible.js +22 -0
  633. package/dist/collection/utils/forms/validity.js +31 -0
  634. package/dist/collection/utils/framework-delegate.js +3 -1
  635. package/dist/collection/utils/hardware-back-button.js +15 -0
  636. package/dist/collection/utils/helpers.js +70 -3
  637. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  638. package/dist/collection/utils/media.js +1 -0
  639. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  640. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  641. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  642. package/dist/collection/utils/overlay-control-label.js +47 -0
  643. package/dist/collection/utils/overlays.js +290 -8
  644. package/dist/collection/utils/sanitization/index.js +274 -18
  645. package/dist/collection/utils/select-option-render.js +119 -0
  646. package/dist/collection/utils/test/playwright/drag-element.js +32 -9
  647. package/dist/collection/utils/test/playwright/generator.js +48 -23
  648. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  649. package/dist/collection/utils/test/playwright/page/utils/set-content.js +26 -3
  650. package/dist/collection/utils/theme.js +25 -1
  651. package/dist/collection/utils/transition/ios.transition.js +1 -0
  652. package/dist/docs.json +8976 -284
  653. package/dist/esm/{animation-DLJpuoEz.js → animation-B2qdQ_ou.js} +2 -2
  654. package/dist/esm/{app-globals-D0C5S4hU.js → app-globals-DZ-iIjxA.js} +1 -1
  655. package/dist/esm/{button-active-BSpTQmS9.js → button-active-BmajAby6.js} +2 -2
  656. package/dist/esm/{capacitor-CFERIeaU.js → capacitor-CtQSWUU0.js} +1 -1
  657. package/dist/esm/caret-down-D1t981Ih.js +6 -0
  658. package/dist/esm/caret-left-fIOYmaqA.js +6 -0
  659. package/dist/esm/caret-right-BYSs-jZz.js +6 -0
  660. package/dist/esm/config-BwKpO3Is.js +31 -0
  661. package/dist/esm/{focus-visible-BmVRXR1y.js → focus-visible-vXpMhGrs.js} +23 -1
  662. package/dist/esm/{format-CAmvpAez.js → format-2WlZcMvG.js} +1 -1
  663. package/dist/esm/{framework-delegate-FnPGymXL.js → framework-delegate-DO2QXccA.js} +4 -2
  664. package/dist/esm/{haptic-DzAMWJuk.js → haptic-DFgKNCce.js} +1 -1
  665. package/dist/esm/{helpers-HEqiOzXb.js → helpers-DfF5_wJc.js} +71 -5
  666. package/dist/esm/{index-DV3sJJW8.js → index-1y3VhUSy.js} +3 -2
  667. package/dist/esm/{index-B_dQk_WE.js → index-BIUWGRUl.js} +4 -4
  668. package/dist/esm/{index-BRHzoo00.js → index-BjaaZqVY.js} +4 -3
  669. package/dist/esm/{index-tcQvqkiX.js → index-C0EQceqV.js} +41 -4
  670. package/dist/esm/{index-Q6UPU0Ay.js → index-Di034G4O.js} +11 -11
  671. package/dist/esm/{index-MEDq2S8l.js → index-KxK0gcRp.js} +2 -2
  672. package/dist/esm/index-Mq5pCWmZ.js +424 -0
  673. package/dist/esm/index.js +14 -14
  674. package/dist/esm/{input-shims-D10mwcw1.js → input-shims-DvNNw70a.js} +7 -6
  675. package/dist/esm/{input.utils-Y6NgW8bw.js → input.utils-_LkBfBWt.js} +3 -3
  676. package/dist/esm/ion-accordion_2.entry.js +61 -29
  677. package/dist/esm/ion-action-sheet.entry.js +41 -22
  678. package/dist/esm/ion-alert.entry.js +77 -40
  679. package/dist/esm/ion-app_8.entry.js +292 -157
  680. package/dist/esm/ion-avatar_3.entry.js +125 -13
  681. package/dist/esm/ion-back-button.entry.js +31 -22
  682. package/dist/esm/ion-backdrop.entry.js +10 -7
  683. package/dist/esm/ion-breadcrumb_2.entry.js +54 -18
  684. package/dist/esm/ion-button_2.entry.js +61 -24
  685. package/dist/esm/ion-card_5.entry.js +55 -33
  686. package/dist/esm/ion-checkbox.entry.js +37 -17
  687. package/dist/esm/ion-chip.entry.js +50 -9
  688. package/dist/esm/ion-col_3.entry.js +56 -57
  689. package/dist/esm/ion-datetime-button.entry.js +13 -9
  690. package/dist/esm/ion-datetime_3.entry.js +121 -46
  691. package/dist/esm/ion-divider.entry.js +49 -0
  692. package/dist/esm/ion-fab_3.entry.js +44 -28
  693. package/dist/esm/ion-gallery-item.entry.js +57 -0
  694. package/dist/esm/ion-gallery.entry.js +605 -0
  695. package/dist/esm/ion-img.entry.js +8 -4
  696. package/dist/esm/ion-infinite-scroll_2.entry.js +92 -16
  697. package/dist/esm/ion-input-otp.entry.js +74 -9
  698. package/dist/esm/ion-input-password-toggle.entry.js +53 -15
  699. package/dist/esm/ion-input.entry.js +124 -34
  700. package/dist/esm/ion-item-option_3.entry.js +467 -52
  701. package/dist/esm/ion-item_8.entry.js +121 -50
  702. package/dist/esm/ion-loading.entry.js +21 -18
  703. package/dist/esm/ion-menu_3.entry.js +47 -29
  704. package/dist/esm/ion-modal.entry.js +215 -91
  705. package/dist/esm/ion-nav_2.entry.js +14 -11
  706. package/dist/esm/ion-picker-column-option.entry.js +12 -8
  707. package/dist/esm/ion-picker-column.entry.js +13 -13
  708. package/dist/esm/ion-picker.entry.js +10 -6
  709. package/dist/esm/ion-popover.entry.js +21 -19
  710. package/dist/esm/ion-progress-bar.entry.js +27 -9
  711. package/dist/esm/ion-radio_2.entry.js +35 -17
  712. package/dist/esm/ion-range.entry.js +20 -13
  713. package/dist/esm/ion-refresher_2.entry.js +40 -21
  714. package/dist/esm/ion-reorder_2.entry.js +38 -14
  715. package/dist/esm/ion-ripple-effect.entry.js +15 -7
  716. package/dist/esm/ion-route_4.entry.js +11 -10
  717. package/dist/esm/ion-searchbar.entry.js +137 -24
  718. package/dist/esm/ion-segment-content.entry.js +2 -2
  719. package/dist/esm/ion-segment-view.entry.js +13 -3
  720. package/dist/esm/ion-segment_2.entry.js +23 -16
  721. package/dist/esm/ion-select-modal.entry.js +114 -38
  722. package/dist/esm/ion-select_3.entry.js +557 -108
  723. package/dist/esm/ion-spinner.entry.js +30 -8
  724. package/dist/esm/ion-split-pane.entry.js +13 -9
  725. package/dist/esm/ion-tab-bar_2.entry.js +147 -23
  726. package/dist/esm/ion-tab_2.entry.js +8 -7
  727. package/dist/esm/ion-text.entry.js +7 -7
  728. package/dist/esm/ion-textarea.entry.js +137 -23
  729. package/dist/esm/ion-toast.entry.js +45 -21
  730. package/dist/esm/ion-toggle.entry.js +82 -25
  731. package/dist/esm/ionic-global-BpkTponr.js +508 -0
  732. package/dist/esm/ionic.js +5 -5
  733. package/dist/esm/{ios.transition-ClFrsIrS.js → ios.transition-CgScDbsb.js} +7 -5
  734. package/dist/esm/{keyboard-CUw4ekVy.js → keyboard-CyyguLDw.js} +1 -1
  735. package/dist/esm/{keyboard-ywgs5efA.js → keyboard-WJix-wcz.js} +4 -3
  736. package/dist/esm/{keyboard-controller-BaaVITYt.js → keyboard-controller-BFwRdk2T.js} +5 -3
  737. package/dist/esm/list-Dhi5xtNS.js +6 -0
  738. package/dist/esm/loader.js +5 -5
  739. package/dist/esm/{md.transition-D0msQmzI.js → md.transition-DThqYazt.js} +6 -5
  740. package/dist/esm/{notch-controller-DKDjU_O7.js → notch-controller-MTblRxjD.js} +2 -2
  741. package/dist/esm/overlay-control-label-CODBQrPj.js +49 -0
  742. package/dist/esm/{overlays-Dg0q2_tJ.js → overlays-tv6nLsmk.js} +306 -15
  743. package/dist/esm/select-option-render-BlKZ2H83.js +122 -0
  744. package/dist/esm/{status-tap-Kan2W7sh.js → status-tap-CoPI1M2q.js} +4 -3
  745. package/dist/esm/{swipe-back-DQ1q5MgD.js → swipe-back-qmvTRnSq.js} +3 -2
  746. package/dist/esm/{theme-DiVJyqlX.js → theme-DaJxRxSQ.js} +25 -1
  747. package/dist/esm/validity-BjW8SOqw.js +48 -0
  748. package/dist/esm/x-BDqjX7Z_.js +6 -0
  749. package/dist/html.html-data.json +2654 -147
  750. package/dist/ionic/index.esm.js +1 -1
  751. package/dist/ionic/ionic.esm.js +1 -1
  752. package/dist/ionic/p--sroV-k-.js +4 -0
  753. package/dist/ionic/p-05ce9821.entry.js +4 -0
  754. package/dist/ionic/p-085b8cdf.entry.js +4 -0
  755. package/dist/ionic/p-0c4d9d7c.entry.js +4 -0
  756. package/dist/ionic/p-0ef6bfc4.entry.js +4 -0
  757. package/dist/ionic/p-1b6e3914.entry.js +4 -0
  758. package/dist/ionic/p-1y3VhUSy.js +4 -0
  759. package/dist/ionic/p-25b51635.entry.js +4 -0
  760. package/dist/ionic/p-2740db6e.entry.js +4 -0
  761. package/dist/ionic/p-274a829d.entry.js +4 -0
  762. package/dist/ionic/p-2a1abbb1.entry.js +4 -0
  763. package/dist/ionic/p-2fba8f15.entry.js +4 -0
  764. package/dist/ionic/p-3b4c5cb5.entry.js +4 -0
  765. package/dist/ionic/p-3cfb4ff2.entry.js +4 -0
  766. package/dist/ionic/p-41afaf15.entry.js +4 -0
  767. package/dist/ionic/p-42a882b7.entry.js +4 -0
  768. package/dist/ionic/p-507dbb1c.entry.js +4 -0
  769. package/dist/ionic/p-54419365.entry.js +4 -0
  770. package/dist/ionic/p-602cf876.entry.js +4 -0
  771. package/dist/ionic/p-6293e9f1.entry.js +4 -0
  772. package/dist/ionic/p-678ee14a.entry.js +4 -0
  773. package/dist/ionic/p-68ea8ed1.entry.js +4 -0
  774. package/dist/ionic/p-6e1ec775.entry.js +4 -0
  775. package/dist/ionic/p-745d6b2b.entry.js +4 -0
  776. package/dist/ionic/p-7b2fe639.entry.js +4 -0
  777. package/dist/ionic/p-7ce56473.entry.js +4 -0
  778. package/dist/ionic/{p-C0eMdTCW.js → p-7k7Q1A38.js} +1 -1
  779. package/dist/ionic/p-89fedfda.entry.js +4 -0
  780. package/dist/ionic/p-8cf82b85.entry.js +4 -0
  781. package/dist/ionic/p-8d5fd199.entry.js +4 -0
  782. package/dist/ionic/p-9e9be378.entry.js +4 -0
  783. package/dist/ionic/p-BDSH5ckF.js +4 -0
  784. package/dist/ionic/p-BDqjX7Z_.js +4 -0
  785. package/dist/ionic/p-BFy_BK46.js +4 -0
  786. package/dist/ionic/p-BYSs-jZz.js +4 -0
  787. package/dist/ionic/p-BjW8SOqw.js +4 -0
  788. package/{components/p-CtukzcyX.js → dist/ionic/p-BlZo7Gy-.js} +1 -1
  789. package/dist/ionic/p-Bq8S4vhI.js +4 -0
  790. package/dist/ionic/p-BwKpO3Is.js +4 -0
  791. package/dist/ionic/p-C0EQceqV.js +5 -0
  792. package/dist/ionic/p-CB91Gr9M.js +4 -0
  793. package/dist/ionic/p-CEkwLb3L.js +4 -0
  794. package/dist/ionic/p-CJsJQPQD.js +4 -0
  795. package/dist/ionic/p-CODBQrPj.js +4 -0
  796. package/dist/ionic/p-Ch7MBNn_.js +4 -0
  797. package/{components/p-BT_5jSqG.js → dist/ionic/p-Cm20lBQw.js} +1 -1
  798. package/dist/ionic/p-CnAWnbNK.js +4 -0
  799. package/dist/ionic/p-D1t981Ih.js +4 -0
  800. package/dist/ionic/p-D4MT1z4_.js +4 -0
  801. package/dist/ionic/p-D4veLKCq.js +4 -0
  802. package/dist/ionic/p-DF7ubVci.js +4 -0
  803. package/dist/ionic/p-DMaSfupH.js +4 -0
  804. package/{components/p-D13Eaw-8.js → dist/ionic/p-DQDmksdT.js} +1 -1
  805. package/dist/ionic/p-DTsDGZPd.js +4 -0
  806. package/dist/ionic/p-DaJxRxSQ.js +4 -0
  807. package/dist/ionic/p-DdCaKRle.js +4 -0
  808. package/dist/ionic/p-Dhi5xtNS.js +4 -0
  809. package/dist/ionic/p-Dy243NXW.js +4 -0
  810. package/dist/ionic/p-MqqcZQSB.js +4 -0
  811. package/dist/ionic/{p-CKvCXMs9.js → p-OkgYzj-7.js} +1 -1
  812. package/dist/ionic/p-YIsE5bNG.js +4 -0
  813. package/dist/ionic/p-a09c7a4c.entry.js +4 -0
  814. package/dist/ionic/p-a63d2a40.entry.js +4 -0
  815. package/dist/ionic/p-a6e04ca3.entry.js +4 -0
  816. package/dist/ionic/p-a6fe63f0.entry.js +4 -0
  817. package/dist/ionic/p-a797625e.entry.js +4 -0
  818. package/dist/ionic/p-b275f17e.entry.js +4 -0
  819. package/dist/ionic/p-b3d04a86.entry.js +4 -0
  820. package/dist/ionic/p-c5635175.entry.js +4 -0
  821. package/dist/ionic/p-c76d57fb.entry.js +4 -0
  822. package/dist/ionic/p-ca3a07b5.entry.js +4 -0
  823. package/dist/ionic/p-ced3cda1.entry.js +4 -0
  824. package/dist/ionic/p-cf22e991.entry.js +4 -0
  825. package/dist/ionic/p-d0c1d21d.entry.js +4 -0
  826. package/dist/ionic/p-d0d42da6.entry.js +4 -0
  827. package/dist/ionic/p-d0dfc9a3.entry.js +4 -0
  828. package/dist/ionic/p-d0f253fc.entry.js +4 -0
  829. package/dist/ionic/p-d33dfc12.entry.js +4 -0
  830. package/dist/ionic/p-d34bfb61.entry.js +4 -0
  831. package/dist/ionic/p-dc8e0b91.entry.js +4 -0
  832. package/dist/ionic/p-ddde8df3.entry.js +4 -0
  833. package/dist/ionic/p-df642ef5.entry.js +4 -0
  834. package/dist/ionic/p-e04d63e1.entry.js +4 -0
  835. package/dist/ionic/p-eeb7b373.entry.js +4 -0
  836. package/dist/ionic/p-f692219d.entry.js +4 -0
  837. package/dist/ionic/p-f8001f8f.entry.js +4 -0
  838. package/dist/ionic/p-fIOYmaqA.js +4 -0
  839. package/dist/ionic/p-fb457fdd.entry.js +4 -0
  840. package/dist/ionic/p-fc6d26ff.entry.js +4 -0
  841. package/dist/ionic/p-im8OkZlj.js +4 -0
  842. package/dist/ionic/p-lMb_45ax.js +4 -0
  843. package/dist/ionic/{p-Wk5HzclC.js → p-oUgyLDGL.js} +1 -1
  844. package/dist/ionic/p-vXpMhGrs.js +4 -0
  845. package/dist/types/components/accordion/accordion.d.ts +6 -3
  846. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  847. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  848. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  849. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  850. package/dist/types/components/alert/alert.d.ts +3 -2
  851. package/dist/types/components/app/app.d.ts +4 -5
  852. package/dist/types/components/avatar/avatar.d.ts +32 -0
  853. package/dist/types/components/back-button/back-button.d.ts +2 -1
  854. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  855. package/dist/types/components/badge/badge.d.ts +34 -1
  856. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  857. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  858. package/dist/types/components/button/button.d.ts +23 -8
  859. package/dist/types/components/buttons/buttons.d.ts +5 -1
  860. package/dist/types/components/card/card.d.ts +8 -1
  861. package/dist/types/components/card-content/card-content.d.ts +2 -1
  862. package/dist/types/components/card-header/card-header.d.ts +3 -2
  863. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  864. package/dist/types/components/card-title/card-title.d.ts +2 -1
  865. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  866. package/dist/types/components/chip/chip.d.ts +26 -1
  867. package/dist/types/components/col/col.d.ts +52 -5
  868. package/dist/types/components/content/content.d.ts +3 -0
  869. package/dist/types/components/datetime/datetime.d.ts +26 -1
  870. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  871. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  872. package/dist/types/components/divider/divider.d.ts +20 -0
  873. package/dist/types/components/fab/fab.d.ts +4 -0
  874. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  875. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  876. package/dist/types/components/footer/footer.d.ts +4 -3
  877. package/dist/types/components/gallery/gallery-constants.d.ts +9 -0
  878. package/dist/types/components/gallery/gallery-interface.d.ts +10 -0
  879. package/dist/types/components/gallery/gallery.d.ts +218 -0
  880. package/dist/types/components/gallery/test/utils.d.ts +3 -0
  881. package/dist/types/components/gallery-item/gallery-item.d.ts +33 -0
  882. package/dist/types/components/grid/grid.d.ts +4 -0
  883. package/dist/types/components/header/header.d.ts +9 -3
  884. package/dist/types/components/header/header.utils.d.ts +3 -3
  885. package/dist/types/components/img/img.d.ts +3 -0
  886. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +21 -0
  887. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  888. package/dist/types/components/input/input.d.ts +31 -5
  889. package/dist/types/components/input-otp/input-otp.d.ts +37 -0
  890. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  891. package/dist/types/components/item/item.d.ts +11 -4
  892. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  893. package/dist/types/components/item-group/item-group.d.ts +4 -0
  894. package/dist/types/components/item-option/item-option.d.ts +18 -1
  895. package/dist/types/components/item-options/item-options.d.ts +4 -0
  896. package/dist/types/components/item-sliding/item-sliding.d.ts +47 -1
  897. package/dist/types/components/item-sliding/test/test.utils.d.ts +13 -0
  898. package/dist/types/components/label/label.d.ts +2 -1
  899. package/dist/types/components/list/list.d.ts +15 -1
  900. package/dist/types/components/list-header/list-header.d.ts +2 -1
  901. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  902. package/dist/types/components/loading/loading.d.ts +3 -2
  903. package/dist/types/components/menu/menu.d.ts +3 -0
  904. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  905. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  906. package/dist/types/components/modal/animations/ionic.enter.d.ts +6 -0
  907. package/dist/types/components/modal/animations/ionic.leave.d.ts +6 -0
  908. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  909. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  910. package/dist/types/components/modal/modal.d.ts +11 -1
  911. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  912. package/dist/types/components/nav/nav.d.ts +5 -1
  913. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  914. package/dist/types/components/note/note.d.ts +2 -1
  915. package/dist/types/components/picker/picker.d.ts +2 -1
  916. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  917. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  918. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  919. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  920. package/dist/types/components/popover/popover.d.ts +6 -5
  921. package/dist/types/components/progress-bar/progress-bar.d.ts +10 -1
  922. package/dist/types/components/radio/radio.d.ts +2 -1
  923. package/dist/types/components/radio-group/radio-group.d.ts +12 -0
  924. package/dist/types/components/range/range.d.ts +2 -1
  925. package/dist/types/components/refresher/refresher.d.ts +2 -1
  926. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  927. package/dist/types/components/reorder/reorder.d.ts +9 -0
  928. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  929. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  930. package/dist/types/components/route/route.d.ts +4 -0
  931. package/dist/types/components/router/router.d.ts +4 -0
  932. package/dist/types/components/router-link/router-link.d.ts +4 -0
  933. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  934. package/dist/types/components/row/row.d.ts +4 -0
  935. package/dist/types/components/searchbar/searchbar.d.ts +51 -9
  936. package/dist/types/components/segment/segment.d.ts +2 -1
  937. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  938. package/dist/types/components/select/select-interface.d.ts +31 -0
  939. package/dist/types/components/select/select.d.ts +66 -13
  940. package/dist/types/components/select-modal/select-modal.d.ts +8 -0
  941. package/dist/types/components/select-option/select-option.d.ts +45 -1
  942. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  943. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  944. package/dist/types/components/spinner/spinner.d.ts +15 -0
  945. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  946. package/dist/types/components/tab/tab.d.ts +4 -0
  947. package/dist/types/components/tab-bar/tab-bar.d.ts +37 -2
  948. package/dist/types/components/tab-button/tab-button.d.ts +12 -1
  949. package/dist/types/components/tabs/tabs.d.ts +3 -0
  950. package/dist/types/components/text/text.d.ts +2 -1
  951. package/dist/types/components/textarea/textarea.d.ts +53 -4
  952. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  953. package/dist/types/components/title/title.d.ts +4 -0
  954. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  955. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  956. package/dist/types/components/toast/toast.d.ts +19 -2
  957. package/dist/types/components/toggle/toggle.d.ts +15 -1
  958. package/dist/types/components/toolbar/toolbar.d.ts +43 -3
  959. package/dist/types/components.d.ts +1854 -207
  960. package/dist/types/global/ionic-global.d.ts +28 -2
  961. package/dist/types/interface.d.ts +3 -0
  962. package/dist/types/utils/config.d.ts +106 -2
  963. package/dist/types/utils/css-value-validation.d.ts +21 -0
  964. package/dist/types/utils/focus-trap.d.ts +1 -1
  965. package/dist/types/utils/focus-visible.d.ts +13 -0
  966. package/dist/types/utils/forms/validity.d.ts +7 -0
  967. package/dist/types/utils/helpers.d.ts +22 -0
  968. package/dist/types/utils/overlay-control-label.d.ts +34 -0
  969. package/dist/types/utils/overlays-interface.d.ts +31 -1
  970. package/dist/types/utils/overlays.d.ts +1 -1
  971. package/dist/types/utils/sanitization/index.d.ts +58 -2
  972. package/dist/types/utils/select-option-render.d.ts +53 -0
  973. package/dist/types/utils/test/playwright/drag-element.d.ts +16 -3
  974. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  975. package/dist/types/utils/theme.d.ts +9 -0
  976. package/hydrate/index.js +6010 -1352
  977. package/hydrate/index.mjs +6010 -1352
  978. package/package.json +9 -5
  979. package/components/p--JUspHvy.js +0 -4
  980. package/components/p-5bE_Wz4Y.js +0 -4
  981. package/components/p-B60hm8Qv.js +0 -4
  982. package/components/p-B9jFTlwE.js +0 -4
  983. package/components/p-BHrrc-3d.js +0 -4
  984. package/components/p-BIPPbW0M.js +0 -4
  985. package/components/p-BLmJ0zRm.js +0 -4
  986. package/components/p-BSEgsdFI.js +0 -4
  987. package/components/p-BTPfOxsU.js +0 -4
  988. package/components/p-BUYFy35a.js +0 -4
  989. package/components/p-BWEZufiK.js +0 -4
  990. package/components/p-Baq1XyAy.js +0 -4
  991. package/components/p-BirPFsRD.js +0 -4
  992. package/components/p-BjfgFSSR.js +0 -4
  993. package/components/p-BmVRXR1y.js +0 -4
  994. package/components/p-BnqQlm7c.js +0 -4
  995. package/components/p-BqpciLfi.js +0 -4
  996. package/components/p-BsPelv04.js +0 -4
  997. package/components/p-BsQPAqo9.js +0 -4
  998. package/components/p-Bz0dSlXZ.js +0 -4
  999. package/components/p-C1aScSTo.js +0 -4
  1000. package/components/p-CHqRYvYm.js +0 -4
  1001. package/components/p-CI3ncNZm.js +0 -4
  1002. package/components/p-CIGNaXM1.js +0 -4
  1003. package/components/p-CO7fmmxt.js +0 -4
  1004. package/components/p-CRNiQiYf.js +0 -4
  1005. package/components/p-CSZf8_j0.js +0 -4
  1006. package/components/p-CU5rbWAW.js +0 -4
  1007. package/components/p-C_xFdyXe.js +0 -4
  1008. package/components/p-Cfx4M1Bn.js +0 -4
  1009. package/components/p-Ciz1-FuE.js +0 -4
  1010. package/components/p-CmR5uXej.js +0 -4
  1011. package/components/p-CtWGkNnJ.js +0 -4
  1012. package/components/p-D6Ynv7Xh.js +0 -4
  1013. package/components/p-D7bSXQD3.js +0 -4
  1014. package/components/p-DIE4pXMl.js +0 -4
  1015. package/components/p-DJztqcrH.js +0 -4
  1016. package/components/p-DNQI6d-L.js +0 -4
  1017. package/components/p-DOFCbuQR.js +0 -4
  1018. package/components/p-DiVJyqlX.js +0 -4
  1019. package/components/p-DnL1c9_X.js +0 -4
  1020. package/components/p-DqZAXv2t.js +0 -4
  1021. package/components/p-Sh0ICmPV.js +0 -4
  1022. package/components/p-W5nO8mX_.js +0 -4
  1023. package/components/p-ZjP4CjeZ.js +0 -4
  1024. package/components/p-ijF0iCrA.js +0 -4
  1025. package/components/p-j5IxBIan.js +0 -4
  1026. package/components/p-k_E4tX5Z.js +0 -4
  1027. package/components/p-lE_JGpHD.js +0 -4
  1028. package/components/p-nyXeHk23.js +0 -4
  1029. package/components/p-rCa2eL0j.js +0 -4
  1030. package/components/p-ryqmO0B-.js +0 -4
  1031. package/dist/cjs/config-xninhj0J.js +0 -201
  1032. package/dist/cjs/hardware-back-button-iUuF_76h.js +0 -121
  1033. package/dist/cjs/index-DkNv4J_i.js +0 -10
  1034. package/dist/cjs/ionic-global-B-cA6LkY.js +0 -151
  1035. package/dist/cjs/validity-BpS37YFM.js +0 -19
  1036. package/dist/esm/config-DQCONYYp.js +0 -195
  1037. package/dist/esm/hardware-back-button-B93Gru0Y.js +0 -115
  1038. package/dist/esm/index-ZjP4CjeZ.js +0 -7
  1039. package/dist/esm/ionic-global-Cp_eT4sZ.js +0 -146
  1040. package/dist/esm/validity-DJztqcrH.js +0 -17
  1041. package/dist/ionic/p-01f81ea5.entry.js +0 -4
  1042. package/dist/ionic/p-06c232a4.entry.js +0 -4
  1043. package/dist/ionic/p-0dc33652.entry.js +0 -4
  1044. package/dist/ionic/p-0fa9c382.entry.js +0 -4
  1045. package/dist/ionic/p-20b1a044.entry.js +0 -4
  1046. package/dist/ionic/p-21eb76d5.entry.js +0 -4
  1047. package/dist/ionic/p-27d30585.entry.js +0 -4
  1048. package/dist/ionic/p-2a05aa64.entry.js +0 -4
  1049. package/dist/ionic/p-2bb2cb18.entry.js +0 -4
  1050. package/dist/ionic/p-3353c229.entry.js +0 -4
  1051. package/dist/ionic/p-34586ead.entry.js +0 -4
  1052. package/dist/ionic/p-37e720da.entry.js +0 -4
  1053. package/dist/ionic/p-390ca786.entry.js +0 -4
  1054. package/dist/ionic/p-3a126bca.entry.js +0 -4
  1055. package/dist/ionic/p-3a7d1e91.entry.js +0 -4
  1056. package/dist/ionic/p-3ae5f277.entry.js +0 -4
  1057. package/dist/ionic/p-4745f534.entry.js +0 -4
  1058. package/dist/ionic/p-4858af1f.entry.js +0 -4
  1059. package/dist/ionic/p-485fda23.entry.js +0 -4
  1060. package/dist/ionic/p-4baa5b82.entry.js +0 -4
  1061. package/dist/ionic/p-4e92a11f.entry.js +0 -4
  1062. package/dist/ionic/p-5018dfc8.entry.js +0 -4
  1063. package/dist/ionic/p-50e1194a.entry.js +0 -4
  1064. package/dist/ionic/p-5d1da0a2.entry.js +0 -4
  1065. package/dist/ionic/p-5eb8e86d.entry.js +0 -4
  1066. package/dist/ionic/p-65ebdf1b.entry.js +0 -4
  1067. package/dist/ionic/p-6ebdbebe.entry.js +0 -4
  1068. package/dist/ionic/p-75dc25ba.entry.js +0 -4
  1069. package/dist/ionic/p-84d5ce05.entry.js +0 -4
  1070. package/dist/ionic/p-874b4bd8.entry.js +0 -4
  1071. package/dist/ionic/p-8c8eee7d.entry.js +0 -4
  1072. package/dist/ionic/p-8eb8ee76.entry.js +0 -4
  1073. package/dist/ionic/p-8fce95d5.entry.js +0 -4
  1074. package/dist/ionic/p-9a65ac7f.entry.js +0 -4
  1075. package/dist/ionic/p-9eeaBrnk.js +0 -4
  1076. package/dist/ionic/p-9f1103ce.entry.js +0 -4
  1077. package/dist/ionic/p-9f9db3a2.entry.js +0 -4
  1078. package/dist/ionic/p-BGqMS-oh.js +0 -4
  1079. package/dist/ionic/p-BUFIpxKM.js +0 -4
  1080. package/dist/ionic/p-BmVRXR1y.js +0 -4
  1081. package/dist/ionic/p-CFlfIb2g.js +0 -4
  1082. package/dist/ionic/p-CIGNaXM1.js +0 -4
  1083. package/dist/ionic/p-CtWGkNnJ.js +0 -4
  1084. package/dist/ionic/p-Cx3IXROA.js +0 -4
  1085. package/dist/ionic/p-D-3ycHmd.js +0 -4
  1086. package/dist/ionic/p-D4uTWt4-.js +0 -4
  1087. package/dist/ionic/p-DC3RagnA.js +0 -4
  1088. package/dist/ionic/p-DIuEbVLu.js +0 -4
  1089. package/dist/ionic/p-DJztqcrH.js +0 -4
  1090. package/dist/ionic/p-DSG2s2Eb.js +0 -4
  1091. package/dist/ionic/p-DV3sJJW8.js +0 -4
  1092. package/dist/ionic/p-Dfbt-q2k.js +0 -4
  1093. package/dist/ionic/p-DiVJyqlX.js +0 -4
  1094. package/dist/ionic/p-DoJvtrbw.js +0 -4
  1095. package/dist/ionic/p-DzWaWHGc.js +0 -4
  1096. package/dist/ionic/p-KjNvRoEp.js +0 -4
  1097. package/dist/ionic/p-Nqf6uvGh.js +0 -4
  1098. package/dist/ionic/p-SNAkTDfm.js +0 -4
  1099. package/dist/ionic/p-ZjP4CjeZ.js +0 -4
  1100. package/dist/ionic/p-a21add2f.entry.js +0 -4
  1101. package/dist/ionic/p-a3bdcae6.entry.js +0 -4
  1102. package/dist/ionic/p-b6a7397c.entry.js +0 -4
  1103. package/dist/ionic/p-c0fb8edd.entry.js +0 -4
  1104. package/dist/ionic/p-c38b648e.entry.js +0 -4
  1105. package/dist/ionic/p-c4d8641b.entry.js +0 -4
  1106. package/dist/ionic/p-c6e49f3f.entry.js +0 -4
  1107. package/dist/ionic/p-ca2ab74d.entry.js +0 -4
  1108. package/dist/ionic/p-d889ff6d.entry.js +0 -4
  1109. package/dist/ionic/p-dfa8d673.entry.js +0 -4
  1110. package/dist/ionic/p-e0be05c5.entry.js +0 -4
  1111. package/dist/ionic/p-e6a4bb56.entry.js +0 -4
  1112. package/dist/ionic/p-ec090e0a.entry.js +0 -4
  1113. package/dist/ionic/p-ef4c3bee.entry.js +0 -4
  1114. package/dist/ionic/p-f386f6ae.entry.js +0 -4
  1115. package/dist/ionic/p-fabcce6c.entry.js +0 -4
  1116. package/dist/ionic/p-mjKAFv89.js +0 -4
  1117. package/dist/ionic/p-tcQvqkiX.js +0 -5
  1118. package/dist/ionic/p-viFHDgRs.js +0 -4
  1119. package/dist/ionic/p-xWb6fgfq.js +0 -4
  1120. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
@@ -3,24 +3,23 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index$3 = require('./index-Ct7gcRif.js');
7
- var index$2 = require('./index-CIrkNXqJ.js');
8
- var frameworkDelegate = require('./framework-delegate-BtICZDHr.js');
9
- var helpers = require('./helpers-Cv23MFHM.js');
6
+ var index$2 = require('./index-GZU9YrFc.js');
7
+ var index$1 = require('./index-BxEZd5IE.js');
8
+ var frameworkDelegate = require('./framework-delegate-DC5nq_NN.js');
9
+ var helpers = require('./helpers-DiOgV5hw.js');
10
10
  var lockController = require('./lock-controller-aDB9wrEf.js');
11
- var capacitor = require('./capacitor-DmA66EwP.js');
12
- var overlays = require('./overlays-DdtIYQUH.js');
13
- var theme = require('./theme-CeDs6Hcv.js');
14
- var index$4 = require('./index-BERfRao3.js');
15
- var ionicGlobal = require('./ionic-global-B-cA6LkY.js');
16
- var keyboard = require('./keyboard-hHzlEQpk.js');
17
- var animation = require('./animation-BJq0kcy2.js');
11
+ var capacitor = require('./capacitor-CQSg1uCo.js');
12
+ var overlays = require('./overlays-CFGbPUmE.js');
13
+ var theme = require('./theme-IlOsGAz7.js');
14
+ var index$3 = require('./index-BaJ7_YbC.js');
15
+ var ionicGlobal = require('./ionic-global-QoUqobrQ.js');
16
+ var keyboard = require('./keyboard-faZBQysj.js');
17
+ var animation = require('./animation-B3xfVcDO.js');
18
18
  var cubicBezier = require('./cubic-bezier-DAjy1V-e.js');
19
- var index$1 = require('./index-CAvQ7Tka.js');
20
- var index = require('./index-DkNv4J_i.js');
21
- require('./hardware-back-button-iUuF_76h.js');
19
+ var index = require('./index-CAvQ7Tka.js');
20
+ require('./focus-visible-BIj-I3-C.js');
22
21
  require('./gesture-controller-dtqlP_q4.js');
23
- require('./keyboard-UuAS4D_9.js');
22
+ require('./keyboard-Bn0Ppim6.js');
24
23
 
25
24
  var Style;
26
25
  (function (Style) {
@@ -117,18 +116,116 @@ const getBackdropValueForSheet = (x, backdropBreakpoint) => {
117
116
  *
118
117
  */
119
118
  const setCardStatusBarDark = () => {
120
- if (!index.win || index.win.innerWidth >= 768) {
119
+ if (!ionicGlobal.win || ionicGlobal.win.innerWidth >= 768) {
121
120
  return;
122
121
  }
123
122
  StatusBar.setStyle({ style: Style.Dark });
124
123
  };
125
124
  const setCardStatusBarDefault = (defaultStyle = Style.Default) => {
126
- if (!index.win || index.win.innerWidth >= 768) {
125
+ if (!ionicGlobal.win || ionicGlobal.win.innerWidth >= 768) {
127
126
  return;
128
127
  }
129
128
  StatusBar.setStyle({ style: defaultStyle });
130
129
  };
131
130
 
131
+ const createSheetEnterAnimation = (opts) => {
132
+ const { currentBreakpoint, backdropBreakpoint, expandToScroll, staticBackdropOpacity } = opts;
133
+ /**
134
+ * If the backdropBreakpoint is undefined, then the backdrop
135
+ * should always fade in. If the backdropBreakpoint came before the
136
+ * current breakpoint, then the backdrop should be fading in.
137
+ */
138
+ const shouldShowBackdrop = backdropBreakpoint === undefined || backdropBreakpoint < currentBreakpoint;
139
+ let initialBackdrop = '0';
140
+ if (staticBackdropOpacity) {
141
+ initialBackdrop = 'calc(var(--backdrop-opacity)';
142
+ }
143
+ else if (shouldShowBackdrop) {
144
+ initialBackdrop = `calc(var(--backdrop-opacity) * ${currentBreakpoint})`;
145
+ }
146
+ const backdropAnimation = animation.createAnimation('backdropAnimation').fromTo('opacity', 0, initialBackdrop);
147
+ if (shouldShowBackdrop) {
148
+ backdropAnimation
149
+ .beforeStyles({
150
+ 'pointer-events': 'none',
151
+ })
152
+ .afterClearStyles(['pointer-events']);
153
+ }
154
+ const wrapperAnimation = animation.createAnimation('wrapperAnimation').keyframes([
155
+ { offset: 0, opacity: 1, transform: 'translateY(100%)' },
156
+ { offset: 1, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
157
+ ]);
158
+ /**
159
+ * This allows the content to be scrollable at any breakpoint.
160
+ */
161
+ const contentAnimation = !expandToScroll
162
+ ? animation.createAnimation('contentAnimation').keyframes([
163
+ { offset: 0, opacity: 1, maxHeight: `${(1 - currentBreakpoint) * 100}%` },
164
+ { offset: 1, opacity: 1, maxHeight: `${currentBreakpoint * 100}%` },
165
+ ])
166
+ : undefined;
167
+ return { wrapperAnimation, backdropAnimation, contentAnimation };
168
+ };
169
+ const createSheetLeaveAnimation = (opts) => {
170
+ const { currentBreakpoint, backdropBreakpoint } = opts;
171
+ /**
172
+ * Backdrop does not always fade in from 0 to 1 if backdropBreakpoint
173
+ * is defined, so we need to account for that offset by figuring out
174
+ * what the current backdrop value should be.
175
+ */
176
+ const backdropValue = `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(currentBreakpoint, backdropBreakpoint)})`;
177
+ const defaultBackdrop = [
178
+ { offset: 0, opacity: backdropValue },
179
+ { offset: 1, opacity: 0 },
180
+ ];
181
+ const customBackdrop = [
182
+ { offset: 0, opacity: backdropValue },
183
+ { offset: backdropBreakpoint, opacity: 0 },
184
+ { offset: 1, opacity: 0 },
185
+ ];
186
+ const backdropAnimation = animation.createAnimation('backdropAnimation').keyframes(backdropBreakpoint !== 0 ? customBackdrop : defaultBackdrop);
187
+ const wrapperAnimation = animation.createAnimation('wrapperAnimation').keyframes([
188
+ { offset: 0, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
189
+ { offset: 1, opacity: 1, transform: `translateY(100%)` },
190
+ ]);
191
+ return { wrapperAnimation, backdropAnimation };
192
+ };
193
+
194
+ const createEnterAnimation$2 = () => {
195
+ const backdropAnimation = animation.createAnimation()
196
+ .fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
197
+ .beforeStyles({
198
+ 'pointer-events': 'none',
199
+ })
200
+ .afterClearStyles(['pointer-events']);
201
+ const wrapperAnimation = animation.createAnimation().keyframes([
202
+ { offset: 0, opacity: 0.01, transform: 'translateY(40px)' },
203
+ { offset: 1, opacity: 1, transform: `translateY(0px)` },
204
+ ]);
205
+ return { backdropAnimation, wrapperAnimation, contentAnimation: undefined };
206
+ };
207
+ /**
208
+ * Ionic Modal Enter Animation
209
+ */
210
+ const ionicEnterAnimation = (baseEl, opts) => {
211
+ const { currentBreakpoint, expandToScroll } = opts;
212
+ const root = helpers.getElementRoot(baseEl);
213
+ const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$2();
214
+ backdropAnimation.addElement(root.querySelector('ion-backdrop'));
215
+ wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
216
+ // The content animation is only added if scrolling is enabled for
217
+ // all the breakpoints.
218
+ !expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
219
+ backdropAnimation.duration(300).easing('ease-out');
220
+ wrapperAnimation.duration(400).easing('cubic-bezier(0.32, 0.68, 0, 1)');
221
+ contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.duration(400).easing('cubic-bezier(0.32, 0.68, 0, 1)');
222
+ const baseAnimation = animation.createAnimation().addElement(baseEl).addAnimation([backdropAnimation, wrapperAnimation]);
223
+ if (contentAnimation) {
224
+ baseAnimation.addAnimation(contentAnimation);
225
+ }
226
+ return baseAnimation;
227
+ };
228
+
132
229
  const handleCanDismiss = async (el, animation) => {
133
230
  /**
134
231
  * If canDismiss is not a function
@@ -264,7 +361,7 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss, onD
264
361
  let initialScrollY = true;
265
362
  let lastStep = 0;
266
363
  const getScrollY = () => {
267
- if (contentEl && index$2.isIonContent(contentEl)) {
364
+ if (contentEl && index$1.isIonContent(contentEl)) {
268
365
  return contentEl.scrollY;
269
366
  /**
270
367
  * Custom scroll containers are intended to be
@@ -296,7 +393,7 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss, onD
296
393
  * swipe again. The target content will not
297
394
  * be the same between swipes.
298
395
  */
299
- contentEl = index$2.findClosestIonContent(target);
396
+ contentEl = index$1.findClosestIonContent(target);
300
397
  if (contentEl) {
301
398
  /**
302
399
  * The card should never swipe to close
@@ -312,7 +409,7 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss, onD
312
409
  * operation, and getScrollElement is
313
410
  * asynchronous.
314
411
  */
315
- if (index$2.isIonContent(contentEl)) {
412
+ if (index$1.isIonContent(contentEl)) {
316
413
  const root = helpers.getElementRoot(contentEl);
317
414
  scrollEl = root.querySelector('.inner-scroll');
318
415
  }
@@ -363,7 +460,7 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss, onD
363
460
  * happen at the same time as the gesture.
364
461
  */
365
462
  if (deltaY > 0 && contentEl) {
366
- index$2.disableContentScrollY(contentEl);
463
+ index$1.disableContentScrollY(contentEl);
367
464
  }
368
465
  animation.progressStart(true, isOpen ? 1 : 0);
369
466
  onDragStart();
@@ -377,7 +474,7 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss, onD
377
474
  * happen at the same time as the gesture.
378
475
  */
379
476
  if (deltaY > 0 && contentEl) {
380
- index$2.disableContentScrollY(contentEl);
477
+ index$1.disableContentScrollY(contentEl);
381
478
  }
382
479
  /**
383
480
  * If we are swiping on the content
@@ -472,7 +569,7 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss, onD
472
569
  isOpen = shouldComplete;
473
570
  gesture.enable(false);
474
571
  if (contentEl) {
475
- index$2.resetContentScrollY(contentEl, initialScrollY);
572
+ index$1.resetContentScrollY(contentEl, initialScrollY);
476
573
  }
477
574
  animation
478
575
  .onFinish(() => {
@@ -507,7 +604,7 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss, onD
507
604
  };
508
605
  onDragEnd(eventDetail);
509
606
  };
510
- const gesture = index$1.createGesture({
607
+ const gesture = index.createGesture({
511
608
  el,
512
609
  gestureName: 'modalSwipeToClose',
513
610
  gesturePriority: overlays.OVERLAY_GESTURE_PRIORITY,
@@ -562,63 +659,6 @@ const calculateProgress = (el, deltaY) => {
562
659
  return Math.max(0, Math.min(1, roundedProgress));
563
660
  };
564
661
 
565
- const createSheetEnterAnimation = (opts) => {
566
- const { currentBreakpoint, backdropBreakpoint, expandToScroll } = opts;
567
- /**
568
- * If the backdropBreakpoint is undefined, then the backdrop
569
- * should always fade in. If the backdropBreakpoint came before the
570
- * current breakpoint, then the backdrop should be fading in.
571
- */
572
- const shouldShowBackdrop = backdropBreakpoint === undefined || backdropBreakpoint < currentBreakpoint;
573
- const initialBackdrop = shouldShowBackdrop ? `calc(var(--backdrop-opacity) * ${currentBreakpoint})` : '0';
574
- const backdropAnimation = animation.createAnimation('backdropAnimation').fromTo('opacity', 0, initialBackdrop);
575
- if (shouldShowBackdrop) {
576
- backdropAnimation
577
- .beforeStyles({
578
- 'pointer-events': 'none',
579
- })
580
- .afterClearStyles(['pointer-events']);
581
- }
582
- const wrapperAnimation = animation.createAnimation('wrapperAnimation').keyframes([
583
- { offset: 0, opacity: 1, transform: 'translateY(100%)' },
584
- { offset: 1, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
585
- ]);
586
- /**
587
- * This allows the content to be scrollable at any breakpoint.
588
- */
589
- const contentAnimation = !expandToScroll
590
- ? animation.createAnimation('contentAnimation').keyframes([
591
- { offset: 0, opacity: 1, maxHeight: `${(1 - currentBreakpoint) * 100}%` },
592
- { offset: 1, opacity: 1, maxHeight: `${currentBreakpoint * 100}%` },
593
- ])
594
- : undefined;
595
- return { wrapperAnimation, backdropAnimation, contentAnimation };
596
- };
597
- const createSheetLeaveAnimation = (opts) => {
598
- const { currentBreakpoint, backdropBreakpoint } = opts;
599
- /**
600
- * Backdrop does not always fade in from 0 to 1 if backdropBreakpoint
601
- * is defined, so we need to account for that offset by figuring out
602
- * what the current backdrop value should be.
603
- */
604
- const backdropValue = `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(currentBreakpoint, backdropBreakpoint)})`;
605
- const defaultBackdrop = [
606
- { offset: 0, opacity: backdropValue },
607
- { offset: 1, opacity: 0 },
608
- ];
609
- const customBackdrop = [
610
- { offset: 0, opacity: backdropValue },
611
- { offset: backdropBreakpoint, opacity: 0 },
612
- { offset: 1, opacity: 0 },
613
- ];
614
- const backdropAnimation = animation.createAnimation('backdropAnimation').keyframes(backdropBreakpoint !== 0 ? customBackdrop : defaultBackdrop);
615
- const wrapperAnimation = animation.createAnimation('wrapperAnimation').keyframes([
616
- { offset: 0, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
617
- { offset: 1, opacity: 1, transform: `translateY(100%)` },
618
- ]);
619
- return { wrapperAnimation, backdropAnimation };
620
- };
621
-
622
662
  const createEnterAnimation$1 = () => {
623
663
  const backdropAnimation = animation.createAnimation()
624
664
  .fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
@@ -1009,16 +1049,16 @@ const mdLeaveAnimation = (baseEl, opts) => {
1009
1049
  return baseAnimation;
1010
1050
  };
1011
1051
 
1012
- const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], expandToScroll, getCurrentBreakpoint, onDismiss, onBreakpointChange, onDragStart, onDragMove, onDragEnd) => {
1052
+ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], expandToScroll, getCurrentBreakpoint, onDismiss, onBreakpointChange, usePhysicsBasedGesture, onDragStart, onDragMove, onDragEnd) => {
1013
1053
  // Defaults for the sheet swipe animation
1014
1054
  const defaultBackdrop = [
1015
1055
  { offset: 0, opacity: 'var(--backdrop-opacity)' },
1016
- { offset: 1, opacity: 0.01 },
1056
+ { offset: 1, opacity: usePhysicsBasedGesture ? 'var(--backdrop-opacity)' : 0.01 },
1017
1057
  ];
1018
1058
  const customBackdrop = [
1019
1059
  { offset: 0, opacity: 'var(--backdrop-opacity)' },
1020
- { offset: 1 - backdropBreakpoint, opacity: 0 },
1021
- { offset: 1, opacity: 0 },
1060
+ { offset: 1 - backdropBreakpoint, opacity: usePhysicsBasedGesture ? 'var(--backdrop-opacity)' : 0 },
1061
+ { offset: 1, opacity: usePhysicsBasedGesture ? 'var(--backdrop-opacity)' : 0 },
1022
1062
  ];
1023
1063
  const SheetDefaults = {
1024
1064
  WRAPPER_KEYFRAMES: [
@@ -1199,14 +1239,14 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1199
1239
  * For example, when using ion-nav within a modal it is possible to swipe, push a view,
1200
1240
  * and then swipe again. The target content will not be the same between swipes.
1201
1241
  */
1202
- const contentEl = index$2.findClosestIonContent(detail.event.target);
1242
+ const contentEl = index$1.findClosestIonContent(detail.event.target);
1203
1243
  currentBreakpoint = getCurrentBreakpoint();
1204
1244
  /**
1205
1245
  * If `expandToScroll` is disabled, we should not allow the swipe gesture
1206
1246
  * to start if the content is not scrolled to the top.
1207
1247
  */
1208
1248
  if (!expandToScroll && contentEl) {
1209
- const scrollEl = index$2.isIonContent(contentEl) ? helpers.getElementRoot(contentEl).querySelector('.inner-scroll') : contentEl;
1249
+ const scrollEl = index$1.isIonContent(contentEl) ? helpers.getElementRoot(contentEl).querySelector('.inner-scroll') : contentEl;
1210
1250
  return scrollEl.scrollTop === 0;
1211
1251
  }
1212
1252
  if (currentBreakpoint === 1 && contentEl) {
@@ -1219,7 +1259,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1219
1259
  * Note 2: Do not use getScrollElement here because we need this to be a synchronous
1220
1260
  * operation, and getScrollElement is asynchronous.
1221
1261
  */
1222
- const scrollEl = index$2.isIonContent(contentEl) ? helpers.getElementRoot(contentEl).querySelector('.inner-scroll') : contentEl;
1262
+ const scrollEl = index$1.isIonContent(contentEl) ? helpers.getElementRoot(contentEl).querySelector('.inner-scroll') : contentEl;
1223
1263
  const hasRefresherInContent = !!contentEl.querySelector('ion-refresher');
1224
1264
  return !hasRefresherInContent && scrollEl.scrollTop === 0;
1225
1265
  }
@@ -1252,9 +1292,9 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1252
1292
  * which would impact performance significantly.
1253
1293
  */
1254
1294
  if (!expandToScroll) {
1255
- const targetEl = index$2.findClosestIonContent(detail.event.target);
1295
+ const targetEl = index$1.findClosestIonContent(detail.event.target);
1256
1296
  cachedScrollEl =
1257
- targetEl && index$2.isIonContent(targetEl) ? helpers.getElementRoot(targetEl).querySelector('.inner-scroll') : targetEl;
1297
+ targetEl && index$1.isIonContent(targetEl) ? helpers.getElementRoot(targetEl).querySelector('.inner-scroll') : targetEl;
1258
1298
  }
1259
1299
  /**
1260
1300
  * If expandToScroll is disabled, we need to swap
@@ -1348,7 +1388,9 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1348
1388
  : step;
1349
1389
  offset = helpers.clamp(0.0001, processedStep, maxStep);
1350
1390
  animation.progressStep(offset);
1351
- const snapBreakpoint = calculateSnapBreakpoint(detail.deltaY);
1391
+ const snapBreakpoint = usePhysicsBasedGesture
1392
+ ? calculateVelocitySnapBreakpoint(detail.deltaY, detail.velocityY, detail.currentY)
1393
+ : calculatePositionSnapBreakpoint(detail.deltaY);
1352
1394
  const eventDetail = {
1353
1395
  currentY: detail.currentY,
1354
1396
  deltaY: detail.deltaY,
@@ -1359,7 +1401,9 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1359
1401
  onDragMove(eventDetail);
1360
1402
  };
1361
1403
  const onEnd = (detail) => {
1362
- const snapBreakpoint = calculateSnapBreakpoint(detail.deltaY);
1404
+ const snapBreakpoint = usePhysicsBasedGesture
1405
+ ? calculateVelocitySnapBreakpoint(detail.deltaY, detail.velocityY, detail.currentY)
1406
+ : calculatePositionSnapBreakpoint(detail.deltaY);
1363
1407
  const eventDetail = {
1364
1408
  currentY: detail.currentY,
1365
1409
  deltaY: detail.deltaY,
@@ -1406,6 +1450,14 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1406
1450
  */
1407
1451
  const shouldPreventDismiss = canDismiss && breakpoint === 0;
1408
1452
  const snapToBreakpoint = shouldPreventDismiss ? currentBreakpoint : breakpoint;
1453
+ /**
1454
+ * Detect snap-back behavior: when the snap target is the same as the current breakpoint,
1455
+ * the user released before crossing the threshold to a new breakpoint.
1456
+ * Apply different timing and easing for snap-back vs. snap-to-new.
1457
+ */
1458
+ const isSnapBack = snapToBreakpoint === currentBreakpoint;
1459
+ const duration = usePhysicsBasedGesture ? (isSnapBack ? 300 : 400) : 500;
1460
+ const easing = isSnapBack ? 'cubic-bezier(0.34, 1.4, 0.64, 1)' : 'cubic-bezier(0.32, 0.68, 0, 1)';
1409
1461
  const shouldRemainOpen = snapToBreakpoint !== 0;
1410
1462
  currentBreakpoint = 0;
1411
1463
  /**
@@ -1420,11 +1472,15 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1420
1472
  backdropAnimation.keyframes([
1421
1473
  {
1422
1474
  offset: 0,
1423
- opacity: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(1 - breakpointOffset, backdropBreakpoint)})`,
1475
+ opacity: usePhysicsBasedGesture
1476
+ ? 'var(--backdrop-opacity)'
1477
+ : `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(1 - breakpointOffset, backdropBreakpoint)})`,
1424
1478
  },
1425
1479
  {
1426
1480
  offset: 1,
1427
- opacity: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(snapToBreakpoint, backdropBreakpoint)})`,
1481
+ opacity: usePhysicsBasedGesture
1482
+ ? 'var(--backdrop-opacity)'
1483
+ : `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(snapToBreakpoint, backdropBreakpoint)})`,
1428
1484
  },
1429
1485
  ]);
1430
1486
  if (contentAnimation) {
@@ -1442,6 +1498,12 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1442
1498
  }
1443
1499
  animation.progressStep(0);
1444
1500
  }
1501
+ /**
1502
+ * Apply the appropriate easing curve for this snap behavior.
1503
+ */
1504
+ if (usePhysicsBasedGesture) {
1505
+ animation.easing(easing);
1506
+ }
1445
1507
  /**
1446
1508
  * Gesture should remain disabled until the
1447
1509
  * snapping animation completes.
@@ -1531,7 +1593,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1531
1593
  * be added every time onEnd runs.
1532
1594
  */
1533
1595
  }, { oneTimeCallback: true })
1534
- .progressEnd(1, 0, animated ? 500 : 0);
1596
+ .progressEnd(1, 0, animated ? duration : 0);
1535
1597
  });
1536
1598
  };
1537
1599
  /**
@@ -1542,7 +1604,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1542
1604
  * @param deltaY The change in Y position since the gesture started.
1543
1605
  * @returns The snap breakpoint value.
1544
1606
  */
1545
- const calculateSnapBreakpoint = (deltaY) => {
1607
+ const calculatePositionSnapBreakpoint = (deltaY) => {
1546
1608
  /**
1547
1609
  * Calculates the real-time vertical position of the modal.
1548
1610
  * We combine the wrapper's current bounding box position with the
@@ -1562,6 +1624,50 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1562
1624
  });
1563
1625
  return snapBreakpoint;
1564
1626
  };
1627
+ /**
1628
+ * Calculates the snap breakpoint using velocity-based logic.
1629
+ * This provides a more intuitive and responsive sheet behavior for the Ionic theme.
1630
+ *
1631
+ * Rules:
1632
+ * 1. Fast downward flick (> 500 px/s) always dismisses, regardless of position
1633
+ * 2. Fast upward flick (> 400 px/s) snaps to the next breakpoint above
1634
+ * 3. If dragged 40% below current snap point without fast upward flick, dismisses
1635
+ * 4. Otherwise, falls back to position-based snap (closest breakpoint)
1636
+ *
1637
+ * @param deltaY The change in Y position since gesture started
1638
+ * @param velocityY The velocity in pixels per millisecond
1639
+ * @param currentY The current Y position of the gesture
1640
+ * @returns The snap breakpoint value
1641
+ */
1642
+ const calculateVelocitySnapBreakpoint = (deltaY, velocityY, currentY) => {
1643
+ // Convert velocity from px/ms to px/s for easier threshold comparison
1644
+ const velocityYPerSecond = velocityY * 1000;
1645
+ // Calculate current progress (0 = fully closed, 1 = fully expanded)
1646
+ const currentProgress = calculateProgress(currentY);
1647
+ // Rule 1: Fast downward flick always dismisses
1648
+ if (velocityYPerSecond > 500) {
1649
+ return minBreakpoint;
1650
+ }
1651
+ // Rule 2: Fast upward flick moves to next breakpoint above
1652
+ if (velocityYPerSecond < -400) {
1653
+ // Find next breakpoint above current position
1654
+ const nextBreakpoint = breakpoints.find((bp) => bp > currentProgress);
1655
+ // If no breakpoint above, stay at max breakpoint
1656
+ return nextBreakpoint !== null && nextBreakpoint !== void 0 ? nextBreakpoint : maxBreakpoint;
1657
+ }
1658
+ // Rule 3: 40% dismissal rule (only if not flicking up and 0 breakpoint exists)
1659
+ if (minBreakpoint === 0 && currentBreakpoint > 0) {
1660
+ // Calculate how far we've moved below the current snap point
1661
+ const distanceBelowSnap = currentBreakpoint - currentProgress;
1662
+ const percentageBelowSnap = distanceBelowSnap / currentBreakpoint;
1663
+ // If dragged more than 40% below and not flicking up, dismiss
1664
+ if (percentageBelowSnap > 0.4 && velocityYPerSecond <= 400) {
1665
+ return 0;
1666
+ }
1667
+ }
1668
+ // Rule 4: Fallback to position-based snap (existing logic)
1669
+ return calculatePositionSnapBreakpoint(deltaY);
1670
+ };
1565
1671
  /**
1566
1672
  * Calculates the progress of the swipe gesture.
1567
1673
  *
@@ -1632,7 +1738,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1632
1738
  */
1633
1739
  return viewportBottom - activeHeight;
1634
1740
  };
1635
- const gesture = index$1.createGesture({
1741
+ const gesture = index.createGesture({
1636
1742
  el: wrapperEl,
1637
1743
  gestureName: 'modalSheet',
1638
1744
  gesturePriority: 40,
@@ -1678,9 +1784,9 @@ let cacheInvalidationScheduled = false;
1678
1784
  * Matches: @media (min-width: 768px) and (min-height: 600px)
1679
1785
  */
1680
1786
  const isCenteredDialogViewport = () => {
1681
- if (!index.win)
1787
+ if (!ionicGlobal.win)
1682
1788
  return false;
1683
- return index.win.matchMedia(`(min-width: ${MODAL_INSET_MIN_WIDTH}px) and (min-height: ${MODAL_INSET_MIN_HEIGHT}px)`)
1789
+ return ionicGlobal.win.matchMedia(`(min-width: ${MODAL_INSET_MIN_WIDTH}px) and (min-height: ${MODAL_INSET_MIN_HEIGHT}px)`)
1684
1790
  .matches;
1685
1791
  };
1686
1792
  /**
@@ -1695,7 +1801,7 @@ const getRootSafeAreaTop = () => {
1695
1801
  if (cachedRootSafeAreaTop !== null) {
1696
1802
  return cachedRootSafeAreaTop;
1697
1803
  }
1698
- const doc = index.win === null || index.win === void 0 ? void 0 : index.win.document;
1804
+ const doc = ionicGlobal.win === null || ionicGlobal.win === void 0 ? void 0 : ionicGlobal.win.document;
1699
1805
  if (!(doc === null || doc === void 0 ? void 0 : doc.body)) {
1700
1806
  return 0;
1701
1807
  }
@@ -1801,8 +1907,8 @@ const getInitialSafeAreaConfig = (context) => {
1801
1907
  const getPositionBasedSafeAreaConfig = (wrapperEl) => {
1802
1908
  var _a, _b;
1803
1909
  const rect = wrapperEl.getBoundingClientRect();
1804
- const vh = (_a = index.win === null || index.win === void 0 ? void 0 : index.win.innerHeight) !== null && _a !== void 0 ? _a : 0;
1805
- const vw = (_b = index.win === null || index.win === void 0 ? void 0 : index.win.innerWidth) !== null && _b !== void 0 ? _b : 0;
1910
+ const vh = (_a = ionicGlobal.win === null || ionicGlobal.win === void 0 ? void 0 : ionicGlobal.win.innerHeight) !== null && _a !== void 0 ? _a : 0;
1911
+ const vw = (_b = ionicGlobal.win === null || ionicGlobal.win === void 0 ? void 0 : ionicGlobal.win.innerWidth) !== null && _b !== void 0 ? _b : 0;
1806
1912
  // Only apply safe-area to sides where modal overlaps with screen edge
1807
1913
  return {
1808
1914
  top: rect.top <= EDGE_THRESHOLD ? 'inherit' : '0px',
@@ -1835,26 +1941,28 @@ const clearSafeAreaOverrides = (hostEl) => {
1835
1941
  hostEl.style.removeProperty('--ion-safe-area-right');
1836
1942
  };
1837
1943
 
1838
- const modalIosCss = () => `:host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-wrapper{outline:none}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:""}:host(.modal-sheet){--height:calc(100% - (var(--ion-modal-offset-top, 0px) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.4)}:host(.modal-card),:host(.modal-sheet){--border-radius:10px}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:10px}}.modal-wrapper{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}@media screen and (max-width: 767px){@supports (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - max(30px, var(--ion-safe-area-top)) - 10px)}}@supports not (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - 40px)}}:host(.modal-card) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-card){--backdrop-opacity:0;--width:100%;-ms-flex-align:end;align-items:flex-end}:host(.modal-card) .modal-shadow{display:none}:host(.modal-card) ion-backdrop{pointer-events:none}}@media screen and (min-width: 768px){:host(.modal-card){--width:calc(100% - 120px);--height:calc(100% - (120px + var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));--max-width:720px;--max-height:1000px;--backdrop-opacity:0;--box-shadow:0px 0px 30px 10px rgba(0, 0, 0, 0.1);-webkit-transition:all 0.5s ease-in-out;transition:all 0.5s ease-in-out}:host(.modal-card) .modal-wrapper{-webkit-box-shadow:none;box-shadow:none}:host(.modal-card) .modal-shadow{-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}`;
1944
+ const modalIonicCss = () => `:host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-width:0;--border-style:none;--border-color:transparent;--box-shadow:none;right:0;left:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-wrapper{outline:none}.modal-shadow{position:absolute;background:transparent}.modal-handle{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;cursor:pointer;z-index:11}.modal-handle::before{position:absolute;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:""}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--background:var(--token-bg-surface-default, var(--token-primitives-base-white, #ffffff));--box-shadow:var(--token-elevation-3, 0px 2px 7px 0px rgba(0, 0, 0, 0.05), 0px 6px 32px 0px rgba(0, 0, 0, 0.16));--backdrop-opacity:0.7;color:var(--token-text-default, var(--token-primitives-neutral-1200, #242424))}:host(.modal-round){--border-radius:var(--token-border-radius-1000, var(--token-scale-1000, 40px))}:host(.modal-soft){--border-radius:var(--token-border-radius-400, var(--token-scale-400, 16px))}:host(.modal-rectangular){--border-radius:var(--token-border-radius-0, var(--token-scale-0, 0px))}:host(.select-modal.modal-default){--max-height:45%;--max-width:calc(100% - (var(--token-space-400, var(--token-scale-400, 16px)) * 2));--min-height:340px}.modal-handle{right:0px;left:0px;top:var(--token-space-300, var(--token-scale-300, 12px));border-radius:var(--token-border-radius-100, var(--token-scale-100, 4px));width:var(--token-scale-1100, 44px);height:var(--token-scale-100, 4px);background-color:var(--token-primitives-neutral-300, #e0e0e0)}.modal-handle::before{-webkit-padding-start:var(--token-space-100, var(--token-scale-100, 4px));padding-inline-start:var(--token-space-100, var(--token-scale-100, 4px));-webkit-padding-end:var(--token-space-100, var(--token-scale-100, 4px));padding-inline-end:var(--token-space-100, var(--token-scale-100, 4px));padding-top:var(--token-space-100, var(--token-scale-100, 4px));padding-bottom:var(--token-space-100, var(--token-scale-100, 4px))}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + var(--token-scale-250, 10px)))}`;
1839
1945
 
1840
- const modalMdCss = () => `:host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-wrapper{outline:none}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:""}:host(.modal-sheet){--height:calc(100% - (var(--ion-modal-offset-top, 0px) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}`;
1946
+ const modalIosCss = () => `:host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-width:0;--border-style:none;--border-color:transparent;--box-shadow:none;right:0;left:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-wrapper{outline:none}.modal-shadow{position:absolute;background:transparent}.modal-handle{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;cursor:pointer;z-index:11}.modal-handle::before{position:absolute;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:""}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--background:var(--ion-background-color, #fff);--border-radius:0;--backdrop-opacity:0;color:var(--ion-text-color, #000)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{right:0px;left:0px;top:5px;border-radius:8px;width:36px;height:5px;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be))}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;width:36px;height:5px}:host(.modal-sheet){--height:calc(100% - (var(--ion-modal-offset-top, 0px) + 10px))}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.4)}:host(.modal-card),:host(.modal-sheet){--border-radius:10px}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:10px}}.modal-wrapper{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}@media screen and (max-width: 767px){@supports (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - max(30px, var(--ion-safe-area-top)) - 10px)}}@supports not (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - 40px)}}:host(.modal-card) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-card){--backdrop-opacity:0;--width:100%;-ms-flex-align:end;align-items:flex-end}:host(.modal-card) .modal-shadow{display:none}:host(.modal-card) ion-backdrop{pointer-events:none}}@media screen and (min-width: 768px){:host(.modal-card){--width:calc(100% - 120px);--height:calc(100% - (120px + var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));--max-width:720px;--max-height:1000px;--backdrop-opacity:0;--box-shadow:0px 0px 30px 10px rgba(0, 0, 0, 0.1);-webkit-transition:all 0.5s ease-in-out;transition:all 0.5s ease-in-out}:host(.modal-card) .modal-wrapper{-webkit-box-shadow:none;box-shadow:none}:host(.modal-card) .modal-shadow{-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}`;
1947
+
1948
+ const modalMdCss = () => `:host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-width:0;--border-style:none;--border-color:transparent;--box-shadow:none;right:0;left:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-wrapper{outline:none}.modal-shadow{position:absolute;background:transparent}.modal-handle{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;cursor:pointer;z-index:11}.modal-handle::before{position:absolute;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:""}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--background:var(--ion-background-color, #fff);--border-radius:0;--backdrop-opacity:0;color:var(--ion-text-color, #000)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{right:0px;left:0px;top:5px;border-radius:8px;width:36px;height:5px;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be))}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;width:36px;height:5px}:host(.modal-sheet){--height:calc(100% - (var(--ion-modal-offset-top, 0px) + 10px))}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}`;
1841
1949
 
1842
1950
  const Modal = class {
1843
1951
  constructor(hostRef) {
1844
- index$3.registerInstance(this, hostRef);
1845
- this.didPresent = index$3.createEvent(this, "ionModalDidPresent", 7);
1846
- this.willPresent = index$3.createEvent(this, "ionModalWillPresent", 7);
1847
- this.willDismiss = index$3.createEvent(this, "ionModalWillDismiss", 7);
1848
- this.didDismiss = index$3.createEvent(this, "ionModalDidDismiss", 7);
1849
- this.ionBreakpointDidChange = index$3.createEvent(this, "ionBreakpointDidChange", 7);
1850
- this.didPresentShorthand = index$3.createEvent(this, "didPresent", 7);
1851
- this.willPresentShorthand = index$3.createEvent(this, "willPresent", 7);
1852
- this.willDismissShorthand = index$3.createEvent(this, "willDismiss", 7);
1853
- this.didDismissShorthand = index$3.createEvent(this, "didDismiss", 7);
1854
- this.ionMount = index$3.createEvent(this, "ionMount", 7);
1855
- this.ionDragStart = index$3.createEvent(this, "ionDragStart", 7);
1856
- this.ionDragMove = index$3.createEvent(this, "ionDragMove", 7);
1857
- this.ionDragEnd = index$3.createEvent(this, "ionDragEnd", 7);
1952
+ index$2.registerInstance(this, hostRef);
1953
+ this.didPresent = index$2.createEvent(this, "ionModalDidPresent", 7);
1954
+ this.willPresent = index$2.createEvent(this, "ionModalWillPresent", 7);
1955
+ this.willDismiss = index$2.createEvent(this, "ionModalWillDismiss", 7);
1956
+ this.didDismiss = index$2.createEvent(this, "ionModalDidDismiss", 7);
1957
+ this.ionBreakpointDidChange = index$2.createEvent(this, "ionBreakpointDidChange", 7);
1958
+ this.didPresentShorthand = index$2.createEvent(this, "didPresent", 7);
1959
+ this.willPresentShorthand = index$2.createEvent(this, "willPresent", 7);
1960
+ this.willDismissShorthand = index$2.createEvent(this, "willDismiss", 7);
1961
+ this.didDismissShorthand = index$2.createEvent(this, "didDismiss", 7);
1962
+ this.ionMount = index$2.createEvent(this, "ionMount", 7);
1963
+ this.ionDragStart = index$2.createEvent(this, "ionDragStart", 7);
1964
+ this.ionDragMove = index$2.createEvent(this, "ionDragMove", 7);
1965
+ this.ionDragEnd = index$2.createEvent(this, "ionDragEnd", 7);
1858
1966
  this.lockController = lockController.createLockController();
1859
1967
  this.triggerController = overlays.createTriggerController();
1860
1968
  this.coreDelegate = frameworkDelegate.CoreDelegate();
@@ -2141,7 +2249,7 @@ const Modal = class {
2141
2249
  this.currentBreakpoint = this.initialBreakpoint;
2142
2250
  }
2143
2251
  if (breakpoints !== undefined && initialBreakpoint !== undefined && !breakpoints.includes(initialBreakpoint)) {
2144
- index$3.printIonWarning('[ion-modal] - Your breakpoints array must include the initialBreakpoint value.');
2252
+ index$2.printIonWarning('[ion-modal] - Your breakpoints array must include the initialBreakpoint value.');
2145
2253
  }
2146
2254
  if (!((_a = this.htmlAttributes) === null || _a === void 0 ? void 0 : _a.id)) {
2147
2255
  overlays.setOverlayId(this.el);
@@ -2241,7 +2349,7 @@ const Modal = class {
2241
2349
  * get the transition incorrect.
2242
2350
  */
2243
2351
  if (helpers.hasLazyBuild(el)) {
2244
- await index$4.deepReady(this.usersElement);
2352
+ await index$3.deepReady(this.usersElement);
2245
2353
  /**
2246
2354
  * If keepContentsMounted="true" then the
2247
2355
  * JS Framework has already mounted the inner
@@ -2252,9 +2360,9 @@ const Modal = class {
2252
2360
  */
2253
2361
  }
2254
2362
  else if (!this.keepContentsMounted) {
2255
- await index$4.waitForMount();
2363
+ await index$3.waitForMount();
2256
2364
  }
2257
- index$3.writeTask(() => this.el.classList.add('show-modal'));
2365
+ index$2.writeTask(() => this.el.classList.add('show-modal'));
2258
2366
  // Recalculate isSheetModal before safe-area setup because framework
2259
2367
  // bindings (e.g., Angular) may not have been applied when componentWillLoad ran.
2260
2368
  this.isSheetModal = this.breakpoints !== undefined && this.initialBreakpoint !== undefined;
@@ -2271,11 +2379,12 @@ const Modal = class {
2271
2379
  this.statusBarStyle = await StatusBar.getStyle();
2272
2380
  setCardStatusBarDark();
2273
2381
  }
2274
- await overlays.present(this, 'modalEnter', iosEnterAnimation, mdEnterAnimation, {
2382
+ await overlays.present(this, 'modalEnter', iosEnterAnimation, mdEnterAnimation, ionicEnterAnimation, {
2275
2383
  presentingEl: presentingElement,
2276
2384
  currentBreakpoint: this.initialBreakpoint,
2277
2385
  backdropBreakpoint: this.backdropBreakpoint,
2278
2386
  expandToScroll: this.expandToScroll,
2387
+ staticBackdropOpacity: ionicGlobal.getIonTheme(this) === 'ionic',
2279
2388
  });
2280
2389
  // Update safe-area based on actual position after animation
2281
2390
  this.updateSafeAreaOverrides();
@@ -2333,14 +2442,14 @@ const Modal = class {
2333
2442
  // All of the elements needed for the swipe gesture
2334
2443
  // should be in the DOM and referenced by now, except
2335
2444
  // for the presenting el
2336
- const animationBuilder = this.leaveAnimation || index$3.config.get('modalLeave', iosLeaveAnimation);
2445
+ const animationBuilder = this.leaveAnimation || index$2.config.get('modalLeave', iosLeaveAnimation);
2337
2446
  const ani = (this.animation = animationBuilder(el, {
2338
2447
  presentingEl: this.presentingElement,
2339
2448
  expandToScroll: this.expandToScroll,
2340
2449
  }));
2341
- const contentEl = index$2.findIonContent(el);
2450
+ const contentEl = index$1.findIonContent(el);
2342
2451
  if (!contentEl) {
2343
- index$2.printIonContentErrorMsg(el);
2452
+ index$1.printIonContentErrorMsg(el);
2344
2453
  return;
2345
2454
  }
2346
2455
  const statusBarStyle = (_a = this.statusBarStyle) !== null && _a !== void 0 ? _a : Style.Default;
@@ -2352,12 +2461,13 @@ const Modal = class {
2352
2461
  if (!wrapperEl || initialBreakpoint === undefined) {
2353
2462
  return;
2354
2463
  }
2355
- const animationBuilder = this.enterAnimation || index$3.config.get('modalEnter', iosEnterAnimation);
2464
+ const animationBuilder = this.enterAnimation || index$2.config.get('modalEnter', iosEnterAnimation);
2356
2465
  const ani = (this.animation = animationBuilder(this.el, {
2357
2466
  presentingEl: this.presentingElement,
2358
2467
  currentBreakpoint: initialBreakpoint,
2359
2468
  backdropBreakpoint,
2360
2469
  expandToScroll: this.expandToScroll,
2470
+ staticBackdropOpacity: ionicGlobal.getIonTheme(this) === 'ionic',
2361
2471
  }));
2362
2472
  ani.progressStart(true, 1);
2363
2473
  const { gesture, moveSheetToBreakpoint } = createSheetGesture(this.el, this.backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, ani, this.sortedBreakpoints, this.expandToScroll, () => { var _a; return (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : 0; }, () => this.sheetOnDismiss(), (breakpoint) => {
@@ -2365,7 +2475,7 @@ const Modal = class {
2365
2475
  this.currentBreakpoint = breakpoint;
2366
2476
  this.ionBreakpointDidChange.emit({ breakpoint });
2367
2477
  }
2368
- }, () => this.onDragStart(), (detail) => this.onDragMove(detail), (detail) => this.onDragEnd(detail));
2478
+ }, ionicGlobal.getIonTheme(this) === 'ionic', () => this.onDragStart(), (detail) => this.onDragMove(detail), (detail) => this.onDragEnd(detail));
2369
2479
  this.gesture = gesture;
2370
2480
  this.moveSheetToBreakpoint = moveSheetToBreakpoint;
2371
2481
  this.gesture.enable(true);
@@ -2551,7 +2661,7 @@ const Modal = class {
2551
2661
  if (dismissed) {
2552
2662
  const { delegate } = this.getDelegate();
2553
2663
  await frameworkDelegate.detachComponent(delegate, this.usersElement);
2554
- index$3.writeTask(() => this.el.classList.remove('show-modal'));
2664
+ index$2.writeTask(() => this.el.classList.remove('show-modal'));
2555
2665
  if (this.animation) {
2556
2666
  this.animation.destroy();
2557
2667
  }
@@ -2588,11 +2698,11 @@ const Modal = class {
2588
2698
  */
2589
2699
  async setCurrentBreakpoint(breakpoint) {
2590
2700
  if (!this.isSheetModal) {
2591
- index$3.printIonWarning('[ion-modal] - setCurrentBreakpoint is only supported on sheet modals.');
2701
+ index$2.printIonWarning('[ion-modal] - setCurrentBreakpoint is only supported on sheet modals.');
2592
2702
  return;
2593
2703
  }
2594
2704
  if (!this.breakpoints.includes(breakpoint)) {
2595
- index$3.printIonWarning(`[ion-modal] - Attempted to set invalid breakpoint value ${breakpoint}. Please double check that the breakpoint value is part of your defined breakpoints.`);
2705
+ index$2.printIonWarning(`[ion-modal] - Attempted to set invalid breakpoint value ${breakpoint}. Please double check that the breakpoint value is part of your defined breakpoints.`);
2596
2706
  return;
2597
2707
  }
2598
2708
  const { currentBreakpoint, moveSheetToBreakpoint, canDismiss, breakpoints, animated } = this;
@@ -2637,6 +2747,18 @@ const Modal = class {
2637
2747
  await this.setCurrentBreakpoint(nextBreakpoint);
2638
2748
  return true;
2639
2749
  }
2750
+ getShape() {
2751
+ const theme = ionicGlobal.getIonTheme(this);
2752
+ const { shape } = this;
2753
+ // TODO(ROU-11167): Remove theme check when shapes are defined for all themes.
2754
+ if (theme !== 'ionic') {
2755
+ return undefined;
2756
+ }
2757
+ if (shape === undefined) {
2758
+ return 'round';
2759
+ }
2760
+ return shape;
2761
+ }
2640
2762
  initViewTransitionListener() {
2641
2763
  // Only enable for iOS card modals when no custom animations are provided
2642
2764
  if (ionicGlobal.getIonMode(this) !== 'ios' || !this.presentingElement || this.enterAnimation || this.leaveAnimation) {
@@ -2970,15 +3092,16 @@ const Modal = class {
2970
3092
  render() {
2971
3093
  const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap, expandToScroll, } = this;
2972
3094
  const showHandle = handle !== false && isSheetModal;
2973
- const mode = ionicGlobal.getIonMode(this);
2974
- const isCardModal = presentingElement !== undefined && mode === 'ios';
3095
+ const theme$1 = ionicGlobal.getIonTheme(this);
3096
+ const isCardModal = presentingElement !== undefined && theme$1 === 'ios';
2975
3097
  const isHandleCycle = handleBehavior === 'cycle';
3098
+ const shape = this.getShape();
2976
3099
  const isSheetModalWithHandle = isSheetModal && showHandle;
2977
- return (index$3.h(index$3.Host, Object.assign({ key: 'ab93657f4a5b4c97168d292b398d975e4b5b4af4', "no-router": true,
3100
+ return (index$2.h(index$2.Host, Object.assign({ key: '942426c1823a35d3862650f04bccba188ba06f20', "no-router": true,
2978
3101
  // Allow the modal to be navigable when the handle is focusable
2979
3102
  tabIndex: isHandleCycle && isSheetModalWithHandle ? 0 : -1 }, htmlAttributes, { style: {
2980
3103
  zIndex: `${20000 + this.overlayIndex}`,
2981
- }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), index$3.h("ion-backdrop", { key: '5ba6315c7c8c64fa04c62f85fd493da5275b2cbd', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && index$3.h("div", { key: 'a76c48d41c67f86c18a7481e980e6925e614f85d', class: "modal-shadow" }), index$3.h("div", Object.assign({ key: 'dccf3c774355429bc0ea7461d9b1ef941ea91902',
3104
+ }, class: Object.assign({ [theme$1]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-${shape}`]: shape !== undefined, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), index$2.h("ion-backdrop", { key: 'fb572cbba4efc0f06dad9caa6a8d62a2cb354244', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), theme$1 === 'ios' && index$2.h("div", { key: '43f414dab4d290afbb936350e41ce14fdf18d22f', class: "modal-shadow" }), index$2.h("div", Object.assign({ key: '020e40f58d73119fc96dd341830d20a61b1f336a',
2982
3105
  /*
2983
3106
  role and aria-modal must be used on the
2984
3107
  same element. They must also be set inside the
@@ -2991,11 +3114,11 @@ const Modal = class {
2991
3114
  without the tabindex focus() would be a no-op and screen readers
2992
3115
  may not properly announce the dialog and its content when it opens.
2993
3116
  */
2994
- role: "dialog" }, inheritedAttributes, { "aria-modal": "true", tabIndex: -1, class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (index$3.h("button", { key: 'ba4ebd6364faba46ac8532d1c83cb655ae873a14', class: "modal-handle",
3117
+ role: "dialog" }, inheritedAttributes, { "aria-modal": "true", tabIndex: -1, class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (index$2.h("button", { key: '7f7fef1fb41f6fdd68080ce46ae938fa08757c34', class: "modal-handle",
2995
3118
  // Prevents the handle from receiving keyboard focus when it does not cycle
2996
- tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", ref: (el) => (this.dragHandleEl = el) })), index$3.h("slot", { key: '11d5921a8ebbcd0017d4f28a33d68049253f63f0', onSlotchange: this.onSlotChange }))));
3119
+ tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", "data-focus-order": "1", ref: (el) => (this.dragHandleEl = el) })), index$2.h("slot", { key: 'e6e1fe6fa25a6dc2f2c2c0f7a33f24a6d603c875', onSlotchange: this.onSlotChange }))));
2997
3120
  }
2998
- get el() { return index$3.getElement(this); }
3121
+ get el() { return index$2.getElement(this); }
2999
3122
  static get watchers() { return {
3000
3123
  "isOpen": [{
3001
3124
  "onIsOpenChange": 0
@@ -3015,6 +3138,7 @@ const LIFECYCLE_MAP = {
3015
3138
  ionModalDidDismiss: 'ionViewDidLeave',
3016
3139
  };
3017
3140
  Modal.style = {
3141
+ ionic: modalIonicCss(),
3018
3142
  ios: modalIosCss(),
3019
3143
  md: modalMdCss()
3020
3144
  };