@ynput/ayon-frontend-shared 0.3.35 → 0.3.37

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 (522) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +24 -23
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +222 -215
  6. package/dist/ProjectTreeTable.es.js.map +1 -1
  7. package/dist/_virtual/index.cjs22.js +1 -1
  8. package/dist/_virtual/index.cjs23.js +1 -1
  9. package/dist/_virtual/index.cjs24.js +1 -1
  10. package/dist/_virtual/index.cjs6.js +1 -1
  11. package/dist/_virtual/index.cjs8.js +1 -1
  12. package/dist/_virtual/index.es22.js +3 -3
  13. package/dist/_virtual/index.es23.js +5 -5
  14. package/dist/_virtual/index.es24.js +5 -5
  15. package/dist/_virtual/index.es6.js +2 -2
  16. package/dist/_virtual/index.es8.js +2 -2
  17. package/dist/components.cjs.js +1 -1
  18. package/dist/components.es.js +77 -73
  19. package/dist/components.es.js.map +1 -1
  20. package/dist/context.cjs.js +1 -1
  21. package/dist/context.es.js +50 -49
  22. package/dist/hooks.cjs.js +1 -1
  23. package/dist/hooks.es.js +33 -29
  24. package/dist/hooks.es.js.map +1 -1
  25. package/dist/index.cjs.js +1 -1
  26. package/dist/index.es.js +13 -10
  27. package/dist/index.es.js.map +1 -1
  28. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +1 -1
  29. package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
  30. package/dist/node_modules/rehype/node_modules/vfile/lib/index.cjs.js +1 -1
  31. package/dist/node_modules/rehype/node_modules/vfile/lib/index.es.js +1 -1
  32. package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
  33. package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
  34. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  35. package/dist/node_modules/remove-accents/index.es.js +1 -1
  36. package/dist/shared/node_modules/@module-federation/error-codes/dist/index.cjs.js +1 -1
  37. package/dist/shared/node_modules/@module-federation/error-codes/dist/index.es.js +1 -1
  38. package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.cjs.js +1 -1
  39. package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.es.js +1 -1
  40. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/utils.cjs.js +1 -1
  41. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/utils.es.js +1 -1
  42. package/dist/shared/node_modules/@module-federation/sdk/dist/utils.cjs.js +1 -1
  43. package/dist/shared/node_modules/@module-federation/sdk/dist/utils.es.js +1 -1
  44. package/dist/shared/src/api/generated/graphql.cjs.js +108 -23
  45. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  46. package/dist/shared/src/api/generated/graphql.es.js +138 -53
  47. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  48. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  49. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  50. package/dist/shared/src/api/queries/activities/getActivities.cjs.js +1 -1
  51. package/dist/shared/src/api/queries/activities/getActivities.cjs.js.map +1 -1
  52. package/dist/shared/src/api/queries/activities/getActivities.es.js +42 -42
  53. package/dist/shared/src/api/queries/activities/getActivities.es.js.map +1 -1
  54. package/dist/shared/src/api/queries/activities/patchTableLatestComments.cjs.js +2 -0
  55. package/dist/shared/src/api/queries/activities/patchTableLatestComments.cjs.js.map +1 -0
  56. package/dist/shared/src/api/queries/activities/patchTableLatestComments.es.js +68 -0
  57. package/dist/shared/src/api/queries/activities/patchTableLatestComments.es.js.map +1 -0
  58. package/dist/shared/src/api/queries/activities/updateActivities.cjs.js +1 -1
  59. package/dist/shared/src/api/queries/activities/updateActivities.cjs.js.map +1 -1
  60. package/dist/shared/src/api/queries/activities/updateActivities.es.js +69 -62
  61. package/dist/shared/src/api/queries/activities/updateActivities.es.js.map +1 -1
  62. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js +1 -1
  63. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js.map +1 -1
  64. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js +64 -56
  65. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js.map +1 -1
  66. package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js +1 -1
  67. package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js.map +1 -1
  68. package/dist/shared/src/api/queries/columnStats/columnStats.es.js +57 -53
  69. package/dist/shared/src/api/queries/columnStats/columnStats.es.js.map +1 -1
  70. package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js +1 -1
  71. package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js.map +1 -1
  72. package/dist/shared/src/api/queries/columnStats/metricTargets.es.js +27 -25
  73. package/dist/shared/src/api/queries/columnStats/metricTargets.es.js.map +1 -1
  74. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js +1 -1
  75. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js +1 -1
  76. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js.map +1 -1
  77. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js +4 -4
  78. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js.map +1 -1
  79. package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
  80. package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
  81. package/dist/shared/src/api/queries/overview/getOverview.es.js +212 -187
  82. package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
  83. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  84. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  85. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +6 -3
  86. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  87. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  88. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  89. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +6 -3
  90. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  91. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
  92. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
  93. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +6 -3
  94. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
  95. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  96. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  97. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +6 -3
  98. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  99. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +1 -1
  100. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
  101. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +102 -99
  102. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
  103. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +2 -2
  104. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  105. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +95 -87
  106. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  107. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
  108. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
  109. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +6 -3
  110. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
  111. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
  112. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
  113. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +6 -3
  114. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
  115. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  116. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  117. package/dist/shared/src/components/RenameForm/RenameForm.es.js +6 -3
  118. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  119. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  120. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  121. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +6 -3
  122. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  123. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  124. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  125. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +7 -4
  126. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  127. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  128. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  129. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +6 -3
  130. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  131. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
  132. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
  133. package/dist/shared/src/components/ReviewablesSelector/Card.es.js +6 -3
  134. package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
  135. package/dist/shared/src/components/SearchFilter/CustomDateRangeDialog.cjs.js +6 -0
  136. package/dist/shared/src/components/SearchFilter/CustomDateRangeDialog.cjs.js.map +1 -0
  137. package/dist/shared/src/components/SearchFilter/CustomDateRangeDialog.es.js +58 -0
  138. package/dist/shared/src/components/SearchFilter/CustomDateRangeDialog.es.js.map +1 -0
  139. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  140. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  141. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +1 -4
  142. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  143. package/dist/shared/src/components/SearchFilter/useDateRangeFilter.cjs.js +2 -0
  144. package/dist/shared/src/components/SearchFilter/useDateRangeFilter.cjs.js.map +1 -0
  145. package/dist/shared/src/components/SearchFilter/useDateRangeFilter.es.js +106 -0
  146. package/dist/shared/src/components/SearchFilter/useDateRangeFilter.es.js.map +1 -0
  147. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
  148. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
  149. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +8 -5
  150. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
  151. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  152. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  153. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +6 -3
  154. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  155. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  156. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  157. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +6 -3
  158. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  159. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  160. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  161. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +10 -7
  162. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  163. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  164. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  165. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +6 -3
  166. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  167. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  168. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  169. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +6 -3
  170. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  171. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  172. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  173. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +4 -3
  174. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  175. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  176. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  177. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +6 -3
  178. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  179. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  180. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  181. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +6 -3
  182. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  183. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  184. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  185. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +6 -3
  186. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  187. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
  188. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
  189. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +6 -3
  190. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
  191. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
  192. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
  193. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +6 -3
  194. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js.map +1 -1
  195. package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.cjs.js +10 -0
  196. package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.cjs.js.map +1 -0
  197. package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.es.js +135 -0
  198. package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.es.js.map +1 -0
  199. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.cjs.js.map +1 -1
  200. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.es.js.map +1 -1
  201. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
  202. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
  203. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +20 -17
  204. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
  205. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
  206. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
  207. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +41 -44
  208. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
  209. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
  210. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
  211. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +5 -2
  212. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
  213. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
  214. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
  215. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +19 -25
  216. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
  217. package/dist/shared/src/containers/DetailsPanel/helpers/subtasksFilterAdapter.cjs.js +2 -0
  218. package/dist/shared/src/containers/DetailsPanel/helpers/subtasksFilterAdapter.cjs.js.map +1 -0
  219. package/dist/shared/src/containers/DetailsPanel/helpers/subtasksFilterAdapter.es.js +91 -0
  220. package/dist/shared/src/containers/DetailsPanel/helpers/subtasksFilterAdapter.es.js.map +1 -0
  221. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  222. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  223. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +6 -3
  224. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  225. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  226. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  227. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +6 -3
  228. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  229. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  230. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  231. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +6 -3
  232. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  233. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  234. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  235. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +6 -3
  236. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  237. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  238. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  239. package/dist/shared/src/containers/Feed/Feed.es.js +156 -164
  240. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  241. package/dist/shared/src/containers/Feed/Feed.styled.cjs.js +25 -3
  242. package/dist/shared/src/containers/Feed/Feed.styled.cjs.js.map +1 -1
  243. package/dist/shared/src/containers/Feed/Feed.styled.es.js +30 -8
  244. package/dist/shared/src/containers/Feed/Feed.styled.es.js.map +1 -1
  245. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
  246. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
  247. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +6 -3
  248. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
  249. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  250. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  251. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +6 -3
  252. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  253. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  254. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  255. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +6 -3
  256. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  257. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.cjs.js +3 -3
  258. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.cjs.js.map +1 -1
  259. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.es.js +1 -0
  260. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.es.js.map +1 -1
  261. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js +1 -1
  262. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js.map +1 -1
  263. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js +8 -5
  264. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js.map +1 -1
  265. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
  266. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  267. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +5 -2
  268. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  269. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
  270. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
  271. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +10 -7
  272. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
  273. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.cjs.js +1 -1
  274. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.cjs.js.map +1 -1
  275. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.es.js +5 -5
  276. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.es.js.map +1 -1
  277. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js +17 -0
  278. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js.map +1 -0
  279. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js +279 -0
  280. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js.map +1 -0
  281. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  282. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  283. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +5 -2
  284. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  285. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  286. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  287. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +62 -50
  288. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  289. package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.cjs.js +2 -0
  290. package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.cjs.js.map +1 -0
  291. package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.es.js +141 -0
  292. package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.es.js.map +1 -0
  293. package/dist/shared/src/containers/Feed/helpers/feedFilterAdapter.cjs.js +2 -0
  294. package/dist/shared/src/containers/Feed/helpers/feedFilterAdapter.cjs.js.map +1 -0
  295. package/dist/shared/src/containers/Feed/helpers/feedFilterAdapter.es.js +81 -0
  296. package/dist/shared/src/containers/Feed/helpers/feedFilterAdapter.es.js.map +1 -0
  297. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  298. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  299. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +20 -18
  300. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  301. package/dist/shared/src/containers/ListTable/ListTable.cjs.js +1 -1
  302. package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
  303. package/dist/shared/src/containers/ListTable/ListTable.es.js +106 -103
  304. package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
  305. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
  306. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
  307. package/dist/shared/src/containers/ListTable/ListTableCell.es.js +7 -4
  308. package/dist/shared/src/containers/ListTable/ListTableCell.es.js.map +1 -1
  309. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js +1 -1
  310. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js.map +1 -1
  311. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js +6 -3
  312. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
  313. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  314. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  315. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +127 -123
  316. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  317. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  318. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  319. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +158 -130
  320. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  321. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
  322. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
  323. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +6 -3
  324. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
  325. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  326. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  327. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +36 -33
  328. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  329. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  330. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  331. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +6 -3
  332. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  333. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  334. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  335. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +6 -3
  336. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  337. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +5 -4
  338. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  339. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +228 -222
  340. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  341. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
  342. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
  343. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +103 -100
  344. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
  345. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  346. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  347. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +6 -3
  348. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  349. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.cjs.js +3 -0
  350. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.cjs.js.map +1 -0
  351. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.es.js +22 -0
  352. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.es.js.map +1 -0
  353. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  354. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  355. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +113 -109
  356. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  357. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  358. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  359. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +125 -121
  360. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  361. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  362. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  363. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +6 -3
  364. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  365. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  366. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  367. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +6 -3
  368. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  369. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  370. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  371. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +36 -33
  372. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  373. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
  374. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
  375. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +6 -3
  376. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
  377. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  378. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  379. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +107 -103
  380. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  381. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  382. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  383. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +36 -33
  384. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  385. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  386. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  387. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +36 -33
  388. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  389. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  390. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  391. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +6 -3
  392. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  393. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  394. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  395. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +6 -3
  396. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  397. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  398. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  399. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +6 -3
  400. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  401. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  402. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  403. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +105 -102
  404. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  405. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
  406. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
  407. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +37 -34
  408. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
  409. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  410. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  411. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +48 -45
  412. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  413. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js +1 -1
  414. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js.map +1 -1
  415. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js +61 -61
  416. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js.map +1 -1
  417. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js +1 -1
  418. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map +1 -1
  419. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js +15 -6
  420. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
  421. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
  422. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  423. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +6 -3
  424. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  425. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +4 -3
  426. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  427. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +108 -101
  428. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  429. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js +82 -0
  430. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js.map +1 -0
  431. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js +416 -0
  432. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js.map +1 -0
  433. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  434. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  435. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +8 -5
  436. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  437. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  438. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  439. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +37 -34
  440. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  441. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
  442. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
  443. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +6 -3
  444. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
  445. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  446. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  447. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +6 -3
  448. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  449. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  450. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  451. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +6 -3
  452. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  453. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
  454. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
  455. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +6 -3
  456. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
  457. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
  458. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
  459. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +6 -3
  460. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
  461. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
  462. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
  463. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +6 -3
  464. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
  465. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  466. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  467. package/dist/shared/src/context/DetailsPanelContext.es.js +92 -94
  468. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  469. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  470. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  471. package/dist/shared/src/context/WebsocketContext.es.js +8 -5
  472. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  473. package/dist/shared/src/hooks/useGetProductionAddon.cjs.js +2 -0
  474. package/dist/shared/src/hooks/useGetProductionAddon.cjs.js.map +1 -0
  475. package/dist/shared/src/hooks/useGetProductionAddon.es.js +124 -0
  476. package/dist/shared/src/hooks/useGetProductionAddon.es.js.map +1 -0
  477. package/dist/shared/src/hooks/useLocalStorage.cjs.js +1 -1
  478. package/dist/shared/src/hooks/useLocalStorage.cjs.js.map +1 -1
  479. package/dist/shared/src/hooks/useLocalStorage.es.js +43 -27
  480. package/dist/shared/src/hooks/useLocalStorage.es.js.map +1 -1
  481. package/dist/types/api/generated/graphql.d.ts +122 -0
  482. package/dist/types/api/generated/graphqlLinks.d.ts +10 -0
  483. package/dist/types/api/queries/activities/getActivities.d.ts +83 -0
  484. package/dist/types/api/queries/activities/patchTableLatestComments.d.ts +1 -0
  485. package/dist/types/api/queries/activities/updateActivities.d.ts +16 -0
  486. package/dist/types/api/queries/activities/util/activitiesHelpers.d.ts +1 -0
  487. package/dist/types/api/queries/entities/getEntity.d.ts +7 -0
  488. package/dist/types/api/queries/entities/getEntityPanel.d.ts +7 -0
  489. package/dist/types/api/queries/entities/updateEntity.d.ts +7 -0
  490. package/dist/types/api/queries/entityLists/getLists.d.ts +84 -0
  491. package/dist/types/api/queries/entityLists/types.d.ts +2 -1
  492. package/dist/types/api/queries/overview/getOverview.d.ts +58 -0
  493. package/dist/types/api/queries/project/getProject.d.ts +7 -0
  494. package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +7 -0
  495. package/dist/types/api/queries/users/getUsers.d.ts +7 -0
  496. package/dist/types/api/queries/versions/getVersionsProducts.d.ts +30 -0
  497. package/dist/types/components/SearchFilter/CustomDateRangeDialog.d.ts +13 -0
  498. package/dist/types/components/SearchFilter/index.d.ts +2 -0
  499. package/dist/types/components/SearchFilter/useDateRangeFilter.d.ts +36 -0
  500. package/dist/types/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.d.ts +13 -0
  501. package/dist/types/containers/DetailsPanel/helpers/subtasksFilterAdapter.d.ts +5 -0
  502. package/dist/types/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.d.ts +1 -0
  503. package/dist/types/containers/Feed/components/ActivityReference/ActivityReference.styled.d.ts +2 -2
  504. package/dist/types/containers/Feed/components/FeedSearchFilter.d.ts +15 -0
  505. package/dist/types/containers/Feed/context/FeedContext.d.ts +5 -1
  506. package/dist/types/containers/Feed/helpers/buildBackendFilter.d.ts +3 -0
  507. package/dist/types/containers/Feed/helpers/feedFilterAdapter.d.ts +5 -0
  508. package/dist/types/containers/Feed/hooks/useGetFeedActivitiesData.d.ts +5 -1
  509. package/dist/types/containers/ProjectTreeTable/buildTreeTableColumns.d.ts +1 -1
  510. package/dist/types/containers/ProjectTreeTable/context/clipboard/clipboardComments.d.ts +6 -0
  511. package/dist/types/containers/ProjectTreeTable/context/clipboard/index.d.ts +1 -0
  512. package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +2 -1
  513. package/dist/types/containers/ProjectTreeTable/types/table.d.ts +2 -1
  514. package/dist/types/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.d.ts +9 -0
  515. package/dist/types/containers/ProjectTreeTable/utils/queryFilterToClientFilter.d.ts +5 -0
  516. package/dist/types/containers/ProjectTreeTable/widgets/CellWidget.d.ts +1 -1
  517. package/dist/types/containers/ProjectTreeTable/widgets/CommentsWidget.d.ts +7 -0
  518. package/dist/types/context/DetailsPanelContext.d.ts +1 -0
  519. package/dist/types/hooks/index.d.ts +1 -0
  520. package/dist/types/hooks/useGetProductionAddon.d.ts +10 -0
  521. package/dist/types/hooks/useLocalStorage.d.ts +2 -0
  522. package/package.json +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"useBuildProjectDataTable.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport {\n EditorTaskNode,\n FolderNodeMap,\n TableRow,\n TaskNodeMap,\n TasksByFolderMap,\n} from '../types/table'\nimport { ExpandedState } from '@tanstack/react-table'\nimport { generateLoadingRows } from '../utils/loadingUtils'\nconst TASKS_INFINITE_QUERY_COUNT = 100\nimport { LoadingTasks } from '../types'\nimport { useGetEntityTypeData } from './useGetEntityTypeData'\nimport { TableGroupBy } from '../context'\nimport { linksToTableData } from '../utils'\nimport { ProjectModelWithProducts, useProjectContext } from '@shared/context'\n\ntype Params = {\n foldersMap: FolderNodeMap\n tasksMap: TaskNodeMap\n tasksByFolderMap: TasksByFolderMap\n rows?: TableRow[]\n expanded: ExpandedState\n showHierarchy: boolean\n isFlatFolderView?: boolean\n showEmptyFolders?: boolean\n loadingTasks?: LoadingTasks\n isLoadingMore?: boolean\n groupBy?: TableGroupBy\n selectedFolders?: string[]\n}\n\nexport default function useBuildProjectDataTable({\n foldersMap,\n tasksMap,\n rows,\n tasksByFolderMap,\n expanded,\n showHierarchy,\n isFlatFolderView = false,\n showEmptyFolders = false,\n loadingTasks = {},\n isLoadingMore = false,\n selectedFolders = [],\n}: Params): TableRow[] {\n const project = useProjectContext()\n const getEntityTypeData = useGetEntityTypeData({ projectInfo: project })\n\n // Convert expanded object to a stable string for memoization comparison\n const expandedKey = useMemo(() => JSON.stringify(expanded), [expanded])\n\n // Memoize expandedFolderIds set for efficient lookups\n const expandedFolderIds = useMemo(() => {\n return new Set(\n Object.entries(expanded)\n .filter(([_, isExpanded]) => isExpanded)\n .map(([id]) => id),\n )\n }, [expandedKey])\n\n // Memoize relationship maps to avoid rebuilding them on every render\n const { childToParentMap, parentToChildrenMap } = useMemo(() => {\n const childToParent = new Map<string, string>()\n const parentToChildren = new Map<string, Set<string>>()\n\n // Construct relationship maps in a single pass\n for (const folder of foldersMap.values()) {\n if (!folder?.id) continue\n\n const parentId = folder.parentId\n if (parentId) {\n childToParent.set(folder.id, parentId)\n\n let children = parentToChildren.get(parentId)\n if (!children) {\n children = new Set<string>()\n parentToChildren.set(parentId, children)\n }\n children.add(folder.id)\n }\n }\n\n return { childToParentMap: childToParent, parentToChildrenMap: parentToChildren }\n }, [foldersMap])\n\n // Memoize visible folders calculation\n const visibleFolders = useMemo(() => {\n const visible = new Set<string>()\n\n // Start with root folders and folders with non-existent parents\n const queue: string[] = []\n for (const folder of foldersMap.values()) {\n if (!folder?.id) continue\n\n // Include folders with no parent OR with a parent that doesn't exist\n if (!folder.parentId || !foldersMap.has(folder.parentId)) {\n visible.add(folder.id)\n queue.push(folder.id)\n }\n }\n\n // Process queue to identify visible folders (BFS)\n while (queue.length > 0) {\n const folderId = queue.shift()!\n const isParentExpanded = expandedFolderIds.has(folderId)\n\n if (!isParentExpanded) continue\n\n // Add children of expanded folders to visible set\n const childrenIds = parentToChildrenMap.get(folderId)\n if (childrenIds) {\n for (const childId of childrenIds) {\n if (!visible.has(childId)) {\n visible.add(childId)\n queue.push(childId)\n }\n }\n }\n }\n\n return visible\n }, [foldersMap, parentToChildrenMap, expandedFolderIds])\n\n // Final memoized result - build the table tree\n return useMemo(() => {\n // Helper function to create a task row\n const createTaskRow = (task: EditorTaskNode, parentId?: string): TableRow => {\n const typeData = getEntityTypeData('task', task.taskType)\n\n const links = linksToTableData(task.links, 'task', project.anatomy)\n\n return {\n id: task.id,\n entityType: 'task',\n parentId: parentId || task.folderId,\n folderId: task.folderId,\n name: task.name || '',\n label: task.label || task.name || '',\n icon: typeData?.icon || null,\n color: typeData?.color || null,\n status: task.status,\n assignees: task.assignees,\n tags: task.tags,\n img: null,\n subRows: [],\n subType: task.taskType || null,\n attrib: task.attrib,\n ownAttrib: task.ownAttrib,\n parents: task.parents || [],\n path: task.parents.join('/') || null, // todo: probably remove this and just use parents\n folder: task.parents[task.parents.length - 1] || undefined,\n updatedAt: task.updatedAt,\n createdAt: task.createdAt,\n thumbnailHash: task.thumbnailHash,\n hasReviewables: task.hasReviewables || false,\n links: links,\n subtasks: task.subtasks || [],\n }\n }\n\n const createRootTaskRows = (): TableRow[] => {\n const rootTaskRows: TableRow[] = []\n for (const folderId of selectedFolders) {\n if (foldersMap.has(folderId)) continue\n const folderTaskIds = tasksByFolderMap.get(folderId) || []\n for (const taskId of folderTaskIds) {\n const task = tasksMap.get(taskId)\n if (task) rootTaskRows.push(createTaskRow(task))\n }\n }\n return rootTaskRows\n }\n\n // Flat folder view: all folders at root level, each expandable to show tasks\n if (isFlatFolderView) {\n const flatFolderRows: TableRow[] = []\n\n for (const folder of foldersMap.values()) {\n if (!folder?.id) continue\n\n // Use the folder's hasTasks flag (from REST data) to filter before tasks are loaded\n const hasTasks = folder.hasTasks ?? tasksByFolderMap.has(folder.id)\n // Skip folders without tasks when showEmptyFolders is off\n if (!showEmptyFolders && !hasTasks) continue\n\n const folderTypeData = getEntityTypeData('folder', folder.folderType)\n const links = linksToTableData(folder.links, 'folder', project.anatomy)\n\n const row: TableRow = {\n id: folder.id,\n entityType: 'folder',\n parentId: undefined, // flat — no parent nesting\n folderId: folder.id,\n name: folder.name || '',\n label: folder.label || folder.name || '',\n icon: folderTypeData?.icon || null,\n color: folderTypeData?.color || null,\n img: null,\n subRows: [],\n status: folder.status,\n tags: folder.tags || [],\n subType: folder.folderType || null,\n ownAttrib: folder.ownAttrib || [],\n path: folder.path,\n folder: folder.parents[folder.parents.length - 1] || undefined,\n attrib: folder.attrib || {},\n childOnlyMatch: folder.childOnlyMatch || false,\n updatedAt: folder.updatedAt,\n createdAt: folder.createdAt,\n thumbnailHash: folder.thumbnailHash,\n hasReviewables: folder.hasReviewables || false,\n hasVersions: folder.hasVersions || false,\n links: links,\n }\n\n // If folder is expanded, attach task subRows\n if (expandedFolderIds.has(folder.id)) {\n const folderTaskIds = tasksByFolderMap.get(folder.id) || []\n const folderTasks = folderTaskIds.flatMap((taskId) => tasksMap.get(taskId) || [])\n\n if (folderTasks.length || loadingTasks[folder.id]) {\n const taskRows = folderTasks.map((task) => createTaskRow(task, folder.id))\n\n if (loadingTasks[folder.id]) {\n const count = loadingTasks[folder.id]\n if (count > 0) {\n taskRows.push(...generateLoadingRows(count, { parentId: folder.id }))\n }\n }\n\n row.subRows = taskRows\n }\n }\n\n flatFolderRows.push(row)\n }\n\n flatFolderRows.push(...createRootTaskRows())\n\n return flatFolderRows\n }\n\n // If showHierarchy is false, create a flat list of task rows\n if (!showHierarchy) {\n const flatRows: TableRow[] = []\n\n // Loop through all tasks\n for (const task of tasksMap.values()) {\n if (!task.id) continue\n flatRows.push(createTaskRow(task))\n }\n\n // Loop through all extra rows\n for (const row of rows || []) {\n flatRows.push(row)\n }\n\n // if we are loading more tasks, add loading rows\n if (isLoadingMore) {\n // number of tasks we loading with the infinite query\n const count = TASKS_INFINITE_QUERY_COUNT\n if (count > 0) {\n const loadingTaskRows = generateLoadingRows(count, {\n type: 'task',\n })\n\n flatRows.push(...loadingTaskRows)\n }\n }\n\n return flatRows\n }\n\n // Use Map for O(1) lookups\n const rowsById = new Map<string, TableRow>()\n const rootRows: TableRow[] = []\n\n // Create minimal rows for only visible folders\n for (const folderId of visibleFolders) {\n const folder = foldersMap.get(folderId)\n if (!folder) continue\n\n const links = linksToTableData(folder.links, 'folder', project.anatomy)\n\n const folderTypeData = getEntityTypeData('folder', folder.folderType)\n\n // Create row with minimal required properties\n const row: TableRow = {\n id: folderId,\n entityType: 'folder',\n parentId: folder.parentId || undefined,\n folderId: folderId || null, // root folders have no folderId\n name: folder.name || '',\n label: folder.label || folder.name || '',\n icon: folderTypeData?.icon || null,\n color: folderTypeData?.color || null,\n img: null,\n subRows: [],\n status: folder.status,\n tags: folder.tags || [],\n subType: folder.folderType || null,\n ownAttrib: folder.ownAttrib || [],\n path: folder.path,\n folder: folder.parents[folder.parents.length - 1] || undefined,\n attrib: folder.attrib || {},\n childOnlyMatch: folder.childOnlyMatch || false,\n updatedAt: folder.updatedAt,\n createdAt: folder.createdAt,\n thumbnailHash: folder.thumbnailHash,\n hasReviewables: folder.hasReviewables || false,\n hasVersions: folder.hasVersions || false,\n links: links,\n }\n\n rowsById.set(folderId, row)\n\n // Add root rows directly to the rootRows array\n if (!folder.parentId || !foldersMap.has(folder.parentId)) {\n rootRows.push(row)\n }\n\n // Process tasks immediately if folder is expanded\n if (expandedFolderIds.has(folderId)) {\n // because tasksByFolderMap is a map of tasks by folder ID\n // we can directly get the tasks for the current folder\n const folderTaskIds = tasksByFolderMap.get(folderId) || []\n const folderTasks = folderTaskIds.flatMap((taskId) => tasksMap.get(taskId) || [])\n\n if (folderTasks.length || loadingTasks[folderId]) {\n // Use array literal with known length for better performance\n const taskRows = new Array<TableRow>(folderTasks.length)\n\n // Direct array assignment is faster than push operations\n for (let i = 0; i < folderTasks.length; i++) {\n taskRows[i] = createTaskRow(folderTasks[i], folderId)\n }\n\n // Add loading rows if applicable\n if (loadingTasks[folderId]) {\n const count = loadingTasks[folderId]\n if (count > 0) {\n const loadingTaskRows = generateLoadingRows(count, { parentId: folderId })\n\n taskRows.push(...loadingTaskRows)\n }\n }\n\n row.subRows = taskRows\n }\n }\n }\n\n // Build the folder hierarchy efficiently\n for (const folderId of visibleFolders) {\n const parentId = childToParentMap.get(folderId)\n if (!parentId || !expandedFolderIds.has(parentId)) continue\n\n const childRow = rowsById.get(folderId)\n const parentRow = rowsById.get(parentId)\n\n if (!childRow || !parentRow) continue\n\n // Add folder to its parent's subRows\n parentRow.subRows?.push(childRow)\n }\n\n rootRows.push(...createRootTaskRows())\n\n // Add any extra rows to the root rows\n for (const row of rows || []) {\n rootRows.push(row)\n }\n\n return rootRows\n }, [\n foldersMap,\n tasksMap,\n tasksByFolderMap,\n rows,\n visibleFolders,\n childToParentMap,\n expandedFolderIds,\n showHierarchy,\n isFlatFolderView,\n showEmptyFolders,\n loadingTasks,\n isLoadingMore,\n selectedFolders,\n ])\n}\n"],"names":["TASKS_INFINITE_QUERY_COUNT","useBuildProjectDataTable","foldersMap","tasksMap","rows","tasksByFolderMap","expanded","showHierarchy","isFlatFolderView","showEmptyFolders","loadingTasks","isLoadingMore","selectedFolders","project","useProjectContext","getEntityTypeData","useGetEntityTypeData","expandedKey","useMemo","expandedFolderIds","_","isExpanded","id","childToParentMap","parentToChildrenMap","childToParent","parentToChildren","folder","parentId","children","visibleFolders","visible","queue","folderId","childrenIds","childId","createTaskRow","task","typeData","links","linksToTableData","createRootTaskRows","rootTaskRows","folderTaskIds","taskId","flatFolderRows","hasTasks","folderTypeData","row","folderTasks","taskRows","count","generateLoadingRows","flatRows","loadingTaskRows","rowsById","rootRows","i","childRow","parentRow"],"mappings":"m3gBAUMA,EAA6B,IAsBnC,SAAwBC,EAAyB,CAC/C,WAAAC,EACA,SAAAC,EACA,KAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,cAAAC,EACA,iBAAAC,EAAmB,GACnB,iBAAAC,EAAmB,GACnB,aAAAC,EAAe,CAAA,EACf,cAAAC,EAAgB,GAChB,gBAAAC,EAAkB,CAAA,CACpB,EAAuB,CACrB,MAAMC,EAAUC,EAAAA,kBAAA,EACVC,EAAoBC,EAAAA,qBAAqB,CAAE,YAAaH,EAAS,EAGjEI,EAAcC,EAAAA,QAAQ,IAAM,KAAK,UAAUZ,CAAQ,EAAG,CAACA,CAAQ,CAAC,EAGhEa,EAAoBD,EAAAA,QAAQ,IACzB,IAAI,IACT,OAAO,QAAQZ,CAAQ,EACpB,OAAO,CAAC,CAACc,EAAGC,CAAU,IAAMA,CAAU,EACtC,IAAI,CAAC,CAACC,CAAE,IAAMA,CAAE,CAAA,EAEpB,CAACL,CAAW,CAAC,EAGV,CAAE,iBAAAM,EAAkB,oBAAAC,CAAA,EAAwBN,EAAAA,QAAQ,IAAM,CAC9D,MAAMO,MAAoB,IACpBC,MAAuB,IAG7B,UAAWC,KAAUzB,EAAW,SAAU,CACxC,GAAI,CAACyB,GAAQ,GAAI,SAEjB,MAAMC,EAAWD,EAAO,SACxB,GAAIC,EAAU,CACZH,EAAc,IAAIE,EAAO,GAAIC,CAAQ,EAErC,IAAIC,EAAWH,EAAiB,IAAIE,CAAQ,EACvCC,IACHA,MAAe,IACfH,EAAiB,IAAIE,EAAUC,CAAQ,GAEzCA,EAAS,IAAIF,EAAO,EAAE,CACxB,CACF,CAEA,MAAO,CAAE,iBAAkBF,EAAe,oBAAqBC,CAAA,CACjE,EAAG,CAACxB,CAAU,CAAC,EAGT4B,EAAiBZ,EAAAA,QAAQ,IAAM,CACnC,MAAMa,MAAc,IAGdC,EAAkB,CAAA,EACxB,UAAWL,KAAUzB,EAAW,SACzByB,GAAQ,KAGT,CAACA,EAAO,UAAY,CAACzB,EAAW,IAAIyB,EAAO,QAAQ,KACrDI,EAAQ,IAAIJ,EAAO,EAAE,EACrBK,EAAM,KAAKL,EAAO,EAAE,GAKxB,KAAOK,EAAM,OAAS,GAAG,CACvB,MAAMC,EAAWD,EAAM,MAAA,EAGvB,GAAI,CAFqBb,EAAkB,IAAIc,CAAQ,EAEhC,SAGvB,MAAMC,EAAcV,EAAoB,IAAIS,CAAQ,EACpD,GAAIC,EACF,UAAWC,KAAWD,EACfH,EAAQ,IAAII,CAAO,IACtBJ,EAAQ,IAAII,CAAO,EACnBH,EAAM,KAAKG,CAAO,EAI1B,CAEA,OAAOJ,CACT,EAAG,CAAC7B,EAAYsB,EAAqBL,CAAiB,CAAC,EAGvD,OAAOD,EAAAA,QAAQ,IAAM,CAEnB,MAAMkB,EAAgB,CAACC,EAAsBT,IAAgC,CAC3E,MAAMU,EAAWvB,EAAkB,OAAQsB,EAAK,QAAQ,EAElDE,EAAQC,EAAAA,iBAAiBH,EAAK,MAAO,OAAQxB,EAAQ,OAAO,EAElE,MAAO,CACL,GAAIwB,EAAK,GACT,WAAY,OACZ,SAAUT,GAAYS,EAAK,SAC3B,SAAUA,EAAK,SACf,KAAMA,EAAK,MAAQ,GACnB,MAAOA,EAAK,OAASA,EAAK,MAAQ,GAClC,KAAMC,GAAU,MAAQ,KACxB,MAAOA,GAAU,OAAS,KAC1B,OAAQD,EAAK,OACb,UAAWA,EAAK,UAChB,KAAMA,EAAK,KACX,IAAK,KACL,QAAS,CAAA,EACT,QAASA,EAAK,UAAY,KAC1B,OAAQA,EAAK,OACb,UAAWA,EAAK,UAChB,QAASA,EAAK,SAAW,CAAA,EACzB,KAAMA,EAAK,QAAQ,KAAK,GAAG,GAAK,KAChC,OAAQA,EAAK,QAAQA,EAAK,QAAQ,OAAS,CAAC,GAAK,OACjD,UAAWA,EAAK,UAChB,UAAWA,EAAK,UAChB,cAAeA,EAAK,cACpB,eAAgBA,EAAK,gBAAkB,GACvC,MAAAE,EACA,SAAUF,EAAK,UAAY,CAAA,CAAC,CAEhC,EAEMI,EAAqB,IAAkB,CAC3C,MAAMC,EAA2B,CAAA,EACjC,UAAWT,KAAYrB,EAAiB,CACtC,GAAIV,EAAW,IAAI+B,CAAQ,EAAG,SAC9B,MAAMU,EAAgBtC,EAAiB,IAAI4B,CAAQ,GAAK,CAAA,EACxD,UAAWW,KAAUD,EAAe,CAClC,MAAMN,EAAOlC,EAAS,IAAIyC,CAAM,EAC5BP,GAAMK,EAAa,KAAKN,EAAcC,CAAI,CAAC,CACjD,CACF,CACA,OAAOK,CACT,EAGA,GAAIlC,EAAkB,CACpB,MAAMqC,EAA6B,CAAA,EAEnC,UAAWlB,KAAUzB,EAAW,SAAU,CACxC,GAAI,CAACyB,GAAQ,GAAI,SAGjB,MAAMmB,EAAWnB,EAAO,UAAYtB,EAAiB,IAAIsB,EAAO,EAAE,EAElE,GAAI,CAAClB,GAAoB,CAACqC,EAAU,SAEpC,MAAMC,EAAiBhC,EAAkB,SAAUY,EAAO,UAAU,EAC9DY,EAAQC,EAAAA,iBAAiBb,EAAO,MAAO,SAAUd,EAAQ,OAAO,EAEhEmC,EAAgB,CACpB,GAAIrB,EAAO,GACX,WAAY,SACZ,SAAU,OACV,SAAUA,EAAO,GACjB,KAAMA,EAAO,MAAQ,GACrB,MAAOA,EAAO,OAASA,EAAO,MAAQ,GACtC,KAAMoB,GAAgB,MAAQ,KAC9B,MAAOA,GAAgB,OAAS,KAChC,IAAK,KACL,QAAS,CAAA,EACT,OAAQpB,EAAO,OACf,KAAMA,EAAO,MAAQ,CAAA,EACrB,QAASA,EAAO,YAAc,KAC9B,UAAWA,EAAO,WAAa,CAAA,EAC/B,KAAMA,EAAO,KACb,OAAQA,EAAO,QAAQA,EAAO,QAAQ,OAAS,CAAC,GAAK,OACrD,OAAQA,EAAO,QAAU,CAAA,EACzB,eAAgBA,EAAO,gBAAkB,GACzC,UAAWA,EAAO,UAClB,UAAWA,EAAO,UAClB,cAAeA,EAAO,cACtB,eAAgBA,EAAO,gBAAkB,GACzC,YAAaA,EAAO,aAAe,GACnC,MAAAY,CAAA,EAIF,GAAIpB,EAAkB,IAAIQ,EAAO,EAAE,EAAG,CAEpC,MAAMsB,GADgB5C,EAAiB,IAAIsB,EAAO,EAAE,GAAK,CAAA,GACvB,QAASiB,GAAWzC,EAAS,IAAIyC,CAAM,GAAK,EAAE,EAEhF,GAAIK,EAAY,QAAUvC,EAAaiB,EAAO,EAAE,EAAG,CACjD,MAAMuB,EAAWD,EAAY,IAAKZ,GAASD,EAAcC,EAAMV,EAAO,EAAE,CAAC,EAEzE,GAAIjB,EAAaiB,EAAO,EAAE,EAAG,CAC3B,MAAMwB,EAAQzC,EAAaiB,EAAO,EAAE,EAChCwB,EAAQ,GACVD,EAAS,KAAK,GAAGE,sBAAoBD,EAAO,CAAE,SAAUxB,EAAO,EAAA,CAAI,CAAC,CAExE,CAEAqB,EAAI,QAAUE,CAChB,CACF,CAEAL,EAAe,KAAKG,CAAG,CACzB,CAEA,OAAAH,EAAe,KAAK,GAAGJ,GAAoB,EAEpCI,CACT,CAGA,GAAI,CAACtC,EAAe,CAClB,MAAM8C,EAAuB,CAAA,EAG7B,UAAWhB,KAAQlC,EAAS,SACrBkC,EAAK,IACVgB,EAAS,KAAKjB,EAAcC,CAAI,CAAC,EAInC,UAAWW,KAAO5C,GAAQ,GACxBiD,EAAS,KAAKL,CAAG,EAInB,GAAIrC,EAAe,CAEjB,MAAMwC,EAAQnD,EACC,CACb,MAAMsD,EAAkBF,EAAAA,oBAAoBD,EAAO,CACjD,KAAM,MAAA,CACP,EAEDE,EAAS,KAAK,GAAGC,CAAe,CAClC,CACF,CAEA,OAAOD,CACT,CAGA,MAAME,MAAe,IACfC,EAAuB,CAAA,EAG7B,UAAWvB,KAAYH,EAAgB,CACrC,MAAMH,EAASzB,EAAW,IAAI+B,CAAQ,EACtC,GAAI,CAACN,EAAQ,SAEb,MAAMY,EAAQC,EAAAA,iBAAiBb,EAAO,MAAO,SAAUd,EAAQ,OAAO,EAEhEkC,EAAiBhC,EAAkB,SAAUY,EAAO,UAAU,EAG9DqB,EAAgB,CACpB,GAAIf,EACJ,WAAY,SACZ,SAAUN,EAAO,UAAY,OAC7B,SAAUM,GAAY,KACtB,KAAMN,EAAO,MAAQ,GACrB,MAAOA,EAAO,OAASA,EAAO,MAAQ,GACtC,KAAMoB,GAAgB,MAAQ,KAC9B,MAAOA,GAAgB,OAAS,KAChC,IAAK,KACL,QAAS,CAAA,EACT,OAAQpB,EAAO,OACf,KAAMA,EAAO,MAAQ,CAAA,EACrB,QAASA,EAAO,YAAc,KAC9B,UAAWA,EAAO,WAAa,CAAA,EAC/B,KAAMA,EAAO,KACb,OAAQA,EAAO,QAAQA,EAAO,QAAQ,OAAS,CAAC,GAAK,OACrD,OAAQA,EAAO,QAAU,CAAA,EACzB,eAAgBA,EAAO,gBAAkB,GACzC,UAAWA,EAAO,UAClB,UAAWA,EAAO,UAClB,cAAeA,EAAO,cACtB,eAAgBA,EAAO,gBAAkB,GACzC,YAAaA,EAAO,aAAe,GACnC,MAAAY,CAAA,EAWF,GARAgB,EAAS,IAAItB,EAAUe,CAAG,GAGtB,CAACrB,EAAO,UAAY,CAACzB,EAAW,IAAIyB,EAAO,QAAQ,IACrD6B,EAAS,KAAKR,CAAG,EAIf7B,EAAkB,IAAIc,CAAQ,EAAG,CAInC,MAAMgB,GADgB5C,EAAiB,IAAI4B,CAAQ,GAAK,CAAA,GACtB,QAASW,GAAWzC,EAAS,IAAIyC,CAAM,GAAK,EAAE,EAEhF,GAAIK,EAAY,QAAUvC,EAAauB,CAAQ,EAAG,CAEhD,MAAMiB,EAAW,IAAI,MAAgBD,EAAY,MAAM,EAGvD,QAASQ,EAAI,EAAGA,EAAIR,EAAY,OAAQQ,IACtCP,EAASO,CAAC,EAAIrB,EAAca,EAAYQ,CAAC,EAAGxB,CAAQ,EAItD,GAAIvB,EAAauB,CAAQ,EAAG,CAC1B,MAAMkB,EAAQzC,EAAauB,CAAQ,EACnC,GAAIkB,EAAQ,EAAG,CACb,MAAMG,EAAkBF,EAAAA,oBAAoBD,EAAO,CAAE,SAAUlB,EAAU,EAEzEiB,EAAS,KAAK,GAAGI,CAAe,CAClC,CACF,CAEAN,EAAI,QAAUE,CAChB,CACF,CACF,CAGA,UAAWjB,KAAYH,EAAgB,CACrC,MAAMF,EAAWL,EAAiB,IAAIU,CAAQ,EAC9C,GAAI,CAACL,GAAY,CAACT,EAAkB,IAAIS,CAAQ,EAAG,SAEnD,MAAM8B,EAAWH,EAAS,IAAItB,CAAQ,EAChC0B,EAAYJ,EAAS,IAAI3B,CAAQ,EAEnC,CAAC8B,GAAY,CAACC,GAGlBA,EAAU,SAAS,KAAKD,CAAQ,CAClC,CAEAF,EAAS,KAAK,GAAGf,GAAoB,EAGrC,UAAWO,KAAO5C,GAAQ,GACxBoD,EAAS,KAAKR,CAAG,EAGnB,OAAOQ,CACT,EAAG,CACDtD,EACAC,EACAE,EACAD,EACA0B,EACAP,EACAJ,EACAZ,EACAC,EACAC,EACAC,EACAC,EACAC,CAAA,CACD,CACH"}
