@synergy-design-system/components 1.8.0 → 1.9.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 (230) hide show
  1. package/dist/chunks/{chunk.23HTU3YE.js → chunk.2EI3TNL7.js} +1 -16
  2. package/dist/chunks/chunk.2EI3TNL7.js.map +7 -0
  3. package/dist/chunks/{chunk.RSONAU45.js → chunk.2RF7KO5I.js} +1 -12
  4. package/dist/chunks/chunk.2RF7KO5I.js.map +7 -0
  5. package/dist/chunks/{chunk.WDX7XUUK.js → chunk.3DE5ARIC.js} +22 -2
  6. package/dist/chunks/chunk.3DE5ARIC.js.map +7 -0
  7. package/dist/chunks/{chunk.2IBWQADW.js → chunk.3O5WTWSN.js} +2 -2
  8. package/dist/chunks/{chunk.4CBN5LPQ.js → chunk.3STW62TA.js} +1 -12
  9. package/dist/chunks/chunk.3STW62TA.js.map +7 -0
  10. package/dist/chunks/{chunk.EKOK7YPB.js → chunk.4QS5IWYB.js} +1 -16
  11. package/dist/chunks/chunk.4QS5IWYB.js.map +7 -0
  12. package/dist/chunks/{chunk.6PWB7EUW.js → chunk.5BMNRZ7L.js} +2 -2
  13. package/dist/chunks/{chunk.A2WGLZOL.js → chunk.5CB3CVZ7.js} +2 -2
  14. package/dist/chunks/{chunk.UVYPEAQZ.js → chunk.5R3OVMH2.js} +23 -8
  15. package/dist/chunks/chunk.5R3OVMH2.js.map +7 -0
  16. package/dist/chunks/{chunk.MB3YZTYP.js → chunk.6MS3WNDW.js} +6 -5
  17. package/dist/chunks/chunk.6MS3WNDW.js.map +7 -0
  18. package/dist/chunks/{chunk.4ZURABYO.js → chunk.A7IIJ2LL.js} +1 -7
  19. package/dist/chunks/{chunk.O7USYXBT.js.map → chunk.A7IIJ2LL.js.map} +3 -3
  20. package/dist/chunks/{chunk.PGCXJ2PT.js → chunk.ACTJFDNK.js} +1 -12
  21. package/dist/chunks/chunk.ACTJFDNK.js.map +7 -0
  22. package/dist/chunks/{chunk.MNMITYTH.js → chunk.ADRKUQGR.js} +1 -12
  23. package/dist/chunks/chunk.ADRKUQGR.js.map +7 -0
  24. package/dist/chunks/{chunk.CUU2VBEZ.js → chunk.AJU6C4KC.js} +2 -2
  25. package/dist/chunks/{chunk.QHFGD6WW.js → chunk.BGHK4NQA.js} +1 -12
  26. package/dist/chunks/chunk.BGHK4NQA.js.map +7 -0
  27. package/dist/chunks/{chunk.HW5TASOL.js → chunk.BGKFRWWO.js} +3 -3
  28. package/dist/chunks/{chunk.XI6MSNHF.js → chunk.BJYVLDYR.js} +83 -5
  29. package/dist/chunks/chunk.BJYVLDYR.js.map +7 -0
  30. package/dist/chunks/{chunk.GZVDP7WZ.js → chunk.BLOH2ZNU.js} +137 -42
  31. package/dist/chunks/chunk.BLOH2ZNU.js.map +7 -0
  32. package/dist/chunks/{chunk.F3YEAZYJ.js → chunk.BTZX6ZFZ.js} +2 -2
  33. package/dist/chunks/{chunk.W6V7TPGK.js → chunk.CFIQXXMW.js} +1 -12
  34. package/dist/chunks/chunk.CFIQXXMW.js.map +7 -0
  35. package/dist/chunks/{chunk.K4ELZCXB.js → chunk.F4THECWA.js} +2 -2
  36. package/dist/chunks/{chunk.AWZ4FSAL.js → chunk.FSONLJTT.js} +15 -11
  37. package/dist/chunks/chunk.FSONLJTT.js.map +7 -0
  38. package/dist/chunks/{chunk.COKV3ZN7.js → chunk.FUNZW7ES.js} +2 -2
  39. package/dist/chunks/{chunk.4ZGN7AEC.js → chunk.GAPQVJGQ.js} +18 -10
  40. package/dist/chunks/chunk.GAPQVJGQ.js.map +7 -0
  41. package/dist/chunks/{chunk.GUQN6XL4.js → chunk.GBOII6N4.js} +10 -6
  42. package/dist/chunks/chunk.GBOII6N4.js.map +7 -0
  43. package/dist/chunks/{chunk.2KKPNUPU.js → chunk.GTSRMEPE.js} +2 -4
  44. package/dist/chunks/chunk.GTSRMEPE.js.map +7 -0
  45. package/dist/chunks/{chunk.KA7L2PMA.js → chunk.HF75YRVS.js} +20 -13
  46. package/dist/chunks/chunk.HF75YRVS.js.map +7 -0
  47. package/dist/chunks/{chunk.NWWHBSV7.js → chunk.IOPUYG6Q.js} +2 -2
  48. package/dist/chunks/{chunk.BGPAHVPK.js → chunk.IR2PZHC7.js} +2 -2
  49. package/dist/chunks/{chunk.HNRD7DBS.js → chunk.K3O2PP7X.js} +6 -5
  50. package/dist/chunks/chunk.K3O2PP7X.js.map +7 -0
  51. package/dist/chunks/{chunk.JBHQJWOB.js → chunk.KDDTDU4B.js} +71 -33
  52. package/dist/chunks/chunk.KDDTDU4B.js.map +7 -0
  53. package/dist/chunks/{chunk.Y4QKFZLK.js → chunk.KNXO2FGQ.js} +84 -46
  54. package/dist/chunks/chunk.KNXO2FGQ.js.map +7 -0
  55. package/dist/chunks/{chunk.JSO3PKB4.js → chunk.KUO3KJOC.js} +2 -2
  56. package/dist/chunks/{chunk.WP6T5CG2.js → chunk.LF2XSSHD.js} +2 -2
  57. package/dist/chunks/{chunk.2FN5DTS6.js → chunk.LJQ7LEPV.js} +1 -12
  58. package/dist/chunks/chunk.LJQ7LEPV.js.map +7 -0
  59. package/dist/chunks/{chunk.OJUBVHIK.js → chunk.LZE7OXKV.js} +2 -2
  60. package/dist/chunks/{chunk.RS4Z4KDT.js → chunk.MDZ22YWD.js} +10 -6
  61. package/dist/chunks/chunk.MDZ22YWD.js.map +7 -0
  62. package/dist/chunks/{chunk.JN7CLMQZ.js → chunk.MIMALEWP.js} +21 -7
  63. package/dist/chunks/chunk.MIMALEWP.js.map +7 -0
  64. package/dist/chunks/{chunk.DAROCSFO.js → chunk.O6AXKVFJ.js} +10 -6
  65. package/dist/chunks/chunk.O6AXKVFJ.js.map +7 -0
  66. package/dist/chunks/{chunk.N2I6HVX3.js → chunk.OSBC36KQ.js} +4 -9
  67. package/dist/chunks/chunk.OSBC36KQ.js.map +7 -0
  68. package/dist/chunks/{chunk.NV7W5R6V.js → chunk.PHSJD47V.js} +1 -12
  69. package/dist/chunks/chunk.PHSJD47V.js.map +7 -0
  70. package/dist/chunks/{chunk.JBYBQ5TQ.js → chunk.PKO6FEOM.js} +1 -12
  71. package/dist/chunks/chunk.PKO6FEOM.js.map +7 -0
  72. package/dist/chunks/{chunk.MRAXEK5D.js → chunk.PRZRH7SN.js} +2 -2
  73. package/dist/chunks/{chunk.35PHCFSV.js → chunk.PWMSNMDF.js} +9 -5
  74. package/dist/chunks/chunk.PWMSNMDF.js.map +7 -0
  75. package/dist/chunks/{chunk.6XU6OLZ3.js → chunk.QNQNR3RY.js} +1 -16
  76. package/dist/chunks/chunk.QNQNR3RY.js.map +7 -0
  77. package/dist/chunks/{chunk.2XCLA4MQ.js → chunk.QY6MKIMK.js} +2 -2
  78. package/dist/chunks/{chunk.RVFNEWM3.js → chunk.RMQZMRVP.js} +2 -2
  79. package/dist/chunks/{chunk.AJWDVZRI.js → chunk.RMZBSKRR.js} +45 -19
  80. package/dist/chunks/chunk.RMZBSKRR.js.map +7 -0
  81. package/dist/chunks/{chunk.OJ4KOC7R.js → chunk.SJMMPKWP.js} +1 -12
  82. package/dist/chunks/chunk.SJMMPKWP.js.map +7 -0
  83. package/dist/chunks/{chunk.2Z2GYRLO.js → chunk.SZCGMXW5.js} +2 -2
  84. package/dist/chunks/chunk.SZCGMXW5.js.map +7 -0
  85. package/dist/chunks/{chunk.JHXCBOUD.js → chunk.TTL762VF.js} +57 -60
  86. package/dist/chunks/chunk.TTL762VF.js.map +7 -0
  87. package/dist/chunks/{chunk.B75SET3J.js → chunk.UZFPGR6M.js} +6 -5
  88. package/dist/chunks/chunk.UZFPGR6M.js.map +7 -0
  89. package/dist/chunks/{chunk.NAAFLDZ3.js → chunk.VATYXV2O.js} +2 -2
  90. package/dist/chunks/{chunk.AFEABUNX.js → chunk.W5JK7V7K.js} +6 -1
  91. package/dist/chunks/chunk.W5JK7V7K.js.map +7 -0
  92. package/dist/chunks/{chunk.G66TSLVT.js → chunk.WC5SV4TV.js} +23 -13
  93. package/dist/chunks/chunk.WC5SV4TV.js.map +7 -0
  94. package/dist/chunks/{chunk.ERNEIORV.js → chunk.XEI5ZP7Y.js} +9 -5
  95. package/dist/chunks/chunk.XEI5ZP7Y.js.map +7 -0
  96. package/dist/chunks/{chunk.4I6M5V6O.js → chunk.XIUSSERX.js} +1 -16
  97. package/dist/chunks/chunk.XIUSSERX.js.map +7 -0
  98. package/dist/chunks/{chunk.5TFG753C.js → chunk.Y72MIUNI.js} +2 -2
  99. package/dist/chunks/{chunk.IKKMWFWH.js → chunk.ZIQXX272.js} +2 -2
  100. package/dist/chunks/{chunk.UG5FC6UD.js → chunk.ZT5DUKVA.js} +2 -2
  101. package/dist/components/button/button.component.js +9 -10
  102. package/dist/components/button/button.js +10 -11
  103. package/dist/components/button/button.styles.js +1 -3
  104. package/dist/components/button-group/button-group.component.js +3 -4
  105. package/dist/components/button-group/button-group.js +4 -5
  106. package/dist/components/button-group/button-group.styles.js +1 -2
  107. package/dist/components/checkbox/checkbox.component.d.ts +5 -0
  108. package/dist/components/checkbox/checkbox.component.js +8 -7
  109. package/dist/components/checkbox/checkbox.js +9 -8
  110. package/dist/components/checkbox/checkbox.styles.js +1 -3
  111. package/dist/components/divider/divider.component.js +3 -4
  112. package/dist/components/divider/divider.js +4 -5
  113. package/dist/components/divider/divider.styles.js +1 -3
  114. package/dist/components/drawer/drawer.component.d.ts +1 -0
  115. package/dist/components/drawer/drawer.component.js +9 -10
  116. package/dist/components/drawer/drawer.js +10 -11
  117. package/dist/components/drawer/drawer.styles.js +1 -3
  118. package/dist/components/icon/icon.component.js +3 -4
  119. package/dist/components/icon/icon.js +4 -5
  120. package/dist/components/icon/icon.styles.js +1 -3
  121. package/dist/components/icon-button/icon-button.component.js +5 -6
  122. package/dist/components/icon-button/icon-button.js +6 -7
  123. package/dist/components/icon-button/icon-button.styles.js +1 -3
  124. package/dist/components/input/input.component.js +10 -11
  125. package/dist/components/input/input.js +11 -12
  126. package/dist/components/input/input.styles.js +1 -4
  127. package/dist/components/optgroup/optgroup.component.js +4 -5
  128. package/dist/components/optgroup/optgroup.js +5 -6
  129. package/dist/components/option/option.component.js +5 -6
  130. package/dist/components/option/option.js +6 -7
  131. package/dist/components/option/option.styles.js +1 -3
  132. package/dist/components/popup/popup.component.d.ts +9 -0
  133. package/dist/components/popup/popup.component.js +3 -4
  134. package/dist/components/popup/popup.styles.js +1 -2
  135. package/dist/components/radio/radio.component.js +5 -6
  136. package/dist/components/radio/radio.js +6 -7
  137. package/dist/components/radio/radio.styles.js +1 -3
  138. package/dist/components/radio-button/radio-button.component.js +4 -6
  139. package/dist/components/radio-button/radio-button.js +5 -7
  140. package/dist/components/radio-button/radio-button.styles.js +2 -4
  141. package/dist/components/radio-group/radio-group.component.d.ts +1 -0
  142. package/dist/components/radio-group/radio-group.component.js +7 -8
  143. package/dist/components/radio-group/radio-group.js +8 -9
  144. package/dist/components/radio-group/radio-group.styles.js +1 -4
  145. package/dist/components/select/select.component.d.ts +1 -0
  146. package/dist/components/select/select.component.js +15 -16
  147. package/dist/components/select/select.js +16 -17
  148. package/dist/components/select/select.styles.js +1 -4
  149. package/dist/components/spinner/spinner.component.js +3 -4
  150. package/dist/components/spinner/spinner.styles.js +1 -2
  151. package/dist/components/switch/switch.component.d.ts +5 -0
  152. package/dist/components/switch/switch.component.js +7 -6
  153. package/dist/components/switch/switch.custom.styles.js +1 -1
  154. package/dist/components/switch/switch.js +8 -7
  155. package/dist/components/switch/switch.styles.js +1 -3
  156. package/dist/components/tag/tag.component.js +7 -8
  157. package/dist/components/tag/tag.js +8 -9
  158. package/dist/components/tag/tag.styles.js +1 -3
  159. package/dist/components/textarea/textarea.component.js +5 -6
  160. package/dist/components/textarea/textarea.js +6 -7
  161. package/dist/components/textarea/textarea.styles.js +1 -4
  162. package/dist/custom-elements.json +263 -147
  163. package/dist/internal/longpress.d.ts +2 -2
  164. package/dist/internal/modal.d.ts +3 -0
  165. package/dist/synergy.js +61 -62
  166. package/dist/utilities/form.js +2 -2
  167. package/dist/vscode.html-custom-data.json +36 -21
  168. package/package.json +2 -4
  169. package/dist/chunks/chunk.23HTU3YE.js.map +0 -7
  170. package/dist/chunks/chunk.2FN5DTS6.js.map +0 -7
  171. package/dist/chunks/chunk.2KKPNUPU.js.map +0 -7
  172. package/dist/chunks/chunk.2Z2GYRLO.js.map +0 -7
  173. package/dist/chunks/chunk.35PHCFSV.js.map +0 -7
  174. package/dist/chunks/chunk.4CBN5LPQ.js.map +0 -7
  175. package/dist/chunks/chunk.4I6M5V6O.js.map +0 -7
  176. package/dist/chunks/chunk.4ZGN7AEC.js.map +0 -7
  177. package/dist/chunks/chunk.4ZURABYO.js.map +0 -7
  178. package/dist/chunks/chunk.6XU6OLZ3.js.map +0 -7
  179. package/dist/chunks/chunk.AFEABUNX.js.map +0 -7
  180. package/dist/chunks/chunk.AJWDVZRI.js.map +0 -7
  181. package/dist/chunks/chunk.AWZ4FSAL.js.map +0 -7
  182. package/dist/chunks/chunk.B75SET3J.js.map +0 -7
  183. package/dist/chunks/chunk.DAROCSFO.js.map +0 -7
  184. package/dist/chunks/chunk.EKOK7YPB.js.map +0 -7
  185. package/dist/chunks/chunk.ERNEIORV.js.map +0 -7
  186. package/dist/chunks/chunk.G66TSLVT.js.map +0 -7
  187. package/dist/chunks/chunk.GUQN6XL4.js.map +0 -7
  188. package/dist/chunks/chunk.GZVDP7WZ.js.map +0 -7
  189. package/dist/chunks/chunk.HNRD7DBS.js.map +0 -7
  190. package/dist/chunks/chunk.JBHQJWOB.js.map +0 -7
  191. package/dist/chunks/chunk.JBYBQ5TQ.js.map +0 -7
  192. package/dist/chunks/chunk.JHXCBOUD.js.map +0 -7
  193. package/dist/chunks/chunk.JN7CLMQZ.js.map +0 -7
  194. package/dist/chunks/chunk.KA7L2PMA.js.map +0 -7
  195. package/dist/chunks/chunk.MB3YZTYP.js.map +0 -7
  196. package/dist/chunks/chunk.MNMITYTH.js.map +0 -7
  197. package/dist/chunks/chunk.N2I6HVX3.js.map +0 -7
  198. package/dist/chunks/chunk.NV7W5R6V.js.map +0 -7
  199. package/dist/chunks/chunk.O7USYXBT.js +0 -23
  200. package/dist/chunks/chunk.OJ4KOC7R.js.map +0 -7
  201. package/dist/chunks/chunk.PGCXJ2PT.js.map +0 -7
  202. package/dist/chunks/chunk.QHFGD6WW.js.map +0 -7
  203. package/dist/chunks/chunk.RS4Z4KDT.js.map +0 -7
  204. package/dist/chunks/chunk.RSONAU45.js.map +0 -7
  205. package/dist/chunks/chunk.UVYPEAQZ.js.map +0 -7
  206. package/dist/chunks/chunk.W6V7TPGK.js.map +0 -7
  207. package/dist/chunks/chunk.WDX7XUUK.js.map +0 -7
  208. package/dist/chunks/chunk.XI6MSNHF.js.map +0 -7
  209. package/dist/chunks/chunk.Y4QKFZLK.js.map +0 -7
  210. package/dist/web-types.json +0 -2580
  211. /package/dist/chunks/{chunk.2IBWQADW.js.map → chunk.3O5WTWSN.js.map} +0 -0
  212. /package/dist/chunks/{chunk.6PWB7EUW.js.map → chunk.5BMNRZ7L.js.map} +0 -0
  213. /package/dist/chunks/{chunk.A2WGLZOL.js.map → chunk.5CB3CVZ7.js.map} +0 -0
  214. /package/dist/chunks/{chunk.CUU2VBEZ.js.map → chunk.AJU6C4KC.js.map} +0 -0
  215. /package/dist/chunks/{chunk.HW5TASOL.js.map → chunk.BGKFRWWO.js.map} +0 -0
  216. /package/dist/chunks/{chunk.F3YEAZYJ.js.map → chunk.BTZX6ZFZ.js.map} +0 -0
  217. /package/dist/chunks/{chunk.K4ELZCXB.js.map → chunk.F4THECWA.js.map} +0 -0
  218. /package/dist/chunks/{chunk.COKV3ZN7.js.map → chunk.FUNZW7ES.js.map} +0 -0
  219. /package/dist/chunks/{chunk.NWWHBSV7.js.map → chunk.IOPUYG6Q.js.map} +0 -0
  220. /package/dist/chunks/{chunk.BGPAHVPK.js.map → chunk.IR2PZHC7.js.map} +0 -0
  221. /package/dist/chunks/{chunk.JSO3PKB4.js.map → chunk.KUO3KJOC.js.map} +0 -0
  222. /package/dist/chunks/{chunk.WP6T5CG2.js.map → chunk.LF2XSSHD.js.map} +0 -0
  223. /package/dist/chunks/{chunk.OJUBVHIK.js.map → chunk.LZE7OXKV.js.map} +0 -0
  224. /package/dist/chunks/{chunk.MRAXEK5D.js.map → chunk.PRZRH7SN.js.map} +0 -0
  225. /package/dist/chunks/{chunk.2XCLA4MQ.js.map → chunk.QY6MKIMK.js.map} +0 -0
  226. /package/dist/chunks/{chunk.RVFNEWM3.js.map → chunk.RMQZMRVP.js.map} +0 -0
  227. /package/dist/chunks/{chunk.NAAFLDZ3.js.map → chunk.VATYXV2O.js.map} +0 -0
  228. /package/dist/chunks/{chunk.5TFG753C.js.map → chunk.Y72MIUNI.js.map} +0 -0
  229. /package/dist/chunks/{chunk.IKKMWFWH.js.map → chunk.ZIQXX272.js.map} +0 -0
  230. /package/dist/chunks/{chunk.UG5FC6UD.js.map → chunk.ZT5DUKVA.js.map} +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/textarea/textarea.component.ts"],
