@synergy-design-system/mcp 1.41.1 → 2.0.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 (113) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/README.md +43 -8
  3. package/dist/bin/create-checksum.js +2 -1
  4. package/dist/build/assets.js +1 -1
  5. package/dist/build/components.js +1 -0
  6. package/dist/build/static.js +15 -7
  7. package/dist/build/styles.js +1 -1
  8. package/dist/build/tokens.js +1 -1
  9. package/dist/tools/asset-info.js +8 -6
  10. package/dist/tools/component-info.js +0 -1
  11. package/dist/tools/framework-info.js +0 -1
  12. package/dist/tools/index.d.ts +1 -0
  13. package/dist/tools/index.js +1 -0
  14. package/dist/tools/migration-info.d.ts +10 -1
  15. package/dist/tools/migration-info.js +74 -12
  16. package/dist/tools/migration-list.d.ts +10 -0
  17. package/dist/tools/migration-list.js +122 -0
  18. package/dist/tools/template-info.js +0 -1
  19. package/dist/tools/version.js +3 -1
  20. package/dist/utilities/checksum.js +2 -1
  21. package/dist/utilities/migration.d.ts +3 -1
  22. package/dist/utilities/migration.js +25 -2
  23. package/dist/utilities/storybook/build-docs.js +2 -1
  24. package/dist/utilities/storybook/configs.js +3 -3
  25. package/dist/utilities/storybook/docs-scraper.js +0 -1
  26. package/dist/utilities/storybook/scraper.js +2 -2
  27. package/dist/utilities/storybook/storybook-manager.js +1 -2
  28. package/dist/utilities/version.d.ts +20 -2
  29. package/metadata/checksum.txt +1 -1
  30. package/metadata/packages/angular/README.md +1 -1
  31. package/metadata/packages/assets/BREAKING_CHANGES.md +305 -0
  32. package/metadata/packages/assets/CHANGELOG.md +26 -0
  33. package/metadata/packages/assets/README.md +39 -18
  34. package/metadata/packages/components/components/syn-alert/component.custom.styles.ts +20 -20
  35. package/metadata/packages/components/components/syn-badge/component.custom.styles.ts +11 -10
  36. package/metadata/packages/components/components/syn-breadcrumb-item/component.custom.styles.ts +1 -1
  37. package/metadata/packages/components/components/syn-button/component.custom.styles.ts +24 -24
  38. package/metadata/packages/components/components/syn-checkbox/component.custom.styles.ts +7 -7
  39. package/metadata/packages/components/components/syn-combobox/component.angular.ts +0 -17
  40. package/metadata/packages/components/components/syn-combobox/component.ts +0 -9
  41. package/metadata/packages/components/components/syn-combobox/component.vue +0 -9
  42. package/metadata/packages/components/components/syn-details/component.custom.styles.ts +1 -1
  43. package/metadata/packages/components/components/syn-dialog/component.custom.styles.ts +1 -1
  44. package/metadata/packages/components/components/syn-dropdown/component.angular.ts +0 -17
  45. package/metadata/packages/components/components/syn-dropdown/component.ts +0 -8
  46. package/metadata/packages/components/components/syn-dropdown/component.vue +0 -9
  47. package/metadata/packages/components/components/syn-file/component.styles.ts +6 -6
  48. package/metadata/packages/components/components/syn-header/component.styles.ts +7 -7
  49. package/metadata/packages/components/components/syn-icon-button/component.custom.styles.ts +8 -8
  50. package/metadata/packages/components/components/syn-input/component.custom.styles.ts +3 -3
  51. package/metadata/packages/components/components/syn-input/component.ts +2 -3
  52. package/metadata/packages/components/components/syn-menu-item/component.custom.styles.ts +11 -11
  53. package/metadata/packages/components/components/syn-nav-item/component.styles.ts +3 -3
  54. package/metadata/packages/components/components/syn-optgroup/component.styles.ts +1 -1
  55. package/metadata/packages/components/components/syn-option/component.custom.styles.ts +13 -13
  56. package/metadata/packages/components/components/syn-popup/component.angular.ts +0 -16
  57. package/metadata/packages/components/components/syn-popup/component.ts +3 -10
  58. package/metadata/packages/components/components/syn-popup/component.vue +0 -10
  59. package/metadata/packages/components/components/syn-progress-bar/component.custom.styles.ts +2 -2
  60. package/metadata/packages/components/components/syn-progress-ring/component.custom.styles.ts +2 -2
  61. package/metadata/packages/components/components/syn-radio/component.custom.styles.ts +7 -7
  62. package/metadata/packages/components/components/syn-range/component.styles.ts +10 -9
  63. package/metadata/packages/components/components/syn-range/component.ts +0 -1
  64. package/metadata/packages/components/components/syn-range-tick/component.styles.ts +1 -1
  65. package/metadata/packages/components/components/syn-select/component.angular.ts +0 -17
  66. package/metadata/packages/components/components/syn-select/component.ts +0 -8
  67. package/metadata/packages/components/components/syn-select/component.vue +0 -9
  68. package/metadata/packages/components/components/syn-side-nav/component.angular.ts +0 -21
  69. package/metadata/packages/components/components/syn-side-nav/component.ts +2 -36
  70. package/metadata/packages/components/components/syn-side-nav/component.vue +0 -13
  71. package/metadata/packages/components/components/syn-spinner/component.custom.styles.ts +2 -2
  72. package/metadata/packages/components/components/syn-switch/component.custom.styles.ts +16 -16
  73. package/metadata/packages/components/components/syn-tab/component.custom.styles.ts +3 -3
  74. package/metadata/packages/components/components/syn-tab-group/component.custom.styles.ts +2 -2
  75. package/metadata/packages/components/components/syn-tag/component.custom.styles.ts +1 -1
  76. package/metadata/packages/components/components/syn-tooltip/component.angular.ts +0 -18
  77. package/metadata/packages/components/components/syn-tooltip/component.ts +1 -10
  78. package/metadata/packages/components/components/syn-tooltip/component.vue +0 -10
  79. package/metadata/packages/components/components/syn-validate/component.ts +1 -0
  80. package/metadata/packages/components/migration/BREAKING_CHANGES.md +433 -14
  81. package/metadata/packages/components/static/CHANGELOG.md +55 -0
  82. package/metadata/packages/components/static/LIMITATIONS.md +141 -35
  83. package/metadata/packages/components/static/README.md +1 -1
  84. package/metadata/packages/fonts/CHANGELOG.md +8 -0
  85. package/metadata/packages/fonts/package.json +4 -4
  86. package/metadata/packages/styles/BREAKING_CHANGES.md +105 -0
  87. package/metadata/packages/styles/CHANGELOG.md +37 -0
  88. package/metadata/packages/styles/index.css +9 -9
  89. package/metadata/packages/styles/link-list.css +1 -1
  90. package/metadata/packages/styles/link.css +2 -2
  91. package/metadata/packages/styles/tables.css +8 -8
  92. package/metadata/packages/styles/typography.css +1 -1
  93. package/metadata/packages/tokens/BREAKING_CHANGES.md +180 -0
  94. package/metadata/packages/tokens/CHANGELOG.md +26 -0
  95. package/metadata/packages/tokens/README.md +2 -0
  96. package/metadata/packages/tokens/dark.css +237 -236
  97. package/metadata/packages/tokens/index.js +6 -1
  98. package/metadata/packages/tokens/light.css +221 -220
  99. package/metadata/packages/tokens/sick2018_dark.css +4 -3
  100. package/metadata/packages/tokens/sick2018_light.css +4 -3
  101. package/metadata/packages/tokens/sick2025_dark.css +4 -3
  102. package/metadata/packages/tokens/sick2025_light.css +4 -3
  103. package/metadata/static/components/syn-badge/docs.md +2 -14
  104. package/metadata/static/components/syn-popup/docs.md +10 -29
  105. package/metadata/static/components/syn-range/docs.md +1 -1
  106. package/metadata/static/migration/index.md +51 -11
  107. package/metadata/{packages/components/migration/migration-synergy-v3.md → static/migration/v2-2018-to-v2-2025.md} +1 -1
  108. package/metadata/static/migration/v2-2018-to-v3-2018.md +147 -0
  109. package/metadata/static/migration/v2-2018-to-v3-2025.md +150 -0
  110. package/metadata/static/migration/v2-2025-to-v3-2025.md +133 -0
  111. package/metadata/static/templates/appshell.md +8 -8
  112. package/metadata/static/templates/footer.md +1 -1
  113. package/package.json +16 -16
