@synergy-design-system/components 1.6.1 → 1.8.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 (194) hide show
  1. package/README.md +8 -0
  2. package/dist/chunks/chunk.2IBWQADW.js +12 -0
  3. package/dist/chunks/chunk.2IBWQADW.js.map +7 -0
  4. package/dist/chunks/chunk.2KKPNUPU.js +110 -0
  5. package/dist/chunks/chunk.2KKPNUPU.js.map +7 -0
  6. package/dist/chunks/{chunk.FZ4XKET2.js → chunk.2XCLA4MQ.js} +2 -2
  7. package/dist/chunks/{chunk.AMTCNRDE.js → chunk.2Z2GYRLO.js} +2 -2
  8. package/dist/chunks/{chunk.7OGFJKHP.js → chunk.35PHCFSV.js} +7 -7
  9. package/dist/chunks/{chunk.PWYCVX32.js → chunk.4ZGN7AEC.js} +6 -6
  10. package/dist/chunks/{chunk.SE25XG6G.js → chunk.5TFG753C.js} +2 -2
  11. package/dist/chunks/{chunk.23XIIXFZ.js → chunk.6PWB7EUW.js} +2 -2
  12. package/dist/chunks/{chunk.NZ7AYZ7E.js → chunk.A2WGLZOL.js} +2 -2
  13. package/dist/chunks/{chunk.KQSLZDOW.js → chunk.AJWDVZRI.js} +19 -95
  14. package/dist/chunks/chunk.AJWDVZRI.js.map +7 -0
  15. package/dist/chunks/{chunk.VZ7S7YYN.js → chunk.AVTU2BGE.js} +2 -2
  16. package/dist/chunks/{chunk.HZO5IAUS.js → chunk.AWZ4FSAL.js} +7 -7
  17. package/dist/chunks/{chunk.5S3OJR6Z.js → chunk.B75SET3J.js} +4 -4
  18. package/dist/chunks/{chunk.SR2C7JNO.js → chunk.BGPAHVPK.js} +2 -2
  19. package/dist/chunks/{chunk.R5VB3GMN.js → chunk.COKV3ZN7.js} +2 -2
  20. package/dist/chunks/{chunk.IC6S5VNW.js → chunk.CUU2VBEZ.js} +2 -2
  21. package/dist/chunks/{chunk.AM34E33G.js → chunk.DAROCSFO.js} +4 -4
  22. package/dist/chunks/{chunk.FCGPI6ON.js → chunk.ERNEIORV.js} +4 -4
  23. package/dist/chunks/{chunk.BAAUH5DH.js → chunk.F3YEAZYJ.js} +2 -2
  24. package/dist/chunks/{chunk.2VJGG5SD.js → chunk.G66TSLVT.js} +7 -7
  25. package/dist/chunks/{chunk.5MD6EBSY.js → chunk.GUQN6XL4.js} +4 -4
  26. package/dist/chunks/chunk.GZVDP7WZ.js +541 -0
  27. package/dist/chunks/chunk.GZVDP7WZ.js.map +7 -0
  28. package/dist/chunks/{chunk.4OUJKHRJ.js → chunk.HNRD7DBS.js} +2 -2
  29. package/dist/chunks/{chunk.2PIMZJBX.js → chunk.HW5TASOL.js} +5 -5
  30. package/dist/chunks/{chunk.OUYVGVIY.js → chunk.JBHQJWOB.js} +5 -5
  31. package/dist/chunks/{chunk.HG5QC5EW.js → chunk.JSO3PKB4.js} +2 -2
  32. package/dist/chunks/{chunk.ZHJ6QEGW.js → chunk.K4ELZCXB.js} +2 -2
  33. package/dist/chunks/{chunk.LEVUN7II.js → chunk.KA7L2PMA.js} +5 -5
  34. package/dist/chunks/{chunk.R27TACBP.js → chunk.MB3YZTYP.js} +3 -3
  35. package/dist/chunks/{chunk.7K26RLTL.js → chunk.MRAXEK5D.js} +2 -2
  36. package/dist/chunks/{chunk.MDTK2XLX.js → chunk.NAAFLDZ3.js} +2 -2
  37. package/dist/chunks/chunk.NV7W5R6V.js +173 -0
  38. package/dist/chunks/chunk.NV7W5R6V.js.map +7 -0
  39. package/dist/chunks/{chunk.I7LFDXM4.js → chunk.NWWHBSV7.js} +2 -2
  40. package/dist/chunks/{chunk.GHCD7CUQ.js → chunk.OJUBVHIK.js} +2 -2
  41. package/dist/chunks/{chunk.BQG5LF7J.js → chunk.QAUTITK3.js} +2 -2
  42. package/dist/chunks/{chunk.DJOAQ4JU.js → chunk.QNDC5KWA.js} +43 -2
  43. package/dist/chunks/{chunk.OZF3DZSV.js → chunk.RS4Z4KDT.js} +5 -5
  44. package/dist/chunks/{chunk.SEQOINRC.js → chunk.RVFNEWM3.js} +2 -2
  45. package/dist/chunks/{chunk.HZXUXR2V.js → chunk.UG5FC6UD.js} +2 -2
  46. package/dist/chunks/{chunk.DYCZPZ6T.js → chunk.UVYPEAQZ.js} +5 -5
  47. package/dist/chunks/chunk.UYD2OVFV.js +83 -0
  48. package/dist/chunks/chunk.UYD2OVFV.js.map +7 -0
  49. package/dist/chunks/{chunk.DULBBZUA.js → chunk.WDX7XUUK.js} +3 -3
  50. package/dist/chunks/{chunk.DULBBZUA.js.map → chunk.WDX7XUUK.js.map} +1 -1
  51. package/dist/chunks/{chunk.YGZDEVFH.js → chunk.WP6T5CG2.js} +2 -2
  52. package/dist/chunks/{chunk.CFBIDJ72.js → chunk.XI6MSNHF.js} +3 -3
  53. package/dist/chunks/{chunk.I6GT4YUF.js → chunk.Y4QKFZLK.js} +6 -6
  54. package/dist/components/button/button.component.js +9 -9
  55. package/dist/components/button/button.custom.styles.js +1 -1
  56. package/dist/components/button/button.js +10 -10
  57. package/dist/components/button/button.styles.js +1 -1
  58. package/dist/components/button-group/button-group.component.js +3 -3
  59. package/dist/components/button-group/button-group.js +4 -4
  60. package/dist/components/button-group/button-group.styles.js +1 -1
  61. package/dist/components/checkbox/checkbox.component.js +8 -8
  62. package/dist/components/checkbox/checkbox.custom.styles.js +1 -1
  63. package/dist/components/checkbox/checkbox.js +9 -9
  64. package/dist/components/checkbox/checkbox.styles.js +1 -1
  65. package/dist/components/divider/divider.component.js +4 -4
  66. package/dist/components/divider/divider.custom.styles.js +1 -1
  67. package/dist/components/divider/divider.js +5 -5
  68. package/dist/components/divider/divider.styles.js +1 -1
  69. package/dist/components/drawer/drawer.component.d.ts +109 -0
  70. package/dist/components/drawer/drawer.component.js +28 -0
  71. package/dist/components/drawer/drawer.component.js.map +7 -0
  72. package/dist/components/drawer/drawer.custom.styles.d.ts +2 -0
  73. package/dist/components/drawer/drawer.custom.styles.js +8 -0
  74. package/dist/components/drawer/drawer.custom.styles.js.map +7 -0
  75. package/dist/components/drawer/drawer.d.ts +8 -0
  76. package/dist/components/drawer/drawer.js +29 -0
  77. package/dist/components/drawer/drawer.js.map +7 -0
  78. package/dist/components/drawer/drawer.styles.d.ts +2 -0
  79. package/dist/components/drawer/drawer.styles.js +10 -0
  80. package/dist/components/drawer/drawer.styles.js.map +7 -0
  81. package/dist/components/icon/icon.component.js +6 -6
  82. package/dist/components/icon/icon.custom.styles.js +1 -1
  83. package/dist/components/icon/icon.js +7 -7
  84. package/dist/components/icon/icon.styles.js +1 -1
  85. package/dist/components/icon/library.default.js +1 -1
  86. package/dist/components/icon/library.js +1 -1
  87. package/dist/components/icon/library.system.js +1 -1
  88. package/dist/components/icon-button/icon-button.component.js +7 -7
  89. package/dist/components/icon-button/icon-button.custom.styles.js +1 -1
  90. package/dist/components/icon-button/icon-button.js +8 -8
  91. package/dist/components/icon-button/icon-button.styles.js +1 -1
  92. package/dist/components/input/input.component.js +9 -9
  93. package/dist/components/input/input.custom.styles.js +1 -1
  94. package/dist/components/input/input.js +10 -10
  95. package/dist/components/input/input.styles.js +1 -1
  96. package/dist/components/optgroup/optgroup.component.js +5 -5
  97. package/dist/components/optgroup/optgroup.js +6 -6
  98. package/dist/components/optgroup/optgroup.styles.js +1 -1
  99. package/dist/components/option/option.component.js +7 -7
  100. package/dist/components/option/option.custom.styles.js +1 -1
  101. package/dist/components/option/option.js +8 -8
  102. package/dist/components/option/option.styles.js +1 -1
  103. package/dist/components/popup/popup.component.js +3 -3
  104. package/dist/components/popup/popup.styles.js +1 -1
  105. package/dist/components/radio/radio.component.js +7 -7
  106. package/dist/components/radio/radio.custom.styles.js +1 -1
  107. package/dist/components/radio/radio.js +8 -8
  108. package/dist/components/radio/radio.styles.js +1 -1
  109. package/dist/components/radio-button/radio-button.component.js +4 -4
  110. package/dist/components/radio-button/radio-button.js +5 -5
  111. package/dist/components/radio-button/radio-button.styles.js +1 -1
  112. package/dist/components/radio-group/radio-group.component.js +6 -6
  113. package/dist/components/radio-group/radio-group.custom.styles.js +1 -1
  114. package/dist/components/radio-group/radio-group.js +7 -7
  115. package/dist/components/radio-group/radio-group.styles.js +1 -1
  116. package/dist/components/select/select.component.js +14 -13
  117. package/dist/components/select/select.custom.styles.js +1 -1
  118. package/dist/components/select/select.js +15 -14
  119. package/dist/components/select/select.styles.js +1 -1
  120. package/dist/components/spinner/spinner.component.js +3 -3
  121. package/dist/components/spinner/spinner.styles.js +1 -1
  122. package/dist/components/switch/switch.component.js +5 -5
  123. package/dist/components/switch/switch.custom.styles.js +1 -1
  124. package/dist/components/switch/switch.js +6 -6
  125. package/dist/components/switch/switch.styles.js +1 -1
  126. package/dist/components/tag/tag.component.js +8 -8
  127. package/dist/components/tag/tag.custom.styles.js +1 -1
  128. package/dist/components/tag/tag.js +9 -9
  129. package/dist/components/tag/tag.styles.js +1 -1
  130. package/dist/components/textarea/textarea.component.js +5 -5
  131. package/dist/components/textarea/textarea.custom.styles.js +1 -1
  132. package/dist/components/textarea/textarea.js +6 -6
  133. package/dist/components/textarea/textarea.styles.js +1 -1
  134. package/dist/custom-elements.json +530 -120
  135. package/dist/events/events.d.ts +2 -0
  136. package/dist/events/syn-initial-focus.d.ts +6 -0
  137. package/dist/events/syn-request-close.d.ts +8 -0
  138. package/dist/internal/active-elements.d.ts +15 -0
  139. package/dist/internal/modal.d.ts +21 -0
  140. package/dist/internal/string.d.ts +2 -0
  141. package/dist/internal/tabbable.d.ts +9 -0
  142. package/dist/synergy-autoloader.js +1 -1
  143. package/dist/synergy.d.ts +1 -0
  144. package/dist/synergy.js +71 -63
  145. package/dist/themes/utility.css +29 -0
  146. package/dist/translations/de.js +1 -1
  147. package/dist/translations/en.js +1 -1
  148. package/dist/utilities/animation-registry.js +2 -2
  149. package/dist/utilities/base-path.js +1 -1
  150. package/dist/utilities/form.js +3 -3
  151. package/dist/utilities/icon-library.js +1 -1
  152. package/dist/utilities/localize.js +1 -1
  153. package/dist/vscode.html-custom-data.json +52 -10
  154. package/dist/web-types.json +154 -23
  155. package/package.json +28 -27
  156. package/dist/chunks/chunk.KQSLZDOW.js.map +0 -7
  157. /package/dist/chunks/{chunk.FZ4XKET2.js.map → chunk.2XCLA4MQ.js.map} +0 -0
  158. /package/dist/chunks/{chunk.AMTCNRDE.js.map → chunk.2Z2GYRLO.js.map} +0 -0
  159. /package/dist/chunks/{chunk.7OGFJKHP.js.map → chunk.35PHCFSV.js.map} +0 -0
  160. /package/dist/chunks/{chunk.PWYCVX32.js.map → chunk.4ZGN7AEC.js.map} +0 -0
  161. /package/dist/chunks/{chunk.SE25XG6G.js.map → chunk.5TFG753C.js.map} +0 -0
  162. /package/dist/chunks/{chunk.23XIIXFZ.js.map → chunk.6PWB7EUW.js.map} +0 -0
  163. /package/dist/chunks/{chunk.NZ7AYZ7E.js.map → chunk.A2WGLZOL.js.map} +0 -0
  164. /package/dist/chunks/{chunk.VZ7S7YYN.js.map → chunk.AVTU2BGE.js.map} +0 -0
  165. /package/dist/chunks/{chunk.HZO5IAUS.js.map → chunk.AWZ4FSAL.js.map} +0 -0
  166. /package/dist/chunks/{chunk.5S3OJR6Z.js.map → chunk.B75SET3J.js.map} +0 -0
  167. /package/dist/chunks/{chunk.SR2C7JNO.js.map → chunk.BGPAHVPK.js.map} +0 -0
  168. /package/dist/chunks/{chunk.R5VB3GMN.js.map → chunk.COKV3ZN7.js.map} +0 -0
  169. /package/dist/chunks/{chunk.IC6S5VNW.js.map → chunk.CUU2VBEZ.js.map} +0 -0
  170. /package/dist/chunks/{chunk.AM34E33G.js.map → chunk.DAROCSFO.js.map} +0 -0
  171. /package/dist/chunks/{chunk.FCGPI6ON.js.map → chunk.ERNEIORV.js.map} +0 -0
  172. /package/dist/chunks/{chunk.BAAUH5DH.js.map → chunk.F3YEAZYJ.js.map} +0 -0
  173. /package/dist/chunks/{chunk.2VJGG5SD.js.map → chunk.G66TSLVT.js.map} +0 -0
  174. /package/dist/chunks/{chunk.5MD6EBSY.js.map → chunk.GUQN6XL4.js.map} +0 -0
  175. /package/dist/chunks/{chunk.4OUJKHRJ.js.map → chunk.HNRD7DBS.js.map} +0 -0
  176. /package/dist/chunks/{chunk.2PIMZJBX.js.map → chunk.HW5TASOL.js.map} +0 -0
  177. /package/dist/chunks/{chunk.OUYVGVIY.js.map → chunk.JBHQJWOB.js.map} +0 -0
  178. /package/dist/chunks/{chunk.HG5QC5EW.js.map → chunk.JSO3PKB4.js.map} +0 -0
  179. /package/dist/chunks/{chunk.ZHJ6QEGW.js.map → chunk.K4ELZCXB.js.map} +0 -0
  180. /package/dist/chunks/{chunk.LEVUN7II.js.map → chunk.KA7L2PMA.js.map} +0 -0
  181. /package/dist/chunks/{chunk.R27TACBP.js.map → chunk.MB3YZTYP.js.map} +0 -0
  182. /package/dist/chunks/{chunk.7K26RLTL.js.map → chunk.MRAXEK5D.js.map} +0 -0
  183. /package/dist/chunks/{chunk.MDTK2XLX.js.map → chunk.NAAFLDZ3.js.map} +0 -0
  184. /package/dist/chunks/{chunk.I7LFDXM4.js.map → chunk.NWWHBSV7.js.map} +0 -0
  185. /package/dist/chunks/{chunk.GHCD7CUQ.js.map → chunk.OJUBVHIK.js.map} +0 -0
  186. /package/dist/chunks/{chunk.BQG5LF7J.js.map → chunk.QAUTITK3.js.map} +0 -0
  187. /package/dist/chunks/{chunk.DJOAQ4JU.js.map → chunk.QNDC5KWA.js.map} +0 -0
  188. /package/dist/chunks/{chunk.OZF3DZSV.js.map → chunk.RS4Z4KDT.js.map} +0 -0
  189. /package/dist/chunks/{chunk.SEQOINRC.js.map → chunk.RVFNEWM3.js.map} +0 -0
  190. /package/dist/chunks/{chunk.HZXUXR2V.js.map → chunk.UG5FC6UD.js.map} +0 -0
  191. /package/dist/chunks/{chunk.DYCZPZ6T.js.map → chunk.UVYPEAQZ.js.map} +0 -0
  192. /package/dist/chunks/{chunk.YGZDEVFH.js.map → chunk.WP6T5CG2.js.map} +0 -0
  193. /package/dist/chunks/{chunk.CFBIDJ72.js.map → chunk.XI6MSNHF.js.map} +0 -0
  194. /package/dist/chunks/{chunk.I6GT4YUF.js.map → chunk.Y4QKFZLK.js.map} +0 -0