4
+ "sourcesContent": ["// ---------------------------------------------------------------------\n// \uD83D\uDD12 AUTOGENERATED BY VENDORISM\n// Removing this comment will prevent it from being managed by it.\n// ---------------------------------------------------------------------\n\n/* eslint-disable */\nimport { classMap } from 'lit/directives/class-map.js';\nimport { defaultValue } from '../../internal/default-value.js';\nimport { FormControlController } from '../../internal/form.js';\nimport { HasSlotController } from '../../internal/slot.js';\nimport { html } from 'lit';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { property, query, state } from 'lit/decorators.js';\nimport { watch } from '../../internal/watch.js';\nimport componentStyles from '../../styles/component.styles.js';\nimport formControlStyles from '../../styles/form-control.styles.js';\nimport formControlCustomStyles from '../../styles/form-control.custom.styles.js';\nimport SynergyElement from '../../internal/synergy-element.js';\nimport styles from './textarea.styles.js';\nimport customStyles from './textarea.custom.styles.js';\nimport type { CSSResultGroup } from 'lit';\nimport type { SynergyFormControl } from '../../internal/synergy-element.js';\n\n/**\n * @summary Textareas collect data from the user and allow multiple lines of text.\n * @documentation https://synergy.style/components/textarea\n * @status stable\n * @since 2.0\n *\n * @slot label - The textarea's label. Alternatively, you can use the `label` attribute.\n * @slot help-text - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.\n *\n * @event syn-blur - Emitted when the control loses focus.\n * @event syn-change - Emitted when an alteration to the control's value is committed by the user.\n * @event syn-focus - Emitted when the control gains focus.\n * @event syn-input - Emitted when the control receives input.\n * @event syn-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n *\n * @csspart form-control - The form control that wraps the label, input, and help text.\n * @csspart form-control-label - The label's wrapper.\n * @csspart form-control-input - The input's wrapper.\n * @csspart form-control-help-text - The help text's wrapper.\n * @csspart base - The component's base wrapper.\n * @csspart textarea - The internal `<textarea>` control.\n */\nexport default class SynTextarea extends SynergyElement implements SynergyFormControl {\n static styles: CSSResultGroup = [componentStyles, formControlStyles, styles, formControlCustomStyles, customStyles];\n\n private readonly formControlController = new FormControlController(this, {\n assumeInteractionOn: ['syn-blur', 'syn-input']\n });\n private readonly hasSlotController = new HasSlotController(this, 'help-text', 'label', 'prefix', 'suffix');\n private resizeObserver: ResizeObserver;\n\n @query('.textarea__control') input: HTMLTextAreaElement;\n\n @state() private hasFocus = false;\n @property() title = ''; // make reactive to pass through\n\n /** The name of the textarea, submitted as a name/value pair with form data. */\n @property() name = '';\n\n /** The current value of the textarea, submitted as a name/value pair with form data. */\n @property() value = '';\n\n /** The textarea's size. */\n @property({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** The textarea's label. If you need to display HTML, use the `label` slot instead. */\n @property() label = '';\n\n /** The textarea's help text. If you need to display HTML, use the `help-text` slot instead. */\n @property({ attribute: 'help-text' }) helpText = '';\n\n /** Placeholder text to show as a hint when the input is empty. */\n @property() placeholder = '';\n\n /** The number of rows to display by default. */\n @property({ type: Number }) rows = 4;\n\n /** Controls how the textarea can be resized. */\n @property() resize: 'none' | 'vertical' | 'auto' = 'vertical';\n\n /** Disables the textarea. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** Makes the textarea readonly. */\n @property({ type: Boolean, reflect: true }) readonly = false;\n\n /**\n * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\n * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in\n * the same document or shadow root for this to work.\n */\n @property({ reflect: true }) form = '';\n\n /** Makes the textarea a required field. */\n @property({ type: Boolean, reflect: true }) required = false;\n\n /** The minimum length of input that will be considered valid. */\n @property({ type: Number }) minlength: number;\n\n /** The maximum length of input that will be considered valid. */\n @property({ type: Number }) maxlength: number;\n\n /** Controls whether and how text input is automatically capitalized as it is entered by the user. */\n @property() autocapitalize: 'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters';\n\n /** Indicates whether the browser's autocorrect feature is on or off. */\n @property() autocorrect: string;\n\n /**\n * Specifies what permission the browser has to provide assistance in filling out form field values. Refer to\n * [this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for available values.\n */\n @property() autocomplete: string;\n\n /** Indicates that the input should receive focus on page load. */\n @property({ type: Boolean }) autofocus: boolean;\n\n /** Used to customize the label or icon of the Enter key on virtual keyboards. */\n @property() enterkeyhint: 'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send';\n\n /** Enables spell checking on the textarea. */\n @property({\n type: Boolean,\n converter: {\n // Allow \"true|false\" attribute values but keep the property boolean\n fromAttribute: value => (!value || value === 'false' ? false : true),\n toAttribute: value => (value ? 'true' : 'false')\n }\n })\n spellcheck = true;\n\n /**\n * Tells the browser what type of data will be entered by the user, allowing it to display the appropriate virtual\n * keyboard on supportive devices.\n */\n @property() inputmode: 'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url';\n\n /** The default value of the form control. Primarily used for resetting the form control. */\n @defaultValue() defaultValue = '';\n\n /** Gets the validity state object */\n get validity() {\n return this.input.validity;\n }\n\n /** Gets the validation message */\n get validationMessage() {\n return this.input.validationMessage;\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.resizeObserver = new ResizeObserver(() => this.setTextareaHeight());\n\n this.updateComplete.then(() => {\n this.setTextareaHeight();\n this.resizeObserver.observe(this.input);\n });\n }\n\n firstUpdated() {\n this.formControlController.updateValidity();\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.resizeObserver.unobserve(this.input);\n }\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('syn-blur');\n }\n\n private handleChange() {\n this.value = this.input.value;\n this.setTextareaHeight();\n this.emit('syn-change');\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('syn-focus');\n }\n\n private handleInput() {\n this.value = this.input.value;\n this.emit('syn-input');\n }\n\n private handleInvalid(event: Event) {\n this.formControlController.setValidity(false);\n this.formControlController.emitInvalidEvent(event);\n }\n\n private setTextareaHeight() {\n if (this.resize === 'auto') {\n this.input.style.height = 'auto';\n this.input.style.height = `${this.input.scrollHeight}px`;\n } else {\n (this.input.style.height as string | undefined) = undefined;\n }\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n handleDisabledChange() {\n // Disabled form controls are always valid\n this.formControlController.setValidity(this.disabled);\n }\n\n @watch('rows', { waitUntilFirstUpdate: true })\n handleRowsChange() {\n this.setTextareaHeight();\n }\n\n @watch('value', { waitUntilFirstUpdate: true })\n async handleValueChange() {\n await this.updateComplete;\n this.formControlController.updateValidity();\n this.setTextareaHeight();\n }\n\n /** Sets focus on the textarea. */\n focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /** Removes focus from the textarea. */\n blur() {\n this.input.blur();\n }\n\n /** Selects all the text in the textarea. */\n select() {\n this.input.select();\n }\n\n /** Gets or sets the textarea's scroll position. */\n scrollPosition(position?: { top?: number; left?: number }): { top: number; left: number } | undefined {\n if (position) {\n if (typeof position.top === 'number') this.input.scrollTop = position.top;\n if (typeof position.left === 'number') this.input.scrollLeft = position.left;\n return undefined;\n }\n\n return {\n top: this.input.scrollTop,\n left: this.input.scrollTop\n };\n }\n\n /** Sets the start and end positions of the text selection (0-based). */\n setSelectionRange(\n selectionStart: number,\n selectionEnd: number,\n selectionDirection: 'forward' | 'backward' | 'none' = 'none'\n ) {\n this.input.setSelectionRange(selectionStart, selectionEnd, selectionDirection);\n }\n\n /** Replaces a range of text with a new string. */\n setRangeText(\n replacement: string,\n start?: number,\n end?: number,\n selectMode: 'select' | 'start' | 'end' | 'preserve' = 'preserve'\n ) {\n const selectionStart = start ?? this.input.selectionStart;\n const selectionEnd = end ?? this.input.selectionEnd;\n\n this.input.setRangeText(replacement, selectionStart, selectionEnd, selectMode);\n\n if (this.value !== this.input.value) {\n this.value = this.input.value;\n this.setTextareaHeight();\n }\n }\n\n /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */\n checkValidity() {\n return this.input.checkValidity();\n }\n\n /** Gets the associated form, if one exists. */\n getForm(): HTMLFormElement | null {\n return this.formControlController.getForm();\n }\n\n /** Checks for validity and shows the browser's validation message if the control is invalid. */\n reportValidity() {\n return this.input.reportValidity();\n }\n\n /** Sets a custom validation message. Pass an empty string to restore validity. */\n setCustomValidity(message: string) {\n this.input.setCustomValidity(message);\n this.formControlController.updateValidity();\n }\n\n render() {\n const hasLabelSlot = this.hasSlotController.test('label');\n const hasHelpTextSlot = this.hasSlotController.test('help-text');\n const hasPrefixSlot = this.hasSlotController.test('prefix');\n const hasSuffixSlot = this.hasSlotController.test('suffix');\n const hasLabel = this.label ? true : !!hasLabelSlot;\n const hasHelpText = this.helpText ? true : !!hasHelpTextSlot;\n\n return html`\n <div\n part=\"form-control\"\n class=${classMap({\n 'form-control': true,\n 'form-control--small': this.size === 'small',\n 'form-control--medium': this.size === 'medium',\n 'form-control--large': this.size === 'large',\n 'form-control--has-label': hasLabel,\n 'form-control--has-help-text': hasHelpText,\n 'form-control--has-prefix': hasPrefixSlot,\n 'form-control--has-suffix': hasSuffixSlot\n })}\n >\n <label\n part=\"form-control-label\"\n class=\"form-control__label\"\n for=\"input\"\n aria-hidden=${hasLabel ? 'false' : 'true'}\n >\n <slot name=\"label\">${this.label}</slot>\n </label>\n\n <div part=\"form-control-input\" class=\"form-control-input\">\n <div\n part=\"base\"\n class=${classMap({\n textarea: true,\n 'textarea--small': this.size === 'small',\n 'textarea--medium': this.size === 'medium',\n 'textarea--large': this.size === 'large',\n 'textarea--standard': !this.readonly,\n 'textarea--readonly': this.readonly,\n 'textarea--disabled': this.disabled,\n 'textarea--focused': this.hasFocus,\n 'textarea--empty': !this.value,\n 'textarea--resize-none': this.resize === 'none',\n 'textarea--resize-vertical': this.resize === 'vertical',\n 'textarea--resize-auto': this.resize === 'auto'\n })}\n >\n <textarea\n part=\"textarea\"\n id=\"input\"\n class=\"textarea__control\"\n title=${this.title /* An empty title prevents browser validation tooltips from appearing on hover */}\n name=${ifDefined(this.name)}\n .value=${live(this.value)}\n ?disabled=${this.disabled}\n ?readonly=${this.readonly}\n ?required=${this.required}\n placeholder=${ifDefined(this.placeholder)}\n rows=${ifDefined(this.rows)}\n minlength=${ifDefined(this.minlength)}\n maxlength=${ifDefined(this.maxlength)}\n autocapitalize=${ifDefined(this.autocapitalize)}\n autocorrect=${ifDefined(this.autocorrect)}\n ?autofocus=${this.autofocus}\n spellcheck=${ifDefined(this.spellcheck)}\n enterkeyhint=${ifDefined(this.enterkeyhint)}\n inputmode=${ifDefined(this.inputmode)}\n aria-describedby=\"help-text\"\n @change=${this.handleChange}\n @input=${this.handleInput}\n @invalid=${this.handleInvalid}\n @focus=${this.handleFocus}\n @blur=${this.handleBlur}\n ></textarea>\n </div>\n </div>\n\n <div\n part=\"form-control-help-text\"\n id=\"help-text\"\n class=\"form-control__help-text\"\n aria-hidden=${hasHelpText ? 'false' : 'true'}\n >\n <slot name=\"help-text\">${this.helpText}</slot>\n </div>\n </div>\n `;\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynRadioGroup
3
- } from "./chunk.4ZGN7AEC.js";
3
+ } from "./chunk.GAPQVJGQ.js";
4
4
 
