@synergy-design-system/mcp 1.25.0 → 1.26.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.26.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#1074](https://github.com/synergy-design-system/synergy-design-system/pull/1074) [`ac24e63`](https://github.com/synergy-design-system/synergy-design-system/commit/ac24e6379862c7e60b5d5293614f0d804eeb7388) Thanks [@schilchSICKAG](https://github.com/schilchSICKAG)! - Released on: 2025-11-27
8
+
9
+ feat: ✨ Brand updates for `<syn-menu>`, `<syn-menu-item>` and `<syn-menu-label>` (#958)
10
+
3
11
  ## 1.25.0
4
12
 
5
13
  ### Minor Changes
@@ -1 +1 @@
1
- 98332254633fa4f98c9248b9d66f35b1
1
+ 92bcfd1fb50bde3e54887102c73e457a
@@ -2,7 +2,7 @@ import { css } from 'lit';
2
2
 
3
3
  export default css`
4
4
  :host {
5
- border-radius: 0;
5
+ border-radius: var(--syn-input-border-radius-medium);
6
6
  }
7
7
 
8
8
  /*
@@ -24,6 +24,6 @@ export default css`
24
24
 
25
25
  ::slotted(syn-divider) {
26
26
  /* #369: Slotted syn-dividers should use a lighter color so they do not crash with the border visually */
27
- --color: var(--syn-color-neutral-200);
27
+ --color: var(--syn-panel-border-color);
28
28
  }
29
29
  `;
@@ -7,11 +7,27 @@ export default css`
7
7
  }
8
8
 
9
9
  .menu-item {
10
- color: var(--syn-typography-color-text);
10
+ /*
11
+ * #958: Brand2025 defines a small gap between menu items
12
+ * and rounded corners. We achieve that using an outline
13
+ * that simulates the gap using the menu background color.
14
+ */
15
+ --outline: calc(var(--syn-focus-ring-border-radius) * 1.5);
16
+
17
+ border-radius: calc(var(--outline) * 1.5);
18
+ color: var(--syn-option-color, var(--syn-typography-color-text));
11
19
  font-size: var(--syn-font-size-medium);
20
+ outline: var(--outline) solid var(--syn-panel-background-color);
21
+ outline-offset: calc(var(--outline) * -1 + 1px);
12
22
  padding: var(--syn-spacing-small) var(--syn-spacing-medium);
13
23
  }
14
24
 
25
+ :host(:focus-visible) .menu-item {
26
+ background-color: var(--syn-option-background-color-active, var(--syn-color-neutral-1000));
27
+ outline: var(--outline) solid var(--syn-panel-background-color);
28
+ outline-offset: calc(var(--outline) * -1 + 1px);
29
+ }
30
+
15
31
  /** #429: Use token for opacity */
16
32
  .menu-item.menu-item--disabled {
17
33
  opacity: var(--syn-opacity-50);
@@ -33,15 +49,29 @@ export default css`
33
49
  */
34
50
  .menu-item .menu-item__prefix::slotted(syn-icon),
35
51
  .menu-item .menu-item__suffix::slotted(syn-icon) {
36
- color: var(--syn-color-neutral-800);
52
+ color: var(--syn-option-icon-color, var(--syn-typography-color-text));
37
53
  font-size: var(--syn-font-size-x-large);
38
54
  }
39
55
 
40
- :host(:focus-visible) .menu-item .menu-item__prefix::slotted(syn-icon),
41
- :host(:focus-visible) .menu-item .menu-item__suffix::slotted(syn-icon) {
42
- color: var(--syn-color-neutral-0);
56
+ :host(:hover) .menu-item .menu-item__prefix::slotted(syn-icon),
57
+ :host(:hover) .menu-item__suffix::slotted(syn-icon) {
58
+ color: var(--syn-option-icon-color-hover, var(--syn-typography-color-text-inverted));
59
+ }
60
+
61
+ :host(:focus-visible) .menu-item .menu-item__prefix::slotted(syn-icon),
62
+ :host(:focus-visible) .menu-item .menu-item__suffix::slotted(syn-icon) {
63
+ color: var(--syn-option-icon-color-active, var(--syn-typography-color-text-inverted));
43
64
  }
44
65
 
66
+ /* Adjust background and text color for focused elements */
67
+ /* stylelint-disable selector-not-notation, plugin/no-unsupported-browser-features */
68
+ :host(:hover:not([aria-disabled='true'], :focus-visible)) .menu-item,
69
+ .menu-item--submenu-expanded {
70
+ background-color: var(--syn-option-background-color-hover, var(--syn-color-neutral-1000));
71
+ color: var(--syn-option-color-hover, var(--syn-typography-color-text-inverted));
72
+ }
73
+ /* stylelint-enable selector-not-notation, plugin/no-unsupported-browser-features */
74
+
45
75
  /**
46
76
  * Adjust the size of icons
47
77
  */
@@ -61,7 +91,7 @@ export default css`
61
91
  }
