@synergy-design-system/mcp 0.1.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (450) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +539 -3
  3. package/dist/bin/create-checksum.d.ts +2 -0
  4. package/dist/bin/create-checksum.js +23 -0
  5. package/dist/bin/start.d.ts +2 -0
  6. package/dist/bin/start.js +8 -0
  7. package/dist/build/assets.d.ts +4 -0
  8. package/dist/build/assets.js +57 -0
  9. package/dist/build/build.d.ts +1 -0
  10. package/dist/build/build.js +33 -0
  11. package/dist/build/components.d.ts +4 -0
  12. package/dist/build/components.js +132 -0
  13. package/dist/build/frameworks.d.ts +4 -0
  14. package/dist/build/frameworks.js +61 -0
  15. package/dist/build/static.d.ts +4 -0
  16. package/dist/build/static.js +57 -0
  17. package/dist/build/styles.d.ts +4 -0
  18. package/dist/build/styles.js +58 -0
  19. package/dist/build/tokens.d.ts +4 -0
  20. package/dist/build/tokens.js +59 -0
  21. package/dist/server.d.ts +6 -0
  22. package/dist/server.js +20 -0
  23. package/dist/tools/asset-info.d.ts +8 -0
  24. package/dist/tools/asset-info.js +140 -0
  25. package/dist/tools/asset-list.d.ts +6 -0
  26. package/dist/tools/asset-list.js +40 -0
  27. package/dist/tools/component-info.d.ts +6 -0
  28. package/dist/tools/component-info.js +35 -0
  29. package/dist/tools/component-list.d.ts +7 -0
  30. package/dist/tools/component-list.js +42 -0
  31. package/dist/tools/davinci-migration.d.ts +3 -0
  32. package/dist/tools/davinci-migration.js +66 -0
  33. package/dist/tools/framework-info.d.ts +7 -0
  34. package/dist/tools/framework-info.js +59 -0
  35. package/dist/tools/index.d.ts +13 -0
  36. package/dist/tools/index.js +13 -0
  37. package/dist/tools/migration-info.d.ts +6 -0
  38. package/dist/tools/migration-info.js +27 -0
  39. package/dist/tools/styles-info.d.ts +7 -0
  40. package/dist/tools/styles-info.js +28 -0
  41. package/dist/tools/styles-list.d.ts +7 -0
  42. package/dist/tools/styles-list.js +42 -0
  43. package/dist/tools/template-info.d.ts +6 -0
  44. package/dist/tools/template-info.js +34 -0
  45. package/dist/tools/template-list.d.ts +7 -0
  46. package/dist/tools/template-list.js +42 -0
  47. package/dist/tools/tokens.d.ts +7 -0
  48. package/dist/tools/tokens.js +24 -0
  49. package/dist/tools/version.d.ts +7 -0
  50. package/dist/tools/version.js +51 -0
  51. package/dist/utilities/assets.d.ts +2 -0
  52. package/dist/utilities/assets.js +3 -0
  53. package/dist/utilities/checksum.d.ts +36 -0
  54. package/dist/utilities/checksum.js +93 -0
  55. package/dist/utilities/components.d.ts +25 -0
  56. package/dist/utilities/components.js +86 -0
  57. package/dist/utilities/config.d.ts +76 -0
  58. package/dist/utilities/config.js +77 -0
  59. package/dist/utilities/file.d.ts +12 -0
  60. package/dist/utilities/file.js +31 -0
  61. package/dist/utilities/index.d.ts +12 -0
  62. package/dist/utilities/index.js +12 -0
  63. package/dist/utilities/metadata.d.ts +28 -0
  64. package/dist/utilities/metadata.js +57 -0
  65. package/dist/utilities/migration.d.ts +1 -0
  66. package/dist/utilities/migration.js +10 -0
  67. package/dist/utilities/stdio.d.ts +14 -0
  68. package/dist/utilities/stdio.js +60 -0
  69. package/dist/utilities/storybook/build-docs.d.ts +2 -0
  70. package/dist/utilities/storybook/build-docs.js +42 -0
  71. package/dist/utilities/storybook/configs.d.ts +13 -0
  72. package/dist/utilities/storybook/configs.js +85 -0
  73. package/dist/utilities/storybook/docs-scraper.d.ts +26 -0
  74. package/dist/utilities/storybook/docs-scraper.js +97 -0
  75. package/dist/utilities/storybook/index.d.ts +5 -0
  76. package/dist/utilities/storybook/index.js +4 -0
  77. package/dist/utilities/storybook/scraper.d.ts +14 -0
  78. package/dist/utilities/storybook/scraper.js +196 -0
  79. package/dist/utilities/storybook/storybook-manager.d.ts +29 -0
  80. package/dist/utilities/storybook/storybook-manager.js +139 -0
  81. package/dist/utilities/storybook/types.d.ts +22 -0
  82. package/dist/utilities/storybook/types.js +1 -0
  83. package/dist/utilities/styles.d.ts +6 -0
  84. package/dist/utilities/styles.js +24 -0
  85. package/dist/utilities/templates.d.ts +12 -0
  86. package/dist/utilities/templates.js +28 -0
  87. package/dist/utilities/tokens.d.ts +1 -0
  88. package/dist/utilities/tokens.js +21 -0
  89. package/dist/utilities/version.d.ts +10 -0
  90. package/dist/utilities/version.js +21 -0
  91. package/metadata/checksum.txt +1 -0
  92. package/metadata/davinci-migration/migration-guide.md +1859 -0
  93. package/metadata/packages/angular/LIMITATIONS.md +32 -0
  94. package/metadata/packages/angular/README.md +393 -0
  95. package/metadata/packages/assets/CHANGELOG.md +196 -0
  96. package/metadata/packages/assets/README.md +79 -0
  97. package/metadata/packages/components/components/syn-accordion/component.angular.ts +80 -0
  98. package/metadata/packages/components/components/syn-accordion/component.react.ts +30 -0
  99. package/metadata/packages/components/components/syn-accordion/component.styles.ts +15 -0
  100. package/metadata/packages/components/components/syn-accordion/component.ts +111 -0
  101. package/metadata/packages/components/components/syn-accordion/component.vue +64 -0
  102. package/metadata/packages/components/components/syn-alert/component.angular.ts +158 -0
  103. package/metadata/packages/components/components/syn-alert/component.custom.styles.ts +90 -0
  104. package/metadata/packages/components/components/syn-alert/component.react.ts +60 -0
  105. package/metadata/packages/components/components/syn-alert/component.styles.ts +110 -0
  106. package/metadata/packages/components/components/syn-alert/component.ts +324 -0
  107. package/metadata/packages/components/components/syn-alert/component.vue +130 -0
  108. package/metadata/packages/components/components/syn-badge/component.angular.ts +53 -0
  109. package/metadata/packages/components/components/syn-badge/component.custom.styles.ts +61 -0
  110. package/metadata/packages/components/components/syn-badge/component.react.ts +29 -0
  111. package/metadata/packages/components/components/syn-badge/component.styles.ts +59 -0
  112. package/metadata/packages/components/components/syn-badge/component.ts +65 -0
  113. package/metadata/packages/components/components/syn-badge/component.vue +53 -0
  114. package/metadata/packages/components/components/syn-breadcrumb/component.angular.ts +58 -0
  115. package/metadata/packages/components/components/syn-breadcrumb/component.custom.styles.ts +5 -0
  116. package/metadata/packages/components/components/syn-breadcrumb/component.react.ts +32 -0
  117. package/metadata/packages/components/components/syn-breadcrumb/component.styles.ts +18 -0
  118. package/metadata/packages/components/components/syn-breadcrumb/component.ts +110 -0
  119. package/metadata/packages/components/components/syn-breadcrumb/component.vue +58 -0
  120. package/metadata/packages/components/components/syn-breadcrumb-item/component.angular.ts +88 -0
  121. package/metadata/packages/components/components/syn-breadcrumb-item/component.custom.styles.ts +74 -0
  122. package/metadata/packages/components/components/syn-breadcrumb-item/component.react.ts +37 -0
  123. package/metadata/packages/components/components/syn-breadcrumb-item/component.styles.ts +95 -0
  124. package/metadata/packages/components/components/syn-breadcrumb-item/component.ts +139 -0
  125. package/metadata/packages/components/components/syn-breadcrumb-item/component.vue +76 -0
  126. package/metadata/packages/components/components/syn-button/component.angular.ts +318 -0
  127. package/metadata/packages/components/components/syn-button/component.custom.styles.ts +206 -0
  128. package/metadata/packages/components/components/syn-button/component.react.ts +56 -0
  129. package/metadata/packages/components/components/syn-button/component.styles.ts +368 -0
  130. package/metadata/packages/components/components/syn-button/component.ts +322 -0
  131. package/metadata/packages/components/components/syn-button/component.vue +204 -0
  132. package/metadata/packages/components/components/syn-button-group/component.angular.ts +55 -0
  133. package/metadata/packages/components/components/syn-button-group/component.react.ts +29 -0
  134. package/metadata/packages/components/components/syn-button-group/component.styles.ts +21 -0
  135. package/metadata/packages/components/components/syn-button-group/component.ts +103 -0
  136. package/metadata/packages/components/components/syn-button-group/component.vue +55 -0
  137. package/metadata/packages/components/components/syn-card/component.angular.ts +69 -0
  138. package/metadata/packages/components/components/syn-card/component.custom.styles.ts +55 -0
  139. package/metadata/packages/components/components/syn-card/component.react.ts +41 -0
  140. package/metadata/packages/components/components/syn-card/component.styles.ts +77 -0
  141. package/metadata/packages/components/components/syn-card/component.ts +68 -0
  142. package/metadata/packages/components/components/syn-card/component.vue +67 -0
  143. package/metadata/packages/components/components/syn-checkbox/component.angular.ts +260 -0
  144. package/metadata/packages/components/components/syn-checkbox/component.custom.styles.ts +53 -0
  145. package/metadata/packages/components/components/syn-checkbox/component.react.ts +64 -0
  146. package/metadata/packages/components/components/syn-checkbox/component.styles.ts +130 -0
  147. package/metadata/packages/components/components/syn-checkbox/component.ts +291 -0
  148. package/metadata/packages/components/components/syn-checkbox/component.vue +186 -0
  149. package/metadata/packages/components/components/syn-combobox/component.angular.ts +436 -0
  150. package/metadata/packages/components/components/syn-combobox/component.custom.styles.ts +35 -0
  151. package/metadata/packages/components/components/syn-combobox/component.react.ts +109 -0
  152. package/metadata/packages/components/components/syn-combobox/component.styles.ts +406 -0
  153. package/metadata/packages/components/components/syn-combobox/component.ts +1139 -0
  154. package/metadata/packages/components/components/syn-combobox/component.vue +304 -0
  155. package/metadata/packages/components/components/syn-details/component.angular.ts +184 -0
  156. package/metadata/packages/components/components/syn-details/component.custom.styles.ts +140 -0
  157. package/metadata/packages/components/components/syn-details/component.react.ts +63 -0
  158. package/metadata/packages/components/components/syn-details/component.styles.ts +90 -0
  159. package/metadata/packages/components/components/syn-details/component.ts +266 -0
  160. package/metadata/packages/components/components/syn-details/component.vue +134 -0
  161. package/metadata/packages/components/components/syn-dialog/component.angular.ts +201 -0
  162. package/metadata/packages/components/components/syn-dialog/component.custom.styles.ts +54 -0
  163. package/metadata/packages/components/components/syn-dialog/component.react.ts +91 -0
  164. package/metadata/packages/components/components/syn-dialog/component.styles.ts +129 -0
  165. package/metadata/packages/components/components/syn-dialog/component.ts +366 -0
  166. package/metadata/packages/components/components/syn-dialog/component.vue +169 -0
  167. package/metadata/packages/components/components/syn-divider/component.angular.ts +55 -0
  168. package/metadata/packages/components/components/syn-divider/component.custom.styles.ts +8 -0
  169. package/metadata/packages/components/components/syn-divider/component.react.ts +29 -0
  170. package/metadata/packages/components/components/syn-divider/component.styles.ts +31 -0
  171. package/metadata/packages/components/components/syn-divider/component.ts +42 -0
  172. package/metadata/packages/components/components/syn-divider/component.vue +51 -0
  173. package/metadata/packages/components/components/syn-drawer/component.angular.ts +234 -0
  174. package/metadata/packages/components/components/syn-drawer/component.custom.styles.ts +78 -0
  175. package/metadata/packages/components/components/syn-drawer/component.react.ts +98 -0
  176. package/metadata/packages/components/components/syn-drawer/component.styles.ts +165 -0
  177. package/metadata/packages/components/components/syn-drawer/component.ts +496 -0
  178. package/metadata/packages/components/components/syn-drawer/component.vue +188 -0
  179. package/metadata/packages/components/components/syn-dropdown/component.angular.ts +223 -0
  180. package/metadata/packages/components/components/syn-dropdown/component.custom.styles.ts +5 -0
  181. package/metadata/packages/components/components/syn-dropdown/component.react.ts +59 -0
  182. package/metadata/packages/components/components/syn-dropdown/component.styles.ts +60 -0
  183. package/metadata/packages/components/components/syn-dropdown/component.ts +484 -0
  184. package/metadata/packages/components/components/syn-dropdown/component.vue +159 -0
  185. package/metadata/packages/components/components/syn-file/component.angular.ts +359 -0
  186. package/metadata/packages/components/components/syn-file/component.react.ts +85 -0
  187. package/metadata/packages/components/components/syn-file/component.styles.ts +179 -0
  188. package/metadata/packages/components/components/syn-file/component.ts +631 -0
  189. package/metadata/packages/components/components/syn-file/component.vue +251 -0
  190. package/metadata/packages/components/components/syn-header/component.angular.ts +132 -0
  191. package/metadata/packages/components/components/syn-header/component.react.ts +65 -0
  192. package/metadata/packages/components/components/syn-header/component.styles.ts +128 -0
  193. package/metadata/packages/components/components/syn-header/component.ts +260 -0
  194. package/metadata/packages/components/components/syn-header/component.vue +117 -0
  195. package/metadata/packages/components/components/syn-icon/component.angular.ts +115 -0
  196. package/metadata/packages/components/components/syn-icon/component.custom.styles.ts +5 -0
  197. package/metadata/packages/components/components/syn-icon/component.react.ts +41 -0
  198. package/metadata/packages/components/components/syn-icon/component.styles.ts +25 -0
  199. package/metadata/packages/components/components/syn-icon/component.ts +234 -0
  200. package/metadata/packages/components/components/syn-icon/component.vue +100 -0
  201. package/metadata/packages/components/components/syn-icon-button/component.angular.ts +185 -0
  202. package/metadata/packages/components/components/syn-icon-button/component.custom.styles.ts +68 -0
  203. package/metadata/packages/components/components/syn-icon-button/component.react.ts +42 -0
  204. package/metadata/packages/components/components/syn-icon-button/component.styles.ts +59 -0
  205. package/metadata/packages/components/components/syn-icon-button/component.ts +154 -0
  206. package/metadata/packages/components/components/syn-icon-button/component.vue +132 -0
  207. package/metadata/packages/components/components/syn-input/component.angular.ts +606 -0
  208. package/metadata/packages/components/components/syn-input/component.custom.styles.ts +278 -0
  209. package/metadata/packages/components/components/syn-input/component.react.ts +91 -0
  210. package/metadata/packages/components/components/syn-input/component.styles.ts +287 -0
  211. package/metadata/packages/components/components/syn-input/component.ts +942 -0
  212. package/metadata/packages/components/components/syn-input/component.vue +370 -0
  213. package/metadata/packages/components/components/syn-menu/component.angular.ts +52 -0
  214. package/metadata/packages/components/components/syn-menu/component.custom.styles.ts +29 -0
  215. package/metadata/packages/components/components/syn-menu/component.react.ts +36 -0
  216. package/metadata/packages/components/components/syn-menu/component.styles.ts +27 -0
  217. package/metadata/packages/components/components/syn-menu/component.ts +199 -0
  218. package/metadata/packages/components/components/syn-menu/component.vue +48 -0
  219. package/metadata/packages/components/components/syn-menu-item/component.angular.ts +121 -0
  220. package/metadata/packages/components/components/syn-menu-item/component.custom.styles.ts +128 -0
  221. package/metadata/packages/components/components/syn-menu-item/component.react.ts +45 -0
  222. package/metadata/packages/components/components/syn-menu-item/component.styles.ts +164 -0
  223. package/metadata/packages/components/components/syn-menu-item/component.ts +209 -0
  224. package/metadata/packages/components/components/syn-menu-item/component.vue +91 -0
  225. package/metadata/packages/components/components/syn-menu-label/component.angular.ts +48 -0
  226. package/metadata/packages/components/components/syn-menu-label/component.custom.styles.ts +24 -0
  227. package/metadata/packages/components/components/syn-menu-label/component.react.ts +35 -0
  228. package/metadata/packages/components/components/syn-menu-label/component.styles.ts +28 -0
  229. package/metadata/packages/components/components/syn-menu-label/component.ts +54 -0
  230. package/metadata/packages/components/components/syn-menu-label/component.vue +41 -0
  231. package/metadata/packages/components/components/syn-nav-item/component.angular.ts +242 -0
  232. package/metadata/packages/components/components/syn-nav-item/component.react.ts +82 -0
  233. package/metadata/packages/components/components/syn-nav-item/component.styles.ts +337 -0
  234. package/metadata/packages/components/components/syn-nav-item/component.ts +492 -0
  235. package/metadata/packages/components/components/syn-nav-item/component.vue +182 -0
  236. package/metadata/packages/components/components/syn-optgroup/component.angular.ts +79 -0
  237. package/metadata/packages/components/components/syn-optgroup/component.react.ts +41 -0
  238. package/metadata/packages/components/components/syn-optgroup/component.styles.ts +59 -0
  239. package/metadata/packages/components/components/syn-optgroup/component.ts +176 -0
  240. package/metadata/packages/components/components/syn-optgroup/component.vue +71 -0
  241. package/metadata/packages/components/components/syn-option/component.angular.ts +79 -0
  242. package/metadata/packages/components/components/syn-option/component.custom.styles.ts +81 -0
  243. package/metadata/packages/components/components/syn-option/component.react.ts +37 -0
  244. package/metadata/packages/components/components/syn-option/component.styles.ts +96 -0
  245. package/metadata/packages/components/components/syn-option/component.ts +174 -0
  246. package/metadata/packages/components/components/syn-option/component.vue +71 -0
  247. package/metadata/packages/components/components/syn-popup/component.angular.ts +385 -0
  248. package/metadata/packages/components/components/syn-popup/component.react.ts +55 -0
  249. package/metadata/packages/components/components/syn-popup/component.styles.ts +70 -0
  250. package/metadata/packages/components/components/syn-popup/component.ts +583 -0
  251. package/metadata/packages/components/components/syn-popup/component.vue +240 -0
  252. package/metadata/packages/components/components/syn-prio-nav/component.angular.ts +67 -0
  253. package/metadata/packages/components/components/syn-prio-nav/component.react.ts +54 -0
  254. package/metadata/packages/components/components/syn-prio-nav/component.styles.ts +48 -0
  255. package/metadata/packages/components/components/syn-prio-nav/component.ts +287 -0
  256. package/metadata/packages/components/components/syn-prio-nav/component.vue +60 -0
  257. package/metadata/packages/components/components/syn-progress-bar/component.angular.ts +85 -0
  258. package/metadata/packages/components/components/syn-progress-bar/component.custom.styles.ts +22 -0
  259. package/metadata/packages/components/components/syn-progress-bar/component.react.ts +37 -0
  260. package/metadata/packages/components/components/syn-progress-bar/component.styles.ts +94 -0
  261. package/metadata/packages/components/components/syn-progress-bar/component.ts +74 -0
  262. package/metadata/packages/components/components/syn-progress-bar/component.vue +71 -0
  263. package/metadata/packages/components/components/syn-progress-ring/component.angular.ts +72 -0
  264. package/metadata/packages/components/components/syn-progress-ring/component.custom.styles.ts +17 -0
  265. package/metadata/packages/components/components/syn-progress-ring/component.react.ts +37 -0
  266. package/metadata/packages/components/components/syn-progress-ring/component.styles.ts +77 -0
  267. package/metadata/packages/components/components/syn-progress-ring/component.ts +90 -0
  268. package/metadata/packages/components/components/syn-progress-ring/component.vue +66 -0
  269. package/metadata/packages/components/components/syn-radio/component.angular.ts +109 -0
  270. package/metadata/packages/components/components/syn-radio/component.custom.styles.ts +73 -0
  271. package/metadata/packages/components/components/syn-radio/component.react.ts +48 -0
  272. package/metadata/packages/components/components/syn-radio/component.styles.ts +124 -0
  273. package/metadata/packages/components/components/syn-radio/component.ts +129 -0
  274. package/metadata/packages/components/components/syn-radio/component.vue +99 -0
  275. package/metadata/packages/components/components/syn-radio-button/component.angular.ts +123 -0
  276. package/metadata/packages/components/components/syn-radio-button/component.react.ts +49 -0
  277. package/metadata/packages/components/components/syn-radio-button/component.styles.ts +37 -0
  278. package/metadata/packages/components/components/syn-radio-button/component.ts +149 -0
  279. package/metadata/packages/components/components/syn-radio-button/component.vue +105 -0
  280. package/metadata/packages/components/components/syn-radio-group/component.angular.ts +204 -0
  281. package/metadata/packages/components/components/syn-radio-group/component.custom.styles.ts +22 -0
  282. package/metadata/packages/components/components/syn-radio-group/component.react.ts +56 -0
  283. package/metadata/packages/components/components/syn-radio-group/component.styles.ts +44 -0
  284. package/metadata/packages/components/components/syn-radio-group/component.ts +418 -0
  285. package/metadata/packages/components/components/syn-radio-group/component.vue +158 -0
  286. package/metadata/packages/components/components/syn-range/component.angular.ts +334 -0
  287. package/metadata/packages/components/components/syn-range/component.react.ts +92 -0
  288. package/metadata/packages/components/components/syn-range/component.styles.ts +284 -0
  289. package/metadata/packages/components/components/syn-range/component.ts +878 -0
  290. package/metadata/packages/components/components/syn-range/component.vue +240 -0
  291. package/metadata/packages/components/components/syn-range-tick/component.angular.ts +59 -0
  292. package/metadata/packages/components/components/syn-range-tick/component.react.ts +33 -0
  293. package/metadata/packages/components/components/syn-range-tick/component.styles.ts +34 -0
  294. package/metadata/packages/components/components/syn-range-tick/component.ts +50 -0
  295. package/metadata/packages/components/components/syn-range-tick/component.vue +57 -0
  296. package/metadata/packages/components/components/syn-resize-observer/component.styles.ts +16 -0
  297. package/metadata/packages/components/components/syn-resize-observer/component.ts +98 -0
  298. package/metadata/packages/components/components/syn-select/component.angular.ts +441 -0
  299. package/metadata/packages/components/components/syn-select/component.custom.styles.ts +176 -0
  300. package/metadata/packages/components/components/syn-select/component.react.ts +101 -0
  301. package/metadata/packages/components/components/syn-select/component.styles.ts +316 -0
  302. package/metadata/packages/components/components/syn-select/component.ts +1054 -0
  303. package/metadata/packages/components/components/syn-select/component.vue +303 -0
  304. package/metadata/packages/components/components/syn-side-nav/component.angular.ts +231 -0
  305. package/metadata/packages/components/components/syn-side-nav/component.react.ts +95 -0
  306. package/metadata/packages/components/components/syn-side-nav/component.styles.ts +160 -0
  307. package/metadata/packages/components/components/syn-side-nav/component.ts +492 -0
  308. package/metadata/packages/components/components/syn-side-nav/component.vue +201 -0
  309. package/metadata/packages/components/components/syn-spinner/component.angular.ts +44 -0
  310. package/metadata/packages/components/components/syn-spinner/component.custom.styles.ts +31 -0
  311. package/metadata/packages/components/components/syn-spinner/component.react.ts +31 -0
  312. package/metadata/packages/components/components/syn-spinner/component.styles.ts +55 -0
  313. package/metadata/packages/components/components/syn-spinner/component.ts +42 -0
  314. package/metadata/packages/components/components/syn-spinner/component.vue +35 -0
  315. package/metadata/packages/components/components/syn-switch/component.angular.ts +244 -0
  316. package/metadata/packages/components/components/syn-switch/component.custom.styles.ts +112 -0
  317. package/metadata/packages/components/components/syn-switch/component.react.ts +63 -0
  318. package/metadata/packages/components/components/syn-switch/component.styles.ts +177 -0
  319. package/metadata/packages/components/components/syn-switch/component.ts +274 -0
  320. package/metadata/packages/components/components/syn-switch/component.vue +178 -0
  321. package/metadata/packages/components/components/syn-tab/component.angular.ts +109 -0
  322. package/metadata/packages/components/components/syn-tab/component.custom.styles.ts +92 -0
  323. package/metadata/packages/components/components/syn-tab/component.react.ts +42 -0
  324. package/metadata/packages/components/components/syn-tab/component.styles.ts +77 -0
  325. package/metadata/packages/components/components/syn-tab/component.ts +132 -0
  326. package/metadata/packages/components/components/syn-tab/component.vue +91 -0
  327. package/metadata/packages/components/components/syn-tab-group/component.angular.ts +166 -0
  328. package/metadata/packages/components/components/syn-tab-group/component.custom.styles.ts +248 -0
  329. package/metadata/packages/components/components/syn-tab-group/component.react.ts +58 -0
  330. package/metadata/packages/components/components/syn-tab-group/component.styles.ts +200 -0
  331. package/metadata/packages/components/components/syn-tab-group/component.ts +557 -0
  332. package/metadata/packages/components/components/syn-tab-group/component.vue +126 -0
  333. package/metadata/packages/components/components/syn-tab-panel/component.angular.ts +68 -0
  334. package/metadata/packages/components/components/syn-tab-panel/component.custom.styles.ts +8 -0
  335. package/metadata/packages/components/components/syn-tab-panel/component.react.ts +31 -0
  336. package/metadata/packages/components/components/syn-tab-panel/component.styles.ts +27 -0
  337. package/metadata/packages/components/components/syn-tab-panel/component.ts +67 -0
  338. package/metadata/packages/components/components/syn-tab-panel/component.vue +60 -0
  339. package/metadata/packages/components/components/syn-tag/component.angular.ts +83 -0
  340. package/metadata/packages/components/components/syn-tag/component.custom.styles.ts +120 -0
  341. package/metadata/packages/components/components/syn-tag/component.react.ts +43 -0
  342. package/metadata/packages/components/components/syn-tag/component.styles.ts +65 -0
  343. package/metadata/packages/components/components/syn-tag/component.ts +90 -0
  344. package/metadata/packages/components/components/syn-tag/component.vue +81 -0
  345. package/metadata/packages/components/components/syn-textarea/component.angular.ts +394 -0
  346. package/metadata/packages/components/components/syn-textarea/component.custom.styles.ts +18 -0
  347. package/metadata/packages/components/components/syn-textarea/component.react.ts +60 -0
  348. package/metadata/packages/components/components/syn-textarea/component.styles.ts +187 -0
  349. package/metadata/packages/components/components/syn-textarea/component.ts +401 -0
  350. package/metadata/packages/components/components/syn-textarea/component.vue +244 -0
  351. package/metadata/packages/components/components/syn-tooltip/component.angular.ts +212 -0
  352. package/metadata/packages/components/components/syn-tooltip/component.custom.styles.ts +13 -0
  353. package/metadata/packages/components/components/syn-tooltip/component.react.ts +63 -0
  354. package/metadata/packages/components/components/syn-tooltip/component.styles.ts +64 -0
  355. package/metadata/packages/components/components/syn-tooltip/component.ts +319 -0
  356. package/metadata/packages/components/components/syn-tooltip/component.vue +158 -0
  357. package/metadata/packages/components/components/syn-validate/component.angular.ts +128 -0
  358. package/metadata/packages/components/components/syn-validate/component.react.ts +36 -0
  359. package/metadata/packages/components/components/syn-validate/component.styles.ts +9 -0
  360. package/metadata/packages/components/components/syn-validate/component.ts +437 -0
  361. package/metadata/packages/components/components/syn-validate/component.vue +98 -0
  362. package/metadata/packages/components/migration/BREAKING_CHANGES.md +489 -0
  363. package/metadata/packages/components/migration/migration-synergy-v3.md +50 -0
  364. package/metadata/packages/components/static/CHANGELOG.md +1107 -0
  365. package/metadata/packages/components/static/LIMITATIONS.md +269 -0
  366. package/metadata/packages/components/static/README.md +248 -0
  367. package/metadata/packages/react/LIMITATIONS.md +31 -0
  368. package/metadata/packages/react/README.md +262 -0
  369. package/metadata/packages/styles/CHANGELOG.md +76 -0
  370. package/metadata/packages/styles/README.md +132 -0
  371. package/metadata/packages/styles/index.css +309 -0
  372. package/metadata/packages/styles/link-list.css +47 -0
  373. package/metadata/packages/styles/link.css +79 -0
  374. package/metadata/packages/styles/tables.css +143 -0
  375. package/metadata/packages/styles/typography.css +52 -0
  376. package/metadata/packages/tokens/CHANGELOG.md +431 -0
  377. package/metadata/packages/tokens/README.md +408 -0
  378. package/metadata/packages/tokens/dark.css +268 -0
  379. package/metadata/packages/tokens/index.js +1294 -0
  380. package/metadata/packages/tokens/light.css +268 -0
  381. package/metadata/packages/vue/LIMITATIONS.md +53 -0
  382. package/metadata/packages/vue/README.md +252 -0
  383. package/metadata/static/angular/index.md +6 -0
  384. package/metadata/static/assets/index.md +10 -0
  385. package/metadata/static/component-info/index.md +24 -0
  386. package/metadata/static/component-list/index.md +34 -0
  387. package/metadata/static/components/index.md +10 -0
  388. package/metadata/static/components/syn-accordion/docs.md +428 -0
  389. package/metadata/static/components/syn-alert/docs.md +231 -0
  390. package/metadata/static/components/syn-badge/docs.md +128 -0
  391. package/metadata/static/components/syn-breadcrumb/docs.md +265 -0
  392. package/metadata/static/components/syn-breadcrumb-item/docs.md +49 -0
  393. package/metadata/static/components/syn-button/docs.md +402 -0
  394. package/metadata/static/components/syn-card/docs.md +273 -0
  395. package/metadata/static/components/syn-checkbox/docs.md +77 -0
  396. package/metadata/static/components/syn-combobox/docs.md +2402 -0
  397. package/metadata/static/components/syn-details/docs.md +220 -0
  398. package/metadata/static/components/syn-dialog/docs.md +222 -0
  399. package/metadata/static/components/syn-divider/docs.md +77 -0
  400. package/metadata/static/components/syn-drawer/docs.md +271 -0
  401. package/metadata/static/components/syn-dropdown/docs.md +316 -0
  402. package/metadata/static/components/syn-file/docs.md +215 -0
  403. package/metadata/static/components/syn-header/docs.md +134 -0
  404. package/metadata/static/components/syn-icon/docs.md +177 -0
  405. package/metadata/static/components/syn-icon-button/docs.md +142 -0
  406. package/metadata/static/components/syn-input/docs.md +460 -0
  407. package/metadata/static/components/syn-menu/docs.md +162 -0
  408. package/metadata/static/components/syn-menu-item/docs.md +196 -0
  409. package/metadata/static/components/syn-menu-label/docs.md +29 -0
  410. package/metadata/static/components/syn-nav-item/docs.md +161 -0
  411. package/metadata/static/components/syn-optgroup/docs.md +167 -0
  412. package/metadata/static/components/syn-option/docs.md +137 -0
  413. package/metadata/static/components/syn-prio-nav/docs.md +54 -0
  414. package/metadata/static/components/syn-progress-bar/docs.md +77 -0
  415. package/metadata/static/components/syn-progress-ring/docs.md +89 -0
  416. package/metadata/static/components/syn-radio/docs.md +123 -0
  417. package/metadata/static/components/syn-radio-group/docs.md +363 -0
  418. package/metadata/static/components/syn-range/docs.md +419 -0
  419. package/metadata/static/components/syn-range-tick/docs.md +110 -0
  420. package/metadata/static/components/syn-select/docs.md +730 -0
  421. package/metadata/static/components/syn-side-nav/docs.md +593 -0
  422. package/metadata/static/components/syn-spinner/docs.md +45 -0
  423. package/metadata/static/components/syn-switch/docs.md +74 -0
  424. package/metadata/static/components/syn-tab/docs.md +47 -0
  425. package/metadata/static/components/syn-tab-group/docs.md +1094 -0
  426. package/metadata/static/components/syn-tab-panel/docs.md +91 -0
  427. package/metadata/static/components/syn-tag/docs.md +50 -0
  428. package/metadata/static/components/syn-textarea/docs.md +215 -0
  429. package/metadata/static/components/syn-tooltip/docs.md +144 -0
  430. package/metadata/static/components/syn-validate/docs.md +225 -0
  431. package/metadata/static/migration/index.md +16 -0
  432. package/metadata/static/react/index.md +8 -0
  433. package/metadata/static/setup/icon-usage.md +276 -0
  434. package/metadata/static/setup/prerequisites.md +171 -0
  435. package/metadata/static/styles/index.md +11 -0
  436. package/metadata/static/styles/syn-body.md +5 -0
  437. package/metadata/static/styles/syn-heading.md +5 -0
  438. package/metadata/static/styles/syn-link-list.md +325 -0
  439. package/metadata/static/styles/syn-link.md +156 -0
  440. package/metadata/static/styles/syn-table-cell.md +125 -0
  441. package/metadata/static/styles/syn-table.md +201 -0
  442. package/metadata/static/styles/syn-weight.md +5 -0
  443. package/metadata/static/templates/appshell.md +2061 -0
  444. package/metadata/static/templates/breadcrumb.md +375 -0
  445. package/metadata/static/templates/footer.md +342 -0
  446. package/metadata/static/templates/forms.md +369 -0
  447. package/metadata/static/templates/index.md +9 -0
  448. package/metadata/static/templates/table.md +1426 -0
  449. package/metadata/static/vue/index.md +6 -0
  450. package/package.json +109 -4