1
+ {"version":3,"file":"useBuildProjectDataTable.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport {\n EditorTaskNode,\n FolderNodeMap,\n TableRow,\n TaskNodeMap,\n TasksByFolderMap,\n} from '../types/table'\nimport { ExpandedState } from '@tanstack/react-table'\nimport { generateLoadingRows } from '../utils/loadingUtils'\nconst TASKS_INFINITE_QUERY_COUNT = 100\nimport { LoadingTasks } from '../types'\nimport { useGetEntityTypeData } from './useGetEntityTypeData'\nimport { TableGroupBy } from '../context'\nimport { linksToTableData } from '../utils'\nimport { ProjectModelWithProducts, useProjectContext } from '@shared/context'\n\ntype Params = {\n foldersMap: FolderNodeMap\n tasksMap: TaskNodeMap\n tasksByFolderMap: TasksByFolderMap\n rows?: TableRow[]\n expanded: ExpandedState\n showHierarchy: boolean\n isFlatFolderView?: boolean\n showEmptyFolders?: boolean\n loadingTasks?: LoadingTasks\n isLoadingMore?: boolean\n groupBy?: TableGroupBy\n selectedFolders?: string[]\n}\n\nexport default function useBuildProjectDataTable({\n foldersMap,\n tasksMap,\n rows,\n tasksByFolderMap,\n expanded,\n showHierarchy,\n isFlatFolderView = false,\n showEmptyFolders = false,\n loadingTasks = {},\n isLoadingMore = false,\n selectedFolders = [],\n}: Params): TableRow[] {\n const project = useProjectContext()\n const getEntityTypeData = useGetEntityTypeData({ projectInfo: project })\n\n // Convert expanded object to a stable string for memoization comparison\n const expandedKey = useMemo(() => JSON.stringify(expanded), [expanded])\n\n // Memoize expandedFolderIds set for efficient lookups\n const expandedFolderIds = useMemo(() => {\n return new Set(\n Object.entries(expanded)\n .filter(([_, isExpanded]) => isExpanded)\n .map(([id]) => id),\n )\n }, [expandedKey])\n\n // Memoize relationship maps to avoid rebuilding them on every render\n const { childToParentMap, parentToChildrenMap } = useMemo(() => {\n const childToParent = new Map<string, string>()\n const parentToChildren = new Map<string, Set<string>>()\n\n // Construct relationship maps in a single pass\n for (const folder of foldersMap.values()) {\n if (!folder?.id) continue\n\n const parentId = folder.parentId\n if (parentId) {\n childToParent.set(folder.id, parentId)\n\n let children = parentToChildren.get(parentId)\n if (!children) {\n children = new Set<string>()\n parentToChildren.set(parentId, children)\n }\n children.add(folder.id)\n }\n }\n\n return { childToParentMap: childToParent, parentToChildrenMap: parentToChildren }\n }, [foldersMap])\n\n // Memoize visible folders calculation\n const visibleFolders = useMemo(() => {\n const visible = new Set<string>()\n\n // Start with root folders and folders with non-existent parents\n const queue: string[] = []\n for (const folder of foldersMap.values()) {\n if (!folder?.id) continue\n\n // Include folders with no parent OR with a parent that doesn't exist\n if (!folder.parentId || !foldersMap.has(folder.parentId)) {\n visible.add(folder.id)\n queue.push(folder.id)\n }\n }\n\n // Process queue to identify visible folders (BFS)\n while (queue.length > 0) {\n const folderId = queue.shift()!\n const isParentExpanded = expandedFolderIds.has(folderId)\n\n if (!isParentExpanded) continue\n\n // Add children of expanded folders to visible set\n const childrenIds = parentToChildrenMap.get(folderId)\n if (childrenIds) {\n for (const childId of childrenIds) {\n if (!visible.has(childId)) {\n visible.add(childId)\n queue.push(childId)\n }\n }\n }\n }\n\n return visible\n }, [foldersMap, parentToChildrenMap, expandedFolderIds])\n\n // Final memoized result - build the table tree\n return useMemo(() => {\n // Helper function to create a task row\n const createTaskRow = (task: EditorTaskNode, parentId?: string): TableRow => {\n const typeData = getEntityTypeData('task', task.taskType)\n\n const links = linksToTableData(task.links, 'task', project.anatomy)\n\n return {\n id: task.id,\n entityType: 'task',\n parentId: parentId || task.folderId,\n folderId: task.folderId,\n name: task.name || '',\n label: task.label || task.name || '',\n icon: typeData?.icon || null,\n color: typeData?.color || null,\n status: task.status,\n assignees: task.assignees,\n tags: task.tags,\n img: null,\n subRows: [],\n subType: task.taskType || null,\n attrib: task.attrib,\n ownAttrib: task.ownAttrib,\n parents: task.parents || [],\n path: task.parents.join('/') || null, // todo: probably remove this and just use parents\n folder: task.parents[task.parents.length - 1] || undefined,\n updatedAt: task.updatedAt,\n createdAt: task.createdAt,\n thumbnailHash: task.thumbnailHash,\n hasReviewables: task.hasReviewables || false,\n links: links,\n subtasks: task.subtasks || [],\n latestComments: task.latestComments || [],\n }\n }\n\n const createRootTaskRows = (): TableRow[] => {\n const rootTaskRows: TableRow[] = []\n for (const folderId of selectedFolders) {\n if (foldersMap.has(folderId)) continue\n const folderTaskIds = tasksByFolderMap.get(folderId) || []\n for (const taskId of folderTaskIds) {\n const task = tasksMap.get(taskId)\n if (task) rootTaskRows.push(createTaskRow(task))\n }\n }\n return rootTaskRows\n }\n\n // Flat folder view: all folders at root level, each expandable to show tasks\n if (isFlatFolderView) {\n const flatFolderRows: TableRow[] = []\n\n for (const folder of foldersMap.values()) {\n if (!folder?.id) continue\n\n // Use the folder's hasTasks flag (from REST data) to filter before tasks are loaded\n const hasTasks = folder.hasTasks ?? tasksByFolderMap.has(folder.id)\n // Skip folders without tasks when showEmptyFolders is off\n if (!showEmptyFolders && !hasTasks) continue\n\n const folderTypeData = getEntityTypeData('folder', folder.folderType)\n const links = linksToTableData(folder.links, 'folder', project.anatomy)\n\n const row: TableRow = {\n id: folder.id,\n entityType: 'folder',\n parentId: undefined, // flat — no parent nesting\n folderId: folder.id,\n name: folder.name || '',\n label: folder.label || folder.name || '',\n icon: folderTypeData?.icon || null,\n color: folderTypeData?.color || null,\n img: null,\n subRows: [],\n status: folder.status,\n tags: folder.tags || [],\n subType: folder.folderType || null,\n ownAttrib: folder.ownAttrib || [],\n path: folder.path,\n folder: folder.parents[folder.parents.length - 1] || undefined,\n attrib: folder.attrib || {},\n childOnlyMatch: folder.childOnlyMatch || false,\n updatedAt: folder.updatedAt,\n createdAt: folder.createdAt,\n thumbnailHash: folder.thumbnailHash,\n hasReviewables: folder.hasReviewables || false,\n hasVersions: folder.hasVersions || false,\n links: links,\n }\n\n // If folder is expanded, attach task subRows\n if (expandedFolderIds.has(folder.id)) {\n const folderTaskIds = tasksByFolderMap.get(folder.id) || []\n const folderTasks = folderTaskIds.flatMap((taskId) => tasksMap.get(taskId) || [])\n\n if (folderTasks.length || loadingTasks[folder.id]) {\n const taskRows = folderTasks.map((task) => createTaskRow(task, folder.id))\n\n if (loadingTasks[folder.id]) {\n const count = loadingTasks[folder.id]\n if (count > 0) {\n taskRows.push(...generateLoadingRows(count, { parentId: folder.id }))\n }\n }\n\n row.subRows = taskRows\n }\n }\n\n flatFolderRows.push(row)\n }\n\n flatFolderRows.push(...createRootTaskRows())\n\n return flatFolderRows\n }\n\n // If showHierarchy is false, create a flat list of task rows\n if (!showHierarchy) {\n const flatRows: TableRow[] = []\n\n // Loop through all tasks\n for (const task of tasksMap.values()) {\n if (!task.id) continue\n flatRows.push(createTaskRow(task))\n }\n\n // Loop through all extra rows\n for (const row of rows || []) {\n flatRows.push(row)\n }\n\n // if we are loading more tasks, add loading rows\n if (isLoadingMore) {\n // number of tasks we loading with the infinite query\n const count = TASKS_INFINITE_QUERY_COUNT\n if (count > 0) {\n const loadingTaskRows = generateLoadingRows(count, {\n type: 'task',\n })\n\n flatRows.push(...loadingTaskRows)\n }\n }\n\n return flatRows\n }\n\n // Use Map for O(1) lookups\n const rowsById = new Map<string, TableRow>()\n const rootRows: TableRow[] = []\n\n // Create minimal rows for only visible folders\n for (const folderId of visibleFolders) {\n const folder = foldersMap.get(folderId)\n if (!folder) continue\n\n const links = linksToTableData(folder.links, 'folder', project.anatomy)\n\n const folderTypeData = getEntityTypeData('folder', folder.folderType)\n\n // Create row with minimal required properties\n const row: TableRow = {\n id: folderId,\n entityType: 'folder',\n parentId: folder.parentId || undefined,\n folderId: folderId || null, // root folders have no folderId\n name: folder.name || '',\n label: folder.label || folder.name || '',\n icon: folderTypeData?.icon || null,\n color: folderTypeData?.color || null,\n img: null,\n subRows: [],\n status: folder.status,\n tags: folder.tags || [],\n subType: folder.folderType || null,\n ownAttrib: folder.ownAttrib || [],\n path: folder.path,\n folder: folder.parents[folder.parents.length - 1] || undefined,\n attrib: folder.attrib || {},\n childOnlyMatch: folder.childOnlyMatch || false,\n updatedAt: folder.updatedAt,\n createdAt: folder.createdAt,\n thumbnailHash: folder.thumbnailHash,\n hasReviewables: folder.hasReviewables || false,\n hasVersions: folder.hasVersions || false,\n links: links,\n }\n\n rowsById.set(folderId, row)\n\n // Add root rows directly to the rootRows array\n if (!folder.parentId || !foldersMap.has(folder.parentId)) {\n rootRows.push(row)\n }\n\n // Process tasks immediately if folder is expanded\n if (expandedFolderIds.has(folderId)) {\n // because tasksByFolderMap is a map of tasks by folder ID\n // we can directly get the tasks for the current folder\n const folderTaskIds = tasksByFolderMap.get(folderId) || []\n const folderTasks = folderTaskIds.flatMap((taskId) => tasksMap.get(taskId) || [])\n\n if (folderTasks.length || loadingTasks[folderId]) {\n // Use array literal with known length for better performance\n const taskRows = new Array<TableRow>(folderTasks.length)\n\n // Direct array assignment is faster than push operations\n for (let i = 0; i < folderTasks.length; i++) {\n taskRows[i] = createTaskRow(folderTasks[i], folderId)\n }\n\n // Add loading rows if applicable\n if (loadingTasks[folderId]) {\n const count = loadingTasks[folderId]\n if (count > 0) {\n const loadingTaskRows = generateLoadingRows(count, { parentId: folderId })\n\n taskRows.push(...loadingTaskRows)\n }\n }\n\n row.subRows = taskRows\n }\n }\n }\n\n // Build the folder hierarchy efficiently\n for (const folderId of visibleFolders) {\n const parentId = childToParentMap.get(folderId)\n if (!parentId || !expandedFolderIds.has(parentId)) continue\n\n const childRow = rowsById.get(folderId)\n const parentRow = rowsById.get(parentId)\n\n if (!childRow || !parentRow) continue\n\n // Add folder to its parent's subRows\n parentRow.subRows?.push(childRow)\n }\n\n rootRows.push(...createRootTaskRows())\n\n // Add any extra rows to the root rows\n for (const row of rows || []) {\n rootRows.push(row)\n }\n\n return rootRows\n }, [\n foldersMap,\n tasksMap,\n tasksByFolderMap,\n rows,\n visibleFolders,\n childToParentMap,\n expandedFolderIds,\n showHierarchy,\n isFlatFolderView,\n showEmptyFolders,\n loadingTasks,\n isLoadingMore,\n selectedFolders,\n ])\n}\n"],"names":["TASKS_INFINITE_QUERY_COUNT","useBuildProjectDataTable","foldersMap","tasksMap","rows","tasksByFolderMap","expanded","showHierarchy","isFlatFolderView","showEmptyFolders","loadingTasks","isLoadingMore","selectedFolders","project","useProjectContext","getEntityTypeData","useGetEntityTypeData","expandedKey","useMemo","expandedFolderIds","_","isExpanded","id","childToParentMap","parentToChildrenMap","childToParent","parentToChildren","folder","parentId","children","visibleFolders","visible","queue","folderId","childrenIds","childId","createTaskRow","task","typeData","links","linksToTableData","createRootTaskRows","rootTaskRows","folderTaskIds","taskId","flatFolderRows","hasTasks","folderTypeData","row","folderTasks","taskRows","count","generateLoadingRows","flatRows","loadingTaskRows","rowsById","rootRows","i","childRow","parentRow"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { useMemo as I } from "react";
2
- import { generateLoadingRows as D } from "../utils/loadingUtils.es.js";
2
+ import { generateLoadingRows as C } from "../utils/loadingUtils.es.js";
3
3
  import { useGetEntityTypeData as _ } from "./useGetEntityTypeData.es.js";
4
4
  import "@ynput/ayon-react-components";
5
5
  import "../../../components/SearchFilter/filterDates.es.js";
@@ -8,14 +8,20 @@ import "react-toastify";
8
8
  import "lodash";
9
9
  import "uuid";
10
10
  import "../../../util/pubsub.es.js";
11
- import "../context/CellEditingContext.es.js";
12
11
  import "../../../../../_virtual/jsx-runtime.es.js";
13
- import "../context/SelectionCellsContext.es.js";
14
- import "../context/ProjectTableQueriesContext.es.js";
15
- import "../context/ProjectTableContext.es.js";
16
- import "../../../context/RemoteModulesContext.es.js";
17
- import "../../../../../_virtual/runtime.es.js";
18
- import "../../../../../_virtual/semver.es.js";
12
+ import "clsx";
13
+ import "../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.es.js";
14
+ import "../../../components/AddonLoadingScreen/AddonLoadingScreen.es.js";
15
+ import "../../../../../node_modules/match-sorter/dist/match-sorter.esm.es.js";
16
+ import "../../../components/AccessSearchInput/AccessSearchInput.styled.es.js";
17
+ import "../../../components/AccessUser/AccessUser.es.js";
18
+ import "../../../components/AttributeEditor/AttributeEditor.es.js";
19
+ import "../../../components/AttributeEditor/attributeTypeMap.es.js";
20
+ import "../../../components/Badge/Badge.es.js";
21
+ import "../../../components/Chips/Chips.es.js";
22
+ import "react-dom";
23
+ import "../../../components/DateRangePicker/DateRangePicker.styled.es.js";
24
+ import "../../../components/LinksManager/CellEditingDialog.es.js";
19
25
  import "../../../api/base/client.es.js";
20
26
  import "../../../api/generated/graphql.es.js";
21
27
  import "../../../api/generated/graphqlLinks.es.js";
@@ -111,9 +117,25 @@ import "../../../api/queries/views/getViews.es.js";
111
117
  import "../../../api/queries/views/updateViews.es.js";
112
118
  import "../../../api/queries/watchers/getWatchers.es.js";
113
119
  import "../../../api/queries/uris/getUris.es.js";
114
- import "react-redux";
115
- import "custom-protocol-check";
116
- import "../components/GroupSettingsFallback.es.js";
120
+ import "../../../../../_virtual/index.es.js";
121
+ import "../../../../../node_modules/refractor/lib/common.es.js";
122
+ import "../../../../../node_modules/refractor/lib/all.es.js";
123
+ /* empty css */
124
+ import "../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js";
125
+ import "../../../components/DetailsPanelDetails/DetailsPanelDetails.es.js";
126
+ import "react-quill-ayon";
127
+ import "../../../components/DetailsPanelDetails/BorderedSection.es.js";
128
+ import "../../../components/QuillListStyles/QuillListStyles.es.js";
129
+ import "../../../components/DetailsPanelDetails/DescriptionSection.styles.es.js";
130
+ import "react-markdown";
131
+ import "remark-gfm";
132
+ import "rehype-raw";
133
+ import "../../Feed/components/CommentInput/quillToMarkdown.es.js";
134
+ import "../../../components/DetailsPanelDetails/hooks/useMentionSystem.es.js";
135
+ import "../../Feed/components/CommentInput/modules/index.es.js";
136
+ import "../../../context/RemoteModulesContext.es.js";
137
+ import "../../../../../_virtual/runtime.es.js";
138
+ import "../../../../../_virtual/semver.es.js";
117
139
  import "../../../context/PowerpackContextInstance.es.js";
118
140
  import "../../../context/UriContext.es.js";
119
141
  import "../../../context/DetailsPanelContextInstance.es.js";
@@ -121,7 +143,6 @@ import "../../../context/SubtasksModulesContextInstance.es.js";
121
143
  import "../../../context/ThumbnailUploaderContext.es.js";
122
144
  import "../../../context/SettingsPanelContext.es.js";
123
145
  import "../../../context/pip/PiPProvider.es.js";
124
- import "react-dom";
125
146
  import "../../../context/pip/PiPWrapper.es.js";
126
147
  import "../../../context/AddonProjectContext.es.js";
127
148
  import "../../../context/AddonContext.es.js";
@@ -131,14 +152,20 @@ import "../../../context/WebsocketContext.es.js";
131
152
  import "../../../context/GlobalContext.es.js";
132
153
  import { useProjectContext as V } from "../../../context/ProjectContext.es.js";
133
154
  import "../../../context/ProjectFoldersContext.es.js";
134
- import "../context/ClipboardContext.es.js";
135
- import "@tanstack/react-table";
136
- import "../context/ColumnSettingsContext.es.js";
137
- import "../context/SelectedRowsContext.es.js";
138
- import "../context/DetailsPanelEntityContext.es.js";
139
- /* empty css */
140
- import "clsx";
155
+ import "react-redux";
156
+ import "custom-protocol-check";
157
+ import "../components/GroupSettingsFallback.es.js";
158
+ import "../../../components/DetailsPanelDetails/DetailsSection.es.js";
159
+ import "../../../components/DetailsPanelDetails/FieldLabel.es.js";
160
+ import "../../../components/DoneCheckbox/DoneCheckbox.es.js";
161
+ import "../../../components/EarlyPreview/EarlyPreview.es.js";
162
+ import "../../../components/EmptyPlaceholder/EmptyPlaceholder.es.js";
163
+ import "../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.es.js";
164
+ import "@dnd-kit/core";
165
+ import "@dnd-kit/sortable";
166
+ import "../../../components/EnumEditor/EnumEditor.styled.es.js";
141
167
  import "../../ContextMenu/ContextMenuContext.es.js";
168
+ /* empty css */
142
169
  import "../../Feed/context/FeedContext.es.js";
143
170
  import "../../Feed/components/Tooltips/UserTooltipItem.es.js";
144
171
  import "../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.es.js";
@@ -146,95 +173,17 @@ import "../../Feed/components/Tooltips/TeamTooltip/TeamTooltip.styled.es.js";
146
173
  import "../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.es.js";
147
174
  import "../../Feed/components/FileUploadPreview/FileUploadPreview.styled.es.js";
148
175
  import "../../Feed/components/FileUploadPreview/Mimes/TextMime.es.js";
149
- import "react-markdown";
150
176
  import "remark-emoji";
151
- import "remark-gfm";
152
177
  import "remark-directive";
153
178
  import "remark-directive-rehype";
154
179
  import "../../Feed/components/CommentInput/CommentInput.es.js";
155
180
  import "../../Feed/components/ReactionContainer/Reactions.styled.es.js";
156
181
  import "../../Feed/components/FilesGrid/FilesGrid.styled.es.js";
157
182
  import "../../Feed/components/FileUploadCard/FileUploadCard.styled.es.js";
158
- import "../../Feed/components/CommentInput/quillToMarkdown.es.js";
159
183
  import "../../Feed/components/ActivityComment/ActivityComment.styled.es.js";
160
- import "../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.es.js";
161
- import "../../../components/AddonLoadingScreen/AddonLoadingScreen.es.js";
162
- import "../../../../../node_modules/match-sorter/dist/match-sorter.esm.es.js";
163
- import "../../../components/AccessSearchInput/AccessSearchInput.styled.es.js";
164
- import "../../../components/AccessUser/AccessUser.es.js";
165
- import "../../../components/AttributeEditor/AttributeEditor.es.js";
166
- import "../../../components/AttributeEditor/attributeTypeMap.es.js";
167
- import "../../../components/Badge/Badge.es.js";
168
- import "../../../components/Chips/Chips.es.js";
169
- import "../../../components/DateRangePicker/DateRangePicker.styled.es.js";
170
- import "../../../components/LinksManager/CellEditingDialog.es.js";
171
- import "../../../../../_virtual/index.es.js";
172
- import "../../../../../node_modules/refractor/lib/common.es.js";
173
- import "../../../../../node_modules/refractor/lib/all.es.js";
174
- /* empty css */
175
- import "../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js";
176
- import "../../../components/DetailsPanelDetails/DetailsPanelDetails.es.js";
177
- import "react-quill-ayon";
178
- import "../../../components/DetailsPanelDetails/BorderedSection.es.js";
179
- import "../../../components/QuillListStyles/QuillListStyles.es.js";
180
- import "../../../components/DetailsPanelDetails/DescriptionSection.styles.es.js";
181
- import "rehype-raw";
182
- import "../../../components/DetailsPanelDetails/hooks/useMentionSystem.es.js";
183
- import "../../Feed/components/CommentInput/modules/index.es.js";
184
- import "../../../components/DetailsPanelDetails/DetailsSection.es.js";
185
- import "../../../components/DetailsPanelDetails/FieldLabel.es.js";
186
- import "../../../components/DoneCheckbox/DoneCheckbox.es.js";
187
- import "../../../components/EarlyPreview/EarlyPreview.es.js";
188
- import "../../../components/EmptyPlaceholder/EmptyPlaceholder.es.js";
189
- import "../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.es.js";
190
- import "@dnd-kit/core";
191
- import "@dnd-kit/sortable";
192
- import "../../../components/EnumEditor/EnumEditor.styled.es.js";
193
- import "../../../components/EntityPanelUploader/EntityPanelUploader.styled.es.js";
194
- import "axios";
195
- import "../../../components/ReviewablesList/ReviewablesList.styled.es.js";
196
- import "../../../components/ReviewablesList/ReviewablesUpload.styled.es.js";
197
- import "../../../components/EntityPath/EntityPath.styled.es.js";
198
- import "../../../components/EntityPath/SegmentProvider.es.js";
199
- import "../../../components/FeaturedVersionOrder/FeaturedVersionOrder.es.js";
200
- import "../../../components/Feedback/FeedbackContextInstance.es.js";
201
- import "../../../components/Feedback/SupportBubble.es.js";
202
- import "../../../components/FileThumbnail/FileThumbnail.es.js";
203
- import "../../../components/LegacyBadge/LegacyBadge.es.js";
204
- import "../../../components/LinksManager/LinksManager.styled.es.js";
205
- import "../../EntityPickerDialog/EntityPickerDialog.es.js";
206
- import "../../../components/Powerpack/PowerpackButton.es.js";
207
- import "../../../components/Powerpack/FreeTrialLink.es.js";
208
- import "../../../components/Powerpack/PowerpackDialog.styled.es.js";
209
- import "../../../components/Powerpack/CTAButton.es.js";
210
- import "../../../components/Powerpack/RequiredAddonVersion.es.js";
211
- import "../../../components/ProjectTableSettings/ProjectTableSettings.es.js";
212
- import "../../../components/SizeSlider/SizeSlider.es.js";
213
- import "react-router-dom";
214
- import "../../Slicer/components/Slicer.es.js";
215
- import "../../Slicer/context/SlicerContext.es.js";
216
- import "../../Slicer/hooks/useTableDataBySlice.es.js";
217
- import "../../../components/ReviewableCard/ReviewableCard.es.js";
218
- import "../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
219
- import "../../../components/SettingsPanel/SettingsPanel.es.js";
220
- import "../../../components/SettingsPanel/SettingsPanelItemTemplate.es.js";
221
- import "../../../components/ShareOptionIcon/ShareOptionIcon.es.js";
222
- import "../../../components/SimpleFormDialog/SimpleFormDialog.es.js";
223
- import "../../../components/StyledLink/StyledLink.es.js";
224
- import "../../../components/TableGridSwitch/TableGridSwitch.es.js";
225
- import "../../../components/Thumbnail/Thumbnail.styled.es.js";
226
- import "../../../components/Thumbnail/StackedThumbnails.es.js";
227
- import "../../../components/ThumbnailSimple/ThumbnailSimple.es.js";
228
- import "../../../components/VersionUploader/components/UploadVersionDialog.es.js";
229
- import "../../../components/VersionUploader/context/VersionUploadContext.es.js";
230
- import "../../../components/Watchers/Watchers.es.js";
231
- import "../../../components/Menu/Menu.styled.es.js";
232
- import "../../../components/Menu/MenuItem.es.js";
233
- import "../../../components/ReviewablesSelector/ReviewablesSelector.es.js";
234
- import "../../../components/ColumnHeaderMenuUI.es.js";
235
- import "../../Feed/components/ActivityReference/ActivityReference.styled.es.js";
236
184
  import "../../Feed/components/ActivityStatus/ActivityStatus.es.js";
237
185
  import "../../Feed/components/ActivityHeader/ActivityHeader.styled.es.js";
186
+ import "../../Feed/components/ActivityReference/ActivityReference.styled.es.js";
238
187
  import "../../Feed/components/ActivityDate.es.js";
239
188
  import "../../Feed/components/ActivityCategorySelect/CategoryTag.es.js";
240
189
  import "../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.es.js";
@@ -245,8 +194,9 @@ import "../../Feed/components/ActivityVersionReview/ActivityVersionReview.styled
245
194
  import "../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js";
246
195
  import "../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js";
247
196
  import "../../Feed/Feed.styled.es.js";
248
- import "../../DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js";
197
+ import "../../Feed/components/FeedSearchFilter.es.js";
249
198
  import "@tanstack/react-virtual";
199
+ import "@tanstack/react-table";
250
200
  import "../widgets/CollapsedWidget.es.js";
251
201
  import "../widgets/DateWidget.es.js";
252
202
  import "../widgets/EnumWidget.es.js";
@@ -258,6 +208,10 @@ import "../widgets/CellWidget.es.js";
258
208
  import "../widgets/EntityNameWidget.es.js";
259
209
  import "../widgets/GroupHeaderWidget.es.js";
260
210
  import "../widgets/ThumbnailWidget.es.js";
211
+ import "../context/DetailsPanelEntityContext.es.js";
212
+ import "../context/SelectedRowsContext.es.js";
213
+ import "../../../components/LinksManager/LinksManager.styled.es.js";
214
+ import "../context/ProjectTableContext.es.js";
261
215
  import "../widgets/EmptyWidget.es.js";
262
216
  import "../widgets/ErrorWidget.es.js";
263
217
  import "../ProjectTreeTable.styled.es.js";
@@ -265,14 +219,26 @@ import "../components/SelectionCell.es.js";
265
219
  import "../components/RowSelectionHeader.es.js";
266
220
  import "../widgets/LoadMoreWidget.es.js";
267
221
  import "../components/HeaderActionButton.es.js";
268
- import "../components/TableFooterRow.es.js";
222
+ import "../context/ProjectTableQueriesContext.es.js";
223
+ import "../components/DeleteConfirmContent.es.js";
224
+ import "../context/ClipboardContext.es.js";
225
+ import "../context/SelectionCellsContext.es.js";
269
226
  import "../context/ProjectDataContext.es.js";
227
+ import "../context/CellEditingContext.es.js";
228
+ import "../components/TableFooterRow.es.js";
229
+ import "../context/ColumnSettingsContext.es.js";
230
+ import "../../EntityPickerDialog/EntityPickerDialog.es.js";
231
+ import "../../Slicer/components/Slicer.es.js";
232
+ import "../../Slicer/context/SlicerContext.es.js";
233
+ import "../../Slicer/hooks/useTableDataBySlice.es.js";
270
234
  import "../../DetailsPanel/DetailsPanel.styled.es.js";
271
235
  import "../../DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.es.js";
272
236
  import "../../DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.es.js";
273
237
  import "../../../components/PlayableIcon/PlayableIcon.es.js";
274
238
  import "../../DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js";
275
239
  import "../../DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.es.js";
240
+ import "../../DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js";
241
+ import "../../DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.es.js";
276
242
  import "../../DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.es.js";
277
243
  import "../../DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.es.js";
278
244
  import "../../Actions/Actions.styled.es.js";
@@ -284,20 +250,57 @@ import "../../Views/Views.styled.es.js";
284
250
  import "../../Views/ViewsMenuContainer/ViewsMenuContainer.es.js";
285
251
  import "../../ListTable/ListTableRow.es.js";
286
252
  import "../../ListTable/ListTable.styled.es.js";
287
- import "../components/DeleteConfirmContent.es.js";
288
- import { linksToTableData as O } from "../utils/linksToTableData.es.js";
253
+ import "../../../components/EntityPanelUploader/EntityPanelUploader.styled.es.js";
254
+ import "axios";
255
+ import "../../../components/ReviewablesList/ReviewablesList.styled.es.js";
256
+ import "../../../components/ReviewablesList/ReviewablesUpload.styled.es.js";
257
+ import "../../../components/EntityPath/EntityPath.styled.es.js";
258
+ import "../../../components/EntityPath/SegmentProvider.es.js";
259
+ import "../../../components/FeaturedVersionOrder/FeaturedVersionOrder.es.js";
260
+ import "../../../components/Feedback/FeedbackContextInstance.es.js";
261
+ import "../../../components/Feedback/SupportBubble.es.js";
262
+ import "../../../components/FileThumbnail/FileThumbnail.es.js";
263
+ import "../../../components/LegacyBadge/LegacyBadge.es.js";
264
+ import "../../../components/Powerpack/PowerpackButton.es.js";
265
+ import "../../../components/Powerpack/FreeTrialLink.es.js";
266
+ import "../../../components/Powerpack/PowerpackDialog.styled.es.js";
267
+ import "../../../components/Powerpack/CTAButton.es.js";
268
+ import "../../../components/Powerpack/RequiredAddonVersion.es.js";
269
+ import "../../../components/ProjectTableSettings/ProjectTableSettings.es.js";
270
+ import "../../../components/SizeSlider/SizeSlider.es.js";
271
+ import "react-router-dom";
272
+ import "../../../components/ReviewableCard/ReviewableCard.es.js";
273
+ import "../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
274
+ import "../../../components/SearchFilter/CustomDateRangeDialog.es.js";
275
+ import "../../../components/SettingsPanel/SettingsPanel.es.js";
276
+ import "../../../components/SettingsPanel/SettingsPanelItemTemplate.es.js";
277
+ import "../../../components/ShareOptionIcon/ShareOptionIcon.es.js";
278
+ import "../../../components/SimpleFormDialog/SimpleFormDialog.es.js";
279
+ import "../../../components/StyledLink/StyledLink.es.js";
280
+ import "../../../components/TableGridSwitch/TableGridSwitch.es.js";
281
+ import "../../../components/Thumbnail/Thumbnail.styled.es.js";
282
+ import "../../../components/Thumbnail/StackedThumbnails.es.js";
283
+ import "../../../components/ThumbnailSimple/ThumbnailSimple.es.js";
284
+ import "../../../components/VersionUploader/components/UploadVersionDialog.es.js";
285
+ import "../../../components/VersionUploader/context/VersionUploadContext.es.js";
286
+ import "../../../components/Watchers/Watchers.es.js";
287
+ import "../../../components/Menu/Menu.styled.es.js";
288
+ import "../../../components/Menu/MenuItem.es.js";
289
+ import "../../../components/ReviewablesSelector/ReviewablesSelector.es.js";
290
+ import "../../../components/ColumnHeaderMenuUI.es.js";
291
+ import { linksToTableData as D } from "../utils/linksToTableData.es.js";
289
292
  const K = 100;
290
- function rm({
293
+ function em({
291
294
  foldersMap: s,
292
295
  tasksMap: h,
293
296
  rows: g,
294
297
  tasksByFolderMap: b,
295
298
  expanded: y,
296
- showHierarchy: P,
297
- isFlatFolderView: j = !1,
298
- showEmptyFolders: S = !1,
299
+ showHierarchy: O,
300
+ isFlatFolderView: P = !1,
301
+ showEmptyFolders: j = !1,
299
302
  loadingTasks: c = {},
300
- isLoadingMore: C = !1,
303
+ isLoadingMore: S = !1,
301
304
  selectedFolders: E = []
302
305
  }) {
303
306
  const T = V(), R = _({ projectInfo: T }), N = I(() => JSON.stringify(y), [y]), f = I(() => new Set(
@@ -330,7 +333,7 @@ function rm({
330
333
  }, [s, x, f]);
331
334
  return I(() => {
332
335
  const r = (o, t) => {
333
- const m = R("task", o.taskType), e = O(o.links, "task", T.anatomy);
336
+ const m = R("task", o.taskType), e = D(o.links, "task", T.anatomy);
334
337
  return {
335
338
  id: o.id,
336
339
  entityType: "task",
@@ -357,7 +360,8 @@ function rm({
357
360
  thumbnailHash: o.thumbnailHash,
358
361
  hasReviewables: o.hasReviewables || !1,
359
362
  links: e,
360
- subtasks: o.subtasks || []
363
+ subtasks: o.subtasks || [],
364
+ latestComments: o.latestComments || []
361
365
  };
362
366
  }, p = () => {
363
367
  const o = [];
@@ -371,13 +375,13 @@ function rm({
371
375
  }
372
376
  return o;
373
377
  };
374
- if (j) {
378
+ if (P) {
375
379
  const o = [];
376
380
  for (const t of s.values()) {
377
381
  if (!t?.id) continue;
378
382
  const m = t.hasTasks ?? b.has(t.id);
379
- if (!S && !m) continue;
380
- const e = R("folder", t.folderType), l = O(t.links, "folder", T.anatomy), v = {
383
+ if (!j && !m) continue;
384
+ const e = R("folder", t.folderType), l = D(t.links, "folder", T.anatomy), v = {
381
385
  id: t.id,
382
386
  entityType: "folder",
383
387
  parentId: void 0,
@@ -410,7 +414,7 @@ function rm({
410
414
  const n = d.map((u) => r(u, t.id));
411
415
  if (c[t.id]) {
412
416
  const u = c[t.id];
413
- u > 0 && n.push(...D(u, { parentId: t.id }));
417
+ u > 0 && n.push(...C(u, { parentId: t.id }));
414
418
  }
415
419
  v.subRows = n;
416
420
  }
@@ -419,16 +423,16 @@ function rm({
419
423
  }
420
424
  return o.push(...p()), o;
421
425
  }
422
- if (!P) {
426
+ if (!O) {
423
427
  const o = [];
424
428
  for (const t of h.values())
425
429
  t.id && o.push(r(t));
426
430
  for (const t of g || [])
427
431
  o.push(t);
428
- if (C) {
432
+ if (S) {
429
433
  const t = K;
430
434
  {
431
- const m = D(t, {
435
+ const m = C(t, {
432
436
  type: "task"
433
437
  });
434
438
  o.push(...m);
@@ -440,7 +444,7 @@ function rm({
440
444
  for (const o of A) {
441
445
  const t = s.get(o);
442
446
  if (!t) continue;
443
- const m = O(t.links, "folder", T.anatomy), e = R("folder", t.folderType), l = {
447
+ const m = D(t.links, "folder", T.anatomy), e = R("folder", t.folderType), l = {
444
448
  id: o,
445
449
  entityType: "folder",
446
450
  parentId: t.parentId || void 0,
@@ -476,7 +480,7 @@ function rm({
476
480
  if (c[o]) {
477
481
  const n = c[o];
478
482
  if (n > 0) {
479
- const u = D(n, { parentId: o });
483
+ const u = C(n, { parentId: o });
480
484
  d.push(...u);
481
485
  }
482
486
  }
@@ -502,15 +506,15 @@ function rm({
502
506
  A,
503
507
  H,
504
508
  f,
509
+ O,
505
510
  P,
506
511
  j,
507
- S,
508
512
  c,
509
- C,
513
+ S,
510
514
  E
511
515
  ]);
512
516
  }
513
517
  export {
514
- rm as default
518
+ em as default
515
519
  };
516
520
  //# sourceMappingURL=useBuildProjectDataTable.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useBuildProjectDataTable.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport {\n EditorTaskNode,\n FolderNodeMap,\n TableRow,\n TaskNodeMap,\n TasksByFolderMap,\n} from '../types/table'\nimport { ExpandedState } from '@tanstack/react-table'\nimport { generateLoadingRows } from '../utils/loadingUtils'\nconst TASKS_INFINITE_QUERY_COUNT = 100\nimport { LoadingTasks } from '../types'\nimport { useGetEntityTypeData } from './useGetEntityTypeData'\nimport { TableGroupBy } from '../context'\nimport { linksToTableData } from '../utils'\nimport { ProjectModelWithProducts, useProjectContext } from '@shared/context'\n\ntype Params = {\n foldersMap: FolderNodeMap\n tasksMap: TaskNodeMap\n tasksByFolderMap: TasksByFolderMap\n rows?: TableRow[]\n expanded: ExpandedState\n showHierarchy: boolean\n isFlatFolderView?: boolean\n showEmptyFolders?: boolean\n loadingTasks?: LoadingTasks\n isLoadingMore?: boolean\n groupBy?: TableGroupBy\n selectedFolders?: string[]\n}\n\nexport default function useBuildProjectDataTable({\n foldersMap,\n tasksMap,\n rows,\n tasksByFolderMap,\n expanded,\n showHierarchy,\n isFlatFolderView = false,\n showEmptyFolders = false,\n loadingTasks = {},\n isLoadingMore = false,\n selectedFolders = [],\n}: Params): TableRow[] {\n const project = useProjectContext()\n const getEntityTypeData = useGetEntityTypeData({ projectInfo: project })\n\n // Convert expanded object to a stable string for memoization comparison\n const expandedKey = useMemo(() => JSON.stringify(expanded), [expanded])\n\n // Memoize expandedFolderIds set for efficient lookups\n const expandedFolderIds = useMemo(() => {\n return new Set(\n Object.entries(expanded)\n .filter(([_, isExpanded]) => isExpanded)\n .map(([id]) => id),\n )\n }, [expandedKey])\n\n // Memoize relationship maps to avoid rebuilding them on every render\n const { childToParentMap, parentToChildrenMap } = useMemo(() => {\n const childToParent = new Map<string, string>()\n const parentToChildren = new Map<string, Set<string>>()\n\n // Construct relationship maps in a single pass\n for (const folder of foldersMap.values()) {\n if (!folder?.id) continue\n\n const parentId = folder.parentId\n if (parentId) {\n childToParent.set(folder.id, parentId)\n\n let children = parentToChildren.get(parentId)\n if (!children) {\n children = new Set<string>()\n parentToChildren.set(parentId, children)\n }\n children.add(folder.id)\n }\n }\n\n return { childToParentMap: childToParent, parentToChildrenMap: parentToChildren }\n }, [foldersMap])\n\n // Memoize visible folders calculation\n const visibleFolders = useMemo(() => {\n const visible = new Set<string>()\n\n // Start with root folders and folders with non-existent parents\n const queue: string[] = []\n for (const folder of foldersMap.values()) {\n if (!folder?.id) continue\n\n // Include folders with no parent OR with a parent that doesn't exist\n if (!folder.parentId || !foldersMap.has(folder.parentId)) {\n visible.add(folder.id)\n queue.push(folder.id)\n }\n }\n\n // Process queue to identify visible folders (BFS)\n while (queue.length > 0) {\n const folderId = queue.shift()!\n const isParentExpanded = expandedFolderIds.has(folderId)\n\n if (!isParentExpanded) continue\n\n // Add children of expanded folders to visible set\n const childrenIds = parentToChildrenMap.get(folderId)\n if (childrenIds) {\n for (const childId of childrenIds) {\n if (!visible.has(childId)) {\n visible.add(childId)\n queue.push(childId)\n }\n }\n }\n }\n\n return visible\n }, [foldersMap, parentToChildrenMap, expandedFolderIds])\n\n // Final memoized result - build the table tree\n return useMemo(() => {\n // Helper function to create a task row\n const createTaskRow = (task: EditorTaskNode, parentId?: string): TableRow => {\n const typeData = getEntityTypeData('task', task.taskType)\n\n const links = linksToTableData(task.links, 'task', project.anatomy)\n\n return {\n id: task.id,\n entityType: 'task',\n parentId: parentId || task.folderId,\n folderId: task.folderId,\n name: task.name || '',\n label: task.label || task.name || '',\n icon: typeData?.icon || null,\n color: typeData?.color || null,\n status: task.status,\n assignees: task.assignees,\n tags: task.tags,\n img: null,\n subRows: [],\n subType: task.taskType || null,\n attrib: task.attrib,\n ownAttrib: task.ownAttrib,\n parents: task.parents || [],\n path: task.parents.join('/') || null, // todo: probably remove this and just use parents\n folder: task.parents[task.parents.length - 1] || undefined,\n updatedAt: task.updatedAt,\n createdAt: task.createdAt,\n thumbnailHash: task.thumbnailHash,\n hasReviewables: task.hasReviewables || false,\n links: links,\n subtasks: task.subtasks || [],\n }\n }\n\n const createRootTaskRows = (): TableRow[] => {\n const rootTaskRows: TableRow[] = []\n for (const folderId of selectedFolders) {\n if (foldersMap.has(folderId)) continue\n const folderTaskIds = tasksByFolderMap.get(folderId) || []\n for (const taskId of folderTaskIds) {\n const task = tasksMap.get(taskId)\n if (task) rootTaskRows.push(createTaskRow(task))\n }\n }\n return rootTaskRows\n }\n\n // Flat folder view: all folders at root level, each expandable to show tasks\n if (isFlatFolderView) {\n const flatFolderRows: TableRow[] = []\n\n for (const folder of foldersMap.values()) {\n if (!folder?.id) continue\n\n // Use the folder's hasTasks flag (from REST data) to filter before tasks are loaded\n const hasTasks = folder.hasTasks ?? tasksByFolderMap.has(folder.id)\n // Skip folders without tasks when showEmptyFolders is off\n if (!showEmptyFolders && !hasTasks) continue\n\n const folderTypeData = getEntityTypeData('folder', folder.folderType)\n const links = linksToTableData(folder.links, 'folder', project.anatomy)\n\n const row: TableRow = {\n id: folder.id,\n entityType: 'folder',\n parentId: undefined, // flat — no parent nesting\n folderId: folder.id,\n name: folder.name || '',\n label: folder.label || folder.name || '',\n icon: folderTypeData?.icon || null,\n color: folderTypeData?.color || null,\n img: null,\n subRows: [],\n status: folder.status,\n tags: folder.tags || [],\n subType: folder.folderType || null,\n ownAttrib: folder.ownAttrib || [],\n path: folder.path,\n folder: folder.parents[folder.parents.length - 1] || undefined,\n attrib: folder.attrib || {},\n childOnlyMatch: folder.childOnlyMatch || false,\n updatedAt: folder.updatedAt,\n createdAt: folder.createdAt,\n thumbnailHash: folder.thumbnailHash,\n hasReviewables: folder.hasReviewables || false,\n hasVersions: folder.hasVersions || false,\n links: links,\n }\n\n // If folder is expanded, attach task subRows\n if (expandedFolderIds.has(folder.id)) {\n const folderTaskIds = tasksByFolderMap.get(folder.id) || []\n const folderTasks = folderTaskIds.flatMap((taskId) => tasksMap.get(taskId) || [])\n\n if (folderTasks.length || loadingTasks[folder.id]) {\n const taskRows = folderTasks.map((task) => createTaskRow(task, folder.id))\n\n if (loadingTasks[folder.id]) {\n const count = loadingTasks[folder.id]\n if (count > 0) {\n taskRows.push(...generateLoadingRows(count, { parentId: folder.id }))\n }\n }\n\n row.subRows = taskRows\n }\n }\n\n flatFolderRows.push(row)\n }\n\n flatFolderRows.push(...createRootTaskRows())\n\n return flatFolderRows\n }\n\n // If showHierarchy is false, create a flat list of task rows\n if (!showHierarchy) {\n const flatRows: TableRow[] = []\n\n // Loop through all tasks\n for (const task of tasksMap.values()) {\n if (!task.id) continue\n flatRows.push(createTaskRow(task))\n }\n\n // Loop through all extra rows\n for (const row of rows || []) {\n flatRows.push(row)\n }\n\n // if we are loading more tasks, add loading rows\n if (isLoadingMore) {\n // number of tasks we loading with the infinite query\n const count = TASKS_INFINITE_QUERY_COUNT\n if (count > 0) {\n const loadingTaskRows = generateLoadingRows(count, {\n type: 'task',\n })\n\n flatRows.push(...loadingTaskRows)\n }\n }\n\n return flatRows\n }\n\n // Use Map for O(1) lookups\n const rowsById = new Map<string, TableRow>()\n const rootRows: TableRow[] = []\n\n // Create minimal rows for only visible folders\n for (const folderId of visibleFolders) {\n const folder = foldersMap.get(folderId)\n if (!folder) continue\n\n const links = linksToTableData(folder.links, 'folder', project.anatomy)\n\n const folderTypeData = getEntityTypeData('folder', folder.folderType)\n\n // Create row with minimal required properties\n const row: TableRow = {\n id: folderId,\n entityType: 'folder',\n parentId: folder.parentId || undefined,\n folderId: folderId || null, // root folders have no folderId\n name: folder.name || '',\n label: folder.label || folder.name || '',\n icon: folderTypeData?.icon || null,\n color: folderTypeData?.color || null,\n img: null,\n subRows: [],\n status: folder.status,\n tags: folder.tags || [],\n subType: folder.folderType || null,\n ownAttrib: folder.ownAttrib || [],\n path: folder.path,\n folder: folder.parents[folder.parents.length - 1] || undefined,\n attrib: folder.attrib || {},\n childOnlyMatch: folder.childOnlyMatch || false,\n updatedAt: folder.updatedAt,\n createdAt: folder.createdAt,\n thumbnailHash: folder.thumbnailHash,\n hasReviewables: folder.hasReviewables || false,\n hasVersions: folder.hasVersions || false,\n links: links,\n }\n\n rowsById.set(folderId, row)\n\n // Add root rows directly to the rootRows array\n if (!folder.parentId || !foldersMap.has(folder.parentId)) {\n rootRows.push(row)\n }\n\n // Process tasks immediately if folder is expanded\n if (expandedFolderIds.has(folderId)) {\n // because tasksByFolderMap is a map of tasks by folder ID\n // we can directly get the tasks for the current folder\n const folderTaskIds = tasksByFolderMap.get(folderId) || []\n const folderTasks = folderTaskIds.flatMap((taskId) => tasksMap.get(taskId) || [])\n\n if (folderTasks.length || loadingTasks[folderId]) {\n // Use array literal with known length for better performance\n const taskRows = new Array<TableRow>(folderTasks.length)\n\n // Direct array assignment is faster than push operations\n for (let i = 0; i < folderTasks.length; i++) {\n taskRows[i] = createTaskRow(folderTasks[i], folderId)\n }\n\n // Add loading rows if applicable\n if (loadingTasks[folderId]) {\n const count = loadingTasks[folderId]\n if (count > 0) {\n const loadingTaskRows = generateLoadingRows(count, { parentId: folderId })\n\n taskRows.push(...loadingTaskRows)\n }\n }\n\n row.subRows = taskRows\n }\n }\n }\n\n // Build the folder hierarchy efficiently\n for (const folderId of visibleFolders) {\n const parentId = childToParentMap.get(folderId)\n if (!parentId || !expandedFolderIds.has(parentId)) continue\n\n const childRow = rowsById.get(folderId)\n const parentRow = rowsById.get(parentId)\n\n if (!childRow || !parentRow) continue\n\n // Add folder to its parent's subRows\n parentRow.subRows?.push(childRow)\n }\n\n rootRows.push(...createRootTaskRows())\n\n // Add any extra rows to the root rows\n for (const row of rows || []) {\n rootRows.push(row)\n }\n\n return rootRows\n }, [\n foldersMap,\n tasksMap,\n tasksByFolderMap,\n rows,\n visibleFolders,\n childToParentMap,\n expandedFolderIds,\n showHierarchy,\n isFlatFolderView,\n showEmptyFolders,\n loadingTasks,\n isLoadingMore,\n selectedFolders,\n ])\n}\n"],"names":["TASKS_INFINITE_QUERY_COUNT","useBuildProjectDataTable","foldersMap","tasksMap","rows","tasksByFolderMap","expanded","showHierarchy","isFlatFolderView","showEmptyFolders","loadingTasks","isLoadingMore","selectedFolders","project","useProjectContext","getEntityTypeData","useGetEntityTypeData","expandedKey","useMemo","expandedFolderIds","_","isExpanded","id","childToParentMap","parentToChildrenMap","childToParent","parentToChildren","folder","parentId","children","visibleFolders","visible","queue","folderId","childrenIds","childId","createTaskRow","task","typeData","links","linksToTableData","createRootTaskRows","rootTaskRows","folderTaskIds","taskId","flatFolderRows","hasTasks","folderTypeData","row","folderTasks","taskRows","count","generateLoadingRows","flatRows","loadingTaskRows","rowsById","rootRows","i","childRow","parentRow"],"mappings":"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"}
1
+ {"version":3,"file":"useBuildProjectDataTable.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport {\n EditorTaskNode,\n FolderNodeMap,\n TableRow,\n TaskNodeMap,\n TasksByFolderMap,\n} from '../types/table'\nimport { ExpandedState } from '@tanstack/react-table'\nimport { generateLoadingRows } from '../utils/loadingUtils'\nconst TASKS_INFINITE_QUERY_COUNT = 100\nimport { LoadingTasks } from '../types'\nimport { useGetEntityTypeData } from './useGetEntityTypeData'\nimport { TableGroupBy } from '../context'\nimport { linksToTableData } from '../utils'\nimport { ProjectModelWithProducts, useProjectContext } from '@shared/context'\n\ntype Params = {\n foldersMap: FolderNodeMap\n tasksMap: TaskNodeMap\n tasksByFolderMap: TasksByFolderMap\n rows?: TableRow[]\n expanded: ExpandedState\n showHierarchy: boolean\n isFlatFolderView?: boolean\n showEmptyFolders?: boolean\n loadingTasks?: LoadingTasks\n isLoadingMore?: boolean\n groupBy?: TableGroupBy\n selectedFolders?: string[]\n}\n\nexport default function useBuildProjectDataTable({\n foldersMap,\n tasksMap,\n rows,\n tasksByFolderMap,\n expanded,\n showHierarchy,\n isFlatFolderView = false,\n showEmptyFolders = false,\n loadingTasks = {},\n isLoadingMore = false,\n selectedFolders = [],\n}: Params): TableRow[] {\n const project = useProjectContext()\n const getEntityTypeData = useGetEntityTypeData({ projectInfo: project })\n\n // Convert expanded object to a stable string for memoization comparison\n const expandedKey = useMemo(() => JSON.stringify(expanded), [expanded])\n\n // Memoize expandedFolderIds set for efficient lookups\n const expandedFolderIds = useMemo(() => {\n return new Set(\n Object.entries(expanded)\n .filter(([_, isExpanded]) => isExpanded)\n .map(([id]) => id),\n )\n }, [expandedKey])\n\n // Memoize relationship maps to avoid rebuilding them on every render\n const { childToParentMap, parentToChildrenMap } = useMemo(() => {\n const childToParent = new Map<string, string>()\n const parentToChildren = new Map<string, Set<string>>()\n\n // Construct relationship maps in a single pass\n for (const folder of foldersMap.values()) {\n if (!folder?.id) continue\n\n const parentId = folder.parentId\n if (parentId) {\n childToParent.set(folder.id, parentId)\n\n let children = parentToChildren.get(parentId)\n if (!children) {\n children = new Set<string>()\n parentToChildren.set(parentId, children)\n }\n children.add(folder.id)\n }\n }\n\n return { childToParentMap: childToParent, parentToChildrenMap: parentToChildren }\n }, [foldersMap])\n\n // Memoize visible folders calculation\n const visibleFolders = useMemo(() => {\n const visible = new Set<string>()\n\n // Start with root folders and folders with non-existent parents\n const queue: string[] = []\n for (const folder of foldersMap.values()) {\n if (!folder?.id) continue\n\n // Include folders with no parent OR with a parent that doesn't exist\n if (!folder.parentId || !foldersMap.has(folder.parentId)) {\n visible.add(folder.id)\n queue.push(folder.id)\n }\n }\n\n // Process queue to identify visible folders (BFS)\n while (queue.length > 0) {\n const folderId = queue.shift()!\n const isParentExpanded = expandedFolderIds.has(folderId)\n\n if (!isParentExpanded) continue\n\n // Add children of expanded folders to visible set\n const childrenIds = parentToChildrenMap.get(folderId)\n if (childrenIds) {\n for (const childId of childrenIds) {\n if (!visible.has(childId)) {\n visible.add(childId)\n queue.push(childId)\n }\n }\n }\n }\n\n return visible\n }, [foldersMap, parentToChildrenMap, expandedFolderIds])\n\n // Final memoized result - build the table tree\n return useMemo(() => {\n // Helper function to create a task row\n const createTaskRow = (task: EditorTaskNode, parentId?: string): TableRow => {\n const typeData = getEntityTypeData('task', task.taskType)\n\n const links = linksToTableData(task.links, 'task', project.anatomy)\n\n return {\n id: task.id,\n entityType: 'task',\n parentId: parentId || task.folderId,\n folderId: task.folderId,\n name: task.name || '',\n label: task.label || task.name || '',\n icon: typeData?.icon || null,\n color: typeData?.color || null,\n status: task.status,\n assignees: task.assignees,\n tags: task.tags,\n img: null,\n subRows: [],\n subType: task.taskType || null,\n attrib: task.attrib,\n ownAttrib: task.ownAttrib,\n parents: task.parents || [],\n path: task.parents.join('/') || null, // todo: probably remove this and just use parents\n folder: task.parents[task.parents.length - 1] || undefined,\n updatedAt: task.updatedAt,\n createdAt: task.createdAt,\n thumbnailHash: task.thumbnailHash,\n hasReviewables: task.hasReviewables || false,\n links: links,\n subtasks: task.subtasks || [],\n latestComments: task.latestComments || [],\n }\n }\n\n const createRootTaskRows = (): TableRow[] => {\n const rootTaskRows: TableRow[] = []\n for (const folderId of selectedFolders) {\n if (foldersMap.has(folderId)) continue\n const folderTaskIds = tasksByFolderMap.get(folderId) || []\n for (const taskId of folderTaskIds) {\n const task = tasksMap.get(taskId)\n if (task) rootTaskRows.push(createTaskRow(task))\n }\n }\n return rootTaskRows\n }\n\n // Flat folder view: all folders at root level, each expandable to show tasks\n if (isFlatFolderView) {\n const flatFolderRows: TableRow[] = []\n\n for (const folder of foldersMap.values()) {\n if (!folder?.id) continue\n\n // Use the folder's hasTasks flag (from REST data) to filter before tasks are loaded\n const hasTasks = folder.hasTasks ?? tasksByFolderMap.has(folder.id)\n // Skip folders without tasks when showEmptyFolders is off\n if (!showEmptyFolders && !hasTasks) continue\n\n const folderTypeData = getEntityTypeData('folder', folder.folderType)\n const links = linksToTableData(folder.links, 'folder', project.anatomy)\n\n const row: TableRow = {\n id: folder.id,\n entityType: 'folder',\n parentId: undefined, // flat — no parent nesting\n folderId: folder.id,\n name: folder.name || '',\n label: folder.label || folder.name || '',\n icon: folderTypeData?.icon || null,\n color: folderTypeData?.color || null,\n img: null,\n subRows: [],\n status: folder.status,\n tags: folder.tags || [],\n subType: folder.folderType || null,\n ownAttrib: folder.ownAttrib || [],\n path: folder.path,\n folder: folder.parents[folder.parents.length - 1] || undefined,\n attrib: folder.attrib || {},\n childOnlyMatch: folder.childOnlyMatch || false,\n updatedAt: folder.updatedAt,\n createdAt: folder.createdAt,\n thumbnailHash: folder.thumbnailHash,\n hasReviewables: folder.hasReviewables || false,\n hasVersions: folder.hasVersions || false,\n links: links,\n }\n\n // If folder is expanded, attach task subRows\n if (expandedFolderIds.has(folder.id)) {\n const folderTaskIds = tasksByFolderMap.get(folder.id) || []\n const folderTasks = folderTaskIds.flatMap((taskId) => tasksMap.get(taskId) || [])\n\n if (folderTasks.length || loadingTasks[folder.id]) {\n const taskRows = folderTasks.map((task) => createTaskRow(task, folder.id))\n\n if (loadingTasks[folder.id]) {\n const count = loadingTasks[folder.id]\n if (count > 0) {\n taskRows.push(...generateLoadingRows(count, { parentId: folder.id }))\n }\n }\n\n row.subRows = taskRows\n }\n }\n\n flatFolderRows.push(row)\n }\n\n flatFolderRows.push(...createRootTaskRows())\n\n return flatFolderRows\n }\n\n // If showHierarchy is false, create a flat list of task rows\n if (!showHierarchy) {\n const flatRows: TableRow[] = []\n\n // Loop through all tasks\n for (const task of tasksMap.values()) {\n if (!task.id) continue\n flatRows.push(createTaskRow(task))\n }\n\n // Loop through all extra rows\n for (const row of rows || []) {\n flatRows.push(row)\n }\n\n // if we are loading more tasks, add loading rows\n if (isLoadingMore) {\n // number of tasks we loading with the infinite query\n const count = TASKS_INFINITE_QUERY_COUNT\n if (count > 0) {\n const loadingTaskRows = generateLoadingRows(count, {\n type: 'task',\n })\n\n flatRows.push(...loadingTaskRows)\n }\n }\n\n return flatRows\n }\n\n // Use Map for O(1) lookups\n const rowsById = new Map<string, TableRow>()\n const rootRows: TableRow[] = []\n\n // Create minimal rows for only visible folders\n for (const folderId of visibleFolders) {\n const folder = foldersMap.get(folderId)\n if (!folder) continue\n\n const links = linksToTableData(folder.links, 'folder', project.anatomy)\n\n const folderTypeData = getEntityTypeData('folder', folder.folderType)\n\n // Create row with minimal required properties\n const row: TableRow = {\n id: folderId,\n entityType: 'folder',\n parentId: folder.parentId || undefined,\n folderId: folderId || null, // root folders have no folderId\n name: folder.name || '',\n label: folder.label || folder.name || '',\n icon: folderTypeData?.icon || null,\n color: folderTypeData?.color || null,\n img: null,\n subRows: [],\n status: folder.status,\n tags: folder.tags || [],\n subType: folder.folderType || null,\n ownAttrib: folder.ownAttrib || [],\n path: folder.path,\n folder: folder.parents[folder.parents.length - 1] || undefined,\n attrib: folder.attrib || {},\n childOnlyMatch: folder.childOnlyMatch || false,\n updatedAt: folder.updatedAt,\n createdAt: folder.createdAt,\n thumbnailHash: folder.thumbnailHash,\n hasReviewables: folder.hasReviewables || false,\n hasVersions: folder.hasVersions || false,\n links: links,\n }\n\n rowsById.set(folderId, row)\n\n // Add root rows directly to the rootRows array\n if (!folder.parentId || !foldersMap.has(folder.parentId)) {\n rootRows.push(row)\n }\n\n // Process tasks immediately if folder is expanded\n if (expandedFolderIds.has(folderId)) {\n // because tasksByFolderMap is a map of tasks by folder ID\n // we can directly get the tasks for the current folder\n const folderTaskIds = tasksByFolderMap.get(folderId) || []\n const folderTasks = folderTaskIds.flatMap((taskId) => tasksMap.get(taskId) || [])\n\n if (folderTasks.length || loadingTasks[folderId]) {\n // Use array literal with known length for better performance\n const taskRows = new Array<TableRow>(folderTasks.length)\n\n // Direct array assignment is faster than push operations\n for (let i = 0; i < folderTasks.length; i++) {\n taskRows[i] = createTaskRow(folderTasks[i], folderId)\n }\n\n // Add loading rows if applicable\n if (loadingTasks[folderId]) {\n const count = loadingTasks[folderId]\n if (count > 0) {\n const loadingTaskRows = generateLoadingRows(count, { parentId: folderId })\n\n taskRows.push(...loadingTaskRows)\n }\n }\n\n row.subRows = taskRows\n }\n }\n }\n\n // Build the folder hierarchy efficiently\n for (const folderId of visibleFolders) {\n const parentId = childToParentMap.get(folderId)\n if (!parentId || !expandedFolderIds.has(parentId)) continue\n\n const childRow = rowsById.get(folderId)\n const parentRow = rowsById.get(parentId)\n\n if (!childRow || !parentRow) continue\n\n // Add folder to its parent's subRows\n parentRow.subRows?.push(childRow)\n }\n\n rootRows.push(...createRootTaskRows())\n\n // Add any extra rows to the root rows\n for (const row of rows || []) {\n rootRows.push(row)\n }\n\n return rootRows\n }, [\n foldersMap,\n tasksMap,\n tasksByFolderMap,\n rows,\n visibleFolders,\n childToParentMap,\n expandedFolderIds,\n showHierarchy,\n isFlatFolderView,\n showEmptyFolders,\n loadingTasks,\n isLoadingMore,\n selectedFolders,\n ])\n}\n"],"names":["TASKS_INFINITE_QUERY_COUNT","useBuildProjectDataTable","foldersMap","tasksMap","rows","tasksByFolderMap","expanded","showHierarchy","isFlatFolderView","showEmptyFolders","loadingTasks","isLoadingMore","selectedFolders","project","useProjectContext","getEntityTypeData","useGetEntityTypeData","expandedKey","useMemo","expandedFolderIds","_","isExpanded","id","childToParentMap","parentToChildrenMap","childToParent","parentToChildren","folder","parentId","children","visibleFolders","visible","queue","folderId","childrenIds","childId","createTaskRow","task","typeData","links","linksToTableData","createRootTaskRows","rootTaskRows","folderTaskIds","taskId","flatFolderRows","hasTasks","folderTypeData","row","folderTasks","taskRows","count","generateLoadingRows","flatRows","loadingTaskRows","rowsById","rootRows","i","childRow","parentRow"],"mappings":"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"}