@veracity/vui 0.3.1 → 0.4.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 (438) hide show
  1. package/avatar/avatar.d.ts +2 -2
  2. package/avatar/avatar.js +9 -29
  3. package/avatar/avatar.types.d.ts +9 -2
  4. package/avatar/helpers.d.ts +2 -0
  5. package/avatar/helpers.js +26 -0
  6. package/avatar/index.d.ts +1 -1
  7. package/avatar/index.js +1 -1
  8. package/avatar/theme.d.ts +1 -0
  9. package/avatar/theme.js +7 -0
  10. package/box/box.d.ts +2 -2
  11. package/box/box.js +9 -8
  12. package/box/box.types.d.ts +13 -2
  13. package/box/index.d.ts +1 -1
  14. package/box/index.js +1 -1
  15. package/box/theme.d.ts +1 -0
  16. package/box/theme.js +2 -0
  17. package/button/button.d.ts +7 -3
  18. package/button/button.js +24 -14
  19. package/button/button.types.d.ts +16 -34
  20. package/button/buttonIcon.d.ts +1 -0
  21. package/button/buttonIcon.js +3 -5
  22. package/button/buttonText.d.ts +1 -0
  23. package/button/buttonText.js +3 -5
  24. package/button/buttons.js +1 -1
  25. package/button/consts.js +2 -2
  26. package/button/index.d.ts +2 -2
  27. package/button/index.js +3 -3
  28. package/button/theme.d.ts +1 -0
  29. package/button/theme.js +5 -3
  30. package/buttonGroup/buttonGroup.d.ts +5 -2
  31. package/buttonGroup/buttonGroup.js +12 -8
  32. package/buttonGroup/buttonGroup.types.d.ts +4 -2
  33. package/buttonGroup/helpers.d.ts +1 -1
  34. package/buttonGroup/helpers.js +1 -1
  35. package/buttonGroup/index.d.ts +1 -1
  36. package/buttonGroup/index.js +2 -2
  37. package/card/card.d.ts +4 -0
  38. package/card/card.js +8 -0
  39. package/card/card.types.d.ts +3 -2
  40. package/card/index.d.ts +1 -1
  41. package/card/index.js +1 -1
  42. package/card/theme.d.ts +1 -0
  43. package/card/theme.js +2 -0
  44. package/checkbox/checkbox.d.ts +5 -4
  45. package/checkbox/checkbox.js +20 -10
  46. package/checkbox/checkbox.types.d.ts +21 -4
  47. package/checkbox/checkboxGroup.d.ts +5 -2
  48. package/checkbox/checkboxGroup.js +11 -7
  49. package/checkbox/checkboxGroup.types.d.ts +9 -2
  50. package/checkbox/index.d.ts +1 -1
  51. package/checkbox/index.js +2 -2
  52. package/checkbox/theme.d.ts +1 -0
  53. package/checkbox/theme.js +2 -0
  54. package/core/index.d.ts +4 -5
  55. package/core/index.js +4 -12
  56. package/core/media.d.ts +38 -0
  57. package/core/media.js +79 -0
  58. package/core/styled.d.ts +3 -0
  59. package/core/styled.js +21 -3
  60. package/core/theme.d.ts +41 -0
  61. package/core/theme.js +94 -0
  62. package/core/vui.d.ts +31 -0
  63. package/core/vui.js +20 -0
  64. package/core/vuiProvider/fontFaces.js +4 -0
  65. package/core/{globalStyle.d.ts → vuiProvider/globalStyle.d.ts} +7 -0
  66. package/core/{globalStyle.js → vuiProvider/globalStyle.js} +17 -9
  67. package/core/vuiProvider/index.d.ts +5 -0
  68. package/core/vuiProvider/index.js +26 -0
  69. package/core/{resetCSS.d.ts → vuiProvider/resetCSS.d.ts} +1 -0
  70. package/core/{resetCSS.js → vuiProvider/resetCSS.js} +2 -1
  71. package/core/vuiProvider/vuiProvider.d.ts +13 -0
  72. package/core/{vuiProvider.js → vuiProvider/vuiProvider.js} +3 -2
  73. package/divider/divider.d.ts +2 -2
  74. package/divider/divider.js +5 -4
  75. package/divider/divider.types.d.ts +5 -2
  76. package/divider/index.d.ts +1 -1
  77. package/divider/index.js +1 -1
  78. package/divider/theme.d.ts +1 -0
  79. package/divider/theme.js +2 -0
  80. package/footer/consts.d.ts +108 -8
  81. package/footer/consts.js +21 -9
  82. package/footer/footer.d.ts +3 -1
  83. package/footer/footer.js +21 -10
  84. package/footer/footer.types.d.ts +5 -0
  85. package/footer/footerColumn.d.ts +122 -121
  86. package/footer/footerColumn.js +1 -0
  87. package/footer/footerHeading.d.ts +1 -0
  88. package/footer/footerHeading.js +1 -0
  89. package/footer/footerLink.d.ts +1 -0
  90. package/footer/footerLink.js +1 -0
  91. package/footer/footerRow.d.ts +1 -0
  92. package/footer/footerRow.js +1 -0
  93. package/footer/footerSection.d.ts +1 -0
  94. package/footer/footerSection.js +2 -1
  95. package/footer/footerTrademark.d.ts +1 -0
  96. package/footer/footerTrademark.js +1 -0
  97. package/footer/helpers.d.ts +2 -3
  98. package/footer/helpers.js +16 -16
  99. package/footer/index.d.ts +2 -1
  100. package/footer/index.js +2 -2
  101. package/footer/theme.d.ts +1 -0
  102. package/footer/theme.js +2 -0
  103. package/header/consts.d.ts +58 -0
  104. package/header/consts.js +76 -0
  105. package/header/context.d.ts +4 -0
  106. package/header/context.js +23 -0
  107. package/header/header.d.ts +34 -0
  108. package/header/header.js +133 -0
  109. package/header/header.types.d.ts +103 -0
  110. package/header/headerAccount.d.ts +4 -0
  111. package/header/headerAccount.js +109 -0
  112. package/header/headerAccount.types.d.ts +35 -0
  113. package/header/headerContent.d.ts +4 -0
  114. package/header/headerContent.js +28 -0
  115. package/header/headerCreateAccount.d.ts +4 -0
  116. package/header/headerCreateAccount.js +47 -0
  117. package/header/headerDivider.d.ts +4 -0
  118. package/header/headerDivider.js +28 -0
  119. package/header/headerLinkItem.d.ts +4 -0
  120. package/header/headerLinkItem.js +53 -0
  121. package/header/headerLinksList.d.ts +4 -0
  122. package/header/headerLinksList.js +44 -0
  123. package/header/headerLogo.d.ts +4 -0
  124. package/header/headerLogo.js +44 -0
  125. package/header/headerMobileContent.d.ts +4 -0
  126. package/header/headerMobileContent.js +31 -0
  127. package/header/headerMobileToggle.d.ts +4 -0
  128. package/header/headerMobileToggle.js +33 -0
  129. package/header/headerNotifications.d.ts +4 -0
  130. package/header/headerNotifications.js +51 -0
  131. package/header/headerServices.d.ts +4 -0
  132. package/header/headerServices.js +55 -0
  133. package/header/headerSignIn.d.ts +4 -0
  134. package/header/headerSignIn.js +40 -0
  135. package/header/helpers.d.ts +17 -0
  136. package/header/helpers.js +66 -0
  137. package/header/index.d.ts +21 -0
  138. package/header/index.js +38 -0
  139. package/header/loggedInHeader.d.ts +4 -0
  140. package/header/loggedInHeader.js +57 -0
  141. package/header/loggedOutHeader.d.ts +4 -0
  142. package/header/loggedOutHeader.js +57 -0
  143. package/header/theme.d.ts +85 -0
  144. package/header/theme.js +89 -0
  145. package/heading/heading.d.ts +2 -2
  146. package/heading/heading.js +5 -4
  147. package/heading/heading.types.d.ts +7 -2
  148. package/heading/headings.js +1 -1
  149. package/heading/index.d.ts +1 -1
  150. package/heading/index.js +2 -2
  151. package/heading/theme.d.ts +1 -0
  152. package/heading/theme.js +2 -0
  153. package/icon/helpers.js +2 -2
  154. package/icon/icon.d.ts +1 -0
  155. package/icon/icon.js +2 -2
  156. package/icon/icon.types.d.ts +7 -4
  157. package/icon/index.d.ts +1 -1
  158. package/icon/index.js +1 -1
  159. package/icon/theme.d.ts +1 -0
  160. package/icon/theme.js +2 -0
  161. package/icons/baseIcons/fal/falFileInvoiceDollar.d.ts +3 -0
  162. package/icons/baseIcons/fal/falFileInvoiceDollar.js +7 -0
  163. package/icons/baseIcons/fas/fasCalendarAlt.js +1 -1
  164. package/icons/baseIcons/icons.d.ts +1 -0
  165. package/icons/baseIcons/icons.js +5 -3
  166. package/icons/baseIcons/types.d.ts +1 -1
  167. package/icons/cache.d.ts +15 -0
  168. package/icons/{library.js → cache.js} +10 -6
  169. package/icons/index.d.ts +1 -1
  170. package/icons/index.js +3 -3
  171. package/icons/types.d.ts +10 -3
  172. package/image/image.d.ts +2 -0
  173. package/image/image.js +11 -2
  174. package/image/image.types.d.ts +3 -2
  175. package/image/index.d.ts +1 -1
  176. package/image/index.js +1 -1
  177. package/image/theme.d.ts +1 -0
  178. package/image/theme.js +2 -0
  179. package/index.d.ts +3 -1
  180. package/index.js +3 -1
  181. package/input/consts.js +2 -2
  182. package/input/helpers.d.ts +1 -0
  183. package/input/helpers.js +1 -0
  184. package/input/index.d.ts +1 -1
  185. package/input/index.js +2 -2
  186. package/input/input.d.ts +7 -3
  187. package/input/input.js +17 -7
  188. package/input/input.types.d.ts +36 -7
  189. package/input/inputIcon.d.ts +1 -0
  190. package/input/inputIcon.js +2 -1
  191. package/input/inputInput.d.ts +2 -2
  192. package/input/inputInput.js +10 -5
  193. package/input/theme.d.ts +1 -0
  194. package/input/theme.js +2 -0
  195. package/link/index.d.ts +1 -1
  196. package/link/index.js +2 -2
  197. package/link/link.d.ts +6 -3
  198. package/link/link.js +15 -9
  199. package/link/link.types.d.ts +15 -7
  200. package/link/linkIcon.d.ts +1 -0
  201. package/link/linkIcon.js +3 -5
  202. package/link/linkText.d.ts +1 -0
  203. package/link/linkText.js +3 -5
  204. package/link/theme.d.ts +6 -0
  205. package/link/theme.js +9 -1
  206. package/list/index.d.ts +1 -1
  207. package/list/index.js +2 -2
  208. package/list/list.d.ts +3 -3
  209. package/list/list.js +13 -8
  210. package/list/list.types.d.ts +29 -8
  211. package/list/listDivider.d.ts +1 -0
  212. package/list/listDivider.js +3 -5
  213. package/list/listHeading.d.ts +1 -0
  214. package/list/listHeading.js +4 -6
  215. package/list/listIcon.d.ts +1 -0
  216. package/list/listIcon.js +3 -5
  217. package/list/listItem.d.ts +5 -2
  218. package/list/listItem.js +52 -19
  219. package/list/listText.d.ts +1 -0
  220. package/list/listText.js +3 -5
  221. package/list/theme.d.ts +1 -0
  222. package/list/theme.js +5 -2
  223. package/menu/menu.d.ts +1 -0
  224. package/menu/menu.js +1 -0
  225. package/menu/menu.types.d.ts +3 -0
  226. package/menu/menuButton.d.ts +1 -0
  227. package/menu/menuButton.js +3 -4
  228. package/menu/menuItem.d.ts +1 -0
  229. package/menu/menuItem.js +9 -23
  230. package/menu/menuList.d.ts +1 -0
  231. package/menu/menuList.js +3 -4
  232. package/menu/theme.d.ts +16 -2
  233. package/menu/theme.js +18 -3
  234. package/modal/context.d.ts +4 -0
  235. package/modal/context.js +23 -0
  236. package/modal/focusLock.d.ts +9 -0
  237. package/modal/focusLock.js +47 -0
  238. package/modal/focusLock.types.d.ts +28 -0
  239. package/modal/focusLock.types.js +2 -0
  240. package/modal/index.d.ts +7 -0
  241. package/modal/index.js +24 -0
  242. package/modal/modal.d.ts +10 -0
  243. package/modal/modal.js +109 -0
  244. package/modal/modal.types.d.ts +40 -0
  245. package/modal/modal.types.js +2 -0
  246. package/modal/modalBackdrop.d.ts +4 -0
  247. package/modal/modalBackdrop.js +38 -0
  248. package/modal/modalManager.d.ts +12 -0
  249. package/modal/modalManager.js +33 -0
  250. package/modal/theme.d.ts +7 -0
  251. package/modal/theme.js +12 -0
  252. package/notification/consts.js +2 -2
  253. package/notification/index.d.ts +2 -2
  254. package/notification/index.js +3 -3
  255. package/notification/notification.d.ts +5 -1
  256. package/notification/notification.js +12 -27
  257. package/notification/notification.types.d.ts +11 -4
  258. package/notification/notificationButton.d.ts +1 -0
  259. package/notification/notificationButton.js +4 -5
  260. package/notification/notificationIcon.d.ts +1 -0
  261. package/notification/notificationIcon.js +7 -7
  262. package/notification/notificationText.d.ts +1 -0
  263. package/notification/notificationText.js +3 -5
  264. package/notification/notificationTitle.d.ts +1 -0
  265. package/notification/notificationTitle.js +3 -5
  266. package/notification/theme.d.ts +1 -0
  267. package/notification/theme.js +2 -0
  268. package/p/index.d.ts +1 -1
  269. package/p/index.js +1 -1
  270. package/p/p.d.ts +2 -2
  271. package/p/p.js +5 -4
  272. package/p/p.types.d.ts +7 -2
  273. package/p/theme.d.ts +1 -0
  274. package/p/theme.js +2 -0
  275. package/package.json +3 -1
  276. package/panel/index.d.ts +1 -1
  277. package/panel/index.js +1 -1
  278. package/panel/panel.d.ts +4 -0
  279. package/panel/panel.js +4 -0
  280. package/panel/panel.types.d.ts +1 -2
  281. package/panel/theme.d.ts +1 -0
  282. package/panel/theme.js +2 -0
  283. package/popover/consts.d.ts +6 -0
  284. package/popover/consts.js +42 -0
  285. package/popover/index.d.ts +1 -1
  286. package/popover/index.js +1 -1
  287. package/popover/popover.d.ts +6 -2
  288. package/popover/popover.js +20 -4
  289. package/popover/popover.types.d.ts +4 -1
  290. package/popover/popoverContent.d.ts +2 -1
  291. package/popover/popoverContent.js +6 -1
  292. package/popover/popoverTrigger.d.ts +4 -0
  293. package/popover/popoverTrigger.js +4 -0
  294. package/popover/theme.d.ts +1 -0
  295. package/popover/theme.js +2 -0
  296. package/popover/usePopover.d.ts +5 -0
  297. package/popover/usePopover.js +26 -18
  298. package/popover/usePopover.types.d.ts +17 -6
  299. package/portal/index.d.ts +3 -0
  300. package/{styles → portal}/index.js +5 -5
  301. package/portal/portal.d.ts +5 -0
  302. package/portal/portal.js +56 -0
  303. package/portal/portal.types.d.ts +7 -0
  304. package/portal/portal.types.js +2 -0
  305. package/radio/index.d.ts +1 -1
  306. package/radio/index.js +2 -2
  307. package/radio/radio.d.ts +5 -4
  308. package/radio/radio.js +20 -10
  309. package/radio/radio.types.d.ts +19 -4
  310. package/radio/radioGroup.d.ts +5 -2
  311. package/radio/radioGroup.js +11 -7
  312. package/radio/radioGroup.types.d.ts +10 -2
  313. package/radio/theme.d.ts +1 -0
  314. package/radio/theme.js +2 -0
  315. package/skeleton/index.d.ts +1 -1
  316. package/skeleton/index.js +1 -1
  317. package/skeleton/skeleton.d.ts +2 -2
  318. package/skeleton/skeleton.js +4 -3
  319. package/skeleton/skeleton.types.d.ts +5 -2
  320. package/skeleton/theme.d.ts +1 -0
  321. package/skeleton/theme.js +2 -0
  322. package/spinner/index.d.ts +1 -1
  323. package/spinner/index.js +1 -1
  324. package/spinner/spinner.d.ts +6 -2
  325. package/spinner/spinner.js +12 -5
  326. package/spinner/spinner.types.d.ts +10 -6
  327. package/spinner/theme.d.ts +1 -0
  328. package/spinner/theme.js +2 -0
  329. package/svg/helpers.d.ts +1 -1
  330. package/svg/index.d.ts +1 -1
  331. package/svg/index.js +1 -1
  332. package/svg/svg.d.ts +6 -1
  333. package/svg/svg.js +16 -5
  334. package/svg/svg.types.d.ts +7 -5
  335. package/switch/context.d.ts +2 -2
  336. package/switch/index.d.ts +1 -1
  337. package/switch/index.js +2 -2
  338. package/switch/switch.d.ts +6 -3
  339. package/switch/switch.js +15 -12
  340. package/switch/switch.types.d.ts +37 -4
  341. package/switch/switchButton.d.ts +5 -5
  342. package/switch/switchButton.js +34 -26
  343. package/switch/switchLabel.d.ts +1 -0
  344. package/switch/switchLabel.js +3 -5
  345. package/switch/theme.d.ts +1 -0
  346. package/switch/theme.js +2 -0
  347. package/system/animations.d.ts +3 -4
  348. package/system/backgrounds.d.ts +4 -5
  349. package/system/borders.d.ts +60 -61
  350. package/system/custom.d.ts +4 -4
  351. package/system/effects.d.ts +7 -8
  352. package/system/flexboxGrids.d.ts +5 -6
  353. package/system/flexboxes.d.ts +28 -29
  354. package/system/grids.d.ts +25 -26
  355. package/system/index.d.ts +0 -1
  356. package/system/index.js +0 -6
  357. package/system/interactivity.d.ts +11 -12
  358. package/system/layout.d.ts +31 -32
  359. package/system/sizing.d.ts +13 -14
  360. package/system/space.d.ts +37 -38
  361. package/system/system.d.ts +4 -5
  362. package/system/system.js +3 -1
  363. package/system/tables.d.ts +5 -6
  364. package/system/transforms.d.ts +22 -23
  365. package/system/transitions.d.ts +11 -12
  366. package/system/typography.d.ts +33 -34
  367. package/t/index.d.ts +1 -1
  368. package/t/index.js +1 -1
  369. package/t/t.d.ts +2 -2
  370. package/t/t.js +5 -4
  371. package/t/t.types.d.ts +8 -2
  372. package/t/theme.d.ts +1 -0
  373. package/t/theme.js +2 -0
  374. package/tag/index.d.ts +1 -1
  375. package/tag/index.js +2 -2
  376. package/tag/tag.d.ts +6 -3
  377. package/tag/tag.js +14 -7
  378. package/tag/tag.types.d.ts +19 -6
  379. package/tag/tagButton.d.ts +1 -0
  380. package/tag/tagButton.js +4 -16
  381. package/tag/tagIcon.d.ts +1 -0
  382. package/tag/tagIcon.js +3 -5
  383. package/tag/tagText.d.ts +1 -0
  384. package/tag/tagText.js +3 -5
  385. package/tag/theme.d.ts +1 -0
  386. package/tag/theme.js +8 -0
  387. package/textarea/helpers.d.ts +1 -0
  388. package/textarea/helpers.js +1 -0
  389. package/textarea/index.d.ts +1 -1
  390. package/textarea/index.js +1 -1
  391. package/textarea/textarea.d.ts +5 -3
  392. package/textarea/textarea.js +23 -10
  393. package/textarea/textarea.types.d.ts +22 -2
  394. package/textarea/theme.d.ts +1 -0
  395. package/textarea/theme.js +2 -0
  396. package/theme/components.d.ts +129 -2
  397. package/theme/components.js +38 -36
  398. package/theme/defaultTheme.d.ts +134 -2
  399. package/theme/foundations/colors.d.ts +10 -0
  400. package/theme/foundations/colors.js +8 -2
  401. package/theme/foundations/index.d.ts +5 -0
  402. package/theme/foundations/shadows.js +3 -3
  403. package/theme/foundations/transformers.js +3 -2
  404. package/theme/index.d.ts +1 -3
  405. package/theme/index.js +4 -5
  406. package/theme/types.d.ts +3 -2
  407. package/utils/assertion.d.ts +5 -5
  408. package/utils/assertion.js +8 -4
  409. package/utils/index.d.ts +1 -0
  410. package/utils/index.js +1 -0
  411. package/utils/object.d.ts +2 -2
  412. package/utils/object.js +3 -1
  413. package/utils/react.d.ts +10 -5
  414. package/utils/react.js +64 -9
  415. package/utils/string.d.ts +5 -0
  416. package/utils/string.js +19 -0
  417. package/utils/styles.d.ts +2 -2
  418. package/utils/styles.js +4 -4
  419. package/utils/types.d.ts +11 -4
  420. package/core/types/component.d.ts +0 -25
  421. package/core/types/index.d.ts +0 -2
  422. package/core/types/index.js +0 -14
  423. package/core/types/themeGet.d.ts +0 -24
  424. package/core/utils.d.ts +0 -56
  425. package/core/utils.js +0 -194
  426. package/core/vuiProvider.d.ts +0 -20
  427. package/icons/library.d.ts +0 -11
  428. package/popover/plugins.d.ts +0 -3
  429. package/popover/plugins.js +0 -24
  430. package/styles/fontFaces.js +0 -4
  431. package/styles/helpers.d.ts +0 -4
  432. package/styles/helpers.js +0 -8
  433. package/styles/index.d.ts +0 -3
  434. /package/{styles → core/vuiProvider}/animations.d.ts +0 -0
  435. /package/{styles → core/vuiProvider}/animations.js +0 -0
  436. /package/{styles → core/vuiProvider}/fontFaces.d.ts +0 -0
  437. /package/{core/types/component.js → header/header.types.js} +0 -0
  438. /package/{core/types/themeGet.js → header/headerAccount.types.js} +0 -0