@@ -0,0 +1,303 @@
1
+ <script setup lang="ts">
2
+ // ---------------------------------------------------------------------
3
+ // 🔒 AUTOGENERATED @synergy-design-system/vue wrappers for @synergy-design-system/components
4
+ // Please do not edit this file directly!
5
+ // It will get recreated when running pnpm build.
6
+ // ---------------------------------------------------------------------
7
+
8
+ /**
9
+ * @summary Selects allow you to choose items from a menu of predefined options.
10
+ * @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-select--docs
11
+ * @status stable
12
+ * @since 2.0
13
+ *
14
+ * @dependency syn-icon
15
+ * @dependency syn-popup
16
+ * @dependency syn-tag
17
+ *
18
+ * @slot - The listbox options. Must be `<syn-option>` elements. You can use `<syn-divider>` to group items visually.
19
+ * @slot label - The input's label. Alternatively, you can use the `label` attribute.
20
+ * @slot prefix - Used to prepend a presentational icon or similar element to the combobox.
21
+ * @slot suffix - Used to append a presentational icon or similar element to the combobox.
22
+ * @slot clear-icon - An icon to use in lieu of the default clear icon.
23
+ * @slot expand-icon - The icon to show when the control is expanded and collapsed. Rotates on open and close.
24
+ * @slot help-text - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.
25
+ *
26
+ * @event syn-change - Emitted when the control's value changes.
27
+ * @event syn-clear - Emitted when the control's value is cleared.
28
+ * @event syn-input - Emitted when the control receives input.
29
+ * @event syn-focus - Emitted when the control gains focus.
30
+ * @event syn-blur - Emitted when the control loses focus.
31
+ * @event syn-show - Emitted when the select's menu opens.
32
+ * @event syn-after-show - Emitted after the select's menu opens and all animations are complete.
33
+ * @event syn-hide - Emitted when the select's menu closes.
34
+ * @event syn-after-hide - Emitted after the select's menu closes and all animations are complete.
35
+ * @event syn-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.
36
+ *
37
+ * @csspart form-control - The form control that wraps the label, input, and help text.
38
+ * @csspart form-control-label - The label's wrapper.
39
+ * @csspart form-control-input - The select's wrapper.
40
+ * @csspart form-control-help-text - The help text's wrapper.
41
+ * @csspart combobox - The container the wraps the prefix, suffix, combobox, clear icon, and expand button.
42
+ * @csspart prefix - The container that wraps the prefix slot.
43
+ * @csspart suffix - The container that wraps the suffix slot.
44
+ * @csspart display-input - The element that displays the selected option's label, an `<input>` element.
45
+ * @csspart listbox - The listbox container where options are slotted.
46
+ * @csspart tags - The container that houses option tags when `multiselect` is used.
47
+ * @csspart tag - The individual tags that represent each multiselect option.
48
+ * @csspart tag__base - The tag's base part.
49
+ * @csspart tag__content - The tag's content part.
50
+ * @csspart tag__remove-button - The tag's remove button.
51
+ * @csspart tag__remove-button__base - The tag's remove button base part.
52
+ * @csspart clear-button - The clear button.
53
+ * @csspart expand-icon - The container that wraps the expand icon.
54
+ * @csspart popup - The popup's exported `popup` part. Use this to target the tooltip's popup container.
55
+ */
56
+ import { computed, ref } from 'vue';
57
+ import '@synergy-design-system/components/components/select/select.js';
58
+
59
+ import type { SynChangeEvent } from '@synergy-design-system/components';
60
+ import type { SynClearEvent } from '@synergy-design-system/components';
61
+ import type { SynInputEvent } from '@synergy-design-system/components';
62
+ import type { SynFocusEvent } from '@synergy-design-system/components';
63
+ import type { SynBlurEvent } from '@synergy-design-system/components';
64
+ import type { SynShowEvent } from '@synergy-design-system/components';
65
+ import type { SynAfterShowEvent } from '@synergy-design-system/components';
66
+ import type { SynHideEvent } from '@synergy-design-system/components';
67
+ import type { SynAfterHideEvent } from '@synergy-design-system/components';
68
+ import type { SynInvalidEvent } from '@synergy-design-system/components';
69
+ import type { SynSelect } from '@synergy-design-system/components';
70
+
71
+ // DOM Reference to the element
72
+ const nativeElement = ref<SynSelect>();
73
+
74
+ defineExpose({
75
+ nativeElement,
76
+ });
77
+
78
+ // Map attributes
79
+ const props = defineProps<{
80
+ /**
81
+ * The delimiter to use when setting the value when `multiple` is enabled.
82
+ The default is a space, but you can set it to a comma or other character.
83
+ */
84
+ delimiter?: SynSelect['delimiter'];
85
+
86
+ /**
87
+ * The name of the select, submitted as a name/value pair with form data.
88
+ */
89
+ name?: SynSelect['name'];
90
+
91
+ /**
92
+ * The select's size.
93
+ */
94
+ size?: SynSelect['size'];
95
+
96
+ /**
97
+ * Placeholder text to show as a hint when the select is empty.
98
+ */
99
+ placeholder?: SynSelect['placeholder'];
100
+
101
+ /**
102
+ * Allows more than one option to be selected.
103
+ */
104
+ multiple?: SynSelect['multiple'];
105
+
106
+ /**
107
+ * The maximum number of selected options to show when `multiple` is true.
108
+ * After the maximum, "+n" will be shown to
109
+ indicate the number of additional items that are selected.
110
+ * Set to 0 to remove the limit.
111
+ */
112
+ maxOptionsVisible?: SynSelect['maxOptionsVisible'];
113
+
114
+ /**
115
+ * Disables the select control.
116
+ */
117
+ disabled?: SynSelect['disabled'];
118
+
119
+ /**
120
+ * Adds a clear button when the select is not empty.
121
+ */
122
+ clearable?: SynSelect['clearable'];
123
+
124
+ /**
125
+ * Indicates whether or not the select is open.
126
+ * You can toggle this attribute to show and hide the menu, or you can
127
+ use the `show()` and `hide()` methods and this attribute will reflect the select's open state.
128
+ */
129
+ open?: SynSelect['open'];
130
+
131
+ /**
132
+ * Enable this option to prevent the listbox from being clipped when the component is placed inside a container with
133
+ `overflow: auto|scroll`.
134
+ * Hoisting uses a fixed positioning strategy that works in many, but not all, scenarios.
135
+ */
136
+ hoist?: SynSelect['hoist'];
137
+
138
+ /**
139
+ * The select's label.
140
+ * If you need to display HTML, use the `label` slot instead.
141
+ */
142
+ label?: SynSelect['label'];
143
+
144
+ /**
145
+ * The preferred placement of the select's menu.
146
+ * Note that the actual placement may vary as needed to keep the listbox
147
+ inside of the viewport.
148
+ */
149
+ placement?: SynSelect['placement'];
150
+
151
+ /**
152
+ * The select's help text.
153
+ * If you need to display HTML, use the `help-text` slot instead.
154
+ */
155
+ helpText?: SynSelect['helpText'];
156
+
157
+ /**
158
+ * By default, form controls are associated with the nearest containing `<form>` element.
159
+ * This attribute allows you
160
+ to place the form control outside of a form and associate it with the form that has this `id`.
161
+ * The form must be in
162
+ the same document or shadow root for this to work.
163
+ */
164
+ form?: SynSelect['form'];
165
+
166
+ /**
167
+ * The select's required attribute.
168
+ */
169
+ required?: SynSelect['required'];
170
+
171
+ /**
172
+ * A function that customizes the tags to be rendered when multiple=true.
173
+ * The first argument is the option, the second
174
+ is the current tag's index.
175
+ * The function should return either a Lit TemplateResult or a string containing trusted HTML of the symbol to render at
176
+ the specified value.
177
+ */
178
+ getTag?: SynSelect['getTag'];
179
+
180
+ /**
181
+ * The current value of the select, submitted as a name/value pair with form data.
182
+ * When `multiple` is enabled, the
183
+ value attribute will be a space-delimited list of values based on the options selected, and the value property will
184
+ be an array.
185
+ * **For this reason, values must not contain spaces.**
186
+ */
187
+ value?: SynSelect['value'];
188
+
189
+ /**
190
+ * Support for two way data binding
191
+ */
192
+ modelValue?: SynSelect['value'];
193
+ }>();
194
+
195
+ // Make sure prop binding only forwards the props that are actually there.
196
+ // This is needed because :param="param" also adds an empty attribute
197
+ // when using web-components, which breaks optional arguments like size in SynInput
198
+ // @see https://github.com/vuejs/core/issues/5190#issuecomment-1003112498
199
+ const visibleProps = computed(() =>
200
+ Object.fromEntries(
201
+ Object.entries(props).filter(([, value]) => typeof value !== 'undefined'),
202
+ ),
203
+ );
204
+
205
+ // Map events
206
+ defineEmits<{
207
+ /**
208
+ * Emitted when the control's value changes.
209
+ */
210
+ 'syn-change': [e: SynChangeEvent];
211
+
212
+ /**
213
+ * Emitted when the control's value is cleared.
214
+ */
215
+ 'syn-clear': [e: SynClearEvent];
216
+
217
+ /**
218
+ * Emitted when the control receives input.
219
+ */
220
+ 'syn-input': [e: SynInputEvent];
221
+
222
+ /**
223
+ * Emitted when the control gains focus.
224
+ */
225
+ 'syn-focus': [e: SynFocusEvent];
226
+
227
+ /**
228
+ * Emitted when the control loses focus.
229
+ */
230
+ 'syn-blur': [e: SynBlurEvent];
231
+
232
+ /**
233
+ * Emitted when the select's menu opens.
234
+ */
235
+ 'syn-show': [e: SynShowEvent];
236
+
237
+ /**
238
+ * Emitted after the select's menu opens and all animations are complete.
239
+ */
240
+ 'syn-after-show': [e: SynAfterShowEvent];
241
+
242
+ /**
243
+ * Emitted when the select's menu closes.
244
+ */
245
+ 'syn-hide': [e: SynHideEvent];
246
+
247
+ /**
248
+ * Emitted after the select's menu closes and all animations are complete.
249
+ */
250
+ 'syn-after-hide': [e: SynAfterHideEvent];
251
+
252
+ /**
253
+ * Emitted when the form control has been checked for validity and its constraints aren't satisfied.
254
+ */
255
+ 'syn-invalid': [e: SynInvalidEvent];
256
+
257
+ /**
258
+ * Support for two way data binding
259
+ */
260
+ 'update:modelValue': [newValue: SynSelect['value']];
261
+ }>();
262
+ </script>
263
+
264
+ <script lang="ts">
265
+ export type { SynChangeEvent } from '@synergy-design-system/components';
266
+ export type { SynClearEvent } from '@synergy-design-system/components';
267
+ export type { SynInputEvent } from '@synergy-design-system/components';
268
+ export type { SynFocusEvent } from '@synergy-design-system/components';
269
+ export type { SynBlurEvent } from '@synergy-design-system/components';
270
+ export type { SynShowEvent } from '@synergy-design-system/components';
271
+ export type { SynAfterShowEvent } from '@synergy-design-system/components';
272
+ export type { SynHideEvent } from '@synergy-design-system/components';
273
+ export type { SynAfterHideEvent } from '@synergy-design-system/components';
274
+ export type { SynInvalidEvent } from '@synergy-design-system/components';
275
+ </script>
276
+
277
+ <template>
278
+ <syn-select
279
+ @syn-change="$emit('syn-change', $event)"
280
+ @syn-clear="$emit('syn-clear', $event)"
281
+ @syn-input="
282
+ $emit('update:modelValue', ($event.target as SynSelect).value);
283
+ $emit('syn-input', $event);
284
+ "
285
+ @syn-focus="$emit('syn-focus', $event)"
286
+ @syn-blur="$emit('syn-blur', $event)"
287
+ @syn-show="$emit('syn-show', $event)"
288
+ @syn-after-show="$emit('syn-after-show', $event)"
289
+ @syn-hide="$emit('syn-hide', $event)"
290
+ @syn-after-hide="$emit('syn-after-hide', $event)"
291
+ @syn-invalid="$emit('syn-invalid', $event)"
292
+ :value="
293
+ typeof props.modelValue !== 'undefined'
294
+ ? props.modelValue
295
+ : typeof props.value !== 'undefined'
296
+ ? props.value
297
+ : undefined
298
+ "
299
+ v-bind="visibleProps"
300
+ ref="nativeElement">
301
+ <slot></slot>
302
+ </syn-select>
303
+ </template>
@@ -0,0 +1,231 @@
1
+ // ---------------------------------------------------------------------
2
+ // 🔒 AUTOGENERATED @synergy-design-system/angular wrappers for @synergy-design-system/components
3
+ // Please do not edit this file directly!
4
+ // It will get recreated when running pnpm build.
5
+ // ---------------------------------------------------------------------
6
+ import {
7
+ Component,
8
+ ElementRef,
9
+ NgZone,
10
+ Input,
11
+ Output,
12
+ EventEmitter,
13
+ AfterContentInit,
14
+ } from '@angular/core';
15
+ import type { SynSideNav } from '@synergy-design-system/components';
16
+ import type { SynShowEvent } from '@synergy-design-system/components';
17
+ import type { SynAfterShowEvent } from '@synergy-design-system/components';
18
+ import type { SynHideEvent } from '@synergy-design-system/components';
19
+ import type { SynAfterHideEvent } from '@synergy-design-system/components';
20
+ import '@synergy-design-system/components/components/side-nav/side-nav.js';
21
+
22
+ /**
23
+ * @summary The <syn-side-nav /> element contains secondary navigation and fits below the header.
24
+ * It can be used to group multiple navigation items (<syn-nav-item />s) together.
25
+ *
26
+ * @example
27
+ * <syn-side-nav open>
28
+ * <syn-nav-item >Item 1</syn-nav-item>
29
+ * <syn-nav-item divider>Item 2</syn-nav-item>
30
+ * </syn-side-nav>
31
+ *
32
+ * @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-side-nav--docs
33
+ * @status stable
34
+ * @since 1.14.0
35
+ *
36
+ * @dependency syn-divider
37
+ * @dependency syn-drawer
38
+ * @dependency syn-icon
39
+ * @dependency syn-nav-item
40
+ *
41
+ * @slot - The main content of the side-nav. Used for <syn-nav-item /> elements.
42
+ * @slot footer - The footer content of the side-nav. Used for <syn-nav-item /> elements.
43
+ * Please avoid having to many nav-items as it can massively influence the user experience.
44
+ * @slot toggle-label - The label of the toggle nav-item for variant="sticky".
45
+ * @slot toggle-icon - An icon to use in lieu of the default icon for the toggle nav-item
46
+ * for variant="sticky".
47
+ *
48
+ * @event syn-show - Emitted when the side-nav opens.
49
+ * @event syn-after-show - Emitted after the side-nav opens and all animations are complete.
50
+ * @event syn-hide - Emitted when the side-nav closes.
51
+ * @event syn-after-hide - Emitted after the side-nav closes and all animations are complete.
52
+ *
53
+ * @csspart base - The components base wrapper
54
+ * @csspart drawer - The drawer that is used under the hood for creating the side-nav
55
+ * @csspart content-container - The components main content container
56
+ * @csspart content - The components main content
57
+ * @csspart footer-container - The components footer content container
58
+ (where the footer slot content is rendered)
59
+ * @csspart footer-divider - The components footer divider
60
+ * @csspart footer - The components footer content
61
+ * @csspart overlay - The overlay that covers the screen behind the side-nav.
62
+ * @csspart panel - The side-nav's panel (where the whole content is rendered).
63
+ * @csspart body - The side-nav's body (where the default slot content is rendered)
64
+ * @csspart drawer__base - The drawer's base wrapper
65
+ * @csspart toggle-nav-item - The nav-item to toggle open state for variant="sticky"
66
+ * @csspart toggle-icon - The icon of the toggle nav-item for variant="sticky"
67
+ * @csspart toggle-label - The label of the toggle nav-item for variant="sticky".
68
+
69
+ * @cssproperty --side-nav-open-width - The width of the side-nav if in open state
70
+ *
71
+ * @animation sideNav.showNonRail - The animation to use when showing the side-nav
72
+ * in variant="default".
73
+ * @animation sideNav.showRail - The animation to use when showing the side-nav in variant="rail"
74
+ * and variant="sticky".
75
+ * @animation sideNav.hideNonRail - The animation to use when hiding the side-nav
76
+ * in variant="default".
77
+ * @animation sideNav.hideRail - The animation to use when hiding the side-nav in variant="rail"
78
+ * and variant="sticky".
79
+ * @animation sideNav.overlay.show - The animation to use when showing the side-nav's overlay.
80
+ * @animation sideNav.overlay.hide - The animation to use when hiding the side-nav's overlay.
81
+ */
82
+ @Component({
83
+ selector: 'syn-side-nav',
84
+ standalone: true,
85
+ template: '<ng-content></ng-content>',
86
+ })
87
+ export class SynSideNavComponent {
88
+ public nativeElement: SynSideNav;
89
+ private _ngZone: NgZone;
90
+
91
+ constructor(e: ElementRef, ngZone: NgZone) {
92
+ this.nativeElement = e.nativeElement;
93
+ this._ngZone = ngZone;
94
+ this.nativeElement.addEventListener('syn-show', (e: SynShowEvent) => {
95
+ this.synShowEvent.emit(e);
96
+ });
97
+ this.nativeElement.addEventListener(
98
+ 'syn-after-show',
99
+ (e: SynAfterShowEvent) => {
100
+ this.synAfterShowEvent.emit(e);
101
+ },
102
+ );
103
+ this.nativeElement.addEventListener('syn-hide', (e: SynHideEvent) => {
104
+ this.synHideEvent.emit(e);
105
+ });
106
+ this.nativeElement.addEventListener(
107
+ 'syn-after-hide',
108
+ (e: SynAfterHideEvent) => {
109
+ this.synAfterHideEvent.emit(e);
110
+ },
111
+ );
112
+ }
113
+
114
+ /**
115
+ * Indicates whether or not the side-nav is open.
116
+ You can toggle this attribute to show and hide the side-nav, or you can use the `show()` and
117
+ `hide()` methods and this attribute will reflect the side-nav's open state.
118
+
119
+ Depending on the "variant" attribute, the behavior will differ.
120
+
121
+ __Default__:
122
+ With `open` will show the side-nav with an overlay.
123
+ Without `open`, the side-nav will be hidden.
124
+
125
+ __Rail__:
126
+ With `open` will show the whole side-nav with an overlay for touch devices
127
+ or without an overlay for non-touch devices.
128
+ Without `open`, the side-nav will only show the prefix of nav-item's.
129
+
130
+ __Sticky__:
131
+ With `open` will show the whole side-nav with an overlay for touch devices
132
+ or without an overlay for non-touch devices.
133
+ Without `open`, the side-nav will only show the prefix of nav-item's.
134
+ */
135
+ @Input()
136
+ set open(v: '' | SynSideNav['open']) {
137
+ this._ngZone.runOutsideAngular(
138
+ () => (this.nativeElement.open = v === '' || v),
139
+ );
140
+ }
141
+ get open(): SynSideNav['open'] {
142
+ return this.nativeElement.open;
143
+ }
144
+
145
+ /**
146
+ * Use the rail attribute to only show the prefix of navigation items in closed state.
147
+ This will open on hover on the rail navigation.
148
+ On touch devices the navigation opens on click and shows an overlay.
149
+
150
+ Note: The Rail is only an option if all Navigation Items on the first level have an Icon.
151
+ If this is not the case you should use a burger navigation.
152
+
153
+ @deprecated Use the `variant` attribute with `rail` instead.
154
+ Will be removed in synergy version 3.0
155
+ */
156
+ @Input()
157
+ set rail(v: '' | SynSideNav['rail']) {
158
+ this._ngZone.runOutsideAngular(
159
+ () => (this.nativeElement.rail = v === '' || v),
160
+ );
161
+ }
162
+ get rail(): SynSideNav['rail'] {
163
+ return this.nativeElement.rail;
164
+ }
165
+
166
+ /**
167
+ * The variant that should be used to show the side navigation.
168
+
169
+ The following variants are supported:
170
+ - **default** (default): Always shows the whole content and additionally an overlay.
171
+ This makes especially sense for applications, where you navigate to a place and stay
172
+ there for a longer time.
173
+ - **rail**: Only show the prefix of navigation items in closed state.
174
+ This will open on hover on the rail navigation.
175
+ On touch devices the navigation opens on click and shows an overlay.
176
+ Note: The rail variant is only an option if all Navigation Items on the first level
177
+ have an Icon.
178
+ If this is not the case you should use a burger navigation.
179
+ - **sticky**: The side-nav has a pin button to show the side-nav in small (icon only)
180
+ and full width.
181
+ * This variant is only possible for non-nested navigation items.
182
+ Note: The sticky variant is only an option if all Navigation Items on the first level
183
+ have an Icon and if there are only "first level" items.
184
+ */
185
+ @Input()
186
+ set variant(v: SynSideNav['variant']) {
187
+ this._ngZone.runOutsideAngular(() => (this.nativeElement.variant = v));
188
+ }
189
+ get variant(): SynSideNav['variant'] {
190
+ return this.nativeElement.variant;
191
+ }
192
+
193
+ /**
194
+ * By default, the side-nav traps the focus if in variant="default" and open.
195
+ To disable the focus trapping, set this attribute.
196
+ */
197
+ @Input()
198
+ set noFocusTrapping(v: '' | SynSideNav['noFocusTrapping']) {
199
+ this._ngZone.runOutsideAngular(
200
+ () => (this.nativeElement.noFocusTrapping = v === '' || v),
201
+ );
202
+ }
203
+ get noFocusTrapping(): SynSideNav['noFocusTrapping'] {
204
+ return this.nativeElement.noFocusTrapping;
205
+ }
206
+
207
+ /**
208
+ * Emitted when the side-nav opens.
209
+ */
210
+ @Output() synShowEvent = new EventEmitter<SynShowEvent>();
211
+
212
+ /**
213
+ * Emitted after the side-nav opens and all animations are complete.
214
+ */
215
+ @Output() synAfterShowEvent = new EventEmitter<SynAfterShowEvent>();
216
+
217
+ /**
218
+ * Emitted when the side-nav closes.
219
+ */
220
+ @Output() synHideEvent = new EventEmitter<SynHideEvent>();
221
+
222
+ /**
223
+ * Emitted after the side-nav closes and all animations are complete.
224
+ */
225
+ @Output() synAfterHideEvent = new EventEmitter<SynAfterHideEvent>();
226
+ }
227
+
228
+ export type { SynShowEvent } from '@synergy-design-system/components';
229
+ export type { SynAfterShowEvent } from '@synergy-design-system/components';
230
+ export type { SynHideEvent } from '@synergy-design-system/components';
231
+ export type { SynAfterHideEvent } from '@synergy-design-system/components';
@@ -0,0 +1,95 @@
1
+ // ---------------------------------------------------------------------
2
+ // 🔒 AUTOGENERATED @synergy-design-system/react wrappers for @synergy-design-system/components
3
+ // Please do not edit this file directly!
4
+ // It will get recreated when running pnpm build.
5
+ // ---------------------------------------------------------------------
6
+ import * as React from 'react';
7
+ import { createComponent } from '@lit/react';
8
+ import Component from '@synergy-design-system/components/components/side-nav/side-nav.component.js';
9
+
10
+ import { type EventName } from '@lit/react';
11
+ import type { SynShowEvent } from '@synergy-design-system/components';
12
+ import type { SynAfterShowEvent } from '@synergy-design-system/components';
13
+ import type { SynHideEvent } from '@synergy-design-system/components';
14
+ import type { SynAfterHideEvent } from '@synergy-design-system/components';
15
+
16
+ const tagName = 'syn-side-nav';
17
+ Component.define('syn-side-nav');
18
+
19
+ /**
20
+ * @summary The <syn-side-nav /> element contains secondary navigation and fits below the header.
21
+ * It can be used to group multiple navigation items (<syn-nav-item />s) together.
22
+ *
23
+ * @example
24
+ * <syn-side-nav open>
25
+ * <syn-nav-item >Item 1</syn-nav-item>
26
+ * <syn-nav-item divider>Item 2</syn-nav-item>
27
+ * </syn-side-nav>
28
+ *
29
+ * @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-side-nav--docs
30
+ * @status stable
31
+ * @since 1.14.0
32
+ *
33
+ * @dependency syn-divider
34
+ * @dependency syn-drawer
35
+ * @dependency syn-icon
36
+ * @dependency syn-nav-item
37
+ *
38
+ * @slot - The main content of the side-nav. Used for <syn-nav-item /> elements.
39
+ * @slot footer - The footer content of the side-nav. Used for <syn-nav-item /> elements.
40
+ * Please avoid having to many nav-items as it can massively influence the user experience.
41
+ * @slot toggle-label - The label of the toggle nav-item for variant="sticky".
42
+ * @slot toggle-icon - An icon to use in lieu of the default icon for the toggle nav-item
43
+ * for variant="sticky".
44
+ *
45
+ * @event syn-show - Emitted when the side-nav opens.
46
+ * @event syn-after-show - Emitted after the side-nav opens and all animations are complete.
47
+ * @event syn-hide - Emitted when the side-nav closes.
48
+ * @event syn-after-hide - Emitted after the side-nav closes and all animations are complete.
49
+ *
50
+ * @csspart base - The components base wrapper
51
+ * @csspart drawer - The drawer that is used under the hood for creating the side-nav
52
+ * @csspart content-container - The components main content container
53
+ * @csspart content - The components main content
54
+ * @csspart footer-container - The components footer content container
55
+ (where the footer slot content is rendered)
56
+ * @csspart footer-divider - The components footer divider
57
+ * @csspart footer - The components footer content
58
+ * @csspart overlay - The overlay that covers the screen behind the side-nav.
59
+ * @csspart panel - The side-nav's panel (where the whole content is rendered).
60
+ * @csspart body - The side-nav's body (where the default slot content is rendered)
61
+ * @csspart drawer__base - The drawer's base wrapper
62
+ * @csspart toggle-nav-item - The nav-item to toggle open state for variant="sticky"
63
+ * @csspart toggle-icon - The icon of the toggle nav-item for variant="sticky"
64
+ * @csspart toggle-label - The label of the toggle nav-item for variant="sticky".
65
+
66
+ * @cssproperty --side-nav-open-width - The width of the side-nav if in open state
67
+ *
68
+ * @animation sideNav.showNonRail - The animation to use when showing the side-nav
69
+ * in variant="default".
70
+ * @animation sideNav.showRail - The animation to use when showing the side-nav in variant="rail"
71
+ * and variant="sticky".
72
+ * @animation sideNav.hideNonRail - The animation to use when hiding the side-nav
73
+ * in variant="default".
74
+ * @animation sideNav.hideRail - The animation to use when hiding the side-nav in variant="rail"
75
+ * and variant="sticky".
76
+ * @animation sideNav.overlay.show - The animation to use when showing the side-nav's overlay.
77
+ * @animation sideNav.overlay.hide - The animation to use when hiding the side-nav's overlay.
78
+ */
79
+ export const SynSideNav = createComponent({
80
+ displayName: 'SynSideNav',
81
+ elementClass: Component,
82
+ events: {
83
+ onSynShow: 'syn-show' as EventName<SynShowEvent>,
84
+ onSynAfterShow: 'syn-after-show' as EventName<SynAfterShowEvent>,
85
+ onSynHide: 'syn-hide' as EventName<SynHideEvent>,
86
+ onSynAfterHide: 'syn-after-hide' as EventName<SynAfterHideEvent>,
87
+ },
88
+ react: React,
89
+ tagName,
90
+ });
91
+
92
+ export type { SynShowEvent } from '@synergy-design-system/components';
93
+ export type { SynAfterShowEvent } from '@synergy-design-system/components';
94
+ export type { SynHideEvent } from '@synergy-design-system/components';
95
+ export type { SynAfterHideEvent } from '@synergy-design-system/components';