@o3r/design 11.3.0-prerelease.9 → 11.3.0-rc.1

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 (44) hide show
  1. package/README.md +19 -0
  2. package/builders/generate-css/index.d.ts.map +1 -1
  3. package/builders/generate-css/index.js +25 -4
  4. package/builders/generate-css/index.js.map +1 -0
  5. package/builders/generate-css/schema.js.map +1 -0
  6. package/builders/generate-jsonschema/index.d.ts.map +1 -1
  7. package/builders/generate-jsonschema/index.js +11 -2
  8. package/builders/generate-jsonschema/index.js.map +1 -0
  9. package/builders/generate-jsonschema/schema.js.map +1 -0
  10. package/cli/package.json +3 -0
  11. package/package.json +17 -12
  12. package/schemas/design-token-template.schema.json +32 -0
  13. package/schemas/design-token.schema.json +625 -0
  14. package/schematics/design-token-to-component/index.js.map +1 -0
  15. package/schematics/design-token-to-component/schema.js.map +1 -0
  16. package/schematics/extract-token/index.d.ts +1 -1
  17. package/schematics/extract-token/index.d.ts.map +1 -1
  18. package/schematics/extract-token/index.js +20 -2
  19. package/schematics/extract-token/index.js.map +1 -0
  20. package/schematics/extract-token/schema.js.map +1 -0
  21. package/schematics/generate-css/index.d.ts +1 -1
  22. package/schematics/generate-css/index.d.ts.map +1 -1
  23. package/schematics/generate-css/index.js +22 -4
  24. package/schematics/generate-css/index.js.map +1 -0
  25. package/schematics/generate-css/schema.js.map +1 -0
  26. package/schematics/ng-add/index.js.map +1 -0
  27. package/schematics/ng-add/register-generate-css/index.js.map +1 -0
  28. package/schematics/ng-add/register-generate-css/register-task.js.map +1 -0
  29. package/schematics/ng-add/schema.js.map +1 -0
  30. package/src/core/design-token/design-token-specification.interface.d.ts +13 -1
  31. package/src/core/design-token/design-token-specification.interface.d.ts.map +1 -1
  32. package/src/core/design-token/design-token-specification.interface.js.map +1 -1
  33. package/src/core/design-token/parsers/design-token.parser.d.ts.map +1 -1
  34. package/src/core/design-token/parsers/design-token.parser.js +32 -8
  35. package/src/core/design-token/parsers/design-token.parser.js.map +1 -1
  36. package/src/core/design-token/renderers/json-schema/design-token-value.renderers.js +1 -1
  37. package/src/core/design-token/renderers/json-schema/design-token-value.renderers.js.map +1 -1
  38. package/src/core/design-token/renderers/metadata/design-token-definition.renderers.d.ts.map +1 -1
  39. package/src/core/design-token/renderers/metadata/design-token-definition.renderers.js +3 -2
  40. package/src/core/design-token/renderers/metadata/design-token-definition.renderers.js.map +1 -1
  41. package/src/core/design-token/renderers/metadata/design-token-value.renderers.d.ts +2 -0
  42. package/src/core/design-token/renderers/metadata/design-token-value.renderers.d.ts.map +1 -1
  43. package/src/core/design-token/renderers/metadata/design-token-value.renderers.js +20 -1
  44. package/src/core/design-token/renderers/metadata/design-token-value.renderers.js.map +1 -1
package/README.md CHANGED
@@ -88,4 +88,23 @@ It comes with the following options:
88
88
 
89
89
  ## Technical documentation
90
90
 
