@arbor-css/core 0.0.91 → 0.0.93

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 (126) hide show
  1. package/dist/getStructuredTokensMap.test.js +1 -1
  2. package/dist/getStructuredTokensMap.test.js.map +1 -1
  3. package/dist/index.d.ts +1 -6
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +1 -6
  6. package/dist/index.js.map +1 -1
  7. package/dist/presets/arborPreset/index.d.ts +6 -0
  8. package/dist/presets/arborPreset/index.d.ts.map +1 -1
  9. package/dist/presets/arborPreset/index.js +6 -0
  10. package/dist/presets/arborPreset/index.js.map +1 -1
  11. package/dist/presets/arborPreset/modeSchema/global.d.ts +39 -0
  12. package/dist/presets/arborPreset/modeSchema/global.d.ts.map +1 -0
  13. package/dist/presets/arborPreset/modeSchema/global.js +40 -0
  14. package/dist/presets/arborPreset/modeSchema/global.js.map +1 -0
  15. package/dist/presets/arborPreset/modeSchema/modeSchema.d.ts +33 -1
  16. package/dist/presets/arborPreset/modeSchema/modeSchema.d.ts.map +1 -1
  17. package/dist/presets/arborPreset/modeSchema/modeSchema.js +2 -2
  18. package/dist/presets/arborPreset/modeSchema/modeSchema.js.map +1 -1
  19. package/dist/presets/arborPreset/modeValues/color/color.d.ts +33 -0
  20. package/dist/presets/arborPreset/modeValues/color/color.d.ts.map +1 -0
  21. package/dist/presets/arborPreset/modeValues/color/color.js +24 -0
  22. package/dist/presets/arborPreset/modeValues/color/color.js.map +1 -0
  23. package/dist/presets/arborPreset/modeValues/color/compile.d.ts +34 -0
  24. package/dist/presets/arborPreset/modeValues/color/compile.d.ts.map +1 -0
  25. package/dist/presets/arborPreset/modeValues/color/compile.js +47 -0
  26. package/dist/presets/arborPreset/modeValues/color/compile.js.map +1 -0
  27. package/dist/presets/arborPreset/modeValues/color/compile.test.d.ts +2 -0
  28. package/dist/presets/arborPreset/modeValues/color/compile.test.d.ts.map +1 -0
  29. package/dist/presets/arborPreset/modeValues/color/compile.test.js +192 -0
  30. package/dist/presets/arborPreset/modeValues/color/compile.test.js.map +1 -0
  31. package/dist/presets/arborPreset/modeValues/color/index.d.ts +5 -0
  32. package/dist/presets/arborPreset/modeValues/color/index.d.ts.map +1 -0
  33. package/dist/presets/arborPreset/modeValues/color/index.js +5 -0
  34. package/dist/presets/arborPreset/modeValues/color/index.js.map +1 -0
  35. package/dist/presets/arborPreset/modeValues/color/ranges.d.ts +67 -0
  36. package/dist/presets/arborPreset/modeValues/color/ranges.d.ts.map +1 -0
  37. package/dist/presets/arborPreset/modeValues/color/ranges.js +110 -0
  38. package/dist/presets/arborPreset/modeValues/color/ranges.js.map +1 -0
  39. package/dist/presets/arborPreset/modeValues/color/schemes.d.ts +13 -0
  40. package/dist/presets/arborPreset/modeValues/color/schemes.d.ts.map +1 -0
  41. package/dist/presets/arborPreset/modeValues/color/schemes.js +15 -0
  42. package/dist/presets/arborPreset/modeValues/color/schemes.js.map +1 -0
  43. package/dist/presets/arborPreset/modeValues/intents.d.ts.map +1 -1
  44. package/dist/presets/arborPreset/modeValues/intents.js +14 -14
  45. package/dist/presets/arborPreset/modeValues/intents.js.map +1 -1
  46. package/dist/presets/arborPreset/modeValues/semantics.d.ts +1 -49
  47. package/dist/presets/arborPreset/modeValues/semantics.d.ts.map +1 -1
  48. package/dist/presets/arborPreset/modeValues/semantics.js +13 -13
  49. package/dist/presets/arborPreset/modeValues/semantics.js.map +1 -1
  50. package/dist/presets/arborPreset/modeValues/shadow/index.d.ts +29 -0
  51. package/dist/presets/arborPreset/modeValues/shadow/index.d.ts.map +1 -0
  52. package/dist/presets/arborPreset/modeValues/shadow/index.js +57 -0
  53. package/dist/presets/arborPreset/modeValues/shadow/index.js.map +1 -0
  54. package/dist/presets/arborPreset/modeValues/spacing/index.d.ts +24 -0
  55. package/dist/presets/arborPreset/modeValues/spacing/index.d.ts.map +1 -0
  56. package/dist/presets/arborPreset/modeValues/spacing/index.js +40 -0
  57. package/dist/presets/arborPreset/modeValues/spacing/index.js.map +1 -0
  58. package/dist/presets/arborPreset/modeValues/types.d.ts +3 -3
  59. package/dist/presets/arborPreset/modeValues/types.d.ts.map +1 -1
  60. package/dist/presets/arborPreset/modeValues/typography/index.d.ts +20 -0
  61. package/dist/presets/arborPreset/modeValues/typography/index.d.ts.map +1 -0
  62. package/dist/presets/arborPreset/modeValues/typography/index.js +49 -0
  63. package/dist/presets/arborPreset/modeValues/typography/index.js.map +1 -0
  64. package/dist/presets/arborPreset/preset.d.ts +277 -32
  65. package/dist/presets/arborPreset/preset.d.ts.map +1 -1
  66. package/dist/presets/arborPreset/preset.js +56 -21
  67. package/dist/presets/arborPreset/preset.js.map +1 -1
  68. package/dist/presets/arborPreset/preset.test.js +3 -0
  69. package/dist/presets/arborPreset/preset.test.js.map +1 -1
  70. package/dist/presets/basicPreset/commonFunctions.d.ts +10 -6
  71. package/dist/presets/basicPreset/commonFunctions.d.ts.map +1 -1
  72. package/dist/presets/basicPreset/commonFunctions.js +10 -10
  73. package/dist/presets/basicPreset/commonFunctions.js.map +1 -1
  74. package/dist/presets/basicPreset/functions.test.js +2 -2
  75. package/dist/presets/basicPreset/functions.test.js.map +1 -1
  76. package/dist/presets/basicPreset/mixins.d.ts +218 -26
  77. package/dist/presets/basicPreset/mixins.d.ts.map +1 -1
  78. package/dist/presets/basicPreset/mixins.js +17 -22
  79. package/dist/presets/basicPreset/mixins.js.map +1 -1
  80. package/dist/presets/basicPreset/preset.d.ts +82 -25
  81. package/dist/presets/basicPreset/preset.d.ts.map +1 -1
  82. package/dist/presets/basicPreset/preset.js +53 -9
  83. package/dist/presets/basicPreset/preset.js.map +1 -1
  84. package/dist/runtime/components/SchemeSelector.js +4 -4
  85. package/dist/runtime/components/SchemeSelector.js.map +1 -1
  86. package/dist/runtime/components/TokenValues.js +0 -2
  87. package/dist/runtime/components/TokenValues.js.map +1 -1
  88. package/dist/runtime/components/index.d.ts +0 -1
  89. package/dist/runtime/components/index.d.ts.map +1 -1
  90. package/dist/runtime/components/index.js +0 -1
  91. package/dist/runtime/components/index.js.map +1 -1
  92. package/dist/stylesheet/generateStylesheet.d.ts.map +1 -1
  93. package/dist/stylesheet/generateStylesheet.js +19 -51
  94. package/dist/stylesheet/generateStylesheet.js.map +1 -1
  95. package/dist/stylesheet/generateStylesheet.test.js +3 -1
  96. package/dist/stylesheet/generateStylesheet.test.js.map +1 -1
  97. package/dist/stylesheet/modeToCss.d.ts.map +1 -1
  98. package/dist/stylesheet/modeToCss.js +85 -3
  99. package/dist/stylesheet/modeToCss.js.map +1 -1
  100. package/dist/stylesheet/modeToCss.test.js +33 -7
  101. package/dist/stylesheet/modeToCss.test.js.map +1 -1
  102. package/dist/util/flattenAndApplyTokenValues.d.ts +2 -1
  103. package/dist/util/flattenAndApplyTokenValues.d.ts.map +1 -1
  104. package/dist/util/flattenAndApplyTokenValues.js +13 -3
  105. package/dist/util/flattenAndApplyTokenValues.js.map +1 -1
  106. package/dist/util/resolveComputedTokenValue.js +1 -10
  107. package/dist/util/resolveComputedTokenValue.js.map +1 -1
  108. package/dist/util/resolveComputedTokenValue.test.js +4 -4
  109. package/dist/util/resolveComputedTokenValue.test.js.map +1 -1
  110. package/package.json +8 -12
  111. package/dist/presets/arborPreset/modeSchema/scalars/scalars.d.ts +0 -7
  112. package/dist/presets/arborPreset/modeSchema/scalars/scalars.d.ts.map +0 -1
  113. package/dist/presets/arborPreset/modeSchema/scalars/scalars.js +0 -8
  114. package/dist/presets/arborPreset/modeSchema/scalars/scalars.js.map +0 -1
  115. package/dist/runtime/components/GlobalsEditor.d.ts +0 -2
  116. package/dist/runtime/components/GlobalsEditor.d.ts.map +0 -1
  117. package/dist/runtime/components/GlobalsEditor.js +0 -24
  118. package/dist/runtime/components/GlobalsEditor.js.map +0 -1
  119. package/dist/util/resolveTokenReferences.d.ts +0 -3
  120. package/dist/util/resolveTokenReferences.d.ts.map +0 -1
  121. package/dist/util/resolveTokenReferences.js +0 -49
  122. package/dist/util/resolveTokenReferences.js.map +0 -1
  123. package/dist/util/resolveTokenReferences.test.d.ts +0 -2
  124. package/dist/util/resolveTokenReferences.test.d.ts.map +0 -1
  125. package/dist/util/resolveTokenReferences.test.js +0 -23
  126. package/dist/util/resolveTokenReferences.test.js.map +0 -1
