@synergy-design-system/components 1.20.1 → 1.20.2

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 (191) hide show
  1. package/dist/chunks/{chunk.7JIRQOP4.js → chunk.255WSUJ6.js} +2 -2
  2. package/dist/chunks/{chunk.F7AUODH4.js → chunk.26W5MPWF.js} +2 -2
  3. package/dist/chunks/{chunk.4ITEU4FK.js → chunk.27X4TAN2.js} +2 -2
  4. package/dist/chunks/{chunk.VQN6N2CM.js → chunk.2HIVX4BL.js} +2 -2
  5. package/dist/chunks/{chunk.C6NSZT54.js → chunk.3A4KXY2C.js} +2 -2
  6. package/dist/chunks/{chunk.FVKVAJGY.js → chunk.3BMTY3QP.js} +2 -2
  7. package/dist/chunks/{chunk.4FAXULII.js → chunk.3ETU3OAI.js} +5 -4
  8. package/dist/chunks/{chunk.4FAXULII.js.map → chunk.3ETU3OAI.js.map} +2 -2
  9. package/dist/chunks/{chunk.DJF4JI4X.js → chunk.4WCOATRK.js} +2 -2
  10. package/dist/chunks/{chunk.GHNHKD6M.js → chunk.5BZDGFTC.js} +2 -2
  11. package/dist/chunks/{chunk.4XKOBCVD.js → chunk.5LWOA6IG.js} +2 -2
  12. package/dist/chunks/{chunk.XIVWHHDF.js → chunk.5UKNPZUG.js} +2 -2
  13. package/dist/chunks/{chunk.SQO3FMZF.js → chunk.6VEKDCNR.js} +3 -3
  14. package/dist/chunks/{chunk.5NBOZ6NJ.js → chunk.73CTHNSS.js} +2 -2
  15. package/dist/chunks/{chunk.NNOVR6QD.js → chunk.7CDPWJ3P.js} +3 -3
  16. package/dist/chunks/{chunk.YLGY4KSI.js → chunk.7X6IW4YT.js} +2 -2
  17. package/dist/chunks/{chunk.KXRTRZVI.js → chunk.BEZK7JYG.js} +4 -4
  18. package/dist/chunks/{chunk.YZDFPCCW.js → chunk.BIOL7OSG.js} +2 -2
  19. package/dist/chunks/{chunk.RWXSOQP2.js → chunk.BZ4JGHJK.js} +3 -3
  20. package/dist/chunks/{chunk.Z2AU22QV.js → chunk.C3BYA3FA.js} +2 -2
  21. package/dist/chunks/{chunk.LAGRQ3IS.js → chunk.CCNNE3US.js} +5 -5
  22. package/dist/chunks/{chunk.SYIU62AX.js → chunk.DA3O47CG.js} +2 -2
  23. package/dist/chunks/{chunk.EIBBCV5V.js → chunk.DE5OLL34.js} +2 -2
  24. package/dist/chunks/{chunk.FUU4FRAY.js → chunk.DONE65RK.js} +2 -2
  25. package/dist/chunks/{chunk.T22EPQFZ.js → chunk.DZKYLTD4.js} +2 -2
  26. package/dist/chunks/{chunk.QVWYVLGP.js → chunk.E3SGLMIN.js} +2 -2
  27. package/dist/chunks/{chunk.L4UUXVRZ.js → chunk.E5BS6NQR.js} +12 -2
  28. package/dist/chunks/{chunk.L4UUXVRZ.js.map → chunk.E5BS6NQR.js.map} +2 -2
  29. package/dist/chunks/{chunk.FPCN35CP.js → chunk.EYZKHQV4.js} +2 -2
  30. package/dist/chunks/{chunk.JZODXQHQ.js → chunk.FY6RKBHN.js} +2 -2
  31. package/dist/chunks/{chunk.23PWSJXG.js → chunk.GQHLOKUP.js} +2 -2
  32. package/dist/chunks/{chunk.SXVH6V2V.js → chunk.GUIZ4V5A.js} +2 -2
  33. package/dist/chunks/{chunk.HPTSLEE7.js → chunk.HEYOWXWH.js} +2 -2
  34. package/dist/chunks/{chunk.BQXII3KW.js → chunk.HTJ4XLFG.js} +2 -2
  35. package/dist/chunks/{chunk.UJXG3FXH.js → chunk.I3Z5BJVJ.js} +3 -3
  36. package/dist/chunks/{chunk.6E5BE4HF.js → chunk.ICQHO4WV.js} +5 -5
  37. package/dist/chunks/{chunk.QUK3LXRT.js → chunk.IRMFVUOD.js} +2 -2
  38. package/dist/chunks/{chunk.7K4JAZHY.js → chunk.IXHFCD37.js} +6 -6
  39. package/dist/chunks/{chunk.EUKJV6XG.js → chunk.JHFXEOGV.js} +2 -2
  40. package/dist/chunks/{chunk.KLJ3XXVZ.js → chunk.JHY2YL6F.js} +2 -2
  41. package/dist/chunks/{chunk.3QBKXE6G.js → chunk.LK3UAN3P.js} +2 -2
  42. package/dist/chunks/{chunk.R3MFUBCO.js → chunk.LOGIFLUF.js} +2 -2
  43. package/dist/chunks/{chunk.HQGUQXW3.js → chunk.LSN3VD7F.js} +2 -2
  44. package/dist/chunks/{chunk.CNKYRD6D.js → chunk.LTK4QHUD.js} +4 -4
  45. package/dist/chunks/{chunk.KRKLIXKV.js → chunk.MYU5WEU3.js} +3 -3
  46. package/dist/chunks/{chunk.6UIL66TA.js → chunk.N2Z5VO46.js} +2 -2
  47. package/dist/chunks/{chunk.HWTSSZC2.js → chunk.NNAQSXX3.js} +2 -2
  48. package/dist/chunks/{chunk.AT43Q6HI.js → chunk.NWC62S2Q.js} +2 -2
  49. package/dist/chunks/{chunk.VKYYJ2BL.js → chunk.O6VO5OOH.js} +3 -3
  50. package/dist/chunks/{chunk.46MCZQWP.js → chunk.OLPDKDOD.js} +3 -3
  51. package/dist/chunks/{chunk.FO7FIXHB.js → chunk.OZDJAQ45.js} +2 -2
  52. package/dist/chunks/{chunk.GJUGKRQ6.js → chunk.PI5SDQ7D.js} +2 -2
  53. package/dist/chunks/{chunk.YKP4IONJ.js → chunk.Q3EZRXQN.js} +2 -2
  54. package/dist/chunks/{chunk.5EC3WXBS.js → chunk.RQGMMTV3.js} +2 -2
  55. package/dist/chunks/{chunk.X4NJXF6V.js → chunk.SUXFDCZU.js} +3 -3
  56. package/dist/chunks/{chunk.VTYWG57Y.js → chunk.SZM2JNCA.js} +3 -3
  57. package/dist/chunks/{chunk.5MHW6GEI.js → chunk.TKQME6IL.js} +2 -2
  58. package/dist/chunks/{chunk.FE5K4IMY.js → chunk.U2WM3MXN.js} +4 -4
  59. package/dist/chunks/{chunk.56J5UZ5O.js → chunk.VHIXUBHR.js} +2 -2
  60. package/dist/chunks/{chunk.56J5UZ5O.js.map → chunk.VHIXUBHR.js.map} +1 -1
  61. package/dist/chunks/{chunk.MMYVCYE5.js → chunk.VQDXPE2T.js} +2 -2
  62. package/dist/chunks/{chunk.GZ2HG3RN.js → chunk.WHP3B22M.js} +3 -3
  63. package/dist/chunks/{chunk.6INMENLF.js → chunk.XG35Q6VK.js} +2 -2
  64. package/dist/chunks/{chunk.PUZSGDYU.js → chunk.XRKJLFMC.js} +2 -2
  65. package/dist/chunks/{chunk.JNZSO64N.js → chunk.YABFYZVZ.js} +3 -3
  66. package/dist/chunks/{chunk.NQSOUJKR.js → chunk.YKTY6CS6.js} +3 -3
  67. package/dist/components/alert/alert.component.js +4 -4
  68. package/dist/components/alert/alert.js +5 -5
  69. package/dist/components/badge/badge.component.js +2 -2
  70. package/dist/components/badge/badge.js +3 -3
  71. package/dist/components/button/button.component.js +4 -4
  72. package/dist/components/button/button.js +5 -5
  73. package/dist/components/button-group/button-group.component.js +2 -2
  74. package/dist/components/button-group/button-group.js +3 -3
  75. package/dist/components/checkbox/checkbox.component.js +3 -3
  76. package/dist/components/checkbox/checkbox.js +4 -4
  77. package/dist/components/divider/divider.component.js +2 -2
  78. package/dist/components/divider/divider.js +3 -3
  79. package/dist/components/drawer/drawer.component.js +4 -4
  80. package/dist/components/drawer/drawer.js +5 -5
  81. package/dist/components/dropdown/dropdown.component.js +3 -3
  82. package/dist/components/dropdown/dropdown.js +4 -4
  83. package/dist/components/header/header.component.js +4 -4
  84. package/dist/components/header/header.js +5 -5
  85. package/dist/components/icon/icon.component.js +2 -2
  86. package/dist/components/icon/icon.js +3 -3
  87. package/dist/components/icon-button/icon-button.component.js +3 -3
  88. package/dist/components/icon-button/icon-button.js +4 -4
  89. package/dist/components/input/input.component.js +4 -4
  90. package/dist/components/input/input.js +5 -5
  91. package/dist/components/menu/menu.component.js +2 -2
  92. package/dist/components/menu/menu.js +3 -3
  93. package/dist/components/menu-item/menu-item.component.js +5 -5
  94. package/dist/components/menu-item/menu-item.js +6 -6
  95. package/dist/components/menu-label/menu-label.component.js +3 -3
  96. package/dist/components/menu-label/menu-label.js +4 -4
  97. package/dist/components/nav-item/nav-item.component.js +4 -4
  98. package/dist/components/nav-item/nav-item.js +5 -5
  99. package/dist/components/nav-item/nav-item.styles.js +1 -1
  100. package/dist/components/optgroup/optgroup.component.js +3 -3
  101. package/dist/components/optgroup/optgroup.js +4 -4
  102. package/dist/components/option/option.component.js +3 -3
  103. package/dist/components/option/option.js +4 -4
  104. package/dist/components/popup/popup.component.js +2 -2
  105. package/dist/components/popup/popup.js +3 -3
  106. package/dist/components/prio-nav/prio-nav.component.js +9 -9
  107. package/dist/components/prio-nav/prio-nav.js +10 -10
  108. package/dist/components/progress-bar/progress-bar.component.js +2 -2
  109. package/dist/components/progress-bar/progress-bar.js +3 -3
  110. package/dist/components/progress-ring/progress-ring.component.js +2 -2
  111. package/dist/components/progress-ring/progress-ring.js +3 -3
  112. package/dist/components/radio/radio.component.js +3 -3
  113. package/dist/components/radio/radio.js +4 -4
  114. package/dist/components/radio-button/radio-button.component.js +2 -2
  115. package/dist/components/radio-button/radio-button.js +3 -3
  116. package/dist/components/radio-group/radio-group.component.js +3 -3
  117. package/dist/components/radio-group/radio-group.js +4 -4
  118. package/dist/components/select/select.component.js +6 -6
  119. package/dist/components/select/select.js +7 -7
  120. package/dist/components/side-nav/side-nav.component.js +6 -6
  121. package/dist/components/side-nav/side-nav.js +7 -7
  122. package/dist/components/spinner/spinner.component.js +2 -2
  123. package/dist/components/switch/switch.component.js +2 -2
  124. package/dist/components/switch/switch.js +3 -3
  125. package/dist/components/tag/tag.component.js +4 -4
  126. package/dist/components/tag/tag.js +5 -5
  127. package/dist/components/textarea/textarea.component.js +2 -2
  128. package/dist/components/textarea/textarea.js +3 -3
  129. package/dist/custom-elements.json +1 -1
  130. package/dist/synergy.js +63 -63
  131. package/package.json +1 -1
  132. /package/dist/chunks/{chunk.7JIRQOP4.js.map → chunk.255WSUJ6.js.map} +0 -0
  133. /package/dist/chunks/{chunk.F7AUODH4.js.map → chunk.26W5MPWF.js.map} +0 -0
  134. /package/dist/chunks/{chunk.4ITEU4FK.js.map → chunk.27X4TAN2.js.map} +0 -0
  135. /package/dist/chunks/{chunk.VQN6N2CM.js.map → chunk.2HIVX4BL.js.map} +0 -0
  136. /package/dist/chunks/{chunk.C6NSZT54.js.map → chunk.3A4KXY2C.js.map} +0 -0
  137. /package/dist/chunks/{chunk.FVKVAJGY.js.map → chunk.3BMTY3QP.js.map} +0 -0
  138. /package/dist/chunks/{chunk.DJF4JI4X.js.map → chunk.4WCOATRK.js.map} +0 -0
  139. /package/dist/chunks/{chunk.GHNHKD6M.js.map → chunk.5BZDGFTC.js.map} +0 -0
  140. /package/dist/chunks/{chunk.4XKOBCVD.js.map → chunk.5LWOA6IG.js.map} +0 -0
  141. /package/dist/chunks/{chunk.XIVWHHDF.js.map → chunk.5UKNPZUG.js.map} +0 -0
  142. /package/dist/chunks/{chunk.SQO3FMZF.js.map → chunk.6VEKDCNR.js.map} +0 -0
  143. /package/dist/chunks/{chunk.5NBOZ6NJ.js.map → chunk.73CTHNSS.js.map} +0 -0
  144. /package/dist/chunks/{chunk.NNOVR6QD.js.map → chunk.7CDPWJ3P.js.map} +0 -0
  145. /package/dist/chunks/{chunk.YLGY4KSI.js.map → chunk.7X6IW4YT.js.map} +0 -0
  146. /package/dist/chunks/{chunk.KXRTRZVI.js.map → chunk.BEZK7JYG.js.map} +0 -0
  147. /package/dist/chunks/{chunk.YZDFPCCW.js.map → chunk.BIOL7OSG.js.map} +0 -0
  148. /package/dist/chunks/{chunk.RWXSOQP2.js.map → chunk.BZ4JGHJK.js.map} +0 -0
  149. /package/dist/chunks/{chunk.Z2AU22QV.js.map → chunk.C3BYA3FA.js.map} +0 -0
  150. /package/dist/chunks/{chunk.LAGRQ3IS.js.map → chunk.CCNNE3US.js.map} +0 -0
  151. /package/dist/chunks/{chunk.SYIU62AX.js.map → chunk.DA3O47CG.js.map} +0 -0
  152. /package/dist/chunks/{chunk.EIBBCV5V.js.map → chunk.DE5OLL34.js.map} +0 -0
  153. /package/dist/chunks/{chunk.FUU4FRAY.js.map → chunk.DONE65RK.js.map} +0 -0
  154. /package/dist/chunks/{chunk.T22EPQFZ.js.map → chunk.DZKYLTD4.js.map} +0 -0
  155. /package/dist/chunks/{chunk.QVWYVLGP.js.map → chunk.E3SGLMIN.js.map} +0 -0
  156. /package/dist/chunks/{chunk.FPCN35CP.js.map → chunk.EYZKHQV4.js.map} +0 -0
  157. /package/dist/chunks/{chunk.JZODXQHQ.js.map → chunk.FY6RKBHN.js.map} +0 -0
  158. /package/dist/chunks/{chunk.23PWSJXG.js.map → chunk.GQHLOKUP.js.map} +0 -0
  159. /package/dist/chunks/{chunk.SXVH6V2V.js.map → chunk.GUIZ4V5A.js.map} +0 -0
  160. /package/dist/chunks/{chunk.HPTSLEE7.js.map → chunk.HEYOWXWH.js.map} +0 -0
  161. /package/dist/chunks/{chunk.BQXII3KW.js.map → chunk.HTJ4XLFG.js.map} +0 -0
  162. /package/dist/chunks/{chunk.UJXG3FXH.js.map → chunk.I3Z5BJVJ.js.map} +0 -0
  163. /package/dist/chunks/{chunk.6E5BE4HF.js.map → chunk.ICQHO4WV.js.map} +0 -0
  164. /package/dist/chunks/{chunk.QUK3LXRT.js.map → chunk.IRMFVUOD.js.map} +0 -0
  165. /package/dist/chunks/{chunk.7K4JAZHY.js.map → chunk.IXHFCD37.js.map} +0 -0
  166. /package/dist/chunks/{chunk.EUKJV6XG.js.map → chunk.JHFXEOGV.js.map} +0 -0
  167. /package/dist/chunks/{chunk.KLJ3XXVZ.js.map → chunk.JHY2YL6F.js.map} +0 -0
  168. /package/dist/chunks/{chunk.3QBKXE6G.js.map → chunk.LK3UAN3P.js.map} +0 -0
  169. /package/dist/chunks/{chunk.R3MFUBCO.js.map → chunk.LOGIFLUF.js.map} +0 -0
  170. /package/dist/chunks/{chunk.HQGUQXW3.js.map → chunk.LSN3VD7F.js.map} +0 -0
  171. /package/dist/chunks/{chunk.CNKYRD6D.js.map → chunk.LTK4QHUD.js.map} +0 -0
  172. /package/dist/chunks/{chunk.KRKLIXKV.js.map → chunk.MYU5WEU3.js.map} +0 -0
  173. /package/dist/chunks/{chunk.6UIL66TA.js.map → chunk.N2Z5VO46.js.map} +0 -0
  174. /package/dist/chunks/{chunk.HWTSSZC2.js.map → chunk.NNAQSXX3.js.map} +0 -0
  175. /package/dist/chunks/{chunk.AT43Q6HI.js.map → chunk.NWC62S2Q.js.map} +0 -0
  176. /package/dist/chunks/{chunk.VKYYJ2BL.js.map → chunk.O6VO5OOH.js.map} +0 -0
  177. /package/dist/chunks/{chunk.46MCZQWP.js.map → chunk.OLPDKDOD.js.map} +0 -0
  178. /package/dist/chunks/{chunk.FO7FIXHB.js.map → chunk.OZDJAQ45.js.map} +0 -0
  179. /package/dist/chunks/{chunk.GJUGKRQ6.js.map → chunk.PI5SDQ7D.js.map} +0 -0
  180. /package/dist/chunks/{chunk.YKP4IONJ.js.map → chunk.Q3EZRXQN.js.map} +0 -0
  181. /package/dist/chunks/{chunk.5EC3WXBS.js.map → chunk.RQGMMTV3.js.map} +0 -0
  182. /package/dist/chunks/{chunk.X4NJXF6V.js.map → chunk.SUXFDCZU.js.map} +0 -0
  183. /package/dist/chunks/{chunk.VTYWG57Y.js.map → chunk.SZM2JNCA.js.map} +0 -0
  184. /package/dist/chunks/{chunk.5MHW6GEI.js.map → chunk.TKQME6IL.js.map} +0 -0
  185. /package/dist/chunks/{chunk.FE5K4IMY.js.map → chunk.U2WM3MXN.js.map} +0 -0
  186. /package/dist/chunks/{chunk.MMYVCYE5.js.map → chunk.VQDXPE2T.js.map} +0 -0
  187. /package/dist/chunks/{chunk.GZ2HG3RN.js.map → chunk.WHP3B22M.js.map} +0 -0
  188. /package/dist/chunks/{chunk.6INMENLF.js.map → chunk.XG35Q6VK.js.map} +0 -0
  189. /package/dist/chunks/{chunk.PUZSGDYU.js.map → chunk.XRKJLFMC.js.map} +0 -0
  190. /package/dist/chunks/{chunk.JNZSO64N.js.map → chunk.YABFYZVZ.js.map} +0 -0
  191. /package/dist/chunks/{chunk.NQSOUJKR.js.map → chunk.YKTY6CS6.js.map} +0 -0
