@synergy-design-system/components 2.4.2 → 2.4.3

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 (254) hide show
  1. package/README.md +5 -1
  2. package/dist/chunks/{chunk.4UZBHZB7.js → chunk.2BKN4SVL.js} +2 -2
  3. package/dist/chunks/{chunk.XXWU2N6Z.js → chunk.2BVNVTCJ.js} +2 -2
  4. package/dist/chunks/{chunk.7J3ICWNG.js → chunk.2FHYURSV.js} +2 -2
  5. package/dist/chunks/{chunk.5LL426KP.js → chunk.4H3F5YVU.js} +2 -2
  6. package/dist/chunks/{chunk.T3KEPARA.js → chunk.4HBNKWDI.js} +2 -2
  7. package/dist/chunks/{chunk.MI6OSBNZ.js → chunk.4HSU3RZA.js} +2 -2
  8. package/dist/chunks/{chunk.E5Q4S6J5.js → chunk.4UGAAIOV.js} +2 -2
  9. package/dist/chunks/{chunk.LIQFEI76.js → chunk.4ZAIWKYK.js} +2 -2
  10. package/dist/chunks/{chunk.AGX3EDVR.js → chunk.5BUBL7JY.js} +2 -2
  11. package/dist/chunks/{chunk.PLEO5ZHI.js → chunk.5C2N3OG3.js} +2 -2
  12. package/dist/chunks/{chunk.YA3UERHI.js → chunk.5CL6DHME.js} +2 -2
  13. package/dist/chunks/{chunk.N3MYRPRM.js → chunk.5KE7YYYL.js} +2 -2
  14. package/dist/chunks/{chunk.CKB73XBB.js → chunk.5UWGWBIX.js} +2 -2
  15. package/dist/chunks/{chunk.SAKDWMDC.js → chunk.6JHUWKC2.js} +3 -3
  16. package/dist/chunks/{chunk.MBWZTWQ3.js → chunk.7MRLMCDG.js} +5 -5
  17. package/dist/chunks/{chunk.5UBU4JQJ.js → chunk.A54YJOJZ.js} +2 -2
  18. package/dist/chunks/{chunk.QN4VTDCL.js → chunk.AD7URUHH.js} +2 -2
  19. package/dist/chunks/{chunk.ZDIP5E5M.js → chunk.AVNL6XBJ.js} +3 -3
  20. package/dist/chunks/{chunk.T4V4ARKQ.js → chunk.B4PYRXCV.js} +3 -3
  21. package/dist/chunks/{chunk.GLQRGWLN.js → chunk.BCREP7HQ.js} +2 -2
  22. package/dist/chunks/{chunk.MP6GCBDQ.js → chunk.CN4QRO22.js} +2 -2
  23. package/dist/chunks/{chunk.ZG6RQJZT.js → chunk.DCILBP5O.js} +2 -2
  24. package/dist/chunks/{chunk.BRQJBVSR.js → chunk.DFR3UNMT.js} +3 -3
  25. package/dist/chunks/{chunk.I5GHSBBB.js → chunk.DNYMFI4T.js} +2 -2
  26. package/dist/chunks/{chunk.X4BO4K4B.js → chunk.DOHCZXOF.js} +2 -2
  27. package/dist/chunks/{chunk.CX6BVBUN.js → chunk.DXNSNACZ.js} +2 -2
  28. package/dist/chunks/{chunk.HXW47ZEU.js → chunk.EHZE3CKH.js} +6 -6
  29. package/dist/chunks/{chunk.I7T6CYDB.js → chunk.F5LLLIE5.js} +3 -3
  30. package/dist/chunks/{chunk.5KKWOVVC.js → chunk.FO3NV7MY.js} +3 -3
  31. package/dist/chunks/{chunk.VVYBWDVV.js → chunk.FZKUXUK6.js} +3 -3
  32. package/dist/chunks/{chunk.XBUFNX4L.js → chunk.GCI7QWTQ.js} +2 -2
  33. package/dist/chunks/{chunk.KM4XNOFN.js → chunk.GJPZZH76.js} +2 -2
  34. package/dist/chunks/{chunk.3H2H5FNB.js → chunk.H4EFGKKT.js} +2 -2
  35. package/dist/chunks/{chunk.JSGXW7HG.js → chunk.IUBRJUHB.js} +2 -2
  36. package/dist/chunks/{chunk.YLOY6MCX.js → chunk.J47HF5GZ.js} +3 -3
  37. package/dist/chunks/{chunk.PJYYK2T7.js → chunk.JBSLSPA4.js} +2 -2
  38. package/dist/chunks/{chunk.3FSNN2LA.js → chunk.JBW7QDPF.js} +2 -2
  39. package/dist/chunks/{chunk.AL5JOFXG.js → chunk.KBUOEYFD.js} +2 -2
  40. package/dist/chunks/{chunk.WX7OJEBN.js → chunk.KDBBMF6R.js} +5 -5
  41. package/dist/chunks/{chunk.KEZEYBVJ.js → chunk.KOZGQJ42.js} +2 -2
  42. package/dist/chunks/{chunk.XJBZVH65.js → chunk.KP7ABNMV.js} +4 -4
  43. package/dist/chunks/{chunk.3F4PA2RJ.js → chunk.KU3GIITB.js} +2 -2
  44. package/dist/chunks/{chunk.ICJERNQU.js → chunk.LITNZ5UP.js} +2 -2
  45. package/dist/chunks/{chunk.YLOGCYYH.js → chunk.LLNHJVT6.js} +2 -2
  46. package/dist/chunks/{chunk.IPKUHOKD.js → chunk.LVMOATGP.js} +3 -3
  47. package/dist/chunks/{chunk.RVQ3X7WC.js → chunk.MIF4NFFN.js} +2 -2
  48. package/dist/chunks/{chunk.RVQ3X7WC.js.map → chunk.MIF4NFFN.js.map} +1 -1
  49. package/dist/chunks/{chunk.YYWFJREC.js → chunk.MLTJKLDB.js} +2 -2
  50. package/dist/chunks/{chunk.JKNV2DRD.js → chunk.MQMVF4PW.js} +3 -3
  51. package/dist/chunks/{chunk.LOVGEUYP.js → chunk.MVZJDKSR.js} +3 -3
  52. package/dist/chunks/{chunk.LOVGEUYP.js.map → chunk.MVZJDKSR.js.map} +1 -1
  53. package/dist/chunks/{chunk.3JFJNUVB.js → chunk.NCS3KNSS.js} +2 -2
  54. package/dist/chunks/{chunk.NATMLGVF.js → chunk.NH5UF5W4.js} +4 -4
  55. package/dist/chunks/{chunk.A7HLSENR.js → chunk.NMM47RXC.js} +2 -2
  56. package/dist/chunks/{chunk.6BAQMGDG.js → chunk.NUHI5YB7.js} +5 -5
  57. package/dist/chunks/{chunk.BJEVUOBO.js → chunk.OPAVUSG6.js} +3 -3
  58. package/dist/chunks/{chunk.OPOK7CZS.js → chunk.PD4GEYPT.js} +2 -2
  59. package/dist/chunks/{chunk.JJ6N7OHW.js → chunk.PVBLEKYQ.js} +2 -2
  60. package/dist/chunks/{chunk.6NWT6L3K.js → chunk.Q63T23NX.js} +2 -2
  61. package/dist/chunks/{chunk.DCR5ERAC.js → chunk.QGODDF6V.js} +2 -2
  62. package/dist/chunks/{chunk.OSLTEHUP.js → chunk.QH5LWFIU.js} +2 -2
  63. package/dist/chunks/{chunk.MMG5DA2N.js → chunk.R2MO73SN.js} +2 -2
  64. package/dist/chunks/{chunk.22E7SPMA.js → chunk.R7FWD6IV.js} +2 -2
  65. package/dist/chunks/{chunk.A2Z57FBZ.js → chunk.RILCNQ7U.js} +2 -2
  66. package/dist/chunks/{chunk.BALZJ5OU.js → chunk.SMPYVOTL.js} +2 -2
  67. package/dist/chunks/{chunk.GFUY2Z3E.js → chunk.STPTOC6W.js} +2 -2
  68. package/dist/chunks/{chunk.SBRYVEQN.js → chunk.SW3NDC4L.js} +2 -2
  69. package/dist/chunks/{chunk.YKKAQLY3.js → chunk.TFC66SL6.js} +5 -4
  70. package/dist/chunks/chunk.TFC66SL6.js.map +7 -0
  71. package/dist/chunks/{chunk.4O3MCCWE.js → chunk.TJADLTCQ.js} +9 -9
  72. package/dist/chunks/{chunk.KGXWML3K.js → chunk.TQMD3CRX.js} +2 -2
  73. package/dist/chunks/{chunk.FCS3RTNQ.js → chunk.UWNJQDZP.js} +3 -3
  74. package/dist/chunks/{chunk.3PATCZJL.js → chunk.VA5J6CGG.js} +2 -2
  75. package/dist/chunks/{chunk.TYKSQSYN.js → chunk.VHASVP7B.js} +3 -3
  76. package/dist/chunks/{chunk.6WF7O7RF.js → chunk.VNQF6LEZ.js} +2 -2
  77. package/dist/chunks/{chunk.3GS7GYS7.js → chunk.W2S2MTUW.js} +2 -2
  78. package/dist/chunks/{chunk.HYSKDMI3.js → chunk.WM3ZKNS4.js} +2 -2
  79. package/dist/chunks/{chunk.5Z23XOZH.js → chunk.XHVDKQO2.js} +2 -2
  80. package/dist/chunks/{chunk.ODDKTIMC.js → chunk.XMS3V7AX.js} +3 -3
  81. package/dist/chunks/{chunk.2RROJC65.js → chunk.XRRZVMQT.js} +2 -2
  82. package/dist/chunks/{chunk.QODDLPTZ.js → chunk.XVFSTDCI.js} +2 -2
  83. package/dist/chunks/{chunk.W67OQ7TE.js → chunk.Y4LO5L6L.js} +2 -2
  84. package/dist/chunks/{chunk.5QBWRU76.js → chunk.YLRQUWVH.js} +2 -2
  85. package/dist/chunks/{chunk.D4YRKGVK.js → chunk.Z2XKAE7D.js} +3 -3
  86. package/dist/chunks/{chunk.YCT4K4JT.js → chunk.ZBJXFMXI.js} +8 -6
  87. package/dist/chunks/{chunk.YCT4K4JT.js.map → chunk.ZBJXFMXI.js.map} +2 -2
  88. package/dist/chunks/{chunk.6GNLD5GO.js → chunk.ZBYQDVMH.js} +3 -3
  89. package/dist/components/accordion/accordion.component.js +3 -3
  90. package/dist/components/accordion/accordion.js +4 -4
  91. package/dist/components/alert/alert.component.js +5 -5
  92. package/dist/components/alert/alert.js +6 -6
  93. package/dist/components/badge/badge.component.js +2 -2
  94. package/dist/components/badge/badge.js +3 -3
  95. package/dist/components/breadcrumb/breadcrumb.component.js +3 -3
  96. package/dist/components/breadcrumb/breadcrumb.js +4 -4
  97. package/dist/components/breadcrumb-item/breadcrumb-item.component.js +2 -2
  98. package/dist/components/breadcrumb-item/breadcrumb-item.js +3 -3
  99. package/dist/components/button/button.component.js +4 -4
  100. package/dist/components/button/button.js +5 -5
  101. package/dist/components/button-group/button-group.component.js +2 -2
  102. package/dist/components/button-group/button-group.js +3 -3
  103. package/dist/components/card/card.component.js +2 -2
  104. package/dist/components/card/card.js +3 -3
  105. package/dist/components/checkbox/checkbox.component.js +3 -3
  106. package/dist/components/checkbox/checkbox.js +4 -4
  107. package/dist/components/details/details.component.js +3 -3
  108. package/dist/components/details/details.js +4 -4
  109. package/dist/components/dialog/dialog.component.js +4 -4
  110. package/dist/components/dialog/dialog.js +5 -5
  111. package/dist/components/divider/divider.component.js +2 -2
  112. package/dist/components/divider/divider.js +3 -3
  113. package/dist/components/drawer/drawer.component.js +4 -4
  114. package/dist/components/drawer/drawer.js +5 -5
  115. package/dist/components/dropdown/dropdown.component.js +3 -3
  116. package/dist/components/dropdown/dropdown.js +4 -4
  117. package/dist/components/header/header.component.js +4 -4
  118. package/dist/components/header/header.js +5 -5
  119. package/dist/components/icon/icon.component.js +2 -2
  120. package/dist/components/icon/icon.js +3 -3
  121. package/dist/components/icon-button/icon-button.component.js +3 -3
  122. package/dist/components/icon-button/icon-button.js +4 -4
  123. package/dist/components/input/input.component.js +4 -4
  124. package/dist/components/input/input.js +5 -5
  125. package/dist/components/menu/menu.component.js +2 -2
  126. package/dist/components/menu/menu.js +3 -3
  127. package/dist/components/menu-item/menu-item.component.js +5 -5
  128. package/dist/components/menu-item/menu-item.js +6 -6
  129. package/dist/components/menu-label/menu-label.component.js +3 -3
  130. package/dist/components/menu-label/menu-label.js +4 -4
  131. package/dist/components/nav-item/nav-item.component.js +3 -3
  132. package/dist/components/nav-item/nav-item.js +4 -4
  133. package/dist/components/optgroup/optgroup.component.js +3 -3
  134. package/dist/components/optgroup/optgroup.js +4 -4
  135. package/dist/components/option/option.component.js +3 -3
  136. package/dist/components/option/option.js +4 -4
  137. package/dist/components/popup/popup.component.js +2 -2
  138. package/dist/components/popup/popup.js +3 -3
  139. package/dist/components/prio-nav/prio-nav.component.js +8 -8
  140. package/dist/components/prio-nav/prio-nav.js +9 -9
  141. package/dist/components/progress-bar/progress-bar.component.js +2 -2
  142. package/dist/components/progress-bar/progress-bar.js +3 -3
  143. package/dist/components/progress-ring/progress-ring.component.js +2 -2
  144. package/dist/components/progress-ring/progress-ring.js +3 -3
  145. package/dist/components/radio/radio.component.js +3 -3
  146. package/dist/components/radio/radio.js +4 -4
  147. package/dist/components/radio-button/radio-button.component.js +2 -2
  148. package/dist/components/radio-button/radio-button.js +3 -3
  149. package/dist/components/radio-group/radio-group.component.js +3 -3
  150. package/dist/components/radio-group/radio-group.js +4 -4
  151. package/dist/components/select/select.component.js +6 -6
  152. package/dist/components/select/select.js +7 -7
  153. package/dist/components/side-nav/side-nav.component.js +6 -6
  154. package/dist/components/side-nav/side-nav.js +7 -7
  155. package/dist/components/spinner/spinner.component.js +2 -2
  156. package/dist/components/spinner/spinner.js +3 -3
  157. package/dist/components/switch/switch.component.js +2 -2
  158. package/dist/components/switch/switch.js +3 -3
  159. package/dist/components/tab/tab.component.js +4 -4
  160. package/dist/components/tab/tab.js +5 -5
  161. package/dist/components/tab-group/tab-group.component.js +4 -4
  162. package/dist/components/tab-group/tab-group.js +5 -5
  163. package/dist/components/tab-panel/tab-panel.component.js +2 -2
  164. package/dist/components/tab-panel/tab-panel.js +3 -3
  165. package/dist/components/tag/tag.component.js +4 -4
  166. package/dist/components/tag/tag.js +5 -5
  167. package/dist/components/textarea/textarea.component.js +2 -2
  168. package/dist/components/textarea/textarea.js +3 -3
  169. package/dist/components/tooltip/tooltip.component.js +3 -3
  170. package/dist/components/tooltip/tooltip.js +4 -4
  171. package/dist/custom-elements.json +1 -1
  172. package/dist/styles/index.css +1 -1
  173. package/dist/synergy.js +87 -87
  174. package/package.json +3 -3
  175. package/dist/chunks/chunk.YKKAQLY3.js.map +0 -7
  176. /package/dist/chunks/{chunk.4UZBHZB7.js.map → chunk.2BKN4SVL.js.map} +0 -0
  177. /package/dist/chunks/{chunk.XXWU2N6Z.js.map → chunk.2BVNVTCJ.js.map} +0 -0
  178. /package/dist/chunks/{chunk.7J3ICWNG.js.map → chunk.2FHYURSV.js.map} +0 -0
  179. /package/dist/chunks/{chunk.5LL426KP.js.map → chunk.4H3F5YVU.js.map} +0 -0
  180. /package/dist/chunks/{chunk.T3KEPARA.js.map → chunk.4HBNKWDI.js.map} +0 -0
  181. /package/dist/chunks/{chunk.MI6OSBNZ.js.map → chunk.4HSU3RZA.js.map} +0 -0
  182. /package/dist/chunks/{chunk.E5Q4S6J5.js.map → chunk.4UGAAIOV.js.map} +0 -0
  183. /package/dist/chunks/{chunk.LIQFEI76.js.map → chunk.4ZAIWKYK.js.map} +0 -0
  184. /package/dist/chunks/{chunk.AGX3EDVR.js.map → chunk.5BUBL7JY.js.map} +0 -0
  185. /package/dist/chunks/{chunk.PLEO5ZHI.js.map → chunk.5C2N3OG3.js.map} +0 -0
  186. /package/dist/chunks/{chunk.YA3UERHI.js.map → chunk.5CL6DHME.js.map} +0 -0
  187. /package/dist/chunks/{chunk.N3MYRPRM.js.map → chunk.5KE7YYYL.js.map} +0 -0
  188. /package/dist/chunks/{chunk.CKB73XBB.js.map → chunk.5UWGWBIX.js.map} +0 -0
  189. /package/dist/chunks/{chunk.SAKDWMDC.js.map → chunk.6JHUWKC2.js.map} +0 -0
  190. /package/dist/chunks/{chunk.MBWZTWQ3.js.map → chunk.7MRLMCDG.js.map} +0 -0
  191. /package/dist/chunks/{chunk.5UBU4JQJ.js.map → chunk.A54YJOJZ.js.map} +0 -0
  192. /package/dist/chunks/{chunk.QN4VTDCL.js.map → chunk.AD7URUHH.js.map} +0 -0
  193. /package/dist/chunks/{chunk.ZDIP5E5M.js.map → chunk.AVNL6XBJ.js.map} +0 -0
  194. /package/dist/chunks/{chunk.T4V4ARKQ.js.map → chunk.B4PYRXCV.js.map} +0 -0
  195. /package/dist/chunks/{chunk.GLQRGWLN.js.map → chunk.BCREP7HQ.js.map} +0 -0
  196. /package/dist/chunks/{chunk.MP6GCBDQ.js.map → chunk.CN4QRO22.js.map} +0 -0
  197. /package/dist/chunks/{chunk.ZG6RQJZT.js.map → chunk.DCILBP5O.js.map} +0 -0
  198. /package/dist/chunks/{chunk.BRQJBVSR.js.map → chunk.DFR3UNMT.js.map} +0 -0
  199. /package/dist/chunks/{chunk.I5GHSBBB.js.map → chunk.DNYMFI4T.js.map} +0 -0
  200. /package/dist/chunks/{chunk.X4BO4K4B.js.map → chunk.DOHCZXOF.js.map} +0 -0
  201. /package/dist/chunks/{chunk.CX6BVBUN.js.map → chunk.DXNSNACZ.js.map} +0 -0
  202. /package/dist/chunks/{chunk.HXW47ZEU.js.map → chunk.EHZE3CKH.js.map} +0 -0
  203. /package/dist/chunks/{chunk.I7T6CYDB.js.map → chunk.F5LLLIE5.js.map} +0 -0
  204. /package/dist/chunks/{chunk.5KKWOVVC.js.map → chunk.FO3NV7MY.js.map} +0 -0
  205. /package/dist/chunks/{chunk.VVYBWDVV.js.map → chunk.FZKUXUK6.js.map} +0 -0
  206. /package/dist/chunks/{chunk.XBUFNX4L.js.map → chunk.GCI7QWTQ.js.map} +0 -0
  207. /package/dist/chunks/{chunk.KM4XNOFN.js.map → chunk.GJPZZH76.js.map} +0 -0
  208. /package/dist/chunks/{chunk.3H2H5FNB.js.map → chunk.H4EFGKKT.js.map} +0 -0
  209. /package/dist/chunks/{chunk.JSGXW7HG.js.map → chunk.IUBRJUHB.js.map} +0 -0
  210. /package/dist/chunks/{chunk.YLOY6MCX.js.map → chunk.J47HF5GZ.js.map} +0 -0
  211. /package/dist/chunks/{chunk.PJYYK2T7.js.map → chunk.JBSLSPA4.js.map} +0 -0
  212. /package/dist/chunks/{chunk.3FSNN2LA.js.map → chunk.JBW7QDPF.js.map} +0 -0
  213. /package/dist/chunks/{chunk.AL5JOFXG.js.map → chunk.KBUOEYFD.js.map} +0 -0
  214. /package/dist/chunks/{chunk.WX7OJEBN.js.map → chunk.KDBBMF6R.js.map} +0 -0
  215. /package/dist/chunks/{chunk.KEZEYBVJ.js.map → chunk.KOZGQJ42.js.map} +0 -0
  216. /package/dist/chunks/{chunk.XJBZVH65.js.map → chunk.KP7ABNMV.js.map} +0 -0
  217. /package/dist/chunks/{chunk.3F4PA2RJ.js.map → chunk.KU3GIITB.js.map} +0 -0
  218. /package/dist/chunks/{chunk.ICJERNQU.js.map → chunk.LITNZ5UP.js.map} +0 -0
  219. /package/dist/chunks/{chunk.YLOGCYYH.js.map → chunk.LLNHJVT6.js.map} +0 -0
  220. /package/dist/chunks/{chunk.IPKUHOKD.js.map → chunk.LVMOATGP.js.map} +0 -0
  221. /package/dist/chunks/{chunk.YYWFJREC.js.map → chunk.MLTJKLDB.js.map} +0 -0
  222. /package/dist/chunks/{chunk.JKNV2DRD.js.map → chunk.MQMVF4PW.js.map} +0 -0
  223. /package/dist/chunks/{chunk.3JFJNUVB.js.map → chunk.NCS3KNSS.js.map} +0 -0
  224. /package/dist/chunks/{chunk.NATMLGVF.js.map → chunk.NH5UF5W4.js.map} +0 -0
  225. /package/dist/chunks/{chunk.A7HLSENR.js.map → chunk.NMM47RXC.js.map} +0 -0
  226. /package/dist/chunks/{chunk.6BAQMGDG.js.map → chunk.NUHI5YB7.js.map} +0 -0
  227. /package/dist/chunks/{chunk.BJEVUOBO.js.map → chunk.OPAVUSG6.js.map} +0 -0
  228. /package/dist/chunks/{chunk.OPOK7CZS.js.map → chunk.PD4GEYPT.js.map} +0 -0
  229. /package/dist/chunks/{chunk.JJ6N7OHW.js.map → chunk.PVBLEKYQ.js.map} +0 -0
  230. /package/dist/chunks/{chunk.6NWT6L3K.js.map → chunk.Q63T23NX.js.map} +0 -0
  231. /package/dist/chunks/{chunk.DCR5ERAC.js.map → chunk.QGODDF6V.js.map} +0 -0
  232. /package/dist/chunks/{chunk.OSLTEHUP.js.map → chunk.QH5LWFIU.js.map} +0 -0
  233. /package/dist/chunks/{chunk.MMG5DA2N.js.map → chunk.R2MO73SN.js.map} +0 -0
  234. /package/dist/chunks/{chunk.22E7SPMA.js.map → chunk.R7FWD6IV.js.map} +0 -0
  235. /package/dist/chunks/{chunk.A2Z57FBZ.js.map → chunk.RILCNQ7U.js.map} +0 -0
  236. /package/dist/chunks/{chunk.BALZJ5OU.js.map → chunk.SMPYVOTL.js.map} +0 -0
  237. /package/dist/chunks/{chunk.GFUY2Z3E.js.map → chunk.STPTOC6W.js.map} +0 -0
  238. /package/dist/chunks/{chunk.SBRYVEQN.js.map → chunk.SW3NDC4L.js.map} +0 -0
  239. /package/dist/chunks/{chunk.4O3MCCWE.js.map → chunk.TJADLTCQ.js.map} +0 -0
  240. /package/dist/chunks/{chunk.KGXWML3K.js.map → chunk.TQMD3CRX.js.map} +0 -0
  241. /package/dist/chunks/{chunk.FCS3RTNQ.js.map → chunk.UWNJQDZP.js.map} +0 -0
  242. /package/dist/chunks/{chunk.3PATCZJL.js.map → chunk.VA5J6CGG.js.map} +0 -0
  243. /package/dist/chunks/{chunk.TYKSQSYN.js.map → chunk.VHASVP7B.js.map} +0 -0
  244. /package/dist/chunks/{chunk.6WF7O7RF.js.map → chunk.VNQF6LEZ.js.map} +0 -0
  245. /package/dist/chunks/{chunk.3GS7GYS7.js.map → chunk.W2S2MTUW.js.map} +0 -0
  246. /package/dist/chunks/{chunk.HYSKDMI3.js.map → chunk.WM3ZKNS4.js.map} +0 -0
  247. /package/dist/chunks/{chunk.5Z23XOZH.js.map → chunk.XHVDKQO2.js.map} +0 -0
  248. /package/dist/chunks/{chunk.ODDKTIMC.js.map → chunk.XMS3V7AX.js.map} +0 -0
  249. /package/dist/chunks/{chunk.2RROJC65.js.map → chunk.XRRZVMQT.js.map} +0 -0
  250. /package/dist/chunks/{chunk.QODDLPTZ.js.map → chunk.XVFSTDCI.js.map} +0 -0
  251. /package/dist/chunks/{chunk.W67OQ7TE.js.map → chunk.Y4LO5L6L.js.map} +0 -0
  252. /package/dist/chunks/{chunk.5QBWRU76.js.map → chunk.YLRQUWVH.js.map} +0 -0
  253. /package/dist/chunks/{chunk.D4YRKGVK.js.map → chunk.Z2XKAE7D.js.map} +0 -0
  254. /package/dist/chunks/{chunk.6GNLD5GO.js.map → chunk.ZBYQDVMH.js.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynButtonGroup
3
- } from "./chunk.N3MYRPRM.js";
3
+ } from "./chunk.5KE7YYYL.js";
4
4
 
