@ionic/core 8.7.6-dev.11758808200.14faa1a0 → 8.7.6-nightly.20250925

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 (930) 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 +16 -28
  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 +7 -25
  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 +14 -39
  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 +20 -48
  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 +5 -10
  107. package/components/radio.js +8 -11
  108. package/components/ripple-effect.js +7 -15
  109. package/components/select-modal.js +4 -4
  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-BXRtNUgm.js → animation-ZJ1lAkZD.js} +2 -2
  145. package/dist/cjs/{app-globals-x_8DXqdl.js → app-globals-77ZfuXXk.js} +1 -1
  146. package/dist/cjs/{button-active-BcEaeF5Y.js → button-active-BzZenWWH.js} +1 -1
  147. package/dist/cjs/{capacitor-CVcQYFDK.js → capacitor-DmA66EwP.js} +3 -3
  148. package/dist/cjs/{data-Crxp8jrQ.js → data-DW6ofvJ8.js} +5 -5
  149. package/dist/{esm/focus-visible-vXpMhGrs.js → cjs/focus-visible-CCvKiLh3.js} +3 -23
  150. package/dist/cjs/{framework-delegate-D94PxJL6.js → framework-delegate-WkyjrnCx.js} +2 -4
  151. package/dist/cjs/{haptic-r0GBrUII.js → haptic-ClPPQ_PS.js} +1 -1
  152. package/dist/cjs/hardware-back-button-BxdNu76F.js +121 -0
  153. package/dist/cjs/{helpers-CYFB2_7O.js → helpers-DgwmcYAu.js} +2 -41
  154. package/dist/cjs/{index-DkmXWuZ7.js → index-BzEyuIww.js} +3 -3
  155. package/dist/cjs/{index-DsE1tD-q.js → index-Cc5PNMyz.js} +1 -1
  156. package/dist/cjs/{index-DgkpUJvi.js → index-D24wggHR.js} +15 -15
  157. package/dist/cjs/index-DkNv4J_i.js +10 -0
  158. package/dist/cjs/{index-MoROIJ3n.js → index-bGpoPC4u.js} +7 -8
  159. package/dist/cjs/index.cjs.js +11 -10
  160. package/dist/cjs/{input-shims-temHXqvt.js → input-shims-CLI_OrmU.js} +16 -17
  161. package/dist/cjs/{input.utils-8JmSrYpP.js → input.utils-B2hZ5tX6.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 +144 -243
  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 +45 -105
  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 +69 -96
  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 +13 -22
  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 -8
  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 +20 -65
  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-UI5YPSi-.js +151 -0
  215. package/dist/cjs/ionic.cjs.js +3 -3
  216. package/dist/cjs/{ios.transition-CWI22viS.js → ios.transition-DEitrLlG.js} +4 -6
  217. package/dist/cjs/{keyboard-BZdohzZu.js → keyboard-UuAS4D_9.js} +1 -1
  218. package/dist/cjs/{keyboard-controller-B-dr5t4a.js → keyboard-controller-GXBiBRKS.js} +9 -11
  219. package/dist/cjs/{keyboard-ByZ4Ulg3.js → keyboard-hHzlEQpk.js} +3 -4
  220. package/dist/cjs/loader.cjs.js +3 -3
  221. package/dist/cjs/{md.transition-BxMmPf_q.js → md.transition-BHtGC-Wg.js} +4 -5
  222. package/dist/cjs/{notch-controller-BmjMp6Co.js → notch-controller-Bf5Rr4R5.js} +4 -4
  223. package/dist/cjs/{overlays-DEgXBxFs.js → overlays-czPyT6xP.js} +9 -8
  224. package/dist/cjs/{status-tap-D-MulHQM.js → status-tap-D9YPr62n.js} +2 -3
  225. package/dist/cjs/{swipe-back-C5W5r-1A.js → swipe-back-C1wRtoww.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 +18 -49
  310. package/dist/collection/components/header/header.md.css +8 -23
  311. package/dist/collection/components/img/img.js +2 -8
  312. package/dist/collection/components/infinite-scroll/infinite-scroll.js +5 -100
  313. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -12
  314. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +10 -16
  315. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -12
  316. package/dist/collection/components/input/input.ios.css +140 -223
  317. package/dist/collection/components/input/input.js +38 -149
  318. package/dist/collection/components/input/input.md.css +212 -193
  319. package/dist/collection/components/input-otp/input-otp.ios.css +60 -106
  320. package/dist/collection/components/input-otp/input-otp.js +5 -7
  321. package/dist/collection/components/input-otp/input-otp.md.css +60 -106
  322. package/dist/collection/components/input-password-toggle/input-password-toggle.js +12 -48
  323. package/dist/collection/components/item/item.ios.css +69 -109
  324. package/dist/collection/components/item/item.js +19 -43
  325. package/dist/collection/components/item/item.md.css +68 -120
  326. package/dist/collection/components/item-divider/item-divider.ios.css +0 -18
  327. package/dist/collection/components/item-divider/item-divider.js +8 -11
  328. package/dist/collection/components/item-divider/item-divider.md.css +0 -18
  329. package/dist/collection/components/item-group/item-group.ios.css +0 -12
  330. package/dist/collection/components/item-group/item-group.js +7 -13
  331. package/dist/collection/components/item-group/item-group.md.css +0 -12
  332. package/dist/collection/components/item-option/item-option.ios.css +29 -136
  333. package/dist/collection/components/item-option/item-option.js +9 -73
  334. package/dist/collection/components/item-option/item-option.md.css +29 -136
  335. package/dist/collection/components/item-options/item-options.ios.css +34 -77
  336. package/dist/collection/components/item-options/item-options.js +7 -13
  337. package/dist/collection/components/item-options/item-options.md.css +34 -77
  338. package/dist/collection/components/item-sliding/item-sliding.css +0 -6
  339. package/dist/collection/components/item-sliding/item-sliding.js +4 -8
  340. package/dist/collection/components/label/label.ios.css +0 -18
  341. package/dist/collection/components/label/label.js +8 -11
  342. package/dist/collection/components/label/label.md.css +0 -18
  343. package/dist/collection/components/list/list.ios.css +14 -54
  344. package/dist/collection/components/list/list.js +9 -48
  345. package/dist/collection/components/list/list.md.css +16 -56
  346. package/dist/collection/components/list-header/list-header.ios.css +38 -82
  347. package/dist/collection/components/list-header/list-header.js +8 -11
  348. package/dist/collection/components/list-header/list-header.md.css +38 -82
  349. package/dist/collection/components/loading/loading.ios.css +1 -13
  350. package/dist/collection/components/loading/loading.js +11 -14
  351. package/dist/collection/components/loading/loading.md.css +1 -13
  352. package/dist/collection/components/menu/menu.ios.css +3 -15
  353. package/dist/collection/components/menu/menu.js +7 -12
  354. package/dist/collection/components/menu/menu.md.css +3 -15
  355. package/dist/collection/components/menu-button/menu-button.ios.css +14 -48
  356. package/dist/collection/components/menu-button/menu-button.js +10 -26
  357. package/dist/collection/components/menu-button/menu-button.md.css +15 -49
  358. package/dist/collection/components/menu-toggle/menu-toggle.js +5 -8
  359. package/dist/collection/components/modal/animations/sheet.js +2 -8
  360. package/dist/collection/components/modal/gestures/sheet.js +6 -10
  361. package/dist/collection/components/modal/modal.ios.css +70 -174
  362. package/dist/collection/components/modal/modal.js +11 -48
  363. package/dist/collection/components/modal/modal.md.css +70 -174
  364. package/dist/collection/components/nav/nav.css +1 -7
  365. package/dist/collection/components/nav/nav.js +5 -11
  366. package/dist/collection/components/nav-link/nav-link.js +1 -5
  367. package/dist/collection/components/note/note.ios.css +0 -12
  368. package/dist/collection/components/note/note.js +8 -11
  369. package/dist/collection/components/note/note.md.css +0 -12
  370. package/dist/collection/components/picker/picker.ios.css +3 -15
  371. package/dist/collection/components/picker/picker.js +5 -8
  372. package/dist/collection/components/picker/picker.md.css +3 -15
  373. package/dist/collection/components/picker-column/picker-column.css +2 -9
  374. package/dist/collection/components/picker-column/picker-column.js +7 -8
  375. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
  376. package/dist/collection/components/picker-column-option/picker-column-option.js +7 -13
  377. package/dist/collection/components/picker-column-option/picker-column-option.md.css +0 -6
  378. package/dist/collection/components/picker-legacy/picker.ios.css +1 -13
  379. package/dist/collection/components/picker-legacy/picker.js +6 -7
  380. package/dist/collection/components/picker-legacy/picker.md.css +1 -13
  381. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -12
  382. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  383. package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -12
  384. package/dist/collection/components/popover/popover.ios.css +1 -13
  385. package/dist/collection/components/popover/popover.js +14 -17
  386. package/dist/collection/components/popover/popover.md.css +1 -13
  387. package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -48
  388. package/dist/collection/components/progress-bar/progress-bar.js +7 -43
  389. package/dist/collection/components/progress-bar/progress-bar.md.css +17 -48
  390. package/dist/collection/components/radio/radio.ios.css +91 -134
  391. package/dist/collection/components/radio/radio.js +9 -12
  392. package/dist/collection/components/radio/radio.md.css +91 -134
  393. package/dist/collection/components/radio-group/radio-group.ios.css +18 -42
  394. package/dist/collection/components/radio-group/radio-group.js +5 -13
  395. package/dist/collection/components/radio-group/radio-group.md.css +18 -42
  396. package/dist/collection/components/range/range.ios.css +85 -128
  397. package/dist/collection/components/range/range.js +9 -12
  398. package/dist/collection/components/range/range.md.css +85 -128
  399. package/dist/collection/components/refresher/refresher.ios.css +1 -14
  400. package/dist/collection/components/refresher/refresher.js +8 -11
  401. package/dist/collection/components/refresher/refresher.md.css +2 -15
  402. package/dist/collection/components/refresher-content/refresher-content.js +7 -28
  403. package/dist/collection/components/reorder/reorder.ios.css +0 -6
  404. package/dist/collection/components/reorder/reorder.js +6 -33
  405. package/dist/collection/components/reorder/reorder.md.css +0 -6
  406. package/dist/collection/components/reorder-group/reorder-group.css +0 -6
  407. package/dist/collection/components/reorder-group/reorder-group.js +4 -8
  408. package/dist/collection/components/ripple-effect/{ripple-effect.common.css → ripple-effect.css} +1 -7
  409. package/dist/collection/components/ripple-effect/ripple-effect.js +6 -14
  410. package/dist/collection/components/route/route.js +0 -4
  411. package/dist/collection/components/router/router.js +0 -4
  412. package/dist/collection/components/router-link/router-link.css +2 -8
  413. package/dist/collection/components/router-link/router-link.js +5 -9
  414. package/dist/collection/components/router-outlet/router-outlet.css +1 -7
  415. package/dist/collection/components/router-outlet/router-outlet.js +3 -6
  416. package/dist/collection/components/row/row.css +0 -16
  417. package/dist/collection/components/row/row.js +2 -9
  418. package/dist/collection/components/searchbar/searchbar.ios.css +18 -56
  419. package/dist/collection/components/searchbar/searchbar.js +34 -181
  420. package/dist/collection/components/searchbar/searchbar.md.css +18 -56
  421. package/dist/collection/components/segment/segment.ios.css +2 -45
  422. package/dist/collection/components/segment/segment.js +8 -11
  423. package/dist/collection/components/segment/segment.md.css +2 -45
  424. package/dist/collection/components/segment-button/segment-button.ios.css +105 -146
  425. package/dist/collection/components/segment-button/segment-button.js +8 -11
  426. package/dist/collection/components/segment-button/segment-button.md.css +107 -148
  427. package/dist/collection/components/segment-content/segment-content.js +1 -1
  428. package/dist/collection/components/segment-view/segment-view.ios.css +0 -6
  429. package/dist/collection/components/segment-view/segment-view.js +4 -6
  430. package/dist/collection/components/segment-view/segment-view.md.css +0 -6
  431. package/dist/collection/components/select/select.ios.css +176 -315
  432. package/dist/collection/components/select/select.js +54 -157
  433. package/dist/collection/components/select/select.md.css +178 -331
  434. package/dist/collection/components/select-modal/select-modal.ios.css +0 -18
  435. package/dist/collection/components/select-modal/select-modal.js +3 -3
  436. package/dist/collection/components/select-modal/select-modal.md.css +3 -7
  437. package/dist/collection/components/select-option/select-option.js +2 -9
  438. package/dist/collection/components/select-popover/select-popover.ios.css +0 -18
  439. package/dist/collection/components/select-popover/select-popover.js +4 -12
  440. package/dist/collection/components/select-popover/select-popover.md.css +0 -18
  441. package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
  442. package/dist/collection/components/skeleton-text/skeleton-text.js +5 -9
  443. package/dist/collection/components/spinner/{spinner.ionic.css → spinner.css} +10 -77
  444. package/dist/collection/components/spinner/spinner.js +6 -47
  445. package/dist/collection/components/split-pane/split-pane.ios.css +2 -20
  446. package/dist/collection/components/split-pane/split-pane.js +8 -14
  447. package/dist/collection/components/split-pane/split-pane.md.css +2 -20
  448. package/dist/collection/components/tab/tab.js +2 -6
  449. package/dist/collection/components/tab-bar/tab-bar.ios.css +43 -71
  450. package/dist/collection/components/tab-bar/tab-bar.js +11 -78
  451. package/dist/collection/components/tab-bar/tab-bar.md.css +43 -71
  452. package/dist/collection/components/tab-button/tab-button.ios.css +95 -171
  453. package/dist/collection/components/tab-button/tab-button.js +8 -44
  454. package/dist/collection/components/tab-button/tab-button.md.css +93 -137
  455. package/dist/collection/components/tabs/tabs.css +1 -7
  456. package/dist/collection/components/tabs/tabs.js +1 -4
  457. package/dist/collection/components/text/text.css +0 -6
  458. package/dist/collection/components/text/text.js +6 -7
  459. package/dist/collection/components/textarea/textarea.ios.css +139 -275
  460. package/dist/collection/components/textarea/textarea.js +16 -76
  461. package/dist/collection/components/textarea/textarea.md.css +140 -288
  462. package/dist/collection/components/thumbnail/thumbnail.css +0 -6
  463. package/dist/collection/components/thumbnail/thumbnail.js +2 -9
  464. package/dist/collection/components/title/title.ios.css +4 -32
  465. package/dist/collection/components/title/title.js +7 -13
  466. package/dist/collection/components/title/title.md.css +4 -32
  467. package/dist/collection/components/toast/animations/utils.js +1 -1
  468. package/dist/collection/components/toast/toast.ios.css +45 -84
  469. package/dist/collection/components/toast/toast.js +12 -75
  470. package/dist/collection/components/toast/toast.md.css +45 -84
  471. package/dist/collection/components/toggle/toggle.ios.css +131 -247
  472. package/dist/collection/components/toggle/toggle.js +18 -73
  473. package/dist/collection/components/toggle/toggle.md.css +131 -244
  474. package/dist/collection/components/toolbar/toolbar.ios.css +47 -90
  475. package/dist/collection/components/toolbar/toolbar.js +13 -157
  476. package/dist/collection/components/toolbar/toolbar.md.css +47 -90
  477. package/dist/collection/global/ionic-global.js +13 -228
  478. package/dist/collection/utils/focus-visible.js +0 -22
  479. package/dist/collection/utils/framework-delegate.js +1 -3
  480. package/dist/collection/utils/helpers.js +2 -42
  481. package/dist/collection/utils/keyboard/keyboard-controller.js +1 -3
  482. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  483. package/dist/collection/utils/menu-controller/animations/push.js +1 -2
  484. package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
  485. package/dist/collection/utils/overlays.js +1 -2
  486. package/dist/collection/utils/test/playwright/generator.js +23 -48
  487. package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -14
  488. package/dist/collection/utils/test/playwright/page/utils/set-content.js +3 -24
  489. package/dist/collection/utils/transition/ios.transition.js +0 -1
  490. package/dist/docs.json +372 -8168
  491. package/dist/esm/{animation-DPqVg3gl.js → animation-BvhAtgca.js} +1 -1
  492. package/dist/esm/{app-globals-dJs8dVUB.js → app-globals-CvLYUxE9.js} +1 -1
  493. package/dist/esm/{button-active-BMINdWv6.js → button-active-DBUPuLNw.js} +1 -1
  494. package/dist/esm/{capacitor--DL1MVFW.js → capacitor-CFERIeaU.js} +1 -1
  495. package/dist/esm/{data-slRmoEWk.js → data-CKHMWxfe.js} +5 -5
  496. package/dist/{cjs/focus-visible-BIj-I3-C.js → esm/focus-visible-BmVRXR1y.js} +1 -27
  497. package/dist/esm/{framework-delegate-C3AU0AA6.js → framework-delegate-BLEBgH06.js} +2 -4
  498. package/dist/esm/{haptic-BWDWI-Xh.js → haptic-DzAMWJuk.js} +1 -1
  499. package/dist/esm/hardware-back-button-Dhbd-23H.js +115 -0
  500. package/dist/esm/{helpers-CKng-4WP.js → helpers-8KSQQGQy.js} +3 -42
  501. package/dist/esm/{index-C21kdpyw.js → index-7UbSlv7N.js} +1 -1
  502. package/dist/esm/{index-jNq9q9I-.js → index-C6WeRr09.js} +2 -3
  503. package/dist/esm/{index-BwfAv3fK.js → index-CXSTcaAW.js} +10 -10
  504. package/dist/esm/{index-COG0_eom.js → index-DV3sJJW8.js} +1 -1
  505. package/dist/esm/{index-DLYqkEhn.js → index-Dp7GXH1z.js} +3 -3
  506. package/dist/esm/index-ZjP4CjeZ.js +7 -0
  507. package/dist/esm/index.js +11 -10
  508. package/dist/esm/{input-shims-Dt4HUCHS.js → input-shims-C4KDnhxb.js} +5 -6
  509. package/dist/esm/{input.utils-D7U0b1bK.js → input.utils-be4gBvVY.js} +2 -2
  510. package/dist/esm/ion-accordion_2.entry.js +27 -56
  511. package/dist/esm/ion-action-sheet.entry.js +18 -21
  512. package/dist/esm/ion-alert.entry.js +20 -22
  513. package/dist/esm/ion-app_8.entry.js +145 -244
  514. package/dist/esm/ion-avatar_3.entry.js +13 -125
  515. package/dist/esm/ion-back-button.entry.js +20 -29
  516. package/dist/esm/ion-backdrop.entry.js +6 -9
  517. package/dist/esm/ion-breadcrumb_2.entry.js +17 -53
  518. package/dist/esm/ion-button_2.entry.js +11 -43
  519. package/dist/esm/ion-card_5.entry.js +29 -53
  520. package/dist/esm/ion-checkbox.entry.js +13 -31
  521. package/dist/esm/ion-chip.entry.js +8 -49
  522. package/dist/esm/ion-col_3.entry.js +57 -54
  523. package/dist/esm/ion-datetime-button.entry.js +7 -11
  524. package/dist/esm/ion-datetime_3.entry.js +40 -115
  525. package/dist/esm/ion-fab_3.entry.js +27 -43
  526. package/dist/esm/ion-img.entry.js +3 -7
  527. package/dist/esm/ion-infinite-scroll_2.entry.js +14 -89
  528. package/dist/esm/ion-input-otp.entry.js +7 -11
  529. package/dist/esm/ion-input-password-toggle.entry.js +14 -52
  530. package/dist/esm/ion-input.entry.js +32 -122
  531. package/dist/esm/ion-item-option_3.entry.js +19 -48
  532. package/dist/esm/ion-item_8.entry.js +47 -107
  533. package/dist/esm/ion-loading.entry.js +15 -17
  534. package/dist/esm/ion-menu_3.entry.js +27 -45
  535. package/dist/esm/ion-modal.entry.js +29 -56
  536. package/dist/esm/ion-nav_2.entry.js +10 -13
  537. package/dist/esm/ion-picker-column-option.entry.js +6 -10
  538. package/dist/esm/ion-picker-column.entry.js +11 -11
  539. package/dist/esm/ion-picker.entry.js +5 -9
  540. package/dist/esm/ion-popover.entry.js +16 -18
  541. package/dist/esm/ion-progress-bar.entry.js +7 -25
  542. package/dist/esm/ion-radio_2.entry.js +13 -22
  543. package/dist/esm/ion-range.entry.js +10 -14
  544. package/dist/esm/ion-refresher_2.entry.js +19 -37
  545. package/dist/esm/ion-reorder_2.entry.js +14 -38
  546. package/dist/esm/ion-ripple-effect.entry.js +6 -14
  547. package/dist/esm/ion-route_4.entry.js +7 -8
  548. package/dist/esm/ion-searchbar.entry.js +24 -137
  549. package/dist/esm/ion-segment-content.entry.js +1 -1
  550. package/dist/esm/ion-segment-view.entry.js +2 -5
  551. package/dist/esm/ion-segment_2.entry.js +14 -21
  552. package/dist/esm/ion-select-modal.entry.js +9 -8
  553. package/dist/esm/ion-select_3.entry.js +40 -131
  554. package/dist/esm/ion-spinner.entry.js +6 -28
  555. package/dist/esm/ion-split-pane.entry.js +8 -11
  556. package/dist/esm/ion-tab-bar_2.entry.js +20 -65
  557. package/dist/esm/ion-tab_2.entry.js +6 -7
  558. package/dist/esm/ion-text.entry.js +5 -5
  559. package/dist/esm/ion-textarea.entry.js +15 -55
  560. package/dist/esm/ion-toast.entry.js +17 -40
  561. package/dist/esm/ion-toggle.entry.js +22 -79
  562. package/dist/esm/ionic-global-CTSyufhF.js +146 -0
  563. package/dist/esm/ionic.js +3 -3
  564. package/dist/esm/{ios.transition-CJcl_IUo.js → ios.transition-eAEkgVAv.js} +4 -6
  565. package/dist/esm/{keyboard-Ce5NGRb7.js → keyboard-CUw4ekVy.js} +1 -1
  566. package/dist/esm/{keyboard-controller-CN0dsogH.js → keyboard-controller-BaaVITYt.js} +3 -5
  567. package/dist/esm/{keyboard-DP1KnX1o.js → keyboard-ywgs5efA.js} +3 -4
  568. package/dist/esm/loader.js +3 -3
  569. package/dist/esm/{md.transition-DUO570OK.js → md.transition-D8TeJ_Pz.js} +4 -5
  570. package/dist/esm/{notch-controller-BZq2fbxL.js → notch-controller-lb417-kU.js} +2 -2
  571. package/dist/esm/{overlays-D3rE6lyd.js → overlays-BYcYBCrx.js} +6 -5
  572. package/dist/esm/{status-tap-Bux-fh_w.js → status-tap-pATNXEtr.js} +2 -3
  573. package/dist/esm/{swipe-back-Dp-f6VSv.js → swipe-back-B2YfOHRM.js} +1 -2
  574. package/dist/html.html-data.json +215 -2521
  575. package/dist/ionic/index.esm.js +1 -1
  576. package/dist/ionic/ionic.esm.js +1 -1
  577. package/dist/ionic/p-0793aea6.entry.js +4 -0
  578. package/dist/ionic/p-0e1904a0.entry.js +4 -0
  579. package/dist/ionic/p-0f396661.entry.js +4 -0
  580. package/dist/ionic/p-117e7a3f.entry.js +4 -0
  581. package/dist/ionic/p-1191a2d9.entry.js +4 -0
  582. package/dist/ionic/p-148bdf18.entry.js +4 -0
  583. package/dist/ionic/p-16116947.entry.js +4 -0
  584. package/dist/ionic/p-19f80390.entry.js +4 -0
  585. package/dist/ionic/p-1a91f317.entry.js +4 -0
  586. package/dist/ionic/p-1bbd0a23.entry.js +4 -0
  587. package/dist/ionic/p-1f68cb59.entry.js +4 -0
  588. package/dist/ionic/p-25e5e5cc.entry.js +4 -0
  589. package/dist/ionic/p-2cb0f39f.entry.js +4 -0
  590. package/dist/ionic/p-3392f558.entry.js +4 -0
  591. package/dist/ionic/p-349fc921.entry.js +4 -0
  592. package/dist/ionic/p-3624b640.entry.js +4 -0
  593. package/dist/ionic/p-36a54836.entry.js +4 -0
  594. package/dist/ionic/p-39ed3212.entry.js +4 -0
  595. package/dist/ionic/p-40d56a51.entry.js +4 -0
  596. package/dist/ionic/p-44e3b33a.entry.js +4 -0
  597. package/dist/ionic/p-4f2c5845.entry.js +4 -0
  598. package/dist/ionic/p-528af4e6.entry.js +4 -0
  599. package/dist/ionic/p-54dec9b1.entry.js +4 -0
  600. package/dist/ionic/p-568efea2.entry.js +4 -0
  601. package/dist/ionic/p-5c976c00.entry.js +4 -0
  602. package/dist/ionic/p-6383afc2.entry.js +4 -0
  603. package/dist/ionic/p-63852736.entry.js +4 -0
  604. package/dist/ionic/p-6e43c86a.entry.js +4 -0
  605. package/dist/ionic/p-746cd400.entry.js +4 -0
  606. package/dist/ionic/p-7a53f04c.entry.js +4 -0
  607. package/dist/ionic/p-7b12d853.entry.js +4 -0
  608. package/dist/ionic/p-7da05504.entry.js +4 -0
  609. package/dist/ionic/p-8888efe4.entry.js +4 -0
  610. package/dist/ionic/p-8cdb4ff5.entry.js +4 -0
  611. package/dist/ionic/p-90f4cc71.entry.js +4 -0
  612. package/dist/ionic/p-9ddf2620.entry.js +4 -0
  613. package/dist/ionic/p-9eeaBrnk.js +4 -0
  614. package/dist/ionic/{p-4ivCEBy1.js → p-B1xocg0A.js} +1 -1
  615. package/dist/ionic/p-B5MDSrGg.js +4 -0
  616. package/dist/ionic/p-BB-JoKGB.js +4 -0
  617. package/dist/ionic/{p-KY_2sl5b.js → p-BHGXdud8.js} +1 -1
  618. package/dist/ionic/{p-CjpktT3Z.js → p-BhNEp2QP.js} +1 -1
  619. package/dist/ionic/p-BmVRXR1y.js +4 -0
  620. package/dist/ionic/p-Br3vSlYh.js +4 -0
  621. package/dist/ionic/p-C-Cct-6D.js +4 -0
  622. package/dist/ionic/p-C4I6B3uV.js +4 -0
  623. package/dist/ionic/{p-CVVzZviS.js → p-C87oPMMF.js} +1 -1
  624. package/dist/ionic/p-C8d2ebIg.js +4 -0
  625. package/dist/ionic/p-CIGNaXM1.js +4 -0
  626. package/dist/ionic/{p-BYYLxYDJ.js → p-CKvCXMs9.js} +1 -1
  627. package/dist/ionic/{p-BISSkhkA.js → p-CWvl4RPO.js} +1 -1
  628. package/dist/ionic/p-Cnh7O81W.js +4 -0
  629. package/dist/ionic/p-CtWGkNnJ.js +4 -0
  630. package/dist/ionic/p-CvaZMP6T.js +4 -0
  631. package/dist/ionic/{p-EwG_P2X9.js → p-D13Eaw-8.js} +1 -1
  632. package/dist/ionic/p-D2fQU_qK.js +4 -0
  633. package/dist/ionic/p-DAfH9Iif.js +4 -0
  634. package/dist/ionic/{p-D8VpGXAu.js → p-DCuOL88l.js} +1 -1
  635. package/dist/ionic/p-DJKvq7vb.js +4 -0
  636. package/dist/ionic/{p-COG0_eom.js → p-DV3sJJW8.js} +1 -1
  637. package/dist/ionic/{p-BqMzjJ9X.js → p-DiZPU8BH.js} +1 -1
  638. package/dist/ionic/p-Dm_oBkW1.js +4 -0
  639. package/dist/ionic/p-LaGjiAVo.js +4 -0
  640. package/dist/ionic/p-ZjP4CjeZ.js +4 -0
  641. package/dist/ionic/p-a00ad0f2.entry.js +4 -0
  642. package/dist/ionic/p-a81be128.entry.js +4 -0
  643. package/dist/ionic/p-afeb9df6.entry.js +4 -0
  644. package/dist/ionic/p-b292804d.entry.js +4 -0
  645. package/dist/ionic/p-bc9f9032.entry.js +4 -0
  646. package/dist/ionic/p-bf81a468.entry.js +4 -0
  647. package/dist/ionic/p-cde6d39b.entry.js +4 -0
  648. package/dist/ionic/p-d04d66fc.entry.js +4 -0
  649. package/dist/ionic/p-d3df6032.entry.js +4 -0
  650. package/dist/ionic/p-dbba38cf.entry.js +4 -0
  651. package/dist/ionic/p-e6c3214c.entry.js +4 -0
  652. package/dist/ionic/p-e6c465ff.entry.js +4 -0
  653. package/dist/ionic/p-ec76fec4.entry.js +4 -0
  654. package/dist/ionic/p-ee2e35a6.entry.js +4 -0
  655. package/dist/ionic/p-f7db572a.entry.js +4 -0
  656. package/dist/ionic/p-f9eb54ee.entry.js +4 -0
  657. package/dist/types/components/accordion/accordion.d.ts +3 -5
  658. package/dist/types/components/accordion-group/accordion-group.d.ts +1 -12
  659. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
  660. package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
  661. package/dist/types/components/alert/alert-interface.d.ts +7 -3
  662. package/dist/types/components/alert/alert.d.ts +2 -3
  663. package/dist/types/components/app/app.d.ts +2 -4
  664. package/dist/types/components/avatar/avatar.d.ts +0 -32
  665. package/dist/types/components/back-button/back-button.d.ts +1 -2
  666. package/dist/types/components/backdrop/backdrop.d.ts +0 -4
  667. package/dist/types/components/badge/badge.d.ts +1 -34
  668. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -4
  669. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  670. package/dist/types/components/button/button.d.ts +6 -19
  671. package/dist/types/components/buttons/buttons.d.ts +1 -5
  672. package/dist/types/components/card/card.d.ts +1 -8
  673. package/dist/types/components/card-content/card-content.d.ts +1 -2
  674. package/dist/types/components/card-header/card-header.d.ts +2 -3
  675. package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
  676. package/dist/types/components/card-title/card-title.d.ts +1 -2
  677. package/dist/types/components/checkbox/checkbox.d.ts +4 -14
  678. package/dist/types/components/chip/chip.d.ts +1 -26
  679. package/dist/types/components/col/col.d.ts +5 -52
  680. package/dist/types/components/content/content.d.ts +0 -3
  681. package/dist/types/components/datetime/datetime.d.ts +1 -26
  682. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  683. package/dist/types/components/datetime-button/datetime-button.d.ts +1 -2
  684. package/dist/types/components/fab/fab.d.ts +0 -4
  685. package/dist/types/components/fab-button/fab-button.d.ts +3 -5
  686. package/dist/types/components/fab-list/fab-list.d.ts +0 -4
  687. package/dist/types/components/footer/footer.d.ts +3 -4
  688. package/dist/types/components/grid/grid.d.ts +0 -4
  689. package/dist/types/components/header/header.d.ts +3 -9
  690. package/dist/types/components/img/img.d.ts +0 -3
  691. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -21
  692. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +0 -4
  693. package/dist/types/components/input/input.d.ts +5 -31
  694. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +0 -2
  695. package/dist/types/components/item/item.d.ts +4 -11
  696. package/dist/types/components/item-divider/item-divider.d.ts +1 -2
  697. package/dist/types/components/item-group/item-group.d.ts +0 -4
  698. package/dist/types/components/item-option/item-option.d.ts +1 -18
  699. package/dist/types/components/item-options/item-options.d.ts +0 -4
  700. package/dist/types/components/item-sliding/item-sliding.d.ts +0 -4
  701. package/dist/types/components/label/label.d.ts +1 -2
  702. package/dist/types/components/list/list.d.ts +1 -15
  703. package/dist/types/components/list-header/list-header.d.ts +1 -2
  704. package/dist/types/components/loading/loading-interface.d.ts +7 -2
  705. package/dist/types/components/loading/loading.d.ts +2 -3
  706. package/dist/types/components/menu/menu.d.ts +0 -3
  707. package/dist/types/components/menu-button/menu-button.d.ts +1 -3
  708. package/dist/types/components/menu-toggle/menu-toggle.d.ts +0 -3
  709. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  710. package/dist/types/components/modal/modal-interface.d.ts +7 -4
  711. package/dist/types/components/modal/modal.d.ts +1 -11
  712. package/dist/types/components/nav/nav-interface.d.ts +1 -9
  713. package/dist/types/components/nav/nav.d.ts +1 -5
  714. package/dist/types/components/nav-link/nav-link.d.ts +0 -4
  715. package/dist/types/components/note/note.d.ts +1 -2
  716. package/dist/types/components/picker/picker.d.ts +1 -2
  717. package/dist/types/components/picker-column/picker-column.d.ts +1 -2
  718. package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
  719. package/dist/types/components/picker-legacy/picker.d.ts +1 -2
  720. package/dist/types/components/popover/popover-interface.d.ts +6 -3
  721. package/dist/types/components/popover/popover.d.ts +5 -6
  722. package/dist/types/components/progress-bar/progress-bar.d.ts +1 -10
  723. package/dist/types/components/radio/radio.d.ts +1 -2
  724. package/dist/types/components/radio-group/radio-group.d.ts +0 -4
  725. package/dist/types/components/range/range.d.ts +1 -2
  726. package/dist/types/components/refresher/refresher.d.ts +1 -2
  727. package/dist/types/components/refresher-content/refresher-content.d.ts +0 -4
  728. package/dist/types/components/reorder/reorder.d.ts +0 -9
  729. package/dist/types/components/reorder-group/reorder-group.d.ts +0 -4
  730. package/dist/types/components/ripple-effect/ripple-effect.d.ts +0 -4
  731. package/dist/types/components/route/route.d.ts +0 -4
  732. package/dist/types/components/router/router.d.ts +0 -4
  733. package/dist/types/components/router-link/router-link.d.ts +0 -4
  734. package/dist/types/components/router-outlet/router-outlet.d.ts +1 -4
  735. package/dist/types/components/row/row.d.ts +0 -4
  736. package/dist/types/components/searchbar/searchbar.d.ts +9 -51
  737. package/dist/types/components/segment/segment.d.ts +1 -2
  738. package/dist/types/components/segment-button/segment-button.d.ts +1 -2
  739. package/dist/types/components/select/select.d.ts +13 -41
  740. package/dist/types/components/select-option/select-option.d.ts +0 -4
  741. package/dist/types/components/select-popover/select-popover.d.ts +0 -3
  742. package/dist/types/components/skeleton-text/skeleton-text.d.ts +0 -4
  743. package/dist/types/components/spinner/spinner.d.ts +0 -15
  744. package/dist/types/components/split-pane/split-pane.d.ts +0 -4
  745. package/dist/types/components/tab/tab.d.ts +0 -4
  746. package/dist/types/components/tab-bar/tab-bar.d.ts +2 -22
  747. package/dist/types/components/tab-button/tab-button.d.ts +1 -11
  748. package/dist/types/components/tabs/tabs.d.ts +0 -3
  749. package/dist/types/components/text/text.d.ts +1 -2
  750. package/dist/types/components/textarea/textarea.d.ts +4 -17
  751. package/dist/types/components/thumbnail/thumbnail.d.ts +0 -4
  752. package/dist/types/components/title/title.d.ts +0 -4
  753. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  754. package/dist/types/components/toast/toast-interface.d.ts +7 -3
  755. package/dist/types/components/toast/toast.d.ts +2 -19
  756. package/dist/types/components/toggle/toggle.d.ts +1 -15
  757. package/dist/types/components/toolbar/toolbar.d.ts +3 -20
  758. package/dist/types/components.d.ts +196 -1593
  759. package/dist/types/global/ionic-global.d.ts +2 -27
  760. package/dist/types/interface.d.ts +0 -3
  761. package/dist/types/utils/config.d.ts +2 -106
  762. package/dist/types/utils/focus-visible.d.ts +0 -13
  763. package/dist/types/utils/helpers.d.ts +0 -11
  764. package/dist/types/utils/overlays-interface.d.ts +1 -31
  765. package/dist/types/utils/test/playwright/generator.d.ts +2 -31
  766. package/hydrate/index.js +936 -2837
  767. package/hydrate/index.mjs +936 -2837
  768. package/package.json +4 -9
  769. package/components/caret-down.js +0 -6
  770. package/components/caret-left.js +0 -6
  771. package/components/caret-right.js +0 -6
  772. package/components/ion-divider.d.ts +0 -11
  773. package/components/ion-divider.js +0 -70
  774. package/components/list2.js +0 -6
  775. package/components/x.js +0 -6
  776. package/css/ionic/bundle.ionic.css +0 -1
  777. package/css/ionic/bundle.ionic.css.map +0 -1
  778. package/css/ionic/core.ionic.css +0 -1
  779. package/css/ionic/core.ionic.css.map +0 -1
  780. package/css/ionic/global.bundle.ionic.css +0 -1
  781. package/css/ionic/global.bundle.ionic.css.map +0 -1
  782. package/css/ionic/ionic-swiper.ionic.css +0 -1
  783. package/css/ionic/ionic-swiper.ionic.css.map +0 -1
  784. package/css/ionic/link.ionic.css +0 -1
  785. package/css/ionic/link.ionic.css.map +0 -1
  786. package/css/ionic/structure.ionic.css +0 -1
  787. package/css/ionic/structure.ionic.css.map +0 -1
  788. package/css/ionic/typography.ionic.css +0 -1
  789. package/css/ionic/typography.ionic.css.map +0 -1
  790. package/css/ionic/utils.bundle.ionic.css +0 -1
  791. package/css/ionic/utils.bundle.ionic.css.map +0 -1
  792. package/dist/cjs/caret-down-vtVgfXIs.js +0 -8
  793. package/dist/cjs/caret-left-CxZXLRv5.js +0 -8
  794. package/dist/cjs/caret-right-CRCgv98E.js +0 -8
  795. package/dist/cjs/ion-divider.cjs.entry.js +0 -51
  796. package/dist/cjs/ionic-global-RZLbse4y.js +0 -491
  797. package/dist/cjs/list-a-7GSA6K.js +0 -8
  798. package/dist/cjs/x-BTF99yFH.js +0 -8
  799. package/dist/collection/components/accordion/accordion.ionic.css +0 -196
  800. package/dist/collection/components/accordion-group/accordion-group.ionic.css +0 -93
  801. package/dist/collection/components/avatar/avatar.ionic.css +0 -391
  802. package/dist/collection/components/backdrop/backdrop.ionic.css +0 -109
  803. package/dist/collection/components/badge/badge.ionic.css +0 -275
  804. package/dist/collection/components/button/button.ionic.css +0 -620
  805. package/dist/collection/components/buttons/buttons.ionic.css +0 -97
  806. package/dist/collection/components/card/card.ionic.css +0 -144
  807. package/dist/collection/components/card-content/card-content.ionic.css +0 -92
  808. package/dist/collection/components/card-header/card-header.ionic.css +0 -85
  809. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +0 -144
  810. package/dist/collection/components/checkbox/checkbox.ionic.css +0 -539
  811. package/dist/collection/components/chip/chip.ionic.css +0 -228
  812. package/dist/collection/components/datetime/datetime.ionic.css +0 -697
  813. package/dist/collection/components/divider/divider.ionic.css +0 -148
  814. package/dist/collection/components/divider/divider.ios.css +0 -87
  815. package/dist/collection/components/divider/divider.js +0 -94
  816. package/dist/collection/components/divider/divider.md.css +0 -87
  817. package/dist/collection/components/header/header.ionic.css +0 -98
  818. package/dist/collection/components/input/input.ionic.css +0 -881
  819. package/dist/collection/components/input-otp/input-otp.ionic.css +0 -369
  820. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +0 -78
  821. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +0 -61
  822. package/dist/collection/components/item/item.ionic.css +0 -499
  823. package/dist/collection/components/item-option/item-option.ionic.css +0 -278
  824. package/dist/collection/components/item-options/item-options.ionic.css +0 -221
  825. package/dist/collection/components/list/list.ionic.css +0 -212
  826. package/dist/collection/components/list-header/list-header.ionic.css +0 -190
  827. package/dist/collection/components/menu-button/menu-button.ionic.css +0 -236
  828. package/dist/collection/components/modal/modal.ionic.css +0 -241
  829. package/dist/collection/components/progress-bar/progress-bar.ionic.css +0 -287
  830. package/dist/collection/components/radio/radio.ionic.css +0 -422
  831. package/dist/collection/components/radio-group/radio-group.ionic.css +0 -125
  832. package/dist/collection/components/range/range.ionic.css +0 -563
  833. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +0 -215
  834. package/dist/collection/components/searchbar/searchbar.ionic.css +0 -626
  835. package/dist/collection/components/segment/segment.ionic.css +0 -115
  836. package/dist/collection/components/segment-button/segment-button.ionic.css +0 -353
  837. package/dist/collection/components/select/select.ionic.css +0 -763
  838. package/dist/collection/components/select-modal/select-modal.ionic.css +0 -123
  839. package/dist/collection/components/spinner/spinner.native.css +0 -198
  840. package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -186
  841. package/dist/collection/components/tab-button/tab-button.ionic.css +0 -336
  842. package/dist/collection/components/textarea/textarea.ionic.css +0 -828
  843. package/dist/collection/components/title/title.ionic.css +0 -127
  844. package/dist/collection/components/toast/toast.ionic.css +0 -394
  845. package/dist/collection/components/toggle/toggle.ionic.css +0 -509
  846. package/dist/collection/components/toolbar/test/image.svg +0 -1
  847. package/dist/collection/components/toolbar/toolbar.ionic.css +0 -241
  848. package/dist/esm/caret-down-D1t981Ih.js +0 -6
  849. package/dist/esm/caret-left-fIOYmaqA.js +0 -6
  850. package/dist/esm/caret-right-BYSs-jZz.js +0 -6
  851. package/dist/esm/ion-divider.entry.js +0 -49
  852. package/dist/esm/ionic-global-Dtd5Ma5B.js +0 -480
  853. package/dist/esm/list-Dhi5xtNS.js +0 -6
  854. package/dist/esm/x-BDqjX7Z_.js +0 -6
  855. package/dist/ionic/p-04b8cb11.entry.js +0 -4
  856. package/dist/ionic/p-07317db2.entry.js +0 -4
  857. package/dist/ionic/p-0b1386bf.entry.js +0 -4
  858. package/dist/ionic/p-0cfa2478.entry.js +0 -4
  859. package/dist/ionic/p-123f6dde.entry.js +0 -4
  860. package/dist/ionic/p-18660f23.entry.js +0 -4
  861. package/dist/ionic/p-1ac3754e.entry.js +0 -4
  862. package/dist/ionic/p-1acc1bfe.entry.js +0 -4
  863. package/dist/ionic/p-1d614d1a.entry.js +0 -4
  864. package/dist/ionic/p-21bad9c2.entry.js +0 -4
  865. package/dist/ionic/p-240c6a46.entry.js +0 -4
  866. package/dist/ionic/p-25cc812f.entry.js +0 -4
  867. package/dist/ionic/p-3ed15202.entry.js +0 -4
  868. package/dist/ionic/p-3ee8f3e6.entry.js +0 -4
  869. package/dist/ionic/p-3f22a9de.entry.js +0 -4
  870. package/dist/ionic/p-4cc76b1d.entry.js +0 -4
  871. package/dist/ionic/p-525895e0.entry.js +0 -4
  872. package/dist/ionic/p-554acf2b.entry.js +0 -4
  873. package/dist/ionic/p-59c4a194.entry.js +0 -4
  874. package/dist/ionic/p-5f0c7c62.entry.js +0 -4
  875. package/dist/ionic/p-69a244b5.entry.js +0 -4
  876. package/dist/ionic/p-742203d9.entry.js +0 -4
  877. package/dist/ionic/p-75b29611.entry.js +0 -4
  878. package/dist/ionic/p-7ead7a67.entry.js +0 -4
  879. package/dist/ionic/p-7f1c8070.entry.js +0 -4
  880. package/dist/ionic/p-845e0158.entry.js +0 -4
  881. package/dist/ionic/p-848ad9ae.entry.js +0 -4
  882. package/dist/ionic/p-8870c2f9.entry.js +0 -4
  883. package/dist/ionic/p-8cd4a868.entry.js +0 -4
  884. package/dist/ionic/p-907ac173.entry.js +0 -4
  885. package/dist/ionic/p-95621a36.entry.js +0 -4
  886. package/dist/ionic/p-9V8nrHFC.js +0 -4
  887. package/dist/ionic/p-9e575e4e.entry.js +0 -4
  888. package/dist/ionic/p-BDqjX7Z_.js +0 -4
  889. package/dist/ionic/p-BFFank6B.js +0 -4
  890. package/dist/ionic/p-BJGh_obi.js +0 -4
  891. package/dist/ionic/p-BYSs-jZz.js +0 -4
  892. package/dist/ionic/p-Bh0_z73h.js +0 -4
  893. package/dist/ionic/p-BpaeL4Lk.js +0 -4
  894. package/dist/ionic/p-CZEwJt85.js +0 -4
  895. package/dist/ionic/p-Cdv0TJ6-.js +0 -4
  896. package/dist/ionic/p-CqYDGaCK.js +0 -4
  897. package/dist/ionic/p-D-m6MIML.js +0 -4
  898. package/dist/ionic/p-D1t981Ih.js +0 -4
  899. package/dist/ionic/p-DBzcL_sL.js +0 -4
  900. package/dist/ionic/p-DO7doFVM.js +0 -4
  901. package/dist/ionic/p-Dhi5xtNS.js +0 -4
  902. package/dist/ionic/p-DpBID_Du.js +0 -4
  903. package/dist/ionic/p-DuV7rU9I.js +0 -4
  904. package/dist/ionic/p-EG6i47Uw.js +0 -4
  905. package/dist/ionic/p-Ex5J81sy.js +0 -4
  906. package/dist/ionic/p-a3ea0e64.entry.js +0 -4
  907. package/dist/ionic/p-a5893690.entry.js +0 -4
  908. package/dist/ionic/p-b269fb6b.entry.js +0 -4
  909. package/dist/ionic/p-b2aa3ff0.entry.js +0 -4
  910. package/dist/ionic/p-bbf5ed24.entry.js +0 -4
  911. package/dist/ionic/p-bd10b777.entry.js +0 -4
  912. package/dist/ionic/p-c85fd449.entry.js +0 -4
  913. package/dist/ionic/p-c9736360.entry.js +0 -4
  914. package/dist/ionic/p-cdcc3ffe.entry.js +0 -4
  915. package/dist/ionic/p-cef8eac8.entry.js +0 -4
  916. package/dist/ionic/p-d04293de.entry.js +0 -4
  917. package/dist/ionic/p-daf54858.entry.js +0 -4
  918. package/dist/ionic/p-df97e7d5.entry.js +0 -4
  919. package/dist/ionic/p-e0a689ea.entry.js +0 -4
  920. package/dist/ionic/p-e1ee9df4.entry.js +0 -4
  921. package/dist/ionic/p-e25b2e94.entry.js +0 -4
  922. package/dist/ionic/p-e53f3a62.entry.js +0 -4
  923. package/dist/ionic/p-ec96366b.entry.js +0 -4
  924. package/dist/ionic/p-ed071a41.entry.js +0 -4
  925. package/dist/ionic/p-f4d11cbb.entry.js +0 -4
  926. package/dist/ionic/p-fIOYmaqA.js +0 -4
  927. package/dist/ionic/p-ff5aa778.entry.js +0 -4
  928. package/dist/ionic/p-vXpMhGrs.js +0 -4
  929. package/dist/types/components/divider/divider.d.ts +0 -20
  930. /package/dist/collection/components/{refresher-content/refresher-content.css → input-password-toggle/input-password-toggle.css} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../src/css/padding.scss","../src/themes/mixins.scss","../src/css/float-elements.scss","../src/css/text-alignment.scss","../src/css/text-transformation.scss","../src/css/flex-utils.scss","../src/css/display.scss"],"names":[],"mappings":"AAcA,gBACE,mBACA,iBACA,iBACA,oBCmUE,aDjUe,ECkUf,cDlUe,ECqVjB,YDrViB,ECsVjB,eDtViB,EAGnB,aACE,0CACA,wCACA,wCACA,2CC6TE,sBDhVM,yBCiVN,qBDjVM,yBCkVN,oBDlVM,yBCmVN,mBDnVM,yBCiWR,YDjWQ,yBCkWR,eDlWQ,yBAwBV,iBACE,wCCwUA,YDjWQ,yBA8BV,mBACE,0CCiTE,sBDhVM,yBCiVN,qBDjVM,yBAoCV,iBACE,wCC6SE,oBDlVM,yBCmVN,mBDnVM,yBA0CV,oBACE,2CCuTA,eDlWQ,yBAgDV,sBACE,wCACA,2CC+SA,YDjWQ,yBCkWR,eDlWQ,yBAuDV,wBACE,0CACA,wCCuRE,sBDhVM,yBCiVN,qBDjVM,yBCkVN,oBDlVM,yBCmVN,mBDnVM,yBAiEV,eACE,kBACA,gBACA,gBACA,mBCwQE,YDtQc,ECuQd,aDvQc,EC0RhB,WD1RgB,EC2RhB,cD3RgB,EAGlB,YACE,wCACA,sCACA,sCACA,yCCkQE,qBD/UK,wBCgVL,oBDhVK,wBCiVL,mBDjVK,wBCkVL,kBDlVK,wBCgWP,WDhWO,wBCiWP,cDjWO,wBAkFT,gBACE,sCC6QA,WDhWO,wBAwFT,kBACE,wCCsPE,qBD/UK,wBCgVL,oBDhVK,wBA8FT,gBACE,sCCkPE,mBDjVK,wBCkVL,kBDlVK,wBAoGT,mBACE,yCC4PA,cDjWO,wBA0GT,qBACE,sCACA,yCCoPA,WDhWO,wBCiWP,cDjWO,wBAiHT,uBACE,wCACA,sCC4NE,qBD/UK,wBCgVL,oBDhVK,wBCiVL,mBDjVK,wBCkVL,kBDlVK,wBEIL,gBDyeE,sBCreF,iBDqeE,uBCjeF,iBDidE,sBAzNO,0CA6NP,uBAtNO,2BAsNP,uBAhNJ,8BAcW,0BAkMP,wBCjdF,eDqdE,uBAjOO,wCAqOP,sBA9NO,yBA8NP,sBAxNJ,8BAcW,wBA0MP,uBAvUF,yBC9JA,mBDyeE,sBCreF,oBDqeE,uBCjeF,oBDidE,sBAzNO,6CA6NP,uBAtNO,8BAsNP,uBAhNJ,8BAcW,6BAkMP,wBCjdF,kBDqdE,uBAjOO,2CAqOP,sBA9NO,4BA8NP,sBAxNJ,8BAcW,2BA0MP,wBAvUF,yBC9JA,mBDyeE,sBCreF,oBDqeE,uBCjeF,oBDidE,sBAzNO,6CA6NP,uBAtNO,8BAsNP,uBAhNJ,8BAcW,6BAkMP,wBCjdF,kBDqdE,uBAjOO,2CAqOP,sBA9NO,4BA8NP,sBAxNJ,8BAcW,2BA0MP,wBAvUF,yBC9JA,mBDyeE,sBCreF,oBDqeE,uBCjeF,oBDidE,sBAzNO,6CA6NP,uBAtNO,8BAsNP,uBAhNJ,8BAcW,6BAkMP,wBCjdF,kBDqdE,uBAjOO,2CAqOP,sBA9NO,4BA8NP,sBAxNJ,8BAcW,2BA0MP,wBAvUF,0BC9JA,mBDyeE,sBCreF,oBDqeE,uBCjeF,oBDidE,sBAzNO,6CA6NP,uBAtNO,8BAsNP,uBAhNJ,8BAcW,6BAkMP,wBCjdF,kBDqdE,uBAjOO,2CAqOP,sBA9NO,4BA8NP,sBAxNJ,8BAcW,2BA0MP,wBEreF,iBACE,6BAGF,kBACE,8BAGF,gBACE,4BAGF,cACE,0BAGF,eACE,2BAGF,gBACE,4BAGF,iBACE,8BAGF,eACE,8BFiIF,yBE9JA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BFiIF,yBE9JA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BFiIF,yBE9JA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BFiIF,0BE9JA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BC7BF,oBAEE,oCAGF,oBAEE,oCAGF,qBAEE,qCHkJF,yBG9JA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCHkJF,yBG9JA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCHkJF,yBG9JA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCHkJF,0BG9JA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCCCA,yBACE,oCADF,uBACE,kCADF,0BACE,gCADF,2BACE,uCADF,0BACE,sCADF,2BACE,iCJgJJ,yBIjJE,4BACE,oCADF,0BACE,kCADF,6BACE,gCADF,8BACE,uCADF,6BACE,sCADF,8BACE,kCJgJJ,yBIjJE,4BACE,oCADF,0BACE,kCADF,6BACE,gCADF,8BACE,uCADF,6BACE,sCADF,8BACE,kCJgJJ,yBIjJE,4BACE,oCADF,0BACE,kCADF,6BACE,gCADF,8BACE,uCADF,6BACE,sCADF,8BACE,kCJgJJ,0BIjJE,4BACE,oCADF,0BACE,kCADF,6BACE,gCADF,8BACE,uCADF,6BACE,sCADF,8BACE,kCAeF,uBACE,6BADF,qBACE,2BADF,wBACE,8BADF,yBACE,+BADF,0BACE,gCJgIJ,yBIjIE,0BACE,6BADF,wBACE,2BADF,2BACE,8BADF,4BACE,+BADF,6BACE,iCJgIJ,yBIjIE,0BACE,6BADF,wBACE,2BADF,2BACE,8BADF,4BACE,+BADF,6BACE,iCJgIJ,yBIjIE,0BACE,6BADF,wBACE,2BADF,2BACE,8BADF,4BACE,+BADF,6BACE,iCJgIJ,0BIjIE,0BACE,6BADF,wBACE,2BADF,2BACE,8BADF,4BACE,+BADF,6BACE,iCAeF,sBACE,4BADF,oBACE,0BADF,uBACE,6BADF,wBACE,8BADF,yBACE,+BADF,qBACE,2BJgHJ,yBIjHE,yBACE,4BADF,uBACE,0BADF,0BACE,6BADF,2BACE,8BADF,4BACE,+BADF,wBACE,4BJgHJ,yBIjHE,yBACE,4BADF,uBACE,0BADF,0BACE,6BADF,2BACE,8BADF,4BACE,+BADF,wBACE,4BJgHJ,yBIjHE,yBACE,4BADF,uBACE,0BADF,0BACE,6BADF,2BACE,8BADF,4BACE,+BADF,wBACE,4BJgHJ,0BIjHE,yBACE,4BADF,uBACE,0BADF,0BACE,6BADF,2BACE,8BADF,4BACE,+BADF,wBACE,4BAsBF,2BACE,sCADF,yBACE,oCADF,4BACE,kCADF,6BACE,yCADF,4BACE,wCADF,4BACE,wCJyFJ,yBI1FE,8BACE,sCADF,4BACE,oCADF,+BACE,kCADF,gCACE,yCADF,+BACE,wCADF,+BACE,yCJyFJ,yBI1FE,8BACE,sCADF,4BACE,oCADF,+BACE,kCADF,gCACE,yCADF,+BACE,wCADF,+BACE,yCJyFJ,yBI1FE,8BACE,sCADF,4BACE,oCADF,+BACE,kCADF,gCACE,yCADF,+BACE,wCADF,+BACE,yCJyFJ,0BI1FE,8BACE,sCADF,4BACE,oCADF,+BACE,kCADF,gCACE,yCADF,+BACE,wCADF,+BACE,yCAeF,cACE,8BADF,sBACE,sCADF,iBACE,iCADF,yBACE,yCJyEJ,yBI1EE,iBACE,8BADF,yBACE,sCADF,oBACE,iCADF,4BACE,0CJyEJ,yBI1EE,iBACE,8BADF,yBACE,sCADF,oBACE,iCADF,4BACE,0CJyEJ,yBI1EE,iBACE,8BADF,yBACE,sCADF,oBACE,iCADF,4BACE,0CJyEJ,0BI1EE,iBACE,8BADF,yBACE,sCADF,oBACE,iCADF,4BACE,0CAeN,UACE,0BADF,YACE,4BADF,kBACE,kCAQE,eACE,0BADF,iBACE,4BADF,uBACE,kCJgDJ,yBIjDE,kBACE,0BADF,oBACE,4BADF,0BACE,mCJgDJ,yBIjDE,kBACE,0BADF,oBACE,4BADF,0BACE,mCJgDJ,yBIjDE,kBACE,0BADF,oBACE,4BADF,0BACE,mCJgDJ,0BIjDE,kBACE,0BADF,oBACE,4BADF,0BACE,mCAeF,YACE,kBADF,eACE,qBADF,kBACE,wBADF,eACE,qBJgCJ,yBIjCE,eACE,kBADF,kBACE,qBADF,qBACE,wBADF,kBACE,sBJgCJ,yBIjCE,eACE,kBADF,kBACE,qBADF,qBACE,wBADF,kBACE,sBJgCJ,yBIjCE,eACE,kBADF,kBACE,qBADF,qBACE,wBADF,kBACE,sBJgCJ,0BIjCE,eACE,kBADF,kBACE,qBADF,qBACE,wBADF,kBACE,sBAYJ,iBACE,uBAGF,iBACE,uBAGF,mBACE,yBAGF,mBACE,yBJOF,yBIpBA,oBACE,uBAGF,oBACE,uBAGF,sBACE,yBAGF,sBACE,0BJOF,yBIpBA,oBACE,uBAGF,oBACE,uBAGF,sBACE,yBAGF,sBACE,0BJOF,yBIpBA,oBACE,uBAGF,oBACE,uBAGF,sBACE,yBAGF,sBACE,0BJOF,0BIpBA,oBACE,uBAGF,oBACE,uBAGF,sBACE,yBAGF,sBACE,0BAWF,iBACE,oBAIA,aACE,mBADF,aACE,mBADF,aACE,mBADF,aACE,mBADF,aACE,mBADF,aACE,mBADF,aACE,mBADF,aACE,mBADF,aACE,mBADF,aACE,mBADF,cACE,oBADF,cACE,oBADF,cACE,oBAIJ,gBACE,oBJfF,yBIIA,oBACE,oBAIA,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,iBACE,oBADF,iBACE,oBADF,iBACE,oBAIJ,mBACE,qBJfF,yBIIA,oBACE,oBAIA,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,iBACE,oBADF,iBACE,oBADF,iBACE,oBAIJ,mBACE,qBJfF,yBIIA,oBACE,oBAIA,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,iBACE,oBADF,iBACE,oBADF,iBACE,oBAIJ,mBACE,qBJfF,0BIIA,oBACE,oBAIA,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,gBACE,mBADF,iBACE,oBADF,iBACE,oBADF,iBACE,oBAIJ,mBACE,qBAON,2BACE,iCAGF,mCACE,yCAGF,wBACE,8BAGF,gCACE,sCAKF,YACE,kBCxMF,UACE,wBAUE,aACE,wBAOF,eACE,wBL2IF,yBKpJA,gBACE,yBL+LF,4BKxLA,kBACE,yBL2IF,yBKpJA,gBACE,yBL+LF,4BKxLA,kBACE,yBL2IF,yBKpJA,gBACE,yBL+LF,4BKxLA,kBACE,yBL2IF,0BKpJA,gBACE,yBL+LF,6BKxLA,kBACE,yBAyBA,kBACE,wBLiHJ,yBKlHE,qBACE,yBLiHJ,yBKlHE,qBACE,yBLiHJ,yBKlHE,qBACE,yBLiHJ,0BKlHE,qBACE,yBADF,sBACE,4BLiHJ,yBKlHE,yBACE,6BLiHJ,yBKlHE,yBACE,6BLiHJ,yBKlHE,yBACE,6BLiHJ,0BKlHE,yBACE,6BADF,oBACE,0BLiHJ,yBKlHE,uBACE,2BLiHJ,yBKlHE,uBACE,2BLiHJ,yBKlHE,uBACE,2BLiHJ,0BKlHE,uBACE,2BADF,0BACE,gCLiHJ,yBKlHE,6BACE,iCLiHJ,yBKlHE,6BACE,iCLiHJ,yBKlHE,6BACE,iCLiHJ,0BKlHE,6BACE,iCADF,mBACE,yBLiHJ,yBKlHE,sBACE,0BLiHJ,yBKlHE,sBACE,0BLiHJ,yBKlHE,sBACE,0BLiHJ,0BKlHE,sBACE,0BADF,kBACE,wBLiHJ,yBKlHE,qBACE,yBLiHJ,yBKlHE,qBACE,yBLiHJ,yBKlHE,qBACE,yBLiHJ,0BKlHE,qBACE,yBADF,yBACE,+BLiHJ,yBKlHE,4BACE,gCLiHJ,yBKlHE,4BACE,gCLiHJ,yBKlHE,4BACE,gCLiHJ,0BKlHE,4BACE,gCADF,kBACE,wBLiHJ,yBKlHE,qBACE,yBLiHJ,yBKlHE,qBACE,yBLiHJ,yBKlHE,qBACE,yBLiHJ,0BKlHE,qBACE,yBADF,yBACE,+BLiHJ,yBKlHE,4BACE,gCLiHJ,yBKlHE,4BACE,gCLiHJ,yBKlHE,4BACE,gCLiHJ,0BKlHE,4BACE,gCADF,mBACE,yBLiHJ,yBKlHE,sBACE,0BLiHJ,yBKlHE,sBACE,0BLiHJ,yBKlHE,sBACE,0BLiHJ,0BKlHE,sBACE,0BADF,wBACE,8BLiHJ,yBKlHE,2BACE,+BLiHJ,yBKlHE,2BACE,+BLiHJ,yBKlHE,2BACE,+BLiHJ,0BKlHE,2BACE,+BADF,uBACE,6BLiHJ,yBKlHE,0BACE,8BLiHJ,yBKlHE,0BACE,8BLiHJ,yBKlHE,0BACE,8BLiHJ,0BKlHE,0BACE,8BASR,iBACE,uBAGF,gBACE,sBAMF,uBACE,6BAGF,uBACE","file":"utils.bundle.css","sourcesContent":["@import \"../themes/native/native.globals\";\n@import \"../themes/mixins\";\n\n// Element Space\n// --------------------------------------------------\n// Creates padding and margin attributes to be used on\n// any element\n\n$padding: var(--ion-padding, 16px);\n$margin: var(--ion-margin, 16px);\n\n// Padding\n// --------------------------------------------------\n\n.ion-no-padding {\n --padding-start: 0;\n --padding-end: 0;\n --padding-top: 0;\n --padding-bottom: 0;\n\n @include padding(0);\n}\n\n.ion-padding {\n --padding-start: #{$padding};\n --padding-end: #{$padding};\n --padding-top: #{$padding};\n --padding-bottom: #{$padding};\n\n @include padding($padding);\n}\n\n.ion-padding-top {\n --padding-top: #{$padding};\n\n @include padding($padding, null, null, null);\n}\n\n.ion-padding-start {\n --padding-start: #{$padding};\n\n @include padding-horizontal($padding, null);\n}\n\n.ion-padding-end {\n --padding-end: #{$padding};\n\n @include padding-horizontal(null, $padding);\n}\n\n.ion-padding-bottom {\n --padding-bottom: #{$padding};\n\n @include padding(null, null, $padding, null);\n}\n\n.ion-padding-vertical {\n --padding-top: #{$padding};\n --padding-bottom: #{$padding};\n\n @include padding($padding, null, $padding, null);\n}\n\n.ion-padding-horizontal {\n --padding-start: #{$padding};\n --padding-end: #{$padding};\n\n @include padding-horizontal($padding);\n}\n\n// Margin\n// --------------------------------------------------\n\n.ion-no-margin {\n --margin-start: 0;\n --margin-end: 0;\n --margin-top: 0;\n --margin-bottom: 0;\n\n @include margin(0);\n}\n\n.ion-margin {\n --margin-start: #{$margin};\n --margin-end: #{$margin};\n --margin-top: #{$margin};\n --margin-bottom: #{$margin};\n\n @include margin($margin);\n}\n\n.ion-margin-top {\n --margin-top: #{$margin};\n\n @include margin($margin, null, null, null);\n}\n\n.ion-margin-start {\n --margin-start: #{$margin};\n\n @include margin-horizontal($margin, null);\n}\n\n.ion-margin-end {\n --margin-end: #{$margin};\n\n @include margin-horizontal(null, $margin);\n}\n\n.ion-margin-bottom {\n --margin-bottom: #{$margin};\n\n @include margin(null, null, $margin, null);\n}\n\n.ion-margin-vertical {\n --margin-top: #{$margin};\n --margin-bottom: #{$margin};\n\n @include margin($margin, null, $margin, null);\n}\n\n.ion-margin-horizontal {\n --margin-start: #{$margin};\n --margin-end: #{$margin};\n\n @include margin-horizontal($margin);\n}\n","@use \"./functions.string\" as string;\n\n/**\n * A heuristic that applies CSS to tablet\n * viewports.\n *\n * Usage:\n * @include tablet-viewport() {\n * :host {\n * background-color: green;\n * }\n * }\n */\n@mixin tablet-viewport() {\n @media screen and (min-width: 768px) {\n @content;\n }\n}\n\n/**\n * A heuristic that applies CSS to mobile\n * viewports (i.e. phones, not tablets).\n *\n * Usage:\n * @include mobile-viewport() {\n * :host {\n * background-color: blue;\n * }\n * }\n */\n@mixin mobile-viewport() {\n @media screen and (max-width: 767px) {\n @content;\n }\n}\n\n@mixin input-cover() {\n @include position(0, null, null, 0);\n @include margin(0);\n\n position: absolute;\n\n width: 100%;\n height: 100%;\n\n border: 0;\n\n outline: none;\n\n background: transparent;\n\n cursor: pointer;\n\n appearance: none;\n\n &::-moz-focus-inner {\n border: 0;\n }\n}\n\n@mixin visually-hidden() {\n position: absolute;\n\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n width: 100%;\n height: 100%;\n\n margin: 0;\n\n padding: 0;\n\n border: 0;\n\n outline: 0;\n\n opacity: 0;\n overflow: hidden;\n clip: rect(0 0 0 0);\n\n -webkit-appearance: none;\n -moz-appearance: none;\n}\n\n@mixin text-inherit() {\n color: inherit;\n\n font-family: inherit;\n font-size: inherit;\n font-style: inherit;\n font-weight: inherit;\n\n letter-spacing: inherit;\n\n text-align: inherit;\n text-decoration: inherit;\n text-indent: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n\n white-space: inherit;\n}\n\n@mixin button-state() {\n @include position(0, 0, 0, 0);\n\n position: absolute;\n\n content: \"\";\n\n opacity: 0;\n}\n\n// Font smoothing\n// --------------------------------------------------\n\n@mixin font-smoothing() {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n}\n\n// Get the key from a map based on the index\n@function index-to-key($map, $index) {\n $keys: map-keys($map);\n\n @return nth($keys, $index);\n}\n\n// Breakpoint Mixins\n// ---------------------------------------------------------------------------------\n\n// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$screen-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// ---------------------------------------------------------------------------------\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $screen-breakpoints) {\n $min: map-get($breakpoints, $name);\n\n @return if($name != index-to-key($breakpoints, 1), $min, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash infront.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $screen-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $screen-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $screen-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Maximum breakpoint width. Null for the smallest (first) breakpoint.\n// The maximum value is reduced by 0.02px to work around the limitations of\n// `min-` and `max-` prefixes and viewports with fractional widths.\n//\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\t// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\t// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(md, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $screen-breakpoints) {\n $max: map-get($breakpoints, $name);\n\n @return if($max and $max > 0, $max - 0.02, null);\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $screen-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Text Direction - ltr / rtl\n//\n// CSS defaults to use the ltr css, and adds [dir=rtl] selectors\n// to override ltr defaults.\n// ----------------------------------------------------------\n\n@mixin multi-dir() {\n @content;\n\n // $root: #{&};\n // @at-root [dir] {\n // #{$root} {\n // @content;\n // }\n // }\n}\n\n@mixin rtl() {\n $root: #{&};\n\n $rootSplit: string.str-split($root, \",\");\n $selectors: #{string.add-root-selector($root, \"[dir=rtl]\")};\n $selectorsSplit: string.str-split($selectors, \",\");\n\n $hostContextSelectors: ();\n $restSelectors: ();\n $dirSelectors: ();\n\n // Selectors must be split into individual selectors in case the browser\n // doesn't support a specific selector.\n // For example, Firefox and Safari doesn't support `:host-context()`.\n // If an invalid selector is used, then the entire group of selectors\n // will be ignored.\n // @link https://www.w3.org/TR/selectors-3/#grouping\n @each $selector in $selectorsSplit {\n // Group the selectors back into a single selector to optimize the output.\n @if str-index($selector, \":host-context\") {\n $hostContextSelectors: append($hostContextSelectors, $selector, comma);\n } @else {\n // Group the selectors back into a single selector to optimize the output.\n $restSelectors: append($restSelectors, $selector, comma);\n }\n }\n\n // Supported by Chrome.\n @if length($hostContextSelectors) > 0 {\n @at-root #{$hostContextSelectors} {\n @content;\n }\n }\n\n // Supported by all browsers.\n @if length($restSelectors) > 0 {\n @at-root #{$restSelectors} {\n @content;\n }\n }\n\n // If browser can support `:dir()`, then add the `:dir()` selectors.\n @supports selector(:dir(rtl)) {\n // Adding :dir() in case the browser doesn't support `:host-context()` and does support `:dir()`.\n // `:host-context()` is added:\n // - through the `add-root-selector()` function.\n // - first so that it takes precedence over `:dir()`.\n // For example,\n // - Firefox doesn't support `:host-context()`, but does support `:dir()`.\n // - Safari doesn't support `:host-context()`, but Safari 16.4+ supports `:dir()`\n // @link https://webkit.org/blog/13966/webkit-features-in-safari-16-4/\n // -- However, there is a Webkit bug on v16 that prevents `:dir()` from working when\n // -- the app direction is changed dynamically. v17+ works fine.\n // -- @link https://bugs.webkit.org/show_bug.cgi?id=257133\n\n // Supported by Firefox.\n @at-root #{string.add-root-selector($root, \":dir(rtl)\", false)} {\n @content;\n }\n }\n}\n\n@mixin ltr() {\n @content;\n}\n\n// SVG Background Image Mixin\n// @param {string} $svg\n// ----------------------------------------------------------\n@mixin svg-background-image($svg, $flip-rtl: false) {\n $url: url-encode($svg);\n $viewBox: string.str-split(string.str-extract($svg, \"viewBox='\", \"'\"), \" \");\n\n @if $flip-rtl != true or $viewBox == null {\n @include multi-dir() {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$url}\");\n }\n } @else {\n $transform: \"transform='translate(#{nth($viewBox, 3)}, 0) scale(-1, 1)'\";\n $flipped-url: $svg;\n $flipped-url: string.str-replace($flipped-url, \"<path\", \"<path #{$transform}\");\n $flipped-url: string.str-replace($flipped-url, \"<line\", \"<line #{$transform}\");\n $flipped-url: string.str-replace($flipped-url, \"<polygon\", \"<polygon #{$transform}\");\n $flipped-url: url-encode($flipped-url);\n\n @include ltr() {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$url}\");\n }\n\n @include rtl() {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$flipped-url}\");\n }\n }\n}\n\n// Add property horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin property-horizontal($prop, $start, $end: $start) {\n @if $start == 0 and $end == 0 {\n #{$prop}-left: $start;\n #{$prop}-right: $end;\n } @else {\n -webkit-#{$prop}-start: $start;\n #{$prop}-inline-start: $start;\n -webkit-#{$prop}-end: $end;\n #{$prop}-inline-end: $end;\n }\n}\n\n// Add property for all directions\n// @param {string} $prop\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// @param {boolean} $content include content or use default\n// ----------------------------------------------------------\n@mixin property($prop, $top, $end: $top, $bottom: $top, $start: $end) {\n @include property-horizontal($prop, $start, $end);\n #{$prop}-top: $top;\n #{$prop}-bottom: $bottom;\n}\n\n// Add padding horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin padding-horizontal($start, $end: $start) {\n @include property-horizontal(padding, $start, $end);\n}\n\n// Add padding for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin padding($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(padding, $top, $end, $bottom, $start);\n}\n\n// Add margin horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin margin-horizontal($start, $end: $start) {\n @include property-horizontal(margin, $start, $end);\n}\n\n// Add margin for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin margin($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(margin, $top, $end, $bottom, $start);\n}\n\n// Add position horizontal\n// @param {string} $start - amount to position start\n// @param {string} $end - amount to left: 0; end\n// ----------------------------------------------------------\n@mixin position-horizontal($start: null, $end: null) {\n @if $start == $end {\n @include multi-dir() {\n right: $end;\n left: $start;\n }\n } @else {\n @at-root {\n & {\n inset-inline-start: $start;\n inset-inline-end: $end;\n }\n }\n }\n}\n\n// Add position for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin position($top: null, $end: null, $bottom: null, $start: null) {\n @include position-horizontal($start, $end);\n top: $top;\n bottom: $bottom;\n}\n\n// Add border for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin border($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(border, $top, $end, $bottom, $start);\n}\n\n// Add border radius for all directions\n// @param {string} $top-start\n// @param {string} $top-end\n// @param {string} $bottom-end\n// @param {string} $bottom-start\n// ----------------------------------------------------------\n@mixin border-radius($top-start, $top-end: $top-start, $bottom-end: $top-start, $bottom-start: $top-end) {\n @if $top-start == $top-end and $top-start == $bottom-end and $top-start == $bottom-start {\n border-radius: $top-start;\n } @else {\n border-start-start-radius: $top-start;\n border-start-end-radius: $top-end;\n border-end-end-radius: $bottom-end;\n border-end-start-radius: $bottom-start;\n }\n}\n\n// Add direction for all directions\n// @param {string} $dir - Direction on LTR\n@mixin direction($dir) {\n $other-dir: null;\n\n @if $dir == ltr {\n $other-dir: rtl;\n } @else {\n $other-dir: ltr;\n }\n\n @include ltr() {\n direction: $dir;\n }\n\n @include rtl() {\n direction: $other-dir;\n }\n}\n\n// Add float for all directions\n// @param {string} $side\n// @param {string} $decorator - !important\n@mixin float($side, $decorator: null) {\n @if $side == start {\n @include ltr() {\n float: left $decorator;\n }\n\n @include rtl() {\n float: right $decorator;\n }\n } @else if $side == end {\n @include ltr() {\n float: right $decorator;\n }\n\n @include rtl() {\n float: left $decorator;\n }\n } @else {\n @include multi-dir() {\n float: $side $decorator;\n }\n }\n}\n\n@mixin background-position($horizontal, $horizontal-amount: null, $vertical: null, $vertical-amount: null) {\n @if $horizontal == start or $horizontal == end {\n $horizontal-ltr: null;\n $horizontal-rtl: null;\n\n @if $horizontal == start {\n $horizontal-ltr: left;\n $horizontal-rtl: right;\n } @else {\n $horizontal-ltr: right;\n $horizontal-rtl: left;\n }\n\n @include ltr() {\n background-position: $horizontal-ltr $horizontal-amount $vertical $vertical-amount;\n }\n\n @include rtl() {\n background-position: $horizontal-rtl $horizontal-amount $vertical $vertical-amount;\n }\n } @else {\n @include multi-dir() {\n background-position: $horizontal $horizontal-amount $vertical $vertical-amount;\n }\n }\n}\n\n@mixin transform-origin($x-axis, $y-axis: null) {\n @if $x-axis == start {\n @include ltr() {\n transform-origin: left $y-axis;\n }\n\n @include rtl() {\n transform-origin: right $y-axis;\n }\n } @else if $x-axis == end {\n @include ltr() {\n transform-origin: right $y-axis;\n }\n\n @include rtl() {\n transform-origin: left $y-axis;\n }\n } @else if $x-axis == left or $x-axis == right {\n @include multi-dir() {\n transform-origin: $x-axis $y-axis;\n }\n } @else {\n @include ltr() {\n transform-origin: $x-axis $y-axis;\n }\n\n @include rtl() {\n transform-origin: calc(100% - #{$x-axis}) $y-axis;\n }\n }\n}\n\n// Add transform for all directions\n// @param {string} $transforms - comma separated list of transforms\n@mixin transform($transforms...) {\n $extra: null;\n\n $x: null;\n $ltr-translate: null;\n $rtl-translate: null;\n\n @each $transform in $transforms {\n @if (str-index($transform, translate3d)) {\n $transform: string.str-replace($transform, \"translate3d(\");\n $transform: string.str-replace($transform, \")\");\n\n $coordinates: string.str-split($transform, \",\");\n\n $x: nth($coordinates, 1);\n $y: nth($coordinates, 2);\n $z: nth($coordinates, 3);\n\n $ltr-translate: translate3d($x, $y, $z);\n $rtl-translate: translate3d(calc(-1 * #{$x}), $y, $z);\n } @else {\n @if $extra == null {\n $extra: $transform;\n } @else {\n $extra: $extra $transform;\n }\n }\n }\n\n @if $x == \"0\" or $x == null {\n @include multi-dir() {\n transform: $ltr-translate $extra;\n }\n } @else {\n @include ltr() {\n transform: $ltr-translate $extra;\n }\n\n @include rtl() {\n transform: $rtl-translate $extra;\n }\n }\n}\n","@import \"../themes/native/native.globals\";\n@import \"../themes/mixins\";\n\n// Float Elements\n// --------------------------------------------------\n// Creates float classes based on screen size\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `.ion-float-{bp}-{side}` classes for floating the element based\n // on the breakpoint and side\n .ion-float#{$infix}-left {\n @include float(left, !important);\n }\n\n .ion-float#{$infix}-right {\n @include float(right, !important);\n }\n\n .ion-float#{$infix}-start {\n @include float(start, !important);\n }\n\n .ion-float#{$infix}-end {\n @include float(end, !important);\n }\n }\n}\n","@import \"../themes/native/native.globals\";\n@import \"../themes/mixins\";\n\n// Text Alignment\n// --------------------------------------------------\n// Creates text alignment attributes based on screen size\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `.ion-text-{bp}` classes for aligning the text based\n // on the breakpoint\n .ion-text#{$infix}-center {\n text-align: center !important;\n }\n\n .ion-text#{$infix}-justify {\n text-align: justify !important;\n }\n\n .ion-text#{$infix}-start {\n text-align: start !important;\n }\n\n .ion-text#{$infix}-end {\n text-align: end !important;\n }\n\n .ion-text#{$infix}-left {\n text-align: left !important;\n }\n\n .ion-text#{$infix}-right {\n text-align: right !important;\n }\n\n .ion-text#{$infix}-nowrap {\n white-space: nowrap !important;\n }\n\n .ion-text#{$infix}-wrap {\n white-space: normal !important;\n }\n }\n}\n","@import \"../themes/native/native.globals\";\n@import \"../themes/mixins\";\n\n// Text Transformation\n// --------------------------------------------------\n// Creates text transform attributes based on screen size\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `.ion-text-{bp}` classes for transforming the text based\n // on the breakpoint\n .ion-text#{$infix}-uppercase {\n /* stylelint-disable-next-line declaration-no-important */\n text-transform: uppercase !important;\n }\n\n .ion-text#{$infix}-lowercase {\n /* stylelint-disable-next-line declaration-no-important */\n text-transform: lowercase !important;\n }\n\n .ion-text#{$infix}-capitalize {\n /* stylelint-disable-next-line declaration-no-important */\n text-transform: capitalize !important;\n }\n }\n}\n","@import \"../themes/native/native.globals\";\n@import \"../themes/mixins\";\n\n// Flex Utilities\n// ------------------------------------------------------------------\n// Provides utility classes to control flexbox layout, alignment,\n// and sizing of elements. Includes responsive variants for managing\n// flex direction, alignment, justification, wrapping, growth,\n// shrinking, and ordering at different breakpoints.\n\n// Align Content\n// ------------------------------------------------------------------\n\n$align-content-values: (\n start: flex-start,\n end: flex-end,\n center: center,\n between: space-between,\n around: space-around,\n stretch: stretch,\n);\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n @each $key, $value in $align-content-values {\n .ion-align-content#{$infix}-#{$key} {\n align-content: #{$value} !important;\n }\n }\n }\n}\n\n// Align Items\n// ------------------------------------------------------------------\n\n$align-items-values: (start, end, center, stretch, baseline);\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n @each $value in $align-items-values {\n .ion-align-items#{$infix}-#{$value} {\n align-items: #{$value} !important;\n }\n }\n }\n}\n\n// Align Self\n// ------------------------------------------------------------------\n\n$align-self-values: (start, end, center, stretch, baseline, auto);\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n @each $value in $align-self-values {\n .ion-align-self#{$infix}-#{$value} {\n align-self: #{$value} !important;\n }\n }\n }\n}\n\n// Justify Content\n// ------------------------------------------------------------------\n\n$justify-content-values: (\n start: flex-start,\n end: flex-end,\n center: center,\n between: space-between,\n around: space-around,\n evenly: space-evenly,\n);\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n @each $key, $value in $justify-content-values {\n .ion-justify-content#{$infix}-#{$key} {\n justify-content: #{$value} !important;\n }\n }\n }\n}\n\n// Flex Direction\n// ------------------------------------------------------------------\n\n$flex-direction-values: (row, row-reverse, column, column-reverse);\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n @each $value in $flex-direction-values {\n .ion-flex#{$infix}-#{$value} {\n flex-direction: #{$value} !important;\n }\n }\n }\n}\n\n// Flex Wrap\n// ------------------------------------------------------------------\n\n$flex-wrap-values: (wrap, nowrap, wrap-reverse);\n\n@each $value in $flex-wrap-values {\n // TODO(FW-6697): remove ion-wrap, ion-nowrap, ion-wrap-reverse\n // in favor of the new ion-flex-wrap, ion-flex-nowrap, and\n // ion-flex-wrap-reverse classes\n .ion-#{$value} {\n flex-wrap: #{$value} !important;\n }\n}\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n @each $value in $flex-wrap-values {\n .ion-flex#{$infix}-#{$value} {\n flex-wrap: #{$value} !important;\n }\n }\n }\n}\n\n// Flex Fill\n// ------------------------------------------------------------------\n\n$flex-fill-values: (1, auto, initial, none);\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n @each $value in $flex-fill-values {\n .ion-flex#{$infix}-#{$value} {\n flex: #{$value} !important;\n }\n }\n }\n}\n\n// Flex Grow and Shrink\n// ------------------------------------------------------------------\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n .ion-flex#{$infix}-grow-0 {\n flex-grow: 0 !important;\n }\n\n .ion-flex#{$infix}-grow-1 {\n flex-grow: 1 !important;\n }\n\n .ion-flex#{$infix}-shrink-0 {\n flex-shrink: 0 !important;\n }\n\n .ion-flex#{$infix}-shrink-1 {\n flex-shrink: 1 !important;\n }\n }\n}\n\n// Flex Order\n// ------------------------------------------------------------------\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n .ion-order#{$infix}-first {\n order: -1 !important;\n }\n\n @for $i from 0 through 12 {\n .ion-order#{$infix}-#{$i} {\n order: #{$i} !important;\n }\n }\n\n .ion-order#{$infix}-last {\n order: 13 !important;\n }\n }\n}\n\n// Flex Direction\n// --------------------------------------------------\n.ion-flex-direction-column {\n flex-direction: column !important;\n}\n\n.ion-flex-direction-column-reverse {\n flex-direction: column-reverse !important;\n}\n\n.ion-flex-direction-row {\n flex-direction: row !important;\n}\n\n.ion-flex-direction-row-reverse {\n flex-direction: row-reverse !important;\n}\n\n// Flex Container\n// --------------------------------------------------\n.ion-flex-1 {\n flex: 1 !important;\n}\n","@import \"../themes/native/native.globals\";\n@import \"../themes/mixins\";\n\n// Display\n// ------------------------------------------------------------------\n// Provides utility classes to control the CSS display property\n// of elements. Includes responsive variants for toggling between\n// block, inline, flex, grid, and other display values at different\n// breakpoints.\n\n// TODO(FW-6697): remove ion-hide-* classes in favor of the new\n// ion-display-* classes\n.ion-hide {\n display: none !important;\n}\n\n// Adds hidden classes\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `ion-hide-{bp}-up` classes for hiding the element based\n // on the breakpoint\n .ion-hide#{$infix}-up {\n display: none !important;\n }\n }\n\n @include media-breakpoint-down($breakpoint, $screen-breakpoints) {\n // Provide `ion-hide-{bp}-down` classes for hiding the element based\n // on the breakpoint\n .ion-hide#{$infix}-down {\n display: none !important;\n }\n }\n}\n\n$display-values: (\n none,\n contents,\n inline,\n inline-block,\n block,\n flex,\n inline-flex,\n grid,\n inline-grid,\n table,\n table-cell,\n table-row\n);\n\n@each $display in $display-values {\n @each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n .ion-display#{$infix}-#{$display} {\n display: #{$display} !important;\n }\n }\n }\n}\n\n// Size\n// --------------------------------------------------\n\n.ion-full-height {\n height: 100% !important;\n}\n\n.ion-full-width {\n width: 100% !important;\n}\n\n// Position\n// --------------------------------------------------\n\n.ion-position-absolute {\n position: absolute !important;\n}\n\n.ion-position-relative {\n position: relative !important;\n}\n"]}
