@true-engineering/true-react-common-ui-kit 4.0.0-alpha7 → 4.0.0-alpha70

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 (513) hide show
  1. package/README.md +12 -720
  2. package/dist/components/AccountInfo/AccountInfo.styles.d.ts +1 -1
  3. package/dist/components/AddButton/AddButton.d.ts +1 -0
  4. package/dist/components/AddButton/AddButton.styles.d.ts +1 -1
  5. package/dist/components/Button/Button.d.ts +1 -1
  6. package/dist/components/Button/Button.styles.d.ts +1 -1
  7. package/dist/components/Checkbox/Checkbox.d.ts +3 -1
  8. package/dist/components/Checkbox/Checkbox.styles.d.ts +3 -2
  9. package/dist/components/Checkbox/index.d.ts +1 -0
  10. package/dist/components/Checkbox/types.d.ts +3 -0
  11. package/dist/components/CloseButton/CloseButton.styles.d.ts +1 -1
  12. package/dist/components/ControlWrapper/ControlWrapper.d.ts +10 -3
  13. package/dist/components/ControlWrapper/ControlWrapper.styles.d.ts +3 -2
  14. package/dist/components/ControlWrapper/constants.d.ts +1 -0
  15. package/dist/components/ControlWrapper/helpers.d.ts +4 -0
  16. package/dist/components/ControlWrapper/index.d.ts +3 -0
  17. package/dist/components/ControlWrapper/types.d.ts +14 -0
  18. package/dist/components/CssBaseline/CssBaseline.styles.d.ts +1 -1
  19. package/dist/components/DateInput/DateInput.d.ts +1 -3
  20. package/dist/components/DateInput/DateInput.styles.d.ts +1 -1
  21. package/dist/components/DateInput/constants.d.ts +1 -1
  22. package/dist/components/DatePicker/DatePicker.d.ts +4 -4
  23. package/dist/components/DatePicker/DatePicker.styles.d.ts +1 -1
  24. package/dist/components/DatePicker/components/DatePickerBase/DatePickerBase.d.ts +5 -0
  25. package/dist/components/DatePicker/components/DatePickerBase/index.d.ts +1 -0
  26. package/dist/components/DatePicker/components/DatePickerHeader/DatePickerHeader.styles.d.ts +1 -1
  27. package/dist/components/DatePicker/components/PopperContainer/PopperContainer.d.ts +2 -4
  28. package/dist/components/DatePicker/components/index.d.ts +1 -0
  29. package/dist/components/DatePicker/constants.d.ts +7 -2
  30. package/dist/components/DatePicker/helpers.d.ts +0 -3
  31. package/dist/components/DatePicker/index.d.ts +1 -0
  32. package/dist/components/DatePicker/types.d.ts +3 -5
  33. package/dist/components/Description/Description.styles.d.ts +1 -1
  34. package/dist/components/FileInput/FileInput.d.ts +1 -1
  35. package/dist/components/FileInput/FileInput.styles.d.ts +1 -1
  36. package/dist/components/FileItem/FileItem.styles.d.ts +1 -1
  37. package/dist/components/FileItem/constants.d.ts +3 -4
  38. package/dist/components/FileItem/helpers.d.ts +3 -2
  39. package/dist/components/FileItem/types.d.ts +1 -2
  40. package/dist/components/FiltersPane/FiltersPane.d.ts +4 -2
  41. package/dist/components/FiltersPane/FiltersPane.styles.d.ts +2 -2
  42. package/dist/components/FiltersPane/components/Filter/Filter.d.ts +1 -2
  43. package/dist/components/FiltersPane/components/Filter/helpers.d.ts +1 -0
  44. package/dist/components/FiltersPane/components/FilterDateSingle/FilterDateSingle.d.ts +15 -0
  45. package/dist/components/FiltersPane/components/FilterDateSingle/FilterDateSingle.styles.d.ts +11 -0
  46. package/dist/components/FiltersPane/components/FilterDateSingle/index.d.ts +2 -0
  47. package/dist/components/FiltersPane/components/FilterInterval/FilterInterval.d.ts +3 -11
  48. package/dist/components/FiltersPane/components/FilterInterval/FilterInterval.styles.d.ts +3 -6
  49. package/dist/components/FiltersPane/components/FilterMultiSelect/FilterMultiSelect.d.ts +0 -1
  50. package/dist/components/FiltersPane/components/FilterSelect/FilterSelect.styles.d.ts +3 -6
  51. package/dist/components/FiltersPane/components/FilterValueView/FilterValueView.d.ts +6 -5
  52. package/dist/components/FiltersPane/components/FilterValueView/FilterValueView.styles.d.ts +1 -1
  53. package/dist/components/FiltersPane/components/FilterWithDates/FilterWithDates.styles.d.ts +5 -15
  54. package/dist/components/FiltersPane/components/FilterWithPeriod/FilterWithPeriod.styles.d.ts +1 -1
  55. package/dist/components/FiltersPane/components/FilterWrapper/FilterWrapper.d.ts +1 -2
  56. package/dist/components/FiltersPane/components/FilterWrapper/FilterWrapper.styles.d.ts +2 -2
  57. package/dist/components/FiltersPane/components/FilterWrapper/helpers.d.ts +1 -1
  58. package/dist/components/FiltersPane/components/FiltersPaneSearch/FiltersPaneSearch.d.ts +2 -1
  59. package/dist/components/FiltersPane/components/FiltersPaneSearch/FiltersPaneSearch.styles.d.ts +1 -1
  60. package/dist/components/FiltersPane/components/index.d.ts +1 -0
  61. package/dist/components/FiltersPane/constants.d.ts +1 -1
  62. package/dist/components/FiltersPane/helpers.d.ts +1 -1
  63. package/dist/components/FiltersPane/index.d.ts +1 -0
  64. package/dist/components/FiltersPane/types.d.ts +15 -5
  65. package/dist/components/Flag/Flag.styles.d.ts +1 -1
  66. package/dist/components/FlexibleTable/FlexibleTable.d.ts +1 -1
  67. package/dist/components/FlexibleTable/FlexibleTable.styles.d.ts +2 -2
  68. package/dist/components/FlexibleTable/components/FlexibleTableCell/FlexibleTableCell.d.ts +4 -3
  69. package/dist/components/FlexibleTable/components/FlexibleTableCell/FlexibleTableCell.styles.d.ts +1 -1
  70. package/dist/components/FlexibleTable/components/FlexibleTableRow/FlexibleTableRow.d.ts +1 -3
  71. package/dist/components/FlexibleTable/components/FlexibleTableRow/FlexibleTableRow.styles.d.ts +1 -1
  72. package/dist/components/FlexibleTable/helpers.d.ts +2 -2
  73. package/dist/components/FlexibleTable/types.d.ts +19 -11
  74. package/dist/components/FloatDocActions/FloatDocActions.d.ts +6 -0
  75. package/dist/components/FloatDocActions/FloatDocActions.styles.d.ts +8 -0
  76. package/dist/components/FloatDocActions/components/DocActions/DocActions.d.ts +12 -0
  77. package/dist/components/FloatDocActions/components/DocActions/DocActions.styles.d.ts +6 -0
  78. package/dist/components/FloatDocActions/components/DocActions/constants.d.ts +1 -0
  79. package/dist/components/FloatDocActions/components/DocActions/index.d.ts +4 -0
  80. package/dist/components/FloatDocActions/components/DocActions/types.d.ts +2 -0
  81. package/dist/components/FloatDocActions/components/index.d.ts +1 -0
  82. package/dist/components/FloatDocActions/constants.d.ts +1 -0
  83. package/dist/components/FloatDocActions/index.d.ts +3 -0
  84. package/dist/components/Icon/Icon.styles.d.ts +1 -1
  85. package/dist/components/Icon/icons/index.d.ts +31 -0
  86. package/dist/components/Icon/index.d.ts +1 -1
  87. package/dist/components/Icon/types.d.ts +7 -11
  88. package/dist/components/IconButton/IconButton.d.ts +1 -2
  89. package/dist/components/IconButton/IconButton.styles.d.ts +1 -1
  90. package/dist/components/IconButton/constants.d.ts +1 -1
  91. package/dist/components/IncrementInput/IncrementInput.styles.d.ts +1 -3
  92. package/dist/components/Input/Input.d.ts +3 -3
  93. package/dist/components/Input/Input.styles.d.ts +1 -1
  94. package/dist/components/Input/InputBase.d.ts +3 -3
  95. package/dist/components/List/List.d.ts +2 -1
  96. package/dist/components/List/List.styles.d.ts +3 -2
  97. package/dist/components/List/components/ListItem/ListItem.d.ts +2 -0
  98. package/dist/components/List/components/ListItem/ListItem.styles.d.ts +3 -2
  99. package/dist/components/List/index.d.ts +2 -1
  100. package/dist/components/List/types.d.ts +8 -0
  101. package/dist/components/Modal/Modal.d.ts +1 -1
  102. package/dist/components/Modal/Modal.styles.d.ts +1 -1
  103. package/dist/components/MoreMenu/MoreMenu.styles.d.ts +1 -1
  104. package/dist/components/MultiSelect/MultiSelect.d.ts +0 -1
  105. package/dist/components/MultiSelect/MultiSelect.styles.d.ts +1 -1
  106. package/dist/components/MultiSelect/components/MultiSelectInput/MultiSelectInput.styles.d.ts +1 -1
  107. package/dist/components/MultiSelectList/MultiSelectList.styles.d.ts +1 -1
  108. package/dist/components/MultiSelectList/constants.d.ts +1 -1
  109. package/dist/components/MultiSelectList/helpers.d.ts +1 -1
  110. package/dist/components/NewMoreMenu/NewMoreMenu.d.ts +5 -2
  111. package/dist/components/NewMoreMenu/NewMoreMenu.styles.d.ts +1 -1
  112. package/dist/components/Notification/Notification.d.ts +3 -3
  113. package/dist/components/Notification/Notification.styles.d.ts +1 -1
  114. package/dist/components/NumberInput/NumberInput.d.ts +1 -2
  115. package/dist/components/NumberInput/helpers.d.ts +2 -2
  116. package/dist/components/PhoneInput/PhoneInput.styles.d.ts +1 -1
  117. package/dist/components/PhoneInput/components/PhoneInputCountryList/PhoneInputCountryList.styles.d.ts +1 -1
  118. package/dist/components/RadioButton/RadioButton.d.ts +3 -1
  119. package/dist/components/RadioButton/RadioButton.styles.d.ts +3 -2
  120. package/dist/components/RadioButton/index.d.ts +1 -0
  121. package/dist/components/RadioButton/types.d.ts +3 -0
  122. package/dist/components/ScrollIntoViewIfNeeded/ScrollIntoViewIfNeeded.d.ts +3 -373
  123. package/dist/components/ScrollIntoViewIfNeeded/constants.d.ts +1 -1
  124. package/dist/components/SearchInput/SearchInput.d.ts +2 -3
  125. package/dist/components/Select/Select.d.ts +3 -3
  126. package/dist/components/Select/Select.styles.d.ts +12 -22
  127. package/dist/components/Select/components/SelectList/SelectList.d.ts +8 -6
  128. package/dist/components/Select/components/SelectList/SelectList.styles.d.ts +3 -2
  129. package/dist/components/Select/components/SelectListItem/SelectListItem.d.ts +4 -3
  130. package/dist/components/Select/helpers.d.ts +1 -1
  131. package/dist/components/Select/index.d.ts +1 -1
  132. package/dist/components/Select/types.d.ts +4 -0
  133. package/dist/components/Selector/Selector.d.ts +0 -1
  134. package/dist/components/Selector/Selector.styles.d.ts +1 -7
  135. package/dist/components/Skeleton/Skeleton.styles.d.ts +1 -1
  136. package/dist/components/SmartInput/SmartInput.d.ts +1 -1
  137. package/dist/components/Status/Status.styles.d.ts +3 -2
  138. package/dist/components/Status/constants.d.ts +0 -1
  139. package/dist/components/Status/index.d.ts +1 -0
  140. package/dist/components/Status/types.d.ts +5 -2
  141. package/dist/components/Switch/Switch.d.ts +3 -2
  142. package/dist/components/Switch/Switch.styles.d.ts +3 -2
  143. package/dist/components/Switch/types.d.ts +3 -0
  144. package/dist/components/TextArea/TextArea.d.ts +5 -6
  145. package/dist/components/TextArea/TextArea.styles.d.ts +5 -4
  146. package/dist/components/TextArea/index.d.ts +1 -1
  147. package/dist/components/TextArea/types.d.ts +4 -2
  148. package/dist/components/TextButton/TextButton.d.ts +1 -1
  149. package/dist/components/TextButton/TextButton.styles.d.ts +1 -1
  150. package/dist/components/TextWithInfo/TextWithInfo.styles.d.ts +1 -1
  151. package/dist/components/TextWithTooltip/TextWithTooltip.d.ts +2 -0
  152. package/dist/components/TextWithTooltip/TextWithTooltip.styles.d.ts +1 -1
  153. package/dist/components/ThemedPreloader/ThemedPreloader.styles.d.ts +1 -1
  154. package/dist/components/ThemedPreloader/components/DotsPreloader/DotsPreloader.styles.d.ts +1 -1
  155. package/dist/components/ThemedPreloader/components/SvgPreloader/SvgPreloader.styles.d.ts +1 -1
  156. package/dist/components/Toaster/Toaster.styles.d.ts +1 -1
  157. package/dist/components/Tooltip/Tooltip.d.ts +3 -0
  158. package/dist/components/Tooltip/Tooltip.styles.d.ts +3 -2
  159. package/dist/components/Tooltip/types.d.ts +3 -0
  160. package/dist/components/WithMessages/WithMessages.d.ts +1 -1
  161. package/dist/components/WithMessages/WithMessages.styles.d.ts +1 -1
  162. package/dist/components/WithPopup/WithPopup.d.ts +11 -3
  163. package/dist/components/WithPopup/WithPopup.styles.d.ts +1 -1
  164. package/dist/components/WithPopup/types.d.ts +4 -4
  165. package/dist/components/WithTooltip/WithTooltip.d.ts +2 -0
  166. package/dist/components/index.d.ts +1 -1
  167. package/dist/constants/phone-info.d.ts +1 -1
  168. package/dist/helpers/misc.d.ts +5 -3
  169. package/dist/helpers/phone.d.ts +1 -1
  170. package/dist/hooks/index.d.ts +8 -5
  171. package/dist/hooks/use-dropdown.d.ts +3 -3
  172. package/dist/hooks/use-intersection-ref.d.ts +9 -0
  173. package/dist/hooks/use-latest-ref.d.ts +2 -0
  174. package/dist/hooks/use-merge.d.ts +1 -1
  175. package/dist/hooks/use-mixed-styles.d.ts +3 -3
  176. package/dist/hooks/use-on-click-outside.d.ts +2 -2
  177. package/dist/hooks/use-resize-ref.d.ts +8 -0
  178. package/dist/hooks/use-tweak-styles.d.ts +8 -7
  179. package/dist/theme/Provider.d.ts +3 -13
  180. package/dist/theme/common.d.ts +34 -4
  181. package/dist/theme/helpers.d.ts +3 -16
  182. package/dist/theme/index.d.ts +0 -2
  183. package/dist/theme/types.d.ts +13 -11
  184. package/dist/true-react-common-ui-kit.js +10366 -30803
  185. package/dist/true-react-common-ui-kit.js.map +1 -1
  186. package/dist/true-react-common-ui-kit.umd.cjs +1 -32520
  187. package/dist/true-react-common-ui-kit.umd.cjs.map +1 -1
  188. package/dist/types.d.ts +8 -2
  189. package/package.json +36 -39
  190. package/src/components/AccountInfo/AccountInfo.stories.tsx +19 -27
  191. package/src/components/AccountInfo/AccountInfo.tsx +2 -3
  192. package/src/components/AddButton/AddButton.stories.tsx +14 -17
  193. package/src/components/AddButton/AddButton.tsx +3 -5
  194. package/src/components/Button/Button.stories.tsx +8 -26
  195. package/src/components/Button/Button.tsx +76 -77
  196. package/src/components/Checkbox/Checkbox.stories.tsx +27 -16
  197. package/src/components/Checkbox/Checkbox.styles.ts +3 -1
  198. package/src/components/Checkbox/Checkbox.tsx +7 -5
  199. package/src/components/Checkbox/index.ts +1 -0
  200. package/src/components/Checkbox/types.ts +4 -0
  201. package/src/components/CloseButton/CloseButton.stories.tsx +5 -6
  202. package/src/components/CloseButton/CloseButton.tsx +2 -4
  203. package/src/components/Colors/Colors.stories.tsx +64 -3
  204. package/src/components/ControlWrapper/ControlWrapper.stories.tsx +46 -35
  205. package/src/components/ControlWrapper/ControlWrapper.styles.ts +15 -6
  206. package/src/components/ControlWrapper/ControlWrapper.tsx +70 -45
  207. package/src/components/ControlWrapper/constants.ts +11 -0
  208. package/src/components/ControlWrapper/helpers.ts +11 -0
  209. package/src/components/ControlWrapper/index.ts +3 -0
  210. package/src/components/ControlWrapper/types.ts +19 -0
  211. package/src/components/CssBaseline/CssBaseline.styles.ts +2 -0
  212. package/src/components/CssBaseline/CssBaseline.tsx +2 -3
  213. package/src/components/DateInput/DateInput.stories.tsx +13 -31
  214. package/src/components/DateInput/DateInput.tsx +61 -64
  215. package/src/components/DatePicker/DatePicker.stories.tsx +18 -42
  216. package/src/components/DatePicker/DatePicker.styles.ts +3 -1
  217. package/src/components/DatePicker/DatePicker.tsx +286 -261
  218. package/src/components/DatePicker/components/DatePickerBase/DatePickerBase.tsx +14 -0
  219. package/src/components/DatePicker/components/DatePickerBase/index.ts +1 -0
  220. package/src/components/DatePicker/components/PopperContainer/PopperContainer.tsx +4 -4
  221. package/src/components/DatePicker/components/index.ts +1 -0
  222. package/src/components/DatePicker/constants.ts +9 -3
  223. package/src/components/DatePicker/helpers.ts +1 -13
  224. package/src/components/DatePicker/index.ts +1 -0
  225. package/src/components/DatePicker/types.ts +6 -6
  226. package/src/components/Description/Description.stories.tsx +11 -16
  227. package/src/components/Description/Description.tsx +2 -3
  228. package/src/components/FileInput/FileInput.stories.tsx +59 -63
  229. package/src/components/FileInput/FileInput.tsx +87 -95
  230. package/src/components/FileItem/FileItem.stories.tsx +48 -48
  231. package/src/components/FileItem/FileItem.tsx +2 -4
  232. package/src/components/FileItem/constants.ts +3 -14
  233. package/src/components/FileItem/helpers.ts +3 -2
  234. package/src/components/FileItem/types.ts +1 -3
  235. package/src/components/FiltersPane/FiltersPane.stories.tsx +72 -52
  236. package/src/components/FiltersPane/FiltersPane.tsx +19 -11
  237. package/src/components/FiltersPane/components/Filter/Filter.tsx +32 -15
  238. package/src/components/FiltersPane/components/Filter/helpers.ts +4 -4
  239. package/src/components/FiltersPane/components/FilterDateSingle/FilterDateSingle.styles.ts +34 -0
  240. package/src/components/FiltersPane/components/FilterDateSingle/FilterDateSingle.tsx +103 -0
  241. package/src/components/FiltersPane/components/FilterDateSingle/index.ts +2 -0
  242. package/src/components/FiltersPane/components/FilterInterval/FilterInterval.styles.ts +1 -2
  243. package/src/components/FiltersPane/components/FilterInterval/FilterInterval.tsx +7 -20
  244. package/src/components/FiltersPane/components/FilterSelect/FilterSelect.styles.ts +1 -2
  245. package/src/components/FiltersPane/components/FilterSelect/FilterSelect.tsx +22 -23
  246. package/src/components/FiltersPane/components/FilterValueView/FilterValueView.tsx +62 -93
  247. package/src/components/FiltersPane/components/FilterWithDates/FilterWithDates.styles.ts +2 -26
  248. package/src/components/FiltersPane/components/FilterWithDates/FilterWithDates.tsx +9 -44
  249. package/src/components/FiltersPane/components/FilterWithPeriod/FilterWithPeriod.tsx +4 -3
  250. package/src/components/FiltersPane/components/FilterWrapper/FilterWrapper.tsx +6 -8
  251. package/src/components/FiltersPane/components/FilterWrapper/helpers.ts +1 -1
  252. package/src/components/FiltersPane/components/FiltersPaneSearch/FiltersPaneSearch.styles.ts +5 -0
  253. package/src/components/FiltersPane/components/FiltersPaneSearch/FiltersPaneSearch.tsx +19 -19
  254. package/src/components/FiltersPane/components/index.ts +1 -0
  255. package/src/components/FiltersPane/constants.ts +2 -0
  256. package/src/components/FiltersPane/helpers.ts +3 -3
  257. package/src/components/FiltersPane/index.ts +1 -0
  258. package/src/components/FiltersPane/types.ts +24 -6
  259. package/src/components/Flag/Flag.stories.tsx +15 -20
  260. package/src/components/Flag/Flag.tsx +2 -2
  261. package/src/components/FlexibleTable/FlexibleTable.stories.tsx +47 -50
  262. package/src/components/FlexibleTable/FlexibleTable.styles.ts +5 -2
  263. package/src/components/FlexibleTable/FlexibleTable.tsx +31 -52
  264. package/src/components/FlexibleTable/components/FlexibleTableCell/FlexibleTableCell.styles.ts +1 -0
  265. package/src/components/FlexibleTable/components/FlexibleTableCell/FlexibleTableCell.tsx +13 -7
  266. package/src/components/FlexibleTable/components/FlexibleTableRow/FlexibleTableRow.tsx +13 -11
  267. package/src/components/FlexibleTable/types.ts +19 -11
  268. package/src/components/FloatDocActions/FloatDocActions.stories.tsx +111 -0
  269. package/src/components/FloatDocActions/FloatDocActions.styles.ts +12 -0
  270. package/src/components/FloatDocActions/FloatDocActions.tsx +34 -0
  271. package/src/components/FloatDocActions/components/DocActions/DocActions.styles.ts +29 -0
  272. package/src/components/FloatDocActions/components/DocActions/DocActions.tsx +43 -0
  273. package/src/components/FloatDocActions/components/DocActions/constants.ts +1 -0
  274. package/src/components/FloatDocActions/components/DocActions/index.ts +4 -0
  275. package/src/components/FloatDocActions/components/DocActions/types.ts +3 -0
  276. package/src/components/FloatDocActions/components/index.ts +1 -0
  277. package/src/components/FloatDocActions/constants.ts +1 -0
  278. package/src/components/FloatDocActions/index.ts +3 -0
  279. package/src/components/Icon/Icon.stories.tsx +80 -67
  280. package/src/components/Icon/Icon.styles.ts +1 -1
  281. package/src/components/Icon/Icon.tsx +17 -12
  282. package/src/components/Icon/icons/calendar.svg +1 -0
  283. package/src/components/Icon/icons/check.svg +1 -0
  284. package/src/components/Icon/icons/chevron-down-small.svg +1 -0
  285. package/src/components/Icon/icons/chevron-down.svg +1 -0
  286. package/src/components/Icon/icons/chevron-left.svg +1 -0
  287. package/src/components/Icon/icons/chevron-right.svg +1 -0
  288. package/src/components/Icon/icons/close-large.svg +1 -0
  289. package/src/components/Icon/icons/close-window.svg +1 -0
  290. package/src/components/Icon/icons/close.svg +1 -0
  291. package/src/components/Icon/icons/filter.svg +1 -0
  292. package/src/components/Icon/icons/index.ts +62 -0
  293. package/src/components/Icon/icons/information.svg +1 -0
  294. package/src/components/Icon/icons/menu.svg +1 -0
  295. package/src/components/Icon/icons/minus.svg +1 -0
  296. package/src/components/Icon/icons/plus.svg +1 -0
  297. package/src/components/Icon/icons/search.svg +1 -0
  298. package/src/components/Icon/icons/status-error.svg +1 -0
  299. package/src/components/Icon/icons/status-info.svg +1 -0
  300. package/src/components/Icon/icons/status-not-ok.svg +1 -0
  301. package/src/components/Icon/icons/status-ok.svg +1 -0
  302. package/src/components/Icon/icons/status-warning.svg +1 -0
  303. package/src/components/Icon/icons/trash-can.svg +1 -0
  304. package/src/components/Icon/index.ts +1 -1
  305. package/src/components/Icon/types.ts +7 -13
  306. package/src/components/IconButton/IconButton.stories.tsx +7 -12
  307. package/src/components/IconButton/IconButton.styles.ts +15 -13
  308. package/src/components/IconButton/IconButton.tsx +44 -48
  309. package/src/components/IconButton/constants.ts +1 -1
  310. package/src/components/IncrementInput/IncrementInput.stories.tsx +25 -23
  311. package/src/components/IncrementInput/IncrementInput.styles.ts +31 -39
  312. package/src/components/IncrementInput/IncrementInput.tsx +28 -25
  313. package/src/components/Input/Input.stories.tsx +38 -68
  314. package/src/components/Input/Input.styles.ts +5 -2
  315. package/src/components/Input/Input.tsx +29 -26
  316. package/src/components/Input/InputBase.tsx +170 -174
  317. package/src/components/List/List.stories.tsx +34 -17
  318. package/src/components/List/List.styles.ts +4 -2
  319. package/src/components/List/List.tsx +15 -7
  320. package/src/components/List/components/ListItem/ListItem.styles.ts +4 -1
  321. package/src/components/List/components/ListItem/ListItem.tsx +8 -6
  322. package/src/components/List/index.ts +2 -1
  323. package/src/components/List/types.ts +11 -0
  324. package/src/components/Modal/Modal.stories.tsx +50 -59
  325. package/src/components/Modal/Modal.tsx +3 -5
  326. package/src/components/MoreMenu/MoreMenu.stories.tsx +24 -15
  327. package/src/components/MoreMenu/MoreMenu.tsx +2 -4
  328. package/src/components/MultiSelect/MultiSelect.stories.tsx +23 -20
  329. package/src/components/MultiSelect/MultiSelect.tsx +2 -4
  330. package/src/components/MultiSelectList/MultiSelectList.tsx +15 -11
  331. package/src/components/MultiSelectList/helpers.ts +2 -2
  332. package/src/components/NewMoreMenu/NewMoreMenu.stories.tsx +51 -39
  333. package/src/components/NewMoreMenu/NewMoreMenu.tsx +29 -24
  334. package/src/components/Notification/Notification.stories.tsx +37 -34
  335. package/src/components/Notification/Notification.tsx +11 -20
  336. package/src/components/NumberInput/NumberInput.stories.tsx +32 -28
  337. package/src/components/NumberInput/NumberInput.tsx +91 -93
  338. package/src/components/PhoneInput/PhoneInput.stories.tsx +29 -55
  339. package/src/components/PhoneInput/PhoneInput.tsx +3 -4
  340. package/src/components/PhoneInput/components/PhoneInputCountryList/PhoneInputCountryList.stories.tsx +5 -11
  341. package/src/components/PhoneInput/components/PhoneInputCountryList/PhoneInputCountryList.tsx +1 -4
  342. package/src/components/RadioButton/RadioButton.stories.tsx +31 -21
  343. package/src/components/RadioButton/RadioButton.styles.ts +2 -1
  344. package/src/components/RadioButton/RadioButton.tsx +12 -5
  345. package/src/components/RadioButton/index.ts +1 -0
  346. package/src/components/RadioButton/types.ts +4 -0
  347. package/src/components/ScrollIntoViewIfNeeded/ScrollIntoViewIfNeeded.ts +15 -9
  348. package/src/components/SearchInput/SearchInput.stories.tsx +19 -14
  349. package/src/components/SearchInput/SearchInput.styles.ts +6 -12
  350. package/src/components/SearchInput/SearchInput.tsx +21 -24
  351. package/src/components/Select/CustomSelect.stories.tsx +29 -32
  352. package/src/components/Select/MultiSelect.stories.tsx +45 -45
  353. package/src/components/Select/Select.stories.tsx +45 -44
  354. package/src/components/Select/Select.styles.ts +5 -40
  355. package/src/components/Select/Select.tsx +62 -52
  356. package/src/components/Select/components/SelectList/SelectList.styles.ts +2 -1
  357. package/src/components/Select/components/SelectList/SelectList.tsx +13 -7
  358. package/src/components/Select/components/SelectListItem/SelectListItem.tsx +5 -2
  359. package/src/components/Select/index.ts +1 -1
  360. package/src/components/Select/types.ts +3 -0
  361. package/src/components/Selector/Selector.stories.tsx +29 -27
  362. package/src/components/Selector/Selector.styles.ts +31 -133
  363. package/src/components/Selector/Selector.tsx +37 -53
  364. package/src/components/Skeleton/Skeleton.stories.tsx +13 -12
  365. package/src/components/SmartInput/SmartInput.stories.tsx +23 -23
  366. package/src/components/SmartInput/SmartInput.tsx +85 -87
  367. package/src/components/Status/Status.stories.tsx +79 -28
  368. package/src/components/Status/Status.styles.ts +2 -37
  369. package/src/components/Status/Status.tsx +5 -4
  370. package/src/components/Status/constants.ts +0 -10
  371. package/src/components/Status/index.ts +1 -1
  372. package/src/components/Status/types.ts +7 -3
  373. package/src/components/Switch/Switch.stories.tsx +19 -26
  374. package/src/components/Switch/Switch.styles.ts +21 -13
  375. package/src/components/Switch/Switch.tsx +11 -6
  376. package/src/components/Switch/types.ts +5 -0
  377. package/src/components/TextArea/TextArea.stories.tsx +37 -26
  378. package/src/components/TextArea/TextArea.styles.ts +15 -8
  379. package/src/components/TextArea/TextArea.tsx +114 -83
  380. package/src/components/TextArea/index.ts +1 -1
  381. package/src/components/TextArea/types.ts +5 -5
  382. package/src/components/TextButton/TextButton.stories.tsx +8 -19
  383. package/src/components/TextButton/TextButton.styles.ts +1 -0
  384. package/src/components/TextButton/TextButton.tsx +68 -69
  385. package/src/components/TextWithInfo/TextWithInfo.stories.tsx +13 -21
  386. package/src/components/TextWithInfo/TextWithInfo.tsx +2 -4
  387. package/src/components/TextWithTooltip/TextWithTooltip.stories.tsx +26 -25
  388. package/src/components/TextWithTooltip/TextWithTooltip.tsx +7 -6
  389. package/src/components/ThemedPreloader/ThemedPreloader.stories.tsx +12 -23
  390. package/src/components/ThemedPreloader/ThemedPreloader.tsx +2 -4
  391. package/src/components/ThemedPreloader/components/SvgPreloader/SvgPreloader.tsx +4 -4
  392. package/src/components/Toaster/Toaster.stories.tsx +16 -14
  393. package/src/components/Toaster/Toaster.tsx +2 -4
  394. package/src/components/Tooltip/Tooltip.stories.tsx +15 -4
  395. package/src/components/Tooltip/Tooltip.styles.ts +2 -1
  396. package/src/components/Tooltip/Tooltip.tsx +12 -5
  397. package/src/components/Tooltip/types.ts +5 -0
  398. package/src/components/WithMessages/WithMessages.stories.tsx +16 -20
  399. package/src/components/WithMessages/WithMessages.tsx +41 -40
  400. package/src/components/WithPopup/WithPopup.stories.tsx +27 -26
  401. package/src/components/WithPopup/WithPopup.tsx +36 -15
  402. package/src/components/WithTooltip/WithTooltip.stories.tsx +28 -28
  403. package/src/components/WithTooltip/WithTooltip.tsx +4 -0
  404. package/src/components/index.ts +1 -1
  405. package/src/helpers/misc.ts +15 -7
  406. package/src/helpers/popper-helpers.ts +0 -1
  407. package/src/hooks/index.ts +8 -5
  408. package/src/hooks/use-intersection-ref.ts +48 -0
  409. package/src/hooks/use-latest-ref.ts +11 -0
  410. package/src/hooks/use-on-click-outside.ts +22 -14
  411. package/src/hooks/use-resize-ref.ts +42 -0
  412. package/src/hooks/use-tweak-styles.ts +14 -51
  413. package/src/theme/Provider.tsx +4 -21
  414. package/src/theme/common.ts +33 -36
  415. package/src/theme/helpers.ts +50 -40
  416. package/src/theme/index.ts +0 -2
  417. package/src/theme/types.ts +20 -16
  418. package/src/types.ts +16 -6
  419. package/dist/components/AccountInfo/AccountInfo.stories.d.ts +0 -6
  420. package/dist/components/AddButton/AddButton.stories.d.ts +0 -6
  421. package/dist/components/Button/Button.stories.d.ts +0 -6
  422. package/dist/components/Checkbox/Checkbox.stories.d.ts +0 -8
  423. package/dist/components/CloseButton/CloseButton.stories.d.ts +0 -5
  424. package/dist/components/Colors/Colors.d.ts +0 -2
  425. package/dist/components/Colors/Colors.stories.d.ts +0 -5
  426. package/dist/components/Colors/Colors.styles.d.ts +0 -1
  427. package/dist/components/Colors/index.d.ts +0 -1
  428. package/dist/components/ControlWrapper/ControlWrapper.stories.d.ts +0 -6
  429. package/dist/components/DateInput/DateInput.stories.d.ts +0 -7
  430. package/dist/components/DatePicker/DatePicker.stories.d.ts +0 -7
  431. package/dist/components/Description/Description.stories.d.ts +0 -16
  432. package/dist/components/FileInput/FileInput.stories.d.ts +0 -7
  433. package/dist/components/FileItem/FileItem.stories.d.ts +0 -8
  434. package/dist/components/FiltersPane/FiltersPane.stories.d.ts +0 -31
  435. package/dist/components/Flag/Flag.stories.d.ts +0 -12
  436. package/dist/components/FlexibleTable/FlexibleTable.stories.d.ts +0 -19
  437. package/dist/components/Icon/Icon.stories.d.ts +0 -6
  438. package/dist/components/Icon/complexIcons/icons.d.ts +0 -10
  439. package/dist/components/Icon/complexIcons/index.d.ts +0 -1
  440. package/dist/components/Icon/components/ComplexIconBoilerplate/ComplexIconBoilerplate.d.ts +0 -6
  441. package/dist/components/Icon/components/ComplexIconBoilerplate/index.d.ts +0 -1
  442. package/dist/components/Icon/components/IconBolerplate/IconBoilerplate.d.ts +0 -6
  443. package/dist/components/Icon/components/IconBolerplate/index.d.ts +0 -1
  444. package/dist/components/Icon/components/index.d.ts +0 -2
  445. package/dist/components/Icon/helpers.d.ts +0 -6
  446. package/dist/components/Icon/icons-list.d.ts +0 -1
  447. package/dist/components/IconButton/IconButton.stories.d.ts +0 -6
  448. package/dist/components/IncrementInput/IncrementInput.stories.d.ts +0 -6
  449. package/dist/components/Input/Input.stories.d.ts +0 -25
  450. package/dist/components/List/List.stories.d.ts +0 -5
  451. package/dist/components/Modal/Modal.stories.d.ts +0 -29
  452. package/dist/components/MoreMenu/MoreMenu.stories.d.ts +0 -6
  453. package/dist/components/MultiSelect/MultiSelect.stories.d.ts +0 -13
  454. package/dist/components/NewMoreMenu/NewMoreMenu.stories.d.ts +0 -12
  455. package/dist/components/Notification/Notification.stories.d.ts +0 -8
  456. package/dist/components/NumberInput/NumberInput.stories.d.ts +0 -7
  457. package/dist/components/PhoneInput/PhoneInput.stories.d.ts +0 -28
  458. package/dist/components/PhoneInput/components/PhoneInputCountryList/PhoneInputCountryList.stories.d.ts +0 -5
  459. package/dist/components/RadioButton/RadioButton.stories.d.ts +0 -7
  460. package/dist/components/SearchInput/SearchInput.stories.d.ts +0 -7
  461. package/dist/components/Select/CustomSelect.stories.d.ts +0 -11
  462. package/dist/components/Select/MultiSelect.stories.d.ts +0 -15
  463. package/dist/components/Select/Select.stories.d.ts +0 -15
  464. package/dist/components/Selector/Selector.stories.d.ts +0 -7
  465. package/dist/components/Skeleton/Skeleton.stories.d.ts +0 -6
  466. package/dist/components/SmartInput/SmartInput.stories.d.ts +0 -18
  467. package/dist/components/Status/Status.stories.d.ts +0 -6
  468. package/dist/components/Switch/Switch.stories.d.ts +0 -16
  469. package/dist/components/TextArea/TextArea.stories.d.ts +0 -17
  470. package/dist/components/TextButton/TextButton.stories.d.ts +0 -6
  471. package/dist/components/TextWithInfo/TextWithInfo.stories.d.ts +0 -12
  472. package/dist/components/TextWithTooltip/TextWithTooltip.stories.d.ts +0 -24
  473. package/dist/components/ThemedPreloader/ThemedPreloader.stories.d.ts +0 -17
  474. package/dist/components/Toaster/Toaster.stories.d.ts +0 -5
  475. package/dist/components/Tooltip/Tooltip.stories.d.ts +0 -5
  476. package/dist/components/WithMessages/WithMessages.stories.d.ts +0 -7
  477. package/dist/components/WithPopup/WithPopup.stories.d.ts +0 -16
  478. package/dist/components/WithTooltip/WithTooltip.stories.d.ts +0 -6
  479. package/dist/style.css +0 -820
  480. package/dist/theme/create-themed-styles.d.ts +0 -2
  481. package/dist/theme/true-jss/ThemedStylesManager.d.ts +0 -18
  482. package/dist/theme/true-jss/TweakStylesManager.d.ts +0 -34
  483. package/dist/theme/true-jss/index.d.ts +0 -2
  484. package/dist/theme/true-jss/jss-context.d.ts +0 -9
  485. package/src/components/Colors/Colors.styles.ts +0 -36
  486. package/src/components/Colors/Colors.tsx +0 -26
  487. package/src/components/Colors/index.ts +0 -1
  488. package/src/components/Flag/augment.d.ts +0 -1
  489. package/src/components/Flag/customFlags/augment.d.ts +0 -1
  490. package/src/components/Icon/complexIcons/augment.d.ts +0 -1
  491. package/src/components/Icon/complexIcons/icons.ts +0 -19
  492. package/src/components/Icon/complexIcons/index.ts +0 -1
  493. package/src/components/Icon/components/ComplexIconBoilerplate/ComplexIconBoilerplate.tsx +0 -16
  494. package/src/components/Icon/components/ComplexIconBoilerplate/index.ts +0 -1
  495. package/src/components/Icon/components/IconBolerplate/IconBoilerplate.tsx +0 -43
  496. package/src/components/Icon/components/IconBolerplate/index.ts +0 -1
  497. package/src/components/Icon/components/index.ts +0 -2
  498. package/src/components/Icon/helpers.tsx +0 -9
  499. package/src/components/Icon/icons-list.ts +0 -855
  500. package/src/theme/create-themed-styles.ts +0 -78
  501. package/src/theme/true-jss/ThemedStylesManager.ts +0 -92
  502. package/src/theme/true-jss/TweakStylesManager.ts +0 -157
  503. package/src/theme/true-jss/index.ts +0 -2
  504. package/src/theme/true-jss/jss-context.tsx +0 -34
  505. package/src/vite-env.d.ts +0 -1
  506. /package/src/components/Icon/{complexIcons/avatarGreen.svg → icons/avatar.svg} +0 -0
  507. /package/src/components/Icon/{complexIcons/fileExcel.svg → icons/file-excel.svg} +0 -0
  508. /package/src/components/Icon/{complexIcons/fileImage.svg → icons/file-image.svg} +0 -0
  509. /package/src/components/Icon/{complexIcons/fileOther.svg → icons/file-other.svg} +0 -0
  510. /package/src/components/Icon/{complexIcons/filePdf.svg → icons/file-pdf.svg} +0 -0
  511. /package/src/components/Icon/{complexIcons/fileWord.svg → icons/file-word.svg} +0 -0
  512. /package/src/components/Icon/{complexIcons/fileXml.svg → icons/file-xml.svg} +0 -0
  513. /package/src/components/Icon/{complexIcons/fileZip.svg → icons/file-zip.svg} +0 -0