@@ -10,7 +10,7 @@ import {
10
10
  import {
11
11
  SynergyElement,
12
12
  component_styles_default
13
- } from "./chunk.56J5UZ5O.js";
13
+ } from "./chunk.VHIXUBHR.js";
14
14
  import {
15
15
  __decorateClass
16
16
  } from "./chunk.QNDC5KWA.js";
@@ -125,4 +125,4 @@ __decorateClass([
125
125
  export {
126
126
  SynRadioButton
127
127
  };
128
- //# sourceMappingURL=chunk.7JIRQOP4.js.map
128
+ //# sourceMappingURL=chunk.255WSUJ6.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynOption
3
- } from "./chunk.SQO3FMZF.js";
3
+ } from "./chunk.6VEKDCNR.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.F7AUODH4.js.map
12
+ //# sourceMappingURL=chunk.26W5MPWF.js.map
@@ -23,7 +23,7 @@ import {
23
23
  import {
24
24
  SynergyElement,
25
25
  component_styles_default
26
- } from "./chunk.56J5UZ5O.js";
26
+ } from "./chunk.VHIXUBHR.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.4ITEU4FK.js.map
365
+ //# sourceMappingURL=chunk.27X4TAN2.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynRadioButton
3
- } from "./chunk.7JIRQOP4.js";
3
+ } from "./chunk.255WSUJ6.js";
4
4
 