5
5
  // src/components/radio-group/radio-group.ts
6
6
  var radio_group_default = SynRadioGroup;
@@ -9,4 +9,4 @@ SynRadioGroup.define("syn-radio-group");
9
9
  export {
10
10
  radio_group_default
11
11
  };
12
- //# sourceMappingURL=chunk.NWWHBSV7.js.map
12
+ //# sourceMappingURL=chunk.IOPUYG6Q.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynTextarea
3
- } from "./chunk.KA7L2PMA.js";
3
+ } from "./chunk.HF75YRVS.js";
4
4
 
5
5
  // src/components/textarea/textarea.ts
6
6
  var textarea_default = SynTextarea;
@@ -9,4 +9,4 @@ SynTextarea.define("syn-textarea");
9
9
  export {
10
10
  textarea_default
11
11
  };
12
- //# sourceMappingURL=chunk.BGPAHVPK.js.map
12
+ //# sourceMappingURL=chunk.IR2PZHC7.js.map
@@ -1,12 +1,13 @@
1
1
  import {
2
2
  spinner_styles_default
3
- } from "./chunk.N2I6HVX3.js";
3
+ } from "./chunk.OSBC36KQ.js";
4
4
  import {
5
5
  LocalizeController
6
6
  } from "./chunk.LAB4YJYE.js";