@@ -6,9 +6,11 @@ export type * from './syn-clear.ts';
6
6
  export type * from './syn-error.ts';
7
7
  export type * from './syn-focus.ts';
8
8
  export type * from './syn-hide.ts';
9
+ export type * from './syn-initial-focus.ts';
9
10
  export type * from './syn-input.ts';
10
11
  export type * from './syn-invalid.ts';
11
12
  export type * from './syn-load.ts';
12
13
  export type * from './syn-remove.ts';
13
14
  export type * from './syn-reposition.ts';
15
+ export type * from './syn-request-close.ts';
14
16
  export type * from './syn-show.ts';
@@ -0,0 +1,6 @@
1
+ export type SynInitialFocusEvent = CustomEvent<Record<PropertyKey, never>>;
2
+ declare global {
3
+ interface GlobalEventHandlersEventMap {
4
+ 'syn-initial-focus': SynInitialFocusEvent;
5
+ }
6
+ }
@@ -0,0 +1,8 @@
1
+ export type SynRequestCloseEvent = CustomEvent<{
2
+ source: 'close-button' | 'keyboard' | 'overlay';
3
+ }>;
4
+ declare global {
5
+ interface GlobalEventHandlersEventMap {
6
+ 'syn-request-close': SynRequestCloseEvent;
7
+ }
8
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Use a generator so we can iterate and possibly break early.
3
+ * @example
4
+ * // to operate like a regular array. This kinda nullifies generator benefits, but worth knowing if you need the whole array.
5
+ * const allActiveElements = [...activeElements()]
6
+ *
7
+ * // Early return
8
+ * for (const activeElement of activeElements()) {
9
+ * if (<cond>) {
10
+ * break; // Break the loop, dont need to iterate over the whole array or store an array in memory!
11
+ * }
12
+ * }
13
+ */
14
+ export declare function activeElements(activeElement?: Element | null): Generator<Element>;
15
+ export declare function getDeepestActiveElement(): Element | undefined;
@@ -0,0 +1,21 @@
1
+ export default class Modal {
2
+ element: HTMLElement;
3
+ isExternalActivated: boolean;
4
+ tabDirection: 'forward' | 'backward';
5
+ currentFocus: HTMLElement | null;
6
+ constructor(element: HTMLElement);
7
+ /** Activates focus trapping. */
8
+ activate(): void;
9
+ /** Deactivates focus trapping. */
10
+ deactivate(): void;
11
+ /** Determines if this modal element is currently active or not. */
12
+ isActive(): boolean;
13
+ /** Activates external modal behavior and temporarily disables focus trapping. */
14
+ activateExternal(): void;
15
+ /** Deactivates external modal behavior and re-enables focus trapping. */
16
+ deactivateExternal(): void;
17
+ private checkFocus;
18
+ private handleFocusIn;
19
+ private handleKeyDown;
20
+ private handleKeyUp;
21
+ }
@@ -0,0 +1,2 @@
1
+ /** Converts the first letter of a string to uppercase */
2
+ export declare function uppercaseFirstLetter(string: string): string;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Returns the first and last bounding elements that are tabbable. This is more performant than checking every single
3
+ * element because it short-circuits after finding the first and last ones.
4
+ */
5
+ export declare function getTabbableBoundary(root: HTMLElement | ShadowRoot): {
6
+ start: HTMLElement;
7
+ end: HTMLElement;
8
+ };
9
+ export declare function getTabbableElements(root: HTMLElement | ShadowRoot): HTMLElement[];
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  getBasePath
3
3
  } from "./chunks/chunk.C7624ITA.js";