@@ -38,7 +38,7 @@ ${story.example}
38
38
  },
39
39
  generateOutputPath: (component) => `${staticComponentPath}/${component}/docs.md`,
40
40
  generateStoryId: (component) => componentStories[component],
41
- getItems: async () => Object.keys(componentStories),
41
+ getItems: async () => Promise.resolve(Object.keys(componentStories)),
42
42
  outputPath: staticComponentPath,
43
43
  };
44
44
  /**
@@ -59,7 +59,7 @@ ${story.example}
59
59
  },
60
60
  generateOutputPath: (style) => `${staticStylesPath}/${style}.md`,
61
61
  generateStoryId: (component) => styleStories[component],
62
- getItems: async () => Object.keys(styleStories),
62
+ getItems: async () => Promise.resolve(Object.keys(styleStories)),
63
63
  outputPath: staticStylesPath,
64
64
  };
65
65
  /**
@@ -80,6 +80,6 @@ ${story.example}
80
80
  },
81
81
  generateOutputPath: (template) => `${templatesPath}/${template}.md`,
82
82
  generateStoryId: (component) => templateStories[component],
83
- getItems: async () => Object.keys(templateStories),
83
+ getItems: async () => Promise.resolve(Object.keys(templateStories)),
84
84
  outputPath: staticStylesPath,
85
85
  };
@@ -1,4 +1,3 @@
1
- /* eslint-disable no-console */
2
1
  import { StorybookScraper } from './scraper.js';
3
2
  import { componentScrapingConfig, stylesScrapingConfig, templateScrapingConfig, } from './configs.js';
