@synergy-design-system/components 2.6.0 → 2.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (424) hide show
  1. package/dist/chunks/{chunk.GKKENNQE.js → chunk.22Z5XU6S.js} +10 -10
  2. package/dist/chunks/{chunk.WO6VXGWQ.js → chunk.236RSW67.js} +6 -11
  3. package/dist/chunks/{chunk.WO6VXGWQ.js.map → chunk.236RSW67.js.map} +1 -1
  4. package/dist/chunks/{chunk.HLQ75E45.js → chunk.2GFK6XTO.js} +13 -35
  5. package/dist/chunks/{chunk.IJ67S5B6.js → chunk.2HG3FU75.js} +2 -2
  6. package/dist/chunks/{chunk.UYMVCZFD.js → chunk.2R4PVWEA.js} +5 -5
  7. package/dist/chunks/{chunk.UYMVCZFD.js.map → chunk.2R4PVWEA.js.map} +1 -1
  8. package/dist/chunks/{chunk.SNLPFVBC.js → chunk.35V3TAOT.js} +11 -2
  9. package/dist/chunks/{chunk.SNLPFVBC.js.map → chunk.35V3TAOT.js.map} +2 -2
  10. package/dist/chunks/{chunk.ULJBPLL6.js → chunk.4G4STDWS.js} +3 -3
  11. package/dist/chunks/{chunk.K26XKBB4.js → chunk.4LONE34D.js} +4 -4
  12. package/dist/chunks/{chunk.RX7A4EQ2.js → chunk.5732DMBC.js} +9 -1
  13. package/dist/chunks/chunk.5732DMBC.js.map +7 -0
  14. package/dist/chunks/{chunk.4SSPQ66Z.js → chunk.57BEXIUH.js} +4 -4
  15. package/dist/chunks/{chunk.RU5QGDNJ.js → chunk.5I4XCEOQ.js} +6 -6
  16. package/dist/chunks/{chunk.D3NSCKGB.js → chunk.5IQRFG3H.js} +2 -2
  17. package/dist/chunks/{chunk.3HG7LHI7.js → chunk.5NVN66IY.js} +8 -8
  18. package/dist/chunks/{chunk.ZXXT7QGH.js → chunk.5WL6UNWH.js} +2 -2
  19. package/dist/chunks/{chunk.PPKWM5KJ.js → chunk.675UQUVN.js} +4 -4
  20. package/dist/chunks/{chunk.VXAM5HPM.js → chunk.6B2OMLPX.js} +2 -2
  21. package/dist/chunks/{chunk.ZHH2AHOZ.js → chunk.6QYKWCSO.js} +20 -18
  22. package/dist/chunks/chunk.6QYKWCSO.js.map +7 -0
  23. package/dist/chunks/{chunk.6UAOF7WN.js → chunk.72HIKLQG.js} +24 -3
  24. package/dist/chunks/chunk.72HIKLQG.js.map +7 -0
  25. package/dist/chunks/{chunk.ITKS5ZOS.js → chunk.74IOULXM.js} +2 -2
  26. package/dist/chunks/{chunk.GQMLBFF3.js → chunk.7FWWX2JI.js} +2 -2
  27. package/dist/chunks/{chunk.WYQ7ZY3X.js → chunk.7PRWOM2L.js} +2 -2
  28. package/dist/chunks/{chunk.FMSA5VHT.js → chunk.A3OYJILJ.js} +2 -2
  29. package/dist/chunks/{chunk.M2JYB7TN.js → chunk.AULZM3VU.js} +2 -2
  30. package/dist/chunks/{chunk.YCNVMJNR.js → chunk.BBNQVEPD.js} +3 -4
  31. package/dist/chunks/{chunk.YCNVMJNR.js.map → chunk.BBNQVEPD.js.map} +1 -1
  32. package/dist/chunks/{chunk.U7YAV7S3.js → chunk.BBUFEDXF.js} +5 -5
  33. package/dist/chunks/{chunk.U7YAV7S3.js.map → chunk.BBUFEDXF.js.map} +1 -1
  34. package/dist/chunks/{chunk.AQJKRHVT.js → chunk.BSKFU4TB.js} +11 -15
  35. package/dist/chunks/chunk.BSKFU4TB.js.map +7 -0
  36. package/dist/chunks/{chunk.J5H7WYNF.js → chunk.C2OU3CYH.js} +2 -2
  37. package/dist/chunks/{chunk.D65RJIQG.js → chunk.CIBFXWEU.js} +2 -2
  38. package/dist/chunks/{chunk.FIIQJSVJ.js → chunk.DLWXSSMP.js} +5 -5
  39. package/dist/chunks/{chunk.NREQNXC6.js → chunk.DM3RY7B6.js} +9 -12
  40. package/dist/chunks/{chunk.NREQNXC6.js.map → chunk.DM3RY7B6.js.map} +1 -1
  41. package/dist/chunks/{chunk.Y3LKXZKA.js → chunk.DOT5NAX6.js} +3 -3
  42. package/dist/chunks/{chunk.R4Y2EU76.js → chunk.DRLBTO2U.js} +4 -6
  43. package/dist/chunks/{chunk.R4Y2EU76.js.map → chunk.DRLBTO2U.js.map} +1 -1
  44. package/dist/chunks/{chunk.S35OARTV.js → chunk.DXVNZNP4.js} +2 -2
  45. package/dist/chunks/{chunk.AMAMIZIA.js → chunk.E7GWXVOR.js} +2 -2
  46. package/dist/chunks/{chunk.63P7MT4J.js → chunk.EG52ADUJ.js} +2 -2
  47. package/dist/chunks/{chunk.UYCIME52.js → chunk.EIMGBKPN.js} +8 -12
  48. package/dist/chunks/{chunk.UYCIME52.js.map → chunk.EIMGBKPN.js.map} +1 -1
  49. package/dist/chunks/{chunk.72I324LK.js → chunk.EKBNZAJM.js} +10 -8
  50. package/dist/chunks/chunk.EKBNZAJM.js.map +7 -0
  51. package/dist/chunks/{chunk.PN2B3HKP.js → chunk.ERVO426Y.js} +2 -2
  52. package/dist/chunks/{chunk.QQ3HY3YJ.js → chunk.ESQAXAFE.js} +2 -2
  53. package/dist/chunks/{chunk.536NCWEA.js → chunk.FATEF4SI.js} +2 -2
  54. package/dist/chunks/{chunk.4DCKHPZX.js → chunk.FC62VGFO.js} +18 -18
  55. package/dist/chunks/chunk.FC62VGFO.js.map +7 -0
  56. package/dist/chunks/{chunk.MLP2VIC7.js → chunk.FSWTBNSI.js} +6 -1
  57. package/dist/chunks/{chunk.MLP2VIC7.js.map → chunk.FSWTBNSI.js.map} +2 -2
  58. package/dist/chunks/{chunk.I6ROVIIB.js → chunk.FVC3ZTWV.js} +2 -2
  59. package/dist/chunks/{chunk.27HWF7JY.js → chunk.GHGGBS4N.js} +4 -7
  60. package/dist/chunks/{chunk.27HWF7JY.js.map → chunk.GHGGBS4N.js.map} +1 -1
  61. package/dist/chunks/{chunk.LGCK4I4E.js → chunk.GQTWQ6VS.js} +2 -2
  62. package/dist/chunks/{chunk.E35IIEQ7.js → chunk.GRM2S5KI.js} +2 -2
  63. package/dist/chunks/{chunk.K5OP4LDM.js → chunk.GTF3H4UM.js} +2 -2
  64. package/dist/chunks/{chunk.CFXNQ5IS.js → chunk.GTPPWEKN.js} +56 -28
  65. package/dist/chunks/chunk.GTPPWEKN.js.map +7 -0
  66. package/dist/chunks/{chunk.XL5RSJ3V.js → chunk.GTXFAFHX.js} +2 -2
  67. package/dist/chunks/{chunk.2VMSUMKU.js → chunk.GVHPNNP4.js} +2 -2
  68. package/dist/chunks/{chunk.T2BHFREJ.js → chunk.GWABGZSP.js} +4 -4
  69. package/dist/chunks/{chunk.F6HHFAPB.js → chunk.HOERRZTH.js} +6 -6
  70. package/dist/chunks/{chunk.KL7CAPPJ.js → chunk.HQ6QUSK7.js} +2 -2
  71. package/dist/chunks/{chunk.3I5JDTGT.js → chunk.HY75RTM4.js} +9 -5
  72. package/dist/chunks/{chunk.3I5JDTGT.js.map → chunk.HY75RTM4.js.map} +2 -2
  73. package/dist/chunks/{chunk.NFYLQHRP.js → chunk.HZ5CAJ44.js} +8 -8
  74. package/dist/chunks/{chunk.OQQ3RUCC.js → chunk.I63UC3RD.js} +2 -2
  75. package/dist/chunks/{chunk.J2EUQLBR.js → chunk.IDZSSKZ7.js} +5 -5
  76. package/dist/chunks/{chunk.ITWCPUOB.js → chunk.IO6MRMUN.js} +10 -10
  77. package/dist/chunks/{chunk.LQCQI2F4.js → chunk.JGAVJWAD.js} +2 -2
  78. package/dist/chunks/{chunk.3SWRT4AL.js → chunk.JMXGX6SJ.js} +2 -2
  79. package/dist/chunks/{chunk.U2OMGNNZ.js → chunk.JNP34M27.js} +7 -6
  80. package/dist/chunks/chunk.JNP34M27.js.map +7 -0
  81. package/dist/chunks/{chunk.4PD74CS6.js → chunk.JQYICBYX.js} +2 -2
  82. package/dist/chunks/{chunk.D3FO6WR5.js → chunk.JUFMYJ7U.js} +3 -3
  83. package/dist/chunks/{chunk.6BJDFV76.js → chunk.KBBZD5N2.js} +2 -2
  84. package/dist/chunks/{chunk.WZ3DZS4C.js → chunk.KFOCAYIR.js} +2 -2
  85. package/dist/chunks/{chunk.EJNLN3CX.js → chunk.KIOPPTRE.js} +2 -2
  86. package/dist/chunks/{chunk.2IEYCSI6.js → chunk.KKESNMMN.js} +4 -4
  87. package/dist/chunks/{chunk.OOFVD7M5.js → chunk.KUSHEB6D.js} +10 -10
  88. package/dist/chunks/{chunk.MM55BLFM.js → chunk.LG6YHKE3.js} +12 -6
  89. package/dist/chunks/chunk.LG6YHKE3.js.map +7 -0
  90. package/dist/chunks/{chunk.YOHLIT2Z.js → chunk.LP2ZDM7P.js} +6 -8
  91. package/dist/chunks/{chunk.YOHLIT2Z.js.map → chunk.LP2ZDM7P.js.map} +2 -2
  92. package/dist/chunks/{chunk.CGOHWVSA.js → chunk.LR22NFSQ.js} +4 -4
  93. package/dist/chunks/{chunk.CGOHWVSA.js.map → chunk.LR22NFSQ.js.map} +2 -2
  94. package/dist/chunks/{chunk.INQ5T33N.js → chunk.LR2QN5QU.js} +2 -2
  95. package/dist/chunks/{chunk.UCZUWSO5.js → chunk.LRLW57A2.js} +6 -6
  96. package/dist/chunks/{chunk.R6T4FYGP.js → chunk.LYPNOF2P.js} +2 -2
  97. package/dist/chunks/{chunk.OUEA3H7P.js → chunk.M6AIAN6A.js} +7 -9
  98. package/dist/chunks/{chunk.OUEA3H7P.js.map → chunk.M6AIAN6A.js.map} +1 -1
  99. package/dist/chunks/{chunk.DRA2UZ77.js → chunk.MBCJYSDY.js} +4 -5
  100. package/dist/chunks/{chunk.DRA2UZ77.js.map → chunk.MBCJYSDY.js.map} +2 -2
  101. package/dist/chunks/{chunk.X7TL7T7R.js → chunk.MC64AZOV.js} +2 -2
  102. package/dist/chunks/{chunk.XG3XBCNU.js → chunk.MKHL7D2E.js} +2 -2
  103. package/dist/chunks/{chunk.LH75WEHB.js → chunk.NB2BFXJZ.js} +18 -18
  104. package/dist/chunks/chunk.NB2BFXJZ.js.map +7 -0
  105. package/dist/chunks/{chunk.3YMWLLPP.js → chunk.O644HRW3.js} +3 -1
  106. package/dist/chunks/{chunk.3YMWLLPP.js.map → chunk.O644HRW3.js.map} +2 -2
  107. package/dist/chunks/{chunk.ITW4C543.js → chunk.OBVCMMTU.js} +5 -5
  108. package/dist/chunks/{chunk.FRELNK6W.js → chunk.PG2F4WDE.js} +8 -8
  109. package/dist/chunks/{chunk.H43NLW3K.js → chunk.PWXKT65G.js} +2 -2
  110. package/dist/chunks/{chunk.XVUJKP6I.js → chunk.PX4QAT55.js} +4 -4
  111. package/dist/chunks/{chunk.NCXSLHHQ.js → chunk.QAB22DKD.js} +11 -11
  112. package/dist/chunks/chunk.QAB22DKD.js.map +7 -0
  113. package/dist/chunks/{chunk.HVKRSLBD.js → chunk.QXUGPVZI.js} +5 -5
  114. package/dist/chunks/{chunk.PAFCMQM4.js → chunk.QYCCHV2M.js} +2 -2
  115. package/dist/chunks/{chunk.HIIXDCGP.js → chunk.S4CJWSJ7.js} +4 -4
  116. package/dist/chunks/{chunk.X7LEPG3A.js → chunk.SRMF4M4C.js} +59 -104
  117. package/dist/chunks/{chunk.X7LEPG3A.js.map → chunk.SRMF4M4C.js.map} +1 -1
  118. package/dist/chunks/{chunk.NPHJNN2T.js → chunk.STGUK4N7.js} +3 -3
  119. package/dist/chunks/{chunk.2TVDQYJX.js → chunk.T3Z46TYU.js} +8 -8
  120. package/dist/chunks/{chunk.VB7U5SK7.js → chunk.TBKTI5Z2.js} +2 -2
  121. package/dist/chunks/{chunk.GVPQNGY3.js → chunk.TJ57Q72L.js} +9 -9
  122. package/dist/chunks/{chunk.JUZCWVBF.js → chunk.TLE7NC7B.js} +8 -8
  123. package/dist/chunks/{chunk.KCVQQRVW.js → chunk.UFYKHP3N.js} +2 -2
  124. package/dist/chunks/{chunk.OZGGB3YU.js → chunk.UJ4TG52Q.js} +2 -2
  125. package/dist/chunks/{chunk.AQ3OGEJ7.js → chunk.V3O735XM.js} +2 -2
  126. package/dist/chunks/{chunk.MCWFKLR3.js → chunk.VFT47SBZ.js} +3 -3
  127. package/dist/chunks/{chunk.FAAETEJ2.js → chunk.VGEA67UG.js} +7 -4
  128. package/dist/chunks/{chunk.FAAETEJ2.js.map → chunk.VGEA67UG.js.map} +2 -2
  129. package/dist/chunks/{chunk.UQOWSCP3.js → chunk.VWUDTX7C.js} +2 -2
  130. package/dist/chunks/{chunk.HE4KPEL6.js → chunk.W2FFMJWS.js} +2 -2
  131. package/dist/chunks/{chunk.6RTGL3PP.js → chunk.WR6CUTA2.js} +2 -2
  132. package/dist/chunks/{chunk.CRU7ZSDO.js → chunk.XDM6VD32.js} +6 -10
  133. package/dist/chunks/{chunk.CRU7ZSDO.js.map → chunk.XDM6VD32.js.map} +1 -1
  134. package/dist/chunks/{chunk.TOWZTCAT.js → chunk.YNXBZVXB.js} +2 -2
  135. package/dist/chunks/{chunk.XE5OK2UE.js → chunk.YRTGZEGJ.js} +2 -2
  136. package/dist/chunks/{chunk.EIKNGXXK.js → chunk.ZNLBLPN4.js} +2 -2
  137. package/dist/chunks/{chunk.AZVHDONN.js → chunk.ZQWTV7GI.js} +9 -9
  138. package/dist/chunks/{chunk.U7XXAVXV.js → chunk.ZSRTPMLL.js} +2 -2
  139. package/dist/chunks/{chunk.OE4RXQU2.js → chunk.ZW75HBAK.js} +3 -3
  140. package/dist/chunks/chunk.ZW75HBAK.js.map +7 -0
  141. package/dist/components/accordion/accordion.component.js +4 -4
  142. package/dist/components/accordion/accordion.js +5 -5
  143. package/dist/components/accordion/accordion.styles.js +1 -1
  144. package/dist/components/alert/alert.component.js +11 -11
  145. package/dist/components/alert/alert.custom.styles.js +1 -1
  146. package/dist/components/alert/alert.js +12 -12
  147. package/dist/components/alert/alert.styles.js +1 -1
  148. package/dist/components/badge/badge.component.js +5 -5
  149. package/dist/components/badge/badge.custom.styles.js +1 -1
  150. package/dist/components/badge/badge.js +6 -6
  151. package/dist/components/badge/badge.styles.js +1 -1
  152. package/dist/components/breadcrumb/breadcrumb.component.js +7 -7
  153. package/dist/components/breadcrumb/breadcrumb.custom.styles.js +1 -1
  154. package/dist/components/breadcrumb/breadcrumb.js +8 -8
  155. package/dist/components/breadcrumb/breadcrumb.styles.js +1 -1
  156. package/dist/components/breadcrumb-item/breadcrumb-item.component.js +4 -4
  157. package/dist/components/breadcrumb-item/breadcrumb-item.custom.styles.js +1 -1
  158. package/dist/components/breadcrumb-item/breadcrumb-item.js +5 -5
  159. package/dist/components/breadcrumb-item/breadcrumb-item.styles.js +1 -1
  160. package/dist/components/button/button.component.js +9 -9
  161. package/dist/components/button/button.custom.styles.js +1 -1
  162. package/dist/components/button/button.js +10 -10
  163. package/dist/components/button/button.styles.js +1 -1
  164. package/dist/components/button-group/button-group.component.js +3 -3
  165. package/dist/components/button-group/button-group.js +4 -4
  166. package/dist/components/button-group/button-group.styles.js +1 -1
  167. package/dist/components/card/card.component.js +3 -3
  168. package/dist/components/card/card.custom.styles.js +1 -1
  169. package/dist/components/card/card.js +4 -4
  170. package/dist/components/card/card.styles.js +1 -1
  171. package/dist/components/checkbox/checkbox.component.js +6 -6
  172. package/dist/components/checkbox/checkbox.custom.styles.js +1 -1
  173. package/dist/components/checkbox/checkbox.js +7 -7
  174. package/dist/components/checkbox/checkbox.styles.js +1 -1
  175. package/dist/components/details/details.component.js +9 -9
  176. package/dist/components/details/details.custom.styles.js +1 -1
  177. package/dist/components/details/details.js +10 -10
  178. package/dist/components/details/details.styles.js +1 -1
  179. package/dist/components/dialog/dialog.component.js +13 -13
  180. package/dist/components/dialog/dialog.custom.styles.js +1 -1
  181. package/dist/components/dialog/dialog.js +14 -14
  182. package/dist/components/dialog/dialog.styles.js +1 -1
  183. package/dist/components/divider/divider.component.js +4 -4
  184. package/dist/components/divider/divider.custom.styles.js +1 -1
  185. package/dist/components/divider/divider.js +5 -5
  186. package/dist/components/divider/divider.styles.js +1 -1
  187. package/dist/components/drawer/drawer.component.js +13 -13
  188. package/dist/components/drawer/drawer.custom.styles.js +1 -1
  189. package/dist/components/drawer/drawer.js +14 -14
  190. package/dist/components/drawer/drawer.styles.js +1 -1
  191. package/dist/components/dropdown/dropdown.component.d.ts +2 -1
  192. package/dist/components/dropdown/dropdown.component.js +9 -9
  193. package/dist/components/dropdown/dropdown.custom.styles.js +1 -1
  194. package/dist/components/dropdown/dropdown.js +10 -10
  195. package/dist/components/dropdown/dropdown.styles.js +1 -1
  196. package/dist/components/file/file.component.js +12 -12
  197. package/dist/components/file/file.js +13 -13
  198. package/dist/components/file/file.styles.js +1 -1
  199. package/dist/components/header/header.component.js +8 -8
  200. package/dist/components/header/header.js +9 -9
  201. package/dist/components/header/header.styles.js +1 -1
  202. package/dist/components/icon/icon.component.js +4 -4
  203. package/dist/components/icon/icon.custom.styles.js +1 -1
  204. package/dist/components/icon/icon.js +5 -5
  205. package/dist/components/icon/icon.styles.js +1 -1
  206. package/dist/components/icon/library.default.js +1 -1
  207. package/dist/components/icon/library.js +1 -1
  208. package/dist/components/icon/library.system.js +1 -1
  209. package/dist/components/icon-button/icon-button.component.js +6 -6
  210. package/dist/components/icon-button/icon-button.custom.styles.js +2 -2
  211. package/dist/components/icon-button/icon-button.js +7 -7
  212. package/dist/components/icon-button/icon-button.styles.js +1 -1
  213. package/dist/components/input/input.component.js +9 -9
  214. package/dist/components/input/input.custom.styles.js +1 -1
  215. package/dist/components/input/input.js +10 -10
  216. package/dist/components/input/input.styles.js +1 -1
  217. package/dist/components/menu/menu.component.js +3 -3
  218. package/dist/components/menu/menu.custom.styles.js +1 -1
  219. package/dist/components/menu/menu.js +4 -4
  220. package/dist/components/menu/menu.styles.js +1 -1
  221. package/dist/components/menu-item/menu-item.component.d.ts +0 -1
  222. package/dist/components/menu-item/menu-item.component.js +11 -11
  223. package/dist/components/menu-item/menu-item.custom.styles.js +1 -1
  224. package/dist/components/menu-item/menu-item.js +12 -12
  225. package/dist/components/menu-item/menu-item.styles.js +2 -2
  226. package/dist/components/menu-item/submenu-controller.d.ts +1 -3
  227. package/dist/components/menu-item/submenu-controller.js +2 -4
  228. package/dist/components/menu-label/menu-label.component.js +5 -5
  229. package/dist/components/menu-label/menu-label.custom.styles.js +1 -1
  230. package/dist/components/menu-label/menu-label.js +6 -6
  231. package/dist/components/menu-label/menu-label.styles.js +1 -1
  232. package/dist/components/nav-item/nav-item.component.js +6 -6
  233. package/dist/components/nav-item/nav-item.js +7 -7
  234. package/dist/components/nav-item/nav-item.styles.js +2 -2
  235. package/dist/components/optgroup/optgroup.component.js +5 -5
  236. package/dist/components/optgroup/optgroup.js +6 -6
  237. package/dist/components/optgroup/optgroup.styles.js +1 -1
  238. package/dist/components/option/option.component.js +7 -7
  239. package/dist/components/option/option.custom.styles.js +1 -1
  240. package/dist/components/option/option.js +8 -8
  241. package/dist/components/option/option.styles.js +1 -1
  242. package/dist/components/popup/popup.component.js +3 -3
  243. package/dist/components/popup/popup.js +4 -4
  244. package/dist/components/popup/popup.styles.js +1 -1
  245. package/dist/components/prio-nav/prio-nav.component.js +15 -15
  246. package/dist/components/prio-nav/prio-nav.js +16 -16
  247. package/dist/components/prio-nav/prio-nav.styles.js +1 -1
  248. package/dist/components/prio-nav/utils.js +1 -1
  249. package/dist/components/progress-bar/progress-bar.component.js +5 -5
  250. package/dist/components/progress-bar/progress-bar.custom.styles.js +1 -1
  251. package/dist/components/progress-bar/progress-bar.js +6 -6
  252. package/dist/components/progress-bar/progress-bar.styles.js +1 -1
  253. package/dist/components/progress-ring/progress-ring.component.js +5 -5
  254. package/dist/components/progress-ring/progress-ring.custom.styles.js +1 -1
  255. package/dist/components/progress-ring/progress-ring.js +6 -6
  256. package/dist/components/progress-ring/progress-ring.styles.js +1 -1
  257. package/dist/components/radio/radio.component.d.ts +0 -5
  258. package/dist/components/radio/radio.component.js +5 -5
  259. package/dist/components/radio/radio.custom.styles.js +1 -1
  260. package/dist/components/radio/radio.js +6 -6
  261. package/dist/components/radio/radio.styles.js +1 -1
  262. package/dist/components/radio-button/radio-button.component.js +4 -4
  263. package/dist/components/radio-button/radio-button.js +5 -5
  264. package/dist/components/radio-button/radio-button.styles.js +1 -1
  265. package/dist/components/radio-group/radio-group.component.js +6 -6
  266. package/dist/components/radio-group/radio-group.custom.styles.js +1 -1
  267. package/dist/components/radio-group/radio-group.js +7 -7
  268. package/dist/components/radio-group/radio-group.styles.js +1 -1
  269. package/dist/components/range/range.component.js +13 -13
  270. package/dist/components/range/range.js +14 -14
  271. package/dist/components/range/range.styles.js +1 -1
  272. package/dist/components/range/utility.js +2 -2
  273. package/dist/components/range-tick/range-tick.component.js +3 -3
  274. package/dist/components/range-tick/range-tick.js +4 -4
  275. package/dist/components/range-tick/range-tick.styles.js +1 -1
  276. package/dist/components/select/select.component.d.ts +3 -1
  277. package/dist/components/select/select.component.js +17 -17
  278. package/dist/components/select/select.custom.styles.js +2 -2
  279. package/dist/components/select/select.js +18 -18
  280. package/dist/components/select/select.styles.js +2 -2
  281. package/dist/components/side-nav/side-nav.component.js +15 -15
  282. package/dist/components/side-nav/side-nav.js +16 -16
  283. package/dist/components/side-nav/side-nav.styles.js +1 -1
  284. package/dist/components/spinner/spinner.component.js +5 -5
  285. package/dist/components/spinner/spinner.custom.styles.js +1 -1
  286. package/dist/components/spinner/spinner.js +6 -6
  287. package/dist/components/spinner/spinner.styles.js +1 -1
  288. package/dist/components/switch/switch.component.js +5 -5
  289. package/dist/components/switch/switch.custom.styles.js +1 -1
  290. package/dist/components/switch/switch.js +6 -6
  291. package/dist/components/switch/switch.styles.js +1 -1
  292. package/dist/components/tab/tab.component.d.ts +5 -4
  293. package/dist/components/tab/tab.component.js +11 -11
  294. package/dist/components/tab/tab.custom.styles.js +2 -2
  295. package/dist/components/tab/tab.js +12 -12
  296. package/dist/components/tab/tab.styles.js +2 -2
  297. package/dist/components/tab-group/tab-group.component.d.ts +2 -0
  298. package/dist/components/tab-group/tab-group.component.js +10 -10
  299. package/dist/components/tab-group/tab-group.custom.styles.js +1 -1
  300. package/dist/components/tab-group/tab-group.js +11 -11
  301. package/dist/components/tab-group/tab-group.styles.js +1 -1
  302. package/dist/components/tab-panel/tab-panel.component.js +4 -4
  303. package/dist/components/tab-panel/tab-panel.custom.styles.js +1 -1
  304. package/dist/components/tab-panel/tab-panel.js +5 -5
  305. package/dist/components/tab-panel/tab-panel.styles.js +1 -1
  306. package/dist/components/tag/tag.component.js +9 -9
  307. package/dist/components/tag/tag.custom.styles.js +1 -1
  308. package/dist/components/tag/tag.js +10 -10
  309. package/dist/components/tag/tag.styles.js +1 -1
  310. package/dist/components/textarea/textarea.component.js +5 -5
  311. package/dist/components/textarea/textarea.custom.styles.js +1 -1
  312. package/dist/components/textarea/textarea.js +6 -6
  313. package/dist/components/textarea/textarea.styles.js +1 -1
  314. package/dist/components/tooltip/tooltip.component.js +10 -10
  315. package/dist/components/tooltip/tooltip.custom.styles.js +1 -1
  316. package/dist/components/tooltip/tooltip.js +11 -11
  317. package/dist/components/tooltip/tooltip.styles.js +2 -2
  318. package/dist/custom-elements.json +160 -142
  319. package/dist/internal/animate.d.ts +3 -3
  320. package/dist/internal/longpress.d.ts +0 -1
  321. package/dist/styles/index.css +5 -2
  322. package/dist/styles/utility.css +4 -1
  323. package/dist/synergy-autoloader.js +1 -1
  324. package/dist/synergy.js +109 -109
  325. package/dist/translations/de.js +6 -9
  326. package/dist/translations/de.js.map +1 -1
  327. package/dist/translations/en.js +2 -2
  328. package/dist/utilities/animation-registry.js +2 -2
  329. package/dist/utilities/base-path.js +1 -1
  330. package/dist/utilities/form.js +3 -3
  331. package/dist/utilities/icon-library.js +1 -1
  332. package/dist/utilities/localize.js +3 -3
  333. package/dist/vscode.html-custom-data.json +26 -26
  334. package/package.json +33 -33
  335. package/dist/chunks/chunk.4DCKHPZX.js.map +0 -7
  336. package/dist/chunks/chunk.6UAOF7WN.js.map +0 -7
  337. package/dist/chunks/chunk.72I324LK.js.map +0 -7
  338. package/dist/chunks/chunk.AQJKRHVT.js.map +0 -7
  339. package/dist/chunks/chunk.CFXNQ5IS.js.map +0 -7
  340. package/dist/chunks/chunk.LH75WEHB.js.map +0 -7
  341. package/dist/chunks/chunk.MM55BLFM.js.map +0 -7
  342. package/dist/chunks/chunk.NCXSLHHQ.js.map +0 -7
  343. package/dist/chunks/chunk.OE4RXQU2.js.map +0 -7
  344. package/dist/chunks/chunk.RX7A4EQ2.js.map +0 -7
  345. package/dist/chunks/chunk.U2OMGNNZ.js.map +0 -7
  346. package/dist/chunks/chunk.ZHH2AHOZ.js.map +0 -7
  347. /package/dist/chunks/{chunk.GKKENNQE.js.map → chunk.22Z5XU6S.js.map} +0 -0
  348. /package/dist/chunks/{chunk.HLQ75E45.js.map → chunk.2GFK6XTO.js.map} +0 -0
  349. /package/dist/chunks/{chunk.IJ67S5B6.js.map → chunk.2HG3FU75.js.map} +0 -0
  350. /package/dist/chunks/{chunk.ULJBPLL6.js.map → chunk.4G4STDWS.js.map} +0 -0
  351. /package/dist/chunks/{chunk.K26XKBB4.js.map → chunk.4LONE34D.js.map} +0 -0
  352. /package/dist/chunks/{chunk.4SSPQ66Z.js.map → chunk.57BEXIUH.js.map} +0 -0
  353. /package/dist/chunks/{chunk.RU5QGDNJ.js.map → chunk.5I4XCEOQ.js.map} +0 -0
  354. /package/dist/chunks/{chunk.D3NSCKGB.js.map → chunk.5IQRFG3H.js.map} +0 -0
  355. /package/dist/chunks/{chunk.3HG7LHI7.js.map → chunk.5NVN66IY.js.map} +0 -0
  356. /package/dist/chunks/{chunk.ZXXT7QGH.js.map → chunk.5WL6UNWH.js.map} +0 -0
  357. /package/dist/chunks/{chunk.PPKWM5KJ.js.map → chunk.675UQUVN.js.map} +0 -0
  358. /package/dist/chunks/{chunk.VXAM5HPM.js.map → chunk.6B2OMLPX.js.map} +0 -0
  359. /package/dist/chunks/{chunk.ITKS5ZOS.js.map → chunk.74IOULXM.js.map} +0 -0
  360. /package/dist/chunks/{chunk.GQMLBFF3.js.map → chunk.7FWWX2JI.js.map} +0 -0
  361. /package/dist/chunks/{chunk.WYQ7ZY3X.js.map → chunk.7PRWOM2L.js.map} +0 -0
  362. /package/dist/chunks/{chunk.FMSA5VHT.js.map → chunk.A3OYJILJ.js.map} +0 -0
  363. /package/dist/chunks/{chunk.M2JYB7TN.js.map → chunk.AULZM3VU.js.map} +0 -0
  364. /package/dist/chunks/{chunk.J5H7WYNF.js.map → chunk.C2OU3CYH.js.map} +0 -0
  365. /package/dist/chunks/{chunk.D65RJIQG.js.map → chunk.CIBFXWEU.js.map} +0 -0
  366. /package/dist/chunks/{chunk.FIIQJSVJ.js.map → chunk.DLWXSSMP.js.map} +0 -0
  367. /package/dist/chunks/{chunk.Y3LKXZKA.js.map → chunk.DOT5NAX6.js.map} +0 -0
  368. /package/dist/chunks/{chunk.S35OARTV.js.map → chunk.DXVNZNP4.js.map} +0 -0
  369. /package/dist/chunks/{chunk.AMAMIZIA.js.map → chunk.E7GWXVOR.js.map} +0 -0
  370. /package/dist/chunks/{chunk.63P7MT4J.js.map → chunk.EG52ADUJ.js.map} +0 -0
  371. /package/dist/chunks/{chunk.PN2B3HKP.js.map → chunk.ERVO426Y.js.map} +0 -0
  372. /package/dist/chunks/{chunk.QQ3HY3YJ.js.map → chunk.ESQAXAFE.js.map} +0 -0
  373. /package/dist/chunks/{chunk.536NCWEA.js.map → chunk.FATEF4SI.js.map} +0 -0
  374. /package/dist/chunks/{chunk.I6ROVIIB.js.map → chunk.FVC3ZTWV.js.map} +0 -0
  375. /package/dist/chunks/{chunk.LGCK4I4E.js.map → chunk.GQTWQ6VS.js.map} +0 -0
  376. /package/dist/chunks/{chunk.E35IIEQ7.js.map → chunk.GRM2S5KI.js.map} +0 -0
  377. /package/dist/chunks/{chunk.K5OP4LDM.js.map → chunk.GTF3H4UM.js.map} +0 -0
  378. /package/dist/chunks/{chunk.XL5RSJ3V.js.map → chunk.GTXFAFHX.js.map} +0 -0
  379. /package/dist/chunks/{chunk.2VMSUMKU.js.map → chunk.GVHPNNP4.js.map} +0 -0
  380. /package/dist/chunks/{chunk.T2BHFREJ.js.map → chunk.GWABGZSP.js.map} +0 -0
  381. /package/dist/chunks/{chunk.F6HHFAPB.js.map → chunk.HOERRZTH.js.map} +0 -0
  382. /package/dist/chunks/{chunk.KL7CAPPJ.js.map → chunk.HQ6QUSK7.js.map} +0 -0
  383. /package/dist/chunks/{chunk.NFYLQHRP.js.map → chunk.HZ5CAJ44.js.map} +0 -0
  384. /package/dist/chunks/{chunk.OQQ3RUCC.js.map → chunk.I63UC3RD.js.map} +0 -0
  385. /package/dist/chunks/{chunk.J2EUQLBR.js.map → chunk.IDZSSKZ7.js.map} +0 -0
  386. /package/dist/chunks/{chunk.ITWCPUOB.js.map → chunk.IO6MRMUN.js.map} +0 -0
  387. /package/dist/chunks/{chunk.LQCQI2F4.js.map → chunk.JGAVJWAD.js.map} +0 -0
  388. /package/dist/chunks/{chunk.3SWRT4AL.js.map → chunk.JMXGX6SJ.js.map} +0 -0
  389. /package/dist/chunks/{chunk.4PD74CS6.js.map → chunk.JQYICBYX.js.map} +0 -0
  390. /package/dist/chunks/{chunk.D3FO6WR5.js.map → chunk.JUFMYJ7U.js.map} +0 -0
  391. /package/dist/chunks/{chunk.6BJDFV76.js.map → chunk.KBBZD5N2.js.map} +0 -0
  392. /package/dist/chunks/{chunk.WZ3DZS4C.js.map → chunk.KFOCAYIR.js.map} +0 -0
  393. /package/dist/chunks/{chunk.EJNLN3CX.js.map → chunk.KIOPPTRE.js.map} +0 -0
  394. /package/dist/chunks/{chunk.2IEYCSI6.js.map → chunk.KKESNMMN.js.map} +0 -0
  395. /package/dist/chunks/{chunk.OOFVD7M5.js.map → chunk.KUSHEB6D.js.map} +0 -0
  396. /package/dist/chunks/{chunk.INQ5T33N.js.map → chunk.LR2QN5QU.js.map} +0 -0
  397. /package/dist/chunks/{chunk.UCZUWSO5.js.map → chunk.LRLW57A2.js.map} +0 -0
  398. /package/dist/chunks/{chunk.R6T4FYGP.js.map → chunk.LYPNOF2P.js.map} +0 -0
  399. /package/dist/chunks/{chunk.X7TL7T7R.js.map → chunk.MC64AZOV.js.map} +0 -0
  400. /package/dist/chunks/{chunk.XG3XBCNU.js.map → chunk.MKHL7D2E.js.map} +0 -0
  401. /package/dist/chunks/{chunk.ITW4C543.js.map → chunk.OBVCMMTU.js.map} +0 -0
  402. /package/dist/chunks/{chunk.FRELNK6W.js.map → chunk.PG2F4WDE.js.map} +0 -0
  403. /package/dist/chunks/{chunk.H43NLW3K.js.map → chunk.PWXKT65G.js.map} +0 -0
  404. /package/dist/chunks/{chunk.XVUJKP6I.js.map → chunk.PX4QAT55.js.map} +0 -0
  405. /package/dist/chunks/{chunk.HVKRSLBD.js.map → chunk.QXUGPVZI.js.map} +0 -0
  406. /package/dist/chunks/{chunk.PAFCMQM4.js.map → chunk.QYCCHV2M.js.map} +0 -0
  407. /package/dist/chunks/{chunk.HIIXDCGP.js.map → chunk.S4CJWSJ7.js.map} +0 -0
  408. /package/dist/chunks/{chunk.NPHJNN2T.js.map → chunk.STGUK4N7.js.map} +0 -0
  409. /package/dist/chunks/{chunk.2TVDQYJX.js.map → chunk.T3Z46TYU.js.map} +0 -0
  410. /package/dist/chunks/{chunk.VB7U5SK7.js.map → chunk.TBKTI5Z2.js.map} +0 -0
  411. /package/dist/chunks/{chunk.GVPQNGY3.js.map → chunk.TJ57Q72L.js.map} +0 -0
  412. /package/dist/chunks/{chunk.JUZCWVBF.js.map → chunk.TLE7NC7B.js.map} +0 -0
  413. /package/dist/chunks/{chunk.KCVQQRVW.js.map → chunk.UFYKHP3N.js.map} +0 -0
  414. /package/dist/chunks/{chunk.OZGGB3YU.js.map → chunk.UJ4TG52Q.js.map} +0 -0
  415. /package/dist/chunks/{chunk.AQ3OGEJ7.js.map → chunk.V3O735XM.js.map} +0 -0
  416. /package/dist/chunks/{chunk.MCWFKLR3.js.map → chunk.VFT47SBZ.js.map} +0 -0
  417. /package/dist/chunks/{chunk.UQOWSCP3.js.map → chunk.VWUDTX7C.js.map} +0 -0
  418. /package/dist/chunks/{chunk.HE4KPEL6.js.map → chunk.W2FFMJWS.js.map} +0 -0
  419. /package/dist/chunks/{chunk.6RTGL3PP.js.map → chunk.WR6CUTA2.js.map} +0 -0
  420. /package/dist/chunks/{chunk.TOWZTCAT.js.map → chunk.YNXBZVXB.js.map} +0 -0
  421. /package/dist/chunks/{chunk.XE5OK2UE.js.map → chunk.YRTGZEGJ.js.map} +0 -0
  422. /package/dist/chunks/{chunk.EIKNGXXK.js.map → chunk.ZNLBLPN4.js.map} +0 -0
  423. /package/dist/chunks/{chunk.AZVHDONN.js.map → chunk.ZQWTV7GI.js.map} +0 -0
  424. /package/dist/chunks/{chunk.U7XXAVXV.js.map → chunk.ZSRTPMLL.js.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynAccordion
3
- } from "./chunk.PPKWM5KJ.js";
3
+ } from "./chunk.675UQUVN.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.LQCQI2F4.js.map
12
+ //# sourceMappingURL=chunk.JGAVJWAD.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynDivider
3
- } from "./chunk.4SSPQ66Z.js";
3
+ } from "./chunk.57BEXIUH.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.3SWRT4AL.js.map
12
+ //# sourceMappingURL=chunk.JMXGX6SJ.js.map
@@ -2,7 +2,7 @@
2
2
  import { createRef, ref } from "lit/directives/ref.js";
