@synergy-design-system/components 1.0.0-main.13 → 1.0.0-main.14

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 (127) hide show
  1. package/dist/chunks/{chunk.J44T4LO6.js → chunk.23HTU3YE.js} +4 -4
  2. package/dist/chunks/{chunk.FLF2E2W4.js → chunk.2MPTR6IQ.js} +7 -7
  3. package/dist/chunks/{chunk.MFFJYORB.js → chunk.4CBN5LPQ.js} +4 -4
  4. package/dist/chunks/{chunk.UFEBKPYW.js → chunk.4CPH57PN.js} +2 -2
  5. package/dist/chunks/{chunk.UFEBKPYW.js.map → chunk.4CPH57PN.js.map} +1 -1
  6. package/dist/chunks/chunk.4I6M5V6O.js +56 -0
  7. package/dist/chunks/chunk.4I6M5V6O.js.map +7 -0
  8. package/dist/chunks/{chunk.7QGGFKPO.js → chunk.4OPZ7M2M.js} +8 -8
  9. package/dist/chunks/chunk.4ZURABYO.js +24 -0
  10. package/dist/chunks/chunk.4ZURABYO.js.map +7 -0
  11. package/dist/chunks/{chunk.SQTGI355.js → chunk.7UOMTJPT.js} +8 -8
  12. package/dist/chunks/{chunk.MMNWMRST.js → chunk.AULPKG2K.js} +2 -2
  13. package/dist/chunks/chunk.F4MRQLNL.js +25 -0
  14. package/dist/chunks/chunk.F4MRQLNL.js.map +7 -0
  15. package/dist/chunks/chunk.FOASOAQU.js +12 -0
  16. package/dist/chunks/chunk.FOASOAQU.js.map +7 -0
  17. package/dist/chunks/chunk.FUY24CRJ.js +127 -0
  18. package/dist/chunks/chunk.FUY24CRJ.js.map +7 -0
  19. package/dist/chunks/chunk.FVF5BUAX.js +86 -0
  20. package/dist/chunks/chunk.FVF5BUAX.js.map +7 -0
  21. package/dist/chunks/{chunk.LJVC6UEV.js → chunk.JBK2MO2R.js} +7 -7
  22. package/dist/chunks/chunk.JBYBQ5TQ.js +132 -0
  23. package/dist/chunks/chunk.JBYBQ5TQ.js.map +7 -0
  24. package/dist/chunks/{chunk.VNC7HKGP.js → chunk.JHXCBOUD.js} +2 -2
  25. package/dist/chunks/{chunk.VNC7HKGP.js.map → chunk.JHXCBOUD.js.map} +1 -1
  26. package/dist/chunks/chunk.JVQAUENN.js +351 -0
  27. package/dist/chunks/chunk.JVQAUENN.js.map +7 -0
  28. package/dist/chunks/{chunk.FKB4BI2F.js → chunk.KWKQLGGC.js} +2 -2
  29. package/dist/chunks/{chunk.NXKZDAMQ.js → chunk.LWBUJBAK.js} +2 -2
  30. package/dist/chunks/{chunk.T5JJNDG6.js → chunk.N7RYRY7D.js} +2 -2
  31. package/dist/chunks/{chunk.HOGDOKQS.js → chunk.NUQ6NORO.js} +5 -5
  32. package/dist/chunks/chunk.OVVMSN4D.js +37 -0
  33. package/dist/chunks/chunk.OVVMSN4D.js.map +7 -0
  34. package/dist/chunks/{chunk.WANL6A7U.js → chunk.OXUFFH57.js} +4 -4
  35. package/dist/chunks/{chunk.WDCAHRYG.js → chunk.P2LNG2PZ.js} +4 -2
  36. package/dist/chunks/chunk.PS3OVBUX.js +111 -0
  37. package/dist/chunks/chunk.PS3OVBUX.js.map +7 -0
  38. package/dist/chunks/chunk.Q55ULCHV.js +12 -0
  39. package/dist/chunks/chunk.Q55ULCHV.js.map +7 -0
  40. package/dist/chunks/{chunk.KALIQJUH.js → chunk.USYEVNFG.js} +5 -5
  41. package/dist/chunks/chunk.UYGJ3ZOA.js +12 -0
  42. package/dist/chunks/chunk.UYGJ3ZOA.js.map +7 -0
  43. package/dist/chunks/chunk.V6VND4OF.js +49 -0
  44. package/dist/chunks/chunk.V6VND4OF.js.map +7 -0
  45. package/dist/chunks/{chunk.TKXG7VM3.js → chunk.X3XOXXN3.js} +2 -2
  46. package/dist/chunks/{chunk.WTCUSH7V.js → chunk.Z3RZUTQU.js} +2 -2
  47. package/dist/chunks/chunk.ZXJWGKP4.js +12 -0
  48. package/dist/chunks/chunk.ZXJWGKP4.js.map +7 -0
  49. package/dist/components/button/button.component.js +9 -9
  50. package/dist/components/button/button.js +10 -10
  51. package/dist/components/button-group/button-group.component.d.ts +28 -0
  52. package/dist/components/button-group/button-group.component.js +11 -0
  53. package/dist/components/button-group/button-group.component.js.map +7 -0
  54. package/dist/components/button-group/button-group.d.ts +8 -0
  55. package/dist/components/button-group/button-group.js +12 -0
  56. package/dist/components/button-group/button-group.js.map +7 -0
  57. package/dist/components/button-group/button-group.styles.d.ts +2 -0
  58. package/dist/components/button-group/button-group.styles.js +9 -0
  59. package/dist/components/button-group/button-group.styles.js.map +7 -0
  60. package/dist/components/checkbox/checkbox.component.js +7 -7
  61. package/dist/components/checkbox/checkbox.js +8 -8
  62. package/dist/components/checkbox/checkbox.styles.js +2 -2
  63. package/dist/components/icon/icon.component.js +3 -3
  64. package/dist/components/icon/icon.js +4 -4
  65. package/dist/components/input/input.component.js +8 -8
  66. package/dist/components/input/input.js +9 -9
  67. package/dist/components/input/input.styles.js +2 -2
  68. package/dist/components/radio/radio.component.d.ts +53 -0
  69. package/dist/components/radio/radio.component.js +19 -0
  70. package/dist/components/radio/radio.component.js.map +7 -0
  71. package/dist/components/radio/radio.custom.styles.d.ts +2 -0
  72. package/dist/components/radio/radio.custom.styles.js +8 -0
  73. package/dist/components/radio/radio.custom.styles.js.map +7 -0
  74. package/dist/components/radio/radio.d.ts +8 -0
  75. package/dist/components/radio/radio.js +20 -0
  76. package/dist/components/radio/radio.js.map +7 -0
  77. package/dist/components/radio/radio.styles.d.ts +2 -0
  78. package/dist/components/radio/radio.styles.js +10 -0
  79. package/dist/components/radio/radio.styles.js.map +7 -0
  80. package/dist/components/radio-button/radio-button.component.d.ts +53 -0
  81. package/dist/components/radio-button/radio-button.component.js +15 -0
  82. package/dist/components/radio-button/radio-button.component.js.map +7 -0
  83. package/dist/components/radio-button/radio-button.d.ts +8 -0
  84. package/dist/components/radio-button/radio-button.js +16 -0
  85. package/dist/components/radio-button/radio-button.js.map +7 -0
  86. package/dist/components/radio-button/radio-button.styles.d.ts +2 -0
  87. package/dist/components/radio-button/radio-button.styles.js +11 -0
  88. package/dist/components/radio-button/radio-button.styles.js.map +7 -0
  89. package/dist/components/radio-group/radio-group.component.d.ts +89 -0
  90. package/dist/components/radio-group/radio-group.component.js +18 -0
  91. package/dist/components/radio-group/radio-group.component.js.map +7 -0
  92. package/dist/components/radio-group/radio-group.custom.styles.d.ts +2 -0
  93. package/dist/components/radio-group/radio-group.custom.styles.js +8 -0
  94. package/dist/components/radio-group/radio-group.custom.styles.js.map +7 -0
  95. package/dist/components/radio-group/radio-group.d.ts +8 -0
  96. package/dist/components/radio-group/radio-group.js +19 -0
  97. package/dist/components/radio-group/radio-group.js.map +7 -0
  98. package/dist/components/radio-group/radio-group.styles.d.ts +2 -0
  99. package/dist/components/radio-group/radio-group.styles.js +11 -0
  100. package/dist/components/radio-group/radio-group.styles.js.map +7 -0
  101. package/dist/components/spinner/spinner.component.js +3 -3
  102. package/dist/components/textarea/textarea.component.js +6 -6
  103. package/dist/components/textarea/textarea.js +7 -7
  104. package/dist/components/textarea/textarea.styles.js +2 -2
  105. package/dist/custom-elements.json +1799 -809
  106. package/dist/synergy.d.ts +4 -0
  107. package/dist/synergy.js +53 -27
  108. package/dist/utilities/form.js +2 -2
  109. package/dist/vscode.html-custom-data.json +162 -32
  110. package/dist/web-types.json +363 -72
  111. package/package.json +2 -2
  112. /package/dist/chunks/{chunk.J44T4LO6.js.map → chunk.23HTU3YE.js.map} +0 -0
  113. /package/dist/chunks/{chunk.FLF2E2W4.js.map → chunk.2MPTR6IQ.js.map} +0 -0
  114. /package/dist/chunks/{chunk.MFFJYORB.js.map → chunk.4CBN5LPQ.js.map} +0 -0
  115. /package/dist/chunks/{chunk.7QGGFKPO.js.map → chunk.4OPZ7M2M.js.map} +0 -0
  116. /package/dist/chunks/{chunk.SQTGI355.js.map → chunk.7UOMTJPT.js.map} +0 -0
  117. /package/dist/chunks/{chunk.MMNWMRST.js.map → chunk.AULPKG2K.js.map} +0 -0
  118. /package/dist/chunks/{chunk.LJVC6UEV.js.map → chunk.JBK2MO2R.js.map} +0 -0
  119. /package/dist/chunks/{chunk.FKB4BI2F.js.map → chunk.KWKQLGGC.js.map} +0 -0
  120. /package/dist/chunks/{chunk.NXKZDAMQ.js.map → chunk.LWBUJBAK.js.map} +0 -0
  121. /package/dist/chunks/{chunk.T5JJNDG6.js.map → chunk.N7RYRY7D.js.map} +0 -0
  122. /package/dist/chunks/{chunk.HOGDOKQS.js.map → chunk.NUQ6NORO.js.map} +0 -0
  123. /package/dist/chunks/{chunk.WANL6A7U.js.map → chunk.OXUFFH57.js.map} +0 -0
  124. /package/dist/chunks/{chunk.WDCAHRYG.js.map → chunk.P2LNG2PZ.js.map} +0 -0
  125. /package/dist/chunks/{chunk.KALIQJUH.js.map → chunk.USYEVNFG.js.map} +0 -0
  126. /package/dist/chunks/{chunk.TKXG7VM3.js.map → chunk.X3XOXXN3.js.map} +0 -0
  127. /package/dist/chunks/{chunk.WTCUSH7V.js.map → chunk.Z3RZUTQU.js.map} +0 -0