@@ -31,14 +31,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
31
31
  Object.defineProperty(exports, "__esModule", { value: true });
32
32
  exports.Spinner = exports.SpinnerCircle = void 0;
33
33
  var react_1 = __importDefault(require("react"));
34
- var styled_components_1 = __importDefault(require("styled-components"));
35
- var consts_1 = require("./consts");
36
34
  var box_1 = __importDefault(require("../box"));
37
35
  var core_1 = require("../core");
38
- var system_1 = require("../system");
39
36
  var t_1 = __importDefault(require("../t"));
40
37
  var utils_1 = require("../utils");
41
- exports.SpinnerCircle = styled_components_1.default.div.withConfig((0, core_1.forwardPropConfig)(system_1.system))(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n\tdisplay: flex;\n\tflex-shrink: 0;\n\n\t", "\n\n\tanimation-duration: ", ";\n"], ["\n\tdisplay: flex;\n\tflex-shrink: 0;\n\n\t", "\n\n\tanimation-duration: ", ";\n"])), system_1.system, function (p) { return p.speed; });
38
+ var consts_1 = require("./consts");
39
+ exports.SpinnerCircle = core_1.styled.divBox(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n\tborder-radius: round;\n\tdisplay: flex;\n\tflex-shrink: 0;\n"], ["\n\tborder-radius: round;\n\tdisplay: flex;\n\tflex-shrink: 0;\n"
40
+ /**
41
+ * Displays a spinning circular element with optional text to signify loading content.
42
+ * Handles different positioning scenarios, speeds and coloring of the circle.
43
+ */
44
+ ])));
45
+ /**
46
+ * Displays a spinning circular element with optional text to signify loading content.
47
+ * Handles different positioning scenarios, speeds and coloring of the circle.
48
+ */
42
49
  exports.Spinner = (0, core_1.vui)(function (props, ref) {
43
50
  var _a;
44
51
  var className = props.className, emptyColor = props.emptyColor, size = props.size, _b = props.speed, speedProp = _b === void 0 ? 'normal' : _b, text = props.text, _c = props.textPosition, textPosition = _c === void 0 ? 'bottom' : _c, thickness = props.thickness, rest = __rest(props, ["className", "emptyColor", "size", "speed", "text", "textPosition", "thickness"]);
@@ -53,7 +60,7 @@ exports.Spinner = (0, core_1.vui)(function (props, ref) {
53
60
  w: isCustomSize ? size : undefined
54
61
  });
55
62
  return (react_1.default.createElement(box_1.default, __assign({ center: true, className: (0, utils_1.cs)('vui-spinner', className), ref: ref, transitionDuration: "fast" }, styles.container, positionProps.container, rest),
56
- react_1.default.createElement(exports.SpinnerCircle, __assign({ animation: "spin", borderRadius: "round", className: "vui-spinnerCircle", speed: speed }, styles.circle, positionProps.circle, circleProps)),
63
+ react_1.default.createElement(exports.SpinnerCircle, __assign({ animation: "vui-spin " + speed + " linear infinite", className: "vui-spinnerCircle" }, styles.circle, positionProps.circle, circleProps)),
57
64
  text && (react_1.default.createElement(t_1.default, __assign({ className: "vui-spinnerText" }, styles.text), text))));
58
65
  });
