@veracity/vui 2.1.0 → 2.3.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 (489) hide show
  1. package/dist/cjs/avatar/avatar.d.ts.map +1 -1
  2. package/dist/cjs/avatar/avatar.js +23 -4
  3. package/dist/cjs/avatar/avatar.types.d.ts +3 -1
  4. package/dist/cjs/avatar/avatar.types.d.ts.map +1 -1
  5. package/dist/cjs/avatar/theme.d.ts +119 -21
  6. package/dist/cjs/avatar/theme.d.ts.map +1 -1
  7. package/dist/cjs/avatar/theme.js +123 -55
  8. package/dist/cjs/badge/theme.d.ts +1 -0
  9. package/dist/cjs/badge/theme.d.ts.map +1 -1
  10. package/dist/cjs/badge/theme.js +2 -1
  11. package/dist/cjs/button/theme.d.ts +1 -0
  12. package/dist/cjs/button/theme.d.ts.map +1 -1
  13. package/dist/cjs/button/theme.js +2 -1
  14. package/dist/cjs/divider/divider.js +1 -1
  15. package/dist/cjs/dragAndDrop/dragAndDrop.d.ts +1 -1
  16. package/dist/cjs/dragAndDrop/dragAndDrop.d.ts.map +1 -1
  17. package/dist/cjs/dragAndDrop/dragAndDrop.js +3 -3
  18. package/dist/cjs/dragAndDrop/dragAndDrop.types.d.ts +1 -1
  19. package/dist/cjs/dragAndDrop/dragAndDrop.types.d.ts.map +1 -1
  20. package/dist/cjs/dragAndDrop/theme.d.ts +18 -3
  21. package/dist/cjs/dragAndDrop/theme.d.ts.map +1 -1
  22. package/dist/cjs/dragAndDrop/theme.js +23 -3
  23. package/dist/cjs/header/headerAccountUserInfo.js +3 -1
  24. package/dist/cjs/icon/theme.d.ts +6 -1
  25. package/dist/cjs/icon/theme.d.ts.map +1 -1
  26. package/dist/cjs/icon/theme.js +6 -1
  27. package/dist/cjs/icons/baseIcons/cul/culCreateReport.d.ts +4 -0
  28. package/dist/cjs/icons/baseIcons/cul/culCreateReport.d.ts.map +1 -0
  29. package/dist/cjs/icons/baseIcons/cul/culCreateReport.js +7 -0
  30. package/dist/cjs/icons/baseIcons/cul/culDatacatalogue.d.ts +4 -0
  31. package/dist/cjs/icons/baseIcons/cul/culDatacatalogue.d.ts.map +1 -0
  32. package/dist/cjs/icons/baseIcons/cul/culDatacatalogue.js +7 -0
  33. package/dist/cjs/icons/baseIcons/cul/culDataset.d.ts +4 -0
  34. package/dist/cjs/icons/baseIcons/cul/culDataset.d.ts.map +1 -0
  35. package/dist/cjs/icons/baseIcons/cul/culDataset.js +8 -0
  36. package/dist/cjs/icons/baseIcons/cul/culFileStandard.d.ts +4 -0
  37. package/dist/cjs/icons/baseIcons/cul/culFileStandard.d.ts.map +1 -0
  38. package/dist/cjs/icons/baseIcons/cul/culFileStandard.js +7 -0
  39. package/dist/cjs/icons/baseIcons/fal/falAlignCenter.d.ts +4 -0
  40. package/dist/cjs/icons/baseIcons/fal/falAlignCenter.d.ts.map +1 -0
  41. package/dist/cjs/icons/baseIcons/fal/falAlignCenter.js +7 -0
  42. package/dist/cjs/icons/baseIcons/fal/falAlignJustify.d.ts +4 -0
  43. package/dist/cjs/icons/baseIcons/fal/falAlignJustify.d.ts.map +1 -0
  44. package/dist/cjs/icons/baseIcons/fal/falAlignJustify.js +7 -0
  45. package/dist/cjs/icons/baseIcons/fal/falAlignLeft.d.ts +4 -0
  46. package/dist/cjs/icons/baseIcons/fal/falAlignLeft.d.ts.map +1 -0
  47. package/dist/cjs/icons/baseIcons/fal/falAlignLeft.js +7 -0
  48. package/dist/cjs/icons/baseIcons/fal/falAlignRight.d.ts +4 -0
  49. package/dist/cjs/icons/baseIcons/fal/falAlignRight.d.ts.map +1 -0
  50. package/dist/cjs/icons/baseIcons/fal/falAlignRight.js +7 -0
  51. package/dist/cjs/icons/baseIcons/fal/falBinoculars.d.ts +4 -0
  52. package/dist/cjs/icons/baseIcons/fal/falBinoculars.d.ts.map +1 -0
  53. package/dist/cjs/icons/baseIcons/fal/falBinoculars.js +7 -0
  54. package/dist/cjs/icons/baseIcons/fal/falBold.d.ts +4 -0
  55. package/dist/cjs/icons/baseIcons/fal/falBold.d.ts.map +1 -0
  56. package/dist/cjs/icons/baseIcons/fal/falBold.js +7 -0
  57. package/dist/cjs/icons/baseIcons/fal/falBolt.d.ts +4 -0
  58. package/dist/cjs/icons/baseIcons/fal/falBolt.d.ts.map +1 -0
  59. package/dist/cjs/icons/baseIcons/fal/falBolt.js +7 -0
  60. package/dist/cjs/icons/baseIcons/fal/falBookmark.d.ts +4 -0
  61. package/dist/cjs/icons/baseIcons/fal/falBookmark.d.ts.map +1 -0
  62. package/dist/cjs/icons/baseIcons/fal/falBookmark.js +7 -0
  63. package/dist/cjs/icons/baseIcons/fal/falCoins.d.ts +4 -0
  64. package/dist/cjs/icons/baseIcons/fal/falCoins.d.ts.map +1 -0
  65. package/dist/cjs/icons/baseIcons/fal/falCoins.js +7 -0
  66. package/dist/cjs/icons/baseIcons/fal/falFolderArrow.d.ts +4 -0
  67. package/dist/cjs/icons/baseIcons/fal/falFolderArrow.d.ts.map +1 -0
  68. package/dist/cjs/icons/baseIcons/fal/falFolderArrow.js +7 -0
  69. package/dist/cjs/icons/baseIcons/fal/falGrid.d.ts +4 -0
  70. package/dist/cjs/icons/baseIcons/fal/falGrid.d.ts.map +1 -0
  71. package/dist/cjs/icons/baseIcons/fal/falGrid.js +7 -0
  72. package/dist/cjs/icons/baseIcons/fal/falHeading.d.ts +4 -0
  73. package/dist/cjs/icons/baseIcons/fal/falHeading.d.ts.map +1 -0
  74. package/dist/cjs/icons/baseIcons/fal/falHeading.js +7 -0
  75. package/dist/cjs/icons/baseIcons/fal/falItalic.d.ts +4 -0
  76. package/dist/cjs/icons/baseIcons/fal/falItalic.d.ts.map +1 -0
  77. package/dist/cjs/icons/baseIcons/fal/falItalic.js +7 -0
  78. package/dist/cjs/icons/baseIcons/fal/falList.js +1 -1
  79. package/dist/cjs/icons/baseIcons/fal/falListOl.d.ts +4 -0
  80. package/dist/cjs/icons/baseIcons/fal/falListOl.d.ts.map +1 -0
  81. package/dist/cjs/icons/baseIcons/fal/falListOl.js +7 -0
  82. package/dist/cjs/icons/baseIcons/fal/falNoStream.d.ts +4 -0
  83. package/dist/cjs/icons/baseIcons/fal/falNoStream.d.ts.map +1 -0
  84. package/dist/cjs/icons/baseIcons/fal/falNoStream.js +7 -0
  85. package/dist/cjs/icons/baseIcons/fal/falPaintBrushAlt.d.ts +4 -0
  86. package/dist/cjs/icons/baseIcons/fal/falPaintBrushAlt.d.ts.map +1 -0
  87. package/dist/cjs/icons/baseIcons/fal/falPaintBrushAlt.js +7 -0
  88. package/dist/cjs/icons/baseIcons/fal/falParagraph.d.ts +4 -0
  89. package/dist/cjs/icons/baseIcons/fal/falParagraph.d.ts.map +1 -0
  90. package/dist/cjs/icons/baseIcons/fal/falParagraph.js +7 -0
  91. package/dist/cjs/icons/baseIcons/fal/falPreview.d.ts +4 -0
  92. package/dist/cjs/icons/baseIcons/fal/falPreview.d.ts.map +1 -0
  93. package/dist/cjs/icons/baseIcons/fal/falPreview.js +7 -0
  94. package/dist/cjs/icons/baseIcons/fal/falSnapshot.d.ts +4 -0
  95. package/dist/cjs/icons/baseIcons/fal/falSnapshot.d.ts.map +1 -0
  96. package/dist/cjs/icons/baseIcons/fal/falSnapshot.js +7 -0
  97. package/dist/cjs/icons/baseIcons/fal/falStream.d.ts +4 -0
  98. package/dist/cjs/icons/baseIcons/fal/falStream.d.ts.map +1 -0
  99. package/dist/cjs/icons/baseIcons/fal/falStream.js +7 -0
  100. package/dist/cjs/icons/baseIcons/fal/falTable.d.ts +4 -0
  101. package/dist/cjs/icons/baseIcons/fal/falTable.d.ts.map +1 -0
  102. package/dist/cjs/icons/baseIcons/fal/falTable.js +7 -0
  103. package/dist/cjs/icons/baseIcons/fal/falTasks.d.ts +4 -0
  104. package/dist/cjs/icons/baseIcons/fal/falTasks.d.ts.map +1 -0
  105. package/dist/cjs/icons/baseIcons/fal/falTasks.js +7 -0
  106. package/dist/cjs/icons/baseIcons/fal/falTools.d.ts +4 -0
  107. package/dist/cjs/icons/baseIcons/fal/falTools.d.ts.map +1 -0
  108. package/dist/cjs/icons/baseIcons/fal/falTools.js +7 -0
  109. package/dist/cjs/icons/baseIcons/fas/fasFile.d.ts +4 -0
  110. package/dist/cjs/icons/baseIcons/fas/fasFile.d.ts.map +1 -0
  111. package/dist/cjs/icons/baseIcons/fas/fasFile.js +7 -0
  112. package/dist/cjs/icons/baseIcons/icons.d.ts +28 -0
  113. package/dist/cjs/icons/baseIcons/icons.d.ts.map +1 -1
  114. package/dist/cjs/icons/baseIcons/icons.js +64 -7
  115. package/dist/cjs/icons/baseIcons/types.d.ts +1 -1
  116. package/dist/cjs/icons/baseIcons/types.d.ts.map +1 -1
  117. package/dist/cjs/index.d.ts +1 -0
  118. package/dist/cjs/index.d.ts.map +1 -1
  119. package/dist/cjs/index.js +1 -0
  120. package/dist/cjs/input/consts.d.ts +17 -3
  121. package/dist/cjs/input/consts.d.ts.map +1 -1
  122. package/dist/cjs/input/consts.js +27 -13
  123. package/dist/cjs/input/helpText.js +2 -2
  124. package/dist/cjs/input/input.d.ts.map +1 -1
  125. package/dist/cjs/input/input.js +8 -11
  126. package/dist/cjs/input/input.types.d.ts +6 -6
  127. package/dist/cjs/input/input.types.d.ts.map +1 -1
  128. package/dist/cjs/input/inputIcon.d.ts.map +1 -1
  129. package/dist/cjs/input/inputIcon.js +2 -1
  130. package/dist/cjs/input/theme.d.ts +33 -17
  131. package/dist/cjs/input/theme.d.ts.map +1 -1
  132. package/dist/cjs/input/theme.js +32 -22
  133. package/dist/cjs/list/listItem.js +2 -2
  134. package/dist/cjs/message/consts.d.ts +8 -2
  135. package/dist/cjs/message/consts.d.ts.map +1 -1
  136. package/dist/cjs/message/consts.js +11 -5
  137. package/dist/cjs/message/message.js +3 -3
  138. package/dist/cjs/message/theme.d.ts +4 -3
  139. package/dist/cjs/message/theme.d.ts.map +1 -1
  140. package/dist/cjs/message/theme.js +11 -9
  141. package/dist/cjs/select/select.d.ts.map +1 -1
  142. package/dist/cjs/select/select.js +2 -2
  143. package/dist/cjs/select/select.types.d.ts +2 -0
  144. package/dist/cjs/select/select.types.d.ts.map +1 -1
  145. package/dist/cjs/select/selectButton.d.ts.map +1 -1
  146. package/dist/cjs/select/selectButton.js +9 -8
  147. package/dist/cjs/select/selectOption.d.ts.map +1 -1
  148. package/dist/cjs/select/selectOption.js +1 -1
  149. package/dist/cjs/skeleton/skeleton.types.d.ts +1 -1
  150. package/dist/cjs/skeleton/skeleton.types.d.ts.map +1 -1
  151. package/dist/cjs/skeleton/theme.d.ts +10 -14
  152. package/dist/cjs/skeleton/theme.d.ts.map +1 -1
  153. package/dist/cjs/skeleton/theme.js +10 -21
  154. package/dist/cjs/spinner/spinner.types.d.ts +1 -1
  155. package/dist/cjs/spinner/spinner.types.d.ts.map +1 -1
  156. package/dist/cjs/spinner/theme.d.ts +18 -13
  157. package/dist/cjs/spinner/theme.d.ts.map +1 -1
  158. package/dist/cjs/spinner/theme.js +19 -15
  159. package/dist/cjs/tag/theme.d.ts +1 -0
  160. package/dist/cjs/tag/theme.d.ts.map +1 -1
  161. package/dist/cjs/tag/theme.js +2 -1
  162. package/dist/cjs/theme/components.d.ts +236 -34
  163. package/dist/cjs/theme/components.d.ts.map +1 -1
  164. package/dist/cjs/theme/components.js +3 -1
  165. package/dist/cjs/theme/defaultTheme.d.ts +247 -34
  166. package/dist/cjs/theme/defaultTheme.d.ts.map +1 -1
  167. package/dist/cjs/theme/foundations/colors.d.ts +22 -0
  168. package/dist/cjs/theme/foundations/colors.d.ts.map +1 -1
  169. package/dist/cjs/theme/foundations/colors.js +22 -11
  170. package/dist/cjs/theme/foundations/index.d.ts +11 -0
  171. package/dist/cjs/theme/foundations/index.d.ts.map +1 -1
  172. package/dist/cjs/tooltip/{tooltip.setup.d.ts → consts.d.ts} +4 -2
  173. package/dist/cjs/tooltip/consts.d.ts.map +1 -0
  174. package/dist/cjs/tooltip/{tooltip.setup.js → consts.js} +4 -2
  175. package/dist/cjs/tooltip/tooltip.js +3 -3
  176. package/dist/cjs/tooltip/tooltipContent.d.ts +1 -1
  177. package/dist/cjs/tooltip/tooltipContent.d.ts.map +1 -1
  178. package/dist/cjs/tooltip/tooltipContent.js +2 -5
  179. package/dist/cjs/tree/context.d.ts +5 -0
  180. package/dist/cjs/tree/context.d.ts.map +1 -0
  181. package/dist/cjs/tree/context.js +7 -0
  182. package/dist/cjs/tree/index.d.ts +8 -0
  183. package/dist/cjs/tree/index.d.ts.map +1 -0
  184. package/dist/cjs/tree/index.js +28 -0
  185. package/dist/cjs/tree/theme.d.ts +59 -0
  186. package/dist/cjs/tree/theme.d.ts.map +1 -0
  187. package/dist/cjs/tree/theme.js +69 -0
  188. package/dist/cjs/tree/tree.d.ts +14 -0
  189. package/dist/cjs/tree/tree.d.ts.map +1 -0
  190. package/dist/cjs/tree/tree.js +116 -0
  191. package/dist/cjs/tree/tree.types.d.ts +58 -0
  192. package/dist/cjs/tree/tree.types.d.ts.map +1 -0
  193. package/dist/cjs/tree/tree.types.js +2 -0
  194. package/dist/cjs/tree/treeIcon.d.ts +5 -0
  195. package/dist/cjs/tree/treeIcon.d.ts.map +1 -0
  196. package/dist/cjs/tree/treeIcon.js +29 -0
  197. package/dist/cjs/tree/treeItem.d.ts +8 -0
  198. package/dist/cjs/tree/treeItem.d.ts.map +1 -0
  199. package/dist/cjs/tree/treeItem.js +131 -0
  200. package/dist/cjs/tree/treeText.d.ts +5 -0
  201. package/dist/cjs/tree/treeText.d.ts.map +1 -0
  202. package/dist/cjs/tree/treeText.js +29 -0
  203. package/dist/cjs/tree/useTreeState.d.ts +9 -0
  204. package/dist/cjs/tree/useTreeState.d.ts.map +1 -0
  205. package/dist/cjs/tree/useTreeState.js +10 -0
  206. package/dist/esm/avatar/avatar.d.ts.map +1 -1
  207. package/dist/esm/avatar/avatar.js +24 -5
  208. package/dist/esm/avatar/avatar.types.d.ts +3 -1
  209. package/dist/esm/avatar/avatar.types.d.ts.map +1 -1
  210. package/dist/esm/avatar/theme.d.ts +119 -21
  211. package/dist/esm/avatar/theme.d.ts.map +1 -1
  212. package/dist/esm/avatar/theme.js +123 -55
  213. package/dist/esm/badge/theme.d.ts +1 -0
  214. package/dist/esm/badge/theme.d.ts.map +1 -1
  215. package/dist/esm/badge/theme.js +2 -1
  216. package/dist/esm/button/theme.d.ts +1 -0
  217. package/dist/esm/button/theme.d.ts.map +1 -1
  218. package/dist/esm/button/theme.js +2 -1
  219. package/dist/esm/divider/divider.js +1 -1
  220. package/dist/esm/dragAndDrop/dragAndDrop.d.ts +1 -1
  221. package/dist/esm/dragAndDrop/dragAndDrop.d.ts.map +1 -1
  222. package/dist/esm/dragAndDrop/dragAndDrop.js +3 -3
  223. package/dist/esm/dragAndDrop/dragAndDrop.types.d.ts +1 -1
  224. package/dist/esm/dragAndDrop/dragAndDrop.types.d.ts.map +1 -1
  225. package/dist/esm/dragAndDrop/theme.d.ts +18 -3
  226. package/dist/esm/dragAndDrop/theme.d.ts.map +1 -1
  227. package/dist/esm/dragAndDrop/theme.js +23 -3
  228. package/dist/esm/header/headerAccountUserInfo.js +3 -1
  229. package/dist/esm/icon/theme.d.ts +6 -1
  230. package/dist/esm/icon/theme.d.ts.map +1 -1
  231. package/dist/esm/icon/theme.js +6 -1
  232. package/dist/esm/icons/baseIcons/cul/culCreateReport.d.ts +4 -0
  233. package/dist/esm/icons/baseIcons/cul/culCreateReport.d.ts.map +1 -0
  234. package/dist/esm/icons/baseIcons/cul/culCreateReport.js +5 -0
  235. package/dist/esm/icons/baseIcons/cul/culDatacatalogue.d.ts +4 -0
  236. package/dist/esm/icons/baseIcons/cul/culDatacatalogue.d.ts.map +1 -0
  237. package/dist/esm/icons/baseIcons/cul/culDatacatalogue.js +5 -0
  238. package/dist/esm/icons/baseIcons/cul/culDataset.d.ts +4 -0
  239. package/dist/esm/icons/baseIcons/cul/culDataset.d.ts.map +1 -0
  240. package/dist/esm/icons/baseIcons/cul/culDataset.js +6 -0
  241. package/dist/esm/icons/baseIcons/cul/culFileStandard.d.ts +4 -0
  242. package/dist/esm/icons/baseIcons/cul/culFileStandard.d.ts.map +1 -0
  243. package/dist/esm/icons/baseIcons/cul/culFileStandard.js +5 -0
  244. package/dist/esm/icons/baseIcons/fal/falAlignCenter.d.ts +4 -0
  245. package/dist/esm/icons/baseIcons/fal/falAlignCenter.d.ts.map +1 -0
  246. package/dist/esm/icons/baseIcons/fal/falAlignCenter.js +5 -0
  247. package/dist/esm/icons/baseIcons/fal/falAlignJustify.d.ts +4 -0
  248. package/dist/esm/icons/baseIcons/fal/falAlignJustify.d.ts.map +1 -0
  249. package/dist/esm/icons/baseIcons/fal/falAlignJustify.js +5 -0
  250. package/dist/esm/icons/baseIcons/fal/falAlignLeft.d.ts +4 -0
  251. package/dist/esm/icons/baseIcons/fal/falAlignLeft.d.ts.map +1 -0
  252. package/dist/esm/icons/baseIcons/fal/falAlignLeft.js +5 -0
  253. package/dist/esm/icons/baseIcons/fal/falAlignRight.d.ts +4 -0
  254. package/dist/esm/icons/baseIcons/fal/falAlignRight.d.ts.map +1 -0
  255. package/dist/esm/icons/baseIcons/fal/falAlignRight.js +5 -0
  256. package/dist/esm/icons/baseIcons/fal/falBinoculars.d.ts +4 -0
  257. package/dist/esm/icons/baseIcons/fal/falBinoculars.d.ts.map +1 -0
  258. package/dist/esm/icons/baseIcons/fal/falBinoculars.js +5 -0
  259. package/dist/esm/icons/baseIcons/fal/falBold.d.ts +4 -0
  260. package/dist/esm/icons/baseIcons/fal/falBold.d.ts.map +1 -0
  261. package/dist/esm/icons/baseIcons/fal/falBold.js +5 -0
  262. package/dist/esm/icons/baseIcons/fal/falBolt.d.ts +4 -0
  263. package/dist/esm/icons/baseIcons/fal/falBolt.d.ts.map +1 -0
  264. package/dist/esm/icons/baseIcons/fal/falBolt.js +5 -0
  265. package/dist/esm/icons/baseIcons/fal/falBookmark.d.ts +4 -0
  266. package/dist/esm/icons/baseIcons/fal/falBookmark.d.ts.map +1 -0
  267. package/dist/esm/icons/baseIcons/fal/falBookmark.js +5 -0
  268. package/dist/esm/icons/baseIcons/fal/falCoins.d.ts +4 -0
  269. package/dist/esm/icons/baseIcons/fal/falCoins.d.ts.map +1 -0
  270. package/dist/esm/icons/baseIcons/fal/falCoins.js +5 -0
  271. package/dist/esm/icons/baseIcons/fal/falFolderArrow.d.ts +4 -0
  272. package/dist/esm/icons/baseIcons/fal/falFolderArrow.d.ts.map +1 -0
  273. package/dist/esm/icons/baseIcons/fal/falFolderArrow.js +5 -0
  274. package/dist/esm/icons/baseIcons/fal/falGrid.d.ts +4 -0
  275. package/dist/esm/icons/baseIcons/fal/falGrid.d.ts.map +1 -0
  276. package/dist/esm/icons/baseIcons/fal/falGrid.js +5 -0
  277. package/dist/esm/icons/baseIcons/fal/falHeading.d.ts +4 -0
  278. package/dist/esm/icons/baseIcons/fal/falHeading.d.ts.map +1 -0
  279. package/dist/esm/icons/baseIcons/fal/falHeading.js +5 -0
  280. package/dist/esm/icons/baseIcons/fal/falItalic.d.ts +4 -0
  281. package/dist/esm/icons/baseIcons/fal/falItalic.d.ts.map +1 -0
  282. package/dist/esm/icons/baseIcons/fal/falItalic.js +5 -0
  283. package/dist/esm/icons/baseIcons/fal/falList.js +1 -1
  284. package/dist/esm/icons/baseIcons/fal/falListOl.d.ts +4 -0
  285. package/dist/esm/icons/baseIcons/fal/falListOl.d.ts.map +1 -0
  286. package/dist/esm/icons/baseIcons/fal/falListOl.js +5 -0
  287. package/dist/esm/icons/baseIcons/fal/falNoStream.d.ts +4 -0
  288. package/dist/esm/icons/baseIcons/fal/falNoStream.d.ts.map +1 -0
  289. package/dist/esm/icons/baseIcons/fal/falNoStream.js +5 -0
  290. package/dist/esm/icons/baseIcons/fal/falPaintBrushAlt.d.ts +4 -0
  291. package/dist/esm/icons/baseIcons/fal/falPaintBrushAlt.d.ts.map +1 -0
  292. package/dist/esm/icons/baseIcons/fal/falPaintBrushAlt.js +5 -0
  293. package/dist/esm/icons/baseIcons/fal/falParagraph.d.ts +4 -0
  294. package/dist/esm/icons/baseIcons/fal/falParagraph.d.ts.map +1 -0
  295. package/dist/esm/icons/baseIcons/fal/falParagraph.js +5 -0
  296. package/dist/esm/icons/baseIcons/fal/falPreview.d.ts +4 -0
  297. package/dist/esm/icons/baseIcons/fal/falPreview.d.ts.map +1 -0
  298. package/dist/esm/icons/baseIcons/fal/falPreview.js +5 -0
  299. package/dist/esm/icons/baseIcons/fal/falSnapshot.d.ts +4 -0
  300. package/dist/esm/icons/baseIcons/fal/falSnapshot.d.ts.map +1 -0
  301. package/dist/esm/icons/baseIcons/fal/falSnapshot.js +5 -0
  302. package/dist/esm/icons/baseIcons/fal/falStream.d.ts +4 -0
  303. package/dist/esm/icons/baseIcons/fal/falStream.d.ts.map +1 -0
  304. package/dist/esm/icons/baseIcons/fal/falStream.js +5 -0
  305. package/dist/esm/icons/baseIcons/fal/falTable.d.ts +4 -0
  306. package/dist/esm/icons/baseIcons/fal/falTable.d.ts.map +1 -0
  307. package/dist/esm/icons/baseIcons/fal/falTable.js +5 -0
  308. package/dist/esm/icons/baseIcons/fal/falTasks.d.ts +4 -0
  309. package/dist/esm/icons/baseIcons/fal/falTasks.d.ts.map +1 -0
  310. package/dist/esm/icons/baseIcons/fal/falTasks.js +5 -0
  311. package/dist/esm/icons/baseIcons/fal/falTools.d.ts +4 -0
  312. package/dist/esm/icons/baseIcons/fal/falTools.d.ts.map +1 -0
  313. package/dist/esm/icons/baseIcons/fal/falTools.js +5 -0
  314. package/dist/esm/icons/baseIcons/fas/fasFile.d.ts +4 -0
  315. package/dist/esm/icons/baseIcons/fas/fasFile.d.ts.map +1 -0
  316. package/dist/esm/icons/baseIcons/fas/fasFile.js +5 -0
  317. package/dist/esm/icons/baseIcons/icons.d.ts +28 -0
  318. package/dist/esm/icons/baseIcons/icons.d.ts.map +1 -1
  319. package/dist/esm/icons/baseIcons/icons.js +28 -0
  320. package/dist/esm/icons/baseIcons/types.d.ts +1 -1
  321. package/dist/esm/icons/baseIcons/types.d.ts.map +1 -1
  322. package/dist/esm/index.d.ts +1 -0
  323. package/dist/esm/index.d.ts.map +1 -1
  324. package/dist/esm/index.js +1 -0
  325. package/dist/esm/input/consts.d.ts +17 -3
  326. package/dist/esm/input/consts.d.ts.map +1 -1
  327. package/dist/esm/input/consts.js +26 -12
  328. package/dist/esm/input/helpText.js +3 -3
  329. package/dist/esm/input/input.d.ts.map +1 -1
  330. package/dist/esm/input/input.js +6 -9
  331. package/dist/esm/input/input.types.d.ts +6 -6
  332. package/dist/esm/input/input.types.d.ts.map +1 -1
  333. package/dist/esm/input/inputIcon.d.ts.map +1 -1
  334. package/dist/esm/input/inputIcon.js +2 -1
  335. package/dist/esm/input/theme.d.ts +33 -17
  336. package/dist/esm/input/theme.d.ts.map +1 -1
  337. package/dist/esm/input/theme.js +32 -22
  338. package/dist/esm/list/listItem.js +2 -2
  339. package/dist/esm/message/consts.d.ts +8 -2
  340. package/dist/esm/message/consts.d.ts.map +1 -1
  341. package/dist/esm/message/consts.js +10 -4
  342. package/dist/esm/message/message.js +3 -3
  343. package/dist/esm/message/theme.d.ts +4 -3
  344. package/dist/esm/message/theme.d.ts.map +1 -1
  345. package/dist/esm/message/theme.js +11 -9
  346. package/dist/esm/select/select.d.ts.map +1 -1
  347. package/dist/esm/select/select.js +2 -2
  348. package/dist/esm/select/select.types.d.ts +2 -0
  349. package/dist/esm/select/select.types.d.ts.map +1 -1
  350. package/dist/esm/select/selectButton.d.ts.map +1 -1
  351. package/dist/esm/select/selectButton.js +9 -8
  352. package/dist/esm/select/selectOption.d.ts.map +1 -1
  353. package/dist/esm/select/selectOption.js +1 -1
  354. package/dist/esm/skeleton/skeleton.types.d.ts +1 -1
  355. package/dist/esm/skeleton/skeleton.types.d.ts.map +1 -1
  356. package/dist/esm/skeleton/theme.d.ts +10 -14
  357. package/dist/esm/skeleton/theme.d.ts.map +1 -1
  358. package/dist/esm/skeleton/theme.js +10 -21
  359. package/dist/esm/spinner/spinner.types.d.ts +1 -1
  360. package/dist/esm/spinner/spinner.types.d.ts.map +1 -1
  361. package/dist/esm/spinner/theme.d.ts +18 -13
  362. package/dist/esm/spinner/theme.d.ts.map +1 -1
  363. package/dist/esm/spinner/theme.js +19 -15
  364. package/dist/esm/tag/theme.d.ts +1 -0
  365. package/dist/esm/tag/theme.d.ts.map +1 -1
  366. package/dist/esm/tag/theme.js +2 -1
  367. package/dist/esm/theme/components.d.ts +236 -34
  368. package/dist/esm/theme/components.d.ts.map +1 -1
  369. package/dist/esm/theme/components.js +3 -1
  370. package/dist/esm/theme/defaultTheme.d.ts +247 -34
  371. package/dist/esm/theme/defaultTheme.d.ts.map +1 -1
  372. package/dist/esm/theme/foundations/colors.d.ts +22 -0
  373. package/dist/esm/theme/foundations/colors.d.ts.map +1 -1
  374. package/dist/esm/theme/foundations/colors.js +22 -11
  375. package/dist/esm/theme/foundations/index.d.ts +11 -0
  376. package/dist/esm/theme/foundations/index.d.ts.map +1 -1
  377. package/dist/esm/tooltip/{tooltip.setup.d.ts → consts.d.ts} +4 -2
  378. package/dist/esm/tooltip/consts.d.ts.map +1 -0
  379. package/dist/esm/tooltip/{tooltip.setup.js → consts.js} +3 -1
  380. package/dist/esm/tooltip/tooltip.js +3 -3
  381. package/dist/esm/tooltip/tooltipContent.d.ts +1 -1
  382. package/dist/esm/tooltip/tooltipContent.d.ts.map +1 -1
  383. package/dist/esm/tooltip/tooltipContent.js +2 -5
  384. package/dist/esm/tree/context.d.ts +5 -0
  385. package/dist/esm/tree/context.d.ts.map +1 -0
  386. package/dist/esm/tree/context.js +3 -0
  387. package/dist/esm/tree/index.d.ts +8 -0
  388. package/dist/esm/tree/index.d.ts.map +1 -0
  389. package/dist/esm/tree/index.js +7 -0
  390. package/dist/esm/tree/theme.d.ts +59 -0
  391. package/dist/esm/tree/theme.d.ts.map +1 -0
  392. package/dist/esm/tree/theme.js +67 -0
  393. package/dist/esm/tree/tree.d.ts +14 -0
  394. package/dist/esm/tree/tree.d.ts.map +1 -0
  395. package/dist/esm/tree/tree.js +74 -0
  396. package/dist/esm/tree/tree.types.d.ts +58 -0
  397. package/dist/esm/tree/tree.types.d.ts.map +1 -0
  398. package/dist/esm/tree/tree.types.js +1 -0
  399. package/dist/esm/tree/treeIcon.d.ts +5 -0
  400. package/dist/esm/tree/treeIcon.d.ts.map +1 -0
  401. package/dist/esm/tree/treeIcon.js +12 -0
  402. package/dist/esm/tree/treeItem.d.ts +8 -0
  403. package/dist/esm/tree/treeItem.d.ts.map +1 -0
  404. package/dist/esm/tree/treeItem.js +91 -0
  405. package/dist/esm/tree/treeText.d.ts +5 -0
  406. package/dist/esm/tree/treeText.d.ts.map +1 -0
  407. package/dist/esm/tree/treeText.js +12 -0
  408. package/dist/esm/tree/useTreeState.d.ts +9 -0
  409. package/dist/esm/tree/useTreeState.d.ts.map +1 -0
  410. package/dist/esm/tree/useTreeState.js +6 -0
  411. package/package.json +1 -1
  412. package/src/avatar/avatar.tsx +42 -15
  413. package/src/avatar/avatar.types.ts +3 -1
  414. package/src/avatar/theme.ts +124 -69
  415. package/src/badge/theme.ts +2 -1
  416. package/src/button/theme.ts +2 -1
  417. package/src/divider/divider.tsx +1 -1
  418. package/src/dragAndDrop/dragAndDrop.tsx +3 -3
  419. package/src/dragAndDrop/dragAndDrop.types.ts +1 -1
  420. package/src/dragAndDrop/theme.ts +24 -3
  421. package/src/header/headerAccountUserInfo.tsx +2 -2
  422. package/src/icon/theme.ts +7 -1
  423. package/src/icons/baseIcons/cul/culCreateReport.ts +8 -0
  424. package/src/icons/baseIcons/cul/culDatacatalogue.ts +8 -0
  425. package/src/icons/baseIcons/cul/culDataset.ts +9 -0
  426. package/src/icons/baseIcons/cul/culFileStandard.ts +8 -0
  427. package/src/icons/baseIcons/fal/falAlignCenter.ts +8 -0
  428. package/src/icons/baseIcons/fal/falAlignJustify.ts +8 -0
  429. package/src/icons/baseIcons/fal/falAlignLeft.ts +8 -0
  430. package/src/icons/baseIcons/fal/falAlignRight.ts +8 -0
  431. package/src/icons/baseIcons/fal/falBinoculars.ts +8 -0
  432. package/src/icons/baseIcons/fal/falBold.ts +8 -0
  433. package/src/icons/baseIcons/fal/falBolt.ts +8 -0
  434. package/src/icons/baseIcons/fal/falBookmark.ts +8 -0
  435. package/src/icons/baseIcons/fal/falCoins.ts +8 -0
  436. package/src/icons/baseIcons/fal/falFolderArrow.ts +8 -0
  437. package/src/icons/baseIcons/fal/falGrid.ts +8 -0
  438. package/src/icons/baseIcons/fal/falHeading.ts +8 -0
  439. package/src/icons/baseIcons/fal/falItalic.ts +8 -0
  440. package/src/icons/baseIcons/fal/falList.ts +2 -2
  441. package/src/icons/baseIcons/fal/falListOl.ts +8 -0
  442. package/src/icons/baseIcons/fal/falNoStream.ts +8 -0
  443. package/src/icons/baseIcons/fal/falPaintBrushAlt.ts +8 -0
  444. package/src/icons/baseIcons/fal/falParagraph.ts +8 -0
  445. package/src/icons/baseIcons/fal/falPreview.ts +8 -0
  446. package/src/icons/baseIcons/fal/falSnapshot.ts +8 -0
  447. package/src/icons/baseIcons/fal/falStream.ts +8 -0
  448. package/src/icons/baseIcons/fal/falTable.ts +8 -0
  449. package/src/icons/baseIcons/fal/falTasks.ts +8 -0
  450. package/src/icons/baseIcons/fal/falTools.ts +8 -0
  451. package/src/icons/baseIcons/fas/fasFile.ts +8 -0
  452. package/src/icons/baseIcons/icons.ts +28 -0
  453. package/src/icons/baseIcons/types.ts +33 -12
  454. package/src/index.ts +1 -0
  455. package/src/input/consts.ts +27 -12
  456. package/src/input/helpText.tsx +3 -3
  457. package/src/input/input.tsx +5 -14
  458. package/src/input/input.types.ts +6 -6
  459. package/src/input/inputIcon.tsx +2 -1
  460. package/src/input/theme.ts +31 -27
  461. package/src/list/listItem.tsx +2 -2
  462. package/src/message/consts.ts +11 -4
  463. package/src/message/message.tsx +3 -3
  464. package/src/message/theme.ts +12 -9
  465. package/src/select/select.tsx +2 -1
  466. package/src/select/select.types.ts +2 -0
  467. package/src/select/selectButton.tsx +9 -8
  468. package/src/select/selectOption.tsx +3 -0
  469. package/src/skeleton/skeleton.types.ts +1 -1
  470. package/src/skeleton/theme.ts +9 -28
  471. package/src/spinner/spinner.types.ts +1 -1
  472. package/src/spinner/theme.ts +19 -22
  473. package/src/tag/theme.ts +2 -1
  474. package/src/theme/components.ts +3 -1
  475. package/src/theme/foundations/colors.ts +22 -11
  476. package/src/tooltip/{tooltip.setup.ts → consts.ts} +5 -1
  477. package/src/tooltip/tooltip.tsx +3 -3
  478. package/src/tooltip/tooltipContent.tsx +19 -22
  479. package/src/tree/context.ts +5 -0
  480. package/src/tree/index.ts +7 -0
  481. package/src/tree/theme.ts +76 -0
  482. package/src/tree/tree.tsx +121 -0
  483. package/src/tree/tree.types.ts +65 -0
  484. package/src/tree/treeIcon.tsx +16 -0
  485. package/src/tree/treeItem.tsx +177 -0
  486. package/src/tree/treeText.tsx +26 -0
  487. package/src/tree/useTreeState.ts +10 -0
  488. package/dist/cjs/tooltip/tooltip.setup.d.ts.map +0 -1
  489. package/dist/esm/tooltip/tooltip.setup.d.ts.map +0 -1