package/dist/synergy.d.ts CHANGED
@@ -1,7 +1,11 @@
1
+ export { default as SynButtonGroup } from './components/button-group/button-group.js';
1
2
  export { default as SynButton } from './components/button/button.js';
2
3
  export { default as SynCheckbox } from './components/checkbox/checkbox.js';
3
4
  export { default as SynIcon } from './components/icon/icon.js';
4
5
  export { default as SynInput } from './components/input/input.js';
6
+ export { default as SynRadioButton } from './components/radio-button/radio-button.js';
7
+ export { default as SynRadioGroup } from './components/radio-group/radio-group.js';
8
+ export { default as SynRadio } from './components/radio/radio.js';
5
9
  export { default as SynTextarea } from './components/textarea/textarea.js';
6
10
  export * from './utilities/form.js';
7
11
  export * from './events/events.js';
package/dist/synergy.js CHANGED
@@ -1,57 +1,83 @@
1
- import {
2
- textarea_default
3
- } from "./chunks/chunk.T5JJNDG6.js";
4
1
  import {
5
2
  getFormControls,
6
3
  serialize
7
- } from "./chunks/chunk.WTCUSH7V.js";
4
+ } from "./chunks/chunk.Z3RZUTQU.js";
5
+ import {
6
+ radio_group_default
7
+ } from "./chunks/chunk.FOASOAQU.js";
8
+ import {
9
+ textarea_default
10
+ } from "./chunks/chunk.N7RYRY7D.js";
11
+ import "./chunks/chunk.2MPTR6IQ.js";
12
+ import "./chunks/chunk.23HTU3YE.js";
13
+ import "./chunks/chunk.YBIBWRKC.js";
14
+ import {
15
+ radio_default
16
+ } from "./chunks/chunk.UYGJ3ZOA.js";
17
+ import {
18
+ radio_button_default
19
+ } from "./chunks/chunk.Q55ULCHV.js";
20
+ import "./chunks/chunk.FUY24CRJ.js";
21
+ import "./chunks/chunk.OVVMSN4D.js";
22
+ import "./chunks/chunk.JVQAUENN.js";
23
+ import "./chunks/chunk.4I6M5V6O.js";
24
+ import "./chunks/chunk.F4MRQLNL.js";
8
25
  import {
9
26
  input_default
10
- } from "./chunks/chunk.FKB4BI2F.js";
11
- import "./chunks/chunk.SQTGI355.js";
12
- import "./chunks/chunk.WANL6A7U.js";
27
+ } from "./chunks/chunk.KWKQLGGC.js";
28
+ import "./chunks/chunk.7UOMTJPT.js";
29
+ import "./chunks/chunk.OXUFFH57.js";
30
+ import "./chunks/chunk.JHXCBOUD.js";
13
31
  import "./chunks/chunk.W46CFM2R.js";
