@arbor-css/core 0.0.108 → 0.0.111

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.
Files changed (184) hide show
  1. package/dist/cli/introspection.test.js +3 -3
  2. package/dist/cli/introspection.test.js.map +1 -1
  3. package/dist/cli/run.js +15 -6
  4. package/dist/cli/run.js.map +1 -1
  5. package/dist/cli/validate.test.js +3 -3
  6. package/dist/cli/validate.test.js.map +1 -1
  7. package/dist/getStructuredTokensMap.test.js +1 -1
  8. package/dist/getStructuredTokensMap.test.js.map +1 -1
  9. package/dist/index.d.ts +3 -2
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +3 -2
  12. package/dist/index.js.map +1 -1
  13. package/dist/presets/arborPreset/modeSchema/global.d.ts +119 -31
  14. package/dist/presets/arborPreset/modeSchema/global.d.ts.map +1 -1
  15. package/dist/presets/arborPreset/modeSchema/global.js +117 -31
  16. package/dist/presets/arborPreset/modeSchema/global.js.map +1 -1
  17. package/dist/presets/arborPreset/modeSchema/intents/action.d.ts +3 -3
  18. package/dist/presets/arborPreset/modeSchema/intents/common.d.ts +1 -1
  19. package/dist/presets/arborPreset/modeSchema/intents/common.js +1 -1
  20. package/dist/presets/arborPreset/modeSchema/intents/common.js.map +1 -1
  21. package/dist/presets/arborPreset/modeSchema/intents/control.d.ts +1 -1
  22. package/dist/presets/arborPreset/modeSchema/intents/surface.d.ts +3 -3
  23. package/dist/presets/arborPreset/modeSchema/modeSchema.d.ts +124 -38
  24. package/dist/presets/arborPreset/modeSchema/modeSchema.d.ts.map +1 -1
  25. package/dist/presets/arborPreset/modeValues/color/color.d.ts +15 -23
  26. package/dist/presets/arborPreset/modeValues/color/color.d.ts.map +1 -1
  27. package/dist/presets/arborPreset/modeValues/color/color.js +4 -12
  28. package/dist/presets/arborPreset/modeValues/color/color.js.map +1 -1
  29. package/dist/presets/arborPreset/modeValues/color/compile.d.ts +5 -9
  30. package/dist/presets/arborPreset/modeValues/color/compile.d.ts.map +1 -1
  31. package/dist/presets/arborPreset/modeValues/color/compile.js +4 -4
  32. package/dist/presets/arborPreset/modeValues/color/compile.js.map +1 -1
  33. package/dist/presets/arborPreset/modeValues/color/compile.test.js +43 -40
  34. package/dist/presets/arborPreset/modeValues/color/compile.test.js.map +1 -1
  35. package/dist/presets/arborPreset/modeValues/color/ranges.d.ts +12 -12
  36. package/dist/presets/arborPreset/modeValues/color/ranges.d.ts.map +1 -1
  37. package/dist/presets/arborPreset/modeValues/color/ranges.js +9 -7
  38. package/dist/presets/arborPreset/modeValues/color/ranges.js.map +1 -1
  39. package/dist/presets/arborPreset/modeValues/intents.d.ts +45 -45
  40. package/dist/presets/arborPreset/modeValues/intents.d.ts.map +1 -1
  41. package/dist/presets/arborPreset/modeValues/intents.js +7 -7
  42. package/dist/presets/arborPreset/modeValues/intents.js.map +1 -1
  43. package/dist/presets/arborPreset/modeValues/semantics.d.ts +57 -57
  44. package/dist/presets/arborPreset/modeValues/semantics.d.ts.map +1 -1
  45. package/dist/presets/arborPreset/modeValues/semantics.js +15 -15
  46. package/dist/presets/arborPreset/modeValues/semantics.js.map +1 -1
  47. package/dist/presets/arborPreset/modeValues/shadow/index.d.ts +9 -16
  48. package/dist/presets/arborPreset/modeValues/shadow/index.d.ts.map +1 -1
  49. package/dist/presets/arborPreset/modeValues/shadow/index.js +16 -23
  50. package/dist/presets/arborPreset/modeValues/shadow/index.js.map +1 -1
  51. package/dist/presets/arborPreset/modeValues/spacing/index.d.ts +5 -22
  52. package/dist/presets/arborPreset/modeValues/spacing/index.d.ts.map +1 -1
  53. package/dist/presets/arborPreset/modeValues/spacing/index.js +2 -2
  54. package/dist/presets/arborPreset/modeValues/spacing/index.js.map +1 -1
  55. package/dist/presets/arborPreset/modeValues/typography/index.d.ts +9 -41
  56. package/dist/presets/arborPreset/modeValues/typography/index.d.ts.map +1 -1
  57. package/dist/presets/arborPreset/modeValues/typography/index.js +10 -7
  58. package/dist/presets/arborPreset/modeValues/typography/index.js.map +1 -1
  59. package/dist/presets/arborPreset/preset.d.ts +218 -43
  60. package/dist/presets/arborPreset/preset.d.ts.map +1 -1
  61. package/dist/presets/arborPreset/preset.js +171 -156
  62. package/dist/presets/arborPreset/preset.js.map +1 -1
  63. package/dist/presets/arborPreset/preset.test.js +18 -4
  64. package/dist/presets/arborPreset/preset.test.js.map +1 -1
  65. package/dist/presets/basicPreset/commonFunctions.d.ts +9 -9
  66. package/dist/presets/basicPreset/commonFunctions.d.ts.map +1 -1
  67. package/dist/presets/basicPreset/commonFunctions.js +14 -14
  68. package/dist/presets/basicPreset/commonFunctions.js.map +1 -1
  69. package/dist/presets/basicPreset/functions.test.js +12 -10
  70. package/dist/presets/basicPreset/functions.test.js.map +1 -1
  71. package/dist/presets/basicPreset/mixins.d.ts +3 -3
  72. package/dist/presets/basicPreset/mixins.d.ts.map +1 -1
  73. package/dist/presets/basicPreset/mixins.js +40 -63
  74. package/dist/presets/basicPreset/mixins.js.map +1 -1
  75. package/dist/presets/basicPreset/preset.d.ts +1 -1
  76. package/dist/presets/basicPreset/preset.d.ts.map +1 -1
  77. package/dist/presets/basicPreset/preset.js +6 -6
  78. package/dist/presets/basicPreset/preset.js.map +1 -1
  79. package/dist/publicResolve.d.ts +5 -0
  80. package/dist/publicResolve.d.ts.map +1 -0
  81. package/dist/publicResolve.js +11 -0
  82. package/dist/publicResolve.js.map +1 -0
  83. package/dist/runtime/components/ColorSwatch.d.ts +2 -0
  84. package/dist/runtime/components/ColorSwatch.d.ts.map +1 -0
  85. package/dist/runtime/components/ColorSwatch.js +39 -0
  86. package/dist/runtime/components/ColorSwatch.js.map +1 -0
  87. package/dist/runtime/components/FunctionsList.js +1 -1
  88. package/dist/runtime/components/MixinsList.js +1 -1
  89. package/dist/runtime/components/ModeGraph.d.ts.map +1 -1
  90. package/dist/runtime/components/ModeGraph.js +93 -46
  91. package/dist/runtime/components/ModeGraph.js.map +1 -1
  92. package/dist/runtime/components/Outputs.d.ts.map +1 -1
  93. package/dist/runtime/components/Outputs.js +2 -1
  94. package/dist/runtime/components/Outputs.js.map +1 -1
  95. package/dist/runtime/components/SpacingScale.js +2 -2
  96. package/dist/runtime/components/SpacingScale.js.map +1 -1
  97. package/dist/runtime/components/SystemDemo.d.ts +2 -0
  98. package/dist/runtime/components/SystemDemo.d.ts.map +1 -0
  99. package/dist/runtime/components/SystemDemo.js +32 -0
  100. package/dist/runtime/components/SystemDemo.js.map +1 -0
  101. package/dist/runtime/components/index.d.ts.map +1 -1
  102. package/dist/runtime/components/index.js +4 -0
  103. package/dist/runtime/components/index.js.map +1 -1
  104. package/dist/runtime/registration.d.ts +5 -1
  105. package/dist/runtime/registration.d.ts.map +1 -1
  106. package/dist/runtime/registration.js +32 -1
  107. package/dist/runtime/registration.js.map +1 -1
  108. package/dist/runtime/tokenGroups.d.ts.map +1 -1
  109. package/dist/stylesheet/generateStylesheet.d.ts +3 -1
  110. package/dist/stylesheet/generateStylesheet.d.ts.map +1 -1
  111. package/dist/stylesheet/generateStylesheet.js +2 -2
  112. package/dist/stylesheet/generateStylesheet.js.map +1 -1
  113. package/dist/stylesheet/generateStylesheet.test.js +4 -4
  114. package/dist/stylesheet/generateStylesheet.test.js.map +1 -1
  115. package/dist/stylesheet/modeToCss.d.ts +2 -3
  116. package/dist/stylesheet/modeToCss.d.ts.map +1 -1
  117. package/dist/stylesheet/modeToCss.js +2 -4
  118. package/dist/stylesheet/modeToCss.js.map +1 -1
  119. package/dist/stylesheet/modeToCss.test.js +10 -9
  120. package/dist/stylesheet/modeToCss.test.js.map +1 -1
  121. package/dist/util/buildModeTokenGraph.d.ts +4 -1
  122. package/dist/util/buildModeTokenGraph.d.ts.map +1 -1
  123. package/dist/util/buildModeTokenGraph.js +16 -10
  124. package/dist/util/buildModeTokenGraph.js.map +1 -1
  125. package/dist/util/buildModeTokenGraph.test.js +9 -4
  126. package/dist/util/buildModeTokenGraph.test.js.map +1 -1
  127. package/dist/util/flattenAndApplyTokenValues.d.ts +2 -1
  128. package/dist/util/flattenAndApplyTokenValues.d.ts.map +1 -1
  129. package/dist/util/flattenAndApplyTokenValues.js.map +1 -1
  130. package/dist/util/resolveComputedTokenValue.d.ts +2 -4
  131. package/dist/util/resolveComputedTokenValue.d.ts.map +1 -1
  132. package/dist/util/resolveComputedTokenValue.js +11 -13
  133. package/dist/util/resolveComputedTokenValue.js.map +1 -1
  134. package/dist/util/resolveComputedTokenValue.test.js +20 -10
  135. package/dist/util/resolveComputedTokenValue.test.js.map +1 -1
  136. package/package.json +8 -8
  137. package/dist/runtime/componentsOld/BaseElement.d.ts +0 -8
  138. package/dist/runtime/componentsOld/BaseElement.d.ts.map +0 -1
  139. package/dist/runtime/componentsOld/BaseElement.js +0 -14
  140. package/dist/runtime/componentsOld/BaseElement.js.map +0 -1
  141. package/dist/runtime/componentsOld/ModeSelector.d.ts +0 -2
  142. package/dist/runtime/componentsOld/ModeSelector.d.ts.map +0 -1
  143. package/dist/runtime/componentsOld/ModeSelector.js +0 -36
  144. package/dist/runtime/componentsOld/ModeSelector.js.map +0 -1
  145. package/dist/runtime/componentsOld/SchemeSelector.d.ts +0 -2
  146. package/dist/runtime/componentsOld/SchemeSelector.d.ts.map +0 -1
  147. package/dist/runtime/componentsOld/SchemeSelector.js +0 -34
  148. package/dist/runtime/componentsOld/SchemeSelector.js.map +0 -1
  149. package/dist/runtime/componentsOld/SystemDemo.d.ts +0 -2
  150. package/dist/runtime/componentsOld/SystemDemo.d.ts.map +0 -1
  151. package/dist/runtime/componentsOld/SystemDemo.js +0 -45
  152. package/dist/runtime/componentsOld/SystemDemo.js.map +0 -1
  153. package/dist/runtime/componentsOld/TokenColorValuePreview.d.ts +0 -2
  154. package/dist/runtime/componentsOld/TokenColorValuePreview.d.ts.map +0 -1
  155. package/dist/runtime/componentsOld/TokenColorValuePreview.js +0 -12
  156. package/dist/runtime/componentsOld/TokenColorValuePreview.js.map +0 -1
  157. package/dist/runtime/componentsOld/TokenFontValuesPreview.d.ts +0 -2
  158. package/dist/runtime/componentsOld/TokenFontValuesPreview.d.ts.map +0 -1
  159. package/dist/runtime/componentsOld/TokenFontValuesPreview.js +0 -14
  160. package/dist/runtime/componentsOld/TokenFontValuesPreview.js.map +0 -1
  161. package/dist/runtime/componentsOld/TokenShadowValuePreview.d.ts +0 -2
  162. package/dist/runtime/componentsOld/TokenShadowValuePreview.d.ts.map +0 -1
  163. package/dist/runtime/componentsOld/TokenShadowValuePreview.js +0 -14
  164. package/dist/runtime/componentsOld/TokenShadowValuePreview.js.map +0 -1
  165. package/dist/runtime/componentsOld/TokenSizeValuePreview.d.ts +0 -2
  166. package/dist/runtime/componentsOld/TokenSizeValuePreview.d.ts.map +0 -1
  167. package/dist/runtime/componentsOld/TokenSizeValuePreview.js +0 -12
  168. package/dist/runtime/componentsOld/TokenSizeValuePreview.js.map +0 -1
  169. package/dist/runtime/componentsOld/TokenValuePreview.d.ts +0 -2
  170. package/dist/runtime/componentsOld/TokenValuePreview.d.ts.map +0 -1
  171. package/dist/runtime/componentsOld/TokenValuePreview.js +0 -25
  172. package/dist/runtime/componentsOld/TokenValuePreview.js.map +0 -1
  173. package/dist/runtime/componentsOld/TokenValues.d.ts +0 -2
  174. package/dist/runtime/componentsOld/TokenValues.d.ts.map +0 -1
  175. package/dist/runtime/componentsOld/TokenValues.js +0 -103
  176. package/dist/runtime/componentsOld/TokenValues.js.map +0 -1
  177. package/dist/runtime/componentsOld/index.d.ts +0 -11
  178. package/dist/runtime/componentsOld/index.d.ts.map +0 -1
  179. package/dist/runtime/componentsOld/index.js +0 -11
  180. package/dist/runtime/componentsOld/index.js.map +0 -1
  181. package/dist/util/printTokens.d.ts +0 -5
  182. package/dist/util/printTokens.d.ts.map +0 -1
  183. package/dist/util/printTokens.js +0 -6
  184. package/dist/util/printTokens.js.map +0 -1