4
- import "./chunks/chunk.DJOAQ4JU.js";
4
+ import "./chunks/chunk.QNDC5KWA.js";
5
5
 
6
6
  // src/synergy-autoloader.ts
7
7
  var observer = new MutationObserver((mutations) => {
package/dist/synergy.d.ts CHANGED
@@ -2,6 +2,7 @@ export { default as SynButtonGroup } from './components/button-group/button-grou
2
2
  export { default as SynButton } from './components/button/button.js';
3
3
  export { default as SynCheckbox } from './components/checkbox/checkbox.js';
4
4
  export { default as SynDivider } from './components/divider/divider.js';
5
+ export { default as SynDrawer } from './components/drawer/drawer.js';
5
6
  export { default as SynIconButton } from './components/icon-button/icon-button.js';
6
7
  export { default as SynIcon } from './components/icon/icon.js';
7
8
  export { default as SynInput } from './components/input/input.js';
package/dist/synergy.js CHANGED
@@ -1,131 +1,139 @@
1
+ import {
2
+ textarea_default
3
+ } from "./chunks/chunk.BGPAHVPK.js";
1
4
  import {
2
5
  getFormControls,
3
6
  serialize
4
- } from "./chunks/chunk.HG5QC5EW.js";
7
+ } from "./chunks/chunk.JSO3PKB4.js";
5
8
  import "./chunks/chunk.NKIYFJN2.js";
6
9
  import {
7
- tag_default
8
- } from "./chunks/chunk.NZ7AYZ7E.js";
10
+ switch_default
11
+ } from "./chunks/chunk.RVFNEWM3.js";
9
12
  import {
10
- textarea_default
11
- } from "./chunks/chunk.SR2C7JNO.js";
12
- import "./chunks/chunk.LEVUN7II.js";
13
+ tag_default
14
+ } from "./chunks/chunk.A2WGLZOL.js";
15
+ import "./chunks/chunk.KA7L2PMA.js";
13
16
  import "./chunks/chunk.23HTU3YE.js";