14
- import "./chunks/chunk.FLF2E2W4.js";
15
- import "./chunks/chunk.J44T4LO6.js";
16
- import "./chunks/chunk.VNC7HKGP.js";
17
- import "./chunks/chunk.YBIBWRKC.js";
32
+ import "./chunks/chunk.PS3OVBUX.js";
33
+ import "./chunks/chunk.JBYBQ5TQ.js";
34
+ import "./chunks/chunk.V6VND4OF.js";
35
+ import {
36
+ button_group_default
37
+ } from "./chunks/chunk.ZXJWGKP4.js";
18
38
  import {
19
39
  checkbox_default
20
- } from "./chunks/chunk.MMNWMRST.js";
40
+ } from "./chunks/chunk.AULPKG2K.js";
41
+ import "./chunks/chunk.NUQ6NORO.js";
42
+ import "./chunks/chunk.WFAJR3FN.js";
43
+ import "./chunks/chunk.4CBN5LPQ.js";
44
+ import "./chunks/chunk.2XZKXVMR.js";
21
45
  import {
22
46
  icon_default
23
- } from "./chunks/chunk.NXKZDAMQ.js";
47
+ } from "./chunks/chunk.LWBUJBAK.js";
24
48
  import {
25
49
  button_default
26
- } from "./chunks/chunk.TKXG7VM3.js";
27
- import "./chunks/chunk.7QGGFKPO.js";
28
- import "./chunks/chunk.KALIQJUH.js";
50
+ } from "./chunks/chunk.X3XOXXN3.js";
51
+ import "./chunks/chunk.4OPZ7M2M.js";
52
+ import "./chunks/chunk.USYEVNFG.js";
53
+ import "./chunks/chunk.N2I6HVX3.js";
29
54
  import "./chunks/chunk.R6VNLE6N.js";