5
5
  // src/components/radio-button/radio-button.ts
6
6
  var radio_button_default = SynRadioButton;
@@ -9,4 +9,4 @@ SynRadioButton.define("syn-radio-button");
9
9
  export {
10
10
  radio_button_default
11
11
  };
12
- //# sourceMappingURL=chunk.VQN6N2CM.js.map
12
+ //# sourceMappingURL=chunk.2HIVX4BL.js.map
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  SynergyElement,
6
6
  component_styles_default
7
- } from "./chunk.56J5UZ5O.js";
7
+ } from "./chunk.VHIXUBHR.js";
8
8
  import {
9
9
  __decorateClass
10
10
  } from "./chunk.QNDC5KWA.js";
@@ -87,4 +87,4 @@ function findButton(el) {
87
87
  export {
88
88
  SynButtonGroup
89
89
  };
90
- //# sourceMappingURL=chunk.C6NSZT54.js.map
90
+ //# sourceMappingURL=chunk.3A4KXY2C.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynMenuLabel
3
- } from "./chunk.X4NJXF6V.js";
3
+ } from "./chunk.SUXFDCZU.js";
4
4
 
5
5
  // src/components/menu-label/menu-label.ts
6
6
  var menu_label_default = SynMenuLabel;
@@ -9,4 +9,4 @@ SynMenuLabel.define("syn-menu-label");
9
9
  export {
10
10
  menu_label_default
11
11
  };
12
- //# sourceMappingURL=chunk.FVKVAJGY.js.map
12
+ //# sourceMappingURL=chunk.3BMTY3QP.js.map
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  nav_item_styles_default
3
- } from "./chunk.L4UUXVRZ.js";
3
+ } from "./chunk.E5BS6NQR.js";
4
4
  import {
5
5
  SynDivider
6
- } from "./chunk.4XKOBCVD.js";
6
+ } from "./chunk.5LWOA6IG.js";
7
7
  import {
8
8
  HasSlotController
9
9
  } from "./chunk.66WXVGAW.js";
@@ -13,7 +13,7 @@ import {
13
13
  import {
14
14
  SynergyElement,
15
15
  component_styles_default
16
- } from "./chunk.56J5UZ5O.js";
16
+ } from "./chunk.VHIXUBHR.js";
17
17
  import {
18
18
  __decorateClass
19
19
  } from "./chunk.QNDC5KWA.js";