14
17
  import "./chunks/chunk.YBIBWRKC.js";
15
- import {
16
- switch_default
17
- } from "./chunks/chunk.SEQOINRC.js";
18
- import "./chunks/chunk.OUYVGVIY.js";
19
- import "./chunks/chunk.MNMITYTH.js";
20
- import "./chunks/chunk.AFEABUNX.js";
21
- import {
22
- radio_group_default
23
- } from "./chunks/chunk.I7LFDXM4.js";
24
- import "./chunks/chunk.PWYCVX32.js";
25
- import "./chunks/chunk.4I6M5V6O.js";
26
- import "./chunks/chunk.F4MRQLNL.js";
27
18
  import {
28
19
  select_default
29
- } from "./chunks/chunk.GHCD7CUQ.js";
30
- import "./chunks/chunk.KQSLZDOW.js";
31
- import "./chunks/chunk.BQG5LF7J.js";
32
- import "./chunks/chunk.5MD6EBSY.js";
20
+ } from "./chunks/chunk.OJUBVHIK.js";
21
+ import "./chunks/chunk.AJWDVZRI.js";
22
+ import "./chunks/chunk.GUQN6XL4.js";
33
23
  import "./chunks/chunk.QHFGD6WW.js";
34
24
  import "./chunks/chunk.7W73A57K.js";