7
7
  import {
8
- SynergyElement
9
- } from "./chunk.WDX7XUUK.js";
8
+ SynergyElement,
9
+ component_styles_default
10
+ } from "./chunk.3DE5ARIC.js";
10
11
 
11
12
  // src/components/spinner/spinner.component.ts
12
13
  import { html } from "lit";
@@ -24,9 +25,9 @@ var SynSpinner = class extends SynergyElement {
24
25
  `;
25
26
  }
26
27
  };
27
- SynSpinner.styles = spinner_styles_default;
28
+ SynSpinner.styles = [component_styles_default, spinner_styles_default];
28
29
 
29
30
  export {
30
31
  SynSpinner
31
32
  };
32
- //# sourceMappingURL=chunk.HNRD7DBS.js.map
33
+ //# sourceMappingURL=chunk.K3O2PP7X.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/spinner/spinner.component.ts"],
4
+ "sourcesContent": ["// ---------------------------------------------------------------------\n// \uD83D\uDD12 AUTOGENERATED BY VENDORISM\n// Removing this comment will prevent it from being managed by it.\n// ---------------------------------------------------------------------\n\n/* eslint-disable */\nimport { html } from 'lit';\nimport { LocalizeController } from '../../utilities/localize.js';\nimport componentStyles from '../../styles/component.styles.js';\nimport SynergyElement from '../../internal/synergy-element.js';\nimport styles from './spinner.styles.js';\nimport type { CSSResultGroup } from 'lit';\n\n/**\n * @summary Spinners are used to show the progress of an indeterminate operation.\n * @documentation https://synergy.style/components/spinner\n * @status stable\n * @since 2.0\n *\n * @csspart base - The component's base wrapper.\n *\n * @cssproperty --track-width - The width of the track.\n * @cssproperty --track-color - The color of the track.\n * @cssproperty --indicator-color - The color of the spinner's indicator.\n * @cssproperty --speed - The time it takes for the spinner to complete one animation cycle.\n */\nexport default class SynSpinner extends SynergyElement {\n static styles: CSSResultGroup = [componentStyles, styles];\n\n private readonly localize = new LocalizeController(this);\n\n render() {\n return html`\n <svg part=\"base\" class=\"spinner\" role=\"progressbar\" aria-label=${this.localize.term('loading')}>\n <circle class=\"spinner__track\"></circle>\n <circle class=\"spinner__indicator\"></circle>\n </svg>\n `;\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;AAMA,SAAS,YAAY;AAoBrB,IAAqB,aAArB,cAAwC,eAAe;AAAA,EAAvD;AAAA;AAGE,SAAiB,WAAW,IAAI,mBAAmB,IAAI;AAAA;AAAA,EAEvD,SAAS;AACP,WAAO;AAAA,uEAC4D,KAAK,SAAS,KAAK,SAAS,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,EAKlG;AACF;AAbqB,WACZ,SAAyB,CAAC,0BAAiB,sBAAM;",
6
+ "names": []
7
+ }
@@ -1,18 +1,29 @@
1
1
  import {
2
2
  switch_styles_default
3
- } from "./chunk.MNMITYTH.js";
3
+ } from "./chunk.ADRKUQGR.js";
4
+ import {
5
+ switch_custom_styles_default
6
+ } from "./chunk.W5JK7V7K.js";
4
7
  import {
5
8
  defaultValue
6
9
  } from "./chunk.WFAJR3FN.js";