@@ -1,7 +1,86 @@
1
- import { isCalcEquation, printEquation } from '@arbor-css/calc';
1
+ import { computeEquation, isCalcEquation, printComputationResult, printEquation, } from '@arbor-css/calc';
2
2
  import { getModeInternals, isModeValue, } from '@arbor-css/modes';
3
3
  import { isToken, } from '@arbor-css/tokens';
4
4
  import { toFlatKeys } from '@arbor-css/util';
5
+ import { flattenAndApplyTokenValues } from '../util/flattenAndApplyTokenValues.js';
6
+ /**
7
+ * Constructs a proxy which computes the resolved
8
+ * value of any assigned property on demand and caches
9
+ * the result.
10
+ *
11
+ * Mode values can be CSS equations or token references,
12
+ * which require recursive resolution to get a final string
13
+ * value which is required for calculation, so this both
14
+ * resolves those to strings and makes sure we don't
15
+ * recompute the same things over and over.
16
+ */
17
+ function createResolvingPropertyValuesProxy(propertyValues, allowMissing = false) {
18
+ const cache = {};
19
+ const resolvingStack = [];
20
+ const resolvingSet = new Set();
21
+ const propertyValuesProxy = new Proxy({}, {
22
+ get(_, prop) {
23
+ if (typeof prop !== 'string') {
24
+ return undefined;
25
+ }
26
+ if (prop in cache) {
27
+ return cache[prop];
28
+ }
29
+ if (resolvingSet.has(prop)) {
30
+ const cycleStart = resolvingStack.findIndex((name) => name === prop);
31
+ const cycleChain = [...resolvingStack.slice(cycleStart), prop].join(' -> ');
32
+ throw new Error(`Circular dependency detected during property resolution: ${cycleChain}`);
33
+ }
34
+ resolvingStack.push(prop);
35
+ resolvingSet.add(prop);
36
+ const value = propertyValues[prop];
37
+ try {
38
+ if (typeof value === 'string' || typeof value === 'number') {
39
+ cache[prop] = value.toString();
40
+ return cache[prop];
41
+ }
42
+ else if (isToken(value)) {
43
+ // does this token reference another property in our values?
44
+ // if so, follow that thread.
45
+ if (value.name in propertyValues) {
46
+ const referencedValue = propertyValuesProxy[value.name];
47
+ cache[prop] = referencedValue;
48
+ }
49
+ else {
50
+ // otherwise, just resolve to the token's var() reference since we have no more information about it at this point
51
+ cache[prop] = value.var;
52
+ }
53
+ return cache[prop];
54
+ }
55
+ else if (isCalcEquation(value)) {
56
+ // here's where it gets fun
57
+ cache[prop] = printComputationResult(computeEquation(value, {
58
+ // we reference ourselves to continue resolving
59
+ // down the chain.
60
+ propertyValues: propertyValuesProxy,
61
+ }));
62
+ return cache[prop];
63
+ }
64
+ else if (value === undefined) {
65
+ if (!allowMissing) {
66
+ throw new Error(`Missing value for property ${prop} during resolution.`);
67
+ }
68
+ else {
69
+ return undefined;
70
+ }
71
+ }
72
+ else {
73
+ throw new Error(`Invalid value for property ${prop}: ${value}. Must be a string, number, token reference, or calc equation.`);
74
+ }
75
+ }
76
+ finally {
77
+ resolvingSet.delete(prop);
78
+ resolvingStack.pop();
79
+ }
80
+ },
81
+ });
82
+ return propertyValuesProxy;
83
+ }
5
84
  export function modeToCss(mode, preset) {
6
85
  const flatValues = toFlatKeys(mode, isModeValue, {
7
86
  separator: '-',
@@ -9,6 +88,9 @@ export function modeToCss(mode, preset) {
9
88
  const flatTokens = toFlatKeys(preset.$.mode, isToken, {
10
89
  separator: '-',
11
90
  });
91
+ const calcContext = {
92
+ propertyValues: createResolvingPropertyValuesProxy(flattenAndApplyTokenValues(preset.$.mode, mode, { allowMissing: true }), true),
93
+ };
12
94
  const modeInternals = getModeInternals(mode);
13
95
  const cssVars = {};
14
96
  const lowPriorityVars = {};
@@ -23,8 +105,8 @@ export function modeToCss(mode, preset) {
23
105
  cssVars[tokenVar.name] = value.var;
24
106
  }
25
107
  else if (isCalcEquation(value)) {
26
- // TODO: computeEquation instead?
27
- cssVars[tokenVar.name] = printEquation(value);
108
+ // bake the equation to get the simplest value we can know ahead of time
109
+ cssVars[tokenVar.name] = printComputationResult(computeEquation(value, calcContext));
28
110
  }
29
111
  else if (typeof value === 'string' || typeof value === 'number') {
30
112
  cssVars[tokenVar.name] = value.toString();
@@ -1 +1 @@
1
- {"version":3,"file":"modeToCss.js","sourceRoot":"","sources":["../../src/stylesheet/modeToCss.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modeToCss.js","sourceRoot":"","sources":["../../src/stylesheet/modeToCss.ts"],"names":[],"mappings":"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"}
@@ -43,10 +43,10 @@ it('prints a base mode with derived values', () => {
43
43
  const css = modeToCss(preset.baseMode, preset);
44
44
  expect(css).toMatchInlineSnapshot(`
45
45
  ".\\@mode-base, :root, .\\@mode-base, :root {
46
- --_-system-modeName: base;
47
- --m-derived-once: color-mix(in hsl, var(--m-value), black);
48
- --m-derived-twice: color-mix(in hsl, var(--m-derived-once), transparent);
49
- --m-derived-again: color-mix(in hsl, var(--m-value), red);
46
+ --_-meta-modeName: base;
47
+ --m-derived-once: color-mix(in hsl, red, black);
48
+ --m-derived-twice: color-mix(in hsl, color-mix(in hsl, red, black), transparent);
49
+ --m-derived-again: color-mix(in hsl, red, red);
50
50
  --m-derived-direct: var(--m-value);
51
51
  --m-value: red;
52
52
  --m-ex: blue;
@@ -58,7 +58,7 @@ it('prints a partial mode with derived dependencies it doesnt declare', () => {
58
58
  const css = modeToCss(partialMode, preset);
59
59
  expect(css).toMatchInlineSnapshot(`
60
60
  ".\\@mode-partial {
61
- --_-system-modeName: partial;
61
+ --_-meta-modeName: partial;
62
62
  --m-derived-once: color-mix(in hsl, var(--m-value), black);
63
63
  --m-derived-twice: color-mix(in hsl, var(--m-derived-once), transparent);
64
64
  --m-derived-again: color-mix(in hsl, var(--m-value), red);
@@ -71,7 +71,7 @@ it('prints a partial mode which overrides derived dependencies from base and doe
71
71
  const css = modeToCss(underivedMode, preset);
72
72
  expect(css).toMatchInlineSnapshot(`
73
73
  ".\\@mode-underived {
74
- --_-system-modeName: underived;
74
+ --_-meta-modeName: underived;
75
75
  --m-derived-twice: color-mix(in hsl, var(--m-derived-once), transparent);
76
76
  --m-derived-once: green;
77
77
  } "
@@ -121,6 +121,32 @@ it('throws with full token chain for circular derived dependencies', () => {
121
121
  },
122
122
  }),
123
123
  });
124
- expect(() => modeToCss(circular.baseMode, circular)).toThrow(/Circular dependency detected .*--m-derived-a.*->.*--m-derived-b.*->.*--m-derived-a/);
124
+ expect(() => modeToCss(circular.baseMode, circular)).toThrow(/Circular dependency detected/);
125
+ });
126
+ it('throws for cycles during property value resolution', () => {
127
+ const resolverCycle = definePreset({
128
+ name: 'resolverCyclePreset',
129
+ modeSchema: {
130
+ value: 'color',
131
+ derived: {
132
+ a: 'color',
133
+ b: 'color',
134
+ },
135
+ },
136
+ baseMode: ($) => ({
137
+ value: 'red',
138
+ derived: {
139
+ a: css `color-mix(in hsl, ${$.mode.value}, white)`,
140
+ b: css `color-mix(in hsl, ${$.mode.derived.a}, black)`,
141
+ },
142
+ }),
143
+ });
144
+ const partial = resolverCycle.createMode('resolverCycle', {
145
+ derived: {
146
+ a: css `color-mix(in hsl, ${resolverCycle.$.mode.derived.b}, white)`,
147
+ b: css `color-mix(in hsl, ${resolverCycle.$.mode.derived.a}, black)`,
148
+ },
149
+ });
150
+ expect(() => modeToCss(partial, resolverCycle)).toThrow(/Circular dependency detected/);
125
151
  });
126
152
  //# sourceMappingURL=modeToCss.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"modeToCss.test.js","sourceRoot":"","sources":["../../src/stylesheet/modeToCss.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modeToCss.test.js","sourceRoot":"","sources":["../../src/stylesheet/modeToCss.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { TokenSchema } from '@arbor-css/tokens';
2
- export declare function flattenAndApplyTokenValues(tokens: TokenSchema, values: Record<string, any>, { prefix }?: {
2
+ export declare function flattenAndApplyTokenValues(tokens: TokenSchema, values: Record<string, any>, { prefix, allowMissing }?: {
3
3
  prefix?: string;
4
+ allowMissing?: boolean;
4
5
  }): Record<string, string>;
5
6
  //# sourceMappingURL=flattenAndApplyTokenValues.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"flattenAndApplyTokenValues.d.ts","sourceRoot":"","sources":["../../src/util/flattenAndApplyTokenValues.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEzD,wBAAgB,0BAA0B,CACzC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,EAAE,MAAM,EAAE,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,0BAoCpC"}
1
+ {"version":3,"file":"flattenAndApplyTokenValues.d.ts","sourceRoot":"","sources":["../../src/util/flattenAndApplyTokenValues.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEzD,wBAAgB,0BAA0B,CACzC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,EAAE,MAAM,EAAE,YAAY,EAAE,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAO,0BA4C1E"}
@@ -1,18 +1,28 @@
1
1
  import { isToken } from '@arbor-css/tokens';
2
- export function flattenAndApplyTokenValues(tokens, values, { prefix } = {}) {
2
+ export function flattenAndApplyTokenValues(tokens, values, { prefix, allowMissing } = {}) {
3
3
  const result = {};
4
4
  function walk(tokenNode, valueNode, path = []) {
5
5
  for (const key in tokenNode) {
6
6
  const tokenCurrent = tokenNode[key];
7
7
  if (valueNode[key] === undefined) {
8
- throw new Error(`Missing value for token ${tokenCurrent.name} at path ${[...path, key].join('.')} (values: ${JSON.stringify(valueNode)})`);
8
+ if (!allowMissing) {
9
+ throw new Error(`Missing value for token ${tokenCurrent.name} at path ${[...path, key].join('.')} (values: ${JSON.stringify(valueNode)})`);
10
+ }
11
+ else {
12
+ continue;
13
+ }
9
14
  }
10
15
  const valueCurrent = valueNode[key];
11
16
  const currentPath = [...path, key];
12
17
  if (isToken(tokenCurrent)) {
13
18
  const tokenValue = valueCurrent;
14
19
  if (tokenValue === undefined) {
15
- throw new Error(`Missing value for token ${tokenCurrent.name} at ${currentPath.join('.')} (values: ${JSON.stringify(valueNode)})`);
20
+ if (!allowMissing) {
21
+ throw new Error(`Missing value for token ${tokenCurrent.name} at ${currentPath.join('.')} (values: ${JSON.stringify(valueNode)})`);
22
+ }
23
+ else {
24
+ continue;
25
+ }
16
26
  }
17
27
  if (prefix) {
18
28
  result[tokenCurrent.prefixed(prefix).name] = tokenValue;
@@ -1 +1 @@
1
- {"version":3,"file":"flattenAndApplyTokenValues.js","sourceRoot":"","sources":["../../src/util/flattenAndApplyTokenValues.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAe,MAAM,mBAAmB,CAAC;AAEzD,MAAM,UAAU,0BAA0B,CACzC,MAAmB,EACnB,MAA2B,EAC3B,EAAE,MAAM,KAA0B,EAAE;IAEpC,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,SAAS,IAAI,CACZ,SAA8B,EAC9B,SAA8B,EAC9B,OAAiB,EAAE;QAEnB,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC7B,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;YACpC,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;gBAClC,MAAM,IAAI,KAAK,CACd,2BAA2B,YAAY,CAAC,IAAI,YAAY,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CACzH,CAAC;YACH,CAAC;YACD,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;YACpC,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC;YACnC,IAAI,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC3B,MAAM,UAAU,GAAG,YAAsB,CAAC;gBAC1C,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC9B,MAAM,IAAI,KAAK,CACd,2BAA2B,YAAY,CAAC,IAAI,OAAO,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CACjH,CAAC;gBACH,CAAC;gBACD,IAAI,MAAM,EAAE,CAAC;oBACZ,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC;gBACzD,CAAC;qBAAM,CAAC;oBACP,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC;gBACxC,CAAC;YACF,CAAC;iBAAM,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;gBAC7C,IAAI,CAAC,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;YAC/C,CAAC;QACF,CAAC;IACF,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrB,OAAO,MAAM,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"flattenAndApplyTokenValues.js","sourceRoot":"","sources":["../../src/util/flattenAndApplyTokenValues.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAe,MAAM,mBAAmB,CAAC;AAEzD,MAAM,UAAU,0BAA0B,CACzC,MAAmB,EACnB,MAA2B,EAC3B,EAAE,MAAM,EAAE,YAAY,KAAkD,EAAE;IAE1E,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,SAAS,IAAI,CACZ,SAA8B,EAC9B,SAA8B,EAC9B,OAAiB,EAAE;QAEnB,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC7B,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;YACpC,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;gBAClC,IAAI,CAAC,YAAY,EAAE,CAAC;oBACnB,MAAM,IAAI,KAAK,CACd,2BAA2B,YAAY,CAAC,IAAI,YAAY,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CACzH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACP,SAAS;gBACV,CAAC;YACF,CAAC;YACD,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;YACpC,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC;YACnC,IAAI,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC3B,MAAM,UAAU,GAAG,YAAsB,CAAC;gBAC1C,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC9B,IAAI,CAAC,YAAY,EAAE,CAAC;wBACnB,MAAM,IAAI,KAAK,CACd,2BAA2B,YAAY,CAAC,IAAI,OAAO,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CACjH,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACP,SAAS;oBACV,CAAC;gBACF,CAAC;gBACD,IAAI,MAAM,EAAE,CAAC;oBACZ,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC;gBACzD,CAAC;qBAAM,CAAC;oBACP,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC;gBACxC,CAAC;YACF,CAAC;iBAAM,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;gBAC7C,IAAI,CAAC,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;YAC/C,CAAC;QACF,CAAC;IACF,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrB,OAAO,MAAM,CAAC;AACf,CAAC"}
@@ -30,20 +30,11 @@ export function resolveComputedTokenValue(preset, tokenName, propertyValues = {}
30
30
  function getResolvedTokenValues(preset) {
31
31
  const internals = getInternals(preset);
32
32
  const colorScheme = internals.defaultScheme;
33
- const values = {
34
- ...preset.context.getGlobalPropertyAssignments(),
35
- };
33
+ const values = {};
36
34
  applyKnownTokenValues(preset.$.mode, preset.baseMode, values);
37
35
  applyKnownTokenValues(preset.$.system.meta, {
38
36
  modeName: 'base',
39
37
  schemeName: colorScheme,
40
- scheme: {
41
- invertMultiplier: colorScheme === 'dark' ? -1 : 1,
42
- whenDark: colorScheme === 'dark' ? 1 : 0,
43
- whenLight: colorScheme === 'dark' ? 0 : 1,
44
- trueLight: colorScheme === 'dark' ? 'black' : 'white',
45
- trueHeavy: colorScheme === 'dark' ? 'white' : 'black',
46
- },
47
38
  }, values);
48
39
  return values;
49
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"resolveComputedTokenValue.js","sourceRoot":"","sources":["../../src/util/resolveComputedTokenValue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolveComputedTokenValue.js","sourceRoot":"","sources":["../../src/util/resolveComputedTokenValue.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,CAAC,EACD,eAAe,EACf,cAAc,EACd,sBAAsB,GAEtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAe,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAI/D,MAAM,UAAU,yBAAyB,CACxC,MAA6B,EAC7B,SAAiB,EACjB,iBAAmC,EAAE;IAErC,MAAM,cAAc,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IACvE,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9C,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,MAAM,aAAa,GAAqB;QACvC,GAAG,cAAc;QACjB,GAAG,cAAc;KACjB,CAAC;IAEF,MAAM,QAAQ,GACb,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC;QAC/B,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;YAClC,cAAc,EAAE,aAAa;YAC7B,UAAU,EAAE,KAAK;SACjB,CAAC;QACH,CAAC,CAAC,eAAe,CAAC,UAAU,EAAE;YAC5B,cAAc,EAAE,aAAa;YAC7B,UAAU,EAAE,KAAK;SACjB,CAAC,CAAC;IAEL,OAAO,sBAAsB,CAAC,QAAQ,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,sBAAsB,CAC9B,MAA6B;IAE7B,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,WAAW,GAAG,SAAS,CAAC,aAAa,CAAC;IAE5C,MAAM,MAAM,GAAsC,EAAE,CAAC;IACrD,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAE9D,qBAAqB,CACpB,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EACpB;QACC,QAAQ,EAAE,MAAM;QAChB,UAAU,EAAE,WAAW;KACvB,EACD,MAAM,CACN,CAAC;IAEF,OAAO,MAAM,CAAC;AACf,CAAC;AAED,SAAS,qBAAqB,CAC7B,SAAc,EACd,SAAc,EACd,MAAyC;IAEzC,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC/D,OAAO;IACR,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAErC,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YACjC,SAAS;QACV,CAAC;QAED,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YACzB,MAAM,UAAU,GAAG,sBAAsB,CAAC,aAAa,CAAC,CAAC;YACzD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC9B,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC;YACtC,CAAC;YACD,SAAS;QACV,CAAC;QAED,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YAC3D,qBAAqB,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;QAC1D,CAAC;IACF,CAAC;AACF,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAc;IAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5D,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC,GAAG,CAAC;IAClB,CAAC;IAED,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACd,CAAC;IAED,OAAO,SAAS,CAAC;AAClB,CAAC"}
@@ -18,19 +18,19 @@ it('resolves primitive token values', () => {
18
18
  });
19
19
  it('resolves base mode values with baking', () => {
20
20
  const value = resolveComputedTokenValue(preset, preset.$.mode.spacing.sm.name);
21
- expect(value).toBe('calc(0.3333333333333333rem)');
21
+ expect(value).toBe('0.3333333333333333rem');
22
22
  });
23
23
  it('applies user property values to evaluation context', () => {
24
24
  const value = resolveComputedTokenValue(preset, preset.$.mode.spacing.sm.name, {
25
- [preset.$.mode.scalar.density.name]: '2',
25
+ [preset.$.mode.global.density.name]: '2',
26
26
  });
27
27
  expect(value).toBe('calc(calc(0.3333333333333333rem / 2))');
28
28
  });
29
29
  it('resolves equation property values from user overrides', () => {
30
30
  const value = resolveComputedTokenValue(preset, preset.$.mode.spacing.sm.name, {
31
- [preset.$.mode.scalar.density.name]: css `calc(1 + 1)`,
31
+ [preset.$.mode.global.density.name]: css `calc(1 + 1)`,
32
32
  });
33
- expect(value).toBe('calc(calc(0.3333333333333333rem / calc(2)))');
33
+ expect(value).toBe('calc(calc(0.3333333333333333rem / 2))');
34
34
  });
35
35
  it('returns undefined when token is unknown', () => {
36
36
  expect(resolveComputedTokenValue(preset, '--not-a-token')).toBeUndefined();
@@ -1 +1 @@
1
- {"version":3,"file":"resolveComputedTokenValue.test.js","sourceRoot":"","sources":["../../src/util/resolveComputedTokenValue.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,MAAM,MAAM,GAAG,WAAW,CAAC;IAC1B,KAAK,EAAE;QACN,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACP,GAAG,EAAE;gBACJ,GAAG,EAAE,CAAC;aACN;SACD;KACD;CACD,CAAC,CAAC;AAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC1C,MAAM,KAAK,GAAG,yBAAyB,CACtC,MAAM,EACN,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAC1C,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;IAChD,MAAM,KAAK,GAAG,yBAAyB,CACtC,MAAM,EACN,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAC7B,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;IAC7D,MAAM,KAAK,GAAG,yBAAyB,CACtC,MAAM,EACN,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAC7B;QACC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG;KACxC,CACD,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;AAC7D,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;IAChE,MAAM,KAAK,GAAG,yBAAyB,CACtC,MAAM,EACN,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAC7B;QACC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,CAAA,aAAa;KACrD,CACD,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;AACnE,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;IAClD,MAAM,CAAC,yBAAyB,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;AAC5E,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"resolveComputedTokenValue.test.js","sourceRoot":"","sources":["../../src/util/resolveComputedTokenValue.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,MAAM,MAAM,GAAG,WAAW,CAAC;IAC1B,KAAK,EAAE;QACN,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACP,GAAG,EAAE;gBACJ,GAAG,EAAE,CAAC;aACN;SACD;KACD;CACD,CAAC,CAAC;AAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC1C,MAAM,KAAK,GAAG,yBAAyB,CACtC,MAAM,EACN,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAC1C,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;IAChD,MAAM,KAAK,GAAG,yBAAyB,CACtC,MAAM,EACN,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAC7B,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;IAC7D,MAAM,KAAK,GAAG,yBAAyB,CACtC,MAAM,EACN,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAC7B;QACC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG;KACxC,CACD,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;AAC7D,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;IAChE,MAAM,KAAK,GAAG,yBAAyB,CACtC,MAAM,EACN,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAC7B;QACC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,CAAA,aAAa;KACrD,CACD,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;AAC7D,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;IAClD,MAAM,CAAC,yBAAyB,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;AAC5E,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arbor-css/core",
3
- "version": "0.0.91",
3
+ "version": "0.0.93",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -53,17 +53,13 @@
53
53
  "jiti": "^2.6.1",
54
54
  "lil-gui": "^0.21.0",
55
55
  "yargs": "^18.0.0",
56
- "@arbor-css/preset": "0.0.91",
57
- "@arbor-css/tokens": "0.0.91",
58
- "@arbor-css/globals": "0.0.91",
59
- "@arbor-css/colors": "0.0.91",
60
- "@arbor-css/modes": "0.0.91",
61
- "@arbor-css/spacing": "0.0.91",
62
- "@arbor-css/shadows": "0.0.91",
63
- "@arbor-css/util": "0.0.91",
64
- "@arbor-css/functions": "0.0.91",
65
- "@arbor-css/typography": "0.0.91",
66
- "@arbor-css/calc": "0.0.91"
56
+ "@arbor-css/preset": "0.0.93",
57
+ "@arbor-css/tokens": "0.0.93",
58
+ "@arbor-css/util": "0.0.93",
59
+ "@arbor-css/functions": "0.0.93",
60
+ "@arbor-css/globals": "0.0.93",
61
+ "@arbor-css/modes": "0.0.93",
62
+ "@arbor-css/calc": "0.0.93"
67
63
  },
68
64
  "scripts": {
69
65
  "build": "tsc",
@@ -1,7 +0,0 @@
1
- export declare const scalars: {
2
- density: {
3
- purpose: "scalar";
4
- description: "A scaling factor for density. Higher density means smaller, tighter spacing and size";
5
- };
6
- };
7
- //# sourceMappingURL=scalars.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scalars.d.ts","sourceRoot":"","sources":["../../../../../src/presets/arborPreset/modeSchema/scalars/scalars.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,OAAO;;;;;CAMlB,CAAC"}
@@ -1,8 +0,0 @@
1
- import { createModeSchema } from '@arbor-css/modes';
2
- export const scalars = createModeSchema({
3
- density: {
4
- purpose: 'scalar',
5
- description: 'A scaling factor for density. Higher density means smaller, tighter spacing and size',
6
- },
7
- });
8
- //# sourceMappingURL=scalars.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scalars.js","sourceRoot":"","sources":["../../../../../src/presets/arborPreset/modeSchema/scalars/scalars.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,CAAC,MAAM,OAAO,GAAG,gBAAgB,CAAC;IACvC,OAAO,EAAE;QACR,OAAO,EAAE,QAAQ;QACjB,WAAW,EACV,sFAAsF;KACvF;CACD,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=GlobalsEditor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GlobalsEditor.d.ts","sourceRoot":"","sources":["../../../src/runtime/components/GlobalsEditor.ts"],"names":[],"mappings":""}
@@ -1,24 +0,0 @@
1
- import GUI from 'lil-gui';
2
- import { getConfig } from '../registration.js';
3
- import { ArborElement } from './BaseElement.js';
4
- class GlobalsEditor extends ArborElement {
5
- connectedCallback() {
6
- const gui = new GUI();
7
- gui.close();
8
- const config = getConfig();
9
- const globalsFolder = gui.addFolder('Globals');
10
- for (const [globalKey, token] of Object.entries(config.$.system.global)) {
11
- let entry = token.type === 'color' ?
12
- globalsFolder.addColor(config.context.globals, globalKey)
13
- : globalsFolder.add(config.context.globals, globalKey);
14
- entry.name(globalKey).onChange((v) => {
15
- document.documentElement.style.setProperty(token.name, v.toString());
16
- });
17
- if (token.type === 'number') {
18
- entry = entry.min(0).max(2).step(0.1);
19
- }
20
- }
21
- }
22
- }
23
- customElements.define('arbor-globals-editor', GlobalsEditor);
24
- //# sourceMappingURL=GlobalsEditor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GlobalsEditor.js","sourceRoot":"","sources":["../../../src/runtime/components/GlobalsEditor.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,SAAS,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,MAAM,aAAc,SAAQ,YAAY;IACvC,iBAAiB;QAChB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAE3B,MAAM,aAAa,GAAG,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAE/C,KAAK,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACzE,IAAI,KAAK,GACR,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;gBACvB,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,SAAgB,CAAC;gBACjE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,SAAgB,CAAC,CAAC;YAE/D,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAM,EAAE,EAAE;gBACzC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YACtE,CAAC,CAAC,CAAC;YACH,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvC,CAAC;QACF,CAAC;IACF,CAAC;CACD;AAED,cAAc,CAAC,MAAM,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC"}
@@ -1,3 +0,0 @@
1
- import { ArborPreset } from '@arbor-css/preset/config';
2
- export declare function resolveTokenReferences(preset: ArborPreset<any, any>, tokenName: string, colorScheme?: string): string | undefined;
3
- //# sourceMappingURL=resolveTokenReferences.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolveTokenReferences.d.ts","sourceRoot":"","sources":["../../src/util/resolveTokenReferences.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAIvD,wBAAgB,sBAAsB,CACrC,MAAM,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EAC7B,SAAS,EAAE,MAAM,EACjB,WAAW,GAAE,MAAgB,GAC3B,MAAM,GAAG,SAAS,CAuCpB"}
@@ -1,49 +0,0 @@
1
- import { isCalcEquation, printEquation } from '@arbor-css/calc';
2
- import { isToken } from '@arbor-css/tokens';
3
- import { flattenAndApplyTokenValues } from './flattenAndApplyTokenValues.js';
4
- export function resolveTokenReferences(preset, tokenName, colorScheme = 'light') {
5
- const flat = flattenAndApplyTokenValues(preset.$.mode, preset.baseMode);
6
- let current = tokenName;
7
- const visited = new Set();
8
- while (current) {
9
- if (visited.has(current)) {
10
- // circular reference
11
- return undefined;
12
- }
13
- visited.add(current);
14
- const value = flat[current];
15
- if (!value) {
16
- return undefined;
17
- }
18
- if (isToken(value)) {
19
- current = value.name;
20
- }
21
- else if (isCalcEquation(value)) {
22
- // a calc value could be just a plain var(...) ref,
23
- // in which case we can keep going
24
- const printed = printEquation(value);
25
- const propName = extractPropertyRefName(printed);
26
- if (!propName) {
27
- return undefined;
28
- }
29
- current = propName;
30
- }
31
- else if (typeof value === 'string') {
32
- // if we got a string, check if it's a var(...) ref.
33
- const propName = extractPropertyRefName(value);
34
- if (!propName) {
35
- return value;
36
- }
37
- current = propName;
38
- }
39
- else {
40
- // not sure what this is.
41
- return undefined;
42
- }
43
- }
44
- }
45
- function extractPropertyRefName(value) {
46
- const match = /^var\((--[^,)\]]+)\)$/u.exec(value);
47
- return match ? match[1] : null;
48
- }
49
- //# sourceMappingURL=resolveTokenReferences.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolveTokenReferences.js","sourceRoot":"","sources":["../../src/util/resolveTokenReferences.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,MAAM,UAAU,sBAAsB,CACrC,MAA6B,EAC7B,SAAiB,EACjB,cAAsB,OAAO;IAE7B,MAAM,IAAI,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAExE,IAAI,OAAO,GAAG,SAAS,CAAC;IACxB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,OAAO,OAAO,EAAE,CAAC;QAChB,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,qBAAqB;YACrB,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAErB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC;QACtB,CAAC;aAAM,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,mDAAmD;YACnD,kCAAkC;YAClC,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;YACrC,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;YACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACf,OAAO,SAAS,CAAC;YAClB,CAAC;YACD,OAAO,GAAG,QAAQ,CAAC;QACpB,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACtC,oDAAoD;YACpD,MAAM,QAAQ,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACf,OAAO,KAAK,CAAC;YACd,CAAC;YACD,OAAO,GAAG,QAAQ,CAAC;QACpB,CAAC;aAAM,CAAC;YACP,yBAAyB;YACzB,OAAO,SAAS,CAAC;QAClB,CAAC;IACF,CAAC;AACF,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAa;IAC5C,MAAM,KAAK,GAAG,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAChC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=resolveTokenReferences.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolveTokenReferences.test.d.ts","sourceRoot":"","sources":["../../src/util/resolveTokenReferences.test.ts"],"names":[],"mappings":""}
@@ -1,23 +0,0 @@
1
- import { expect, it } from 'vitest';
2
- import { presetArbor } from '../presets/arborPreset/preset.js';
3
- import { resolveTokenReferences } from './resolveTokenReferences.js';
4
- const preset = presetArbor({
5
- color: {
6
- mainColor: 'red',
7
- ranges: {
8
- red: {
9
- hue: 0,
10
- },
11
- },
12
- },
13
- });
14
- it('resolves a indirect token values', () => {
15
- expect(resolveTokenReferences(preset, preset.$.mode.primitive.color.red.$root.name)).toBe('light-dark(oklch(90% 0.15000000000000002 0), oklch(60% 0.16000000000000003 0))');
16
- });
17
- it('resolves direct token values', () => {
18
- expect(resolveTokenReferences(preset, preset.$.mode.primitive.spacing.$root.name)).toBe('0.5rem');
19
- });
20
- it('resolves mode token values', () => {
21
- expect(resolveTokenReferences(preset, preset.$.mode.color.main.$root.name)).toBe('light-dark(oklch(90% 0.15000000000000002 0), oklch(60% 0.16000000000000003 0))');
22
- });
23
- //# sourceMappingURL=resolveTokenReferences.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolveTokenReferences.test.js","sourceRoot":"","sources":["../../src/util/resolveTokenReferences.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,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,MAAM,MAAM,GAAG,WAAW,CAAC;IAC1B,KAAK,EAAE;QACN,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACP,GAAG,EAAE;gBACJ,GAAG,EAAE,CAAC;aACN;SACD;KACD;CACD,CAAC,CAAC;AAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAC3C,MAAM,CACL,sBAAsB,CACrB,MAAM,EACN,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAC5C,CACD,CAAC,IAAI,CACL,gFAAgF,CAChF,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;IACvC,MAAM,CACL,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAC1E,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;IACrC,MAAM,CACL,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CACnE,CAAC,IAAI,CACL,gFAAgF,CAChF,CAAC;AACH,CAAC,CAAC,CAAC"}