venice-ui 2.4.13 → 3.0.2

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 (396) hide show
  1. package/dist/cjs/components/ActionPanel/ActionPanel.js +33 -0
  2. package/dist/cjs/components/ActionPanel/ActionPanel.styles.js +76 -0
  3. package/dist/cjs/components/ActionPanel/index.js +17 -0
  4. package/dist/cjs/components/Button/Button.js +17 -7
  5. package/dist/cjs/components/Button/Button.styles.js +46 -66
  6. package/dist/cjs/components/Button/index.js +15 -3
  7. package/dist/cjs/components/ButtonsFooter/ButtonsFooter.js +32 -21
  8. package/dist/cjs/components/ButtonsFooter/ButtonsFooter.styles.js +21 -0
  9. package/dist/cjs/components/ButtonsFooter/index.js +15 -3
  10. package/dist/cjs/components/Card/Card.js +15 -9
  11. package/dist/cjs/components/Card/Card.styles.js +9 -10
  12. package/dist/cjs/components/Card/index.js +15 -3
  13. package/dist/cjs/components/Checkbox/Checkbox.js +30 -13
  14. package/dist/cjs/components/Checkbox/Checkbox.styles.js +35 -20
  15. package/dist/cjs/components/ComponentRoot/ComponentRoot.js +27 -0
  16. package/dist/cjs/components/ComponentRoot/ComponentRoot.styles.js +72 -0
  17. package/dist/cjs/components/{ElementHeader → ComponentRoot}/index.js +2 -1
  18. package/dist/cjs/components/DatePicker/Calendar.js +73 -33
  19. package/dist/cjs/components/DatePicker/CalendarContent.js +58 -39
  20. package/dist/cjs/components/DatePicker/CalendarHeader.js +23 -20
  21. package/dist/cjs/components/DatePicker/DatePicker.js +61 -35
  22. package/dist/cjs/components/DatePicker/DatePicker.styles.js +166 -0
  23. package/dist/cjs/components/DatePicker/index.js +5 -15
  24. package/dist/cjs/components/Dropdown/Dropdown.js +76 -52
  25. package/dist/cjs/components/Dropdown/Dropdown.styles.js +48 -7
  26. package/dist/cjs/components/Dropdown/index.js +0 -1
  27. package/dist/cjs/components/DropdownMenu/DropdownMenu.js +79 -50
  28. package/dist/cjs/components/DropdownMenu/DropdownMenu.styles.js +10 -44
  29. package/dist/cjs/components/File/File.js +60 -24
  30. package/dist/cjs/components/File/File.styles.js +44 -3
  31. package/dist/cjs/components/Filters/Filters.js +253 -92
  32. package/dist/cjs/components/Filters/Filters.styles.js +83 -15
  33. package/dist/cjs/components/Form/Form.js +24 -30
  34. package/dist/cjs/components/Form/{FormElements.js → Form.styles.js} +8 -10
  35. package/dist/cjs/components/Header/Header.js +49 -0
  36. package/dist/cjs/components/Header/Header.styles.js +33 -0
  37. package/dist/cjs/components/{Toogle → Header}/index.js +1 -1
  38. package/dist/cjs/components/HelperText/HelperText.js +18 -0
  39. package/dist/cjs/components/HelperText/HelperText.styles.js +20 -0
  40. package/dist/cjs/components/{FillSelect → HelperText}/index.js +1 -1
  41. package/dist/cjs/components/Icon/Icon.js +74 -0
  42. package/dist/cjs/components/Icon/Icon.styles.js +63 -0
  43. package/dist/cjs/components/{Icons → Icon}/IconsPath.js +3 -0
  44. package/dist/cjs/{Theme → components/Icon}/index.js +1 -1
  45. package/dist/cjs/components/Input/Input.js +58 -74
  46. package/dist/cjs/components/Input/Input.styles.js +38 -89
  47. package/dist/cjs/components/Input/index.js +0 -1
  48. package/dist/cjs/components/Label/Label.js +24 -0
  49. package/dist/cjs/components/Label/Label.styles.js +38 -0
  50. package/dist/cjs/components/Label/index.js +5 -0
  51. package/dist/cjs/components/List/List.js +104 -101
  52. package/dist/cjs/components/List/iLst.styles.js +68 -0
  53. package/dist/cjs/components/Loader/Loader.js +12 -9
  54. package/dist/cjs/components/Loader/Loader.styles.js +15 -75
  55. package/dist/cjs/components/Modal/Modal.js +32 -34
  56. package/dist/cjs/components/Modal/Modal.styles.js +82 -24
  57. package/dist/cjs/components/Modal/index.js +15 -3
  58. package/dist/cjs/components/Numerical/Numerical.js +138 -0
  59. package/dist/cjs/components/Numerical/index.js +5 -0
  60. package/dist/cjs/components/OptionsPanel/OptionsPanel.js +79 -0
  61. package/dist/cjs/components/OptionsPanel/OptionsPanel.styles.js +75 -0
  62. package/dist/cjs/components/OptionsPanel/index.js +17 -0
  63. package/dist/cjs/components/Pagination/Pagination.js +39 -29
  64. package/dist/cjs/components/Pagination/Pagination.styles.js +45 -19
  65. package/dist/cjs/components/SearchInput/SearchInput.js +83 -0
  66. package/dist/cjs/components/SearchInput/SearchInput.styles.js +50 -0
  67. package/dist/cjs/components/SearchInput/index.js +17 -0
  68. package/dist/cjs/components/Section/Section.js +15 -8
  69. package/dist/cjs/components/Section/Section.styles.js +13 -12
  70. package/dist/cjs/components/Section/index.js +1 -0
  71. package/dist/cjs/components/Selector/Selector.js +38 -25
  72. package/dist/cjs/components/Selector/Selector.styles.js +28 -56
  73. package/dist/cjs/components/Sidepanel/Sidepanel.js +47 -23
  74. package/dist/cjs/components/Sidepanel/Sidepanel.styles.js +85 -14
  75. package/dist/cjs/components/Sort/Sort.js +19 -16
  76. package/dist/cjs/components/Sort/Sort.styles.js +5 -19
  77. package/dist/cjs/components/Table/Cell.js +23 -13
  78. package/dist/cjs/components/Table/HeaderCell.js +14 -7
  79. package/dist/cjs/components/Table/Table.js +62 -43
  80. package/dist/cjs/components/Table/Table.styles.js +143 -43
  81. package/dist/cjs/components/Table/index.js +2 -0
  82. package/dist/cjs/components/Tag/Tag.js +24 -0
  83. package/dist/cjs/components/Tag/Tag.styles.js +23 -0
  84. package/dist/cjs/components/{Chips → Tag}/index.js +1 -1
  85. package/dist/cjs/components/Tile/Tile.js +15 -6
  86. package/dist/cjs/components/Tile/Tile.styles.js +15 -18
  87. package/dist/cjs/components/Toggle/Toggle.js +29 -0
  88. package/dist/cjs/components/Toggle/Toggle.styles.js +49 -0
  89. package/dist/cjs/components/{Tooltip → Toggle}/index.js +1 -1
  90. package/dist/cjs/components/Typography/Typography.js +115 -0
  91. package/dist/cjs/components/Typography/index.js +1 -1
  92. package/dist/cjs/config/componentTheme.js +29 -0
  93. package/dist/cjs/config/config.js +1453 -0
  94. package/dist/cjs/config/index.js +20 -0
  95. package/dist/cjs/config/themes.js +64 -0
  96. package/dist/cjs/config/wordbook.js +74 -0
  97. package/dist/cjs/example/Colors.js +57 -8
  98. package/dist/cjs/example/ExampleComponent.js +5 -6
  99. package/dist/cjs/example/Icons.js +63 -0
  100. package/dist/cjs/example/TypographyExample.js +26 -13
  101. package/dist/cjs/index.js +13 -8
  102. package/dist/esm/components/ActionPanel/ActionPanel.js +26 -0
  103. package/dist/esm/components/ActionPanel/ActionPanel.styles.js +70 -0
  104. package/dist/esm/components/ActionPanel/index.js +1 -0
  105. package/dist/esm/components/Button/Button.js +17 -7
  106. package/dist/esm/components/Button/Button.styles.js +45 -65
  107. package/dist/esm/components/Button/index.js +1 -1
  108. package/dist/esm/components/ButtonsFooter/ButtonsFooter.js +32 -21
  109. package/dist/esm/components/ButtonsFooter/ButtonsFooter.styles.js +15 -0
  110. package/dist/esm/components/ButtonsFooter/index.js +1 -1
  111. package/dist/esm/components/Card/Card.js +16 -10
  112. package/dist/esm/components/Card/Card.styles.js +8 -9
  113. package/dist/esm/components/Card/index.js +1 -1
  114. package/dist/esm/components/Checkbox/Checkbox.js +31 -14
  115. package/dist/esm/components/Checkbox/Checkbox.styles.js +34 -19
  116. package/dist/esm/components/ComponentRoot/ComponentRoot.js +20 -0
  117. package/dist/esm/components/ComponentRoot/ComponentRoot.styles.js +66 -0
  118. package/dist/esm/components/ComponentRoot/index.js +2 -0
  119. package/dist/esm/components/DatePicker/Calendar.js +57 -27
  120. package/dist/esm/components/DatePicker/CalendarContent.js +42 -33
  121. package/dist/esm/components/DatePicker/CalendarHeader.js +23 -20
  122. package/dist/esm/components/DatePicker/DatePicker.js +44 -28
  123. package/dist/esm/components/DatePicker/DatePicker.styles.js +130 -0
  124. package/dist/esm/components/DatePicker/index.js +2 -1
  125. package/dist/esm/components/Dropdown/Dropdown.js +61 -47
  126. package/dist/esm/components/Dropdown/Dropdown.styles.js +48 -7
  127. package/dist/esm/components/Dropdown/index.js +0 -1
  128. package/dist/esm/components/DropdownMenu/DropdownMenu.js +64 -45
  129. package/dist/esm/components/DropdownMenu/DropdownMenu.styles.js +9 -43
  130. package/dist/esm/components/File/File.js +44 -18
  131. package/dist/esm/components/File/File.styles.js +44 -3
  132. package/dist/esm/components/Filters/Filters.js +237 -86
  133. package/dist/esm/components/Filters/Filters.styles.js +83 -15
  134. package/dist/esm/components/Form/Form.js +24 -30
  135. package/dist/esm/components/Form/Form.styles.js +20 -0
  136. package/dist/esm/components/Header/Header.js +42 -0
  137. package/dist/esm/components/Header/Header.styles.js +27 -0
  138. package/dist/esm/components/Header/index.js +1 -0
  139. package/dist/esm/components/HelperText/HelperText.js +11 -0
  140. package/dist/esm/components/HelperText/HelperText.styles.js +14 -0
  141. package/dist/esm/components/HelperText/index.js +1 -0
  142. package/dist/esm/components/Icon/Icon.js +37 -0
  143. package/dist/esm/components/Icon/Icon.styles.js +57 -0
  144. package/dist/esm/components/{Icons → Icon}/IconsPath.js +3 -0
  145. package/dist/esm/components/Icon/index.js +1 -0
  146. package/dist/esm/components/Input/Input.js +44 -70
  147. package/dist/esm/components/Input/Input.styles.js +37 -88
  148. package/dist/esm/components/Input/index.js +1 -2
  149. package/dist/esm/components/Label/Label.js +17 -0
  150. package/dist/esm/components/Label/Label.styles.js +32 -0
  151. package/dist/esm/components/Label/index.js +1 -0
  152. package/dist/esm/components/List/List.js +104 -101
  153. package/dist/esm/components/List/iLst.styles.js +62 -0
  154. package/dist/esm/components/Loader/Loader.js +13 -10
  155. package/dist/esm/components/Loader/Loader.styles.js +12 -51
  156. package/dist/esm/components/Modal/Modal.js +30 -12
  157. package/dist/esm/components/Modal/Modal.styles.js +48 -20
  158. package/dist/esm/components/Modal/index.js +1 -1
  159. package/dist/esm/components/Numerical/Numerical.js +101 -0
  160. package/dist/esm/components/Numerical/index.js +1 -0
  161. package/dist/esm/components/OptionsPanel/OptionsPanel.js +42 -0
  162. package/dist/esm/components/OptionsPanel/OptionsPanel.styles.js +69 -0
  163. package/dist/esm/components/OptionsPanel/index.js +1 -0
  164. package/dist/esm/components/Pagination/Pagination.js +39 -29
  165. package/dist/esm/components/Pagination/Pagination.styles.js +44 -18
  166. package/dist/esm/components/SearchInput/SearchInput.js +46 -0
  167. package/dist/esm/components/SearchInput/SearchInput.styles.js +44 -0
  168. package/dist/esm/components/SearchInput/index.js +1 -0
  169. package/dist/esm/components/Section/Section.js +16 -9
  170. package/dist/esm/components/Section/Section.styles.js +12 -11
  171. package/dist/esm/components/Section/index.js +1 -0
  172. package/dist/esm/components/Selector/Selector.js +22 -19
  173. package/dist/esm/components/Selector/Selector.styles.js +27 -55
  174. package/dist/esm/components/Sidepanel/Sidepanel.js +31 -17
  175. package/dist/esm/components/Sidepanel/Sidepanel.styles.js +51 -10
  176. package/dist/esm/components/Sort/Sort.js +20 -17
  177. package/dist/esm/components/Sort/Sort.styles.js +4 -18
  178. package/dist/esm/components/Table/Cell.js +24 -14
  179. package/dist/esm/components/Table/HeaderCell.js +15 -8
  180. package/dist/esm/components/Table/Table.js +47 -38
  181. package/dist/esm/components/Table/Table.styles.js +142 -42
  182. package/dist/esm/components/Table/index.js +2 -0
  183. package/dist/esm/components/Tag/Tag.js +17 -0
  184. package/dist/esm/components/Tag/Tag.styles.js +17 -0
  185. package/dist/esm/components/Tag/index.js +1 -0
  186. package/dist/esm/components/Tile/Tile.js +16 -7
  187. package/dist/esm/components/Tile/Tile.styles.js +14 -17
  188. package/dist/esm/components/Toggle/Toggle.js +22 -0
  189. package/dist/esm/components/Toggle/Toggle.styles.js +43 -0
  190. package/dist/esm/components/Toggle/index.js +1 -0
  191. package/dist/esm/components/Typography/Typography.js +109 -0
  192. package/dist/esm/components/Typography/index.js +1 -1
  193. package/dist/esm/config/componentTheme.js +24 -0
  194. package/dist/esm/config/config.js +1446 -0
  195. package/dist/esm/config/index.js +4 -0
  196. package/dist/esm/config/themes.js +61 -0
  197. package/dist/esm/config/wordbook.js +71 -0
  198. package/dist/esm/example/Colors.js +57 -8
  199. package/dist/esm/example/ExampleComponent.js +5 -6
  200. package/dist/esm/example/Icons.js +56 -0
  201. package/dist/esm/example/TypographyExample.js +27 -14
  202. package/dist/esm/index.js +13 -8
  203. package/dist/types/components/ActionPanel/ActionPanel.d.ts +18 -0
  204. package/dist/types/components/ActionPanel/ActionPanel.styles.d.ts +37 -0
  205. package/dist/types/components/ActionPanel/index.d.ts +1 -0
  206. package/dist/types/components/Aligment/Aligment.styles.d.ts +1 -1
  207. package/dist/types/components/Button/Button.d.ts +11 -9
  208. package/dist/types/components/Button/Button.styles.d.ts +10 -13
  209. package/dist/types/components/Button/index.d.ts +1 -1
  210. package/dist/types/components/ButtonsFooter/ButtonsFooter.d.ts +13 -11
  211. package/dist/types/components/ButtonsFooter/ButtonsFooter.styles.d.ts +13 -0
  212. package/dist/types/components/ButtonsFooter/index.d.ts +1 -1
  213. package/dist/types/components/Card/Card.d.ts +8 -8
  214. package/dist/types/components/Card/Card.styles.d.ts +7 -4
  215. package/dist/types/components/Card/index.d.ts +1 -1
  216. package/dist/types/components/Checkbox/Checkbox.d.ts +17 -10
  217. package/dist/types/components/Checkbox/Checkbox.styles.d.ts +12 -8
  218. package/dist/types/components/ComponentRoot/ComponentRoot.d.ts +29 -0
  219. package/dist/types/components/ComponentRoot/ComponentRoot.styles.d.ts +15 -0
  220. package/dist/types/components/ComponentRoot/index.d.ts +2 -0
  221. package/dist/types/components/DatePicker/Calendar.d.ts +11 -15
  222. package/dist/types/components/DatePicker/CalendarContent.d.ts +7 -7
  223. package/dist/types/components/DatePicker/CalendarHeader.d.ts +7 -7
  224. package/dist/types/components/DatePicker/DatePicker.d.ts +25 -15
  225. package/dist/types/components/DatePicker/DatePicker.styles.d.ts +57 -0
  226. package/dist/types/components/DatePicker/index.d.ts +2 -1
  227. package/dist/types/components/Dropdown/Dropdown.d.ts +31 -12
  228. package/dist/types/components/Dropdown/Dropdown.styles.d.ts +21 -1
  229. package/dist/types/components/Dropdown/index.d.ts +0 -1
  230. package/dist/types/components/DropdownMenu/DropdownMenu.d.ts +7 -11
  231. package/dist/types/components/DropdownMenu/DropdownMenu.styles.d.ts +5 -15
  232. package/dist/types/components/File/File.d.ts +20 -3
  233. package/dist/types/components/File/File.styles.d.ts +18 -1
  234. package/dist/types/components/Filters/Filters.d.ts +8 -6
  235. package/dist/types/components/Filters/Filters.styles.d.ts +46 -5
  236. package/dist/types/components/Form/Form.d.ts +7 -5
  237. package/dist/types/components/Form/Form.styles.d.ts +14 -0
  238. package/dist/types/components/{ElementHeader/ElementHeader.d.ts → Header/Header.d.ts} +10 -11
  239. package/dist/types/components/Header/Header.styles.d.ts +13 -0
  240. package/dist/types/components/Header/index.d.ts +1 -0
  241. package/dist/types/components/HelperText/HelperText.d.ts +12 -0
  242. package/dist/types/components/HelperText/HelperText.styles.d.ts +10 -0
  243. package/dist/types/components/HelperText/index.d.ts +1 -0
  244. package/dist/types/components/Icon/Icon.d.ts +20 -0
  245. package/dist/types/components/Icon/Icon.styles.d.ts +18 -0
  246. package/dist/types/components/{Icons → Icon}/IconsPath.d.ts +3 -0
  247. package/dist/types/components/Icon/index.d.ts +1 -0
  248. package/dist/types/components/Input/Input.d.ts +28 -9
  249. package/dist/types/components/Input/Input.styles.d.ts +11 -31
  250. package/dist/types/components/Input/index.d.ts +1 -2
  251. package/dist/types/components/Label/Label.d.ts +16 -0
  252. package/dist/types/components/Label/Label.styles.d.ts +18 -0
  253. package/dist/types/components/Label/index.d.ts +1 -0
  254. package/dist/types/components/List/List.d.ts +17 -14
  255. package/dist/types/components/List/iLst.styles.d.ts +29 -0
  256. package/dist/types/components/Loader/Loader.d.ts +5 -3
  257. package/dist/types/components/Loader/Loader.styles.d.ts +6 -11
  258. package/dist/types/components/Modal/Modal.d.ts +11 -6
  259. package/dist/types/components/Modal/Modal.styles.d.ts +15 -5
  260. package/dist/types/components/Modal/index.d.ts +1 -1
  261. package/dist/types/components/Numerical/Numerical.d.ts +39 -0
  262. package/dist/types/components/Numerical/index.d.ts +1 -0
  263. package/dist/types/components/OptionsPanel/OptionsPanel.d.ts +22 -0
  264. package/dist/types/components/OptionsPanel/OptionsPanel.styles.d.ts +37 -0
  265. package/dist/types/components/OptionsPanel/index.d.ts +1 -0
  266. package/dist/types/components/Pagination/Pagination.d.ts +6 -2
  267. package/dist/types/components/Pagination/Pagination.styles.d.ts +20 -2
  268. package/dist/types/components/SearchInput/SearchInput.d.ts +11 -0
  269. package/dist/types/components/SearchInput/SearchInput.styles.d.ts +13 -0
  270. package/dist/types/components/SearchInput/index.d.ts +1 -0
  271. package/dist/types/components/Section/Section.d.ts +7 -5
  272. package/dist/types/components/Section/Section.styles.d.ts +13 -8
  273. package/dist/types/components/Section/index.d.ts +1 -0
  274. package/dist/types/components/Selector/Selector.d.ts +18 -9
  275. package/dist/types/components/Selector/Selector.styles.d.ts +10 -13
  276. package/dist/types/components/Sidepanel/Sidepanel.d.ts +6 -3
  277. package/dist/types/components/Sidepanel/Sidepanel.styles.d.ts +14 -1
  278. package/dist/types/components/Sort/Sort.d.ts +3 -1
  279. package/dist/types/components/Sort/Sort.styles.d.ts +1 -2
  280. package/dist/types/components/Table/Cell.d.ts +7 -5
  281. package/dist/types/components/Table/HeaderCell.d.ts +5 -1
  282. package/dist/types/components/Table/Table.d.ts +21 -17
  283. package/dist/types/components/Table/Table.styles.d.ts +58 -12
  284. package/dist/types/components/Table/index.d.ts +2 -0
  285. package/dist/types/components/Tag/Tag.d.ts +13 -0
  286. package/dist/types/components/Tag/Tag.styles.d.ts +10 -0
  287. package/dist/types/components/Tag/index.d.ts +1 -0
  288. package/dist/types/components/Tile/Tile.d.ts +11 -8
  289. package/dist/types/components/Tile/Tile.styles.d.ts +13 -7
  290. package/dist/types/components/Toggle/Toggle.d.ts +25 -0
  291. package/dist/types/components/Toggle/Toggle.styles.d.ts +24 -0
  292. package/dist/types/components/Toggle/index.d.ts +1 -0
  293. package/dist/types/components/Typography/Typography.d.ts +26 -0
  294. package/dist/types/components/Typography/index.d.ts +1 -1
  295. package/dist/types/config/componentTheme.d.ts +10 -0
  296. package/dist/types/config/config.d.ts +4268 -0
  297. package/dist/types/config/index.d.ts +4 -0
  298. package/dist/types/config/themes.d.ts +64 -0
  299. package/dist/types/config/wordbook.d.ts +55 -0
  300. package/dist/types/example/ExampleComponent.d.ts +17 -17
  301. package/dist/types/example/Icons.d.ts +2 -0
  302. package/dist/types/index.d.ts +13 -8
  303. package/dist/types/types/commonTypes.d.ts +68 -0
  304. package/dist/types/types/types.d.ts +8 -16
  305. package/package.json +11 -19
  306. package/dist/cjs/Theme/Theme.js +0 -130
  307. package/dist/cjs/components/ButtonsFooter/ButtonsFooter.style.js +0 -10
  308. package/dist/cjs/components/Chips/Chips.js +0 -20
  309. package/dist/cjs/components/Chips/Chips.styles.js +0 -24
  310. package/dist/cjs/components/DatePicker/DatePiocker.styles.js +0 -139
  311. package/dist/cjs/components/Dropdown/DropdownElements.js +0 -37
  312. package/dist/cjs/components/ElementHeader/ElementHeader.js +0 -42
  313. package/dist/cjs/components/ElementHeader/ElementHeader.styles.js +0 -23
  314. package/dist/cjs/components/FillSelect/FillSelect.js +0 -122
  315. package/dist/cjs/components/FillSelect/FillSelect.styles.js +0 -13
  316. package/dist/cjs/components/Form/formHelper.js +0 -7
  317. package/dist/cjs/components/Form/formTypes.js +0 -2
  318. package/dist/cjs/components/Icons/Icon.js +0 -64
  319. package/dist/cjs/components/Icons/Icon.styles.js +0 -36
  320. package/dist/cjs/components/Icons/IconsShows.js +0 -18
  321. package/dist/cjs/components/Icons/index.js +0 -7
  322. package/dist/cjs/components/List/list.styles.js +0 -53
  323. package/dist/cjs/components/Toogle/Toogle.js +0 -22
  324. package/dist/cjs/components/Toogle/Toogle.styles.js +0 -42
  325. package/dist/cjs/components/Tooltip/Tooltip.js +0 -15
  326. package/dist/cjs/components/Tooltip/Tooltip.styles.js +0 -63
  327. package/dist/cjs/components/Typography/Typography.styles.js +0 -67
  328. package/dist/cjs/components/common/commonComponents.js +0 -55
  329. package/dist/cjs/components/common/index.js +0 -18
  330. package/dist/cjs/components/common/inputStyles.js +0 -280
  331. package/dist/cjs/docs/Overview.js +0 -91
  332. package/dist/esm/Theme/Theme.js +0 -127
  333. package/dist/esm/Theme/index.js +0 -1
  334. package/dist/esm/components/ButtonsFooter/ButtonsFooter.style.js +0 -4
  335. package/dist/esm/components/Chips/Chips.js +0 -13
  336. package/dist/esm/components/Chips/Chips.styles.js +0 -18
  337. package/dist/esm/components/Chips/index.js +0 -1
  338. package/dist/esm/components/DatePicker/DatePiocker.styles.js +0 -133
  339. package/dist/esm/components/Dropdown/DropdownElements.js +0 -31
  340. package/dist/esm/components/ElementHeader/ElementHeader.js +0 -35
  341. package/dist/esm/components/ElementHeader/ElementHeader.styles.js +0 -17
  342. package/dist/esm/components/ElementHeader/index.js +0 -1
  343. package/dist/esm/components/FillSelect/FillSelect.js +0 -95
  344. package/dist/esm/components/FillSelect/FillSelect.styles.js +0 -7
  345. package/dist/esm/components/FillSelect/index.js +0 -1
  346. package/dist/esm/components/Form/FormElements.js +0 -22
  347. package/dist/esm/components/Form/formHelper.js +0 -3
  348. package/dist/esm/components/Form/formTypes.js +0 -1
  349. package/dist/esm/components/Icons/Icon.js +0 -37
  350. package/dist/esm/components/Icons/Icon.styles.js +0 -30
  351. package/dist/esm/components/Icons/IconsShows.js +0 -11
  352. package/dist/esm/components/Icons/index.js +0 -2
  353. package/dist/esm/components/List/list.styles.js +0 -47
  354. package/dist/esm/components/Toogle/Toogle.js +0 -15
  355. package/dist/esm/components/Toogle/Toogle.styles.js +0 -36
  356. package/dist/esm/components/Toogle/index.js +0 -1
  357. package/dist/esm/components/Tooltip/Tooltip.js +0 -8
  358. package/dist/esm/components/Tooltip/Tooltip.styles.js +0 -37
  359. package/dist/esm/components/Tooltip/index.js +0 -1
  360. package/dist/esm/components/Typography/Typography.styles.js +0 -61
  361. package/dist/esm/components/common/commonComponents.js +0 -49
  362. package/dist/esm/components/common/index.js +0 -2
  363. package/dist/esm/components/common/inputStyles.js +0 -261
  364. package/dist/esm/docs/Overview.js +0 -64
  365. package/dist/types/Theme/Theme.d.ts +0 -116
  366. package/dist/types/Theme/index.d.ts +0 -1
  367. package/dist/types/components/ButtonsFooter/ButtonsFooter.style.d.ts +0 -1
  368. package/dist/types/components/Chips/Chips.d.ts +0 -8
  369. package/dist/types/components/Chips/Chips.styles.d.ts +0 -6
  370. package/dist/types/components/Chips/index.d.ts +0 -1
  371. package/dist/types/components/DatePicker/DatePiocker.styles.d.ts +0 -32
  372. package/dist/types/components/Dropdown/DropdownElements.d.ts +0 -10
  373. package/dist/types/components/ElementHeader/ElementHeader.styles.d.ts +0 -7
  374. package/dist/types/components/ElementHeader/index.d.ts +0 -1
  375. package/dist/types/components/FillSelect/FillSelect.d.ts +0 -11
  376. package/dist/types/components/FillSelect/FillSelect.styles.d.ts +0 -1
  377. package/dist/types/components/FillSelect/index.d.ts +0 -1
  378. package/dist/types/components/Form/FormElements.d.ts +0 -8
  379. package/dist/types/components/Form/formHelper.d.ts +0 -1
  380. package/dist/types/components/Form/formTypes.d.ts +0 -36
  381. package/dist/types/components/Icons/Icon.d.ts +0 -17
  382. package/dist/types/components/Icons/Icon.styles.d.ts +0 -14
  383. package/dist/types/components/Icons/IconsShows.d.ts +0 -2
  384. package/dist/types/components/Icons/index.d.ts +0 -2
  385. package/dist/types/components/List/list.styles.d.ts +0 -19
  386. package/dist/types/components/Toogle/Toogle.d.ts +0 -15
  387. package/dist/types/components/Toogle/Toogle.styles.d.ts +0 -16
  388. package/dist/types/components/Toogle/index.d.ts +0 -1
  389. package/dist/types/components/Tooltip/Tooltip.d.ts +0 -11
  390. package/dist/types/components/Tooltip/Tooltip.styles.d.ts +0 -13
  391. package/dist/types/components/Tooltip/index.d.ts +0 -1
  392. package/dist/types/components/Typography/Typography.styles.d.ts +0 -19
  393. package/dist/types/components/common/commonComponents.d.ts +0 -19
  394. package/dist/types/components/common/index.d.ts +0 -2
  395. package/dist/types/components/common/inputStyles.d.ts +0 -146
  396. package/dist/types/docs/Overview.d.ts +0 -9
