@ionic/core 8.7.12-dev.11764939161.19555a2a → 8.7.12-dev.11764955407.1ef60cf1

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 (935) hide show
  1. package/components/action-sheet.js +9 -13
  2. package/components/alert.js +11 -14
  3. package/components/animation.js +1 -1
  4. package/components/backdrop.js +6 -9
  5. package/components/button.js +10 -41
  6. package/components/buttons.js +8 -11
  7. package/components/capacitor.js +1 -1
  8. package/components/checkbox.js +12 -31
  9. package/components/content.js +12 -14
  10. package/components/data.js +5 -5
  11. package/components/focus-visible.js +1 -23
  12. package/components/framework-delegate.js +1 -3
  13. package/components/hardware-back-button.js +115 -0
  14. package/components/header.js +22 -34
  15. package/components/helpers.js +3 -42
  16. package/components/index5.js +8 -8
  17. package/components/index6.js +1 -1
  18. package/components/index7.js +150 -111
  19. package/components/index8.js +111 -150
  20. package/components/index9.js +7 -0
  21. package/components/input-shims.js +2 -2
  22. package/components/input.utils.js +1 -1
  23. package/components/ion-accordion-group.js +5 -23
  24. package/components/ion-accordion.js +21 -32
  25. package/components/ion-app.js +77 -12
  26. package/components/ion-avatar.js +5 -58
  27. package/components/ion-back-button.js +19 -27
  28. package/components/ion-badge.js +9 -73
  29. package/components/ion-breadcrumb.js +10 -43
  30. package/components/ion-breadcrumbs.js +5 -8
  31. package/components/ion-card-content.js +7 -10
  32. package/components/ion-card-header.js +6 -9
  33. package/components/ion-card-subtitle.js +5 -8
  34. package/components/ion-card-title.js +5 -8
  35. package/components/ion-card.js +9 -21
  36. package/components/ion-chip.js +8 -53
  37. package/components/ion-col.js +50 -51
  38. package/components/ion-datetime-button.js +5 -8
  39. package/components/ion-datetime.js +21 -98
  40. package/components/ion-fab-button.js +15 -31
  41. package/components/ion-fab-list.js +5 -5
  42. package/components/ion-fab.js +6 -6
  43. package/components/ion-footer.js +13 -18
  44. package/components/ion-grid.js +5 -5
  45. package/components/ion-img.js +2 -5
  46. package/components/ion-infinite-scroll-content.js +8 -11
  47. package/components/ion-infinite-scroll.js +6 -78
  48. package/components/ion-input-otp.js +6 -9
  49. package/components/ion-input-password-toggle.js +13 -51
  50. package/components/ion-input.js +28 -120
  51. package/components/ion-item-divider.js +5 -8
  52. package/components/ion-item-group.js +5 -8
  53. package/components/ion-item-option.js +9 -36
  54. package/components/ion-item-options.js +7 -10
  55. package/components/ion-item-sliding.js +5 -5
  56. package/components/ion-loading.js +9 -12
  57. package/components/ion-menu-button.js +10 -26
  58. package/components/ion-menu-toggle.js +5 -5
  59. package/components/ion-menu.js +8 -10
  60. package/components/ion-nav-link.js +1 -1
  61. package/components/ion-nav.js +5 -7
  62. package/components/ion-note.js +5 -8
  63. package/components/ion-picker-legacy.js +7 -7
  64. package/components/ion-progress-bar.js +7 -25
  65. package/components/ion-range.js +9 -12
  66. package/components/ion-refresher-content.js +8 -23
  67. package/components/ion-refresher.js +7 -10
  68. package/components/ion-reorder-group.js +5 -5
  69. package/components/ion-reorder.js +5 -30
  70. package/components/ion-router-link.js +6 -6
  71. package/components/ion-router-outlet.js +4 -4
  72. package/components/ion-row.js +3 -6
  73. package/components/ion-searchbar.js +23 -137
  74. package/components/ion-segment-button.js +7 -10
  75. package/components/ion-segment-content.js +1 -1
  76. package/components/ion-segment-view.js +2 -5
  77. package/components/ion-segment.js +7 -10
  78. package/components/ion-select-option.js +2 -5
  79. package/components/ion-select.js +33 -117
  80. package/components/ion-skeleton-text.js +5 -5
  81. package/components/ion-split-pane.js +8 -11
  82. package/components/ion-tab-bar.js +9 -39
  83. package/components/ion-tab-button.js +8 -35
  84. package/components/ion-tab.js +2 -2
  85. package/components/ion-tabs.js +2 -2
  86. package/components/ion-text.js +5 -5
  87. package/components/ion-textarea.js +11 -52
  88. package/components/ion-thumbnail.js +2 -5
  89. package/components/ion-toast.js +12 -37
  90. package/components/ion-toggle.js +17 -74
  91. package/components/ionic-global.js +15 -349
  92. package/components/ios.transition.js +0 -1
  93. package/components/item.js +15 -47
  94. package/components/keyboard-controller.js +2 -4
  95. package/components/label.js +5 -8
  96. package/components/list-header.js +7 -10
  97. package/components/list.js +6 -27
  98. package/components/modal.js +79 -49
  99. package/components/notch-controller.js +1 -1
  100. package/components/overlays.js +4 -3
  101. package/components/picker-column-option.js +5 -8
  102. package/components/picker-column.js +8 -7
  103. package/components/picker-column2.js +4 -4
  104. package/components/picker.js +4 -7
  105. package/components/popover.js +9 -12
  106. package/components/radio-group.js +7 -15
  107. package/components/radio.js +8 -11
  108. package/components/ripple-effect.js +7 -15
  109. package/components/select-modal.js +5 -12
  110. package/components/select-popover.js +2 -8
  111. package/components/spinner.js +8 -31
  112. package/components/status-tap.js +1 -1
  113. package/components/title.js +7 -10
  114. package/components/toolbar.js +9 -153
  115. package/css/core.css +1 -1
  116. package/css/core.css.map +1 -1
  117. package/css/display.css +1 -1
  118. package/css/display.css.map +1 -1
  119. package/css/flex-utils.css +1 -1
  120. package/css/flex-utils.css.map +1 -1
  121. package/css/float-elements.css.map +1 -1
  122. package/css/global.bundle.css.map +1 -1
  123. package/css/ionic-swiper.css +1 -1
  124. package/css/ionic-swiper.css.map +1 -1
  125. package/css/ionic.bundle.css +1 -1
  126. package/css/ionic.bundle.css.map +1 -1
  127. package/css/normalize.css.map +1 -1
  128. package/css/padding.css.map +1 -1
  129. package/css/palettes/dark.always.css.map +1 -1
  130. package/css/palettes/dark.class.css.map +1 -1
  131. package/css/palettes/dark.system.css.map +1 -1
  132. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  133. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  134. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  135. package/css/palettes/high-contrast.always.css.map +1 -1
  136. package/css/palettes/high-contrast.class.css.map +1 -1
  137. package/css/palettes/high-contrast.system.css.map +1 -1
  138. package/css/structure.css.map +1 -1
  139. package/css/text-alignment.css.map +1 -1
  140. package/css/text-transformation.css.map +1 -1
  141. package/css/typography.css.map +1 -1
  142. package/css/utils.bundle.css +1 -1
  143. package/css/utils.bundle.css.map +1 -1
  144. package/dist/cjs/{animation-BYsP2q5j.js → animation-Bt3H9L1C.js} +2 -2
  145. package/dist/cjs/{app-globals-CrtAvKxl.js → app-globals-Ciccnk9_.js} +1 -1
  146. package/dist/cjs/{button-active-CDa7BeCl.js → button-active-CMc8cD90.js} +1 -1
  147. package/dist/cjs/{capacitor-BMhHF0O5.js → capacitor-DmA66EwP.js} +3 -3
  148. package/dist/cjs/{data-MoL8Ckx5.js → data-JwZKaIQB.js} +5 -5
  149. package/dist/{esm/focus-visible-vXpMhGrs.js → cjs/focus-visible-CCvKiLh3.js} +3 -23
  150. package/dist/cjs/{framework-delegate-Bwdk9vFS.js → framework-delegate-DMJRBuDi.js} +2 -4
  151. package/dist/cjs/{haptic-Cy3moXzO.js → haptic-ClPPQ_PS.js} +1 -1
  152. package/dist/cjs/hardware-back-button-VCK4V3mG.js +121 -0
  153. package/dist/cjs/{helpers-DnouLczu.js → helpers-DrTqNghc.js} +2 -41
  154. package/dist/cjs/{index-CWyLwRTs.js → index-094mMFB-.js} +3 -3
  155. package/dist/cjs/{index-Bq6U5NAb.js → index-C534ULug.js} +7 -8
  156. package/dist/cjs/{index-DUoP_H1L.js → index-CO6eryBo.js} +1 -1
  157. package/dist/cjs/index-DkNv4J_i.js +10 -0
  158. package/dist/cjs/{index-XjN3PjKG.js → index-DrMUZJj6.js} +15 -15
  159. package/dist/cjs/index.cjs.js +11 -10
  160. package/dist/cjs/{input-shims-D6DHFHsE.js → input-shims-CW0KUFTQ.js} +16 -17
  161. package/dist/cjs/{input.utils-BVyJKWft.js → input.utils-B_QROI2g.js} +5 -5
  162. package/dist/cjs/ion-accordion_2.cjs.entry.js +26 -55
  163. package/dist/cjs/ion-action-sheet.cjs.entry.js +18 -21
  164. package/dist/cjs/ion-alert.cjs.entry.js +20 -22
  165. package/dist/cjs/ion-app_8.cjs.entry.js +150 -249
  166. package/dist/cjs/ion-avatar_3.cjs.entry.js +11 -123
  167. package/dist/cjs/ion-back-button.cjs.entry.js +19 -28
  168. package/dist/cjs/ion-backdrop.cjs.entry.js +6 -9
  169. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +15 -51
  170. package/dist/cjs/ion-button_2.cjs.entry.js +11 -43
  171. package/dist/cjs/ion-card_5.cjs.entry.js +29 -53
  172. package/dist/cjs/ion-checkbox.cjs.entry.js +13 -31
  173. package/dist/cjs/ion-chip.cjs.entry.js +7 -48
  174. package/dist/cjs/ion-col_3.cjs.entry.js +56 -53
  175. package/dist/cjs/ion-datetime-button.cjs.entry.js +7 -11
  176. package/dist/cjs/ion-datetime_3.cjs.entry.js +38 -113
  177. package/dist/cjs/ion-fab_3.cjs.entry.js +25 -41
  178. package/dist/cjs/ion-img.cjs.entry.js +3 -7
  179. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +14 -89
  180. package/dist/cjs/ion-input-otp.cjs.entry.js +7 -11
  181. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +12 -50
  182. package/dist/cjs/ion-input.cjs.entry.js +30 -120
  183. package/dist/cjs/ion-item-option_3.cjs.entry.js +19 -48
  184. package/dist/cjs/ion-item_8.cjs.entry.js +46 -113
  185. package/dist/cjs/ion-loading.cjs.entry.js +15 -17
  186. package/dist/cjs/ion-menu_3.cjs.entry.js +26 -44
  187. package/dist/cjs/ion-modal.cjs.entry.js +128 -97
  188. package/dist/cjs/ion-nav_2.cjs.entry.js +10 -13
  189. package/dist/cjs/ion-picker-column-option.cjs.entry.js +6 -10
  190. package/dist/cjs/ion-picker-column.cjs.entry.js +12 -12
  191. package/dist/cjs/ion-picker.cjs.entry.js +5 -9
  192. package/dist/cjs/ion-popover.cjs.entry.js +16 -18
  193. package/dist/cjs/ion-progress-bar.cjs.entry.js +7 -25
  194. package/dist/cjs/ion-radio_2.cjs.entry.js +14 -24
  195. package/dist/cjs/ion-range.cjs.entry.js +10 -14
  196. package/dist/cjs/ion-refresher_2.cjs.entry.js +18 -36
  197. package/dist/cjs/ion-reorder_2.cjs.entry.js +12 -36
  198. package/dist/cjs/ion-ripple-effect.cjs.entry.js +6 -14
  199. package/dist/cjs/ion-route_4.cjs.entry.js +7 -8
  200. package/dist/cjs/ion-searchbar.cjs.entry.js +21 -134
  201. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  202. package/dist/cjs/ion-segment-view.cjs.entry.js +2 -5
  203. package/dist/cjs/ion-segment_2.cjs.entry.js +14 -21
  204. package/dist/cjs/ion-select-modal.cjs.entry.js +9 -15
  205. package/dist/cjs/ion-select_3.cjs.entry.js +38 -129
  206. package/dist/cjs/ion-spinner.cjs.entry.js +6 -28
  207. package/dist/cjs/ion-split-pane.cjs.entry.js +8 -11
  208. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +21 -75
  209. package/dist/cjs/ion-tab_2.cjs.entry.js +6 -7
  210. package/dist/cjs/ion-text.cjs.entry.js +5 -5
  211. package/dist/cjs/ion-textarea.cjs.entry.js +15 -55
  212. package/dist/cjs/ion-toast.cjs.entry.js +43 -66
  213. package/dist/cjs/ion-toggle.cjs.entry.js +21 -78
  214. package/dist/cjs/ionic-global-HMVqOFGO.js +151 -0
  215. package/dist/cjs/ionic.cjs.js +3 -3
  216. package/dist/cjs/{ios.transition-Duxxr-xb.js → ios.transition-BOt_uW73.js} +4 -6
  217. package/dist/cjs/{keyboard-UYQhk8rB.js → keyboard-UuAS4D_9.js} +1 -1
  218. package/dist/cjs/{keyboard-controller-ts0z4BIe.js → keyboard-controller-GXBiBRKS.js} +9 -11
  219. package/dist/cjs/{keyboard-C1Ds9WQH.js → keyboard-hHzlEQpk.js} +3 -4
  220. package/dist/cjs/loader.cjs.js +3 -3
  221. package/dist/cjs/{md.transition-BqUnXqxP.js → md.transition-Dt968VXB.js} +4 -5
  222. package/dist/cjs/{notch-controller-BX7CnNaL.js → notch-controller-Bzqhjm4f.js} +4 -4
  223. package/dist/cjs/{overlays-pdcfssMG.js → overlays-DxIZwUXI.js} +9 -8
  224. package/dist/cjs/{status-tap-e-hyosXV.js → status-tap-g0sWWkXk.js} +2 -3
  225. package/dist/cjs/{swipe-back-CR060nOX.js → swipe-back-BIayeNOD.js} +1 -2
  226. package/dist/collection/collection-manifest.json +0 -1
  227. package/dist/collection/components/accordion/accordion.ios.css +58 -73
  228. package/dist/collection/components/accordion/accordion.js +26 -36
  229. package/dist/collection/components/accordion/accordion.md.css +59 -67
  230. package/dist/collection/components/accordion-group/accordion-group.ios.css +4 -16
  231. package/dist/collection/components/accordion-group/accordion-group.js +8 -44
  232. package/dist/collection/components/accordion-group/accordion-group.md.css +4 -22
  233. package/dist/collection/components/action-sheet/action-sheet.ios.css +6 -18
  234. package/dist/collection/components/action-sheet/action-sheet.js +11 -15
  235. package/dist/collection/components/action-sheet/action-sheet.md.css +5 -17
  236. package/dist/collection/components/alert/alert.ios.css +1 -19
  237. package/dist/collection/components/alert/alert.js +13 -16
  238. package/dist/collection/components/alert/alert.md.css +1 -19
  239. package/dist/collection/components/app/app.js +78 -15
  240. package/dist/collection/components/avatar/avatar.ios.css +33 -7
  241. package/dist/collection/components/avatar/avatar.js +4 -120
  242. package/dist/collection/components/avatar/avatar.md.css +0 -51
  243. package/dist/collection/components/back-button/back-button.ios.css +48 -60
  244. package/dist/collection/components/back-button/back-button.js +19 -27
  245. package/dist/collection/components/back-button/back-button.md.css +48 -60
  246. package/dist/collection/components/backdrop/backdrop.ios.css +19 -56
  247. package/dist/collection/components/backdrop/backdrop.js +6 -12
  248. package/dist/collection/components/backdrop/backdrop.md.css +19 -56
  249. package/dist/collection/components/badge/badge.ios.css +12 -139
  250. package/dist/collection/components/badge/badge.js +9 -145
  251. package/dist/collection/components/badge/badge.md.css +12 -123
  252. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +8 -20
  253. package/dist/collection/components/breadcrumb/breadcrumb.js +11 -43
  254. package/dist/collection/components/breadcrumb/breadcrumb.md.css +8 -20
  255. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +0 -6
  256. package/dist/collection/components/breadcrumbs/breadcrumbs.js +9 -11
  257. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +0 -6
  258. package/dist/collection/components/button/button.ios.css +46 -135
  259. package/dist/collection/components/button/button.js +17 -48
  260. package/dist/collection/components/button/button.md.css +50 -126
  261. package/dist/collection/components/buttons/buttons.ios.css +7 -59
  262. package/dist/collection/components/buttons/buttons.js +9 -15
  263. package/dist/collection/components/buttons/buttons.md.css +3 -55
  264. package/dist/collection/components/card/card.ios.css +14 -65
  265. package/dist/collection/components/card/card.js +10 -41
  266. package/dist/collection/components/card/card.md.css +14 -65
  267. package/dist/collection/components/card-content/card-content.ios.css +1 -16
  268. package/dist/collection/components/card-content/card-content.js +8 -11
  269. package/dist/collection/components/card-content/card-content.md.css +1 -16
  270. package/dist/collection/components/card-header/card-header.ios.css +15 -27
  271. package/dist/collection/components/card-header/card-header.js +10 -13
  272. package/dist/collection/components/card-header/card-header.md.css +15 -27
  273. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +0 -12
  274. package/dist/collection/components/card-subtitle/card-subtitle.js +8 -11
  275. package/dist/collection/components/card-subtitle/card-subtitle.md.css +0 -12
  276. package/dist/collection/components/card-title/card-title.ios.css +0 -73
  277. package/dist/collection/components/card-title/card-title.js +8 -11
  278. package/dist/collection/components/card-title/card-title.md.css +0 -73
  279. package/dist/collection/components/checkbox/checkbox.ios.css +101 -161
  280. package/dist/collection/components/checkbox/checkbox.js +14 -70
  281. package/dist/collection/components/checkbox/checkbox.md.css +102 -162
  282. package/dist/collection/components/chip/chip.ios.css +14 -67
  283. package/dist/collection/components/chip/chip.js +8 -108
  284. package/dist/collection/components/chip/chip.md.css +14 -67
  285. package/dist/collection/components/col/col.css +4 -192
  286. package/dist/collection/components/col/col.js +61 -210
  287. package/dist/collection/components/content/content.css +2 -8
  288. package/dist/collection/components/content/content.js +11 -16
  289. package/dist/collection/components/datetime/datetime.ios.css +86 -242
  290. package/dist/collection/components/datetime/datetime.js +20 -98
  291. package/dist/collection/components/datetime/datetime.md.css +86 -242
  292. package/dist/collection/components/datetime/utils/data.js +5 -5
  293. package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -6
  294. package/dist/collection/components/datetime-button/datetime-button.js +8 -11
  295. package/dist/collection/components/datetime-button/datetime-button.md.css +0 -6
  296. package/dist/collection/components/fab/fab.css +1 -25
  297. package/dist/collection/components/fab/fab.js +5 -9
  298. package/dist/collection/components/fab-button/fab-button.ios.css +6 -18
  299. package/dist/collection/components/fab-button/fab-button.js +21 -36
  300. package/dist/collection/components/fab-button/fab-button.md.css +8 -20
  301. package/dist/collection/components/fab-list/fab-list.css +0 -12
  302. package/dist/collection/components/fab-list/fab-list.js +5 -9
  303. package/dist/collection/components/footer/footer.ios.css +2 -14
  304. package/dist/collection/components/footer/footer.js +16 -21
  305. package/dist/collection/components/footer/footer.md.css +0 -12
  306. package/dist/collection/components/grid/grid.css +0 -12
  307. package/dist/collection/components/grid/grid.js +5 -9
  308. package/dist/collection/components/header/header.ios.css +10 -25
  309. package/dist/collection/components/header/header.js +19 -50
  310. package/dist/collection/components/header/header.md.css +8 -23
  311. package/dist/collection/components/header/header.utils.js +5 -5
  312. package/dist/collection/components/img/img.js +2 -8
  313. package/dist/collection/components/infinite-scroll/infinite-scroll.js +5 -100
  314. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -12
  315. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +10 -16
  316. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -12
  317. package/dist/collection/components/input/input.ios.css +140 -223
  318. package/dist/collection/components/input/input.js +38 -149
  319. package/dist/collection/components/input/input.md.css +212 -193
  320. package/dist/collection/components/input-otp/input-otp.ios.css +60 -102
  321. package/dist/collection/components/input-otp/input-otp.js +5 -7
  322. package/dist/collection/components/input-otp/input-otp.md.css +60 -102
  323. package/dist/collection/components/input-password-toggle/input-password-toggle.js +12 -48
  324. package/dist/collection/components/item/item.ios.css +69 -109
  325. package/dist/collection/components/item/item.js +20 -51
  326. package/dist/collection/components/item/item.md.css +68 -120
  327. package/dist/collection/components/item-divider/item-divider.ios.css +0 -18
  328. package/dist/collection/components/item-divider/item-divider.js +8 -11
  329. package/dist/collection/components/item-divider/item-divider.md.css +0 -18
  330. package/dist/collection/components/item-group/item-group.ios.css +0 -12
  331. package/dist/collection/components/item-group/item-group.js +7 -13
  332. package/dist/collection/components/item-group/item-group.md.css +0 -12
  333. package/dist/collection/components/item-option/item-option.ios.css +29 -136
  334. package/dist/collection/components/item-option/item-option.js +9 -73
  335. package/dist/collection/components/item-option/item-option.md.css +29 -136
  336. package/dist/collection/components/item-options/item-options.ios.css +34 -77
  337. package/dist/collection/components/item-options/item-options.js +7 -13
  338. package/dist/collection/components/item-options/item-options.md.css +34 -77
  339. package/dist/collection/components/item-sliding/item-sliding.css +0 -6
  340. package/dist/collection/components/item-sliding/item-sliding.js +4 -8
  341. package/dist/collection/components/label/label.ios.css +0 -18
  342. package/dist/collection/components/label/label.js +8 -11
  343. package/dist/collection/components/label/label.md.css +0 -18
  344. package/dist/collection/components/list/list.ios.css +14 -54
  345. package/dist/collection/components/list/list.js +9 -48
  346. package/dist/collection/components/list/list.md.css +16 -56
  347. package/dist/collection/components/list-header/list-header.ios.css +38 -82
  348. package/dist/collection/components/list-header/list-header.js +8 -11
  349. package/dist/collection/components/list-header/list-header.md.css +38 -82
  350. package/dist/collection/components/loading/loading.ios.css +1 -13
  351. package/dist/collection/components/loading/loading.js +11 -14
  352. package/dist/collection/components/loading/loading.md.css +1 -13
  353. package/dist/collection/components/menu/menu.ios.css +3 -15
  354. package/dist/collection/components/menu/menu.js +7 -12
  355. package/dist/collection/components/menu/menu.md.css +3 -15
  356. package/dist/collection/components/menu-button/menu-button.ios.css +14 -48
  357. package/dist/collection/components/menu-button/menu-button.js +10 -26
  358. package/dist/collection/components/menu-button/menu-button.md.css +15 -49
  359. package/dist/collection/components/menu-toggle/menu-toggle.js +5 -8
  360. package/dist/collection/components/modal/animations/sheet.js +2 -8
  361. package/dist/collection/components/modal/gestures/sheet.js +6 -10
  362. package/dist/collection/components/modal/modal.ios.css +84 -174
  363. package/dist/collection/components/modal/modal.js +70 -49
  364. package/dist/collection/components/modal/modal.md.css +84 -174
  365. package/dist/collection/components/nav/nav.css +1 -7
  366. package/dist/collection/components/nav/nav.js +5 -11
  367. package/dist/collection/components/nav-link/nav-link.js +1 -5
  368. package/dist/collection/components/note/note.ios.css +0 -12
  369. package/dist/collection/components/note/note.js +8 -11
  370. package/dist/collection/components/note/note.md.css +0 -12
  371. package/dist/collection/components/picker/picker.ios.css +3 -15
  372. package/dist/collection/components/picker/picker.js +5 -8
  373. package/dist/collection/components/picker/picker.md.css +3 -15
  374. package/dist/collection/components/picker-column/picker-column.css +2 -9
  375. package/dist/collection/components/picker-column/picker-column.js +7 -8
  376. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
  377. package/dist/collection/components/picker-column-option/picker-column-option.js +7 -13
  378. package/dist/collection/components/picker-column-option/picker-column-option.md.css +0 -6
  379. package/dist/collection/components/picker-legacy/picker.ios.css +1 -13
  380. package/dist/collection/components/picker-legacy/picker.js +6 -7
  381. package/dist/collection/components/picker-legacy/picker.md.css +1 -13
  382. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -12
  383. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  384. package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -12
  385. package/dist/collection/components/popover/popover.ios.css +1 -13
  386. package/dist/collection/components/popover/popover.js +14 -17
  387. package/dist/collection/components/popover/popover.md.css +1 -13
  388. package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -48
  389. package/dist/collection/components/progress-bar/progress-bar.js +7 -43
  390. package/dist/collection/components/progress-bar/progress-bar.md.css +17 -48
  391. package/dist/collection/components/radio/radio.ios.css +91 -134
  392. package/dist/collection/components/radio/radio.js +9 -12
  393. package/dist/collection/components/radio/radio.md.css +91 -134
  394. package/dist/collection/components/radio-group/radio-group.ios.css +23 -43
  395. package/dist/collection/components/radio-group/radio-group.js +6 -21
  396. package/dist/collection/components/radio-group/radio-group.md.css +23 -43
  397. package/dist/collection/components/range/range.ios.css +85 -128
  398. package/dist/collection/components/range/range.js +9 -12
  399. package/dist/collection/components/range/range.md.css +85 -128
  400. package/dist/collection/components/refresher/refresher.ios.css +1 -14
  401. package/dist/collection/components/refresher/refresher.js +8 -11
  402. package/dist/collection/components/refresher/refresher.md.css +2 -15
  403. package/dist/collection/components/refresher-content/refresher-content.js +7 -28
  404. package/dist/collection/components/reorder/reorder.ios.css +0 -6
  405. package/dist/collection/components/reorder/reorder.js +6 -33
  406. package/dist/collection/components/reorder/reorder.md.css +0 -6
  407. package/dist/collection/components/reorder-group/reorder-group.css +0 -6
  408. package/dist/collection/components/reorder-group/reorder-group.js +4 -8
  409. package/dist/collection/components/ripple-effect/{ripple-effect.common.css → ripple-effect.css} +1 -7
  410. package/dist/collection/components/ripple-effect/ripple-effect.js +6 -14
  411. package/dist/collection/components/route/route.js +0 -4
  412. package/dist/collection/components/router/router.js +0 -4
  413. package/dist/collection/components/router-link/router-link.css +2 -8
  414. package/dist/collection/components/router-link/router-link.js +5 -9
  415. package/dist/collection/components/router-outlet/router-outlet.css +1 -7
  416. package/dist/collection/components/router-outlet/router-outlet.js +3 -6
  417. package/dist/collection/components/row/row.css +0 -16
  418. package/dist/collection/components/row/row.js +2 -9
  419. package/dist/collection/components/searchbar/searchbar.ios.css +18 -56
  420. package/dist/collection/components/searchbar/searchbar.js +34 -181
  421. package/dist/collection/components/searchbar/searchbar.md.css +18 -56
  422. package/dist/collection/components/segment/segment.ios.css +2 -45
  423. package/dist/collection/components/segment/segment.js +8 -11
  424. package/dist/collection/components/segment/segment.md.css +2 -45
  425. package/dist/collection/components/segment-button/segment-button.ios.css +105 -146
  426. package/dist/collection/components/segment-button/segment-button.js +8 -11
  427. package/dist/collection/components/segment-button/segment-button.md.css +107 -148
  428. package/dist/collection/components/segment-content/segment-content.js +1 -1
  429. package/dist/collection/components/segment-view/segment-view.ios.css +0 -6
  430. package/dist/collection/components/segment-view/segment-view.js +4 -6
  431. package/dist/collection/components/segment-view/segment-view.md.css +0 -6
  432. package/dist/collection/components/select/select.ios.css +176 -315
  433. package/dist/collection/components/select/select.js +53 -156
  434. package/dist/collection/components/select/select.md.css +178 -331
  435. package/dist/collection/components/select-modal/select-modal.ios.css +0 -18
  436. package/dist/collection/components/select-modal/select-modal.js +4 -11
  437. package/dist/collection/components/select-modal/select-modal.md.css +3 -7
  438. package/dist/collection/components/select-option/select-option.js +2 -9
  439. package/dist/collection/components/select-popover/select-popover.ios.css +0 -18
  440. package/dist/collection/components/select-popover/select-popover.js +4 -12
  441. package/dist/collection/components/select-popover/select-popover.md.css +0 -18
  442. package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
  443. package/dist/collection/components/skeleton-text/skeleton-text.js +5 -9
  444. package/dist/collection/components/spinner/{spinner.ionic.css → spinner.css} +10 -77
  445. package/dist/collection/components/spinner/spinner.js +6 -47
  446. package/dist/collection/components/split-pane/split-pane.ios.css +2 -20
  447. package/dist/collection/components/split-pane/split-pane.js +8 -14
  448. package/dist/collection/components/split-pane/split-pane.md.css +2 -20
  449. package/dist/collection/components/tab/tab.js +2 -6
  450. package/dist/collection/components/tab-bar/tab-bar.ios.css +43 -71
  451. package/dist/collection/components/tab-bar/tab-bar.js +11 -78
  452. package/dist/collection/components/tab-bar/tab-bar.md.css +43 -71
  453. package/dist/collection/components/tab-button/tab-button.ios.css +95 -171
  454. package/dist/collection/components/tab-button/tab-button.js +9 -54
  455. package/dist/collection/components/tab-button/tab-button.md.css +93 -137
  456. package/dist/collection/components/tabs/tabs.css +1 -7
  457. package/dist/collection/components/tabs/tabs.js +1 -4
  458. package/dist/collection/components/text/text.css +0 -6
  459. package/dist/collection/components/text/text.js +6 -7
  460. package/dist/collection/components/textarea/textarea.ios.css +139 -275
  461. package/dist/collection/components/textarea/textarea.js +16 -76
  462. package/dist/collection/components/textarea/textarea.md.css +140 -288
  463. package/dist/collection/components/thumbnail/thumbnail.css +0 -6
  464. package/dist/collection/components/thumbnail/thumbnail.js +2 -9
  465. package/dist/collection/components/title/title.ios.css +4 -32
  466. package/dist/collection/components/title/title.js +7 -13
  467. package/dist/collection/components/title/title.md.css +4 -32
  468. package/dist/collection/components/toast/animations/utils.js +1 -1
  469. package/dist/collection/components/toast/toast.ios.css +45 -84
  470. package/dist/collection/components/toast/toast.js +12 -75
  471. package/dist/collection/components/toast/toast.md.css +45 -84
  472. package/dist/collection/components/toggle/toggle.ios.css +131 -247
  473. package/dist/collection/components/toggle/toggle.js +18 -73
  474. package/dist/collection/components/toggle/toggle.md.css +131 -244
  475. package/dist/collection/components/toolbar/toolbar.ios.css +47 -90
  476. package/dist/collection/components/toolbar/toolbar.js +13 -157
  477. package/dist/collection/components/toolbar/toolbar.md.css +47 -90
  478. package/dist/collection/global/ionic-global.js +13 -228
  479. package/dist/collection/utils/focus-visible.js +0 -22
  480. package/dist/collection/utils/framework-delegate.js +1 -3
  481. package/dist/collection/utils/helpers.js +2 -42
  482. package/dist/collection/utils/keyboard/keyboard-controller.js +1 -3
  483. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  484. package/dist/collection/utils/menu-controller/animations/push.js +1 -2
  485. package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
  486. package/dist/collection/utils/overlays.js +1 -2
  487. package/dist/collection/utils/test/playwright/generator.js +23 -48
  488. package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -14
  489. package/dist/collection/utils/test/playwright/page/utils/set-content.js +3 -26
  490. package/dist/collection/utils/transition/ios.transition.js +0 -1
  491. package/dist/docs.json +374 -8195
  492. package/dist/esm/{animation-DGDOQ6ES.js → animation-Dt8bGnA-.js} +1 -1
  493. package/dist/esm/{app-globals-BNKecRVD.js → app-globals-BDSf8fOA.js} +1 -1
  494. package/dist/esm/{button-active-C_l8DIlb.js → button-active-L570Swow.js} +1 -1
  495. package/dist/esm/{capacitor-CiBLEyrT.js → capacitor-CFERIeaU.js} +1 -1
  496. package/dist/esm/{data-DFCY8gnk.js → data-DCORV9FH.js} +5 -5
  497. package/dist/{cjs/focus-visible-BIj-I3-C.js → esm/focus-visible-BmVRXR1y.js} +1 -27
  498. package/dist/esm/{framework-delegate-D2mUP0WI.js → framework-delegate-BYawdMXj.js} +2 -4
  499. package/dist/esm/{haptic-7RTk38ue.js → haptic-DzAMWJuk.js} +1 -1
  500. package/dist/esm/hardware-back-button-CPLxO-Ev.js +115 -0
  501. package/dist/esm/{helpers-Bsml3FcE.js → helpers-DEn3pfjm.js} +3 -42
  502. package/dist/esm/{index-BpFi2B8W.js → index-Bs3kT4bc.js} +1 -1
  503. package/dist/esm/{index-DWD4QoaP.js → index-CvDIirVx.js} +10 -10
  504. package/dist/esm/{index-COG0_eom.js → index-DV3sJJW8.js} +1 -1
  505. package/dist/esm/index-ZjP4CjeZ.js +7 -0
  506. package/dist/esm/{index-rXea6WR_.js → index-ceb5RaMT.js} +2 -3
  507. package/dist/esm/{index-Cj1G4iWF.js → index-r2D9DEro.js} +3 -3
  508. package/dist/esm/index.js +11 -10
  509. package/dist/esm/{input-shims-Bz3HiPwU.js → input-shims-DyOpfTg6.js} +5 -6
  510. package/dist/esm/{input.utils-BQAE1QTA.js → input.utils-DrvTa8gz.js} +2 -2
  511. package/dist/esm/ion-accordion_2.entry.js +27 -56
  512. package/dist/esm/ion-action-sheet.entry.js +18 -21
  513. package/dist/esm/ion-alert.entry.js +20 -22
  514. package/dist/esm/ion-app_8.entry.js +151 -250
  515. package/dist/esm/ion-avatar_3.entry.js +13 -125
  516. package/dist/esm/ion-back-button.entry.js +20 -29
  517. package/dist/esm/ion-backdrop.entry.js +6 -9
  518. package/dist/esm/ion-breadcrumb_2.entry.js +17 -53
  519. package/dist/esm/ion-button_2.entry.js +11 -43
  520. package/dist/esm/ion-card_5.entry.js +29 -53
  521. package/dist/esm/ion-checkbox.entry.js +13 -31
  522. package/dist/esm/ion-chip.entry.js +8 -49
  523. package/dist/esm/ion-col_3.entry.js +57 -54
  524. package/dist/esm/ion-datetime-button.entry.js +7 -11
  525. package/dist/esm/ion-datetime_3.entry.js +40 -115
  526. package/dist/esm/ion-fab_3.entry.js +27 -43
  527. package/dist/esm/ion-img.entry.js +3 -7
  528. package/dist/esm/ion-infinite-scroll_2.entry.js +14 -89
  529. package/dist/esm/ion-input-otp.entry.js +7 -11
  530. package/dist/esm/ion-input-password-toggle.entry.js +14 -52
  531. package/dist/esm/ion-input.entry.js +32 -122
  532. package/dist/esm/ion-item-option_3.entry.js +19 -48
  533. package/dist/esm/ion-item_8.entry.js +48 -115
  534. package/dist/esm/ion-loading.entry.js +15 -17
  535. package/dist/esm/ion-menu_3.entry.js +27 -45
  536. package/dist/esm/ion-modal.entry.js +88 -57
  537. package/dist/esm/ion-nav_2.entry.js +10 -13
  538. package/dist/esm/ion-picker-column-option.entry.js +6 -10
  539. package/dist/esm/ion-picker-column.entry.js +11 -11
  540. package/dist/esm/ion-picker.entry.js +5 -9
  541. package/dist/esm/ion-popover.entry.js +16 -18
  542. package/dist/esm/ion-progress-bar.entry.js +7 -25
  543. package/dist/esm/ion-radio_2.entry.js +14 -24
  544. package/dist/esm/ion-range.entry.js +10 -14
  545. package/dist/esm/ion-refresher_2.entry.js +19 -37
  546. package/dist/esm/ion-reorder_2.entry.js +14 -38
  547. package/dist/esm/ion-ripple-effect.entry.js +6 -14
  548. package/dist/esm/ion-route_4.entry.js +7 -8
  549. package/dist/esm/ion-searchbar.entry.js +24 -137
  550. package/dist/esm/ion-segment-content.entry.js +1 -1
  551. package/dist/esm/ion-segment-view.entry.js +2 -5
  552. package/dist/esm/ion-segment_2.entry.js +14 -21
  553. package/dist/esm/ion-select-modal.entry.js +10 -16
  554. package/dist/esm/ion-select_3.entry.js +40 -131
  555. package/dist/esm/ion-spinner.entry.js +6 -28
  556. package/dist/esm/ion-split-pane.entry.js +8 -11
  557. package/dist/esm/ion-tab-bar_2.entry.js +21 -75
  558. package/dist/esm/ion-tab_2.entry.js +6 -7
  559. package/dist/esm/ion-text.entry.js +5 -5
  560. package/dist/esm/ion-textarea.entry.js +15 -55
  561. package/dist/esm/ion-toast.entry.js +17 -40
  562. package/dist/esm/ion-toggle.entry.js +22 -79
  563. package/dist/esm/ionic-global-CDrldh-5.js +146 -0
  564. package/dist/esm/ionic.js +3 -3
  565. package/dist/esm/{ios.transition-DvzxRGcW.js → ios.transition-BDzw0_Hm.js} +4 -6
  566. package/dist/esm/{keyboard-WCK1pWfR.js → keyboard-CUw4ekVy.js} +1 -1
  567. package/dist/esm/{keyboard-controller-Bc4alOiF.js → keyboard-controller-BaaVITYt.js} +3 -5
  568. package/dist/esm/{keyboard-DuUgrXrK.js → keyboard-ywgs5efA.js} +3 -4
  569. package/dist/esm/loader.js +3 -3
  570. package/dist/esm/{md.transition-DV0cjDzj.js → md.transition-BzDYi3qq.js} +4 -5
  571. package/dist/esm/{notch-controller-DO30Bsls.js → notch-controller-BwelN_JM.js} +2 -2
  572. package/dist/esm/{overlays-Da_6xSKI.js → overlays-BymNv-BL.js} +6 -5
  573. package/dist/esm/{status-tap-DXVlluKS.js → status-tap-5DQ7Fc4V.js} +2 -3
  574. package/dist/esm/{swipe-back-DNhAt9fY.js → swipe-back-BKw2CAHc.js} +1 -2
  575. package/dist/html.html-data.json +214 -2520
  576. package/dist/ionic/index.esm.js +1 -1
  577. package/dist/ionic/ionic.esm.js +1 -1
  578. package/dist/ionic/p-020af078.entry.js +4 -0
  579. package/dist/ionic/p-074839fc.entry.js +4 -0
  580. package/dist/ionic/p-0b80d700.entry.js +4 -0
  581. package/dist/ionic/p-0dfa5a37.entry.js +4 -0
  582. package/dist/ionic/p-11518b31.entry.js +4 -0
  583. package/dist/ionic/p-15193d01.entry.js +4 -0
  584. package/dist/ionic/p-1647c46c.entry.js +4 -0
  585. package/dist/ionic/p-2a939845.entry.js +4 -0
  586. package/dist/ionic/p-316c0420.entry.js +4 -0
  587. package/dist/ionic/p-31f7095f.entry.js +4 -0
  588. package/dist/ionic/p-370e4237.entry.js +4 -0
  589. package/dist/ionic/p-3a6caca9.entry.js +4 -0
  590. package/dist/ionic/p-40c261a3.entry.js +4 -0
  591. package/dist/ionic/p-43ed1ef5.entry.js +4 -0
  592. package/dist/ionic/p-46d74291.entry.js +4 -0
  593. package/dist/ionic/p-49d06882.entry.js +4 -0
  594. package/dist/ionic/p-4c85d268.entry.js +4 -0
  595. package/dist/ionic/p-4e41ea20.entry.js +4 -0
  596. package/dist/ionic/p-510d86e1.entry.js +4 -0
  597. package/dist/ionic/p-51a60e0f.entry.js +4 -0
  598. package/dist/ionic/p-582824c5.entry.js +4 -0
  599. package/dist/ionic/p-6241ce47.entry.js +4 -0
  600. package/dist/ionic/p-639dd543.entry.js +4 -0
  601. package/dist/ionic/p-6444c606.entry.js +4 -0
  602. package/dist/ionic/p-675b1a31.entry.js +4 -0
  603. package/dist/ionic/p-6d070558.entry.js +4 -0
  604. package/dist/ionic/p-7268efa5.entry.js +4 -0
  605. package/dist/ionic/p-72c38b88.entry.js +4 -0
  606. package/dist/ionic/p-7380261c.entry.js +4 -0
  607. package/dist/ionic/p-75b02d2b.entry.js +4 -0
  608. package/dist/ionic/p-79bd78f9.entry.js +4 -0
  609. package/dist/ionic/p-7da39a4d.entry.js +4 -0
  610. package/dist/ionic/p-83be404e.entry.js +4 -0
  611. package/dist/ionic/p-86f53961.entry.js +4 -0
  612. package/dist/ionic/p-94de5cfa.entry.js +4 -0
  613. package/dist/ionic/p-9575b654.entry.js +4 -0
  614. package/dist/ionic/p-98fc09eb.entry.js +4 -0
  615. package/dist/ionic/p-9eeaBrnk.js +4 -0
  616. package/dist/ionic/p-B0q1YL7N.js +4 -0
  617. package/dist/ionic/p-BFvmZNyx.js +4 -0
  618. package/dist/ionic/p-BKc55Xev.js +4 -0
  619. package/dist/ionic/p-BOVrCkpJ.js +4 -0
  620. package/dist/ionic/p-BYEqWnSg.js +4 -0
  621. package/dist/ionic/p-BmVRXR1y.js +4 -0
  622. package/dist/ionic/p-Bmgaetn_.js +4 -0
  623. package/dist/ionic/p-C7hRNDhM.js +4 -0
  624. package/dist/ionic/p-CIGNaXM1.js +4 -0
  625. package/dist/ionic/{p-BbT4IAlw.js → p-CJxh_yLS.js} +1 -1
  626. package/dist/ionic/{p-DxFexTIr.js → p-CKvCXMs9.js} +1 -1
  627. package/dist/ionic/p-CTfR9YZG.js +4 -0
  628. package/dist/ionic/p-CtWGkNnJ.js +4 -0
  629. package/dist/ionic/{p-B3uz75uZ.js → p-CwgG81ZD.js} +1 -1
  630. package/dist/ionic/p-D-eFFUkA.js +4 -0
  631. package/dist/ionic/{p-HpOiAvpC.js → p-D0dMcSkw.js} +1 -1
  632. package/dist/ionic/{p-Q7JLYEUZ.js → p-D13Eaw-8.js} +1 -1
  633. package/dist/ionic/p-D87hU-Ly.js +4 -0
  634. package/dist/ionic/p-DCv9sLH2.js +4 -0
  635. package/dist/ionic/p-DDb5r57F.js +4 -0
  636. package/dist/ionic/p-DNcfiJwE.js +4 -0
  637. package/dist/ionic/{p-DxVdyQoe.js → p-DUt5fQmA.js} +1 -1
  638. package/dist/ionic/{p-COG0_eom.js → p-DV3sJJW8.js} +1 -1
  639. package/dist/ionic/p-DZRJwG4S.js +4 -0
  640. package/dist/ionic/{p-DBaOCAfc.js → p-Dc45iWE4.js} +1 -1
  641. package/dist/ionic/p-QHYY4sjU.js +4 -0
  642. package/dist/ionic/p-ZjP4CjeZ.js +4 -0
  643. package/dist/ionic/p-a127bee2.entry.js +4 -0
  644. package/dist/ionic/p-ac4eb91d.entry.js +4 -0
  645. package/dist/ionic/p-b0a7585c.entry.js +4 -0
  646. package/dist/ionic/p-b57c6d3e.entry.js +4 -0
  647. package/dist/ionic/p-c19f63d0.entry.js +4 -0
  648. package/dist/ionic/p-cb93126d.entry.js +4 -0
  649. package/dist/ionic/p-cc45bcbc.entry.js +4 -0
  650. package/dist/ionic/p-d0a2a1ab.entry.js +4 -0
  651. package/dist/ionic/p-d126e8d3.entry.js +4 -0
  652. package/dist/ionic/p-d1f54e28.entry.js +4 -0
  653. package/dist/ionic/p-d3014190.entry.js +4 -0
  654. package/dist/ionic/p-da7d04cc.entry.js +4 -0
  655. package/dist/ionic/p-dbbe606a.entry.js +4 -0
  656. package/dist/ionic/p-e16b69e1.entry.js +4 -0
  657. package/dist/ionic/p-f8f22cc0.entry.js +4 -0
  658. package/dist/types/components/accordion/accordion.d.ts +3 -5
  659. package/dist/types/components/accordion-group/accordion-group.d.ts +1 -12
  660. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
  661. package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
  662. package/dist/types/components/alert/alert-interface.d.ts +7 -3
  663. package/dist/types/components/alert/alert.d.ts +2 -3
  664. package/dist/types/components/app/app.d.ts +2 -4
  665. package/dist/types/components/avatar/avatar.d.ts +0 -32
  666. package/dist/types/components/back-button/back-button.d.ts +1 -2
  667. package/dist/types/components/backdrop/backdrop.d.ts +0 -4
  668. package/dist/types/components/badge/badge.d.ts +1 -34
  669. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -4
  670. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  671. package/dist/types/components/button/button.d.ts +6 -19
  672. package/dist/types/components/buttons/buttons.d.ts +1 -5
  673. package/dist/types/components/card/card.d.ts +1 -8
  674. package/dist/types/components/card-content/card-content.d.ts +1 -2
  675. package/dist/types/components/card-header/card-header.d.ts +2 -3
  676. package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
  677. package/dist/types/components/card-title/card-title.d.ts +1 -2
  678. package/dist/types/components/checkbox/checkbox.d.ts +4 -14
  679. package/dist/types/components/chip/chip.d.ts +1 -26
  680. package/dist/types/components/col/col.d.ts +5 -52
  681. package/dist/types/components/content/content.d.ts +0 -3
  682. package/dist/types/components/datetime/datetime.d.ts +1 -26
  683. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  684. package/dist/types/components/datetime-button/datetime-button.d.ts +1 -2
  685. package/dist/types/components/fab/fab.d.ts +0 -4
  686. package/dist/types/components/fab-button/fab-button.d.ts +3 -5
  687. package/dist/types/components/fab-list/fab-list.d.ts +0 -4
  688. package/dist/types/components/footer/footer.d.ts +3 -4
  689. package/dist/types/components/grid/grid.d.ts +0 -4
  690. package/dist/types/components/header/header.d.ts +3 -9
  691. package/dist/types/components/header/header.utils.d.ts +3 -3
  692. package/dist/types/components/img/img.d.ts +0 -3
  693. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -21
  694. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +0 -4
  695. package/dist/types/components/input/input.d.ts +5 -31
  696. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +0 -2
  697. package/dist/types/components/item/item.d.ts +4 -11
  698. package/dist/types/components/item-divider/item-divider.d.ts +1 -2
  699. package/dist/types/components/item-group/item-group.d.ts +0 -4
  700. package/dist/types/components/item-option/item-option.d.ts +1 -18
  701. package/dist/types/components/item-options/item-options.d.ts +0 -4
  702. package/dist/types/components/item-sliding/item-sliding.d.ts +0 -4
  703. package/dist/types/components/label/label.d.ts +1 -2
  704. package/dist/types/components/list/list.d.ts +1 -15
  705. package/dist/types/components/list-header/list-header.d.ts +1 -2
  706. package/dist/types/components/loading/loading-interface.d.ts +7 -2
  707. package/dist/types/components/loading/loading.d.ts +2 -3
  708. package/dist/types/components/menu/menu.d.ts +0 -3
  709. package/dist/types/components/menu-button/menu-button.d.ts +1 -3
  710. package/dist/types/components/menu-toggle/menu-toggle.d.ts +0 -3
  711. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  712. package/dist/types/components/modal/modal-interface.d.ts +7 -4
  713. package/dist/types/components/modal/modal.d.ts +2 -11
  714. package/dist/types/components/nav/nav-interface.d.ts +1 -9
  715. package/dist/types/components/nav/nav.d.ts +1 -5
  716. package/dist/types/components/nav-link/nav-link.d.ts +0 -4
  717. package/dist/types/components/note/note.d.ts +1 -2
  718. package/dist/types/components/picker/picker.d.ts +1 -2
  719. package/dist/types/components/picker-column/picker-column.d.ts +1 -2
  720. package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
  721. package/dist/types/components/picker-legacy/picker.d.ts +1 -2
  722. package/dist/types/components/popover/popover-interface.d.ts +6 -3
  723. package/dist/types/components/popover/popover.d.ts +5 -6
  724. package/dist/types/components/progress-bar/progress-bar.d.ts +1 -10
  725. package/dist/types/components/radio/radio.d.ts +1 -2
  726. package/dist/types/components/radio-group/radio-group.d.ts +0 -8
  727. package/dist/types/components/range/range.d.ts +1 -2
  728. package/dist/types/components/refresher/refresher.d.ts +1 -2
  729. package/dist/types/components/refresher-content/refresher-content.d.ts +0 -4
  730. package/dist/types/components/reorder/reorder.d.ts +0 -9
  731. package/dist/types/components/reorder-group/reorder-group.d.ts +0 -4
  732. package/dist/types/components/ripple-effect/ripple-effect.d.ts +0 -4
  733. package/dist/types/components/route/route.d.ts +0 -4
  734. package/dist/types/components/router/router.d.ts +0 -4
  735. package/dist/types/components/router-link/router-link.d.ts +0 -4
  736. package/dist/types/components/router-outlet/router-outlet.d.ts +1 -4
  737. package/dist/types/components/row/row.d.ts +0 -4
  738. package/dist/types/components/searchbar/searchbar.d.ts +9 -51
  739. package/dist/types/components/segment/segment.d.ts +1 -2
  740. package/dist/types/components/segment-button/segment-button.d.ts +1 -2
  741. package/dist/types/components/select/select.d.ts +13 -41
  742. package/dist/types/components/select-modal/select-modal.d.ts +0 -1
  743. package/dist/types/components/select-option/select-option.d.ts +0 -4
  744. package/dist/types/components/select-popover/select-popover.d.ts +0 -3
  745. package/dist/types/components/skeleton-text/skeleton-text.d.ts +0 -4
  746. package/dist/types/components/spinner/spinner.d.ts +0 -15
  747. package/dist/types/components/split-pane/split-pane.d.ts +0 -4
  748. package/dist/types/components/tab/tab.d.ts +0 -4
  749. package/dist/types/components/tab-bar/tab-bar.d.ts +2 -22
  750. package/dist/types/components/tab-button/tab-button.d.ts +1 -12
  751. package/dist/types/components/tabs/tabs.d.ts +0 -3
  752. package/dist/types/components/text/text.d.ts +1 -2
  753. package/dist/types/components/textarea/textarea.d.ts +4 -17
  754. package/dist/types/components/thumbnail/thumbnail.d.ts +0 -4
  755. package/dist/types/components/title/title.d.ts +0 -4
  756. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  757. package/dist/types/components/toast/toast-interface.d.ts +7 -3
  758. package/dist/types/components/toast/toast.d.ts +2 -19
  759. package/dist/types/components/toggle/toggle.d.ts +1 -15
  760. package/dist/types/components/toolbar/toolbar.d.ts +3 -20
  761. package/dist/types/components.d.ts +196 -1593
  762. package/dist/types/global/ionic-global.d.ts +2 -27
  763. package/dist/types/interface.d.ts +0 -3
  764. package/dist/types/utils/config.d.ts +2 -106
  765. package/dist/types/utils/focus-visible.d.ts +0 -13
  766. package/dist/types/utils/helpers.d.ts +0 -11
  767. package/dist/types/utils/overlays-interface.d.ts +1 -31
  768. package/dist/types/utils/test/playwright/generator.d.ts +2 -31
  769. package/hydrate/index.js +1005 -2876
  770. package/hydrate/index.mjs +1005 -2876
  771. package/package.json +4 -8
  772. package/components/caret-down.js +0 -6
  773. package/components/caret-left.js +0 -6
  774. package/components/caret-right.js +0 -6
  775. package/components/ion-divider.d.ts +0 -11
  776. package/components/ion-divider.js +0 -72
  777. package/components/list2.js +0 -6
  778. package/components/x.js +0 -6
  779. package/css/ionic/bundle.ionic.css +0 -1
  780. package/css/ionic/bundle.ionic.css.map +0 -1
  781. package/css/ionic/core.ionic.css +0 -1
  782. package/css/ionic/core.ionic.css.map +0 -1
  783. package/css/ionic/global.bundle.ionic.css +0 -1
  784. package/css/ionic/global.bundle.ionic.css.map +0 -1
  785. package/css/ionic/ionic-swiper.ionic.css +0 -1
  786. package/css/ionic/ionic-swiper.ionic.css.map +0 -1
  787. package/css/ionic/link.ionic.css +0 -1
  788. package/css/ionic/link.ionic.css.map +0 -1
  789. package/css/ionic/structure.ionic.css +0 -1
  790. package/css/ionic/structure.ionic.css.map +0 -1
  791. package/css/ionic/typography.ionic.css +0 -1
  792. package/css/ionic/typography.ionic.css.map +0 -1
  793. package/css/ionic/utils.bundle.ionic.css +0 -1
  794. package/css/ionic/utils.bundle.ionic.css.map +0 -1
  795. package/dist/cjs/caret-down-vtVgfXIs.js +0 -8
  796. package/dist/cjs/caret-left-CxZXLRv5.js +0 -8
  797. package/dist/cjs/caret-right-CRCgv98E.js +0 -8
  798. package/dist/cjs/ion-divider.cjs.entry.js +0 -51
  799. package/dist/cjs/ionic-global-DuRUel5m.js +0 -491
  800. package/dist/cjs/list-a-7GSA6K.js +0 -8
  801. package/dist/cjs/x-BTF99yFH.js +0 -8
  802. package/dist/collection/components/accordion/accordion.ionic.css +0 -196
  803. package/dist/collection/components/accordion-group/accordion-group.ionic.css +0 -93
  804. package/dist/collection/components/avatar/avatar.ionic.css +0 -391
  805. package/dist/collection/components/backdrop/backdrop.ionic.css +0 -109
  806. package/dist/collection/components/badge/badge.ionic.css +0 -275
  807. package/dist/collection/components/button/button.ionic.css +0 -636
  808. package/dist/collection/components/buttons/buttons.ionic.css +0 -97
  809. package/dist/collection/components/card/card.ionic.css +0 -144
  810. package/dist/collection/components/card-content/card-content.ionic.css +0 -92
  811. package/dist/collection/components/card-header/card-header.ionic.css +0 -85
  812. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +0 -144
  813. package/dist/collection/components/checkbox/checkbox.ionic.css +0 -539
  814. package/dist/collection/components/chip/chip.ionic.css +0 -215
  815. package/dist/collection/components/datetime/datetime.ionic.css +0 -697
  816. package/dist/collection/components/divider/divider.ionic.css +0 -148
  817. package/dist/collection/components/divider/divider.ios.css +0 -87
  818. package/dist/collection/components/divider/divider.js +0 -94
  819. package/dist/collection/components/divider/divider.md.css +0 -87
  820. package/dist/collection/components/header/header.ionic.css +0 -97
  821. package/dist/collection/components/input/input.ionic.css +0 -885
  822. package/dist/collection/components/input-otp/input-otp.ionic.css +0 -369
  823. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +0 -78
  824. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +0 -61
  825. package/dist/collection/components/item/item.ionic.css +0 -508
  826. package/dist/collection/components/item-option/item-option.ionic.css +0 -278
  827. package/dist/collection/components/item-options/item-options.ionic.css +0 -221
  828. package/dist/collection/components/list/list.ionic.css +0 -212
  829. package/dist/collection/components/list-header/list-header.ionic.css +0 -190
  830. package/dist/collection/components/menu-button/menu-button.ionic.css +0 -236
  831. package/dist/collection/components/modal/modal.ionic.css +0 -247
  832. package/dist/collection/components/progress-bar/progress-bar.ionic.css +0 -287
  833. package/dist/collection/components/radio/radio.ionic.css +0 -422
  834. package/dist/collection/components/radio-group/radio-group.ionic.css +0 -119
  835. package/dist/collection/components/range/range.ionic.css +0 -563
  836. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +0 -215
  837. package/dist/collection/components/searchbar/searchbar.ionic.css +0 -626
  838. package/dist/collection/components/segment/segment.ionic.css +0 -115
  839. package/dist/collection/components/segment-button/segment-button.ionic.css +0 -353
  840. package/dist/collection/components/select/select.ionic.css +0 -777
  841. package/dist/collection/components/select-modal/select-modal.ionic.css +0 -130
  842. package/dist/collection/components/spinner/spinner.native.css +0 -198
  843. package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -201
  844. package/dist/collection/components/tab-button/tab-button.ionic.css +0 -337
  845. package/dist/collection/components/textarea/textarea.ionic.css +0 -885
  846. package/dist/collection/components/title/title.ionic.css +0 -127
  847. package/dist/collection/components/toast/toast.ionic.css +0 -394
  848. package/dist/collection/components/toggle/toggle.ionic.css +0 -508
  849. package/dist/collection/components/toolbar/test/image.svg +0 -1
  850. package/dist/collection/components/toolbar/toolbar.ionic.css +0 -241
  851. package/dist/esm/caret-down-D1t981Ih.js +0 -6
  852. package/dist/esm/caret-left-fIOYmaqA.js +0 -6
  853. package/dist/esm/caret-right-BYSs-jZz.js +0 -6
  854. package/dist/esm/ion-divider.entry.js +0 -49
  855. package/dist/esm/ionic-global-2R0iPB51.js +0 -480
  856. package/dist/esm/list-Dhi5xtNS.js +0 -6
  857. package/dist/esm/x-BDqjX7Z_.js +0 -6
  858. package/dist/ionic/p--8Ga2Cg0.js +0 -4
  859. package/dist/ionic/p-0774e5a0.entry.js +0 -4
  860. package/dist/ionic/p-105826fe.entry.js +0 -4
  861. package/dist/ionic/p-14346334.entry.js +0 -4
  862. package/dist/ionic/p-1635ea5e.entry.js +0 -4
  863. package/dist/ionic/p-2061a732.entry.js +0 -4
  864. package/dist/ionic/p-23e4b68a.entry.js +0 -4
  865. package/dist/ionic/p-2c504bd3.entry.js +0 -4
  866. package/dist/ionic/p-2c96bfe6.entry.js +0 -4
  867. package/dist/ionic/p-36f2ff62.entry.js +0 -4
  868. package/dist/ionic/p-3948040f.entry.js +0 -4
  869. package/dist/ionic/p-3a481932.entry.js +0 -4
  870. package/dist/ionic/p-3d0e07cf.entry.js +0 -4
  871. package/dist/ionic/p-418e4330.entry.js +0 -4
  872. package/dist/ionic/p-48366887.entry.js +0 -4
  873. package/dist/ionic/p-495912a4.entry.js +0 -4
  874. package/dist/ionic/p-4e13d498.entry.js +0 -4
  875. package/dist/ionic/p-55734084.entry.js +0 -4
  876. package/dist/ionic/p-55e2352e.entry.js +0 -4
  877. package/dist/ionic/p-59a79bd9.entry.js +0 -4
  878. package/dist/ionic/p-66397fac.entry.js +0 -4
  879. package/dist/ionic/p-66d094b2.entry.js +0 -4
  880. package/dist/ionic/p-698ae42d.entry.js +0 -4
  881. package/dist/ionic/p-6bb99f41.entry.js +0 -4
  882. package/dist/ionic/p-74601090.entry.js +0 -4
  883. package/dist/ionic/p-7894f98d.entry.js +0 -4
  884. package/dist/ionic/p-78f1c348.entry.js +0 -4
  885. package/dist/ionic/p-826267d6.entry.js +0 -4
  886. package/dist/ionic/p-844bd58c.entry.js +0 -4
  887. package/dist/ionic/p-931fd886.entry.js +0 -4
  888. package/dist/ionic/p-9839d6df.entry.js +0 -4
  889. package/dist/ionic/p-9a20f9cb.entry.js +0 -4
  890. package/dist/ionic/p-9c3361e4.entry.js +0 -4
  891. package/dist/ionic/p-9e3fa08c.entry.js +0 -4
  892. package/dist/ionic/p-B-N4FEiY.js +0 -4
  893. package/dist/ionic/p-BDqjX7Z_.js +0 -4
  894. package/dist/ionic/p-BRd1Ag6P.js +0 -4
  895. package/dist/ionic/p-BYSs-jZz.js +0 -4
  896. package/dist/ionic/p-BiTKUjko.js +0 -4
  897. package/dist/ionic/p-CGo9Zrhw.js +0 -4
  898. package/dist/ionic/p-CK1xn1Nt.js +0 -4
  899. package/dist/ionic/p-CK4YXTyz.js +0 -4
  900. package/dist/ionic/p-CeO9Shc9.js +0 -4
  901. package/dist/ionic/p-CkzsSTjr.js +0 -4
  902. package/dist/ionic/p-D1t981Ih.js +0 -4
  903. package/dist/ionic/p-DPNSAVjP.js +0 -4
  904. package/dist/ionic/p-D_8SMvQ3.js +0 -4
  905. package/dist/ionic/p-DdaOdN_z.js +0 -4
  906. package/dist/ionic/p-Dhi5xtNS.js +0 -4
  907. package/dist/ionic/p-Dq8ap6AD.js +0 -4
  908. package/dist/ionic/p-Dv5UHqHj.js +0 -4
  909. package/dist/ionic/p-DyaKZbAH.js +0 -4
  910. package/dist/ionic/p-W-2TssC9.js +0 -4
  911. package/dist/ionic/p-a2004213.entry.js +0 -4
  912. package/dist/ionic/p-a2179948.entry.js +0 -4
  913. package/dist/ionic/p-a3fefcf5.entry.js +0 -4
  914. package/dist/ionic/p-a57c0cce.entry.js +0 -4
  915. package/dist/ionic/p-b652eff7.entry.js +0 -4
  916. package/dist/ionic/p-b65b47bf.entry.js +0 -4
  917. package/dist/ionic/p-b7f5ae4a.entry.js +0 -4
  918. package/dist/ionic/p-c289efa5.entry.js +0 -4
  919. package/dist/ionic/p-ce2762f2.entry.js +0 -4
  920. package/dist/ionic/p-d0b9e5ff.entry.js +0 -4
  921. package/dist/ionic/p-d36f836a.entry.js +0 -4
  922. package/dist/ionic/p-d774af7c.entry.js +0 -4
  923. package/dist/ionic/p-da0a2ca6.entry.js +0 -4
  924. package/dist/ionic/p-e2171c27.entry.js +0 -4
  925. package/dist/ionic/p-e3daf16c.entry.js +0 -4
  926. package/dist/ionic/p-ecc8aebb.entry.js +0 -4
  927. package/dist/ionic/p-f5fe6d47.entry.js +0 -4
  928. package/dist/ionic/p-fIOYmaqA.js +0 -4
  929. package/dist/ionic/p-fa6895f9.entry.js +0 -4
  930. package/dist/ionic/p-fa7fe783.entry.js +0 -4
  931. package/dist/ionic/p-ff69e0c6.entry.js +0 -4
  932. package/dist/ionic/p-vXpMhGrs.js +0 -4
  933. package/dist/ionic/p-vpXGWZiy.js +0 -4
  934. package/dist/types/components/divider/divider.d.ts +0 -20
  935. /package/dist/collection/components/{refresher-content/refresher-content.css → input-password-toggle/input-password-toggle.css} +0 -0
