Files
bot-whatsapp/packages/docs/tailwind.config.js
2022-12-23 15:21:33 +01:00

223 lines
9.3 KiB
JavaScript

/** @type {import('tailwindcss').Config} */
const defaultTheme = require('tailwindcss/defaultTheme')
const colors = require('tailwindcss/colors')
module.exports = {
content: ['./src/**/*.{js,ts,jsx,tsx,mdx}'],
theme: {
extend: {
colors: {
primary: colors.green,
secondary: colors.sky,
},
typography: (theme) => ({
DEFAULT: {
css: {
maxWidth: 'none',
color: theme('colors.slate.700'),
hr: {
borderColor: theme('colors.slate.100'),
marginTop: '3em',
marginBottom: '3em',
},
'h1, h2, h3': {
letterSpacing: '-0.025em',
},
h2: {
marginBottom: `${16 / 24}em`,
},
h3: {
marginTop: '2.4em',
lineHeight: '1.4',
},
h4: {
marginTop: '2em',
fontSize: '1.125em',
},
'h2 small, h3 small, h4 small': {
fontFamily: theme('fontFamily.mono').join(', '),
color: theme('colors.slate.500'),
fontWeight: 500,
},
'h2 small': {
fontSize: theme('fontSize.lg')[0],
...theme('fontSize.lg')[1],
},
'h3 small': {
fontSize: theme('fontSize.base')[0],
...theme('fontSize.base')[1],
},
'h4 small': {
fontSize: theme('fontSize.sm')[0],
...theme('fontSize.sm')[1],
},
'h2, h3, h4': {
'scroll-margin-top': 'var(--scroll-mt)',
},
ul: {
listStyleType: 'none',
paddingLeft: 0,
},
'ul > li': {
position: 'relative',
paddingLeft: '1.75em',
},
'ul > li::before': {
content: '""',
width: '0.75em',
height: '0.125em',
position: 'absolute',
top: 'calc(0.875em - 0.0625em)',
left: 0,
borderRadius: '999px',
backgroundColor: theme('colors.slate.300'),
},
a: {
fontWeight: theme('fontWeight.semibold'),
textDecoration: 'none',
borderBottom: `1px solid ${theme(
'colors.sky.300'
)}`,
},
'a:hover': {
borderBottomWidth: '2px',
},
'a code': {
color: 'inherit',
fontWeight: 'inherit',
},
strong: {
color: theme('colors.slate.900'),
fontWeight: theme('fontWeight.semibold'),
},
'a strong': {
color: 'inherit',
fontWeight: 'inherit',
},
kbd: {
background: theme('colors.slate.100'),
borderWidth: '1px',
borderColor: theme('colors.slate.200'),
padding: '0.125em 0.25em',
color: theme('colors.slate.700'),
fontWeight: 500,
fontSize: '0.875em',
fontVariantLigatures: 'none',
borderRadius: '4px',
margin: '0 1px',
},
code: {
fontWeight: theme('fontWeight.medium'),
fontVariantLigatures: 'none',
},
pre: {
color: theme('colors.slate.50'),
borderRadius: theme('borderRadius.xl'),
padding: theme('padding.5'),
boxShadow: theme('boxShadow.md'),
display: 'flex',
marginTop: `${20 / 14}em`,
marginBottom: `${32 / 14}em`,
},
'p + pre': {
marginTop: `${-4 / 14}em`,
},
'pre + pre': {
marginTop: `${-16 / 14}em`,
},
'pre code': {
flex: 'none',
minWidth: '100%',
},
table: {
fontSize: theme('fontSize.sm')[0],
lineHeight: theme('fontSize.sm')[1].lineHeight,
},
thead: {
color: theme('colors.slate.700'),
borderBottomColor: theme('colors.slate.200'),
},
'thead th': {
paddingTop: 0,
fontWeight: theme('fontWeight.semibold'),
},
'tbody tr': {
borderBottomColor: theme('colors.slate.100'),
},
'tbody tr:last-child': {
borderBottomWidth: '1px',
},
'tbody code': {
fontSize: theme('fontSize.xs')[0],
},
'figure figcaption': {
textAlign: 'center',
fontStyle: 'italic',
},
'figure > figcaption': {
marginTop: `${12 / 14}em`,
},
},
},
dark: {
css: {
color: theme('colors.slate.400'),
'h2, h3, h4, thead th': {
color: theme('colors.slate.200'),
},
'h2 small, h3 small, h4 small': {
color: theme('colors.slate.400'),
},
kbd: {
background: theme('colors.slate.700'),
borderColor: theme('colors.slate.600'),
color: theme('colors.slate.200'),
},
code: {
color: theme('colors.slate.200'),
},
hr: {
borderColor: theme('colors.slate.200'),
opacity: '0.05',
},
pre: {
boxShadow: 'inset 0 0 0 1px rgb(255 255 255 / 0.1)',
},
a: {
color: theme('colors.white'),
borderBottomColor: theme('colors.sky.400'),
},
strong: {
color: theme('colors.slate.200'),
},
thead: {
color: theme('colors.slate.300'),
borderBottomColor: 'rgb(148 163 184 / 0.2)',
},
'tbody tr': {
borderBottomColor: 'rgb(148 163 184 / 0.1)',
},
blockQuote: {
color: theme('colors.white'),
},
},
},
}),
fontFamily: {
sans: ['Inter var', ...defaultTheme.fontFamily.sans],
mono: ['Fira Code VF', ...defaultTheme.fontFamily.mono],
source: ['Source Sans Pro', ...defaultTheme.fontFamily.sans],
'ubuntu-mono': ['Ubuntu Mono', ...defaultTheme.fontFamily.mono],
},
},
},
darkMode: 'class',
plugins: [
require('@tailwindcss/line-clamp'),
require('@tailwindcss/typography'),
require('@tailwindcss/aspect-ratio'),
require('@tailwindcss/forms')({ strategy: 'class' }),
],
}