@astral/ui 4.74.0 → 4.75.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (469) hide show
  1. package/components/CardGridInfinite/CardGridInfinite.js +11 -2
  2. package/components/CardGridInfinite/styles.js +4 -0
  3. package/components/CardGridInfinite/useLogic/useLogic.d.ts +1 -1
  4. package/components/CardGridInfinite/useLogic/useLogic.js +3 -13
  5. package/components/Chevron/Chevron.d.ts +1 -1
  6. package/components/ConfirmAction/ConfirmAction.js +3 -3
  7. package/components/ConfirmAction/constants.d.ts +1 -0
  8. package/components/ConfirmAction/constants.js +1 -0
  9. package/components/ConfirmAction/styles.js +13 -0
  10. package/components/ConfirmAction/types.d.ts +1 -1
  11. package/components/DataGrid/Body/Body.d.ts +1 -1
  12. package/components/DataGrid/Body/Body.js +5 -3
  13. package/components/DataGrid/Body/types.d.ts +5 -0
  14. package/components/DataGrid/Cell/Cell.d.ts +9 -1
  15. package/components/DataGrid/Cell/Cell.js +16 -2
  16. package/components/DataGrid/CustomRowWrapper/CustomRowWrapper.d.ts +19 -0
  17. package/components/DataGrid/CustomRowWrapper/CustomRowWrapper.js +15 -0
  18. package/components/DataGrid/CustomRowWrapper/index.d.ts +1 -0
  19. package/components/DataGrid/CustomRowWrapper/index.js +1 -0
  20. package/components/DataGrid/DataGrid.js +14 -3
  21. package/components/DataGrid/DataGridContext/DataGridContext.d.ts +9 -5
  22. package/components/DataGrid/DataGridContext/DataGridContext.js +7 -4
  23. package/components/DataGrid/DataGridContext/DataGridProvider/DataGridProvider.d.ts +3 -4
  24. package/components/DataGrid/DataGridContext/DataGridProvider/DataGridProvider.js +18 -48
  25. package/components/DataGrid/DataGridStorageContext/DataGridStorageContext.d.ts +29 -0
  26. package/components/DataGrid/DataGridStorageContext/DataGridStorageContext.js +28 -0
  27. package/components/DataGrid/DataGridStorageContext/DataGridStorageProvider/DataGridStorageProvider.d.ts +6 -0
  28. package/components/DataGrid/DataGridStorageContext/DataGridStorageProvider/DataGridStorageProvider.js +12 -0
  29. package/components/DataGrid/DataGridStorageContext/DataGridStorageProvider/index.d.ts +1 -0
  30. package/components/DataGrid/DataGridStorageContext/DataGridStorageProvider/index.js +1 -0
  31. package/components/DataGrid/DataGridStorageContext/index.d.ts +2 -0
  32. package/components/DataGrid/DataGridStorageContext/index.js +2 -0
  33. package/components/DataGrid/MobileSkeleton/MobileSkeleton.d.ts +2 -1
  34. package/components/DataGrid/MobileSkeleton/MobileSkeleton.js +21 -3
  35. package/components/DataGrid/MobileSkeleton/styles.js +12 -0
  36. package/components/DataGrid/Row/NestedChildren/NestedChildren.d.ts +1 -5
  37. package/components/DataGrid/Row/NestedChildren/NestedChildren.js +17 -7
  38. package/components/DataGrid/Row/NestedChildren/constants.d.ts +6 -0
  39. package/components/DataGrid/Row/NestedChildren/constants.js +7 -0
  40. package/components/DataGrid/Row/NestedChildren/styles.js +42 -3
  41. package/components/DataGrid/Row/NestedChildren/useLogic/useLogic.d.ts +1 -1
  42. package/components/DataGrid/Row/NestedChildren/useLogic/useLogic.js +4 -6
  43. package/components/DataGrid/Row/Row.js +34 -37
  44. package/components/DataGrid/Row/RowContext/RowContext.d.ts +10 -1
  45. package/components/DataGrid/Row/RowContext/RowContext.js +9 -0
  46. package/components/DataGrid/Row/RowContext/RowProvider/RowProvider.d.ts +3 -2
  47. package/components/DataGrid/Row/RowContext/RowProvider/RowProvider.js +25 -2
  48. package/components/DataGrid/Row/constants.d.ts +6 -0
  49. package/components/DataGrid/Row/constants.js +6 -0
  50. package/components/DataGrid/Row/styles.js +102 -3
  51. package/components/DataGrid/Row/useLogic/hooks/useMobileLogic.d.ts +1 -0
  52. package/components/DataGrid/Row/useLogic/hooks/useMobileLogic.js +1 -1
  53. package/components/DataGrid/Row/useLogic/useLogic.d.ts +5 -2
  54. package/components/DataGrid/Row/useLogic/useLogic.js +21 -19
  55. package/components/DataGrid/RowBase/GroupCell/GroupCell.d.ts +2 -0
  56. package/components/DataGrid/RowBase/GroupCell/GroupCell.js +22 -0
  57. package/components/DataGrid/RowBase/GroupCell/constants.d.ts +4 -0
  58. package/components/DataGrid/RowBase/GroupCell/constants.js +5 -0
  59. package/components/DataGrid/RowBase/GroupCell/index.d.ts +1 -0
  60. package/components/DataGrid/RowBase/GroupCell/index.js +1 -0
  61. package/components/DataGrid/RowBase/GroupCell/styles.d.ts +12 -0
  62. package/components/DataGrid/RowBase/GroupCell/styles.js +16 -0
  63. package/components/DataGrid/RowBase/GroupCell/types.d.ts +11 -0
  64. package/components/DataGrid/RowBase/GroupCell/types.js +1 -0
  65. package/components/DataGrid/RowBase/RowBase.d.ts +3 -0
  66. package/components/DataGrid/RowBase/RowBase.js +69 -0
  67. package/components/DataGrid/RowBase/constants.d.ts +9 -0
  68. package/components/DataGrid/RowBase/constants.js +10 -0
  69. package/components/DataGrid/RowBase/index.d.ts +3 -0
  70. package/components/DataGrid/RowBase/index.js +2 -0
  71. package/components/DataGrid/RowBase/styles.d.ts +17 -0
  72. package/components/DataGrid/RowBase/styles.js +87 -0
  73. package/components/DataGrid/RowBase/types.d.ts +92 -0
  74. package/components/DataGrid/RowBase/types.js +1 -0
  75. package/components/DataGrid/RowBase/useLogic/useLogic.d.ts +46 -0
  76. package/components/DataGrid/RowBase/useLogic/useLogic.js +90 -0
  77. package/components/DataGrid/constants.d.ts +8 -0
  78. package/components/DataGrid/constants.js +8 -0
  79. package/components/DataGrid/index.d.ts +3 -0
  80. package/components/DataGrid/index.js +3 -0
  81. package/components/DataGrid/styles.js +14 -0
  82. package/components/DataGrid/tests/performance/testDataGridPerformance.d.ts +21 -0
  83. package/components/DataGrid/tests/performance/testDataGridPerformance.js +102 -0
  84. package/components/DataGrid/types.d.ts +11 -0
  85. package/components/DataGrid/useLogic/hooks/useDataGridMobileLogic/useDataGridMobileLogic.d.ts +3 -1
  86. package/components/DataGrid/useLogic/hooks/useDataGridMobileLogic/useDataGridMobileLogic.js +2 -1
  87. package/components/DataGrid/useLogic/useLogic.d.ts +4 -1
  88. package/components/DataGrid/useLogic/useLogic.js +20 -7
  89. package/components/DataGridActionCell/DataGridMainActions/Action/MainIconButton/MainIconButton.js +4 -2
  90. package/components/DataGridActionCell/DataGridMainActions/Action/MobileMainButton/MobileMainButton.js +4 -2
  91. package/components/DataGridActionCell/types.d.ts +4 -0
  92. package/components/DataGridCollapsibleRow/DataGridCollapsibleRow.d.ts +2 -0
  93. package/components/DataGridCollapsibleRow/DataGridCollapsibleRow.js +29 -0
  94. package/components/DataGridCollapsibleRow/constants.d.ts +11 -0
  95. package/components/DataGridCollapsibleRow/constants.js +12 -0
  96. package/components/DataGridCollapsibleRow/index.d.ts +2 -0
  97. package/components/DataGridCollapsibleRow/index.js +1 -0
  98. package/components/DataGridCollapsibleRow/public.d.ts +2 -0
  99. package/components/DataGridCollapsibleRow/public.js +1 -0
  100. package/components/DataGridCollapsibleRow/styles.d.ts +42 -0
  101. package/components/DataGridCollapsibleRow/styles.js +99 -0
  102. package/components/DataGridCollapsibleRow/types.d.ts +19 -0
  103. package/components/DataGridCollapsibleRow/types.js +1 -0
  104. package/components/DataGridCollapsibleRow/useLogic/index.js +1 -0
  105. package/components/DataGridCollapsibleRow/useLogic/useLogic.d.ts +29 -0
  106. package/components/DataGridCollapsibleRow/useLogic/useLogic.js +62 -0
  107. package/components/DataGridInfinite/DataGridInfinite.js +37 -27
  108. package/components/DataGridInfinite/DataGridInfiniteContext/DataGridInfiniteContext.d.ts +23 -0
  109. package/components/DataGridInfinite/DataGridInfiniteContext/DataGridInfiniteContext.js +21 -0
  110. package/components/DataGridInfinite/DataGridInfiniteContext/DataGridInfiniteContextProvider/DataGridInfiniteContextProvider.d.ts +7 -0
  111. package/components/DataGridInfinite/DataGridInfiniteContext/DataGridInfiniteContextProvider/DataGridInfiniteContextProvider.js +5 -0
  112. package/components/DataGridInfinite/DataGridInfiniteContext/DataGridInfiniteContextProvider/index.d.ts +1 -0
  113. package/components/DataGridInfinite/DataGridInfiniteContext/DataGridInfiniteContextProvider/index.js +1 -0
  114. package/components/DataGridInfinite/DataGridInfiniteContext/index.d.ts +2 -0
  115. package/components/DataGridInfinite/DataGridInfiniteContext/index.js +2 -0
  116. package/components/DataGridInfinite/List/List.js +2 -1
  117. package/components/DataGridInfinite/List/constants.d.ts +3 -0
  118. package/components/DataGridInfinite/List/constants.js +4 -0
  119. package/components/DataGridInfinite/List/index.d.ts +1 -0
  120. package/components/DataGridInfinite/List/index.js +1 -0
  121. package/components/DataGridInfinite/Row/Row.d.ts +2 -0
  122. package/components/DataGridInfinite/Row/Row.js +10 -0
  123. package/components/DataGridInfinite/Row/index.d.ts +1 -0
  124. package/components/DataGridInfinite/Row/index.js +1 -0
  125. package/components/DataGridInfinite/Row/types.d.ts +2 -0
  126. package/components/DataGridInfinite/Row/types.js +1 -0
  127. package/components/DataGridInfinite/Row/useLogic/index.d.ts +1 -0
  128. package/components/DataGridInfinite/Row/useLogic/index.js +1 -0
  129. package/components/DataGridInfinite/Row/useLogic/useLogic.d.ts +33 -0
  130. package/components/DataGridInfinite/Row/useLogic/useLogic.js +35 -0
  131. package/components/DataGridInfinite/faker.js +1 -1
  132. package/components/DataGridInfinite/styles.d.ts +6 -0
  133. package/components/DataGridInfinite/styles.js +11 -0
  134. package/components/DataGridInfinite/useLogic/useLogic.d.ts +6 -3
  135. package/components/DataGridInfinite/useLogic/useLogic.js +29 -10
  136. package/components/DialogActions/styles.js +2 -0
  137. package/components/DonutChart/DonutChart.d.ts +2 -0
  138. package/components/DonutChart/DonutChart.js +9 -0
  139. package/components/DonutChart/constants.d.ts +15 -0
  140. package/components/DonutChart/constants.js +16 -0
  141. package/components/DonutChart/index.d.ts +3 -0
  142. package/components/DonutChart/index.js +2 -0
  143. package/components/DonutChart/public.d.ts +3 -0
  144. package/components/DonutChart/public.js +2 -0
  145. package/components/DonutChart/styles.d.ts +21 -0
  146. package/components/DonutChart/styles.js +41 -0
  147. package/components/DonutChart/types.d.ts +27 -0
  148. package/components/DonutChart/types.js +1 -0
  149. package/components/DonutChart/useLogic/hooks/index.d.ts +1 -0
  150. package/components/DonutChart/useLogic/hooks/index.js +1 -0
  151. package/components/DonutChart/useLogic/hooks/useRenderWidth/index.d.ts +1 -0
  152. package/components/DonutChart/useLogic/hooks/useRenderWidth/index.js +1 -0
  153. package/components/DonutChart/useLogic/hooks/useRenderWidth/useRenderWidth.d.ts +9 -0
  154. package/components/DonutChart/useLogic/hooks/useRenderWidth/useRenderWidth.js +30 -0
  155. package/components/DonutChart/useLogic/index.d.ts +1 -0
  156. package/components/DonutChart/useLogic/index.js +1 -0
  157. package/components/DonutChart/useLogic/useLogic.d.ts +15 -0
  158. package/components/DonutChart/useLogic/useLogic.js +40 -0
  159. package/components/DonutChart/useLogic/utils/getDonutChartCssVars/getDonutChartCssVars.d.ts +16 -0
  160. package/components/DonutChart/useLogic/utils/getDonutChartCssVars/getDonutChartCssVars.js +10 -0
  161. package/components/DonutChart/useLogic/utils/getDonutChartCssVars/index.d.ts +1 -0
  162. package/components/DonutChart/useLogic/utils/getDonutChartCssVars/index.js +1 -0
  163. package/components/DonutChart/useLogic/utils/getGeometry/getGeometry.d.ts +10 -0
  164. package/components/DonutChart/useLogic/utils/getGeometry/getGeometry.js +13 -0
  165. package/components/DonutChart/useLogic/utils/getGeometry/index.d.ts +1 -0
  166. package/components/DonutChart/useLogic/utils/getGeometry/index.js +1 -0
  167. package/components/DonutChart/useLogic/utils/getMeterAriaValue/getMeterAriaValue.d.ts +13 -0
  168. package/components/DonutChart/useLogic/utils/getMeterAriaValue/getMeterAriaValue.js +22 -0
  169. package/components/DonutChart/useLogic/utils/getMeterAriaValue/index.d.ts +1 -0
  170. package/components/DonutChart/useLogic/utils/getMeterAriaValue/index.js +1 -0
  171. package/components/DonutChart/useLogic/utils/getProgressCirclePath/getProgressCirclePath.d.ts +9 -0
  172. package/components/DonutChart/useLogic/utils/getProgressCirclePath/getProgressCirclePath.js +29 -0
  173. package/components/DonutChart/useLogic/utils/getProgressCirclePath/index.d.ts +1 -0
  174. package/components/DonutChart/useLogic/utils/getProgressCirclePath/index.js +1 -0
  175. package/components/DonutChart/useLogic/utils/getProgressOffset/getProgressOffset.d.ts +8 -0
  176. package/components/DonutChart/useLogic/utils/getProgressOffset/getProgressOffset.js +21 -0
  177. package/components/DonutChart/useLogic/utils/getProgressOffset/index.d.ts +1 -0
  178. package/components/DonutChart/useLogic/utils/getProgressOffset/index.js +1 -0
  179. package/components/DonutChart/useLogic/utils/getProgressPercent/getProgressPercent.d.ts +8 -0
  180. package/components/DonutChart/useLogic/utils/getProgressPercent/getProgressPercent.js +16 -0
  181. package/components/DonutChart/useLogic/utils/getProgressPercent/index.d.ts +1 -0
  182. package/components/DonutChart/useLogic/utils/getProgressPercent/index.js +1 -0
  183. package/components/DonutChart/useLogic/utils/index.d.ts +6 -0
  184. package/components/DonutChart/useLogic/utils/index.js +6 -0
  185. package/components/ExpansionPanel/Summary/styles.d.ts +1 -1
  186. package/components/MenuOrganization/OrganizationButton/styles.d.ts +1 -1
  187. package/components/NewStepper/StepIcon/StepIcon.js +3 -1
  188. package/components/NewStepper/StepIcon/useLogic/index.d.ts +1 -0
  189. package/components/NewStepper/StepIcon/useLogic/index.js +1 -0
  190. package/components/NewStepper/StepIcon/useLogic/useLogic.d.ts +8 -0
  191. package/components/NewStepper/StepIcon/useLogic/useLogic.js +6 -0
  192. package/components/PageContent/PageContent.js +23 -5
  193. package/components/PageContent/constants.d.ts +2 -0
  194. package/components/PageContent/constants.js +2 -0
  195. package/components/PageContent/styles.d.ts +0 -2
  196. package/components/PageContent/styles.js +17 -11
  197. package/components/PageContent/types.d.ts +4 -0
  198. package/components/Profile/styles.d.ts +1 -1
  199. package/components/constants/classnames.d.ts +1 -0
  200. package/components/constants/classnames.js +2 -0
  201. package/components/constants/index.d.ts +1 -0
  202. package/components/constants/index.js +1 -0
  203. package/components/fileUploading/FileUploaderDropzone/HintPlaceholder/HintPlaceholder.d.ts +2 -1
  204. package/components/fileUploading/FileUploaderDropzone/HintPlaceholder/HintPlaceholder.js +4 -1
  205. package/components/fileUploading/FileUploaderDropzone/HintPlaceholder/useLogic/useLogic.d.ts +5 -4
  206. package/components/fileUploading/PreviewFileUploaderDropZone/HintPlaceholder/HintPlaceholder.js +11 -2
  207. package/components/fileUploading/PreviewFileUploaderDropZone/HintPlaceholder/useLogic/useLogic.d.ts +5 -5
  208. package/components/fileUploading/hooks/useFileUploader/useFileUploader.d.ts +1 -1
  209. package/components/fileUploading/hooks/usePreviewFileUploader/usePreviewFileUploader.d.ts +1 -1
  210. package/components/fileUploading/types.d.ts +2 -2
  211. package/components/useProfiler/index.d.ts +1 -0
  212. package/components/useProfiler/index.js +1 -0
  213. package/components/useProfiler/useProfiler.d.ts +14 -0
  214. package/components/useProfiler/useProfiler.js +46 -0
  215. package/components/useProfiler/utils/index.d.ts +1 -0
  216. package/components/useProfiler/utils/index.js +1 -0
  217. package/components/useProfiler/utils/shallowEqual/index.d.ts +1 -0
  218. package/components/useProfiler/utils/shallowEqual/index.js +1 -0
  219. package/components/useProfiler/utils/shallowEqual/shallowEqual.d.ts +5 -0
  220. package/components/useProfiler/utils/shallowEqual/shallowEqual.js +26 -0
  221. package/hook-form/FormFilters/FormFilters.js +1 -1
  222. package/hook-form/FormFilters/FormFiltersSkeleton/FormFiltersSkeleton.d.ts +5 -1
  223. package/hook-form/FormFilters/FormFiltersSkeleton/FormFiltersSkeleton.js +4 -3
  224. package/hook-form/FormFilters/FormQuickFiltersSkeleton/FormQuickFiltersSkeleton.d.ts +1 -0
  225. package/hook-form/FormFilters/FormQuickFiltersSkeleton/FormQuickFiltersSkeleton.js +9 -0
  226. package/hook-form/FormFilters/FormQuickFiltersSkeleton/index.d.ts +1 -0
  227. package/hook-form/FormFilters/FormQuickFiltersSkeleton/index.js +1 -0
  228. package/hook-form/FormFilters/FormQuickFiltersSkeleton/styles.d.ts +5 -0
  229. package/hook-form/FormFilters/FormQuickFiltersSkeleton/styles.js +5 -0
  230. package/node/components/CardGridInfinite/CardGridInfinite.js +13 -4
  231. package/node/components/CardGridInfinite/styles.js +4 -0
  232. package/node/components/CardGridInfinite/useLogic/useLogic.d.ts +1 -1
  233. package/node/components/CardGridInfinite/useLogic/useLogic.js +1 -11
  234. package/node/components/Chevron/Chevron.d.ts +1 -1
  235. package/node/components/ConfirmAction/ConfirmAction.js +2 -2
  236. package/node/components/ConfirmAction/constants.d.ts +1 -0
  237. package/node/components/ConfirmAction/constants.js +2 -1
  238. package/node/components/ConfirmAction/styles.js +13 -0
  239. package/node/components/ConfirmAction/types.d.ts +1 -1
  240. package/node/components/DataGrid/Body/Body.d.ts +1 -1
  241. package/node/components/DataGrid/Body/Body.js +5 -3
  242. package/node/components/DataGrid/Body/types.d.ts +5 -0
  243. package/node/components/DataGrid/Cell/Cell.d.ts +9 -1
  244. package/node/components/DataGrid/Cell/Cell.js +16 -2
  245. package/node/components/DataGrid/CustomRowWrapper/CustomRowWrapper.d.ts +19 -0
  246. package/node/components/DataGrid/CustomRowWrapper/CustomRowWrapper.js +18 -0
  247. package/node/components/DataGrid/CustomRowWrapper/index.d.ts +1 -0
  248. package/node/components/DataGrid/CustomRowWrapper/index.js +5 -0
  249. package/node/components/DataGrid/DataGrid.js +27 -16
  250. package/node/components/DataGrid/DataGridContext/DataGridContext.d.ts +9 -5
  251. package/node/components/DataGrid/DataGridContext/DataGridContext.js +7 -4
  252. package/node/components/DataGrid/DataGridContext/DataGridProvider/DataGridProvider.d.ts +3 -4
  253. package/node/components/DataGrid/DataGridContext/DataGridProvider/DataGridProvider.js +17 -47
  254. package/node/components/DataGrid/DataGridStorageContext/DataGridStorageContext.d.ts +29 -0
  255. package/node/components/DataGrid/DataGridStorageContext/DataGridStorageContext.js +31 -0
  256. package/node/components/DataGrid/DataGridStorageContext/DataGridStorageProvider/DataGridStorageProvider.d.ts +6 -0
  257. package/node/components/DataGrid/DataGridStorageContext/DataGridStorageProvider/DataGridStorageProvider.js +16 -0
  258. package/node/components/DataGrid/DataGridStorageContext/DataGridStorageProvider/index.d.ts +1 -0
  259. package/node/components/DataGrid/DataGridStorageContext/DataGridStorageProvider/index.js +17 -0
  260. package/node/components/DataGrid/DataGridStorageContext/index.d.ts +2 -0
  261. package/node/components/DataGrid/DataGridStorageContext/index.js +18 -0
  262. package/node/components/DataGrid/MobileSkeleton/MobileSkeleton.d.ts +2 -1
  263. package/node/components/DataGrid/MobileSkeleton/MobileSkeleton.js +21 -3
  264. package/node/components/DataGrid/MobileSkeleton/styles.js +12 -0
  265. package/node/components/DataGrid/Row/NestedChildren/NestedChildren.d.ts +1 -5
  266. package/node/components/DataGrid/Row/NestedChildren/NestedChildren.js +18 -7
  267. package/node/components/DataGrid/Row/NestedChildren/constants.d.ts +6 -0
  268. package/node/components/DataGrid/Row/NestedChildren/constants.js +10 -0
  269. package/node/components/DataGrid/Row/NestedChildren/styles.js +41 -2
  270. package/node/components/DataGrid/Row/NestedChildren/useLogic/useLogic.d.ts +1 -1
  271. package/node/components/DataGrid/Row/NestedChildren/useLogic/useLogic.js +3 -5
  272. package/node/components/DataGrid/Row/Row.js +33 -36
  273. package/node/components/DataGrid/Row/RowContext/RowContext.d.ts +10 -1
  274. package/node/components/DataGrid/Row/RowContext/RowContext.js +9 -0
  275. package/node/components/DataGrid/Row/RowContext/RowProvider/RowProvider.d.ts +3 -2
  276. package/node/components/DataGrid/Row/RowContext/RowProvider/RowProvider.js +25 -2
  277. package/node/components/DataGrid/Row/constants.d.ts +6 -0
  278. package/node/components/DataGrid/Row/constants.js +6 -0
  279. package/node/components/DataGrid/Row/styles.js +99 -0
  280. package/node/components/DataGrid/Row/useLogic/hooks/useMobileLogic.d.ts +1 -0
  281. package/node/components/DataGrid/Row/useLogic/hooks/useMobileLogic.js +1 -1
  282. package/node/components/DataGrid/Row/useLogic/useLogic.d.ts +5 -2
  283. package/node/components/DataGrid/Row/useLogic/useLogic.js +20 -18
  284. package/node/components/DataGrid/RowBase/GroupCell/GroupCell.d.ts +2 -0
  285. package/node/components/DataGrid/RowBase/GroupCell/GroupCell.js +26 -0
  286. package/node/components/DataGrid/RowBase/GroupCell/constants.d.ts +4 -0
  287. package/node/components/DataGrid/RowBase/GroupCell/constants.js +8 -0
  288. package/node/components/DataGrid/RowBase/GroupCell/index.d.ts +1 -0
  289. package/node/components/DataGrid/RowBase/GroupCell/index.js +5 -0
  290. package/node/components/DataGrid/RowBase/GroupCell/styles.d.ts +12 -0
  291. package/node/components/DataGrid/RowBase/GroupCell/styles.js +19 -0
  292. package/node/components/DataGrid/RowBase/GroupCell/types.d.ts +11 -0
  293. package/node/components/DataGrid/RowBase/GroupCell/types.js +2 -0
  294. package/node/components/DataGrid/RowBase/RowBase.d.ts +3 -0
  295. package/node/components/DataGrid/RowBase/RowBase.js +72 -0
  296. package/node/components/DataGrid/RowBase/constants.d.ts +9 -0
  297. package/node/components/DataGrid/RowBase/constants.js +13 -0
  298. package/node/components/DataGrid/RowBase/index.d.ts +3 -0
  299. package/node/components/DataGrid/RowBase/index.js +7 -0
  300. package/node/components/DataGrid/RowBase/styles.d.ts +17 -0
  301. package/node/components/DataGrid/RowBase/styles.js +90 -0
  302. package/node/components/DataGrid/RowBase/types.d.ts +92 -0
  303. package/node/components/DataGrid/RowBase/types.js +2 -0
  304. package/node/components/DataGrid/RowBase/useLogic/index.d.ts +1 -0
  305. package/node/components/DataGrid/RowBase/useLogic/useLogic.d.ts +46 -0
  306. package/node/components/DataGrid/RowBase/useLogic/useLogic.js +94 -0
  307. package/node/components/DataGrid/constants.d.ts +8 -0
  308. package/node/components/DataGrid/constants.js +9 -1
  309. package/node/components/DataGrid/index.d.ts +3 -0
  310. package/node/components/DataGrid/index.js +7 -1
  311. package/node/components/DataGrid/styles.js +40 -26
  312. package/node/components/DataGrid/tests/performance/testDataGridPerformance.d.ts +21 -0
  313. package/node/components/DataGrid/tests/performance/testDataGridPerformance.js +106 -0
  314. package/node/components/DataGrid/types.d.ts +11 -0
  315. package/node/components/DataGrid/useLogic/hooks/useDataGridMobileLogic/useDataGridMobileLogic.d.ts +3 -1
  316. package/node/components/DataGrid/useLogic/hooks/useDataGridMobileLogic/useDataGridMobileLogic.js +2 -1
  317. package/node/components/DataGrid/useLogic/useLogic.d.ts +4 -1
  318. package/node/components/DataGrid/useLogic/useLogic.js +19 -6
  319. package/node/components/DataGridActionCell/DataGridMainActions/Action/MainIconButton/MainIconButton.js +4 -2
  320. package/node/components/DataGridActionCell/DataGridMainActions/Action/MobileMainButton/MobileMainButton.js +4 -2
  321. package/node/components/DataGridActionCell/types.d.ts +4 -0
  322. package/node/components/DataGridCollapsibleRow/DataGridCollapsibleRow.d.ts +2 -0
  323. package/node/components/DataGridCollapsibleRow/DataGridCollapsibleRow.js +33 -0
  324. package/node/components/DataGridCollapsibleRow/constants.d.ts +11 -0
  325. package/node/components/DataGridCollapsibleRow/constants.js +15 -0
  326. package/node/components/DataGridCollapsibleRow/index.d.ts +2 -0
  327. package/node/components/DataGridCollapsibleRow/index.js +5 -0
  328. package/node/components/DataGridCollapsibleRow/public.d.ts +2 -0
  329. package/node/components/DataGridCollapsibleRow/public.js +5 -0
  330. package/node/components/DataGridCollapsibleRow/styles.d.ts +42 -0
  331. package/node/components/DataGridCollapsibleRow/styles.js +102 -0
  332. package/node/components/DataGridCollapsibleRow/types.d.ts +19 -0
  333. package/node/components/DataGridCollapsibleRow/types.js +2 -0
  334. package/node/components/DataGridCollapsibleRow/useLogic/index.d.ts +1 -0
  335. package/node/components/DataGridCollapsibleRow/useLogic/index.js +17 -0
  336. package/node/components/DataGridCollapsibleRow/useLogic/useLogic.d.ts +29 -0
  337. package/node/components/DataGridCollapsibleRow/useLogic/useLogic.js +66 -0
  338. package/node/components/DataGridInfinite/DataGridInfinite.js +45 -35
  339. package/node/components/DataGridInfinite/DataGridInfiniteContext/DataGridInfiniteContext.d.ts +23 -0
  340. package/node/components/DataGridInfinite/DataGridInfiniteContext/DataGridInfiniteContext.js +24 -0
  341. package/node/components/DataGridInfinite/DataGridInfiniteContext/DataGridInfiniteContextProvider/DataGridInfiniteContextProvider.d.ts +7 -0
  342. package/node/components/DataGridInfinite/DataGridInfiniteContext/DataGridInfiniteContextProvider/DataGridInfiniteContextProvider.js +9 -0
  343. package/node/components/DataGridInfinite/DataGridInfiniteContext/DataGridInfiniteContextProvider/index.d.ts +1 -0
  344. package/node/components/DataGridInfinite/DataGridInfiniteContext/DataGridInfiniteContextProvider/index.js +17 -0
  345. package/node/components/DataGridInfinite/DataGridInfiniteContext/index.d.ts +2 -0
  346. package/node/components/DataGridInfinite/DataGridInfiniteContext/index.js +18 -0
  347. package/node/components/DataGridInfinite/List/List.js +2 -1
  348. package/node/components/DataGridInfinite/List/constants.d.ts +3 -0
  349. package/node/components/DataGridInfinite/List/constants.js +7 -0
  350. package/node/components/DataGridInfinite/List/index.d.ts +1 -0
  351. package/node/components/DataGridInfinite/List/index.js +3 -0
  352. package/node/components/DataGridInfinite/Row/Row.d.ts +2 -0
  353. package/node/components/DataGridInfinite/Row/Row.js +14 -0
  354. package/node/components/DataGridInfinite/Row/index.d.ts +1 -0
  355. package/node/components/DataGridInfinite/Row/index.js +17 -0
  356. package/node/components/DataGridInfinite/Row/types.d.ts +2 -0
  357. package/node/components/DataGridInfinite/Row/types.js +2 -0
  358. package/node/components/DataGridInfinite/Row/useLogic/index.d.ts +1 -0
  359. package/node/components/DataGridInfinite/Row/useLogic/index.js +17 -0
  360. package/node/components/DataGridInfinite/Row/useLogic/useLogic.d.ts +33 -0
  361. package/node/components/DataGridInfinite/Row/useLogic/useLogic.js +39 -0
  362. package/node/components/DataGridInfinite/faker.js +1 -1
  363. package/node/components/DataGridInfinite/styles.d.ts +6 -0
  364. package/node/components/DataGridInfinite/styles.js +12 -1
  365. package/node/components/DataGridInfinite/useLogic/useLogic.d.ts +6 -3
  366. package/node/components/DataGridInfinite/useLogic/useLogic.js +33 -14
  367. package/node/components/DialogActions/styles.js +2 -0
  368. package/node/components/DonutChart/DonutChart.d.ts +2 -0
  369. package/node/components/DonutChart/DonutChart.js +13 -0
  370. package/node/components/DonutChart/constants.d.ts +15 -0
  371. package/node/components/DonutChart/constants.js +19 -0
  372. package/node/components/DonutChart/index.d.ts +3 -0
  373. package/node/components/DonutChart/index.js +7 -0
  374. package/node/components/DonutChart/public.d.ts +3 -0
  375. package/node/components/DonutChart/public.js +7 -0
  376. package/node/components/DonutChart/styles.d.ts +21 -0
  377. package/node/components/DonutChart/styles.js +44 -0
  378. package/node/components/DonutChart/types.d.ts +27 -0
  379. package/node/components/DonutChart/types.js +2 -0
  380. package/node/components/DonutChart/useLogic/hooks/index.d.ts +1 -0
  381. package/node/components/DonutChart/useLogic/hooks/index.js +17 -0
  382. package/node/components/DonutChart/useLogic/hooks/useRenderWidth/index.d.ts +1 -0
  383. package/node/components/DonutChart/useLogic/hooks/useRenderWidth/index.js +17 -0
  384. package/node/components/DonutChart/useLogic/hooks/useRenderWidth/useRenderWidth.d.ts +9 -0
  385. package/node/components/DonutChart/useLogic/hooks/useRenderWidth/useRenderWidth.js +34 -0
  386. package/node/components/DonutChart/useLogic/index.d.ts +1 -0
  387. package/node/components/DonutChart/useLogic/index.js +17 -0
  388. package/node/components/DonutChart/useLogic/useLogic.d.ts +15 -0
  389. package/node/components/DonutChart/useLogic/useLogic.js +44 -0
  390. package/node/components/DonutChart/useLogic/utils/getDonutChartCssVars/getDonutChartCssVars.d.ts +16 -0
  391. package/node/components/DonutChart/useLogic/utils/getDonutChartCssVars/getDonutChartCssVars.js +14 -0
  392. package/node/components/DonutChart/useLogic/utils/getDonutChartCssVars/index.d.ts +1 -0
  393. package/node/components/DonutChart/useLogic/utils/getDonutChartCssVars/index.js +5 -0
  394. package/node/components/DonutChart/useLogic/utils/getGeometry/getGeometry.d.ts +10 -0
  395. package/node/components/DonutChart/useLogic/utils/getGeometry/getGeometry.js +17 -0
  396. package/node/components/DonutChart/useLogic/utils/getGeometry/index.d.ts +1 -0
  397. package/node/components/DonutChart/useLogic/utils/getGeometry/index.js +5 -0
  398. package/node/components/DonutChart/useLogic/utils/getMeterAriaValue/getMeterAriaValue.d.ts +13 -0
  399. package/node/components/DonutChart/useLogic/utils/getMeterAriaValue/getMeterAriaValue.js +26 -0
  400. package/node/components/DonutChart/useLogic/utils/getMeterAriaValue/index.d.ts +1 -0
  401. package/node/components/DonutChart/useLogic/utils/getMeterAriaValue/index.js +5 -0
  402. package/node/components/DonutChart/useLogic/utils/getProgressCirclePath/getProgressCirclePath.d.ts +9 -0
  403. package/node/components/DonutChart/useLogic/utils/getProgressCirclePath/getProgressCirclePath.js +33 -0
  404. package/node/components/DonutChart/useLogic/utils/getProgressCirclePath/index.d.ts +1 -0
  405. package/node/components/DonutChart/useLogic/utils/getProgressCirclePath/index.js +5 -0
  406. package/node/components/DonutChart/useLogic/utils/getProgressOffset/getProgressOffset.d.ts +8 -0
  407. package/node/components/DonutChart/useLogic/utils/getProgressOffset/getProgressOffset.js +25 -0
  408. package/node/components/DonutChart/useLogic/utils/getProgressOffset/index.d.ts +1 -0
  409. package/node/components/DonutChart/useLogic/utils/getProgressOffset/index.js +5 -0
  410. package/node/components/DonutChart/useLogic/utils/getProgressPercent/getProgressPercent.d.ts +8 -0
  411. package/node/components/DonutChart/useLogic/utils/getProgressPercent/getProgressPercent.js +20 -0
  412. package/node/components/DonutChart/useLogic/utils/getProgressPercent/index.d.ts +1 -0
  413. package/node/components/DonutChart/useLogic/utils/getProgressPercent/index.js +5 -0
  414. package/node/components/DonutChart/useLogic/utils/index.d.ts +6 -0
  415. package/node/components/DonutChart/useLogic/utils/index.js +15 -0
  416. package/node/components/ExpansionPanel/Summary/styles.d.ts +1 -1
  417. package/node/components/MenuOrganization/OrganizationButton/styles.d.ts +1 -1
  418. package/node/components/NewStepper/StepIcon/StepIcon.js +3 -1
  419. package/node/components/NewStepper/StepIcon/useLogic/index.d.ts +1 -0
  420. package/node/components/NewStepper/StepIcon/useLogic/index.js +17 -0
  421. package/node/components/NewStepper/StepIcon/useLogic/useLogic.d.ts +8 -0
  422. package/node/components/NewStepper/StepIcon/useLogic/useLogic.js +10 -0
  423. package/node/components/PageContent/PageContent.js +22 -4
  424. package/node/components/PageContent/constants.d.ts +2 -0
  425. package/node/components/PageContent/constants.js +2 -0
  426. package/node/components/PageContent/styles.d.ts +0 -2
  427. package/node/components/PageContent/styles.js +17 -11
  428. package/node/components/PageContent/types.d.ts +4 -0
  429. package/node/components/Profile/styles.d.ts +1 -1
  430. package/node/components/constants/classnames.d.ts +1 -0
  431. package/node/components/constants/classnames.js +5 -0
  432. package/node/components/constants/index.d.ts +1 -0
  433. package/node/components/constants/index.js +1 -0
  434. package/node/components/fileUploading/FileUploaderDropzone/HintPlaceholder/HintPlaceholder.d.ts +2 -1
  435. package/node/components/fileUploading/FileUploaderDropzone/HintPlaceholder/HintPlaceholder.js +4 -1
  436. package/node/components/fileUploading/FileUploaderDropzone/HintPlaceholder/useLogic/useLogic.d.ts +5 -4
  437. package/node/components/fileUploading/PreviewFileUploaderDropZone/HintPlaceholder/HintPlaceholder.js +10 -1
  438. package/node/components/fileUploading/PreviewFileUploaderDropZone/HintPlaceholder/useLogic/useLogic.d.ts +5 -5
  439. package/node/components/fileUploading/hooks/useFileUploader/useFileUploader.d.ts +1 -1
  440. package/node/components/fileUploading/hooks/usePreviewFileUploader/usePreviewFileUploader.d.ts +1 -1
  441. package/node/components/fileUploading/types.d.ts +2 -2
  442. package/node/components/useProfiler/index.d.ts +1 -0
  443. package/node/components/useProfiler/index.js +5 -0
  444. package/node/components/useProfiler/useProfiler.d.ts +14 -0
  445. package/node/components/useProfiler/useProfiler.js +50 -0
  446. package/node/components/useProfiler/utils/index.d.ts +1 -0
  447. package/node/components/useProfiler/utils/index.js +17 -0
  448. package/node/components/useProfiler/utils/shallowEqual/index.d.ts +1 -0
  449. package/node/components/useProfiler/utils/shallowEqual/index.js +6 -0
  450. package/node/components/useProfiler/utils/shallowEqual/shallowEqual.d.ts +5 -0
  451. package/node/components/useProfiler/utils/shallowEqual/shallowEqual.js +31 -0
  452. package/node/hook-form/FormFilters/FormFilters.js +1 -1
  453. package/node/hook-form/FormFilters/FormFiltersSkeleton/FormFiltersSkeleton.d.ts +5 -1
  454. package/node/hook-form/FormFilters/FormFiltersSkeleton/FormFiltersSkeleton.js +3 -2
  455. package/node/hook-form/FormFilters/FormQuickFiltersSkeleton/FormQuickFiltersSkeleton.d.ts +1 -0
  456. package/node/hook-form/FormFilters/FormQuickFiltersSkeleton/FormQuickFiltersSkeleton.js +13 -0
  457. package/node/hook-form/FormFilters/FormQuickFiltersSkeleton/index.d.ts +1 -0
  458. package/node/hook-form/FormFilters/FormQuickFiltersSkeleton/index.js +17 -0
  459. package/node/hook-form/FormFilters/FormQuickFiltersSkeleton/styles.d.ts +5 -0
  460. package/node/hook-form/FormFilters/FormQuickFiltersSkeleton/styles.js +8 -0
  461. package/package.json +1 -1
  462. package/components/PageContent/useLogic/useLogic.d.ts +0 -7
  463. package/components/PageContent/useLogic/useLogic.js +0 -11
  464. package/node/components/PageContent/useLogic/useLogic.d.ts +0 -7
  465. package/node/components/PageContent/useLogic/useLogic.js +0 -15
  466. /package/components/{PageContent → DataGrid/RowBase}/useLogic/index.d.ts +0 -0
  467. /package/components/{PageContent → DataGrid/RowBase}/useLogic/index.js +0 -0
  468. /package/{node/components/PageContent → components/DataGridCollapsibleRow}/useLogic/index.d.ts +0 -0
  469. /package/node/components/{PageContent → DataGrid/RowBase}/useLogic/index.js +0 -0
