@sanity/ui 2.0.0-alpha.28 → 2.0.0-alpha.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/theme.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"theme.js","sources":["../src/theme/build/_deprecated/color/_selectable/createSelectableTones.ts","../src/theme/build/_deprecated/color/_solid/createSolidTones.ts","../src/theme/build/_deprecated/color/button/createButtonTones.ts","../src/theme/build/_deprecated/color/button/createButtonModes.ts","../src/theme/build/_deprecated/color/card/createCardStates.ts","../src/theme/build/_deprecated/color/defaults.ts","../src/theme/build/_deprecated/color/input/createInputModes.ts","../src/theme/build/_deprecated/color/muted/createMuted.ts","../src/theme/build/_deprecated/color/spot/createSpot.ts","../src/theme/build/_deprecated/color/factory.ts","../src/theme/system/color/_constants.ts","../src/theme/system/color/_helpers.ts","../src/theme/config/system.ts","../src/theme/config/tokens/parseTokenKey.ts","../src/theme/config/tokens/parseTokenValue.ts","../src/theme/config/helpers.ts","../src/theme/build/colorToken.ts","../src/theme/build/defaults/colorTokens.ts","../src/theme/build/merge.ts","../src/theme/build/resolveColorTokens.ts","../src/theme/build/buildColorTheme.ts","../src/theme/build/defaults/config.ts","../src/theme/build/defaults/fonts.ts","../src/theme/build/defaults/colorPalette.ts","../src/theme/build/lib/color-fns/blend/mix.ts","../src/theme/build/lib/color-fns/blend/multiply.ts","../src/theme/build/lib/color-fns/blend/screen.ts","../src/theme/build/lib/utils.ts","../src/theme/build/lib/color-fns/convert.ts","../src/theme/build/lib/color-fns/parse.ts","../src/theme/build/lib/color-fns/contrastRatio.ts","../src/theme/build/lib/color-fns/rgba.ts","../src/theme/build/mixThemeColor.ts","../src/theme/build/renderColorValue.ts","../src/theme/build/renderColorTheme.ts","../src/theme/build/buildTheme.ts","../src/theme/themes/studio/config.ts","../src/theme/themes/studio/fonts.ts","../src/theme/themes/studio/studioTheme.ts"],"sourcesContent":["import {\n ThemeColorBase,\n ThemeColorMuted,\n ThemeColorSelectable,\n ThemeColorSelectableStates,\n ThemeColorSolid,\n} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\n\nexport function createSelectableTones(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n solid: ThemeColorSolid,\n muted: ThemeColorMuted,\n): ThemeColorSelectable {\n return {\n default: _createSelectableStates(opts, base, dark, solid, muted, 'default'),\n primary: _createSelectableStates(opts, base, dark, solid, muted, 'primary'),\n positive: _createSelectableStates(opts, base, dark, solid, muted, 'positive'),\n caution: _createSelectableStates(opts, base, dark, solid, muted, 'caution'),\n critical: _createSelectableStates(opts, base, dark, solid, muted, 'critical'),\n }\n}\n\nfunction _createSelectableStates(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n solid: ThemeColorSolid,\n muted: ThemeColorMuted,\n tone: 'default' | 'primary' | 'positive' | 'caution' | 'critical',\n): ThemeColorSelectableStates {\n return {\n enabled: opts.selectable({\n base,\n dark,\n solid,\n muted,\n state: 'enabled',\n tone,\n }),\n hovered: opts.selectable({\n base,\n dark,\n solid,\n muted,\n state: 'hovered',\n tone,\n }),\n pressed: opts.selectable({\n base,\n dark,\n solid,\n muted,\n state: 'pressed',\n tone,\n }),\n selected: opts.selectable({\n base,\n dark,\n solid,\n muted,\n state: 'selected',\n tone,\n }),\n disabled: opts.selectable({\n base,\n dark,\n solid,\n muted,\n state: 'disabled',\n tone,\n }),\n }\n}\n","import {ThemeColorBase, ThemeColorSolid, ThemeColorName} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\n\nexport function createSolidTones(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n name: ThemeColorName,\n): ThemeColorSolid {\n return {\n default: {\n enabled: opts.solid({base, dark, tone: 'default', name, state: 'enabled'}),\n disabled: opts.solid({base, dark, tone: 'default', name, state: 'disabled'}),\n hovered: opts.solid({base, dark, tone: 'default', name, state: 'hovered'}),\n pressed: opts.solid({base, dark, tone: 'default', name, state: 'pressed'}),\n selected: opts.solid({base, dark, tone: 'default', name, state: 'selected'}),\n },\n transparent: {\n enabled: opts.solid({base, dark, tone: 'transparent', name, state: 'enabled'}),\n disabled: opts.solid({base, dark, tone: 'transparent', name, state: 'disabled'}),\n hovered: opts.solid({base, dark, tone: 'transparent', name, state: 'hovered'}),\n pressed: opts.solid({base, dark, tone: 'transparent', name, state: 'pressed'}),\n selected: opts.solid({base, dark, tone: 'transparent', name, state: 'selected'}),\n },\n primary: {\n enabled: opts.solid({base, dark, tone: 'primary', name, state: 'enabled'}),\n disabled: opts.solid({base, dark, tone: 'primary', name, state: 'disabled'}),\n hovered: opts.solid({base, dark, tone: 'primary', name, state: 'hovered'}),\n pressed: opts.solid({base, dark, tone: 'primary', name, state: 'pressed'}),\n selected: opts.solid({base, dark, tone: 'primary', name, state: 'selected'}),\n },\n positive: {\n enabled: opts.solid({base, dark, tone: 'positive', name, state: 'enabled'}),\n disabled: opts.solid({base, dark, tone: 'positive', name, state: 'disabled'}),\n hovered: opts.solid({base, dark, tone: 'positive', name, state: 'hovered'}),\n pressed: opts.solid({base, dark, tone: 'positive', name, state: 'pressed'}),\n selected: opts.solid({base, dark, tone: 'positive', name, state: 'selected'}),\n },\n caution: {\n enabled: opts.solid({base, dark, tone: 'caution', name, state: 'enabled'}),\n disabled: opts.solid({base, dark, tone: 'caution', name, state: 'disabled'}),\n hovered: opts.solid({base, dark, tone: 'caution', name, state: 'hovered'}),\n pressed: opts.solid({base, dark, tone: 'caution', name, state: 'pressed'}),\n selected: opts.solid({base, dark, tone: 'caution', name, state: 'selected'}),\n },\n critical: {\n enabled: opts.solid({base, dark, tone: 'critical', name, state: 'enabled'}),\n disabled: opts.solid({base, dark, tone: 'critical', name, state: 'disabled'}),\n hovered: opts.solid({base, dark, tone: 'critical', name, state: 'hovered'}),\n pressed: opts.solid({base, dark, tone: 'critical', name, state: 'pressed'}),\n selected: opts.solid({base, dark, tone: 'critical', name, state: 'selected'}),\n },\n }\n}\n","import {\n ThemeColorBase,\n ThemeColorButtonModeKey,\n ThemeColorButtonTones,\n ThemeColorMuted,\n ThemeColorSolid,\n} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\n\nexport function createButtonTones(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n solid: ThemeColorSolid,\n muted: ThemeColorMuted,\n mode: ThemeColorButtonModeKey,\n): ThemeColorButtonTones {\n return {\n default: opts.button({\n base,\n dark,\n solid: solid.default,\n muted: muted.default,\n mode,\n }),\n primary: opts.button({\n base,\n dark,\n solid: solid.primary,\n muted: muted.primary,\n mode,\n }),\n positive: opts.button({\n base,\n dark,\n solid: solid.positive,\n muted: muted.positive,\n mode,\n }),\n caution: opts.button({\n base,\n dark,\n solid: solid.caution,\n muted: muted.caution,\n mode,\n }),\n critical: opts.button({\n base,\n dark,\n solid: solid.critical,\n muted: muted.critical,\n mode,\n }),\n }\n}\n","import {\n ThemeColorBase,\n ThemeColorButton,\n ThemeColorMuted,\n ThemeColorSolid,\n} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\nimport {createButtonTones} from './createButtonTones'\n\nexport function createButtonModes(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n solid: ThemeColorSolid,\n muted: ThemeColorMuted,\n): ThemeColorButton {\n return {\n default: createButtonTones(opts, base, dark, solid, muted, 'default'),\n ghost: createButtonTones(opts, base, dark, solid, muted, 'ghost'),\n bleed: createButtonTones(opts, base, dark, solid, muted, 'bleed'),\n }\n}\n","import {\n ThemeColorBase,\n ThemeColorCard,\n ThemeColorMuted,\n ThemeColorSolid,\n ThemeColorName,\n} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\n\nexport function createCardStates(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n name: ThemeColorName,\n solid: ThemeColorSolid,\n muted: ThemeColorMuted,\n): ThemeColorCard {\n return {\n enabled: opts.card({\n base,\n dark,\n name,\n state: 'enabled',\n solid,\n muted,\n }),\n disabled: opts.card({\n base,\n dark,\n name,\n state: 'disabled',\n solid,\n muted,\n }),\n hovered: opts.card({\n base,\n dark,\n name,\n state: 'hovered',\n solid,\n muted,\n }),\n pressed: opts.card({\n base,\n dark,\n name,\n state: 'pressed',\n solid,\n muted,\n }),\n selected: opts.card({\n base,\n dark,\n name,\n state: 'selected',\n solid,\n muted,\n }),\n }\n}\n","import {ThemeColorBuilderOpts} from './factory'\n\nconst black = 'hsl(0, 0%, 0%)'\nconst white = 'hsl(0, 0%, 100%)'\n\nconst colors = {\n default: {\n lightest: 'hsl(0, 0%, 95%)',\n lighter: 'hsl(0, 0%, 70%)',\n light: 'hsl(0, 0%, 65%)',\n base: 'hsl(0, 0%, 50%)',\n dark: 'hsl(0, 0%, 35%)',\n darker: 'hsl(0, 0%, 20%)',\n darkest: 'hsl(0, 0%, 5%)',\n },\n transparent: {\n lightest: 'hsl(240, 100%, 95%)',\n lighter: 'hsl(240, 100%, 70%)',\n light: 'hsl(240, 100%, 65%)',\n base: 'hsl(240, 100%, 50%)',\n dark: 'hsl(240, 100%, 35%)',\n darker: 'hsl(240, 100%, 20%)',\n darkest: 'hsl(240, 100%, 5%)',\n },\n primary: {\n lightest: 'hsl(240, 100%, 95%)',\n lighter: 'hsl(240, 100%, 70%)',\n light: 'hsl(240, 100%, 65%)',\n base: 'hsl(240, 100%, 50%)',\n dark: 'hsl(240, 100%, 35%)',\n darker: 'hsl(240, 100%, 20%)',\n darkest: 'hsl(240, 100%, 5%)',\n },\n positive: {\n lightest: 'hsl(120, 100%, 95%)',\n lighter: 'hsl(120, 100%, 70%)',\n light: 'hsl(120, 100%, 65%)',\n base: 'hsl(120, 100%, 50%)',\n dark: 'hsl(120, 100%, 35%)',\n darker: 'hsl(120, 100%, 20%)',\n darkest: 'hsl(120, 100%, 5%)',\n },\n caution: {\n lightest: 'hsl(60, 100%, 95%)',\n lighter: 'hsl(60, 100%, 70%)',\n light: 'hsl(60, 100%, 65%)',\n base: 'hsl(60, 100%, 50%)',\n dark: 'hsl(60, 100%, 35%)',\n darker: 'hsl(60, 100%, 20%)',\n darkest: 'hsl(60, 100%, 5%)',\n },\n critical: {\n lightest: 'hsl(0, 100%, 95%)',\n lighter: 'hsl(0, 100%, 70%)',\n light: 'hsl(0, 100%, 65%)',\n base: 'hsl(0, 100%, 50%)',\n dark: 'hsl(0, 100%, 35%)',\n darker: 'hsl(0, 100%, 20%)',\n darkest: 'hsl(0, 100%, 5%)',\n },\n}\n\nconst spots = {\n gray: 'hsl(0, 0%, 50%)',\n red: 'hsl(0, 100%, 50%)',\n orange: 'hsl(30, 100%, 50%)',\n yellow: 'hsl(60, 100%, 50%)',\n green: 'hsl(120, 100%, 50%)',\n cyan: 'hsl(180, 100%, 50%)',\n blue: 'hsl(240, 100%, 50%)',\n purple: 'hsl(270, 100%, 50%)',\n magenta: 'hsl(300, 100%, 50%)',\n}\n\nconst tones = {\n transparent: {\n bg: [colors.transparent.darkest, colors.transparent.lightest],\n fg: [colors.transparent.lightest, colors.transparent.darkest],\n border: [colors.transparent.darker, colors.transparent.lighter],\n focusRing: [colors.transparent.base, colors.transparent.base],\n },\n primary: {\n bg: [colors.primary.darkest, colors.primary.lightest],\n fg: [colors.primary.lightest, colors.primary.darkest],\n border: [colors.primary.darker, colors.primary.lighter],\n focusRing: [colors.primary.base, colors.primary.base],\n },\n positive: {\n bg: [colors.positive.darkest, colors.positive.lightest],\n fg: [colors.positive.lightest, colors.positive.darkest],\n border: [colors.positive.darker, colors.positive.lighter],\n focusRing: [colors.positive.base, colors.positive.base],\n },\n caution: {\n bg: [colors.caution.darkest, colors.caution.lightest],\n fg: [colors.caution.lightest, colors.caution.darkest],\n border: [colors.caution.darker, colors.caution.lighter],\n focusRing: [colors.caution.base, colors.caution.base],\n },\n critical: {\n bg: [colors.critical.darkest, colors.critical.lightest],\n fg: [colors.critical.lightest, colors.critical.darkest],\n border: [colors.critical.darker, colors.critical.lighter],\n focusRing: [colors.critical.base, colors.critical.base],\n },\n}\n\nexport const defaultOpts: ThemeColorBuilderOpts = {\n base: ({dark, name}) => {\n if (name === 'default') {\n return {\n bg: dark ? black : white,\n fg: dark ? white : black,\n border: dark ? colors.default.darkest : colors.default.lightest,\n focusRing: colors.primary.base,\n shadow: {\n outline: black,\n umbra: black,\n penumbra: black,\n ambient: black,\n },\n skeleton: {\n from: dark ? white : black,\n to: dark ? white : black,\n },\n }\n }\n\n // Variants:\n // - primary\n // - positive\n // - caution\n // - critical\n return {\n bg: tones[name].bg[dark ? 0 : 1],\n fg: tones[name].fg[dark ? 0 : 1],\n border: tones[name].border[dark ? 0 : 1],\n focusRing: tones[name].focusRing[dark ? 0 : 1],\n shadow: {\n outline: black,\n umbra: black,\n penumbra: black,\n ambient: black,\n },\n skeleton: {\n from: dark ? white : black,\n to: dark ? white : black,\n },\n }\n },\n\n solid: ({base, dark, state, tone}) => {\n const color = colors[tone]\n\n if (state === 'hovered') {\n return {\n bg: dark ? color.light : color.dark,\n bg2: dark ? color.light : color.dark,\n border: dark ? color.lighter : color.darker,\n fg: dark ? color.darkest : color.lightest,\n icon: dark ? color.darkest : color.lightest,\n muted: {\n fg: black,\n },\n accent: {\n fg: black,\n },\n link: {\n fg: black,\n },\n code: {\n bg: black,\n fg: black,\n },\n skeleton: base.skeleton,\n }\n }\n\n return {\n bg: color.base,\n bg2: color.base,\n border: dark ? color.light : color.dark,\n fg: dark ? color.darkest : color.lightest,\n icon: dark ? color.darkest : color.lightest,\n muted: {\n fg: black,\n },\n accent: {\n fg: black,\n },\n link: {\n fg: black,\n },\n code: {\n bg: black,\n fg: black,\n },\n skeleton: base.skeleton,\n }\n },\n\n muted: ({base, dark, state, tone}) => {\n const color = colors[tone]\n\n if (state === 'hovered') {\n return {\n bg: dark ? color.darker : color.lighter,\n bg2: dark ? color.darker : color.lighter,\n border: dark ? color.lighter : color.darker,\n fg: dark ? color.lightest : color.darkest,\n icon: dark ? color.lightest : color.darkest,\n muted: {\n fg: black,\n },\n accent: {\n fg: black,\n },\n link: {\n fg: black,\n },\n code: {\n bg: black,\n fg: black,\n },\n skeleton: base.skeleton,\n }\n }\n\n return {\n bg: dark ? color.darkest : color.lightest,\n bg2: dark ? color.darkest : color.lightest,\n border: dark ? color.darker : color.lighter,\n fg: dark ? color.lighter : color.darker,\n icon: dark ? color.lighter : color.darker,\n muted: {\n fg: black,\n },\n accent: {\n fg: black,\n },\n link: {\n fg: black,\n },\n code: {\n bg: black,\n fg: black,\n },\n skeleton: base.skeleton,\n }\n },\n\n button: ({base, mode, muted, solid}) => {\n if (mode === 'bleed') {\n return {\n ...muted,\n enabled: {\n bg: 'transparent',\n bg2: 'transparent',\n fg: muted.enabled.fg,\n icon: muted.enabled.fg,\n border: 'transparent',\n muted: {\n fg: black,\n },\n accent: {\n fg: black,\n },\n link: {\n fg: black,\n },\n code: {\n bg: black,\n fg: black,\n },\n skeleton: base.skeleton,\n },\n hovered: {\n bg: muted.enabled.bg,\n bg2: muted.enabled.bg,\n fg: muted.hovered.fg,\n icon: muted.hovered.fg,\n border: 'transparent',\n muted: {\n fg: black,\n },\n accent: {\n fg: black,\n },\n link: {\n fg: black,\n },\n code: {\n bg: black,\n fg: black,\n },\n skeleton: base.skeleton,\n },\n }\n }\n\n if (mode === 'ghost')\n return {\n ...solid,\n enabled: muted.enabled,\n }\n\n return solid\n },\n\n card: ({base}) => {\n return {\n bg: black,\n bg2: black,\n fg: black,\n icon: black,\n border: black,\n muted: {\n fg: black,\n },\n accent: {\n fg: black,\n },\n link: {\n fg: black,\n },\n code: {\n bg: black,\n fg: black,\n },\n skeleton: base.skeleton,\n }\n },\n\n input: () => {\n return {\n bg: black,\n bg2: black,\n fg: black,\n border: black,\n placeholder: black,\n }\n },\n\n selectable: ({muted, state, tone}) => {\n return muted[tone][state]\n },\n\n spot: ({key}) => {\n return spots[key]\n },\n\n syntax: () => ({\n atrule: black,\n attrName: black,\n attrValue: black,\n attribute: black,\n boolean: black,\n builtin: black,\n cdata: black,\n char: black,\n class: black,\n className: black,\n comment: black,\n constant: black,\n deleted: black,\n doctype: black,\n entity: black,\n function: black,\n hexcode: black,\n id: black,\n important: black,\n inserted: black,\n keyword: black,\n number: black,\n operator: black,\n prolog: black,\n property: black,\n pseudoClass: black,\n pseudoElement: black,\n punctuation: black,\n regex: black,\n selector: black,\n string: black,\n symbol: black,\n tag: black,\n unit: black,\n url: black,\n variable: black,\n }),\n}\n","import {ThemeColorBase, ThemeColorInput, ThemeColorMuted, ThemeColorSolid} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\n\nexport function createInputModes(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n solid: ThemeColorSolid,\n muted: ThemeColorMuted,\n): ThemeColorInput {\n return {\n default: {\n enabled: opts.input({\n base,\n dark,\n mode: 'default',\n state: 'enabled',\n solid: solid.default,\n muted: muted.default,\n }),\n disabled: opts.input({\n base,\n dark,\n mode: 'default',\n state: 'disabled',\n solid: solid.default,\n muted: muted.default,\n }),\n hovered: opts.input({\n base,\n dark,\n mode: 'default',\n state: 'hovered',\n solid: solid.default,\n muted: muted.default,\n }),\n readOnly: opts.input({\n base,\n dark,\n mode: 'default',\n state: 'readOnly',\n solid: solid.default,\n muted: muted.default,\n }),\n },\n invalid: {\n enabled: opts.input({\n base,\n dark,\n mode: 'invalid',\n state: 'enabled',\n solid: solid.default,\n muted: muted.default,\n }),\n disabled: opts.input({\n base,\n dark,\n mode: 'invalid',\n state: 'disabled',\n solid: solid.default,\n muted: muted.default,\n }),\n hovered: opts.input({\n base,\n dark,\n mode: 'invalid',\n state: 'hovered',\n solid: solid.default,\n muted: muted.default,\n }),\n readOnly: opts.input({\n base,\n dark,\n mode: 'invalid',\n state: 'readOnly',\n solid: solid.default,\n muted: muted.default,\n }),\n },\n }\n}\n","import {ThemeColorBase, ThemeColorBaseToneKey, ThemeColorMuted} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\n\nexport function createMutedTones(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n name: ThemeColorBaseToneKey,\n): ThemeColorMuted {\n return {\n default: {\n enabled: opts.muted({base, dark, tone: 'default', name, state: 'enabled'}),\n disabled: opts.muted({base, dark, tone: 'default', name, state: 'disabled'}),\n hovered: opts.muted({base, dark, tone: 'default', name, state: 'hovered'}),\n pressed: opts.muted({base, dark, tone: 'default', name, state: 'pressed'}),\n selected: opts.muted({base, dark, tone: 'default', name, state: 'selected'}),\n },\n transparent: {\n enabled: opts.muted({base, dark, tone: 'transparent', name, state: 'enabled'}),\n disabled: opts.muted({base, dark, tone: 'transparent', name, state: 'disabled'}),\n hovered: opts.muted({base, dark, tone: 'transparent', name, state: 'hovered'}),\n pressed: opts.muted({base, dark, tone: 'transparent', name, state: 'pressed'}),\n selected: opts.muted({base, dark, tone: 'transparent', name, state: 'selected'}),\n },\n primary: {\n enabled: opts.muted({base, dark, tone: 'primary', name, state: 'enabled'}),\n disabled: opts.muted({base, dark, tone: 'primary', name, state: 'disabled'}),\n hovered: opts.muted({base, dark, tone: 'primary', name, state: 'hovered'}),\n pressed: opts.muted({base, dark, tone: 'primary', name, state: 'pressed'}),\n selected: opts.muted({base, dark, tone: 'primary', name, state: 'selected'}),\n },\n positive: {\n enabled: opts.muted({base, dark, tone: 'positive', name, state: 'enabled'}),\n disabled: opts.muted({base, dark, tone: 'positive', name, state: 'disabled'}),\n hovered: opts.muted({base, dark, tone: 'positive', name, state: 'hovered'}),\n pressed: opts.muted({base, dark, tone: 'positive', name, state: 'pressed'}),\n selected: opts.muted({base, dark, tone: 'positive', name, state: 'selected'}),\n },\n caution: {\n enabled: opts.muted({base, dark, tone: 'caution', name, state: 'enabled'}),\n disabled: opts.muted({base, dark, tone: 'caution', name, state: 'disabled'}),\n hovered: opts.muted({base, dark, tone: 'caution', name, state: 'hovered'}),\n pressed: opts.muted({base, dark, tone: 'caution', name, state: 'pressed'}),\n selected: opts.muted({base, dark, tone: 'caution', name, state: 'selected'}),\n },\n critical: {\n enabled: opts.muted({base, dark, tone: 'critical', name, state: 'enabled'}),\n disabled: opts.muted({base, dark, tone: 'critical', name, state: 'disabled'}),\n hovered: opts.muted({base, dark, tone: 'critical', name, state: 'hovered'}),\n pressed: opts.muted({base, dark, tone: 'critical', name, state: 'pressed'}),\n selected: opts.muted({base, dark, tone: 'critical', name, state: 'selected'}),\n },\n }\n}\n","import {ThemeColorBase, ThemeColorSpot} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\n\nexport function createSpot(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n): ThemeColorSpot {\n return {\n gray: opts.spot({base, dark, key: 'gray'}),\n blue: opts.spot({base, dark, key: 'blue'}),\n purple: opts.spot({base, dark, key: 'purple'}),\n magenta: opts.spot({base, dark, key: 'magenta'}),\n red: opts.spot({base, dark, key: 'red'}),\n orange: opts.spot({base, dark, key: 'orange'}),\n yellow: opts.spot({base, dark, key: 'yellow'}),\n green: opts.spot({base, dark, key: 'green'}),\n cyan: opts.spot({base, dark, key: 'cyan'}),\n }\n}\n","import {\n ThemeColorGenericState,\n ThemeColorBase,\n ThemeColorButtonModeKey,\n ThemeColorButtonStates,\n ThemeColorInputState,\n ThemeColorMuted,\n ThemeColorMutedTone,\n ThemeColorSolid,\n ThemeColorSolidTone,\n ThemeColorSyntax,\n ThemeColorName,\n ThemeColorScheme,\n ThemeColorSchemes,\n ThemeColor,\n ThemeColorToneKey,\n ThemeColorSpotKey,\n} from '../../../system'\nimport {createSelectableTones} from './_selectable/createSelectableTones'\nimport {createSolidTones} from './_solid/createSolidTones'\nimport {createButtonModes} from './button/createButtonModes'\nimport {createCardStates} from './card/createCardStates'\nimport {defaultOpts} from './defaults'\nimport {createInputModes} from './input/createInputModes'\nimport {createMutedTones} from './muted/createMuted'\nimport {createSpot} from './spot/createSpot'\n\n/**\n * @public\n * @deprecated\n */\nexport interface ThemeColorBuilderOpts {\n base: (opts: {dark: boolean; name: ThemeColorName}) => ThemeColorBase\n solid: (opts: {\n base: ThemeColorBase\n dark: boolean\n tone: ThemeColorToneKey\n name: ThemeColorName\n state: 'enabled' | 'disabled' | 'hovered' | 'pressed' | 'selected'\n }) => ThemeColorGenericState\n muted: (opts: {\n base: ThemeColorBase\n dark: boolean\n tone: ThemeColorToneKey\n name: ThemeColorName\n state: 'enabled' | 'disabled' | 'hovered' | 'pressed' | 'selected'\n }) => ThemeColorGenericState\n card: (opts: {\n base: ThemeColorBase\n dark: boolean\n muted: ThemeColorMuted\n name: ThemeColorName\n solid: ThemeColorSolid\n state: 'enabled' | 'disabled' | 'hovered' | 'pressed' | 'selected'\n }) => ThemeColorGenericState\n button: (opts: {\n dark: boolean\n mode: ThemeColorButtonModeKey\n base: ThemeColorBase\n solid: ThemeColorSolidTone\n muted: ThemeColorMutedTone\n }) => ThemeColorButtonStates\n input: (opts: {\n base: ThemeColorBase\n solid: ThemeColorSolidTone\n muted: ThemeColorMutedTone\n dark: boolean\n mode: 'default' | 'invalid'\n state: 'enabled' | 'disabled' | 'hovered' | 'readOnly'\n }) => ThemeColorInputState\n selectable: (opts: {\n dark: boolean\n base: ThemeColorBase\n solid: ThemeColorSolid\n muted: ThemeColorMuted\n state: 'enabled' | 'disabled' | 'hovered' | 'pressed' | 'selected'\n tone: 'default' | 'primary' | 'positive' | 'caution' | 'critical'\n }) => ThemeColorGenericState\n syntax: (opts: {base: ThemeColorBase; dark: boolean}) => ThemeColorSyntax\n spot: (opts: {base: ThemeColorBase; dark: boolean; key: ThemeColorSpotKey}) => string\n}\n\n/**\n * @public\n * @deprecated\n */\nexport type PartialThemeColorBuilderOpts = Partial<ThemeColorBuilderOpts>\n\n/**\n * @public\n * @deprecated Use `buildTheme` instead\n */\nexport function createColorTheme(\n partialOpts: PartialThemeColorBuilderOpts = {},\n): ThemeColorSchemes {\n const builders: ThemeColorBuilderOpts = {...defaultOpts, ...partialOpts}\n\n return {\n light: _createColorScheme(builders, false),\n dark: _createColorScheme(builders, true),\n }\n}\n\n/**\n * @internal\n */\nfunction _createColorScheme(opts: ThemeColorBuilderOpts, dark: boolean): ThemeColorScheme {\n return {\n default: _createColor(opts, dark, 'default'),\n transparent: _createColor(opts, dark, 'transparent'),\n primary: _createColor(opts, dark, 'primary'),\n positive: _createColor(opts, dark, 'positive'),\n caution: _createColor(opts, dark, 'caution'),\n critical: _createColor(opts, dark, 'critical'),\n }\n}\n\n/**\n * @internal\n */\nfunction _createColor(\n opts: ThemeColorBuilderOpts,\n dark: boolean,\n name: ThemeColorName,\n): ThemeColor {\n const base = opts.base({dark, name})\n const solid = createSolidTones(opts, base, dark, name)\n const muted = createMutedTones(opts, base, dark, name)\n\n return {\n base,\n button: createButtonModes(opts, base, dark, solid, muted),\n card: createCardStates(opts, base, dark, name, solid, muted),\n dark,\n input: createInputModes(opts, base, dark, solid, muted),\n selectable: createSelectableTones(opts, base, dark, solid, muted),\n spot: createSpot(opts, base, dark),\n syntax: opts.syntax({base, dark}),\n solid,\n muted,\n }\n}\n","import {COLOR_HUES} from '@sanity/color'\n\n/** @internal */\nexport const THEME_COLOR_BLEND_MODES = ['multiply', 'screen'] as const\n\n/** @internal */\nexport const THEME_COLOR_BASE_TONES = [\n 'transparent',\n 'default',\n 'primary', // todo: rename to `accent`\n 'positive',\n 'caution',\n 'critical',\n] as const\n\n/** @internal */\nexport const THEME_COLOR_STATE_TONES = [\n 'default',\n 'primary', // todo: rename to `accent`\n 'positive',\n 'caution',\n 'critical',\n] as const\n\n/** @internal */\nexport const THEME_COLOR_STATES = ['enabled', 'hovered', 'pressed', 'selected', 'disabled'] as const\n\n/** @internal */\nexport const THEME_COLOR_BUTTON_MODES = ['default', 'ghost', 'bleed'] as const\n\n/** @internal */\nexport const THEME_COLOR_INPUT_MODES = ['default', 'invalid'] as const\n\n/** @internal */\nexport const THEME_COLOR_INPUT_STATES = ['enabled', 'hovered', 'readOnly', 'disabled'] as const\n\n/** @internal */\nexport const THEME_COLOR_AVATAR_COLORS = COLOR_HUES\n","import {COLOR_HUES, COLOR_TINTS, ColorHueKey, ColorTintKey} from '@sanity/color'\nimport {THEME_COLOR_BLEND_MODES, THEME_COLOR_BUTTON_MODES} from './_constants'\nimport {ThemeColorBlendModeKey, ThemeColorButtonModeKey} from './_system'\n\n/** @internal */\nexport function isColorBlendModeValue(str: string): str is ThemeColorBlendModeKey {\n return THEME_COLOR_BLEND_MODES.includes(str as ThemeColorBlendModeKey)\n}\n\n/** @internal */\nexport function isColorHueKey(str: string): str is ColorHueKey {\n return COLOR_HUES.includes(str as ColorHueKey)\n}\n\n/** @internal */\nexport function isColorTintKey(str: string): str is ColorTintKey {\n return COLOR_TINTS.includes(str as ColorTintKey)\n}\n\n/** @internal */\nexport function isColorButtonMode(str: string): str is ThemeColorButtonModeKey {\n return THEME_COLOR_BUTTON_MODES.includes(str as ThemeColorButtonModeKey)\n}\n","import {ColorHueKey, ColorTintKey} from '@sanity/color'\nimport {\n THEME_COLOR_AVATAR_COLORS,\n THEME_COLOR_BASE_TONES,\n THEME_COLOR_INPUT_MODES,\n THEME_COLOR_INPUT_STATES,\n THEME_COLOR_STATES,\n THEME_COLOR_STATE_TONES,\n ThemeColorBlendModeKey,\n} from '../system'\n\nexport const COLOR_CONFIG_BASE_KEYS = [\n '_hue',\n 'bg',\n 'fg',\n 'border',\n 'focusRing',\n 'muted/fg',\n 'link/fg',\n 'code/bg',\n 'code/fg',\n 'shadow/outline',\n 'shadow/umbra',\n 'shadow/penumbra',\n 'shadow/ambient',\n 'skeleton/from',\n 'skeleton/to',\n] as const\nexport type ColorConfigBaseKey = (typeof COLOR_CONFIG_BASE_KEYS)[number]\n\nexport const COLOR_CONFIG_STATE_KEYS = [\n '_hue',\n 'bg',\n 'fg',\n 'border',\n 'focusRing',\n 'muted/fg',\n 'link/fg',\n 'code/bg',\n 'code/fg',\n 'skeleton/from',\n 'skeleton/to',\n] as const\nexport type ColorConfigStateKey = (typeof COLOR_CONFIG_STATE_KEYS)[number]\n\nexport const COLOR_CONFIG_BLEND_KEYS = ['_blend'] as const\nexport type ColorConfigBlendKey = (typeof COLOR_CONFIG_BLEND_KEYS)[number]\n\nexport type ColorConfigOpacityValue = `0` | `0.${number}` | `1`\n\nexport type ColorConfigValue =\n | `black`\n | `white`\n | `black/${ColorConfigOpacityValue}`\n | `white/${ColorConfigOpacityValue}`\n | `${ColorHueKey}`\n | `${ColorHueKey}/${ColorTintKey}`\n | `${ColorHueKey}/${ColorTintKey}/${ColorConfigOpacityValue}`\n | `${ColorTintKey}`\n | `${ColorTintKey}/${ColorConfigOpacityValue}`\n | ThemeColorBlendModeKey\n\nexport type ThemeColorTokenValue = [ColorConfigValue, ColorConfigValue]\n\nexport type ColorBlendModeTokenValue = [ThemeColorBlendModeKey, ThemeColorBlendModeKey]\n\nexport const COLOR_CONFIG_AVATAR_COLORS = ['*', ...THEME_COLOR_AVATAR_COLORS] as const\nexport type ColorConfigAvatarColor = (typeof COLOR_CONFIG_AVATAR_COLORS)[number]\n\nexport const COLOR_CONFIG_BASE_TONES = ['*', ...THEME_COLOR_BASE_TONES] as const\nexport type ColorConfigBaseTone = (typeof COLOR_CONFIG_BASE_TONES)[number]\n\nexport const COLOR_CONFIG_STATE_TONES = ['*', ...THEME_COLOR_STATE_TONES] as const\nexport type ColorConfigStateTone = (typeof COLOR_CONFIG_STATE_TONES)[number]\n\nexport const COLOR_CONFIG_STATES = ['*', ...THEME_COLOR_STATES] as const\nexport type ColorConfigState = (typeof COLOR_CONFIG_STATES)[number]\n\nexport const COLOR_CONFIG_INPUT_MODES = ['*', ...THEME_COLOR_INPUT_MODES] as const\nexport type ColorConfigInputMode = (typeof COLOR_CONFIG_INPUT_MODES)[number]\n\nexport const COLOR_CONFIG_INPUT_STATES = ['*', ...THEME_COLOR_INPUT_STATES] as const\nexport type ColorConfigInputState = (typeof COLOR_CONFIG_INPUT_STATES)[number]\n","import {isColorButtonMode} from '../../system'\nimport {\n isColorConfigBaseKey,\n isColorConfigBaseTone,\n isColorConfigBlendKey,\n isColorConfigStateKey,\n isColorConfigStateTone,\n} from '../helpers'\nimport {TokenKeyNode} from './types'\n\nexport function parseTokenKey(str: string): TokenKeyNode | undefined {\n const segments = str.split('/')\n const segment0 = segments.shift() || ''\n\n if (isColorConfigBaseTone(segment0)) {\n const key = segments.join('/')\n\n if (isColorConfigBaseKey(key)) {\n return {\n type: 'base',\n tone: segment0,\n key,\n }\n }\n\n if (isColorConfigBlendKey(key)) {\n return {\n type: 'base',\n tone: segment0,\n key,\n }\n }\n }\n\n if (segment0 === 'button') {\n const segment1 = segments.shift() || ''\n\n if (isColorConfigStateTone(segment1)) {\n const segment2 = segments.shift() || ''\n\n if (isColorButtonMode(segment2)) {\n const key = segments.join('/')\n\n if (isColorConfigStateKey(key)) {\n return {\n type: 'button',\n tone: segment1,\n mode: segment2,\n key,\n }\n }\n\n if (isColorConfigBlendKey(key)) {\n return {\n type: 'button',\n tone: segment1,\n mode: segment2,\n key,\n }\n }\n }\n }\n }\n\n return undefined\n}\n","import {isColorBlendModeValue, isColorHueKey, isColorTintKey} from '../../system'\nimport {isColorOpacityValue, isColorValue} from '../helpers'\nimport {TokenValueNode} from './types'\n\nexport function parseTokenValue(str: string): TokenValueNode | undefined {\n const segments = str.split('/')\n const segment0 = segments.shift() || ''\n\n if (isColorTintKey(segment0)) {\n const tint = segment0\n const segment1 = segments.shift() || ''\n\n if (isColorOpacityValue(segment1)) {\n const opacity = Number(segment1)\n\n return {\n type: 'color',\n tint,\n opacity,\n }\n }\n\n return {\n type: 'color',\n tint,\n }\n }\n\n if (isColorValue(segment0)) {\n const key = segment0 as 'black' | 'white'\n const segment1 = segments.shift() || ''\n\n if (isColorOpacityValue(segment1)) {\n const opacity = Number(segment1)\n\n return {\n type: 'color',\n key,\n opacity,\n }\n }\n\n return {\n type: 'color',\n key,\n }\n }\n\n if (isColorHueKey(segment0)) {\n const hue = segment0\n const segment1 = segments.shift() || ''\n\n if (isColorTintKey(segment1)) {\n const tint = segment1\n const segment2 = segments.shift() || ''\n\n if (isColorOpacityValue(segment2)) {\n const opacity = Number(segment2)\n\n return {\n type: 'color',\n key: `${hue}/${tint}`,\n hue,\n tint,\n opacity,\n }\n }\n\n return {\n type: 'color',\n key: `${hue}/${tint}`,\n hue,\n tint,\n }\n }\n\n return {\n type: 'hue',\n value: `${hue}`,\n }\n }\n\n if (isColorOpacityValue(segment0)) {\n const opacity = Number(segment0)\n\n return {\n type: 'color',\n opacity,\n }\n }\n\n if (isColorBlendModeValue(segment0)) {\n const value = segment0\n\n return {\n type: 'blendMode',\n value,\n }\n }\n\n return undefined\n}\n","import {\n COLOR_CONFIG_BASE_KEYS,\n COLOR_CONFIG_BASE_TONES,\n COLOR_CONFIG_BLEND_KEYS,\n COLOR_CONFIG_STATE_KEYS,\n COLOR_CONFIG_STATE_TONES,\n ColorConfigBaseKey,\n ColorConfigBaseTone,\n ColorConfigBlendKey,\n ColorConfigOpacityValue,\n ColorConfigStateKey,\n ColorConfigStateTone,\n ColorConfigValue,\n} from './system'\nimport {parseTokenValue} from './tokens'\n\nexport function isColorConfigBaseTone(str: string): str is ColorConfigBaseTone {\n return COLOR_CONFIG_BASE_TONES.includes(str as ColorConfigBaseTone)\n}\n\nexport function isColorConfigBaseKey(str: string): str is ColorConfigBaseKey {\n return COLOR_CONFIG_BASE_KEYS.includes(str as ColorConfigBaseKey)\n}\n\nexport function isColorConfigStateKey(str: string): str is ColorConfigStateKey {\n return COLOR_CONFIG_STATE_KEYS.includes(str as ColorConfigStateKey)\n}\n\nexport function isColorConfigStateTone(str: string): str is ColorConfigStateTone {\n return COLOR_CONFIG_STATE_TONES.includes(str as ColorConfigStateTone)\n}\n\nexport function isColorConfigBlendKey(str: string): str is ColorConfigBlendKey {\n return COLOR_CONFIG_BLEND_KEYS.includes(str as ColorConfigBlendKey)\n}\n\nexport function isColorTokenValue(str: string): str is ColorConfigValue {\n return parseTokenValue(str)?.type === 'color' || parseTokenValue(str)?.type === 'hue'\n}\n\nexport function isColorValue(str: string): str is 'black' | 'white' {\n return str === 'black' || str === 'white'\n}\n\nexport function isColorOpacityValue(str: string): str is ColorConfigOpacityValue {\n return str === '0' || /^0\\.[0-9]+$/.test(str) || str === '1'\n}\n","import {ColorHueKey} from '@sanity/color'\nimport {ThemeColorTokenValue, parseTokenValue, TokenColorValueNode} from '../config'\n\nexport interface ColorTokenContext {\n hue: ColorHueKey\n scheme: 'light' | 'dark'\n}\n\nexport function resolveColorTokenValue(\n context: ColorTokenContext,\n value: ThemeColorTokenValue,\n): string {\n const {hue, scheme} = context\n const node = parseTokenValue(value[scheme === 'light' ? 0 : 1])\n\n if (!node || node.type !== 'color') {\n throw new Error(`Invalid color token: ${value[0]}`)\n }\n\n return compileColorTokenValue({...node, hue: node.hue || hue})\n}\n\nexport function compileColorTokenValue(node: TokenColorValueNode): string {\n let key = ''\n\n if (node.key === 'black' || node.key === 'white') {\n key = node.key\n } else {\n key = `${node.hue}/${node.tint}`\n }\n\n if (node.opacity !== undefined) {\n key += `/${node.opacity}`\n }\n\n return key\n}\n","import {ThemeColorTokens} from '../../config'\n\nexport const defaultColorTokens: ThemeColorTokens = {\n avatar: {\n '*': {\n _blend: ['screen', 'multiply'],\n _hue: 'gray',\n bg: ['500', '400'],\n fg: ['white', 'black'],\n },\n blue: {_hue: 'blue'},\n purple: {_hue: 'purple'},\n magenta: {_hue: 'magenta'},\n red: {_hue: 'red'},\n orange: {_hue: 'orange'},\n yellow: {_hue: 'yellow', bg: ['600', '400']},\n green: {_hue: 'green', bg: ['600', '400']},\n cyan: {_hue: 'cyan', bg: ['600', '400']},\n },\n badge: {\n '*': {\n _blend: ['multiply', 'screen'],\n bg: ['100', '900'],\n fg: ['800', '200'],\n },\n },\n base: {\n '*': {\n _blend: ['multiply', 'screen'],\n bg: ['50', '950'],\n fg: ['800', '200'],\n border: ['200', '900'],\n focusRing: ['blue/500', 'blue/500'],\n shadow: {\n outline: ['500/0.3', '500/0.4'],\n umbra: ['gray/500/0.1', 'black/0.2'],\n penumbra: ['gray/500/0.07', 'black/0.14'],\n ambient: ['gray/500/0.06', 'black/0.12'],\n },\n skeleton: {\n from: ['100', '900'],\n to: ['100/0.5', '900/0.5'],\n },\n },\n transparent: {\n bg: ['50', 'black'],\n fg: ['600', '400'],\n },\n default: {\n bg: ['white', '950'],\n fg: ['black', '200'],\n },\n primary: {\n _hue: 'blue',\n },\n positive: {\n _hue: 'green',\n },\n caution: {\n _hue: 'yellow',\n },\n critical: {\n _hue: 'red',\n },\n },\n button: {\n default: {\n '*': {\n '*': {\n _blend: ['screen', 'multiply'],\n bg: ['500', '400'],\n bg2: ['900', '50'],\n fg: ['white', 'black'],\n icon: ['200', '900'],\n border: ['500/0', '400/0'],\n muted: {\n fg: ['200', '700'],\n },\n accent: {\n fg: ['purple/200', 'purple/700'],\n },\n link: {\n fg: ['blue/200', 'blue/700'],\n },\n code: {\n bg: ['500/0.2', '400/0.2'],\n fg: ['200', '700'],\n },\n skeleton: {\n from: ['900', '100'],\n to: ['900/0.5', '100/0.5'],\n },\n },\n hovered: {\n bg: ['600', '300'],\n border: ['600/0', '300/0'],\n },\n pressed: {\n bg: ['700', '200'],\n },\n selected: {\n bg: ['700', '200'],\n },\n disabled: {\n _hue: 'gray',\n bg: ['200', '900'],\n icon: ['white', 'black'],\n },\n },\n default: {\n '*': {\n bg: ['800', '200'],\n },\n hovered: {\n bg: ['900', '100'],\n },\n pressed: {\n bg: ['black', 'white'],\n },\n selected: {\n bg: ['black', 'white'],\n },\n },\n positive: {\n '*': {\n bg: ['600', '400'],\n },\n hovered: {\n bg: ['700', '300'],\n },\n pressed: {\n bg: ['800', '200'],\n },\n selected: {\n bg: ['800', '200'],\n },\n },\n caution: {\n '*': {\n bg: ['600', '400'],\n },\n hovered: {\n bg: ['700', '300'],\n },\n pressed: {\n bg: ['800', '200'],\n },\n selected: {\n bg: ['800', '200'],\n },\n },\n },\n ghost: {\n '*': {\n '*': {\n _blend: ['multiply', 'screen'],\n bg: ['50', '950'],\n bg2: ['100', '950'],\n fg: ['700', '400'],\n icon: ['600', '500'],\n border: ['200', '900'],\n muted: {\n fg: ['700/0.6', '400/0.6'],\n },\n accent: {\n fg: ['purple/700/0.6', 'purple/400/0.8'],\n },\n link: {\n fg: ['blue/700/0.6', 'blue/400/0.8'],\n },\n code: {\n bg: ['500/0.1', '400/0.1'],\n fg: ['700/0.6', '400/0.6'],\n },\n skeleton: {\n from: ['100', '900'],\n to: ['100/0.5', '900/0.5'],\n },\n },\n hovered: {\n bg: ['100', '900'],\n fg: ['700', '400'],\n },\n pressed: {\n bg: ['100', '900'],\n fg: ['800', '300'],\n },\n selected: {\n bg: ['100', '900'],\n fg: ['800', '300'],\n },\n disabled: {\n _hue: 'gray',\n fg: ['200', '900'],\n icon: ['200', '900'],\n border: ['100', '950'],\n muted: {\n fg: ['200/0.6', '900/0.6'],\n },\n accent: {\n fg: ['200/0.6', '900/0.6'],\n },\n link: {\n fg: ['200/0.6', '900/0.6'],\n },\n code: {\n bg: ['50/0.5', '950/0.5'],\n fg: ['200/0.6', '900/0.6'],\n },\n },\n },\n critical: {\n '*': {\n border: ['500/0.2', '900'],\n },\n },\n },\n bleed: {\n '*': {\n '*': {\n _blend: ['multiply', 'screen'],\n bg: ['white', 'black'],\n bg2: ['100', '950'],\n fg: ['700', '400'],\n icon: ['600', '500'],\n border: ['white/0', 'black/0'],\n muted: {\n fg: ['600', '300'],\n },\n accent: {\n fg: ['purple/600', 'purple/300'],\n },\n link: {\n fg: ['blue/600', 'blue/300'],\n },\n code: {\n bg: ['100', '950'],\n fg: ['600', '300'],\n },\n skeleton: {\n from: ['100', '900'],\n to: ['100/0.5', '900/0.5'],\n },\n },\n hovered: {\n bg: ['50', '950'],\n fg: ['700', '400'],\n },\n pressed: {\n bg: ['100', '900'],\n fg: ['800', '300'],\n },\n selected: {\n bg: ['100', '900'],\n fg: ['800', '300'],\n },\n disabled: {\n _hue: 'gray',\n fg: ['200', '900'],\n muted: {\n fg: ['200/0.6', '900/0.6'],\n },\n accent: {\n fg: ['200/0.6', '900/0.6'],\n },\n link: {\n fg: ['200/0.6', '900/0.6'],\n },\n code: {\n bg: ['50/0.5', '950/0.5'],\n fg: ['200/0.6', '900/0.6'],\n },\n },\n },\n },\n },\n card: {\n '*': {\n _blend: ['multiply', 'screen'],\n bg: ['white', 'black'],\n bg2: ['100', '950'],\n fg: ['black', 'white'],\n icon: ['500', '400'],\n border: ['200', '900'],\n muted: {\n fg: ['gray/600', 'gray/400'],\n },\n accent: {\n fg: ['purple/600', 'purple/300'],\n },\n link: {\n fg: ['blue/700', 'blue/300'],\n },\n code: {\n bg: ['100', '950'],\n fg: ['gray/600', 'gray/400'],\n },\n skeleton: {\n from: ['100', '900'],\n to: ['100/0.5', '900/0.5'],\n },\n },\n hovered: {\n bg: ['100', '950'],\n },\n pressed: {\n bg: ['100', '900'],\n },\n selected: {\n _blend: ['screen', 'multiply'],\n bg: ['500', '400'],\n border: ['800', '200'],\n bg2: ['950', '50'],\n fg: ['white', 'black'],\n },\n disabled: {\n _hue: 'gray',\n fg: ['200', '900'],\n icon: ['200', '800'],\n border: ['100', '900/0.5'],\n muted: {\n fg: ['200/0.5', '800/0.5'],\n },\n accent: {\n fg: ['200/0.6', '800/0.6'],\n },\n link: {\n fg: ['200/0.6', '800/0.6'],\n },\n code: {\n bg: ['100/0.6', '950/0.6'],\n fg: ['200/0.6', '800/0.6'],\n },\n },\n },\n input: {\n '*': {\n '*': {\n _blend: ['multiply', 'screen'],\n bg: ['white', 'black'],\n bg2: ['50', '950'],\n fg: ['black', '200'],\n border: ['200', '900'],\n placeholder: ['400', '600/0.5'],\n },\n\n hovered: {\n border: ['300', '800'],\n },\n\n readOnly: {\n border: ['200/0', '900/0'],\n bg: ['100', '950'],\n fg: ['800', '200'],\n },\n\n disabled: {\n fg: ['200', '800'],\n border: ['100', '900'],\n },\n },\n invalid: {\n '*': {\n _hue: 'red',\n bg: ['100', '950'],\n },\n },\n },\n kbd: {\n _blend: ['multiply', 'screen'],\n bg: ['white', 'black'],\n fg: ['600', '400'],\n border: ['200', '900'],\n },\n selectable: {\n '*': {\n '*': {\n _blend: ['multiply', 'screen'],\n bg: ['white', 'black'],\n bg2: ['50', '950'],\n fg: ['900', '200'],\n icon: ['600', '400'],\n border: ['200', '900'],\n muted: {\n fg: ['700', '400'],\n },\n accent: {\n fg: ['purple/600', 'purple/400'],\n },\n link: {\n fg: ['blue/700', 'blue/400'],\n },\n code: {\n bg: ['100', '950'],\n fg: ['700', '400'],\n },\n skeleton: {\n from: ['100', '900'],\n to: ['100/0.5', '900/0.5'],\n },\n },\n hovered: {\n bg: ['50', '950'],\n },\n pressed: {\n bg: ['100', '900'],\n },\n selected: {\n _blend: ['screen', 'multiply'],\n bg: ['500', '400'],\n bg2: ['900', '50'],\n fg: ['white', 'black'],\n icon: ['200', '900'],\n border: ['500/0.2', '400/0.2'],\n muted: {\n fg: ['200', '700'],\n },\n accent: {\n fg: ['purple/200', 'purple/700'],\n },\n link: {\n fg: ['blue/200', 'blue/700'],\n },\n code: {\n bg: ['500/0.2', '400/0.2'],\n fg: ['200', '700'],\n },\n skeleton: {\n from: ['900', '100'],\n to: ['900/0.5', '100/0.5'],\n },\n },\n disabled: {\n fg: ['200', '800'],\n icon: ['200', '800'],\n muted: {\n fg: ['200', '800/0.5'],\n },\n accent: {\n fg: ['purple/200', 'purple/800/0.5'],\n },\n link: {\n fg: ['blue/200', 'blue/800/0.5'],\n },\n code: {\n bg: ['100', '950/0.5'],\n fg: ['200', '800/0.5'],\n },\n },\n },\n default: {\n selected: {\n _hue: 'blue',\n // bg: ['500', '400'],\n },\n },\n critical: {\n disabled: {\n bg: ['50/0.5', '950/0.5'],\n },\n },\n },\n syntax: {\n atrule: ['purple/700', 'purple/400'],\n attrName: ['green/700', 'green/400'],\n attrValue: ['yellow/700', 'yellow/400'],\n attribute: ['yellow/700', 'yellow/400'],\n boolean: ['purple/700', 'purple/400'],\n builtin: ['purple/700', 'purple/400'],\n cdata: ['yellow/700', 'yellow/400'],\n char: ['yellow/700', 'yellow/400'],\n class: ['orange/700', 'orange/400'],\n className: ['cyan/700', 'cyan/400'],\n comment: ['gray/700/0.5', 'gray/400/0.5'],\n constant: ['purple/700', 'purple/400'],\n deleted: ['red/700', 'red/400'],\n entity: ['red/700', 'red/400'],\n function: ['green/700', 'green/400'],\n hexcode: ['blue/700', 'blue/400'],\n id: ['purple/700', 'purple/400'],\n important: ['purple/700', 'purple/400'],\n inserted: ['yellow/700', 'yellow/400'],\n keyword: ['magenta/700', 'magenta/400'],\n number: ['purple/700', 'purple/400'],\n operator: ['magenta/700', 'magenta/400'],\n property: ['blue/700', 'blue/400'],\n pseudoClass: ['yellow/700', 'yellow/400'],\n pseudoElement: ['yellow/700', 'yellow/400'],\n punctuation: ['gray/700', 'gray/400'],\n regex: ['blue/700', 'blue/400'],\n selector: ['red/700', 'red/400'],\n string: ['yellow/700', 'yellow/400'],\n symbol: ['purple/700', 'purple/400'],\n tag: ['red/700', 'red/400'],\n unit: ['orange/700', 'orange/400'],\n url: ['red/700', 'red/400'],\n variable: ['red/700', 'red/400'],\n },\n}\n","export function merge(\n target: Record<string, unknown>,\n source: Record<string, unknown>,\n): Record<string, unknown> {\n const ret = {...target}\n\n for (const key of Object.keys(source)) {\n const prevValue = target[key]\n const nextValue = source[key]\n\n if (isRecord(prevValue) && isRecord(nextValue)) {\n ret[key] = merge(prevValue, nextValue)\n } else {\n ret[key] = nextValue\n }\n }\n\n return ret\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return Boolean(value && typeof value === 'object' && !Array.isArray(value))\n}\n","import {ColorHueKey} from '@sanity/color'\nimport {\n ColorConfigAvatarColor,\n ColorConfigBaseTone,\n ColorConfigInputMode,\n ColorConfigInputState,\n ColorConfigState,\n ColorConfigStateTone,\n ThemeColorAvatarTokens,\n ThemeColorBadgeTokens,\n ThemeColorBaseTokens,\n ThemeColorButtonTokens,\n ThemeColorInputStateTokens,\n ThemeColorInputTokens,\n ThemeColorStateTokens,\n ThemeColorStatesTokens,\n ThemeColorTokenValue,\n ThemeColorTokens,\n} from '../config'\nimport {\n THEME_COLOR_AVATAR_COLORS,\n THEME_COLOR_BASE_TONES,\n THEME_COLOR_BUTTON_MODES,\n THEME_COLOR_INPUT_MODES,\n THEME_COLOR_INPUT_STATES,\n THEME_COLOR_STATES,\n THEME_COLOR_STATE_TONES,\n ThemeColorAvatarColorKey,\n ThemeColorBaseToneKey,\n ThemeColorButtonModeKey,\n ThemeColorStateKey,\n ThemeColorStateToneKey,\n ThemeColorSyntax,\n} from '../system'\nimport {defaultColorTokens} from './defaults/colorTokens'\nimport {merge} from './merge'\n\n/**\n * Convert a tree of color tokens from a sparse format to a dense format.\n */\nexport function resolveColorTokens(inputTokens?: ThemeColorTokens): ThemeColorTokens {\n const sparseTokens = merge(\n defaultColorTokens as unknown as Record<string, unknown>,\n (inputTokens ?? {}) as unknown as Record<string, unknown>,\n )\n\n return {\n avatar: resolveAvatarColorTokens(sparseTokens),\n badge: resolveBadgeColorTokens(sparseTokens),\n base: resolveBaseColorTokens(sparseTokens),\n button: resolveButtonColorTokens(sparseTokens),\n card: resolveCardColorTokens(sparseTokens),\n input: resolveInputColorTokens(sparseTokens),\n kbd: resolveKBDColorTokens(sparseTokens),\n selectable: resolveSelectableColorTokens(sparseTokens),\n spot: resolveSpotColorTokens(sparseTokens),\n syntax: resolveSyntaxColorTokens(sparseTokens),\n }\n}\n\nfunction resolveKBDColorTokens(sparseTokens: ThemeColorTokens) {\n return sparseTokens?.kbd\n}\n\nfunction resolveAvatarColorTokens(sparseTokens: ThemeColorTokens) {\n const tokens: Partial<Record<ColorConfigAvatarColor, ThemeColorAvatarTokens>> = {}\n\n for (const color of THEME_COLOR_AVATAR_COLORS) {\n tokens[color] = _resolveAvatarColorTokens(sparseTokens, color)\n }\n\n return tokens\n}\n\nfunction _resolveAvatarColorTokens(\n sparseTokens: ThemeColorTokens,\n color: ThemeColorAvatarColorKey,\n): ThemeColorAvatarTokens {\n const spec0 = sparseTokens?.avatar?.[color]\n const spec1 = sparseTokens?.avatar?.['*']\n\n return {\n ...spec1,\n ...spec0,\n }\n}\n\nfunction resolveBadgeColorTokens(sparseTokens: ThemeColorTokens) {\n const tokens: Partial<Record<ColorConfigStateTone, ThemeColorAvatarTokens>> = {}\n\n for (const tone of THEME_COLOR_STATE_TONES) {\n tokens[tone] = _resolveBadgeColorTokens(sparseTokens, tone)\n }\n\n return tokens\n}\n\nfunction _resolveBadgeColorTokens(\n sparseTokens: ThemeColorTokens,\n tone: ThemeColorStateToneKey,\n): ThemeColorBadgeTokens {\n const spec0 = sparseTokens?.badge?.[tone]\n const spec1 = sparseTokens?.badge?.['*']\n\n return {\n ...spec1,\n ...spec0,\n }\n}\n\nfunction resolveBaseColorTokens(sparseTokens: ThemeColorTokens) {\n const tokens: Partial<Record<ColorConfigBaseTone, ThemeColorBaseTokens>> = {}\n\n // base tones\n for (const tone of THEME_COLOR_BASE_TONES) {\n tokens[tone] = resolveBaseColorTones(sparseTokens, tone)\n }\n\n return tokens\n}\n\nfunction resolveBaseColorTones(\n sparseTokens: ThemeColorTokens,\n tone: ThemeColorBaseToneKey,\n): ThemeColorBaseTokens {\n const spec0 = sparseTokens?.base?.[tone]\n const spec1 = sparseTokens?.base?.['*']\n\n return {\n ...spec1,\n ...spec0,\n shadow: {...spec1?.shadow, ...spec0?.shadow},\n skeleton: {...spec1?.skeleton, ...spec0?.skeleton},\n }\n}\n\nfunction resolveButtonColorTokens(\n sparseTokens: ThemeColorTokens,\n): Partial<Record<ThemeColorButtonModeKey, ThemeColorButtonTokens>> {\n const tokens: Partial<Record<ThemeColorButtonModeKey, ThemeColorButtonTokens>> = {}\n\n for (const mode of THEME_COLOR_BUTTON_MODES) {\n tokens[mode] = resolveButtonToneColorTokens(sparseTokens, mode)\n }\n\n return tokens\n}\n\nfunction resolveButtonToneColorTokens(\n sparseTokens: ThemeColorTokens,\n mode: ThemeColorButtonModeKey,\n): ThemeColorButtonTokens {\n const tokens: ThemeColorButtonTokens = {}\n\n for (const tone of THEME_COLOR_STATE_TONES) {\n tokens[tone] = resolveButtonModeColorTokens(sparseTokens, mode, tone)\n }\n\n return tokens\n}\n\nfunction resolveButtonModeColorTokens(\n sparseTokens: ThemeColorTokens,\n mode: ThemeColorButtonModeKey,\n tone: ThemeColorStateToneKey,\n): ThemeColorStatesTokens {\n const spec0 = sparseTokens.button?.[mode]?.[tone]\n const spec1 = sparseTokens.button?.[mode]?.['*']\n const tokens = {...spec1, ...spec0}\n\n for (const state of THEME_COLOR_STATES) {\n tokens[state] = resolveButtonStateColorTokens(sparseTokens, tone, mode, state)\n }\n\n return tokens\n}\n\nfunction resolveButtonStateColorTokens(\n tokens: ThemeColorTokens,\n tone: ThemeColorStateToneKey,\n mode: ThemeColorButtonModeKey,\n state: ThemeColorStateKey,\n): ThemeColorStateTokens {\n const spec0 = tokens?.button?.[mode]?.[tone]?.[state]\n const spec1 = tokens?.button?.[mode]?.['*']?.[state]\n const spec2 = tokens?.button?.[mode]?.[tone]?.['*']\n const spec3 = tokens?.button?.[mode]?.['*']?.['*']\n\n const hue = spec0?._hue || spec1?._hue || spec2?._hue || spec3?._hue || tokens?.base?.[tone]?._hue\n\n return {\n ...spec3,\n ...spec2,\n ...spec1,\n ...spec0,\n _hue: hue,\n muted: {...spec3?.muted, ...spec2?.muted, ...spec1?.muted, ...spec0?.muted},\n accent: {...spec3?.accent, ...spec2?.accent, ...spec1?.accent, ...spec0?.accent},\n link: {...spec3?.link, ...spec2?.link, ...spec1?.link, ...spec0?.link},\n code: {...spec3?.code, ...spec2?.code, ...spec1?.code, ...spec0?.code},\n skeleton: {...spec3?.skeleton, ...spec2?.skeleton, ...spec1?.skeleton, ...spec0?.skeleton},\n }\n}\n\nfunction resolveCardColorTokens(\n sparseTokens: ThemeColorTokens,\n): Partial<Record<ColorConfigState, ThemeColorStateTokens>> {\n const tokens: Partial<Record<ColorConfigState, ThemeColorStateTokens>> = {}\n\n for (const state of THEME_COLOR_STATES) {\n tokens[state] = resolveCardStateColorTokens(sparseTokens, state)\n }\n\n return tokens\n}\n\nfunction resolveCardStateColorTokens(\n tokens: ThemeColorTokens,\n state: ThemeColorStateKey,\n): ThemeColorStateTokens {\n const spec0 = tokens?.card?.[state]\n const spec1 = tokens?.card?.['*']\n\n const hue = spec0?._hue || spec1?._hue\n\n return {\n ...spec1,\n ...spec0,\n _hue: hue,\n muted: {...spec1?.muted, ...spec0?.muted},\n accent: {...spec1?.accent, ...spec0?.accent},\n link: {...spec1?.link, ...spec0?.link},\n code: {...spec1?.code, ...spec0?.code},\n skeleton: {...spec1?.skeleton, ...spec0?.skeleton},\n }\n}\n\nfunction resolveInputColorTokens(\n sparseTokens: ThemeColorTokens,\n): Partial<Record<ColorConfigInputMode, ThemeColorInputTokens>> {\n const tokens: Partial<Record<ColorConfigInputMode, ThemeColorInputTokens>> = {}\n\n for (const mode of THEME_COLOR_INPUT_MODES) {\n tokens[mode] = resolveInputModeColorTokens(sparseTokens, mode)\n }\n\n return tokens\n}\n\nfunction resolveInputModeColorTokens(\n sparseTokens: ThemeColorTokens,\n mode: ColorConfigInputMode,\n): ThemeColorInputTokens {\n const states: ThemeColorInputTokens = {}\n\n for (const state of THEME_COLOR_INPUT_STATES) {\n states[state] = resolveInputStateColorTokens(sparseTokens, mode, state)\n }\n\n return states\n}\n\nfunction resolveInputStateColorTokens(\n tokens: ThemeColorTokens,\n mode: ColorConfigInputMode,\n state: ColorConfigInputState,\n): ThemeColorInputStateTokens {\n const spec0 = tokens?.input?.[mode]?.[state]\n const spec1 = tokens?.input?.['*']?.[state]\n const spec2 = tokens?.input?.[mode]?.['*']\n const spec3 = tokens?.input?.['*']?.['*']\n\n const hue =\n spec0?._hue || spec1?._hue || spec2?._hue || spec3?._hue || tokens?.input?.[mode]?._hue\n\n return {\n ...spec3,\n ...spec2,\n ...spec1,\n ...spec0,\n _hue: hue,\n }\n}\n\nfunction resolveSelectableColorTokens(\n sparseTokens: ThemeColorTokens,\n): Partial<Record<ColorConfigStateTone, {_hue?: ColorHueKey} & ThemeColorStatesTokens>> {\n const tokens: ThemeColorButtonTokens = {}\n\n for (const tone of THEME_COLOR_STATE_TONES) {\n tokens[tone] = resolveSelectableToneColorTokens(sparseTokens, tone)\n }\n\n return tokens\n}\n\nfunction resolveSelectableToneColorTokens(\n sparseTokens: ThemeColorTokens,\n tone: ThemeColorStateToneKey,\n): {_hue?: ColorHueKey} & ThemeColorStatesTokens {\n const states: {_hue?: ColorHueKey} & ThemeColorStatesTokens = {\n _hue: sparseTokens?.selectable?.[tone]?._hue || sparseTokens?.base?.[tone]?._hue,\n }\n\n for (const state of THEME_COLOR_STATES) {\n states[state] = resolveSelectableStateColorTokens(sparseTokens, state, tone)\n }\n\n return states\n}\n\nfunction resolveSelectableStateColorTokens(\n tokens: ThemeColorTokens,\n state: ThemeColorStateKey,\n tone: ThemeColorStateToneKey,\n) {\n const spec0 = tokens?.selectable?.[tone]?.[state]\n const spec1 = tokens?.selectable?.['*']?.[state]\n const spec2 = tokens?.selectable?.[tone]?.['*']\n const spec3 = tokens?.selectable?.['*']?.['*']\n\n const hue = spec0?._hue || spec1?._hue || spec2?._hue || spec3?._hue || tokens?.base?.[tone]?._hue\n\n return {\n ...spec3,\n ...spec2,\n ...spec1,\n ...spec0,\n _hue: hue,\n muted: {...spec3?.muted, ...spec2?.muted, ...spec1?.muted, ...spec0?.muted},\n accent: {...spec3?.accent, ...spec2?.accent, ...spec1?.accent, ...spec0?.accent},\n link: {...spec3?.link, ...spec2?.link, ...spec1?.link, ...spec0?.link},\n code: {...spec3?.code, ...spec2?.code, ...spec1?.code, ...spec0?.code},\n skeleton: {...spec3?.skeleton, ...spec2?.skeleton, ...spec1?.skeleton, ...spec0?.skeleton},\n }\n}\n\nfunction resolveSpotColorTokens(\n sparseTokens: ThemeColorTokens,\n): Partial<Record<ColorHueKey, ThemeColorTokenValue>> {\n return {\n ...sparseTokens.spot,\n }\n}\n\nfunction resolveSyntaxColorTokens(\n sparseTokens: ThemeColorTokens,\n): Partial<Record<keyof ThemeColorSyntax, ThemeColorTokenValue>> {\n return {\n ...sparseTokens.syntax,\n }\n}\n","import {ThemeColorTokenValue, ThemeConfig} from '../config'\nimport {\n THEME_COLOR_BUTTON_MODES,\n THEME_COLOR_STATES,\n THEME_COLOR_STATE_TONES,\n ThemeColorAvatarColorKey,\n ThemeColorBaseToneKey,\n ThemeColorButtonModeKey,\n ThemeColorStateKey,\n ThemeColorStateToneKey,\n ThemeColor,\n ThemeColorAvatar,\n ThemeColorBadge,\n ThemeColorButton,\n ThemeColorButtonStates,\n ThemeColorButtonTones,\n ThemeColorCard,\n ThemeColorGenericState,\n ThemeColorInput,\n ThemeColorInputState,\n ThemeColorInputStates,\n ThemeColorScheme,\n ThemeColorSchemes,\n ThemeColorSpot,\n ThemeColorSyntax,\n} from '../system'\nimport {ColorTokenContext, resolveColorTokenValue as _color} from './colorToken'\nimport {resolveColorTokens} from './resolveColorTokens'\n\nconst DEFAULT_COLOR_TOKEN_VALUE: ThemeColorTokenValue = ['500', '500']\n\nexport function buildColorTheme(config?: ThemeConfig): ThemeColorSchemes {\n return {\n light: buildColorScheme({scheme: 'light'}, config),\n dark: buildColorScheme({scheme: 'dark'}, config),\n }\n}\n\nexport function buildColorScheme(\n options: {scheme: 'light' | 'dark'},\n config?: ThemeConfig,\n): ThemeColorScheme {\n const {scheme} = options\n\n const resolvedConfig: ThemeConfig = {\n ...config,\n color: resolveColorTokens(config?.color),\n }\n\n return {\n transparent: buildBaseColorTheme({scheme, tone: 'transparent'}, resolvedConfig),\n default: buildBaseColorTheme({scheme, tone: 'default'}, resolvedConfig),\n primary: buildBaseColorTheme({scheme, tone: 'primary'}, resolvedConfig),\n positive: buildBaseColorTheme({scheme, tone: 'positive'}, resolvedConfig),\n caution: buildBaseColorTheme({scheme, tone: 'caution'}, resolvedConfig),\n critical: buildBaseColorTheme({scheme, tone: 'critical'}, resolvedConfig),\n }\n}\n\nexport function buildBaseColorTheme(\n options: {scheme: 'light' | 'dark'; tone: ThemeColorBaseToneKey},\n config?: ThemeConfig,\n): ThemeColor {\n const {scheme, tone} = options\n const tokens = config?.color?.base?.[tone]\n const hue = tokens?._hue || 'gray'\n const context: ColorTokenContext = {hue, scheme}\n const bg = _color(context, tokens?.bg || DEFAULT_COLOR_TOKEN_VALUE)\n const blendMode = tokens?._blend || ['screen', 'multiply']\n\n // Build `button` color theme\n // Also used for `solid` and `muted` color themes\n const button = buildButtonColorTheme({scheme}, config)\n\n const selectable = buildSelectableColorTheme({scheme}, config)\n\n const _dark = scheme === 'dark'\n\n return {\n _blend: blendMode[scheme === 'light' ? 0 : 1],\n _dark,\n avatar: buildAvatarColorTheme({scheme}, config),\n badge: buildBadgeColorTheme({scheme}, config),\n base: {\n bg,\n fg: _color(context, tokens?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n border: _color(context, tokens?.border || DEFAULT_COLOR_TOKEN_VALUE),\n focusRing: _color(context, tokens?.focusRing || DEFAULT_COLOR_TOKEN_VALUE),\n shadow: {\n outline: _color(context, tokens?.shadow?.outline || DEFAULT_COLOR_TOKEN_VALUE),\n umbra: _color(context, tokens?.shadow?.umbra || DEFAULT_COLOR_TOKEN_VALUE),\n penumbra: _color(context, tokens?.shadow?.penumbra || DEFAULT_COLOR_TOKEN_VALUE),\n ambient: _color(context, tokens?.shadow?.ambient || DEFAULT_COLOR_TOKEN_VALUE),\n },\n skeleton: {\n from: _color(context, tokens?.skeleton?.from || DEFAULT_COLOR_TOKEN_VALUE),\n to: _color(context, tokens?.skeleton?.to || DEFAULT_COLOR_TOKEN_VALUE),\n },\n },\n button,\n // card: buildCardColorTheme({scheme, baseTone: tone}, config),\n card: selectable.default satisfies ThemeColorCard,\n input: buildInputColorTheme({scheme, tone}, config),\n kbd: {\n _blend: (config?.color?.kbd?._blend || ['multiply', 'screen'])[scheme === 'light' ? 0 : 1],\n bg: _color(context, config?.color?.kbd?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, config?.color?.kbd?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n border: _color(context, config?.color?.kbd?.border || DEFAULT_COLOR_TOKEN_VALUE),\n },\n spot: buildSpotColorTheme({scheme}, config),\n syntax: buildSyntaxColorTheme({scheme}, config),\n solid: {\n ...button.default,\n transparent: button.default.default,\n },\n muted: {\n ...button.bleed,\n transparent: button.bleed.default,\n },\n selectable,\n\n dark: _dark, // deprecated\n }\n}\n\nfunction buildAvatarColorTheme(\n options: {scheme: 'light' | 'dark'},\n config?: ThemeConfig,\n): ThemeColorAvatar {\n const {scheme} = options\n\n return {\n gray: _buildAvatarColorTheme({color: 'gray', scheme}, config),\n blue: _buildAvatarColorTheme({color: 'blue', scheme}, config),\n purple: _buildAvatarColorTheme({color: 'purple', scheme}, config),\n magenta: _buildAvatarColorTheme({color: 'magenta', scheme}, config),\n red: _buildAvatarColorTheme({color: 'red', scheme}, config),\n orange: _buildAvatarColorTheme({color: 'orange', scheme}, config),\n yellow: _buildAvatarColorTheme({color: 'yellow', scheme}, config),\n green: _buildAvatarColorTheme({color: 'green', scheme}, config),\n cyan: _buildAvatarColorTheme({color: 'cyan', scheme}, config),\n }\n}\n\nfunction _buildAvatarColorTheme(\n options: {color: ThemeColorAvatarColorKey; scheme: 'light' | 'dark'},\n config?: ThemeConfig,\n): ThemeColorAvatar['gray'] {\n const {color, scheme} = options\n const tokens = config?.color?.avatar?.[color]\n const context: ColorTokenContext = {hue: tokens?._hue || 'gray', scheme}\n const blendMode = tokens?._blend || ['multiply', 'screen']\n\n return {\n _blend: blendMode[scheme === 'light' ? 0 : 1],\n bg: _color(context, tokens?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, tokens?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n }\n}\n\nfunction buildBadgeColorTheme(\n options: {scheme: 'light' | 'dark'},\n config?: ThemeConfig,\n): ThemeColorBadge {\n const {scheme} = options\n\n return {\n default: _buildBadgeColorTheme({scheme, tone: 'default'}, config),\n primary: _buildBadgeColorTheme({scheme, tone: 'primary'}, config),\n positive: _buildBadgeColorTheme({scheme, tone: 'positive'}, config),\n caution: _buildBadgeColorTheme({scheme, tone: 'caution'}, config),\n critical: _buildBadgeColorTheme({scheme, tone: 'critical'}, config),\n }\n}\n\nfunction _buildBadgeColorTheme(\n options: {scheme: 'light' | 'dark'; tone: ThemeColorStateToneKey},\n config?: ThemeConfig,\n): ThemeColorBadge['default'] {\n const {scheme, tone} = options\n const tokens = config?.color?.badge?.[tone]\n const hue = tokens?._hue || config?.color?.base?.[tone]?._hue || 'gray'\n const context: ColorTokenContext = {hue, scheme}\n const blendMode = tokens?._blend || ['multiply', 'screen']\n\n return {\n _blend: blendMode[scheme === 'light' ? 0 : 1],\n bg: _color(context, tokens?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, tokens?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n }\n}\n\nfunction buildButtonColorTheme(\n options: {scheme: 'light' | 'dark'},\n config?: ThemeConfig,\n): ThemeColorButton {\n const {scheme} = options\n\n const modes: Partial<ThemeColorButton> = {}\n\n for (const mode of THEME_COLOR_BUTTON_MODES) {\n modes[mode] = buildButtonTonesColorTheme({scheme, mode}, config)\n }\n\n return modes as ThemeColorButton\n}\n\nfunction buildButtonTonesColorTheme(\n options: {\n scheme: 'light' | 'dark'\n mode: ThemeColorButtonModeKey\n },\n config?: ThemeConfig,\n): ThemeColorButtonTones {\n const {mode, scheme} = options\n\n const tones: Partial<ThemeColorButtonTones> = {}\n\n for (const tone of THEME_COLOR_STATE_TONES) {\n tones[tone] = buildButtonStatesColorTheme({mode, scheme, tone}, config)\n }\n\n return tones as ThemeColorButtonTones\n}\n\nfunction buildButtonStatesColorTheme(\n options: {\n mode: ThemeColorButtonModeKey\n scheme: 'light' | 'dark'\n tone: ThemeColorStateToneKey\n },\n config?: ThemeConfig,\n): ThemeColorButtonStates {\n const {mode, scheme, tone} = options\n\n const states: Partial<ThemeColorButtonStates> = {}\n\n for (const state of THEME_COLOR_STATES) {\n states[state] = buildButtonStateColorTheme({mode, tone, scheme, state}, config)\n }\n\n return states as ThemeColorButtonStates\n}\n\nfunction buildButtonStateColorTheme(\n options: {\n mode: ThemeColorButtonModeKey\n tone: ThemeColorStateToneKey\n scheme: 'light' | 'dark'\n state: ThemeColorStateKey\n },\n config?: ThemeConfig,\n): ThemeColorGenericState {\n const {mode, tone, scheme, state} = options\n const tokens = config?.color?.button?.[mode]?.[tone]?.[state]\n const hue = tokens?._hue || 'gray'\n const blendMode = tokens?._blend || ['screen', 'multiply']\n const context: ColorTokenContext = {hue, scheme}\n\n return {\n _blend: blendMode[scheme === 'light' ? 0 : 1],\n bg: _color(context, tokens?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n bg2: _color(context, tokens?.bg2 || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, tokens?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n border: _color(context, tokens?.border || DEFAULT_COLOR_TOKEN_VALUE),\n icon: _color(context, tokens?.icon || DEFAULT_COLOR_TOKEN_VALUE),\n muted: {\n fg: _color(context, tokens?.muted?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n accent: {\n fg: _color(context, tokens?.accent?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n link: {\n fg: _color(context, tokens?.link?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n code: {\n bg: _color(context, tokens?.code?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, tokens?.code?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n skeleton: {\n from: _color(context, tokens?.skeleton?.from || DEFAULT_COLOR_TOKEN_VALUE),\n to: _color(context, tokens?.skeleton?.to || DEFAULT_COLOR_TOKEN_VALUE),\n },\n }\n}\n\n// function buildCardColorTheme(\n// options: {scheme: 'light' | 'dark'; baseTone: ColorBaseTone},\n// config?: ThemeConfig,\n// ): ThemeColorCard {\n// const {scheme, baseTone} = options\n\n// const states: Partial<ThemeColorCard> = {}\n\n// for (const state of COLOR_STATES) {\n// states[state] = buildCardStateColorTheme({scheme, state, baseTone}, config)\n// }\n\n// return states as ThemeColorCard\n// }\n\n// function buildCardStateColorTheme(\n// options: {scheme: 'light' | 'dark'; state: ColorState; baseTone: ColorBaseTone},\n// config?: ThemeConfig,\n// ): ThemeColorGenericState {\n// const {scheme, state, baseTone} = options\n// const tokens = config?.color?.card?.[state]\n// const hue = tokens?._hue || config?.color?.base?.[baseTone]?._hue || 'gray'\n// const blendMode = tokens?._blend || ['screen', 'multiply']\n// const context: ColorTokenContext = {hue, scheme}\n\n// return {\n// _blend: blendMode[scheme === 'light' ? 0 : 1],\n// bg: _color(context, tokens?.bg || ['50', '950']),\n// bg2: _color(context, tokens?.bg2 || ['50', '950']),\n// fg: _color(context, tokens?.fg || ['black', 'white']),\n// border: _color(context, tokens?.border || ['200', '800']),\n// icon: _color(context, tokens?.icon || ['500', '400']),\n// muted: {\n// fg: _color(context, tokens?.muted?.fg || ['600', '400']),\n// },\n// accent: {\n// fg: _color(context, tokens?.accent?.fg || ['600', '400']),\n// },\n// link: {\n// fg: _color(context, tokens?.link?.fg || ['600', '400']),\n// },\n// code: {\n// bg: _color(context, tokens?.code?.bg || ['600', '400']),\n// fg: _color(context, tokens?.code?.fg || ['600', '400']),\n// },\n// skeleton: {\n// from: _color(context, tokens?.skeleton?.from || ['100', '900']),\n// to: _color(context, tokens?.skeleton?.to || ['100/0.5', '900/0.5']),\n// },\n// }\n// }\n\nfunction buildInputColorTheme(\n options: {scheme: 'light' | 'dark'; tone: ThemeColorBaseToneKey},\n config?: ThemeConfig,\n): ThemeColorInput {\n const {scheme, tone} = options\n\n return {\n default: buildInputStatesColorTheme({mode: 'default', scheme, tone}, config),\n invalid: buildInputStatesColorTheme({mode: 'invalid', scheme, tone}, config),\n }\n}\n\nfunction buildInputStatesColorTheme(\n options: {\n mode: 'default' | 'invalid'\n scheme: 'light' | 'dark'\n tone: ThemeColorBaseToneKey\n },\n config?: ThemeConfig,\n): ThemeColorInputStates {\n const {mode, scheme, tone} = options\n\n return {\n enabled: buildInputStateColorTheme({mode, scheme, state: 'enabled', tone}, config),\n hovered: buildInputStateColorTheme({mode, scheme, state: 'hovered', tone}, config),\n readOnly: buildInputStateColorTheme({mode, scheme, state: 'readOnly', tone}, config),\n disabled: buildInputStateColorTheme({mode, scheme, state: 'disabled', tone}, config),\n }\n}\n\nfunction buildInputStateColorTheme(\n options: {\n mode: 'default' | 'invalid'\n scheme: 'light' | 'dark'\n state: 'enabled' | 'hovered' | 'readOnly' | 'disabled'\n tone: ThemeColorBaseToneKey\n },\n config?: ThemeConfig,\n): ThemeColorInputState {\n const {mode, tone, scheme, state} = options\n const tokens = config?.color?.input?.[mode]?.[state]\n const hue = tokens?._hue || config?.color?.base?.[tone]?._hue || 'gray'\n const blendMode = tokens?._blend || ['screen', 'multiply']\n const context: ColorTokenContext = {hue, scheme}\n\n return {\n _blend: blendMode[scheme === 'light' ? 0 : 1],\n bg: _color(context, tokens?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n bg2: _color(context, tokens?.bg2 || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, tokens?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n border: _color(context, tokens?.border || DEFAULT_COLOR_TOKEN_VALUE),\n placeholder: _color(context, tokens?.placeholder || DEFAULT_COLOR_TOKEN_VALUE),\n }\n}\n\nfunction buildSelectableColorTheme(\n options: {\n scheme: 'light' | 'dark'\n },\n config?: ThemeConfig,\n): ThemeColorButtonTones {\n const {scheme} = options\n\n const tones: Partial<ThemeColorButtonTones> = {}\n\n for (const tone of THEME_COLOR_STATE_TONES) {\n tones[tone] = buildSelectableStatesColorTheme({scheme, tone}, config)\n }\n\n return tones as ThemeColorButtonTones\n}\n\nfunction buildSelectableStatesColorTheme(\n options: {\n scheme: 'light' | 'dark'\n tone: ThemeColorStateToneKey\n },\n config?: ThemeConfig,\n): ThemeColorButtonStates {\n const {scheme, tone} = options\n\n const states: Partial<ThemeColorButtonStates> = {}\n\n for (const state of THEME_COLOR_STATES) {\n states[state] = buildSelectableStateColorTheme({tone, scheme, state}, config)\n }\n\n return states as ThemeColorButtonStates\n}\n\nfunction buildSelectableStateColorTheme(\n options: {\n scheme: 'light' | 'dark'\n state: ThemeColorStateKey\n tone: ThemeColorStateToneKey\n },\n config?: ThemeConfig,\n): ThemeColorGenericState {\n const {scheme, state, tone} = options\n const tokens = config?.color?.selectable?.[tone]?.[state]\n const hue = tokens?._hue || 'gray'\n const blendMode = tokens?._blend || ['screen', 'multiply']\n const context: ColorTokenContext = {hue, scheme}\n\n return {\n _blend: blendMode[scheme === 'light' ? 0 : 1],\n bg: _color(context, tokens?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n bg2: _color(context, tokens?.bg2 || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, tokens?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n border: _color(context, tokens?.border || DEFAULT_COLOR_TOKEN_VALUE),\n icon: _color(context, tokens?.icon || DEFAULT_COLOR_TOKEN_VALUE),\n muted: {\n fg: _color(context, tokens?.muted?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n accent: {\n fg: _color(context, tokens?.accent?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n link: {\n fg: _color(context, tokens?.link?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n code: {\n bg: _color(context, tokens?.code?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, tokens?.code?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n skeleton: {\n from: _color(context, tokens?.skeleton?.from || DEFAULT_COLOR_TOKEN_VALUE),\n to: _color(context, tokens?.skeleton?.to || DEFAULT_COLOR_TOKEN_VALUE),\n },\n }\n}\n\nfunction buildSpotColorTheme(\n options: {scheme: 'light' | 'dark'},\n config?: ThemeConfig,\n): ThemeColorSpot {\n const {scheme} = options\n const tokens = config?.color?.avatar\n const context: ColorTokenContext = {hue: 'gray', scheme}\n\n return {\n gray: _color(context, tokens?.gray?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n cyan: _color(context, tokens?.cyan?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n blue: _color(context, tokens?.blue?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n purple: _color(context, tokens?.purple?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n magenta: _color(context, tokens?.magenta?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n red: _color(context, tokens?.red?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n orange: _color(context, tokens?.orange?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n yellow: _color(context, tokens?.yellow?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n green: _color(context, tokens?.green?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n }\n}\n\nfunction buildSyntaxColorTheme(\n options: {scheme: 'light' | 'dark'},\n config?: ThemeConfig,\n): ThemeColorSyntax {\n const {scheme} = options\n const tokens = config?.color?.syntax\n const context: ColorTokenContext = {hue: 'gray', scheme}\n\n return {\n atrule: _color(context, tokens?.atrule || DEFAULT_COLOR_TOKEN_VALUE),\n attrName: _color(context, tokens?.attrName || DEFAULT_COLOR_TOKEN_VALUE),\n attrValue: _color(context, tokens?.attrValue || DEFAULT_COLOR_TOKEN_VALUE),\n attribute: _color(context, tokens?.attribute || DEFAULT_COLOR_TOKEN_VALUE),\n boolean: _color(context, tokens?.boolean || DEFAULT_COLOR_TOKEN_VALUE),\n builtin: _color(context, tokens?.builtin || DEFAULT_COLOR_TOKEN_VALUE),\n cdata: _color(context, tokens?.cdata || DEFAULT_COLOR_TOKEN_VALUE),\n char: _color(context, tokens?.char || DEFAULT_COLOR_TOKEN_VALUE),\n class: _color(context, tokens?.class || DEFAULT_COLOR_TOKEN_VALUE),\n className: _color(context, tokens?.className || DEFAULT_COLOR_TOKEN_VALUE),\n comment: _color(context, tokens?.comment || DEFAULT_COLOR_TOKEN_VALUE),\n constant: _color(context, tokens?.constant || DEFAULT_COLOR_TOKEN_VALUE),\n deleted: _color(context, tokens?.deleted || DEFAULT_COLOR_TOKEN_VALUE),\n doctype: _color(context, tokens?.doctype || DEFAULT_COLOR_TOKEN_VALUE),\n entity: _color(context, tokens?.entity || DEFAULT_COLOR_TOKEN_VALUE),\n function: _color(context, tokens?.function || DEFAULT_COLOR_TOKEN_VALUE),\n hexcode: _color(context, tokens?.hexcode || DEFAULT_COLOR_TOKEN_VALUE),\n id: _color(context, tokens?.id || DEFAULT_COLOR_TOKEN_VALUE),\n important: _color(context, tokens?.important || DEFAULT_COLOR_TOKEN_VALUE),\n inserted: _color(context, tokens?.inserted || DEFAULT_COLOR_TOKEN_VALUE),\n keyword: _color(context, tokens?.keyword || DEFAULT_COLOR_TOKEN_VALUE),\n number: _color(context, tokens?.number || DEFAULT_COLOR_TOKEN_VALUE),\n operator: _color(context, tokens?.operator || DEFAULT_COLOR_TOKEN_VALUE),\n prolog: _color(context, tokens?.prolog || DEFAULT_COLOR_TOKEN_VALUE),\n property: _color(context, tokens?.property || DEFAULT_COLOR_TOKEN_VALUE),\n pseudoClass: _color(context, tokens?.pseudoClass || DEFAULT_COLOR_TOKEN_VALUE),\n pseudoElement: _color(context, tokens?.pseudoElement || DEFAULT_COLOR_TOKEN_VALUE),\n punctuation: _color(context, tokens?.punctuation || DEFAULT_COLOR_TOKEN_VALUE),\n regex: _color(context, tokens?.regex || DEFAULT_COLOR_TOKEN_VALUE),\n selector: _color(context, tokens?.selector || DEFAULT_COLOR_TOKEN_VALUE),\n string: _color(context, tokens?.string || DEFAULT_COLOR_TOKEN_VALUE),\n symbol: _color(context, tokens?.symbol || DEFAULT_COLOR_TOKEN_VALUE),\n tag: _color(context, tokens?.tag || DEFAULT_COLOR_TOKEN_VALUE),\n unit: _color(context, tokens?.unit || DEFAULT_COLOR_TOKEN_VALUE),\n url: _color(context, tokens?.url || DEFAULT_COLOR_TOKEN_VALUE),\n variable: _color(context, tokens?.variable || DEFAULT_COLOR_TOKEN_VALUE),\n }\n}\n","import {RootTheme} from '../../system'\n\nconst BORDER_WIDTH = 1\nconst OUTLINE_WIDTH = 0.5\n\nexport const defaultThemeConfig: Omit<RootTheme, 'color' | 'fonts'> = {\n avatar: {\n sizes: [\n {distance: -3, size: 25},\n {distance: -6, size: 35},\n {distance: -9, size: 55},\n ],\n focusRing: {offset: 1, width: 1},\n },\n button: {\n textWeight: 'medium',\n border: {width: BORDER_WIDTH},\n focusRing: {offset: -1, width: 2},\n },\n card: {\n border: {width: BORDER_WIDTH},\n focusRing: {offset: -1, width: 1},\n shadow: {outline: OUTLINE_WIDTH},\n },\n container: [480, 640, 960, 1280, 1600, 1920],\n focusRing: {\n offset: 1,\n width: 2,\n },\n media: [360, 600, 900, 1200, 1800, 2400],\n radius: [0, 1, 3, 6, 9, 12, 21],\n shadows: [\n null,\n {umbra: [0, 0, 0, 0], penumbra: [0, 0, 0, 0], ambient: [0, 0, 0, 0]},\n {umbra: [0, 3, 5, -2], penumbra: [0, 6, 10, 0], ambient: [0, 1, 18, 1]},\n {umbra: [0, 7, 8, -4], penumbra: [0, 12, 17, 2], ambient: [0, 5, 22, 4]},\n {umbra: [0, 9, 11, -5], penumbra: [0, 18, 28, 2], ambient: [0, 7, 34, 6]},\n {umbra: [0, 11, 15, -7], penumbra: [0, 24, 38, 3], ambient: [0, 9, 46, 8]},\n ],\n space: [0, 4, 8, 12, 20, 32, 52, 84, 136, 220],\n input: {\n border: {\n width: BORDER_WIDTH,\n },\n checkbox: {\n size: 17,\n focusRing: {offset: -1, width: 1},\n },\n radio: {\n size: 17,\n markSize: 9,\n focusRing: {offset: -1, width: 1},\n },\n switch: {\n width: 25,\n height: 17,\n padding: 2,\n transitionDurationMs: 150,\n transitionTimingFunction: 'ease-out',\n focusRing: {offset: 1, width: 1},\n },\n select: {\n focusRing: {offset: -1, width: 1},\n },\n text: {\n focusRing: {offset: -1, width: 1},\n },\n },\n styles: {\n button: {\n root: {\n transition: 'background-color 100ms,border-color 100ms,color 100ms',\n },\n },\n // card: {\n // root: {\n // transition: 'background-color 100ms,border-color 100ms,color 100ms',\n // },\n // },\n },\n}\n","import {ThemeFonts} from '../../system'\n\nexport const defaultThemeFonts: ThemeFonts = {\n code: {\n family: 'ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace',\n weights: {\n regular: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n },\n sizes: [\n {\n ascenderHeight: 4,\n descenderHeight: 4,\n fontSize: 10,\n iconSize: 17,\n lineHeight: 15,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 5,\n descenderHeight: 5,\n fontSize: 13,\n iconSize: 21,\n lineHeight: 19,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 6,\n descenderHeight: 6,\n fontSize: 16,\n iconSize: 25,\n lineHeight: 23,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 7,\n descenderHeight: 7,\n fontSize: 19,\n iconSize: 29,\n lineHeight: 27,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 8,\n descenderHeight: 8,\n fontSize: 22,\n iconSize: 33,\n lineHeight: 31,\n letterSpacing: 0,\n },\n ],\n },\n heading: {\n family:\n 'Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Liberation Sans\", Helvetica, Arial, system-ui, sans-serif',\n weights: {\n regular: 700,\n medium: 800,\n semibold: 900,\n bold: 900,\n },\n sizes: [\n {\n ascenderHeight: 5,\n descenderHeight: 5,\n fontSize: 13,\n iconSize: 17,\n lineHeight: 19,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 6,\n descenderHeight: 6,\n fontSize: 16,\n iconSize: 25,\n lineHeight: 23,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 7,\n descenderHeight: 7,\n fontSize: 21,\n iconSize: 33,\n lineHeight: 29,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 8,\n descenderHeight: 8,\n fontSize: 27,\n iconSize: 41,\n lineHeight: 35,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 9.5,\n descenderHeight: 8.5,\n fontSize: 33,\n iconSize: 49,\n lineHeight: 41,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 10.5,\n descenderHeight: 9.5,\n fontSize: 38,\n iconSize: 53,\n lineHeight: 47,\n letterSpacing: 0,\n },\n ],\n },\n label: {\n family:\n 'Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Liberation Sans\", system-ui, sans-serif',\n weights: {\n regular: 600,\n medium: 700,\n semibold: 800,\n bold: 900,\n },\n sizes: [\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 9.8,\n iconSize: 15,\n lineHeight: 11,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 11.25,\n iconSize: 17,\n lineHeight: 12,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 12.75,\n iconSize: 19,\n lineHeight: 13,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 14,\n iconSize: 21,\n lineHeight: 14,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 15.5,\n iconSize: 23,\n lineHeight: 15,\n letterSpacing: 0.5,\n },\n ],\n },\n text: {\n family:\n 'Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Liberation Sans\", Helvetica, Arial, system-ui, sans-serif',\n weights: {\n regular: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n },\n sizes: [\n {\n ascenderHeight: 4,\n descenderHeight: 4,\n fontSize: 10,\n iconSize: 17,\n lineHeight: 15,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 5,\n descenderHeight: 5,\n fontSize: 13,\n iconSize: 21,\n lineHeight: 19,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 6,\n descenderHeight: 6,\n fontSize: 16,\n iconSize: 25,\n lineHeight: 23,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 7.5,\n descenderHeight: 6.5,\n fontSize: 19,\n iconSize: 29,\n lineHeight: 27,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 8.5,\n descenderHeight: 7.5,\n fontSize: 22,\n iconSize: 33,\n lineHeight: 31,\n letterSpacing: 0,\n },\n ],\n },\n}\n","import {color} from '@sanity/color'\n\nimport {ThemeColorPalette} from '../../config'\n\nexport const defaultColorPalette: ThemeColorPalette = color\n","import {RGB, RGBA} from '../types'\n\nfunction mixChannel(b: number, s: number, weight: number) {\n const diff = s - b\n\n const delta = diff * weight\n\n return b + delta\n}\n\n/**\n * Apply the \\`mix\\` blend mode\n * @internal\n */\nexport function mix(b: RGB | RGBA, s: RGB | RGBA, weight: number): RGB {\n return {\n r: mixChannel(b.r, s.r, weight),\n g: mixChannel(b.g, s.g, weight),\n b: mixChannel(b.b, s.b, weight),\n }\n}\n","import {RGB, RGBA} from '../types'\n\nfunction multiplyChannel(b: number, s: number) {\n return b * s\n}\n\n/**\n * Apply the \\`multiply\\` blend mode\n * Source: https://www.w3.org/TR/compositing-1/#blendingmultiply\n * @internal\n */\nexport function multiply(b: RGB | RGBA, s: RGB | RGBA): RGB {\n return {\n r: multiplyChannel(b.r / 255, s.r / 255) * 255,\n g: multiplyChannel(b.g / 255, s.g / 255) * 255,\n b: multiplyChannel(b.b / 255, s.b / 255) * 255,\n }\n}\n","import {RGB, RGBA} from '../types'\n\nfunction screenChannel(b: number, s: number) {\n return b + s - b * s\n}\n\n/**\n * Apply the \\`screen\\` blend mode\n * Source: https://www.w3.org/TR/compositing-1/#blendingscreen\n * @internal\n */\nexport function screen(b: RGB | RGBA, s: RGB | RGBA): RGB {\n return {\n r: screenChannel(b.r / 255, s.r / 255) * 255,\n g: screenChannel(b.g / 255, s.g / 255) * 255,\n b: screenChannel(b.b / 255, s.b / 255) * 255,\n }\n}\n","export function lerp(x: number, y: number, a: number): number {\n return x * (1 - a) + y * a\n}\n\nexport function invlerp(x: number, y: number, a: number): number {\n return clamp((a - x) / (y - x))\n}\n\nexport function clamp(a: number, min = 0, max = 1): number {\n return Math.min(max, Math.max(min, a))\n}\n\nexport function range(x1: number, y1: number, x2: number, y2: number, a: number): number {\n return lerp(x2, y2, invlerp(x1, y1, a))\n}\n\nexport function round(value: number): number {\n return Math.round(value)\n}\n","import {clamp, round} from '../utils'\nimport {HSL, RGB, RGBA} from './types'\n\n/**\n * @internal\n */\nexport function hexToRgb(hex: string): RGB {\n if (hex.length === 4) {\n const hexR = hex.slice(1, 2)\n const hexG = hex.slice(2, 3)\n const hexB = hex.slice(3, 4)\n\n return {\n r: parseInt(hexR + hexR, 16),\n g: parseInt(hexG + hexG, 16),\n b: parseInt(hexB + hexB, 16),\n }\n }\n\n return {\n r: parseInt(hex.slice(1, 3), 16),\n g: parseInt(hex.slice(3, 5), 16),\n b: parseInt(hex.slice(5, 7), 16),\n }\n}\n\n/**\n * @internal\n */\nexport function rgbaToRGBA(rgba: string): RGBA {\n const values = rgba.replace(/rgba\\(|\\)/g, '').split(',')\n\n return {\n r: parseInt(values[0]),\n g: parseInt(values[1]),\n b: parseInt(values[2]),\n a: parseFloat(values[3]),\n }\n}\n\n/**\n * @internal\n */\nexport function rgbToHex(color: RGB | RGBA): string {\n const r = round(clamp(Math.round(color.r), 0, 255))\n const g = round(clamp(Math.round(color.g), 0, 255))\n const b = round(clamp(Math.round(color.b), 0, 255))\n\n if ('a' in color) {\n return `rgba(${r},${g},${b},${color.a})`\n }\n\n return '#' + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1)\n}\n\n/**\n * @internal\n * @see https://css-tricks.com/converting-color-spaces-in-javascript/\n */\nexport function rgbToHsl({r, g, b}: RGB): HSL {\n // Make r, g, and b fractions of 1\n r /= 255\n g /= 255\n b /= 255\n\n // Find greatest and smallest channel values\n const cmin = Math.min(r, g, b)\n const cmax = Math.max(r, g, b)\n const delta = cmax - cmin\n\n let h = 0\n let s = 0\n let l = 0\n\n // Calculate hue\n // No difference\n if (delta == 0) h = 0\n // Red is max\n else if (cmax == r) h = ((g - b) / delta) % 6\n // Green is max\n else if (cmax == g) h = (b - r) / delta + 2\n // Blue is max\n else h = (r - g) / delta + 4\n\n h = Math.round(h * 60)\n\n // Make negative hues positive behind 360°\n if (h < 0) h += 360\n\n // Calculate lightness\n l = (cmax + cmin) / 2\n\n // Calculate saturation\n s = delta == 0 ? 0 : delta / (1 - Math.abs(2 * l - 1))\n\n // Multiply l and s by 100\n s = +(s * 100).toFixed(1)\n l = +(l * 100).toFixed(1)\n\n return {h, s, l}\n}\n\n/**\n * @internal\n */\nexport function hslToRgb(hsl: HSL): RGB {\n // Must be fractions of 1\n const s = hsl.s / 100\n const l = hsl.l / 100\n\n const c = (1 - Math.abs(2 * l - 1)) * s\n const x = c * (1 - Math.abs(((hsl.h / 60) % 2) - 1))\n const m = l - c / 2\n\n let r = 0\n let g = 0\n let b = 0\n\n if (0 <= hsl.h && hsl.h < 60) {\n r = c\n g = x\n b = 0\n } else if (60 <= hsl.h && hsl.h < 120) {\n r = x\n g = c\n b = 0\n } else if (120 <= hsl.h && hsl.h < 180) {\n r = 0\n g = c\n b = x\n } else if (180 <= hsl.h && hsl.h < 240) {\n r = 0\n g = x\n b = c\n } else if (240 <= hsl.h && hsl.h < 300) {\n r = x\n g = 0\n b = c\n } else if (300 <= hsl.h && hsl.h < 360) {\n r = c\n g = 0\n b = x\n }\n\n return {\n r: Math.round((r + m) * 255),\n g: Math.round((g + m) * 255),\n b: Math.round((b + m) * 255),\n }\n}\n","import {hexToRgb, hslToRgb, rgbaToRGBA} from './convert'\nimport {HSL, RGB, RGBA} from './types'\n\nconst HEX_CHARS = '0123456789ABCDEFabcdef'\n\nconst HSL_RE = /hsl\\(\\s*(\\d+)\\s*,\\s*((\\d+(?:\\.\\d+)?)%)\\s*,\\s*((\\d+(?:\\.\\d+)?)%)\\s*\\)/i\n\nfunction isHexChars(str: string) {\n for (const c of str) {\n if (HEX_CHARS.indexOf(c) === -1) {\n return false\n }\n }\n\n return true\n}\n\nfunction isHex(str: string) {\n if (str[0] !== '#') return false\n\n // Accept both #000 and #000000\n if (!(str.length === 4 || str.length === 7)) return false\n\n return isHexChars(str.slice(1))\n}\n\nfunction parseHsl(str: string): HSL {\n const res = HSL_RE.exec(str)\n\n if (!res) {\n throw new Error(`parseHsl: string is not a HSL color: \"${str}\"`)\n }\n\n return {h: parseInt(res[1]), s: parseFloat(res[3]), l: parseFloat(res[5])}\n}\n\n/**\n * @internal\n */\nexport function parseColor(color: unknown): RGB | RGBA {\n if (!color) return {r: 0, g: 0, b: 0}\n\n if (typeof color !== 'string') {\n throw new Error('parseColor: expected a string')\n }\n\n if (isHex(color)) {\n return hexToRgb(color)\n }\n\n if (color.startsWith('hsl(')) {\n return hslToRgb(parseHsl(color))\n }\n\n if (color.startsWith('rgba(')) {\n return rgbaToRGBA(color)\n }\n\n throw new Error(`parseColor: unexpected color format: \"${color}\"`)\n}\n","import {parseColor} from './parse'\nimport {RGB, RGBA} from './types'\n\nexport function getContrastRatio(bg: string, fg: string): number {\n const rgb1 = parseColor(bg) // bg: RGB | RGBA, fg: RGB | RGBA\n const rgb2 = parseColor(fg)\n\n // convert the two colors from sRGB to linear-light RGB\n const c1 = rgb_lrgb(rgb1)\n const c2 = rgb_lrgb(rgb2)\n\n // compute the relative luminances\n const l1 = lrgb_luminance(c1)\n const l2 = lrgb_luminance(c2)\n\n // compute the contrast ratio\n return (Math.max(l1, l2) + 0.05) / (Math.min(l1, l2) + 0.05)\n}\n\nfunction rgb_lrgb({r, g, b}: RGB | RGBA): [number, number, number] {\n return [rgb_lrgb1(r / 255), rgb_lrgb1(g / 255), rgb_lrgb1(b / 255)]\n}\n\nfunction rgb_lrgb1(v: number) {\n return v <= 0.04045 ? v / 12.92 : ((v + 0.055) / 1.055) ** 2.4\n}\n\nfunction lrgb_luminance([r, g, b]: [number, number, number]) {\n return 0.2126 * r + 0.7152 * g + 0.0722 * b\n}\n","import {parseColor} from './parse'\n\n/**\n * @internal\n */\nexport function rgba(color: unknown, a: number): string {\n const rgb = parseColor(color)\n\n return `rgba(${rgb.r},${rgb.g},${rgb.b},${a})`\n}\n","import {RGB, multiply, parseColor, rgbToHex, screen} from './lib/color-fns'\nimport {clamp, range} from './lib/utils'\n\nconst RGB_RANGE: [number, number] = [0, 255]\n\nexport function mixThemeColor(\n value: string,\n options: {\n bg?: string\n blendMode: 'multiply' | 'screen'\n black: string\n white: string\n },\n): string {\n const {blendMode} = options\n\n const color = parseColor(value)\n const black = parseColor(options.black)\n const white = parseColor(options.white)\n\n const bg = options.bg ? parseColor(options.bg) : blendMode === 'multiply' ? white : black\n\n const paletteRange: {r: [number, number]; g: [number, number]; b: [number, number]} = {\n r: [black.r, white.r],\n g: [black.g, white.g],\n b: [black.b, white.b],\n }\n\n const convertedBgColor: RGB = {\n r: clamp(range(...paletteRange.r, ...RGB_RANGE, bg.r), ...RGB_RANGE),\n g: clamp(range(...paletteRange.g, ...RGB_RANGE, bg.g), ...RGB_RANGE),\n b: clamp(range(...paletteRange.b, ...RGB_RANGE, bg.b), ...RGB_RANGE),\n }\n\n const convertedColor: RGB = {\n r: clamp(range(...paletteRange.r, ...RGB_RANGE, color.r), ...RGB_RANGE),\n g: clamp(range(...paletteRange.g, ...RGB_RANGE, color.g), ...RGB_RANGE),\n b: clamp(range(...paletteRange.b, ...RGB_RANGE, color.b), ...RGB_RANGE),\n }\n\n const resultColor =\n blendMode === 'multiply'\n ? multiply(convertedBgColor, convertedColor)\n : screen(convertedBgColor, convertedColor)\n\n const v: RGB = {\n r: clamp(range(...RGB_RANGE, ...paletteRange.r, resultColor.r), ...paletteRange.r),\n g: clamp(range(...RGB_RANGE, ...paletteRange.g, resultColor.g), ...paletteRange.g),\n b: clamp(range(...RGB_RANGE, ...paletteRange.b, resultColor.b), ...paletteRange.b),\n }\n\n return rgbToHex(v)\n}\n","import {ColorTint as ColorPaletteValue} from '@sanity/color'\nimport {ThemeColorPalette, parseTokenValue} from '../config'\nimport {ThemeColorBlendModeKey} from '../system'\nimport {rgba} from './lib/color-fns'\nimport {mixThemeColor} from './mixThemeColor'\n\nexport interface RenderColorValueOptions {\n bg?: string\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n}\n\nexport function renderColorValue(str: string, options: RenderColorValueOptions): string {\n const {bg, blendMode, colorPalette} = options\n\n const node = parseTokenValue(str)\n\n if (!node || node.type !== 'color') {\n throw new Error(`Invalid color token value: ${str}`)\n }\n\n let hex = ''\n\n if (node.key === 'black') {\n hex = renderColorHex(colorPalette.black)\n }\n\n if (node.key === 'white') {\n hex = renderColorHex(colorPalette.white)\n }\n\n if (node.hue && node.tint) {\n hex = renderColorHex(colorPalette[node.hue][node.tint])\n }\n\n if (!hex) {\n throw new Error(`Invalid color token value: ${str}`)\n }\n\n const hexBeforeMix = hex\n\n try {\n hex = mixThemeColor(hex, {\n blendMode,\n bg,\n black: renderColorHex(colorPalette.black),\n // opacity: node.opacity,\n white: renderColorHex(colorPalette.white),\n })\n } catch (err) {\n // eslint-disable-next-line no-console\n console.log('could not blend', hex)\n }\n\n if (hex === '#aN') {\n // eslint-disable-next-line no-console\n console.warn(`invalid color token value: ${str}`)\n hex = hexBeforeMix\n }\n\n if (node.opacity !== undefined) {\n hex = rgba(hex, node.opacity)\n }\n\n return hex\n}\n\nfunction renderColorHex(color: string | ColorPaletteValue) {\n return typeof color === 'string' ? color : color.hex\n}\n","import {ThemeColorPalette, ThemeConfig} from '../config'\nimport {\n ThemeColorBlendModeKey,\n ThemeColor,\n ThemeColorAvatar,\n ThemeColorBadge,\n ThemeColorBase,\n ThemeColorButton,\n ThemeColorButtonStates,\n ThemeColorButtonTones,\n ThemeColorGenericState,\n ThemeColorInput,\n ThemeColorInputState,\n ThemeColorInputStates,\n ThemeColorKBD,\n ThemeColorScheme,\n ThemeColorSchemes,\n ThemeColorSelectable,\n ThemeColorSelectableStates,\n ThemeColorSpot,\n ThemeColorSyntax,\n ThemeColorToneKey,\n} from '../system'\nimport {defaultColorPalette} from './defaults/colorPalette'\nimport {RenderColorValueOptions, renderColorValue} from './renderColorValue'\n\nexport function renderThemeColorSchemes(\n value: ThemeColorSchemes,\n config?: ThemeConfig,\n): ThemeColorSchemes {\n const colorPalette = config?.palette ?? defaultColorPalette\n\n return {\n light: renderThemeColorScheme(colorPalette, value.light),\n dark: renderThemeColorScheme(colorPalette, value.dark),\n }\n}\n\nfunction renderThemeColorScheme(\n colorPalette: ThemeColorPalette,\n value: ThemeColorScheme,\n): ThemeColorScheme {\n const toneEntries = Object.entries(value) as [ThemeColorToneKey, ThemeColor][]\n\n const [, transparentTone] = toneEntries.find(([k]) => k === 'transparent')!\n const [, defaultTone] = toneEntries.find(([k]) => k === 'default')!\n\n // The `transparent` and `default` tones are special cases, so we render them first\n // (rendered without a `bg` option).\n // But the rest of the tones are rendered on top of the `default` tone's `bg`.\n const renderedTransparentTone = renderThemeColor(transparentTone, {colorPalette})\n const renderedDefaultTone = renderThemeColor(defaultTone, {colorPalette})\n\n // Get the `default` tone's `bg` property\n const bg = renderedDefaultTone.base.bg\n\n return Object.fromEntries([\n ['transparent', renderedTransparentTone],\n ['default', renderedDefaultTone],\n ...toneEntries\n .filter(([k]) => k !== 'default' && k !== 'transparent')\n .map(([k, v]) => [k, renderThemeColor(v, {bg, colorPalette})]),\n ]) as ThemeColorScheme\n}\n\nfunction renderThemeColor(\n value: ThemeColor,\n options: {\n bg?: string\n colorPalette: ThemeColorPalette\n },\n): ThemeColor {\n const {colorPalette, bg} = options\n\n const blendMode = value._blend || 'multiply'\n\n const baseBg = renderColorValue(value.base.bg, {colorPalette, bg, blendMode})\n\n const colorOptions: RenderColorValueOptions = {colorPalette, bg: baseBg, blendMode}\n\n const base: ThemeColorBase = {\n bg: baseBg,\n fg: renderColorValue(value.base.fg, colorOptions),\n border: renderColorValue(value.base.border, colorOptions),\n focusRing: renderColorValue(value.base.focusRing, colorOptions),\n shadow: {\n outline: renderColorValue(value.base.shadow.outline, colorOptions),\n umbra: renderColorValue(value.base.shadow.umbra, {\n ...colorOptions,\n bg: undefined,\n colorPalette: {...colorPalette, black: '#000000'},\n }),\n penumbra: renderColorValue(value.base.shadow.penumbra, {\n ...colorOptions,\n bg: undefined,\n colorPalette: {...colorPalette, black: '#000000'},\n }),\n ambient: renderColorValue(value.base.shadow.ambient, {\n ...colorOptions,\n bg: undefined,\n colorPalette: {...colorPalette, black: '#000000'},\n }),\n },\n skeleton: value.base.skeleton && {\n from: renderColorValue(value.base.skeleton?.from, colorOptions),\n to: renderColorValue(value.base.skeleton?.to, colorOptions),\n },\n }\n\n const button = renderThemeColorButton(value.button, {colorPalette, base, blendMode})\n\n const selectable = renderThemeColorSelectable(value.selectable || value.button.ghost, {\n colorPalette,\n base,\n blendMode,\n })\n\n return {\n ...value,\n _blend: blendMode,\n avatar: renderThemeColorAvatar(value.avatar, {base, colorPalette, blendMode}),\n badge: renderThemeColorBadge(value.badge, {base, colorPalette, blendMode}),\n base,\n button,\n card: renderThemeColorButtonStates(value.card, {base, colorPalette, blendMode}),\n input: renderThemeColorInput(value.input, {base, colorPalette, blendMode}),\n kbd: renderThemeColorKBD(value.kbd, {base, colorPalette, blendMode}),\n spot: renderSpotColorTheme(value.spot, {base, colorPalette, blendMode}),\n syntax: renderSyntaxColorTheme(value.syntax, {base, colorPalette, blendMode}),\n solid: {\n ...button.default,\n transparent: button.default.default,\n },\n muted: {\n ...button.bleed,\n transparent: button.bleed.default,\n },\n selectable,\n }\n}\n\nfunction renderThemeColorKBD(\n value: ThemeColorKBD | undefined,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n) {\n const {base, blendMode: rootBlendMode, colorPalette} = options\n const blendMode = value?._blend || 'multiply'\n\n const rootOptions: RenderColorValueOptions = {\n bg: base.bg,\n blendMode: rootBlendMode,\n colorPalette,\n }\n\n const bg = renderColorValue(value?.bg || 'gray/500', rootOptions)\n\n const colorOptions: RenderColorValueOptions = {\n bg,\n blendMode,\n colorPalette,\n }\n\n return {\n _blend: blendMode,\n bg,\n fg: renderColorValue(value?.fg || 'gray/500', colorOptions),\n border: renderColorValue(value?.border || 'gray/500', colorOptions),\n }\n}\n\nfunction renderThemeColorAvatar(\n value: ThemeColorAvatar | undefined,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorAvatar {\n return {\n gray: renderThemeColorAvatarColor(value?.gray, options),\n blue: renderThemeColorAvatarColor(value?.blue, options),\n purple: renderThemeColorAvatarColor(value?.purple, options),\n magenta: renderThemeColorAvatarColor(value?.magenta, options),\n red: renderThemeColorAvatarColor(value?.red, options),\n orange: renderThemeColorAvatarColor(value?.orange, options),\n yellow: renderThemeColorAvatarColor(value?.yellow, options),\n green: renderThemeColorAvatarColor(value?.green, options),\n cyan: renderThemeColorAvatarColor(value?.cyan, options),\n }\n}\n\nfunction renderThemeColorAvatarColor(\n value: ThemeColorAvatar['gray'] | undefined,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorAvatar['gray'] {\n const {base, blendMode: rootBlendMode, colorPalette} = options\n const blendMode = value?._blend || 'multiply'\n\n const rootOptions: RenderColorValueOptions = {\n bg: base.bg,\n blendMode: rootBlendMode,\n colorPalette,\n }\n\n const bg = renderColorValue(value?.bg || 'gray/500', rootOptions)\n\n const colorOptions: RenderColorValueOptions = {\n bg,\n blendMode,\n colorPalette,\n }\n\n return {\n _blend: blendMode,\n bg,\n fg: renderColorValue(value?.fg || 'gray/500', colorOptions),\n }\n}\n\nfunction renderThemeColorBadge(\n value: ThemeColorBadge | undefined,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorBadge {\n return {\n default: renderThemeColorBadgeColor(value?.default, options),\n primary: renderThemeColorBadgeColor(value?.primary, options),\n positive: renderThemeColorBadgeColor(value?.positive, options),\n caution: renderThemeColorBadgeColor(value?.caution, options),\n critical: renderThemeColorBadgeColor(value?.critical, options),\n }\n}\n\nfunction renderThemeColorBadgeColor(\n value: {_blend?: ThemeColorBlendModeKey; bg: string; fg: string} | undefined,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): {bg: string; fg: string} {\n const {base, blendMode: rootBlendMode, colorPalette} = options\n const blendMode = value?._blend || 'multiply'\n\n const rootOptions: RenderColorValueOptions = {\n bg: base.bg,\n blendMode: rootBlendMode,\n colorPalette,\n }\n\n const bg = renderColorValue(value?.bg || 'gray/500', rootOptions)\n\n const colorOptions: RenderColorValueOptions = {\n bg,\n blendMode,\n colorPalette,\n }\n\n return {\n bg,\n fg: renderColorValue(value?.fg || 'gray/500', colorOptions),\n }\n}\n\nfunction renderThemeColorButton(\n value: ThemeColorButton,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorButton {\n return {\n default: renderThemeColorButtonTones(value.default, options),\n ghost: renderThemeColorButtonTones(value.ghost, options),\n bleed: renderThemeColorButtonTones(value.bleed, options),\n }\n}\n\nfunction renderThemeColorButtonTones(\n value: ThemeColorButtonTones,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorButtonTones {\n return {\n default: renderThemeColorButtonStates(value.default, options),\n primary: renderThemeColorButtonStates(value.primary, options),\n positive: renderThemeColorButtonStates(value.positive, options),\n caution: renderThemeColorButtonStates(value.caution, options),\n critical: renderThemeColorButtonStates(value.critical, options),\n }\n}\n\nfunction renderThemeColorButtonStates(\n value: ThemeColorButtonStates,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorButtonStates {\n return {\n enabled: renderThemeColorGenericState(value.enabled, options),\n hovered: renderThemeColorGenericState(value.hovered, options),\n pressed: renderThemeColorGenericState(value.pressed, options),\n selected: renderThemeColorGenericState(value.selected, options),\n disabled: renderThemeColorGenericState(value.disabled, options),\n }\n}\n\nfunction renderThemeColorGenericState(\n value: ThemeColorGenericState,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorGenericState {\n const {base, blendMode: rootBlendMode, colorPalette} = options\n const blendMode = value._blend || 'multiply'\n\n const rootOptions: RenderColorValueOptions = {\n bg: base.bg,\n blendMode: rootBlendMode,\n colorPalette,\n }\n\n const bg = renderColorValue(value.bg, rootOptions)\n\n const colorOptions: RenderColorValueOptions = {\n bg,\n blendMode,\n colorPalette,\n }\n\n return {\n _blend: blendMode,\n bg,\n bg2: renderColorValue(value.bg2 || value.bg, colorOptions),\n fg: renderColorValue(value.fg, colorOptions),\n border: renderColorValue(value.border, colorOptions),\n icon: renderColorValue(value.icon, colorOptions),\n muted: {\n fg: renderColorValue(value.muted.fg, colorOptions),\n },\n accent: {\n fg: renderColorValue(value.accent.fg, colorOptions),\n },\n link: {\n fg: renderColorValue(value.link.fg, colorOptions),\n },\n code: {\n bg: renderColorValue(value.code.bg, colorOptions),\n fg: renderColorValue(value.code.fg, colorOptions),\n },\n skeleton: value.skeleton && {\n from: renderColorValue(value.skeleton?.from, colorOptions),\n to: renderColorValue(value.skeleton?.to, colorOptions),\n },\n }\n}\n\nfunction renderThemeColorInput(\n value: ThemeColorInput,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorInput {\n return {\n default: renderInputStatesColorTheme(value.default, options),\n invalid: renderInputStatesColorTheme(value.invalid, options),\n }\n}\n\nfunction renderInputStatesColorTheme(\n value: ThemeColorInputStates,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorInputStates {\n return {\n enabled: renderInputStateColorTheme(value.enabled, options),\n hovered: renderInputStateColorTheme(value.hovered, options),\n readOnly: renderInputStateColorTheme(value.readOnly, options),\n disabled: renderInputStateColorTheme(value.disabled, options),\n }\n}\n\nfunction renderInputStateColorTheme(\n value: ThemeColorInputState,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorInputState {\n const {colorPalette, base, blendMode: rootBlendMode} = options\n\n const blendMode = value._blend || 'multiply'\n\n const rootOptions: RenderColorValueOptions = {colorPalette, bg: base.bg, blendMode: rootBlendMode}\n\n const bg = renderColorValue(value.bg, rootOptions)\n\n const colorOptions: RenderColorValueOptions = {colorPalette, bg, blendMode}\n\n return {\n _blend: blendMode,\n bg,\n bg2: renderColorValue(value.bg2, colorOptions),\n fg: renderColorValue(value.fg, colorOptions),\n border: renderColorValue(value.border, colorOptions),\n placeholder: renderColorValue(value.placeholder, colorOptions),\n }\n}\n\nfunction renderThemeColorSelectable(\n value: ThemeColorSelectable,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorSelectable {\n return {\n default: renderThemeColorSelectableStates(value.default, options),\n primary: renderThemeColorSelectableStates(value.primary, options),\n positive: renderThemeColorSelectableStates(value.positive, options),\n caution: renderThemeColorSelectableStates(value.caution, options),\n critical: renderThemeColorSelectableStates(value.critical, options),\n }\n}\n\nfunction renderThemeColorSelectableStates(\n value: ThemeColorSelectableStates,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorSelectableStates {\n return {\n enabled: renderThemeColorGenericState(value.enabled, options),\n hovered: renderThemeColorGenericState(value.hovered, options),\n pressed: renderThemeColorGenericState(value.pressed, options),\n selected: renderThemeColorGenericState(value.selected, options),\n disabled: renderThemeColorGenericState(value.disabled, options),\n }\n}\n\nfunction renderSpotColorTheme(\n value: ThemeColorSpot,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorSpot {\n const {colorPalette, base, blendMode} = options\n\n const colorOptions: RenderColorValueOptions = {colorPalette, bg: base.bg, blendMode}\n\n return {\n gray: renderColorValue(value.gray, colorOptions),\n cyan: renderColorValue(value.cyan, colorOptions),\n blue: renderColorValue(value.blue, colorOptions),\n purple: renderColorValue(value.purple, colorOptions),\n magenta: renderColorValue(value.magenta, colorOptions),\n red: renderColorValue(value.red, colorOptions),\n orange: renderColorValue(value.orange, colorOptions),\n yellow: renderColorValue(value.yellow, colorOptions),\n green: renderColorValue(value.green, colorOptions),\n }\n}\n\nfunction renderSyntaxColorTheme(\n value: ThemeColorSyntax,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorSyntax {\n const {colorPalette, base, blendMode} = options\n\n const colorOptions: RenderColorValueOptions = {colorPalette, bg: base.bg, blendMode}\n\n return {\n atrule: renderColorValue(value.atrule, colorOptions),\n attrName: renderColorValue(value.attrName, colorOptions),\n attrValue: renderColorValue(value.attrValue, colorOptions),\n attribute: renderColorValue(value.attribute, colorOptions),\n boolean: renderColorValue(value.boolean, colorOptions),\n builtin: renderColorValue(value.builtin, colorOptions),\n cdata: renderColorValue(value.cdata, colorOptions),\n char: renderColorValue(value.char, colorOptions),\n class: renderColorValue(value.class, colorOptions),\n className: renderColorValue(value.className, colorOptions),\n comment: renderColorValue(value.comment, colorOptions),\n constant: renderColorValue(value.constant, colorOptions),\n deleted: renderColorValue(value.deleted, colorOptions),\n doctype: renderColorValue(value.doctype, colorOptions),\n entity: renderColorValue(value.entity, colorOptions),\n function: renderColorValue(value.function, colorOptions),\n hexcode: renderColorValue(value.hexcode, colorOptions),\n id: renderColorValue(value.id, colorOptions),\n important: renderColorValue(value.important, colorOptions),\n inserted: renderColorValue(value.inserted, colorOptions),\n keyword: renderColorValue(value.keyword, colorOptions),\n number: renderColorValue(value.number, colorOptions),\n operator: renderColorValue(value.operator, colorOptions),\n prolog: renderColorValue(value.prolog, colorOptions),\n property: renderColorValue(value.property, colorOptions),\n pseudoClass: renderColorValue(value.pseudoClass, colorOptions),\n pseudoElement: renderColorValue(value.pseudoElement, colorOptions),\n punctuation: renderColorValue(value.punctuation, colorOptions),\n regex: renderColorValue(value.regex, colorOptions),\n selector: renderColorValue(value.selector, colorOptions),\n string: renderColorValue(value.string, colorOptions),\n symbol: renderColorValue(value.symbol, colorOptions),\n tag: renderColorValue(value.tag, colorOptions),\n unit: renderColorValue(value.unit, colorOptions),\n url: renderColorValue(value.url, colorOptions),\n variable: renderColorValue(value.variable, colorOptions),\n }\n}\n","import {ThemeConfig} from '../config'\nimport {RootTheme} from '../system'\nimport {buildColorTheme} from './buildColorTheme'\nimport {defaultThemeConfig} from './defaults/config'\nimport {defaultThemeFonts} from './defaults/fonts'\nimport {renderThemeColorSchemes} from './renderColorTheme'\n\n/** @internal */\nexport function buildTheme(config?: ThemeConfig): RootTheme {\n const colorTheme = buildColorTheme(config)\n\n return {\n avatar: config?.avatar ?? defaultThemeConfig.avatar,\n button: config?.button ?? defaultThemeConfig.button,\n card: config?.card ?? defaultThemeConfig.card,\n color: renderThemeColorSchemes(colorTheme, config),\n container: config?.container ?? defaultThemeConfig.container,\n focusRing: config?.focusRing ?? defaultThemeConfig.focusRing,\n fonts: config?.fonts ?? defaultThemeFonts,\n input: config?.input ?? defaultThemeConfig.input,\n media: config?.media ?? defaultThemeConfig.media,\n radius: config?.radius ?? defaultThemeConfig.radius,\n shadows: config?.shadows ?? defaultThemeConfig.shadows,\n space: config?.space ?? defaultThemeConfig.space,\n\n styles: config?.styles ?? defaultThemeConfig.styles,\n }\n}\n","import {RootTheme} from '../../system'\n\nconst STROKE_WIDTH = 1\nconst OUTLINE_WIDTH = 0.5\n\nexport const config: Omit<RootTheme, 'color' | 'fonts'> = {\n avatar: {\n sizes: [\n {distance: -3, size: 19},\n {distance: -6, size: 31},\n {distance: -9, size: 51},\n ],\n focusRing: {offset: 0, width: 1},\n },\n button: {\n textWeight: 'medium',\n border: {width: STROKE_WIDTH},\n focusRing: {offset: -1, width: 2},\n },\n card: {\n border: {width: STROKE_WIDTH},\n focusRing: {offset: -1, width: 1},\n shadow: {outline: OUTLINE_WIDTH},\n },\n container: [480, 640, 960, 1280, 1600, 1920],\n focusRing: {\n offset: 1,\n width: 2,\n },\n media: [360, 600, 900, 1200, 1800, 2400],\n radius: [0, 1, 3, 6, 9, 12, 21],\n shadows: [\n null,\n {umbra: [0, 0, 0, 0], penumbra: [0, 0, 0, 0], ambient: [0, 0, 0, 0]},\n {umbra: [0, 3, 5, -2], penumbra: [0, 6, 10, 0], ambient: [0, 1, 18, 1]},\n {umbra: [0, 7, 8, -4], penumbra: [0, 12, 17, 2], ambient: [0, 5, 22, 4]},\n {umbra: [0, 9, 11, -5], penumbra: [0, 18, 28, 2], ambient: [0, 7, 34, 6]},\n {umbra: [0, 11, 15, -7], penumbra: [0, 24, 38, 3], ambient: [0, 9, 46, 8]},\n ],\n space: [0, 4, 8, 12, 20, 32, 52, 84, 136, 220],\n input: {\n border: {\n width: STROKE_WIDTH,\n },\n checkbox: {\n size: 17,\n focusRing: {offset: -1, width: 1},\n },\n radio: {\n size: 17,\n markSize: 9,\n focusRing: {offset: -1, width: 1},\n },\n switch: {\n width: 21,\n height: 13,\n padding: 2,\n transitionDurationMs: 150,\n transitionTimingFunction: 'ease-out',\n focusRing: {offset: 1, width: 1},\n },\n select: {\n focusRing: {offset: -1, width: 1},\n },\n text: {\n focusRing: {offset: -1, width: 1},\n },\n },\n}\n","import {ThemeFonts} from '../../system'\n\nexport const fonts: ThemeFonts = {\n code: {\n family: 'ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace',\n weights: {\n regular: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n },\n sizes: [\n {\n ascenderHeight: 4,\n descenderHeight: 4,\n fontSize: 10,\n iconSize: 17,\n lineHeight: 15,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 5,\n descenderHeight: 5,\n fontSize: 13,\n iconSize: 21,\n lineHeight: 19,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 6,\n descenderHeight: 6,\n fontSize: 16,\n iconSize: 25,\n lineHeight: 23,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 7,\n descenderHeight: 7,\n fontSize: 19,\n iconSize: 29,\n lineHeight: 27,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 8,\n descenderHeight: 8,\n fontSize: 22,\n iconSize: 33,\n lineHeight: 31,\n letterSpacing: 0,\n },\n ],\n },\n heading: {\n family:\n 'Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Liberation Sans\", Helvetica, Arial, system-ui, sans-serif',\n weights: {\n regular: 700,\n medium: 800,\n semibold: 900,\n bold: 900,\n },\n sizes: [\n {\n ascenderHeight: 5,\n descenderHeight: 5,\n fontSize: 13,\n iconSize: 17,\n lineHeight: 19,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 6,\n descenderHeight: 6,\n fontSize: 16,\n iconSize: 25,\n lineHeight: 23,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 7,\n descenderHeight: 7,\n fontSize: 21,\n iconSize: 33,\n lineHeight: 29,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 8,\n descenderHeight: 8,\n fontSize: 27,\n iconSize: 41,\n lineHeight: 35,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 9.5,\n descenderHeight: 8.5,\n fontSize: 33,\n iconSize: 49,\n lineHeight: 41,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 10.5,\n descenderHeight: 9.5,\n fontSize: 38,\n iconSize: 53,\n lineHeight: 47,\n letterSpacing: 0,\n },\n ],\n },\n label: {\n family:\n 'Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Liberation Sans\", system-ui, sans-serif',\n weights: {\n regular: 600,\n medium: 700,\n semibold: 800,\n bold: 900,\n },\n sizes: [\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 9.8,\n iconSize: 15,\n lineHeight: 11,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 11.25,\n iconSize: 17,\n lineHeight: 12,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 12.75,\n iconSize: 19,\n lineHeight: 13,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 14,\n iconSize: 21,\n lineHeight: 14,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 15.5,\n iconSize: 23,\n lineHeight: 15,\n letterSpacing: 0.5,\n },\n ],\n },\n text: {\n family:\n 'Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Liberation Sans\", Helvetica, Arial, system-ui, sans-serif',\n weights: {\n regular: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n },\n sizes: [\n {\n ascenderHeight: 4,\n descenderHeight: 4,\n fontSize: 10,\n iconSize: 17,\n lineHeight: 15,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 5,\n descenderHeight: 5,\n fontSize: 13,\n iconSize: 21,\n lineHeight: 19,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 6,\n descenderHeight: 6,\n fontSize: 16,\n iconSize: 25,\n lineHeight: 23,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 7.5,\n descenderHeight: 6.5,\n fontSize: 19,\n iconSize: 29,\n lineHeight: 27,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 8.5,\n descenderHeight: 7.5,\n fontSize: 22,\n iconSize: 33,\n lineHeight: 31,\n letterSpacing: 0,\n },\n ],\n },\n}\n","import {buildTheme} from '../../build'\nimport {config} from './config'\nimport {fonts} from './fonts'\n\n/**\n * @public\n */\nexport const studioTheme = buildTheme({...config, fonts})\n"],"names":["createSelectableTones","opts","base","dark","solid","muted","default","_createSelectableStates","primary","positive","caution","critical","tone","enabled","selectable","state","hovered","pressed","selected","disabled","createSolidTones","name","transparent","createButtonTones","mode","button","createButtonModes","ghost","bleed","createCardStates","card","black","white","colors","lightest","lighter","light","darker","darkest","spots","gray","red","orange","yellow","green","cyan","blue","purple","magenta","tones","bg","fg","border","focusRing","defaultOpts","_ref","shadow","outline","umbra","penumbra","ambient","skeleton","from","to","_ref2","color","bg2","icon","accent","link","code","_ref3","_ref4","_ref5","input","placeholder","_ref6","spot","_ref7","key","syntax","atrule","attrName","attrValue","attribute","boolean","builtin","cdata","char","class","className","comment","constant","deleted","doctype","entity","function","hexcode","id","important","inserted","keyword","number","operator","prolog","property","pseudoClass","pseudoElement","punctuation","regex","selector","string","symbol","tag","unit","url","variable","createInputModes","readOnly","invalid","createMutedTones","createSpot","createColorTheme","partialOpts","arguments","length","undefined","builders","_createColorScheme","_createColor","THEME_COLOR_BLEND_MODES","THEME_COLOR_BASE_TONES","THEME_COLOR_STATE_TONES","THEME_COLOR_STATES","THEME_COLOR_BUTTON_MODES","THEME_COLOR_INPUT_MODES","THEME_COLOR_INPUT_STATES","THEME_COLOR_AVATAR_COLORS","COLOR_HUES","isColorBlendModeValue","str","includes","isColorHueKey","isColorTintKey","COLOR_TINTS","isColorButtonMode","COLOR_CONFIG_BASE_KEYS","COLOR_CONFIG_STATE_KEYS","COLOR_CONFIG_BLEND_KEYS","COLOR_CONFIG_AVATAR_COLORS","COLOR_CONFIG_BASE_TONES","COLOR_CONFIG_STATE_TONES","COLOR_CONFIG_STATES","COLOR_CONFIG_INPUT_MODES","COLOR_CONFIG_INPUT_STATES","parseTokenKey","segments","split","segment0","shift","isColorConfigBaseTone","join","isColorConfigBaseKey","type","isColorConfigBlendKey","segment1","isColorConfigStateTone","segment2","isColorConfigStateKey","parseTokenValue","tint","isColorOpacityValue","opacity","Number","isColorValue","hue","concat","value","isColorTokenValue","_a","_b","test","resolveColorTokenValue","context","scheme","node","Error","compileColorTokenValue","defaultColorTokens","avatar","_blend","_hue","badge","kbd","merge","target","source","ret","Object","keys","prevValue","nextValue","isRecord","Boolean","Array","isArray","resolveColorTokens","inputTokens","sparseTokens","resolveAvatarColorTokens","resolveBadgeColorTokens","resolveBaseColorTokens","resolveButtonColorTokens","resolveCardColorTokens","resolveInputColorTokens","resolveKBDColorTokens","resolveSelectableColorTokens","resolveSpotColorTokens","resolveSyntaxColorTokens","tokens","_resolveAvatarColorTokens","spec0","spec1","_resolveBadgeColorTokens","resolveBaseColorTones","resolveButtonToneColorTokens","resolveButtonModeColorTokens","_c","_d","resolveButtonStateColorTokens","_e","_f","_g","_h","_i","_j","_k","_l","_m","_n","spec2","spec3","resolveCardStateColorTokens","resolveInputModeColorTokens","states","resolveInputStateColorTokens","resolveSelectableToneColorTokens","resolveSelectableStateColorTokens","DEFAULT_COLOR_TOKEN_VALUE","buildColorTheme","config","buildColorScheme","options","resolvedConfig","buildBaseColorTheme","_o","_p","_color","blendMode","buildButtonColorTheme","buildSelectableColorTheme","_dark","buildAvatarColorTheme","buildBadgeColorTheme","buildInputColorTheme","buildSpotColorTheme","buildSyntaxColorTheme","_buildAvatarColorTheme","_buildBadgeColorTheme","modes","buildButtonTonesColorTheme","buildButtonStatesColorTheme","buildButtonStateColorTheme","buildInputStatesColorTheme","buildInputStateColorTheme","buildSelectableStatesColorTheme","buildSelectableStateColorTheme","BORDER_WIDTH","OUTLINE_WIDTH","defaultThemeConfig","sizes","distance","size","offset","width","textWeight","container","media","radius","shadows","space","checkbox","radio","markSize","switch","height","padding","transitionDurationMs","transitionTimingFunction","select","text","styles","root","transition","defaultThemeFonts","family","weights","regular","medium","semibold","bold","ascenderHeight","descenderHeight","fontSize","iconSize","lineHeight","letterSpacing","heading","label","defaultColorPalette","mixChannel","b","s","weight","diff","delta","mix","r","g","multiplyChannel","multiply","screenChannel","screen","lerp","x","y","a","invlerp","clamp","min","max","Math","range","x1","y1","x2","y2","round","hexToRgb","hex","hexR","slice","hexG","hexB","parseInt","rgbaToRGBA","rgba","values","replace","parseFloat","rgbToHex","toString","rgbToHsl","_ref8","cmin","cmax","h","l","abs","toFixed","hslToRgb","hsl","c","m","HEX_CHARS","HSL_RE","isHexChars","indexOf","isHex","parseHsl","res","exec","parseColor","startsWith","getContrastRatio","rgb1","rgb2","c1","rgb_lrgb","c2","l1","lrgb_luminance","l2","_ref9","rgb_lrgb1","v","_ref10","rgb","RGB_RANGE","mixThemeColor","paletteRange","convertedBgColor","convertedColor","resultColor","renderColorValue","colorPalette","renderColorHex","hexBeforeMix","err","console","log","warn","renderThemeColorSchemes","palette","renderThemeColorScheme","toneEntries","entries","transparentTone","find","_ref11","k","defaultTone","_ref12","renderedTransparentTone","renderThemeColor","renderedDefaultTone","fromEntries","filter","_ref13","map","_ref14","baseBg","colorOptions","renderThemeColorButton","renderThemeColorSelectable","renderThemeColorAvatar","renderThemeColorBadge","renderThemeColorButtonStates","renderThemeColorInput","renderThemeColorKBD","renderSpotColorTheme","renderSyntaxColorTheme","rootBlendMode","rootOptions","renderThemeColorAvatarColor","renderThemeColorBadgeColor","renderThemeColorButtonTones","renderThemeColorGenericState","renderInputStatesColorTheme","renderInputStateColorTheme","renderThemeColorSelectableStates","buildTheme","colorTheme","fonts","STROKE_WIDTH","studioTheme"],"mappings":"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"}
1
+ {"version":3,"file":"theme.js","sources":["../src/theme/build/_deprecated/color/_selectable/createSelectableTones.ts","../src/theme/build/_deprecated/color/_solid/createSolidTones.ts","../src/theme/build/_deprecated/color/button/createButtonTones.ts","../src/theme/build/_deprecated/color/button/createButtonModes.ts","../src/theme/build/_deprecated/color/card/createCardStates.ts","../src/theme/build/_deprecated/color/defaults.ts","../src/theme/build/_deprecated/color/input/createInputModes.ts","../src/theme/build/_deprecated/color/muted/createMuted.ts","../src/theme/build/_deprecated/color/spot/createSpot.ts","../src/theme/build/_deprecated/color/factory.ts","../src/theme/system/color/_constants.ts","../src/theme/system/color/_helpers.ts","../src/theme/config/system.ts","../src/theme/config/tokens/parseTokenKey.ts","../src/theme/config/tokens/parseTokenValue.ts","../src/theme/config/helpers.ts","../src/theme/build/colorToken.ts","../src/theme/build/defaults/colorTokens.ts","../src/theme/build/merge.ts","../src/theme/build/resolveColorTokens.ts","../src/theme/build/buildColorTheme.ts","../src/theme/build/defaults/config.ts","../src/theme/build/defaults/fonts.ts","../src/theme/build/defaults/colorPalette.ts","../src/theme/build/lib/color-fns/blend/mix.ts","../src/theme/build/lib/color-fns/blend/multiply.ts","../src/theme/build/lib/color-fns/blend/screen.ts","../src/theme/build/lib/utils.ts","../src/theme/build/lib/color-fns/convert.ts","../src/theme/build/lib/color-fns/parse.ts","../src/theme/build/lib/color-fns/contrastRatio.ts","../src/theme/build/lib/color-fns/rgba.ts","../src/theme/build/mixThemeColor.ts","../src/theme/build/renderColorValue.ts","../src/theme/build/renderColorTheme.ts","../src/theme/build/buildTheme.ts","../src/theme/themes/studio/config.ts","../src/theme/themes/studio/fonts.ts","../src/theme/themes/studio/studioTheme.ts"],"sourcesContent":["import {\n ThemeColorBase,\n ThemeColorMuted,\n ThemeColorSelectable,\n ThemeColorSelectableStates,\n ThemeColorSolid,\n} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\n\nexport function createSelectableTones(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n solid: ThemeColorSolid,\n muted: ThemeColorMuted,\n): ThemeColorSelectable {\n return {\n default: _createSelectableStates(opts, base, dark, solid, muted, 'default'),\n primary: _createSelectableStates(opts, base, dark, solid, muted, 'primary'),\n positive: _createSelectableStates(opts, base, dark, solid, muted, 'positive'),\n caution: _createSelectableStates(opts, base, dark, solid, muted, 'caution'),\n critical: _createSelectableStates(opts, base, dark, solid, muted, 'critical'),\n }\n}\n\nfunction _createSelectableStates(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n solid: ThemeColorSolid,\n muted: ThemeColorMuted,\n tone: 'default' | 'primary' | 'positive' | 'caution' | 'critical',\n): ThemeColorSelectableStates {\n return {\n enabled: opts.selectable({\n base,\n dark,\n solid,\n muted,\n state: 'enabled',\n tone,\n }),\n hovered: opts.selectable({\n base,\n dark,\n solid,\n muted,\n state: 'hovered',\n tone,\n }),\n pressed: opts.selectable({\n base,\n dark,\n solid,\n muted,\n state: 'pressed',\n tone,\n }),\n selected: opts.selectable({\n base,\n dark,\n solid,\n muted,\n state: 'selected',\n tone,\n }),\n disabled: opts.selectable({\n base,\n dark,\n solid,\n muted,\n state: 'disabled',\n tone,\n }),\n }\n}\n","import {ThemeColorBase, ThemeColorSolid, ThemeColorName} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\n\nexport function createSolidTones(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n name: ThemeColorName,\n): ThemeColorSolid {\n return {\n default: {\n enabled: opts.solid({base, dark, tone: 'default', name, state: 'enabled'}),\n disabled: opts.solid({base, dark, tone: 'default', name, state: 'disabled'}),\n hovered: opts.solid({base, dark, tone: 'default', name, state: 'hovered'}),\n pressed: opts.solid({base, dark, tone: 'default', name, state: 'pressed'}),\n selected: opts.solid({base, dark, tone: 'default', name, state: 'selected'}),\n },\n transparent: {\n enabled: opts.solid({base, dark, tone: 'transparent', name, state: 'enabled'}),\n disabled: opts.solid({base, dark, tone: 'transparent', name, state: 'disabled'}),\n hovered: opts.solid({base, dark, tone: 'transparent', name, state: 'hovered'}),\n pressed: opts.solid({base, dark, tone: 'transparent', name, state: 'pressed'}),\n selected: opts.solid({base, dark, tone: 'transparent', name, state: 'selected'}),\n },\n primary: {\n enabled: opts.solid({base, dark, tone: 'primary', name, state: 'enabled'}),\n disabled: opts.solid({base, dark, tone: 'primary', name, state: 'disabled'}),\n hovered: opts.solid({base, dark, tone: 'primary', name, state: 'hovered'}),\n pressed: opts.solid({base, dark, tone: 'primary', name, state: 'pressed'}),\n selected: opts.solid({base, dark, tone: 'primary', name, state: 'selected'}),\n },\n positive: {\n enabled: opts.solid({base, dark, tone: 'positive', name, state: 'enabled'}),\n disabled: opts.solid({base, dark, tone: 'positive', name, state: 'disabled'}),\n hovered: opts.solid({base, dark, tone: 'positive', name, state: 'hovered'}),\n pressed: opts.solid({base, dark, tone: 'positive', name, state: 'pressed'}),\n selected: opts.solid({base, dark, tone: 'positive', name, state: 'selected'}),\n },\n caution: {\n enabled: opts.solid({base, dark, tone: 'caution', name, state: 'enabled'}),\n disabled: opts.solid({base, dark, tone: 'caution', name, state: 'disabled'}),\n hovered: opts.solid({base, dark, tone: 'caution', name, state: 'hovered'}),\n pressed: opts.solid({base, dark, tone: 'caution', name, state: 'pressed'}),\n selected: opts.solid({base, dark, tone: 'caution', name, state: 'selected'}),\n },\n critical: {\n enabled: opts.solid({base, dark, tone: 'critical', name, state: 'enabled'}),\n disabled: opts.solid({base, dark, tone: 'critical', name, state: 'disabled'}),\n hovered: opts.solid({base, dark, tone: 'critical', name, state: 'hovered'}),\n pressed: opts.solid({base, dark, tone: 'critical', name, state: 'pressed'}),\n selected: opts.solid({base, dark, tone: 'critical', name, state: 'selected'}),\n },\n }\n}\n","import {\n ThemeColorBase,\n ThemeColorButtonModeKey,\n ThemeColorButtonTones,\n ThemeColorMuted,\n ThemeColorSolid,\n} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\n\nexport function createButtonTones(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n solid: ThemeColorSolid,\n muted: ThemeColorMuted,\n mode: ThemeColorButtonModeKey,\n): ThemeColorButtonTones {\n return {\n default: opts.button({\n base,\n dark,\n solid: solid.default,\n muted: muted.default,\n mode,\n }),\n primary: opts.button({\n base,\n dark,\n solid: solid.primary,\n muted: muted.primary,\n mode,\n }),\n positive: opts.button({\n base,\n dark,\n solid: solid.positive,\n muted: muted.positive,\n mode,\n }),\n caution: opts.button({\n base,\n dark,\n solid: solid.caution,\n muted: muted.caution,\n mode,\n }),\n critical: opts.button({\n base,\n dark,\n solid: solid.critical,\n muted: muted.critical,\n mode,\n }),\n }\n}\n","import {\n ThemeColorBase,\n ThemeColorButton,\n ThemeColorMuted,\n ThemeColorSolid,\n} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\nimport {createButtonTones} from './createButtonTones'\n\nexport function createButtonModes(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n solid: ThemeColorSolid,\n muted: ThemeColorMuted,\n): ThemeColorButton {\n return {\n default: createButtonTones(opts, base, dark, solid, muted, 'default'),\n ghost: createButtonTones(opts, base, dark, solid, muted, 'ghost'),\n bleed: createButtonTones(opts, base, dark, solid, muted, 'bleed'),\n }\n}\n","import {\n ThemeColorBase,\n ThemeColorCard,\n ThemeColorMuted,\n ThemeColorSolid,\n ThemeColorName,\n} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\n\nexport function createCardStates(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n name: ThemeColorName,\n solid: ThemeColorSolid,\n muted: ThemeColorMuted,\n): ThemeColorCard {\n return {\n enabled: opts.card({\n base,\n dark,\n name,\n state: 'enabled',\n solid,\n muted,\n }),\n disabled: opts.card({\n base,\n dark,\n name,\n state: 'disabled',\n solid,\n muted,\n }),\n hovered: opts.card({\n base,\n dark,\n name,\n state: 'hovered',\n solid,\n muted,\n }),\n pressed: opts.card({\n base,\n dark,\n name,\n state: 'pressed',\n solid,\n muted,\n }),\n selected: opts.card({\n base,\n dark,\n name,\n state: 'selected',\n solid,\n muted,\n }),\n }\n}\n","import {ThemeColorBuilderOpts} from './factory'\n\nconst black = 'hsl(0, 0%, 0%)'\nconst white = 'hsl(0, 0%, 100%)'\n\nconst colors = {\n default: {\n lightest: 'hsl(0, 0%, 95%)',\n lighter: 'hsl(0, 0%, 70%)',\n light: 'hsl(0, 0%, 65%)',\n base: 'hsl(0, 0%, 50%)',\n dark: 'hsl(0, 0%, 35%)',\n darker: 'hsl(0, 0%, 20%)',\n darkest: 'hsl(0, 0%, 5%)',\n },\n transparent: {\n lightest: 'hsl(240, 100%, 95%)',\n lighter: 'hsl(240, 100%, 70%)',\n light: 'hsl(240, 100%, 65%)',\n base: 'hsl(240, 100%, 50%)',\n dark: 'hsl(240, 100%, 35%)',\n darker: 'hsl(240, 100%, 20%)',\n darkest: 'hsl(240, 100%, 5%)',\n },\n primary: {\n lightest: 'hsl(240, 100%, 95%)',\n lighter: 'hsl(240, 100%, 70%)',\n light: 'hsl(240, 100%, 65%)',\n base: 'hsl(240, 100%, 50%)',\n dark: 'hsl(240, 100%, 35%)',\n darker: 'hsl(240, 100%, 20%)',\n darkest: 'hsl(240, 100%, 5%)',\n },\n positive: {\n lightest: 'hsl(120, 100%, 95%)',\n lighter: 'hsl(120, 100%, 70%)',\n light: 'hsl(120, 100%, 65%)',\n base: 'hsl(120, 100%, 50%)',\n dark: 'hsl(120, 100%, 35%)',\n darker: 'hsl(120, 100%, 20%)',\n darkest: 'hsl(120, 100%, 5%)',\n },\n caution: {\n lightest: 'hsl(60, 100%, 95%)',\n lighter: 'hsl(60, 100%, 70%)',\n light: 'hsl(60, 100%, 65%)',\n base: 'hsl(60, 100%, 50%)',\n dark: 'hsl(60, 100%, 35%)',\n darker: 'hsl(60, 100%, 20%)',\n darkest: 'hsl(60, 100%, 5%)',\n },\n critical: {\n lightest: 'hsl(0, 100%, 95%)',\n lighter: 'hsl(0, 100%, 70%)',\n light: 'hsl(0, 100%, 65%)',\n base: 'hsl(0, 100%, 50%)',\n dark: 'hsl(0, 100%, 35%)',\n darker: 'hsl(0, 100%, 20%)',\n darkest: 'hsl(0, 100%, 5%)',\n },\n}\n\nconst spots = {\n gray: 'hsl(0, 0%, 50%)',\n red: 'hsl(0, 100%, 50%)',\n orange: 'hsl(30, 100%, 50%)',\n yellow: 'hsl(60, 100%, 50%)',\n green: 'hsl(120, 100%, 50%)',\n cyan: 'hsl(180, 100%, 50%)',\n blue: 'hsl(240, 100%, 50%)',\n purple: 'hsl(270, 100%, 50%)',\n magenta: 'hsl(300, 100%, 50%)',\n}\n\nconst tones = {\n transparent: {\n bg: [colors.transparent.darkest, colors.transparent.lightest],\n fg: [colors.transparent.lightest, colors.transparent.darkest],\n border: [colors.transparent.darker, colors.transparent.lighter],\n focusRing: [colors.transparent.base, colors.transparent.base],\n },\n primary: {\n bg: [colors.primary.darkest, colors.primary.lightest],\n fg: [colors.primary.lightest, colors.primary.darkest],\n border: [colors.primary.darker, colors.primary.lighter],\n focusRing: [colors.primary.base, colors.primary.base],\n },\n positive: {\n bg: [colors.positive.darkest, colors.positive.lightest],\n fg: [colors.positive.lightest, colors.positive.darkest],\n border: [colors.positive.darker, colors.positive.lighter],\n focusRing: [colors.positive.base, colors.positive.base],\n },\n caution: {\n bg: [colors.caution.darkest, colors.caution.lightest],\n fg: [colors.caution.lightest, colors.caution.darkest],\n border: [colors.caution.darker, colors.caution.lighter],\n focusRing: [colors.caution.base, colors.caution.base],\n },\n critical: {\n bg: [colors.critical.darkest, colors.critical.lightest],\n fg: [colors.critical.lightest, colors.critical.darkest],\n border: [colors.critical.darker, colors.critical.lighter],\n focusRing: [colors.critical.base, colors.critical.base],\n },\n}\n\nexport const defaultOpts: ThemeColorBuilderOpts = {\n base: ({dark, name}) => {\n if (name === 'default') {\n return {\n bg: dark ? black : white,\n fg: dark ? white : black,\n border: dark ? colors.default.darkest : colors.default.lightest,\n focusRing: colors.primary.base,\n shadow: {\n outline: black,\n umbra: black,\n penumbra: black,\n ambient: black,\n },\n skeleton: {\n from: dark ? white : black,\n to: dark ? white : black,\n },\n }\n }\n\n // Variants:\n // - primary\n // - positive\n // - caution\n // - critical\n return {\n bg: tones[name].bg[dark ? 0 : 1],\n fg: tones[name].fg[dark ? 0 : 1],\n border: tones[name].border[dark ? 0 : 1],\n focusRing: tones[name].focusRing[dark ? 0 : 1],\n shadow: {\n outline: black,\n umbra: black,\n penumbra: black,\n ambient: black,\n },\n skeleton: {\n from: dark ? white : black,\n to: dark ? white : black,\n },\n }\n },\n\n solid: ({base, dark, state, tone}) => {\n const color = colors[tone]\n\n if (state === 'hovered') {\n return {\n bg: dark ? color.light : color.dark,\n bg2: dark ? color.light : color.dark,\n border: dark ? color.lighter : color.darker,\n fg: dark ? color.darkest : color.lightest,\n icon: dark ? color.darkest : color.lightest,\n muted: {\n fg: black,\n },\n accent: {\n fg: black,\n },\n link: {\n fg: black,\n },\n code: {\n bg: black,\n fg: black,\n },\n skeleton: base.skeleton,\n }\n }\n\n return {\n bg: color.base,\n bg2: color.base,\n border: dark ? color.light : color.dark,\n fg: dark ? color.darkest : color.lightest,\n icon: dark ? color.darkest : color.lightest,\n muted: {\n fg: black,\n },\n accent: {\n fg: black,\n },\n link: {\n fg: black,\n },\n code: {\n bg: black,\n fg: black,\n },\n skeleton: base.skeleton,\n }\n },\n\n muted: ({base, dark, state, tone}) => {\n const color = colors[tone]\n\n if (state === 'hovered') {\n return {\n bg: dark ? color.darker : color.lighter,\n bg2: dark ? color.darker : color.lighter,\n border: dark ? color.lighter : color.darker,\n fg: dark ? color.lightest : color.darkest,\n icon: dark ? color.lightest : color.darkest,\n muted: {\n fg: black,\n },\n accent: {\n fg: black,\n },\n link: {\n fg: black,\n },\n code: {\n bg: black,\n fg: black,\n },\n skeleton: base.skeleton,\n }\n }\n\n return {\n bg: dark ? color.darkest : color.lightest,\n bg2: dark ? color.darkest : color.lightest,\n border: dark ? color.darker : color.lighter,\n fg: dark ? color.lighter : color.darker,\n icon: dark ? color.lighter : color.darker,\n muted: {\n fg: black,\n },\n accent: {\n fg: black,\n },\n link: {\n fg: black,\n },\n code: {\n bg: black,\n fg: black,\n },\n skeleton: base.skeleton,\n }\n },\n\n button: ({base, mode, muted, solid}) => {\n if (mode === 'bleed') {\n return {\n ...muted,\n enabled: {\n bg: 'transparent',\n bg2: 'transparent',\n fg: muted.enabled.fg,\n icon: muted.enabled.fg,\n border: 'transparent',\n muted: {\n fg: black,\n },\n accent: {\n fg: black,\n },\n link: {\n fg: black,\n },\n code: {\n bg: black,\n fg: black,\n },\n skeleton: base.skeleton,\n },\n hovered: {\n bg: muted.enabled.bg,\n bg2: muted.enabled.bg,\n fg: muted.hovered.fg,\n icon: muted.hovered.fg,\n border: 'transparent',\n muted: {\n fg: black,\n },\n accent: {\n fg: black,\n },\n link: {\n fg: black,\n },\n code: {\n bg: black,\n fg: black,\n },\n skeleton: base.skeleton,\n },\n }\n }\n\n if (mode === 'ghost')\n return {\n ...solid,\n enabled: muted.enabled,\n }\n\n return solid\n },\n\n card: ({base}) => {\n return {\n bg: black,\n bg2: black,\n fg: black,\n icon: black,\n border: black,\n muted: {\n fg: black,\n },\n accent: {\n fg: black,\n },\n link: {\n fg: black,\n },\n code: {\n bg: black,\n fg: black,\n },\n skeleton: base.skeleton,\n }\n },\n\n input: () => {\n return {\n bg: black,\n bg2: black,\n fg: black,\n border: black,\n placeholder: black,\n }\n },\n\n selectable: ({muted, state, tone}) => {\n return muted[tone][state]\n },\n\n spot: ({key}) => {\n return spots[key]\n },\n\n syntax: () => ({\n atrule: black,\n attrName: black,\n attrValue: black,\n attribute: black,\n boolean: black,\n builtin: black,\n cdata: black,\n char: black,\n class: black,\n className: black,\n comment: black,\n constant: black,\n deleted: black,\n doctype: black,\n entity: black,\n function: black,\n hexcode: black,\n id: black,\n important: black,\n inserted: black,\n keyword: black,\n number: black,\n operator: black,\n prolog: black,\n property: black,\n pseudoClass: black,\n pseudoElement: black,\n punctuation: black,\n regex: black,\n selector: black,\n string: black,\n symbol: black,\n tag: black,\n unit: black,\n url: black,\n variable: black,\n }),\n}\n","import {ThemeColorBase, ThemeColorInput, ThemeColorMuted, ThemeColorSolid} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\n\nexport function createInputModes(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n solid: ThemeColorSolid,\n muted: ThemeColorMuted,\n): ThemeColorInput {\n return {\n default: {\n enabled: opts.input({\n base,\n dark,\n mode: 'default',\n state: 'enabled',\n solid: solid.default,\n muted: muted.default,\n }),\n disabled: opts.input({\n base,\n dark,\n mode: 'default',\n state: 'disabled',\n solid: solid.default,\n muted: muted.default,\n }),\n hovered: opts.input({\n base,\n dark,\n mode: 'default',\n state: 'hovered',\n solid: solid.default,\n muted: muted.default,\n }),\n readOnly: opts.input({\n base,\n dark,\n mode: 'default',\n state: 'readOnly',\n solid: solid.default,\n muted: muted.default,\n }),\n },\n invalid: {\n enabled: opts.input({\n base,\n dark,\n mode: 'invalid',\n state: 'enabled',\n solid: solid.default,\n muted: muted.default,\n }),\n disabled: opts.input({\n base,\n dark,\n mode: 'invalid',\n state: 'disabled',\n solid: solid.default,\n muted: muted.default,\n }),\n hovered: opts.input({\n base,\n dark,\n mode: 'invalid',\n state: 'hovered',\n solid: solid.default,\n muted: muted.default,\n }),\n readOnly: opts.input({\n base,\n dark,\n mode: 'invalid',\n state: 'readOnly',\n solid: solid.default,\n muted: muted.default,\n }),\n },\n }\n}\n","import {ThemeColorBase, ThemeColorBaseToneKey, ThemeColorMuted} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\n\nexport function createMutedTones(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n name: ThemeColorBaseToneKey,\n): ThemeColorMuted {\n return {\n default: {\n enabled: opts.muted({base, dark, tone: 'default', name, state: 'enabled'}),\n disabled: opts.muted({base, dark, tone: 'default', name, state: 'disabled'}),\n hovered: opts.muted({base, dark, tone: 'default', name, state: 'hovered'}),\n pressed: opts.muted({base, dark, tone: 'default', name, state: 'pressed'}),\n selected: opts.muted({base, dark, tone: 'default', name, state: 'selected'}),\n },\n transparent: {\n enabled: opts.muted({base, dark, tone: 'transparent', name, state: 'enabled'}),\n disabled: opts.muted({base, dark, tone: 'transparent', name, state: 'disabled'}),\n hovered: opts.muted({base, dark, tone: 'transparent', name, state: 'hovered'}),\n pressed: opts.muted({base, dark, tone: 'transparent', name, state: 'pressed'}),\n selected: opts.muted({base, dark, tone: 'transparent', name, state: 'selected'}),\n },\n primary: {\n enabled: opts.muted({base, dark, tone: 'primary', name, state: 'enabled'}),\n disabled: opts.muted({base, dark, tone: 'primary', name, state: 'disabled'}),\n hovered: opts.muted({base, dark, tone: 'primary', name, state: 'hovered'}),\n pressed: opts.muted({base, dark, tone: 'primary', name, state: 'pressed'}),\n selected: opts.muted({base, dark, tone: 'primary', name, state: 'selected'}),\n },\n positive: {\n enabled: opts.muted({base, dark, tone: 'positive', name, state: 'enabled'}),\n disabled: opts.muted({base, dark, tone: 'positive', name, state: 'disabled'}),\n hovered: opts.muted({base, dark, tone: 'positive', name, state: 'hovered'}),\n pressed: opts.muted({base, dark, tone: 'positive', name, state: 'pressed'}),\n selected: opts.muted({base, dark, tone: 'positive', name, state: 'selected'}),\n },\n caution: {\n enabled: opts.muted({base, dark, tone: 'caution', name, state: 'enabled'}),\n disabled: opts.muted({base, dark, tone: 'caution', name, state: 'disabled'}),\n hovered: opts.muted({base, dark, tone: 'caution', name, state: 'hovered'}),\n pressed: opts.muted({base, dark, tone: 'caution', name, state: 'pressed'}),\n selected: opts.muted({base, dark, tone: 'caution', name, state: 'selected'}),\n },\n critical: {\n enabled: opts.muted({base, dark, tone: 'critical', name, state: 'enabled'}),\n disabled: opts.muted({base, dark, tone: 'critical', name, state: 'disabled'}),\n hovered: opts.muted({base, dark, tone: 'critical', name, state: 'hovered'}),\n pressed: opts.muted({base, dark, tone: 'critical', name, state: 'pressed'}),\n selected: opts.muted({base, dark, tone: 'critical', name, state: 'selected'}),\n },\n }\n}\n","import {ThemeColorBase, ThemeColorSpot} from '../../../../system'\nimport {ThemeColorBuilderOpts} from '../factory'\n\nexport function createSpot(\n opts: ThemeColorBuilderOpts,\n base: ThemeColorBase,\n dark: boolean,\n): ThemeColorSpot {\n return {\n gray: opts.spot({base, dark, key: 'gray'}),\n blue: opts.spot({base, dark, key: 'blue'}),\n purple: opts.spot({base, dark, key: 'purple'}),\n magenta: opts.spot({base, dark, key: 'magenta'}),\n red: opts.spot({base, dark, key: 'red'}),\n orange: opts.spot({base, dark, key: 'orange'}),\n yellow: opts.spot({base, dark, key: 'yellow'}),\n green: opts.spot({base, dark, key: 'green'}),\n cyan: opts.spot({base, dark, key: 'cyan'}),\n }\n}\n","import {\n ThemeColorGenericState,\n ThemeColorBase,\n ThemeColorButtonModeKey,\n ThemeColorButtonStates,\n ThemeColorInputState,\n ThemeColorMuted,\n ThemeColorMutedTone,\n ThemeColorSolid,\n ThemeColorSolidTone,\n ThemeColorSyntax,\n ThemeColorName,\n ThemeColorScheme,\n ThemeColorSchemes,\n ThemeColor,\n ThemeColorToneKey,\n ThemeColorSpotKey,\n} from '../../../system'\nimport {createSelectableTones} from './_selectable/createSelectableTones'\nimport {createSolidTones} from './_solid/createSolidTones'\nimport {createButtonModes} from './button/createButtonModes'\nimport {createCardStates} from './card/createCardStates'\nimport {defaultOpts} from './defaults'\nimport {createInputModes} from './input/createInputModes'\nimport {createMutedTones} from './muted/createMuted'\nimport {createSpot} from './spot/createSpot'\n\n/**\n * @public\n * @deprecated\n */\nexport interface ThemeColorBuilderOpts {\n base: (opts: {dark: boolean; name: ThemeColorName}) => ThemeColorBase\n solid: (opts: {\n base: ThemeColorBase\n dark: boolean\n tone: ThemeColorToneKey\n name: ThemeColorName\n state: 'enabled' | 'disabled' | 'hovered' | 'pressed' | 'selected'\n }) => ThemeColorGenericState\n muted: (opts: {\n base: ThemeColorBase\n dark: boolean\n tone: ThemeColorToneKey\n name: ThemeColorName\n state: 'enabled' | 'disabled' | 'hovered' | 'pressed' | 'selected'\n }) => ThemeColorGenericState\n card: (opts: {\n base: ThemeColorBase\n dark: boolean\n muted: ThemeColorMuted\n name: ThemeColorName\n solid: ThemeColorSolid\n state: 'enabled' | 'disabled' | 'hovered' | 'pressed' | 'selected'\n }) => ThemeColorGenericState\n button: (opts: {\n dark: boolean\n mode: ThemeColorButtonModeKey\n base: ThemeColorBase\n solid: ThemeColorSolidTone\n muted: ThemeColorMutedTone\n }) => ThemeColorButtonStates\n input: (opts: {\n base: ThemeColorBase\n solid: ThemeColorSolidTone\n muted: ThemeColorMutedTone\n dark: boolean\n mode: 'default' | 'invalid'\n state: 'enabled' | 'disabled' | 'hovered' | 'readOnly'\n }) => ThemeColorInputState\n selectable: (opts: {\n dark: boolean\n base: ThemeColorBase\n solid: ThemeColorSolid\n muted: ThemeColorMuted\n state: 'enabled' | 'disabled' | 'hovered' | 'pressed' | 'selected'\n tone: 'default' | 'primary' | 'positive' | 'caution' | 'critical'\n }) => ThemeColorGenericState\n syntax: (opts: {base: ThemeColorBase; dark: boolean}) => ThemeColorSyntax\n spot: (opts: {base: ThemeColorBase; dark: boolean; key: ThemeColorSpotKey}) => string\n}\n\n/**\n * @public\n * @deprecated\n */\nexport type PartialThemeColorBuilderOpts = Partial<ThemeColorBuilderOpts>\n\n/**\n * @public\n * @deprecated Use `buildTheme` instead\n */\nexport function createColorTheme(\n partialOpts: PartialThemeColorBuilderOpts = {},\n): ThemeColorSchemes {\n const builders: ThemeColorBuilderOpts = {...defaultOpts, ...partialOpts}\n\n return {\n light: _createColorScheme(builders, false),\n dark: _createColorScheme(builders, true),\n }\n}\n\n/**\n * @internal\n */\nfunction _createColorScheme(opts: ThemeColorBuilderOpts, dark: boolean): ThemeColorScheme {\n return {\n default: _createColor(opts, dark, 'default'),\n transparent: _createColor(opts, dark, 'transparent'),\n primary: _createColor(opts, dark, 'primary'),\n positive: _createColor(opts, dark, 'positive'),\n caution: _createColor(opts, dark, 'caution'),\n critical: _createColor(opts, dark, 'critical'),\n }\n}\n\n/**\n * @internal\n */\nfunction _createColor(\n opts: ThemeColorBuilderOpts,\n dark: boolean,\n name: ThemeColorName,\n): ThemeColor {\n const base = opts.base({dark, name})\n const solid = createSolidTones(opts, base, dark, name)\n const muted = createMutedTones(opts, base, dark, name)\n\n return {\n base,\n button: createButtonModes(opts, base, dark, solid, muted),\n card: createCardStates(opts, base, dark, name, solid, muted),\n dark,\n input: createInputModes(opts, base, dark, solid, muted),\n selectable: createSelectableTones(opts, base, dark, solid, muted),\n spot: createSpot(opts, base, dark),\n syntax: opts.syntax({base, dark}),\n solid,\n muted,\n }\n}\n","import {COLOR_HUES} from '@sanity/color'\n\n/** @internal */\nexport const THEME_COLOR_BLEND_MODES = ['multiply', 'screen'] as const\n\n/** @internal */\nexport const THEME_COLOR_BASE_TONES = [\n 'transparent',\n 'default',\n 'primary', // todo: rename to `accent`\n 'positive',\n 'caution',\n 'critical',\n] as const\n\n/** @internal */\nexport const THEME_COLOR_STATE_TONES = [\n 'default',\n 'primary', // todo: rename to `accent`\n 'positive',\n 'caution',\n 'critical',\n] as const\n\n/** @internal */\nexport const THEME_COLOR_STATES = ['enabled', 'hovered', 'pressed', 'selected', 'disabled'] as const\n\n/** @internal */\nexport const THEME_COLOR_BUTTON_MODES = ['default', 'ghost', 'bleed'] as const\n\n/** @internal */\nexport const THEME_COLOR_INPUT_MODES = ['default', 'invalid'] as const\n\n/** @internal */\nexport const THEME_COLOR_INPUT_STATES = ['enabled', 'hovered', 'readOnly', 'disabled'] as const\n\n/** @internal */\nexport const THEME_COLOR_AVATAR_COLORS = COLOR_HUES\n","import {COLOR_HUES, COLOR_TINTS, ColorHueKey, ColorTintKey} from '@sanity/color'\nimport {THEME_COLOR_BLEND_MODES, THEME_COLOR_BUTTON_MODES} from './_constants'\nimport {ThemeColorBlendModeKey, ThemeColorButtonModeKey} from './_system'\n\n/** @internal */\nexport function isColorBlendModeValue(str: string): str is ThemeColorBlendModeKey {\n return THEME_COLOR_BLEND_MODES.includes(str as ThemeColorBlendModeKey)\n}\n\n/** @internal */\nexport function isColorHueKey(str: string): str is ColorHueKey {\n return COLOR_HUES.includes(str as ColorHueKey)\n}\n\n/** @internal */\nexport function isColorTintKey(str: string): str is ColorTintKey {\n return COLOR_TINTS.includes(str as ColorTintKey)\n}\n\n/** @internal */\nexport function isColorButtonMode(str: string): str is ThemeColorButtonModeKey {\n return THEME_COLOR_BUTTON_MODES.includes(str as ThemeColorButtonModeKey)\n}\n","import {ColorHueKey, ColorTintKey} from '@sanity/color'\nimport {\n THEME_COLOR_AVATAR_COLORS,\n THEME_COLOR_BASE_TONES,\n THEME_COLOR_INPUT_MODES,\n THEME_COLOR_INPUT_STATES,\n THEME_COLOR_STATES,\n THEME_COLOR_STATE_TONES,\n ThemeColorBlendModeKey,\n} from '../system'\n\nexport const COLOR_CONFIG_BASE_KEYS = [\n '_hue',\n 'bg',\n 'fg',\n 'border',\n 'focusRing',\n 'muted/fg',\n 'link/fg',\n 'code/bg',\n 'code/fg',\n 'shadow/outline',\n 'shadow/umbra',\n 'shadow/penumbra',\n 'shadow/ambient',\n 'skeleton/from',\n 'skeleton/to',\n] as const\nexport type ColorConfigBaseKey = (typeof COLOR_CONFIG_BASE_KEYS)[number]\n\nexport const COLOR_CONFIG_STATE_KEYS = [\n '_hue',\n 'bg',\n 'fg',\n 'border',\n 'focusRing',\n 'muted/fg',\n 'link/fg',\n 'code/bg',\n 'code/fg',\n 'skeleton/from',\n 'skeleton/to',\n] as const\nexport type ColorConfigStateKey = (typeof COLOR_CONFIG_STATE_KEYS)[number]\n\nexport const COLOR_CONFIG_BLEND_KEYS = ['_blend'] as const\nexport type ColorConfigBlendKey = (typeof COLOR_CONFIG_BLEND_KEYS)[number]\n\nexport type ColorConfigOpacityValue = `0` | `0.${number}` | `1`\n\nexport type ColorConfigValue =\n | `black`\n | `white`\n | `black/${ColorConfigOpacityValue}`\n | `white/${ColorConfigOpacityValue}`\n | `${ColorHueKey}`\n | `${ColorHueKey}/${ColorTintKey}`\n | `${ColorHueKey}/${ColorTintKey}/${ColorConfigOpacityValue}`\n | `${ColorTintKey}`\n | `${ColorTintKey}/${ColorConfigOpacityValue}`\n | ThemeColorBlendModeKey\n\nexport type ThemeColorTokenValue = [ColorConfigValue, ColorConfigValue]\n\nexport type ColorBlendModeTokenValue = [ThemeColorBlendModeKey, ThemeColorBlendModeKey]\n\nexport const COLOR_CONFIG_AVATAR_COLORS = ['*', ...THEME_COLOR_AVATAR_COLORS] as const\nexport type ColorConfigAvatarColor = (typeof COLOR_CONFIG_AVATAR_COLORS)[number]\n\nexport const COLOR_CONFIG_BASE_TONES = ['*', ...THEME_COLOR_BASE_TONES] as const\nexport type ColorConfigBaseTone = (typeof COLOR_CONFIG_BASE_TONES)[number]\n\nexport const COLOR_CONFIG_STATE_TONES = ['*', ...THEME_COLOR_STATE_TONES] as const\nexport type ColorConfigStateTone = (typeof COLOR_CONFIG_STATE_TONES)[number]\n\nexport const COLOR_CONFIG_STATES = ['*', ...THEME_COLOR_STATES] as const\nexport type ColorConfigState = (typeof COLOR_CONFIG_STATES)[number]\n\nexport const COLOR_CONFIG_INPUT_MODES = ['*', ...THEME_COLOR_INPUT_MODES] as const\nexport type ColorConfigInputMode = (typeof COLOR_CONFIG_INPUT_MODES)[number]\n\nexport const COLOR_CONFIG_INPUT_STATES = ['*', ...THEME_COLOR_INPUT_STATES] as const\nexport type ColorConfigInputState = (typeof COLOR_CONFIG_INPUT_STATES)[number]\n","import {isColorButtonMode} from '../../system'\nimport {\n isColorConfigBaseKey,\n isColorConfigBaseTone,\n isColorConfigBlendKey,\n isColorConfigStateKey,\n isColorConfigStateTone,\n} from '../helpers'\nimport {TokenKeyNode} from './types'\n\nexport function parseTokenKey(str: string): TokenKeyNode | undefined {\n const segments = str.split('/')\n const segment0 = segments.shift() || ''\n\n if (isColorConfigBaseTone(segment0)) {\n const key = segments.join('/')\n\n if (isColorConfigBaseKey(key)) {\n return {\n type: 'base',\n tone: segment0,\n key,\n }\n }\n\n if (isColorConfigBlendKey(key)) {\n return {\n type: 'base',\n tone: segment0,\n key,\n }\n }\n }\n\n if (segment0 === 'button') {\n const segment1 = segments.shift() || ''\n\n if (isColorConfigStateTone(segment1)) {\n const segment2 = segments.shift() || ''\n\n if (isColorButtonMode(segment2)) {\n const key = segments.join('/')\n\n if (isColorConfigStateKey(key)) {\n return {\n type: 'button',\n tone: segment1,\n mode: segment2,\n key,\n }\n }\n\n if (isColorConfigBlendKey(key)) {\n return {\n type: 'button',\n tone: segment1,\n mode: segment2,\n key,\n }\n }\n }\n }\n }\n\n return undefined\n}\n","import {isColorBlendModeValue, isColorHueKey, isColorTintKey} from '../../system'\nimport {isColorOpacityValue, isColorValue} from '../helpers'\nimport {TokenValueNode} from './types'\n\nexport function parseTokenValue(str: string): TokenValueNode | undefined {\n const segments = str.split('/')\n const segment0 = segments.shift() || ''\n\n if (isColorTintKey(segment0)) {\n const tint = segment0\n const segment1 = segments.shift() || ''\n\n if (isColorOpacityValue(segment1)) {\n const opacity = Number(segment1)\n\n return {\n type: 'color',\n tint,\n opacity,\n }\n }\n\n return {\n type: 'color',\n tint,\n }\n }\n\n if (isColorValue(segment0)) {\n const key = segment0 as 'black' | 'white'\n const segment1 = segments.shift() || ''\n\n if (isColorOpacityValue(segment1)) {\n const opacity = Number(segment1)\n\n return {\n type: 'color',\n key,\n opacity,\n }\n }\n\n return {\n type: 'color',\n key,\n }\n }\n\n if (isColorHueKey(segment0)) {\n const hue = segment0\n const segment1 = segments.shift() || ''\n\n if (isColorTintKey(segment1)) {\n const tint = segment1\n const segment2 = segments.shift() || ''\n\n if (isColorOpacityValue(segment2)) {\n const opacity = Number(segment2)\n\n return {\n type: 'color',\n key: `${hue}/${tint}`,\n hue,\n tint,\n opacity,\n }\n }\n\n return {\n type: 'color',\n key: `${hue}/${tint}`,\n hue,\n tint,\n }\n }\n\n return {\n type: 'hue',\n value: `${hue}`,\n }\n }\n\n if (isColorOpacityValue(segment0)) {\n const opacity = Number(segment0)\n\n return {\n type: 'color',\n opacity,\n }\n }\n\n if (isColorBlendModeValue(segment0)) {\n const value = segment0\n\n return {\n type: 'blendMode',\n value,\n }\n }\n\n return undefined\n}\n","import {\n COLOR_CONFIG_BASE_KEYS,\n COLOR_CONFIG_BASE_TONES,\n COLOR_CONFIG_BLEND_KEYS,\n COLOR_CONFIG_STATE_KEYS,\n COLOR_CONFIG_STATE_TONES,\n ColorConfigBaseKey,\n ColorConfigBaseTone,\n ColorConfigBlendKey,\n ColorConfigOpacityValue,\n ColorConfigStateKey,\n ColorConfigStateTone,\n ColorConfigValue,\n} from './system'\nimport {parseTokenValue} from './tokens'\n\nexport function isColorConfigBaseTone(str: string): str is ColorConfigBaseTone {\n return COLOR_CONFIG_BASE_TONES.includes(str as ColorConfigBaseTone)\n}\n\nexport function isColorConfigBaseKey(str: string): str is ColorConfigBaseKey {\n return COLOR_CONFIG_BASE_KEYS.includes(str as ColorConfigBaseKey)\n}\n\nexport function isColorConfigStateKey(str: string): str is ColorConfigStateKey {\n return COLOR_CONFIG_STATE_KEYS.includes(str as ColorConfigStateKey)\n}\n\nexport function isColorConfigStateTone(str: string): str is ColorConfigStateTone {\n return COLOR_CONFIG_STATE_TONES.includes(str as ColorConfigStateTone)\n}\n\nexport function isColorConfigBlendKey(str: string): str is ColorConfigBlendKey {\n return COLOR_CONFIG_BLEND_KEYS.includes(str as ColorConfigBlendKey)\n}\n\nexport function isColorTokenValue(str: string): str is ColorConfigValue {\n return parseTokenValue(str)?.type === 'color' || parseTokenValue(str)?.type === 'hue'\n}\n\nexport function isColorValue(str: string): str is 'black' | 'white' {\n return str === 'black' || str === 'white'\n}\n\nexport function isColorOpacityValue(str: string): str is ColorConfigOpacityValue {\n return str === '0' || /^0\\.[0-9]+$/.test(str) || str === '1'\n}\n","import {ColorHueKey} from '@sanity/color'\nimport {ThemeColorTokenValue, parseTokenValue, TokenColorValueNode} from '../config'\n\nexport interface ColorTokenContext {\n hue: ColorHueKey\n scheme: 'light' | 'dark'\n}\n\nexport function resolveColorTokenValue(\n context: ColorTokenContext,\n value: ThemeColorTokenValue,\n): string {\n const {hue, scheme} = context\n const node = parseTokenValue(value[scheme === 'light' ? 0 : 1])\n\n if (!node || node.type !== 'color') {\n throw new Error(`Invalid color token: ${value[0]}`)\n }\n\n return compileColorTokenValue({...node, hue: node.hue || hue})\n}\n\nexport function compileColorTokenValue(node: TokenColorValueNode): string {\n let key = ''\n\n if (node.key === 'black' || node.key === 'white') {\n key = node.key\n } else {\n key = `${node.hue}/${node.tint}`\n }\n\n if (node.opacity !== undefined) {\n key += `/${node.opacity}`\n }\n\n return key\n}\n","import {ThemeColorTokens} from '../../config'\n\nexport const defaultColorTokens: ThemeColorTokens = {\n avatar: {\n '*': {\n _blend: ['screen', 'multiply'],\n _hue: 'gray',\n bg: ['500', '400'],\n fg: ['white', 'black'],\n },\n blue: {_hue: 'blue'},\n purple: {_hue: 'purple'},\n magenta: {_hue: 'magenta'},\n red: {_hue: 'red'},\n orange: {_hue: 'orange'},\n yellow: {_hue: 'yellow', bg: ['600', '400']},\n green: {_hue: 'green', bg: ['600', '400']},\n cyan: {_hue: 'cyan', bg: ['600', '400']},\n },\n badge: {\n '*': {\n _blend: ['multiply', 'screen'],\n bg: ['100', '900'],\n fg: ['800', '200'],\n },\n },\n base: {\n '*': {\n _blend: ['multiply', 'screen'],\n bg: ['50', '950'],\n fg: ['800', '200'],\n border: ['200', '900'],\n focusRing: ['blue/500', 'blue/500'],\n shadow: {\n outline: ['500/0.3', '500/0.4'],\n umbra: ['gray/500/0.1', 'black/0.2'],\n penumbra: ['gray/500/0.07', 'black/0.14'],\n ambient: ['gray/500/0.06', 'black/0.12'],\n },\n skeleton: {\n from: ['100', '900'],\n to: ['100/0.5', '900/0.5'],\n },\n },\n transparent: {\n bg: ['50', 'black'],\n fg: ['600', '400'],\n },\n default: {\n bg: ['white', '950'],\n fg: ['black', '200'],\n },\n primary: {\n _hue: 'blue',\n },\n positive: {\n _hue: 'green',\n },\n caution: {\n _hue: 'yellow',\n },\n critical: {\n _hue: 'red',\n },\n },\n button: {\n default: {\n '*': {\n '*': {\n _blend: ['screen', 'multiply'],\n bg: ['500', '400'],\n bg2: ['900', '50'],\n fg: ['white', 'black'],\n icon: ['200', '900'],\n border: ['500/0', '400/0'],\n muted: {\n fg: ['200', '700'],\n },\n accent: {\n fg: ['purple/200', 'purple/700'],\n },\n link: {\n fg: ['blue/200', 'blue/700'],\n },\n code: {\n bg: ['500/0.2', '400/0.2'],\n fg: ['200', '700'],\n },\n skeleton: {\n from: ['900', '100'],\n to: ['900/0.5', '100/0.5'],\n },\n },\n hovered: {\n bg: ['600', '300'],\n border: ['600/0', '300/0'],\n },\n pressed: {\n bg: ['700', '200'],\n },\n selected: {\n bg: ['700', '200'],\n },\n disabled: {\n _hue: 'gray',\n bg: ['200', '900'],\n icon: ['white', 'black'],\n },\n },\n default: {\n '*': {\n bg: ['800', '200'],\n },\n hovered: {\n bg: ['900', '100'],\n },\n pressed: {\n bg: ['black', 'white'],\n },\n selected: {\n bg: ['black', 'white'],\n },\n },\n positive: {\n '*': {\n bg: ['600', '400'],\n },\n hovered: {\n bg: ['700', '300'],\n },\n pressed: {\n bg: ['800', '200'],\n },\n selected: {\n bg: ['800', '200'],\n },\n },\n caution: {\n '*': {\n bg: ['600', '400'],\n },\n hovered: {\n bg: ['700', '300'],\n },\n pressed: {\n bg: ['800', '200'],\n },\n selected: {\n bg: ['800', '200'],\n },\n },\n },\n ghost: {\n '*': {\n '*': {\n _blend: ['multiply', 'screen'],\n bg: ['50', '950'],\n bg2: ['100', '950'],\n fg: ['700', '400'],\n icon: ['600', '500'],\n border: ['200', '900'],\n muted: {\n fg: ['700/0.6', '400/0.6'],\n },\n accent: {\n fg: ['purple/700/0.6', 'purple/400/0.8'],\n },\n link: {\n fg: ['blue/700/0.6', 'blue/400/0.8'],\n },\n code: {\n bg: ['500/0.1', '400/0.1'],\n fg: ['700/0.6', '400/0.6'],\n },\n skeleton: {\n from: ['100', '900'],\n to: ['100/0.5', '900/0.5'],\n },\n },\n hovered: {\n bg: ['100', '900'],\n fg: ['700', '400'],\n },\n pressed: {\n bg: ['100', '900'],\n fg: ['800', '300'],\n },\n selected: {\n bg: ['100', '900'],\n fg: ['800', '300'],\n },\n disabled: {\n _hue: 'gray',\n fg: ['200', '900'],\n icon: ['200', '900'],\n border: ['100', '950'],\n muted: {\n fg: ['200/0.6', '900/0.6'],\n },\n accent: {\n fg: ['200/0.6', '900/0.6'],\n },\n link: {\n fg: ['200/0.6', '900/0.6'],\n },\n code: {\n bg: ['50/0.5', '950/0.5'],\n fg: ['200/0.6', '900/0.6'],\n },\n },\n },\n critical: {\n '*': {\n border: ['500/0.2', '900'],\n },\n },\n },\n bleed: {\n '*': {\n '*': {\n _blend: ['multiply', 'screen'],\n bg: ['white', 'black'],\n bg2: ['100', '950'],\n fg: ['700', '400'],\n icon: ['600', '500'],\n border: ['white/0', 'black/0'],\n muted: {\n fg: ['600', '300'],\n },\n accent: {\n fg: ['purple/600', 'purple/300'],\n },\n link: {\n fg: ['blue/600', 'blue/300'],\n },\n code: {\n bg: ['100', '950'],\n fg: ['600', '300'],\n },\n skeleton: {\n from: ['100', '900'],\n to: ['100/0.5', '900/0.5'],\n },\n },\n hovered: {\n bg: ['50', '950'],\n fg: ['700', '400'],\n },\n pressed: {\n bg: ['100', '900'],\n fg: ['800', '300'],\n },\n selected: {\n bg: ['100', '900'],\n fg: ['800', '300'],\n },\n disabled: {\n _hue: 'gray',\n fg: ['200', '900'],\n muted: {\n fg: ['200/0.6', '900/0.6'],\n },\n accent: {\n fg: ['200/0.6', '900/0.6'],\n },\n link: {\n fg: ['200/0.6', '900/0.6'],\n },\n code: {\n bg: ['50/0.5', '950/0.5'],\n fg: ['200/0.6', '900/0.6'],\n },\n },\n },\n },\n },\n card: {\n '*': {\n _blend: ['multiply', 'screen'],\n bg: ['white', 'black'],\n bg2: ['100', '950'],\n fg: ['black', 'white'],\n icon: ['500', '400'],\n border: ['200', '900'],\n muted: {\n fg: ['gray/600', 'gray/400'],\n },\n accent: {\n fg: ['purple/600', 'purple/300'],\n },\n link: {\n fg: ['blue/700', 'blue/300'],\n },\n code: {\n bg: ['100', '950'],\n fg: ['gray/600', 'gray/400'],\n },\n skeleton: {\n from: ['100', '900'],\n to: ['100/0.5', '900/0.5'],\n },\n },\n hovered: {\n bg: ['100', '950'],\n },\n pressed: {\n bg: ['100', '900'],\n },\n selected: {\n _blend: ['screen', 'multiply'],\n bg: ['500', '400'],\n border: ['800', '200'],\n bg2: ['950', '50'],\n fg: ['white', 'black'],\n },\n disabled: {\n _hue: 'gray',\n fg: ['200', '900'],\n icon: ['200', '800'],\n border: ['100', '900/0.5'],\n muted: {\n fg: ['200/0.5', '800/0.5'],\n },\n accent: {\n fg: ['200/0.6', '800/0.6'],\n },\n link: {\n fg: ['200/0.6', '800/0.6'],\n },\n code: {\n bg: ['100/0.6', '950/0.6'],\n fg: ['200/0.6', '800/0.6'],\n },\n },\n },\n input: {\n '*': {\n '*': {\n _blend: ['multiply', 'screen'],\n bg: ['white', 'black'],\n bg2: ['50', '950'],\n fg: ['black', '200'],\n border: ['200', '900'],\n placeholder: ['400', '600/0.5'],\n },\n\n hovered: {\n border: ['300', '800'],\n },\n\n readOnly: {\n border: ['200/0', '900/0'],\n bg: ['100', '950'],\n fg: ['800', '200'],\n },\n\n disabled: {\n fg: ['200', '800'],\n border: ['100', '900'],\n },\n },\n invalid: {\n '*': {\n _hue: 'red',\n bg: ['100', '950'],\n },\n },\n },\n kbd: {\n _blend: ['multiply', 'screen'],\n bg: ['white', 'black'],\n fg: ['600', '400'],\n border: ['200', '900'],\n },\n selectable: {\n '*': {\n '*': {\n _blend: ['multiply', 'screen'],\n bg: ['white', 'black'],\n bg2: ['50', '950'],\n fg: ['900', '200'],\n icon: ['600', '400'],\n border: ['200', '900'],\n muted: {\n fg: ['700', '400'],\n },\n accent: {\n fg: ['purple/600', 'purple/400'],\n },\n link: {\n fg: ['blue/700', 'blue/400'],\n },\n code: {\n bg: ['100', '950'],\n fg: ['700', '400'],\n },\n skeleton: {\n from: ['100', '900'],\n to: ['100/0.5', '900/0.5'],\n },\n },\n hovered: {\n bg: ['50', '950'],\n },\n pressed: {\n bg: ['100', '900'],\n },\n selected: {\n _blend: ['screen', 'multiply'],\n bg: ['500', '400'],\n bg2: ['900', '50'],\n fg: ['white', 'black'],\n icon: ['200', '900'],\n border: ['500/0.2', '400/0.2'],\n muted: {\n fg: ['200', '700'],\n },\n accent: {\n fg: ['purple/200', 'purple/700'],\n },\n link: {\n fg: ['blue/200', 'blue/700'],\n },\n code: {\n bg: ['500/0.2', '400/0.2'],\n fg: ['200', '700'],\n },\n skeleton: {\n from: ['900', '100'],\n to: ['900/0.5', '100/0.5'],\n },\n },\n disabled: {\n fg: ['200', '800'],\n icon: ['200', '800'],\n muted: {\n fg: ['200', '800/0.5'],\n },\n accent: {\n fg: ['purple/200', 'purple/800/0.5'],\n },\n link: {\n fg: ['blue/200', 'blue/800/0.5'],\n },\n code: {\n bg: ['100', '950/0.5'],\n fg: ['200', '800/0.5'],\n },\n },\n },\n default: {\n selected: {\n _hue: 'blue',\n // bg: ['500', '400'],\n },\n },\n critical: {\n disabled: {\n bg: ['50/0.5', '950/0.5'],\n },\n },\n },\n syntax: {\n atrule: ['purple/700', 'purple/400'],\n attrName: ['green/700', 'green/400'],\n attrValue: ['yellow/700', 'yellow/400'],\n attribute: ['yellow/700', 'yellow/400'],\n boolean: ['purple/700', 'purple/400'],\n builtin: ['purple/700', 'purple/400'],\n cdata: ['yellow/700', 'yellow/400'],\n char: ['yellow/700', 'yellow/400'],\n class: ['orange/700', 'orange/400'],\n className: ['cyan/700', 'cyan/400'],\n comment: ['gray/700/0.5', 'gray/400/0.5'],\n constant: ['purple/700', 'purple/400'],\n deleted: ['red/700', 'red/400'],\n entity: ['red/700', 'red/400'],\n function: ['green/700', 'green/400'],\n hexcode: ['blue/700', 'blue/400'],\n id: ['purple/700', 'purple/400'],\n important: ['purple/700', 'purple/400'],\n inserted: ['yellow/700', 'yellow/400'],\n keyword: ['magenta/700', 'magenta/400'],\n number: ['purple/700', 'purple/400'],\n operator: ['magenta/700', 'magenta/400'],\n property: ['blue/700', 'blue/400'],\n pseudoClass: ['yellow/700', 'yellow/400'],\n pseudoElement: ['yellow/700', 'yellow/400'],\n punctuation: ['gray/700', 'gray/400'],\n regex: ['blue/700', 'blue/400'],\n selector: ['red/700', 'red/400'],\n string: ['yellow/700', 'yellow/400'],\n symbol: ['purple/700', 'purple/400'],\n tag: ['red/700', 'red/400'],\n unit: ['orange/700', 'orange/400'],\n url: ['red/700', 'red/400'],\n variable: ['red/700', 'red/400'],\n },\n}\n","export function merge(\n target: Record<string, unknown>,\n source: Record<string, unknown>,\n): Record<string, unknown> {\n const ret = {...target}\n\n for (const key of Object.keys(source)) {\n const prevValue = target[key]\n const nextValue = source[key]\n\n if (isRecord(prevValue) && isRecord(nextValue)) {\n ret[key] = merge(prevValue, nextValue)\n } else {\n ret[key] = nextValue\n }\n }\n\n return ret\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return Boolean(value && typeof value === 'object' && !Array.isArray(value))\n}\n","import {ColorHueKey} from '@sanity/color'\nimport {\n ColorConfigAvatarColor,\n ColorConfigBaseTone,\n ColorConfigInputMode,\n ColorConfigInputState,\n ColorConfigState,\n ColorConfigStateTone,\n ThemeColorAvatarTokens,\n ThemeColorBadgeTokens,\n ThemeColorBaseTokens,\n ThemeColorButtonTokens,\n ThemeColorInputStateTokens,\n ThemeColorInputTokens,\n ThemeColorStateTokens,\n ThemeColorStatesTokens,\n ThemeColorTokenValue,\n ThemeColorTokens,\n} from '../config'\nimport {\n THEME_COLOR_AVATAR_COLORS,\n THEME_COLOR_BASE_TONES,\n THEME_COLOR_BUTTON_MODES,\n THEME_COLOR_INPUT_MODES,\n THEME_COLOR_INPUT_STATES,\n THEME_COLOR_STATES,\n THEME_COLOR_STATE_TONES,\n ThemeColorAvatarColorKey,\n ThemeColorBaseToneKey,\n ThemeColorButtonModeKey,\n ThemeColorStateKey,\n ThemeColorStateToneKey,\n ThemeColorSyntax,\n} from '../system'\nimport {defaultColorTokens} from './defaults/colorTokens'\nimport {merge} from './merge'\n\n/**\n * Convert a tree of color tokens from a sparse format to a dense format.\n */\nexport function resolveColorTokens(inputTokens?: ThemeColorTokens): ThemeColorTokens {\n const sparseTokens = merge(\n defaultColorTokens as unknown as Record<string, unknown>,\n (inputTokens ?? {}) as unknown as Record<string, unknown>,\n )\n\n return {\n avatar: resolveAvatarColorTokens(sparseTokens),\n badge: resolveBadgeColorTokens(sparseTokens),\n base: resolveBaseColorTokens(sparseTokens),\n button: resolveButtonColorTokens(sparseTokens),\n card: resolveCardColorTokens(sparseTokens),\n input: resolveInputColorTokens(sparseTokens),\n kbd: resolveKBDColorTokens(sparseTokens),\n selectable: resolveSelectableColorTokens(sparseTokens),\n spot: resolveSpotColorTokens(sparseTokens),\n syntax: resolveSyntaxColorTokens(sparseTokens),\n }\n}\n\nfunction resolveKBDColorTokens(sparseTokens: ThemeColorTokens) {\n return sparseTokens?.kbd\n}\n\nfunction resolveAvatarColorTokens(sparseTokens: ThemeColorTokens) {\n const tokens: Partial<Record<ColorConfigAvatarColor, ThemeColorAvatarTokens>> = {}\n\n for (const color of THEME_COLOR_AVATAR_COLORS) {\n tokens[color] = _resolveAvatarColorTokens(sparseTokens, color)\n }\n\n return tokens\n}\n\nfunction _resolveAvatarColorTokens(\n sparseTokens: ThemeColorTokens,\n color: ThemeColorAvatarColorKey,\n): ThemeColorAvatarTokens {\n const spec0 = sparseTokens?.avatar?.[color]\n const spec1 = sparseTokens?.avatar?.['*']\n\n return {\n ...spec1,\n ...spec0,\n }\n}\n\nfunction resolveBadgeColorTokens(sparseTokens: ThemeColorTokens) {\n const tokens: Partial<Record<ColorConfigStateTone, ThemeColorAvatarTokens>> = {}\n\n for (const tone of THEME_COLOR_STATE_TONES) {\n tokens[tone] = _resolveBadgeColorTokens(sparseTokens, tone)\n }\n\n return tokens\n}\n\nfunction _resolveBadgeColorTokens(\n sparseTokens: ThemeColorTokens,\n tone: ThemeColorStateToneKey,\n): ThemeColorBadgeTokens {\n const spec0 = sparseTokens?.badge?.[tone]\n const spec1 = sparseTokens?.badge?.['*']\n\n return {\n ...spec1,\n ...spec0,\n }\n}\n\nfunction resolveBaseColorTokens(sparseTokens: ThemeColorTokens) {\n const tokens: Partial<Record<ColorConfigBaseTone, ThemeColorBaseTokens>> = {}\n\n // base tones\n for (const tone of THEME_COLOR_BASE_TONES) {\n tokens[tone] = resolveBaseColorTones(sparseTokens, tone)\n }\n\n return tokens\n}\n\nfunction resolveBaseColorTones(\n sparseTokens: ThemeColorTokens,\n tone: ThemeColorBaseToneKey,\n): ThemeColorBaseTokens {\n const spec0 = sparseTokens?.base?.[tone]\n const spec1 = sparseTokens?.base?.['*']\n\n return {\n ...spec1,\n ...spec0,\n shadow: {...spec1?.shadow, ...spec0?.shadow},\n skeleton: {...spec1?.skeleton, ...spec0?.skeleton},\n }\n}\n\nfunction resolveButtonColorTokens(\n sparseTokens: ThemeColorTokens,\n): Partial<Record<ThemeColorButtonModeKey, ThemeColorButtonTokens>> {\n const tokens: Partial<Record<ThemeColorButtonModeKey, ThemeColorButtonTokens>> = {}\n\n for (const mode of THEME_COLOR_BUTTON_MODES) {\n tokens[mode] = resolveButtonToneColorTokens(sparseTokens, mode)\n }\n\n return tokens\n}\n\nfunction resolveButtonToneColorTokens(\n sparseTokens: ThemeColorTokens,\n mode: ThemeColorButtonModeKey,\n): ThemeColorButtonTokens {\n const tokens: ThemeColorButtonTokens = {}\n\n for (const tone of THEME_COLOR_STATE_TONES) {\n tokens[tone] = resolveButtonModeColorTokens(sparseTokens, mode, tone)\n }\n\n return tokens\n}\n\nfunction resolveButtonModeColorTokens(\n sparseTokens: ThemeColorTokens,\n mode: ThemeColorButtonModeKey,\n tone: ThemeColorStateToneKey,\n): ThemeColorStatesTokens {\n const spec0 = sparseTokens.button?.[mode]?.[tone]\n const spec1 = sparseTokens.button?.[mode]?.['*']\n const tokens = {...spec1, ...spec0}\n\n for (const state of THEME_COLOR_STATES) {\n tokens[state] = resolveButtonStateColorTokens(sparseTokens, tone, mode, state)\n }\n\n return tokens\n}\n\nfunction resolveButtonStateColorTokens(\n tokens: ThemeColorTokens,\n tone: ThemeColorStateToneKey,\n mode: ThemeColorButtonModeKey,\n state: ThemeColorStateKey,\n): ThemeColorStateTokens {\n const spec0 = tokens?.button?.[mode]?.[tone]?.[state]\n const spec1 = tokens?.button?.[mode]?.['*']?.[state]\n const spec2 = tokens?.button?.[mode]?.[tone]?.['*']\n const spec3 = tokens?.button?.[mode]?.['*']?.['*']\n\n const hue = spec0?._hue || spec1?._hue || spec2?._hue || spec3?._hue || tokens?.base?.[tone]?._hue\n\n return {\n ...spec3,\n ...spec2,\n ...spec1,\n ...spec0,\n _hue: hue,\n muted: {...spec3?.muted, ...spec2?.muted, ...spec1?.muted, ...spec0?.muted},\n accent: {...spec3?.accent, ...spec2?.accent, ...spec1?.accent, ...spec0?.accent},\n link: {...spec3?.link, ...spec2?.link, ...spec1?.link, ...spec0?.link},\n code: {...spec3?.code, ...spec2?.code, ...spec1?.code, ...spec0?.code},\n skeleton: {...spec3?.skeleton, ...spec2?.skeleton, ...spec1?.skeleton, ...spec0?.skeleton},\n }\n}\n\nfunction resolveCardColorTokens(\n sparseTokens: ThemeColorTokens,\n): Partial<Record<ColorConfigState, ThemeColorStateTokens>> {\n const tokens: Partial<Record<ColorConfigState, ThemeColorStateTokens>> = {}\n\n for (const state of THEME_COLOR_STATES) {\n tokens[state] = resolveCardStateColorTokens(sparseTokens, state)\n }\n\n return tokens\n}\n\nfunction resolveCardStateColorTokens(\n tokens: ThemeColorTokens,\n state: ThemeColorStateKey,\n): ThemeColorStateTokens {\n const spec0 = tokens?.card?.[state]\n const spec1 = tokens?.card?.['*']\n\n const hue = spec0?._hue || spec1?._hue\n\n return {\n ...spec1,\n ...spec0,\n _hue: hue,\n muted: {...spec1?.muted, ...spec0?.muted},\n accent: {...spec1?.accent, ...spec0?.accent},\n link: {...spec1?.link, ...spec0?.link},\n code: {...spec1?.code, ...spec0?.code},\n skeleton: {...spec1?.skeleton, ...spec0?.skeleton},\n }\n}\n\nfunction resolveInputColorTokens(\n sparseTokens: ThemeColorTokens,\n): Partial<Record<ColorConfigInputMode, ThemeColorInputTokens>> {\n const tokens: Partial<Record<ColorConfigInputMode, ThemeColorInputTokens>> = {}\n\n for (const mode of THEME_COLOR_INPUT_MODES) {\n tokens[mode] = resolveInputModeColorTokens(sparseTokens, mode)\n }\n\n return tokens\n}\n\nfunction resolveInputModeColorTokens(\n sparseTokens: ThemeColorTokens,\n mode: ColorConfigInputMode,\n): ThemeColorInputTokens {\n const states: ThemeColorInputTokens = {}\n\n for (const state of THEME_COLOR_INPUT_STATES) {\n states[state] = resolveInputStateColorTokens(sparseTokens, mode, state)\n }\n\n return states\n}\n\nfunction resolveInputStateColorTokens(\n tokens: ThemeColorTokens,\n mode: ColorConfigInputMode,\n state: ColorConfigInputState,\n): ThemeColorInputStateTokens {\n const spec0 = tokens?.input?.[mode]?.[state]\n const spec1 = tokens?.input?.['*']?.[state]\n const spec2 = tokens?.input?.[mode]?.['*']\n const spec3 = tokens?.input?.['*']?.['*']\n\n const hue =\n spec0?._hue || spec1?._hue || spec2?._hue || spec3?._hue || tokens?.input?.[mode]?._hue\n\n return {\n ...spec3,\n ...spec2,\n ...spec1,\n ...spec0,\n _hue: hue,\n }\n}\n\nfunction resolveSelectableColorTokens(\n sparseTokens: ThemeColorTokens,\n): Partial<Record<ColorConfigStateTone, {_hue?: ColorHueKey} & ThemeColorStatesTokens>> {\n const tokens: ThemeColorButtonTokens = {}\n\n for (const tone of THEME_COLOR_STATE_TONES) {\n tokens[tone] = resolveSelectableToneColorTokens(sparseTokens, tone)\n }\n\n return tokens\n}\n\nfunction resolveSelectableToneColorTokens(\n sparseTokens: ThemeColorTokens,\n tone: ThemeColorStateToneKey,\n): {_hue?: ColorHueKey} & ThemeColorStatesTokens {\n const states: {_hue?: ColorHueKey} & ThemeColorStatesTokens = {\n _hue: sparseTokens?.selectable?.[tone]?._hue || sparseTokens?.base?.[tone]?._hue,\n }\n\n for (const state of THEME_COLOR_STATES) {\n states[state] = resolveSelectableStateColorTokens(sparseTokens, state, tone)\n }\n\n return states\n}\n\nfunction resolveSelectableStateColorTokens(\n tokens: ThemeColorTokens,\n state: ThemeColorStateKey,\n tone: ThemeColorStateToneKey,\n) {\n const spec0 = tokens?.selectable?.[tone]?.[state]\n const spec1 = tokens?.selectable?.['*']?.[state]\n const spec2 = tokens?.selectable?.[tone]?.['*']\n const spec3 = tokens?.selectable?.['*']?.['*']\n\n const hue = spec0?._hue || spec1?._hue || spec2?._hue || spec3?._hue || tokens?.base?.[tone]?._hue\n\n return {\n ...spec3,\n ...spec2,\n ...spec1,\n ...spec0,\n _hue: hue,\n muted: {...spec3?.muted, ...spec2?.muted, ...spec1?.muted, ...spec0?.muted},\n accent: {...spec3?.accent, ...spec2?.accent, ...spec1?.accent, ...spec0?.accent},\n link: {...spec3?.link, ...spec2?.link, ...spec1?.link, ...spec0?.link},\n code: {...spec3?.code, ...spec2?.code, ...spec1?.code, ...spec0?.code},\n skeleton: {...spec3?.skeleton, ...spec2?.skeleton, ...spec1?.skeleton, ...spec0?.skeleton},\n }\n}\n\nfunction resolveSpotColorTokens(\n sparseTokens: ThemeColorTokens,\n): Partial<Record<ColorHueKey, ThemeColorTokenValue>> {\n return {\n ...sparseTokens.spot,\n }\n}\n\nfunction resolveSyntaxColorTokens(\n sparseTokens: ThemeColorTokens,\n): Partial<Record<keyof ThemeColorSyntax, ThemeColorTokenValue>> {\n return {\n ...sparseTokens.syntax,\n }\n}\n","import {ThemeColorTokenValue, ThemeConfig} from '../config'\nimport {\n THEME_COLOR_BUTTON_MODES,\n THEME_COLOR_STATES,\n THEME_COLOR_STATE_TONES,\n ThemeColorAvatarColorKey,\n ThemeColorBaseToneKey,\n ThemeColorButtonModeKey,\n ThemeColorStateKey,\n ThemeColorStateToneKey,\n ThemeColor,\n ThemeColorAvatar,\n ThemeColorBadge,\n ThemeColorButton,\n ThemeColorButtonStates,\n ThemeColorButtonTones,\n ThemeColorCard,\n ThemeColorGenericState,\n ThemeColorInput,\n ThemeColorInputState,\n ThemeColorInputStates,\n ThemeColorScheme,\n ThemeColorSchemes,\n ThemeColorSpot,\n ThemeColorSyntax,\n} from '../system'\nimport {ColorTokenContext, resolveColorTokenValue as _color} from './colorToken'\nimport {resolveColorTokens} from './resolveColorTokens'\n\nconst DEFAULT_COLOR_TOKEN_VALUE: ThemeColorTokenValue = ['500', '500']\n\nexport function buildColorTheme(config?: ThemeConfig): ThemeColorSchemes {\n return {\n light: buildColorScheme({scheme: 'light'}, config),\n dark: buildColorScheme({scheme: 'dark'}, config),\n }\n}\n\nexport function buildColorScheme(\n options: {scheme: 'light' | 'dark'},\n config?: ThemeConfig,\n): ThemeColorScheme {\n const {scheme} = options\n\n const resolvedConfig: ThemeConfig = {\n ...config,\n color: resolveColorTokens(config?.color),\n }\n\n return {\n transparent: buildBaseColorTheme({scheme, tone: 'transparent'}, resolvedConfig),\n default: buildBaseColorTheme({scheme, tone: 'default'}, resolvedConfig),\n primary: buildBaseColorTheme({scheme, tone: 'primary'}, resolvedConfig),\n positive: buildBaseColorTheme({scheme, tone: 'positive'}, resolvedConfig),\n caution: buildBaseColorTheme({scheme, tone: 'caution'}, resolvedConfig),\n critical: buildBaseColorTheme({scheme, tone: 'critical'}, resolvedConfig),\n }\n}\n\nexport function buildBaseColorTheme(\n options: {scheme: 'light' | 'dark'; tone: ThemeColorBaseToneKey},\n config?: ThemeConfig,\n): ThemeColor {\n const {scheme, tone} = options\n const tokens = config?.color?.base?.[tone]\n const hue = tokens?._hue || 'gray'\n const context: ColorTokenContext = {hue, scheme}\n const bg = _color(context, tokens?.bg || DEFAULT_COLOR_TOKEN_VALUE)\n const blendMode = tokens?._blend || ['screen', 'multiply']\n\n // Build `button` color theme\n // Also used for `solid` and `muted` color themes\n const button = buildButtonColorTheme({scheme}, config)\n\n const selectable = buildSelectableColorTheme({scheme}, config)\n\n const _dark = scheme === 'dark'\n\n return {\n _blend: blendMode[scheme === 'light' ? 0 : 1],\n _dark,\n avatar: buildAvatarColorTheme({scheme}, config),\n badge: buildBadgeColorTheme({scheme}, config),\n base: {\n bg,\n fg: _color(context, tokens?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n border: _color(context, tokens?.border || DEFAULT_COLOR_TOKEN_VALUE),\n focusRing: _color(context, tokens?.focusRing || DEFAULT_COLOR_TOKEN_VALUE),\n shadow: {\n outline: _color(context, tokens?.shadow?.outline || DEFAULT_COLOR_TOKEN_VALUE),\n umbra: _color(context, tokens?.shadow?.umbra || DEFAULT_COLOR_TOKEN_VALUE),\n penumbra: _color(context, tokens?.shadow?.penumbra || DEFAULT_COLOR_TOKEN_VALUE),\n ambient: _color(context, tokens?.shadow?.ambient || DEFAULT_COLOR_TOKEN_VALUE),\n },\n skeleton: {\n from: _color(context, tokens?.skeleton?.from || DEFAULT_COLOR_TOKEN_VALUE),\n to: _color(context, tokens?.skeleton?.to || DEFAULT_COLOR_TOKEN_VALUE),\n },\n },\n button,\n // card: buildCardColorTheme({scheme, baseTone: tone}, config),\n card: selectable.default satisfies ThemeColorCard,\n input: buildInputColorTheme({scheme, tone}, config),\n kbd: {\n _blend: (config?.color?.kbd?._blend || ['multiply', 'screen'])[scheme === 'light' ? 0 : 1],\n bg: _color(context, config?.color?.kbd?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, config?.color?.kbd?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n border: _color(context, config?.color?.kbd?.border || DEFAULT_COLOR_TOKEN_VALUE),\n },\n spot: buildSpotColorTheme({scheme}, config),\n syntax: buildSyntaxColorTheme({scheme}, config),\n solid: {\n ...button.default,\n transparent: button.default.default,\n },\n muted: {\n ...button.bleed,\n transparent: button.bleed.default,\n },\n selectable,\n\n dark: _dark, // deprecated\n }\n}\n\nfunction buildAvatarColorTheme(\n options: {scheme: 'light' | 'dark'},\n config?: ThemeConfig,\n): ThemeColorAvatar {\n const {scheme} = options\n\n return {\n gray: _buildAvatarColorTheme({color: 'gray', scheme}, config),\n blue: _buildAvatarColorTheme({color: 'blue', scheme}, config),\n purple: _buildAvatarColorTheme({color: 'purple', scheme}, config),\n magenta: _buildAvatarColorTheme({color: 'magenta', scheme}, config),\n red: _buildAvatarColorTheme({color: 'red', scheme}, config),\n orange: _buildAvatarColorTheme({color: 'orange', scheme}, config),\n yellow: _buildAvatarColorTheme({color: 'yellow', scheme}, config),\n green: _buildAvatarColorTheme({color: 'green', scheme}, config),\n cyan: _buildAvatarColorTheme({color: 'cyan', scheme}, config),\n }\n}\n\nfunction _buildAvatarColorTheme(\n options: {color: ThemeColorAvatarColorKey; scheme: 'light' | 'dark'},\n config?: ThemeConfig,\n): ThemeColorAvatar['gray'] {\n const {color, scheme} = options\n const tokens = config?.color?.avatar?.[color]\n const context: ColorTokenContext = {hue: tokens?._hue || 'gray', scheme}\n const blendMode = tokens?._blend || ['multiply', 'screen']\n\n return {\n _blend: blendMode[scheme === 'light' ? 0 : 1],\n bg: _color(context, tokens?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, tokens?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n }\n}\n\nfunction buildBadgeColorTheme(\n options: {scheme: 'light' | 'dark'},\n config?: ThemeConfig,\n): ThemeColorBadge {\n const {scheme} = options\n\n return {\n default: _buildBadgeColorTheme({scheme, tone: 'default'}, config),\n primary: _buildBadgeColorTheme({scheme, tone: 'primary'}, config),\n positive: _buildBadgeColorTheme({scheme, tone: 'positive'}, config),\n caution: _buildBadgeColorTheme({scheme, tone: 'caution'}, config),\n critical: _buildBadgeColorTheme({scheme, tone: 'critical'}, config),\n }\n}\n\nfunction _buildBadgeColorTheme(\n options: {scheme: 'light' | 'dark'; tone: ThemeColorStateToneKey},\n config?: ThemeConfig,\n): ThemeColorBadge['default'] {\n const {scheme, tone} = options\n const tokens = config?.color?.badge?.[tone]\n const hue = tokens?._hue || config?.color?.base?.[tone]?._hue || 'gray'\n const context: ColorTokenContext = {hue, scheme}\n const blendMode = tokens?._blend || ['multiply', 'screen']\n\n return {\n _blend: blendMode[scheme === 'light' ? 0 : 1],\n bg: _color(context, tokens?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, tokens?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n }\n}\n\nfunction buildButtonColorTheme(\n options: {scheme: 'light' | 'dark'},\n config?: ThemeConfig,\n): ThemeColorButton {\n const {scheme} = options\n\n const modes: Partial<ThemeColorButton> = {}\n\n for (const mode of THEME_COLOR_BUTTON_MODES) {\n modes[mode] = buildButtonTonesColorTheme({scheme, mode}, config)\n }\n\n return modes as ThemeColorButton\n}\n\nfunction buildButtonTonesColorTheme(\n options: {\n scheme: 'light' | 'dark'\n mode: ThemeColorButtonModeKey\n },\n config?: ThemeConfig,\n): ThemeColorButtonTones {\n const {mode, scheme} = options\n\n const tones: Partial<ThemeColorButtonTones> = {}\n\n for (const tone of THEME_COLOR_STATE_TONES) {\n tones[tone] = buildButtonStatesColorTheme({mode, scheme, tone}, config)\n }\n\n return tones as ThemeColorButtonTones\n}\n\nfunction buildButtonStatesColorTheme(\n options: {\n mode: ThemeColorButtonModeKey\n scheme: 'light' | 'dark'\n tone: ThemeColorStateToneKey\n },\n config?: ThemeConfig,\n): ThemeColorButtonStates {\n const {mode, scheme, tone} = options\n\n const states: Partial<ThemeColorButtonStates> = {}\n\n for (const state of THEME_COLOR_STATES) {\n states[state] = buildButtonStateColorTheme({mode, tone, scheme, state}, config)\n }\n\n return states as ThemeColorButtonStates\n}\n\nfunction buildButtonStateColorTheme(\n options: {\n mode: ThemeColorButtonModeKey\n tone: ThemeColorStateToneKey\n scheme: 'light' | 'dark'\n state: ThemeColorStateKey\n },\n config?: ThemeConfig,\n): ThemeColorGenericState {\n const {mode, tone, scheme, state} = options\n const tokens = config?.color?.button?.[mode]?.[tone]?.[state]\n const hue = tokens?._hue || 'gray'\n const blendMode = tokens?._blend || ['screen', 'multiply']\n const context: ColorTokenContext = {hue, scheme}\n\n return {\n _blend: blendMode[scheme === 'light' ? 0 : 1],\n bg: _color(context, tokens?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n bg2: _color(context, tokens?.bg2 || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, tokens?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n border: _color(context, tokens?.border || DEFAULT_COLOR_TOKEN_VALUE),\n icon: _color(context, tokens?.icon || DEFAULT_COLOR_TOKEN_VALUE),\n muted: {\n fg: _color(context, tokens?.muted?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n accent: {\n fg: _color(context, tokens?.accent?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n link: {\n fg: _color(context, tokens?.link?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n code: {\n bg: _color(context, tokens?.code?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, tokens?.code?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n skeleton: {\n from: _color(context, tokens?.skeleton?.from || DEFAULT_COLOR_TOKEN_VALUE),\n to: _color(context, tokens?.skeleton?.to || DEFAULT_COLOR_TOKEN_VALUE),\n },\n }\n}\n\n// function buildCardColorTheme(\n// options: {scheme: 'light' | 'dark'; baseTone: ColorBaseTone},\n// config?: ThemeConfig,\n// ): ThemeColorCard {\n// const {scheme, baseTone} = options\n\n// const states: Partial<ThemeColorCard> = {}\n\n// for (const state of COLOR_STATES) {\n// states[state] = buildCardStateColorTheme({scheme, state, baseTone}, config)\n// }\n\n// return states as ThemeColorCard\n// }\n\n// function buildCardStateColorTheme(\n// options: {scheme: 'light' | 'dark'; state: ColorState; baseTone: ColorBaseTone},\n// config?: ThemeConfig,\n// ): ThemeColorGenericState {\n// const {scheme, state, baseTone} = options\n// const tokens = config?.color?.card?.[state]\n// const hue = tokens?._hue || config?.color?.base?.[baseTone]?._hue || 'gray'\n// const blendMode = tokens?._blend || ['screen', 'multiply']\n// const context: ColorTokenContext = {hue, scheme}\n\n// return {\n// _blend: blendMode[scheme === 'light' ? 0 : 1],\n// bg: _color(context, tokens?.bg || ['50', '950']),\n// bg2: _color(context, tokens?.bg2 || ['50', '950']),\n// fg: _color(context, tokens?.fg || ['black', 'white']),\n// border: _color(context, tokens?.border || ['200', '800']),\n// icon: _color(context, tokens?.icon || ['500', '400']),\n// muted: {\n// fg: _color(context, tokens?.muted?.fg || ['600', '400']),\n// },\n// accent: {\n// fg: _color(context, tokens?.accent?.fg || ['600', '400']),\n// },\n// link: {\n// fg: _color(context, tokens?.link?.fg || ['600', '400']),\n// },\n// code: {\n// bg: _color(context, tokens?.code?.bg || ['600', '400']),\n// fg: _color(context, tokens?.code?.fg || ['600', '400']),\n// },\n// skeleton: {\n// from: _color(context, tokens?.skeleton?.from || ['100', '900']),\n// to: _color(context, tokens?.skeleton?.to || ['100/0.5', '900/0.5']),\n// },\n// }\n// }\n\nfunction buildInputColorTheme(\n options: {scheme: 'light' | 'dark'; tone: ThemeColorBaseToneKey},\n config?: ThemeConfig,\n): ThemeColorInput {\n const {scheme, tone} = options\n\n return {\n default: buildInputStatesColorTheme({mode: 'default', scheme, tone}, config),\n invalid: buildInputStatesColorTheme({mode: 'invalid', scheme, tone}, config),\n }\n}\n\nfunction buildInputStatesColorTheme(\n options: {\n mode: 'default' | 'invalid'\n scheme: 'light' | 'dark'\n tone: ThemeColorBaseToneKey\n },\n config?: ThemeConfig,\n): ThemeColorInputStates {\n const {mode, scheme, tone} = options\n\n return {\n enabled: buildInputStateColorTheme({mode, scheme, state: 'enabled', tone}, config),\n hovered: buildInputStateColorTheme({mode, scheme, state: 'hovered', tone}, config),\n readOnly: buildInputStateColorTheme({mode, scheme, state: 'readOnly', tone}, config),\n disabled: buildInputStateColorTheme({mode, scheme, state: 'disabled', tone}, config),\n }\n}\n\nfunction buildInputStateColorTheme(\n options: {\n mode: 'default' | 'invalid'\n scheme: 'light' | 'dark'\n state: 'enabled' | 'hovered' | 'readOnly' | 'disabled'\n tone: ThemeColorBaseToneKey\n },\n config?: ThemeConfig,\n): ThemeColorInputState {\n const {mode, tone, scheme, state} = options\n const tokens = config?.color?.input?.[mode]?.[state]\n const hue = tokens?._hue || config?.color?.base?.[tone]?._hue || 'gray'\n const blendMode = tokens?._blend || ['screen', 'multiply']\n const context: ColorTokenContext = {hue, scheme}\n\n return {\n _blend: blendMode[scheme === 'light' ? 0 : 1],\n bg: _color(context, tokens?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n bg2: _color(context, tokens?.bg2 || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, tokens?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n border: _color(context, tokens?.border || DEFAULT_COLOR_TOKEN_VALUE),\n placeholder: _color(context, tokens?.placeholder || DEFAULT_COLOR_TOKEN_VALUE),\n }\n}\n\nfunction buildSelectableColorTheme(\n options: {\n scheme: 'light' | 'dark'\n },\n config?: ThemeConfig,\n): ThemeColorButtonTones {\n const {scheme} = options\n\n const tones: Partial<ThemeColorButtonTones> = {}\n\n for (const tone of THEME_COLOR_STATE_TONES) {\n tones[tone] = buildSelectableStatesColorTheme({scheme, tone}, config)\n }\n\n return tones as ThemeColorButtonTones\n}\n\nfunction buildSelectableStatesColorTheme(\n options: {\n scheme: 'light' | 'dark'\n tone: ThemeColorStateToneKey\n },\n config?: ThemeConfig,\n): ThemeColorButtonStates {\n const {scheme, tone} = options\n\n const states: Partial<ThemeColorButtonStates> = {}\n\n for (const state of THEME_COLOR_STATES) {\n states[state] = buildSelectableStateColorTheme({tone, scheme, state}, config)\n }\n\n return states as ThemeColorButtonStates\n}\n\nfunction buildSelectableStateColorTheme(\n options: {\n scheme: 'light' | 'dark'\n state: ThemeColorStateKey\n tone: ThemeColorStateToneKey\n },\n config?: ThemeConfig,\n): ThemeColorGenericState {\n const {scheme, state, tone} = options\n const tokens = config?.color?.selectable?.[tone]?.[state]\n const hue = tokens?._hue || 'gray'\n const blendMode = tokens?._blend || ['screen', 'multiply']\n const context: ColorTokenContext = {hue, scheme}\n\n return {\n _blend: blendMode[scheme === 'light' ? 0 : 1],\n bg: _color(context, tokens?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n bg2: _color(context, tokens?.bg2 || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, tokens?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n border: _color(context, tokens?.border || DEFAULT_COLOR_TOKEN_VALUE),\n icon: _color(context, tokens?.icon || DEFAULT_COLOR_TOKEN_VALUE),\n muted: {\n fg: _color(context, tokens?.muted?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n accent: {\n fg: _color(context, tokens?.accent?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n link: {\n fg: _color(context, tokens?.link?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n code: {\n bg: _color(context, tokens?.code?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n fg: _color(context, tokens?.code?.fg || DEFAULT_COLOR_TOKEN_VALUE),\n },\n skeleton: {\n from: _color(context, tokens?.skeleton?.from || DEFAULT_COLOR_TOKEN_VALUE),\n to: _color(context, tokens?.skeleton?.to || DEFAULT_COLOR_TOKEN_VALUE),\n },\n }\n}\n\nfunction buildSpotColorTheme(\n options: {scheme: 'light' | 'dark'},\n config?: ThemeConfig,\n): ThemeColorSpot {\n const {scheme} = options\n const tokens = config?.color?.avatar\n const context: ColorTokenContext = {hue: 'gray', scheme}\n\n return {\n gray: _color(context, tokens?.gray?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n cyan: _color(context, tokens?.cyan?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n blue: _color(context, tokens?.blue?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n purple: _color(context, tokens?.purple?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n magenta: _color(context, tokens?.magenta?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n red: _color(context, tokens?.red?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n orange: _color(context, tokens?.orange?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n yellow: _color(context, tokens?.yellow?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n green: _color(context, tokens?.green?.bg || DEFAULT_COLOR_TOKEN_VALUE),\n }\n}\n\nfunction buildSyntaxColorTheme(\n options: {scheme: 'light' | 'dark'},\n config?: ThemeConfig,\n): ThemeColorSyntax {\n const {scheme} = options\n const tokens = config?.color?.syntax\n const context: ColorTokenContext = {hue: 'gray', scheme}\n\n return {\n atrule: _color(context, tokens?.atrule || DEFAULT_COLOR_TOKEN_VALUE),\n attrName: _color(context, tokens?.attrName || DEFAULT_COLOR_TOKEN_VALUE),\n attrValue: _color(context, tokens?.attrValue || DEFAULT_COLOR_TOKEN_VALUE),\n attribute: _color(context, tokens?.attribute || DEFAULT_COLOR_TOKEN_VALUE),\n boolean: _color(context, tokens?.boolean || DEFAULT_COLOR_TOKEN_VALUE),\n builtin: _color(context, tokens?.builtin || DEFAULT_COLOR_TOKEN_VALUE),\n cdata: _color(context, tokens?.cdata || DEFAULT_COLOR_TOKEN_VALUE),\n char: _color(context, tokens?.char || DEFAULT_COLOR_TOKEN_VALUE),\n class: _color(context, tokens?.class || DEFAULT_COLOR_TOKEN_VALUE),\n className: _color(context, tokens?.className || DEFAULT_COLOR_TOKEN_VALUE),\n comment: _color(context, tokens?.comment || DEFAULT_COLOR_TOKEN_VALUE),\n constant: _color(context, tokens?.constant || DEFAULT_COLOR_TOKEN_VALUE),\n deleted: _color(context, tokens?.deleted || DEFAULT_COLOR_TOKEN_VALUE),\n doctype: _color(context, tokens?.doctype || DEFAULT_COLOR_TOKEN_VALUE),\n entity: _color(context, tokens?.entity || DEFAULT_COLOR_TOKEN_VALUE),\n function: _color(context, tokens?.function || DEFAULT_COLOR_TOKEN_VALUE),\n hexcode: _color(context, tokens?.hexcode || DEFAULT_COLOR_TOKEN_VALUE),\n id: _color(context, tokens?.id || DEFAULT_COLOR_TOKEN_VALUE),\n important: _color(context, tokens?.important || DEFAULT_COLOR_TOKEN_VALUE),\n inserted: _color(context, tokens?.inserted || DEFAULT_COLOR_TOKEN_VALUE),\n keyword: _color(context, tokens?.keyword || DEFAULT_COLOR_TOKEN_VALUE),\n number: _color(context, tokens?.number || DEFAULT_COLOR_TOKEN_VALUE),\n operator: _color(context, tokens?.operator || DEFAULT_COLOR_TOKEN_VALUE),\n prolog: _color(context, tokens?.prolog || DEFAULT_COLOR_TOKEN_VALUE),\n property: _color(context, tokens?.property || DEFAULT_COLOR_TOKEN_VALUE),\n pseudoClass: _color(context, tokens?.pseudoClass || DEFAULT_COLOR_TOKEN_VALUE),\n pseudoElement: _color(context, tokens?.pseudoElement || DEFAULT_COLOR_TOKEN_VALUE),\n punctuation: _color(context, tokens?.punctuation || DEFAULT_COLOR_TOKEN_VALUE),\n regex: _color(context, tokens?.regex || DEFAULT_COLOR_TOKEN_VALUE),\n selector: _color(context, tokens?.selector || DEFAULT_COLOR_TOKEN_VALUE),\n string: _color(context, tokens?.string || DEFAULT_COLOR_TOKEN_VALUE),\n symbol: _color(context, tokens?.symbol || DEFAULT_COLOR_TOKEN_VALUE),\n tag: _color(context, tokens?.tag || DEFAULT_COLOR_TOKEN_VALUE),\n unit: _color(context, tokens?.unit || DEFAULT_COLOR_TOKEN_VALUE),\n url: _color(context, tokens?.url || DEFAULT_COLOR_TOKEN_VALUE),\n variable: _color(context, tokens?.variable || DEFAULT_COLOR_TOKEN_VALUE),\n }\n}\n","import {RootTheme} from '../../system'\n\nconst BORDER_WIDTH = 1\nconst OUTLINE_WIDTH = 0.5\n\nexport const defaultThemeConfig: Omit<RootTheme, 'color' | 'fonts'> = {\n avatar: {\n sizes: [\n {distance: -3, size: 25},\n {distance: -6, size: 35},\n {distance: -9, size: 55},\n ],\n focusRing: {offset: 1, width: 1},\n },\n button: {\n textWeight: 'medium',\n border: {width: BORDER_WIDTH},\n focusRing: {offset: -1, width: 2},\n },\n card: {\n border: {width: BORDER_WIDTH},\n focusRing: {offset: -1, width: 1},\n shadow: {outline: OUTLINE_WIDTH},\n },\n container: [480, 640, 960, 1280, 1600, 1920],\n focusRing: {\n offset: 1,\n width: 2,\n },\n media: [360, 600, 900, 1200, 1800, 2400],\n radius: [0, 1, 3, 6, 9, 12, 21],\n shadows: [\n null,\n {umbra: [0, 0, 0, 0], penumbra: [0, 0, 0, 0], ambient: [0, 0, 0, 0]},\n {umbra: [0, 3, 5, -2], penumbra: [0, 6, 10, 0], ambient: [0, 1, 18, 1]},\n {umbra: [0, 7, 8, -4], penumbra: [0, 12, 17, 2], ambient: [0, 5, 22, 4]},\n {umbra: [0, 9, 11, -5], penumbra: [0, 18, 28, 2], ambient: [0, 7, 34, 6]},\n {umbra: [0, 11, 15, -7], penumbra: [0, 24, 38, 3], ambient: [0, 9, 46, 8]},\n ],\n space: [0, 4, 8, 12, 20, 32, 52, 84, 136, 220],\n input: {\n border: {\n width: BORDER_WIDTH,\n },\n checkbox: {\n size: 17,\n focusRing: {offset: -1, width: 1},\n },\n radio: {\n size: 17,\n markSize: 9,\n focusRing: {offset: -1, width: 1},\n },\n switch: {\n width: 25,\n height: 17,\n padding: 2,\n transitionDurationMs: 150,\n transitionTimingFunction: 'ease-out',\n focusRing: {offset: 1, width: 1},\n },\n select: {\n focusRing: {offset: -1, width: 1},\n },\n text: {\n focusRing: {offset: -1, width: 1},\n },\n },\n styles: {\n button: {\n root: {\n transition: 'background-color 100ms,border-color 100ms,color 100ms',\n },\n },\n // card: {\n // root: {\n // transition: 'background-color 100ms,border-color 100ms,color 100ms',\n // },\n // },\n },\n}\n","import {ThemeFonts} from '../../system'\n\nexport const defaultThemeFonts: ThemeFonts = {\n code: {\n family: 'ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace',\n weights: {\n regular: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n },\n sizes: [\n {\n ascenderHeight: 4,\n descenderHeight: 4,\n fontSize: 10,\n iconSize: 17,\n lineHeight: 15,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 5,\n descenderHeight: 5,\n fontSize: 13,\n iconSize: 21,\n lineHeight: 19,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 6,\n descenderHeight: 6,\n fontSize: 16,\n iconSize: 25,\n lineHeight: 23,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 7,\n descenderHeight: 7,\n fontSize: 19,\n iconSize: 29,\n lineHeight: 27,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 8,\n descenderHeight: 8,\n fontSize: 22,\n iconSize: 33,\n lineHeight: 31,\n letterSpacing: 0,\n },\n ],\n },\n heading: {\n family:\n 'Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Liberation Sans\", Helvetica, Arial, system-ui, sans-serif',\n weights: {\n regular: 700,\n medium: 800,\n semibold: 900,\n bold: 900,\n },\n sizes: [\n {\n ascenderHeight: 5,\n descenderHeight: 5,\n fontSize: 13,\n iconSize: 17,\n lineHeight: 19,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 6,\n descenderHeight: 6,\n fontSize: 16,\n iconSize: 25,\n lineHeight: 23,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 7,\n descenderHeight: 7,\n fontSize: 21,\n iconSize: 33,\n lineHeight: 29,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 8,\n descenderHeight: 8,\n fontSize: 27,\n iconSize: 41,\n lineHeight: 35,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 9.5,\n descenderHeight: 8.5,\n fontSize: 33,\n iconSize: 49,\n lineHeight: 41,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 10.5,\n descenderHeight: 9.5,\n fontSize: 38,\n iconSize: 53,\n lineHeight: 47,\n letterSpacing: 0,\n },\n ],\n },\n label: {\n family:\n 'Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Liberation Sans\", system-ui, sans-serif',\n weights: {\n regular: 600,\n medium: 700,\n semibold: 800,\n bold: 900,\n },\n sizes: [\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 9.8,\n iconSize: 15,\n lineHeight: 11,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 11.25,\n iconSize: 17,\n lineHeight: 12,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 12.75,\n iconSize: 19,\n lineHeight: 13,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 14,\n iconSize: 21,\n lineHeight: 14,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 15.5,\n iconSize: 23,\n lineHeight: 15,\n letterSpacing: 0.5,\n },\n ],\n },\n text: {\n family:\n 'Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Liberation Sans\", Helvetica, Arial, system-ui, sans-serif',\n weights: {\n regular: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n },\n sizes: [\n {\n ascenderHeight: 4,\n descenderHeight: 4,\n fontSize: 10,\n iconSize: 17,\n lineHeight: 15,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 5,\n descenderHeight: 5,\n fontSize: 13,\n iconSize: 21,\n lineHeight: 19,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 6,\n descenderHeight: 6,\n fontSize: 16,\n iconSize: 25,\n lineHeight: 23,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 7.5,\n descenderHeight: 6.5,\n fontSize: 19,\n iconSize: 29,\n lineHeight: 27,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 8.5,\n descenderHeight: 7.5,\n fontSize: 22,\n iconSize: 33,\n lineHeight: 31,\n letterSpacing: 0,\n },\n ],\n },\n}\n","import {color} from '@sanity/color'\n\nimport {ThemeColorPalette} from '../../config'\n\nexport const defaultColorPalette: ThemeColorPalette = color\n","import {RGB, RGBA} from '../types'\n\nfunction mixChannel(b: number, s: number, weight: number) {\n const diff = s - b\n\n const delta = diff * weight\n\n return b + delta\n}\n\n/**\n * Apply the \\`mix\\` blend mode\n * @internal\n */\nexport function mix(b: RGB | RGBA, s: RGB | RGBA, weight: number): RGB {\n return {\n r: mixChannel(b.r, s.r, weight),\n g: mixChannel(b.g, s.g, weight),\n b: mixChannel(b.b, s.b, weight),\n }\n}\n","import {RGB, RGBA} from '../types'\n\nfunction multiplyChannel(b: number, s: number) {\n return b * s\n}\n\n/**\n * Apply the \\`multiply\\` blend mode\n * Source: https://www.w3.org/TR/compositing-1/#blendingmultiply\n * @internal\n */\nexport function multiply(b: RGB | RGBA, s: RGB | RGBA): RGB {\n return {\n r: multiplyChannel(b.r / 255, s.r / 255) * 255,\n g: multiplyChannel(b.g / 255, s.g / 255) * 255,\n b: multiplyChannel(b.b / 255, s.b / 255) * 255,\n }\n}\n","import {RGB, RGBA} from '../types'\n\nfunction screenChannel(b: number, s: number) {\n return b + s - b * s\n}\n\n/**\n * Apply the \\`screen\\` blend mode\n * Source: https://www.w3.org/TR/compositing-1/#blendingscreen\n * @internal\n */\nexport function screen(b: RGB | RGBA, s: RGB | RGBA): RGB {\n return {\n r: screenChannel(b.r / 255, s.r / 255) * 255,\n g: screenChannel(b.g / 255, s.g / 255) * 255,\n b: screenChannel(b.b / 255, s.b / 255) * 255,\n }\n}\n","export function lerp(x: number, y: number, a: number): number {\n return x * (1 - a) + y * a\n}\n\nexport function invlerp(x: number, y: number, a: number): number {\n return clamp((a - x) / (y - x))\n}\n\nexport function clamp(a: number, min = 0, max = 1): number {\n return Math.min(max, Math.max(min, a))\n}\n\nexport function range(x1: number, y1: number, x2: number, y2: number, a: number): number {\n return lerp(x2, y2, invlerp(x1, y1, a))\n}\n\nexport function round(value: number): number {\n return Math.round(value)\n}\n","import {clamp, round} from '../utils'\nimport {HSL, RGB, RGBA} from './types'\n\n/**\n * @internal\n */\nexport function hexToRgb(hex: string): RGB {\n if (hex.length === 4) {\n const hexR = hex.slice(1, 2)\n const hexG = hex.slice(2, 3)\n const hexB = hex.slice(3, 4)\n\n return {\n r: parseInt(hexR + hexR, 16),\n g: parseInt(hexG + hexG, 16),\n b: parseInt(hexB + hexB, 16),\n }\n }\n\n return {\n r: parseInt(hex.slice(1, 3), 16),\n g: parseInt(hex.slice(3, 5), 16),\n b: parseInt(hex.slice(5, 7), 16),\n }\n}\n\n/**\n * @internal\n */\nexport function rgbaToRGBA(rgba: string): RGBA {\n const values = rgba.replace(/rgba\\(|\\)/g, '').split(',')\n\n return {\n r: parseInt(values[0]),\n g: parseInt(values[1]),\n b: parseInt(values[2]),\n a: parseFloat(values[3]),\n }\n}\n\n/**\n * @internal\n */\nexport function rgbToHex(color: RGB | RGBA): string {\n const r = round(clamp(Math.round(color.r), 0, 255))\n const g = round(clamp(Math.round(color.g), 0, 255))\n const b = round(clamp(Math.round(color.b), 0, 255))\n\n if ('a' in color) {\n return `rgba(${r},${g},${b},${color.a})`\n }\n\n return '#' + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1)\n}\n\n/**\n * @internal\n * @see https://css-tricks.com/converting-color-spaces-in-javascript/\n */\nexport function rgbToHsl({r, g, b}: RGB): HSL {\n // Make r, g, and b fractions of 1\n r /= 255\n g /= 255\n b /= 255\n\n // Find greatest and smallest channel values\n const cmin = Math.min(r, g, b)\n const cmax = Math.max(r, g, b)\n const delta = cmax - cmin\n\n let h = 0\n let s = 0\n let l = 0\n\n // Calculate hue\n // No difference\n if (delta == 0) h = 0\n // Red is max\n else if (cmax == r) h = ((g - b) / delta) % 6\n // Green is max\n else if (cmax == g) h = (b - r) / delta + 2\n // Blue is max\n else h = (r - g) / delta + 4\n\n h = Math.round(h * 60)\n\n // Make negative hues positive behind 360°\n if (h < 0) h += 360\n\n // Calculate lightness\n l = (cmax + cmin) / 2\n\n // Calculate saturation\n s = delta == 0 ? 0 : delta / (1 - Math.abs(2 * l - 1))\n\n // Multiply l and s by 100\n s = +(s * 100).toFixed(1)\n l = +(l * 100).toFixed(1)\n\n return {h, s, l}\n}\n\n/**\n * @internal\n */\nexport function hslToRgb(hsl: HSL): RGB {\n // Must be fractions of 1\n const s = hsl.s / 100\n const l = hsl.l / 100\n\n const c = (1 - Math.abs(2 * l - 1)) * s\n const x = c * (1 - Math.abs(((hsl.h / 60) % 2) - 1))\n const m = l - c / 2\n\n let r = 0\n let g = 0\n let b = 0\n\n if (0 <= hsl.h && hsl.h < 60) {\n r = c\n g = x\n b = 0\n } else if (60 <= hsl.h && hsl.h < 120) {\n r = x\n g = c\n b = 0\n } else if (120 <= hsl.h && hsl.h < 180) {\n r = 0\n g = c\n b = x\n } else if (180 <= hsl.h && hsl.h < 240) {\n r = 0\n g = x\n b = c\n } else if (240 <= hsl.h && hsl.h < 300) {\n r = x\n g = 0\n b = c\n } else if (300 <= hsl.h && hsl.h < 360) {\n r = c\n g = 0\n b = x\n }\n\n return {\n r: Math.round((r + m) * 255),\n g: Math.round((g + m) * 255),\n b: Math.round((b + m) * 255),\n }\n}\n","import {hexToRgb, hslToRgb, rgbaToRGBA} from './convert'\nimport {HSL, RGB, RGBA} from './types'\n\nconst HEX_CHARS = '0123456789ABCDEFabcdef'\n\nconst HSL_RE = /hsl\\(\\s*(\\d+)\\s*,\\s*((\\d+(?:\\.\\d+)?)%)\\s*,\\s*((\\d+(?:\\.\\d+)?)%)\\s*\\)/i\n\nfunction isHexChars(str: string) {\n for (const c of str) {\n if (HEX_CHARS.indexOf(c) === -1) {\n return false\n }\n }\n\n return true\n}\n\nfunction isHex(str: string) {\n if (str[0] !== '#') return false\n\n // Accept both #000 and #000000\n if (!(str.length === 4 || str.length === 7)) return false\n\n return isHexChars(str.slice(1))\n}\n\nfunction parseHsl(str: string): HSL {\n const res = HSL_RE.exec(str)\n\n if (!res) {\n throw new Error(`parseHsl: string is not a HSL color: \"${str}\"`)\n }\n\n return {h: parseInt(res[1]), s: parseFloat(res[3]), l: parseFloat(res[5])}\n}\n\n/**\n * @internal\n */\nexport function parseColor(color: unknown): RGB | RGBA {\n if (!color) return {r: 0, g: 0, b: 0}\n\n if (typeof color !== 'string') {\n throw new Error('parseColor: expected a string')\n }\n\n if (isHex(color)) {\n return hexToRgb(color)\n }\n\n if (color.startsWith('hsl(')) {\n return hslToRgb(parseHsl(color))\n }\n\n if (color.startsWith('rgba(')) {\n return rgbaToRGBA(color)\n }\n\n throw new Error(`parseColor: unexpected color format: \"${color}\"`)\n}\n","import {parseColor} from './parse'\nimport {RGB, RGBA} from './types'\n\nexport function getContrastRatio(bg: string, fg: string): number {\n const rgb1 = parseColor(bg) // bg: RGB | RGBA, fg: RGB | RGBA\n const rgb2 = parseColor(fg)\n\n // convert the two colors from sRGB to linear-light RGB\n const c1 = rgb_lrgb(rgb1)\n const c2 = rgb_lrgb(rgb2)\n\n // compute the relative luminances\n const l1 = lrgb_luminance(c1)\n const l2 = lrgb_luminance(c2)\n\n // compute the contrast ratio\n return (Math.max(l1, l2) + 0.05) / (Math.min(l1, l2) + 0.05)\n}\n\nfunction rgb_lrgb({r, g, b}: RGB | RGBA): [number, number, number] {\n return [rgb_lrgb1(r / 255), rgb_lrgb1(g / 255), rgb_lrgb1(b / 255)]\n}\n\nfunction rgb_lrgb1(v: number) {\n return v <= 0.04045 ? v / 12.92 : ((v + 0.055) / 1.055) ** 2.4\n}\n\nfunction lrgb_luminance([r, g, b]: [number, number, number]) {\n return 0.2126 * r + 0.7152 * g + 0.0722 * b\n}\n","import {parseColor} from './parse'\n\n/**\n * @internal\n */\nexport function rgba(color: unknown, a: number): string {\n const rgb = parseColor(color)\n\n return `rgba(${rgb.r},${rgb.g},${rgb.b},${a})`\n}\n","import {RGB, multiply, parseColor, rgbToHex, screen} from './lib/color-fns'\nimport {clamp, range} from './lib/utils'\n\nconst RGB_RANGE: [number, number] = [0, 255]\n\nexport function mixThemeColor(\n value: string,\n options: {\n bg?: string\n blendMode: 'multiply' | 'screen'\n black: string\n white: string\n },\n): string {\n const {blendMode} = options\n\n const color = parseColor(value)\n const black = parseColor(options.black)\n const white = parseColor(options.white)\n\n const bg = options.bg ? parseColor(options.bg) : blendMode === 'multiply' ? white : black\n\n const paletteRange: {r: [number, number]; g: [number, number]; b: [number, number]} = {\n r: [black.r, white.r],\n g: [black.g, white.g],\n b: [black.b, white.b],\n }\n\n const convertedBgColor: RGB = {\n r: clamp(range(...paletteRange.r, ...RGB_RANGE, bg.r), ...RGB_RANGE),\n g: clamp(range(...paletteRange.g, ...RGB_RANGE, bg.g), ...RGB_RANGE),\n b: clamp(range(...paletteRange.b, ...RGB_RANGE, bg.b), ...RGB_RANGE),\n }\n\n const convertedColor: RGB = {\n r: clamp(range(...paletteRange.r, ...RGB_RANGE, color.r), ...RGB_RANGE),\n g: clamp(range(...paletteRange.g, ...RGB_RANGE, color.g), ...RGB_RANGE),\n b: clamp(range(...paletteRange.b, ...RGB_RANGE, color.b), ...RGB_RANGE),\n }\n\n const resultColor =\n blendMode === 'multiply'\n ? multiply(convertedBgColor, convertedColor)\n : screen(convertedBgColor, convertedColor)\n\n const v: RGB = {\n r: clamp(range(...RGB_RANGE, ...paletteRange.r, resultColor.r), ...paletteRange.r),\n g: clamp(range(...RGB_RANGE, ...paletteRange.g, resultColor.g), ...paletteRange.g),\n b: clamp(range(...RGB_RANGE, ...paletteRange.b, resultColor.b), ...paletteRange.b),\n }\n\n return rgbToHex(v)\n}\n","import {ColorTint as ColorPaletteValue} from '@sanity/color'\nimport {ThemeColorPalette, parseTokenValue} from '../config'\nimport {ThemeColorBlendModeKey} from '../system'\nimport {rgba} from './lib/color-fns'\nimport {mixThemeColor} from './mixThemeColor'\n\nexport interface RenderColorValueOptions {\n bg?: string\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n}\n\nexport function renderColorValue(str: string, options: RenderColorValueOptions): string {\n const {bg, blendMode, colorPalette} = options\n\n const node = parseTokenValue(str)\n\n if (!node || node.type !== 'color') {\n throw new Error(`Invalid color token value: ${str}`)\n }\n\n let hex = ''\n\n if (node.key === 'black') {\n hex = renderColorHex(colorPalette.black)\n }\n\n if (node.key === 'white') {\n hex = renderColorHex(colorPalette.white)\n }\n\n if (node.hue && node.tint) {\n hex = renderColorHex(colorPalette[node.hue][node.tint])\n }\n\n if (!hex) {\n throw new Error(`Invalid color token value: ${str}`)\n }\n\n const hexBeforeMix = hex\n\n try {\n hex = mixThemeColor(hex, {\n blendMode,\n bg,\n black: renderColorHex(colorPalette.black),\n // opacity: node.opacity,\n white: renderColorHex(colorPalette.white),\n })\n } catch (err) {\n // eslint-disable-next-line no-console\n console.log('could not blend', hex)\n }\n\n if (hex === '#aN') {\n // eslint-disable-next-line no-console\n console.warn(`invalid color token value: ${str}`)\n hex = hexBeforeMix\n }\n\n if (node.opacity !== undefined) {\n hex = rgba(hex, node.opacity)\n }\n\n return hex\n}\n\nfunction renderColorHex(color: string | ColorPaletteValue) {\n return typeof color === 'string' ? color : color.hex\n}\n","import {ThemeColorPalette, ThemeConfig} from '../config'\nimport {\n ThemeColorBlendModeKey,\n ThemeColor,\n ThemeColorAvatar,\n ThemeColorBadge,\n ThemeColorBase,\n ThemeColorButton,\n ThemeColorButtonStates,\n ThemeColorButtonTones,\n ThemeColorGenericState,\n ThemeColorInput,\n ThemeColorInputState,\n ThemeColorInputStates,\n ThemeColorKBD,\n ThemeColorScheme,\n ThemeColorSchemes,\n ThemeColorSelectable,\n ThemeColorSelectableStates,\n ThemeColorSpot,\n ThemeColorSyntax,\n ThemeColorToneKey,\n} from '../system'\nimport {defaultColorPalette} from './defaults/colorPalette'\nimport {RenderColorValueOptions, renderColorValue} from './renderColorValue'\n\nexport function renderThemeColorSchemes(\n value: ThemeColorSchemes,\n config?: ThemeConfig,\n): ThemeColorSchemes {\n const colorPalette = config?.palette ?? defaultColorPalette\n\n return {\n light: renderThemeColorScheme(colorPalette, value.light),\n dark: renderThemeColorScheme(colorPalette, value.dark),\n }\n}\n\nfunction renderThemeColorScheme(\n colorPalette: ThemeColorPalette,\n value: ThemeColorScheme,\n): ThemeColorScheme {\n const toneEntries = Object.entries(value) as [ThemeColorToneKey, ThemeColor][]\n\n const [, transparentTone] = toneEntries.find(([k]) => k === 'transparent')!\n const [, defaultTone] = toneEntries.find(([k]) => k === 'default')!\n\n // The `transparent` and `default` tones are special cases, so we render them first\n // (rendered without a `bg` option).\n // But the rest of the tones are rendered on top of the `default` tone's `bg`.\n const renderedTransparentTone = renderThemeColor(transparentTone, {colorPalette})\n const renderedDefaultTone = renderThemeColor(defaultTone, {colorPalette})\n\n // Get the `default` tone's `bg` property\n const bg = renderedDefaultTone.base.bg\n\n return Object.fromEntries([\n ['transparent', renderedTransparentTone],\n ['default', renderedDefaultTone],\n ...toneEntries\n .filter(([k]) => k !== 'default' && k !== 'transparent')\n .map(([k, v]) => [k, renderThemeColor(v, {bg, colorPalette})]),\n ]) as ThemeColorScheme\n}\n\nfunction renderThemeColor(\n value: ThemeColor,\n options: {\n bg?: string\n colorPalette: ThemeColorPalette\n },\n): ThemeColor {\n const {colorPalette, bg} = options\n\n const blendMode = value._blend || 'multiply'\n\n const baseBg = renderColorValue(value.base.bg, {colorPalette, bg, blendMode})\n\n const colorOptions: RenderColorValueOptions = {colorPalette, bg: baseBg, blendMode}\n\n const base: ThemeColorBase = {\n bg: baseBg,\n fg: renderColorValue(value.base.fg, colorOptions),\n border: renderColorValue(value.base.border, colorOptions),\n focusRing: renderColorValue(value.base.focusRing, colorOptions),\n shadow: {\n outline: renderColorValue(value.base.shadow.outline, colorOptions),\n umbra: renderColorValue(value.base.shadow.umbra, {\n ...colorOptions,\n bg: undefined,\n colorPalette: {...colorPalette, black: '#000000'},\n }),\n penumbra: renderColorValue(value.base.shadow.penumbra, {\n ...colorOptions,\n bg: undefined,\n colorPalette: {...colorPalette, black: '#000000'},\n }),\n ambient: renderColorValue(value.base.shadow.ambient, {\n ...colorOptions,\n bg: undefined,\n colorPalette: {...colorPalette, black: '#000000'},\n }),\n },\n skeleton: value.base.skeleton && {\n from: renderColorValue(value.base.skeleton?.from, colorOptions),\n to: renderColorValue(value.base.skeleton?.to, colorOptions),\n },\n }\n\n const button = renderThemeColorButton(value.button, {colorPalette, base, blendMode})\n\n const selectable = renderThemeColorSelectable(value.selectable || value.button.ghost, {\n colorPalette,\n base,\n blendMode,\n })\n\n return {\n ...value,\n _blend: blendMode,\n avatar: renderThemeColorAvatar(value.avatar, {base, colorPalette, blendMode}),\n badge: renderThemeColorBadge(value.badge, {base, colorPalette, blendMode}),\n base,\n button,\n card: renderThemeColorButtonStates(value.card, {base, colorPalette, blendMode}),\n input: renderThemeColorInput(value.input, {base, colorPalette, blendMode}),\n kbd: renderThemeColorKBD(value.kbd, {base, colorPalette, blendMode}),\n spot: renderSpotColorTheme(value.spot, {base, colorPalette, blendMode}),\n syntax: renderSyntaxColorTheme(value.syntax, {base, colorPalette, blendMode}),\n solid: {\n ...button.default,\n transparent: button.default.default,\n },\n muted: {\n ...button.bleed,\n transparent: button.bleed.default,\n },\n selectable,\n }\n}\n\nfunction renderThemeColorKBD(\n value: ThemeColorKBD | undefined,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n) {\n const {base, blendMode: rootBlendMode, colorPalette} = options\n const blendMode = value?._blend || 'multiply'\n\n const rootOptions: RenderColorValueOptions = {\n bg: base.bg,\n blendMode: rootBlendMode,\n colorPalette,\n }\n\n const bg = renderColorValue(value?.bg || 'gray/500', rootOptions)\n\n const colorOptions: RenderColorValueOptions = {\n bg,\n blendMode,\n colorPalette,\n }\n\n return {\n _blend: blendMode,\n bg,\n fg: renderColorValue(value?.fg || 'gray/500', colorOptions),\n border: renderColorValue(value?.border || 'gray/500', colorOptions),\n }\n}\n\nfunction renderThemeColorAvatar(\n value: ThemeColorAvatar | undefined,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorAvatar {\n return {\n gray: renderThemeColorAvatarColor(value?.gray, options),\n blue: renderThemeColorAvatarColor(value?.blue, options),\n purple: renderThemeColorAvatarColor(value?.purple, options),\n magenta: renderThemeColorAvatarColor(value?.magenta, options),\n red: renderThemeColorAvatarColor(value?.red, options),\n orange: renderThemeColorAvatarColor(value?.orange, options),\n yellow: renderThemeColorAvatarColor(value?.yellow, options),\n green: renderThemeColorAvatarColor(value?.green, options),\n cyan: renderThemeColorAvatarColor(value?.cyan, options),\n }\n}\n\nfunction renderThemeColorAvatarColor(\n value: ThemeColorAvatar['gray'] | undefined,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorAvatar['gray'] {\n const {base, blendMode: rootBlendMode, colorPalette} = options\n const blendMode = value?._blend || 'multiply'\n\n const rootOptions: RenderColorValueOptions = {\n bg: base.bg,\n blendMode: rootBlendMode,\n colorPalette,\n }\n\n const bg = renderColorValue(value?.bg || 'gray/500', rootOptions)\n\n const colorOptions: RenderColorValueOptions = {\n bg,\n blendMode,\n colorPalette,\n }\n\n return {\n _blend: blendMode,\n bg,\n fg: renderColorValue(value?.fg || 'gray/500', colorOptions),\n }\n}\n\nfunction renderThemeColorBadge(\n value: ThemeColorBadge | undefined,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorBadge {\n return {\n default: renderThemeColorBadgeColor(value?.default, options),\n primary: renderThemeColorBadgeColor(value?.primary, options),\n positive: renderThemeColorBadgeColor(value?.positive, options),\n caution: renderThemeColorBadgeColor(value?.caution, options),\n critical: renderThemeColorBadgeColor(value?.critical, options),\n }\n}\n\nfunction renderThemeColorBadgeColor(\n value: {_blend?: ThemeColorBlendModeKey; bg: string; fg: string} | undefined,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): {bg: string; fg: string} {\n const {base, blendMode: rootBlendMode, colorPalette} = options\n const blendMode = value?._blend || 'multiply'\n\n const rootOptions: RenderColorValueOptions = {\n bg: base.bg,\n blendMode: rootBlendMode,\n colorPalette,\n }\n\n const bg = renderColorValue(value?.bg || 'gray/500', rootOptions)\n\n const colorOptions: RenderColorValueOptions = {\n bg,\n blendMode,\n colorPalette,\n }\n\n return {\n bg,\n fg: renderColorValue(value?.fg || 'gray/500', colorOptions),\n }\n}\n\nfunction renderThemeColorButton(\n value: ThemeColorButton,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorButton {\n return {\n default: renderThemeColorButtonTones(value.default, options),\n ghost: renderThemeColorButtonTones(value.ghost, options),\n bleed: renderThemeColorButtonTones(value.bleed, options),\n }\n}\n\nfunction renderThemeColorButtonTones(\n value: ThemeColorButtonTones,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorButtonTones {\n return {\n default: renderThemeColorButtonStates(value.default, options),\n primary: renderThemeColorButtonStates(value.primary, options),\n positive: renderThemeColorButtonStates(value.positive, options),\n caution: renderThemeColorButtonStates(value.caution, options),\n critical: renderThemeColorButtonStates(value.critical, options),\n }\n}\n\nfunction renderThemeColorButtonStates(\n value: ThemeColorButtonStates,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorButtonStates {\n return {\n enabled: renderThemeColorGenericState(value.enabled, options),\n hovered: renderThemeColorGenericState(value.hovered, options),\n pressed: renderThemeColorGenericState(value.pressed, options),\n selected: renderThemeColorGenericState(value.selected, options),\n disabled: renderThemeColorGenericState(value.disabled, options),\n }\n}\n\nfunction renderThemeColorGenericState(\n value: ThemeColorGenericState,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorGenericState {\n const {base, blendMode: rootBlendMode, colorPalette} = options\n const blendMode = value._blend || 'multiply'\n\n const rootOptions: RenderColorValueOptions = {\n bg: base.bg,\n blendMode: rootBlendMode,\n colorPalette,\n }\n\n const bg = renderColorValue(value.bg, rootOptions)\n\n const colorOptions: RenderColorValueOptions = {\n bg,\n blendMode,\n colorPalette,\n }\n\n return {\n _blend: blendMode,\n bg,\n bg2: renderColorValue(value.bg2 || value.bg, colorOptions),\n fg: renderColorValue(value.fg, colorOptions),\n border: renderColorValue(value.border, colorOptions),\n icon: renderColorValue(value.icon, colorOptions),\n muted: {\n fg: renderColorValue(value.muted.fg, colorOptions),\n },\n accent: {\n fg: renderColorValue(value.accent.fg, colorOptions),\n },\n link: {\n fg: renderColorValue(value.link.fg, colorOptions),\n },\n code: {\n bg: renderColorValue(value.code.bg, colorOptions),\n fg: renderColorValue(value.code.fg, colorOptions),\n },\n skeleton: value.skeleton && {\n from: renderColorValue(value.skeleton?.from, colorOptions),\n to: renderColorValue(value.skeleton?.to, colorOptions),\n },\n }\n}\n\nfunction renderThemeColorInput(\n value: ThemeColorInput,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorInput {\n return {\n default: renderInputStatesColorTheme(value.default, options),\n invalid: renderInputStatesColorTheme(value.invalid, options),\n }\n}\n\nfunction renderInputStatesColorTheme(\n value: ThemeColorInputStates,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorInputStates {\n return {\n enabled: renderInputStateColorTheme(value.enabled, options),\n hovered: renderInputStateColorTheme(value.hovered, options),\n readOnly: renderInputStateColorTheme(value.readOnly, options),\n disabled: renderInputStateColorTheme(value.disabled, options),\n }\n}\n\nfunction renderInputStateColorTheme(\n value: ThemeColorInputState,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorInputState {\n const {colorPalette, base, blendMode: rootBlendMode} = options\n\n const blendMode = value._blend || 'multiply'\n\n const rootOptions: RenderColorValueOptions = {colorPalette, bg: base.bg, blendMode: rootBlendMode}\n\n const bg = renderColorValue(value.bg, rootOptions)\n\n const colorOptions: RenderColorValueOptions = {colorPalette, bg, blendMode}\n\n return {\n _blend: blendMode,\n bg,\n bg2: renderColorValue(value.bg2, colorOptions),\n fg: renderColorValue(value.fg, colorOptions),\n border: renderColorValue(value.border, colorOptions),\n placeholder: renderColorValue(value.placeholder, colorOptions),\n }\n}\n\nfunction renderThemeColorSelectable(\n value: ThemeColorSelectable,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorSelectable {\n return {\n default: renderThemeColorSelectableStates(value.default, options),\n primary: renderThemeColorSelectableStates(value.primary, options),\n positive: renderThemeColorSelectableStates(value.positive, options),\n caution: renderThemeColorSelectableStates(value.caution, options),\n critical: renderThemeColorSelectableStates(value.critical, options),\n }\n}\n\nfunction renderThemeColorSelectableStates(\n value: ThemeColorSelectableStates,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorSelectableStates {\n return {\n enabled: renderThemeColorGenericState(value.enabled, options),\n hovered: renderThemeColorGenericState(value.hovered, options),\n pressed: renderThemeColorGenericState(value.pressed, options),\n selected: renderThemeColorGenericState(value.selected, options),\n disabled: renderThemeColorGenericState(value.disabled, options),\n }\n}\n\nfunction renderSpotColorTheme(\n value: ThemeColorSpot,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorSpot {\n const {colorPalette, base, blendMode} = options\n\n const colorOptions: RenderColorValueOptions = {colorPalette, bg: base.bg, blendMode}\n\n return {\n gray: renderColorValue(value.gray, colorOptions),\n cyan: renderColorValue(value.cyan, colorOptions),\n blue: renderColorValue(value.blue, colorOptions),\n purple: renderColorValue(value.purple, colorOptions),\n magenta: renderColorValue(value.magenta, colorOptions),\n red: renderColorValue(value.red, colorOptions),\n orange: renderColorValue(value.orange, colorOptions),\n yellow: renderColorValue(value.yellow, colorOptions),\n green: renderColorValue(value.green, colorOptions),\n }\n}\n\nfunction renderSyntaxColorTheme(\n value: ThemeColorSyntax,\n options: {\n base: ThemeColorBase\n blendMode: ThemeColorBlendModeKey\n colorPalette: ThemeColorPalette\n },\n): ThemeColorSyntax {\n const {colorPalette, base, blendMode} = options\n\n const colorOptions: RenderColorValueOptions = {colorPalette, bg: base.bg, blendMode}\n\n return {\n atrule: renderColorValue(value.atrule, colorOptions),\n attrName: renderColorValue(value.attrName, colorOptions),\n attrValue: renderColorValue(value.attrValue, colorOptions),\n attribute: renderColorValue(value.attribute, colorOptions),\n boolean: renderColorValue(value.boolean, colorOptions),\n builtin: renderColorValue(value.builtin, colorOptions),\n cdata: renderColorValue(value.cdata, colorOptions),\n char: renderColorValue(value.char, colorOptions),\n class: renderColorValue(value.class, colorOptions),\n className: renderColorValue(value.className, colorOptions),\n comment: renderColorValue(value.comment, colorOptions),\n constant: renderColorValue(value.constant, colorOptions),\n deleted: renderColorValue(value.deleted, colorOptions),\n doctype: renderColorValue(value.doctype, colorOptions),\n entity: renderColorValue(value.entity, colorOptions),\n function: renderColorValue(value.function, colorOptions),\n hexcode: renderColorValue(value.hexcode, colorOptions),\n id: renderColorValue(value.id, colorOptions),\n important: renderColorValue(value.important, colorOptions),\n inserted: renderColorValue(value.inserted, colorOptions),\n keyword: renderColorValue(value.keyword, colorOptions),\n number: renderColorValue(value.number, colorOptions),\n operator: renderColorValue(value.operator, colorOptions),\n prolog: renderColorValue(value.prolog, colorOptions),\n property: renderColorValue(value.property, colorOptions),\n pseudoClass: renderColorValue(value.pseudoClass, colorOptions),\n pseudoElement: renderColorValue(value.pseudoElement, colorOptions),\n punctuation: renderColorValue(value.punctuation, colorOptions),\n regex: renderColorValue(value.regex, colorOptions),\n selector: renderColorValue(value.selector, colorOptions),\n string: renderColorValue(value.string, colorOptions),\n symbol: renderColorValue(value.symbol, colorOptions),\n tag: renderColorValue(value.tag, colorOptions),\n unit: renderColorValue(value.unit, colorOptions),\n url: renderColorValue(value.url, colorOptions),\n variable: renderColorValue(value.variable, colorOptions),\n }\n}\n","import {ThemeConfig} from '../config'\nimport {RootTheme} from '../system'\nimport {buildColorTheme} from './buildColorTheme'\nimport {defaultThemeConfig} from './defaults/config'\nimport {defaultThemeFonts} from './defaults/fonts'\nimport {renderThemeColorSchemes} from './renderColorTheme'\n\n/** @internal */\nexport function buildTheme(config?: ThemeConfig): RootTheme {\n const colorTheme = buildColorTheme(config)\n\n return {\n avatar: config?.avatar ?? defaultThemeConfig.avatar,\n button: config?.button ?? defaultThemeConfig.button,\n card: config?.card ?? defaultThemeConfig.card,\n color: renderThemeColorSchemes(colorTheme, config),\n container: config?.container ?? defaultThemeConfig.container,\n focusRing: config?.focusRing ?? defaultThemeConfig.focusRing,\n fonts: config?.fonts ?? defaultThemeFonts,\n input: config?.input ?? defaultThemeConfig.input,\n media: config?.media ?? defaultThemeConfig.media,\n radius: config?.radius ?? defaultThemeConfig.radius,\n shadows: config?.shadows ?? defaultThemeConfig.shadows,\n space: config?.space ?? defaultThemeConfig.space,\n\n styles: config?.styles ?? defaultThemeConfig.styles,\n }\n}\n","import {RootTheme} from '../../system'\n\nconst STROKE_WIDTH = 1\nconst OUTLINE_WIDTH = 0.5\n\nexport const config: Omit<RootTheme, 'color' | 'fonts'> = {\n avatar: {\n sizes: [\n {distance: -3, size: 19},\n {distance: -6, size: 31},\n {distance: -9, size: 51},\n ],\n focusRing: {offset: 0, width: 1},\n },\n button: {\n textWeight: 'medium',\n border: {width: STROKE_WIDTH},\n focusRing: {offset: -1, width: 2},\n },\n card: {\n border: {width: STROKE_WIDTH},\n focusRing: {offset: -1, width: 1},\n shadow: {outline: OUTLINE_WIDTH},\n },\n container: [480, 640, 960, 1280, 1600, 1920],\n focusRing: {\n offset: -1,\n width: 1,\n },\n media: [360, 600, 900, 1200, 1800, 2400],\n radius: [0, 1, 3, 6, 9, 12, 21],\n shadows: [\n null,\n {umbra: [0, 0, 0, 0], penumbra: [0, 0, 0, 0], ambient: [0, 0, 0, 0]},\n {umbra: [0, 3, 5, -2], penumbra: [0, 6, 10, 0], ambient: [0, 1, 18, 1]},\n {umbra: [0, 7, 8, -4], penumbra: [0, 12, 17, 2], ambient: [0, 5, 22, 4]},\n {umbra: [0, 9, 11, -5], penumbra: [0, 18, 28, 2], ambient: [0, 7, 34, 6]},\n {umbra: [0, 11, 15, -7], penumbra: [0, 24, 38, 3], ambient: [0, 9, 46, 8]},\n ],\n space: [0, 4, 8, 12, 20, 32, 52, 84, 136, 220],\n input: {\n border: {\n width: STROKE_WIDTH,\n },\n checkbox: {\n size: 17,\n focusRing: {offset: -1, width: 1},\n },\n radio: {\n size: 17,\n markSize: 9,\n focusRing: {offset: -1, width: 1},\n },\n switch: {\n width: 21,\n height: 13,\n padding: 2,\n transitionDurationMs: 150,\n transitionTimingFunction: 'ease-out',\n focusRing: {offset: 1, width: 1},\n },\n select: {\n focusRing: {offset: -1, width: 1},\n },\n text: {\n focusRing: {offset: -1, width: 1},\n },\n },\n}\n","import {ThemeFonts} from '../../system'\n\nexport const fonts: ThemeFonts = {\n code: {\n family: 'ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace',\n weights: {\n regular: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n },\n sizes: [\n {\n ascenderHeight: 4,\n descenderHeight: 4,\n fontSize: 10,\n iconSize: 17,\n lineHeight: 15,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 5,\n descenderHeight: 5,\n fontSize: 13,\n iconSize: 21,\n lineHeight: 19,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 6,\n descenderHeight: 6,\n fontSize: 16,\n iconSize: 25,\n lineHeight: 23,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 7,\n descenderHeight: 7,\n fontSize: 19,\n iconSize: 29,\n lineHeight: 27,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 8,\n descenderHeight: 8,\n fontSize: 22,\n iconSize: 33,\n lineHeight: 31,\n letterSpacing: 0,\n },\n ],\n },\n heading: {\n family:\n 'Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Liberation Sans\", Helvetica, Arial, system-ui, sans-serif',\n weights: {\n regular: 700,\n medium: 800,\n semibold: 900,\n bold: 900,\n },\n sizes: [\n {\n ascenderHeight: 5,\n descenderHeight: 5,\n fontSize: 13,\n iconSize: 17,\n lineHeight: 19,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 6,\n descenderHeight: 6,\n fontSize: 16,\n iconSize: 25,\n lineHeight: 23,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 7,\n descenderHeight: 7,\n fontSize: 21,\n iconSize: 33,\n lineHeight: 29,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 8,\n descenderHeight: 8,\n fontSize: 27,\n iconSize: 41,\n lineHeight: 35,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 9.5,\n descenderHeight: 8.5,\n fontSize: 33,\n iconSize: 49,\n lineHeight: 41,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 10.5,\n descenderHeight: 9.5,\n fontSize: 38,\n iconSize: 53,\n lineHeight: 47,\n letterSpacing: 0,\n },\n ],\n },\n label: {\n family:\n 'Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Liberation Sans\", system-ui, sans-serif',\n weights: {\n regular: 600,\n medium: 700,\n semibold: 800,\n bold: 900,\n },\n sizes: [\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 9.8,\n iconSize: 15,\n lineHeight: 11,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 11.25,\n iconSize: 17,\n lineHeight: 12,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 12.75,\n iconSize: 19,\n lineHeight: 13,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 14,\n iconSize: 21,\n lineHeight: 14,\n letterSpacing: 0.5,\n },\n {\n ascenderHeight: 2,\n descenderHeight: 2,\n fontSize: 15.5,\n iconSize: 23,\n lineHeight: 15,\n letterSpacing: 0.5,\n },\n ],\n },\n text: {\n family:\n 'Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Liberation Sans\", Helvetica, Arial, system-ui, sans-serif',\n weights: {\n regular: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n },\n sizes: [\n {\n ascenderHeight: 4,\n descenderHeight: 4,\n fontSize: 10,\n iconSize: 17,\n lineHeight: 15,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 5,\n descenderHeight: 5,\n fontSize: 13,\n iconSize: 21,\n lineHeight: 19,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 6,\n descenderHeight: 6,\n fontSize: 16,\n iconSize: 25,\n lineHeight: 23,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 7.5,\n descenderHeight: 6.5,\n fontSize: 19,\n iconSize: 29,\n lineHeight: 27,\n letterSpacing: 0,\n },\n {\n ascenderHeight: 8.5,\n descenderHeight: 7.5,\n fontSize: 22,\n iconSize: 33,\n lineHeight: 31,\n letterSpacing: 0,\n },\n ],\n },\n}\n","import {buildTheme} from '../../build'\nimport {config} from './config'\nimport {fonts} from './fonts'\n\n/**\n * @public\n */\nexport const studioTheme = buildTheme({...config, fonts})\n"],"names":["createSelectableTones","opts","base","dark","solid","muted","default","_createSelectableStates","primary","positive","caution","critical","tone","enabled","selectable","state","hovered","pressed","selected","disabled","createSolidTones","name","transparent","createButtonTones","mode","button","createButtonModes","ghost","bleed","createCardStates","card","black","white","colors","lightest","lighter","light","darker","darkest","spots","gray","red","orange","yellow","green","cyan","blue","purple","magenta","tones","bg","fg","border","focusRing","defaultOpts","_ref","shadow","outline","umbra","penumbra","ambient","skeleton","from","to","_ref2","color","bg2","icon","accent","link","code","_ref3","_ref4","_ref5","input","placeholder","_ref6","spot","_ref7","key","syntax","atrule","attrName","attrValue","attribute","boolean","builtin","cdata","char","class","className","comment","constant","deleted","doctype","entity","function","hexcode","id","important","inserted","keyword","number","operator","prolog","property","pseudoClass","pseudoElement","punctuation","regex","selector","string","symbol","tag","unit","url","variable","createInputModes","readOnly","invalid","createMutedTones","createSpot","createColorTheme","partialOpts","arguments","length","undefined","builders","_createColorScheme","_createColor","THEME_COLOR_BLEND_MODES","THEME_COLOR_BASE_TONES","THEME_COLOR_STATE_TONES","THEME_COLOR_STATES","THEME_COLOR_BUTTON_MODES","THEME_COLOR_INPUT_MODES","THEME_COLOR_INPUT_STATES","THEME_COLOR_AVATAR_COLORS","COLOR_HUES","isColorBlendModeValue","str","includes","isColorHueKey","isColorTintKey","COLOR_TINTS","isColorButtonMode","COLOR_CONFIG_BASE_KEYS","COLOR_CONFIG_STATE_KEYS","COLOR_CONFIG_BLEND_KEYS","COLOR_CONFIG_AVATAR_COLORS","COLOR_CONFIG_BASE_TONES","COLOR_CONFIG_STATE_TONES","COLOR_CONFIG_STATES","COLOR_CONFIG_INPUT_MODES","COLOR_CONFIG_INPUT_STATES","parseTokenKey","segments","split","segment0","shift","isColorConfigBaseTone","join","isColorConfigBaseKey","type","isColorConfigBlendKey","segment1","isColorConfigStateTone","segment2","isColorConfigStateKey","parseTokenValue","tint","isColorOpacityValue","opacity","Number","isColorValue","hue","concat","value","isColorTokenValue","_a","_b","test","resolveColorTokenValue","context","scheme","node","Error","compileColorTokenValue","defaultColorTokens","avatar","_blend","_hue","badge","kbd","merge","target","source","ret","Object","keys","prevValue","nextValue","isRecord","Boolean","Array","isArray","resolveColorTokens","inputTokens","sparseTokens","resolveAvatarColorTokens","resolveBadgeColorTokens","resolveBaseColorTokens","resolveButtonColorTokens","resolveCardColorTokens","resolveInputColorTokens","resolveKBDColorTokens","resolveSelectableColorTokens","resolveSpotColorTokens","resolveSyntaxColorTokens","tokens","_resolveAvatarColorTokens","spec0","spec1","_resolveBadgeColorTokens","resolveBaseColorTones","resolveButtonToneColorTokens","resolveButtonModeColorTokens","_c","_d","resolveButtonStateColorTokens","_e","_f","_g","_h","_i","_j","_k","_l","_m","_n","spec2","spec3","resolveCardStateColorTokens","resolveInputModeColorTokens","states","resolveInputStateColorTokens","resolveSelectableToneColorTokens","resolveSelectableStateColorTokens","DEFAULT_COLOR_TOKEN_VALUE","buildColorTheme","config","buildColorScheme","options","resolvedConfig","buildBaseColorTheme","_o","_p","_color","blendMode","buildButtonColorTheme","buildSelectableColorTheme","_dark","buildAvatarColorTheme","buildBadgeColorTheme","buildInputColorTheme","buildSpotColorTheme","buildSyntaxColorTheme","_buildAvatarColorTheme","_buildBadgeColorTheme","modes","buildButtonTonesColorTheme","buildButtonStatesColorTheme","buildButtonStateColorTheme","buildInputStatesColorTheme","buildInputStateColorTheme","buildSelectableStatesColorTheme","buildSelectableStateColorTheme","BORDER_WIDTH","OUTLINE_WIDTH","defaultThemeConfig","sizes","distance","size","offset","width","textWeight","container","media","radius","shadows","space","checkbox","radio","markSize","switch","height","padding","transitionDurationMs","transitionTimingFunction","select","text","styles","root","transition","defaultThemeFonts","family","weights","regular","medium","semibold","bold","ascenderHeight","descenderHeight","fontSize","iconSize","lineHeight","letterSpacing","heading","label","defaultColorPalette","mixChannel","b","s","weight","diff","delta","mix","r","g","multiplyChannel","multiply","screenChannel","screen","lerp","x","y","a","invlerp","clamp","min","max","Math","range","x1","y1","x2","y2","round","hexToRgb","hex","hexR","slice","hexG","hexB","parseInt","rgbaToRGBA","rgba","values","replace","parseFloat","rgbToHex","toString","rgbToHsl","_ref8","cmin","cmax","h","l","abs","toFixed","hslToRgb","hsl","c","m","HEX_CHARS","HSL_RE","isHexChars","indexOf","isHex","parseHsl","res","exec","parseColor","startsWith","getContrastRatio","rgb1","rgb2","c1","rgb_lrgb","c2","l1","lrgb_luminance","l2","_ref9","rgb_lrgb1","v","_ref10","rgb","RGB_RANGE","mixThemeColor","paletteRange","convertedBgColor","convertedColor","resultColor","renderColorValue","colorPalette","renderColorHex","hexBeforeMix","err","console","log","warn","renderThemeColorSchemes","palette","renderThemeColorScheme","toneEntries","entries","transparentTone","find","_ref11","k","defaultTone","_ref12","renderedTransparentTone","renderThemeColor","renderedDefaultTone","fromEntries","filter","_ref13","map","_ref14","baseBg","colorOptions","renderThemeColorButton","renderThemeColorSelectable","renderThemeColorAvatar","renderThemeColorBadge","renderThemeColorButtonStates","renderThemeColorInput","renderThemeColorKBD","renderSpotColorTheme","renderSyntaxColorTheme","rootBlendMode","rootOptions","renderThemeColorAvatarColor","renderThemeColorBadgeColor","renderThemeColorButtonTones","renderThemeColorGenericState","renderInputStatesColorTheme","renderInputStateColorTheme","renderThemeColorSelectableStates","buildTheme","colorTheme","fonts","STROKE_WIDTH","studioTheme"],"mappings":"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"}