{"mappings":"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","sources":["packages/@adobe/react-spectrum/src/utils/styleProps.ts"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {BackgroundColorValue, BorderColorValue, BorderRadiusValue, BorderSizeValue, ColorValue, ColorVersion, DimensionValue, Direction, Responsive, ResponsiveProp, StyleProps, ViewStyleProps} from '@react-types/shared';\nimport {CSSProperties, HTMLAttributes} from 'react';\nimport {useBreakpoint} from './BreakpointProvider';\nimport {useLocale} from 'react-aria/I18nProvider';\n\ntype Breakpoint = 'base' | 'S' | 'M' | 'L' | string;\ntype StyleName = string | string[] | ((dir: Direction) => string);\ntype StyleHandler = (value: any, colorVersion?: number) => string | undefined;\nexport interface StyleHandlers {\n  [key: string]: [StyleName, StyleHandler]\n}\n\nexport const baseStyleProps: StyleHandlers = {\n  margin: ['margin', dimensionValue],\n  marginStart: [rtl('marginLeft', 'marginRight'), dimensionValue],\n  marginEnd: [rtl('marginRight', 'marginLeft'), dimensionValue],\n  // marginLeft: ['marginLeft', dimensionValue],\n  // marginRight: ['marginRight', dimensionValue],\n  marginTop: ['marginTop', dimensionValue],\n  marginBottom: ['marginBottom', dimensionValue],\n  marginX: [['marginLeft', 'marginRight'], dimensionValue],\n  marginY: [['marginTop', 'marginBottom'], dimensionValue],\n  width: ['width', dimensionValue],\n  height: ['height', dimensionValue],\n  minWidth: ['minWidth', dimensionValue],\n  minHeight: ['minHeight', dimensionValue],\n  maxWidth: ['maxWidth', dimensionValue],\n  maxHeight: ['maxHeight', dimensionValue],\n  isHidden: ['display', hiddenValue],\n  alignSelf: ['alignSelf', passthroughStyle],\n  justifySelf: ['justifySelf', passthroughStyle],\n  position: ['position', anyValue],\n  zIndex: ['zIndex', anyValue],\n  top: ['top', dimensionValue],\n  bottom: ['bottom', dimensionValue],\n  start: [rtl('left', 'right'), dimensionValue],\n  end: [rtl('right', 'left'), dimensionValue],\n  left: ['left', dimensionValue],\n  right: ['right', dimensionValue],\n  order: ['order', anyValue],\n  flex: ['flex', flexValue],\n  flexGrow: ['flexGrow', passthroughStyle],\n  flexShrink: ['flexShrink', passthroughStyle],\n  flexBasis: ['flexBasis', passthroughStyle],\n  gridArea: ['gridArea', passthroughStyle],\n  gridColumn: ['gridColumn', passthroughStyle],\n  gridColumnEnd: ['gridColumnEnd', passthroughStyle],\n  gridColumnStart: ['gridColumnStart', passthroughStyle],\n  gridRow: ['gridRow', passthroughStyle],\n  gridRowEnd: ['gridRowEnd', passthroughStyle],\n  gridRowStart: ['gridRowStart', passthroughStyle]\n};\n\nexport const viewStyleProps: StyleHandlers = {\n  ...baseStyleProps,\n  backgroundColor: ['backgroundColor', backgroundColorValue],\n  borderWidth: ['borderWidth', borderSizeValue],\n  borderStartWidth: [rtl('borderLeftWidth', 'borderRightWidth'), borderSizeValue],\n  borderEndWidth: [rtl('borderRightWidth', 'borderLeftWidth'), borderSizeValue],\n  borderLeftWidth: ['borderLeftWidth', borderSizeValue],\n  borderRightWidth: ['borderRightWidth', borderSizeValue],\n  borderTopWidth: ['borderTopWidth', borderSizeValue],\n  borderBottomWidth: ['borderBottomWidth', borderSizeValue],\n  borderXWidth: [['borderLeftWidth', 'borderRightWidth'], borderSizeValue],\n  borderYWidth: [['borderTopWidth', 'borderBottomWidth'], borderSizeValue],\n  borderColor: ['borderColor', borderColorValue],\n  borderStartColor: [rtl('borderLeftColor', 'borderRightColor'), borderColorValue],\n  borderEndColor: [rtl('borderRightColor', 'borderLeftColor'), borderColorValue],\n  borderLeftColor: ['borderLeftColor', borderColorValue],\n  borderRightColor: ['borderRightColor', borderColorValue],\n  borderTopColor: ['borderTopColor', borderColorValue],\n  borderBottomColor: ['borderBottomColor', borderColorValue],\n  borderXColor: [['borderLeftColor', 'borderRightColor'], borderColorValue],\n  borderYColor: [['borderTopColor', 'borderBottomColor'], borderColorValue],\n  borderRadius: ['borderRadius', borderRadiusValue],\n  borderTopStartRadius: [rtl('borderTopLeftRadius', 'borderTopRightRadius'), borderRadiusValue],\n  borderTopEndRadius: [rtl('borderTopRightRadius', 'borderTopLeftRadius'), borderRadiusValue],\n  borderBottomStartRadius: [rtl('borderBottomLeftRadius', 'borderBottomRightRadius'), borderRadiusValue],\n  borderBottomEndRadius: [rtl('borderBottomRightRadius', 'borderBottomLeftRadius'), borderRadiusValue],\n  borderTopLeftRadius: ['borderTopLeftRadius', borderRadiusValue],\n  borderTopRightRadius: ['borderTopRightRadius', borderRadiusValue],\n  borderBottomLeftRadius: ['borderBottomLeftRadius', borderRadiusValue],\n  borderBottomRightRadius: ['borderBottomRightRadius', borderRadiusValue],\n  padding: ['padding', dimensionValue],\n  paddingStart: [rtl('paddingLeft', 'paddingRight'), dimensionValue],\n  paddingEnd: [rtl('paddingRight', 'paddingLeft'), dimensionValue],\n  paddingLeft: ['paddingLeft', dimensionValue],\n  paddingRight: ['paddingRight', dimensionValue],\n  paddingTop: ['paddingTop', dimensionValue],\n  paddingBottom: ['paddingBottom', dimensionValue],\n  paddingX: [['paddingLeft', 'paddingRight'], dimensionValue],\n  paddingY: [['paddingTop', 'paddingBottom'], dimensionValue],\n  overflow: ['overflow', passthroughStyle]\n};\n\nconst borderStyleProps = {\n  borderWidth: 'borderStyle',\n  borderLeftWidth: 'borderLeftStyle',\n  borderRightWidth: 'borderRightStyle',\n  borderTopWidth: 'borderTopStyle',\n  borderBottomWidth: 'borderBottomStyle'\n};\n\nfunction rtl(ltr: string, rtl: string) {\n  return (direction: Direction) => (\n    direction === 'rtl' ? rtl : ltr\n  );\n}\n\nconst UNIT_RE = /(%|px|em|rem|vw|vh|auto|cm|mm|in|pt|pc|ex|ch|rem|vmin|vmax|fr)$/;\nconst FUNC_RE = /^\\s*\\w+\\(/;\nconst SPECTRUM_VARIABLE_RE = /(static-)?size-\\d+|single-line-(height|width)/g;\n\nexport function dimensionValue(value: DimensionValue): string | undefined {\n  if (typeof value === 'number') {\n    return value + 'px';\n  }\n\n  if (!value) {\n    return undefined;\n  }\n\n  if (UNIT_RE.test(value)) {\n    return value;\n  }\n\n  if (FUNC_RE.test(value)) {\n    return value.replace(SPECTRUM_VARIABLE_RE, 'var(--spectrum-global-dimension-$&, var(--spectrum-alias-$&))');\n  }\n\n  return `var(--spectrum-global-dimension-${value}, var(--spectrum-alias-${value}))`;\n}\n\nexport function responsiveDimensionValue(value: Responsive<DimensionValue>, matchedBreakpoints: Breakpoint[]): string | undefined {\n  let responsiveValue = getResponsiveProp(value, matchedBreakpoints);\n  if (responsiveValue != null) {\n    return dimensionValue(responsiveValue);\n  }\n}\n\ntype ColorType = 'default' | 'background' | 'border' | 'icon' | 'status';\nfunction colorValue(value: ColorValue, type: ColorType = 'default', version = 5) {\n  if (version > 5) {\n    return `var(--spectrum-${value}, var(--spectrum-semantic-${value}-color-${type}))`;\n  }\n\n  return `var(--spectrum-legacy-color-${value}, var(--spectrum-global-color-${value}, var(--spectrum-semantic-${value}-color-${type})))`;\n}\n\nfunction backgroundColorValue(value: BackgroundColorValue, version = 5): string | undefined {\n  if (!value) {\n    return undefined;\n  }\n\n  return `var(--spectrum-alias-background-color-${value}, ${colorValue(value as ColorValue, 'background', version)})`;\n}\n\nfunction borderColorValue(value: BorderColorValue, version = 5): string | undefined {\n  if (!value)  {\n    return undefined;\n  }\n\n  if (value === 'default') {\n    return 'var(--spectrum-alias-border-color)';\n  }\n\n  return `var(--spectrum-alias-border-color-${value}, ${colorValue(value as ColorValue, 'border', version)})`;\n}\n\nfunction borderSizeValue(value?: BorderSizeValue | null): string {\n  return value && value !== 'none'\n    ? `var(--spectrum-alias-border-size-${value})`\n    : '0';\n}\n\nfunction borderRadiusValue(value: BorderRadiusValue): string | undefined {\n  if (!value) {\n    return undefined;\n  }\n\n  return `var(--spectrum-alias-border-radius-${value})`;\n}\n\nfunction hiddenValue(value: boolean): string | undefined {\n  return value ? 'none' : undefined;\n}\n\nfunction anyValue<T>(value: T): T {\n  return value;\n}\n\nfunction flexValue(value: boolean | number | string): string | undefined {\n  if (typeof value === 'boolean') {\n    return value ? '1' : undefined;\n  }\n\n  return '' + value;\n}\n\nexport function convertStyleProps<C extends ColorVersion>(props: ViewStyleProps<C>, handlers: StyleHandlers, direction: Direction, matchedBreakpoints: Breakpoint[]): CSSProperties {\n  let style: CSSProperties = {};\n  for (let key in props) {\n    let styleProp = handlers[key];\n    if (!styleProp || props[key] == null) {\n      continue;\n    }\n\n    let [name, convert] = styleProp;\n    if (typeof name === 'function') {\n      name = name(direction);\n    }\n\n    let prop = getResponsiveProp(props[key], matchedBreakpoints);\n    let value = convert(prop, props.colorVersion);\n    if (Array.isArray(name)) {\n      for (let k of name) {\n        style[k] = value;\n      }\n    } else {\n      style[name] = value;\n    }\n  }\n\n  for (let prop in borderStyleProps) {\n    if (style[prop]) {\n      style[borderStyleProps[prop]] = 'solid';\n      style.boxSizing = 'border-box';\n    }\n  }\n\n  return style;\n}\n\ntype StylePropsOptions = {\n  matchedBreakpoints?: Breakpoint[]\n};\n\nexport function useStyleProps<T extends StyleProps>(\n  props: T,\n  handlers: StyleHandlers = baseStyleProps,\n  options: StylePropsOptions = {}\n): {styleProps: HTMLAttributes<HTMLElement>} {\n  let {\n    UNSAFE_className,\n    UNSAFE_style,\n    ...otherProps\n  } = props;\n  let breakpointProvider = useBreakpoint();\n  let {direction} = useLocale();\n  let {\n    matchedBreakpoints = breakpointProvider?.matchedBreakpoints || ['base']\n  } = options;\n  let styles = convertStyleProps(props, handlers, direction, matchedBreakpoints);\n  let style = {...UNSAFE_style, ...styles};\n\n  // @ts-ignore\n  if (otherProps.className && process.env.NODE_ENV !== 'production') {\n    console.warn(\n      'The className prop is unsafe and is unsupported in React Spectrum v3. ' +\n      'Please use style props with Spectrum variables, or UNSAFE_className if you absolutely must do something custom. ' +\n      'Note that this may break in future versions due to DOM structure changes.'\n    );\n  }\n\n  // @ts-ignore\n  if (otherProps.style && process.env.NODE_ENV !== 'production') {\n    console.warn(\n      'The style prop is unsafe and is unsupported in React Spectrum v3. ' +\n      'Please use style props with Spectrum variables, or UNSAFE_style if you absolutely must do something custom. ' +\n      'Note that this may break in future versions due to DOM structure changes.'\n    );\n  }\n\n  let styleProps: HTMLAttributes<HTMLElement> = {\n    style,\n    className: UNSAFE_className\n  };\n\n  if (getResponsiveProp(props.isHidden, matchedBreakpoints)) {\n    styleProps.hidden = true;\n  }\n\n  return {\n    styleProps\n  };\n}\n\nexport function passthroughStyle<T>(value: T): T {\n  return value;\n}\n\nexport function getResponsiveProp<T>(prop: Responsive<T>, matchedBreakpoints: Breakpoint[]): T | undefined {\n  if (prop && typeof prop === 'object' && !Array.isArray(prop)) {\n    for (let i = 0; i < matchedBreakpoints.length; i++) {\n      let breakpoint = matchedBreakpoints[i];\n      if (prop[breakpoint] != null) {\n        return prop[breakpoint];\n      }\n    }\n    return (prop as ResponsiveProp<T>).base;\n  }\n  return prop as T;\n}\n"],"names":[],"version":3,"file":"styleProps.cjs.map"}