@veracity/vui 2.10.0 → 2.12.0-beta.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 (324) hide show
  1. package/dist/cjs/accordion/accordion.types.d.ts +4 -2
  2. package/dist/cjs/accordion/accordion.types.d.ts.map +1 -1
  3. package/dist/cjs/accordion/accordionItem.d.ts.map +1 -1
  4. package/dist/cjs/accordion/accordionItem.js +2 -2
  5. package/dist/cjs/accordion/accordionItemArrow.d.ts +1 -1
  6. package/dist/cjs/accordion/accordionItemArrow.d.ts.map +1 -1
  7. package/dist/cjs/accordion/accordionItemArrow.js +15 -1
  8. package/dist/cjs/accordion/accordionItemHorizontal.d.ts.map +1 -1
  9. package/dist/cjs/accordion/accordionItemHorizontal.js +2 -2
  10. package/dist/cjs/button/button.d.ts.map +1 -1
  11. package/dist/cjs/button/button.js +9 -15
  12. package/dist/cjs/button/buttonIcon.d.ts.map +1 -1
  13. package/dist/cjs/button/buttonIcon.js +4 -2
  14. package/dist/cjs/button/consts.d.ts +5 -0
  15. package/dist/cjs/button/consts.d.ts.map +1 -1
  16. package/dist/cjs/button/consts.js +7 -6
  17. package/dist/cjs/core/vuiProvider/consts.d.ts +2 -0
  18. package/dist/cjs/core/vuiProvider/consts.d.ts.map +1 -0
  19. package/dist/cjs/core/vuiProvider/consts.js +4 -0
  20. package/dist/cjs/core/vuiProvider/globalStyle.d.ts.map +1 -1
  21. package/dist/cjs/core/vuiProvider/globalStyle.js +8 -0
  22. package/dist/cjs/core/vuiProvider/index.d.ts +2 -0
  23. package/dist/cjs/core/vuiProvider/index.d.ts.map +1 -1
  24. package/dist/cjs/core/vuiProvider/index.js +2 -0
  25. package/dist/cjs/core/vuiProvider/useBodyScrollLock.d.ts +7 -0
  26. package/dist/cjs/core/vuiProvider/useBodyScrollLock.d.ts.map +1 -0
  27. package/dist/cjs/core/vuiProvider/useBodyScrollLock.js +18 -0
  28. package/dist/cjs/core/vuiProvider/vuiProvider.d.ts.map +1 -1
  29. package/dist/cjs/core/vuiProvider/vuiProvider.js +0 -2
  30. package/dist/cjs/definition/definition.d.ts +9 -0
  31. package/dist/cjs/definition/definition.d.ts.map +1 -0
  32. package/dist/cjs/definition/definition.js +85 -0
  33. package/dist/cjs/definition/definition.types.d.ts +24 -0
  34. package/dist/cjs/definition/definition.types.d.ts.map +1 -0
  35. package/dist/cjs/definition/definitionContent.d.ts +6 -0
  36. package/dist/cjs/definition/definitionContent.d.ts.map +1 -0
  37. package/dist/cjs/definition/definitionContent.js +46 -0
  38. package/dist/cjs/definition/index.d.ts +3 -0
  39. package/dist/cjs/definition/index.d.ts.map +1 -0
  40. package/dist/cjs/definition/index.js +23 -0
  41. package/dist/cjs/definition/theme.d.ts +65 -0
  42. package/dist/cjs/definition/theme.d.ts.map +1 -0
  43. package/dist/cjs/definition/theme.js +70 -0
  44. package/dist/cjs/dialog/consts.d.ts +0 -1
  45. package/dist/cjs/dialog/consts.d.ts.map +1 -1
  46. package/dist/cjs/dialog/consts.js +1 -2
  47. package/dist/cjs/focusLock/focusLock.d.ts +11 -0
  48. package/dist/cjs/focusLock/focusLock.d.ts.map +1 -0
  49. package/dist/cjs/{modal → focusLock}/focusLock.js +3 -3
  50. package/dist/cjs/focusLock/focusLock.types.d.ts.map +1 -0
  51. package/dist/cjs/focusLock/focusLock.types.js +2 -0
  52. package/dist/cjs/focusLock/index.d.ts +4 -0
  53. package/dist/cjs/focusLock/index.d.ts.map +1 -0
  54. package/dist/cjs/focusLock/index.js +24 -0
  55. package/dist/cjs/footer/footer.d.ts.map +1 -1
  56. package/dist/cjs/footer/footer.js +5 -1
  57. package/dist/cjs/footer/footer.types.d.ts +2 -1
  58. package/dist/cjs/footer/footer.types.d.ts.map +1 -1
  59. package/dist/cjs/header/headerAccountUserInfo.d.ts.map +1 -1
  60. package/dist/cjs/header/headerAccountUserInfo.js +3 -3
  61. package/dist/cjs/header/headerLinkItem.d.ts.map +1 -1
  62. package/dist/cjs/header/headerLinkItem.js +7 -3
  63. package/dist/cjs/header/headerNotifications.d.ts.map +1 -1
  64. package/dist/cjs/header/headerNotifications.js +3 -3
  65. package/dist/cjs/header/headerSignIn.d.ts.map +1 -1
  66. package/dist/cjs/header/headerSignIn.js +1 -1
  67. package/dist/cjs/header/theme.d.ts +2 -0
  68. package/dist/cjs/header/theme.d.ts.map +1 -1
  69. package/dist/cjs/header/theme.js +2 -0
  70. package/dist/cjs/icons/baseIcons/conc/conCard.d.ts +4 -0
  71. package/dist/cjs/icons/baseIcons/conc/conCard.d.ts.map +1 -0
  72. package/dist/cjs/icons/baseIcons/conc/conCard.js +8 -0
  73. package/dist/cjs/icons/baseIcons/conc/conEmptyBox.d.ts +4 -0
  74. package/dist/cjs/icons/baseIcons/conc/conEmptyBox.d.ts.map +1 -0
  75. package/dist/cjs/icons/baseIcons/conc/conEmptyBox.js +7 -0
  76. package/dist/cjs/icons/baseIcons/icons.d.ts +2 -0
  77. package/dist/cjs/icons/baseIcons/icons.d.ts.map +1 -1
  78. package/dist/cjs/icons/baseIcons/icons.js +12 -8
  79. package/dist/cjs/icons/baseIcons/types.d.ts +1 -1
  80. package/dist/cjs/icons/baseIcons/types.d.ts.map +1 -1
  81. package/dist/cjs/index.d.ts +2 -0
  82. package/dist/cjs/index.d.ts.map +1 -1
  83. package/dist/cjs/index.js +2 -0
  84. package/dist/cjs/input/consts.d.ts +6 -0
  85. package/dist/cjs/input/consts.d.ts.map +1 -1
  86. package/dist/cjs/input/consts.js +7 -1
  87. package/dist/cjs/input/input.d.ts.map +1 -1
  88. package/dist/cjs/input/input.js +3 -3
  89. package/dist/cjs/input/input.types.d.ts +2 -0
  90. package/dist/cjs/input/input.types.d.ts.map +1 -1
  91. package/dist/cjs/modal/index.d.ts +2 -2
  92. package/dist/cjs/modal/index.d.ts.map +1 -1
  93. package/dist/cjs/modal/index.js +2 -2
  94. package/dist/cjs/modal/modal.d.ts.map +1 -1
  95. package/dist/cjs/modal/modal.js +1 -1
  96. package/dist/cjs/modal/modal.types.d.ts +1 -1
  97. package/dist/cjs/modal/modal.types.d.ts.map +1 -1
  98. package/dist/cjs/modal/modalManager.d.ts +2 -2
  99. package/dist/cjs/modal/modalManager.d.ts.map +1 -1
  100. package/dist/cjs/modal/modalManager.js +6 -9
  101. package/dist/cjs/onedesign-tokens/dist/js/rem/button.d.ts +85 -0
  102. package/dist/cjs/onedesign-tokens/dist/js/rem/button.d.ts.map +1 -0
  103. package/dist/cjs/onedesign-tokens/dist/js/rem/button.js +88 -0
  104. package/dist/cjs/sidemenu/sidemenu.d.ts +0 -1
  105. package/dist/cjs/sidemenu/sidemenu.d.ts.map +1 -1
  106. package/dist/cjs/sidemenu/sidemenu.js +10 -11
  107. package/dist/cjs/sidemenu/sidemenu.types.d.ts +4 -0
  108. package/dist/cjs/sidemenu/sidemenu.types.d.ts.map +1 -1
  109. package/dist/cjs/sidemenu/sidemenuItem.d.ts.map +1 -1
  110. package/dist/cjs/sidemenu/sidemenuItem.js +11 -6
  111. package/dist/cjs/spinner/spinner.d.ts.map +1 -1
  112. package/dist/cjs/spinner/spinner.js +2 -2
  113. package/dist/cjs/spinner/spinner.types.d.ts +2 -1
  114. package/dist/cjs/spinner/spinner.types.d.ts.map +1 -1
  115. package/dist/cjs/spinner/theme.d.ts +26 -5
  116. package/dist/cjs/spinner/theme.d.ts.map +1 -1
  117. package/dist/cjs/spinner/theme.js +34 -13
  118. package/dist/cjs/theme/components.d.ts +91 -5
  119. package/dist/cjs/theme/components.d.ts.map +1 -1
  120. package/dist/cjs/theme/components.js +70 -68
  121. package/dist/cjs/theme/defaultTheme.d.ts +92 -5
  122. package/dist/cjs/theme/defaultTheme.d.ts.map +1 -1
  123. package/dist/cjs/theme/foundations/colors.js +1 -1
  124. package/dist/cjs/theme/foundations/index.d.ts +1 -0
  125. package/dist/cjs/theme/foundations/index.d.ts.map +1 -1
  126. package/dist/cjs/theme/foundations/screens.d.ts +1 -0
  127. package/dist/cjs/theme/foundations/screens.d.ts.map +1 -1
  128. package/dist/cjs/theme/foundations/screens.js +2 -1
  129. package/dist/esm/accordion/accordion.types.d.ts +4 -2
  130. package/dist/esm/accordion/accordion.types.d.ts.map +1 -1
  131. package/dist/esm/accordion/accordionItem.d.ts.map +1 -1
  132. package/dist/esm/accordion/accordionItem.js +2 -2
  133. package/dist/esm/accordion/accordionItemArrow.d.ts +1 -1
  134. package/dist/esm/accordion/accordionItemArrow.d.ts.map +1 -1
  135. package/dist/esm/accordion/accordionItemArrow.js +1 -1
  136. package/dist/esm/accordion/accordionItemHorizontal.d.ts.map +1 -1
  137. package/dist/esm/accordion/accordionItemHorizontal.js +2 -2
  138. package/dist/esm/button/button.d.ts.map +1 -1
  139. package/dist/esm/button/button.js +10 -16
  140. package/dist/esm/button/buttonIcon.d.ts.map +1 -1
  141. package/dist/esm/button/buttonIcon.js +4 -2
  142. package/dist/esm/button/consts.d.ts +5 -0
  143. package/dist/esm/button/consts.d.ts.map +1 -1
  144. package/dist/esm/button/consts.js +6 -5
  145. package/dist/esm/core/vuiProvider/consts.d.ts +2 -0
  146. package/dist/esm/core/vuiProvider/consts.d.ts.map +1 -0
  147. package/dist/esm/core/vuiProvider/consts.js +1 -0
  148. package/dist/esm/core/vuiProvider/globalStyle.d.ts.map +1 -1
  149. package/dist/esm/core/vuiProvider/globalStyle.js +8 -0
  150. package/dist/esm/core/vuiProvider/index.d.ts +2 -0
  151. package/dist/esm/core/vuiProvider/index.d.ts.map +1 -1
  152. package/dist/esm/core/vuiProvider/index.js +2 -0
  153. package/dist/esm/core/vuiProvider/useBodyScrollLock.d.ts +7 -0
  154. package/dist/esm/core/vuiProvider/useBodyScrollLock.d.ts.map +1 -0
  155. package/dist/esm/core/vuiProvider/useBodyScrollLock.js +14 -0
  156. package/dist/esm/core/vuiProvider/vuiProvider.d.ts.map +1 -1
  157. package/dist/esm/core/vuiProvider/vuiProvider.js +0 -2
  158. package/dist/esm/definition/definition.d.ts +9 -0
  159. package/dist/esm/definition/definition.d.ts.map +1 -0
  160. package/dist/esm/definition/definition.js +68 -0
  161. package/dist/esm/definition/definition.types.d.ts +24 -0
  162. package/dist/esm/definition/definition.types.d.ts.map +1 -0
  163. package/dist/esm/definition/definitionContent.d.ts +6 -0
  164. package/dist/esm/definition/definitionContent.d.ts.map +1 -0
  165. package/dist/esm/definition/definitionContent.js +26 -0
  166. package/dist/esm/definition/index.d.ts +3 -0
  167. package/dist/esm/definition/index.d.ts.map +1 -0
  168. package/dist/esm/definition/index.js +2 -0
  169. package/dist/esm/definition/theme.d.ts +65 -0
  170. package/dist/esm/definition/theme.d.ts.map +1 -0
  171. package/dist/esm/definition/theme.js +68 -0
  172. package/dist/esm/dialog/consts.d.ts +0 -1
  173. package/dist/esm/dialog/consts.d.ts.map +1 -1
  174. package/dist/esm/dialog/consts.js +0 -1
  175. package/dist/esm/focusLock/focusLock.d.ts +11 -0
  176. package/dist/esm/focusLock/focusLock.d.ts.map +1 -0
  177. package/dist/esm/{modal → focusLock}/focusLock.js +3 -3
  178. package/dist/esm/focusLock/focusLock.types.d.ts.map +1 -0
  179. package/dist/esm/focusLock/focusLock.types.js +1 -0
  180. package/dist/esm/focusLock/index.d.ts +4 -0
  181. package/dist/esm/focusLock/index.d.ts.map +1 -0
  182. package/dist/esm/focusLock/index.js +3 -0
  183. package/dist/esm/footer/footer.d.ts.map +1 -1
  184. package/dist/esm/footer/footer.js +5 -1
  185. package/dist/esm/footer/footer.types.d.ts +2 -1
  186. package/dist/esm/footer/footer.types.d.ts.map +1 -1
  187. package/dist/esm/header/headerAccountUserInfo.d.ts.map +1 -1
  188. package/dist/esm/header/headerAccountUserInfo.js +3 -3
  189. package/dist/esm/header/headerLinkItem.d.ts.map +1 -1
  190. package/dist/esm/header/headerLinkItem.js +7 -3
  191. package/dist/esm/header/headerNotifications.d.ts.map +1 -1
  192. package/dist/esm/header/headerNotifications.js +3 -3
  193. package/dist/esm/header/headerSignIn.d.ts.map +1 -1
  194. package/dist/esm/header/headerSignIn.js +1 -1
  195. package/dist/esm/header/theme.d.ts +2 -0
  196. package/dist/esm/header/theme.d.ts.map +1 -1
  197. package/dist/esm/header/theme.js +2 -0
  198. package/dist/esm/icons/baseIcons/conc/conCard.d.ts +4 -0
  199. package/dist/esm/icons/baseIcons/conc/conCard.d.ts.map +1 -0
  200. package/dist/esm/icons/baseIcons/conc/conCard.js +6 -0
  201. package/dist/esm/icons/baseIcons/conc/conEmptyBox.d.ts +4 -0
  202. package/dist/esm/icons/baseIcons/conc/conEmptyBox.d.ts.map +1 -0
  203. package/dist/esm/icons/baseIcons/conc/conEmptyBox.js +5 -0
  204. package/dist/esm/icons/baseIcons/icons.d.ts +2 -0
  205. package/dist/esm/icons/baseIcons/icons.d.ts.map +1 -1
  206. package/dist/esm/icons/baseIcons/icons.js +2 -0
  207. package/dist/esm/icons/baseIcons/types.d.ts +1 -1
  208. package/dist/esm/icons/baseIcons/types.d.ts.map +1 -1
  209. package/dist/esm/index.d.ts +2 -0
  210. package/dist/esm/index.d.ts.map +1 -1
  211. package/dist/esm/index.js +2 -0
  212. package/dist/esm/input/consts.d.ts +6 -0
  213. package/dist/esm/input/consts.d.ts.map +1 -1
  214. package/dist/esm/input/consts.js +6 -0
  215. package/dist/esm/input/input.d.ts.map +1 -1
  216. package/dist/esm/input/input.js +4 -4
  217. package/dist/esm/input/input.types.d.ts +2 -0
  218. package/dist/esm/input/input.types.d.ts.map +1 -1
  219. package/dist/esm/modal/index.d.ts +2 -2
  220. package/dist/esm/modal/index.d.ts.map +1 -1
  221. package/dist/esm/modal/index.js +2 -2
  222. package/dist/esm/modal/modal.d.ts.map +1 -1
  223. package/dist/esm/modal/modal.js +1 -1
  224. package/dist/esm/modal/modal.types.d.ts +1 -1
  225. package/dist/esm/modal/modal.types.d.ts.map +1 -1
  226. package/dist/esm/modal/modalManager.d.ts +2 -2
  227. package/dist/esm/modal/modalManager.d.ts.map +1 -1
  228. package/dist/esm/modal/modalManager.js +6 -9
  229. package/dist/esm/onedesign-tokens/dist/js/rem/button.d.ts +85 -0
  230. package/dist/esm/onedesign-tokens/dist/js/rem/button.d.ts.map +1 -0
  231. package/dist/esm/onedesign-tokens/dist/js/rem/button.js +84 -0
  232. package/dist/esm/sidemenu/sidemenu.d.ts +0 -1
  233. package/dist/esm/sidemenu/sidemenu.d.ts.map +1 -1
  234. package/dist/esm/sidemenu/sidemenu.js +9 -11
  235. package/dist/esm/sidemenu/sidemenu.types.d.ts +4 -0
  236. package/dist/esm/sidemenu/sidemenu.types.d.ts.map +1 -1
  237. package/dist/esm/sidemenu/sidemenuItem.d.ts.map +1 -1
  238. package/dist/esm/sidemenu/sidemenuItem.js +29 -6
  239. package/dist/esm/spinner/spinner.d.ts.map +1 -1
  240. package/dist/esm/spinner/spinner.js +2 -2
  241. package/dist/esm/spinner/spinner.types.d.ts +2 -1
  242. package/dist/esm/spinner/spinner.types.d.ts.map +1 -1
  243. package/dist/esm/spinner/theme.d.ts +26 -5
  244. package/dist/esm/spinner/theme.d.ts.map +1 -1
  245. package/dist/esm/spinner/theme.js +34 -13
  246. package/dist/esm/theme/components.d.ts +91 -5
  247. package/dist/esm/theme/components.d.ts.map +1 -1
  248. package/dist/esm/theme/components.js +2 -0
  249. package/dist/esm/theme/defaultTheme.d.ts +92 -5
  250. package/dist/esm/theme/defaultTheme.d.ts.map +1 -1
  251. package/dist/esm/theme/foundations/colors.js +1 -1
  252. package/dist/esm/theme/foundations/index.d.ts +1 -0
  253. package/dist/esm/theme/foundations/index.d.ts.map +1 -1
  254. package/dist/esm/theme/foundations/screens.d.ts +1 -0
  255. package/dist/esm/theme/foundations/screens.d.ts.map +1 -1
  256. package/dist/esm/theme/foundations/screens.js +2 -1
  257. package/package.json +1 -1
  258. package/src/accordion/accordion.types.ts +4 -2
  259. package/src/accordion/accordionItem.tsx +6 -2
  260. package/src/accordion/accordionItemArrow.tsx +10 -2
  261. package/src/accordion/accordionItemHorizontal.tsx +11 -2
  262. package/src/button/button.tsx +18 -19
  263. package/src/button/buttonIcon.tsx +6 -3
  264. package/src/button/consts.ts +7 -5
  265. package/src/core/vuiProvider/consts.ts +1 -0
  266. package/src/core/vuiProvider/globalStyle.tsx +8 -0
  267. package/src/core/vuiProvider/index.ts +2 -0
  268. package/src/core/vuiProvider/useBodyScrollLock.tsx +17 -0
  269. package/src/core/vuiProvider/vuiProvider.tsx +0 -2
  270. package/src/definition/definition.tsx +83 -0
  271. package/src/definition/definition.types.ts +24 -0
  272. package/src/definition/definitionContent.tsx +61 -0
  273. package/src/definition/index.ts +2 -0
  274. package/src/definition/theme.ts +73 -0
  275. package/src/dialog/consts.ts +0 -2
  276. package/src/{modal → focusLock}/focusLock.tsx +4 -3
  277. package/src/focusLock/index.ts +3 -0
  278. package/src/footer/footer.tsx +29 -1
  279. package/src/footer/footer.types.ts +2 -1
  280. package/src/header/headerAccountUserInfo.tsx +7 -3
  281. package/src/header/headerLinkItem.tsx +7 -3
  282. package/src/header/headerNotifications.tsx +7 -3
  283. package/src/header/headerSignIn.tsx +1 -0
  284. package/src/header/theme.ts +2 -0
  285. package/src/icons/baseIcons/conc/conCard.ts +9 -0
  286. package/src/icons/baseIcons/conc/conEmptyBox.ts +8 -0
  287. package/src/icons/baseIcons/icons.ts +2 -0
  288. package/src/icons/baseIcons/types.ts +2 -0
  289. package/src/index.ts +2 -0
  290. package/src/input/consts.ts +7 -0
  291. package/src/input/input.tsx +66 -55
  292. package/src/input/input.types.ts +2 -0
  293. package/src/modal/index.ts +2 -2
  294. package/src/modal/modal.tsx +1 -2
  295. package/src/modal/modal.types.ts +1 -1
  296. package/src/modal/modalManager.ts +6 -9
  297. package/src/onedesign-tokens/dist/js/rem/button.js +85 -0
  298. package/src/sidemenu/sidemenu.tsx +23 -13
  299. package/src/sidemenu/sidemenu.types.ts +4 -0
  300. package/src/sidemenu/sidemenuItem.tsx +49 -36
  301. package/src/spinner/spinner.tsx +3 -4
  302. package/src/spinner/spinner.types.ts +3 -1
  303. package/src/spinner/theme.ts +34 -13
  304. package/src/theme/components.ts +2 -0
  305. package/src/theme/foundations/colors.ts +1 -1
  306. package/src/theme/foundations/screens.ts +2 -1
  307. package/dist/cjs/modal/focusLock.d.ts +0 -11
  308. package/dist/cjs/modal/focusLock.d.ts.map +0 -1
  309. package/dist/cjs/modal/focusLock.types.d.ts.map +0 -1
  310. package/dist/cjs/modal/modalStyle.d.ts +0 -3
  311. package/dist/cjs/modal/modalStyle.d.ts.map +0 -1
  312. package/dist/cjs/modal/modalStyle.js +0 -10
  313. package/dist/esm/modal/focusLock.d.ts +0 -11
  314. package/dist/esm/modal/focusLock.d.ts.map +0 -1
  315. package/dist/esm/modal/focusLock.types.d.ts.map +0 -1
  316. package/dist/esm/modal/modalStyle.d.ts +0 -3
  317. package/dist/esm/modal/modalStyle.d.ts.map +0 -1
  318. package/dist/esm/modal/modalStyle.js +0 -8
  319. package/src/modal/modalStyle.ts +0 -9
  320. /package/dist/cjs/{modal/focusLock.types.js → definition/definition.types.js} +0 -0
  321. /package/dist/cjs/{modal → focusLock}/focusLock.types.d.ts +0 -0
  322. /package/dist/esm/{modal/focusLock.types.js → definition/definition.types.js} +0 -0
  323. /package/dist/esm/{modal → focusLock}/focusLock.types.d.ts +0 -0
  324. /package/src/{modal → focusLock}/focusLock.types.ts +0 -0