@@ -1,3 +1,36 @@
1
+ /**
2
+ * Convert a font size to a dynamic font size.
3
+ * Fonts that participate in Dynamic Type should use
4
+ * dynamic font sizes.
5
+ * @param size - The initial font size including the unit (i.e. px or pt)
6
+ * @param unit (optional) - The unit to convert to. Use this if you want to
7
+ * convert to a unit other than $baselineUnit.
8
+ */
9
+ /**
10
+ * Convert a font size to a dynamic font size but impose
11
+ * a maximum font size.
12
+ * @param size - The initial font size including the unit (i.e. px or pt)
13
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
14
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
15
+ * convert to a unit other than $baselineUnit.
16
+ */
17
+ /**
18
+ * Convert a font size to a dynamic font size but impose
19
+ * a minimum font size.
20
+ * @param size - The initial font size including the unit (i.e. px or pt)
21
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
22
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
23
+ * convert to a unit other than $baselineUnit.
24
+ */
25
+ /**
26
+ * Convert a font size to a dynamic font size but impose
27
+ * maximum and minimum font sizes.
28
+ * @param size - The initial font size including the unit (i.e. px or pt)
29
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
30
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
31
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
32
+ * convert to a unit other than $baselineUnit.
33
+ */
1
34
  /**
2
35
  * A heuristic that applies CSS to tablet
3
36
  * viewports.
@@ -46,12 +79,15 @@
46
79
  --min-height: auto;
47
80
  --max-height: auto;
48
81
  --overflow: hidden;
82
+ --border-radius: 0;
49
83
  --border-width: 0;
50
84
  --border-style: none;
51
85
  --border-color: transparent;
86
+ --background: var(--ion-background-color, #fff);
52
87
  --box-shadow: none;
53
- right: 0;
88
+ --backdrop-opacity: 0;
54
89
  left: 0;
90
+ right: 0;
55
91
  top: 0;
56
92
  bottom: 0;
57
93
  display: flex;
@@ -59,6 +95,7 @@
59
95
  align-items: center;
60
96
  justify-content: center;
61
97
  outline: none;
98
+ color: var(--ion-text-color, #000);
62
99
  contain: strict;
63
100
  }
64
101
 
@@ -67,6 +104,20 @@ ion-backdrop {
67
104
  pointer-events: auto;
68
105
  }
69
106
 
107
+ /**
108
+ * When focus trap is disabled on a visible modal, allow clicks to pass through
109
+ * to content behind it. The .modal-wrapper retains pointer-events: auto so
110
+ * modal content remains interactive. We only apply this when show-modal is
111
+ * present to avoid affecting hidden modals that haven't presented.
112
+ */
113
+ :host(.ion-disable-focus-trap.show-modal) {
114
+ pointer-events: none;
115
+ }
116
+
117
+ :host(.ion-disable-focus-trap.show-modal) ion-backdrop {
118
+ pointer-events: none;
119
+ }
120
+
70
121
  :host(.overlay-hidden) {
71
122
  display: none;
72
123
  }