3
3
  import { html } from "lit";
4
4
  var SubmenuController = class {
5
- constructor(host, hasSlotController, localize) {
5
+ constructor(host, hasSlotController) {
6
6
  this.popupRef = createRef();
7
7
  this.enableSubmenuTimer = -1;
8
8
  this.isConnected = false;
@@ -67,7 +67,7 @@ var SubmenuController = class {
67
67
  this.handlePopupReposition = () => {
68
68
  const submenuSlot = this.host.renderRoot.querySelector("slot[name='submenu']");
69
69
  const menu = submenuSlot == null ? void 0 : submenuSlot.assignedElements({ flatten: true }).filter((el) => el.localName === "syn-menu")[0];
70
- const isRtl = this.localize.dir() === "rtl";
70
+ const isRtl = this.host.matches(":dir(rtl)");
71
71
  if (!menu) {
72
72
  return;
73
73
  }
@@ -79,7 +79,6 @@ var SubmenuController = class {
79
79
  };
80
80
  (this.host = host).addController(this);
81
81
  this.hasSlotController = hasSlotController;
82
- this.localize = localize;
83
82
  }
84
83
  hostConnected() {
85
84
  if (this.hasSlotController.test("submenu") && !this.host.disabled) {
@@ -214,19 +213,21 @@ var SubmenuController = class {
214
213
  return this.popupRef.value ? this.popupRef.value.active : false;
215
214
  }
216
215
  renderSubmenu() {
217
- const isLtr = this.localize.dir() === "ltr";
216
+ const isRtl = this.host.matches(":dir(rtl)");
218
217
  if (!this.isConnected) {
219
218
  return html` <slot name="submenu" hidden></slot> `;
220
219
  }
221
220
  return html`
222
221
  <syn-popup
223
222
  ${ref(this.popupRef)}
224
- placement=${isLtr ? "right-start" : "left-start"}
223
+ placement=${isRtl ? "left-start" : "right-start"}
225
224
  anchor="anchor"
226
225
  flip
227
226
  flip-fallback-strategy="best-fit"
228
227
  skidding="${this.skidding}"
229
228
  strategy="fixed"
229
+ auto-size="vertical"
230
+ auto-size-padding="10"
230
231
  >
231
232
  <slot name="submenu"></slot>
232
233
  </syn-popup>
@@ -237,4 +238,4 @@ var SubmenuController = class {
237
238
  export {
238
239
  SubmenuController
239
240
  };
240
- //# sourceMappingURL=chunk.U2OMGNNZ.js.map
241
+ //# sourceMappingURL=chunk.JNP34M27.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/menu-item/submenu-controller.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 { createRef, ref, type Ref } from 'lit/directives/ref.js';\nimport { type HasSlotController } from '../../internal/slot.js';\nimport { html } from 'lit';\nimport type { ReactiveController, ReactiveControllerHost } from 'lit';\nimport type SynMenuItem from './menu-item.js';\nimport type SynPopup from '../popup/popup.js';\n\n/** A reactive controller to manage the registration of event listeners for submenus. */\nexport class SubmenuController implements ReactiveController {\n private host: ReactiveControllerHost & SynMenuItem;\n private popupRef: Ref<SynPopup> = createRef();\n private enableSubmenuTimer = -1;\n private isConnected = false;\n private isPopupConnected = false;\n private skidding = 0;\n private readonly hasSlotController: HasSlotController;\n private readonly submenuOpenDelay = 100;\n\n constructor(host: ReactiveControllerHost & SynMenuItem, hasSlotController: HasSlotController) {\n (this.host = host).addController(this);\n this.hasSlotController = hasSlotController;\n }\n\n hostConnected() {\n if (this.hasSlotController.test('submenu') && !this.host.disabled) {\n this.addListeners();\n }\n }\n\n hostDisconnected() {\n this.removeListeners();\n }\n\n hostUpdated() {\n if (this.hasSlotController.test('submenu') && !this.host.disabled) {\n this.addListeners();\n this.updateSkidding();\n } else {\n this.removeListeners();\n }\n }\n\n private addListeners() {\n if (!this.isConnected) {\n this.host.addEventListener('mousemove', this.handleMouseMove);\n this.host.addEventListener('mouseover', this.handleMouseOver);\n this.host.addEventListener('keydown', this.handleKeyDown);\n this.host.addEventListener('click', this.handleClick);\n this.host.addEventListener('focusout', this.handleFocusOut);\n this.isConnected = true;\n }\n\n // The popup does not seem to get wired when the host is\n // connected, so manage its listeners separately.\n if (!this.isPopupConnected) {\n if (this.popupRef.value) {\n this.popupRef.value.addEventListener('mouseover', this.handlePopupMouseover);\n this.popupRef.value.addEventListener('syn-reposition', this.handlePopupReposition);\n this.isPopupConnected = true;\n }\n }\n }\n\n private removeListeners() {\n if (this.isConnected) {\n this.host.removeEventListener('mousemove', this.handleMouseMove);\n this.host.removeEventListener('mouseover', this.handleMouseOver);\n this.host.removeEventListener('keydown', this.handleKeyDown);\n this.host.removeEventListener('click', this.handleClick);\n this.host.removeEventListener('focusout', this.handleFocusOut);\n this.isConnected = false;\n }\n if (this.isPopupConnected) {\n if (this.popupRef.value) {\n this.popupRef.value.removeEventListener('mouseover', this.handlePopupMouseover);\n this.popupRef.value.removeEventListener('syn-reposition', this.handlePopupReposition);\n this.isPopupConnected = false;\n }\n }\n }\n\n // Set the safe triangle cursor position\n private handleMouseMove = (event: MouseEvent) => {\n this.host.style.setProperty('--safe-triangle-cursor-x', `${event.clientX}px`);\n this.host.style.setProperty('--safe-triangle-cursor-y', `${event.clientY}px`);\n };\n\n private handleMouseOver = () => {\n if (this.hasSlotController.test('submenu')) {\n this.enableSubmenu();\n }\n };\n\n private handleSubmenuEntry(event: KeyboardEvent) {\n // Pass focus to the first menu-item in the submenu.\n const submenuSlot: HTMLSlotElement | null = this.host.renderRoot.querySelector(\"slot[name='submenu']\");\n\n // Missing slot\n if (!submenuSlot) {\n console.error('Cannot activate a submenu if no corresponding menuitem can be found.', this);\n return;\n }\n\n // Menus\n let menuItems: NodeListOf<Element> | null = null;\n for (const elt of submenuSlot.assignedElements()) {\n menuItems = elt.querySelectorAll(\"syn-menu-item, [role^='menuitem']\");\n if (menuItems.length !== 0) {\n break;\n }\n }\n\n if (!menuItems || menuItems.length === 0) {\n return;\n }\n\n menuItems[0].setAttribute('tabindex', '0');\n for (let i = 1; i !== menuItems.length; ++i) {\n menuItems[i].setAttribute('tabindex', '-1');\n }\n\n // Open the submenu (if not open), and set focus to first menuitem.\n if (this.popupRef.value) {\n event.preventDefault();\n event.stopPropagation();\n if (this.popupRef.value.active) {\n if (menuItems[0] instanceof HTMLElement) {\n menuItems[0].focus();\n }\n } else {\n this.enableSubmenu(false);\n this.host.updateComplete.then(() => {\n if (menuItems![0] instanceof HTMLElement) {\n menuItems![0].focus();\n }\n });\n this.host.requestUpdate();\n }\n }\n }\n\n // Focus on the first menu-item of a submenu.\n private handleKeyDown = (event: KeyboardEvent) => {\n switch (event.key) {\n case 'Escape':\n case 'Tab':\n this.disableSubmenu();\n break;\n case 'ArrowLeft':\n // Either focus is currently on the host element or a child\n if (event.target !== this.host) {\n event.preventDefault();\n event.stopPropagation();\n this.host.focus();\n this.disableSubmenu();\n }\n break;\n case 'ArrowRight':\n case 'Enter':\n case ' ':\n this.handleSubmenuEntry(event);\n break;\n default:\n break;\n }\n };\n\n private handleClick = (event: MouseEvent) => {\n // Clicking on the item which heads the menu does nothing, otherwise hide submenu and propagate\n if (event.target === this.host) {\n event.preventDefault();\n event.stopPropagation();\n } else if (\n event.target instanceof Element &&\n (event.target.tagName === 'syn-menu-item' || event.target.role?.startsWith('menuitem'))\n ) {\n this.disableSubmenu();\n }\n };\n\n // Close this submenu on focus outside of the parent or any descendants.\n private handleFocusOut = (event: FocusEvent) => {\n if (event.relatedTarget && event.relatedTarget instanceof Element && this.host.contains(event.relatedTarget)) {\n return;\n }\n this.disableSubmenu();\n };\n\n // Prevent the parent menu-item from getting focus on mouse movement on the submenu\n private handlePopupMouseover = (event: MouseEvent) => {\n event.stopPropagation();\n };\n\n // Set the safe triangle values for the submenu when the position changes\n private handlePopupReposition = () => {\n const submenuSlot: HTMLSlotElement | null = this.host.renderRoot.querySelector(\"slot[name='submenu']\");\n const menu = submenuSlot?.assignedElements({ flatten: true }).filter(el => el.localName === 'syn-menu')[0];\n const isRtl = this.host.matches(':dir(rtl)');\n if (!menu) {\n return;\n }\n\n const { left, top, width, height } = menu.getBoundingClientRect();\n\n this.host.style.setProperty('--safe-triangle-submenu-start-x', `${isRtl ? left + width : left}px`);\n this.host.style.setProperty('--safe-triangle-submenu-start-y', `${top}px`);\n this.host.style.setProperty('--safe-triangle-submenu-end-x', `${isRtl ? left + width : left}px`);\n this.host.style.setProperty('--safe-triangle-submenu-end-y', `${top + height}px`);\n };\n\n private setSubmenuState(state: boolean) {\n if (this.popupRef.value) {\n if (this.popupRef.value.active !== state) {\n this.popupRef.value.active = state;\n this.host.requestUpdate();\n }\n }\n }\n\n // Shows the submenu. Supports disabling the opening delay, e.g. for keyboard events that want to set the focus to the\n // newly opened menu.\n private enableSubmenu(delay = true) {\n if (delay) {\n window.clearTimeout(this.enableSubmenuTimer);\n this.enableSubmenuTimer = window.setTimeout(() => {\n this.setSubmenuState(true);\n }, this.submenuOpenDelay);\n } else {\n this.setSubmenuState(true);\n }\n }\n\n private disableSubmenu() {\n window.clearTimeout(this.enableSubmenuTimer);\n this.setSubmenuState(false);\n }\n\n // Calculate the space the top of a menu takes-up, for aligning the popup menu-item with the activating element.\n private updateSkidding(): void {\n // .computedStyleMap() not always available.\n if (!this.host.parentElement?.computedStyleMap) {\n return;\n }\n const styleMap: StylePropertyMapReadOnly = this.host.parentElement.computedStyleMap();\n const attrs: string[] = ['padding-top', 'border-top-width', 'margin-top'];\n\n const skidding = attrs.reduce((accumulator, attr) => {\n const styleValue: CSSStyleValue = styleMap.get(attr) ?? new CSSUnitValue(0, 'px');\n const unitValue = styleValue instanceof CSSUnitValue ? styleValue : new CSSUnitValue(0, 'px');\n const pxValue = unitValue.to('px');\n return accumulator - pxValue.value;\n }, 0);\n\n this.skidding = skidding;\n }\n\n isExpanded(): boolean {\n return this.popupRef.value ? this.popupRef.value.active : false;\n }\n\n renderSubmenu() {\n const isRtl = this.host.matches(':dir(rtl)');\n\n // Always render the slot, but conditionally render the outer <syn-popup>\n if (!this.isConnected) {\n return html` <slot name=\"submenu\" hidden></slot> `;\n }\n\n return html`\n <syn-popup\n ${ref(this.popupRef)}\n placement=${isRtl ? 'left-start' : 'right-start'}\n anchor=\"anchor\"\n flip\n flip-fallback-strategy=\"best-fit\"\n skidding=\"${this.skidding}\"\n strategy=\"fixed\"\n auto-size=\"vertical\"\n auto-size-padding=\"10\"\n >\n <slot name=\"submenu\"></slot>\n </syn-popup>\n `;\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["_a"]
7
+ }
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynBreadcrumb
3
- } from "./chunk.FIIQJSVJ.js";
3
+ } from "./chunk.DLWXSSMP.js";
4
4
 
5
5
  // src/components/breadcrumb/breadcrumb.ts
6
6
  var breadcrumb_default = SynBreadcrumb;
@@ -9,4 +9,4 @@ SynBreadcrumb.define("syn-breadcrumb");
9
9
  export {
10
10
  breadcrumb_default
11
11
  };
12
- //# sourceMappingURL=chunk.4PD74CS6.js.map
12
+ //# sourceMappingURL=chunk.JQYICBYX.js.map
@@ -6,11 +6,11 @@ import {
6
6
  } from "./chunk.X6GR6IA2.js";
7
7
  import {
8
8
  SynDivider
9
- } from "./chunk.4SSPQ66Z.js";
9
+ } from "./chunk.57BEXIUH.js";
10
10
  import {
11
11
  SynergyElement,
12
12
  component_styles_default
13
- } from "./chunk.3I5JDTGT.js";
13
+ } from "./chunk.HY75RTM4.js";
14
14
 
15
15
  // src/components/menu-label/menu-label.component.ts
16
16
  import { html } from "lit";
@@ -32,4 +32,4 @@ SynMenuLabel.dependencies = {
32
32
  export {
33
33
  SynMenuLabel
34
34
  };
35
- //# sourceMappingURL=chunk.D3FO6WR5.js.map
35
+ //# sourceMappingURL=chunk.JUFMYJ7U.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynPopup
3
- } from "./chunk.CGOHWVSA.js";
3
+ } from "./chunk.LR22NFSQ.js";
4
4
 
5
5
  // src/components/popup/popup.ts
6
6
  var popup_default = SynPopup;
@@ -9,4 +9,4 @@ SynPopup.define("syn-popup");
9
9
  export {
10
10
  popup_default
11
11
  };
12
- //# sourceMappingURL=chunk.6BJDFV76.js.map
12
+ //# sourceMappingURL=chunk.KBBZD5N2.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynAlert
3
- } from "./chunk.NFYLQHRP.js";
3
+ } from "./chunk.HZ5CAJ44.js";
4
4
 