10
+ import {
11
+ form_control_custom_styles_default,
12
+ form_control_styles_default
13
+ } from "./chunk.TTL762VF.js";
7
14
  import {
8
15
  FormControlController
9
- } from "./chunk.2Z2GYRLO.js";
16
+ } from "./chunk.SZCGMXW5.js";
17
+ import {
18
+ HasSlotController
19
+ } from "./chunk.XGXFE6IF.js";
10
20
  import {
11
21
  watch
12
22
  } from "./chunk.AVTU2BGE.js";
13
23
  import {
14
- SynergyElement
15
- } from "./chunk.WDX7XUUK.js";
24
+ SynergyElement,
25
+ component_styles_default
26
+ } from "./chunk.3DE5ARIC.js";
16
27
  import {
17
28
  __decorateClass
18
29
  } from "./chunk.QNDC5KWA.js";
@@ -31,6 +42,7 @@ var SynSwitch = class extends SynergyElement {
31
42
  defaultValue: (control) => control.defaultChecked,
32
43
  setValue: (control, checked) => control.checked = checked
33
44
  });
45
+ this.hasSlotController = new HasSlotController(this, "help-text");
34
46
  this.hasFocus = false;
35
47
  this.title = "";
36
48
  this.name = "";
@@ -40,6 +52,7 @@ var SynSwitch = class extends SynergyElement {
40
52
  this.defaultChecked = false;
41
53
  this.form = "";
42
54
  this.required = false;
55
+ this.helpText = "";
43
56
  }
44
57
  /** Gets the validity state object */
45
58
  get validity() {
@@ -122,10 +135,21 @@ var SynSwitch = class extends SynergyElement {
122
135
  this.formControlController.updateValidity();
123
136
  }
124
137
  render() {
138
+ const hasHelpTextSlot = this.hasSlotController.test("help-text");
139
+ const hasHelpText = this.helpText ? true : !!hasHelpTextSlot;
125
140
  return html`
126
- <label
127
- part="base"
141
+ <div
128
142
  class=${classMap({
143
+ "form-control": true,
144
+ "form-control--small": this.size === "small",
145
+ "form-control--medium": this.size === "medium",
146
+ "form-control--large": this.size === "large",
147
+ "form-control--has-help-text": hasHelpText
148
+ })}
149
+ >
150
+ <label
151
+ part="base"
152
+ class=${classMap({
129
153
  switch: true,
130
154
  "switch--checked": this.checked,
131
155
  "switch--disabled": this.disabled,
@@ -134,38 +158,49 @@ var SynSwitch = class extends SynergyElement {
134
158
  "switch--medium": this.size === "medium",
135
159
  "switch--large": this.size === "large"
136
160
  })}
137
- >
138
- <input
139
- class="switch__input"
140
- type="checkbox"
141
- title=${this.title}
142
- name=${this.name}
143
- value=${ifDefined(this.value)}
144
- .checked=${live(this.checked)}
145
- .disabled=${this.disabled}
146
- .required=${this.required}
147
- role="switch"
148
- aria-checked=${this.checked ? "true" : "false"}
149
- @click=${this.handleClick}
150
- @input=${this.handleInput}
151
- @invalid=${this.handleInvalid}
152
- @blur=${this.handleBlur}
153
- @focus=${this.handleFocus}
154
- @keydown=${this.handleKeyDown}
155
- />
161
+ >
162
+ <input
163
+ class="switch__input"
164
+ type="checkbox"
165
+ title=${this.title}
166
+ name=${this.name}
167
+ value=${ifDefined(this.value)}
168
+ .checked=${live(this.checked)}
169
+ .disabled=${this.disabled}
170
+ .required=${this.required}
171
+ role="switch"
172
+ aria-checked=${this.checked ? "true" : "false"}
173
+ aria-describedby="help-text"
174
+ @click=${this.handleClick}
175
+ @input=${this.handleInput}
176
+ @invalid=${this.handleInvalid}
177
+ @blur=${this.handleBlur}
178
+ @focus=${this.handleFocus}
179
+ @keydown=${this.handleKeyDown}
180
+ />
156
181
 
157
- <span part="control" class="switch__control">
158
- <span part="thumb" class="switch__thumb"></span>
159
- </span>
182
+ <span part="control" class="switch__control">
183
+ <span part="thumb" class="switch__thumb"></span>
184
+ </span>
160
185
 
161
- <div part="label" class="switch__label">
162
- <slot></slot>
186
+ <div part="label" class="switch__label">
187
+ <slot></slot>
188
+ </div>
189
+ </label>
190
+
191
+ <div
192
+ aria-hidden=${hasHelpText ? "false" : "true"}
193
+ class="form-control__help-text"
194
+ id="help-text"
195
+ part="form-control-help-text"
196
+ >
197
+ <slot name="help-text">${this.helpText}</slot>
163
198
  </div>
164
- </label>
199
+ </div>
165
200
  `;
166
201
  }
167
202
  };
168
- SynSwitch.styles = switch_styles_default;
203
+ SynSwitch.styles = [component_styles_default, form_control_styles_default, switch_styles_default, form_control_custom_styles_default, switch_custom_styles_default];
169
204
  __decorateClass([
170
205
  query('input[type="checkbox"]')
171
206
  ], SynSwitch.prototype, "input", 2);