@@ -1,30 +1,28 @@
1
- import { merge } from 'lodash-es';
1
+ import { useMemo } from 'react';
2
+ import { createUseStyles } from 'react-jss';
2
3
  import {
3
4
  isArrayNotEmpty,
4
5
  isNotEmpty,
6
+ isString,
5
7
  mergeStyles,
6
8
  } from '@true-engineering/true-react-platform-helpers';
7
- import { IMaybeArray } from './types';
9
+ import { mixStyles } from '../hooks/use-mixed-styles';
10
+ import { useTheme } from './Provider';
11
+ import { IComponentName, IStyles, IUseStyles } from './types';
8
12
 
9
- const EMPTY_STYLES = {};
13
+ export const useThemeComponentStyles = <T>(
14
+ componentName?: IComponentName,
15
+ ): Partial<T> | undefined => {
16
+ const { components } = useTheme();
17
+ return isNotEmpty(componentName) ? (components?.[componentName] as never) : undefined;
18
+ };
10
19
 
11
- export const isTweakStyle = (key: string): boolean => key.startsWith('tweak');
20
+ const isTweakStyle = (key: string): boolean => key.startsWith('tweak');
12
21
 
13
- export const isStylesNotEmpty = <T>(tweakStyles?: T): tweakStyles is NonNullable<T> =>
22
+ const areStylesNotEmpty = <T>(tweakStyles?: T): tweakStyles is NonNullable<T> =>
14
23
  isNotEmpty(tweakStyles) && !Object.keys(tweakStyles).every(isTweakStyle);