@@ -198,6 +198,7 @@ var SynNavItem = class extends SynergyElement {
198
198
  "nav-item--has-prefix": this.hasSlotController.test("prefix"),
199
199
  "nav-item--has-suffix": this.hasSlotController.test("suffix"),
200
200
  "nav-item--horizontal": this.horizontal,
201
+ "nav-item--is-link": isLink,
201
202
  "nav-item--multi-line": this.isMultiLine,
202
203
  "nav-item--show-prefix-only": this.showPrefixOnly,
203
204
  "nav-item--vertical": !this.horizontal,
@@ -315,4 +316,4 @@ __decorateClass([
315
316
  export {
316
317
  SynNavItem
317
318
  };
318
- //# sourceMappingURL=chunk.4FAXULII.js.map
319
+ //# sourceMappingURL=chunk.3ETU3OAI.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/components/nav-item/nav-item.component.ts"],
4
- "sourcesContent": ["import { classMap } from 'lit/directives/class-map.js';\nimport type { CSSResultGroup } from 'lit';\nimport { html, literal } from 'lit/static-html.js';\nimport { property, query, state } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport SynDivider from '../divider/divider.component.js';\nimport { HasSlotController } from '../../internal/slot.js';\nimport SynergyElement from '../../internal/synergy-element.js';\nimport componentStyles from '../../styles/component.styles.js';\nimport styles from './nav-item.styles.js';\nimport { watch } from '../../internal/watch.js';\n\n/**\n * @summary Flexible button / link component that can be used to quickly build navigations.\n * Takes one of 3 forms:\n * - button (default),\n * - link (overrides button if a 'href' is provided),\n * - or accordion (overrides all other if 'children' slot is defined).\n *\n * @status stable\n * @since 1.14.0\n *\n * @dependency syn-divider\n *\n * @event syn-show - Emitted when the navigation item:\n * - has children,\n * - and is clicked while HTML details are hidden.\n *\n * @event syn-hide - Emitted when the navigation item:\n * - has children,\n * - and is clicked while HTML details are shown.\n *\n * @event syn-blur - Emitted when the button loses focus.\n * @event syn-focus - Emitted when the button gains focus.\n *\n * @slot - The navigation item's label.\n * @slot prefix - A presentational prefix icon or similar element.\n * @slot suffix - A presentational suffix icon or similar element.\n * @slot children - Slot used to provide nested child navigation elements.\n * If provided, details and summary elements will be used.\n * A chevron will be shown on the right side regardless of the chevron property.\n *\n * @csspart base - The component's base wrapper including children.\n * @csspart children - The wrapper that holds the children\n * @csspart content-wrapper - The component's content wrapper.\n * @csspart content - The component's content excluding children.\n * @csspart current-indicator - The indicator used when current is set to true\n * @csspart chevron - The container that wraps the chevron.\n * @csspart details - The details element rendered when there are children available\n * @csspart divider - The components optional top divider.\n * @csspart prefix - The container that wraps the prefix.\n * @csspart suffix - The container that wraps the suffix.\n *\n * @cssproperty --indentation - Numeric value, indicating the level the item is placed at.\n * @cssproperty --indentation-stepping - The amount of pixels each level will indent.\n * @cssproperty --display-children - Display property of the children. Defaults to \"contents\"\n */\nexport default class SynNavItem extends SynergyElement {\n static styles: CSSResultGroup = [componentStyles, styles];\n\n static dependencies = {\n 'syn-divider': SynDivider,\n };\n\n private readonly hasSlotController = new HasSlotController(this, '[default]', 'children', 'prefix', 'suffix');\n\n private resizeObserver: ResizeObserver;\n\n /**\n * The current focus state\n */\n @state() private hasFocus = false;\n\n /**\n * Only the prefix should be displayed\n */\n @state() private showPrefixOnly = false;\n\n /**\n * A nested nav-item is marked as current\n */\n @state() private currentMarkedChild = false;\n\n /**\n * The content area is multiline\n */\n @state() private isMultiLine = false;\n\n /**\n * Reference to the children slot\n */\n @query('slot[name=\"children\"]') childrenSlot: HTMLSlotElement;\n\n /**\n * Reference to the outermost button\n */\n @query('.nav-item') control: HTMLButtonElement | HTMLLinkElement | HTMLElement;\n\n /**\n * The navigation item's href target.\n * If provided, the navigation item will use an anchor tag otherwise it will use a button tag.\n *\n * If the 'children' slot is provided, the navigation item will ignore the 'href' and use\n * accordion behavior.\n */\n @property({ reflect: true, type: String }) href: string;\n\n /*\n * Indicates that the navigation item is currently selected.\n * The aria-current attribute is set to \"page\" on the host if true.\n */\n @property({ reflect: true, type: Boolean }) current = false;\n\n /**\n * Disables the navigation item.\n */\n @property({ reflect: true, type: Boolean }) disabled = false;\n\n /**\n * The navigation item's orientation.\n */\n @property({ reflect: true, type: Boolean }) horizontal = false;\n\n /**\n * Appends a chevron to the right side of a navigation item.\n * Only used if `horizontal` is false.\n */\n @property({ reflect: true, type: Boolean }) chevron = false;\n\n /**\n * Reflects HTML details element state and allows control from parent.\n * Only used if `horizontal` is false and `children` is defined.\n */\n @property({ reflect: true, type: Boolean }) open = false;\n\n /**\n * Toggle to true to show a divider above the element.\n * Only available when horizontal is false.\n */\n @property({ reflect: true, type: Boolean }) divider = false;\n\n private isButton(): boolean {\n return !this.href && !this.hasSlotController.test('children');\n }\n\n private isLink(): boolean {\n return !!this.href && !this.hasSlotController.test('children');\n }\n\n private isAccordion(): boolean {\n return this.hasSlotController.test('children');\n }\n\n // eslint-disable-next-line class-methods-use-this\n private getNavItemChildren(childrenSlot: HTMLSlotElement): SynNavItem[] {\n return Array.from(\n childrenSlot?.assignedElements({\n flatten: true,\n }) as HTMLElement[]\n || [],\n )\n .map(slottedElement => (slottedElement.tagName.toLowerCase() === 'syn-nav-item' ? slottedElement as SynNavItem : Array.from(slottedElement.querySelectorAll<SynNavItem>(':scope > syn-nav-item'))))\n .flat();\n }\n\n private getAllNestedNavItems(childrenSlot: HTMLSlotElement): SynNavItem[] {\n const allNavItems = this.getNavItemChildren(childrenSlot);\n\n const nestedNavItems = allNavItems\n .map(item => item.getAllNestedNavItems(item.childrenSlot))\n .flat();\n\n return allNavItems.concat(nestedNavItems);\n }\n\n private handleCurrentMarkedChild() {\n const sideNav = this.closest('syn-side-nav');\n\n if (!this.open || !!sideNav?.rail) {\n const navItemChildren = this.getAllNestedNavItems(this.childrenSlot);\n\n const currentMarkedItem = navItemChildren\n .findIndex((item) => !!item.shadowRoot?.querySelector('.nav-item--current'));\n\n this.currentMarkedChild = currentMarkedItem !== -1;\n }\n }\n\n private handleClickButton(e: MouseEvent) {\n if (this.disabled) {\n e.preventDefault();\n e.stopPropagation();\n }\n }\n\n private handleClickSummary(e: MouseEvent) {\n e.preventDefault();\n e.stopPropagation();\n\n if (this.disabled) return;\n\n if (this.open) {\n this.hideDetails();\n } else {\n this.showDetails();\n }\n }\n\n private hideDetails() {\n this.open = false;\n this.emit('syn-hide', {\n cancelable: true,\n });\n }\n\n private showDetails() {\n this.open = true;\n this.emit('syn-show', {\n cancelable: true,\n });\n }\n\n /**\n * Automatically add the correct level of indentation for sub items if none is provided\n */\n private handleSlotChange() {\n this.handleCurrentMarkedChild();\n\n // Use the current level of the component\n const level = getComputedStyle(this).getPropertyValue('--indentation');\n\n // We allow at most 3 levels\n const nextLevel = Math.min(parseInt(level, 10) + 1, 2);\n\n this.getNavItemChildren(this.childrenSlot)\n .forEach(item => {\n item.style.setProperty('--indentation', nextLevel.toFixed(0));\n });\n }\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 handleWidth(entries: ResizeObserverEntry[]) {\n entries.forEach(entry => {\n if (entry.contentRect.width < 100) {\n const hasPrefix = this.hasSlotController.test('prefix');\n this.showPrefixOnly = hasPrefix;\n } else {\n this.showPrefixOnly = false;\n }\n\n if (entry.contentRect.height > 48) {\n this.isMultiLine = true;\n } else {\n this.isMultiLine = false;\n }\n });\n }\n\n @watch('open')\n handleOpenChange() {\n this.handleCurrentMarkedChild();\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.resizeObserver = new ResizeObserver((entries) => this.handleWidth(entries));\n this.resizeObserver.observe(this);\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.resizeObserver.disconnect();\n }\n\n /**\n * Removes focus from the button.\n */\n blur() {\n this.control.blur();\n }\n\n /**\n * Simulates a click on the nav-items button, link or summary.\n */\n click() {\n this.control.click();\n }\n\n /**\n * Sets focus on the nav-item\n */\n focus(options?: FocusOptions) {\n this.control.focus(options);\n }\n\n // eslint-disable-next-line complexity\n render() {\n const isButton = this.isButton();\n const isLink = this.isLink();\n const isAccordion = this.isAccordion();\n\n const sideNav = this.closest('syn-side-nav');\n\n const showCurrentIndicatorForNested = (this.currentMarkedChild && !this.open)\n || (this.currentMarkedChild && this.open && !!sideNav?.rail && !sideNav?.open);\n\n // Defines the initial tag to use for the root component\n let tag = literal`button`;\n if (isAccordion) tag = literal`summary`;\n else if (isLink) tag = literal`a`;\n\n const hasChevron = (this.chevron || isAccordion) && !this.horizontal;\n\n // Define the click method to use\n let clickAction;\n if (isAccordion) {\n // eslint-disable-next-line @typescript-eslint/unbound-method\n clickAction = this.handleClickSummary;\n } else if (isButton) {\n // eslint-disable-next-line @typescript-eslint/unbound-method\n clickAction = this.handleClickButton;\n }\n\n /* eslint-disable lit/no-invalid-html */\n /* eslint-disable lit/binding-positions */\n /* eslint-disable @typescript-eslint/unbound-method */\n const root = html`\n <${tag}\n aria-controls=${ifDefined(isAccordion ? 'navigation-item-details' : undefined)}\n aria-current=${ifDefined(this.current ? 'page' : undefined)}\n aria-disabled=${this.disabled}\n @blur=${this.handleBlur}\n class=${classMap({\n 'nav-item': true,\n 'nav-item--current': this.current || showCurrentIndicatorForNested,\n 'nav-item--disabled': this.disabled,\n 'nav-item--focused': this.hasFocus,\n 'nav-item--has-content': this.hasSlotController.test('[default]'),\n 'nav-item--has-prefix': this.hasSlotController.test('prefix'),\n 'nav-item--has-suffix': this.hasSlotController.test('suffix'),\n 'nav-item--horizontal': this.horizontal,\n 'nav-item--multi-line': this.isMultiLine,\n 'nav-item--show-prefix-only': this.showPrefixOnly,\n 'nav-item--vertical': !this.horizontal,\n 'nav-item-is-accordion': isAccordion,\n })}\n @click=${clickAction}\n ?disabled=${ifDefined(isLink ? undefined : this.disabled)}\n @focus=${this.handleFocus}\n href=${ifDefined(isLink ? this.href : undefined)}\n part=\"base\"\n role=${isLink ? 'link' : 'button'}\n tabindex=${this.disabled ? '-1' : '0'}\n >\n\n ${this.divider && !this.horizontal\n ? html`<syn-divider class=\"divider\" part=\"divider\"></syn-divider>`\n : ''\n }\n\n <div class=\"nav-item__content\" part=\"content-wrapper\">\n <slot name=\"prefix\" part=\"prefix\" class=\"nav-item__prefix\"></slot>\n\n <div part=\"content-container\" class=\"nav-item__content-container\">\n <slot part=\"content\"></slot>\n </div>\n\n <slot name=\"suffix\" part=\"suffix\" class=\"nav-item__suffix\"></slot>\n\n ${hasChevron ? html`\n <syn-icon\n class=${classMap({\n 'nav-item__chevron': true,\n 'nav-item__chevron-open': this.open,\n })}\n color=\"currentColor\"\n library=\"system\"\n name=\"chevron-down\"\n part=\"chevron\"\n /></syn-icon>`\n : ''}\n\n <div\n class=${classMap({\n 'current-indicator': true,\n 'current-indicator--disabled': this.disabled,\n 'current-indicator--visible': this.current || showCurrentIndicatorForNested,\n })}\n part=\"current-indicator\"\n >\n </div>\n </div>\n\n </${tag}>\n `;\n /* eslint-enable lit/no-invalid-html */\n /* eslint-enable lit/binding-positions */\n\n return isAccordion ? html`\n <details\n id=\"navigation-item-details\"\n ?open=${this.open}\n part=\"details\"\n >\n ${root}\n <slot\n class=\"children\"\n name=\"children\"\n part=\"children\"\n @slotchange=${this.handleSlotChange}\n ></slot>\n </details>\n ` : root;\n /* eslint-enable @typescript-eslint/unbound-method */\n }\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { classMap } from 'lit/directives/class-map.js';\nimport type { CSSResultGroup } from 'lit';\nimport { html, literal } from 'lit/static-html.js';\nimport { property, query, state } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport SynDivider from '../divider/divider.component.js';\nimport { HasSlotController } from '../../internal/slot.js';\nimport SynergyElement from '../../internal/synergy-element.js';\nimport componentStyles from '../../styles/component.styles.js';\nimport styles from './nav-item.styles.js';\nimport { watch } from '../../internal/watch.js';\n\n/**\n * @summary Flexible button / link component that can be used to quickly build navigations.\n * Takes one of 3 forms:\n * - button (default),\n * - link (overrides button if a 'href' is provided),\n * - or accordion (overrides all other if 'children' slot is defined).\n *\n * @status stable\n * @since 1.14.0\n *\n * @dependency syn-divider\n *\n * @event syn-show - Emitted when the navigation item:\n * - has children,\n * - and is clicked while HTML details are hidden.\n *\n * @event syn-hide - Emitted when the navigation item:\n * - has children,\n * - and is clicked while HTML details are shown.\n *\n * @event syn-blur - Emitted when the button loses focus.\n * @event syn-focus - Emitted when the button gains focus.\n *\n * @slot - The navigation item's label.\n * @slot prefix - A presentational prefix icon or similar element.\n * @slot suffix - A presentational suffix icon or similar element.\n * @slot children - Slot used to provide nested child navigation elements.\n * If provided, details and summary elements will be used.\n * A chevron will be shown on the right side regardless of the chevron property.\n *\n * @csspart base - The component's base wrapper including children.\n * @csspart children - The wrapper that holds the children\n * @csspart content-wrapper - The component's content wrapper.\n * @csspart content - The component's content excluding children.\n * @csspart current-indicator - The indicator used when current is set to true\n * @csspart chevron - The container that wraps the chevron.\n * @csspart details - The details element rendered when there are children available\n * @csspart divider - The components optional top divider.\n * @csspart prefix - The container that wraps the prefix.\n * @csspart suffix - The container that wraps the suffix.\n *\n * @cssproperty --indentation - Numeric value, indicating the level the item is placed at.\n * @cssproperty --indentation-stepping - The amount of pixels each level will indent.\n * @cssproperty --display-children - Display property of the children. Defaults to \"contents\"\n */\nexport default class SynNavItem extends SynergyElement {\n static styles: CSSResultGroup = [componentStyles, styles];\n\n static dependencies = {\n 'syn-divider': SynDivider,\n };\n\n private readonly hasSlotController = new HasSlotController(this, '[default]', 'children', 'prefix', 'suffix');\n\n private resizeObserver: ResizeObserver;\n\n /**\n * The current focus state\n */\n @state() private hasFocus = false;\n\n /**\n * Only the prefix should be displayed\n */\n @state() private showPrefixOnly = false;\n\n /**\n * A nested nav-item is marked as current\n */\n @state() private currentMarkedChild = false;\n\n /**\n * The content area is multiline\n */\n @state() private isMultiLine = false;\n\n /**\n * Reference to the children slot\n */\n @query('slot[name=\"children\"]') childrenSlot: HTMLSlotElement;\n\n /**\n * Reference to the outermost button\n */\n @query('.nav-item') control: HTMLButtonElement | HTMLLinkElement | HTMLElement;\n\n /**\n * The navigation item's href target.\n * If provided, the navigation item will use an anchor tag otherwise it will use a button tag.\n *\n * If the 'children' slot is provided, the navigation item will ignore the 'href' and use\n * accordion behavior.\n */\n @property({ reflect: true, type: String }) href: string;\n\n /*\n * Indicates that the navigation item is currently selected.\n * The aria-current attribute is set to \"page\" on the host if true.\n */\n @property({ reflect: true, type: Boolean }) current = false;\n\n /**\n * Disables the navigation item.\n */\n @property({ reflect: true, type: Boolean }) disabled = false;\n\n /**\n * The navigation item's orientation.\n */\n @property({ reflect: true, type: Boolean }) horizontal = false;\n\n /**\n * Appends a chevron to the right side of a navigation item.\n * Only used if `horizontal` is false.\n */\n @property({ reflect: true, type: Boolean }) chevron = false;\n\n /**\n * Reflects HTML details element state and allows control from parent.\n * Only used if `horizontal` is false and `children` is defined.\n */\n @property({ reflect: true, type: Boolean }) open = false;\n\n /**\n * Toggle to true to show a divider above the element.\n * Only available when horizontal is false.\n */\n @property({ reflect: true, type: Boolean }) divider = false;\n\n private isButton(): boolean {\n return !this.href && !this.hasSlotController.test('children');\n }\n\n private isLink(): boolean {\n return !!this.href && !this.hasSlotController.test('children');\n }\n\n private isAccordion(): boolean {\n return this.hasSlotController.test('children');\n }\n\n // eslint-disable-next-line class-methods-use-this\n private getNavItemChildren(childrenSlot: HTMLSlotElement): SynNavItem[] {\n return Array.from(\n childrenSlot?.assignedElements({\n flatten: true,\n }) as HTMLElement[]\n || [],\n )\n .map(slottedElement => (slottedElement.tagName.toLowerCase() === 'syn-nav-item' ? slottedElement as SynNavItem : Array.from(slottedElement.querySelectorAll<SynNavItem>(':scope > syn-nav-item'))))\n .flat();\n }\n\n private getAllNestedNavItems(childrenSlot: HTMLSlotElement): SynNavItem[] {\n const allNavItems = this.getNavItemChildren(childrenSlot);\n\n const nestedNavItems = allNavItems\n .map(item => item.getAllNestedNavItems(item.childrenSlot))\n .flat();\n\n return allNavItems.concat(nestedNavItems);\n }\n\n private handleCurrentMarkedChild() {\n const sideNav = this.closest('syn-side-nav');\n\n if (!this.open || !!sideNav?.rail) {\n const navItemChildren = this.getAllNestedNavItems(this.childrenSlot);\n\n const currentMarkedItem = navItemChildren\n .findIndex((item) => !!item.shadowRoot?.querySelector('.nav-item--current'));\n\n this.currentMarkedChild = currentMarkedItem !== -1;\n }\n }\n\n private handleClickButton(e: MouseEvent) {\n if (this.disabled) {\n e.preventDefault();\n e.stopPropagation();\n }\n }\n\n private handleClickSummary(e: MouseEvent) {\n e.preventDefault();\n e.stopPropagation();\n\n if (this.disabled) return;\n\n if (this.open) {\n this.hideDetails();\n } else {\n this.showDetails();\n }\n }\n\n private hideDetails() {\n this.open = false;\n this.emit('syn-hide', {\n cancelable: true,\n });\n }\n\n private showDetails() {\n this.open = true;\n this.emit('syn-show', {\n cancelable: true,\n });\n }\n\n /**\n * Automatically add the correct level of indentation for sub items if none is provided\n */\n private handleSlotChange() {\n this.handleCurrentMarkedChild();\n\n // Use the current level of the component\n const level = getComputedStyle(this).getPropertyValue('--indentation');\n\n // We allow at most 3 levels\n const nextLevel = Math.min(parseInt(level, 10) + 1, 2);\n\n this.getNavItemChildren(this.childrenSlot)\n .forEach(item => {\n item.style.setProperty('--indentation', nextLevel.toFixed(0));\n });\n }\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 handleWidth(entries: ResizeObserverEntry[]) {\n entries.forEach(entry => {\n if (entry.contentRect.width < 100) {\n const hasPrefix = this.hasSlotController.test('prefix');\n this.showPrefixOnly = hasPrefix;\n } else {\n this.showPrefixOnly = false;\n }\n\n if (entry.contentRect.height > 48) {\n this.isMultiLine = true;\n } else {\n this.isMultiLine = false;\n }\n });\n }\n\n @watch('open')\n handleOpenChange() {\n this.handleCurrentMarkedChild();\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.resizeObserver = new ResizeObserver((entries) => this.handleWidth(entries));\n this.resizeObserver.observe(this);\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.resizeObserver.disconnect();\n }\n\n /**\n * Removes focus from the button.\n */\n blur() {\n this.control.blur();\n }\n\n /**\n * Simulates a click on the nav-items button, link or summary.\n */\n click() {\n this.control.click();\n }\n\n /**\n * Sets focus on the nav-item\n */\n focus(options?: FocusOptions) {\n this.control.focus(options);\n }\n\n // eslint-disable-next-line complexity\n render() {\n const isButton = this.isButton();\n const isLink = this.isLink();\n const isAccordion = this.isAccordion();\n\n const sideNav = this.closest('syn-side-nav');\n\n const showCurrentIndicatorForNested = (this.currentMarkedChild && !this.open)\n || (this.currentMarkedChild && this.open && !!sideNav?.rail && !sideNav?.open);\n\n // Defines the initial tag to use for the root component\n let tag = literal`button`;\n if (isAccordion) tag = literal`summary`;\n else if (isLink) tag = literal`a`;\n\n const hasChevron = (this.chevron || isAccordion) && !this.horizontal;\n\n // Define the click method to use\n let clickAction;\n if (isAccordion) {\n // eslint-disable-next-line @typescript-eslint/unbound-method\n clickAction = this.handleClickSummary;\n } else if (isButton) {\n // eslint-disable-next-line @typescript-eslint/unbound-method\n clickAction = this.handleClickButton;\n }\n\n /* eslint-disable lit/no-invalid-html */\n /* eslint-disable lit/binding-positions */\n /* eslint-disable @typescript-eslint/unbound-method */\n const root = html`\n <${tag}\n aria-controls=${ifDefined(isAccordion ? 'navigation-item-details' : undefined)}\n aria-current=${ifDefined(this.current ? 'page' : undefined)}\n aria-disabled=${this.disabled}\n @blur=${this.handleBlur}\n class=${classMap({\n 'nav-item': true,\n 'nav-item--current': this.current || showCurrentIndicatorForNested,\n 'nav-item--disabled': this.disabled,\n 'nav-item--focused': this.hasFocus,\n 'nav-item--has-content': this.hasSlotController.test('[default]'),\n 'nav-item--has-prefix': this.hasSlotController.test('prefix'),\n 'nav-item--has-suffix': this.hasSlotController.test('suffix'),\n 'nav-item--horizontal': this.horizontal,\n 'nav-item--is-link': isLink,\n 'nav-item--multi-line': this.isMultiLine,\n 'nav-item--show-prefix-only': this.showPrefixOnly,\n 'nav-item--vertical': !this.horizontal,\n 'nav-item-is-accordion': isAccordion,\n })}\n @click=${clickAction}\n ?disabled=${ifDefined(isLink ? undefined : this.disabled)}\n @focus=${this.handleFocus}\n href=${ifDefined(isLink ? this.href : undefined)}\n part=\"base\"\n role=${isLink ? 'link' : 'button'}\n tabindex=${this.disabled ? '-1' : '0'}\n >\n\n ${this.divider && !this.horizontal\n ? html`<syn-divider class=\"divider\" part=\"divider\"></syn-divider>`\n : ''\n }\n\n <div class=\"nav-item__content\" part=\"content-wrapper\">\n <slot name=\"prefix\" part=\"prefix\" class=\"nav-item__prefix\"></slot>\n\n <div part=\"content-container\" class=\"nav-item__content-container\">\n <slot part=\"content\"></slot>\n </div>\n\n <slot name=\"suffix\" part=\"suffix\" class=\"nav-item__suffix\"></slot>\n\n ${hasChevron ? html`\n <syn-icon\n class=${classMap({\n 'nav-item__chevron': true,\n 'nav-item__chevron-open': this.open,\n })}\n color=\"currentColor\"\n library=\"system\"\n name=\"chevron-down\"\n part=\"chevron\"\n /></syn-icon>`\n : ''}\n\n <div\n class=${classMap({\n 'current-indicator': true,\n 'current-indicator--disabled': this.disabled,\n 'current-indicator--visible': this.current || showCurrentIndicatorForNested,\n })}\n part=\"current-indicator\"\n >\n </div>\n </div>\n\n </${tag}>\n `;\n /* eslint-enable lit/no-invalid-html */\n /* eslint-enable lit/binding-positions */\n\n return isAccordion ? html`\n <details\n id=\"navigation-item-details\"\n ?open=${this.open}\n part=\"details\"\n >\n ${root}\n <slot\n class=\"children\"\n name=\"children\"\n part=\"children\"\n @slotchange=${this.handleSlotChange}\n ></slot>\n </details>\n ` : root;\n /* eslint-enable @typescript-eslint/unbound-method */\n }\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -15,7 +15,7 @@ import {
15
15
  import {
16
16
  SynergyElement,
17
17
  component_styles_default
18
- } from "./chunk.56J5UZ5O.js";
18
+ } from "./chunk.VHIXUBHR.js";
19
19
  import {
20
20
  __decorateClass
21
21
  } from "./chunk.QNDC5KWA.js";
@@ -182,4 +182,4 @@ __decorateClass([
182
182
  export {
183
183
  SynIcon
184
184
  };
185
- //# sourceMappingURL=chunk.DJF4JI4X.js.map
185
+ //# sourceMappingURL=chunk.4WCOATRK.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynCheckbox
3
- } from "./chunk.GZ2HG3RN.js";
3
+ } from "./chunk.WHP3B22M.js";
4
4
 
5
5
  // src/components/checkbox/checkbox.ts
6
6
  var checkbox_default = SynCheckbox;
@@ -9,4 +9,4 @@ SynCheckbox.define("syn-checkbox");
9
9
  export {
10
10
  checkbox_default
11
11
  };
12
- //# sourceMappingURL=chunk.GHNHKD6M.js.map
12
+ //# sourceMappingURL=chunk.5BZDGFTC.js.map
@@ -10,7 +10,7 @@ import {
10
10
  import {
11
11
  SynergyElement,
12
12
  component_styles_default
13
- } from "./chunk.56J5UZ5O.js";
13
+ } from "./chunk.VHIXUBHR.js";
14
14
  import {
15
15
  __decorateClass
16
16
  } from "./chunk.QNDC5KWA.js";
@@ -41,4 +41,4 @@ __decorateClass([
41
41
  export {
42
42
  SynDivider
43
43
  };
44
- //# sourceMappingURL=chunk.4XKOBCVD.js.map
44
+ //# sourceMappingURL=chunk.5LWOA6IG.js.map
@@ -10,7 +10,7 @@ import {
10
10
  import {
11
11
  SynergyElement,
12
12
  component_styles_default
13
- } from "./chunk.56J5UZ5O.js";
13
+ } from "./chunk.VHIXUBHR.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.XIVWHHDF.js.map
77
+ //# sourceMappingURL=chunk.5UKNPZUG.js.map
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk.3B24TYVN.js";
7
7
  import {
8
8
  SynIcon
9
- } from "./chunk.DJF4JI4X.js";
9
+ } from "./chunk.4WCOATRK.js";
10
10
  import {
11
11
  watch
12
12
  } from "./chunk.AVTU2BGE.js";
@@ -16,7 +16,7 @@ import {
16
16
  import {
17
17
  SynergyElement,
18
18
  component_styles_default
19
- } from "./chunk.56J5UZ5O.js";
19
+ } from "./chunk.VHIXUBHR.js";
20
20
  import {
21
21
  __decorateClass
22
22
  } from "./chunk.QNDC5KWA.js";
@@ -144,4 +144,4 @@ __decorateClass([
144
144
  export {
145
145
  SynOption
146
146
  };
147
- //# sourceMappingURL=chunk.SQO3FMZF.js.map
147
+ //# sourceMappingURL=chunk.6VEKDCNR.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynDropdown
3
- } from "./chunk.VTYWG57Y.js";
3
+ } from "./chunk.SZM2JNCA.js";
4
4
 
5
5
  // src/components/dropdown/dropdown.ts
6
6
  var dropdown_default = SynDropdown;
@@ -9,4 +9,4 @@ SynDropdown.define("syn-dropdown");
9
9
  export {
10
10
  dropdown_default
11
11
  };
12
- //# sourceMappingURL=chunk.5NBOZ6NJ.js.map
12
+ //# sourceMappingURL=chunk.73CTHNSS.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynIconButton
3
- } from "./chunk.VKYYJ2BL.js";
3
+ } from "./chunk.O6VO5OOH.js";
4
4
  import {
5
5
  animateTo,
6
6
  stopAnimations,
@@ -28,7 +28,7 @@ import {
28
28
  import {
29
29
  SynergyElement,
30
30
  component_styles_default
31
- } from "./chunk.56J5UZ5O.js";
31
+ } from "./chunk.VHIXUBHR.js";
32
32
  import {
33
33
  __decorateClass
34
34
  } from "./chunk.QNDC5KWA.js";
@@ -214,4 +214,4 @@ setDefaultAnimation("alert.hide", {
214
214
  export {
215
215
  SynAlert
216
216
  };
217
- //# sourceMappingURL=chunk.NNOVR6QD.js.map
217
+ //# sourceMappingURL=chunk.7CDPWJ3P.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynProgressRing
3
- } from "./chunk.XIVWHHDF.js";
3
+ } from "./chunk.5UKNPZUG.js";
4
4
 
5
5
  // src/components/progress-ring/progress-ring.ts
6
6
  var progress_ring_default = SynProgressRing;
@@ -9,4 +9,4 @@ SynProgressRing.define("syn-progress-ring");
9
9
  export {
10
10
  progress_ring_default
11
11
  };
12
- //# sourceMappingURL=chunk.YLGY4KSI.js.map
12
+ //# sourceMappingURL=chunk.7X6IW4YT.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynSpinner
3
- } from "./chunk.KLJ3XXVZ.js";
3
+ } from "./chunk.JHY2YL6F.js";
4
4
  import {
5
5
  FormControlController,
6
6
  validValidityState
@@ -16,7 +16,7 @@ import {
16
16
  } from "./chunk.66WXVGAW.js";
17
17
  import {
18
18
  SynIcon
19
- } from "./chunk.DJF4JI4X.js";
19
+ } from "./chunk.4WCOATRK.js";
20
20
  import {
21
21
  watch
22
22
  } from "./chunk.AVTU2BGE.js";
@@ -26,7 +26,7 @@ import {
26
26
  import {
27
27
  SynergyElement,
28
28
  component_styles_default
29
- } from "./chunk.56J5UZ5O.js";
29
+ } from "./chunk.VHIXUBHR.js";
30
30
  import {
31
31
  __decorateClass
32
32
  } from "./chunk.QNDC5KWA.js";
@@ -273,4 +273,4 @@ __decorateClass([
273
273
  export {
274
274
  SynButton
275
275
  };
276
- //# sourceMappingURL=chunk.KXRTRZVI.js.map
276
+ //# sourceMappingURL=chunk.BEZK7JYG.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynPrioNav
3
- } from "./chunk.7K4JAZHY.js";
3
+ } from "./chunk.IXHFCD37.js";
4
4
 
5
5
  // src/components/prio-nav/prio-nav.ts
6
6
  var prio_nav_default = SynPrioNav;
@@ -9,4 +9,4 @@ SynPrioNav.define("syn-prio-nav");
9
9
  export {
10
10
  prio_nav_default
11
11
  };
12
- //# sourceMappingURL=chunk.YZDFPCCW.js.map
12
+ //# sourceMappingURL=chunk.BIOL7OSG.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk.KG52EHDB.js";
4
4
  import {
5
5
  SynDivider
6
- } from "./chunk.4XKOBCVD.js";
6
+ } from "./chunk.5LWOA6IG.js";
7
7
  import {
8
8
  HasSlotController
9
9
  } from "./chunk.66WXVGAW.js";
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk.AVTU2BGE.js";
13
13
  import {
14
14
  SynergyElement
15
- } from "./chunk.56J5UZ5O.js";
15
+ } from "./chunk.VHIXUBHR.js";
16
16
  import {
17
17
  __decorateClass
18
18
  } from "./chunk.QNDC5KWA.js";