5
5
  // src/components/alert/alert.ts
6
6
  var alert_default = SynAlert;
@@ -9,4 +9,4 @@ SynAlert.define("syn-alert");
9
9
  export {
10
10
  alert_default
11
11
  };
12
- //# sourceMappingURL=chunk.WZ3DZS4C.js.map
12
+ //# sourceMappingURL=chunk.KFOCAYIR.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynSelect
3
- } from "./chunk.LH75WEHB.js";
3
+ } from "./chunk.NB2BFXJZ.js";
4
4
 
5
5
  // src/components/select/select.ts
6
6
  var select_default = SynSelect;
@@ -9,4 +9,4 @@ SynSelect.define("syn-select");
9
9
  export {
10
10
  select_default
11
11
  };
12
- //# sourceMappingURL=chunk.EJNLN3CX.js.map
12
+ //# sourceMappingURL=chunk.KIOPPTRE.js.map
@@ -9,14 +9,14 @@ import {
9
9
  } from "./chunk.WVVQK5TE.js";
10
10
  import {
11
11
  watch
12
- } from "./chunk.ITKS5ZOS.js";
12
+ } from "./chunk.74IOULXM.js";
13
13
  import {
14
14
  SynergyElement,
15
15
  component_styles_default
16
- } from "./chunk.3I5JDTGT.js";
16
+ } from "./chunk.HY75RTM4.js";
17
17
  import {
18
18
  __decorateClass
19
- } from "./chunk.HLQ75E45.js";
19
+ } from "./chunk.2GFK6XTO.js";
20
20
 