@@ -94,169 +145,6 @@ ion-backdrop {
94
145
  background: transparent;
95
146
  }
96
147
 
97
- .modal-handle {
98
- -webkit-margin-start: auto;
99
- margin-inline-start: auto;
100
- -webkit-margin-end: auto;
101
- margin-inline-end: auto;
102
- position: absolute;
103
- /**
104
- * This allows the handle to appear
105
- * on top of user content in WebKit.
106
- */
107
- transform: translateZ(0);
108
- border: 0;
109
- cursor: pointer;
110
- z-index: 11;
111
- }
112
-
113
- .modal-handle::before {
114
- position: absolute;
115
- transform: translate(-50%, -50%);
116
- content: "";
117
- }
118
-
119
- :host(.modal-sheet) .modal-wrapper,
120
- :host(.modal-sheet) .modal-shadow {
121
- position: absolute;
122
- bottom: 0;
123
- }
124
-
125
- :host(.modal-sheet.modal-no-expand-scroll) ion-footer {
126
- position: absolute;
127
- bottom: 0;
128
- width: var(--width);
129
- }
130
-
131
- /**
132
- * Convert a pixels given value into rem
133
- *
134
- * @param pixels - Value in pixels to be converted (i.e. px)
135
- * @param context (optional) - Baseline value
136
- */
137
- /**
138
- * Convert a font size to a dynamic font size.
139
- * Fonts that participate in Dynamic Type should use
140
- * dynamic font sizes.
141
- * @param size - The initial font size including the unit (i.e. px or pt)
142
- * @param unit (optional) - The unit to convert to. Use this if you want to
143
- * convert to a unit other than $baselineUnit.
144
- */
145
- /**
146
- * Convert a font size to a dynamic font size but impose
147
- * a maximum font size.
148
- * @param size - The initial font size including the unit (i.e. px or pt)
149
- * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
150
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
151
- * convert to a unit other than $baselineUnit.
152
- */
153
- /**
154
- * Convert a font size to a dynamic font size but impose
155
- * a minimum font size.
156
- * @param size - The initial font size including the unit (i.e. px or pt)
157
- * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
158
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
159
- * convert to a unit other than $baselineUnit.
160
- */
161
- /**
162
- * Convert a font size to a dynamic font size but impose
163
- * maximum and minimum font sizes.
164
- * @param size - The initial font size including the unit (i.e. px or pt)
165
- * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
166
- * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
167
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
168
- * convert to a unit other than $baselineUnit.
169
- */
170
- /**
171
- * A heuristic that applies CSS to tablet
172
- * viewports.
173
- *
174
- * Usage:
175
- * @include tablet-viewport() {
176
- * :host {
177
- * background-color: green;
178
- * }
179
- * }
180
- */
181
- /**
182
- * A heuristic that applies CSS to mobile
183
- * viewports (i.e. phones, not tablets).
184
- *
185
- * Usage:
186
- * @include mobile-viewport() {
187
- * :host {
188
- * background-color: blue;
189
- * }
190
- * }
191
- */
192
- /**
193
- * Convert a pixels given value into rem
194
- *
195
- * @param pixels - Value in pixels to be converted (i.e. px)
196
- * @param context (optional) - Baseline value
197
- */
198
- /**
199
- * Convert a font size to a dynamic font size.
200
- * Fonts that participate in Dynamic Type should use
201
- * dynamic font sizes.
202
- * @param size - The initial font size including the unit (i.e. px or pt)
203
- * @param unit (optional) - The unit to convert to. Use this if you want to
204
- * convert to a unit other than $baselineUnit.
205
- */
206
- /**
207
- * Convert a font size to a dynamic font size but impose
208
- * a maximum font size.
209
- * @param size - The initial font size including the unit (i.e. px or pt)
210
- * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
211
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
212
- * convert to a unit other than $baselineUnit.
213
- */
214
- /**
215
- * Convert a font size to a dynamic font size but impose
216
- * a minimum font size.
217
- * @param size - The initial font size including the unit (i.e. px or pt)
218
- * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
219
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
220
- * convert to a unit other than $baselineUnit.
221
- */
222
- /**
223
- * Convert a font size to a dynamic font size but impose
224
- * maximum and minimum font sizes.
225
- * @param size - The initial font size including the unit (i.e. px or pt)
226
- * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
227
- * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
228
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
229
- * convert to a unit other than $baselineUnit.
230
- */
231
- /**
232
- * A heuristic that applies CSS to tablet
233
- * viewports.
234
- *
235
- * Usage:
236
- * @include tablet-viewport() {
237
- * :host {
238
- * background-color: green;
239
- * }
240
- * }
241
- */
242
- /**
243
- * A heuristic that applies CSS to mobile
244
- * viewports (i.e. phones, not tablets).
245
- *
246
- * Usage:
247
- * @include mobile-viewport() {
248
- * :host {
249
- * background-color: blue;
250
- * }
251
- * }
252
- */
253
- :host {
254
- --background: var(--ion-background-color, #fff);
255
- --border-radius: 0;
256
- --backdrop-opacity: 0;
257
- color: var(--ion-text-color, #000);
258
- }
259
-
260
148
  @media only screen and (min-width: 768px) and (min-height: 600px) {
261
149
  :host {
262
150
  --width: 600px;
@@ -274,27 +162,43 @@ ion-backdrop {
274
162
  }
275
163
  }
276
164
  .modal-handle {
277
- right: 0px;
278
165
  left: 0px;
166
+ right: 0px;
279
167
  top: 5px;
280
168
  border-radius: 8px;
169
+ -webkit-margin-start: auto;
170
+ margin-inline-start: auto;
171
+ -webkit-margin-end: auto;
172
+ margin-inline-end: auto;
173
+ position: absolute;
281
174
  width: 36px;
282
175
  height: 5px;
176
+ /**
177
+ * This allows the handle to appear
178
+ * on top of user content in WebKit.
179
+ */
180
+ transform: translateZ(0);
181
+ border: 0;
283
182
  background: var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));
183
+ cursor: pointer;
184
+ z-index: 11;
284
185
  }
285
186
  .modal-handle::before {
286
187
  /**
287
- * Adds a 4px tap area to the perimeter
288
- * of the handle.
289
- */
188
+ * Adds a 4px tap area to the perimeter
189
+ * of the handle.
190
+ */
290
191
  -webkit-padding-start: 4px;
291
192
  padding-inline-start: 4px;
292
193
  -webkit-padding-end: 4px;
293
194
  padding-inline-end: 4px;
294
195
  padding-top: 4px;
295
196
  padding-bottom: 4px;
197
+ position: absolute;
296
198
  width: 36px;
297
199
  height: 5px;
200
+ transform: translate(-50%, -50%);
201
+ content: "";
298
202
  }
299
203
 
300
204
  /**
@@ -305,12 +209,18 @@ ion-backdrop {
305
209
  --height: calc(100% - (var(--ion-safe-area-top) + 10px));
306
210
  }
307
211
 
308
- /**
309
- * Convert a pixels given value into rem
310
- *
311
- * @param pixels - Value in pixels to be converted (i.e. px)
312
- * @param context (optional) - Baseline value
313
- */
212
+ :host(.modal-sheet) .modal-wrapper,
213
+ :host(.modal-sheet) .modal-shadow {
214
+ position: absolute;
215
+ bottom: 0;
216
+ }
217
+
218
+ :host(.modal-sheet.modal-no-expand-scroll) ion-footer {
219
+ position: absolute;
220
+ bottom: 0;
221
+ width: var(--width);
222
+ }
223
+
314
224
  /**
315
225
  * Convert a font size to a dynamic font size.
316
226
  * Fonts that participate in Dynamic Type should use
@@ -12,7 +12,7 @@ import { GESTURE, BACKDROP, dismiss, eventMethod, prepareOverlay, present, creat
12
12
  import { getClassMap } from "../../utils/theme";
13
13
  import { deepReady, waitForMount } from "../../utils/transition/index";
14
14
  import { config } from "../../global/config";
15
- import { getIonMode, getIonTheme } from "../../global/ionic-global";
15
+ import { getIonMode } from "../../global/ionic-global";
16
16
  import { KEYBOARD_DID_OPEN } from "../../utils/keyboard/keyboard";
17
17
  import { iosEnterAnimation } from "./animations/ios.enter";
18
18
  import { iosLeaveAnimation } from "./animations/ios.leave";
@@ -24,8 +24,7 @@ import { createSwipeToCloseGesture, SwipeToCloseDefaults } from "./gestures/swip
24
24
  import { setCardStatusBarDark, setCardStatusBarDefault } from "./utils";
25
25
  // TODO(FW-2832): types
26
26
  /**
27
- * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
28
- * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
27
+ * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
29
28
  *
30
29
  * @slot - Content is placed inside of the `.modal-content` element.
31
30
  *
@@ -43,6 +42,8 @@ export class Modal {
43
42
  this.inline = false;
44
43
  // Whether or not modal is being dismissed via gesture
45
44
  this.gestureAnimationDismissing = false;
45
+ // Elements that had pointer-events disabled for background interaction
46
+ this.pointerEventsDisabledElements = [];
46
47
  this.presented = false;
47
48
  /** @internal */
48
49
  this.hasController = false;
@@ -432,7 +433,6 @@ export class Modal {
432
433
  currentBreakpoint: this.initialBreakpoint,
433
434
  backdropBreakpoint: this.backdropBreakpoint,
434
435
  expandToScroll: this.expandToScroll,
435
- staticBackdropOpacity: getIonTheme(this) === 'ionic',
436
436
  });