@@ -199,6 +234,9 @@ __decorateClass([
199
234
  __decorateClass([
200
235
  property({ type: Boolean, reflect: true })
201
236
  ], SynSwitch.prototype, "required", 2);
237
+ __decorateClass([
238
+ property({ attribute: "help-text" })
239
+ ], SynSwitch.prototype, "helpText", 2);
202
240
  __decorateClass([
203
241
  watch("checked", { waitUntilFirstUpdate: true })
204
242
  ], SynSwitch.prototype, "handleCheckedChange", 1);
@@ -209,4 +247,4 @@ __decorateClass([
209
247
  export {
210
248
  SynSwitch
211
249
  };
212
- //# sourceMappingURL=chunk.JBHQJWOB.js.map
250
+ //# sourceMappingURL=chunk.KDDTDU4B.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/switch/switch.component.ts"],
4
+ "sourcesContent": ["// ---------------------------------------------------------------------\n// \uD83D\uDD12 AUTOGENERATED BY VENDORISM\n// Removing this comment will prevent it from being managed by it.\n// ---------------------------------------------------------------------\n\n/* eslint-disable */\nimport { classMap } from 'lit/directives/class-map.js';\nimport { defaultValue } from '../../internal/default-value.js';\nimport { FormControlController } from '../../internal/form.js';\nimport { HasSlotController } from '../../internal/slot.js';\nimport { html } from 'lit';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { property, query, state } from 'lit/decorators.js';\nimport { watch } from '../../internal/watch.js';\nimport componentStyles from '../../styles/component.styles.js';\nimport formControlStyles from '../../styles/form-control.styles.js';\nimport formControlCustomStyles from '../../styles/form-control.custom.styles.js';\nimport SynergyElement from '../../internal/synergy-element.js';\nimport styles from './switch.styles.js';\nimport customStyles from './switch.custom.styles.js';\nimport type { CSSResultGroup } from 'lit';\nimport type { SynergyFormControl } from '../../internal/synergy-element.js';\n\n/**\n * @summary Switches allow the user to toggle an option on or off.\n * @documentation https://synergy.style/components/switch\n * @status stable\n * @since 2.0\n *\n * @slot - The switch's label.\n * @slot help-text - Text that describes how to use the switch. Alternatively, you can use the `help-text` attribute.\n *\n * @event syn-blur - Emitted when the control loses focus.\n * @event syn-change - Emitted when the control's checked state changes.\n * @event syn-input - Emitted when the control receives input.\n * @event syn-focus - Emitted when the control gains focus.\n * @event syn-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n *\n * @csspart base - The component's base wrapper.\n * @csspart control - The control that houses the switch's thumb.\n * @csspart thumb - The switch's thumb.\n * @csspart label - The switch's label.\n * @csspart form-control-help-text - The help text's wrapper.\n *\n * @cssproperty --width - The width of the switch.\n * @cssproperty --height - The height of the switch.\n * @cssproperty --thumb-size - The size of the thumb.\n */\nexport default class SynSwitch extends SynergyElement implements SynergyFormControl {\n static styles: CSSResultGroup = [componentStyles, formControlStyles, styles, formControlCustomStyles, customStyles];\n\n private readonly formControlController = new FormControlController(this, {\n value: (control: SynSwitch) => (control.checked ? control.value || 'on' : undefined),\n defaultValue: (control: SynSwitch) => control.defaultChecked,\n setValue: (control: SynSwitch, checked: boolean) => (control.checked = checked)\n });\n private readonly hasSlotController = new HasSlotController(this, 'help-text');\n\n @query('input[type=\"checkbox\"]') input: HTMLInputElement;\n\n @state() private hasFocus = false;\n @property() title = ''; // make reactive to pass through\n\n /** The name of the switch, submitted as a name/value pair with form data. */\n @property() name = '';\n\n /** The current value of the switch, submitted as a name/value pair with form data. */\n @property() value: string;\n\n /** The switch's size. */\n @property({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Disables the switch. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** Draws the switch in a checked state. */\n @property({ type: Boolean, reflect: true }) checked = false;\n\n /** The default value of the form control. Primarily used for resetting the form control. */\n @defaultValue('checked') defaultChecked = false;\n\n /**\n * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\n * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in\n * the same document or shadow root for this to work.\n */\n @property({ reflect: true }) form = '';\n\n /** Makes the switch a required field. */\n @property({ type: Boolean, reflect: true }) required = false;\n\n /** The switch's help text. If you need to display HTML, use the `help-text` slot instead. */\n @property({ attribute: 'help-text' }) helpText = '';\n\n /** Gets the validity state object */\n get validity() {\n return this.input.validity;\n }\n\n /** Gets the validation message */\n get validationMessage() {\n return this.input.validationMessage;\n }\n\n firstUpdated() {\n this.formControlController.updateValidity();\n }\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('syn-blur');\n }\n\n private handleInput() {\n this.emit('syn-input');\n }\n\n private handleInvalid(event: Event) {\n this.formControlController.setValidity(false);\n this.formControlController.emitInvalidEvent(event);\n }\n\n private handleClick() {\n this.checked = !this.checked;\n this.emit('syn-change');\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('syn-focus');\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n this.checked = false;\n this.emit('syn-change');\n this.emit('syn-input');\n }\n\n if (event.key === 'ArrowRight') {\n event.preventDefault();\n this.checked = true;\n this.emit('syn-change');\n this.emit('syn-input');\n }\n }\n\n @watch('checked', { waitUntilFirstUpdate: true })\n handleCheckedChange() {\n this.input.checked = this.checked; // force a sync update\n this.formControlController.updateValidity();\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n handleDisabledChange() {\n // Disabled form controls are always valid\n this.formControlController.setValidity(true);\n }\n\n /** Simulates a click on the switch. */\n click() {\n this.input.click();\n }\n\n /** Sets focus on the switch. */\n focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /** Removes focus from the switch. */\n blur() {\n this.input.blur();\n }\n\n /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */\n checkValidity() {\n return this.input.checkValidity();\n }\n\n /** Gets the associated form, if one exists. */\n getForm(): HTMLFormElement | null {\n return this.formControlController.getForm();\n }\n\n /** Checks for validity and shows the browser's validation message if the control is invalid. */\n reportValidity() {\n return this.input.reportValidity();\n }\n\n /** Sets a custom validation message. Pass an empty string to restore validity. */\n setCustomValidity(message: string) {\n this.input.setCustomValidity(message);\n this.formControlController.updateValidity();\n }\n\n render() {\n const hasHelpTextSlot = this.hasSlotController.test('help-text');\n const hasHelpText = this.helpText ? true : !!hasHelpTextSlot;\n\n return html`\n <div\n class=${classMap({\n 'form-control': true,\n 'form-control--small': this.size === 'small',\n 'form-control--medium': this.size === 'medium',\n 'form-control--large': this.size === 'large',\n 'form-control--has-help-text': hasHelpText\n })}\n >\n <label\n part=\"base\"\n class=${classMap({\n switch: true,\n 'switch--checked': this.checked,\n 'switch--disabled': this.disabled,\n 'switch--focused': this.hasFocus,\n 'switch--small': this.size === 'small',\n 'switch--medium': this.size === 'medium',\n 'switch--large': this.size === 'large'\n })}\n >\n <input\n class=\"switch__input\"\n type=\"checkbox\"\n title=${this.title /* An empty title prevents browser validation tooltips from appearing on hover */}\n name=${this.name}\n value=${ifDefined(this.value)}\n .checked=${live(this.checked)}\n .disabled=${this.disabled}\n .required=${this.required}\n role=\"switch\"\n aria-checked=${this.checked ? 'true' : 'false'}\n aria-describedby=\"help-text\"\n @click=${this.handleClick}\n @input=${this.handleInput}\n @invalid=${this.handleInvalid}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @keydown=${this.handleKeyDown}\n />\n\n <span part=\"control\" class=\"switch__control\">\n <span part=\"thumb\" class=\"switch__thumb\"></span>\n </span>\n\n <div part=\"label\" class=\"switch__label\">\n <slot></slot>\n </div>\n </label>\n\n <div\n aria-hidden=${hasHelpText ? 'false' : 'true'}\n class=\"form-control__help-text\"\n id=\"help-text\"\n part=\"form-control-help-text\"\n >\n <slot name=\"help-text\">${this.helpText}</slot>\n </div>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'syn-switch': SynSwitch;\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,21 +1,32 @@
1
1
  import {
2
2
  defaultValue
3
3
  } from "./chunk.WFAJR3FN.js";
4
+ import {
5
+ form_control_custom_styles_default,
6
+ form_control_styles_default
7
+ } from "./chunk.TTL762VF.js";
8
+ import {
9
+ checkbox_custom_styles_default
10
+ } from "./chunk.2XZKXVMR.js";
4
11
  import {
5
12
  checkbox_styles_default
6
- } from "./chunk.4CBN5LPQ.js";
13
+ } from "./chunk.3STW62TA.js";
7
14
  import {
8
15
  FormControlController
9
- } from "./chunk.2Z2GYRLO.js";
16
+ } from "./chunk.SZCGMXW5.js";
17
+ import {
18
+ HasSlotController
19
+ } from "./chunk.XGXFE6IF.js";
10
20
  import {
11
21
  SynIcon
12
- } from "./chunk.35PHCFSV.js";
22
+ } from "./chunk.PWMSNMDF.js";
13
23
  import {
14
24
  watch
15
25
  } from "./chunk.AVTU2BGE.js";
16
26
  import {
17
- SynergyElement
18
- } from "./chunk.WDX7XUUK.js";
27
+ SynergyElement,
28
+ component_styles_default
29
+ } from "./chunk.3DE5ARIC.js";
19
30
  import {
20
31
  __decorateClass
21
32
  } from "./chunk.QNDC5KWA.js";
@@ -34,6 +45,7 @@ var SynCheckbox = class extends SynergyElement {
34
45
  defaultValue: (control) => control.defaultChecked,
35
46
  setValue: (control, checked) => control.checked = checked
36
47
  });
48
+ this.hasSlotController = new HasSlotController(this, "help-text");
37
49
  this.hasFocus = false;
38
50
  this.title = "";
39
51
  this.name = "";
@@ -44,6 +56,7 @@ var SynCheckbox = class extends SynergyElement {
44
56
  this.defaultChecked = false;
45
57
  this.form = "";
46
58
  this.required = false;
59
+ this.helpText = "";
47
60
  }
48
61
  /** Gets the validity state object */
