12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- /* eslint-disable */
- const defaultTheme = require('tailwindcss/defaultTheme');
- const colors = require('tailwindcss/colors');
- function withOpacityValue(variable) {
- return ({ opacityValue }) => {
- if (opacityValue === undefined) {
- return `rgb(var(${variable}))`;
- }
- return `rgb(var(${variable}) / ${opacityValue})`;
- };
- }
- function rem2px(input, fontSize = 16) {
- if (input == null) {
- return input;
- }
- switch (typeof input) {
- case 'object':
- if (Array.isArray(input)) {
- return input.map((val) => rem2px(val, fontSize));
- }
- const ret = {};
- for (const key in input) {
- ret[key] = rem2px(input[key]);
- }
- return ret;
- case 'string':
- return input.replace(
- /(\d*\.?\d+)rem$/,
- (_, val) => `${parseFloat(val) * fontSize}px`
- );
- default:
- return input;
- }
- }
- module.exports = {
- content: ['./src/**/*.{js,jsx,ts,tsx,vue}', './business/**/*.{js,jsx,ts,tsx,vue}'],
- darkMode: 'class', // or 'media' or 'class'
- theme: {
- borderRadius: rem2px(defaultTheme.borderRadius),
- columns: rem2px(defaultTheme.columns),
- fontSize: rem2px(defaultTheme.fontSize),
- lineHeight: rem2px(defaultTheme.lineHeight),
- maxWidth: ({ theme, breakpoints }) => ({
- ...rem2px(defaultTheme.maxWidth({ theme, breakpoints })),
- }),
- spacing: rem2px(defaultTheme.spacing),
- extend: {
- colors: {
- primary: withOpacityValue('--color-primary'),
- secondary: withOpacityValue('--color-secondary'),
- accent: withOpacityValue('--color-accent'),
- gray: colors.zinc,
- orange: colors.orange,
- },
- fontFamily: {
- sans: ['Poppins', 'sans-serif'],
- mono: ['Source Code Pro', 'monospace'],
- },
- container: {
- center: true,
- padding: {
- DEFAULT: '1rem',
- sm: '2rem',
- },
- },
- },
- },
- variants: {
- extend: {},
- },
- plugins: [require('@tailwindcss/typography')],
- };
|