437
437
  /* tslint:disable-next-line */
438
438
  if (typeof window !== 'undefined') {
@@ -465,7 +465,13 @@ export class Modal {
465
465
  };
466
466
  window.addEventListener(KEYBOARD_DID_OPEN, this.keyboardOpenCallback);
467
467
  }
468
- if (this.isSheetModal) {
468
+ /**
469
+ * Recalculate isSheetModal here because framework bindings (e.g., Angular)
470
+ * may not have been applied when componentWillLoad ran.
471
+ */
472
+ const isSheetModal = this.breakpoints !== undefined && this.initialBreakpoint !== undefined;
473
+ this.isSheetModal = isSheetModal;
474
+ if (isSheetModal) {
469
475
  this.initSheetGesture();
470
476
  }
471
477
  else if (hasCardModal) {
@@ -536,7 +542,6 @@ export class Modal {
536
542
  currentBreakpoint: initialBreakpoint,
537
543
  backdropBreakpoint,
538
544
  expandToScroll: this.expandToScroll,
539
- staticBackdropOpacity: getIonTheme(this) === 'ionic',
540
545
  }));
541
546
  ani.progressStart(true, 1);
542
547
  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) => {
@@ -544,10 +549,53 @@ export class Modal {
544
549
  this.currentBreakpoint = breakpoint;
545
550
  this.ionBreakpointDidChange.emit({ breakpoint });
546
551
  }
547
- }, getIonTheme(this) === 'ionic');
552
+ });
548
553
  this.gesture = gesture;
