@via-profit/ui-kit 0.3.0 → 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 (485) hide show
  1. package/Accordion/AccordionContainer.js +11 -11
  2. package/Accordion/AccordionContent.js +16 -7
  3. package/Accordion/AccordionHeader.d.ts +22 -0
  4. package/Accordion/AccordionHeader.js +35 -18
  5. package/Accordion/Chevron.js +3 -3
  6. package/Accordion/index.d.ts +12 -8
  7. package/Accordion/index.js +21 -6
  8. package/Autocomplete/AutocompleteContainer.d.ts +5 -9
  9. package/Autocomplete/AutocompleteContainer.js +91 -35
  10. package/Autocomplete/AutocompleteTagsInput.d.ts +15 -0
  11. package/Autocomplete/AutocompleteTagsInput.js +65 -0
  12. package/Autocomplete/context.d.ts +1 -0
  13. package/Autocomplete/context.js +5 -5
  14. package/Autocomplete/index.js +1 -0
  15. package/Avatar/AvatarBase.js +1 -1
  16. package/Avatar/AvatarContainer.js +6 -11
  17. package/Avatar/AvatarPicture.d.ts +9 -1
  18. package/Avatar/AvatarPicture.js +4 -3
  19. package/Avatar/index.js +10 -10
  20. package/Badge/BadgeBase.d.ts +9 -0
  21. package/Badge/BadgeBase.js +21 -3
  22. package/Badge/BadgeContainer.js +2 -1
  23. package/Badge/BadgeDeleteButton.d.ts +1 -1
  24. package/Badge/BadgeOutlined.d.ts +1 -1
  25. package/Badge/BadgeOutlined.js +5 -80
  26. package/Badge/BadgeStandard.d.ts +1 -1
  27. package/Badge/BadgeStandard.js +5 -91
  28. package/Badge/BadgeStyled.d.ts +5 -0
  29. package/Badge/BadgeStyled.js +125 -0
  30. package/Badge/index.d.ts +2 -2
  31. package/Badge/index.js +3 -20
  32. package/Button/ButtonBase.js +8 -4
  33. package/Button/ButtonContainer.js +2 -0
  34. package/Button/ButtonIconWrapper.d.ts +1 -1
  35. package/Button/ButtonOutlined.d.ts +1 -1
  36. package/Button/ButtonOutlined.js +5 -80
  37. package/Button/ButtonPlain.d.ts +1 -1
  38. package/Button/ButtonPlain.js +5 -85
  39. package/Button/ButtonStandard.d.ts +1 -1
  40. package/Button/ButtonStandard.js +5 -97
  41. package/Button/ButtonStyled.d.ts +10 -0
  42. package/Button/ButtonStyled.js +205 -0
  43. package/Button/index.d.ts +5 -5
  44. package/Button/index.js +3 -24
  45. package/ButtonGroup/ButtonGroupContext.d.ts +21 -0
  46. package/ButtonGroup/ButtonGroupContext.js +11 -0
  47. package/ButtonGroup/index.d.ts +76 -0
  48. package/ButtonGroup/index.js +132 -0
  49. package/CHANGELOG.md +122 -0
  50. package/Calendar/CalendarCell.js +11 -4
  51. package/Calendar/CalendarComponent.d.ts +15 -4
  52. package/Calendar/CalendarComponent.js +150 -55
  53. package/Calendar/CalendarDayBadge.d.ts +1 -1
  54. package/Calendar/CalendarMonthCell.js +1 -11
  55. package/Calendar/CalendarWeekDayLabel.js +3 -1
  56. package/Calendar/CalendarWeekDaysBar.js +6 -1
  57. package/Calendar/CalendarYearCell.js +1 -16
  58. package/Calendar/CalendarYearsSelector.d.ts +0 -1
  59. package/Calendar/CalendarYearsSelector.js +33 -35
  60. package/Calendar/use-calendar.d.ts +1 -1
  61. package/Checkbox/CheckboxAsterisk.d.ts +13 -0
  62. package/{Autocomplete2/Autocomplete2TextField.js → Checkbox/CheckboxAsterisk.js} +24 -10
  63. package/Checkbox/CheckboxBox.d.ts +22 -0
  64. package/Checkbox/CheckboxBox.js +88 -0
  65. package/Checkbox/CheckboxContainer.d.ts +27 -0
  66. package/Checkbox/CheckboxContainer.js +38 -0
  67. package/Checkbox/CheckboxErrorText.d.ts +6 -0
  68. package/Checkbox/CheckboxErrorText.js +76 -0
  69. package/Checkbox/CheckboxIcon.d.ts +10 -0
  70. package/Checkbox/CheckboxIcon.js +57 -0
  71. package/Checkbox/CheckboxTextWrapper.d.ts +4 -0
  72. package/Checkbox/CheckboxTextWrapper.js +29 -0
  73. package/Checkbox/CheckboxWrapper.d.ts +4 -0
  74. package/Checkbox/CheckboxWrapper.js +29 -0
  75. package/Checkbox/index.d.ts +144 -0
  76. package/Checkbox/index.js +71 -0
  77. package/Checkbox/useCheckboxColor.d.ts +6 -0
  78. package/Checkbox/useCheckboxColor.js +33 -0
  79. package/ClickOutside/index.d.ts +6 -0
  80. package/ClickOutside/index.js +7 -2
  81. package/Color/Color.d.ts +4 -4
  82. package/Color/Color.js +9 -5
  83. package/Color/ColorGenerator.d.ts +5 -1
  84. package/CountryFlags/AC.js +5 -1
  85. package/CountryFlags/AD.js +5 -1
  86. package/CountryFlags/AE.js +5 -1
  87. package/CountryFlags/AF.js +5 -1
  88. package/CountryFlags/AG.js +5 -1
  89. package/CountryFlags/AI.js +5 -1
  90. package/CountryFlags/AL.js +5 -1
  91. package/CountryFlags/AM.js +5 -1
  92. package/CountryFlags/AO.js +5 -1
  93. package/CountryFlags/AQ.js +5 -1
  94. package/CountryFlags/AR.js +5 -1
  95. package/CountryFlags/AS.js +5 -1
  96. package/CountryFlags/AT.js +5 -1
  97. package/CountryFlags/AU.js +5 -1
  98. package/CountryFlags/AW.js +5 -1
  99. package/CountryFlags/AX.js +5 -1
  100. package/CountryFlags/AZ.js +5 -1
  101. package/CountryFlags/BA.js +5 -1
  102. package/CountryFlags/BB.js +5 -1
  103. package/CountryFlags/BD.js +5 -1
  104. package/CountryFlags/BE.js +5 -1
  105. package/CountryFlags/BF.js +5 -1
  106. package/CountryFlags/BG.js +5 -1
  107. package/CountryFlags/BH.js +5 -1
  108. package/CountryFlags/BI.js +5 -1
  109. package/CountryFlags/BJ.js +5 -1
  110. package/CountryFlags/BL.js +5 -1
  111. package/CountryFlags/BM.js +5 -1
  112. package/CountryFlags/BN.js +5 -1
  113. package/CountryFlags/BO.js +5 -1
  114. package/CountryFlags/BQ.js +5 -1
  115. package/CountryFlags/BR.js +5 -1
  116. package/CountryFlags/BS.js +5 -1
  117. package/CountryFlags/BT.js +5 -1
  118. package/CountryFlags/BV.js +5 -1
  119. package/CountryFlags/BW.js +5 -1
  120. package/CountryFlags/BY.js +5 -1
  121. package/CountryFlags/BZ.js +5 -1
  122. package/CountryFlags/CA.js +5 -1
  123. package/CountryFlags/CC.js +5 -1
  124. package/CountryFlags/CD.js +5 -1
  125. package/CountryFlags/CF.js +5 -1
  126. package/CountryFlags/CG.js +5 -1
  127. package/CountryFlags/CH.js +5 -1
  128. package/CountryFlags/CI.js +5 -1
  129. package/CountryFlags/CK.js +5 -1
  130. package/CountryFlags/CL.js +5 -1
  131. package/CountryFlags/CM.js +5 -1
  132. package/CountryFlags/CN.js +5 -1
  133. package/CountryFlags/CO.js +5 -1
  134. package/CountryFlags/CR.js +5 -1
  135. package/CountryFlags/CU.js +5 -1
  136. package/CountryFlags/CV.js +5 -1
  137. package/CountryFlags/CW.js +5 -1
  138. package/CountryFlags/CX.js +5 -1
  139. package/CountryFlags/CY.js +5 -1
  140. package/CountryFlags/CZ.js +5 -1
  141. package/CountryFlags/DE.js +5 -1
  142. package/CountryFlags/DJ.js +5 -1
  143. package/CountryFlags/DK.js +5 -1
  144. package/CountryFlags/DM.js +5 -1
  145. package/CountryFlags/DO.js +5 -1
  146. package/CountryFlags/DZ.js +5 -1
  147. package/CountryFlags/EC.js +5 -1
  148. package/CountryFlags/EE.js +5 -1
  149. package/CountryFlags/EG.js +5 -1
  150. package/CountryFlags/EH.js +5 -1
  151. package/CountryFlags/ER.js +5 -1
  152. package/CountryFlags/ES.js +5 -1
  153. package/CountryFlags/ET.js +5 -1
  154. package/CountryFlags/EU.js +5 -1
  155. package/CountryFlags/FI.js +5 -1
  156. package/CountryFlags/FJ.js +5 -1
  157. package/CountryFlags/FK.js +5 -1
  158. package/CountryFlags/FM.js +5 -1
  159. package/CountryFlags/FO.js +5 -1
  160. package/CountryFlags/FR.js +5 -1
  161. package/CountryFlags/GA.js +5 -1
  162. package/CountryFlags/GB.js +5 -1
  163. package/CountryFlags/GD.js +5 -1
  164. package/CountryFlags/GE.js +5 -1
  165. package/CountryFlags/GEAB.js +5 -1
  166. package/CountryFlags/GEOS.js +5 -1
  167. package/CountryFlags/GF.js +5 -1
  168. package/CountryFlags/GG.js +5 -1
  169. package/CountryFlags/GH.js +5 -1
  170. package/CountryFlags/GI.js +5 -1
  171. package/CountryFlags/GL.js +5 -1
  172. package/CountryFlags/GM.js +5 -1
  173. package/CountryFlags/GN.js +5 -1
  174. package/CountryFlags/GP.js +5 -1
  175. package/CountryFlags/GQ.js +5 -1
  176. package/CountryFlags/GR.js +5 -1
  177. package/CountryFlags/GS.js +5 -1
  178. package/CountryFlags/GT.js +5 -1
  179. package/CountryFlags/GU.js +5 -1
  180. package/CountryFlags/GW.js +5 -1
  181. package/CountryFlags/GY.js +5 -1
  182. package/CountryFlags/HK.js +5 -1
  183. package/CountryFlags/HM.js +5 -1
  184. package/CountryFlags/HN.js +5 -1
  185. package/CountryFlags/HR.js +5 -1
  186. package/CountryFlags/HT.js +5 -1
  187. package/CountryFlags/HU.js +5 -1
  188. package/CountryFlags/IC.js +5 -1
  189. package/CountryFlags/ID.js +5 -1
  190. package/CountryFlags/IE.js +5 -1
  191. package/CountryFlags/IL.js +5 -1
  192. package/CountryFlags/IM.js +5 -1
  193. package/CountryFlags/IN.js +5 -1
  194. package/CountryFlags/IO.js +5 -1
  195. package/CountryFlags/IQ.js +5 -1
  196. package/CountryFlags/IR.js +5 -1
  197. package/CountryFlags/IS.js +5 -1
  198. package/CountryFlags/IT.js +5 -1
  199. package/CountryFlags/JE.js +5 -1
  200. package/CountryFlags/JM.js +5 -1
  201. package/CountryFlags/JO.js +5 -1
  202. package/CountryFlags/JP.js +5 -1
  203. package/CountryFlags/KE.js +5 -1
  204. package/CountryFlags/KG.js +5 -1
  205. package/CountryFlags/KH.js +5 -1
  206. package/CountryFlags/KI.js +5 -1
  207. package/CountryFlags/KM.js +5 -1
  208. package/CountryFlags/KN.js +5 -1
  209. package/CountryFlags/KP.js +5 -1
  210. package/CountryFlags/KR.js +5 -1
  211. package/CountryFlags/KW.js +5 -1
  212. package/CountryFlags/KY.js +5 -1
  213. package/CountryFlags/KZ.js +5 -1
  214. package/CountryFlags/LA.js +5 -1
  215. package/CountryFlags/LB.js +5 -1
  216. package/CountryFlags/LC.js +5 -1
  217. package/CountryFlags/LI.js +5 -1
  218. package/CountryFlags/LK.js +5 -1
  219. package/CountryFlags/LR.js +5 -1
  220. package/CountryFlags/LS.js +5 -1
  221. package/CountryFlags/LT.js +5 -1
  222. package/CountryFlags/LU.js +5 -1
  223. package/CountryFlags/LV.js +5 -1
  224. package/CountryFlags/LY.js +5 -1
  225. package/CountryFlags/MA.js +5 -1
  226. package/CountryFlags/MC.js +5 -1
  227. package/CountryFlags/MD.js +5 -1
  228. package/CountryFlags/ME.js +5 -1
  229. package/CountryFlags/MF.js +5 -1
  230. package/CountryFlags/MG.js +5 -1
  231. package/CountryFlags/MH.js +5 -1
  232. package/CountryFlags/MK.js +5 -1
  233. package/CountryFlags/ML.js +5 -1
  234. package/CountryFlags/MM.js +5 -1
  235. package/CountryFlags/MN.js +5 -1
  236. package/CountryFlags/MO.js +5 -1
  237. package/CountryFlags/MP.js +5 -1
  238. package/CountryFlags/MQ.js +5 -1
  239. package/CountryFlags/MR.js +5 -1
  240. package/CountryFlags/MS.js +5 -1
  241. package/CountryFlags/MT.js +5 -1
  242. package/CountryFlags/MU.js +5 -1
  243. package/CountryFlags/MV.js +5 -1
  244. package/CountryFlags/MW.js +5 -1
  245. package/CountryFlags/MX.js +5 -1
  246. package/CountryFlags/MY.js +5 -1
  247. package/CountryFlags/MZ.js +5 -1
  248. package/CountryFlags/NA.js +5 -1
  249. package/CountryFlags/NC.js +5 -1
  250. package/CountryFlags/NE.js +5 -1
  251. package/CountryFlags/NF.js +5 -1
  252. package/CountryFlags/NG.js +5 -1
  253. package/CountryFlags/NI.js +5 -1
  254. package/CountryFlags/NL.js +5 -1
  255. package/CountryFlags/NO.js +5 -1
  256. package/CountryFlags/NP.js +5 -1
  257. package/CountryFlags/NR.js +5 -1
  258. package/CountryFlags/NU.js +5 -1
  259. package/CountryFlags/NZ.js +5 -1
  260. package/CountryFlags/OM.js +5 -1
  261. package/CountryFlags/PA.js +5 -1
  262. package/CountryFlags/PE.js +5 -1
  263. package/CountryFlags/PF.js +5 -1
  264. package/CountryFlags/PG.js +5 -1
  265. package/CountryFlags/PH.js +5 -1
  266. package/CountryFlags/PK.js +5 -1
  267. package/CountryFlags/PL.js +5 -1
  268. package/CountryFlags/PM.js +5 -1
  269. package/CountryFlags/PN.js +5 -1
  270. package/CountryFlags/PR.js +5 -1
  271. package/CountryFlags/PS.js +5 -1
  272. package/CountryFlags/PT.js +5 -1
  273. package/CountryFlags/PW.js +5 -1
  274. package/CountryFlags/PY.js +5 -1
  275. package/CountryFlags/QA.js +5 -1
  276. package/CountryFlags/RE.js +5 -1
  277. package/CountryFlags/RO.js +5 -1
  278. package/CountryFlags/RS.js +5 -1
  279. package/CountryFlags/RU.js +5 -1
  280. package/CountryFlags/RW.js +5 -1
  281. package/CountryFlags/SA.js +5 -1
  282. package/CountryFlags/SB.js +5 -1
  283. package/CountryFlags/SC.js +5 -1
  284. package/CountryFlags/SD.js +5 -1
  285. package/CountryFlags/SE.js +5 -1
  286. package/CountryFlags/SG.js +5 -1
  287. package/CountryFlags/SH.js +5 -1
  288. package/CountryFlags/SI.js +5 -1
  289. package/CountryFlags/SJ.js +5 -1
  290. package/CountryFlags/SK.js +5 -1
  291. package/CountryFlags/SL.js +5 -1
  292. package/CountryFlags/SM.js +5 -1
  293. package/CountryFlags/SN.js +5 -1
  294. package/CountryFlags/SO.js +5 -1
  295. package/CountryFlags/SR.js +5 -1
  296. package/CountryFlags/SS.js +5 -1
  297. package/CountryFlags/ST.js +5 -1
  298. package/CountryFlags/SV.js +5 -1
  299. package/CountryFlags/SX.js +5 -1
  300. package/CountryFlags/SY.js +5 -1
  301. package/CountryFlags/SZ.js +5 -1
  302. package/CountryFlags/TA.js +5 -1
  303. package/CountryFlags/TC.js +5 -1
  304. package/CountryFlags/TD.js +5 -1
  305. package/CountryFlags/TF.js +5 -1
  306. package/CountryFlags/TG.js +5 -1
  307. package/CountryFlags/TH.js +5 -1
  308. package/CountryFlags/TJ.js +5 -1
  309. package/CountryFlags/TK.js +5 -1
  310. package/CountryFlags/TL.js +5 -1
  311. package/CountryFlags/TM.js +5 -1
  312. package/CountryFlags/TN.js +5 -1
  313. package/CountryFlags/TO.js +5 -1
  314. package/CountryFlags/TR.js +5 -1
  315. package/CountryFlags/TT.js +5 -1
  316. package/CountryFlags/TV.js +5 -1
  317. package/CountryFlags/TW.js +5 -1
  318. package/CountryFlags/TZ.js +5 -1
  319. package/CountryFlags/UA.js +5 -1
  320. package/CountryFlags/UG.js +5 -1
  321. package/CountryFlags/UM.js +5 -1
  322. package/CountryFlags/US.js +5 -1
  323. package/CountryFlags/UY.js +5 -1
  324. package/CountryFlags/UZ.js +5 -1
  325. package/CountryFlags/Uknown.d.ts +7 -3
  326. package/CountryFlags/Uknown.js +9 -31
  327. package/CountryFlags/Unknown.d.ts +3 -0
  328. package/CountryFlags/Unknown.js +42 -0
  329. package/CountryFlags/VA.js +5 -1
  330. package/CountryFlags/VC.js +5 -1
  331. package/CountryFlags/VE.js +5 -1
  332. package/CountryFlags/VG.js +5 -1
  333. package/CountryFlags/VI.js +5 -1
  334. package/CountryFlags/VN.js +5 -1
  335. package/CountryFlags/VU.js +5 -1
  336. package/CountryFlags/WF.js +5 -1
  337. package/CountryFlags/WS.js +5 -1
  338. package/CountryFlags/XK.js +5 -1
  339. package/CountryFlags/YE.js +5 -1
  340. package/CountryFlags/YT.js +5 -1
  341. package/CountryFlags/ZA.js +5 -1
  342. package/CountryFlags/ZM.js +5 -1
  343. package/CountryFlags/ZW.js +5 -1
  344. package/CountryFlags/index.d.ts +2 -1
  345. package/CountryFlags/index.js +3 -1
  346. package/CountryFlags/isLabelled.d.ts +6 -0
  347. package/CountryFlags/isLabelled.js +7 -0
  348. package/DatePicker/index.d.ts +19 -6
  349. package/DatePicker/index.js +59 -12
  350. package/Grid/index.d.ts +60 -0
  351. package/Grid/index.js +43 -0
  352. package/Highlighted/index.d.ts +1 -1
  353. package/Highlighted/index.js +14 -10
  354. package/LoadingIndicator/LoadingOverlay.d.ts +11 -0
  355. package/LoadingIndicator/LoadingOverlay.js +63 -0
  356. package/LoadingIndicator/Spinner.d.ts +34 -5
  357. package/LoadingIndicator/Spinner.js +48 -37
  358. package/LoadingIndicator/SpinnerCircle.d.ts +14 -0
  359. package/LoadingIndicator/SpinnerCircle.js +34 -0
  360. package/LoadingIndicator/index.d.ts +8 -3
  361. package/LoadingIndicator/index.js +9 -15
  362. package/MaskedField/index.d.ts +3 -2
  363. package/MaskedField/index.js +7 -2
  364. package/MaskedField/templates.js +2 -0
  365. package/MaskedField/useMasked.js +9 -6
  366. package/Menu/MenuContainer.d.ts +8 -0
  367. package/Menu/MenuContainer.js +101 -30
  368. package/Menu/MenuItem.js +1 -1
  369. package/Menu/context.js +5 -0
  370. package/Modal/BaseModal/useDialogID.d.ts +6 -0
  371. package/Modal/BaseModal/useDialogID.js +12 -0
  372. package/Modal/ConfirmBox/ConfirmBoxContainer.js +5 -1
  373. package/Modal/ConfirmBox/index.js +2 -1
  374. package/Modal/Dialog/DialogInner.js +1 -1
  375. package/Modal/Dialog/index.js +12 -7
  376. package/Modal/Drawer/DrawerHeader.d.ts +20 -0
  377. package/Modal/Drawer/DrawerHeader.js +3 -3
  378. package/Modal/Drawer/DrawerInner.js +9 -1
  379. package/Modal/Drawer/index.d.ts +7 -0
  380. package/Modal/Drawer/index.js +12 -10
  381. package/Modal/MessageBox/MessageBoxContainer.js +1 -1
  382. package/Modal/MessageBox/index.js +2 -1
  383. package/PhoneField/CountryFlagComponent.js +2 -2
  384. package/PhoneField/UnknownFlag.d.ts +6 -3
  385. package/PhoneField/UnknownFlag.js +8 -31
  386. package/PhoneField/index.js +45 -55
  387. package/PhoneField/templates.js +13 -14
  388. package/PhoneField/usePhoneUtils.d.ts +15 -0
  389. package/PhoneField/usePhoneUtils.js +30 -37
  390. package/Popper/Popper.d.ts +28 -8
  391. package/Popper/usePopper.d.ts +21 -31
  392. package/README.md +27 -10
  393. package/Radio/RadioBox.d.ts +14 -0
  394. package/Radio/RadioBox.js +100 -0
  395. package/Radio/RadioContainer.d.ts +27 -0
  396. package/Radio/RadioContainer.js +38 -0
  397. package/Radio/RadioTextWrapper.d.ts +4 -0
  398. package/Radio/RadioTextWrapper.js +29 -0
  399. package/Radio/index.d.ts +64 -0
  400. package/Radio/index.js +49 -0
  401. package/Radio/useRadioColor.d.ts +6 -0
  402. package/Radio/useRadioColor.js +33 -0
  403. package/RadioGroup/RadioGroupAsterisk.d.ts +13 -0
  404. package/RadioGroup/RadioGroupAsterisk.js +53 -0
  405. package/RadioGroup/RadioGroupContainer.d.ts +4 -0
  406. package/RadioGroup/RadioGroupContainer.js +36 -0
  407. package/RadioGroup/RadioGroupContext.d.ts +20 -0
  408. package/RadioGroup/RadioGroupContext.js +11 -0
  409. package/RadioGroup/RadioGroupErrorText.d.ts +6 -0
  410. package/RadioGroup/RadioGroupErrorText.js +76 -0
  411. package/RadioGroup/RadioGroupItems.d.ts +9 -0
  412. package/RadioGroup/RadioGroupItems.js +30 -0
  413. package/RadioGroup/RadioGroupLegend.d.ts +4 -0
  414. package/RadioGroup/RadioGroupLegend.js +37 -0
  415. package/RadioGroup/index.d.ts +134 -0
  416. package/RadioGroup/index.js +62 -0
  417. package/Selectbox/index.d.ts +18 -2
  418. package/Selectbox/index.js +23 -7
  419. package/Stack/index.d.ts +62 -0
  420. package/Stack/index.js +38 -0
  421. package/Surface/SurfaceContainer.js +6 -0
  422. package/Surface/index.js +7 -3
  423. package/Swiper/Swiper.d.ts +28 -2
  424. package/Swiper/Swiper.js +233 -90
  425. package/Swiper/SwiperContainer.js +0 -2
  426. package/Swiper/SwiperSlidesRenderer.d.ts +8 -0
  427. package/Swiper/SwiperSlidesRenderer.js +17 -14
  428. package/Swiper/SwiperTrack.d.ts +8 -0
  429. package/Swiper/SwiperTrack.js +8 -3
  430. package/Swiper/SwiperWrapper.js +9 -1
  431. package/Switch/SwitchContainer.d.ts +1 -1
  432. package/Switch/SwitchContainer.js +5 -5
  433. package/Switch/SwitchDot.js +13 -53
  434. package/Switch/SwitchToggleWrapper.d.ts +1 -1
  435. package/Switch/SwitchToggleWrapper.js +5 -6
  436. package/Switch/SwitchTrack.js +5 -41
  437. package/Switch/index.d.ts +4 -4
  438. package/Switch/index.js +21 -11
  439. package/Switch/useSwitchColor.d.ts +7 -0
  440. package/Switch/useSwitchColor.js +33 -0
  441. package/Table/Table.d.ts +6 -0
  442. package/Table/Table.js +7 -62
  443. package/Table/TableBody.d.ts +1 -1
  444. package/Table/TableBody.js +4 -2
  445. package/Table/TableCaption.d.ts +2 -2
  446. package/Table/TableCaption.js +2 -3
  447. package/Table/TableCell.js +2 -5
  448. package/Table/TableFooter.js +8 -7
  449. package/Table/TableHeader.js +6 -2
  450. package/Table/TableHeaderCell.js +8 -9
  451. package/Table/TableRow.js +1 -5
  452. package/TextArea/TextAreaIconWrapper.d.ts +1 -1
  453. package/TextArea/TextAreaInput.js +2 -0
  454. package/TextArea/index.js +1 -1
  455. package/TextField/TextFieldInput.js +2 -0
  456. package/TextField/TextFieldInputWrapper.d.ts +2 -0
  457. package/TextField/TextFieldInputWrapper.js +12 -2
  458. package/TextField/index.js +1 -1
  459. package/ThemeProvider/createTheme.js +2 -3
  460. package/ThemeProvider/index.d.ts +19 -2
  461. package/Typography/Base.d.ts +1 -1
  462. package/Typography/Base.js +1 -1
  463. package/Typography/Blockquote.js +1 -1
  464. package/Typography/Del.js +2 -2
  465. package/Typography/H4.js +1 -1
  466. package/Typography/H5.js +2 -2
  467. package/Typography/H6.d.ts +4 -0
  468. package/Typography/H6.js +28 -0
  469. package/Typography/SectionDescription.js +0 -1
  470. package/Typography/SectionTitle.d.ts +4 -7
  471. package/Typography/SectionTitle.js +26 -8
  472. package/Typography/index.d.ts +27 -0
  473. package/Typography/index.js +35 -0
  474. package/package.json +2 -4
  475. package/utils/spacing.d.ts +11 -0
  476. package/utils/spacing.js +14 -0
  477. package/Autocomplete/OverrideMenuList.d.ts +0 -4
  478. package/Autocomplete/OverrideMenuList.js +0 -39
  479. package/Autocomplete2/Autocomplete2.d.ts +0 -12
  480. package/Autocomplete2/Autocomplete2.js +0 -83
  481. package/Autocomplete2/Autocomplete2TextField.d.ts +0 -7
  482. package/Autocomplete2/index.d.ts +0 -2
  483. package/Autocomplete2/index.js +0 -7
  484. package/CountryFlags/SwiperOverview.d.ts +0 -257
  485. package/CountryFlags/SwiperOverview.js +0 -524
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ const react_1 = __importDefault(require("react"));
18
+ const styled_1 = __importDefault(require("@emotion/styled"));
19
+ const StyledLegend = styled_1.default.legend `
20
+ float: left;
21
+ width: 100%;
22
+ padding: 0;
23
+ margin-bottom: 0.25em;
24
+ font-size: 0.86em;
25
+ font-weight: 600;
26
+ color: ${({ theme }) => theme.color.textPrimary.toString()};
27
+
28
+ /* The floated legend does not break the flex layout of the fieldset */
29
+ & + * {
30
+ clear: both;
31
+ }
32
+ `;
33
+ const RadioGroupLegend = (props, ref) => {
34
+ const { children } = props, nativeProps = __rest(props, ["children"]);
35
+ return (react_1.default.createElement(StyledLegend, Object.assign({}, nativeProps, { ref: ref }), children));
36
+ };
37
+ exports.default = react_1.default.forwardRef(RadioGroupLegend);
@@ -0,0 +1,134 @@
1
+ import React from 'react';
2
+ import { RadioGroupContainerProps } from './RadioGroupContainer';
3
+ import { RadioGroupLegendProps } from './RadioGroupLegend';
4
+ import { RadioGroupItemsProps, RadioGroupOrientation } from './RadioGroupItems';
5
+ import { RadioGroupAsteriskProps } from './RadioGroupAsterisk';
6
+ import { RadioGroupErrorTextProps } from './RadioGroupErrorText';
7
+ export type { RadioGroupOrientation };
8
+ export type RadioGroupProps = Omit<RadioGroupContainerProps, 'onChange' | 'defaultValue' | 'color'> & {
9
+ /**
10
+ * The name of the radio buttons. Generated if not passed
11
+ */
12
+ readonly name?: string;
13
+ /**
14
+ * The selected value of the controlled group, `null` — nothing is selected
15
+ */
16
+ readonly value?: string | null;
17
+ /**
18
+ * The initially selected value of the uncontrolled group
19
+ */
20
+ readonly defaultValue?: string | null;
21
+ /**
22
+ * Called with the value of the selected radio button
23
+ */
24
+ readonly onChange?: (value: string, event: React.ChangeEvent<HTMLInputElement>) => void;
25
+ /**
26
+ * The title of the group (`<legend>`)
27
+ */
28
+ readonly label?: React.ReactNode;
29
+ /**
30
+ * **Default:** `vertical`
31
+ */
32
+ readonly orientation?: RadioGroupOrientation;
33
+ /**
34
+ * The color of all the radio buttons
35
+ */
36
+ readonly color?: 'default' | 'primary' | 'secondary' | string;
37
+ /**
38
+ * Disables all the radio buttons
39
+ */
40
+ readonly disabled?: boolean;
41
+ /**
42
+ * The native `required` of the radio buttons: the browser does not submit the form without a choice
43
+ */
44
+ readonly required?: boolean;
45
+ /**
46
+ * If is true then the asterisk will be displayed after the label\
47
+ * If is ReactNode then ReactNode will be displayed
48
+ */
49
+ readonly requiredAsterisk?: boolean | React.ReactNode;
50
+ /**
51
+ * Paints the radio buttons with the error color and shows `errorText`
52
+ */
53
+ readonly error?: boolean;
54
+ /**
55
+ * Text or ReactNode to show under the group when `error` is true
56
+ */
57
+ readonly errorText?: React.ReactNode;
58
+ readonly overrides?: RadioGroupOverrides;
59
+ };
60
+ export interface RadioGroupOverrides {
61
+ /**
62
+ * The `<fieldset>` element
63
+ */
64
+ readonly Container?: React.ComponentType<RadioGroupContainerProps & React.RefAttributes<HTMLFieldSetElement>>;
65
+ /**
66
+ * The `<legend>` with the label
67
+ */
68
+ readonly Legend?: React.ComponentType<RadioGroupLegendProps & React.RefAttributes<HTMLLegendElement>>;
69
+ /**
70
+ * The asterisk of the required group
71
+ */
72
+ readonly Asterisk?: React.ComponentType<RadioGroupAsteriskProps & React.RefAttributes<HTMLSpanElement>>;
73
+ /**
74
+ * The wrapper of the radio buttons
75
+ */
76
+ readonly Items?: React.ComponentType<RadioGroupItemsProps & React.RefAttributes<HTMLDivElement>>;
77
+ /**
78
+ * The error text
79
+ */
80
+ readonly ErrorText?: React.ComponentType<RadioGroupErrorTextProps & React.RefAttributes<HTMLDivElement>>;
81
+ }
82
+ declare const _default: React.ForwardRefExoticComponent<Omit<RadioGroupContainerProps, "color" | "defaultValue" | "onChange"> & {
83
+ /**
84
+ * The name of the radio buttons. Generated if not passed
85
+ */
86
+ readonly name?: string | undefined;
87
+ /**
88
+ * The selected value of the controlled group, `null` — nothing is selected
89
+ */
90
+ readonly value?: string | null | undefined;
91
+ /**
92
+ * The initially selected value of the uncontrolled group
93
+ */
94
+ readonly defaultValue?: string | null | undefined;
95
+ /**
96
+ * Called with the value of the selected radio button
97
+ */
98
+ readonly onChange?: ((value: string, event: React.ChangeEvent<HTMLInputElement>) => void) | undefined;
99
+ /**
100
+ * The title of the group (`<legend>`)
101
+ */
102
+ readonly label?: React.ReactNode;
103
+ /**
104
+ * **Default:** `vertical`
105
+ */
106
+ readonly orientation?: RadioGroupOrientation | undefined;
107
+ /**
108
+ * The color of all the radio buttons
109
+ */
110
+ readonly color?: string | undefined;
111
+ /**
112
+ * Disables all the radio buttons
113
+ */
114
+ readonly disabled?: boolean | undefined;
115
+ /**
116
+ * The native `required` of the radio buttons: the browser does not submit the form without a choice
117
+ */
118
+ readonly required?: boolean | undefined;
119
+ /**
120
+ * If is true then the asterisk will be displayed after the label\
121
+ * If is ReactNode then ReactNode will be displayed
122
+ */
123
+ readonly requiredAsterisk?: React.ReactNode;
124
+ /**
125
+ * Paints the radio buttons with the error color and shows `errorText`
126
+ */
127
+ readonly error?: boolean | undefined;
128
+ /**
129
+ * Text or ReactNode to show under the group when `error` is true
130
+ */
131
+ readonly errorText?: React.ReactNode;
132
+ readonly overrides?: RadioGroupOverrides | undefined;
133
+ } & React.RefAttributes<HTMLFieldSetElement>>;
134
+ export default _default;
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ const react_1 = __importDefault(require("react"));
18
+ const RadioGroupContainer_1 = __importDefault(require("./RadioGroupContainer"));
19
+ const RadioGroupLegend_1 = __importDefault(require("./RadioGroupLegend"));
20
+ const RadioGroupItems_1 = __importDefault(require("./RadioGroupItems"));
21
+ const RadioGroupAsterisk_1 = __importDefault(require("./RadioGroupAsterisk"));
22
+ const RadioGroupErrorText_1 = __importDefault(require("./RadioGroupErrorText"));
23
+ const RadioGroupContext_1 = __importDefault(require("./RadioGroupContext"));
24
+ const RadioGroup = (props, ref) => {
25
+ const { children, name: inputName, value, defaultValue, onChange, label, orientation = 'vertical', color, disabled, required, requiredAsterisk, error, errorText, overrides } = props, nativeProps = __rest(props, ["children", "name", "value", "defaultValue", "onChange", "label", "orientation", "color", "disabled", "required", "requiredAsterisk", "error", "errorText", "overrides"]);
26
+ const id = react_1.default.useId().replace(/:/g, '');
27
+ const name = inputName !== null && inputName !== void 0 ? inputName : `radio-group-${id}`;
28
+ const legendID = `radio-group-${id}-legend`;
29
+ const errorID = `radio-group-${id}-error`;
30
+ const hasErrorText = Boolean(error) && typeof errorText !== 'undefined';
31
+ const overridesMap = react_1.default.useMemo(() => ({
32
+ Container: (overrides === null || overrides === void 0 ? void 0 : overrides.Container) || RadioGroupContainer_1.default,
33
+ Legend: (overrides === null || overrides === void 0 ? void 0 : overrides.Legend) || RadioGroupLegend_1.default,
34
+ Asterisk: (overrides === null || overrides === void 0 ? void 0 : overrides.Asterisk) || RadioGroupAsterisk_1.default,
35
+ Items: (overrides === null || overrides === void 0 ? void 0 : overrides.Items) || RadioGroupItems_1.default,
36
+ ErrorText: (overrides === null || overrides === void 0 ? void 0 : overrides.ErrorText) || RadioGroupErrorText_1.default,
37
+ }), [overrides]);
38
+ // The latest handler, so the context does not change on every render
39
+ const onChangeRef = react_1.default.useRef(onChange);
40
+ onChangeRef.current = onChange;
41
+ const handleChange = react_1.default.useCallback((selected, event) => { var _a; return (_a = onChangeRef.current) === null || _a === void 0 ? void 0 : _a.call(onChangeRef, selected, event); }, []);
42
+ // The initial value of the uncontrolled group, read once
43
+ const [initialValue] = react_1.default.useState(defaultValue);
44
+ const contextValue = react_1.default.useMemo(() => ({
45
+ name,
46
+ value,
47
+ defaultValue: initialValue,
48
+ onChange: handleChange,
49
+ disabled,
50
+ required,
51
+ error,
52
+ color,
53
+ }), [name, value, initialValue, handleChange, disabled, required, error, color]);
54
+ return (react_1.default.createElement(RadioGroupContext_1.default.Provider, { value: contextValue },
55
+ react_1.default.createElement(overridesMap.Container, Object.assign({ role: "radiogroup", "aria-labelledby": typeof label !== 'undefined' ? legendID : undefined, "aria-required": required || undefined, "aria-invalid": error || undefined, "aria-describedby": hasErrorText ? errorID : undefined, disabled: disabled }, nativeProps, { ref: ref }),
56
+ typeof label !== 'undefined' && (react_1.default.createElement(overridesMap.Legend, { id: legendID },
57
+ label,
58
+ requiredAsterisk != null && requiredAsterisk !== false && (react_1.default.createElement(overridesMap.Asterisk, { "aria-hidden": true }, typeof requiredAsterisk === 'boolean' ? '*' : requiredAsterisk)))),
59
+ react_1.default.createElement(overridesMap.Items, { orientation: orientation }, children),
60
+ typeof errorText !== 'undefined' && (react_1.default.createElement(overridesMap.ErrorText, { id: errorID, error: error }, errorText)))));
61
+ };
62
+ exports.default = react_1.default.forwardRef(RadioGroup);
@@ -33,7 +33,7 @@ export interface SelectboxProps<T, Multiple extends boolean | undefined = undefi
33
33
  /**
34
34
  * Anchor position\
35
35
  * \
36
- * Default: `bottom`
36
+ * Default: `bottom-fill`
37
37
  */
