@terrazzo/token-tools 0.9.0 → 0.9.1

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/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # @terrazzo/token-tools
2
2
 
3
+ ## 0.9.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#502](https://github.com/terrazzoapp/terrazzo/pull/502) [`c9792bd`](https://github.com/terrazzoapp/terrazzo/commit/c9792bdef27aa2edab3f9f74b37a794f0a14da59) Thanks [@drwpow](https://github.com/drwpow)! - Fix bug in parsing LAB colors
8
+
9
+ - [#502](https://github.com/terrazzoapp/terrazzo/pull/502) [`c9792bd`](https://github.com/terrazzoapp/terrazzo/commit/c9792bdef27aa2edab3f9f74b37a794f0a14da59) Thanks [@drwpow](https://github.com/drwpow)! - Add support for lab65 colors (not technically part of CSS Module 4 spec, but a nice convenience)
10
+
3
11
  ## 0.9.0
4
12
 
5
13
  ### Minor Changes
package/dist/css.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { BooleanTokenNormalized, BorderTokenNormalized, ColorTokenNormalized, CubicBezierTokenNormalized, DimensionTokenNormalized, DurationTokenNormalized, FontFamilyTokenNormalized, FontWeightTokenNormalized, GradientTokenNormalized, LinkTokenNormalized, NumberTokenNormalized, ShadowTokenNormalized, ShadowValueNormalized, StringTokenNormalized, StrokeStyleTokenNormalized, TokenNormalized, TokenNormalizedSet, TransitionTokenNormalized, TypographyTokenNormalized } from "./types-C68LbU3N.js";
1
+ import { BooleanTokenNormalized, BorderTokenNormalized, ColorTokenNormalized, CubicBezierTokenNormalized, DimensionTokenNormalized, DurationTokenNormalized, FontFamilyTokenNormalized, FontWeightTokenNormalized, GradientTokenNormalized, LinkTokenNormalized, NumberTokenNormalized, ShadowTokenNormalized, ShadowValueNormalized, StringTokenNormalized, StrokeStyleTokenNormalized, TokenNormalized, TokenNormalizedSet, TransitionTokenNormalized, TypographyTokenNormalized } from "./types-Ci92nIR9.js";
2
2
 
3
3
  //#region src/css/lib.d.ts
4
4
  /** Function that generates a var(…) statement */
package/dist/css.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"css.d.ts","names":[],"sources":["../src/css/lib.ts","../src/css/css-types.ts","../src/css/color.ts","../src/css/boolean.ts","../src/css/border.ts","../src/css/cubic-bezier.ts","../src/css/dimension.ts","../src/css/duration.ts","../src/css/font-family.ts","../src/css/font-weight.ts","../src/css/gradient.ts","../src/css/link.ts","../src/css/number.ts","../src/css/shadow.ts","../src/css/string.ts","../src/css/stroke-style.ts","../src/css/transition.ts","../src/css/typography.ts","../src/css/index.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"css.d.ts","names":[],"sources":["../src/css/lib.ts","../src/css/css-types.ts","../src/css/color.ts","../src/css/boolean.ts","../src/css/border.ts","../src/css/cubic-bezier.ts","../src/css/dimension.ts","../src/css/duration.ts","../src/css/font-family.ts","../src/css/font-weight.ts","../src/css/gradient.ts","../src/css/link.ts","../src/css/number.ts","../src/css/shadow.ts","../src/css/string.ts","../src/css/stroke-style.ts","../src/css/transition.ts","../src/css/typography.ts","../src/css/index.ts"],"sourcesContent":[],"mappings":"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"}
package/dist/css.js CHANGED
@@ -1,5 +1,5 @@
1
- import { CSS_TO_CULORI, kebabCase, parseColor, tokenToCulori } from "./string-BZ5Le1WD.js";
2
- import { displayable, formatCss, formatHex, formatHex8, modeA98, modeHsl, modeHsv, modeHwb, modeLab, modeLch, modeLrgb, modeOklab, modeOklch, modeP3, modeProphoto, modeRec2020, modeRgb, modeXyz50, modeXyz65, toGamut, useMode } from "culori/fn";
1
+ import { CSS_TO_CULORI, kebabCase, parseColor, tokenToCulori } from "./string-Cq7Oa0sE.js";
2
+ import { displayable, formatCss, formatHex, formatHex8, modeA98, modeHsl, modeHsv, modeHwb, modeLab, modeLab65, modeLch, modeLrgb, modeOklab, modeOklch, modeP3, modeProphoto, modeRec2020, modeRgb, modeXyz50, modeXyz65, toGamut, useMode } from "culori/fn";
3
3
  import { displayable as displayable$1 } from "culori";
4
4
 
5
5
  //#region src/css/lib.ts
@@ -65,6 +65,7 @@ const converters = {
65
65
  hsv: useMode(modeHsv),
66
66
  hwb: useMode(modeHwb),
67
67
  lab: useMode(modeLab),
68
+ lab65: useMode(modeLab65),
68
69
  lch: useMode(modeLch),
69
70
  lrgb: useMode(modeLrgb),
70
71
  oklab: useMode(modeOklab),
@@ -83,13 +84,19 @@ const converters = {
83
84
  * we’re just preserving the original colorspace.
84
85
  */
85
86
  function downsample($value, culoriColor) {
87
+ if (!($value.colorSpace in CSS_TO_CULORI)) throw new Error(`Invalid colorSpace "${$value.colorSpace}". Expected one of: ${Object.keys(CSS_TO_CULORI).join(", ")}`);
86
88
  const conversionSpace = CSS_TO_CULORI[$value.colorSpace] || "oklab";
87
- const converter = converters[conversionSpace];
89
+ let gamutSpace = conversionSpace;
90
+ if (gamutSpace === "lab" || gamutSpace === "lab65") gamutSpace = "lch";
91
+ else if (gamutSpace === "oklab") gamutSpace = "oklch";
92
+ const srgb = converters[conversionSpace](toGamut("rgb", gamutSpace)(culoriColor));
93
+ const p3 = converters[conversionSpace](toGamut("p3", gamutSpace)(culoriColor));
94
+ const rec2020 = converters[conversionSpace](toGamut("rec2020", gamutSpace)(culoriColor));
88
95
  return {
89
96
  ".": formatCss(culoriColor),
90
- srgb: formatCss(converter(toGamut("rgb", conversionSpace)(culoriColor))),
91
- p3: formatCss(converter(toGamut("p3", conversionSpace)(culoriColor))),
92
- rec2020: formatCss(converter(toGamut("rec2020", conversionSpace)(culoriColor)))
97
+ srgb: formatCss(srgb),
98
+ p3: formatCss(p3),
99
+ rec2020: formatCss(rec2020)
93
100
  };
94
101
  }
95
102
 
package/dist/css.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"css.js","names":["token: TokenNormalized","name: string","token: BooleanTokenNormalized","token: ColorTokenNormalized","options: TransformCSSValueOptions","formatColor: (color: Color) => string","converters: Record<keyof typeof CULORI_TO_CSS, (color: Color) => Color>","$value: ColorTokenNormalized['$value']","culoriColor: Color","token: DimensionTokenNormalized","options: TransformCSSValueOptions","token: StrokeStyleTokenNormalized","options: TransformCSSValueOptions","token: BorderTokenNormalized","options: TransformCSSValueOptions","colorKey: string","token: CubicBezierTokenNormalized","options: TransformCSSValueOptions","token: DurationTokenNormalized","options: TransformCSSValueOptions","token: FontFamilyTokenNormalized","options: TransformCSSValueOptions","token: FontWeightTokenNormalized","options: TransformCSSValueOptions","token: GradientTokenNormalized","options: TransformCSSValueOptions","colors: (string | WideGamutColorValue)[]","positions: string[]","i: number","token: LinkTokenNormalized","options: TransformCSSValueOptions","token: NumberTokenNormalized","options: TransformCSSValueOptions","value: ShadowValueNormalized","options: TransformCSSValueOptions & {\n colorValue: string;\n partialAliasOf?: Partial<Record<keyof typeof value, string>>;\n }","token: ShadowTokenNormalized","options: TransformCSSValueOptions","colorKey: string","token: StringTokenNormalized","options: TransformCSSValueOptions","token: TransitionTokenNormalized","options: TransformCSSValueOptions","token: TypographyTokenNormalized","options: TransformCSSValueOptions","output: Record<string, string>","transformedValue: string","token: T","tokenWithModeValue: T"],"sources":["../src/css/lib.ts","../src/css/boolean.ts","../src/css/color.ts","../src/css/dimension.ts","../src/css/stroke-style.ts","../src/css/border.ts","../src/css/cubic-bezier.ts","../src/css/duration.ts","../src/css/font-family.ts","../src/css/font-weight.ts","../src/css/gradient.ts","../src/css/link.ts","../src/css/number.ts","../src/css/shadow.ts","../src/css/string.ts","../src/css/transition.ts","../src/css/typography.ts","../src/css/index.ts"],"sourcesContent":["import type { TokenNormalized } from '../types.js';\n\n/** Function that generates a var(…) statement */\nexport type IDGenerator<T = TokenNormalized> = (token: T) => string;\n\nexport function defaultAliasTransform(token: TokenNormalized) {\n if (!token) {\n throw new Error('Undefined token');\n }\n return `var(${makeCSSVar(token.id)})`;\n}\n\n/** Generate shorthand CSS for select token types */\nexport function generateShorthand({ $type, localID }: { $type: string; localID: string }): string | undefined {\n switch ($type) {\n case 'transition': {\n return ['duration', 'delay', 'timing-function']\n .map((p) => makeCSSVar(`${localID}-${p}`, { wrapVar: true }))\n .join(' ');\n }\n // note: \"typography\" is not set in shorthand because it can often unset values unintentionally.\n // @see https://developer.mozilla.org/en-US/docs/Web/CSS/font\n }\n}\n\nconst CSS_VAR_RE =\n /(?:(\\p{Uppercase_Letter}?[\\p{Lowercase_Letter}\\p{Number}]+|[\\p{Uppercase_Letter}\\p{Number}]+|[\\u{80}-\\u{10FFFF}\\p{Number}]+)|.)/u;\n\nexport interface MakeCSSVarOptions {\n /** Prefix with string */\n prefix?: string;\n /**\n * Wrap with `var(…)`\n * @default false\n */\n wrapVar?: boolean;\n}\n\n/**\n * Generate a valid CSS variable from any string\n * Code by @dfrankland\n */\nexport function makeCSSVar(name: string, { prefix, wrapVar = false }: MakeCSSVarOptions = {}): string {\n if (typeof name !== 'string') {\n throw new Error(`makeCSSVar() Expected string, received ${name}`);\n }\n\n let property = name.split(CSS_VAR_RE).filter(Boolean).join('-');\n if (prefix && !property.startsWith(`${prefix}-`)) {\n property = `${prefix}-${property}`;\n }\n const finalProperty = `--${property}`.toLocaleLowerCase();\n return wrapVar ? `var(${finalProperty})` : finalProperty;\n}\n","import type { BooleanTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert boolean value to CSS string */\nexport function transformBoolean(\n token: BooleanTokenNormalized,\n { tokensSet, transformAlias = defaultAliasTransform }: TransformCSSValueOptions,\n): string {\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n return token.$value === true ? '1' : '0';\n}\n","import {\n type Color,\n displayable,\n formatCss,\n formatHex,\n formatHex8,\n modeA98,\n modeHsl,\n modeHsv,\n modeHwb,\n modeLab,\n modeLch,\n modeLrgb,\n modeOklab,\n modeOklch,\n modeP3,\n modeProphoto,\n modeRec2020,\n modeRgb,\n modeXyz50,\n modeXyz65,\n toGamut,\n useMode,\n} from 'culori/fn';\nimport { CSS_TO_CULORI, type CULORI_TO_CSS, parseColor, tokenToCulori } from '../color.js';\nimport type { ColorTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\nexport type WideGamutColorValue = {\n '.': string;\n srgb: string;\n p3: string;\n rec2020: string;\n};\n\n/** Convert color value to CSS string */\nexport function transformColor(\n token: ColorTokenNormalized,\n options: TransformCSSValueOptions,\n): string | WideGamutColorValue {\n const { transformAlias = defaultAliasTransform, tokensSet } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n\n const {\n colorSpace,\n components,\n alpha = 1,\n } = typeof token.$value === 'string' ? parseColor(token.$value) : token.$value;\n const color = tokenToCulori({ colorSpace, components, alpha });\n\n if (!color) {\n throw new Error(`Can’t convert color ${JSON.stringify(token.$value)} to Culori color`);\n }\n\n let formatColor: (color: Color) => string = formatCss;\n if (options.color?.legacyHex) {\n formatColor = color.alpha !== 1 ? formatHex8 : formatHex;\n }\n\n return displayable(color) ? formatColor(color) : downsample({ colorSpace, components, alpha }, color);\n}\n\nconst converters: Record<keyof typeof CULORI_TO_CSS, (color: Color) => Color> = {\n a98: useMode(modeA98),\n hsl: useMode(modeHsl),\n hsv: useMode(modeHsv),\n hwb: useMode(modeHwb),\n lab: useMode(modeLab),\n lch: useMode(modeLch),\n lrgb: useMode(modeLrgb),\n oklab: useMode(modeOklab),\n oklch: useMode(modeOklch),\n p3: useMode(modeP3),\n prophoto: useMode(modeProphoto),\n rec2020: useMode(modeRec2020),\n rgb: useMode(modeRgb),\n xyz50: useMode(modeXyz50),\n xyz65: useMode(modeXyz65),\n};\n\n/**\n * Downsample color to sRGB/Display P3/Rec2020 colorspaces.\n * Note: because Culori tends to convert to RGB color spaces to ensure the operation,\n * we have to do an additional step of converting back. So we’re not really converting;\n * we’re just preserving the original colorspace.\n */\nfunction downsample($value: ColorTokenNormalized['$value'], culoriColor: Color) {\n const conversionSpace = CSS_TO_CULORI[$value.colorSpace] || 'oklab';\n const converter = converters[conversionSpace];\n return {\n '.': formatCss(culoriColor),\n srgb: formatCss(converter(toGamut('rgb', conversionSpace)(culoriColor))),\n p3: formatCss(converter(toGamut('p3', conversionSpace)(culoriColor))),\n rec2020: formatCss(converter(toGamut('rec2020', conversionSpace)(culoriColor))),\n };\n}\n","import type { DimensionTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert dimension value to CSS */\nexport function transformDimension(token: DimensionTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n\n return token.$value.value === 0 ? '0' : `${token.$value.value}${token.$value.unit}`;\n}\n","import type { StrokeStyleTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert strokeStyle value to CSS */\nexport function transformStrokeStyle(token: StrokeStyleTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n return typeof token.$value === 'string' ? token.$value : 'dashed'; // CSS doesn’t have `dash-array`; it’s just \"dashed\"\n}\n","import { displayable } from 'culori';\nimport type {\n BorderTokenNormalized,\n ColorTokenNormalized,\n DimensionTokenNormalized,\n StrokeStyleTokenNormalized,\n} from '../types.js';\nimport { transformColor } from './color.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { transformDimension } from './dimension.js';\nimport { defaultAliasTransform } from './lib.js';\nimport { transformStrokeStyle } from './stroke-style.js';\n\n/** Convert border value to multiple CSS values */\nexport function transformBorder(token: BorderTokenNormalized, options: TransformCSSValueOptions) {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n\n const width = token.partialAliasOf?.width\n ? transformAlias(tokensSet[token.partialAliasOf.width]!)\n : transformDimension({ $value: token.$value.width } as DimensionTokenNormalized, options);\n const color = token.partialAliasOf?.color\n ? transformAlias(tokensSet[token.partialAliasOf.color]!)\n : transformColor({ $value: token.$value.color } as ColorTokenNormalized, options);\n const style = token.partialAliasOf?.style\n ? transformAlias(tokensSet[token.partialAliasOf.style]!)\n : transformStrokeStyle({ $value: token.$value.style } as StrokeStyleTokenNormalized, options);\n\n const formatBorder = (colorKey: string) =>\n [width, style, typeof color === 'string' ? color : color[colorKey as keyof typeof color]].join(' ');\n\n return typeof color === 'string' || displayable(color.p3)\n ? formatBorder('.')\n : {\n '.': formatBorder('.'),\n srgb: formatBorder('srgb'),\n p3: formatBorder('p3'),\n rec2020: formatBorder('rec2020'),\n };\n}\n","import type { CubicBezierTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert cubicBezier value to CSS */\nexport function transformCubicBezier(token: CubicBezierTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n return `cubic-bezier(${token.$value\n .map((v, i) => (token.partialAliasOf?.[i] ? transformAlias(tokensSet[token.partialAliasOf[i]]!) : v))\n .join(', ')})`;\n}\n","import type { DurationTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert duration value to CSS */\nexport function transformDuration(token: DurationTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n\n return `${token.$value.value}${token.$value.unit}`;\n}\n","import type { FontFamilyTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\nconst FONT_NAME_KEYWORD = /^[a-z-]+$/;\n\nexport function transformFontFamily(token: FontFamilyTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n return token.$value.map((fontName) => (FONT_NAME_KEYWORD.test(fontName) ? fontName : `\"${fontName}\"`)).join(', ');\n}\n","import type { FontWeightTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert fontWeight value to CSS */\nexport function transformFontWeight(token: FontWeightTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n return String(token.$value);\n}\n","import type { ColorTokenNormalized, GradientTokenNormalized } from '../types.js';\nimport { type WideGamutColorValue, transformColor } from './color.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert gradient value to CSS */\nexport function transformGradient(\n token: GradientTokenNormalized,\n options: TransformCSSValueOptions,\n): string | WideGamutColorValue {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n\n let isHDR = false;\n\n const colors: (string | WideGamutColorValue)[] = [];\n const positions: string[] = [];\n\n for (let i = 0; i < token.$value.length; i++) {\n const { color, position } = token.$value[i]!;\n const colorValue = token.partialAliasOf?.[i]?.color\n ? transformAlias(tokensSet[token.partialAliasOf[i]!.color!]!)\n : transformColor({ $value: color } as ColorTokenNormalized, options);\n if (typeof colorValue !== 'string') {\n isHDR = true;\n }\n colors.push(colorValue);\n positions.push(\n token.partialAliasOf?.[i]?.position\n ? transformAlias(tokensSet[token.partialAliasOf[i]!.position!]!)\n : `${100 * position}%`,\n );\n }\n\n function formatStop(i: number, colorKey = '.') {\n return `${typeof colors[i] === 'string' ? colors[i] : colors[i]![colorKey as keyof (typeof colors)[number]]} ${positions[i]}`;\n }\n\n return !isHDR\n ? token.$value.map((_, i) => formatStop(i, positions[i]!)).join(', ')\n : {\n '.': token.$value.map((_, i) => formatStop(i, '.')).join(', '),\n srgb: token.$value.map((_, i) => formatStop(i, 'srgb')).join(', '),\n p3: token.$value.map((_, i) => formatStop(i, 'p3')).join(', '),\n rec2020: token.$value.map((_, i) => formatStop(i, 'rec2020')).join(', '),\n };\n}\n","import type { LinkTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert link value to CSS */\nexport function transformLink(token: LinkTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n return `url(\"${token.$value}\")`;\n}\n","import type { NumberTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert number value to CSS */\nexport function transformNumber(token: NumberTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n return String(token.$value);\n}\n","import type {\n ColorTokenNormalized,\n DimensionTokenNormalized,\n ShadowTokenNormalized,\n ShadowValueNormalized,\n} from '../types.js';\nimport { transformColor } from './color.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { transformDimension } from './dimension.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert shadow subvalue to CSS */\nexport function transformShadowLayer(\n value: ShadowValueNormalized,\n options: TransformCSSValueOptions & {\n colorValue: string;\n partialAliasOf?: Partial<Record<keyof typeof value, string>>;\n },\n): string | Record<string, string> {\n const { tokensSet, colorValue, partialAliasOf, transformAlias = defaultAliasTransform } = options;\n const offsetX = partialAliasOf?.offsetX\n ? transformAlias(tokensSet[partialAliasOf.offsetX]!)\n : transformDimension({ $value: value.offsetX } as DimensionTokenNormalized, options);\n const offsetY = partialAliasOf?.offsetY\n ? transformAlias(tokensSet[partialAliasOf.offsetY]!)\n : transformDimension({ $value: value.offsetY } as DimensionTokenNormalized, options);\n const blur = partialAliasOf?.blur\n ? transformAlias(tokensSet[partialAliasOf.blur]!)\n : transformDimension({ $value: value.blur } as DimensionTokenNormalized, options);\n const spread = partialAliasOf?.spread\n ? transformAlias(tokensSet[partialAliasOf.spread]!)\n : transformDimension({ $value: value.spread } as DimensionTokenNormalized, options);\n const inset = value?.inset === true ? 'inset' : undefined;\n\n return [inset, offsetX, offsetY, blur, spread, colorValue].filter(Boolean).join(' ');\n}\n\n/** Convert shadow value to CSS */\nexport function transformShadow(\n token: ShadowTokenNormalized,\n options: TransformCSSValueOptions,\n): string | Record<string, string> {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n const colors = token.$value.map((v, i) =>\n token.partialAliasOf?.[i]?.color\n ? transformAlias(tokensSet[token.partialAliasOf[i]!.color!]!)\n : transformColor({ $value: v.color } as ColorTokenNormalized, options),\n );\n const isHDR = colors.some((c) => typeof c === 'object');\n\n const formatShadow = (colorKey: string) =>\n token.$value\n .map((v, i) =>\n transformShadowLayer(v, {\n tokensSet,\n colorValue:\n typeof colors[i] === 'string'\n ? (colors[i] as string)\n : colors[i]![colorKey as keyof (typeof colors)[number]]!,\n partialAliasOf: token.partialAliasOf?.[i],\n transformAlias,\n }),\n )\n .join(', ');\n\n return !isHDR\n ? formatShadow('.')\n : {\n '.': formatShadow('.'),\n srgb: formatShadow('srgb'),\n p3: formatShadow('p3'),\n rec2020: formatShadow('rec2020'),\n };\n}\n","import type { StringTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert string value to CSS */\nexport function transformString(token: StringTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n // this seems like a useless function—because it is—but this is a placeholder\n // that can handle unexpected values in the future should any arise\n return String(token.$value);\n}\n","import type { CubicBezierTokenNormalized, DurationTokenNormalized, TransitionTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { transformCubicBezier } from './cubic-bezier.js';\nimport { transformDuration } from './duration.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert transition value to shorthand */\nexport function transformTransition(token: TransitionTokenNormalized, options: TransformCSSValueOptions) {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n\n const duration = token.partialAliasOf?.duration\n ? transformAlias(tokensSet[token.partialAliasOf.duration]!)\n : transformDuration({ $value: token.$value.duration } as DurationTokenNormalized, options);\n const delay = token.partialAliasOf?.delay\n ? transformAlias(tokensSet[token.partialAliasOf.delay]!)\n : transformDuration({ $value: token.$value.delay } as DurationTokenNormalized, options);\n const timingFunction = token.partialAliasOf?.timingFunction\n ? transformAlias(tokensSet[token.partialAliasOf.timingFunction]!)\n : transformCubicBezier({ $value: token.$value.timingFunction } as CubicBezierTokenNormalized, options);\n\n return `${duration} ${delay} ${timingFunction}`;\n}\n","import { kebabCase } from '../string.js';\nimport type {\n DimensionTokenNormalized,\n FontFamilyTokenNormalized,\n FontWeightTokenNormalized,\n NumberTokenNormalized,\n StringTokenNormalized,\n TokenNormalized,\n TypographyTokenNormalized,\n} from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { transformDimension } from './dimension.js';\nimport { transformFontFamily } from './font-family.js';\nimport { transformFontWeight } from './font-weight.js';\nimport { defaultAliasTransform } from './lib.js';\nimport { transformNumber } from './number.js';\nimport { transformString } from './string.js';\n\n/** Convert typography value to multiple CSS values */\nexport function transformTypography(token: TypographyTokenNormalized, options: TransformCSSValueOptions) {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n const output: Record<string, string> = {};\n for (const [property, subvalue] of Object.entries(token.$value)) {\n let transformedValue: string;\n const aliasedID = token.aliasChain?.[0] ?? token.partialAliasOf?.[property];\n if (aliasedID) {\n const resolvedToken = tokensSet[aliasedID] as TypographyTokenNormalized;\n transformedValue = transformAlias(\n // if resolving against a typography token, inject the property as well\n resolvedToken.$type === 'typography' ? ({ id: `${aliasedID}-${property}` } as TokenNormalized) : resolvedToken,\n );\n } else {\n switch (property) {\n case 'fontFamily': {\n transformedValue = transformFontFamily({ $value: subvalue } as FontFamilyTokenNormalized, options);\n break;\n }\n case 'fontSize':\n case 'letterSpacing': {\n transformedValue = transformDimension({ $value: subvalue } as DimensionTokenNormalized, options);\n break;\n }\n case 'fontWeight': {\n transformedValue = transformFontWeight({ $value: subvalue } as FontWeightTokenNormalized, options);\n break;\n }\n case 'lineHeight': {\n if (typeof subvalue === 'number') {\n transformedValue = transformNumber({ $value: subvalue } as NumberTokenNormalized, options);\n } else {\n transformedValue = transformDimension({ $value: subvalue } as DimensionTokenNormalized, options);\n }\n break;\n }\n default: {\n transformedValue = transformString({ $value: subvalue } as StringTokenNormalized, options);\n break;\n }\n }\n }\n output[kebabCase(property)] = transformedValue;\n }\n return output;\n}\n","import type { TokenNormalized } from '../types.js';\nimport { transformBoolean } from './boolean.js';\nimport { transformBorder } from './border.js';\nimport { transformColor } from './color.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { transformCubicBezier } from './cubic-bezier.js';\nimport { transformDimension } from './dimension.js';\nimport { transformDuration } from './duration.js';\nimport { transformFontFamily } from './font-family.js';\nimport { transformFontWeight } from './font-weight.js';\nimport { transformGradient } from './gradient.js';\nimport { transformLink } from './link.js';\nimport { transformNumber } from './number.js';\nimport { transformShadow } from './shadow.js';\nimport { transformString } from './string.js';\nimport { transformStrokeStyle } from './stroke-style.js';\nimport { transformTransition } from './transition.js';\nimport { transformTypography } from './typography.js';\n\nexport * from './boolean.js';\nexport * from './border.js';\nexport * from './color.js';\nexport * from './cubic-bezier.js';\nexport * from './dimension.js';\nexport * from './duration.js';\nexport * from './font-family.js';\nexport * from './font-weight.js';\nexport * from './gradient.js';\nexport * from './lib.js';\nexport * from './link.js';\nexport * from './number.js';\nexport * from './shadow.js';\nexport * from './string.js';\nexport * from './stroke-style.js';\nexport * from './transition.js';\nexport * from './typography.js';\n\n/** Main CSS Transform */\nexport function transformCSSValue<T extends TokenNormalized = TokenNormalized>(\n token: T,\n { mode, ...options }: { mode: keyof T['mode'] } & TransformCSSValueOptions,\n) {\n const selectedMode = token.mode[mode as keyof typeof token.mode];\n if (!selectedMode) {\n return;\n }\n const tokenWithModeValue: T = {\n id: token.id,\n $type: token.$type,\n // note: do NOT carry over aliasOf/partialAliasOf as that will result in incorrect values\n ...selectedMode,\n } as any;\n switch (tokenWithModeValue.$type) {\n case 'boolean': {\n return transformBoolean(tokenWithModeValue, options);\n }\n case 'border': {\n return transformBorder(tokenWithModeValue, options);\n }\n case 'color': {\n return transformColor(tokenWithModeValue, options);\n }\n case 'cubicBezier': {\n return transformCubicBezier(tokenWithModeValue, options);\n }\n case 'dimension': {\n return transformDimension(tokenWithModeValue, options);\n }\n case 'duration': {\n return transformDuration(tokenWithModeValue, options);\n }\n case 'fontFamily': {\n return transformFontFamily(tokenWithModeValue, options);\n }\n case 'fontWeight': {\n return transformFontWeight(tokenWithModeValue, options);\n }\n case 'gradient': {\n return transformGradient(tokenWithModeValue, options);\n }\n case 'link': {\n return transformLink(tokenWithModeValue, options);\n }\n case 'number': {\n return transformNumber(tokenWithModeValue, options);\n }\n case 'shadow': {\n return transformShadow(tokenWithModeValue, options);\n }\n case 'string': {\n return transformString(tokenWithModeValue, options);\n }\n case 'strokeStyle': {\n return transformStrokeStyle(tokenWithModeValue, options);\n }\n case 'transition': {\n return transformTransition(tokenWithModeValue, options);\n }\n case 'typography': {\n return transformTypography(tokenWithModeValue, options);\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"css.js","names":["token: TokenNormalized","name: string","token: BooleanTokenNormalized","token: ColorTokenNormalized","options: TransformCSSValueOptions","formatColor: (color: Color) => string","converters: Record<keyof typeof CULORI_TO_CSS, (color: Color) => Color>","$value: ColorTokenNormalized['$value']","culoriColor: Color","token: DimensionTokenNormalized","options: TransformCSSValueOptions","token: StrokeStyleTokenNormalized","options: TransformCSSValueOptions","token: BorderTokenNormalized","options: TransformCSSValueOptions","colorKey: string","token: CubicBezierTokenNormalized","options: TransformCSSValueOptions","token: DurationTokenNormalized","options: TransformCSSValueOptions","token: FontFamilyTokenNormalized","options: TransformCSSValueOptions","token: FontWeightTokenNormalized","options: TransformCSSValueOptions","token: GradientTokenNormalized","options: TransformCSSValueOptions","colors: (string | WideGamutColorValue)[]","positions: string[]","i: number","token: LinkTokenNormalized","options: TransformCSSValueOptions","token: NumberTokenNormalized","options: TransformCSSValueOptions","value: ShadowValueNormalized","options: TransformCSSValueOptions & {\n colorValue: string;\n partialAliasOf?: Partial<Record<keyof typeof value, string>>;\n }","token: ShadowTokenNormalized","options: TransformCSSValueOptions","colorKey: string","token: StringTokenNormalized","options: TransformCSSValueOptions","token: TransitionTokenNormalized","options: TransformCSSValueOptions","token: TypographyTokenNormalized","options: TransformCSSValueOptions","output: Record<string, string>","transformedValue: string","token: T","tokenWithModeValue: T"],"sources":["../src/css/lib.ts","../src/css/boolean.ts","../src/css/color.ts","../src/css/dimension.ts","../src/css/stroke-style.ts","../src/css/border.ts","../src/css/cubic-bezier.ts","../src/css/duration.ts","../src/css/font-family.ts","../src/css/font-weight.ts","../src/css/gradient.ts","../src/css/link.ts","../src/css/number.ts","../src/css/shadow.ts","../src/css/string.ts","../src/css/transition.ts","../src/css/typography.ts","../src/css/index.ts"],"sourcesContent":["import type { TokenNormalized } from '../types.js';\n\n/** Function that generates a var(…) statement */\nexport type IDGenerator<T = TokenNormalized> = (token: T) => string;\n\nexport function defaultAliasTransform(token: TokenNormalized) {\n if (!token) {\n throw new Error('Undefined token');\n }\n return `var(${makeCSSVar(token.id)})`;\n}\n\n/** Generate shorthand CSS for select token types */\nexport function generateShorthand({ $type, localID }: { $type: string; localID: string }): string | undefined {\n switch ($type) {\n case 'transition': {\n return ['duration', 'delay', 'timing-function']\n .map((p) => makeCSSVar(`${localID}-${p}`, { wrapVar: true }))\n .join(' ');\n }\n // note: \"typography\" is not set in shorthand because it can often unset values unintentionally.\n // @see https://developer.mozilla.org/en-US/docs/Web/CSS/font\n }\n}\n\nconst CSS_VAR_RE =\n /(?:(\\p{Uppercase_Letter}?[\\p{Lowercase_Letter}\\p{Number}]+|[\\p{Uppercase_Letter}\\p{Number}]+|[\\u{80}-\\u{10FFFF}\\p{Number}]+)|.)/u;\n\nexport interface MakeCSSVarOptions {\n /** Prefix with string */\n prefix?: string;\n /**\n * Wrap with `var(…)`\n * @default false\n */\n wrapVar?: boolean;\n}\n\n/**\n * Generate a valid CSS variable from any string\n * Code by @dfrankland\n */\nexport function makeCSSVar(name: string, { prefix, wrapVar = false }: MakeCSSVarOptions = {}): string {\n if (typeof name !== 'string') {\n throw new Error(`makeCSSVar() Expected string, received ${name}`);\n }\n\n let property = name.split(CSS_VAR_RE).filter(Boolean).join('-');\n if (prefix && !property.startsWith(`${prefix}-`)) {\n property = `${prefix}-${property}`;\n }\n const finalProperty = `--${property}`.toLocaleLowerCase();\n return wrapVar ? `var(${finalProperty})` : finalProperty;\n}\n","import type { BooleanTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert boolean value to CSS string */\nexport function transformBoolean(\n token: BooleanTokenNormalized,\n { tokensSet, transformAlias = defaultAliasTransform }: TransformCSSValueOptions,\n): string {\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n return token.$value === true ? '1' : '0';\n}\n","import {\n type Color,\n displayable,\n formatCss,\n formatHex,\n formatHex8,\n modeA98,\n modeHsl,\n modeHsv,\n modeHwb,\n modeLab,\n modeLab65,\n modeLch,\n modeLrgb,\n modeOklab,\n modeOklch,\n modeP3,\n modeProphoto,\n modeRec2020,\n modeRgb,\n modeXyz50,\n modeXyz65,\n toGamut,\n useMode,\n} from 'culori/fn';\nimport { CSS_TO_CULORI, type CULORI_TO_CSS, parseColor, tokenToCulori } from '../color.js';\nimport type { ColorTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\nexport type WideGamutColorValue = {\n '.': string;\n srgb: string;\n p3: string;\n rec2020: string;\n};\n\n/** Convert color value to CSS string */\nexport function transformColor(\n token: ColorTokenNormalized,\n options: TransformCSSValueOptions,\n): string | WideGamutColorValue {\n const { transformAlias = defaultAliasTransform, tokensSet } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n\n const {\n colorSpace,\n components,\n alpha = 1,\n } = typeof token.$value === 'string' ? parseColor(token.$value) : token.$value;\n const color = tokenToCulori({ colorSpace, components, alpha });\n\n if (!color) {\n throw new Error(`Can’t convert color ${JSON.stringify(token.$value)} to Culori color`);\n }\n\n let formatColor: (color: Color) => string = formatCss;\n if (options.color?.legacyHex) {\n formatColor = color.alpha !== 1 ? formatHex8 : formatHex;\n }\n\n return displayable(color) ? formatColor(color) : downsample({ colorSpace, components, alpha }, color);\n}\n\nconst converters: Record<keyof typeof CULORI_TO_CSS, (color: Color) => Color> = {\n a98: useMode(modeA98),\n hsl: useMode(modeHsl),\n hsv: useMode(modeHsv),\n hwb: useMode(modeHwb),\n lab: useMode(modeLab),\n lab65: useMode(modeLab65),\n lch: useMode(modeLch),\n lrgb: useMode(modeLrgb),\n oklab: useMode(modeOklab),\n oklch: useMode(modeOklch),\n p3: useMode(modeP3),\n prophoto: useMode(modeProphoto),\n rec2020: useMode(modeRec2020),\n rgb: useMode(modeRgb),\n xyz50: useMode(modeXyz50),\n xyz65: useMode(modeXyz65),\n};\n\n/**\n * Downsample color to sRGB/Display P3/Rec2020 colorspaces.\n * Note: because Culori tends to convert to RGB color spaces to ensure the operation,\n * we have to do an additional step of converting back. So we’re not really converting;\n * we’re just preserving the original colorspace.\n */\nfunction downsample($value: ColorTokenNormalized['$value'], culoriColor: Color) {\n if (!($value.colorSpace in CSS_TO_CULORI)) {\n throw new Error(\n `Invalid colorSpace \"${$value.colorSpace}\". Expected one of: ${Object.keys(CSS_TO_CULORI).join(', ')}`,\n );\n }\n const conversionSpace = CSS_TO_CULORI[$value.colorSpace] || 'oklab';\n let gamutSpace = conversionSpace;\n // bugfix. \"lab\" and \"oklab\" have a bug in Culori\n // https://github.com/Evercoder/culori/issues/261\n if (gamutSpace === 'lab' || gamutSpace === 'lab65') {\n gamutSpace = 'lch';\n } else if (gamutSpace === 'oklab') {\n gamutSpace = 'oklch';\n }\n const srgb = converters[conversionSpace](toGamut('rgb', gamutSpace)(culoriColor));\n const p3 = converters[conversionSpace](toGamut('p3', gamutSpace)(culoriColor));\n const rec2020 = converters[conversionSpace](toGamut('rec2020', gamutSpace)(culoriColor));\n return {\n '.': formatCss(culoriColor),\n srgb: formatCss(srgb),\n p3: formatCss(p3),\n rec2020: formatCss(rec2020),\n };\n}\n","import type { DimensionTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert dimension value to CSS */\nexport function transformDimension(token: DimensionTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n\n return token.$value.value === 0 ? '0' : `${token.$value.value}${token.$value.unit}`;\n}\n","import type { StrokeStyleTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert strokeStyle value to CSS */\nexport function transformStrokeStyle(token: StrokeStyleTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n return typeof token.$value === 'string' ? token.$value : 'dashed'; // CSS doesn’t have `dash-array`; it’s just \"dashed\"\n}\n","import { displayable } from 'culori';\nimport type {\n BorderTokenNormalized,\n ColorTokenNormalized,\n DimensionTokenNormalized,\n StrokeStyleTokenNormalized,\n} from '../types.js';\nimport { transformColor } from './color.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { transformDimension } from './dimension.js';\nimport { defaultAliasTransform } from './lib.js';\nimport { transformStrokeStyle } from './stroke-style.js';\n\n/** Convert border value to multiple CSS values */\nexport function transformBorder(token: BorderTokenNormalized, options: TransformCSSValueOptions) {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n\n const width = token.partialAliasOf?.width\n ? transformAlias(tokensSet[token.partialAliasOf.width]!)\n : transformDimension({ $value: token.$value.width } as DimensionTokenNormalized, options);\n const color = token.partialAliasOf?.color\n ? transformAlias(tokensSet[token.partialAliasOf.color]!)\n : transformColor({ $value: token.$value.color } as ColorTokenNormalized, options);\n const style = token.partialAliasOf?.style\n ? transformAlias(tokensSet[token.partialAliasOf.style]!)\n : transformStrokeStyle({ $value: token.$value.style } as StrokeStyleTokenNormalized, options);\n\n const formatBorder = (colorKey: string) =>\n [width, style, typeof color === 'string' ? color : color[colorKey as keyof typeof color]].join(' ');\n\n return typeof color === 'string' || displayable(color.p3)\n ? formatBorder('.')\n : {\n '.': formatBorder('.'),\n srgb: formatBorder('srgb'),\n p3: formatBorder('p3'),\n rec2020: formatBorder('rec2020'),\n };\n}\n","import type { CubicBezierTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert cubicBezier value to CSS */\nexport function transformCubicBezier(token: CubicBezierTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n return `cubic-bezier(${token.$value\n .map((v, i) => (token.partialAliasOf?.[i] ? transformAlias(tokensSet[token.partialAliasOf[i]]!) : v))\n .join(', ')})`;\n}\n","import type { DurationTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert duration value to CSS */\nexport function transformDuration(token: DurationTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n\n return `${token.$value.value}${token.$value.unit}`;\n}\n","import type { FontFamilyTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\nconst FONT_NAME_KEYWORD = /^[a-z-]+$/;\n\nexport function transformFontFamily(token: FontFamilyTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n return token.$value.map((fontName) => (FONT_NAME_KEYWORD.test(fontName) ? fontName : `\"${fontName}\"`)).join(', ');\n}\n","import type { FontWeightTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert fontWeight value to CSS */\nexport function transformFontWeight(token: FontWeightTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n return String(token.$value);\n}\n","import type { ColorTokenNormalized, GradientTokenNormalized } from '../types.js';\nimport { type WideGamutColorValue, transformColor } from './color.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert gradient value to CSS */\nexport function transformGradient(\n token: GradientTokenNormalized,\n options: TransformCSSValueOptions,\n): string | WideGamutColorValue {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n\n let isHDR = false;\n\n const colors: (string | WideGamutColorValue)[] = [];\n const positions: string[] = [];\n\n for (let i = 0; i < token.$value.length; i++) {\n const { color, position } = token.$value[i]!;\n const colorValue = token.partialAliasOf?.[i]?.color\n ? transformAlias(tokensSet[token.partialAliasOf[i]!.color!]!)\n : transformColor({ $value: color } as ColorTokenNormalized, options);\n if (typeof colorValue !== 'string') {\n isHDR = true;\n }\n colors.push(colorValue);\n positions.push(\n token.partialAliasOf?.[i]?.position\n ? transformAlias(tokensSet[token.partialAliasOf[i]!.position!]!)\n : `${100 * position}%`,\n );\n }\n\n function formatStop(i: number, colorKey = '.') {\n return `${typeof colors[i] === 'string' ? colors[i] : colors[i]![colorKey as keyof (typeof colors)[number]]} ${positions[i]}`;\n }\n\n return !isHDR\n ? token.$value.map((_, i) => formatStop(i, positions[i]!)).join(', ')\n : {\n '.': token.$value.map((_, i) => formatStop(i, '.')).join(', '),\n srgb: token.$value.map((_, i) => formatStop(i, 'srgb')).join(', '),\n p3: token.$value.map((_, i) => formatStop(i, 'p3')).join(', '),\n rec2020: token.$value.map((_, i) => formatStop(i, 'rec2020')).join(', '),\n };\n}\n","import type { LinkTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert link value to CSS */\nexport function transformLink(token: LinkTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n return `url(\"${token.$value}\")`;\n}\n","import type { NumberTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert number value to CSS */\nexport function transformNumber(token: NumberTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n return String(token.$value);\n}\n","import type {\n ColorTokenNormalized,\n DimensionTokenNormalized,\n ShadowTokenNormalized,\n ShadowValueNormalized,\n} from '../types.js';\nimport { transformColor } from './color.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { transformDimension } from './dimension.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert shadow subvalue to CSS */\nexport function transformShadowLayer(\n value: ShadowValueNormalized,\n options: TransformCSSValueOptions & {\n colorValue: string;\n partialAliasOf?: Partial<Record<keyof typeof value, string>>;\n },\n): string | Record<string, string> {\n const { tokensSet, colorValue, partialAliasOf, transformAlias = defaultAliasTransform } = options;\n const offsetX = partialAliasOf?.offsetX\n ? transformAlias(tokensSet[partialAliasOf.offsetX]!)\n : transformDimension({ $value: value.offsetX } as DimensionTokenNormalized, options);\n const offsetY = partialAliasOf?.offsetY\n ? transformAlias(tokensSet[partialAliasOf.offsetY]!)\n : transformDimension({ $value: value.offsetY } as DimensionTokenNormalized, options);\n const blur = partialAliasOf?.blur\n ? transformAlias(tokensSet[partialAliasOf.blur]!)\n : transformDimension({ $value: value.blur } as DimensionTokenNormalized, options);\n const spread = partialAliasOf?.spread\n ? transformAlias(tokensSet[partialAliasOf.spread]!)\n : transformDimension({ $value: value.spread } as DimensionTokenNormalized, options);\n const inset = value?.inset === true ? 'inset' : undefined;\n\n return [inset, offsetX, offsetY, blur, spread, colorValue].filter(Boolean).join(' ');\n}\n\n/** Convert shadow value to CSS */\nexport function transformShadow(\n token: ShadowTokenNormalized,\n options: TransformCSSValueOptions,\n): string | Record<string, string> {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n const colors = token.$value.map((v, i) =>\n token.partialAliasOf?.[i]?.color\n ? transformAlias(tokensSet[token.partialAliasOf[i]!.color!]!)\n : transformColor({ $value: v.color } as ColorTokenNormalized, options),\n );\n const isHDR = colors.some((c) => typeof c === 'object');\n\n const formatShadow = (colorKey: string) =>\n token.$value\n .map((v, i) =>\n transformShadowLayer(v, {\n tokensSet,\n colorValue:\n typeof colors[i] === 'string'\n ? (colors[i] as string)\n : colors[i]![colorKey as keyof (typeof colors)[number]]!,\n partialAliasOf: token.partialAliasOf?.[i],\n transformAlias,\n }),\n )\n .join(', ');\n\n return !isHDR\n ? formatShadow('.')\n : {\n '.': formatShadow('.'),\n srgb: formatShadow('srgb'),\n p3: formatShadow('p3'),\n rec2020: formatShadow('rec2020'),\n };\n}\n","import type { StringTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert string value to CSS */\nexport function transformString(token: StringTokenNormalized, options: TransformCSSValueOptions): string {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n // this seems like a useless function—because it is—but this is a placeholder\n // that can handle unexpected values in the future should any arise\n return String(token.$value);\n}\n","import type { CubicBezierTokenNormalized, DurationTokenNormalized, TransitionTokenNormalized } from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { transformCubicBezier } from './cubic-bezier.js';\nimport { transformDuration } from './duration.js';\nimport { defaultAliasTransform } from './lib.js';\n\n/** Convert transition value to shorthand */\nexport function transformTransition(token: TransitionTokenNormalized, options: TransformCSSValueOptions) {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n if (token.aliasChain?.[0]) {\n return transformAlias(tokensSet[token.aliasChain[0]]!);\n }\n\n const duration = token.partialAliasOf?.duration\n ? transformAlias(tokensSet[token.partialAliasOf.duration]!)\n : transformDuration({ $value: token.$value.duration } as DurationTokenNormalized, options);\n const delay = token.partialAliasOf?.delay\n ? transformAlias(tokensSet[token.partialAliasOf.delay]!)\n : transformDuration({ $value: token.$value.delay } as DurationTokenNormalized, options);\n const timingFunction = token.partialAliasOf?.timingFunction\n ? transformAlias(tokensSet[token.partialAliasOf.timingFunction]!)\n : transformCubicBezier({ $value: token.$value.timingFunction } as CubicBezierTokenNormalized, options);\n\n return `${duration} ${delay} ${timingFunction}`;\n}\n","import { kebabCase } from '../string.js';\nimport type {\n DimensionTokenNormalized,\n FontFamilyTokenNormalized,\n FontWeightTokenNormalized,\n NumberTokenNormalized,\n StringTokenNormalized,\n TokenNormalized,\n TypographyTokenNormalized,\n} from '../types.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { transformDimension } from './dimension.js';\nimport { transformFontFamily } from './font-family.js';\nimport { transformFontWeight } from './font-weight.js';\nimport { defaultAliasTransform } from './lib.js';\nimport { transformNumber } from './number.js';\nimport { transformString } from './string.js';\n\n/** Convert typography value to multiple CSS values */\nexport function transformTypography(token: TypographyTokenNormalized, options: TransformCSSValueOptions) {\n const { tokensSet, transformAlias = defaultAliasTransform } = options;\n const output: Record<string, string> = {};\n for (const [property, subvalue] of Object.entries(token.$value)) {\n let transformedValue: string;\n const aliasedID = token.aliasChain?.[0] ?? token.partialAliasOf?.[property];\n if (aliasedID) {\n const resolvedToken = tokensSet[aliasedID] as TypographyTokenNormalized;\n transformedValue = transformAlias(\n // if resolving against a typography token, inject the property as well\n resolvedToken.$type === 'typography' ? ({ id: `${aliasedID}-${property}` } as TokenNormalized) : resolvedToken,\n );\n } else {\n switch (property) {\n case 'fontFamily': {\n transformedValue = transformFontFamily({ $value: subvalue } as FontFamilyTokenNormalized, options);\n break;\n }\n case 'fontSize':\n case 'letterSpacing': {\n transformedValue = transformDimension({ $value: subvalue } as DimensionTokenNormalized, options);\n break;\n }\n case 'fontWeight': {\n transformedValue = transformFontWeight({ $value: subvalue } as FontWeightTokenNormalized, options);\n break;\n }\n case 'lineHeight': {\n if (typeof subvalue === 'number') {\n transformedValue = transformNumber({ $value: subvalue } as NumberTokenNormalized, options);\n } else {\n transformedValue = transformDimension({ $value: subvalue } as DimensionTokenNormalized, options);\n }\n break;\n }\n default: {\n transformedValue = transformString({ $value: subvalue } as StringTokenNormalized, options);\n break;\n }\n }\n }\n output[kebabCase(property)] = transformedValue;\n }\n return output;\n}\n","import type { TokenNormalized } from '../types.js';\nimport { transformBoolean } from './boolean.js';\nimport { transformBorder } from './border.js';\nimport { transformColor } from './color.js';\nimport type { TransformCSSValueOptions } from './css-types.js';\nimport { transformCubicBezier } from './cubic-bezier.js';\nimport { transformDimension } from './dimension.js';\nimport { transformDuration } from './duration.js';\nimport { transformFontFamily } from './font-family.js';\nimport { transformFontWeight } from './font-weight.js';\nimport { transformGradient } from './gradient.js';\nimport { transformLink } from './link.js';\nimport { transformNumber } from './number.js';\nimport { transformShadow } from './shadow.js';\nimport { transformString } from './string.js';\nimport { transformStrokeStyle } from './stroke-style.js';\nimport { transformTransition } from './transition.js';\nimport { transformTypography } from './typography.js';\n\nexport * from './boolean.js';\nexport * from './border.js';\nexport * from './color.js';\nexport * from './cubic-bezier.js';\nexport * from './dimension.js';\nexport * from './duration.js';\nexport * from './font-family.js';\nexport * from './font-weight.js';\nexport * from './gradient.js';\nexport * from './lib.js';\nexport * from './link.js';\nexport * from './number.js';\nexport * from './shadow.js';\nexport * from './string.js';\nexport * from './stroke-style.js';\nexport * from './transition.js';\nexport * from './typography.js';\n\n/** Main CSS Transform */\nexport function transformCSSValue<T extends TokenNormalized = TokenNormalized>(\n token: T,\n { mode, ...options }: { mode: keyof T['mode'] } & TransformCSSValueOptions,\n) {\n const selectedMode = token.mode[mode as keyof typeof token.mode];\n if (!selectedMode) {\n return;\n }\n const tokenWithModeValue: T = {\n id: token.id,\n $type: token.$type,\n // note: do NOT carry over aliasOf/partialAliasOf as that will result in incorrect values\n ...selectedMode,\n } as any;\n switch (tokenWithModeValue.$type) {\n case 'boolean': {\n return transformBoolean(tokenWithModeValue, options);\n }\n case 'border': {\n return transformBorder(tokenWithModeValue, options);\n }\n case 'color': {\n return transformColor(tokenWithModeValue, options);\n }\n case 'cubicBezier': {\n return transformCubicBezier(tokenWithModeValue, options);\n }\n case 'dimension': {\n return transformDimension(tokenWithModeValue, options);\n }\n case 'duration': {\n return transformDuration(tokenWithModeValue, options);\n }\n case 'fontFamily': {\n return transformFontFamily(tokenWithModeValue, options);\n }\n case 'fontWeight': {\n return transformFontWeight(tokenWithModeValue, options);\n }\n case 'gradient': {\n return transformGradient(tokenWithModeValue, options);\n }\n case 'link': {\n return transformLink(tokenWithModeValue, options);\n }\n case 'number': {\n return transformNumber(tokenWithModeValue, options);\n }\n case 'shadow': {\n return transformShadow(tokenWithModeValue, options);\n }\n case 'string': {\n return transformString(tokenWithModeValue, options);\n }\n case 'strokeStyle': {\n return transformStrokeStyle(tokenWithModeValue, options);\n }\n case 'transition': {\n return transformTransition(tokenWithModeValue, options);\n }\n case 'typography': {\n return transformTypography(tokenWithModeValue, options);\n }\n }\n}\n"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,9 +1,9 @@
1
- import { AliasToken, AliasValue, BooleanToken, BooleanTokenNormalized, BooleanValue, BorderToken, BorderTokenNormalized, BorderValue, BorderValueNormalized, ColorSpace, ColorToken, ColorTokenNormalized, ColorValue, ColorValueNormalized, CubicBezierToken, CubicBezierTokenNormalized, CubicBezierValue, DimensionToken, DimensionTokenNormalized, DimensionValue, DurationToken, DurationTokenNormalized, DurationValue, FontFamilyToken, FontFamilyTokenNormalized, FontFamilyValue, FontFamilyValueNormalized, FontWeightToken, FontWeightTokenNormalized, FontWeightValue, FontWeightValueNormalized, GradientStop, GradientStopNormalized, GradientToken, GradientTokenNormalized, GradientValue, GradientValueNormalized, Group, GroupCore, GroupOrToken, LinkToken, LinkTokenNormalized, LinkValue, ModeMap, NumberToken, NumberTokenNormalized, NumberValue, ShadowToken, ShadowTokenNormalized, ShadowValue, ShadowValueNormalized, StringToken, StringTokenNormalized, StringValue, StrokeStyleToken, StrokeStyleTokenNormalized, StrokeStyleValue, StrokeStyleValueExpanded, Token, TokenCore, TokenMode, TokenNormalized, TokenNormalizedCore, TokenNormalizedSet, TokensSet, TransitionToken, TransitionTokenNormalized, TransitionValue, TransitionValueNormalized, TypographyToken, TypographyTokenNormalized, TypographyValue, TypographyValueNormalized } from "./types-C68LbU3N.js";
1
+ import { AliasToken, AliasValue, BooleanToken, BooleanTokenNormalized, BooleanValue, BorderToken, BorderTokenNormalized, BorderValue, BorderValueNormalized, ColorSpace, ColorToken, ColorTokenNormalized, ColorValue, ColorValueNormalized, CubicBezierToken, CubicBezierTokenNormalized, CubicBezierValue, DimensionToken, DimensionTokenNormalized, DimensionValue, DurationToken, DurationTokenNormalized, DurationValue, FontFamilyToken, FontFamilyTokenNormalized, FontFamilyValue, FontFamilyValueNormalized, FontWeightToken, FontWeightTokenNormalized, FontWeightValue, FontWeightValueNormalized, GradientStop, GradientStopNormalized, GradientToken, GradientTokenNormalized, GradientValue, GradientValueNormalized, Group, GroupCore, GroupOrToken, LinkToken, LinkTokenNormalized, LinkValue, ModeMap, NumberToken, NumberTokenNormalized, NumberValue, ShadowToken, ShadowTokenNormalized, ShadowValue, ShadowValueNormalized, StringToken, StringTokenNormalized, StringValue, StrokeStyleToken, StrokeStyleTokenNormalized, StrokeStyleValue, StrokeStyleValueExpanded, Token, TokenCore, TokenMode, TokenNormalized, TokenNormalizedCore, TokenNormalizedSet, TokensSet, TransitionToken, TransitionTokenNormalized, TransitionValue, TransitionValueNormalized, TypographyToken, TypographyTokenNormalized, TypographyValue, TypographyValueNormalized } from "./types-Ci92nIR9.js";
2
2
  import "culori/css";
3
3
  import { Color } from "culori/fn";
4
4
 
5
5
  //#region src/color.d.ts
6
- declare const CULORI_TO_CSS: Record<Extract<Color['mode'], 'a98' | 'lab' | 'lch' | 'oklab' | 'oklch' | 'hsl' | 'hsv' | 'hwb' | 'lrgb' | 'p3' | 'prophoto' | 'rec2020' | 'rgb' | 'xyz50' | 'xyz65'>, ColorSpace>;
6
+ declare const CULORI_TO_CSS: Record<Extract<Color['mode'], 'a98' | 'lab' | 'lab65' | 'lch' | 'oklab' | 'oklch' | 'hsl' | 'hsv' | 'hwb' | 'lrgb' | 'p3' | 'prophoto' | 'rec2020' | 'rgb' | 'xyz50' | 'xyz65'>, ColorSpace>;
7
7
  declare const CSS_TO_CULORI: {
8
8
  readonly a98: "a98";
9
9
  readonly 'display-p3': "p3";
@@ -11,6 +11,7 @@ declare const CSS_TO_CULORI: {
11
11
  readonly hsv: "hsv";
12
12
  readonly hwb: "hwb";
13
13
  readonly lab: "lab";
14
+ readonly 'lab-d65': "lab65";
14
15
  readonly lch: "lch";
15
16
  readonly oklab: "oklab";
16
17
  readonly oklch: "oklch";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/color.ts","../src/id.ts","../src/string.ts","../src/transform.ts"],"sourcesContent":[],"mappings":";;;;;cAMa,eAAe,OAC1B,QACE,wJAiBF;cAmBW;EAtCA,SAAA,GAAA,EAAA,KAoCH;EAAA,SAAA,YAAA,EAAA,IAAA;EAAA,SAlCN,GAAA,EAAA,KAAA;EAAK,SADP,GAAA,EAAA,KAAA;EAAO,SAkBP,GAAA,EAAA,KAAA;EAAU,SAnBgB,GAAA,EAAA,KAAA;EAAM,SAAA,GAAA,EAAA,KAAA;EAsCrB,SAAA,KAAA,EAgBH,OAAA;EAGM,SAAA,KAAU,EAAA,OAAA;EA8DV,SAAA,cAAa,EAAA,UAAA;EAAA,SAAA,OAAA,EAAA,SAAA;EAAA,SAAQ,IAAA,EAAA,KAAA;EAAoB,SAAG,aAAA,EAAA,MAAA;EAAK,SAAA,SAAA,EAAA,OAAA;;;;ACxHjD,iBD0DA,UAAA,CC1DO,KAAA,EAAA,MAAA,CAAA,ED0DoB,oBC1DpB;AAKvB;AASgB,iBD0GA,aAAA,CC1GS,KAAA,ED0GY,oBC1GZ,CAAA,ED0GmC,KC1GnC,GAAA,SAAA;AAKzB;;;;iBAnBgB,OAAA;;iBAKA,aAAA;;ADJH,iBCaG,SAAA,CDuBN,KAAA,EAAA,MAAA,CAAA,EAAA,MAAA;;AAlCN,iBCgBY,UAAA,CDhBZ,KAAA,EAAA,MAAA,CAAA,EAAA,MAAA;;AAiBF,iBCcc,OAAA,CDdd,EAAA,EAAA,MAAA,CAAA,EAAA;EAAU,KAnBgB,EAAA,MAAA;EAAM,KAAA,CAAA,EAAA,MAAA;AAsClC,CAAA;AAmBA;;;;iBE9DgB,MAAA;;iBAuBA,+CAA+C,WAAW,IAAI;;AFlBjE,iBEuBG,SAAA,CFaN,GAAA,EAAA,MAAA,CAAA,EAAA,MAAA;;;;UG1CO,sBAAA;;;;;AHMJ,iBGAG,uBAAA,CHoCN,KAAA,EAAA,OAAA,EAAA;EAAA;AAAA,CAAA,EGpCyD,sBHoCzD,CAAA,EAAA,IAAA"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/color.ts","../src/id.ts","../src/string.ts","../src/transform.ts"],"sourcesContent":[],"mappings":";;;;;cAMa,eAAe,OAC1B,QACE,kKAkBF;cAoBW;EAxCA,SAAA,GAAA,EAAA,KAsCH;EAAA,SAAA,YAAA,EAAA,IAAA;EAAA,SApCN,GAAA,EAAA,KAAA;EAAK,SADP,GAAA,EAAA,KAAA;EAAO,SAmBP,GAAA,EAAA,KAAA;EAAU,SApBgB,GAAA,EAAA,KAAA;EAAM,SAAA,SAAA,EAAA,OAAA;EAwCrB,SAAA,GAAA,EAAA,KAiBH;EAGM,SAAA,KAAU,EAAA,OAAA;EA+DV,SAAA,KAAA,EAAa,OAAA;EAAA,SAAA,cAAA,EAAA,UAAA;EAAA,SAAQ,OAAA,EAAA,SAAA;EAAoB,SAAG,IAAA,EAAA,KAAA;EAAK,SAAA,aAAA,EAAA,MAAA;;;;AC5HjE;AAKgB,iBDwDA,UAAA,CCxDa,KAAA,EAAA,MAAA,CAAA,EDwDc,oBCxDd;AAS7B;AAKgB,iBDyGA,aAAA,CCzGU,KAAA,EDyGW,oBCzGX,CAAA,EDyGkC,KCzGlC,GAAA,SAAA;AAe1B;;;;iBAlCgB,OAAA;;iBAKA,aAAA;;ADJH,iBCaG,SAAA,CDyBN,KAAA,EAAA,MAAA,CAAA,EAAA,MAAA;;AApCN,iBCgBY,UAAA,CDhBZ,KAAA,EAAA,MAAA,CAAA,EAAA,MAAA;;AAkBF,iBCac,OAAA,CDbd,EAAA,EAAA,MAAA,CAAA,EAAA;EAAU,KApBgB,EAAA,MAAA;EAAM,KAAA,CAAA,EAAA,MAAA;AAwClC,CAAA;AAoBA;;;;iBEjEgB,MAAA;;iBAuBA,+CAA+C,WAAW,IAAI;;AFlBjE,iBEuBG,SAAA,CFeN,GAAA,EAAA,MAAA,CAAA,EAAA,MAAA;;;;UG5CO,sBAAA;;;;;AHMJ,iBGAG,uBAAA,CHsCN,KAAA,EAAA,OAAA,EAAA;EAAA;AAAA,CAAA,EGtCyD,sBHsCzD,CAAA,EAAA,IAAA"}
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { CSS_TO_CULORI, CULORI_TO_CSS, kebabCase, padStr, parseColor, pluralize, tokenToCulori } from "./string-BZ5Le1WD.js";
1
+ import { CSS_TO_CULORI, CULORI_TO_CSS, kebabCase, padStr, parseColor, pluralize, tokenToCulori } from "./string-Cq7Oa0sE.js";
2
2
  import wcmatch from "wildcard-match";
3
3
 
4
4
  //#region src/id.ts
package/dist/js.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { TokenNormalized } from "./types-C68LbU3N.js";
1
+ import { TokenNormalized } from "./types-Ci92nIR9.js";
2
2
 
3
3
  //#region src/js/index.d.ts
4
4
  interface TransformJSValueOptions {
@@ -9,6 +9,7 @@ const CULORI_TO_CSS = {
9
9
  hsv: "hsv",
10
10
  hwb: "hwb",
11
11
  lab: "lab",
12
+ lab65: "lab-d65",
12
13
  lch: "lch",
13
14
  lrgb: "srgb-linear",
14
15
  oklab: "oklab",
@@ -27,6 +28,7 @@ const CSS_TO_CULORI = {
27
28
  hsv: "hsv",
28
29
  hwb: "hwb",
29
30
  lab: "lab",
31
+ "lab-d65": "lab65",
30
32
  lch: "lch",
31
33
  oklab: "oklab",
32
34
  oklch: "oklch",
@@ -87,6 +89,7 @@ function parseColor(color) {
87
89
  break;
88
90
  }
89
91
  case "lab":
92
+ case "lab65":
90
93
  case "oklab": {
91
94
  components = [
92
95
  result.l,
@@ -171,10 +174,12 @@ function tokenToCulori(value) {
171
174
  };
172
175
  }
173
176
  case "lab":
177
+ case "lab-d65":
174
178
  case "oklab": {
175
179
  const [l, a, b] = value.components;
180
+ const mode = value.colorSpace === "lab-d65" ? "lab65" : value.colorSpace;
176
181
  return {
177
- mode: value.colorSpace,
182
+ mode,
178
183
  l,
179
184
  a,
180
185
  b,
@@ -212,6 +217,7 @@ function tokenToCulori(value) {
212
217
  alpha: value.alpha
213
218
  };
214
219
  }
220
+ default: throw new Error(`Invalid colorSpace "${value.colorSpace}". Expected one of ${Object.keys(CSS_TO_CULORI).join(", ")}`);
215
221
  }
216
222
  }
217
223
 
@@ -256,4 +262,4 @@ function kebabCase(str) {
256
262
 
257
263
  //#endregion
258
264
  export { CSS_TO_CULORI, CULORI_TO_CSS, kebabCase, padStr, parseColor, pluralize, tokenToCulori };
259
- //# sourceMappingURL=string-BZ5Le1WD.js.map
265
+ //# sourceMappingURL=string-Cq7Oa0sE.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"string-Cq7Oa0sE.js","names":["CULORI_TO_CSS: Record<\n Extract<\n Color['mode'],\n | 'a98'\n | 'lab'\n | 'lab65'\n | 'lch'\n | 'oklab'\n | 'oklch'\n | 'hsl'\n | 'hsv'\n | 'hwb'\n | 'lrgb'\n | 'p3'\n | 'prophoto'\n | 'rec2020'\n | 'rgb'\n | 'xyz50'\n | 'xyz65'\n >,\n ColorSpace\n>","color: string","components: [number, number, number]","value: ColorValueNormalized","input: string","length: number","alignment: 'left' | 'center' | 'right'","count: number","singular: T","plural: T","str: string"],"sources":["../src/color.ts","../src/string.ts"],"sourcesContent":["import 'culori/css';\nimport { type Color, formatHex, parse } from 'culori/fn';\nimport type { ColorSpace, ColorValueNormalized } from './types.js';\n\nconst HEX_RE = /^#?([0-9a-f]{8}|[0-9a-f]{6}|[0-9a-f]{4}|[0-9a-f]{3})$/i;\n\nexport const CULORI_TO_CSS: Record<\n Extract<\n Color['mode'],\n | 'a98'\n | 'lab'\n | 'lab65'\n | 'lch'\n | 'oklab'\n | 'oklch'\n | 'hsl'\n | 'hsv'\n | 'hwb'\n | 'lrgb'\n | 'p3'\n | 'prophoto'\n | 'rec2020'\n | 'rgb'\n | 'xyz50'\n | 'xyz65'\n >,\n ColorSpace\n> = {\n a98: 'a98',\n hsl: 'hsl',\n hsv: 'hsv',\n hwb: 'hwb',\n lab: 'lab',\n lab65: 'lab-d65',\n lch: 'lch',\n lrgb: 'srgb-linear',\n oklab: 'oklab',\n oklch: 'oklch',\n p3: 'display-p3',\n prophoto: 'prophoto-rgb',\n rec2020: 'rec2020',\n rgb: 'srgb',\n xyz50: 'xyz-d50',\n xyz65: 'xyz-d65',\n} as const;\n\nexport const CSS_TO_CULORI = {\n a98: 'a98',\n 'display-p3': 'p3',\n hsl: 'hsl',\n hsv: 'hsv',\n hwb: 'hwb',\n lab: 'lab',\n 'lab-d65': 'lab65',\n lch: 'lch',\n oklab: 'oklab',\n oklch: 'oklch',\n 'prophoto-rgb': 'prophoto',\n rec2020: 'rec2020',\n srgb: 'rgb',\n 'srgb-linear': 'lrgb',\n 'xyz-d50': 'xyz50',\n 'xyz-d65': 'xyz65',\n} as const;\n\n/** Parse any color */\nexport function parseColor(color: string): ColorValueNormalized {\n const result = parse(color);\n if (!result) {\n throw new Error(`Unable to parse color \"${color}\"`);\n }\n if (!(result.mode in CULORI_TO_CSS)) {\n throw new Error(`Unsupported color space: ${result.mode}`);\n }\n const colorSpace = CULORI_TO_CSS[result.mode as keyof typeof CULORI_TO_CSS]!;\n let components: [number, number, number] = [0, 0, 0];\n switch (result.mode) {\n case 'a98':\n case 'rec2020':\n case 'p3':\n case 'prophoto':\n case 'lrgb':\n case 'rgb': {\n components = [result.r, result.g, result.b];\n break;\n }\n case 'hsl': {\n components = [result.h ?? 0, result.s, result.l];\n break;\n }\n case 'hsv': {\n components = [result.h ?? 0, result.s, result.v];\n break;\n }\n case 'hwb': {\n components = [result.h ?? 0, result.w, result.b];\n break;\n }\n case 'lab':\n case 'lab65':\n case 'oklab': {\n components = [result.l, result.a, result.b];\n break;\n }\n case 'lch':\n case 'oklch': {\n components = [result.l, result.c, result.h ?? 0];\n break;\n }\n case 'xyz50':\n case 'xyz65': {\n components = [result.x, result.y, result.z];\n break;\n }\n }\n const value: ColorValueNormalized = {\n colorSpace,\n components,\n alpha: result.alpha ?? 1,\n };\n if (HEX_RE.test(color)) {\n // Note: this intentionally does NOT include alpha; it’s already in alpha.\n // Always use formatHex (not formatHex8).\n value.hex = formatHex(result);\n }\n return value;\n}\n\n/** Convert a color token to a Culori color */\nexport function tokenToCulori(value: ColorValueNormalized): Color | undefined {\n switch (value.colorSpace) {\n case 'a98':\n case 'display-p3':\n case 'prophoto-rgb':\n case 'rec2020':\n case 'srgb':\n case 'srgb-linear': {\n const [r, g, b] = value.components;\n return {\n mode: CSS_TO_CULORI[value.colorSpace] || value.colorSpace,\n r,\n g,\n b,\n alpha: value.alpha,\n } as Color;\n }\n case 'hsl': {\n const [h, s, l] = value.components;\n return { mode: 'hsl', h, s, l, alpha: value.alpha };\n }\n case 'hsv': {\n const [h, s, v] = value.components;\n return { mode: 'hsv', h, s, v, alpha: value.alpha };\n }\n case 'hwb': {\n const [h, w, b] = value.components;\n return { mode: 'hwb', h, w, b, alpha: value.alpha };\n }\n case 'lab':\n case 'lab-d65':\n case 'oklab': {\n const [l, a, b] = value.components;\n const mode = value.colorSpace === 'lab-d65' ? 'lab65' : value.colorSpace;\n return { mode, l, a, b, alpha: value.alpha };\n }\n case 'lch':\n case 'oklch': {\n const [l, c, h] = value.components;\n return { mode: value.colorSpace, l, c, h, alpha: value.alpha };\n }\n case 'xyz-d50': {\n const [x, y, z] = value.components;\n return { mode: 'xyz50', x, y, z, alpha: value.alpha };\n }\n case 'xyz-d65': {\n const [x, y, z] = value.components;\n return { mode: 'xyz65', x, y, z, alpha: value.alpha };\n }\n default: {\n throw new Error(\n `Invalid colorSpace \"${value.colorSpace}\". Expected one of ${Object.keys(CSS_TO_CULORI).join(', ')}`,\n );\n }\n }\n}\n","/** Pad string lengths */\nexport function padStr(input: string, length: number, alignment: 'left' | 'center' | 'right' = 'left'): string {\n const d =\n Math.min(length || 0, 1000) - // guard against NaNs and Infinity\n input.length;\n if (d > 0) {\n switch (alignment) {\n case 'left': {\n return `${input}${' '.repeat(d)}`;\n }\n case 'right': {\n return `${' '.repeat(d)}${input}`;\n }\n case 'center': {\n const left = Math.floor(d / 2);\n const right = d - left;\n return `${' '.repeat(left)}${input}${' '.repeat(right)}`;\n }\n }\n }\n return input;\n}\n\n/** Pluralize strings */\nexport function pluralize<T = string>(count: number, singular: T, plural: T): T {\n return count === 1 ? singular : plural;\n}\n\n/** Turn a string into kebab-case */\nexport function kebabCase(str: string): string {\n let output = '';\n for (const c of str.split('')) {\n if (c === '.') {\n output += '-';\n continue;\n }\n let isFirstUppercase = true;\n if (isFirstUppercase && /\\p{Uppercase_Letter}/u.test(c)) {\n output += `-${c.toLocaleLowerCase()}`;\n isFirstUppercase = false; // don’t break apart multiple consecutive uppercase letters\n continue;\n } else {\n isFirstUppercase = true; // reset\n }\n\n output += c;\n }\n return output;\n}\n"],"mappings":"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"}
@@ -274,7 +274,7 @@ interface ColorValueNormalized {
274
274
  /** Hex fallback (for sRGB) */
275
275
  hex?: string;
276
276
  }
277
- type ColorSpace = 'a98' | 'display-p3' | 'hsl' | 'hsv' | 'hwb' | 'lab' | 'lch' | 'oklab' | 'oklch' | 'prophoto-rgb' | 'rec2020' | 'srgb-linear' | 'srgb' | 'xyz-d50' | 'xyz-d65';
277
+ type ColorSpace = 'a98' | 'display-p3' | 'hsl' | 'hsv' | 'hwb' | 'lab' | 'lab-d65' | 'lch' | 'oklab' | 'oklch' | 'prophoto-rgb' | 'rec2020' | 'srgb-linear' | 'srgb' | 'xyz-d50' | 'xyz-d65';
278
278
  interface CubicBezierTokenNormalized extends TokenNormalizedCore<'cubicBezier'> {
279
279
  $value: CubicBezierValue;
280
280
  partialAliasOf?: [string | undefined, string | undefined, string | undefined, string | undefined];
@@ -400,4 +400,4 @@ interface TypographyValueNormalized {
400
400
 
401
401
  //#endregion
402
402
  export { AliasToken, AliasValue, BooleanToken, BooleanTokenNormalized, BooleanValue, BorderToken, BorderTokenNormalized, BorderValue, BorderValueNormalized, ColorSpace, ColorToken, ColorTokenNormalized, ColorValue, ColorValueNormalized, CubicBezierToken, CubicBezierTokenNormalized, CubicBezierValue, DimensionToken, DimensionTokenNormalized, DimensionValue, DurationToken, DurationTokenNormalized, DurationValue, FontFamilyToken, FontFamilyTokenNormalized, FontFamilyValue, FontFamilyValueNormalized, FontWeightToken, FontWeightTokenNormalized, FontWeightValue, FontWeightValueNormalized, GradientStop, GradientStopNormalized, GradientToken, GradientTokenNormalized, GradientValue, GradientValueNormalized, Group, GroupCore, GroupOrToken, LinkToken, LinkTokenNormalized, LinkValue, ModeMap, NumberToken, NumberTokenNormalized, NumberValue, ShadowToken, ShadowTokenNormalized, ShadowValue, ShadowValueNormalized, StringToken, StringTokenNormalized, StringValue, StrokeStyleToken, StrokeStyleTokenNormalized, StrokeStyleValue, StrokeStyleValueExpanded, Token, TokenCore, TokenMode, TokenNormalized, TokenNormalizedCore, TokenNormalizedSet, TokensSet, TransitionToken, TransitionTokenNormalized, TransitionValue, TransitionValueNormalized, TypographyToken, TypographyTokenNormalized, TypographyValue, TypographyValueNormalized };
403
- //# sourceMappingURL=types-C68LbU3N.d.ts.map
403
+ //# sourceMappingURL=types-Ci92nIR9.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types-C68LbU3N.d.ts","names":[],"sources":["../src/types.ts"],"sourcesContent":[],"mappings":";;;UAEiB,yBAAyB;;EAAzB,WAAA,CAAS,EAAA,MAAA,GAAA,OAAA;EAAA,WAAA,CAAA,EAGV,CAHU;;AAGV,KAGJ,KAAA,GACR,YAJY,GAKZ,WALY,GAMZ,UANY,GAOZ,gBAPY,GAQZ,cARY,GASZ,aATY,GAUZ,eAVY,GAWZ,eAXY,GAYZ,aAZY,GAaZ,SAbY,GAcZ,WAdY,GAeZ,WAfY,GAgBZ,WAhBY,GAiBZ,eAjBY,GAkBZ,eAlBY,GAmBZ,gBAnBY;AAAC,KAqBL,SAAA,GAAY,MArBP,CAAA,MAAA,EAqBsB,KArBtB,CAAA;AAGL,KAqBA,UAAA,GArBK,MAAA;AAAA,UAuBA,UAAA,SAAmB,SAvBnB,CAAA;EAAA,KACb,CAAA,EAAA,KAAA;EAAY,MACZ,EAuBM,UAvBN;;;;;AAKA,UAwBa,YAAA,SAAqB,SAxBlC,CAAA;EAAe,KACf,EAAA,SAAA;EAAe,MACf,EAwBM,YAxBN,GAwBqB,UAxBrB;;AAEA,KAyBQ,YAAA,GAzBR,OAAA;;;;AAIA,UA0Ba,WAAA,SAAoB,SA1BjC,CAAA;EAAe,KACf,EAAA,QAAA;EAAgB,MAAA,EA2BV,WA3BU,GA2BI,UA3BJ;AAEpB;AAAqB,UA4BJ,WAAA,CA5BI;EAAA,KAAkB,EA6B9B,UA7B8B,GA6BjB,UA7BiB;EAAK,KAApB,EA8Bf,cA9Be,GA8BE,UA9BF;EAAM,KAAA,EA+BrB,gBA/BqB,GA+BF,UA/BE;AAG9B;AAEA;;;AAAoC,UAgCnB,UAAA,SAAmB,SAhCA,CAAA;EAAS,KAAA,EAAA,OAAA;EAQ5B,MAAA,EA0BP,UA1BoB,GA0BP,UA1BO;;AAEpB,KA2BE,UAAA,GA3BF,MAAA,GAAA;EAAY,UAAG,EA8BP,UA9BO;EAAU,QAFG,CAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,MAAA,CAAA;EAAS,UAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,MAAA,CAAA;EAKnC,KAAA,CAAA,EAAA,MAAA;EAKK,GAAA,CAAA,EAAA,MAAA;CAAY;AAEnB,UA4BO,gBAAA,SAAyB,SA5BhC,CAAA;EAAW,KAAG,EAAA,aAAA;EAAU,MAFG,EAgC3B,gBAhC2B,GAgCR,UAhCQ;AAAS;AAK7B,KA8BL,gBAAA,GA9BgB,CAAA,MAAA,EAAA,MAAA,EAAA,MAAA,EAAA,MAAA,CAAA;;;;AAEnB,UAiCQ,cAAA,SAAuB,SAjC/B,CAAA;EAAc,KAAG,EAAA,WAAA;EAAU,MAC3B,EAkCC,cAlCD,GAkCkB,UAlClB;;AAA6B,UAqCrB,cAAA,CArCqB;EAMrB,KAAA,EAAA,MAAW;EAAA,IAAA,EAAA,IAAA,GAAA,IAAA,GAAA,KAAA;;;;AAAiB;AAKjC,UAkCK,aAAA,SAAsB,SA/BX,CAAA;EAQX,KAAA,EAAA,UAAA;EAAiB,MAAA,EAyBxB,aAzBwB,GAyBR,UAzBQ;;AAEL,UA0BZ,aAAA,CA1BY;EAAU,KAFG,EAAA,MAAA;EAAS,IAAA,EAAA,IAAA,GAAA,GAAA;AAKnD;AAKA;;;AAE2B,UAwBV,aAAA,SAAsB,SAxBZ,CAAA;EAAU,KAFG,EAAA,UAAA;EAAS,MAAA,EA4BvC,aA5BuC,GA4BvB,UA5BuB;AAKjD;AAQiB,KAkBL,aAAA,GAAgB,YAlBG,EAAA;AAAA,UAoBd,YAAA,CApBc;EAAA,KAErB,EAmBD,UAnBC,GAmBY,UAnBZ;EAAa,QAAG,EAoBd,WApBc,GAoBA,UApBA;;AAFsB;AAKhD;AAQA;AAA+B,UAed,eAAA,SAAwB,SAfV,CAAA;EAAA,KAErB,EAAA,YAAA;EAAa,MAAG,EAehB,eAfgB,GAeE,UAfF;;AAFsB,KAoBpC,eAAA,GApBoC,MAAA,GAAA,MAAA,EAAA;AAKhD;AAEA;;AACS,UAiBQ,eAAA,SAAwB,SAjBhC,CAAA;EAAU,KAAG,EAAA,YAAA;EAAU,MACpB,EAkBF,eAlBE,GAkBgB,UAlBhB;;AAAwB,KAqBxB,eAAA,GArBwB,MAAA,GAAA,UAAA,GAAA,aAAA,GAAA,aAAA,GAAA,OAAA,GAAA,QAAA,GAAA,SAAA,GAAA,MAAA,GAAA,QAAA,GAAA,WAAA,GAAA,WAAA,GAAA,MAAA,GAAA,YAAA,GAAA,YAAA,GAAA,OAAA,GAAA,OAAA,GAAA,aAAA,GAAA,aAAA,GAAA,MAAA;AAMpC;;;AAE4B,UAqCX,SAAA,SAAkB,SArCP,CAAA;EAAU,KAFG,EAAA,MAAA;EAAS,MAAA,EAyCxC,SAzCwC,GAyC5B,UAzC4B;AAKlD;AAKiB,KAkCL,SAAA,GAlCqB,MAAA;;;;AAAQ,UAuCxB,WAAA,SAAoB,SAvCI,CAAA;EAAS,KAAA,EAAA,QAAA;EAKtC,MAAA,EAoCF,WApCiB,GAoCH,UApCG;AAwB3B;AAA2B,KAef,WAAA,GAfe,MAAA;;;;AAAiB,UAoB3B,WAAA,SAAoB,SApBO,CAAA;EAKhC,KAAA,EAAA,QAAS;EAKJ,MAAA,EAYP,WAZmB,GAYL,UAZK;;AAEnB,KAaE,WAAA,GAbF,MAAA;;;AAFoC;AAKlC,UAeK,gBAAA,SAAyB,SAfnB,CAAA;EAKN,KAAA,EAAA,aAAY;EAAA,MAAA,EAYnB,gBAZmB,GAYA,UAZA;;AAEL,KAaZ,gBAAA,GAbY,OAAA,GAAA,QAAA,GAAA,QAAA,GAAA,QAAA,GAAA,QAAA,GAAA,OAAA,GAAA,QAAA,GAAA,OAAA,GAsBpB,wBAtBoB;AAFa,UA0BpB,wBAAA,CA1BoB;EAAS,SAAA,EAAA,CA2BhC,cA3BgC,GA2Bf,UA3Be,CAAA,EAAA;EAKlC,OAAA,EAAA,OAAW,GAAA,MAAA,GAAA,QAAA;AAKvB;;;;AAA0C,UAwBzB,WAAA,SAAoB,SAxBK,CAAA;EAAS,KAAA,EAAA,QAAA;EAKvC,MAAA,EAqBF,WArBkB,GAqBJ,WAZpB,EAAA,GAYoC,UAZpC;AAEJ;AAAyC,UAaxB,WAAA,CAbwB;EAAA,KAC3B,EAaL,UAbK,GAaQ,UAbR;EAAc,OAAG,EAcpB,cAdoB,GAcH,UAdG;EAAU,OAAA,EAe9B,cAf8B,GAeb,UAfa;EAOxB,IAAA,CAAA,EASR,cAToB,GASH,UATG;EAAA,MAAA,CAAA,EAUlB,cAVkB,GAUD,UAVC;EAAA,KAEnB,CAAA,EAAA,OAAA;;;;AAFoC;AAK7B,UAYA,eAAA,SAAwB,SAZb,CAAA;EAAA,KAAA,EAAA,YAAA;EAAA,MACnB,EAaC,eAbD,GAamB,UAbnB;;AACE,UAeM,eAAA,CAfN;EAAc,QAAG,EAgBhB,aAhBgB,GAgBA,UAhBA;EAAU,KAC3B,EAgBF,aAhBE,GAgBc,UAhBd;EAAc,cAAG,EAiBV,gBAjBU,GAiBS,UAjBT;;;;;AAEU,UAqBrB,eAAA,SAAwB,SArBH,CAAA;EAOrB,KAAA,EAAA,YAAgB;EAAA,MAAA,EAgBvB,eAhBuB,GAgBL,UAhBK;;AAEL,UAiBX,eAAA,CAjBW;EAAU,UAFG,CAAA,EAoB1B,eApB0B,GAoBR,UApBQ;EAAS,QAAA,CAAA,EAqBrC,cArBqC,GAqBpB,UArBoB;EAKjC,SAAA,CAAA,EAAA,MAAe;EAAA,WAAA,CAAA,EAAA,MAAA;EAAA,uBACpB,CAAA,EAAA,MAAA;EAAa,eAAG,CAAA,EAAA,MAAA;EAAU,oBAC7B,CAAA,EAAA,MAAA;EAAa,gBAAG,CAAA,EAAA,MAAA;EAAU,oBACjB,CAAA,EAAA,MAAA;EAAgB,kBAAG,CAAA,EAAA,MAAA;EAAU,mBAAA,CAAA,EAAA,MAAA;EAM9B,qBAAgB,CAAA,EAAA,MAAA;EAAA,UAAA,CAAA,EAkBlB,eAlBkB,GAkBA,UAlBA;EAAA,aAEvB,CAAA,EAiBQ,cAjBR,GAiByB,UAjBzB;EAAe,UAAG,CAAA,EAkBb,cAlBa,GAkBI,WAlBJ,GAkBkB,UAlBlB;EAAU,cAFG,CAAA,EAAA,MAAA;EAAS,aAAA,CAAA,EAAA,MAAA;EAKjC,CAAA,GAAA,EAAA,MAAA,CAAA,EAAA,OAAe;;AACjB,UAoBE,SAAA,CApBF;EAAe,YAAG,CAAA,EAAA,MAAA;EAAU,KAC9B,CAAA,EAqBH,KArBG,CAAA,OAAA,CAAA;EAAc,WAAG,CAAA,EAsBd,MAtBc,CAAA,MAAA,EAAA,OAAA,CAAA;;AAWG,KAcrB,KAAA,GAAQ,SAda,GAAA;EAAU,CAAA,GACzB,EAAA,MAAA,CAAA,EAa+B,YAb/B,GAa8C,SAb9C;CAAc;AACjB,KAcH,YAAA,GAAe,KAdZ,GAcoB,KAdpB;;AAA+B,KAiBlC,SAjBkC,CAAA,UAiBd,eAjBc,CAAA,GAiBK,IAjBL,CAkB5C,CAlB4C,EAAA,QAAA,GAAA,SAAA,GAAA,YAAA,GAAA,gBAAA,GAAA,QAAA,CAAA,GAAA;EAAU,aAAA,EAqBvC,CArBuC,CAAA,eAAA,CAAA,CAAA,QAAA,CAAA;AAMxD,CAAA;AAA0B,KAkBd,OAlBc,CAAA,UAkBI,eAlBJ,CAAA,GAAA;EAAA,GAEhB,EAiBH,SAjBG,CAiBO,CAjBP,CAAA;EAAK,CAAA,IACC,EAAA,MAAA,CAAA,EAiBE,SAjBF,CAiBY,CAjBZ,CAAA,GAAA,SAAA;AAAM,CAAA;AAGV,UAiBK,mBAjBA,CAAA,cAiBkC,KAjBlC,CAAA,OAAA,CAAA,CAAA,CAAA;EAAA,KAAA,EAkBR,KAlBQ;EAAA,YAAG,CAAA,EAAA,MAAA;EAAS,WAAoB,CAAA,EAoBjC,MApBiC,CAAA,MAAA,EAAA,OAAA,CAAA;EAAY,WAAG,CAAA,EAAA,MAAA,GAAA,OAAA;EAAS,EAAA,EAAA,MAAA;EAE7D,MAAA,EAAA;IAAY,GAAA,CAAA,EAAA,MAAA;IAAG,IAAA,EAuBjB,UAvBiB;EAAK,CAAA;EAAQ;EAG5B,OAAA,CAAA,EAAA,MAAS;EAAA;EAAA,UAAW,CAAA,EAAA,MAAA,EAAA;EAAe;EAC5C,SADgD,CAAA,EAAA,MAAA,EAAA;EAAI,KAItC,EAAA;IAAC,YAAA,CAAA,EAAA,MAAA;IAGN,WAAO,CAAA,EAuBD,MAvBC,CAAA,MAAA,EAAA,OAAA,CAAA;IAAA,KAAA,CAAA,EAwBP,KAxBO;IAAW,EAAA,EAAA,MAAA;IACb;IAAV,MAAA,EAAA,MAAA,EAAA;EAAS,CAAA;;AACW,KA6Bf,eAAA,GACR,sBA9BuB,GA+BvB,qBA/BuB,GAgCvB,oBAhCuB,GAiCvB,0BAjCuB,GAkCvB,wBAlCuB,GAmCvB,uBAnCuB,GAoCvB,yBApCuB,GAqCvB,yBArCuB,GAsCvB,uBAtCuB,GAuCvB,mBAvCuB,GAwCvB,qBAxCuB,GAyCvB,qBAzCuB,GA0CvB,qBA1CuB,GA2CvB,0BA3CuB,GA4CvB,yBA5CuB,GA6CvB,yBA7CuB;AAGV,KA4CL,kBAAA,GAAqB,MA5CG,CAAA,MAAA,EA4CY,eA5CZ,CAAA;AAAA,UA6CnB,sBAAA,SAA+B,mBA7CZ,CAAA,SAAA,CAAA,CAAA;EAAA,MAAe,EA8CzC,YA9CyC;EAAK,cAC/C,CAAA,EAAA,KAAA;EAAK,IAEE,EA6CR,OA7CQ,CA6CA,sBA7CA,CAAA;EAAM,aAKZ,EAyCO,YAzCP,GAyCsB,UAzCtB;;AAWE,UAiCK,qBAAA,SAA8B,mBAjCnC,CAAA,QAAA,CAAA,CAAA;EAAK,MAAA,EAkCP,qBAlCO;EAOL,cAAA,CAAA,EA4BO,OA5BQ,CA4BA,MA5BA,CAAA,MA4Ba,qBA5Bb,EAAA,MAAA,CAAA,CAAA;EAAA,IAAA,EA6BnB,OA7BmB,CA6BX,qBA7BW,CAAA;EAAA,aACvB,EA6Ba,WA7Bb,GA6B2B,UA7B3B;;AAEA,UA8Ba,qBAAA,CA9Bb;EAAoB,KACpB,EA8BK,oBA9BL;EAA0B,KAC1B,EA8BK,cA9BL;EAAwB,KACxB,EA8BK,wBA9BL;;AAEA,UA+Ba,oBAAA,SAA6B,mBA/B1C,CAAA,OAAA,CAAA,CAAA;EAAyB,MACzB,EA+BM,oBA/BN;EAAuB,IACvB,EA+BI,OA/BJ,CA+BY,oBA/BZ,CAAA;EAAmB,cACnB,CAAA,EAAA,KAAA;EAAqB,aACrB,EA+Ba,UA/Bb,GA+B0B,UA/B1B;;AAEA,UAgCa,oBAAA,CAhCb;EAA0B;;AAED;AAE7B;;EAA8B,UAAkB,EAkClC,UAlCkC;EAAe,QAA9B,CAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,MAAA,CAAA;EAAM;EACtB,UAAA,EAAA,CAAA,MAAA,EAAA,MAAuB,EAAA,MAAA,CAAA;EAAA;EAAA,KAC9B,EAAA,MAAA;EAAY;EAEgB,GAA9B,CAAA,EAAA,MAAA;;AACwB,KAwCpB,UAAA,GAxCoB,KAAA,GAAA,YAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,OAAA,GAAA,OAAA,GAAA,cAAA,GAAA,SAAA,GAAA,aAAA,GAAA,MAAA,GAAA,SAAA,GAAA,SAAA;AAJgB,UA6D/B,0BAAA,SAAmC,mBA7DJ,CAAA,aAAA,CAAA,CAAA;EAAmB,MAAA,EA8DzD,gBA9DyD;EAOlD,cAAA,CAAA,EAAA,CAAA,MAAsB,GAAA,SAAA,EAAA,MAAA,GAAA,SAAA,EAAA,MAAA,GAAA,SAAA,EAAA,MAAA,GAAA,SAAA,CAAA;EAAA,IAAA,EAyD/B,OAzD+B,CAyDvB,0BAzDuB,CAAA;EAAA,aAC7B,EAyDO,gBAzDP,GAyD0B,UAzD1B;;AACiB,UA2DV,wBAAA,SAAiC,mBA3DvB,CAAA,WAAA,CAAA,CAAA;EAAM,MAAd,EA4DT,cA5DS;EAAO,cACV,CAAA,EAAA,KAAA;EAAqB,IAA7B,EA6DA,OA7DA,CA6DQ,wBA7DR,CAAA;EAAO,aACE,EA6DA,cA7DA,GA6DiB,UA7DjB;;AAJ8B,UAoE9B,uBAAA,SAAgC,mBApEF,CAAA,UAAA,CAAA,CAAA;EAAmB,MAAA,EAqExD,aArEwD;EAOjD,cAAA,CAAA,EAAA,KAAA;EAAqB,IAAA,EAgE9B,OAhE8B,CAgEtB,uBAhEsB,CAAA;EAAA,aAC7B,EAgEQ,aAhER,GAgEwB,UAhExB;;AAEA,UAiEQ,yBAAA,SAAkC,mBAjE1C,CAAA,YAAA,CAAA,CAAA;EAAwB,MAAA,EAkEvB,yBAlEuB;EAGhB,OAAA,CAAA,EAAA,MAAA;EAAqB,cAAA,CAAA,EAAA,KAAA;EAAA,IAC5B,EAiEF,OAjEE,CAiEM,yBAjEN,CAAA;EAAoB,aACd,EAiEC,eAjED,GAiEmB,UAjEnB;;AAEC,KAkEL,yBAAA,GAlEK,MAAA,EAAA;AAAa,UAoEb,yBAAA,SAAkC,mBApErB,CAAA,YAAA,CAAA,CAAA;EAAU,KAJM,EAAA,YAAA;EAAmB,MAAA,EA0EvD,yBA1EuD;EAOhD,OAAA,CAAA,EAAA,MAAA;EAiBL,cAAU,CAAA,EAAA,KAAA;EAiBL,IAAA,EAoCT,OApCS,CAoCD,yBApC4B,CAAA;EAAA,aAAA,EAqC3B,eArC2B,GAqCT,UArCS;;AAG5B,KAqCJ,yBAAA,GArCI,MAAA;AAAR,UAuCS,uBAAA,SAAgC,mBAvCzC,CAAA,UAAA,CAAA,CAAA;EAAO,MACE,EAuCP,uBAvCO;EAAgB,cAAG,CAAA,EAwCjB,OAxCiB,CAwCT,MAxCS,CAAA,MAwCI,sBAxCJ,EAAA,MAAA,CAAA,CAAA,EAAA;EAAU,IAJM,EA6C5C,OA7C4C,CA6CpC,uBA7CoC,CAAA;EAAmB,aAAA,EA8CtD,uBA9CsD,GA8C5B,UA9C4B;AAOvE;AAA0C,KA0C9B,uBAAA,GAA0B,sBA1CI,EAAA;AAChC,UA2CO,sBAAA,CA3CP;EAAc,KAER,EA0CP,oBA1CO;EAAwB,QAAhC,EAAA,MAAA;;AAC0B,UA6CjB,mBAAA,SAA4B,mBA7CX,CAAA,MAAA,CAAA,CAAA;EAAU,MAJM,EAkDxC,SAlDwC;EAAmB,cAAA,CAAA,EAAA,KAAA;EAOpD,IAAA,EA6CT,OA7CS,CA6CD,mBA7CyB,CAAA;EAAA,aAAA,EA8CxB,SA9CwB,GA8CZ,UA9CY;;AAGzB,UA8CC,qBAAA,SAA8B,mBA9C/B,CAAA,QAAA,CAAA,CAAA;EAAuB,MAA/B,EA+CE,WA/CF;EAAO,cACE,CAAA,EAAA,KAAA;EAAa,IAAG,EAgDzB,OAhDyB,CAgDjB,qBAhDiB,CAAA;EAAU,aAJM,EAqDhC,WArDgC,GAqDlB,UArDkB;AAAmB;AAOnD,UAiDA,qBAAA,SAA8B,mBAjDJ,CAAA,QAAA,CAAA,CAAA;EAAA,MAAA,EAkDjC,qBAlDiC,EAAA;EAAA,cACjC,CAAA,EAkDS,OAlDT,CAkDiB,MAlDjB,CAAA,MAkD8B,qBAlD9B,EAAA,MAAA,CAAA,CAAA,EAAA;EAAyB,IAGnB,EAgDR,OAhDQ,CAgDA,qBAhDA,CAAA;EAAyB,aAAjC,EAiDS,WAjDT,GAiDuB,UAjDvB;;AAC2B,UAmDlB,qBAAA,CAnDkB;EAAU,KALM,EAyD1C,oBAzD0C;EAAmB,OAAA,EA0D3D,cA1D2D;EAQ1D,OAAA,EAmDD,cAnDC;EAEK,IAAA,EAkDT,cAlDS;EAA0B,MAAA,EAmDjC,cAnDiC;EAAA,KAEjC,EAAA,OAAA;;AAGF,UAkDS,qBAAA,SAA8B,mBAlDvC,CAAA,QAAA,CAAA,CAAA;EAAO,MACE,EAkDP,WAlDO;EAAe,cAAG,CAAA,EAAA,KAAA;EAAU,IANM,EA0D3C,OA1D2C,CA0DnC,qBA1DmC,CAAA;EAAmB,aAAA,EA2DrD,qBA3DqD,GA2D7B,UA3D6B;AAStE;AAEiB,UAmDA,0BAAA,SAAmC,mBAnDX,CAAA,aAAA,CAAA,CAAA;EAAA,MAAA,EAoD/B,wBApD+B;EAAA,cAC/B,CAAA,EAAA,KAAA;EAAuB,IACO,EAoDhC,OApDgC,CAoDxB,0BApDwB,CAAA;EAAsB,aAAnC,EAqDV,gBArDU,GAqDS,UArDT;;AACX,UAuDC,yBAAA,SAAkC,mBAvDnC,CAAA,YAAA,CAAA,CAAA;EAAuB,MAA/B,EAwDE,yBAxDF;EAAO,cACE,CAAA,EAwDE,OAxDF,CAwDU,MAxDV,CAAA,MAwDuB,yBAxDvB,EAAA,MAAA,CAAA,CAAA;EAAuB,IAAG,EAyDnC,OAzDmC,CAyD3B,yBAzD2B,CAAA;EAAU,aAJJ,EA8DhC,eA9DgC,GA8Dd,UA9Dc;AAAmB;AAOxD,UA0DK,yBAAA,CA1DqB;EAErB,QAAA,EAyDL,aAzDK;EAKA,KAAA,EAqDR,aArDQ;EAAoB,cAAA,EAsDnB,gBAtDmB;;AAGrB,UAsDC,yBAAA,SAAkC,mBAtDnC,CAAA,YAAA,CAAA,CAAA;EAAmB,MAA3B,EAuDE,yBAvDF;EAAO,cACE,CAAA,EAuDE,MAvDF,CAAA,MAAA,EAAA,MAAA,CAAA;EAAS,IAAG,EAwDrB,OAxDqB,CAwDb,yBAxDa,CAAA;EAAU,aAJM,EA6D5B,eA7D4B,GA6DV,UA7DU;AAAmB;AAO/C,UAyDA,yBAAA,CAzDsB;EAAA,UAAA,CAAA,EA0DxB,eA1DwB;EAAA,QAC7B,CAAA,EA0DG,cA1DH;EAAW,SAEL,CAAA,EAAA,MAAA;EAAqB,WAA7B,CAAA,EAAA,MAAA;EAAO,uBACE,CAAA,EAAA,MAAA;EAAW,eAAG,CAAA,EAAA,MAAA;EAAU,oBAJM,CAAA,EAAA,MAAA;EAAmB,gBAAA,CAAA,EAAA,MAAA;EAOjD,oBAAA,CAAA,EAAA,MAAsB;EAAA,kBAAA,CAAA,EAAA,MAAA;EAAA,mBAC7B,CAAA,EAAA,MAAA;EAAqB,qBACS,CAAA,EAAA,MAAA;EAAqB,UAAlC,CAAA,EA6DZ,eA7DY;EAAM,aAAd,CAAA,EA8DD,cA9DC;EAAO,UACV,CAAA,EA8DD,cA9DC,GA8DgB,WA9DhB;EAAqB,cAA7B,CAAA,EAAA,MAAA;EAAO,aACE,CAAA,EAAA,MAAA;EAAW,CAAA,GAAG,EAAA,MAAA,CAAA,EAAA,OAAA;;AAJmC"}
1
+ {"version":3,"file":"types-Ci92nIR9.d.ts","names":[],"sources":["../src/types.ts"],"sourcesContent":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@terrazzo/token-tools",
3
- "version": "0.9.0",
3
+ "version": "0.9.1",
4
4
  "description": "Various utilities for token types",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -1 +0,0 @@
1
- {"version":3,"file":"string-BZ5Le1WD.js","names":["CULORI_TO_CSS: Record<\n Extract<\n Color['mode'],\n | 'a98'\n | 'lab'\n | 'lch'\n | 'oklab'\n | 'oklch'\n | 'hsl'\n | 'hsv'\n | 'hwb'\n | 'lrgb'\n | 'p3'\n | 'prophoto'\n | 'rec2020'\n | 'rgb'\n | 'xyz50'\n | 'xyz65'\n >,\n ColorSpace\n>","color: string","components: [number, number, number]","value: ColorValueNormalized","input: string","length: number","alignment: 'left' | 'center' | 'right'","count: number","singular: T","plural: T","str: string"],"sources":["../src/color.ts","../src/string.ts"],"sourcesContent":["import 'culori/css';\nimport { type Color, formatHex, parse } from 'culori/fn';\nimport type { ColorSpace, ColorValueNormalized } from './types.js';\n\nconst HEX_RE = /^#?([0-9a-f]{8}|[0-9a-f]{6}|[0-9a-f]{4}|[0-9a-f]{3})$/i;\n\nexport const CULORI_TO_CSS: Record<\n Extract<\n Color['mode'],\n | 'a98'\n | 'lab'\n | 'lch'\n | 'oklab'\n | 'oklch'\n | 'hsl'\n | 'hsv'\n | 'hwb'\n | 'lrgb'\n | 'p3'\n | 'prophoto'\n | 'rec2020'\n | 'rgb'\n | 'xyz50'\n | 'xyz65'\n >,\n ColorSpace\n> = {\n a98: 'a98',\n hsl: 'hsl',\n hsv: 'hsv',\n hwb: 'hwb',\n lab: 'lab',\n lch: 'lch',\n lrgb: 'srgb-linear',\n oklab: 'oklab',\n oklch: 'oklch',\n p3: 'display-p3',\n prophoto: 'prophoto-rgb',\n rec2020: 'rec2020',\n rgb: 'srgb',\n xyz50: 'xyz-d50',\n xyz65: 'xyz-d65',\n} as const;\n\nexport const CSS_TO_CULORI = {\n a98: 'a98',\n 'display-p3': 'p3',\n hsl: 'hsl',\n hsv: 'hsv',\n hwb: 'hwb',\n lab: 'lab',\n lch: 'lch',\n oklab: 'oklab',\n oklch: 'oklch',\n 'prophoto-rgb': 'prophoto',\n rec2020: 'rec2020',\n srgb: 'rgb',\n 'srgb-linear': 'lrgb',\n 'xyz-d50': 'xyz50',\n 'xyz-d65': 'xyz65',\n} as const;\n\n/** Parse any color */\nexport function parseColor(color: string): ColorValueNormalized {\n const result = parse(color);\n if (!result) {\n throw new Error(`Unable to parse color \"${color}\"`);\n }\n if (!(result.mode in CULORI_TO_CSS)) {\n throw new Error(`Unsupported color space: ${result.mode}`);\n }\n const colorSpace = CULORI_TO_CSS[result.mode as keyof typeof CULORI_TO_CSS]!;\n let components: [number, number, number] = [0, 0, 0];\n switch (result.mode) {\n case 'a98':\n case 'rec2020':\n case 'p3':\n case 'prophoto':\n case 'lrgb':\n case 'rgb': {\n components = [result.r, result.g, result.b];\n break;\n }\n case 'hsl': {\n components = [result.h ?? 0, result.s, result.l];\n break;\n }\n case 'hsv': {\n components = [result.h ?? 0, result.s, result.v];\n break;\n }\n case 'hwb': {\n components = [result.h ?? 0, result.w, result.b];\n break;\n }\n case 'lab':\n case 'oklab': {\n components = [result.l, result.a, result.b];\n break;\n }\n case 'lch':\n case 'oklch': {\n components = [result.l, result.c, result.h ?? 0];\n break;\n }\n case 'xyz50':\n case 'xyz65': {\n components = [result.x, result.y, result.z];\n break;\n }\n }\n const value: ColorValueNormalized = {\n colorSpace,\n components,\n alpha: result.alpha ?? 1,\n };\n if (HEX_RE.test(color)) {\n // Note: this intentionally does NOT include alpha; it’s already in alpha.\n // Always use formatHex (not formatHex8).\n value.hex = formatHex(result);\n }\n return value;\n}\n\n/** Convert a color token to a Culori color */\nexport function tokenToCulori(value: ColorValueNormalized): Color | undefined {\n switch (value.colorSpace) {\n case 'a98':\n case 'display-p3':\n case 'prophoto-rgb':\n case 'rec2020':\n case 'srgb':\n case 'srgb-linear': {\n const [r, g, b] = value.components;\n return {\n mode: CSS_TO_CULORI[value.colorSpace] || value.colorSpace,\n r,\n g,\n b,\n alpha: value.alpha,\n } as Color;\n }\n case 'hsl': {\n const [h, s, l] = value.components;\n return { mode: 'hsl', h, s, l, alpha: value.alpha };\n }\n case 'hsv': {\n const [h, s, v] = value.components;\n return { mode: 'hsv', h, s, v, alpha: value.alpha };\n }\n case 'hwb': {\n const [h, w, b] = value.components;\n return { mode: 'hwb', h, w, b, alpha: value.alpha };\n }\n case 'lab':\n case 'oklab': {\n const [l, a, b] = value.components;\n return { mode: value.colorSpace, l, a, b, alpha: value.alpha };\n }\n case 'lch':\n case 'oklch': {\n const [l, c, h] = value.components;\n return { mode: value.colorSpace, l, c, h, alpha: value.alpha };\n }\n case 'xyz-d50': {\n const [x, y, z] = value.components;\n return { mode: 'xyz50', x, y, z, alpha: value.alpha };\n }\n case 'xyz-d65': {\n const [x, y, z] = value.components;\n return { mode: 'xyz65', x, y, z, alpha: value.alpha };\n }\n }\n}\n","/** Pad string lengths */\nexport function padStr(input: string, length: number, alignment: 'left' | 'center' | 'right' = 'left'): string {\n const d =\n Math.min(length || 0, 1000) - // guard against NaNs and Infinity\n input.length;\n if (d > 0) {\n switch (alignment) {\n case 'left': {\n return `${input}${' '.repeat(d)}`;\n }\n case 'right': {\n return `${' '.repeat(d)}${input}`;\n }\n case 'center': {\n const left = Math.floor(d / 2);\n const right = d - left;\n return `${' '.repeat(left)}${input}${' '.repeat(right)}`;\n }\n }\n }\n return input;\n}\n\n/** Pluralize strings */\nexport function pluralize<T = string>(count: number, singular: T, plural: T): T {\n return count === 1 ? singular : plural;\n}\n\n/** Turn a string into kebab-case */\nexport function kebabCase(str: string): string {\n let output = '';\n for (const c of str.split('')) {\n if (c === '.') {\n output += '-';\n continue;\n }\n let isFirstUppercase = true;\n if (isFirstUppercase && /\\p{Uppercase_Letter}/u.test(c)) {\n output += `-${c.toLocaleLowerCase()}`;\n isFirstUppercase = false; // don’t break apart multiple consecutive uppercase letters\n continue;\n } else {\n isFirstUppercase = true; // reset\n }\n\n output += c;\n }\n return output;\n}\n"],"mappings":"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"}