59
66
  exports.Spinner.displayName = 'Spinner';
@@ -1,16 +1,20 @@
1
1
  import { BoxProps } from '../box';
2
- import { SystemProps } from '../system';
3
2
  import { ThemingProps } from '../theme';
4
- export interface SpinnerCircleStyleProps extends SystemProps {
5
- speed?: string;
6
- }
7
- export interface SpinnerProps extends Omit<BoxProps, 'size' | 'variant'>, Omit<ThemingProps<'Spinner'>, 'size'> {
3
+ export declare type SpinnerProps = Omit<BoxProps, 'size' | 'variant'> & Omit<ThemingProps<'Spinner'>, 'size'> & {
4
+ /** Children are disabled for this component. */
8
5
  children?: never;
6
+ /** Available theme colors for this component. @default blue */
9
7
  colorScheme?: 'blue' | 'grey' | 'prussian';
8
+ /** Color of the 'empty' part of the circle. */
10
9
  emptyColor?: string;
10
+ /** Amount of time needed to make a full rotation. */
11
11
  speed?: string;
12
+ /** Theme size or a number defining height and width. */
12
13
  size?: ThemingProps<'Spinner'>['size'] | number;
14
+ /** Displays given text next to the spinner. */
13
15
  text?: string;
16
+ /** Text placement relative to the spinner. */
14
17
  textPosition?: 'bottom' | 'left' | 'right' | 'top';
18
+ /** Thickness of the spinner circle in pixels. */
15
19
  thickness?: number;
16
- }
20
+ };
@@ -10,6 +10,7 @@ declare function variantDefault(props: Dict): {
10
10
  text: {};
11
11
  };