@@ -1,81 +1,61 @@
1
- import { setButtonLoaderSize, setButtonSize } from '../common';
2
1
  import styled from 'styled-components';
3
- import { Theme } from '../../Theme/Theme';
4
- export const ButtonElement = styled.button `
5
- align-items: center;
6
- border-radius: ${Theme.borderRadius.m};
2
+ const buildVariantStyles = (variant, isActive, isDisabled, hasBorder = false) => {
3
+ const bg = isDisabled
4
+ ? variant.disabledBackground
5
+ : isActive
6
+ ? variant.backgroundActive
7
+ : variant.background;
8
+ const color = isDisabled ? variant.disabledText : variant.text;
9
+ const border = hasBorder
10
+ ? `border: 1px solid ${isDisabled ? variant.disabledBorder : variant.border};`
11
+ : 'border: none;';
12
+ return `
13
+ background-color: ${bg};
14
+ color: ${color};
15
+ ${border}
16
+ :hover {
17
+ background-color: ${variant.backgroundHover};
18
+ }
19
+ `;
20
+ };
21
+ export const ButtonRoot = styled.div `
7
22
  box-sizing: border-box;
8
- cursor: pointer;
9
- display: flex;
10
- flex-shrink: 1;
23
+ display: inline-flex;
24
+ align-items: center;
11
25
  justify-content: center;
