@o3r/design 10.0.0-prerelease.6 → 10.0.0-prerelease.60

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/builders/generate-css/index.d.ts.map +1 -1
  2. package/builders/generate-css/index.js +19 -8
  3. package/builders/generate-css/schema.d.ts +2 -0
  4. package/builders/generate-css/schema.d.ts.map +1 -1
  5. package/builders/generate-css/schema.json +5 -0
  6. package/collection.json +8 -0
  7. package/package.json +21 -17
  8. package/schematics/design-token-to-component/index.d.ts +13 -0
  9. package/schematics/design-token-to-component/index.d.ts.map +1 -0
  10. package/schematics/design-token-to-component/index.js +31 -0
  11. package/schematics/design-token-to-component/schema.d.ts +8 -0
  12. package/schematics/design-token-to-component/schema.d.ts.map +1 -0
  13. package/schematics/design-token-to-component/schema.json +20 -0
  14. package/schematics/design-token-to-component/templates/__fileName__.template +8 -0
  15. package/schematics/extract-token/index.d.ts.map +1 -0
  16. package/schematics/{ extract-token/index.js → extract-token/index.js} +2 -1
  17. package/schematics/extract-token/schema.d.ts.map +1 -0
  18. package/schematics/extract-token/schema.js +3 -0
  19. package/schematics/{ extract-token/schema.json → extract-token/schema.json} +1 -1
  20. package/schematics/generate-css/schema.json +3 -3
  21. package/schematics/ng-add/index.d.ts +2 -1
  22. package/schematics/ng-add/index.d.ts.map +1 -1
  23. package/schematics/ng-add/index.js +18 -3
  24. package/schematics/ng-add/register-generate-css/register-task.d.ts.map +1 -1
  25. package/schematics/ng-add/register-generate-css/register-task.js +7 -1
  26. package/schematics/ng-add/schema.d.ts +2 -0
  27. package/schematics/ng-add/schema.d.ts.map +1 -1
  28. package/schematics/ng-add/schema.json +4 -0
  29. package/src/core/design-token/design-token-specification.interface.d.ts +7 -0
  30. package/src/core/design-token/design-token-specification.interface.d.ts.map +1 -1
  31. package/src/core/design-token/design-token-specification.interface.js.map +1 -1
  32. package/src/core/design-token/parsers/design-token-parser.interface.d.ts +20 -1
  33. package/src/core/design-token/parsers/design-token-parser.interface.d.ts.map +1 -1
  34. package/src/core/design-token/parsers/design-token.parser.d.ts.map +1 -1
  35. package/src/core/design-token/parsers/design-token.parser.js +8 -7
  36. package/src/core/design-token/parsers/design-token.parser.js.map +1 -1
  37. package/src/core/design-token/renderers/css/design-token-definition.renderers.d.ts +6 -0
  38. package/src/core/design-token/renderers/css/design-token-definition.renderers.d.ts.map +1 -1
  39. package/src/core/design-token/renderers/css/design-token-definition.renderers.js +1 -1
  40. package/src/core/design-token/renderers/css/design-token-definition.renderers.js.map +1 -1
  41. package/src/core/design-token/renderers/css/design-token-value.renderers.d.ts +20 -1
  42. package/src/core/design-token/renderers/css/design-token-value.renderers.d.ts.map +1 -1
  43. package/src/core/design-token/renderers/css/design-token-value.renderers.js +14 -3
  44. package/src/core/design-token/renderers/css/design-token-value.renderers.js.map +1 -1
  45. package/src/core/design-token/renderers/sass/design-token-definition.renderers.d.ts +6 -0
  46. package/src/core/design-token/renderers/sass/design-token-definition.renderers.d.ts.map +1 -1
  47. package/src/core/design-token/renderers/sass/design-token-definition.renderers.js +3 -4
  48. package/src/core/design-token/renderers/sass/design-token-definition.renderers.js.map +1 -1
  49. package/schematics/ extract-token/index.d.ts.map +0 -1
  50. package/schematics/ extract-token/schema.d.ts.map +0 -1
  51. /package/schematics/{ extract-token → design-token-to-component}/schema.js +0 -0
  52. /package/schematics/{ extract-token → extract-token}/index.d.ts +0 -0
  53. /package/schematics/{ extract-token → extract-token}/schema.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../builders/generate-css/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAe5D;;;GAGG;;AACH,wBA4GG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../builders/generate-css/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAiB5D;;;GAGG;;AACH,wBAsHG"}
@@ -4,6 +4,7 @@ const architect_1 = require("@angular-devkit/architect");
4
4
  const public_api_1 = require("../../src/public_api");
5
5
  const node_path_1 = require("node:path");
6
6
  const globby = require("globby");
7
+ const node_os_1 = require("node:os");
7
8
  /**
8
9
  * Generate CSS from Design Token files
9
10
  * @param options
@@ -20,20 +21,29 @@ exports.default = (0, architect_1.createBuilder)(async (options, context) => {
20
21
  return (0, node_path_1.resolve)(context.workspaceRoot, options.defaultStyleFile);
21
22
  };
22
23
  const tokenVariableNameRenderer = options.prefix ? (variable) => options.prefix + variable.getKey() : undefined;
23
- const sassRenderer = (0, public_api_1.getSassTokenDefinitionRenderer)({ tokenVariableNameRenderer: (v) => (options?.prefixPrivate || '') + (0, public_api_1.tokenVariableNameSassRenderer)(v) });
24
+ const logger = context.logger;
25
+ const sassRenderer = (0, public_api_1.getSassTokenDefinitionRenderer)({
26
+ tokenVariableNameRenderer: (v) => (options?.prefixPrivate || '') + (0, public_api_1.tokenVariableNameSassRenderer)(v),
27
+ logger
28
+ });
24
29
  const renderDesignTokenOptionsCss = {
25
30
  determineFileToUpdate: determineCssFileToUpdate,
26
31
  tokenDefinitionRenderer: (0, public_api_1.getCssTokenDefinitionRenderer)({
27
- tokenVariableNameRenderer: options.prefix ? (variable) => options.prefix + variable.getKey() : undefined,
28
- privateDefinitionRenderer: options.renderPrivateVariableTo === 'sass' ? sassRenderer : undefined
32
+ tokenVariableNameRenderer,
33
+ privateDefinitionRenderer: options.renderPrivateVariableTo === 'sass' ? sassRenderer : undefined,
34
+ tokenValueRenderer: (0, public_api_1.getCssTokenValueRenderer)({
35
+ tokenVariableNameRenderer,
36
+ unregisteredReferenceRenderer: options.failOnMissingReference ? (refName) => { throw new Error(`The Design Token ${refName} is not registered`); } : undefined
37
+ }),
38
+ logger
29
39
  }),
30
- logger: context.logger
40
+ logger
31
41
  };
32
42
  const renderDesignTokenOptionsMetadata = {
33
43
  determineFileToUpdate: () => (0, node_path_1.resolve)(context.workspaceRoot, options.metadataOutput),
34
44
  styleContentUpdater: (0, public_api_1.getMetadataStyleContentUpdater)(),
35
45
  tokenDefinitionRenderer: (0, public_api_1.getMetadataTokenDefinitionRenderer)({ tokenVariableNameRenderer }),
36
- logger: context.logger
46
+ logger
37
47
  };
38
48
  const execute = async (renderDesignTokenOptions) => {
39
49
  const files = (await globby(designTokenFilePatterns, { cwd: context.workspaceRoot, absolute: true }));
@@ -79,16 +89,17 @@ exports.default = (0, architect_1.createBuilder)(async (options, context) => {
79
89
  ])).reduce((acc, res) => {
80
90
  if (res.status === 'fulfilled') {
81
91
  acc.success &&= res.value.success;
82
- if (!res.value.error) {
92
+ if (res.value.error) {
83
93
  acc.error ||= '';
84
- acc.error += '\n' + res.value.error;
94
+ acc.error += node_os_1.EOL + res.value.error;
85
95
  }
86
96
  }
87
97
  else {
88
98
  acc.success = false;
89
99
  if (res.reason) {
90
100
  acc.error ||= '';
91
- acc.error += '\n' + res.reason;
101
+ // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
102
+ acc.error += node_os_1.EOL + res.reason;
92
103
  }
93
104
  }
94
105
  return acc;
@@ -28,5 +28,7 @@ export interface GenerateCssSchematicsSchema extends SchematicOptionObject {
28
28
  renderPrivateVariableTo?: 'sass';
29
29
  /** Prefix to happen to generated Sass variables if generated */
