@synergy-design-system/mcp 0.1.0 → 1.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 (449) hide show
  1. package/CHANGELOG.md +1 -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 +52 -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 +108 -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 +1 -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 +189 -0
  96. package/metadata/packages/assets/README.md +78 -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 +64 -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/static/CHANGELOG.md +1100 -0
  364. package/metadata/packages/components/static/LIMITATIONS.md +269 -0
  365. package/metadata/packages/components/static/README.md +248 -0
  366. package/metadata/packages/react/LIMITATIONS.md +31 -0
  367. package/metadata/packages/react/README.md +262 -0
  368. package/metadata/packages/styles/CHANGELOG.md +76 -0
  369. package/metadata/packages/styles/README.md +132 -0
  370. package/metadata/packages/styles/index.css +309 -0
  371. package/metadata/packages/styles/link-list.css +47 -0
  372. package/metadata/packages/styles/link.css +79 -0
  373. package/metadata/packages/styles/tables.css +143 -0
  374. package/metadata/packages/styles/typography.css +52 -0
  375. package/metadata/packages/tokens/CHANGELOG.md +431 -0
  376. package/metadata/packages/tokens/README.md +408 -0
  377. package/metadata/packages/tokens/dark.css +268 -0
  378. package/metadata/packages/tokens/index.js +1294 -0
  379. package/metadata/packages/tokens/light.css +268 -0
  380. package/metadata/packages/vue/LIMITATIONS.md +53 -0
  381. package/metadata/packages/vue/README.md +252 -0
  382. package/metadata/static/angular/index.md +6 -0
  383. package/metadata/static/assets/index.md +10 -0
  384. package/metadata/static/component-info/index.md +24 -0
  385. package/metadata/static/component-list/index.md +34 -0
  386. package/metadata/static/components/index.md +10 -0
  387. package/metadata/static/components/syn-accordion/docs.md +428 -0
  388. package/metadata/static/components/syn-alert/docs.md +231 -0
  389. package/metadata/static/components/syn-badge/docs.md +128 -0
  390. package/metadata/static/components/syn-breadcrumb/docs.md +265 -0
  391. package/metadata/static/components/syn-breadcrumb-item/docs.md +49 -0
  392. package/metadata/static/components/syn-button/docs.md +402 -0
  393. package/metadata/static/components/syn-card/docs.md +273 -0
  394. package/metadata/static/components/syn-checkbox/docs.md +77 -0
  395. package/metadata/static/components/syn-combobox/docs.md +2402 -0
  396. package/metadata/static/components/syn-details/docs.md +220 -0
  397. package/metadata/static/components/syn-dialog/docs.md +222 -0
  398. package/metadata/static/components/syn-divider/docs.md +77 -0
  399. package/metadata/static/components/syn-drawer/docs.md +271 -0
  400. package/metadata/static/components/syn-dropdown/docs.md +316 -0
  401. package/metadata/static/components/syn-file/docs.md +215 -0
  402. package/metadata/static/components/syn-header/docs.md +134 -0
  403. package/metadata/static/components/syn-icon/docs.md +177 -0
  404. package/metadata/static/components/syn-icon-button/docs.md +142 -0
  405. package/metadata/static/components/syn-input/docs.md +460 -0
  406. package/metadata/static/components/syn-menu/docs.md +162 -0
  407. package/metadata/static/components/syn-menu-item/docs.md +196 -0
  408. package/metadata/static/components/syn-menu-label/docs.md +29 -0
  409. package/metadata/static/components/syn-nav-item/docs.md +161 -0
  410. package/metadata/static/components/syn-optgroup/docs.md +167 -0
  411. package/metadata/static/components/syn-option/docs.md +137 -0
  412. package/metadata/static/components/syn-prio-nav/docs.md +54 -0
  413. package/metadata/static/components/syn-progress-bar/docs.md +77 -0
  414. package/metadata/static/components/syn-progress-ring/docs.md +89 -0
  415. package/metadata/static/components/syn-radio/docs.md +123 -0
  416. package/metadata/static/components/syn-radio-group/docs.md +363 -0
  417. package/metadata/static/components/syn-range/docs.md +419 -0
  418. package/metadata/static/components/syn-range-tick/docs.md +110 -0
  419. package/metadata/static/components/syn-select/docs.md +730 -0
  420. package/metadata/static/components/syn-side-nav/docs.md +593 -0
  421. package/metadata/static/components/syn-spinner/docs.md +45 -0
  422. package/metadata/static/components/syn-switch/docs.md +74 -0
  423. package/metadata/static/components/syn-tab/docs.md +47 -0
  424. package/metadata/static/components/syn-tab-group/docs.md +1094 -0
  425. package/metadata/static/components/syn-tab-panel/docs.md +91 -0
  426. package/metadata/static/components/syn-tag/docs.md +50 -0
  427. package/metadata/static/components/syn-textarea/docs.md +215 -0
  428. package/metadata/static/components/syn-tooltip/docs.md +144 -0
  429. package/metadata/static/components/syn-validate/docs.md +225 -0
  430. package/metadata/static/migration/index.md +10 -0
  431. package/metadata/static/react/index.md +8 -0
  432. package/metadata/static/setup/icon-usage.md +239 -0
  433. package/metadata/static/setup/prerequisites.md +171 -0
  434. package/metadata/static/styles/index.md +11 -0
  435. package/metadata/static/styles/syn-body.md +5 -0
  436. package/metadata/static/styles/syn-heading.md +5 -0
  437. package/metadata/static/styles/syn-link-list.md +325 -0
  438. package/metadata/static/styles/syn-link.md +156 -0
  439. package/metadata/static/styles/syn-table-cell.md +125 -0
  440. package/metadata/static/styles/syn-table.md +201 -0
  441. package/metadata/static/styles/syn-weight.md +5 -0
  442. package/metadata/static/templates/appshell.md +2061 -0
  443. package/metadata/static/templates/breadcrumb.md +375 -0
  444. package/metadata/static/templates/footer.md +342 -0
  445. package/metadata/static/templates/forms.md +369 -0
  446. package/metadata/static/templates/index.md +9 -0
  447. package/metadata/static/templates/table.md +1426 -0
  448. package/metadata/static/vue/index.md +6 -0
  449. package/package.json +109 -4