@@ -0,0 +1,17 @@
1
+ import { useEffect, useState } from 'react'
2
+
3
+ import { addBodyClass, removeBodyClass } from '../../utils'
4
+ import { noScrollClass } from './consts'
5
+
6
+ export const useBodyScrollLock = () => {
7
+ const [isScrollLocked, setIsScrollLocked] = useState(false)
8
+
9
+ const toggleIsScrollLocked = () => setIsScrollLocked(!isScrollLocked)
10
+
11
+ useEffect(() => {
12
+ if (isScrollLocked) addBodyClass(noScrollClass)
13
+ else removeBodyClass(noScrollClass)
14
+ }, [isScrollLocked])
15
+
16
+ return { isScrollLocked, setIsScrollLocked, toggleIsScrollLocked }
17
+ }
@@ -1,7 +1,6 @@
1
1
  import React, { FC, useReducer } from 'react'
2
2
  import { ThemeProvider } from 'styled-components'
3
3
 
4
- import ModalStyle from '../../modal/modalStyle'
5
4
  import PopoverStyle from '../../popover/popoverStyle'
6
5
  import { Portal } from '../../portal'
7
6
  import defaultTheme, { VuiTheme } from '../../theme'
@@ -47,7 +46,6 @@ const VuiProvider: FC<VuiProviderProps & ChildrenProp> = ({
47
46
  <>
48
47
  {resetCSS && <ResetCSS />}
49
48
  <GlobalStyle globalStyle={globalStyle} />
50
- <ModalStyle />
51
49
  <PopoverStyle />
52
50
  {children}
53
51
  {notifyOffline && <NotifyOffline />}
@@ -0,0 +1,83 @@
1
+ import React from 'react'
2
+
3
+ import { styled, useStyleConfig, vui } from '../core'
4
+ import { DefinitionProps } from './definition.types'
5
+ import { DefinitionContent } from './definitionContent'
6
+
7
+ /**
8
+ * Properties are definition lists
9
+ * */
10
+ // @formatter:off
11
+ export const DefinitionVerticalBase = styled.dlBox`
12
+ display: grid;
13
+ gap: 1em;
14
+ grid-template-columns: repeat(auto-fit, minmax(10em, 20em));
15
+
16
+ .vui-definitionItemWrapper {
17
+ display: flex;
18
+ flex-direction: column;
19
+ }
20
+
21
+ dt,
22
+ dd {
23
+ display: inline-flex;
24
+ }
25
+ `
26
+
27
+ export const DefinitionHorizontalBase = styled.dlBox`
28
+ padding: 10px;
29
+ display: grid;
30
+ gap: 0;
31
+
32
+ .vui-definitionItemWrapper {
33
+ display: flex;
34
+ flex-direction: column;
35
+ @media (min-width: 1024px) {
36
+ flex-direction: row;
37
+ }
38
+ }
39
+
40
+ dt,
41
+ dd {
42
+ display: inline-flex;
43
+ padding-left: 5px;
44
+ }
45
+
46
+ dd {
47
+ ::after {
48
+ content: '';
49
+ }
50
+ @media (min-width: 1024px) {
51
+ ::after {
52
+ content: ',';
53
+ }
54
+ }
55
+ }
56
+
57
+ dt {
58
+ width: 20%;
59
+ min-width: 130px;
60
+ }
61
+ `
62
+ // @formatter:on
63
+
64
+ export const Definition = vui<'dl', DefinitionProps>((props, ref) => {
65
+ const { orientation = 'horizontal', ...rest } = props as DefinitionProps
66
+ const styles = useStyleConfig('Definition', props)
67
+ return (
68
+ <>
69
+ {orientation === 'horizontal' && (
70
+ <DefinitionHorizontalBase className="vui-definition" {...styles.container} {...rest}>
71
+ <DefinitionContent {...rest} />
72
+ </DefinitionHorizontalBase>
73
+ )}
74
+ {orientation === 'vertical' && (
75
+ <DefinitionVerticalBase className="vui-definition" {...styles.container} {...rest}>
76
+ <DefinitionContent {...rest} />
77
+ </DefinitionVerticalBase>
78
+ )}
79
+ </>
80
+ )
81
+ })
82
+
83
+ export default Definition
@@ -0,0 +1,24 @@
1
+ import { IconProp } from '../icon'
2
+ import { SystemProps } from '../system'
3
+ import { ThemingProps } from '../theme'
4
+
5
+ export type DefinitionItemProps = SystemProps & {
6
+ key: string
7
+ keyHasIcon?: boolean
8
+ value: string | number | string[] | number[]
9
+ valueHasIcon?: boolean
10
+ }
11
+ export type DefinitionProps = SystemProps &
12
+ ThemingProps<'Definition'> & {
13
+ /** Socket displaying icon on the left side. */
14
+ iconLeft?: IconProp | JSX.Element
15
+ /** Socket displaying icon on the right side. */
16
+ iconRight?: IconProp | JSX.Element
17
+ isLabelBold?: boolean
18
+ isValueBold?: boolean
19
+ items?: DefinitionItemProps[]
20
+ /** Socket defining orientation. */
21
+ orientation?: 'horizontal' | 'vertical'
22
+ size?: 'sm' | 'md'
23
+ variant?: 'light' | 'dark'
24
+ }
@@ -0,0 +1,61 @@
1
+ import React from 'react'
2
+
3
+ import Box from '../box'
4
+ import { styled, useStyleConfig, vui } from '../core'
5
+ import Icon from '../icon'
6
+ import { cs, isArray } from '../utils'
7
+ import { DefinitionItemProps, DefinitionProps } from './definition.types'
8
+
9
+ export const DefinitionItemKey = styled.dtBox``
10
+ export const DefinitionItemValue = styled.ddBox``
11
+
12
+ export const DefinitionContent = vui<'dl', DefinitionProps>(props => {
13
+ const { iconLeft, iconRight, isLabelBold, isValueBold, items } = props as DefinitionProps
14
+
15
+ const styles = useStyleConfig('Definition', props)
16
+
17
+ return (
18
+ <>
19
+ {isArray<DefinitionItemProps>(items)
20
+ ? items.map(({ key, value, ...props }, index) => (
21
+ <Box className="vui-definitionItemWrapper" key={index}>
22
+ <DefinitionItemKey fontWeight={isLabelBold ? 'demi' : 'default'} {...styles.dt}>
23
+ {props.keyHasIcon && iconLeft && (
24
+ <Icon className={cs('vui-definitionIcon')} name={iconLeft} {...styles.icon} />
25
+ )}
26
+ {key}
27
+ {props.keyHasIcon && iconRight && (
28
+ <Icon className={cs('vui-definitionIcon')} name={iconRight} {...styles.icon} />
29
+ )}
30
+ </DefinitionItemKey>
31
+ {isArray(value) ? (
32
+ value.map((value, index) => (
33
+ <DefinitionItemValue fontWeight={isValueBold ? 'demi' : 'default'} {...styles.dd} key={index}>
34
+ {props.valueHasIcon && iconLeft && (
35
+ <Icon className={cs('vui-definitionIcon')} name={iconLeft} {...styles.icon} />
36
+ )}
37
+ {value}
38
+ {props.valueHasIcon && iconRight && (
39
+ <Icon className={cs('vui-definitionIcon')} name={iconRight} {...styles.icon} />
40
+ )}
41
+ </DefinitionItemValue>
42
+ ))
43
+ ) : (
44
+ <DefinitionItemValue fontWeight={isValueBold ? 'demi' : 'default'} {...styles.dd}>
45
+ {props.valueHasIcon && iconLeft && (
46
+ <Icon className={cs('vui-definitionIcon')} name={iconLeft} {...styles.icon} />
47
+ )}
48
+ {value}
49
+ {props.valueHasIcon && iconRight && (
50
+ <Icon className={cs('vui-definitionIcon')} name={iconRight} {...styles.icon} />
51
+ )}
52
+ </DefinitionItemValue>
53
+ )}
54
+ </Box>
55
+ ))
56
+ : items}
57
+ </>
58
+ )
59
+ })
60
+
61
+ export default DefinitionContent
@@ -0,0 +1,2 @@
1
+ export * from './definition'
2
+ export { default } from './definition'
@@ -0,0 +1,73 @@
1
+ const baseStyle = {}
2
+
3
+ const defaultProps = {
4
+ size: 'md',
5
+ variant: 'light'
6
+ }
7
+
8
+ const parts = ['container', 'icon', 'dt', 'dd']
9
+
10
+ const sizes = {
11
+ sm: {
12
+ container: {
13
+ fontSize: 'sm',
14
+ lineHeight: '22px'
15
+ },
16
+ dt: {
17
+ fontSize: 'sm',
18
+ spaceX: 4
19
+ },
20
+ dd: {
21
+ fontSize: 'sm',
22
+ spaceX: 4
23
+ },
24
+ icon: {
25
+ size: 'sm',
26
+ mx: 0.5,
27
+ my: 'auto'
28
+ }
29
+ },
30
+ md: {
31
+ container: {
32
+ fontSize: 'md',
33
+ lineHeight: '30px'
34
+ },
35
+ dt: {
36
+ fontSize: 'md',
37
+ spaceX: 6
38
+ },
39
+ dd: {
40
+ fontSize: 'md',
41
+ spaceX: 6
42
+ },
43
+ icon: {
44
+ size: 'md',
45
+ mx: 0.5,
46
+ my: 'auto'
47
+ }
48
+ }
49
+ }
50
+
51
+ const variants = {
52
+ light: {
53
+ container: {
54
+ bg: 'white',
55
+ color: 'sandstone.20',
56
+ borderColor: 'transparent'
57
+ }
58
+ },
59
+ dark: {
60
+ container: {
61
+ bg: 'darkBlue.main',
62
+ color: 'white'
63
+ }
64
+ }
65
+ }
66
+
67
+ export default {
68
+ baseStyle,
69
+ defaultProps,
70
+ parts,
71
+ sizes,
72
+ variants
73
+ }
@@ -31,5 +31,3 @@ export const dialogStatusMapping: DialogStatusMapping = {
31
31
  export const containerId = 'vui-dynamic-container'
32
32
 
33
33
  export const modalClass = 'vui-modal'
34
-
35
- export const noScrollClass = 'vui-no-scroll'
@@ -5,10 +5,11 @@ import { ChildrenProp } from '../core'
5
5
  import { FocusLockProps } from './focusLock.types'
6
6
 
7
7
  /**
8
- * Traps the focus within the provided content. That is, tabbing with keyboard will
9
- * only cycle through the children and won't leave the boundary of the FocusLock.
10
- * This behavior enhances accessibility of the Modal component.
8
+ * Traps the focus within the provided content.
9
+ *
10
+ * Tabbing using the keyboard will only cycle through the children and won't leave the boundary of the FocusLock wrapper.
11
11
  */
12
+
12
13
  export const FocusLock: FC<FocusLockProps & ChildrenProp> = props => {
13
14
  const {
14
15
  autoFocus,
@@ -0,0 +1,3 @@
1
+ export * from './focusLock'
2
+ export { default } from './focusLock'
3
+ export * from './focusLock.types'
@@ -4,6 +4,7 @@ import { Box } from '../box'
4
4
  import { styled, useDown, useStyleConfig, vui, VuiComponent } from '../core'
5
5
  import { Divider } from '../divider'
6
6
  import { Link } from '../link'
7
+ import Menu from '../menu'
7
8
  import { T } from '../t'
8
9
  import { cs } from '../utils'
9
10
  import { FooterProvider } from './context'
@@ -97,7 +98,34 @@ export const Footer = vui<'div', FooterProps>((props, ref) => {
97
98
  >
98
99
  {applicationLinks?.map((link, index) => (
99
100
  <Box flex={{ xs: '0 0 50%', sm: '0 0 auto' }} key={index} minW={70}>
100
- <FooterLink {...link} />
101
+ {link.items && (
102
+ <Menu isLazy={false} offset={[-16, 9]} placement="top-start" size="lg" {...rest}>
103
+ <Menu.Button
104
+ as={Link}
105
+ className="vui-footerLink-trigger"
106
+ pt="3px"
107
+ text={link.text}
108
+ title={link.text}
109
+ {...styles.link}
110
+ {...rest}
111
+ />
112
+
113
+ <Menu.List maxH={400} right={0} w={320} {...styles.list}>
114
+ {link.items.map(({ text, url }, index) => (
115
+ <Menu.Item
116
+ isTruncated
117
+ key={index}
118
+ linkProps={{ href: url }}
119
+ text={text}
120
+ title={text}
121
+ {...styles.item}
122
+ />
123
+ ))}
124
+ </Menu.List>
125
+ </Menu>
126
+ )}
127
+
128
+ {!link.items && <FooterLink {...link} />}
101
129
  </Box>
102
130
  ))}
103
131
  </Box>
@@ -18,7 +18,8 @@ export type FooterLinkData = {
18
18
  /** Unique name that identifies a link in the links dictionary. */
19
19
  id?: string
20
20
  text: string
21
- url: string
21
+ url?: string
22
+ items?: FooterLinkData[]
22
23
  }
23
24
 
24
25
  export type FooterProps = Omit<BoxProps, 'size' | 'variant'> &
@@ -33,13 +33,17 @@ export const HeaderAccountUserInfo = vui<'div', HeaderAccountUserInfoProps>((pro
33
33
  )}
34
34
  <Box column rowGap={role ? 0 : 0.5}>
35
35
  {displayName && (
36
- <T fontSize={isApplication ? '12px' : 'inherit'} weight="demi">
36
+ <T fontSize={isApplication ? '12px' : 'inherit'} isTruncated pr={1} title={displayName} weight="demi">
37
37
  {displayName}
38
38
  </T>
39
39
  )}
40
- {companyName && <T fontSize={isApplication ? '12px' : 'inherit'}>{companyName}</T>}
40
+ {companyName && (
41
+ <T fontSize={isApplication ? '12px' : 'inherit'} isTruncated pr={1} title={companyName}>
42
+ {companyName}
43
+ </T>
44
+ )}
41
45
  {role && (
42
- <T color="sandstone.45" fontSize={isApplication ? '12px' : 'inherit'}>
46
+ <T color="sandstone.45" fontSize={isApplication ? '12px' : 'inherit'} isTruncated pr={1} title={role}>
43
47
  {role}
44
48
  </T>
45
49
  )}
@@ -34,12 +34,16 @@ export const HeaderLinkItem = vui<'li', HeaderLinkItemProps>((props, ref) => {
34
34
  const linkMobileProps = isMobile
35
35
  ? {
36
36
  color: 'darkBlue.main',
37
+ hoverColor: 'darkBlue.main',
37
38
  hoverBg: 'skyBlue.90',
39
+ activeColor: 'darkBlue.main',
40
+ activeBg: 'transparent',
38
41
  activeBorderColor: 'seaBlue.main',
39
- activeBorderLeftWidth: 3,
40
- pt: '0'
42
+ activeBorderLeftWidth: 0,
43
+ pt: '0',
44
+ activePl: isActive ? '13px' : '16px'
41
45
  }
42
- : { activeBorderBottomWidth: 4, pt: '0px', activePt: '4px' }
46
+ : { activeBorderBottomWidth: 0, pt: '0px', activePt: isActive ? '1px' : '0' }
43
47
 
44
48
  const itemScreenProps = isMobile ? {} : { display: 'inline-flex', fontWeight: 'medium', h: '100%' }
45
49
 
@@ -9,7 +9,7 @@ import { HeaderNotificationsProps } from './header.types'
9
9
  /*@formatter:off*/
10
10
  const Badge = styled.spanBox`
11
11
  align-items: center;
12
- background-color: energyRed.main;
12
+ background-color: energyRed.45;
13
13
  border-radius: round;
14
14
  color: white;
15
15
  display: flex;
@@ -20,7 +20,7 @@ const Badge = styled.spanBox`
20
20
  position: absolute;
21
21
  right: 1px;
22
22
  top: 1px;
23
- width: 20px;
23
+ min-width: 20px;
24
24
  `
25
25
  /*@formatter:on*/
26
26
 
@@ -49,7 +49,11 @@ export const HeaderNotifications = vui<'a', HeaderNotificationsProps>((props, re
49
49
  <>
50
50
  <Button.Icon name="falBell" />
51
51
 
52
- {count > 0 && <Badge>{count < 100 ? count : '99+'}</Badge>}
52
+ {count > 0 && (
53
+ <Badge px={count < 9 ? '0' : '4px'} right={count < 9 ? 1 : 0}>
54
+ {count < 100 ? count : '99+'}
55
+ </Badge>
56
+ )}
53
57
  </>
54
58
  )}
55
59
  </Button>
@@ -20,6 +20,7 @@ export const HeaderSignIn = vui<'button', HeaderSignInProps>((props, ref) => {
20
20
  className={cs('vui-headerSignIn', className)}
21
21
  href={url ?? links.signIn}
22
22
  ref={ref}
23
+ size="lg"
23
24
  variant={buttonVariant}
24
25
  {...styles.signIn}
25
26
  {...rest}
@@ -41,6 +41,7 @@ const variants = {
41
41
  activeBorderColor: 'darkBlue.main'
42
42
  },
43
43
  link: {
44
+ size: 'lg',
44
45
  color: 'darkBlue.main',
45
46
  borderColor: 'darkBlue.main',
46
47
  hoverColor: 'darkBlue.main',
@@ -108,6 +109,7 @@ const variants = {
108
109
  activeBorderColor: 'digiGreen.main'
109
110
  },
110
111
  link: {
112
+ size: 'lg',
111
113
  color: 'white',
112
114
  borderColor: 'digiGreen.main',
113
115
  hoverBg: 'seaBlue.25',
@@ -0,0 +1,9 @@
1
+ /* eslint-disable */
2
+
3
+ import { IconDefinition } from "../../types";
4
+
5
+ export default {
6
+ details: [64, 64, [], "", "M7 8C5.34315 8 4 9.34315 4 11V41C4 42.6569 5.34314 44 7 44H10V23C10 20.2386 12.2386 18 15 18H52V11C52 9.34315 50.6569 8 49 8H7ZM7 46H10V53C10 55.7614 12.2386 58 15 58H57C59.7614 58 62 55.7614 62 53V23C62 20.2386 59.7614 18 57 18H54V11C54 8.23858 51.7614 6 49 6H7C4.23858 6 2 8.23858 2 11V41C2 43.7614 4.23858 46 7 46ZM12 53V46V34H60V53C60 54.6569 58.6569 56 57 56H15C13.3431 56 12 54.6569 12 53ZM60 26V23C60 21.3431 58.6569 20 57 20H54H15C13.3431 20 12 21.3431 12 23V26H60ZM21 46C20.4477 46 20 46.4477 20 47C20 47.5523 20.4477 48 21 48H26C26.5523 48 27 47.5523 27 47C27 46.4477 26.5523 46 26 46H21ZM30 47C30 46.4477 30.4477 46 31 46H44C44.5523 46 45 46.4477 45 47C45 47.5523 44.5523 48 44 48H31C30.4477 48 30 47.5523 30 47Z"],
7
+ name: "conCard",
8
+ pathProps: { fillRule: "evenodd", clipRule: "evenodd" }
9
+ } as IconDefinition;
@@ -0,0 +1,8 @@
1
+ /* eslint-disable */
2
+
3
+ import { IconDefinition } from '../../types'
4
+
5
+ export default {
6
+ details: [64, 64, [], '', 'M59.4263 11.2699C59.036 9.71542 57.4927 8.74227 55.9217 9.06007L31.6293 13.9744L7.74635 9.06237C6.18953 8.74218 4.65317 9.69176 4.2434 11.2274L2.10183 19.2534C1.72138 20.6792 2.43437 22.17 3.78312 22.7687L19.8329 29.8941C21.1643 30.4852 22.728 30.0344 23.5404 28.8252L31.6346 16.7778L39.8352 28.7837C40.6816 30.0227 42.3133 30.4459 43.6552 29.7743L59.6397 21.7744C60.8978 21.1448 61.5493 19.7255 61.2067 18.3611L59.4263 11.2699ZM56.3183 11.0204C56.8419 10.9144 57.3564 11.2388 57.4865 11.757L59.2669 18.8481C59.3811 19.3029 59.1639 19.776 58.7446 19.9859L42.76 27.9858C42.3128 28.2097 41.7689 28.0686 41.4867 27.6556L33.3041 15.6761L56.3183 11.0204ZM6.17579 11.7431C6.31238 11.2312 6.82451 10.9146 7.34344 11.0214L29.9665 15.6743L21.8803 27.7099C21.6095 28.1129 21.0882 28.2632 20.6444 28.0662L4.59465 20.9408C4.14507 20.7412 3.90741 20.2443 4.03422 19.769L6.17579 11.7431ZM32.6277 24.6616C32.6277 24.1093 32.18 23.6616 31.6277 23.6616C31.0754 23.6616 30.6277 24.1093 30.6277 24.6616V52.3252L9.28119 46.0468C8.00444 45.6713 7.12769 44.4996 7.12769 43.1687V27.4775L5.12769 26.6354V43.1687C5.12769 45.3868 6.58894 47.3397 8.71685 47.9656L30.2169 54.2891C31.1379 54.56 32.1175 54.56 33.0385 54.2891L54.5385 47.9656C56.6664 47.3397 58.1277 45.3868 58.1277 43.1687V25.8459L56.1277 26.6881V43.1687C56.1277 44.4996 55.2509 45.6713 53.9742 46.0468L32.6277 52.3252V24.6616Z'],
7
+ name: 'conEmptyBox'
8
+ } as IconDefinition
@@ -1,4 +1,5 @@
1
1
  export { default as conAPI } from './conc/conAPI'
2
+ export { default as conCard } from './conc/conCard'
2
3
  export { default as conClock } from './conc/conClock'
3
4
  export { default as conSaveTimeAndMoney } from './conc/conSaveTimeAndMoney'
4
5
  export { default as conVesselConnect } from './conc/conVesselConnect'
@@ -9,6 +10,7 @@ export { default as conDatabasePlus } from './conc/conDatabasePlus'
9
10
  export { default as conDataSearchAlt } from './conc/conDataSearchAlt'
10
11
  export { default as conDataSearchPlus } from './conc/conDataSearchPlus'
11
12
  export { default as conDataset } from './conc/conDataset'
13
+ export { default as conEmptyBox } from './conc/conEmptyBox'
12
14
  export { default as conFolderPlus } from './conc/conFolderPlus'
13
15
  export { default as conInsightSearchAlt } from './conc/conInsightSearchAlt'
14
16
  export { default as conLNGBunkering } from './conc/conLNGBunkering'
@@ -1,5 +1,6 @@
1
1
  export type BaseIcon =
2
2
  | 'conAPI'
3
+ | 'conCard'
3
4
  | 'conClock'
4
5
  | 'conSaveTimeAndMoney'
5
6
  | 'conVesselConnect'
@@ -10,6 +11,7 @@ export type BaseIcon =
10
11
  | 'conDataSearchAlt'
11
12
  | 'conDataSearchPlus'
12
13
  | 'conDataset'
14
+ | 'conEmptyBox'
13
15
  | 'conFolderPlus'
14
16
  | 'conInsightSearchAlt'
15
17
  | 'conLNGBunkering'
package/src/index.ts CHANGED
@@ -10,9 +10,11 @@ export * from './card'
10
10
  export * from './checkbox'
11
11
  export * from './copyToClipboard'
12
12
  export * from './core'
13
+ export * from './definition'
13
14
  export * from './dialog'
14
15
  export * from './divider'
15
16
  export * from './dragAndDrop'
17
+ export * from './focusLock'
16
18
  export * from './footer'
17
19
  export * from './grid'
18
20
  export * from './header'
@@ -43,3 +43,10 @@ export const inputStateMapping: InputStateMapping = {
43
43
  }
44
44
  }
45
45
  }
46
+
47
+ export const displayValueOnlyTextSize = {
48
+ sm: 'xs',
49
+ md: 'sm',
50
+ lg: 'md',
51
+ xl: 'lg'
52
+ }