15
24
 
16
- export const cleanStyles = <T>(tweakStyles?: T): T =>
17
- isStylesNotEmpty(tweakStyles) ? tweakStyles : (EMPTY_STYLES as T);
18
-
19
- export const mergeTweakStyles = <T>(tweakStyles?: IMaybeArray<T>): T | undefined => {
20
- if (!Array.isArray(tweakStyles)) {
21
- return tweakStyles;
22
- }
23
- const [first, ...rest] = tweakStyles;
24
- return isArrayNotEmpty(rest) ? mergeStyles(first, ...rest) : first;
25
- };
26
-
27
- export const checkStyles = (componentName: string, styles: Record<string, unknown>): void => {
25
+ const checkStyles = (styles: IStyles<string>, componentName = 'LocalComponent'): void => {
28
26
  const invalidClasses = Object.keys(styles).filter(isTweakStyle);
29
27
 
30
28
  if (isArrayNotEmpty(invalidClasses)) {
@@ -34,23 +32,8 @@ export const checkStyles = (componentName: string, styles: Record<string, unknow
34
32
  }
35
33
  };
36
34
 
37
- export const areStylesThemed = (styles: Record<string, unknown>): boolean =>
38
- // eslint-disable-next-line no-underscore-dangle
39
- styles.__themed === true;
40
-
41
- /**
42
- * Подмешивает стили из темы. Мутирует, добавляя специально поле,
43
- * по которому можно определить была ли уже произведена мутация ранее,
44
- * тем самым сохраняя ссылку на объект и позволяя этим кэшировать JSS стили
45
- */
46
- export const themedStyles = <T>(styles: T, themeComponentStyles: T): T => {
47
- merge(styles, themeComponentStyles); // mutation !!!!
48
- Object.defineProperty(styles, '__themed', { value: true });
49
- return styles;
50
- };
51
-
52
- type TweakStylesCache = (styles: object[], prev?: object[]) => object | undefined;
53
- export const getTweakStylesCache = (): TweakStylesCache => {
35
+ type TweakStylesCache = (styles: object[], idx?: number) => object | undefined;
36
+ const getTweakStylesCache = (): TweakStylesCache => {
54
37
  let mergedStyles: object | undefined;
55
38
  const cache = new WeakMap<object, TweakStylesCache>();
56
39
 
@@ -58,19 +41,46 @@ export const getTweakStylesCache = (): TweakStylesCache => {
58
41
  if (!cache.has(next)) {
59
42
  cache.set(next, getTweakStylesCache());
60
43
  }
44
+
61
45
  return cache.get(next)!; // eslint-disable-line @typescript-eslint/no-non-null-assertion
62
46
  };
63
47
 
64
- return (styles, prev = []) => {
65
- const [next, ...rest] = styles;
48
+ return (styles, idx = 0) => {
49
+ const next = styles.at(idx);
66
50
  if (isNotEmpty(next)) {
67
- return getNext(next)(rest, prev.concat(next));
51
+ return getNext(next)(styles, idx + 1);
68
52
  }
69
53
 
70
- if (isNotEmpty(mergedStyles)) {
71
- return mergedStyles;
54
+ if (!isNotEmpty(mergedStyles)) {
55
+ const [first, ...rest] = styles;
56
+ mergedStyles = isArrayNotEmpty(rest) ? mergeStyles(first, ...rest) : first;
72
57
  }
73
58
 
74
- return (mergedStyles = mergeTweakStyles(prev));
59
+ return mergedStyles;
60
+ };
61
+ };
62
+
63
+ const tweakStylesCache = getTweakStylesCache();
64
+ const useStyles = createUseStyles<string>((tweakStyles) => tweakStyles as never);
65
+
66
+ export const createThemedStyles: <C extends string>(
67
+ ...args: [IStyles<C>] | [IComponentName, IStyles<C>]
68
+ ) => IUseStyles<C> = (first, second?) => {
69
+ const componentName = isString(first) ? first : undefined;
70
+ const styles = second! ?? first; // eslint-disable-line @typescript-eslint/no-non-null-assertion
71
+
72
+ if (process.env.NODE_ENV !== 'production') {
73
+ checkStyles(styles, componentName);
74
+ }
75
+
76
+ return ({ theme, tweakStyles = theme }) => {
77
+ const themeStyles = useThemeComponentStyles<typeof styles>(componentName);
78
+
79
+ const data = useMemo(() => {
80
+ const resultStyles = mixStyles(styles, themeStyles, tweakStyles).filter(areStylesNotEmpty);
81
+ return { theme: tweakStylesCache(resultStyles) };
82
+ }, [themeStyles, tweakStyles]);
83
+
84
+ return useStyles(data);
75
85
  };
76
86
  };
@@ -1,6 +1,4 @@
1
1
  export * from './Provider';
2
- export * from './true-jss';
3
2
  export * from './common';
4
3
  export * from './types';
5
4
  export * from './helpers';
6
- export * from './create-themed-styles';
@@ -1,23 +1,22 @@
1
- import { Styles } from 'react-jss';
2
- import { Classes, JssValue } from 'jss';
1
+ import type { Classes, JssStyle, JssValue, Styles } from 'jss';
2
+ import type { IMaybeArray } from '@true-engineering/true-react-platform-helpers';
3
3
  import type {
4
4
  IAccountInfoStyles,
5
5
  IAddButtonStyles,
6
6
  IButtonStyles,
7
7
  ICheckboxStyles,
8
8
  ICloseButtonStyles,
9
- ICommonIcon,
10
- IComplexIcon,
11
- IWithMessagesStyles,
12
9
  IControlWrapperStyles,
13
10
  ICssBaselineStyles,
14
11
  IDateInputStyles,
15
12
  IDatePickerHeaderStyles,
16
13
  IDatePickerStyles,
17
14
  IDescriptionStyles,
15
+ IDocActionsStyles,
18
16
  IDotsPreloaderStyles,
19
17
  IFileInputStyles,
20
18
  IFileItemStyles,
19
+ IFilterDateSingleStyles,
21
20
  IFilterIntervalStyles,
22
21
  IFilterSelectStyles,
23
22
  IFiltersPaneSearchStyles,
@@ -32,6 +31,7 @@ import type {
32
31
  IFlexibleTableStyles,
33
32
  IIconButtonStyles,
34
33
  IIconStyles,
34
+ IIconType,
35
35
  IIncrementInputStyles,
36
36
  IInputStyles,
37
37
  IListItemStyles,
@@ -63,23 +63,27 @@ import type {
63
63
  IThemedPreloaderStyles,
64
64
  IToasterStyles,
65
65
  ITooltipStyles,
66
+ IWithMessagesStyles,
66
67
  IWithPopupStyles,
67
68
  IWithTooltipStyles,
68
69
  } from '../components';
69
70
 
70
- export type IStyles<C extends string, P = unknown> = Styles<C, P, Partial<Styles<C, P>>>;
71
+ export type IStyles<C extends string> = Styles<C>;
72
+
73
+ export type IStyle = JssStyle;
71
74
 
72
- export type IMaybeArray<T> = T[] | T;
73
75
  export type IMixedStyles<T> = IMaybeArray<T | boolean | undefined>;
74
- export type IUseStyles<C extends string, P = unknown> = (
75
- data?: P & { theme?: IMaybeArray<Partial<Styles<C, P>>> },
76
- ) => Classes<C>;
76
+
77
+ export type IUseStyles<C extends string> = (data: {
78
+ theme?: IMaybeArray<Partial<IStyles<C>>>;
79
+ tweakStyles?: IMaybeArray<Partial<IStyles<C>>>;
80
+ }) => Classes<C>;
77
81
 
78
82
  export type ITweakStyles<
79
83
  StyleCreator,
80
84
  ChildTweakStyles = unknown,
81
- > = StyleCreator extends IUseStyles<infer C, infer P>
82
- ? Partial<Styles<C, P>> & Partial<ChildTweakStyles>
85
+ > = StyleCreator extends IUseStyles<infer C>
86
+ ? Partial<IStyles<C>> & Partial<ChildTweakStyles>
83
87
  : never;
84
88
 
85
89
  export interface IComponentStyles {
@@ -93,12 +97,14 @@ export interface IComponentStyles {
93
97
  DatePicker: IDatePickerStyles;
94
98
  DatePickerHeader: IDatePickerHeaderStyles;
95
99
  Description: IDescriptionStyles;
100
+ DocActions: IDocActionsStyles;
96
101
  DotsPreloader: IDotsPreloaderStyles;
97
102
  SvgPreloader: ISvgPreloaderStyles;
98
103
  FileInput: IFileInputStyles;
99
104
  FileItem: IFileItemStyles;
100
105
  FilterValueView: IFilterValueViewStyles;
101
106
  FiltersPane: IFiltersPaneStyles;
107
+ FilterDateSingle: IFilterDateSingleStyles;
102
108
  FilterInterval: IFilterIntervalStyles;
103
109
  FilterSelect: IFilterSelectStyles;
104
110
  FilterWithDates: IFilterWithDatesStyles;
@@ -147,14 +153,12 @@ export interface IComponentStyles {
147
153
 
148
154
  export type IComponentName = keyof IComponentStyles;
149
155
 
150
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
151
156
  export type IUiKitAnimations = Record<string, any>;
152
- export type IUiKitHelpers = Record<string, Styles | (() => Styles)>;
157
+ export type IUiKitHelpers = Record<string, IStyle | (() => IStyle)>;
153
158
 
154
159
  export interface IUiKitTheme {
155
160
  components?: Partial<IComponentStyles>;
156
- icons?: Partial<Record<ICommonIcon, ISvgIcon>>;
157
- complexIcons?: Partial<Record<IComplexIcon, string>>;
161
+ icons?: Partial<Record<IIconType, ISvgIcon>>;
158
162
  preloaders?: Partial<Record<IPreloaderSvgType, string>>; // TODO: заменить string
159
163
  animations?: IUiKitAnimations;
160
164
  colors?: Record<string, string>;
package/src/types.ts CHANGED
@@ -1,14 +1,15 @@
1
- import {
1
+ import type {
2
2
  FocusEventHandler,
3
- type KeyboardEvent,
3
+ KeyboardEvent,
4
4
  KeyboardEventHandler,
5
5
  MouseEvent,
6
6
  MouseEventHandler,
7
7
  PointerEventHandler,
8
8
  ReactNode,
9
9
  } from 'react';
10
- import { Modifier, Placement } from 'react-overlays/usePopper';
11
- import type { IMaybeArray } from './theme';
10
+ import type { Modifier, Placement } from 'react-overlays/usePopper';
11
+ import type { IMaybeArray } from '@true-engineering/true-react-platform-helpers';
12
+ import { IStyle } from './theme';
12
13
 
13
14
  export interface ITestIdProps {
14
15
  testId?: string;
@@ -35,11 +36,9 @@ export interface IDropdownWithPopperOptions {
35
36
 
36
37
  shouldHideOnScroll?: boolean; // работает весьма условно без shouldUsePopper
37
38
  canBeFlipped?: boolean; // только с shouldUsePopper
38
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
39
39
  modifiers?: Array<Partial<Modifier<any, any>>>; // только с shouldUsePopper
40
40
  placement?: Placement; // only with shouldUsePopper
41
41
  // https://popper.js.org/docs/v2/modifiers/flip/
42
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
43
42
  flipOptions?: Record<string, any>; // только с shouldUsePopper
44
43
  }
45
44
  export type IClickHandlerEvent = MouseEvent | KeyboardEvent;
@@ -64,3 +63,14 @@ export interface IDomElementInteractions<T> {
64
63
  }
65
64
 
66
65
  export type IRenderNode<T> = ReactNode | ((props: T) => ReactNode);
66
+
67
+ export type IExtendableProps<T extends string | readonly string[]> = Record<
68
+ T extends ReadonlyArray<infer P> ? P : T,
69
+ IStyle
70
+ >;
71
+
72
+ export type IDefaultExtendableProps = IExtendableProps<'custom'>;
73
+
74
+ export type IWithPrefix<T, P extends string> = {
75
+ [K in keyof T as `${P}${K & string}`]: T[K];
76
+ };
@@ -1,6 +0,0 @@
1
- declare const _default: {
2
- title: string;
3
- component: import("react").FC<import("./AccountInfo").IAccountInfoProps>;
4
- };
5
- export default _default;
6
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, import("./AccountInfo").IAccountInfoProps>;
@@ -1,6 +0,0 @@
1
- declare const _default: {
2
- title: string;
3
- component: import("react").FC<import("./AddButton").IAddButtonProps>;
4
- };
5
- export default _default;
6
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, import("./AddButton").IAddButtonProps>;
@@ -1,6 +0,0 @@
1
- /// <reference types="react" />
2
- import { ComponentStory } from '@storybook/react';
3
- import { Button, IButtonProps } from './Button';
4
- declare const _default: import("@storybook/types").ComponentAnnotations<import("@storybook/react/dist/types-0fc72a6d").R, IButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
5
- export default _default;
6
- export declare const Default: ComponentStory<typeof Button>;
@@ -1,8 +0,0 @@
1
- import { FC } from 'react';
2
- import type { Meta, StoryObj } from '@storybook/react';
3
- import { Checkbox as CheckboxComponent, ICheckboxProps } from './Checkbox';
4
- declare const CheckboxComponentWithData: FC<ICheckboxProps<string>>;
5
- declare const meta: Meta<typeof CheckboxComponentWithData>;
6
- export default meta;
7
- type Story = StoryObj<typeof CheckboxComponent>;
8
- export declare const Default: Story;
@@ -1,5 +0,0 @@
1
- import { ComponentStory } from '@storybook/react';
2
- import { CloseButton } from './CloseButton';
3
- declare const _default: import("@storybook/types").ComponentAnnotations<import("@storybook/react/dist/types-0fc72a6d").R, import("./CloseButton").ICloseButtonProps>;
4
- export default _default;
5
- export declare const Default: ComponentStory<typeof CloseButton>;
@@ -1,2 +0,0 @@
1
- import { FC } from 'react';
2
- export declare const Colors: FC;
@@ -1,5 +0,0 @@
1
- declare const _default: {
2
- title: string;
3
- };
4
- export default _default;
5
- export declare const Default: () => JSX.Element;
@@ -1 +0,0 @@
1
- export declare const useStyles: import("../../theme").IUseStyles<"color" | "root" | "colorCard" | "colorName" | "hex", unknown>;
@@ -1 +0,0 @@
1
- export * from './Colors';
@@ -1,6 +0,0 @@
1
- declare const _default: {
2
- title: string;
3
- component: import("react").FC<import("./ControlWrapper").IControlWrapperProps>;
4
- };
5
- export default _default;
6
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, import("./ControlWrapper").IControlWrapperProps>;
@@ -1,7 +0,0 @@
1
- /// <reference types="react" />
2
- declare const _default: {
3
- title: string;
4
- component: import("react").ForwardRefExoticComponent<import("./DateInput").IDateInputProps & import("react").RefAttributes<HTMLInputElement>>;
5
- };
6
- export default _default;
7
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, import("./DateInput").IDateInputProps & import("react").RefAttributes<HTMLInputElement>>;
@@ -1,7 +0,0 @@
1
- /// <reference types="react" />
2
- declare const _default: {
3
- title: string;
4
- component: import("react").ForwardRefExoticComponent<import("./DatePicker").IDatePickerProps & import("react").RefAttributes<import("react-datepicker").ReactDatePicker<never, undefined>>>;
5
- };
6
- export default _default;
7
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, import("./DatePicker").IDatePickerProps & import("react").RefAttributes<import("react-datepicker").ReactDatePicker<never, undefined>>>;
@@ -1,16 +0,0 @@
1
- declare const _default: {
2
- title: string;
3
- component: import("react").FC<import("./Description").IDescriptionProps>;
4
- argTypes: {
5
- truncateIndex: {
6
- control: {
7
- type: string;
8
- min: number;
9
- max: number;
10
- step: number;
11
- };
12
- };
13
- };
14
- };
15
- export default _default;
16
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, import("./Description").IDescriptionProps>;
@@ -1,7 +0,0 @@
1
- /// <reference types="react" />
2
- declare const _default: {
3
- title: string;
4
- component: import("react").ForwardRefExoticComponent<import("./FileInput").IFileInputProps & import("react").RefAttributes<HTMLInputElement>>;
5
- };
6
- export default _default;
7
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, import("./FileInput").IFileInputProps & import("react").RefAttributes<HTMLInputElement>>;
@@ -1,8 +0,0 @@
1
- import { ComponentStory } from '@storybook/react';
2
- import { FileItem, IFileItemProps } from './FileItem';
3
- declare const _default: {
4
- title: string;
5
- component: import("react").FC<IFileItemProps>;
6
- };
7
- export default _default;
8
- export declare const Default: ComponentStory<typeof FileItem>;
@@ -1,31 +0,0 @@
1
- import { IFiltersPaneProps } from './FiltersPane';
2
- interface IFiltersPaneWithCustomProps<Values extends Record<string, unknown>, Content> extends IFiltersPaneProps<Values, Content> {
3
- containerWidth: number;
4
- isSearchDisabled: boolean;
5
- shouldShowSettingsButton: boolean;
6
- withFieldNameInLabel: boolean;
7
- isGroupingEnabled: boolean;
8
- checkboxPosition: 'left' | 'right';
9
- isClearableFields: boolean;
10
- }
11
- declare function FiltersPaneWithCustomProps<Values extends Record<string, unknown>, Content>({ containerWidth, isSearchDisabled, shouldShowSettingsButton, withFieldNameInLabel, isGroupingEnabled, checkboxPosition, isClearableFields, ...args }: IFiltersPaneWithCustomProps<Values, Content>): import("react/jsx-runtime").JSX.Element;
12
- declare const _default: {
13
- title: string;
14
- component: typeof FiltersPaneWithCustomProps;
15
- argTypes: {
16
- containerWidth: {
17
- control: {
18
- type: string;
19
- min: number;
20
- max: number;
21
- step: number;
22
- };
23
- };
24
- checkboxPosition: {
25
- control: string;
26
- options: string[];
27
- };
28
- };
29
- };
30
- export default _default;
31
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, IFiltersPaneWithCustomProps<Record<string, unknown>, unknown>>;
@@ -1,12 +0,0 @@
1
- declare const _default: {
2
- title: string;
3
- component: import("react").FC<import("./Flag").IFlagProps>;
4
- argTypes: {
5
- countryCode: {
6
- control: string;
7
- options: string[];
8
- };
9
- };
10
- };
11
- export default _default;
12
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, import("./Flag").IFlagProps>;
@@ -1,19 +0,0 @@
1
- declare const _default: import("@storybook/types").ComponentAnnotations<import("@storybook/react/dist/types-0fc72a6d").R, import("./FlexibleTable").IFlexibleTableProps<import("./types").ITableRow, Partial<Record<string, unknown>>, string>>;
2
- export default _default;
3
- interface ITableContent {
4
- contractCode: string;
5
- validFrom: Date;
6
- validTo: Date;
7
- validTo1?: Date;
8
- validTo2?: Date;
9
- title: string;
10
- signDate: Date;
11
- partner: string;
12
- partnerDescription: string;
13
- parentContract: string;
14
- currency: string;
15
- status: string;
16
- note?: string;
17
- publicNote?: string;
18
- }
19
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, import("./FlexibleTable").IFlexibleTableProps<ITableContent, Partial<Record<keyof ITableContent, unknown>>, keyof ITableContent>>;
@@ -1,6 +0,0 @@
1
- declare const _default: {
2
- title: string;
3
- };
4
- export default _default;
5
- export declare const Default: () => import("react/jsx-runtime").JSX.Element;
6
- export declare const Gallery: () => import("react/jsx-runtime").JSX.Element;
@@ -1,10 +0,0 @@
1
- export declare const complexIcons: {
2
- avatar: string;
3
- 'file-excel': string;
4
- 'file-image': string;
5
- 'file-other': string;
6
- 'file-pdf': string;
7
- 'file-word': string;
8
- 'file-xml': string;
9
- 'file-zip': string;
10
- };
@@ -1 +0,0 @@
1
- export * from './icons';
@@ -1,6 +0,0 @@
1
- import { FC } from 'react';
2
- import { IComplexIcon } from '../../types';
3
- export interface IComplexIconBoilerplateProps {
4
- type: IComplexIcon;
5
- }
6
- export declare const ComplexIconBoilerplate: FC<IComplexIconBoilerplateProps>;
@@ -1 +0,0 @@
1
- export * from './ComplexIconBoilerplate';
@@ -1,6 +0,0 @@
1
- import { FC } from 'react';
2
- import { ICommonIcon } from '../../types';
3
- export interface IIconBoilerplateProps {
4
- type: ICommonIcon;
5
- }
6
- export declare const IconBoilerplate: FC<IIconBoilerplateProps>;
@@ -1 +0,0 @@
1
- export * from './IconBoilerplate';
@@ -1,2 +0,0 @@
1
- export * from './ComplexIconBoilerplate';
2
- export * from './IconBolerplate';
@@ -1,6 +0,0 @@
1
- import type { IIconType, ISvgIcon } from './types';
2
- export declare const isComplexIcon: (type: IIconType) => type is "avatar" | "file-excel" | "file-image" | "file-other" | "file-pdf" | "file-word" | "file-xml" | "file-zip";
3
- /**
4
- * Эта функция позволяет корректно определить ключи в типе
5
- */
6
- export declare const checkIcons: <P extends string>(ico: Record<P, ISvgIcon>) => Record<P, ISvgIcon>;
@@ -1 +0,0 @@
1
- export declare const iconsList: Record<"direction" | "filter" | "document" | "copy" | "cancel" | "close" | "search" | "repeat" | "link" | "sort" | "size" | "menu" | "check" | "settings" | "list" | "arrow" | "vendor-service" | "aircraft-takeoff" | "archive" | "arrow-right" | "baggage" | "balloon" | "bluetooth" | "bonus" | "book" | "box" | "business" | "calendar" | "check-big" | "check-all" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chevron-down-small" | "chevron-left-small" | "chevron-right-small" | "chevron-up-small" | "circle-check" | "close-large" | "close-window" | "copy-outline" | "crane" | "danger" | "download" | "email" | "eye" | "eye-closed" | "female" | "folder" | "folder-add" | "food" | "import" | "information" | "insurance" | "lock" | "lock-open" | "male" | "minus" | "burger-menu" | "pencil" | "pin" | "plane" | "plane-circle" | "plus" | "presentation" | "print" | "question" | "refresh" | "rocket" | "round-trip" | "vendor-logo" | "scan" | "send-email" | "sign-out" | "sort-asc" | "sort-desc" | "sort-list-asc" | "sort-list-desc" | "star" | "status-error" | "status-info" | "status-not-ok" | "status-ok" | "status-warning" | "three-circles" | "ticket-revert" | "ticket" | "time" | "trash-can" | "upgrade" | "user" | "user-group" | "voucher" | "upload", import("./types").ISvgIcon>;
@@ -1,6 +0,0 @@
1
- /// <reference types="react" />
2
- import { ComponentStory } from '@storybook/react';
3
- import { IconButton } from './IconButton';
4
- declare const _default: import("@storybook/types").ComponentAnnotations<import("@storybook/react/dist/types-0fc72a6d").R, import("./IconButton").IIconButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
5
- export default _default;
6
- export declare const Default: ComponentStory<typeof IconButton>;
@@ -1,6 +0,0 @@
1
- declare const _default: {
2
- title: string;
3
- component: import("react").FC<import("./IncrementInput").IIncrementInputProps>;
4
- };
5
- export default _default;
6
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, import("./IncrementInput").IIncrementInputProps>;
@@ -1,25 +0,0 @@
1
- /// <reference types="react" />
2
- declare const _default: {
3
- title: string;
4
- component: import("react").ForwardRefExoticComponent<import("./InputBase").IInputBaseProps & Pick<import("..").IWithMessagesProps, "infoMessage" | "errorMessage"> & import("react").RefAttributes<HTMLInputElement>>;
5
- argTypes: {
6
- type: {
7
- control: string;
8
- options: (import("react").HTMLInputTypeAttribute | undefined)[];
9
- };
10
- icon: {
11
- control: string;
12
- options: (string | undefined)[];
13
- };
14
- mask: {
15
- control: string;
16
- options: (string | undefined)[];
17
- };
18
- groupPositions: {
19
- control: string;
20
- options: (string | undefined)[];
21
- };
22
- };
23
- };
24
- export default _default;
25
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, import("./InputBase").IInputBaseProps & Pick<import("..").IWithMessagesProps, "infoMessage" | "errorMessage"> & import("react").RefAttributes<HTMLInputElement>>;
@@ -1,5 +0,0 @@
1
- import { ComponentStory } from '@storybook/react';
2
- import { List } from './List';
3
- declare const _default: import("@storybook/types").ComponentAnnotations<import("@storybook/react/dist/types-0fc72a6d").R, import("./List").IListProps>;
4
- export default _default;
5
- export declare const Default: ComponentStory<typeof List>;
@@ -1,29 +0,0 @@
1
- import { FC } from 'react';
2
- import { IModalProps } from './Modal';
3
- export interface IModalWithCustomProps extends IModalProps {
4
- textSize: 'small' | 'medium' | 'large';
5
- }
6
- declare const _default: {
7
- title: string;
8
- component: FC<IModalProps>;
9
- argTypes: {
10
- buttonsAlign: {
11
- control: string;
12
- options: string[];
13
- };
14
- textSize: {
15
- control: string;
16
- options: string[];
17
- };
18
- size: {
19
- control: string;
20
- options: string[];
21
- };
22
- position: {
23
- control: string;
24
- options: string[];
25
- };
26
- };
27
- };
28
- export default _default;
29
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, IModalWithCustomProps>;
@@ -1,6 +0,0 @@
1
- declare const _default: {
2
- title: string;
3
- component: import("react").FC<import("./MoreMenu").IMoreMenuProps>;
4
- };
5
- export default _default;
6
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, import("./MoreMenu").IMoreMenuProps>;
@@ -1,13 +0,0 @@
1
- import { MultiSelect } from './MultiSelect';
2
- declare const _default: {
3
- title: string;
4
- component: typeof MultiSelect;
5
- argTypes: {
6
- corners: {
7
- control: string;
8
- options: string[];
9
- };
10
- };
11
- };
12
- export default _default;
13
- export declare const Default: import("@storybook/types").AnnotatedStoryFn<import("@storybook/react/dist/types-0fc72a6d").R, import("./MultiSelect").IMultiSelectProps<unknown>>;