30
55
  import "./chunks/chunk.A3SKDWCT.js";
31
- import "./chunks/chunk.N2I6HVX3.js";
32
56
  import "./chunks/chunk.XGXFE6IF.js";
33
- import "./chunks/chunk.YTS5TRJZ.js";
34
- import "./chunks/chunk.FVSP4LXX.js";
35
- import "./chunks/chunk.HOGDOKQS.js";
36
- import "./chunks/chunk.WFAJR3FN.js";
37
- import "./chunks/chunk.MFFJYORB.js";
38
- import "./chunks/chunk.WDCAHRYG.js";
39
- import "./chunks/chunk.LJVC6UEV.js";
57
+ import "./chunks/chunk.P2LNG2PZ.js";
58
+ import "./chunks/chunk.JBK2MO2R.js";
40
59
  import "./chunks/chunk.VZ7S7YYN.js";
41
- import "./chunks/chunk.UFEBKPYW.js";
42
- import "./chunks/chunk.BREU4ILT.js";
43
60
  import "./chunks/chunk.5OIEI73E.js";
44
61
  import "./chunks/chunk.6C4JXZZN.js";
45
62
  import "./chunks/chunk.U7ZJ22QM.js";
63
+ import "./chunks/chunk.BREU4ILT.js";
46
64
  import "./chunks/chunk.C7624ITA.js";