549
554
  this.moveSheetToBreakpoint = moveSheetToBreakpoint;
550
555
  this.gesture.enable(true);
556
+ /**
557
+ * When showBackdrop or focusTrap is false, the modal's original parent may
558
+ * block pointer events after the modal is moved to ion-app. This only applies
559
+ * when the modal is in a child route (detected by the modal being inside
560
+ * a route wrapper like ion-page). Disable pointer-events on the child
561
+ * route's wrapper elements up to (and including) the first ion-router-outlet.
562
+ * We stop there because parent elements may contain sibling content that
563
+ * should remain interactive.
564
+ * See https://github.com/ionic-team/ionic-framework/issues/30700
565
+ */
566
+ if ((this.showBackdrop === false || this.focusTrap === false) && this.cachedOriginalParent) {
567
+ // Find the first meaningful parent (skip template and other non-semantic wrappers).
568
+ // In Ionic React, modals are wrapped in a <template> element.
569
+ let semanticParent = this.cachedOriginalParent;
570
+ while (semanticParent && (semanticParent.tagName === 'TEMPLATE' || semanticParent.tagName === 'SLOT')) {
571
+ semanticParent = semanticParent.parentElement;
572
+ }
573
+ // Check if the modal is inside a route wrapper (ion-page or div.ion-page)
574
+ // If the modal is inside ion-content or other content containers, this fix doesn't apply
575
+ const parentIsRouteWrapper = semanticParent && (semanticParent.tagName === 'ION-PAGE' || semanticParent.classList.contains('ion-page'));
576
+ if (parentIsRouteWrapper && semanticParent) {
577
+ this.pointerEventsDisabledElements = [];
578
+ let current = semanticParent;
579
+ while (current && current.tagName !== 'ION-APP') {
580
+ const tagName = current.tagName;
581
+ // Check for ion-page tag or elements with ion-page class
582
+ // (React renders IonPage as div.ion-page, not ion-page tag)
583
+ const isIonPage = tagName === 'ION-PAGE' || current.classList.contains('ion-page');
584
+ const isRouterOutlet = tagName === 'ION-ROUTER-OUTLET';
585
+ const isNav = tagName === 'ION-NAV';
586
+ if (isIonPage || isRouterOutlet || isNav) {
587
+ current.style.setProperty('pointer-events', 'none');
588
+ this.pointerEventsDisabledElements.push(current);
589
+ }
590
+ // Stop after processing the first ion-router-outlet - parent elements
591
+ // may contain sibling content (like buttons) that should remain interactive
592
+ if (isRouterOutlet) {
593
+ break;
594
+ }
595
+ current = current.parentElement;
596
+ }
597
+ }
598
+ }
551
599
  }
