@synergy-design-system/mcp 1.37.0 → 1.38.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,29 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.38.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#1133](https://github.com/synergy-design-system/synergy-design-system/pull/1133) [`82ea066`](https://github.com/synergy-design-system/synergy-design-system/commit/82ea066fa18e35831d94f22c7ac620135bc8c334) Thanks [@schilchSICKAG](https://github.com/schilchSICKAG)! - Released on: 2025-12-15
8
+
9
+ fix: 🐛 syn menu submenu rounding (#1131)
10
+
11
+ Fixes an issue with `<syn-menu-item>` when rendering submenus.
12
+ Submenus did not take the changed `border-radius` of `<syn-menu>` into account, leading to squared borders in the `SICK 2025` themes.
13
+
14
+ ## 1.38.0
15
+
16
+ ### Minor Changes
17
+
18
+ - [#1129](https://github.com/synergy-design-system/synergy-design-system/pull/1129) [`102e650`](https://github.com/synergy-design-system/synergy-design-system/commit/102e6503af3a72d0d2529ed216ce6053a07b9607) Thanks [@schilchSICKAG](https://github.com/schilchSICKAG)! - Released on: 2025-12-12
19
+
20
+ feat: ✨ syn alert add sizes (#1119)
21
+
22
+ We have added a new property `size` to `<syn-alert>` that can be set to `small`, `medium` (the default) and `large`.
23
+ The property can also be used with Synergy `defaultSettings`.
24
+
25
+ We also adjusted `<syn-validate>` to draw the `size` attribute of its `slotted` `HTMLInputElement`. If a `size` property is found on the rendered input, it will be forwarded to the rendered `<syn-alert>` if you use `variant="inline"`.
26
+
3
27
  ## 1.37.0
4
28
 
5
29
  ### Minor Changes
@@ -1 +1 @@
1
- c3be5df393f0cfe6983d43863f357b7e
1
+ ad66baabe30abdbbfb394f24e54b654b
@@ -131,6 +131,17 @@ the alert will not close on its own.
131
131
  return this.nativeElement.duration;
132
132
  }
133
133
 
134
+ /**
135
+ * The alert's size.
136
+ */
137
+ @Input()
138
+ set size(v: SynAlert['size']) {
139
+ this._ngZone.runOutsideAngular(() => (this.nativeElement.size = v));
140
+ }
141
+ get size(): SynAlert['size'] {
142
+ return this.nativeElement.size;
143
+ }
144
+
134
145
  /**
135
146
  * Emitted when the alert opens.
136
147
  */
@@ -8,14 +8,23 @@ export default css`
8
8
  --variant-color-icon: var(--syn-alert-informative-color-icon, var(--syn-color-primary-600));
9
9
  --variant-color-indicator: var(--syn-alert-informative-color-indicator, var(--syn-color-primary-600));
10
10
 
11
+ /* Defines special settings for sizes */
12
+ --size-font-size: var(--syn-font-size-medium);
13
+ --size-icon-size: var(--syn-font-size-x-large);
14
+ --size-min-height: 54px;
15
+ --size-message-padding: var(--syn-spacing-medium) var(--syn-spacing-large) var(--syn-spacing-medium) var(--syn-spacing-medium);
16
+ --size-icon-padding-block: var(--syn-spacing-medium);
17
+ --size-icon-padding-inline: var(--syn-spacing-medium);
18
+
11
19
  background-color: var(--variant-color-background);
12
20
  border: var(--syn-panel-border-width) solid var(--variant-color-border);
13
21
  border-left: 0;
14
22
  border-radius: var(--syn-border-radius-none);
23
+ box-sizing: content-box;
15
24
  color: var(--syn-typography-color-text);
16
- font-size: var(--syn-font-size-medium);
25
+ font-size: var(--size-font-size);
17
26
  line-height: var(--syn-line-height-normal);
18
- min-height: 56px;
27
+ min-height: var(--size-min-height);
19
28
  }
20
29
 
21
30
  /**
@@ -43,11 +52,12 @@ export default css`
43
52
  .alert__icon,
44
53
  .alert__close-button {
45
54
  align-items: flex-start;
46
- font-size: var(--syn-font-size-x-large);
55
+ font-size: var(--size-icon-size);
47
56
  }
48
57
 
49
58
  .alert__message {
50
- padding: var(--syn-spacing-medium) var(--syn-spacing-large) var(--syn-spacing-medium) var(--syn-spacing-medium);
59
+ align-self: center;
60
+ padding: var(--size-message-padding);
51
61
  }
52
62
 
53
63
  /**
@@ -55,15 +65,14 @@ export default css`
55
65
  */
56
66
  .alert__icon {
57
67
  color: var(--variant-color-icon);
58
- padding-block: var(--syn-spacing-medium);
59
- padding-inline-start: var(--syn-spacing-medium);
68
+ padding-block-start: var(--size-icon-padding-block);
69
+ padding-inline-start: var(--size-icon-padding-inline);
60
70
  }
61
71
 
62
72
  /**
63
73
  * Close Icon
64
74
  */
65
75
  .alert__close-button {
66
- align-self: start;
67
76
  color: var(--syn-typography-color-text);
68
77
  margin-block: calc(var(--syn-spacing-x-small) - var(--syn-panel-border-width));
69
78
  margin-inline-end: var(--syn-spacing-x-small);
@@ -99,4 +108,28 @@ export default css`
99
108
  --variant-color-icon: var(--syn-alert-error-color-icon, var(--syn-color-error-600));
100
109
  --variant-color-indicator: var(--syn-alert-error-color-indicator, var(--syn-color-error-600));
101
110
  }
111
+
112
+ /* #1119: Alert Sizes */
113
+ .alert--small {
114
+ --size-font-size: var(--syn-font-size-small);
115
+ --size-icon-size: var(--syn-font-size-large);
116
+ --size-min-height: 44px;
117
+ --size-message-padding: var(--syn-spacing-small) var(--syn-spacing-large) var(--syn-spacing-small) var(--syn-spacing-small);
118
+ --size-icon-padding-block: var(--syn-spacing-small);
119
+ --size-icon-padding-inline: var(--syn-spacing-small);
120
+ }
121
+
122
+ /* Adjust close button size for small alerts */
123
+ .alert--small .alert__close-button {
124
+ font-size: var(--syn-font-size-medium);
125
+ }
126
+
127
+ .alert--large {
128
+ --size-font-size: var(--syn-font-size-large);
129
+ --size-icon-size: var(--syn-font-size-2x-large);
130
+ --size-min-height: 68px;
131
+ --size-message-padding: var(--syn-spacing-medium-large) var(--syn-spacing-large) var(--syn-spacing-medium-large) var(--syn-spacing-medium-large);
132
+ --size-icon-padding-block: var(--syn-spacing-medium-large);
133
+ --size-icon-padding-inline: var(--syn-spacing-medium-large);
134
+ }
102
135
  `;
@@ -94,6 +94,9 @@ export default class SynAlert extends SynergyElement {
94
94
  */
95
95
  @property({ type: Number }) duration = Infinity;
96
96
 
97
+ /** The alert's size. */
98
+ @property({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';
99
+
97
100
  /**
98
101
  * Enables a countdown that indicates the remaining time the alert will be displayed.
99
102
  * Typically used to indicate the remaining time before a whole app refresh.
@@ -253,6 +256,9 @@ export default class SynAlert extends SynergyElement {
253
256
  class=${classMap({
254
257
  alert: true,
255
258
  'alert--open': this.open,
259
+ 'alert--small': this.size === 'small',
260
+ 'alert--medium': this.size === 'medium',
261
+ 'alert--large': this.size === 'large',
256
262
  'alert--closable': this.closable,
257
263
  'alert--has-icon': this.hasSlotController.test('icon'),
258
264
  'alert--primary': this.variant === 'primary',
@@ -74,6 +74,11 @@ the alert before it closes (e.g.
74
74
  the alert will not close on its own.
75
75
  */
76
76
  duration?: SynAlert['duration'];
77
+
78
+ /**
79
+ * The alert's size.
80
+ */
81
+ size?: SynAlert['size'];
77
82
  }>();
78
83
 
79
84
  // Make sure prop binding only forwards the props that are actually there.
@@ -160,4 +160,9 @@ export default css`
160
160
  :host(:not([type="checkmark"]):not([loading])) .menu-item__label {
161
161
  min-height: var(--syn-font-size-x-large);
162
162
  }
163
+
164
+ /* #1131: Make sure that slotted menus do show the correct border radius */
165
+ syn-popup::part(popup) {
166
+ border-radius: var(--syn-input-border-radius-medium);
167
+ }
163
168
  `;
@@ -1,14 +1,18 @@
1
1
  import type { CSSResultGroup, PropertyValues } from 'lit';
2
2
  import { html } from 'lit';
3
3
  import { property, queryAssignedElements, state } from 'lit/decorators.js';
4
+ import { ifDefined } from 'lit/directives/if-defined.js';
4
5
  import componentStyles from '../../styles/component.styles.js';
5
6
  import SynergyElement from '../../internal/synergy-element.js';
7
+ import type SynInput from '../input/input.component.js';
6
8
  import { watch } from '../../internal/watch.js';
7
9
  import SynAlert from '../alert/alert.component.js';
8
10
  import {
11
+ alertSizeForInput,
9
12
  getEventNameForElement,
10
13
  isBlurEvent,
11
14
  isInvalidEvent,
15
+ isSynergyElement,
12
16
  normalizeEventAttribute,
13
17
  } from './utility.js';
14
18
  import styles from './validate.styles.js';
@@ -43,6 +47,8 @@ export default class SynValidate extends SynergyElement {
43
47
 
44
48
  observer: MutationObserver;
45
49
 
50
+ sizeObserver: MutationObserver;
51
+
46
52
  @queryAssignedElements() private slottedChildren: HTMLElement[];
47
53
 
48
54
  @state() validationMessage = '';
@@ -53,6 +59,8 @@ export default class SynValidate extends SynergyElement {
53
59
 
54
60
  @state() isValid = true;
55
61
 
62
+ @state() alertSize?: SynInput['size'];
63
+
56
64
  /**
57
65
  * The variant that should be used to show validation alerts.
58
66
  *
@@ -150,6 +158,10 @@ export default class SynValidate extends SynergyElement {
150
158
  return input ? input as HTMLInputElement : undefined;
151
159
  }
152
160
 
161
+ private setAlertSize() {
162
+ this.alertSize = alertSizeForInput(this.getInput());
163
+ }
164
+
153
165
  /**
154
166
  * Get the event names to listen for.
155
167
  * If the input is a synergy element, will use syn- prefixes.
@@ -289,7 +301,7 @@ export default class SynValidate extends SynergyElement {
289
301
  }
290
302
 
291
303
  const input = e.currentTarget as HTMLInputElement;
292
- if (input instanceof SynergyElement) {
304
+ if (isSynergyElement(input)) {
293
305
  // When using a synergy element, we need to wait for it to be ready!
294
306
  // This is needed as the validity state of the element may not be set yet.
295
307
  await input.updateComplete;
@@ -331,7 +343,7 @@ export default class SynValidate extends SynergyElement {
331
343
  const input = this.getInput();
332
344
 
333
345
  if (this.customValidationMessage) {
334
- if (input instanceof SynergyElement) {
346
+ if (isSynergyElement(input)) {
335
347
  await input.updateComplete;
336
348
  }
337
349
  input?.setCustomValidity(this.customValidationMessage);
@@ -348,6 +360,34 @@ export default class SynValidate extends SynergyElement {
348
360
  connectedCallback() {
349
361
  super.connectedCallback();
350
362
 
363
+ // #1119: Update alert size when the input size changes
364
+ // Note that we need to create our own observer here,
365
+ // as the size attribute may be changed on the input element directly,
366
+ // which would not be captured by the synergy-element observer.
367
+ this.sizeObserver = new MutationObserver(entries => {
368
+ const input = this.getInput();
369
+
370
+ if (!input) {
371
+ return;
372
+ }
373
+
374
+ const hasSizeChanged = entries
375
+ .filter(({ target }) => target === input)
376
+ .every(
377
+ entry => entry.attributeName === 'size',
378
+ );
379
+
380
+ if (hasSizeChanged) {
381
+ this.setAlertSize();
382
+ }
383
+ });
384
+
385
+ this.sizeObserver.observe(this, {
386
+ attributeFilter: ['size'],
387
+ attributes: true,
388
+ subtree: true,
389
+ });
390
+
351
391
  // #717: Make sure to remove to rerun validation when
352
392
  // disabled or readonly properties change on the input
353
393
  this.observer = new MutationObserver(entries => {
@@ -357,10 +397,9 @@ export default class SynValidate extends SynergyElement {
357
397
  return;
358
398
  }
359
399
 
400
+ // Check if the input is disabled or readonly
360
401
  const hasDisabledOrReadonly = entries
361
- // Only check for changes on the input element
362
402
  .filter(({ target }) => target === input)
363
- // Check if the input is disabled or readonly
364
403
  .every(entry => {
365
404
  const target = entry.target as HTMLInputElement;
366
405
  return target.hasAttribute('disabled') || target.hasAttribute('readonly');
@@ -373,7 +412,7 @@ export default class SynValidate extends SynergyElement {
373
412
  // When using a synergy element, we need to check the validity after the element is updated,
374
413
  // as we cannot rely on the validity state of the element itself.
375
414
  // Unfortunately, this depends on used browser :(.
376
- const waitForPromise = input instanceof SynergyElement
415
+ const waitForPromise = isSynergyElement(input)
377
416
  ? input.updateComplete
378
417
  : Promise.resolve();
379
418
 
@@ -396,6 +435,7 @@ export default class SynValidate extends SynergyElement {
396
435
  super.disconnectedCallback();
397
436
  this.controller.abort();
398
437
  this?.observer?.disconnect();
438
+ this?.sizeObserver?.disconnect();
399
439
  }
400
440
 
401
441
  private renderInlineValidation() {
@@ -408,6 +448,7 @@ export default class SynValidate extends SynergyElement {
408
448
  open
409
449
  exportparts="base:alert__base,message:alert__message,icon:alert__icon"
410
450
  part="alert"
451
+ size=${ifDefined(this.alertSize)}
411
452
  variant="danger"
412
453
  >
413
454
  ${!this.hideIcon
@@ -1,15 +1,22 @@
1
- # Synergy 3.0 Migration Guide
1
+ # Migration to SICK 2025
2
2
 
3
- > ⚠️ **Migration in progress:** Some features may not be fully implemented yet. See the [GitHub migration board](https://github.com/orgs/synergy-design-system/projects/2/views/37) for updates.
4
-
5
- > It is currently not advised to use the new version in production, as we are still finalizing the migration process.
3
+ > ⚠️ **Update in progress:** Some features may not be fully implemented yet. See the [GitHub SICK 2025 theme update board](https://github.com/orgs/synergy-design-system/projects/2/views/37) for updates.
4
+ >
5
+ > It is currently not advised to use the new version in production, as we are still finalizing the update process.
6
6
  > However, you can start preparing your codebase for the upcoming changes.
7
7
 
8
+ This guide details all steps that are needed to migrate from the SICK 2018 to the new SICK 2025 theme.
9
+ This guide assumes you are using Synergy version 2.
10
+ Synergy version 3 will apply most manual steps outlined in this guide automatically.
11
+
8
12
  ---
9
13
 
10
14
  ## Migration Checklist: Quick Overview
11
15
 
12
- - [ ] Update Synergy packages to the latest version
16
+ - [ ] Update `@synergy-design-system/components` to the latest stable 2.x version (e.g. `"^2.0.0"`)
17
+ - [ ] Update `@synergy-design-system/tokens` to the latest stable 2.x version (e.g. `"^2.0.0"`)
18
+ - [ ] Update `@synergy-design-system/assets` to the latest stable 1.x version (e.g. `"^1.0.0"`)
19
+ - [ ] Update `@synergy-design-system/styles` to the latest stable 1.x version (e.g. `"^1.0.0"`)
13
20
  - [ ] Call `setSystemIconLibrary('sick2025')` before rendering components
14
21
  - [ ] Copy new icons to `/assets/icons/`
15
22
  - [ ] Import new CSS themes (`sick2025_light.css`, `sick2025_dark.css`)
@@ -18,7 +25,7 @@
18
25
 
19
26
  ---
20
27
 
21
- ## Release Highlights: Synergy 3.0
28
+ ## Release Highlights: SICK 2025
22
29
 
23
30
  - **Brand appearance:** Updated colors, roundings, and overall look
24
31
  - **Fonts:** New SICK Intl font replaces Open Sans
@@ -306,7 +313,7 @@ setSystemIconLibrary("sick2025");
306
313
 
307
314
  ### Reference: Tokens & Themes
308
315
 
309
- Synergy 3.0 introduces new CSS theme files that implement the updated SICK brand appearance:
316
+ The Synergy tokens package introduces new CSS theme files that implement the updated SICK brand appearance:
310
317
 
311
318
  - **`sick2025_light.css`**: The new light theme featuring the SICK 2025 brand identity
312
319
  - **`sick2025_dark.css`**: The new dark theme featuring the SICK 2025 brand identity
@@ -325,7 +332,7 @@ To use the new themes in your application:
325
332
  1. **Replace theme imports** in your HTML or CSS:
326
333
 
327
334
  ```javascript
328
- // New Synergy 3.0 themes
335
+ // New Synergy SICK 2025 themes
329
336
  import "@synergy-design-system/tokens/themes/sick2025_light.css";
330
337
  import "@synergy-design-system/tokens/themes/sick2025_dark.css";
331
338
  ```
@@ -354,7 +361,7 @@ To use the new themes in your application:
354
361
 
355
362
  ### Reference: SICK Intl Fonts
356
363
 
357
- The SICK 2025 theme introduces a new typeface called **SICK Intl** that replaces the previously used Open Sans font. When migrating to Synergy 3.0 with the SICK 2025 theme, you'll need to ensure this font is properly loaded in your application.
364
+ The SICK 2025 theme introduces a new typeface called **SICK Intl** that replaces the previously used Open Sans font. When migrating to the SICK 2025 theme, you'll need to ensure this font is properly loaded in your application.
358
365
 
359
366
  > **Important**: The SICK Intl font is now provided via the dedicated `@synergy-design-system/fonts` package for easy integration.
360
367
 
@@ -469,7 +476,7 @@ For better performance, you can also preload the font:
469
476
 
470
477
  ## Migration Steps
471
478
 
472
- These steps are only needed when switching to the new Synergy 3.0 layout.
479
+ These steps are only needed when switching to the new SICK 2025 theme.
473
480
 
474
481
  1. Always make sure to use the latest versions of the Synergy packages. You can check for updates using your package manager.
475
482
  2. Call `setSystemIconLibrary` with `sick2025` to enable the new system icons.
@@ -1,5 +1,29 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.74.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#1133](https://github.com/synergy-design-system/synergy-design-system/pull/1133) [`82ea066`](https://github.com/synergy-design-system/synergy-design-system/commit/82ea066fa18e35831d94f22c7ac620135bc8c334) Thanks [@schilchSICKAG](https://github.com/schilchSICKAG)! - Released on: 2025-12-15
8
+
9
+ fix: 🐛 syn menu submenu rounding (#1131)
10
+
11
+ Fixes an issue with `<syn-menu-item>` when rendering submenus.
12
+ Submenus did not take the changed `border-radius` of `<syn-menu>` into account, leading to squared borders in the `SICK 2025` themes.
13
+
14
+ ## 2.74.0
15
+
16
+ ### Minor Changes
17
+
18
+ - [#1129](https://github.com/synergy-design-system/synergy-design-system/pull/1129) [`102e650`](https://github.com/synergy-design-system/synergy-design-system/commit/102e6503af3a72d0d2529ed216ce6053a07b9607) Thanks [@schilchSICKAG](https://github.com/schilchSICKAG)! - Released on: 2025-12-12
19
+
20
+ feat: ✨ syn alert add sizes (#1119)
21
+
22
+ We have added a new property `size` to `<syn-alert>` that can be set to `small`, `medium` (the default) and `large`.
23
+ The property can also be used with Synergy `defaultSettings`.
24
+
25
+ We also adjusted `<syn-validate>` to draw the `size` attribute of its `slotted` `HTMLInputElement`. If a `size` property is found on the rendered input, it will be forwarded to the rendered `<syn-alert>` if you use `variant="inline"`.
26
+
3
27
  ## 2.73.0
4
28
 
5
29
  ### Minor Changes
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @synergy-design-system/tokens version 2.45.0
2
+ * @synergy-design-system/tokens version 2.46.0
3
3
  * SICK Global UX Foundation
4
4
  * Do not edit directly, this file was auto-generated.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @synergy-design-system/tokens version 2.45.0
2
+ * @synergy-design-system/tokens version 2.46.0
3
3
  * SICK Global UX Foundation
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @synergy-design-system/tokens version 2.45.0
2
+ * @synergy-design-system/tokens version 2.46.0
3
3
  * SICK Global UX Foundation
4
4
  * Do not edit directly, this file was auto-generated.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @synergy-design-system/tokens version 2.45.0
2
+ * @synergy-design-system/tokens version 2.46.0
3
3
  * SICK Global UX Foundation
4
4
  * Do not edit directly, this file was auto-generated.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @synergy-design-system/tokens version 2.45.0
2
+ * @synergy-design-system/tokens version 2.46.0
3
3
  * SICK Global UX Foundation
4
4
  * Do not edit directly, this file was auto-generated.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @synergy-design-system/tokens version 2.45.0
2
+ * @synergy-design-system/tokens version 2.46.0
3
3
  * SICK Global UX Foundation
4
4
  * Do not edit directly, this file was auto-generated.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @synergy-design-system/tokens version 2.45.0
2
+ * @synergy-design-system/tokens version 2.46.0
3
3
  * SICK Global UX Foundation
4
4
  * Do not edit directly, this file was auto-generated.
5
5
  */
@@ -3,7 +3,7 @@
3
3
  Alerts are used to display important messages inline or as toast notifications.
4
4
 
5
5
  ```html
6
- <syn-alert open="" variant="primary">
6
+ <syn-alert open="" variant="primary" size="medium">
7
7
  This is a standard alert. You can customize its content and even the icon.
8
8
  <syn-icon
9
9
  slot="icon"
@@ -24,7 +24,7 @@ Set the variant attribute to change the alert’s variant.
24
24
  <div
25
25
  style="display: flex; flex-direction: column; gap: var(--syn-spacing-medium)"
26
26
  >
27
- <syn-alert variant="primary" open="" id="something">
27
+ <syn-alert variant="primary" open="" id="something" size="medium">
28
28
  <syn-icon
29
29
  slot="icon"
30
30
  name="info"
@@ -35,7 +35,7 @@ Set the variant attribute to change the alert’s variant.
35
35
  You can tell by how pretty the alert is.
36
36
  </syn-alert>
37
37
 
38
- <syn-alert variant="success" open="">
38
+ <syn-alert variant="success" open="" size="medium">
39
39
  <syn-icon
40
40
  slot="icon"
41
41
  name="check_circle"
@@ -46,7 +46,7 @@ Set the variant attribute to change the alert’s variant.
46
46
  You can safely exit the app now.
47
47
  </syn-alert>
48
48
 
49
- <syn-alert variant="neutral" open="">
49
+ <syn-alert variant="neutral" open="" size="medium">
50
50
  <syn-icon
51
51
  slot="icon"
52
52
  name="settings"
@@ -57,7 +57,7 @@ Set the variant attribute to change the alert’s variant.
57
57
  Settings will take effect on next login.
58
58
  </syn-alert>
59
59
 
60
- <syn-alert variant="warning" open="">
60
+ <syn-alert variant="warning" open="" size="medium">
61
61
  <syn-icon
62
62
  slot="icon"
63
63
  name="warning"
@@ -68,7 +68,7 @@ Set the variant attribute to change the alert’s variant.
68
68
  Please login again to continue.
69
69
  </syn-alert>
70
70
 
71
- <syn-alert variant="danger" open="">
71
+ <syn-alert variant="danger" open="" size="medium">
72
72
  <syn-icon
73
73
  slot="icon"
74
74
  name="status-error"
@@ -93,7 +93,13 @@ Set the variant attribute to change the alert’s variant.
93
93
  Add the closable attribute to show a close button that will hide the alert.
94
94
 
95
95
  ```html
96
- <syn-alert variant="primary" open="" closable="" class="alert-closable">
96
+ <syn-alert
97
+ variant="primary"
98
+ open=""
99
+ closable=""
100
+ class="alert-closable"
101
+ size="medium"
102
+ >
97
103
  <syn-icon
98
104
  slot="icon"
99
105
  name="info"
@@ -111,13 +117,58 @@ Add the closable attribute to show a close button that will hide the alert.
111
117
  Icons are optional. Simply omit the icon slot if you don’t want them.
112
118
 
113
119
  ```html
114
- <syn-alert variant="primary" open="">
120
+ <syn-alert variant="primary" open="" size="medium">
115
121
  Nothing fancy here, just a simple alert.
116
122
  </syn-alert>
117
123
  ```
118
124
 
119
125
  ---
120
126
 
127
+ ## Sizes
128
+
129
+ Use the size attribute to change an alert’s size.
130
+
131
+ ```html
132
+ <div
133
+ style="display: flex; flex-direction: column; gap: var(--syn-spacing-large)"
134
+ >
135
+ <syn-alert variant="primary" open="" size="small">
136
+ <syn-icon
137
+ slot="icon"
138
+ name="info"
139
+ aria-hidden="true"
140
+ library="default"
141
+ ></syn-icon>
142
+ <strong>This is size small</strong><br />
143
+ Nothing fancy here, just a simple alert.
144
+ </syn-alert>
145
+
146
+ <syn-alert variant="primary" open="" size="medium">
147
+ <syn-icon
148
+ slot="icon"
149
+ name="info"
150
+ aria-hidden="true"
151
+ library="default"
152
+ ></syn-icon>
153
+ <strong>This is size medium</strong><br />
154
+ Nothing fancy here, just a simple alert.
155
+ </syn-alert>
156
+
157
+ <syn-alert variant="primary" open="" size="large">
158
+ <syn-icon
159
+ slot="icon"
160
+ name="info"
161
+ aria-hidden="true"
162
+ library="default"
163
+ ></syn-icon>
164
+ <strong>This is size large</strong><br />
165
+ Nothing fancy here, just a simple alert.
166
+ </syn-alert>
167
+ </div>
168
+ ```
169
+
170
+ ---
171
+
121
172
  ## Duration
122
173
 
123
174
  Set the duration attribute to automatically hide an alert after a period of time. This is useful for alerts that don’t require acknowledgement.
@@ -126,7 +177,7 @@ Set the duration attribute to automatically hide an alert after a period of time
126
177
  <div class="alert-duration">
127
178
  <syn-button variant="outline" title="" size="medium">Show Alert</syn-button>
128
179
 
129
- <syn-alert variant="primary" duration="3000" closable="">
180
+ <syn-alert variant="primary" duration="3000" closable="" size="medium">
130
181
  <syn-icon
131
182
  slot="icon"
132
183
  name="info"
@@ -161,7 +212,7 @@ To display an alert as a toast notification, or “toast”, create the alert an
161
212
  <syn-button title="" variant="outline" size="medium">Danger</syn-button>
162
213
  </div>
163
214
 
164
- <syn-alert variant="primary" duration="3000" closable="">
215
+ <syn-alert variant="primary" duration="3000" closable="" size="medium">
165
216
  <syn-icon
166
217
  slot="icon"
167
218
  name="info"
@@ -172,7 +223,7 @@ To display an alert as a toast notification, or “toast”, create the alert an
172
223
  You can tell by how pretty the alert is.
173
224
  </syn-alert>
174
225
 
175
- <syn-alert variant="success" duration="3000" closable="">
226
+ <syn-alert variant="success" duration="3000" closable="" size="medium">
176
227
  <syn-icon
177
228
  slot="icon"
178
229
  name="check_circle"
@@ -183,7 +234,7 @@ To display an alert as a toast notification, or “toast”, create the alert an
183
234
  You can safely exit the app now.
184
235
  </syn-alert>
185
236
 
186
- <syn-alert variant="neutral" duration="3000" closable="">
237
+ <syn-alert variant="neutral" duration="3000" closable="" size="medium">
187
238
  <syn-icon
188
239
  slot="icon"
189
240
  name="settings"
@@ -194,7 +245,7 @@ To display an alert as a toast notification, or “toast”, create the alert an
194
245
  Settings will take effect on next login.
195
246
  </syn-alert>
196
247
 
197
- <syn-alert variant="warning" duration="3000" closable="">
248
+ <syn-alert variant="warning" duration="3000" closable="" size="medium">
198
249
  <syn-icon
199
250
  slot="icon"
200
251
  name="warning"
@@ -205,7 +256,7 @@ To display an alert as a toast notification, or “toast”, create the alert an
205
256
  Please login again to continue.
206
257
  </syn-alert>
207
258
 
208
- <syn-alert variant="danger" duration="3000" closable="">
259
+ <syn-alert variant="danger" duration="3000" closable="" size="medium">
209
260
  <syn-icon
210
261
  slot="icon"
211
262
  name="status-error"
@@ -84,6 +84,59 @@ Use hide-icon to hide the icon in inline style. This is especially useful when s
84
84
 
85
85
  ---
86
86
 
87
+ ## Sizes
88
+
89
+ In development use the size attribute of the form element e.g. syn-input to set the size of the inline syn-validate automatically.
90
+
91
+ ```html
92
+ <form id="components-syn-validate--sizes-validate-demo-form">
93
+ <div
94
+ style="display: flex; flex-direction: column; gap: var(--syn-spacing-large)"
95
+ >
96
+ <syn-validate eager="" variant="inline" on="">
97
+ <syn-input
98
+ label="Inline Validation"
99
+ type="email"
100
+ value="team(at)synergy.com"
101
+ size="small"
102
+ title=""
103
+ form=""
104
+ ></syn-input>
105
+ </syn-validate>
106
+
107
+ <syn-validate eager="" variant="inline" on="">
108
+ <syn-input
109
+ label="Inline Validation"
110
+ type="email"
111
+ value="team(at)synergy.com"
112
+ size="medium"
113
+ title=""
114
+ form=""
115
+ ></syn-input>
116
+ </syn-validate>
117
+
118
+ <syn-validate eager="" variant="inline" on="">
119
+ <syn-input
120
+ label="Inline Validation"
121
+ type="email"
122
+ value="team(at)synergy.com"
123
+ size="large"
124
+ title=""
125
+ form=""
126
+ ></syn-input>
127
+ </syn-validate>
128
+ </div>
129
+
130
+ <p>
131
+ <syn-button type="submit" title="" variant="outline" size="medium"
132
+ >Submit</syn-button
133
+ >
134
+ </p>
135
+ </form>
136
+ ```
137
+
138
+ ---
139
+
87
140
  ## Live
88
141
 
89
142
  Use the live value for the on attribute to validate on every input change (e. g. typing a character or checking a checkbox.) instead of form submit. This will automatically bind to the input and blur events.👨‍💻 Additional developer Information:Please ensure, that you really need live validation for your use case as this can have implications on accessibility.
package/package.json CHANGED
@@ -28,10 +28,10 @@
28
28
  "serve-handler": "^6.1.6",
29
29
  "ts-jest": "^29.4.0",
30
30
  "typescript": "^5.9.3",
31
- "@synergy-design-system/docs": "0.1.0",
32
- "@synergy-design-system/components": "2.73.0",
31
+ "@synergy-design-system/components": "2.74.1",
33
32
  "@synergy-design-system/eslint-config-syn": "^0.1.0",
34
33
  "@synergy-design-system/styles": "1.9.0",
34
+ "@synergy-design-system/docs": "0.1.0",
35
35
  "@synergy-design-system/fonts": "1.0.0",
36
36
  "@synergy-design-system/tokens": "^2.46.0"
37
37
  },
@@ -67,7 +67,7 @@
67
67
  "directory": "packages/mcp"
68
68
  },
69
69
  "type": "module",
70
- "version": "1.37.0",
70
+ "version": "1.38.1",
71
71
  "scripts": {
72
72
  "build": "pnpm run build:ts && pnpm run build:metadata && pnpm build:hash",
73
73
  "build:all": "pnpm run build && pnpm run build:storybook",