38
38
  readonly anchorPos?: AnchorPos;
39
39
  readonly positionStrategy?: PositionStrategy;
@@ -94,6 +94,21 @@ export interface SelectboxProps<T, Multiple extends boolean | undefined = undefi
94
94
  * ```
95
95
  */
96
96
  readonly selectedItemToString: ItemToString<T, Multiple>;
97
+ /**
98
+ * Renders the button content for the selected value instead of `selectedItemToString`,
99
+ * e.g. badges for the multiple selectbox.\
100
+ * Not called when nothing is selected, `notSetLabel` is shown then.\
101
+ * Do not render interactive elements (buttons, links): the content is placed inside a `<button>`
102
+ * Example:
103
+ * ```tsx
104
+ * <Selectbox
105
+ * multiple
106
+ * renderValue={items => items.map(item => <Badge key={item.id}>{item.name}</Badge>)}
107
+ * ...
108
+ * />
109
+ * ```
110
+ */
111
+ readonly renderValue?: RenderValue<T, Multiple>;
97
112
  /**
98
113
  * A function that determines which of the elements is currently selected\
99
114
  * Example:
@@ -135,7 +150,7 @@ export interface SelectboxOverrides {
135
150
  /**
136
151
  * Icon
137
152
  */
138
- readonly Icon?: React.ComponentType<SelectboxChevronIconProps & React.RefAttributes<SVGElement>>;
153
+ readonly Icon?: React.ComponentType<Omit<SelectboxChevronIconProps, 'ref'> & React.RefAttributes<SVGSVGElement>>;
139
154
  /**
140
155
  * Component for display error text
141
156
  */
@@ -158,6 +173,7 @@ export type Children<T> = (data: {
158
173
  index: number;
159
174
  }, itemProps: MenuItemProps) => React.ReactNode;
160
175
  export type ItemToString<T, Multiple extends boolean | undefined = undefined> = (item: Multiple extends undefined ? T : readonly T[]) => string;
176
+ export type RenderValue<T, Multiple extends boolean | undefined = undefined> = (value: Multiple extends undefined ? T : readonly T[]) => React.ReactNode;
161
177
  export type OnChange<T, Multiple extends boolean | undefined = undefined> = (item: Value<T, Multiple>) => void;
162
178
  declare const _default: <T, Multiple extends boolean | undefined = undefined>(props: SelectboxProps<T, Multiple> & {
163
179
  ref?: React.ForwardedRef<HTMLButtonElement> | undefined;
@@ -61,19 +61,22 @@ const DEFAULT_OVERRIDES = {
61
61
  Container: SelectboxContainer_1.default,
62
62
  };
63
63
  const Selectbox = React.forwardRef((props, ref) => {
64
- const { items, value, multiple, isOpen = false, isLoading = false, anchorPos = 'bottom-fill', fullWidth = false, children, onChange, selectedItemToString, getOptionSelected, onRequestOpen = () => undefined, onRequestClose = () => undefined, overrides, id, label, requiredAsterisk, error, errorText, notSetLabel = 'Not set', autoFlip = true, positionStrategy } = props, nativeButtonProps = __rest(props, ["items", "value", "multiple", "isOpen", "isLoading", "anchorPos", "fullWidth", "children", "onChange", "selectedItemToString", "getOptionSelected", "onRequestOpen", "onRequestClose", "overrides", "id", "label", "requiredAsterisk", "error", "errorText", "notSetLabel", "autoFlip", "positionStrategy"]);
64
+ const { items, value, multiple, isOpen = false, isLoading = false, anchorPos = 'bottom-fill', fullWidth = false, children, onChange, selectedItemToString, renderValue, getOptionSelected, onRequestOpen = () => undefined, onRequestClose = () => undefined, overrides, id, label, requiredAsterisk, error, errorText, notSetLabel = 'Not set', autoFlip = true, positionStrategy } = props, nativeButtonProps = __rest(props, ["items", "value", "multiple", "isOpen", "isLoading", "anchorPos", "fullWidth", "children", "onChange", "selectedItemToString", "renderValue", "getOptionSelected", "onRequestOpen", "onRequestClose", "overrides", "id", "label", "requiredAsterisk", "error", "errorText", "notSetLabel", "autoFlip", "positionStrategy"]);
65
65
  const menuRef = React.useRef(null);
66
66
  const [anchorElement, setAnchorElement] = React.useState(null);
67
67
  const overridesMap = React.useMemo(() => (Object.assign(Object.assign({}, DEFAULT_OVERRIDES), overrides)), [overrides]);
68
68
  // useId is stable between server and client renders
69
69
  const generatedID = React.useId();
70
70
  const inputID = typeof id === 'string' ? id : generatedID;
71
- const renderValueAsString = React.useCallback(() => {
72
- if ((!multiple && !value) || (multiple && value.length === 0)) {
71
+ const renderButtonContent = React.useCallback(() => {
72
+ if ((!multiple && value == null) || (multiple && value.length === 0)) {
73
73
  return notSetLabel;
74
74
  }
75
- return selectedItemToString(value);
76
- }, [multiple, selectedItemToString, value, notSetLabel]);
75
+ const selected = value;
76
+ return typeof renderValue === 'function'
77
+ ? renderValue(selected)
78
+ : selectedItemToString(selected);
79
+ }, [multiple, selectedItemToString, renderValue, value, notSetLabel]);
77
80
  const handleButtonClick = React.useCallback((event) => {
78
81
  var _a;
79
82
  if (isOpen) {
@@ -84,6 +87,17 @@ const Selectbox = React.forwardRef((props, ref) => {
84
87
  }
85
88
  (_a = nativeButtonProps.onClick) === null || _a === void 0 ? void 0 : _a.call(nativeButtonProps, event);
86
89
  }, [isOpen, nativeButtonProps, onRequestClose, onRequestOpen]);
90
+ // As a native select, the arrows open the list; the list then takes the focus
91
+ const handleButtonKeyDown = React.useCallback((event) => {
92
+ var _a;
93
+ (_a = nativeButtonProps.onKeyDown) === null || _a === void 0 ? void 0 : _a.call(nativeButtonProps, event);
94
+ if (!isOpen &&
95
+ !event.defaultPrevented &&
96
+ (event.key === 'ArrowDown' || event.key === 'ArrowUp')) {
97
+ event.preventDefault();
98
+ onRequestOpen(event);
99
+ }
100
+ }, [isOpen, nativeButtonProps, onRequestOpen]);
87
101
  const setRefs = React.useCallback((el) => {
88
102
  if (anchorElement !== el) {
89
103
  setAnchorElement(el);
@@ -123,7 +137,9 @@ const Selectbox = React.forwardRef((props, ref) => {
123
137
  const buttonProps = React.useMemo(() => (Object.assign({ fullWidth,
124
138
  error,
125
139
  isOpen,
126
- anchorPos, endIcon: isLoading ? React.createElement(Spinner_1.default, null) : React.createElement(overridesMap.Icon, { isOpen: isOpen }) }, nativeButtonProps)), [fullWidth, error, isOpen, anchorPos, isLoading, overridesMap, nativeButtonProps]);
140
+ anchorPos,
141
+ // The static indicator: the default one is an overlay over the nearest positioned ancestor
142
+ endIcon: isLoading ? React.createElement(Spinner_1.default, { size: "1.2em" }) : React.createElement(overridesMap.Icon, { isOpen: isOpen }) }, nativeButtonProps)), [fullWidth, error, isOpen, anchorPos, isLoading, overridesMap, nativeButtonProps]);
127
143
  const labelProps = React.useMemo(() => ({
128
144
  htmlFor: inputID,
129
145
  error,
@@ -133,7 +149,7 @@ const Selectbox = React.forwardRef((props, ref) => {
133
149
  label,
134
150
  requiredAsterisk != null && requiredAsterisk !== false && (React.createElement(overridesMap.Asterisk, null, typeof requiredAsterisk === 'boolean' ? '*' : requiredAsterisk)))),
135
151
  React.createElement(overridesMap.ButtonWrapper, { fullWidth: fullWidth, error: error, isOpen: isOpen },
136
- React.createElement(overridesMap.Button, Object.assign({}, buttonProps, { id: inputID, onClick: handleButtonClick, ref: setRefs }), renderValueAsString())),
152
+ React.createElement(overridesMap.Button, Object.assign({}, buttonProps, { id: inputID, onClick: handleButtonClick, onKeyDown: handleButtonKeyDown, ref: setRefs }), renderButtonContent())),
137
153
  React.createElement(overridesMap.ErrorText, { error: error }, errorText),
138
154
  React.createElement(SelectboxMenu_1.default, { multiple: multiple, items: items, value: value, isOpen: isOpen, anchorPos: anchorPos, positionStrategy: positionStrategy, autoFlip: autoFlip, alternativePlacements: ['bottom-fill', 'top-fill'], anchorElement: anchorElement, getOptionSelected: getOptionSelected, onChange: onChange, onRequestClose: onRequestClose, ref: menuRef }, children)));
139
155
  });
@@ -0,0 +1,62 @@
1
+ import React from 'react';
2
+ import { Spacing } from '../utils/spacing';
3
+ export type { Spacing };
4
+ export type StackProps = React.HTMLAttributes<HTMLDivElement> & {
5
+ /**
6
+ * `column` — the elements go one under another, `row` — in a line\
7
+ * **Default:** `column`
8
+ */
9
+ readonly direction?: 'column' | 'row';
10
+ /**
11
+ * The gap between the elements: a step of the theme spacing scale or any CSS length\
12
+ * **Default:** `md`
13
+ */
14
+ readonly gap?: Spacing;
15
+ /**
16
+ * The alignment across the direction (`align-items`)\
17
+ * **Default:** `stretch` for the column, `center` for the row
18
+ */
19
+ readonly align?: React.CSSProperties['alignItems'];
20
+ /**
21
+ * The alignment along the direction (`justify-content`)
22
+ */
23
+ readonly justify?: React.CSSProperties['justifyContent'];
24
+ /**
25
+ * The elements of the row wrap to the next line when they do not fit
26
+ */
27
+ readonly wrap?: boolean;
28
+ /**
29
+ * The stack takes the width of its content (`inline-flex`) instead of the full width
30
+ */
31
+ readonly inline?: boolean;
32
+ };
33
+ declare const _default: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
34
+ /**
35
+ * `column` — the elements go one under another, `row` — in a line\
36
+ * **Default:** `column`
37
+ */
38
+ readonly direction?: "row" | "column" | undefined;
39
+ /**
40
+ * The gap between the elements: a step of the theme spacing scale or any CSS length\
41
+ * **Default:** `md`
42
+ */
43
+ readonly gap?: Spacing | undefined;
44
+ /**
45
+ * The alignment across the direction (`align-items`)\
46
+ * **Default:** `stretch` for the column, `center` for the row
47
+ */
48
+ readonly align?: import("csstype").Property.AlignItems | undefined;
49
+ /**
50
+ * The alignment along the direction (`justify-content`)
51
+ */
52
+ readonly justify?: import("csstype").Property.JustifyContent | undefined;
53
+ /**
54
+ * The elements of the row wrap to the next line when they do not fit
55
+ */
56
+ readonly wrap?: boolean | undefined;
57
+ /**
58
+ * The stack takes the width of its content (`inline-flex`) instead of the full width
59
+ */
60
+ readonly inline?: boolean | undefined;
61
+ } & React.RefAttributes<HTMLDivElement>>;
62
+ export default _default;
package/Stack/index.js ADDED
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ const react_1 = __importDefault(require("react"));
18
+ const styled_1 = __importDefault(require("@emotion/styled"));
19
+ const spacing_1 = require("../utils/spacing");
20
+ const StyledStack = styled_1.default.div `
21
+ display: ${({ $inline }) => ($inline ? 'inline-flex' : 'flex')};
22
+ flex-direction: ${({ $direction }) => $direction};
23
+ flex-wrap: ${({ $wrap }) => ($wrap ? 'wrap' : 'nowrap')};
24
+ align-items: ${({ $align, $direction }) => $align !== null && $align !== void 0 ? $align : ($direction === 'row' ? 'center' : 'stretch')};
25
+ justify-content: ${({ $justify }) => $justify !== null && $justify !== void 0 ? $justify : 'flex-start'};
26
+ gap: ${({ theme, $gap }) => (0, spacing_1.resolveSpacing)(theme, $gap)};
27
+ /* A flex child shrinks below its content only with min-width: 0 */
28
+ min-width: 0;
29
+ `;
30
+ /**
31
+ * The elements in a column or in a row with the same gap between them.
32
+ * The children stay the plain elements: no wrappers for the items
33
+ */
34
+ const Stack = (props, ref) => {
35
+ const { children, direction = 'column', gap = 'md', align, justify, wrap = false, inline = false } = props, nativeProps = __rest(props, ["children", "direction", "gap", "align", "justify", "wrap", "inline"]);
36
+ return (react_1.default.createElement(StyledStack, Object.assign({}, nativeProps, { "$direction": direction, "$gap": gap, "$align": align, "$justify": justify, "$wrap": wrap, "$inline": inline, ref: ref }), children));
37
+ };
38
+ exports.default = react_1.default.forwardRef(Stack);
@@ -31,6 +31,12 @@ const StyledSurfaceContainer = styled_1.default.div `
31
31
  (0, react_2.css) `
32
32
  border-radius: 100%;
33
33
  `}
