@atlaskit/tokens 0.6.3 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/css/atlassian-dark.css +43 -3
  3. package/css/atlassian-light.css +40 -0
  4. package/dist/cjs/artifacts/rename-mapping.js +77 -13
  5. package/dist/cjs/artifacts/token-default-values.js +40 -0
  6. package/dist/cjs/artifacts/token-names.js +40 -0
  7. package/dist/cjs/artifacts/tokens-raw/atlassian-dark.js +936 -144
  8. package/dist/cjs/artifacts/tokens-raw/atlassian-light.js +922 -130
  9. package/dist/cjs/figma/synchronize-figma-tokens.js +34 -9
  10. package/dist/cjs/get-token.js +1 -1
  11. package/dist/cjs/tokens/atlassian-dark/color/accent.js +120 -32
  12. package/dist/cjs/tokens/atlassian-dark/deprecated/deprecated.js +69 -3
  13. package/dist/cjs/tokens/atlassian-light/color/accent.js +112 -24
  14. package/dist/cjs/tokens/atlassian-light/deprecated/deprecated.js +66 -0
  15. package/dist/cjs/tokens/default/color/accent.js +234 -50
  16. package/dist/cjs/tokens/default/deprecated/deprecated.js +159 -13
  17. package/dist/cjs/version.json +1 -1
  18. package/dist/es2019/artifacts/rename-mapping.js +77 -13
  19. package/dist/es2019/artifacts/token-default-values.js +40 -0
  20. package/dist/es2019/artifacts/token-names.js +40 -0
  21. package/dist/es2019/artifacts/tokens-raw/atlassian-dark.js +936 -144
  22. package/dist/es2019/artifacts/tokens-raw/atlassian-light.js +922 -130
  23. package/dist/es2019/figma/synchronize-figma-tokens.js +32 -9
  24. package/dist/es2019/get-token.js +1 -1
  25. package/dist/es2019/tokens/atlassian-dark/color/accent.js +120 -32
  26. package/dist/es2019/tokens/atlassian-dark/deprecated/deprecated.js +69 -3
  27. package/dist/es2019/tokens/atlassian-light/color/accent.js +112 -24
  28. package/dist/es2019/tokens/atlassian-light/deprecated/deprecated.js +66 -0
  29. package/dist/es2019/tokens/default/color/accent.js +234 -50
  30. package/dist/es2019/tokens/default/deprecated/deprecated.js +159 -13
  31. package/dist/es2019/version.json +1 -1
  32. package/dist/esm/artifacts/rename-mapping.js +77 -13
  33. package/dist/esm/artifacts/token-default-values.js +40 -0
  34. package/dist/esm/artifacts/token-names.js +40 -0
  35. package/dist/esm/artifacts/tokens-raw/atlassian-dark.js +936 -144
  36. package/dist/esm/artifacts/tokens-raw/atlassian-light.js +922 -130
  37. package/dist/esm/figma/synchronize-figma-tokens.js +34 -9
  38. package/dist/esm/get-token.js +1 -1
  39. package/dist/esm/tokens/atlassian-dark/color/accent.js +120 -32
  40. package/dist/esm/tokens/atlassian-dark/deprecated/deprecated.js +69 -3
  41. package/dist/esm/tokens/atlassian-light/color/accent.js +112 -24
  42. package/dist/esm/tokens/atlassian-light/deprecated/deprecated.js +66 -0
  43. package/dist/esm/tokens/default/color/accent.js +234 -50
  44. package/dist/esm/tokens/default/deprecated/deprecated.js +159 -13
  45. package/dist/esm/version.json +1 -1
  46. package/dist/types/artifacts/token-default-values.d.ts +40 -0
  47. package/dist/types/artifacts/token-names.d.ts +80 -0
  48. package/dist/types/artifacts/types-internal.d.ts +1 -1
  49. package/dist/types/artifacts/types.d.ts +1 -1
  50. package/dist/types/figma/synchronize-figma-tokens.d.ts +9 -1
  51. package/dist/types/tokens/default/utility/utility.d.ts +10 -10
  52. package/dist/types/types.d.ts +98 -24
  53. package/package.json +1 -1
