import { Property } from 'csstype'; import { themeFormatter } from '../utils/formatter'; import { cssProperty, toCss } from '../utils/style'; import { SpacingPropertyTheme, TLength, CssProperty } from './typings'; export const padding = cssProperty>( 'padding', themeFormatter('spacings'), ); export const paddingY: CssProperty> = (value, variants = {}) => { return toCss('padding-top', themeFormatter('spacings'), value, variants).concat( toCss('padding-bottom', themeFormatter('spacings'), value, variants), ); }; export const paddingX: CssProperty> = (value, variants = {}) => { return toCss('padding-left', themeFormatter('spacings'), value, variants).concat( toCss('padding-right', themeFormatter('spacings'), value, variants), ); }; export const paddingLeft = cssProperty>( 'padding-left', themeFormatter('spacings'), ); export const paddingRight = cssProperty>( 'padding-right', themeFormatter('spacings'), ); export const paddingTop = cssProperty>( 'padding-top', themeFormatter('spacings'), ); export const paddingBottom = cssProperty>( 'padding-bottom', themeFormatter('spacings'), ); export const margin = cssProperty>( 'margin', themeFormatter('spacings'), ); export const marginY: CssProperty> = (value, variants = {}) => { return toCss('margin-top', themeFormatter('spacings'), value, variants).concat( toCss('margin-bottom', themeFormatter('spacings'), value, variants), ); }; export const marginX: CssProperty> = (value, variants = {}) => { return toCss('margin-left', themeFormatter('spacings'), value, variants).concat( toCss('margin-right', themeFormatter('spacings'), value, variants), ); }; export const marginLeft = cssProperty>( 'margin-left', themeFormatter('spacings'), ); export const marginRight = cssProperty>( 'margin-right', themeFormatter('spacings'), ); export const marginTop = cssProperty>( 'margin-top', themeFormatter('spacings'), ); export const marginBottom = cssProperty>( 'margin-bottom', themeFormatter('spacings'), );