21
21
  // src/components/breadcrumb-item/breadcrumb-item.component.ts
22
22
  import { classMap } from "lit/directives/class-map.js";
@@ -111,4 +111,4 @@ __decorateClass([
111
111
  export {
112
112
  SynBreadcrumbItem
113
113
  };
114
- //# sourceMappingURL=chunk.2IEYCSI6.js.map
114
+ //# sourceMappingURL=chunk.KKESNMMN.js.map
@@ -10,36 +10,36 @@ import {
10
10
  } from "./chunk.FKKJBKYL.js";
11
11
  import {
12
12
  SynButton
13
- } from "./chunk.3HG7LHI7.js";
13
+ } from "./chunk.5NVN66IY.js";
14
14
  import {
15
15
  FormControlController
16
- } from "./chunk.YCNVMJNR.js";
16
+ } from "./chunk.BBNQVEPD.js";
17
17
  import {
18
18
  animateTo
19
- } from "./chunk.FMSA5VHT.js";
19
+ } from "./chunk.A3OYJILJ.js";
20
20
  import {
21
21
  getAnimation,
22
22
  setDefaultAnimation
23
- } from "./chunk.KL7CAPPJ.js";
23
+ } from "./chunk.HQ6QUSK7.js";
24
24
  import {
25
25
  HasSlotController
26
26
  } from "./chunk.WVVQK5TE.js";
