@o3r/design 11.2.0-prerelease.8 → 11.2.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/README.md +20 -0
  2. package/builders/generate-css/index.d.ts.map +1 -1
  3. package/builders/generate-css/index.js +21 -5
  4. package/builders/generate-css/index.js.map +1 -0
  5. package/builders/generate-css/schema.d.ts +5 -1
  6. package/builders/generate-css/schema.d.ts.map +1 -1
  7. package/builders/generate-css/schema.js.map +1 -0
  8. package/builders/generate-css/schema.json +17 -2
  9. package/builders/generate-jsonschema/index.js.map +1 -0
  10. package/builders/generate-jsonschema/schema.js.map +1 -0
  11. package/cli/build-design-token.cli.cjs +39 -0
  12. package/cli/build-design-token.cli.cjs.map +1 -0
  13. package/cli/build-design-token.cli.d.cts +3 -0
  14. package/cli/build-design-token.cli.d.cts.map +1 -0
  15. package/cli/generate-css-from-design-token.cli.cjs +3 -1
  16. package/cli/generate-css-from-design-token.cli.cjs.map +1 -1
  17. package/cli/package.json +3 -0
  18. package/package.json +26 -25
  19. package/schemas/design-token-template.schema.json +32 -0
  20. package/schemas/design-token.schema.json +617 -0
  21. package/schematics/design-token-to-component/index.js.map +1 -0
  22. package/schematics/design-token-to-component/schema.js.map +1 -0
  23. package/schematics/extract-token/index.js.map +1 -0
  24. package/schematics/extract-token/schema.js.map +1 -0
  25. package/schematics/generate-css/index.js.map +1 -0
  26. package/schematics/generate-css/schema.js.map +1 -0
  27. package/schematics/ng-add/index.js.map +1 -0
  28. package/schematics/ng-add/register-generate-css/index.js.map +1 -0
  29. package/schematics/ng-add/register-generate-css/register-task.js.map +1 -0
  30. package/schematics/ng-add/schema.js.map +1 -0
  31. package/src/core/design-token/design-token-specification.interface.d.ts +2 -6
  32. package/src/core/design-token/design-token-specification.interface.d.ts.map +1 -1
  33. package/src/core/design-token/design-token-specification.interface.js.map +1 -1
  34. package/src/core/design-token/parsers/design-token-template.helpers.d.ts +8 -0
  35. package/src/core/design-token/parsers/design-token-template.helpers.d.ts.map +1 -0
  36. package/src/core/design-token/parsers/design-token-template.helpers.js +30 -0
  37. package/src/core/design-token/parsers/design-token-template.helpers.js.map +1 -0
  38. package/src/core/design-token/parsers/design-token.parser.js +1 -1
  39. package/src/core/design-token/parsers/design-token.parser.js.map +1 -1
  40. package/src/core/design-token/parsers/index.d.ts +1 -0
  41. package/src/core/design-token/parsers/index.d.ts.map +1 -1
  42. package/src/core/design-token/parsers/index.js +1 -0
  43. package/src/core/design-token/parsers/index.js.map +1 -1
  44. package/src/core/design-token/renderers/design-token/design-token-definition.renderers.d.ts +20 -0
  45. package/src/core/design-token/renderers/design-token/design-token-definition.renderers.d.ts.map +1 -0
  46. package/src/core/design-token/renderers/design-token/design-token-definition.renderers.js +26 -0
  47. package/src/core/design-token/renderers/design-token/design-token-definition.renderers.js.map +1 -0
  48. package/src/core/design-token/renderers/design-token/design-token-updater.renderers.d.ts +10 -0
  49. package/src/core/design-token/renderers/design-token/design-token-updater.renderers.d.ts.map +1 -0
  50. package/src/core/design-token/renderers/design-token/design-token-updater.renderers.js +23 -0
  51. package/src/core/design-token/renderers/design-token/design-token-updater.renderers.js.map +1 -0
  52. package/src/core/design-token/renderers/design-token/design-token-value.renderers.d.ts +10 -0
  53. package/src/core/design-token/renderers/design-token/design-token-value.renderers.d.ts.map +1 -0
  54. package/src/core/design-token/renderers/design-token/design-token-value.renderers.js +20 -0
  55. package/src/core/design-token/renderers/design-token/design-token-value.renderers.js.map +1 -0
  56. package/src/core/design-token/renderers/design-token/index.d.ts +4 -0
  57. package/src/core/design-token/renderers/design-token/index.d.ts.map +1 -0
  58. package/src/core/design-token/renderers/design-token/index.js +7 -0
  59. package/src/core/design-token/renderers/design-token/index.js.map +1 -0
  60. package/src/core/design-token/renderers/design-token-style.renderer.d.ts +4 -0
  61. package/src/core/design-token/renderers/design-token-style.renderer.d.ts.map +1 -1
  62. package/src/core/design-token/renderers/design-token-style.renderer.js +10 -3
  63. package/src/core/design-token/renderers/design-token-style.renderer.js.map +1 -1
  64. package/src/core/design-token/renderers/design-token.renderer.interface.d.ts +7 -0
  65. package/src/core/design-token/renderers/design-token.renderer.interface.d.ts.map +1 -1
  66. package/src/core/design-token/renderers/index.d.ts +1 -0
  67. package/src/core/design-token/renderers/index.d.ts.map +1 -1
  68. package/src/core/design-token/renderers/index.js +1 -0
  69. package/src/core/design-token/renderers/index.js.map +1 -1
  70. package/src/core/design-token/renderers/json-schema/design-token-updater.renderers.d.ts +1 -1
  71. package/src/core/design-token/renderers/json-schema/design-token-updater.renderers.js +1 -1
  72. package/src/core/design-token/renderers/metadata/design-token-definition.renderers.d.ts +2 -0
  73. package/src/core/design-token/renderers/metadata/design-token-definition.renderers.d.ts.map +1 -1
  74. package/src/core/design-token/renderers/metadata/design-token-definition.renderers.js +4 -0
  75. package/src/core/design-token/renderers/metadata/design-token-definition.renderers.js.map +1 -1
