@terrazzo/plugin-sass 2.0.0-alpha.2 → 2.0.0-alpha.3

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,16 +1,5 @@
1
1
  # @terrazzo/plugin-sass
2
2
 
3
- ## 2.0.0-alpha.2
4
-
5
- ### Patch Changes
6
-
7
- - [#568](https://github.com/terrazzoapp/terrazzo/pull/568) [`67c75be`](https://github.com/terrazzoapp/terrazzo/commit/67c75be78978cece52b61cf258ccc3a875e6af48) Thanks [@drwpow](https://github.com/drwpow)! - Fix border tokens not cascading correctly across modes
8
-
9
- - Updated dependencies [[`67c75be`](https://github.com/terrazzoapp/terrazzo/commit/67c75be78978cece52b61cf258ccc3a875e6af48)]:
10
- - @terrazzo/plugin-css@2.0.0-alpha.2
11
- - @terrazzo/cli@2.0.0-alpha.2
12
- - @terrazzo/token-tools@2.0.0-alpha.2
13
-
14
3
  ## 2.0.0
15
4
 
16
5
  ### Minor Changes
@@ -21,12 +10,16 @@
21
10
 
22
11
  - [#530](https://github.com/terrazzoapp/terrazzo/pull/530) [`370ed7b`](https://github.com/terrazzoapp/terrazzo/commit/370ed7b0f578a64824124145d7f4936536b37bb3) Thanks [@drwpow](https://github.com/drwpow)! - ⚠️ [Plugin API] Minor breaking change: token.originalValue may be undefined for tokens created with $ref. This shouldn’t affect any tokens or plugins not using $refs. But going forward this value will be missing if the token was created dynamically via $ref.
23
12
 
13
+ - [#589](https://github.com/terrazzoapp/terrazzo/pull/589) [`8f32d44`](https://github.com/terrazzoapp/terrazzo/commit/8f32d44792bba62194e674c9b60cfdeb366c96c7) Thanks [@michaelurban](https://github.com/michaelurban)! - feat: add typography shorthand, improve Sass plugin
14
+
24
15
  ### Patch Changes
25
16
 
26
17
  - [#530](https://github.com/terrazzoapp/terrazzo/pull/530) [`370ed7b`](https://github.com/terrazzoapp/terrazzo/commit/370ed7b0f578a64824124145d7f4936536b37bb3) Thanks [@drwpow](https://github.com/drwpow)! - Validation moved to lint rules, which means token validation can be individually configured, and optionally extended.
27
18
 
28
19
  - [#553](https://github.com/terrazzoapp/terrazzo/pull/553) [`e63a627`](https://github.com/terrazzoapp/terrazzo/commit/e63a6277f61282fb608744a8348689b16f977076) Thanks [@Sidnioulz](https://github.com/Sidnioulz)! - Add support for the Token Listing format
29
20
 
21
+ - [#568](https://github.com/terrazzoapp/terrazzo/pull/568) [`67c75be`](https://github.com/terrazzoapp/terrazzo/commit/67c75be78978cece52b61cf258ccc3a875e6af48) Thanks [@drwpow](https://github.com/drwpow)! - Fix border tokens not cascading correctly across modes
22
+
30
23
  ## 0.10.4
31
24
 
32
25
  ### Patch Changes
package/README.md CHANGED
@@ -4,13 +4,13 @@ Convert DTCG tokens into Sass for use in any web application or native app with
4
4
 
5
5
  ## Setup
6
6
 
7
- Requires [Node.js 20 or later](https://nodejs.org) and [the CLI installed](https://terrazzo.app/docs/cli). With both installed, run:
7
+ Requires [Node.js 20 or later](https://nodejs.org) and [the CLI installed](https://terrazzo.app/docs). With both installed, run:
8
8
 
9
9
  ```sh
10
10
  npm i -D @terrazzo/plugin-css @terrazzo/plugin-sass
11
11
  ```
12
12
 
13
- Add a `terrazzo.config.js` to the root of your project:
13
+ Add a `terrazzo.config.ts` to the root of your project:
14
14
 
15
15
  ```ts
16
16
  import { defineConfig } from "@terrazzo/cli";
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { Plugin } from "@terrazzo/parser";
1
+ import { BuildHookOptions, Plugin } from "@terrazzo/parser";
2
2
  import { CSSPluginOptions } from "@terrazzo/plugin-css";
3
3
 
4
4
  //#region src/lib.d.ts
@@ -12,9 +12,76 @@ interface SassPluginOptions {
12
12
  declare const FILE_HEADER = "////\n/// Autogenerated by \u26CB Terrazzo. DO NOT EDIT!\n////\n\n@use \"sass:list\";\n@use \"sass:map\";\n@use \"sass:meta\";";
13
13
  declare const MIXIN_TOKEN = "@function token($tokenName) {\n @if map.has-key($__token-values, $tokenName) == false {\n @error 'No token named \"#{$tokenName}\"';\n }\n $_token: map.get($__token-values, $tokenName);\n @if meta.type-of($_token) == map and map.has-key($_token, \"__tz-error\") {\n @error map.get($_token, \"__tz-error\");\n }\n\n @return $_token;\n}";
14
14
  declare const MIXIN_TYPOGRAPHY = "@mixin typography($tokenName, $modeName: \".\") {\n @if map.has-key($__token-typography-mixins, $tokenName) == false {\n @error 'No typography mixin named \"#{$tokenName}\"';\n }\n $_mixin: map.get($__token-typography-mixins, $tokenName);\n $_properties: map.get($_mixin, \".\");\n @if map.has-key($_mixin) {\n $_properties: map.get($_mixin);\n }\n @each $_property, $_value in $_properties {\n #{$_property}: #{$_value};\n }\n}";
15
+ declare function getIndent(indentationLevel: number): string;
16
+ //#endregion
17
+ //#region src/build.d.ts
18
+ interface BuildParams {
19
+ getTransforms: BuildHookOptions['getTransforms'];
20
+ options?: SassPluginOptions;
21
+ }
22
+ //#endregion
23
+ //#region src/node.d.ts
24
+ type SassMapKey = string | number;
25
+ type SassMapValue = string | SassToken;
26
+ type SassMapValues = Record<SassMapKey, SassMapValue> | Iterable<[SassMapKey, SassMapValue]>;
27
+ declare abstract class SassToken {
28
+ readonly indentationLevel: number;
29
+ constructor(indentationLevel?: number);
30
+ abstract format(): string;
31
+ toString(): string;
32
+ createMap(values?: SassMapValues): SassMap;
33
+ createVariableDefinition(name: string, value: SassToken): VariableDefinitionSassToken;
34
+ }
35
+ declare abstract class ValueSassToken extends SassToken {
36
+ toString(): string;
37
+ }
38
+ declare class StringSassToken extends SassToken {
39
+ readonly value: string;
40
+ constructor(value: string, indentationLevel?: number);
41
+ format(): string;
42
+ }
43
+ declare class CssVarReferenceSassToken extends StringSassToken {
44
+ format(): string;
45
+ }
46
+ declare class BlankLineSassToken extends StringSassToken {
47
+ constructor();
48
+ }
49
+ declare class RootSassToken extends SassToken {
50
+ private readonly SEPARATOR;
51
+ private sassTokens;
52
+ constructor();
53
+ append(sassToken: SassToken): void;
54
+ appendString(value: string): void;
55
+ appendVariableDefinition(name: string, sassToken: SassToken): void;
56
+ appendBlankLine(): void;
57
+ appendUse(value: string, as_?: string): void;
58
+ format(): string;
59
+ }
60
+ declare class SassMap extends ValueSassToken {
61
+ private readonly MAP_OPEN;
62
+ private readonly MAP_CLOSE;
63
+ private readonly MAP_VALUE_SEPARATOR;
64
+ private readonly SEPARATOR;
65
+ private readonly values;
66
+ constructor(indentationLevel: number, values?: SassMapValues);
67
+ set(key: SassMapKey, value: SassMapValue): void;
68
+ extend(values: SassMapValues): void;
69
+ setMap(key: SassMapKey, values: SassMapValues): SassMap;
70
+ format(): string;
71
+ private sassMapValuesToIter;
72
+ }
73
+ declare class UseSassToken extends StringSassToken {
74
+ constructor(value: string, as_?: string);
75
+ }
76
+ declare class VariableDefinitionSassToken extends SassToken {
77
+ readonly name: string;
78
+ readonly value: SassToken;
79
+ constructor(indentationLevel: number, name: string, value: SassToken);
80
+ format(): string;
81
+ }
15
82
  //#endregion
16
83
  //#region src/index.d.ts
17
84
  declare function pluginSass(options?: SassPluginOptions): Plugin;
18
85
  //#endregion
19
- export { FILE_HEADER, FORMAT_ID, MIXIN_TOKEN, MIXIN_TYPOGRAPHY, SassPluginOptions, pluginSass as default };
86
+ export { BlankLineSassToken, BuildParams, CssVarReferenceSassToken, FILE_HEADER, FORMAT_ID, MIXIN_TOKEN, MIXIN_TYPOGRAPHY, RootSassToken, SassMap, SassMapKey, SassMapValue, SassMapValues, SassPluginOptions, SassToken, StringSassToken, UseSassToken, ValueSassToken, VariableDefinitionSassToken, pluginSass as default, getIndent };
20
87
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/lib.ts","../src/index.ts"],"sourcesContent":[],"mappings":";;;;cAEa,SAAA;UAEI,iBAAA;;EAFJ,QAAA,CAAA,EAIA,gBAJS,CAAA,UAAA,CAAA;EAEL;EAAiB,OAAA,CAAA,EAItB,gBAJsB,CAAA,SAAA,CAAA;;AAItB,cAGC,WAAA,GAHD,gIAAA;AAAgB,cAWf,WAAA,GAXe,4VAAA;AAGf,cAoBA,gBAAA,GApBW,+bAAA;;;iBCJA,UAAA,WAAqB,oBAAoB"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/lib.ts","../src/build.ts","../src/node.ts","../src/index.ts"],"sourcesContent":[],"mappings":";;;;cAEa,SAAA;UAEI,iBAAA;;EAFJ,QAAA,CAAA,EAIA,gBAJS,CAAA,UAAA,CAAA;EAEL;EAOJ,OAAA,CAAA,EAHD,gBAGY,CAAA,SAAA,CAAA;AAQxB;AAYa,cApBA,WAAA,GAoBgB,gIAAA;AAgBb,cA5BH,WAAA,GA4BY,4VAAA;cAhBZ,gBAAA;iBAgBG,SAAA;;;UC1CC,WAAA;iBACA;EDJJ,OAAA,CAAA,ECKD,iBDLU;AAEtB;;;KEDY,UAAA;KACA,YAAA,YAAwB;KACxB,aAAA,GAAgB,OAAO,YAAY,gBAAgB,UAAU,YAAY;uBAE/D,SAAA;EFLT,SAAA,gBAAS,EAAA,MAAA;EAEL,WAAA,CAAA,gBAEJ,CAFqB,EAAA,MAErB;EAKA,SAAA,MAAW,CAAA,CAAA,EAAA,MAAA;EAQX,QAAA,CAAA,CAAA,EAAA,MAAW;EAYX,SAAA,CAAA,MAAgB,CAAhB,EEfe,aFeC,CAAA,EEfe,OFef;EAgBb,wBAAS,CAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EE3B8B,SF2B9B,CAAA,EE3B0C,2BF2B1C;;uBEtBH,cAAA,SAAuB,SAAA;;ADpB7C;cC0Ba,eAAA,SAAwB,SAAA;;;EA5BzB,MAAA,CAAA,CAAA,EAAA,MAAU;AACtB;AACY,cAuCC,wBAAA,SAAiC,eAAA,CAvCrB;EAAU,MAAA,CAAA,CAAA,EAAA,MAAA;;AAAP,cA6Cf,kBAAA,SAA2B,eAAA,CA7CZ;EAA6C,WAAA,CAAA;;AAAV,cAmDlD,aAAA,SAAsB,SAAA,CAnD4B;EAAQ,iBAAA,SAAA;EAEjD,QAAA,UAAS;EASH,WAAA,CAAA;EAAgB,MAAA,CAAA,SAAA,EAkDjB,SAlDiB,CAAA,EAAA,IAAA;EAIW,YAAA,CAAA,KAAA,EAAA,MAAA,CAAA,EAAA,IAAA;EAAY,wBAAA,CAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAsDR,SAtDQ,CAAA,EAAA,IAAA;EAA2B,eAAA,CAAA,CAAA,EAAA,IAAA;EAKxE,SAAA,CAAA,KAAA,EAAe,MAAA,EAAA,GAAQ,CAAA,EAAA,MAAA,CAAS,EAAA,IAAA;EAMzC,MAAA,CAAA,CAAA,EAAA,MAAA;AAab;AAMa,cAyCA,OAAA,SAAgB,cAAA,CAzC0B;EAM1C,iBAAc,QAAA;EAUA,iBAAA,SAAA;EAQgC,iBAAA,mBAAA;EAlBxB,iBAAA,SAAA;EAAS,iBAAA,MAAA;EAmC/B,WAAQ,CAAA,gBAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAS4B,aAT5B;EAS4B,GAAA,CAAA,GAAA,EAK/B,UAL+B,EAAA,KAAA,EAKZ,YALY,CAAA,EAAA,IAAA;EAK/B,MAAA,CAAA,MAAA,EAIM,aAJN,CAAA,EAAA,IAAA;EAAmB,MAAA,CAAA,GAAA,EAUhB,UAVgB,EAAA,MAAA,EAUI,aAVJ,CAAA,EAUiB,OAVjB;EAIb,MAAA,CAAA,CAAA,EAAA,MAAA;EAMH,QAAA,mBAAA;;AAAiC,cAuBzC,YAAA,SAAqB,eAAA,CAvBoB;EAxBzB,WAAA,CAAA,KAAA,EAAA,MAAA,EAAA,GAAA,CAAA,EAAA,MAAA;;AA+ChB,cAQA,2BAAA,SAAoC,SAAA,CARA;EAQpC,SAAA,IAAA,EAAA,MAAA;EAIc,SAAA,KAAA,EAAA,SAAA;EAAA,WAAA,CAAA,gBAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,SAAA;EAJsB,MAAA,CAAA,CAAA,EAAA,MAAA;;;;AF9IhC,iBGKO,UAAA,CHLU,OAItB,CAFC,EGGgC,iBHDjC,CAAA,EGCqD,MHDrC"}