@terrazzo/plugin-css 2.3.0 → 2.5.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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utility-css.d.ts","sourceRoot":"","sources":["../src/utility-css.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAIjE,OAAO,EACL,KAAK,OAAO,EAIZ,KAAK,eAAe,EAErB,MAAM,UAAU,CAAC;AA+BlB,MAAM,CAAC,OAAO,UAAU,kBAAkB,CACxC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC,CAAC,EAClD,MAAM,EAAE,gBAAgB,EAAE,EAC1B,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAC7B,OAAO,EAAE,CA0MX"}
@@ -0,0 +1,198 @@
1
+ import { CachedWildcardMatcher, kebabCase } from '@terrazzo/token-tools';
2
+ import { makeCSSVar } from '@terrazzo/token-tools/css';
3
+ import { decl, PLUGIN_NAME, rule, } from './lib.js';
4
+ // micro-optimization: precompile all RegExs (which can be known) because dynamic compilation is a waste of resources
5
+ const GROUP_REGEX = {
6
+ bg: /(^bg-|-bg-)/,
7
+ border: /(^border-|-border-)/,
8
+ font: /(^font-|-font-)/,
9
+ gap: /(^gap-|-gap-)/,
10
+ m: /(^margin-|-margin-|)/,
11
+ p: /(^padding-|-padding-|)/,
12
+ shadow: /(^shadow-|-shadow-)/,
13
+ text: /(^text-|-text-)/,
14
+ };
15
+ /** Make CSS class name from transformed token */
16
+ function makePrelude(token, prefix, subgroup) {
17
+ return [
18
+ `.${prefix}${subgroup || ''}-${kebabCase(token.token.id).replace(GROUP_REGEX[prefix], '')}`,
19
+ ];
20
+ }
21
+ function makeVarValue(token) {
22
+ return makeCSSVar(token.localID ?? token.token.id, { wrapVar: true });
23
+ }
24
+ const utilityMatcher = new CachedWildcardMatcher();
25
+ export default function generateUtilityCSS(groups, tokens, { logger }) {
26
+ const root = [];
27
+ const groupEntries = Object.entries(groups);
28
+ groupEntries.sort((a, b) => a[0].localeCompare(b[0]));
29
+ for (const [group, selectors] of groupEntries) {
30
+ const selectorMatcher = utilityMatcher.match(selectors);
31
+ const matchingTokens = tokens.filter((token) => selectorMatcher(token.token.id));
32
+ if (matchingTokens.length === 0) {
33
+ logger.warn({
34
+ group: 'plugin',
35
+ label: PLUGIN_NAME,
36
+ message: `utility group "${group}" matched 0 tokens: ${JSON.stringify(selectors)}`,
37
+ });
38
+ break;
39
+ }
40
+ switch (group) {
41
+ case 'bg': {
42
+ for (const token of matchingTokens) {
43
+ const prelude = makePrelude(token, 'bg');
44
+ switch (token.token.$type) {
45
+ case 'color': {
46
+ root.push(rule(prelude, [decl('background-color', makeVarValue(token))]));
47
+ break;
48
+ }
49
+ case 'gradient': {
50
+ const value = decl('background-image', `linear-gradient(${makeCSSVar(token.localID ?? token.token.id, { wrapVar: true })})`);
51
+ root.push(rule(prelude, [value]));
52
+ }
53
+ }
54
+ }
55
+ break;
56
+ }
57
+ case 'border': {
58
+ // ALL generic properties must come before specific properties
59
+ for (const token of matchingTokens) {
60
+ const property = {
61
+ border: 'border',
62
+ color: 'border-color',
63
+ dimension: 'border-width',
64
+ strokeStyle: 'border-style',
65
+ }[token.token.$type];
66
+ if (property) {
67
+ root.push(rule(makePrelude(token, 'border'), [decl(property, makeVarValue(token))]));
68
+ }
69
+ }
70
+ // specific properties
71
+ for (const token of matchingTokens) {
72
+ for (const side of ['top', 'right', 'bottom', 'left']) {
73
+ const property = {
74
+ border: `border-${side}`,
75
+ color: `border-${side}-color`,
76
+ dimension: `border-${side}-width`,
77
+ strokeStyle: `border-${side}-style`,
78
+ }[token.token.$type];
79
+ if (property) {
80
+ root.push(rule(makePrelude(token, 'border', `-${side}`), [
81
+ decl(property, makeVarValue(token)),
82
+ ]));
83
+ }
84
+ }
85
+ }
86
+ break;
87
+ }
88
+ case 'font': {
89
+ for (const token of matchingTokens) {
90
+ const prelude = makePrelude(token, 'font');
91
+ if (token.token.$type === 'typography' && token.type === 'MULTI_VALUE') {
92
+ const value = Object.keys(token.value).map((property) => decl(property, makeCSSVar(`${token.localID ?? token.token.id}-${property}`, { wrapVar: true })));
93
+ root.push(rule(prelude, value));
94
+ }
95
+ else {
96
+ const property = {
97
+ dimension: 'font-size',
98
+ fontFamily: 'font-family',
99
+ fontWeight: 'font-weight',
100
+ }[token.token.$type];
101
+ if (property) {
102
+ root.push(rule(prelude, [decl(property, makeVarValue(token))]));
103
+ }
104
+ }
105
+ }
106
+ break;
107
+ }
108
+ case 'layout': {
109
+ const filteredTokens = matchingTokens.filter((t) => t.token.$type === 'dimension'); // only dimension tokens here
110
+ // gap
111
+ // ALL generic properties (gap) must come before specific properties (column-gap)
112
+ for (const token of filteredTokens) {
113
+ root.push(rule(makePrelude(token, 'gap'), [decl('gap', makeVarValue(token))]));
114
+ }
115
+ // specific properties
116
+ for (const token of filteredTokens) {
117
+ root.push(rule(makePrelude(token, 'gap', '-col'), [decl('column-gap', makeVarValue(token))]));
118
+ }
119
+ // specific properties
120
+ for (const token of filteredTokens) {
121
+ root.push(rule(makePrelude(token, 'gap', '-row'), [decl('row-gap', makeVarValue(token))]));
122
+ }
123
+ // margin/padding
124
+ for (const prefix of ['m', 'p']) {
125
+ const property = prefix === 'm' ? 'margin' : 'padding';
126
+ // note: ALL generic properties (margin: [value]) MUST come before specific properties (margin-top: [value])
127
+ // this is why we loop through all tokens so many times
128
+ for (const token of filteredTokens) {
129
+ root.push(rule(makePrelude(token, prefix, 'a'), [decl(property, makeVarValue(token))]));
130
+ }
131
+ for (const token of filteredTokens) {
132
+ const value = makeVarValue(token);
133
+ root.push(rule(makePrelude(token, prefix, 'x'), [
134
+ decl(`${property}-inline`, value),
135
+ decl(`${property}-left`, value),
136
+ decl(`${property}-right`, value),
137
+ ]), rule(makePrelude(token, prefix, 'y'), [
138
+ decl(`${property}-block`, value),
139
+ decl(`${property}-bottom`, value),
140
+ decl(`${property}-top`, value),
141
+ ]));
142
+ }
143
+ for (const side of ['top', 'right', 'bottom', 'left']) {
144
+ for (const token of filteredTokens) {
145
+ root.push(rule(makePrelude(token, prefix, side[0]), [
146
+ decl(`${property}-${side}`, makeVarValue(token)),
147
+ ]));
148
+ }
149
+ }
150
+ for (const token of filteredTokens) {
151
+ const value = makeVarValue(token);
152
+ root.push(rule(makePrelude(token, prefix, 'bs'), [decl(`${property}-block-start`, value)]), rule(makePrelude(token, prefix, 'be'), [decl(`${property}-block-end`, value)]), rule(makePrelude(token, prefix, 'is'), [decl(`${property}-inline-start`, value)]), rule(makePrelude(token, prefix, 'ie'), [decl(`${property}-inline-end`, value)]));
153
+ }
154
+ }
155
+ break;
156
+ }
157
+ case 'shadow': {
158
+ for (const token of matchingTokens) {
159
+ if (token.token.$type === 'shadow') {
160
+ root.push(rule(makePrelude(token, 'shadow'), [decl('box-shadow', makeVarValue(token))]));
161
+ }
162
+ }
163
+ break;
164
+ }
165
+ case 'text': {
166
+ for (const token of matchingTokens) {
167
+ const prelude = makePrelude(token, 'text');
168
+ const value = makeVarValue(token);
169
+ switch (token.token.$type) {
170
+ case 'color': {
171
+ root.push(rule(prelude, [decl('color', value)]));
172
+ break;
173
+ }
174
+ case 'gradient': {
175
+ root.push(rule(prelude, [
176
+ decl('background', `-webkit-linear-gradient(${value})`),
177
+ decl('-webkit-background-clip', 'text'),
178
+ decl('-webkit-text-fill-color', 'transparent'),
179
+ ]));
180
+ break;
181
+ }
182
+ }
183
+ }
184
+ break;
185
+ }
186
+ default: {
187
+ logger.warn({
188
+ group: 'plugin',
189
+ label: PLUGIN_NAME,
190
+ message: `unknown utility CSS group "${group}", ignoring`,
191
+ });
192
+ break;
193
+ }
194
+ }
195
+ }
196
+ return root;
197
+ }
198
+ //# sourceMappingURL=utility-css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utility-css.js","sourceRoot":"","sources":["../src/utility-css.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@terrazzo/plugin-css",
3
- "version": "2.3.0",
3
+ "version": "2.5.0",
4
4
  "description": "Convert DTCG design tokens JSON into CSS variables for use in any web application or native app with webview.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -27,24 +27,23 @@