@@ -2,7 +2,7 @@ import { type MouseEvent, type SyntheticEvent } from 'react';
2
2
  import type { CellValue } from '../../types';
3
3
  import type { RowProps } from '../types';
4
4
  type UseLogicParams<TData extends Record<string, CellValue>> = RowProps<TData>;
5
- export declare const useLogic: <TData extends Record<string, unknown>>({ keyId, columns, row, nestedChildren, level, variant, options, isInitialExpanded, expandedLevel, isSelectable, selectedRows, onSelectRow, onRowClick, isVisibleCollapseButton, registerRowElement, unregisterRowElement, style, activeRowId, }: UseLogicParams<TData>) => {
5
+ export declare const useLogic: <TData extends Record<string, unknown>>({ keyId, columns, row, nestedChildren, level, variant, options, isInitialExpanded, expandedLevel, isSelectable, isSelected, onSelectRow, onRowClick, isVisibleCollapseButton, registerRowElement, unregisterRowElement, style, activeRowId, }: UseLogicParams<TData>) => {
6
6
  disabledReasonText: string | undefined;
7
7
  rowStyles: {
8
8
  accentColor?: import("csstype").Property.AccentColor | undefined;
@@ -870,10 +870,14 @@ export declare const useLogic: <TData extends Record<string, unknown>>({ keyId,
870
870
  rowId: string;
871
871
  rowRef: (element: HTMLElement | null) => void;
872
872
  disabled: boolean | undefined;
873
+ isSelectable: boolean | undefined;
873
874
  isRenderCollapseButton: boolean;
874
875
  handleToggle: (event: MouseEvent<HTMLButtonElement>) => void;
876
+ rootRowElement: HTMLLIElement | null;
877
+ rootRowRef: (element: HTMLLIElement | null) => void;
875
878
  isHovered: boolean;
876
879
  isActive: boolean;
880
+ mobileDisplayVariant: "list" | "cards" | undefined;
877
881
  rowProps: {
878
882
  onClick: () => void;
879
883
  onMouseMove: (event: MouseEvent<HTMLElement>) => void;
@@ -896,7 +900,6 @@ export declare const useLogic: <TData extends Record<string, unknown>>({ keyId,
896
900
  };
897
901
  nestedChildrenProps: {
898
902
  isOpen: boolean;
899
- rowId: string;
900
903
  };
901
904
  };
902
905
  export {};
@@ -1,4 +1,4 @@
1
- import { useContext, useEffect, useMemo, useRef, useState, } from 'react';
1
+ import { useCallback, useContext, useMemo, useRef, useState, } from 'react';
2
2
  import { redirectToLink } from '../../../utils/redirectToLink';
3
3
  import { DataGridContext } from '../../DataGridContext';
4
4
  import { Variant } from '../../enums';
@@ -6,11 +6,18 @@ import { DISABLE_ROW_ATTR } from '../constants';
6
6
  import { RowContext } from '../RowContext';
7
7
  import { useMobileLogic } from './hooks';
8
8
  import { mergeColumnsOptions } from './utils';
9
- export const useLogic = ({ keyId, columns, row, nestedChildren, level, variant, options, isInitialExpanded = false, expandedLevel, isSelectable, selectedRows, onSelectRow, onRowClick, isVisibleCollapseButton, registerRowElement, unregisterRowElement, style, activeRowId, }) => {
9
+ export const useLogic = ({ keyId, columns, row, nestedChildren, level, variant, options, isInitialExpanded = false, expandedLevel, isSelectable, isSelected, onSelectRow, onRowClick, isVisibleCollapseButton, registerRowElement, unregisterRowElement, style, activeRowId, }) => {
10
10
  const { isDrawerOpen, handleOpenDrawer, handleCloseDrawer } = useMobileLogic();
11
- const isDefaultExpanded = isInitialExpanded && level <= expandedLevel - 1 && nestedChildren?.length;
12
- const { checkIsOpened, toggleOpenItems } = useContext(DataGridContext);
11
+ const [rootRowElement, setRootRowElement] = useState(null);
12
+ const rootRowRef = useCallback((element) => {
13
+ if (element) {
14
+ setRootRowElement(element);
15
+ }
16
+ }, []);
17
+ const isDefaultExpanded = Boolean(isInitialExpanded && level <= expandedLevel - 1 && nestedChildren?.length);
18
+ const { mobileDisplayVariant } = useContext(DataGridContext);
13
19
  const { isDisabled, disabledReason } = useContext(RowContext);
20
+ const [isOpen, setIsOpen] = useState(isDefaultExpanded);
14
21
  const savedElementRef = useRef(null);
15
22
  const rowRef = (element) => {
16
23
  if (element) {
@@ -26,7 +33,6 @@ export const useLogic = ({ keyId, columns, row, nestedChildren, level, variant,
26
33
  const rowId = row[keyId];
27
34
  const { isDisabled: isExternalDisabled, disabledReason: externalDisabledReason, href, target, } = options || {};
28
35
  const disabled = isDisabled || isExternalDisabled;
29
- const isOpen = checkIsOpened(rowId);
30
36
  const handleRowClick = () => {
31
37
  if (disabled) {
32
38
  handleOpenDrawer();
@@ -37,20 +43,12 @@ export const useLogic = ({ keyId, columns, row, nestedChildren, level, variant,
37
43
  }
38
44
  onRowClick?.(row);
39
45
  };
40
- useEffect(() => {
41
- // Проверка на isOpen необходима для infinite версии с виртуализацией, когда происходит размонтировании компонента
42
- if (isDefaultExpanded && !isOpen) {
43
- toggleOpenItems(rowId);
44
- }
45
- }, []);
46
- const isChecked = isSelectable &&
47
- Boolean(selectedRows?.find((selectedRow) => selectedRow[keyId] === rowId));
48
46
  const isShowConnector = Object.is(variant, Variant.Tree);
49
47
  const childrenColumns = useMemo(() => mergeColumnsOptions(columns, options?.childrenColumns), [columns, options]);
50
- const handleToggle = (event) => {
48
+ const handleToggle = useCallback((event) => {
51
49
  event.stopPropagation();
52
- toggleOpenItems(rowId);
53
- };
50
+ setIsOpen((prev) => !prev);
51
+ }, []);
54
52
  const handleOpenTooltip = (event) => {
55
53
  const element = event.target;
56
54
  const isDisabledCell = element?.getAttribute(DISABLE_ROW_ATTR) === 'true';
@@ -77,6 +75,7 @@ export const useLogic = ({ keyId, columns, row, nestedChildren, level, variant,
77
75
  const isHovered = Boolean(!disabled && (onRowClick || href));
78
76
  const isActive = activeRowId === rowId;
79
77
  const disabledReasonText = externalDisabledReason || disabledReason;
78
+ const handleCheckboxChange = useMemo(() => onSelectRow(row), [onSelectRow, row]);
80
79
  return {
81
80
  disabledReasonText,
82
81
  rowStyles,
@@ -86,10 +85,14 @@ export const useLogic = ({ keyId, columns, row, nestedChildren, level, variant,
86
85
  rowId,
87
86
  rowRef,
88
87
  disabled,
88
+ isSelectable,
89
89
  isRenderCollapseButton,
90
90
  handleToggle,
91
+ rootRowElement,
92
+ rootRowRef,
91
93
  isHovered,
92
94
  isActive,
95
+ mobileDisplayVariant,
93
96
  rowProps: {
94
97
  onClick: handleRowClick,
95
98
  onMouseMove: handleMouseMove,
@@ -106,13 +109,12 @@ export const useLogic = ({ keyId, columns, row, nestedChildren, level, variant,
106
109
  onClose: handleCloseTooltip,
107
110
  },
108
111
  checkboxProps: {
109
- checked: isChecked,
112
+ checked: isSelected,
110
113
  disabled,
111
- onChange: onSelectRow(row),
114
+ onChange: handleCheckboxChange,
112
115
  },
113
116
  nestedChildrenProps: {
114
117
  isOpen,
115
- rowId,
116
118
  },
117
119
  };
118
120
  };
@@ -0,0 +1,2 @@
1
+ import { type GroupCellProps } from './types';
2
+ export declare const GroupCell: ({ cell, cellId, isFirstCell, row, emptyCellValue, isDisabled, startAdornment, }: GroupCellProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,22 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cva } from 'class-variance-authority';
3
+ import { Cell, dataGridCellClassnames } from '../../Cell';
4
+ import { dataGridGroupedColumnLabelClassnames } from './constants';
5
+ import { GroupedColumnLabel } from './styles';
6
+ const groupedColumnLabelCva = cva(dataGridGroupedColumnLabelClassnames.root, {
7
+ variants: {
8
+ hidden: {
9
+ true: dataGridGroupedColumnLabelClassnames.hidden,
10
+ },
11
+ },
12
+ });
13
+ export const GroupCell = ({ cell, cellId, isFirstCell, row, emptyCellValue, isDisabled, startAdornment, }) => {
14
+ const { label, children, hideTitleOnMobile, isHideOnMobile } = cell;
15
+ return (_jsxs(_Fragment, { children: [_jsx(GroupedColumnLabel, { variant: "caption", color: "grey", colorIntensity: "700", className: groupedColumnLabelCva({
16
+ hidden: hideTitleOnMobile || isHideOnMobile,
17
+ }), children: label }), children.map((child, childIndex) => {
18
+ const childCellId = `${cellId}-${childIndex}`;
19
+ const shouldRenderStartAdornment = isFirstCell && childIndex === 0;
20
+ return (_jsx(Cell, { row: row, cell: child, isHideOnMobile: isHideOnMobile, emptyCellValue: emptyCellValue, isDisabled: isDisabled, startAdornment: shouldRenderStartAdornment && startAdornment, isHidePersonalData: child.isHidePersonalData, className: dataGridCellClassnames.grouped }, childCellId));
21
+ })] }));
22
+ };
@@ -0,0 +1,4 @@
1
+ export declare const dataGridGroupedColumnLabelClassnames: {
2
+ root: string;
3
+ hidden: string;
4
+ };
@@ -0,0 +1,5 @@
1
+ import { createUIKitClassname } from '../../../utils/createUIKitClassname';
2
+ export const dataGridGroupedColumnLabelClassnames = {
3
+ root: createUIKitClassname('data-grid-grouped-column-label'),
4
+ hidden: createUIKitClassname('data-grid-grouped-column-label_hidden'),
5
+ };
@@ -0,0 +1 @@
1
+ export { GroupCell } from './GroupCell';
@@ -0,0 +1 @@
1
+ export { GroupCell } from './GroupCell';
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ export declare const GroupedColumnLabel: import("../../../styled").StyledComponent<import("../../../Typography/types").TypographyPropsBase & {
3
+ color?: import("../../../Typography").TypographyColor | undefined;
4
+ variant?: import("../../../Typography").TypographyVariant | undefined;
5
+ colorIntensity?: import("../../../Typography").Intensity | undefined;
6
+ component?: import("../../../Typography/types").ComponentProp | undefined;
7
+ isUpperCase?: boolean | undefined;
8
+ withoutCalt?: boolean | undefined;
9
+ isTabularNums?: boolean | undefined;
10
+ } & import("react").HTMLAttributes<HTMLParagraphElement> & import("react").RefAttributes<HTMLSpanElement> & {
11
+ theme?: import("@emotion/react").Theme | undefined;
12
+ }, {}, {}>;
@@ -0,0 +1,16 @@
1
+ import { styled } from '../../../styled';
2
+ import { Typography } from '../../../Typography';
3
+ import { dataGridGroupedColumnLabelClassnames } from './constants';
4
+ export const GroupedColumnLabel = styled(Typography) `
5
+ display: none;
6
+
7
+ ${({ theme }) => theme.breakpoints.down('sm')} {
8
+ display: block;
9
+
10
+ margin-top: ${({ theme }) => theme.spacing(3)};
11
+
12
+ &.${dataGridGroupedColumnLabelClassnames.hidden} {
13
+ display: none;
14
+ }
15
+ }
16
+ `;
@@ -0,0 +1,11 @@
1
+ import { type ReactNode } from 'react';
2
+ import { type DataGridGroupColumn, type DataGridRowWithOptions } from '../../types';
3
+ export type GroupCellProps = {
4
+ cell: DataGridGroupColumn<Record<string, unknown>>;
5
+ cellId: string;
6
+ isFirstCell?: boolean;
7
+ row: DataGridRowWithOptions<Record<string, unknown>>;
8
+ emptyCellValue?: ReactNode;
9
+ isDisabled?: boolean;
10
+ startAdornment?: ReactNode;
11
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import type { RowBaseProps } from './types';
3
+ export declare const RowBase: import("react").MemoExoticComponent<(props: RowBaseProps) => import("react/jsx-runtime").JSX.Element>;
@@ -0,0 +1,69 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { memo, useCallback } from 'react';
3
+ import { BottomDrawer } from '../../BottomDrawer';
4
+ import { Checkbox } from '../../Checkbox';
5
+ import { Tooltip } from '../../Tooltip';
6
+ import { classNames } from '../../utils/classNames';
7
+ import { cva } from '../../utils/cva';
8
+ import { getInertProps } from '../../utils/getInertProps';
9
+ import { Cell } from '../Cell';
10
+ import { DISABLE_ROW_ATTR, dataGridRowClassnames } from '../Row/constants';
11
+ import { checkIsDisabled } from '../Row/utils';
12
+ import { isGroupColumns } from '../utils';
13
+ import { dataGridRowBaseClassnames } from './constants';
14
+ import { GroupCell } from './GroupCell';
15
+ import { BottomDrawerContent, CheckboxCell, ContentWrapper, Wrapper, } from './styles';
16
+ import { useLogic } from './useLogic';
17
+ const contentWrapperCva = cva(dataGridRowBaseClassnames.contentWrapper, {
18
+ variants: {
19
+ isHovered: {
20
+ true: dataGridRowBaseClassnames.hovered,
21
+ },
22
+ isActive: {
23
+ true: dataGridRowBaseClassnames.active,
24
+ },
25
+ },
26
+ });
27
+ const rootCva = cva(dataGridRowBaseClassnames.root, {
28
+ variants: {
29
+ mobileDisplayVariant: {
30
+ cards: dataGridRowBaseClassnames.mobileVariantCards,
31
+ list: dataGridRowBaseClassnames.mobileVariantList,
32
+ },
33
+ },
34
+ });
35
+ export const RowBase = memo((props) => {
36
+ const { className, tooltipProps, rowBaseVars, isHovered, isActive, drawerProps, emptyCellValue, rowRef, onRowEnter, onRowLeave, rowId, row, isDisabled, sectionOffset, customContent, isDisabledLastCell, renderStartAdornment, checkboxProps, isNotSelectable, isSelectable, columns, dataGridInfiniteItemProps, handleRowClick, drawerContent, mobileDisplayVariant, } = useLogic(props);
37
+ const renderStartAdornmentBase = () => {
38
+ const adornment = renderStartAdornment?.(true);
39
+ const shouldRenderCheckbox = isSelectable && !isNotSelectable;
40
+ if (!adornment && !shouldRenderCheckbox) {
41
+ return null;
42
+ }
43
+ return (_jsxs(_Fragment, { children: [adornment, shouldRenderCheckbox && (_jsx(CheckboxCell, { ...getInertProps(isDisabled), onClick: (event) => event.stopPropagation(), className: dataGridRowClassnames.checkbox, children: _jsx(Checkbox, { ...checkboxProps }) }))] }));
44
+ };
45
+ const renderCells = useCallback(() => {
46
+ const lastCellGlobalIndex = columns.length - 1;
47
+ const availableCellsByIndex = !isDisabledLastCell
48
+ ? [lastCellGlobalIndex]
49
+ : undefined;
50
+ return columns?.map((cell, index) => {
51
+ const cellId = `row-base-${index}`;
52
+ const globalIndex = (sectionOffset ?? 0) + index;
53
+ const isFirstCell = globalIndex === 0;
54
+ const isDisabledCell = checkIsDisabled(isDisabled, availableCellsByIndex, globalIndex);
55
+ if (isGroupColumns(cell)) {
56
+ return (_jsx(GroupCell, { cell: cell, cellId: cellId, isFirstCell: isFirstCell, row: row, emptyCellValue: emptyCellValue, isDisabled: isDisabledCell, startAdornment: isFirstCell && renderStartAdornmentBase() }, cellId));
57
+ }
58
+ return (_jsx(Cell, { row: row, cell: cell, emptyCellValue: emptyCellValue, startAdornment: isFirstCell && renderStartAdornmentBase(), isDisabled: isDisabledCell, isHidePersonalData: cell.isHidePersonalData }, cellId));
59
+ });
60
+ }, [
61
+ row,
62
+ columns,
63
+ isDisabled,
64
+ sectionOffset,
65
+ renderStartAdornment,
66
+ checkboxProps.checked,
67
+ ]);
68
+ return (_jsxs(Wrapper, { className: classNames(className, rootCva({ mobileDisplayVariant })), style: rowBaseVars, ...dataGridInfiniteItemProps, children: [_jsx(Tooltip, { ...tooltipProps, children: _jsx(ContentWrapper, { ref: rowRef, onPointerEnter: () => onRowEnter?.(rowId), onPointerLeave: (event) => onRowLeave?.(rowId, event.nativeEvent), className: contentWrapperCva({ isHovered, isActive }), [DISABLE_ROW_ATTR]: isDisabled, onClick: handleRowClick, children: renderCells() }) }), customContent, _jsx(BottomDrawer, { ...drawerProps, children: _jsx(BottomDrawerContent, { children: drawerContent }) })] }, `row-base-${rowId}`));
69
+ });
@@ -0,0 +1,9 @@
1
+ export declare const DISABLE_ROW_ATTR = "data-row-disable";
2
+ export declare const dataGridRowBaseClassnames: {
3
+ root: string;
4
+ contentWrapper: string;
5
+ hovered: string;
6
+ active: string;
7
+ mobileVariantCards: string;
8
+ mobileVariantList: string;
9
+ };
@@ -0,0 +1,10 @@
1
+ import { createUIKitClassname } from '../../utils/createUIKitClassname';
2
+ export const DISABLE_ROW_ATTR = 'data-row-disable';
3
+ export const dataGridRowBaseClassnames = {
4
+ root: createUIKitClassname('data-grid-row-base'),
5
+ contentWrapper: createUIKitClassname('data-grid-row-base__content-wrapper'),
6
+ hovered: createUIKitClassname('data-grid-row-base_hovered'),
7
+ active: createUIKitClassname('data-grid-row-base_active'),
8
+ mobileVariantCards: createUIKitClassname('data-grid-row-base_mobile-variant-cards'),
9
+ mobileVariantList: createUIKitClassname('data-grid-row-base_mobile-variant-list'),
10
+ };
@@ -0,0 +1,3 @@
1
+ export { RowBase } from './RowBase';
2
+ export { dataGridRowBaseClassnames } from './constants';
3
+ export type { RowBaseProps } from './types';
@@ -0,0 +1,2 @@
1
+ export { RowBase } from './RowBase';
2
+ export { dataGridRowBaseClassnames } from './constants';
@@ -0,0 +1,17 @@
1
+ /// <reference types="react" />
2
+ export declare const CheckboxCell: import("../../styled").StyledComponent<{
3
+ theme?: import("@emotion/react").Theme | undefined;
4
+ as?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
5
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
6
+ export declare const Wrapper: import("../../styled").StyledComponent<{
7
+ theme?: import("@emotion/react").Theme | undefined;
8
+ as?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
9
+ }, import("react").DetailedHTMLProps<import("react").LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, {}>;
10
+ export declare const ContentWrapper: import("../../styled").StyledComponent<{
11
+ theme?: import("@emotion/react").Theme | undefined;
12
+ as?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
13
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
14
+ export declare const BottomDrawerContent: import("../../styled").StyledComponent<{
15
+ theme?: import("@emotion/react").Theme | undefined;
16
+ as?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
17
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
@@ -0,0 +1,87 @@
1
+ import { styled } from '../../styled';
2
+ import { ROOT_ACTION_CELL_WIDTH } from '../constants';
3
+ import { dataGridRowBaseClassnames } from './constants';
4
+ export const CheckboxCell = styled.div `
5
+ display: flex;
6
+ align-items: center;
7
+ align-self: center;
8
+ justify-content: center;
9
+
10
+ width: ${ROOT_ACTION_CELL_WIDTH}px;
11
+ `;
12
+ export const Wrapper = styled.li `
13
+ --row-base-grid-columns: 1fr;
14
+
15
+ position: relative;
16
+
17
+ ${({ theme }) => theme.breakpoints.down('sm')} {
18
+ padding-bottom: ${({ theme }) => theme.spacing(3)};
19
+
20
+ border-bottom: 1px solid ${({ theme }) => theme.palette.grey[300]};
21
+
22
+ &:not(:first-of-type) {
23
+ padding-top: ${({ theme }) => theme.spacing(5)};
24
+ }
25
+
26
+ &:first-of-type {
27
+ padding-top: ${({ theme }) => theme.spacing(1)};
28
+ }
29
+
30
+ &.${dataGridRowBaseClassnames.mobileVariantCards} {
31
+ padding: ${({ theme }) => theme.spacing(5, 4, 4)};
32
+
33
+ background-color: ${({ theme }) => theme.palette.background.default};
34
+ border: 1px solid ${({ theme }) => theme.palette.grey[300]};
35
+ border-bottom: none;
36
+ border-radius: ${({ theme }) => theme.shape.medium};
37
+
38
+ }
39
+ }
40
+ `;
41
+ export const ContentWrapper = styled.div `
42
+ position: relative;
43
+
44
+ display: grid;
45
+ grid-template-columns: var(--row-base-grid-columns);
46
+
47
+ background-color: transparent;
48
+
49
+ &.${dataGridRowBaseClassnames.active} {
50
+ background-color: ${({ theme }) => theme.palette.primary[100]};
51
+ }
52
+
53
+ &:hover {
54
+ background-color: ${({ theme }) => theme.palette.background.elementHover};
55
+
56
+ &.${dataGridRowBaseClassnames.active} {
57
+ background-color: ${({ theme }) => theme.palette.primary[100]};
58
+ }
59
+
60
+ &.${dataGridRowBaseClassnames.hovered} {
61
+ cursor: pointer;
62
+ }
63
+ }
64
+
65
+ ${({ theme }) => theme.breakpoints.down('sm')} {
66
+ grid-template-columns: 1fr;
67
+
68
+ &.${dataGridRowBaseClassnames.active} {
69
+ background-color: transparent;
70
+ }
71
+
72
+ &:hover, &.${dataGridRowBaseClassnames.hovered} {
73
+ cursor: initial;
74
+
75
+ background-color: transparent;
76
+
77
+ &.${dataGridRowBaseClassnames.active} {
78
+ background-color: transparent;
79
+ }
80
+ }
81
+ }
82
+ `;
83
+ export const BottomDrawerContent = styled.div `
84
+ ${({ theme }) => theme.breakpoints.down('sm')} {
85
+ padding: ${({ theme }) => theme.spacing(5, 4)};
86
+ }
87
+ `;
@@ -0,0 +1,92 @@
1
+ import { type ChangeEvent, type ReactNode } from 'react';
2
+ import type { DataGridColumns, DataGridRowWithOptions } from '../types';
3
+ export type RowBaseProps = {
4
+ /**
5
+ * Массив колонок
6
+ */
7
+ columns: DataGridColumns<Record<string, unknown>>[];
8
+ /**
9
+ * Данные строки для отображения
10
+ */
11
+ row: DataGridRowWithOptions<Record<string, unknown>>;
12
+ /**
13
+ * Функция для рендера стартового элемента
14
+ */
15
+ renderStartAdornment?: (isFirstCell: boolean) => ReactNode;
16
+ /**
17
+ * Смещение секции для правильного расчета глобального индекса
18
+ */
19
+ sectionOffset?: number;
20
+ /**
21
+ * Уникальный идентификатор строки
22
+ */
23
+ rowId: string;
24
+ /**
25
+ * Кастомный контент после ячеек
26
+ */
27
+ customContent?: ReactNode;
28
+ /**
29
+ * Является ли строка выбираемой
30
+ */
31
+ isSelectable?: boolean;
32
+ /**
33
+ * Уникальный идентификатор строки
34
+ */
35
+ keyId: unknown;
36
+ /**
37
+ * Обработчик клика строки таблицы
38
+ */
39
+ onRowClick?: (row: Record<string, unknown>) => void;
40
+ /**
41
+ * Является ли строка выбранной
42
+ */
43
+ isSelected?: boolean;
44
+ /**
45
+ * Заблокирована ли строка
46
+ */
47
+ isDisabled?: boolean;
48
+ /**
49
+ * Причина блокировки строки
50
+ */
51
+ disabledReason?: string;
52
+ /**
53
+ * Обработчик выбора строки
54
+ */
55
+ onSelectRow: (row: Record<string, unknown>) => (event: ChangeEvent<HTMLInputElement>) => void;
56
+ /**
57
+ * Обработчик наведения на строку
58
+ */
59
+ onRowEnter?: (rowId: string) => void;
60
+ /**
61
+ * Обработчик ухода со строки
62
+ */
63
+ onRowLeave?: (rowId: string, event: PointerEvent) => void;
64
+ /**
65
+ * Регистрация элемента строки
66
+ */
67
+ registerRowElement?: (rowId: string, el: HTMLElement) => void;
68
+ /**
69
+ * Удаление регистрации элемента строки
70
+ */
71
+ unregisterRowElement?: (rowId: string, el: HTMLElement) => void;
72
+ /**
73
+ * Шаблон колонок (CSS grid-template-columns)
74
+ */
75
+ gridColumns?: string;
76
+ /**
77
+ * ID активной строки
78
+ */
79
+ activeRowId?: string;
80
+ /**
81
+ * Значение для пустой ячейки
82
+ */
83
+ emptyCellValue?: ReactNode;
84
+ /**
85
+ * Вариант отображения на мобильных устройствах
86
+ */
87
+ mobileDisplayVariant?: 'cards' | 'list';
88
+ /**
89
+ * Класс применяемый для корневого элемента
90
+ */
91
+ className?: string;
92
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,46 @@
1
+ import { type CSSProperties, type SyntheticEvent } from 'react';
2
+ import type { RowBaseProps } from '../types';
3
+ type UseLogicParams = RowBaseProps;
4
+ export declare const useLogic: ({ className, row, keyId, onRowClick, columns, sectionOffset, customContent, renderStartAdornment, isSelected, isDisabled, disabledReason, onSelectRow, onRowEnter, onRowLeave, registerRowElement, unregisterRowElement, gridColumns, activeRowId, emptyCellValue, isSelectable, rowId, mobileDisplayVariant, ...dataGridInfiniteItemProps }: UseLogicParams) => {
5
+ handleRowClick: () => void;
6
+ tooltipProps: {
7
+ open: boolean;
8
+ title: string | undefined;
9
+ onOpen: (event: SyntheticEvent<Element, Event>) => void;
10
+ onClose: () => void;
11
+ followCursor: boolean;
12
+ arrow: boolean;
13
+ };
14
+ checkboxProps: {
15
+ checked: boolean | undefined;
16
+ disabled: boolean | undefined;
17
+ onChange: (event: import("react").ChangeEvent<HTMLInputElement, Element>) => void;
18
+ };
19
+ drawerProps: {
20
+ open: boolean;
21
+ onClose: () => void;
22
+ title: string;
23
+ };
24
+ drawerContent: string | undefined;
25
+ rowBaseVars: CSSProperties;
26
+ isHovered: boolean;
27
+ isActive: boolean;
28
+ columns: import("../..").DataGridColumns<Record<string, unknown>>[];
29
+ emptyCellValue: import("react").ReactNode;
30
+ rowRef: (element: HTMLElement | null) => void;
31
+ onRowEnter: ((rowId: string) => void) | undefined;
32
+ onRowLeave: ((rowId: string, event: PointerEvent) => void) | undefined;
33
+ rowId: string;
34
+ row: import("../..").DataGridRowWithOptions<Record<string, unknown>>;
35
+ isDisabled: boolean | undefined;
36
+ sectionOffset: number | undefined;
37
+ customContent: import("react").ReactNode;
38
+ isDisabledLastCell: boolean | undefined;
39
+ renderStartAdornment: ((isFirstCell: boolean) => import("react").ReactNode) | undefined;
40
+ isSelectable: boolean | undefined;
41
+ isNotSelectable: boolean | undefined;
42
+ dataGridInfiniteItemProps: {};
43
+ mobileDisplayVariant: "list" | "cards" | undefined;
44
+ className: string | undefined;
45
+ };
46
+ export {};