@terrazzo/token-tools 0.0.8 → 0.1.0
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/.turbo/turbo-build.log +16 -0
- package/CHANGELOG.md +6 -0
- package/README.md +2 -2
- package/dist/color.d.ts +25 -0
- package/dist/color.js +145 -0
- package/dist/color.js.map +1 -0
- package/dist/css/boolean.d.ts +6 -0
- package/dist/css/boolean.js +12 -0
- package/dist/css/boolean.js.map +1 -0
- package/dist/css/border.d.ts +13 -0
- package/dist/css/border.js +30 -0
- package/dist/css/border.js.map +1 -0
- package/dist/css/color.d.ts +13 -0
- package/dist/css/color.js +27 -0
- package/dist/css/color.js.map +1 -0
- package/dist/css/cubic-bezier.d.ts +8 -0
- package/dist/css/cubic-bezier.js +11 -0
- package/dist/css/cubic-bezier.js.map +1 -0
- package/dist/css/dimension.d.ts +7 -0
- package/dist/css/dimension.js +12 -0
- package/dist/css/dimension.js.map +1 -0
- package/dist/css/duration.d.ts +7 -0
- package/dist/css/duration.js +12 -0
- package/dist/css/duration.js.map +1 -0
- package/dist/css/font-family.d.ts +7 -0
- package/dist/css/font-family.js +22 -0
- package/dist/css/font-family.js.map +1 -0
- package/dist/css/font-weight.d.ts +6 -0
- package/dist/css/font-weight.js +9 -0
- package/dist/css/font-weight.js.map +1 -0
- package/dist/css/gradient.d.ts +9 -0
- package/dist/css/gradient.js +24 -0
- package/dist/css/gradient.js.map +1 -0
- package/dist/css/index.d.ts +31 -0
- package/dist/css/index.js +106 -0
- package/dist/css/index.js.map +1 -0
- package/dist/css/lib.d.ts +24 -0
- package/dist/css/lib.js +36 -0
- package/dist/css/lib.js.map +1 -0
- package/dist/css/link.d.ts +6 -0
- package/dist/css/link.js +9 -0
- package/dist/css/link.js.map +1 -0
- package/dist/css/number.d.ts +6 -0
- package/dist/css/number.js +6 -0
- package/dist/css/number.js.map +1 -0
- package/dist/css/shadow.d.ts +14 -0
- package/dist/css/shadow.js +42 -0
- package/dist/css/shadow.js.map +1 -0
- package/dist/css/string.d.ts +6 -0
- package/dist/css/string.js +8 -0
- package/dist/css/string.js.map +1 -0
- package/dist/css/stroke-style.d.ts +7 -0
- package/dist/css/stroke-style.js +9 -0
- package/dist/css/stroke-style.js.map +1 -0
- package/dist/css/transition.d.ts +14 -0
- package/dist/css/transition.js +21 -0
- package/dist/css/transition.js.map +1 -0
- package/dist/css/typography.d.ts +7 -0
- package/dist/css/typography.js +42 -0
- package/dist/css/typography.js.map +1 -0
- package/dist/id.d.ts +18 -0
- package/dist/id.js +44 -0
- package/dist/id.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +30 -0
- package/dist/index.js.map +1 -0
- package/dist/js/index.d.ts +12 -0
- package/dist/js/index.js +16 -0
- package/dist/js/index.js.map +1 -0
- package/dist/string.d.ts +4 -0
- package/dist/string.js +26 -0
- package/dist/string.js.map +1 -0
- package/dist/transform.d.ts +6 -0
- package/dist/transform.js +17 -0
- package/dist/transform.js.map +1 -0
- package/dist/types.d.ts +393 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
|
|
2
|
+
> @terrazzo/token-tools@0.1.0 build /home/runner/work/terrazzo/terrazzo/packages/token-tools
|
|
3
|
+
> pnpm run build:clean && pnpm run build:ts && pnpm -w run inject-license @terrazzo/token-tools dist/index.js
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
> @terrazzo/token-tools@0.1.0 build:clean /home/runner/work/terrazzo/terrazzo/packages/token-tools
|
|
7
|
+
> del-cli dist
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
> @terrazzo/token-tools@0.1.0 build:ts /home/runner/work/terrazzo/terrazzo/packages/token-tools
|
|
11
|
+
> tsc -p tsconfig.build.json
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
> @terrazzo/monorepo@ inject-license /home/runner/work/terrazzo/terrazzo
|
|
15
|
+
> node scripts/inject-license.js "@terrazzo/token-tools" "dist/index.js"
|
|
16
|
+
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# @terrazzo/token-tools
|
|
2
2
|
|
|
3
|
+
## 0.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#319](https://github.com/terrazzoapp/terrazzo/pull/319) [`e7f272d`](https://github.com/terrazzoapp/terrazzo/commit/e7f272defcd889f5a410fdbd30497cf704671b32) Thanks [@drwpow](https://github.com/drwpow)! - ⚠️ Breaking change: dimension and duration tokens normalize to object syntax in plugins (following upcoming changes in DTCG spec; see https://github.com/design-tokens/community-group/pull/244).
|
|
8
|
+
|
|
3
9
|
## 0.0.6
|
|
4
10
|
|
|
5
11
|
### Patch Changes
|
package/README.md
CHANGED
package/dist/color.d.ts
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import 'culori/css';
|
|
2
|
+
import { type Color } from 'culori/fn';
|
|
3
|
+
import type { ColorSpace, ColorTokenNormalized, ColorValueNormalized } from './types.js';
|
|
4
|
+
export 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>;
|
|
5
|
+
export declare const CSS_TO_CULORI: {
|
|
6
|
+
a98: string;
|
|
7
|
+
'display-p3': string;
|
|
8
|
+
hsl: string;
|
|
9
|
+
hsv: string;
|
|
10
|
+
hwb: string;
|
|
11
|
+
lab: string;
|
|
12
|
+
lch: string;
|
|
13
|
+
oklab: string;
|
|
14
|
+
oklch: string;
|
|
15
|
+
'prophoto-rgb': string;
|
|
16
|
+
rec2020: string;
|
|
17
|
+
srgb: string;
|
|
18
|
+
'srgb-linear': string;
|
|
19
|
+
'xyz-d50': string;
|
|
20
|
+
'xyz-d65': string;
|
|
21
|
+
};
|
|
22
|
+
/** Parse any color */
|
|
23
|
+
export declare function parseColor(color: string): ColorValueNormalized;
|
|
24
|
+
/** Convert a color token to a Culori color */
|
|
25
|
+
export declare function tokenToCulori(token: ColorTokenNormalized): Color | undefined;
|
package/dist/color.js
ADDED
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import 'culori/css';
|
|
2
|
+
import { parse } from 'culori/fn';
|
|
3
|
+
export const CULORI_TO_CSS = {
|
|
4
|
+
a98: 'a98',
|
|
5
|
+
hsl: 'hsl',
|
|
6
|
+
hsv: 'hsv',
|
|
7
|
+
hwb: 'hwb',
|
|
8
|
+
lab: 'lab',
|
|
9
|
+
lch: 'lch',
|
|
10
|
+
lrgb: 'srgb-linear',
|
|
11
|
+
oklab: 'oklab',
|
|
12
|
+
oklch: 'oklch',
|
|
13
|
+
p3: 'display-p3',
|
|
14
|
+
prophoto: 'prophoto-rgb',
|
|
15
|
+
rec2020: 'rec2020',
|
|
16
|
+
rgb: 'srgb',
|
|
17
|
+
xyz50: 'xyz-d50',
|
|
18
|
+
xyz65: 'xyz-d65',
|
|
19
|
+
};
|
|
20
|
+
export const CSS_TO_CULORI = {
|
|
21
|
+
a98: 'a98',
|
|
22
|
+
'display-p3': 'p3',
|
|
23
|
+
hsl: 'hsl',
|
|
24
|
+
hsv: 'hsv',
|
|
25
|
+
hwb: 'hwb',
|
|
26
|
+
lab: 'lab',
|
|
27
|
+
lch: 'lch',
|
|
28
|
+
oklab: 'oklab',
|
|
29
|
+
oklch: 'oklch',
|
|
30
|
+
'prophoto-rgb': 'prophoto',
|
|
31
|
+
rec2020: 'rec2020',
|
|
32
|
+
srgb: 'rgb',
|
|
33
|
+
'srgb-linear': 'lrgb',
|
|
34
|
+
'xyz-d50': 'xyz50',
|
|
35
|
+
'xyz-d65': 'xyz65',
|
|
36
|
+
};
|
|
37
|
+
/** Parse any color */
|
|
38
|
+
export function parseColor(color) {
|
|
39
|
+
const result = parse(color);
|
|
40
|
+
if (!result) {
|
|
41
|
+
throw new Error(`Unable to parse color "${color}"`);
|
|
42
|
+
}
|
|
43
|
+
if (!(result.mode in CULORI_TO_CSS)) {
|
|
44
|
+
throw new Error(`Unsupported color space: ${result.mode}`);
|
|
45
|
+
}
|
|
46
|
+
const colorSpace = CULORI_TO_CSS[result.mode];
|
|
47
|
+
let channels = [0, 0, 0];
|
|
48
|
+
switch (result.mode) {
|
|
49
|
+
case 'a98':
|
|
50
|
+
case 'rec2020':
|
|
51
|
+
case 'p3':
|
|
52
|
+
case 'prophoto':
|
|
53
|
+
case 'lrgb':
|
|
54
|
+
case 'rgb': {
|
|
55
|
+
channels = [result.r, result.g, result.b];
|
|
56
|
+
break;
|
|
57
|
+
}
|
|
58
|
+
case 'hsl': {
|
|
59
|
+
channels = [result.h ?? 0, result.s, result.l];
|
|
60
|
+
break;
|
|
61
|
+
}
|
|
62
|
+
case 'hsv': {
|
|
63
|
+
channels = [result.h ?? 0, result.s, result.v];
|
|
64
|
+
break;
|
|
65
|
+
}
|
|
66
|
+
case 'hwb': {
|
|
67
|
+
channels = [result.h ?? 0, result.w, result.b];
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
case 'lab':
|
|
71
|
+
case 'oklab': {
|
|
72
|
+
channels = [result.l, result.a, result.b];
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
case 'lch':
|
|
76
|
+
case 'oklch': {
|
|
77
|
+
channels = [result.l, result.c, result.h ?? 0];
|
|
78
|
+
break;
|
|
79
|
+
}
|
|
80
|
+
case 'xyz50':
|
|
81
|
+
case 'xyz65': {
|
|
82
|
+
channels = [result.x, result.y, result.z];
|
|
83
|
+
break;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return {
|
|
87
|
+
colorSpace,
|
|
88
|
+
channels,
|
|
89
|
+
alpha: result.alpha ?? 1,
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
/** Convert a color token to a Culori color */
|
|
93
|
+
export function tokenToCulori(token) {
|
|
94
|
+
if (token.$type !== 'color') {
|
|
95
|
+
return undefined;
|
|
96
|
+
}
|
|
97
|
+
switch (token.$value.colorSpace) {
|
|
98
|
+
case 'a98':
|
|
99
|
+
case 'display-p3':
|
|
100
|
+
case 'prophoto-rgb':
|
|
101
|
+
case 'rec2020':
|
|
102
|
+
case 'srgb':
|
|
103
|
+
case 'srgb-linear': {
|
|
104
|
+
const [r, g, b] = token.$value.channels;
|
|
105
|
+
return {
|
|
106
|
+
mode: CSS_TO_CULORI[token.$value.colorSpace] || token.$value.colorSpace,
|
|
107
|
+
r,
|
|
108
|
+
g,
|
|
109
|
+
b,
|
|
110
|
+
alpha: token.$value.alpha,
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
case 'hsl': {
|
|
114
|
+
const [h, s, l] = token.$value.channels;
|
|
115
|
+
return { mode: 'hsl', h, s, l, alpha: token.$value.alpha };
|
|
116
|
+
}
|
|
117
|
+
case 'hsv': {
|
|
118
|
+
const [h, s, v] = token.$value.channels;
|
|
119
|
+
return { mode: 'hsv', h, s, v, alpha: token.$value.alpha };
|
|
120
|
+
}
|
|
121
|
+
case 'hwb': {
|
|
122
|
+
const [h, w, b] = token.$value.channels;
|
|
123
|
+
return { mode: 'hwb', h, w, b, alpha: token.$value.alpha };
|
|
124
|
+
}
|
|
125
|
+
case 'lab':
|
|
126
|
+
case 'oklab': {
|
|
127
|
+
const [l, a, b] = token.$value.channels;
|
|
128
|
+
return { mode: token.$value.colorSpace, l, a, b, alpha: token.$value.alpha };
|
|
129
|
+
}
|
|
130
|
+
case 'lch':
|
|
131
|
+
case 'oklch': {
|
|
132
|
+
const [l, c, h] = token.$value.channels;
|
|
133
|
+
return { mode: token.$value.colorSpace, l, c, h, alpha: token.$value.alpha };
|
|
134
|
+
}
|
|
135
|
+
case 'xyz-d50': {
|
|
136
|
+
const [x, y, z] = token.$value.channels;
|
|
137
|
+
return { mode: 'xyz50', x, y, z, alpha: token.$value.alpha };
|
|
138
|
+
}
|
|
139
|
+
case 'xyz-d65': {
|
|
140
|
+
const [x, y, z] = token.$value.channels;
|
|
141
|
+
return { mode: 'xyz65', x, y, z, alpha: token.$value.alpha };
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=color.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"color.js","sourceRoot":"","sources":["../src/color.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { defaultAliasTransform } from './lib.js';
|
|
2
|
+
/** Convert boolean value to CSS string */
|
|
3
|
+
export function transformBooleanValue(value, { aliasOf, transformAlias = defaultAliasTransform } = {}) {
|
|
4
|
+
if (aliasOf) {
|
|
5
|
+
return transformAlias(aliasOf);
|
|
6
|
+
}
|
|
7
|
+
if (typeof value !== 'boolean') {
|
|
8
|
+
throw new Error(`Expected boolean, received ${typeof value} "${value}"`);
|
|
9
|
+
}
|
|
10
|
+
return value ? '1' : '0';
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=boolean.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"boolean.js","sourceRoot":"","sources":["../../src/css/boolean.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAEnE,0CAA0C;AAC1C,MAAM,UAAU,qBAAqB,CACnC,KAAc,EACd,EAAE,OAAO,EAAE,cAAc,GAAG,qBAAqB,KAAyD,EAAE;IAE5G,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,8BAA8B,OAAO,KAAK,KAAK,KAAK,GAAG,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AAC3B,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { BorderValue } from '../types.js';
|
|
2
|
+
import { type IDGenerator } from './lib.js';
|
|
3
|
+
/** Convert border value to multiple CSS values */
|
|
4
|
+
export declare function transformBorderValue(value: BorderValue, { aliasOf, partialAliasOf, transformAlias, }: {
|
|
5
|
+
aliasOf?: string;
|
|
6
|
+
partialAliasOf?: Partial<Record<keyof typeof value, string>>;
|
|
7
|
+
transformAlias: IDGenerator;
|
|
8
|
+
}): string | {
|
|
9
|
+
'.': string;
|
|
10
|
+
srgb: string;
|
|
11
|
+
p3: string;
|
|
12
|
+
rec2020: string;
|
|
13
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { displayable } from 'culori';
|
|
2
|
+
import { transformColorValue } from './color.js';
|
|
3
|
+
import { transformDimensionValue } from './dimension.js';
|
|
4
|
+
import { defaultAliasTransform } from './lib.js';
|
|
5
|
+
import { transformStrokeStyleValue } from './stroke-style.js';
|
|
6
|
+
/** Convert border value to multiple CSS values */
|
|
7
|
+
export function transformBorderValue(value, { aliasOf, partialAliasOf, transformAlias = defaultAliasTransform, }) {
|
|
8
|
+
if (aliasOf) {
|
|
9
|
+
return transformAlias(aliasOf);
|
|
10
|
+
}
|
|
11
|
+
const width = partialAliasOf?.width
|
|
12
|
+
? transformAlias(partialAliasOf.width)
|
|
13
|
+
: transformDimensionValue(value.width, { transformAlias });
|
|
14
|
+
const color = partialAliasOf?.color
|
|
15
|
+
? transformAlias(partialAliasOf.color)
|
|
16
|
+
: transformColorValue(value.color, { transformAlias });
|
|
17
|
+
const style = partialAliasOf?.style
|
|
18
|
+
? transformAlias(partialAliasOf.style)
|
|
19
|
+
: transformStrokeStyleValue(value.style, { transformAlias });
|
|
20
|
+
const formatBorder = (colorKey) => [width, style, typeof color === 'string' ? color : color[colorKey]].join(' ');
|
|
21
|
+
return typeof color === 'string' || displayable(color.p3)
|
|
22
|
+
? formatBorder('.')
|
|
23
|
+
: {
|
|
24
|
+
'.': formatBorder('.'),
|
|
25
|
+
srgb: formatBorder('srgb'),
|
|
26
|
+
p3: formatBorder('p3'),
|
|
27
|
+
rec2020: formatBorder('rec2020'),
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=border.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"border.js","sourceRoot":"","sources":["../../src/css/border.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAoB,qBAAqB,EAAE,MAAM,UAAU,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,kDAAkD;AAClD,MAAM,UAAU,oBAAoB,CAClC,KAAkB,EAClB,EACE,OAAO,EACP,cAAc,EACd,cAAc,GAAG,qBAAqB,GAKvC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,KAAK,GAAG,cAAc,EAAE,KAAK;QACjC,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC;QACtC,CAAC,CAAC,uBAAuB,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;IAC7D,MAAM,KAAK,GAAG,cAAc,EAAE,KAAK;QACjC,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC;QACtC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,cAAc,EAAE,KAAK;QACjC,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC;QACtC,CAAC,CAAC,yBAAyB,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;IAE/D,MAAM,YAAY,GAAG,CAAC,QAAgB,EAAE,EAAE,CACxC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAA8B,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEtG,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QACvD,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC;QACnB,CAAC,CAAC;YACE,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC;YACtB,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC;YAC1B,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC;YACtB,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC;SACjC,CAAC;AACR,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ColorValue } from '../types.js';
|
|
2
|
+
import { type IDGenerator } from './lib.js';
|
|
3
|
+
export type WideGamutColorValue = {
|
|
4
|
+
'.': string;
|
|
5
|
+
srgb: string;
|
|
6
|
+
p3: string;
|
|
7
|
+
rec2020: string;
|
|
8
|
+
};
|
|
9
|
+
/** Convert color value to CSS string */
|
|
10
|
+
export declare function transformColorValue(value: string | ColorValue, { aliasOf, transformAlias }?: {
|
|
11
|
+
aliasOf?: string;
|
|
12
|
+
transformAlias?: IDGenerator;
|
|
13
|
+
}): string | WideGamutColorValue;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { displayable, formatCss, toGamut } from 'culori';
|
|
2
|
+
import { parseColor, tokenToCulori } from '../color.js';
|
|
3
|
+
import { defaultAliasTransform } from './lib.js';
|
|
4
|
+
/** Convert color value to CSS string */
|
|
5
|
+
export function transformColorValue(value, { aliasOf, transformAlias = defaultAliasTransform } = {}) {
|
|
6
|
+
if (aliasOf) {
|
|
7
|
+
return transformAlias(aliasOf);
|
|
8
|
+
}
|
|
9
|
+
const { colorSpace, channels, alpha = 1 } = typeof value === 'string' ? parseColor(value) : value;
|
|
10
|
+
const color = tokenToCulori({
|
|
11
|
+
$type: 'color',
|
|
12
|
+
$value: { colorSpace, channels, alpha },
|
|
13
|
+
mode: { '.': { $type: 'color', $value: { colorSpace, channels, alpha } } },
|
|
14
|
+
});
|
|
15
|
+
if (!color) {
|
|
16
|
+
throw new Error(`Can’t convert color ${JSON.stringify(value)} to Culori color`);
|
|
17
|
+
}
|
|
18
|
+
return displayable(color)
|
|
19
|
+
? formatCss(color)
|
|
20
|
+
: {
|
|
21
|
+
'.': formatCss(color),
|
|
22
|
+
srgb: (typeof value === 'object' && value.hex) || formatCss(toGamut('rgb', 'oklch')(color)),
|
|
23
|
+
p3: formatCss(toGamut('p3', 'oklch')(color)),
|
|
24
|
+
rec2020: formatCss(toGamut('rec2020', 'oklch')(color)),
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=color.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"color.js","sourceRoot":"","sources":["../../src/css/color.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,EAAoB,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAInE,wCAAwC;AACxC,MAAM,UAAU,mBAAmB,CACjC,KAA0B,EAC1B,EAAE,OAAO,EAAE,cAAc,GAAG,qBAAqB,KAAyD,EAAE;IAE5G,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAClG,MAAM,KAAK,GAAG,aAAa,CAAC;QAC1B,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE;QACvC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;KACxC,CAAC,CAAC;IAEtC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAClF,CAAC;IAED,OAAO,WAAW,CAAC,KAAK,CAAC;QACvB,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC;QAClB,CAAC,CAAC;YACE,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC;YACrB,IAAI,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,KAAK,CAAU,CAAC;YACpG,EAAE,EAAE,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,KAAK,CAAU,CAAC;YACrD,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,KAAK,CAAU,CAAC;SAChE,CAAC;AACR,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CubicBezierValue } from '../types.js';
|
|
2
|
+
import { type IDGenerator } from './lib.js';
|
|
3
|
+
/** Convert cubicBezier value to CSS */
|
|
4
|
+
export declare function transformCubicBezierValue(value: CubicBezierValue, { aliasOf, partialAliasOf, transformAlias, }?: {
|
|
5
|
+
aliasOf?: string;
|
|
6
|
+
partialAliasOf?: [string | undefined, string | undefined, string | undefined, string | undefined];
|
|
7
|
+
transformAlias?: IDGenerator;
|
|
8
|
+
}): string;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { defaultAliasTransform } from './lib.js';
|
|
2
|
+
/** Convert cubicBezier value to CSS */
|
|
3
|
+
export function transformCubicBezierValue(value, { aliasOf, partialAliasOf, transformAlias = defaultAliasTransform, } = {}) {
|
|
4
|
+
if (aliasOf) {
|
|
5
|
+
return transformAlias(aliasOf);
|
|
6
|
+
}
|
|
7
|
+
return `cubic-bezier(${value
|
|
8
|
+
.map((v, i) => (partialAliasOf?.[i] ? transformAlias(partialAliasOf[i]) : v))
|
|
9
|
+
.join(', ')})`;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=cubic-bezier.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cubic-bezier.js","sourceRoot":"","sources":["../../src/css/cubic-bezier.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAEnE,uCAAuC;AACvC,MAAM,UAAU,yBAAyB,CACvC,KAAuB,EACvB,EACE,OAAO,EACP,cAAc,EACd,cAAc,GAAG,qBAAqB,MAKpC,EAAE;IAEN,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,gBAAgB,KAAK;SACzB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC7E,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { AliasValue, DimensionValue } from '../types.js';
|
|
2
|
+
import { type IDGenerator } from './lib.js';
|
|
3
|
+
/** Convert dimension value to CSS */
|
|
4
|
+
export declare function transformDimensionValue(value: DimensionValue | AliasValue, { aliasOf, transformAlias }?: {
|
|
5
|
+
aliasOf?: string;
|
|
6
|
+
transformAlias?: IDGenerator;
|
|
7
|
+
}): string;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { defaultAliasTransform } from './lib.js';
|
|
2
|
+
/** Convert dimension value to CSS */
|
|
3
|
+
export function transformDimensionValue(value, { aliasOf, transformAlias = defaultAliasTransform } = {}) {
|
|
4
|
+
if (aliasOf) {
|
|
5
|
+
return transformAlias(aliasOf);
|
|
6
|
+
}
|
|
7
|
+
else if (typeof value === 'string') {
|
|
8
|
+
throw new Error(`Could not resolve alias ${value}`);
|
|
9
|
+
}
|
|
10
|
+
return value.value === 0 ? '0' : `${value.value}${value.unit}`;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=dimension.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dimension.js","sourceRoot":"","sources":["../../src/css/dimension.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAEnE,qCAAqC;AACrC,MAAM,UAAU,uBAAuB,CACrC,KAAkC,EAClC,EAAE,OAAO,EAAE,cAAc,GAAG,qBAAqB,KAAyD,EAAE;IAE5G,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,KAAK,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;AACjE,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { AliasValue, DurationValue } from '../types.js';
|
|
2
|
+
import { type IDGenerator } from './lib.js';
|
|
3
|
+
/** Convert duration value to CSS */
|
|
4
|
+
export declare function transformDurationValue(value: DurationValue | AliasValue, { aliasOf, transformAlias }?: {
|
|
5
|
+
aliasOf?: string;
|
|
6
|
+
transformAlias?: IDGenerator;
|
|
7
|
+
}): string;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { defaultAliasTransform } from './lib.js';
|
|
2
|
+
/** Convert duration value to CSS */
|
|
3
|
+
export function transformDurationValue(value, { aliasOf, transformAlias = defaultAliasTransform } = {}) {
|
|
4
|
+
if (aliasOf) {
|
|
5
|
+
return transformAlias(aliasOf);
|
|
6
|
+
}
|
|
7
|
+
else if (typeof value === 'string') {
|
|
8
|
+
throw new Error(`Could not resolve alias ${value}`);
|
|
9
|
+
}
|
|
10
|
+
return value.value === 0 ? '0' : `${value.value}${value.unit}`;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=duration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duration.js","sourceRoot":"","sources":["../../src/css/duration.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAEnE,oCAAoC;AACpC,MAAM,UAAU,sBAAsB,CACpC,KAAiC,EACjC,EAAE,OAAO,EAAE,cAAc,GAAG,qBAAqB,KAAyD,EAAE;IAE5G,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,KAAK,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;AACjE,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type IDGenerator } from './lib.js';
|
|
2
|
+
export declare const FONT_FAMILY_KEYWORDS: Set<string>;
|
|
3
|
+
export declare function transformFontFamilyValue(value: string | string[], { aliasOf, partialAliasOf, transformAlias, }?: {
|
|
4
|
+
aliasOf?: string;
|
|
5
|
+
partialAliasOf?: string[];
|
|
6
|
+
transformAlias?: IDGenerator;
|
|
7
|
+
}): string;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { defaultAliasTransform } from './lib.js';
|
|
2
|
+
export const FONT_FAMILY_KEYWORDS = new Set([
|
|
3
|
+
'sans-serif',
|
|
4
|
+
'serif',
|
|
5
|
+
'monospace',
|
|
6
|
+
'system-ui',
|
|
7
|
+
'ui-monospace',
|
|
8
|
+
'-apple-system',
|
|
9
|
+
]);
|
|
10
|
+
export function transformFontFamilyValue(value, { aliasOf, partialAliasOf, transformAlias = defaultAliasTransform, } = {}) {
|
|
11
|
+
if (aliasOf) {
|
|
12
|
+
return transformAlias(aliasOf);
|
|
13
|
+
}
|
|
14
|
+
return (typeof value === 'string' ? [value] : value)
|
|
15
|
+
.map((fontName, i) => partialAliasOf?.[i]
|
|
16
|
+
? transformAlias(partialAliasOf[i])
|
|
17
|
+
: FONT_FAMILY_KEYWORDS.has(fontName)
|
|
18
|
+
? fontName
|
|
19
|
+
: `"${fontName}"`)
|
|
20
|
+
.join(', ');
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=font-family.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"font-family.js","sourceRoot":"","sources":["../../src/css/font-family.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAEnE,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC;IAC1C,YAAY;IACZ,OAAO;IACP,WAAW;IACX,WAAW;IACX,cAAc;IACd,eAAe;CAChB,CAAC,CAAC;AAEH,MAAM,UAAU,wBAAwB,CACtC,KAAwB,EACxB,EACE,OAAO,EACP,cAAc,EACd,cAAc,GAAG,qBAAqB,MAC2C,EAAE;IAErF,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;SACjD,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,CACnB,cAAc,EAAE,CAAC,CAAC,CAAC;QACjB,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAE,CAAC;QACpC,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClC,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,IAAI,QAAQ,GAAG,CACtB;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { defaultAliasTransform } from './lib.js';
|
|
2
|
+
/** Convert fontWeight value to CSS */
|
|
3
|
+
export function transformFontWeightValue(value, { aliasOf, transformAlias = defaultAliasTransform } = {}) {
|
|
4
|
+
if (aliasOf) {
|
|
5
|
+
return transformAlias(aliasOf);
|
|
6
|
+
}
|
|
7
|
+
return String(value);
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=font-weight.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"font-weight.js","sourceRoot":"","sources":["../../src/css/font-weight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAEnE,sCAAsC;AACtC,MAAM,UAAU,wBAAwB,CACtC,KAAsB,EACtB,EAAE,OAAO,EAAE,cAAc,GAAG,qBAAqB,KAAyD,EAAE;IAE5G,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { GradientStopNormalized, GradientValueNormalized } from '../types';
|
|
2
|
+
import { type WideGamutColorValue } from './color.js';
|
|
3
|
+
import { type IDGenerator } from './lib.js';
|
|
4
|
+
/** Convert gradient value to CSS */
|
|
5
|
+
export declare function transformGradientValue(value: GradientValueNormalized, { aliasOf, partialAliasOf, transformAlias, }?: {
|
|
6
|
+
aliasOf?: string;
|
|
7
|
+
partialAliasOf?: Partial<Record<keyof GradientStopNormalized, string>>[];
|
|
8
|
+
transformAlias?: IDGenerator;
|
|
9
|
+
}): string | WideGamutColorValue;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { transformColorValue } from './color.js';
|
|
2
|
+
import { defaultAliasTransform } from './lib.js';
|
|
3
|
+
/** Convert gradient value to CSS */
|
|
4
|
+
export function transformGradientValue(value, { aliasOf, partialAliasOf, transformAlias = defaultAliasTransform, } = {}) {
|
|
5
|
+
if (aliasOf) {
|
|
6
|
+
return transformAlias(aliasOf);
|
|
7
|
+
}
|
|
8
|
+
const colors = value.map(({ color }, i) => partialAliasOf?.[i]?.color ? transformAlias(partialAliasOf[i].color) : transformColorValue(color));
|
|
9
|
+
const positions = value.map(({ position }, i) => partialAliasOf?.[i]?.position ? transformAlias(String(partialAliasOf[i].position)) : `${100 * position}%`);
|
|
10
|
+
const isHDR = colors.some((c) => typeof c === 'object');
|
|
11
|
+
const formatStop = (index, colorKey = '.') => [
|
|
12
|
+
typeof colors[index] === 'string' ? colors[index] : colors[index][colorKey],
|
|
13
|
+
positions[index],
|
|
14
|
+
].join(' ');
|
|
15
|
+
return !isHDR
|
|
16
|
+
? value.map((_, i) => formatStop(i, positions[i])).join(', ')
|
|
17
|
+
: {
|
|
18
|
+
'.': value.map((_, i) => formatStop(i, '.')).join(', '),
|
|
19
|
+
srgb: value.map((_, i) => formatStop(i, 'srgb')).join(', '),
|
|
20
|
+
p3: value.map((_, i) => formatStop(i, 'p3')).join(', '),
|
|
21
|
+
rec2020: value.map((_, i) => formatStop(i, 'rec2020')).join(', '),
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=gradient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gradient.js","sourceRoot":"","sources":["../../src/css/gradient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAA4B,MAAM,YAAY,CAAC;AAC3E,OAAO,EAAoB,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAEnE,oCAAoC;AACpC,MAAM,UAAU,sBAAsB,CACpC,KAA8B,EAC9B,EACE,OAAO,EACP,cAAc,EACd,cAAc,GAAG,qBAAqB,MAKpC,EAAE;IAEN,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CACxC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAE,CAAC,KAAe,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAC7G,CAAC;IACF,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,CAC9C,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,QAAQ,GAAG,CAC3G,CAAC;IACF,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;IACxD,MAAM,UAAU,GAAG,CAAC,KAAa,EAAE,QAAQ,GAAG,GAAG,EAAE,EAAE,CACnD;QACE,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAE,CAAC,QAAyC,CAAC;QAC7G,SAAS,CAAC,KAAK,CAAE;KAClB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEd,OAAO,CAAC,KAAK;QACX,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC9D,CAAC,CAAC;YACE,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACvD,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAC3D,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACvD,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;SAClE,CAAC;AACR,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { TokenNormalized } from '../types.js';
|
|
2
|
+
import type { IDGenerator } from './lib.js';
|
|
3
|
+
import { transformCubicBezierValue } from './cubic-bezier.js';
|
|
4
|
+
import { transformDurationValue } from './duration.js';
|
|
5
|
+
export * from './boolean.js';
|
|
6
|
+
export * from './border.js';
|
|
7
|
+
export * from './color.js';
|
|
8
|
+
export * from './cubic-bezier.js';
|
|
9
|
+
export * from './dimension.js';
|
|
10
|
+
export * from './duration.js';
|
|
11
|
+
export * from './font-family.js';
|
|
12
|
+
export * from './font-weight.js';
|
|
13
|
+
export * from './gradient.js';
|
|
14
|
+
export * from './lib.js';
|
|
15
|
+
export * from './link.js';
|
|
16
|
+
export * from './number.js';
|
|
17
|
+
export * from './shadow.js';
|
|
18
|
+
export * from './string.js';
|
|
19
|
+
export * from './stroke-style.js';
|
|
20
|
+
export * from './transition.js';
|
|
21
|
+
export * from './typography.js';
|
|
22
|
+
export interface TransformCSSValueOptions {
|
|
23
|
+
mode: string;
|
|
24
|
+
transformAlias: IDGenerator;
|
|
25
|
+
}
|
|
26
|
+
/** Main CSS Transform */
|
|
27
|
+
export declare function transformCSSValue<T extends TokenNormalized>(token: T, { mode, transformAlias }: TransformCSSValueOptions): string | Record<string, string> | import("./color.js").WideGamutColorValue | {
|
|
28
|
+
duration: ReturnType<typeof transformDurationValue>;
|
|
29
|
+
delay: ReturnType<typeof transformDurationValue>;
|
|
30
|
+
'timing-function': ReturnType<typeof transformCubicBezierValue>;
|
|
31
|
+
} | undefined;
|