package/README.md CHANGED
@@ -45,6 +45,7 @@ The following configurations are available:
45
45
  | **output** | *null* | Output file where the CSS will be generated. <br /> The path specified in `o3rTargetFile` will be ignore if this option is specified |
46
46
  | **defaultStyleFile** | src/theme.scss | File path to generate the variable if not determined by the specifications |
47
47
  | **metadataOutput** | *null* | Path to generate the metadata for the CMS. <br /> The metadata will be generated only if the file path is specified. |
48
+ | **metadataIgnorePrivate** | false | Ignore the private variable in the metadata generation. |
48
49
  | **rootPath** | *null* | Root path of files where the CSS will be generated. |
49
50
  | **failOnDuplicate** | false | Determine if the process should stop in case of Token duplication. |
50
51
  | **templateFile** | *null* | Path to a template file to apply as default configuration to a Design Token extension. |
@@ -66,6 +67,25 @@ The following configurations are available:
66
67
  | **schemaDescription** | *null* | Description of the generated JSON Schema. |
67
68
  | **watch** | false | Enable Watch mode. |
68
69
 
70
+ ## Command Line Interfaces
71
+
72
+ ### o3r-build-design-token
73
+
74
+ The purpose of this CLI is to concatenate different Design Token files and check the potential duplication.
75
+ Can be run with the following command:
76
+
77
+ ```shell
78
+ npx -p @o3r/design o3r-build-design-token <...design-tokens> -o ./my-new-token-file.json
79
+ ```
80
+
81
+ It comes with the following options:
82
+
83
+ | Options | Alias | Description |
84
+ | ---------------- | ----- | --------------------------------------------------------------------- |
85
+ | **`--output`** | `-o` | Path to the file where the resulting Design Token will be generated |
86
+ | **`--template`** | `-t` | Template file to apply to the Design Token files |
87
+ | **`--level`** | `-l` | Number of key to join together when generating the Design Token nodes |
88
+
69
89
  ## Technical documentation
70
90
 