27
27
  "directory": "./packages/plugin-css/"
28
28
  },
29
29
  "peerDependencies": {
30
- "@terrazzo/cli": "^2.3.0",
31
- "@terrazzo/parser": "^2.3.0"
30
+ "@terrazzo/cli": "^2.5.0",
31
+ "@terrazzo/parser": "^2.5.0"
32
32
  },
33
33
  "dependencies": {
34
- "@terrazzo/token-tools": "^2.3.0"
34
+ "@terrazzo/token-tools": "^2.4.0"
35
35
  },
36
36
  "devDependencies": {
37
37
  "dtcg-examples": "^1.0.3",
38
- "@terrazzo/cli": "^2.3.0",
39
- "@terrazzo/parser": "^2.3.0"
38
+ "@terrazzo/cli": "^2.5.0",
39
+ "@terrazzo/parser": "^2.5.0"
40
40
  },
41
41
  "scripts": {
42
- "build": "rolldown -c && attw --profile esm-only --pack .",
43
- "dev": "rolldown -w -c",
44
- "format": "biome check --fix --unsafe .",
45
- "lint": "pnpm --filter @terrazzo/plugin-css run \"/^lint:(js|ts)/\"",
46
- "lint:js": "biome check .",
47
- "lint:ts": "tsc --noEmit",
42
+ "build": "tsc -b tsconfig.build.json && attw --profile esm-only --pack .",
43
+ "dev": "tsc -b tsconfig.build.json -w",
44
+ "fmt": "oxfmt",
45
+ "fmt:check": "oxfmt --check",
46
+ "lint": "oxlint --quiet && oxfmt --check && tsc --noEmit",
48
47
  "test": "vitest run"
49
48
  }
50
49
  }