@@ -0,0 +1,460 @@
1
+ ## Default
2
+
3
+ Inputs collect data from the user.
4
+
5
+ ```html
6
+ <syn-input spellcheck="" title="" type="text" size="medium" form=""></syn-input>
7
+ ```
8
+
9
+ ---
10
+
11
+ ## Labels
12
+
13
+ Use the label attribute to give the input an accessible label. For labels that contain HTML, use the label slot instead.
14
+
15
+ ```html
16
+ <syn-input
17
+ label="What is your name?"
18
+ title=""
19
+ type="text"
20
+ size="medium"
21
+ form=""
22
+ ></syn-input>
23
+ ```
24
+
25
+ ---
26
+
27
+ ## Help Text
28
+
29
+ Add descriptive help text to a switch with the help-text attribute. For help texts that contain HTML, use the help-text slot instead.The help-text attribute should not be used to display error messages. To handle validation and error messaging, use syn-validate for proper error management.
30
+
31
+ ```html
32
+ <syn-input
33
+ label="Nickname"
34
+ help-text="What would you like people to call you?"
35
+ title=""
36
+ type="text"
37
+ size="medium"
38
+ form=""
39
+ ></syn-input>
40
+ ```
41
+
42
+ ---
43
+
44
+ ## Placeholders
45
+
46
+ Use the placeholder attribute to add a placeholder.
47
+
48
+ ```html
49
+ <syn-input
50
+ placeholder="Type something"
51
+ title=""
52
+ type="text"
53
+ size="medium"
54
+ form=""
55
+ ></syn-input>
56
+ ```
57
+
58
+ ---
59
+
60
+ ## Clearable
61
+
62
+ Add the clearable attribute to add a clear button when the input has content.
63
+
64
+ ```html
65
+ <syn-input
66
+ value="Clearable"
67
+ placeholder="Clearable"
68
+ clearable=""
69
+ title=""
70
+ type="text"
71
+ size="medium"
72
+ form=""
73
+ ></syn-input>
74
+ ```
75
+
76
+ ---
77
+
78
+ ## Toggle Password
79
+
80
+ Add the password-toggle attribute to add a toggle button that will show the password when activated.
81
+
82
+ ```html
83
+ <syn-input
84
+ type="password"
85
+ placeholder="Password Toggle"
86
+ password-toggle=""
87
+ title=""
88
+ size="medium"
89
+ form=""
90
+ ></syn-input>
91
+ ```
92
+
93
+ ---
94
+
95
+ ## Readonly Inputs
96
+
97
+ Add the read-only attribute to draw a read-only input.
98
+
99
+ ```html
100
+ <syn-input
101
+ value="Readonly content"
102
+ readonly=""
103
+ title=""
104
+ type="text"
105
+ size="medium"
106
+ form=""
107
+ ></syn-input>
108
+ ```
109
+
110
+ ---
111
+
112
+ ## Focus
113
+
114
+ The focus attribute provides feedback to the users, informing them that the input component is ready for use.
115
+
116
+ ```html
117
+ <div style="padding: 5px">
118
+ <form>
119
+ <syn-input
120
+ help-text="This input is focused."
121
+ label="Label"
122
+ placeholder="Insert text here..."
123
+ title=""
124
+ type="text"
125
+ size="medium"
126
+ form=""
127
+ ></syn-input>
128
+ </form>
129
+ </div>
130
+ ```
131
+
132
+ ---
133
+
134
+ ## Disabled
135
+
136
+ Use the disabled attribute to disable an input.
137
+
138
+ ```html
139
+ <syn-input
140
+ placeholder="Disabled"
141
+ help-text="Help Text"
142
+ label="Label"
143
+ disabled=""
144
+ title=""
145
+ type="text"
146
+ size="medium"
147
+ form=""
148
+ >
149
+ <syn-icon
150
+ name="house"
151
+ slot="prefix"
152
+ aria-hidden="true"
153
+ library="default"
154
+ ></syn-icon>
155
+ <syn-icon
156
+ name="chat"
157
+ slot="suffix"
158
+ aria-hidden="true"
159
+ library="default"
160
+ ></syn-icon>
161
+ </syn-input>
162
+ ```
163
+
164
+ ---
165
+
166
+ ## Sizes
167
+
168
+ Use the size attribute to change an input's size.
169
+
170
+ ```html
171
+ <syn-input
172
+ placeholder="Small"
173
+ size="small"
174
+ title=""
175
+ type="text"
176
+ form=""
177
+ ></syn-input
178
+ ><br />
179
+ <syn-input
180
+ placeholder="Medium"
181
+ size="medium"
182
+ title=""
183
+ type="text"
184
+ form=""
185
+ ></syn-input
186
+ ><br />
187
+ <syn-input
188
+ placeholder="Large"
189
+ size="large"
190
+ title=""
191
+ type="text"
192
+ form=""
193
+ ></syn-input>
194
+ ```
195
+
196
+ ---
197
+
198
+ ## Invalid
199
+
200
+ The invalid status is used to warn the user that the input is invalid. For example, if the entry of text is mandatory and nothing has been entered or if a text has been entered that does not have the correct format.
201
+
202
+ ```html
203
+ <form class="custom-validity">
204
+ <syn-input
205
+ help-text="This input is required."
206
+ label="Label"
207
+ placeholder="Insert text here..."
208
+ required=""
209
+ title=""
210
+ type="text"
211
+ size="medium"
212
+ form=""
213
+ ></syn-input>
214
+ <syn-button type="submit" variant="filled" title="" size="medium"
215
+ >Submit</syn-button
216
+ >
217
+ </form>
218
+ <style>
219
+ .custom-validity {
220
+ display: flex;
221
+ flex-direction: column;
222
+ gap: 1rem;
223
+ }
224
+ syn-button {
225
+ align-self: flex-start;
226
+ }
227
+ </style>
228
+ ```
229
+
230
+ ---
231
+
232
+ ## Input Types
233
+
234
+ The type attribute controls the type of input the browser renders.
235
+
236
+ ```html
237
+ <syn-input
238
+ type="email"
239
+ placeholder="Email"
240
+ title=""
241
+ size="medium"
242
+ form=""
243
+ ></syn-input
244
+ ><br />
245
+ <syn-input
246
+ type="number"
247
+ placeholder="Number"
248
+ title=""
249
+ size="medium"
250
+ form=""
251
+ ></syn-input
252
+ ><br />
253
+ <syn-input
254
+ type="date"
255
+ placeholder="Date"
256
+ title=""
257
+ size="medium"
258
+ form=""
259
+ ></syn-input>
260
+ ```
261
+
262
+ ---
263
+
264
+ ## Prefix Suffix Text And Icons
265
+
266
+ Use the prefix and suffix slots to add text and icons.
267
+
268
+ ```html
269
+ <syn-input placeholder="Small" size="small" title="" type="text" form="">
270
+ <span slot="prefix">prefix</span>
271
+ <span slot="suffix">suffix</span>
272
+ </syn-input>
273
+ <br />
274
+ <syn-input placeholder="Medium" size="medium" title="" type="text" form="">
275
+ <span slot="prefix">prefix</span>
276
+ <span slot="suffix">suffix</span>
277
+ </syn-input>
278
+ <br />
279
+ <syn-input placeholder="Large" size="large" title="" type="text" form="">
280
+ <span slot="prefix">prefix</span>
281
+ <span slot="suffix">suffix</span>
282
+ </syn-input>
283
+ <br />
284
+ <syn-input placeholder="Small" size="small" title="" type="text" form="">
285
+ <syn-icon
286
+ name="wallpaper"
287
+ slot="prefix"
288
+ aria-hidden="true"
289
+ library="default"
290
+ ></syn-icon>
291
+ <syn-icon
292
+ name="wallpaper"
293
+ slot="suffix"
294
+ aria-hidden="true"
295
+ library="default"
296
+ ></syn-icon>
297
+ </syn-input>
298
+ <br />
299
+ <syn-input placeholder="Medium" size="medium" title="" type="text" form="">
300
+ <syn-icon
301
+ name="wallpaper"
302
+ slot="prefix"
303
+ aria-hidden="true"
304
+ library="default"
305
+ ></syn-icon>
306
+ <syn-icon
307
+ name="wallpaper"
308
+ slot="suffix"
309
+ aria-hidden="true"
310
+ library="default"
311
+ ></syn-icon>
312
+ </syn-input>
313
+ <br />
314
+ <syn-input placeholder="Large" size="large" title="" type="text" form="">
315
+ <syn-icon
316
+ name="wallpaper"
317
+ slot="prefix"
318
+ aria-hidden="true"
319
+ library="default"
320
+ ></syn-icon>
321
+ <syn-icon
322
+ name="wallpaper"
323
+ slot="suffix"
324
+ aria-hidden="true"
325
+ library="default"
326
+ ></syn-icon>
327
+ </syn-input>
328
+ ```
329
+
330
+ ---
331
+
332
+ ## Customizing Label Position
333
+
334
+ Use to customize the way form controls are drawn. This example uses CSS grid to position the label to the left of the control, but the possible orientations are nearly endless. The same technique works for inputs, textareas, radio groups, and similar form controls.
335
+
336
+ ```html
337
+ <syn-input
338
+ class="label-on-left"
339
+ label="Name"
340
+ help-text="Enter your name"
341
+ title=""
342
+ type="text"
343
+ size="medium"
344
+ form=""
345
+ ></syn-input>
346
+ <syn-input
347
+ class="label-on-left"
348
+ label="Email"
349
+ type="email"
350
+ help-text="Enter your email"
351
+ title=""
352
+ size="medium"
353
+ form=""
354
+ ></syn-input>
355
+ <syn-textarea
356
+ class="label-on-left"
357
+ label="Bio"
358
+ help-text="Tell us something about yourself"
359
+ title=""
360
+ size="medium"
361
+ form=""
362
+ ></syn-textarea>
363
+
364
+ <style>
365
+ .label-on-left {
366
+ --label-width: 3.75rem;
367
+ --gap-width: 1rem;
368
+ }
369
+
370
+ .label-on-left + .label-on-left {
371
+ margin-top: var(--syn-spacing-medium);
372
+ }
373
+
374
+ .label-on-left::part(form-control) {
375
+ display: grid;
376
+ grid: auto / var(--label-width) 1fr;
377
+ gap: var(--syn-spacing-3x-small) var(--gap-width);
378
+ align-items: center;
379
+ }
380
+
381
+ .label-on-left::part(form-control-label) {
382
+ text-align: right;
383
+ }
384
+
385
+ .label-on-left::part(form-control-help-text) {
386
+ grid-column-start: 2;
387
+ }
388
+ </style>
389
+ ```
390
+
391
+ ---
392
+
393
+ ## Stepper
394
+
395
+ The Stepper (Input type number) attribute has additional step buttons at the right side for incrementing and decrementing values. It is ideal for situations where users need to adjust quantities or settings within a range.
396
+
397
+ ```html
398
+ <syn-input
399
+ type="number"
400
+ min="0"
401
+ max="10"
402
+ value="0"
403
+ title=""
404
+ size="medium"
405
+ form=""
406
+ ></syn-input>
407
+ <br />
408
+ <syn-input
409
+ type="number"
410
+ min="0"
411
+ max="10"
412
+ value="2"
413
+ title=""
414
+ size="medium"
415
+ form=""
416
+ ></syn-input>
417
+ <br />
418
+ <syn-input
419
+ type="number"
420
+ min="0"
421
+ max="10"
422
+ value="10"
423
+ title=""
424
+ size="medium"
425
+ form=""
426
+ ></syn-input>
427
+ ```
428
+
429
+ ---
430
+
431
+ ## Stepper Input Handling
432
+
433
+ The numeric-strategy property defines how numeric input is handled during user interaction. It lets you select between the browsers native control and Synergy’s enhanced number-input logic.native: Uses the browser’s built-in number control. Values are not auto-clamped, and stepping/validation can vary across browsers.modern: Provides a more intuitive and predictable behavior by automatically clamping values to the nearest min/max value, including those bounds when stepping, and ignoring the step attribute during validation.
434
+
435
+ ```html
436
+ <syn-input
437
+ label="Native (min and max)"
438
+ max="10"
439
+ min="0"
440
+ numeric-strategy="native"
441
+ step="0.3"
442
+ type="number"
443
+ value="0"
444
+ title=""
445
+ size="medium"
446
+ form=""
447
+ ></syn-input>
448
+ <syn-input
449
+ label="Modern (min and max)"
450
+ max="10"
451
+ min="0"
452
+ numeric-strategy="modern"
453
+ step="0.3"
454
+ type="number"
455
+ value="0"
456
+ title=""
457
+ size="medium"
458
+ form=""
459
+ ></syn-input>
460
+ ```
@@ -0,0 +1,162 @@
1
+ ## Default
2
+
3
+ Menus provide a list of options for the user to choose from.You can use menu items, menu labels, and dividers to compose a menu. Menus support keyboard interactions, including type-to-select an option.
4
+
5
+ ```html
6
+ <div style="width: 200px">
7
+ <syn-menu role="menu">
8
+ <syn-menu-item
9
+ value="undo"
10
+ role="menuitem"
11
+ aria-disabled="false"
12
+ tabindex="0"
13
+ >Undo</syn-menu-item
14
+ >
15
+ <syn-menu-item
16
+ value="redo"
17
+ role="menuitem"
18
+ aria-disabled="false"
19
+ tabindex="-1"
20
+ >Redo</syn-menu-item
21
+ >
22
+ <syn-divider role="separator" aria-orientation="horizontal"></syn-divider>
23
+ <syn-menu-item
24
+ value="cut"
25
+ role="menuitem"
26
+ aria-disabled="false"
27
+ tabindex="-1"
28
+ >Cut</syn-menu-item
29
+ >
30
+ <syn-menu-item
31
+ value="copy"
32
+ role="menuitem"
33
+ aria-disabled="false"
34
+ tabindex="-1"
35
+ >Copy</syn-menu-item
36
+ >
37
+ <syn-menu-item
38
+ value="paste"
39
+ role="menuitem"
40
+ aria-disabled="false"
41
+ tabindex="-1"
42
+ >Paste</syn-menu-item
43
+ >
44
+ <syn-menu-item
45
+ value="delete"
46
+ role="menuitem"
47
+ aria-disabled="false"
48
+ tabindex="-1"
49
+ >Delete</syn-menu-item
50
+ >
51
+ </syn-menu>
52
+ </div>
53
+ ```
54
+
55
+ ---
56
+
57
+ ## In Dropdowns
58
+
59
+ Menus work really well when used inside dropdowns.
60
+
61
+ ```html
62
+ <div style="position: relative">
63
+ <syn-dropdown placement="bottom-start" open="">
64
+ <syn-button slot="trigger" caret="" title="" variant="outline" size="medium"
65
+ >Edit</syn-button
66
+ >
67
+ <syn-menu style="width: 200px" role="menu">
68
+ <syn-menu-item
69
+ value="cut"
70
+ role="menuitem"
71
+ aria-disabled="false"
72
+ tabindex="0"
73
+ >Cut</syn-menu-item
74
+ >
75
+ <syn-menu-item
76
+ value="copy"
77
+ role="menuitem"
78
+ aria-disabled="false"
79
+ tabindex="-1"
80
+ >Copy</syn-menu-item
81
+ >
82
+ <syn-menu-item
83
+ value="paste"
84
+ role="menuitem"
85
+ aria-disabled="false"
86
+ tabindex="-1"
87
+ >Paste</syn-menu-item
88
+ >
89
+ </syn-menu>
90
+ </syn-dropdown>
91
+ </div>
92
+ ```
93
+
94
+ ---
95
+
96
+ ## Submenus
97
+
98
+ To create a submenu, nest an <syn-menu slot="submenu"> in any menu item.
99
+
100
+ ```html
101
+ <syn-menu style="max-width: 200px" role="menu">
102
+ <syn-menu-item value="undo" role="menuitem" aria-disabled="false" tabindex="0"
103
+ >Undo</syn-menu-item
104
+ >
105
+ <syn-menu-item
106
+ value="redo"
107
+ role="menuitem"
108
+ aria-disabled="false"
109
+ tabindex="-1"
110
+ >Redo</syn-menu-item
111
+ >
112
+
113
+ <syn-divider role="separator" aria-orientation="horizontal"></syn-divider>
114
+
115
+ <syn-menu-item value="cut" role="menuitem" aria-disabled="false" tabindex="-1"
116
+ >Cut</syn-menu-item
117
+ >
118
+ <syn-menu-item
119
+ value="copy"
120
+ role="menuitem"
121
+ aria-disabled="false"
122
+ tabindex="-1"
123
+ >Copy</syn-menu-item
124
+ >
125
+ <syn-menu-item
126
+ value="paste"
127
+ role="menuitem"
128
+ aria-disabled="false"
129
+ tabindex="-1"
130
+ >Paste</syn-menu-item
131
+ >
132
+
133
+ <syn-divider role="separator" aria-orientation="horizontal"></syn-divider>
134
+
135
+ <syn-menu-item role="menuitem" aria-disabled="false" tabindex="-1">
136
+ Find
137
+ <syn-menu slot="submenu" role="menu">
138
+ <syn-menu-item
139
+ value="find"
140
+ role="menuitem"
141
+ aria-disabled="false"
142
+ tabindex="0"
143
+ >Find…</syn-menu-item
144
+ >
145
+ <syn-menu-item
146
+ value="find-previous"
147
+ role="menuitem"
148
+ aria-disabled="false"
149
+ tabindex="-1"
150
+ >Find Next</syn-menu-item
151
+ >
152
+ <syn-menu-item
153
+ value="find-next"
154
+ role="menuitem"
155
+ aria-disabled="false"
156
+ tabindex="-1"
157
+ >Find Previous</syn-menu-item
158
+ >
159
+ </syn-menu>
160
+ </syn-menu-item>
161
+ </syn-menu>
162
+ ```