35
25
  import "./chunks/chunk.6XU6OLZ3.js";
36
26
  import "./chunks/chunk.OWMT6OL2.js";
27
+ import "./chunks/chunk.JBHQJWOB.js";
28
+ import "./chunks/chunk.MNMITYTH.js";
29
+ import "./chunks/chunk.AFEABUNX.js";
37
30
  import {
38
31
  radio_default
39
- } from "./chunks/chunk.R5VB3GMN.js";
40
- import "./chunks/chunk.OZF3DZSV.js";
41
- import "./chunks/chunk.JBYBQ5TQ.js";
42
- import "./chunks/chunk.V6VND4OF.js";
32
+ } from "./chunks/chunk.COKV3ZN7.js";
43
33
  import {
44
34
  radio_button_default
45
- } from "./chunks/chunk.MDTK2XLX.js";
46
- import "./chunks/chunk.5S3OJR6Z.js";
35
+ } from "./chunks/chunk.NAAFLDZ3.js";
36
+ import "./chunks/chunk.B75SET3J.js";
47
37
  import "./chunks/chunk.IKKMWFWH.js";
48
38
  import {
49
- optgroup_default
50
- } from "./chunks/chunk.IC6S5VNW.js";
51
- import "./chunks/chunk.2PIMZJBX.js";
52
- import "./chunks/chunk.KG52EHDB.js";
39
+ radio_group_default
40
+ } from "./chunks/chunk.NWWHBSV7.js";
41
+ import "./chunks/chunk.4ZGN7AEC.js";
42
+ import "./chunks/chunk.4I6M5V6O.js";
43
+ import "./chunks/chunk.F4MRQLNL.js";
53
44
  import {
54
45
  option_default
55
- } from "./chunks/chunk.SE25XG6G.js";
56
- import "./chunks/chunk.DYCZPZ6T.js";
57
- import "./chunks/chunk.W6V7TPGK.js";
58
- import "./chunks/chunk.3B24TYVN.js";
59
- import "./chunks/chunk.CFBIDJ72.js";
46
+ } from "./chunks/chunk.5TFG753C.js";
47
+ import "./chunks/chunk.XI6MSNHF.js";
60
48
  import "./chunks/chunk.JN7CLMQZ.js";
61
- import {
62
- icon_button_default
63
- } from "./chunks/chunk.HZXUXR2V.js";
64
- import "./chunks/chunk.AM34E33G.js";
65
- import "./chunks/chunk.2FN5DTS6.js";
66
- import "./chunks/chunk.OJF7KL44.js";
49
+ import "./chunks/chunk.RS4Z4KDT.js";
50
+ import "./chunks/chunk.JBYBQ5TQ.js";
51
+ import "./chunks/chunk.V6VND4OF.js";
67
52
  import {
68
53
  input_default
69
- } from "./chunks/chunk.23XIIXFZ.js";
70
- import "./chunks/chunk.2VJGG5SD.js";
54
+ } from "./chunks/chunk.6PWB7EUW.js";
55
+ import "./chunks/chunk.G66TSLVT.js";
71
56
  import "./chunks/chunk.EKOK7YPB.js";
72
57
  import "./chunks/chunk.JHXCBOUD.js";
73
58
  import "./chunks/chunk.2OLVTQ5P.js";
