@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,79 @@
1
+ # @synergy-design-system/assets
2
+
3
+ This package provides assets like:
4
+
5
+ - **logos:** a collection of various logos (such as the variants of the SICK brand logo)
6
+ - **icons:** the standard icons based on [Material Icons](https://fonts.google.com/icons)
7
+ - **system-icons:** a small subset of icons, that are internally used by the Synergy components
8
+
9
+ The source of the assets can be found at [Figma](https://www.figma.com/file/bZFqk9urD3NlghGUKrkKCR/Synergy-Digital-Design-System?type=design&node-id=104-233&mode=design&t=GPu4VVd9yffLLAaS-0)
10
+
11
+ ### Installation
12
+
13
+ Please make sure to install the assets package as a dependency:
14
+
15
+ ```bash
16
+ npm install --save @synergy-design-system/assets
17
+ ```
18
+
19
+ ### Usage
20
+
21
+ All assets are provided as svg's.
22
+
23
+ The recommended way of using the icons is using the [<syn-icon> Synergy component](https://synergy-design-system.github.io/?path=/docs/components-syn-icon--docs). Here you will also get more information about how setting up the assets package on bundlers like vite.
24
+
25
+ ```html
26
+ <syn-icon name="warning"></syn-icon>
27
+ ```
28
+
29
+ But the assets could also be used like following:
30
+
31
+ ```html
32
+ <img src="assets/icons/warning.svg" />
33
+ ```
34
+
35
+ ---
36
+
37
+ ## Development
38
+
39
+ This package is taking care about getting assets (like logos, system icons and default icons) from Figma.
40
+ The folder structure of the assets corresponds to the structure of the Figma page.
41
+
42
+ - **src/component-thumbnails** contains thumbnails from figma components used in Storybook
43
+ - **src/icons:** contains the standard icons based on [Material Icons](https://fonts.google.com/icons) for SICK 2018 brand revision. Use those icons when using Synergy V2
44
+ - **src/logos:** contains the variants of the SICK brand logo
45
+ - **src/system-icons:** contains a small subset of icons, that are internally used by the Synergy components. Default for Synergy V2.
46
+ - **src/system-icons-sick2025:** contains a small subset of icons, that are internally used by the Synergy components. Used from Synergy V3 onward.
47
+
48
+ > **Note:** All assets from figma, which should not appear in this package (e.g. documentation), will start with an underscore (e.g. \_my-doc-for-an-asset). This assets are getting filtered and ignored by this package.
49
+
50
+ ### Setup
51
+
52
+ To update the assets from Figma, first of all a personal access token in Figma needs to be created.
53
+ The documentation how this can be achieved can be found [here](https://www.figma.com/developers/api#access-tokens).
54
+ The only needed scope is "File content" set to readonly.
55
+
56
+ After the creation of the personal access token, it needs to be saved in a **_.env_** file with the variable **_"FIGMA_TOKEN"_**.
57
+ It should look like following:
58
+
59
+ ```bash
60
+ FIGMA_TOKEN = "my-personal-access-token"
61
+ ```
62
+
63
+ ### Update assets from Figma
64
+
65
+ If something in the Figma assets got changed, the assets of this package also needs to be updated.
66
+ To update the assets run following in the terminal of the assets package folder:
67
+
68
+ ```bash
69
+ pnpm build:all
70
+ ```
71
+
72
+ This will:
73
+
74
+ - Clean up the `src` directory
75
+ - download all icons from figma
76
+ - download all thumbnails for docs
77
+ - Recreate all default icons
78
+ - Recreate the license files in the different folders
79
+ - Create [code connect files](https://www.figma.com/code-connect-docs/html) for all icons. Please be aware you have to call `pnpm figma-export:icons` in the components package to publish the icons!
@@ -0,0 +1,80 @@
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 { SynAccordion } from '@synergy-design-system/components';
16
+
17
+ import '@synergy-design-system/components/components/accordion/accordion.js';
18
+
19
+ /**
20
+ * @summary Accordions provide the ability to group a list of `<syn-details>`.
21
+ *
22
+ * @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-accordion--docs
23
+ * @status stable
24
+ * @since 1.23.0
25
+ *
26
+ * @slot - The accordion's main content. Must be `<syn-details />` elements.
27
+ *
28
+ * @csspart base - The component's base wrapper.
29
+ */
30
+ @Component({
31
+ selector: 'syn-accordion',
32
+ standalone: true,
33
+ template: '<ng-content></ng-content>',
34
+ })
35
+ export class SynAccordionComponent {
36
+ public nativeElement: SynAccordion;
37
+ private _ngZone: NgZone;
38
+
39
+ constructor(e: ElementRef, ngZone: NgZone) {
40
+ this.nativeElement = e.nativeElement;
41
+ this._ngZone = ngZone;
42
+ }
43
+
44
+ /**
45
+ * Indicates whether or not multiple `<syn-detail>` elements can be open at the same time.
46
+ */
47
+ @Input()
48
+ set closeOthers(v: '' | SynAccordion['closeOthers']) {
49
+ this._ngZone.runOutsideAngular(
50
+ () => (this.nativeElement.closeOthers = v === '' || v),
51
+ );
52
+ }
53
+ get closeOthers(): SynAccordion['closeOthers'] {
54
+ return this.nativeElement.closeOthers;
55
+ }
56
+
57
+ /**
58
+ * Draws the accordion and the slotted `<syn-details>` as contained elements.
59
+ */
60
+ @Input()
61
+ set contained(v: '' | SynAccordion['contained']) {
62
+ this._ngZone.runOutsideAngular(
63
+ () => (this.nativeElement.contained = v === '' || v),
64
+ );
65
+ }
66
+ get contained(): SynAccordion['contained'] {
67
+ return this.nativeElement.contained;
68
+ }
69
+
70
+ /**
71
+ * The size that should be applied to all slotted `<syn-details>` elements
72
+ */
73
+ @Input()
74
+ set size(v: SynAccordion['size']) {
75
+ this._ngZone.runOutsideAngular(() => (this.nativeElement.size = v));
76
+ }
77
+ get size(): SynAccordion['size'] {
78
+ return this.nativeElement.size;
79
+ }
80
+ }
@@ -0,0 +1,30 @@
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/accordion/accordion.component.js';
9
+
10
+ const tagName = 'syn-accordion';
11
+ Component.define('syn-accordion');
12
+
13
+ /**
14
+ * @summary Accordions provide the ability to group a list of `<syn-details>`.
15
+ *
16
+ * @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-accordion--docs
17
+ * @status stable
18
+ * @since 1.23.0
19
+ *
20
+ * @slot - The accordion's main content. Must be `<syn-details />` elements.
21
+ *
22
+ * @csspart base - The component's base wrapper.
23
+ */
24
+ export const SynAccordion = createComponent({
25
+ displayName: 'SynAccordion',
26
+ elementClass: Component,
27
+ events: {},
28
+ react: React,
29
+ tagName,
30
+ });
@@ -0,0 +1,15 @@
1
+ import { css } from 'lit';
2
+
3
+ export default css`
4
+ :host {
5
+ display: block;
6
+ }
7
+
8
+ .accordion--contained ::slotted(syn-details) {
9
+ margin-bottom: var(--syn-spacing-x-small);
10
+ }
11
+
12
+ .accordion--contained ::slotted(syn-details:last-of-type){
13
+ margin-bottom: 0;
14
+ }
15
+ `;
@@ -0,0 +1,111 @@
1
+ import { html } from 'lit';
2
+ import { property, queryAssignedElements } from 'lit/decorators.js';
3
+ import type { CSSResultGroup } from 'lit';
4
+ import { classMap } from 'lit/directives/class-map.js';
5
+ import SynergyElement from '../../internal/synergy-element.js';
6
+ import { watch } from '../../internal/watch.js';
7
+ import componentStyles from '../../styles/component.styles.js';
8
+ import styles from './accordion.styles.js';
9
+ import type SynDetails from '../details/details.component.js';
10
+ import { enableDefaultSettings } from '../../utilities/defaultSettings/decorator.js';
11
+
12
+ /**
13
+ * @summary Accordions provide the ability to group a list of `<syn-details>`.
14
+ *
15
+ * @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-accordion--docs
16
+ * @status stable
17
+ * @since 1.23.0
18
+ *
19
+ * @slot - The accordion's main content. Must be `<syn-details />` elements.
20
+ *
21
+ * @csspart base - The component's base wrapper.
22
+ */
23
+ @enableDefaultSettings('SynAccordion')
24
+ export default class SynAccordion extends SynergyElement {
25
+ static styles: CSSResultGroup = [
26
+ componentStyles,
27
+ styles,
28
+ ];
29
+
30
+ @queryAssignedElements({ selector: 'syn-details' }) detailsInDefaultSlot!: SynDetails[];
31
+
32
+ /**
33
+ * Indicates whether or not multiple `<syn-detail>` elements can be open at the same time.
34
+ */
35
+ @property({ attribute: 'close-others', type: Boolean }) closeOthers = false;
36
+
37
+ /** Draws the accordion and the slotted `<syn-details>` as contained elements. */
38
+ @property({ reflect: true, type: Boolean }) contained = false;
39
+
40
+ /** The size that should be applied to all slotted `<syn-details>` elements */
41
+ @property({ reflect: true }) size: 'medium' | 'large' = 'medium';
42
+
43
+ private adjustDetailsSize() {
44
+ this.detailsInDefaultSlot.forEach(detail => {
45
+ detail.setAttribute('size', this.size);
46
+ });
47
+ }
48
+
49
+ private adjustDetailsContained() {
50
+ this.detailsInDefaultSlot.forEach(detail => {
51
+ // eslint-disable-next-line no-param-reassign
52
+ detail.contained = this.contained;
53
+ });
54
+ }
55
+
56
+ @watch('size', { waitUntilFirstUpdate: true })
57
+ handleSizeChange() {
58
+ this.adjustDetailsSize();
59
+ }
60
+
61
+ @watch('contained', { waitUntilFirstUpdate: true })
62
+ handleContainedChange() {
63
+ this.adjustDetailsContained();
64
+ }
65
+
66
+ connectedCallback() {
67
+ super.connectedCallback();
68
+ this.addEventListener('syn-show', this.handleAccordionShow);
69
+ }
70
+
71
+ disconnectedCallback() {
72
+ super.disconnectedCallback();
73
+ this.removeEventListener('syn-show', this.handleAccordionShow);
74
+ }
75
+
76
+ handleSlotChange() {
77
+ this.adjustDetailsSize();
78
+ this.adjustDetailsContained();
79
+ }
80
+
81
+ private handleAccordionShow = (event: Event) => {
82
+ if (this.closeOthers) {
83
+ this.detailsInDefaultSlot.forEach(detailsElement => {
84
+ // Break if detailsElement sent the event
85
+ if (detailsElement === event.target) {
86
+ return;
87
+ }
88
+ // Break if detailsElement is outside this group
89
+ if (detailsElement.parentNode !== (event.target as HTMLUnknownElement).parentNode) {
90
+ return;
91
+ }
92
+ detailsElement.removeAttribute('open');
93
+ });
94
+ }
95
+ };
96
+
97
+ render() {
98
+ /* eslint-disable @typescript-eslint/unbound-method */
99
+ return html`
100
+ <div
101
+ part="base"
102
+ class=${classMap({
103
+ accordion: true,
104
+ 'accordion--contained': this.contained,
105
+ })}>
106
+ <slot @slotchange=${this.handleSlotChange}></slot>
107
+ </div>
108
+ `;
109
+ /* eslint-enable @typescript-eslint/unbound-method */
110
+ }
111
+ }
@@ -0,0 +1,64 @@
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 Accordions provide the ability to group a list of `<syn-details>`.
10
+ *
11
+ * @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-accordion--docs
12
+ * @status stable
13
+ * @since 1.23.0
14
+ *
15
+ * @slot - The accordion's main content. Must be `<syn-details />` elements.
16
+ *
17
+ * @csspart base - The component's base wrapper.
18
+ */
19
+ import { computed, ref } from 'vue';
20
+ import '@synergy-design-system/components/components/accordion/accordion.js';
21
+
22
+ import type { SynAccordion } from '@synergy-design-system/components';
23
+
24
+ // DOM Reference to the element
25
+ const nativeElement = ref<SynAccordion>();
26
+
27
+ defineExpose({
28
+ nativeElement,
29
+ });
30
+
31
+ // Map attributes
32
+ const props = defineProps<{
33
+ /**
34
+ * Indicates whether or not multiple `<syn-detail>` elements can be open at the same time.
35
+ */
36
+ closeOthers?: SynAccordion['closeOthers'];
37
+
38
+ /**
39
+ * Draws the accordion and the slotted `<syn-details>` as contained elements.
40
+ */
41
+ contained?: SynAccordion['contained'];
42
+
43
+ /**
44
+ * The size that should be applied to all slotted `<syn-details>` elements
45
+ */
46
+ size?: SynAccordion['size'];
47
+ }>();
48
+
49
+ // Make sure prop binding only forwards the props that are actually there.
50
+ // This is needed because :param="param" also adds an empty attribute
51
+ // when using web-components, which breaks optional arguments like size in SynInput
52
+ // @see https://github.com/vuejs/core/issues/5190#issuecomment-1003112498
53
+ const visibleProps = computed(() =>
54
+ Object.fromEntries(
55
+ Object.entries(props).filter(([, value]) => typeof value !== 'undefined'),
56
+ ),
57
+ );
58
+ </script>
59
+
60
+ <template>
61
+ <syn-accordion v-bind="visibleProps" ref="nativeElement">
62
+ <slot></slot>
63
+ </syn-accordion>
64
+ </template>
@@ -0,0 +1,158 @@
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 { SynAlert } 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/alert/alert.js';
21
+
22
+ /**
23
+ * @summary Alerts are used to display important messages inline or as toast notifications.
24
+ * @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-alert--docs
25
+ * @status stable
26
+ * @since 2.0
27
+ *
28
+ * @dependency syn-icon-button
29
+ *
30
+ * @slot - The alert's main content.
31
+ * @slot icon - An icon to show in the alert. Works best with `<syn-icon>`.
32
+ *
33
+ * @event syn-show - Emitted when the alert opens.
34
+ * @event syn-after-show - Emitted after the alert opens and all animations are complete.
35
+ * @event syn-hide - Emitted when the alert closes.
36
+ * @event syn-after-hide - Emitted after the alert closes and all animations are complete.
37
+ *
38
+ * @csspart base - The component's base wrapper.
39
+ * @csspart icon - The container that wraps the optional icon.
40
+ * @csspart message - The container that wraps the alert's main content.
41
+ * @csspart close-button - The close button, an `<syn-icon-button>`.
42
+ * @csspart close-button__base - The close button's exported `base` part.
43
+ *
44
+ * @animation alert.show - The animation to use when showing the alert.
45
+ * @animation alert.hide - The animation to use when hiding the alert.
46
+ */
47
+ @Component({
48
+ selector: 'syn-alert',
49
+ standalone: true,
50
+ template: '<ng-content></ng-content>',
51
+ })
52
+ export class SynAlertComponent {
53
+ public nativeElement: SynAlert;
54
+ private _ngZone: NgZone;
55
+
56
+ constructor(e: ElementRef, ngZone: NgZone) {
57
+ this.nativeElement = e.nativeElement;
58
+ this._ngZone = ngZone;
59
+ this.nativeElement.addEventListener('syn-show', (e: SynShowEvent) => {
60
+ this.synShowEvent.emit(e);
61
+ });
62
+ this.nativeElement.addEventListener(
63
+ 'syn-after-show',
64
+ (e: SynAfterShowEvent) => {
65
+ this.synAfterShowEvent.emit(e);
66
+ },
67
+ );
68
+ this.nativeElement.addEventListener('syn-hide', (e: SynHideEvent) => {
69
+ this.synHideEvent.emit(e);
70
+ });
71
+ this.nativeElement.addEventListener(
72
+ 'syn-after-hide',
73
+ (e: SynAfterHideEvent) => {
74
+ this.synAfterHideEvent.emit(e);
75
+ },
76
+ );
77
+ }
78
+
79
+ /**
80
+ * Indicates whether or not the alert is open.
81
+ * You can toggle this attribute to show and hide the alert, or you can
82
+ use the `show()` and `hide()` methods and this attribute will reflect the alert's open state.
83
+ */
84
+ @Input()
85
+ set open(v: '' | SynAlert['open']) {
86
+ this._ngZone.runOutsideAngular(
87
+ () => (this.nativeElement.open = v === '' || v),
88
+ );
89
+ }
90
+ get open(): SynAlert['open'] {
91
+ return this.nativeElement.open;
92
+ }
93
+
94
+ /**
95
+ * Enables a close button that allows the user to dismiss the alert.
96
+ */
97
+ @Input()
98
+ set closable(v: '' | SynAlert['closable']) {
99
+ this._ngZone.runOutsideAngular(
100
+ () => (this.nativeElement.closable = v === '' || v),
101
+ );
102
+ }
103
+ get closable(): SynAlert['closable'] {
104
+ return this.nativeElement.closable;
105
+ }
106
+
107
+ /**
108
+ * The alert's theme variant.
109
+ */
110
+ @Input()
111
+ set variant(v: SynAlert['variant']) {
112
+ this._ngZone.runOutsideAngular(() => (this.nativeElement.variant = v));
113
+ }
114
+ get variant(): SynAlert['variant'] {
115
+ return this.nativeElement.variant;
116
+ }
117
+
118
+ /**
119
+ * The length of time, in milliseconds, the alert will show before closing itself.
120
+ * If the user interacts with
121
+ the alert before it closes (e.g.
122
+ * moves the mouse over it), the timer will restart.
123
+ * Defaults to `Infinity`, meaning
124
+ the alert will not close on its own.
125
+ */
126
+ @Input()
127
+ set duration(v: SynAlert['duration']) {
128
+ this._ngZone.runOutsideAngular(() => (this.nativeElement.duration = v));
129
+ }
130
+ get duration(): SynAlert['duration'] {
131
+ return this.nativeElement.duration;
132
+ }
133
+
134
+ /**
135
+ * Emitted when the alert opens.
136
+ */
137
+ @Output() synShowEvent = new EventEmitter<SynShowEvent>();
138
+
139
+ /**
140
+ * Emitted after the alert opens and all animations are complete.
141
+ */
142
+ @Output() synAfterShowEvent = new EventEmitter<SynAfterShowEvent>();
143
+
144
+ /**
145
+ * Emitted when the alert closes.
146
+ */
147
+ @Output() synHideEvent = new EventEmitter<SynHideEvent>();
148
+
149
+ /**
150
+ * Emitted after the alert closes and all animations are complete.
151
+ */
152
+ @Output() synAfterHideEvent = new EventEmitter<SynAfterHideEvent>();
153
+ }
154
+
155
+ export type { SynShowEvent } from '@synergy-design-system/components';
156
+ export type { SynAfterShowEvent } from '@synergy-design-system/components';
157
+ export type { SynHideEvent } from '@synergy-design-system/components';
158
+ export type { SynAfterHideEvent } from '@synergy-design-system/components';
@@ -0,0 +1,90 @@
1
+ import { css } from 'lit';
2
+
3
+ export default css`
4
+ .alert {
5
+ /* Defines the used border and icon color for variants */
6
+ --variant-accent-color: var(--syn-panel-border-color);
7
+
8
+ border: var(--syn-panel-border-width) solid var(--syn-panel-border-color);
9
+ border-left: 0;
10
+ border-radius: var(--syn-border-radius-none);
11
+ color: var(--syn-typography-color-text);
12
+ font-size: var(--syn-font-size-medium);
13
+ line-height: var(--syn-line-height-normal);
14
+ min-height: 56px;
15
+ }
16
+
17
+ /**
18
+ * Add back the items left borders
19
+ * This is done to prevent border clipping with the large border-left needed on .alert
20
+ * Note we also need to adjust our paddings to add the border width here
21
+ */
22
+ .alert::before {
23
+ background: var(--variant-accent-color);
24
+ bottom: -1px;
25
+ content: "";
26
+ left: 0;
27
+ position: absolute;
28
+ top: -1px;
29
+ width: var(--syn-spacing-2x-small);
30
+ }
31
+
32
+ .alert :first-child {
33
+ margin-inline-start: var(--syn-spacing-2x-small);
34
+ }
35
+
36
+ /**
37
+ * Make sure everything is aligned to top
38
+ */
39
+ .alert__icon,
40
+ .alert__close-button {
41
+ align-items: flex-start;
42
+ font-size: var(--syn-font-size-x-large);
43
+ }
44
+
45
+ .alert__message {
46
+ padding: var(--syn-spacing-medium) var(--syn-spacing-large) var(--syn-spacing-medium) var(--syn-spacing-medium);
47
+ }
48
+
49
+ /**
50
+ * Alert Icon
51
+ */
52
+ .alert__icon {
53
+ color: var(--variant-accent-color);
54
+ padding-block: var(--syn-spacing-medium);
55
+ padding-inline-start: var(--syn-spacing-medium);
56
+ }
57
+
58
+ /**
59
+ * Close Icon
60
+ */
61
+ .alert__close-button {
62
+ align-self: start;
63
+ color: var(--syn-typography-color-text);
64
+ margin-block: calc(var(--syn-spacing-x-small) - var(--syn-panel-border-width));
65
+ margin-inline-end: var(--syn-spacing-x-small);
66
+ }
67
+
68
+ /**
69
+ * Variants should highlight the left border instead of top
70
+ */
71
+ .alert--primary {
72
+ --variant-accent-color: var(--syn-color-primary-600);
73
+ }
74
+
75
+ .alert--success {
76
+ --variant-accent-color: var(--syn-color-success-500);
77
+ }
78
+
79
+ .alert--neutral {
80
+ --variant-accent-color: var(--syn-color-neutral-800);
81
+ }
82
+
83
+ .alert--warning {
84
+ --variant-accent-color: var(--syn-color-warning-400);
85
+ }
86
+
87
+ .alert--danger {
88
+ --variant-accent-color: var(--syn-color-error-600);
89
+ }
90
+ `;
@@ -0,0 +1,60 @@
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/alert/alert.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-alert';
17
+ Component.define('syn-alert');
18
+
19
+ /**
20
+ * @summary Alerts are used to display important messages inline or as toast notifications.
21
+ * @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-alert--docs
22
+ * @status stable
23
+ * @since 2.0
24
+ *
25
+ * @dependency syn-icon-button
26
+ *
27
+ * @slot - The alert's main content.
28
+ * @slot icon - An icon to show in the alert. Works best with `<syn-icon>`.
29
+ *
30
+ * @event syn-show - Emitted when the alert opens.
31
+ * @event syn-after-show - Emitted after the alert opens and all animations are complete.
32
+ * @event syn-hide - Emitted when the alert closes.
33
+ * @event syn-after-hide - Emitted after the alert closes and all animations are complete.
34
+ *
35
+ * @csspart base - The component's base wrapper.
36
+ * @csspart icon - The container that wraps the optional icon.
37
+ * @csspart message - The container that wraps the alert's main content.
38
+ * @csspart close-button - The close button, an `<syn-icon-button>`.
39
+ * @csspart close-button__base - The close button's exported `base` part.
40
+ *
41
+ * @animation alert.show - The animation to use when showing the alert.
42
+ * @animation alert.hide - The animation to use when hiding the alert.
43
+ */
44
+ export const SynAlert = createComponent({
45
+ displayName: 'SynAlert',
46
+ elementClass: Component,
47
+ events: {
48
+ onSynShow: 'syn-show' as EventName<SynShowEvent>,
49
+ onSynAfterShow: 'syn-after-show' as EventName<SynAfterShowEvent>,
50
+ onSynHide: 'syn-hide' as EventName<SynHideEvent>,
51
+ onSynAfterHide: 'syn-after-hide' as EventName<SynAfterHideEvent>,
52
+ },
53
+ react: React,
54
+ tagName,
55
+ });
56
+
57
+ export type { SynShowEvent } from '@synergy-design-system/components';
58
+ export type { SynAfterShowEvent } from '@synergy-design-system/components';
59
+ export type { SynHideEvent } from '@synergy-design-system/components';
60
+ export type { SynAfterHideEvent } from '@synergy-design-system/components';