12
- margin-left: ${(p) => (p.right ? Theme.padding.m : '0')};
13
- margin-right: ${(p) => (p.left ? Theme.padding.m : '0')};
14
- overflow: hidden;
15
- transition: 300ms;
16
26
  white-space: nowrap;
17
- ${(p) => setButtonSize(p.size, p.loader)}
18
- ${(p) => p.mode === 'primary' &&
19
- `background-color: ${p.theme.action};
20
- border: none;
21
- color: ${p.theme.buttonText};
22
- &:disabled{
23
- color: ${p.theme.disabledText};
24
- background-color: ${p.theme.disabledBackground};
25
- }
26
- ${p.errorVariant &&
27
- `background-color:${p.theme.errorBackgroundColor};
28
- border:none;`}
29
- `}
27
+ flex-shrink: 0;
28
+ width: auto;
29
+ min-width: ${({ config, size }) => config.sizes[size].minWidth}px;
30
+ height: ${({ config, size }) => config.sizes[size].height}px;
31
+ font-size: ${({ config, size }) => config.sizes[size].fontSize}px;
32
+ line-height: ${({ config, size }) => config.sizes[size].lineHeight}px;
33
+ padding: 0 ${({ config, size }) => config.sizes[size].paddingX}px;
34
+ border-radius: ${({ config, size }) => config.sizes[size].radius}px;
35
+ cursor: ${({ isDisabled }) => (isDisabled ? 'not-allowed' : 'pointer')};
36
+ pointer-events: ${({ isDisabled }) => (isDisabled ? 'none' : 'auto')};
37
+ transition: background-color 300ms, color 300ms, border-color 300ms;
30
38
 
