@synergy-design-system/metadata 3.16.1 → 3.18.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 (99) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/data/core/component/component:syn-button-group.json +0 -5
  3. package/data/core/component/component:syn-button.json +3 -3
  4. package/data/core/component/component:syn-chart.json +147 -2
  5. package/data/core/component/component:syn-radio-button.json +123 -14
  6. package/data/core/component/component:syn-radio-group.json +11 -0
  7. package/data/core/setup/setup:angular-components-module.json +1 -1
  8. package/data/core/setup/setup:angular-forms-module.json +1 -1
  9. package/data/core/setup/setup:angular-package.json +2 -2
  10. package/data/core/setup/setup:angular-validators-module.json +1 -1
  11. package/data/core/setup/setup:components-package.json +2 -2
  12. package/data/core/setup/setup:react-package.json +2 -2
  13. package/data/core/setup/setup:tokens-package.json +2 -2
  14. package/data/core/setup/setup:vue-package.json +2 -2
  15. package/data/core/token/token:tokens-charts-js-index-d-ts.json +1 -1
  16. package/data/core/token/token:tokens-charts-js-index-js.json +1 -1
  17. package/data/core/token/token:tokens-charts-scss-tokens-scss.json +1 -1
  18. package/data/core/token/token:tokens-charts-themes-sick2025-dark-css.json +1 -1
  19. package/data/core/token/token:tokens-charts-themes-sick2025-light-css.json +1 -1
  20. package/data/core/token/token:tokens-figma-variables-sick2018-dark-json.json +1 -1
  21. package/data/core/token/token:tokens-figma-variables-sick2018-light-json.json +1 -1
  22. package/data/core/token/token:tokens-figma-variables-sick2025-dark-json.json +1 -1
  23. package/data/core/token/token:tokens-figma-variables-sick2025-light-json.json +1 -1
  24. package/data/core/token/token:tokens-js-index-d-ts.json +1 -1
  25. package/data/core/token/token:tokens-js-index-js.json +1 -1
  26. package/data/core/token/token:tokens-scss-tokens-scss.json +1 -1
  27. package/data/core/token/token:tokens-themes-sick2018-dark-css.json +1 -1
  28. package/data/core/token/token:tokens-themes-sick2018-light-css.json +1 -1
  29. package/data/core/token/token:tokens-themes-sick2025-dark-css.json +1 -1
  30. package/data/core/token/token:tokens-themes-sick2025-light-css.json +1 -1
  31. package/data/index.json +3 -2
  32. package/data/layers/examples/component/component:syn-chart.md +115 -106
  33. package/data/layers/examples/component/component:syn-checkbox.md +16 -2
  34. package/data/layers/examples/component/component:syn-combobox.md +10 -21
  35. package/data/layers/examples/component/component:syn-file.md +16 -10
  36. package/data/layers/examples/component/component:syn-input.md +10 -3
  37. package/data/layers/examples/component/component:syn-radio-button.md +200 -0
  38. package/data/layers/examples/component/component:syn-radio-group.md +27 -2
  39. package/data/layers/examples/component/component:syn-radio.md +12 -5
  40. package/data/layers/examples/component/component:syn-range.md +16 -14
  41. package/data/layers/examples/component/component:syn-select.md +10 -3
  42. package/data/layers/examples/component/component:syn-switch.md +10 -3
  43. package/data/layers/examples/component/component:syn-textarea.md +10 -3
  44. package/data/layers/full/component/component:syn-button/components/button-group.styles.ts +66 -0
  45. package/data/layers/full/component/component:syn-button/components/button.component.ts +40 -52
  46. package/data/layers/full/component/component:syn-button/components/button.styles.ts +162 -173
  47. package/data/layers/full/component/component:syn-button-group/components/button-group.component.ts +22 -18
  48. package/data/layers/full/component/component:syn-button-group/components/button-group.styles.ts +0 -2
  49. package/data/layers/full/component/component:syn-chart/angular/chart.component.ts +11 -5
  50. package/data/layers/full/component/component:syn-chart/components/chart.component.ts +67 -20
  51. package/data/layers/full/component/component:syn-chart/components/chart.palettes.ts +59 -59
  52. package/data/layers/full/component/component:syn-chart/components/types.ts +47 -4
  53. package/data/layers/full/component/component:syn-chart/react/chart.ts +1 -1
  54. package/data/layers/full/component/component:syn-chart/vue/SynVueChart.vue +11 -5
  55. package/data/layers/full/component/component:syn-radio-button/angular/radio-button.component.ts +14 -14
  56. package/data/layers/full/component/component:syn-radio-button/components/radio-button.component.ts +45 -25
  57. package/data/layers/full/component/component:syn-radio-button/components/radio-button.styles.ts +87 -25
  58. package/data/layers/full/component/component:syn-radio-button/react/radio-button.ts +1 -1
  59. package/data/layers/full/component/component:syn-radio-button/vue/SynVueRadioButton.vue +6 -6
  60. package/data/layers/full/component/component:syn-radio-group/components/radio-group.component.ts +23 -11
  61. package/data/layers/full/component/component:syn-radio-group/components/radio-group.styles.ts +51 -6
  62. package/data/layers/full/setup/setup:angular-package/angular/CHANGELOG.md +38 -0
  63. package/data/layers/full/setup/setup:angular-package/angular/package.json +1 -1
  64. package/data/layers/full/setup/setup:components-package/components/CHANGELOG.md +36 -0
  65. package/data/layers/full/setup/setup:components-package/components/package.json +1 -1
  66. package/data/layers/full/setup/setup:react-package/react/CHANGELOG.md +28 -0
  67. package/data/layers/full/setup/setup:react-package/react/package.json +1 -1
  68. package/data/layers/full/setup/setup:react-package/react/syn-jsx-elements.ts +4 -4
  69. package/data/layers/full/setup/setup:tokens-package/tokens/CHANGELOG.md +31 -0
  70. package/data/layers/full/setup/setup:tokens-package/tokens/package.json +1 -1
  71. package/data/layers/full/setup/setup:vue-package/vue/CHANGELOG.md +38 -0
  72. package/data/layers/full/setup/setup:vue-package/vue/package.json +1 -1
  73. package/data/layers/full/tokens/charts/js/index.d.ts +275 -265
  74. package/data/layers/full/tokens/charts/js/index.js +143 -133
  75. package/data/layers/full/tokens/charts/scss/_tokens.scss +135 -133
  76. package/data/layers/full/tokens/charts/themes/sick2025_dark.css +135 -133
  77. package/data/layers/full/tokens/charts/themes/sick2025_light.css +135 -133
  78. package/data/layers/full/tokens/figma-variables/sick2018-dark.json +20 -0
  79. package/data/layers/full/tokens/figma-variables/sick2018-light.json +20 -0
  80. package/data/layers/full/tokens/figma-variables/sick2025-dark.json +20 -0
  81. package/data/layers/full/tokens/figma-variables/sick2025-light.json +20 -0
  82. package/data/layers/full/tokens/js/index.d.ts +31 -1
  83. package/data/layers/full/tokens/js/index.js +31 -1
  84. package/data/layers/full/tokens/scss/_tokens.scss +7 -1
  85. package/data/layers/full/tokens/themes/sick2018_dark.css +7 -1
  86. package/data/layers/full/tokens/themes/sick2018_light.css +7 -1
  87. package/data/layers/full/tokens/themes/sick2025_dark.css +7 -1
  88. package/data/layers/full/tokens/themes/sick2025_light.css +7 -1
  89. package/data/layers/interface/component/component:syn-chart.json +5 -5
  90. package/data/layers/interface/component/component:syn-chart.md +4 -4
  91. package/data/layers/interface/component/component:syn-radio-button.json +14 -12
  92. package/data/layers/interface/component/component:syn-radio-button.md +6 -4
  93. package/data/layers/rules/component/component:syn-radio-button.md +16 -11
  94. package/data/manifest.json +1 -1
  95. package/dist/intentPolicy/domains/input/capabilities.js +4 -0
  96. package/dist/intentPolicy/domains/input/patterns.js +9 -0
  97. package/package.json +5 -5
  98. package/data/layers/full/component/component:syn-button/components/button.custom.styles.ts +0 -245
  99. package/data/layers/full/component/component:syn-button-group/components/button-group.custom.styles.ts +0 -5
