@ionic/core 8.7.12-dev.11764959751.15a91dbd → 8.7.12-dev.11765060985.14ad27fb

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (935) hide show
  1. package/components/action-sheet.js +9 -13
  2. package/components/alert.js +11 -14
  3. package/components/animation.js +1 -1
  4. package/components/backdrop.js +6 -9
  5. package/components/button.js +10 -41
  6. package/components/buttons.js +8 -11
  7. package/components/capacitor.js +1 -1
  8. package/components/checkbox.js +12 -31
  9. package/components/content.js +12 -14
  10. package/components/data.js +5 -5
  11. package/components/focus-visible.js +1 -23
  12. package/components/framework-delegate.js +1 -3
  13. package/components/hardware-back-button.js +115 -0
  14. package/components/header.js +22 -34
  15. package/components/helpers.js +3 -42
  16. package/components/index5.js +8 -8
  17. package/components/index6.js +1 -1
  18. package/components/index7.js +150 -111
  19. package/components/index8.js +111 -150
  20. package/components/index9.js +7 -0
  21. package/components/input-shims.js +2 -2
  22. package/components/input.utils.js +1 -1
  23. package/components/ion-accordion-group.js +5 -23
  24. package/components/ion-accordion.js +21 -32
  25. package/components/ion-app.js +77 -12
  26. package/components/ion-avatar.js +5 -58
  27. package/components/ion-back-button.js +19 -27
  28. package/components/ion-badge.js +9 -73
  29. package/components/ion-breadcrumb.js +10 -43
  30. package/components/ion-breadcrumbs.js +5 -8
  31. package/components/ion-card-content.js +7 -10
  32. package/components/ion-card-header.js +6 -9
  33. package/components/ion-card-subtitle.js +5 -8
  34. package/components/ion-card-title.js +5 -8
  35. package/components/ion-card.js +9 -21
  36. package/components/ion-chip.js +8 -53
  37. package/components/ion-col.js +50 -51
  38. package/components/ion-datetime-button.js +5 -8
  39. package/components/ion-datetime.js +21 -98
  40. package/components/ion-fab-button.js +15 -31
  41. package/components/ion-fab-list.js +5 -5
  42. package/components/ion-fab.js +6 -6
  43. package/components/ion-footer.js +13 -18
  44. package/components/ion-grid.js +5 -5
  45. package/components/ion-img.js +2 -5
  46. package/components/ion-infinite-scroll-content.js +8 -11
  47. package/components/ion-infinite-scroll.js +6 -78
  48. package/components/ion-input-otp.js +6 -9
  49. package/components/ion-input-password-toggle.js +13 -51
  50. package/components/ion-input.js +28 -120
  51. package/components/ion-item-divider.js +5 -8
  52. package/components/ion-item-group.js +5 -8
  53. package/components/ion-item-option.js +9 -36
  54. package/components/ion-item-options.js +7 -10
  55. package/components/ion-item-sliding.js +5 -5
  56. package/components/ion-loading.js +9 -12
  57. package/components/ion-menu-button.js +10 -26
  58. package/components/ion-menu-toggle.js +5 -5
  59. package/components/ion-menu.js +8 -10
  60. package/components/ion-nav-link.js +1 -1
  61. package/components/ion-nav.js +5 -7
  62. package/components/ion-note.js +5 -8
  63. package/components/ion-picker-legacy.js +7 -7
  64. package/components/ion-progress-bar.js +7 -25
  65. package/components/ion-range.js +9 -12
  66. package/components/ion-refresher-content.js +8 -23
  67. package/components/ion-refresher.js +7 -10
  68. package/components/ion-reorder-group.js +5 -5
  69. package/components/ion-reorder.js +5 -30
  70. package/components/ion-router-link.js +6 -6
  71. package/components/ion-router-outlet.js +4 -4
  72. package/components/ion-row.js +3 -6
  73. package/components/ion-searchbar.js +23 -137
  74. package/components/ion-segment-button.js +7 -10
  75. package/components/ion-segment-content.js +1 -1
  76. package/components/ion-segment-view.js +2 -5
  77. package/components/ion-segment.js +7 -10
  78. package/components/ion-select-option.js +2 -5
  79. package/components/ion-select.js +33 -117
  80. package/components/ion-skeleton-text.js +5 -5
  81. package/components/ion-split-pane.js +8 -11
  82. package/components/ion-tab-bar.js +9 -39
  83. package/components/ion-tab-button.js +8 -35
  84. package/components/ion-tab.js +2 -2
  85. package/components/ion-tabs.js +2 -2
  86. package/components/ion-text.js +5 -5
  87. package/components/ion-textarea.js +11 -52
  88. package/components/ion-thumbnail.js +2 -5
  89. package/components/ion-toast.js +12 -37
  90. package/components/ion-toggle.js +17 -74
  91. package/components/ionic-global.js +15 -349
  92. package/components/ios.transition.js +0 -1
  93. package/components/item.js +15 -47
  94. package/components/keyboard-controller.js +2 -4
  95. package/components/label.js +5 -8
  96. package/components/list-header.js +7 -10
  97. package/components/list.js +6 -27
  98. package/components/modal.js +102 -49
  99. package/components/notch-controller.js +1 -1
  100. package/components/overlays.js +19 -14
  101. package/components/picker-column-option.js +5 -8
  102. package/components/picker-column.js +8 -7
  103. package/components/picker-column2.js +4 -4
  104. package/components/picker.js +4 -7
  105. package/components/popover.js +9 -12
  106. package/components/radio-group.js +7 -15
  107. package/components/radio.js +8 -11
  108. package/components/ripple-effect.js +7 -15
  109. package/components/select-modal.js +5 -12
  110. package/components/select-popover.js +2 -8
  111. package/components/spinner.js +8 -31
  112. package/components/status-tap.js +1 -1
  113. package/components/title.js +7 -10
  114. package/components/toolbar.js +9 -153
  115. package/css/core.css +1 -1
  116. package/css/core.css.map +1 -1
  117. package/css/display.css +1 -1
  118. package/css/display.css.map +1 -1
  119. package/css/flex-utils.css +1 -1
  120. package/css/flex-utils.css.map +1 -1
  121. package/css/float-elements.css.map +1 -1
  122. package/css/global.bundle.css.map +1 -1
  123. package/css/ionic-swiper.css +1 -1
  124. package/css/ionic-swiper.css.map +1 -1
  125. package/css/ionic.bundle.css +1 -1
  126. package/css/ionic.bundle.css.map +1 -1
  127. package/css/normalize.css.map +1 -1
  128. package/css/padding.css.map +1 -1
  129. package/css/palettes/dark.always.css.map +1 -1
  130. package/css/palettes/dark.class.css.map +1 -1
  131. package/css/palettes/dark.system.css.map +1 -1
  132. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  133. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  134. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  135. package/css/palettes/high-contrast.always.css.map +1 -1
  136. package/css/palettes/high-contrast.class.css.map +1 -1
  137. package/css/palettes/high-contrast.system.css.map +1 -1
  138. package/css/structure.css.map +1 -1
  139. package/css/text-alignment.css.map +1 -1
  140. package/css/text-transformation.css.map +1 -1
  141. package/css/typography.css.map +1 -1
  142. package/css/utils.bundle.css +1 -1
  143. package/css/utils.bundle.css.map +1 -1
  144. package/dist/cjs/{animation-BYsP2q5j.js → animation-Bt3H9L1C.js} +2 -2
  145. package/dist/cjs/{app-globals-CrtAvKxl.js → app-globals-Ciccnk9_.js} +1 -1
  146. package/dist/cjs/{button-active-CDa7BeCl.js → button-active-CMc8cD90.js} +1 -1
  147. package/dist/cjs/{capacitor-BMhHF0O5.js → capacitor-DmA66EwP.js} +3 -3
  148. package/dist/cjs/{data-MoL8Ckx5.js → data-JwZKaIQB.js} +5 -5
  149. package/dist/{esm/focus-visible-vXpMhGrs.js → cjs/focus-visible-CCvKiLh3.js} +3 -23
  150. package/dist/cjs/{framework-delegate-Bwdk9vFS.js → framework-delegate-DMJRBuDi.js} +2 -4
  151. package/dist/cjs/{haptic-Cy3moXzO.js → haptic-ClPPQ_PS.js} +1 -1
  152. package/dist/cjs/hardware-back-button-VCK4V3mG.js +121 -0
  153. package/dist/cjs/{helpers-DnouLczu.js → helpers-DrTqNghc.js} +2 -41
  154. package/dist/cjs/{index-CWyLwRTs.js → index-094mMFB-.js} +3 -3
  155. package/dist/cjs/{index-Bq6U5NAb.js → index-C534ULug.js} +7 -8
  156. package/dist/cjs/{index-DUoP_H1L.js → index-CO6eryBo.js} +1 -1
  157. package/dist/cjs/index-DkNv4J_i.js +10 -0
  158. package/dist/cjs/{index-XjN3PjKG.js → index-DrMUZJj6.js} +15 -15
  159. package/dist/cjs/index.cjs.js +11 -10
  160. package/dist/cjs/{input-shims-D6DHFHsE.js → input-shims-CW0KUFTQ.js} +16 -17
  161. package/dist/cjs/{input.utils-BVyJKWft.js → input.utils-B_QROI2g.js} +5 -5
  162. package/dist/cjs/ion-accordion_2.cjs.entry.js +26 -55
  163. package/dist/cjs/ion-action-sheet.cjs.entry.js +18 -21
  164. package/dist/cjs/ion-alert.cjs.entry.js +20 -22
  165. package/dist/cjs/ion-app_8.cjs.entry.js +150 -249
  166. package/dist/cjs/ion-avatar_3.cjs.entry.js +11 -123
  167. package/dist/cjs/ion-back-button.cjs.entry.js +19 -28
  168. package/dist/cjs/ion-backdrop.cjs.entry.js +6 -9
  169. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +15 -51
  170. package/dist/cjs/ion-button_2.cjs.entry.js +11 -43
  171. package/dist/cjs/ion-card_5.cjs.entry.js +29 -53
  172. package/dist/cjs/ion-checkbox.cjs.entry.js +13 -31
  173. package/dist/cjs/ion-chip.cjs.entry.js +7 -48
  174. package/dist/cjs/ion-col_3.cjs.entry.js +56 -53
  175. package/dist/cjs/ion-datetime-button.cjs.entry.js +7 -11
  176. package/dist/cjs/ion-datetime_3.cjs.entry.js +38 -113
  177. package/dist/cjs/ion-fab_3.cjs.entry.js +25 -41
  178. package/dist/cjs/ion-img.cjs.entry.js +3 -7
  179. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +14 -89
  180. package/dist/cjs/ion-input-otp.cjs.entry.js +7 -11
  181. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +12 -50
  182. package/dist/cjs/ion-input.cjs.entry.js +30 -120
  183. package/dist/cjs/ion-item-option_3.cjs.entry.js +19 -48
  184. package/dist/cjs/ion-item_8.cjs.entry.js +46 -113
  185. package/dist/cjs/ion-loading.cjs.entry.js +15 -17
  186. package/dist/cjs/ion-menu_3.cjs.entry.js +26 -44
  187. package/dist/cjs/ion-modal.cjs.entry.js +150 -97
  188. package/dist/cjs/ion-nav_2.cjs.entry.js +10 -13
  189. package/dist/cjs/ion-picker-column-option.cjs.entry.js +6 -10
  190. package/dist/cjs/ion-picker-column.cjs.entry.js +12 -12
  191. package/dist/cjs/ion-picker.cjs.entry.js +5 -9
  192. package/dist/cjs/ion-popover.cjs.entry.js +16 -18
  193. package/dist/cjs/ion-progress-bar.cjs.entry.js +7 -25
  194. package/dist/cjs/ion-radio_2.cjs.entry.js +14 -24
  195. package/dist/cjs/ion-range.cjs.entry.js +10 -14
  196. package/dist/cjs/ion-refresher_2.cjs.entry.js +18 -36
  197. package/dist/cjs/ion-reorder_2.cjs.entry.js +12 -36
  198. package/dist/cjs/ion-ripple-effect.cjs.entry.js +6 -14
  199. package/dist/cjs/ion-route_4.cjs.entry.js +7 -8
  200. package/dist/cjs/ion-searchbar.cjs.entry.js +21 -134
  201. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  202. package/dist/cjs/ion-segment-view.cjs.entry.js +2 -5
  203. package/dist/cjs/ion-segment_2.cjs.entry.js +14 -21
  204. package/dist/cjs/ion-select-modal.cjs.entry.js +9 -15
  205. package/dist/cjs/ion-select_3.cjs.entry.js +38 -129
  206. package/dist/cjs/ion-spinner.cjs.entry.js +6 -28
  207. package/dist/cjs/ion-split-pane.cjs.entry.js +8 -11
  208. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +21 -75
  209. package/dist/cjs/ion-tab_2.cjs.entry.js +6 -7
  210. package/dist/cjs/ion-text.cjs.entry.js +5 -5
  211. package/dist/cjs/ion-textarea.cjs.entry.js +15 -55
  212. package/dist/cjs/ion-toast.cjs.entry.js +43 -66
  213. package/dist/cjs/ion-toggle.cjs.entry.js +21 -78
  214. package/dist/cjs/ionic-global-HMVqOFGO.js +151 -0
  215. package/dist/cjs/ionic.cjs.js +3 -3
  216. package/dist/cjs/{ios.transition-Duxxr-xb.js → ios.transition-BOt_uW73.js} +4 -6
  217. package/dist/cjs/{keyboard-UYQhk8rB.js → keyboard-UuAS4D_9.js} +1 -1
  218. package/dist/cjs/{keyboard-controller-ts0z4BIe.js → keyboard-controller-GXBiBRKS.js} +9 -11
  219. package/dist/cjs/{keyboard-C1Ds9WQH.js → keyboard-hHzlEQpk.js} +3 -4
  220. package/dist/cjs/loader.cjs.js +3 -3
  221. package/dist/cjs/{md.transition-BqUnXqxP.js → md.transition-Dt968VXB.js} +4 -5
  222. package/dist/cjs/{notch-controller-BX7CnNaL.js → notch-controller-Bzqhjm4f.js} +4 -4
  223. package/dist/cjs/{overlays-pdcfssMG.js → overlays-D3xMmZCY.js} +24 -19
  224. package/dist/cjs/{status-tap-e-hyosXV.js → status-tap-g0sWWkXk.js} +2 -3
  225. package/dist/cjs/{swipe-back-CR060nOX.js → swipe-back-BIayeNOD.js} +1 -2
  226. package/dist/collection/collection-manifest.json +0 -1
  227. package/dist/collection/components/accordion/accordion.ios.css +58 -73
  228. package/dist/collection/components/accordion/accordion.js +26 -36
  229. package/dist/collection/components/accordion/accordion.md.css +59 -67
  230. package/dist/collection/components/accordion-group/accordion-group.ios.css +4 -16
  231. package/dist/collection/components/accordion-group/accordion-group.js +8 -44
  232. package/dist/collection/components/accordion-group/accordion-group.md.css +4 -22
  233. package/dist/collection/components/action-sheet/action-sheet.ios.css +6 -18
  234. package/dist/collection/components/action-sheet/action-sheet.js +11 -15
  235. package/dist/collection/components/action-sheet/action-sheet.md.css +5 -17
  236. package/dist/collection/components/alert/alert.ios.css +1 -19
  237. package/dist/collection/components/alert/alert.js +13 -16
  238. package/dist/collection/components/alert/alert.md.css +1 -19
  239. package/dist/collection/components/app/app.js +78 -15
  240. package/dist/collection/components/avatar/avatar.ios.css +33 -7
  241. package/dist/collection/components/avatar/avatar.js +4 -120
  242. package/dist/collection/components/avatar/avatar.md.css +0 -51
  243. package/dist/collection/components/back-button/back-button.ios.css +48 -60
  244. package/dist/collection/components/back-button/back-button.js +19 -27
  245. package/dist/collection/components/back-button/back-button.md.css +48 -60
  246. package/dist/collection/components/backdrop/backdrop.ios.css +19 -56
  247. package/dist/collection/components/backdrop/backdrop.js +6 -12
  248. package/dist/collection/components/backdrop/backdrop.md.css +19 -56
  249. package/dist/collection/components/badge/badge.ios.css +12 -139
  250. package/dist/collection/components/badge/badge.js +9 -145
  251. package/dist/collection/components/badge/badge.md.css +12 -123
  252. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +8 -20
  253. package/dist/collection/components/breadcrumb/breadcrumb.js +11 -43
  254. package/dist/collection/components/breadcrumb/breadcrumb.md.css +8 -20
  255. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +0 -6
  256. package/dist/collection/components/breadcrumbs/breadcrumbs.js +9 -11
  257. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +0 -6
  258. package/dist/collection/components/button/button.ios.css +46 -135
  259. package/dist/collection/components/button/button.js +17 -48
  260. package/dist/collection/components/button/button.md.css +50 -126
  261. package/dist/collection/components/buttons/buttons.ios.css +7 -59
  262. package/dist/collection/components/buttons/buttons.js +9 -15
  263. package/dist/collection/components/buttons/buttons.md.css +3 -55
  264. package/dist/collection/components/card/card.ios.css +14 -65
  265. package/dist/collection/components/card/card.js +10 -41
  266. package/dist/collection/components/card/card.md.css +14 -65
  267. package/dist/collection/components/card-content/card-content.ios.css +1 -16
  268. package/dist/collection/components/card-content/card-content.js +8 -11
  269. package/dist/collection/components/card-content/card-content.md.css +1 -16
  270. package/dist/collection/components/card-header/card-header.ios.css +15 -27
  271. package/dist/collection/components/card-header/card-header.js +10 -13
  272. package/dist/collection/components/card-header/card-header.md.css +15 -27
  273. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +0 -12
  274. package/dist/collection/components/card-subtitle/card-subtitle.js +8 -11
  275. package/dist/collection/components/card-subtitle/card-subtitle.md.css +0 -12
  276. package/dist/collection/components/card-title/card-title.ios.css +0 -73
  277. package/dist/collection/components/card-title/card-title.js +8 -11
  278. package/dist/collection/components/card-title/card-title.md.css +0 -73
  279. package/dist/collection/components/checkbox/checkbox.ios.css +101 -161
  280. package/dist/collection/components/checkbox/checkbox.js +14 -70
  281. package/dist/collection/components/checkbox/checkbox.md.css +102 -162
  282. package/dist/collection/components/chip/chip.ios.css +14 -67
  283. package/dist/collection/components/chip/chip.js +8 -108
  284. package/dist/collection/components/chip/chip.md.css +14 -67
  285. package/dist/collection/components/col/col.css +4 -192
  286. package/dist/collection/components/col/col.js +61 -210
  287. package/dist/collection/components/content/content.css +2 -8
  288. package/dist/collection/components/content/content.js +11 -16
  289. package/dist/collection/components/datetime/datetime.ios.css +96 -258
  290. package/dist/collection/components/datetime/datetime.js +20 -98
  291. package/dist/collection/components/datetime/datetime.md.css +96 -258
  292. package/dist/collection/components/datetime/utils/data.js +5 -5
  293. package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -6
  294. package/dist/collection/components/datetime-button/datetime-button.js +8 -11
  295. package/dist/collection/components/datetime-button/datetime-button.md.css +0 -6
  296. package/dist/collection/components/fab/fab.css +1 -25
  297. package/dist/collection/components/fab/fab.js +5 -9
  298. package/dist/collection/components/fab-button/fab-button.ios.css +6 -18
  299. package/dist/collection/components/fab-button/fab-button.js +21 -36
  300. package/dist/collection/components/fab-button/fab-button.md.css +8 -20
  301. package/dist/collection/components/fab-list/fab-list.css +0 -12
  302. package/dist/collection/components/fab-list/fab-list.js +5 -9
  303. package/dist/collection/components/footer/footer.ios.css +2 -14
  304. package/dist/collection/components/footer/footer.js +16 -21
  305. package/dist/collection/components/footer/footer.md.css +0 -12
  306. package/dist/collection/components/grid/grid.css +0 -12
  307. package/dist/collection/components/grid/grid.js +5 -9
  308. package/dist/collection/components/header/header.ios.css +10 -25
  309. package/dist/collection/components/header/header.js +19 -50
  310. package/dist/collection/components/header/header.md.css +8 -23
  311. package/dist/collection/components/header/header.utils.js +5 -5
  312. package/dist/collection/components/img/img.js +2 -8
  313. package/dist/collection/components/infinite-scroll/infinite-scroll.js +5 -100
  314. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -12
  315. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +10 -16
  316. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -12
  317. package/dist/collection/components/input/input.ios.css +140 -223
  318. package/dist/collection/components/input/input.js +38 -149
  319. package/dist/collection/components/input/input.md.css +212 -193
  320. package/dist/collection/components/input-otp/input-otp.ios.css +60 -102
  321. package/dist/collection/components/input-otp/input-otp.js +5 -7
  322. package/dist/collection/components/input-otp/input-otp.md.css +60 -102
  323. package/dist/collection/components/input-password-toggle/input-password-toggle.js +12 -48
  324. package/dist/collection/components/item/item.ios.css +69 -109
  325. package/dist/collection/components/item/item.js +20 -51
  326. package/dist/collection/components/item/item.md.css +68 -120
  327. package/dist/collection/components/item-divider/item-divider.ios.css +0 -18
  328. package/dist/collection/components/item-divider/item-divider.js +8 -11
  329. package/dist/collection/components/item-divider/item-divider.md.css +0 -18
  330. package/dist/collection/components/item-group/item-group.ios.css +0 -12
  331. package/dist/collection/components/item-group/item-group.js +7 -13
  332. package/dist/collection/components/item-group/item-group.md.css +0 -12
  333. package/dist/collection/components/item-option/item-option.ios.css +29 -136
  334. package/dist/collection/components/item-option/item-option.js +9 -73
  335. package/dist/collection/components/item-option/item-option.md.css +29 -136
  336. package/dist/collection/components/item-options/item-options.ios.css +34 -77
  337. package/dist/collection/components/item-options/item-options.js +7 -13
  338. package/dist/collection/components/item-options/item-options.md.css +34 -77
  339. package/dist/collection/components/item-sliding/item-sliding.css +0 -6
  340. package/dist/collection/components/item-sliding/item-sliding.js +4 -8
  341. package/dist/collection/components/label/label.ios.css +0 -18
  342. package/dist/collection/components/label/label.js +8 -11
  343. package/dist/collection/components/label/label.md.css +0 -18
  344. package/dist/collection/components/list/list.ios.css +14 -54
  345. package/dist/collection/components/list/list.js +9 -48
  346. package/dist/collection/components/list/list.md.css +16 -56
  347. package/dist/collection/components/list-header/list-header.ios.css +38 -82
  348. package/dist/collection/components/list-header/list-header.js +8 -11
  349. package/dist/collection/components/list-header/list-header.md.css +38 -82
  350. package/dist/collection/components/loading/loading.ios.css +1 -13
  351. package/dist/collection/components/loading/loading.js +11 -14
  352. package/dist/collection/components/loading/loading.md.css +1 -13
  353. package/dist/collection/components/menu/menu.ios.css +3 -15
  354. package/dist/collection/components/menu/menu.js +7 -12
  355. package/dist/collection/components/menu/menu.md.css +3 -15
  356. package/dist/collection/components/menu-button/menu-button.ios.css +14 -48
  357. package/dist/collection/components/menu-button/menu-button.js +10 -26
  358. package/dist/collection/components/menu-button/menu-button.md.css +15 -49
  359. package/dist/collection/components/menu-toggle/menu-toggle.js +5 -8
  360. package/dist/collection/components/modal/animations/sheet.js +2 -8
  361. package/dist/collection/components/modal/gestures/sheet.js +6 -10
  362. package/dist/collection/components/modal/modal.ios.css +70 -174
  363. package/dist/collection/components/modal/modal.js +93 -49
  364. package/dist/collection/components/modal/modal.md.css +70 -174
  365. package/dist/collection/components/nav/nav.css +1 -7
  366. package/dist/collection/components/nav/nav.js +5 -11
  367. package/dist/collection/components/nav-link/nav-link.js +1 -5
  368. package/dist/collection/components/note/note.ios.css +0 -12
  369. package/dist/collection/components/note/note.js +8 -11
  370. package/dist/collection/components/note/note.md.css +0 -12
  371. package/dist/collection/components/picker/picker.ios.css +3 -15
  372. package/dist/collection/components/picker/picker.js +5 -8
  373. package/dist/collection/components/picker/picker.md.css +3 -15
  374. package/dist/collection/components/picker-column/picker-column.css +2 -9
  375. package/dist/collection/components/picker-column/picker-column.js +7 -8
  376. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
  377. package/dist/collection/components/picker-column-option/picker-column-option.js +7 -13
  378. package/dist/collection/components/picker-column-option/picker-column-option.md.css +0 -6
  379. package/dist/collection/components/picker-legacy/picker.ios.css +1 -13
  380. package/dist/collection/components/picker-legacy/picker.js +6 -7
  381. package/dist/collection/components/picker-legacy/picker.md.css +1 -13
  382. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -12
  383. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  384. package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -12
  385. package/dist/collection/components/popover/popover.ios.css +1 -13
  386. package/dist/collection/components/popover/popover.js +14 -17
  387. package/dist/collection/components/popover/popover.md.css +1 -13
  388. package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -48
  389. package/dist/collection/components/progress-bar/progress-bar.js +7 -43
  390. package/dist/collection/components/progress-bar/progress-bar.md.css +17 -48
  391. package/dist/collection/components/radio/radio.ios.css +91 -134
  392. package/dist/collection/components/radio/radio.js +9 -12
  393. package/dist/collection/components/radio/radio.md.css +91 -134
  394. package/dist/collection/components/radio-group/radio-group.ios.css +23 -43
  395. package/dist/collection/components/radio-group/radio-group.js +6 -21
  396. package/dist/collection/components/radio-group/radio-group.md.css +23 -43
  397. package/dist/collection/components/range/range.ios.css +85 -128
  398. package/dist/collection/components/range/range.js +9 -12
  399. package/dist/collection/components/range/range.md.css +85 -128
  400. package/dist/collection/components/refresher/refresher.ios.css +1 -14
  401. package/dist/collection/components/refresher/refresher.js +8 -11
  402. package/dist/collection/components/refresher/refresher.md.css +2 -15
  403. package/dist/collection/components/refresher-content/refresher-content.js +7 -28
  404. package/dist/collection/components/reorder/reorder.ios.css +0 -6
  405. package/dist/collection/components/reorder/reorder.js +6 -33
  406. package/dist/collection/components/reorder/reorder.md.css +0 -6
  407. package/dist/collection/components/reorder-group/reorder-group.css +0 -6
  408. package/dist/collection/components/reorder-group/reorder-group.js +4 -8
  409. package/dist/collection/components/ripple-effect/{ripple-effect.common.css → ripple-effect.css} +1 -7
  410. package/dist/collection/components/ripple-effect/ripple-effect.js +6 -14
  411. package/dist/collection/components/route/route.js +0 -4
  412. package/dist/collection/components/router/router.js +0 -4
  413. package/dist/collection/components/router-link/router-link.css +2 -8
  414. package/dist/collection/components/router-link/router-link.js +5 -9
  415. package/dist/collection/components/router-outlet/router-outlet.css +1 -7
  416. package/dist/collection/components/router-outlet/router-outlet.js +3 -6
  417. package/dist/collection/components/row/row.css +0 -16
  418. package/dist/collection/components/row/row.js +2 -9
  419. package/dist/collection/components/searchbar/searchbar.ios.css +18 -56
  420. package/dist/collection/components/searchbar/searchbar.js +34 -181
  421. package/dist/collection/components/searchbar/searchbar.md.css +18 -56
  422. package/dist/collection/components/segment/segment.ios.css +2 -45
  423. package/dist/collection/components/segment/segment.js +8 -11
  424. package/dist/collection/components/segment/segment.md.css +2 -45
  425. package/dist/collection/components/segment-button/segment-button.ios.css +105 -146
  426. package/dist/collection/components/segment-button/segment-button.js +8 -11
  427. package/dist/collection/components/segment-button/segment-button.md.css +107 -148
  428. package/dist/collection/components/segment-content/segment-content.js +1 -1
  429. package/dist/collection/components/segment-view/segment-view.ios.css +0 -6
  430. package/dist/collection/components/segment-view/segment-view.js +4 -6
  431. package/dist/collection/components/segment-view/segment-view.md.css +0 -6
  432. package/dist/collection/components/select/select.ios.css +176 -315
  433. package/dist/collection/components/select/select.js +53 -156
  434. package/dist/collection/components/select/select.md.css +178 -331
  435. package/dist/collection/components/select-modal/select-modal.ios.css +0 -18
  436. package/dist/collection/components/select-modal/select-modal.js +4 -11
  437. package/dist/collection/components/select-modal/select-modal.md.css +3 -7
  438. package/dist/collection/components/select-option/select-option.js +2 -9
  439. package/dist/collection/components/select-popover/select-popover.ios.css +0 -18
  440. package/dist/collection/components/select-popover/select-popover.js +4 -12
  441. package/dist/collection/components/select-popover/select-popover.md.css +0 -18
  442. package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
  443. package/dist/collection/components/skeleton-text/skeleton-text.js +5 -9
  444. package/dist/collection/components/spinner/{spinner.ionic.css → spinner.css} +10 -77
  445. package/dist/collection/components/spinner/spinner.js +6 -47
  446. package/dist/collection/components/split-pane/split-pane.ios.css +2 -20
  447. package/dist/collection/components/split-pane/split-pane.js +8 -14
  448. package/dist/collection/components/split-pane/split-pane.md.css +2 -20
  449. package/dist/collection/components/tab/tab.js +2 -6
  450. package/dist/collection/components/tab-bar/tab-bar.ios.css +43 -71
  451. package/dist/collection/components/tab-bar/tab-bar.js +11 -78
  452. package/dist/collection/components/tab-bar/tab-bar.md.css +43 -71
  453. package/dist/collection/components/tab-button/tab-button.ios.css +95 -171
  454. package/dist/collection/components/tab-button/tab-button.js +9 -54
  455. package/dist/collection/components/tab-button/tab-button.md.css +93 -137
  456. package/dist/collection/components/tabs/tabs.css +1 -7
  457. package/dist/collection/components/tabs/tabs.js +1 -4
  458. package/dist/collection/components/text/text.css +0 -6
  459. package/dist/collection/components/text/text.js +6 -7
  460. package/dist/collection/components/textarea/textarea.ios.css +139 -275
  461. package/dist/collection/components/textarea/textarea.js +16 -76
  462. package/dist/collection/components/textarea/textarea.md.css +140 -288
  463. package/dist/collection/components/thumbnail/thumbnail.css +0 -6
  464. package/dist/collection/components/thumbnail/thumbnail.js +2 -9
  465. package/dist/collection/components/title/title.ios.css +4 -32
  466. package/dist/collection/components/title/title.js +7 -13
  467. package/dist/collection/components/title/title.md.css +4 -32
  468. package/dist/collection/components/toast/animations/utils.js +1 -1
  469. package/dist/collection/components/toast/toast.ios.css +45 -84
  470. package/dist/collection/components/toast/toast.js +12 -75
  471. package/dist/collection/components/toast/toast.md.css +45 -84
  472. package/dist/collection/components/toggle/toggle.ios.css +131 -247
  473. package/dist/collection/components/toggle/toggle.js +18 -73
  474. package/dist/collection/components/toggle/toggle.md.css +131 -244
  475. package/dist/collection/components/toolbar/toolbar.ios.css +47 -90
  476. package/dist/collection/components/toolbar/toolbar.js +13 -157
  477. package/dist/collection/components/toolbar/toolbar.md.css +47 -90
  478. package/dist/collection/global/ionic-global.js +13 -228
  479. package/dist/collection/utils/focus-visible.js +0 -22
  480. package/dist/collection/utils/framework-delegate.js +1 -3
  481. package/dist/collection/utils/helpers.js +2 -42
  482. package/dist/collection/utils/keyboard/keyboard-controller.js +1 -3
  483. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  484. package/dist/collection/utils/menu-controller/animations/push.js +1 -2
  485. package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
  486. package/dist/collection/utils/overlays.js +16 -13
  487. package/dist/collection/utils/test/playwright/generator.js +23 -48
  488. package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -14
  489. package/dist/collection/utils/test/playwright/page/utils/set-content.js +3 -26
  490. package/dist/collection/utils/transition/ios.transition.js +0 -1
  491. package/dist/docs.json +374 -8195
  492. package/dist/esm/{animation-DGDOQ6ES.js → animation-Dt8bGnA-.js} +1 -1
  493. package/dist/esm/{app-globals-BNKecRVD.js → app-globals-BDSf8fOA.js} +1 -1
  494. package/dist/esm/{button-active-C_l8DIlb.js → button-active-L570Swow.js} +1 -1
  495. package/dist/esm/{capacitor-CiBLEyrT.js → capacitor-CFERIeaU.js} +1 -1
  496. package/dist/esm/{data-DFCY8gnk.js → data-DCORV9FH.js} +5 -5
  497. package/dist/{cjs/focus-visible-BIj-I3-C.js → esm/focus-visible-BmVRXR1y.js} +1 -27
  498. package/dist/esm/{framework-delegate-D2mUP0WI.js → framework-delegate-BYawdMXj.js} +2 -4
  499. package/dist/esm/{haptic-7RTk38ue.js → haptic-DzAMWJuk.js} +1 -1
  500. package/dist/esm/hardware-back-button-CPLxO-Ev.js +115 -0
  501. package/dist/esm/{helpers-Bsml3FcE.js → helpers-DEn3pfjm.js} +3 -42
  502. package/dist/esm/{index-BpFi2B8W.js → index-Bs3kT4bc.js} +1 -1
  503. package/dist/esm/{index-DWD4QoaP.js → index-CvDIirVx.js} +10 -10
  504. package/dist/esm/{index-COG0_eom.js → index-DV3sJJW8.js} +1 -1
  505. package/dist/esm/index-ZjP4CjeZ.js +7 -0
  506. package/dist/esm/{index-rXea6WR_.js → index-ceb5RaMT.js} +2 -3
  507. package/dist/esm/{index-Cj1G4iWF.js → index-r2D9DEro.js} +3 -3
  508. package/dist/esm/index.js +11 -10
  509. package/dist/esm/{input-shims-Bz3HiPwU.js → input-shims-DyOpfTg6.js} +5 -6
  510. package/dist/esm/{input.utils-BQAE1QTA.js → input.utils-DrvTa8gz.js} +2 -2
  511. package/dist/esm/ion-accordion_2.entry.js +27 -56
  512. package/dist/esm/ion-action-sheet.entry.js +18 -21
  513. package/dist/esm/ion-alert.entry.js +20 -22
  514. package/dist/esm/ion-app_8.entry.js +151 -250
  515. package/dist/esm/ion-avatar_3.entry.js +13 -125
  516. package/dist/esm/ion-back-button.entry.js +20 -29
  517. package/dist/esm/ion-backdrop.entry.js +6 -9
  518. package/dist/esm/ion-breadcrumb_2.entry.js +17 -53
  519. package/dist/esm/ion-button_2.entry.js +11 -43
  520. package/dist/esm/ion-card_5.entry.js +29 -53
  521. package/dist/esm/ion-checkbox.entry.js +13 -31
  522. package/dist/esm/ion-chip.entry.js +8 -49
  523. package/dist/esm/ion-col_3.entry.js +57 -54
  524. package/dist/esm/ion-datetime-button.entry.js +7 -11
  525. package/dist/esm/ion-datetime_3.entry.js +40 -115
  526. package/dist/esm/ion-fab_3.entry.js +27 -43
  527. package/dist/esm/ion-img.entry.js +3 -7
  528. package/dist/esm/ion-infinite-scroll_2.entry.js +14 -89
  529. package/dist/esm/ion-input-otp.entry.js +7 -11
  530. package/dist/esm/ion-input-password-toggle.entry.js +14 -52
  531. package/dist/esm/ion-input.entry.js +32 -122
  532. package/dist/esm/ion-item-option_3.entry.js +19 -48
  533. package/dist/esm/ion-item_8.entry.js +48 -115
  534. package/dist/esm/ion-loading.entry.js +15 -17
  535. package/dist/esm/ion-menu_3.entry.js +27 -45
  536. package/dist/esm/ion-modal.entry.js +110 -57
  537. package/dist/esm/ion-nav_2.entry.js +10 -13
  538. package/dist/esm/ion-picker-column-option.entry.js +6 -10
  539. package/dist/esm/ion-picker-column.entry.js +11 -11
  540. package/dist/esm/ion-picker.entry.js +5 -9
  541. package/dist/esm/ion-popover.entry.js +16 -18
  542. package/dist/esm/ion-progress-bar.entry.js +7 -25
  543. package/dist/esm/ion-radio_2.entry.js +14 -24
  544. package/dist/esm/ion-range.entry.js +10 -14
  545. package/dist/esm/ion-refresher_2.entry.js +19 -37
  546. package/dist/esm/ion-reorder_2.entry.js +14 -38
  547. package/dist/esm/ion-ripple-effect.entry.js +6 -14
  548. package/dist/esm/ion-route_4.entry.js +7 -8
  549. package/dist/esm/ion-searchbar.entry.js +24 -137
  550. package/dist/esm/ion-segment-content.entry.js +1 -1
  551. package/dist/esm/ion-segment-view.entry.js +2 -5
  552. package/dist/esm/ion-segment_2.entry.js +14 -21
  553. package/dist/esm/ion-select-modal.entry.js +10 -16
  554. package/dist/esm/ion-select_3.entry.js +40 -131
  555. package/dist/esm/ion-spinner.entry.js +6 -28
  556. package/dist/esm/ion-split-pane.entry.js +8 -11
  557. package/dist/esm/ion-tab-bar_2.entry.js +21 -75
  558. package/dist/esm/ion-tab_2.entry.js +6 -7
  559. package/dist/esm/ion-text.entry.js +5 -5
  560. package/dist/esm/ion-textarea.entry.js +15 -55
  561. package/dist/esm/ion-toast.entry.js +17 -40
  562. package/dist/esm/ion-toggle.entry.js +22 -79
  563. package/dist/esm/ionic-global-CDrldh-5.js +146 -0
  564. package/dist/esm/ionic.js +3 -3
  565. package/dist/esm/{ios.transition-DvzxRGcW.js → ios.transition-BDzw0_Hm.js} +4 -6
  566. package/dist/esm/{keyboard-WCK1pWfR.js → keyboard-CUw4ekVy.js} +1 -1
  567. package/dist/esm/{keyboard-controller-Bc4alOiF.js → keyboard-controller-BaaVITYt.js} +3 -5
  568. package/dist/esm/{keyboard-DuUgrXrK.js → keyboard-ywgs5efA.js} +3 -4
  569. package/dist/esm/loader.js +3 -3
  570. package/dist/esm/{md.transition-DV0cjDzj.js → md.transition-BzDYi3qq.js} +4 -5
  571. package/dist/esm/{notch-controller-DO30Bsls.js → notch-controller-BwelN_JM.js} +2 -2
  572. package/dist/esm/{overlays-Da_6xSKI.js → overlays-DYKBVm6h.js} +21 -16
  573. package/dist/esm/{status-tap-DXVlluKS.js → status-tap-5DQ7Fc4V.js} +2 -3
  574. package/dist/esm/{swipe-back-DNhAt9fY.js → swipe-back-BKw2CAHc.js} +1 -2
  575. package/dist/html.html-data.json +214 -2520
  576. package/dist/ionic/index.esm.js +1 -1
  577. package/dist/ionic/ionic.esm.js +1 -1
  578. package/dist/ionic/p-020af078.entry.js +4 -0
  579. package/dist/ionic/p-038f3a87.entry.js +4 -0
  580. package/dist/ionic/p-074839fc.entry.js +4 -0
  581. package/dist/ionic/p-0dfa5a37.entry.js +4 -0
  582. package/dist/ionic/p-11518b31.entry.js +4 -0
  583. package/dist/ionic/p-1647c46c.entry.js +4 -0
  584. package/dist/ionic/p-1cf19c5a.entry.js +4 -0
  585. package/dist/ionic/p-2a939845.entry.js +4 -0
  586. package/dist/ionic/p-316c0420.entry.js +4 -0
  587. package/dist/ionic/p-31f7095f.entry.js +4 -0
  588. package/dist/ionic/p-370e4237.entry.js +4 -0
  589. package/dist/ionic/p-3a6caca9.entry.js +4 -0
  590. package/dist/ionic/p-3fad4ab5.entry.js +4 -0
  591. package/dist/ionic/p-40c261a3.entry.js +4 -0
  592. package/dist/ionic/p-43ed1ef5.entry.js +4 -0
  593. package/dist/ionic/p-46d74291.entry.js +4 -0
  594. package/dist/ionic/p-49d06882.entry.js +4 -0
  595. package/dist/ionic/p-4c85d268.entry.js +4 -0
  596. package/dist/ionic/p-4e41ea20.entry.js +4 -0
  597. package/dist/ionic/p-51a60e0f.entry.js +4 -0
  598. package/dist/ionic/p-582824c5.entry.js +4 -0
  599. package/dist/ionic/p-6241ce47.entry.js +4 -0
  600. package/dist/ionic/p-639dd543.entry.js +4 -0
  601. package/dist/ionic/p-6444c606.entry.js +4 -0
  602. package/dist/ionic/p-675b1a31.entry.js +4 -0
  603. package/dist/ionic/p-6d070558.entry.js +4 -0
  604. package/dist/ionic/p-7268efa5.entry.js +4 -0
  605. package/dist/ionic/p-72c38b88.entry.js +4 -0
  606. package/dist/ionic/p-7928cc4d.entry.js +4 -0
  607. package/dist/ionic/p-79bd78f9.entry.js +4 -0
  608. package/dist/ionic/p-86f53961.entry.js +4 -0
  609. package/dist/ionic/p-9084d52f.entry.js +4 -0
  610. package/dist/ionic/p-94de5cfa.entry.js +4 -0
  611. package/dist/ionic/p-9575b654.entry.js +4 -0
  612. package/dist/ionic/p-985f02a8.entry.js +4 -0
  613. package/dist/ionic/p-9eeaBrnk.js +4 -0
  614. package/dist/ionic/p-B0q1YL7N.js +4 -0
  615. package/dist/ionic/p-BFvmZNyx.js +4 -0
  616. package/dist/ionic/p-BKc55Xev.js +4 -0
  617. package/dist/ionic/p-BOVrCkpJ.js +4 -0
  618. package/dist/ionic/p-BYEqWnSg.js +4 -0
  619. package/dist/ionic/p-BmVRXR1y.js +4 -0
  620. package/dist/ionic/p-Bmgaetn_.js +4 -0
  621. package/dist/ionic/p-C7hRNDhM.js +4 -0
  622. package/dist/ionic/p-CHK505Co.js +4 -0
  623. package/dist/ionic/p-CIGNaXM1.js +4 -0
  624. package/dist/ionic/{p-BbT4IAlw.js → p-CJxh_yLS.js} +1 -1
  625. package/dist/ionic/{p-DxFexTIr.js → p-CKvCXMs9.js} +1 -1
  626. package/dist/ionic/p-CTfR9YZG.js +4 -0
  627. package/dist/ionic/p-CtWGkNnJ.js +4 -0
  628. package/dist/ionic/{p-B3uz75uZ.js → p-CwgG81ZD.js} +1 -1
  629. package/dist/ionic/p-D-eFFUkA.js +4 -0
  630. package/dist/ionic/{p-HpOiAvpC.js → p-D0dMcSkw.js} +1 -1
  631. package/dist/ionic/{p-Q7JLYEUZ.js → p-D13Eaw-8.js} +1 -1
  632. package/dist/ionic/p-DCv9sLH2.js +4 -0
  633. package/dist/ionic/p-DDb5r57F.js +4 -0
  634. package/dist/ionic/p-DNcfiJwE.js +4 -0
  635. package/dist/ionic/{p-DxVdyQoe.js → p-DUt5fQmA.js} +1 -1
  636. package/dist/ionic/{p-COG0_eom.js → p-DV3sJJW8.js} +1 -1
  637. package/dist/ionic/p-DZRJwG4S.js +4 -0
  638. package/dist/ionic/{p-DBaOCAfc.js → p-Dc45iWE4.js} +1 -1
  639. package/dist/ionic/p-QHYY4sjU.js +4 -0
  640. package/dist/ionic/p-ZjP4CjeZ.js +4 -0
  641. package/dist/ionic/p-a127bee2.entry.js +4 -0
  642. package/dist/ionic/p-a480563a.entry.js +4 -0
  643. package/dist/ionic/p-ac4eb91d.entry.js +4 -0
  644. package/dist/ionic/p-b0a7585c.entry.js +4 -0
  645. package/dist/ionic/p-b4b6513a.entry.js +4 -0
  646. package/dist/ionic/p-b57c6d3e.entry.js +4 -0
  647. package/dist/ionic/p-c19f63d0.entry.js +4 -0
  648. package/dist/ionic/p-caa8efa1.entry.js +4 -0
  649. package/dist/ionic/p-cc45bcbc.entry.js +4 -0
  650. package/dist/ionic/p-d0a2a1ab.entry.js +4 -0
  651. package/dist/ionic/p-d126e8d3.entry.js +4 -0
  652. package/dist/ionic/p-d1f54e28.entry.js +4 -0
  653. package/dist/ionic/p-d3014190.entry.js +4 -0
  654. package/dist/ionic/p-da7d04cc.entry.js +4 -0
  655. package/dist/ionic/p-dbbe606a.entry.js +4 -0
  656. package/dist/ionic/p-ede27a66.entry.js +4 -0
  657. package/dist/ionic/p-f8f22cc0.entry.js +4 -0
  658. package/dist/types/components/accordion/accordion.d.ts +3 -5
  659. package/dist/types/components/accordion-group/accordion-group.d.ts +1 -12
  660. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
  661. package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
  662. package/dist/types/components/alert/alert-interface.d.ts +7 -3
  663. package/dist/types/components/alert/alert.d.ts +2 -3
  664. package/dist/types/components/app/app.d.ts +2 -4
  665. package/dist/types/components/avatar/avatar.d.ts +0 -32
  666. package/dist/types/components/back-button/back-button.d.ts +1 -2
  667. package/dist/types/components/backdrop/backdrop.d.ts +0 -4
  668. package/dist/types/components/badge/badge.d.ts +1 -34
  669. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -4
  670. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  671. package/dist/types/components/button/button.d.ts +6 -19
  672. package/dist/types/components/buttons/buttons.d.ts +1 -5
  673. package/dist/types/components/card/card.d.ts +1 -8
  674. package/dist/types/components/card-content/card-content.d.ts +1 -2
  675. package/dist/types/components/card-header/card-header.d.ts +2 -3
  676. package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
  677. package/dist/types/components/card-title/card-title.d.ts +1 -2
  678. package/dist/types/components/checkbox/checkbox.d.ts +4 -14
  679. package/dist/types/components/chip/chip.d.ts +1 -26
  680. package/dist/types/components/col/col.d.ts +5 -52
  681. package/dist/types/components/content/content.d.ts +0 -3
  682. package/dist/types/components/datetime/datetime.d.ts +1 -26
  683. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  684. package/dist/types/components/datetime-button/datetime-button.d.ts +1 -2
  685. package/dist/types/components/fab/fab.d.ts +0 -4
  686. package/dist/types/components/fab-button/fab-button.d.ts +3 -5
  687. package/dist/types/components/fab-list/fab-list.d.ts +0 -4
  688. package/dist/types/components/footer/footer.d.ts +3 -4
  689. package/dist/types/components/grid/grid.d.ts +0 -4
  690. package/dist/types/components/header/header.d.ts +3 -9
  691. package/dist/types/components/header/header.utils.d.ts +3 -3
  692. package/dist/types/components/img/img.d.ts +0 -3
  693. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -21
  694. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +0 -4
  695. package/dist/types/components/input/input.d.ts +5 -31
  696. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +0 -2
  697. package/dist/types/components/item/item.d.ts +4 -11
  698. package/dist/types/components/item-divider/item-divider.d.ts +1 -2
  699. package/dist/types/components/item-group/item-group.d.ts +0 -4
  700. package/dist/types/components/item-option/item-option.d.ts +1 -18
  701. package/dist/types/components/item-options/item-options.d.ts +0 -4
  702. package/dist/types/components/item-sliding/item-sliding.d.ts +0 -4
  703. package/dist/types/components/label/label.d.ts +1 -2
  704. package/dist/types/components/list/list.d.ts +1 -15
  705. package/dist/types/components/list-header/list-header.d.ts +1 -2
  706. package/dist/types/components/loading/loading-interface.d.ts +7 -2
  707. package/dist/types/components/loading/loading.d.ts +2 -3
  708. package/dist/types/components/menu/menu.d.ts +0 -3
  709. package/dist/types/components/menu-button/menu-button.d.ts +1 -3
  710. package/dist/types/components/menu-toggle/menu-toggle.d.ts +0 -3
  711. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  712. package/dist/types/components/modal/modal-interface.d.ts +7 -4
  713. package/dist/types/components/modal/modal.d.ts +14 -11
  714. package/dist/types/components/nav/nav-interface.d.ts +1 -9
  715. package/dist/types/components/nav/nav.d.ts +1 -5
  716. package/dist/types/components/nav-link/nav-link.d.ts +0 -4
  717. package/dist/types/components/note/note.d.ts +1 -2
  718. package/dist/types/components/picker/picker.d.ts +1 -2
  719. package/dist/types/components/picker-column/picker-column.d.ts +1 -2
  720. package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
  721. package/dist/types/components/picker-legacy/picker.d.ts +1 -2
  722. package/dist/types/components/popover/popover-interface.d.ts +6 -3
  723. package/dist/types/components/popover/popover.d.ts +5 -6
  724. package/dist/types/components/progress-bar/progress-bar.d.ts +1 -10
  725. package/dist/types/components/radio/radio.d.ts +1 -2
  726. package/dist/types/components/radio-group/radio-group.d.ts +0 -8
  727. package/dist/types/components/range/range.d.ts +1 -2
  728. package/dist/types/components/refresher/refresher.d.ts +1 -2
  729. package/dist/types/components/refresher-content/refresher-content.d.ts +0 -4
  730. package/dist/types/components/reorder/reorder.d.ts +0 -9
  731. package/dist/types/components/reorder-group/reorder-group.d.ts +0 -4
  732. package/dist/types/components/ripple-effect/ripple-effect.d.ts +0 -4
  733. package/dist/types/components/route/route.d.ts +0 -4
  734. package/dist/types/components/router/router.d.ts +0 -4
  735. package/dist/types/components/router-link/router-link.d.ts +0 -4
  736. package/dist/types/components/router-outlet/router-outlet.d.ts +1 -4
  737. package/dist/types/components/row/row.d.ts +0 -4
  738. package/dist/types/components/searchbar/searchbar.d.ts +9 -51
  739. package/dist/types/components/segment/segment.d.ts +1 -2
  740. package/dist/types/components/segment-button/segment-button.d.ts +1 -2
  741. package/dist/types/components/select/select.d.ts +13 -41
  742. package/dist/types/components/select-modal/select-modal.d.ts +0 -1
  743. package/dist/types/components/select-option/select-option.d.ts +0 -4
  744. package/dist/types/components/select-popover/select-popover.d.ts +0 -3
  745. package/dist/types/components/skeleton-text/skeleton-text.d.ts +0 -4
  746. package/dist/types/components/spinner/spinner.d.ts +0 -15
  747. package/dist/types/components/split-pane/split-pane.d.ts +0 -4
  748. package/dist/types/components/tab/tab.d.ts +0 -4
  749. package/dist/types/components/tab-bar/tab-bar.d.ts +2 -22
  750. package/dist/types/components/tab-button/tab-button.d.ts +1 -12
  751. package/dist/types/components/tabs/tabs.d.ts +0 -3
  752. package/dist/types/components/text/text.d.ts +1 -2
  753. package/dist/types/components/textarea/textarea.d.ts +4 -17
  754. package/dist/types/components/thumbnail/thumbnail.d.ts +0 -4
  755. package/dist/types/components/title/title.d.ts +0 -4
  756. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  757. package/dist/types/components/toast/toast-interface.d.ts +7 -3
  758. package/dist/types/components/toast/toast.d.ts +2 -19
  759. package/dist/types/components/toggle/toggle.d.ts +1 -15
  760. package/dist/types/components/toolbar/toolbar.d.ts +3 -20
  761. package/dist/types/components.d.ts +196 -1593
  762. package/dist/types/global/ionic-global.d.ts +2 -27
  763. package/dist/types/interface.d.ts +0 -3
  764. package/dist/types/utils/config.d.ts +2 -106
  765. package/dist/types/utils/focus-visible.d.ts +0 -13
  766. package/dist/types/utils/helpers.d.ts +0 -11
  767. package/dist/types/utils/overlays-interface.d.ts +1 -31
  768. package/dist/types/utils/test/playwright/generator.d.ts +2 -31
  769. package/hydrate/index.js +1043 -2887
  770. package/hydrate/index.mjs +1043 -2887
  771. package/package.json +4 -8
  772. package/components/caret-down.js +0 -6
  773. package/components/caret-left.js +0 -6
  774. package/components/caret-right.js +0 -6
  775. package/components/ion-divider.d.ts +0 -11
  776. package/components/ion-divider.js +0 -72
  777. package/components/list2.js +0 -6
  778. package/components/x.js +0 -6
  779. package/css/ionic/bundle.ionic.css +0 -1
  780. package/css/ionic/bundle.ionic.css.map +0 -1
  781. package/css/ionic/core.ionic.css +0 -1
  782. package/css/ionic/core.ionic.css.map +0 -1
  783. package/css/ionic/global.bundle.ionic.css +0 -1
  784. package/css/ionic/global.bundle.ionic.css.map +0 -1
  785. package/css/ionic/ionic-swiper.ionic.css +0 -1
  786. package/css/ionic/ionic-swiper.ionic.css.map +0 -1
  787. package/css/ionic/link.ionic.css +0 -1
  788. package/css/ionic/link.ionic.css.map +0 -1
  789. package/css/ionic/structure.ionic.css +0 -1
  790. package/css/ionic/structure.ionic.css.map +0 -1
  791. package/css/ionic/typography.ionic.css +0 -1
  792. package/css/ionic/typography.ionic.css.map +0 -1
  793. package/css/ionic/utils.bundle.ionic.css +0 -1
  794. package/css/ionic/utils.bundle.ionic.css.map +0 -1
  795. package/dist/cjs/caret-down-vtVgfXIs.js +0 -8
  796. package/dist/cjs/caret-left-CxZXLRv5.js +0 -8
  797. package/dist/cjs/caret-right-CRCgv98E.js +0 -8
  798. package/dist/cjs/ion-divider.cjs.entry.js +0 -51
  799. package/dist/cjs/ionic-global-DuRUel5m.js +0 -491
  800. package/dist/cjs/list-a-7GSA6K.js +0 -8
  801. package/dist/cjs/x-BTF99yFH.js +0 -8
  802. package/dist/collection/components/accordion/accordion.ionic.css +0 -196
  803. package/dist/collection/components/accordion-group/accordion-group.ionic.css +0 -93
  804. package/dist/collection/components/avatar/avatar.ionic.css +0 -391
  805. package/dist/collection/components/backdrop/backdrop.ionic.css +0 -109
  806. package/dist/collection/components/badge/badge.ionic.css +0 -275
  807. package/dist/collection/components/button/button.ionic.css +0 -636
  808. package/dist/collection/components/buttons/buttons.ionic.css +0 -97
  809. package/dist/collection/components/card/card.ionic.css +0 -144
  810. package/dist/collection/components/card-content/card-content.ionic.css +0 -92
  811. package/dist/collection/components/card-header/card-header.ionic.css +0 -85
  812. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +0 -144
  813. package/dist/collection/components/checkbox/checkbox.ionic.css +0 -539
  814. package/dist/collection/components/chip/chip.ionic.css +0 -215
  815. package/dist/collection/components/datetime/datetime.ionic.css +0 -711
  816. package/dist/collection/components/divider/divider.ionic.css +0 -148
  817. package/dist/collection/components/divider/divider.ios.css +0 -87
  818. package/dist/collection/components/divider/divider.js +0 -94
  819. package/dist/collection/components/divider/divider.md.css +0 -87
  820. package/dist/collection/components/header/header.ionic.css +0 -97
  821. package/dist/collection/components/input/input.ionic.css +0 -885
  822. package/dist/collection/components/input-otp/input-otp.ionic.css +0 -369
  823. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +0 -78
  824. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +0 -61
  825. package/dist/collection/components/item/item.ionic.css +0 -508
  826. package/dist/collection/components/item-option/item-option.ionic.css +0 -278
  827. package/dist/collection/components/item-options/item-options.ionic.css +0 -221
  828. package/dist/collection/components/list/list.ionic.css +0 -212
  829. package/dist/collection/components/list-header/list-header.ionic.css +0 -190
  830. package/dist/collection/components/menu-button/menu-button.ionic.css +0 -236
  831. package/dist/collection/components/modal/modal.ionic.css +0 -247
  832. package/dist/collection/components/progress-bar/progress-bar.ionic.css +0 -287
  833. package/dist/collection/components/radio/radio.ionic.css +0 -422
  834. package/dist/collection/components/radio-group/radio-group.ionic.css +0 -119
  835. package/dist/collection/components/range/range.ionic.css +0 -563
  836. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +0 -215
  837. package/dist/collection/components/searchbar/searchbar.ionic.css +0 -626
  838. package/dist/collection/components/segment/segment.ionic.css +0 -115
  839. package/dist/collection/components/segment-button/segment-button.ionic.css +0 -353
  840. package/dist/collection/components/select/select.ionic.css +0 -777
  841. package/dist/collection/components/select-modal/select-modal.ionic.css +0 -130
  842. package/dist/collection/components/spinner/spinner.native.css +0 -198
  843. package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -201
  844. package/dist/collection/components/tab-button/tab-button.ionic.css +0 -337
  845. package/dist/collection/components/textarea/textarea.ionic.css +0 -885
  846. package/dist/collection/components/title/title.ionic.css +0 -127
  847. package/dist/collection/components/toast/toast.ionic.css +0 -394
  848. package/dist/collection/components/toggle/toggle.ionic.css +0 -508
  849. package/dist/collection/components/toolbar/test/image.svg +0 -1
  850. package/dist/collection/components/toolbar/toolbar.ionic.css +0 -241
  851. package/dist/esm/caret-down-D1t981Ih.js +0 -6
  852. package/dist/esm/caret-left-fIOYmaqA.js +0 -6
  853. package/dist/esm/caret-right-BYSs-jZz.js +0 -6
  854. package/dist/esm/ion-divider.entry.js +0 -49
  855. package/dist/esm/ionic-global-2R0iPB51.js +0 -480
  856. package/dist/esm/list-Dhi5xtNS.js +0 -6
  857. package/dist/esm/x-BDqjX7Z_.js +0 -6
  858. package/dist/ionic/p--8Ga2Cg0.js +0 -4
  859. package/dist/ionic/p-0774e5a0.entry.js +0 -4
  860. package/dist/ionic/p-105826fe.entry.js +0 -4
  861. package/dist/ionic/p-14346334.entry.js +0 -4
  862. package/dist/ionic/p-1fead95f.entry.js +0 -4
  863. package/dist/ionic/p-2061a732.entry.js +0 -4
  864. package/dist/ionic/p-23e4b68a.entry.js +0 -4
  865. package/dist/ionic/p-2c504bd3.entry.js +0 -4
  866. package/dist/ionic/p-2c96bfe6.entry.js +0 -4
  867. package/dist/ionic/p-36f2ff62.entry.js +0 -4
  868. package/dist/ionic/p-3948040f.entry.js +0 -4
  869. package/dist/ionic/p-3a481932.entry.js +0 -4
  870. package/dist/ionic/p-3d0e07cf.entry.js +0 -4
  871. package/dist/ionic/p-418e4330.entry.js +0 -4
  872. package/dist/ionic/p-48366887.entry.js +0 -4
  873. package/dist/ionic/p-495912a4.entry.js +0 -4
  874. package/dist/ionic/p-4e13d498.entry.js +0 -4
  875. package/dist/ionic/p-55734084.entry.js +0 -4
  876. package/dist/ionic/p-55e2352e.entry.js +0 -4
  877. package/dist/ionic/p-59a79bd9.entry.js +0 -4
  878. package/dist/ionic/p-66397fac.entry.js +0 -4
  879. package/dist/ionic/p-66d094b2.entry.js +0 -4
  880. package/dist/ionic/p-698ae42d.entry.js +0 -4
  881. package/dist/ionic/p-6a7a53e5.entry.js +0 -4
  882. package/dist/ionic/p-6bb99f41.entry.js +0 -4
  883. package/dist/ionic/p-74601090.entry.js +0 -4
  884. package/dist/ionic/p-7894f98d.entry.js +0 -4
  885. package/dist/ionic/p-78f1c348.entry.js +0 -4
  886. package/dist/ionic/p-826267d6.entry.js +0 -4
  887. package/dist/ionic/p-844bd58c.entry.js +0 -4
  888. package/dist/ionic/p-931fd886.entry.js +0 -4
  889. package/dist/ionic/p-9839d6df.entry.js +0 -4
  890. package/dist/ionic/p-9a20f9cb.entry.js +0 -4
  891. package/dist/ionic/p-9c3361e4.entry.js +0 -4
  892. package/dist/ionic/p-9e3fa08c.entry.js +0 -4
  893. package/dist/ionic/p-B-N4FEiY.js +0 -4
  894. package/dist/ionic/p-BDqjX7Z_.js +0 -4
  895. package/dist/ionic/p-BRd1Ag6P.js +0 -4
  896. package/dist/ionic/p-BYSs-jZz.js +0 -4
  897. package/dist/ionic/p-BiTKUjko.js +0 -4
  898. package/dist/ionic/p-CGo9Zrhw.js +0 -4
  899. package/dist/ionic/p-CK1xn1Nt.js +0 -4
  900. package/dist/ionic/p-CK4YXTyz.js +0 -4
  901. package/dist/ionic/p-CeO9Shc9.js +0 -4
  902. package/dist/ionic/p-CkzsSTjr.js +0 -4
  903. package/dist/ionic/p-D1t981Ih.js +0 -4
  904. package/dist/ionic/p-DPNSAVjP.js +0 -4
  905. package/dist/ionic/p-D_8SMvQ3.js +0 -4
  906. package/dist/ionic/p-DdaOdN_z.js +0 -4
  907. package/dist/ionic/p-Dhi5xtNS.js +0 -4
  908. package/dist/ionic/p-Dq8ap6AD.js +0 -4
  909. package/dist/ionic/p-Dv5UHqHj.js +0 -4
  910. package/dist/ionic/p-DyaKZbAH.js +0 -4
  911. package/dist/ionic/p-W-2TssC9.js +0 -4
  912. package/dist/ionic/p-a2004213.entry.js +0 -4
  913. package/dist/ionic/p-a2179948.entry.js +0 -4
  914. package/dist/ionic/p-a3fefcf5.entry.js +0 -4
  915. package/dist/ionic/p-a57c0cce.entry.js +0 -4
  916. package/dist/ionic/p-b652eff7.entry.js +0 -4
  917. package/dist/ionic/p-b65b47bf.entry.js +0 -4
  918. package/dist/ionic/p-b7f5ae4a.entry.js +0 -4
  919. package/dist/ionic/p-c289efa5.entry.js +0 -4
  920. package/dist/ionic/p-ce2762f2.entry.js +0 -4
  921. package/dist/ionic/p-d36f836a.entry.js +0 -4
  922. package/dist/ionic/p-d774af7c.entry.js +0 -4
  923. package/dist/ionic/p-da0a2ca6.entry.js +0 -4
  924. package/dist/ionic/p-e2171c27.entry.js +0 -4
  925. package/dist/ionic/p-e3daf16c.entry.js +0 -4
  926. package/dist/ionic/p-ecc8aebb.entry.js +0 -4
  927. package/dist/ionic/p-f5fe6d47.entry.js +0 -4
  928. package/dist/ionic/p-fIOYmaqA.js +0 -4
  929. package/dist/ionic/p-fa6895f9.entry.js +0 -4
  930. package/dist/ionic/p-fa7fe783.entry.js +0 -4
  931. package/dist/ionic/p-ff69e0c6.entry.js +0 -4
  932. package/dist/ionic/p-vXpMhGrs.js +0 -4
  933. package/dist/ionic/p-vpXGWZiy.js +0 -4
  934. package/dist/types/components/divider/divider.d.ts +0 -20
  935. /package/dist/collection/components/{refresher-content/refresher-content.css → input-password-toggle/input-password-toggle.css} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../src/css/text-transformation.scss","../src/themes/mixins.scss"],"names":[],"mappings":"AAaI,oBAEE,oCAGF,oBAEE,oCAGF,qBAEE,qCCkJF,yBD9JA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCCkJF,yBD9JA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCCkJF,yBD9JA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCCkJF,0BD9JA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE","file":"text-transformation.css","sourcesContent":["@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","@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"]}
