@ssa-ui-kit/widgets 0.0.2-alpha → 0.0.3-alpha

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 (552) hide show
  1. package/.babelrc.js +4 -4
  2. package/.env +7 -7
  3. package/.storybook/main.ts +42 -42
  4. package/.storybook/preview.tsx +21 -21
  5. package/.storybook/style.css +31 -31
  6. package/custom-shots/widgets-bots-table--no-control-orders--menu-opened_[w1920px].png +0 -0
  7. package/custom-shots/widgets-bots-table--no-control-orders--run-reason-modal_[w1920px].png +0 -0
  8. package/custom-shots/widgets-collapsiblenavbar-opened__[w1439px].png +0 -0
  9. package/custom-shots/widgets-collapsiblenavbar-opened__[w1439px]_statistics_submenu_popover.png +0 -0
  10. package/custom-shots/widgets-collapsiblenavbar-opened__[w1920px].png +0 -0
  11. package/custom-shots/widgets-collapsiblenavbar-opened__[w1920px]_side_menu_expanded.png +0 -0
  12. package/custom-shots/widgets-collapsiblenavbar-opened__[w1920px]_statistics_submenu_expanded.png +0 -0
  13. package/custom-shots/widgets-collapsiblenavbar-opened__[w1920px]_statistics_submenu_popover.png +0 -0
  14. package/custom-shots/widgets-collapsiblenavbar-opened__[w899px]_default.png +0 -0
  15. package/custom-shots/widgets-collapsiblenavbar-opened__[w899px]_menu_opened.png +0 -0
  16. package/custom-shots/widgets-collapsiblenavbar-opened__[w899px]_statistics_submenu.png +0 -0
  17. package/custom-shots/widgets-filters--default__[w1920px].png +0 -0
  18. package/custom-shots/widgets-filters--more-button__[w900px].png +0 -0
  19. package/custom-shots/widgets-heart-rate--hint-opened__[w1440px].png +0 -0
  20. package/custom-shots/widgets-heart-rate--hint-opened__[w1920px].png +0 -0
  21. package/custom-shots/widgets-heart-rate--hint-opened__[w390px].png +0 -0
  22. package/custom-shots/widgets-heart-rate--hint-opened__[w900px].png +0 -0
  23. package/custom-shots/widgets-linkstabbar--current-focus__[w1920px].png +0 -0
  24. package/custom-shots/widgets-linkstabbar--non-current-focus__[w1920px].png +0 -0
  25. package/custom-shots/widgets-meal-nutrients--hint-opened__[w1440px].png +0 -0
  26. package/custom-shots/widgets-meal-nutrients--hint-opened__[w1920px].png +0 -0
  27. package/custom-shots/widgets-meal-nutrients--hint-opened__[w390px].png +0 -0
  28. package/custom-shots/widgets-meal-nutrients--hint-opened__[w900px].png +0 -0
  29. package/custom-shots/widgets-meal-nutrients--hint-opened__dropdown__[w1440px].png +0 -0
  30. package/custom-shots/widgets-meal-nutrients--hint-opened__dropdown__[w1920px].png +0 -0
  31. package/custom-shots/widgets-meal-nutrients--hint-opened__dropdown__[w390px].png +0 -0
  32. package/custom-shots/widgets-meal-nutrients--hint-opened__dropdown__[w900px].png +0 -0
  33. package/custom-shots/widgets-navbar--mobile-opened__[w1440px].png +0 -0
  34. package/custom-shots/widgets-navbar--mobile-opened__[w1920px].png +0 -0
  35. package/custom-shots/widgets-navbar--mobile-opened__[w390px].png +0 -0
  36. package/custom-shots/widgets-navbar--mobile-opened__[w900px].png +0 -0
  37. package/custom-shots/widgets-navbar-opened__[w1440px].png +0 -0
  38. package/custom-shots/widgets-navbar-opened__[w1920px].png +0 -0
  39. package/custom-shots/widgets-navbar-opened__[w390px].png +0 -0
  40. package/custom-shots/widgets-navbar-opened__[w900px].png +0 -0
  41. package/custom-shots/widgets-notification-menu--is-opened__[w1440px].png +0 -0
  42. package/custom-shots/widgets-notification-menu--is-opened__[w1920px].png +0 -0
  43. package/custom-shots/widgets-notification-menu--is-opened__[w390px].png +0 -0
  44. package/custom-shots/widgets-notification-menu--is-opened__[w900px].png +0 -0
  45. package/custom-shots/widgets-pagination--next-hover__[w1920px].png +0 -0
  46. package/custom-shots/widgets-pagination--not-selected-hover__[w1920px].png +0 -0
  47. package/custom-shots/widgets-pagination--previous-hover__[w1920px].png +0 -0
  48. package/custom-shots/widgets-pagination--selected-hover__[w1920px].png +0 -0
  49. package/custom-shots/widgets-progressInfo__[w1440px].png +0 -0
  50. package/custom-shots/widgets-progressInfo__[w1920px].png +0 -0
  51. package/custom-shots/widgets-progressInfo__[w390px].png +0 -0
  52. package/custom-shots/widgets-progressInfo__[w900px].png +0 -0
  53. package/custom-shots/widgets-progressInfo__dropdown__[w1440px].png +0 -0
  54. package/custom-shots/widgets-progressInfo__dropdown__[w1920px].png +0 -0
  55. package/custom-shots/widgets-progressInfo__dropdown__[w390px].png +0 -0
  56. package/custom-shots/widgets-progressInfo__dropdown__[w900px].png +0 -0
  57. package/custom-shots/widgets-searchbox--cross-icon__[w1920px].png +0 -0
  58. package/custom-shots/widgets-searchbox--cross-icon__[w900px].png +0 -0
  59. package/custom-shots/widgets-searchbox--search-icon__[w1920px].png +0 -0
  60. package/custom-shots/widgets-searchbox--search-icon__[w900px].png +0 -0
  61. package/custom-shots/widgets-table-bots--default_[w1920px].png +0 -0
  62. package/custom-shots/widgets-table-bots--menu-opened_[w1920px].png +0 -0
  63. package/custom-shots/widgets-table-bots--no-control-orders--menu-opened_[w1920px].png +0 -0
  64. package/custom-shots/widgets-table-bots--no-control-orders--run-reason-modal_[w1920px].png +0 -0
  65. package/custom-shots/widgets-table-bots--run-reason-modal_[w1920px].png +0 -0
  66. package/custom-shots/widgets-table-filters--opened__[w1920px].png +0 -0
  67. package/custom-shots/widgets-trading-info-card--hover__[w1920px].png +0 -0
  68. package/custom-shots/widgets-user-profile--is-opened__[w1920px].png +0 -0
  69. package/customTest.tsx +35 -35
  70. package/dist/components/Filters/Filters.d.ts +14 -1
  71. package/dist/components/Filters/FiltersWrapper.d.ts +2 -0
  72. package/dist/components/TableFilters/TableFilters.d.ts +1 -1
  73. package/dist/components/TableFilters/hooks/useTableData.d.ts +2 -1
  74. package/dist/components/TableFilters/types.d.ts +1 -0
  75. package/dist/components/UserProfile/UserProfile.d.ts +1 -1
  76. package/dist/components/UserProfile/types.d.ts +2 -0
  77. package/dist/index.js +1 -1
  78. package/dist/index.js.map +1 -1
  79. package/jest-setup.ts +17 -17
  80. package/lostpixel.config.ts +29 -29
  81. package/package.json +2 -2
  82. package/playwright.config.ts +7 -7
  83. package/src/components/AccountBalance/AccountBalance.spec.tsx +82 -82
  84. package/src/components/AccountBalance/AccountBalance.stories.tsx +35 -35
  85. package/src/components/AccountBalance/AccountBalance.tsx +63 -63
  86. package/src/components/AccountBalance/BalancePieChart.tsx +77 -77
  87. package/src/components/AccountBalance/BalancePieChartTitle.tsx +42 -42
  88. package/src/components/AccountBalance/WithLink.tsx +26 -26
  89. package/src/components/AccountBalance/index.ts +5 -5
  90. package/src/components/AccountBalance/stories/fixtures.ts +26 -26
  91. package/src/components/AccountBalance/types.ts +31 -31
  92. package/src/components/Activity/Activity.spec.tsx +79 -79
  93. package/src/components/Activity/Activity.stories.tsx +15 -15
  94. package/src/components/Activity/Activity.tsx +83 -83
  95. package/src/components/Activity/ActivityItem.tsx +38 -38
  96. package/src/components/Activity/index.tsx +2 -2
  97. package/src/components/Activity/mockActivityRequest.ts +106 -106
  98. package/src/components/Activity/styles.ts +12 -12
  99. package/src/components/Activity/types.ts +10 -10
  100. package/src/components/AddNewAccountCard/AddNewAccountCard.spec.tsx +39 -39
  101. package/src/components/AddNewAccountCard/AddNewAccountCard.stories.tsx +48 -48
  102. package/src/components/AddNewAccountCard/AddNewAccountCard.tsx +22 -22
  103. package/src/components/AddNewAccountCard/index.ts +2 -2
  104. package/src/components/AddNewAccountCard/styles.ts +29 -29
  105. package/src/components/AddNewAccountCard/types.ts +7 -7
  106. package/src/components/Bmi/Bmi.spec.tsx +68 -68
  107. package/src/components/Bmi/Bmi.stories.tsx +10 -10
  108. package/src/components/Bmi/Bmi.tsx +96 -96
  109. package/src/components/Bmi/BmiHeatbar.tsx +18 -18
  110. package/src/components/Bmi/BmiInfo.tsx +11 -11
  111. package/src/components/Bmi/BmiLabel.tsx +9 -9
  112. package/src/components/Bmi/BmiLabels.tsx +33 -33
  113. package/src/components/Bmi/BmiPointer.tsx +15 -15
  114. package/src/components/Bmi/index.tsx +2 -2
  115. package/src/components/Bmi/styles.ts +18 -18
  116. package/src/components/Bmi/types.ts +4 -4
  117. package/src/components/BotsTable/BotsTable.e2e.ts +77 -77
  118. package/src/components/BotsTable/BotsTable.spec.tsx +125 -125
  119. package/src/components/BotsTable/BotsTable.tsx +32 -32
  120. package/src/components/BotsTable/BotsTableCell.tsx +10 -10
  121. package/src/components/BotsTable/BotsTableHead.tsx +9 -9
  122. package/src/components/BotsTable/BotsTableRow.tsx +17 -17
  123. package/src/components/BotsTable/BotsTableWrapper.tsx +23 -23
  124. package/src/components/BotsTable/index.ts +5 -5
  125. package/src/components/BotsTable/stories/BotsTable/StoryComponent.tsx +59 -59
  126. package/src/components/BotsTable/stories/BotsTable/components/Actions/ActionIcon.tsx +11 -11
  127. package/src/components/BotsTable/stories/BotsTable/components/Actions/ActionItem.tsx +40 -40
  128. package/src/components/BotsTable/stories/BotsTable/components/Actions/ActionMore.tsx +89 -89
  129. package/src/components/BotsTable/stories/BotsTable/components/Actions/ActionRun.tsx +133 -133
  130. package/src/components/BotsTable/stories/BotsTable/components/Actions/Actions.tsx +13 -13
  131. package/src/components/BotsTable/stories/BotsTable/components/Actions/ActionsWrapper.tsx +21 -21
  132. package/src/components/BotsTable/stories/BotsTable/components/Actions/consts.tsx +118 -118
  133. package/src/components/BotsTable/stories/BotsTable/components/Actions/index.ts +6 -6
  134. package/src/components/BotsTable/stories/BotsTable/components/Exchange/Exchange.tsx +26 -26
  135. package/src/components/BotsTable/stories/BotsTable/components/Exchange/consts.tsx +157 -157
  136. package/src/components/BotsTable/stories/BotsTable/components/Exchange/index.ts +1 -1
  137. package/src/components/BotsTable/stories/BotsTable/components/Exchange/types.ts +6 -6
  138. package/src/components/BotsTable/stories/BotsTable/components/PNL.tsx +27 -27
  139. package/src/components/BotsTable/stories/BotsTable/components/ROI.tsx +25 -25
  140. package/src/components/BotsTable/stories/BotsTable/components/TableTag.tsx +22 -22
  141. package/src/components/BotsTable/stories/BotsTable/components/Trade/Trade.tsx +8 -8
  142. package/src/components/BotsTable/stories/BotsTable/components/Trade/consts.ts +14 -14
  143. package/src/components/BotsTable/stories/BotsTable/components/Trade/index.ts +1 -1
  144. package/src/components/BotsTable/stories/BotsTable/components/Trade/types.ts +5 -5
  145. package/src/components/BotsTable/stories/BotsTable/components/index.ts +6 -6
  146. package/src/components/BotsTable/stories/BotsTable/index.ts +1 -1
  147. package/src/components/BotsTable/stories/BotsTable/mockData.ts +84 -84
  148. package/src/components/BotsTable/stories/BotsTable.stories.tsx +39 -39
  149. package/src/components/BotsTable/stories/NoControlOrders/StoryComponent.tsx +35 -35
  150. package/src/components/BotsTable/stories/NoControlOrders/components/ActionMore.tsx +95 -95
  151. package/src/components/BotsTable/stories/NoControlOrders/components/Reason.tsx +11 -11
  152. package/src/components/BotsTable/stories/NoControlOrders/components/TableList.tsx +45 -45
  153. package/src/components/BotsTable/stories/NoControlOrders/components/TableRow.tsx +31 -31
  154. package/src/components/BotsTable/stories/NoControlOrders/components/index.ts +4 -4
  155. package/src/components/BotsTable/stories/NoControlOrders/mockData.ts +23 -23
  156. package/src/components/BotsTable/stories/NoControlOrders/types.ts +16 -16
  157. package/src/components/BotsTable/types.ts +31 -31
  158. package/src/components/Calories/Calories.spec.tsx +11 -11
  159. package/src/components/Calories/Calories.stories.tsx +26 -26
  160. package/src/components/Calories/Calories.tsx +54 -54
  161. package/src/components/Calories/index.tsx +2 -2
  162. package/src/components/Calories/innerContent.tsx +30 -30
  163. package/src/components/Calories/types.ts +4 -4
  164. package/src/components/CardList/CardList.spec.tsx +32 -32
  165. package/src/components/CardList/CardList.stories.tsx +37 -37
  166. package/src/components/CardList/CardList.tsx +37 -37
  167. package/src/components/CardList/index.ts +2 -2
  168. package/src/components/CardList/types.ts +10 -10
  169. package/src/components/CollapsibleNavBar/CollapsibleNavBar.e2e.ts +115 -115
  170. package/src/components/CollapsibleNavBar/CollapsibleNavBar.spec.tsx +54 -54
  171. package/src/components/CollapsibleNavBar/CollapsibleNavBar.tsx +55 -55
  172. package/src/components/CollapsibleNavBar/CollapsibleNavBarBase.ts +122 -122
  173. package/src/components/CollapsibleNavBar/CollapsibleNavBarItem.ts +28 -28
  174. package/src/components/CollapsibleNavBar/CollapsibleNavBarLink.ts +34 -34
  175. package/src/components/CollapsibleNavBar/CollapsibleNavBarList.ts +18 -18
  176. package/src/components/CollapsibleNavBar/CollapsibleNavBarWrapper.ts +23 -23
  177. package/src/components/CollapsibleNavBar/CollapsibleNavContentToggle.tsx +24 -24
  178. package/src/components/CollapsibleNavBar/CollapsibleNavToggle.tsx +52 -52
  179. package/src/components/CollapsibleNavBar/CollapsibleNavToggleWrapper.ts +16 -16
  180. package/src/components/CollapsibleNavBar/NavBarAccordionContent.tsx +33 -33
  181. package/src/components/CollapsibleNavBar/NavBarItemWithSubMenu.tsx +84 -84
  182. package/src/components/CollapsibleNavBar/NavBarItemWithoutSubMenu.tsx +39 -39
  183. package/src/components/CollapsibleNavBar/NavBarPopover.tsx +123 -123
  184. package/src/components/CollapsibleNavBar/TriggerIcon.tsx +35 -35
  185. package/src/components/CollapsibleNavBar/index.ts +2 -2
  186. package/src/components/CollapsibleNavBar/stories/CollapsibleNavBar.stories.tsx +57 -57
  187. package/src/components/CollapsibleNavBar/stories/Logo.tsx +12 -12
  188. package/src/components/CollapsibleNavBar/stories/StoryComponent.tsx +20 -20
  189. package/src/components/CollapsibleNavBar/stories/consts.ts +22 -22
  190. package/src/components/CollapsibleNavBar/stories/styles.ts +21 -21
  191. package/src/components/CollapsibleNavBar/styles.ts +119 -119
  192. package/src/components/CollapsibleNavBar/types.ts +14 -14
  193. package/src/components/ExchangeAccount/ExchangeAccount.spec.tsx +110 -110
  194. package/src/components/ExchangeAccount/ExchangeAccount.stories.tsx +90 -90
  195. package/src/components/ExchangeAccount/ExchangeAccount.tsx +73 -73
  196. package/src/components/ExchangeAccount/helpers.tsx +153 -153
  197. package/src/components/ExchangeAccount/index.ts +2 -2
  198. package/src/components/ExchangeAccount/styles.ts +134 -134
  199. package/src/components/ExchangeAccount/types.ts +12 -12
  200. package/src/components/ExchangeAccountKeys/ExchangeAccountKeys.spec.tsx +43 -43
  201. package/src/components/ExchangeAccountKeys/ExchangeAccountKeys.stories.tsx +14 -14
  202. package/src/components/ExchangeAccountKeys/ExchangeAccountKeys.tsx +71 -71
  203. package/src/components/ExchangeAccountKeys/helpers.ts +7 -7
  204. package/src/components/ExchangeAccountKeys/index.ts +2 -2
  205. package/src/components/ExchangeAccountKeys/stories/StoryComponent.tsx +33 -33
  206. package/src/components/ExchangeAccountKeys/styles.ts +97 -97
  207. package/src/components/ExchangeAccountKeys/types.ts +8 -8
  208. package/src/components/Filters/FilterBlockWrapper.tsx +11 -11
  209. package/src/components/Filters/Filters.e2e.ts +47 -47
  210. package/src/components/Filters/Filters.spec.tsx +38 -38
  211. package/src/components/Filters/Filters.tsx +85 -75
  212. package/src/components/Filters/FiltersBlock.tsx +70 -70
  213. package/src/components/Filters/FiltersContext.tsx +41 -41
  214. package/src/components/Filters/FiltersWrapper.tsx +15 -8
  215. package/src/components/Filters/hooks/useVisibility.ts +101 -101
  216. package/src/components/Filters/index.ts +1 -1
  217. package/src/components/Filters/stories/Filters.stories.tsx +17 -17
  218. package/src/components/Filters/stories/StoryComponent.tsx +18 -18
  219. package/src/components/Filters/stories/mockData.ts +212 -212
  220. package/src/components/Filters/types.ts +4 -4
  221. package/src/components/HeartRate/BPM.tsx +43 -43
  222. package/src/components/HeartRate/HeartRate.e2e.ts +78 -78
  223. package/src/components/HeartRate/HeartRate.spec.tsx +91 -91
  224. package/src/components/HeartRate/HeartRate.stories.tsx +36 -36
  225. package/src/components/HeartRate/HeartRate.tsx +105 -105
  226. package/src/components/HeartRate/HeartRateLineChart.tsx +53 -53
  227. package/src/components/HeartRate/index.ts +2 -2
  228. package/src/components/HeartRate/mockHeartRateRequest.ts +15 -15
  229. package/src/components/HeartRate/types.ts +15 -15
  230. package/src/components/HeartRate/utils.tsx +8 -8
  231. package/src/components/LinksTabBar/LinksTabBar.e2e.ts +23 -23
  232. package/src/components/LinksTabBar/LinksTabBar.spec.tsx +48 -48
  233. package/src/components/LinksTabBar/LinksTabBar.stories.tsx +45 -45
  234. package/src/components/LinksTabBar/LinksTabBar.tsx +14 -14
  235. package/src/components/LinksTabBar/LinksTabBarBase.tsx +36 -36
  236. package/src/components/LinksTabBar/index.ts +2 -2
  237. package/src/components/LinksTabBar/stories/decorators.tsx +34 -34
  238. package/src/components/LinksTabBar/stories/mockData.ts +27 -27
  239. package/src/components/LinksTabBar/types.ts +12 -12
  240. package/src/components/ListGoals/ListGoals.spec.tsx +82 -82
  241. package/src/components/ListGoals/ListGoals.stories.tsx +58 -58
  242. package/src/components/ListGoals/ListGoals.tsx +29 -29
  243. package/src/components/ListGoals/ListGoalsCard.tsx +61 -61
  244. package/src/components/ListGoals/index.ts +2 -2
  245. package/src/components/ListGoals/styles.tsx +11 -11
  246. package/src/components/ListGoals/types.ts +25 -25
  247. package/src/components/MealNutrients/MealNutrients.e2e.ts +68 -68
  248. package/src/components/MealNutrients/MealNutrients.spec.tsx +134 -134
  249. package/src/components/MealNutrients/MealNutrients.stories.tsx +37 -37
  250. package/src/components/MealNutrients/MealNutrients.tsx +84 -84
  251. package/src/components/MealNutrients/MealNutrientsLineChart.tsx +87 -87
  252. package/src/components/MealNutrients/MealNutrientsTooltip.tsx +30 -30
  253. package/src/components/MealNutrients/chartDefaultConfig.tsx +87 -87
  254. package/src/components/MealNutrients/index.tsx +2 -2
  255. package/src/components/MealNutrients/mockMealNutrientsRequest.ts +1246 -1246
  256. package/src/components/MealNutrients/types.ts +37 -37
  257. package/src/components/MealNutrients/useChartConfig.ts +69 -69
  258. package/src/components/MealPlanner/MealPlanner.spec.tsx +77 -77
  259. package/src/components/MealPlanner/MealPlanner.stories.tsx +15 -15
  260. package/src/components/MealPlanner/MealPlanner.tsx +100 -100
  261. package/src/components/MealPlanner/MealPlannerBadge.tsx +15 -15
  262. package/src/components/MealPlanner/MealPlannerBars.tsx +19 -19
  263. package/src/components/MealPlanner/MealPlannerCard.tsx +73 -73
  264. package/src/components/MealPlanner/MealPlannerLegends.tsx +22 -22
  265. package/src/components/MealPlanner/index.ts +2 -2
  266. package/src/components/MealPlanner/mockMealPlannerRequest.ts +70 -70
  267. package/src/components/MealPlanner/types.ts +21 -21
  268. package/src/components/NavBar/NavBar.e2e.ts +64 -64
  269. package/src/components/NavBar/NavBar.stories.tsx +86 -86
  270. package/src/components/NavBar/NavBar.tsx +46 -46
  271. package/src/components/NavBar/NavBarBase.ts +45 -45
  272. package/src/components/NavBar/NavBarItem.ts +13 -13
  273. package/src/components/NavBar/NavBarLink.ts +27 -27
  274. package/src/components/NavBar/NavBarList.ts +16 -16
  275. package/src/components/NavBar/NavBarWrapper.ts +40 -40
  276. package/src/components/NavBar/NavToggle.tsx +36 -36
  277. package/src/components/NavBar/NavToggleWrapper.ts +21 -21
  278. package/src/components/NavBar/index.ts +2 -2
  279. package/src/components/NavBar/types.ts +22 -22
  280. package/src/components/NotificationCard/NotificationCard.spec.tsx +90 -90
  281. package/src/components/NotificationCard/NotificationCard.stories.tsx +112 -112
  282. package/src/components/NotificationCard/NotificationCard.tsx +94 -94
  283. package/src/components/NotificationCard/index.ts +2 -2
  284. package/src/components/NotificationCard/styles.tsx +134 -134
  285. package/src/components/NotificationCard/types.ts +9 -9
  286. package/src/components/NotificationMenu/NotificationMenu.e2e.ts +27 -27
  287. package/src/components/NotificationMenu/NotificationMenu.spec.tsx +64 -64
  288. package/src/components/NotificationMenu/NotificationMenu.tsx +77 -77
  289. package/src/components/NotificationMenu/helpers.ts +91 -91
  290. package/src/components/NotificationMenu/index.ts +2 -2
  291. package/src/components/NotificationMenu/stories/NotificationMenu.stories.tsx +14 -14
  292. package/src/components/NotificationMenu/stories/StoryComponent.tsx +84 -84
  293. package/src/components/NotificationMenu/stories/StoryContent.tsx +52 -52
  294. package/src/components/NotificationMenu/styles.ts +125 -125
  295. package/src/components/NotificationMenu/types.ts +11 -11
  296. package/src/components/Pagination/ArrowButton.tsx +32 -32
  297. package/src/components/Pagination/Pagination.e2e.ts +38 -38
  298. package/src/components/Pagination/Pagination.spec.tsx +218 -218
  299. package/src/components/Pagination/Pagination.stories.tsx +50 -50
  300. package/src/components/Pagination/Pagination.tsx +55 -55
  301. package/src/components/Pagination/PaginationButtons.tsx +55 -55
  302. package/src/components/Pagination/PaginationContext.tsx +20 -20
  303. package/src/components/Pagination/index.ts +3 -3
  304. package/src/components/Pagination/styles.tsx +81 -81
  305. package/src/components/Pagination/types.ts +35 -35
  306. package/src/components/PieChart/PieChart.spec.tsx +97 -97
  307. package/src/components/PieChart/PieChart.stories.tsx +129 -129
  308. package/src/components/PieChart/PieChart.tsx +40 -40
  309. package/src/components/PieChart/PieChartBases.tsx +26 -26
  310. package/src/components/PieChart/PieChartLegend.tsx +51 -51
  311. package/src/components/PieChart/PieChartLegendList.tsx +19 -19
  312. package/src/components/PieChart/PieChartLegendMarker.tsx +12 -12
  313. package/src/components/PieChart/colorPalettes.ts +28 -28
  314. package/src/components/PieChart/index.ts +4 -4
  315. package/src/components/PieChart/stories/fixtures.ts +39 -39
  316. package/src/components/PieChart/types.ts +28 -28
  317. package/src/components/ProgressInfo/ProgressInfo.e2e.ts +31 -31
  318. package/src/components/ProgressInfo/ProgressInfo.spec.tsx +91 -91
  319. package/src/components/ProgressInfo/ProgressInfo.stories.tsx +32 -32
  320. package/src/components/ProgressInfo/ProgressInfo.tsx +117 -117
  321. package/src/components/ProgressInfo/ProgressInfoTotals.tsx +60 -60
  322. package/src/components/ProgressInfo/index.ts +3 -3
  323. package/src/components/ProgressInfo/mockProgressInfoRequest.ts +166 -166
  324. package/src/components/ProgressInfo/styles.ts +20 -20
  325. package/src/components/ProgressInfo/types.ts +29 -29
  326. package/src/components/SearchBox/SearchBox.e2e.ts +37 -37
  327. package/src/components/SearchBox/SearchBox.spec.tsx +77 -77
  328. package/src/components/SearchBox/SearchBox.tsx +70 -68
  329. package/src/components/SearchBox/SearchBoxCrossIcon.tsx +26 -26
  330. package/src/components/SearchBox/SearchBoxInput.tsx +21 -20
  331. package/src/components/SearchBox/SearchBoxWrapper.tsx +6 -6
  332. package/src/components/SearchBox/index.ts +4 -4
  333. package/src/components/SearchBox/stories/SearchBox.stories.tsx +16 -16
  334. package/src/components/SearchBox/stories/StoryComponent.tsx +25 -25
  335. package/src/components/SearchBox/types.ts +9 -9
  336. package/src/components/StepsCounter/StepsCounter.spec.tsx +14 -14
  337. package/src/components/StepsCounter/StepsCounter.stories.tsx +16 -16
  338. package/src/components/StepsCounter/StepsCounter.tsx +74 -74
  339. package/src/components/StepsCounter/index.ts +2 -2
  340. package/src/components/StepsCounter/types.ts +4 -4
  341. package/src/components/TableFilters/TableFilterCancelButton.tsx +39 -39
  342. package/src/components/TableFilters/TableFilterCheckbox.tsx +24 -24
  343. package/src/components/TableFilters/TableFilterClearButton.tsx +47 -47
  344. package/src/components/TableFilters/TableFilterTrigger.tsx +50 -50
  345. package/src/components/TableFilters/TableFilterTriggerWithNotification.tsx +44 -44
  346. package/src/components/TableFilters/TableFilters.e2e.ts +28 -28
  347. package/src/components/TableFilters/TableFilters.spec.tsx +166 -166
  348. package/src/components/TableFilters/TableFilters.tsx +188 -178
  349. package/src/components/TableFilters/TableFiltersAccordion.tsx +14 -14
  350. package/src/components/TableFilters/TableFiltersAccordionContent.tsx +18 -18
  351. package/src/components/TableFilters/TableFiltersButtons.tsx +32 -32
  352. package/src/components/TableFilters/hooks/useTableData.ts +107 -97
  353. package/src/components/TableFilters/index.ts +9 -9
  354. package/src/components/TableFilters/stories/StoryComponent.tsx +35 -35
  355. package/src/components/TableFilters/stories/TableFilters.stories.tsx +17 -17
  356. package/src/components/TableFilters/stories/TableFiltersWrapper.tsx +7 -7
  357. package/src/components/TableFilters/stories/mockData.tsx +114 -114
  358. package/src/components/TableFilters/styles.ts +26 -26
  359. package/src/components/TableFilters/types.ts +34 -33
  360. package/src/components/TableFilters/utils/handlers.ts +73 -73
  361. package/src/components/TradingInfoCard/TradingInfoCard.e2e.ts +16 -16
  362. package/src/components/TradingInfoCard/TradingInfoCard.spec.tsx +116 -116
  363. package/src/components/TradingInfoCard/TradingInfoCard.stories.tsx +118 -118
  364. package/src/components/TradingInfoCard/TradingInfoCard.tsx +43 -43
  365. package/src/components/TradingInfoCard/TradingInfoCardContent.tsx +32 -32
  366. package/src/components/TradingInfoCard/TradingInfoCardTooltip.tsx +47 -47
  367. package/src/components/TradingInfoCard/TradingInfoCardWrapper.tsx +72 -72
  368. package/src/components/TradingInfoCard/index.ts +3 -3
  369. package/src/components/TradingInfoCard/types.ts +27 -27
  370. package/src/components/TradingScoreboard/TradingScoreboard.spec.tsx +119 -119
  371. package/src/components/TradingScoreboard/TradingScoreboard.stories.tsx +119 -119
  372. package/src/components/TradingScoreboard/TradingScoreboard.tsx +41 -41
  373. package/src/components/TradingScoreboard/TradingScoreboardBase.tsx +17 -17
  374. package/src/components/TradingScoreboard/helpers.tsx +134 -134
  375. package/src/components/TradingScoreboard/index.ts +2 -2
  376. package/src/components/TradingScoreboard/types.ts +18 -18
  377. package/src/components/UpcomingWorkouts/UpcomingWorkoutCard.tsx +64 -64
  378. package/src/components/UpcomingWorkouts/UpcomingWorkouts.spec.tsx +56 -56
  379. package/src/components/UpcomingWorkouts/UpcomingWorkouts.stories.tsx +32 -32
  380. package/src/components/UpcomingWorkouts/UpcomingWorkouts.tsx +27 -27
  381. package/src/components/UpcomingWorkouts/index.ts +2 -2
  382. package/src/components/UpcomingWorkouts/style.ts +12 -12
  383. package/src/components/UpcomingWorkouts/types.ts +23 -23
  384. package/src/components/UserCard/UserCard.tsx +46 -46
  385. package/src/components/UserCard/UserCardBMI.tsx +37 -37
  386. package/src/components/UserCard/UserCardCredentials.tsx +56 -56
  387. package/src/components/UserCard/UserCardItem.tsx +42 -42
  388. package/src/components/UserCard/index.tsx +2 -2
  389. package/src/components/UserCard/types.ts +8 -8
  390. package/src/components/UserProfile/UserProfile.e2e.ts +21 -21
  391. package/src/components/UserProfile/UserProfile.spec.tsx +91 -55
  392. package/src/components/UserProfile/UserProfile.stories.tsx +21 -21
  393. package/src/components/UserProfile/UserProfile.tsx +53 -51
  394. package/src/components/UserProfile/index.ts +2 -2
  395. package/src/components/UserProfile/styles.ts +47 -47
  396. package/src/components/UserProfile/types.ts +8 -6
  397. package/src/components/WaterConsume/WaterConsume.spec.tsx +62 -62
  398. package/src/components/WaterConsume/WaterConsume.stories.tsx +36 -36
  399. package/src/components/WaterConsume/WaterConsume.tsx +188 -188
  400. package/src/components/WaterConsume/index.ts +2 -2
  401. package/src/components/WaterConsume/types.ts +11 -11
  402. package/src/consts.ts +18 -18
  403. package/src/index.ts +53 -53
  404. package/src/injectGlobal.ts +41 -41
  405. package/storybook-static/106.9e8cbea9.iframe.bundle.js +1 -0
  406. package/storybook-static/134.2444003c.iframe.bundle.js +1 -0
  407. package/storybook-static/166.927d7b90.iframe.bundle.js +1 -0
  408. package/storybook-static/185.4df02b5b.iframe.bundle.js +139 -0
  409. package/storybook-static/185.4df02b5b.iframe.bundle.js.map +1 -0
  410. package/storybook-static/251.8c3ebcca.iframe.bundle.js +1 -0
  411. package/storybook-static/263.0a5aa731.iframe.bundle.js +1 -0
  412. package/storybook-static/283.258a25c8.iframe.bundle.js +1 -0
  413. package/storybook-static/326.7772ae66.iframe.bundle.js +1 -0
  414. package/storybook-static/494.f5410ab1.iframe.bundle.js +2 -0
  415. package/storybook-static/494.f5410ab1.iframe.bundle.js.LICENSE.txt +18 -0
  416. package/storybook-static/{106.f1e6d14d.iframe.bundle.js → 497.7e0c2fc7.iframe.bundle.js} +4 -4
  417. package/storybook-static/497.7e0c2fc7.iframe.bundle.js.map +1 -0
  418. package/storybook-static/540.17a57e0e.iframe.bundle.js +1 -0
  419. package/storybook-static/547.951a46da.iframe.bundle.js +1 -0
  420. package/storybook-static/609.f12a4891.iframe.bundle.js +1 -0
  421. package/storybook-static/633.947e8b75.iframe.bundle.js +1 -0
  422. package/storybook-static/661.14057bc5.iframe.bundle.js +1 -0
  423. package/storybook-static/753.91179890.iframe.bundle.js +1 -0
  424. package/storybook-static/76.25b4aa80.iframe.bundle.js +1 -0
  425. package/storybook-static/767.1716b836.iframe.bundle.js +1 -0
  426. package/storybook-static/{696.e559304f.iframe.bundle.js → 781.3faed4b1.iframe.bundle.js} +2 -2
  427. package/storybook-static/906.a25e1330.iframe.bundle.js +402 -0
  428. package/storybook-static/{460.8dc4e7c6.iframe.bundle.js.LICENSE.txt → 906.a25e1330.iframe.bundle.js.LICENSE.txt} +0 -2
  429. package/storybook-static/906.a25e1330.iframe.bundle.js.map +1 -0
  430. package/storybook-static/912.a84a00a8.iframe.bundle.js +1 -0
  431. package/storybook-static/973.d2780faa.iframe.bundle.js +1 -0
  432. package/storybook-static/979.9baaf9d9.iframe.bundle.js +1 -0
  433. package/storybook-static/995.818e1781.iframe.bundle.js +1 -0
  434. package/storybook-static/components-Activity-Activity-stories.1f2220be.iframe.bundle.js +1 -0
  435. package/storybook-static/components-Bmi-Bmi-stories.033dba0e.iframe.bundle.js +1 -0
  436. package/storybook-static/components-Calories-Calories-stories.61da75cb.iframe.bundle.js +1 -0
  437. package/storybook-static/components-CardList-CardList-stories.caaffeda.iframe.bundle.js +1 -0
  438. package/storybook-static/components-HeartRate-HeartRate-stories.bd133239.iframe.bundle.js +1 -0
  439. package/storybook-static/components-ListGoals-ListGoals-stories.e68d5cbf.iframe.bundle.js +1 -0
  440. package/storybook-static/components-MealNutrients-MealNutrients-stories.7e46bd1e.iframe.bundle.js +1 -0
  441. package/storybook-static/components-MealPlanner-MealPlanner-stories.4b8341d3.iframe.bundle.js +1 -0
  442. package/storybook-static/components-NavBar-NavBar-stories.4f37096a.iframe.bundle.js +1 -0
  443. package/storybook-static/components-Pagination-Pagination-stories.2fd0c446.iframe.bundle.js +1 -0
  444. package/storybook-static/components-ProgressInfo-ProgressInfo-stories.665cee18.iframe.bundle.js +1 -0
  445. package/storybook-static/components-StepsCounter-StepsCounter-stories.b87bd065.iframe.bundle.js +1 -0
  446. package/storybook-static/components-TableFilters-stories-TableFilters-stories.24c4f9e8.iframe.bundle.js +1 -0
  447. package/storybook-static/{components-UpcomingWorkouts-UpcomingWorkouts-stories.ba735508.iframe.bundle.js → components-UpcomingWorkouts-UpcomingWorkouts-stories.fab18fcf.iframe.bundle.js} +1 -1
  448. package/storybook-static/components-WaterConsume-WaterConsume-stories.5dae388e.iframe.bundle.js +1 -0
  449. package/storybook-static/iframe.html +4 -4
  450. package/storybook-static/index.json +1 -1
  451. package/storybook-static/main.c21822d8.iframe.bundle.js +1 -0
  452. package/storybook-static/project.json +1 -1
  453. package/storybook-static/runtime~main.b259f462.iframe.bundle.js +1 -0
  454. package/storybook-static/sb-addons/essentials-actions-2/manager-bundle.js +1 -1
  455. package/storybook-static/sb-addons/essentials-actions-2/manager-bundle.js.map +4 -4
  456. package/storybook-static/sb-addons/essentials-backgrounds-3/manager-bundle.js +5 -5
  457. package/storybook-static/sb-addons/essentials-backgrounds-3/manager-bundle.js.map +4 -4
  458. package/storybook-static/sb-addons/essentials-controls-1/manager-bundle.js +49 -51
  459. package/storybook-static/sb-addons/essentials-controls-1/manager-bundle.js.map +4 -4
  460. package/storybook-static/sb-addons/essentials-measure-6/manager-bundle.js +1 -1
  461. package/storybook-static/sb-addons/essentials-measure-6/manager-bundle.js.map +4 -4
  462. package/storybook-static/sb-addons/essentials-outline-7/manager-bundle.js +1 -1
  463. package/storybook-static/sb-addons/essentials-outline-7/manager-bundle.js.map +4 -4
  464. package/storybook-static/sb-addons/essentials-toolbars-5/manager-bundle.js +1 -1
  465. package/storybook-static/sb-addons/essentials-toolbars-5/manager-bundle.js.map +3 -3
  466. package/storybook-static/sb-addons/essentials-viewport-4/manager-bundle.js +1 -1
  467. package/storybook-static/sb-addons/essentials-viewport-4/manager-bundle.js.map +4 -4
  468. package/storybook-static/sb-addons/interactions-8/manager-bundle.js +11 -11
  469. package/storybook-static/sb-addons/interactions-8/manager-bundle.js.map +4 -4
  470. package/storybook-static/sb-addons/links-0/manager-bundle.js +1 -1
  471. package/storybook-static/sb-addons/links-0/manager-bundle.js.map +3 -3
  472. package/storybook-static/sb-manager/CRUD-I5EZL2FS-LBZVDZXV.js +1 -0
  473. package/storybook-static/sb-manager/Communicate-7JXCND2Z-6SIVXWT4.js +1 -0
  474. package/storybook-static/sb-manager/Devices-SUYACUPO-DMGV6ENX.js +1 -0
  475. package/storybook-static/sb-manager/Documents-SGWAY3KW-XZRZ6I6S.js +1 -0
  476. package/storybook-static/sb-manager/Editing-7QFB6ZMG-J5U6QGB6.js +1 -0
  477. package/storybook-static/sb-manager/Git-DZ2D5ZUL-VKBWYJHE.js +1 -0
  478. package/storybook-static/{162.50e9b926.iframe.bundle.js → sb-manager/GlobalScrollAreaStyles-4LLX2B3H-DOBSPBNW.js} +7 -1
  479. package/storybook-static/sb-manager/Images-S2WTXNGG-NXAYS4VP.js +1 -0
  480. package/storybook-static/sb-manager/Logos-SJTNNI74-F3IVL4UV.js +1 -0
  481. package/storybook-static/sb-manager/OS-YZ2Y4VYS-KGSGCOHC.js +1 -0
  482. package/storybook-static/sb-manager/OverlayScrollbars-OL4C4TVX-FNYA4OIC.js +1 -0
  483. package/storybook-static/sb-manager/People-OD4EV7WZ-DBPUNUXW.js +1 -0
  484. package/storybook-static/sb-manager/Wayfinding-BB4H7CHP-N2QAVLVA.js +1 -0
  485. package/storybook-static/sb-manager/WithTooltip-YBG737T3-GLWUADFI.js +1 -0
  486. package/storybook-static/sb-manager/{chunk-AA6TEL5N.js → chunk-6KNXZZZ5.js} +1 -1
  487. package/storybook-static/sb-manager/{chunk-3FAXWWKG.js → chunk-DP4DR4LA.js} +1 -1
  488. package/storybook-static/sb-manager/chunk-GBCXFRBK.js +1 -0
  489. package/storybook-static/sb-manager/chunk-IFNK3PLJ.js +1 -0
  490. package/storybook-static/sb-manager/chunk-JMPBYCHU.js +1 -0
  491. package/storybook-static/sb-manager/{chunk-R5BIZIS3.js → chunk-JSPL73I3.js} +1 -1
  492. package/storybook-static/sb-manager/{chunk-AM2ZNZZH.js → chunk-SJD7EFYL.js} +1 -1
  493. package/storybook-static/sb-manager/chunk-UBXIQABM.js +447 -0
  494. package/storybook-static/sb-manager/{chunk-IPZYHIL3.js → chunk-V7GYLJLR.js} +2 -2
  495. package/storybook-static/sb-manager/chunk-Z4NRYNHR.js +1 -0
  496. package/storybook-static/sb-manager/{formatter-OJ5LH2CX-IQX6U4TO.js → formatter-6736J7QO-TGL2ZGQC.js} +2 -2
  497. package/storybook-static/sb-manager/globals.js +1 -1
  498. package/storybook-static/sb-manager/index.js +1 -1
  499. package/storybook-static/sb-manager/runtime.js +1 -1
  500. package/storybook-static/sb-manager/syntaxhighlighter-4OVWVELQ-5IZ45DZY.js +1 -0
  501. package/storybook-static/sb-preview/runtime.js +4 -4
  502. package/storybook-static/stories.json +1 -1
  503. package/test-results/src-components-CollapsibleNavBar-CollapsibleNa-37902-idgets-CollapsibleNavBar-1439-Should-be-visible-chromium/trace.zip +0 -0
  504. package/test-results/src-components-CollapsibleNavBar-CollapsibleNa-3bc42-amburger-menu-icon-should-be-visible-by-default-chromium/trace.zip +0 -0
  505. package/test-results/src-components-CollapsibleNavBar-CollapsibleNa-467fc-u-should-be-shown-after-Statistics-icon-hovered-chromium/trace.zip +0 -0
  506. package/test-results/src-components-CollapsibleNavBar-CollapsibleNa-550ce-idgets-CollapsibleNavBar-1920-Should-be-visible-chromium/trace.zip +0 -0
  507. package/test-results/src-components-CollapsibleNavBar-CollapsibleNa-82d84-should-be-visible-after-Statistics-item-clicked-chromium/trace.zip +0 -0
  508. package/test-results/src-components-CollapsibleNavBar-CollapsibleNa-86e96-nu-content-should-be-visible-after-icon-clicked-chromium/trace.zip +0 -0
  509. package/test-results/src-components-CollapsibleNavBar-CollapsibleNa-b093e-nu-should-be-expanded-after-toggle-icon-clicked-chromium/trace.zip +0 -0
  510. package/test-results/src-components-CollapsibleNavBar-CollapsibleNa-bc4b6-u-should-be-shown-after-Statistics-icon-hovered-chromium/trace.zip +0 -0
  511. package/test-results/src-components-CollapsibleNavBar-CollapsibleNa-d159d-d-after-Statistics-item-clicked-expanded-state--chromium/trace.zip +0 -0
  512. package/tsbuildcache +1 -1
  513. package/tsconfig.build.json +44 -44
  514. package/tsconfig.json +17 -17
  515. package/tsconfig.tsbuildinfo +1 -1
  516. package/webpack.config.js +28 -28
  517. package/storybook-static/0.19f2e251.iframe.bundle.js +0 -1
  518. package/storybook-static/106.f1e6d14d.iframe.bundle.js.map +0 -1
  519. package/storybook-static/291.c8585ee9.iframe.bundle.js +0 -1
  520. package/storybook-static/293.c50861da.iframe.bundle.js +0 -2
  521. package/storybook-static/293.c50861da.iframe.bundle.js.LICENSE.txt +0 -9
  522. package/storybook-static/36.713e1566.iframe.bundle.js +0 -1
  523. package/storybook-static/460.8dc4e7c6.iframe.bundle.js +0 -402
  524. package/storybook-static/460.8dc4e7c6.iframe.bundle.js.map +0 -1
  525. package/storybook-static/576.98c3eb27.iframe.bundle.js +0 -1
  526. package/storybook-static/710.ab631936.iframe.bundle.js +0 -1
  527. package/storybook-static/829.7385f99b.iframe.bundle.js +0 -139
  528. package/storybook-static/829.7385f99b.iframe.bundle.js.map +0 -1
  529. package/storybook-static/834.04cdfc87.iframe.bundle.js +0 -1
  530. package/storybook-static/945.ddb2ee2f.iframe.bundle.js +0 -1
  531. package/storybook-static/components-Activity-Activity-stories.107a3fa3.iframe.bundle.js +0 -1
  532. package/storybook-static/components-Bmi-Bmi-stories.b8c54168.iframe.bundle.js +0 -1
  533. package/storybook-static/components-Calories-Calories-stories.8851a637.iframe.bundle.js +0 -1
  534. package/storybook-static/components-CardList-CardList-stories.963f2911.iframe.bundle.js +0 -1
  535. package/storybook-static/components-HeartRate-HeartRate-stories.f9844316.iframe.bundle.js +0 -1
  536. package/storybook-static/components-ListGoals-ListGoals-stories.ca994275.iframe.bundle.js +0 -1
  537. package/storybook-static/components-MealNutrients-MealNutrients-stories.1850ecb0.iframe.bundle.js +0 -1
  538. package/storybook-static/components-MealPlanner-MealPlanner-stories.542c85fc.iframe.bundle.js +0 -1
  539. package/storybook-static/components-NavBar-NavBar-stories.73f09876.iframe.bundle.js +0 -1
  540. package/storybook-static/components-ProgressInfo-ProgressInfo-stories.f6b5466e.iframe.bundle.js +0 -1
  541. package/storybook-static/components-StepsCounter-StepsCounter-stories.967e384f.iframe.bundle.js +0 -1
  542. package/storybook-static/components-WaterConsume-WaterConsume-stories.4b5e8cb5.iframe.bundle.js +0 -1
  543. package/storybook-static/main.912c7e67.iframe.bundle.js +0 -1
  544. package/storybook-static/runtime~main.e664d5e5.iframe.bundle.js +0 -1
  545. package/storybook-static/sb-manager/GlobalScrollAreaStyles-DZEYMYDM-UAEZM2KF.js +0 -7
  546. package/storybook-static/sb-manager/OverlayScrollbars-OGE3XJTA-T3S33YR7.js +0 -1
  547. package/storybook-static/sb-manager/WithTooltip-I4CCNYWD-ZW5IOTVO.js +0 -1
  548. package/storybook-static/sb-manager/chunk-AS2AMEUR.js +0 -1
  549. package/storybook-static/sb-manager/chunk-FPTBIX6P.js +0 -403
  550. package/storybook-static/sb-manager/chunk-QPL63VNK.js +0 -1
  551. package/storybook-static/sb-manager/syntaxhighlighter-SIPZPD4I-WOB5MYBW.js +0 -1
  552. /package/storybook-static/{696.e559304f.iframe.bundle.js.LICENSE.txt → 781.3faed4b1.iframe.bundle.js.LICENSE.txt} +0 -0