91
+ ### Additional feature on top of standard Design Token
92
+
93
+ To enhance the features of default Design Token standard and provide additional information to renderers, the [$extensions](https://tr.designtokens.org/format/#extensions) properties has been enhanced by Otter Tooling with the following options:
94
+
95
+ | Extension property | Supporting Renderers | Description |
96
+ | ------------------ | -------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
97
+ | **o3rTargetFile** | `css`, `sass` | Information regarding the path to file where the token requests to be generated |
98
+ | **o3rPrivate** | `css`, `sass`, `json-schema`, `metadata`, `design-token` | Determine if the token is flagged as private |
99
+ | **o3rImportant** | `css` | Determine if the token should be flagged as important when generated |
100
+ | **o3rScope** | `css`, `sass` | Scope to apply to the generated variable |
101
+ | **o3rMetadata** | `css`, `sass`, `json-schema`, `metadata`, `design-token` | Additional information to provide to the metadata if generated |
102
+ | **o3rUnit** | `css`, `sass`, `metadata`, `design-token` | Convert a numeric value from the specified unit to the new unit. It will add a unit to the token with type "number" for which the unit is not specified.<br />In case of complex type (such as shadow, transition, etc...), the unit will be applied to all numeric types in it. |
103
+ | **o3rRatio** | `css`, `sass`, `metadata`, `design-token` | Ratio to apply to previous value. The ratio will be applied only on token with "number" type or on the first numbers determined in "string" like types.<br />In case of complex type (such as shadow, transition, etc...), the ratio will be applied to all numeric types in it. |
104
+
105
+ > [!NOTE]
106
+ > In case of implementation of custom renderer, additional properties dedicated to this renderer can be added following Design Token Extensions [guidelines](https://tr.designtokens.org/format/#extensions).
107
+
108
+ ### Going deeper
109
+
91
110
  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;AAmB5D;;;GAGG;;AACH,wBAqJG"}
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;AA8B5D;;;GAGG;;AACH,wBA+JI"}
@@ -6,13 +6,23 @@ const node_path_1 = require("node:path");
6
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
+ const node_fs_1 = require("node:fs");
10
+ const createBuilderWithMetricsIfInstalled = (builderFn) => async (opts, ctx) => {
11
+ let wrapper = (fn) => fn;
12
+ try {
13
+ const { createBuilderWithMetrics } = await Promise.resolve().then(() => require('@o3r/telemetry'));
14
+ wrapper = createBuilderWithMetrics;
15
+ }
16
+ catch { }
17
+ return wrapper(builderFn)(opts, ctx);
18
+ };
9
19
  /**
10
20
  * Generate CSS from Design Token files
11
21
  * @param options
12
22
  */
13
- exports.default = (0, architect_1.createBuilder)(async (options, context) => {
23
+ exports.default = (0, architect_1.createBuilder)(createBuilderWithMetricsIfInstalled(async (options, context) => {
14
24
  const templateFilePaths = options.templateFile
15
- && (typeof options.templateFile === 'string' ? [options.templateFile] : options.templateFile).map((templateFile) => (0, node_path_1.resolve)(context.workspaceRoot, templateFile))
25
+ && (typeof options.templateFile === 'string' ? [options.templateFile] : options.templateFile)
16
26
  || undefined;
17
27
  const designTokenFilePatterns = Array.isArray(options.designTokenFilePatterns) ? options.designTokenFilePatterns : [options.designTokenFilePatterns];
18
28
  const determineFileToUpdate = options.output ? () => (0, node_path_1.resolve)(context.workspaceRoot, options.output) :
@@ -69,7 +79,18 @@ exports.default = (0, architect_1.createBuilder)(async (options, context) => {
69
79
  let template;
70
80
  if (templateFilePaths) {
71
81
  const templateFiles = await Promise.all(templateFilePaths
72
- .map(async (templateFile) => JSON.parse(await (0, promises_1.readFile)(templateFile, { encoding: 'utf8' }))));
82
+ .map(async (templateFile) => {
83
+ let templateFilePath = (0, node_path_1.resolve)(context.workspaceRoot, templateFile);
84
+ if (!(0, node_fs_1.existsSync)(templateFilePath)) {
85
+ try {
86
+ templateFilePath = require.resolve(templateFile);
87
+ }
88
+ catch {
89
+ context.logger.error(`Cannot resolve the template file at '${templateFile}'`);
90
+ }
91
+ }
92
+ return JSON.parse(await (0, promises_1.readFile)(templateFilePath, { encoding: 'utf8' }));
93
+ }));
73
94
  template = templateFiles.reduce((acc, cur) => (0, public_api_1.mergeDesignTokenTemplates)(acc, cur), {});
74
95
  }
75
96
  const files = (0, globby_1.sync)(designTokenFilePatterns, { cwd: context.workspaceRoot, absolute: true });
@@ -152,5 +173,5 @@ exports.default = (0, architect_1.createBuilder)(async (options, context) => {
152
173
  return { success: false, error: String(err) };
153
174
  }
154
175
  }
155
- });
176
+ }));
156
177
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../builders/generate-css/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../builders/generate-css/schema.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../builders/generate-jsonschema/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,UAAU,CAAC;AAYnE;;;GAGG;;AACH,wBAkEG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../builders/generate-jsonschema/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,UAAU,CAAC;AAuBnE;;;GAGG;;AACH,wBAkEI"}
@@ -4,11 +4,20 @@ 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 createBuilderWithMetricsIfInstalled = (builderFn) => async (opts, ctx) => {
8
+ let wrapper = (fn) => fn;
9
+ try {
10
+ const { createBuilderWithMetrics } = await Promise.resolve().then(() => require('@o3r/telemetry'));
11
+ wrapper = createBuilderWithMetrics;
12
+ }
13
+ catch { }
14
+ return wrapper(builderFn)(opts, ctx);
15
+ };
7
16
  /**
8
17
  * Generate Json Schema from Design Token files
9
18
  * @param options
10
19
  */
11
- exports.default = (0, architect_1.createBuilder)(async (options, context) => {
20
+ exports.default = (0, architect_1.createBuilder)(createBuilderWithMetricsIfInstalled(async (options, context) => {
12
21
  const designTokenFilePatterns = Array.isArray(options.designTokenFilePatterns) ? options.designTokenFilePatterns : [options.designTokenFilePatterns];
13
22
  const execute = async () => {
14
23
  const files = (await globby(designTokenFilePatterns, { cwd: context.workspaceRoot, absolute: true }));
@@ -72,5 +81,5 @@ exports.default = (0, architect_1.createBuilder)(async (options, context) => {
72
81
  return { success: false, error: String(err) };
73
82
  }
74
83
  }
75
- });
84
+ }));
76
85
  //# sourceMappingURL=index.js.map
@@ -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,3 @@
1
+ {
2
+ "type": "commonjs"
3
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@o3r/design",
3
- "version": "11.3.0-prerelease.9",
3
+ "version": "11.3.0-rc.1",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -53,12 +53,13 @@
53
53
  "tslib": "^2.6.2"
54
54
  },
55
55
  "peerDependencies": {
56
- "@o3r/core": "^11.3.0-prerelease.9",
57
- "@o3r/schematics": "^11.3.0-prerelease.9",
58
- "@o3r/styling": "^11.3.0-prerelease.9",
56
+ "@o3r/core": "^11.3.0-rc.1",
57
+ "@o3r/schematics": "^11.3.0-rc.1",
58
+ "@o3r/styling": "^11.3.0-rc.1",
59
+ "@o3r/telemetry": "^11.3.0-rc.1",
59
60
  "chokidar": "^3.5.2",
60
61
  "globby": "^11.1.0",
61
- "sass": "~1.78.0"
62
+ "sass": "~1.79.0"
62
63
  },
63
64
  "peerDependenciesMeta": {
64
65
  "@o3r/core": {
@@ -70,6 +71,9 @@
70
71
  "@o3r/styling": {
71
72
  "optional": true
72
73
  },
74
+ "@o3r/telemetry": {
75
+ "optional": true
76
+ },
73
77
  "chokidar": {
74
78
  "optional": true
75
79
  },
@@ -101,12 +105,13 @@
101
105
  "@nx/eslint-plugin": "~19.5.0",
102
106
  "@nx/jest": "~19.5.0",
103
107
  "@nx/js": "~19.5.0",
104
- "@o3r/build-helpers": "^11.3.0-prerelease.9",
105
- "@o3r/core": "^11.3.0-prerelease.9",
106
- "@o3r/eslint-plugin": "^11.3.0-prerelease.9",
107
- "@o3r/schematics": "^11.3.0-prerelease.9",
108
- "@o3r/styling": "^11.3.0-prerelease.9",
109
- "@o3r/test-helpers": "^11.3.0-prerelease.9",
108
+ "@o3r/build-helpers": "^11.3.0-rc.1",
109
+ "@o3r/core": "^11.3.0-rc.1",
110
+ "@o3r/eslint-plugin": "^11.3.0-rc.1",
111
+ "@o3r/schematics": "^11.3.0-rc.1",
112
+ "@o3r/styling": "^11.3.0-rc.1",
113
+ "@o3r/telemetry": "^11.3.0-rc.1",
114
+ "@o3r/test-helpers": "^11.3.0-rc.1",
110
115
  "@schematics/angular": "~18.2.0",
111
116
  "@stylistic/eslint-plugin-ts": "~2.4.0",
112
117
  "@types/jest": "~29.5.2",
@@ -132,7 +137,7 @@
132
137
  "nx": "~19.5.0",
133
138
  "pid-from-port": "^1.1.3",
134
139
  "rxjs": "^7.8.1",
135
- "sass": "~1.78.0",
140
+ "sass": "~1.79.0",
136
141
  "semver": "^7.5.2",
137
142
  "ts-jest": "~29.2.0",
138
143
  "ts-node": "~10.9.2",
@@ -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
+ }