5
5
  // src/components/button-group/button-group.ts
6
6
  var button_group_default = SynButtonGroup;
@@ -9,4 +9,4 @@ SynButtonGroup.define("syn-button-group");
9
9
  export {
10
10
  button_group_default
11
11
  };
12
- //# sourceMappingURL=chunk.3FSNN2LA.js.map
12
+ //# sourceMappingURL=chunk.JBW7QDPF.js.map
@@ -23,7 +23,7 @@ import {
23
23
  import {
24
24
  SynergyElement,
25
25
  component_styles_default
26
- } from "./chunk.RVQ3X7WC.js";
26
+ } from "./chunk.MIF4NFFN.js";
27
27
  import {
28
28
  __decorateClass
29
29
  } from "./chunk.QNDC5KWA.js";
@@ -362,4 +362,4 @@ __decorateClass([
362
362
  export {
363
363
  SynTextarea
364
364
  };
365
- //# sourceMappingURL=chunk.AL5JOFXG.js.map
365
+ //# sourceMappingURL=chunk.KBUOEYFD.js.map
@@ -1,13 +1,13 @@
1
- import {
2
- accordion_styles_default
3
- } from "./chunk.WNUZ6LH4.js";
4
1
  import {
5
2
  watch
6
3
  } from "./chunk.QJMO7V5R.js";
7
4
  import {
8
5
  SynergyElement,
9
6
  component_styles_default
10
- } from "./chunk.RVQ3X7WC.js";
7
+ } from "./chunk.MIF4NFFN.js";
8
+ import {
9
+ accordion_styles_default
10
+ } from "./chunk.WNUZ6LH4.js";
11
11
  import {
12
12
  __decorateClass
13
13
  } from "./chunk.QNDC5KWA.js";
@@ -103,4 +103,4 @@ __decorateClass([
103
103
  export {
104
104
  SynAccordion
105
105
  };
106
- //# sourceMappingURL=chunk.WX7OJEBN.js.map
106
+ //# sourceMappingURL=chunk.KDBBMF6R.js.map
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  SynergyElement,
6
6
  component_styles_default
7
- } from "./chunk.RVQ3X7WC.js";
7
+ } from "./chunk.MIF4NFFN.js";
8
8
  import {
9
9
  __decorateClass,
10
10
  __spreadProps,
@@ -409,4 +409,4 @@ __decorateClass([
409
409
  export {
410
410
  SynPopup
411
411
  };
412
- //# sourceMappingURL=chunk.KEZEYBVJ.js.map
412
+ //# sourceMappingURL=chunk.KOZGQJ42.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynSpinner
3
- } from "./chunk.3JFJNUVB.js";
3
+ } from "./chunk.NCS3KNSS.js";
4
4
  import {
5
5
  FormControlController,
6
6
  validValidityState
@@ -17,7 +17,7 @@ import {
17
17
  } from "./chunk.WVVQK5TE.js";
18
18
  import {
19
19
  SynIcon
20
- } from "./chunk.E5Q4S6J5.js";
20
+ } from "./chunk.4UGAAIOV.js";
21
21
  import {
22
22
  LocalizeController
23
23
  } from "./chunk.E3KW3KQM.js";
@@ -27,7 +27,7 @@ import {
27
27
  import {
28
28
  SynergyElement,
29
29
  component_styles_default
30
- } from "./chunk.RVQ3X7WC.js";
30
+ } from "./chunk.MIF4NFFN.js";
31
31
  import {
32
32
  __decorateClass
33
33
  } from "./chunk.QNDC5KWA.js";
@@ -287,4 +287,4 @@ __decorateClass([
287
287
  export {
288
288
  SynButton
289
289
  };
290
- //# sourceMappingURL=chunk.XJBZVH65.js.map
290
+ //# sourceMappingURL=chunk.KP7ABNMV.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynBadge
3
- } from "./chunk.22E7SPMA.js";
3
+ } from "./chunk.R7FWD6IV.js";
4
4
 
5
5
  // src/components/badge/badge.ts
6
6
  var badge_default = SynBadge;
@@ -9,4 +9,4 @@ SynBadge.define("syn-badge");
9
9
  export {
10
10
  badge_default
11
11
  };
12
- //# sourceMappingURL=chunk.3F4PA2RJ.js.map
12
+ //# sourceMappingURL=chunk.KU3GIITB.js.map
@@ -10,7 +10,7 @@ import {
10
10
  import {
11
11
  SynergyElement,
12
12
  component_styles_default
13
- } from "./chunk.RVQ3X7WC.js";
13
+ } from "./chunk.MIF4NFFN.js";
14
14
  import {
15
15
  __decorateClass
16
16
  } from "./chunk.QNDC5KWA.js";
@@ -66,4 +66,4 @@ __decorateClass([
66
66
  export {
67
67
  SynProgressBar
68
68
  };
69
- //# sourceMappingURL=chunk.ICJERNQU.js.map
69
+ //# sourceMappingURL=chunk.LITNZ5UP.js.map
@@ -10,7 +10,7 @@ import {
10
10
  import {
11
11
  SynergyElement,
12
12
  component_styles_default
13
- } from "./chunk.RVQ3X7WC.js";
13
+ } from "./chunk.MIF4NFFN.js";
14
14
  import {
15
15
  __decorateClass
16
16
  } from "./chunk.QNDC5KWA.js";
@@ -74,4 +74,4 @@ __decorateClass([
74
74
  export {
75
75
  SynProgressRing
76
76
  };
77
- //# sourceMappingURL=chunk.YLOGCYYH.js.map
77
+ //# sourceMappingURL=chunk.LLNHJVT6.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk.FAAETEJ2.js";
4
4
  import {
5
5
  SynDivider
6
- } from "./chunk.YA3UERHI.js";
6
+ } from "./chunk.5CL6DHME.js";
7
7
  import {
8
8
  HasSlotController
9
9
  } from "./chunk.WVVQK5TE.js";
@@ -13,7 +13,7 @@ import {
13
13
  import {
14
14
  SynergyElement,
15
15
  component_styles_default
16
- } from "./chunk.RVQ3X7WC.js";
16
+ } from "./chunk.MIF4NFFN.js";
17
17
  import {
18
18
  __decorateClass
19
19
  } from "./chunk.QNDC5KWA.js";
@@ -316,4 +316,4 @@ __decorateClass([
316
316
  export {
317
317
  SynNavItem
318
318
  };
319
- //# sourceMappingURL=chunk.IPKUHOKD.js.map
319
+ //# sourceMappingURL=chunk.LVMOATGP.js.map
@@ -48,7 +48,7 @@ var SynergyElement = class extends LitElement {
48
48
  };
49
49
  /* eslint-disable */
50
50
  // @ts-expect-error This is auto-injected at build time.
51
- SynergyElement.version = "2.4.2";
51
+ SynergyElement.version = "2.4.3";
52
52
  SynergyElement.dependencies = {};
53
53
  __decorateClass([
54
54
  property()
@@ -80,4 +80,4 @@ export {
80
80
  SynergyElement,
81
81
  component_styles_default
82
82
  };
83
- //# sourceMappingURL=chunk.RVQ3X7WC.js.map
83
+ //# sourceMappingURL=chunk.MIF4NFFN.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/internal/synergy-element.ts", "../../src/styles/component.styles.ts"],
4
- "sourcesContent": ["/**\n * ---------------------------------------------------------------------\n * \uD83D\uDD12 AUTOGENERATED BY VENDORISM\n * Removing this comment will prevent it from being managed by it.\n * ---------------------------------------------------------------------\n */\n\n/* eslint-disable */\nimport { LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\n\n// Match event type name strings that are registered on GlobalEventHandlersEventMap...\ntype EventTypeRequiresDetail<T> = T extends keyof GlobalEventHandlersEventMap\n ? // ...where the event detail is an object...\n GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, unknown>>\n ? // ...that is non-empty...\n GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, never>>\n ? never\n : // ...and has at least one non-optional property\n Partial<GlobalEventHandlersEventMap[T]['detail']> extends GlobalEventHandlersEventMap[T]['detail']\n ? never\n : T\n : never\n : never;\n\n// The inverse of the above (match any type that doesn't match EventTypeRequiresDetail)\ntype EventTypeDoesNotRequireDetail<T> = T extends keyof GlobalEventHandlersEventMap\n ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, unknown>>\n ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, never>>\n ? T\n : Partial<GlobalEventHandlersEventMap[T]['detail']> extends GlobalEventHandlersEventMap[T]['detail']\n ? T\n : never\n : T\n : T;\n\n// `keyof EventTypesWithRequiredDetail` lists all registered event types that require detail\ntype EventTypesWithRequiredDetail = {\n [EventType in keyof GlobalEventHandlersEventMap as EventTypeRequiresDetail<EventType>]: true;\n};\n\n// `keyof EventTypesWithoutRequiredDetail` lists all registered event types that do NOT require detail\ntype EventTypesWithoutRequiredDetail = {\n [EventType in keyof GlobalEventHandlersEventMap as EventTypeDoesNotRequireDetail<EventType>]: true;\n};\n\n// Helper to make a specific property of an object non-optional\ntype WithRequired<T, K extends keyof T> = T & { [P in K]-?: T[P] };\n\n// Given an event name string, get a valid type for the options to initialize the event that is more restrictive than\n// just CustomEventInit when appropriate (validate the type of the event detail, and require it to be provided if the\n// event requires it)\ntype SynEventInit<T> = T extends keyof GlobalEventHandlersEventMap\n ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, unknown>>\n ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, never>>\n ? CustomEventInit<GlobalEventHandlersEventMap[T]['detail']>\n : Partial<GlobalEventHandlersEventMap[T]['detail']> extends GlobalEventHandlersEventMap[T]['detail']\n ? CustomEventInit<GlobalEventHandlersEventMap[T]['detail']>\n : WithRequired<CustomEventInit<GlobalEventHandlersEventMap[T]['detail']>, 'detail'>\n : CustomEventInit\n : CustomEventInit;\n\n// Given an event name string, get the type of the event\ntype GetCustomEventType<T> = T extends keyof GlobalEventHandlersEventMap\n ? GlobalEventHandlersEventMap[T] extends CustomEvent<unknown>\n ? GlobalEventHandlersEventMap[T]\n : CustomEvent<unknown>\n : CustomEvent<unknown>;\n\n// `keyof ValidEventTypeMap` is equivalent to `keyof GlobalEventHandlersEventMap` but gives a nicer error message\ntype ValidEventTypeMap = EventTypesWithRequiredDetail | EventTypesWithoutRequiredDetail;\n\nexport default class SynergyElement extends LitElement {\n // Make localization attributes reactive\n @property() dir: string;\n @property() lang: string;\n\n /** Emits a custom event with more convenient defaults. */\n emit<T extends string & keyof EventTypesWithoutRequiredDetail>(\n name: EventTypeDoesNotRequireDetail<T>,\n options?: SynEventInit<T> | undefined\n ): GetCustomEventType<T>;\n emit<T extends string & keyof EventTypesWithRequiredDetail>(\n name: EventTypeRequiresDetail<T>,\n options: SynEventInit<T>\n ): GetCustomEventType<T>;\n emit<T extends string & keyof ValidEventTypeMap>(\n name: T,\n options?: SynEventInit<T> | undefined\n ): GetCustomEventType<T> {\n const event = new CustomEvent(name, {\n bubbles: true,\n cancelable: false,\n composed: true,\n detail: {},\n ...options\n });\n\n this.dispatchEvent(event);\n\n return event as GetCustomEventType<T>;\n }\n\n /* eslint-disable */\n // @ts-expect-error This is auto-injected at build time.\n static version = \"2.4.2\";\n \n\n static define(name: string, elementConstructor = this, options: ElementDefinitionOptions = {}) {\n const currentlyRegisteredConstructor = customElements.get(name) as\n | CustomElementConstructor\n | typeof SynergyElement;\n\n if (!currentlyRegisteredConstructor) {\n customElements.define(name, class extends elementConstructor {} as unknown as CustomElementConstructor, options);\n return;\n }\n\n let newVersion = ' (unknown version)';\n let existingVersion = newVersion;\n\n if ('version' in elementConstructor && elementConstructor.version) {\n newVersion = ' v' + elementConstructor.version;\n }\n\n if ('version' in currentlyRegisteredConstructor && currentlyRegisteredConstructor.version) {\n existingVersion = ' v' + currentlyRegisteredConstructor.version;\n }\n\n // Need to make sure we're not working with null or empty strings before doing version comparisons.\n if (newVersion && existingVersion && newVersion === existingVersion) {\n // If versions match, we don't need to warn anyone. Carry on.\n return;\n }\n\n console.warn(\n `Attempted to register <${name}>${newVersion}, but <${name}>${existingVersion} has already been registered.`\n );\n }\n\n static dependencies: Record<string, typeof SynergyElement> = {};\n\n constructor() {\n super();\n Object.entries((this.constructor as typeof SynergyElement).dependencies).forEach(([name, component]) => {\n (this.constructor as typeof SynergyElement).define(name, component);\n });\n }\n}\n\nexport interface SynergyFormControl extends SynergyElement {\n // Form attributes\n name: string;\n value: unknown;\n disabled?: boolean;\n defaultValue?: unknown;\n defaultChecked?: boolean;\n form?: string;\n\n // Constraint validation attributes\n pattern?: string;\n min?: number | string | Date;\n max?: number | string | Date;\n step?: number | 'any';\n required?: boolean;\n minlength?: number;\n maxlength?: number;\n\n // Form validation properties\n readonly validity: ValidityState;\n readonly validationMessage: string;\n\n // Form validation methods\n checkValidity: () => boolean;\n getForm: () => HTMLFormElement | null;\n reportValidity: () => boolean;\n setCustomValidity: (message: string) => void;\n}\n", "/**\n * ---------------------------------------------------------------------\n * \uD83D\uDD12 AUTOGENERATED BY VENDORISM\n * Removing this comment will prevent it from being managed by it.\n * ---------------------------------------------------------------------\n */\n\n/* eslint-disable */\nimport { css } from 'lit';\n\nexport default css`\n\t/* stylelint-disable */\n :host {\n box-sizing: border-box;\n }\n\n :host *,\n :host *::before,\n :host *::after {\n box-sizing: inherit;\n }\n\n [hidden] {\n display: none !important;\n }\n`;\n"],
4
+ "sourcesContent": ["/**\n * ---------------------------------------------------------------------\n * \uD83D\uDD12 AUTOGENERATED BY VENDORISM\n * Removing this comment will prevent it from being managed by it.\n * ---------------------------------------------------------------------\n */\n\n/* eslint-disable */\nimport { LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\n\n// Match event type name strings that are registered on GlobalEventHandlersEventMap...\ntype EventTypeRequiresDetail<T> = T extends keyof GlobalEventHandlersEventMap\n ? // ...where the event detail is an object...\n GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, unknown>>\n ? // ...that is non-empty...\n GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, never>>\n ? never\n : // ...and has at least one non-optional property\n Partial<GlobalEventHandlersEventMap[T]['detail']> extends GlobalEventHandlersEventMap[T]['detail']\n ? never\n : T\n : never\n : never;\n\n// The inverse of the above (match any type that doesn't match EventTypeRequiresDetail)\ntype EventTypeDoesNotRequireDetail<T> = T extends keyof GlobalEventHandlersEventMap\n ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, unknown>>\n ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, never>>\n ? T\n : Partial<GlobalEventHandlersEventMap[T]['detail']> extends GlobalEventHandlersEventMap[T]['detail']\n ? T\n : never\n : T\n : T;\n\n// `keyof EventTypesWithRequiredDetail` lists all registered event types that require detail\ntype EventTypesWithRequiredDetail = {\n [EventType in keyof GlobalEventHandlersEventMap as EventTypeRequiresDetail<EventType>]: true;\n};\n\n// `keyof EventTypesWithoutRequiredDetail` lists all registered event types that do NOT require detail\ntype EventTypesWithoutRequiredDetail = {\n [EventType in keyof GlobalEventHandlersEventMap as EventTypeDoesNotRequireDetail<EventType>]: true;\n};\n\n// Helper to make a specific property of an object non-optional\ntype WithRequired<T, K extends keyof T> = T & { [P in K]-?: T[P] };\n\n// Given an event name string, get a valid type for the options to initialize the event that is more restrictive than\n// just CustomEventInit when appropriate (validate the type of the event detail, and require it to be provided if the\n// event requires it)\ntype SynEventInit<T> = T extends keyof GlobalEventHandlersEventMap\n ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, unknown>>\n ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, never>>\n ? CustomEventInit<GlobalEventHandlersEventMap[T]['detail']>\n : Partial<GlobalEventHandlersEventMap[T]['detail']> extends GlobalEventHandlersEventMap[T]['detail']\n ? CustomEventInit<GlobalEventHandlersEventMap[T]['detail']>\n : WithRequired<CustomEventInit<GlobalEventHandlersEventMap[T]['detail']>, 'detail'>\n : CustomEventInit\n : CustomEventInit;\n\n// Given an event name string, get the type of the event\ntype GetCustomEventType<T> = T extends keyof GlobalEventHandlersEventMap\n ? GlobalEventHandlersEventMap[T] extends CustomEvent<unknown>\n ? GlobalEventHandlersEventMap[T]\n : CustomEvent<unknown>\n : CustomEvent<unknown>;\n\n// `keyof ValidEventTypeMap` is equivalent to `keyof GlobalEventHandlersEventMap` but gives a nicer error message\ntype ValidEventTypeMap = EventTypesWithRequiredDetail | EventTypesWithoutRequiredDetail;\n\nexport default class SynergyElement extends LitElement {\n // Make localization attributes reactive\n @property() dir: string;\n @property() lang: string;\n\n /** Emits a custom event with more convenient defaults. */\n emit<T extends string & keyof EventTypesWithoutRequiredDetail>(\n name: EventTypeDoesNotRequireDetail<T>,\n options?: SynEventInit<T> | undefined\n ): GetCustomEventType<T>;\n emit<T extends string & keyof EventTypesWithRequiredDetail>(\n name: EventTypeRequiresDetail<T>,\n options: SynEventInit<T>\n ): GetCustomEventType<T>;\n emit<T extends string & keyof ValidEventTypeMap>(\n name: T,\n options?: SynEventInit<T> | undefined\n ): GetCustomEventType<T> {\n const event = new CustomEvent(name, {\n bubbles: true,\n cancelable: false,\n composed: true,\n detail: {},\n ...options\n });\n\n this.dispatchEvent(event);\n\n return event as GetCustomEventType<T>;\n }\n\n /* eslint-disable */\n // @ts-expect-error This is auto-injected at build time.\n static version = \"2.4.3\";\n \n\n static define(name: string, elementConstructor = this, options: ElementDefinitionOptions = {}) {\n const currentlyRegisteredConstructor = customElements.get(name) as\n | CustomElementConstructor\n | typeof SynergyElement;\n\n if (!currentlyRegisteredConstructor) {\n customElements.define(name, class extends elementConstructor {} as unknown as CustomElementConstructor, options);\n return;\n }\n\n let newVersion = ' (unknown version)';\n let existingVersion = newVersion;\n\n if ('version' in elementConstructor && elementConstructor.version) {\n newVersion = ' v' + elementConstructor.version;\n }\n\n if ('version' in currentlyRegisteredConstructor && currentlyRegisteredConstructor.version) {\n existingVersion = ' v' + currentlyRegisteredConstructor.version;\n }\n\n // Need to make sure we're not working with null or empty strings before doing version comparisons.\n if (newVersion && existingVersion && newVersion === existingVersion) {\n // If versions match, we don't need to warn anyone. Carry on.\n return;\n }\n\n console.warn(\n `Attempted to register <${name}>${newVersion}, but <${name}>${existingVersion} has already been registered.`\n );\n }\n\n static dependencies: Record<string, typeof SynergyElement> = {};\n\n constructor() {\n super();\n Object.entries((this.constructor as typeof SynergyElement).dependencies).forEach(([name, component]) => {\n (this.constructor as typeof SynergyElement).define(name, component);\n });\n }\n}\n\nexport interface SynergyFormControl extends SynergyElement {\n // Form attributes\n name: string;\n value: unknown;\n disabled?: boolean;\n defaultValue?: unknown;\n defaultChecked?: boolean;\n form?: string;\n\n // Constraint validation attributes\n pattern?: string;\n min?: number | string | Date;\n max?: number | string | Date;\n step?: number | 'any';\n required?: boolean;\n minlength?: number;\n maxlength?: number;\n\n // Form validation properties\n readonly validity: ValidityState;\n readonly validationMessage: string;\n\n // Form validation methods\n checkValidity: () => boolean;\n getForm: () => HTMLFormElement | null;\n reportValidity: () => boolean;\n setCustomValidity: (message: string) => void;\n}\n", "/**\n * ---------------------------------------------------------------------\n * \uD83D\uDD12 AUTOGENERATED BY VENDORISM\n * Removing this comment will prevent it from being managed by it.\n * ---------------------------------------------------------------------\n */\n\n/* eslint-disable */\nimport { css } from 'lit';\n\nexport default css`\n\t/* stylelint-disable */\n :host {\n box-sizing: border-box;\n }\n\n :host *,\n :host *::before,\n :host *::after {\n box-sizing: inherit;\n }\n\n [hidden] {\n display: none !important;\n }\n`;\n"],
5
5
  "mappings": ";;;;;;AAQA,SAAS,kBAAkB;AAC3B,SAAS,gBAAgB;AA+DzB,IAAqB,iBAArB,cAA4C,WAAW;AAAA,EAcrD,KACE,MACA,SACuB;AACvB,UAAM,QAAQ,IAAI,YAAY,MAAM;AAAA,MAClC,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,UAAU;AAAA,MACV,QAAQ,CAAC;AAAA,OACN,QACJ;AAED,SAAK,cAAc,KAAK;AAExB,WAAO;AAAA,EACT;AAAA,EAOA,OAAO,OAAO,MAAc,qBAAqB,MAAM,UAAoC,CAAC,GAAG;AAC7F,UAAM,iCAAiC,eAAe,IAAI,IAAI;AAI9D,QAAI,CAAC,gCAAgC;AACnC,qBAAe,OAAO,MAAM,cAAc,mBAAmB;AAAA,MAAC,GAA0C,OAAO;AAC/G;AAAA,IACF;AAEA,QAAI,aAAa;AACjB,QAAI,kBAAkB;AAEtB,QAAI,aAAa,sBAAsB,mBAAmB,SAAS;AACjE,mBAAa,OAAO,mBAAmB;AAAA,IACzC;AAEA,QAAI,aAAa,kCAAkC,+BAA+B,SAAS;AACzF,wBAAkB,OAAO,+BAA+B;AAAA,IAC1D;AAGA,QAAI,cAAc,mBAAmB,eAAe,iBAAiB;AAEnE;AAAA,IACF;AAEA,YAAQ;AAAA,MACN,0BAA0B,IAAI,IAAI,UAAU,UAAU,IAAI,IAAI,eAAe;AAAA,IAC/E;AAAA,EACF;AAAA,EAIA,cAAc;AACZ,UAAM;AACN,WAAO,QAAS,KAAK,YAAsC,YAAY,EAAE,QAAQ,CAAC,CAAC,MAAM,SAAS,MAAM;AACtG,MAAC,KAAK,YAAsC,OAAO,MAAM,SAAS;AAAA,IACpE,CAAC;AAAA,EACH;AACF;AAAA;AAAA;AA5EqB,eAiCZ,UAAU;AAjCE,eAoEZ,eAAsD,CAAC;AAlElD;AAAA,EAAX,SAAS;AAAA,GAFS,eAEP;AACA;AAAA,EAAX,SAAS;AAAA,GAHS,eAGP;;;ACnEd,SAAS,WAAW;AAEpB,IAAO,2BAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;",
6
6
  "names": []
7
7
  }
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynSideNav
3
- } from "./chunk.YCT4K4JT.js";
3
+ } from "./chunk.ZBJXFMXI.js";
4
4
 
5
5
  // src/components/side-nav/side-nav.ts
6
6
  var side_nav_default = SynSideNav;
@@ -9,4 +9,4 @@ SynSideNav.define("syn-side-nav");
9
9
  export {
10
10
  side_nav_default
11
11
  };
12
- //# sourceMappingURL=chunk.YYWFJREC.js.map
12
+ //# sourceMappingURL=chunk.MLTJKLDB.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk.GVNVZMMM.js";
4
4
  import {
5
5
  icon_default
6
- } from "./chunk.CX6BVBUN.js";
6
+ } from "./chunk.DXNSNACZ.js";
7
7
  import {
8
8
  HasSlotController
9
9
  } from "./chunk.WVVQK5TE.js";
@@ -16,7 +16,7 @@ import {
16
16
  import {
17
17
  SynergyElement,
18
18
  component_styles_default
19
- } from "./chunk.RVQ3X7WC.js";
19
+ } from "./chunk.MIF4NFFN.js";
20
20
  import {
21
21
  __decorateClass
22
22
  } from "./chunk.QNDC5KWA.js";
@@ -180,4 +180,4 @@ __decorateClass([
180
180
  export {
181
181
  SynHeader
182
182
  };
183
- //# sourceMappingURL=chunk.JKNV2DRD.js.map
183
+ //# sourceMappingURL=chunk.MQMVF4PW.js.map
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk.RX7A4EQ2.js";
10
10
  import {
11
11
  SynIconButton
12
- } from "./chunk.I7T6CYDB.js";
12
+ } from "./chunk.F5LLLIE5.js";
13
13
  import {
14
14
  LocalizeController
15
15
  } from "./chunk.E3KW3KQM.js";
@@ -19,7 +19,7 @@ import {
19
19
  import {
20
20
  SynergyElement,
21
21
  component_styles_default
22
- } from "./chunk.RVQ3X7WC.js";
22
+ } from "./chunk.MIF4NFFN.js";
23
23
  import {
24
24
  __decorateClass,
25
25
  __spreadValues
@@ -355,4 +355,4 @@ __decorateClass([
355
355
  export {
356
356
  SynTabGroup
357
357
  };
358
- //# sourceMappingURL=chunk.LOVGEUYP.js.map
358
+ //# sourceMappingURL=chunk.MVZJDKSR.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/components/tab-group/tab-group.component.ts"],
4
- "sourcesContent": ["/**\n * ---------------------------------------------------------------------\n * \uD83D\uDD12 AUTOGENERATED BY VENDORISM\n * Removing this comment will prevent it from being managed by it.\n * ---------------------------------------------------------------------\n */\n\n/* eslint-disable */\nimport { classMap } from 'lit/directives/class-map.js';\nimport { html } from 'lit';\nimport { LocalizeController } from '../../utilities/localize.js';\nimport { property, query, state } from 'lit/decorators.js';\nimport { scrollIntoView } from '../../internal/scroll.js';\nimport { watch } from '../../internal/watch.js';\nimport componentStyles from '../../styles/component.styles.js';\nimport SynergyElement from '../../internal/synergy-element.js';\nimport SynIconButton from '../icon-button/icon-button.component.js';\nimport styles from './tab-group.styles.js';\nimport customStyles from './tab-group.custom.styles.js';\nimport type { CSSResultGroup } from 'lit';\nimport type SynTab from '../tab/tab.js';\nimport type SynTabPanel from '../tab-panel/tab-panel.js';\n\n/**\n * @summary Tab groups organize content into a container that shows one section at a time.\n * @documentation https://synergy.style/components/tab-group\n * @status stable\n * @since 2.0\n *\n * @dependency syn-icon-button\n *\n * @slot - Used for grouping tab panels in the tab group. Must be `<syn-tab-panel>` elements.\n * @slot nav - Used for grouping tabs in the tab group. Must be `<syn-tab>` elements.\n *\n * @event {{ name: String }} syn-tab-show - Emitted when a tab is shown. The payload of the event returns the \"panel\" attribute of the shown tab.\n * @event {{ name: String }} syn-tab-hide - Emitted when a tab is hidden. The payload of the event returns the \"panel\" attribute of the hidden tab.\n *\n * @csspart base - The component's base wrapper.\n * @csspart nav - The tab group's navigation container where tabs are slotted in.\n * @csspart tabs - The container that wraps the tabs.\n * @csspart active-tab-indicator - The line that highlights the currently selected tab.\n * @csspart body - The tab group's body where tab panels are slotted in.\n * @csspart scroll-button - The previous/next scroll buttons that show when tabs are scrollable, an `<syn-icon-button>`.\n * @csspart scroll-button--start - The starting scroll button.\n * @csspart scroll-button--end - The ending scroll button.\n * @csspart scroll-button__base - The scroll button's exported `base` part.\n *\n * @cssproperty --indicator-color - The color of the active tab indicator.\n * @cssproperty --indicator-width - The width of the active tab indicator.\n * @cssproperty --track-color - The color of the indicator's track (the line that separates tabs from panels).\n * @cssproperty --track-width - The width of the indicator's track (the line that separates tabs from panels).\n */\nexport default class SynTabGroup extends SynergyElement {\n static styles: CSSResultGroup = [componentStyles, styles, customStyles];\n static dependencies = { 'syn-icon-button': SynIconButton };\n\n private readonly localize = new LocalizeController(this);\n\n private activeTab?: SynTab;\n private mutationObserver: MutationObserver;\n private resizeObserver: ResizeObserver;\n private tabs: SynTab[] = [];\n private panels: SynTabPanel[] = [];\n\n @query('.tab-group') tabGroup: HTMLElement;\n @query('.tab-group__body') body: HTMLSlotElement;\n @query('.tab-group__nav') nav: HTMLElement;\n @query('.tab-group__indicator') indicator: HTMLElement;\n\n @state() private hasScrollControls = false;\n\n /** The placement of the tabs. */\n @property() placement: 'top' | 'start' | 'end' = 'top';\n\n /**\n * When set to auto, navigating tabs with the arrow keys will instantly show the corresponding tab panel. When set to\n * manual, the tab will receive focus but will not show until the user presses spacebar or enter.\n */\n @property() activation: 'auto' | 'manual' = 'auto';\n\n /** Disables the scroll arrows that appear when tabs overflow. */\n @property({ attribute: 'no-scroll-controls', type: Boolean }) noScrollControls = false;\n\n\t/** Draws the tab group as a contained element. */\n @property({ type: Boolean }) contained = false;\n \n /** Draws the tab group with edges instead of roundings. Takes only effect if used with the 'contained' property */\n @property({ type: Boolean }) sharp = false;\n\n connectedCallback() {\n const whenAllDefined = Promise.all([\n customElements.whenDefined('syn-tab'),\n customElements.whenDefined('syn-tab-panel')\n ]);\n\n super.connectedCallback();\n\n this.resizeObserver = new ResizeObserver(() => {\n this.repositionIndicator();\n this.updateScrollControls();\n });\n\n this.mutationObserver = new MutationObserver(mutations => {\n // Update aria labels when the DOM changes\n if (mutations.some(m => !['aria-labelledby', 'aria-controls'].includes(m.attributeName!))) {\n setTimeout(() => this.setAriaLabels());\n }\n\n // Sync tabs when disabled states change\n if (mutations.some(m => m.attributeName === 'disabled')) {\n this.syncTabsAndPanels();\n }\n });\n\n // After the first update...\n this.updateComplete.then(() => {\n this.syncTabsAndPanels();\n this.mutationObserver.observe(this, { attributes: true, childList: true, subtree: true });\n this.resizeObserver.observe(this.nav);\n\n // Wait for tabs and tab panels to be registered\n whenAllDefined.then(() => {\n // Set initial tab state when the tabs become visible\n const intersectionObserver = new IntersectionObserver((entries, observer) => {\n if (entries[0].intersectionRatio > 0) {\n this.setAriaLabels();\n this.setActiveTab(this.getActiveTab() ?? this.tabs[0], { emitEvents: false });\n observer.unobserve(entries[0].target);\n }\n });\n intersectionObserver.observe(this.tabGroup);\n });\n });\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.mutationObserver.disconnect();\n if (this.nav) {\n this.resizeObserver.unobserve(this.nav);\n }\n }\n\n private getAllTabs(options: { includeDisabled: boolean } = { includeDisabled: true }) {\n const slot = this.shadowRoot!.querySelector<HTMLSlotElement>('slot[name=\"nav\"]')!;\n\n return [...(slot.assignedElements() as SynTab[])].filter(el => {\n return options.includeDisabled\n ? el.tagName.toLowerCase() === 'syn-tab'\n : el.tagName.toLowerCase() === 'syn-tab' && !el.disabled;\n });\n }\n\n private getAllPanels() {\n return [...this.body.assignedElements()].filter(el => el.tagName.toLowerCase() === 'syn-tab-panel') as [SynTabPanel];\n }\n\n private getActiveTab() {\n return this.tabs.find(el => el.active);\n }\n\n private handleClick(event: MouseEvent) {\n const target = event.target as HTMLElement;\n const tab = target.closest('syn-tab');\n const tabGroup = tab?.closest('syn-tab-group');\n\n // Ensure the target tab is in this tab group\n if (tabGroup !== this) {\n return;\n }\n\n if (tab !== null) {\n this.setActiveTab(tab, { scrollBehavior: 'smooth' });\n }\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n const target = event.target as HTMLElement;\n const tab = target.closest('syn-tab');\n const tabGroup = tab?.closest('syn-tab-group');\n\n // Ensure the target tab is in this tab group\n if (tabGroup !== this) {\n return;\n }\n\n // Activate a tab\n if (['Enter', ' '].includes(event.key)) {\n if (tab !== null) {\n this.setActiveTab(tab, { scrollBehavior: 'smooth' });\n event.preventDefault();\n }\n }\n\n // Move focus left or right\n if (['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown', 'Home', 'End'].includes(event.key)) {\n const activeEl = this.tabs.find(t => t.matches(':focus'));\n const isRtl = this.localize.dir() === 'rtl';\n\n if (activeEl?.tagName.toLowerCase() === 'syn-tab') {\n let index = this.tabs.indexOf(activeEl);\n\n if (event.key === 'Home') {\n index = 0;\n } else if (event.key === 'End') {\n index = this.tabs.length - 1;\n } else if (\n (['top'].includes(this.placement) && event.key === (isRtl ? 'ArrowRight' : 'ArrowLeft')) ||\n (['start', 'end'].includes(this.placement) && event.key === 'ArrowUp')\n ) {\n index--;\n } else if (\n (['top'].includes(this.placement) && event.key === (isRtl ? 'ArrowLeft' : 'ArrowRight')) ||\n (['start', 'end'].includes(this.placement) && event.key === 'ArrowDown')\n ) {\n index++;\n }\n\n if (index < 0) {\n index = this.tabs.length - 1;\n }\n\n if (index > this.tabs.length - 1) {\n index = 0;\n }\n\n this.tabs[index].focus({ preventScroll: true });\n\n if (this.activation === 'auto') {\n this.setActiveTab(this.tabs[index], { scrollBehavior: 'smooth' });\n }\n\n if (['top'].includes(this.placement)) {\n scrollIntoView(this.tabs[index], this.nav, 'horizontal');\n }\n\n event.preventDefault();\n }\n }\n }\n\n private handleScrollToStart() {\n this.nav.scroll({\n left:\n this.localize.dir() === 'rtl'\n ? this.nav.scrollLeft + this.nav.clientWidth\n : this.nav.scrollLeft - this.nav.clientWidth,\n behavior: 'smooth'\n });\n }\n\n private handleScrollToEnd() {\n this.nav.scroll({\n left:\n this.localize.dir() === 'rtl'\n ? this.nav.scrollLeft - this.nav.clientWidth\n : this.nav.scrollLeft + this.nav.clientWidth,\n behavior: 'smooth'\n });\n }\n\n private setActiveTab(tab: SynTab, options?: { emitEvents?: boolean; scrollBehavior?: 'auto' | 'smooth' }) {\n options = {\n emitEvents: true,\n scrollBehavior: 'auto',\n ...options\n };\n\n if (tab !== this.activeTab && !tab.disabled) {\n const previousTab = this.activeTab;\n this.activeTab = tab;\n\n // Sync active tab and panel\n this.tabs.forEach(el => (el.active = el === this.activeTab));\n this.panels.forEach(el => (el.active = el.name === this.activeTab?.panel));\n this.syncIndicator();\n\n if (['top'].includes(this.placement)) {\n scrollIntoView(this.activeTab, this.nav, 'horizontal', options.scrollBehavior);\n }\n\n // Emit events\n if (options.emitEvents) {\n if (previousTab) {\n this.emit('syn-tab-hide', { detail: { name: previousTab.panel } });\n }\n\n this.emit('syn-tab-show', { detail: { name: this.activeTab.panel } });\n }\n }\n }\n\n private setAriaLabels() {\n // Link each tab with its corresponding panel\n this.tabs.forEach(tab => {\n const panel = this.panels.find(el => el.name === tab.panel);\n if (panel) {\n tab.setAttribute('aria-controls', panel.getAttribute('id')!);\n panel.setAttribute('aria-labelledby', tab.getAttribute('id')!);\n }\n });\n }\n\n private repositionIndicator() {\n const currentTab = this.getActiveTab();\n\n if (!currentTab) {\n return;\n }\n\n const width = currentTab.clientWidth;\n const height = currentTab.clientHeight;\n const isRtl = this.localize.dir() === 'rtl';\n\n // We can't used offsetLeft/offsetTop here due to a shadow parent issue where neither can getBoundingClientRect\n // because it provides invalid values for animating elements: https://bugs.chromium.org/p/chromium/issues/detail?id=920069\n const allTabs = this.getAllTabs();\n const precedingTabs = allTabs.slice(0, allTabs.indexOf(currentTab));\n const offset = precedingTabs.reduce(\n (previous, current) => ({\n left: previous.left + current.clientWidth,\n top: previous.top + current.clientHeight\n }),\n { left: 0, top: 0 }\n );\n\n switch (this.placement) {\n case 'top':\n this.indicator.style.width = `calc(${width}px - ${ (this.contained || this.sharp) ? '2 * var(--syn-spacing-large)' : '0px' })`;\n this.indicator.style.height = 'auto';\n this.indicator.style.translate = `calc(${isRtl ? '-' : ''}1 * (${offset.left}px + ${ (this.contained || this.sharp) ? 'var(--syn-spacing-large)' : '0px' }))`;\n break;\n\n case 'start':\n case 'end':\n this.indicator.style.width = 'auto';\n this.indicator.style.height = `calc(${height}px - ${ (this.contained || this.sharp) ? '2 * var(--syn-spacing-small)' : '0px' })`;\n this.indicator.style.translate = `0 calc(${offset.top}px + ${ (this.contained || this.sharp) ? 'var(--syn-spacing-small)' : '0px' })`;\n break;\n }\n }\n\n // This stores tabs and panels so we can refer to a cache instead of calling querySelectorAll() multiple times.\n private syncTabsAndPanels() {\n this.tabs = this.getAllTabs({ includeDisabled: false });\n this.panels = this.getAllPanels();\n this.syncIndicator();\n\n // After updating, show or hide scroll controls as needed\n this.updateComplete.then(() => this.updateScrollControls());\n }\n\n @watch('noScrollControls', { waitUntilFirstUpdate: true })\n updateScrollControls() {\n if (this.noScrollControls) {\n this.hasScrollControls = false;\n } else {\n // In most cases, we can compare scrollWidth to clientWidth to determine if scroll controls should show. However,\n // Safari appears to calculate this incorrectly when zoomed at 110%, causing the controls to toggle indefinitely.\n // Adding a single pixel to the comparison seems to resolve it.\n //\n // See https://github.com/synergy-design-system/synergy/issues/1839\n this.hasScrollControls =\n ['top'].includes(this.placement) && this.nav.scrollWidth > this.nav.clientWidth + 1;\n }\n }\n\n @watch('placement', { waitUntilFirstUpdate: true })\n syncIndicator() {\n const tab = this.getActiveTab();\n\n if (tab) {\n this.indicator.style.display = 'block';\n this.repositionIndicator();\n } else {\n this.indicator.style.display = 'none';\n }\n }\n\n /** Shows the specified tab panel. */\n show(panel: string) {\n const tab = this.tabs.find(el => el.panel === panel);\n\n if (tab) {\n this.setActiveTab(tab, { scrollBehavior: 'smooth' });\n }\n }\n\n render() {\n\n return html`\n <div\n part=\"base\"\n class=${classMap({\n 'tab-group': true,\n 'tab-group--top': this.placement === 'top',\n 'tab-group--start': this.placement === 'start',\n 'tab-group--end': this.placement === 'end',\n 'tab-group--rtl': this.localize.dir() === 'rtl',\n 'tab-group--has-scroll-controls': this.hasScrollControls,\n 'tab-group--contained': this.contained,\n 'tab-group--sharp': this.sharp,\n })}\n @click=${this.handleClick}\n @keydown=${this.handleKeyDown}\n >\n <div class=\"tab-group__nav-container\" part=\"nav\">\n ${this.hasScrollControls\n ? html`\n <syn-icon-button\n part=\"scroll-button scroll-button--start\"\n exportparts=\"base:scroll-button__base\"\n class=\"tab-group__scroll-button tab-group__scroll-button--start\"\n name=\"chevron-right\"\n library=\"system\"\n label=${this.localize.term('scrollToStart')}\n @click=${this.handleScrollToStart}\n ></syn-icon-button>\n `\n : ''}\n\n <div class=\"tab-group__nav\">\n <div part=\"tabs\" class=\"tab-group__tabs\" role=\"tablist\">\n <div part=\"active-tab-indicator\" class=\"tab-group__indicator\"></div>\n <slot name=\"nav\" @slotchange=${this.syncTabsAndPanels}></slot>\n </div>\n </div>\n\n ${this.hasScrollControls\n ? html`\n <syn-icon-button\n part=\"scroll-button scroll-button--end\"\n exportparts=\"base:scroll-button__base\"\n class=\"tab-group__scroll-button tab-group__scroll-button--end\"\n name=\"chevron-right\"\n library=\"system\"\n label=${this.localize.term('scrollToEnd')}\n @click=${this.handleScrollToEnd}\n ></syn-icon-button>\n `\n : ''}\n </div>\n\n <slot part=\"body\" class=\"tab-group__body\" @slotchange=${this.syncTabsAndPanels}></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'syn-tab-group': SynTabGroup;\n }\n}\n"],
4
+ "sourcesContent": ["/**\n * ---------------------------------------------------------------------\n * \uD83D\uDD12 AUTOGENERATED BY VENDORISM\n * Removing this comment will prevent it from being managed by it.\n * ---------------------------------------------------------------------\n */\n\n/* eslint-disable */\nimport { classMap } from 'lit/directives/class-map.js';\nimport { html } from 'lit';\nimport { LocalizeController } from '../../utilities/localize.js';\nimport { property, query, state } from 'lit/decorators.js';\nimport { scrollIntoView } from '../../internal/scroll.js';\nimport { watch } from '../../internal/watch.js';\nimport componentStyles from '../../styles/component.styles.js';\nimport SynergyElement from '../../internal/synergy-element.js';\nimport SynIconButton from '../icon-button/icon-button.component.js';\nimport styles from './tab-group.styles.js';\nimport customStyles from './tab-group.custom.styles.js';\nimport type { CSSResultGroup } from 'lit';\nimport type SynTab from '../tab/tab.js';\nimport type SynTabPanel from '../tab-panel/tab-panel.js';\n\n/**\n * @summary Tab groups organize content into a container that shows one section at a time.\n * @documentation https://synergy.style/components/tab-group\n * @status stable\n * @since 2.0\n *\n * @dependency syn-icon-button\n *\n * @slot - Used for grouping tab panels in the tab group. Must be `<syn-tab-panel>` elements.\n * @slot nav - Used for grouping tabs in the tab group. Must be `<syn-tab>` elements.\n *\n * @event {{ name: String }} syn-tab-show - Emitted when a tab is shown. The payload of the event returns the \"panel\" attribute of the shown tab.\n * @event {{ name: String }} syn-tab-hide - Emitted when a tab is hidden. The payload of the event returns the \"panel\" attribute of the hidden tab.\n *\n * @csspart base - The component's base wrapper.\n * @csspart nav - The tab group's navigation container where tabs are slotted in.\n * @csspart tabs - The container that wraps the tabs.\n * @csspart active-tab-indicator - The line that highlights the currently selected tab.\n * @csspart body - The tab group's body where tab panels are slotted in.\n * @csspart scroll-button - The previous/next scroll buttons that show when tabs are scrollable, an `<syn-icon-button>`.\n * @csspart scroll-button--start - The starting scroll button.\n * @csspart scroll-button--end - The ending scroll button.\n * @csspart scroll-button__base - The scroll button's exported `base` part.\n *\n * @cssproperty --indicator-color - The color of the active tab indicator.\n * @cssproperty --indicator-width - The width of the active tab indicator.\n * @cssproperty --track-color - The color of the indicator's track (the line that separates tabs from panels).\n * @cssproperty --track-width - The width of the indicator's track (the line that separates tabs from panels).\n */\nexport default class SynTabGroup extends SynergyElement {\n static styles: CSSResultGroup = [componentStyles, styles, customStyles];\n static dependencies = { 'syn-icon-button': SynIconButton };\n\n private readonly localize = new LocalizeController(this);\n\n private activeTab?: SynTab;\n private mutationObserver: MutationObserver;\n private resizeObserver: ResizeObserver;\n private tabs: SynTab[] = [];\n private panels: SynTabPanel[] = [];\n\n @query('.tab-group') tabGroup: HTMLElement;\n @query('.tab-group__body') body: HTMLSlotElement;\n @query('.tab-group__nav') nav: HTMLElement;\n @query('.tab-group__indicator') indicator: HTMLElement;\n\n @state() private hasScrollControls = false;\n\n /** The placement of the tabs. */\n @property() placement: 'top' | 'start' | 'end' = 'top';\n\n /**\n * When set to auto, navigating tabs with the arrow keys will instantly show the corresponding tab panel. When set to\n * manual, the tab will receive focus but will not show until the user presses spacebar or enter.\n */\n @property() activation: 'auto' | 'manual' = 'auto';\n\n /** Disables the scroll arrows that appear when tabs overflow. */\n @property({ attribute: 'no-scroll-controls', type: Boolean }) noScrollControls = false;\n\n /** Draws the tab group as a contained element. */\n @property({ type: Boolean }) contained = false;\n \n /** Draws the tab group with edges instead of roundings. Takes only effect if used with the 'contained' property */\n @property({ type: Boolean }) sharp = false;\n\n connectedCallback() {\n const whenAllDefined = Promise.all([\n customElements.whenDefined('syn-tab'),\n customElements.whenDefined('syn-tab-panel')\n ]);\n\n super.connectedCallback();\n\n this.resizeObserver = new ResizeObserver(() => {\n this.repositionIndicator();\n this.updateScrollControls();\n });\n\n this.mutationObserver = new MutationObserver(mutations => {\n // Update aria labels when the DOM changes\n if (mutations.some(m => !['aria-labelledby', 'aria-controls'].includes(m.attributeName!))) {\n setTimeout(() => this.setAriaLabels());\n }\n\n // Sync tabs when disabled states change\n if (mutations.some(m => m.attributeName === 'disabled')) {\n this.syncTabsAndPanels();\n }\n });\n\n // After the first update...\n this.updateComplete.then(() => {\n this.syncTabsAndPanels();\n this.mutationObserver.observe(this, { attributes: true, childList: true, subtree: true });\n this.resizeObserver.observe(this.nav);\n\n // Wait for tabs and tab panels to be registered\n whenAllDefined.then(() => {\n // Set initial tab state when the tabs become visible\n const intersectionObserver = new IntersectionObserver((entries, observer) => {\n if (entries[0].intersectionRatio > 0) {\n this.setAriaLabels();\n this.setActiveTab(this.getActiveTab() ?? this.tabs[0], { emitEvents: false });\n observer.unobserve(entries[0].target);\n }\n });\n intersectionObserver.observe(this.tabGroup);\n });\n });\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.mutationObserver.disconnect();\n if (this.nav) {\n this.resizeObserver.unobserve(this.nav);\n }\n }\n\n private getAllTabs(options: { includeDisabled: boolean } = { includeDisabled: true }) {\n const slot = this.shadowRoot!.querySelector<HTMLSlotElement>('slot[name=\"nav\"]')!;\n\n return [...(slot.assignedElements() as SynTab[])].filter(el => {\n return options.includeDisabled\n ? el.tagName.toLowerCase() === 'syn-tab'\n : el.tagName.toLowerCase() === 'syn-tab' && !el.disabled;\n });\n }\n\n private getAllPanels() {\n return [...this.body.assignedElements()].filter(el => el.tagName.toLowerCase() === 'syn-tab-panel') as [SynTabPanel];\n }\n\n private getActiveTab() {\n return this.tabs.find(el => el.active);\n }\n\n private handleClick(event: MouseEvent) {\n const target = event.target as HTMLElement;\n const tab = target.closest('syn-tab');\n const tabGroup = tab?.closest('syn-tab-group');\n\n // Ensure the target tab is in this tab group\n if (tabGroup !== this) {\n return;\n }\n\n if (tab !== null) {\n this.setActiveTab(tab, { scrollBehavior: 'smooth' });\n }\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n const target = event.target as HTMLElement;\n const tab = target.closest('syn-tab');\n const tabGroup = tab?.closest('syn-tab-group');\n\n // Ensure the target tab is in this tab group\n if (tabGroup !== this) {\n return;\n }\n\n // Activate a tab\n if (['Enter', ' '].includes(event.key)) {\n if (tab !== null) {\n this.setActiveTab(tab, { scrollBehavior: 'smooth' });\n event.preventDefault();\n }\n }\n\n // Move focus left or right\n if (['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown', 'Home', 'End'].includes(event.key)) {\n const activeEl = this.tabs.find(t => t.matches(':focus'));\n const isRtl = this.localize.dir() === 'rtl';\n\n if (activeEl?.tagName.toLowerCase() === 'syn-tab') {\n let index = this.tabs.indexOf(activeEl);\n\n if (event.key === 'Home') {\n index = 0;\n } else if (event.key === 'End') {\n index = this.tabs.length - 1;\n } else if (\n (['top'].includes(this.placement) && event.key === (isRtl ? 'ArrowRight' : 'ArrowLeft')) ||\n (['start', 'end'].includes(this.placement) && event.key === 'ArrowUp')\n ) {\n index--;\n } else if (\n (['top'].includes(this.placement) && event.key === (isRtl ? 'ArrowLeft' : 'ArrowRight')) ||\n (['start', 'end'].includes(this.placement) && event.key === 'ArrowDown')\n ) {\n index++;\n }\n\n if (index < 0) {\n index = this.tabs.length - 1;\n }\n\n if (index > this.tabs.length - 1) {\n index = 0;\n }\n\n this.tabs[index].focus({ preventScroll: true });\n\n if (this.activation === 'auto') {\n this.setActiveTab(this.tabs[index], { scrollBehavior: 'smooth' });\n }\n\n if (['top'].includes(this.placement)) {\n scrollIntoView(this.tabs[index], this.nav, 'horizontal');\n }\n\n event.preventDefault();\n }\n }\n }\n\n private handleScrollToStart() {\n this.nav.scroll({\n left:\n this.localize.dir() === 'rtl'\n ? this.nav.scrollLeft + this.nav.clientWidth\n : this.nav.scrollLeft - this.nav.clientWidth,\n behavior: 'smooth'\n });\n }\n\n private handleScrollToEnd() {\n this.nav.scroll({\n left:\n this.localize.dir() === 'rtl'\n ? this.nav.scrollLeft - this.nav.clientWidth\n : this.nav.scrollLeft + this.nav.clientWidth,\n behavior: 'smooth'\n });\n }\n\n private setActiveTab(tab: SynTab, options?: { emitEvents?: boolean; scrollBehavior?: 'auto' | 'smooth' }) {\n options = {\n emitEvents: true,\n scrollBehavior: 'auto',\n ...options\n };\n\n if (tab !== this.activeTab && !tab.disabled) {\n const previousTab = this.activeTab;\n this.activeTab = tab;\n\n // Sync active tab and panel\n this.tabs.forEach(el => (el.active = el === this.activeTab));\n this.panels.forEach(el => (el.active = el.name === this.activeTab?.panel));\n this.syncIndicator();\n\n if (['top'].includes(this.placement)) {\n scrollIntoView(this.activeTab, this.nav, 'horizontal', options.scrollBehavior);\n }\n\n // Emit events\n if (options.emitEvents) {\n if (previousTab) {\n this.emit('syn-tab-hide', { detail: { name: previousTab.panel } });\n }\n\n this.emit('syn-tab-show', { detail: { name: this.activeTab.panel } });\n }\n }\n }\n\n private setAriaLabels() {\n // Link each tab with its corresponding panel\n this.tabs.forEach(tab => {\n const panel = this.panels.find(el => el.name === tab.panel);\n if (panel) {\n tab.setAttribute('aria-controls', panel.getAttribute('id')!);\n panel.setAttribute('aria-labelledby', tab.getAttribute('id')!);\n }\n });\n }\n\n private repositionIndicator() {\n const currentTab = this.getActiveTab();\n\n if (!currentTab) {\n return;\n }\n\n const width = currentTab.clientWidth;\n const height = currentTab.clientHeight;\n const isRtl = this.localize.dir() === 'rtl';\n\n // We can't used offsetLeft/offsetTop here due to a shadow parent issue where neither can getBoundingClientRect\n // because it provides invalid values for animating elements: https://bugs.chromium.org/p/chromium/issues/detail?id=920069\n const allTabs = this.getAllTabs();\n const precedingTabs = allTabs.slice(0, allTabs.indexOf(currentTab));\n const offset = precedingTabs.reduce(\n (previous, current) => ({\n left: previous.left + current.clientWidth,\n top: previous.top + current.clientHeight\n }),\n { left: 0, top: 0 }\n );\n\n switch (this.placement) {\n case 'top':\n this.indicator.style.width = `calc(${width}px - ${ (this.contained || this.sharp) ? '2 * var(--syn-spacing-large)' : '0px' })`;\n this.indicator.style.height = 'auto';\n this.indicator.style.translate = `calc(${isRtl ? '-' : ''}1 * (${offset.left}px + ${ (this.contained || this.sharp) ? 'var(--syn-spacing-large)' : '0px' }))`;\n break;\n\n case 'start':\n case 'end':\n this.indicator.style.width = 'auto';\n this.indicator.style.height = `calc(${height}px - ${ (this.contained || this.sharp) ? '2 * var(--syn-spacing-small)' : '0px' })`;\n this.indicator.style.translate = `0 calc(${offset.top}px + ${ (this.contained || this.sharp) ? 'var(--syn-spacing-small)' : '0px' })`;\n break;\n }\n }\n\n // This stores tabs and panels so we can refer to a cache instead of calling querySelectorAll() multiple times.\n private syncTabsAndPanels() {\n this.tabs = this.getAllTabs({ includeDisabled: false });\n this.panels = this.getAllPanels();\n this.syncIndicator();\n\n // After updating, show or hide scroll controls as needed\n this.updateComplete.then(() => this.updateScrollControls());\n }\n\n @watch('noScrollControls', { waitUntilFirstUpdate: true })\n updateScrollControls() {\n if (this.noScrollControls) {\n this.hasScrollControls = false;\n } else {\n // In most cases, we can compare scrollWidth to clientWidth to determine if scroll controls should show. However,\n // Safari appears to calculate this incorrectly when zoomed at 110%, causing the controls to toggle indefinitely.\n // Adding a single pixel to the comparison seems to resolve it.\n //\n // See https://github.com/synergy-design-system/synergy/issues/1839\n this.hasScrollControls =\n ['top'].includes(this.placement) && this.nav.scrollWidth > this.nav.clientWidth + 1;\n }\n }\n\n @watch('placement', { waitUntilFirstUpdate: true })\n syncIndicator() {\n const tab = this.getActiveTab();\n\n if (tab) {\n this.indicator.style.display = 'block';\n this.repositionIndicator();\n } else {\n this.indicator.style.display = 'none';\n }\n }\n\n /** Shows the specified tab panel. */\n show(panel: string) {\n const tab = this.tabs.find(el => el.panel === panel);\n\n if (tab) {\n this.setActiveTab(tab, { scrollBehavior: 'smooth' });\n }\n }\n\n render() {\n\n return html`\n <div\n part=\"base\"\n class=${classMap({\n 'tab-group': true,\n 'tab-group--top': this.placement === 'top',\n 'tab-group--start': this.placement === 'start',\n 'tab-group--end': this.placement === 'end',\n 'tab-group--rtl': this.localize.dir() === 'rtl',\n 'tab-group--has-scroll-controls': this.hasScrollControls,\n 'tab-group--contained': this.contained,\n 'tab-group--sharp': this.sharp,\n })}\n @click=${this.handleClick}\n @keydown=${this.handleKeyDown}\n >\n <div class=\"tab-group__nav-container\" part=\"nav\">\n ${this.hasScrollControls\n ? html`\n <syn-icon-button\n part=\"scroll-button scroll-button--start\"\n exportparts=\"base:scroll-button__base\"\n class=\"tab-group__scroll-button tab-group__scroll-button--start\"\n name=\"chevron-right\"\n library=\"system\"\n label=${this.localize.term('scrollToStart')}\n @click=${this.handleScrollToStart}\n ></syn-icon-button>\n `\n : ''}\n\n <div class=\"tab-group__nav\">\n <div part=\"tabs\" class=\"tab-group__tabs\" role=\"tablist\">\n <div part=\"active-tab-indicator\" class=\"tab-group__indicator\"></div>\n <slot name=\"nav\" @slotchange=${this.syncTabsAndPanels}></slot>\n </div>\n </div>\n\n ${this.hasScrollControls\n ? html`\n <syn-icon-button\n part=\"scroll-button scroll-button--end\"\n exportparts=\"base:scroll-button__base\"\n class=\"tab-group__scroll-button tab-group__scroll-button--end\"\n name=\"chevron-right\"\n library=\"system\"\n label=${this.localize.term('scrollToEnd')}\n @click=${this.handleScrollToEnd}\n ></syn-icon-button>\n `\n : ''}\n </div>\n\n <slot part=\"body\" class=\"tab-group__body\" @slotchange=${this.syncTabsAndPanels}></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'syn-tab-group': SynTabGroup;\n }\n}\n"],
5
5
  "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -10,7 +10,7 @@ import {
10
10
  import {
11
11
  SynergyElement,
12
12
  component_styles_default
13
- } from "./chunk.RVQ3X7WC.js";
13
+ } from "./chunk.MIF4NFFN.js";
14
14
 
15
15
  // src/components/spinner/spinner.component.ts
16
16
  import { html } from "lit";
@@ -33,4 +33,4 @@ SynSpinner.styles = [component_styles_default, spinner_styles_default, spinner_c
33
33
  export {
34
34
  SynSpinner
35
35
  };
36
- //# sourceMappingURL=chunk.3JFJNUVB.js.map
36
+ //# sourceMappingURL=chunk.NCS3KNSS.js.map
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk.3A65FBTX.js";
7
7
  import {
8
8
  SynDivider
9
- } from "./chunk.YA3UERHI.js";
9
+ } from "./chunk.5CL6DHME.js";
10
10
  import {
11
11
  defaultValue
12
12
  } from "./chunk.RBG37CD4.js";
@@ -22,7 +22,7 @@ import {
22
22
  } from "./chunk.WVVQK5TE.js";
23
23
  import {
24
24
  SynIcon
25
- } from "./chunk.E5Q4S6J5.js";
25
+ } from "./chunk.4UGAAIOV.js";
26
26
  import {
27
27
  LocalizeController
28
28
  } from "./chunk.E3KW3KQM.js";
@@ -32,7 +32,7 @@ import {
32
32
  import {
33
33
  SynergyElement,
34
34
  component_styles_default
35
- } from "./chunk.RVQ3X7WC.js";
35
+ } from "./chunk.MIF4NFFN.js";
36
36
  import {
37
37
  __decorateClass,
38
38
  __spreadValues
@@ -642,4 +642,4 @@ __decorateClass([
642
642
  export {
643
643
  SynInput
644
644
  };
645
- //# sourceMappingURL=chunk.NATMLGVF.js.map
645
+ //# sourceMappingURL=chunk.NH5UF5W4.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynOption
3
- } from "./chunk.YLOY6MCX.js";
3
+ } from "./chunk.J47HF5GZ.js";
4
4
 
5
5
  // src/components/option/option.ts
6
6
  var option_default = SynOption;
@@ -9,4 +9,4 @@ SynOption.define("syn-option");
9
9
  export {
10
10
  option_default
11
11
  };
12
- //# sourceMappingURL=chunk.A7HLSENR.js.map
12
+ //# sourceMappingURL=chunk.NMM47RXC.js.map
@@ -9,17 +9,17 @@ import {
9
9
  } from "./chunk.OOABXWCW.js";
10
10
  import {
11
11
  SynPopup
12
- } from "./chunk.KEZEYBVJ.js";
12
+ } from "./chunk.KOZGQJ42.js";
13
13
  import {
14
14
  SynSpinner
15
- } from "./chunk.3JFJNUVB.js";
15
+ } from "./chunk.NCS3KNSS.js";
16
16
  import {
17
17
  HasSlotController,
18
18
  getTextContent
19
19
  } from "./chunk.WVVQK5TE.js";
20
20
  import {
21
21
  SynIcon
22
- } from "./chunk.E5Q4S6J5.js";
22
+ } from "./chunk.4UGAAIOV.js";
23
23
  import {
24
24
  LocalizeController
25
25
  } from "./chunk.E3KW3KQM.js";
@@ -29,7 +29,7 @@ import {
29
29
  import {
30
30
  SynergyElement,
31
31
  component_styles_default
32
- } from "./chunk.RVQ3X7WC.js";
32
+ } from "./chunk.MIF4NFFN.js";
33
33
  import {
34
34
  __decorateClass
35
35
  } from "./chunk.QNDC5KWA.js";
@@ -191,4 +191,4 @@ __decorateClass([
191
191
  export {
192
192
  SynMenuItem
193
193
  };
194
- //# sourceMappingURL=chunk.6BAQMGDG.js.map
194
+ //# sourceMappingURL=chunk.NUHI5YB7.js.map
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk.U7YAV7S3.js";
7
7
  import {
8
8
  SynIconButton
9
- } from "./chunk.I7T6CYDB.js";
9
+ } from "./chunk.F5LLLIE5.js";
10
10
  import {
11
11
  LocalizeController
12
12
  } from "./chunk.E3KW3KQM.js";
@@ -16,7 +16,7 @@ import {
16
16
  import {
17
17
  SynergyElement,
18
18
  component_styles_default
19
- } from "./chunk.RVQ3X7WC.js";
19
+ } from "./chunk.MIF4NFFN.js";
20
20
  import {
21
21
  __decorateClass
22
22
  } from "./chunk.QNDC5KWA.js";
@@ -116,4 +116,4 @@ __decorateClass([
116
116
  export {
117
117
  SynTab
118
118
  };
119
- //# sourceMappingURL=chunk.BJEVUOBO.js.map
119
+ //# sourceMappingURL=chunk.OPAVUSG6.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynDetails
3
- } from "./chunk.YKKAQLY3.js";
3
+ } from "./chunk.TFC66SL6.js";
4
4
 
5
5
  // src/components/details/details.ts
6
6
  var details_default = SynDetails;
@@ -9,4 +9,4 @@ SynDetails.define("syn-details");
9
9
  export {
10
10
  details_default
11
11
  };
12
- //# sourceMappingURL=chunk.OPOK7CZS.js.map
12
+ //# sourceMappingURL=chunk.PD4GEYPT.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynTextarea
3
- } from "./chunk.AL5JOFXG.js";
3
+ } from "./chunk.KBUOEYFD.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.JJ6N7OHW.js.map
12
+ //# sourceMappingURL=chunk.PVBLEKYQ.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynDialog
3
- } from "./chunk.T4V4ARKQ.js";
3
+ } from "./chunk.B4PYRXCV.js";
4
4
 
5
5
  // src/components/dialog/dialog.ts
6
6
  var dialog_default = SynDialog;
@@ -9,4 +9,4 @@ SynDialog.define("syn-dialog");
9
9
  export {
10
10
  dialog_default
11
11
  };
12
- //# sourceMappingURL=chunk.6NWT6L3K.js.map
12
+ //# sourceMappingURL=chunk.Q63T23NX.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynAccordion
3
- } from "./chunk.WX7OJEBN.js";
3
+ } from "./chunk.KDBBMF6R.js";
4
4
 
