UNPKG

apphouse

Version:

Component library for React that uses observable state management and theme-able components.

24 lines (21 loc) 585 B
import { runInAction } from 'mobx'; import { merge } from '../utils/obj/merge'; import { getGutterStyles } from './getGutterStyles'; /** * helper function to accept overwrite styles and merge with base styles * @param componentStyles * @param overwrites * @returns */ export function mergeStyles<T>( defaultStyles: T, overwrites?: T, gutters?: number | string ): T { let styles = defaultStyles; runInAction(() => { const gutterStyles = getGutterStyles(gutters); styles = merge({}, defaultStyles, overwrites || {}, gutterStyles || {}); }); return styles; }