@vkontakte/vkui-tokens 4.0.0 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (506) hide show
  1. package/README.md +108 -42
  2. package/interfaces/general/geometry/index.d.ts +2 -0
  3. package/package.json +1 -1
  4. package/themeDescriptions/base/paradigm.js +6 -0
  5. package/themeDescriptions/base/vk.js +89 -95
  6. package/themes/calendar/cssVars/declarations/index.css +4 -0
  7. package/themes/calendar/cssVars/declarations/onlyMedia.css +2 -0
  8. package/themes/calendar/cssVars/declarations/onlyVariables.css +2 -0
  9. package/themes/calendar/cssVars/declarations/onlyVariables.js +2 -2
  10. package/themes/calendar/cssVars/theme/fallbacks/index.css +2 -0
  11. package/themes/calendar/cssVars/theme/fallbacks/index.less +2 -0
  12. package/themes/calendar/cssVars/theme/fallbacks/index.pcss +2 -0
  13. package/themes/calendar/cssVars/theme/fallbacks/index.scss +2 -0
  14. package/themes/calendar/cssVars/theme/fallbacks/index.styl +2 -0
  15. package/themes/calendar/cssVars/theme/index.js +20 -0
  16. package/themes/calendar/cssVars/theme/index.json +20 -0
  17. package/themes/calendar/index.css +2 -0
  18. package/themes/calendar/index.js +6 -0
  19. package/themes/calendar/index.json +6 -0
  20. package/themes/calendar/index.less +2 -0
  21. package/themes/calendar/index.pcss +2 -0
  22. package/themes/calendar/index.scss +2 -0
  23. package/themes/calendar/index.styl +2 -0
  24. package/themes/calendarDark/cssVars/declarations/index.css +4 -0
  25. package/themes/calendarDark/cssVars/declarations/onlyMedia.css +2 -0
  26. package/themes/calendarDark/cssVars/declarations/onlyVariables.css +2 -0
  27. package/themes/calendarDark/cssVars/declarations/onlyVariables.js +2 -2
  28. package/themes/calendarDark/cssVars/theme/fallbacks/index.css +2 -0
  29. package/themes/calendarDark/cssVars/theme/fallbacks/index.less +2 -0
  30. package/themes/calendarDark/cssVars/theme/fallbacks/index.pcss +2 -0
  31. package/themes/calendarDark/cssVars/theme/fallbacks/index.scss +2 -0
  32. package/themes/calendarDark/cssVars/theme/fallbacks/index.styl +2 -0
  33. package/themes/calendarDark/cssVars/theme/index.js +20 -0
  34. package/themes/calendarDark/cssVars/theme/index.json +20 -0
  35. package/themes/calendarDark/index.css +2 -0
  36. package/themes/calendarDark/index.js +6 -0
  37. package/themes/calendarDark/index.json +6 -0
  38. package/themes/calendarDark/index.less +2 -0
  39. package/themes/calendarDark/index.pcss +2 -0
  40. package/themes/calendarDark/index.scss +2 -0
  41. package/themes/calendarDark/index.styl +2 -0
  42. package/themes/calls/cssVars/declarations/index.css +4 -0
  43. package/themes/calls/cssVars/declarations/onlyMedia.css +2 -0
  44. package/themes/calls/cssVars/declarations/onlyVariables.css +2 -0
  45. package/themes/calls/cssVars/declarations/onlyVariables.js +2 -2
  46. package/themes/calls/cssVars/theme/fallbacks/index.css +2 -0
  47. package/themes/calls/cssVars/theme/fallbacks/index.less +2 -0
  48. package/themes/calls/cssVars/theme/fallbacks/index.pcss +2 -0
  49. package/themes/calls/cssVars/theme/fallbacks/index.scss +2 -0
  50. package/themes/calls/cssVars/theme/fallbacks/index.styl +2 -0
  51. package/themes/calls/cssVars/theme/index.js +20 -0
  52. package/themes/calls/cssVars/theme/index.json +20 -0
  53. package/themes/calls/index.css +2 -0
  54. package/themes/calls/index.js +6 -0
  55. package/themes/calls/index.json +6 -0
  56. package/themes/calls/index.less +2 -0
  57. package/themes/calls/index.pcss +2 -0
  58. package/themes/calls/index.scss +2 -0
  59. package/themes/calls/index.styl +2 -0
  60. package/themes/cloud/cssVars/declarations/index.css +4 -0
  61. package/themes/cloud/cssVars/declarations/onlyMedia.css +2 -0
  62. package/themes/cloud/cssVars/declarations/onlyVariables.css +2 -0
  63. package/themes/cloud/cssVars/declarations/onlyVariables.js +2 -2
  64. package/themes/cloud/cssVars/theme/fallbacks/index.css +2 -0
  65. package/themes/cloud/cssVars/theme/fallbacks/index.less +2 -0
  66. package/themes/cloud/cssVars/theme/fallbacks/index.pcss +2 -0
  67. package/themes/cloud/cssVars/theme/fallbacks/index.scss +2 -0
  68. package/themes/cloud/cssVars/theme/fallbacks/index.styl +2 -0
  69. package/themes/cloud/cssVars/theme/index.js +20 -0
  70. package/themes/cloud/cssVars/theme/index.json +20 -0
  71. package/themes/cloud/index.css +2 -0
  72. package/themes/cloud/index.js +6 -0
  73. package/themes/cloud/index.json +6 -0
  74. package/themes/cloud/index.less +2 -0
  75. package/themes/cloud/index.pcss +2 -0
  76. package/themes/cloud/index.scss +2 -0
  77. package/themes/cloud/index.styl +2 -0
  78. package/themes/home/cssVars/declarations/index.css +4 -0
  79. package/themes/home/cssVars/declarations/onlyMedia.css +2 -0
  80. package/themes/home/cssVars/declarations/onlyVariables.css +2 -0
  81. package/themes/home/cssVars/declarations/onlyVariables.js +2 -2
  82. package/themes/home/cssVars/theme/fallbacks/index.css +2 -0
  83. package/themes/home/cssVars/theme/fallbacks/index.less +2 -0
  84. package/themes/home/cssVars/theme/fallbacks/index.pcss +2 -0
  85. package/themes/home/cssVars/theme/fallbacks/index.scss +2 -0
  86. package/themes/home/cssVars/theme/fallbacks/index.styl +2 -0
  87. package/themes/home/cssVars/theme/index.js +20 -0
  88. package/themes/home/cssVars/theme/index.json +20 -0
  89. package/themes/home/index.css +2 -0
  90. package/themes/home/index.js +6 -0
  91. package/themes/home/index.json +6 -0
  92. package/themes/home/index.less +2 -0
  93. package/themes/home/index.pcss +2 -0
  94. package/themes/home/index.scss +2 -0
  95. package/themes/home/index.styl +2 -0
  96. package/themes/homeDark/cssVars/declarations/index.css +4 -0
  97. package/themes/homeDark/cssVars/declarations/onlyMedia.css +2 -0
  98. package/themes/homeDark/cssVars/declarations/onlyVariables.css +2 -0
  99. package/themes/homeDark/cssVars/declarations/onlyVariables.js +2 -2
  100. package/themes/homeDark/cssVars/theme/fallbacks/index.css +2 -0
  101. package/themes/homeDark/cssVars/theme/fallbacks/index.less +2 -0
  102. package/themes/homeDark/cssVars/theme/fallbacks/index.pcss +2 -0
  103. package/themes/homeDark/cssVars/theme/fallbacks/index.scss +2 -0
  104. package/themes/homeDark/cssVars/theme/fallbacks/index.styl +2 -0
  105. package/themes/homeDark/cssVars/theme/index.js +20 -0
  106. package/themes/homeDark/cssVars/theme/index.json +20 -0
  107. package/themes/homeDark/index.css +2 -0
  108. package/themes/homeDark/index.js +6 -0
  109. package/themes/homeDark/index.json +6 -0
  110. package/themes/homeDark/index.less +2 -0
  111. package/themes/homeDark/index.pcss +2 -0
  112. package/themes/homeDark/index.scss +2 -0
  113. package/themes/homeDark/index.styl +2 -0
  114. package/themes/media/cssVars/declarations/index.css +4 -0
  115. package/themes/media/cssVars/declarations/onlyMedia.css +2 -0
  116. package/themes/media/cssVars/declarations/onlyVariables.css +2 -0
  117. package/themes/media/cssVars/declarations/onlyVariables.js +2 -2
  118. package/themes/media/cssVars/theme/fallbacks/index.css +2 -0
  119. package/themes/media/cssVars/theme/fallbacks/index.less +2 -0
  120. package/themes/media/cssVars/theme/fallbacks/index.pcss +2 -0
  121. package/themes/media/cssVars/theme/fallbacks/index.scss +2 -0
  122. package/themes/media/cssVars/theme/fallbacks/index.styl +2 -0
  123. package/themes/media/cssVars/theme/index.js +20 -0
  124. package/themes/media/cssVars/theme/index.json +20 -0
  125. package/themes/media/index.css +2 -0
  126. package/themes/media/index.js +6 -0
  127. package/themes/media/index.json +6 -0
  128. package/themes/media/index.less +2 -0
  129. package/themes/media/index.pcss +2 -0
  130. package/themes/media/index.scss +2 -0
  131. package/themes/media/index.styl +2 -0
  132. package/themes/mediaDark/cssVars/declarations/index.css +4 -0
  133. package/themes/mediaDark/cssVars/declarations/onlyMedia.css +2 -0
  134. package/themes/mediaDark/cssVars/declarations/onlyVariables.css +2 -0
  135. package/themes/mediaDark/cssVars/declarations/onlyVariables.js +2 -2
  136. package/themes/mediaDark/cssVars/theme/fallbacks/index.css +2 -0
  137. package/themes/mediaDark/cssVars/theme/fallbacks/index.less +2 -0
  138. package/themes/mediaDark/cssVars/theme/fallbacks/index.pcss +2 -0
  139. package/themes/mediaDark/cssVars/theme/fallbacks/index.scss +2 -0
  140. package/themes/mediaDark/cssVars/theme/fallbacks/index.styl +2 -0
  141. package/themes/mediaDark/cssVars/theme/index.js +20 -0
  142. package/themes/mediaDark/cssVars/theme/index.json +20 -0
  143. package/themes/mediaDark/index.css +2 -0
  144. package/themes/mediaDark/index.js +6 -0
  145. package/themes/mediaDark/index.json +6 -0
  146. package/themes/mediaDark/index.less +2 -0
  147. package/themes/mediaDark/index.pcss +2 -0
  148. package/themes/mediaDark/index.scss +2 -0
  149. package/themes/mediaDark/index.styl +2 -0
  150. package/themes/mycom/cssVars/declarations/index.css +4 -0
  151. package/themes/mycom/cssVars/declarations/onlyMedia.css +2 -0
  152. package/themes/mycom/cssVars/declarations/onlyVariables.css +2 -0
  153. package/themes/mycom/cssVars/declarations/onlyVariables.js +2 -2
  154. package/themes/mycom/cssVars/theme/fallbacks/index.css +2 -0
  155. package/themes/mycom/cssVars/theme/fallbacks/index.less +2 -0
  156. package/themes/mycom/cssVars/theme/fallbacks/index.pcss +2 -0
  157. package/themes/mycom/cssVars/theme/fallbacks/index.scss +2 -0
  158. package/themes/mycom/cssVars/theme/fallbacks/index.styl +2 -0
  159. package/themes/mycom/cssVars/theme/index.js +20 -0
  160. package/themes/mycom/cssVars/theme/index.json +20 -0
  161. package/themes/mycom/index.css +2 -0
  162. package/themes/mycom/index.js +6 -0
  163. package/themes/mycom/index.json +6 -0
  164. package/themes/mycom/index.less +2 -0
  165. package/themes/mycom/index.pcss +2 -0
  166. package/themes/mycom/index.scss +2 -0
  167. package/themes/mycom/index.styl +2 -0
  168. package/themes/octavius/cssVars/declarations/index.css +4 -0
  169. package/themes/octavius/cssVars/declarations/onlyMedia.css +2 -0
  170. package/themes/octavius/cssVars/declarations/onlyVariables.css +2 -0
  171. package/themes/octavius/cssVars/declarations/onlyVariables.js +2 -2
  172. package/themes/octavius/cssVars/theme/fallbacks/index.css +2 -0
  173. package/themes/octavius/cssVars/theme/fallbacks/index.less +2 -0
  174. package/themes/octavius/cssVars/theme/fallbacks/index.pcss +2 -0
  175. package/themes/octavius/cssVars/theme/fallbacks/index.scss +2 -0
  176. package/themes/octavius/cssVars/theme/fallbacks/index.styl +2 -0
  177. package/themes/octavius/cssVars/theme/index.js +20 -0
  178. package/themes/octavius/cssVars/theme/index.json +20 -0
  179. package/themes/octavius/index.css +2 -0
  180. package/themes/octavius/index.js +6 -0
  181. package/themes/octavius/index.json +6 -0
  182. package/themes/octavius/index.less +2 -0
  183. package/themes/octavius/index.pcss +2 -0
  184. package/themes/octavius/index.scss +2 -0
  185. package/themes/octavius/index.styl +2 -0
  186. package/themes/octaviusCompact/cssVars/declarations/index.css +4 -0
  187. package/themes/octaviusCompact/cssVars/declarations/onlyMedia.css +2 -0
  188. package/themes/octaviusCompact/cssVars/declarations/onlyVariables.css +2 -0
  189. package/themes/octaviusCompact/cssVars/declarations/onlyVariables.js +2 -2
  190. package/themes/octaviusCompact/cssVars/theme/fallbacks/index.css +2 -0
  191. package/themes/octaviusCompact/cssVars/theme/fallbacks/index.less +2 -0
  192. package/themes/octaviusCompact/cssVars/theme/fallbacks/index.pcss +2 -0
  193. package/themes/octaviusCompact/cssVars/theme/fallbacks/index.scss +2 -0
  194. package/themes/octaviusCompact/cssVars/theme/fallbacks/index.styl +2 -0
  195. package/themes/octaviusCompact/cssVars/theme/index.js +20 -0
  196. package/themes/octaviusCompact/cssVars/theme/index.json +20 -0
  197. package/themes/octaviusCompact/index.css +2 -0
  198. package/themes/octaviusCompact/index.js +6 -0
  199. package/themes/octaviusCompact/index.json +6 -0
  200. package/themes/octaviusCompact/index.less +2 -0
  201. package/themes/octaviusCompact/index.pcss +2 -0
  202. package/themes/octaviusCompact/index.scss +2 -0
  203. package/themes/octaviusCompact/index.styl +2 -0
  204. package/themes/octaviusCompactDark/cssVars/declarations/index.css +4 -0
  205. package/themes/octaviusCompactDark/cssVars/declarations/onlyMedia.css +2 -0
  206. package/themes/octaviusCompactDark/cssVars/declarations/onlyVariables.css +2 -0
  207. package/themes/octaviusCompactDark/cssVars/declarations/onlyVariables.js +2 -2
  208. package/themes/octaviusCompactDark/cssVars/theme/fallbacks/index.css +2 -0
  209. package/themes/octaviusCompactDark/cssVars/theme/fallbacks/index.less +2 -0
  210. package/themes/octaviusCompactDark/cssVars/theme/fallbacks/index.pcss +2 -0
  211. package/themes/octaviusCompactDark/cssVars/theme/fallbacks/index.scss +2 -0
  212. package/themes/octaviusCompactDark/cssVars/theme/fallbacks/index.styl +2 -0
  213. package/themes/octaviusCompactDark/cssVars/theme/index.js +20 -0
  214. package/themes/octaviusCompactDark/cssVars/theme/index.json +20 -0
  215. package/themes/octaviusCompactDark/index.css +2 -0
  216. package/themes/octaviusCompactDark/index.js +6 -0
  217. package/themes/octaviusCompactDark/index.json +6 -0
  218. package/themes/octaviusCompactDark/index.less +2 -0
  219. package/themes/octaviusCompactDark/index.pcss +2 -0
  220. package/themes/octaviusCompactDark/index.scss +2 -0
  221. package/themes/octaviusCompactDark/index.styl +2 -0
  222. package/themes/octaviusDark/cssVars/declarations/index.css +4 -0
  223. package/themes/octaviusDark/cssVars/declarations/onlyMedia.css +2 -0
  224. package/themes/octaviusDark/cssVars/declarations/onlyVariables.css +2 -0
  225. package/themes/octaviusDark/cssVars/declarations/onlyVariables.js +2 -2
  226. package/themes/octaviusDark/cssVars/theme/fallbacks/index.css +2 -0
  227. package/themes/octaviusDark/cssVars/theme/fallbacks/index.less +2 -0
  228. package/themes/octaviusDark/cssVars/theme/fallbacks/index.pcss +2 -0
  229. package/themes/octaviusDark/cssVars/theme/fallbacks/index.scss +2 -0
  230. package/themes/octaviusDark/cssVars/theme/fallbacks/index.styl +2 -0
  231. package/themes/octaviusDark/cssVars/theme/index.js +20 -0
  232. package/themes/octaviusDark/cssVars/theme/index.json +20 -0
  233. package/themes/octaviusDark/index.css +2 -0
  234. package/themes/octaviusDark/index.js +6 -0
  235. package/themes/octaviusDark/index.json +6 -0
  236. package/themes/octaviusDark/index.less +2 -0
  237. package/themes/octaviusDark/index.pcss +2 -0
  238. package/themes/octaviusDark/index.scss +2 -0
  239. package/themes/octaviusDark/index.styl +2 -0
  240. package/themes/octaviusVK/cssVars/declarations/index.css +55 -51
  241. package/themes/octaviusVK/cssVars/declarations/noSizes.css +51 -51
  242. package/themes/octaviusVK/cssVars/declarations/onlyColors.css +51 -51
  243. package/themes/octaviusVK/cssVars/declarations/onlyColors.js +2 -2
  244. package/themes/octaviusVK/cssVars/declarations/onlyMedia.css +2 -0
  245. package/themes/octaviusVK/cssVars/declarations/onlyVariables.css +53 -51
  246. package/themes/octaviusVK/cssVars/declarations/onlyVariables.js +2 -2
  247. package/themes/octaviusVK/cssVars/theme/fallbacks/index.css +53 -51
  248. package/themes/octaviusVK/cssVars/theme/fallbacks/index.less +53 -51
  249. package/themes/octaviusVK/cssVars/theme/fallbacks/index.pcss +53 -51
  250. package/themes/octaviusVK/cssVars/theme/fallbacks/index.scss +53 -51
  251. package/themes/octaviusVK/cssVars/theme/fallbacks/index.styl +53 -51
  252. package/themes/octaviusVK/cssVars/theme/index.js +71 -51
  253. package/themes/octaviusVK/cssVars/theme/index.json +71 -51
  254. package/themes/octaviusVK/index.css +53 -51
  255. package/themes/octaviusVK/index.js +57 -51
  256. package/themes/octaviusVK/index.json +57 -51
  257. package/themes/octaviusVK/index.less +53 -51
  258. package/themes/octaviusVK/index.pcss +53 -51
  259. package/themes/octaviusVK/index.scss +53 -51
  260. package/themes/octaviusVK/index.styl +53 -51
  261. package/themes/octaviusVKDark/cssVars/declarations/index.css +47 -43
  262. package/themes/octaviusVKDark/cssVars/declarations/noSizes.css +43 -43
  263. package/themes/octaviusVKDark/cssVars/declarations/onlyColors.css +43 -43
  264. package/themes/octaviusVKDark/cssVars/declarations/onlyColors.js +2 -2
  265. package/themes/octaviusVKDark/cssVars/declarations/onlyMedia.css +2 -0
  266. package/themes/octaviusVKDark/cssVars/declarations/onlyVariables.css +45 -43
  267. package/themes/octaviusVKDark/cssVars/declarations/onlyVariables.js +2 -2
  268. package/themes/octaviusVKDark/cssVars/theme/fallbacks/index.css +45 -43
  269. package/themes/octaviusVKDark/cssVars/theme/fallbacks/index.less +45 -43
  270. package/themes/octaviusVKDark/cssVars/theme/fallbacks/index.pcss +45 -43
  271. package/themes/octaviusVKDark/cssVars/theme/fallbacks/index.scss +45 -43
  272. package/themes/octaviusVKDark/cssVars/theme/fallbacks/index.styl +45 -43
  273. package/themes/octaviusVKDark/cssVars/theme/index.js +63 -43
  274. package/themes/octaviusVKDark/cssVars/theme/index.json +63 -43
  275. package/themes/octaviusVKDark/index.css +45 -43
  276. package/themes/octaviusVKDark/index.js +49 -43
  277. package/themes/octaviusVKDark/index.json +49 -43
  278. package/themes/octaviusVKDark/index.less +45 -43
  279. package/themes/octaviusVKDark/index.pcss +45 -43
  280. package/themes/octaviusVKDark/index.scss +45 -43
  281. package/themes/octaviusVKDark/index.styl +45 -43
  282. package/themes/octaviusWhite/cssVars/declarations/index.css +4 -0
  283. package/themes/octaviusWhite/cssVars/declarations/onlyMedia.css +2 -0
  284. package/themes/octaviusWhite/cssVars/declarations/onlyVariables.css +2 -0
  285. package/themes/octaviusWhite/cssVars/declarations/onlyVariables.js +2 -2
  286. package/themes/octaviusWhite/cssVars/theme/fallbacks/index.css +2 -0
  287. package/themes/octaviusWhite/cssVars/theme/fallbacks/index.less +2 -0
  288. package/themes/octaviusWhite/cssVars/theme/fallbacks/index.pcss +2 -0
  289. package/themes/octaviusWhite/cssVars/theme/fallbacks/index.scss +2 -0
  290. package/themes/octaviusWhite/cssVars/theme/fallbacks/index.styl +2 -0
  291. package/themes/octaviusWhite/cssVars/theme/index.js +20 -0
  292. package/themes/octaviusWhite/cssVars/theme/index.json +20 -0
  293. package/themes/octaviusWhite/index.css +2 -0
  294. package/themes/octaviusWhite/index.js +6 -0
  295. package/themes/octaviusWhite/index.json +6 -0
  296. package/themes/octaviusWhite/index.less +2 -0
  297. package/themes/octaviusWhite/index.pcss +2 -0
  298. package/themes/octaviusWhite/index.scss +2 -0
  299. package/themes/octaviusWhite/index.styl +2 -0
  300. package/themes/otvet/cssVars/declarations/index.css +4 -0
  301. package/themes/otvet/cssVars/declarations/onlyMedia.css +2 -0
  302. package/themes/otvet/cssVars/declarations/onlyVariables.css +2 -0
  303. package/themes/otvet/cssVars/declarations/onlyVariables.js +2 -2
  304. package/themes/otvet/cssVars/theme/fallbacks/index.css +2 -0
  305. package/themes/otvet/cssVars/theme/fallbacks/index.less +2 -0
  306. package/themes/otvet/cssVars/theme/fallbacks/index.pcss +2 -0
  307. package/themes/otvet/cssVars/theme/fallbacks/index.scss +2 -0
  308. package/themes/otvet/cssVars/theme/fallbacks/index.styl +2 -0
  309. package/themes/otvet/cssVars/theme/index.js +20 -0
  310. package/themes/otvet/cssVars/theme/index.json +20 -0
  311. package/themes/otvet/index.css +2 -0
  312. package/themes/otvet/index.js +6 -0
  313. package/themes/otvet/index.json +6 -0
  314. package/themes/otvet/index.less +2 -0
  315. package/themes/otvet/index.pcss +2 -0
  316. package/themes/otvet/index.scss +2 -0
  317. package/themes/otvet/index.styl +2 -0
  318. package/themes/otvetDark/cssVars/declarations/index.css +4 -0
  319. package/themes/otvetDark/cssVars/declarations/onlyMedia.css +2 -0
  320. package/themes/otvetDark/cssVars/declarations/onlyVariables.css +2 -0
  321. package/themes/otvetDark/cssVars/declarations/onlyVariables.js +2 -2
  322. package/themes/otvetDark/cssVars/theme/fallbacks/index.css +2 -0
  323. package/themes/otvetDark/cssVars/theme/fallbacks/index.less +2 -0
  324. package/themes/otvetDark/cssVars/theme/fallbacks/index.pcss +2 -0
  325. package/themes/otvetDark/cssVars/theme/fallbacks/index.scss +2 -0
  326. package/themes/otvetDark/cssVars/theme/fallbacks/index.styl +2 -0
  327. package/themes/otvetDark/cssVars/theme/index.js +20 -0
  328. package/themes/otvetDark/cssVars/theme/index.json +20 -0
  329. package/themes/otvetDark/index.css +2 -0
  330. package/themes/otvetDark/index.js +6 -0
  331. package/themes/otvetDark/index.json +6 -0
  332. package/themes/otvetDark/index.less +2 -0
  333. package/themes/otvetDark/index.pcss +2 -0
  334. package/themes/otvetDark/index.scss +2 -0
  335. package/themes/otvetDark/index.styl +2 -0
  336. package/themes/paradigmBase/cssVars/declarations/index.css +4 -0
  337. package/themes/paradigmBase/cssVars/declarations/onlyMedia.css +2 -0
  338. package/themes/paradigmBase/cssVars/declarations/onlyVariables.css +2 -0
  339. package/themes/paradigmBase/cssVars/declarations/onlyVariables.js +2 -2
  340. package/themes/paradigmBase/cssVars/theme/fallbacks/index.css +2 -0
  341. package/themes/paradigmBase/cssVars/theme/fallbacks/index.less +2 -0
  342. package/themes/paradigmBase/cssVars/theme/fallbacks/index.pcss +2 -0
  343. package/themes/paradigmBase/cssVars/theme/fallbacks/index.scss +2 -0
  344. package/themes/paradigmBase/cssVars/theme/fallbacks/index.styl +2 -0
  345. package/themes/paradigmBase/cssVars/theme/index.js +20 -0
  346. package/themes/paradigmBase/cssVars/theme/index.json +20 -0
  347. package/themes/paradigmBase/index.css +2 -0
  348. package/themes/paradigmBase/index.js +6 -0
  349. package/themes/paradigmBase/index.json +6 -0
  350. package/themes/paradigmBase/index.less +2 -0
  351. package/themes/paradigmBase/index.pcss +2 -0
  352. package/themes/paradigmBase/index.scss +2 -0
  353. package/themes/paradigmBase/index.styl +2 -0
  354. package/themes/paradigmBaseDark/cssVars/declarations/index.css +4 -0
  355. package/themes/paradigmBaseDark/cssVars/declarations/onlyMedia.css +2 -0
  356. package/themes/paradigmBaseDark/cssVars/declarations/onlyVariables.css +2 -0
  357. package/themes/paradigmBaseDark/cssVars/declarations/onlyVariables.js +2 -2
  358. package/themes/paradigmBaseDark/cssVars/theme/fallbacks/index.css +2 -0
  359. package/themes/paradigmBaseDark/cssVars/theme/fallbacks/index.less +2 -0
  360. package/themes/paradigmBaseDark/cssVars/theme/fallbacks/index.pcss +2 -0
  361. package/themes/paradigmBaseDark/cssVars/theme/fallbacks/index.scss +2 -0
  362. package/themes/paradigmBaseDark/cssVars/theme/fallbacks/index.styl +2 -0
  363. package/themes/paradigmBaseDark/cssVars/theme/index.js +20 -0
  364. package/themes/paradigmBaseDark/cssVars/theme/index.json +20 -0
  365. package/themes/paradigmBaseDark/index.css +2 -0
  366. package/themes/paradigmBaseDark/index.js +6 -0
  367. package/themes/paradigmBaseDark/index.json +6 -0
  368. package/themes/paradigmBaseDark/index.less +2 -0
  369. package/themes/paradigmBaseDark/index.pcss +2 -0
  370. package/themes/paradigmBaseDark/index.scss +2 -0
  371. package/themes/paradigmBaseDark/index.styl +2 -0
  372. package/themes/pharma/cssVars/declarations/index.css +4 -0
  373. package/themes/pharma/cssVars/declarations/onlyMedia.css +2 -0
  374. package/themes/pharma/cssVars/declarations/onlyVariables.css +2 -0
  375. package/themes/pharma/cssVars/declarations/onlyVariables.js +2 -2
  376. package/themes/pharma/cssVars/theme/fallbacks/index.css +2 -0
  377. package/themes/pharma/cssVars/theme/fallbacks/index.less +2 -0
  378. package/themes/pharma/cssVars/theme/fallbacks/index.pcss +2 -0
  379. package/themes/pharma/cssVars/theme/fallbacks/index.scss +2 -0
  380. package/themes/pharma/cssVars/theme/fallbacks/index.styl +2 -0
  381. package/themes/pharma/cssVars/theme/index.js +20 -0
  382. package/themes/pharma/cssVars/theme/index.json +20 -0
  383. package/themes/pharma/index.css +2 -0
  384. package/themes/pharma/index.js +6 -0
  385. package/themes/pharma/index.json +6 -0
  386. package/themes/pharma/index.less +2 -0
  387. package/themes/pharma/index.pcss +2 -0
  388. package/themes/pharma/index.scss +2 -0
  389. package/themes/pharma/index.styl +2 -0
  390. package/themes/promo/cssVars/declarations/index.css +4 -0
  391. package/themes/promo/cssVars/declarations/onlyMedia.css +2 -0
  392. package/themes/promo/cssVars/declarations/onlyVariables.css +2 -0
  393. package/themes/promo/cssVars/declarations/onlyVariables.js +2 -2
  394. package/themes/promo/cssVars/theme/fallbacks/index.css +2 -0
  395. package/themes/promo/cssVars/theme/fallbacks/index.less +2 -0
  396. package/themes/promo/cssVars/theme/fallbacks/index.pcss +2 -0
  397. package/themes/promo/cssVars/theme/fallbacks/index.scss +2 -0
  398. package/themes/promo/cssVars/theme/fallbacks/index.styl +2 -0
  399. package/themes/promo/cssVars/theme/index.js +20 -0
  400. package/themes/promo/cssVars/theme/index.json +20 -0
  401. package/themes/promo/index.css +2 -0
  402. package/themes/promo/index.js +6 -0
  403. package/themes/promo/index.json +6 -0
  404. package/themes/promo/index.less +2 -0
  405. package/themes/promo/index.pcss +2 -0
  406. package/themes/promo/index.scss +2 -0
  407. package/themes/promo/index.styl +2 -0
  408. package/themes/todo/cssVars/declarations/index.css +4 -0
  409. package/themes/todo/cssVars/declarations/onlyMedia.css +2 -0
  410. package/themes/todo/cssVars/declarations/onlyVariables.css +2 -0
  411. package/themes/todo/cssVars/declarations/onlyVariables.js +2 -2
  412. package/themes/todo/cssVars/theme/fallbacks/index.css +2 -0
  413. package/themes/todo/cssVars/theme/fallbacks/index.less +2 -0
  414. package/themes/todo/cssVars/theme/fallbacks/index.pcss +2 -0
  415. package/themes/todo/cssVars/theme/fallbacks/index.scss +2 -0
  416. package/themes/todo/cssVars/theme/fallbacks/index.styl +2 -0
  417. package/themes/todo/cssVars/theme/index.js +20 -0
  418. package/themes/todo/cssVars/theme/index.json +20 -0
  419. package/themes/todo/index.css +2 -0
  420. package/themes/todo/index.js +6 -0
  421. package/themes/todo/index.json +6 -0
  422. package/themes/todo/index.less +2 -0
  423. package/themes/todo/index.pcss +2 -0
  424. package/themes/todo/index.scss +2 -0
  425. package/themes/todo/index.styl +2 -0
  426. package/themes/vkBase/cssVars/declarations/index.css +125 -123
  427. package/themes/vkBase/cssVars/declarations/noSizes.css +123 -123
  428. package/themes/vkBase/cssVars/declarations/onlyColors.css +123 -123
  429. package/themes/vkBase/cssVars/declarations/onlyColors.js +2 -2
  430. package/themes/vkBase/cssVars/declarations/onlyVariables.css +125 -123
  431. package/themes/vkBase/cssVars/declarations/onlyVariables.js +2 -2
  432. package/themes/vkBase/cssVars/theme/fallbacks/index.css +125 -123
  433. package/themes/vkBase/cssVars/theme/fallbacks/index.less +125 -123
  434. package/themes/vkBase/cssVars/theme/fallbacks/index.pcss +125 -123
  435. package/themes/vkBase/cssVars/theme/fallbacks/index.scss +125 -123
  436. package/themes/vkBase/cssVars/theme/fallbacks/index.styl +125 -123
  437. package/themes/vkBase/cssVars/theme/index.js +457 -437
  438. package/themes/vkBase/cssVars/theme/index.json +457 -437
  439. package/themes/vkBase/index.css +125 -123
  440. package/themes/vkBase/index.js +185 -179
  441. package/themes/vkBase/index.json +185 -179
  442. package/themes/vkBase/index.less +125 -123
  443. package/themes/vkBase/index.pcss +125 -123
  444. package/themes/vkBase/index.scss +125 -123
  445. package/themes/vkBase/index.styl +125 -123
  446. package/themes/vkBaseDark/cssVars/declarations/index.css +126 -124
  447. package/themes/vkBaseDark/cssVars/declarations/noSizes.css +124 -124
  448. package/themes/vkBaseDark/cssVars/declarations/onlyColors.css +124 -124
  449. package/themes/vkBaseDark/cssVars/declarations/onlyColors.js +2 -2
  450. package/themes/vkBaseDark/cssVars/declarations/onlyVariables.css +126 -124
  451. package/themes/vkBaseDark/cssVars/declarations/onlyVariables.js +2 -2
  452. package/themes/vkBaseDark/cssVars/theme/fallbacks/index.css +126 -124
  453. package/themes/vkBaseDark/cssVars/theme/fallbacks/index.less +126 -124
  454. package/themes/vkBaseDark/cssVars/theme/fallbacks/index.pcss +126 -124
  455. package/themes/vkBaseDark/cssVars/theme/fallbacks/index.scss +126 -124
  456. package/themes/vkBaseDark/cssVars/theme/fallbacks/index.styl +126 -124
  457. package/themes/vkBaseDark/cssVars/theme/index.js +470 -450
  458. package/themes/vkBaseDark/cssVars/theme/index.json +470 -450
  459. package/themes/vkBaseDark/index.css +126 -124
  460. package/themes/vkBaseDark/index.js +195 -189
  461. package/themes/vkBaseDark/index.json +195 -189
  462. package/themes/vkBaseDark/index.less +126 -124
  463. package/themes/vkBaseDark/index.pcss +126 -124
  464. package/themes/vkBaseDark/index.scss +126 -124
  465. package/themes/vkBaseDark/index.styl +126 -124
  466. package/themes/vkCom/cssVars/declarations/index.css +125 -123
  467. package/themes/vkCom/cssVars/declarations/noSizes.css +123 -123
  468. package/themes/vkCom/cssVars/declarations/onlyColors.css +123 -123
  469. package/themes/vkCom/cssVars/declarations/onlyColors.js +2 -2
  470. package/themes/vkCom/cssVars/declarations/onlyVariables.css +125 -123
  471. package/themes/vkCom/cssVars/declarations/onlyVariables.js +2 -2
  472. package/themes/vkCom/cssVars/theme/fallbacks/index.css +125 -123
  473. package/themes/vkCom/cssVars/theme/fallbacks/index.less +125 -123
  474. package/themes/vkCom/cssVars/theme/fallbacks/index.pcss +125 -123
  475. package/themes/vkCom/cssVars/theme/fallbacks/index.scss +125 -123
  476. package/themes/vkCom/cssVars/theme/fallbacks/index.styl +125 -123
  477. package/themes/vkCom/cssVars/theme/index.js +457 -437
  478. package/themes/vkCom/cssVars/theme/index.json +457 -437
  479. package/themes/vkCom/index.css +125 -123
  480. package/themes/vkCom/index.js +185 -179
  481. package/themes/vkCom/index.json +185 -179
  482. package/themes/vkCom/index.less +125 -123
  483. package/themes/vkCom/index.pcss +125 -123
  484. package/themes/vkCom/index.scss +125 -123
  485. package/themes/vkCom/index.styl +125 -123
  486. package/themes/vkIOS/cssVars/declarations/index.css +125 -123
  487. package/themes/vkIOS/cssVars/declarations/noSizes.css +123 -123
  488. package/themes/vkIOS/cssVars/declarations/onlyColors.css +123 -123
  489. package/themes/vkIOS/cssVars/declarations/onlyColors.js +2 -2
  490. package/themes/vkIOS/cssVars/declarations/onlyVariables.css +125 -123
  491. package/themes/vkIOS/cssVars/declarations/onlyVariables.js +2 -2
  492. package/themes/vkIOS/cssVars/theme/fallbacks/index.css +125 -123
  493. package/themes/vkIOS/cssVars/theme/fallbacks/index.less +125 -123
  494. package/themes/vkIOS/cssVars/theme/fallbacks/index.pcss +125 -123
  495. package/themes/vkIOS/cssVars/theme/fallbacks/index.scss +125 -123
  496. package/themes/vkIOS/cssVars/theme/fallbacks/index.styl +125 -123
  497. package/themes/vkIOS/cssVars/theme/index.js +457 -437
  498. package/themes/vkIOS/cssVars/theme/index.json +457 -437
  499. package/themes/vkIOS/index.css +125 -123
  500. package/themes/vkIOS/index.js +185 -179
  501. package/themes/vkIOS/index.json +185 -179
  502. package/themes/vkIOS/index.less +125 -123
  503. package/themes/vkIOS/index.pcss +125 -123
  504. package/themes/vkIOS/index.scss +125 -123
  505. package/themes/vkIOS/index.styl +125 -123
  506. package/CHANGELOG.md +0 -139
