unocss.config.js 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. // Copyright 2019-2024 Tauri Programme within The Commons Conservancy
  2. // SPDX-License-Identifier: Apache-2.0
  3. // SPDX-License-Identifier: MIT
  4. import { defineConfig, presetIcons, presetUno, presetWebFonts } from 'unocss'
  5. import extractorSvelte from '@unocss/extractor-svelte'
  6. export default defineConfig({
  7. theme: {
  8. colors: {
  9. primary: '#FFFFFF',
  10. primaryLighter: '#e9ecef',
  11. darkPrimary: '#1B1B1D',
  12. darkPrimaryLighter: '#242526',
  13. primaryText: '#1C1E21',
  14. darkPrimaryText: '#E3E3E3',
  15. secondaryText: '#858A91',
  16. darkSecondaryText: '#C2C5CA',
  17. accent: '#3578E5',
  18. accentDark: '#306cce',
  19. accentDarker: '#2d66c3',
  20. accentDarkest: '#2554a0',
  21. accentLight: '#538ce9',
  22. accentLighter: '#72a1ed',
  23. accentLightest: '#9abcf2',
  24. accentText: '#FFFFFF',
  25. darkAccent: '#67d6ed',
  26. darkAccentDark: '#49cee9',
  27. darkAccentDarker: '#39cae8',
  28. darkAccentDarkest: '#19b5d5',
  29. darkAccentLight: '#85def1',
  30. darkAccentLighter: '#95e2f2',
  31. darkAccentLightest: '#c2eff8',
  32. darkAccentText: '#1C1E21',
  33. code: '#d6d8da',
  34. codeDark: '#282a2e',
  35. hoverOverlay: 'rgba(0,0,0,.05)',
  36. hoverOverlayDarker: 'rgba(0,0,0,.1)',
  37. darkHoverOverlay: 'hsla(0,0%,100%,.05)',
  38. darkHoverOverlayDarker: 'hsla(0,0%,100%,.1)'
  39. }
  40. },
  41. preflights: [
  42. {
  43. getCSS: ({ theme }) => `
  44. ::-webkit-scrollbar-thumb {
  45. background-color: ${theme.colors.accent};
  46. }
  47. .dark ::-webkit-scrollbar-thumb {
  48. background-color: ${theme.colors.darkAccent};
  49. }
  50. code {
  51. font-size: ${theme.fontSize.xs[0]};
  52. font-family: ${theme.fontFamily.mono};
  53. border-radius: ${theme.borderRadius['DEFAULT']};
  54. background-color: ${theme.colors.code};
  55. }
  56. .code-block {
  57. font-family: ${theme.fontFamily.mono};
  58. font-size: ${theme.fontSize.sm[0]};
  59. }
  60. .dark code {
  61. background-color: ${theme.colors.codeDark};
  62. }
  63. `
  64. }
  65. ],
  66. shortcuts: {
  67. btn: `select-none outline-none shadow-md p-2 rd-1 text-primaryText border-none font-400 dark:font-600
  68. bg-accent hover:bg-accentDarker active:bg-accentDarkest text-accentText
  69. dark:bg-darkAccent dark:hover:bg-darkAccentDarker dark:active:bg-darkAccentDarkest dark:text-darkAccentText`,
  70. nv: `decoration-none flex items-center relative p-2 rd-1 transition-all-125 ease
  71. text-darkSecondaryText
  72. hover:text-accent dark:hover:text-darkAccent
  73. hover:bg-darkHoverOverlay hover:border-l-4`,
  74. nv_selected: `nv bg-darkHoverOverlay text-accent dark:text-darkAccent border-l-4`,
  75. note: `decoration-none flex-inline items-center relative p-2 rd-1
  76. border-l-4 border-accent dark:border-darkAccent
  77. bg-accent/10 dark:bg-darkAccent/10`,
  78. 'note-red':
  79. 'note bg-red-700/10 dark:bg-red-700/10 after:bg-red-700 dark:after:bg-red-700',
  80. input:
  81. 'h-10 flex items-center outline-none border-none p-2 rd-1 shadow-md bg-primaryLighter dark:bg-darkPrimaryLighter text-primaryText dark:text-darkPrimaryText'
  82. },
  83. presets: [
  84. presetUno(),
  85. presetIcons(),
  86. presetWebFonts({
  87. fonts: {
  88. sans: 'Rubik',
  89. mono: ['Fira Code', 'Fira Mono:400,700']
  90. }
  91. })
  92. ],
  93. extractors: [extractorSvelte]
  94. })