1
+ {"version":3,"sourceRoot":"","sources":["../src/css/text-transformation.scss","../src/themes/ionic.mixins.scss"],"names":[],"mappings":"AAaI,oBAEE,oCAGF,oBAEE,oCAGF,qBAEE,qCCwIF,yBDpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCCwIF,yBDpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCCwIF,yBDpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCCwIF,0BDpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE","file":"text-transformation.css","sourcesContent":["@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","\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"]}
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../src/css/typography.scss","../src/themes/mixins.scss"],"names":[],"mappings":"AA8BA,KACE,mCAOF,uCACE,KAIE,2DAIJ,EACE,6BACA,wCAGF,kBCqTE,WD/SgB,KCgThB,cDhT4B,KAE5B,YArDqB,IAuDrB,YApDqB,IAuDvB,GCwSE,WDvSgB,KAEhB,UAvDa,SA0Df,GCkSE,WDjSgB,KAEhB,UA1Da,OA6Df,GACE,UA3Da,SA8Df,GACE,UA5Da,QA+Df,GACE,UA7Da,SAgEf,GACE,UA9Da,KAiEf,MACE,cAGF,QAEE,kBAEA,cAEA,cAEA,wBAGF,IACE,WAGF,IACE","file":"typography.css","sourcesContent":["@import \"../themes/native/native.globals\";\n@import \"../themes/mixins\";\n\n// Typography\n// --------------------------------------------------\n\n/// @prop - Font weight of all headings\n$headings-font-weight: 500;\n\n/// @prop - Line height of all headings\n$headings-line-height: 1.2;\n\n/// @prop - Font size of heading level 1\n$h1-font-size: dynamic-font(26px);\n\n/// @prop - Font size of heading level 2\n$h2-font-size: dynamic-font(24px);\n\n/// @prop - Font size of heading level 3\n$h3-font-size: dynamic-font(22px);\n\n/// @prop - Font size of heading level 4\n$h4-font-size: dynamic-font(20px);\n\n/// @prop - Font size of heading level 5\n$h5-font-size: dynamic-font(18px);\n\n/// @prop - Font size of heading level 6\n$h6-font-size: dynamic-font(16px);\n\nhtml {\n font-family: var(--ion-font-family);\n}\n\n/**\n * Dynamic Type is an iOS-only feature, so\n * this should only be enabled on iOS devices.\n */\n@supports (-webkit-touch-callout: none) {\n html {\n /**\n * Includes fallback if Dynamic Type is not enabled.\n */\n font: var(--ion-dynamic-font, 16px var(--ion-font-family));\n }\n}\n\na {\n background-color: transparent;\n color: ion-color(primary, base);\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n @include margin(16px, null, 10px, null);\n\n font-weight: $headings-font-weight;\n\n line-height: $headings-line-height;\n}\n\nh1 {\n @include margin(20px, null, null, null);\n\n font-size: $h1-font-size;\n}\n\nh2 {\n @include margin(18px, null, null, null);\n\n font-size: $h2-font-size;\n}\n\nh3 {\n font-size: $h3-font-size;\n}\n\nh4 {\n font-size: $h4-font-size;\n}\n\nh5 {\n font-size: $h5-font-size;\n}\n\nh6 {\n font-size: $h6-font-size;\n}\n\nsmall {\n font-size: 75%;\n}\n\nsub,\nsup {\n position: relative;\n\n font-size: 75%;\n\n line-height: 0;\n\n vertical-align: baseline;\n}\n\nsup {\n top: -0.5em;\n}\n\nsub {\n bottom: -0.25em;\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"]}
1
+ {"version":3,"sourceRoot":"","sources":["../src/css/typography.scss","../src/themes/ionic.mixins.scss"],"names":[],"mappings":"AA8BA,KACE,mCAOF,uCACE,KAIE,2DAIJ,EACE,6BACA,wCAGF,kBC0SE,WDpSgB,KCqShB,cDrS4B,KAE5B,YArD6B,IAuD7B,YApD6B,IAuD/B,GC6RE,WD5RgB,KAEhB,UAvD6B,SA0D/B,GCuRE,WDtRgB,KAEhB,UA1D6B,OA6D/B,GACE,UA3D6B,SA8D/B,GACE,UA5D6B,QA+D/B,GACE,UA7D6B,SAgE/B,GACE,UA9D6B,KAiE/B,MACE,cAGF,QAEE,kBAEA,cAEA,cAEA,wBAGF,IACE,WAGF,IACE","file":"typography.css","sourcesContent":["@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Typography\n// --------------------------------------------------\n\n/// @prop - Font weight of all headings\n$headings-font-weight: 500;\n\n/// @prop - Line height of all headings\n$headings-line-height: 1.2;\n\n/// @prop - Font size of heading level 1\n$h1-font-size: dynamic-font(26px);\n\n/// @prop - Font size of heading level 2\n$h2-font-size: dynamic-font(24px);\n\n/// @prop - Font size of heading level 3\n$h3-font-size: dynamic-font(22px);\n\n/// @prop - Font size of heading level 4\n$h4-font-size: dynamic-font(20px);\n\n/// @prop - Font size of heading level 5\n$h5-font-size: dynamic-font(18px);\n\n/// @prop - Font size of heading level 6\n$h6-font-size: dynamic-font(16px);\n\nhtml {\n font-family: var(--ion-font-family);\n}\n\n/**\n * Dynamic Type is an iOS-only feature, so\n * this should only be enabled on iOS devices.\n */\n@supports (-webkit-touch-callout: none) {\n html {\n /**\n * Includes fallback if Dynamic Type is not enabled.\n */\n font: var(--ion-dynamic-font, 16px var(--ion-font-family));\n }\n}\n\na {\n background-color: transparent;\n color: ion-color(primary, base);\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n @include margin(16px, null, 10px, null);\n\n font-weight: $headings-font-weight;\n\n line-height: $headings-line-height;\n}\n\nh1 {\n @include margin(20px, null, null, null);\n\n font-size: $h1-font-size;\n}\n\nh2 {\n @include margin(18px, null, null, null);\n\n font-size: $h2-font-size;\n}\n\nh3 {\n font-size: $h3-font-size;\n}\n\nh4 {\n font-size: $h4-font-size;\n}\n\nh5 {\n font-size: $h5-font-size;\n}\n\nh6 {\n font-size: $h6-font-size;\n}\n\nsmall {\n font-size: 75%;\n}\n\nsub,\nsup {\n position: relative;\n\n font-size: 75%;\n\n line-height: 0;\n\n vertical-align: baseline;\n}\n\nsup {\n top: -.5em;\n}\n\nsub {\n bottom: -.25em;\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"]}
@@ -1 +1 @@
1
- .ion-no-padding{--padding-start: 0;--padding-end: 0;--padding-top: 0;--padding-bottom: 0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}.ion-padding{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-top{--padding-top: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px)}.ion-padding-start{--padding-start: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px)}.ion-padding-end{--padding-end: var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-padding-bottom{--padding-bottom: var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-vertical{--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-horizontal{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-no-margin{--margin-start: 0;--margin-end: 0;--margin-top: 0;--margin-bottom: 0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.ion-margin{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-top{--margin-top: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px)}.ion-margin-start{--margin-start: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px)}.ion-margin-end{--margin-end: var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-margin-bottom{--margin-bottom: var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-vertical{--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-horizontal{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-float-left{float:left !important}.ion-float-right{float:right !important}.ion-float-start{float:left !important}:host-context([dir=rtl]) .ion-float-start{float:right !important}[dir=rtl] .ion-float-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-start:dir(rtl){float:right !important}}.ion-float-end{float:right !important}:host-context([dir=rtl]) .ion-float-end{float:left !important}[dir=rtl] .ion-float-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-end:dir(rtl){float:left !important}}@media(min-width: 576px){.ion-float-sm-left{float:left !important}.ion-float-sm-right{float:right !important}.ion-float-sm-start{float:left !important}:host-context([dir=rtl]) .ion-float-sm-start{float:right !important}[dir=rtl] .ion-float-sm-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-sm-start:dir(rtl){float:right !important}}.ion-float-sm-end{float:right !important}:host-context([dir=rtl]) .ion-float-sm-end{float:left !important}[dir=rtl] .ion-float-sm-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-sm-end:dir(rtl){float:left !important}}}@media(min-width: 768px){.ion-float-md-left{float:left !important}.ion-float-md-right{float:right !important}.ion-float-md-start{float:left !important}:host-context([dir=rtl]) .ion-float-md-start{float:right !important}[dir=rtl] .ion-float-md-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-md-start:dir(rtl){float:right !important}}.ion-float-md-end{float:right !important}:host-context([dir=rtl]) .ion-float-md-end{float:left !important}[dir=rtl] .ion-float-md-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-md-end:dir(rtl){float:left !important}}}@media(min-width: 992px){.ion-float-lg-left{float:left !important}.ion-float-lg-right{float:right !important}.ion-float-lg-start{float:left !important}:host-context([dir=rtl]) .ion-float-lg-start{float:right !important}[dir=rtl] .ion-float-lg-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-lg-start:dir(rtl){float:right !important}}.ion-float-lg-end{float:right !important}:host-context([dir=rtl]) .ion-float-lg-end{float:left !important}[dir=rtl] .ion-float-lg-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-lg-end:dir(rtl){float:left !important}}}@media(min-width: 1200px){.ion-float-xl-left{float:left !important}.ion-float-xl-right{float:right !important}.ion-float-xl-start{float:left !important}:host-context([dir=rtl]) .ion-float-xl-start{float:right !important}[dir=rtl] .ion-float-xl-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-xl-start:dir(rtl){float:right !important}}.ion-float-xl-end{float:right !important}:host-context([dir=rtl]) .ion-float-xl-end{float:left !important}[dir=rtl] .ion-float-xl-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-xl-end:dir(rtl){float:left !important}}}.ion-text-center{text-align:center !important}.ion-text-justify{text-align:justify !important}.ion-text-start{text-align:start !important}.ion-text-end{text-align:end !important}.ion-text-left{text-align:left !important}.ion-text-right{text-align:right !important}.ion-text-nowrap{white-space:nowrap !important}.ion-text-wrap{white-space:normal !important}@media(min-width: 576px){.ion-text-sm-center{text-align:center !important}.ion-text-sm-justify{text-align:justify !important}.ion-text-sm-start{text-align:start !important}.ion-text-sm-end{text-align:end !important}.ion-text-sm-left{text-align:left !important}.ion-text-sm-right{text-align:right !important}.ion-text-sm-nowrap{white-space:nowrap !important}.ion-text-sm-wrap{white-space:normal !important}}@media(min-width: 768px){.ion-text-md-center{text-align:center !important}.ion-text-md-justify{text-align:justify !important}.ion-text-md-start{text-align:start !important}.ion-text-md-end{text-align:end !important}.ion-text-md-left{text-align:left !important}.ion-text-md-right{text-align:right !important}.ion-text-md-nowrap{white-space:nowrap !important}.ion-text-md-wrap{white-space:normal !important}}@media(min-width: 992px){.ion-text-lg-center{text-align:center !important}.ion-text-lg-justify{text-align:justify !important}.ion-text-lg-start{text-align:start !important}.ion-text-lg-end{text-align:end !important}.ion-text-lg-left{text-align:left !important}.ion-text-lg-right{text-align:right !important}.ion-text-lg-nowrap{white-space:nowrap !important}.ion-text-lg-wrap{white-space:normal !important}}@media(min-width: 1200px){.ion-text-xl-center{text-align:center !important}.ion-text-xl-justify{text-align:justify !important}.ion-text-xl-start{text-align:start !important}.ion-text-xl-end{text-align:end !important}.ion-text-xl-left{text-align:left !important}.ion-text-xl-right{text-align:right !important}.ion-text-xl-nowrap{white-space:nowrap !important}.ion-text-xl-wrap{white-space:normal !important}}.ion-text-uppercase{text-transform:uppercase !important}.ion-text-lowercase{text-transform:lowercase !important}.ion-text-capitalize{text-transform:capitalize !important}@media(min-width: 576px){.ion-text-sm-uppercase{text-transform:uppercase !important}.ion-text-sm-lowercase{text-transform:lowercase !important}.ion-text-sm-capitalize{text-transform:capitalize !important}}@media(min-width: 768px){.ion-text-md-uppercase{text-transform:uppercase !important}.ion-text-md-lowercase{text-transform:lowercase !important}.ion-text-md-capitalize{text-transform:capitalize !important}}@media(min-width: 992px){.ion-text-lg-uppercase{text-transform:uppercase !important}.ion-text-lg-lowercase{text-transform:lowercase !important}.ion-text-lg-capitalize{text-transform:capitalize !important}}@media(min-width: 1200px){.ion-text-xl-uppercase{text-transform:uppercase !important}.ion-text-xl-lowercase{text-transform:lowercase !important}.ion-text-xl-capitalize{text-transform:capitalize !important}}.ion-align-content-start{align-content:flex-start !important}.ion-align-content-end{align-content:flex-end !important}.ion-align-content-center{align-content:center !important}.ion-align-content-between{align-content:space-between !important}.ion-align-content-around{align-content:space-around !important}.ion-align-content-stretch{align-content:stretch !important}@media(min-width: 576px){.ion-align-content-sm-start{align-content:flex-start !important}.ion-align-content-sm-end{align-content:flex-end !important}.ion-align-content-sm-center{align-content:center !important}.ion-align-content-sm-between{align-content:space-between !important}.ion-align-content-sm-around{align-content:space-around !important}.ion-align-content-sm-stretch{align-content:stretch !important}}@media(min-width: 768px){.ion-align-content-md-start{align-content:flex-start !important}.ion-align-content-md-end{align-content:flex-end !important}.ion-align-content-md-center{align-content:center !important}.ion-align-content-md-between{align-content:space-between !important}.ion-align-content-md-around{align-content:space-around !important}.ion-align-content-md-stretch{align-content:stretch !important}}@media(min-width: 992px){.ion-align-content-lg-start{align-content:flex-start !important}.ion-align-content-lg-end{align-content:flex-end !important}.ion-align-content-lg-center{align-content:center !important}.ion-align-content-lg-between{align-content:space-between !important}.ion-align-content-lg-around{align-content:space-around !important}.ion-align-content-lg-stretch{align-content:stretch !important}}@media(min-width: 1200px){.ion-align-content-xl-start{align-content:flex-start !important}.ion-align-content-xl-end{align-content:flex-end !important}.ion-align-content-xl-center{align-content:center !important}.ion-align-content-xl-between{align-content:space-between !important}.ion-align-content-xl-around{align-content:space-around !important}.ion-align-content-xl-stretch{align-content:stretch !important}}.ion-align-items-start{align-items:start !important}.ion-align-items-end{align-items:end !important}.ion-align-items-center{align-items:center !important}.ion-align-items-stretch{align-items:stretch !important}.ion-align-items-baseline{align-items:baseline !important}@media(min-width: 576px){.ion-align-items-sm-start{align-items:start !important}.ion-align-items-sm-end{align-items:end !important}.ion-align-items-sm-center{align-items:center !important}.ion-align-items-sm-stretch{align-items:stretch !important}.ion-align-items-sm-baseline{align-items:baseline !important}}@media(min-width: 768px){.ion-align-items-md-start{align-items:start !important}.ion-align-items-md-end{align-items:end !important}.ion-align-items-md-center{align-items:center !important}.ion-align-items-md-stretch{align-items:stretch !important}.ion-align-items-md-baseline{align-items:baseline !important}}@media(min-width: 992px){.ion-align-items-lg-start{align-items:start !important}.ion-align-items-lg-end{align-items:end !important}.ion-align-items-lg-center{align-items:center !important}.ion-align-items-lg-stretch{align-items:stretch !important}.ion-align-items-lg-baseline{align-items:baseline !important}}@media(min-width: 1200px){.ion-align-items-xl-start{align-items:start !important}.ion-align-items-xl-end{align-items:end !important}.ion-align-items-xl-center{align-items:center !important}.ion-align-items-xl-stretch{align-items:stretch !important}.ion-align-items-xl-baseline{align-items:baseline !important}}.ion-align-self-start{align-self:start !important}.ion-align-self-end{align-self:end !important}.ion-align-self-center{align-self:center !important}.ion-align-self-stretch{align-self:stretch !important}.ion-align-self-baseline{align-self:baseline !important}.ion-align-self-auto{align-self:auto !important}@media(min-width: 576px){.ion-align-self-sm-start{align-self:start !important}.ion-align-self-sm-end{align-self:end !important}.ion-align-self-sm-center{align-self:center !important}.ion-align-self-sm-stretch{align-self:stretch !important}.ion-align-self-sm-baseline{align-self:baseline !important}.ion-align-self-sm-auto{align-self:auto !important}}@media(min-width: 768px){.ion-align-self-md-start{align-self:start !important}.ion-align-self-md-end{align-self:end !important}.ion-align-self-md-center{align-self:center !important}.ion-align-self-md-stretch{align-self:stretch !important}.ion-align-self-md-baseline{align-self:baseline !important}.ion-align-self-md-auto{align-self:auto !important}}@media(min-width: 992px){.ion-align-self-lg-start{align-self:start !important}.ion-align-self-lg-end{align-self:end !important}.ion-align-self-lg-center{align-self:center !important}.ion-align-self-lg-stretch{align-self:stretch !important}.ion-align-self-lg-baseline{align-self:baseline !important}.ion-align-self-lg-auto{align-self:auto !important}}@media(min-width: 1200px){.ion-align-self-xl-start{align-self:start !important}.ion-align-self-xl-end{align-self:end !important}.ion-align-self-xl-center{align-self:center !important}.ion-align-self-xl-stretch{align-self:stretch !important}.ion-align-self-xl-baseline{align-self:baseline !important}.ion-align-self-xl-auto{align-self:auto !important}}.ion-justify-content-start{justify-content:flex-start !important}.ion-justify-content-end{justify-content:flex-end !important}.ion-justify-content-center{justify-content:center !important}.ion-justify-content-between{justify-content:space-between !important}.ion-justify-content-around{justify-content:space-around !important}.ion-justify-content-evenly{justify-content:space-evenly !important}@media(min-width: 576px){.ion-justify-content-sm-start{justify-content:flex-start !important}.ion-justify-content-sm-end{justify-content:flex-end !important}.ion-justify-content-sm-center{justify-content:center !important}.ion-justify-content-sm-between{justify-content:space-between !important}.ion-justify-content-sm-around{justify-content:space-around !important}.ion-justify-content-sm-evenly{justify-content:space-evenly !important}}@media(min-width: 768px){.ion-justify-content-md-start{justify-content:flex-start !important}.ion-justify-content-md-end{justify-content:flex-end !important}.ion-justify-content-md-center{justify-content:center !important}.ion-justify-content-md-between{justify-content:space-between !important}.ion-justify-content-md-around{justify-content:space-around !important}.ion-justify-content-md-evenly{justify-content:space-evenly !important}}@media(min-width: 992px){.ion-justify-content-lg-start{justify-content:flex-start !important}.ion-justify-content-lg-end{justify-content:flex-end !important}.ion-justify-content-lg-center{justify-content:center !important}.ion-justify-content-lg-between{justify-content:space-between !important}.ion-justify-content-lg-around{justify-content:space-around !important}.ion-justify-content-lg-evenly{justify-content:space-evenly !important}}@media(min-width: 1200px){.ion-justify-content-xl-start{justify-content:flex-start !important}.ion-justify-content-xl-end{justify-content:flex-end !important}.ion-justify-content-xl-center{justify-content:center !important}.ion-justify-content-xl-between{justify-content:space-between !important}.ion-justify-content-xl-around{justify-content:space-around !important}.ion-justify-content-xl-evenly{justify-content:space-evenly !important}}.ion-flex-row{flex-direction:row !important}.ion-flex-row-reverse{flex-direction:row-reverse !important}.ion-flex-column{flex-direction:column !important}.ion-flex-column-reverse{flex-direction:column-reverse !important}@media(min-width: 576px){.ion-flex-sm-row{flex-direction:row !important}.ion-flex-sm-row-reverse{flex-direction:row-reverse !important}.ion-flex-sm-column{flex-direction:column !important}.ion-flex-sm-column-reverse{flex-direction:column-reverse !important}}@media(min-width: 768px){.ion-flex-md-row{flex-direction:row !important}.ion-flex-md-row-reverse{flex-direction:row-reverse !important}.ion-flex-md-column{flex-direction:column !important}.ion-flex-md-column-reverse{flex-direction:column-reverse !important}}@media(min-width: 992px){.ion-flex-lg-row{flex-direction:row !important}.ion-flex-lg-row-reverse{flex-direction:row-reverse !important}.ion-flex-lg-column{flex-direction:column !important}.ion-flex-lg-column-reverse{flex-direction:column-reverse !important}}@media(min-width: 1200px){.ion-flex-xl-row{flex-direction:row !important}.ion-flex-xl-row-reverse{flex-direction:row-reverse !important}.ion-flex-xl-column{flex-direction:column !important}.ion-flex-xl-column-reverse{flex-direction:column-reverse !important}}.ion-wrap{flex-wrap:wrap !important}.ion-nowrap{flex-wrap:nowrap !important}.ion-wrap-reverse{flex-wrap:wrap-reverse !important}.ion-flex-wrap{flex-wrap:wrap !important}.ion-flex-nowrap{flex-wrap:nowrap !important}.ion-flex-wrap-reverse{flex-wrap:wrap-reverse !important}@media(min-width: 576px){.ion-flex-sm-wrap{flex-wrap:wrap !important}.ion-flex-sm-nowrap{flex-wrap:nowrap !important}.ion-flex-sm-wrap-reverse{flex-wrap:wrap-reverse !important}}@media(min-width: 768px){.ion-flex-md-wrap{flex-wrap:wrap !important}.ion-flex-md-nowrap{flex-wrap:nowrap !important}.ion-flex-md-wrap-reverse{flex-wrap:wrap-reverse !important}}@media(min-width: 992px){.ion-flex-lg-wrap{flex-wrap:wrap !important}.ion-flex-lg-nowrap{flex-wrap:nowrap !important}.ion-flex-lg-wrap-reverse{flex-wrap:wrap-reverse !important}}@media(min-width: 1200px){.ion-flex-xl-wrap{flex-wrap:wrap !important}.ion-flex-xl-nowrap{flex-wrap:nowrap !important}.ion-flex-xl-wrap-reverse{flex-wrap:wrap-reverse !important}}.ion-flex-1{flex:1 !important}.ion-flex-auto{flex:auto !important}.ion-flex-initial{flex:initial !important}.ion-flex-none{flex:none !important}@media(min-width: 576px){.ion-flex-sm-1{flex:1 !important}.ion-flex-sm-auto{flex:auto !important}.ion-flex-sm-initial{flex:initial !important}.ion-flex-sm-none{flex:none !important}}@media(min-width: 768px){.ion-flex-md-1{flex:1 !important}.ion-flex-md-auto{flex:auto !important}.ion-flex-md-initial{flex:initial !important}.ion-flex-md-none{flex:none !important}}@media(min-width: 992px){.ion-flex-lg-1{flex:1 !important}.ion-flex-lg-auto{flex:auto !important}.ion-flex-lg-initial{flex:initial !important}.ion-flex-lg-none{flex:none !important}}@media(min-width: 1200px){.ion-flex-xl-1{flex:1 !important}.ion-flex-xl-auto{flex:auto !important}.ion-flex-xl-initial{flex:initial !important}.ion-flex-xl-none{flex:none !important}}.ion-flex-grow-0{flex-grow:0 !important}.ion-flex-grow-1{flex-grow:1 !important}.ion-flex-shrink-0{flex-shrink:0 !important}.ion-flex-shrink-1{flex-shrink:1 !important}@media(min-width: 576px){.ion-flex-sm-grow-0{flex-grow:0 !important}.ion-flex-sm-grow-1{flex-grow:1 !important}.ion-flex-sm-shrink-0{flex-shrink:0 !important}.ion-flex-sm-shrink-1{flex-shrink:1 !important}}@media(min-width: 768px){.ion-flex-md-grow-0{flex-grow:0 !important}.ion-flex-md-grow-1{flex-grow:1 !important}.ion-flex-md-shrink-0{flex-shrink:0 !important}.ion-flex-md-shrink-1{flex-shrink:1 !important}}@media(min-width: 992px){.ion-flex-lg-grow-0{flex-grow:0 !important}.ion-flex-lg-grow-1{flex-grow:1 !important}.ion-flex-lg-shrink-0{flex-shrink:0 !important}.ion-flex-lg-shrink-1{flex-shrink:1 !important}}@media(min-width: 1200px){.ion-flex-xl-grow-0{flex-grow:0 !important}.ion-flex-xl-grow-1{flex-grow:1 !important}.ion-flex-xl-shrink-0{flex-shrink:0 !important}.ion-flex-xl-shrink-1{flex-shrink:1 !important}}.ion-order-first{order:-1 !important}.ion-order-0{order:0 !important}.ion-order-1{order:1 !important}.ion-order-2{order:2 !important}.ion-order-3{order:3 !important}.ion-order-4{order:4 !important}.ion-order-5{order:5 !important}.ion-order-6{order:6 !important}.ion-order-7{order:7 !important}.ion-order-8{order:8 !important}.ion-order-9{order:9 !important}.ion-order-10{order:10 !important}.ion-order-11{order:11 !important}.ion-order-12{order:12 !important}.ion-order-last{order:13 !important}@media(min-width: 576px){.ion-order-sm-first{order:-1 !important}.ion-order-sm-0{order:0 !important}.ion-order-sm-1{order:1 !important}.ion-order-sm-2{order:2 !important}.ion-order-sm-3{order:3 !important}.ion-order-sm-4{order:4 !important}.ion-order-sm-5{order:5 !important}.ion-order-sm-6{order:6 !important}.ion-order-sm-7{order:7 !important}.ion-order-sm-8{order:8 !important}.ion-order-sm-9{order:9 !important}.ion-order-sm-10{order:10 !important}.ion-order-sm-11{order:11 !important}.ion-order-sm-12{order:12 !important}.ion-order-sm-last{order:13 !important}}@media(min-width: 768px){.ion-order-md-first{order:-1 !important}.ion-order-md-0{order:0 !important}.ion-order-md-1{order:1 !important}.ion-order-md-2{order:2 !important}.ion-order-md-3{order:3 !important}.ion-order-md-4{order:4 !important}.ion-order-md-5{order:5 !important}.ion-order-md-6{order:6 !important}.ion-order-md-7{order:7 !important}.ion-order-md-8{order:8 !important}.ion-order-md-9{order:9 !important}.ion-order-md-10{order:10 !important}.ion-order-md-11{order:11 !important}.ion-order-md-12{order:12 !important}.ion-order-md-last{order:13 !important}}@media(min-width: 992px){.ion-order-lg-first{order:-1 !important}.ion-order-lg-0{order:0 !important}.ion-order-lg-1{order:1 !important}.ion-order-lg-2{order:2 !important}.ion-order-lg-3{order:3 !important}.ion-order-lg-4{order:4 !important}.ion-order-lg-5{order:5 !important}.ion-order-lg-6{order:6 !important}.ion-order-lg-7{order:7 !important}.ion-order-lg-8{order:8 !important}.ion-order-lg-9{order:9 !important}.ion-order-lg-10{order:10 !important}.ion-order-lg-11{order:11 !important}.ion-order-lg-12{order:12 !important}.ion-order-lg-last{order:13 !important}}@media(min-width: 1200px){.ion-order-xl-first{order:-1 !important}.ion-order-xl-0{order:0 !important}.ion-order-xl-1{order:1 !important}.ion-order-xl-2{order:2 !important}.ion-order-xl-3{order:3 !important}.ion-order-xl-4{order:4 !important}.ion-order-xl-5{order:5 !important}.ion-order-xl-6{order:6 !important}.ion-order-xl-7{order:7 !important}.ion-order-xl-8{order:8 !important}.ion-order-xl-9{order:9 !important}.ion-order-xl-10{order:10 !important}.ion-order-xl-11{order:11 !important}.ion-order-xl-12{order:12 !important}.ion-order-xl-last{order:13 !important}}.ion-flex-direction-column{flex-direction:column !important}.ion-flex-direction-column-reverse{flex-direction:column-reverse !important}.ion-flex-direction-row{flex-direction:row !important}.ion-flex-direction-row-reverse{flex-direction:row-reverse !important}.ion-flex-1{flex:1 !important}.ion-hide{display:none !important}.ion-hide-up{display:none !important}.ion-hide-down{display:none !important}@media(min-width: 576px){.ion-hide-sm-up{display:none !important}}@media(max-width: 575.98px){.ion-hide-sm-down{display:none !important}}@media(min-width: 768px){.ion-hide-md-up{display:none !important}}@media(max-width: 767.98px){.ion-hide-md-down{display:none !important}}@media(min-width: 992px){.ion-hide-lg-up{display:none !important}}@media(max-width: 991.98px){.ion-hide-lg-down{display:none !important}}@media(min-width: 1200px){.ion-hide-xl-up{display:none !important}}@media(max-width: 1199.98px){.ion-hide-xl-down{display:none !important}}.ion-display-none{display:none !important}@media(min-width: 576px){.ion-display-sm-none{display:none !important}}@media(min-width: 768px){.ion-display-md-none{display:none !important}}@media(min-width: 992px){.ion-display-lg-none{display:none !important}}@media(min-width: 1200px){.ion-display-xl-none{display:none !important}}.ion-display-contents{display:contents !important}@media(min-width: 576px){.ion-display-sm-contents{display:contents !important}}@media(min-width: 768px){.ion-display-md-contents{display:contents !important}}@media(min-width: 992px){.ion-display-lg-contents{display:contents !important}}@media(min-width: 1200px){.ion-display-xl-contents{display:contents !important}}.ion-display-inline{display:inline !important}@media(min-width: 576px){.ion-display-sm-inline{display:inline !important}}@media(min-width: 768px){.ion-display-md-inline{display:inline !important}}@media(min-width: 992px){.ion-display-lg-inline{display:inline !important}}@media(min-width: 1200px){.ion-display-xl-inline{display:inline !important}}.ion-display-inline-block{display:inline-block !important}@media(min-width: 576px){.ion-display-sm-inline-block{display:inline-block !important}}@media(min-width: 768px){.ion-display-md-inline-block{display:inline-block !important}}@media(min-width: 992px){.ion-display-lg-inline-block{display:inline-block !important}}@media(min-width: 1200px){.ion-display-xl-inline-block{display:inline-block !important}}.ion-display-block{display:block !important}@media(min-width: 576px){.ion-display-sm-block{display:block !important}}@media(min-width: 768px){.ion-display-md-block{display:block !important}}@media(min-width: 992px){.ion-display-lg-block{display:block !important}}@media(min-width: 1200px){.ion-display-xl-block{display:block !important}}.ion-display-flex{display:flex !important}@media(min-width: 576px){.ion-display-sm-flex{display:flex !important}}@media(min-width: 768px){.ion-display-md-flex{display:flex !important}}@media(min-width: 992px){.ion-display-lg-flex{display:flex !important}}@media(min-width: 1200px){.ion-display-xl-flex{display:flex !important}}.ion-display-inline-flex{display:inline-flex !important}@media(min-width: 576px){.ion-display-sm-inline-flex{display:inline-flex !important}}@media(min-width: 768px){.ion-display-md-inline-flex{display:inline-flex !important}}@media(min-width: 992px){.ion-display-lg-inline-flex{display:inline-flex !important}}@media(min-width: 1200px){.ion-display-xl-inline-flex{display:inline-flex !important}}.ion-display-grid{display:grid !important}@media(min-width: 576px){.ion-display-sm-grid{display:grid !important}}@media(min-width: 768px){.ion-display-md-grid{display:grid !important}}@media(min-width: 992px){.ion-display-lg-grid{display:grid !important}}@media(min-width: 1200px){.ion-display-xl-grid{display:grid !important}}.ion-display-inline-grid{display:inline-grid !important}@media(min-width: 576px){.ion-display-sm-inline-grid{display:inline-grid !important}}@media(min-width: 768px){.ion-display-md-inline-grid{display:inline-grid !important}}@media(min-width: 992px){.ion-display-lg-inline-grid{display:inline-grid !important}}@media(min-width: 1200px){.ion-display-xl-inline-grid{display:inline-grid !important}}.ion-display-table{display:table !important}@media(min-width: 576px){.ion-display-sm-table{display:table !important}}@media(min-width: 768px){.ion-display-md-table{display:table !important}}@media(min-width: 992px){.ion-display-lg-table{display:table !important}}@media(min-width: 1200px){.ion-display-xl-table{display:table !important}}.ion-display-table-cell{display:table-cell !important}@media(min-width: 576px){.ion-display-sm-table-cell{display:table-cell !important}}@media(min-width: 768px){.ion-display-md-table-cell{display:table-cell !important}}@media(min-width: 992px){.ion-display-lg-table-cell{display:table-cell !important}}@media(min-width: 1200px){.ion-display-xl-table-cell{display:table-cell !important}}.ion-display-table-row{display:table-row !important}@media(min-width: 576px){.ion-display-sm-table-row{display:table-row !important}}@media(min-width: 768px){.ion-display-md-table-row{display:table-row !important}}@media(min-width: 992px){.ion-display-lg-table-row{display:table-row !important}}@media(min-width: 1200px){.ion-display-xl-table-row{display:table-row !important}}.ion-full-height{height:100% !important}.ion-full-width{width:100% !important}.ion-position-absolute{position:absolute !important}.ion-position-relative{position:relative !important}/*# sourceMappingURL=utils.bundle.css.map */
1
+ .ion-no-padding{--padding-start: 0;--padding-end: 0;--padding-top: 0;--padding-bottom: 0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}.ion-padding{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-top{--padding-top: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px)}.ion-padding-start{--padding-start: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px)}.ion-padding-end{--padding-end: var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-padding-bottom{--padding-bottom: var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-vertical{--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-horizontal{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-no-margin{--margin-start: 0;--margin-end: 0;--margin-top: 0;--margin-bottom: 0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.ion-margin{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-top{--margin-top: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px)}.ion-margin-start{--margin-start: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px)}.ion-margin-end{--margin-end: var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-margin-bottom{--margin-bottom: var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-vertical{--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-horizontal{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-float-left{float:left !important}.ion-float-right{float:right !important}.ion-float-start{float:left !important}:host-context([dir=rtl]) .ion-float-start{float:right !important}[dir=rtl] .ion-float-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-start:dir(rtl){float:right !important}}.ion-float-end{float:right !important}:host-context([dir=rtl]) .ion-float-end{float:left !important}[dir=rtl] .ion-float-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-end:dir(rtl){float:left !important}}@media(min-width: 576px){.ion-float-sm-left{float:left !important}.ion-float-sm-right{float:right !important}.ion-float-sm-start{float:left !important}:host-context([dir=rtl]) .ion-float-sm-start{float:right !important}[dir=rtl] .ion-float-sm-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-sm-start:dir(rtl){float:right !important}}.ion-float-sm-end{float:right !important}:host-context([dir=rtl]) .ion-float-sm-end{float:left !important}[dir=rtl] .ion-float-sm-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-sm-end:dir(rtl){float:left !important}}}@media(min-width: 768px){.ion-float-md-left{float:left !important}.ion-float-md-right{float:right !important}.ion-float-md-start{float:left !important}:host-context([dir=rtl]) .ion-float-md-start{float:right !important}[dir=rtl] .ion-float-md-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-md-start:dir(rtl){float:right !important}}.ion-float-md-end{float:right !important}:host-context([dir=rtl]) .ion-float-md-end{float:left !important}[dir=rtl] .ion-float-md-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-md-end:dir(rtl){float:left !important}}}@media(min-width: 992px){.ion-float-lg-left{float:left !important}.ion-float-lg-right{float:right !important}.ion-float-lg-start{float:left !important}:host-context([dir=rtl]) .ion-float-lg-start{float:right !important}[dir=rtl] .ion-float-lg-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-lg-start:dir(rtl){float:right !important}}.ion-float-lg-end{float:right !important}:host-context([dir=rtl]) .ion-float-lg-end{float:left !important}[dir=rtl] .ion-float-lg-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-lg-end:dir(rtl){float:left !important}}}@media(min-width: 1200px){.ion-float-xl-left{float:left !important}.ion-float-xl-right{float:right !important}.ion-float-xl-start{float:left !important}:host-context([dir=rtl]) .ion-float-xl-start{float:right !important}[dir=rtl] .ion-float-xl-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-xl-start:dir(rtl){float:right !important}}.ion-float-xl-end{float:right !important}:host-context([dir=rtl]) .ion-float-xl-end{float:left !important}[dir=rtl] .ion-float-xl-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-xl-end:dir(rtl){float:left !important}}}.ion-text-center{text-align:center !important}.ion-text-justify{text-align:justify !important}.ion-text-start{text-align:start !important}.ion-text-end{text-align:end !important}.ion-text-left{text-align:left !important}.ion-text-right{text-align:right !important}.ion-text-nowrap{white-space:nowrap !important}.ion-text-wrap{white-space:normal !important}@media(min-width: 576px){.ion-text-sm-center{text-align:center !important}.ion-text-sm-justify{text-align:justify !important}.ion-text-sm-start{text-align:start !important}.ion-text-sm-end{text-align:end !important}.ion-text-sm-left{text-align:left !important}.ion-text-sm-right{text-align:right !important}.ion-text-sm-nowrap{white-space:nowrap !important}.ion-text-sm-wrap{white-space:normal !important}}@media(min-width: 768px){.ion-text-md-center{text-align:center !important}.ion-text-md-justify{text-align:justify !important}.ion-text-md-start{text-align:start !important}.ion-text-md-end{text-align:end !important}.ion-text-md-left{text-align:left !important}.ion-text-md-right{text-align:right !important}.ion-text-md-nowrap{white-space:nowrap !important}.ion-text-md-wrap{white-space:normal !important}}@media(min-width: 992px){.ion-text-lg-center{text-align:center !important}.ion-text-lg-justify{text-align:justify !important}.ion-text-lg-start{text-align:start !important}.ion-text-lg-end{text-align:end !important}.ion-text-lg-left{text-align:left !important}.ion-text-lg-right{text-align:right !important}.ion-text-lg-nowrap{white-space:nowrap !important}.ion-text-lg-wrap{white-space:normal !important}}@media(min-width: 1200px){.ion-text-xl-center{text-align:center !important}.ion-text-xl-justify{text-align:justify !important}.ion-text-xl-start{text-align:start !important}.ion-text-xl-end{text-align:end !important}.ion-text-xl-left{text-align:left !important}.ion-text-xl-right{text-align:right !important}.ion-text-xl-nowrap{white-space:nowrap !important}.ion-text-xl-wrap{white-space:normal !important}}.ion-text-uppercase{text-transform:uppercase !important}.ion-text-lowercase{text-transform:lowercase !important}.ion-text-capitalize{text-transform:capitalize !important}@media(min-width: 576px){.ion-text-sm-uppercase{text-transform:uppercase !important}.ion-text-sm-lowercase{text-transform:lowercase !important}.ion-text-sm-capitalize{text-transform:capitalize !important}}@media(min-width: 768px){.ion-text-md-uppercase{text-transform:uppercase !important}.ion-text-md-lowercase{text-transform:lowercase !important}.ion-text-md-capitalize{text-transform:capitalize !important}}@media(min-width: 992px){.ion-text-lg-uppercase{text-transform:uppercase !important}.ion-text-lg-lowercase{text-transform:lowercase !important}.ion-text-lg-capitalize{text-transform:capitalize !important}}@media(min-width: 1200px){.ion-text-xl-uppercase{text-transform:uppercase !important}.ion-text-xl-lowercase{text-transform:lowercase !important}.ion-text-xl-capitalize{text-transform:capitalize !important}}.ion-align-content-start{align-content:flex-start !important}.ion-align-content-end{align-content:flex-end !important}.ion-align-content-center{align-content:center !important}.ion-align-content-between{align-content:space-between !important}.ion-align-content-around{align-content:space-around !important}.ion-align-content-stretch{align-content:stretch !important}@media(min-width: 576px){.ion-align-content-sm-start{align-content:flex-start !important}.ion-align-content-sm-end{align-content:flex-end !important}.ion-align-content-sm-center{align-content:center !important}.ion-align-content-sm-between{align-content:space-between !important}.ion-align-content-sm-around{align-content:space-around !important}.ion-align-content-sm-stretch{align-content:stretch !important}}@media(min-width: 768px){.ion-align-content-md-start{align-content:flex-start !important}.ion-align-content-md-end{align-content:flex-end !important}.ion-align-content-md-center{align-content:center !important}.ion-align-content-md-between{align-content:space-between !important}.ion-align-content-md-around{align-content:space-around !important}.ion-align-content-md-stretch{align-content:stretch !important}}@media(min-width: 992px){.ion-align-content-lg-start{align-content:flex-start !important}.ion-align-content-lg-end{align-content:flex-end !important}.ion-align-content-lg-center{align-content:center !important}.ion-align-content-lg-between{align-content:space-between !important}.ion-align-content-lg-around{align-content:space-around !important}.ion-align-content-lg-stretch{align-content:stretch !important}}@media(min-width: 1200px){.ion-align-content-xl-start{align-content:flex-start !important}.ion-align-content-xl-end{align-content:flex-end !important}.ion-align-content-xl-center{align-content:center !important}.ion-align-content-xl-between{align-content:space-between !important}.ion-align-content-xl-around{align-content:space-around !important}.ion-align-content-xl-stretch{align-content:stretch !important}}.ion-align-items-start{align-items:start !important}.ion-align-items-end{align-items:end !important}.ion-align-items-center{align-items:center !important}.ion-align-items-stretch{align-items:stretch !important}.ion-align-items-baseline{align-items:baseline !important}@media(min-width: 576px){.ion-align-items-sm-start{align-items:start !important}.ion-align-items-sm-end{align-items:end !important}.ion-align-items-sm-center{align-items:center !important}.ion-align-items-sm-stretch{align-items:stretch !important}.ion-align-items-sm-baseline{align-items:baseline !important}}@media(min-width: 768px){.ion-align-items-md-start{align-items:start !important}.ion-align-items-md-end{align-items:end !important}.ion-align-items-md-center{align-items:center !important}.ion-align-items-md-stretch{align-items:stretch !important}.ion-align-items-md-baseline{align-items:baseline !important}}@media(min-width: 992px){.ion-align-items-lg-start{align-items:start !important}.ion-align-items-lg-end{align-items:end !important}.ion-align-items-lg-center{align-items:center !important}.ion-align-items-lg-stretch{align-items:stretch !important}.ion-align-items-lg-baseline{align-items:baseline !important}}@media(min-width: 1200px){.ion-align-items-xl-start{align-items:start !important}.ion-align-items-xl-end{align-items:end !important}.ion-align-items-xl-center{align-items:center !important}.ion-align-items-xl-stretch{align-items:stretch !important}.ion-align-items-xl-baseline{align-items:baseline !important}}.ion-align-self-start{align-self:start !important}.ion-align-self-end{align-self:end !important}.ion-align-self-center{align-self:center !important}.ion-align-self-stretch{align-self:stretch !important}.ion-align-self-baseline{align-self:baseline !important}.ion-align-self-auto{align-self:auto !important}@media(min-width: 576px){.ion-align-self-sm-start{align-self:start !important}.ion-align-self-sm-end{align-self:end !important}.ion-align-self-sm-center{align-self:center !important}.ion-align-self-sm-stretch{align-self:stretch !important}.ion-align-self-sm-baseline{align-self:baseline !important}.ion-align-self-sm-auto{align-self:auto !important}}@media(min-width: 768px){.ion-align-self-md-start{align-self:start !important}.ion-align-self-md-end{align-self:end !important}.ion-align-self-md-center{align-self:center !important}.ion-align-self-md-stretch{align-self:stretch !important}.ion-align-self-md-baseline{align-self:baseline !important}.ion-align-self-md-auto{align-self:auto !important}}@media(min-width: 992px){.ion-align-self-lg-start{align-self:start !important}.ion-align-self-lg-end{align-self:end !important}.ion-align-self-lg-center{align-self:center !important}.ion-align-self-lg-stretch{align-self:stretch !important}.ion-align-self-lg-baseline{align-self:baseline !important}.ion-align-self-lg-auto{align-self:auto !important}}@media(min-width: 1200px){.ion-align-self-xl-start{align-self:start !important}.ion-align-self-xl-end{align-self:end !important}.ion-align-self-xl-center{align-self:center !important}.ion-align-self-xl-stretch{align-self:stretch !important}.ion-align-self-xl-baseline{align-self:baseline !important}.ion-align-self-xl-auto{align-self:auto !important}}.ion-justify-content-start{justify-content:flex-start !important}.ion-justify-content-end{justify-content:flex-end !important}.ion-justify-content-center{justify-content:center !important}.ion-justify-content-between{justify-content:space-between !important}.ion-justify-content-around{justify-content:space-around !important}.ion-justify-content-evenly{justify-content:space-evenly !important}@media(min-width: 576px){.ion-justify-content-sm-start{justify-content:flex-start !important}.ion-justify-content-sm-end{justify-content:flex-end !important}.ion-justify-content-sm-center{justify-content:center !important}.ion-justify-content-sm-between{justify-content:space-between !important}.ion-justify-content-sm-around{justify-content:space-around !important}.ion-justify-content-sm-evenly{justify-content:space-evenly !important}}@media(min-width: 768px){.ion-justify-content-md-start{justify-content:flex-start !important}.ion-justify-content-md-end{justify-content:flex-end !important}.ion-justify-content-md-center{justify-content:center !important}.ion-justify-content-md-between{justify-content:space-between !important}.ion-justify-content-md-around{justify-content:space-around !important}.ion-justify-content-md-evenly{justify-content:space-evenly !important}}@media(min-width: 992px){.ion-justify-content-lg-start{justify-content:flex-start !important}.ion-justify-content-lg-end{justify-content:flex-end !important}.ion-justify-content-lg-center{justify-content:center !important}.ion-justify-content-lg-between{justify-content:space-between !important}.ion-justify-content-lg-around{justify-content:space-around !important}.ion-justify-content-lg-evenly{justify-content:space-evenly !important}}@media(min-width: 1200px){.ion-justify-content-xl-start{justify-content:flex-start !important}.ion-justify-content-xl-end{justify-content:flex-end !important}.ion-justify-content-xl-center{justify-content:center !important}.ion-justify-content-xl-between{justify-content:space-between !important}.ion-justify-content-xl-around{justify-content:space-around !important}.ion-justify-content-xl-evenly{justify-content:space-evenly !important}}.ion-flex-row{flex-direction:row !important}.ion-flex-row-reverse{flex-direction:row-reverse !important}.ion-flex-column{flex-direction:column !important}.ion-flex-column-reverse{flex-direction:column-reverse !important}@media(min-width: 576px){.ion-flex-sm-row{flex-direction:row !important}.ion-flex-sm-row-reverse{flex-direction:row-reverse !important}.ion-flex-sm-column{flex-direction:column !important}.ion-flex-sm-column-reverse{flex-direction:column-reverse !important}}@media(min-width: 768px){.ion-flex-md-row{flex-direction:row !important}.ion-flex-md-row-reverse{flex-direction:row-reverse !important}.ion-flex-md-column{flex-direction:column !important}.ion-flex-md-column-reverse{flex-direction:column-reverse !important}}@media(min-width: 992px){.ion-flex-lg-row{flex-direction:row !important}.ion-flex-lg-row-reverse{flex-direction:row-reverse !important}.ion-flex-lg-column{flex-direction:column !important}.ion-flex-lg-column-reverse{flex-direction:column-reverse !important}}@media(min-width: 1200px){.ion-flex-xl-row{flex-direction:row !important}.ion-flex-xl-row-reverse{flex-direction:row-reverse !important}.ion-flex-xl-column{flex-direction:column !important}.ion-flex-xl-column-reverse{flex-direction:column-reverse !important}}.ion-wrap{flex-wrap:wrap !important}.ion-nowrap{flex-wrap:nowrap !important}.ion-wrap-reverse{flex-wrap:wrap-reverse !important}.ion-flex-wrap{flex-wrap:wrap !important}.ion-flex-nowrap{flex-wrap:nowrap !important}.ion-flex-wrap-reverse{flex-wrap:wrap-reverse !important}@media(min-width: 576px){.ion-flex-sm-wrap{flex-wrap:wrap !important}.ion-flex-sm-nowrap{flex-wrap:nowrap !important}.ion-flex-sm-wrap-reverse{flex-wrap:wrap-reverse !important}}@media(min-width: 768px){.ion-flex-md-wrap{flex-wrap:wrap !important}.ion-flex-md-nowrap{flex-wrap:nowrap !important}.ion-flex-md-wrap-reverse{flex-wrap:wrap-reverse !important}}@media(min-width: 992px){.ion-flex-lg-wrap{flex-wrap:wrap !important}.ion-flex-lg-nowrap{flex-wrap:nowrap !important}.ion-flex-lg-wrap-reverse{flex-wrap:wrap-reverse !important}}@media(min-width: 1200px){.ion-flex-xl-wrap{flex-wrap:wrap !important}.ion-flex-xl-nowrap{flex-wrap:nowrap !important}.ion-flex-xl-wrap-reverse{flex-wrap:wrap-reverse !important}}.ion-flex-1{flex:1 !important}.ion-flex-auto{flex:auto !important}.ion-flex-initial{flex:initial !important}.ion-flex-none{flex:none !important}@media(min-width: 576px){.ion-flex-sm-1{flex:1 !important}.ion-flex-sm-auto{flex:auto !important}.ion-flex-sm-initial{flex:initial !important}.ion-flex-sm-none{flex:none !important}}@media(min-width: 768px){.ion-flex-md-1{flex:1 !important}.ion-flex-md-auto{flex:auto !important}.ion-flex-md-initial{flex:initial !important}.ion-flex-md-none{flex:none !important}}@media(min-width: 992px){.ion-flex-lg-1{flex:1 !important}.ion-flex-lg-auto{flex:auto !important}.ion-flex-lg-initial{flex:initial !important}.ion-flex-lg-none{flex:none !important}}@media(min-width: 1200px){.ion-flex-xl-1{flex:1 !important}.ion-flex-xl-auto{flex:auto !important}.ion-flex-xl-initial{flex:initial !important}.ion-flex-xl-none{flex:none !important}}.ion-flex-grow-0{flex-grow:0 !important}.ion-flex-grow-1{flex-grow:1 !important}.ion-flex-shrink-0{flex-shrink:0 !important}.ion-flex-shrink-1{flex-shrink:1 !important}@media(min-width: 576px){.ion-flex-sm-grow-0{flex-grow:0 !important}.ion-flex-sm-grow-1{flex-grow:1 !important}.ion-flex-sm-shrink-0{flex-shrink:0 !important}.ion-flex-sm-shrink-1{flex-shrink:1 !important}}@media(min-width: 768px){.ion-flex-md-grow-0{flex-grow:0 !important}.ion-flex-md-grow-1{flex-grow:1 !important}.ion-flex-md-shrink-0{flex-shrink:0 !important}.ion-flex-md-shrink-1{flex-shrink:1 !important}}@media(min-width: 992px){.ion-flex-lg-grow-0{flex-grow:0 !important}.ion-flex-lg-grow-1{flex-grow:1 !important}.ion-flex-lg-shrink-0{flex-shrink:0 !important}.ion-flex-lg-shrink-1{flex-shrink:1 !important}}@media(min-width: 1200px){.ion-flex-xl-grow-0{flex-grow:0 !important}.ion-flex-xl-grow-1{flex-grow:1 !important}.ion-flex-xl-shrink-0{flex-shrink:0 !important}.ion-flex-xl-shrink-1{flex-shrink:1 !important}}.ion-order-first{order:-1 !important}.ion-order-0{order:0 !important}.ion-order-1{order:1 !important}.ion-order-2{order:2 !important}.ion-order-3{order:3 !important}.ion-order-4{order:4 !important}.ion-order-5{order:5 !important}.ion-order-6{order:6 !important}.ion-order-7{order:7 !important}.ion-order-8{order:8 !important}.ion-order-9{order:9 !important}.ion-order-10{order:10 !important}.ion-order-11{order:11 !important}.ion-order-12{order:12 !important}.ion-order-last{order:13 !important}@media(min-width: 576px){.ion-order-sm-first{order:-1 !important}.ion-order-sm-0{order:0 !important}.ion-order-sm-1{order:1 !important}.ion-order-sm-2{order:2 !important}.ion-order-sm-3{order:3 !important}.ion-order-sm-4{order:4 !important}.ion-order-sm-5{order:5 !important}.ion-order-sm-6{order:6 !important}.ion-order-sm-7{order:7 !important}.ion-order-sm-8{order:8 !important}.ion-order-sm-9{order:9 !important}.ion-order-sm-10{order:10 !important}.ion-order-sm-11{order:11 !important}.ion-order-sm-12{order:12 !important}.ion-order-sm-last{order:13 !important}}@media(min-width: 768px){.ion-order-md-first{order:-1 !important}.ion-order-md-0{order:0 !important}.ion-order-md-1{order:1 !important}.ion-order-md-2{order:2 !important}.ion-order-md-3{order:3 !important}.ion-order-md-4{order:4 !important}.ion-order-md-5{order:5 !important}.ion-order-md-6{order:6 !important}.ion-order-md-7{order:7 !important}.ion-order-md-8{order:8 !important}.ion-order-md-9{order:9 !important}.ion-order-md-10{order:10 !important}.ion-order-md-11{order:11 !important}.ion-order-md-12{order:12 !important}.ion-order-md-last{order:13 !important}}@media(min-width: 992px){.ion-order-lg-first{order:-1 !important}.ion-order-lg-0{order:0 !important}.ion-order-lg-1{order:1 !important}.ion-order-lg-2{order:2 !important}.ion-order-lg-3{order:3 !important}.ion-order-lg-4{order:4 !important}.ion-order-lg-5{order:5 !important}.ion-order-lg-6{order:6 !important}.ion-order-lg-7{order:7 !important}.ion-order-lg-8{order:8 !important}.ion-order-lg-9{order:9 !important}.ion-order-lg-10{order:10 !important}.ion-order-lg-11{order:11 !important}.ion-order-lg-12{order:12 !important}.ion-order-lg-last{order:13 !important}}@media(min-width: 1200px){.ion-order-xl-first{order:-1 !important}.ion-order-xl-0{order:0 !important}.ion-order-xl-1{order:1 !important}.ion-order-xl-2{order:2 !important}.ion-order-xl-3{order:3 !important}.ion-order-xl-4{order:4 !important}.ion-order-xl-5{order:5 !important}.ion-order-xl-6{order:6 !important}.ion-order-xl-7{order:7 !important}.ion-order-xl-8{order:8 !important}.ion-order-xl-9{order:9 !important}.ion-order-xl-10{order:10 !important}.ion-order-xl-11{order:11 !important}.ion-order-xl-12{order:12 !important}.ion-order-xl-last{order:13 !important}}.ion-hide{display:none !important}.ion-hide-up{display:none !important}.ion-hide-down{display:none !important}@media(min-width: 576px){.ion-hide-sm-up{display:none !important}}@media(max-width: 575.98px){.ion-hide-sm-down{display:none !important}}@media(min-width: 768px){.ion-hide-md-up{display:none !important}}@media(max-width: 767.98px){.ion-hide-md-down{display:none !important}}@media(min-width: 992px){.ion-hide-lg-up{display:none !important}}@media(max-width: 991.98px){.ion-hide-lg-down{display:none !important}}@media(min-width: 1200px){.ion-hide-xl-up{display:none !important}}@media(max-width: 1199.98px){.ion-hide-xl-down{display:none !important}}.ion-display-none{display:none !important}@media(min-width: 576px){.ion-display-sm-none{display:none !important}}@media(min-width: 768px){.ion-display-md-none{display:none !important}}@media(min-width: 992px){.ion-display-lg-none{display:none !important}}@media(min-width: 1200px){.ion-display-xl-none{display:none !important}}.ion-display-inline{display:inline !important}@media(min-width: 576px){.ion-display-sm-inline{display:inline !important}}@media(min-width: 768px){.ion-display-md-inline{display:inline !important}}@media(min-width: 992px){.ion-display-lg-inline{display:inline !important}}@media(min-width: 1200px){.ion-display-xl-inline{display:inline !important}}.ion-display-inline-block{display:inline-block !important}@media(min-width: 576px){.ion-display-sm-inline-block{display:inline-block !important}}@media(min-width: 768px){.ion-display-md-inline-block{display:inline-block !important}}@media(min-width: 992px){.ion-display-lg-inline-block{display:inline-block !important}}@media(min-width: 1200px){.ion-display-xl-inline-block{display:inline-block !important}}.ion-display-block{display:block !important}@media(min-width: 576px){.ion-display-sm-block{display:block !important}}@media(min-width: 768px){.ion-display-md-block{display:block !important}}@media(min-width: 992px){.ion-display-lg-block{display:block !important}}@media(min-width: 1200px){.ion-display-xl-block{display:block !important}}.ion-display-flex{display:flex !important}@media(min-width: 576px){.ion-display-sm-flex{display:flex !important}}@media(min-width: 768px){.ion-display-md-flex{display:flex !important}}@media(min-width: 992px){.ion-display-lg-flex{display:flex !important}}@media(min-width: 1200px){.ion-display-xl-flex{display:flex !important}}.ion-display-inline-flex{display:inline-flex !important}@media(min-width: 576px){.ion-display-sm-inline-flex{display:inline-flex !important}}@media(min-width: 768px){.ion-display-md-inline-flex{display:inline-flex !important}}@media(min-width: 992px){.ion-display-lg-inline-flex{display:inline-flex !important}}@media(min-width: 1200px){.ion-display-xl-inline-flex{display:inline-flex !important}}.ion-display-grid{display:grid !important}@media(min-width: 576px){.ion-display-sm-grid{display:grid !important}}@media(min-width: 768px){.ion-display-md-grid{display:grid !important}}@media(min-width: 992px){.ion-display-lg-grid{display:grid !important}}@media(min-width: 1200px){.ion-display-xl-grid{display:grid !important}}.ion-display-inline-grid{display:inline-grid !important}@media(min-width: 576px){.ion-display-sm-inline-grid{display:inline-grid !important}}@media(min-width: 768px){.ion-display-md-inline-grid{display:inline-grid !important}}@media(min-width: 992px){.ion-display-lg-inline-grid{display:inline-grid !important}}@media(min-width: 1200px){.ion-display-xl-inline-grid{display:inline-grid !important}}.ion-display-table{display:table !important}@media(min-width: 576px){.ion-display-sm-table{display:table !important}}@media(min-width: 768px){.ion-display-md-table{display:table !important}}@media(min-width: 992px){.ion-display-lg-table{display:table !important}}@media(min-width: 1200px){.ion-display-xl-table{display:table !important}}.ion-display-table-cell{display:table-cell !important}@media(min-width: 576px){.ion-display-sm-table-cell{display:table-cell !important}}@media(min-width: 768px){.ion-display-md-table-cell{display:table-cell !important}}@media(min-width: 992px){.ion-display-lg-table-cell{display:table-cell !important}}@media(min-width: 1200px){.ion-display-xl-table-cell{display:table-cell !important}}.ion-display-table-row{display:table-row !important}@media(min-width: 576px){.ion-display-sm-table-row{display:table-row !important}}@media(min-width: 768px){.ion-display-md-table-row{display:table-row !important}}@media(min-width: 992px){.ion-display-lg-table-row{display:table-row !important}}@media(min-width: 1200px){.ion-display-xl-table-row{display:table-row !important}}/*# sourceMappingURL=utils.bundle.css.map */
@@ -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-D6Wc6v08.js');
7
- var ionicGlobal = require('./ionic-global-DuRUel5m.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-DuRUel5m.js');
6
+ var ionicGlobal = require('./ionic-global-HMVqOFGO.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-D6Wc6v08.js');
7
- var haptic = require('./haptic-Cy3moXzO.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-DuRUel5m.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
  };
