tailwind.config.js 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. var colors = require('tailwindcss/colors');
  2. var plugin = require('tailwindcss/plugin');
  3. /** @type {import('tailwindcss').Config} */
  4. module.exports = {
  5. darkMode: 'selector',
  6. content: ['./src/**/*.{html,js,ts}'],
  7. theme: {
  8. extend: {
  9. darkMode: 'class',
  10. fontFamily: {
  11. primary: 'var(--font-primary)',
  12. title: 'var(--font-title)',
  13. logo: 'var(--font-logo)',
  14. },
  15. colors: {
  16. ...colors,
  17. primary: {
  18. DEFAULT: 'rgb(var(--primary) / <alpha-value>)',
  19. dark: 'rgb(var(--primary-dark) / <alpha-value>)',
  20. variation: 'rgb(var(--primary-variation) / <alpha-value>)',
  21. 'variation-dark': 'rgb(var(--primary-variation-dark) / <alpha-value>)',
  22. },
  23. secondary: {
  24. DEFAULT: 'rgb(var(--secondary) / <alpha-value>)',
  25. dark: 'rgb(var(--secondary-dark) / <alpha-value>)',
  26. },
  27. background: {
  28. DEFAULT: 'rgb(var(--background) / <alpha-value>)',
  29. dark: 'rgb(var(--background-dark) / <alpha-value>)',
  30. },
  31. surface: {
  32. DEFAULT: 'rgb(var(--surface) / <alpha-value>)',
  33. variation: 'rgb(var(--surface-variation) / <alpha-value>)',
  34. dark: 'rgb(var(--surface-dark) / <alpha-value>)',
  35. 'variation-dark': 'rgb(var(--surface-variation-dark) / <alpha-value>)',
  36. },
  37. accent: {
  38. DEFAULT: 'rgb(var(--accent) / <alpha-value>)',
  39. dark: 'rgb(var(--accent-dark) / <alpha-value>)',
  40. },
  41. on: {
  42. primary: 'rgb(var(--on-primary) / <alpha-value>)',
  43. 'primary-variation': 'rgb(var(--on-primary-variation) / <alpha-value>)',
  44. secondary: 'rgb(var(--on-secondary) / <alpha-value>)',
  45. 'secondary-variation': 'rgb(var(--on-secondary-variation) / <alpha-value>)',
  46. accent: 'rgb(var(--on-accent) / <alpha-value>)',
  47. background: 'rgb(var(--on-background) / <alpha-value>)',
  48. 'background-variation': 'rgb(var(--on-background-variation) / <alpha-value>)',
  49. surface: 'rgb(var(--on-surface) / <alpha-value>)',
  50. 'surface-variation': 'rgb(var(--on-surface-variation) / <alpha-value>)',
  51. 'primary-dark': 'rgb(var(--on-primary-dark) / <alpha-value>)',
  52. 'primary-variation-dark': 'rgb(var(--on-primary-variation-dark) / <alpha-value>)',
  53. 'secondary-dark': 'rgb(var(--on-secondary-dark) / <alpha-value>)',
  54. 'secondary-variation-dark': 'rgb(var(--on-secondary-variation-dark) / <alpha-value>)',
  55. 'accent-dark': 'rgb(var(--on-accent-dark) / <alpha-value>)',
  56. 'background-dark': 'rgb(var(--on-background-dark) / <alpha-value>)',
  57. 'background-variation-dark': 'rgb(var(--on-background-variation-dark) / <alpha-value>)',
  58. 'surface-dark': 'rgb(var(--on-surface-dark) / <alpha-value>)',
  59. 'surface-variation-dark': 'rgb(var(--on-surface-variation-dark) / <alpha-value>)',
  60. },
  61. success: {
  62. DEFAULT: colors.lime[600],
  63. variation: colors.green[700],
  64. },
  65. warning: {
  66. DEFAULT: colors.amber[400],
  67. variation: colors.amber[600],
  68. },
  69. error: {
  70. DEFAULT: colors.red[400],
  71. variation: colors.red[600],
  72. },
  73. },
  74. },
  75. },
  76. plugins: [
  77. plugin(function ({ addBase, theme }) {
  78. addBase({
  79. h1: { fontSize: theme('fontSize.3xl'), fontWeight: theme('fontWeight.bold') },
  80. h2: { fontSize: theme('fontSize.2xl'), fontWeight: theme('fontWeight.bold') },
  81. h3: { fontSize: theme('fontSize.xl'), fontWeight: theme('fontWeight.semibold') },
  82. h4: { fontSize: theme('fontSize.lg'), fontWeight: theme('fontWeight.semibold') },
  83. });
  84. }),
  85. ],
  86. };