12
12
  declare const _default: {
13
+ baseStyle: {};
13
14
  defaultProps: {
14
15
  colorScheme: string;
15
16
  size: string;
package/spinner/theme.js CHANGED
@@ -12,6 +12,7 @@ function variantDefault(props) {
12
12
  var text = {};
13
13
  return { container: container, circle: circle, text: text };
14
14
  }
15
+ var baseStyle = {};
15
16
  var defaultProps = {
16
17
  colorScheme: 'blue',
17
18
  size: 'page',
@@ -66,6 +67,7 @@ var variants = {
66
67
  default: variantDefault
67
68
  };
68
69
  exports.default = {
70
+ baseStyle: baseStyle,
69
71
  defaultProps: defaultProps,
70
72
  parts: parts,
71
73
  sizes: sizes,
package/svg/helpers.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { SvgState } from './svg.types';
2
1
  import { Dict } from '../utils';
2
+ import { SvgState } from './svg.types';
3
3
  /** Returns an object with given element's HTML attributes. */
4
4
  export declare function getAttributes(element?: Element): Dict<string>;
5
5
  /** Returns content of the SVG HTML string by stripping the svg tag. */
package/svg/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  export * from './svg';
2
- export * from './svg.types';
3
2
  export { default } from './svg';
3
+ export * from './svg.types';
package/svg/index.js CHANGED
@@ -15,6 +15,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.default = void 0;
17
17
  __exportStar(require("./svg"), exports);
18
- __exportStar(require("./svg.types"), exports);
19
18
  var svg_1 = require("./svg");
20
19
  Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(svg_1).default; } });
20
+ __exportStar(require("./svg.types"), exports);
package/svg/svg.d.ts CHANGED
@@ -1,5 +1,10 @@
1
- import { SvgProps } from './svg.types';
2
1
  import { VuiComponent } from '../core';
2
+ import { SvgProps } from './svg.types';
3
3
  export declare const SvgBase: VuiComponent<'svg', SvgProps>;
4
+ /**
5
+ * Displays an svg element based on provided children or 'src' prop.
6
+ * When using src, it loads the content from the given URL and saves in in cache.
7
+ * Then, renders the svg by parsing loaded content (Review potential for XSS due to innerHTML).
8
+ */
4
9
  export declare const Svg: VuiComponent<"svg", SvgProps>;
5
10
  export default Svg;
package/svg/svg.js CHANGED
@@ -102,13 +102,24 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
102
102
  Object.defineProperty(exports, "__esModule", { value: true });
103
103
  exports.Svg = exports.SvgBase = void 0;
104
104
  var react_1 = __importStar(require("react"));
105
- var styled_components_1 = __importDefault(require("styled-components"));
106
- var cache_1 = __importDefault(require("./cache"));
107
- var helpers_1 = require("./helpers");
108
105
  var core_1 = require("../core");
109
- var system_1 = require("../system");
110
106
  var utils_1 = require("../utils");
111
- exports.SvgBase = styled_components_1.default.svg.withConfig((0, core_1.forwardPropConfig)(system_1.system))(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n\t& > path:nth-child(1) {\n\t\tfill: ", ";\n\t}\n\n\t& > path:nth-child(2) {\n\t\tfill: ", ";\n\t}\n\n\t", "\n"], ["\n\t& > path:nth-child(1) {\n\t\tfill: ", ";\n\t}\n\n\t& > path:nth-child(2) {\n\t\tfill: ", ";\n\t}\n\n\t", "\n"])), function (p) { var _a, _b, _c; return core_1.th.color((_c = (_b = (_a = p.fill) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : p.fill) !== null && _c !== void 0 ? _c : '')(p); }, function (p) { var _a, _b, _c; return core_1.th.color((_c = (_b = (_a = p.fill) === null || _a === void 0 ? void 0 : _a[1]) !== null && _b !== void 0 ? _b : p.fill) !== null && _c !== void 0 ? _c : '')(p); }, system_1.system);
107
+ var cache_1 = __importDefault(require("./cache"));
108
+ var helpers_1 = require("./helpers");
109
+ exports.SvgBase = core_1.styled.svgBox(function (_a) {
110
+ var pathFill = _a.pathFill;
111
+ return (0, core_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n\t\t", "\n\t"], ["\n\t\t", "\n\t"])), pathFill !== undefined &&
112
+ (Array.isArray(pathFill)
113
+ ? pathFill
114
+ .map(function (fill, index) { return "\n\t\t\t\t\t& > path:nth-child(" + (index + 1) + ") {\n\t\t\t\t\t\tfill: " + fill + ";\n\t\t\t\t\t}\n\t\t\t\t"; })
115
+ .join()
116
+ : "\n\t\t\t\t& > path {\n\t\t\t\t\tfill: " + pathFill + ";\n\t\t\t\t}\n\t\t\t"));
117
+ });
118
+ /**
119
+ * Displays an svg element based on provided children or 'src' prop.
120
+ * When using src, it loads the content from the given URL and saves in in cache.
121
+ * Then, renders the svg by parsing loaded content (Review potential for XSS due to innerHTML).
122
+ */
112
123
  exports.Svg = (0, core_1.vui)(function (props, ref) {
113
124
  var children = props.children, className = props.className, src = props.src, rest = __rest(props, ["children", "className", "src"]);
114
125
  var _a = __read((0, react_1.useState)((0, helpers_1.initState)()), 2), state = _a[0], setState = _a[1];
@@ -1,10 +1,12 @@
1
1
  import { ColorGetter, SystemProps } from '../system';
2
2
  import { Dict } from '../utils';
3
- export interface SvgProps extends SystemProps {
4
- fill?: ColorGetter | ColorGetter[];
3
+ export declare type SvgProps = SystemProps & {
4
+ /** If string, adds fill color to all paths. If array, adds fill color to consecutive path elements. */
5
+ pathFill?: ColorGetter | ColorGetter[];
6
+ /** If provided, loads an svg file from this URL and displays parsed content. */
5
7
  src?: string;
6
- }
7
- export interface SvgState {
8
+ };
9
+ export declare type SvgState = {
8
10
  content?: string;
9
11
  svgAttributes: Dict<string>;
10
- }
12
+ };
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
- import { Dict } from '../utils';
3
- declare const SwitchProvider: import("react").Provider<Dict<any>>, useSwitch: () => Dict<any>;
2
+ import { SwitchContext } from './switch.types';
3
+ declare const SwitchProvider: import("react").Provider<SwitchContext>, useSwitch: () => SwitchContext;
4
4
  export { SwitchProvider, useSwitch };
package/switch/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export * from './context';
2
+ export { default } from './switch';
2
3
  export * from './switch';
3
4
  export * from './switch.types';
4
5
  export * from './switchButton';
5
6
  export * from './switchLabel';
6
- export { default } from './switch';
package/switch/index.js CHANGED
@@ -15,9 +15,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.default = void 0;
17
17
  __exportStar(require("./context"), exports);
18
+ var switch_1 = require("./switch");
19
+ Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(switch_1).default; } });
18
20
  __exportStar(require("./switch"), exports);
19
21
  __exportStar(require("./switch.types"), exports);
20
22
  __exportStar(require("./switchButton"), exports);
21
23
  __exportStar(require("./switchLabel"), exports);
22
- var switch_1 = require("./switch");
23
- Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(switch_1).default; } });
@@ -1,9 +1,12 @@
1
+ import { VuiComponent } from '../core';
1
2
  import { SwitchProps } from './switch.types';