65
+ import "./chunks/chunk.YTS5TRJZ.js";
66
+ import "./chunks/chunk.FVSP4LXX.js";
67
+ import "./chunks/chunk.FVF5BUAX.js";
68
+ import "./chunks/chunk.4CPH57PN.js";
69
+ import "./chunks/chunk.4ZURABYO.js";
47
70
  import "./chunks/chunk.O7USYXBT.js";
48
- import "./chunks/chunk.2XZKXVMR.js";
49
71
  import "./chunks/chunk.DJOAQ4JU.js";
50
72
  export {
51
73
  button_default as SynButton,
74
+ button_group_default as SynButtonGroup,
52
75
  checkbox_default as SynCheckbox,
53
76
  icon_default as SynIcon,
54
77
  input_default as SynInput,
78
+ radio_default as SynRadio,
79
+ radio_button_default as SynRadioButton,
80
+ radio_group_default as SynRadioGroup,
55
81
  textarea_default as SynTextarea,
56
82
  getFormControls,
57
83
  serialize
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  getFormControls,
3
3
  serialize
4
- } from "../chunks/chunk.WTCUSH7V.js";
5
- import "../chunks/chunk.WDCAHRYG.js";
4
+ } from "../chunks/chunk.Z3RZUTQU.js";
5
+ import "../chunks/chunk.P2LNG2PZ.js";
6
6
  import "../chunks/chunk.DJOAQ4JU.js";
7
7
  export {
8
8
  getFormControls,
@@ -131,38 +131,6 @@
131
131
  }
132
132
  ]
133
133
  },