74
59
  import {
75
- divider_default
76
- } from "./chunks/chunk.YGZDEVFH.js";
60
+ optgroup_default
61
+ } from "./chunks/chunk.CUU2VBEZ.js";
62
+ import "./chunks/chunk.HW5TASOL.js";
63
+ import "./chunks/chunk.KG52EHDB.js";
64
+ import "./chunks/chunk.UVYPEAQZ.js";
65
+ import "./chunks/chunk.W6V7TPGK.js";
66
+ import "./chunks/chunk.3B24TYVN.js";
77
67
  import {
78
68
  icon_default
79
- } from "./chunks/chunk.BAAUH5DH.js";
69
+ } from "./chunks/chunk.F3YEAZYJ.js";
70
+ import {
71
+ icon_button_default
72
+ } from "./chunks/chunk.UG5FC6UD.js";
73
+ import {
74
+ divider_default
75
+ } from "./chunks/chunk.WP6T5CG2.js";
76
+ import {
77
+ drawer_default
78
+ } from "./chunks/chunk.2IBWQADW.js";
79
+ import "./chunks/chunk.GZVDP7WZ.js";
80
+ import "./chunks/chunk.2KKPNUPU.js";
81
+ import "./chunks/chunk.QAUTITK3.js";
82
+ import "./chunks/chunk.DAROCSFO.js";
83
+ import "./chunks/chunk.2FN5DTS6.js";
84
+ import "./chunks/chunk.OJF7KL44.js";
85
+ import "./chunks/chunk.NV7W5R6V.js";
86
+ import "./chunks/chunk.UYD2OVFV.js";
80
87
  import {
81
88
  button_group_default
82
- } from "./chunks/chunk.ZHJ6QEGW.js";
89
+ } from "./chunks/chunk.K4ELZCXB.js";
83
90
  import {
84
91
  checkbox_default
85
- } from "./chunks/chunk.7K26RLTL.js";
86
- import "./chunks/chunk.I6GT4YUF.js";
92
+ } from "./chunks/chunk.MRAXEK5D.js";
93
+ import "./chunks/chunk.Y4QKFZLK.js";
87
94
  import "./chunks/chunk.WFAJR3FN.js";
88
95
  import "./chunks/chunk.4CBN5LPQ.js";
89
96
  import "./chunks/chunk.2XZKXVMR.js";
90
- import "./chunks/chunk.FCGPI6ON.js";
97
+ import "./chunks/chunk.ERNEIORV.js";
91
98
  import "./chunks/chunk.PGCXJ2PT.js";
92
99
  import "./chunks/chunk.FA6V2WD6.js";
93
100
  import {
94
101
  button_default
95
- } from "./chunks/chunk.FZ4XKET2.js";
96
- import "./chunks/chunk.HZO5IAUS.js";
97
- import "./chunks/chunk.4OUJKHRJ.js";
102
+ } from "./chunks/chunk.2XCLA4MQ.js";
103
+ import "./chunks/chunk.AWZ4FSAL.js";
104
+ import "./chunks/chunk.HNRD7DBS.js";
98
105
  import "./chunks/chunk.N2I6HVX3.js";
99
106
  import "./chunks/chunk.XGXFE6IF.js";
100
107
  import "./chunks/chunk.LAB4YJYE.js";
101
108
  import "./chunks/chunk.A3SKDWCT.js";
102
- import "./chunks/chunk.AMTCNRDE.js";
103
- import "./chunks/chunk.7OGFJKHP.js";
104
- import "./chunks/chunk.RSONAU45.js";
105
- import "./chunks/chunk.PJO6TM3T.js";
109
+ import "./chunks/chunk.2Z2GYRLO.js";
110
+ import "./chunks/chunk.35PHCFSV.js";
106
111
  import {
107
112
  registerIconLibrary,
108
113
  unregisterIconLibrary
109
114
  } from "./chunks/chunk.JRXQK6LG.js";
110
115
  import "./chunks/chunk.6C4JXZZN.js";
111
116
  import "./chunks/chunk.5AAIHRMI.js";
112
- import "./chunks/chunk.VZ7S7YYN.js";
117
+ import "./chunks/chunk.RSONAU45.js";
118
+ import "./chunks/chunk.PJO6TM3T.js";
119
+ import "./chunks/chunk.AVTU2BGE.js";
113
120
  import {
114
121
  getBasePath,
115
122
  setBasePath
116
123
  } from "./chunks/chunk.C7624ITA.js";
117
124
  import "./chunks/chunk.OJ4KOC7R.js";
118
125
  import "./chunks/chunk.K55MKNUR.js";
119
- import "./chunks/chunk.R27TACBP.js";
120
- import "./chunks/chunk.DULBBZUA.js";
126
+ import "./chunks/chunk.MB3YZTYP.js";
127
+ import "./chunks/chunk.WDX7XUUK.js";
121
128
  import "./chunks/chunk.4ZURABYO.js";
122
129
  import "./chunks/chunk.O7USYXBT.js";