2
3
  import { SwitchButton } from './switchButton';
3
4
  import { SwitchLabel } from './switchLabel';
4
- import { VuiComponent } from '../core';
5
- import { SystemProps } from '../system';
6
- export declare const SwitchBase: import("styled-components").StyledComponent<"label", import("styled-components").DefaultTheme, SystemProps, never>;
5
+ export declare const SwitchBase: import("styled-components").StyledComponent<"label", import("styled-components").DefaultTheme, import("..").SystemProps, never>;
6
+ /**
7
+ * Displays a toggle button with supporting text. Allows passing custom elements as side labels and inner labels.
8
+ * Forwards many relevant props to the innner input element. Exposes some props to the children via context.
9
+ */
7
10
  export declare const Switch: VuiComponent<"label", SwitchProps> & {
8
11
  Button: typeof SwitchButton;
9
12
  Label: typeof SwitchLabel;
package/switch/switch.js CHANGED
@@ -44,24 +44,27 @@ var __rest = (this && this.__rest) || function (s, e) {
44
44
  }
45
45
  return t;
46
46
  };
47
- var __importDefault = (this && this.__importDefault) || function (mod) {
48
- return (mod && mod.__esModule) ? mod : { "default": mod };
49
- };
50
47
  Object.defineProperty(exports, "__esModule", { value: true });
51
48
  exports.Switch = exports.SwitchBase = void 0;
52
49
  var react_1 = __importStar(require("react"));
53
- var styled_components_1 = __importDefault(require("styled-components"));
50
+ var core_1 = require("../core");
51
+ var utils_1 = require("../utils");
54
52
  var context_1 = require("./context");
55
53
  var switchButton_1 = require("./switchButton");
56
54
  var switchLabel_1 = require("./switchLabel");