134
- {
135
- "name": "syn-icon",
136
- "description": "Icons are symbols that can be used to represent various options within an application.\n---\n\n\n### **Events:**\n - **syn-load** - Emitted when the icon has loaded. When using `spriteSheet: true` this will not emit.\n- **syn-error** - Emitted when the icon fails to load due to an error. When using `spriteSheet: true` this will not emit.\n\n### **CSS Parts:**\n - **svg** - The internal SVG element.\n- **use** - The <use> element generated when using `spriteSheet: true`",
137
- "attributes": [
138
- {
139
- "name": "name",
140
- "description": "The name of the icon to draw. Available names depend on the icon library being used.",
141
- "values": []
142
- },
143
- {
144
- "name": "src",
145
- "description": "An external URL of an SVG file. Be sure you trust the content you are including, as it will be executed as code and\ncan result in XSS attacks.",
146
- "values": []
147
- },
148
- {
149
- "name": "label",
150
- "description": "An alternate description to use for assistive devices. If omitted, the icon will be considered presentational and\nignored by assistive devices.",
151
- "values": []
152
- },
153
- {
154
- "name": "library",
155
- "description": "The name of a registered custom icon library.",
156
- "values": []
157
- }
158
- ],
159
- "references": [
160
- {
161
- "name": "Documentation",
162
- "url": "https://synergy.style/components/icon"
163
- }
164
- ]
165
- },
166
134
  {
167
135
  "name": "syn-checkbox",
168
136
  "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.",
@@ -220,6 +188,55 @@
220
188
  }
221
189
  ]
222
190
  },
191
+ {
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.",
194
+ "attributes": [
195
+ {
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.",
198
+ "values": []
199
+ }
200
+ ],
201
+ "references": [
202
+ {
203
+ "name": "Documentation",
204
+ "url": "https://synergy.style/components/button-group"
205
+ }
206
+ ]
207
+ },
208
+ {
209
+ "name": "syn-icon",
210
+ "description": "Icons are symbols that can be used to represent various options within an application.\n---\n\n\n### **Events:**\n - **syn-load** - Emitted when the icon has loaded. When using `spriteSheet: true` this will not emit.\n- **syn-error** - Emitted when the icon fails to load due to an error. When using `spriteSheet: true` this will not emit.\n\n### **CSS Parts:**\n - **svg** - The internal SVG element.\n- **use** - The <use> element generated when using `spriteSheet: true`",
211
+ "attributes": [
212
+ {
213
+ "name": "name",
214
+ "description": "The name of the icon to draw. Available names depend on the icon library being used.",
215
+ "values": []
216
+ },
217
+ {
218
+ "name": "src",
219
+ "description": "An external URL of an SVG file. Be sure you trust the content you are including, as it will be executed as code and\ncan result in XSS attacks.",
220
+ "values": []
221
+ },
222
+ {
223
+ "name": "label",
224
+ "description": "An alternate description to use for assistive devices. If omitted, the icon will be considered presentational and\nignored by assistive devices.",
225
+ "values": []
226
+ },
227
+ {
228
+ "name": "library",
229
+ "description": "The name of a registered custom icon library.",
230
+ "values": []
231
+ }
232
+ ],
233
+ "references": [
234
+ {
235
+ "name": "Documentation",
236
+ "url": "https://synergy.style/components/icon"
237
+ }
238
+ ]
239
+ },
223
240
  {
224
241
  "name": "syn-input",
225
242
  "description": "Inputs collect data from the user.\n---\n\n\n### **Events:**\n - **syn-blur** - Emitted when the control loses focus.\n- **syn-change** - Emitted when an alteration to the control's value is committed by the user.\n- **syn-clear** - Emitted when the clear button is activated.\n- **syn-focus** - Emitted when the control gains focus.\n- **syn-input** - Emitted when the control 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 - **focus(options: _FocusOptions_)** - Sets focus on the input.\n- **blur()** - Removes focus from the input.\n- **select()** - Selects all the text in the input.\n- **setSelectionRange(selectionStart: _number_, selectionEnd: _number_, selectionDirection: _'forward' | 'backward' | 'none'_)** - Sets the start and end positions of the text selection (0-based).\n- **setRangeText(replacement: _string_, start: _number_, end: _number_, selectMode: _'select' | 'start' | 'end' | 'preserve'_)** - Replaces a range of text with a new string.\n- **showPicker()** - Displays the browser picker for an input element (only works if the browser supports it for the input type).\n- **stepUp()** - Increments the value of a numeric input type by the value of the step attribute.\n- **stepDown()** - Decrements the value of a numeric input type by the value of the step attribute.\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. Pass an empty string to restore validity.\n\n### **Slots:**\n - **label** - The input's label. Alternatively, you can use the `label` attribute.\n- **prefix** - Used to prepend a presentational icon or similar element to the input.\n- **suffix** - Used to append a presentational icon or similar element to the input.\n- **clear-icon** - An icon to use in lieu of the default clear icon.\n- **show-password-icon** - An icon to use in lieu of the default show password icon.\n- **hide-password-icon** - An icon to use in lieu of the default hide password icon.\n- **help-text** - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.\n\n### **CSS Parts:**\n - **form-control** - The form control that wraps the label, input, and help text.\n- **form-control-label** - The label's wrapper.\n- **form-control-input** - The input's wrapper.\n- **form-control-help-text** - The help text's wrapper.\n- **base** - The component's base wrapper.\n- **input** - The internal `<input>` control.\n- **prefix** - The container that wraps the prefix.\n- **clear-button** - The clear button.\n- **password-toggle-button** - The password toggle button.\n- **suffix** - The container that wraps the suffix.",
@@ -413,6 +430,119 @@
413
430
  }