4
3
  export class DocsScraper {
@@ -1,4 +1,3 @@
1
- /* eslint-disable no-console */
2
1
  import { dirname } from 'node:path';
3
2
  import { mkdir, writeFile } from 'node:fs/promises';
4
3
  import { chromium } from 'playwright';
@@ -95,9 +94,10 @@ export class StorybookScraper {
95
94
  if (!exampleSource && storyMeta.hasIframe) {
96
95
  try {
97
96
  const storySection = page.locator('.sb-anchor').nth(storyMeta.index);
98
- const frame = await storySection.frameLocator('iframe');
97
+ const frame = storySection.frameLocator('iframe');
99
98
  const frameContent = await frame.locator('#root-inner').innerHTML();
100
99
  exampleSource = frameContent || '';
100
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
101
101
  }
102
102
  catch (error) {
103
103
  // If iframe content extraction fails, continue with empty content
@@ -1,10 +1,9 @@
1
- /* eslint-disable no-console */
1
+ /* eslint-disable @typescript-eslint/no-misused-promises */
2
2
  import { createServer } from 'http';
3
3
  import { promisify } from 'node:util';
4
4
  import { exec } from 'node:child_process';
5
5
  import { dirname, resolve } from 'path';
6
6
  import { fileURLToPath } from 'url';
7
- // eslint-disable-next-line import/no-extraneous-dependencies
8
7
  import handler from 'serve-handler';
9
8
  const execAsync = promisify(exec);
10
9
  // Get current directory for resolving the Storybook build path
@@ -1,10 +1,28 @@
1
+ type MinimalPackageJson = {
2
+ author?: {
3
+ name?: string;
4
+ email?: string;
5
+ url?: string;
6
+ };
7
+ repository?: {
8
+ type: string;
9
+ url: string;
10
+ };
11
+ homepage?: string;
12
+ description: string;
13
+ name: string;
14
+ version: string;
15
+ license?: string;
16
+ [key: string]: unknown;
17
+ };
1
18
  /**
2
19
  * Gets the current package.json information for the MCP server.
3
20
  * @returns The parsed package.json content
4
21
  */
5
- export declare const getPackageInfo: () => any;
22
+ export declare const getPackageInfo: () => MinimalPackageJson;
6
23
  /**
7
24
  * Gets the current version of the MCP server.
8
25
  * @returns The version string from package.json
9
26
  */
10
- export declare const getVersion: () => any;
27
+ export declare const getVersion: () => string;
28
+ export {};
@@ -1 +1 @@
1
- 649ee535a15830cf256a83e92c317939
1
+ 4aab87d96fe9d7ab7eb036cc0efc6049
@@ -9,7 +9,7 @@ It aims for an improved UX when used in Angular applications:
9
9
  - Auto-completion
10
10
  - Event handling
11
11
 
12
- > We are currently supporting Angular version ^16.2.12, ^17.0.0, ^18.0.0, ^19.0.0 and ^20.0.0 as well as Typescript version > 5.0.0.
12
+ > We are currently supporting Angular version ^18.0.0, ^19.0.0 and ^20.0.0 as well as Typescript version > 5.0.0.
13
13
 
14
14
  ## Known issues and limitations
15
15
 
@@ -0,0 +1,305 @@
1
+ # Handling breaking changes between major versions
2
+
3
+ This guide holds the required information for migrating from one major version of `@synergy-design-system/assets` to the next.
4
+
5
+ > ⚠️ Migrations **must** always be done from one major version to the next to prevent issues (e.g. with types and property changes)
6
+ > This means when moving from `@synergy-design-system/assets` v1.x to v3.x,
7
+ > you will **have to apply** the changes from v1.x to v2.x first!
8
+
9
+ ---
10
+
11
+ ## Version 2.0
12
+
13
+ <h3 id="fs-layout-v2">BREAKING! Changes to the filesystem layout</h3>
14
+
15
+ #### ⚠️ Introducing a new filesystem structure
16
+
17
+ **Associated Ticket(s)**:
18
+
19
+ - [#1149](https://github.com/synergy-design-system/synergy-design-system/issues/1149)
20
+
21
+ **Reason**:
22
+
23
+ During the migration process it became clear that the layout of the filesystem had to be cleaned up for easier usage and extendability.
24
+ The old flat separation on the top level of the `src` folder was poorly structured and hard to reason about. Are the icons the user needs located in `src/icons` or `src/icons-2025`? Does he need `system-icons` or `system-icons-2025`? It even got worse with the packages export map: Where should `icons` be pointed with the new default icon set of `SICK 2025`?
25
+
26
+ Because of those problems, the filesystem structure was restructured like shown below:
27
+
28
+ **SICK 2018 Assets:**
29
+
30
+ | Content | Location (1.x) | Location (2.x) |
31
+ | ------------------ | -------------------- | ------------------------- |
32
+ | Logos (svg) | src/logos | src/sick2018/logos |
33
+ | System Icons (svg) | src/system-icons | src/sick2018/system-icons |
34
+ | Icons (svg) | src/icons | src/sick2018/icons |
35
+ | Default Icons (js) | src/default-icons.ts | src/sick2018/js/index.js |
36
+
37
+ **SICK 2025 Assets:**
38
+
39
+ | Content | Location (1.x) | Location (2.x) |
40
+ | ------------------- | ----------------------------- | -------------------------- |
41
+ | Logos (svg) | src/logos | src/sick2025/logos |
42
+ | System Icons (svg) | src/system-icons-sick2025 | src/sick2025/system-icons |
43
+ | Icons fill (svg) | src/sick2025/fill | src/sick2025/icons/fill |
44
+ | Icons fill (js) | src/sick2025-filled-icons.ts | src/sick2025/js/filled.js |
45
+ | Icons outline (svg) | src/sick2025/outline | src/sick2025/icons/outline |
46
+ | Icons outline (js) | src/sick2025-outline-icons.ts | src/sick2025/js/outline.js |
47
+ | Icons all (js) | src/default-icons-2025.ts | src/sick2025/js/index.js |
48
+
49
+ **Migration Steps**:
50
+
51
+ When using a copy script to copy the assets to your build destination, use the following map for the new paths. Note that the **name of the svgs have not changed** and should work regardless.
52
+
53
+ **Example (before)**:
54
+
55
+ ```javascript
56
+ // Default configuration for SICK 2018 icons and @synergy-design-system/assets@1.x.
57
+ export default defineConfig({
58
+ plugins: [
59
+ viteStaticCopy({
60
+ targets: [
61
+ // Old path for SICK logos (all)
62
+ {
63
+ src: "node_modules/@synergy-design-system/assets/src/logos/*",
64
+ dest: "./assets/logos",
65
+ },
66
+ // Old path for 2018 icons
67
+ {
68
+ src: "node_modules/@synergy-design-system/assets/src/icons/*",
69
+ dest: "./assets/icons/sick2018",
70
+ },
71
+ // Old path for 2025 icons
72
+ {
73
+ src: "node_modules/@synergy-design-system/assets/src/sick2025/outline/*",
74
+ dest: "./assets/icons/sick2025",
75
+ },
76
+ ],
77
+ }),
78
+ ],
79
+ });
80
+ ```
81
+
82
+ **Example (after)**:
83
+
84
+ ```javascript
85
+ // Default configuration for SICK 2018 icons and @synergy-design-system/assets@2.x.
86
+ export default defineConfig({
87
+ plugins: [
88
+ viteStaticCopy({
89
+ targets: [
90
+ // New path for SICK logos (2018)
91
+ {
92
+ src: "node_modules/@synergy-design-system/assets/src/sick2018/logos/*",
93
+ dest: "./assets/logos",
94
+ },
95
+ // New path for SICK logos (2025)
96
+ {
97
+ src: "node_modules/@synergy-design-system/assets/src/sick2025/logos/*",
98
+ dest: "./assets/logos",
99
+ },
100
+ // New path for 2018 icons
101
+ {
102
+ src: "node_modules/@synergy-design-system/assets/src/sick2018/icons/*",
103
+ dest: "./assets/icons/sick2018",
104
+ },
105
+ // New path for 2025 icons
106
+ {
107
+ src: "node_modules/@synergy-design-system/assets/src/sick2025/icons/outline/*",
108
+ dest: "./assets/icons/sick2025",
109
+ },
110
+ ],
111
+ }),
112
+ ],
113
+ });
114
+ ```
115
+
116
+ ---
117
+
118
+ <h3 id="deprecate-sick2018-v2">SICK 2018 icons</h3>
119
+
120
+ #### ⚠️ Future deprecation of the SICK 2018 icons
121
+
122
+ **Associated Ticket(s)**:
123
+
124
+ - [#1149](https://github.com/synergy-design-system/synergy-design-system/issues/1149)
125
+
126
+ **Reason**:
127
+
128
+ With the release of `@synergy-design-system/assets` v2.0 (part of Synergy 3), the SICK 2025 icons are now the default iconset for new applications. This is reflected in all of our documentation and demos. Still providing the SICK 2018 icons in the future leads to a very large package payload (approx. 55mb). We therefore marked all utilities and types using the SICK 2018 icons as deprecated in code and will remove the SICK 2018 icons and their types in a future major release.
129
+
130
+ > We plan to keep the SICK 2018 icons available until at least the beginning of 2027.
131
+ > They will likely be removed in the first major release after 2027.
132
+
133
+ **Migration Steps**:
134
+
135
+ - Upgrade your application to use the new SICK 2025 iconset.
136
+ - Optionally use the `createMigrationLibrary` or `migrateIconName` helpers to migrate from 2018 icon names to the new ones seamlessly.
137
+
138
+ **Example (before)**:
139
+
140
+ ```html
141
+ <syn-icon name="access_alarm"></syn-icon>
142
+ ```
143
+
144
+ **Example (after)**:
145
+
146
+ ```html
147
+ <!-- Keep using SICK 2018 icons without migration -->
148
+ <script type="module">
149
+ import { setupIcons } from "@synergy-design-system/components";
150
+ // Use 'sick2018' to keep old icon names working with old icon files
151
+ setupIcons("sick2018");
152
+ </script>
153
+
154
+ <!-- Continues to work as before, no name mapping needed -->
155
+ <syn-icon name="access_alarm"></syn-icon>
156
+ ```
157
+
158
+ **Example (after)**:
159
+
160
+ ```html
161
+ <!-- Migrate to SICK 2025 icons while keeping old icon names in markup -->
162
+ <script type="module">
163
+ import { setupIcons } from "@synergy-design-system/components";
164
+ // Use 'sick2025' to enable automatic name migration
165
+ setupIcons("sick2025");
166
+ </script>
167
+
168
+ <!-- Old name automatically maps to 'alarm' and loads alarm.svg from SICK 2025 -->
169
+ <syn-icon name="access_alarm"></syn-icon>
170
+ ```
171
+
172
+ **Example (after)**:
173
+
174
+ ```html
175
+ <!-- Manual migration: Update icon names directly in markup -->
176
+ <script type="module">
177
+ import { migrateIconName } from "@synergy-design-system/components";
178
+
179
+ // Helper function shows what the new name is
180
+ const newIconName = migrateIconName("access_alarm"); // Returns 'alarm'
181
+ console.log(newIconName);
182
+ </script>
183
+
184
+ <!-- Update to new icon name directly -->
185
+ <syn-icon name="alarm"></syn-icon>
186
+ ```
187
+
188
+ ---
189
+
190
+ <h3 id="cli-defaults-v2">`createSpriteSheet`</h3>
191
+
192
+ #### ⚠️ Changed defaults from SICK 2018 to SICK 2025 theme
193
+
194
+ **Associated Ticket(s)**:
195
+
196
+ - [#1149](https://github.com/synergy-design-system/synergy-design-system/issues/1149)
197
+
198
+ **Reason**:
199
+
200
+ With the migration from SICK 2018 to SICK 2025, all default parameters using a theme were updated from SICK 2018 to SICK 2025.
201
+
202
+ **Migration Steps**:
203
+
204
+ Check if you are using `createSpriteSheet` (js) or `syn-create-spritesheet` (command line). Both use SICK 2025 icons now by default.
205
+
206
+ **Example (before)**:
207
+
208
+ ```bash
209
+ # Returns images from sick 2018 in version 1
210
+ npx @synergy-design-system/assets/syn-create-spritesheet --list=wallpaper
211
+ ```
212
+
213
+ **Example (after)**:
214
+
215
+ ```bash
216
+ # Returns images from sick 2025 in version 2
217
+ npx @synergy-design-system/assets/syn-create-spritesheet --list=wallpaper
218
+
219
+ # Returns images from sick 2018 in version 2
220
+ npx @synergy-design-system/assets/syn-create-spritesheet --list=wallpaper --iconset=sick2018
221
+ ```
222
+
223
+ ---
224
+
225
+ <h3 id="exports-change-v2">Exports</h3>
226
+
227
+ #### ⚠️ Updated mappings of exported scripts
228
+
229
+ **Associated Ticket(s)**:
230
+
231
+ - [#1149](https://github.com/synergy-design-system/synergy-design-system/issues/1149)
232
+
233
+ **Reason**:
234
+
235
+ This was needed because of the filesystem reorganization that was necessary.
236
+
237
+ **Migration Steps**:
238
+
239
+ Make sure to adapt your imports for the main export to use `sick2018.js` when you still have to use the SICK 2018 icons. The default export now serves the SICK 2025 icons, and specific icon sets can be imported via their respective endpoints.
240
+
241
+ **Example (before)**:
242
+
243
+ ```javascript
244
+ // Load SICK 2018 icons (default in v1)
245
+ import sick2018Icons from "@synergy-design-system/assets";
246
+
247
+ // Load SICK 2025 icons (explicit in v1)
248
+ import sick2025Icons from "@synergy-design-system/assets/default-icons-2025.js";
249
+
250
+ // Default icon import loads SICK 2018 icons in v2
251
+ import defaultIcons from "@synergy-design-system/assets";
252
+
253
+ console.log(sick2018Icons, sick2025Icons, defaultIcons);
254
+ ```
255
+
256
+ **Example (after)**:
257
+
258
+ ```javascript
259
+ // Load SICK 2018 icons
260
+ import sick2018Icons from "@synergy-design-system/assets/sick2018.js";
261
+
262
+ // Load SICK 2025 icons
263
+ import sick2025Icons from "@synergy-design-system/assets/sick2025.js";
264
+
265
+ // Default icon import loads SICK 2025 icons in v2
266
+ import defaultIcons from "@synergy-design-system/assets";
267
+
268
+ console.log(sick2018Icons, sick2025Icons, defaultIcons);
269
+ ```
270
+
271
+ ---
272
+
273
+ <!-- USE THIS AS A TEMPLATE FOR ADDITIONAL MIGRATION STEPS
274
+
275
+ <h3 id="change-VERSION">`Change`</h3>
276
+
277
+ #### ⚠️ DESCRIBE THE CHANGE HERE
278
+
279
+ **Associated Ticket(s)**:
280
+
281
+ - [#1](https://github.com/synergy-design-system/synergy-design-system/issues/1)
282
+
283
+ **Reason**:
284
+
285
+ DESCRIBE THE REASON FOR THIS CHANGE
286
+
287
+ **Migration Steps**:
288
+
289
+ MIGRATION IN TEXT FORM
290
+
291
+ **Example (before)**:
292
+
293
+ ```javascript
294
+ EXAMPLE BEFORE THE CHANGE
295
+ ```
296
+
297
+ **Example (after)**:
298
+
299
+ ```javascript
300
+ EXAMPLE AFTER THE CHANGE
301
+ ```
302
+
303
+ ---
304
+
305
+ -->
@@ -1,5 +1,31 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - [#1160](https://github.com/synergy-design-system/synergy-design-system/pull/1160) [`669cbcb`](https://github.com/synergy-design-system/synergy-design-system/commit/669cbcb9cccce72134beac99ac12a2591f3e3c74) Thanks [@schilchSICKAG](https://github.com/schilchSICKAG)! - Released on: 2026-02-02
8
+
9
+ feat: 💥 New default iconset SICK 2025
10
+
11
+ This release introduces SICK 2025 as the new default iconset and restructures the filesystem layout for better organization and maintainability.
12
+
13
+ **Key Changes:**
14
+ - **Breaking:** Filesystem structure reorganized - icons, logos, and system-icons are now organized under `src/sick2018/` and `src/sick2025/` directories
15
+ - **Breaking:** Default iconset changed to SICK 2025 - `createSpriteSheet` and CLI commands now use SICK 2025 icons by default
16
+ - **Breaking:** Export mappings updated - the main package export now serves SICK 2025 icons; use `@synergy-design-system/assets/sick2018.js` for SICK 2018 icons
17
+ - **Deprecation Notice:** SICK 2018 icons will be removed in a future major release (expected 2027+)
18
+
19
+ For detailed migration instructions, please refer to the [breaking changes documentation](https://synergy-design-system.github.io/?path=/docs/packages-assets-breaking-changes--docs).
20
+
21
+ ## 1.25.1
22
+
23
+ ### Patch Changes
24
+
25
+ - [#1148](https://github.com/synergy-design-system/synergy-design-system/pull/1148) [`73b7011`](https://github.com/synergy-design-system/synergy-design-system/commit/73b70118ae21bc58c83cbfeb9e2e8447873803a6) Thanks [@schilchSICKAG](https://github.com/schilchSICKAG)! - Released on: 2026-01-08
26
+
27
+ fix: 🐛 Minor dependency updates (#258)
28
+
3
29
  ## 1.25.0
4
30
 
5
31
  ### Minor Changes
@@ -5,47 +5,68 @@ This package provides assets like:
5
5
  - **logos:** a collection of various logos (such as the variants of the SICK brand logo)
6
6
  - **icons:** the standard icons based on [Material Icons](https://fonts.google.com/icons)
7
7
  - **system-icons:** a small subset of icons, that are internally used by the Synergy components
8
+ - **component-thumbnails:** preview icons of components, used in the Synergy documentation page
8
9
 
9
10
  The source of the assets can be found at [Figma](https://www.figma.com/file/bZFqk9urD3NlghGUKrkKCR/Synergy-Digital-Design-System?type=design&node-id=104-233&mode=design&t=GPu4VVd9yffLLAaS-0)
10
11
 
11
12
  ### Installation
12
13
 
13
- Please make sure to install the assets package as a dependency:
14
+ Please make sure to install the assets package as `devDependency` or `dependency`:
14
15
 
15
16
  ```bash
17
+ # If you are only interested in the filesystem based icons,
18
+ # install as a devDependency
19
+ npm install --save-dev @synergy-design-system/assets
20
+
21
+ # If you are using javascript imports in your code directly,
22
+ # install as a dependency
16
23
  npm install --save @synergy-design-system/assets
17
24
  ```
18
25
 
19
26
  ### Usage
20
27
 
21
- #### Images
28
+ #### Icons
22
29
 
23
- All images are provided as svg's.
30
+ All icons are provided as SVG files. The assets package is organized with brand-specific namespaces to ensure clear separation between different icon sets.
24
31
 
25
- The recommended way of using the icons is using the [<syn-icon> Synergy component](https://synergy-design-system.github.io/?path=/docs/components-syn-icon--docs). Here you will also get more information about how setting up the assets package on bundlers like vite.
32
+ The recommended way of using the icons is with the [<syn-icon> Synergy component](https://synergy-design-system.github.io/?path=/docs/components-syn-icon--docs). Here you will also get more information about setting up the assets package on bundlers like vite.
26
33
 
27
34
  ```html
28
35
  <syn-icon name="warning"></syn-icon>
29
36
  ```
30
37
 
31
- Images could also be used directly:
38
+ #### Programmatic Access
32
39
 
33
- ```html
34
- <img src="assets/icons/warning.svg" />
40
+ You can also import icon sets programmatically:
41
+
42
+ ```javascript
43
+ import { sick2025Icons, sick2018Icons } from "@synergy-design-system/assets";
44
+ // or import the default icon set (currently sick2025Icons)
45
+ import { defaultIcons } from "@synergy-design-system/assets";
46
+
47
+ // Access specific icons
48
+ const warningIcon = sick2025Icons.warning;
35
49
  ```
36
50
 
37
51
  ---
38
52
 
39
53
  ## Development
40
54
 
41
- This package is taking care about getting assets (like logos, system icons and default icons) from Figma.
42
- The folder structure of the assets corresponds to the structure of the Figma page.
43
-
44
- - **src/component-thumbnails** contains thumbnails from figma components used in Storybook
45
- - **src/icons:** contains the standard icons based on [Material Icons](https://fonts.google.com/icons) for SICK 2018 brand revision. Use those icons when using Synergy V2
46
- - **src/logos:** contains the variants of the SICK brand logo
47
- - **src/system-icons:** contains a small subset of icons, that are internally used by the Synergy components. Default for Synergy V2.
48
- - **src/system-icons-sick2025:** contains a small subset of icons, that are internally used by the Synergy components. Used from Synergy V3 onward.
55
+ This package provides assets from Figma organized in a clear brand-based hierarchy.
56
+ The folder structure corresponds to the brand revisions and their respective usage.
57
+
58
+ - **src/component-thumbnails:** Contains thumbnails from Figma components used in Storybook
59
+ - **src/sick2025:** Contains the SICK 2025 brand revision assets
60
+ - **icons/outline:** Outline variant icons based on [Material Icons](https://fonts.google.com/icons). These are the preferred icons for applications.
61
+ - **icons/fill:** Filled variant icons based on [Material Icons](https://fonts.google.com/icons). Should be used where alternatives are needed only.
62
+ - **js:** Javascript export of the sick2025 icons
63
+ - **logos:** Contains variants of the SICK brand logo for the SICK 2025 brand revision
64
+ - **system-icons:** Internal icons used by Synergy components (v3+)
65
+ - **src/sick2018:** Contains the SICK 2018 brand revision assets (legacy)
66
+ - **icons:** Standard icons based on [Material Icons](https://fonts.google.com/icons) (v2)
67
+ - **js:** Javascript export of the sick2018 icons
68
+ - **logos:** Contains variants of the SICK brand logo for the SICK 2018 brand revision
69
+ - **system-icons:** Internal icons used by Synergy components (v2)
49
70
 
50
71
  > **Note:** All assets from figma, which should not appear in this package (e.g. documentation), will start with an underscore (e.g. \_my-doc-for-an-asset). This assets are getting filtered and ignored by this package.
51
72
 
@@ -74,9 +95,9 @@ pnpm build:all
74
95
  This will:
75
96
 
76
97
  - Clean up the `src` directory
77
- - download all icons from figma
78
- - download all thumbnails for docs
79
- - Recreate all default icons
98
+ - Download all assets from Figma into brand-specific namespaces
99
+ - Build TypeScript exports for programmatic access
80
100
  - Create the migration iconsets for Synergy 2018 to 2025 via `pnpm create-migration-iconset`
81
101
  - Recreate the license files in the different folders
82
102
  - Create [code connect files](https://www.figma.com/code-connect-docs/html) for all icons. Please be aware you have to call `pnpm figma-export:icons` in the components package to publish the icons!
103
+ - Create the default export for the SICK 2025 icons located in `src/sick2025/js/index.ts`
@@ -3,10 +3,10 @@ import { css } from 'lit';
3
3
  export default css`
4
4
  .alert {
5
5
  /* Defines the used border and icon color for variants */
6
- --variant-color-border: var(--syn-alert-informative-color-border, var(--syn-panel-border-color));
7
- --variant-color-background: var(--syn-alert-informative-color-background, var(--syn-panel-background-color));
8
- --variant-color-icon: var(--syn-alert-informative-color-icon, var(--syn-color-primary-600));
9
- --variant-color-indicator: var(--syn-alert-informative-color-indicator, var(--syn-color-primary-600));
6
+ --variant-color-border: var(--syn-alert-informative-color-border);
7
+ --variant-color-background: var(--syn-alert-informative-color-background);
8
+ --variant-color-icon: var(--syn-alert-informative-color-icon);
9
+ --variant-color-indicator: var(--syn-alert-informative-color-indicator);
10
10
 
11
11
  /* Defines special settings for sizes */
12
12
  --size-font-size: var(--syn-font-size-medium);
@@ -83,31 +83,31 @@ export default css`
83
83
  * Variant colors
84
84
  */
85
85
  .alert--success {
86
- --variant-color-border: var(--syn-alert-success-color-border, var(--syn-panel-border-color));
87
- --variant-color-background: var(--syn-alert-success-color-background, var(--syn-panel-background-color));
88
- --variant-color-icon: var(--syn-alert-success-color-icon, var(--syn-color-success-500));
89
- --variant-color-indicator: var(--syn-alert-success-color-indicator, var(--syn-color-success-500));
86
+ --variant-color-border: var(--syn-alert-success-color-border);
87
+ --variant-color-background: var(--syn-alert-success-color-background);
88
+ --variant-color-icon: var(--syn-alert-success-color-icon);
89
+ --variant-color-indicator: var(--syn-alert-success-color-indicator);
90
90
  }
91
91
 
92
92
  .alert--neutral {
93
- --variant-color-border: var(--syn-alert-neutral-color-border, var(--syn-panel-border-color));
94
- --variant-color-background: var(--syn-alert-neutral-color-background, var(--syn-panel-background-color));
95
- --variant-color-icon: var(--syn-alert-neutral-color-icon, var(--syn-color-neutral-800));
96
- --variant-color-indicator: var(--syn-alert-neutral-color-indicator, var(--syn-color-neutral-800));
93
+ --variant-color-border: var(--syn-alert-neutral-color-border);
94
+ --variant-color-background: var(--syn-alert-neutral-color-background);
95
+ --variant-color-icon: var(--syn-alert-neutral-color-icon);
96
+ --variant-color-indicator: var(--syn-alert-neutral-color-indicator);
97
97
  }
98
98
 
99
99
  .alert--warning {
100
- --variant-color-border: var(--syn-alert-warning-color-border, var(--syn-panel-border-color));
101
- --variant-color-background: var(--syn-alert-warning-color-background, var(--syn-panel-background-color));
102
- --variant-color-icon: var(--syn-alert-warning-color-icon, var(--syn-color-warning-400));
103
- --variant-color-indicator: var(--syn-alert-warning-color-indicator, var(--syn-color-warning-400));
100
+ --variant-color-border: var(--syn-alert-warning-color-border);
101
+ --variant-color-background: var(--syn-alert-warning-color-background);
102
+ --variant-color-icon: var(--syn-alert-warning-color-icon);
103
+ --variant-color-indicator: var(--syn-alert-warning-color-indicator);
104
104
  }
105
105
 
106
106
  .alert--danger {
107
- --variant-color-border: var(--syn-alert-error-color-border, var(--syn-panel-border-color));
108
- --variant-color-background: var(--syn-alert-error-color-background, var(--syn-panel-background-color));
109
- --variant-color-icon: var(--syn-alert-error-color-icon, var(--syn-color-error-600));
110
- --variant-color-indicator: var(--syn-alert-error-color-indicator, var(--syn-color-error-600));
107
+ --variant-color-border: var(--syn-alert-error-color-border);
108
+ --variant-color-background: var(--syn-alert-error-color-background);
109
+ --variant-color-icon: var(--syn-alert-error-color-icon);
110
+ --variant-color-indicator: var(--syn-alert-error-color-indicator);
111
111
  }
112
112
 
113
113
  /* #1119: Alert Sizes */
@@ -13,28 +13,28 @@ export default css`
13
13
 
14
14
  /* Variant modifiers */
15
15
  .badge--primary {
16
- background-color: var(--syn-badge-informative-color-background, var(--syn-color-primary-600));
17
- color: var(--syn-badge-informative-color-text, var(--syn-typography-color-text-inverted));
16
+ background-color: var(--syn-badge-informative-color-background);
17
+ color: var(--syn-badge-informative-color-text);
18
18
  }
19
19
 
20
20
  .badge--success {
21
- background-color: var(--syn-badge-success-color-background, var(--syn-color-success-500));
22
- color: var(--syn-badge-success-color-text, var(--syn-typography-color-text));
21
+ background-color: var(--syn-badge-success-color-background);
22
+ color: var(--syn-badge-success-color-text);
23
23
  }
24
24
 
25
25
  .badge--neutral {
26
- background-color: var(--syn-badge-neutral-color-background, var(--syn-color-neutral-800));
27
- color: var(--syn-badge-neutral-color-text, var(--syn-typography-color-text-inverted));
26
+ background-color: var(--syn-badge-neutral-color-background);
27
+ color: var(--syn-badge-neutral-color-text);
28
28
  }
29
29
 
30
30
  .badge--warning {
31
- background-color: var(--syn-badge-warning-color-background, var(--syn-color-warning-400));
32
- color: var(--syn-badge-warning-color-text, var(--syn-typography-color-text));
31
+ background-color: var(--syn-badge-warning-color-background);
32
+ color: var(--syn-badge-warning-color-text);
33
33
  }
34
34
 
35
35
  .badge--danger {
36
- background-color: var(--syn-badge-error-color-background, var(--syn-color-error-600));
37
- color: var(--syn-badge-error-color-text, var(--syn-typography-color-text-inverted));
36
+ background-color: var(--syn-badge-error-color-background);
37
+ color: var(--syn-badge-error-color-text);
38
38
  }
39
39
 
40
40
  /**
@@ -49,6 +49,7 @@ export default css`
49
49
 
50
50
  .visually-hidden {
51
51
  border: 0;
52
+ /* stylelint-disable-next-line property-no-deprecated */
52
53
  clip: rect(0, 0, 0, 0);
53
54
  height: 1px;
54
55
  margin: -1px;
@@ -2,7 +2,7 @@ import { css } from 'lit';
2
2
 
3
3
  export default css`
4
4
  .breadcrumb-item {
5
- color: var(--syn-breadcrumb-color, var(--syn-color-neutral-500));
5
+ color: var(--syn-breadcrumb-color);
6
6
  font-size: var(--syn-font-size-x-small);
7
7
  font-weight: var(--syn-font-weight-semibold);
8
8
  }