27
27
  import {
28
28
  SynIcon
29
- } from "./chunk.UYCIME52.js";
29
+ } from "./chunk.EIMGBKPN.js";
30
30
  import {
31
31
  LocalizeController
32
- } from "./chunk.QQ3HY3YJ.js";
32
+ } from "./chunk.ESQAXAFE.js";
33
33
  import {
34
34
  watch
35
- } from "./chunk.ITKS5ZOS.js";
35
+ } from "./chunk.74IOULXM.js";
36
36
  import {
37
37
  SynergyElement,
38
38
  component_styles_default
39
- } from "./chunk.3I5JDTGT.js";
39
+ } from "./chunk.HY75RTM4.js";
40
40
  import {
41
41
  __decorateClass
42
- } from "./chunk.HLQ75E45.js";
42
+ } from "./chunk.2GFK6XTO.js";
43
43
 
44
44
  // src/components/file/file.component.ts
45
45
  import { classMap } from "lit/directives/class-map.js";
@@ -480,4 +480,4 @@ setDefaultAnimation("file.text.appear", {
480
480
  export {
481
481
  SynFile
482
482
  };
483
- //# sourceMappingURL=chunk.OOFVD7M5.js.map
483
+ //# sourceMappingURL=chunk.KUSHEB6D.js.map
@@ -7,10 +7,10 @@ import {
7
7
  import {
8
8
  SynergyElement,
9
9
  component_styles_default
10
- } from "./chunk.3I5JDTGT.js";
10
+ } from "./chunk.HY75RTM4.js";
11
11
  import {
12
12
  __decorateClass
13
- } from "./chunk.HLQ75E45.js";
13
+ } from "./chunk.2GFK6XTO.js";
14
14
 
15
15
  // src/components/menu/menu.component.ts
16
16
  import { html } from "lit";
@@ -22,12 +22,18 @@ var SynMenu = class extends SynergyElement {
22
22
  }
23
23
  handleClick(event) {
24
24
  const menuItemTypes = ["menuitem", "menuitemcheckbox"];
25
- const target = event.composedPath().find((el) => {
25
+ const composedPath = event.composedPath();
26
+ const target = composedPath.find((el) => {
26
27
  var _a;
27
28
  return menuItemTypes.includes(((_a = el == null ? void 0 : el.getAttribute) == null ? void 0 : _a.call(el, "role")) || "");
28
29
  });
29
- if (!target)
30
- return;
30
+ if (!target) return;
31
+ const closestMenu = composedPath.find((el) => {
32
+ var _a;
33
+ return ((_a = el == null ? void 0 : el.getAttribute) == null ? void 0 : _a.call(el, "role")) === "menu";
34
+ });
35
+ const clickHasSubmenu = closestMenu !== this;
36
+ if (clickHasSubmenu) return;
31
37
  const item = target;
32
38
  if (item.type === "checkbox") {
33
39
  item.checked = !item.checked;
@@ -128,4 +134,4 @@ __decorateClass([
128
134
  export {
129
135
  SynMenu
130
136
  };
131
- //# sourceMappingURL=chunk.MM55BLFM.js.map
137
+ //# sourceMappingURL=chunk.LG6YHKE3.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/menu/menu.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 { html } from 'lit';\nimport { query } from 'lit/decorators.js';\nimport componentStyles from '../../styles/component.styles.js';\nimport SynergyElement from '../../internal/synergy-element.js';\nimport styles from './menu.styles.js';\nimport customStyles from './menu.custom.styles.js';\nimport type { CSSResultGroup } from 'lit';\nimport type SynMenuItem from '../menu-item/menu-item.component.js';\n\nexport interface MenuSelectEventDetail {\n item: SynMenuItem;\n}\n\n/**\n * @summary Menus provide a list of options for the user to choose from.\n * @documentation https://synergy.style/components/menu\n * @status stable\n * @since 2.0\n *\n * @slot - The menu's content, including menu items, menu labels, and dividers.\n *\n * @event {{ item: SynMenuItem }} syn-select - Emitted when a menu item is selected.\n */\nexport default class SynMenu extends SynergyElement {\n static styles: CSSResultGroup = [componentStyles, styles, customStyles];\n\n @query('slot') defaultSlot: HTMLSlotElement;\n\n connectedCallback() {\n super.connectedCallback();\n this.setAttribute('role', 'menu');\n }\n\n private handleClick(event: MouseEvent) {\n const menuItemTypes = ['menuitem', 'menuitemcheckbox'];\n\n const composedPath = event.composedPath();\n const target = composedPath.find((el: Element) => menuItemTypes.includes(el?.getAttribute?.('role') || ''));\n\n if (!target) return;\n\n const closestMenu = composedPath.find((el: Element) => el?.getAttribute?.('role') === 'menu');\n const clickHasSubmenu = closestMenu !== this;\n\n // Make sure we're the menu thats supposed to be handling the click event.\n if (clickHasSubmenu) return;\n\n // This isn't true. But we use it for TypeScript checks below.\n const item = target as SynMenuItem;\n\n if (item.type === 'checkbox') {\n item.checked = !item.checked;\n }\n\n this.emit('syn-select', { detail: { item } });\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n // Make a selection when pressing enter or space\n if (event.key === 'Enter' || event.key === ' ') {\n const item = this.getCurrentItem();\n event.preventDefault();\n event.stopPropagation();\n\n // Simulate a click to support @click handlers on menu items that also work with the keyboard\n item?.click();\n }\n\n // Move the selection when pressing down or up\n else if (['ArrowDown', 'ArrowUp', 'Home', 'End'].includes(event.key)) {\n const items = this.getAllItems();\n const activeItem = this.getCurrentItem();\n let index = activeItem ? items.indexOf(activeItem) : 0;\n\n if (items.length > 0) {\n event.preventDefault();\n event.stopPropagation();\n\n if (event.key === 'ArrowDown') {\n index++;\n } else if (event.key === 'ArrowUp') {\n index--;\n } else if (event.key === 'Home') {\n index = 0;\n } else if (event.key === 'End') {\n index = items.length - 1;\n }\n\n if (index < 0) {\n index = items.length - 1;\n }\n if (index > items.length - 1) {\n index = 0;\n }\n\n this.setCurrentItem(items[index]);\n items[index].focus();\n }\n }\n }\n\n private handleMouseDown(event: MouseEvent) {\n const target = event.target as HTMLElement;\n\n if (this.isMenuItem(target)) {\n this.setCurrentItem(target as SynMenuItem);\n }\n }\n\n private handleSlotChange() {\n const items = this.getAllItems();\n\n // Reset the roving tab index when the slotted items change\n if (items.length > 0) {\n this.setCurrentItem(items[0]);\n }\n }\n\n private isMenuItem(item: HTMLElement) {\n return (\n item.tagName.toLowerCase() === 'syn-menu-item' ||\n ['menuitem', 'menuitemcheckbox', 'menuitemradio'].includes(item.getAttribute('role') ?? '')\n );\n }\n\n /** @internal Gets all slotted menu items, ignoring dividers, headers, and other elements. */\n getAllItems() {\n return [...this.defaultSlot.assignedElements({ flatten: true })].filter((el: HTMLElement) => {\n if (el.inert || !this.isMenuItem(el)) {\n return false;\n }\n return true;\n }) as SynMenuItem[];\n }\n\n /**\n * @internal Gets the current menu item, which is the menu item that has `tabindex=\"0\"` within the roving tab index.\n * The menu item may or may not have focus, but for keyboard interaction purposes it's considered the \"active\" item.\n */\n getCurrentItem() {\n return this.getAllItems().find(i => i.getAttribute('tabindex') === '0');\n }\n\n /**\n * @internal Sets the current menu item to the specified element. This sets `tabindex=\"0\"` on the target element and\n * `tabindex=\"-1\"` to all other items. This method must be called prior to setting focus on a menu item.\n */\n setCurrentItem(item: SynMenuItem) {\n const items = this.getAllItems();\n\n // Update tab indexes\n items.forEach(i => {\n i.setAttribute('tabindex', i === item ? '0' : '-1');\n });\n }\n\n render() {\n return html`\n <slot\n @slotchange=${this.handleSlotChange}\n @click=${this.handleClick}\n @keydown=${this.handleKeyDown}\n @mousedown=${this.handleMouseDown}\n ></slot>\n `;\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  icon_button_custom_styles_default
3
- } from "./chunk.ZHH2AHOZ.js";
3
+ } from "./chunk.6QYKWCSO.js";
4
4
  import {
5
5
  icon_button_styles_default
6
6
  } from "./chunk.DZ7YIR5N.js";
7
7
  import {
8
8
  SynIcon
9
- } from "./chunk.UYCIME52.js";
9
+ } from "./chunk.EIMGBKPN.js";
10
10
  import {
11
11
  SynergyElement,
12
12
  component_styles_default
13
- } from "./chunk.3I5JDTGT.js";
13
+ } from "./chunk.HY75RTM4.js";
14
14
  import {
15
15
  __decorateClass
16
- } from "./chunk.HLQ75E45.js";
16
+ } from "./chunk.2GFK6XTO.js";
17
17
 
18
18
  // src/components/icon-button/icon-button.component.ts
19
19
  import { classMap } from "lit/directives/class-map.js";
@@ -67,9 +67,7 @@ var SynIconButton = class extends SynergyElement {
67
67
  "icon-button--focused": this.hasFocus,
68
68
  "icon-button--small": this.size === "small",
69
69
  "icon-button--medium": this.size === "medium",
70
- "icon-button--large": this.size === "large",
71
- "icon-button--primary": this.color === "primary",
72
- "icon-button--neutral": this.color === "neutral"
70
+ "icon-button--large": this.size === "large"
73
71
  })}