30
30
  prefixPrivate?: string;
31
+ /** Determine if the builder should fail if a missing Design Token reference is detected */
32
+ failOnMissingReference?: boolean;
31
33
  }
32
34
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../builders/generate-css/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,WAAW,2BAA4B,SAAQ,qBAAqB;IACxE,mDAAmD;IACnD,uBAAuB,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAE3C;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,gFAAgF;IAChF,gBAAgB,EAAE,MAAM,CAAC;IAEzB,wBAAwB;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,wEAAwE;IACxE,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,0DAA0D;IAC1D,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../builders/generate-css/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,WAAW,2BAA4B,SAAQ,qBAAqB;IACxE,mDAAmD;IACnD,uBAAuB,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAE3C;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,gFAAgF;IAChF,gBAAgB,EAAE,MAAM,CAAC;IAEzB,wBAAwB;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,wEAAwE;IACxE,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,0DAA0D;IAC1D,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,2FAA2F;IAC3F,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC"}
@@ -59,6 +59,11 @@
59
59
  "sass"
60
60
  ],
61
61
  "description": "Generate the Private Variable to the given language (the variable is not generated if not specified)"
62
+ },
63
+ "failOnMissingReference": {
64
+ "type": "boolean",
65
+ "default": false,
66
+ "description": "Determine if the builder should fail if a missing Design Token reference is detected"
62
67
  }
63
68
  },
64
69
  "additionalProperties": true,
package/collection.json CHANGED
@@ -19,6 +19,14 @@
19
19
  "description": "Extract the Design Token specification from SCSS",
20
20
  "factory": "./schematics/extract-token/index#extractToken",
21
21
  "schema": "./schematics/extract-token/schema.json"
22
+ },
23
+ "design-token-to-component": {
24
+ "description": "Add design token to an Otter component",
25
+ "factory": "./schematics/design-token-to-component/index#ngAddDesignToken",
26
+ "schema": "./schematics/design-token-to-component/schema.json",
27
+ "aliases": [
28
+ "add-design-token"
29
+ ]
22
30
  }
23
31
  }
24
32
  }
package/package.json CHANGED
@@ -1,6 +1,9 @@
1
1
  {
2
2
  "name": "@o3r/design",
3
- "version": "10.0.0-prerelease.6",
3
+ "version": "10.0.0-prerelease.60",
4
+ "publishConfig": {
5
+ "access": "public"
6
+ },
4
7
  "description": "A design framework to generate theme on an Otter application based on Design Tokens.",
5
8
  "keywords": [
6
9
  "design",
@@ -46,13 +49,13 @@
46
49
  "tslib": "^2.5.3"
47
50
  },
48
51
  "peerDependencies": {
49
- "@o3r/core": "^10.0.0-prerelease.6",
50
- "@o3r/schematics": "^10.0.0-prerelease.6",
51
- "@o3r/styling": "^10.0.0-prerelease.6",
52
+ "@o3r/core": "^10.0.0-prerelease.60",
53
+ "@o3r/schematics": "^10.0.0-prerelease.60",
54
+ "@o3r/styling": "^10.0.0-prerelease.60",
52
55
  "chokidar": "^3.5.2",
53
56
  "globby": "^11.1.0",
54
57
  "minimatch": "~9.0.3",
55
- "sass": "~1.69.0"
58
+ "sass": "~1.70.0"
56
59
  },
57
60
  "peerDependenciesMeta": {
58
61
  "@o3r/core": {
@@ -90,17 +93,18 @@
90
93
  "@babel/core": "~7.23.0",
91
94
  "@babel/preset-typescript": "~7.23.0",
92
95
  "@compodoc/compodoc": "^1.1.19",
93
- "@nx/eslint": "~17.2.0",
94
- "@nx/eslint-plugin": "~17.2.0",
95
- "@nx/jest": "~17.2.0",
96
- "@nx/js": "~17.2.0",
97
- "@o3r/build-helpers": "^10.0.0-prerelease.6",
98
- "@o3r/core": "^10.0.0-prerelease.6",
99
- "@o3r/eslint-plugin": "^10.0.0-prerelease.6",
100
- "@o3r/schematics": "^10.0.0-prerelease.6",
101
- "@o3r/styling": "^10.0.0-prerelease.6",
102
- "@o3r/test-helpers": "^10.0.0-prerelease.6",
96
+ "@nx/eslint": "~17.3.0",
97
+ "@nx/eslint-plugin": "~17.3.0",
98
+ "@nx/jest": "~17.3.0",
99
+ "@nx/js": "~17.3.0",
100
+ "@o3r/build-helpers": "^10.0.0-prerelease.60",
101
+ "@o3r/core": "^10.0.0-prerelease.60",
102
+ "@o3r/eslint-plugin": "^10.0.0-prerelease.60",
103
+ "@o3r/schematics": "^10.0.0-prerelease.60",
104
+ "@o3r/styling": "^10.0.0-prerelease.60",
105
+ "@o3r/test-helpers": "^10.0.0-prerelease.60",
103
106
  "@schematics/angular": "~17.0.3",
107
+ "@stylistic/eslint-plugin-ts": "^1.5.4",
104
108
  "@types/jest": "~29.5.2",
105
109
  "@types/minimist": "^1.2.2",
106
110
  "@types/node": "^20.0.0",
@@ -121,9 +125,9 @@
121
125
  "jsonc-eslint-parser": "~2.4.0",
122
126
  "jsonschema": "~1.4.1",
123
127
  "minimatch": "~9.0.3",
124
- "nx": "~17.2.0",
128
+ "nx": "~17.3.0",
125
129
  "rxjs": "^7.8.1",
126
- "sass": "~1.69.5",
130
+ "sass": "~1.70.0",
127
131
  "ts-jest": "~29.1.1",
128
132
  "ts-node": "~10.9.1",
129
133
  "type-fest": "^4.3.1",
@@ -0,0 +1,13 @@
1
+ import { Rule } from '@angular-devkit/schematics';
2
+ import type { NgAddDesignTokenSchematicsSchema } from './schema';
3
+ /**
4
+ * Add Design Token to an existing component
5
+ * @param options
6
+ */
7
+ export declare function ngAddDesignTokenFn(options: NgAddDesignTokenSchematicsSchema): Rule;
8
+ /**
9
+ * Add Design Token to an existing component
10
+ * @param options
11
+ */
12
+ export declare const ngAddDesignToken: (options: NgAddDesignTokenSchematicsSchema) => Rule;
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../schematics/design-token-to-component/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,IAAI,EAGL,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,UAAU,CAAC;AAEjE;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,gCAAgC,GAAG,IAAI,CAelF;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,qDAA4D,CAAC"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ngAddDesignToken = exports.ngAddDesignTokenFn = void 0;
4
+ const schematics_1 = require("@angular-devkit/schematics");
5
+ const schematics_2 = require("@o3r/schematics");
6
+ const node_path_1 = require("node:path");
7
+ /**
8
+ * Add Design Token to an existing component
9
+ * @param options
10
+ */
11
+ function ngAddDesignTokenFn(options) {
12
+ const fileName = (0, node_path_1.basename)(options.path.endsWith('.json') ? options.path : `${options.path}.json`);
13
+ const name = fileName.slice(0, fileName.indexOf('.') > -1 ? fileName.indexOf('.') : undefined);
14
+ const createDesignTokenFilesRule = (0, schematics_1.mergeWith)((0, schematics_1.apply)((0, schematics_1.url)('./templates'), [
15
+ (0, schematics_1.template)({
16
+ name,
17
+ fileName,
18
+ stylingFile: options.stylePath ? (0, node_path_1.relative)((0, node_path_1.dirname)(options.path), options.stylePath) : undefined
19
+ }),
20
+ (0, schematics_1.renameTemplateFiles)(),
21
+ (0, schematics_1.move)((0, node_path_1.dirname)(options.path))
22
+ ]), schematics_1.MergeStrategy.Overwrite);
23
+ return createDesignTokenFilesRule;
24
+ }
25
+ exports.ngAddDesignTokenFn = ngAddDesignTokenFn;
26
+ /**
27
+ * Add Design Token to an existing component
28
+ * @param options
29
+ */
30
+ exports.ngAddDesignToken = (0, schematics_2.createSchematicWithMetricsIfInstalled)(ngAddDesignTokenFn);
31
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,8 @@
1
+ import type { SchematicOptionObject } from '@o3r/schematics';
2
+ export interface NgAddDesignTokenSchematicsSchema extends SchematicOptionObject {
3
+ /** Path to the component's design token file */
4
+ path: string;
5
+ /** Path to the Style file to update */
6
+ stylePath?: string;
7
+ }
8
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../schematics/design-token-to-component/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,WAAW,gCAAiC,SAAQ,qBAAqB;IAC7E,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IAEb,uCAAuC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,20 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "NgAddDesignTokenSchematicsSchema",
4
+ "title": "Add Otter Design Token to an existing component",
5
+ "description": "Add Otter Design Token to an existing component",
6
+ "properties": {
7
+ "path": {
8
+ "type": "string",
9
+ "description": "Path to the component's Design Token specification file"
10
+ },
11
+ "stylePath": {
12
+ "type": "string",
13
+ "description": "Path to the Style file to update"
14
+ }
15
+ },
16
+ "additionalProperties": true,
17
+ "required": [
18
+ "path"
19
+ ]
20
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/AmadeusITGroup/otter/main/packages/@o3r/design/schemas/design-token.schema.json",
3
+ "<%= name %>": {
4
+ "$extensions": {
5
+ <% if (stylingFile) { %>"o3rTargetFile": "<%= stylingFile %>"<% } %>
6
+ }
7
+ }
8
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../schematics/extract-token/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAM7D;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,4BAA4B,GAAG,IAAI,CA2FxE"}
@@ -49,7 +49,7 @@ function extractToken(options) {
49
49
  targetNode[name] ||= {};
50
50
  targetNode = targetNode[name];
51
51
  });
52
- const valueWithVariable = [...variable.defaultValue.matchAll(/var\(--([^)])\)/g)]
52
+ const valueWithVariable = [...variable.defaultValue.matchAll(/var\(--([^,)]+),?[^)]*\)/g)]
53
53
  .reduce((acc, [variableString, variableName]) => {
54
54
  return acc.replaceAll(variableString, `{${variableName.replaceAll('-', '.')}}`);
55
55
  }, variable.defaultValue);