5
5
  // src/components/accordion/accordion.ts
6
6
  var accordion_default = SynAccordion;
@@ -9,4 +9,4 @@ SynAccordion.define("syn-accordion");
9
9
  export {
10
10
  accordion_default
11
11
  };
12
- //# sourceMappingURL=chunk.DCR5ERAC.js.map
12
+ //# sourceMappingURL=chunk.QGODDF6V.js.map
@@ -10,7 +10,7 @@ import {
10
10
  import {
11
11
  SynergyElement,
12
12
  component_styles_default
13
- } from "./chunk.RVQ3X7WC.js";
13
+ } from "./chunk.MIF4NFFN.js";
14
14
  import {
15
15
  __decorateClass
16
16
  } from "./chunk.QNDC5KWA.js";
@@ -53,4 +53,4 @@ __decorateClass([
53
53
  export {
54
54
  SynCard
55
55
  };
56
- //# sourceMappingURL=chunk.OSLTEHUP.js.map
56
+ //# sourceMappingURL=chunk.QH5LWFIU.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynHeader
3
- } from "./chunk.JKNV2DRD.js";
3
+ } from "./chunk.MQMVF4PW.js";
4
4
 
5
5
  // src/components/header/header.ts
6
6
  var header_default = SynHeader;
@@ -9,4 +9,4 @@ SynHeader.define("syn-header");
9
9
  export {
10
10
  header_default
11
11
  };
12
- //# sourceMappingURL=chunk.MMG5DA2N.js.map
12
+ //# sourceMappingURL=chunk.R2MO73SN.js.map
@@ -10,7 +10,7 @@ import {
10
10
  import {
11
11
  SynergyElement,
12
12
  component_styles_default
13
- } from "./chunk.RVQ3X7WC.js";
13
+ } from "./chunk.MIF4NFFN.js";
14
14
  import {
15
15
  __decorateClass
16
16
  } from "./chunk.QNDC5KWA.js";
@@ -58,4 +58,4 @@ __decorateClass([
58
58
  export {
59
59
  SynBadge
60
60
  };
61
- //# sourceMappingURL=chunk.22E7SPMA.js.map
61
+ //# sourceMappingURL=chunk.R7FWD6IV.js.map