@terrazzo/parser 2.0.0-beta.3 → 2.0.0-beta.4

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
@@ -2,6 +2,14 @@
2
2
 
3
3
  ## 2.0.0
4
4
 
5
+ The 2.0.0 release is full of new features:
6
+
7
+ - Full support for the DTCG v2025.10 spec, including resolvers
8
+ - New and improved [native Figma import](https://terrazzo.app/docs/guides/import-from-figma)
9
+ - `@terrazzo/plugin-js` was reimagined as a resolver API to build your own token machine (server-side)
10
+ - `@terrazzo/plugin-css-in-js` was added as the missing solution for type-safe JS to use in any CSS-in-JS library
11
+ - And of course dozens of bugfixes and quality of life improvements
12
+
5
13
  ### Minor Changes
6
14
 
7
15
  - [#530](https://github.com/terrazzoapp/terrazzo/pull/530) [`370ed7b`](https://github.com/terrazzoapp/terrazzo/commit/370ed7b0f578a64824124145d7f4936536b37bb3) Thanks [@drwpow](https://github.com/drwpow)! - ⚠️ Breaking change; DTCG 2nd Editors draft format will throw errors by default. This means converting all colors and dimensions to the new object format.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import * as momoa from "@humanwhocodes/momoa";
2
1
  import { AliasToken, AliasValue, BooleanToken, BooleanTokenNormalized, BooleanValue, BorderToken, BorderTokenNormalized, BorderValue, BorderValueNormalized, 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, Group as Group$1, GroupCore, GroupOrToken, LinkToken, LinkTokenNormalized, LinkValue, ModeMap, NumberToken, NumberTokenNormalized, NumberValue, ShadowToken, ShadowTokenNormalized, ShadowValue, ShadowValueNormalized, StringToken, StringTokenNormalized, StringValue, StrokeStyleToken, StrokeStyleTokenNormalized, StrokeStyleValue, StrokeStyleValueExpanded, Token, TokenCore, TokenMode, TokenNormalized, TokenNormalized as TokenNormalized$1, TokenNormalizedCore, TokenNormalizedSet, TokenNormalizedSet as TokenNormalizedSet$1, TokenTransformed, TokenTransformed as TokenTransformed$1, TokenTransformedBase, TokenTransformedBase as TokenTransformedBase$1, TokensSet, TransitionToken, TransitionTokenNormalized, TransitionValue, TransitionValueNormalized, TypographyToken, TypographyTokenNormalized, TypographyValue, TypographyValueNormalized } from "@terrazzo/token-tools";
2
+ import * as momoa from "@humanwhocodes/momoa";
3
3
  import { InputSource, InputSourceWithDocument } from "@terrazzo/json-schema-tools";
4
4
  import ytm from "yaml-to-momoa";
5
5
 
@@ -7,7 +7,7 @@ import ytm from "yaml-to-momoa";
7
7
  declare const LOG_ORDER: readonly ["error", "warn", "info", "debug"];
8
8
  type LogSeverity = 'error' | 'warn' | 'info' | 'debug';
9
9
  type LogLevel = LogSeverity | 'silent';
10
- type LogGroup = 'config' | 'parser' | 'resolver' | 'lint' | 'plugin' | 'server';
10
+ type LogGroup = 'config' | 'import' | 'lint' | 'parser' | 'plugin' | 'resolver' | 'server';
11
11
  interface LogEntry {
12
12
  /** Originator of log message */
13
13
  group: LogGroup;
@@ -383,8 +383,8 @@ interface ResolverSourceNormalized {
383
383
  name: string | undefined;
384
384
  version: '2025.10';
385
385
  description: string | undefined;
386
- sets: Record<string, ResolverSet> | undefined;
387
- modifiers: Record<string, ResolverModifier> | undefined;
386
+ sets: Record<string, ResolverSetNormalized> | undefined;
387
+ modifiers: Record<string, ResolverModifierNormalized> | undefined;
388
388
  /**
389
389
  * Array of all sets and modifiers that have been converted to inline,
390
390
  * regardless of original declaration. In a normalized resolver, only a single
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/logger.ts","../src/types.ts","../src/build/index.ts","../src/config.ts","../src/lint/plugin-core/index.ts","../src/lint/index.ts","../src/parse/index.ts","../src/resolver/load.ts","../src/resolver/normalize.ts","../src/resolver/validate.ts"],"mappings":";;;;;;cAKa,SAAA;AAAA,KACD,WAAA;AAAA,KACA,QAAA,GAAW,WAAA;AAAA,KACX,QAAA;AAAA,UAEK,QAAA;EALJ;EAOX,KAAA,EAAO,QAAA;;EAEP,OAAA;EATkE;EAWlE,KAAA;EAVqB;EAYrB,QAAA,GAAW,GAAA;EAZU;;AACvB;;EAgBE,eAAA;EAhBqB;EAkBrB,IAAA,GAAO,KAAA,CAAM,OAAA;EAjBH;EAmBV,GAAA;;EAEA,MAAA;AAAA;AAAA,UAGe,UAAA;EACf,KAAA,EAAO,QAAA;;EAEP,OAAA;EAjBW;EAmBX,KAAA;EAZoB;EAcpB,SAAA;IAAc,GAAA;IAAa,IAAA;IAAc,MAAA;EAAA;EArBzC;EAuBA,MAAA;AAAA;;;;;;iBAkBc,aAAA,CAAc,KAAA,EAAO,QAAA,EAAU,QAAA,EAAU,WAAA;AAAA,cAyBpC,MAAA;EACnB,KAAA,EAAkB,QAAA;EAClB,UAAA;EACA,UAAA;EACA,SAAA;EACA,SAAA;EACA,UAAA;cAEY,OAAA;IAAY,KAAA,GAAQ,QAAA;IAAU,UAAA;EAAA;EAS1C,QAAA,CAAS,KAAA,EAAO,QAAA;EA9DyB;EAmEzC,KAAA,CAAA,GAAS,OAAA,EAAS,QAAA;EAjEZ;EAqFN,IAAA,CAAA,GAAQ,OAAA,EAAS,QAAA;EAnEH;EAgFd,IAAA,CAAA,GAAQ,OAAA,EAAS,QAAA;;EAcjB,KAAA,CAAA,GAAS,OAAA,EAAS,UAAA;EA9FiB;EA8HnC,KAAA,CAAA;;;;;;;cAsBW,eAAA,SAAwB,KAAA;cACvB,OAAA;AAAA;;;UC3LG,iBAAA;EACf,MAAA,EAAQ,MAAA;AAAA;AAAA,UAGO,gBAAA;EDpBmD;ECsBlE,OAAA,EAAS,iBAAA;EDrBY;ECuBrB,MAAA,EAAQ,MAAA,SAAe,iBAAA;EDvBF;ECyBrB,aAAA,CAAc,MAAA,EAAQ,eAAA,GAAkB,kBAAA;EDxB9B;EC0BV,OAAA,EAAS,uBAAA;;EAET,QAAA,EAAU,QAAA;EACV,UAAA,GD5BU;;EC8BR,QAAA;;EAEA,QAAA,WAAmB,MAAA;AAAA;AAAA,UAIN,iBAAA;EACf,WAAA,EAAa,kBAAA;AAAA;AAAA,UAGE,mBAAA;ED9BJ;ECgCX,OAAA,EAAS,iBAAA;EDzBW;EC2BpB,MAAA,EAAQ,MAAA,SAAe,iBAAA;EDxCvB;EC0CA,aAAA,CAAc,MAAA,EAAQ,eAAA,GAAkB,kBAAA;EDxCxC;EC0CA,OAAA,EAAS,uBAAA;EDtCT;ECwCA,WAAA,EAAa,kBAAA;AAAA;AAAA,UAIE,MAAA;EDrCR;;;;EC0CP,MAAA;EDtCM;AAGR;;;ECwCE,MAAA;EDvCA;ECyCA,OAAA,GAAU,MAAA;EDvCV;ECyCA,WAAA;EDrCA;ECuCA,IAAA;IDvC2B,+BCyCzB,KAAA;MDvCF;;;AAkBF;MC0BM,OAAA;IAAA,GD1B8D;IC6BhE,KAAA,GAAQ,MAAA,SAAe,iBAAA,GAAoB,gBAAA;EAAA;ED7BU;ECgCvD,MAAA;IDhCkE,+CCkChE,MAAA,aDTiB;ICWjB,UAAA;EAAA;AAAA;AAAA,UAIa,cAAA;EACf,MAAA,GAAS,KAAA,CAAM,OAAA;EACf,QAAA,EAAU,GAAA;EACV,IAAA;AAAA;AAAA,KAGU,OAAA,WAAkB,KAAA,CAAM,OAAA,GAAU,KAAA,CAAM,UAAA,GAAa,KAAA,CAAM,YAAA,KACrE,IAAA,EAAM,CAAA,EACN,OAAA,EAAS,cAAA,KAEN,CAAA;AAAA,UAEY,iBAAA;EACf,OAAA,GAAU,OAAA;EACV,MAAA,GAAS,OAAA;EACT,KAAA,GAAQ,OAAA;EACR,WAAA,GAAc,OAAA;EACd,SAAA,GAAY,OAAA;EACZ,QAAA,GAAW,OAAA;EACX,UAAA,GAAa,OAAA;EACb,UAAA,GAAa,OAAA;EACb,QAAA,GAAW,OAAA;EACX,KAAA,GAAQ,OAAA;EACR,IAAA,GAAO,OAAA;EACP,MAAA,GAAS,OAAA;EACT,IAAA,GAAO,OAAA;EACP,MAAA,GAAS,OAAA;EACT,WAAA,GAAc,OAAA;EACd,KAAA,GAAQ,OAAA;EACR,UAAA,GAAa,OAAA;EACb,UAAA,GAAa,OAAA;EAAA,CACZ,GAAA,WAAc,OAAA;AAAA;AAAA,UAIA,UAAA;EACf,MAAA,EAAQ,GAAA;EACR,MAAA,EAAQ,GAAA;EACR,OAAA,EAAS,MAAA;EACT,WAAA;EACA,IAAA;IACE,KAAA,EAAO,WAAA,CAAY,WAAA,CAAY,MAAA;IAC/B,KAAA,EAAO,MAAA,SAAe,gBAAA;EAAA;EAExB,MAAA;IACE,MAAA,EAAQ,WAAA,CAAY,WAAA,CAAY,MAAA;IAChC,UAAA,EAAY,WAAA,CAAY,WAAA,CAAY,MAAA;EAAA;AAAA;AAAA,UAIvB,aAAA;EACf,MAAA,GAAS,MAAA;EDyDkB;ECvD3B,GAAA,EAAK,GAAA;AAAA;AAAA,UAGU,UAAA;;EAEf,OAAA;EDmD2B;ECjD3B,IAAA,GAAO,KAAA,CAAM,OAAA;AAAA;AAAA,KAGH,gBAAA;AAAA,KACA,iBAAA,GAAoB,gBAAA;AAAA,KACpB,gBAAA,IAAoB,gBAAA;AAAA,UAEf,kBAAA;EACf,EAAA;EACA,QAAA,EAAU,gBAAA;EACV,OAAA,GAAU,CAAA;AAAA;AAAA,KAGA,oBAAA;uEAEV,IAAA,GAAO,KAAA,CAAM,OAAA,EAjJU;EAmJvB,QAAA,WAjJsB;EAmJtB,IAAA,GAAO,MAAA;AAAA;EA/IG,2CAmJN,OAAA;EACA,SAAA;AAAA;EAGA,OAAA,UA/JK;EAiKL,SAAA,EAAW,UAAA;AAAA;AAAA,UASA,QAAA,oDAES,MAAA,gBAAsB,MAAA;EAG9C,IAAA,GAAO,gBAAA,CAAiB,UAAA,EAAY,eAAA,EAAiB,YAAA;EA3K/B;;;;EAgLtB,MAAA,CAAO,OAAA,EAAS,QAAA,CAAS,eAAA,CAAgB,UAAA,EAAY,eAAA,YAA2B,OAAA;EA5KhF;;;EAgLA,cAAA,EAAgB,eAAA;AAAA;AAAA,UAGD,eAAA;EA9KY;EAgL3B,EAAA;EA5Ke;;;;EAiLf,OAAA,EAAS,eAAA;EA7KM;EA+Kf,GAAA,GAAM,GAAA;;;;;EAKN,OAAA,EAAS,uBAAA;EA9K+B;EAgLxC,QAAA,GAAW,GAAA;EA5KE;EA8Kb,MAAA,EAAQ,MAAA,SAAe,iBAAA;EA9KQ;EAgL/B,MAAA,CAAO,UAAA,EAAY,oBAAA,CAAqB,UAAA;AAAA;AAAA,UAGzB,gBAAA;EAzLP;;;EAiMR,IAAA,GAAO,YAAA,GAAe,oBAAA;EA/LR;;;;EAoMd,QAAA,GAAW,MAAA,CAAO,UAAA;EAhML;;;AAIf;;EAkME,cAAA,GAAiB,eAAA;AAAA;AAAA,UAGF,oBAAA;EA3K8B;EA6K7C,WAAA;EA7KgB;EA+KhB,GAAA;AAAA;AAAA,UAGe,UAAA;EAhMf;EAkMA,QAAA;EAhMA;EAkMA,QAAA,WAAmB,MAAA;EA9LjB;EAgMF,MAAA;EAxLE;EA0LF,IAAA;AAAA;AAAA,UAGe,kBAAA,SAA2B,UAAA;EA1L1C;EA4LA,MAAA;EAxLE;EA0LF,IAAA;AAAA;AAAA,UAGe,YAAA;EACf,MAAA,GAAS,MAAA;EACT,MAAA,EAAQ,UAAA;EAzLK;;;;;EA+Lb,GAAA,IAAO,GAAA,EAAK,GAAA,EAAK,MAAA,EAAQ,GAAA,KAAQ,OAAA;EA9LjC;;;AAGF;EAgME,QAAA;EAhMiB;;;;EAqMjB,eAAA;EAnMS;EAqMT,WAAA,UAAqB,GAAA;EAnMjB;;;;EAwMJ,SAAA,GAAY,iBAAA;EA5MgC;EA8M5C,QAAA,GAAW,MAAA,SAAe,uBAAA;AAAA;AAAA,UAGX,MAAA;EACf,IAAA;EAjNA;EAoNA,MAAA,EAAQ,MAAA,EAAQ,UAAA,EAAY,OAAA,EAAS,iBAAA,UAA2B,UAAA;EAnNhE;;;;AAIF;;EAsNE,OAAA;EArNU;EAuNV,IAAA,KAAS,MAAA,SAAe,QAAA;EACxB,SAAA,EAAW,OAAA,EAAS,oBAAA,GAAuB,OAAA;EAC3C,KAAA,EAAO,OAAA,EAAS,gBAAA,GAAmB,OAAA;EACnC,QAAA,EAAU,OAAA,EAAS,mBAAA,GAAsB,OAAA;AAAA;AAAA,UAG1B,eAAA;EACf,IAAA;AAAA;AAAA,UAGe,QAAA,gBACA,MAAA,qBAA2B,MAAA,4BAClC,MAAA,OAAa,MAAA,EAAQ,MAAA,OAAa,MAAA;EAzNnC;;;;;;EAiOP,KAAA,GAAQ,KAAA,EAAO,OAAA,CAAQ,KAAA,MAAW,oBAAA;EA1NrB;;;;;EAgOb,gBAAA,QAAwB,KAAA;EAExB,gBAAA,GAAmB,KAAA,EAAO,KAAA;EAlPjB;EAoPT,MAAA,EAAQ,wBAAA;EAnPA;EAqPR,YAAA,GAAe,KAAA,EAAO,KAAA,EAAO,UAAA;AAAA;AAAA,UAGd,cAAA;EAtPH;EAwPZ,IAAA;EAvPW;EAyPX,OAAA;EAxPa;EA0Pb,WAAA;EAzPa;EA2Pb,IAAA,GAAO,MAAA,SAAe,WAAA;EA1PX;EA4PX,SAAA,GAAY,MAAA,SAAe,gBAAA;EAC3B,eAAA,GAAkB,iBAAA,GAAoB,sBAAA,GAAyB,eAAA;EAC/D,WAAA,GAAc,MAAA;EACd,KAAA,GAAQ,MAAA;AAAA;;UAIO,wBAAA;EACf,IAAA;EACA,OAAA;EACA,WAAA;EACA,IAAA,EAAM,MAAA,SAAe,WAAA;EACrB,SAAA,EAAW,MAAA,SAAe,gBAAA;EAjQ1B;;;;;EAuQA,eAAA,GAAkB,qBAAA,GAAwB,0BAAA;EAC1C,OAAA;IACE,QAAA,GAAW,GAAA;IACX,QAAA,EAAU,KAAA,CAAM,YAAA;EAAA;AAAA;AAAA,UAIH,gBAAA;EACf,WAAA;EACA,QAAA,EAAU,MAAA,CAAO,OAAA,GAAU,OAAA,GAAQ,eAAA;EACnC,OAAA,GAAU,OAAA;EACV,WAAA,GAAc,MAAA;EACd,KAAA,GAAQ,MAAA;AAAA;AAAA,KAGE,sBAAA,oCAA0D,gBAAA,CAAiB,OAAA;EACrF,IAAA;EACA,IAAA;AAAA;AAAA,UAGe,0BAAA;EACf,IAAA;EACA,IAAA;EACA,WAAA;EACA,QAAA,EAAU,MAAA,SAAe,OAAA;EACzB,OAAA;EACA,WAAA,EAAa,MAAA;EACb,KAAA,EAAO,MAAA;AAAA;AAAA,UAGQ,WAAA;EACf,WAAA;EACA,OAAA,GAAU,OAAA,GAAQ,eAAA;EAClB,WAAA,GAAc,MAAA;EACd,KAAA,GAAQ,MAAA;AAAA;AAAA,KAGE,iBAAA,GAAoB,WAAA;EAAgB,IAAA;EAAc,IAAA;AAAA;AAAA,UAE7C,qBAAA;EACf,IAAA;EACA,IAAA;EACA,WAAA;EACA,OAAA,EAAS,OAAA;EACT,WAAA,EAAa,MAAA;EACb,KAAA,EAAO,MAAA;AAAA;AAAA,KAGG,eAAA,GAAkB,qBAAA,GAAwB,uBAAA;AAAA,UAErC,mBAAA;EAvSW;EAyS1B,MAAA;EAzS4C;EA2S5C,EAAA;EAvSe;EAySf,KAAA;AAAA;AAAA,UAGe,qBAAA,SAA8B,mBAAA;EA3S7C;;;;;EAiTA,IAAA;EA5Se;EA8Sf,KAAA;AAAA;AAAA,UAGe,uBAAA,SAAgC,mBAAA;EAC/C,IAAA;EA9SA;EAgTA,KAAA,EAAO,MAAA;AAAA;AAAA,UAGQ,oBAAA;EAnTK;EAqTpB,OAAA,EAAS,iBAAA;EAlTiB;EAoT1B,MAAA,EAAQ,MAAA,SAAe,iBAAA;EApTG;EAsT1B,aAAA,CAAc,MAAA,EAAQ,eAAA,GAAkB,kBAAA;EArT9B;EAuTV,YAAA,CACE,EAAA,UACA,MAAA;IAEM,MAAA;IACA,OAAA;IACA,KAAA,WAAgB,MAAA,kBA5Td;IA8TF,IAAA;IACA,KAAA;IACA,IAAA,GAAO,sBAAA;EAAA;IAGP,MAAA;IACA,OAAA;IACA,KAAA,WAAgB,MAAA;IAChB,IAAA;IACA,KAAA,EAAO,MAAA;IACP,IAAA,GAAO,sBAAA;EAAA;EApUL;EAwUV,QAAA,EAAU,QAAA;EAvUA;EAyUV,OAAA,EAAS,uBAAA;AAAA;AAAA,UAGM,WAAA;EACf,QAAA;EACA,QAAA;AAAA;AAAA,KAGU,MAAA,GAAS,MAAA,SAAe,WAAA;;;UCpfnB,kBAAA;EACf,OAAA,EAAS,uBAAA;EACT,MAAA,EAAQ,UAAA;EACR,QAAA,EAAU,QAAA;EACV,MAAA,GAAS,MAAA;AAAA;AAAA,cAEE,YAAA;AAAA,cACA,WAAA;;iBAsCiB,KAAA,CAC5B,MAAA,EAAQ,MAAA,SAAe,iBAAA;EACrB,QAAA;EAAU,OAAA;EAAS,MAAA;EAAuB;AAAA,GAAU,kBAAA,GACrD,OAAA,CAAQ,iBAAA;;;;;;iBC5Ca,YAAA,CACtB,SAAA,EAAW,MAAA;EACT,MAAA;EAAuB;AAAA,IAAO,aAAA,GAC/B,UAAA;;iBAkSa,YAAA,CAAa,CAAA,EAAG,MAAA,EAAQ,CAAA,EAAG,MAAA,GAAS,MAAA;;;cCjNvC,kBAAA,EAAoB,MAAA,SAAe,gBAAA;;;UCtF/B,iBAAA;EACf,MAAA,EAAQ,oBAAA;EACR,QAAA,GAAW,GAAA;EACX,MAAA,EAAQ,UAAA;EACR,OAAA,EAAS,uBAAA;EACT,MAAA,EAAQ,MAAA;AAAA;AAAA,iBAGoB,UAAA,CAAA;EAC5B,MAAA;EACA,QAAA;EACA,MAAA;EACA,OAAA;EACA;AAAA,GACC,iBAAA,GAAoB,OAAA;;;UCZN,WAAA;EACf,MAAA,EAAQ,oBAAA;EACR,OAAA,EAAS,uBAAA;EACT,QAAA,EAAU,QAAA;AAAA;;iBAIkB,KAAA,CAC5B,MAAA,EAAQ,WAAA,GAAc,WAAA;EAEpB,MAAA;EACA,GAAA;EACA,QAAA;EACA,MAAA;EACA,eAAA;EACA,WAAA;EACA;AAAA,IACC,YAAA,GACF,OAAA,CAAQ,WAAA;;;UCfM,mBAAA;EACf,MAAA,EAAQ,UAAA;EACR,MAAA,EAAQ,MAAA;EACR,GAAA,GAAM,GAAA,EAAK,GAAA,EAAK,MAAA,EAAQ,GAAA,KAAQ,OAAA;EAChC,WAAA,UAAqB,GAAA;AAAA;APXvB;AAAA,iBOesB,YAAA,CACpB,MAAA,EAAQ,WAAA;EACN,MAAA;EAAQ,MAAA;EAAQ,GAAA;EAAK,WAAA,EAAA;AAAA,GAAe,mBAAA,GACrC,OAAA;EAAU,QAAA,EAAU,QAAA;EAAsB,MAAA,EAAQ,oBAAA;EAAoB,OAAA,EAAS,uBAAA;AAAA;AAAA,UAuEjE,qBAAA;EACf,MAAA,EAAQ,UAAA;EACR,MAAA,EAAQ,MAAA;EACR,OAAA,EAAS,uBAAA;AAAA;;iBAIK,cAAA,CACd,cAAA,EAAgB,wBAAA;EACd,MAAA;EAAQ,MAAA;EAAQ;AAAA,GAAW,qBAAA,GAC5B,QAAA;;iBAqHa,qBAAA,CAAsB,OAAA,yBAA6B,MAAA;;;UCxNlD,wBAAA;EACf,MAAA,EAAQ,MAAA;EACR,WAAA,UAAqB,GAAA;EACrB,QAAA,EAAU,GAAA;EACV,GAAA,GAAM,GAAA,EAAK,GAAA,EAAK,MAAA,EAAQ,GAAA,KAAQ,OAAA;EAChC,GAAA;AAAA;ARLF;AAAA,iBQSsB,iBAAA,CACpB,QAAA,EAAU,KAAA,CAAM,YAAA;EACd,MAAA;EAAQ,QAAA;EAAU,GAAA;EAAK,GAAA;EAAK,WAAA,EAAA;AAAA,GAAe,wBAAA,GAC5C,OAAA,CAAQ,wBAAA;;;;;;;ARbX;;;;iBSOgB,gBAAA,CAAiB,GAAA,EAAK,KAAA,CAAM,YAAA;AAAA,UAsD3B,uBAAA;EACf,MAAA,EAAQ,MAAA;EACR,GAAA;AAAA;;AT7DF;;;iBS0EgB,gBAAA,CAAiB,IAAA,EAAM,KAAA,CAAM,YAAA;EAAgB,MAAA;EAAQ;AAAA,GAAO,uBAAA;AAAA,iBA4H5D,WAAA,CAAY,IAAA,EAAM,KAAA,CAAM,UAAA,EAAY,QAAA;EAAoB;AAAA,GAAO,uBAAA,GAA0B,QAAA;AAAA,iBAiFzF,gBAAA,CACd,IAAA,EAAM,KAAA,CAAM,UAAA,EACZ,QAAA;EACE;AAAA,GAAO,uBAAA,GACR,QAAA"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/logger.ts","../src/types.ts","../src/build/index.ts","../src/config.ts","../src/lint/plugin-core/index.ts","../src/lint/index.ts","../src/parse/index.ts","../src/resolver/load.ts","../src/resolver/normalize.ts","../src/resolver/validate.ts"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
+ import { BORDER_REQUIRED_PROPERTIES, COLOR_SPACE, FONT_WEIGHTS, GRADIENT_REQUIRED_STOP_PROPERTIES, SHADOW_REQUIRED_PROPERTIES, STROKE_STYLE_LINE_CAP_VALUES, STROKE_STYLE_OBJECT_REQUIRED_PROPERTIES, STROKE_STYLE_STRING_VALUES, TRANSITION_REQUIRED_PROPERTIES, getTokenMatcher, isAlias, parseAlias, parseColor, pluralize, tokenToColor } from "@terrazzo/token-tools";
1
2
  import wcmatch from "wildcard-match";
2
3
  import * as momoa from "@humanwhocodes/momoa";
3
4
  import pc from "picocolors";
4
5
  import { merge } from "merge-anything";
5
- import { BORDER_REQUIRED_PROPERTIES, COLOR_SPACE, FONT_WEIGHTS, GRADIENT_REQUIRED_STOP_PROPERTIES, SHADOW_REQUIRED_PROPERTIES, STROKE_STYLE_LINE_CAP_VALUES, STROKE_STYLE_OBJECT_REQUIRED_PROPERTIES, STROKE_STYLE_STRING_VALUES, TRANSITION_REQUIRED_PROPERTIES, isAlias, parseAlias, parseColor, pluralize, tokenToColor } from "@terrazzo/token-tools";
6
6
  import { contrastWCAG21, inGamut } from "colorjs.io/fn";
7
7
  import { camelCase, kebabCase, pascalCase, snakeCase } from "scule";
8
8
  import { bundle, encodeFragment, findNode, getObjMember, getObjMembers, isPure$ref, maybeRawJSON, mergeObjects, parseRef, replaceNode, traverse } from "@terrazzo/json-schema-tools";
@@ -96,9 +96,20 @@ const LOG_ORDER = [
96
96
  "info",
97
97
  "debug"
98
98
  ];
99
+ const GROUP_COLOR = {
100
+ config: pc.cyan,
101
+ import: pc.green,
102
+ lint: pc.yellowBright,
103
+ parser: pc.magenta,
104
+ plugin: pc.greenBright,
105
+ resolver: pc.magentaBright,
106
+ server: pc.gray
107
+ };
99
108
  const MESSAGE_COLOR = {
100
109
  error: pc.red,
101
- warn: pc.yellow
110
+ warn: pc.yellow,
111
+ info: (msg) => msg,
112
+ debug: pc.gray
102
113
  };
103
114
  const timeFormatter = new Intl.DateTimeFormat("en-us", {
104
115
  hour: "numeric",
@@ -113,9 +124,10 @@ const timeFormatter = new Intl.DateTimeFormat("en-us", {
113
124
  * @return {string}
114
125
  */
115
126
  function formatMessage(entry, severity) {
127
+ const groupColor = GROUP_COLOR[entry.group];
128
+ const messageColor = MESSAGE_COLOR[severity];
116
129
  let message = entry.message;
117
- message = `[${entry.group}${entry.label ? `:${entry.label}` : ""}] ${message}`;
118
- if (severity in MESSAGE_COLOR) message = MESSAGE_COLOR[severity](message);
130
+ message = `${groupColor(`${entry.group}${entry.label ? `:${entry.label}` : ""}:`)} ${messageColor(message)}`;
119
131
  if (typeof entry.timing === "number") message = `${message} ${formatTiming(entry.timing)}`;
120
132
  if (entry.node) {
121
133
  const start = entry.node?.loc?.start ?? {
@@ -245,7 +257,7 @@ async function build(tokens, { resolver, sources, logger = new Logger(), config
245
257
  });
246
258
  return [];
247
259
  }
248
- const tokenMatcher = params.id && params.id !== "*" ? wcmatch(params.id) : null;
260
+ const tokenMatcher = params.id && params.id !== "*" ? getTokenMatcher(params.id) : null;
249
261
  const modeMatcher = params.mode ? wcmatch(params.mode) : null;
250
262
  const permutationID = params.input ? resolver.getPermutationID(params.input) : JSON.stringify({ tzMode: "*" });
251
263
  return (formats[params.format]?.[permutationID] ?? []).filter((token) => {
@@ -438,7 +450,7 @@ const rule$25 = {
438
450
  defaultOptions: {},
439
451
  create({ tokens, options, report }) {
440
452
  if (!options.minSizePx && !options.minSizeRem) throw new Error("Must specify at least one of minSizePx or minSizeRem");
441
- const shouldIgnore = options.ignore ? wcmatch(options.ignore) : null;
453
+ const shouldIgnore = options.ignore ? getTokenMatcher(options.ignore) : null;
442
454
  for (const t of Object.values(tokens)) {
443
455
  if (shouldIgnore?.(t.id)) continue;
444
456
  if (t.aliasOf) continue;
@@ -479,7 +491,7 @@ const rule$24 = {
479
491
  defaultOptions: { colorSpace: "srgb" },
480
492
  create({ tokens, options, report }) {
481
493
  if (!options.colorSpace) return;
482
- const shouldIgnore = options.ignore ? wcmatch(options.ignore) : null;
494
+ const shouldIgnore = options.ignore ? getTokenMatcher(options.ignore) : null;
483
495
  for (const t of Object.values(tokens)) {
484
496
  if (shouldIgnore?.(t.id)) continue;
485
497
  if (t.aliasOf) continue;
@@ -590,7 +602,7 @@ const rule$22 = {
590
602
  },
591
603
  defaultOptions: {},
592
604
  create({ tokens, options, report }) {
593
- const shouldIgnore = options.ignore ? wcmatch(options.ignore) : null;
605
+ const shouldIgnore = options.ignore ? getTokenMatcher(options.ignore) : null;
594
606
  for (const t of Object.values(tokens)) {
595
607
  if (shouldIgnore?.(t.id)) continue;
596
608
  if (!t.$description) report({
@@ -617,7 +629,7 @@ const rule$21 = {
617
629
  defaultOptions: {},
618
630
  create({ report, tokens, options }) {
619
631
  const values = {};
620
- const shouldIgnore = options.ignore ? wcmatch(options.ignore) : null;
632
+ const shouldIgnore = options.ignore ? getTokenMatcher(options.ignore) : null;
621
633
  for (const t of Object.values(tokens)) {
622
634
  if (shouldIgnore?.(t.id)) continue;
623
635
  if (!values[t.$type]) values[t.$type] = /* @__PURE__ */ new Set();
@@ -670,7 +682,7 @@ const rule$20 = {
670
682
  create({ tokens, options, report }) {
671
683
  if (!options?.gamut) return;
672
684
  if (options.gamut !== "srgb" && options.gamut !== "p3" && options.gamut !== "rec2020") throw new Error(`Unknown gamut "${options.gamut}". Options are "srgb", "p3", or "rec2020"`);
673
- const shouldIgnore = options.ignore ? wcmatch(options.ignore) : null;
685
+ const shouldIgnore = options.ignore ? getTokenMatcher(options.ignore) : null;
674
686
  for (const t of Object.values(tokens)) {
675
687
  if (shouldIgnore?.(t.id)) continue;
676
688
  if (t.aliasOf) continue;
@@ -749,7 +761,7 @@ const rule$19 = {
749
761
  const { match, requiredTokens, requiredGroups } = options.matches[matchI];
750
762
  if (!match.length) throw new Error(`Match ${matchI}: must declare \`match: […]\``);
751
763
  if (!requiredTokens?.length && !requiredGroups?.length) throw new Error(`Match ${matchI}: must declare either \`requiredTokens: […]\` or \`requiredGroups: […]\``);
752
- const matcher = wcmatch(match);
764
+ const matcher = getTokenMatcher(match);
753
765
  const matchGroups = [];
754
766
  const matchTokens = [];
755
767
  let tokensMatched = false;
@@ -804,7 +816,7 @@ const rule$18 = {
804
816
  const { match, modes } = options.matches[matchI];
805
817
  if (!match.length) throw new Error(`Match ${matchI}: must declare \`match: […]\``);
806
818
  if (!modes?.length) throw new Error(`Match ${matchI}: must declare \`modes: […]\``);
807
- const matcher = wcmatch(match);
819
+ const matcher = getTokenMatcher(match);
808
820
  let tokensMatched = false;
809
821
  for (const t of Object.values(tokens)) {
810
822
  if (!matcher(t.id)) continue;
@@ -865,7 +877,7 @@ const rule$16 = {
865
877
  create({ tokens, options, report }) {
866
878
  if (!options) return;
867
879
  if (!options.properties.length) throw new Error(`"properties" can’t be empty`);
868
- const shouldIgnore = options.ignore ? wcmatch(options.ignore) : null;
880
+ const shouldIgnore = options.ignore ? getTokenMatcher(options.ignore) : null;
869
881
  for (const t of Object.values(tokens)) {
870
882
  if (shouldIgnore?.(t.id)) continue;
871
883
  if (t.$type !== "typography") continue;
@@ -1376,7 +1388,7 @@ const rule$6 = {
1376
1388
  "lineHeight"
1377
1389
  ] },
1378
1390
  create({ tokens, options, report }) {
1379
- const isIgnored = options.ignore ? wcmatch(options.ignore) : () => false;
1391
+ const isIgnored = options.ignore ? getTokenMatcher(options.ignore) : () => false;
1380
1392
  for (const t of Object.values(tokens)) {
1381
1393
  if (t.aliasOf || !t.originalValue || t.$type !== "typography" || isIgnored(t.id)) continue;
1382
1394
  validateTypography(t.originalValue.$value, {
@@ -2100,13 +2112,11 @@ function normalizeTokens({ rawConfig, config, logger, cwd }) {
2100
2112
  for (const file of rawConfig.tokens) if (typeof file === "string" || file instanceof URL) config.tokens.push(file);
2101
2113
  else logger.error({
2102
2114
  group: "config",
2103
- label: "tokens",
2104
- message: `Expected array of strings, encountered ${JSON.stringify(file)}`
2115
+ message: `tokens: Expected array of strings, encountered ${JSON.stringify(file)}`
2105
2116
  });
2106
2117
  } else logger.error({
2107
2118
  group: "config",
2108
- label: "tokens",
2109
- message: `Expected string or array of strings, received ${typeof rawConfig.tokens}`
2119
+ message: `tokens: Expected string or array of strings, received ${typeof rawConfig.tokens}`
2110
2120
  });
2111
2121
  for (let i = 0; i < config.tokens.length; i++) {
2112
2122
  const filepath = config.tokens[i];
@@ -2128,8 +2138,7 @@ function normalizeOutDir({ config, cwd, logger }) {
2128
2138
  if (config.outDir instanceof URL) {} else if (typeof config.outDir === "undefined") config.outDir = new URL("./tokens/", cwd);
2129
2139
  else if (typeof config.outDir !== "string") logger.error({
2130
2140
  group: "config",
2131
- label: "outDir",
2132
- message: `Expected string, received ${JSON.stringify(config.outDir)}`
2141
+ message: `outDir: Expected string, received ${JSON.stringify(config.outDir)}`
2133
2142
  });
2134
2143
  else {
2135
2144
  config.outDir = new URL(config.outDir, cwd);
@@ -2141,16 +2150,14 @@ function normalizePlugins({ config, logger }) {
2141
2150
  if (typeof config.plugins === "undefined") config.plugins = [];
2142
2151
  if (!Array.isArray(config.plugins)) logger.error({
2143
2152
  group: "config",
2144
- label: "plugins",
2145
- message: `Expected array of plugins, received ${JSON.stringify(config.plugins)}`
2153
+ message: `plugins: Expected array of plugins, received ${JSON.stringify(config.plugins)}`
2146
2154
  });
2147
2155
  config.plugins.push(coreLintPlugin());
2148
2156
  for (let n = 0; n < config.plugins.length; n++) {
2149
2157
  const plugin = config.plugins[n];
2150
2158
  if (typeof plugin !== "object") logger.error({
2151
2159
  group: "config",
2152
- label: `plugin[${n}]`,
2153
- message: `Expected output plugin, received ${JSON.stringify(plugin)}`
2160
+ message: `plugin#${n}: Expected output plugin, received ${JSON.stringify(plugin)}`
2154
2161
  });
2155
2162
  else if (!plugin.name) logger.error({
2156
2163
  group: "config",
@@ -2175,8 +2182,7 @@ function normalizeLint({ config, logger }) {
2175
2182
  if (config.lint.build.enabled !== void 0) {
2176
2183
  if (typeof config.lint.build.enabled !== "boolean") logger.error({
2177
2184
  group: "config",
2178
- label: "lint build enabled",
2179
- message: `Expected boolean, received ${JSON.stringify(config.lint.build)}`
2185
+ message: `lint.build.enabled: Expected boolean, received ${JSON.stringify(config.lint.build)}`
2180
2186
  });
2181
2187
  } else config.lint.build.enabled = true;
2182
2188
  if (config.lint.rules === void 0) config.lint.rules = { ...RECOMMENDED_CONFIG };
@@ -2184,8 +2190,7 @@ function normalizeLint({ config, logger }) {
2184
2190
  if (config.lint.rules === null || typeof config.lint.rules !== "object" || Array.isArray(config.lint.rules)) {
2185
2191
  logger.error({
2186
2192
  group: "config",
2187
- label: "lint rules",
2188
- message: `Expected object, received ${JSON.stringify(config.lint.rules)}`
2193
+ message: `lint.rules: Expected object, received ${JSON.stringify(config.lint.rules)}`
2189
2194
  });
2190
2195
  return;
2191
2196
  }
@@ -2196,16 +2201,14 @@ function normalizeLint({ config, logger }) {
2196
2201
  if (!pluginRules || Array.isArray(pluginRules) || typeof pluginRules !== "object") {
2197
2202
  logger.error({
2198
2203
  group: "config",
2199
- label: `plugin ${plugin.name}`,
2200
- message: `Expected object for lint() received ${JSON.stringify(pluginRules)}`
2204
+ message: `${plugin.name}: Expected object for lint() received ${JSON.stringify(pluginRules)}`
2201
2205
  });
2202
2206
  continue;
2203
2207
  }
2204
2208
  for (const rule of Object.keys(pluginRules)) {
2205
2209
  if (allRules.get(rule) && allRules.get(rule) !== plugin.name) logger.error({
2206
2210
  group: "config",
2207
- label: `plugin ${plugin.name}`,
2208
- message: `Duplicate rule ${rule} already registered by plugin ${allRules.get(rule)}`
2211
+ message: `${plugin.name}: Duplicate rule ${rule} already registered by plugin ${allRules.get(rule)}`
2209
2212
  });
2210
2213
  allRules.set(rule, plugin.name);
2211
2214
  }
@@ -2213,8 +2216,7 @@ function normalizeLint({ config, logger }) {
2213
2216
  for (const id of Object.keys(config.lint.rules)) {
2214
2217
  if (!allRules.has(id)) logger.error({
2215
2218
  group: "config",
2216
- label: `lint rule ${id}`,
2217
- message: "Unknown rule. Is the plugin installed?"
2219
+ message: `lint.rules.${id}: Unknown rule. Is the plugin installed?`
2218
2220
  });
2219
2221
  const value = config.lint.rules[id];
2220
2222
  let severity = "off";
@@ -2225,15 +2227,13 @@ function normalizeLint({ config, logger }) {
2225
2227
  options = value[1];
2226
2228
  } else if (value !== void 0) logger.error({
2227
2229
  group: "config",
2228
- label: `lint rule ${id}`,
2229
- message: `Invalid eyntax. Expected \`string | number | Array\`, received ${JSON.stringify(value)}}`
2230
+ message: `lint.rules.${id}: Invalid syntax. Expected \`string | number | Array\`, received ${JSON.stringify(value)}}`
2230
2231
  });
2231
2232
  config.lint.rules[id] = [severity, options];
2232
2233
  if (typeof severity === "number") {
2233
2234
  if (severity !== 0 && severity !== 1 && severity !== 2) logger.error({
2234
2235
  group: "config",
2235
- label: `lint rule ${id}`,
2236
- message: `Invalid number ${severity}. Specify 0 (off), 1 (warn), or 2 (error).`
2236
+ message: `lint.rules.${id}: Invalid number ${severity}. Specify 0 (off), 1 (warn), or 2 (error).`
2237
2237
  });
2238
2238
  config.lint.rules[id][0] = [
2239
2239
  "off",
@@ -2243,13 +2243,11 @@ function normalizeLint({ config, logger }) {
2243
2243
  } else if (typeof severity === "string") {
2244
2244
  if (severity !== "off" && severity !== "warn" && severity !== "error") logger.error({
2245
2245
  group: "config",
2246
- label: `lint rule ${id}`,
2247
- message: `Invalid string ${JSON.stringify(severity)}. Specify "off", "warn", or "error".`
2246
+ message: `lint.rules.${id}: Invalid string ${JSON.stringify(severity)}. Specify "off", "warn", or "error".`
2248
2247
  });
2249
2248
  } else if (value !== null) logger.error({
2250
2249
  group: "config",
2251
- label: `lint rule ${id}`,
2252
- message: `Expected string or number, received ${JSON.stringify(value)}`
2250
+ message: `lint.rules.${id}: Expected string or number, received ${JSON.stringify(value)}`
2253
2251
  });
2254
2252
  }
2255
2253
  }
@@ -2264,13 +2262,11 @@ function normalizeIgnore({ config, logger }) {
2264
2262
  config.ignore.deprecated ??= false;
2265
2263
  if (!Array.isArray(config.ignore.tokens) || config.ignore.tokens.some((x) => typeof x !== "string")) logger.error({
2266
2264
  group: "config",
2267
- label: "ignore tokens",
2268
- message: `Expected array of strings, received ${JSON.stringify(config.ignore.tokens)}`
2265
+ message: `ignore.tokens: Expected array of strings, received ${JSON.stringify(config.ignore.tokens)}`
2269
2266
  });
2270
2267
  if (typeof config.ignore.deprecated !== "boolean") logger.error({
2271
2268
  group: "config",
2272
- label: "ignore deprecated",
2273
- message: `Expected boolean, received ${JSON.stringify(config.ignore.deprecated)}`
2269
+ message: `ignore.deprecated: Expected boolean, received ${JSON.stringify(config.ignore.deprecated)}`
2274
2270
  });
2275
2271
  }
2276
2272
  /** Merge configs */
@@ -2579,7 +2575,7 @@ function tokenFromNode(node, { groups, path, source, ignore }) {
2579
2575
  }
2580
2576
  } }
2581
2577
  };
2582
- if (ignore?.deprecated && token.$deprecated || ignore?.tokens && wcmatch(ignore.tokens)(token.id)) return;
2578
+ if (ignore?.deprecated && token.$deprecated || ignore?.tokens && getTokenMatcher(ignore.tokens)(token.id)) return;
2583
2579
  const $extensions = getObjMember(node, "$extensions");
2584
2580
  if ($extensions) {
2585
2581
  const modeNode = getObjMember($extensions, "mode");