@terrazzo/token-tools 0.8.1 → 0.9.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # @terrazzo/token-tools
2
2
 
3
+ ## 0.9.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#497](https://github.com/terrazzoapp/terrazzo/pull/497) [`9b80fd4`](https://github.com/terrazzoapp/terrazzo/commit/9b80fd4edd1198021d8e309483e8cd8551fe79dc) Thanks [@bschlenk](https://github.com/bschlenk)! - - potential 5x speedup for @terrazzo/plugin-css
8
+ - removed isTokenMatch from @terrazzo/token-tools
9
+
3
10
  ## 0.8.1
4
11
 
5
12
  ### Patch Changes
package/dist/index.d.ts CHANGED
@@ -30,8 +30,6 @@ declare function tokenToCulori(value: ColorValueNormalized): Color | undefined;
30
30
  //#region src/id.d.ts
31
31
  /** Is this token an alias of another? */
32
32
  declare function isAlias(value: string): boolean;
33
- /** Match token against globs */
34
- declare function isTokenMatch(tokenID: string, globPatterns: string[]): boolean;
35
33
  /** Same as isTokenMatch but returns the matching pattern */
36
34
  declare function getTokenMatch(tokenId: string, globPatterns: string[]): string | undefined;
37
35
  /** Make an alias */
