@central-design-system/skills 4.0.0-alpha.6

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 (321) hide show
  1. package/.claude-plugin/plugin.json +6 -0
  2. package/README.md +218 -0
  3. package/bin/cds-skills.mjs +124 -0
  4. package/package.json +33 -0
  5. package/skills/cds-builder/GENERATION.md +44 -0
  6. package/skills/cds-builder/SKILL.md +308 -0
  7. package/skills/cds-builder/references/component-decision-tree.md +310 -0
  8. package/skills/cds-builder/references/components/cds-app/api.md +19 -0
  9. package/skills/cds-builder/references/components/cds-app/tokens.md +12 -0
  10. package/skills/cds-builder/references/components/cds-autocomplete/api.md +155 -0
  11. package/skills/cds-builder/references/components/cds-autocomplete/examples.md +447 -0
  12. package/skills/cds-builder/references/components/cds-autocomplete/guidelines.md +10 -0
  13. package/skills/cds-builder/references/components/cds-autocomplete/tokens.md +19 -0
  14. package/skills/cds-builder/references/components/cds-avatar/api.md +35 -0
  15. package/skills/cds-builder/references/components/cds-avatar/examples.md +240 -0
  16. package/skills/cds-builder/references/components/cds-avatar/guidelines.md +10 -0
  17. package/skills/cds-builder/references/components/cds-avatar/tokens.md +32 -0
  18. package/skills/cds-builder/references/components/cds-badge/api.md +44 -0
  19. package/skills/cds-builder/references/components/cds-badge/examples.md +332 -0
  20. package/skills/cds-builder/references/components/cds-badge/guidelines.md +10 -0
  21. package/skills/cds-builder/references/components/cds-badge/tokens.md +32 -0
  22. package/skills/cds-builder/references/components/cds-breadcrumbs/api.md +83 -0
  23. package/skills/cds-builder/references/components/cds-breadcrumbs/examples.md +219 -0
  24. package/skills/cds-builder/references/components/cds-breadcrumbs/guidelines.md +10 -0
  25. package/skills/cds-builder/references/components/cds-breadcrumbs/tokens.md +24 -0
  26. package/skills/cds-builder/references/components/cds-button/api.md +66 -0
  27. package/skills/cds-builder/references/components/cds-button/examples.md +324 -0
  28. package/skills/cds-builder/references/components/cds-button/guidelines.md +10 -0
  29. package/skills/cds-builder/references/components/cds-button/tokens.md +190 -0
  30. package/skills/cds-builder/references/components/cds-button-group/api.md +27 -0
  31. package/skills/cds-builder/references/components/cds-button-group/examples.md +33 -0
  32. package/skills/cds-builder/references/components/cds-button-group/tokens.md +17 -0
  33. package/skills/cds-builder/references/components/cds-button-toggle/api.md +51 -0
  34. package/skills/cds-builder/references/components/cds-button-toggle/examples.md +278 -0
  35. package/skills/cds-builder/references/components/cds-button-toggle/guidelines.md +10 -0
  36. package/skills/cds-builder/references/components/cds-button-toggle/tokens.md +13 -0
  37. package/skills/cds-builder/references/components/cds-card/api.md +221 -0
  38. package/skills/cds-builder/references/components/cds-card/examples.md +652 -0
  39. package/skills/cds-builder/references/components/cds-card/guidelines.md +10 -0
  40. package/skills/cds-builder/references/components/cds-card/tokens.md +46 -0
  41. package/skills/cds-builder/references/components/cds-carousel/api.md +107 -0
  42. package/skills/cds-builder/references/components/cds-carousel/examples.md +444 -0
  43. package/skills/cds-builder/references/components/cds-carousel/guidelines.md +10 -0
  44. package/skills/cds-builder/references/components/cds-carousel/tokens.md +17 -0
  45. package/skills/cds-builder/references/components/cds-checkbox/api.md +93 -0
  46. package/skills/cds-builder/references/components/cds-checkbox/examples.md +319 -0
  47. package/skills/cds-builder/references/components/cds-checkbox/guidelines.md +10 -0
  48. package/skills/cds-builder/references/components/cds-checkbox/tokens.md +18 -0
  49. package/skills/cds-builder/references/components/cds-checkbox-button/api.md +56 -0
  50. package/skills/cds-builder/references/components/cds-checkbox-button/examples.md +29 -0
  51. package/skills/cds-builder/references/components/cds-checkbox-button/tokens.md +56 -0
  52. package/skills/cds-builder/references/components/cds-combobox/api.md +158 -0
  53. package/skills/cds-builder/references/components/cds-combobox/examples.md +264 -0
  54. package/skills/cds-builder/references/components/cds-combobox/guidelines.md +10 -0
  55. package/skills/cds-builder/references/components/cds-combobox/tokens.md +19 -0
  56. package/skills/cds-builder/references/components/cds-counter/api.md +24 -0
  57. package/skills/cds-builder/references/components/cds-counter/examples.md +93 -0
  58. package/skills/cds-builder/references/components/cds-counter/tokens.md +11 -0
  59. package/skills/cds-builder/references/components/cds-date-input/api.md +151 -0
  60. package/skills/cds-builder/references/components/cds-date-input/examples.md +479 -0
  61. package/skills/cds-builder/references/components/cds-date-input/guidelines.md +10 -0
  62. package/skills/cds-builder/references/components/cds-date-input/tokens.md +16 -0
  63. package/skills/cds-builder/references/components/cds-date-picker/api.md +63 -0
  64. package/skills/cds-builder/references/components/cds-date-picker/examples.md +394 -0
  65. package/skills/cds-builder/references/components/cds-date-picker/guidelines.md +10 -0
  66. package/skills/cds-builder/references/components/cds-date-picker/tokens.md +66 -0
  67. package/skills/cds-builder/references/components/cds-defaults-provider/api.md +21 -0
  68. package/skills/cds-builder/references/components/cds-description/api.md +22 -0
  69. package/skills/cds-builder/references/components/cds-description/examples.md +69 -0
  70. package/skills/cds-builder/references/components/cds-description/tokens.md +11 -0
  71. package/skills/cds-builder/references/components/cds-divider/api.md +29 -0
  72. package/skills/cds-builder/references/components/cds-divider/examples.md +374 -0
  73. package/skills/cds-builder/references/components/cds-divider/guidelines.md +10 -0
  74. package/skills/cds-builder/references/components/cds-divider/tokens.md +38 -0
  75. package/skills/cds-builder/references/components/cds-drawer/api.md +53 -0
  76. package/skills/cds-builder/references/components/cds-drawer/examples.md +432 -0
  77. package/skills/cds-builder/references/components/cds-drawer/guidelines.md +9 -0
  78. package/skills/cds-builder/references/components/cds-drawer/tokens.md +27 -0
  79. package/skills/cds-builder/references/components/cds-empty-state/api.md +55 -0
  80. package/skills/cds-builder/references/components/cds-empty-state/examples.md +330 -0
  81. package/skills/cds-builder/references/components/cds-empty-state/guidelines.md +9 -0
  82. package/skills/cds-builder/references/components/cds-empty-state/tokens.md +25 -0
  83. package/skills/cds-builder/references/components/cds-expandable-panel/api.md +157 -0
  84. package/skills/cds-builder/references/components/cds-expandable-panel/examples.md +569 -0
  85. package/skills/cds-builder/references/components/cds-expandable-panel/guidelines.md +10 -0
  86. package/skills/cds-builder/references/components/cds-expandable-panel/tokens.md +34 -0
  87. package/skills/cds-builder/references/components/cds-field/api.md +62 -0
  88. package/skills/cds-builder/references/components/cds-field/examples.md +202 -0
  89. package/skills/cds-builder/references/components/cds-field/tokens.md +94 -0
  90. package/skills/cds-builder/references/components/cds-file-input/api.md +109 -0
  91. package/skills/cds-builder/references/components/cds-file-input/examples.md +368 -0
  92. package/skills/cds-builder/references/components/cds-file-input/guidelines.md +10 -0
  93. package/skills/cds-builder/references/components/cds-file-input/tokens.md +15 -0
  94. package/skills/cds-builder/references/components/cds-file-upload/api.md +296 -0
  95. package/skills/cds-builder/references/components/cds-file-upload/examples.md +411 -0
  96. package/skills/cds-builder/references/components/cds-file-upload/guidelines.md +10 -0
  97. package/skills/cds-builder/references/components/cds-file-upload/tokens.md +50 -0
  98. package/skills/cds-builder/references/components/cds-footer/api.md +35 -0
  99. package/skills/cds-builder/references/components/cds-footer/examples.md +219 -0
  100. package/skills/cds-builder/references/components/cds-footer/guidelines.md +9 -0
  101. package/skills/cds-builder/references/components/cds-footer/tokens.md +14 -0
  102. package/skills/cds-builder/references/components/cds-form/api.md +48 -0
  103. package/skills/cds-builder/references/components/cds-form/examples.md +552 -0
  104. package/skills/cds-builder/references/components/cds-form/guidelines.md +10 -0
  105. package/skills/cds-builder/references/components/cds-form/tokens.md +15 -0
  106. package/skills/cds-builder/references/components/cds-functional-button/api.md +34 -0
  107. package/skills/cds-builder/references/components/cds-functional-button/examples.md +254 -0
  108. package/skills/cds-builder/references/components/cds-functional-button/guidelines.md +10 -0
  109. package/skills/cds-builder/references/components/cds-functional-button/tokens.md +35 -0
  110. package/skills/cds-builder/references/components/cds-grid/api.md +66 -0
  111. package/skills/cds-builder/references/components/cds-grid/examples.md +687 -0
  112. package/skills/cds-builder/references/components/cds-grid/guidelines.md +9 -0
  113. package/skills/cds-builder/references/components/cds-header/api.md +35 -0
  114. package/skills/cds-builder/references/components/cds-header/examples.md +345 -0
  115. package/skills/cds-builder/references/components/cds-header/guidelines.md +9 -0
  116. package/skills/cds-builder/references/components/cds-header/tokens.md +13 -0
  117. package/skills/cds-builder/references/components/cds-highlight/api.md +22 -0
  118. package/skills/cds-builder/references/components/cds-highlight/examples.md +313 -0
  119. package/skills/cds-builder/references/components/cds-highlight/guidelines.md +10 -0
  120. package/skills/cds-builder/references/components/cds-highlight/tokens.md +18 -0
  121. package/skills/cds-builder/references/components/cds-icon/api.md +33 -0
  122. package/skills/cds-builder/references/components/cds-icon/examples.md +272 -0
  123. package/skills/cds-builder/references/components/cds-icon/guidelines.md +10 -0
  124. package/skills/cds-builder/references/components/cds-icon/tokens.md +30 -0
  125. package/skills/cds-builder/references/components/cds-image/api.md +67 -0
  126. package/skills/cds-builder/references/components/cds-image/examples.md +437 -0
  127. package/skills/cds-builder/references/components/cds-image/guidelines.md +10 -0
  128. package/skills/cds-builder/references/components/cds-image/tokens.md +14 -0
  129. package/skills/cds-builder/references/components/cds-input/api.md +80 -0
  130. package/skills/cds-builder/references/components/cds-input/examples.md +205 -0
  131. package/skills/cds-builder/references/components/cds-input/tokens.md +108 -0
  132. package/skills/cds-builder/references/components/cds-label/api.md +25 -0
  133. package/skills/cds-builder/references/components/cds-label/examples.md +72 -0
  134. package/skills/cds-builder/references/components/cds-label/tokens.md +12 -0
  135. package/skills/cds-builder/references/components/cds-layout/api.md +50 -0
  136. package/skills/cds-builder/references/components/cds-layout/examples.md +431 -0
  137. package/skills/cds-builder/references/components/cds-layout/guidelines.md +9 -0
  138. package/skills/cds-builder/references/components/cds-layout/tokens.md +12 -0
  139. package/skills/cds-builder/references/components/cds-link/api.md +33 -0
  140. package/skills/cds-builder/references/components/cds-link/examples.md +195 -0
  141. package/skills/cds-builder/references/components/cds-link/guidelines.md +10 -0
  142. package/skills/cds-builder/references/components/cds-link/tokens.md +16 -0
  143. package/skills/cds-builder/references/components/cds-list/api.md +329 -0
  144. package/skills/cds-builder/references/components/cds-list/examples.md +653 -0
  145. package/skills/cds-builder/references/components/cds-list/guidelines.md +10 -0
  146. package/skills/cds-builder/references/components/cds-list/tokens.md +125 -0
  147. package/skills/cds-builder/references/components/cds-loader/api.md +18 -0
  148. package/skills/cds-builder/references/components/cds-loader/examples.md +59 -0
  149. package/skills/cds-builder/references/components/cds-loader/tokens.md +50 -0
  150. package/skills/cds-builder/references/components/cds-main/api.md +14 -0
  151. package/skills/cds-builder/references/components/cds-main/examples.md +60 -0
  152. package/skills/cds-builder/references/components/cds-menu/api.md +84 -0
  153. package/skills/cds-builder/references/components/cds-menu/examples.md +595 -0
  154. package/skills/cds-builder/references/components/cds-menu/guidelines.md +10 -0
  155. package/skills/cds-builder/references/components/cds-menu/tokens.md +19 -0
  156. package/skills/cds-builder/references/components/cds-messages/api.md +29 -0
  157. package/skills/cds-builder/references/components/cds-messages/examples.md +119 -0
  158. package/skills/cds-builder/references/components/cds-messages/tokens.md +15 -0
  159. package/skills/cds-builder/references/components/cds-modal/api.md +86 -0
  160. package/skills/cds-builder/references/components/cds-modal/examples.md +516 -0
  161. package/skills/cds-builder/references/components/cds-modal/guidelines.md +10 -0
  162. package/skills/cds-builder/references/components/cds-modal/tokens.md +22 -0
  163. package/skills/cds-builder/references/components/cds-notification/api.md +46 -0
  164. package/skills/cds-builder/references/components/cds-notification/examples.md +314 -0
  165. package/skills/cds-builder/references/components/cds-notification/guidelines.md +10 -0
  166. package/skills/cds-builder/references/components/cds-notification/tokens.md +23 -0
  167. package/skills/cds-builder/references/components/cds-notification-alert/api.md +93 -0
  168. package/skills/cds-builder/references/components/cds-notification-alert/examples.md +202 -0
  169. package/skills/cds-builder/references/components/cds-notification-alert/tokens.md +15 -0
  170. package/skills/cds-builder/references/components/cds-otp-input/api.md +106 -0
  171. package/skills/cds-builder/references/components/cds-otp-input/examples.md +329 -0
  172. package/skills/cds-builder/references/components/cds-otp-input/guidelines.md +10 -0
  173. package/skills/cds-builder/references/components/cds-otp-input/tokens.md +41 -0
  174. package/skills/cds-builder/references/components/cds-overlay/api.md +85 -0
  175. package/skills/cds-builder/references/components/cds-overlay/examples.md +409 -0
  176. package/skills/cds-builder/references/components/cds-overlay/guidelines.md +9 -0
  177. package/skills/cds-builder/references/components/cds-overlay/tokens.md +12 -0
  178. package/skills/cds-builder/references/components/cds-page/api.md +21 -0
  179. package/skills/cds-builder/references/components/cds-page/examples.md +123 -0
  180. package/skills/cds-builder/references/components/cds-pagination/api.md +67 -0
  181. package/skills/cds-builder/references/components/cds-pagination/examples.md +320 -0
  182. package/skills/cds-builder/references/components/cds-pagination/guidelines.md +10 -0
  183. package/skills/cds-builder/references/components/cds-pagination/tokens.md +20 -0
  184. package/skills/cds-builder/references/components/cds-progress-bar/api.md +53 -0
  185. package/skills/cds-builder/references/components/cds-progress-bar/examples.md +393 -0
  186. package/skills/cds-builder/references/components/cds-progress-bar/guidelines.md +10 -0
  187. package/skills/cds-builder/references/components/cds-progress-bar/tokens.md +33 -0
  188. package/skills/cds-builder/references/components/cds-progress-circle/api.md +30 -0
  189. package/skills/cds-builder/references/components/cds-progress-circle/examples.md +326 -0
  190. package/skills/cds-builder/references/components/cds-progress-circle/guidelines.md +10 -0
  191. package/skills/cds-builder/references/components/cds-progress-circle/tokens.md +31 -0
  192. package/skills/cds-builder/references/components/cds-radio/api.md +47 -0
  193. package/skills/cds-builder/references/components/cds-radio/tokens.md +36 -0
  194. package/skills/cds-builder/references/components/cds-radio-group/api.md +87 -0
  195. package/skills/cds-builder/references/components/cds-radio-group/examples.md +320 -0
  196. package/skills/cds-builder/references/components/cds-radio-group/guidelines.md +10 -0
  197. package/skills/cds-builder/references/components/cds-radio-group/tokens.md +14 -0
  198. package/skills/cds-builder/references/components/cds-responsive/api.md +29 -0
  199. package/skills/cds-builder/references/components/cds-responsive/examples.md +271 -0
  200. package/skills/cds-builder/references/components/cds-responsive/guidelines.md +10 -0
  201. package/skills/cds-builder/references/components/cds-responsive/tokens.md +13 -0
  202. package/skills/cds-builder/references/components/cds-select/api.md +155 -0
  203. package/skills/cds-builder/references/components/cds-select/examples.md +794 -0
  204. package/skills/cds-builder/references/components/cds-select/guidelines.md +10 -0
  205. package/skills/cds-builder/references/components/cds-select/tokens.md +17 -0
  206. package/skills/cds-builder/references/components/cds-selection-control/api.md +60 -0
  207. package/skills/cds-builder/references/components/cds-selection-control/examples.md +468 -0
  208. package/skills/cds-builder/references/components/cds-selection-control-group/api.md +45 -0
  209. package/skills/cds-builder/references/components/cds-selection-control-group/examples.md +349 -0
  210. package/skills/cds-builder/references/components/cds-skeleton-loader/api.md +30 -0
  211. package/skills/cds-builder/references/components/cds-skeleton-loader/examples.md +297 -0
  212. package/skills/cds-builder/references/components/cds-skeleton-loader/guidelines.md +10 -0
  213. package/skills/cds-builder/references/components/cds-skeleton-loader/tokens.md +62 -0
  214. package/skills/cds-builder/references/components/cds-slide-group/api.md +76 -0
  215. package/skills/cds-builder/references/components/cds-slide-group/examples.md +304 -0
  216. package/skills/cds-builder/references/components/cds-slide-group/guidelines.md +9 -0
  217. package/skills/cds-builder/references/components/cds-slide-group/tokens.md +11 -0
  218. package/skills/cds-builder/references/components/cds-slide-view/api.md +88 -0
  219. package/skills/cds-builder/references/components/cds-slide-view/examples.md +311 -0
  220. package/skills/cds-builder/references/components/cds-slide-view/guidelines.md +9 -0
  221. package/skills/cds-builder/references/components/cds-slide-view/tokens.md +14 -0
  222. package/skills/cds-builder/references/components/cds-stages/api.md +31 -0
  223. package/skills/cds-builder/references/components/cds-stages/examples.md +230 -0
  224. package/skills/cds-builder/references/components/cds-stages/guidelines.md +10 -0
  225. package/skills/cds-builder/references/components/cds-stages/tokens.md +27 -0
  226. package/skills/cds-builder/references/components/cds-status/api.md +24 -0
  227. package/skills/cds-builder/references/components/cds-status/examples.md +170 -0
  228. package/skills/cds-builder/references/components/cds-status/guidelines.md +10 -0
  229. package/skills/cds-builder/references/components/cds-status/tokens.md +17 -0
  230. package/skills/cds-builder/references/components/cds-steps/api.md +176 -0
  231. package/skills/cds-builder/references/components/cds-steps/examples.md +320 -0
  232. package/skills/cds-builder/references/components/cds-steps/guidelines.md +10 -0
  233. package/skills/cds-builder/references/components/cds-steps/tokens.md +52 -0
  234. package/skills/cds-builder/references/components/cds-surface/api.md +30 -0
  235. package/skills/cds-builder/references/components/cds-surface/examples.md +106 -0
  236. package/skills/cds-builder/references/components/cds-table/api.md +120 -0
  237. package/skills/cds-builder/references/components/cds-table/examples.md +3049 -0
  238. package/skills/cds-builder/references/components/cds-table/guidelines.md +10 -0
  239. package/skills/cds-builder/references/components/cds-table/tokens.md +92 -0
  240. package/skills/cds-builder/references/components/cds-tabs/api.md +179 -0
  241. package/skills/cds-builder/references/components/cds-tabs/examples.md +610 -0
  242. package/skills/cds-builder/references/components/cds-tabs/guidelines.md +10 -0
  243. package/skills/cds-builder/references/components/cds-tabs/tokens.md +40 -0
  244. package/skills/cds-builder/references/components/cds-tag/api.md +64 -0
  245. package/skills/cds-builder/references/components/cds-tag/examples.md +278 -0
  246. package/skills/cds-builder/references/components/cds-tag/guidelines.md +10 -0
  247. package/skills/cds-builder/references/components/cds-tag/tokens.md +67 -0
  248. package/skills/cds-builder/references/components/cds-tag-group/api.md +58 -0
  249. package/skills/cds-builder/references/components/cds-tag-group/examples.md +346 -0
  250. package/skills/cds-builder/references/components/cds-tag-group/guidelines.md +10 -0
  251. package/skills/cds-builder/references/components/cds-tag-group/tokens.md +18 -0
  252. package/skills/cds-builder/references/components/cds-text-area/api.md +113 -0
  253. package/skills/cds-builder/references/components/cds-text-area/examples.md +327 -0
  254. package/skills/cds-builder/references/components/cds-text-area/guidelines.md +10 -0
  255. package/skills/cds-builder/references/components/cds-text-area/tokens.md +16 -0
  256. package/skills/cds-builder/references/components/cds-text-input/api.md +115 -0
  257. package/skills/cds-builder/references/components/cds-text-input/examples.md +546 -0
  258. package/skills/cds-builder/references/components/cds-text-input/guidelines.md +10 -0
  259. package/skills/cds-builder/references/components/cds-text-input/tokens.md +17 -0
  260. package/skills/cds-builder/references/components/cds-time-picker/api.md +44 -0
  261. package/skills/cds-builder/references/components/cds-time-picker/examples.md +407 -0
  262. package/skills/cds-builder/references/components/cds-time-picker/guidelines.md +10 -0
  263. package/skills/cds-builder/references/components/cds-time-picker/tokens.md +23 -0
  264. package/skills/cds-builder/references/components/cds-toast/api.md +97 -0
  265. package/skills/cds-builder/references/components/cds-toast/examples.md +296 -0
  266. package/skills/cds-builder/references/components/cds-toast/guidelines.md +10 -0
  267. package/skills/cds-builder/references/components/cds-toast/tokens.md +26 -0
  268. package/skills/cds-builder/references/components/cds-toast-queue/api.md +86 -0
  269. package/skills/cds-builder/references/components/cds-toast-queue/examples.md +227 -0
  270. package/skills/cds-builder/references/components/cds-toggle/api.md +97 -0
  271. package/skills/cds-builder/references/components/cds-toggle/examples.md +335 -0
  272. package/skills/cds-builder/references/components/cds-toggle/guidelines.md +10 -0
  273. package/skills/cds-builder/references/components/cds-toggle/tokens.md +91 -0
  274. package/skills/cds-builder/references/components/cds-toolbar/api.md +44 -0
  275. package/skills/cds-builder/references/components/cds-toolbar/examples.md +186 -0
  276. package/skills/cds-builder/references/components/cds-toolbar/guidelines.md +9 -0
  277. package/skills/cds-builder/references/components/cds-toolbar/tokens.md +13 -0
  278. package/skills/cds-builder/references/components/cds-tooltip/api.md +83 -0
  279. package/skills/cds-builder/references/components/cds-tooltip/examples.md +321 -0
  280. package/skills/cds-builder/references/components/cds-tooltip/guidelines.md +10 -0
  281. package/skills/cds-builder/references/components/cds-tooltip/tokens.md +25 -0
  282. package/skills/cds-builder/references/components/cds-tree/api.md +169 -0
  283. package/skills/cds-builder/references/components/cds-tree/examples.md +785 -0
  284. package/skills/cds-builder/references/components/cds-tree/guidelines.md +10 -0
  285. package/skills/cds-builder/references/components/cds-tree/tokens.md +39 -0
  286. package/skills/cds-builder/references/components/cds-uploader/api.md +105 -0
  287. package/skills/cds-builder/references/components/cds-uploader/examples.md +553 -0
  288. package/skills/cds-builder/references/components/cds-uploader/guidelines.md +10 -0
  289. package/skills/cds-builder/references/components/cds-uploader/tokens.md +26 -0
  290. package/skills/cds-builder/references/components/cds-virtual-scroll/api.md +60 -0
  291. package/skills/cds-builder/references/components/cds-virtual-scroll/examples.md +272 -0
  292. package/skills/cds-builder/references/components/cds-virtual-scroll/guidelines.md +9 -0
  293. package/skills/cds-builder/references/components/cds-virtual-scroll/tokens.md +13 -0
  294. package/skills/cds-builder/references/guides/conventions.md +48 -0
  295. package/skills/cds-builder/references/guides/date-utils.md +301 -0
  296. package/skills/cds-builder/references/guides/display-and-platform.md +263 -0
  297. package/skills/cds-builder/references/guides/forms.md +77 -0
  298. package/skills/cds-builder/references/guides/global-configuration.md +354 -0
  299. package/skills/cds-builder/references/guides/icons.md +172 -0
  300. package/skills/cds-builder/references/guides/internationalization.md +470 -0
  301. package/skills/cds-builder/references/guides/migration-cds3-to-cds4.md +49 -0
  302. package/skills/cds-builder/references/guides/sass-variables.md +238 -0
  303. package/skills/cds-builder/references/guides/setup.md +81 -0
  304. package/skills/cds-builder/references/guides/tailwindcss.md +93 -0
  305. package/skills/cds-builder/references/guides/theme.md +343 -0
  306. package/skills/cds-builder/references/guides/treeshaking.md +237 -0
  307. package/skills/cds-builder/references/patterns/dialogs.md +89 -0
  308. package/skills/cds-builder/references/patterns/forms.md +101 -0
  309. package/skills/cds-builder/references/patterns/page-layout.md +78 -0
  310. package/skills/cds-builder/references/patterns/tables.md +87 -0
  311. package/skills/cds-builder/references/tokens/colors.md +507 -0
  312. package/skills/cds-builder/references/tokens/themes.md +981 -0
  313. package/skills/cds-builder/scripts/check-contracts.mjs +264 -0
  314. package/skills/cds-migrate/GENERATION.md +44 -0
  315. package/skills/cds-migrate/SKILL.md +160 -0
  316. package/skills/cds-migrate/references/migration-full.md +2225 -0
  317. package/skills/cds-refactor/GENERATION.md +44 -0
  318. package/skills/cds-refactor/SKILL.md +187 -0
  319. package/skills/cds-refactor/references/html-to-cds.md +80 -0
  320. package/skills/cds-refactor/references/review-checklist.md +73 -0
  321. package/skills/cds-refactor/references/tailwind-to-cds.md +65 -0