@@ -1,75 +1,85 @@
1
- import { Wrapper } from '@ssa-ui-kit/core';
2
- import { TableFilters } from '@components/TableFilters';
3
- import { TableFilterConfig } from '@components/TableFilters/types';
4
- import { useRef, useState } from 'react';
5
- import {
6
- UseTableDataParameters,
7
- UseTableDataResult,
8
- useTableData,
9
- } from '@components/TableFilters/hooks/useTableData';
10
- import { FiltersContextProvider } from './FiltersContext';
11
- import { FiltersBlock } from './FiltersBlock';
12
- import { FilterBlockWrapper } from './FilterBlockWrapper';
13
- import { FiltersWrapper } from './FiltersWrapper';
14
- import { useVisibility } from './hooks/useVisibility';
15
-
16
- export const Filters = ({
17
- checkboxData: initialState = {} as TableFilterConfig,
18
- handleSubmit,
19
- handleCancel,
20
- handleClear,
21
- }: Pick<UseTableDataResult, 'checkboxData'> &
22
- Pick<
23
- UseTableDataParameters,
24
- 'handleSubmit' | 'handleCancel' | 'handleClear'
25
- >) => {
26
- const wrapperRef = useRef<HTMLDivElement>(null);
27
- const [hiddenCheckboxData, setHiddenCheckboxData] =
28
- useState<TableFilterConfig>({});
29
-
30
- const useTableDataResult = useTableData({
31
- initialState,
32
- wrapperRef,
33
- handleSubmit,
34
- handleCancel,
35
- handleClear,
36
- });
37
-
38
- const { checkboxData, refsList } = useTableDataResult;
39
-
40
- const handleVisibilityProcessed = () => {
41
- const newHiddenCheckboxData: TableFilterConfig = {};
42
- const groupNames = Object.keys(checkboxData);
43
- refsList.forEach((currentRef, index) => {
44
- const groupName = groupNames[index];
45
- const isNotVisible = currentRef.current?.style.visibility === 'hidden';
46
- if (isNotVisible) {
47
- newHiddenCheckboxData[groupName] = checkboxData[groupName];
48
- }
49
- });
50
- setHiddenCheckboxData(newHiddenCheckboxData);
51
- };
52
-
53
- useVisibility({
54
- checkboxData,
55
- refsList,
56
- wrapperRef,
57
- onVisibilityProcessed: handleVisibilityProcessed,
58
- });
59
-
60
- return (
61
- <FiltersWrapper ref={wrapperRef}>
62
- <FiltersContextProvider {...useTableDataResult}>
63
- <FilterBlockWrapper>
64
- <FiltersBlock />
65
- </FilterBlockWrapper>
66
- <Wrapper css={{ width: 110 }}>
67
- <TableFilters
68
- {...useTableDataResult}
69
- checkboxData={hiddenCheckboxData}
70
- />
71
- </Wrapper>
72
- </FiltersContextProvider>
73
- </FiltersWrapper>
74
- );
75
- };
1
+ import { useRef, useState } from 'react';
2
+ import { Wrapper } from '@ssa-ui-kit/core';
3
+ import { TableFilters } from '@components/TableFilters';
4
+ import { TableFilterConfig } from '@components/TableFilters/types';
5
+ import {
6
+ UseTableDataParameters,
7
+ UseTableDataResult,
8
+ useTableData,
9
+ } from '@components/TableFilters/hooks/useTableData';
10
+ import { FiltersContextProvider } from './FiltersContext';
11
+ import { FiltersBlock } from './FiltersBlock';
12
+ import { FilterBlockWrapper } from './FilterBlockWrapper';
13
+ import { FiltersWrapper } from './FiltersWrapper';
14
+ import { useVisibility } from './hooks/useVisibility';
15
+
16
+ export const Filters = ({
17
+ checkboxData: initialState = {} as TableFilterConfig,
18
+ updatedCheckboxData,
19
+ handleSubmit,
20
+ handleCancel,
21
+ handleClear,
22
+ }: Pick<UseTableDataResult, 'checkboxData'> & {
23
+ updatedCheckboxData?: TableFilterConfig;
24
+ } & Pick<
25
+ UseTableDataParameters,
26
+ 'handleSubmit' | 'handleCancel' | 'handleClear'
27
+ >) => {
28
+ const wrapperRef = useRef<HTMLDivElement>(null);
29
+ const [hiddenCheckboxData, setHiddenCheckboxData] =
30
+ useState<TableFilterConfig>({});
31
+
32
+ const [isMoreButtonVisible, setIsMoreButtonVisible] = useState(false);
33
+
34
+ const useTableDataResult = useTableData({
35
+ initialState,
36
+ updatedCheckboxData,
37
+ wrapperRef,
38
+ handleSubmit,
39
+ handleCancel,
40
+ handleClear,
41
+ });
42
+
43
+ const { checkboxData, refsList } = useTableDataResult;
44
+
45
+ const handleVisibilityProcessed = () => {
46
+ const newHiddenCheckboxData: TableFilterConfig = {};
47
+ const groupNames = Object.keys(checkboxData);
48
+ refsList.forEach((currentRef, index) => {
49
+ const groupName = groupNames[index];
50
+ const isNotVisible = currentRef.current?.style.visibility === 'hidden';
51
+ if (isNotVisible) {
52
+ newHiddenCheckboxData[groupName] = checkboxData[groupName];
53
+ }
54
+ });
55
+ setHiddenCheckboxData(newHiddenCheckboxData);
56
+ };
57
+
58
+ const handleMoreButtonVisibleChange = (isVisible: boolean) => {
59
+ setIsMoreButtonVisible(isVisible);
60
+ };
61
+
62
+ useVisibility({
63
+ checkboxData,
64
+ refsList,
65
+ wrapperRef,
66
+ onVisibilityProcessed: handleVisibilityProcessed,
67
+ });
68
+
69
+ return (
70
+ <FiltersWrapper ref={wrapperRef} isMoreButtonVisible={isMoreButtonVisible}>
71
+ <FiltersContextProvider {...useTableDataResult}>
72
+ <FilterBlockWrapper>
73
+ <FiltersBlock />
74
+ </FilterBlockWrapper>
75
+ <Wrapper css={{ width: 110 }}>
76
+ <TableFilters
77
+ {...useTableDataResult}
78
+ checkboxData={hiddenCheckboxData}
79
+ handleMoreButtonVisibleChange={handleMoreButtonVisibleChange}
80
+ />
81
+ </Wrapper>
82
+ </FiltersContextProvider>
83
+ </FiltersWrapper>
84
+ );
85
+ };
@@ -1,70 +1,70 @@
1
- import { DropdownOption, MultipleDropdown } from '@ssa-ui-kit/core';
2
- import React, { useEffect, useState } from 'react';
3
- import { useFiltersContext } from './FiltersContext';
4
-
5
- export const FiltersBlock = () => {
6
- const { setElementRef, handleCheckboxToggle, checkboxData } =
7
- useFiltersContext();
8
- const handleOnChange = (groupName: string) => (item: string | number) => {
9
- handleCheckboxToggle(groupName, item);
10
- };
11
-
12
- const [selectedItemsWithValue, setSelectedItemsWithValue] = useState<
13
- Record<string, Array<{ value: string }>>
14
- >({});
15
-
16
- useEffect(() => {
17
- const newData: Record<
18
- string,
19
- Array<{
20
- value: string;
21
- }>
22
- > = {};
23
- Object.keys(checkboxData).map((groupName) => {
24
- const selectedItems = checkboxData[groupName]['selectedItemsDraft'];
25
- if (selectedItems) {
26
- newData[groupName] = selectedItems.map((item) => ({
27
- value: item,
28
- }));
29
- }
30
- });
31
- setSelectedItemsWithValue(newData);
32
- }, [checkboxData]);
33
-
34
- return (
35
- <>
36
- {Object.keys(checkboxData).map((groupName) => {
37
- const accordionInfo = checkboxData[groupName];
38
- const selectedItems = selectedItemsWithValue[groupName];
39
- return (
40
- <MultipleDropdown
41
- key={accordionInfo.id}
42
- showPlaceholder={false}
43
- label={accordionInfo.title}
44
- ref={(element) => {
45
- setElementRef(accordionInfo.id, element);
46
- }}
47
- onChange={handleOnChange(groupName)}
48
- selectedItems={selectedItems}
49
- css={{
50
- '& + ul': {
51
- minWidth: 150,
52
- },
53
- }}>
54
- {Object.keys(accordionInfo.items).map((itemKey) => {
55
- const item = accordionInfo.items[itemKey];
56
- return (
57
- <DropdownOption
58
- key={`${accordionInfo.id}${item.name}`}
59
- value={item.name}
60
- isDisabled={item.isDisabled}>
61
- {item.content.text}
62
- </DropdownOption>
63
- );
64
- })}
65
- </MultipleDropdown>
66
- );
67
- })}
68
- </>
69
- );
70
- };
1
+ import { DropdownOption, MultipleDropdown } from '@ssa-ui-kit/core';
2
+ import React, { useEffect, useState } from 'react';
3
+ import { useFiltersContext } from './FiltersContext';
4
+
5
+ export const FiltersBlock = () => {
6
+ const { setElementRef, handleCheckboxToggle, checkboxData } =
7
+ useFiltersContext();
8
+ const handleOnChange = (groupName: string) => (item: string | number) => {
9
+ handleCheckboxToggle(groupName, item);
10
+ };
11
+
12
+ const [selectedItemsWithValue, setSelectedItemsWithValue] = useState<
13
+ Record<string, Array<{ value: string }>>
14
+ >({});
15
+
16
+ useEffect(() => {
17
+ const newData: Record<
18
+ string,
19
+ Array<{
20
+ value: string;
21
+ }>
22
+ > = {};
23
+ Object.keys(checkboxData).map((groupName) => {
24
+ const selectedItems = checkboxData[groupName]['selectedItemsDraft'];
25
+ if (selectedItems) {
26
+ newData[groupName] = selectedItems.map((item) => ({
27
+ value: item,
28
+ }));
29
+ }
30
+ });
31
+ setSelectedItemsWithValue(newData);
32
+ }, [checkboxData]);
33
+
34
+ return (
35
+ <>
36
+ {Object.keys(checkboxData).map((groupName) => {
37
+ const accordionInfo = checkboxData[groupName];
38
+ const selectedItems = selectedItemsWithValue[groupName];
39
+ return (
40
+ <MultipleDropdown
41
+ key={accordionInfo.id}
42
+ showPlaceholder={false}
43
+ label={accordionInfo.title}
44
+ ref={(element) => {
45
+ setElementRef(accordionInfo.id, element);
46
+ }}
47
+ onChange={handleOnChange(groupName)}
48
+ selectedItems={selectedItems}
49
+ css={{
50
+ '& + ul': {
51
+ minWidth: 150,
52
+ },
53
+ }}>
54
+ {Object.keys(accordionInfo.items).map((itemKey) => {
55
+ const item = accordionInfo.items[itemKey];
56
+ return (
57
+ <DropdownOption
58
+ key={`${accordionInfo.id}${item.name}`}
59
+ value={item.name}
60
+ isDisabled={item.isDisabled}>
61
+ {item.content.text}
62
+ </DropdownOption>
63
+ );
64
+ })}
65
+ </MultipleDropdown>
66
+ );
67
+ })}
68
+ </>
69
+ );
70
+ };
@@ -1,41 +1,41 @@
1
- import { UseTableDataResult } from '@components/TableFilters/hooks/useTableData';
2
- import { mockData } from '@components/TableFilters/stories/mockData';
3
- import {
4
- BaseSyntheticEvent,
5
- createContext,
6
- createRef,
7
- useContext,
8
- } from 'react';
9
-
10
- export const FiltersContext = createContext<UseTableDataResult>({
11
- checkboxData: mockData,
12
- selectedItemsByGroup: {},
13
- handleCheckboxToggle: (groupName: string, name: string | number) => () => {
14
- // no action
15
- },
16
- onClear: () => {
17
- // no action
18
- },
19
- onReset: () => {
20
- // no action
21
- },
22
- onSubmit: (event?: BaseSyntheticEvent) => {
23
- // no action
24
- },
25
- refsList: [],
26
- setElementRef: (groupName: string, element: HTMLElement | null) => {
27
- // no action
28
- },
29
- wrapperRef: createRef(),
30
- } as UseTableDataResult);
31
-
32
- export const useFiltersContext = () => useContext(FiltersContext);
33
-
34
- export const FiltersContextProvider = ({
35
- children,
36
- ...rest
37
- }: {
38
- children: React.ReactNode;
39
- } & UseTableDataResult) => (
40
- <FiltersContext.Provider value={rest}>{children}</FiltersContext.Provider>
41
- );
1
+ import { UseTableDataResult } from '@components/TableFilters/hooks/useTableData';
2
+ import { mockData } from '@components/TableFilters/stories/mockData';
3
+ import {
4
+ BaseSyntheticEvent,
5
+ createContext,
6
+ createRef,
7
+ useContext,
8
+ } from 'react';
9
+
10
+ export const FiltersContext = createContext<UseTableDataResult>({
11
+ checkboxData: mockData,
12
+ selectedItemsByGroup: {},
13
+ handleCheckboxToggle: (groupName: string, name: string | number) => () => {
14
+ // no action
15
+ },
16
+ onClear: () => {
17
+ // no action
18
+ },
19
+ onReset: () => {
20
+ // no action
21
+ },
22
+ onSubmit: (event?: BaseSyntheticEvent) => {
23
+ // no action
24
+ },
25
+ refsList: [],
26
+ setElementRef: (groupName: string, element: HTMLElement | null) => {
27
+ // no action
28
+ },
29
+ wrapperRef: createRef(),
30
+ } as UseTableDataResult);
31
+
32
+ export const useFiltersContext = () => useContext(FiltersContext);
33
+
34
+ export const FiltersContextProvider = ({
35
+ children,
36
+ ...rest
37
+ }: {
38
+ children: React.ReactNode;
39
+ } & UseTableDataResult) => (
40
+ <FiltersContext.Provider value={rest}>{children}</FiltersContext.Provider>
41
+ );
@@ -1,8 +1,15 @@
1
- import styled from '@emotion/styled';
2
-
3
- export const FiltersWrapper = styled.div`
4
- width: 300;
5
- display: flex;
6
- justify-content: right;
7
- flex: auto;
8
- `;
1
+ import styled from '@emotion/styled';
2
+
3
+ export const FiltersWrapper = styled.div<{ isMoreButtonVisible?: boolean }>`
4
+ width: 300px;
5
+ display: flex;
6
+ justify-content: right;
7
+ flex: auto;
8
+ flex-direction: ${({ isMoreButtonVisible }) =>
9
+ isMoreButtonVisible ? 'row' : 'row-reverse'};
10
+
11
+ & > div:first-child > div:last-child {
12
+ margin-right: ${({ isMoreButtonVisible }) =>
13
+ isMoreButtonVisible ? '10px' : 0};
14
+ }
15
+ `;
@@ -1,101 +1,101 @@
1
- import { useEffect, useMemo, useState } from 'react';
2
- import { ElementInfo } from '../types';
3
- import { TableFilterConfig } from '@components/TableFilters/types';
4
- import { useWindowSize } from '@ssa-ui-kit/hooks';
5
-
6
- export type RefsByKey = Record<string, ElementInfo>;
7
- type UseVisibilityParams = {
8
- checkboxData: TableFilterConfig;
9
- refsList: Array<React.MutableRefObject<HTMLElement | null>>;
10
- wrapperRef?: React.RefObject<HTMLElement>;
11
- onVisibilityProcessed?: () => void;
12
- };
13
-
14
- export const useVisibility = ({
15
- checkboxData,
16
- wrapperRef,
17
- refsList,
18
- onVisibilityProcessed,
19
- }: UseVisibilityParams) => {
20
- const [visibilities, setVisibilities] = useState<boolean[]>(
21
- Object.keys(checkboxData).map(() => false),
22
- );
23
- const handleIntersection = () => {
24
- if (wrapperRef && wrapperRef.current) {
25
- processVisibility();
26
- }
27
- };
28
-
29
- const observer = useMemo(
30
- () =>
31
- wrapperRef === null
32
- ? null
33
- : new IntersectionObserver(handleIntersection, {
34
- root: wrapperRef?.current,
35
- rootMargin: '0px',
36
- threshold: 1,
37
- }),
38
- [wrapperRef?.current, refsList],
39
- );
40
-
41
- useEffect(() => {
42
- return () => {
43
- if (observer !== null) {
44
- observer.disconnect();
45
- }
46
- };
47
- }, []);
48
-
49
- useEffect(() => {
50
- if (refsList.length === Object.keys(checkboxData).length) {
51
- refsList.forEach((currentRef) => {
52
- if (currentRef.current && observer !== null) {
53
- observer.observe(currentRef.current);
54
- }
55
- });
56
- }
57
- return () => {
58
- refsList.forEach((currentRef) => {
59
- if (currentRef.current && observer !== null) {
60
- observer.unobserve(currentRef.current);
61
- }
62
- });
63
- };
64
- }, [refsList, observer]);
65
-
66
- const windowSize = useWindowSize();
67
-
68
- const processVisibility = () => {
69
- const newVisibilities: boolean[] = [];
70
- refsList.forEach((currentRef) => {
71
- if (currentRef.current && wrapperRef?.current) {
72
- const visibility =
73
- currentRef.current?.offsetLeft >= wrapperRef?.current.offsetLeft;
74
- newVisibilities.push(visibility);
75
- currentRef.current.style.visibility = visibility ? 'visible' : 'hidden';
76
- }
77
- });
78
- setVisibilities(newVisibilities);
79
- };
80
-
81
- const memoVisibilities = useMemo(() => {
82
- return visibilities;
83
- }, [JSON.stringify(visibilities)]);
84
-
85
- useEffect(() => {
86
- onVisibilityProcessed?.();
87
- }, [memoVisibilities]);
88
-
89
- useEffect(() => {
90
- if (
91
- refsList.length > 0 &&
92
- refsList.length === Object.keys(checkboxData).length
93
- ) {
94
- processVisibility();
95
- }
96
- }, [windowSize.width]);
97
-
98
- return {
99
- processVisibility,
100
- };
101
- };
1
+ import { useEffect, useMemo, useState } from 'react';
2
+ import { ElementInfo } from '../types';
3
+ import { TableFilterConfig } from '@components/TableFilters/types';
4
+ import { useWindowSize } from '@ssa-ui-kit/hooks';
5
+
6
+ export type RefsByKey = Record<string, ElementInfo>;
7
+ type UseVisibilityParams = {
8
+ checkboxData: TableFilterConfig;
9
+ refsList: Array<React.MutableRefObject<HTMLElement | null>>;
10
+ wrapperRef?: React.RefObject<HTMLElement>;
11
+ onVisibilityProcessed?: () => void;
12
+ };
13
+
14
+ export const useVisibility = ({
15
+ checkboxData,
16
+ wrapperRef,
17
+ refsList,
18
+ onVisibilityProcessed,
19
+ }: UseVisibilityParams) => {
20
+ const [visibilities, setVisibilities] = useState<boolean[]>(
21
+ Object.keys(checkboxData).map(() => false),
22
+ );
23
+ const handleIntersection = () => {
24
+ if (wrapperRef && wrapperRef.current) {
25
+ processVisibility();
26
+ }
27
+ };
28
+
29
+ const observer = useMemo(
30
+ () =>
31
+ wrapperRef === null
32
+ ? null
33
+ : new IntersectionObserver(handleIntersection, {
34
+ root: wrapperRef?.current,
35
+ rootMargin: '0px',
36
+ threshold: 1,
37
+ }),
38
+ [wrapperRef?.current, refsList],
39
+ );
40
+
41
+ useEffect(() => {
42
+ return () => {
43
+ if (observer !== null) {
44
+ observer.disconnect();
45
+ }
46
+ };
47
+ }, []);
48
+
49
+ useEffect(() => {
50
+ if (refsList.length === Object.keys(checkboxData).length) {
51
+ refsList.forEach((currentRef) => {
52
+ if (currentRef.current && observer !== null) {
53
+ observer.observe(currentRef.current);
54
+ }
55
+ });
56
+ }
57
+ return () => {
58
+ refsList.forEach((currentRef) => {
59
+ if (currentRef.current && observer !== null) {
60
+ observer.unobserve(currentRef.current);
61
+ }
62
+ });
63
+ };
64
+ }, [refsList, observer]);
65
+
66
+ const windowSize = useWindowSize();
67
+
68
+ const processVisibility = () => {
69
+ const newVisibilities: boolean[] = [];
70
+ refsList.forEach((currentRef) => {
71
+ if (currentRef.current && wrapperRef?.current) {
72
+ const visibility =
73
+ currentRef.current?.offsetLeft >= wrapperRef?.current.offsetLeft;
74
+ newVisibilities.push(visibility);
75
+ currentRef.current.style.visibility = visibility ? 'visible' : 'hidden';
76
+ }
77
+ });
78
+ setVisibilities(newVisibilities);
79
+ };
80
+
81
+ const memoVisibilities = useMemo(() => {
82
+ return visibilities;
83
+ }, [JSON.stringify(visibilities)]);
84
+
85
+ useEffect(() => {
86
+ onVisibilityProcessed?.();
87
+ }, [memoVisibilities]);
88
+
89
+ useEffect(() => {
90
+ if (
91
+ refsList.length > 0 &&
92
+ refsList.length === Object.keys(checkboxData).length
93
+ ) {
94
+ processVisibility();
95
+ }
96
+ }, [windowSize.width]);
97
+
98
+ return {
99
+ processVisibility,
100
+ };
101
+ };
@@ -1 +1 @@
1
- export * from './Filters';
1
+ export * from './Filters';
@@ -1,17 +1,17 @@
1
- import type { Meta, StoryObj } from '@storybook/react';
2
- import { StoryComponent } from './StoryComponent';
3
- import { Filters } from '..';
4
-
5
- type FiltersType = typeof Filters;
6
-
7
- export default {
8
- title: 'Widgets/Filters',
9
- component: Filters,
10
- argTypes: {},
11
- } as Meta<typeof Filters>;
12
-
13
- export const Default: StoryObj<FiltersType> = () => {
14
- return <StoryComponent />;
15
- };
16
-
17
- Default.args = {};
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
+ import { StoryComponent } from './StoryComponent';
3
+ import { Filters } from '..';
4
+
5
+ type FiltersType = typeof Filters;
6
+
7
+ export default {
8
+ title: 'Widgets/Filters',
9
+ component: Filters,
10
+ argTypes: {},
11
+ } as Meta<typeof Filters>;
12
+
13
+ export const Default: StoryObj<FiltersType> = () => {
14
+ return <StoryComponent />;
15
+ };
16
+
17
+ Default.args = {};