@@ -93,4 +93,4 @@ __decorateClass([
93
93
  export {
94
94
  SynOptgroup
95
95
  };
96
- //# sourceMappingURL=chunk.RWXSOQP2.js.map
96
+ //# sourceMappingURL=chunk.BZ4JGHJK.js.map
@@ -7,7 +7,7 @@ import {
7
7
  import {
8
8
  SynergyElement,
9
9
  component_styles_default
10
- } from "./chunk.56J5UZ5O.js";
10
+ } from "./chunk.VHIXUBHR.js";
11
11
  import {
12
12
  badge_custom_styles_default
13
13
  } from "./chunk.WQJRBFZA.js";
@@ -58,4 +58,4 @@ __decorateClass([
58
58
  export {
59
59
  SynBadge
60
60
  };
61
- //# sourceMappingURL=chunk.Z2AU22QV.js.map
61
+ //# sourceMappingURL=chunk.C3BYA3FA.js.map
@@ -9,17 +9,17 @@ import {
9
9
  } from "./chunk.JDBDBGQP.js";
10
10
  import {
11
11
  SynPopup
12
- } from "./chunk.FUU4FRAY.js";
12
+ } from "./chunk.DONE65RK.js";
13
13
  import {
14
14
  SynSpinner
15
- } from "./chunk.KLJ3XXVZ.js";
15
+ } from "./chunk.JHY2YL6F.js";
16
16
  import {
17
17
  HasSlotController,
18
18
  getTextContent
19
19
  } from "./chunk.66WXVGAW.js";
20
20
  import {
21
21
  SynIcon
22
- } from "./chunk.DJF4JI4X.js";
22
+ } from "./chunk.4WCOATRK.js";
23
23
  import {
24
24
  watch
25
25
  } from "./chunk.AVTU2BGE.js";
@@ -29,7 +29,7 @@ import {
29
29
  import {
30
30
  SynergyElement,
31
31
  component_styles_default
32
- } from "./chunk.56J5UZ5O.js";
32
+ } from "./chunk.VHIXUBHR.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.LAGRQ3IS.js.map
194
+ //# sourceMappingURL=chunk.CCNNE3US.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynButton
3
- } from "./chunk.KXRTRZVI.js";
3
+ } from "./chunk.BEZK7JYG.js";
4
4
 