@@ -0,0 +1,97 @@
1
+ # CdsToggle — API
2
+
3
+ > Generated from meta.json by `bun run generate:skill`. Do not edit manually.
4
+ > Examples: [examples.md](examples.md) · Guidelines: [guidelines.md](guidelines.md) · Tokens: [tokens.md](tokens.md)
5
+
6
+ A toggle is an on/off switch for a setting that applies immediately, without a "Save" button: notifications, auto-renewal, profile visibility. It is built on [CdsInput](../cds-input/api.md): it can do a label and a description, messages and errors, loading and the indeterminate state.
7
+
8
+ ## CdsToggle
9
+
10
+ **Props**
11
+
12
+ | Prop | Type | Default | Required | Description |
13
+ | --- | --- | --- | --- | --- |
14
+ | `appendIcon` | `IconValue \| undefined` | — | no | Icon in the append slot, after the content |
15
+ | `baseColor` | `string \| undefined` | — | no | Color of the component in its inactive state |
16
+ | `centerAffix` | `boolean \| undefined` | `true` | no | Vertically center the appendInner, prependInner, clearIcon and label elements. |
17
+ | `color` | `string \| undefined` | — | no | Component color |
18
+ | `defaultsTarget` | `string \| undefined` | — | no | Name of the child component the group prop values are passed to as defaults |
19
+ | `description` | `string \| undefined` | — | no | Description of the component, shown under the label |
20
+ | `direction` | `"horizontal" \| "vertical" \| undefined` | `'horizontal'` | no | Switches the component between horizontal and vertical layout. |
21
+ | `disabled` | `boolean \| null \| undefined` | `null` | no | Disabled state |
22
+ | `error` | `boolean \| undefined` | — | no | Puts the component into the visual error state |
23
+ | `errorMessages` | `string \| readonly string[] \| null \| undefined` | `[]` | no | Puts the component into the error state and passes custom error messages. They are merged with any checks defined in the `rules` prop. This field does not trigger validation. |
24
+ | `falseIcon` | `IconValue \| undefined` | — | no | Icon of the unselected state |
25
+ | `falseValue` | `any` | — | no | Value for the false state. |
26
+ | `focused` | `boolean \| undefined` | — | no | Controls the focus state of the component. When `true`, the component is considered focused and may apply the corresponding styles or behavior. |
27
+ | `hideDetails` | `boolean \| "auto" \| undefined` | — | no | Hides the details block (messages and hints). With the 'auto' value the block is hidden when there are no messages |
28
+ | `hideMessages` | `boolean \| undefined` | — | no | Hide the messages under the input |
29
+ | `hint` | `string \| undefined` | — | no | Hint text shown under the input |
30
+ | `iconColor` | `string \| boolean \| undefined` | — | no | Icon color. Accepts a boolean or a color string |
31
+ | `id` | `string \| undefined` | — | no | Unique identifier of the component |
32
+ | `indeterminate` | `boolean \| undefined` | — | no | Indeterminate state of the toggle. |
33
+ | `inline` | `boolean \| undefined` | — | no | Renders the control as an inline element — the container does not stretch to the full width |
34
+ | `label` | `string \| undefined` | — | no | Label text of the component |
35
+ | `loading` | `string \| boolean \| undefined` | `false` | no | Loading indicator. Accepts a boolean or a string with the color of the loader. |
36
+ | `maxErrors` | `string \| number \| undefined` | `1` | no | Maximum number of validation errors shown |
37
+ | `maxWidth` | `string \| number \| undefined` | — | no | Maximum component width |
38
+ | `messages` | `string \| readonly string[] \| undefined` | `[]` | no | Messages shown under the input |
39
+ | `minWidth` | `string \| number \| undefined` | — | no | Minimum component width |
40
+ | `modelValue` | `any` | — | no | Value of the component (v-model). In a group it is the value of the selected control, with `multiple` — an array of the selected values |
41
+ | `multiple` | `boolean \| null \| undefined` | `null` | no | Allows selecting several values — the model becomes an array. Turns on automatically when an array is passed to `modelValue` |
42
+ | `name` | `string \| undefined` | — | no | The `name` attribute of the native input element. In a group one name joins all the nested controls |
43
+ | `persistentHint` | `boolean \| undefined` | — | no | Always show the hint, not only on focus |
44
+ | `prependIcon` | `IconValue \| undefined` | — | no | Icon in the prepend slot, before the content |
45
+ | `readonly` | `boolean \| null \| undefined` | `null` | no | Read-only state |
46
+ | `rules` | `readonly ValidationRule[] \| undefined` | `[]` | no | Accepts an array of items of different types: functions, booleans and strings. Functions take the input value as an argument and must return either true / false, or a string with an error message. The input goes into the error state if a function returns false (or any value in the array is false) or is a string. |
47
+ | `size` | `number \| "xs" \| "sm" \| "md" \| "lg" \| "xl" \| undefined` | `'md'` | no | Size of the component |
48
+ | `theme` | `string \| undefined` | — | no | Component theme |
49
+ | `thumbColor` | `string \| undefined` | — | no | Color of the thumb. |
50
+ | `trueIcon` | `IconValue \| undefined` | — | no | Icon of the selected state |
51
+ | `trueValue` | `any` | — | no | Value for the true state. |
52
+ | `type` | `string \| undefined` | — | no | Type of the native input element — `radio` or `checkbox`, for example |
53
+ | `validateOn` | `ValidateOn \| undefined` | — | no | Changes the type of the event that triggers validation |
54
+ | `validationValue` | `any` | — | no | Value used when applying the validation rules |
55
+ | `value` | `any` | — | no | Value used when the component is selected inside a group. When it is not set, a unique identifier is used. |
56
+ | `valueComparator` | `ValueComparator \| undefined` | `true` | no | Function comparing the model value with the `value` of the control. Deep comparison by default |
57
+ | `width` | `string \| number \| undefined` | — | no | Component width |
58
+
59
+ **Events**
60
+
61
+ | Name | Type | Description |
62
+ | --- | --- | --- |
63
+ | `update:focused` | `[focused: boolean]` | Fires when the focus state of the component changes. |
64
+ | `update:indeterminate` | `[value: boolean]` | Fires when the indeterminate state changes. |
65
+ | `update:modelValue` | `[value: any]` | Fires when the model of the component changes. |
66
+
67
+ **Slots**
68
+
69
+ | Name | Type | Description |
70
+ | --- | --- | --- |
71
+ | `append` | `CdsInputSlot` | Adds an element after the input |
72
+ | `default` | `{ backgroundColorClasses: Ref<string[], string[]>; backgroundColorStyles: Ref<CSSProperties, CSSProperties>; }` | Default slot |
73
+ | `description` | `{ description: string \| undefined; props: Record<string, any>; }` | Default slot of the CdsDescription component |
74
+ | `details` | `CdsInputSlot` | Slot for custom content that lets you customize how the messages are displayed |
75
+ | `input` | `SelectionControlSlot` | Slot for the default input element. |
76
+ | `label` | `{ label: string \| undefined; props: Record<string, any>; }` | Default slot of the CdsLabel component |
77
+ | `loader` | `LoaderSlotProps` | Slot for a custom loading indicator. |
78
+ | `message` | `CdsMessagesSlots` | Slot for customizing the content of a message |
79
+ | `messages` | `CdsInputSlot` | Slot for custom content that lets you customize how the messages are displayed |
80
+ | `prepend` | `CdsInputSlot` | Adds an element before the input |
81
+ | `thumb` | `{ icon: IconValue \| undefined; } & CdsToggleSlot` | Slot for the content of the thumb. |
82
+ | `track-false` | `CdsToggleSlot` | Slot for the content of the off part of the track. |
83
+ | `track-true` | `CdsToggleSlot` | Slot for the content of the on part of the track. |
84
+
85
+ **Exposed**
86
+
87
+ | Name | Type | Description |
88
+ | --- | --- | --- |
89
+ | `isDirty` | `boolean` | Whether the input is dirty |
90
+ | `isDisabled` | `boolean` | Whether the input is disabled |
91
+ | `isPure` | `boolean` | Whether the input is pure |
92
+ | `isReadonly` | `boolean` | Whether the input is read-only |
93
+ | `isValid` | `boolean \| null` | Whether the input is valid |
94
+ | `isValidating` | `boolean` | Whether the input is being validated |
95
+ | `reset` | `() => Promise<void>` | Resets the input to its initial state |
96
+ | `resetValidation` | `() => Promise<void>` | Resets the validation of the input |
97
+ | `validate` | `(silent?: boolean) => Promise<string[]>` | Validates the input |
@@ -0,0 +1,335 @@
1
+ # CdsToggle — usage examples
2
+
3
+ > Extracted from Storybook stories (`docs/*.stories.ts`) by `bun run generate:skill`. Do not edit manually.
4
+ > The full component contract is in [api.md](api.md). `v-bind="args"` in templates refers to the props from the **Args** block of the corresponding example.
5
+
6
+ A toggle is an on/off switch for a setting that applies immediately, without a "Save" button: notifications, auto-renewal, profile visibility. It is built on [CdsInput](../cds-input/api.md): it can do a label and a description, messages and errors, loading and the indeterminate state.
7
+
8
+ ## Label and description
9
+
10
+ `label` names the setting, `description` explains what turning it on leads to. Phrase the label so that it is clear what happens in the on position.
11
+
12
+ **Example (SFC):**
13
+
14
+ ```vue
15
+ <script setup lang="ts">
16
+ import { CdsToggle } from '@central-design-system/components';
17
+ import { ref } from 'vue';
18
+
19
+ const notifications = ref(true);
20
+ const autoRenew = ref(false);
21
+ </script>
22
+
23
+ <template>
24
+ <div class="flex flex-col gap-3 w-fit m-auto">
25
+ <CdsToggle v-model="notifications" label="Уведомления о новых закупках" hide-details />
26
+ <CdsToggle
27
+ v-model="autoRenew"
28
+ label="Автопродление подписки"
29
+ description="Спишем оплату за день до окончания периода"
30
+ hide-details
31
+ />
32
+ </div>
33
+ </template>
34
+ ```
35
+
36
+ ## Sizes
37
+
38
+ Five sizes on the `size` scale — from `xs` to `xl`, `md` by default.
39
+
40
+ **Example (SFC):**
41
+
42
+ ```vue
43
+ <script setup lang="ts">
44
+ import { CdsToggleConstants } from '@cds/components/CdsToggle/api/CdsToggle.constants';
45
+ import { CdsToggle } from '@central-design-system/components';
46
+ import { ref } from 'vue';
47
+
48
+ const sizes = CdsToggleConstants.sizes;
49
+ const enabled = ref(true);
50
+ </script>
51
+
52
+ <template>
53
+ <div class="flex flex-col gap-3 w-fit m-auto">
54
+ <CdsToggle v-for="size in sizes" :key="size" v-model="enabled" :size="size" :label="size" hide-details />
55
+ </div>
56
+ </template>
57
+ ```
58
+
59
+ ## States
60
+
61
+ `disabled` blocks the toggle and lowers the contrast, `readonly` forbids changing the value, `error` paints the track with the error color. `indeterminate` is the undefined state: the thumb stops in the middle while the value is unknown — when only some of the nested options are on, for example. The first toggle removes it.
62
+
63
+ **Example (SFC):**
64
+
65
+ ```vue
66
+ <script setup lang="ts">
67
+ import { CdsToggle } from '@central-design-system/components';
68
+ import { ref } from 'vue';
69
+
70
+ const on = ref(true);
71
+ const off = ref(false);
72
+ const mixed = ref(false);
73
+ </script>
74
+
75
+ <template>
76
+ <div class="flex flex-col gap-3 w-fit m-auto">
77
+ <CdsToggle v-model="off" label="Выключен" hide-details />
78
+ <CdsToggle v-model="on" label="Включён" hide-details />
79
+ <CdsToggle v-model="off" label="Disabled (выключен)" disabled hide-details />
80
+ <CdsToggle v-model="on" label="Disabled (включён)" disabled hide-details />
81
+ <CdsToggle v-model="on" label="Readonly" readonly hide-details />
82
+ <CdsToggle v-model="off" label="Ошибка" error hide-details />
83
+ <CdsToggle v-model="mixed" :indeterminate="true" label="Неопределённое состояние" hide-details />
84
+ </div>
85
+ </template>
86
+ ```
87
+
88
+ ## Loading and icons
89
+
90
+ `loading` shows an indicator inside the thumb — handy while the setting is being saved on the server; a string value sets the color of the loader. `true-icon` and `false-icon` add an icon to the thumb for each position.
91
+
92
+ **Example (SFC):**
93
+
94
+ ```vue
95
+ <script setup lang="ts">
96
+ import { CdsToggle } from '@central-design-system/components';
97
+ import { ref } from 'vue';
98
+
99
+ const loading = ref(true);
100
+ const icon = ref(true);
101
+ </script>
102
+
103
+ <template>
104
+ <div class="flex flex-col gap-3 w-fit m-auto">
105
+ <CdsToggle v-model="loading" loading label="Загрузка" hide-details />
106
+ <CdsToggle v-model="icon" true-icon="check-fill" false-icon="error-fill" label="Иконки в бегунке" hide-details />
107
+ </div>
108
+ </template>
109
+ ```
110
+
111
+ ## Colors
112
+
113
+ `color` paints the track of a switched-on toggle, `base-color` — of a switched-off one, `thumb-color` — the thumb. The values are the names of the palette colors.
114
+
115
+ **Example (SFC):**
116
+
117
+ ```vue
118
+ <script setup lang="ts">
119
+ import { CdsToggle } from '@central-design-system/components';
120
+ import { ref } from 'vue';
121
+
122
+ const on = ref(true);
123
+ const off = ref(false);
124
+ const thumb = ref(false);
125
+ </script>
126
+
127
+ <template>
128
+ <div class="flex flex-col gap-3 w-fit m-auto">
129
+ <CdsToggle
130
+ v-model="on"
131
+ color="brand-primary"
132
+ label="Основной цвет дорожки во включённом положении (color)"
133
+ hide-details
134
+ />
135
+ <CdsToggle v-model="off" base-color="purple" label="Фиолетовая дорожка в выключенном (base-color)" hide-details />
136
+ <CdsToggle v-model="thumb" thumb-color="red" label="Красный бегунок (thumb-color)" hide-details />
137
+ </div>
138
+ </template>
139
+ ```
140
+
141
+ ## Your own values
142
+
143
+ By default the model is `true`/`false`. `true-value` and `false-value` bind the toggle to your own values — to an API field with a string status, for example.
144
+
145
+ **Example (SFC):**
146
+
147
+ ```vue
148
+ <script setup lang="ts">
149
+ import { CdsToggle } from '@central-design-system/components';
150
+ import { ref } from 'vue';
151
+
152
+ const status = ref('public');
153
+ </script>
154
+
155
+ <template>
156
+ <div class="flex flex-col items-center gap-2">
157
+ <CdsToggle v-model="status" true-value="public" false-value="private" label="Открытый профиль" hide-details />
158
+ <span>Значение модели: «{{ status }}»</span>
159
+ </div>
160
+ </template>
161
+ ```
162
+
163
+ ## Messages
164
+
165
+ `messages` shows a hint under the toggle, `error-messages` — a ready error message together with the error state. `hide-details` removes the bottom block entirely.
166
+
167
+ **Example (SFC):**
168
+
169
+ ```vue
170
+ <script setup lang="ts">
171
+ import { CdsToggle } from '@central-design-system/components';
172
+ import { ref } from 'vue';
173
+
174
+ const backup = ref(true);
175
+ const newsletter = ref(false);
176
+ </script>
177
+
178
+ <template>
179
+ <div class="flex flex-col gap-3 w-[350px] m-auto">
180
+ <CdsToggle v-model="backup" label="Резервное копирование" messages="Копия создаётся каждую ночь в 03:00" />
181
+ <CdsToggle
182
+ v-model="newsletter"
183
+ label="Рассылка по подписчикам"
184
+ :error-messages="['Подтвердите домен, чтобы включить рассылку']"
185
+ />
186
+ </div>
187
+ </template>
188
+ ```
189
+
190
+ ## Slots
191
+
192
+ In the demo the `thumb` slot changes the icon of the thumb depending on the value, and `track-true` and `track-false` show icons on the track.
193
+
194
+ **Example (SFC):**
195
+
196
+ ```vue
197
+ <script setup lang="ts">
198
+ import { CdsIcon, CdsToggle } from '@central-design-system/components';
199
+ import { ref } from 'vue';
200
+
201
+ const visible = ref(true);
202
+ const annual = ref(true);
203
+ </script>
204
+
205
+ <template>
206
+ <div class="flex flex-col gap-3 w-fit m-auto">
207
+ <CdsToggle v-model="visible" label="Профиль виден в поиске" hide-details>
208
+ <template #thumb>
209
+ <CdsIcon :icon="visible ? 'visibility-on' : 'visibility-off'" />
210
+ </template>
211
+ </CdsToggle>
212
+
213
+ <CdsToggle v-model="annual" size="xl" label="Годовая оплата" hide-details>
214
+ <template #track-true>
215
+ <CdsIcon icon="check-fill" :size="16" />
216
+ </template>
217
+ <template #track-false>
218
+ <CdsIcon icon="error-fill" :size="16" />
219
+ </template>
220
+ </CdsToggle>
221
+ </div>
222
+ </template>
223
+ ```
224
+
225
+ ## Notification settings
226
+
227
+ The main toggle controls the whole group: while notifications are off, the channels are blocked through `disabled`. The choice of channels is kept though — after switching back on the group returns to its previous values.
228
+
229
+ **Example (SFC):**
230
+
231
+ ```vue
232
+ <script setup lang="ts">
233
+ import { CdsToggle } from '@central-design-system/components';
234
+ import { ref } from 'vue';
235
+
236
+ const enabled = ref(true);
237
+ const channels = ref({ email: true, push: false, sms: false });
238
+ </script>
239
+
240
+ <template>
241
+ <div class="flex flex-col gap-3 w-[320px] m-auto">
242
+ <CdsToggle v-model="enabled" label="Уведомления" description="Сообщим о событиях в ваших закупках" hide-details />
243
+
244
+ <div class="flex flex-col gap-3 pl-8">
245
+ <CdsToggle v-model="channels.email" :disabled="!enabled" size="sm" label="Электронная почта" hide-details />
246
+ <CdsToggle v-model="channels.push" :disabled="!enabled" size="sm" label="Push в браузере" hide-details />
247
+ <CdsToggle v-model="channels.sms" :disabled="!enabled" size="sm" label="СМС" hide-details />
248
+ </div>
249
+ </div>
250
+ </template>
251
+ ```
252
+
253
+ ## Saving on the server
254
+
255
+ The setting is saved right after the switch: while the request is in flight the toggle shows `loading` and does not accept clicks because of `readonly`. If the server rejected the change, the value comes back and the reason is shown in `error-messages`. Try switching the toggle off.
256
+
257
+ **Example (SFC):**
258
+
259
+ ```vue
260
+ <script setup lang="ts">
261
+ import { CdsToggle } from '@central-design-system/components';
262
+ import { ref } from 'vue';
263
+
264
+ const enabled = ref(true);
265
+ const loading = ref(false);
266
+ const errors = ref<string[]>([]);
267
+
268
+ const save = async (value: unknown) => {
269
+ loading.value = true;
270
+ errors.value = [];
271
+
272
+ // Имитация запроса к серверу
273
+ await new Promise((resolve) => setTimeout(resolve, 1000));
274
+
275
+ loading.value = false;
276
+
277
+ if (!value) {
278
+ enabled.value = true;
279
+ errors.value = ['Отключить двухфакторную аутентификацию может только администратор'];
280
+ }
281
+ };
282
+ </script>
283
+
284
+ <template>
285
+ <div class="w-[350px] m-auto">
286
+ <CdsToggle
287
+ v-model="enabled"
288
+ label="Двухфакторная аутентификация"
289
+ description="Код из приложения при каждом входе"
290
+ :loading="loading"
291
+ :readonly="loading"
292
+ :error-messages="errors"
293
+ @update:model-value="save"
294
+ />
295
+ </div>
296
+ </template>
297
+ ```
298
+
299
+ ## Paid options
300
+
301
+ Every toggle adds an option to the plan, and the total is recalculated at once — the user sees the consequences of the choice before paying.
302
+
303
+ **Example (SFC):**
304
+
305
+ ```vue
306
+ <script setup lang="ts">
307
+ import { CdsToggle } from '@central-design-system/components';
308
+ import { computed, ref } from 'vue';
309
+
310
+ const options = [
311
+ { key: 'analytics', label: 'Расширенная аналитика', description: 'Отчёты по закупкам и конкурентам', price: 900 },
312
+ { key: 'support', label: 'Приоритетная поддержка', description: 'Ответ в течение часа', price: 500 },
313
+ { key: 'api', label: 'Доступ к API', description: 'Интеграция с вашей ERP', price: 1500 }
314
+ ] as const;
315
+
316
+ const selected = ref<Record<string, boolean>>({ analytics: true, support: false, api: false });
317
+
318
+ const total = computed(() => options.reduce((sum, option) => sum + (selected.value[option.key] ? option.price : 0), 0));
319
+ </script>
320
+
321
+ <template>
322
+ <div class="flex flex-col gap-3 w-[350px] m-auto">
323
+ <CdsToggle
324
+ v-for="option in options"
325
+ :key="option.key"
326
+ v-model="selected[option.key]"
327
+ :label="`${option.label} — ${option.price} ₽/мес`"
328
+ :description="option.description"
329
+ hide-details
330
+ />
331
+
332
+ <span class="font-semibold">Итого: {{ total }} ₽/мес</span>
333
+ </div>
334
+ </template>
335
+ ```
@@ -0,0 +1,10 @@
1
+ # CdsToggle — guidelines
2
+
3
+ > Extracted from `docs/demos/Guidelines.vue` by `bun run generate:skill`. Do not edit manually.
4
+ > The full component contract is in [api.md](api.md).
5
+
6
+ | ✅ Do | ❌ Don't |
7
+ | --- | --- |
8
+ | A toggle is for a setting that applies right after it is switched. | Consents and choices that go to the server together with the form are a checkbox, not a toggle. |
9
+ | Phrase the label positively: the on position turns the capability on. | A negation in the label forces the user to decode a double “no” when the toggle is off. |
10
+ | The label names the setting — the state is visible from the position and the color of the thumb. | A label repeating the state changes on every click: it is unclear what exactly is turned on. |
@@ -0,0 +1,91 @@
1
+ # CdsToggle — tokens (level 3)
2
+
3
+ > Copy of the component's `styles/*.variables.scss`, taken by `bun run generate:skill`. Do not edit manually.
4
+ > `--cds-*` are global level-2 tokens whose values come from the active theme: see [themes.md](../../tokens/themes.md).
5
+ > Variables marked `!default` can be overridden at build time via SCSS.
6
+
7
+ ## _CdsToggle.variables.scss
8
+
9
+ ```scss
10
+ @use '../../../styles/tools';
11
+
12
+ // ======================= Transitions =======================
13
+ $toggle-track-transition: background-color (tools.$cds-duration-fast + ms) tools.get-motion('ease-in-out', 'basic') !default;
14
+ $toggle-thumb-transition: transform (tools.$cds-duration-fast + ms) tools.get-motion('ease-in-out', 'accent'),
15
+ background-color (tools.$cds-duration-fast + ms) tools.get-motion('ease-in-out', 'basic') !default;
16
+
17
+ // ======================= Radius =======================
18
+ $toggle-track-radius: tools.to-rem(9999px) !default;
19
+ $toggle-thumb-radius: 50% !default;
20
+
21
+ // ======================= Sizes =======================
22
+ // Каждый размер: высота дорожки, ширина дорожки, размер «бегунка» (вкл.), размер «бегунка» (выкл.).
23
+ $toggle-sizes: (
24
+ xs: (
25
+ track-height: 18px,
26
+ track-width: 34px,
27
+ thumb-on: 12px,
28
+ thumb-off: 8px,
29
+ label-gap: 0,
30
+ label-offset: var(--cds-spacing-50)
31
+ ),
32
+ sm: (
33
+ track-height: 20px,
34
+ track-width: 36px,
35
+ thumb-on: 14px,
36
+ thumb-off: 10px,
37
+ label-gap: 0,
38
+ label-offset: var(--cds-spacing-100)
39
+ ),
40
+ md: (
41
+ track-height: 24px,
42
+ track-width: 44px,
43
+ thumb-on: 18px,
44
+ thumb-off: 14px,
45
+ label-gap: var(--cds-spacing-50),
46
+ label-offset: var(--cds-spacing-200)
47
+ ),
48
+ lg: (
49
+ track-height: 28px,
50
+ track-width: 52px,
51
+ thumb-on: 20px,
52
+ thumb-off: 16px,
53
+ label-gap: var(--cds-spacing-50),
54
+ label-offset: var(--cds-spacing-200)
55
+ ),
56
+ xl: (
57
+ track-height: 40px,
58
+ track-width: 78px,
59
+ thumb-on: 30px,
60
+ thumb-off: 26px,
61
+ label-gap: var(--cds-spacing-100),
62
+ label-offset: var(--cds-spacing-300)
63
+ )
64
+ ) !default;
65
+
66
+ // ======================= Colors =======================
67
+ $toggle-colors: (
68
+ track: (
69
+ unselected: rgb(var(--cds-color-fill-secondary)),
70
+ selected: rgb(var(--cds-color-status-success-surface)),
71
+ disabled-unselected: rgb(var(--cds-color-fill-disable)),
72
+ disabled-selected: rgb(var(--cds-color-fill-disable)),
73
+ error: rgb(var(--cds-color-status-danger-surface))
74
+ ),
75
+ thumb: (
76
+ unselected: rgb(var(--cds-color-content-on-dark)),
77
+ selected: rgb(var(--cds-color-content-on-dark)),
78
+ disabled: rgb(var(--cds-color-content-disable)),
79
+ error: rgb(var(--cds-color-content-on-dark))
80
+ ),
81
+ icon: (
82
+ selected: rgb(var(--cds-color-fill-selected)),
83
+ error: rgb(var(--cds-color-status-danger-content))
84
+ )
85
+ ) !default;
86
+
87
+ // ======================= Focus =======================
88
+ $toggle-focus-outline-color: rgb(var(--cds-color-line-focus-outline)) !default;
89
+ $toggle-focus-outline-width: var(--cds-border-200) !default;
90
+ $toggle-focus-outline-offset: var(--cds-spacing-50) !default;
91
+ ```
@@ -0,0 +1,44 @@
1
+ # CdsToolbar — API
2
+
3
+ > Generated from meta.json by `bun run generate:skill`. Do not edit manually.
4
+ > Examples: [examples.md](examples.md) · Guidelines: [guidelines.md](guidelines.md) · Tokens: [tokens.md](tokens.md)
5
+
6
+ A horizontal bar with a title and actions: it fills the header and the footer of the application, and on a page it assembles the title of a section together with its buttons. `CdsToolbarTitle` stretches and pushes the left and the right groups to the edges on its own.
7
+
8
+ Family: [CdsToolbar](#cdstoolbar) + subcomponents: [CdsToolbarTitle](#cdstoolbartitle).
9
+
10
+ ## CdsToolbar
11
+
12
+ **Props**
13
+
14
+ | Prop | Type | Default | Required | Description |
15
+ | --- | --- | --- | --- | --- |
16
+ | `bgColor` | `string \| undefined` | — | no | Background color of the component |
17
+ | `bordered` | `boolean \| undefined` | `false` | no | Shows the bottom border. |
18
+ | `color` | `string \| undefined` | — | no | Component color |
19
+ | `inset` | `boolean \| undefined` | `false` | no | Nested toolbar (indented from the left). |
20
+ | `noGutter` | `"start" \| "end" \| undefined` | — | no | Removes the padding on one side: `start` or `end`. |
21
+ | `noGutters` | `boolean \| undefined` | `false` | no | Removes all inner paddings. |
22
+ | `theme` | `string \| undefined` | — | no | Component theme |
23
+
24
+ **Slots**
25
+
26
+ | Name | Type | Description |
27
+ | --- | --- | --- |
28
+ | `default` | `any` | Content of the toolbar. |
29
+
30
+ ---
31
+
32
+ ## CdsToolbarTitle
33
+
34
+ **Props**
35
+
36
+ | Prop | Type | Default | Required | Description |
37
+ | --- | --- | --- | --- | --- |
38
+ | `shrink` | `boolean \| undefined` | `false` | no | Shrinks the title to its content instead of stretching it. |
39
+
40
+ **Slots**
41
+
42
+ | Name | Type | Description |
43
+ | --- | --- | --- |
44
+ | `default` | `any` | Text of the title. |