123
- import "./chunks/chunk.DJOAQ4JU.js";
130
+ import "./chunks/chunk.QNDC5KWA.js";
124
131
  export {
125
132
  button_default as SynButton,
126
133
  button_group_default as SynButtonGroup,
127
134
  checkbox_default as SynCheckbox,
128
135
  divider_default as SynDivider,
136
+ drawer_default as SynDrawer,
129
137
  icon_default as SynIcon,
130
138
  icon_button_default as SynIconButton,
131
139
  input_default as SynInput,
@@ -0,0 +1,29 @@
1
+ /*
2
+ * This file contains utility classes that can't be contained in a component and must be applied to the light DOM. None
3
+ * of the rules in this stylesheet should target component tags or HTML tags, and all classes *must* start with ".syn-"
4
+ * to reduce the possibility of collisions.
5
+ */
6
+
7
+ .syn-scroll-lock {
8
+ overflow: hidden !important;
9
+ padding-right: var(--syn-scroll-lock-size) !important;
10
+ }
11
+
12
+ .syn-toast-stack {
13
+ inset-inline-end: 0;
14
+ max-height: 100%;
15
+ max-width: 100%;
16
+ overflow: auto;
17
+ position: fixed;
18
+ top: 0;
19
+ width: 28rem;
20
+ z-index: var(--syn-z-index-toast);
21
+ }
22
+
23
+ .syn-toast-stack syn-alert {
24
+ margin: var(--syn-spacing-medium);
25
+ }
26
+
27
+ .syn-toast-stack syn-alert::part(base) {
28
+ box-shadow: var(--syn-shadow-large);
29
+ }
@@ -2,7 +2,7 @@ import {
2
2
  registerTranslation
3
3
  } from "../chunks/chunk.LAB4YJYE.js";
4
4
  import "../chunks/chunk.A3SKDWCT.js";
5
- import "../chunks/chunk.DJOAQ4JU.js";
5
+ import "../chunks/chunk.QNDC5KWA.js";
6
6
 
7
7
  // src/translations/de.ts
8
8
  var translation = {
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  en_default
3
3
  } from "../chunks/chunk.A3SKDWCT.js";
4
- import "../chunks/chunk.DJOAQ4JU.js";
4
+ import "../chunks/chunk.QNDC5KWA.js";
5
5
  export {
6
6
  en_default as default
7
7
  };
@@ -2,8 +2,8 @@ import {
2
2
  getAnimation,
3
3
  setAnimation,
4
4
  setDefaultAnimation
5
- } from "../chunks/chunk.BQG5LF7J.js";
6
- import "../chunks/chunk.DJOAQ4JU.js";
5
+ } from "../chunks/chunk.QAUTITK3.js";
6
+ import "../chunks/chunk.QNDC5KWA.js";
7
7
  export {
8
8
  getAnimation,
9
9
  setAnimation,
@@ -2,7 +2,7 @@ import {
2
2
  getBasePath,
3
3
  setBasePath
4
4
  } from "../chunks/chunk.C7624ITA.js";
5
- import "../chunks/chunk.DJOAQ4JU.js";
5
+ import "../chunks/chunk.QNDC5KWA.js";
6
6
  export {
7
7
  getBasePath,
8
8
  setBasePath
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  getFormControls,
3
3
  serialize
4
- } from "../chunks/chunk.HG5QC5EW.js";
5
- import "../chunks/chunk.AMTCNRDE.js";
6
- import "../chunks/chunk.DJOAQ4JU.js";
4
+ } from "../chunks/chunk.JSO3PKB4.js";
5
+ import "../chunks/chunk.2Z2GYRLO.js";
6
+ import "../chunks/chunk.QNDC5KWA.js";
7
7
  export {
8
8
  getFormControls,
9
9
  serialize
@@ -6,7 +6,7 @@ import {
6
6
  import "../chunks/chunk.6C4JXZZN.js";
7
7
  import "../chunks/chunk.5AAIHRMI.js";
8
8
  import "../chunks/chunk.C7624ITA.js";
9
- import "../chunks/chunk.DJOAQ4JU.js";
9
+ import "../chunks/chunk.QNDC5KWA.js";
10
10
  export {
11
11
  registerIconLibrary,
12
12
  unregisterIconLibrary
@@ -3,7 +3,7 @@ import {
3
3
  registerTranslation
4
4
  } from "../chunks/chunk.LAB4YJYE.js";
5
5
  import "../chunks/chunk.A3SKDWCT.js";
6
- import "../chunks/chunk.DJOAQ4JU.js";
6
+ import "../chunks/chunk.QNDC5KWA.js";
7
7
  export {
8
8
  LocalizeController,
9
9
  registerTranslation
@@ -131,6 +131,23 @@
131
131
  }
132
132
  ]
133
133
  },
134
+ {
135
+ "name": "syn-button-group",
136
+ "description": "Button groups can be used to group related buttons into sections.\n---\n\n\n### **Slots:**\n - _default_ - One or more `<syn-button>` elements to display in the button group.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
137
+ "attributes": [
138
+ {
139
+ "name": "label",
140
+ "description": "A label to use for the button group. This won't be displayed on the screen, but it will be announced by assistive\ndevices when interacting with the control and is strongly recommended.",
141
+ "values": []
142
+ }
143
+ ],
144
+ "references": [
145
+ {
146
+ "name": "Documentation",
147
+ "url": "https://synergy.style/components/button-group"
148
+ }
149
+ ]
150
+ },
134
151
  {
135
152
  "name": "syn-checkbox",
136
153
  "description": "Checkboxes allow the user to toggle an option on or off.\n---\n\n\n### **Events:**\n - **syn-blur** - Emitted when the checkbox loses focus.\n- **syn-change** - Emitted when the checked state changes.\n- **syn-focus** - Emitted when the checkbox gains focus.\n- **syn-input** - Emitted when the checkbox receives input.\n- **syn-invalid** - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n\n### **Methods:**\n - **click()** - Simulates a click on the checkbox.\n- **focus(options: _FocusOptions_)** - Sets focus on the checkbox.\n- **blur()** - Removes focus from the checkbox.\n- **checkValidity()** - Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid.\n- **getForm(): _HTMLFormElement | null_** - Gets the associated form, if one exists.\n- **reportValidity()** - Checks for validity and shows the browser's validation message if the control is invalid.\n- **setCustomValidity(message: _string_)** - Sets a custom validation message. The value provided will be shown to the user when the form is submitted. To clear\nthe custom validation message, call this method with an empty string.\n\n### **Slots:**\n - _default_ - The checkbox's label.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.\n- **control** - The square container that wraps the checkbox's checked state.\n- **control--checked** - Matches the control part when the checkbox is checked.\n- **control--indeterminate** - Matches the control part when the checkbox is indeterminate.\n- **checked-icon** - The checked icon, an `<syn-icon>` element.\n- **indeterminate-icon** - The indeterminate icon, an `<syn-icon>` element.\n- **label** - The container that wraps the checkbox's label.",
@@ -189,36 +206,61 @@
189
206
  ]
190
207
  },
