@arbor-css/core 0.0.107 → 0.0.110
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/introspection.test.js +3 -3
- package/dist/cli/introspection.test.js.map +1 -1
- package/dist/cli/run.js +15 -6
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/validate.d.ts.map +1 -1
- package/dist/cli/validate.js +10 -0
- package/dist/cli/validate.js.map +1 -1
- package/dist/cli/validate.test.js +21 -3
- package/dist/cli/validate.test.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/presets/arborPreset/modeValues/color/color.d.ts +15 -23
- package/dist/presets/arborPreset/modeValues/color/color.d.ts.map +1 -1
- package/dist/presets/arborPreset/modeValues/color/color.js +4 -12
- package/dist/presets/arborPreset/modeValues/color/color.js.map +1 -1
- package/dist/presets/arborPreset/modeValues/color/compile.d.ts +2 -2
- package/dist/presets/arborPreset/modeValues/color/compile.d.ts.map +1 -1
- package/dist/presets/arborPreset/modeValues/color/compile.js +1 -1
- package/dist/presets/arborPreset/modeValues/color/compile.js.map +1 -1
- package/dist/presets/arborPreset/modeValues/color/compile.test.js +42 -39
- package/dist/presets/arborPreset/modeValues/color/compile.test.js.map +1 -1
- package/dist/presets/arborPreset/modeValues/color/ranges.d.ts +12 -12
- package/dist/presets/arborPreset/modeValues/color/ranges.d.ts.map +1 -1
- package/dist/presets/arborPreset/modeValues/color/ranges.js +9 -7
- package/dist/presets/arborPreset/modeValues/color/ranges.js.map +1 -1
- package/dist/presets/arborPreset/modeValues/intents.d.ts +45 -45
- package/dist/presets/arborPreset/modeValues/intents.d.ts.map +1 -1
- package/dist/presets/arborPreset/modeValues/intents.js +8 -6
- package/dist/presets/arborPreset/modeValues/intents.js.map +1 -1
- package/dist/presets/arborPreset/modeValues/semantics.d.ts +57 -57
- package/dist/presets/arborPreset/modeValues/semantics.d.ts.map +1 -1
- package/dist/presets/arborPreset/modeValues/semantics.js +7 -7
- package/dist/presets/arborPreset/modeValues/semantics.js.map +1 -1
- package/dist/presets/arborPreset/modeValues/shadow/index.d.ts +7 -7
- package/dist/presets/arborPreset/modeValues/shadow/index.d.ts.map +1 -1
- package/dist/presets/arborPreset/modeValues/shadow/index.js +14 -21
- package/dist/presets/arborPreset/modeValues/shadow/index.js.map +1 -1
- package/dist/presets/arborPreset/modeValues/spacing/index.d.ts +5 -5
- package/dist/presets/arborPreset/modeValues/spacing/index.d.ts.map +1 -1
- package/dist/presets/arborPreset/modeValues/spacing/index.js +2 -2
- package/dist/presets/arborPreset/modeValues/spacing/index.js.map +1 -1
- package/dist/presets/arborPreset/modeValues/typography/index.d.ts +22 -22
- package/dist/presets/arborPreset/modeValues/typography/index.d.ts.map +1 -1
- package/dist/presets/arborPreset/modeValues/typography/index.js +5 -2
- package/dist/presets/arborPreset/modeValues/typography/index.js.map +1 -1
- package/dist/presets/arborPreset/preset.d.ts +1 -1
- package/dist/presets/arborPreset/preset.d.ts.map +1 -1
- package/dist/presets/arborPreset/preset.js +130 -145
- package/dist/presets/arborPreset/preset.js.map +1 -1
- package/dist/presets/arborPreset/preset.test.js +18 -4
- package/dist/presets/arborPreset/preset.test.js.map +1 -1
- package/dist/presets/basicPreset/commonFunctions.d.ts +9 -9
- package/dist/presets/basicPreset/commonFunctions.d.ts.map +1 -1
- package/dist/presets/basicPreset/commonFunctions.js +13 -13
- package/dist/presets/basicPreset/commonFunctions.js.map +1 -1
- package/dist/presets/basicPreset/functions.test.js +12 -10
- package/dist/presets/basicPreset/functions.test.js.map +1 -1
- package/dist/presets/basicPreset/mixins.d.ts +3 -3
- package/dist/presets/basicPreset/mixins.d.ts.map +1 -1
- package/dist/presets/basicPreset/mixins.js +40 -63
- package/dist/presets/basicPreset/mixins.js.map +1 -1
- package/dist/presets/basicPreset/preset.d.ts +1 -1
- package/dist/presets/basicPreset/preset.d.ts.map +1 -1
- package/dist/presets/basicPreset/preset.js +6 -6
- package/dist/presets/basicPreset/preset.js.map +1 -1
- package/dist/publicResolve.d.ts +5 -0
- package/dist/publicResolve.d.ts.map +1 -0
- package/dist/publicResolve.js +11 -0
- package/dist/publicResolve.js.map +1 -0
- package/dist/runtime/components/ColorSwatch.d.ts +2 -0
- package/dist/runtime/components/ColorSwatch.d.ts.map +1 -0
- package/dist/runtime/components/ColorSwatch.js +36 -0
- package/dist/runtime/components/ColorSwatch.js.map +1 -0
- package/dist/runtime/components/FunctionsList.d.ts.map +1 -1
- package/dist/runtime/components/FunctionsList.js +17 -14
- package/dist/runtime/components/FunctionsList.js.map +1 -1
- package/dist/runtime/components/IntentDemos.d.ts +2 -0
- package/dist/runtime/components/IntentDemos.d.ts.map +1 -0
- package/dist/runtime/components/IntentDemos.js +124 -0
- package/dist/runtime/components/IntentDemos.js.map +1 -0
- package/dist/runtime/components/MixinsList.d.ts.map +1 -1
- package/dist/runtime/components/MixinsList.js +17 -14
- package/dist/runtime/components/MixinsList.js.map +1 -1
- package/dist/runtime/components/ModeGraph.d.ts.map +1 -1
- package/dist/runtime/components/ModeGraph.js +126 -71
- package/dist/runtime/components/ModeGraph.js.map +1 -1
- package/dist/runtime/components/Outputs.d.ts.map +1 -1
- package/dist/runtime/components/Outputs.js +2 -1
- package/dist/runtime/components/Outputs.js.map +1 -1
- package/dist/runtime/components/SpacingScale.d.ts +2 -0
- package/dist/runtime/components/SpacingScale.d.ts.map +1 -0
- package/dist/runtime/components/SpacingScale.js +54 -0
- package/dist/runtime/components/SpacingScale.js.map +1 -0
- package/dist/runtime/components/index.d.ts.map +1 -1
- package/dist/runtime/components/index.js +6 -0
- package/dist/runtime/components/index.js.map +1 -1
- package/dist/runtime/registration.d.ts +5 -1
- package/dist/runtime/registration.d.ts.map +1 -1
- package/dist/runtime/registration.js +32 -1
- package/dist/runtime/registration.js.map +1 -1
- package/dist/stylesheet/generateStylesheet.d.ts +3 -1
- package/dist/stylesheet/generateStylesheet.d.ts.map +1 -1
- package/dist/stylesheet/generateStylesheet.js +2 -2
- package/dist/stylesheet/generateStylesheet.js.map +1 -1
- package/dist/stylesheet/generateStylesheet.test.js +1 -1
- package/dist/stylesheet/generateStylesheet.test.js.map +1 -1
- package/dist/stylesheet/modeToCss.d.ts +2 -3
- package/dist/stylesheet/modeToCss.d.ts.map +1 -1
- package/dist/stylesheet/modeToCss.js +2 -4
- package/dist/stylesheet/modeToCss.js.map +1 -1
- package/dist/stylesheet/modeToCss.test.js +10 -9
- package/dist/stylesheet/modeToCss.test.js.map +1 -1
- package/dist/util/buildModeTokenGraph.d.ts +4 -1
- package/dist/util/buildModeTokenGraph.d.ts.map +1 -1
- package/dist/util/buildModeTokenGraph.js +16 -10
- package/dist/util/buildModeTokenGraph.js.map +1 -1
- package/dist/util/buildModeTokenGraph.test.js +8 -3
- package/dist/util/buildModeTokenGraph.test.js.map +1 -1
- package/dist/util/resolveComputedTokenValue.d.ts +2 -4
- package/dist/util/resolveComputedTokenValue.d.ts.map +1 -1
- package/dist/util/resolveComputedTokenValue.js +11 -13
- package/dist/util/resolveComputedTokenValue.js.map +1 -1
- package/dist/util/resolveComputedTokenValue.test.js +20 -10
- package/dist/util/resolveComputedTokenValue.test.js.map +1 -1
- package/package.json +8 -8
- package/dist/runtime/componentsOld/BaseElement.d.ts +0 -8
- package/dist/runtime/componentsOld/BaseElement.d.ts.map +0 -1
- package/dist/runtime/componentsOld/BaseElement.js +0 -14
- package/dist/runtime/componentsOld/BaseElement.js.map +0 -1
- package/dist/runtime/componentsOld/ModeSelector.d.ts +0 -2
- package/dist/runtime/componentsOld/ModeSelector.d.ts.map +0 -1
- package/dist/runtime/componentsOld/ModeSelector.js +0 -36
- package/dist/runtime/componentsOld/ModeSelector.js.map +0 -1
- package/dist/runtime/componentsOld/SchemeSelector.d.ts +0 -2
- package/dist/runtime/componentsOld/SchemeSelector.d.ts.map +0 -1
- package/dist/runtime/componentsOld/SchemeSelector.js +0 -34
- package/dist/runtime/componentsOld/SchemeSelector.js.map +0 -1
- package/dist/runtime/componentsOld/SystemDemo.d.ts +0 -2
- package/dist/runtime/componentsOld/SystemDemo.d.ts.map +0 -1
- package/dist/runtime/componentsOld/SystemDemo.js +0 -45
- package/dist/runtime/componentsOld/SystemDemo.js.map +0 -1
- package/dist/runtime/componentsOld/TokenColorValuePreview.d.ts +0 -2
- package/dist/runtime/componentsOld/TokenColorValuePreview.d.ts.map +0 -1
- package/dist/runtime/componentsOld/TokenColorValuePreview.js +0 -12
- package/dist/runtime/componentsOld/TokenColorValuePreview.js.map +0 -1
- package/dist/runtime/componentsOld/TokenFontValuesPreview.d.ts +0 -2
- package/dist/runtime/componentsOld/TokenFontValuesPreview.d.ts.map +0 -1
- package/dist/runtime/componentsOld/TokenFontValuesPreview.js +0 -14
- package/dist/runtime/componentsOld/TokenFontValuesPreview.js.map +0 -1
- package/dist/runtime/componentsOld/TokenShadowValuePreview.d.ts +0 -2
- package/dist/runtime/componentsOld/TokenShadowValuePreview.d.ts.map +0 -1
- package/dist/runtime/componentsOld/TokenShadowValuePreview.js +0 -14
- package/dist/runtime/componentsOld/TokenShadowValuePreview.js.map +0 -1
- package/dist/runtime/componentsOld/TokenSizeValuePreview.d.ts +0 -2
- package/dist/runtime/componentsOld/TokenSizeValuePreview.d.ts.map +0 -1
- package/dist/runtime/componentsOld/TokenSizeValuePreview.js +0 -12
- package/dist/runtime/componentsOld/TokenSizeValuePreview.js.map +0 -1
- package/dist/runtime/componentsOld/TokenValuePreview.d.ts +0 -2
- package/dist/runtime/componentsOld/TokenValuePreview.d.ts.map +0 -1
- package/dist/runtime/componentsOld/TokenValuePreview.js +0 -25
- package/dist/runtime/componentsOld/TokenValuePreview.js.map +0 -1
- package/dist/runtime/componentsOld/TokenValues.d.ts +0 -2
- package/dist/runtime/componentsOld/TokenValues.d.ts.map +0 -1
- package/dist/runtime/componentsOld/TokenValues.js +0 -103
- package/dist/runtime/componentsOld/TokenValues.js.map +0 -1
- package/dist/runtime/componentsOld/index.d.ts +0 -11
- package/dist/runtime/componentsOld/index.d.ts.map +0 -1
- package/dist/runtime/componentsOld/index.js +0 -11
- package/dist/runtime/componentsOld/index.js.map +0 -1
|
@@ -8,11 +8,8 @@ class MixinsList extends LitElement {
|
|
|
8
8
|
static get styles() {
|
|
9
9
|
return css `
|
|
10
10
|
:host {
|
|
11
|
-
display: block;
|
|
12
|
-
box-sizing: border-box;
|
|
13
11
|
width: 100%;
|
|
14
|
-
|
|
15
|
-
.root {
|
|
12
|
+
min-width: 100px;
|
|
16
13
|
display: flex;
|
|
17
14
|
flex-direction: column;
|
|
18
15
|
width: 100%;
|
|
@@ -47,12 +44,17 @@ class MixinsList extends LitElement {
|
|
|
47
44
|
margin: 0;
|
|
48
45
|
padding: 0;
|
|
49
46
|
width: 100%;
|
|
47
|
+
min-width: 100px;
|
|
48
|
+
overflow: auto;
|
|
49
|
+
max-height: 400px;
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
li {
|
|
53
53
|
display: flex;
|
|
54
54
|
flex-direction: column;
|
|
55
55
|
width: 100%;
|
|
56
|
+
min-width: 100px;
|
|
57
|
+
box-sizing: border-box;
|
|
56
58
|
padding: var(
|
|
57
59
|
--functionsList-item-padding,
|
|
58
60
|
var(--m-surface-padding, 8px)
|
|
@@ -61,7 +63,10 @@ class MixinsList extends LitElement {
|
|
|
61
63
|
--functionsList-item-border,
|
|
62
64
|
1px solid var(--m-border-color, #ccc)
|
|
63
65
|
);
|
|
64
|
-
border-radius: var(
|
|
66
|
+
border-radius: var(
|
|
67
|
+
--functionsList-item-border-radius,
|
|
68
|
+
var(--m-surface-radius, 4px)
|
|
69
|
+
);
|
|
65
70
|
font-size: var(
|
|
66
71
|
--functionsList-item-size,
|
|
67
72
|
var(--m-primitive-typography-size, 1rem)
|
|
@@ -105,15 +110,13 @@ class MixinsList extends LitElement {
|
|
|
105
110
|
render() {
|
|
106
111
|
const mixins = Object.values(this.preset.mixins).sort((a, b) => a.name.localeCompare(b.name));
|
|
107
112
|
return html `
|
|
108
|
-
<
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
</ul>
|
|
116
|
-
</div>
|
|
113
|
+
<h2>Mixins</h2>
|
|
114
|
+
<ul>
|
|
115
|
+
${mixins.map((mx) => html `<li>
|
|
116
|
+
<span class="name">${mx.signature}</span>
|
|
117
|
+
<span class="description">${mx.description}</span>
|
|
118
|
+
</li>`)}
|
|
119
|
+
</ul>
|
|
117
120
|
`;
|
|
118
121
|
}
|
|
119
122
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MixinsList.js","sourceRoot":"","sources":["../../../src/runtime/components/MixinsList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,UAAW,SAAQ,UAAU;IAAnC;;
|
|
1
|
+
{"version":3,"file":"MixinsList.js","sourceRoot":"","sources":["../../../src/runtime/components/MixinsList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,UAAW,SAAQ,UAAU;IAAnC;;QAwGC,WAAM,GAAG,SAAS,EAAE,CAAC;IAmBtB,CAAC;IA1HA,MAAM,KAAK,MAAM;QAChB,OAAO,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmGT,CAAC;IACH,CAAC;IAID,MAAM;QACL,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC9D,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAC5B,CAAC;QACF,OAAO,IAAI,CAAA;;;MAGP,MAAM,CAAC,GAAG,CACX,CAAC,EAAE,EAAE,EAAE,CACN,IAAI,CAAA;4BACkB,EAAE,CAAC,SAAS;mCACL,EAAE,CAAC,WAAW;YACrC,CACP;;GAEF,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":"ModeGraph.d.ts","sourceRoot":"","sources":["../../../src/runtime/components/ModeGraph.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"ModeGraph.d.ts","sourceRoot":"","sources":["../../../src/runtime/components/ModeGraph.ts"],"names":[],"mappings":";AAsZA,wBAGE"}
|
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { isCss, printCss } from '@arbor-css/css-eval';
|
|
2
2
|
import { getInternals } from '@arbor-css/preset';
|
|
3
|
+
import { isToken } from '@arbor-css/tokens';
|
|
3
4
|
import { css, html, LitElement } from 'lit-element';
|
|
4
5
|
import { buildModeTokenGraph, } from '../../util/buildModeTokenGraph.js';
|
|
5
|
-
import { getPreset } from '../registration.js';
|
|
6
|
+
import { getContext, getPreset, subscribeToEnvChanges, } from '../registration.js';
|
|
6
7
|
const graphCache = new Map();
|
|
8
|
+
subscribeToEnvChanges(() => {
|
|
9
|
+
graphCache.clear();
|
|
10
|
+
});
|
|
7
11
|
function memoizedTokenGraph(modeName, preset) {
|
|
8
12
|
const cacheKey = `${modeName}`;
|
|
9
13
|
if (graphCache.has(cacheKey)) {
|
|
@@ -16,17 +20,22 @@ function memoizedTokenGraph(modeName, preset) {
|
|
|
16
20
|
throw new Error(`Mode "${modeName}" not found in preset.`);
|
|
17
21
|
}
|
|
18
22
|
const graph = buildModeTokenGraph(modeInstance, preset, {
|
|
23
|
+
...getContext(),
|
|
19
24
|
skipBaking: false,
|
|
20
25
|
});
|
|
21
26
|
graphCache.set(cacheKey, graph);
|
|
22
27
|
return graph;
|
|
23
28
|
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
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);
|
|
29
35
|
}
|
|
36
|
+
return categoryA - categoryB;
|
|
37
|
+
}
|
|
38
|
+
class ModeGraph extends LitElement {
|
|
30
39
|
static get properties() {
|
|
31
40
|
return {
|
|
32
41
|
mode: { type: String },
|
|
@@ -64,9 +73,16 @@ class ModeGraph extends LitElement {
|
|
|
64
73
|
display: flex;
|
|
65
74
|
flex-direction: column;
|
|
66
75
|
font-family: monospace;
|
|
76
|
+
gap: var(--modeGraph-tokens-gap, var(--m-spacing-sm, 4px));
|
|
67
77
|
}
|
|
68
78
|
`;
|
|
69
79
|
}
|
|
80
|
+
constructor() {
|
|
81
|
+
super();
|
|
82
|
+
this.mode = '';
|
|
83
|
+
this.preset = getPreset();
|
|
84
|
+
subscribeToEnvChanges(() => this.render());
|
|
85
|
+
}
|
|
70
86
|
render() {
|
|
71
87
|
const graph = memoizedTokenGraph(this.mode, this.preset);
|
|
72
88
|
return html `
|
|
@@ -78,10 +94,11 @@ class ModeGraph extends LitElement {
|
|
|
78
94
|
</span>
|
|
79
95
|
</div>
|
|
80
96
|
<div class="tokens">
|
|
81
|
-
${graph.roots.map((tokenName) => {
|
|
97
|
+
${graph.roots.sort(categoryDepthSort).map((tokenName) => {
|
|
82
98
|
return html `<arbor-mode-graph-token
|
|
83
|
-
|
|
84
|
-
|
|
99
|
+
mode=${this.mode}
|
|
100
|
+
name=${tokenName}
|
|
101
|
+
expanded=${graph.roots.length <= 3}
|
|
85
102
|
></arbor-mode-graph-token>`;
|
|
86
103
|
})}
|
|
87
104
|
</div>
|
|
@@ -94,12 +111,18 @@ class ModeGraphToken extends LitElement {
|
|
|
94
111
|
super(...arguments);
|
|
95
112
|
this.name = '';
|
|
96
113
|
this.mode = '';
|
|
114
|
+
this.dependency = '@@none';
|
|
115
|
+
this.depth = 0;
|
|
116
|
+
this.expanded = false;
|
|
97
117
|
this.preset = getPreset();
|
|
98
118
|
}
|
|
99
119
|
static get properties() {
|
|
100
120
|
return {
|
|
101
121
|
mode: { type: String },
|
|
102
122
|
name: { type: String },
|
|
123
|
+
dependency: { type: String, optional: true },
|
|
124
|
+
depth: { type: Number, optional: true },
|
|
125
|
+
expanded: { type: Boolean, optional: true },
|
|
103
126
|
};
|
|
104
127
|
}
|
|
105
128
|
static get styles() {
|
|
@@ -107,8 +130,8 @@ class ModeGraphToken extends LitElement {
|
|
|
107
130
|
details {
|
|
108
131
|
padding: var(--modeGraph-token-padding, var(--m-surface-padding, 8px));
|
|
109
132
|
border: var(
|
|
110
|
-
--modeGraph-token-
|
|
111
|
-
var(--m-lineWidth, 1) solid var(--m-surface-ambient-
|
|
133
|
+
--modeGraph-token-borderColor,
|
|
134
|
+
var(--m-lineWidth, 1) solid var(--m-surface-ambient-borderColor, gray)
|
|
112
135
|
);
|
|
113
136
|
border-radius: var(
|
|
114
137
|
--modeGraph-token-border-radius,
|
|
@@ -124,15 +147,20 @@ class ModeGraphToken extends LitElement {
|
|
|
124
147
|
}
|
|
125
148
|
|
|
126
149
|
summary {
|
|
127
|
-
cursor: pointer;
|
|
128
150
|
display: flex;
|
|
129
151
|
flex-direction: column;
|
|
152
|
+
&[data-has-dependents='true'] {
|
|
153
|
+
cursor: pointer;
|
|
154
|
+
}
|
|
130
155
|
}
|
|
131
156
|
.summary-line {
|
|
132
157
|
display: flex;
|
|
133
158
|
flex-direction: row;
|
|
134
159
|
justify-content: space-between;
|
|
135
160
|
align-items: start;
|
|
161
|
+
white-space: nowrap;
|
|
162
|
+
gap: var(--modeGraph-token-summary-gap, var(--m-spacing-sm, 4px));
|
|
163
|
+
max-width: 100%;
|
|
136
164
|
}
|
|
137
165
|
.sub-line {
|
|
138
166
|
color: var(
|
|
@@ -143,6 +171,17 @@ class ModeGraphToken extends LitElement {
|
|
|
143
171
|
--modeGraph-token-sub-line-font-size,
|
|
144
172
|
var(--m-text-ambient-size, 12px)
|
|
145
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
|
+
}
|
|
146
185
|
}
|
|
147
186
|
|
|
148
187
|
.name {
|
|
@@ -157,6 +196,9 @@ class ModeGraphToken extends LitElement {
|
|
|
157
196
|
flex-direction: row;
|
|
158
197
|
align-items: center;
|
|
159
198
|
gap: var(--modeGraph-token-value-gap, var(--m-spacing-sm, 4px));
|
|
199
|
+
white-space: nowrap;
|
|
200
|
+
overflow: hidden;
|
|
201
|
+
text-overflow: ellipsis;
|
|
160
202
|
}
|
|
161
203
|
|
|
162
204
|
.computed,
|
|
@@ -165,6 +207,9 @@ class ModeGraphToken extends LitElement {
|
|
|
165
207
|
--modeGraph-token-computed-color,
|
|
166
208
|
var(--m-surface-ambient-fg, black)
|
|
167
209
|
);
|
|
210
|
+
white-space: nowrap;
|
|
211
|
+
overflow: hidden;
|
|
212
|
+
text-overflow: ellipsis;
|
|
168
213
|
}
|
|
169
214
|
.base-computed {
|
|
170
215
|
opacity: 0.6;
|
|
@@ -222,29 +267,7 @@ class ModeGraphToken extends LitElement {
|
|
|
222
267
|
display: flex;
|
|
223
268
|
flex-direction: column;
|
|
224
269
|
}
|
|
225
|
-
|
|
226
|
-
display: flex;
|
|
227
|
-
flex-direction: row;
|
|
228
|
-
justify-content: space-between;
|
|
229
|
-
flex-wrap: wrap;
|
|
230
|
-
}
|
|
231
|
-
.dependent-definition {
|
|
232
|
-
width: 100%;
|
|
233
|
-
overflow-x: auto;
|
|
234
|
-
text-align: left;
|
|
235
|
-
color: var(
|
|
236
|
-
--modeGraph-token-dependent-definition-color,
|
|
237
|
-
var(--m-color-neutral-heavy, darkgray)
|
|
238
|
-
);
|
|
239
|
-
font-size: var(
|
|
240
|
-
--modeGraph-token-dependent-definition-font-size,
|
|
241
|
-
var(--m-text-ambient-size, 12px)
|
|
242
|
-
);
|
|
243
|
-
font-family: var(
|
|
244
|
-
--modeGraph-token-dependent-definition-font-family,
|
|
245
|
-
var(--m-primitive-typography-font-mono, monospace)
|
|
246
|
-
);
|
|
247
|
-
}
|
|
270
|
+
|
|
248
271
|
.dependent-reference {
|
|
249
272
|
color: var(
|
|
250
273
|
--modeGraph-token-dependent-reference-color,
|
|
@@ -257,6 +280,12 @@ class ModeGraphToken extends LitElement {
|
|
|
257
280
|
}
|
|
258
281
|
`;
|
|
259
282
|
}
|
|
283
|
+
// need to manually subscribe to trigger updates
|
|
284
|
+
// when windows size changes vw units, etc
|
|
285
|
+
connectedCallback() {
|
|
286
|
+
super.connectedCallback();
|
|
287
|
+
subscribeToEnvChanges(() => this.requestUpdate());
|
|
288
|
+
}
|
|
260
289
|
render() {
|
|
261
290
|
const baseGraph = memoizedTokenGraph('base', this.preset);
|
|
262
291
|
const graph = memoizedTokenGraph(this.mode, this.preset);
|
|
@@ -266,51 +295,77 @@ class ModeGraphToken extends LitElement {
|
|
|
266
295
|
Token "${this.name}" not found in mode "${this.mode}".
|
|
267
296
|
</div>`;
|
|
268
297
|
}
|
|
298
|
+
const definitionRaw = isCss(tokenNode.raw) ? printCss(tokenNode.raw)
|
|
299
|
+
: isToken(tokenNode.raw) ? tokenNode.raw.name
|
|
300
|
+
: tokenNode.raw.toString();
|
|
301
|
+
const changed = baseGraph.nodes[this.name]?.computed !== tokenNode.computed;
|
|
302
|
+
// replace reference to the referenced token with a span so it's highlighted in the definition
|
|
303
|
+
const definitionRest = definitionRaw.split(this.dependency);
|
|
304
|
+
const definitionInterleaved = [];
|
|
305
|
+
for (let i = 0; i < definitionRest.length; i++) {
|
|
306
|
+
definitionInterleaved.push(definitionRest[i]);
|
|
307
|
+
if (i < definitionRest.length - 1) {
|
|
308
|
+
definitionInterleaved.push(html `<span class="dependent-reference">${this.dependency}</span>`);
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
const baseComputed = changed ? baseGraph.nodes[this.name]?.computed : null;
|
|
269
312
|
return html `
|
|
270
|
-
<details
|
|
271
|
-
|
|
313
|
+
<details
|
|
314
|
+
?open=${this.expanded}
|
|
315
|
+
data-has-dependents=${tokenNode.dependents.length > 0}
|
|
316
|
+
>
|
|
317
|
+
<summary data-has-dependents=${tokenNode.dependents.length > 0}>
|
|
272
318
|
<div class="summary-line">
|
|
273
319
|
<span class="name">${this.name}</span>
|
|
274
320
|
<span class="value">
|
|
275
|
-
|
|
276
|
-
|
|
321
|
+
${baseComputed ?
|
|
322
|
+
html `<span class="base-computed" title="${baseComputed}"
|
|
323
|
+
>${tokenNode.token.purpose === 'color' ?
|
|
324
|
+
html `<arbor-color-swatch
|
|
325
|
+
value="${baseComputed}"
|
|
326
|
+
></arbor-color-swatch>`
|
|
327
|
+
: baseComputed}</span
|
|
328
|
+
>`
|
|
329
|
+
: ''}
|
|
330
|
+
<span class="computed" title="${tokenNode.computed}"
|
|
331
|
+
>${tokenNode.token.purpose === 'color' ?
|
|
332
|
+
html `<arbor-color-swatch
|
|
333
|
+
value="${tokenNode.computed}"
|
|
334
|
+
></arbor-color-swatch>`
|
|
335
|
+
: tokenNode.computed}</span
|
|
277
336
|
>
|
|
278
|
-
<span class="computed">${tokenNode.computed}</span>
|
|
279
337
|
</span>
|
|
280
338
|
</div>
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
<
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
const definitionInterleaved = [];
|
|
297
|
-
for (let i = 0; i < definitionRest.length; i++) {
|
|
298
|
-
definitionInterleaved.push(definitionRest[i]);
|
|
299
|
-
if (i < definitionRest.length - 1) {
|
|
300
|
-
definitionInterleaved.push(html `<span class="dependent-reference">${this.name}</span>`);
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
return html `<li class="dependent">
|
|
304
|
-
<div class="dependent-summary">
|
|
305
|
-
<span class="name">${dep}</span>
|
|
306
|
-
<span class="value">
|
|
307
|
-
<span class="base-computed"
|
|
308
|
-
>${baseGraph.nodes[dep]?.computed ?? 'n/a'}</span
|
|
339
|
+
${this.depth > 0 ?
|
|
340
|
+
html `<div class="summary-line sub-line">
|
|
341
|
+
<span class="definition" title="${definitionRaw}">
|
|
342
|
+
${definitionInterleaved}
|
|
343
|
+
</span>
|
|
344
|
+
</div>`
|
|
345
|
+
: ''}
|
|
346
|
+
${tokenNode.dependents.length > 0 ?
|
|
347
|
+
html `
|
|
348
|
+
<div class="summary-line sub-line" style="margin-bottom: 4px; ">
|
|
349
|
+
<span>
|
|
350
|
+
<div class="caret">></div>
|
|
351
|
+
<span
|
|
352
|
+
>${tokenNode.dependents.length} dependent(s) - tap to
|
|
353
|
+
show</span
|
|
309
354
|
>
|
|
310
|
-
<span class="computed">${depNode.computed}</span>
|
|
311
355
|
</span>
|
|
312
356
|
</div>
|
|
313
|
-
|
|
357
|
+
`
|
|
358
|
+
: ''}
|
|
359
|
+
</summary>
|
|
360
|
+
<ul class="dependents">
|
|
361
|
+
${tokenNode.dependents.sort(categoryDepthSort).map((dep) => {
|
|
362
|
+
return html `<li class="dependent">
|
|
363
|
+
<arbor-mode-graph-token
|
|
364
|
+
mode=${this.mode}
|
|
365
|
+
name=${dep}
|
|
366
|
+
dependency=${this.name}
|
|
367
|
+
depth=${this.depth + 1}
|
|
368
|
+
></arbor-mode-graph-token>
|
|
314
369
|
</li> `;
|
|
315
370
|
})}
|
|
316
371
|
</ul>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModeGraph.js","sourceRoot":"","sources":["../../../src/runtime/components/ModeGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ModeGraph.js","sourceRoot":"","sources":["../../../src/runtime/components/ModeGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAe,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EACN,mBAAmB,GAEnB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACN,UAAU,EACV,SAAS,EACT,qBAAqB,GACrB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;AAC7B,qBAAqB,CAAC,GAAG,EAAE;IAC1B,UAAU,CAAC,KAAK,EAAE,CAAC;AACpB,CAAC,CAAC,CAAC;AACH,SAAS,kBAAkB,CAC1B,QAAgB,EAChB,MAAmB;IAEnB,MAAM,QAAQ,GAAG,GAAG,QAAQ,EAAE,CAAC;IAC/B,IAAI,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,OAAO,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;IAClC,CAAC;IACD,MAAM,YAAY,GACjB,QAAQ,KAAK,MAAM,CAAC,CAAC;QACpB,MAAM,CAAC,QAAQ;QAChB,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACxC,IAAI,CAAC,YAAY,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,SAAS,QAAQ,wBAAwB,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,KAAK,GAAG,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE;QACvD,GAAG,UAAU,EAAE;QACf,UAAU,EAAE,KAAK;KACjB,CAAC,CAAC;IACH,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAChC,OAAO,KAAK,CAAC;AACd,CAAC;AAED,mEAAmE;AACnE,SAAS,iBAAiB,CAAC,MAAc,EAAE,MAAc;IACxD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,SAAS,GAAG,SAAS,CAAC;AAC9B,CAAC;AAED,MAAM,SAAU,SAAQ,UAAU;IACjC,MAAM,KAAK,UAAU;QACpB,OAAO;YACN,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SACtB,CAAC;IACH,CAAC;IAED,MAAM,KAAK,MAAM;QAChB,OAAO,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCT,CAAC;IACH,CAAC;IAKD;QACC,KAAK,EAAE,CAAC;QAJT,SAAI,GAAG,EAAE,CAAC;QACV,WAAM,GAAG,SAAS,EAAE,CAAC;QAIpB,qBAAqB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM;QACL,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAEzD,OAAO,IAAI,CAAA;;;qCAGwB,IAAI,CAAC,IAAI;;QAEtC,KAAK,CAAC,KAAK,CAAC,MAAM,SAAS,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG;;;;OAI/D,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;YACvD,OAAO,IAAI,CAAA;cACH,IAAI,CAAC,IAAI;cACT,SAAS;kBACL,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;iCACR,CAAC;QAC7B,CAAC,CAAC;;;GAGJ,CAAC;IACH,CAAC;CACD;AAED,MAAM,cAAe,SAAQ,UAAU;IAAvC;;QAuKC,SAAI,GAAG,EAAE,CAAC;QACV,SAAI,GAAG,EAAE,CAAC;QACV,eAAU,GAAG,QAAQ,CAAC;QACtB,UAAK,GAAG,CAAC,CAAC;QACV,aAAQ,GAAG,KAAK,CAAC;QACjB,WAAM,GAAG,SAAS,EAAE,CAAC;IAwGtB,CAAC;IAnRA,MAAM,KAAK,UAAU;QACpB,OAAO;YACN,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACtB,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACtB,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC5C,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;YACvC,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE;SAC3C,CAAC;IACH,CAAC;IAED,MAAM,KAAK,MAAM;QAChB,OAAO,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwJT,CAAC;IACH,CAAC;IASD,gDAAgD;IAChD,0CAA0C;IAC1C,iBAAiB;QAChB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,qBAAqB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,MAAM;QACL,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,IAAI,CAAA;aACD,IAAI,CAAC,IAAI,wBAAwB,IAAI,CAAC,IAAI;UAC7C,CAAC;QACT,CAAC;QAED,MAAM,aAAa,GAClB,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC;YAC9C,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI;gBAC7C,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAE5B,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,KAAK,SAAS,CAAC,QAAQ,CAAC;QAE5E,8FAA8F;QAC9F,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5D,MAAM,qBAAqB,GAAG,EAAE,CAAC;QACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChD,qBAAqB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,qBAAqB,CAAC,IAAI,CACzB,IAAI,CAAA,qCAAqC,IAAI,CAAC,UAAU,SAAS,CACjE,CAAC;YACH,CAAC;QACF,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QAE3E,OAAO,IAAI,CAAA;;YAED,IAAI,CAAC,QAAQ;0BACC,SAAS,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;;mCAEtB,SAAS,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;;2BAEvC,IAAI,CAAC,IAAI;;SAE3B,YAAY,CAAC,CAAC;YACf,IAAI,CAAA,sCAAsC,YAAY;YAClD,SAAS,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;gBACvC,IAAI,CAAA;oBACM,YAAY;iCACC;gBACxB,CAAC,CAAC,YAAY;UACb;YACH,CAAC,CAAC,EAAE;uCAC4B,SAAS,CAAC,QAAQ;WAC9C,SAAS,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;YACvC,IAAI,CAAA;mBACM,SAAS,CAAC,QAAQ;gCACL;YACxB,CAAC,CAAC,SAAS,CAAC,QAAQ;;;;OAIrB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACjB,IAAI,CAAA;yCAC+B,aAAa;UAC5C,qBAAqB;;aAElB;YACR,CAAC,CAAC,EAAE;OACF,SAAS,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAClC,IAAI,CAAA;;;;;aAKG,SAAS,CAAC,UAAU,CAAC,MAAM;;;;;OAKjC;YACF,CAAC,CAAC,EAAE;;;OAGF,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YAC1D,OAAO,IAAI,CAAA;;eAEF,IAAI,CAAC,IAAI;eACT,GAAG;qBACG,IAAI,CAAC,IAAI;gBACd,IAAI,CAAC,KAAK,GAAG,CAAC;;aAEjB,CAAC;QACT,CAAC,CAAC;;;GAGJ,CAAC;IACH,CAAC;CACD;AAED,eAAe,GAAG,EAAE;IACnB,cAAc,CAAC,MAAM,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;IACrD,cAAc,CAAC,MAAM,CAAC,wBAAwB,EAAE,cAAc,CAAC,CAAC;AACjE,CAAC,CAAC"}
|
|
@@ -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;
|
|
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;
|
|
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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpacingScale.d.ts","sourceRoot":"","sources":["../../../src/runtime/components/SpacingScale.ts"],"names":[],"mappings":"AAsDA,MAAM,CAAC,OAAO,UAAU,QAAQ,SAE/B"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { isToken } from '@arbor-css/tokens';
|
|
2
|
+
import { css, html, LitElement } from 'lit-element';
|
|
3
|
+
import { resolveComputedTokenValue } from '../../util/resolveComputedTokenValue.js';
|
|
4
|
+
import { getContext, getPreset } from '../registration.js';
|
|
5
|
+
class SpacingScale extends LitElement {
|
|
6
|
+
constructor() {
|
|
7
|
+
super(...arguments);
|
|
8
|
+
this.preset = getPreset();
|
|
9
|
+
}
|
|
10
|
+
static get styles() {
|
|
11
|
+
return css `
|
|
12
|
+
:host {
|
|
13
|
+
display: flex;
|
|
14
|
+
flex-direction: column;
|
|
15
|
+
gap: var(--m-spacing-lg);
|
|
16
|
+
box-sizing: border-box;
|
|
17
|
+
width: 100%;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.step {
|
|
21
|
+
display: flex;
|
|
22
|
+
flex-direction: row;
|
|
23
|
+
align-items: center;
|
|
24
|
+
justify-content: space-between;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.size {
|
|
28
|
+
background: var(--m-color-main-ink);
|
|
29
|
+
color: var(--m-color-main-wash);
|
|
30
|
+
aspect-ratio: 1 / 1;
|
|
31
|
+
}
|
|
32
|
+
`;
|
|
33
|
+
}
|
|
34
|
+
render() {
|
|
35
|
+
const steps = Object.values(this.preset.$.mode.spacing)
|
|
36
|
+
.filter(isToken)
|
|
37
|
+
.map((token) => ({
|
|
38
|
+
name: token.name,
|
|
39
|
+
value: resolveComputedTokenValue(this.preset, token.name, getContext()),
|
|
40
|
+
}));
|
|
41
|
+
return html `
|
|
42
|
+
${steps.map(({ name, value }) => html `
|
|
43
|
+
<div class="step">
|
|
44
|
+
<div>${name} - ${value}</div>
|
|
45
|
+
<div class="size" style="width: ${value};"></div>
|
|
46
|
+
</div>
|
|
47
|
+
`)}
|
|
48
|
+
`;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
export default function register() {
|
|
52
|
+
customElements.define('arbor-spacing-scale', SpacingScale);
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=SpacingScale.js.map
|
|
@@ -0,0 +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,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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/components/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/components/index.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,OAAO,UAAU,QAAQ,SAS/B"}
|
|
@@ -1,12 +1,18 @@
|
|
|
1
|
+
import registerColorSwatch from './ColorSwatch.js';
|
|
1
2
|
import registerFunctionsList from './FunctionsList.js';
|
|
3
|
+
import registerIntentDemos from './IntentDemos.js';
|
|
2
4
|
import registerMixinsList from './MixinsList.js';
|
|
3
5
|
import registerModeGraph from './ModeGraph.js';
|
|
4
6
|
import registerOutputs from './Outputs.js';
|
|
7
|
+
import registerSpacingScale from './SpacingScale.js';
|
|
5
8
|
export default function register() {
|
|
6
9
|
registerModeGraph();
|
|
7
10
|
registerOutputs();
|
|
8
11
|
registerFunctionsList();
|
|
9
12
|
registerMixinsList();
|
|
13
|
+
registerIntentDemos();
|
|
14
|
+
registerSpacingScale();
|
|
15
|
+
registerColorSwatch();
|
|
10
16
|
console.debug('Arbor Runtime components registered');
|
|
11
17
|
}
|
|
12
18
|
//# 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,kBAAkB,MAAM,iBAAiB,CAAC;AACjD,OAAO,iBAAiB,MAAM,gBAAgB,CAAC;AAC/C,OAAO,eAAe,MAAM,cAAc,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;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,mBAAmB,EAAE,CAAC;IACtB,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;
|
|
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":"
|
|
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,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
|