49
62
  get validity() {
@@ -117,10 +130,21 @@ var SynCheckbox = class extends SynergyElement {
117
130
  this.formControlController.updateValidity();
118
131
  }
119
132
  render() {
133
+ const hasHelpTextSlot = this.hasSlotController.test("help-text");
134
+ const hasHelpText = this.helpText ? true : !!hasHelpTextSlot;
120
135
  return html`
121
- <label
122
- part="base"
136
+ <div
123
137
  class=${classMap({
138
+ "form-control": true,
139
+ "form-control--small": this.size === "small",
140
+ "form-control--medium": this.size === "medium",
141
+ "form-control--large": this.size === "large",
142
+ "form-control--has-help-text": hasHelpText
143
+ })}
144
+ >
145
+ <label
146
+ part="base"
147
+ class=${classMap({
124
148
  checkbox: true,
125
149
  "checkbox--checked": this.checked,
126
150
  "checkbox--disabled": this.disabled,
@@ -130,50 +154,61 @@ var SynCheckbox = class extends SynergyElement {
130
154
  "checkbox--medium": this.size === "medium",
131
155
  "checkbox--large": this.size === "large"
132
156
  })}
133
- >
134
- <input
135
- class="checkbox__input"
136
- type="checkbox"
137
- title=${this.title}
138
- name=${this.name}
139
- value=${ifDefined(this.value)}
140
- .indeterminate=${live(this.indeterminate)}
141
- .checked=${live(this.checked)}
142
- .disabled=${this.disabled}
143
- .required=${this.required}
144
- aria-checked=${this.checked ? "true" : "false"}
145
- @click=${this.handleClick}
146
- @input=${this.handleInput}
147
- @invalid=${this.handleInvalid}
148
- @blur=${this.handleBlur}
149
- @focus=${this.handleFocus}
150
- />
151
-
152
- <span
153
- part="control${this.checked ? " control--checked" : ""}${this.indeterminate ? " control--indeterminate" : ""}"
154
- class="checkbox__control"
155
157
  >
156
- ${this.checked ? html`
157
- <syn-icon part="checked-icon" class="checkbox__checked-icon" library="system" name="check"></syn-icon>
158
- ` : ""}
159
- ${!this.checked && this.indeterminate ? html`
160
- <syn-icon
161
- part="indeterminate-icon"
162
- class="checkbox__indeterminate-icon"
163
- library="system"
164
- name="indeterminate"
165
- ></syn-icon>
166
- ` : ""}
167
- </span>
158
+ <input
159
+ class="checkbox__input"
160
+ type="checkbox"
161
+ title=${this.title}
162
+ name=${this.name}
163
+ value=${ifDefined(this.value)}
164
+ .indeterminate=${live(this.indeterminate)}
165
+ .checked=${live(this.checked)}
166
+ .disabled=${this.disabled}
167
+ .required=${this.required}
168
+ aria-checked=${this.checked ? "true" : "false"}
169
+ aria-describedby="help-text"
170
+ @click=${this.handleClick}
171
+ @input=${this.handleInput}
172
+ @invalid=${this.handleInvalid}
173
+ @blur=${this.handleBlur}
174
+ @focus=${this.handleFocus}
175
+ />
176
+
177
+ <span
178
+ part="control${this.checked ? " control--checked" : ""}${this.indeterminate ? " control--indeterminate" : ""}"
179
+ class="checkbox__control"
180
+ >
181
+ ${this.checked ? html`
182
+ <syn-icon part="checked-icon" class="checkbox__checked-icon" library="system" name="check"></syn-icon>
183
+ ` : ""}
184
+ ${!this.checked && this.indeterminate ? html`
185
+ <syn-icon
186
+ part="indeterminate-icon"
187
+ class="checkbox__indeterminate-icon"
188
+ library="system"
189
+ name="indeterminate"
190
+ ></syn-icon>
191
+ ` : ""}
192
+ </span>
193
+
194
+ <div part="label" class="checkbox__label">
195
+ <slot></slot>
196
+ </div>
197
+ </label>
168
198
 
169
- <div part="label" class="checkbox__label">
170
- <slot></slot>
199
+ <div
200
+ aria-hidden=${hasHelpText ? "false" : "true"}
201
+ class="form-control__help-text"
202
+ id="help-text"
203
+ part="form-control-help-text"
204
+ >
205
+ <slot name="help-text">${this.helpText}</slot>
171
206
  </div>
172
- </label>
207
+ </div>
173
208
  `;
174
209
  }
175
210
  };
176
- SynCheckbox.styles = checkbox_styles_default;
211
+ SynCheckbox.styles = [component_styles_default, checkbox_styles_default, form_control_styles_default, form_control_custom_styles_default, checkbox_custom_styles_default];
177
212
  SynCheckbox.dependencies = { "syn-icon": SynIcon };
