UNPKG

@indoqa/style-system

Version:

A style system for React with Typescript typed theme support and several base components.

33 lines 1.31 kB
import monolithic from 'fela-monolithic'; import namedKeys from 'fela-plugin-named-keys'; import validator from 'fela-plugin-validator'; import webPreset from 'fela-preset-web'; import sortMediaQueryMobileFirst from 'fela-sort-media-query-mobile-first'; import { baseTheme } from '../theming/baseTheme'; import { toMediaQueryMap } from '../theming/mediaQueryHelper'; function createNamedKeys(breakpoints) { return namedKeys({ ...toMediaQueryMap(breakpoints), print: '@media print', }); } export function createFelaConfig(breakpoints = baseTheme.breakpoints, filterClassName, selectorPrefix, disableDevMode) { const config = { plugins: [...webPreset, createNamedKeys(breakpoints)], enhancers: [sortMediaQueryMobileFirst()], devMode: false, }; if (process.env.NODE_ENV === 'development' && !disableDevMode) { config.plugins = [...webPreset, createNamedKeys(breakpoints), validator()]; config.enhancers = [monolithic({ prettySelectors: true }), sortMediaQueryMobileFirst()]; config.devMode = true; } if (selectorPrefix) { config.selectorPrefix = selectorPrefix; } if (filterClassName) { config.filterClassName = filterClassName; } return config; } //# sourceMappingURL=createFelaConfig.js.map