@@ -1,30 +1,92 @@
1
- /* eslint-disable */
2
1
  import { css } from 'lit';
3
- import buttonStyles from '../button/button.styles.js';
4
2
 
5
3
  export default css`
6
- /* stylelint-disable */
7
- ${buttonStyles}
8
-
9
- .button__prefix,
10
- .button__suffix,
11
- .button__label {
12
- display: inline-flex;
13
- position: relative;
14
- align-items: center;
15
- }
16
-
17
- /* We use a hidden input so constraint validation errors work, since they don't appear to show when used with buttons.
18
- We can't actually hide it, though, otherwise the messages will be suppressed by the browser. */
19
- .hidden-input {
20
- all: unset;
21
- position: absolute;
22
- top: 0;
23
- left: 0;
24
- bottom: 0;
25
- right: 0;
26
- outline: dotted 1px red;
27
- opacity: 0;
28
- z-index: -1;
4
+ :host([readonly]) {
5
+ cursor: default;
6
+ }
7
+
8
+ .button {
9
+ /* Medium size is the default */
10
+ --syn-radio-button-height: 32px;
11
+ --syn-radio-button-radius: var(--syn-radio-button-border-radius-medium);
12
+
13
+ border-radius: var(--syn-radio-button-radius);
14
+ font-weight: normal;
15
+ line-height: calc(var(--syn-radio-button-height) - var(--syn-input-border-width) * 2);
16
+ min-height: var(--syn-radio-button-height);
17
+ }
18
+
19
+ .button--small {
20
+ --syn-radio-button-height: 24px;
21
+ --syn-radio-button-radius: var(--syn-radio-button-border-radius-small);
22
+ }
23
+
24
+ .button--large {
25
+ --syn-radio-button-height: 48px;
26
+ --syn-radio-button-radius: var(--syn-radio-button-border-radius-large);
27
+ }
28
+
29
+ /**
30
+ * Icon only buttons
31
+ */
32
+ .button--icon-only .button__label {
33
+ border-radius: var(--syn-border-radius-medium);
34
+ padding-inline: var(--syn-spacing-2x-small);
35
+ }
36
+
37
+ /**
38
+ * Override the default unchecked button
39
+ */
40
+ .button--text {
41
+ color: var(--syn-interactive-quiet-color);
42
+ }
43
+
44
+ .button--text:hover:not(.button--disabled):not(.button--readonly) {
45
+ background: var(--syn-interactive-background-color-hover);
46
+ color: var(--syn-interactive-quiet-color-hover);
47
+ }
48
+
49
+ /**
50
+ * Disabled active buttons should look like their default state, but with opacity applied.
51
+ * This overrides the defaults from the button component.
52
+ * Note we cannot use syn-button-color because it will be the wrong color in dark mode.
53
+ */
54
+ .button--filled.button--primary,
55
+ .button--filled.button--primary.button--disabled {
56
+ background: var(--syn-interactive-emphasis-color);
57
+ border-color: var(--syn-interactive-emphasis-color);
58
+ color: var(--syn-color-neutral-0);
59
+ }
60
+
61
+ /**
62
+ * Make sure the active state is applied to the button in its selected and none selected state.
63
+ */
64
+ .button--filled.button--primary:active:not(.button--disabled),
65
+ .button--text.button--primary:active:not(.button--disabled) {
66
+ background: var(--syn-button-color-active);
67
+ border-color: var(--syn-button-color-active);
68
+ color: var(--syn-button-filled-color-text-active);
69
+ }
70
+
71
+ /**
72
+ * Readonly state styles
73
+ */
74
+ .button.button--readonly {
75
+ background: var(--syn-readonly-background-color);
76
+ color: var(--syn-readonly-color-text);
77
+ cursor: text;
78
+ pointer-events: none;
79
+ user-select: text;
80
+ }
81
+
82
+ .button.button--readonly:focus-visible {
83
+ background: var(--syn-input-readonly-background-color-focus);
84
+ color: var(--syn-readonly-color-text);
85
+ }
86
+
87
+ .button.button--readonly.button--checked {
88
+ background: var(--syn-readonly-indicator-color);
89
+ border-color: var(--syn-readonly-border-color);
90
+ color: var(--syn-color-neutral-0);
29
91
  }
30
92
  `;