1
+ {"version":3,"sourceRoot":"","sources":["../src/css/padding.scss","../src/themes/ionic.mixins.scss","../src/css/float-elements.scss","../src/css/text-alignment.scss","../src/css/text-transformation.scss","../src/css/flex-utils.scss","../src/css/display.scss"],"names":[],"mappings":"AAeA,gBACE,mBACA,iBACA,iBACA,oBCsTE,aDpTe,ECqTf,cDrTe,ECyUjB,YDzUiB,EC0UjB,eD1UiB,EAGnB,aACE,0CACA,wCACA,wCACA,2CCiTE,sBDpUM,yBCqUN,qBDrUM,yBCsUN,oBDtUM,yBCuUN,mBDvUM,yBCqVR,YDrVQ,yBCsVR,eDtVQ,yBAwBV,iBACE,wCC4TA,YDrVQ,yBA8BV,mBACE,0CCqSE,sBDpUM,yBCqUN,qBDrUM,yBAoCV,iBACE,wCCiSE,oBDtUM,yBCuUN,mBDvUM,yBA0CV,oBACE,2CC2SA,eDtVQ,yBAgDV,sBACE,wCACA,2CCmSA,YDrVQ,yBCsVR,eDtVQ,yBAuDV,wBACE,0CACA,wCC2QE,sBDpUM,yBCqUN,qBDrUM,yBCsUN,oBDtUM,yBCuUN,mBDvUM,yBAkEV,eACE,kBACA,gBACA,gBACA,mBC0PE,YDxPc,ECyPd,aDzPc,EC6QhB,WD7QgB,EC8QhB,cD9QgB,EAGlB,YACE,wCACA,sCACA,sCACA,yCCqPE,qBDnUK,wBCoUL,oBDpUK,wBCqUL,mBDrUK,wBCsUL,kBDtUK,wBCoVP,WDpVO,wBCqVP,cDrVO,wBAmFT,gBACE,sCCgQA,WDpVO,wBAyFT,kBACE,wCCyOE,qBDnUK,wBCoUL,oBDpUK,wBA+FT,gBACE,sCCqOE,mBDrUK,wBCsUL,kBDtUK,wBAqGT,mBACE,yCC+OA,cDrVO,wBA2GT,qBACE,sCACA,yCCuOA,WDpVO,wBCqVP,cDrVO,wBAkHT,uBACE,wCACA,sCC+ME,qBDnUK,wBCoUL,oBDpUK,wBCqUL,mBDrUK,wBCsUL,kBDtUK,wBEGL,gBD2dE,sBCvdF,iBDudE,uBCndF,iBDqcE,sBAzNO,0CA4NP,uBArNO,2BAqNP,uBA/MJ,8BAcW,0BAiMP,wBCpcF,eDwcE,uBAhOO,wCAmOP,sBA5NO,yBA4NP,sBAtNJ,8BAcW,wBAwMP,uBAnUF,yBCpJA,mBD2dE,sBCvdF,oBDudE,uBCndF,oBDqcE,sBAzNO,6CA4NP,uBArNO,8BAqNP,uBA/MJ,8BAcW,6BAiMP,wBCpcF,kBDwcE,uBAhOO,2CAmOP,sBA5NO,4BA4NP,sBAtNJ,8BAcW,2BAwMP,wBAnUF,yBCpJA,mBD2dE,sBCvdF,oBDudE,uBCndF,oBDqcE,sBAzNO,6CA4NP,uBArNO,8BAqNP,uBA/MJ,8BAcW,6BAiMP,wBCpcF,kBDwcE,uBAhOO,2CAmOP,sBA5NO,4BA4NP,sBAtNJ,8BAcW,2BAwMP,wBAnUF,yBCpJA,mBD2dE,sBCvdF,oBDudE,uBCndF,oBDqcE,sBAzNO,6CA4NP,uBArNO,8BAqNP,uBA/MJ,8BAcW,6BAiMP,wBCpcF,kBDwcE,uBAhOO,2CAmOP,sBA5NO,4BA4NP,sBAtNJ,8BAcW,2BAwMP,wBAnUF,0BCpJA,mBD2dE,sBCvdF,oBDudE,uBCndF,oBDqcE,sBAzNO,6CA4NP,uBArNO,8BAqNP,uBA/MJ,8BAcW,6BAiMP,wBCpcF,kBDwcE,uBAhOO,2CAmOP,sBA5NO,4BA4NP,sBAtNJ,8BAcW,2BAwMP,wBEvdF,iBACE,6BAGF,kBACE,8BAGF,gBACE,4BAGF,cACE,0BAGF,eACE,2BAGF,gBACE,4BAGF,iBACE,8BAGF,eACE,8BFuHF,yBEpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BFuHF,yBEpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BFuHF,yBEpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BFuHF,0BEpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BC7BF,oBAEE,oCAGF,oBAEE,oCAGF,qBAEE,qCHwIF,yBGpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCHwIF,yBGpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCHwIF,yBGpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCHwIF,0BGpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCCCA,yBACE,oCADF,uBACE,kCADF,0BACE,gCADF,2BACE,uCADF,0BACE,sCADF,2BACE,iCJsIJ,yBIvIE,4BACE,oCADF,0BACE,kCADF,6BACE,gCADF,8BACE,uCADF,6BACE,sCADF,8BACE,kCJsIJ,yBIvIE,4BACE,oCADF,0BACE,kCADF,6BACE,gCADF,8BACE,uCADF,6BACE,sCADF,8BACE,kCJsIJ,yBIvIE,4BACE,oCADF,0BACE,kCADF,6BACE,gCADF,8BACE,uCADF,6BACE,sCADF,8BACE,kCJsIJ,0BIvIE,4BACE,oCADF,0BACE,kCADF,6BACE,gCADF,8BACE,uCADF,6BACE,sCADF,8BACE,kCAqBF,uBACE,6BADF,qBACE,2BADF,wBACE,8BADF,yBACE,+BADF,0BACE,gCJgHJ,yBIjHE,0BACE,6BADF,wBACE,2BADF,2BACE,8BADF,4BACE,+BADF,6BACE,iCJgHJ,yBIjHE,0BACE,6BADF,wBACE,2BADF,2BACE,8BADF,4BACE,+BADF,6BACE,iCJgHJ,yBIjHE,0BACE,6BADF,wBACE,2BADF,2BACE,8BADF,4BACE,+BADF,6BACE,iCJgHJ,0BIjHE,0BACE,6BADF,wBACE,2BADF,2BACE,8BADF,4BACE,+BADF,6BACE,iCAsBF,sBACE,4BADF,oBACE,0BADF,uBACE,6BADF,wBACE,8BADF,yBACE,+BADF,qBACE,2BJyFJ,yBI1FE,yBACE,4BADF,uBACE,0BADF,0BACE,6BADF,2BACE,8BADF,4BACE,+BADF,wBACE,4BJyFJ,yBI1FE,yBACE,4BADF,uBACE,0BADF,0BACE,6BADF,2BACE,8BADF,4BACE,+BADF,wBACE,4BJyFJ,yBI1FE,yBACE,4BADF,uBACE,0BADF,0BACE,6BADF,2BACE,8BADF,4BACE,+BADF,wBACE,4BJyFJ,0BI1FE,yBACE,4BADF,uBACE,0BADF,0BACE,6BADF,2BACE,8BADF,4BACE,+BADF,wBACE,4BAsBF,2BACE,sCADF,yBACE,oCADF,4BACE,kCADF,6BACE,yCADF,4BACE,wCADF,4BACE,wCJkEJ,yBInEE,8BACE,sCADF,4BACE,oCADF,+BACE,kCADF,gCACE,yCADF,+BACE,wCADF,+BACE,yCJkEJ,yBInEE,8BACE,sCADF,4BACE,oCADF,+BACE,kCADF,gCACE,yCADF,+BACE,wCADF,+BACE,yCJkEJ,yBInEE,8BACE,sCADF,4BACE,oCADF,+BACE,kCADF,gCACE,yCADF,+BACE,wCADF,+BACE,yCJkEJ,0BInEE,8BACE,sCADF,4BACE,oCADF,+BACE,kCADF,gCACE,yCADF,+BACE,wCADF,+BACE,yCAoBF,cACE,8BADF,sBACE,sCADF,iBACE,iCADF,yBACE,yCJ6CJ,yBI9CE,iBACE,8BADF,yBACE,sCADF,oBACE,iCADF,4BACE,0CJ6CJ,yBI9CE,iBACE,8BADF,yBACE,sCADF,oBACE,iCADF,4BACE,0CJ6CJ,yBI9CE,iBACE,8BADF,yBACE,sCADF,oBACE,iCADF,4BACE,0CJ6CJ,0BI9CE,iBACE,8BADF,yBACE,sCADF,oBACE,iCADF,4BACE,0CAmBN,UACE,0BADF,YACE,4BADF,kBACE,kCAQE,eACE,0BADF,iBACE,4BADF,uBACE,kCJgBJ,yBIjBE,kBACE,0BADF,oBACE,4BADF,0BACE,mCJgBJ,yBIjBE,kBACE,0BADF,oBACE,4BADF,0BACE,mCJgBJ,yBIjBE,kBACE,0BADF,oBACE,4BADF,0BACE,mCJgBJ,0BIjBE,kBACE,0BADF,oBACE,4BADF,0BACE,mCAoBF,YACE,kBADF,eACE,qBADF,kBACE,wBADF,eACE,qBJLJ,yBIIE,eACE,kBADF,kBACE,qBADF,qBACE,wBADF,kBACE,sBJLJ,yBIIE,eACE,kBADF,kBACE,qBADF,qBACE,wBADF,kBACE,sBJLJ,yBIIE,eACE,kBADF,kBACE,qBADF,qBACE,wBADF,kBACE,sBJLJ,0BIIE,eACE,kBADF,kBACE,qBADF,qBACE,wBADF,kBACE,sBAYJ,iBACE,uBAGF,iBACE,uBAGF,mBACE,yBAGF,mBACE,yBJ9BF,yBIiBA,oBACE,uBAGF,oBACE,uBAGF,sBACE,yBAGF,sBACE,0BJ9BF,yBIiBA,oBACE,uBAGF,oBACE,uBAGF,sBACE,yBAGF,sBACE,0BJ9BF,yBIiBA,oBACE,uBAGF,oBACE,uBAGF,sBACE,yBAGF,sBACE,0BJ9BF,0BIiBA,oBACE,uBAGF,oBACE,uBAGF,sBACE,yBAGF,sBACE,0BAWF,qCAGE,saAGF,oCJ/CA,yBIyCA,wCAGE,6cAGF,wCJ/CA,yBIyCA,wCAGE,6cAGF,wCJ/CA,yBIyCA,wCAGE,6cAGF,wCJ/CA,0BIyCA,wCAGE,6cAGF,wCCpMJ,UACE,wBAUE,aACE,wBAOF,eACE,wBLiIF,yBK1IA,gBACE,yBLkLF,4BK3KA,kBACE,yBLiIF,yBK1IA,gBACE,yBLkLF,4BK3KA,kBACE,yBLiIF,yBK1IA,gBACE,yBLkLF,4BK3KA,kBACE,yBLiIF,0BK1IA,gBACE,yBLkLF,6BK3KA,kBACE,yBAwBA,kBACE,wBLwGJ,yBKzGE,qBACE,yBLwGJ,yBKzGE,qBACE,yBLwGJ,yBKzGE,qBACE,yBLwGJ,0BKzGE,qBACE,yBADF,oBACE,0BLwGJ,yBKzGE,uBACE,2BLwGJ,yBKzGE,uBACE,2BLwGJ,yBKzGE,uBACE,2BLwGJ,0BKzGE,uBACE,2BADF,0BACE,gCLwGJ,yBKzGE,6BACE,iCLwGJ,yBKzGE,6BACE,iCLwGJ,yBKzGE,6BACE,iCLwGJ,0BKzGE,6BACE,iCADF,mBACE,yBLwGJ,yBKzGE,sBACE,0BLwGJ,yBKzGE,sBACE,0BLwGJ,yBKzGE,sBACE,0BLwGJ,0BKzGE,sBACE,0BADF,kBACE,wBLwGJ,yBKzGE,qBACE,yBLwGJ,yBKzGE,qBACE,yBLwGJ,yBKzGE,qBACE,yBLwGJ,0BKzGE,qBACE,yBADF,yBACE,+BLwGJ,yBKzGE,4BACE,gCLwGJ,yBKzGE,4BACE,gCLwGJ,yBKzGE,4BACE,gCLwGJ,0BKzGE,4BACE,gCADF,kBACE,wBLwGJ,yBKzGE,qBACE,yBLwGJ,yBKzGE,qBACE,yBLwGJ,yBKzGE,qBACE,yBLwGJ,0BKzGE,qBACE,yBADF,yBACE,+BLwGJ,yBKzGE,4BACE,gCLwGJ,yBKzGE,4BACE,gCLwGJ,yBKzGE,4BACE,gCLwGJ,0BKzGE,4BACE,gCADF,mBACE,yBLwGJ,yBKzGE,sBACE,0BLwGJ,yBKzGE,sBACE,0BLwGJ,yBKzGE,sBACE,0BLwGJ,0BKzGE,sBACE,0BADF,wBACE,8BLwGJ,yBKzGE,2BACE,+BLwGJ,yBKzGE,2BACE,+BLwGJ,yBKzGE,2BACE,+BLwGJ,0BKzGE,2BACE,+BADF,uBACE,6BLwGJ,yBKzGE,0BACE,8BLwGJ,yBKzGE,0BACE,8BLwGJ,yBKzGE,0BACE,8BLwGJ,0BKzGE,0BACE","file":"utils.bundle.css","sourcesContent":["@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n\n// Element Space\n// --------------------------------------------------\n// Creates padding and margin attributes to be used on\n// any element\n\n$padding: var(--ion-padding, 16px);\n$margin: var(--ion-margin, 16px);\n\n// Padding\n// --------------------------------------------------\n\n.ion-no-padding {\n --padding-start: 0;\n --padding-end: 0;\n --padding-top: 0;\n --padding-bottom: 0;\n\n @include padding(0);\n}\n\n.ion-padding {\n --padding-start: #{$padding};\n --padding-end: #{$padding};\n --padding-top: #{$padding};\n --padding-bottom: #{$padding};\n\n @include padding($padding);\n}\n\n.ion-padding-top {\n --padding-top: #{$padding};\n\n @include padding($padding, null, null, null);\n}\n\n.ion-padding-start {\n --padding-start: #{$padding};\n\n @include padding-horizontal($padding, null);\n}\n\n.ion-padding-end {\n --padding-end: #{$padding};\n\n @include padding-horizontal(null, $padding);\n}\n\n.ion-padding-bottom {\n --padding-bottom: #{$padding};\n\n @include padding(null, null, $padding, null);\n}\n\n.ion-padding-vertical {\n --padding-top: #{$padding};\n --padding-bottom: #{$padding};\n\n @include padding($padding, null, $padding, null);\n}\n\n.ion-padding-horizontal {\n --padding-start: #{$padding};\n --padding-end: #{$padding};\n\n @include padding-horizontal($padding);\n}\n\n\n// Margin\n// --------------------------------------------------\n\n.ion-no-margin {\n --margin-start: 0;\n --margin-end: 0;\n --margin-top: 0;\n --margin-bottom: 0;\n\n @include margin(0);\n}\n\n.ion-margin {\n --margin-start: #{$margin};\n --margin-end: #{$margin};\n --margin-top: #{$margin};\n --margin-bottom: #{$margin};\n\n @include margin($margin);\n}\n\n.ion-margin-top {\n --margin-top: #{$margin};\n\n @include margin($margin, null, null, null);\n}\n\n.ion-margin-start {\n --margin-start: #{$margin};\n\n @include margin-horizontal($margin, null);\n}\n\n.ion-margin-end {\n --margin-end: #{$margin};\n\n @include margin-horizontal(null, $margin);\n}\n\n.ion-margin-bottom {\n --margin-bottom: #{$margin};\n\n @include margin(null, null, $margin, null);\n}\n\n.ion-margin-vertical {\n --margin-top: #{$margin};\n --margin-bottom: #{$margin};\n\n @include margin($margin, null, $margin, null);\n}\n\n.ion-margin-horizontal {\n --margin-start: #{$margin};\n --margin-end: #{$margin};\n\n @include margin-horizontal($margin);\n}\n","\n/**\n * A heuristic that applies CSS to tablet\n * viewports.\n *\n * Usage:\n * @include tablet-viewport() {\n * :host {\n * background-color: green;\n * }\n * }\n */\n@mixin tablet-viewport() {\n @media screen and (min-width: 768px) {\n @content;\n }\n}\n\n/**\n * A heuristic that applies CSS to mobile\n * viewports (i.e. phones, not tablets).\n *\n * Usage:\n * @include mobile-viewport() {\n * :host {\n * background-color: blue;\n * }\n * }\n */\n@mixin mobile-viewport() {\n @media screen and (max-width: 767px) {\n @content;\n }\n}\n\n@mixin input-cover() {\n @include position(0, null, null, 0);\n @include margin(0);\n\n position: absolute;\n\n width: 100%;\n height: 100%;\n\n border: 0;\n background: transparent;\n cursor: pointer;\n\n appearance: none;\n outline: none;\n\n &::-moz-focus-inner {\n border: 0;\n }\n}\n\n@mixin visually-hidden() {\n position: absolute;\n\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n\n width: 100%;\n height: 100%;\n\n margin: 0;\n padding: 0;\n\n border: 0;\n outline: 0;\n clip: rect(0 0 0 0);\n\n opacity: 0;\n overflow: hidden;\n\n -webkit-appearance: none;\n -moz-appearance: none;\n}\n\n@mixin text-inherit() {\n font-family: inherit;\n font-size: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-indent: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n}\n\n@mixin button-state() {\n @include position(0, 0, 0, 0);\n\n position: absolute;\n\n content: \"\";\n\n opacity: 0;\n}\n\n// Font smoothing\n// --------------------------------------------------\n\n@mixin font-smoothing() {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n}\n\n// Get the key from a map based on the index\n@function index-to-key($map, $index) {\n $keys: map-keys($map);\n\n @return nth($keys, $index);\n}\n\n\n// Breakpoint Mixins\n// ---------------------------------------------------------------------------------\n\n// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$screen-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// ---------------------------------------------------------------------------------\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $screen-breakpoints) {\n $min: map-get($breakpoints, $name);\n\n @return if($name != index-to-key($breakpoints, 1), $min, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash infront.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $screen-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $screen-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $screen-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Maximum breakpoint width. Null for the smallest (first) breakpoint.\n// The maximum value is reduced by 0.02px to work around the limitations of\n// `min-` and `max-` prefixes and viewports with fractional widths.\n//\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\t// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\t// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(md, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $screen-breakpoints) {\n $max: map-get($breakpoints, $name);\n @return if($max and $max > 0, $max - .02, null);\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $screen-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n\n// Text Direction - ltr / rtl\n//\n// CSS defaults to use the ltr css, and adds [dir=rtl] selectors\n// to override ltr defaults.\n// ----------------------------------------------------------\n\n@mixin multi-dir() {\n @content;\n\n // $root: #{&};\n // @at-root [dir] {\n // #{$root} {\n // @content;\n // }\n // }\n}\n\n@mixin rtl() {\n $root: #{&};\n\n $rootSplit: str-split($root, \",\");\n $selectors: #{add-root-selector($root, \"[dir=rtl]\")};\n $selectorsSplit: str-split($selectors, \",\");\n\n $hostContextSelectors: ();\n $restSelectors: ();\n $dirSelectors: ();\n\n // Selectors must be split into individual selectors in case the browser\n // doesn't support a specific selector.\n // For example, Firefox and Safari doesn't support `:host-context()`.\n // If an invalid selector is used, then the entire group of selectors\n // will be ignored.\n // @link https://www.w3.org/TR/selectors-3/#grouping\n @each $selector in $selectorsSplit {\n // Group the selectors back into a single selector to optimize the output.\n @if str-index($selector, \":host-context\") {\n $hostContextSelectors: append($hostContextSelectors, $selector, comma);\n } @else {\n // Group the selectors back into a single selector to optimize the output.\n $restSelectors: append($restSelectors, $selector, comma);\n }\n }\n\n // Supported by Chrome.\n @if length($hostContextSelectors) > 0 {\n @at-root #{$hostContextSelectors} {\n @content;\n }\n }\n\n // Supported by all browsers.\n @if length($restSelectors) > 0 {\n @at-root #{$restSelectors} {\n @content;\n }\n }\n\n // If browser can support `:dir()`, then add the `:dir()` selectors.\n @supports selector(:dir(rtl)) {\n // Adding :dir() in case the browser doesn't support `:host-context()` and does support `:dir()`.\n // `:host-context()` is added:\n // - through the `add-root-selector()` function.\n // - first so that it takes precedence over `:dir()`.\n // For example,\n // - Firefox doesn't support `:host-context()`, but does support `:dir()`.\n // - Safari doesn't support `:host-context()`, but Safari 16.4+ supports `:dir()`\n // @link https://webkit.org/blog/13966/webkit-features-in-safari-16-4/\n // -- However, there is a Webkit bug on v16 that prevents `:dir()` from working when\n // -- the app direction is changed dynamically. v17+ works fine.\n // -- @link https://bugs.webkit.org/show_bug.cgi?id=257133\n\n // Supported by Firefox.\n @at-root #{add-root-selector($root, \":dir(rtl)\", false)} {\n @content;\n }\n }\n}\n\n@mixin ltr() {\n @content;\n}\n\n\n// SVG Background Image Mixin\n// @param {string} $svg\n// ----------------------------------------------------------\n@mixin svg-background-image($svg, $flip-rtl: false) {\n $url: url-encode($svg);\n $viewBox: str-split(str-extract($svg, \"viewBox='\", \"'\"), \" \");\n\n @if $flip-rtl != true or $viewBox == null {\n @include multi-dir() {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$url}\");\n }\n } @else {\n $transform: \"transform='translate(#{nth($viewBox, 3)}, 0) scale(-1, 1)'\";\n $flipped-url: $svg;\n $flipped-url: str-replace($flipped-url, \"<path\", \"<path #{$transform}\");\n $flipped-url: str-replace($flipped-url, \"<line\", \"<line #{$transform}\");\n $flipped-url: str-replace($flipped-url, \"<polygon\", \"<polygon #{$transform}\");\n $flipped-url: url-encode($flipped-url);\n\n @include ltr () {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$url}\");\n }\n @include rtl() {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$flipped-url}\");\n }\n }\n}\n\n// Add property horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin property-horizontal($prop, $start, $end: $start) {\n @if $start == 0 and $end == 0 {\n #{$prop}-left: $start;\n #{$prop}-right: $end;\n\n } @else {\n -webkit-#{$prop}-start: $start;\n #{$prop}-inline-start: $start;\n -webkit-#{$prop}-end: $end;\n #{$prop}-inline-end: $end;\n }\n}\n\n// Add property for all directions\n// @param {string} $prop\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// @param {boolean} $content include content or use default\n// ----------------------------------------------------------\n@mixin property($prop, $top, $end: $top, $bottom: $top, $start: $end) {\n @include property-horizontal($prop, $start, $end);\n #{$prop}-top: $top;\n #{$prop}-bottom: $bottom;\n}\n\n// Add padding horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin padding-horizontal($start, $end: $start) {\n @include property-horizontal(padding, $start, $end);\n}\n\n// Add padding for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin padding($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(padding, $top, $end, $bottom, $start);\n}\n\n// Add margin horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin margin-horizontal($start, $end: $start) {\n @include property-horizontal(margin, $start, $end);\n}\n\n// Add margin for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin margin($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(margin, $top, $end, $bottom, $start);\n}\n\n// Add position horizontal\n// @param {string} $start - amount to position start\n// @param {string} $end - amount to left: 0; end\n// ----------------------------------------------------------\n@mixin position-horizontal($start: null, $end: null) {\n @if $start == $end {\n @include multi-dir() {\n left: $start;\n right: $end;\n }\n } @else {\n @at-root {\n & {\n inset-inline-start: $start;\n inset-inline-end: $end;\n }\n }\n }\n}\n\n// Add position for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin position($top: null, $end: null, $bottom: null, $start: null) {\n @include position-horizontal($start, $end);\n top: $top;\n bottom: $bottom;\n}\n\n// Add border for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin border($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(border, $top, $end, $bottom, $start);\n}\n\n// Add border radius for all directions\n// @param {string} $top-start\n// @param {string} $top-end\n// @param {string} $bottom-end\n// @param {string} $bottom-start\n// ----------------------------------------------------------\n@mixin border-radius($top-start, $top-end: $top-start, $bottom-end: $top-start, $bottom-start: $top-end) {\n @if $top-start == $top-end and $top-start == $bottom-end and $top-start == $bottom-start {\n border-radius: $top-start;\n } @else {\n border-start-start-radius: $top-start;\n border-start-end-radius: $top-end;\n border-end-end-radius: $bottom-end;\n border-end-start-radius: $bottom-start;\n }\n}\n\n// Add direction for all directions\n// @param {string} $dir - Direction on LTR\n@mixin direction($dir) {\n $other-dir: null;\n\n @if $dir == ltr {\n $other-dir: rtl;\n } @else {\n $other-dir: ltr;\n }\n\n @include ltr() {\n direction: $dir;\n }\n @include rtl() {\n direction: $other-dir;\n }\n}\n\n// Add float for all directions\n// @param {string} $side\n// @param {string} $decorator - !important\n@mixin float($side, $decorator: null) {\n @if $side == start {\n @include ltr() {\n float: left $decorator;\n }\n @include rtl() {\n float: right $decorator;\n }\n } @else if $side == end {\n @include ltr() {\n float: right $decorator;\n }\n @include rtl() {\n float: left $decorator;\n }\n } @else {\n @include multi-dir() {\n float: $side $decorator;\n }\n }\n}\n\n@mixin background-position($horizontal, $horizontal-amount: null, $vertical: null, $vertical-amount: null) {\n @if $horizontal == start or $horizontal == end {\n $horizontal-ltr: null;\n $horizontal-rtl: null;\n @if $horizontal == start {\n $horizontal-ltr: left;\n $horizontal-rtl: right;\n } @else {\n $horizontal-ltr: right;\n $horizontal-rtl: left;\n }\n\n @include ltr() {\n background-position: $horizontal-ltr $horizontal-amount $vertical $vertical-amount;\n }\n @include rtl() {\n background-position: $horizontal-rtl $horizontal-amount $vertical $vertical-amount;\n }\n } @else {\n @include multi-dir() {\n background-position: $horizontal $horizontal-amount $vertical $vertical-amount;\n }\n }\n}\n\n@mixin transform-origin($x-axis, $y-axis: null) {\n @if $x-axis == start {\n @include ltr() {\n transform-origin: left $y-axis;\n }\n @include rtl() {\n transform-origin: right $y-axis;\n }\n } @else if $x-axis == end {\n @include ltr() {\n transform-origin: right $y-axis;\n }\n @include rtl() {\n transform-origin: left $y-axis;\n }\n } @else if $x-axis == left or $x-axis == right {\n @include multi-dir() {\n transform-origin: $x-axis $y-axis;\n }\n } @else {\n @include ltr() {\n transform-origin: $x-axis $y-axis;\n }\n @include rtl() {\n transform-origin: calc(100% - #{$x-axis}) $y-axis;\n }\n }\n}\n\n// Add transform for all directions\n// @param {string} $transforms - comma separated list of transforms\n@mixin transform($transforms...) {\n $extra: null;\n\n $x: null;\n $ltr-translate: null;\n $rtl-translate: null;\n\n @each $transform in $transforms {\n @if (str-index($transform, translate3d)) {\n $transform: str-replace($transform, 'translate3d(');\n $transform: str-replace($transform, ')');\n\n $coordinates: str-split($transform, ',');\n\n $x: nth($coordinates, 1);\n $y: nth($coordinates, 2);\n $z: nth($coordinates, 3);\n\n $ltr-translate: translate3d($x, $y, $z);\n $rtl-translate: translate3d(calc(-1 * #{$x}), $y, $z);\n } @else {\n @if $extra == null {\n $extra: $transform;\n } @else {\n $extra: $extra $transform;\n }\n }\n }\n\n @if $x == '0' or $x == null {\n @include multi-dir() {\n transform: $ltr-translate $extra;\n }\n } @else {\n @include ltr() {\n transform: $ltr-translate $extra;\n }\n\n @include rtl() {\n transform: $rtl-translate $extra;\n }\n }\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Float Elements\n// --------------------------------------------------\n// Creates float classes based on screen size\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `.ion-float-{bp}-{side}` classes for floating the element based\n // on the breakpoint and side\n .ion-float#{$infix}-left {\n @include float(left, !important);\n }\n\n .ion-float#{$infix}-right {\n @include float(right, !important);\n }\n\n .ion-float#{$infix}-start {\n @include float(start, !important);\n }\n\n .ion-float#{$infix}-end {\n @include float(end, !important);\n }\n }\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Text Alignment\n// --------------------------------------------------\n// Creates text alignment attributes based on screen size\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `.ion-text-{bp}` classes for aligning the text based\n // on the breakpoint\n .ion-text#{$infix}-center {\n text-align: center !important;\n }\n\n .ion-text#{$infix}-justify {\n text-align: justify !important;\n }\n\n .ion-text#{$infix}-start {\n text-align: start !important;\n }\n\n .ion-text#{$infix}-end {\n text-align: end !important;\n }\n\n .ion-text#{$infix}-left {\n text-align: left !important;\n }\n\n .ion-text#{$infix}-right {\n text-align: right !important;\n }\n\n .ion-text#{$infix}-nowrap {\n white-space: nowrap !important;\n }\n\n .ion-text#{$infix}-wrap {\n white-space: normal !important;\n }\n }\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Text Transformation\n// --------------------------------------------------\n// Creates text transform attributes based on screen size\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `.ion-text-{bp}` classes for transforming the text based\n // on the breakpoint\n .ion-text#{$infix}-uppercase {\n /* stylelint-disable-next-line declaration-no-important */\n text-transform: uppercase !important;\n }\n\n .ion-text#{$infix}-lowercase {\n /* stylelint-disable-next-line declaration-no-important */\n text-transform: lowercase !important;\n }\n\n .ion-text#{$infix}-capitalize {\n /* stylelint-disable-next-line declaration-no-important */\n text-transform: capitalize !important;\n }\n }\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Flex Utilities\n// ------------------------------------------------------------------\n// Provides utility classes to control flexbox layout, alignment,\n// and sizing of elements. Includes responsive variants for managing\n// flex direction, alignment, justification, wrapping, growth,\n// shrinking, and ordering at different breakpoints.\n\n// Align Content\n// ------------------------------------------------------------------\n\n$align-content-values: (\n start: flex-start,\n end: flex-end,\n center: center,\n between: space-between,\n around: space-around,\n stretch: stretch\n);\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n @each $key, $value in $align-content-values {\n .ion-align-content#{$infix}-#{$key} {\n align-content: #{$value} !important;\n }\n }\n }\n}\n\n// Align Items\n// ------------------------------------------------------------------\n\n$align-items-values: (\n start,\n end,\n center,\n stretch,\n baseline\n);\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n @each $value in $align-items-values {\n .ion-align-items#{$infix}-#{$value} {\n align-items: #{$value} !important;\n }\n }\n }\n}\n\n// Align Self\n// ------------------------------------------------------------------\n\n$align-self-values: (\n start,\n end,\n center,\n stretch,\n baseline,\n auto\n);\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n @each $value in $align-self-values {\n .ion-align-self#{$infix}-#{$value} {\n align-self: #{$value} !important;\n }\n }\n }\n}\n\n// Justify Content\n// ------------------------------------------------------------------\n\n$justify-content-values: (\n start: flex-start,\n end: flex-end,\n center: center,\n between: space-between,\n around: space-around,\n evenly: space-evenly\n);\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n @each $key, $value in $justify-content-values {\n .ion-justify-content#{$infix}-#{$key} {\n justify-content: #{$value} !important;\n }\n }\n }\n}\n\n// Flex Direction\n// ------------------------------------------------------------------\n\n$flex-direction-values: (\n row,\n row-reverse,\n column,\n column-reverse\n);\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n @each $value in $flex-direction-values {\n .ion-flex#{$infix}-#{$value} {\n flex-direction: #{$value} !important;\n }\n }\n }\n}\n\n// Flex Wrap\n// ------------------------------------------------------------------\n\n$flex-wrap-values: (\n wrap,\n nowrap,\n wrap-reverse\n);\n\n@each $value in $flex-wrap-values {\n // TODO(FW-6697): remove ion-wrap, ion-nowrap, ion-wrap-reverse\n // in favor of the new ion-flex-wrap, ion-flex-nowrap, and\n // ion-flex-wrap-reverse classes\n .ion-#{$value} {\n flex-wrap: #{$value} !important;\n }\n}\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n @each $value in $flex-wrap-values {\n .ion-flex#{$infix}-#{$value} {\n flex-wrap: #{$value} !important;\n }\n }\n }\n}\n\n// Flex Fill\n// ------------------------------------------------------------------\n\n$flex-fill-values: (\n 1,\n auto,\n initial,\n none\n);\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n @each $value in $flex-fill-values {\n .ion-flex#{$infix}-#{$value} {\n flex: #{$value} !important;\n }\n }\n }\n}\n\n// Flex Grow and Shrink\n// ------------------------------------------------------------------\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n .ion-flex#{$infix}-grow-0 {\n flex-grow: 0 !important;\n }\n\n .ion-flex#{$infix}-grow-1 {\n flex-grow: 1 !important;\n }\n\n .ion-flex#{$infix}-shrink-0 {\n flex-shrink: 0 !important;\n }\n\n .ion-flex#{$infix}-shrink-1 {\n flex-shrink: 1 !important;\n }\n }\n}\n\n// Flex Order\n// ------------------------------------------------------------------\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n .ion-order#{$infix}-first { order: -1 !important; }\n\n @for $i from 0 through 12 {\n .ion-order#{$infix}-#{$i} { order: #{$i} !important; }\n }\n\n .ion-order#{$infix}-last { order: 13 !important; }\n }\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Display\n// ------------------------------------------------------------------\n// Provides utility classes to control the CSS display property\n// of elements. Includes responsive variants for toggling between\n// block, inline, flex, grid, and other display values at different\n// breakpoints.\n\n// TODO(FW-6697): remove ion-hide-* classes in favor of the new\n// ion-display-* classes\n.ion-hide {\n display: none !important;\n}\n\n// Adds hidden classes\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `ion-hide-{bp}-up` classes for hiding the element based\n // on the breakpoint\n .ion-hide#{$infix}-up {\n display: none !important;\n }\n }\n\n @include media-breakpoint-down($breakpoint, $screen-breakpoints) {\n // Provide `ion-hide-{bp}-down` classes for hiding the element based\n // on the breakpoint\n .ion-hide#{$infix}-down {\n display: none !important;\n }\n }\n}\n\n$display-values: (\n none,\n inline,\n inline-block,\n block,\n flex,\n inline-flex,\n grid,\n inline-grid,\n table,\n table-cell,\n table-row\n);\n\n@each $display in $display-values {\n @each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n .ion-display#{$infix}-#{$display} {\n display: #{$display} !important;\n }\n }\n }\n}\n"]}
@@ -4,7 +4,7 @@
4
4
  'use strict';