57
- var core_1 = require("../core");
58
- var system_1 = require("../system");
59
- var t_1 = require("../t");
60
- var utils_1 = require("../utils");
61
- exports.SwitchBase = styled_components_1.default.label.withConfig((0, core_1.forwardPropConfig)(system_1.system))(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n\talign-items: center;\n\tcursor: pointer;\n\tdisplay: inline-flex;\n\tline-height: normal;\n\twidth: fit-content;\n\n\t&[data-disabled='true'] {\n\t\tcursor: not-allowed;\n\n\t\t", " {\n\t\t\tcolor: var(--vui-colors-disabled-font);\n\t\t}\n\t}\n\n\t", "\n"], ["\n\talign-items: center;\n\tcursor: pointer;\n\tdisplay: inline-flex;\n\tline-height: normal;\n\twidth: fit-content;\n\n\t&[data-disabled='true'] {\n\t\tcursor: not-allowed;\n\n\t\t", " {\n\t\t\tcolor: var(--vui-colors-disabled-font);\n\t\t}\n\t}\n\n\t", "\n"])), t_1.TBase, system_1.system);
55
+ exports.SwitchBase = core_1.styled.labelBox(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n\talign-items: center;\n\tcursor: pointer;\n\tdisplay: inline-flex;\n\tline-height: normal;\n\twidth: fit-content;\n\n\t&[aria-disabled='true'] {\n\t\tcursor: not-allowed;\n\n\t\t.vui-switchLabel {\n\t\t\tcolor: disabled.color;\n\t\t}\n\t}\n"], ["\n\talign-items: center;\n\tcursor: pointer;\n\tdisplay: inline-flex;\n\tline-height: normal;\n\twidth: fit-content;\n\n\t&[aria-disabled='true'] {\n\t\tcursor: not-allowed;\n\n\t\t.vui-switchLabel {\n\t\t\tcolor: disabled.color;\n\t\t}\n\t}\n"
56
+ /**
57
+ * Displays a toggle button with supporting text. Allows passing custom elements as side labels and inner labels.
58
+ * Forwards many relevant props to the innner input element. Exposes some props to the children via context.
59
+ */
60
+ ])));
61
+ /**
62
+ * Displays a toggle button with supporting text. Allows passing custom elements as side labels and inner labels.
63
+ * Forwards many relevant props to the innner input element. Exposes some props to the children via context.
64
+ */
62
65
  exports.Switch = (0, core_1.vui)(function (props, ref) {
63
66
  var _a;
64
- var button = props.button, checked = props.checked, children = props.children, className = props.className, colorScheme = props.colorScheme, defaultChecked = props.defaultChecked, disabled = props.disabled, id = props.id, innerLabelOff = props.innerLabelOff, innerLabelOn = props.innerLabelOn, inputRef = props.inputRef, labelLeft = props.labelLeft, labelRight = props.labelRight, name = props.name, onBlur = props.onBlur, onChange = props.onChange, onFocus = props.onFocus, required = props.required, size = props.size, value = props.value, variant = props.variant, rest = __rest(props, ["button", "checked", "children", "className", "colorScheme", "defaultChecked", "disabled", "id", "innerLabelOff", "innerLabelOn", "inputRef", "labelLeft", "labelRight", "name", "onBlur", "onChange", "onFocus", "required", "size", "value", "variant"]);
67
+ var button = props.button, checked = props.checked, children = props.children, className = props.className, colorScheme = props.colorScheme, defaultChecked = props.defaultChecked, disabled = props.disabled, id = props.id, innerLabelOff = props.innerLabelOff, innerLabelOn = props.innerLabelOn, inputProps = props.inputProps, inputRef = props.inputRef, labelLeft = props.labelLeft, labelRight = props.labelRight, name = props.name, onBlur = props.onBlur, onChange = props.onChange, onFocus = props.onFocus, required = props.required, size = props.size, value = props.value, variant = props.variant, rest = __rest(props, ["button", "checked", "children", "className", "colorScheme", "defaultChecked", "disabled", "id", "innerLabelOff", "innerLabelOn", "inputProps", "inputRef", "labelLeft", "labelRight", "name", "onBlur", "onChange", "onFocus", "required", "size", "value", "variant"]);
65
68
  var styles = (0, core_1.useStyleConfig)('Switch', props);
66
69
  var context = (0, react_1.useMemo)(function () {
67
70
  return (0, utils_1.filterUndefined)({
@@ -80,11 +83,11 @@ exports.Switch = (0, core_1.vui)(function (props, ref) {
80
83
  });
81
84
  }, [checked, colorScheme, defaultChecked, disabled, name, onBlur, onChange, onFocus, required, size, value, variant]);
82
85
  var aliasedProps = (0, utils_1.filterUndefined)({
83
- 'data-disabled': disabled ? true : false
86
+ 'aria-disabled': disabled
84
87
  });
85
88
  return (react_1.default.createElement(context_1.SwitchProvider, { value: context },
86
89
  react_1.default.createElement(exports.SwitchBase, __assign({ className: (0, utils_1.cs)('vui-switch', className), ref: ref }, styles.container, aliasedProps, rest),
87
- (0, utils_1.isReactText)(labelLeft) ? react_1.default.createElement(switchLabel_1.SwitchLabel, { mr: 1, text: labelLeft }) : labelLeft, (_a = children !== null && children !== void 0 ? children : button) !== null && _a !== void 0 ? _a : react_1.default.createElement(switchButton_1.SwitchButton, __assign({}, { id: id, innerLabelOff: innerLabelOff, innerLabelOn: innerLabelOn, inputRef: inputRef })),
90
+ (0, utils_1.isReactText)(labelLeft) ? react_1.default.createElement(switchLabel_1.SwitchLabel, { mr: 1, text: labelLeft }) : labelLeft, (_a = children !== null && children !== void 0 ? children : button) !== null && _a !== void 0 ? _a : react_1.default.createElement(switchButton_1.SwitchButton, __assign({}, { id: id, innerLabelOff: innerLabelOff, innerLabelOn: innerLabelOn, inputProps: inputProps, inputRef: inputRef })),
88
91
  (0, utils_1.isReactText)(labelRight) ? react_1.default.createElement(switchLabel_1.SwitchLabel, { ml: 1, text: labelRight }) : labelRight)));
89
92
  });
90
93
  exports.Switch.displayName = 'Switch';
@@ -2,35 +2,68 @@ import { ReactNode, ReactText } from 'react';
2
2
  import { SystemProps } from '../system';
3
3
  import { ThemingProps } from '../theme';
4
4
  import { ChangeEventHandler, FocusEventHandler, PropsOf } from '../utils';
5
- export interface SwitchButtonProps extends SystemProps, ThemingProps<'Switch'> {
5
+ export declare type SwitchButtonProps = SystemProps & ThemingProps<'Switch'> & {
6
+ /** Provides value to switch in controlled mode. */
6
7
  checked?: boolean;
8
+ /** Available theme colors for this component. */
7
9
  colorScheme?: 'blue' | 'green' | 'prussian';
10
+ /** Disables switch and related elements with the right styling. */
8
11
  disabled?: boolean;
12
+ /** Displays custom content to the left of switch thumb. */
9
13
  innerLabelOff?: ReactNode;
14
+ /** Displays custom content to the right of switch thumb. */
10
15
  innerLabelOn?: ReactNode;
16
+ /** Props object passed to the inner input element. */
11
17
  inputProps?: PropsOf<'input', SystemProps>;
18
+ /** Ref passed to the inner input element. */
12
19
  inputRef?: React.MutableRefObject<HTMLInputElement | null> | null;
20
+ /** Passed to the inner input. */
13
21
  name?: string;
22
+ /** Passed to the inner input. */
14
23
  onBlur?: FocusEventHandler;
24
+ /** Passed to the inner input. */
15
25
  onChange?: ChangeEventHandler;
26
+ /** Passed to the inner input. */
16
27
  onFocus?: FocusEventHandler;
28
+ /** Passed to the inner input. */
17
29
  required?: boolean;
30
+ /** Passed to the inner input. */
18
31
  value?: number | string;
19
- }
20
- export interface SwitchProps extends SystemProps, ThemingProps<'Switch'> {
32
+ };
33
+ export declare type SwitchContext = Pick<SwitchProps, 'checked' | 'colorScheme' | 'disabled' | 'name' | 'onBlur' | 'onChange' | 'onFocus' | 'required' | 'size' | 'value' | 'variant'> & {
34
+ defaultChecked?: boolean;
35
+ };
36
+ export declare type SwitchProps = SystemProps & ThemingProps<'Switch'> & {
37
+ /** Socket displaying a custom toggle button component. */
21
38
  button?: ReactNode;
39
+ /** Provides value to switch button in controlled mode. */
22
40
  checked?: boolean;
41
+ /** Available theme colors for this component. @default blue */
23
42
  colorScheme?: 'blue' | 'green' | 'prussian';
43
+ /** Disables switch and related elements with the right styling. */
24
44
  disabled?: boolean;
45
+ /** Displays custom content to the left of switch thumb. */
25
46
  innerLabelOff?: ReactNode;
47
+ /** Displays custom content to the right of switch thumb. */
26
48
  innerLabelOn?: ReactNode;
49
+ /** Props object passed to the inner input element. */
50
+ inputProps?: PropsOf<'input', SystemProps>;
51
+ /** Ref passed to the inner input element. */
27
52
  inputRef?: React.MutableRefObject<HTMLInputElement | null> | null;
53
+ /** Socket displaying content on the left. */
28
54
  labelLeft?: ReactNode;
55
+ /** Socket displaying content on the right. */
29
56
  labelRight?: ReactNode;
57
+ /** Passed to the inner input. */
30
58
  name?: string;
59
+ /** Passed to the inner input. */
31
60
  onBlur?: FocusEventHandler;
61
+ /** Passed to the inner input. */
32
62
  onChange?: ChangeEventHandler;
63
+ /** Passed to the inner input. */
33
64
  onFocus?: FocusEventHandler;
65
+ /** Passed to the inner input. */
34
66
  required?: boolean;
67
+ /** Passed to the inner input. */
35
68
  value?: ReactText;
36
- }
69
+ };
@@ -1,8 +1,8 @@
1
1
  import { SwitchButtonProps } from './switch.types';
2
- import { SystemProps } from '../system';
3
- export declare const SwitchInput: import("styled-components").StyledComponent<"input", import("styled-components").DefaultTheme, SystemProps, never>;
4
- export declare const SwitchThumb: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, SystemProps, never>;
5
- export declare const SwitchTrack: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, SystemProps, never>;
6
- export declare const SwitchButtonBase: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, SystemProps, never>;
2
+ export declare const SwitchButtonBase: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, import("..").SystemProps, never>;
3
+ /**
4
+ * Controls the logic and visuals of multiple inner parts, such as input, track or thumb elements.
5
+ * Handles controlled and uncontrolled modes.
6
+ */
7
7
  export declare const SwitchButton: import("../core").VuiComponent<"span", SwitchButtonProps>;
8
8
  export default SwitchButton;
@@ -60,31 +60,39 @@ var __read = (this && this.__read) || function (o, n) {
60
60
  }
61
61
  return ar;
62
62
  };
63
- var __importDefault = (this && this.__importDefault) || function (mod) {
64
- return (mod && mod.__esModule) ? mod : { "default": mod };
65
- };
66
63
  Object.defineProperty(exports, "__esModule", { value: true });
67
- exports.SwitchButton = exports.SwitchButtonBase = exports.SwitchTrack = exports.SwitchThumb = exports.SwitchInput = void 0;
64
+ exports.SwitchButton = exports.SwitchButtonBase = void 0;
68
65
  var react_1 = __importStar(require("react"));
69
- var styled_components_1 = __importDefault(require("styled-components"));
70
- var context_1 = require("./context");
71
66
  var core_1 = require("../core");
72
- var system_1 = require("../system");
73
67
  var utils_1 = require("../utils");
74
- exports.SwitchInput = styled_components_1.default.input.withConfig((0, core_1.forwardPropConfig)(system_1.system))(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n\tcursor: inherit;\n\theight: calc(100% + 10px);\n\tleft: -5px;\n\tmargin: 0;\n\topacity: 0;\n\tpadding: 0;\n\tposition: absolute;\n\ttop: -5px;\n\twidth: calc(100% + 10px);\n\tz-index: 1;\n\n\t", "\n"], ["\n\tcursor: inherit;\n\theight: calc(100% + 10px);\n\tleft: -5px;\n\tmargin: 0;\n\topacity: 0;\n\tpadding: 0;\n\tposition: absolute;\n\ttop: -5px;\n\twidth: calc(100% + 10px);\n\tz-index: 1;\n\n\t", "\n"])), system_1.system);
75
- exports.SwitchThumb = styled_components_1.default.span.withConfig((0, core_1.forwardPropConfig)(system_1.system))(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n\tdisplay: inline-flex;\n\tflex-shrink: 0;\n\tposition: absolute;\n\n\t", "\n"], ["\n\tdisplay: inline-flex;\n\tflex-shrink: 0;\n\tposition: absolute;\n\n\t", "\n"])), system_1.system);
76
- exports.SwitchTrack = styled_components_1.default.span.withConfig((0, core_1.forwardPropConfig)(system_1.system))(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n\talign-items: center;\n\tdisplay: inline-flex;\n\tflex: 1;\n\tposition: relative;\n\n\t", "\n"], ["\n\talign-items: center;\n\tdisplay: inline-flex;\n\tflex: 1;\n\tposition: relative;\n\n\t", "\n"])), system_1.system);
77
- exports.SwitchButtonBase = styled_components_1.default.span.withConfig((0, core_1.forwardPropConfig)(system_1.system))(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n\tcolor: white;\n\tcursor: pointer;\n\tdisplay: inline-flex;\n\tflex-shrink: 0;\n\tposition: relative;\n\n\t&[data-disabled='true'] {\n\t\tcursor: not-allowed;\n\n\t\t", " {\n\t\t\tborder-color: var(--vui-colors-disabled-border);\n\t\t\tbackground-color: var(--vui-colors-disabled-font);\n\t\t}\n\n\t\t", " {\n\t\t\t--x-ring-color: var(--vui-colors-disabled-border);\n\t\t\tbackground-color: var(--vui-colors-disabled-bg);\n\t\t}\n\t}\n\n\t", "\n"], ["\n\tcolor: white;\n\tcursor: pointer;\n\tdisplay: inline-flex;\n\tflex-shrink: 0;\n\tposition: relative;\n\n\t&[data-disabled='true'] {\n\t\tcursor: not-allowed;\n\n\t\t", " {\n\t\t\tborder-color: var(--vui-colors-disabled-border);\n\t\t\tbackground-color: var(--vui-colors-disabled-font);\n\t\t}\n\n\t\t", " {\n\t\t\t--x-ring-color: var(--vui-colors-disabled-border);\n\t\t\tbackground-color: var(--vui-colors-disabled-bg);\n\t\t}\n\t}\n\n\t", "\n"])), exports.SwitchThumb, exports.SwitchTrack, system_1.system);
68
+ var context_1 = require("./context");
69
+ var SwitchInput = core_1.styled.inputBox(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n\tcursor: inherit;\n\theight: calc(100% + 10px);\n\tleft: -5px;\n\tmargin: 0;\n\topacity: 0;\n\tpadding: 0;\n\tposition: absolute;\n\ttop: -5px;\n\twidth: calc(100% + 10px);\n\tz-index: 1;\n"], ["\n\tcursor: inherit;\n\theight: calc(100% + 10px);\n\tleft: -5px;\n\tmargin: 0;\n\topacity: 0;\n\tpadding: 0;\n\tposition: absolute;\n\ttop: -5px;\n\twidth: calc(100% + 10px);\n\tz-index: 1;\n"
70
+ /** Circular element that moves along the track when toggled. */
71
+ ])));
72
+ /** Circular element that moves along the track when toggled. */
73
+ var SwitchThumb = core_1.styled.spanBox(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n\tborder-radius: round;\n\tdisplay: inline-flex;\n\tflex-shrink: 0;\n\tposition: absolute;\n\ttransition-duration: fast;\n"], ["\n\tborder-radius: round;\n\tdisplay: inline-flex;\n\tflex-shrink: 0;\n\tposition: absolute;\n\ttransition-duration: fast;\n"
74
+ /** Track element along which the thumb moves when toggled. */
75
+ ])));
76
+ /** Track element along which the thumb moves when toggled. */
77
+ var SwitchTrack = core_1.styled.spanBox(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n\talign-items: center;\n\tborder-radius: round;\n\tdisplay: inline-flex;\n\tflex: 1;\n\tposition: relative;\n\ttransition-duration: fast;\n"], ["\n\talign-items: center;\n\tborder-radius: round;\n\tdisplay: inline-flex;\n\tflex: 1;\n\tposition: relative;\n\ttransition-duration: fast;\n"])));
78
+ exports.SwitchButtonBase = core_1.styled.spanBox(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n\tcolor: white;\n\tcursor: pointer;\n\tdisplay: inline-flex;\n\tflex-shrink: 0;\n\tposition: relative;\n\n\t&[aria-disabled='true'] {\n\t\tcursor: not-allowed;\n\n\t\t.vui-switchThumb {\n\t\t\tbackground-color: disabled.color;\n\t\t}\n\n\t\t.vui-switchTrack {\n\t\t\t// Using ring instead of border when disabled, because it's easier\n\t\t\t--x-ring-color: var(--vui-colors-disabled-border);\n\t\t\tbackground-color: disabled.bg;\n\t\t}\n\t}\n"], ["\n\tcolor: white;\n\tcursor: pointer;\n\tdisplay: inline-flex;\n\tflex-shrink: 0;\n\tposition: relative;\n\n\t&[aria-disabled='true'] {\n\t\tcursor: not-allowed;\n\n\t\t.vui-switchThumb {\n\t\t\tbackground-color: disabled.color;\n\t\t}\n\n\t\t.vui-switchTrack {\n\t\t\t// Using ring instead of border when disabled, because it's easier\n\t\t\t--x-ring-color: var(--vui-colors-disabled-border);\n\t\t\tbackground-color: disabled.bg;\n\t\t}\n\t}\n"
79
+ /**
80
+ * Controls the logic and visuals of multiple inner parts, such as input, track or thumb elements.
81
+ * Handles controlled and uncontrolled modes.
82
+ */
83
+ ])));
84
+ /**
85
+ * Controls the logic and visuals of multiple inner parts, such as input, track or thumb elements.
86
+ * Handles controlled and uncontrolled modes.
87
+ */
78
88
  exports.SwitchButton = (0, core_1.vui)(function (props, ref) {
79
- var _a;
80
- var switchProps = (_a = (0, context_1.useSwitch)()) !== null && _a !== void 0 ? _a : {};
81
- var mergedProps = __assign(__assign({}, switchProps), props);
82
- var _b = (0, core_1.omitThemingProps)(mergedProps), checked = _b.checked, className = _b.className, defaultChecked = _b.defaultChecked, disabled = _b.disabled, id = _b.id, innerLabelOff = _b.innerLabelOff, innerLabelOn = _b.innerLabelOn, inputProps = _b.inputProps, inputRef = _b.inputRef, name = _b.name, onBlur = _b.onBlur, onChange = _b.onChange, onFocus = _b.onFocus, required = _b.required, value = _b.value, rest = __rest(_b, ["checked", "className", "defaultChecked", "disabled", "id", "innerLabelOff", "innerLabelOn", "inputProps", "inputRef", "name", "onBlur", "onChange", "onFocus", "required", "value"]);
89
+ var mergedProps = __assign(__assign({}, (0, context_1.useSwitch)()), props);
90
+ var _a = (0, core_1.omitThemingProps)(mergedProps), checked = _a.checked, className = _a.className, defaultChecked = _a.defaultChecked, disabled = _a.disabled, id = _a.id, innerLabelOff = _a.innerLabelOff, innerLabelOn = _a.innerLabelOn, inputProps = _a.inputProps, inputRef = _a.inputRef, name = _a.name, onBlur = _a.onBlur, onChange = _a.onChange, onFocus = _a.onFocus, required = _a.required, value = _a.value, rest = __rest(_a, ["checked", "className", "defaultChecked", "disabled", "id", "innerLabelOff", "innerLabelOn", "inputProps", "inputRef", "name", "onBlur", "onChange", "onFocus", "required", "value"]);
83
91
  var isControlled = (0, react_1.useRef)(checked !== undefined).current;
84
- var _c = __read((0, react_1.useState)(checked !== null && checked !== void 0 ? checked : defaultChecked), 2), isChecked = _c[0], setIsChecked = _c[1];
85
- var _d = __read((0, react_1.useState)(false), 2), isFocused = _d[0], setIsFocused = _d[1];
92
+ var _b = __read((0, react_1.useState)(checked !== null && checked !== void 0 ? checked : defaultChecked), 2), isChecked = _b[0], setIsChecked = _b[1];
93
+ var _c = __read((0, react_1.useState)(false), 2), isFocused = _c[0], setIsFocused = _c[1];
86
94
  var styles = (0, core_1.useStyleConfig)('Switch', mergedProps);
87
- var _e = styles.button, thumbStyles = _e.thumb, trackStyles = _e.track, buttonStyles = __rest(_e, ["thumb", "track"]);
95
+ var _d = styles.button, thumbStyles = _d.thumb, trackStyles = _d.track, buttonStyles = __rest(_d, ["thumb", "track"]);
88
96
  (0, react_1.useEffect)(function () {
89
97
  isControlled && setIsChecked(checked);
90
98
  }, [checked, isControlled]);
@@ -103,9 +111,9 @@ exports.SwitchButton = (0, core_1.vui)(function (props, ref) {
103
111
  var hDiff = (thumbStyles.h - trackStyles.h) / 2;
104
112
  var thumbOffset = "calc(100% - " + Math.abs(hDiff - thumbStyles.h) + "px)";
105
113
  var labelOffset = thumbStyles.h - hDiff + 4 + "px";
106
- var buttonAliasedProps = (0, utils_1.filterUndefined)({
107
- 'data-checked': isChecked ? true : false,
108
- 'data-disabled': disabled ? true : false,
114
+ var aliasedProps = (0, utils_1.filterUndefined)({
115
+ 'aria-checked': isChecked ? true : false,
116
+ 'aria-disabled': disabled,
109
117
  'data-focused': isFocused ? true : false
110
118
  });
111
119
  var thumbAliasedProps = (0, utils_1.filterUndefined)({
@@ -116,13 +124,13 @@ exports.SwitchButton = (0, core_1.vui)(function (props, ref) {
116
124
  bg: isChecked ? trackStyles.bg : 'grey.50',
117
125
  pl: isChecked ? 1 : labelOffset,
118
126
  pr: isChecked ? labelOffset : 1,
119
- ring: isFocused ? trackStyles.ring : disabled ? 1 : 0
127
+ ring: !disabled ? (isFocused ? trackStyles.ring : 0) : 1
120
128
  });
121
- return (react_1.default.createElement(exports.SwitchButtonBase, __assign({ className: (0, utils_1.cs)('vui-switchButton', className), ref: ref }, buttonStyles, buttonAliasedProps, rest),
122
- react_1.default.createElement(exports.SwitchInput, __assign({ className: "vui-switchInput", onBlur: handleOnBlur, onChange: handleOnChange, onFocus: handleOnFocus, ref: inputRef, type: "checkbox" }, { checked: checked, defaultChecked: defaultChecked, disabled: disabled, id: id, name: name, required: required, value: value }, inputProps)),
123
- react_1.default.createElement(exports.SwitchTrack, __assign({ borderRadius: "round", className: "vui-switchTrack", transitionDuration: "fast" }, trackStyles, trackAliasedProps),
129
+ return (react_1.default.createElement(exports.SwitchButtonBase, __assign({ className: (0, utils_1.cs)('vui-switchButton', className), ref: ref }, buttonStyles, aliasedProps, rest),
130
+ react_1.default.createElement(SwitchInput, __assign({ className: "vui-switchInput", onBlur: handleOnBlur, onChange: handleOnChange, onFocus: handleOnFocus, ref: inputRef, type: "checkbox" }, { checked: checked, defaultChecked: defaultChecked, disabled: disabled, id: id, name: name, required: required, value: value }, inputProps)),
131
+ react_1.default.createElement(SwitchTrack, __assign({ className: "vui-switchTrack" }, trackStyles, trackAliasedProps),
124
132
  !isChecked && innerLabelOff,
125
- react_1.default.createElement(exports.SwitchThumb, __assign({ borderRadius: "round", className: "vui-switchThumb", transitionDuration: "fast" }, thumbStyles, thumbAliasedProps)),
133
+ react_1.default.createElement(SwitchThumb, __assign({ className: "vui-switchThumb" }, thumbStyles, thumbAliasedProps)),
126
134
  isChecked && innerLabelOn)));
127
135
  });
128
136
  exports.SwitchButton.displayName = 'SwitchButton';
@@ -1,3 +1,4 @@
1
1
  import { TProps } from '../t';
2
+ /** Displays label text within the Switch component. */
2
3
  export declare const SwitchLabel: import("../core").VuiComponent<"span", TProps>;
3
4
  export default SwitchLabel;
@@ -16,14 +16,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.SwitchLabel = void 0;
18
18
  var react_1 = __importDefault(require("react"));
19
- var context_1 = require("./context");
20
19
  var core_1 = require("../core");
21
20
  var t_1 = __importDefault(require("../t"));
21
+ var context_1 = require("./context");
22
+ /** Displays label text within the Switch component. */
22
23
  exports.SwitchLabel = (0, core_1.vui)(function (props, ref) {
23
- var _a;
24
- var switchProps = (_a = (0, context_1.useSwitch)()) !== null && _a !== void 0 ? _a : {};
25
- var mergedProps = __assign(__assign({}, switchProps), props);
26
- var styles = (0, core_1.useStyleConfig)('Switch', mergedProps);
24
+ var styles = (0, core_1.useStyleConfig)('Switch', __assign(__assign({}, (0, context_1.useSwitch)()), props));
27
25
  return react_1.default.createElement(t_1.default, __assign({ className: "vui-switchLabel", display: "flex", ref: ref }, styles.label, props));
28
26
  });
29
27
  exports.SwitchLabel.displayName = 'SwitchLabel';
package/switch/theme.d.ts CHANGED
@@ -59,6 +59,7 @@ declare function variantContained(props: Dict): {
59
59
  };
60
60
  };
61
61
  declare const _default: {
62
+ baseStyle: {};
62
63
  defaultProps: {
63
64
  colorScheme: string;
64
65
  size: string;
package/switch/theme.js CHANGED
@@ -64,6 +64,7 @@ function variantContained(props) {
64
64
  };
65
65
  return { button: button };
66
66
  }
67
+ var baseStyle = {};
67
68
  var defaultProps = {
68
69
  colorScheme: 'blue',
69
70
  size: 'md',
@@ -79,6 +80,7 @@ var variants = {
79
80
  contained: variantContained
80
81
  };
81
82
  exports.default = {
83
+ baseStyle: baseStyle,
82
84
  defaultProps: defaultProps,
83
85
  parts: parts,
84
86
  sizes: sizes,
@@ -2,10 +2,9 @@ import { SystemProp, VariantsType } from '@xstyled/system';
2
2
  import { VuiTheme } from '../theme';
3
3
  export declare type AnimationGetter = VariantsType<VuiTheme['animations']>;
4
4
  declare type AnimationProp = SystemProp<AnimationGetter, VuiTheme>;
5
- export interface AnimationProps {
5
+ export declare type AnimationProps = {
6
6
  animation?: AnimationProp;
7
7
  hoverAnimation?: AnimationProp;
8
- }
9
- export interface AnimationsProps extends AnimationProps {
10
- }
8
+ };
9
+ export declare type AnimationsProps = AnimationProps;
11
10
  export {};
@@ -1,13 +1,12 @@
1
1
  import { SystemProp } from '@xstyled/system';
2
- import { ColorGetter } from './colors';
3
2
  import { VuiTheme } from '../theme';
3
+ import { ColorGetter } from './colors';
4
4
  declare type BackgroundColorProp = SystemProp<ColorGetter, VuiTheme>;
5
- export interface BackgroundColorProps {
5
+ export declare type BackgroundColorProps = {
6
6
  activeBg?: BackgroundColorProp;
7
7
  bg?: BackgroundColorProp;
8
8
  disabledBg?: BackgroundColorProp;
9
9
  hoverBg?: BackgroundColorProp;
10
- }
11
- export interface BackgroundsProps extends BackgroundColorProps {
12
- }
10
+ };
11
+ export declare type BackgroundsProps = BackgroundColorProps;
13
12
  export {};