@servicetitan/hammer-token 2.3.0 → 2.5.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.
@@ -1,15 +1,19 @@
1
- const cssUtilsFormatter = (dictionary, generateFn, hasDarkValues) => {
1
+ const cssUtilsFormatter = (
2
+ dictionary,
3
+ generateFn,
4
+ { hasDark, prefix = "" },
5
+ ) => {
2
6
  const result = dictionary.allTokens
3
7
  .filter((token) => token.name.includes("color"))
4
8
  .map((token) => {
5
- let value = getVarValue(dictionary, token);
9
+ const value = getVarValue(dictionary, token);
6
10
  const name = `${token.name.replace("Default", "")}`;
7
11
 
8
- if (hasDarkValues && token.attributes.appearance) {
9
- const darkValue = getVarValue(dictionary, token, true);
10
- return generateFn(name, value, darkValue);
12
+ if (hasDark && token.attributes.appearance) {
13
+ const darkValue = getVarValue(dictionary, token, { isDark: true });
14
+ return generateFn(name, value, { darkValue, prefix });
11
15
  }
12
- return generateFn(name, value);
16
+ return generateFn(name, value, { prefix });
13
17
  })
14
18
  .flat()
15
19
  .map((t) => `${t}`)
@@ -18,9 +22,9 @@ const cssUtilsFormatter = (dictionary, generateFn, hasDarkValues) => {
18
22
 
19
23
  const fallback = dictionary.allTokens
20
24
  .map((token) => {
21
- let value = getVarValue(dictionary, token);
25
+ const value = getVarValue(dictionary, token);
22
26
  const name = `${token.name.replace("Default", "")}`;
23
- return generateFn(name, value);
27
+ return generateFn(name, value, { prefix });
24
28
  })
25
29
  .flat()
26
30
  .map((t) => `${t}`)
@@ -69,10 +73,10 @@ const colorHasAlphaValue = (value) => {
69
73
  /**
70
74
  * Allow for CSS var instead of static value
71
75
  */
72
- const getVarValue = (dictionary, token, isDarkValue) => {
76
+ const getVarValue = (dictionary, token, { isDark } = {}) => {
73
77
  let value;
74
78
 
75
- if (isDarkValue) {
79
+ if (isDark) {
76
80
  value = JSON.stringify(token.attributes.appearance.dark.value);
77
81
  if (
78
82
  dictionary.usesReference(token.original.attributes.appearance.dark.value)
@@ -107,88 +111,92 @@ const removeDefaultFromName = (name) => {
107
111
  return name.replace("-default", "");
108
112
  };
109
113
 
110
- const generateBorderClasses = (name, value, darkValue) => {
114
+ const generateBorderClasses = (
115
+ name,
116
+ value,
117
+ { darkValue, prefix = "" } = {},
118
+ ) => {
111
119
  const classes = [];
112
120
 
113
121
  if (name.startsWith("border-radius")) {
114
122
  classes.push(
115
- `.${name} {border-radius: var(--${removeDefaultFromName(name)}, ${value})}`,
123
+ `.${prefix}${name} {border-radius: var(--${removeDefaultFromName(name)}, ${value})}`,
116
124
  );
117
125
  } else if (name.startsWith("border-width")) {
118
126
  classes.push(
119
- `.${name} {border-width: var(--${removeDefaultFromName(name)}, ${value})}`,
127
+ `.${prefix}${name} {border-width: var(--${removeDefaultFromName(name)}, ${value})}`,
120
128
  );
121
129
  } else if (name.startsWith("border-color")) {
122
130
  if (darkValue) {
123
131
  classes.push(
124
- `.${name} {border-color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
132
+ `.${prefix}${name} {border-color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
125
133
  );
126
134
  } else {
127
135
  classes.push(
128
- `.${name} {border-color: var(--${removeDefaultFromName(name)}, ${value})}`,
136
+ `.${prefix}${name} {border-color: var(--${removeDefaultFromName(name)}, ${value})}`,
129
137
  );
130
138
  }
131
139
  }
132
140
  return classes;
133
141
  };
134
142
 
135
- const generateColorClasses = (name, value, darkValue) => {
143
+ const generateColorClasses = (name, value, { darkValue, prefix = "" } = {}) => {
136
144
  const classes = [];
137
145
 
138
146
  if (darkValue) {
139
147
  if (name.startsWith("background-color")) {
140
148
  classes.push(
141
- `.${name.replace("background-color", "bg")} {background-color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
149
+ `.${prefix}${name.replace("background-color", "bg")} {background-color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
142
150
  );
143
151
  } else if (name.startsWith("foreground-color")) {
144
152
  classes.push(
145
- `.${name.replace("foreground-color", "c")} {color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
153
+ `.${prefix}${name.replace("foreground-color", "c")} {color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
146
154
  );
147
155
  } else if (name.startsWith("overlay-color")) {
148
156
  classes.push(
149
- `.${name.replace("overlay-color", "bg-overlay")} {background-color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
157
+ `.${prefix}${name.replace("overlay-color", "bg-overlay")} {background-color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
150
158
  );
151
159
  } else if (name.startsWith("status-color")) {
152
160
  classes.push(
153
- `.${name.replace("status-color", "c-status")} {color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
154
- `.${name.replace("status-color", "bg-status")} {background-color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
161
+ `.${prefix}${name.replace("status-color", "c-status")} {color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
162
+ `.${prefix}${name.replace("status-color", "bg-status")} {background-color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
155
163
  );
156
164
  if (!name.includes("danger")) {
157
165
  classes.push(
158
- `.${name.replace("status-color", "border-color-status")} {border-color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
166
+ `.${prefix}${name.replace("status-color", "border-color-status")} {border-color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
159
167
  );
160
168
  }
161
169
  } else if (name.startsWith("border-color")) {
162
170
  classes.push(
163
- `.${name} {border-color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
171
+ `.${prefix}${name} {border-color: var(--${removeDefaultFromName(name)}, light-dark(${value}, ${darkValue}))}`,
164
172
  );
165
173
  }
166
174
  } else {
167
175
  if (name.startsWith("background-color")) {
168
176
  classes.push(
169
- `.${name.replace("background-color", "bg")} {background-color: var(--${removeDefaultFromName(name)}, ${value})}`,
177
+ `.${prefix}${name.replace("background-color", "bg")} {background-color: var(--${removeDefaultFromName(name)}, ${value})}`,
170
178
  );
171
179
  } else if (name.startsWith("foreground-color")) {
172
180
  classes.push(
173
- `.${name.replace("foreground-color", "c")} {color: var(--${removeDefaultFromName(name)}, ${value})}`,
181
+ `.${prefix}${name.replace("foreground-color", "c")} {color: var(--${removeDefaultFromName(name)}, ${value})}`,
174
182
  );
175
183
  } else if (name.startsWith("overlay-color")) {
176
184
  classes.push(
177
- `.${name.replace("overlay-color", "bg-overlay")} {background-color: var(--${removeDefaultFromName(name)}, ${value})}`,
185
+ `.${prefix}${name.replace("overlay-color", "bg-overlay")} {background-color: var(--${removeDefaultFromName(name)}, ${value})}`,
178
186
  );
179
187
  } else if (name.startsWith("status-color")) {
180
188
  classes.push(
181
- `.${name.replace("status-color", "c-status")} {color: var(--${removeDefaultFromName(name)}, ${value})}`,
182
- `.${name.replace("status-color", "bg-status")} {background-color: var(--${removeDefaultFromName(name)}, ${value})}`,
189
+ `.${prefix}${name.replace("status-color", "c-status")} {color: var(--${removeDefaultFromName(name)}, ${value})}`,
190
+ `.${prefix}${name.replace("status-color", "bg-status")} {background-color: var(--${removeDefaultFromName(name)}, ${value})}`,
183
191
  );
184
192
  if (!name.includes("danger")) {
185
193
  classes.push(
186
- `.${name.replace("status-color", "border-color-status")} {border-color: var(--${removeDefaultFromName(name)}, ${value})}`,
194
+ `.${prefix}${name.replace("status-color", "border-color-status")} {border-color: var(--${removeDefaultFromName(name)}, ${value})}`,
187
195
  );
188
196
  }
189
197
  } else if (name.startsWith("border-color")) {
190
198
  classes.push(
191
- `.${name} {border-color: var(--${removeDefaultFromName(name)}, ${value})}`,
199
+ `.${prefix}${name} {border-color: var(--${removeDefaultFromName(name)}, ${value})}`,
192
200
  );
193
201
  }
194
202
  }
@@ -196,21 +204,21 @@ const generateColorClasses = (name, value, darkValue) => {
196
204
  return classes;
197
205
  };
198
206
 
199
- const generateFontClasses = (name, value) => {
207
+ const generateFontClasses = (name, value, { prefix = "" } = {}) => {
200
208
  const classes = [];
201
209
 
202
210
  if (name.startsWith("typography")) {
203
211
  if (name.includes("-font-family")) {
204
212
  classes.push(
205
- `.${name.replace("typography", "ff").replace("-font-family", "")} {font-family: ${value}}`,
213
+ `.${prefix}${name.replace("typography", "ff").replace("-font-family", "")} {font-family: ${value}}`,
206
214
  );
207
215
  } else if (name.includes("-font-weight")) {
208
216
  classes.push(
209
- `.${name.replace("typography", "fw").replace("-font-weight", "")} {font-weight: ${value}}`,
217
+ `.${prefix}${name.replace("typography", "fw").replace("-font-weight", "")} {font-weight: ${value}}`,
210
218
  );
211
219
  } else if (name.includes("-size")) {
212
220
  classes.push(
213
- `.${name.replace("typography", "fs").replace("-size", "")} {font-size: ${value}}`,
221
+ `.${prefix}${name.replace("typography", "fs").replace("-size", "")} {font-size: ${value}}`,
214
222
  );
215
223
  }
216
224
  }
@@ -218,7 +226,7 @@ const generateFontClasses = (name, value) => {
218
226
  return classes;
219
227
  };
220
228
 
221
- const generateSpacingClasses = (name, value) => {
229
+ const generateSpacingClasses = (name, value, { prefix = "" } = {}) => {
222
230
  const nameWithoutPrefix = name.substring(name.indexOf("-"));
223
231
 
224
232
  const directions = [
@@ -233,14 +241,18 @@ const generateSpacingClasses = (name, value) => {
233
241
 
234
242
  directions.forEach((direction) => {
235
243
  classes.push(
236
- `.m-${direction}${nameWithoutPrefix} {margin-${direction}: var(--${name}, ${value})}`,
244
+ `.${prefix}m-${direction}${nameWithoutPrefix} {margin-${direction}: var(--${name}, ${value})}`,
237
245
  );
238
246
  classes.push(
239
- `.p-${direction}${nameWithoutPrefix} {padding-${direction}: var(--${name}, ${value})}`,
247
+ `.${prefix}p-${direction}${nameWithoutPrefix} {padding-${direction}: var(--${name}, ${value})}`,
240
248
  );
241
249
  });
242
- classes.push(`.m${nameWithoutPrefix} {margin: var(--${name}, ${value})}`);
243
- classes.push(`.p${nameWithoutPrefix} {padding: var(--${name}, ${value})}`);
250
+ classes.push(
251
+ `.${prefix}m${nameWithoutPrefix} {margin: var(--${name}, ${value})}`,
252
+ );
253
+ classes.push(
254
+ `.${prefix}p${nameWithoutPrefix} {padding: var(--${name}, ${value})}`,
255
+ );
244
256
 
245
257
  return classes;
246
258
  };
package/type/types.ts CHANGED
@@ -152,6 +152,57 @@ export type Semantic = {
152
152
  BorderColorSubdued: TokenObj;
153
153
  BorderColorPrimary: TokenObj;
154
154
  BorderColorDanger: TokenObj;
155
+ ChartsMonochrome1: TokenObj;
156
+ ChartsMonochrome1Stroke: TokenObj;
157
+ ChartsMonochrome1Pattern: TokenObj;
158
+ ChartsMonochrome2: TokenObj;
159
+ ChartsMonochrome2Stroke: TokenObj;
160
+ ChartsMonochrome2Pattern: TokenObj;
161
+ ChartsMonochrome3: TokenObj;
162
+ ChartsMonochrome3Stroke: TokenObj;
163
+ ChartsMonochrome3Pattern: TokenObj;
164
+ ChartsMonochrome4: TokenObj;
165
+ ChartsMonochrome4Stroke: TokenObj;
166
+ ChartsMonochrome4Pattern: TokenObj;
167
+ ChartsCategorical1: TokenObj;
168
+ ChartsCategorical1Stroke: TokenObj;
169
+ ChartsCategorical1Pattern: TokenObj;
170
+ ChartsCategorical2: TokenObj;
171
+ ChartsCategorical2Stroke: TokenObj;
172
+ ChartsCategorical2Pattern: TokenObj;
173
+ ChartsCategorical3: TokenObj;
174
+ ChartsCategorical3Stroke: TokenObj;
175
+ ChartsCategorical3Pattern: TokenObj;
176
+ ChartsCategorical4: TokenObj;
177
+ ChartsCategorical4Stroke: TokenObj;
178
+ ChartsCategorical4Pattern: TokenObj;
179
+ ChartsCategorical5: TokenObj;
180
+ ChartsCategorical5Stroke: TokenObj;
181
+ ChartsCategorical5Pattern: TokenObj;
182
+ ChartsCategorical6: TokenObj;
183
+ ChartsCategorical6Stroke: TokenObj;
184
+ ChartsCategorical6Pattern: TokenObj;
185
+ ChartsCategorical7: TokenObj;
186
+ ChartsCategorical7Stroke: TokenObj;
187
+ ChartsCategorical7Pattern: TokenObj;
188
+ ChartsCategorical8: TokenObj;
189
+ ChartsCategorical8Stroke: TokenObj;
190
+ ChartsCategorical8Pattern: TokenObj;
191
+ ChartsCategorical9: TokenObj;
192
+ ChartsCategorical9Stroke: TokenObj;
193
+ ChartsCategorical9Pattern: TokenObj;
194
+ ChartsChartsStatusSuccess: TokenObj;
195
+ ChartsChartsStatusSuccessStroke: TokenObj;
196
+ ChartsChartsStatusSuccessPattern: TokenObj;
197
+ ChartsChartsStatusWarning: TokenObj;
198
+ ChartsChartsStatusWarningStroke: TokenObj;
199
+ ChartsChartsStatusWarningPattern: TokenObj;
200
+ ChartsChartsStatusDanger: TokenObj;
201
+ ChartsChartsStatusDangerStroke: TokenObj;
202
+ ChartsChartsStatusDangerPattern: TokenObj;
203
+ ChartsChartsStatusNeutral: TokenObj;
204
+ ChartsChartsStatusNeutralStroke: TokenObj;
205
+ ChartsChartsStatusNeutralPattern: TokenObj;
155
206
  FocusRingColor: TokenObj;
156
207
  FocusRingColorDanger: TokenObj;
157
208
  FocusRingWidth: TokenObj;