191
208
  {
192
- "name": "syn-button-group",
193
- "description": "Button groups can be used to group related buttons into sections.\n---\n\n\n### **Slots:**\n - _default_ - One or more `<syn-button>` elements to display in the button group.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
209
+ "name": "syn-divider",
210
+ "description": "Dividers are used to visually separate or group elements.\n---\n\n\n### **CSS Properties:**\n - **--color** - The color of the divider. _(default: undefined)_\n- **--width** - The width of the divider. _(default: undefined)_\n- **--spacing** - The spacing of the divider. _(default: undefined)_",
194
211
  "attributes": [
195
212
  {
196
- "name": "label",
197
- "description": "A label to use for the button group. This won't be displayed on the screen, but it will be announced by assistive\ndevices when interacting with the control and is strongly recommended.",
213
+ "name": "vertical",
214
+ "description": "Draws the divider in a vertical orientation.",
198
215
  "values": []
199
216
  }
200
217
  ],
201
218
  "references": [
202
219
  {
203
220
  "name": "Documentation",
204
- "url": "https://synergy.style/components/button-group"
221
+ "url": "https://synergy.style/components/divider"
205
222
  }
206
223
  ]
207
224
  },
208
225
  {
209
- "name": "syn-divider",
210
- "description": "Dividers are used to visually separate or group elements.\n---\n\n\n### **CSS Properties:**\n - **--color** - The color of the divider. _(default: undefined)_\n- **--width** - The width of the divider. _(default: undefined)_\n- **--spacing** - The spacing of the divider. _(default: undefined)_",
226
+ "name": "syn-drawer",
227
+ "description": "Drawers slide in from a container to expose additional options and information.\n---\n\n\n### **Events:**\n - **syn-show** - Emitted when the drawer opens.\n- **syn-after-show** - Emitted after the drawer opens and all animations are complete.\n- **syn-hide** - Emitted when the drawer closes.\n- **syn-after-hide** - Emitted after the drawer closes and all animations are complete.\n- **syn-initial-focus** - Emitted when the drawer opens and is ready to receive focus. Calling `event.preventDefault()` will prevent focusing and allow you to set it on a different element, such as an input.\n- **syn-request-close** - Emitted when the user attempts to close the drawer by clicking the close button, clicking the overlay, or pressing escape. Calling `event.preventDefault()` will keep the drawer open. Avoid using this unless closing the drawer will result in destructive behavior such as data loss.\n\n### **Methods:**\n - **show()** - Shows the drawer.\n- **hide()** - Hides the drawer\n\n### **Slots:**\n - _default_ - The drawer's main content.\n- **label** - The drawer's label. Alternatively, you can use the `label` attribute.\n- **header-actions** - Optional actions to add to the header. Works best with `<syn-icon-button>`.\n- **footer** - The drawer's footer, usually one or more buttons representing various options.\n\n### **CSS Properties:**\n - **--size** - The preferred size of the drawer. This will be applied to the drawer's width or height depending on its `placement`. Note that the drawer will shrink to accommodate smaller screens. _(default: undefined)_\n- **--header-spacing** - The amount of padding to use for the header. _(default: undefined)_\n- **--body-spacing** - The amount of padding to use for the body. _(default: undefined)_\n- **--footer-spacing** - The amount of padding to use for the footer. _(default: undefined)_\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.\n- **overlay** - The overlay that covers the screen behind the drawer.\n- **panel** - The drawer's panel (where the drawer and its content are rendered).\n- **header** - The drawer's header. This element wraps the title and header actions.\n- **header-actions** - Optional actions to add to the header. Works best with `<syn-icon-button>`.\n- **title** - The drawer's title.\n- **close-button** - The close button, an `<syn-icon-button>`.\n- **close-button__base** - The close button's exported `base` part.\n- **body** - The drawer's body.\n- **footer** - The drawer's footer.",
211
228
  "attributes": [
212
229
  {
213
- "name": "vertical",
214
- "description": "Draws the divider in a vertical orientation.",
230
+ "name": "open",
231
+ "description": "Indicates whether or not the drawer is open. You can toggle this attribute to show and hide the drawer, or you can\nuse the `show()` and `hide()` methods and this attribute will reflect the drawer's open state.",
232
+ "values": []
233
+ },
234
+ {
235
+ "name": "label",
236
+ "description": "The drawer's label as displayed in the header. You should always include a relevant label even when using\n`no-header`, as it is required for proper accessibility. If you need to display HTML, use the `label` slot instead.",
237
+ "values": []
238
+ },
239
+ {
240
+ "name": "placement",
241
+ "description": "The direction from which the drawer will open.",
242
+ "values": [
243
+ { "name": "top" },
244
+ { "name": "end" },
245
+ { "name": "bottom" },
246
+ { "name": "start" }
247
+ ]
248
+ },
249
+ {
250
+ "name": "contained",
251
+ "description": "By default, the drawer slides out of its containing block (usually the viewport). To make the drawer slide out of\nits parent element, set this attribute and add `position: relative` to the parent.",
252
+ "values": []
253
+ },
254
+ {
255
+ "name": "no-header",
256
+ "description": "Removes the header. This will also remove the default close button, so please ensure you provide an easy,\naccessible way for users to dismiss the drawer.",
215
257
  "values": []
216
258
  }
217
259
  ],
218
260
  "references": [
219
261
  {
220
262
  "name": "Documentation",
221
- "url": "https://synergy.style/components/divider"
263
+ "url": "https://synergy.style/components/drawer"
222
264
  }
223
265
  ]
224
266
  },