@@ -18,7 +18,7 @@ Component.define('syn-radio-button');
18
18
  * @summary Radios buttons allow the user to select a single option from a group using a button-like control.
19
19
  * @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-radio-button--docs
20
20
  * @status stable
21
- * @since 1.0.0
21
+ * @since 3.17.0
22
22
  *
23
23
  * @slot - The radio button's label.
24
24
  * @slot prefix - A presentational prefix icon or similar element.
@@ -9,7 +9,7 @@
9
9
  * @summary Radios buttons allow the user to select a single option from a group using a button-like control.
10
10
  * @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-radio-button--docs
11
11
  * @status stable
12
- * @since 1.0.0
12
+ * @since 3.17.0
13
13
  *
14
14
  * @slot - The radio button's label.
15
15
  * @slot prefix - A presentational prefix icon or similar element.
@@ -52,17 +52,17 @@ const props = defineProps<{
52
52
  */
53
53
  disabled?: SynRadioButton['disabled'];
54
54
 
55
+ /**
56
+ * Sets the radio button to a readonly state.
57
+ */
58
+ readonly?: SynRadioButton['readonly'];
59
+
55
60
  /**
56
61
  * The radio button's size.
57
62
  * When used inside a radio group, the size will be determined by the radio group's size so
58
63
  this attribute can typically be omitted.
59
64
  */
60
65
  size?: SynRadioButton['size'];
61
-
62
- /**
63
- * Draws a pill-style radio button with rounded edges.
64
- */
65
- pill?: SynRadioButton['pill'];
66
66
  }>();
