{"mappings":"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","sources":["packages/@react-spectrum/s2/style/spectrum-theme.ts"],"sourcesContent":["/*\n * Copyright 2024 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 {ArbitraryProperty, Color, createTheme, ExpandedProperty, MappedProperty, parseArbitraryValue, PercentageProperty, SizingProperty} from './style-macro';\nimport {ArbitraryValue, CSSProperties, CSSValue, PropertyValueDefinition, PropertyValueMap, Value} from './types';\nimport {autoStaticColor, ColorRef, colorScale, ColorToken, colorToken, fontSizeToken, generateOverlayColorScale, getToken, rawColorToken, simpleColorScale, weirdColorToken} from './tokens' with {type: 'macro'};\nimport type * as CSS from 'csstype';\n\ninterface MacroContext {\n  addAsset(asset: {type: string, content: string}): void\n}\n\nfunction pxToRem(px: string | number) {\n  if (typeof px === 'string') {\n    px = parseFloat(px);\n  }\n  return px / 16 + 'rem';\n}\n\nconst baseColors = {\n  transparent: 'transparent',\n  black: 'black',\n  white: 'white',\n\n  ...colorScale('gray'),\n  ...colorScale('blue'),\n  ...colorScale('red'),\n  ...colorScale('orange'),\n  ...colorScale('yellow'),\n  ...colorScale('chartreuse'),\n  ...colorScale('celery'),\n  ...colorScale('green'),\n  ...colorScale('seafoam'),\n  ...colorScale('cyan'),\n  ...colorScale('indigo'),\n  ...colorScale('purple'),\n  ...colorScale('fuchsia'),\n  ...colorScale('magenta'),\n  ...colorScale('pink'),\n  ...colorScale('turquoise'),\n  ...colorScale('brown'),\n  ...colorScale('silver'),\n  ...colorScale('cinnamon'),\n\n  ...colorScale('accent-color'),\n  ...colorScale('informative-color'),\n  ...colorScale('negative-color'),\n  ...colorScale('notice-color'),\n  ...colorScale('positive-color'),\n\n  ...simpleColorScale('transparent-white'),\n  ...simpleColorScale('transparent-black'),\n  ...generateOverlayColorScale(),\n\n  // High contrast mode.\n  Background: 'Background',\n  ButtonBorder: 'ButtonBorder',\n  ButtonFace: 'ButtonFace',\n  ButtonText: 'ButtonText',\n  Field: 'Field',\n  Highlight: 'Highlight',\n  HighlightText: 'HighlightText',\n  GrayText: 'GrayText',\n  Mark: 'Mark',\n  LinkText: 'LinkText'\n};\n\n// Resolves a color to its most basic form, following all aliases.\nfunction resolveColorToken(token: string | ColorToken | ColorRef): ColorToken {\n  if (typeof token === 'string') {\n    return {\n      type: 'color',\n      light: token,\n      dark: token\n    };\n  }\n\n  if (token.type === 'color') {\n    return token;\n  }\n\n  let lightToken = baseColors[token.light];\n  if (!lightToken) {\n    throw new Error(`${token.light} is not a valid color reference`);\n  }\n  let darkToken = baseColors[token.dark];\n  if (!darkToken) {\n    throw new Error(`${token.dark} is not a valid color reference`);\n  }\n\n  let light = resolveColorToken(lightToken);\n  let dark = resolveColorToken(darkToken);\n  return {\n    type: 'color',\n    light: light.light,\n    dark: dark.dark\n  };\n}\n\nfunction colorTokenToString(token: ColorToken, opacity?: string | number) {\n  let result = token.light === token.dark ? token.light : `light-dark(${token.light}, ${token.dark})`;\n  if (opacity) {\n    result = `rgb(from ${result} r g b / ${opacity}%)`;\n  }\n  return result;\n}\n\n// Bumps up a color token by one stop, e.g. for hover/press states.\nlet colorList = Object.keys(baseColors);\nfunction nextColorStop(name: string, token: string | ColorToken | ColorRef): ColorToken {\n  if (typeof token === 'object' && token.type === 'ref') {\n    let light = nextColorStop(token.light, baseColors[token.light]);\n    let dark = nextColorStop(token.dark, baseColors[token.dark]);\n\n    return {\n      type: 'color',\n      light: light.light,\n      dark: dark.dark,\n      forcedColors: token.forcedColors\n    };\n  }\n\n  let index = colorList.indexOf(name);\n  if (index === -1) {\n    throw new Error(`${name} does not support states`);\n  }\n\n  let key = colorList[index + 1];\n  if (key.split('-')[0] !== name.split('-')[0]) {\n    throw new Error(`${name} does not support states`);\n  }\n\n  return resolveColorToken(baseColors[key]);\n}\n\nclass SpectrumColorProperty<C extends string> extends ArbitraryProperty<C> {\n  mapping: {[name in C]: string | ColorToken | ColorRef};\n\n  constructor(property: string, mapping: {[name in C]: string | ColorToken | ColorRef}) {\n    super(property);\n    this.mapping = mapping;\n  }\n\n  toCSSValue(value: Color<C>): PropertyValueDefinition<Value> {\n    let [colorWithOpacity, state] = value.split(':');\n    let [color, opacity] = colorWithOpacity.split('/');\n    let token: string | ColorToken | ColorRef = this.mapping[color];\n    if (!token) {\n      throw new Error('Invalid color ' + value);\n    }\n\n    if (state === 'hovered' || state === 'pressed' || state === 'focused') {\n      token = nextColorStop(color, token);\n    } else {\n      token = resolveColorToken(token);\n    }\n\n    let result = colorTokenToString(token, opacity);\n    if (token.forcedColors) {\n      return {\n        default: result,\n        forcedColors: token.forcedColors\n      };\n    }\n\n    return result;\n  }\n}\n\ntype BaseColor = keyof typeof baseColors;\n\nexport function baseColor<C extends string = BaseColor>(base: BaseColor | C): {default: C, isHovered: C, isFocusVisible: C, isPressed: C} {\n  return {\n    default: base as C,\n    isHovered: `${base}:hovered` as C,\n    isFocusVisible: `${base}:focused` as C,\n    isPressed: `${base}:pressed` as C\n  };\n}\n\ntype SpectrumColor = Color<BaseColor> | ArbitraryValue;\nexport function color(value: SpectrumColor): string {\n  let arbitrary = parseArbitraryValue(value);\n  if (arbitrary) {\n    return arbitrary;\n  }\n  let [colorValue, opacity] = value.split('/');\n  return colorTokenToString(resolveColorToken(baseColors[colorValue]), opacity);\n}\n\nexport function lightDark(light: SpectrumColor, dark: SpectrumColor): `[${string}]` {\n  return `[light-dark(${color(light)}, ${color(dark)})]`;\n}\n\nexport function colorMix(a: SpectrumColor, b: SpectrumColor, percent: number): `[${string}]` {\n  return `[color-mix(in srgb, ${color(a)}, ${color(b)} ${percent}%)]`;\n}\n\ninterface LinearGradient {\n  type: 'linear-gradient',\n  angle: string,\n  stops: [SpectrumColor, number][]\n}\n\nexport function linearGradient(this: MacroContext | void, angle: string, ...tokens: [SpectrumColor, number][]): [LinearGradient] {\n  // Generate @property rules for each gradient stop color. This allows the gradient to be animated.\n  let propertyDefinitions: string[] = [];\n  for (let i = 0; i < tokens.length; i++) {\n    propertyDefinitions.push(`@property --g${i} {\n  syntax: '<color>';\n  initial-value: #0000;\n  inherits: false;\n}`);\n  }\n\n  if (this && typeof this.addAsset === 'function') {\n    this.addAsset({\n      type: 'css',\n      content: propertyDefinitions.join('\\n\\n')\n    });\n  }\n\n  return [{\n    type: 'linear-gradient',\n    angle,\n    stops: tokens\n  }];\n}\n\n// Spacing uses rems, padding does not.\nfunction generateSpacing<K extends number[]>(px: K): {spacing: {[P in K[number]]: string}, padding: {[P in K[number]]: string}} {\n  let spacing: any = {};\n  let padding: any = {};\n  for (let p of px) {\n    spacing[p] = pxToRem(p);\n    padding[p] = p + 'px';\n  }\n  return {spacing, padding};\n}\n\nconst {spacing: baseSpacing, padding: basePadding} = generateSpacing([\n  0,\n  2, // spacing-50\n  4, // spacing-75\n  8, // spacing-100\n  12, // spacing-200\n  16, // spacing-300\n  20,\n  24, // spacing-400\n  28,\n  32, // spacing-500\n  36,\n  40, // spacing-600\n  44,\n  48, // spacing-700\n  56,\n  // From here onward the values are mostly spaced by 1rem (16px)\n  64, // spacing-800\n  80, // spacing-900\n  96 // spacing-1000\n] as const);\n\n// This should match the above, but negative. There's no way to negate a number\n// type in typescript so this has to be done manually for now.\nconst {spacing: negativeSpacing, padding: negativePadding} = generateSpacing([\n  -2, // spacing-50\n  -4, // spacing-75\n  -8, // spacing-100\n  -12, // spacing-200\n  -16, // spacing-300\n  -20,\n  -24, // spacing-400\n  -28,\n  -32, // spacing-500\n  -36,\n  -40, // spacing-600\n  -44,\n  -48, // spacing-700\n  -56,\n  // From here onward the values are mostly spaced by 1rem (16px)\n  -64, // spacing-800\n  -80, // spacing-900\n  -96 // spacing-1000\n] as const);\n\nexport type PositiveSpacing = keyof typeof baseSpacing;\nexport type NegativeSpacing = keyof typeof negativeSpacing;\nexport type Spacing = PositiveSpacing | NegativeSpacing;\n\nexport function fontRelative(this: MacroContext | void, base: number, baseFontSize = 14): string {\n  return (base / baseFontSize) + 'em';\n}\n\nexport function edgeToText(this: MacroContext | void, height: keyof typeof baseSpacing): string {\n  return `calc(${baseSpacing[height]} * 3 / 8)`;\n}\n\nexport function space(this: MacroContext | void, px: number): string {\n  return pxToRem(px);\n}\n\nconst relativeSpacing = {\n  // font-size relative values\n  'text-to-control': fontRelative(10),\n  'text-to-visual': {\n    default: fontRelative(6), // -> 5px, 5px, 6px, 7px, 8px\n    touch: fontRelative(8, 17) // -> 6px, 7px, 8px, 9px, 10px, should be 7px, 7px, 8px, 9px, 11px\n  },\n  // height relative values\n  'edge-to-text': 'calc(self(height, self(minHeight)) * 3 / 8)',\n  'pill': 'calc(self(height, self(minHeight)) / 2)'\n} as const;\n\nconst spacing = {\n  ...baseSpacing,\n  ...relativeSpacing\n};\n\nconst padding = {\n  ...basePadding,\n  ...relativeSpacing\n};\n\nexport function size(this: MacroContext | void, px: number): string {\n  return `calc(${pxToRem(px)} * var(--s2-scale))`;\n}\n\nconst sizing = {\n  auto: 'auto',\n  full: '100%',\n  min: 'min-content',\n  max: 'max-content',\n  fit: 'fit-content'\n};\n\nconst height = {\n  ...sizing,\n  screen: '100vh'\n};\n\nconst width = {\n  ...sizing,\n  screen: '100vw'\n};\n\nfunction createSpectrumSizingProperty<T extends CSSValue>(property: string, values: PropertyValueMap<T>) {\n  return new SizingProperty(property, values, px => `calc(${pxToRem(px)} * var(--s2-scale))`);\n}\n\nconst margin = {\n  ...spacing,\n  ...negativeSpacing,\n  auto: 'auto'\n};\n\nconst inset = {\n  ...basePadding,\n  ...negativePadding,\n  auto: 'auto',\n  full: '100%'\n};\n\nexport type Inset = keyof typeof inset;\n\nconst translate = {\n  ...basePadding,\n  ...negativePadding,\n  full: '100%'\n} as const;\n\nconst borderWidth = {\n  0: '0px',\n  1: getToken('border-width-100'),\n  2: getToken('border-width-200'),\n  4: getToken('border-width-400')\n};\n\nconst radius = {\n  none: getToken('corner-radius-none'), // 0px\n  sm: pxToRem(getToken('corner-radius-small-default')), // 4px\n  default: pxToRem(getToken('corner-radius-medium-default')), // 8px\n  lg: pxToRem(getToken('corner-radius-large-default')), // 10px\n  xl: pxToRem(getToken('corner-radius-extra-large-default')), // 16px\n  full: '9999px',\n  pill: 'calc(self(height, self(minHeight, 9999px)) / 2)'\n};\n\ntype GridTrack = 'none' | 'subgrid' | (string & {}) | readonly GridTrackSize[];\ntype GridTrackSize = 'auto' | 'min-content' | 'max-content' | `${number}fr` | `minmax(${string}, ${string})` | keyof typeof baseSpacing | (string & {});\n\nlet gridTrack = (value: GridTrack) => {\n  if (typeof value === 'string') {\n    return value;\n  }\n  return value.map(v => gridTrackSize(v)).join(' ');\n};\n\nlet gridTrackSize = (value: GridTrackSize) => {\n  return value in baseSpacing ? baseSpacing[value] : value;\n};\n\nconst transitionProperty = {\n  // var(--gp) is generated by the backgroundImage property when setting a gradient.\n  // It includes a list of all of the custom properties used for each color stop.\n  default: 'color, background-color, var(--gp, color), border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, translate, scale, rotate, filter, backdrop-filter',\n  colors: 'color, background-color, var(--gp, color), border-color, text-decoration-color, fill, stroke',\n  opacity: 'opacity',\n  shadow: 'box-shadow',\n  transform: 'transform, translate, scale, rotate',\n  all: 'all',\n  none: 'none'\n};\n\n// TODO\nconst timingFunction = {\n  default: 'cubic-bezier(0.45, 0, 0.4, 1)',\n  linear: 'linear',\n  in: 'cubic-bezier(0.5, 0, 1, 1)',\n  out: 'cubic-bezier(0, 0, 0.40, 1)',\n  'in-out': 'cubic-bezier(0.45, 0, 0.4, 1)'\n};\n\nlet durationValue = (value: number | string) => typeof value === 'number' ? value + 'ms' : value;\n\nconst fontWeightBase = {\n  light: '300',\n  normal: '400',\n  medium: '500',\n  bold: '700',\n  'extra-bold': '800',\n  black: '900'\n} as const;\n\nconst fontWeight = {\n  ...fontWeightBase,\n  heading: {\n    default: fontWeightBase[getToken('heading-sans-serif-font-weight') as keyof typeof fontWeightBase],\n    ':lang(ja, ko, zh, zh-Hant, zh-Hans)': fontWeightBase[getToken('heading-cjk-font-weight') as keyof typeof fontWeightBase]\n  },\n  title: {\n    default: fontWeightBase[getToken('title-sans-serif-font-weight') as keyof typeof fontWeightBase],\n    ':lang(ja, ko, zh, zh-Hant, zh-Hans)': fontWeightBase[getToken('title-cjk-font-weight') as keyof typeof fontWeightBase]\n  },\n  detail: {\n    default: fontWeightBase[getToken('detail-sans-serif-font-weight') as keyof typeof fontWeightBase],\n    ':lang(ja, ko, zh, zh-Hant, zh-Hans)': fontWeightBase[getToken('detail-cjk-font-weight') as keyof typeof fontWeightBase]\n  }\n} as const;\n\nconst i18nFonts = {\n  ':lang(ar)': 'myriad-arabic, ui-sans-serif, system-ui, sans-serif',\n  ':lang(he)': 'myriad-hebrew, ui-sans-serif, system-ui, sans-serif',\n  ':lang(ja)': \"adobe-clean-han-japanese, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Osaka, YuGothic, 'Yu Gothic', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif\",\n  ':lang(ko)': \"adobe-clean-han-korean, source-han-korean, 'Malgun Gothic', 'Apple Gothic', sans-serif\",\n  ':lang(zh)': \"adobe-clean-han-traditional, source-han-traditional, 'MingLiu', 'Heiti TC Light', sans-serif\",\n  // TODO: are these fallbacks supposed to be different than above?\n  ':lang(zh-hant)': \"adobe-clean-han-traditional, source-han-traditional, 'MingLiu', 'Microsoft JhengHei UI', 'Microsoft JhengHei', 'Heiti TC Light', sans-serif\",\n  ':lang(zh-Hans, zh-CN, zh-SG)': \"adobe-clean-han-simplified-c, source-han-simplified-c, 'SimSun', 'Heiti SC Light', sans-serif\"\n} as const;\n\nconst fontSize = {\n  // The default font size scale is for use within UI components.\n  'ui-xs': fontSizeToken('font-size-50'),\n  'ui-sm': fontSizeToken('font-size-75'),\n  ui: fontSizeToken('font-size-100'),\n  'ui-lg': fontSizeToken('font-size-200'),\n  'ui-xl': fontSizeToken('font-size-300'),\n  'ui-2xl': fontSizeToken('font-size-400'),\n  'ui-3xl': fontSizeToken('font-size-500'),\n\n  'heading-2xs': fontSizeToken('heading-size-xxs'),\n  'heading-xs': fontSizeToken('heading-size-xs'),\n  'heading-sm': fontSizeToken('heading-size-s'),\n  heading: fontSizeToken('heading-size-m'),\n  'heading-lg': fontSizeToken('heading-size-l'),\n  'heading-xl': fontSizeToken('heading-size-xl'),\n  'heading-2xl': fontSizeToken('heading-size-xxl'),\n  'heading-3xl': fontSizeToken('heading-size-xxxl'),\n\n  'title-xs': fontSizeToken('title-size-xs'),\n  'title-sm': fontSizeToken('title-size-s'),\n  title: fontSizeToken('title-size-m'),\n  'title-lg': fontSizeToken('title-size-l'),\n  'title-xl': fontSizeToken('title-size-xl'),\n  'title-2xl': fontSizeToken('title-size-xxl'),\n  'title-3xl': fontSizeToken('title-size-xxxl'),\n\n  // Body is for large blocks of text, e.g. paragraphs, not in UI components.\n  'body-2xs': fontSizeToken('font-size-50'), // TODO: seems like there is no token for this\n  'body-xs': fontSizeToken('body-size-xs'),\n  'body-sm': fontSizeToken('body-size-s'),\n  body: fontSizeToken('body-size-m'),\n  'body-lg': fontSizeToken('body-size-l'),\n  'body-xl': fontSizeToken('body-size-xl'),\n  'body-2xl': fontSizeToken('body-size-xxl'),\n  'body-3xl': fontSizeToken('body-size-xxxl'),\n\n  'detail-sm': fontSizeToken('detail-size-s'),\n  detail: fontSizeToken('detail-size-m'),\n  'detail-lg': fontSizeToken('detail-size-l'),\n  'detail-xl': fontSizeToken('detail-size-xl'),\n\n  'code-xs': fontSizeToken('code-size-xs'),\n  'code-sm': fontSizeToken('code-size-s'),\n  code: fontSizeToken('code-size-m'),\n  'code-lg': fontSizeToken('code-size-l'),\n  'code-xl': fontSizeToken('code-size-xl')\n} as const;\n\nexport const style = createTheme({\n  properties: {\n    // colors\n    color: new SpectrumColorProperty('color', {\n      ...baseColors,\n      accent: colorToken('accent-content-color-default'),\n      neutral: colorToken('neutral-content-color-default'),\n      'neutral-subdued': colorToken('neutral-subdued-content-color-default'),\n      negative: colorToken('negative-content-color-default'),\n      disabled: colorToken('disabled-content-color'),\n      heading: colorToken('heading-color'),\n      title: colorToken('title-color'),\n      body: colorToken('body-color'),\n      detail: colorToken('detail-color'),\n      code: colorToken('code-color'),\n      auto: autoStaticColor('self(backgroundColor, var(--s2-container-bg))')\n    }),\n    backgroundColor: new SpectrumColorProperty('backgroundColor', {\n      ...baseColors,\n      accent: weirdColorToken('accent-background-color-default'),\n      'accent-subtle': weirdColorToken('accent-subtle-background-color-default'),\n      neutral: colorToken('neutral-background-color-default'),\n      'neutral-subdued': weirdColorToken('neutral-subdued-background-color-default'),\n      'neutral-subtle': weirdColorToken('neutral-subtle-background-color-default'),\n      negative: weirdColorToken('negative-background-color-default'),\n      'negative-subtle': weirdColorToken('negative-subtle-background-color-default'),\n      informative: weirdColorToken('informative-background-color-default'),\n      'informative-subtle': weirdColorToken('informative-subtle-background-color-default'),\n      positive: weirdColorToken('positive-background-color-default'),\n      'positive-subtle': weirdColorToken('positive-subtle-background-color-default'),\n      notice: weirdColorToken('notice-background-color-default'),\n      'notice-subtle': weirdColorToken('notice-subtle-background-color-default'),\n      gray: weirdColorToken('gray-background-color-default'),\n      'gray-subtle': weirdColorToken('gray-subtle-background-color-default'),\n      red: weirdColorToken('red-background-color-default'),\n      'red-subtle': weirdColorToken('red-subtle-background-color-default'),\n      orange: weirdColorToken('orange-background-color-default'),\n      'orange-subtle': weirdColorToken('orange-subtle-background-color-default'),\n      yellow: weirdColorToken('yellow-background-color-default'),\n      'yellow-subtle': weirdColorToken('yellow-subtle-background-color-default'),\n      chartreuse: weirdColorToken('chartreuse-background-color-default'),\n      'chartreuse-subtle': weirdColorToken('chartreuse-subtle-background-color-default'),\n      celery: weirdColorToken('celery-background-color-default'),\n      'celery-subtle': weirdColorToken('celery-subtle-background-color-default'),\n      green: weirdColorToken('green-background-color-default'),\n      'green-subtle': weirdColorToken('green-subtle-background-color-default'),\n      seafoam: weirdColorToken('seafoam-background-color-default'),\n      'seafoam-subtle': weirdColorToken('seafoam-subtle-background-color-default'),\n      cyan: weirdColorToken('cyan-background-color-default'),\n      'cyan-subtle': weirdColorToken('cyan-subtle-background-color-default'),\n      blue: weirdColorToken('blue-background-color-default'),\n      'blue-subtle': weirdColorToken('blue-subtle-background-color-default'),\n      indigo: weirdColorToken('indigo-background-color-default'),\n      'indigo-subtle': weirdColorToken('indigo-subtle-background-color-default'),\n      purple: weirdColorToken('purple-background-color-default'),\n      'purple-subtle': weirdColorToken('purple-subtle-background-color-default'),\n      fuchsia: weirdColorToken('fuchsia-background-color-default'),\n      'fuchsia-subtle': weirdColorToken('fuchsia-subtle-background-color-default'),\n      magenta: weirdColorToken('magenta-background-color-default'),\n      'magenta-subtle': weirdColorToken('magenta-subtle-background-color-default'),\n      pink: weirdColorToken('pink-background-color-default'),\n      'pink-subtle': weirdColorToken('pink-subtle-background-color-default'),\n      turquoise: weirdColorToken('turquoise-background-color-default'),\n      'turquoise-subtle': weirdColorToken('turquoise-subtle-background-color-default'),\n      cinnamon: weirdColorToken('cinnamon-background-color-default'),\n      'cinnamon-subtle': weirdColorToken('cinnamon-subtle-background-color-default'),\n      brown: weirdColorToken('brown-background-color-default'),\n      'brown-subtle': weirdColorToken('brown-subtle-background-color-default'),\n      silver: weirdColorToken('silver-background-color-default'),\n      'silver-subtle': weirdColorToken('silver-subtle-background-color-default'),\n      disabled: colorToken('disabled-background-color'),\n      base: colorToken('background-base-color'),\n      'layer-1': colorToken('background-layer-1-color'),\n      'layer-2': weirdColorToken('background-layer-2-color'),\n      pasteboard: weirdColorToken('background-pasteboard-color'),\n      elevated: weirdColorToken('background-elevated-color')\n    }),\n    borderColor: new SpectrumColorProperty('borderColor', {\n      ...baseColors,\n      negative: colorToken('negative-border-color-default'),\n      disabled: colorToken('disabled-border-color')\n    }),\n    outlineColor: new SpectrumColorProperty('outlineColor', {\n      ...baseColors,\n      'focus-ring': {\n        ...colorToken('focus-indicator-color'),\n        forcedColors: 'Highlight'\n      }\n    }),\n    fill: new SpectrumColorProperty('fill', {\n      none: 'none',\n      currentColor: 'currentColor',\n      accent: weirdColorToken('accent-visual-color'),\n      neutral: weirdColorToken('neutral-visual-color'),\n      negative: weirdColorToken('negative-visual-color'),\n      informative: weirdColorToken('informative-visual-color'),\n      positive: weirdColorToken('positive-visual-color'),\n      notice: weirdColorToken('notice-visual-color'),\n      gray: weirdColorToken('gray-visual-color'),\n      red: weirdColorToken('red-visual-color'),\n      orange: weirdColorToken('orange-visual-color'),\n      yellow: weirdColorToken('yellow-visual-color'),\n      chartreuse: weirdColorToken('chartreuse-visual-color'),\n      celery: weirdColorToken('celery-visual-color'),\n      green: weirdColorToken('green-visual-color'),\n      seafoam: weirdColorToken('seafoam-visual-color'),\n      cyan: weirdColorToken('cyan-visual-color'),\n      blue: weirdColorToken('blue-visual-color'),\n      indigo: weirdColorToken('indigo-visual-color'),\n      purple: weirdColorToken('purple-visual-color'),\n      fuchsia: weirdColorToken('fuchsia-visual-color'),\n      magenta: weirdColorToken('magenta-visual-color'),\n      pink: weirdColorToken('pink-visual-color'),\n      turquoise: weirdColorToken('turquoise-visual-color'),\n      cinnamon: weirdColorToken('cinnamon-visual-color'),\n      brown: weirdColorToken('brown-visual-color'),\n      silver: weirdColorToken('silver-visual-color'),\n      ...baseColors\n    }),\n    stroke: new SpectrumColorProperty('stroke', {\n      none: 'none',\n      currentColor: 'currentColor',\n      ...baseColors\n    }),\n\n    // dimensions\n    borderSpacing: baseSpacing, // TODO: separate x and y\n    flexBasis: createSpectrumSizingProperty('flexBasis', {\n      auto: 'auto',\n      full: '100%'\n    }),\n    rowGap: spacing,\n    columnGap: spacing,\n    height: createSpectrumSizingProperty('height', height),\n    width: createSpectrumSizingProperty('width', width),\n    containIntrinsicWidth: createSpectrumSizingProperty('containIntrinsicWidth', width),\n    containIntrinsicHeight: createSpectrumSizingProperty('containIntrinsicHeight', height),\n    minHeight: createSpectrumSizingProperty('minHeight', height),\n    maxHeight: createSpectrumSizingProperty('maxHeight', {\n      ...height,\n      none: 'none'\n    }),\n    minWidth: createSpectrumSizingProperty('minWidth', width),\n    maxWidth: createSpectrumSizingProperty('maxWidth', {\n      ...width,\n      none: 'none'\n    }),\n    borderStartWidth: new MappedProperty('borderInlineStartWidth', borderWidth),\n    borderEndWidth: new MappedProperty('borderInlineEndWidth', borderWidth),\n    borderTopWidth: borderWidth,\n    borderBottomWidth: borderWidth,\n    borderStyle: ['solid', 'dashed', 'dotted', 'double', 'hidden', 'none'] as const,\n    strokeWidth: {\n      0: '0',\n      1: '1',\n      2: '2'\n    },\n    marginStart: new PercentageProperty('marginInlineStart', margin),\n    marginEnd: new PercentageProperty('marginInlineEnd', margin),\n    marginTop: new PercentageProperty('marginTop', margin),\n    marginBottom: new PercentageProperty('marginBottom', margin),\n    paddingStart: new PercentageProperty('paddingInlineStart', padding),\n    paddingEnd: new PercentageProperty('paddingInlineEnd', padding),\n    paddingTop: new PercentageProperty('paddingTop', padding),\n    paddingBottom: new PercentageProperty('paddingBottom', padding),\n    scrollMarginStart: new MappedProperty('scrollMarginInlineStart', baseSpacing),\n    scrollMarginEnd: new MappedProperty('scrollMarginInlineEnd', baseSpacing),\n    scrollMarginTop: baseSpacing,\n    scrollMarginBottom: baseSpacing,\n    // Using rems instead of px here (unlike regular padding) because this often needs to match the height of something.\n    scrollPaddingStart: new MappedProperty('scrollPaddingInlineStart', baseSpacing),\n    scrollPaddingEnd: new MappedProperty('scrollPaddingInlineEnd', baseSpacing),\n    scrollPaddingTop: baseSpacing,\n    scrollPaddingBottom: baseSpacing,\n    textIndent: new PercentageProperty('textIndent', baseSpacing),\n    translateX: new ExpandedProperty(['--translateX', 'translate'], value => ({\n      '--translateX': String(value),\n      translate: 'var(--translateX, 0) var(--translateY, 0)'\n    }), new PercentageProperty('--translateX', translate)),\n    translateY: new ExpandedProperty(['--translateY', 'translate'], value => ({\n      '--translateY': String(value),\n      translate: 'var(--translateX, 0) var(--translateY, 0)'\n    }), new PercentageProperty('--translateY', translate)),\n    rotate: new ArbitraryProperty('rotate', (value: number | `${number}deg` | `${number}rad` | `${number}grad` | `${number}turn`) => typeof value === 'number' ? `${value}deg` : value),\n    scaleX: new ExpandedProperty<number | `${number}%`>(['--scaleX', 'scale'], value => ({\n      '--scaleX': String(value),\n      scale: 'var(--scaleX, 1) var(--scaleY, 1)'\n    })),\n    scaleY: new ExpandedProperty<number | `${number}%`>(['--scaleY', 'scale'], value => ({\n      '--scaleY': String(value),\n      scale: 'var(--scaleX, 1) var(--scaleY, 1)'\n    })),\n    transform: new ArbitraryProperty<string>('transform'),\n    position: ['absolute', 'fixed', 'relative', 'sticky', 'static'] as const,\n    insetStart: new PercentageProperty('insetInlineStart', inset),\n    insetEnd: new PercentageProperty('insetInlineEnd', inset),\n    top: new PercentageProperty('top', inset),\n    left: new PercentageProperty('left', inset),\n    bottom: new PercentageProperty('bottom', inset),\n    right: new PercentageProperty('right', inset),\n    aspectRatio: new ArbitraryProperty<'auto' | 'square' | 'video' | `${number}/${number}`>('aspectRatio', value => {\n      if (value === 'square') {\n        return '1/1';\n      }\n\n      if (value === 'video') {\n        return '16/9';\n      }\n\n      return value;\n    }),\n\n    // text\n    fontFamily: {\n      sans: {\n        default: 'adobe-clean-variable, adobe-clean, ui-sans-serif, system-ui, sans-serif',\n        ...i18nFonts\n      },\n      serif: {\n        default: 'adobe-clean-serif, \"Source Serif\", Georgia, serif',\n        ...i18nFonts\n      },\n      code: 'source-code-pro, \"Source Code Pro\", Monaco, monospace'\n    },\n    fontSize,\n    fontWeight: new ExpandedProperty<keyof typeof fontWeight>(['fontWeight', 'fontVariationSettings', 'fontSynthesisWeight'], (value) => {\n      return {\n        // Set font-variation-settings in addition to font-weight to work around typekit issue.\n        fontVariationSettings: value === 'inherit' ? 'inherit' : `\"wght\" ${value}`,\n        fontWeight: value as any,\n        fontSynthesisWeight: 'none'\n      };\n    }, fontWeight),\n    lineHeight: {\n      // See https://spectrum.corp.adobe.com/page/typography/#Line-height\n      ui: {\n        default: getToken('line-height-100'),\n        ':lang(ja, ko, zh, zh-Hant, zh-Hans)': getToken('line-height-200')\n      },\n      heading: {\n        default: getToken('heading-line-height'),\n        ':lang(ja, ko, zh, zh-Hant, zh-Hans)': getToken('heading-cjk-line-height')\n      },\n      title: {\n        default: getToken('title-line-height'),\n        ':lang(ja, ko, zh, zh-Hant, zh-Hans)': getToken('title-cjk-line-height')\n      },\n      body: {\n        default: getToken('body-line-height'),\n        ':lang(ja, ko, zh, zh-Hant, zh-Hans)': getToken('body-cjk-line-height')\n      },\n      detail: {\n        default: getToken('detail-line-height'),\n        ':lang(ja, ko, zh, zh-Hant, zh-Hans)': getToken('detail-cjk-line-height')\n      },\n      code: {\n        default: getToken('code-line-height'),\n        ':lang(ja, ko, zh, zh-Hant, zh-Hans)': getToken('code-cjk-line-height')\n      }\n    },\n    listStyleType: ['none', 'disc', 'decimal'] as const,\n    listStylePosition: ['inside', 'outside'] as const,\n    textTransform: ['uppercase', 'lowercase', 'capitalize', 'none'] as const,\n    textAlign: ['start', 'center', 'end', 'justify'] as const,\n    verticalAlign: ['baseline', 'top', 'middle', 'bottom', 'text-top', 'text-bottom', 'sub', 'super'] as const,\n    textDecoration: new ExpandedProperty<'underline' | 'overline' | 'line-through' | 'none'>(['textDecoration', 'textUnderlineOffset'], (value) => ({\n      textDecoration: value === 'none' ? 'none' : `${value} ${getToken('text-underline-thickness')}`,\n      textUnderlineOffset: value === 'underline' ? getToken('text-underline-gap') : undefined\n    })),\n    textOverflow: ['ellipsis', 'clip'] as const,\n    lineClamp: new ExpandedProperty<number>(['overflow', 'display', '-webkit-box-orient', '-webkit-line-clamp'], (value) => ({\n      overflow: 'hidden',\n      display: '-webkit-box',\n      '-webkit-box-orient': 'vertical',\n      '-webkit-line-clamp': String(value)\n    })),\n    hyphens: ['none', 'manual', 'auto'] as const,\n    whiteSpace: ['normal', 'nowrap', 'pre', 'pre-line', 'pre-wrap', 'break-spaces'] as const,\n    textWrap: ['wrap', 'nowrap', 'balance', 'pretty'] as const,\n    wordBreak: ['normal', 'break-all', 'keep-all'] as const, // also overflowWrap??\n    boxDecorationBreak: ['slice', 'clone'] as const,\n\n    // effects\n    boxShadow: {\n      emphasized: `${getToken('drop-shadow-emphasized-default-x')} ${getToken('drop-shadow-emphasized-default-y')} ${getToken('drop-shadow-emphasized-default-blur')} ${rawColorToken('drop-shadow-emphasized-default-color')}`,\n      elevated: `${getToken('drop-shadow-elevated-x')} ${getToken('drop-shadow-elevated-y')} ${getToken('drop-shadow-elevated-blur')} ${rawColorToken('drop-shadow-elevated-color')}`,\n      dragged: `${getToken('drop-shadow-dragged-x')} ${getToken('drop-shadow-dragged-y')} ${getToken('drop-shadow-dragged-blur')} ${rawColorToken('drop-shadow-dragged-color')}`,\n      none: 'none'\n    },\n    filter: {\n      emphasized: `drop-shadow(${getToken('drop-shadow-emphasized-default-x')} ${getToken('drop-shadow-emphasized-default-y')} ${getToken('drop-shadow-emphasized-default-blur')} ${rawColorToken('drop-shadow-emphasized-default-color')})`,\n      elevated: `drop-shadow(${getToken('drop-shadow-elevated-x')} ${getToken('drop-shadow-elevated-y')} ${getToken('drop-shadow-elevated-blur')} ${rawColorToken('drop-shadow-elevated-color')})`,\n      dragged: `drop-shadow${getToken('drop-shadow-dragged-x')} ${getToken('drop-shadow-dragged-y')} ${getToken('drop-shadow-dragged-blur')} ${rawColorToken('drop-shadow-dragged-color')}`,\n      none: 'none'\n    },\n    borderTopStartRadius: new MappedProperty('borderStartStartRadius', radius),\n    borderTopEndRadius: new MappedProperty('borderStartEndRadius', radius),\n    borderBottomStartRadius: new MappedProperty('borderEndStartRadius', radius),\n    borderBottomEndRadius: new MappedProperty('borderEndEndRadius', radius),\n    forcedColorAdjust: ['auto', 'none'] as const,\n    colorScheme: ['light', 'dark', 'light dark'] as const,\n    backgroundImage: new ExpandedProperty<string | [LinearGradient]>(['backgroundImage', '--g0', '--g1', '--g2', '--gp'], (value) => {\n      if (typeof value === 'string') {\n        return {backgroundImage: value};\n      } else if (Array.isArray(value) && value[0]?.type === 'linear-gradient') {\n        let values: CSSProperties = {\n          backgroundImage: `linear-gradient(${value[0].angle}, ${value[0].stops.map(([, stop], i) => `var(--g${i}) ${stop}%`)})`\n        };\n\n        // Create a CSS var for each color stop so the gradient can be transitioned.\n        // These are registered via @property in the `linearGradient` macro.\n        let properties: string[] = [];\n        value[0].stops.forEach(([colorValue], i) => {\n          properties.push(`--g${i}`);\n          values[`--g${i}`] = color(colorValue);\n        });\n\n        // This is used by transition-property so we automatically transition all of the color stops.\n        values['--gp'] = properties.join(', ');\n        return values;\n      } else {\n        throw new Error('Unexpected backgroundImage value: ' + JSON.stringify(value));\n      }\n    }),\n    // TODO: do we need separate x and y properties?\n    backgroundPosition: ['bottom', 'center', 'left', 'left bottom', 'left top', 'right', 'right bottom', 'right top', 'top'] as const,\n    backgroundSize: ['auto', 'cover', 'contain'] as const,\n    backgroundAttachment: ['fixed', 'local', 'scroll'] as const,\n    backgroundClip: ['border-box', 'padding-box', 'content-box', 'text'] as const,\n    backgroundRepeat: ['repeat', 'no-repeat', 'repeat-x', 'repeat-y', 'round', 'space'] as const,\n    backgroundOrigin: ['border-box', 'padding-box', 'content-box'] as const,\n    backgroundBlendMode: ['normal', 'multiply', 'screen', 'overlay', 'darken', 'lighten', 'color-dodge', 'color-burn', 'hard-light', 'soft-light', 'difference', 'exclusion', 'hue', 'saturation', 'color', 'luminosity'] as const,\n    mixBlendMode: ['normal', 'multiply', 'screen', 'overlay', 'darken', 'lighten', 'color-dodge', 'color-burn', 'hard-light', 'soft-light', 'difference', 'exclusion', 'hue', 'saturation', 'color', 'luminosity', 'plus-darker', 'plus-lighter'] as const,\n    opacity: new ArbitraryProperty<number>('opacity'),\n\n    outlineStyle: ['none', 'solid', 'dashed', 'dotted', 'double', 'inset'] as const,\n    outlineOffset: new ArbitraryProperty<number>('outlineOffset', v => `${v}px`),\n    outlineWidth: borderWidth,\n\n    transition: new MappedProperty('transitionProperty', transitionProperty),\n    transitionDelay: new ArbitraryProperty('transitionDelay', durationValue),\n    transitionDuration: new ArbitraryProperty('transitionDuration', durationValue),\n    transitionTimingFunction: timingFunction,\n    animation: new ArbitraryProperty<string>('animationName'),\n    animationDuration: new ArbitraryProperty('animationDuration', durationValue),\n    animationDelay: new ArbitraryProperty('animationDelay', durationValue),\n    animationDirection: ['normal', 'reverse', 'alternate', 'alternate-reverse'] as const,\n    animationFillMode: ['none', 'forwards', 'backwards', 'both'] as const,\n    animationIterationCount: new ArbitraryProperty<number | string>('animationIterationCount'),\n    animationTimingFunction: timingFunction,\n\n    // layout\n    display: ['block', 'inline-block', 'inline', 'flex', 'inline-flex', 'grid', 'inline-grid', 'contents', 'list-item', 'none'] as const, // tables?\n    alignContent: ['normal', 'center', 'start', 'end', 'space-between', 'space-around', 'space-evenly', 'baseline', 'stretch'] as const,\n    alignItems: ['start', 'end', 'center', 'baseline', 'stretch'] as const,\n    justifyContent: ['normal', 'start', 'end', 'center', 'space-between', 'space-around', 'space-evenly', 'stretch'] as const,\n    justifyItems: ['start', 'end', 'center', 'stretch'] as const,\n    alignSelf: ['auto', 'start', 'end', 'center', 'stretch', 'baseline'] as const,\n    justifySelf: ['auto', 'start', 'end', 'center', 'stretch'] as const,\n    flexDirection: ['row', 'column', 'row-reverse', 'column-reverse'] as const,\n    flexWrap: ['wrap', 'wrap-reverse', 'nowrap'] as const,\n    flexShrink: new ArbitraryProperty<CSS.Property.FlexShrink>('flexShrink'),\n    flexGrow: new ArbitraryProperty<CSS.Property.FlexGrow>('flexGrow'),\n    gridColumnStart: new ArbitraryProperty<CSS.Property.GridColumnStart>('gridColumnStart'),\n    gridColumnEnd: new ArbitraryProperty<CSS.Property.GridColumnEnd>('gridColumnEnd'),\n    gridRowStart: new ArbitraryProperty<CSS.Property.GridRowStart>('gridRowStart'),\n    gridRowEnd: new ArbitraryProperty<CSS.Property.GridRowEnd>('gridRowEnd'),\n    gridAutoFlow: ['row', 'column', 'dense', 'row dense', 'column dense'] as const,\n    gridAutoRows: new ArbitraryProperty('gridAutoRows', gridTrackSize),\n    gridAutoColumns: new ArbitraryProperty('gridAutoColumns', gridTrackSize),\n    gridTemplateColumns: new ArbitraryProperty('gridTemplateColumns', gridTrack),\n    gridTemplateRows: new ArbitraryProperty('gridTemplateRows', gridTrack),\n    gridTemplateAreas: new ArbitraryProperty('gridTemplateAreas', (value: readonly string[]) => value.map(v => `\"${v}\"`).join('')),\n    float: ['inline-start', 'inline-end', 'right', 'left', 'none'] as const,\n    clear: ['inline-start', 'inline-end', 'left', 'right', 'both', 'none'] as const,\n    contain: ['none', 'strict', 'content', 'size', 'inline-size', 'layout', 'style', 'paint'] as const,\n    boxSizing: ['border-box', 'content-box'] as const,\n    tableLayout: ['auto', 'fixed'] as const,\n    captionSide: ['top', 'bottom'] as const,\n    borderCollapse: ['collapse', 'separate'] as const,\n    breakBefore: ['auto', 'avoid', 'all', 'avoid-page', 'page', 'left', 'right', 'column'] as const,\n    breakInside: ['auto', 'avoid', 'avoid-page', 'avoid-column'] as const,\n    breakAfter: ['auto', 'avoid', 'all', 'avoid-page', 'page', 'left', 'right', 'column'] as const,\n    overflowX: ['auto', 'hidden', 'clip', 'visible', 'scroll'] as const,\n    overflowY: ['auto', 'hidden', 'clip', 'visible', 'scroll'] as const,\n    overscrollBehaviorX: ['auto', 'contain', 'none'] as const,\n    overscrollBehaviorY: ['auto', 'contain', 'none'] as const,\n    scrollBehavior: ['auto', 'smooth'] as const,\n    order: new ArbitraryProperty<number>('order'),\n\n    pointerEvents: ['none', 'auto'] as const,\n    touchAction: ['auto', 'none', 'pan-x', 'pan-y', 'manipulation', 'pinch-zoom'] as const,\n    userSelect: ['none', 'text', 'all', 'auto'] as const,\n    visibility: ['visible', 'hidden', 'collapse'] as const,\n    isolation: ['isolate', 'auto'] as const,\n    transformOrigin: ['center', 'top', 'top right', 'right', 'bottom right', 'bottom', 'bottom left', 'left', 'top right'] as const,\n    cursor: ['auto', 'default', 'pointer', 'wait', 'text', 'move', 'help', 'not-allowed', 'none', 'context-menu', 'progress', 'cell', 'crosshair', 'vertical-text', 'alias', 'copy', 'no-drop', 'grab', 'grabbing', 'all-scroll', 'col-resize', 'row-resize', 'n-resize', 'e-resize', 's-resize', 'w-resize', 'ne-resize', 'nw-resize', 'se-resize', 'ew-resize', 'ns-resize', 'nesw-resize', 'nwse-resize', 'zoom-in', 'zoom-out'] as const,\n    resize: ['none', 'vertical', 'horizontal', 'both'] as const,\n    scrollSnapType: ['x', 'y', 'both', 'x mandatory', 'y mandatory', 'both mandatory'] as const,\n    scrollSnapAlign: ['start', 'end', 'center', 'none'] as const,\n    scrollSnapStop: ['normal', 'always'] as const,\n    appearance: ['none', 'auto'] as const,\n    objectFit: ['contain', 'cover', 'fill', 'none', 'scale-down'] as const,\n    objectPosition: ['bottom', 'center', 'left', 'left bottom', 'left top', 'right', 'right bottom', 'right top', 'top'] as const,\n    willChange: ['auto', 'scroll-position', 'contents', 'transform'] as const,\n    zIndex: new ArbitraryProperty<number>('zIndex'),\n    // eslint-disable-next-line @typescript-eslint/no-unused-vars\n    disableTapHighlight: new ArbitraryProperty('-webkit-tap-highlight-color', (_value: true) => 'rgba(0,0,0,0)'),\n    unicodeBidi: ['normal', 'embed', 'bidi-override', 'isolate', 'isolate-override', 'plaintext'] as const\n  },\n  shorthands: {\n    padding: ['paddingTop', 'paddingBottom', 'paddingStart', 'paddingEnd'] as const,\n    paddingX: ['paddingStart', 'paddingEnd'] as const,\n    paddingY: ['paddingTop', 'paddingBottom'] as const,\n    margin: ['marginTop', 'marginBottom', 'marginStart', 'marginEnd'] as const,\n    marginX: ['marginStart', 'marginEnd'] as const,\n    marginY: ['marginTop', 'marginBottom'] as const,\n    scrollPadding: ['scrollPaddingTop', 'scrollPaddingBottom', 'scrollPaddingStart', 'scrollPaddingEnd'] as const,\n    scrollPaddingX: ['scrollPaddingStart', 'scrollPaddingEnd'] as const,\n    scrollPaddingY: ['scrollPaddingTop', 'scrollPaddingBottom'] as const,\n    scrollMargin: ['scrollMarginTop', 'scrollMarginBottom', 'scrollMarginStart', 'scrollMarginEnd'] as const,\n    scrollMarginX: ['scrollMarginStart', 'scrollMarginEnd'] as const,\n    scrollMarginY: ['scrollMarginTop', 'scrollMarginBottom'] as const,\n    borderWidth: ['borderTopWidth', 'borderBottomWidth', 'borderStartWidth', 'borderEndWidth'] as const,\n    borderXWidth: ['borderStartWidth', 'borderEndWidth'] as const,\n    borderYWidth: ['borderTopWidth', 'borderBottomWidth'] as const,\n    borderRadius: ['borderTopStartRadius', 'borderTopEndRadius', 'borderBottomStartRadius', 'borderBottomEndRadius'] as const,\n    borderTopRadius: ['borderTopStartRadius', 'borderTopEndRadius'] as const,\n    borderBottomRadius: ['borderBottomStartRadius', 'borderBottomEndRadius'] as const,\n    borderStartRadius: ['borderTopStartRadius', 'borderBottomStartRadius'] as const,\n    borderEndRadius: ['borderTopEndRadius', 'borderBottomEndRadius'] as const,\n    translate: ['translateX', 'translateY'] as const,\n    scale: ['scaleX', 'scaleY'] as const,\n    inset: ['top', 'bottom', 'insetStart', 'insetEnd'] as const,\n    insetX: ['insetStart', 'insetEnd'] as const,\n    insetY: ['top', 'bottom'] as const,\n    placeItems: ['alignItems', 'justifyItems'] as const,\n    placeContent: ['alignContent', 'justifyContent'] as const,\n    placeSelf: ['alignSelf', 'justifySelf'] as const,\n    gap: ['rowGap', 'columnGap'] as const,\n    size: ['width', 'height'] as const,\n    minSize: ['minWidth', 'minHeight'] as const,\n    maxSize: ['maxWidth', 'maxHeight'] as const,\n    overflow: ['overflowX', 'overflowY'] as const,\n    overscrollBehavior: ['overscrollBehaviorX', 'overscrollBehaviorY'] as const,\n    gridArea: ['gridColumnStart', 'gridColumnEnd', 'gridRowStart', 'gridRowEnd'] as const,\n    transition: (value: keyof typeof transitionProperty) => ({\n      transition: value,\n      transitionDuration: 150,\n      transitionTimingFunction: 'default'\n    }),\n    animation: (value: string) => ({\n      animation: value,\n      animationDuration: 150,\n      animationTimingFunction: 'default'\n    }),\n    // eslint-disable-next-line @typescript-eslint/no-unused-vars\n    truncate: (_value: true) => ({\n      overflowX: 'hidden',\n      overflowY: 'hidden',\n      textOverflow: 'ellipsis',\n      whiteSpace: 'nowrap'\n    }),\n    font: (value: keyof typeof fontSize) => {\n      let type = value.split('-')[0];\n      return {\n        fontFamily: type === 'code' ? 'code' : 'sans',\n        fontSize: value,\n        fontWeight: type === 'heading' || type === 'title' || type === 'detail' ? type : 'normal',\n        lineHeight: type,\n        color: type === 'ui' ? 'body' : type\n      };\n    }\n  },\n  conditions: {\n    forcedColors: '@media (forced-colors: active)',\n    // This detects touch primary devices as best as we can.\n    // Ideally we'd use (pointer: course) but browser/device support is inconsistent.\n    // Samsung Android devices claim to be mice at the hardware/OS level: (any-pointer: fine), (any-hover: hover), (hover: hover), and nothing for pointer.\n    // More details: https://www.ctrl.blog/entry/css-media-hover-samsung.html\n    // iPhone matches (any-hover: none), (hover: none), and nothing for any-pointer or pointer.\n    // If a trackpad or Apple Pencil is connected to iPad, it matches (any-pointer: fine), (any-hover: hover), (hover: none).\n    // Windows tablet matches the same as iPhone. No difference when a mouse is connected.\n    // Windows touch laptop matches same as macOS: (any-pointer: fine), (pointer: fine), (any-hover: hover), (hover: hover).\n    touch: '@media not ((hover: hover) and (pointer: fine))',\n    sm: `@media (min-width: ${pxToRem(640)})`,\n    md: `@media (min-width: ${pxToRem(768)})`,\n    lg: `@media (min-width: ${pxToRem(1024)})`,\n    xl: `@media (min-width: ${pxToRem(1280)})`,\n    '2xl': `@media (min-width: ${pxToRem(1536)})`\n  }\n});\n"],"names":[],"version":3,"file":"spectrum-theme.cjs.map","sourceRoot":"../../../../../"}