5
5
 
6
6
  var index = require('./index-DNh170BW.js');
7
- var ionicGlobal = require('./ionic-global-RZLbse4y.js');
7
+ var index$1 = require('./index-DkNv4J_i.js');
8
8
 
9
9
  let animationPrefix;
10
10
  const getAnimationPrefix = (el) => {
@@ -67,7 +67,7 @@ const createAnimation = (animationId) => {
67
67
  const _afterAddWriteFunctions = [];
68
68
  const webAnimations = [];
69
69
  const supportsAnimationEffect = typeof AnimationEffect === 'function' ||
70
- (ionicGlobal.win !== undefined && typeof ionicGlobal.win.AnimationEffect === 'function');
70
+ (index$1.win !== undefined && typeof index$1.win.AnimationEffect === 'function');
71
71
  /**
72
72
  * This is a feature detection for Web Animations.
73
73
  *
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var ionicGlobal = require('./ionic-global-RZLbse4y.js');
6
+ var ionicGlobal = require('./ionic-global-UI5YPSi-.js');
7
7
 
8
8
  const globalScripts = ionicGlobal.initialize;
9
9
 
@@ -4,7 +4,7 @@
4
4
  'use strict';
5
5
 
6
6
  var index$1 = require('./index-DNh170BW.js');
7
- var haptic = require('./haptic-r0GBrUII.js');
7
+ var haptic = require('./haptic-ClPPQ_PS.js');
8
8
  var index = require('./index-CAvQ7Tka.js');
9
9
 
10
10
  const createButtonActiveGesture = (el, isButton) => {
@@ -3,11 +3,11 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var ionicGlobal = require('./ionic-global-RZLbse4y.js');
6
+ var index = require('./index-DkNv4J_i.js');
7
7
 
8
8
  const getCapacitor = () => {
9
- if (ionicGlobal.win !== undefined) {
10
- return ionicGlobal.win.Capacitor;
9
+ if (index.win !== undefined) {
10
+ return index.win.Capacitor;
11
11
  }
12
12
  return undefined;
13
13
  };
@@ -1149,20 +1149,20 @@ const hour23 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
1149
1149
  // h24 hour system uses 1-24. Midnight starts at 24:00.
1150
1150
  const hour24 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 0];
1151
1151
  /**
1152
- * Given a locale and a theme,
1152
+ * Given a locale and a mode,
1153
1153
  * return an array with formatted days
1154
- * of the week. iOS and Ionic themes should
1155
- * display days such as "Mon" or "Tue".
1154
+ * of the week. iOS should display days
1155
+ * such as "Mon" or "Tue".
1156
1156
  * MD should display days such as "M"
1157
1157
  * or "T".
1158
1158
  */
1159
- const getDaysOfWeek = (locale, theme, firstDayOfWeek = 0) => {
1159
+ const getDaysOfWeek = (locale, mode, firstDayOfWeek = 0) => {
1160
1160
  /**
1161
1161
  * Nov 1st, 2020 starts on a Sunday.
1162
1162
  * ion-datetime assumes weeks start on Sunday,
1163
1163
  * but is configurable via `firstDayOfWeek`.
1164
1164
  */
1165
- const weekdayFormat = theme === 'md' ? 'narrow' : 'short';
1165
+ const weekdayFormat = mode === 'ios' ? 'short' : 'narrow';
1166
1166
  const intl = new Intl.DateTimeFormat(locale, { weekday: weekdayFormat });
1167
1167
  const startDate = new Date('11/01/2020');
1168
1168
  const daysOfWeek = [];
@@ -1,6 +1,8 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
+ 'use strict';
5
+
4
6
  const ION_FOCUSED = 'ion-focused';
5
7
  const ION_FOCUSABLE = 'ion-focusable';
6
8
  const FOCUS_KEYS = [
@@ -17,28 +19,6 @@ const FOCUS_KEYS = [
17
19
  'Home',
18
20
  'End',
19
21
  ];
20
- let focusVisibleUtility = null;
21
- const getOrInitFocusVisibleUtility = () => {
22
- if (!focusVisibleUtility) {
23
- focusVisibleUtility = startFocusVisible();
24
- }
25
- return focusVisibleUtility;
26
- };
27
- /**
28
- * Used to set focus on an element that uses `ion-focusable`.
29
- * Do not use this if focusing the element as a result of a keyboard
30
- * event as the focus utility should handle this for us. This method
31
- * should be used when we want to programmatically focus an element as
32
- * a result of another user action. (Ex: We focus the first element
33
- * inside of a popover when the user presents it, but the popover is not always
34
- * presented as a result of keyboard action.)
35
- *
36
- * @param elements - The elements to set focus on.
37
- */
38
- const focusElements = (elements) => {
39
- const focusVisible = getOrInitFocusVisibleUtility();
40
- focusVisible.setFocus(elements);
41
- };
42
22
  const startFocusVisible = (rootEl) => {
43
23
  let currentFocus = [];
44
24
  let keyboardMode = true;
@@ -94,4 +74,4 @@ const startFocusVisible = (rootEl) => {
94
74
  };
95
75
  };
96
76
 
97
- export { focusElements, getOrInitFocusVisibleUtility, startFocusVisible };
77
+ exports.startFocusVisible = startFocusVisible;
@@ -3,8 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-DNh170BW.js');
7
- var helpers = require('./helpers-CYFB2_7O.js');
6
+ var helpers = require('./helpers-DgwmcYAu.js');
8
7
 
9
8
  // TODO(FW-2832): types
10
9
  const attachComponent = async (delegate, container, component, cssClasses, componentProps, inline) => {
@@ -105,8 +104,7 @@ const CoreDelegate = () => {
105
104
  * Get the root of the app and
106
105
  * add the overlay there.
107
106
  */
108
- const appRootSelector = index.config.get('appRootSelector', 'ion-app');
109
- const app = document.querySelector(appRootSelector) || document.body;
107
+ const app = document.querySelector('ion-app') || document.body;
110
108
  /**
111
109
  * Create a placeholder comment so that
112
110
  * we can return this component to where
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var capacitor = require('./capacitor-CVcQYFDK.js');
6
+ var capacitor = require('./capacitor-DmA66EwP.js');
7
7
 
8
8
  exports.ImpactStyle = void 0;
9
9
  (function (ImpactStyle) {
@@ -0,0 +1,121 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ 'use strict';
5
+
6
+ var index$1 = require('./index-DkNv4J_i.js');
7
+ var index = require('./index-DNh170BW.js');
8
+
9
+ /**
10
+ * CloseWatcher is a newer API that lets
11
+ * use detect the hardware back button event
12
+ * in a web browser: https://caniuse.com/?search=closewatcher
13
+ * However, not every browser supports it yet.
14
+ *
15
+ * This needs to be a function so that we can
16
+ * check the config once it has been set.
17
+ * Otherwise, this code would be evaluated the
18
+ * moment this file is evaluated which could be
19
+ * before the config is set.
20
+ */
21
+ const shouldUseCloseWatcher = () => index.config.get('experimentalCloseWatcher', false) && index$1.win !== undefined && 'CloseWatcher' in index$1.win;
22
+ /**
23
+ * When hardwareBackButton: false in config,
24
+ * we need to make sure we also block the default
25
+ * webview behavior. If we don't then it will be
26
+ * possible for users to navigate backward while
27
+ * an overlay is still open. Additionally, it will
28
+ * give the appearance that the hardwareBackButton
29
+ * config is not working as the page transition
30
+ * will still happen.
31
+ */
32
+ const blockHardwareBackButton = () => {
33
+ document.addEventListener('backbutton', () => { }); // eslint-disable-line
34
+ };
35
+ const startHardwareBackButton = () => {
36
+ const doc = document;
37
+ let busy = false;
38
+ const backButtonCallback = () => {
39
+ if (busy) {
40
+ return;
41
+ }
42
+ let index$1 = 0;
43
+ let handlers = [];
44
+ const ev = new CustomEvent('ionBackButton', {
45
+ bubbles: false,
46
+ detail: {
47
+ register(priority, handler) {
48
+ handlers.push({ priority, handler, id: index$1++ });
49
+ },
50
+ },
51
+ });
52
+ doc.dispatchEvent(ev);
53
+ const executeAction = async (handlerRegister) => {
54
+ try {
55
+ if (handlerRegister === null || handlerRegister === void 0 ? void 0 : handlerRegister.handler) {
56
+ const result = handlerRegister.handler(processHandlers);
57
+ if (result != null) {
58
+ await result;
59
+ }
60
+ }
61
+ }
62
+ catch (e) {
63
+ index.printIonError('[ion-app] - Exception in startHardwareBackButton:', e);
64
+ }
65
+ };
66
+ const processHandlers = () => {
67
+ if (handlers.length > 0) {
68
+ let selectedHandler = {
69
+ priority: Number.MIN_SAFE_INTEGER,
70
+ handler: () => undefined,
71
+ id: -1,
72
+ };
73
+ handlers.forEach((handler) => {
74
+ if (handler.priority >= selectedHandler.priority) {
75
+ selectedHandler = handler;
76
+ }
77
+ });
78
+ busy = true;
79
+ handlers = handlers.filter((handler) => handler.id !== selectedHandler.id);
80
+ executeAction(selectedHandler).then(() => (busy = false));
81
+ }
82
+ };
83
+ processHandlers();
84
+ };
85
+ /**
86
+ * If the CloseWatcher is defined then
87
+ * we don't want to also listen for the native
88
+ * backbutton event otherwise we may get duplicate
89
+ * events firing.
90
+ */
91
+ if (shouldUseCloseWatcher()) {
92
+ let watcher;
93
+ const configureWatcher = () => {
94
+ watcher === null || watcher === void 0 ? void 0 : watcher.destroy();
95
+ watcher = new index$1.win.CloseWatcher();
96
+ /**
97
+ * Once a close request happens
98
+ * the watcher gets destroyed.
99
+ * As a result, we need to re-configure
100
+ * the watcher so we can respond to other
101
+ * close requests.
102
+ */
103
+ watcher.onclose = () => {
104
+ backButtonCallback();
105
+ configureWatcher();
106
+ };
107
+ };
108
+ configureWatcher();
109
+ }
110
+ else {
111
+ doc.addEventListener('backbutton', backButtonCallback);
112
+ }
113
+ };
114
+ const OVERLAY_BACK_BUTTON_PRIORITY = 100;
115
+ const MENU_BACK_BUTTON_PRIORITY = 99; // 1 less than overlay priority since menu is displayed behind overlays
116
+
117
+ exports.MENU_BACK_BUTTON_PRIORITY = MENU_BACK_BUTTON_PRIORITY;
118
+ exports.OVERLAY_BACK_BUTTON_PRIORITY = OVERLAY_BACK_BUTTON_PRIORITY;
119
+ exports.blockHardwareBackButton = blockHardwareBackButton;
120
+ exports.shouldUseCloseWatcher = shouldUseCloseWatcher;
121
+ exports.startHardwareBackButton = startHardwareBackButton;
@@ -3,7 +3,6 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var focusVisible = require('./focus-visible-BIj-I3-C.js');
7
6
  var index = require('./index-DNh170BW.js');
8
7
 
9
8
  const transitionEndAsync = (el, expectedDuration = 0) => {
@@ -204,17 +203,6 @@ const raf = (h) => {
204
203
  const hasShadowDom = (el) => {
205
204
  return !!el.shadowRoot && !!el.attachShadow;
206
205
  };
207
- /**
208
- * Focuses a given element while ensuring proper focus management
209
- * within the Ionic framework. If the element is marked as `ion-focusable`,
210
- * this function will delegate focus handling to `ion-app` or manually
211
- * apply focus when a custom app root is used.
212
- *
213
- * This function helps maintain accessibility and expected focus behavior
214
- * in both standard and custom root environments.
215
- *
216
- * @param el - The element to focus.
217
- */
218
206
  const focusVisibleElement = (el) => {
219
207
  el.focus();
220
208
  /**
@@ -226,36 +214,9 @@ const focusVisibleElement = (el) => {
226
214
  * which will let us explicitly set the elements to focus.
227
215
  */
228
216
  if (el.classList.contains('ion-focusable')) {
229
- const appRootSelector = index.config.get('appRootSelector', 'ion-app');
230
- const app = el.closest(appRootSelector);
217
+ const app = el.closest('ion-app');
231
218
  if (app) {
232
- if (appRootSelector === 'ion-app') {
233
- /**
234
- * If the app root is the default, then it will be
235
- * in charge of setting focus. This is because the
236
- * focus-visible utility is attached to the app root
237
- * and will handle setting focus on the correct element.
238
- */
239
- app.setFocus([el]);
240
- }
241
- else {
242
- /**
243
- * When using a custom app root selector, the focus-visible
244
- * utility is not available to manage focus automatically.
245
- * If we set focus immediately, the element may not be fully
246
- * rendered or interactive, especially if it was just added
247
- * to the DOM. Using requestAnimationFrame ensures that focus
248
- * is applied on the next frame, allowing the DOM to settle
249
- * before changing focus.
250
- */
251
- requestAnimationFrame(() => {
252
- /**
253
- * The focus-visible utility is used to set focus on an
254
- * element that uses `ion-focusable`.
255
- */
256
- focusVisible.focusElements([el]);
257
- });
258
- }
219
+ app.setFocus([el]);
259
220
  }
260
221
  }
261
222
  };
@@ -4,7 +4,7 @@
4
4
  'use strict';
5
5
 
6
6
  var index = require('./index-DNh170BW.js');
7
- var helpers = require('./helpers-CYFB2_7O.js');
7
+ var helpers = require('./helpers-DgwmcYAu.js');
8
8
 
9
9
  const LIFECYCLE_WILL_ENTER = 'ionViewWillEnter';
10
10
  const LIFECYCLE_DID_ENTER = 'ionViewDidEnter';
@@ -120,8 +120,8 @@ const createFocusController = () => {
120
120
  };
121
121
  const LAST_FOCUS = 'ion-last-focus';
122
122
 
123
- const iosTransitionAnimation = () => Promise.resolve().then(function () { return require('./ios.transition-CWI22viS.js'); });
124
- const mdTransitionAnimation = () => Promise.resolve().then(function () { return require('./md.transition-BxMmPf_q.js'); });
123
+ const iosTransitionAnimation = () => Promise.resolve().then(function () { return require('./ios.transition-DEitrLlG.js'); });
124
+ const mdTransitionAnimation = () => Promise.resolve().then(function () { return require('./md.transition-BHtGC-Wg.js'); });
125
125
  const focusController = createFocusController();
126
126
  // TODO(FW-2832): types
127
127
  const transition = (opts) => {
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var helpers = require('./helpers-CYFB2_7O.js');
6
+ var helpers = require('./helpers-DgwmcYAu.js');
7
7
  var index = require('./index-DNh170BW.js');
8
8
 
9
9
  const ION_CONTENT_TAG_NAME = 'ION-CONTENT';