414
431
  ]
415
432
  },
433
+ {
434
+ "name": "syn-radio",
435
+ "description": "Radios allow the user to select a single option from a group.\n---\n\n\n### **Events:**\n - **syn-blur** - Emitted when the control loses focus.\n- **syn-focus** - Emitted when the control gains focus.\n\n### **Slots:**\n - _default_ - The radio's label.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.\n- **control** - The circular container that wraps the radio's checked state.\n- **control--checked** - The radio control when the radio is checked.\n- **checked-icon** - The checked icon, an `<syn-icon>` element.\n- **label** - The container that wraps the radio's label.",
436
+ "attributes": [
437
+ {
438
+ "name": "value",
439
+ "description": "The radio's value. When selected, the radio group will receive this value.",
440
+ "values": []
441
+ },
442
+ {
443
+ "name": "size",
444
+ "description": "The radio's size. When used inside a radio group, the size will be determined by the radio group's size so this\nattribute can typically be omitted.",
445
+ "values": [
446
+ { "name": "small" },
447
+ { "name": "medium" },
448
+ { "name": "large" }
449
+ ]
450
+ },
451
+ {
452
+ "name": "disabled",
453
+ "description": "Disables the radio.",
454
+ "values": []
455
+ }
456
+ ],
457
+ "references": [
458
+ {
459
+ "name": "Documentation",
460
+ "url": "https://synergy.style/components/radio"
461
+ }
462
+ ]
463
+ },
464
+ {
465
+ "name": "syn-radio-button",
466
+ "description": "Radios buttons allow the user to select a single option from a group using a button-like control.\n---\n\n\n### **Events:**\n - **syn-blur** - Emitted when the button loses focus.\n- **syn-focus** - Emitted when the button gains focus.\n\n### **Methods:**\n - **focus(options: _FocusOptions_)** - Sets focus on the radio button.\n- **blur()** - Removes focus from the radio button.\n\n### **Slots:**\n - _default_ - The radio button's label.\n- **prefix** - A presentational prefix icon or similar element.\n- **suffix** - A presentational suffix icon or similar element.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.\n- **button** - The internal `<button>` element.\n- **button--checked** - The internal button element when the radio button is checked.\n- **prefix** - The container that wraps the prefix.\n- **label** - The container that wraps the radio button's label.\n- **suffix** - The container that wraps the suffix.",
467
+ "attributes": [
468
+ {
469
+ "name": "value",
470
+ "description": "The radio's value. When selected, the radio group will receive this value.",
471
+ "values": []
472
+ },
473
+ {
474
+ "name": "disabled",
475
+ "description": "Disables the radio button.",
476
+ "values": []
477
+ },
478
+ {
479
+ "name": "size",
480
+ "description": "The radio button's size. When used inside a radio group, the size will be determined by the radio group's size so\nthis attribute can typically be omitted.",
481
+ "values": [
482
+ { "name": "small" },
483
+ { "name": "medium" },
484
+ { "name": "large" }
485
+ ]
486
+ }
487
+ ],
488
+ "references": [
489
+ {
490
+ "name": "Documentation",
491
+ "url": "https://synergy.style/components/radio-button"
492
+ }
493
+ ]
494
+ },
495
+ {
496
+ "name": "syn-radio-group",
497
+ "description": "Radio groups are used to group multiple [radios](/components/radio) or [radio buttons](/components/radio-button) so they function as a single form control.\n---\n\n\n### **Events:**\n - **syn-change** - Emitted when the radio group's selected value changes.\n- **syn-input** - Emitted when the radio group receives user input.\n- **syn-invalid** - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n\n### **Methods:**\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(): _boolean_** - Checks for validity and shows the browser's validation message if the control is invalid.\n- **setCustomValidity(message)** - Sets a custom validation message. Pass an empty string to restore validity.\n\n### **Slots:**\n - _default_ - The default slot where `<syn-radio>` or `<syn-radio-button>` elements are placed.\n- **label** - The radio group's label. Required for proper accessibility. Alternatively, you can use the `label` attribute.\n\n### **CSS Parts:**\n - **form-control** - The form control that wraps the label, input, and help text.\n- **form-control-label** - The label's wrapper.\n- **form-control-input** - The input's wrapper.\n- **form-control-help-text** - The help text's wrapper.\n- **button-group** - The button group that wraps radio buttons.\n- **button-group__base** - The button group's `base` part.",
498
+ "attributes": [
499
+ {
500
+ "name": "label",
501
+ "description": "The radio group's label. Required for proper accessibility. If you need to display HTML, use the `label` slot\ninstead.",
502
+ "values": []
503
+ },
504
+ {
505
+ "name": "help-text",
506
+ "description": "The radio groups's help text. If you need to display HTML, use the `help-text` slot instead.",
507
+ "values": []
508
+ },
509
+ {
510
+ "name": "name",
511
+ "description": "The name of the radio group, submitted as a name/value pair with form data.",
512
+ "values": []
513
+ },
514
+ {
515
+ "name": "value",
516
+ "description": "The current value of the radio group, submitted as a name/value pair with form data.",
517
+ "values": []
518
+ },
519
+ {
520
+ "name": "size",
521
+ "description": "The radio group's size. This size will be applied to all child radios and radio buttons.",
522
+ "values": [
523
+ { "name": "small" },
524
+ { "name": "medium" },
525
+ { "name": "large" }
526
+ ]
527
+ },
528
+ {
529
+ "name": "form",
530
+ "description": "By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.",
531
+ "values": []
532
+ },
533
+ {
534
+ "name": "required",
535
+ "description": "Ensures a child radio is checked before allowing the containing form to submit.",
536
+ "values": []
537
+ }
538
+ ],
539
+ "references": [
540
+ {
541
+ "name": "Documentation",
542
+ "url": "https://synergy.style/components/radio-group"
543
+ }
544
+ ]
545
+ },
416
546
  {
417
547
  "name": "syn-spinner",
418
548
  "description": "Spinners are used to show the progress of an indeterminate operation.\n---\n\n\n### **CSS Properties:**\n - **--track-width** - The width of the track. _(default: undefined)_\n- **--track-color** - The color of the track. _(default: undefined)_\n- **--indicator-color** - The color of the spinner's indicator. _(default: undefined)_\n- **--speed** - The time it takes for the spinner to complete one animation cycle. _(default: undefined)_\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",