173 lines
5.0 KiB
JavaScript
173 lines
5.0 KiB
JavaScript
// @ts-check
|
|
|
|
const defaultTheme = require('tailwindcss/defaultTheme')
|
|
const colors = require('tailwindcss/colors')
|
|
|
|
/** @type {import("tailwindcss/tailwind-config").TailwindConfig } */
|
|
module.exports = {
|
|
experimental: {
|
|
optimizeUniversalDefaults: true,
|
|
},
|
|
content: [
|
|
'./pages/**/*.tsx',
|
|
'./components/**/*.tsx',
|
|
'./layouts/**/*.tsx',
|
|
'./lib/**/*.ts',
|
|
'./data/**/*.mdx',
|
|
],
|
|
darkMode: 'class',
|
|
theme: {
|
|
extend: {
|
|
spacing: {
|
|
'9/16': '56.25%',
|
|
},
|
|
lineHeight: {
|
|
11: '2.75rem',
|
|
12: '3rem',
|
|
13: '3.25rem',
|
|
14: '3.5rem',
|
|
},
|
|
fontFamily: {
|
|
sans: ['InterVariable', ...defaultTheme.fontFamily.sans],
|
|
},
|
|
colors: {
|
|
primary: colors.teal,
|
|
//@ts-ignore
|
|
gray: colors.neutral, // TODO: Remove ts-ignore after tw types gets updated to v3
|
|
},
|
|
typography: (theme) => ({
|
|
DEFAULT: {
|
|
css: {
|
|
color: theme('colors.gray.700'),
|
|
a: {
|
|
color: theme('colors.primary.500'),
|
|
'&:hover': {
|
|
color: `${theme('colors.primary.600')} !important`,
|
|
},
|
|
code: { color: theme('colors.primary.400') },
|
|
},
|
|
h1: {
|
|
fontWeight: '700',
|
|
letterSpacing: theme('letterSpacing.tight'),
|
|
color: theme('colors.gray.900'),
|
|
},
|
|
h2: {
|
|
fontWeight: '700',
|
|
letterSpacing: theme('letterSpacing.tight'),
|
|
color: theme('colors.gray.900'),
|
|
},
|
|
h3: {
|
|
fontWeight: '600',
|
|
color: theme('colors.gray.900'),
|
|
},
|
|
'h4,h5,h6': {
|
|
color: theme('colors.gray.900'),
|
|
},
|
|
pre: {
|
|
backgroundColor: theme('colors.gray.800'),
|
|
},
|
|
code: {
|
|
color: theme('colors.pink.500'),
|
|
backgroundColor: theme('colors.gray.100'),
|
|
paddingLeft: '4px',
|
|
paddingRight: '4px',
|
|
paddingTop: '2px',
|
|
paddingBottom: '2px',
|
|
borderRadius: '0.25rem',
|
|
},
|
|
'code::before': {
|
|
content: 'none',
|
|
},
|
|
'code::after': {
|
|
content: 'none',
|
|
},
|
|
details: {
|
|
backgroundColor: theme('colors.gray.100'),
|
|
paddingLeft: '4px',
|
|
paddingRight: '4px',
|
|
paddingTop: '2px',
|
|
paddingBottom: '2px',
|
|
borderRadius: '0.25rem',
|
|
},
|
|
hr: { borderColor: theme('colors.gray.200') },
|
|
'ol li::marker': {
|
|
fontWeight: '600',
|
|
color: theme('colors.gray.500'),
|
|
},
|
|
'ul li::marker': {
|
|
backgroundColor: theme('colors.gray.500'),
|
|
},
|
|
strong: { color: theme('colors.gray.600') },
|
|
blockquote: {
|
|
color: theme('colors.gray.900'),
|
|
borderLeftColor: theme('colors.gray.200'),
|
|
},
|
|
},
|
|
},
|
|
dark: {
|
|
css: {
|
|
color: theme('colors.gray.300'),
|
|
a: {
|
|
color: theme('colors.primary.500'),
|
|
'&:hover': {
|
|
color: `${theme('colors.primary.400')} !important`,
|
|
},
|
|
code: { color: theme('colors.primary.400') },
|
|
},
|
|
h1: {
|
|
fontWeight: '700',
|
|
letterSpacing: theme('letterSpacing.tight'),
|
|
color: theme('colors.gray.100'),
|
|
},
|
|
h2: {
|
|
fontWeight: '700',
|
|
letterSpacing: theme('letterSpacing.tight'),
|
|
color: theme('colors.gray.100'),
|
|
},
|
|
h3: {
|
|
fontWeight: '600',
|
|
color: theme('colors.gray.100'),
|
|
},
|
|
'h4,h5,h6': {
|
|
color: theme('colors.gray.100'),
|
|
},
|
|
pre: {
|
|
backgroundColor: theme('colors.gray.800'),
|
|
},
|
|
code: {
|
|
backgroundColor: theme('colors.gray.800'),
|
|
},
|
|
details: {
|
|
backgroundColor: theme('colors.gray.800'),
|
|
},
|
|
hr: { borderColor: theme('colors.gray.700') },
|
|
'ol li::marker': {
|
|
fontWeight: '600',
|
|
color: theme('colors.gray.400'),
|
|
},
|
|
'ul li::marker': {
|
|
backgroundColor: theme('colors.gray.400'),
|
|
},
|
|
strong: { color: theme('colors.gray.100') },
|
|
thead: {
|
|
th: {
|
|
color: theme('colors.gray.100'),
|
|
},
|
|
},
|
|
tbody: {
|
|
tr: {
|
|
borderBottomColor: theme('colors.gray.700'),
|
|
},
|
|
},
|
|
blockquote: {
|
|
color: theme('colors.gray.100'),
|
|
borderLeftColor: theme('colors.gray.700'),
|
|
},
|
|
},
|
|
},
|
|
}),
|
|
},
|
|
},
|
|
plugins: [require('@tailwindcss/forms'), require('@tailwindcss/typography')],
|
|
}
|