@ionic/core 8.7.16-dev.11767106094.1edd9cde → 8.7.16-dev.11767205737.13557925

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 (941) hide show
  1. package/components/action-sheet.js +11 -15
  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 -364
  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 +133 -51
  99. package/components/notch-controller.js +1 -1
  100. package/components/overlays.js +4 -3
  101. package/components/picker-column-option.js +5 -8
  102. package/components/picker-column.js +8 -7
  103. package/components/picker-column2.js +4 -4
  104. package/components/picker.js +4 -7
  105. package/components/popover.js +69 -22
  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-CD5nuON9.js → animation-Bt3H9L1C.js} +2 -2
  145. package/dist/cjs/{app-globals-CoW5jvJu.js → app-globals-Ciccnk9_.js} +1 -1
  146. package/dist/cjs/{button-active-Dxyabn6T.js → button-active-CMc8cD90.js} +1 -1
  147. package/dist/cjs/{capacitor-C8raJ_tU.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-BU6_qLwg.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-JtyffOXl.js → index-094mMFB-.js} +3 -3
  155. package/dist/cjs/{index-CADY2xEW.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-C4_FN9N0.js → index-DrMUZJj6.js} +15 -15
  159. package/dist/cjs/index.cjs.js +11 -10
  160. package/dist/cjs/{input-shims-C-YCyXjg.js → input-shims-CW0KUFTQ.js} +16 -17
  161. package/dist/cjs/{input.utils-C3-BwdV0.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 +20 -23
  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 +182 -99
  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 +76 -28
  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-Dt4GT8w5.js → ios.transition-BOt_uW73.js} +4 -6
  217. package/dist/cjs/{keyboard-BlrG3xPK.js → keyboard-UuAS4D_9.js} +1 -1
  218. package/dist/cjs/{keyboard-controller-O8n0dTQz.js → keyboard-controller-GXBiBRKS.js} +9 -11
  219. package/dist/cjs/{keyboard-B8HJHbg3.js → keyboard-hHzlEQpk.js} +3 -4
  220. package/dist/cjs/loader.cjs.js +3 -3
  221. package/dist/cjs/{md.transition-BolcQzNP.js → md.transition-Dt968VXB.js} +4 -5
  222. package/dist/cjs/{notch-controller-BE80VRju.js → notch-controller-Bzqhjm4f.js} +4 -4
  223. package/dist/cjs/{overlays-CRSQCKrz.js → overlays-B2b-TTbl.js} +9 -8
  224. package/dist/cjs/{status-tap-e-hyosXV.js → status-tap-g0sWWkXk.js} +2 -3
  225. package/dist/cjs/{swipe-back-CR060nOX.js → swipe-back-BIayeNOD.js} +1 -2
  226. package/dist/collection/collection-manifest.json +0 -1
  227. package/dist/collection/components/accordion/accordion.ios.css +58 -73
  228. package/dist/collection/components/accordion/accordion.js +26 -36
  229. package/dist/collection/components/accordion/accordion.md.css +59 -67
  230. package/dist/collection/components/accordion-group/accordion-group.ios.css +4 -16
  231. package/dist/collection/components/accordion-group/accordion-group.js +8 -44
  232. package/dist/collection/components/accordion-group/accordion-group.md.css +4 -22
  233. package/dist/collection/components/action-sheet/action-sheet.ios.css +6 -18
  234. package/dist/collection/components/action-sheet/action-sheet.js +13 -17
  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 +8 -10
  362. package/dist/collection/components/modal/gestures/swipe-to-close.js +3 -1
  363. package/dist/collection/components/modal/modal.ios.css +70 -178
  364. package/dist/collection/components/modal/modal.js +119 -50
  365. package/dist/collection/components/modal/modal.md.css +70 -178
  366. package/dist/collection/components/nav/nav.css +1 -7
  367. package/dist/collection/components/nav/nav.js +5 -11
  368. package/dist/collection/components/nav-link/nav-link.js +1 -5
  369. package/dist/collection/components/note/note.ios.css +0 -12
  370. package/dist/collection/components/note/note.js +8 -11
  371. package/dist/collection/components/note/note.md.css +0 -12
  372. package/dist/collection/components/picker/picker.ios.css +3 -15
  373. package/dist/collection/components/picker/picker.js +5 -8
  374. package/dist/collection/components/picker/picker.md.css +3 -15
  375. package/dist/collection/components/picker-column/picker-column.css +2 -9
  376. package/dist/collection/components/picker-column/picker-column.js +7 -8
  377. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
  378. package/dist/collection/components/picker-column-option/picker-column-option.js +7 -13
  379. package/dist/collection/components/picker-column-option/picker-column-option.md.css +0 -6
  380. package/dist/collection/components/picker-legacy/picker.ios.css +1 -13
  381. package/dist/collection/components/picker-legacy/picker.js +6 -7
  382. package/dist/collection/components/picker-legacy/picker.md.css +1 -13
  383. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -12
  384. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  385. package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -12
  386. package/dist/collection/components/popover/animations/ios.enter.js +21 -5
  387. package/dist/collection/components/popover/animations/md.enter.js +20 -4
  388. package/dist/collection/components/popover/popover.ios.css +1 -13
  389. package/dist/collection/components/popover/popover.js +14 -17
  390. package/dist/collection/components/popover/popover.md.css +1 -13
  391. package/dist/collection/components/popover/utils.js +19 -1
  392. package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -48
  393. package/dist/collection/components/progress-bar/progress-bar.js +7 -43
  394. package/dist/collection/components/progress-bar/progress-bar.md.css +17 -48
  395. package/dist/collection/components/radio/radio.ios.css +91 -134
  396. package/dist/collection/components/radio/radio.js +9 -12
  397. package/dist/collection/components/radio/radio.md.css +91 -134
  398. package/dist/collection/components/radio-group/radio-group.ios.css +23 -43
  399. package/dist/collection/components/radio-group/radio-group.js +6 -21
  400. package/dist/collection/components/radio-group/radio-group.md.css +23 -43
  401. package/dist/collection/components/range/range.ios.css +85 -128
  402. package/dist/collection/components/range/range.js +9 -12
  403. package/dist/collection/components/range/range.md.css +85 -128
  404. package/dist/collection/components/refresher/refresher.ios.css +1 -14
  405. package/dist/collection/components/refresher/refresher.js +8 -11
  406. package/dist/collection/components/refresher/refresher.md.css +2 -15
  407. package/dist/collection/components/refresher-content/refresher-content.js +7 -28
  408. package/dist/collection/components/reorder/reorder.ios.css +0 -6
  409. package/dist/collection/components/reorder/reorder.js +6 -33
  410. package/dist/collection/components/reorder/reorder.md.css +0 -6
  411. package/dist/collection/components/reorder-group/reorder-group.css +0 -6
  412. package/dist/collection/components/reorder-group/reorder-group.js +4 -8
  413. package/dist/collection/components/ripple-effect/{ripple-effect.common.css → ripple-effect.css} +1 -7
  414. package/dist/collection/components/ripple-effect/ripple-effect.js +6 -14
  415. package/dist/collection/components/route/route.js +0 -4
  416. package/dist/collection/components/router/router.js +0 -4
  417. package/dist/collection/components/router-link/router-link.css +2 -8
  418. package/dist/collection/components/router-link/router-link.js +5 -9
  419. package/dist/collection/components/router-outlet/router-outlet.css +1 -7
  420. package/dist/collection/components/router-outlet/router-outlet.js +3 -6
  421. package/dist/collection/components/row/row.css +0 -16
  422. package/dist/collection/components/row/row.js +2 -9
  423. package/dist/collection/components/searchbar/searchbar.ios.css +18 -56
  424. package/dist/collection/components/searchbar/searchbar.js +34 -181
  425. package/dist/collection/components/searchbar/searchbar.md.css +18 -56
  426. package/dist/collection/components/segment/segment.ios.css +2 -45
  427. package/dist/collection/components/segment/segment.js +8 -11
  428. package/dist/collection/components/segment/segment.md.css +2 -45
  429. package/dist/collection/components/segment-button/segment-button.ios.css +105 -146
  430. package/dist/collection/components/segment-button/segment-button.js +8 -11
  431. package/dist/collection/components/segment-button/segment-button.md.css +107 -148
  432. package/dist/collection/components/segment-content/segment-content.js +1 -1
  433. package/dist/collection/components/segment-view/segment-view.ios.css +0 -6
  434. package/dist/collection/components/segment-view/segment-view.js +4 -6
  435. package/dist/collection/components/segment-view/segment-view.md.css +0 -6
  436. package/dist/collection/components/select/select.ios.css +176 -315
  437. package/dist/collection/components/select/select.js +53 -156
  438. package/dist/collection/components/select/select.md.css +178 -331
  439. package/dist/collection/components/select-modal/select-modal.ios.css +0 -18
  440. package/dist/collection/components/select-modal/select-modal.js +4 -11
  441. package/dist/collection/components/select-modal/select-modal.md.css +3 -7
  442. package/dist/collection/components/select-option/select-option.js +2 -9
  443. package/dist/collection/components/select-popover/select-popover.ios.css +0 -18
  444. package/dist/collection/components/select-popover/select-popover.js +4 -12
  445. package/dist/collection/components/select-popover/select-popover.md.css +0 -18
  446. package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
  447. package/dist/collection/components/skeleton-text/skeleton-text.js +5 -9
  448. package/dist/collection/components/spinner/{spinner.ionic.css → spinner.css} +10 -77
  449. package/dist/collection/components/spinner/spinner.js +6 -47
  450. package/dist/collection/components/split-pane/split-pane.ios.css +2 -20
  451. package/dist/collection/components/split-pane/split-pane.js +8 -14
  452. package/dist/collection/components/split-pane/split-pane.md.css +2 -20
  453. package/dist/collection/components/tab/tab.js +2 -6
  454. package/dist/collection/components/tab-bar/tab-bar.ios.css +43 -71
  455. package/dist/collection/components/tab-bar/tab-bar.js +11 -78
  456. package/dist/collection/components/tab-bar/tab-bar.md.css +43 -71
  457. package/dist/collection/components/tab-button/tab-button.ios.css +95 -171
  458. package/dist/collection/components/tab-button/tab-button.js +9 -54
  459. package/dist/collection/components/tab-button/tab-button.md.css +93 -137
  460. package/dist/collection/components/tabs/tabs.css +1 -7
  461. package/dist/collection/components/tabs/tabs.js +1 -4
  462. package/dist/collection/components/text/text.css +0 -6
  463. package/dist/collection/components/text/text.js +6 -7
  464. package/dist/collection/components/textarea/textarea.ios.css +139 -275
  465. package/dist/collection/components/textarea/textarea.js +16 -76
  466. package/dist/collection/components/textarea/textarea.md.css +140 -288
  467. package/dist/collection/components/thumbnail/thumbnail.css +0 -6
  468. package/dist/collection/components/thumbnail/thumbnail.js +2 -9
  469. package/dist/collection/components/title/title.ios.css +4 -32
  470. package/dist/collection/components/title/title.js +7 -13
  471. package/dist/collection/components/title/title.md.css +4 -32
  472. package/dist/collection/components/toast/animations/utils.js +1 -1
  473. package/dist/collection/components/toast/toast.ios.css +45 -84
  474. package/dist/collection/components/toast/toast.js +12 -75
  475. package/dist/collection/components/toast/toast.md.css +45 -84
  476. package/dist/collection/components/toggle/toggle.ios.css +131 -247
  477. package/dist/collection/components/toggle/toggle.js +18 -73
  478. package/dist/collection/components/toggle/toggle.md.css +131 -244
  479. package/dist/collection/components/toolbar/toolbar.ios.css +47 -90
  480. package/dist/collection/components/toolbar/toolbar.js +13 -157
  481. package/dist/collection/components/toolbar/toolbar.md.css +47 -90
  482. package/dist/collection/global/ionic-global.js +13 -228
  483. package/dist/collection/utils/focus-visible.js +0 -22
  484. package/dist/collection/utils/framework-delegate.js +1 -3
  485. package/dist/collection/utils/hardware-back-button.js +0 -15
  486. package/dist/collection/utils/helpers.js +2 -42
  487. package/dist/collection/utils/keyboard/keyboard-controller.js +1 -3
  488. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  489. package/dist/collection/utils/menu-controller/animations/push.js +1 -2
  490. package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
  491. package/dist/collection/utils/overlays.js +1 -2
  492. package/dist/collection/utils/test/playwright/generator.js +23 -48
  493. package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -14
  494. package/dist/collection/utils/test/playwright/page/utils/set-content.js +3 -26
  495. package/dist/collection/utils/transition/ios.transition.js +0 -1
  496. package/dist/docs.json +374 -8195
  497. package/dist/esm/{animation-BNuoDl-O.js → animation-Dt8bGnA-.js} +1 -1
  498. package/dist/esm/{app-globals-tX0s9Zd7.js → app-globals-BDSf8fOA.js} +1 -1
  499. package/dist/esm/{button-active-BF6GZ_yH.js → button-active-L570Swow.js} +1 -1
  500. package/dist/esm/{capacitor-pzVAlnC0.js → capacitor-CFERIeaU.js} +1 -1
  501. package/dist/esm/{data-DFCY8gnk.js → data-DCORV9FH.js} +5 -5
  502. package/dist/{cjs/focus-visible-BIj-I3-C.js → esm/focus-visible-BmVRXR1y.js} +1 -27
  503. package/dist/esm/{framework-delegate-D2mUP0WI.js → framework-delegate-BYawdMXj.js} +2 -4
  504. package/dist/esm/{haptic-bBvyATla.js → haptic-DzAMWJuk.js} +1 -1
  505. package/dist/esm/hardware-back-button-CPLxO-Ev.js +115 -0
  506. package/dist/esm/{helpers-Bsml3FcE.js → helpers-DEn3pfjm.js} +3 -42
  507. package/dist/esm/{index-BpFi2B8W.js → index-Bs3kT4bc.js} +1 -1
  508. package/dist/esm/{index-BQI9hSZP.js → index-CvDIirVx.js} +10 -10
  509. package/dist/esm/{index-COG0_eom.js → index-DV3sJJW8.js} +1 -1
  510. package/dist/esm/index-ZjP4CjeZ.js +7 -0
  511. package/dist/esm/{index-Bnw-zNoN.js → index-ceb5RaMT.js} +2 -3
  512. package/dist/esm/{index-M3l-IyxQ.js → index-r2D9DEro.js} +3 -3
  513. package/dist/esm/index.js +11 -10
  514. package/dist/esm/{input-shims-ACbgRt10.js → input-shims-DyOpfTg6.js} +5 -6
  515. package/dist/esm/{input.utils-loPnHH5H.js → input.utils-DrvTa8gz.js} +2 -2
  516. package/dist/esm/ion-accordion_2.entry.js +27 -56
  517. package/dist/esm/ion-action-sheet.entry.js +20 -23
  518. package/dist/esm/ion-alert.entry.js +20 -22
  519. package/dist/esm/ion-app_8.entry.js +151 -250
  520. package/dist/esm/ion-avatar_3.entry.js +13 -125
  521. package/dist/esm/ion-back-button.entry.js +20 -29
  522. package/dist/esm/ion-backdrop.entry.js +6 -9
  523. package/dist/esm/ion-breadcrumb_2.entry.js +17 -53
  524. package/dist/esm/ion-button_2.entry.js +11 -43
  525. package/dist/esm/ion-card_5.entry.js +29 -53
  526. package/dist/esm/ion-checkbox.entry.js +13 -31
  527. package/dist/esm/ion-chip.entry.js +8 -49
  528. package/dist/esm/ion-col_3.entry.js +57 -54
  529. package/dist/esm/ion-datetime-button.entry.js +7 -11
  530. package/dist/esm/ion-datetime_3.entry.js +40 -115
  531. package/dist/esm/ion-fab_3.entry.js +27 -43
  532. package/dist/esm/ion-img.entry.js +3 -7
  533. package/dist/esm/ion-infinite-scroll_2.entry.js +14 -89
  534. package/dist/esm/ion-input-otp.entry.js +7 -11
  535. package/dist/esm/ion-input-password-toggle.entry.js +14 -52
  536. package/dist/esm/ion-input.entry.js +32 -122
  537. package/dist/esm/ion-item-option_3.entry.js +19 -48
  538. package/dist/esm/ion-item_8.entry.js +48 -115
  539. package/dist/esm/ion-loading.entry.js +15 -17
  540. package/dist/esm/ion-menu_3.entry.js +27 -45
  541. package/dist/esm/ion-modal.entry.js +142 -59
  542. package/dist/esm/ion-nav_2.entry.js +10 -13
  543. package/dist/esm/ion-picker-column-option.entry.js +6 -10
  544. package/dist/esm/ion-picker-column.entry.js +11 -11
  545. package/dist/esm/ion-picker.entry.js +5 -9
  546. package/dist/esm/ion-popover.entry.js +76 -28
  547. package/dist/esm/ion-progress-bar.entry.js +7 -25
  548. package/dist/esm/ion-radio_2.entry.js +14 -24
  549. package/dist/esm/ion-range.entry.js +10 -14
  550. package/dist/esm/ion-refresher_2.entry.js +19 -37
  551. package/dist/esm/ion-reorder_2.entry.js +14 -38
  552. package/dist/esm/ion-ripple-effect.entry.js +6 -14
  553. package/dist/esm/ion-route_4.entry.js +7 -8
  554. package/dist/esm/ion-searchbar.entry.js +24 -137
  555. package/dist/esm/ion-segment-content.entry.js +1 -1
  556. package/dist/esm/ion-segment-view.entry.js +2 -5
  557. package/dist/esm/ion-segment_2.entry.js +14 -21
  558. package/dist/esm/ion-select-modal.entry.js +10 -16
  559. package/dist/esm/ion-select_3.entry.js +40 -131
  560. package/dist/esm/ion-spinner.entry.js +6 -28
  561. package/dist/esm/ion-split-pane.entry.js +8 -11
  562. package/dist/esm/ion-tab-bar_2.entry.js +21 -75
  563. package/dist/esm/ion-tab_2.entry.js +6 -7
  564. package/dist/esm/ion-text.entry.js +5 -5
  565. package/dist/esm/ion-textarea.entry.js +15 -55
  566. package/dist/esm/ion-toast.entry.js +17 -40
  567. package/dist/esm/ion-toggle.entry.js +22 -79
  568. package/dist/esm/ionic-global-CDrldh-5.js +146 -0
  569. package/dist/esm/ionic.js +3 -3
  570. package/dist/esm/{ios.transition-uJxJFbq8.js → ios.transition-BDzw0_Hm.js} +4 -6
  571. package/dist/esm/{keyboard-CU1vRv-b.js → keyboard-CUw4ekVy.js} +1 -1
  572. package/dist/esm/{keyboard-controller-Dplyc4OV.js → keyboard-controller-BaaVITYt.js} +3 -5
  573. package/dist/esm/{keyboard-B-HHSSYU.js → keyboard-ywgs5efA.js} +3 -4
  574. package/dist/esm/loader.js +3 -3
  575. package/dist/esm/{md.transition-Dp4NTeSh.js → md.transition-BzDYi3qq.js} +4 -5
  576. package/dist/esm/{notch-controller-BvFDmO69.js → notch-controller-BwelN_JM.js} +2 -2
  577. package/dist/esm/{overlays-B037a9Tz.js → overlays-D5YkFThA.js} +6 -5
  578. package/dist/esm/{status-tap-DXVlluKS.js → status-tap-5DQ7Fc4V.js} +2 -3
  579. package/dist/esm/{swipe-back-DNhAt9fY.js → swipe-back-BKw2CAHc.js} +1 -2
  580. package/dist/html.html-data.json +214 -2520
  581. package/dist/ionic/index.esm.js +1 -1
  582. package/dist/ionic/ionic.esm.js +1 -1
  583. package/dist/ionic/p-020af078.entry.js +4 -0
  584. package/dist/ionic/p-02d76786.entry.js +4 -0
  585. package/dist/ionic/p-074839fc.entry.js +4 -0
  586. package/dist/ionic/p-0dfa5a37.entry.js +4 -0
  587. package/dist/ionic/p-11518b31.entry.js +4 -0
  588. package/dist/ionic/p-11aa58d6.entry.js +4 -0
  589. package/dist/ionic/p-1647c46c.entry.js +4 -0
  590. package/dist/ionic/p-2a939845.entry.js +4 -0
  591. package/dist/ionic/p-301ad219.entry.js +4 -0
  592. package/dist/ionic/p-316c0420.entry.js +4 -0
  593. package/dist/ionic/p-31f7095f.entry.js +4 -0
  594. package/dist/ionic/p-34642fa1.entry.js +4 -0
  595. package/dist/ionic/p-35696017.entry.js +4 -0
  596. package/dist/ionic/p-370e4237.entry.js +4 -0
  597. package/dist/ionic/p-3a6caca9.entry.js +4 -0
  598. package/dist/ionic/p-40c261a3.entry.js +4 -0
  599. package/dist/ionic/p-46d74291.entry.js +4 -0
  600. package/dist/ionic/p-481858c3.entry.js +4 -0
  601. package/dist/ionic/p-49d06882.entry.js +4 -0
  602. package/dist/ionic/p-4e41ea20.entry.js +4 -0
  603. package/dist/ionic/p-51a60e0f.entry.js +4 -0
  604. package/dist/ionic/p-582824c5.entry.js +4 -0
  605. package/dist/ionic/p-6241ce47.entry.js +4 -0
  606. package/dist/ionic/p-639dd543.entry.js +4 -0
  607. package/dist/ionic/p-6444c606.entry.js +4 -0
  608. package/dist/ionic/p-675b1a31.entry.js +4 -0
  609. package/dist/ionic/p-6d070558.entry.js +4 -0
  610. package/dist/ionic/p-7268efa5.entry.js +4 -0
  611. package/dist/ionic/p-72c38b88.entry.js +4 -0
  612. package/dist/ionic/p-732b2fd6.entry.js +4 -0
  613. package/dist/ionic/p-79bd78f9.entry.js +4 -0
  614. package/dist/ionic/p-7babec72.entry.js +4 -0
  615. package/dist/ionic/p-86f53961.entry.js +4 -0
  616. package/dist/ionic/p-94de5cfa.entry.js +4 -0
  617. package/dist/ionic/p-9575b654.entry.js +4 -0
  618. package/dist/ionic/p-9eeaBrnk.js +4 -0
  619. package/dist/ionic/p-B0q1YL7N.js +4 -0
  620. package/dist/ionic/p-BFvmZNyx.js +4 -0
  621. package/dist/ionic/p-BKc55Xev.js +4 -0
  622. package/dist/ionic/p-BOVrCkpJ.js +4 -0
  623. package/dist/ionic/p-BYEqWnSg.js +4 -0
  624. package/dist/ionic/p-BmVRXR1y.js +4 -0
  625. package/dist/ionic/p-Bmgaetn_.js +4 -0
  626. package/dist/ionic/p-C7hRNDhM.js +4 -0
  627. package/dist/ionic/p-CIGNaXM1.js +4 -0
  628. package/dist/ionic/{p-D-BelbiX.js → p-CJxh_yLS.js} +1 -1
  629. package/dist/ionic/{p-Cq83JWMg.js → p-CKvCXMs9.js} +1 -1
  630. package/dist/ionic/p-CTfR9YZG.js +4 -0
  631. package/dist/ionic/p-CtWGkNnJ.js +4 -0
  632. package/dist/ionic/{p-B3uz75uZ.js → p-CwgG81ZD.js} +1 -1
  633. package/dist/ionic/p-D-eFFUkA.js +4 -0
  634. package/dist/ionic/{p-HpOiAvpC.js → p-D0dMcSkw.js} +1 -1
  635. package/dist/ionic/{p-B-D7Cfki.js → p-D13Eaw-8.js} +1 -1
  636. package/dist/ionic/{p-C8r4dtYR.js → p-DCv9sLH2.js} +1 -1
  637. package/dist/ionic/p-DDb5r57F.js +4 -0
  638. package/dist/ionic/p-DNcfiJwE.js +4 -0
  639. package/dist/ionic/{p-q1ZSn0l7.js → p-DUt5fQmA.js} +1 -1
  640. package/dist/ionic/{p-COG0_eom.js → p-DV3sJJW8.js} +1 -1
  641. package/dist/ionic/p-DZRJwG4S.js +4 -0
  642. package/dist/ionic/{p-CtUK3cKk.js → p-Dc45iWE4.js} +1 -1
  643. package/dist/ionic/p-DdR6rpbR.js +4 -0
  644. package/dist/ionic/p-QHYY4sjU.js +4 -0
  645. package/dist/ionic/p-ZjP4CjeZ.js +4 -0
  646. package/dist/ionic/p-a127bee2.entry.js +4 -0
  647. package/dist/ionic/p-ac4eb91d.entry.js +4 -0
  648. package/dist/ionic/p-b0a7585c.entry.js +4 -0
  649. package/dist/ionic/p-b3d44509.entry.js +4 -0
  650. package/dist/ionic/p-c19af093.entry.js +4 -0
  651. package/dist/ionic/p-c19f63d0.entry.js +4 -0
  652. package/dist/ionic/p-cc45bcbc.entry.js +4 -0
  653. package/dist/ionic/p-d0a2a1ab.entry.js +4 -0
  654. package/dist/ionic/p-d126e8d3.entry.js +4 -0
  655. package/dist/ionic/p-d1f54e28.entry.js +4 -0
  656. package/dist/ionic/p-d3014190.entry.js +4 -0
  657. package/dist/ionic/p-da7d04cc.entry.js +4 -0
  658. package/dist/ionic/p-db82892c.entry.js +4 -0
  659. package/dist/ionic/p-dbbe606a.entry.js +4 -0
  660. package/dist/ionic/p-dd1aef77.entry.js +4 -0
  661. package/dist/ionic/p-eb024a5b.entry.js +4 -0
  662. package/dist/ionic/p-f8f22cc0.entry.js +4 -0
  663. package/dist/types/components/accordion/accordion.d.ts +3 -5
  664. package/dist/types/components/accordion-group/accordion-group.d.ts +1 -12
  665. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
  666. package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
  667. package/dist/types/components/alert/alert-interface.d.ts +7 -3
  668. package/dist/types/components/alert/alert.d.ts +2 -3
  669. package/dist/types/components/app/app.d.ts +2 -4
  670. package/dist/types/components/avatar/avatar.d.ts +0 -32
  671. package/dist/types/components/back-button/back-button.d.ts +1 -2
  672. package/dist/types/components/backdrop/backdrop.d.ts +0 -4
  673. package/dist/types/components/badge/badge.d.ts +1 -34
  674. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -4
  675. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  676. package/dist/types/components/button/button.d.ts +6 -19
  677. package/dist/types/components/buttons/buttons.d.ts +1 -5
  678. package/dist/types/components/card/card.d.ts +1 -8
  679. package/dist/types/components/card-content/card-content.d.ts +1 -2
  680. package/dist/types/components/card-header/card-header.d.ts +2 -3
  681. package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
  682. package/dist/types/components/card-title/card-title.d.ts +1 -2
  683. package/dist/types/components/checkbox/checkbox.d.ts +4 -14
  684. package/dist/types/components/chip/chip.d.ts +1 -26
  685. package/dist/types/components/col/col.d.ts +5 -52
  686. package/dist/types/components/content/content.d.ts +0 -3
  687. package/dist/types/components/datetime/datetime.d.ts +1 -26
  688. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  689. package/dist/types/components/datetime-button/datetime-button.d.ts +1 -2
  690. package/dist/types/components/fab/fab.d.ts +0 -4
  691. package/dist/types/components/fab-button/fab-button.d.ts +3 -5
  692. package/dist/types/components/fab-list/fab-list.d.ts +0 -4
  693. package/dist/types/components/footer/footer.d.ts +3 -4
  694. package/dist/types/components/grid/grid.d.ts +0 -4
  695. package/dist/types/components/header/header.d.ts +3 -9
  696. package/dist/types/components/header/header.utils.d.ts +3 -3
  697. package/dist/types/components/img/img.d.ts +0 -3
  698. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -21
  699. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +0 -4
  700. package/dist/types/components/input/input.d.ts +5 -31
  701. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +0 -2
  702. package/dist/types/components/item/item.d.ts +4 -11
  703. package/dist/types/components/item-divider/item-divider.d.ts +1 -2
  704. package/dist/types/components/item-group/item-group.d.ts +0 -4
  705. package/dist/types/components/item-option/item-option.d.ts +1 -18
  706. package/dist/types/components/item-options/item-options.d.ts +0 -4
  707. package/dist/types/components/item-sliding/item-sliding.d.ts +0 -4
  708. package/dist/types/components/label/label.d.ts +1 -2
  709. package/dist/types/components/list/list.d.ts +1 -15
  710. package/dist/types/components/list-header/list-header.d.ts +1 -2
  711. package/dist/types/components/loading/loading-interface.d.ts +7 -2
  712. package/dist/types/components/loading/loading.d.ts +2 -3
  713. package/dist/types/components/menu/menu.d.ts +0 -3
  714. package/dist/types/components/menu-button/menu-button.d.ts +1 -3
  715. package/dist/types/components/menu-toggle/menu-toggle.d.ts +0 -3
  716. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  717. package/dist/types/components/modal/gestures/swipe-to-close.d.ts +1 -1
  718. package/dist/types/components/modal/modal-interface.d.ts +7 -4
  719. package/dist/types/components/modal/modal.d.ts +25 -11
  720. package/dist/types/components/nav/nav-interface.d.ts +1 -9
  721. package/dist/types/components/nav/nav.d.ts +1 -5
  722. package/dist/types/components/nav-link/nav-link.d.ts +0 -4
  723. package/dist/types/components/note/note.d.ts +1 -2
  724. package/dist/types/components/picker/picker.d.ts +1 -2
  725. package/dist/types/components/picker-column/picker-column.d.ts +1 -2
  726. package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
  727. package/dist/types/components/picker-legacy/picker.d.ts +1 -2
  728. package/dist/types/components/popover/popover-interface.d.ts +6 -3
  729. package/dist/types/components/popover/popover.d.ts +5 -6
  730. package/dist/types/components/popover/utils.d.ts +2 -0
  731. package/dist/types/components/progress-bar/progress-bar.d.ts +1 -10
  732. package/dist/types/components/radio/radio.d.ts +1 -2
  733. package/dist/types/components/radio-group/radio-group.d.ts +0 -8
  734. package/dist/types/components/range/range.d.ts +1 -2
  735. package/dist/types/components/refresher/refresher.d.ts +1 -2
  736. package/dist/types/components/refresher-content/refresher-content.d.ts +0 -4
  737. package/dist/types/components/reorder/reorder.d.ts +0 -9
  738. package/dist/types/components/reorder-group/reorder-group.d.ts +0 -4
  739. package/dist/types/components/ripple-effect/ripple-effect.d.ts +0 -4
  740. package/dist/types/components/route/route.d.ts +0 -4
  741. package/dist/types/components/router/router.d.ts +0 -4
  742. package/dist/types/components/router-link/router-link.d.ts +0 -4
  743. package/dist/types/components/router-outlet/router-outlet.d.ts +1 -4
  744. package/dist/types/components/row/row.d.ts +0 -4
  745. package/dist/types/components/searchbar/searchbar.d.ts +9 -51
  746. package/dist/types/components/segment/segment.d.ts +1 -2
  747. package/dist/types/components/segment-button/segment-button.d.ts +1 -2
  748. package/dist/types/components/select/select.d.ts +13 -41
  749. package/dist/types/components/select-modal/select-modal.d.ts +0 -1
  750. package/dist/types/components/select-option/select-option.d.ts +0 -4
  751. package/dist/types/components/select-popover/select-popover.d.ts +0 -3
  752. package/dist/types/components/skeleton-text/skeleton-text.d.ts +0 -4
  753. package/dist/types/components/spinner/spinner.d.ts +0 -15
  754. package/dist/types/components/split-pane/split-pane.d.ts +0 -4
  755. package/dist/types/components/tab/tab.d.ts +0 -4
  756. package/dist/types/components/tab-bar/tab-bar.d.ts +2 -22
  757. package/dist/types/components/tab-button/tab-button.d.ts +1 -12
  758. package/dist/types/components/tabs/tabs.d.ts +0 -3
  759. package/dist/types/components/text/text.d.ts +1 -2
  760. package/dist/types/components/textarea/textarea.d.ts +4 -17
  761. package/dist/types/components/thumbnail/thumbnail.d.ts +0 -4
  762. package/dist/types/components/title/title.d.ts +0 -4
  763. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  764. package/dist/types/components/toast/toast-interface.d.ts +7 -3
  765. package/dist/types/components/toast/toast.d.ts +2 -19
  766. package/dist/types/components/toggle/toggle.d.ts +1 -15
  767. package/dist/types/components/toolbar/toolbar.d.ts +3 -20
  768. package/dist/types/components.d.ts +196 -1593
  769. package/dist/types/global/ionic-global.d.ts +2 -27
  770. package/dist/types/interface.d.ts +0 -3
  771. package/dist/types/utils/config.d.ts +2 -106
  772. package/dist/types/utils/focus-visible.d.ts +0 -13
  773. package/dist/types/utils/helpers.d.ts +0 -11
  774. package/dist/types/utils/overlays-interface.d.ts +1 -31
  775. package/dist/types/utils/test/playwright/generator.d.ts +2 -31
  776. package/hydrate/index.js +1121 -2890
  777. package/hydrate/index.mjs +1121 -2890
  778. package/package.json +4 -8
  779. package/components/caret-down.js +0 -6
  780. package/components/caret-left.js +0 -6
  781. package/components/caret-right.js +0 -6
  782. package/components/ion-divider.d.ts +0 -11
  783. package/components/ion-divider.js +0 -72
  784. package/components/list2.js +0 -6
  785. package/components/x.js +0 -6
  786. package/css/ionic/bundle.ionic.css +0 -1
  787. package/css/ionic/bundle.ionic.css.map +0 -1
  788. package/css/ionic/core.ionic.css +0 -1
  789. package/css/ionic/core.ionic.css.map +0 -1
  790. package/css/ionic/global.bundle.ionic.css +0 -1
  791. package/css/ionic/global.bundle.ionic.css.map +0 -1
  792. package/css/ionic/ionic-swiper.ionic.css +0 -1
  793. package/css/ionic/ionic-swiper.ionic.css.map +0 -1
  794. package/css/ionic/link.ionic.css +0 -1
  795. package/css/ionic/link.ionic.css.map +0 -1
  796. package/css/ionic/structure.ionic.css +0 -1
  797. package/css/ionic/structure.ionic.css.map +0 -1
  798. package/css/ionic/typography.ionic.css +0 -1
  799. package/css/ionic/typography.ionic.css.map +0 -1
  800. package/css/ionic/utils.bundle.ionic.css +0 -1
  801. package/css/ionic/utils.bundle.ionic.css.map +0 -1
  802. package/dist/cjs/caret-down-vtVgfXIs.js +0 -8
  803. package/dist/cjs/caret-left-CxZXLRv5.js +0 -8
  804. package/dist/cjs/caret-right-CRCgv98E.js +0 -8
  805. package/dist/cjs/ion-divider.cjs.entry.js +0 -51
  806. package/dist/cjs/ionic-global-DpRwOXLK.js +0 -506
  807. package/dist/cjs/list-a-7GSA6K.js +0 -8
  808. package/dist/cjs/x-BTF99yFH.js +0 -8
  809. package/dist/collection/components/accordion/accordion.ionic.css +0 -196
  810. package/dist/collection/components/accordion-group/accordion-group.ionic.css +0 -93
  811. package/dist/collection/components/avatar/avatar.ionic.css +0 -391
  812. package/dist/collection/components/backdrop/backdrop.ionic.css +0 -109
  813. package/dist/collection/components/badge/badge.ionic.css +0 -275
  814. package/dist/collection/components/button/button.ionic.css +0 -636
  815. package/dist/collection/components/buttons/buttons.ionic.css +0 -97
  816. package/dist/collection/components/card/card.ionic.css +0 -144
  817. package/dist/collection/components/card-content/card-content.ionic.css +0 -92
  818. package/dist/collection/components/card-header/card-header.ionic.css +0 -85
  819. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +0 -144
  820. package/dist/collection/components/checkbox/checkbox.ionic.css +0 -539
  821. package/dist/collection/components/chip/chip.ionic.css +0 -215
  822. package/dist/collection/components/datetime/datetime.ionic.css +0 -711
  823. package/dist/collection/components/divider/divider.ionic.css +0 -148
  824. package/dist/collection/components/divider/divider.ios.css +0 -87
  825. package/dist/collection/components/divider/divider.js +0 -94
  826. package/dist/collection/components/divider/divider.md.css +0 -87
  827. package/dist/collection/components/header/header.ionic.css +0 -97
  828. package/dist/collection/components/input/input.ionic.css +0 -885
  829. package/dist/collection/components/input-otp/input-otp.ionic.css +0 -369
  830. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +0 -78
  831. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +0 -61
  832. package/dist/collection/components/item/item.ionic.css +0 -508
  833. package/dist/collection/components/item-option/item-option.ionic.css +0 -278
  834. package/dist/collection/components/item-options/item-options.ionic.css +0 -221
  835. package/dist/collection/components/list/list.ionic.css +0 -212
  836. package/dist/collection/components/list-header/list-header.ionic.css +0 -190
  837. package/dist/collection/components/menu-button/menu-button.ionic.css +0 -236
  838. package/dist/collection/components/modal/modal.ionic.css +0 -247
  839. package/dist/collection/components/progress-bar/progress-bar.ionic.css +0 -287
  840. package/dist/collection/components/radio/radio.ionic.css +0 -422
  841. package/dist/collection/components/radio-group/radio-group.ionic.css +0 -119
  842. package/dist/collection/components/range/range.ionic.css +0 -563
  843. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +0 -215
  844. package/dist/collection/components/searchbar/searchbar.ionic.css +0 -626
  845. package/dist/collection/components/segment/segment.ionic.css +0 -115
  846. package/dist/collection/components/segment-button/segment-button.ionic.css +0 -351
  847. package/dist/collection/components/select/select.ionic.css +0 -777
  848. package/dist/collection/components/select-modal/select-modal.ionic.css +0 -130
  849. package/dist/collection/components/spinner/spinner.native.css +0 -198
  850. package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -201
  851. package/dist/collection/components/tab-button/tab-button.ionic.css +0 -337
  852. package/dist/collection/components/textarea/textarea.ionic.css +0 -885
  853. package/dist/collection/components/title/title.ionic.css +0 -127
  854. package/dist/collection/components/toast/toast.ionic.css +0 -394
  855. package/dist/collection/components/toggle/toggle.ionic.css +0 -508
  856. package/dist/collection/components/toolbar/test/image.svg +0 -1
  857. package/dist/collection/components/toolbar/toolbar.ionic.css +0 -241
  858. package/dist/esm/caret-down-D1t981Ih.js +0 -6
  859. package/dist/esm/caret-left-fIOYmaqA.js +0 -6
  860. package/dist/esm/caret-right-BYSs-jZz.js +0 -6
  861. package/dist/esm/ion-divider.entry.js +0 -49
  862. package/dist/esm/ionic-global-2lDD9k7y.js +0 -495
  863. package/dist/esm/list-Dhi5xtNS.js +0 -6
  864. package/dist/esm/x-BDqjX7Z_.js +0 -6
  865. package/dist/ionic/p-01577340.entry.js +0 -4
  866. package/dist/ionic/p-04b1d37a.entry.js +0 -4
  867. package/dist/ionic/p-04e0ff62.entry.js +0 -4
  868. package/dist/ionic/p-0607ce8e.entry.js +0 -4
  869. package/dist/ionic/p-0744265c.entry.js +0 -4
  870. package/dist/ionic/p-0ac7c560.entry.js +0 -4
  871. package/dist/ionic/p-0c41c8a8.entry.js +0 -4
  872. package/dist/ionic/p-0eecce18.entry.js +0 -4
  873. package/dist/ionic/p-0f124806.entry.js +0 -4
  874. package/dist/ionic/p-19b2060d.entry.js +0 -4
  875. package/dist/ionic/p-27dbb44c.entry.js +0 -4
  876. package/dist/ionic/p-28a9d991.entry.js +0 -4
  877. package/dist/ionic/p-2dc676b2.entry.js +0 -4
  878. package/dist/ionic/p-381eb2a4.entry.js +0 -4
  879. package/dist/ionic/p-412d5d9e.entry.js +0 -4
  880. package/dist/ionic/p-42149296.entry.js +0 -4
  881. package/dist/ionic/p-472b2ca3.entry.js +0 -4
  882. package/dist/ionic/p-5543b7b8.entry.js +0 -4
  883. package/dist/ionic/p-57a2d30b.entry.js +0 -4
  884. package/dist/ionic/p-59a79bd9.entry.js +0 -4
  885. package/dist/ionic/p-5daa0980.entry.js +0 -4
  886. package/dist/ionic/p-5f9d9c14.entry.js +0 -4
  887. package/dist/ionic/p-60549f06.entry.js +0 -4
  888. package/dist/ionic/p-616dd053.entry.js +0 -4
  889. package/dist/ionic/p-63a2b52a.entry.js +0 -4
  890. package/dist/ionic/p-68c064ce.entry.js +0 -4
  891. package/dist/ionic/p-6bb99f41.entry.js +0 -4
  892. package/dist/ionic/p-742fed9f.entry.js +0 -4
  893. package/dist/ionic/p-7fe3ea65.entry.js +0 -4
  894. package/dist/ionic/p-826267d6.entry.js +0 -4
  895. package/dist/ionic/p-8681a2a7.entry.js +0 -4
  896. package/dist/ionic/p-8ee09d4e.entry.js +0 -4
  897. package/dist/ionic/p-8f541b05.entry.js +0 -4
  898. package/dist/ionic/p-BDqjX7Z_.js +0 -4
  899. package/dist/ionic/p-BYSs-jZz.js +0 -4
  900. package/dist/ionic/p-BiTKUjko.js +0 -4
  901. package/dist/ionic/p-ByhhQryg.js +0 -4
  902. package/dist/ionic/p-CK1xn1Nt.js +0 -4
  903. package/dist/ionic/p-COLHV2ym.js +0 -4
  904. package/dist/ionic/p-C_97se21.js +0 -4
  905. package/dist/ionic/p-CvRDI-Iz.js +0 -4
  906. package/dist/ionic/p-D1t981Ih.js +0 -4
  907. package/dist/ionic/p-DHeUgOSJ.js +0 -4
  908. package/dist/ionic/p-DM-v_NNE.js +0 -4
  909. package/dist/ionic/p-DeEDqH91.js +0 -4
  910. package/dist/ionic/p-Dhi5xtNS.js +0 -4
  911. package/dist/ionic/p-DoGrslUl.js +0 -4
  912. package/dist/ionic/p-Dq8ap6AD.js +0 -4
  913. package/dist/ionic/p-DyaKZbAH.js +0 -4
  914. package/dist/ionic/p-UafGZQ8e.js +0 -4
  915. package/dist/ionic/p-a35678f4.entry.js +0 -4
  916. package/dist/ionic/p-a6a37a34.entry.js +0 -4
  917. package/dist/ionic/p-a89211bd.entry.js +0 -4
  918. package/dist/ionic/p-add1a5d8.entry.js +0 -4
  919. package/dist/ionic/p-af1f624e.entry.js +0 -4
  920. package/dist/ionic/p-b475ec18.entry.js +0 -4
  921. package/dist/ionic/p-bd295ca7.entry.js +0 -4
  922. package/dist/ionic/p-be82dc77.entry.js +0 -4
  923. package/dist/ionic/p-c082f853.entry.js +0 -4
  924. package/dist/ionic/p-c19b5c8c.entry.js +0 -4
  925. package/dist/ionic/p-cdbfbff6.entry.js +0 -4
  926. package/dist/ionic/p-d3f64c58.entry.js +0 -4
  927. package/dist/ionic/p-d9c9592a.entry.js +0 -4
  928. package/dist/ionic/p-da0a2ca6.entry.js +0 -4
  929. package/dist/ionic/p-da49c0fe.entry.js +0 -4
  930. package/dist/ionic/p-dacd8666.entry.js +0 -4
  931. package/dist/ionic/p-e1d84521.entry.js +0 -4
  932. package/dist/ionic/p-ecba552f.entry.js +0 -4
  933. package/dist/ionic/p-ecf8e713.entry.js +0 -4
  934. package/dist/ionic/p-f667945d.entry.js +0 -4
  935. package/dist/ionic/p-fIOYmaqA.js +0 -4
  936. package/dist/ionic/p-nP9c7bo5.js +0 -4
  937. package/dist/ionic/p-of4jy1ch.js +0 -4
  938. package/dist/ionic/p-qZR4N8Lu.js +0 -4
  939. package/dist/ionic/p-vXpMhGrs.js +0 -4
  940. package/dist/types/components/divider/divider.d.ts +0 -20
  941. /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/palettes/dark.system.scss","../../src/css/palettes/dark.scss"],"names":[],"mappings":"AAEA,mCC8EE,MAEI,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,+BACA,wCACA,qCACA,4CACA,qCACA,oCALA,8BACA,wCACA,oCACA,2CACA,oCACA,mCALA,6BACA,qCACA,mCACA,0CACA,mCACA,kCALA,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,4BACA,oCACA,kCACA,yCACA,kCACA,iCALA,2BACA,kCACA,iCACA,8CACA,iCACA,gCALA,4BACA,sCACA,kCACA,yCACA,kCACA,iCALA,0BACA,oCACA,gCACA,uCACA,gCACA,+BAMJ,UACE,gCACA,oCACA,0BACA,oCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,+BACA,+BAGF,oBACE,wFACA,0FACA,4FAKF,SACE,gCACA,uCACA,0BACA,oCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,+BACA,kCACA,kCACA","file":"dark.system.css","sourcesContent":["@import \"./dark\";\n\n@media (prefers-color-scheme: dark) {\n :root {\n @include dark-base-palette();\n }\n\n :root.ios {\n @include dark-ios-palette();\n }\n\n :root.md {\n @include dark-md-palette();\n }\n}\n","@use \"sass:map\";\n@import \"../../themes/functions.color\";\n\n$primary: #4d8dff;\n$secondary: #46b1ff;\n$tertiary: #8482fb;\n$success: #2dd55b;\n$warning: #ffce31;\n$danger: #f24c58;\n$light: #222428;\n$medium: #989aa2;\n$dark: #f4f5f8;\n\n$colors: (\n primary: (\n base: $primary,\n contrast: #000,\n shade: get-color-shade($primary),\n tint: get-color-tint($primary),\n foreground: $primary,\n ),\n secondary: (\n base: $secondary,\n contrast: #000,\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary),\n foreground: $secondary,\n ),\n tertiary: (\n base: $tertiary,\n contrast: #000,\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary),\n foreground: $tertiary,\n ),\n success: (\n base: $success,\n contrast: #000,\n shade: get-color-shade($success),\n tint: get-color-tint($success),\n foreground: $success,\n ),\n warning: (\n base: $warning,\n contrast: #000,\n shade: get-color-shade($warning),\n tint: get-color-tint($warning),\n foreground: $warning,\n ),\n danger: (\n base: $danger,\n contrast: #000,\n shade: get-color-shade($danger),\n tint: get-color-tint($danger),\n foreground: $danger,\n ),\n light: (\n base: $light,\n contrast: #fff,\n shade: get-color-shade($light),\n tint: get-color-tint($light),\n foreground: $light,\n ),\n medium: (\n base: $medium,\n contrast: #000,\n shade: get-color-shade($medium),\n tint: get-color-tint($medium),\n foreground: $medium,\n ),\n dark: (\n base: $dark,\n contrast: #000,\n shade: get-color-shade($dark),\n tint: get-color-tint($dark),\n foreground: $dark,\n ),\n);\n\n@mixin dark-base-palette() {\n & {\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n }\n}\n\n@mixin dark-ios-palette() {\n & {\n --ion-background-color: #000000;\n --ion-background-color-rgb: 0, 0, 0;\n --ion-text-color: #ffffff;\n --ion-text-color-rgb: 255, 255, 255;\n --ion-background-color-step-50: #0d0d0d;\n --ion-background-color-step-100: #1a1a1a;\n --ion-background-color-step-150: #262626;\n --ion-background-color-step-200: #333333;\n --ion-background-color-step-250: #404040;\n --ion-background-color-step-300: #4d4d4d;\n --ion-background-color-step-350: #595959;\n --ion-background-color-step-400: #666666;\n --ion-background-color-step-450: #737373;\n --ion-background-color-step-500: #808080;\n --ion-background-color-step-550: #8c8c8c;\n --ion-background-color-step-600: #999999;\n --ion-background-color-step-650: #a6a6a6;\n --ion-background-color-step-700: #b3b3b3;\n --ion-background-color-step-750: #bfbfbf;\n --ion-background-color-step-800: #cccccc;\n --ion-background-color-step-850: #d9d9d9;\n --ion-background-color-step-900: #e6e6e6;\n --ion-background-color-step-950: #f2f2f2;\n --ion-text-color-step-50: #f2f2f2;\n --ion-text-color-step-100: #e6e6e6;\n --ion-text-color-step-150: #d9d9d9;\n --ion-text-color-step-200: #cccccc;\n --ion-text-color-step-250: #bfbfbf;\n --ion-text-color-step-300: #b3b3b3;\n --ion-text-color-step-350: #a6a6a6;\n --ion-text-color-step-400: #999999;\n --ion-text-color-step-450: #8c8c8c;\n --ion-text-color-step-500: #808080;\n --ion-text-color-step-550: #737373;\n --ion-text-color-step-600: #666666;\n --ion-text-color-step-650: #595959;\n --ion-text-color-step-700: #4d4d4d;\n --ion-text-color-step-750: #404040;\n --ion-text-color-step-800: #333333;\n --ion-text-color-step-850: #262626;\n --ion-text-color-step-900: #1a1a1a;\n --ion-text-color-step-950: #0d0d0d;\n --ion-item-background: #000000;\n --ion-card-background: #1c1c1d;\n }\n\n & ion-modal {\n --ion-background-color: var(--ion-color-step-100, var(--ion-background-color-step-100));\n --ion-toolbar-background: var(--ion-color-step-150, var(--ion-background-color-step-150));\n --ion-toolbar-border-color: var(--ion-color-step-250, var(--ion-background-color-step-250));\n }\n}\n\n@mixin dark-md-palette() {\n & {\n --ion-background-color: #121212;\n --ion-background-color-rgb: 18, 18, 18;\n --ion-text-color: #ffffff;\n --ion-text-color-rgb: 255, 255, 255;\n --ion-background-color-step-50: #1e1e1e;\n --ion-background-color-step-100: #2a2a2a;\n --ion-background-color-step-150: #363636;\n --ion-background-color-step-200: #414141;\n --ion-background-color-step-250: #4d4d4d;\n --ion-background-color-step-300: #595959;\n --ion-background-color-step-350: #656565;\n --ion-background-color-step-400: #717171;\n --ion-background-color-step-450: #7d7d7d;\n --ion-background-color-step-500: #898989;\n --ion-background-color-step-550: #949494;\n --ion-background-color-step-600: #a0a0a0;\n --ion-background-color-step-650: #acacac;\n --ion-background-color-step-700: #b8b8b8;\n --ion-background-color-step-750: #c4c4c4;\n --ion-background-color-step-800: #d0d0d0;\n --ion-background-color-step-850: #dbdbdb;\n --ion-background-color-step-900: #e7e7e7;\n --ion-background-color-step-950: #f3f3f3;\n --ion-text-color-step-50: #f3f3f3;\n --ion-text-color-step-100: #e7e7e7;\n --ion-text-color-step-150: #dbdbdb;\n --ion-text-color-step-200: #d0d0d0;\n --ion-text-color-step-250: #c4c4c4;\n --ion-text-color-step-300: #b8b8b8;\n --ion-text-color-step-350: #acacac;\n --ion-text-color-step-400: #a0a0a0;\n --ion-text-color-step-450: #949494;\n --ion-text-color-step-500: #898989;\n --ion-text-color-step-550: #7d7d7d;\n --ion-text-color-step-600: #717171;\n --ion-text-color-step-650: #656565;\n --ion-text-color-step-700: #595959;\n --ion-text-color-step-750: #4d4d4d;\n --ion-text-color-step-800: #414141;\n --ion-text-color-step-850: #363636;\n --ion-text-color-step-900: #2a2a2a;\n --ion-text-color-step-950: #1e1e1e;\n --ion-item-background: #1e1e1e;\n --ion-toolbar-background: #1f1f1f;\n --ion-tab-bar-background: #1f1f1f;\n --ion-card-background: #1e1e1e;\n }\n}\n"]}