552
600
  sheetOnDismiss() {
553
601
  /**
@@ -637,6 +685,13 @@ export class Modal {
637
685
  }
638
686
  this.cleanupViewTransitionListener();
639
687
  this.cleanupParentRemovalObserver();
688
+ /**
689
+ * Clean up pointer-events changes made in initSheetGesture.
690
+ */
691
+ for (const element of this.pointerEventsDisabledElements) {
692
+ element.style.removeProperty('pointer-events');
693
+ }
694
+ this.pointerEventsDisabledElements = [];
640
695
  }
641
696
  this.currentBreakpoint = undefined;
642
697
  this.animation = undefined;
@@ -712,18 +767,6 @@ export class Modal {
712
767
  await this.setCurrentBreakpoint(nextBreakpoint);
713
768
  return true;
714
769
  }
715
- getShape() {
716
- const theme = getIonTheme(this);
717
- const { shape } = this;
718
- // TODO(ROU-11167): Remove theme check when shapes are defined for all themes.
719
- if (theme !== 'ionic') {
720
- return undefined;
721
- }
722
- if (shape === undefined) {
723
- return 'round';
724
- }
725
- return shape;
726
- }
727
770
  initViewTransitionListener() {
728
771
  // Only enable for iOS card modals when no custom animations are provided
729
772
  if (getIonMode(this) !== 'ios' || !this.presentingElement || this.enterAnimation || this.leaveAnimation) {
@@ -890,40 +933,37 @@ export class Modal {
890
933
  render() {
891
934
  const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap, expandToScroll, } = this;
892
935
  const showHandle = handle !== false && isSheetModal;
893
- const theme = getIonTheme(this);
894
- const isCardModal = presentingElement !== undefined && theme === 'ios';
936
+ const mode = getIonMode(this);
937
+ const isCardModal = presentingElement !== undefined && mode === 'ios';
895
938
  const isHandleCycle = handleBehavior === 'cycle';
896
- const shape = this.getShape();
897
939
  const isSheetModalWithHandle = isSheetModal && showHandle;
898
- return (h(Host, Object.assign({ key: '2111b0cb69c57d4827050f75f4033ad37f8e4f7a', "no-router": true,
940
+ return (h(Host, Object.assign({ key: '226d5141aab88b9aedd6f9c5afba39386bf8e2b3', "no-router": true,
899
941
  // Allow the modal to be navigable when the handle is focusable
900
942
  tabIndex: isHandleCycle && isSheetModalWithHandle ? 0 : -1 }, htmlAttributes, { style: {
901
943
  zIndex: `${20000 + this.overlayIndex}`,
902
- }, class: Object.assign({ [theme]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-${shape}`]: shape !== undefined, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), h("ion-backdrop", { key: 'd936c1d88a29b3210c0122a38148373e6349458c', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), theme === 'ios' && h("div", { key: '126a9c79f4c9d702b6c291dd07b87eae270bc3c3', class: "modal-shadow" }), h("div", Object.assign({ key: '8381a634dbcb4bdf895996aebd5c1e938058d631',
944
+ }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), h("ion-backdrop", { key: 'e44873e849e5453873fa4e20ab6dcfc40b7ade95', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && h("div", { key: '45583d93e1dbe0e0b705cdff056ef62b9243e38c', class: "modal-shadow" }), h("div", Object.assign({ key: '57ee5d032eed8e5f1b32c6badc5da4b2be3909cf',
903
945
  /*
904
946
  role and aria-modal must be used on the
905
947
  same element. They must also be set inside the
906
948
  shadow DOM otherwise ion-button will not be highlighted
907
949
  when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
908
950
  */
909
- role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (h("button", { key: '8aa16ae5e8b532dedfe0f072f3ec908c463a1c6b', class: "modal-handle",
951
+ role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (h("button", { key: 'e8a6c2f327a710c8ea478eb9bafd0790ad85b3a5', class: "modal-handle",
910
952
  // Prevents the handle from receiving keyboard focus when it does not cycle
911
- 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) })), h("slot", { key: '29ead0cd14368eff40bd330ab7c8172e3d9235f9', onSlotchange: this.onSlotChange }))));
953
+ 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) })), h("slot", { key: '6f0efc800debd7ddd0b022bfddccaf91946c59ff', onSlotchange: this.onSlotChange }))));
912
954
  }
913
955
  static get is() { return "ion-modal"; }
914
956
  static get encapsulation() { return "shadow"; }
915
957
  static get originalStyleUrls() {
916
958
  return {
917
959
  "ios": ["modal.ios.scss"],
918
- "md": ["modal.md.scss"],
919
- "ionic": ["modal.ionic.scss"]
960
+ "md": ["modal.md.scss"]
920
961
  };
921
962
  }
922
963
  static get styleUrls() {
923
964
  return {
924
965
  "ios": ["modal.ios.css"],
925
- "md": ["modal.md.css"],
926
- "ionic": ["modal.ionic.css"]
966
+ "md": ["modal.md.css"]
927
967
  };
928
968
  }
929
969
  static get properties() {
@@ -1464,25 +1504,6 @@ export class Modal {
1464
1504
  "reflect": false,
1465
1505
  "attribute": "can-dismiss",
1466
1506
  "defaultValue": "true"
1467
- },
1468
- "shape": {
1469
- "type": "string",
1470
- "mutable": false,
1471
- "complexType": {
1472
- "original": "'soft' | 'round' | 'rectangular'",
1473
- "resolved": "\"rectangular\" | \"round\" | \"soft\" | undefined",
1474
- "references": {}
1475
- },
1476
- "required": false,
1477
- "optional": true,
1478
- "docs": {
1479
- "tags": [],
1480
- "text": "Set to `\"soft\"` for a modal with slightly rounded corners,\n`\"round\"` for a modal with fully rounded corners, or `\"rectangular\"`\nfor a modal without rounded corners.\n\nDefaults to `\"round\"` for the `ionic` theme, undefined for all other themes."
1481
- },
1482
- "getter": false,
1483
- "setter": false,
1484
- "reflect": false,
1485
- "attribute": "shape"
1486
1507
  }
1487
1508
  };
1488
1509
  }