@@ -66,5 +64,5 @@ declare function validateCustomTransform(value: unknown, {
66
64
  //# sourceMappingURL=transform.d.ts.map
67
65
 
68
66
  //#endregion
69
- export { AliasToken, AliasValue, BooleanToken, BooleanTokenNormalized, BooleanValue, BorderToken, BorderTokenNormalized, BorderValue, BorderValueNormalized, CSS_TO_CULORI, CULORI_TO_CSS, ColorSpace, ColorToken, ColorTokenNormalized, ColorValue, ColorValueNormalized, CubicBezierToken, CubicBezierTokenNormalized, CubicBezierValue, CustomTransformOptions, DimensionToken, DimensionTokenNormalized, DimensionValue, DurationToken, DurationTokenNormalized, DurationValue, FontFamilyToken, FontFamilyTokenNormalized, FontFamilyValue, FontFamilyValueNormalized, FontWeightToken, FontWeightTokenNormalized, FontWeightValue, FontWeightValueNormalized, GradientStop, GradientStopNormalized, GradientToken, GradientTokenNormalized, GradientValue, GradientValueNormalized, Group, GroupCore, GroupOrToken, LinkToken, LinkTokenNormalized, LinkValue, ModeMap, NumberToken, NumberTokenNormalized, NumberValue, ShadowToken, ShadowTokenNormalized, ShadowValue, ShadowValueNormalized, StringToken, StringTokenNormalized, StringValue, StrokeStyleToken, StrokeStyleTokenNormalized, StrokeStyleValue, StrokeStyleValueExpanded, Token, TokenCore, TokenMode, TokenNormalized, TokenNormalizedCore, TokenNormalizedSet, TokensSet, TransitionToken, TransitionTokenNormalized, TransitionValue, TransitionValueNormalized, TypographyToken, TypographyTokenNormalized, TypographyValue, TypographyValueNormalized, getTokenMatch, isAlias, isTokenMatch, kebabCase, makeAlias, padStr, parseAlias, parseColor, pluralize, splitID, tokenToCulori, validateCustomTransform };
67
+ export { AliasToken, AliasValue, BooleanToken, BooleanTokenNormalized, BooleanValue, BorderToken, BorderTokenNormalized, BorderValue, BorderValueNormalized, CSS_TO_CULORI, CULORI_TO_CSS, ColorSpace, ColorToken, ColorTokenNormalized, ColorValue, ColorValueNormalized, CubicBezierToken, CubicBezierTokenNormalized, CubicBezierValue, CustomTransformOptions, DimensionToken, DimensionTokenNormalized, DimensionValue, DurationToken, DurationTokenNormalized, DurationValue, FontFamilyToken, FontFamilyTokenNormalized, FontFamilyValue, FontFamilyValueNormalized, FontWeightToken, FontWeightTokenNormalized, FontWeightValue, FontWeightValueNormalized, GradientStop, GradientStopNormalized, GradientToken, GradientTokenNormalized, GradientValue, GradientValueNormalized, Group, GroupCore, GroupOrToken, LinkToken, LinkTokenNormalized, LinkValue, ModeMap, NumberToken, NumberTokenNormalized, NumberValue, ShadowToken, ShadowTokenNormalized, ShadowValue, ShadowValueNormalized, StringToken, StringTokenNormalized, StringValue, StrokeStyleToken, StrokeStyleTokenNormalized, StrokeStyleValue, StrokeStyleValueExpanded, Token, TokenCore, TokenMode, TokenNormalized, TokenNormalizedCore, TokenNormalizedSet, TokensSet, TransitionToken, TransitionTokenNormalized, TransitionValue, TransitionValueNormalized, TypographyToken, TypographyTokenNormalized, TypographyValue, TypographyValueNormalized, getTokenMatch, isAlias, kebabCase, makeAlias, padStr, parseAlias, parseColor, pluralize, splitID, tokenToCulori, validateCustomTransform };
70
68
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/color.ts","../src/id.ts","../src/string.ts","../src/transform.ts"],"sourcesContent":[],"mappings":";;;;;cAMa,eAAe,OAC1B,QACE,wJAiBF;cAmBW;EAtCA,SAAA,GAAA,EAAA,KAoCH;EAAA,SAAA,YAAA,EAAA,IAAA;EAAA,SAlCN,GAAA,EAAA,KAAA;EAAK,SADP,GAAA,EAAA,KAAA;EAAO,SAkBP,GAAA,EAAA,KAAA;EAAU,SAnBgB,GAAA,EAAA,KAAA;EAAM,SAAA,GAAA,EAAA,KAAA;EAsCrB,SAAA,KAAA,EAgBH,OAAA;EAGM,SAAA,KAAU,EAAA,OAAA;EA8DV,SAAA,cAAa,EAAA,UAAA;EAAA,SAAA,OAAA,EAAA,SAAA;EAAA,SAAQ,IAAA,EAAA,KAAA;EAAoB,SAAG,aAAA,EAAA,MAAA;EAAK,SAAA,SAAA,EAAA,OAAA;;;;ACxHjD,iBD0DA,UAAA,CC1DO,KAAA,EAAA,MAAA,CAAA,ED0DoB,oBC1DpB;AAKvB;AAKgB,iBD8GA,aAAA,CC9Ga,KAAA,ED8GQ,oBC9GR,CAAA,ED8G+B,KC9G/B,GAAA,SAAA;AAS7B;;;;iBAnBgB,OAAA;;iBAKA,YAAA;;ADJH,iBCSG,aAAA,CD2BN,OAAA,EAAA,MAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,EAAA,MAAA,GAAA,SAAA;;AAlCN,iBCgBY,SAAA,CDhBZ,KAAA,EAAA,MAAA,CAAA,EAAA,MAAA;;AAiBF,iBCIc,UAAA,CDJd,KAAA,EAAA,MAAA,CAAA,EAAA,MAAA;;AAnBgC,iBCsClB,OAAA,CDtCkB,EAAA,EAAA,MAAA,CAAA,EAAA;EAsCrB,KAAA,EAAA,MAAA;EAmBG,KAAA,CAAA,EAAA,MAAU;AA8D1B,CAAA;;;;;iBE5HgB,MAAA;;iBAuBA,+CAA+C,WAAW,IAAI;;AFlBjE,iBEuBG,SAAA,CFaN,GAAA,EAAA,MAAA,CAAA,EAAA,MAAA;;;;UG1CO,sBAAA;;;;;AHMJ,iBGAG,uBAAA,CHoCN,KAAA,EAAA,OAAA,EAAA;EAAA;AAAA,CAAA,EGpCyD,sBHoCzD,CAAA,EAAA,IAAA"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/color.ts","../src/id.ts","../src/string.ts","../src/transform.ts"],"sourcesContent":[],"mappings":";;;;;cAMa,eAAe,OAC1B,QACE,wJAiBF;cAmBW;EAtCA,SAAA,GAAA,EAAA,KAoCH;EAAA,SAAA,YAAA,EAAA,IAAA;EAAA,SAlCN,GAAA,EAAA,KAAA;EAAK,SADP,GAAA,EAAA,KAAA;EAAO,SAkBP,GAAA,EAAA,KAAA;EAAU,SAnBgB,GAAA,EAAA,KAAA;EAAM,SAAA,GAAA,EAAA,KAAA;EAsCrB,SAAA,KAAA,EAgBH,OAAA;EAGM,SAAA,KAAU,EAAA,OAAA;EA8DV,SAAA,cAAa,EAAA,UAAA;EAAA,SAAA,OAAA,EAAA,SAAA;EAAA,SAAQ,IAAA,EAAA,KAAA;EAAoB,SAAG,aAAA,EAAA,MAAA;EAAK,SAAA,SAAA,EAAA,OAAA;;;;ACxHjD,iBD0DA,UAAA,CC1DO,KAAA,EAAA,MAAA,CAAA,ED0DoB,oBC1DpB;AAKvB;AASgB,iBD0GA,aAAA,CC1GS,KAAA,ED0GY,oBC1GZ,CAAA,ED0GmC,KC1GnC,GAAA,SAAA;AAKzB;;;;iBAnBgB,OAAA;;iBAKA,aAAA;;ADJH,iBCaG,SAAA,CDuBN,KAAA,EAAA,MAAA,CAAA,EAAA,MAAA;;AAlCN,iBCgBY,UAAA,CDhBZ,KAAA,EAAA,MAAA,CAAA,EAAA,MAAA;;AAiBF,iBCcc,OAAA,CDdd,EAAA,EAAA,MAAA,CAAA,EAAA;EAAU,KAnBgB,EAAA,MAAA;EAAM,KAAA,CAAA,EAAA,MAAA;AAsClC,CAAA;AAmBA;;;;iBE9DgB,MAAA;;iBAuBA,+CAA+C,WAAW,IAAI;;AFlBjE,iBEuBG,SAAA,CFaN,GAAA,EAAA,MAAA,CAAA,EAAA,MAAA;;;;UG1CO,sBAAA;;;;;AHMJ,iBGAG,uBAAA,CHoCN,KAAA,EAAA,OAAA,EAAA;EAAA;AAAA,CAAA,EGpCyD,sBHoCzD,CAAA,EAAA,IAAA"}
package/dist/index.js CHANGED
@@ -7,10 +7,6 @@ const ALIAS_RE = /^\{([^}]+)\}$/;
7
7
  function isAlias(value) {
8
8
  return ALIAS_RE.test(value);
9
9
  }