@@ -1,10 +1,13 @@
1
- import { isCalcEquation, printEquation } from '@arbor-css/calc';
1
+ import { isCss, printCss } from '@arbor-css/css-eval';
2
2
  import { getInternals } from '@arbor-css/preset';
3
3
  import { isToken } from '@arbor-css/tokens';
4
4
  import { css, html, LitElement } from 'lit-element';
5
5
  import { buildModeTokenGraph, } from '../../util/buildModeTokenGraph.js';
6
- import { getPreset } from '../registration.js';
6
+ import { getContext, getPreset, subscribeToEnvChanges, } from '../registration.js';
7
7
  const graphCache = new Map();
8
+ subscribeToEnvChanges(() => {
9
+ graphCache.clear();
10
+ });
8
11
  function memoizedTokenGraph(modeName, preset) {
9
12
  const cacheKey = `${modeName}`;
10
13
  if (graphCache.has(cacheKey)) {
@@ -17,17 +20,22 @@ function memoizedTokenGraph(modeName, preset) {
17
20
  throw new Error(`Mode "${modeName}" not found in preset.`);
18
21
  }
19
22
  const graph = buildModeTokenGraph(modeInstance, preset, {
23
+ ...getContext(),
20
24
  skipBaking: false,
21
25
  });
22
26
  graphCache.set(cacheKey, graph);
23
27
  return graph;
24
28
  }
25
- class ModeGraph extends LitElement {
26
- constructor() {
27
- super(...arguments);
28
- this.mode = '';
29
- this.preset = getPreset();
29
+ // sorts by nest depth (shallow first), then by name alphabetically
30
+ function categoryDepthSort(tokenA, tokenB) {
31
+ const categoryA = tokenA.split('-').length;
32
+ const categoryB = tokenB.split('-').length;
33
+ if (categoryA === categoryB) {
34
+ return tokenA.localeCompare(tokenB);
30
35
  }
36
+ return categoryA - categoryB;
37
+ }
38
+ class ModeGraph extends LitElement {
31
39
  static get properties() {
32
40
  return {
33
41
  mode: { type: String },
@@ -65,9 +73,16 @@ class ModeGraph extends LitElement {
65
73
  display: flex;
66
74
  flex-direction: column;
67
75
  font-family: monospace;
76
+ gap: var(--modeGraph-tokens-gap, var(--m-spacing-sm, 4px));
68
77
  }
69
78
  `;
70
79
  }
80
+ constructor() {
81
+ super();
82
+ this.mode = '';
83
+ this.preset = getPreset();
84
+ subscribeToEnvChanges(() => this.render());
85
+ }
71
86
  render() {
72
87
  const graph = memoizedTokenGraph(this.mode, this.preset);
73
88
  return html `
@@ -79,10 +94,11 @@ class ModeGraph extends LitElement {
79
94
  </span>
80
95
  </div>
81
96
  <div class="tokens">
82
- ${graph.roots.map((tokenName) => {
97
+ ${graph.roots.sort(categoryDepthSort).map((tokenName) => {
83
98
  return html `<arbor-mode-graph-token
84
99
  .mode=${this.mode}
85
100
  .name=${tokenName}
101
+ .expanded=${graph.roots.length <= 3}
86
102
  ></arbor-mode-graph-token>`;
87
103
  })}
88
104
  </div>
@@ -97,6 +113,7 @@ class ModeGraphToken extends LitElement {
97
113
  this.mode = '';
98
114
  this.dependency = '@@none';
99
115
  this.depth = 0;
116
+ this.expanded = false;
100
117
  this.preset = getPreset();
101
118
  }
102
119
  static get properties() {
@@ -105,6 +122,7 @@ class ModeGraphToken extends LitElement {
105
122
  name: { type: String },
106
123
  dependency: { type: String, optional: true },
107
124
  depth: { type: Number, optional: true },
125
+ expanded: { type: Boolean, optional: true },
108
126
  };
109
127
  }
110
128
  static get styles() {
@@ -129,15 +147,20 @@ class ModeGraphToken extends LitElement {
129
147
  }
130
148
 
131
149
  summary {
132
- cursor: pointer;
133
150
  display: flex;
134
151
  flex-direction: column;
152
+ &[data-has-dependents='true'] {
153
+ cursor: pointer;
154
+ }
135
155
  }
136
156
  .summary-line {
137
157
  display: flex;
138
158
  flex-direction: row;
139
159
  justify-content: space-between;
140
160
  align-items: start;
161
+ white-space: nowrap;
162
+ gap: var(--modeGraph-token-summary-gap, var(--m-spacing-sm, 4px));
163
+ max-width: 100%;
141
164
  }
142
165
  .sub-line {
143
166
  color: var(
@@ -148,6 +171,17 @@ class ModeGraphToken extends LitElement {
148
171
  --modeGraph-token-sub-line-font-size,
149
172
  var(--m-text-ambient-size, 12px)
150
173
  );
174
+ white-space: nowrap;
175
+ overflow: hidden;
176
+ text-overflow: ellipsis;
177
+ min-width: 0;
178
+ max-width: 100%;
179
+
180
+ & > span {
181
+ white-space: nowrap;
182
+ overflow: hidden;
183
+ text-overflow: ellipsis;
184
+ }
151
185
  }
152
186
 
153
187
  .name {
@@ -162,6 +196,10 @@ class ModeGraphToken extends LitElement {
162
196
  flex-direction: row;
163
197
  align-items: center;
164
198
  gap: var(--modeGraph-token-value-gap, var(--m-spacing-sm, 4px));
199
+ white-space: nowrap;
200
+ overflow: hidden;
201
+ text-overflow: ellipsis;
202
+ max-width: 50%;
165
203
  }
166
204
 
167
205
  .computed,
@@ -170,9 +208,15 @@ class ModeGraphToken extends LitElement {
170
208
  --modeGraph-token-computed-color,
171
209
  var(--m-surface-ambient-fg, black)
172
210
  );
211
+ white-space: nowrap;
212
+ overflow: hidden;
213
+ text-overflow: ellipsis;
173
214
  }
174
215
  .base-computed {
175
216
  opacity: 0.6;
217
+ display: inline-flex;
218
+ flex-direction: row;
219
+ align-items: center;
176
220
  &::after {
177
221
  content: '→';
178
222
  margin-inline: 4px;
@@ -222,34 +266,12 @@ class ModeGraphToken extends LitElement {
222
266
  );
223
267
  font-size: var(
224
268
  --modeGraph-token-dependent-font-size,
225
- var(--m-primitive-typography-size, 14px)
269
+ var(--m-text-secondary-size, 14px)
226
270
  );
227
271
  display: flex;
228
272
  flex-direction: column;
229
273
  }
230
- .dependent-summary {
231
- display: flex;
232
- flex-direction: row;
233
- justify-content: space-between;
234
- flex-wrap: wrap;
235
- }
236
- .dependent-definition {
237
- width: 100%;
238
- overflow-x: auto;
239
- text-align: left;
240
- color: var(
241
- --modeGraph-token-dependent-definition-color,
242
- var(--m-color-neutral-heavy, darkgray)
243
- );
244
- font-size: var(
245
- --modeGraph-token-dependent-definition-font-size,
246
- var(--m-text-ambient-size, 12px)
247
- );
248
- font-family: var(
249
- --modeGraph-token-dependent-definition-font-family,
250
- var(--m-primitive-typography-font-mono, monospace)
251
- );
252
- }
274
+
253
275
  .dependent-reference {
254
276
  color: var(
255
277
  --modeGraph-token-dependent-reference-color,
@@ -262,6 +284,12 @@ class ModeGraphToken extends LitElement {
262
284
  }
263
285
  `;
264
286
  }
287
+ // need to manually subscribe to trigger updates
288
+ // when windows size changes vw units, etc
289
+ connectedCallback() {
290
+ super.connectedCallback();
291
+ subscribeToEnvChanges(() => this.requestUpdate());
292
+ }
265
293
  render() {
266
294
  const baseGraph = memoizedTokenGraph('base', this.preset);
267
295
  const graph = memoizedTokenGraph(this.mode, this.preset);
@@ -271,7 +299,7 @@ class ModeGraphToken extends LitElement {
271
299
  Token "${this.name}" not found in mode "${this.mode}".
272
300
  </div>`;
273
301
  }
274
- const definitionRaw = isCalcEquation(tokenNode.raw) ? printEquation(tokenNode.raw)
302
+ const definitionRaw = isCss(tokenNode.raw) ? printCss(tokenNode.raw)
275
303
  : isToken(tokenNode.raw) ? tokenNode.raw.name
276
304
  : tokenNode.raw.toString();
277
305
  const changed = baseGraph.nodes[this.name]?.computed !== tokenNode.computed;
@@ -284,23 +312,42 @@ class ModeGraphToken extends LitElement {
284
312
  definitionInterleaved.push(html `<span class="dependent-reference">${this.dependency}</span>`);
285
313
  }
286
314
  }
315
+ const baseComputed = changed ? baseGraph.nodes[this.name]?.computed : null;
316
+ const isColor = tokenNode.token.purpose === 'color' ||
317
+ tokenNode.token.purpose === 'background' ||
318
+ tokenNode.token.purpose === 'shadow-color';
287
319
  return html `
288
- <details>
289
- <summary>
320
+ <details
321
+ .?open=${this.expanded}
322
+ data-has-dependents=${tokenNode.dependents.length > 0}
323
+ >
324
+ <summary data-has-dependents=${tokenNode.dependents.length > 0}>
290
325
  <div class="summary-line">
291
326
  <span class="name">${this.name}</span>
292
327
  <span class="value">
293
- ${changed ?
294
- html `<span class="base-computed"
295
- >${baseGraph.nodes[this.name]?.computed ?? 'n/a'}</span
328
+ ${baseComputed ?
329
+ html `<span class="base-computed" title="${baseComputed}"
330
+ >${isColor ?
331
+ html `<arbor-color-swatch
332
+ .value="${baseComputed}"
333
+ ></arbor-color-swatch>`
334
+ : baseComputed}</span
296
335
  >`
297
336
  : ''}
298
- <span class="computed">${tokenNode.computed}</span>
337
+ <span class="computed" title="${tokenNode.computed}"
338
+ >${isColor ?
339
+ html `<arbor-color-swatch
340
+ .value="${tokenNode.computed}"
341
+ ></arbor-color-swatch>`
342
+ : tokenNode.computed}</span
343
+ >
299
344
  </span>
300
345
  </div>
301
346
  ${this.depth > 0 ?
302
347
  html `<div class="summary-line sub-line">
303
- <span class="definition"> ${definitionInterleaved} </span>
348
+ <span class="definition" title="${definitionRaw}">
349
+ ${definitionInterleaved}
350
+ </span>
304
351
  </div>`
305
352
  : ''}
306
353
  ${tokenNode.dependents.length > 0 ?
@@ -318,13 +365,13 @@ class ModeGraphToken extends LitElement {
318
365
  : ''}
319
366
  </summary>
320
367
  <ul class="dependents">
321
- ${tokenNode.dependents.map((dep) => {
368
+ ${tokenNode.dependents.sort(categoryDepthSort).map((dep) => {
322
369
  return html `<li class="dependent">
323
370
  <arbor-mode-graph-token
324
- mode=${this.mode}
325
- name=${dep}
326
- dependency=${this.name}
327
- depth=${this.depth + 1}
371
+ .mode=${this.mode}
372
+ .name=${dep}
373
+ .dependency=${this.name}
374
+ .depth=${this.depth + 1}
328
375
  ></arbor-mode-graph-token>
329
376
  </li> `;
330
377
  })}
@@ -1 +1 @@
1
- {"version":3,"file":"ModeGraph.js","sourceRoot":"","sources":["../../../src/runtime/components/ModeGraph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModeGraph.js","sourceRoot":"","sources":["../../../src/runtime/components/ModeGraph.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Outputs.d.ts","sourceRoot":"","sources":["../../../src/runtime/components/Outputs.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,UAAU,EAAE,MAAM,aAAa,CAAC;AAI/C,qBAAa,YAAa,SAAQ,UAAU;IAC3C,MAAM,sLAAe;IACrB,MAAM;CAwCN;AAED,MAAM,CAAC,OAAO,UAAU,QAAQ,SAE/B"}
1
+ {"version":3,"file":"Outputs.d.ts","sourceRoot":"","sources":["../../../src/runtime/components/Outputs.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,UAAU,EAAE,MAAM,aAAa,CAAC;AAI/C,qBAAa,YAAa,SAAQ,UAAU;IAC3C,MAAM,sLAAe;IACrB,MAAM;CAyCN;AAED,MAAM,CAAC,OAAO,UAAU,QAAQ,SAE/B"}
@@ -2,7 +2,7 @@ import { isToken } from '@arbor-css/tokens';
2
2
  import { convertStructure } from '@arbor-css/util';
3
3
  import { html, LitElement } from 'lit-element';
4
4
  import { generateStylesheet } from '../../stylesheet/generateStylesheet.js';
5
- import { getPreset } from '../registration.js';
5
+ import { getContext, getPreset } from '../registration.js';
6
6
  export class ArborOutputs extends LitElement {
7
7
  constructor() {
8
8
  super(...arguments);
@@ -26,6 +26,7 @@ ${JSON.stringify(convertStructure(this.preset.$.mode, isToken, (token) => token.
26
26
  <summary>Generated CSS</summary>
27
27
  <pre>
28
28
  ${generateStylesheet(this.preset, {
29
+ ...getContext(),
29
30
  skipBaking: false,
30
31
  })}</pre
31
32
  >
@@ -1 +1 @@
1
- {"version":3,"file":"Outputs.js","sourceRoot":"","sources":["../../../src/runtime/components/Outputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,OAAO,YAAa,SAAQ,UAAU;IAA5C;;QACC,WAAM,GAAG,SAAS,EAAE,CAAC;IAyCtB,CAAC;IAxCA,MAAM;QACL,OAAO,IAAI,CAAA;;;;EAIX,IAAI,CAAC,SAAS,CACV,gBAAgB,CACf,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAC5B,OAAO,EACP,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CACrB,EACD,IAAI,EACJ,CAAC,CACD;;;;;;EAMJ,IAAI,CAAC,SAAS,CACV,gBAAgB,CACf,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAClB,OAAO,EACP,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CACrB,EACD,IAAI,EACJ,CAAC,CACD;;;;;;EAMJ,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAE;YAC5B,UAAU,EAAE,KAAK;SACjB,CAAC;;;GAGJ,CAAC;IACH,CAAC;CACD;AAED,MAAM,CAAC,OAAO,UAAU,QAAQ;IAC/B,cAAc,CAAC,MAAM,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"Outputs.js","sourceRoot":"","sources":["../../../src/runtime/components/Outputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE3D,MAAM,OAAO,YAAa,SAAQ,UAAU;IAA5C;;QACC,WAAM,GAAG,SAAS,EAAE,CAAC;IA0CtB,CAAC;IAzCA,MAAM;QACL,OAAO,IAAI,CAAA;;;;EAIX,IAAI,CAAC,SAAS,CACV,gBAAgB,CACf,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAC5B,OAAO,EACP,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CACrB,EACD,IAAI,EACJ,CAAC,CACD;;;;;;EAMJ,IAAI,CAAC,SAAS,CACV,gBAAgB,CACf,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAClB,OAAO,EACP,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CACrB,EACD,IAAI,EACJ,CAAC,CACD;;;;;;EAMJ,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAE;YAC5B,GAAG,UAAU,EAAE;YACf,UAAU,EAAE,KAAK;SACjB,CAAC;;;GAGJ,CAAC;IACH,CAAC;CACD;AAED,MAAM,CAAC,OAAO,UAAU,QAAQ;IAC/B,cAAc,CAAC,MAAM,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;AACtD,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { isToken } from '@arbor-css/tokens';
2
2
  import { css, html, LitElement } from 'lit-element';
3
3
  import { resolveComputedTokenValue } from '../../util/resolveComputedTokenValue.js';
4
- import { getPreset } from '../registration.js';
4
+ import { getContext, getPreset } from '../registration.js';
5
5
  class SpacingScale extends LitElement {
6
6
  constructor() {
7
7
  super(...arguments);
@@ -36,7 +36,7 @@ class SpacingScale extends LitElement {
36
36
  .filter(isToken)
37
37
  .map((token) => ({
38
38
  name: token.name,
39
- value: resolveComputedTokenValue(this.preset, token.name),
39
+ value: resolveComputedTokenValue(this.preset, token.name, getContext()),
40
40
  }));
41
41
  return html `
42
42
  ${steps.map(({ name, value }) => html `
@@ -1 +1 @@
1
- {"version":3,"file":"SpacingScale.js","sourceRoot":"","sources":["../../../src/runtime/components/SpacingScale.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,YAAa,SAAQ,UAAU;IAArC;;QA0BC,WAAM,GAAG,SAAS,EAAE,CAAC;IAqBtB,CAAC;IA9CA,MAAM,KAAK,MAAM;QAChB,OAAO,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;GAqBT,CAAC;IACH,CAAC;IAID,MAAM;QACL,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;aACrD,MAAM,CAAC,OAAO,CAAC;aACf,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC;YACrB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,yBAAyB,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC;SACzD,CAAC,CAAC,CAAC;QAEL,OAAO,IAAI,CAAA;KACR,KAAK,CAAC,GAAG,CACV,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,CAAA;;aAEhB,IAAI,MAAM,KAAK;wCACY,KAAK;;KAExC,CACD;GACD,CAAC;IACH,CAAC;CACD;AAED,MAAM,CAAC,OAAO,UAAU,QAAQ;IAC/B,cAAc,CAAC,MAAM,CAAC,qBAAqB,EAAE,YAAY,CAAC,CAAC;AAC5D,CAAC"}
1
+ {"version":3,"file":"SpacingScale.js","sourceRoot":"","sources":["../../../src/runtime/components/SpacingScale.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE3D,MAAM,YAAa,SAAQ,UAAU;IAArC;;QA0BC,WAAM,GAAG,SAAS,EAAE,CAAC;IAqBtB,CAAC;IA9CA,MAAM,KAAK,MAAM;QAChB,OAAO,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;GAqBT,CAAC;IACH,CAAC;IAID,MAAM;QACL,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;aACrD,MAAM,CAAC,OAAO,CAAC;aACf,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC;YACrB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,yBAAyB,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC;SACvE,CAAC,CAAC,CAAC;QAEL,OAAO,IAAI,CAAA;KACR,KAAK,CAAC,GAAG,CACV,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,CAAA;;aAEhB,IAAI,MAAM,KAAK;wCACY,KAAK;;KAExC,CACD;GACD,CAAC;IACH,CAAC;CACD;AAED,MAAM,CAAC,OAAO,UAAU,QAAQ;IAC/B,cAAc,CAAC,MAAM,CAAC,qBAAqB,EAAE,YAAY,CAAC,CAAC;AAC5D,CAAC"}
@@ -0,0 +1,2 @@
1
+ export default function register(): void;
2
+ //# sourceMappingURL=SystemDemo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SystemDemo.d.ts","sourceRoot":"","sources":["../../../src/runtime/components/SystemDemo.ts"],"names":[],"mappings":"AA+BA,MAAM,CAAC,OAAO,UAAU,QAAQ,SAE/B"}
@@ -0,0 +1,32 @@
1
+ import { css, html, LitElement } from 'lit-element';
2
+ class SystemDemo extends LitElement {
3
+ static get styles() {
4
+ return css `
5
+ :host {
6
+ display: grid;
7
+ grid-template-columns: repeat(auto-fit, minmax(600px, 1fr));
8
+ gap: var(--m-spacing-lg);
9
+ box-sizing: border-box;
10
+ width: 100%;
11
+ }
12
+ `;
13
+ }
14
+ render() {
15
+ return html `
16
+ <div>
17
+ <arbor-intent-demos></arbor-intent-demos>
18
+ <hr />
19
+ <arbor-spacing-scale></arbor-spacing-scale>
20
+ <hr />
21
+ <arbor-mixins-list></arbor-mixins-list>
22
+ <arbor-functions-list></arbor-functions-list>
23
+ </div>
24
+ <arbor-mode-graph mode="base"></arbor-mode-graph>
25
+ <arbor-outputs></arbor-outputs>
26
+ `;
27
+ }
28
+ }
29
+ export default function register() {
30
+ customElements.define('arbor-system-demo', SystemDemo);
31
+ }
32
+ //# sourceMappingURL=SystemDemo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SystemDemo.js","sourceRoot":"","sources":["../../../src/runtime/components/SystemDemo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,UAAW,SAAQ,UAAU;IAClC,MAAM,KAAK,MAAM;QAChB,OAAO,GAAG,CAAA;;;;;;;;GAQT,CAAC;IACH,CAAC;IAED,MAAM;QACL,OAAO,IAAI,CAAA;;;;;;;;;;;GAWV,CAAC;IACH,CAAC;CACD;AAED,MAAM,CAAC,OAAO,UAAU,QAAQ;IAC/B,cAAc,CAAC,MAAM,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;AACxD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/components/index.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,OAAO,UAAU,QAAQ,SAQ/B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/components/index.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,OAAO,UAAU,QAAQ,SAU/B"}
@@ -1,9 +1,11 @@
1
+ import registerColorSwatch from './ColorSwatch.js';
1
2
  import registerFunctionsList from './FunctionsList.js';
2
3
  import registerIntentDemos from './IntentDemos.js';
3
4
  import registerMixinsList from './MixinsList.js';
4
5
  import registerModeGraph from './ModeGraph.js';
5
6
  import registerOutputs from './Outputs.js';
6
7
  import registerSpacingScale from './SpacingScale.js';
8
+ import registerSystemDemo from './SystemDemo.js';
7
9
  export default function register() {
8
10
  registerModeGraph();
9
11
  registerOutputs();
@@ -11,6 +13,8 @@ export default function register() {
11
13
  registerMixinsList();
12
14
  registerIntentDemos();
13
15
  registerSpacingScale();
16
+ registerColorSwatch();
17
+ registerSystemDemo();
14
18
  console.debug('Arbor Runtime components registered');
15
19
  }
16
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,MAAM,oBAAoB,CAAC;AACvD,OAAO,mBAAmB,MAAM,kBAAkB,CAAC;AACnD,OAAO,kBAAkB,MAAM,iBAAiB,CAAC;AACjD,OAAO,iBAAiB,MAAM,gBAAgB,CAAC;AAC/C,OAAO,eAAe,MAAM,cAAc,CAAC;AAC3C,OAAO,oBAAoB,MAAM,mBAAmB,CAAC;AAErD,MAAM,CAAC,OAAO,UAAU,QAAQ;IAC/B,iBAAiB,EAAE,CAAC;IACpB,eAAe,EAAE,CAAC;IAClB,qBAAqB,EAAE,CAAC;IACxB,kBAAkB,EAAE,CAAC;IACrB,mBAAmB,EAAE,CAAC;IACtB,oBAAoB,EAAE,CAAC;IACvB,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,kBAAkB,CAAC;AACnD,OAAO,qBAAqB,MAAM,oBAAoB,CAAC;AACvD,OAAO,mBAAmB,MAAM,kBAAkB,CAAC;AACnD,OAAO,kBAAkB,MAAM,iBAAiB,CAAC;AACjD,OAAO,iBAAiB,MAAM,gBAAgB,CAAC;AAC/C,OAAO,eAAe,MAAM,cAAc,CAAC;AAC3C,OAAO,oBAAoB,MAAM,mBAAmB,CAAC;AACrD,OAAO,kBAAkB,MAAM,iBAAiB,CAAC;AAEjD,MAAM,CAAC,OAAO,UAAU,QAAQ;IAC/B,iBAAiB,EAAE,CAAC;IACpB,eAAe,EAAE,CAAC;IAClB,qBAAqB,EAAE,CAAC;IACxB,kBAAkB,EAAE,CAAC;IACrB,mBAAmB,EAAE,CAAC;IACtB,oBAAoB,EAAE,CAAC;IACvB,mBAAmB,EAAE,CAAC;IACtB,kBAAkB,EAAE,CAAC;IACrB,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;AACtD,CAAC"}
@@ -1,6 +1,10 @@
1
+ import { CssEnvValues, CssResolutionContext } from '@arbor-css/css-eval';
1
2
  import { ArborPreset } from '@arbor-css/preset/config';
2
3
  export declare const ready: Promise<void>;
3
4
  export declare function getPreset(): ArborPreset;
5
+ export declare function getEnvValues(): CssEnvValues;
6
+ export declare function getContext(): CssResolutionContext;
7
+ export declare function subscribeToEnvChanges(callback: () => void): () => void;
4
8
  export declare function getStyleSheet(): CSSStyleSheet;
5
- export declare function connect(arbor: ArborPreset<any, any>): void;
9
+ export declare function connect(arbor: ArborPreset<any, any>): Promise<void>;
6
10
  //# sourceMappingURL=registration.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../src/runtime/registration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAOvD,eAAO,MAAM,KAAK,eAA8C,CAAC;AAEjE,wBAAgB,SAAS,IAAI,WAAW,CAOvC;AAED,wBAAgB,aAAa,IAAI,aAAa,CAO7C;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,QASnD"}
1
+ {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../src/runtime/registration.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,YAAY,EACZ,oBAAoB,EAEpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAOvD,eAAO,MAAM,KAAK,eAA8C,CAAC;AAGjE,wBAAgB,SAAS,IAAI,WAAW,CAOvC;AAED,wBAAgB,YAAY,IAAI,YAAY,CAW3C;AAED,wBAAgB,UAAU,IAAI,oBAAoB,CAUjD;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,IAAI,cAOzD;AAED,wBAAgB,aAAa,IAAI,aAAa,CAO7C;AAED,wBAAsB,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,iBAUzD"}
@@ -1,23 +1,54 @@
1
+ import { loadSimplifier } from '@arbor-css/css-eval/browser';
1
2
  import { generateStylesheet } from '../stylesheet/generateStylesheet.js';
2
3
  import register from './components/index.js';
3
4
  let preset = undefined;
4
5
  let styleSheet = undefined;
5
6
  let resolve = () => { };
6
7
  export const ready = new Promise((res) => (resolve = res));
8
+ let simplifier;
7
9
  export function getPreset() {
8
10
  if (!preset) {
9
11
  throw new Error('Arbor configuration has not been set. Please call connect() first.');
10
12
  }
11
13
  return preset;
12
14
  }
15
+ export function getEnvValues() {
16
+ const vw = window.visualViewport?.width ?? window.innerWidth;
17
+ const vh = window.visualViewport?.height ?? window.innerHeight;
18
+ const rootFontSize = getComputedStyle(document.documentElement).fontSize;
19
+ const rem = rootFontSize.includes('px') ? parseFloat(rootFontSize) : undefined;
20
+ return {
21
+ deviceWidthPx: vw,
22
+ deviceHeightPx: vh,
23
+ remPx: rem,
24
+ };
25
+ }
26
+ export function getContext() {
27
+ if (!simplifier) {
28
+ throw new Error('Arbor CSS simplifier has not been initialized. Please call connect() first.');
29
+ }
30
+ return {
31
+ simplifier,
32
+ envValues: getEnvValues(),
33
+ };
34
+ }
35
+ export function subscribeToEnvChanges(callback) {
36
+ window.addEventListener('resize', callback);
37
+ window.visualViewport?.addEventListener('resize', callback);
38
+ return () => {
39
+ window.removeEventListener('resize', callback);
40
+ window.visualViewport?.removeEventListener('resize', callback);
41
+ };
42
+ }
13
43
  export function getStyleSheet() {
14
44
  if (!styleSheet) {
15
45
  throw new Error('Arbor stylesheet has not been generated. Please call connect() first.');
16
46
  }
17
47
  return styleSheet;
18
48
  }
19
- export function connect(arbor) {
49
+ export async function connect(arbor) {
20
50
  preset = arbor;
51
+ simplifier = await loadSimplifier({ passes: 2 });
21
52
  // by turning off layers, we make the generated CSS take precedence over any existing pregenerated stylesheet.
22
53
  const styles = generateStylesheet(preset, { layer: false });
23
54
  styleSheet = new CSSStyleSheet();
@@ -1 +1 @@
1
- {"version":3,"file":"registration.js","sourceRoot":"","sources":["../../src/runtime/registration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAE7C,IAAI,MAAM,GAAsC,SAAS,CAAC;AAC1D,IAAI,UAAU,GAA8B,SAAS,CAAC;AACtD,IAAI,OAAO,GAAe,GAAG,EAAE,GAAE,CAAC,CAAC;AACnC,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,OAAO,CAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC;AAEjE,MAAM,UAAU,SAAS;IACxB,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACd,oEAAoE,CACpE,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,UAAU,aAAa;IAC5B,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACd,uEAAuE,CACvE,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAA4B;IACnD,MAAM,GAAG,KAAK,CAAC;IACf,8GAA8G;IAC9G,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,UAAU,GAAG,IAAI,aAAa,EAAE,CAAC;IACjC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B,QAAQ,CAAC,kBAAkB,GAAG,CAAC,GAAG,QAAQ,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;IAC3E,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"registration.js","sourceRoot":"","sources":["../../src/runtime/registration.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAE7C,IAAI,MAAM,GAAsC,SAAS,CAAC;AAC1D,IAAI,UAAU,GAA8B,SAAS,CAAC;AACtD,IAAI,OAAO,GAAe,GAAG,EAAE,GAAE,CAAC,CAAC;AACnC,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,OAAO,CAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC;AACjE,IAAI,UAAyB,CAAC;AAE9B,MAAM,UAAU,SAAS;IACxB,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACd,oEAAoE,CACpE,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,UAAU,YAAY;IAC3B,MAAM,EAAE,GAAG,MAAM,CAAC,cAAc,EAAE,KAAK,IAAI,MAAM,CAAC,UAAU,CAAC;IAC7D,MAAM,EAAE,GAAG,MAAM,CAAC,cAAc,EAAE,MAAM,IAAI,MAAM,CAAC,WAAW,CAAC;IAC/D,MAAM,YAAY,GAAG,gBAAgB,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC;IACzE,MAAM,GAAG,GACR,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpE,OAAO;QACN,aAAa,EAAE,EAAE;QACjB,cAAc,EAAE,EAAE;QAClB,KAAK,EAAE,GAAG;KACV,CAAC;AACH,CAAC;AAED,MAAM,UAAU,UAAU;IACzB,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACd,6EAA6E,CAC7E,CAAC;IACH,CAAC;IACD,OAAO;QACN,UAAU;QACV,SAAS,EAAE,YAAY,EAAE;KACzB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAAoB;IACzD,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC5C,MAAM,CAAC,cAAc,EAAE,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC5D,OAAO,GAAG,EAAE;QACX,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC/C,MAAM,CAAC,cAAc,EAAE,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAChE,CAAC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,aAAa;IAC5B,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACd,uEAAuE,CACvE,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,KAA4B;IACzD,MAAM,GAAG,KAAK,CAAC;IACf,UAAU,GAAG,MAAM,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IACjD,8GAA8G;IAC9G,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,UAAU,GAAG,IAAI,aAAa,EAAE,CAAC;IACjC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B,QAAQ,CAAC,kBAAkB,GAAG,CAAC,GAAG,QAAQ,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;IAC3E,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;AACZ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tokenGroups.d.ts","sourceRoot":"","sources":["../../src/runtime/tokenGroups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAqB,MAAM,mBAAmB,CAAC;AAE1E,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW;;;;;;;;;;;;sCAoD8tE,CAAC;sBAAgD,CAAC;;;;;;;;;;;;;0CAAid,CAAC;0BAAoD,CAAC;;;;;;;;;;;;;;;;0CAAojB,CAAC;0BAAoD,CAAC;;;;;;;eATp6G,KAAK;iBACH,KAAK;qBACD,KAAK;;EAMtB"}
1
+ {"version":3,"file":"tokenGroups.d.ts","sourceRoot":"","sources":["../../src/runtime/tokenGroups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAqB,MAAM,mBAAmB,CAAC;AAE1E,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW;;;;;;;;;;;;sCAoD6uE,CAAC;sBAAgD,CAAC;;;;;;;;;;;;;0CAAid,CAAC;0BAAoD,CAAC;;;;;;;;;;;;;;;;0CAAojB,CAAC;0BAAoD,CAAC;;;;;;;eATn7G,KAAK;iBACH,KAAK;qBACD,KAAK;;EAMtB"}
@@ -1,6 +1,8 @@
1
+ import { CssSimplifier } from '@arbor-css/css-eval';
1
2
  import { AnyArborPreset } from '@arbor-css/preset/config';
2
- export declare function generateStylesheet(config: AnyArborPreset, { layer: cascadeLayerName, skipBaking, }?: {
3
+ export declare function generateStylesheet(config: AnyArborPreset, { layer: cascadeLayerName, skipBaking, simplifier, }?: {
3
4
  layer?: string | false;
4
5
  skipBaking?: boolean;
6
+ simplifier?: CssSimplifier;
5
7
  }): string;
6
8
  //# sourceMappingURL=generateStylesheet.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generateStylesheet.d.ts","sourceRoot":"","sources":["../../src/stylesheet/generateStylesheet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAgB,MAAM,0BAA0B,CAAC;AAIxE,wBAAgB,kBAAkB,CACjC,MAAM,EAAE,cAAc,EACtB,EACC,KAAK,EAAE,gBAA0B,EACjC,UAAU,GACV,GAAE;IACF,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;CAChB,GACJ,MAAM,CAyBR"}
1
+ {"version":3,"file":"generateStylesheet.d.ts","sourceRoot":"","sources":["../../src/stylesheet/generateStylesheet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAgB,MAAM,0BAA0B,CAAC;AAIxE,wBAAgB,kBAAkB,CACjC,MAAM,EAAE,cAAc,EACtB,EACC,KAAK,EAAE,gBAA0B,EACjC,UAAU,EACV,UAAU,GACV,GAAE;IACF,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,aAAa,CAAC;CACtB,GACJ,MAAM,CAyBR"}
@@ -1,14 +1,14 @@
1
1
  import { getInternals } from '@arbor-css/preset/config';
2
2
  import { flattenTokenSchema } from '@arbor-css/tokens';
3
3
  import { modeToCss } from './modeToCss.js';
4
- export function generateStylesheet(config, { layer: cascadeLayerName = 'arbor', skipBaking, } = {}) {
4
+ export function generateStylesheet(config, { layer: cascadeLayerName = 'arbor', skipBaking, simplifier, } = {}) {
5
5
  const { modes } = getInternals(config);
6
6
  const allModeProps = flattenTokenSchema(config.$.mode);
7
7
  return `/* Auto-generated CSS - do not edit directly */
8
8
  ${cascadeLayerName ? `@layer ${cascadeLayerName} {` : ''}
9
9
  ${[config.baseMode, ...Object.values(modes)]
10
10
  .map((modeValue) => {
11
- return modeToCss(modeValue, config, { skipBaking });
11
+ return modeToCss(modeValue, config, { simplifier, skipBaking });
12
12
  })
13
13
  .join('\n\n')}
14
14
  /* Function definitions */
@@ -1 +1 @@
1
- {"version":3,"file":"generateStylesheet.js","sourceRoot":"","sources":["../../src/stylesheet/generateStylesheet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,UAAU,kBAAkB,CACjC,MAAsB,EACtB,EACC,KAAK,EAAE,gBAAgB,GAAG,OAAO,EACjC,UAAU,MAIP,EAAE;IAEN,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAEvD,OAAO;GACL,gBAAgB,CAAC,CAAC,CAAC,UAAU,gBAAgB,IAAI,CAAC,CAAC,CAAC,EAAE;EACvD,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SAC1C,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QAClB,OAAO,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;IACrD,CAAC,CAAC;SACD,IAAI,CAAC,MAAM,CAAC;;EAEZ,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;SAC/B,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC;SAC1B,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,MAAM,CAAC;;EAEZ,YAAY;SACZ,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC;SAC9B,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,MAAM,CAAC;EACZ,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;CAC5B;SACE,IAAI,EAAE;SACN,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"generateStylesheet.js","sourceRoot":"","sources":["../../src/stylesheet/generateStylesheet.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,UAAU,kBAAkB,CACjC,MAAsB,EACtB,EACC,KAAK,EAAE,gBAAgB,GAAG,OAAO,EACjC,UAAU,EACV,UAAU,MAKP,EAAE;IAEN,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAEvD,OAAO;GACL,gBAAgB,CAAC,CAAC,CAAC,UAAU,gBAAgB,IAAI,CAAC,CAAC,CAAC,EAAE;EACvD,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SAC1C,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QAClB,OAAO,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;IACjE,CAAC,CAAC;SACD,IAAI,CAAC,MAAM,CAAC;;EAEZ,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;SAC/B,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC;SAC1B,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,MAAM,CAAC;;EAEZ,YAAY;SACZ,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC;SAC9B,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,MAAM,CAAC;EACZ,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;CAC5B;SACE,IAAI,EAAE;SACN,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACzB,CAAC"}
@@ -9,12 +9,12 @@ it("generates a preset's CSS, including globals, primitives, modes, and function
9
9
  },
10
10
  mainColor: 'brand',
11
11
  },
12
- globals: {
13
- roundness: 1,
12
+ shape: {
13
+ roundness: '1',
14
14
  },
15
15
  });
16
- const css = generateStylesheet(preset);
17
- expect(css).toContain('--m-global-roundness: 1');
16
+ const css = generateStylesheet(preset, {});
17
+ expect(css).toContain('--m-global-shape-roundness: 1');
18
18
  expect(css).toContain('--m-primitive-color-brand-mid: ');
19
19
  expect(css).toContain('--m-color-main: ');
20
20
  expect(css).toContain('@function --fn-color-lighter');
@@ -1 +1 @@
1
- {"version":3,"file":"generateStylesheet.test.js","sourceRoot":"","sources":["../../src/stylesheet/generateStylesheet.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,EAAE,CAAC,+EAA+E,EAAE,GAAG,EAAE;IACxF,MAAM,MAAM,GAAG,WAAW,CAAC;QAC1B,KAAK,EAAE;YACN,MAAM,EAAE;gBACP,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;aAClB;YACD,SAAS,EAAE,OAAO;SAClB;QACD,OAAO,EAAE;YACR,SAAS,EAAE,CAAC;SACZ;KACD,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAEvC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;IACjD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,iCAAiC,CAAC,CAAC;IACzD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAC1C,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAC;AACvD,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"generateStylesheet.test.js","sourceRoot":"","sources":["../../src/stylesheet/generateStylesheet.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,EAAE,CAAC,+EAA+E,EAAE,GAAG,EAAE;IACxF,MAAM,MAAM,GAAG,WAAW,CAAC;QAC1B,KAAK,EAAE;YACN,MAAM,EAAE;gBACP,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;aAClB;YACD,SAAS,EAAE,OAAO;SAClB;QACD,KAAK,EAAE;YACN,SAAS,EAAE,GAAG;SACd;KACD,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAE3C,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,+BAA+B,CAAC,CAAC;IACvD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,iCAAiC,CAAC,CAAC;IACzD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAC1C,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAC;AACvD,CAAC,CAAC,CAAC"}
@@ -1,7 +1,6 @@
1
+ import { CssResolutionContext } from '@arbor-css/css-eval';
1
2
  import { ModeInstance } from '@arbor-css/modes';
2
3
  import { ArborPreset } from '@arbor-css/preset';
3
4
  import { SimpleTokenSchema } from '@arbor-css/tokens';
4
- export declare function modeToCss<TModeShape extends SimpleTokenSchema>(mode: ModeInstance<TModeShape>, preset: ArborPreset<TModeShape>, { skipBaking }?: {
5
- skipBaking?: boolean;
6
- }): string;
5
+ export declare function modeToCss<TModeShape extends SimpleTokenSchema>(mode: ModeInstance<TModeShape>, preset: ArborPreset<TModeShape>, ctx: CssResolutionContext): string;
7
6
  //# sourceMappingURL=modeToCss.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"modeToCss.d.ts","sourceRoot":"","sources":["../../src/stylesheet/modeToCss.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAMtD,wBAAgB,SAAS,CAAC,UAAU,SAAS,iBAAiB,EAC7D,IAAI,EAAE,YAAY,CAAC,UAAU,CAAC,EAC9B,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,EAC/B,EAAE,UAAU,EAAE,GAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO,GAC3C,MAAM,CAgCR"}
1
+ {"version":3,"file":"modeToCss.d.ts","sourceRoot":"","sources":["../../src/stylesheet/modeToCss.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAoB,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAMtD,wBAAgB,SAAS,CAAC,UAAU,SAAS,iBAAiB,EAC7D,IAAI,EAAE,YAAY,CAAC,UAAU,CAAC,EAC9B,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,EAC/B,GAAG,EAAE,oBAAoB,GACvB,MAAM,CA8BR"}
@@ -1,10 +1,8 @@
1
1
  import { getModeInternals } from '@arbor-css/modes';
2
2
  import { buildModeTokenGraph, walkModeTokenGraph, } from '../util/buildModeTokenGraph.js';
3
- export function modeToCss(mode, preset, { skipBaking } = {}) {
3
+ export function modeToCss(mode, preset, ctx) {
4
4
  const modeInternals = getModeInternals(mode);
5
- const graph = buildModeTokenGraph(mode, preset, {
6
- skipBaking,
7
- });
5
+ const graph = buildModeTokenGraph(mode, preset, ctx);
8
6
  const valuesCss = walkModeTokenGraph(graph).reduce((acc, node) => `${acc}${node.token.name}: ${node.computed};\n`, '');
9
7
  const content = [valuesCss, preset.modeSchema.extraCss]
10
8
  .filter(Boolean)