62
92
 
63
93
  .menu-item .menu-item__check {
64
- color: var(--syn-color-primary-600);
94
+ color: var(--syn-option-check-color, var(--syn-color-primary-600));
65
95
  margin-inline-end: var(--syn-spacing-small);
66
96
  }
67
97
 
@@ -76,7 +106,11 @@ export default css`
76
106
  * Make sure the checkbox is also visible when the item is active
77
107
  */
78
108
  :host(:focus-visible) .menu-item--checked .menu-item__check {
79
- color: var(--syn-color-neutral-0);
109
+ color: var(--syn-option-check-color-active, var(--syn-color-neutral-0));
110
+ }
111
+
112
+ :host(:hover) .menu-item--checked .menu-item__check {
113
+ color: var(--syn-option-check-color-hover, var(--syn-color-neutral-0));
80
114
  }
81
115
 
82
116
  /**
@@ -110,6 +144,7 @@ export default css`
110
144
  .menu-item--loading syn-spinner {
111
145
  --track-width: 2px;
112
146
 
147
+ color: var(--syn-interactive-emphasis-color, var(--syn-color-primary-700));
113
148
  font-size: var(--syn-font-size-medium);
114
149
  left: var(--syn-spacing-medium);
115
150
  }
@@ -13,7 +13,7 @@ export default css`
13
13
  }
14
14
 
15
15
  .menu-label {
16
- color: var(--syn-typography-color-text);
16
+ color: var(--syn-input-color);
17
17
  font-family: var(--syn-font-sans);
18
18
  font-size: var(--syn-font-size-medium);
19
19
  font-weight: var(--syn-font-weight-semibold);
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.64.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#1074](https://github.com/synergy-design-system/synergy-design-system/pull/1074) [`ac24e63`](https://github.com/synergy-design-system/synergy-design-system/commit/ac24e6379862c7e60b5d5293614f0d804eeb7388) Thanks [@schilchSICKAG](https://github.com/schilchSICKAG)! - Released on: 2025-11-27
8
+
9
+ feat: ✨ Brand updates for `<syn-menu>`, `<syn-menu-item>` and `<syn-menu-label>` (#958)
10
+
11
+ ### Patch Changes
12
+
13
+ - Updated dependencies [[`ac24e63`](https://github.com/synergy-design-system/synergy-design-system/commit/ac24e6379862c7e60b5d5293614f0d804eeb7388)]:
14
+ - @synergy-design-system/tokens@2.44.0
15
+
3
16
  ## 2.63.0
4
17
 
5
18
  ### Minor Changes
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.44.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#1074](https://github.com/synergy-design-system/synergy-design-system/pull/1074) [`ac24e63`](https://github.com/synergy-design-system/synergy-design-system/commit/ac24e6379862c7e60b5d5293614f0d804eeb7388) Thanks [@schilchSICKAG](https://github.com/schilchSICKAG)! - Released on: 2025-11-27
8
+
9
+ feat: ✨ Brand updates for `<syn-menu>`, `<syn-menu-item>` and `<syn-menu-label>` (#958)
10
+
3
11
  ## 2.43.0
4
12
 
5
13
  ### Minor Changes
@@ -111,6 +111,7 @@
111
111
  --syn-color-primary-800: #b9e5fe;
112
112
  --syn-color-primary-900: #e0f1fe;
113
113
  --syn-color-primary-950: #f0f9ff;
114
+ --syn-color-primary-1000: #f0f9ff;
114
115
  --syn-color-success-50: #172c07;
115
116
  --syn-color-success-100: #315017;
116
117
  --syn-color-success-200: #395e16;
@@ -248,6 +249,17 @@
248
249
  --syn-link-underline-outline: 7%;
249
250
  --syn-logo-color: var(--syn-color-primary-400);
250
251
  --syn-opacity-50: 0.5; /** 50% */
252
+ --syn-option-background-color-active: var(--syn-color-primary-400);
253
+ --syn-option-background-color-hover: var(--syn-color-neutral-100);
254
+ --syn-option-check-color: var(--syn-color-primary-600);
255
+ --syn-option-check-color-active: var(--syn-color-neutral-0);
256
+ --syn-option-check-color-hover: var(--syn-color-primary-600);
257
+ --syn-option-color: var(--syn-typography-color-text);
258
+ --syn-option-color-active: var(--syn-typography-color-text-inverted);
259
+ --syn-option-color-hover: var(--syn-typography-color-text);
260
+ --syn-option-icon-color: var(--syn-typography-color-text);
261
+ --syn-option-icon-color-active: var(--syn-typography-color-text-inverted);
262
+ --syn-option-icon-color-hover: var(--syn-typography-color-text);
251
263
  --syn-overlay-background-blur: 0px;
252
264
  --syn-overlay-background-color: rgba(49, 55, 58, 0.5);
253
265
  --syn-page-background: var(--syn-color-neutral-50);
@@ -523,6 +523,11 @@ export const SynColorPrimary900 = 'var(--syn-color-primary-900)';
523
523
  */
524
524
  export const SynColorPrimary950 = 'var(--syn-color-primary-950)';
525
525
 
526
+ /**
527
+ * @type {string}
528
+ */
529
+ export const SynColorPrimary1000 = 'var(--syn-color-primary-1000)';
530
+
526
531
  /**
527
532
  * @type {string}
528
533
  */
@@ -1208,6 +1213,61 @@ export const SynLogoColor = 'var(--syn-logo-color)';
1208
1213
  */
1209
1214
  export const SynOpacity50 = 'var(--syn-opacity-50)';
1210
1215
 
1216
+ /**
1217
+ * @type {string}
1218
+ */
1219
+ export const SynOptionBackgroundColorActive = 'var(--syn-option-background-color-active)';
1220
+
1221
+ /**
1222
+ * @type {string}
1223
+ */
1224
+ export const SynOptionBackgroundColorHover = 'var(--syn-option-background-color-hover)';
1225
+
1226
+ /**
1227
+ * @type {string}
1228
+ */
1229
+ export const SynOptionCheckColor = 'var(--syn-option-check-color)';
1230
+
1231
+ /**
1232
+ * @type {string}
1233
+ */
1234
+ export const SynOptionCheckColorActive = 'var(--syn-option-check-color-active)';
1235
+
1236
+ /**
1237
+ * @type {string}
1238
+ */
1239
+ export const SynOptionCheckColorHover = 'var(--syn-option-check-color-hover)';
1240
+
1241
+ /**
1242
+ * @type {string}
1243
+ */
1244
+ export const SynOptionColor = 'var(--syn-option-color)';
1245
+
1246
+ /**
1247
+ * @type {string}
1248
+ */
1249
+ export const SynOptionColorActive = 'var(--syn-option-color-active)';
1250
+
1251
+ /**
1252
+ * @type {string}
1253
+ */
1254
+ export const SynOptionColorHover = 'var(--syn-option-color-hover)';
1255
+
1256
+ /**
1257
+ * @type {string}
1258
+ */
1259
+ export const SynOptionIconColor = 'var(--syn-option-icon-color)';
1260
+
1261
+ /**
1262
+ * @type {string}
1263
+ */
1264
+ export const SynOptionIconColorActive = 'var(--syn-option-icon-color-active)';
1265
+
1266
+ /**
1267
+ * @type {string}
1268
+ */
1269
+ export const SynOptionIconColorHover = 'var(--syn-option-icon-color-hover)';
1270
+
1211
1271
  /**
1212
1272
  * @type {string}
1213
1273
  */
@@ -111,6 +111,7 @@
111
111
  --syn-color-primary-800: #065786;
112
112
  --syn-color-primary-900: #0b486f;
113
113
  --syn-color-primary-950: #072e4a;
114
+ --syn-color-primary-1000: #072e4a;
114
115
  --syn-color-success-50: #f5fde8;
115
116
  --syn-color-success-100: #e7facd;
116
117
  --syn-color-success-200: #d1f4a2;
@@ -248,6 +249,17 @@
248
249
  --syn-link-underline-outline: 7%;
249
250
  --syn-logo-color: var(--syn-color-primary-600);
250
251
  --syn-opacity-50: 0.5; /** 50% */
252
+ --syn-option-background-color-active: var(--syn-color-primary-600);
253
+ --syn-option-background-color-hover: var(--syn-color-neutral-100);
254
+ --syn-option-check-color: var(--syn-color-primary-600);
255
+ --syn-option-check-color-active: var(--syn-color-neutral-0);
256
+ --syn-option-check-color-hover: var(--syn-color-primary-600);
257
+ --syn-option-color: var(--syn-typography-color-text);
258
+ --syn-option-color-active: var(--syn-typography-color-text-inverted);
259
+ --syn-option-color-hover: var(--syn-typography-color-text);
260
+ --syn-option-icon-color: var(--syn-input-icon-color);
261
+ --syn-option-icon-color-active: var(--syn-color-neutral-0);
262
+ --syn-option-icon-color-hover: var(--syn-input-icon-color-hover);
251
263
  --syn-overlay-background-blur: 0px;
252
264
  --syn-overlay-background-color: rgba(49, 55, 58, 0.5);
253
265
  --syn-page-background: var(--syn-color-neutral-100);
@@ -111,6 +111,7 @@
111
111
  --syn-color-primary-800: #b9e5fe;
112
112
  --syn-color-primary-900: #e0f1fe;
113
113
  --syn-color-primary-950: #f0f9ff;
114
+ --syn-color-primary-1000: #f0f9ff;
114
115
  --syn-color-success-50: #172c07;
115
116
  --syn-color-success-100: #315017;
116
117
  --syn-color-success-200: #395e16;
@@ -248,6 +249,17 @@
248
249
  --syn-link-underline-outline: 7%;
249
250
  --syn-logo-color: var(--syn-color-primary-400);
250
251
  --syn-opacity-50: 0.5; /** 50% */
252
+ --syn-option-background-color-active: var(--syn-color-primary-400);
253
+ --syn-option-background-color-hover: var(--syn-color-neutral-100);
254
+ --syn-option-check-color: var(--syn-color-primary-600);
255
+ --syn-option-check-color-active: var(--syn-color-neutral-0);
256
+ --syn-option-check-color-hover: var(--syn-color-primary-600);
257
+ --syn-option-color: var(--syn-typography-color-text);
258
+ --syn-option-color-active: var(--syn-typography-color-text-inverted);
259
+ --syn-option-color-hover: var(--syn-typography-color-text);
260
+ --syn-option-icon-color: var(--syn-typography-color-text);
261
+ --syn-option-icon-color-active: var(--syn-typography-color-text-inverted);
262
+ --syn-option-icon-color-hover: var(--syn-typography-color-text);
251
263
  --syn-overlay-background-blur: 0px;
252
264
  --syn-overlay-background-color: rgba(49, 55, 58, 0.5);
253
265
  --syn-page-background: var(--syn-color-neutral-50);
@@ -111,6 +111,7 @@
111
111
  --syn-color-primary-800: #065786;
112
112
  --syn-color-primary-900: #0b486f;
113
113
  --syn-color-primary-950: #072e4a;
114
+ --syn-color-primary-1000: #072e4a;
114
115
  --syn-color-success-50: #f5fde8;
115
116
  --syn-color-success-100: #e7facd;
116
117
  --syn-color-success-200: #d1f4a2;
@@ -248,6 +249,17 @@
248
249
  --syn-link-underline-outline: 7%;
249
250
  --syn-logo-color: var(--syn-color-primary-600);
250
251
  --syn-opacity-50: 0.5; /** 50% */
252
+ --syn-option-background-color-active: var(--syn-color-primary-600);
253
+ --syn-option-background-color-hover: var(--syn-color-neutral-100);
254
+ --syn-option-check-color: var(--syn-color-primary-600);
255
+ --syn-option-check-color-active: var(--syn-color-neutral-0);
256
+ --syn-option-check-color-hover: var(--syn-color-primary-600);
257
+ --syn-option-color: var(--syn-typography-color-text);
258
+ --syn-option-color-active: var(--syn-typography-color-text-inverted);
259
+ --syn-option-color-hover: var(--syn-typography-color-text);
260
+ --syn-option-icon-color: var(--syn-input-icon-color);
261
+ --syn-option-icon-color-active: var(--syn-color-neutral-0);
262
+ --syn-option-icon-color-hover: var(--syn-input-icon-color-hover);
251
263
  --syn-overlay-background-blur: 0px;
252
264
  --syn-overlay-background-color: rgba(49, 55, 58, 0.5);
253
265
  --syn-page-background: var(--syn-color-neutral-100);
@@ -111,6 +111,7 @@
111
111
  --syn-color-primary-800: #ccdeff;
112
112
  --syn-color-primary-900: #dae7ff;
113
113
  --syn-color-primary-950: #eff5ff;
114
+ --syn-color-primary-1000: #eff5ff;
114
115
  --syn-color-success-50: #003911;
115
116
  --syn-color-success-100: #026524;
116
117
  --syn-color-success-200: #00852c;
@@ -248,6 +249,17 @@
248
249
  --syn-link-underline-outline: 25%;
249
250
  --syn-logo-color: var(--syn-color-primary-300);
250
251
  --syn-opacity-50: 0.5; /** 50% */
252
+ --syn-option-background-color-active: var(--syn-color-neutral-1000);
253
+ --syn-option-background-color-hover: var(--syn-color-neutral-1000);
254
+ --syn-option-check-color: var(--syn-interactive-quiet-color);
255
+ --syn-option-check-color-active: var(--syn-color-neutral-0);
256
+ --syn-option-check-color-hover: var(--syn-color-neutral-0);
257
+ --syn-option-color: var(--syn-typography-color-text);
258
+ --syn-option-color-active: var(--syn-typography-color-text-inverted);
259
+ --syn-option-color-hover: var(--syn-typography-color-text-inverted);
260
+ --syn-option-icon-color: var(--syn-interactive-quiet-color);
261
+ --syn-option-icon-color-active: var(--syn-color-neutral-0);
262
+ --syn-option-icon-color-hover: var(--syn-color-neutral-0);
251
263
  --syn-overlay-background-blur: 8px;
252
264
  --syn-overlay-background-color: rgba(0, 5, 26, 0.6);
253
265
  --syn-page-background: var(--syn-color-neutral-0);
@@ -111,6 +111,7 @@
111
111
  --syn-color-primary-800: #0845c5;
112
112
  --syn-color-primary-900: #0d3f9b;
113
113
  --syn-color-primary-950: #0e275d;
114
+ --syn-color-primary-1000: #000a37;
114
115
  --syn-color-success-50: #f0fdf4;
115
116
  --syn-color-success-100: #ddfbe6;
116
117
  --syn-color-success-200: #bcf6cf;
@@ -248,6 +249,17 @@
248
249
  --syn-link-underline-outline: 25%;
249
250
  --syn-logo-color: var(--syn-color-primary-700);
250
251
  --syn-opacity-50: 0.5; /** 50% */
252
+ --syn-option-background-color-active: var(--syn-color-primary-1000);
253
+ --syn-option-background-color-hover: var(--syn-color-primary-1000);
254
+ --syn-option-check-color: var(--syn-interactive-quiet-color);
255
+ --syn-option-check-color-active: var(--syn-color-neutral-0);
256
+ --syn-option-check-color-hover: var(--syn-color-neutral-0);
257
+ --syn-option-color: var(--syn-typography-color-text);
258
+ --syn-option-color-active: var(--syn-typography-color-text-inverted);
259
+ --syn-option-color-hover: var(--syn-typography-color-text-inverted);
260
+ --syn-option-icon-color: var(--syn-interactive-quiet-color);
261
+ --syn-option-icon-color-active: var(--syn-color-neutral-0);
262
+ --syn-option-icon-color-hover: var(--syn-color-neutral-0);
251
263
  --syn-overlay-background-blur: 8px;
252
264
  --syn-overlay-background-color: rgba(0, 5, 26, 0.3);
253
265
  --syn-page-background: #f8f7f6;
@@ -100,6 +100,26 @@ Use the loading attribute to indicate that a menu item is busy. Like a disable
100
100
 
101
101
  ---
102
102
 
103
+ ## Focus
104
+
105
+ The focus event gives the user feedback that the Menu Item has been focused by the keyboard interaction from the user.
106
+
107
+ ```html
108
+ <syn-menu style="max-width: 240px" role="menu">
109
+ <syn-menu-item role="menuitem" aria-disabled="false" tabindex="0"
110
+ >Option 1</syn-menu-item
111
+ >
112
+ <syn-menu-item disabled="" role="menuitem" aria-disabled="true" tabindex="-1"
113
+ >Option 2</syn-menu-item
114
+ >
115
+ <syn-menu-item role="menuitem" aria-disabled="false" tabindex="-1"
116
+ >Option 3</syn-menu-item
117
+ >
118
+ </syn-menu>
119
+ ```
120
+
121
+ ---
122
+
103
123
  ## Checkbox Menu Items
104
124
 
105
125
  Set the type attribute to checkbox to create a menu item that will toggle on and off when selected. You can use the checked attribute to set the initial state.Checkbox menu items are visually indistinguishable from regular menu items. Their ability to be toggled is primarily inferred from context, much like you’d find in the menu of a native app.
package/package.json CHANGED
@@ -28,11 +28,11 @@
28
28
  "serve-handler": "^6.1.6",
29
29
  "ts-jest": "^29.4.0",
30
30
  "typescript": "^5.9.3",
31
+ "@synergy-design-system/components": "2.64.0",
31
32
  "@synergy-design-system/docs": "0.1.0",
32
33
  "@synergy-design-system/eslint-config-syn": "^0.1.0",
33
34
  "@synergy-design-system/styles": "1.9.0",
34
- "@synergy-design-system/components": "2.63.0",
35
- "@synergy-design-system/tokens": "^2.43.0"
35
+ "@synergy-design-system/tokens": "^2.44.0"
36
36
  },
37
37
  "exports": {
38
38
  ".": {
@@ -66,7 +66,7 @@
66
66
  "directory": "packages/mcp"
67
67
  },
68
68
  "type": "module",
69
- "version": "1.25.0",
69
+ "version": "1.26.0",
70
70
  "scripts": {
71
71
  "build": "pnpm run build:ts && pnpm run build:metadata && pnpm build:hash",
72
72
  "build:all": "pnpm run build && pnpm run build:storybook",