@@ -75,6 +75,7 @@ function extractToken(options) {
75
75
  designTokenNode.$extensions.o3rPrivate = isPrivate;
76
76
  designTokenNode.$extensions.o3rTargetFile = node_path_1.posix.join('.', node_path_1.posix.basename(file));
77
77
  });
78
+ tokenSpecification.$schema = 'https://raw.githubusercontent.com/AmadeusITGroup/otter/main/packages/@o3r/design/schemas/design-token.schema.json';
78
79
  tree.create(file.replace(/\.scss$/, '.json'), JSON.stringify(tokenSpecification, null, 2));
79
80
  });
80
81
  return () => tree;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../schematics/extract-token/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,WAAW,4BAA6B,SAAQ,qBAAqB;IACzE;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAE7D,oDAAoD;IACpD,qBAAqB,EAAE,MAAM,EAAE,CAAC;CACjC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=schema.js.map
@@ -38,6 +38,6 @@
38
38
  },
39
39
  "additionalProperties": true,
40
40
  "required": [
41
- "componentFilePattern"
41
+ "componentFilePatterns"
42
42
  ]
43
43
  }
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema",
3
- "$id": "ngAddSchematicsSchema",
4
- "title": "Add Otter Design",
5
- "description": "ngAdd Otter Design",
3
+ "$id": "generateCssSchematicsSchema",
4
+ "title": "Generate CSS from design token",
5
+ "description": "Generate CSS from design token",
6
6
  "properties": {
7
7
  "designTokenFilePatterns": {
8
8
  "description": "Path patterns to the Design Token JSON files",
@@ -1,7 +1,8 @@
1
1
  import { type Rule } from '@angular-devkit/schematics';
2
+ import type { NgAddSchematicsSchema } from './schema';
2
3
  /**
3
4
  * Add Otter design to an Angular Project
4
5
  * @param options
5
6
  */
6
- export declare function ngAdd(): Rule;
7
+ export declare function ngAdd(options: NgAddSchematicsSchema): Rule;
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../schematics/ng-add/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAI9D;;;GAGG;AACH,wBAAgB,KAAK,IAAI,IAAI,CAM5B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../schematics/ng-add/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAIpE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAEtD;;;GAGG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CAoB1D"}
@@ -3,16 +3,31 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ngAdd = void 0;
4
4
  const schematics_1 = require("@angular-devkit/schematics");
5
5
  const register_generate_css_1 = require("./register-generate-css");
6
- const _extract_token_1 = require("../ extract-token");
6
+ const extract_token_1 = require("../extract-token");
7
+ const schematics_2 = require("@o3r/schematics");
7
8
  /**
8
9
  * Add Otter design to an Angular Project
9
10
  * @param options
10
11
  */
11
- function ngAdd() {
12
+ function ngAdd(options) {
12
13
  /* ng add rules */
13
14
  return (0, schematics_1.chain)([
14
15
  (0, register_generate_css_1.registerGenerateCssBuilder)(),
15
- (0, _extract_token_1.extractToken)({ componentFilePatterns: ['**/*.scss'], includeTags: true })
16
+ (0, schematics_2.setupSchematicsDefaultParams)({
17
+ // eslint-disable-next-line @typescript-eslint/naming-convention
18
+ '@o3r/core:component': {
19
+ useOtterDesignToken: true
20
+ },
21
+ // eslint-disable-next-line @typescript-eslint/naming-convention
22
+ '@o3r/core:component-presenter': {
23
+ useOtterDesignToken: true
24
+ },
25
+ // eslint-disable-next-line @typescript-eslint/naming-convention
26
+ '*:*': {
27
+ useOtterDesignToken: true
28
+ }
29
+ }),
30
+ options.extractDesignToken ? (0, extract_token_1.extractToken)({ componentFilePatterns: ['**/*.scss'], includeTags: true }) : schematics_1.noop
16
31
  ]);
17
32
  }
18
33
  exports.ngAdd = ngAdd;
@@ -1 +1 @@
1
- {"version":3,"file":"register-task.d.ts","sourceRoot":"","sources":["../../../../schematics/ng-add/register-generate-css/register-task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqE,KAAK,IAAI,EAAiB,MAAM,4BAA4B,CAAC;AAKzI;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,iBAAkB,MAAM,wBAA8B,IAmD5F,CAAC"}
1
+ {"version":3,"file":"register-task.d.ts","sourceRoot":"","sources":["../../../../schematics/ng-add/register-generate-css/register-task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqE,KAAK,IAAI,EAAiB,MAAM,4BAA4B,CAAC;AAKzI;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,iBAAkB,MAAM,wBAA8B,IAyD5F,CAAC"}
@@ -14,7 +14,7 @@ const registerGenerateCssBuilder = (projectName, taskName = 'generate-css') => {
14
14
  const workspaceProject = projectName ? (0, schematics_2.getWorkspaceConfig)(tree)?.projects[projectName] : undefined;
15
15
  const srcBasePath = workspaceProject?.sourceRoot || (workspaceProject?.root ? node_path_1.posix.resolve(workspaceProject.root, 'src') : '');
16
16
  const themeFile = node_path_1.posix.resolve(srcBasePath, 'style', 'theme.scss');
17
- const taskParameters = {
17
+ const taskOptions = {
18
18
  defaultStyleFile: themeFile,
19
19
  renderPrivateVariableTo: 'sass',
20
20
  designTokenFilePatterns: [
@@ -22,6 +22,12 @@ const registerGenerateCssBuilder = (projectName, taskName = 'generate-css') => {
22
22
  `${node_path_1.posix.resolve(srcBasePath, '**', '*.theme.json')}`
23
23
  ]
24
24
  };
25
+ const taskParameters = {
26
+ options: taskOptions,
27
+ configuration: {
28
+ watch: { watch: true }
29
+ }
30
+ };
25
31
  if (!workspaceProject) {
26
32
  logger.warn(`No angular.json found, the task ${taskName} will not be created`);
27
33
  return tree;
@@ -2,5 +2,7 @@ import type { SchematicOptionObject } from '@o3r/schematics';
2
2
  export interface NgAddSchematicsSchema extends SchematicOptionObject {
3
3
  /** Project name */
4
4
  projectName?: string | undefined;
5
+ /** Extract the design token from Sass file in the project */
6
+ extractDesignToken?: boolean;
5
7
  }
6
8
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../schematics/ng-add/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IAClE,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../schematics/ng-add/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IAClE,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,6DAA6D;IAC7D,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B"}
@@ -10,6 +10,10 @@
10
10
  "$default": {
11
11
  "$source": "projectName"
12
12
  }
13
+ },
14
+ "extractDesignToken": {
15
+ "type": "boolean",
16
+ "description": "Extract the design token from Sass file in the project"
13
17
  }
14
18
  },
15
19
  "additionalProperties": true,
@@ -5,6 +5,13 @@ export interface DesignTokenMetadata {
5
5
  label?: string;
6
6
  /** Name of a group of variables */
7
7
  category?: string;
8
+ /** Component reference if the variable is linked to one */
9
+ component?: {
10
+ /** Name of the component */
11
+ name: string;
12
+ /** Name of the library containing the component */
13
+ library: string;
14
+ };
8
15
  }
9
16
  /** Design Token Group Extension fields supported by the default renderer */
10
17
  export interface DesignTokenGroupExtensions {
@@ -1 +1 @@
1
- {"version":3,"file":"design-token-specification.interface.d.ts","sourceRoot":"","sources":["../../../../src/core/design-token/design-token-specification.interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"design-token-specification.interface.d.ts","sourceRoot":"","sources":["../../../../src/core/design-token/design-token-specification.interface.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"design-token-specification.interface.js","sourceRoot":"","sources":["../../../../src/core/design-token/design-token-specification.interface.ts"],"names":[],"mappings":";;;AAsOA;;;GAGG;AACI,MAAM,aAAa,GAAG,CAAC,IAAU,EAAuB,EAAE;IAC/D,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,KAAK,WAAW,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;AAC1F,CAAC,CAAC;AAFW,QAAA,aAAa,iBAExB;AAEF;;;GAGG;AACI,MAAM,kBAAkB,GAAG,CAAC,IAAU,EAA4B,EAAE;IACzE,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AACvF,CAAC,CAAC;AAFW,QAAA,kBAAkB,sBAE7B;AAEF;;;;GAIG;AACH,6EAA6E;AACtE,MAAM,kCAAkC,GAAG,CAAC,KAAgD,EAAmD,EAAE;IACtJ,OAAO,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC;AAC9C,CAAC,CAAC;AAFW,QAAA,kCAAkC,sCAE7C;AAEF;;;;GAIG;AACI,MAAM,6BAA6B,GAAG,CAAC,IAAiC,EAA8E,EAAE;IAC7J,OAAO,CAAC,CAAC,IAAI,IAAI,IAAA,0CAAkC,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACnE,CAAC,CAAC;AAFW,QAAA,6BAA6B,iCAExC"}
1
+ {"version":3,"file":"design-token-specification.interface.js","sourceRoot":"","sources":["../../../../src/core/design-token/design-token-specification.interface.ts"],"names":[],"mappings":";;;AA6OA;;;GAGG;AACI,MAAM,aAAa,GAAG,CAAC,IAAU,EAAuB,EAAE;IAC/D,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,KAAK,WAAW,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;AAC1F,CAAC,CAAC;AAFW,QAAA,aAAa,iBAExB;AAEF;;;GAGG;AACI,MAAM,kBAAkB,GAAG,CAAC,IAAU,EAA4B,EAAE;IACzE,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AACvF,CAAC,CAAC;AAFW,QAAA,kBAAkB,sBAE7B;AAEF;;;;GAIG;AACH,6EAA6E;AACtE,MAAM,kCAAkC,GAAG,CAAC,KAAgD,EAAmD,EAAE;IACtJ,OAAO,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC;AAC9C,CAAC,CAAC;AAFW,QAAA,kCAAkC,sCAE7C;AAEF;;;;GAIG;AACI,MAAM,6BAA6B,GAAG,CAAC,IAAiC,EAA8E,EAAE;IAC7J,OAAO,CAAC,CAAC,IAAI,IAAI,IAAA,0CAAkC,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACnE,CAAC,CAAC;AAFW,QAAA,6BAA6B,iCAExC"}
@@ -10,8 +10,27 @@ export interface ParentReference {
10
10
  * Function rendering the Design Token Value
11
11
  * @param tokenStructure Parsed Design Token
12
12
  * @param variableSet Complete list of the parsed Design Token
13
+ * @param enforceReferenceRendering Renderer the variable as reference
13
14
  */
14
- export type TokenValueRenderer = (tokenStructure: DesignTokenVariableStructure, variableSet: Map<string, DesignTokenVariableStructure>) => string;
15
+ export type TokenValueRenderer = (tokenStructure: DesignTokenVariableStructure, variableSet: Map<string, DesignTokenVariableStructure>, enforceReferenceRendering?: boolean) => string;
16
+ /**
17
+ * Function rendering the Design Token Reference
18
+ * @param tokenStructure Parsed Design Token
19
+ * @param variableSet Complete list of the parsed Design Token
20
+ */
21
+ export type TokenReferenceRender = (tokenStructure: DesignTokenVariableStructure, variableSet: Map<string, DesignTokenVariableStructure>) => string;
22
+ /**
23
+ * Function rendering the Design Token Reference not registered
24
+ * @param referenceName Name of the un registered variable
25
+ * @param variableSet Complete list of the parsed Design Token
26
+ */
27
+ export type UnregisteredTokenReferenceRender = (referenceName: string, variableSet: Map<string, DesignTokenVariableStructure>) => string;
28
+ /**
29
+ * Function rendering the Design Token Reference
30
+ * @param tokenStructure Parsed Design Token
31
+ * @param variableSet Complete list of the parsed Design Token
32
+ */
33
+ export type TokenReferenceRenderer = (tokenStructure: DesignTokenVariableStructure, variableSet: Map<string, DesignTokenVariableStructure>) => string;
15
34
  /**
16
35
  * Function rendering the Design Token Key
17
36
  * @param tokenStructure Parsed Design Token
@@ -1 +1 @@
1
- {"version":3,"file":"design-token-parser.interface.d.ts","sourceRoot":"","sources":["../../../../../src/core/design-token/parsers/design-token-parser.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAEpK,gCAAgC;AAChC,MAAM,WAAW,eAAe;IAC9B,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,SAAS,EAAE,gBAAgB,CAAC;CAC7B;AAED;;;;GAIG;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,cAAc,EAAE,4BAA4B,EAAE,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC,KAAK,MAAM,CAAC;AAElJ;;;GAGG;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,cAAc,EAAE,4BAA4B,KAAK,MAAM,CAAC;AAExF,+CAA+C;AAE/C,MAAM,MAAM,sBAAsB,GAAG,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAC;AAE/E,mCAAmC;AACnC,MAAM,WAAW,4BAA4B;IAC3C,6EAA6E;IAC7E,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,6BAA6B;IAC7B,UAAU,EAAE,0BAA0B,GAAG,qBAAqB,CAAC;IAC/D,yCAAyC;IACzC,IAAI,EAAE,WAAW,CAAC;IAClB,sCAAsC;IACtC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,+BAA+B;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uCAAuC;IACvC,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,0CAA0C;IAC1C,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB;;;OAGG;IACH,aAAa,EAAE,CAAC,WAAW,CAAC,EAAE,sBAAsB,KAAK,MAAM,EAAE,CAAC;IAClE;;;OAGG;IACH,cAAc,EAAE,CAAC,WAAW,CAAC,EAAE,sBAAsB,KAAK,MAAM,CAAC;IACjE;;;OAGG;IACH,UAAU,EAAE,CAAC,WAAW,CAAC,EAAE,sBAAsB,KAAK,OAAO,CAAC;IAC9D;;;;OAIG;IACH,OAAO,EAAE,CAAC,WAAW,CAAC,EAAE,sBAAsB,EAAE,eAAe,CAAC,EAAE,OAAO,KAAK,WAAW,CAAC,OAAO,CAAC,CAAC;IACnG;;;OAGG;IACH,iBAAiB,EAAE,CAAC,WAAW,CAAC,EAAE,sBAAsB,KAAK,4BAA4B,EAAE,CAAC;IAC5F;;;OAGG;IACH,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,gBAAgB,KAAK,MAAM,CAAC;CACpD"}
1
+ {"version":3,"file":"design-token-parser.interface.d.ts","sourceRoot":"","sources":["../../../../../src/core/design-token/parsers/design-token-parser.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAEpK,gCAAgC;AAChC,MAAM,WAAW,eAAe;IAC9B,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,SAAS,EAAE,gBAAgB,CAAC;CAC7B;AAED;;;;;GAKG;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,cAAc,EAAE,4BAA4B,EAAE,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC,EAAE,yBAAyB,CAAC,EAAE,OAAO,KAAK,MAAM,CAAC;AAEvL;;;;GAIG;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,cAAc,EAAE,4BAA4B,EAAE,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC,KAAK,MAAM,CAAC;AAEpJ;;;;GAIG;AAEH,MAAM,MAAM,gCAAgC,GAAG,CAAC,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC,KAAK,MAAM,CAAC;AAEzI;;;;GAIG;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,cAAc,EAAE,4BAA4B,EAAE,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC,KAAK,MAAM,CAAC;AAGtJ;;;GAGG;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,cAAc,EAAE,4BAA4B,KAAK,MAAM,CAAC;AAExF,+CAA+C;AAE/C,MAAM,MAAM,sBAAsB,GAAG,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAC;AAE/E,mCAAmC;AACnC,MAAM,WAAW,4BAA4B;IAC3C,6EAA6E;IAC7E,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,6BAA6B;IAC7B,UAAU,EAAE,0BAA0B,GAAG,qBAAqB,CAAC;IAC/D,yCAAyC;IACzC,IAAI,EAAE,WAAW,CAAC;IAClB,sCAAsC;IACtC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,+BAA+B;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uCAAuC;IACvC,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,0CAA0C;IAC1C,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB;;;OAGG;IACH,aAAa,EAAE,CAAC,WAAW,CAAC,EAAE,sBAAsB,KAAK,MAAM,EAAE,CAAC;IAClE;;;OAGG;IACH,cAAc,EAAE,CAAC,WAAW,CAAC,EAAE,sBAAsB,KAAK,MAAM,CAAC;IACjE;;;OAGG;IACH,UAAU,EAAE,CAAC,WAAW,CAAC,EAAE,sBAAsB,KAAK,OAAO,CAAC;IAC9D;;;;OAIG;IACH,OAAO,EAAE,CAAC,WAAW,CAAC,EAAE,sBAAsB,EAAE,eAAe,CAAC,EAAE,OAAO,KAAK,WAAW,CAAC,OAAO,CAAC,CAAC;IACnG;;;OAGG;IACH,iBAAiB,EAAE,CAAC,WAAW,CAAC,EAAE,sBAAsB,KAAK,4BAA4B,EAAE,CAAC;IAC5F;;;OAGG;IACH,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,gBAAgB,KAAK,MAAM,CAAC;CACpD"}
@@ -1 +1 @@
1
- {"version":3,"file":"design-token.parser.d.ts","sourceRoot":"","sources":["../../../../../src/core/design-token/parsers/design-token.parser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAiD,MAAM,iCAAiC,CAAC;AAC7H,OAAO,KAAK,EAEV,kBAAkB,EAKlB,wBAAwB,EACzB,MAAM,yCAAyC,CAAC;AA4IjD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,kBAAmB,wBAAwB,2BAEvE,CAAC;AAEF,UAAU,2BAA2B;IACnC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE1D,yHAAyH;IACzH,oBAAoB,CAAC,EAAE,kBAAkB,CAAC;CAC3C;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,0BAAiC,MAAM,YAAY,2BAA2B,oCAM9G,CAAC"}
1
+ {"version":3,"file":"design-token.parser.d.ts","sourceRoot":"","sources":["../../../../../src/core/design-token/parsers/design-token.parser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAiD,MAAM,iCAAiC,CAAC;AAC7H,OAAO,KAAK,EAEV,kBAAkB,EAKlB,wBAAwB,EACzB,MAAM,yCAAyC,CAAC;AA6IjD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,kBAAmB,wBAAwB,2BAEvE,CAAC;AAEF,UAAU,2BAA2B;IACnC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE1D,yHAAyH;IACzH,oBAAoB,CAAC,EAAE,kBAAkB,CAAC;CAC3C;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,0BAAiC,MAAM,YAAY,2BAA2B,oCAM9G,CAAC"}
@@ -6,7 +6,12 @@ const design_token_specification_interface_1 = require("../design-token-specific
6
6
  const node_path_1 = require("node:path");
7
7
  const tokenReferenceRegExp = /\{([^}]+)\}/g;
8
8
  const getTokenReferenceName = (tokenName, parents) => (`${parents.join('.')}.${tokenName}`);
9
- const getExtensions = (parentNode) => parentNode.reduce((acc, node) => ({ ...acc, ...node.$extensions }), {});
9
+ const getExtensions = (parentNode) => {
10
+ return parentNode.reduce((acc, node) => {
11
+ const o3rMetadata = { ...acc.o3rMetadata, ...node.$extensions?.o3rMetadata };
12
+ return ({ ...acc, ...node.$extensions, o3rMetadata });
13
+ }, {});
14
+ };
10
15
  const getReferences = (cssRawValue) => Array.from(cssRawValue.matchAll(tokenReferenceRegExp)).map(([, tokenRef]) => tokenRef);
11
16
  // eslint-disable-next-line @typescript-eslint/no-redundant-type-constituents
12
17
  const renderCssTypeStrokeStyleValue = (value) => (0, design_token_specification_interface_1.isTokenTypeStrokeStyleValueComplex)(value) ? `${value.lineCap} ${value.dashArray.join(' ')}` : value;
@@ -94,12 +99,8 @@ const walkThroughDesignTokenNodes = (node, context, ancestors, mem, nodeName) =>
94
99
  },
95
100
  getReferencesNode: function (variableSet = mem) {
96
101
  return this.getReferences(variableSet)
97
- .map((ref) => {
98
- if (!variableSet.has(ref)) {
99
- throw new Error(`Reference to ${ref} not found`);
100
- }
101
- return variableSet.get(ref);
102
- });
102
+ .filter((ref) => variableSet.has(ref))
103
+ .map((ref) => variableSet.get(ref));
103
104
  },
104
105
  getType: function (variableSet = mem, followReference = true) {
105
106
  return node.$type ||
@@ -1 +1 @@
1
- {"version":3,"file":"design-token.parser.js","sourceRoot":"","sources":["../../../../../src/core/design-token/parsers/design-token.parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"design-token.parser.js","sourceRoot":"","sources":["../../../../../src/core/design-token/parsers/design-token.parser.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { DesignTokenVariableStructure, TokenKeyRenderer, TokenValueRenderer } from '../../parsers/design-token-parser.interface';
2
2
  import { TokenDefinitionRenderer } from '../design-token.renderer.interface';
3
+ import type { Logger } from '@o3r/core';
3
4
  /** Options for {@link CssTokenDefinitionRendererOptions} */
4
5
  export interface CssTokenDefinitionRendererOptions {
5
6
  /**
@@ -18,6 +19,11 @@ export interface CssTokenDefinitionRendererOptions {
18
19
  * The private variable will not be rendered if not provided
19
20
  */
20
21
  privateDefinitionRenderer?: TokenDefinitionRenderer;
22
+ /**
23
+ * Custom logger
24
+ * Nothing will be logged if not provided
25
+ */
26
+ logger?: Logger;
21
27
  }
22
28
  /**
23
29
  * Retrieve the Design Token variable renderer for CSS
@@ -1 +1 @@
1
- {"version":3,"file":"design-token-definition.renderers.d.ts","sourceRoot":"","sources":["../../../../../../src/core/design-token/renderers/css/design-token-definition.renderers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AAEtI,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAG7E,4DAA4D;AAC5D,MAAM,WAAW,iCAAiC;IAChD;;;OAGG;IACH,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,4BAA4B,KAAK,OAAO,CAAC;IAExE,yCAAyC;IACzC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IAExC;;OAEG;IACH,yBAAyB,CAAC,EAAE,gBAAgB,CAAC;IAE7C;;;OAGG;IACH,yBAAyB,CAAC,EAAE,uBAAuB,CAAC;CACrD;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,6BAA6B,aAAc,iCAAiC,KAAG,uBAqB3F,CAAC"}
1
+ {"version":3,"file":"design-token-definition.renderers.d.ts","sourceRoot":"","sources":["../../../../../../src/core/design-token/renderers/css/design-token-definition.renderers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AAEtI,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAE7E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,4DAA4D;AAC5D,MAAM,WAAW,iCAAiC;IAChD;;;OAGG;IACH,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,4BAA4B,KAAK,OAAO,CAAC;IAExE,yCAAyC;IACzC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IAExC;;OAEG;IACH,yBAAyB,CAAC,EAAE,gBAAgB,CAAC;IAE7C;;;OAGG;IACH,yBAAyB,CAAC,EAAE,uBAAuB,CAAC;IAEpD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,6BAA6B,aAAc,iCAAiC,KAAG,uBAqB3F,CAAC"}
@@ -30,7 +30,7 @@ const design_token_value_renderers_1 = require("./design-token-value.renderers")
30
30
  const getCssTokenDefinitionRenderer = (options) => {
31
31
  const isPrivateVariable = options?.isPrivateVariable || design_token_renderer_helpers_1.isO3rPrivateVariable;
32
32
  const tokenVariableNameRenderer = options?.tokenVariableNameRenderer;
33
- const tokenValueRenderer = options?.tokenValueRenderer || (0, design_token_value_renderers_1.getCssTokenValueRenderer)({ isPrivateVariable, tokenVariableNameRenderer });
33
+ const tokenValueRenderer = options?.tokenValueRenderer || (0, design_token_value_renderers_1.getCssTokenValueRenderer)({ isPrivateVariable, tokenVariableNameRenderer, logger: options?.logger });
34
34
  const renderer = (variable, variableSet) => {
35
35
  let variableString;
36
36
  if (!isPrivateVariable(variable)) {
@@ -1 +1 @@
1
- {"version":3,"file":"design-token-definition.renderers.js","sourceRoot":"","sources":["../../../../../../src/core/design-token/renderers/css/design-token-definition.renderers.ts"],"names":[],"mappings":";;;AACA,oFAAwE;AAExE,iFAA0E;AAyB1E;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACI,MAAM,6BAA6B,GAAG,CAAC,OAA2C,EAA2B,EAAE;IACpH,MAAM,iBAAiB,GAAG,OAAO,EAAE,iBAAiB,IAAI,oDAAoB,CAAC;IAC7E,MAAM,yBAAyB,GAAG,OAAO,EAAE,yBAAyB,CAAC;IACrE,MAAM,kBAAkB,GAAG,OAAO,EAAE,kBAAkB,IAAI,IAAA,uDAAwB,EAAC,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,CAAC,CAAC;IAErI,MAAM,QAAQ,GAAG,CAAC,QAAsC,EAAE,WAAsD,EAAE,EAAE;QAClH,IAAI,cAAkC,CAAC;QACvC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE;YAChC,cAAc,GAAG,KAAK,QAAQ,CAAC,MAAM,CAAC,yBAAyB,CAAC,KAAK,kBAAkB,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC;YAClH,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE;gBAChC,cAAc,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC,QAAQ,MAAM,cAAc,IAAI,CAAC;aAC1E;SACF;aAAM,IAAI,OAAO,EAAE,yBAAyB,IAAI,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE;YAC/E,cAAc,GAAG,OAAO,CAAC,yBAAyB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;SAC3E;QACD,IAAI,cAAc,IAAI,QAAQ,CAAC,WAAW,EAAE;YAC1C,cAAc,GAAG,MAAM,QAAQ,CAAC,WAAW,QAAQ,cAAc,EAAE,CAAC;SACrE;QACD,OAAO,cAAc,CAAC;IACxB,CAAC,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AArBW,QAAA,6BAA6B,iCAqBxC"}
1
+ {"version":3,"file":"design-token-definition.renderers.js","sourceRoot":"","sources":["../../../../../../src/core/design-token/renderers/css/design-token-definition.renderers.ts"],"names":[],"mappings":";;;AACA,oFAAwE;AAExE,iFAA0E;AAgC1E;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACI,MAAM,6BAA6B,GAAG,CAAC,OAA2C,EAA2B,EAAE;IACpH,MAAM,iBAAiB,GAAG,OAAO,EAAE,iBAAiB,IAAI,oDAAoB,CAAC;IAC7E,MAAM,yBAAyB,GAAG,OAAO,EAAE,yBAAyB,CAAC;IACrE,MAAM,kBAAkB,GAAG,OAAO,EAAE,kBAAkB,IAAI,IAAA,uDAAwB,EAAC,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAE9J,MAAM,QAAQ,GAAG,CAAC,QAAsC,EAAE,WAAsD,EAAE,EAAE;QAClH,IAAI,cAAkC,CAAC;QACvC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE;YAChC,cAAc,GAAG,KAAK,QAAQ,CAAC,MAAM,CAAC,yBAAyB,CAAC,KAAK,kBAAkB,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC;YAClH,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE;gBAChC,cAAc,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC,QAAQ,MAAM,cAAc,IAAI,CAAC;aAC1E;SACF;aAAM,IAAI,OAAO,EAAE,yBAAyB,IAAI,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE;YAC/E,cAAc,GAAG,OAAO,CAAC,yBAAyB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;SAC3E;QACD,IAAI,cAAc,IAAI,QAAQ,CAAC,WAAW,EAAE;YAC1C,cAAc,GAAG,MAAM,QAAQ,CAAC,WAAW,QAAQ,cAAc,EAAE,CAAC;SACrE;QACD,OAAO,cAAc,CAAC;IACxB,CAAC,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AArBW,QAAA,6BAA6B,iCAqBxC"}
@@ -1,4 +1,5 @@
1
- import type { DesignTokenVariableStructure, TokenKeyRenderer, TokenValueRenderer } from '../../parsers/design-token-parser.interface';
1
+ import type { DesignTokenVariableStructure, TokenKeyRenderer, TokenReferenceRender, TokenValueRenderer, UnregisteredTokenReferenceRender } from '../../parsers/design-token-parser.interface';
2
+ import type { Logger } from '@o3r/core';
2
3
  /** Options for {@link getCssTokenValueRenderer} */
3
4
  export interface CssTokenValueRendererOptions {
4
5
  /**
@@ -10,10 +11,28 @@ export interface CssTokenValueRendererOptions {
10
11
  * Renderer the name of the CSS Variable (without initial --)
11
12
  */
12
13
  tokenVariableNameRenderer?: TokenKeyRenderer;
14
+ /**
15
+ * Render for the reference to Design Token
16
+ */
17
+ referenceRenderer?: TokenReferenceRender;
18
+ /**
19
+ * Render for the reference to unregistered Design Token
20
+ * Note: the default renderer display a warning message when called
21
+ */
22
+ unregisteredReferenceRenderer?: UnregisteredTokenReferenceRender;
23
+ /**
24
+ * Custom logger
25
+ * Nothing will be logged if not provided
26
+ */
27
+ logger?: Logger;
13
28
  }
14
29
  /**
15
30
  * Retrieve the Design Token value renderer
16
31
  * @param options
32
+ * @example Throw on unregistered Design Token reference
33
+ * ```typescript
34
+ * getCssTokenValueRenderer({ unregisteredReferenceRenderer: (varName) => { throw new Error(`var ${varName} not registered`) } })
35
+ * ```
17
36
  */
18
37
  export declare const getCssTokenValueRenderer: (options?: CssTokenValueRendererOptions) => TokenValueRenderer;
19
38
  //# sourceMappingURL=design-token-value.renderers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"design-token-value.renderers.d.ts","sourceRoot":"","sources":["../../../../../../src/core/design-token/renderers/css/design-token-value.renderers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AAGtI,mDAAmD;AACnD,MAAM,WAAW,4BAA4B;IAC3C;;;OAGG;IACH,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,4BAA4B,KAAK,OAAO,CAAC;IAExE;;OAEG;IACH,yBAAyB,CAAC,EAAE,gBAAgB,CAAC;CAC9C;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB,aAAc,4BAA4B,KAAG,kBAoBjF,CAAC"}
1
+ {"version":3,"file":"design-token-value.renderers.d.ts","sourceRoot":"","sources":["../../../../../../src/core/design-token/renderers/css/design-token-value.renderers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,gCAAgC,EAAE,MAAM,6CAA6C,CAAC;AAE9L,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,mDAAmD;AACnD,MAAM,WAAW,4BAA4B;IAC3C;;;OAGG;IACH,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,4BAA4B,KAAK,OAAO,CAAC;IAExE;;OAEG;IACH,yBAAyB,CAAC,EAAE,gBAAgB,CAAC;IAE7C;;OAEG;IACH,iBAAiB,CAAC,EAAE,oBAAoB,CAAC;IAEzC;;;OAGG;IACH,6BAA6B,CAAC,EAAE,gCAAgC,CAAC;IAEjE;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,aAAc,4BAA4B,KAAG,kBA8BjF,CAAC"}
@@ -5,11 +5,15 @@ const design_token_renderer_helpers_1 = require("../design-token.renderer.helper
5
5
  /**
6
6
  * Retrieve the Design Token value renderer
7
7
  * @param options
8
+ * @example Throw on unregistered Design Token reference
9
+ * ```typescript
10
+ * getCssTokenValueRenderer({ unregisteredReferenceRenderer: (varName) => { throw new Error(`var ${varName} not registered`) } })
11
+ * ```
8
12
  */
9
13
  const getCssTokenValueRenderer = (options) => {
10
14
  const isPrivateVariable = options?.isPrivateVariable || design_token_renderer_helpers_1.isO3rPrivateVariable;
11
15
  const tokenVariableNameRenderer = options?.tokenVariableNameRenderer;
12
- const referenceRenderer = (variable, variableSet) => {
16
+ const defaultReferenceRenderer = (variable, variableSet) => {
13
17
  if (!isPrivateVariable(variable)) {
14
18
  return `var(--${variable.getKey(tokenVariableNameRenderer)})`;
15
19
  }
@@ -18,8 +22,15 @@ const getCssTokenValueRenderer = (options) => {
18
22
  return `var(--${variable.getKey(tokenVariableNameRenderer)}, ${renderer(variable, variableSet)})`;
19
23
  }
20
24
  };
21
- const renderer = (variable, variableSet) => {
22
- let variableValue = variable.getCssRawValue(variableSet).replaceAll(/\{([^}]*)\}/g, (defaultValue, matcher) => (variableSet.has(matcher) ? referenceRenderer(variableSet.get(matcher), variableSet) : defaultValue));
25
+ const defaultUnregisteredReferenceRenderer = (variableName, _variableSet) => {
26
+ const cssVarName = `var(--${variableName.replace(/[. ]+/g, '-')})`;
27
+ options?.logger?.debug?.(`Variable "${variableName}" not registered, will be renderer as "${cssVarName}"`);
28
+ return cssVarName;
29
+ };
30
+ const referenceRenderer = options?.referenceRenderer || defaultReferenceRenderer;
31
+ const unregisteredReferenceRenderer = options?.unregisteredReferenceRenderer || defaultUnregisteredReferenceRenderer;
32
+ const renderer = (variable, variableSet, enforceReferenceRendering = false) => {
33
+ let variableValue = enforceReferenceRendering ? referenceRenderer(variable, variableSet) : variable.getCssRawValue(variableSet).replaceAll(/\{([^}]*)\}/g, (_defaultValue, matcher) => (variableSet.has(matcher) ? referenceRenderer(variableSet.get(matcher), variableSet) : unregisteredReferenceRenderer(matcher, variableSet)));
23
34
  variableValue += variableValue && variable.extensions.o3rImportant ? ' !important' : '';
24
35
  return variableValue;
25
36
  };
@@ -1 +1 @@
1
- {"version":3,"file":"design-token-value.renderers.js","sourceRoot":"","sources":["../../../../../../src/core/design-token/renderers/css/design-token-value.renderers.ts"],"names":[],"mappings":";;;AACA,oFAAwE;AAgBxE;;;GAGG;AACI,MAAM,wBAAwB,GAAG,CAAC,OAAsC,EAAsB,EAAE;IACrG,MAAM,iBAAiB,GAAG,OAAO,EAAE,iBAAiB,IAAI,oDAAoB,CAAC;IAC7E,MAAM,yBAAyB,GAAG,OAAO,EAAE,yBAAyB,CAAC;IAErE,MAAM,iBAAiB,GAAG,CAAC,QAAsC,EAAE,WAAsD,EAAU,EAAE;QACnI,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE;YAChC,OAAO,SAAS,QAAQ,CAAC,MAAM,CAAC,yBAAyB,CAAC,GAAG,CAAC;SAC/D;aAAM;YACL,gDAAgD;YAChD,OAAO,SAAS,QAAQ,CAAC,MAAM,CAAC,yBAAyB,CAAC,KAAK,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC;SACnG;IACH,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,CAAC,QAAsC,EAAE,WAAsD,EAAE,EAAE;QAClH,IAAI,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,YAAY,EAAE,OAAO,EAAE,EAAE,CAC5G,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAE,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CACtG,CAAC;QACF,aAAa,IAAI,aAAa,IAAI,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;QACxF,OAAO,aAAa,CAAC;IACvB,CAAC,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AApBW,QAAA,wBAAwB,4BAoBnC"}
1
+ {"version":3,"file":"design-token-value.renderers.js","sourceRoot":"","sources":["../../../../../../src/core/design-token/renderers/css/design-token-value.renderers.ts"],"names":[],"mappings":";;;AACA,oFAAwE;AAkCxE;;;;;;;GAOG;AACI,MAAM,wBAAwB,GAAG,CAAC,OAAsC,EAAsB,EAAE;IACrG,MAAM,iBAAiB,GAAG,OAAO,EAAE,iBAAiB,IAAI,oDAAoB,CAAC;IAC7E,MAAM,yBAAyB,GAAG,OAAO,EAAE,yBAAyB,CAAC;IAErE,MAAM,wBAAwB,GAAG,CAAC,QAAsC,EAAE,WAAsD,EAAU,EAAE;QAC1I,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE;YAChC,OAAO,SAAS,QAAQ,CAAC,MAAM,CAAC,yBAAyB,CAAC,GAAG,CAAC;SAC/D;aAAM;YACL,gDAAgD;YAChD,OAAO,SAAS,QAAQ,CAAC,MAAM,CAAC,yBAAyB,CAAC,KAAK,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC;SACnG;IACH,CAAC,CAAC;IAEF,MAAM,oCAAoC,GAAG,CAAC,YAAoB,EAAE,YAAuD,EAAU,EAAE;QACrI,MAAM,UAAU,GAAG,SAAS,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC;QACnE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,aAAa,YAAY,0CAA0C,UAAU,GAAG,CAAC,CAAC;QAC3G,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,OAAO,EAAE,iBAAiB,IAAI,wBAAwB,CAAC;IACjF,MAAM,6BAA6B,GAAG,OAAO,EAAE,6BAA6B,IAAI,oCAAoC,CAAC;IAErH,MAAM,QAAQ,GAAG,CAAC,QAAsC,EAAE,WAAsD,EAAE,yBAAyB,GAAG,KAAK,EAAE,EAAE;QACrJ,IAAI,aAAa,GAAG,yBAAyB,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,aAAa,EAAE,OAAe,EAAE,EAAE,CAC5L,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAE,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,6BAA6B,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAC7I,CAAC;QACF,aAAa,IAAI,aAAa,IAAI,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;QACxF,OAAO,aAAa,CAAC;IACvB,CAAC,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AA9BW,QAAA,wBAAwB,4BA8BnC"}
@@ -1,5 +1,6 @@
1
1
  import type { TokenKeyRenderer, TokenValueRenderer } from '../../parsers/design-token-parser.interface';
2
2
  import type { TokenDefinitionRenderer } from '../design-token.renderer.interface';
3
+ import type { Logger } from '@o3r/core';
3
4
  export interface SassTokenDefinitionRendererOptions {
4
5
  /** Custom Design Token value renderer */
5
6
  tokenValueRenderer?: TokenValueRenderer;
@@ -8,6 +9,11 @@ export interface SassTokenDefinitionRendererOptions {
8
9
  * @default {@see tokenVariableNameSassRenderer}
9
10
  */
10
11
  tokenVariableNameRenderer?: TokenKeyRenderer;
12
+ /**
13
+ * Custom logger
14
+ * Nothing will be logged if not provided
15
+ */
16
+ logger?: Logger;
11
17
  }
12
18
  /**
13
19
  * Default Sass variable name renderer
@@ -1 +1 @@
1
- {"version":3,"file":"design-token-definition.renderers.d.ts","sourceRoot":"","sources":["../../../../../../src/core/design-token/renderers/sass/design-token-definition.renderers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgC,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACtI,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAGlF,MAAM,WAAW,kCAAkC;IAEjD,yCAAyC;IACzC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IAExC;;;OAGG;IACH,yBAAyB,CAAC,EAAE,gBAAgB,CAAC;CAC9C;AAED;;;GAGG;AACH,eAAO,MAAM,6BAA6B,EAAE,gBAG3C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,aAAc,kCAAkC,KAAG,uBAQ7F,CAAC"}
1
+ {"version":3,"file":"design-token-definition.renderers.d.ts","sourceRoot":"","sources":["../../../../../../src/core/design-token/renderers/sass/design-token-definition.renderers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgC,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACtI,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAElF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,MAAM,WAAW,kCAAkC;IAEjD,yCAAyC;IACzC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IAExC;;;OAGG;IACH,yBAAyB,CAAC,EAAE,gBAAgB,CAAC;IAE7C;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,eAAO,MAAM,6BAA6B,EAAE,gBAE3C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,aAAc,kCAAkC,KAAG,uBAQ7F,CAAC"}
@@ -7,8 +7,7 @@ const design_token_value_renderers_1 = require("../css/design-token-value.render
7
7
  * @param variable
8
8
  */
9
9
  const tokenVariableNameSassRenderer = (variable) => {
10
- const tokens = variable.getKey().split('-');
11
- return tokens[0] + tokens.slice(1).map((token) => token.charAt(0).toUpperCase() + token.slice(1)).join('');
10
+ return variable.getKey();
12
11
  };
13
12
  exports.tokenVariableNameSassRenderer = tokenVariableNameSassRenderer;
14
13
  /**
@@ -17,10 +16,10 @@ exports.tokenVariableNameSassRenderer = tokenVariableNameSassRenderer;
17
16
  * @returns
18
17
  */
19
18
  const getSassTokenDefinitionRenderer = (options) => {
20
- const tokenValueRenderer = options?.tokenValueRenderer || (0, design_token_value_renderers_1.getCssTokenValueRenderer)();
19
+ const tokenValueRenderer = options?.tokenValueRenderer || (0, design_token_value_renderers_1.getCssTokenValueRenderer)({ logger: options?.logger });
21
20
  const keyRenderer = options?.tokenVariableNameRenderer || exports.tokenVariableNameSassRenderer;
22
21
  const renderer = (variable, variableSet) => {
23
- return `$${variable.getKey(keyRenderer)}: ${tokenValueRenderer(variable, variableSet)};`;
22
+ return `$${variable.getKey(keyRenderer)}: ${tokenValueRenderer(variable, variableSet, true)};`;
24
23
  };
25
24
  return renderer;
26
25
  };
@@ -1 +1 @@
1
- {"version":3,"file":"design-token-definition.renderers.js","sourceRoot":"","sources":["../../../../../../src/core/design-token/renderers/sass/design-token-definition.renderers.ts"],"names":[],"mappings":";;;AAEA,sFAA+E;AAc/E;;;GAGG;AACI,MAAM,6BAA6B,GAAqB,CAAC,QAAQ,EAAE,EAAE;IAC1E,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5C,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC7G,CAAC,CAAC;AAHW,QAAA,6BAA6B,iCAGxC;AAEF;;;;GAIG;AACI,MAAM,8BAA8B,GAAG,CAAC,OAA4C,EAA2B,EAAE;IACtH,MAAM,kBAAkB,GAAG,OAAO,EAAE,kBAAkB,IAAI,IAAA,uDAAwB,GAAE,CAAC;IACrF,MAAM,WAAW,GAAG,OAAO,EAAE,yBAAyB,IAAI,qCAA6B,CAAC;IAExF,MAAM,QAAQ,GAAG,CAAC,QAAsC,EAAE,WAAsD,EAAE,EAAE;QAClH,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,KAAM,kBAAkB,CAAC,QAAQ,EAAE,WAAW,CAAE,GAAG,CAAC;IAC7F,CAAC,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AARW,QAAA,8BAA8B,kCAQzC"}
1
+ {"version":3,"file":"design-token-definition.renderers.js","sourceRoot":"","sources":["../../../../../../src/core/design-token/renderers/sass/design-token-definition.renderers.ts"],"names":[],"mappings":";;;AAEA,sFAA+E;AAqB/E;;;GAGG;AACI,MAAM,6BAA6B,GAAqB,CAAC,QAAQ,EAAE,EAAE;IAC1E,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAC;AAC3B,CAAC,CAAC;AAFW,QAAA,6BAA6B,iCAExC;AAEF;;;;GAIG;AACI,MAAM,8BAA8B,GAAG,CAAC,OAA4C,EAA2B,EAAE;IACtH,MAAM,kBAAkB,GAAG,OAAO,EAAE,kBAAkB,IAAI,IAAA,uDAAwB,EAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAChH,MAAM,WAAW,GAAG,OAAO,EAAE,yBAAyB,IAAI,qCAA6B,CAAC;IAExF,MAAM,QAAQ,GAAG,CAAC,QAAsC,EAAE,WAAsD,EAAE,EAAE;QAClH,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,KAAM,kBAAkB,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAE,GAAG,CAAC;IACnG,CAAC,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AARW,QAAA,8BAA8B,kCAQzC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../schematics/ extract-token/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAM7D;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,4BAA4B,GAAG,IAAI,CA0FxE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../schematics/ extract-token/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,WAAW,4BAA6B,SAAQ,qBAAqB;IACzE;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAE7D,oDAAoD;IACpD,qBAAqB,EAAE,MAAM,EAAE,CAAC;CACjC"}