@@ -105,7 +105,8 @@ export const darkBlue = {
105
105
  18: 'hsl(223, 67%, 18%)', // main
106
106
  15: 'hsl(223, 67%, 15%)',
107
107
  10: 'hsl(223, 67%, 10%)',
108
- 5: 'hsl(223, 67%, 5%)'
108
+ 5: 'hsl(223, 67%, 5%)',
109
+ main: 'hsl(223, 67%, 18%)'
109
110
  }
110
111
 
111
112
  export const digiGreen = {
@@ -127,7 +128,8 @@ export const digiGreen = {
127
128
  20: 'hsl(139, 100%, 20%)',
128
129
  15: 'hsl(139, 100%, 15%)',
129
130
  10: 'hsl(139, 100%, 10%)',
130
- 5: 'hsl(139, 100%, 5%)'
131
+ 5: 'hsl(139, 100%, 5%)',
132
+ main: 'hsl(139, 100%, 78%)'
131
133
  }
132
134
 
133
135
  export const earth = {
@@ -149,7 +151,8 @@ export const earth = {
149
151
  20: 'hsl(35, 53%, 20%)',
150
152
  15: 'hsl(35, 53%, 15%)',
151
153
  10: 'hsl(35, 53%, 10%)',
152
- 5: 'hsl(35, 53%, 5%)'
154
+ 5: 'hsl(35, 53%, 5%)',
155
+ main: 'hsl(35, 53%, 89%)'
153
156
  }
154
157
 
155
158
  export const energyRed = {
@@ -171,7 +174,8 @@ export const energyRed = {
171
174
  20: 'hsl(357, 83%, 20%)',
172
175
  15: 'hsl(357, 83%, 15%)',
173
176
  10: 'hsl(357, 83%, 10%)',
174
- 5: 'hsl(357, 83%, 5%)'
177
+ 5: 'hsl(357, 83%, 5%)',
178
+ main: 'hsl(357, 83%, 54%)'
175
179
  }
176
180
 
177
181
  export const landGreen = {
@@ -193,7 +197,8 @@ export const landGreen = {
193
197
  20: 'hsl(114, 49%, 20%)',
194
198
  15: 'hsl(114, 49%, 15%)',
195
199
  10: 'hsl(114, 49%, 10%)',
196
- 5: 'hsl(114, 49%, 5%)'
200
+ 5: 'hsl(114, 49%, 5%)',
201
+ main: 'hsl(114, 49%, 41%)'
197
202
  }
198
203
 
199
204
  export const seaBlue = {
@@ -215,7 +220,8 @@ export const seaBlue = {
215
220
  20: 'hsl(218, 100%, 20%)',
216
221
  15: 'hsl(218, 100%, 15%)',
217
222
  10: 'hsl(218, 100%, 10%)',
218
- 5: 'hsl(218, 100%, 5%)'
223
+ 5: 'hsl(218, 100%, 5%)',
224
+ main: 'hsl(218, 100%, 28%)'
219
225
  }
220
226
 
221
227
  export const sandstone = {
@@ -237,7 +243,8 @@ export const sandstone = {
237
243
  20: 'hsl(40, 3%, 20%)',
238
244
  15: 'hsl(40, 3%, 15%)',
239
245
  10: 'hsl(40, 3%, 10%)',
240
- 5: 'hsl(40, 3%, 5%)'
246
+ 5: 'hsl(40, 3%, 5%)',
247
+ main: 'hsl(40, 3%, 79%)'
241
248
  }
242
249
 
243
250
  export const skyBlue = {
@@ -259,7 +266,8 @@ export const skyBlue = {
259
266
  20: 'hsl(196, 74%, 20%)',
260
267
  15: 'hsl(196, 74%, 15%)',
261
268
  10: 'hsl(196, 74%, 10%)',
262
- 5: 'hsl(196, 74%, 5%)'
269
+ 5: 'hsl(196, 74%, 5%)',
270
+ main: 'hsl(196, 74%, 77%)'
263
271
  }
264
272
 
265
273
  export const sunflower = {
@@ -281,7 +289,8 @@ export const sunflower = {
281
289
  20: 'hsl(55, 100%, 20%)',
282
290
  15: 'hsl(55, 100%, 15%)',
283
291
  10: 'hsl(55, 100%, 10%)',
284
- 5: 'hsl(55, 100%, 5%)'
292
+ 5: 'hsl(55, 100%, 5%)',
293
+ main: 'hsl(55, 100%, 73%)'
285
294
  }
286
295
 
287
296
  export const terracotta = {
@@ -303,7 +312,8 @@ export const terracotta = {
303
312
  20: 'hsl(34, 100%, 20%)',
304
313
  15: 'hsl(34, 100%, 15%)',
305
314
  10: 'hsl(34, 100%, 10%)',
306
- 5: 'hsl(34, 100%, 5%)'
315
+ 5: 'hsl(34, 100%, 5%)',
316
+ main: 'hsl(34, 100%, 35%)'
307
317
  }
308
318
 
309
319
  export const warmGrey = {
@@ -325,7 +335,8 @@ export const warmGrey = {
325
335
  20: 'hsl(30, 8%, 20%)',
326
336
  15: 'hsl(30, 8%, 15%)',
327
337
  10: 'hsl(30, 8%, 10%)',
328
- 5: 'hsl(30, 8%, 5%)'
338
+ 5: 'hsl(30, 8%, 5%)',
339
+ main: 'hsl(30, 8%, 56%)'
329
340
  }
330
341
 
331
342
  export const blue = {
@@ -1,6 +1,10 @@
1
1
  export const pointerSize = 12
2
2
 
3
- export const color = 'prussian.80'
3
+ export const bg = 'darkBlue.18'
4
+
5
+ export const borderRaduis = 1
6
+
7
+ export const boxShadow = 2
4
8
 
5
9
  export const pointerPlacement = {
6
10
  top: {
@@ -4,7 +4,7 @@ import React, { JSXElementConstructor, ReactElement } from 'react'
4
4
  import Box from '../box'
5
5
  import { useUp, v } from '../core'
6
6
  import { Link } from '../link'
7
- import { color, pointerPlacement, pointerSize } from './tooltip.setup'
7
+ import { bg, pointerPlacement, pointerSize } from './consts'
8
8
  import { TooltipProps } from './tooltip.types'
9
9
  import { TooltipContent } from './tooltipContent'
10
10
 
@@ -33,7 +33,7 @@ export const Tooltip = (props: TooltipProps) => {
33
33
  <TooltipContent fontSize={fontSize} maxWidth={maxWidth}>
34
34
  {isDesktop && (
35
35
  <Box
36
- bg={color}
36
+ bg={bg}
37
37
  bottom={pointerPlacement[placement].bottom}
38
38
  h={`${pointerSize}px`}
39
39
  left={pointerPlacement[placement].left}
@@ -49,7 +49,7 @@ export const Tooltip = (props: TooltipProps) => {
49
49
  {!!linkText && (
50
50
  <>
51
51
  &nbsp;
52
- <Link variant="light" {...linkProps}>
52
+ <Link variant="white" {...linkProps}>
53
53
  {linkText}
54
54
  </Link>
55
55
  </>
@@ -1,27 +1,24 @@
1
1
  import React from 'react'
2
2
 
3
3
  import Box from '../box'
4
- import { color } from './tooltip.setup'
4
+ import { bg, borderRaduis, boxShadow } from './consts'
5
5
  import { TooltipProps } from './tooltip.types'
6
6
 
7
- export const TooltipContent = (props: TooltipProps) => {
8
- const { children, fontSize = '16px', maxWidth = '400px' } = props
9
- return (
10
- <Box
11
- bg={color}
12
- borderRadius="md"
13
- boxShadow="2"
14
- className="vui-tooltip-content"
15
- color="white"
16
- fontSize={fontSize}
17
- m={1}
18
- maxW={maxWidth}
19
- overflowY="auto"
20
- p={1}
21
- pl={2}
22
- pr={2}
23
- >
24
- {children}
25
- </Box>
26
- )
27
- }
7
+ export const TooltipContent = ({ children, fontSize = '16px', maxWidth = '400px' }: TooltipProps) => (
8
+ <Box
9
+ bg={bg}
10
+ borderRadius={borderRaduis}
11
+ boxShadow={boxShadow}
12
+ className="vui-tooltip-content"
13
+ color="white"
14
+ fontSize={fontSize}
15
+ m={1}
16
+ maxW={maxWidth}
17
+ overflowY="auto"
18
+ p={1}
19
+ pl={2}
20
+ pr={2}
21
+ >
22
+ {children}
23
+ </Box>
24
+ )
@@ -0,0 +1,5 @@
1
+ import { createContext, Dict } from '../utils'
2
+
3
+ const [TreeProvider, useTreeContext] = createContext<Dict>({ isOptional: true })
4
+
5
+ export { TreeProvider, useTreeContext }
@@ -0,0 +1,7 @@
1
+ export * from './context'
2
+ export * from './tree'
3
+ export { default } from './tree'
4
+ export * from './tree.types'
5
+ export * from './treeIcon'
6
+ export * from './treeItem'
7
+ export * from './treeText'
@@ -0,0 +1,76 @@
1
+ import { Dict } from '../utils'
2
+
3
+ function variantDefault(props: Dict) {
4
+ const item: Dict = {
5
+ activeBg: 'skyBlue.30',
6
+ hoverBg: 'skyBlue.20',
7
+ selectedBg: 'skyBlue.10',
8
+ px: 2
9
+ }
10
+
11
+ return { item }
12
+ }
13
+
14
+ const baseStyle = {}
15
+
16
+ const defaultProps = {
17
+ size: 'md',
18
+ variant: 'default'
19
+ }
20
+
21
+ const parts = ['container', 'icon', 'item', 'text']
22
+
23
+ const sizes = {
24
+ sm: {
25
+ icon: {
26
+ size: 'xs'
27
+ },
28
+ item: {
29
+ fontSize: 'md',
30
+ h: 32,
31
+ py: '3px'
32
+ }
33
+ },
34
+ md: {
35
+ icon: {
36
+ size: 'sm'
37
+ },
38
+ item: {
39
+ fontSize: 'md',
40
+ h: 40,
41
+ py: '5px'
42
+ }
43
+ },
44
+ lg: {
45
+ item: {
46
+ fontSize: 'md',
47
+ h: 48,
48
+ py: '7px'
49
+ },
50
+ icon: {
51
+ size: 'md'
52
+ }
53
+ },
54
+ xl: {
55
+ item: {
56
+ fontSize: 'lg',
57
+ h: 56,
58
+ py: '9px'
59
+ },
60
+ icon: {
61
+ scale: 2
62
+ }
63
+ }
64
+ }
65
+
66
+ const variants = {
67
+ default: variantDefault
68
+ }
69
+
70
+ export default {
71
+ baseStyle,
72
+ defaultProps,
73
+ parts,
74
+ sizes,
75
+ variants
76
+ }
@@ -0,0 +1,121 @@
1
+ import React, { Children, ReactElement, useEffect, useMemo } from 'react'
2
+
3
+ import { styled, useStyleConfig, vui, VuiComponent } from '../core'
4
+ import { cs, filterUndefined } from '../utils'
5
+ import { TreeProvider } from './context'
6
+ import { TreeItemId, TreeItemProps, TreeProps } from './tree.types'
7
+ import TreeIcon from './treeIcon'
8
+ import TreeItem from './treeItem'
9
+ import TreeText from './treeText'
10
+ import { useTreeState } from './useTreeState'
11
+
12
+ export const TreeBase = styled.divBox`
13
+ display: flex;
14
+ height: auto;
15
+ align-content: flex-start;
16
+ flex-direction: column;
17
+ `
18
+
19
+ /** Displays a tree of tree link items and optional heading. Exposes some props to the children via context. */
20
+ export const Tree = vui<'div', TreeProps>((props, ref) => {
21
+ const {
22
+ activeItemId,
23
+ children,
24
+ className,
25
+ iconCollapse = 'falMinus',
26
+ iconExpand = 'falPlus',
27
+ items,
28
+ onClickItem,
29
+ size,
30
+ variant,
31
+ ...rest
32
+ } = props
33
+ const styles = useStyleConfig('Tree', props)
34
+
35
+ const { itemsInternal, setItemsInternal, activeItemIndex, setActiveItemIndex } = useTreeState(activeItemId)
36
+
37
+ const context = useMemo(() => filterUndefined({ size, variant }), [size, variant])
38
+
39
+ const transformChildrenToItems = (children: any) => {
40
+ const t: TreeItemProps[] = []
41
+
42
+ if (children) {
43
+ ;(Children.toArray(children) as ReactElement[]).forEach((child: ReactElement<TreeItemProps>, index: number) => {
44
+ if (child?.props?.text) {
45
+ let items: TreeItemProps[] = []
46
+
47
+ if (child.props.children) {
48
+ items = transformChildrenToItems(child.props.children) as unknown as TreeItemProps[]
49
+ }
50
+
51
+ t.push({
52
+ id: child.props.id,
53
+ text: child.props.text,
54
+ isActive: child.props.isActive,
55
+ items: child.props.items || items,
56
+ isCollapsed: child.props.isCollapsed,
57
+ disabled: child.props.disabled,
58
+ onClickTreeItem: onClickTreeItem
59
+ })
60
+ }
61
+ })
62
+ }
63
+
64
+ return t
65
+ }
66
+
67
+ useEffect(() => {
68
+ if (items) {
69
+ setItemsInternal(items as TreeItemProps[])
70
+ return
71
+ }
72
+
73
+ const t: TreeItemProps[] = []
74
+ if (children) {
75
+ const transformed = transformChildrenToItems(children) as unknown as TreeItemProps[]
76
+ t.push(...transformed)
77
+ }
78
+ setItemsInternal(t)
79
+ if (activeItemId !== undefined && t?.find((i: TreeItemProps) => i.id === activeItemId)) {
80
+ setActiveItemIndex(activeItemId)
81
+ }
82
+ }, [children, activeItemId])
83
+
84
+ const onClickTreeItem = (id: TreeItemId) => {
85
+ setActiveItemIndex(id)
86
+ if (onClickItem) {
87
+ onClickItem(id)
88
+ }
89
+ }
90
+
91
+ return (
92
+ <TreeProvider value={context}>
93
+ <TreeBase className={cs('vui-tree', className)} ref={ref} {...styles.container} {...rest}>
94
+ {itemsInternal?.map(({ id, isActive, ...props }, index: number) => {
95
+ return (
96
+ <TreeItem
97
+ activeItemIndex={activeItemIndex}
98
+ iconCollapse={iconCollapse}
99
+ iconExpand={iconExpand}
100
+ id={id}
101
+ isActive={activeItemIndex ? activeItemIndex === id : false}
102
+ key={id ?? index}
103
+ onClickTreeItem={onClickTreeItem}
104
+ {...props}
105
+ />
106
+ )
107
+ })}
108
+ </TreeBase>
109
+ </TreeProvider>
110
+ )
111
+ }) as VuiComponent<'div', TreeProps> & {
112
+ Icon: typeof TreeIcon
113
+ Item: typeof TreeItem
114
+ Text: typeof TreeText
115
+ }
116
+
117
+ Tree.Icon = TreeIcon
118
+ Tree.Item = TreeItem
119
+ Tree.Text = TreeText
120
+
121
+ export default Tree
@@ -0,0 +1,65 @@
1
+ import { ReactNode, ReactText } from 'react'
2
+
3
+ import { IconProp } from '../icon'
4
+ import { LinkProps } from '../link'
5
+ import { SystemProps } from '../system'
6
+ import { ThemingProps } from '../theme'
7
+ import { PropsOf } from '../utils'
8
+
9
+ export type TreeProps = SystemProps &
10
+ ThemingProps<'Tree'> & {
11
+ /** Currently selected item. */
12
+ activeItemId?: TreeItemId
13
+ /** Socket defining the collapse icon on the left. */
14
+ iconCollapse?: IconProp
15
+ /** Socket defining the expand icon on the left. */
16
+ iconExpand?: IconProp
17
+ /** Socket displaying a tree of items. */
18
+ items?: PropsOf<'div', TreeItemProps>[] | JSX.Element
19
+ /** Socket defining the size of the tree. */
20
+ onClickItem?: (id: TreeItemId) => void
21
+ }
22
+
23
+ export type TreeItemLinkProps = PropsOf<'a', LinkProps> | object
24
+
25
+ export type TreeItemId = string | number
26
+
27
+ export type TreeOnToggleEvent = {
28
+ id: TreeItemId
29
+ collapsed: boolean
30
+ }
31
+
32
+ export type TreeItemProps = SystemProps &
33
+ ThemingProps<'Tree'> & {
34
+ activeItemId?: TreeItemId
35
+ /** internal, not exposed */
36
+ activeItemIndex?: TreeItemId
37
+ /** Unique ID */
38
+ id: TreeItemId
39
+ /** Centers the content vertically and horizontally. @deprecated */
40
+ center?: boolean
41
+ /** Centers the content horizontally. @deprecated */
42
+ centerH?: boolean
43
+ /** Centers the content vertically. @deprecated */
44
+ centerV?: boolean
45
+ /** Socket defining the collapse icon on the left. */
46
+ iconCollapse?: IconProp
47
+ /** Socket defining the expand icon on the left. */
48
+ iconExpand?: IconProp
49
+ /** The children of this tree item. */
50
+ items?: PropsOf<'div', TreeItemProps>[]
51
+ children?: ReactNode
52
+ /** Collapsed state */
53
+ isCollapsed?: boolean
54
+ /** Displays item and its content in disabled state with appropriate styling. */
55
+ disabled?: boolean
56
+ /** Displays item in selected state with appropriate styling. */
57
+ isActive?: boolean
58
+ /** If provided, content is wrapper with a link and the props are provided to the element. */
59
+ linkProps?: TreeItemLinkProps
60
+ /** Socket displaying text within the item. */
61
+ text: ReactText | JSX.Element
62
+ /** Collapse change state */
63
+ onToggle?: (event: TreeOnToggleEvent) => void
64
+ onClickTreeItem?: (id: TreeItemId) => void
65
+ }
@@ -0,0 +1,16 @@
1
+ import React from 'react'
2
+
3
+ import { useStyleConfig, vui } from '../core'
4
+ import Icon, { IconProps } from '../icon'
5
+ import { cs } from '../utils'
6
+ import { useTreeContext } from './context'
7
+
8
+ /** Displays an icon on the side of the TreeItem. */
9
+ export const TreeIcon = vui<'svg', IconProps>((props, ref) => {
10
+ const { className, ...rest } = props
11
+ const styles = useStyleConfig('Tree', useTreeContext())
12
+
13
+ return <Icon className={cs('vui-treeIcon', className)} ref={ref} size="xs" {...styles.icon} {...rest} />
14
+ })
15
+
16
+ export default TreeIcon
@@ -0,0 +1,177 @@
1
+ import React, { useEffect, useState } from 'react'
2
+
3
+ import { Box } from '../box'
4
+ import { styled, useStyleConfig, vui } from '../core'
5
+ import { cs, isArray, isReactText } from '../utils'
6
+ import { useTreeContext } from './context'
7
+ import { TreeItemProps } from './tree.types'
8
+ import TreeIcon from './treeIcon'
9
+ import TreeText from './treeText'
10
+
11
+ export const TreeItemBase = styled.divBox`
12
+ display: flex;
13
+ flex-direction: column;
14
+ line-height: normal;
15
+ outline: none;
16
+ align-content: flex-start;
17
+ align-items: flex-start;
18
+ overflow: visible;
19
+ height: auto;
20
+
21
+ & [aria-disabled='true'] {
22
+ cursor: not-allowed;
23
+ user-select: none;
24
+ }
25
+ `
26
+
27
+ /**
28
+ * Displays a tree item with text and optional icons. Can be shown as selected.
29
+ */
30
+ export const TreeItem = vui<'div', TreeItemProps>((props, ref) => {
31
+ const mergedProps = { ...useTreeContext(), ...props }
32
+
33
+ const {
34
+ activeItemId,
35
+ activeItemIndex,
36
+ children,
37
+ center,
38
+ centerH,
39
+ centerV = true,
40
+ className,
41
+ iconCollapse = 'falMinus',
42
+ isCollapsed,
43
+ disabled,
44
+ iconExpand = 'falPlus',
45
+ id,
46
+ items,
47
+ isActive,
48
+ isTruncated,
49
+ key,
50
+ onClickTreeItem,
51
+ onToggle,
52
+ text,
53
+ ...rest
54
+ } = mergedProps
55
+ const styles = useStyleConfig('Tree', useTreeContext())
56
+ const { activeBg, h, hoverBg, p, px, py, selectedBg, ...itemStyles } = styles.item
57
+
58
+ const [collapsedInternal, setIsCollapsedInternal] = useState<boolean>(false)
59
+
60
+ useEffect(() => {
61
+ setIsCollapsedInternal(!!isCollapsed)
62
+ }, [isCollapsed])
63
+
64
+ const toggle = (e: Event) => {
65
+ if (!disabled) {
66
+ onToggle?.({ id, collapsed: !collapsedInternal })
67
+ setIsCollapsedInternal(!collapsedInternal)
68
+ }
69
+
70
+ const target = e.target as HTMLDivElement
71
+ const active = target?.closest('.vui-tree')?.getElementsByClassName('vui-treeItem-active')[0] as HTMLDivElement
72
+ active ? (active.style.backgroundColor = 'transparent') : null
73
+
74
+ onClickTreeItem?.(id)
75
+
76
+ // Avoids triggering parent's onClick
77
+ e.stopPropagation()
78
+ }
79
+
80
+ const interactiveProps = !disabled
81
+ ? {
82
+ cursor: 'pointer',
83
+ focusVisibleRing: 2,
84
+ hoverBg: 'transparent',
85
+ activeBg: 'transparent',
86
+ userSelect: 'none'
87
+ }
88
+ : {}
89
+
90
+ const hoverTreeItem = (e: Event, type: string) => {
91
+ const target = e.target as HTMLDivElement
92
+
93
+ if (target.classList.contains('vui-treeItem-permanent')) {
94
+ target.style.backgroundColor = type === 'over' ? '#e2f1ff' : 'transparent'
95
+ e.stopPropagation()
96
+ } else {
97
+ e.preventDefault()
98
+ const permanent = target
99
+ .closest('.vui-treeItem')
100
+ ?.getElementsByClassName('vui-treeItem-permanent')[0] as HTMLDivElement
101
+
102
+ const collapsible = target
103
+ .closest('.vui-treeItem')
104
+ ?.getElementsByClassName('vui-treeItem-collapsible')[0] as HTMLDivElement
105
+
106
+ const active = target.closest('.vui-treeItem')?.getElementsByClassName('vui-treeItem-active')[0] as HTMLDivElement
107
+
108
+ permanent ? (permanent.style.backgroundColor = type === 'over' ? '#e2f1ff' : 'transparent') : null
109
+ collapsible ? (collapsible.style.backgroundColor = 'transparent') : null
110
+ active ? (active.style.backgroundColor = 'hsl(139, 100%, 90%)') : null
111
+ }
112
+ }
113
+
114
+ const isCollapsable = (isArray(children) && children.length > 0) || (isArray(items) && items.length > 0)
115
+ const isActiveInternal = (!activeItemIndex && isActive) || activeItemIndex === id
116
+
117
+ return (
118
+ <TreeItemBase
119
+ alignItems="start"
120
+ className={cs('vui-treeItem', className)}
121
+ h={collapsedInternal ? h : isCollapsable ? 'auto' : h}
122
+ id={id}
123
+ m={0}
124
+ onClick={!disabled ? (e: Event) => toggle(e) : undefined}
125
+ onMouseOut={!disabled ? (e: Event) => hoverTreeItem(e, 'out') : undefined}
126
+ onMouseOver={!disabled ? (e: Event) => hoverTreeItem(e, 'over') : undefined}
127
+ p={0}
128
+ ref={ref}
129
+ w={1}
130
+ {...itemStyles}
131
+ {...interactiveProps}
132
+ {...rest}
133
+ hoverBg="transparent"
134
+ >
135
+ <Box flexDirection="column" hoverBg="transparent" m={0} pl={2} pr={0} py={py} w={1}>
136
+ <Box
137
+ alignItems="center"
138
+ bg={isActiveInternal ? 'hsl(139, 100%, 90%)' : 'transparent'}
139
+ className={isActiveInternal ? 'vui-treeItem-active' : 'vui-treeItem-permanent'}
140
+ flexDirection="row"
141
+ hoverBg="transparent"
142
+ m={0}
143
+ p={0}
144
+ w={1}
145
+ >
146
+ {items && items?.length > 0 && (
147
+ <>{collapsedInternal ? <TreeIcon mr={1} name={iconExpand} /> : <TreeIcon mr={1} name={iconCollapse} />}</>
148
+ )}
149
+ {items?.length === 0 && <TreeIcon mr={1} name="cusDotFullAlt" />}
150
+ {isReactText(text) ? <TreeText {...{ isTruncated, text }} /> : text}
151
+ </Box>
152
+
153
+ {isCollapsable && !collapsedInternal && (
154
+ <Box className="vui-treeItem-collapsible" flexDirection="column" hoverBg="transparent" m={0} p={0} w={1}>
155
+ {children ??
156
+ (isArray<TreeItemProps>(items)
157
+ ? items.map(({ key, ...props }, index) => {
158
+ return (
159
+ <TreeItem
160
+ activeItemIndex={activeItemIndex}
161
+ iconCollapse={iconCollapse}
162
+ iconExpand={iconExpand}
163
+ key={key ?? index}
164
+ onClickTreeItem={onClickTreeItem}
165
+ {...props}
166
+ />
167
+ )
168
+ })
169
+ : items)}
170
+ </Box>
171
+ )}
172
+ </Box>
173
+ </TreeItemBase>
174
+ )
175
+ })
176
+
177
+ export default TreeItem
@@ -0,0 +1,26 @@
1
+ import React from 'react'
2
+
3
+ import { useStyleConfig, vui } from '../core'
4
+ import T, { TProps } from '../t'
5
+ import { cs, ellipsisOverflow } from '../utils'
6
+ import { useTreeContext } from './context'
7
+
8
+ /** Displays text within the TreeItem. */
9
+ export const TreeText = vui<'span', TProps>((props, ref) => {
10
+ const { className, ...rest } = props
11
+ const styles = useStyleConfig('Tree', useTreeContext())
12
+
13
+ return (
14
+ <T
15
+ className={cs('vui-treeText', className)}
16
+ fontSize="inherit"
17
+ py={styles.item.py}
18
+ ref={ref}
19
+ {...ellipsisOverflow}
20
+ {...styles.text}
21
+ {...rest}
22
+ />
23
+ )
24
+ })
25
+
26
+ export default TreeText