71
91
  Documentation providing explanations on the use and customization of the `Design Token` parser and renderers is available in the [technical documentation](https://github.com/AmadeusITGroup/otter/blob/main/docs/design/TECHNICAL_DOCUMENTATION.md).
@@ -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;AAkB5D;;;GAGG;;AACH,wBAmIG"}
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;AAmB5D;;;GAGG;;AACH,wBAqJG"}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  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
- const globby = require("globby");
6
+ const globby_1 = require("globby");
7
7
  const node_os_1 = require("node:os");
8
8
  const promises_1 = require("node:fs/promises");
9
9
  /**
@@ -11,6 +11,9 @@ const promises_1 = require("node:fs/promises");
11
11
  * @param options
12
12
  */
13
13
  exports.default = (0, architect_1.createBuilder)(async (options, context) => {
14
+ const templateFilePaths = options.templateFile
15
+ && (typeof options.templateFile === 'string' ? [options.templateFile] : options.templateFile).map((templateFile) => (0, node_path_1.resolve)(context.workspaceRoot, templateFile))
16
+ || undefined;
14
17
  const designTokenFilePatterns = Array.isArray(options.designTokenFilePatterns) ? options.designTokenFilePatterns : [options.designTokenFilePatterns];
15
18
  const determineFileToUpdate = options.output ? () => (0, node_path_1.resolve)(context.workspaceRoot, options.output) :
16
19
  (token) => {
@@ -27,7 +30,14 @@ exports.default = (0, architect_1.createBuilder)(async (options, context) => {
27
30
  tokenVariableNameRenderer: (v) => (options?.prefixPrivate || '') + (0, public_api_1.tokenVariableNameSassRenderer)(v),
28
31
  logger
29
32
  });
33
+ const writeFileWithLogger = async (file, ...args) => {
34
+ const res = await (0, promises_1.writeFile)(file, ...args);
35
+ // eslint-disable-next-line @typescript-eslint/no-base-to-string
36
+ logger.info(`Updated ${file.toString()} with Design Token content.`);
37
+ return res;
38
+ };
30
39
  const renderDesignTokenOptionsCss = {
40
+ writeFile: writeFileWithLogger,
31
41
  determineFileToUpdate,
32
42
  tokenDefinitionRenderer: (0, public_api_1.getCssTokenDefinitionRenderer)({
33
43
  tokenVariableNameRenderer,
@@ -41,6 +51,7 @@ exports.default = (0, architect_1.createBuilder)(async (options, context) => {
41
51
  logger
42
52
  };
43
53
  const renderDesignTokenOptionsSass = {
54
+ writeFile: writeFileWithLogger,
44
55
  determineFileToUpdate,
45
56
  tokenDefinitionRenderer: (0, public_api_1.getSassTokenDefinitionRenderer)({
46
57
  tokenVariableNameRenderer: (v) => (options?.prefix || '') + (0, public_api_1.tokenVariableNameSassRenderer)(v),
@@ -51,12 +62,17 @@ exports.default = (0, architect_1.createBuilder)(async (options, context) => {
51
62
  const renderDesignTokenOptionsMetadata = {
52
63
  determineFileToUpdate: () => (0, node_path_1.resolve)(context.workspaceRoot, options.metadataOutput),
53
64
  styleContentUpdater: (0, public_api_1.getMetadataStyleContentUpdater)(),
54
- tokenDefinitionRenderer: (0, public_api_1.getMetadataTokenDefinitionRenderer)({ tokenVariableNameRenderer }),
65
+ tokenDefinitionRenderer: (0, public_api_1.getMetadataTokenDefinitionRenderer)({ tokenVariableNameRenderer, ignorePrivateVariable: options.metadataIgnorePrivate }),
55
66
  logger
56
67
  };
57
68
  const execute = async (renderDesignTokenOptions) => {
58
- const template = options.templateFile ? JSON.parse(await (0, promises_1.readFile)((0, node_path_1.resolve)(context.workspaceRoot, options.templateFile), { encoding: 'utf-8' })) : undefined;
59
- const files = (await globby(designTokenFilePatterns, { cwd: context.workspaceRoot, absolute: true }));
69
+ let template;
70
+ if (templateFilePaths) {
71
+ const templateFiles = await Promise.all(templateFilePaths
72
+ .map(async (templateFile) => JSON.parse(await (0, promises_1.readFile)(templateFile, { encoding: 'utf8' }))));
73
+ template = templateFiles.reduce((acc, cur) => (0, public_api_1.mergeDesignTokenTemplates)(acc, cur), {});
74
+ }
75
+ const files = (0, globby_1.sync)(designTokenFilePatterns, { cwd: context.workspaceRoot, absolute: true });
60
76
  const inDependencies = designTokenFilePatterns
61
77
  .filter((pathName) => !pathName.startsWith('.') && !pathName.startsWith('*') && !pathName.startsWith('/'))
62
78
  .map((pathName) => {
@@ -122,7 +138,7 @@ exports.default = (0, architect_1.createBuilder)(async (options, context) => {
122
138
  try {
123
139
  await Promise.resolve().then(() => require('chokidar')).then((chokidar) => chokidar.watch([
124
140
  ...designTokenFilePatterns.map((p) => (0, node_path_1.resolve)(context.workspaceRoot, p)),
125
- ...(options.templateFile ? [(0, node_path_1.resolve)(context.workspaceRoot, options.templateFile)] : [])
141
+ ...(templateFilePaths || [])
126
142
  ]))
127
143
  .then((watcher) => watcher.on('all', async () => {
128
144
  const res = await executeMultiRenderer();
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../builders/generate-css/index.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,10 @@ export interface GenerateCssSchematicsSchema extends SchematicOptionObject {
7
7
  * The Metadata will be generated only if the file path is specified
8
8
  */
9
9
  metadataOutput?: string;
10
+ /**
11
+ * Ignore the private variable in the metadata generation
12
+ */
13
+ metadataIgnorePrivate?: boolean;
10
14
  /**
11
15
  * Output file where generate the CSS
12
16
  *
@@ -33,6 +37,6 @@ export interface GenerateCssSchematicsSchema extends SchematicOptionObject {
33
37
  /** Type of the variables to generate for a Design Token */
34
38
  variableType?: 'css' | 'sass';
35
39
  /** Path to a template file to apply as default configuration to a Design Token extension */
36
- templateFile?: string;
40
+ templateFile?: string | string[];
37
41
  }
38
42
  //# 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,sDAAsD;IACtD,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,2FAA2F;IAC3F,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAEjC,2DAA2D;IAC3D,YAAY,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAE9B,4FAA4F;IAC5F,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB"}
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;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;;;;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,sDAAsD;IACtD,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,2FAA2F;IAC3F,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAEjC,2DAA2D;IAC3D,YAAY,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAE9B,4FAA4F;IAC5F,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAClC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../builders/generate-css/schema.ts"],"names":[],"mappings":""}
@@ -40,6 +40,11 @@
40
40
  "type": "string",
41
41
  "description": "If specified, all the generated CSS variable will be generated in the given file. Otherwise, the output file will be determined based on the Variable parameters."
42
42
  },
43
+ "metadataIgnorePrivate": {
44
+ "type": "boolean",
45
+ "default": false,
46
+ "description": "Ignore the private variable in the metadata generation."
47
+ },
43
48
  "rootPath": {
44
49
  "type": "string",
45
50
  "description": "Root path used to determine the CSS file to edit if specified by the o3rTargetFile token extension. It will default to the Design Token file folder."
@@ -55,8 +60,18 @@
55
60
  "description": "Determine if the process should stop in case of Token duplication"
56
61
  },
57
62
  "templateFile": {
58
- "type": "string",
59
- "description": "Path to a template file to apply as default configuration to a Design Token extension"
63
+ "description": "Path to a template file(s) to apply as default configuration to a Design Token extension. In case of multiple files, the JSON will be deeply merged in the order defined by the list.",
64
+ "oneOf": [
65
+ {
66
+ "type": "string"
67
+ },
68
+ {
69
+ "type": "array",
70
+ "items": {
71
+ "type": "string"
72
+ }
73
+ }
74
+ ]
60
75
  },
61
76
  "prefix": {
62
77
  "type": "string",
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../builders/generate-jsonschema/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../builders/generate-jsonschema/schema.ts"],"names":[],"mappings":""}
@@ -0,0 +1,39 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ const node_path_1 = require("node:path");
5
+ const node_fs_1 = require("node:fs");
6
+ const public_api_1 = require("../src/public_api");
7
+ const minimist = require("minimist");
8
+ const args = minimist(process.argv.splice(2));
9
+ void (async () => {
10
+ const renderDesignTokenOptions = {
11
+ tokenDefinitionRenderer: (0, public_api_1.getDesignTokenTokenDefinitionRenderer)({ keyJoinNumber: args.l || args.level })
12
+ };
13
+ const output = args.o || args.output;
14
+ const templatePath = args.t || args.template;
15
+ const template = templatePath ? JSON.parse(await node_fs_1.promises.readFile((0, node_path_1.resolve)(process.cwd(), templatePath), { encoding: 'utf8' })) : undefined;
16
+ if (output) {
17
+ renderDesignTokenOptions.determineFileToUpdate = () => (0, node_path_1.resolve)(process.cwd(), output);
18
+ }
19
+ const tokens = (await Promise.all(args._
20
+ .map((file) => (0, node_path_1.isAbsolute)(file) ? (0, node_path_1.normalize)(file) : (0, node_path_1.resolve)(process.cwd(), file))
21
+ .filter((file) => {
22
+ const res = (0, node_fs_1.existsSync)(file);
23
+ if (!res) {
24
+ throw new Error(`The file ${file} does not exist, the process will stop.`);
25
+ }
26
+ return res;
27
+ })
28
+ .map(async (file) => ({ file, parsed: await (0, public_api_1.parseDesignTokenFile)(file, { specificationContext: { template } }) })))).reduce((acc, { file, parsed }) => {
29
+ parsed.forEach((variable, key) => {
30
+ if (acc.has(key)) {
31
+ console.warn(`A duplication of the variable ${key} is found in ${file}.`);
32
+ }
33
+ acc.set(key, variable);
34
+ });
35
+ return acc;
36
+ }, new Map());
37
+ await (0, public_api_1.renderDesignTokens)(tokens, renderDesignTokenOptions);
38
+ })();
39
+ //# sourceMappingURL=build-design-token.cli.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-design-token.cli.cjs","sourceRoot":"","sources":["../../cli/build-design-token.cli.cts"],"names":[],"mappings":";;;AAEA,yCAA2D;AAC3D,qCAAqD;AACrD,kDAAoH;AAEpH,qCAAqC;AAErC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAE9C,KAAK,CAAC,KAAK,IAAI,EAAE;IACf,MAAM,wBAAwB,GAA+B;QAC3D,uBAAuB,EAAE,IAAA,kDAAqC,EAAC,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;KACxG,CAAC;IAEF,MAAM,MAAM,GAAW,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC;IAC7C,MAAM,YAAY,GAAuB,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC;IACjE,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,kBAAE,CAAC,QAAQ,CAAC,IAAA,mBAAO,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtI,IAAI,MAAM,EAAE,CAAC;QACX,wBAAwB,CAAC,qBAAqB,GAAG,GAAG,EAAE,CAAC,IAAA,mBAAO,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAC/B,IAAI,CAAC,CAAC;SACH,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,sBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,qBAAS,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAO,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;SAChF,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACf,MAAM,GAAG,GAAG,IAAA,oBAAU,EAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,yCAAyC,CAAC,CAAC;QAC7E,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;SACD,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,IAAA,iCAAoB,EAAC,IAAI,EAAE,EAAC,oBAAoB,EAAE,EAAE,QAAQ,EAAE,EAAC,CAAC,EAAE,CAAC,CAAC,CACnH,CAAC,CAAC,MAAM,CAAyB,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;QAC1D,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE;YAC/B,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjB,OAAO,CAAC,IAAI,CAAC,iCAAiC,GAAG,gBAAgB,IAAI,GAAG,CAAC,CAAC;YAC5E,CAAC;YACD,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;IAEd,MAAM,IAAA,+BAAkB,EAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;AAC7D,CAAC,CAAC,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=build-design-token.cli.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-design-token.cli.d.cts","sourceRoot":"","sources":["../../cli/build-design-token.cli.cts"],"names":[],"mappings":""}
@@ -23,8 +23,10 @@ void (async () => {
23
23
  })
24
24
  .map(async (file) => ({ file, parsed: await (0, public_api_1.parseDesignTokenFile)(file) })))).reduce((acc, { file, parsed }) => {
25
25
  parsed.forEach((variable, key) => {
26
+ if (acc.has(key)) {
27
+ console.warn(`A duplication of the variable ${key} is found in ${file}.`);
28
+ }
26
29
  acc.set(key, variable);
27
- console.warn(`A duplication of the variable ${key} is found in ${file}`);
28
30
  });
29
31
  return acc;
30
32
  }, new Map());
@@ -1 +1 @@
1
- {"version":3,"file":"generate-css-from-design-token.cli.cjs","sourceRoot":"","sources":["../../cli/generate-css-from-design-token.cli.cts"],"names":[],"mappings":";;;AAEA,yCAA2D;AAC3D,qCAAqC;AACrC,kDAA6E;AAE7E,qCAAqC;AAErC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAE9C,KAAK,CAAC,KAAK,IAAI,EAAE;IACf,MAAM,wBAAwB,GAA+B,EAAE,CAAC;IAEhE,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC;IACrC,IAAI,MAAM,EAAE,CAAC;QACX,wBAAwB,CAAC,qBAAqB,GAAG,GAAG,EAAE,CAAC,IAAA,mBAAO,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAC/B,IAAI,CAAC,CAAC;SACH,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,sBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,qBAAS,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAO,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;SAChF,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACf,MAAM,GAAG,GAAG,IAAA,oBAAU,EAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,wCAAwC,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;SACD,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,IAAA,iCAAoB,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAC7E,CAAC,CAAC,MAAM,CAAyB,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;QAC1D,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE;YAC/B,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,iCAAiC,GAAG,gBAAgB,IAAI,EAAE,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;IAEd,MAAM,IAAA,+BAAkB,EAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;AAC7D,CAAC,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"generate-css-from-design-token.cli.cjs","sourceRoot":"","sources":["../../cli/generate-css-from-design-token.cli.cts"],"names":[],"mappings":";;;AAEA,yCAA2D;AAC3D,qCAAqC;AACrC,kDAA6E;AAE7E,qCAAqC;AAErC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAE9C,KAAK,CAAC,KAAK,IAAI,EAAE;IACf,MAAM,wBAAwB,GAA+B,EAAE,CAAC;IAEhE,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC;IACrC,IAAI,MAAM,EAAE,CAAC;QACX,wBAAwB,CAAC,qBAAqB,GAAG,GAAG,EAAE,CAAC,IAAA,mBAAO,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAC/B,IAAI,CAAC,CAAC;SACH,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,sBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,qBAAS,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAO,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;SAChF,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACf,MAAM,GAAG,GAAG,IAAA,oBAAU,EAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,wCAAwC,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;SACD,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,IAAA,iCAAoB,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAC7E,CAAC,CAAC,MAAM,CAAyB,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;QAC1D,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE;YAC/B,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjB,OAAO,CAAC,IAAI,CAAC,iCAAiC,GAAG,gBAAgB,IAAI,GAAG,CAAC,CAAC;YAC5E,CAAC;YACD,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;IAEd,MAAM,IAAA,+BAAkB,EAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;AAC7D,CAAC,CAAC,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "commonjs"
3
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@o3r/design",
3
- "version": "11.2.0-prerelease.8",
3
+ "version": "11.2.0-rc.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -43,6 +43,7 @@
43
43
  }
44
44
  },
45
45
  "bin": {
46
+ "o3r-build-design-token": "./cli/build-design-token.cli.cjs",
46
47
  "o3r-css-from-design-token": "./cli/generate-css-from-design-token.cli.cjs"
47
48
  },
48
49
  "dependencies": {
@@ -52,9 +53,9 @@
52
53
  "tslib": "^2.6.2"
53
54
  },
54
55
  "peerDependencies": {
55
- "@o3r/core": "^11.2.0-prerelease.8",
56
- "@o3r/schematics": "^11.2.0-prerelease.8",
57
- "@o3r/styling": "^11.2.0-prerelease.8",
56
+ "@o3r/core": "^11.2.0-rc.0",
57
+ "@o3r/schematics": "^11.2.0-rc.0",
58
+ "@o3r/styling": "^11.2.0-rc.0",
58
59
  "chokidar": "^3.5.2",
59
60
  "globby": "^11.1.0",
60
61
  "sass": "~1.77.0"
@@ -80,19 +81,19 @@
80
81
  }
81
82
  },
82
83
  "devDependencies": {
83
- "@angular-devkit/architect": "~0.1801.0",
84
- "@angular-devkit/build-angular": "~18.1.0",
85
- "@angular-devkit/core": "~18.1.0",
86
- "@angular-devkit/schematics": "~18.1.0",
87
- "@angular-eslint/eslint-plugin": "~18.1.0",
88
- "@angular/animations": "~18.1.0",
89
- "@angular/cli": "~18.1.0",
90
- "@angular/common": "~18.1.0",
91
- "@angular/compiler": "~18.1.0",
92
- "@angular/compiler-cli": "~18.1.0",
93
- "@angular/core": "~18.1.0",
94
- "@angular/platform-browser": "~18.1.0",
95
- "@angular/platform-browser-dynamic": "~18.1.0",
84
+ "@angular-devkit/architect": "~0.1802.0",
85
+ "@angular-devkit/build-angular": "~18.2.0",
86
+ "@angular-devkit/core": "~18.2.0",
87
+ "@angular-devkit/schematics": "~18.2.0",
88
+ "@angular-eslint/eslint-plugin": "~18.3.0",
89
+ "@angular/animations": "~18.2.0",
90
+ "@angular/cli": "~18.2.0",
91
+ "@angular/common": "~18.2.0",
92
+ "@angular/compiler": "~18.2.0",
93
+ "@angular/compiler-cli": "~18.2.0",
94
+ "@angular/core": "~18.2.0",
95
+ "@angular/platform-browser": "~18.2.0",
96
+ "@angular/platform-browser-dynamic": "~18.2.0",
96
97
  "@babel/core": "~7.25.0",
97
98
  "@babel/preset-typescript": "~7.24.0",
98
99
  "@compodoc/compodoc": "^1.1.19",
@@ -100,13 +101,13 @@
100
101
  "@nx/eslint-plugin": "~19.5.0",
101
102
  "@nx/jest": "~19.5.0",
102
103
  "@nx/js": "~19.5.0",
103
- "@o3r/build-helpers": "^11.2.0-prerelease.8",
104
- "@o3r/core": "^11.2.0-prerelease.8",
105
- "@o3r/eslint-plugin": "^11.2.0-prerelease.8",
106
- "@o3r/schematics": "^11.2.0-prerelease.8",
107
- "@o3r/styling": "^11.2.0-prerelease.8",
108
- "@o3r/test-helpers": "^11.2.0-prerelease.8",
109
- "@schematics/angular": "~18.1.0",
104
+ "@o3r/build-helpers": "^11.2.0-rc.0",
105
+ "@o3r/core": "^11.2.0-rc.0",
106
+ "@o3r/eslint-plugin": "^11.2.0-rc.0",
107
+ "@o3r/schematics": "^11.2.0-rc.0",
108
+ "@o3r/styling": "^11.2.0-rc.0",
109
+ "@o3r/test-helpers": "^11.2.0-rc.0",
110
+ "@schematics/angular": "~18.2.0",
110
111
  "@stylistic/eslint-plugin-ts": "~2.4.0",
111
112
  "@types/jest": "~29.5.2",
112
113
  "@types/minimist": "^1.2.2",
@@ -119,7 +120,7 @@
119
120
  "cpy-cli": "^5.0.0",
120
121
  "eslint": "^8.57.0",
121
122
  "eslint-import-resolver-node": "^0.3.9",
122
- "eslint-plugin-jest": "~28.7.0",
123
+ "eslint-plugin-jest": "~28.8.0",
123
124
  "eslint-plugin-jsdoc": "~48.11.0",
124
125
  "eslint-plugin-prefer-arrow": "~1.2.3",
125
126
  "eslint-plugin-unicorn": "^54.0.0",
@@ -0,0 +1,32 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "DesignTokenTemplateSchema",
4
+ "description": "Schema Describing the structure of the Design Token template, to enhance a Design Token structure",
5
+ "allOf": [
6
+ {
7
+ "$ref": "#/definitions/tokenTemplateGroup"
8
+ }
9
+ ],
10
+ "definitions": {
11
+ "tokenTemplateGroup": {
12
+ "type": "object",
13
+ "properties": {
14
+ "$schema": {
15
+ "type": "string"
16
+ },
17
+ "$description": {
18
+ "type": "string"
19
+ },
20
+ "$extensions": {
21
+ "$ref": "https://raw.githubusercontent.com/AmadeusITGroup/otter/main/packages/%40o3r/design/schemas/design-token.schema.json#/definitions/extensions"
22
+ }
23
+ },
24
+ "patternProperties": {
25
+ "^[^$.].*$": {
26
+ "$ref": "#/definitions/tokenTemplateGroup"
27
+ }
28
+ },
29
+ "additionalProperties": false
30
+ }
31
+ }
32
+ }