34
+
35
+ ${({ $noPadding }) => $noPadding &&
36
+ (0, react_2.css) `
37
+ /* The content reaches the edges, so it must follow the rounded corners */
38
+ overflow: hidden;
39
+ `}
34
40
  `;
35
41
  const SurfaceContainer = (props, ref) => {
36
42
  const { inline, children, rounded, noPadding } = props, nativeProps = __rest(props, ["inline", "children", "rounded", "noPadding"]);
package/Surface/index.js CHANGED
@@ -55,9 +55,13 @@ const Surface = (props, ref) => {
55
55
  Content: (overrides === null || overrides === void 0 ? void 0 : overrides.Content) || SurfaceContent_1.default,
56
56
  Footer: (overrides === null || overrides === void 0 ? void 0 : overrides.Footer) || SurfaceFooter_1.default,
57
57
  }), [overrides]);
58
- if (!hasHeader && hasSubheader) {
59
- console.warn('[@via-profit/ui-kit] Surface component. If you use a subheader, then you should add a header');
60
- }
58
+ // Warn once when the combination appears, not on every render
59
+ const isSubheaderWithoutHeader = !hasHeader && hasSubheader;
60
+ React.useEffect(() => {
61
+ if (isSubheaderWithoutHeader) {
62
+ console.warn('[@via-profit/ui-kit] Surface component. If you use a subheader, then you should add a header');
63
+ }
64
+ }, [isSubheaderWithoutHeader]);
61
65
  return (React.createElement(overridesMap.Container, Object.assign({}, nativeProps, { inline: inline, noPadding: noPadding, rounded: rounded, ref: ref }),
62
66
  hasHeader && (React.createElement(overridesMap.Header, { noPadding: noPadding, rounded: rounded }, header)),
63
67
  hasSubheader && (React.createElement(overridesMap.Subheader, { noPadding: noPadding, rounded: rounded }, subheader)),
@@ -33,7 +33,20 @@ export type SwiperProps = Omit<React.HTMLAttributes<HTMLDivElement>, 'children'>
33
33
  readonly threshold?: number;
34
34
  readonly resistance?: boolean;
35
35
  readonly slidesPerView?: number;
36
- readonly children?: readonly SwiperSlideBaseElement[];
36
+ /**
37
+ * Arrow keys switch the slides when the swiper is focused\
38
+ * **Default:** `true`
39
+ */
40
+ readonly keyboardControl?: boolean;
41
+ /**
42
+ * The label of the slide for screen readers\
43
+ * **Default:** `(index, total) => \`${index + 1} / ${total}\``
44
+ */
45
+ readonly slideLabel?: (index: number, total: number) => string;
46
+ /**
47
+ * The slides: `<SwiperSlide>` elements. `null`, `false` and other non-elements are skipped
48
+ */
49
+ readonly children?: React.ReactNode;
37
50
  readonly overrides?: SwiperOverrides;