10
- /** Match token against globs */
11
- function isTokenMatch(tokenID, globPatterns) {
12
- return wcmatch(globPatterns)(tokenID);
13
- }
14
10
  /** Same as isTokenMatch but returns the matching pattern */
15
11
  function getTokenMatch(tokenId, globPatterns) {
16
12
  for (const pattern of globPatterns) if (wcmatch(pattern)(tokenId)) return pattern;
@@ -52,5 +48,5 @@ function validateCustomTransform(value, { $type }) {
52
48
  }
53
49
 
54
50
  //#endregion
55
- export { CSS_TO_CULORI, CULORI_TO_CSS, getTokenMatch, isAlias, isTokenMatch, kebabCase, makeAlias, padStr, parseAlias, parseColor, pluralize, splitID, tokenToCulori, validateCustomTransform };
51
+ export { CSS_TO_CULORI, CULORI_TO_CSS, getTokenMatch, isAlias, kebabCase, makeAlias, padStr, parseAlias, parseColor, pluralize, splitID, tokenToCulori, validateCustomTransform };
56
52
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["value: string","tokenID: string","globPatterns: string[]","tokenId: string","input: string","id: string","value: unknown"],"sources":["../src/id.ts","../src/transform.ts"],"sourcesContent":["import wcmatch from 'wildcard-match';\n\nconst ALIAS_RE = /^\\{([^}]+)\\}$/;\n\n/** Is this token an alias of another? */\nexport function isAlias(value: string): boolean {\n return ALIAS_RE.test(value);\n}\n\n/** Match token against globs */\nexport function isTokenMatch(tokenID: string, globPatterns: string[]): boolean {\n return wcmatch(globPatterns)(tokenID);\n}\n\n/** Same as isTokenMatch but returns the matching pattern */\nexport function getTokenMatch(tokenId: string, globPatterns: string[]): string | undefined {\n for (const pattern of globPatterns) {\n if (wcmatch(pattern)(tokenId)) {\n return pattern;\n }\n }\n}\n\n/** Make an alias */\nexport function makeAlias(input: string): string {\n return input.replace(/^\\{?([^}]+)\\}?$/, '{$1}');\n}\n\n/** Parse an alias */\nexport function parseAlias(input: string): string {\n // TODO: deprecate in future\n if (input.includes('#')) {\n throw new Error(\n 'Mode aliases (# character) are no longer supported as of v0.6.0. Alias the root token instead, and apply modes in plugins.',\n );\n }\n const match = input.match(ALIAS_RE);\n if (!match) {\n return input;\n }\n return match[1] ?? match[0];\n}\n\n/** split a token ID into a local ID and group ID */\nexport function splitID(id: string): { local: string; group?: string } {\n const lastSeparatorI = id.lastIndexOf('.');\n if (lastSeparatorI === -1) {\n return { local: id };\n }\n return {\n local: id.substring(lastSeparatorI + 1),\n group: id.substring(0, lastSeparatorI),\n };\n}\n","export interface CustomTransformOptions {\n /** Token $type */\n $type: string;\n}\n\n/** Give a user pertinent feedback if they override a transform incorrectly */\nexport function validateCustomTransform(value: unknown, { $type }: CustomTransformOptions) {\n if (value) {\n if ((typeof value !== 'string' && typeof value !== 'object') || Array.isArray(value)) {\n throw new Error(\n `transform(): expected string or Object of strings, received ${Array.isArray(value) ? 'Array' : typeof value}`,\n );\n }\n switch ($type) {\n case 'typography': {\n if (typeof value !== 'object') {\n throw new Error('transform(): typography tokens must be an object of keys');\n }\n break;\n }\n }\n }\n}\n"],"mappings":";;;;AAEA,MAAM,WAAW;;AAGjB,SAAgB,QAAQA,OAAwB;AAC9C,QAAO,SAAS,KAAK,MAAM;AAC5B;;AAGD,SAAgB,aAAaC,SAAiBC,cAAiC;AAC7E,QAAO,QAAQ,aAAa,CAAC,QAAQ;AACtC;;AAGD,SAAgB,cAAcC,SAAiBD,cAA4C;AACzF,MAAK,MAAM,WAAW,aACpB,KAAI,QAAQ,QAAQ,CAAC,QAAQ,CAC3B,QAAO;AAGZ;;AAGD,SAAgB,UAAUE,OAAuB;AAC/C,QAAO,MAAM,QAAQ,mBAAmB,OAAO;AAChD;;AAGD,SAAgB,WAAWA,OAAuB;AAEhD,KAAI,MAAM,SAAS,IAAI,CACrB,OAAM,IAAI,MACR;CAGJ,MAAM,QAAQ,MAAM,MAAM,SAAS;AACnC,MAAK,MACH,QAAO;AAET,QAAO,MAAM,MAAM,MAAM;AAC1B;;AAGD,SAAgB,QAAQC,IAA+C;CACrE,MAAM,iBAAiB,GAAG,YAAY,IAAI;AAC1C,KAAI,mBAAmB,GACrB,QAAO,EAAE,OAAO,GAAI;AAEtB,QAAO;EACL,OAAO,GAAG,UAAU,iBAAiB,EAAE;EACvC,OAAO,GAAG,UAAU,GAAG,eAAe;CACvC;AACF;;;;;AC/CD,SAAgB,wBAAwBC,OAAgB,EAAE,OAA+B,EAAE;AACzF,KAAI,OAAO;AACT,aAAY,UAAU,mBAAmB,UAAU,YAAa,MAAM,QAAQ,MAAM,CAClF,OAAM,IAAI,OACP,8DAA8D,MAAM,QAAQ,MAAM,GAAG,iBAAiB,MAAM;AAGjH,UAAQ,OAAR;GACE,KAAK,cAAc;AACjB,eAAW,UAAU,SACnB,OAAM,IAAI,MAAM;AAElB;GACD;EACF;CACF;AACF"}
1
+ {"version":3,"file":"index.js","names":["value: string","tokenId: string","globPatterns: string[]","input: string","id: string","value: unknown"],"sources":["../src/id.ts","../src/transform.ts"],"sourcesContent":["import wcmatch from 'wildcard-match';\n\nconst ALIAS_RE = /^\\{([^}]+)\\}$/;\n\n/** Is this token an alias of another? */\nexport function isAlias(value: string): boolean {\n return ALIAS_RE.test(value);\n}\n\n/** Same as isTokenMatch but returns the matching pattern */\nexport function getTokenMatch(tokenId: string, globPatterns: string[]): string | undefined {\n for (const pattern of globPatterns) {\n if (wcmatch(pattern)(tokenId)) {\n return pattern;\n }\n }\n}\n\n/** Make an alias */\nexport function makeAlias(input: string): string {\n return input.replace(/^\\{?([^}]+)\\}?$/, '{$1}');\n}\n\n/** Parse an alias */\nexport function parseAlias(input: string): string {\n // TODO: deprecate in future\n if (input.includes('#')) {\n throw new Error(\n 'Mode aliases (# character) are no longer supported as of v0.6.0. Alias the root token instead, and apply modes in plugins.',\n );\n }\n const match = input.match(ALIAS_RE);\n if (!match) {\n return input;\n }\n return match[1] ?? match[0];\n}\n\n/** split a token ID into a local ID and group ID */\nexport function splitID(id: string): { local: string; group?: string } {\n const lastSeparatorI = id.lastIndexOf('.');\n if (lastSeparatorI === -1) {\n return { local: id };\n }\n return {\n local: id.substring(lastSeparatorI + 1),\n group: id.substring(0, lastSeparatorI),\n };\n}\n","export interface CustomTransformOptions {\n /** Token $type */\n $type: string;\n}\n\n/** Give a user pertinent feedback if they override a transform incorrectly */\nexport function validateCustomTransform(value: unknown, { $type }: CustomTransformOptions) {\n if (value) {\n if ((typeof value !== 'string' && typeof value !== 'object') || Array.isArray(value)) {\n throw new Error(\n `transform(): expected string or Object of strings, received ${Array.isArray(value) ? 'Array' : typeof value}`,\n );\n }\n switch ($type) {\n case 'typography': {\n if (typeof value !== 'object') {\n throw new Error('transform(): typography tokens must be an object of keys');\n }\n break;\n }\n }\n }\n}\n"],"mappings":";;;;AAEA,MAAM,WAAW;;AAGjB,SAAgB,QAAQA,OAAwB;AAC9C,QAAO,SAAS,KAAK,MAAM;AAC5B;;AAGD,SAAgB,cAAcC,SAAiBC,cAA4C;AACzF,MAAK,MAAM,WAAW,aACpB,KAAI,QAAQ,QAAQ,CAAC,QAAQ,CAC3B,QAAO;AAGZ;;AAGD,SAAgB,UAAUC,OAAuB;AAC/C,QAAO,MAAM,QAAQ,mBAAmB,OAAO;AAChD;;AAGD,SAAgB,WAAWA,OAAuB;AAEhD,KAAI,MAAM,SAAS,IAAI,CACrB,OAAM,IAAI,MACR;CAGJ,MAAM,QAAQ,MAAM,MAAM,SAAS;AACnC,MAAK,MACH,QAAO;AAET,QAAO,MAAM,MAAM,MAAM;AAC1B;;AAGD,SAAgB,QAAQC,IAA+C;CACrE,MAAM,iBAAiB,GAAG,YAAY,IAAI;AAC1C,KAAI,mBAAmB,GACrB,QAAO,EAAE,OAAO,GAAI;AAEtB,QAAO;EACL,OAAO,GAAG,UAAU,iBAAiB,EAAE;EACvC,OAAO,GAAG,UAAU,GAAG,eAAe;CACvC;AACF;;;;;AC1CD,SAAgB,wBAAwBC,OAAgB,EAAE,OAA+B,EAAE;AACzF,KAAI,OAAO;AACT,aAAY,UAAU,mBAAmB,UAAU,YAAa,MAAM,QAAQ,MAAM,CAClF,OAAM,IAAI,OACP,8DAA8D,MAAM,QAAQ,MAAM,GAAG,iBAAiB,MAAM;AAGjH,UAAQ,OAAR;GACE,KAAK,cAAc;AACjB,eAAW,UAAU,SACnB,OAAM,IAAI,MAAM;AAElB;GACD;EACF;CACF;AACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@terrazzo/token-tools",
3
- "version": "0.8.1",
3
+ "version": "0.9.0",
4
4
  "description": "Various utilities for token types",
5
5
  "license": "MIT",
6
6
  "type": "module",