@@ -1152,20 +1152,20 @@ const hour23 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
1152
1152
  // h24 hour system uses 1-24. Midnight starts at 24:00.
1153
1153
  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];
1154
1154
  /**
1155
- * Given a locale and a theme,
1155
+ * Given a locale and a mode,
1156
1156
  * return an array with formatted days
1157
- * of the week. iOS and Ionic themes should
1158
- * display days such as "Mon" or "Tue".
1157
+ * of the week. iOS should display days
1158
+ * such as "Mon" or "Tue".
1159
1159
  * MD should display days such as "M"
1160
1160
  * or "T".
1161
1161
  */
1162
- const getDaysOfWeek = (locale, theme, firstDayOfWeek = 0) => {
1162
+ const getDaysOfWeek = (locale, mode, firstDayOfWeek = 0) => {
1163
1163
  /**
1164
1164
  * Nov 1st, 2020 starts on a Sunday.
1165
1165
  * ion-datetime assumes weeks start on Sunday,
1166
1166
  * but is configurable via `firstDayOfWeek`.
1167
1167
  */
1168
- const weekdayFormat = theme === 'md' ? 'narrow' : 'short';
1168
+ const weekdayFormat = mode === 'ios' ? 'short' : 'narrow';
1169
1169
  const intl = new Intl.DateTimeFormat(locale, { weekday: weekdayFormat });
1170
1170
  const startDate = new Date('11/01/2020');
1171
1171
  const daysOfWeek = [];