tailwind.config.js 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. const plugin = require("tailwindcss/plugin")
  2. const styles = require("./styles.json")
  3. module.exports = {
  4. theme: {
  5. screens: {
  6. sm: "420px",
  7. md: "768px",
  8. lg: "1024px",
  9. },
  10. fontFamily: {
  11. sans: [
  12. "Inter",
  13. "-apple-system",
  14. "BlinkMacSystemFont",
  15. "Helvetica",
  16. "Arial",
  17. "sans-serif",
  18. ],
  19. mono: [
  20. "SFMono-Regular",
  21. "SFMono Regular",
  22. "Consolas",
  23. "Liberation Mono",
  24. "Menlo",
  25. "Courier",
  26. "monospace",
  27. ],
  28. },
  29. fontWeight: {
  30. normal: "400",
  31. medium: "500",
  32. semibold: "600",
  33. bold: "700",
  34. },
  35. colors: styles.colors,
  36. extend: {
  37. colors: {
  38. ...styles.colors,
  39. "bg-app": "var(--color-bg-app)",
  40. "bg-menu-item-hover": "var(--color-bg-menu-item-hover)",
  41. "border-base": "var(--color-border-base)",
  42. "text-base": "var(--color-text-base)",
  43. "text-muted": "var(--color-text-muted)",
  44. "text-disabled": "var(--color-text-disabled)",
  45. "text-primary": "var(--color-text-primary)",
  46. "text-warning": "var(--color-text-warning)",
  47. "text-danger": "var(--color-text-danger)",
  48. },
  49. borderColor: {
  50. DEFAULT: "var(--color-border-base)",
  51. },
  52. boxShadow: {
  53. dialog: "0 10px 40px rgba(0,0,0,0.12), 0 0 16px rgba(0,0,0,0.08)",
  54. form: "0 1px 1px rgba(0, 0, 0, 0.04)",
  55. soft: "0 4px 12px 0 rgba(0, 0, 0, 0.03)",
  56. popover:
  57. "0 0 0 1px rgba(136, 152, 170, 0.1), 0 15px 35px 0 rgba(49, 49, 93, 0.1), 0 5px 15px 0 rgba(0, 0, 0, 0.08)",
  58. },
  59. animation: {
  60. "scale-in": "scale-in 120ms cubic-bezier(0.16, 1, 0.3, 1)",
  61. "scale-out": "scale-out 120ms cubic-bezier(0.16, 1, 0.3, 1)",
  62. },
  63. transformOrigin: {
  64. "radix-hovercard": "var(--radix-hover-card-content-transform-origin)",
  65. "radix-popover": "var(--radix-popover-content-transform-origin)",
  66. "radix-tooltip": "var(--radix-tooltip-content-transform-origin)",
  67. },
  68. keyframes: {
  69. "scale-in": {
  70. "0%": {
  71. transform: "scale(0.94)",
  72. opacity: "0",
  73. },
  74. "100%": {
  75. transform: "scale(1)",
  76. opacity: "1",
  77. },
  78. },
  79. "scale-out": {
  80. "0%": {
  81. transform: "scale(1)",
  82. opacity: "1",
  83. },
  84. "100%": {
  85. transform: "scale(0.94)",
  86. opacity: "0",
  87. },
  88. },
  89. },
  90. },
  91. },
  92. plugins: [
  93. plugin(function ({ addVariant }) {
  94. addVariant("state-open", [
  95. '&[data-state="open"]',
  96. '[data-state="open"] &',
  97. ])
  98. addVariant("state-closed", [
  99. '&[data-state="closed"]',
  100. '[data-state="closed"] &',
  101. ])
  102. addVariant("state-delayed-open", [
  103. '&[data-state="delayed-open"]',
  104. '[data-state="delayed-open"] &',
  105. ])
  106. addVariant("state-active", ['&[data-state="active"]'])
  107. addVariant("state-inactive", ['&[data-state="inactive"]'])
  108. }),
  109. ],
  110. content: ["./src/**/*.html", "./src/**/*.{ts,tsx}", "./index.html"],
  111. }