74
72
  ?disabled=${ifDefined(isLink ? void 0 : this.disabled)}
75
73
  type=${ifDefined(isLink ? void 0 : "button")}
@@ -138,4 +136,4 @@ __decorateClass([
138
136
  export {
139
137
  SynIconButton
140
138
  };
141
- //# sourceMappingURL=chunk.YOHLIT2Z.js.map
139
+ //# sourceMappingURL=chunk.LP2ZDM7P.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/components/icon-button/icon-button.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, literal } from 'lit/static-html.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { property, query, state } from 'lit/decorators.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 './icon-button.styles.js';\nimport customStyles from './icon-button.custom.styles.js';\nimport type { CSSResultGroup } from 'lit';\n\n/**\n * @summary Icons buttons are simple, icon-only buttons that can be used for actions and in toolbars.\n * @documentation https://synergy.style/components/icon-button\n * @status stable\n * @since 2.0\n *\n * @dependency syn-icon\n *\n * @event syn-blur - Emitted when the icon button loses focus.\n * @event syn-focus - Emitted when the icon button gains focus.\n *\n * @csspart base - The component's base wrapper.\n */\nexport default class SynIconButton extends SynergyElement {\n static styles: CSSResultGroup = [componentStyles, styles, customStyles];\n static dependencies = { 'syn-icon': SynIcon };\n\n @query('.icon-button') button: HTMLButtonElement | HTMLLinkElement;\n\n @state() private hasFocus = false;\n\n /** The name of the icon to draw. Available names depend on the icon library being used. */\n @property() name?: string;\n\n /** The name of a registered custom icon library. */\n @property() library?: string;\n\n /**\n * An external URL of an SVG file. Be sure you trust the content you are including, as it will be executed as code and\n * can result in XSS attacks.\n */\n @property() src?: string;\n\n /** When set, the underlying button will be rendered as an `<a>` with this `href` instead of a `<button>`. */\n @property() href?: string;\n\n /** Tells the browser where to open the link. Only used when `href` is set. */\n @property() target?: '_blank' | '_parent' | '_self' | '_top';\n\n /** Tells the browser to download the linked file as this filename. Only used when `href` is set. */\n @property() download?: string;\n\n /**\n * A description that gets read by assistive devices. For optimal accessibility, you should always include a label\n * that describes what the icon button does.\n */\n @property() label = '';\n\n /** The icon button's size. */\n @property({ reflect: true }) size: 'small' | 'medium' | 'large' | 'inherit' = 'inherit';\n\n /**\n * The color of the icon button.\n * The default \"currentColor\" makes it possible to easily style the icon button from outside without any CSS variables.\n */\n @property({ reflect: true }) color: 'currentColor' | 'primary' | 'neutral' = 'currentColor';\n\n /** Disables the button. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('syn-blur');\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('syn-focus');\n }\n\n private handleClick(event: MouseEvent) {\n if (this.disabled) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n\n /** Simulates a click on the icon button. */\n click() {\n this.button.click();\n }\n\n /** Sets focus on the icon button. */\n focus(options?: FocusOptions) {\n this.button.focus(options);\n }\n\n /** Removes focus from the icon button. */\n blur() {\n this.button.blur();\n }\n\n render() {\n const isLink = this.href ? true : false;\n const tag = isLink ? literal`a` : literal`button`;\n\n /* eslint-disable lit/binding-positions, lit/no-invalid-html */\n return html`\n <${tag}\n part=\"base\"\n class=${classMap({\n 'icon-button': true,\n 'icon-button--disabled': !isLink && this.disabled,\n 'icon-button--focused': this.hasFocus,\n 'icon-button--small': this.size === 'small',\n 'icon-button--medium': this.size === 'medium',\n 'icon-button--large': this.size === 'large',\n 'icon-button--primary': this.color === 'primary',\n 'icon-button--neutral': this.color === 'neutral'\n })}\n ?disabled=${ifDefined(isLink ? undefined : this.disabled)}\n type=${ifDefined(isLink ? undefined : 'button')}\n href=${ifDefined(isLink ? this.href : undefined)}\n target=${ifDefined(isLink ? this.target : undefined)}\n download=${ifDefined(isLink ? this.download : undefined)}\n rel=${ifDefined(isLink && this.target ? 'noreferrer noopener' : undefined)}\n role=${ifDefined(isLink ? undefined : 'button')}\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-label=\"${this.label}\"\n tabindex=${this.disabled ? '-1' : '0'}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @click=${this.handleClick}\n >\n <syn-icon\n class=\"icon-button__icon\"\n name=${ifDefined(this.name)}\n library=${ifDefined(this.library)}\n src=${ifDefined(this.src)}\n aria-hidden=\"true\"\n ></syn-icon>\n </${tag}>\n `;\n }\n}\n"],
5
- "mappings": "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",
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, literal } from 'lit/static-html.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { property, query, state } from 'lit/decorators.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 './icon-button.styles.js';\nimport customStyles from './icon-button.custom.styles.js';\nimport type { CSSResultGroup } from 'lit';\n\n/**\n * @summary Icons buttons are simple, icon-only buttons that can be used for actions and in toolbars.\n * @documentation https://synergy.style/components/icon-button\n * @status stable\n * @since 2.0\n *\n * @dependency syn-icon\n *\n * @event syn-blur - Emitted when the icon button loses focus.\n * @event syn-focus - Emitted when the icon button gains focus.\n *\n * @csspart base - The component's base wrapper.\n */\nexport default class SynIconButton extends SynergyElement {\n static styles: CSSResultGroup = [componentStyles, styles, customStyles];\n static dependencies = { 'syn-icon': SynIcon };\n\n @query('.icon-button') button: HTMLButtonElement | HTMLLinkElement;\n\n @state() private hasFocus = false;\n\n /** The name of the icon to draw. Available names depend on the icon library being used. */\n @property() name?: string;\n\n /** The name of a registered custom icon library. */\n @property() library?: string;\n\n /**\n * An external URL of an SVG file. Be sure you trust the content you are including, as it will be executed as code and\n * can result in XSS attacks.\n */\n @property() src?: string;\n\n /** When set, the underlying button will be rendered as an `<a>` with this `href` instead of a `<button>`. */\n @property() href?: string;\n\n /** Tells the browser where to open the link. Only used when `href` is set. */\n @property() target?: '_blank' | '_parent' | '_self' | '_top';\n\n /** Tells the browser to download the linked file as this filename. Only used when `href` is set. */\n @property() download?: string;\n\n /**\n * A description that gets read by assistive devices. For optimal accessibility, you should always include a label\n * that describes what the icon button does.\n */\n @property() label = '';\n\n /** The icon button's size. */\n @property({ reflect: true }) size: 'small' | 'medium' | 'large' | 'inherit' = 'inherit';\n\n /**\n * The color of the icon button.\n * The default \"currentColor\" makes it possible to easily style the icon button from outside without any CSS variables.\n */\n @property({ reflect: true }) color: 'currentColor' | 'primary' | 'neutral' = 'currentColor';\n\n /** Disables the button. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('syn-blur');\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('syn-focus');\n }\n\n private handleClick(event: MouseEvent) {\n if (this.disabled) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n\n /** Simulates a click on the icon button. */\n click() {\n this.button.click();\n }\n\n /** Sets focus on the icon button. */\n focus(options?: FocusOptions) {\n this.button.focus(options);\n }\n\n /** Removes focus from the icon button. */\n blur() {\n this.button.blur();\n }\n\n render() {\n const isLink = this.href ? true : false;\n const tag = isLink ? literal`a` : literal`button`;\n\n /* eslint-disable lit/binding-positions, lit/no-invalid-html */\n return html`\n <${tag}\n part=\"base\"\n class=${classMap({\n 'icon-button': true,\n 'icon-button--disabled': !isLink && this.disabled,\n 'icon-button--focused': this.hasFocus,\n 'icon-button--small': this.size === 'small',\n 'icon-button--medium': this.size === 'medium',\n 'icon-button--large': this.size === 'large',\n })}\n ?disabled=${ifDefined(isLink ? undefined : this.disabled)}\n type=${ifDefined(isLink ? undefined : 'button')}\n href=${ifDefined(isLink ? this.href : undefined)}\n target=${ifDefined(isLink ? this.target : undefined)}\n download=${ifDefined(isLink ? this.download : undefined)}\n rel=${ifDefined(isLink && this.target ? 'noreferrer noopener' : undefined)}\n role=${ifDefined(isLink ? undefined : 'button')}\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-label=\"${this.label}\"\n tabindex=${this.disabled ? '-1' : '0'}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @click=${this.handleClick}\n >\n <syn-icon\n class=\"icon-button__icon\"\n name=${ifDefined(this.name)}\n library=${ifDefined(this.library)}\n src=${ifDefined(this.src)}\n aria-hidden=\"true\"\n ></syn-icon>\n </${tag}>\n `;\n }\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -4,12 +4,12 @@ import {
4
4
  import {
5
5
  SynergyElement,
6
6
  component_styles_default
7
- } from "./chunk.3I5JDTGT.js";
7
+ } from "./chunk.HY75RTM4.js";
8
8
  import {
9
9
  __decorateClass,
10
10
  __spreadProps,
11
11
  __spreadValues
12
- } from "./chunk.HLQ75E45.js";
12
+ } from "./chunk.2GFK6XTO.js";
13
13
 
14
14
  // src/components/popup/popup.component.ts
15
15
  import { arrow, autoUpdate, computePosition, flip, offset, platform, shift, size } from "@floating-ui/dom";
@@ -252,7 +252,7 @@ var SynPopup = class extends SynergyElement {
252
252
  getOffsetParent
253
253
  })
254
254
  }).then(({ x, y, middlewareData, placement }) => {
255
- const isRtl = getComputedStyle(this).direction === "rtl";
255
+ const isRtl = this.matches(":dir(rtl)");
256
256
  const staticSide = { top: "bottom", right: "left", bottom: "top", left: "right" }[placement.split("-")[0]];
257
257
  this.setAttribute("data-current-placement", placement);
258
258
  Object.assign(this.popup.style, {
@@ -409,4 +409,4 @@ __decorateClass([
409
409
  export {
410
410
  SynPopup
411
411
  };
412
- //# sourceMappingURL=chunk.CGOHWVSA.js.map
412
+ //# sourceMappingURL=chunk.LR22NFSQ.js.map