@@ -26,8 +26,8 @@ function createPaint(hex) {
26
26
  }
27
27
 
28
28
  if (hexValue.length === 4) {
29
- // We have a half hex, double it!
30
- hexValue = `${hexValue}${hexValue.slice(1)}`;
29
+ // We have a 3 character shorthand hex, expand it!
30
+ hexValue = hexValue.split('').map(char => char === '#' ? char : `${char}${char}`).join('');
31
31
  }
32
32
 
33
33
  if (hexValue.length !== 9 && hexValue.length !== 7) {
@@ -74,6 +74,30 @@ function createEffects(value) {
74
74
  };
75
75
  });
76
76
  }
77
+ /**
78
+ * Formats a token description for use in Figma,
79
+ * including deprecated warnings
80
+ *
81
+ * @param token
82
+ */
83
+
84
+
85
+ function formatDescription(token) {
86
+ let description = token.attributes.description.trim() || '';
87
+
88
+ if (token.attributes.state === 'deprecated') {
89
+ // The token is deprecated. Prefix a warning to the description!
90
+ // If the token has multiple replacement options,
91
+ // flatten them into a string
92
+ const replacements = Array.isArray(token.attributes.replacement) ? token.attributes.replacement.join(' | ') : token.attributes.replacement; // If the token has replacements, prefix them to the description
93
+
94
+ const prefix = replacements ? `use ${replacements} instead` : 'do not use';
95
+ description = `DEPRECATED ${prefix}. \n${description}`;
96
+ }
97
+
98
+ return description;
99
+ }
100
+
77
101
  /**
78
102
  * Adds tokens under a specified theme as paint styles to Figma.
79
103
  *
@@ -81,8 +105,6 @@ function createEffects(value) {
81
105
  * @param {*} tokens
82
106
  * @param {*} renameMap mapping object for tokens that should be renamed. example { 'old/token': 'new/token'}
83
107
  */
84
-
85
-
86
108
  function synchronizeFigmaTokens(themeName, tokens, renameMap = {}) {
87
109
  const figma = window.figma;
88
110
  const localPaintStyles = figma.getLocalPaintStyles();
@@ -115,7 +137,7 @@ function synchronizeFigmaTokens(themeName, tokens, renameMap = {}) {
115
137
 
116
138
  console.log(`=> ${style.name} shadow style has been updated!`);
117
139
  style.effects = createEffects(token.value);
118
- style.description = (token.attributes.description || '').trim(); // Remove from themeValues so it isn't picked up as a new token.
140
+ style.description = formatDescription(token); // Remove from themeValues so it isn't picked up as a new token.
119
141
 
120
142
  delete tokens[style.name];
121
143
  }); // Iterate through all local figma styles first
@@ -152,7 +174,7 @@ function synchronizeFigmaTokens(themeName, tokens, renameMap = {}) {
152
174
  console.log(`=> ${style.name} paint style has been updated!`); // Mutating is how Figma updates.
153
175
 
154
176
  style.paints = [createPaint(token.value)];
155
- style.description = (token.attributes.description || '').trim(); // Remove from themeValues so it isn't picked up as a new token.
177
+ style.description = formatDescription(token); // Remove from themeValues so it isn't picked up as a new token.
156
178
 
157
179
  delete tokens[style.name];
158
180
  }); // eslint-disable-next-line guard-for-in
