tailwind.config.js 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. // Copyright (C) 2012-2023 Zammad Foundation, https://zammad-foundation.org/
  2. const colors = require('tailwindcss/colors')
  3. const lineClampPlugin = require('@tailwindcss/line-clamp')
  4. const formKitTailwind = require('@formkit/themes/tailwindcss')
  5. const plugin = require('tailwindcss/plugin')
  6. const path = require('path')
  7. // Add the moment we can use one tailwind config for the mobile app, but later we need to check
  8. // how this works with different apps.
  9. module.exports = {
  10. content: [`${path.resolve(__dirname)}/app/frontend/**/*.{js,jsx,ts,tsx,vue}`],
  11. theme: {
  12. fontFamily: {
  13. sans: [
  14. '"Fira Sans"',
  15. '"Helvetica Neue"',
  16. 'Helvetica',
  17. 'Arial',
  18. 'sans-serif',
  19. ],
  20. },
  21. colors: {
  22. transparent: 'transparent',
  23. current: 'currentColor',
  24. black: {
  25. DEFAULT: '#191919',
  26. full: colors.black,
  27. },
  28. white: colors.white,
  29. gray: {
  30. DEFAULT: '#999999',
  31. 100: '#D1D1D1',
  32. 150: '#D8D8D8',
  33. 200: '#656567',
  34. 300: '#4C4C4D',
  35. 400: '#323234',
  36. 500: '#282829',
  37. 600: '#262627',
  38. highlight: '#99999926',
  39. light: '#25262D99',
  40. },
  41. blue: {
  42. DEFAULT: '#23A2CD',
  43. dark: '#045972',
  44. highlight: '#23A2CD19',
  45. },
  46. yellow: {
  47. DEFAULT: '#FFCE33',
  48. highlight: '#FFCE331A',
  49. inactive: '#A38629',
  50. },
  51. red: {
  52. DEFAULT: '#E54011',
  53. highlight: '#E540111A',
  54. bright: '#FF4008',
  55. dark: '#261F1D',
  56. },
  57. green: {
  58. DEFAULT: '#36AF6A',
  59. highlight: '#38AD691A',
  60. },
  61. pink: '#EA4D84',
  62. 'dark-blue': '#045972',
  63. orange: '#F39804',
  64. },
  65. extend: {},
  66. minWidth: {
  67. '1/2-2': 'calc(100% / 2 - theme(spacing.2))',
  68. },
  69. },
  70. plugins: [
  71. lineClampPlugin,
  72. formKitTailwind,
  73. plugin(({ addVariant }) => {
  74. addVariant('formkit-populated', [
  75. '&[data-populated]',
  76. '[data-populated] &',
  77. '[data-populated]&',
  78. ])
  79. addVariant('formkit-required', [
  80. '&[data-required]',
  81. '[data-required] &',
  82. '[data-required]&',
  83. ])
  84. addVariant('formkit-dirty', [
  85. '&[data-dirty]',
  86. '[data-dirty] &',
  87. '[data-dirty]&',
  88. ])
  89. addVariant('formkit-is-checked', [
  90. '&[data-is-checked]',
  91. '[data-is-checked] &',
  92. '[data-is-checked]&',
  93. ])
  94. addVariant('formkit-label-hidden', [
  95. '&[data-label-hidden]',
  96. '[data-label-hidden] &',
  97. '[data-label-hidden]&',
  98. ])
  99. addVariant('formkit-variant-primary', [
  100. '[data-variant="primary"] &',
  101. '[data-variant="primary"]&',
  102. ])
  103. addVariant('formkit-variant-secondary', [
  104. '[data-variant="secondary"] &',
  105. '[data-variant="secondary"]&',
  106. ])
  107. addVariant('formkit-variant-submit', [
  108. '[data-variant="submit"] &',
  109. '[data-variant="submit"]&',
  110. ])
  111. addVariant('formkit-variant-danger', [
  112. '[data-variant="danger"] &',
  113. '[data-variant="danger"]&',
  114. ])
  115. }),
  116. ],
  117. }