178
213
  __decorateClass([
179
214
  query('input[type="checkbox"]')
@@ -211,6 +246,9 @@ __decorateClass([
211
246
  __decorateClass([
212
247
  property({ type: Boolean, reflect: true })
213
248
  ], SynCheckbox.prototype, "required", 2);
249
+ __decorateClass([
250
+ property({ attribute: "help-text" })
251
+ ], SynCheckbox.prototype, "helpText", 2);
214
252
  __decorateClass([
215
253
  watch("disabled", { waitUntilFirstUpdate: true })
216
254
  ], SynCheckbox.prototype, "handleDisabledChange", 1);
@@ -221,4 +259,4 @@ __decorateClass([
221
259
  export {
222
260
  SynCheckbox
223
261
  };
224
- //# sourceMappingURL=chunk.Y4QKFZLK.js.map
262
+ //# sourceMappingURL=chunk.KNXO2FGQ.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/checkbox/checkbox.component.ts"],
4
+ "sourcesContent": ["// ---------------------------------------------------------------------\n// \uD83D\uDD12 AUTOGENERATED BY VENDORISM\n// Removing this comment will prevent it from being managed by it.\n// ---------------------------------------------------------------------\n\n/* eslint-disable */\nimport { classMap } from 'lit/directives/class-map.js';\nimport { defaultValue } from '../../internal/default-value.js';\nimport { FormControlController } from '../../internal/form.js';\nimport { HasSlotController } from '../../internal/slot.js';\nimport { html } from 'lit';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { property, query, state } from 'lit/decorators.js';\nimport { watch } from '../../internal/watch.js';\nimport componentStyles from '../../styles/component.styles.js';\nimport SynergyElement from '../../internal/synergy-element.js';\nimport SynIcon from '../icon/icon.component.js';\nimport styles from './checkbox.styles.js';\nimport formControlStyles from '../../styles/form-control.styles.js';\nimport formControlCustomStyles from '../../styles/form-control.custom.styles.js';\nimport customStyles from './checkbox.custom.styles.js';\nimport type { CSSResultGroup } from 'lit';\nimport type { SynergyFormControl } from '../../internal/synergy-element.js';\n\n/**\n * @summary Checkboxes allow the user to toggle an option on or off.\n * @documentation https://synergy.style/components/checkbox\n * @status stable\n * @since 2.0\n *\n * @dependency syn-icon\n *\n * @slot - The checkbox's label.\n * @slot help-text - Text that describes how to use the checkbox. Alternatively, you can use the `help-text` attribute.\n *\n * @event syn-blur - Emitted when the checkbox loses focus.\n * @event syn-change - Emitted when the checked state changes.\n * @event syn-focus - Emitted when the checkbox gains focus.\n * @event syn-input - Emitted when the checkbox receives input.\n * @event syn-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n *\n * @csspart base - The component's base wrapper.\n * @csspart control - The square container that wraps the checkbox's checked state.\n * @csspart control--checked - Matches the control part when the checkbox is checked.\n * @csspart control--indeterminate - Matches the control part when the checkbox is indeterminate.\n * @csspart checked-icon - The checked icon, an `<syn-icon>` element.\n * @csspart indeterminate-icon - The indeterminate icon, an `<syn-icon>` element.\n * @csspart label - The container that wraps the checkbox's label.\n * @csspart form-control-help-text - The help text's wrapper.\n */\nexport default class SynCheckbox extends SynergyElement implements SynergyFormControl {\n static styles: CSSResultGroup = [componentStyles, styles, formControlStyles, formControlCustomStyles, customStyles];\n static dependencies = { 'syn-icon': SynIcon };\n\n private readonly formControlController = new FormControlController(this, {\n value: (control: SynCheckbox) => (control.checked ? control.value || 'on' : undefined),\n defaultValue: (control: SynCheckbox) => control.defaultChecked,\n setValue: (control: SynCheckbox, checked: boolean) => (control.checked = checked)\n });\n private readonly hasSlotController = new HasSlotController(this, 'help-text');\n\n @query('input[type=\"checkbox\"]') input: HTMLInputElement;\n\n @state() private hasFocus = false;\n\n @property() title = ''; // make reactive to pass through\n\n /** The name of the checkbox, submitted as a name/value pair with form data. */\n @property() name = '';\n\n /** The current value of the checkbox, submitted as a name/value pair with form data. */\n @property() value: string;\n\n /** The checkbox's size. */\n @property({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Disables the checkbox. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** Draws the checkbox in a checked state. */\n @property({ type: Boolean, reflect: true }) checked = false;\n\n /**\n * Draws the checkbox in an indeterminate state. This is usually applied to checkboxes that represents a \"select\n * all/none\" behavior when associated checkboxes have a mix of checked and unchecked states.\n */\n @property({ type: Boolean, reflect: true }) indeterminate = false;\n\n /** The default value of the form control. Primarily used for resetting the form control. */\n @defaultValue('checked') defaultChecked = false;\n\n /**\n * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\n * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in\n * the same document or shadow root for this to work.\n */\n @property({ reflect: true }) form = '';\n\n /** Makes the checkbox a required field. */\n @property({ type: Boolean, reflect: true }) required = false;\n\n /** The checkbox's help text. If you need to display HTML, use the `help-text` slot instead. */\n @property({ attribute: 'help-text' }) helpText = '';\n\n /** Gets the validity state object */\n get validity() {\n return this.input.validity;\n }\n\n /** Gets the validation message */\n get validationMessage() {\n return this.input.validationMessage;\n }\n\n firstUpdated() {\n this.formControlController.updateValidity();\n }\n\n private handleClick() {\n this.checked = !this.checked;\n this.indeterminate = false;\n this.emit('syn-change');\n }\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('syn-blur');\n }\n\n private handleInput() {\n this.emit('syn-input');\n }\n\n private handleInvalid(event: Event) {\n this.formControlController.setValidity(false);\n this.formControlController.emitInvalidEvent(event);\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('syn-focus');\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n handleDisabledChange() {\n // Disabled form controls are always valid\n this.formControlController.setValidity(this.disabled);\n }\n\n @watch(['checked', 'indeterminate'], { waitUntilFirstUpdate: true })\n handleStateChange() {\n this.input.checked = this.checked; // force a sync update\n this.input.indeterminate = this.indeterminate; // force a sync update\n this.formControlController.updateValidity();\n }\n\n /** Simulates a click on the checkbox. */\n click() {\n this.input.click();\n }\n\n /** Sets focus on the checkbox. */\n focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /** Removes focus from the checkbox. */\n blur() {\n this.input.blur();\n }\n\n /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */\n checkValidity() {\n return this.input.checkValidity();\n }\n\n /** Gets the associated form, if one exists. */\n getForm(): HTMLFormElement | null {\n return this.formControlController.getForm();\n }\n\n /** Checks for validity and shows the browser's validation message if the control is invalid. */\n reportValidity() {\n return this.input.reportValidity();\n }\n\n /**\n * Sets a custom validation message. The value provided will be shown to the user when the form is submitted. To clear\n * the custom validation message, call this method with an empty string.\n */\n setCustomValidity(message: string) {\n this.input.setCustomValidity(message);\n this.formControlController.updateValidity();\n }\n\n render() {\n const hasHelpTextSlot = this.hasSlotController.test('help-text');\n const hasHelpText = this.helpText ? true : !!hasHelpTextSlot;\n\n //\n // NOTE: we use a <div> around the label slot because of this Chrome bug.\n //\n // https://bugs.chromium.org/p/chromium/issues/detail?id=1413733\n //\n return html`\n <div\n class=${classMap({\n 'form-control': true,\n 'form-control--small': this.size === 'small',\n 'form-control--medium': this.size === 'medium',\n 'form-control--large': this.size === 'large',\n 'form-control--has-help-text': hasHelpText\n })}\n >\n <label\n part=\"base\"\n class=${classMap({\n checkbox: true,\n 'checkbox--checked': this.checked,\n 'checkbox--disabled': this.disabled,\n 'checkbox--focused': this.hasFocus,\n 'checkbox--indeterminate': this.indeterminate,\n 'checkbox--small': this.size === 'small',\n 'checkbox--medium': this.size === 'medium',\n 'checkbox--large': this.size === 'large'\n })}\n >\n <input\n class=\"checkbox__input\"\n type=\"checkbox\"\n title=${this.title /* An empty title prevents browser validation tooltips from appearing on hover */}\n name=${this.name}\n value=${ifDefined(this.value)}\n .indeterminate=${live(this.indeterminate)}\n .checked=${live(this.checked)}\n .disabled=${this.disabled}\n .required=${this.required}\n aria-checked=${this.checked ? 'true' : 'false'}\n aria-describedby=\"help-text\"\n @click=${this.handleClick}\n @input=${this.handleInput}\n @invalid=${this.handleInvalid}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n />\n\n <span\n part=\"control${this.checked ? ' control--checked' : ''}${this.indeterminate\n ? ' control--indeterminate'\n : ''}\"\n class=\"checkbox__control\"\n >\n ${this.checked\n ? html`\n <syn-icon part=\"checked-icon\" class=\"checkbox__checked-icon\" library=\"system\" name=\"check\"></syn-icon>\n `\n : ''}\n ${!this.checked && this.indeterminate\n ? html`\n <syn-icon\n part=\"indeterminate-icon\"\n class=\"checkbox__indeterminate-icon\"\n library=\"system\"\n name=\"indeterminate\"\n ></syn-icon>\n `\n : ''}\n </span>\n\n <div part=\"label\" class=\"checkbox__label\">\n <slot></slot>\n </div>\n </label>\n\n <div\n aria-hidden=${hasHelpText ? 'false' : 'true'}\n class=\"form-control__help-text\"\n id=\"help-text\"\n part=\"form-control-help-text\"\n >\n <slot name=\"help-text\">${this.helpText}</slot>\n </div>\n </div>\n `;\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  formCollections
3
- } from "./chunk.2Z2GYRLO.js";
3
+ } from "./chunk.SZCGMXW5.js";
4
4
 
5
5
  // src/utilities/form.ts
6
6
  function serialize(form) {
@@ -39,4 +39,4 @@ export {
39
39
  serialize,
40
40
  getFormControls
41
41
  };
42
- //# sourceMappingURL=chunk.JSO3PKB4.js.map
42
+ //# sourceMappingURL=chunk.KUO3KJOC.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynDivider
3
- } from "./chunk.ERNEIORV.js";
3
+ } from "./chunk.XEI5ZP7Y.js";
4
4
 
5
5
  // src/components/divider/divider.ts
6
6
  var divider_default = SynDivider;
@@ -9,4 +9,4 @@ SynDivider.define("syn-divider");
9
9
  export {
10
10
  divider_default
11
11
  };
12
- //# sourceMappingURL=chunk.WP6T5CG2.js.map
12
+ //# sourceMappingURL=chunk.LF2XSSHD.js.map
@@ -1,16 +1,7 @@
1
- import {
2
- icon_button_custom_styles_default
3
- } from "./chunk.OJF7KL44.js";
4
- import {
5
- component_styles_default
6
- } from "./chunk.O7USYXBT.js";
7
-
8
1
  // src/components/icon-button/icon-button.styles.ts
9
2
  import { css } from "lit";
10
3
  var icon_button_styles_default = css`
11
4
  /* stylelint-disable */
12
- ${component_styles_default}
13
-
14
5
  :host {
15
6
  display: inline-block;
16
7
  color: var(--syn-color-neutral-600);
@@ -57,11 +48,9 @@ var icon_button_styles_default = css`
57
48
  .icon-button__icon {
58
49
  pointer-events: none;
59
50
  }
60
-
61
- ${icon_button_custom_styles_default}
62
51
  `;
63
52
 
64
53
  export {
65
54
  icon_button_styles_default
66
55
  };
67
- //# sourceMappingURL=chunk.2FN5DTS6.js.map
56
+ //# sourceMappingURL=chunk.LJQ7LEPV.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/icon-button/icon-button.styles.ts"],
4
+ "sourcesContent": ["// ---------------------------------------------------------------------\n// \uD83D\uDD12 AUTOGENERATED BY VENDORISM\n// Removing this comment will prevent it from being managed by it.\n// ---------------------------------------------------------------------\n\n/* eslint-disable */\nimport { css } from 'lit';\n\nexport default css`\n\t/* stylelint-disable */\n :host {\n display: inline-block;\n color: var(--syn-color-neutral-600);\n }\n\n .icon-button {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n background: none;\n border: none;\n border-radius: var(--syn-border-radius-medium);\n font-size: inherit;\n color: inherit;\n padding: var(--syn-spacing-x-small);\n cursor: pointer;\n transition: var(--syn-transition-x-fast) color;\n -webkit-appearance: none;\n }\n\n .icon-button:hover:not(.icon-button--disabled),\n .icon-button:focus-visible:not(.icon-button--disabled) {\n color: var(--syn-color-primary-600);\n }\n\n .icon-button:active:not(.icon-button--disabled) {\n color: var(--syn-color-primary-700);\n }\n\n .icon-button:focus {\n outline: none;\n }\n\n .icon-button--disabled {\n opacity: 0.5;\n cursor: not-allowed;\n }\n\n .icon-button:focus-visible {\n outline: var(--syn-focus-ring);\n outline-offset: var(--syn-focus-ring-offset);\n }\n\n .icon-button__icon {\n pointer-events: none;\n }\n`;\n"],
5
+ "mappings": ";AAMA,SAAS,WAAW;AAEpB,IAAO,6BAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;",
6
+ "names": []
7
+ }