38
51
  };
39
52
  export declare const Swiper: React.ForwardRefExoticComponent<Omit<React.HTMLAttributes<HTMLDivElement>, "children"> & {
@@ -49,7 +62,20 @@ export declare const Swiper: React.ForwardRefExoticComponent<Omit<React.HTMLAttr
49
62
  readonly threshold?: number | undefined;
50
63
  readonly resistance?: boolean | undefined;
51
64
  readonly slidesPerView?: number | undefined;
52
- readonly children?: readonly SwiperSlideBaseElement[] | undefined;
65
+ /**
66
+ * Arrow keys switch the slides when the swiper is focused\
67
+ * **Default:** `true`
68
+ */
69
+ readonly keyboardControl?: boolean | undefined;
70
+ /**
71
+ * The label of the slide for screen readers\
72
+ * **Default:** `(index, total) => \`${index + 1} / ${total}\``
73
+ */
74
+ readonly slideLabel?: ((index: number, total: number) => string) | undefined;
75
+ /**
76
+ * The slides: `<SwiperSlide>` elements. `null`, `false` and other non-elements are skipped
77
+ */
78
+ readonly children?: React.ReactNode;
53
79
  readonly overrides?: SwiperOverrides | undefined;
54
80
  } & React.RefAttributes<SwiperRef>>;
55
81
  export default Swiper;