@synergy-design-system/mcp 2.14.1 → 3.0.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 (525) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +826 -303
  3. package/dist/bin/start.js +57 -6
  4. package/dist/middleware/compose.d.ts +15 -0
  5. package/dist/middleware/compose.js +10 -0
  6. package/dist/middleware/compression.d.ts +19 -0
  7. package/dist/middleware/compression.js +35 -0
  8. package/dist/middleware/error-handler.d.ts +13 -0
  9. package/dist/middleware/error-handler.js +42 -0
  10. package/dist/middleware/index.d.ts +9 -0
  11. package/dist/middleware/index.js +8 -0
  12. package/dist/middleware/logging.d.ts +14 -0
  13. package/dist/middleware/logging.js +64 -0
  14. package/dist/middleware/types.d.ts +20 -0
  15. package/dist/middleware/types.js +4 -0
  16. package/dist/resources/asset-list.d.ts +7 -0
  17. package/dist/resources/asset-list.js +34 -0
  18. package/dist/resources/component-cluster-list.d.ts +7 -0
  19. package/dist/resources/component-cluster-list.js +30 -0
  20. package/dist/resources/component-list.d.ts +7 -0
  21. package/dist/resources/component-list.js +31 -0
  22. package/dist/resources/index.d.ts +5 -0
  23. package/dist/resources/index.js +5 -0
  24. package/dist/resources/styles-list.d.ts +7 -0
  25. package/dist/resources/styles-list.js +31 -0
  26. package/dist/resources/templates-list.d.ts +7 -0
  27. package/dist/resources/templates-list.js +28 -0
  28. package/dist/server.js +5 -1
  29. package/dist/tools/asset-info.js +41 -85
  30. package/dist/tools/asset-list.js +22 -31
  31. package/dist/tools/component-cluster-list.d.ts +6 -0
  32. package/dist/tools/component-cluster-list.js +30 -0
  33. package/dist/tools/component-info.js +38 -21
  34. package/dist/tools/component-list.js +35 -30
  35. package/dist/tools/davinci-migration-info.d.ts +2 -0
  36. package/dist/tools/davinci-migration-info.js +21 -0
  37. package/dist/tools/davinci-migration-list.d.ts +2 -0
  38. package/dist/tools/davinci-migration-list.js +20 -0
  39. package/dist/tools/index.d.ts +6 -5
  40. package/dist/tools/index.js +6 -5
  41. package/dist/tools/migration-info.js +12 -37
  42. package/dist/tools/migration-list.js +7 -13
  43. package/dist/tools/setup.d.ts +6 -0
  44. package/dist/tools/setup.js +31 -0
  45. package/dist/tools/styles-info.d.ts +1 -2
  46. package/dist/tools/styles-info.js +24 -20
  47. package/dist/tools/styles-list.js +19 -33
  48. package/dist/tools/template-info.js +19 -20
  49. package/dist/tools/template-list.d.ts +1 -1
  50. package/dist/tools/template-list.js +17 -32
  51. package/dist/tools/{tokens.d.ts → token-info.d.ts} +2 -2
  52. package/dist/tools/token-info.js +31 -0
  53. package/dist/tools/tokens-list.d.ts +6 -0
  54. package/dist/tools/tokens-list.js +52 -0
  55. package/dist/transports/http.d.ts +14 -0
  56. package/dist/transports/http.js +157 -0
  57. package/dist/transports/index.d.ts +23 -0
  58. package/dist/transports/index.js +23 -0
  59. package/dist/transports/stdio.d.ts +10 -0
  60. package/dist/transports/stdio.js +21 -0
  61. package/dist/types/tool-response.d.ts +13 -0
  62. package/dist/types/tool-response.js +7 -0
  63. package/dist/utilities/cli.d.ts +27 -0
  64. package/dist/utilities/cli.js +170 -0
  65. package/dist/utilities/compression.d.ts +7 -0
  66. package/dist/utilities/compression.js +45 -0
  67. package/dist/utilities/config.d.ts +122 -80
  68. package/dist/utilities/config.js +212 -81
  69. package/dist/utilities/davinci.d.ts +12 -0
  70. package/dist/utilities/davinci.js +55 -0
  71. package/dist/utilities/index.d.ts +10 -10
  72. package/dist/utilities/index.js +10 -10
  73. package/dist/utilities/local-file-logger.d.ts +2 -0
  74. package/dist/utilities/local-file-logger.js +22 -0
  75. package/dist/utilities/logger.d.ts +12 -0
  76. package/dist/utilities/logger.js +30 -0
  77. package/dist/utilities/logging-context.d.ts +8 -0
  78. package/dist/utilities/logging-context.js +7 -0
  79. package/dist/utilities/logging-service.d.ts +2 -0
  80. package/dist/utilities/logging-service.js +24 -0
  81. package/dist/utilities/logging-types.d.ts +19 -0
  82. package/dist/utilities/metadata.d.ts +10 -17
  83. package/dist/utilities/metadata.js +34 -51
  84. package/dist/utilities/migration.d.ts +2 -1
  85. package/dist/utilities/migration.js +33 -30
  86. package/dist/utilities/rules.d.ts +8 -0
  87. package/dist/utilities/rules.js +37 -0
  88. package/dist/utilities/server.d.ts +7 -0
  89. package/dist/utilities/server.js +12 -0
  90. package/dist/utilities/token-counter.d.ts +14 -0
  91. package/dist/utilities/token-counter.js +53 -0
  92. package/package.json +18 -28
  93. package/rules/asset-info.md +10 -0
  94. package/rules/asset-list.md +10 -0
  95. package/rules/component-cluster-list.md +5 -0
  96. package/{metadata/static/angular/index.md → rules/component-info-angular.md} +2 -1
  97. package/{metadata/static/react/index.md → rules/component-info-react.md} +2 -1
  98. package/{metadata/static/vue/index.md → rules/component-info-vue.md} +4 -1
  99. package/{metadata/static/component-list/index.md → rules/component-list.md} +5 -7
  100. package/rules/styles-info.md +9 -0
  101. package/{metadata/static/styles/index.md → rules/styles-list.md} +0 -2
  102. package/{metadata/static/templates/index.md → rules/template-info.md} +0 -1
  103. package/rules/template-list.md +7 -0
  104. package/dist/bin/create-checksum.d.ts +0 -2
  105. package/dist/bin/create-checksum.js +0 -24
  106. package/dist/build/assets.d.ts +0 -4
  107. package/dist/build/assets.js +0 -57
  108. package/dist/build/build.js +0 -35
  109. package/dist/build/components.d.ts +0 -4
  110. package/dist/build/components.js +0 -133
  111. package/dist/build/fonts.d.ts +0 -4
  112. package/dist/build/fonts.js +0 -49
  113. package/dist/build/frameworks.d.ts +0 -4
  114. package/dist/build/frameworks.js +0 -61
  115. package/dist/build/static.d.ts +0 -4
  116. package/dist/build/static.js +0 -65
  117. package/dist/build/styles.d.ts +0 -4
  118. package/dist/build/styles.js +0 -58
  119. package/dist/build/tokens.d.ts +0 -4
  120. package/dist/build/tokens.js +0 -59
  121. package/dist/tools/davinci-migration.d.ts +0 -3
  122. package/dist/tools/davinci-migration.js +0 -66
  123. package/dist/tools/font-info.d.ts +0 -6
  124. package/dist/tools/font-info.js +0 -35
  125. package/dist/tools/framework-info.d.ts +0 -7
  126. package/dist/tools/framework-info.js +0 -58
  127. package/dist/tools/tokens.js +0 -24
  128. package/dist/tools/version.d.ts +0 -7
  129. package/dist/tools/version.js +0 -53
  130. package/dist/utilities/assets.d.ts +0 -2
  131. package/dist/utilities/assets.js +0 -3
  132. package/dist/utilities/checksum.d.ts +0 -36
  133. package/dist/utilities/checksum.js +0 -94
  134. package/dist/utilities/components.d.ts +0 -25
  135. package/dist/utilities/components.js +0 -86
  136. package/dist/utilities/file.d.ts +0 -12
  137. package/dist/utilities/file.js +0 -31
  138. package/dist/utilities/fonts.d.ts +0 -2
  139. package/dist/utilities/fonts.js +0 -3
  140. package/dist/utilities/stdio.d.ts +0 -14
  141. package/dist/utilities/stdio.js +0 -60
  142. package/dist/utilities/storybook/build-docs.d.ts +0 -2
  143. package/dist/utilities/storybook/build-docs.js +0 -43
  144. package/dist/utilities/storybook/configs.d.ts +0 -13
  145. package/dist/utilities/storybook/configs.js +0 -85
  146. package/dist/utilities/storybook/docs-scraper.d.ts +0 -26
  147. package/dist/utilities/storybook/docs-scraper.js +0 -96
  148. package/dist/utilities/storybook/index.d.ts +0 -5
  149. package/dist/utilities/storybook/index.js +0 -4
  150. package/dist/utilities/storybook/scraper.d.ts +0 -14
  151. package/dist/utilities/storybook/scraper.js +0 -243
  152. package/dist/utilities/storybook/storybook-manager.d.ts +0 -29
  153. package/dist/utilities/storybook/storybook-manager.js +0 -138
  154. package/dist/utilities/storybook/types.d.ts +0 -22
  155. package/dist/utilities/storybook/types.js +0 -1
  156. package/dist/utilities/styles.d.ts +0 -6
  157. package/dist/utilities/styles.js +0 -24
  158. package/dist/utilities/templates.d.ts +0 -12
  159. package/dist/utilities/templates.js +0 -28
  160. package/dist/utilities/tokens.d.ts +0 -1
  161. package/dist/utilities/tokens.js +0 -21
  162. package/dist/utilities/version.d.ts +0 -28
  163. package/dist/utilities/version.js +0 -21
  164. package/metadata/checksum.txt +0 -1
  165. package/metadata/davinci-migration/migration-guide.md +0 -1859
  166. package/metadata/packages/angular/LIMITATIONS.md +0 -32
  167. package/metadata/packages/angular/README.md +0 -393
  168. package/metadata/packages/assets/BREAKING_CHANGES.md +0 -305
  169. package/metadata/packages/assets/CHANGELOG.md +0 -364
  170. package/metadata/packages/assets/README.md +0 -103
  171. package/metadata/packages/components/components/syn-accordion/component.angular.ts +0 -80
  172. package/metadata/packages/components/components/syn-accordion/component.react.ts +0 -30
  173. package/metadata/packages/components/components/syn-accordion/component.styles.ts +0 -15
  174. package/metadata/packages/components/components/syn-accordion/component.ts +0 -111
  175. package/metadata/packages/components/components/syn-accordion/component.vue +0 -64
  176. package/metadata/packages/components/components/syn-alert/component.angular.ts +0 -169
  177. package/metadata/packages/components/components/syn-alert/component.react.ts +0 -60
  178. package/metadata/packages/components/components/syn-alert/component.styles.ts +0 -203
  179. package/metadata/packages/components/components/syn-alert/component.ts +0 -322
  180. package/metadata/packages/components/components/syn-alert/component.vue +0 -135
  181. package/metadata/packages/components/components/syn-badge/component.angular.ts +0 -53
  182. package/metadata/packages/components/components/syn-badge/component.custom.styles.ts +0 -62
  183. package/metadata/packages/components/components/syn-badge/component.react.ts +0 -29
  184. package/metadata/packages/components/components/syn-badge/component.styles.ts +0 -52
  185. package/metadata/packages/components/components/syn-badge/component.ts +0 -58
  186. package/metadata/packages/components/components/syn-badge/component.vue +0 -53
  187. package/metadata/packages/components/components/syn-breadcrumb/component.angular.ts +0 -58
  188. package/metadata/packages/components/components/syn-breadcrumb/component.custom.styles.ts +0 -5
  189. package/metadata/packages/components/components/syn-breadcrumb/component.react.ts +0 -32
  190. package/metadata/packages/components/components/syn-breadcrumb/component.styles.ts +0 -11
  191. package/metadata/packages/components/components/syn-breadcrumb/component.ts +0 -103
  192. package/metadata/packages/components/components/syn-breadcrumb/component.vue +0 -58
  193. package/metadata/packages/components/components/syn-breadcrumb-item/component.angular.ts +0 -88
  194. package/metadata/packages/components/components/syn-breadcrumb-item/component.custom.styles.ts +0 -78
  195. package/metadata/packages/components/components/syn-breadcrumb-item/component.react.ts +0 -37
  196. package/metadata/packages/components/components/syn-breadcrumb-item/component.styles.ts +0 -88
  197. package/metadata/packages/components/components/syn-breadcrumb-item/component.ts +0 -132
  198. package/metadata/packages/components/components/syn-breadcrumb-item/component.vue +0 -76
  199. package/metadata/packages/components/components/syn-button/component.angular.ts +0 -318
  200. package/metadata/packages/components/components/syn-button/component.custom.styles.ts +0 -245
  201. package/metadata/packages/components/components/syn-button/component.react.ts +0 -56
  202. package/metadata/packages/components/components/syn-button/component.styles.ts +0 -361
  203. package/metadata/packages/components/components/syn-button/component.ts +0 -315
  204. package/metadata/packages/components/components/syn-button/component.vue +0 -204
  205. package/metadata/packages/components/components/syn-button-group/component.angular.ts +0 -79
  206. package/metadata/packages/components/components/syn-button-group/component.custom.styles.ts +0 -5
  207. package/metadata/packages/components/components/syn-button-group/component.react.ts +0 -29
  208. package/metadata/packages/components/components/syn-button-group/component.styles.ts +0 -14
  209. package/metadata/packages/components/components/syn-button-group/component.ts +0 -171
  210. package/metadata/packages/components/components/syn-button-group/component.vue +0 -67
  211. package/metadata/packages/components/components/syn-card/component.angular.ts +0 -83
  212. package/metadata/packages/components/components/syn-card/component.custom.styles.ts +0 -60
  213. package/metadata/packages/components/components/syn-card/component.react.ts +0 -41
  214. package/metadata/packages/components/components/syn-card/component.styles.ts +0 -70
  215. package/metadata/packages/components/components/syn-card/component.ts +0 -65
  216. package/metadata/packages/components/components/syn-card/component.vue +0 -73
  217. package/metadata/packages/components/components/syn-checkbox/component.angular.ts +0 -273
  218. package/metadata/packages/components/components/syn-checkbox/component.react.ts +0 -64
  219. package/metadata/packages/components/components/syn-checkbox/component.styles.ts +0 -183
  220. package/metadata/packages/components/components/syn-checkbox/component.ts +0 -287
  221. package/metadata/packages/components/components/syn-checkbox/component.vue +0 -191
  222. package/metadata/packages/components/components/syn-combobox/component.angular.ts +0 -516
  223. package/metadata/packages/components/components/syn-combobox/component.react.ts +0 -118
  224. package/metadata/packages/components/components/syn-combobox/component.styles.ts +0 -393
  225. package/metadata/packages/components/components/syn-combobox/component.ts +0 -1684
  226. package/metadata/packages/components/components/syn-combobox/component.vue +0 -350
  227. package/metadata/packages/components/components/syn-details/component.angular.ts +0 -186
  228. package/metadata/packages/components/components/syn-details/component.react.ts +0 -65
  229. package/metadata/packages/components/components/syn-details/component.styles.ts +0 -181
  230. package/metadata/packages/components/components/syn-details/component.ts +0 -261
  231. package/metadata/packages/components/components/syn-details/component.vue +0 -136
  232. package/metadata/packages/components/components/syn-dialog/component.angular.ts +0 -201
  233. package/metadata/packages/components/components/syn-dialog/component.react.ts +0 -91
  234. package/metadata/packages/components/components/syn-dialog/component.styles.ts +0 -130
  235. package/metadata/packages/components/components/syn-dialog/component.ts +0 -367
  236. package/metadata/packages/components/components/syn-dialog/component.vue +0 -169
  237. package/metadata/packages/components/components/syn-divider/component.angular.ts +0 -55
  238. package/metadata/packages/components/components/syn-divider/component.react.ts +0 -29
  239. package/metadata/packages/components/components/syn-divider/component.styles.ts +0 -22
  240. package/metadata/packages/components/components/syn-divider/component.ts +0 -34
  241. package/metadata/packages/components/components/syn-divider/component.vue +0 -51
  242. package/metadata/packages/components/components/syn-drawer/component.angular.ts +0 -234
  243. package/metadata/packages/components/components/syn-drawer/component.custom.styles.ts +0 -78
  244. package/metadata/packages/components/components/syn-drawer/component.react.ts +0 -98
  245. package/metadata/packages/components/components/syn-drawer/component.styles.ts +0 -158
  246. package/metadata/packages/components/components/syn-drawer/component.ts +0 -489
  247. package/metadata/packages/components/components/syn-drawer/component.vue +0 -188
  248. package/metadata/packages/components/components/syn-dropdown/component.angular.ts +0 -208
  249. package/metadata/packages/components/components/syn-dropdown/component.react.ts +0 -59
  250. package/metadata/packages/components/components/syn-dropdown/component.styles.ts +0 -51
  251. package/metadata/packages/components/components/syn-dropdown/component.ts +0 -469
  252. package/metadata/packages/components/components/syn-dropdown/component.vue +0 -152
  253. package/metadata/packages/components/components/syn-file/component.angular.ts +0 -372
  254. package/metadata/packages/components/components/syn-file/component.react.ts +0 -85
  255. package/metadata/packages/components/components/syn-file/component.styles.ts +0 -197
  256. package/metadata/packages/components/components/syn-file/component.ts +0 -645
  257. package/metadata/packages/components/components/syn-file/component.vue +0 -256
  258. package/metadata/packages/components/components/syn-header/component.angular.ts +0 -149
  259. package/metadata/packages/components/components/syn-header/component.react.ts +0 -68
  260. package/metadata/packages/components/components/syn-header/component.styles.ts +0 -143
  261. package/metadata/packages/components/components/syn-header/component.ts +0 -310
  262. package/metadata/packages/components/components/syn-header/component.vue +0 -126
  263. package/metadata/packages/components/components/syn-icon/component.angular.ts +0 -115
  264. package/metadata/packages/components/components/syn-icon/component.custom.styles.ts +0 -5
  265. package/metadata/packages/components/components/syn-icon/component.react.ts +0 -41
  266. package/metadata/packages/components/components/syn-icon/component.styles.ts +0 -18
  267. package/metadata/packages/components/components/syn-icon/component.ts +0 -227
  268. package/metadata/packages/components/components/syn-icon/component.vue +0 -100
  269. package/metadata/packages/components/components/syn-icon-button/component.angular.ts +0 -185
  270. package/metadata/packages/components/components/syn-icon-button/component.custom.styles.ts +0 -79
  271. package/metadata/packages/components/components/syn-icon-button/component.react.ts +0 -42
  272. package/metadata/packages/components/components/syn-icon-button/component.styles.ts +0 -52
  273. package/metadata/packages/components/components/syn-icon-button/component.ts +0 -147
  274. package/metadata/packages/components/components/syn-icon-button/component.vue +0 -132
  275. package/metadata/packages/components/components/syn-input/component.angular.ts +0 -608
  276. package/metadata/packages/components/components/syn-input/component.custom.styles.ts +0 -278
  277. package/metadata/packages/components/components/syn-input/component.react.ts +0 -91
  278. package/metadata/packages/components/components/syn-input/component.styles.ts +0 -280
  279. package/metadata/packages/components/components/syn-input/component.ts +0 -941
  280. package/metadata/packages/components/components/syn-input/component.vue +0 -370
  281. package/metadata/packages/components/components/syn-menu/component.angular.ts +0 -52
  282. package/metadata/packages/components/components/syn-menu/component.react.ts +0 -36
  283. package/metadata/packages/components/components/syn-menu/component.styles.ts +0 -37
  284. package/metadata/packages/components/components/syn-menu/component.ts +0 -191
  285. package/metadata/packages/components/components/syn-menu/component.vue +0 -48
  286. package/metadata/packages/components/components/syn-menu-item/component.angular.ts +0 -121
  287. package/metadata/packages/components/components/syn-menu-item/component.react.ts +0 -45
  288. package/metadata/packages/components/components/syn-menu-item/component.styles.ts +0 -285
  289. package/metadata/packages/components/components/syn-menu-item/component.ts +0 -201
  290. package/metadata/packages/components/components/syn-menu-item/component.vue +0 -91
  291. package/metadata/packages/components/components/syn-menu-label/component.angular.ts +0 -48
  292. package/metadata/packages/components/components/syn-menu-label/component.react.ts +0 -35
  293. package/metadata/packages/components/components/syn-menu-label/component.styles.ts +0 -31
  294. package/metadata/packages/components/components/syn-menu-label/component.ts +0 -46
  295. package/metadata/packages/components/components/syn-menu-label/component.vue +0 -41
  296. package/metadata/packages/components/components/syn-nav-item/component.angular.ts +0 -242
  297. package/metadata/packages/components/components/syn-nav-item/component.react.ts +0 -82
  298. package/metadata/packages/components/components/syn-nav-item/component.styles.ts +0 -333
  299. package/metadata/packages/components/components/syn-nav-item/component.ts +0 -491
  300. package/metadata/packages/components/components/syn-nav-item/component.vue +0 -182
  301. package/metadata/packages/components/components/syn-optgroup/component.angular.ts +0 -79
  302. package/metadata/packages/components/components/syn-optgroup/component.react.ts +0 -41
  303. package/metadata/packages/components/components/syn-optgroup/component.styles.ts +0 -61
  304. package/metadata/packages/components/components/syn-optgroup/component.ts +0 -176
  305. package/metadata/packages/components/components/syn-optgroup/component.vue +0 -71
  306. package/metadata/packages/components/components/syn-option/component.angular.ts +0 -79
  307. package/metadata/packages/components/components/syn-option/component.react.ts +0 -37
  308. package/metadata/packages/components/components/syn-option/component.styles.ts +0 -165
  309. package/metadata/packages/components/components/syn-option/component.ts +0 -191
  310. package/metadata/packages/components/components/syn-option/component.vue +0 -71
  311. package/metadata/packages/components/components/syn-popup/component.angular.ts +0 -372
  312. package/metadata/packages/components/components/syn-popup/component.react.ts +0 -55
  313. package/metadata/packages/components/components/syn-popup/component.styles.ts +0 -70
  314. package/metadata/packages/components/components/syn-popup/component.ts +0 -582
  315. package/metadata/packages/components/components/syn-popup/component.vue +0 -233
  316. package/metadata/packages/components/components/syn-prio-nav/component.angular.ts +0 -67
  317. package/metadata/packages/components/components/syn-prio-nav/component.react.ts +0 -54
  318. package/metadata/packages/components/components/syn-prio-nav/component.styles.ts +0 -48
  319. package/metadata/packages/components/components/syn-prio-nav/component.ts +0 -288
  320. package/metadata/packages/components/components/syn-prio-nav/component.vue +0 -60
  321. package/metadata/packages/components/components/syn-progress-bar/component.angular.ts +0 -85
  322. package/metadata/packages/components/components/syn-progress-bar/component.custom.styles.ts +0 -24
  323. package/metadata/packages/components/components/syn-progress-bar/component.react.ts +0 -37
  324. package/metadata/packages/components/components/syn-progress-bar/component.styles.ts +0 -87
  325. package/metadata/packages/components/components/syn-progress-bar/component.ts +0 -67
  326. package/metadata/packages/components/components/syn-progress-bar/component.vue +0 -71
  327. package/metadata/packages/components/components/syn-progress-ring/component.angular.ts +0 -72
  328. package/metadata/packages/components/components/syn-progress-ring/component.custom.styles.ts +0 -19
  329. package/metadata/packages/components/components/syn-progress-ring/component.react.ts +0 -37
  330. package/metadata/packages/components/components/syn-progress-ring/component.styles.ts +0 -70
  331. package/metadata/packages/components/components/syn-progress-ring/component.ts +0 -83
  332. package/metadata/packages/components/components/syn-progress-ring/component.vue +0 -66
  333. package/metadata/packages/components/components/syn-radio/component.angular.ts +0 -122
  334. package/metadata/packages/components/components/syn-radio/component.react.ts +0 -48
  335. package/metadata/packages/components/components/syn-radio/component.styles.ts +0 -179
  336. package/metadata/packages/components/components/syn-radio/component.ts +0 -131
  337. package/metadata/packages/components/components/syn-radio/component.vue +0 -104
  338. package/metadata/packages/components/components/syn-radio-button/component.angular.ts +0 -123
  339. package/metadata/packages/components/components/syn-radio-button/component.react.ts +0 -49
  340. package/metadata/packages/components/components/syn-radio-button/component.styles.ts +0 -30
  341. package/metadata/packages/components/components/syn-radio-button/component.ts +0 -142
  342. package/metadata/packages/components/components/syn-radio-button/component.vue +0 -105
  343. package/metadata/packages/components/components/syn-radio-group/component.angular.ts +0 -204
  344. package/metadata/packages/components/components/syn-radio-group/component.react.ts +0 -56
  345. package/metadata/packages/components/components/syn-radio-group/component.styles.ts +0 -58
  346. package/metadata/packages/components/components/syn-radio-group/component.ts +0 -440
  347. package/metadata/packages/components/components/syn-radio-group/component.vue +0 -158
  348. package/metadata/packages/components/components/syn-range/component.angular.ts +0 -347
  349. package/metadata/packages/components/components/syn-range/component.react.ts +0 -92
  350. package/metadata/packages/components/components/syn-range/component.styles.ts +0 -310
  351. package/metadata/packages/components/components/syn-range/component.ts +0 -933
  352. package/metadata/packages/components/components/syn-range/component.vue +0 -245
  353. package/metadata/packages/components/components/syn-range-tick/component.angular.ts +0 -59
  354. package/metadata/packages/components/components/syn-range-tick/component.react.ts +0 -33
  355. package/metadata/packages/components/components/syn-range-tick/component.styles.ts +0 -34
  356. package/metadata/packages/components/components/syn-range-tick/component.ts +0 -50
  357. package/metadata/packages/components/components/syn-range-tick/component.vue +0 -57
  358. package/metadata/packages/components/components/syn-resize-observer/component.styles.ts +0 -9
  359. package/metadata/packages/components/components/syn-resize-observer/component.ts +0 -91
  360. package/metadata/packages/components/components/syn-select/component.angular.ts +0 -439
  361. package/metadata/packages/components/components/syn-select/component.react.ts +0 -101
  362. package/metadata/packages/components/components/syn-select/component.styles.ts +0 -380
  363. package/metadata/packages/components/components/syn-select/component.ts +0 -1056
  364. package/metadata/packages/components/components/syn-select/component.vue +0 -301
  365. package/metadata/packages/components/components/syn-side-nav/component.angular.ts +0 -210
  366. package/metadata/packages/components/components/syn-side-nav/component.react.ts +0 -95
  367. package/metadata/packages/components/components/syn-side-nav/component.styles.ts +0 -142
  368. package/metadata/packages/components/components/syn-side-nav/component.ts +0 -458
  369. package/metadata/packages/components/components/syn-side-nav/component.vue +0 -188
  370. package/metadata/packages/components/components/syn-spinner/component.angular.ts +0 -44
  371. package/metadata/packages/components/components/syn-spinner/component.custom.styles.ts +0 -32
  372. package/metadata/packages/components/components/syn-spinner/component.react.ts +0 -31
  373. package/metadata/packages/components/components/syn-spinner/component.styles.ts +0 -48
  374. package/metadata/packages/components/components/syn-spinner/component.ts +0 -35
  375. package/metadata/packages/components/components/syn-spinner/component.vue +0 -35
  376. package/metadata/packages/components/components/syn-switch/component.angular.ts +0 -257
  377. package/metadata/packages/components/components/syn-switch/component.react.ts +0 -63
  378. package/metadata/packages/components/components/syn-switch/component.styles.ts +0 -252
  379. package/metadata/packages/components/components/syn-switch/component.ts +0 -279
  380. package/metadata/packages/components/components/syn-switch/component.vue +0 -183
  381. package/metadata/packages/components/components/syn-tab/component.angular.ts +0 -109
  382. package/metadata/packages/components/components/syn-tab/component.custom.styles.ts +0 -94
  383. package/metadata/packages/components/components/syn-tab/component.react.ts +0 -42
  384. package/metadata/packages/components/components/syn-tab/component.styles.ts +0 -70
  385. package/metadata/packages/components/components/syn-tab/component.ts +0 -125
  386. package/metadata/packages/components/components/syn-tab/component.vue +0 -91
  387. package/metadata/packages/components/components/syn-tab-group/component.angular.ts +0 -166
  388. package/metadata/packages/components/components/syn-tab-group/component.custom.styles.ts +0 -218
  389. package/metadata/packages/components/components/syn-tab-group/component.react.ts +0 -58
  390. package/metadata/packages/components/components/syn-tab-group/component.styles.ts +0 -193
  391. package/metadata/packages/components/components/syn-tab-group/component.ts +0 -551
  392. package/metadata/packages/components/components/syn-tab-group/component.vue +0 -126
  393. package/metadata/packages/components/components/syn-tab-panel/component.angular.ts +0 -68
  394. package/metadata/packages/components/components/syn-tab-panel/component.custom.styles.ts +0 -8
  395. package/metadata/packages/components/components/syn-tab-panel/component.react.ts +0 -31
  396. package/metadata/packages/components/components/syn-tab-panel/component.styles.ts +0 -20
  397. package/metadata/packages/components/components/syn-tab-panel/component.ts +0 -60
  398. package/metadata/packages/components/components/syn-tab-panel/component.vue +0 -60
  399. package/metadata/packages/components/components/syn-tag/component.angular.ts +0 -83
  400. package/metadata/packages/components/components/syn-tag/component.custom.styles.ts +0 -121
  401. package/metadata/packages/components/components/syn-tag/component.react.ts +0 -43
  402. package/metadata/packages/components/components/syn-tag/component.styles.ts +0 -58
  403. package/metadata/packages/components/components/syn-tag/component.ts +0 -83
  404. package/metadata/packages/components/components/syn-tag/component.vue +0 -81
  405. package/metadata/packages/components/components/syn-tag-group/component.angular.ts +0 -83
  406. package/metadata/packages/components/components/syn-tag-group/component.react.ts +0 -33
  407. package/metadata/packages/components/components/syn-tag-group/component.styles.ts +0 -49
  408. package/metadata/packages/components/components/syn-tag-group/component.ts +0 -95
  409. package/metadata/packages/components/components/syn-tag-group/component.vue +0 -69
  410. package/metadata/packages/components/components/syn-textarea/component.angular.ts +0 -396
  411. package/metadata/packages/components/components/syn-textarea/component.react.ts +0 -60
  412. package/metadata/packages/components/components/syn-textarea/component.styles.ts +0 -208
  413. package/metadata/packages/components/components/syn-textarea/component.ts +0 -400
  414. package/metadata/packages/components/components/syn-textarea/component.vue +0 -244
  415. package/metadata/packages/components/components/syn-tooltip/component.angular.ts +0 -196
  416. package/metadata/packages/components/components/syn-tooltip/component.react.ts +0 -63
  417. package/metadata/packages/components/components/syn-tooltip/component.styles.ts +0 -62
  418. package/metadata/packages/components/components/syn-tooltip/component.ts +0 -312
  419. package/metadata/packages/components/components/syn-tooltip/component.vue +0 -150
  420. package/metadata/packages/components/components/syn-validate/component.angular.ts +0 -137
  421. package/metadata/packages/components/components/syn-validate/component.react.ts +0 -44
  422. package/metadata/packages/components/components/syn-validate/component.styles.ts +0 -9
  423. package/metadata/packages/components/components/syn-validate/component.ts +0 -590
  424. package/metadata/packages/components/components/syn-validate/component.vue +0 -107
  425. package/metadata/packages/components/migration/BREAKING_CHANGES.md +0 -908
  426. package/metadata/packages/components/static/CHANGELOG.md +0 -2140
  427. package/metadata/packages/components/static/LIMITATIONS.md +0 -433
  428. package/metadata/packages/components/static/README.md +0 -231
  429. package/metadata/packages/fonts/CHANGELOG.md +0 -57
  430. package/metadata/packages/fonts/README.md +0 -164
  431. package/metadata/packages/fonts/package.json +0 -72
  432. package/metadata/packages/react/LIMITATIONS.md +0 -31
  433. package/metadata/packages/react/README.md +0 -262
  434. package/metadata/packages/styles/BREAKING_CHANGES.md +0 -105
  435. package/metadata/packages/styles/CHANGELOG.md +0 -188
  436. package/metadata/packages/styles/README.md +0 -132
  437. package/metadata/packages/styles/index.css +0 -300
  438. package/metadata/packages/styles/link-list.css +0 -47
  439. package/metadata/packages/styles/link.css +0 -81
  440. package/metadata/packages/styles/tables.css +0 -132
  441. package/metadata/packages/styles/typography.css +0 -52
  442. package/metadata/packages/tokens/BREAKING_CHANGES.md +0 -180
  443. package/metadata/packages/tokens/CHANGELOG.md +0 -949
  444. package/metadata/packages/tokens/README.md +0 -435
  445. package/metadata/packages/tokens/dark.css +0 -454
  446. package/metadata/packages/tokens/index.js +0 -2224
  447. package/metadata/packages/tokens/light.css +0 -454
  448. package/metadata/packages/tokens/sick2018_dark.css +0 -454
  449. package/metadata/packages/tokens/sick2018_light.css +0 -454
  450. package/metadata/packages/tokens/sick2025_dark.css +0 -454
  451. package/metadata/packages/tokens/sick2025_light.css +0 -454
  452. package/metadata/packages/vue/LIMITATIONS.md +0 -53
  453. package/metadata/packages/vue/README.md +0 -252
  454. package/metadata/static/assets/index.md +0 -10
  455. package/metadata/static/components/index.md +0 -10
  456. package/metadata/static/components/syn-accordion/docs.md +0 -449
  457. package/metadata/static/components/syn-alert/docs.md +0 -282
  458. package/metadata/static/components/syn-badge/docs.md +0 -106
  459. package/metadata/static/components/syn-breadcrumb/docs.md +0 -265
  460. package/metadata/static/components/syn-breadcrumb-item/docs.md +0 -49
  461. package/metadata/static/components/syn-button/docs.md +0 -472
  462. package/metadata/static/components/syn-button-group/docs.md +0 -259
  463. package/metadata/static/components/syn-card/docs.md +0 -314
  464. package/metadata/static/components/syn-checkbox/docs.md +0 -176
  465. package/metadata/static/components/syn-combobox/docs.md +0 -2633
  466. package/metadata/static/components/syn-details/docs.md +0 -227
  467. package/metadata/static/components/syn-dialog/docs.md +0 -220
  468. package/metadata/static/components/syn-divider/docs.md +0 -77
  469. package/metadata/static/components/syn-drawer/docs.md +0 -269
  470. package/metadata/static/components/syn-dropdown/docs.md +0 -316
  471. package/metadata/static/components/syn-file/docs.md +0 -239
  472. package/metadata/static/components/syn-header/docs.md +0 -209
  473. package/metadata/static/components/syn-icon/docs.md +0 -177
  474. package/metadata/static/components/syn-icon-button/docs.md +0 -142
  475. package/metadata/static/components/syn-input/docs.md +0 -462
  476. package/metadata/static/components/syn-menu/docs.md +0 -162
  477. package/metadata/static/components/syn-menu-item/docs.md +0 -216
  478. package/metadata/static/components/syn-menu-label/docs.md +0 -29
  479. package/metadata/static/components/syn-nav-item/docs.md +0 -166
  480. package/metadata/static/components/syn-optgroup/docs.md +0 -167
  481. package/metadata/static/components/syn-option/docs.md +0 -137
  482. package/metadata/static/components/syn-popup/docs.md +0 -812
  483. package/metadata/static/components/syn-prio-nav/docs.md +0 -54
  484. package/metadata/static/components/syn-progress-bar/docs.md +0 -77
  485. package/metadata/static/components/syn-progress-ring/docs.md +0 -89
  486. package/metadata/static/components/syn-radio/docs.md +0 -178
  487. package/metadata/static/components/syn-radio-group/docs.md +0 -484
  488. package/metadata/static/components/syn-range/docs.md +0 -438
  489. package/metadata/static/components/syn-range-tick/docs.md +0 -110
  490. package/metadata/static/components/syn-select/docs.md +0 -811
  491. package/metadata/static/components/syn-side-nav/docs.md +0 -593
  492. package/metadata/static/components/syn-spinner/docs.md +0 -45
  493. package/metadata/static/components/syn-switch/docs.md +0 -121
  494. package/metadata/static/components/syn-tab/docs.md +0 -47
  495. package/metadata/static/components/syn-tab-group/docs.md +0 -1094
  496. package/metadata/static/components/syn-tab-panel/docs.md +0 -91
  497. package/metadata/static/components/syn-tag/docs.md +0 -50
  498. package/metadata/static/components/syn-tag-group/docs.md +0 -269
  499. package/metadata/static/components/syn-textarea/docs.md +0 -215
  500. package/metadata/static/components/syn-tooltip/docs.md +0 -217
  501. package/metadata/static/components/syn-validate/docs.md +0 -305
  502. package/metadata/static/fonts/index.md +0 -4
  503. package/metadata/static/migration/index.md +0 -57
  504. package/metadata/static/migration/v2-2018-to-v2-2025.md +0 -481
  505. package/metadata/static/migration/v2-2018-to-v3-2018.md +0 -147
  506. package/metadata/static/migration/v2-2018-to-v3-2025.md +0 -150
  507. package/metadata/static/migration/v2-2025-to-v3-2025.md +0 -133
  508. package/metadata/static/setup/icon-usage.md +0 -411
  509. package/metadata/static/setup/prerequisites.md +0 -319
  510. package/metadata/static/styles/syn-body.md +0 -5
  511. package/metadata/static/styles/syn-heading.md +0 -5
  512. package/metadata/static/styles/syn-link-list.md +0 -325
  513. package/metadata/static/styles/syn-link.md +0 -156
  514. package/metadata/static/styles/syn-table-cell.md +0 -127
  515. package/metadata/static/styles/syn-table.md +0 -201
  516. package/metadata/static/styles/syn-weight.md +0 -5
  517. package/metadata/static/templates/appshell.md +0 -2053
  518. package/metadata/static/templates/breadcrumb.md +0 -379
  519. package/metadata/static/templates/footer.md +0 -340
  520. package/metadata/static/templates/forms.md +0 -558
  521. package/metadata/static/templates/localization.md +0 -279
  522. package/metadata/static/templates/table.md +0 -1425
  523. package/metadata/static/templates/tag-group.md +0 -833
  524. /package/dist/{build/build.d.ts → utilities/logging-types.js} +0 -0
  525. /package/{metadata/static/component-info/index.md → rules/component-info.md} +0 -0
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Creates and returns a transport instance based on the runtime configuration.
3
+ *
4
+ * For stdio mode, a single server instance is used.
5
+ * For HTTP mode, the factory is called once per client session so each client
6
+ * gets an isolated server with its own tool registrations.
7
+ *
8
+ * @param serverFactory A factory function that creates a new MCP server instance
9
+ * @param config The runtime configuration
10
+ * @returns A transport instance ready to start
11
+ */
12
+ export async function createTransport(serverFactory, config) {
13
+ // Determine transport type based on config.interface
14
+ // Note we have to use dynamic imports here to avoid importing all transport modules upfront,
15
+ // which can cause issues in certain environments (like when using stdio transport in a CLI tool)
16
+ if (config.interface === 'http') {
17
+ const { createHttpTransport } = await import('./http.js');
18
+ return createHttpTransport(serverFactory, config);
19
+ }
20
+ // Default to stdio — create the single server instance here
21
+ const { createStdioTransport } = await import('./stdio.js');
22
+ return createStdioTransport(serverFactory());
23
+ }
@@ -0,0 +1,10 @@
1
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ import type { TransportInstance } from './index.js';
3
+ /**
4
+ * Creates a stdio transport for the MCP server.
5
+ * Communicates via stdin/stdout with the parent process.
6
+ *
7
+ * @param server The MCP server instance
8
+ * @returns A transport instance
9
+ */
10
+ export declare function createStdioTransport(server: McpServer): Promise<TransportInstance>;
@@ -0,0 +1,21 @@
1
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
2
+ import { runWithLoggingContext } from '../utilities/logging-context.js';
3
+ /**
4
+ * Creates a stdio transport for the MCP server.
5
+ * Communicates via stdin/stdout with the parent process.
6
+ *
7
+ * @param server The MCP server instance
8
+ * @returns A transport instance
9
+ */
10
+ // eslint-disable-next-line @typescript-eslint/require-await
11
+ export async function createStdioTransport(server) {
12
+ const transport = new StdioServerTransport();
13
+ return {
14
+ start: async () => {
15
+ await runWithLoggingContext({
16
+ sessionId: 'stdio',
17
+ transport: 'stdio',
18
+ }, async () => server.connect(transport));
19
+ },
20
+ };
21
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Shared types for MCP tool responses.
3
+ * These are intentionally separated from middleware/metadata utilities to avoid
4
+ * circular dependencies as different domains (logging, token-counting, response
5
+ * formatting) need to work with the same response shape.
6
+ */
7
+ export type ToolResponseContentEntry = {
8
+ text: string;
9
+ type: 'text';
10
+ };
11
+ export type ToolResponse = {
12
+ content: ToolResponseContentEntry[];
13
+ };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Shared types for MCP tool responses.
3
+ * These are intentionally separated from middleware/metadata utilities to avoid
4
+ * circular dependencies as different domains (logging, token-counting, response
5
+ * formatting) need to work with the same response shape.
6
+ */
7
+ export {};
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Gets the current version of the MCP server.
3
+ * @returns The version string from package.json
4
+ */
5
+ export declare const getVersion: () => string;
6
+ /**
7
+ * Parsed command line arguments
8
+ */
9
+ export interface ParsedArgs {
10
+ action: 'version' | 'help' | 'continue';
11
+ compression?: 'none' | 'toon';
12
+ configPath?: string;
13
+ host?: string;
14
+ interface?: 'stdio' | 'http';
15
+ logPath?: string | null;
16
+ port?: number;
17
+ tlsKeyPath?: string;
18
+ tlsCertPath?: string;
19
+ }
20
+ /**
21
+ * Parses command line arguments and returns the action to take
22
+ */
23
+ export declare const parseCommandLineArgs: (args?: string[]) => ParsedArgs;
24
+ /**
25
+ * Handles command line arguments and exits if necessary
26
+ */
27
+ export declare const handleCommandLineArgs: () => void;
@@ -0,0 +1,170 @@
1
+ import { dirname, join } from 'path';
2
+ import { readFileSync } from 'fs';
3
+ import { fileURLToPath } from 'url';
4
+ /**
5
+ * Gets the current version of the MCP server.
6
+ * @returns The version string from package.json
7
+ */
8
+ export const getVersion = () => {
9
+ const filename = fileURLToPath(import.meta.url);
10
+ const directoryName = dirname(filename);
11
+ const packageJsonPath = join(directoryName, '..', '..', 'package.json');
12
+ const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));
13
+ return packageJson.version;
14
+ };
15
+ /**
16
+ * Parses command line arguments and returns the action to take
17
+ */
18
+ // eslint-disable-next-line complexity
19
+ export const parseCommandLineArgs = (args = process.argv.slice(2)) => {
20
+ if (args.includes('--version') || args.includes('-v')) {
21
+ return { action: 'version' };
22
+ }
23
+ if (args.includes('--help') || args.includes('-h')) {
24
+ return { action: 'help' };
25
+ }
26
+ const result = { action: 'continue' };
27
+ const configIndex = args.indexOf('--config');
28
+ if (configIndex >= 0 && configIndex + 1 < args.length) {
29
+ result.configPath = args[configIndex + 1];
30
+ }
31
+ const interfaceIndex = args.indexOf('--interface');
32
+ if (interfaceIndex >= 0 && interfaceIndex + 1 < args.length) {
33
+ const value = args[interfaceIndex + 1];
34
+ if (value === 'stdio' || value === 'http') {
35
+ result.interface = value;
36
+ }
37
+ else {
38
+ throw new Error(`Invalid --interface value: "${value}". Must be "stdio" or "http".`);
39
+ }
40
+ }
41
+ const portIndex = args.indexOf('--port');
42
+ if (portIndex >= 0 && portIndex + 1 < args.length) {
43
+ const portValue = args[portIndex + 1];
44
+ const port = parseInt(portValue, 10);
45
+ if (Number.isNaN(port) || port < 1 || port > 65535) {
46
+ throw new Error(`Invalid --port value: "${portValue}". Must be an integer between 1 and 65535.`);
47
+ }
48
+ result.port = port;
49
+ }
50
+ const hostIndex = args.indexOf('--host');
51
+ if (hostIndex >= 0 && hostIndex + 1 < args.length) {
52
+ const hostValue = args[hostIndex + 1]?.trim();
53
+ if (!hostValue) {
54
+ throw new Error('Invalid --host value. Must be a non-empty host or IP address.');
55
+ }
56
+ result.host = hostValue;
57
+ }
58
+ const logIndex = args.indexOf('--log');
59
+ if (logIndex >= 0 && logIndex + 1 < args.length) {
60
+ const rawValue = args[logIndex + 1]?.trim();
61
+ if (!rawValue) {
62
+ throw new Error('Invalid --log value. Must be a non-empty directory path, "false" or "null".');
63
+ }
64
+ const normalized = rawValue.toLowerCase();
65
+ result.logPath = normalized === 'false' || normalized === 'null'
66
+ ? null
67
+ : rawValue;
68
+ }
69
+ const tlsKeyIndex = args.indexOf('--tls-key');
70
+ if (tlsKeyIndex >= 0 && tlsKeyIndex + 1 < args.length) {
71
+ result.tlsKeyPath = args[tlsKeyIndex + 1];
72
+ }
73
+ const tlsCertIndex = args.indexOf('--tls-cert');
74
+ if (tlsCertIndex >= 0 && tlsCertIndex + 1 < args.length) {
75
+ result.tlsCertPath = args[tlsCertIndex + 1];
76
+ }
77
+ const compressionIndex = args.indexOf('--compression');
78
+ if (compressionIndex >= 0 && compressionIndex + 1 < args.length) {
79
+ const value = args[compressionIndex + 1];
80
+ if (value === 'none' || value === 'toon') {
81
+ result.compression = value;
82
+ }
83
+ else {
84
+ throw new Error(`Invalid --compression value: "${value}". Must be "none" or "toon".`);
85
+ }
86
+ }
87
+ return result;
88
+ };
89
+ /**
90
+ * Handles command line arguments and exits if necessary
91
+ */
92
+ export const handleCommandLineArgs = () => {
93
+ const result = parseCommandLineArgs();
94
+ if (result.action === 'version') {
95
+ const version = getVersion();
96
+ process.stdout.write(`Synergy Design System MCP Server v${version}\n`);
97
+ process.exit(0);
98
+ }
99
+ if (result.action === 'help') {
100
+ const version = getVersion();
101
+ process.stdout.write(`Synergy Design System MCP Server v${version}
102
+
103
+ USAGE:
104
+ syn-mcp [OPTIONS]
105
+
106
+ DESCRIPTION:
107
+ Model Context Protocol (MCP) server for the Synergy Design System.
108
+ Provides tools for LLMs to interact with Synergy components, design tokens,
109
+ styles, and framework-specific guidance.
110
+
111
+ OPTIONS:
112
+ -h, --help Show this help message and exit
113
+ -v, --version Show version information and exit
114
+ --config <path> Path to a synergy-mcp.json configuration file
115
+ --interface <type> Server interface: stdio (default) or http
116
+ --host <address> HTTP bind address (default: 127.0.0.1)
117
+ --port <number> HTTP server port (default: 9119, used with --interface http)
118
+ --log <value> Tool-call logs directory path, or "false"/"null" to disable
119
+ --tls-key <path> Path to TLS private key file (enables HTTPS)
120
+ --tls-cert <path> Path to TLS certificate file (enables HTTPS)
121
+ --compression <mode> Response compression: none (default) or toon
122
+
123
+ EXAMPLES:
124
+ syn-mcp # Start the MCP server via stdio (default)
125
+ syn-mcp --version # Show version
126
+ syn-mcp --help # Show this help
127
+ syn-mcp --config ./synergy-mcp.json # Start with a custom config
128
+ syn-mcp --interface http # Start HTTP server on port 9119
129
+ syn-mcp --interface http --port 3000 # Start HTTP server on port 3000
130
+ syn-mcp --interface http --host 0.0.0.0 # Listen on all IPv4 interfaces
131
+ syn-mcp --log ./logs # Write tool-call logs to ./logs
132
+ syn-mcp --log false # Disable tool-call logging
133
+ syn-mcp --interface http --tls-key ./key.pem --tls-cert ./cert.pem # Start HTTPS server
134
+
135
+ CONFIGURATION FILE:
136
+ A synergy-mcp.json file can specify interface, port, host, and TLS settings:
137
+
138
+ {
139
+ "interface": "http",
140
+ "port": 3000,
141
+ "host": "0.0.0.0",
142
+ "logging": {
143
+ "localFile": {
144
+ "path": "./logs"
145
+ }
146
+ },
147
+ "tls": {
148
+ "keyPath": "./key.pem",
149
+ "certPath": "./cert.pem"
150
+ }
151
+ }
152
+
153
+ CLI flags override config file values.
154
+
155
+ ABOUT:
156
+ This server provides the following tools for LLMs:
157
+ • Component information and documentation
158
+ • Framework-specific guidance (React, Vue, Angular, Vanilla)
159
+ • Design tokens and styling information
160
+ • Asset and icon information
161
+ • Migration guides from DaVinci to Synergy
162
+ • Template and pattern information
163
+
164
+ For more information, visit:
165
+ https://github.com/synergy-design-system/synergy-design-system
166
+
167
+ `);
168
+ process.exit(0);
169
+ }
170
+ };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Encodes an unknown value using toon format.
3
+ * Returns the original value as JSON string if toon is unavailable.
4
+ * @param value The value to encode
5
+ * @returns The encoded toon format string, or JSON stringified value if encoder unavailable
6
+ */
7
+ export declare const encodeToToon: (value: unknown) => Promise<string>;
@@ -0,0 +1,45 @@
1
+ const hasToonEncode = (module) => {
2
+ if (typeof module !== 'object' || module === null) {
3
+ return false;
4
+ }
5
+ return ('encode' in module
6
+ && typeof module.encode === 'function');
7
+ };
8
+ let encoderPromise;
9
+ /**
10
+ * Loads the toon encoder from the optional @toon-format/toon dependency.
11
+ * If the package is not available, returns null.
12
+ * @returns The toon.encode function, or null if unavailable
13
+ */
14
+ const loadEncoder = async () => {
15
+ if (!encoderPromise) {
16
+ encoderPromise = (async () => {
17
+ try {
18
+ const module = await import('@toon-format/toon');
19
+ if (!hasToonEncode(module)) {
20
+ return null;
21
+ }
22
+ return module.encode;
23
+ }
24
+ catch {
25
+ // Package not installed or import failed
26
+ return null;
27
+ }
28
+ })();
29
+ }
30
+ return encoderPromise;
31
+ };
32
+ /**
33
+ * Encodes an unknown value using toon format.
34
+ * Returns the original value as JSON string if toon is unavailable.
35
+ * @param value The value to encode
36
+ * @returns The encoded toon format string, or JSON stringified value if encoder unavailable
37
+ */
38
+ export const encodeToToon = async (value) => {
39
+ const encoder = await loadEncoder();
40
+ if (!encoder) {
41
+ // Graceful fallback: return as JSON
42
+ return JSON.stringify(value);
43
+ }
44
+ return encoder(value);
45
+ };
@@ -1,80 +1,122 @@
1
- /**
2
- * Path where metadata is stored, relative to the MCP directory.
3
- */
4
- export declare const metaDataPath: string;
5
- /**
6
- * Path to the assets directory, relative to the MCP directory.
7
- */
8
- export declare const assetsPath: string;
9
- /**
10
- * Path to the components base directory, relative to the MCP directory.
11
- */
12
- export declare const componentBasePath: string;
13
- /**
14
- * Path to the components code directory, relative to the MCP directory.
15
- */
16
- export declare const componentPath: string;
17
- /**
18
- * Path to the components static directory, relative to the MCP directory.
19
- */
20
- export declare const componentStaticPath: string;
21
- /**
22
- * Path to the components migration directory, relative to the MCP directory.
23
- */
24
- export declare const componentMigrationPath: string;
25
- /**
26
- * The path where static information about components is stored, relative to the MCP directory.
27
- */
28
- export declare const staticComponentPath: string;
29
- /**
30
- * The path where setup related information is stored.
31
- */
32
- export declare const setupPath: string;
33
- /**
34
- * Path to the styles directory, relative to the MCP directory.
35
- */
36
- export declare const stylesPath: string;
37
- /**
38
- * Path to the angular directory, relative to the MCP directory.
39
- */
40
- export declare const angularPath: string;
41
- /**
42
- * Path to the react directory, relative to the MCP directory.
43
- */
44
- export declare const reactPath: string;
45
- /**
46
- * Path to the vue directory, relative to the MCP directory.
47
- */
48
- export declare const vuePath: string;
49
- /**
50
- * The path where static information about styles is stored, relative to the MCP directory.
51
- */
52
- export declare const staticStylesPath: string;
53
- /**
54
- * Path to the templates directory, relative to the MCP directory.
55
- */
56
- export declare const templatesPath: string;
57
- /**
58
- * Path to the tokens directory, relative to the MCP directory.
59
- */
60
- export declare const tokensPath: string;
61
- /**
62
- * Path to the davinci migration directory, relative to the MCP directory.
63
- */
64
- export declare const davinciMigrationPath: string;
65
- /**
66
- * Path to the static files directory, relative to the MCP directory.
67
- */
68
- export declare const staticPath: string;
69
- /**
70
- * Path to the migration directory, relative to the MCP directory.
71
- */
72
- export declare const staticMigrationPath: string;
73
- /**
74
- * Path to the fonts directory, relative to the MCP directory.
75
- */
76
- export declare const fontsPath: string;
77
- /**
78
- * List of supported frameworks.
79
- */
80
- export type Framework = 'react' | 'vue' | 'angular' | 'vanilla';
1
+ import { z } from 'zod';
2
+ /**
3
+ * Zod schema for the synergy-mcp.json configuration file.
4
+ * All fields are optional and fall back to built-in defaults when absent.
5
+ */
6
+ export declare const McpRuntimeConfigSchema: z.ZodObject<{
7
+ compression: z.ZodDefault<z.ZodEnum<{
8
+ none: "none";
9
+ toon: "toon";
10
+ }>>;
11
+ host: z.ZodDefault<z.ZodString>;
12
+ includeAiRules: z.ZodDefault<z.ZodBoolean>;
13
+ interface: z.ZodDefault<z.ZodEnum<{
14
+ stdio: "stdio";
15
+ http: "http";
16
+ }>>;
17
+ logging: z.ZodDefault<z.ZodObject<{
18
+ localFile: z.ZodDefault<z.ZodObject<{
19
+ path: z.ZodDefault<z.ZodNullable<z.ZodString>>;
20
+ }, z.core.$strip>>;
21
+ }, z.core.$strip>>;
22
+ port: z.ZodDefault<z.ZodNumber>;
23
+ tls: z.ZodDefault<z.ZodObject<{
24
+ certPath: z.ZodOptional<z.ZodString>;
25
+ keyPath: z.ZodOptional<z.ZodString>;
26
+ }, z.core.$strip>>;
27
+ tools: z.ZodDefault<z.ZodObject<{
28
+ assetInfo: z.ZodDefault<z.ZodObject<{
29
+ iconset: z.ZodDefault<z.ZodEnum<{
30
+ default: "default";
31
+ new: "new";
32
+ next: "next";
33
+ v2: "v2";
34
+ v3: "v3";
35
+ legacy: "legacy";
36
+ synergy2018: "synergy2018";
37
+ brand2018: "brand2018";
38
+ sick2018: "sick2018";
39
+ current: "current";
40
+ brand2025: "brand2025";
41
+ sick2025: "sick2025";
42
+ synergy2025: "synergy2025";
43
+ }>>;
44
+ }, z.core.$strip>>;
45
+ componentInfo: z.ZodDefault<z.ZodObject<{
46
+ framework: z.ZodDefault<z.ZodEnum<{
47
+ angular: "angular";
48
+ react: "react";
49
+ vue: "vue";
50
+ vanilla: "vanilla";
51
+ }>>;
52
+ layer: z.ZodDefault<z.ZodEnum<{
53
+ full: "full";
54
+ examples: "examples";
55
+ interface: "interface";
56
+ }>>;
57
+ }, z.core.$strip>>;
58
+ davinciMigrationInfo: z.ZodDefault<z.ZodObject<{
59
+ package: z.ZodDefault<z.ZodEnum<{
60
+ "basic-elements": "basic-elements";
61
+ "dashboard-elements": "dashboard-elements";
62
+ }>>;
63
+ }, z.core.$strip>>;
64
+ davinciMigrationList: z.ZodDefault<z.ZodObject<{
65
+ package: z.ZodDefault<z.ZodEnum<{
66
+ "basic-elements": "basic-elements";
67
+ "dashboard-elements": "dashboard-elements";
68
+ }>>;
69
+ }, z.core.$strip>>;
70
+ migrationInfo: z.ZodDefault<z.ZodObject<{
71
+ synergyPackage: z.ZodDefault<z.ZodEnum<{
72
+ components: "components";
73
+ assets: "assets";
74
+ styles: "styles";
75
+ tokens: "tokens";
76
+ }>>;
77
+ }, z.core.$strip>>;
78
+ migrationList: z.ZodDefault<z.ZodObject<{
79
+ synergyPackage: z.ZodDefault<z.ZodEnum<{
80
+ components: "components";
81
+ assets: "assets";
82
+ styles: "styles";
83
+ tokens: "tokens";
84
+ }>>;
85
+ }, z.core.$strip>>;
86
+ setup: z.ZodDefault<z.ZodObject<{
87
+ includeLimitations: z.ZodDefault<z.ZodBoolean>;
88
+ }, z.core.$strip>>;
89
+ tokenInfo: z.ZodDefault<z.ZodObject<{
90
+ type: z.ZodDefault<z.ZodEnum<{
91
+ css: "css";
92
+ javascript: "javascript";
93
+ sass: "sass";
94
+ }>>;
95
+ }, z.core.$strip>>;
96
+ }, z.core.$strip>>;
97
+ }, z.core.$strip>;
98
+ export type McpRuntimeConfig = z.infer<typeof McpRuntimeConfigSchema>;
99
+ /**
100
+ * Replaces the in-memory runtime configuration.
101
+ * Useful when startup code applies CLI overrides after file/default resolution.
102
+ *
103
+ * @param config The fully resolved runtime configuration to use globally.
104
+ */
105
+ export declare const setRuntimeConfig: (config: McpRuntimeConfig) => void;
106
+ /**
107
+ * Loads the runtime configuration from a JSON file at the given path, validates
108
+ * it against the schema, and caches the result. Each configured field is
109
+ * deep-merged with built-in defaults so partial configs are always safe.
110
+ *
111
+ * If no path is given, or if loading / validation fails, the built-in defaults
112
+ * are (re-)applied and a warning is written to stderr.
113
+ *
114
+ * @param configPath Optional absolute or relative path to a synergy-mcp.json file.
115
+ */
116
+ export declare const initializeRuntimeConfig: (configPath?: string) => Promise<void>;
117
+ /**
118
+ * Returns the current runtime configuration.
119
+ * Falls back to built-in defaults if {@link initializeRuntimeConfig} has not
120
+ * been called yet.
121
+ */
122
+ export declare const getRuntimeConfig: () => McpRuntimeConfig;