Skip to content
This repository was archived by the owner on Dec 28, 2022. It is now read-only.

Commit 1546a1c

Browse files
author
Jiří Třečák
committed
Added key value renderer and implementations for everything except value formatter
1 parent f975d0b commit 1546a1c

14 files changed

+83
-6
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
.build/*

src/borders.pr

+8-1
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,11 @@ Generate all border tokens as named variables.
44
Tokens are named by their group path and then name,
55
and their value rendered using `rendered-border` blueprint
66

7-
*}
7+
*}
8+
:root {
9+
{[ for token in @ds.tokensByType("Border") ]}
10+
{[ inject "rendered-token-var" context token /]}
11+
12+
13+
{[/]}
14+
}

src/gradients.pr

+8-1
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,11 @@ Generate all gradient tokens as named variables.
44
Tokens are named by their group path and then name,
55
and their value rendered using `gradient-color` blueprint
66

7-
*}
7+
*}
8+
:root {
9+
{[ for token in @ds.tokensByType("Gradient") ]}
10+
{[ inject "rendered-token-var" context token /]}
11+
12+
13+
{[/]}
14+
}

src/object-renderers/rendered-name.pr renamed to src/main-renderers/rendered-name.pr

+2-1
Original file line numberDiff line numberDiff line change
@@ -43,4 +43,5 @@ Rendered as:
4343
{[ prefix = "" /]}
4444
{[/]}
4545
{[ let tokenName = @js.readableVariableName(context, tokenGroup, prefix) /]}
46-
{{ tokenName }}
46+
{{ tokenName }}
47+
{[ let test = @init /]}

src/object-renderers/rendered-token-var.pr renamed to src/main-renderers/rendered-token-var.pr

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,4 +23,4 @@ Rendered as:
2323

2424
*}
2525
{[ let token = context /]}
26-
{[ inject "rendered-name" context token /]}: "value";
26+
--{[ inject "rendered-name" context token /]}: {[ inject "rendered-value" context token /]};

src/main-renderers/rendered-value.pr

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
{*
2+
3+
Injectable blueprint that represents token value as css.valid string
4+
Note that this only converts the value, name is converted somewhere else
5+
6+
7+
Source data: Any Token (https://developers.supernova.io/design-system-data/tokens)
8+
Note: Value is passed as `context` property because it is injected
9+
10+
{
11+
"context": {
12+
"id": string
13+
"name": string
14+
"description": string
15+
"tokenType": Depends on the token type
16+
"origin": ItemOrigin | null
17+
"value": Depends on the token type
18+
}
19+
}
20+
21+
22+
Rendered as:
23+
24+
[group1][group2][...][name];
25+
26+
*}
27+
{[ let token = context /]}
28+
{[ switch context.tokenType ]}
29+
{[ case "Color" ]}
30+
{[ inject "rendered-color" context token /]}
31+
{[ case "Typography" ]}
32+
{[ inject "rendered-typography" context token /]}
33+
{[ case "Shadow" ]}
34+
{[ inject "rendered-shadow" context token /]}
35+
{[ case "Border" ]}
36+
{[ inject "rendered-border" context token /]}
37+
{[ case "Measure" ]}
38+
{[ inject "rendered-measure" context token /]}
39+
{[ case "Gradient" ]}
40+
{[ inject "rendered-gradient" context token /]}
41+
{[/]}

src/measures.pr

+8-1
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,11 @@ Generate all measure tokens as named variables.
44
Tokens are named by their group path and then name,
55
and their value rendered using `rendered-measure` blueprint
66

7-
*}
7+
*}
8+
:root {
9+
{[ for token in @ds.tokensByType("Measure") ]}
10+
{[ inject "rendered-token-var" context token /]}
11+
12+
13+
{[/]}
14+
}

src/shadows.pr

+8-1
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,11 @@ Generate all shadow tokens as named variables.
44
Tokens are named by their group path and then name,
55
and their value rendered using `shadow-color` blueprint
66

7-
*}
7+
*}
8+
:root {
9+
{[ for token in @ds.tokensByType("Shadow") ]}
10+
{[ inject "rendered-token-var" context token /]}
11+
12+
13+
{[/]}
14+
}

src/object-renderers/rendered-border.pr renamed to src/token-renderers/rendered-border.pr

+1
Original file line numberDiff line numberDiff line change
@@ -33,3 +33,4 @@ Rendered as:
3333
Xpx solid (rendered-color.pr);
3434

3535
*}
36+
Border

src/object-renderers/rendered-color.pr renamed to src/token-renderers/rendered-color.pr

+1
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,4 @@ Rendered as:
2626
rgba(r, g, b, a) if it is semi-transparent color
2727

2828
*}
29+
Color

src/object-renderers/rendered-gradient.pr renamed to src/token-renderers/rendered-gradient.pr

+1
Original file line numberDiff line numberDiff line change
@@ -30,3 +30,4 @@ Rendered as:
3030
Xpx solid (rendered-color.pr);
3131

3232
*}
33+
Gradient

src/object-renderers/rendered-measure.pr renamed to src/token-renderers/rendered-measure.pr

+1
Original file line numberDiff line numberDiff line change
@@ -16,3 +16,4 @@ Note: Value is passed as `context` property because it is injected
1616
}
1717

1818
*}
19+
Measure

src/object-renderers/rendered-shadow.pr renamed to src/token-renderers/rendered-shadow.pr

+1
Original file line numberDiff line numberDiff line change
@@ -48,3 +48,4 @@ Rendered as:
4848
Xpx Xpx Xpx [Rendered Color];
4949

5050
*}
51+
Shadow

src/object-renderers/rendered-typography.pr renamed to src/token-renderers/rendered-typography.pr

+1
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,4 @@ Rendered as:
2020
[text]
2121

2222
*}
23+
Typography

0 commit comments

Comments
 (0)