@@ -163,7 +185,7 @@ function synchronizeFigmaTokens(themeName, tokens, renameMap = {}) {
163
185
  if (token.attributes.group === 'paint') {
164
186
  const newStyle = figma.createPaintStyle();
165
187
  newStyle.name = key;
166
- newStyle.description = (token.attributes.description || '').trim();
188
+ newStyle.description = formatDescription(token);
167
189
  newStyle.paints = [createPaint(token.value)];
168
190
  console.log(`=> ${key} paint style has been added!`);
169
191
  }
@@ -171,7 +193,7 @@ function synchronizeFigmaTokens(themeName, tokens, renameMap = {}) {
171
193
  if (token.attributes.group === 'shadow') {
172
194
  const newStyle = figma.createEffectStyle();
173
195
  newStyle.name = key;
174
- newStyle.description = (token.attributes.description || '').trim();
196
+ newStyle.description = formatDescription(token);
175
197
  newStyle.effects = createEffects(token.value);
176
198
  console.log(`=> ${key} shadow style has been added!`);
177
199
  }
@@ -182,7 +204,8 @@ if (typeof module !== 'undefined') {
182
204
  module.exports = {
183
205
  synchronizeFigmaTokens,
184
206
  createPaint,
185
- createEffects
207
+ createEffects,
208
+ formatDescription
186
209
  };
187
210
  }
188
211
 
@@ -1,7 +1,7 @@
1
1
  import warnOnce from '@atlaskit/ds-lib/warn-once';
2
2
  import tokens from './artifacts/token-names';
3
3
  const name = "@atlaskit/tokens";
4
- const version = "0.6.3";
4
+ const version = "0.7.0";
5
5
 
6
6
  function token(path, fallback) {
7
7
  let token = tokens[path];
@@ -3,28 +3,68 @@ const color = {
3
3
  text: {
4
4
  accent: {
5
5
  blue: {
6
- value: 'B300'
6
+ '[default]': {
7
+ value: 'B300'
8
+ },
9
+ bolder: {
10
+ value: 'B200'
11
+ }
7
12
  },
8
13
  red: {
9
- value: 'R300'
14
+ '[default]': {
15
+ value: 'R300'
16
+ },
17
+ bolder: {
18
+ value: 'R200'
19
+ }
10
20
  },
11
21
  orange: {
12
- value: 'O300'
22
+ '[default]': {
23
+ value: 'O300'
24
+ },
25
+ bolder: {
26
+ value: 'O200'
27
+ }
13
28
  },
14
29
  yellow: {
15
- value: 'Y300'
30
+ '[default]': {
31
+ value: 'Y300'
32
+ },
33
+ bolder: {
34
+ value: 'Y200'
35
+ }
16
36
  },
17
37
  green: {
18
- value: 'G300'
38
+ '[default]': {
39
+ value: 'G300'
40
+ },
41
+ bolder: {
42
+ value: 'G200'
43
+ }
19
44
  },
20
45
  purple: {
21
- value: 'P300'
46
+ '[default]': {
47
+ value: 'P300'
48
+ },
49
+ bolder: {
50
+ value: 'P200'
51
+ }
22
52
  },
23
53
  teal: {
24
- value: 'T300'
54
+ '[default]': {
55
+ value: 'T300'
56
+ },
57
+ bolder: {
58
+ value: 'T200'
59
+ }
25
60
  },
26
61
  magenta: {
27
- value: 'M300'
62
+ '[default]': {
63
+ value: 'M300'
64
+ },
65
+ bolder: {
66
+ value: 'M200'
67
+ }
28
68
  }
29
69
  }
30
70
  },
@@ -87,67 +127,115 @@ const color = {
87
127
  background: {
88
128
  accent: {
89
129
  blue: {
90
- '[default]': {
130
+ subtlest: {
131
+ value: 'B1000'
132
+ },
133
+ subtler: {
91
134
  value: 'B900'
92
135
  },
93
- bold: {
94
- value: 'B700'
136
+ subtle: {
137
+ value: 'B800'
138
+ },
139
+ bolder: {
140
+ value: 'B400'
95
141
  }
96
142
  },
97
143
  red: {
98
- '[default]': {
144
+ subtlest: {
145
+ value: 'R1000'
146
+ },
147
+ subtler: {
99
148
  value: 'R900'
100
149
  },
101
- bold: {
102
- value: 'R700'
150
+ subtle: {
151
+ value: 'R800'
152
+ },
153
+ bolder: {
154
+ value: 'R400'
103
155
  }
104
156
  },
105
157
  orange: {
106
- '[default]': {
158
+ subtlest: {
159
+ value: 'O1000'
160
+ },
161
+ subtler: {
107
162
  value: 'O900'
108
163
  },
109
- bold: {
110
- value: 'O700'
164
+ subtle: {
165
+ value: 'O800'
166
+ },
167
+ bolder: {
168
+ value: 'O400'
111
169
  }
112
170
  },
113
171
  yellow: {
114
- '[default]': {
172
+ subtlest: {
173
+ value: 'Y1000'
174
+ },
175
+ subtler: {
115
176
  value: 'Y900'
116
177
  },
117
- bold: {
118
- value: 'Y700'
178
+ subtle: {
179
+ value: 'Y800'
180
+ },
181
+ bolder: {
182
+ value: 'Y400'
119
183
  }
120
184
  },
121
185
  green: {
122
- '[default]': {
186
+ subtlest: {
187
+ value: 'G1000'
188
+ },
189
+ subtler: {
123
190
  value: 'G900'
124
191
  },
125
- bold: {
126
- value: 'G700'
192
+ subtle: {
193
+ value: 'G800'
194
+ },
195
+ bolder: {
196
+ value: 'G400'
127
197
  }
128
198
  },
129
199
  purple: {
130
- '[default]': {
200
+ subtlest: {
201
+ value: 'P1000'
202
+ },
203
+ subtler: {
131
204
  value: 'P900'
132
205
  },
133
- bold: {
134
- value: 'P700'
206
+ subtle: {
207
+ value: 'P800'
208
+ },
209
+ bolder: {
210
+ value: 'P400'
135
211
  }
136
212
  },
137
213
  teal: {
138
- '[default]': {
214
+ subtlest: {
215
+ value: 'T1000'
216
+ },
217
+ subtler: {
139
218
  value: 'T900'
140
219
  },
141
- bold: {
142
- value: 'T700'
220
+ subtle: {
221
+ value: 'T800'
222
+ },
223
+ bolder: {
224
+ value: 'T400'
143
225
  }
144
226
  },
145
227
  magenta: {
146
- '[default]': {
228
+ subtlest: {
229
+ value: 'M1000'
230
+ },
231
+ subtler: {
147
232
  value: 'M900'
148
233
  },
149
- bold: {
150
- value: 'M700'
234
+ subtle: {
235
+ value: 'M800'
236
+ },
237
+ bolder: {
238
+ value: 'M400'
151
239
  }
152
240
  }
153
241
  }
@@ -42,19 +42,85 @@ const color = {
42
42
  }
43
43
  },
44
44
  background: {
45
+ accent: {
46
+ blue: {
47
+ '[default]': {
48
+ value: 'B900'
49
+ },
50
+ bold: {
51
+ value: 'B700'
52
+ }
53
+ },
54
+ red: {
55
+ '[default]': {
56
+ value: 'R900'
57
+ },
58
+ bold: {
59
+ value: 'R700'
60
+ }
61
+ },
62
+ orange: {
63
+ '[default]': {
64
+ value: 'O900'
65
+ },
66
+ bold: {
67
+ value: 'O700'
68
+ }
69
+ },
70
+ yellow: {
71
+ '[default]': {
72
+ value: 'Y900'
73
+ },
74
+ bold: {
75
+ value: 'Y700'
76
+ }
77
+ },
78
+ green: {
79
+ '[default]': {
80
+ value: 'G900'
81
+ },
82
+ bold: {
83
+ value: 'G700'
84
+ }
85
+ },
86
+ purple: {
87
+ '[default]': {
88
+ value: 'P900'
89
+ },
90
+ bold: {
91
+ value: 'P700'
92
+ }
93
+ },
94
+ teal: {
95
+ '[default]': {
96
+ value: 'T900'
97
+ },
98
+ bold: {
99
+ value: 'T700'
100
+ }
101
+ },
102
+ magenta: {
103
+ '[default]': {
104
+ value: 'M900'
105
+ },
106
+ bold: {
107
+ value: 'M700'
108
+ }
109
+ }
110
+ },
45
111
  blanket: {
46
112
  value: 'DN-100A'
47
113
  },
48
114
  brand: {
49
115
  '[default]': {
50
116
  '[default]': {
51
- value: 'DN200A'
117
+ value: 'B1000'
52
118
  },
53
119
  hovered: {
54
- value: 'DN300A'
120
+ value: 'B900'
55
121
  },
56
122
  pressed: {
57
- value: 'DN400A'
123
+ value: 'B800'
58
124
  }
59
125
  }
60
126
  },
@@ -3,28 +3,68 @@ const color = {
3
3
  text: {
4
4
  accent: {
5
5
  blue: {
6
- value: 'B800'
6
+ '[default]': {
7
+ value: 'B800'
8
+ },
9
+ bolder: {
10
+ value: 'B900'
11
+ }
7
12
  },
8
13
  red: {
9
- value: 'R800'
14
+ '[default]': {
15
+ value: 'R800'
16
+ },
17
+ bolder: {
18
+ value: 'R900'
19
+ }
10
20
  },
11
21
  orange: {
12
- value: 'O800'
22
+ '[default]': {
23
+ value: 'O800'
24
+ },
25
+ bolder: {
26
+ value: 'O900'
27
+ }
13
28
  },
14
29
  yellow: {
15
- value: 'Y800'
30
+ '[default]': {
31
+ value: 'Y800'
32
+ },
33
+ bolder: {
34
+ value: 'Y900'
35
+ }
16
36
  },
17
37
  green: {
18
- value: 'G800'
38
+ '[default]': {
39
+ value: 'G800'
40
+ },
41
+ bolder: {
42
+ value: 'G900'
43
+ }
19
44
  },
20
45
  purple: {
21
- value: 'P800'
46
+ '[default]': {
47
+ value: 'P800'
48
+ },
49
+ bolder: {
50
+ value: 'P900'
51
+ }
22
52
  },
23
53
  teal: {
24
- value: 'T800'
54
+ '[default]': {
55
+ value: 'T800'
56
+ },
57
+ bolder: {
58
+ value: 'T900'
59
+ }
25
60
  },
26
61
  magenta: {
27
- value: 'M800'
62
+ '[default]': {
63
+ value: 'M800'
64
+ },
65
+ bolder: {
66
+ value: 'M900'
67
+ }
28
68
  }
29
69
  }
30
70
  },
@@ -87,67 +127,115 @@ const color = {
87
127
  background: {
88
128
  accent: {
89
129
  blue: {
90
- '[default]': {
130
+ subtlest: {
131
+ value: 'B100'
132
+ },
133
+ subtler: {
91
134
  value: 'B200'
92
135
  },
93
- bold: {
136
+ subtle: {
94
137
  value: 'B400'
138
+ },
139
+ bolder: {
140
+ value: 'B700'
95
141
  }
96
142
  },
97
143
  red: {
98
- '[default]': {
144
+ subtlest: {
145
+ value: 'R100'
146
+ },
147
+ subtler: {
99
148
  value: 'R200'
100
149
  },
101
- bold: {
150
+ subtle: {
102
151
  value: 'R400'
152
+ },
153
+ bolder: {
154
+ value: 'R700'
103
155
  }
104
156
  },
105
157
  orange: {
106
- '[default]': {
158
+ subtlest: {
159
+ value: 'O100'
160
+ },
161
+ subtler: {
107
162
  value: 'O200'
108
163
  },
109
- bold: {
164
+ subtle: {
110
165
  value: 'O400'
166
+ },
167
+ bolder: {
168
+ value: 'O700'
111
169
  }
112
170
  },
113
171
  yellow: {
114
- '[default]': {
172
+ subtlest: {
173
+ value: 'Y100'
174
+ },
175
+ subtler: {
115
176
  value: 'Y200'
116
177
  },
117
- bold: {
178
+ subtle: {
118
179
  value: 'Y400'
180
+ },
181
+ bolder: {
182
+ value: 'Y700'
119
183
  }
120
184
  },
121
185
  green: {
122
- '[default]': {
186
+ subtlest: {
187
+ value: 'G100'
188
+ },
189
+ subtler: {
123
190
  value: 'G200'
124
191
  },
125
- bold: {
192
+ subtle: {
126
193
  value: 'G400'
194
+ },
195
+ bolder: {
196
+ value: 'G700'
127
197
  }
128
198
  },
129
199
  purple: {
130
- '[default]': {
200
+ subtlest: {
201
+ value: 'P100'
202
+ },
203
+ subtler: {
131
204
  value: 'P200'
132
205
  },
133
- bold: {
206
+ subtle: {
134
207
  value: 'P400'
208
+ },
209
+ bolder: {
210
+ value: 'P700'
135
211
  }
136
212
  },
137
213
  teal: {
138
- '[default]': {
214
+ subtlest: {
215
+ value: 'T100'
216
+ },
217
+ subtler: {
139
218
  value: 'T200'
140
219
  },
141
- bold: {
220
+ subtle: {
142
221
  value: 'T400'
222
+ },
223
+ bolder: {
224
+ value: 'T700'
143
225
  }
144
226
  },
145
227
  magenta: {
146
- '[default]': {
228
+ subtlest: {
229
+ value: 'M100'
230
+ },
231
+ subtler: {
147
232
  value: 'M200'
148
233
  },
149
- bold: {
234
+ subtle: {
150
235
  value: 'M400'
236
+ },
237
+ bolder: {
238
+ value: 'M700'
151
239
  }
152
240
  }
153
241
  }
@@ -42,6 +42,72 @@ const color = {
42
42
  }
43
43
  },
44
44
  background: {
45
+ accent: {
46
+ blue: {
47
+ '[default]': {
48
+ value: 'B200'
49
+ },
50
+ bold: {
51
+ value: 'B400'
52
+ }
53
+ },
54
+ red: {
55
+ '[default]': {
56
+ value: 'R200'
57
+ },
58
+ bold: {
59
+ value: 'R400'
60
+ }
61
+ },
62
+ orange: {
63
+ '[default]': {
64
+ value: 'O200'
65
+ },
66
+ bold: {
67
+ value: 'O400'
68
+ }
69
+ },
70
+ yellow: {
71
+ '[default]': {
72
+ value: 'Y200'
73
+ },
74
+ bold: {
75
+ value: 'Y400'
76
+ }
77
+ },
78
+ green: {
79
+ '[default]': {
80
+ value: 'G200'
81
+ },
82
+ bold: {
83
+ value: 'G400'
84
+ }
85
+ },
86
+ purple: {
87
+ '[default]': {
88
+ value: 'P200'
89
+ },
90
+ bold: {
91
+ value: 'P400'
92
+ }
93
+ },
94
+ teal: {
95
+ '[default]': {
96
+ value: 'T200'
97
+ },
98
+ bold: {
99
+ value: 'T400'
100
+ }
101
+ },
102
+ magenta: {
103
+ '[default]': {
104
+ value: 'M200'
105
+ },
106
+ bold: {
107
+ value: 'M400'
108
+ }
109
+ }
110
+ },
45
111
  blanket: {
46
112
  value: 'N500A'
47
113
  },