1
+ {"version":3,"sourceRoot":"","sources":["../../src/css/palettes/dark.system.scss","../../src/css/palettes/dark.scss"],"names":[],"mappings":"AAEA,mCCqEE,MAEI,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,+BACA,wCACA,qCACA,4CACA,qCACA,oCALA,8BACA,wCACA,oCACA,2CACA,oCACA,mCALA,6BACA,qCACA,mCACA,0CACA,mCACA,kCALA,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,4BACA,oCACA,kCACA,yCACA,kCACA,iCALA,2BACA,kCACA,iCACA,8CACA,iCACA,gCALA,4BACA,sCACA,kCACA,yCACA,kCACA,iCALA,0BACA,oCACA,gCACA,uCACA,gCACA,+BAMJ,UACE,gCACA,oCACA,0BACA,oCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,+BACA,+BAGF,oBACE,wFACA,0FACA,4FAKF,SACE,gCACA,uCACA,0BACA,oCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,+BACA,kCACA,kCACA","file":"dark.system.css","sourcesContent":["@import \"./dark\";\n\n@media (prefers-color-scheme: dark) {\n :root {\n @include dark-base-palette();\n }\n\n :root.ios {\n @include dark-ios-palette();\n }\n\n :root.md {\n @include dark-md-palette();\n }\n}\n","@use \"sass:map\";\n@import \"../../themes/ionic.functions.color\";\n\n$primary: #4d8dff;\n$secondary: #46b1ff;\n$tertiary: #8482fb;\n$success: #2dd55b;\n$warning: #ffce31;\n$danger: #f24c58;\n$light: #222428;\n$medium: #989aa2;\n$dark: #f4f5f8;\n\n$colors: (\n primary: (\n base: $primary,\n contrast: #000,\n shade: get-color-shade($primary),\n tint: get-color-tint($primary)\n ),\n secondary: (\n base: $secondary,\n contrast: #000,\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary)\n ),\n tertiary: (\n base: $tertiary,\n contrast: #000,\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary)\n ),\n success: (\n base: $success,\n contrast: #000,\n shade: get-color-shade($success),\n tint: get-color-tint($success)\n ),\n warning: (\n base: $warning,\n contrast: #000,\n shade: get-color-shade($warning),\n tint: get-color-tint($warning)\n ),\n danger: (\n base: $danger,\n contrast: #000,\n shade: get-color-shade($danger),\n tint: get-color-tint($danger)\n ),\n light: (\n base: $light,\n contrast: #fff,\n shade: get-color-shade($light),\n tint: get-color-tint($light)\n ),\n medium: (\n base: $medium,\n contrast: #000,\n shade: get-color-shade($medium),\n tint: get-color-tint($medium)\n ),\n dark: (\n base: $dark,\n contrast: #000,\n shade: get-color-shade($dark),\n tint: get-color-tint($dark)\n )\n);\n\n@mixin dark-base-palette() {\n & {\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n }\n}\n\n@mixin dark-ios-palette() {\n & {\n --ion-background-color: #000000;\n --ion-background-color-rgb: 0, 0, 0;\n --ion-text-color: #ffffff;\n --ion-text-color-rgb: 255, 255, 255;\n --ion-background-color-step-50: #0d0d0d;\n --ion-background-color-step-100: #1a1a1a;\n --ion-background-color-step-150: #262626;\n --ion-background-color-step-200: #333333;\n --ion-background-color-step-250: #404040;\n --ion-background-color-step-300: #4d4d4d;\n --ion-background-color-step-350: #595959;\n --ion-background-color-step-400: #666666;\n --ion-background-color-step-450: #737373;\n --ion-background-color-step-500: #808080;\n --ion-background-color-step-550: #8c8c8c;\n --ion-background-color-step-600: #999999;\n --ion-background-color-step-650: #a6a6a6;\n --ion-background-color-step-700: #b3b3b3;\n --ion-background-color-step-750: #bfbfbf;\n --ion-background-color-step-800: #cccccc;\n --ion-background-color-step-850: #d9d9d9;\n --ion-background-color-step-900: #e6e6e6;\n --ion-background-color-step-950: #f2f2f2;\n --ion-text-color-step-50: #f2f2f2;\n --ion-text-color-step-100: #e6e6e6;\n --ion-text-color-step-150: #d9d9d9;\n --ion-text-color-step-200: #cccccc;\n --ion-text-color-step-250: #bfbfbf;\n --ion-text-color-step-300: #b3b3b3;\n --ion-text-color-step-350: #a6a6a6;\n --ion-text-color-step-400: #999999;\n --ion-text-color-step-450: #8c8c8c;\n --ion-text-color-step-500: #808080;\n --ion-text-color-step-550: #737373;\n --ion-text-color-step-600: #666666;\n --ion-text-color-step-650: #595959;\n --ion-text-color-step-700: #4d4d4d;\n --ion-text-color-step-750: #404040;\n --ion-text-color-step-800: #333333;\n --ion-text-color-step-850: #262626;\n --ion-text-color-step-900: #1a1a1a;\n --ion-text-color-step-950: #0d0d0d;\n --ion-item-background: #000000;\n --ion-card-background: #1c1c1d;\n }\n\n & ion-modal {\n --ion-background-color: var(--ion-color-step-100, var(--ion-background-color-step-100));\n --ion-toolbar-background: var(--ion-color-step-150, var(--ion-background-color-step-150));\n --ion-toolbar-border-color: var(--ion-color-step-250, var(--ion-background-color-step-250));\n }\n}\n\n@mixin dark-md-palette() {\n & {\n --ion-background-color: #121212;\n --ion-background-color-rgb: 18, 18, 18;\n --ion-text-color: #ffffff;\n --ion-text-color-rgb: 255, 255, 255;\n --ion-background-color-step-50: #1e1e1e;\n --ion-background-color-step-100: #2a2a2a;\n --ion-background-color-step-150: #363636;\n --ion-background-color-step-200: #414141;\n --ion-background-color-step-250: #4d4d4d;\n --ion-background-color-step-300: #595959;\n --ion-background-color-step-350: #656565;\n --ion-background-color-step-400: #717171;\n --ion-background-color-step-450: #7d7d7d;\n --ion-background-color-step-500: #898989;\n --ion-background-color-step-550: #949494;\n --ion-background-color-step-600: #a0a0a0;\n --ion-background-color-step-650: #acacac;\n --ion-background-color-step-700: #b8b8b8;\n --ion-background-color-step-750: #c4c4c4;\n --ion-background-color-step-800: #d0d0d0;\n --ion-background-color-step-850: #dbdbdb;\n --ion-background-color-step-900: #e7e7e7;\n --ion-background-color-step-950: #f3f3f3;\n --ion-text-color-step-50: #f3f3f3;\n --ion-text-color-step-100: #e7e7e7;\n --ion-text-color-step-150: #dbdbdb;\n --ion-text-color-step-200: #d0d0d0;\n --ion-text-color-step-250: #c4c4c4;\n --ion-text-color-step-300: #b8b8b8;\n --ion-text-color-step-350: #acacac;\n --ion-text-color-step-400: #a0a0a0;\n --ion-text-color-step-450: #949494;\n --ion-text-color-step-500: #898989;\n --ion-text-color-step-550: #7d7d7d;\n --ion-text-color-step-600: #717171;\n --ion-text-color-step-650: #656565;\n --ion-text-color-step-700: #595959;\n --ion-text-color-step-750: #4d4d4d;\n --ion-text-color-step-800: #414141;\n --ion-text-color-step-850: #363636;\n --ion-text-color-step-900: #2a2a2a;\n --ion-text-color-step-950: #1e1e1e;\n --ion-item-background: #1e1e1e;\n --ion-toolbar-background: #1f1f1f;\n --ion-tab-bar-background: #1f1f1f;\n --ion-card-background: #1e1e1e;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../src/css/palettes/high-contrast-dark.scss"],"names":[],"mappings":"AAyGE,MACE,+BAGE,6BACA,uCACA,mCACA,0CACA,mCACA,kCALA,+BACA,wCACA,qCACA,4CACA,qCACA,oCALA,8BACA,wCACA,oCACA,2CACA,oCACA,mCALA,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,4BACA,sCACA,kCACA,yCACA,kCACA,iCALA,2BACA,kCACA,iCACA,8CACA,iCACA,gCALA,4BACA,sCACA,kCACA,yCACA,kCACA,iCALA,0BACA,oCACA,gCACA,uCACA,gCACA,+BAQJ,UACE,gCACA,oCACA,0BACA,oCACA,+BACA,+BAIA,8DACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,sCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCAMF,oBACE,6DACA,+DACA,iEAOF,SACE,gCACA,uCACA,0BACA,oCACA,4BACA,+BACA,kCACA,kCACA,+BAIA,8DACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCAMF,mBACE,qCAGF,iCAEE,mBAIF,gDACE,iCACE,iEAIJ,wCACE","file":"high-contrast-dark.always.css","sourcesContent":["@use \"sass:map\";\n@import \"../../themes/functions.color\";\n\n$primary: #7cabff;\n$secondary: #62bdff;\n$tertiary: #b6b9f9;\n$success: #4ada71;\n$warning: #ffce31;\n$danger: #fc9aa2;\n$light: #222428;\n$medium: #a8aab3;\n$dark: #f4f5f8;\n\n$colors: (\n primary: (\n base: $primary,\n contrast: #000,\n shade: get-color-shade($primary),\n tint: get-color-tint($primary),\n foreground: $primary,\n ),\n secondary: (\n base: $secondary,\n contrast: #000,\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary),\n foreground: $secondary,\n ),\n tertiary: (\n base: $tertiary,\n contrast: #000,\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary),\n foreground: $tertiary,\n ),\n success: (\n base: $success,\n contrast: #000,\n shade: get-color-shade($success),\n tint: get-color-tint($success),\n foreground: $success,\n ),\n warning: (\n base: $warning,\n contrast: #000,\n shade: get-color-shade($warning),\n tint: get-color-tint($warning),\n foreground: $warning,\n ),\n danger: (\n base: $danger,\n contrast: #000,\n shade: get-color-shade($danger),\n tint: get-color-tint($danger),\n foreground: $danger,\n ),\n light: (\n base: $light,\n contrast: #fff,\n shade: get-color-shade($light),\n tint: get-color-tint($light),\n foreground: $light,\n ),\n medium: (\n base: $medium,\n contrast: #000,\n shade: get-color-shade($medium),\n tint: get-color-tint($medium),\n foreground: $medium,\n ),\n dark: (\n base: $dark,\n contrast: #000,\n shade: get-color-shade($dark),\n tint: get-color-tint($dark),\n foreground: $dark,\n ),\n);\n\n/// Text step colors are generated based on\n/// how dark or light text can be. The darkest\n/// text color is usually the default text color (white or black).\n/// The darker the $lightest-text-color is, the darker each\n/// stepped color is. If you want to increase text contrast,\n/// make $lightest-text-color darker.\n$text-color: #ffffff;\n\n$darkest-text-color: #888888;\n$lightest-text-color: $text-color;\n\n/// Loop through each color object above\n/// and generate CSS Variables for each\n/// color. Do not use the ion-color function\n/// here because that will set the variable\n/// to evaluate to itself with a fallback.\n/// For example:\n/// --ion-color-primary: #{ion-color(primary, base)};\n/// Maps to:\n/// --ion-color-primary: var(--ion-color-primary, #...);\n\n/// We apply certain styles to the per-mode classes (ios and md)\n/// as opposed to setting everything in :root\n// so any high contrast dark styles override the standard\n/// contrast dark styles.\n@mixin high-contrast-dark-base-palette() {\n & {\n --ion-placeholder-opacity: 0.8;\n\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n }\n}\n\n@mixin high-contrast-dark-ios-palette() {\n $background-color: #000000;\n\n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-item-background: #000000;\n --ion-card-background: #1c1c1d;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: var(--ion-background-color-step-400);\n --ion-text-color-step-50: #{mix($darkest-text-color, $lightest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($darkest-text-color, $lightest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($darkest-text-color, $lightest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($darkest-text-color, $lightest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($darkest-text-color, $lightest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($darkest-text-color, $lightest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($darkest-text-color, $lightest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($darkest-text-color, $lightest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($darkest-text-color, $lightest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($darkest-text-color, $lightest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($darkest-text-color, $lightest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($darkest-text-color, $lightest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($darkest-text-color, $lightest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($darkest-text-color, $lightest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($darkest-text-color, $lightest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($darkest-text-color, $lightest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($darkest-text-color, $lightest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($darkest-text-color, $lightest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($darkest-text-color, $lightest-text-color, 95%)};\n --ion-background-color-step-50: #{mix($text-color, $background-color, 5%)};\n --ion-background-color-step-100: #{mix($text-color, $background-color, 10%)};\n --ion-background-color-step-150: #{mix($text-color, $background-color, 15%)};\n --ion-background-color-step-200: #{mix($text-color, $background-color, 20%)};\n --ion-background-color-step-250: #{mix($text-color, $background-color, 25%)};\n --ion-background-color-step-300: #{mix($text-color, $background-color, 30%)};\n --ion-background-color-step-350: #{mix($text-color, $background-color, 35%)};\n --ion-background-color-step-400: #{mix($text-color, $background-color, 40%)};\n --ion-background-color-step-450: #{mix($text-color, $background-color, 45%)};\n --ion-background-color-step-500: #{mix($text-color, $background-color, 50%)};\n --ion-background-color-step-550: #{mix($text-color, $background-color, 55%)};\n --ion-background-color-step-600: #{mix($text-color, $background-color, 60%)};\n --ion-background-color-step-650: #{mix($text-color, $background-color, 65%)};\n --ion-background-color-step-700: #{mix($text-color, $background-color, 70%)};\n --ion-background-color-step-750: #{mix($text-color, $background-color, 75%)};\n --ion-background-color-step-800: #{mix($text-color, $background-color, 80%)};\n --ion-background-color-step-850: #{mix($text-color, $background-color, 85%)};\n --ion-background-color-step-900: #{mix($text-color, $background-color, 90%)};\n --ion-background-color-step-950: #{mix($text-color, $background-color, 95%)};\n }\n\n // Modal\n // --------------------------------------------------\n\n & ion-modal {\n --ion-background-color: var(--ion-background-color-step-100);\n --ion-toolbar-background: var(--ion-background-color-step-150);\n --ion-toolbar-border-color: var(--ion-background-color-step-250);\n }\n}\n\n@mixin high-contrast-dark-md-palette() {\n $background-color: #121212;\n\n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-border-color: #222222;\n --ion-item-background: #1e1e1e;\n --ion-toolbar-background: #1f1f1f;\n --ion-tab-bar-background: #1f1f1f;\n --ion-card-background: #1e1e1e;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: var(--ion-background-color-step-400);\n --ion-text-color-step-50: #{mix($darkest-text-color, $lightest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($darkest-text-color, $lightest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($darkest-text-color, $lightest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($darkest-text-color, $lightest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($darkest-text-color, $lightest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($darkest-text-color, $lightest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($darkest-text-color, $lightest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($darkest-text-color, $lightest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($darkest-text-color, $lightest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($darkest-text-color, $lightest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($darkest-text-color, $lightest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($darkest-text-color, $lightest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($darkest-text-color, $lightest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($darkest-text-color, $lightest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($darkest-text-color, $lightest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($darkest-text-color, $lightest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($darkest-text-color, $lightest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($darkest-text-color, $lightest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($darkest-text-color, $lightest-text-color, 95%)};\n --ion-background-color-step-50: #{mix($text-color, $background-color, 5%)};\n --ion-background-color-step-100: #{mix($text-color, $background-color, 10%)};\n --ion-background-color-step-150: #{mix($text-color, $background-color, 15%)};\n --ion-background-color-step-200: #{mix($text-color, $background-color, 20%)};\n --ion-background-color-step-250: #{mix($text-color, $background-color, 25%)};\n --ion-background-color-step-300: #{mix($text-color, $background-color, 30%)};\n --ion-background-color-step-350: #{mix($text-color, $background-color, 35%)};\n --ion-background-color-step-400: #{mix($text-color, $background-color, 40%)};\n --ion-background-color-step-450: #{mix($text-color, $background-color, 45%)};\n --ion-background-color-step-500: #{mix($text-color, $background-color, 50%)};\n --ion-background-color-step-550: #{mix($text-color, $background-color, 55%)};\n --ion-background-color-step-600: #{mix($text-color, $background-color, 60%)};\n --ion-background-color-step-650: #{mix($text-color, $background-color, 65%)};\n --ion-background-color-step-700: #{mix($text-color, $background-color, 70%)};\n --ion-background-color-step-750: #{mix($text-color, $background-color, 75%)};\n --ion-background-color-step-800: #{mix($text-color, $background-color, 80%)};\n --ion-background-color-step-850: #{mix($text-color, $background-color, 85%)};\n --ion-background-color-step-900: #{mix($text-color, $background-color, 90%)};\n --ion-background-color-step-950: #{mix($text-color, $background-color, 95%)};\n }\n\n // Toast\n // --------------------------------------------------\n\n & ion-toast {\n --color: var(--ion-background-color);\n }\n\n & ion-toast::part(button) {\n // Fallback for browsers that don't support color-mix\n color: var(--color);\n }\n\n /* stylelint-disable-next-line order/order */\n @supports (color: color-mix(in lch, plum, pink)) {\n & ion-toast::part(button) {\n color: color-mix(in srgb, var(--color) 73%, var(--button-color));\n }\n }\n\n & ion-toast::part(button cancel) {\n color: var(--color);\n }\n}\n"]}
1
+ {"version":3,"sourceRoot":"","sources":["../../src/css/palettes/high-contrast-dark.scss"],"names":[],"mappings":"AAgGE,MACE,+BAGE,6BACA,uCACA,mCACA,0CACA,mCACA,kCALA,+BACA,wCACA,qCACA,4CACA,qCACA,oCALA,8BACA,wCACA,oCACA,2CACA,oCACA,mCALA,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,4BACA,sCACA,kCACA,yCACA,kCACA,iCALA,2BACA,kCACA,iCACA,8CACA,iCACA,gCALA,4BACA,sCACA,kCACA,yCACA,kCACA,iCALA,0BACA,oCACA,gCACA,uCACA,gCACA,+BASJ,UACE,gCACA,oCACA,0BACA,oCACA,+BACA,+BAIA,8DACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,sCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCAMF,oBACE,6DACA,+DACA,iEAOF,SACE,gCACA,uCACA,0BACA,oCACA,4BACA,+BACA,kCACA,kCACA,+BAIA,8DACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCAMF,mBACE,qCAGF,iCAEE,mBAIF,gDACE,iCACE,iEAIJ,wCACE","file":"high-contrast-dark.always.css","sourcesContent":["@use \"sass:map\";\n@import \"../../themes/ionic.functions.color\";\n\n$primary: #7cabff;\n$secondary: #62bdff;\n$tertiary: #b6b9f9;\n$success: #4ada71;\n$warning: #ffce31;\n$danger: #fc9aa2;\n$light: #222428;\n$medium: #a8aab3;\n$dark: #f4f5f8;\n\n$colors: (\n primary: (\n base: $primary,\n contrast: #000,\n shade: get-color-shade($primary),\n tint: get-color-tint($primary)\n ),\n secondary: (\n base: $secondary,\n contrast: #000,\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary)\n ),\n tertiary: (\n base: $tertiary,\n contrast: #000,\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary)\n ),\n success: (\n base: $success,\n contrast: #000,\n shade: get-color-shade($success),\n tint: get-color-tint($success)\n ),\n warning: (\n base: $warning,\n contrast: #000,\n shade: get-color-shade($warning),\n tint: get-color-tint($warning)\n ),\n danger: (\n base: $danger,\n contrast: #000,\n shade: get-color-shade($danger),\n tint: get-color-tint($danger)\n ),\n light: (\n base: $light,\n contrast: #fff,\n shade: get-color-shade($light),\n tint: get-color-tint($light)\n ),\n medium: (\n base: $medium,\n contrast: #000,\n shade: get-color-shade($medium),\n tint: get-color-tint($medium)\n ),\n dark: (\n base: $dark,\n contrast: #000,\n shade: get-color-shade($dark),\n tint: get-color-tint($dark)\n )\n);\n\n/// Text step colors are generated based on\n/// how dark or light text can be. The darkest\n/// text color is usually the default text color (white or black).\n/// The darker the $lightest-text-color is, the darker each\n/// stepped color is. If you want to increase text contrast,\n/// make $lightest-text-color darker.\n$text-color: #ffffff;\n\n$darkest-text-color: #888888;\n$lightest-text-color: $text-color;\n\n/// Loop through each color object above\n/// and generate CSS Variables for each\n/// color. Do not use the ion-color function\n/// here because that will set the variable\n/// to evaluate to itself with a fallback.\n/// For example:\n/// --ion-color-primary: #{ion-color(primary, base)};\n/// Maps to:\n/// --ion-color-primary: var(--ion-color-primary, #...);\n\n/// We apply certain styles to the per-mode classes (ios and md)\n/// as opposed to setting everything in :root\n// so any high contrast dark styles override the standard\n/// contrast dark styles.\n@mixin high-contrast-dark-base-palette() {\n & {\n --ion-placeholder-opacity: 0.8;\n\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n\n }\n}\n\n@mixin high-contrast-dark-ios-palette() {\n $background-color: #000000;\n \n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-item-background: #000000;\n --ion-card-background: #1c1c1d;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: var(--ion-background-color-step-400);\n --ion-text-color-step-50: #{mix($darkest-text-color, $lightest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($darkest-text-color, $lightest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($darkest-text-color, $lightest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($darkest-text-color, $lightest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($darkest-text-color, $lightest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($darkest-text-color, $lightest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($darkest-text-color, $lightest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($darkest-text-color, $lightest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($darkest-text-color, $lightest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($darkest-text-color, $lightest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($darkest-text-color, $lightest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($darkest-text-color, $lightest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($darkest-text-color, $lightest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($darkest-text-color, $lightest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($darkest-text-color, $lightest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($darkest-text-color, $lightest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($darkest-text-color, $lightest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($darkest-text-color, $lightest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($darkest-text-color, $lightest-text-color, 95%)};\n --ion-background-color-step-50: #{mix($text-color, $background-color, 5%)};\n --ion-background-color-step-100: #{mix($text-color, $background-color, 10%)};\n --ion-background-color-step-150: #{mix($text-color, $background-color, 15%)};\n --ion-background-color-step-200: #{mix($text-color, $background-color, 20%)};\n --ion-background-color-step-250: #{mix($text-color, $background-color, 25%)};\n --ion-background-color-step-300: #{mix($text-color, $background-color, 30%)};\n --ion-background-color-step-350: #{mix($text-color, $background-color, 35%)};\n --ion-background-color-step-400: #{mix($text-color, $background-color, 40%)};\n --ion-background-color-step-450: #{mix($text-color, $background-color, 45%)};\n --ion-background-color-step-500: #{mix($text-color, $background-color, 50%)};\n --ion-background-color-step-550: #{mix($text-color, $background-color, 55%)};\n --ion-background-color-step-600: #{mix($text-color, $background-color, 60%)};\n --ion-background-color-step-650: #{mix($text-color, $background-color, 65%)};\n --ion-background-color-step-700: #{mix($text-color, $background-color, 70%)};\n --ion-background-color-step-750: #{mix($text-color, $background-color, 75%)};\n --ion-background-color-step-800: #{mix($text-color, $background-color, 80%)};\n --ion-background-color-step-850: #{mix($text-color, $background-color, 85%)};\n --ion-background-color-step-900: #{mix($text-color, $background-color, 90%)};\n --ion-background-color-step-950: #{mix($text-color, $background-color, 95%)};\n }\n\n // Modal\n // --------------------------------------------------\n\n & ion-modal {\n --ion-background-color: var(--ion-background-color-step-100);\n --ion-toolbar-background: var(--ion-background-color-step-150);\n --ion-toolbar-border-color: var(--ion-background-color-step-250);\n }\n}\n\n@mixin high-contrast-dark-md-palette() {\n $background-color: #121212;\n \n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-border-color: #222222;\n --ion-item-background: #1e1e1e;\n --ion-toolbar-background: #1f1f1f;\n --ion-tab-bar-background: #1f1f1f;\n --ion-card-background: #1e1e1e;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: var(--ion-background-color-step-400);\n --ion-text-color-step-50: #{mix($darkest-text-color, $lightest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($darkest-text-color, $lightest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($darkest-text-color, $lightest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($darkest-text-color, $lightest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($darkest-text-color, $lightest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($darkest-text-color, $lightest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($darkest-text-color, $lightest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($darkest-text-color, $lightest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($darkest-text-color, $lightest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($darkest-text-color, $lightest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($darkest-text-color, $lightest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($darkest-text-color, $lightest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($darkest-text-color, $lightest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($darkest-text-color, $lightest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($darkest-text-color, $lightest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($darkest-text-color, $lightest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($darkest-text-color, $lightest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($darkest-text-color, $lightest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($darkest-text-color, $lightest-text-color, 95%)};\n --ion-background-color-step-50: #{mix($text-color, $background-color, 5%)};\n --ion-background-color-step-100: #{mix($text-color, $background-color, 10%)};\n --ion-background-color-step-150: #{mix($text-color, $background-color, 15%)};\n --ion-background-color-step-200: #{mix($text-color, $background-color, 20%)};\n --ion-background-color-step-250: #{mix($text-color, $background-color, 25%)};\n --ion-background-color-step-300: #{mix($text-color, $background-color, 30%)};\n --ion-background-color-step-350: #{mix($text-color, $background-color, 35%)};\n --ion-background-color-step-400: #{mix($text-color, $background-color, 40%)};\n --ion-background-color-step-450: #{mix($text-color, $background-color, 45%)};\n --ion-background-color-step-500: #{mix($text-color, $background-color, 50%)};\n --ion-background-color-step-550: #{mix($text-color, $background-color, 55%)};\n --ion-background-color-step-600: #{mix($text-color, $background-color, 60%)};\n --ion-background-color-step-650: #{mix($text-color, $background-color, 65%)};\n --ion-background-color-step-700: #{mix($text-color, $background-color, 70%)};\n --ion-background-color-step-750: #{mix($text-color, $background-color, 75%)};\n --ion-background-color-step-800: #{mix($text-color, $background-color, 80%)};\n --ion-background-color-step-850: #{mix($text-color, $background-color, 85%)};\n --ion-background-color-step-900: #{mix($text-color, $background-color, 90%)};\n --ion-background-color-step-950: #{mix($text-color, $background-color, 95%)};\n }\n\n // Toast\n // --------------------------------------------------\n\n & ion-toast {\n --color: var(--ion-background-color);\n }\n\n & ion-toast::part(button) {\n // Fallback for browsers that don't support color-mix\n color: var(--color);\n }\n\n /* stylelint-disable-next-line order/order */\n @supports (color: color-mix(in lch, plum, pink)) {\n & ion-toast::part(button) {\n color: color-mix(in srgb, var(--color) 73%, var(--button-color));\n }\n }\n\n & ion-toast::part(button cancel) {\n color: var(--color);\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../src/css/palettes/high-contrast-dark.scss"],"names":[],"mappings":"AAyGE,4CACE,+BAGE,6BACA,uCACA,mCACA,0CACA,mCACA,kCALA,+BACA,wCACA,qCACA,4CACA,qCACA,oCALA,8BACA,wCACA,oCACA,2CACA,oCACA,mCALA,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,4BACA,sCACA,kCACA,yCACA,kCACA,iCALA,2BACA,kCACA,iCACA,8CACA,iCACA,gCALA,4BACA,sCACA,kCACA,yCACA,kCACA,iCALA,0BACA,oCACA,gCACA,uCACA,gCACA,+BAQJ,gDACE,gCACA,oCACA,0BACA,oCACA,+BACA,+BAIA,8DACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,sCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCAMF,0DACE,6DACA,+DACA,iEAOF,+CACE,gCACA,uCACA,0BACA,oCACA,4BACA,+BACA,kCACA,kCACA,+BAIA,8DACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCAMF,yDACE,qCAGF,uEAEE,mBAIF,gDACE,uEACE,iEAIJ,8EACE","file":"high-contrast-dark.class.css","sourcesContent":["@use \"sass:map\";\n@import \"../../themes/functions.color\";\n\n$primary: #7cabff;\n$secondary: #62bdff;\n$tertiary: #b6b9f9;\n$success: #4ada71;\n$warning: #ffce31;\n$danger: #fc9aa2;\n$light: #222428;\n$medium: #a8aab3;\n$dark: #f4f5f8;\n\n$colors: (\n primary: (\n base: $primary,\n contrast: #000,\n shade: get-color-shade($primary),\n tint: get-color-tint($primary),\n foreground: $primary,\n ),\n secondary: (\n base: $secondary,\n contrast: #000,\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary),\n foreground: $secondary,\n ),\n tertiary: (\n base: $tertiary,\n contrast: #000,\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary),\n foreground: $tertiary,\n ),\n success: (\n base: $success,\n contrast: #000,\n shade: get-color-shade($success),\n tint: get-color-tint($success),\n foreground: $success,\n ),\n warning: (\n base: $warning,\n contrast: #000,\n shade: get-color-shade($warning),\n tint: get-color-tint($warning),\n foreground: $warning,\n ),\n danger: (\n base: $danger,\n contrast: #000,\n shade: get-color-shade($danger),\n tint: get-color-tint($danger),\n foreground: $danger,\n ),\n light: (\n base: $light,\n contrast: #fff,\n shade: get-color-shade($light),\n tint: get-color-tint($light),\n foreground: $light,\n ),\n medium: (\n base: $medium,\n contrast: #000,\n shade: get-color-shade($medium),\n tint: get-color-tint($medium),\n foreground: $medium,\n ),\n dark: (\n base: $dark,\n contrast: #000,\n shade: get-color-shade($dark),\n tint: get-color-tint($dark),\n foreground: $dark,\n ),\n);\n\n/// Text step colors are generated based on\n/// how dark or light text can be. The darkest\n/// text color is usually the default text color (white or black).\n/// The darker the $lightest-text-color is, the darker each\n/// stepped color is. If you want to increase text contrast,\n/// make $lightest-text-color darker.\n$text-color: #ffffff;\n\n$darkest-text-color: #888888;\n$lightest-text-color: $text-color;\n\n/// Loop through each color object above\n/// and generate CSS Variables for each\n/// color. Do not use the ion-color function\n/// here because that will set the variable\n/// to evaluate to itself with a fallback.\n/// For example:\n/// --ion-color-primary: #{ion-color(primary, base)};\n/// Maps to:\n/// --ion-color-primary: var(--ion-color-primary, #...);\n\n/// We apply certain styles to the per-mode classes (ios and md)\n/// as opposed to setting everything in :root\n// so any high contrast dark styles override the standard\n/// contrast dark styles.\n@mixin high-contrast-dark-base-palette() {\n & {\n --ion-placeholder-opacity: 0.8;\n\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n }\n}\n\n@mixin high-contrast-dark-ios-palette() {\n $background-color: #000000;\n\n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-item-background: #000000;\n --ion-card-background: #1c1c1d;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: var(--ion-background-color-step-400);\n --ion-text-color-step-50: #{mix($darkest-text-color, $lightest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($darkest-text-color, $lightest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($darkest-text-color, $lightest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($darkest-text-color, $lightest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($darkest-text-color, $lightest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($darkest-text-color, $lightest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($darkest-text-color, $lightest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($darkest-text-color, $lightest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($darkest-text-color, $lightest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($darkest-text-color, $lightest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($darkest-text-color, $lightest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($darkest-text-color, $lightest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($darkest-text-color, $lightest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($darkest-text-color, $lightest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($darkest-text-color, $lightest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($darkest-text-color, $lightest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($darkest-text-color, $lightest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($darkest-text-color, $lightest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($darkest-text-color, $lightest-text-color, 95%)};\n --ion-background-color-step-50: #{mix($text-color, $background-color, 5%)};\n --ion-background-color-step-100: #{mix($text-color, $background-color, 10%)};\n --ion-background-color-step-150: #{mix($text-color, $background-color, 15%)};\n --ion-background-color-step-200: #{mix($text-color, $background-color, 20%)};\n --ion-background-color-step-250: #{mix($text-color, $background-color, 25%)};\n --ion-background-color-step-300: #{mix($text-color, $background-color, 30%)};\n --ion-background-color-step-350: #{mix($text-color, $background-color, 35%)};\n --ion-background-color-step-400: #{mix($text-color, $background-color, 40%)};\n --ion-background-color-step-450: #{mix($text-color, $background-color, 45%)};\n --ion-background-color-step-500: #{mix($text-color, $background-color, 50%)};\n --ion-background-color-step-550: #{mix($text-color, $background-color, 55%)};\n --ion-background-color-step-600: #{mix($text-color, $background-color, 60%)};\n --ion-background-color-step-650: #{mix($text-color, $background-color, 65%)};\n --ion-background-color-step-700: #{mix($text-color, $background-color, 70%)};\n --ion-background-color-step-750: #{mix($text-color, $background-color, 75%)};\n --ion-background-color-step-800: #{mix($text-color, $background-color, 80%)};\n --ion-background-color-step-850: #{mix($text-color, $background-color, 85%)};\n --ion-background-color-step-900: #{mix($text-color, $background-color, 90%)};\n --ion-background-color-step-950: #{mix($text-color, $background-color, 95%)};\n }\n\n // Modal\n // --------------------------------------------------\n\n & ion-modal {\n --ion-background-color: var(--ion-background-color-step-100);\n --ion-toolbar-background: var(--ion-background-color-step-150);\n --ion-toolbar-border-color: var(--ion-background-color-step-250);\n }\n}\n\n@mixin high-contrast-dark-md-palette() {\n $background-color: #121212;\n\n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-border-color: #222222;\n --ion-item-background: #1e1e1e;\n --ion-toolbar-background: #1f1f1f;\n --ion-tab-bar-background: #1f1f1f;\n --ion-card-background: #1e1e1e;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: var(--ion-background-color-step-400);\n --ion-text-color-step-50: #{mix($darkest-text-color, $lightest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($darkest-text-color, $lightest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($darkest-text-color, $lightest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($darkest-text-color, $lightest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($darkest-text-color, $lightest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($darkest-text-color, $lightest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($darkest-text-color, $lightest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($darkest-text-color, $lightest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($darkest-text-color, $lightest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($darkest-text-color, $lightest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($darkest-text-color, $lightest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($darkest-text-color, $lightest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($darkest-text-color, $lightest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($darkest-text-color, $lightest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($darkest-text-color, $lightest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($darkest-text-color, $lightest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($darkest-text-color, $lightest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($darkest-text-color, $lightest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($darkest-text-color, $lightest-text-color, 95%)};\n --ion-background-color-step-50: #{mix($text-color, $background-color, 5%)};\n --ion-background-color-step-100: #{mix($text-color, $background-color, 10%)};\n --ion-background-color-step-150: #{mix($text-color, $background-color, 15%)};\n --ion-background-color-step-200: #{mix($text-color, $background-color, 20%)};\n --ion-background-color-step-250: #{mix($text-color, $background-color, 25%)};\n --ion-background-color-step-300: #{mix($text-color, $background-color, 30%)};\n --ion-background-color-step-350: #{mix($text-color, $background-color, 35%)};\n --ion-background-color-step-400: #{mix($text-color, $background-color, 40%)};\n --ion-background-color-step-450: #{mix($text-color, $background-color, 45%)};\n --ion-background-color-step-500: #{mix($text-color, $background-color, 50%)};\n --ion-background-color-step-550: #{mix($text-color, $background-color, 55%)};\n --ion-background-color-step-600: #{mix($text-color, $background-color, 60%)};\n --ion-background-color-step-650: #{mix($text-color, $background-color, 65%)};\n --ion-background-color-step-700: #{mix($text-color, $background-color, 70%)};\n --ion-background-color-step-750: #{mix($text-color, $background-color, 75%)};\n --ion-background-color-step-800: #{mix($text-color, $background-color, 80%)};\n --ion-background-color-step-850: #{mix($text-color, $background-color, 85%)};\n --ion-background-color-step-900: #{mix($text-color, $background-color, 90%)};\n --ion-background-color-step-950: #{mix($text-color, $background-color, 95%)};\n }\n\n // Toast\n // --------------------------------------------------\n\n & ion-toast {\n --color: var(--ion-background-color);\n }\n\n & ion-toast::part(button) {\n // Fallback for browsers that don't support color-mix\n color: var(--color);\n }\n\n /* stylelint-disable-next-line order/order */\n @supports (color: color-mix(in lch, plum, pink)) {\n & ion-toast::part(button) {\n color: color-mix(in srgb, var(--color) 73%, var(--button-color));\n }\n }\n\n & ion-toast::part(button cancel) {\n color: var(--color);\n }\n}\n"]}
1
+ {"version":3,"sourceRoot":"","sources":["../../src/css/palettes/high-contrast-dark.scss"],"names":[],"mappings":"AAgGE,4CACE,+BAGE,6BACA,uCACA,mCACA,0CACA,mCACA,kCALA,+BACA,wCACA,qCACA,4CACA,qCACA,oCALA,8BACA,wCACA,oCACA,2CACA,oCACA,mCALA,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,4BACA,sCACA,kCACA,yCACA,kCACA,iCALA,2BACA,kCACA,iCACA,8CACA,iCACA,gCALA,4BACA,sCACA,kCACA,yCACA,kCACA,iCALA,0BACA,oCACA,gCACA,uCACA,gCACA,+BASJ,gDACE,gCACA,oCACA,0BACA,oCACA,+BACA,+BAIA,8DACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,sCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCAMF,0DACE,6DACA,+DACA,iEAOF,+CACE,gCACA,uCACA,0BACA,oCACA,4BACA,+BACA,kCACA,kCACA,+BAIA,8DACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCAMF,yDACE,qCAGF,uEAEE,mBAIF,gDACE,uEACE,iEAIJ,8EACE","file":"high-contrast-dark.class.css","sourcesContent":["@use \"sass:map\";\n@import \"../../themes/ionic.functions.color\";\n\n$primary: #7cabff;\n$secondary: #62bdff;\n$tertiary: #b6b9f9;\n$success: #4ada71;\n$warning: #ffce31;\n$danger: #fc9aa2;\n$light: #222428;\n$medium: #a8aab3;\n$dark: #f4f5f8;\n\n$colors: (\n primary: (\n base: $primary,\n contrast: #000,\n shade: get-color-shade($primary),\n tint: get-color-tint($primary)\n ),\n secondary: (\n base: $secondary,\n contrast: #000,\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary)\n ),\n tertiary: (\n base: $tertiary,\n contrast: #000,\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary)\n ),\n success: (\n base: $success,\n contrast: #000,\n shade: get-color-shade($success),\n tint: get-color-tint($success)\n ),\n warning: (\n base: $warning,\n contrast: #000,\n shade: get-color-shade($warning),\n tint: get-color-tint($warning)\n ),\n danger: (\n base: $danger,\n contrast: #000,\n shade: get-color-shade($danger),\n tint: get-color-tint($danger)\n ),\n light: (\n base: $light,\n contrast: #fff,\n shade: get-color-shade($light),\n tint: get-color-tint($light)\n ),\n medium: (\n base: $medium,\n contrast: #000,\n shade: get-color-shade($medium),\n tint: get-color-tint($medium)\n ),\n dark: (\n base: $dark,\n contrast: #000,\n shade: get-color-shade($dark),\n tint: get-color-tint($dark)\n )\n);\n\n/// Text step colors are generated based on\n/// how dark or light text can be. The darkest\n/// text color is usually the default text color (white or black).\n/// The darker the $lightest-text-color is, the darker each\n/// stepped color is. If you want to increase text contrast,\n/// make $lightest-text-color darker.\n$text-color: #ffffff;\n\n$darkest-text-color: #888888;\n$lightest-text-color: $text-color;\n\n/// Loop through each color object above\n/// and generate CSS Variables for each\n/// color. Do not use the ion-color function\n/// here because that will set the variable\n/// to evaluate to itself with a fallback.\n/// For example:\n/// --ion-color-primary: #{ion-color(primary, base)};\n/// Maps to:\n/// --ion-color-primary: var(--ion-color-primary, #...);\n\n/// We apply certain styles to the per-mode classes (ios and md)\n/// as opposed to setting everything in :root\n// so any high contrast dark styles override the standard\n/// contrast dark styles.\n@mixin high-contrast-dark-base-palette() {\n & {\n --ion-placeholder-opacity: 0.8;\n\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n\n }\n}\n\n@mixin high-contrast-dark-ios-palette() {\n $background-color: #000000;\n \n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-item-background: #000000;\n --ion-card-background: #1c1c1d;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: var(--ion-background-color-step-400);\n --ion-text-color-step-50: #{mix($darkest-text-color, $lightest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($darkest-text-color, $lightest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($darkest-text-color, $lightest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($darkest-text-color, $lightest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($darkest-text-color, $lightest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($darkest-text-color, $lightest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($darkest-text-color, $lightest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($darkest-text-color, $lightest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($darkest-text-color, $lightest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($darkest-text-color, $lightest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($darkest-text-color, $lightest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($darkest-text-color, $lightest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($darkest-text-color, $lightest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($darkest-text-color, $lightest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($darkest-text-color, $lightest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($darkest-text-color, $lightest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($darkest-text-color, $lightest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($darkest-text-color, $lightest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($darkest-text-color, $lightest-text-color, 95%)};\n --ion-background-color-step-50: #{mix($text-color, $background-color, 5%)};\n --ion-background-color-step-100: #{mix($text-color, $background-color, 10%)};\n --ion-background-color-step-150: #{mix($text-color, $background-color, 15%)};\n --ion-background-color-step-200: #{mix($text-color, $background-color, 20%)};\n --ion-background-color-step-250: #{mix($text-color, $background-color, 25%)};\n --ion-background-color-step-300: #{mix($text-color, $background-color, 30%)};\n --ion-background-color-step-350: #{mix($text-color, $background-color, 35%)};\n --ion-background-color-step-400: #{mix($text-color, $background-color, 40%)};\n --ion-background-color-step-450: #{mix($text-color, $background-color, 45%)};\n --ion-background-color-step-500: #{mix($text-color, $background-color, 50%)};\n --ion-background-color-step-550: #{mix($text-color, $background-color, 55%)};\n --ion-background-color-step-600: #{mix($text-color, $background-color, 60%)};\n --ion-background-color-step-650: #{mix($text-color, $background-color, 65%)};\n --ion-background-color-step-700: #{mix($text-color, $background-color, 70%)};\n --ion-background-color-step-750: #{mix($text-color, $background-color, 75%)};\n --ion-background-color-step-800: #{mix($text-color, $background-color, 80%)};\n --ion-background-color-step-850: #{mix($text-color, $background-color, 85%)};\n --ion-background-color-step-900: #{mix($text-color, $background-color, 90%)};\n --ion-background-color-step-950: #{mix($text-color, $background-color, 95%)};\n }\n\n // Modal\n // --------------------------------------------------\n\n & ion-modal {\n --ion-background-color: var(--ion-background-color-step-100);\n --ion-toolbar-background: var(--ion-background-color-step-150);\n --ion-toolbar-border-color: var(--ion-background-color-step-250);\n }\n}\n\n@mixin high-contrast-dark-md-palette() {\n $background-color: #121212;\n \n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-border-color: #222222;\n --ion-item-background: #1e1e1e;\n --ion-toolbar-background: #1f1f1f;\n --ion-tab-bar-background: #1f1f1f;\n --ion-card-background: #1e1e1e;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: var(--ion-background-color-step-400);\n --ion-text-color-step-50: #{mix($darkest-text-color, $lightest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($darkest-text-color, $lightest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($darkest-text-color, $lightest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($darkest-text-color, $lightest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($darkest-text-color, $lightest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($darkest-text-color, $lightest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($darkest-text-color, $lightest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($darkest-text-color, $lightest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($darkest-text-color, $lightest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($darkest-text-color, $lightest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($darkest-text-color, $lightest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($darkest-text-color, $lightest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($darkest-text-color, $lightest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($darkest-text-color, $lightest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($darkest-text-color, $lightest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($darkest-text-color, $lightest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($darkest-text-color, $lightest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($darkest-text-color, $lightest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($darkest-text-color, $lightest-text-color, 95%)};\n --ion-background-color-step-50: #{mix($text-color, $background-color, 5%)};\n --ion-background-color-step-100: #{mix($text-color, $background-color, 10%)};\n --ion-background-color-step-150: #{mix($text-color, $background-color, 15%)};\n --ion-background-color-step-200: #{mix($text-color, $background-color, 20%)};\n --ion-background-color-step-250: #{mix($text-color, $background-color, 25%)};\n --ion-background-color-step-300: #{mix($text-color, $background-color, 30%)};\n --ion-background-color-step-350: #{mix($text-color, $background-color, 35%)};\n --ion-background-color-step-400: #{mix($text-color, $background-color, 40%)};\n --ion-background-color-step-450: #{mix($text-color, $background-color, 45%)};\n --ion-background-color-step-500: #{mix($text-color, $background-color, 50%)};\n --ion-background-color-step-550: #{mix($text-color, $background-color, 55%)};\n --ion-background-color-step-600: #{mix($text-color, $background-color, 60%)};\n --ion-background-color-step-650: #{mix($text-color, $background-color, 65%)};\n --ion-background-color-step-700: #{mix($text-color, $background-color, 70%)};\n --ion-background-color-step-750: #{mix($text-color, $background-color, 75%)};\n --ion-background-color-step-800: #{mix($text-color, $background-color, 80%)};\n --ion-background-color-step-850: #{mix($text-color, $background-color, 85%)};\n --ion-background-color-step-900: #{mix($text-color, $background-color, 90%)};\n --ion-background-color-step-950: #{mix($text-color, $background-color, 95%)};\n }\n\n // Toast\n // --------------------------------------------------\n\n & ion-toast {\n --color: var(--ion-background-color);\n }\n\n & ion-toast::part(button) {\n // Fallback for browsers that don't support color-mix\n color: var(--color);\n }\n\n /* stylelint-disable-next-line order/order */\n @supports (color: color-mix(in lch, plum, pink)) {\n & ion-toast::part(button) {\n color: color-mix(in srgb, var(--color) 73%, var(--button-color));\n }\n }\n\n & ion-toast::part(button cancel) {\n color: var(--color);\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../src/css/palettes/high-contrast-dark.system.scss","../../src/css/palettes/high-contrast-dark.scss"],"names":[],"mappings":"AAEA,+DCuGE,MACE,+BAGE,6BACA,uCACA,mCACA,0CACA,mCACA,kCALA,+BACA,wCACA,qCACA,4CACA,qCACA,oCALA,8BACA,wCACA,oCACA,2CACA,oCACA,mCALA,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,4BACA,sCACA,kCACA,yCACA,kCACA,iCALA,2BACA,kCACA,iCACA,8CACA,iCACA,gCALA,4BACA,sCACA,kCACA,yCACA,kCACA,iCALA,0BACA,oCACA,gCACA,uCACA,gCACA,+BAQJ,UACE,gCACA,oCACA,0BACA,oCACA,+BACA,+BAIA,8DACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,sCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCAMF,oBACE,6DACA,+DACA,iEAOF,SACE,gCACA,uCACA,0BACA,oCACA,4BACA,+BACA,kCACA,kCACA,+BAIA,8DACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCAMF,mBACE,qCAGF,iCAEE,mBAIF,gDACE,iCACE,iEAIJ,wCACE","file":"high-contrast-dark.system.css","sourcesContent":["@import \"./high-contrast-dark\";\n\n@media (prefers-contrast: more) and (prefers-color-scheme: dark) {\n :root {\n @include high-contrast-dark-base-palette();\n }\n\n :root.ios {\n @include high-contrast-dark-ios-palette();\n }\n\n :root.md {\n @include high-contrast-dark-md-palette();\n }\n}\n","@use \"sass:map\";\n@import \"../../themes/functions.color\";\n\n$primary: #7cabff;\n$secondary: #62bdff;\n$tertiary: #b6b9f9;\n$success: #4ada71;\n$warning: #ffce31;\n$danger: #fc9aa2;\n$light: #222428;\n$medium: #a8aab3;\n$dark: #f4f5f8;\n\n$colors: (\n primary: (\n base: $primary,\n contrast: #000,\n shade: get-color-shade($primary),\n tint: get-color-tint($primary),\n foreground: $primary,\n ),\n secondary: (\n base: $secondary,\n contrast: #000,\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary),\n foreground: $secondary,\n ),\n tertiary: (\n base: $tertiary,\n contrast: #000,\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary),\n foreground: $tertiary,\n ),\n success: (\n base: $success,\n contrast: #000,\n shade: get-color-shade($success),\n tint: get-color-tint($success),\n foreground: $success,\n ),\n warning: (\n base: $warning,\n contrast: #000,\n shade: get-color-shade($warning),\n tint: get-color-tint($warning),\n foreground: $warning,\n ),\n danger: (\n base: $danger,\n contrast: #000,\n shade: get-color-shade($danger),\n tint: get-color-tint($danger),\n foreground: $danger,\n ),\n light: (\n base: $light,\n contrast: #fff,\n shade: get-color-shade($light),\n tint: get-color-tint($light),\n foreground: $light,\n ),\n medium: (\n base: $medium,\n contrast: #000,\n shade: get-color-shade($medium),\n tint: get-color-tint($medium),\n foreground: $medium,\n ),\n dark: (\n base: $dark,\n contrast: #000,\n shade: get-color-shade($dark),\n tint: get-color-tint($dark),\n foreground: $dark,\n ),\n);\n\n/// Text step colors are generated based on\n/// how dark or light text can be. The darkest\n/// text color is usually the default text color (white or black).\n/// The darker the $lightest-text-color is, the darker each\n/// stepped color is. If you want to increase text contrast,\n/// make $lightest-text-color darker.\n$text-color: #ffffff;\n\n$darkest-text-color: #888888;\n$lightest-text-color: $text-color;\n\n/// Loop through each color object above\n/// and generate CSS Variables for each\n/// color. Do not use the ion-color function\n/// here because that will set the variable\n/// to evaluate to itself with a fallback.\n/// For example:\n/// --ion-color-primary: #{ion-color(primary, base)};\n/// Maps to:\n/// --ion-color-primary: var(--ion-color-primary, #...);\n\n/// We apply certain styles to the per-mode classes (ios and md)\n/// as opposed to setting everything in :root\n// so any high contrast dark styles override the standard\n/// contrast dark styles.\n@mixin high-contrast-dark-base-palette() {\n & {\n --ion-placeholder-opacity: 0.8;\n\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n }\n}\n\n@mixin high-contrast-dark-ios-palette() {\n $background-color: #000000;\n\n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-item-background: #000000;\n --ion-card-background: #1c1c1d;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: var(--ion-background-color-step-400);\n --ion-text-color-step-50: #{mix($darkest-text-color, $lightest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($darkest-text-color, $lightest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($darkest-text-color, $lightest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($darkest-text-color, $lightest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($darkest-text-color, $lightest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($darkest-text-color, $lightest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($darkest-text-color, $lightest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($darkest-text-color, $lightest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($darkest-text-color, $lightest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($darkest-text-color, $lightest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($darkest-text-color, $lightest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($darkest-text-color, $lightest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($darkest-text-color, $lightest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($darkest-text-color, $lightest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($darkest-text-color, $lightest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($darkest-text-color, $lightest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($darkest-text-color, $lightest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($darkest-text-color, $lightest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($darkest-text-color, $lightest-text-color, 95%)};\n --ion-background-color-step-50: #{mix($text-color, $background-color, 5%)};\n --ion-background-color-step-100: #{mix($text-color, $background-color, 10%)};\n --ion-background-color-step-150: #{mix($text-color, $background-color, 15%)};\n --ion-background-color-step-200: #{mix($text-color, $background-color, 20%)};\n --ion-background-color-step-250: #{mix($text-color, $background-color, 25%)};\n --ion-background-color-step-300: #{mix($text-color, $background-color, 30%)};\n --ion-background-color-step-350: #{mix($text-color, $background-color, 35%)};\n --ion-background-color-step-400: #{mix($text-color, $background-color, 40%)};\n --ion-background-color-step-450: #{mix($text-color, $background-color, 45%)};\n --ion-background-color-step-500: #{mix($text-color, $background-color, 50%)};\n --ion-background-color-step-550: #{mix($text-color, $background-color, 55%)};\n --ion-background-color-step-600: #{mix($text-color, $background-color, 60%)};\n --ion-background-color-step-650: #{mix($text-color, $background-color, 65%)};\n --ion-background-color-step-700: #{mix($text-color, $background-color, 70%)};\n --ion-background-color-step-750: #{mix($text-color, $background-color, 75%)};\n --ion-background-color-step-800: #{mix($text-color, $background-color, 80%)};\n --ion-background-color-step-850: #{mix($text-color, $background-color, 85%)};\n --ion-background-color-step-900: #{mix($text-color, $background-color, 90%)};\n --ion-background-color-step-950: #{mix($text-color, $background-color, 95%)};\n }\n\n // Modal\n // --------------------------------------------------\n\n & ion-modal {\n --ion-background-color: var(--ion-background-color-step-100);\n --ion-toolbar-background: var(--ion-background-color-step-150);\n --ion-toolbar-border-color: var(--ion-background-color-step-250);\n }\n}\n\n@mixin high-contrast-dark-md-palette() {\n $background-color: #121212;\n\n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-border-color: #222222;\n --ion-item-background: #1e1e1e;\n --ion-toolbar-background: #1f1f1f;\n --ion-tab-bar-background: #1f1f1f;\n --ion-card-background: #1e1e1e;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: var(--ion-background-color-step-400);\n --ion-text-color-step-50: #{mix($darkest-text-color, $lightest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($darkest-text-color, $lightest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($darkest-text-color, $lightest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($darkest-text-color, $lightest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($darkest-text-color, $lightest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($darkest-text-color, $lightest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($darkest-text-color, $lightest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($darkest-text-color, $lightest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($darkest-text-color, $lightest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($darkest-text-color, $lightest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($darkest-text-color, $lightest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($darkest-text-color, $lightest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($darkest-text-color, $lightest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($darkest-text-color, $lightest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($darkest-text-color, $lightest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($darkest-text-color, $lightest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($darkest-text-color, $lightest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($darkest-text-color, $lightest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($darkest-text-color, $lightest-text-color, 95%)};\n --ion-background-color-step-50: #{mix($text-color, $background-color, 5%)};\n --ion-background-color-step-100: #{mix($text-color, $background-color, 10%)};\n --ion-background-color-step-150: #{mix($text-color, $background-color, 15%)};\n --ion-background-color-step-200: #{mix($text-color, $background-color, 20%)};\n --ion-background-color-step-250: #{mix($text-color, $background-color, 25%)};\n --ion-background-color-step-300: #{mix($text-color, $background-color, 30%)};\n --ion-background-color-step-350: #{mix($text-color, $background-color, 35%)};\n --ion-background-color-step-400: #{mix($text-color, $background-color, 40%)};\n --ion-background-color-step-450: #{mix($text-color, $background-color, 45%)};\n --ion-background-color-step-500: #{mix($text-color, $background-color, 50%)};\n --ion-background-color-step-550: #{mix($text-color, $background-color, 55%)};\n --ion-background-color-step-600: #{mix($text-color, $background-color, 60%)};\n --ion-background-color-step-650: #{mix($text-color, $background-color, 65%)};\n --ion-background-color-step-700: #{mix($text-color, $background-color, 70%)};\n --ion-background-color-step-750: #{mix($text-color, $background-color, 75%)};\n --ion-background-color-step-800: #{mix($text-color, $background-color, 80%)};\n --ion-background-color-step-850: #{mix($text-color, $background-color, 85%)};\n --ion-background-color-step-900: #{mix($text-color, $background-color, 90%)};\n --ion-background-color-step-950: #{mix($text-color, $background-color, 95%)};\n }\n\n // Toast\n // --------------------------------------------------\n\n & ion-toast {\n --color: var(--ion-background-color);\n }\n\n & ion-toast::part(button) {\n // Fallback for browsers that don't support color-mix\n color: var(--color);\n }\n\n /* stylelint-disable-next-line order/order */\n @supports (color: color-mix(in lch, plum, pink)) {\n & ion-toast::part(button) {\n color: color-mix(in srgb, var(--color) 73%, var(--button-color));\n }\n }\n\n & ion-toast::part(button cancel) {\n color: var(--color);\n }\n}\n"]}
1
+ {"version":3,"sourceRoot":"","sources":["../../src/css/palettes/high-contrast-dark.system.scss","../../src/css/palettes/high-contrast-dark.scss"],"names":[],"mappings":"AAEA,+DC8FE,MACE,+BAGE,6BACA,uCACA,mCACA,0CACA,mCACA,kCALA,+BACA,wCACA,qCACA,4CACA,qCACA,oCALA,8BACA,wCACA,oCACA,2CACA,oCACA,mCALA,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,6BACA,sCACA,mCACA,0CACA,mCACA,kCALA,4BACA,sCACA,kCACA,yCACA,kCACA,iCALA,2BACA,kCACA,iCACA,8CACA,iCACA,gCALA,4BACA,sCACA,kCACA,yCACA,kCACA,iCALA,0BACA,oCACA,gCACA,uCACA,gCACA,+BASJ,UACE,gCACA,oCACA,0BACA,oCACA,+BACA,+BAIA,8DACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,sCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCAMF,oBACE,6DACA,+DACA,iEAOF,SACE,gCACA,uCACA,0BACA,oCACA,4BACA,+BACA,kCACA,kCACA,+BAIA,8DACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,wCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCACA,yCAMF,mBACE,qCAGF,iCAEE,mBAIF,gDACE,iCACE,iEAIJ,wCACE","file":"high-contrast-dark.system.css","sourcesContent":["@import \"./high-contrast-dark\";\n\n@media (prefers-contrast: more) and (prefers-color-scheme: dark) {\n :root {\n @include high-contrast-dark-base-palette();\n }\n\n :root.ios {\n @include high-contrast-dark-ios-palette();\n }\n\n :root.md {\n @include high-contrast-dark-md-palette();\n }\n}\n","@use \"sass:map\";\n@import \"../../themes/ionic.functions.color\";\n\n$primary: #7cabff;\n$secondary: #62bdff;\n$tertiary: #b6b9f9;\n$success: #4ada71;\n$warning: #ffce31;\n$danger: #fc9aa2;\n$light: #222428;\n$medium: #a8aab3;\n$dark: #f4f5f8;\n\n$colors: (\n primary: (\n base: $primary,\n contrast: #000,\n shade: get-color-shade($primary),\n tint: get-color-tint($primary)\n ),\n secondary: (\n base: $secondary,\n contrast: #000,\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary)\n ),\n tertiary: (\n base: $tertiary,\n contrast: #000,\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary)\n ),\n success: (\n base: $success,\n contrast: #000,\n shade: get-color-shade($success),\n tint: get-color-tint($success)\n ),\n warning: (\n base: $warning,\n contrast: #000,\n shade: get-color-shade($warning),\n tint: get-color-tint($warning)\n ),\n danger: (\n base: $danger,\n contrast: #000,\n shade: get-color-shade($danger),\n tint: get-color-tint($danger)\n ),\n light: (\n base: $light,\n contrast: #fff,\n shade: get-color-shade($light),\n tint: get-color-tint($light)\n ),\n medium: (\n base: $medium,\n contrast: #000,\n shade: get-color-shade($medium),\n tint: get-color-tint($medium)\n ),\n dark: (\n base: $dark,\n contrast: #000,\n shade: get-color-shade($dark),\n tint: get-color-tint($dark)\n )\n);\n\n/// Text step colors are generated based on\n/// how dark or light text can be. The darkest\n/// text color is usually the default text color (white or black).\n/// The darker the $lightest-text-color is, the darker each\n/// stepped color is. If you want to increase text contrast,\n/// make $lightest-text-color darker.\n$text-color: #ffffff;\n\n$darkest-text-color: #888888;\n$lightest-text-color: $text-color;\n\n/// Loop through each color object above\n/// and generate CSS Variables for each\n/// color. Do not use the ion-color function\n/// here because that will set the variable\n/// to evaluate to itself with a fallback.\n/// For example:\n/// --ion-color-primary: #{ion-color(primary, base)};\n/// Maps to:\n/// --ion-color-primary: var(--ion-color-primary, #...);\n\n/// We apply certain styles to the per-mode classes (ios and md)\n/// as opposed to setting everything in :root\n// so any high contrast dark styles override the standard\n/// contrast dark styles.\n@mixin high-contrast-dark-base-palette() {\n & {\n --ion-placeholder-opacity: 0.8;\n\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n\n }\n}\n\n@mixin high-contrast-dark-ios-palette() {\n $background-color: #000000;\n \n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-item-background: #000000;\n --ion-card-background: #1c1c1d;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: var(--ion-background-color-step-400);\n --ion-text-color-step-50: #{mix($darkest-text-color, $lightest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($darkest-text-color, $lightest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($darkest-text-color, $lightest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($darkest-text-color, $lightest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($darkest-text-color, $lightest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($darkest-text-color, $lightest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($darkest-text-color, $lightest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($darkest-text-color, $lightest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($darkest-text-color, $lightest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($darkest-text-color, $lightest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($darkest-text-color, $lightest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($darkest-text-color, $lightest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($darkest-text-color, $lightest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($darkest-text-color, $lightest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($darkest-text-color, $lightest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($darkest-text-color, $lightest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($darkest-text-color, $lightest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($darkest-text-color, $lightest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($darkest-text-color, $lightest-text-color, 95%)};\n --ion-background-color-step-50: #{mix($text-color, $background-color, 5%)};\n --ion-background-color-step-100: #{mix($text-color, $background-color, 10%)};\n --ion-background-color-step-150: #{mix($text-color, $background-color, 15%)};\n --ion-background-color-step-200: #{mix($text-color, $background-color, 20%)};\n --ion-background-color-step-250: #{mix($text-color, $background-color, 25%)};\n --ion-background-color-step-300: #{mix($text-color, $background-color, 30%)};\n --ion-background-color-step-350: #{mix($text-color, $background-color, 35%)};\n --ion-background-color-step-400: #{mix($text-color, $background-color, 40%)};\n --ion-background-color-step-450: #{mix($text-color, $background-color, 45%)};\n --ion-background-color-step-500: #{mix($text-color, $background-color, 50%)};\n --ion-background-color-step-550: #{mix($text-color, $background-color, 55%)};\n --ion-background-color-step-600: #{mix($text-color, $background-color, 60%)};\n --ion-background-color-step-650: #{mix($text-color, $background-color, 65%)};\n --ion-background-color-step-700: #{mix($text-color, $background-color, 70%)};\n --ion-background-color-step-750: #{mix($text-color, $background-color, 75%)};\n --ion-background-color-step-800: #{mix($text-color, $background-color, 80%)};\n --ion-background-color-step-850: #{mix($text-color, $background-color, 85%)};\n --ion-background-color-step-900: #{mix($text-color, $background-color, 90%)};\n --ion-background-color-step-950: #{mix($text-color, $background-color, 95%)};\n }\n\n // Modal\n // --------------------------------------------------\n\n & ion-modal {\n --ion-background-color: var(--ion-background-color-step-100);\n --ion-toolbar-background: var(--ion-background-color-step-150);\n --ion-toolbar-border-color: var(--ion-background-color-step-250);\n }\n}\n\n@mixin high-contrast-dark-md-palette() {\n $background-color: #121212;\n \n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-border-color: #222222;\n --ion-item-background: #1e1e1e;\n --ion-toolbar-background: #1f1f1f;\n --ion-tab-bar-background: #1f1f1f;\n --ion-card-background: #1e1e1e;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: var(--ion-background-color-step-400);\n --ion-text-color-step-50: #{mix($darkest-text-color, $lightest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($darkest-text-color, $lightest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($darkest-text-color, $lightest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($darkest-text-color, $lightest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($darkest-text-color, $lightest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($darkest-text-color, $lightest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($darkest-text-color, $lightest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($darkest-text-color, $lightest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($darkest-text-color, $lightest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($darkest-text-color, $lightest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($darkest-text-color, $lightest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($darkest-text-color, $lightest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($darkest-text-color, $lightest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($darkest-text-color, $lightest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($darkest-text-color, $lightest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($darkest-text-color, $lightest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($darkest-text-color, $lightest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($darkest-text-color, $lightest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($darkest-text-color, $lightest-text-color, 95%)};\n --ion-background-color-step-50: #{mix($text-color, $background-color, 5%)};\n --ion-background-color-step-100: #{mix($text-color, $background-color, 10%)};\n --ion-background-color-step-150: #{mix($text-color, $background-color, 15%)};\n --ion-background-color-step-200: #{mix($text-color, $background-color, 20%)};\n --ion-background-color-step-250: #{mix($text-color, $background-color, 25%)};\n --ion-background-color-step-300: #{mix($text-color, $background-color, 30%)};\n --ion-background-color-step-350: #{mix($text-color, $background-color, 35%)};\n --ion-background-color-step-400: #{mix($text-color, $background-color, 40%)};\n --ion-background-color-step-450: #{mix($text-color, $background-color, 45%)};\n --ion-background-color-step-500: #{mix($text-color, $background-color, 50%)};\n --ion-background-color-step-550: #{mix($text-color, $background-color, 55%)};\n --ion-background-color-step-600: #{mix($text-color, $background-color, 60%)};\n --ion-background-color-step-650: #{mix($text-color, $background-color, 65%)};\n --ion-background-color-step-700: #{mix($text-color, $background-color, 70%)};\n --ion-background-color-step-750: #{mix($text-color, $background-color, 75%)};\n --ion-background-color-step-800: #{mix($text-color, $background-color, 80%)};\n --ion-background-color-step-850: #{mix($text-color, $background-color, 85%)};\n --ion-background-color-step-900: #{mix($text-color, $background-color, 90%)};\n --ion-background-color-step-950: #{mix($text-color, $background-color, 95%)};\n }\n\n // Toast\n // --------------------------------------------------\n\n & ion-toast {\n --color: var(--ion-background-color);\n }\n\n & ion-toast::part(button) {\n // Fallback for browsers that don't support color-mix\n color: var(--color);\n }\n\n /* stylelint-disable-next-line order/order */\n @supports (color: color-mix(in lch, plum, pink)) {\n & ion-toast::part(button) {\n color: color-mix(in srgb, var(--color) 73%, var(--button-color));\n }\n }\n\n & ion-toast::part(button cancel) {\n color: var(--color);\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../src/css/palettes/high-contrast.scss"],"names":[],"mappings":"AAqGE,MACE,gCACA,0CACA,0BACA,8BACA,+BAIA,iCACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCAGE,6BACA,oCACA,mCACA,gDACA,mCACA,kCALA,+BACA,sCACA,qCACA,kDACA,qCACA,oCALA,8BACA,qCACA,oCACA,iDACA,oCACA,mCALA,6BACA,mCACA,mCACA,gDACA,mCACA,kCALA,6BACA,mCACA,mCACA,gDACA,mCACA,kCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,2BACA,qCACA,iCACA,wCACA,iCACA,gCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,0BACA,iCACA,gCACA,6CACA,gCACA,+BASJ,mBACE,qCAGF,iCAEE,mBAIF,gDACE,iCACE,iEAIJ,wCACE","file":"high-contrast.always.css","sourcesContent":["@use \"sass:map\";\n@import \"../../themes/functions.color\";\n\n$primary: #003fae;\n$secondary: #01487b;\n$tertiary: #3400e6;\n$success: #004314;\n$warning: #5f4100;\n$danger: #9c000c;\n$light: #f4f5f8;\n$medium: #444446;\n$dark: #222428;\n\n$colors: (\n primary: (\n base: $primary,\n contrast: #fff,\n shade: get-color-shade($primary),\n tint: get-color-tint($primary),\n foreground: $primary,\n ),\n secondary: (\n base: $secondary,\n contrast: #fff,\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary),\n foreground: $secondary,\n ),\n tertiary: (\n base: $tertiary,\n contrast: #fff,\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary),\n foreground: $tertiary,\n ),\n success: (\n base: $success,\n contrast: #fff,\n shade: get-color-shade($success),\n tint: get-color-tint($success),\n foreground: $success,\n ),\n warning: (\n base: $warning,\n contrast: #fff,\n shade: get-color-shade($warning),\n tint: get-color-tint($warning),\n foreground: $warning,\n ),\n danger: (\n base: $danger,\n contrast: #fff,\n shade: get-color-shade($danger),\n tint: get-color-tint($danger),\n foreground: $danger,\n ),\n light: (\n base: $light,\n contrast: #000,\n shade: get-color-shade($light),\n tint: get-color-tint($light),\n foreground: $light,\n ),\n medium: (\n base: $medium,\n contrast: #fff,\n shade: get-color-shade($medium),\n tint: get-color-tint($medium),\n foreground: $medium,\n ),\n dark: (\n base: $dark,\n contrast: #fff,\n shade: get-color-shade($dark),\n tint: get-color-tint($dark),\n foreground: $dark,\n ),\n);\n\n/// Text step colors are generated based on\n/// how dark or light text can be. The darkest\n/// text color is usually the default text color (white or black).\n/// The darker the $lightest-text-color is, the darker each\n/// stepped color is. If you want to increase text contrast,\n/// make $lightest-text-color darker.\n$background-color: #ffffff;\n$text-color: #000000;\n\n$darkest-text-color: $text-color;\n$lightest-text-color: #888888;\n\n/// Loop through each color object above\n/// and generate CSS Variables for each\n/// color. Do not use the ion-color function\n/// here because that will set the variable\n/// to evaluate to itself with a fallback.\n/// For example:\n/// --ion-color-primary: #{ion-color(primary, base)};\n/// Maps to:\n/// --ion-color-primary: var(--ion-color-primary, #...);\n@mixin high-contrast-light-base-palette() {\n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-placeholder-opacity: 0.8;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: #7a7a7a;\n --ion-text-color-step-50: #{mix($lightest-text-color, $darkest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($lightest-text-color, $darkest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($lightest-text-color, $darkest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($lightest-text-color, $darkest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($lightest-text-color, $darkest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($lightest-text-color, $darkest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($lightest-text-color, $darkest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($lightest-text-color, $darkest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($lightest-text-color, $darkest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($lightest-text-color, $darkest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($lightest-text-color, $darkest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($lightest-text-color, $darkest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($lightest-text-color, $darkest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($lightest-text-color, $darkest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($lightest-text-color, $darkest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($lightest-text-color, $darkest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($lightest-text-color, $darkest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($lightest-text-color, $darkest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($lightest-text-color, $darkest-text-color, 95%)};\n\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n }\n}\n\n@mixin high-contrast-light-md-palette() {\n // Toast\n // --------------------------------------------------\n\n & ion-toast {\n --color: var(--ion-background-color);\n }\n\n & ion-toast::part(button) {\n // Fallback for browsers that don't support color-mix\n color: var(--color);\n }\n\n /* stylelint-disable-next-line order/order */\n @supports (color: color-mix(in lch, plum, pink)) {\n & ion-toast::part(button) {\n color: color-mix(in srgb, var(--color) 70%, var(--button-color));\n }\n }\n\n & ion-toast::part(button cancel) {\n color: var(--color);\n }\n}\n"]}
1
+ {"version":3,"sourceRoot":"","sources":["../../src/css/palettes/high-contrast.scss"],"names":[],"mappings":"AA4FE,MACE,gCACA,0CACA,0BACA,8BACA,+BAIA,iCACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCAGE,6BACA,oCACA,mCACA,gDACA,mCACA,kCALA,+BACA,sCACA,qCACA,kDACA,qCACA,oCALA,8BACA,qCACA,oCACA,iDACA,oCACA,mCALA,6BACA,mCACA,mCACA,gDACA,mCACA,kCALA,6BACA,mCACA,mCACA,gDACA,mCACA,kCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,2BACA,qCACA,iCACA,wCACA,iCACA,gCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,0BACA,iCACA,gCACA,6CACA,gCACA,+BASJ,mBACE,qCAGF,iCAEE,mBAIF,gDACE,iCACE,iEAIJ,wCACE","file":"high-contrast.always.css","sourcesContent":["@use \"sass:map\";\n@import \"../../themes/ionic.functions.color\";\n\n$primary: #003fae;\n$secondary: #01487b;\n$tertiary: #3400e6;\n$success: #004314;\n$warning: #5f4100;\n$danger: #9c000c;\n$light: #f4f5f8;\n$medium: #444446;\n$dark: #222428;\n\n$colors: (\n primary: (\n base: $primary,\n contrast: #fff,\n shade: get-color-shade($primary),\n tint: get-color-tint($primary)\n ),\n secondary: (\n base: $secondary,\n contrast: #fff,\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary)\n ),\n tertiary: (\n base: $tertiary,\n contrast: #fff,\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary)\n ),\n success: (\n base: $success,\n contrast: #fff,\n shade: get-color-shade($success),\n tint: get-color-tint($success)\n ),\n warning: (\n base: $warning,\n contrast: #fff,\n shade: get-color-shade($warning),\n tint: get-color-tint($warning)\n ),\n danger: (\n base: $danger,\n contrast: #fff,\n shade: get-color-shade($danger),\n tint: get-color-tint($danger)\n ),\n light: (\n base: $light,\n contrast: #000,\n shade: get-color-shade($light),\n tint: get-color-tint($light)\n ),\n medium: (\n base: $medium,\n contrast: #fff,\n shade: get-color-shade($medium),\n tint: get-color-tint($medium)\n ),\n dark: (\n base: $dark,\n contrast: #fff,\n shade: get-color-shade($dark),\n tint: get-color-tint($dark)\n )\n);\n\n/// Text step colors are generated based on\n/// how dark or light text can be. The darkest\n/// text color is usually the default text color (white or black).\n/// The darker the $lightest-text-color is, the darker each\n/// stepped color is. If you want to increase text contrast,\n/// make $lightest-text-color darker.\n$background-color: #ffffff;\n$text-color: #000000;\n\n$darkest-text-color: $text-color;\n$lightest-text-color: #888888;\n\n/// Loop through each color object above\n/// and generate CSS Variables for each\n/// color. Do not use the ion-color function\n/// here because that will set the variable\n/// to evaluate to itself with a fallback.\n/// For example:\n/// --ion-color-primary: #{ion-color(primary, base)};\n/// Maps to:\n/// --ion-color-primary: var(--ion-color-primary, #...);\n@mixin high-contrast-light-base-palette() {\n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-placeholder-opacity: 0.8;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: #7a7a7a;\n --ion-text-color-step-50: #{mix($lightest-text-color, $darkest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($lightest-text-color, $darkest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($lightest-text-color, $darkest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($lightest-text-color, $darkest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($lightest-text-color, $darkest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($lightest-text-color, $darkest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($lightest-text-color, $darkest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($lightest-text-color, $darkest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($lightest-text-color, $darkest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($lightest-text-color, $darkest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($lightest-text-color, $darkest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($lightest-text-color, $darkest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($lightest-text-color, $darkest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($lightest-text-color, $darkest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($lightest-text-color, $darkest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($lightest-text-color, $darkest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($lightest-text-color, $darkest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($lightest-text-color, $darkest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($lightest-text-color, $darkest-text-color, 95%)};\n\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n }\n}\n\n@mixin high-contrast-light-md-palette() {\n // Toast\n // --------------------------------------------------\n\n & ion-toast {\n --color: var(--ion-background-color);\n }\n\n & ion-toast::part(button) {\n // Fallback for browsers that don't support color-mix\n color: var(--color);\n }\n\n /* stylelint-disable-next-line order/order */\n @supports (color: color-mix(in lch, plum, pink)) {\n & ion-toast::part(button) {\n color: color-mix(in srgb, var(--color) 70%, var(--button-color));\n }\n }\n\n & ion-toast::part(button cancel) {\n color: var(--color);\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../src/css/palettes/high-contrast.scss"],"names":[],"mappings":"AAqGE,2BACE,gCACA,0CACA,0BACA,8BACA,+BAIA,iCACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCAGE,6BACA,oCACA,mCACA,gDACA,mCACA,kCALA,+BACA,sCACA,qCACA,kDACA,qCACA,oCALA,8BACA,qCACA,oCACA,iDACA,oCACA,mCALA,6BACA,mCACA,mCACA,gDACA,mCACA,kCALA,6BACA,mCACA,mCACA,gDACA,mCACA,kCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,2BACA,qCACA,iCACA,wCACA,iCACA,gCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,0BACA,iCACA,gCACA,6CACA,gCACA,+BASJ,wCACE,qCAGF,sDAEE,mBAIF,gDACE,sDACE,iEAIJ,6DACE","file":"high-contrast.class.css","sourcesContent":["@use \"sass:map\";\n@import \"../../themes/functions.color\";\n\n$primary: #003fae;\n$secondary: #01487b;\n$tertiary: #3400e6;\n$success: #004314;\n$warning: #5f4100;\n$danger: #9c000c;\n$light: #f4f5f8;\n$medium: #444446;\n$dark: #222428;\n\n$colors: (\n primary: (\n base: $primary,\n contrast: #fff,\n shade: get-color-shade($primary),\n tint: get-color-tint($primary),\n foreground: $primary,\n ),\n secondary: (\n base: $secondary,\n contrast: #fff,\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary),\n foreground: $secondary,\n ),\n tertiary: (\n base: $tertiary,\n contrast: #fff,\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary),\n foreground: $tertiary,\n ),\n success: (\n base: $success,\n contrast: #fff,\n shade: get-color-shade($success),\n tint: get-color-tint($success),\n foreground: $success,\n ),\n warning: (\n base: $warning,\n contrast: #fff,\n shade: get-color-shade($warning),\n tint: get-color-tint($warning),\n foreground: $warning,\n ),\n danger: (\n base: $danger,\n contrast: #fff,\n shade: get-color-shade($danger),\n tint: get-color-tint($danger),\n foreground: $danger,\n ),\n light: (\n base: $light,\n contrast: #000,\n shade: get-color-shade($light),\n tint: get-color-tint($light),\n foreground: $light,\n ),\n medium: (\n base: $medium,\n contrast: #fff,\n shade: get-color-shade($medium),\n tint: get-color-tint($medium),\n foreground: $medium,\n ),\n dark: (\n base: $dark,\n contrast: #fff,\n shade: get-color-shade($dark),\n tint: get-color-tint($dark),\n foreground: $dark,\n ),\n);\n\n/// Text step colors are generated based on\n/// how dark or light text can be. The darkest\n/// text color is usually the default text color (white or black).\n/// The darker the $lightest-text-color is, the darker each\n/// stepped color is. If you want to increase text contrast,\n/// make $lightest-text-color darker.\n$background-color: #ffffff;\n$text-color: #000000;\n\n$darkest-text-color: $text-color;\n$lightest-text-color: #888888;\n\n/// Loop through each color object above\n/// and generate CSS Variables for each\n/// color. Do not use the ion-color function\n/// here because that will set the variable\n/// to evaluate to itself with a fallback.\n/// For example:\n/// --ion-color-primary: #{ion-color(primary, base)};\n/// Maps to:\n/// --ion-color-primary: var(--ion-color-primary, #...);\n@mixin high-contrast-light-base-palette() {\n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-placeholder-opacity: 0.8;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: #7a7a7a;\n --ion-text-color-step-50: #{mix($lightest-text-color, $darkest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($lightest-text-color, $darkest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($lightest-text-color, $darkest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($lightest-text-color, $darkest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($lightest-text-color, $darkest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($lightest-text-color, $darkest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($lightest-text-color, $darkest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($lightest-text-color, $darkest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($lightest-text-color, $darkest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($lightest-text-color, $darkest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($lightest-text-color, $darkest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($lightest-text-color, $darkest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($lightest-text-color, $darkest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($lightest-text-color, $darkest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($lightest-text-color, $darkest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($lightest-text-color, $darkest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($lightest-text-color, $darkest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($lightest-text-color, $darkest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($lightest-text-color, $darkest-text-color, 95%)};\n\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n }\n}\n\n@mixin high-contrast-light-md-palette() {\n // Toast\n // --------------------------------------------------\n\n & ion-toast {\n --color: var(--ion-background-color);\n }\n\n & ion-toast::part(button) {\n // Fallback for browsers that don't support color-mix\n color: var(--color);\n }\n\n /* stylelint-disable-next-line order/order */\n @supports (color: color-mix(in lch, plum, pink)) {\n & ion-toast::part(button) {\n color: color-mix(in srgb, var(--color) 70%, var(--button-color));\n }\n }\n\n & ion-toast::part(button cancel) {\n color: var(--color);\n }\n}\n"]}
1
+ {"version":3,"sourceRoot":"","sources":["../../src/css/palettes/high-contrast.scss"],"names":[],"mappings":"AA4FE,2BACE,gCACA,0CACA,0BACA,8BACA,+BAIA,iCACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCAGE,6BACA,oCACA,mCACA,gDACA,mCACA,kCALA,+BACA,sCACA,qCACA,kDACA,qCACA,oCALA,8BACA,qCACA,oCACA,iDACA,oCACA,mCALA,6BACA,mCACA,mCACA,gDACA,mCACA,kCALA,6BACA,mCACA,mCACA,gDACA,mCACA,kCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,2BACA,qCACA,iCACA,wCACA,iCACA,gCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,0BACA,iCACA,gCACA,6CACA,gCACA,+BASJ,wCACE,qCAGF,sDAEE,mBAIF,gDACE,sDACE,iEAIJ,6DACE","file":"high-contrast.class.css","sourcesContent":["@use \"sass:map\";\n@import \"../../themes/ionic.functions.color\";\n\n$primary: #003fae;\n$secondary: #01487b;\n$tertiary: #3400e6;\n$success: #004314;\n$warning: #5f4100;\n$danger: #9c000c;\n$light: #f4f5f8;\n$medium: #444446;\n$dark: #222428;\n\n$colors: (\n primary: (\n base: $primary,\n contrast: #fff,\n shade: get-color-shade($primary),\n tint: get-color-tint($primary)\n ),\n secondary: (\n base: $secondary,\n contrast: #fff,\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary)\n ),\n tertiary: (\n base: $tertiary,\n contrast: #fff,\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary)\n ),\n success: (\n base: $success,\n contrast: #fff,\n shade: get-color-shade($success),\n tint: get-color-tint($success)\n ),\n warning: (\n base: $warning,\n contrast: #fff,\n shade: get-color-shade($warning),\n tint: get-color-tint($warning)\n ),\n danger: (\n base: $danger,\n contrast: #fff,\n shade: get-color-shade($danger),\n tint: get-color-tint($danger)\n ),\n light: (\n base: $light,\n contrast: #000,\n shade: get-color-shade($light),\n tint: get-color-tint($light)\n ),\n medium: (\n base: $medium,\n contrast: #fff,\n shade: get-color-shade($medium),\n tint: get-color-tint($medium)\n ),\n dark: (\n base: $dark,\n contrast: #fff,\n shade: get-color-shade($dark),\n tint: get-color-tint($dark)\n )\n);\n\n/// Text step colors are generated based on\n/// how dark or light text can be. The darkest\n/// text color is usually the default text color (white or black).\n/// The darker the $lightest-text-color is, the darker each\n/// stepped color is. If you want to increase text contrast,\n/// make $lightest-text-color darker.\n$background-color: #ffffff;\n$text-color: #000000;\n\n$darkest-text-color: $text-color;\n$lightest-text-color: #888888;\n\n/// Loop through each color object above\n/// and generate CSS Variables for each\n/// color. Do not use the ion-color function\n/// here because that will set the variable\n/// to evaluate to itself with a fallback.\n/// For example:\n/// --ion-color-primary: #{ion-color(primary, base)};\n/// Maps to:\n/// --ion-color-primary: var(--ion-color-primary, #...);\n@mixin high-contrast-light-base-palette() {\n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-placeholder-opacity: 0.8;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: #7a7a7a;\n --ion-text-color-step-50: #{mix($lightest-text-color, $darkest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($lightest-text-color, $darkest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($lightest-text-color, $darkest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($lightest-text-color, $darkest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($lightest-text-color, $darkest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($lightest-text-color, $darkest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($lightest-text-color, $darkest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($lightest-text-color, $darkest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($lightest-text-color, $darkest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($lightest-text-color, $darkest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($lightest-text-color, $darkest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($lightest-text-color, $darkest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($lightest-text-color, $darkest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($lightest-text-color, $darkest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($lightest-text-color, $darkest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($lightest-text-color, $darkest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($lightest-text-color, $darkest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($lightest-text-color, $darkest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($lightest-text-color, $darkest-text-color, 95%)};\n\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n }\n}\n\n@mixin high-contrast-light-md-palette() {\n // Toast\n // --------------------------------------------------\n\n & ion-toast {\n --color: var(--ion-background-color);\n }\n\n & ion-toast::part(button) {\n // Fallback for browsers that don't support color-mix\n color: var(--color);\n }\n\n /* stylelint-disable-next-line order/order */\n @supports (color: color-mix(in lch, plum, pink)) {\n & ion-toast::part(button) {\n color: color-mix(in srgb, var(--color) 70%, var(--button-color));\n }\n }\n\n & ion-toast::part(button cancel) {\n color: var(--color);\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../src/css/palettes/high-contrast.system.scss","../../src/css/palettes/high-contrast.scss"],"names":[],"mappings":"AAEA,+BCmGE,MACE,gCACA,0CACA,0BACA,8BACA,+BAIA,iCACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCAGE,6BACA,oCACA,mCACA,gDACA,mCACA,kCALA,+BACA,sCACA,qCACA,kDACA,qCACA,oCALA,8BACA,qCACA,oCACA,iDACA,oCACA,mCALA,6BACA,mCACA,mCACA,gDACA,mCACA,kCALA,6BACA,mCACA,mCACA,gDACA,mCACA,kCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,2BACA,qCACA,iCACA,wCACA,iCACA,gCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,0BACA,iCACA,gCACA,6CACA,gCACA,+BASJ,mBACE,qCAGF,iCAEE,mBAIF,gDACE,iCACE,iEAIJ,wCACE","file":"high-contrast.system.css","sourcesContent":["@import \"./high-contrast\";\n\n@media (prefers-contrast: more) {\n :root {\n @include high-contrast-light-base-palette();\n }\n\n :root.md {\n @include high-contrast-light-md-palette();\n }\n}\n","@use \"sass:map\";\n@import \"../../themes/functions.color\";\n\n$primary: #003fae;\n$secondary: #01487b;\n$tertiary: #3400e6;\n$success: #004314;\n$warning: #5f4100;\n$danger: #9c000c;\n$light: #f4f5f8;\n$medium: #444446;\n$dark: #222428;\n\n$colors: (\n primary: (\n base: $primary,\n contrast: #fff,\n shade: get-color-shade($primary),\n tint: get-color-tint($primary),\n foreground: $primary,\n ),\n secondary: (\n base: $secondary,\n contrast: #fff,\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary),\n foreground: $secondary,\n ),\n tertiary: (\n base: $tertiary,\n contrast: #fff,\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary),\n foreground: $tertiary,\n ),\n success: (\n base: $success,\n contrast: #fff,\n shade: get-color-shade($success),\n tint: get-color-tint($success),\n foreground: $success,\n ),\n warning: (\n base: $warning,\n contrast: #fff,\n shade: get-color-shade($warning),\n tint: get-color-tint($warning),\n foreground: $warning,\n ),\n danger: (\n base: $danger,\n contrast: #fff,\n shade: get-color-shade($danger),\n tint: get-color-tint($danger),\n foreground: $danger,\n ),\n light: (\n base: $light,\n contrast: #000,\n shade: get-color-shade($light),\n tint: get-color-tint($light),\n foreground: $light,\n ),\n medium: (\n base: $medium,\n contrast: #fff,\n shade: get-color-shade($medium),\n tint: get-color-tint($medium),\n foreground: $medium,\n ),\n dark: (\n base: $dark,\n contrast: #fff,\n shade: get-color-shade($dark),\n tint: get-color-tint($dark),\n foreground: $dark,\n ),\n);\n\n/// Text step colors are generated based on\n/// how dark or light text can be. The darkest\n/// text color is usually the default text color (white or black).\n/// The darker the $lightest-text-color is, the darker each\n/// stepped color is. If you want to increase text contrast,\n/// make $lightest-text-color darker.\n$background-color: #ffffff;\n$text-color: #000000;\n\n$darkest-text-color: $text-color;\n$lightest-text-color: #888888;\n\n/// Loop through each color object above\n/// and generate CSS Variables for each\n/// color. Do not use the ion-color function\n/// here because that will set the variable\n/// to evaluate to itself with a fallback.\n/// For example:\n/// --ion-color-primary: #{ion-color(primary, base)};\n/// Maps to:\n/// --ion-color-primary: var(--ion-color-primary, #...);\n@mixin high-contrast-light-base-palette() {\n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-placeholder-opacity: 0.8;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: #7a7a7a;\n --ion-text-color-step-50: #{mix($lightest-text-color, $darkest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($lightest-text-color, $darkest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($lightest-text-color, $darkest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($lightest-text-color, $darkest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($lightest-text-color, $darkest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($lightest-text-color, $darkest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($lightest-text-color, $darkest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($lightest-text-color, $darkest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($lightest-text-color, $darkest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($lightest-text-color, $darkest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($lightest-text-color, $darkest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($lightest-text-color, $darkest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($lightest-text-color, $darkest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($lightest-text-color, $darkest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($lightest-text-color, $darkest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($lightest-text-color, $darkest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($lightest-text-color, $darkest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($lightest-text-color, $darkest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($lightest-text-color, $darkest-text-color, 95%)};\n\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n }\n}\n\n@mixin high-contrast-light-md-palette() {\n // Toast\n // --------------------------------------------------\n\n & ion-toast {\n --color: var(--ion-background-color);\n }\n\n & ion-toast::part(button) {\n // Fallback for browsers that don't support color-mix\n color: var(--color);\n }\n\n /* stylelint-disable-next-line order/order */\n @supports (color: color-mix(in lch, plum, pink)) {\n & ion-toast::part(button) {\n color: color-mix(in srgb, var(--color) 70%, var(--button-color));\n }\n }\n\n & ion-toast::part(button cancel) {\n color: var(--color);\n }\n}\n"]}
1
+ {"version":3,"sourceRoot":"","sources":["../../src/css/palettes/high-contrast.system.scss","../../src/css/palettes/high-contrast.scss"],"names":[],"mappings":"AAEA,+BC0FE,MACE,gCACA,0CACA,0BACA,8BACA,+BAIA,iCACA,kCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,mCAGE,6BACA,oCACA,mCACA,gDACA,mCACA,kCALA,+BACA,sCACA,qCACA,kDACA,qCACA,oCALA,8BACA,qCACA,oCACA,iDACA,oCACA,mCALA,6BACA,mCACA,mCACA,gDACA,mCACA,kCALA,6BACA,mCACA,mCACA,gDACA,mCACA,kCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,2BACA,qCACA,iCACA,wCACA,iCACA,gCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,0BACA,iCACA,gCACA,6CACA,gCACA,+BASJ,mBACE,qCAGF,iCAEE,mBAIF,gDACE,iCACE,iEAIJ,wCACE","file":"high-contrast.system.css","sourcesContent":["@import \"./high-contrast\";\n\n@media (prefers-contrast: more) {\n :root {\n @include high-contrast-light-base-palette();\n }\n\n :root.md {\n @include high-contrast-light-md-palette();\n }\n}\n","@use \"sass:map\";\n@import \"../../themes/ionic.functions.color\";\n\n$primary: #003fae;\n$secondary: #01487b;\n$tertiary: #3400e6;\n$success: #004314;\n$warning: #5f4100;\n$danger: #9c000c;\n$light: #f4f5f8;\n$medium: #444446;\n$dark: #222428;\n\n$colors: (\n primary: (\n base: $primary,\n contrast: #fff,\n shade: get-color-shade($primary),\n tint: get-color-tint($primary)\n ),\n secondary: (\n base: $secondary,\n contrast: #fff,\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary)\n ),\n tertiary: (\n base: $tertiary,\n contrast: #fff,\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary)\n ),\n success: (\n base: $success,\n contrast: #fff,\n shade: get-color-shade($success),\n tint: get-color-tint($success)\n ),\n warning: (\n base: $warning,\n contrast: #fff,\n shade: get-color-shade($warning),\n tint: get-color-tint($warning)\n ),\n danger: (\n base: $danger,\n contrast: #fff,\n shade: get-color-shade($danger),\n tint: get-color-tint($danger)\n ),\n light: (\n base: $light,\n contrast: #000,\n shade: get-color-shade($light),\n tint: get-color-tint($light)\n ),\n medium: (\n base: $medium,\n contrast: #fff,\n shade: get-color-shade($medium),\n tint: get-color-tint($medium)\n ),\n dark: (\n base: $dark,\n contrast: #fff,\n shade: get-color-shade($dark),\n tint: get-color-tint($dark)\n )\n);\n\n/// Text step colors are generated based on\n/// how dark or light text can be. The darkest\n/// text color is usually the default text color (white or black).\n/// The darker the $lightest-text-color is, the darker each\n/// stepped color is. If you want to increase text contrast,\n/// make $lightest-text-color darker.\n$background-color: #ffffff;\n$text-color: #000000;\n\n$darkest-text-color: $text-color;\n$lightest-text-color: #888888;\n\n/// Loop through each color object above\n/// and generate CSS Variables for each\n/// color. Do not use the ion-color function\n/// here because that will set the variable\n/// to evaluate to itself with a fallback.\n/// For example:\n/// --ion-color-primary: #{ion-color(primary, base)};\n/// Maps to:\n/// --ion-color-primary: var(--ion-color-primary, #...);\n@mixin high-contrast-light-base-palette() {\n & {\n --ion-background-color: #{$background-color};\n --ion-background-color-rgb: #{color-to-rgb-list($background-color)};\n --ion-text-color: #{$text-color};\n --ion-text-color-rgb: #{color-to-rgb-list($text-color)};\n --ion-placeholder-opacity: 0.8;\n\n /// Only the item borders should increase in contrast\n /// Borders for elements like toolbars should remain the same\n --ion-item-border-color: #7a7a7a;\n --ion-text-color-step-50: #{mix($lightest-text-color, $darkest-text-color, 5%)};\n --ion-text-color-step-100: #{mix($lightest-text-color, $darkest-text-color, 10%)};\n --ion-text-color-step-150: #{mix($lightest-text-color, $darkest-text-color, 15%)};\n --ion-text-color-step-200: #{mix($lightest-text-color, $darkest-text-color, 20%)};\n --ion-text-color-step-250: #{mix($lightest-text-color, $darkest-text-color, 25%)};\n --ion-text-color-step-300: #{mix($lightest-text-color, $darkest-text-color, 30%)};\n --ion-text-color-step-350: #{mix($lightest-text-color, $darkest-text-color, 35%)};\n --ion-text-color-step-400: #{mix($lightest-text-color, $darkest-text-color, 40%)};\n --ion-text-color-step-450: #{mix($lightest-text-color, $darkest-text-color, 45%)};\n --ion-text-color-step-500: #{mix($lightest-text-color, $darkest-text-color, 50%)};\n --ion-text-color-step-550: #{mix($lightest-text-color, $darkest-text-color, 55%)};\n --ion-text-color-step-600: #{mix($lightest-text-color, $darkest-text-color, 60%)};\n --ion-text-color-step-650: #{mix($lightest-text-color, $darkest-text-color, 65%)};\n --ion-text-color-step-700: #{mix($lightest-text-color, $darkest-text-color, 70%)};\n --ion-text-color-step-750: #{mix($lightest-text-color, $darkest-text-color, 75%)};\n --ion-text-color-step-800: #{mix($lightest-text-color, $darkest-text-color, 80%)};\n --ion-text-color-step-850: #{mix($lightest-text-color, $darkest-text-color, 85%)};\n --ion-text-color-step-900: #{mix($lightest-text-color, $darkest-text-color, 90%)};\n --ion-text-color-step-950: #{mix($lightest-text-color, $darkest-text-color, 95%)};\n\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n }\n}\n\n@mixin high-contrast-light-md-palette() {\n // Toast\n // --------------------------------------------------\n\n & ion-toast {\n --color: var(--ion-background-color);\n }\n\n & ion-toast::part(button) {\n // Fallback for browsers that don't support color-mix\n color: var(--color);\n }\n\n /* stylelint-disable-next-line order/order */\n @supports (color: color-mix(in lch, plum, pink)) {\n & ion-toast::part(button) {\n color: color-mix(in srgb, var(--color) 70%, var(--button-color));\n }\n }\n\n & ion-toast::part(button cancel) {\n color: var(--color);\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../src/css/structure.scss","../src/themes/mixins.scss"],"names":[],"mappings":"AAOA,EACE,sBAEA,0CACA,wCACA,2BAGF,KACE,WACA,YACA,8BAEA,sBAGF,iBACE,cAGF,aACE,aAGF,KCyFE,kCACA,mCA4NE,YDpTc,ECqTd,aDrTc,ECwUhB,WDxUgB,ECyUhB,cDzUgB,ECoTd,aDnTe,ECoTf,cDpTe,ECuUjB,YDvUiB,ECwUjB,eDxUiB,EAEjB,eAEA,WACA,eACA,YACA,gBAsBA,wBAEA,kCAEA,gBAEA,0BAEA,uBAEA,yBAEA,qBAEA,2BACA,8BAEA","file":"structure.css","sourcesContent":["@import \"../themes/native/native.globals\";\n@import \"../themes/mixins\";\n\n// Structure\n// --------------------------------------------------\n// Adds structural css to the native html elements\n\n* {\n box-sizing: border-box;\n\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n -webkit-tap-highlight-color: transparent;\n -webkit-touch-callout: none;\n}\n\nhtml {\n width: 100%;\n height: 100%;\n -webkit-text-size-adjust: 100%;\n\n text-size-adjust: 100%;\n}\n\nhtml.ion-ce body {\n display: block;\n}\n\nhtml.plt-pwa {\n height: 100vh;\n}\n\nbody {\n @include font-smoothing();\n @include margin(0);\n @include padding(0);\n\n position: fixed;\n\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n\n /**\n * Because body has position: fixed,\n * it should be promoted to its own\n * layer.\n *\n * WebKit does not always promote\n * the body to its own layer on page\n * load in Ionic apps. Once scrolling on\n * ion-content starts, WebKit will promote\n * body. Unfortunately, this causes a re-paint\n * which results in scrolling being halted\n * until the next user gesture.\n *\n * This impacts the Custom Elements build.\n * The lazy loaded build causes the browser to\n * re-paint during hydration which causes WebKit\n * to promote body to its own layer.\n * In the CE Build, this hydration does not\n * happen, so the additional re-paint does not occur.\n */\n transform: translateZ(0);\n\n text-rendering: optimizeLegibility;\n\n overflow: hidden;\n\n touch-action: manipulation;\n\n -webkit-user-drag: none;\n\n -ms-content-zooming: none;\n\n word-wrap: break-word;\n\n overscroll-behavior-y: none;\n -webkit-text-size-adjust: none;\n\n text-size-adjust: none;\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/structure.scss","../src/themes/ionic.mixins.scss"],"names":[],"mappings":"AAQA,EACE,sBAEA,0CACA,wCACA,2BAGF,KACE,WACA,YACA,8BAEA,sBAGF,iBACE,cAGF,aACE,aAGF,KC8EE,kCACA,mCA0NE,YDvSc,ECwSd,aDxSc,EC4ThB,WD5TgB,EC6ThB,cD7TgB,ECuSd,aDtSe,ECuSf,cDvSe,EC2TjB,YD3TiB,EC4TjB,eD5TiB,EAEjB,eAEA,WACA,eACA,YACA,gBAsBA,wBAEA,kCAEA,gBAEA,0BAEA,uBAEA,yBAEA,qBAEA,2BACA,8BAEA","file":"structure.css","sourcesContent":["@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n\n// Structure\n// --------------------------------------------------\n// Adds structural css to the native html elements\n\n* {\n box-sizing: border-box;\n\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n -webkit-tap-highlight-color: transparent;\n -webkit-touch-callout: none;\n}\n\nhtml {\n width: 100%;\n height: 100%;\n -webkit-text-size-adjust: 100%;\n\n text-size-adjust: 100%;\n}\n\nhtml.ion-ce body {\n display: block;\n}\n\nhtml.plt-pwa {\n height: 100vh;\n}\n\nbody {\n @include font-smoothing();\n @include margin(0);\n @include padding(0);\n\n position: fixed;\n\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n\n /**\n * Because body has position: fixed,\n * it should be promoted to its own\n * layer.\n *\n * WebKit does not always promote\n * the body to its own layer on page\n * load in Ionic apps. Once scrolling on\n * ion-content starts, WebKit will promote\n * body. Unfortunately, this causes a re-paint\n * which results in scrolling being halted\n * until the next user gesture.\n *\n * This impacts the Custom Elements build.\n * The lazy loaded build causes the browser to\n * re-paint during hydration which causes WebKit\n * to promote body to its own layer.\n * In the CE Build, this hydration does not\n * happen, so the additional re-paint does not occur.\n */\n transform: translateZ(0);\n\n text-rendering: optimizeLegibility;\n\n overflow: hidden;\n\n touch-action: manipulation;\n\n -webkit-user-drag: none;\n\n -ms-content-zooming: none;\n\n word-wrap: break-word;\n\n overscroll-behavior-y: none;\n -webkit-text-size-adjust: none;\n\n text-size-adjust: none;\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/text-alignment.scss","../src/themes/mixins.scss"],"names":[],"mappings":"AAaI,iBACE,6BAGF,kBACE,8BAGF,gBACE,4BAGF,cACE,0BAGF,eACE,2BAGF,gBACE,4BAGF,iBACE,8BAGF,eACE,8BCiIF,yBD9JA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BCiIF,yBD9JA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BCiIF,yBD9JA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BCiIF,0BD9JA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE","file":"text-alignment.css","sourcesContent":["@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","@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-alignment.scss","../src/themes/ionic.mixins.scss"],"names":[],"mappings":"AAaI,iBACE,6BAGF,kBACE,8BAGF,gBACE,4BAGF,cACE,0BAGF,eACE,2BAGF,gBACE,4BAGF,iBACE,8BAGF,eACE,8BCuHF,yBDpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BCuHF,yBDpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BCuHF,yBDpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BCuHF,0BDpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE","file":"text-alignment.css","sourcesContent":["@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","\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"]}