5
5
  // src/components/button/button.ts
6
6
  var button_default = SynButton;
@@ -9,4 +9,4 @@ SynButton.define("syn-button");
9
9
  export {
10
10
  button_default
11
11
  };
12
- //# sourceMappingURL=chunk.SYIU62AX.js.map
12
+ //# sourceMappingURL=chunk.DA3O47CG.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynRadio
3
- } from "./chunk.JNZSO64N.js";
3
+ } from "./chunk.YABFYZVZ.js";
4
4
 
5
5
  // src/components/radio/radio.ts
6
6
  var radio_default = SynRadio;
@@ -9,4 +9,4 @@ SynRadio.define("syn-radio");
9
9
  export {
10
10
  radio_default
11
11
  };
12
- //# sourceMappingURL=chunk.EIBBCV5V.js.map
12
+ //# sourceMappingURL=chunk.DE5OLL34.js.map
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  SynergyElement,
6
6
  component_styles_default
7
- } from "./chunk.56J5UZ5O.js";
7
+ } from "./chunk.VHIXUBHR.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.FUU4FRAY.js.map
412
+ //# sourceMappingURL=chunk.DONE65RK.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynTextarea
3
- } from "./chunk.4ITEU4FK.js";
3
+ } from "./chunk.27X4TAN2.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.T22EPQFZ.js.map
12
+ //# sourceMappingURL=chunk.DZKYLTD4.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SynHeader
3
- } from "./chunk.KRKLIXKV.js";
3
+ } from "./chunk.MYU5WEU3.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.QVWYVLGP.js.map
12
+ //# sourceMappingURL=chunk.E3SGLMIN.js.map
@@ -145,7 +145,7 @@ var nav_item_styles_default = css`
145
145
  }
146
146
 
147
147
  /**
148
- * The chevron indicates the use as a <details /> element
148
+ * The chevron indicates the use as a <details /> element OR a link
149
149
  */
150
150
  .nav-item__chevron {
151
151
  font-size: var(--syn-font-size-x-large);
@@ -158,6 +158,13 @@ var nav_item_styles_default = css`
158
158
  rotate: -180deg;