package/README.md CHANGED
@@ -1,42 +1,86 @@
1
1
  <img src="assets/vkui_logo.png" alt="vkui logo" height="52"/>
2
2
  <img src="assets/logo.svg" alt="vkui logo" height="52"/>
3
3
 
4
+ [![Tests](https://github.com/VKCOM/vkui-tokens/actions/workflows/test.yml/badge.svg?branch=master)](https://github.com/VKCOM/vkui-tokens/actions/workflows/test.yml)
5
+ [![Npm](https://img.shields.io/npm/v/@vkontakte/vkui-tokens)](https://www.npmjs.com/package/@vkontakte/vkui-tokens)
6
+ [![GitHub Repo stars](https://img.shields.io/github/stars/VKCOM/vkui-tokens?label=GitHub%20Repo%20Stars&style=social)](https://github.com/VKCOM/vkui-tokens)
7
+
8
+ Этот репозиторий содержит токены единой дизайн-системы VKUI и
9
+ их значения для тем оформления различных проектов.
10
+
11
+ Темы собираются в следующие форматы: `css`, `scss`, `less`, `pcss`, `styl`, `js`, `json`.
12
+
13
+ Для описания интерфейсов тем и значений переменных используется TypeScript.
14
+
15
+ # Содержание
16
+
17
+ * [Использование](#использование)
18
+ * [Использование CSS-переменных темы напрямую из пакета](#использование-css-переменных-темы-напрямую-из-пакета)
19
+ * [Подключение темы на страницу](#подключение-темы-на-страницу)
20
+ * [Использование переменных в вёрстке](#использование-переменных-в-вёрстке)
21
+ * [Использование базовой темы напрямую из пакета](#использование-базовой-темы-напрямую-из-пакета)
22
+ * [Инструменты](#инструменты)
23
+ * [Локальная сборка своих тем инструментами библиотеки](#локальная-сборка-своих-тем-инструментами-библиотеки)
24
+ * [Наследование от существующей темы](#наследование-от-существующей-темы)
25
+ * [Создание собственной темы "с нуля"](#создание-собственной-темы-с-нуля)
26
+ * [Roadmap](#roadmap)
27
+ * [Полезные ссылки](#полезные-ссылки)
28
+ * [Информация для внесения изменений](CONTRIBUTING.md)
29
+ * [Changelog (архивная версия)](CHANGELOG.OLD.md)
30
+
31
+ Актуальный changelog находится на странице
32
+ [релизов в GitHub](https://github.com/VKCOM/vkui-tokens/releases)!
33
+
4
34
  # Использование
5
35
 
6
- 1. Устанавливаем npm-пакет `@vkontakte/vkui-tokens`:
36
+ Устанавливаем npm-пакет `@vkontakte/vkui-tokens`:
7
37
  ```bash
8
38
  npm i --save @vkontakte/vkui-tokens@latest
9
39
  ```
10
- ## Используем css variables темы напрямую из пакета
11
- 2. В любом css (или процессоре) импортируем css файл с объявлением переменных:
40
+ ## Использование CSS-переменных темы напрямую из пакета
41
+ ### Подключение темы на страницу
42
+
43
+ В любом CSS-файле подключаем файл темы со значениями переменных:
12
44
  ```css
13
45
  @import "@vkontakte/vkui-tokens/themes/vkBase/cssVars/declarations/index.css";
14
46
  ```
15
47
 
16
- 3. далее используем эти переменные
17
- * напрямую в css (процессорах)
48
+ ### Использование переменных в вёрстке
49
+ #### Использование в CSS
18
50
  ```postcss
19
51
  .myAwesomeClass:hover {
20
52
  background-color: var(--vkui--color_background--hover);
21
53
  }
22
54
  ```
23
- * или через объект в js(ts)
55
+
56
+ #### Использование CSS-переменных через объект в JavaScript (TypeScript)
24
57
  ```typescript
25
58
  import baseTheme from '@vkontakte/vkui-tokens/themes/vkBase/cssVars/theme';
26
59
 
60
+ // Собствено имя CSS-переменной (название токена)
27
61
  console.log(baseTheme.colorBackground.hover.name) // --vkui--color_background--hover;
62
+ // Сниппет для использования CSS-переменной
28
63
  console.log(baseTheme.colorBackground.hover.value) // var(--vkui--color_background--hover, #F5F5F7)
29
64
 
30
- // динамически (с учётом возможных переопределений)
31
- // узнаём чему равно значение переменной у myElement:
65
+ // Динамически (с учётом возможных переопределений)
66
+ // узнаём, чему равно значение переменной внутри myElement:
32
67
  getComputedStyle(myElement).getPropertyValue(baseTheme.colorBackground.hover.name)
33
68
  ```
34
- * для того, чтобы принудительно включать тот или иной вид темы у конкретного поддерева элементов, пользуемся классами `.vkui--force-${auto | regular | compact | large | largeX ...}`. Смотри [демо](demo/example-adaptive-css-vars-theme.html) работы адаптивных переменных и спец. классов. (Также можно просто использовать переменную конкретного брейкпоинта (ex. --vkui--size_field_height--**_compact_**), они все также попадают в `:root`)
35
69
 
70
+ #### Принудительное использование токенов определённого размера
71
+ Чтобы принудительно включить тот или иной вид темы у конкретного
72
+ поддерева элементов, нужно воспользоваться классами
73
+ `.vkui--force-${auto | regular | compact | large | largeX ...}`.
74
+ Смотри [демо](demo/example-adaptive-css-vars-theme.html) работы
75
+ адаптивных переменных и спец. классов.
36
76
 
37
- ## Используем root темы напрямую из пакета
77
+ Также можно просто использовать переменную конкретного брейкпоинта
78
+ (ex. --vkui--size_field_height--**_compact_**), они все тоже
79
+ попадают в `:root`)
80
+
81
+ ## Использование базовой темы напрямую из пакета
38
82
  ### js/ts/json
39
- 2. Импортируем необходимую тему в файле и используем:
83
+ Импортируем необходимую тему в файле и используем:
40
84
  ```ts
41
85
  import baseTheme from '@vkontakte/vkui-tokens/themes/vkBase';
42
86
 
@@ -44,7 +88,7 @@ import baseTheme from '@vkontakte/vkui-tokens/themes/vkBase';
44
88
  ```
45
89
 
46
90
  ### Используем в scss/styl/less root темы из пакета
47
- 2. Импортируем файл с необходимой темой и используем переменные от туда (снизу синтаксис SCSS)
91
+ Импортируем файл с необходимой темой и используем переменные от туда (снизу синтаксис SCSS)
48
92
  ```scss
49
93
  @import "~@vkontakte/vkui-tokens/themes/vkBase/index";
50
94
 
@@ -57,18 +101,17 @@ import baseTheme from '@vkontakte/vkui-tokens/themes/vkBase';
57
101
  }
58
102
  ```
59
103
 
60
-
61
104
  ### Используем pcss формат темы из пакета
62
105
 
63
- 2. Заходим в файл, где хотим использовать тему, и импортируем её:
106
+ 1Заходим в файл, где хотим использовать тему, и импортируем её:
64
107
 
65
108
  @import "@vkontakte/vkui-tokens/themes/vkBase";
66
109
 
67
- 3. Заходим в файл темы, смотрим какие там есть переменные и юзаем их, например:
110
+ 2. Заходим в файл темы, смотрим какие там есть переменные и юзаем их, например:
68
111
 
69
112
  width: var(--size-content-block-width);
70
113
 
71
- 4. Просто так ничего не заработает, нужно поставить postcss:
114
+ 3. Просто так ничего не заработает, нужно поставить postcss:
72
115
 
73
116
  npm i --save-dev postcss
74
117
 
@@ -76,35 +119,35 @@ import baseTheme from '@vkontakte/vkui-tokens/themes/vkBase';
76
119
 
77
120
  npm i --save-dev postcss-cli
78
121
 
79
- 5. Создаем конфиг postcss. Для этого создаем файл postcss.config.js (можно в любом месте проекта, но лучше в корне) и пишем в него необходимые плагины:
122
+ 4. Создаем конфиг postcss. Для этого создаем файл postcss.config.js (можно в любом месте проекта, но лучше в корне) и пишем в него необходимые плагины:
80
123
 
81
124
  ```javascript
82
125
  const postcssPresetEnv = require('postcss-preset-env');
83
126
 
84
127
  module.exports = {
85
- plugins: [
86
- require('postcss-import'),
87
- require('precss'),
88
- require('postcss-css-variables'),
89
- require('postcss-custom-media'),
90
- require('postcss-media-minmax'),
91
- require('postcss-extend-rule'),
92
- postcssPresetEnv({
93
- stage: 0,
94
- }),
95
- require('postcss-color-mix'),
96
- require('cssnano')
97
- ],
128
+ plugins: [
129
+ require('postcss-import'),
130
+ require('precss'),
131
+ require('postcss-css-variables'),
132
+ require('postcss-custom-media'),
133
+ require('postcss-media-minmax'),
134
+ require('postcss-extend-rule'),
135
+ postcssPresetEnv({
136
+ stage: 0,
137
+ }),
138
+ require('postcss-color-mix'),
139
+ require('cssnano')
140
+ ],
98
141
  };
99
142
  ```
100
143
  Возможно, вам не понадобятся все эти плагины, поэтому лучше почитать, что делает каждый из них (https://www.postcss.parts/).
101
144
  Нужно посмотреть файл вашей темы и ваш css (scss и др.), чтобы понять, что вам необходимо.
102
145
 
103
- 6. Устанавливаем все необходимые плагины, которые написали в конфиге, например:
146
+ 5. Устанавливаем все необходимые плагины, которые написали в конфиге, например:
104
147
 
105
148
  npm i --save-dev postcss-import
106
149
 
107
- 7. Настраиваем сборку postcss.
150
+ 6. Настраиваем сборку postcss.
108
151
 
109
152
  Сборка производится командой postcss через командную строку с необходимым параметрами.
110
153
  Про них подробнее тут https://github.com/postcss/postcss-cli
@@ -115,11 +158,21 @@ import baseTheme from '@vkontakte/vkui-tokens/themes/vkBase';
115
158
 
116
159
  Такая команда прогонит файл src/main.css с помощью конфига из текущей папки и положит результат в папку public.
117
160
 
161
+ # Инструменты
118
162
  ## Локальная сборка своих тем инструментами библиотеки
119
163
 
120
- ### Наследуемся от базовой темы
121
- 2. Из библиотеки можно импортировать интерфейсы и темы от которых насследоваться всячески доопределять.
122
- Также из библиотеки можно заимпортить функции позволяющие собрать тему (сгенировать состояния цветов, пикселизировать значения и т.д.) в нужном формате: css, js, scss и т.д. Пример:
164
+ Библиотека предоставляет интерфейсы и темы, от которых можно
165
+ наследоваться.
166
+
167
+ Помимо этого, библиотека предоставляет набор функций, которые позволяют
168
+ собрать собственную тему в нужном формате.
169
+
170
+ Сборка темы подразумевает раскрытие наследования, генерацию цветов
171
+ состояний (hover, active), округление и "пикселизация" значений и т.д.
172
+
173
+ ### Наследование от существующей темы
174
+ Пример:
175
+
123
176
  ```typescript
124
177
  import type {ThemeDescription} from '@vkontakte/vkui-tokens/interfaces/general';
125
178
  import type {Adaptive} from '@vkontakte/vkui-tokens/interfaces/general/tools';
@@ -147,8 +200,13 @@ const {theme, pixelifyTheme, cssVarsTheme} = expandAll(myNewAwesomeTheme);
147
200
  const cssString = compileStyles('css', pixelifyTheme);
148
201
  ```
149
202
 
150
- ### Собираем локально свою тему (набор своих локальных переменных проекта)
151
- 2. На самом деле никакой необходимости наследоваться (см. предыдущий пункт) нет, соберём свою тему из произвольного количества уникальных переменных. Пример:
203
+ ### Создание собственной темы нуля"
204
+ В некоторых случаях нет необходимости наследоваться от одной из
205
+ базовых тем. Библиотека позволяет сгенерировать свою тему из
206
+ произвольного количества уникальных переменных.
207
+
208
+ Пример:
209
+
152
210
  ```typescript
153
211
  import type {Adaptive} from '@vkontakte/vkui-tokens/interfaces/general/tools';
154
212
  import {expandAll} from '@vkontakte/vkui-tokens/build/expandTheme';
@@ -180,11 +238,19 @@ const {theme, pixelifyTheme, cssVarsTheme} = expandAll(myNewAwesomeTheme);
180
238
  const cssString = compileStyles('css', pixelifyTheme);
181
239
  ```
182
240
 
183
- # ROAD MAP библиотеки
184
- * [ ] Добавляем более умную генерацию active, hover состояний цвета. Будем учитывать тёмный и светлый вариант тем. Будем учитывать сам цвет, для которого генерим затемнение. (решаем проблему, что наведение на кнопки в синей шапке абсолютно не видны).
241
+ # Roadmap
242
+ * [ ] Добавить более умную генерацию active, hover состояний цвета.
243
+ При генерации нужно учитывать тёмный и светлый вариант тем, а также
244
+ сам цвет, для которого генерируется состояние.
245
+ (решаем проблему, что цвет наведения, сгенерированный от синего,
246
+ плохо виден на большинстве мониторов).
247
+ * [ ] Генерация цветов по заранее определённой палитре.
248
+ * [ ] Текстовое описание семантики каждого токена.
249
+ * [ ] Более подробная документация.
250
+ * [ ] Сайт с примерами и описанием.
185
251
 
186
252
  # Полезные ссылки
187
- 1. [Доклад](https://youtu.be/0rHgqQvl0NQ?t=1858) про дизайн-системы на фронтенде: там рассказывается зачем нужны дизайн-токены, причём тут UI-kit и как делать темизацию.
188
- 2. Серия видеороликов на youtube, где показано использование этой библиотеки (но со старым названием, не пугайтесь), как ядра дизайн-системы, на практике: [первый](https://www.youtube.com/watch?v=RKCsrPOxYWE), [второй](https://www.youtube.com/watch?v=ZhiH4jFL-kU), [третий](https://www.youtube.com/watch?v=ZXOmmkyxrwk)
253
+ 1. [Доклад](https://youtu.be/0rHgqQvl0NQ?t=1858) про дизайн-системы на фронтенде: там рассказывается, зачем нужны дизайн-токены, причём тут UI-kit и как делать темизацию.
254
+ 2. Серия видеороликов на youtube, где показано использование этой библиотеки (но со старым названием, не пугайтесь), как ядра дизайн-системы на практике: [первый](https://www.youtube.com/watch?v=RKCsrPOxYWE), [второй](https://www.youtube.com/watch?v=ZhiH4jFL-kU), [третий](https://www.youtube.com/watch?v=ZXOmmkyxrwk)
189
255
  3. Opensource библиотека компонентов (UI-kit) [VKUI](https://github.com/VKCOM/VKUI), которая использует токены.
190
- 4. [Сайт](https://paradigm.mail.ru/) дизайн системы Paradigm из которой выросла эта библиотека. Там можно найти дизайнерские принципы и идеи, которые стали основой кода находящемся в этом репозитории.
256
+ 4. [Сайт](https://paradigm.mail.ru/) дизайн-система Paradigm, из которой выросла эта библиотека. Там можно найти дизайнерские принципы и идеи, которые стали основой этого репозитория.
@@ -32,4 +32,6 @@ export interface Sizes {
32
32
  sizeBadgeM: number;
33
33
  sizeBadgeL: number;
34
34
  sizeBadgeXL: number;
35
+ sizeCardgridPadding: number;
36
+ sizeCardBorderRadius: number;
35
37
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vkontakte/vkui-tokens",
3
- "version": "4.0.0",
3
+ "version": "4.1.0",
4
4
  "description": "Репозиторий, который содержит в себе дизайн-токены и другие инструменты объединенной дизайн-системы VKUI и Paradigm",
5
5
  "license": "MIT",
6
6
  "main": "utils/descriptions.js",
@@ -407,6 +407,12 @@ exports.lightThemeBase = __assign(__assign({ themeName: 'paradigmBase' }, export
407
407
  }, sizeBadgeXL: {
408
408
  regular: 56,
409
409
  },
410
+ // Токены компонента Cardscroll
411
+ sizeCardgridPadding: {
412
+ regular: 12,
413
+ }, sizeCardBorderRadius: {
414
+ regular: 16,
415
+ },
410
416
  // Прочие отступы
411
417
  elevation1: '0 2px 0 0 rgba(0, 16, 61, 0.04)', elevation2: '0 4px 32px 0 rgba(0, 16, 61, 0.32)', elevation3: '0 16px 48px 0 rgba(0, 0, 0, 0.48)', elevation4: '0 16px 48px 0 rgba(0, 0, 0, 0.48)', animationDurationL: '0.4s', animationDurationM: '0.2s', animationDurationS: '0.1s', animationEasingDefault: 'cubic-bezier(0.3, 0.3, 0.5, 1)', opacityDisable: 0.48, opacityDisableAccessibility: 0.64 });
412
418
  var x05 = common_1.helpers.x05, x1 = common_1.helpers.x1, x2 = common_1.helpers.x2, x3 = common_1.helpers.x3, x4 = common_1.helpers.x4, x5 = common_1.helpers.x5, x6 = common_1.helpers.x6, x8 = common_1.helpers.x8, x10 = common_1.helpers.x10;
@@ -23,10 +23,16 @@ var fontWeightBase3 = 600;
23
23
  exports.lightColors = {
24
24
  colorsScheme: 'light',
25
25
  colors: {
26
- // Background
27
- colorBackgroundAccent: '#3F8AE0',
28
- colorBackgroundAccentThemed: '#3F8AE0',
29
- colorBackgroundAccentAlternative: '#3F8AE0',
26
+ colorBackgroundAccent: '#2688EB',
27
+ colorBackgroundAccentThemed: '#2688EB',
28
+ colorBackgroundAccentAlternative: '#2688EB',
29
+ colorIconAccent: '#2688EB',
30
+ colorTextAccent: '#2688EB',
31
+ colorTextAccentThemed: '#2688EB',
32
+ colorStrokeAccent: '#2688EB',
33
+ colorStrokeAccentThemed: '#2688EB',
34
+ colorStrokeContrast: '#FFFFFF',
35
+ colorActionSheetText: '#3F8AE0',
30
36
  colorBackgroundContent: '#FFFFFF',
31
37
  colorBackgroundSecondary: '#F5F5F5',
32
38
  colorBackgroundSecondaryAlpha: {
@@ -40,29 +46,12 @@ exports.lightColors = {
40
46
  colorBackgroundContrastSecondaryAlpha: 'rgba(255, 255, 255, 0.20)',
41
47
  colorBackgroundWarning: '#FFF2D6',
42
48
  colorBackgroundNegative: '#E64646',
43
- colorBackgroundModal: '#FFFFFF',
44
- colorBackgroundPositive: '#4BB34B',
45
49
  colorBackgroundNegativeTint: '#FAEBEB',
46
- // Text
47
- colorTextAccent: '#3F8AE0',
48
- colorTextAccentThemed: '#3F8AE0',
49
50
  colorTextNegative: '#E64646',
50
- colorTextLink: '#4986CC',
51
- colorTextLinkThemed: '#4986CC',
52
- colorTextMuted: '#2C2D2E',
53
- colorTextPrimary: '#000000',
54
- colorTextPrimaryInvariably: '#000000',
55
- colorTextSecondary: '#818C99',
56
- colorTextSubhead: '#6D7885',
57
- colorTextTertiary: '#99A2AD',
58
- colorTextLinkVisited: '#4986CC',
59
- colorTextContrast: '#FFFFFF',
60
- colorTextContrastThemed: '#FFFFFF',
61
- colorLinkContrast: '#FFFFFF',
62
- colorTextPositive: '#4BB34B',
63
- // Icons
64
- colorIconAccent: '#3F8AE0',
65
51
  colorIconNegative: '#E64646',
52
+ colorStrokeNegative: '#E64646',
53
+ colorHeaderBackground: '#FFFFFF',
54
+ colorPanelHeaderIcon: '#2688EB',
66
55
  colorIconPrimary: '#2C2D2E',
67
56
  colorIconPrimaryInvariably: '#2C2D2E',
68
57
  colorIconMedium: '#818C99',
@@ -71,21 +60,28 @@ exports.lightColors = {
71
60
  colorIconSecondaryAlpha: 'rgba(0, 0, 0, 0.36)',
72
61
  colorIconTertiary: '#B8C1CC',
73
62
  colorIconTertiaryAlpha: 'rgba(0, 0, 0, 0.24)',
74
- colorIconContrast: '#FFFFFF',
75
- colorIconContrastThemed: '#FFFFFF',
76
- colorIconPositive: '#4BB34B',
77
- // Stroke
78
- colorStrokeAccent: '#3F8AE0',
79
- colorStrokeAccentThemed: '#3F8AE0',
80
- colorStrokeContrast: '#FFFFFF',
81
- colorStrokeNegative: '#E64646',
82
63
  colorImageBorderAlpha: 'rgba(0, 0, 0, 0.08)',
64
+ colorWriteBarInputBackground: '#F2F3F5',
65
+ colorWriteBarInputBorderAlpha: 'rgba(0, 0, 0, 0.08)',
66
+ colorTrackBackground: '#E1E3E6',
67
+ colorTrackBuffer: '#A0BFE4',
68
+ colorBackgroundModal: '#FFFFFF',
69
+ colorImagePlaceholderAlpha: 'rgba(0, 28, 61, 0.08)',
70
+ colorImagePlaceholder: '#F2F3F5',
71
+ colorSearchFieldBackground: '#EBEDF0',
83
72
  colorFieldBorderAlpha: 'rgba(0, 0, 0, 0.12)',
84
73
  colorSeparatorPrimaryAlpha: 'rgba(0, 0, 0, 0.12)',
85
74
  colorSeparatorSecondary: '#E1E3E6',
86
75
  colorSeparatorPrimary: '#D7D8D9',
87
- colorStrokePositive: '#4BB34B',
88
- // Palette
76
+ colorTextLink: '#2D81E0',
77
+ colorTextLinkThemed: '#4986CC',
78
+ colorTextMuted: '#2C2D2E',
79
+ colorTextPrimary: '#000000',
80
+ colorTextPrimaryInvariably: '#000000',
81
+ colorTextSecondary: '#818C99',
82
+ colorTextSubhead: '#6D7885',
83
+ colorTextTertiary: '#99A2AD',
84
+ colorWriteBarIcon: '#3F8AE0',
89
85
  colorAccentBlue: '#3F8AE0',
90
86
  colorAccentGray: '#A3ADB8',
91
87
  colorAccentRed: '#FF3347',
@@ -93,21 +89,19 @@ exports.lightColors = {
93
89
  colorAccentOrange: '#FFA000',
94
90
  colorAccentPurple: '#735CE6',
95
91
  colorAccentViolet: '#792EC0',
96
- colorAccentSecondary: '#3F8AE0',
97
- // Other
98
- colorActionSheetText: '#3F8AE0',
99
- colorHeaderBackground: '#FFFFFF',
100
- colorPanelHeaderIcon: '#3F8AE0',
101
- colorWriteBarInputBackground: '#F2F3F5',
102
- colorWriteBarInputBorderAlpha: 'rgba(0, 0, 0, 0.08)',
103
- colorTrackBackground: '#E1E3E6',
104
- colorTrackBuffer: '#A0BFE4',
105
- colorImagePlaceholderAlpha: 'rgba(0, 28, 61, 0.08)',
106
- colorImagePlaceholder: '#F2F3F5',
107
- colorSearchFieldBackground: '#EBEDF0',
108
- colorWriteBarIcon: '#3F8AE0',
109
92
  colorSkeletonFrom: '#F5F5F5',
110
93
  colorSkeletonTo: '#E1E3E6',
94
+ colorAccentSecondary: '#3F8AE0',
95
+ colorTextLinkVisited: '#4986CC',
96
+ colorTextContrast: '#FFFFFF',
97
+ colorTextContrastThemed: '#FFFFFF',
98
+ colorIconContrast: '#FFFFFF',
99
+ colorIconContrastThemed: '#FFFFFF',
100
+ colorLinkContrast: '#FFFFFF',
101
+ colorTextPositive: '#4BB34B',
102
+ colorBackgroundPositive: '#4BB34B',
103
+ colorIconPositive: '#4BB34B',
104
+ colorStrokePositive: '#4BB34B',
111
105
  colorAvatarOverlay: 'rgba(129, 140, 153, 0.48)',
112
106
  colorOverlayPrimary: 'rgba(0, 0, 0, 0.4)',
113
107
  colorTransparent: 'transparent',
@@ -116,10 +110,16 @@ exports.lightColors = {
116
110
  exports.darkColors = {
117
111
  colorsScheme: 'dark',
118
112
  colors: {
119
- // Background
120
- colorBackgroundAccent: '#71AAEB',
113
+ colorBackgroundAccent: '#529EF4',
121
114
  colorBackgroundAccentThemed: '#FFFFFF',
122
- colorBackgroundAccentAlternative: '#71AAEB',
115
+ colorBackgroundAccentAlternative: '#529EF4',
116
+ colorIconAccent: '#529EF4',
117
+ colorTextAccent: '#529EF4',
118
+ colorTextAccentThemed: '#FFFFFF',
119
+ colorStrokeAccent: '#529EF4',
120
+ colorStrokeAccentThemed: '#FFFFFF',
121
+ colorStrokeContrast: '#FFFFFF',
122
+ colorActionSheetText: '#529EF4',
123
123
  colorBackgroundContent: '#19191A',
124
124
  colorBackgroundSecondary: '#232324',
125
125
  colorBackgroundSecondaryAlpha: {
@@ -133,29 +133,12 @@ exports.darkColors = {
133
133
  colorBackgroundContrastSecondaryAlpha: 'rgba(255, 255, 255, 0.20)',
134
134
  colorBackgroundWarning: '#6C4A00',
135
135
  colorBackgroundNegative: '#E64646',
136
- colorBackgroundModal: '#2D2D2E',
137
- colorBackgroundPositive: '#4BB34B',
138
- colorBackgroundNegativeTint: '#522e2e',
139
- // Text
140
- colorTextAccent: '#71AAEB',
141
- colorTextAccentThemed: '#FFFFFF',
136
+ colorBackgroundNegativeTint: '#522E2E',
142
137
  colorTextNegative: '#E64646',
143
- colorTextLink: '#71AAEB',
144
- colorTextLinkThemed: '#FFFFFF',
145
- colorTextMuted: '#E1E3E6',
146
- colorTextPrimary: '#E1E3E6',
147
- colorTextPrimaryInvariably: '#000000',
148
- colorTextSecondary: '#76787A',
149
- colorTextSubhead: '#C1C3C6',
150
- colorTextTertiary: '#636567',
151
- colorTextLinkVisited: '#4986CC',
152
- colorTextContrast: '#FFFFFF',
153
- colorTextContrastThemed: '#000000',
154
- colorLinkContrast: '#FFFFFF',
155
- colorTextPositive: '#4BB34B',
156
- // Icons
157
- colorIconAccent: '#71AAEB',
158
138
  colorIconNegative: '#E64646',
139
+ colorStrokeNegative: '#E64646',
140
+ colorHeaderBackground: '#19191A',
141
+ colorPanelHeaderIcon: '#71AAEB',
159
142
  colorIconPrimary: '#E1E3E6',
160
143
  colorIconPrimaryInvariably: '#2C2D2E',
161
144
  colorIconMedium: '#B0B1B6',
@@ -164,22 +147,29 @@ exports.darkColors = {
164
147
  colorIconSecondaryAlpha: 'rgba(0, 0, 0, 0.43)',
165
148
  colorIconTertiary: '#5D5F61',
166
149
  colorIconTertiaryAlpha: 'rgba(255, 255, 255, 0.3)',
167
- colorIconContrast: '#FFFFFF',
168
- colorIconContrastThemed: '#000000',
169
- colorIconPositive: '#4BB34B',
170
- // Stroke
171
- colorStrokeAccent: '#71AAEB',
172
- colorStrokeAccentThemed: '#FFFFFF',
173
- colorStrokeContrast: '#FFFFFF',
174
- colorStrokeNegative: '#E64646',
175
150
  colorImageBorderAlpha: 'rgba(255, 255, 255, 0.08)',
151
+ colorWriteBarInputBackground: '#232324',
152
+ colorWriteBarInputBorderAlpha: 'rgba(255, 255, 255, 0.8)',
153
+ colorTrackBackground: '#202021',
154
+ colorTrackBuffer: '#405772',
155
+ colorBackgroundModal: '#2D2D2E',
156
+ colorImagePlaceholderAlpha: 'rgba(241, 247, 255, 0.08)',
157
+ colorImagePlaceholder: '#2A2B2C',
158
+ colorSearchFieldBackground: '#232324',
176
159
  colorFieldBorderAlpha: 'rgba(255, 255, 255, 0.12)',
177
160
  colorSeparatorPrimaryAlpha: 'rgba(0, 0, 0, 0.4)',
178
161
  colorSeparatorSecondary: '#141415',
179
162
  colorSeparatorPrimary: '#0F0F10',
180
- colorStrokePositive: '#4BB34B',
181
- // Palette
182
- colorAccentBlue: '#71AAEB',
163
+ colorTextLink: '#529EF4',
164
+ colorTextLinkThemed: '#FFFFFF',
165
+ colorTextMuted: '#E1E3E6',
166
+ colorTextPrimary: '#E1E3E6',
167
+ colorTextPrimaryInvariably: '#000000',
168
+ colorTextSecondary: '#76787A',
169
+ colorTextSubhead: '#C1C3C6',
170
+ colorTextTertiary: '#636567',
171
+ colorWriteBarIcon: '#529EF4',
172
+ colorAccentBlue: '#529EF4',
183
173
  // цвета ниже нужно поменять
184
174
  // не успел сделать к релизу тёмной версии vk почты
185
175
  colorAccentGray: '#A3ADB8',
@@ -188,21 +178,19 @@ exports.darkColors = {
188
178
  colorAccentOrange: '#FFA000',
189
179
  colorAccentPurple: '#735CE6',
190
180
  colorAccentViolet: '#792EC0',
191
- colorAccentSecondary: '#3F8AE0',
192
- // Other
193
- colorActionSheetText: '#71AAEB',
194
- colorHeaderBackground: '#19191A',
195
- colorPanelHeaderIcon: '#71AAEB',
196
- colorWriteBarInputBackground: '#232324',
197
- colorWriteBarInputBorderAlpha: 'rgba(255, 255, 255, 0.8)',
198
- colorTrackBackground: '#202021',
199
- colorTrackBuffer: '#405772',
200
- colorImagePlaceholderAlpha: 'rgba(241, 247, 255, 0.08)',
201
- colorImagePlaceholder: '#2A2B2C',
202
- colorSearchFieldBackground: '#232324',
203
- colorWriteBarIcon: '#76787A',
204
181
  colorSkeletonFrom: '#F5F5F5',
205
182
  colorSkeletonTo: '#E1E3E6',
183
+ colorAccentSecondary: '#3F8AE0',
184
+ colorTextLinkVisited: '#4986CC',
185
+ colorTextContrast: '#FFFFFF',
186
+ colorTextContrastThemed: '#000000',
187
+ colorIconContrast: '#FFFFFF',
188
+ colorIconContrastThemed: '#000000',
189
+ colorLinkContrast: '#FFFFFF',
190
+ colorTextPositive: '#4BB34B',
191
+ colorBackgroundPositive: '#4BB34B',
192
+ colorIconPositive: '#4BB34B',
193
+ colorStrokePositive: '#4BB34B',
206
194
  colorAvatarOverlay: 'rgba(129, 140, 153, 0.48)',
207
195
  colorOverlayPrimary: 'rgba(0, 0, 0, 0.4)',
208
196
  colorTransparent: 'transparent',
@@ -414,6 +402,12 @@ exports.lightTheme = __assign(__assign({ themeName: 'vkBase' }, exports.lightCol
414
402
  }, sizeBadgeXL: {
415
403
  regular: 56,
416
404
  },
405
+ // Токены компонента Cardscroll
406
+ sizeCardgridPadding: {
407
+ regular: 8,
408
+ }, sizeCardBorderRadius: {
409
+ regular: 8,
410
+ },
417
411
  // Прочие отступы
418
412
  elevation1: '0px 0px 2px rgba(0, 0, 0, 0.03), 0px 2px 2px rgba(0, 0, 0, 0.06)', elevation2: '0px 0px 2px rgba(0, 0, 0, 0.04), 0px 4px 4px rgba(0, 0, 0, 0.08)', elevation3: '0px 0px 4px rgba(0, 0, 0, 0.08), 0px 8px 8px rgba(0, 0, 0, 0.16)', elevation4: '0px 0px 8px rgba(0, 0, 0, 0.12), 0px 16px 16px rgba(0, 0, 0, 0.16)', animationDurationL: '0.4s', animationDurationM: '0.2s', animationDurationS: '0.1s', animationEasingDefault: 'cubic-bezier(0.3, 0.3, 0.5, 1)', opacityDisable: 0.4, opacityDisableAccessibility: 0.64 });
419
413
  exports.darkTheme = __assign(__assign(__assign({}, exports.lightTheme), exports.darkColors), { themeName: 'vkBaseDark', colorsScheme: 'dark',
@@ -119,6 +119,8 @@
119
119
  --vkui--size_badge_m--regular: 24px;
120
120
  --vkui--size_badge_l--regular: 44px;
121
121
  --vkui--size_badge_x_l--regular: 56px;
122
+ --vkui--size_cardgrid_padding--regular: 12px;
123
+ --vkui--size_card_border_radius--regular: 16px;
122
124
  --vkui--elevation1: none;
123
125
  --vkui--elevation2: none;
124
126
  --vkui--elevation3: 0px 4px 32px rgba(0, 16, 61, 0.32);
@@ -1060,6 +1062,8 @@
1060
1062
  --vkui--size_badge_m: 24px;
1061
1063
  --vkui--size_badge_l: 44px;
1062
1064
  --vkui--size_badge_x_l: 56px;
1065
+ --vkui--size_cardgrid_padding: 12px;
1066
+ --vkui--size_card_border_radius: 16px;
1063
1067
  --vkui--font_h0--font_size: 32px;
1064
1068
  --vkui--font_h0--line_height: 40px;
1065
1069
  --vkui--font_h0--font_weight: 500;
@@ -96,6 +96,8 @@
96
96
  --vkui--size_badge_m: 24px;
97
97
  --vkui--size_badge_l: 44px;
98
98
  --vkui--size_badge_x_l: 56px;
99
+ --vkui--size_cardgrid_padding: 12px;
100
+ --vkui--size_card_border_radius: 16px;
99
101
  --vkui--font_h0--font_size: 32px;
100
102
  --vkui--font_h0--line_height: 40px;
101
103
  --vkui--font_h0--font_weight: 500;
@@ -119,6 +119,8 @@
119
119
  --vkui--size_badge_m--regular: 24px;
120
120
  --vkui--size_badge_l--regular: 44px;
121
121
  --vkui--size_badge_x_l--regular: 56px;
122
+ --vkui--size_cardgrid_padding--regular: 12px;
123
+ --vkui--size_card_border_radius--regular: 16px;
122
124
  --vkui--elevation1: none;
123
125
  --vkui--elevation2: none;
124
126
  --vkui--elevation3: 0px 4px 32px rgba(0, 16, 61, 0.32);