67
67
 
68
68
  // Make sure prop binding only forwards the props that are actually there.
@@ -144,15 +144,16 @@ export default class SynRadioGroup extends SynergyElement implements SynergyForm
144
144
  }
145
145
 
146
146
  private handleRadioClick(event: MouseEvent) {
147
- const target = (event.target as HTMLElement).closest<SynRadio | SynRadioButton>('syn-radio, syn-radio-button')!;
148
- const radios = this.getAllRadios();
149
- const oldValue = this.value;
147
+ const target = (event.target as HTMLElement).closest<SynRadio | SynRadioButton>('syn-radio, syn-radio-button');
150
148
 
151
149
  // #1174: If we have a radio, also do nothing if the radio is readonly
152
- if (!target || target.disabled || (target as SynRadio).readonly) {
150
+ if (!target || target.disabled || target.readonly) {
153
151
  return;
154
152
  }
155
153
 
154
+ const radios = this.getAllRadios();
155
+ const oldValue = this.value;
156
+
156
157
  this.value = target.value;
157
158
  radios.forEach(radio => {
158
159
  radio.checked = radio === target;
@@ -170,7 +171,7 @@ export default class SynRadioGroup extends SynergyElement implements SynergyForm
170
171
  }
171
172
 
172
173
  // #1174: Filter out elements that are either disabled or readonly
173
- const availableRadios = this.getAllRadios().filter(radio => (!radio.disabled && !(radio as SynRadio).readonly));
174
+ const availableRadios = this.getAllRadios().filter(radio => (!radio.disabled && !radio.readonly));
174
175
  const checkedRadio = availableRadios.find(radio => radio.checked) ?? availableRadios[0];
175
176
 
176
177
  // eslint-disable-next-line no-nested-ternary
@@ -186,6 +187,11 @@ export default class SynRadioGroup extends SynergyElement implements SynergyForm
186
187
  index = 0;
187
188
  }
188
189
 
190
+ // #1175: If all radios are readonly, skip and focus the first one and do not change the value
191
+ if (!availableRadios[index]) {
192
+ return;
193
+ }
194
+
189
195
  const allRadios = this.getAllRadios();
190
196
 
191
197
  allRadios.forEach(radio => {
@@ -196,11 +202,6 @@ export default class SynRadioGroup extends SynergyElement implements SynergyForm
196
202
  }
197
203
  });
198
204
 
199
- // #1175: If all radios are readonly, skip and focus the first one and do not change the value
200
- if (!availableRadios[index]) {
201
- return;
202
- }
203
-
204
205
  this.value = availableRadios[index].value;
205
206
  availableRadios[index].checked = true;
206
207
 
@@ -257,6 +258,11 @@ export default class SynRadioGroup extends SynergyElement implements SynergyForm
257
258
  if (this.hasButtonGroup) {
258
259
  const buttonGroup = this.shadowRoot?.querySelector('syn-button-group');
259
260
 
261
+ // Check if all radios in the group are readonly. If they are, set the button group to readonly as well to prevent focus and hover styles
262
+ if (buttonGroup) {
263
+ buttonGroup.toggleAttribute('readonly', radios.every(radio => radio.readonly));
264
+ }
265
+
260
266
  if (buttonGroup) {
261
267
  buttonGroup.disableRole = true;
262
268
  }
@@ -379,6 +385,7 @@ export default class SynRadioGroup extends SynergyElement implements SynergyForm
379
385
  part="form-control"
380
386
  class=${classMap({
381
387
  'form-control': true,
388
+ 'form-control--has-button-group': this.hasButtonGroup,
382
389
  'form-control--has-help-text': hasHelpText,
383
390
  'form-control--has-label': hasLabel,
384
391
  'form-control--large': this.size === 'large',
@@ -418,7 +425,12 @@ export default class SynRadioGroup extends SynergyElement implements SynergyForm
418
425
 
419
426
  ${this.hasButtonGroup
420
427
  ? html`
421
- <syn-button-group part="button-group" exportparts="base:button-group__base" role="presentation">
428
+ <syn-button-group
429
+ exportparts="base:button-group__base"
430
+ part="button-group"
431
+ role="presentation"
432
+ size=${this.size}
433
+ >
422
434
  ${defaultSlot}
423
435
  </syn-button-group>
424
436
  `
@@ -28,6 +28,16 @@ export default css`
28
28
  padding: 0;
29
29
  }
30
30
 
31
+ .form-control-input {
32
+ display: flex;
33
+ flex-direction: column;
34
+ gap: var(--syn-spacing-x-small);
35
+ }
36
+
37
+ .form-control--has-help-text.form-control--radio-group .form-control__help-text {
38
+ margin-top: var(--syn-spacing-x-small);
39
+ }
40
+
31
41
  .radio-group--required .radio-group__label::after {
32
42
  content: var(--syn-input-required-content);
33
43
  margin-inline-start: var(--syn-input-required-content-offset);
@@ -46,13 +56,48 @@ export default css`
46
56
  width: 1px;
47
57
  }
48
58
 
49
- .form-control-input {
50
- display: flex;
51
- flex-direction: column;
52
- gap: var(--syn-spacing-x-small);
59
+ /**
60
+ * #1140:
61
+ * Apply custom styling when we are using syn-radio-button.
62
+ * This is needed because syn-radio-button is displayed with space between the items
63
+ * and should not adhere to the default styling needed for regular button groups.
64
+ */
65
+ .form-control--has-button-group .form-control-input {
66
+ max-width: 100%; /* Fallback for older browsers, do not remove */
53
67
  }
54
68
 
55
- .form-control--has-help-text.form-control--radio-group .form-control__help-text {
56
- margin-top: var(--syn-spacing-x-small);
69
+ @supports (max-width: fit-content) {
70
+ .form-control--has-button-group .form-control-input {
71
+ /* stylelint-disable-next-line plugin/no-unsupported-browser-features */
72
+ max-width: fit-content;
73
+ }
74
+ }
75
+
76
+ .form-control--has-button-group syn-button-group::part(base) {
77
+ --radiogroup-padding: calc(var(--syn-spacing-x-small) - 1px);
78
+
79
+ border: 1px solid var(--syn-input-border-color);
80
+ border-radius: var(--syn-input-border-radius-large);
81
+ gap: var(--radiogroup-padding);
82
+ padding: var(--radiogroup-padding);
83
+ }
84
+
85
+ .form-control--has-button-group syn-button-group[readonly]::part(base) {
86
+ background: var(--syn-readonly-background-color);
87
+ border-color: var(--syn-readonly-background-color);
88
+ }
89
+
90
+ .form-control--has-button-group syn-button-group[size="small"]::part(base) {
91
+ --radiogroup-padding: calc(var(--syn-spacing-2x-small) + var(--syn-input-width));
92
+ }
93
+
94
+ /**
95
+ * #1140: This statement overrides the children selectors that are used for showing readonly fields
96
+ * We are not able to easily forward them to the radio button, so we need to override them here.
97
+ */
98
+ .form-control--has-button-group syn-button-group[readonly] ::slotted(syn-radio-button) {
99
+ --syn-readonly-indicator-color: var(--syn-readonly-background-color);
100
+ --syn-readonly-border-color: transparent;
101
+ --syn-color-neutral-0: var(--syn-readonly-color-text);
57
102
  }
58
103
  `;
@@ -1,5 +1,43 @@
1
1
  # @synergy-design-system/angular
2
2
 
3
+ ## 3.17.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#1231](https://github.com/synergy-design-system/synergy-design-system/pull/1231) [`8a6cbf7`](https://github.com/synergy-design-system/synergy-design-system/commit/8a6cbf78fe5236b691815edfad12b34659937df9) Thanks [@schilchSICKAG](https://github.com/schilchSICKAG)! - Released on: 2026-06-30
8
+
9
+ feat: ✨ `<syn-radio-button>` ([#1140](https://github.com/synergy-design-system/synergy-design-system/issues/1140))
10
+
11
+ This release adds the new `<syn-radio-button>` component for single-selection controls with a more prominent, button-like appearance.
12
+
13
+ Use `<syn-radio>` for classic form input patterns, and `<syn-radio-button>` when the same behavior should feel more like an immediate mode, view, or option switch.
14
+
15
+ ### Patch Changes
16
+
17
+ - Updated dependencies [[`8a6cbf7`](https://github.com/synergy-design-system/synergy-design-system/commit/8a6cbf78fe5236b691815edfad12b34659937df9)]:
18
+ - @synergy-design-system/components@3.17.0
19
+ - @synergy-design-system/tokens@3.17.0
20
+
21
+ ## 3.16.0
22
+
23
+ ### Minor Changes
24
+
25
+ - [#1291](https://github.com/synergy-design-system/synergy-design-system/pull/1291) [`363595e`](https://github.com/synergy-design-system/synergy-design-system/commit/363595ea1fde8baad6e11d69365732aa9f547c10) Thanks [@kirchsuSICKAG](https://github.com/kirchsuSICKAG)! - Released on: 2026-06-24
26
+
27
+ feat: ✨ chart axes mvp ([#1203](https://github.com/synergy-design-system/synergy-design-system/issues/1203))
28
+
29
+ This release introduces the first chart axis MVP for syn-chart.
30
+
31
+ New features:
32
+ - Adds and registers a Synergy ECharts light theme as default for syn-chart.
33
+ - Provides a config callback API with preset methods like `axesShowSplitLines()`, `axesAddXLabelIcons()`, and `axesHideLabels()` as an alternative to raw ECharts configuration objects for the _config_ property. These methods support both method chaining and sequential calling patterns for maximum flexibility.
34
+
35
+ ### Patch Changes
36
+
37
+ - Updated dependencies [[`363595e`](https://github.com/synergy-design-system/synergy-design-system/commit/363595ea1fde8baad6e11d69365732aa9f547c10), [`363595e`](https://github.com/synergy-design-system/synergy-design-system/commit/363595ea1fde8baad6e11d69365732aa9f547c10)]:
38
+ - @synergy-design-system/components@3.16.0
39
+ - @synergy-design-system/tokens@3.16.0
40
+
3
41
  ## 3.15.7
4
42
 
5
43
  ### Patch Changes
@@ -22,7 +22,7 @@
22
22
  "url": "https://github.com/synergy-design-system/synergy-design-system.git",
23
23
  "directory": "packages/angular"
24
24
  },
25
- "version": "3.15.7",
25
+ "version": "3.17.0",
26
26
  "scripts": {
27
27
  "_build": "pnpm _clean && ng-packagr -c tsconfig.lib.json && pnpm _after-build",
28
28
  "_clean": "rm -rf ../_private/angular-demo/.angular",
@@ -1,5 +1,41 @@
1
1
  # Changelog
2
2
 
3
+ ## 3.17.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#1231](https://github.com/synergy-design-system/synergy-design-system/pull/1231) [`8a6cbf7`](https://github.com/synergy-design-system/synergy-design-system/commit/8a6cbf78fe5236b691815edfad12b34659937df9) Thanks [@schilchSICKAG](https://github.com/schilchSICKAG)! - Released on: 2026-06-30
8
+
9
+ feat: ✨ `<syn-radio-button>` ([#1140](https://github.com/synergy-design-system/synergy-design-system/issues/1140))
10
+
11
+ This release adds the new `<syn-radio-button>` component for single-selection controls with a more prominent, button-like appearance.
12
+
13
+ Use `<syn-radio>` for classic form input patterns, and `<syn-radio-button>` when the same behavior should feel more like an immediate mode, view, or option switch.
14
+
15
+ ### Patch Changes
16
+
17
+ - Updated dependencies [[`8a6cbf7`](https://github.com/synergy-design-system/synergy-design-system/commit/8a6cbf78fe5236b691815edfad12b34659937df9)]:
18
+ - @synergy-design-system/tokens@3.17.0
19
+
20
+ ## 3.16.0
21
+
22
+ ### Minor Changes
23
+
24
+ - [#1291](https://github.com/synergy-design-system/synergy-design-system/pull/1291) [`363595e`](https://github.com/synergy-design-system/synergy-design-system/commit/363595ea1fde8baad6e11d69365732aa9f547c10) Thanks [@kirchsuSICKAG](https://github.com/kirchsuSICKAG)! - Released on: 2026-06-24
25
+
26
+ feat: ✨ chart axes mvp ([#1203](https://github.com/synergy-design-system/synergy-design-system/issues/1203))
27
+
28
+ This release introduces the first chart axis MVP for syn-chart.
29
+
30
+ New features:
31
+ - Adds and registers a Synergy ECharts light theme as default for syn-chart.
32
+ - Provides a config callback API with preset methods like `axesShowSplitLines()`, `axesAddXLabelIcons()`, and `axesHideLabels()` as an alternative to raw ECharts configuration objects for the _config_ property. These methods support both method chaining and sequential calling patterns for maximum flexibility.
33
+
34
+ ### Patch Changes
35
+
36
+ - Updated dependencies [[`363595e`](https://github.com/synergy-design-system/synergy-design-system/commit/363595ea1fde8baad6e11d69365732aa9f547c10)]:
37
+ - @synergy-design-system/tokens@3.16.0
38
+
3
39
  ## 3.15.7
4
40
 
5
41
  ### Patch Changes
@@ -4,7 +4,7 @@
4
4
  "url": "https://www.sick.com"
5
5
  },
6
6
  "name": "@synergy-design-system/components",
7
- "version": "3.15.7",
7
+ "version": "3.17.0",
8
8
  "description": "",
9
9
  "repository": {
10
10
  "type": "git",
@@ -1,5 +1,33 @@
1
1
  # @synergy-design-system/react
2
2
 
3
+ ## 3.17.0
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [[`8a6cbf7`](https://github.com/synergy-design-system/synergy-design-system/commit/8a6cbf78fe5236b691815edfad12b34659937df9)]:
8
+ - @synergy-design-system/components@3.17.0
9
+ - @synergy-design-system/tokens@3.17.0
10
+
11
+ ## 3.16.0
12
+
13
+ ### Minor Changes
14
+
15
+ - [#1291](https://github.com/synergy-design-system/synergy-design-system/pull/1291) [`363595e`](https://github.com/synergy-design-system/synergy-design-system/commit/363595ea1fde8baad6e11d69365732aa9f547c10) Thanks [@kirchsuSICKAG](https://github.com/kirchsuSICKAG)! - Released on: 2026-06-24
16
+
17
+ feat: ✨ chart axes mvp ([#1203](https://github.com/synergy-design-system/synergy-design-system/issues/1203))
18
+
19
+ This release introduces the first chart axis MVP for syn-chart.
20
+
21
+ New features:
22
+ - Adds and registers a Synergy ECharts light theme as default for syn-chart.
23
+ - Provides a config callback API with preset methods like `axesShowSplitLines()`, `axesAddXLabelIcons()`, and `axesHideLabels()` as an alternative to raw ECharts configuration objects for the _config_ property. These methods support both method chaining and sequential calling patterns for maximum flexibility.
24
+
25
+ ### Patch Changes
26
+
27
+ - Updated dependencies [[`363595e`](https://github.com/synergy-design-system/synergy-design-system/commit/363595ea1fde8baad6e11d69365732aa9f547c10), [`363595e`](https://github.com/synergy-design-system/synergy-design-system/commit/363595ea1fde8baad6e11d69365732aa9f547c10)]:
28
+ - @synergy-design-system/components@3.16.0
29
+ - @synergy-design-system/tokens@3.16.0
30
+
3
31
  ## 3.15.7
4
32
 
5
33
  ### Patch Changes
@@ -43,7 +43,7 @@
43
43
  "directory": "packages/react"
44
44
  },
45
45
  "type": "module",
46
- "version": "3.15.7",
46
+ "version": "3.17.0",
47
47
  "devDependencies": {
48
48
  "@types/react": "^19.2.17",
49
49
  "react": "^19.2.7"
@@ -269,7 +269,7 @@ export type SynCustomElement<
269
269
  *
270
270
  * @documentation https://synergy-design-system.github.io/?path=/docs/charting-syn-chart--docs
271
271
  * @status experimental
272
- * @since 0.0.0
272
+ * @since 3.15.0
273
273
  *
274
274
  * @csspart base - The component's base wrapper.
275
275
  */ export type SynChartJSXElement = SynCustomElement<SynChart, []>;
@@ -1092,7 +1092,7 @@ export type SynCustomElement<
1092
1092
  * @summary Radios buttons allow the user to select a single option from a group using a button-like control.
1093
1093
  * @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-radio-button--docs
1094
1094
  * @status stable
1095
- * @since 1.0.0
1095
+ * @since 3.17.0
1096
1096
  *
1097
1097
  * @slot - The radio button's label.
1098
1098
  * @slot prefix - A presentational prefix icon or similar element.
@@ -1737,7 +1737,7 @@ declare module 'react' {
1737
1737
  *
1738
1738
  * @documentation https://synergy-design-system.github.io/?path=/docs/charting-syn-chart--docs
1739
1739
  * @status experimental
1740
- * @since 0.0.0
1740
+ * @since 3.15.0
1741
1741
  *
1742
1742
  * @csspart base - The component's base wrapper.
1743
1743
  */ 'syn-chart': SynChartJSXElement;
@@ -2441,7 +2441,7 @@ declare module 'react' {
2441
2441
  * @summary Radios buttons allow the user to select a single option from a group using a button-like control.
2442
2442
  * @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-radio-button--docs
2443
2443
  * @status stable
2444
- * @since 1.0.0
2444
+ * @since 3.17.0
2445
2445
  *
2446
2446
  * @slot - The radio button's label.
2447
2447
  * @slot prefix - A presentational prefix icon or similar element.
@@ -1,5 +1,36 @@
1
1
  # Changelog
2
2
 
3
+ ## 3.17.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#1231](https://github.com/synergy-design-system/synergy-design-system/pull/1231) [`8a6cbf7`](https://github.com/synergy-design-system/synergy-design-system/commit/8a6cbf78fe5236b691815edfad12b34659937df9) Thanks [@schilchSICKAG](https://github.com/schilchSICKAG)! - Released on: 2026-06-30
8
+
9
+ feat: ✨ `<syn-radio-button>` ([#1140](https://github.com/synergy-design-system/synergy-design-system/issues/1140))
10
+
11
+ This release adds the new `<syn-radio-button>` component for single-selection controls with a more prominent, button-like appearance.
12
+
13
+ Use `<syn-radio>` for classic form input patterns, and `<syn-radio-button>` when the same behavior should feel more like an immediate mode, view, or option switch.
14
+
15
+ ## 3.16.0
16
+
17
+ ### Minor Changes
18
+
19
+ - [#1291](https://github.com/synergy-design-system/synergy-design-system/pull/1291) [`363595e`](https://github.com/synergy-design-system/synergy-design-system/commit/363595ea1fde8baad6e11d69365732aa9f547c10) Thanks [@kirchsuSICKAG](https://github.com/kirchsuSICKAG)! - Released on: 2026-06-24
20
+
21
+ feat: ✨ Prefix all chart tokens, add new component and chart tokens
22
+
23
+ **Prefixing chart tokens**
24
+ - chart-related tokens now use a dedicated `chart` prefix to ensure clear scoping and avoid naming conflicts.
25
+
26
+ **Component tokens**
27
+ - `--syn-typography-color-text-quiet`
28
+ - `--syn-typography-color-text-quiet-inverted`
29
+
30
+ **Chart tokens**:
31
+ - `--syn-chart-grid-lines-color`
32
+ - `--syn-chart-grid-lines-color-emphasize`
33
+
3
34
  ## 3.15.7
4
35
 
5
36
  ### Patch Changes
@@ -82,5 +82,5 @@
82
82
  },
83
83
  "type": "module",
84
84
  "types": "./dist/js/index.d.ts",
85
- "version": "3.15.7"
85
+ "version": "3.17.0"
86
86
  }
@@ -1,5 +1,43 @@
1
1
  # @synergy-design-system/vue
2
2
 
3
+ ## 3.17.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#1231](https://github.com/synergy-design-system/synergy-design-system/pull/1231) [`8a6cbf7`](https://github.com/synergy-design-system/synergy-design-system/commit/8a6cbf78fe5236b691815edfad12b34659937df9) Thanks [@schilchSICKAG](https://github.com/schilchSICKAG)! - Released on: 2026-06-30
8
+
9
+ feat: ✨ `<syn-radio-button>` ([#1140](https://github.com/synergy-design-system/synergy-design-system/issues/1140))
10
+
11
+ This release adds the new `<syn-radio-button>` component for single-selection controls with a more prominent, button-like appearance.
12
+
13
+ Use `<syn-radio>` for classic form input patterns, and `<syn-radio-button>` when the same behavior should feel more like an immediate mode, view, or option switch.
14
+
15
+ ### Patch Changes
16
+
17
+ - Updated dependencies [[`8a6cbf7`](https://github.com/synergy-design-system/synergy-design-system/commit/8a6cbf78fe5236b691815edfad12b34659937df9)]:
18
+ - @synergy-design-system/components@3.17.0
19
+ - @synergy-design-system/tokens@3.17.0
20
+
21
+ ## 3.16.0
22
+
23
+ ### Minor Changes
24
+
25
+ - [#1291](https://github.com/synergy-design-system/synergy-design-system/pull/1291) [`363595e`](https://github.com/synergy-design-system/synergy-design-system/commit/363595ea1fde8baad6e11d69365732aa9f547c10) Thanks [@kirchsuSICKAG](https://github.com/kirchsuSICKAG)! - Released on: 2026-06-24
26
+
27
+ feat: ✨ chart axes mvp ([#1203](https://github.com/synergy-design-system/synergy-design-system/issues/1203))
28
+
29
+ This release introduces the first chart axis MVP for syn-chart.
30
+
31
+ New features:
32
+ - Adds and registers a Synergy ECharts light theme as default for syn-chart.
33
+ - Provides a config callback API with preset methods like `axesShowSplitLines()`, `axesAddXLabelIcons()`, and `axesHideLabels()` as an alternative to raw ECharts configuration objects for the _config_ property. These methods support both method chaining and sequential calling patterns for maximum flexibility.
34
+
35
+ ### Patch Changes
36
+
37
+ - Updated dependencies [[`363595e`](https://github.com/synergy-design-system/synergy-design-system/commit/363595ea1fde8baad6e11d69365732aa9f547c10), [`363595e`](https://github.com/synergy-design-system/synergy-design-system/commit/363595ea1fde8baad6e11d69365732aa9f547c10)]:
38
+ - @synergy-design-system/components@3.16.0
39
+ - @synergy-design-system/tokens@3.16.0
40
+
3
41
  ## 3.15.7
4
42
 
5
43
  ### Patch Changes
@@ -50,7 +50,7 @@
50
50
  "directory": "packages/vue"
51
51
  },
52
52
  "type": "module",
53
- "version": "3.15.7",
53
+ "version": "3.17.0",
54
54
  "devDependencies": {
55
55
  "@vitejs/plugin-vue": "^6.0.7",
56
56
  "@vue/tsconfig": "^0.9.1",