31
- ${(p) => p.mode === 'secondary' &&
32
- `background-color: transparent;
33
- border: none;
34
- color: ${p.theme.action};
35
- &:disabled{
36
- color: ${p.theme.disabledText};
37
- }
38
- ${p.errorVariant &&
39
- `color:${p.theme.errorBackgroundColor};
40
- border:none;`}
39
+ ${({ config, mode, isActive, isDisabled }) => mode === 'primary' && buildVariantStyles(config.variants.primary, isActive, isDisabled)}
41
40
 
42
-
43
- `}
41
+ ${({ config, mode, isActive, isDisabled }) => mode === 'secondary' &&
42
+ buildVariantStyles(config.variants.secondary, isActive, isDisabled, true)}
44
43
 
45
- &:hover {
46
- transition: 300ms;
47
- ${(p) => p.mode === 'primary' &&
48
- `background-color: ${p.theme.buttonPrimaryHover};
49
- &:disabled {
50
- background-color: ${p.theme.disabledBackground};
51
- }
52
- ${p.errorVariant &&
53
- `background-color:${p.theme.errorBackgroundColorHover};
54
- `}
55
- `}
44
+ ${({ config, mode, isActive, isDisabled }) => mode === 'ghost' && buildVariantStyles(config.variants.ghost, isActive, isDisabled)}
56
45
 
57
- ${(p) => p.mode === 'secondary' &&
58
- `background-color: ${p.theme.buttonSecondaryHover};
59
- &:disabled {
60
- background-color: transparent;
61
- }
62
- ${p.errorVariant &&
63
- `background-color:${p.theme.errorBackgroundColorHoverLight};`}
46
+ ${({ config, mode, isActive, isDisabled }) => mode === 'danger' && buildVariantStyles(config.variants.danger, isActive, isDisabled)}
64
47
 
65
- &:disabled {
66
- background-color: transparent;
67
- }`};
48
+ &:hover {
49
+ transition: background-color 300ms, color 300ms, border-color 300ms;
68
50
  }
69
51
 
70
- &:disabled {
71
- cursor: not-allowed;
72
- }
73
52
  &:focus {
74
53
  outline: none;
75
54
  }
76
55
  `;
77
- export const ButtonLoader = styled.div `
78
- display: flex;
79
- box-sizing: border-box;
80
- ${(p) => setButtonLoaderSize(p.size)}
56
+ export const ButtonContent = styled.div `
57
+ display: inline-flex;
58
+ align-items: center;
59
+ justify-content: center;
60
+ gap: 6px;
81
61
  `;
@@ -1 +1 @@
1
- export { Button } from './Button';
1
+ export * from './Button';
@@ -1,31 +1,42 @@
1
+ import { resolveThemeWithComponentsConfig } from '../../config';
1
2
  import React from 'react';
2
- import { Theme } from '../../Theme/Theme';
3
+ import { ButtonsFooterGroup, ButtonsFooterRoot } from './ButtonsFooter.styles';
4
+ import { wordbook } from '../../config';
3
5
  import { Button } from '../Button';
6
+ import { Toggle } from '../Toggle';
4
7
  import { Aligment } from '../Aligment';
5
- import { ButtonsFooterGroup } from './ButtonsFooter.style';
6
- import { Toogle } from '../Toogle';
7
- export const ButtonsFooter = ({ handleConfirm, handleClose, handleAdditional, labelConfirm = 'Confirm', labelClose = 'Close', labelAdditional, submitDisabled, submitLoader, backgroundColor = 'transparent', additionalType = 'button', additionalValue = false, additionaNormalMode = false, additionDisabled = false, }) => {
8
- const isAdditional = () => {
9
- return labelAdditional !== undefined && handleAdditional !== undefined;
10
- };
11
- const isMultiButtons = () => {
12
- return handleConfirm !== undefined && labelConfirm !== undefined;
13
- };
8
+ import { ThemeProvider } from 'styled-components';
9
+ export const ButtonsFooter = ({ theme, themeVariant, onPrimaryAction, onSecondaryAction, onAdditionalAction, primaryDisabled, primaryLoading, additionalType = 'button', additionalValue = false, isAdditionalDanger = false, additionDisabled = false, size = 'md', labels = {
10
+ primary: wordbook.actions.confirm, //labelConfirm
11
+ secondary: wordbook.actions.cancel, //labelClose
12
+ additional: undefined //labelAdditional
13
+ } }) => {
14
+ const resolvedThemeData = resolveThemeWithComponentsConfig({
15
+ theme,
16
+ themeVariant,
17
+ });
18
+ const resolvedTheme = resolvedThemeData.resolvedTheme;
19
+ const { componentsConfig } = resolvedThemeData;
20
+ const buttonsFooterConfig = componentsConfig.buttonsFooter;
21
+ const hasAdditional = labels.additional !== undefined && onAdditionalAction !== undefined;
22
+ const isMultiButtons = onPrimaryAction !== undefined && labels.primary !== undefined;
14
23
  const additionAction = () => {
15
- if (handleAdditional) {
16
- if (additionalType === 'toogle' && additionalValue) {
17
- handleAdditional(!additionalValue);
24
+ if (onAdditionalAction) {
25
+ if (additionalType === 'toggle') {
26
+ onAdditionalAction(!additionalValue);
18
27
  }
19
28
  else {
20
- handleAdditional();
29
+ onAdditionalAction();
21
30
  }
22
31
  }
23
32
  };
24
- return (React.createElement(Aligment, { justify: isAdditional() ? 'space-between' : 'flex-end', vPadding: Theme.padding.l, hPadding: Theme.padding.l, backgroundColor: backgroundColor },
25
- labelAdditional && handleAdditional && (React.createElement(ButtonsFooterGroup, null, !submitLoader && (React.createElement(React.Fragment, null,
26
- additionalType === 'button' && (React.createElement(Button, { errorVariant: !additionaNormalMode, mode: "secondary", onClick: additionAction, text: labelAdditional, left: isMultiButtons(), disabled: additionDisabled })),
27
- additionalType === 'toogle' && (React.createElement(Toogle, { label: labelAdditional, value: additionalValue, handleClick: additionAction, labelPosition: "left", size: "medium" })))))),
28
- React.createElement(ButtonsFooterGroup, null,
29
- !submitLoader && (React.createElement(Button, { mode: isMultiButtons() ? 'secondary' : 'primary', onClick: () => handleClose(), text: labelClose, left: isMultiButtons() })),
30
- handleConfirm && labelConfirm && (React.createElement(Button, { onClick: handleConfirm, text: labelConfirm, disabled: submitDisabled, loader: submitLoader })))));
33
+ return (React.createElement(ThemeProvider, { theme: resolvedTheme },
34
+ React.createElement(ButtonsFooterRoot, { hasAdditional: hasAdditional, config: buttonsFooterConfig, theme: resolvedTheme },
35
+ React.createElement(Aligment, { justify: hasAdditional ? 'space-between' : 'flex-end', vPadding: String(buttonsFooterConfig.layout.paddingY + 'px'), hPadding: String(buttonsFooterConfig.layout.paddingX + 'px') },
36
+ labels.additional && onAdditionalAction && (React.createElement(ButtonsFooterGroup, { config: buttonsFooterConfig, theme: resolvedTheme }, !primaryLoading && (React.createElement(React.Fragment, null,
37
+ additionalType === 'button' && (React.createElement(Button, { mode: isAdditionalDanger ? 'danger' : 'ghost', onClick: additionAction, isDisabled: additionDisabled, text: labels.additional, size: size })),
38
+ additionalType === 'toggle' && (React.createElement(Toggle, { label: labels.additional, value: additionalValue, handleClick: additionAction, labelPosition: "left", labelInversed: true, size: size })))))),
39
+ React.createElement(ButtonsFooterGroup, { config: buttonsFooterConfig, theme: resolvedTheme },
40
+ !primaryLoading && (React.createElement(Button, { mode: isMultiButtons ? 'ghost' : 'primary', onClick: onSecondaryAction, text: labels.secondary || wordbook.actions.cancel, size: size })),
41
+ onPrimaryAction && labels.primary && (React.createElement(Button, { onClick: onPrimaryAction, text: labels.primary, isDisabled: primaryDisabled, loader: primaryLoading, size: size })))))));
31
42
  };
@@ -0,0 +1,15 @@
1
+ import styled from 'styled-components';
2
+ export const ButtonsFooterRoot = styled.div `
3
+ display: flex;
4
+ align-items: center;
5
+ width: 100%;
6
+ min-height: ${({ config }) => config.layout.minHeight}px;
7
+ background-color: ${({ config, theme }) => config.color.background};
8
+ border-top: 1px solid ${({ config }) => config.color.topBorder};
9
+ gap: ${({ config }) => config.gap.actions}px;
10
+ box-sizing: border-box;
11
+ `;
12
+ export const ButtonsFooterGroup = styled.div `
13
+ gap: ${({ config }) => config.gap.actions}px;
14
+ display: flex;
15
+ `;
@@ -1 +1 @@
1
- export { ButtonsFooter } from './ButtonsFooter';
1
+ export * from './ButtonsFooter';
@@ -1,12 +1,18 @@
1
+ import { resolveThemeWithComponentsConfig } from '../../config';
1
2
  import React from 'react';
2
- import { CardContent, CardElement } from './Card.styles';
3
- import { ElementHeader } from '../ElementHeader';
4
- import { mainTheme } from '../../Theme';
5
- export const Card = ({ children, title, actionLabel, theme = mainTheme, iconColor = theme.textColor, iconHoverColor = theme.action, handleClick, handleBack, height, options, shadow = true, headerDivader = false, actionDisabled = false, customHeader, }) => {
6
- const hasHeader = !!title || !!actionLabel || !!customHeader;
7
- return (React.createElement(CardElement, { height: height, shadow: shadow },
8
- customHeader
9
- ? customHeader
10
- : (title || actionLabel) && (React.createElement(ElementHeader, { title: title, actionLabel: actionLabel, handleClick: handleClick, handleBack: handleBack, options: options, theme: theme, iconColor: iconColor, iconHoverColor: iconHoverColor, bottomDivader: headerDivader, actionDisabled: actionDisabled })),
11
- React.createElement(CardContent, { soloMode: !hasHeader }, children)));
3
+ import { CardContent, CardRoot } from './Card.styles';
4
+ import { Header } from '../Header';
5
+ import { ThemeProvider } from 'styled-components';
6
+ export const Card = ({ theme, themeVariant = 'default', title, actionLabel, children, customHeader, headerDivader, actionDisabled, handleClick, handleBack, height, options, shadow, }) => {
7
+ const resolvedThemeData = resolveThemeWithComponentsConfig({
8
+ theme,
9
+ themeVariant,
10
+ });
11
+ const resolvedTheme = resolvedThemeData.resolvedTheme;
12
+ const { componentsConfig } = resolvedThemeData;
13
+ const headerConfig = componentsConfig.card;
14
+ return (React.createElement(ThemeProvider, { theme: resolvedTheme },
15
+ React.createElement(CardRoot, { height: height, shadow: shadow, theme: resolvedTheme, config: headerConfig },
16
+ (title || actionLabel) && (React.createElement(Header, { title: title, actionLabel: actionLabel, handleClick: handleClick, handleBack: handleBack, options: options, theme: theme, bottomDivader: headerDivader, actionDisabled: actionDisabled, themeVariant: themeVariant, header: customHeader })),
17
+ React.createElement(CardContent, { theme: resolvedTheme, config: headerConfig }, children))));
12
18
  };
@@ -1,22 +1,21 @@
1
1
  import styled from 'styled-components';
2
- import { Theme } from '../../Theme/Theme';
3
- export const CardElement = styled.div `
2
+ export const CardRoot = styled.div `
4
3
  box-sizing: border-box;
5
4
  display: flex;
6
5
  flex-direction: column;
7
6
  width: 100%;
8
- background-color: ${Theme.colors.white};
9
- border-radius: ${Theme.borderRadius.m};
7
+ background-color: ${({ config }) => config.color.background};
8
+ border-radius: ${({ config }) => config.size.borderRadius};
10
9
  height: ${(p) => (p.height ? p.height : '100%')};
11
- ${(p) => p.shadow && `box-shadow: ${Theme.shadow.s};`}
10
+ ${(p) => p.shadow && `box-shadow: ${p.config.color.shadow};`}
11
+
12
12
  `;
13
13
  export const CardContent = styled.div `
14
14
  box-sizing: border-box;
15
15
  display: flex;
16
- padding: ${Theme.padding.l};
16
+ padding: ${({ config }) => config.size.paddingY}px
17
+ ${({ config }) => config.size.paddingX}px;
17
18
  width: 100%;
18
19
  flex-direction: row;
19
- ${(p) => !p.soloMode &&
20
- `
21
- padding-top:0px;`}
20
+
22
21
  `;
@@ -1 +1 @@
1
- export { Card } from './Card';
1
+ export * from './Card';
@@ -1,16 +1,33 @@
1
1
  import React from 'react';
2
- import { mainTheme } from '../../Theme/Theme';
3
- import { ThemeProvider } from 'styled-components';
4
- import { Aligment } from '../Aligment';
5
- import { InputLabelElement, InputWrapper } from '../Input';
6
- import { CheckboxElement, CheckoxIcon, ToogleCheckboxWrapper, } from './Checkbox.styles';
7
- import { Icon } from '../Icons';
8
- export const Checkbox = ({ theme = mainTheme, label, labelPosition = 'top', value = false, readOnly = false, name, size = 'medium', width = 'auto', isIntermedian = false, handleClick, }) => {
9
- return (React.createElement(ThemeProvider, { theme: theme },
10
- React.createElement(Aligment, { align: labelPosition === 'top' ? 'flex-start' : 'center', justify: 'flex-start', direction: labelPosition === 'top' ? 'column-reverse' : 'row', wrap: 'nowrap', width: width },
11
- React.createElement(InputWrapper, { width: width },
12
- React.createElement(ToogleCheckboxWrapper, { size: size },
13
- React.createElement(CheckboxElement, { size: size, active: value || isIntermedian, onClick: () => handleClick(!value) }, (value || isIntermedian) && (React.createElement(CheckoxIcon, null,
14
- React.createElement(Icon, { name: isIntermedian ? "remove" : 'check', size: 20, iconColor: theme.checkColor, noPadding: true })))))),
15
- label && (React.createElement(InputLabelElement, { size: size, labelPosition: labelPosition, wrapLabel: labelPosition === 'left' }, label)))));
2
+ import { resolveThemeWithComponentsConfig } from '../../config';
3
+ import { ComponentRoot } from '../ComponentRoot';
4
+ import { CheckboxBox, CheckboxRoot } from './Checkbox.styles';
5
+ import { iconsPath } from '../Icon/IconsPath';
6
+ export const Checkbox = ({ name, value = false, size = 'md', label, labelPosition = 'top', theme, themeVariant = 'default', handleClick, isIntermedian = false, isDisabled = false, labelInversed = false, error = false, helperText, required = false, optional = false, optionalLabel, }) => {
7
+ const resolvedThemeData = resolveThemeWithComponentsConfig({
8
+ theme,
9
+ themeVariant,
10
+ });
11
+ const resolvedTheme = resolvedThemeData.resolvedTheme;
12
+ const { componentsConfig } = resolvedThemeData;
13
+ const checkboxConfig = componentsConfig.checkbox;
14
+ const resolvedSize = typeof size === 'number'
15
+ ? { iconSize: size, padding: 0 }
16
+ : checkboxConfig.size[size] ?? checkboxConfig.size.md;
17
+ const iconName = isIntermedian ? iconsPath['remove'] : iconsPath['check'];
18
+ const onClick = () => {
19
+ if (!isDisabled) {
20
+ handleClick(!value);
21
+ }
22
+ };
23
+ return (React.createElement(ComponentRoot, { labelPosition: labelPosition, size: size, disabled: isDisabled, error: error, readOnly: false, required: required, optional: optional, optionalLabel: optionalLabel, helperText: helperText, themeVariant: themeVariant, theme: resolvedTheme, componentConfig: checkboxConfig, label: label, isActive: value, labelInversed: labelInversed, smallSize: true },
24
+ React.createElement(CheckboxRoot, { onClick: onClick, isDisabled: isDisabled },
25
+ React.createElement(CheckboxBox, { theme: resolvedTheme, config: checkboxConfig, size: size, isDisabled: isDisabled, isIntermedian: isIntermedian, isActive: value }, (value || isIntermedian) && (React.createElement("svg", { width: resolvedSize.iconSize, height: resolvedSize.iconSize, viewBox: '0 0 24 24', preserveAspectRatio: "xMidYMid meet", x: "0", y: "0", name: name },
26
+ React.createElement("path", { d: iconName, fill: isDisabled
27
+ ? checkboxConfig.color.disabled.icon
28
+ : isIntermedian
29
+ ? checkboxConfig.color.intermedian.icon
30
+ : value
31
+ ? checkboxConfig.color.focus.icon
32
+ : checkboxConfig.color.default.icon })))))));
16
33
  };
@@ -1,30 +1,45 @@
1
- import { setToogleSize } from '../common';
2
1
  import styled from 'styled-components';
3
- import { Theme } from '../../Theme';
4
- export const ToogleCheckboxWrapper = styled.div `
5
- ${(p) => setToogleSize(p.size)}
6
- `;
7
- export const CheckoxIcon = styled.div `
2
+ export const CheckboxRoot = styled.div `
8
3
  display: flex;
4
+ align-items: center;
5
+ justify-content: start-flex;
6
+ width: 100%;
7
+ height: 100%;
8
+ cursor: ${({ isDisabled }) => (isDisabled ? 'not-allowed' : 'pointer')};
9
9
  `;
10
- export const CheckboxElement = styled.div `
10
+ export const CheckboxBox = styled.div `
11
11
  display: flex;
12
12
  align-content: center;
13
13
  align-items: center;
14
14
  justify-content: center;
15
15
  box-sizing: border-box;
16
- background-color: ${(p) => p.active ? p.theme.toogleActiveBackgorund : p.theme.toogleBackgrund};
16
+ height: ${({ theme, config, size }) => config.size[size].height}px;
17
+ width: ${({ theme, config, size }) => config.size[size].width}px;
17
18
  border: 1px solid
18
- ${(p) => p.active ? p.theme.toogleActiveBackgorund : p.theme.inputDefaultBorder};
19
- font-family: 'Lato', sans-serif;
20
- outline: 0;
21
- white-space: nowrap;
22
- overflow: hidden;
23
- text-overflow: ellipsis;
24
- cursor: pointer;
19
+ ${({ theme, config, isActive, isDisabled, isIntermedian }) => isDisabled
20
+ ? config.color.disabled.boxBorder
21
+ : isIntermedian
22
+ ? config.color.intermedian.boxBorder
23
+ : isActive
24
+ ? config.color.focus.boxBorder
25
+ : config.color.default.boxBorder};
26
+ background: ${({ theme, config, isActive, isDisabled, isIntermedian }) => isDisabled
27
+ ? config.color.disabled.boxBackground
28
+ : isIntermedian ?
29
+ config.color.intermedian.boxBackground
30
+ : isActive
31
+ ? config.color.focus.boxBackground
32
+ : config.color.default.background};
33
+ border-radius: ${({ config, size }) => config.size[size].radius}px;
34
+ cursor: ${({ isDisabled }) => (isDisabled ? 'not-allowed' : 'pointer')};
35
+ :hover{
36
+ border-color: ${({ theme, config, isActive, isDisabled, isIntermedian }) => isDisabled
37
+ ? config.color.disabled.boxBorder
38
+ : isIntermedian
39
+ ? config.color.intermedian.boxBorder
40
+ : isActive
41
+ ? config.color.focus.boxBorder
42
+ : config.color.hover.boxBorder};
25
43
 
26
- height: ${(p) => (p.size === 'small' ? '20px' : '24px')};
27
- width: ${(p) => (p.size === 'small' ? '20px' : '24px')};
28
- border-radius: ${Theme.borderRadius.m};
29
- ${(p) => p.size === 'small' && `margin:2px 0;`}
44
+ }
30
45
  `;
@@ -0,0 +1,20 @@
1
+ import { Aligment } from '../Aligment';
2
+ import { HelperText } from '../HelperText';
3
+ import { Label } from '../Label';
4
+ import React from 'react';
5
+ import { ThemeProvider } from 'styled-components';
6
+ import { ComponentWrapper } from './ComponentRoot.styles';
7
+ export const ComponentRoot = ({ theme, themeVariant = 'default', label, labelPosition = 'top', size = 'md', width, disabled = false, error = false, readOnly = false, required = false, optional = false, optionalLabel, helperText, componentConfig, children, isActive = false, labelInversed = false, smallSize = false, noBorder = false, noBreakLabel, componentWidth = 'auto' }) => {
8
+ return (React.createElement(ThemeProvider, { theme: theme },
9
+ React.createElement(Aligment, { align: 'flex-start', direction: labelPosition === 'top'
10
+ ? 'column'
11
+ : labelInversed
12
+ ? 'row-reverse'
13
+ : 'row', justify: labelInversed && labelPosition === 'left'
14
+ ? 'flex-end'
15
+ : 'flex-start', wrap: 'nowrap', gap: 4, width: width ? width : labelInversed ? 'auto' : '100%' },
16
+ label && (React.createElement(Label, { text: label, size: size, position: labelPosition, required: required, optional: optional, optionalLabel: optionalLabel, smallSize: smallSize, noBreakLabel: noBreakLabel })),
17
+ React.createElement(Aligment, { direction: 'column', align: 'flex-start', gap: 4, wrap: 'nowrap', width: width ? width : labelInversed ? 'auto' : '100%' },
18
+ React.createElement(ComponentWrapper, { inputSize: size, width: componentWidth, theme: theme, inputConfig: componentConfig, error: error, isActive: isActive, disabled: disabled, readOnly: readOnly, labelInversed: labelInversed, noBorder: noBorder }, children),
19
+ helperText && !labelInversed && (React.createElement(HelperText, { helperText: helperText, mode: error ? 'error' : 'default', theme: theme, themeVariant: themeVariant, disabled: disabled }))))));
20
+ };
@@ -0,0 +1,66 @@
1
+ import styled from 'styled-components';
2
+ export const ComponentWrapper = styled.div `
3
+ display: flex;
4
+ flex-direction: row;
5
+ gap: 4px;
6
+ align-items: center;
7
+ overflow: hidden;
8
+ width: ${({ width, labelInversed }) => width ? width : labelInversed ? 'auto' : '100%'};
9
+ height: ${({ inputConfig, inputSize }) => inputConfig.size[inputSize].height}px;
10
+ border: 1px solid
11
+ ${({ theme, inputConfig }) => inputConfig.color.default.border};
12
+ ${({ noBorder }) => noBorder && 'border: none;'}
13
+ background: ${({ theme, inputConfig }) => inputConfig.color.default.background};
14
+ border-radius: ${({ inputConfig, inputSize }) => inputConfig.size[inputSize].radius}px;
15
+
16
+ ${({ disabled, error, readOnly, inputConfig, isActive }) => !disabled &&
17
+ !error &&
18
+ !readOnly &&
19
+ `
20
+ &:hover {
21
+ border-color: ${isActive
22
+ ? inputConfig.color.focus.border
23
+ : inputConfig.color.hover.border};
24
+ background: ${inputConfig.color.hover.background};
25
+ }
26
+ `}
27
+ ${({ readOnly, inputConfig, isActive }) => !readOnly &&
28
+ `
29
+ &:focus-within {
30
+ border-color: ${inputConfig.color.focus.border};
31
+ box-shadow: 0 0 0 3px
32
+ ${inputConfig.color.focus.shadow};
33
+ background: ${inputConfig.color.focus.background};
34
+ }
35
+ ${isActive &&
36
+ !readOnly &&
37
+ `
38
+ border-color: ${inputConfig.color.focus.border};
39
+ box-shadow: 0 0 0 3px ${inputConfig.color.focus.shadow};
40
+ background: ${inputConfig.color.focus.background};
41
+ `}
42
+ `}
43
+ ${({ error, theme, inputConfig }) => error &&
44
+ `
45
+ border-color: ${inputConfig.color.error.border};
46
+ `}
47
+
48
+ ${({ disabled, theme, inputConfig, isActive }) => disabled &&
49
+ `
50
+ background: ${isActive
51
+ ? inputConfig.color.disabled.backgroundActive
52
+ : inputConfig.color.disabled.background};
53
+ border-color: ${inputConfig.color.disabled.border};
54
+ color: ${inputConfig.color.disabled.text};
55
+ cursor: ${inputConfig.color.disabled.cursor};
56
+ `}
57
+ ${({ readOnly, theme, inputConfig }) => readOnly &&
58
+ `
59
+ background: ${inputConfig.color.readonly.bg};
60
+ color: ${inputConfig.color.readonly.text};
61
+ border-color: transparent;
62
+ border-bottom: 1px solid rgba(0,0,0,0.06);
63
+ border-radius: 0;
64
+
65
+ `}
66
+ `;
@@ -0,0 +1,2 @@
1
+ export * from './ComponentRoot';
2
+ export * from './ComponentRoot.styles';
@@ -1,24 +1,12 @@
1
- import React, { useEffect, useState, useRef } from 'react';
2
- import { CalendarOverlay, CalendarWrapper } from './DatePiocker.styles';
1
+ import { CalendarOverlayer, CalendarRoot } from './DatePicker.styles';
2
+ import { addMonths, addYears, getTime, getYear, subMonths, subYears, } from 'date-fns';
3
+ import React, { useEffect, useLayoutEffect, useRef, useState } from 'react';
3
4
  import { Aligment } from '../Aligment';
5
+ import { ThemeProvider } from 'styled-components';
4
6
  import { CalendarHeader } from './CalendarHeader';
5
- import { addMonths, addYears, getTime, getYear, subMonths, subYears, } from 'date-fns';
6
- import { CalendarContent } from './CalendarContent';
7
7
  import { ButtonsFooter } from '../ButtonsFooter';
8
- export const Calendar = ({ value, top, left, size, handleClose, handleSelect, isAdvance = false, autoConfirm: autoConfirmProp, labels = { close: 'Close', confirm: 'Select', today: 'Today' }, localeLabels, zIndex }) => {
9
- const defaultLocale = {
10
- months: [
11
- 'January', 'February', 'March', 'April', 'May', 'June',
12
- 'July', 'August', 'September', 'October', 'November', 'December'
13
- ],
14
- weekdaysShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
15
- firstDayOfWeek: 0,
16
- };
17
- const effectiveLocale = {
18
- months: (localeLabels && localeLabels.months) || defaultLocale.months,
19
- weekdaysShort: (localeLabels && localeLabels.weekdaysShort) || defaultLocale.weekdaysShort,
20
- firstDayOfWeek: (localeLabels && typeof localeLabels.firstDayOfWeek === 'number') ? localeLabels.firstDayOfWeek : defaultLocale.firstDayOfWeek,
21
- };
8
+ import { CalendarContent } from './CalendarContent';
9
+ export const Calendar = ({ theme, themeVariant = 'default', value, top, left, triggerTop, localeLabels, handleClose, handleSelect, isAdvance = true, autoConfirm = false, zIndex, config, labels, }) => {
22
10
  const setYearScope = (date) => {
23
11
  const year = getYear(date);
24
12
  const yearIndex = year % 12;
@@ -28,7 +16,9 @@ export const Calendar = ({ value, top, left, size, handleClose, handleSelect, is
28
16
  };
29
17
  const effectiveAutoConfirm = isAdvance
30
18
  ? false
31
- : (typeof autoConfirmProp !== 'undefined' ? Boolean(autoConfirmProp) : true);
19
+ : typeof autoConfirm !== 'undefined'
20
+ ? Boolean(autoConfirm)
21
+ : true;
32
22
  const [calendarSettings, updateCalendarSettings] = useState(() => {
33
23
  const initialDate = value !== undefined ? new Date(value) : new Date();
34
24
  return {
@@ -38,8 +28,42 @@ export const Calendar = ({ value, top, left, size, handleClose, handleSelect, is
38
28
  yearsScope: setYearScope(initialDate),
39
29
  };
40
30
  });
41
- const [selectedDate, setSellectedDate] = useState(() => (value !== undefined ? new Date(value) : new Date()));
31
+ const [selectedDate, setSellectedDate] = useState(() => value !== undefined ? new Date(value) : new Date());
42
32
  const wrapperRef = useRef(null);
33
+ const [computedTop, setComputedTop] = useState(top);
34
+ const [computedLeft, setComputedLeft] = useState(left);
35
+ useEffect(() => {
36
+ setComputedTop(top);
37
+ }, [top]);
38
+ useEffect(() => {
39
+ setComputedLeft(left);
40
+ }, [left]);
41
+ useLayoutEffect(() => {
42
+ if (!wrapperRef.current)
43
+ return;
44
+ const calendarRect = wrapperRef.current.getBoundingClientRect();
45
+ const viewportHeight = window.innerHeight;
46
+ const viewportWidth = window.innerWidth;
47
+ const currentTopInViewport = computedTop - window.scrollY;
48
+ const currentLeftInViewport = computedLeft - window.scrollX;
49
+ const overflowsBottom = currentTopInViewport + calendarRect.height > viewportHeight;
50
+ const overflowsRight = currentLeftInViewport + calendarRect.width > viewportWidth;
51
+ const overflowsLeft = currentLeftInViewport < 0;
52
+ if (overflowsBottom) {
53
+ const triggerTopInViewport = triggerTop - window.scrollY;
54
+ const nextTop = Math.max(window.scrollY, window.scrollY + triggerTopInViewport - calendarRect.height);
55
+ if (nextTop !== computedTop) {
56
+ setComputedTop(nextTop);
57
+ }
58
+ }
59
+ if (overflowsRight || overflowsLeft) {
60
+ const maxLeft = window.scrollX + Math.max(0, viewportWidth - calendarRect.width);
61
+ const nextLeft = Math.min(Math.max(window.scrollX, computedLeft), maxLeft);
62
+ if (nextLeft !== computedLeft) {
63
+ setComputedLeft(nextLeft);
64
+ }
65
+ }
66
+ }, [top, left, triggerTop, computedTop, computedLeft]);
43
67
  useEffect(() => {
44
68
  updateCalendarSettings((prev) => ({
45
69
  ...prev,
@@ -84,7 +108,9 @@ export const Calendar = ({ value, top, left, size, handleClose, handleSelect, is
84
108
  const target = e.target;
85
109
  if (!el)
86
110
  return;
87
- const path = e.composedPath ? e.composedPath() : undefined;
111
+ const path = e.composedPath
112
+ ? e.composedPath()
113
+ : undefined;
88
114
  const clickedOutside = path ? !path.includes(el) : !el.contains(target);
89
115
  if (clickedOutside && !isAdvance) {
90
116
  handleClose && handleClose();
@@ -97,11 +123,15 @@ export const Calendar = ({ value, top, left, size, handleClose, handleSelect, is
97
123
  document.removeEventListener('touchstart', handleOutside);
98
124
  };
99
125
  }, [isAdvance, handleClose]);
100
- return (React.createElement(React.Fragment, null,
101
- React.createElement(CalendarWrapper, { ref: wrapperRef, top: top, left: left, size: size, zIndex: zIndex },
126
+ return (React.createElement(ThemeProvider, { theme: theme },
127
+ React.createElement(CalendarRoot, { ref: wrapperRef, theme: theme, config: config.calendarCard, zIndex: zIndex, top: computedTop, left: computedLeft },
102
128
  React.createElement(Aligment, { direction: "row" },
103
- React.createElement(CalendarHeader, { mode: calendarSettings.mode, date: calendarSettings.date, yearsScope: calendarSettings.yearsScope, handleChange: setPeriod, handleSelect: setMode, localeLabels: effectiveLocale }),
104
- React.createElement(CalendarContent, { date: calendarSettings.date, mode: calendarSettings.mode, handleChange: setNewDate, changeMode: setMode, yearsScope: calendarSettings.yearsScope, localeLabels: effectiveLocale }),
105
- isAdvance && (React.createElement(ButtonsFooter, { handleClose: handleClose, handleConfirm: confirmDate, handleAdditional: setToday, labelClose: labels.close || 'Close', labelConfirm: labels.confirm || 'Select', labelAdditional: labels.today || 'Today', additionaNormalMode: true })))),
106
- React.createElement(CalendarOverlay, { zIndex: zIndex })));
129
+ React.createElement(CalendarHeader, { theme: theme, themeVariant: themeVariant, mode: calendarSettings.mode, date: calendarSettings.date, yearsScope: calendarSettings.yearsScope, handleChange: setPeriod, handleSelect: setMode, localeLabels: localeLabels }),
130
+ React.createElement(CalendarContent, { theme: theme, themeVariant: themeVariant, date: calendarSettings.date, mode: calendarSettings.mode, handleChange: setNewDate, changeMode: setMode, yearsScope: calendarSettings.yearsScope, localeLabels: localeLabels }),
131
+ isAdvance && (React.createElement(ButtonsFooter, { onSecondaryAction: handleClose, onPrimaryAction: confirmDate, onAdditionalAction: setToday, isAdditionalDanger: false, size: "sm", labels: {
132
+ primary: labels?.primary,
133
+ secondary: labels?.secondary,
134
+ additional: labels?.additional,
135
+ } })))),
136
+ React.createElement(CalendarOverlayer, { onClick: handleClose, config: config.calendarCard, theme: theme })));
107
137
  };