159
159
  }
160
160
 
161
+ /**
162
+ * Items that have the chevron attribute set and are NOT accordions should always show a chevron pointing to the right
163
+ */
164
+ .nav-item:not(.nav-item-is-accordion) .nav-item__chevron {
165
+ rotate: -90deg;
166
+ }
167
+
161
168
  /**
162
169
  * Make the primary content container fill all available space
163
170
  */
@@ -178,6 +185,7 @@ var nav_item_styles_default = css`
178
185
  /**
179
186
  * Show prefix only
180
187
  */
188
+ /* stylelint-disable-next-line no-descending-specificity */
181
189
  .nav-item--show-prefix-only .nav-item__content-container,
182
190
  .nav-item--show-prefix-only .nav-item__suffix,
183
191
  .nav-item--show-prefix-only .nav-item__chevron {
@@ -201,12 +209,14 @@ var nav_item_styles_default = css`
201
209
  /**
202
210
  * Multi line content
203
211
  */
212
+ /* stylelint-disable-next-line no-descending-specificity */
204
213
  .nav-item--multi-line .nav-item__suffix,
205
214
  .nav-item--multi-line .nav-item__prefix,
206
215
  .nav-item--multi-line .nav-item__chevron {
207
216
  align-self: flex-start;
208
217
  }
209
218
 
219
+ /* stylelint-disable-next-line no-descending-specificity */
210
220
  .nav-item--multi-line .nav-item__suffix::slotted(syn-icon),
211
221
  :not(.nav-item--show-prefix-only).nav-item--multi-line .nav-item__prefix::slotted(syn-icon),
212
222
  .nav-item--multi-line .nav-item__chevron {
@@ -309,4 +319,4 @@ var nav_item_styles_default = css`
309
319
  export {
310
320
  nav_item_styles_default
311
321
  };
312
- //# sourceMappingURL=chunk.L4UUXVRZ.js.map
322
+ //# sourceMappingURL=chunk.E5BS6NQR.js.map