@ynput/ayon-frontend-shared 0.3.31 → 0.3.33

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 (1007) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +28 -24
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +219 -199
  6. package/dist/ProjectTreeTable.es.js.map +1 -1
  7. package/dist/Slicer.cjs.js +1 -1
  8. package/dist/Slicer.es.js +20 -18
  9. package/dist/Slicer.es.js.map +1 -1
  10. package/dist/_virtual/index.cjs14.js +1 -1
  11. package/dist/_virtual/index.cjs15.js +1 -1
  12. package/dist/_virtual/index.cjs19.js +1 -1
  13. package/dist/_virtual/index.cjs22.js +1 -1
  14. package/dist/_virtual/index.cjs23.js +1 -1
  15. package/dist/_virtual/index.cjs24.js +1 -1
  16. package/dist/_virtual/index.cjs7.js +1 -1
  17. package/dist/_virtual/index.es10.js +2 -2
  18. package/dist/_virtual/index.es11.js +2 -2
  19. package/dist/_virtual/index.es13.js +2 -2
  20. package/dist/_virtual/index.es14.js +2 -5
  21. package/dist/_virtual/index.es14.js.map +1 -1
  22. package/dist/_virtual/index.es15.js +2 -2
  23. package/dist/_virtual/index.es16.js +2 -2
  24. package/dist/_virtual/index.es17.js +2 -2
  25. package/dist/_virtual/index.es18.js +2 -2
  26. package/dist/_virtual/index.es19.js +2 -2
  27. package/dist/_virtual/index.es20.js +2 -2
  28. package/dist/_virtual/index.es22.js +3 -3
  29. package/dist/_virtual/index.es23.js +5 -5
  30. package/dist/_virtual/index.es24.js +5 -5
  31. package/dist/_virtual/index.es7.js +5 -2
  32. package/dist/_virtual/index.es7.js.map +1 -1
  33. package/dist/_virtual/index.es9.js +2 -2
  34. package/dist/api.cjs.js +1 -1
  35. package/dist/api.es.js +460 -436
  36. package/dist/api.es.js.map +1 -1
  37. package/dist/components.cjs.js +1 -1
  38. package/dist/components.es.js +83 -80
  39. package/dist/components.es.js.map +1 -1
  40. package/dist/index.cjs.js +1 -1
  41. package/dist/index.es.js +15 -11
  42. package/dist/index.es.js.map +1 -1
  43. package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
  44. package/dist/node_modules/parse-numeric-range/index.es.js +1 -1
  45. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +1 -1
  46. package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
  47. package/dist/node_modules/rehype/node_modules/vfile/lib/index.cjs.js +1 -1
  48. package/dist/node_modules/rehype/node_modules/vfile/lib/index.es.js +1 -1
  49. package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
  50. package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
  51. package/dist/shared/node_modules/@module-federation/error-codes/dist/index.cjs.js +1 -1
  52. package/dist/shared/node_modules/@module-federation/error-codes/dist/index.es.js +1 -1
  53. package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.cjs.js +1 -1
  54. package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.es.js +1 -1
  55. package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.cjs.js +1 -1
  56. package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.es.js +1 -1
  57. package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.cjs.js +1 -1
  58. package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.es.js +1 -1
  59. package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.cjs.js +1 -1
  60. package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.es.js +1 -1
  61. package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.cjs.js +1 -1
  62. package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.es.js +1 -1
  63. package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.cjs.js +1 -1
  64. package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.es.js +1 -1
  65. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.cjs.js +1 -1
  66. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.es.js +1 -1
  67. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.cjs.js +1 -1
  68. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.es.js +1 -1
  69. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js +1 -1
  70. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js.map +1 -1
  71. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.es.js +1 -1
  72. package/dist/shared/node_modules/@module-federation/sdk/dist/index.cjs.js +1 -1
  73. package/dist/shared/node_modules/@module-federation/sdk/dist/index.es.js +1 -1
  74. package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
  75. package/dist/shared/node_modules/prop-types/index.es.js +1 -1
  76. package/dist/shared/node_modules/react-is/index.cjs.js +1 -1
  77. package/dist/shared/node_modules/react-is/index.es.js +1 -1
  78. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
  79. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js.map +1 -1
  80. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
  81. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
  82. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js.map +1 -1
  83. package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
  84. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
  85. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js.map +1 -1
  86. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
  87. package/dist/shared/src/api/base/client.cjs.js +1 -1
  88. package/dist/shared/src/api/base/client.cjs.js.map +1 -1
  89. package/dist/shared/src/api/base/client.es.js +22 -17
  90. package/dist/shared/src/api/base/client.es.js.map +1 -1
  91. package/dist/shared/src/api/generated/folders.cjs.js +1 -1
  92. package/dist/shared/src/api/generated/folders.cjs.js.map +1 -1
  93. package/dist/shared/src/api/generated/folders.es.js +2 -14
  94. package/dist/shared/src/api/generated/folders.es.js.map +1 -1
  95. package/dist/shared/src/api/generated/graphql.cjs.js +299 -61
  96. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  97. package/dist/shared/src/api/generated/graphql.es.js +430 -170
  98. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  99. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  100. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  101. package/dist/shared/src/api/queries/activities/activityQueries.cjs.js +1 -0
  102. package/dist/shared/src/api/queries/activities/activityQueries.cjs.js.map +1 -1
  103. package/dist/shared/src/api/queries/activities/activityQueries.es.js +1 -0
  104. package/dist/shared/src/api/queries/activities/activityQueries.es.js.map +1 -1
  105. package/dist/shared/src/api/queries/activities/getActivities.cjs.js +1 -1
  106. package/dist/shared/src/api/queries/activities/getActivities.cjs.js.map +1 -1
  107. package/dist/shared/src/api/queries/activities/getActivities.es.js +26 -24
  108. package/dist/shared/src/api/queries/activities/getActivities.es.js.map +1 -1
  109. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js +1 -1
  110. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js.map +1 -1
  111. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js +35 -23
  112. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js.map +1 -1
  113. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js +1 -1
  114. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js.map +1 -1
  115. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js +74 -60
  116. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js.map +1 -1
  117. package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js +2 -0
  118. package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js.map +1 -0
  119. package/dist/shared/src/api/queries/columnStats/columnStats.es.js +96 -0
  120. package/dist/shared/src/api/queries/columnStats/columnStats.es.js.map +1 -0
  121. package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js +2 -0
  122. package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js.map +1 -0
  123. package/dist/shared/src/api/queries/columnStats/metricTargets.es.js +88 -0
  124. package/dist/shared/src/api/queries/columnStats/metricTargets.es.js.map +1 -0
  125. package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js +1 -1
  126. package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js.map +1 -1
  127. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js +62 -48
  128. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js.map +1 -1
  129. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +1 -1
  130. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  131. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +7 -3
  132. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  133. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +1 -1
  134. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -1
  135. package/dist/shared/src/api/queries/entityLists/getLists.es.js +94 -79
  136. package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -1
  137. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js +2 -0
  138. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js.map +1 -0
  139. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js +68 -0
  140. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js.map +1 -0
  141. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js +1 -1
  142. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js.map +1 -1
  143. package/dist/shared/src/api/queries/entityLists/updateLists.es.js +73 -69
  144. package/dist/shared/src/api/queries/entityLists/updateLists.es.js.map +1 -1
  145. package/dist/shared/src/api/queries/folders/getFolders.cjs.js +1 -1
  146. package/dist/shared/src/api/queries/folders/getFolders.cjs.js.map +1 -1
  147. package/dist/shared/src/api/queries/folders/getFolders.es.js +104 -71
  148. package/dist/shared/src/api/queries/folders/getFolders.es.js.map +1 -1
  149. package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
  150. package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
  151. package/dist/shared/src/api/queries/overview/getOverview.es.js +265 -216
  152. package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
  153. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
  154. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  155. package/dist/shared/src/api/queries/overview/updateOverview.es.js +207 -187
  156. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  157. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -1
  158. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js.map +1 -1
  159. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +138 -107
  160. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js.map +1 -1
  161. package/dist/shared/src/api/queries/users/getUsers.cjs.js +4 -4
  162. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  163. package/dist/shared/src/api/queries/users/getUsers.es.js +11 -11
  164. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  165. package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js +1 -1
  166. package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js.map +1 -1
  167. package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js +332 -239
  168. package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js.map +1 -1
  169. package/dist/shared/src/api/queries/views/updateViews.cjs.js +1 -1
  170. package/dist/shared/src/api/queries/views/updateViews.cjs.js.map +1 -1
  171. package/dist/shared/src/api/queries/views/updateViews.es.js +38 -38
  172. package/dist/shared/src/api/queries/views/updateViews.es.js.map +1 -1
  173. package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js +1 -1
  174. package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js.map +1 -1
  175. package/dist/shared/src/components/ColumnHeaderMenuUI.es.js +4 -2
  176. package/dist/shared/src/components/ColumnHeaderMenuUI.es.js.map +1 -1
  177. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
  178. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  179. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +4 -2
  180. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  181. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  182. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  183. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +8 -4
  184. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  185. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  186. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  187. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +4 -2
  188. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  189. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
  190. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
  191. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +4 -2
  192. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
  193. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  194. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
  195. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +4 -2
  196. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  197. package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js +1 -1
  198. package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js.map +1 -1
  199. package/dist/shared/src/components/EntityIcon/EntityIcon.es.js +4 -2
  200. package/dist/shared/src/components/EntityIcon/EntityIcon.es.js.map +1 -1
  201. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  202. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  203. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +143 -162
  204. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  205. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
  206. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
  207. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +8 -4
  208. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
  209. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
  210. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
  211. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +4 -2
  212. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
  213. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  214. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  215. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +6 -4
  216. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  217. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  218. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  219. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +4 -2
  220. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  221. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
  222. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  223. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +4 -2
  224. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  225. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js +1 -1
  226. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js.map +1 -1
  227. package/dist/shared/src/components/LinksManager/LinksManager.es.js +4 -2
  228. package/dist/shared/src/components/LinksManager/LinksManager.es.js.map +1 -1
  229. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  230. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  231. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +8 -4
  232. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  233. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
  234. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
  235. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +4 -2
  236. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
  237. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js +1 -1
  238. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js.map +1 -1
  239. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js +4 -2
  240. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js.map +1 -1
  241. package/dist/shared/src/components/Menu/Menu.cjs.js +1 -1
  242. package/dist/shared/src/components/Menu/Menu.cjs.js.map +1 -1
  243. package/dist/shared/src/components/Menu/Menu.es.js +4 -2
  244. package/dist/shared/src/components/Menu/Menu.es.js.map +1 -1
  245. package/dist/shared/src/components/Menu/MenuItem.cjs.js +1 -1
  246. package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -1
  247. package/dist/shared/src/components/Menu/MenuItem.es.js +2 -0
  248. package/dist/shared/src/components/Menu/MenuItem.es.js.map +1 -1
  249. package/dist/shared/src/components/Menu/MenuList.cjs.js +1 -1
  250. package/dist/shared/src/components/Menu/MenuList.cjs.js.map +1 -1
  251. package/dist/shared/src/components/Menu/MenuList.es.js +4 -2
  252. package/dist/shared/src/components/Menu/MenuList.es.js.map +1 -1
  253. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +1 -1
  254. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
  255. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +4 -2
  256. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
  257. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  258. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  259. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +4 -2
  260. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  261. package/dist/shared/src/components/Powerpack/useFreeTrialLink.cjs.js +1 -1
  262. package/dist/shared/src/components/Powerpack/useFreeTrialLink.cjs.js.map +1 -1
  263. package/dist/shared/src/components/Powerpack/useFreeTrialLink.es.js +4 -2
  264. package/dist/shared/src/components/Powerpack/useFreeTrialLink.es.js.map +1 -1
  265. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +1 -1
  266. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
  267. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +81 -77
  268. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
  269. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
  270. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  271. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +10 -6
  272. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  273. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  274. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  275. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +4 -2
  276. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  277. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
  278. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
  279. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +8 -4
  280. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
  281. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
  282. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
  283. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +8 -4
  284. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
  285. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  286. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  287. package/dist/shared/src/components/RenameForm/RenameForm.es.js +8 -4
  288. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  289. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
  290. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  291. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +4 -2
  292. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  293. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  294. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  295. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +8 -4
  296. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  297. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  298. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  299. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +9 -5
  300. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  301. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  302. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  303. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +8 -4
  304. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  305. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
  306. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  307. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +4 -2
  308. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  309. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
  310. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
  311. package/dist/shared/src/components/ReviewablesSelector/Card.es.js +8 -4
  312. package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
  313. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js +1 -1
  314. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js.map +1 -1
  315. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js +2 -1
  316. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js.map +1 -1
  317. package/dist/shared/src/components/SearchFilter/filterScopeRegistry.cjs.js +2 -0
  318. package/dist/shared/src/components/SearchFilter/filterScopeRegistry.cjs.js.map +1 -0
  319. package/dist/shared/src/components/SearchFilter/filterScopeRegistry.es.js +24 -0
  320. package/dist/shared/src/components/SearchFilter/filterScopeRegistry.es.js.map +1 -0
  321. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  322. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  323. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +8 -6
  324. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  325. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +1 -1
  326. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
  327. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +4 -2
  328. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
  329. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
  330. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
  331. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +10 -6
  332. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
  333. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  334. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  335. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +8 -4
  336. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  337. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js +1 -1
  338. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js.map +1 -1
  339. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js +4 -2
  340. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js.map +1 -1
  341. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +2 -2
  342. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
  343. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +12 -10
  344. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
  345. package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js +1 -1
  346. package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js.map +1 -1
  347. package/dist/shared/src/components/Thumbnail/Thumbnail.es.js +49 -44
  348. package/dist/shared/src/components/Thumbnail/Thumbnail.es.js.map +1 -1
  349. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js +3 -3
  350. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js.map +1 -1
  351. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js +32 -22
  352. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js.map +1 -1
  353. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  354. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  355. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +8 -4
  356. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  357. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  358. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  359. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +12 -8
  360. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  361. package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
  362. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  363. package/dist/shared/src/components/Watchers/Watchers.es.js +4 -2
  364. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  365. package/dist/shared/src/config/powerpackFeatures.cjs.js +1 -1
  366. package/dist/shared/src/config/powerpackFeatures.cjs.js.map +1 -1
  367. package/dist/shared/src/config/powerpackFeatures.es.js +7 -1
  368. package/dist/shared/src/config/powerpackFeatures.es.js.map +1 -1
  369. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  370. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  371. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +8 -4
  372. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  373. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  374. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  375. package/dist/shared/src/containers/Actions/Actions.es.js +4 -2
  376. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  377. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  378. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  379. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +8 -4
  380. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  381. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  382. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  383. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +8 -4
  384. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  385. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  386. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  387. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +8 -4
  388. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  389. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  390. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  391. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +45 -40
  392. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  393. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  394. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  395. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +8 -4
  396. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  397. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
  398. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
  399. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +8 -4
  400. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
  401. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
  402. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
  403. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +8 -4
  404. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js.map +1 -1
  405. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  406. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  407. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +4 -2
  408. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  409. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
  410. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
  411. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +21 -17
  412. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
  413. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
  414. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
  415. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +8 -4
  416. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
  417. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
  418. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
  419. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +7 -3
  420. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
  421. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
  422. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
  423. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +14 -11
  424. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
  425. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js +1 -1
  426. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js.map +1 -1
  427. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js +14 -14
  428. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js.map +1 -1
  429. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  430. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  431. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +14 -9
  432. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  433. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  434. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  435. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +8 -4
  436. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  437. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  438. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  439. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +8 -4
  440. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  441. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  442. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  443. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +8 -4
  444. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  445. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  446. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  447. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +8 -4
  448. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  449. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  450. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  451. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +4 -2
  452. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  453. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  454. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  455. package/dist/shared/src/containers/Feed/Feed.es.js +157 -140
  456. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  457. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
  458. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
  459. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +8 -4
  460. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
  461. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  462. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  463. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +133 -144
  464. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  465. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  466. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  467. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +8 -4
  468. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  469. package/dist/shared/src/containers/Feed/components/ActivityDate.cjs.js +3 -3
  470. package/dist/shared/src/containers/Feed/components/ActivityDate.cjs.js.map +1 -1
  471. package/dist/shared/src/containers/Feed/components/ActivityDate.es.js +39 -31
  472. package/dist/shared/src/containers/Feed/components/ActivityDate.es.js.map +1 -1
  473. package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js +1 -1
  474. package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js.map +1 -1
  475. package/dist/shared/src/containers/Feed/components/ActivityItem.es.js +23 -20
  476. package/dist/shared/src/containers/Feed/components/ActivityItem.es.js.map +1 -1
  477. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js +2 -0
  478. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js.map +1 -0
  479. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js +349 -0
  480. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js.map +1 -0
  481. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js +50 -0
  482. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js.map +1 -0
  483. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.es.js +56 -0
  484. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.es.js.map +1 -0
  485. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
  486. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
  487. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +29 -27
  488. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
  489. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +2 -2
  490. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  491. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +351 -290
  492. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  493. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js +87 -12
  494. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js.map +1 -1
  495. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js +101 -21
  496. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js.map +1 -1
  497. package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.cjs.js +2 -0
  498. package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.cjs.js.map +1 -0
  499. package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.es.js +34 -0
  500. package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.es.js.map +1 -0
  501. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
  502. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
  503. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +12 -8
  504. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
  505. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -1
  506. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
  507. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +4 -2
  508. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
  509. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
  510. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
  511. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +4 -2
  512. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
  513. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
  514. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
  515. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +4 -2
  516. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
  517. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  518. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  519. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +40 -45
  520. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  521. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js +1 -1
  522. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js.map +1 -1
  523. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js +4 -2
  524. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js.map +1 -1
  525. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  526. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  527. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +7 -5
  528. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  529. package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.cjs.js +1 -1
  530. package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.cjs.js.map +1 -1
  531. package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.es.js +14 -13
  532. package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.es.js.map +1 -1
  533. package/dist/shared/src/containers/Feed/hooks/useCategoryData.cjs.js +2 -0
  534. package/dist/shared/src/containers/Feed/hooks/useCategoryData.cjs.js.map +1 -0
  535. package/dist/shared/src/containers/Feed/hooks/useCategoryData.es.js +27 -0
  536. package/dist/shared/src/containers/Feed/hooks/useCategoryData.es.js.map +1 -0
  537. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js +1 -1
  538. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js.map +1 -1
  539. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js +88 -68
  540. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js.map +1 -1
  541. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  542. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  543. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +4 -2
  544. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  545. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.cjs.js +2 -0
  546. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.cjs.js.map +1 -0
  547. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.es.js +113 -0
  548. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.es.js.map +1 -0
  549. package/dist/shared/src/containers/ListTable/ListTable.cjs.js +1 -1
  550. package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
  551. package/dist/shared/src/containers/ListTable/ListTable.es.js +214 -204
  552. package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
  553. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
  554. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
  555. package/dist/shared/src/containers/ListTable/ListTableCell.es.js +8 -4
  556. package/dist/shared/src/containers/ListTable/ListTableCell.es.js.map +1 -1
  557. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js +1 -1
  558. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js.map +1 -1
  559. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js +8 -4
  560. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
  561. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  562. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  563. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +731 -675
  564. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  565. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js +32 -10
  566. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js.map +1 -1
  567. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js +42 -18
  568. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js.map +1 -1
  569. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  570. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  571. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +21 -16
  572. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  573. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
  574. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
  575. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +61 -45
  576. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
  577. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  578. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  579. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +8 -4
  580. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  581. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  582. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  583. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +8 -4
  584. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  585. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.cjs.js +48 -0
  586. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.cjs.js.map +1 -0
  587. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.es.js +103 -0
  588. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.es.js.map +1 -0
  589. package/dist/shared/src/containers/ProjectTreeTable/constants.cjs.js +2 -0
  590. package/dist/shared/src/containers/ProjectTreeTable/constants.cjs.js.map +1 -0
  591. package/dist/shared/src/containers/ProjectTreeTable/constants.es.js +6 -0
  592. package/dist/shared/src/containers/ProjectTreeTable/constants.es.js.map +1 -0
  593. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  594. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  595. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +8 -4
  596. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  597. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +4 -4
  598. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  599. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +8 -5
  600. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  601. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js.map +1 -1
  602. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js.map +1 -1
  603. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
  604. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
  605. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +219 -183
  606. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
  607. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  608. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  609. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +6 -4
  610. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  611. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +1 -1
  612. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -1
  613. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +94 -90
  614. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -1
  615. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.cjs.js +1 -1
  616. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.cjs.js.map +1 -1
  617. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.es.js +21 -17
  618. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.es.js.map +1 -1
  619. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js +1 -1
  620. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js.map +1 -1
  621. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.es.js +1 -2
  622. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.es.js.map +1 -1
  623. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  624. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  625. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +21 -13
  626. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  627. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
  628. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  629. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +4 -2
  630. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  631. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  632. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  633. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +85 -81
  634. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  635. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  636. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  637. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +203 -181
  638. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  639. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  640. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  641. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +10 -5
  642. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  643. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  644. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  645. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +8 -4
  646. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  647. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  648. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  649. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +8 -4
  650. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  651. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
  652. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
  653. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +8 -4
  654. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
  655. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  656. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  657. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +179 -175
  658. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  659. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.cjs.js.map +1 -1
  660. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.es.js.map +1 -1
  661. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  662. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  663. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +8 -4
  664. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  665. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  666. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  667. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +8 -4
  668. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  669. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  670. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  671. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +8 -4
  672. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  673. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  674. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  675. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +8 -4
  676. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  677. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  678. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  679. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +8 -4
  680. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  681. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  682. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  683. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +96 -91
  684. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  685. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
  686. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
  687. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +8 -4
  688. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
  689. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js +1 -1
  690. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js.map +1 -1
  691. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js +46 -44
  692. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js.map +1 -1
  693. package/dist/shared/src/containers/ProjectTreeTable/types/summaryTypes.cjs.js +2 -0
  694. package/dist/shared/src/containers/ProjectTreeTable/types/summaryTypes.cjs.js.map +1 -0
  695. package/dist/shared/src/containers/ProjectTreeTable/types/summaryTypes.es.js +16 -0
  696. package/dist/shared/src/containers/ProjectTreeTable/types/summaryTypes.es.js.map +1 -0
  697. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  698. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  699. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +19 -15
  700. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  701. package/dist/shared/src/containers/ProjectTreeTable/utils/checkColumnVisibility.cjs.js +1 -1
  702. package/dist/shared/src/containers/ProjectTreeTable/utils/checkColumnVisibility.cjs.js.map +1 -1
  703. package/dist/shared/src/containers/ProjectTreeTable/utils/checkColumnVisibility.es.js +29 -25
  704. package/dist/shared/src/containers/ProjectTreeTable/utils/checkColumnVisibility.es.js.map +1 -1
  705. package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.cjs.js +2 -0
  706. package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.cjs.js.map +1 -0
  707. package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.es.js +17 -0
  708. package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.es.js.map +1 -0
  709. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js +1 -1
  710. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map +1 -1
  711. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js +61 -61
  712. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
  713. package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.cjs.js +2 -0
  714. package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.cjs.js.map +1 -0
  715. package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.es.js +15 -0
  716. package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.es.js.map +1 -0
  717. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
  718. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  719. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +8 -4
  720. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  721. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +1 -1
  722. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  723. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +16 -12
  724. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  725. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  726. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  727. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +10 -6
  728. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  729. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js +1 -1
  730. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js.map +1 -1
  731. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js +4 -2
  732. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js.map +1 -1
  733. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  734. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  735. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +8 -4
  736. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  737. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
  738. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
  739. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +8 -4
  740. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
  741. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js +1 -1
  742. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js.map +1 -1
  743. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js +4 -2
  744. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js.map +1 -1
  745. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js +4 -4
  746. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js.map +1 -1
  747. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js +24 -19
  748. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js.map +1 -1
  749. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  750. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  751. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +8 -4
  752. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  753. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  754. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  755. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +8 -4
  756. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  757. package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js +2 -2
  758. package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js.map +1 -1
  759. package/dist/shared/src/containers/Slicer/components/Slicer.es.js +52 -50
  760. package/dist/shared/src/containers/Slicer/components/Slicer.es.js.map +1 -1
  761. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js +1 -1
  762. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js.map +1 -1
  763. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js +4 -2
  764. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js.map +1 -1
  765. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
  766. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
  767. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +8 -4
  768. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
  769. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +1 -1
  770. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -1
  771. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +57 -53
  772. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
  773. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js +1 -1
  774. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js.map +1 -1
  775. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js +4 -2
  776. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
  777. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js +1 -1
  778. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js.map +1 -1
  779. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js +4 -2
  780. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js.map +1 -1
  781. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
  782. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
  783. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +8 -4
  784. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
  785. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js +1 -1
  786. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js.map +1 -1
  787. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js +4 -2
  788. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -1
  789. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js +1 -1
  790. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js.map +1 -1
  791. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js +12 -18
  792. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js.map +1 -1
  793. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
  794. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
  795. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +13 -11
  796. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
  797. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +1 -1
  798. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -1
  799. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +4 -2
  800. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -1
  801. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  802. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  803. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +4 -2
  804. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  805. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
  806. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
  807. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +8 -4
  808. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
  809. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +1 -1
  810. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
  811. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +4 -2
  812. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
  813. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  814. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  815. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +120 -118
  816. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  817. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js +1 -1
  818. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js.map +1 -1
  819. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js +18 -16
  820. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js.map +1 -1
  821. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js +1 -1
  822. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js.map +1 -1
  823. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js +79 -51
  824. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js.map +1 -1
  825. package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.cjs.js +1 -1
  826. package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.cjs.js.map +1 -1
  827. package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.es.js +19 -17
  828. package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.es.js.map +1 -1
  829. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js +1 -1
  830. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js.map +1 -1
  831. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js +4 -2
  832. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js.map +1 -1
  833. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  834. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  835. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +7 -5
  836. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  837. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
  838. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
  839. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +13 -11
  840. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
  841. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
  842. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
  843. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +4 -2
  844. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
  845. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  846. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  847. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +79 -65
  848. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  849. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  850. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  851. package/dist/shared/src/context/AddonProjectContext.es.js +6 -4
  852. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  853. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  854. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  855. package/dist/shared/src/context/DetailsPanelContext.es.js +6 -4
  856. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  857. package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
  858. package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
  859. package/dist/shared/src/context/GlobalContext.es.js +6 -4
  860. package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
  861. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  862. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  863. package/dist/shared/src/context/PowerpackContext.es.js +8 -6
  864. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  865. package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
  866. package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
  867. package/dist/shared/src/context/ProjectContext.es.js +6 -4
  868. package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
  869. package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
  870. package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
  871. package/dist/shared/src/context/ProjectFoldersContext.es.js +6 -4
  872. package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
  873. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  874. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  875. package/dist/shared/src/context/RemoteModulesContext.es.js +6 -4
  876. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  877. package/dist/shared/src/context/SubtasksModulesContext.cjs.js +1 -1
  878. package/dist/shared/src/context/SubtasksModulesContext.cjs.js.map +1 -1
  879. package/dist/shared/src/context/SubtasksModulesContext.es.js +6 -4
  880. package/dist/shared/src/context/SubtasksModulesContext.es.js.map +1 -1
  881. package/dist/shared/src/context/UriContext.cjs.js +1 -1
  882. package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
  883. package/dist/shared/src/context/UriContext.es.js +7 -5
  884. package/dist/shared/src/context/UriContext.es.js.map +1 -1
  885. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  886. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  887. package/dist/shared/src/context/WebsocketContext.es.js +10 -6
  888. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  889. package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
  890. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  891. package/dist/shared/src/hooks/useActionTriggers.es.js +4 -2
  892. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  893. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  894. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  895. package/dist/shared/src/hooks/useEntityUpdate.es.js +4 -2
  896. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  897. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js +1 -1
  898. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
  899. package/dist/shared/src/hooks/useGetEntityGroups.es.js +4 -2
  900. package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
  901. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
  902. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
  903. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +4 -2
  904. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
  905. package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
  906. package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
  907. package/dist/shared/src/hooks/useHierarchyTable.es.js +4 -2
  908. package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
  909. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
  910. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  911. package/dist/shared/src/hooks/useScopedStatuses.es.js +6 -4
  912. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  913. package/dist/shared/src/hooks/useScopedTypes.cjs.js +1 -1
  914. package/dist/shared/src/hooks/useScopedTypes.cjs.js.map +1 -1
  915. package/dist/shared/src/hooks/useScopedTypes.es.js +4 -2
  916. package/dist/shared/src/hooks/useScopedTypes.es.js.map +1 -1
  917. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  918. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  919. package/dist/shared/src/hooks/useUserProjectConfig.es.js +4 -2
  920. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  921. package/dist/shared/src/util/columnConfigConverter.cjs.js +1 -1
  922. package/dist/shared/src/util/columnConfigConverter.cjs.js.map +1 -1
  923. package/dist/shared/src/util/columnConfigConverter.es.js +86 -65
  924. package/dist/shared/src/util/columnConfigConverter.es.js.map +1 -1
  925. package/dist/shared/src/util/getThumbnailUrl.cjs.js +2 -0
  926. package/dist/shared/src/util/getThumbnailUrl.cjs.js.map +1 -0
  927. package/dist/shared/src/util/getThumbnailUrl.es.js +23 -0
  928. package/dist/shared/src/util/getThumbnailUrl.es.js.map +1 -0
  929. package/dist/shared/src/util/thumbnailWebsocket.cjs.js +2 -0
  930. package/dist/shared/src/util/thumbnailWebsocket.cjs.js.map +1 -0
  931. package/dist/shared/src/util/thumbnailWebsocket.es.js +54 -0
  932. package/dist/shared/src/util/thumbnailWebsocket.es.js.map +1 -0
  933. package/dist/types/api/generated/folders.d.ts +1 -6
  934. package/dist/types/api/generated/graphql.d.ts +403 -6
  935. package/dist/types/api/generated/graphqlLinks.d.ts +80 -4
  936. package/dist/types/api/queries/activities/activityQueries.d.ts +1 -0
  937. package/dist/types/api/queries/activities/getActivities.d.ts +506 -0
  938. package/dist/types/api/queries/activities/updateActivities.d.ts +116 -0
  939. package/dist/types/api/queries/activities/util/activitiesHelpers.d.ts +1 -0
  940. package/dist/types/api/queries/columnStats/columnStats.d.ts +28 -0
  941. package/dist/types/api/queries/columnStats/index.d.ts +2 -0
  942. package/dist/types/api/queries/columnStats/metricTargets.d.ts +31 -0
  943. package/dist/types/api/queries/entities/getEntity.d.ts +57 -0
  944. package/dist/types/api/queries/entities/getEntityPanel.d.ts +57 -0
  945. package/dist/types/api/queries/entities/transformDetailsPanelData.d.ts +1 -0
  946. package/dist/types/api/queries/entities/updateEntity.d.ts +57 -0
  947. package/dist/types/api/queries/entityLists/getLists.d.ts +57 -0
  948. package/dist/types/api/queries/entityLists/index.d.ts +1 -0
  949. package/dist/types/api/queries/entityLists/listItemsColumnStats.d.ts +312 -0
  950. package/dist/types/api/queries/entityLists/types.d.ts +3 -0
  951. package/dist/types/api/queries/index.d.ts +1 -0
  952. package/dist/types/api/queries/overview/getOverview.d.ts +743 -1
  953. package/dist/types/api/queries/project/getProject.d.ts +57 -0
  954. package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +79 -0
  955. package/dist/types/api/queries/users/getUsers.d.ts +57 -0
  956. package/dist/types/api/queries/versions/getVersionsProducts.d.ts +848 -1
  957. package/dist/types/components/EntityPanelUploader/EntityPanelUploader.d.ts +1 -11
  958. package/dist/types/components/SearchFilter/filterScopeRegistry.d.ts +5 -0
  959. package/dist/types/components/SearchFilter/index.d.ts +1 -0
  960. package/dist/types/components/Thumbnail/StackedThumbnails.d.ts +2 -2
  961. package/dist/types/components/Thumbnail/Thumbnail.d.ts +2 -2
  962. package/dist/types/components/ThumbnailSimple/ThumbnailSimple.d.ts +1 -1
  963. package/dist/types/config/powerpackFeatures.d.ts +1 -1
  964. package/dist/types/containers/DetailsPanel/containers/FeedWrapper.d.ts +1 -0
  965. package/dist/types/containers/DetailsPanel/helpers/getThumbnails.d.ts +2 -2
  966. package/dist/types/containers/Feed/Feed.d.ts +2 -1
  967. package/dist/types/containers/Feed/components/ActivityDate.d.ts +1 -0
  968. package/dist/types/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.d.ts +20 -0
  969. package/dist/types/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.d.ts +3 -0
  970. package/dist/types/containers/Feed/components/ActivityVersions/ActivityVersions.d.ts +1 -0
  971. package/dist/types/containers/Feed/components/CommentInput/CommentInput.d.ts +8 -0
  972. package/dist/types/containers/Feed/components/CommentInput/CommentInput.styled.d.ts +19 -0
  973. package/dist/types/containers/Feed/components/CommentInput/VersionReviewPill.d.ts +7 -0
  974. package/dist/types/containers/Feed/hooks/useCategoryData.d.ts +7 -0
  975. package/dist/types/containers/Feed/hooks/useCommentMutations.d.ts +2 -0
  976. package/dist/types/containers/Feed/hooks/useGetFeedActivitiesData.d.ts +3 -0
  977. package/dist/types/containers/Feed/hooks/useLastVersionReview.d.ts +11 -0
  978. package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +8 -3
  979. package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.styled.d.ts +2 -0
  980. package/dist/types/containers/ProjectTreeTable/buildTreeTableColumns.d.ts +1 -1
  981. package/dist/types/containers/ProjectTreeTable/components/TableFooterRow.d.ts +14 -0
  982. package/dist/types/containers/ProjectTreeTable/constants.d.ts +2 -0
  983. package/dist/types/containers/ProjectTreeTable/context/ColumnSettingsContext.d.ts +10 -0
  984. package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +2 -1
  985. package/dist/types/containers/ProjectTreeTable/context/SelectionCellsContext.d.ts +0 -1
  986. package/dist/types/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.d.ts +2 -1
  987. package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +2 -1
  988. package/dist/types/containers/ProjectTreeTable/hooks/useQueryFilters.d.ts +1 -1
  989. package/dist/types/containers/ProjectTreeTable/index.d.ts +1 -0
  990. package/dist/types/containers/ProjectTreeTable/types/index.d.ts +17 -1
  991. package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +2 -0
  992. package/dist/types/containers/ProjectTreeTable/types/summaryTypes.d.ts +50 -0
  993. package/dist/types/containers/ProjectTreeTable/types/table.d.ts +4 -0
  994. package/dist/types/containers/ProjectTreeTable/utils/checkColumnVisibility.d.ts +2 -0
  995. package/dist/types/containers/ProjectTreeTable/utils/index.d.ts +2 -0
  996. package/dist/types/containers/ProjectTreeTable/utils/pinningUtils.d.ts +6 -0
  997. package/dist/types/containers/ProjectTreeTable/utils/sanitizeQueryFilter.d.ts +2 -0
  998. package/dist/types/containers/ProjectTreeTable/widgets/ThumbnailWidget.d.ts +1 -1
  999. package/dist/types/containers/Views/hooks/useSelectedView.d.ts +2 -1
  1000. package/dist/types/containers/Views/utils/viewUpdateHelper.d.ts +7 -3
  1001. package/dist/types/util/getThumbnailUrl.d.ts +18 -0
  1002. package/dist/types/util/index.d.ts +2 -0
  1003. package/dist/types/util/thumbnailWebsocket.d.ts +21 -0
  1004. package/dist/util.cjs.js +1 -1
  1005. package/dist/util.es.js +35 -30
  1006. package/dist/util.es.js.map +1 -1
  1007. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"getOverview.es.js","sources":["../../../../../../src/api/queries/overview/getOverview.ts"],"sourcesContent":["import {\n gqlApi,\n GetTasksByParentQuery,\n GetTasksListQuery,\n foldersApi,\n SearchFoldersApiArg,\n GetTasksListQueryVariables,\n} from '@shared/api/generated'\nimport { PubSub } from '@shared/util'\nimport { EditorTaskNode } from '@shared/containers/ProjectTreeTable'\nimport {\n DefinitionsFromApi,\n FetchBaseQueryError,\n OverrideResultType,\n TagTypesFromApi,\n} from '@reduxjs/toolkit/query'\n\n// parse attribs JSON string to object\nexport const parseAllAttribs = (allAttrib: string) => {\n try {\n return JSON.parse(allAttrib)\n } catch (e) {\n return {}\n }\n}\n\nconst transformFilteredEntitiesByParent = (response: GetTasksByParentQuery): EditorTaskNode[] => {\n if (!response.project) {\n return []\n }\n\n const tasks: EditorTaskNode[] = []\n for (const { node: taskNode } of response.project.tasks.edges) {\n tasks.push({\n ...taskNode,\n folderId: taskNode.folderId || 'root',\n attrib: parseAllAttribs(taskNode.allAttrib),\n entityId: taskNode.id,\n entityType: 'task',\n links: [],\n })\n }\n\n return tasks\n}\n\nconst getOverviewTaskTags = (\n result: EditorTaskNode[] | undefined = [],\n projectName: string,\n parentIds?: string | string[],\n) => {\n const taskTags = result?.map((task) => ({ type: 'overviewTask', id: task.id })) || []\n\n const parentTags = parentIds\n ? (Array.isArray(parentIds) ? parentIds : [parentIds]).map((id) => ({\n type: 'overviewTask',\n id,\n }))\n : []\n\n return [\n ...taskTags,\n ...parentTags,\n { type: 'overviewTask', id: projectName },\n { type: 'overviewTask', id: 'LIST' },\n ]\n}\n\nexport type GetTasksListResult = {\n pageInfo: GetTasksListQuery['project']['tasks']['pageInfo']\n tasks: EditorTaskNode[]\n}\n\nexport type GetTasksListArgs = {\n projectName: string\n filter?: string\n folderFilter?: string\n search?: string\n folderIds?: string[]\n taskIds?: string[]\n desc?: boolean\n sortBy?: string\n}\n\nexport type GetGroupedTasksListResult = {\n tasks: EditorTaskNode[]\n}\n\nexport type GetGroupedTasksListArgs = {\n projectName: string\n groups: { filter: string; count: number; value: string }[]\n search?: string\n folderFilter?: string\n folderIds?: string[]\n desc?: boolean\n sortBy?: string\n groupCount?: number // optional override for all groups\n}\n\n// Define the page param type for infinite query\ntype TasksListPageParam = {\n cursor: string\n desc?: boolean\n}\n\ntype Definitions = DefinitionsFromApi<typeof gqlApi>\ntype TagTypes = TagTypesFromApi<typeof gqlApi>\ntype UpdatedDefinitions = Omit<Definitions, 'GetFilteredEntities'> & {\n GetTasksByParent: OverrideResultType<Definitions['GetTasksByParent'], EditorTaskNode[]>\n GetTasksList: OverrideResultType<Definitions['GetTasksList'], GetTasksListResult>\n}\n\n// GRAPHQL API\nconst enhancedApi = gqlApi.enhanceEndpoints<TagTypes, UpdatedDefinitions>({\n endpoints: {\n // This gets tasks for all parent folders provided\n // But in this case it will only ever receive one parent folder from the getOverviewTasksByFolders query\n // It is only used by getOverviewTasksByFolders in this file\n GetTasksByParent: {\n transformResponse: transformFilteredEntitiesByParent,\n providesTags: (result, _e, { parentIds, projectName }) =>\n getOverviewTaskTags(result, projectName, parentIds),\n },\n GetTasksList: {\n transformResponse: (result: GetTasksListQuery) => ({\n tasks: transformFilteredEntitiesByParent(result),\n pageInfo: result.project.tasks.pageInfo,\n }),\n providesTags: (result, _e, { projectName }) =>\n getOverviewTaskTags(result?.tasks || [], projectName),\n },\n },\n})\n\n// REST FOLDERS API\nconst foldersApiEnhanced = foldersApi.enhanceEndpoints({\n endpoints: {\n searchFolders: {},\n },\n})\n\nexport const TASKS_INFINITE_QUERY_COUNT = 100 // Number of items to fetch per page\n\nconst injectedApi = enhancedApi.injectEndpoints({\n endpoints: (build) => ({\n // Each project has one cache for all the tasks of the expanded folders\n // Changing the expanded folders will trigger a refetch but not a new cache\n // Each expanded folder has it's own query that is looped over here\n // When new folders are expanded, the new tasks are fetched and we use the cache for the rest\n // This also solves the pagination issue of getting all tasks in one query, splitting it up in multiple queries to avoid pagination limits\n getOverviewTasksByFolders: build.query<\n EditorTaskNode[],\n {\n projectName: string\n parentIds: string[]\n filter?: string\n folderFilter?: string\n search?: string\n }\n >({\n async queryFn(\n { projectName, parentIds, filter, folderFilter, search },\n { dispatch, forced },\n ) {\n try {\n // Process parent IDs in sequential batches\n const BATCH_SIZE = 20 // Process x parentIds at a time\n const allTasks: EditorTaskNode[] = []\n\n // Process batches one after another\n for (let i = 0; i < parentIds.length; i += BATCH_SIZE) {\n const batchParentIds = parentIds.slice(i, i + BATCH_SIZE)\n\n // Process this batch in parallel\n const batchResults = await Promise.all(\n batchParentIds.map(async (parentId) =>\n dispatch(\n enhancedApi.endpoints.GetTasksByParent.initiate(\n {\n projectName,\n parentIds: [parentId],\n filter,\n folderFilter,\n search,\n },\n { forceRefetch: forced },\n ),\n ),\n ),\n )\n\n // Add the results from this batch to our accumulated results\n const batchTasks = batchResults\n .filter((r) => !!r.data)\n .flatMap((result) => result.data as EditorTaskNode[])\n\n allTasks.push(...batchTasks)\n }\n\n return { data: allTasks }\n } catch (e: any) {\n // handle errors appropriately\n console.error(e)\n const error = { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError\n return { error }\n }\n },\n // keep one cache per project\n serializeQueryArgs: ({ queryArgs: { parentIds, ...rest } }) => ({\n ...rest,\n }),\n // Refetch when the page arg changes\n forceRefetch({ currentArg, previousArg }) {\n return JSON.stringify(currentArg) !== JSON.stringify(previousArg)\n },\n providesTags: (result, _e, { parentIds, projectName }) =>\n getOverviewTaskTags(result, projectName, parentIds),\n async onCacheEntryAdded(\n { projectName, parentIds, filter, search },\n { cacheDataLoaded, cacheEntryRemoved, updateCachedData, dispatch },\n ) {\n let token: any\n const pendingTaskIds = new Set<string>()\n const MAX_BATCH = 100\n const INTERVAL = 500\n let scheduled = false\n\n const schedule = () => {\n if (scheduled) return\n scheduled = true\n setTimeout(flush, INTERVAL)\n }\n\n const flush = async () => {\n scheduled = false\n if (!pendingTaskIds.size) return\n const batchIds = Array.from(pendingTaskIds).slice(0, MAX_BATCH)\n batchIds.forEach((id) => pendingTaskIds.delete(id))\n try {\n const res = await dispatch(\n enhancedApi.endpoints.GetTasksList.initiate(\n {\n projectName,\n taskIds: batchIds,\n } as any,\n { forceRefetch: true },\n ),\n ).unwrap()\n const returned = res.tasks || []\n const returnedMap = new Map(returned.map((t: EditorTaskNode) => [t.id, t]))\n\n updateCachedData((draft: EditorTaskNode[]) => {\n // update or add\n for (const task of returned) {\n const idx = draft.findIndex((t) => t.id === task.id)\n if (idx > -1) draft[idx] = task\n else draft.push(task)\n }\n // remove missing\n for (const id of batchIds) {\n if (!returnedMap.has(id)) {\n const idx = draft.findIndex((t) => t.id === id)\n if (idx > -1) draft.splice(idx, 1)\n }\n }\n })\n } catch (err) {\n console.error('Realtime overview batch update failed', err)\n } finally {\n if (pendingTaskIds.size) schedule()\n }\n }\n try {\n await cacheDataLoaded\n\n const handlePubSub = async (_topic: string, message: any) => {\n const taskId = message?.summary?.entityId\n const parentId = message?.summary?.parentId\n if (!taskId || !parentId) return\n // Only react if the parent folder is part of the current expanded set\n if (!parentIds.includes(parentId)) return\n pendingTaskIds.add(taskId)\n schedule()\n }\n\n // Subscribe to task entity updates\n // NOTE: backend emits topics like 'entity.task.assignees_changed'.\n // Assuming PubSub supports prefix matching when subscribing without the suffix.\n token = PubSub.subscribe('entity.task', handlePubSub)\n } catch (e) {\n // cache entry removed before loaded - ignore\n }\n\n await cacheEntryRemoved\n if (token) PubSub.unsubscribe(token)\n },\n }),\n // searchFolders is a post so it's a bit annoying to consume\n // we wrap it in a queryFn to make it easier to consume as a query hook\n getSearchFolders: build.query<string[], SearchFoldersApiArg>({\n async queryFn({ projectName, folderSearchRequest }, { dispatch }) {\n try {\n const result = await dispatch(\n foldersApiEnhanced.endpoints.searchFolders.initiate({\n projectName,\n folderSearchRequest,\n }),\n )\n\n const data = result.data?.folderIds || []\n\n return { data }\n } catch (e: any) {\n console.error(e)\n const error = { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError\n return { error }\n }\n },\n providesTags: (_r, _e, { projectName }) => [{ type: 'tasksFolder', id: projectName }],\n }),\n // Add new infinite query endpoint for tasks list\n getTasksListInfinite: build.infiniteQuery<\n GetTasksListResult,\n GetTasksListArgs,\n TasksListPageParam\n >({\n infiniteQueryOptions: {\n initialPageParam: { cursor: '', desc: false },\n // Calculate the next page param based on current page response and params\n getNextPageParam: (lastPage, _allPages, lastPageParam, _allPageParams) => {\n // Use the endCursor from the query as the next page param\n const pageInfo = lastPage.pageInfo\n const desc = lastPageParam.desc\n const hasNextPage = desc ? pageInfo.hasPreviousPage : pageInfo.hasNextPage\n\n if (!hasNextPage || !pageInfo.endCursor) return undefined\n\n return {\n cursor: pageInfo.endCursor,\n desc: lastPageParam.desc,\n }\n },\n },\n queryFn: async ({ queryArg, pageParam }, api) => {\n try {\n const { projectName, filter, folderFilter, search, folderIds, taskIds, sortBy, desc } = queryArg\n const { cursor } = pageParam\n\n // Build the query parameters for GetTasksList\n const queryParams: any = {\n projectName,\n filter,\n folderFilter,\n search,\n folderIds,\n taskIds,\n }\n\n // Add cursor-based pagination\n if (sortBy) {\n queryParams.sortBy = sortBy\n if (desc) {\n queryParams.before = cursor || undefined\n queryParams.last = TASKS_INFINITE_QUERY_COUNT\n } else {\n queryParams.after = cursor || undefined\n queryParams.first = TASKS_INFINITE_QUERY_COUNT\n }\n } else {\n queryParams.after = cursor || undefined\n queryParams.first = TASKS_INFINITE_QUERY_COUNT\n }\n\n // Call the existing GetTasksList endpoint\n const result = await api.dispatch(\n enhancedApi.endpoints.GetTasksList.initiate(queryParams, { forceRefetch: true }),\n )\n\n if (result.error) throw result.error\n const fallback = {\n tasks: [],\n pageInfo: {\n hasNextPage: false,\n endCursor: null,\n startCursor: null,\n hasPreviousPage: false,\n },\n }\n\n // Return the tasks directly as required by the infinite query format\n return {\n data: result.data || fallback,\n }\n } catch (e: any) {\n console.error('Error in getTasksListInfinite queryFn:', e)\n return { error: { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError }\n }\n },\n providesTags: (result, _e, { projectName }) =>\n getOverviewTaskTags(result?.pages.flatMap((p) => p.tasks) || [], projectName),\n async onCacheEntryAdded(\n arg,\n { cacheDataLoaded, cacheEntryRemoved, updateCachedData, dispatch },\n ) {\n let token: any\n const pendingTaskIds = new Set<string>()\n const MAX_BATCH = 100\n const INTERVAL = 500\n let scheduled = false\n\n const schedule = () => {\n if (scheduled) return\n scheduled = true\n setTimeout(flush, INTERVAL)\n }\n\n const flush = async () => {\n scheduled = false\n if (!pendingTaskIds.size) return\n const batchIds = Array.from(pendingTaskIds).slice(0, MAX_BATCH)\n batchIds.forEach((id) => pendingTaskIds.delete(id))\n try {\n const res = await dispatch(\n enhancedApi.endpoints.GetTasksList.initiate(\n {\n projectName: arg.projectName,\n taskIds: batchIds,\n folderIds: arg.folderIds,\n } as any,\n { forceRefetch: true },\n ),\n ).unwrap()\n\n const returned = res.tasks || []\n const returnedMap = new Map(returned.map((t: EditorTaskNode) => [t.id, t]))\n\n updateCachedData((draft: { pages: GetTasksListResult[]; pageParams: any[] }) => {\n // update/insert\n for (const task of returned) {\n let located = false\n for (const page of draft.pages) {\n const idx = page.tasks.findIndex((t) => t.id === task.id)\n if (idx !== -1) {\n page.tasks[idx] = task\n located = true\n break\n }\n }\n if (!located) {\n if (draft.pages.length) draft.pages[0].tasks.unshift(task)\n else\n draft.pages.push({\n tasks: [task],\n pageInfo: {\n startCursor: null,\n endCursor: null,\n hasNextPage: false,\n hasPreviousPage: false,\n },\n })\n }\n }\n // remove any requested but missing tasks\n for (const id of batchIds) {\n if (returnedMap.has(id)) continue\n for (const page of draft.pages) {\n const idx = page.tasks.findIndex((t) => t.id === id)\n if (idx !== -1) {\n page.tasks.splice(idx, 1)\n break\n }\n }\n }\n })\n } catch (err) {\n console.error('Realtime infinite tasks batch update failed', err)\n } finally {\n if (pendingTaskIds.size) schedule()\n }\n }\n try {\n await cacheDataLoaded\n\n const handlePubSub = async (_topic: string, message: any) => {\n const taskId = message?.summary?.entityId\n if (!taskId) return\n pendingTaskIds.add(taskId)\n schedule()\n }\n\n token = PubSub.subscribe('entity.task', handlePubSub)\n } catch (_) {\n // ignore\n }\n await cacheEntryRemoved\n if (token) PubSub.unsubscribe(token)\n },\n }),\n getGroupedTasksList: build.query<GetGroupedTasksListResult, GetGroupedTasksListArgs>({\n queryFn: async (\n { projectName, groups, search, folderFilter, folderIds, desc, sortBy, groupCount },\n api,\n ) => {\n try {\n let promises = []\n // Folder-level filter keys that must go in folderFilter, not task filter\n const folderFilterKeys = new Set(['folderType'])\n\n for (const group of groups) {\n // Determine count for this group - use argument override, else group count, else default\n const count = groupCount || group.count || 500\n\n // Separate folder-level conditions from task-level conditions in the group filter\n let taskFilter = group.filter\n let mergedFolderFilter = folderFilter\n if (group.filter) {\n try {\n const parsed = JSON.parse(group.filter)\n const conditions = parsed.conditions || []\n const taskConditions = conditions.filter(\n (c: any) => !folderFilterKeys.has(c.key),\n )\n const folderConditions = conditions.filter((c: any) =>\n folderFilterKeys.has(c.key),\n )\n\n if (folderConditions.length > 0) {\n taskFilter = taskConditions.length\n ? JSON.stringify({ ...parsed, conditions: taskConditions })\n : undefined\n // Merge folder conditions with existing folderFilter, preserving metadata\n const existingFolderFilter = folderFilter ? JSON.parse(folderFilter) : null\n const existingConditions =\n existingFolderFilter && Array.isArray(existingFolderFilter.conditions)\n ? existingFolderFilter.conditions\n : []\n const allFolderConditions = [...existingConditions, ...folderConditions]\n mergedFolderFilter = JSON.stringify(\n existingFolderFilter\n ? { ...existingFolderFilter, conditions: allFolderConditions }\n : { conditions: allFolderConditions },\n )\n }\n } catch {\n // If parsing fails, use the original filter as-is\n }\n }\n\n const queryParams: GetTasksListQueryVariables = {\n projectName,\n filter: taskFilter,\n folderFilter: mergedFolderFilter,\n search,\n folderIds,\n sortBy: sortBy,\n // @ts-expect-error - we know group does not exist on query variables but we need it for later\n group: group.value,\n }\n if (desc) {\n queryParams.last = count\n } else {\n queryParams.first = count\n }\n\n const promise = api.dispatch(\n enhancedApi.endpoints.GetTasksList.initiate(queryParams, { forceRefetch: true }),\n )\n promises.push(promise)\n }\n\n const result = await Promise.all(promises)\n const tasks: EditorTaskNode[] = []\n for (const res of result) {\n if (res.error) throw res.error\n // get group value\n // @ts-expect-error - we know group does exist on res.originalArgs from line 319\n const groupValue = res.originalArgs?.group as string\n\n const hasNextPage =\n res.data?.pageInfo?.hasNextPage || res.data?.pageInfo?.hasPreviousPage || false\n const groupTasks =\n res.data?.tasks.map((task, i, a) => ({\n ...task,\n groups: [\n {\n value: groupValue,\n hasNextPage: i === a.length - 1 && hasNextPage ? groupValue : undefined, // Only add hasNextPage to the last task in the group\n },\n ],\n })) || []\n\n tasks.push(...groupTasks)\n }\n\n // Return the tasks directly as required by the query format\n return {\n data: {\n tasks,\n },\n }\n } catch (error: any) {\n console.error('Error in getGroupedTasksList queryFn:', error)\n return { error: { status: 'FETCH_ERROR', error: error.message } as FetchBaseQueryError }\n }\n },\n providesTags: (result, _e, { projectName }) =>\n getOverviewTaskTags(result?.tasks, projectName),\n }),\n }),\n})\n\nexport const {\n useGetOverviewTasksByFoldersQuery,\n useGetSearchFoldersQuery,\n useGetTasksListQuery,\n useGetTasksListInfiniteInfiniteQuery,\n useLazyGetTasksByParentQuery,\n useGetGroupedTasksListQuery,\n} = injectedApi\nexport default injectedApi\n"],"names":["parseAllAttribs","allAttrib","transformFilteredEntitiesByParent","response","tasks","taskNode","getOverviewTaskTags","result","projectName","parentIds","taskTags","task","parentTags","id","enhancedApi","gqlApi","_e","foldersApiEnhanced","foldersApi","TASKS_INFINITE_QUERY_COUNT","injectedApi","build","filter","folderFilter","search","dispatch","forced","allTasks","batchParentIds","batchTasks","parentId","r","e","rest","currentArg","previousArg","cacheDataLoaded","cacheEntryRemoved","updateCachedData","token","pendingTaskIds","MAX_BATCH","INTERVAL","scheduled","schedule","flush","batchIds","returned","returnedMap","t","draft","idx","err","handlePubSub","_topic","message","taskId","PubSub","folderSearchRequest","_r","lastPage","_allPages","lastPageParam","_allPageParams","pageInfo","queryArg","pageParam","api","folderIds","taskIds","sortBy","desc","cursor","queryParams","fallback","p","arg","located","page","groups","groupCount","promises","folderFilterKeys","group","count","taskFilter","mergedFolderFilter","parsed","conditions","taskConditions","c","folderConditions","existingFolderFilter","allFolderConditions","promise","res","groupValue","hasNextPage","groupTasks","i","a","error","useGetOverviewTasksByFoldersQuery","useGetSearchFoldersQuery","useGetTasksListQuery","useGetTasksListInfiniteInfiniteQuery","useLazyGetTasksByParentQuery","useGetGroupedTasksListQuery"],"mappings":"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"}
1
+ {"version":3,"file":"getOverview.es.js","sources":["../../../../../../src/api/queries/overview/getOverview.ts"],"sourcesContent":["import {\n gqlApi,\n GetTasksByParentQuery,\n GetTasksListQuery,\n GetFolderColumnStatsQuery,\n GetTaskColumnStatsQuery,\n foldersApi,\n SearchFoldersApiArg,\n GetTasksListQueryVariables,\n} from '@shared/api/generated'\nimport { PubSub, subscribeToThumbnailUpdates, ThumbnailUpdateMessage } from '@shared/util'\nimport { EditorTaskNode } from '@shared/containers/ProjectTreeTable'\nimport type { FieldStats } from '../columnStats'\nimport { normalizeFieldStats, mergeFieldStats, hasNewTargetFields } from '../columnStats'\nimport {\n DefinitionsFromApi,\n FetchBaseQueryError,\n OverrideResultType,\n TagTypesFromApi,\n} from '@reduxjs/toolkit/query'\n\n// parse attribs JSON string to object\nexport const parseAllAttribs = (allAttrib: string) => {\n try {\n return JSON.parse(allAttrib)\n } catch (e) {\n return {}\n }\n}\n\nconst transformFilteredEntitiesByParent = (response: GetTasksByParentQuery): EditorTaskNode[] => {\n if (!response.project) {\n return []\n }\n\n const tasks: EditorTaskNode[] = []\n for (const { node: taskNode } of response.project.tasks.edges) {\n tasks.push({\n ...taskNode,\n folderId: taskNode.folderId || 'root',\n attrib: parseAllAttribs(taskNode.allAttrib),\n entityId: taskNode.id,\n entityType: 'task',\n links: [],\n })\n }\n\n return tasks\n}\n\nconst getOverviewTaskTags = (\n result: EditorTaskNode[] | undefined = [],\n projectName: string,\n parentIds?: string | string[],\n) => {\n const taskTags = result?.map((task) => ({ type: 'overviewTask', id: task.id })) || []\n\n const parentTags = parentIds\n ? (Array.isArray(parentIds) ? parentIds : [parentIds]).map((id) => ({\n type: 'overviewTask',\n id,\n }))\n : []\n\n return [\n ...taskTags,\n ...parentTags,\n { type: 'overviewTask', id: projectName },\n { type: 'overviewTask', id: 'LIST' },\n ]\n}\n\nexport type GetTasksListResult = {\n pageInfo: GetTasksListQuery['project']['tasks']['pageInfo']\n tasks: EditorTaskNode[]\n}\n\nexport type GetTasksListArgs = {\n projectName: string\n filter?: string\n folderFilter?: string\n search?: string\n folderIds?: string[]\n taskIds?: string[]\n desc?: boolean\n sortBy?: string\n}\n\nexport type GetGroupedTasksListResult = {\n tasks: EditorTaskNode[]\n}\n\nexport type GetGroupedTasksListArgs = {\n projectName: string\n groups: { filter: string; count: number; value: string }[]\n search?: string\n folderFilter?: string\n folderIds?: string[]\n desc?: boolean\n sortBy?: string\n groupCount?: number // optional override for all groups\n}\n\n// Define the page param type for infinite query\ntype TasksListPageParam = {\n cursor: string\n desc?: boolean\n}\n\ntype Definitions = DefinitionsFromApi<typeof gqlApi>\ntype TagTypes = TagTypesFromApi<typeof gqlApi>\ntype UpdatedDefinitions = Omit<Definitions, 'GetFilteredEntities'> & {\n GetTasksByParent: OverrideResultType<Definitions['GetTasksByParent'], EditorTaskNode[]>\n GetTasksList: OverrideResultType<Definitions['GetTasksList'], GetTasksListResult>\n GetFolderColumnStats: OverrideResultType<Definitions['GetFolderColumnStats'], FieldStats[]>\n GetTaskColumnStats: OverrideResultType<Definitions['GetTaskColumnStats'], FieldStats[]>\n}\n\n// GRAPHQL API\nconst enhancedApi = gqlApi.enhanceEndpoints<TagTypes, UpdatedDefinitions>({\n endpoints: {\n // This gets tasks for all parent folders provided\n // But in this case it will only ever receive one parent folder from the getOverviewTasksByFolders query\n // It is only used by getOverviewTasksByFolders in this file\n GetTasksByParent: {\n transformResponse: transformFilteredEntitiesByParent,\n providesTags: (result, _e, { parentIds, projectName }) =>\n getOverviewTaskTags(result, projectName, parentIds),\n },\n GetTasksList: {\n transformResponse: (result: GetTasksListQuery) => ({\n tasks: transformFilteredEntitiesByParent(result),\n pageInfo: result.project.tasks.pageInfo,\n }),\n providesTags: (result, _e, { projectName }) =>\n getOverviewTaskTags(result?.tasks || [], projectName),\n },\n // footer stats: `targets` excluded from cache key + responses merged,\n // so column toggles reuse cache and only added targets refetch\n GetFolderColumnStats: {\n transformResponse: (res: GetFolderColumnStatsQuery) =>\n normalizeFieldStats(res?.project?.folders?.fieldStats ?? []),\n serializeQueryArgs: ({ queryArgs: { targets: _t, ...rest } }) => rest,\n merge: (cache, incoming) => mergeFieldStats(incoming, cache),\n forceRefetch: ({ currentArg, previousArg }) => hasNewTargetFields(currentArg, previousArg),\n providesTags: (_r, _e, { projectName }) => [{ type: 'folderColumnStats', id: projectName }],\n },\n GetTaskColumnStats: {\n transformResponse: (res: GetTaskColumnStatsQuery) =>\n normalizeFieldStats(res?.project?.tasks?.fieldStats ?? []),\n serializeQueryArgs: ({ queryArgs: { targets: _t, ...rest } }) => rest,\n merge: (cache, incoming) => mergeFieldStats(incoming, cache),\n forceRefetch: ({ currentArg, previousArg }) => hasNewTargetFields(currentArg, previousArg),\n providesTags: (_r, _e, { projectName }) => [{ type: 'taskColumnStats', id: projectName }],\n },\n },\n})\n\n// REST FOLDERS API\nconst foldersApiEnhanced = foldersApi.enhanceEndpoints({\n endpoints: {\n searchFolders: {},\n },\n})\n\nexport const TASKS_INFINITE_QUERY_COUNT = 100 // Number of items to fetch per page\n\nconst injectedApi = enhancedApi.injectEndpoints({\n endpoints: (build) => ({\n // Each project has one cache for all the tasks of the expanded folders\n // Changing the expanded folders will trigger a refetch but not a new cache\n // Each expanded folder has it's own query that is looped over here\n // When new folders are expanded, the new tasks are fetched and we use the cache for the rest\n // This also solves the pagination issue of getting all tasks in one query, splitting it up in multiple queries to avoid pagination limits\n getOverviewTasksByFolders: build.query<\n EditorTaskNode[],\n {\n projectName: string\n parentIds: string[]\n filter?: string\n folderFilter?: string\n search?: string\n }\n >({\n async queryFn(\n { projectName, parentIds, filter, folderFilter, search },\n { dispatch, forced },\n ) {\n try {\n // Process parent IDs in sequential batches\n const BATCH_SIZE = 20 // Process x parentIds at a time\n const allTasks: EditorTaskNode[] = []\n\n // Process batches one after another\n for (let i = 0; i < parentIds.length; i += BATCH_SIZE) {\n const batchParentIds = parentIds.slice(i, i + BATCH_SIZE)\n\n // Process this batch in parallel\n const batchResults = await Promise.all(\n batchParentIds.map(async (parentId) =>\n dispatch(\n enhancedApi.endpoints.GetTasksByParent.initiate(\n {\n projectName,\n parentIds: [parentId],\n filter,\n folderFilter,\n search,\n },\n { forceRefetch: forced },\n ),\n ),\n ),\n )\n\n // Add the results from this batch to our accumulated results\n const batchTasks = batchResults\n .filter((r) => !!r.data)\n .flatMap((result) => result.data as EditorTaskNode[])\n\n allTasks.push(...batchTasks)\n }\n\n return { data: allTasks }\n } catch (e: any) {\n // handle errors appropriately\n console.error(e)\n const error = { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError\n return { error }\n }\n },\n // keep one cache per project\n serializeQueryArgs: ({ queryArgs: { parentIds, ...rest } }) => ({\n ...rest,\n }),\n // Refetch when the page arg changes\n forceRefetch({ currentArg, previousArg }) {\n return JSON.stringify(currentArg) !== JSON.stringify(previousArg)\n },\n providesTags: (result, _e, { parentIds, projectName }) =>\n getOverviewTaskTags(result, projectName, parentIds),\n async onCacheEntryAdded(\n { projectName, parentIds, filter, search },\n { cacheDataLoaded, cacheEntryRemoved, updateCachedData, dispatch },\n ) {\n let token: any\n const pendingTaskIds = new Set<string>()\n const MAX_BATCH = 100\n const INTERVAL = 500\n let scheduled = false\n\n const schedule = () => {\n if (scheduled) return\n scheduled = true\n setTimeout(flush, INTERVAL)\n }\n\n const flush = async () => {\n scheduled = false\n if (!pendingTaskIds.size) return\n const batchIds = Array.from(pendingTaskIds).slice(0, MAX_BATCH)\n batchIds.forEach((id) => pendingTaskIds.delete(id))\n try {\n const res = await dispatch(\n enhancedApi.endpoints.GetTasksList.initiate(\n {\n projectName,\n taskIds: batchIds,\n } as any,\n { forceRefetch: true },\n ),\n ).unwrap()\n const returned = res.tasks || []\n const returnedMap = new Map(returned.map((t: EditorTaskNode) => [t.id, t]))\n\n updateCachedData((draft: EditorTaskNode[]) => {\n // update or add\n for (const task of returned) {\n const idx = draft.findIndex((t) => t.id === task.id)\n if (idx > -1) draft[idx] = task\n else draft.push(task)\n }\n // remove missing\n for (const id of batchIds) {\n if (!returnedMap.has(id)) {\n const idx = draft.findIndex((t) => t.id === id)\n if (idx > -1) draft.splice(idx, 1)\n }\n }\n })\n } catch (err) {\n console.error('Realtime overview batch update failed', err)\n } finally {\n if (pendingTaskIds.size) schedule()\n }\n }\n let unsubscribeThumbnails: (() => void) | undefined\n try {\n await cacheDataLoaded\n\n unsubscribeThumbnails = subscribeToThumbnailUpdates(\n (messages: ThumbnailUpdateMessage[]) => {\n updateCachedData((draft: EditorTaskNode[]) => {\n messages.forEach((message) => {\n if (message.summary.entityType === 'task' && message.summary.thumbnailHash) {\n const idx = draft.findIndex((t) => t.id === message.summary.entityId)\n if (idx > -1) {\n draft[idx].thumbnailHash = message.summary.thumbnailHash\n }\n }\n })\n })\n },\n ['task'],\n )\n\n const handlePubSub = async (_topic: string, message: any) => {\n const taskId = message?.summary?.entityId\n const parentId = message?.summary?.parentId\n if (!taskId || !parentId) return\n // Only react if the parent folder is part of the current expanded set\n if (!parentIds.includes(parentId)) return\n pendingTaskIds.add(taskId)\n schedule()\n }\n\n // Subscribe to task entity updates\n // NOTE: backend emits topics like 'entity.task.assignees_changed'.\n // Assuming PubSub supports prefix matching when subscribing without the suffix.\n token = PubSub.subscribe('entity.task', handlePubSub)\n } catch (e) {\n // cache entry removed before loaded - ignore\n }\n\n await cacheEntryRemoved\n if (token) PubSub.unsubscribe(token)\n if (unsubscribeThumbnails) unsubscribeThumbnails()\n },\n }),\n // searchFolders is a post so it's a bit annoying to consume\n // we wrap it in a queryFn to make it easier to consume as a query hook\n getSearchFolders: build.query<string[], SearchFoldersApiArg>({\n async queryFn({ projectName, folderSearchRequest }, { dispatch }) {\n try {\n const result = await dispatch(\n foldersApiEnhanced.endpoints.searchFolders.initiate({\n projectName,\n folderSearchRequest,\n }),\n )\n\n const data = result.data?.folderIds || []\n\n return { data }\n } catch (e: any) {\n console.error(e)\n const error = { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError\n return { error }\n }\n },\n providesTags: (_r, _e, { projectName }) => [{ type: 'tasksFolder', id: projectName }],\n }),\n // Add new infinite query endpoint for tasks list\n getTasksListInfinite: build.infiniteQuery<\n GetTasksListResult,\n GetTasksListArgs,\n TasksListPageParam\n >({\n infiniteQueryOptions: {\n initialPageParam: { cursor: '', desc: false },\n // Calculate the next page param based on current page response and params\n getNextPageParam: (lastPage, _allPages, lastPageParam, _allPageParams) => {\n // Use the endCursor from the query as the next page param\n const pageInfo = lastPage.pageInfo\n const desc = lastPageParam.desc\n const hasNextPage = desc ? pageInfo.hasPreviousPage : pageInfo.hasNextPage\n\n if (!hasNextPage || !pageInfo.endCursor) return undefined\n\n return {\n cursor: pageInfo.endCursor,\n desc: lastPageParam.desc,\n }\n },\n },\n queryFn: async ({ queryArg, pageParam }, api) => {\n try {\n const { projectName, filter, folderFilter, search, folderIds, taskIds, sortBy, desc } =\n queryArg\n const { cursor } = pageParam\n\n // Build the query parameters for GetTasksList\n const queryParams: any = {\n projectName,\n filter,\n folderFilter,\n search,\n folderIds,\n taskIds,\n }\n\n // Add cursor-based pagination\n if (sortBy) {\n queryParams.sortBy = sortBy\n if (desc) {\n queryParams.before = cursor || undefined\n queryParams.last = TASKS_INFINITE_QUERY_COUNT\n } else {\n queryParams.after = cursor || undefined\n queryParams.first = TASKS_INFINITE_QUERY_COUNT\n }\n } else {\n queryParams.after = cursor || undefined\n queryParams.first = TASKS_INFINITE_QUERY_COUNT\n }\n\n // Call the existing GetTasksList endpoint\n const result = await api.dispatch(\n enhancedApi.endpoints.GetTasksList.initiate(queryParams, { forceRefetch: true }),\n )\n\n if (result.error) throw result.error\n const fallback = {\n tasks: [],\n pageInfo: {\n hasNextPage: false,\n endCursor: null,\n startCursor: null,\n hasPreviousPage: false,\n },\n }\n\n // Return the tasks directly as required by the infinite query format\n return {\n data: result.data || fallback,\n }\n } catch (e: any) {\n console.error('Error in getTasksListInfinite queryFn:', e)\n return { error: { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError }\n }\n },\n providesTags: (result, _e, { projectName }) =>\n getOverviewTaskTags(result?.pages.flatMap((p) => p.tasks) || [], projectName),\n async onCacheEntryAdded(\n arg,\n { cacheDataLoaded, cacheEntryRemoved, updateCachedData, dispatch },\n ) {\n let token: any\n const pendingTaskIds = new Set<string>()\n const MAX_BATCH = 100\n const INTERVAL = 500\n let scheduled = false\n\n const schedule = () => {\n if (scheduled) return\n scheduled = true\n setTimeout(flush, INTERVAL)\n }\n\n const flush = async () => {\n scheduled = false\n if (!pendingTaskIds.size) return\n const batchIds = Array.from(pendingTaskIds).slice(0, MAX_BATCH)\n batchIds.forEach((id) => pendingTaskIds.delete(id))\n try {\n const res = await dispatch(\n enhancedApi.endpoints.GetTasksList.initiate(\n {\n projectName: arg.projectName,\n taskIds: batchIds,\n folderIds: arg.folderIds,\n } as any,\n { forceRefetch: true },\n ),\n ).unwrap()\n\n const returned = res.tasks || []\n const returnedMap = new Map(returned.map((t: EditorTaskNode) => [t.id, t]))\n\n updateCachedData((draft: { pages: GetTasksListResult[]; pageParams: any[] }) => {\n // update/insert\n for (const task of returned) {\n let located = false\n for (const page of draft.pages) {\n const idx = page.tasks.findIndex((t) => t.id === task.id)\n if (idx !== -1) {\n page.tasks[idx] = task\n located = true\n break\n }\n }\n if (!located) {\n if (draft.pages.length) draft.pages[0].tasks.unshift(task)\n else\n draft.pages.push({\n tasks: [task],\n pageInfo: {\n startCursor: null,\n endCursor: null,\n hasNextPage: false,\n hasPreviousPage: false,\n },\n })\n }\n }\n // remove any requested but missing tasks\n for (const id of batchIds) {\n if (returnedMap.has(id)) continue\n for (const page of draft.pages) {\n const idx = page.tasks.findIndex((t) => t.id === id)\n if (idx !== -1) {\n page.tasks.splice(idx, 1)\n break\n }\n }\n }\n })\n } catch (err) {\n console.error('Realtime infinite tasks batch update failed', err)\n } finally {\n if (pendingTaskIds.size) schedule()\n }\n }\n let unsubscribeThumbnails: (() => void) | undefined\n try {\n await cacheDataLoaded\n\n unsubscribeThumbnails = subscribeToThumbnailUpdates(\n (messages: ThumbnailUpdateMessage[]) => {\n updateCachedData((draft: { pages: GetTasksListResult[]; pageParams: any[] }) => {\n messages.forEach((message) => {\n if (message.summary.entityType === 'task' && message.summary.thumbnailHash) {\n for (const page of draft.pages) {\n const idx = page.tasks.findIndex((t) => t.id === message.summary.entityId)\n if (idx > -1) {\n page.tasks[idx].thumbnailHash = message.summary.thumbnailHash\n break\n }\n }\n }\n })\n })\n },\n ['task'],\n )\n\n const handlePubSub = async (_topic: string, message: any) => {\n const taskId = message?.summary?.entityId\n if (!taskId) return\n pendingTaskIds.add(taskId)\n schedule()\n }\n\n token = PubSub.subscribe('entity.task', handlePubSub)\n } catch (_) {\n // ignore\n }\n await cacheEntryRemoved\n if (token) PubSub.unsubscribe(token)\n if (unsubscribeThumbnails) unsubscribeThumbnails()\n },\n }),\n getGroupedTasksList: build.query<GetGroupedTasksListResult, GetGroupedTasksListArgs>({\n queryFn: async (\n { projectName, groups, search, folderFilter, folderIds, desc, sortBy, groupCount },\n api,\n ) => {\n try {\n let promises = []\n // Folder-level filter keys that must go in folderFilter, not task filter\n const folderFilterKeys = new Set(['folderType'])\n\n for (const group of groups) {\n // Determine count for this group - use argument override, else group count, else default\n const count = groupCount || group.count || 500\n\n // Separate folder-level conditions from task-level conditions in the group filter\n let taskFilter = group.filter\n let mergedFolderFilter = folderFilter\n if (group.filter) {\n try {\n const parsed = JSON.parse(group.filter)\n const conditions = parsed.conditions || []\n const taskConditions = conditions.filter((c: any) => !folderFilterKeys.has(c.key))\n const folderConditions = conditions.filter((c: any) => folderFilterKeys.has(c.key))\n\n if (folderConditions.length > 0) {\n taskFilter = taskConditions.length\n ? JSON.stringify({ ...parsed, conditions: taskConditions })\n : undefined\n // Merge folder conditions with existing folderFilter, preserving metadata\n const existingFolderFilter = folderFilter ? JSON.parse(folderFilter) : null\n const existingConditions =\n existingFolderFilter && Array.isArray(existingFolderFilter.conditions)\n ? existingFolderFilter.conditions\n : []\n const allFolderConditions = [...existingConditions, ...folderConditions]\n mergedFolderFilter = JSON.stringify(\n existingFolderFilter\n ? { ...existingFolderFilter, conditions: allFolderConditions }\n : { conditions: allFolderConditions },\n )\n }\n } catch {\n // If parsing fails, use the original filter as-is\n }\n }\n\n const queryParams: GetTasksListQueryVariables = {\n projectName,\n filter: taskFilter,\n folderFilter: mergedFolderFilter,\n search,\n folderIds,\n sortBy: sortBy,\n // @ts-expect-error - we know group does not exist on query variables but we need it for later\n group: group.value,\n }\n if (desc) {\n queryParams.last = count\n } else {\n queryParams.first = count\n }\n\n const promise = api.dispatch(\n enhancedApi.endpoints.GetTasksList.initiate(queryParams, { forceRefetch: true }),\n )\n promises.push(promise)\n }\n\n const result = await Promise.all(promises)\n const tasks: EditorTaskNode[] = []\n for (const res of result) {\n if (res.error) throw res.error\n // get group value\n // @ts-expect-error - we know group does exist on res.originalArgs from line 319\n const groupValue = res.originalArgs?.group as string\n\n const hasNextPage =\n res.data?.pageInfo?.hasNextPage || res.data?.pageInfo?.hasPreviousPage || false\n const groupTasks =\n res.data?.tasks.map((task, i, a) => ({\n ...task,\n groups: [\n {\n value: groupValue,\n hasNextPage: i === a.length - 1 && hasNextPage ? groupValue : undefined, // Only add hasNextPage to the last task in the group\n },\n ],\n })) || []\n\n tasks.push(...groupTasks)\n }\n\n // Return the tasks directly as required by the query format\n return {\n data: {\n tasks,\n },\n }\n } catch (error: any) {\n console.error('Error in getGroupedTasksList queryFn:', error)\n return { error: { status: 'FETCH_ERROR', error: error.message } as FetchBaseQueryError }\n }\n },\n providesTags: (result, _e, { projectName }) =>\n getOverviewTaskTags(result?.tasks, projectName),\n }),\n }),\n})\n\nexport const {\n useGetOverviewTasksByFoldersQuery,\n useGetSearchFoldersQuery,\n useGetTasksListQuery,\n useGetTasksListInfiniteInfiniteQuery,\n useLazyGetTasksByParentQuery,\n useGetGroupedTasksListQuery,\n useGetFolderColumnStatsQuery,\n useGetTaskColumnStatsQuery,\n} = injectedApi\nexport default injectedApi\n"],"names":["parseAllAttribs","allAttrib","transformFilteredEntitiesByParent","response","tasks","taskNode","getOverviewTaskTags","result","projectName","parentIds","taskTags","task","parentTags","id","enhancedApi","gqlApi","_e","res","normalizeFieldStats","_t","rest","cache","incoming","mergeFieldStats","currentArg","previousArg","hasNewTargetFields","_r","foldersApiEnhanced","foldersApi","TASKS_INFINITE_QUERY_COUNT","injectedApi","build","filter","folderFilter","search","dispatch","forced","allTasks","i","batchParentIds","batchTasks","parentId","e","cacheDataLoaded","cacheEntryRemoved","updateCachedData","token","pendingTaskIds","MAX_BATCH","INTERVAL","scheduled","schedule","flush","batchIds","returned","returnedMap","t","draft","idx","err","unsubscribeThumbnails","subscribeToThumbnailUpdates","messages","message","handlePubSub","_topic","taskId","PubSub","folderSearchRequest","lastPage","_allPages","lastPageParam","_allPageParams","pageInfo","queryArg","pageParam","api","folderIds","taskIds","sortBy","desc","cursor","queryParams","fallback","p","arg","located","page","groups","groupCount","promises","folderFilterKeys","group","count","taskFilter","mergedFolderFilter","parsed","conditions","taskConditions","c","folderConditions","existingFolderFilter","allFolderConditions","promise","groupValue","hasNextPage","groupTasks","a","error","useGetOverviewTasksByFoldersQuery","useGetSearchFoldersQuery","useGetTasksListQuery","useGetTasksListInfiniteInfiniteQuery","useLazyGetTasksByParentQuery","useGetGroupedTasksListQuery","useGetFolderColumnStatsQuery","useGetTaskColumnStatsQuery"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("../folders/getFolders.cjs.js");require("../folders/getFolderDeleteInfo.cjs.js");const E=require("../entities/getEntityPanel.cjs.js");require("../../base/client.cjs.js");require("../../generated/graphql.cjs.js");require("../../generated/graphqlLinks.cjs.js");require("../../generated/access.cjs.js");require("../../generated/actions.cjs.js");require("../../generated/activityFeed.cjs.js");require("../../generated/addons.cjs.js");require("../../generated/anatomy.cjs.js");require("../../generated/attributes.cjs.js");require("../../generated/authentication.cjs.js");require("../../generated/bundles.cjs.js");require("../../generated/configuration.cjs.js");require("../../generated/dataImport.cjs.js");require("../../generated/desktop.cjs.js");require("../../generated/entityLists.cjs.js");require("../../generated/events.cjs.js");require("../../generated/files.cjs.js");require("../../generated/folders.cjs.js");require("../../generated/inbox.cjs.js");require("../../generated/links.cjs.js");require("../../generated/market.cjs.js");require("../../generated/onboarding.cjs.js");const U=require("../../generated/operations.cjs.js");require("../../generated/products.cjs.js");require("../../generated/projectDashboard.cjs.js");require("../../generated/projects.cjs.js");require("../../generated/projectFolders.cjs.js");require("../../generated/reviewables.cjs.js");require("../../generated/services.cjs.js");require("../../generated/system.cjs.js");require("../../generated/tasks.cjs.js");require("../../generated/teams.cjs.js");require("../../generated/thumbnails.cjs.js");require("../../generated/uRIs.cjs.js");require("../../generated/users.cjs.js");require("../../generated/versions.cjs.js");require("../../generated/workfiles.cjs.js");require("../../generated/ynputCloud.cjs.js");require("../../generated/grouping.cjs.js");require("../../generated/views.cjs.js");require("../entityLists/updateLists.cjs.js");const q=require("./getOverview.cjs.js");require("../entities/getEntity.cjs.js");const M=require("./patchVersions.cjs.js"),_=require("./patchProducts.cjs.js");require("../links/getEntityLinks.cjs.js");require("../entities/updateEntity.cjs.js");const H=require("../entities/patchDetailsPanel.cjs.js"),A=require("./filterRefetchUtils.cjs.js"),F=require("./refetchFilteredEntities.cjs.js"),Q=require("../entityLists/getLists.cjs.js"),w=(e,t)=>{if(Object.keys(t).forEach(s=>{s==="attrib"||s==="links"||s==="deleteLinks"||(e[s]=t[s])}),t.attrib&&(e.attrib={...e.attrib,...t.attrib}),t.links){const s=e.links||[],o=t.links||[];e.links||(e.links=[]),e.links=[...s],o.forEach(i=>{const d=e.links.findIndex(a=>a.id===i.id);d!==-1?e.links[d]={...e.links[d],...i}:e.links.push(i)})}if(t.deleteLinks){const s=t.deleteLinks||[];e.links||(e.links=[]),s.forEach(o=>{e.links=e.links.filter(i=>i.id!==o)})}},C=e=>[{type:"overviewTask",id:"LIST"},...e.map(t=>({type:"overviewTask",id:t.entityId})),...e.filter(t=>t.data?.projectName).map(t=>({type:"overviewTask",id:t.data?.projectName}))],V=e=>[...e.map(t=>({type:"folder",id:t.entityId})),...e.filter(t=>t.data?.projectName).map(t=>({type:"folder",id:t.data?.projectName}))],N=(e,t,s)=>({entityId:e,entityType:t,type:"update",data:{deleteLinks:s}}),z=(e,t)=>e.map(s=>N(s.entityId,s.entityType,t)),W=(e,{state:t,dispatch:s},o)=>{const i=e.reduce((d,a)=>(d[a.entityType]||(d[a.entityType]=[]),d[a.entityType].push(a),d),{});i.task&&O(i.task,{state:t,dispatch:s},o),i.folder&&L(i.folder,{state:t,dispatch:s},o)},O=(e,{state:t,dispatch:s},o)=>{const i=C(e),d=q.default.util.selectInvalidatedBy(t,i);for(const a of d)if(a.endpointName==="getTasksListInfinite"){const u=s(q.default.util.updateQueryData("getTasksListInfinite",a.originalArgs,n=>{for(const r of e)if(r.type==="create"&&r.data)n.pages[0].tasks.push(r.data);else for(const l of n.pages){const f=l.tasks.find(g=>g.id===r.entityId);f&&w(f,r.data)}}));o?.push(u)}else{const u=s(q.default.util.updateQueryData(a.endpointName,a.originalArgs,n=>{for(const r of e)if(r.type==="create"&&r.data&&a.originalArgs.parentIds?.includes(r.data.folderId)){const l=f=>{f.push(r.data)};if(Array.isArray(n))l(n);else if(n.tasks&&Array.isArray(n.tasks)){const f=n.tasks;l(f)}}else{const l=f=>{const g=f.find(I=>I.id===r.entityId);g&&w(g,r.data)};if(Array.isArray(n))l(n);else if(n.tasks&&Array.isArray(n.tasks)){const f=n.tasks;l(f)}}}));o?.push(u)}},G=(e,{dispatch:t})=>{e.length&&t(q.default.util.invalidateTags(C(e)))},L=(e,{state:t,dispatch:s},o)=>{const i=m.foldersQueries.util.selectInvalidatedBy(t,V(e)).filter(d=>d.endpointName==="getFolderList");for(const d of i){const a=s(m.foldersQueries.util.updateQueryData(d.endpointName,d.originalArgs,u=>{const n=new Map;u.folders.forEach(r=>{n.set(r.id,r)});for(const r of e)if(r.type==="create"&&r.data)u.folders.push(r.data);else{const l=n.get(r.entityId);l&&w(l,r.data)}}));o?.push(a)}},J=(e,{state:t,dispatch:s},o)=>{const i=e.map(a=>({type:"entityListItem",id:a.entityId})),d=Q.default.util.selectInvalidatedBy(t,i);for(const a of d)if(a.endpointName==="getListItemsInfinite"){const u=s(Q.default.util.updateQueryData("getListItemsInfinite",a.originalArgs,n=>{for(const r of e)if(r.type==="update"&&r.data)for(const l of n.pages){const f=l.items.find(g=>g.entityId===r.entityId);f&&w(f,r.data)}}));o?.push(u)}},b=e=>e.reduce((t,s)=>(t[s.type].push(s),t),{create:[],update:[],delete:[]}),B=U.api.enhanceEndpoints({endpoints:{operations:{}}}),K=B.injectEndpoints({endpoints:e=>({updateOverviewEntities:e.mutation({async queryFn(t,{dispatch:s}){try{const o=await s(B.endpoints.operations.initiate(t));if(o.error)return{error:o.error};const i=o.data,d=new Set,a=new Set;for(const u of i?.operations||[])u.success===!1&&u.detail&&(d.has(u.detail)||d.add(u.detail),a.has(u.errorCode)||a.add(u.errorCode));return d.size>0?{error:{status:"FETCH_ERROR",error:Array.from(d).join(", "),errorCodes:Array.from(a)}}:{data:i}}catch(o){return console.error(o),{error:{status:"FETCH_ERROR",error:o.message}}}},async onQueryStarted({operationsRequestModel:t,patchOperations:s=[],projectName:o},{dispatch:i,queryFulfilled:d,getState:a}){if(!t.operations?.length)return;const{operations:u}=t,n=u.reduce((c,p)=>(c[p.entityType].push(p),c),{task:[],folder:[],product:[],version:[],representation:[],workfile:[]}),r=a(),l=[];if(n.task?.length){const{delete:c,update:p}=b(n.task),y=p.filter(k=>!s.some(v=>v.entityId===k.entityId));O(y,{state:r,dispatch:i},l),G([...c],{dispatch:i})}if(n.folder?.length){const{delete:c,update:p}=b(n.folder),y=p.filter(k=>!s.some(v=>v.entityId===k.entityId));L(y,{state:r,dispatch:i},l),c.length&&i(m.foldersQueries.util.invalidateTags([{type:"folder",id:"LIST"}]))}const f=s.filter(c=>c.entityType==="task"),g=s.filter(c=>c.entityType==="folder");f.length&&O(f,{state:r,dispatch:i},l),g.length&&L(g,{state:r,dispatch:i},l),J([...u,...s],{state:r,dispatch:i},l),n.version?.length&&M.patchVersions(n.version,{state:r,dispatch:i},l),n.product?.length&&_.patchProducts(n.product,{state:r,dispatch:i},l);const I=u.map(c=>({id:c.entityId,type:c.entityType})),P=I.map(c=>({type:"entities",id:c.id})),S=()=>i(E.detailsPanelQueries.util.invalidateTags(P)),D=E.detailsPanelQueries.util.selectInvalidatedBy(r,I),R=E.detailsPanelQueries.util.selectInvalidatedBy(r,P);for(const c of R){if(c.endpointName!=="getEntitiesDetailsPanel")continue;const p=i(E.detailsPanelQueries.util.updateQueryData(c.endpointName,c.originalArgs,y=>{for(const k of y)H.patchDetailsPanelEntity(u,k)}));l.push(p)}try{await d;const c=n.task||[],p=n.folder||[];if(c.length===0&&p.length===0)return;const y=A.getUpdatedEntityIds(c),k=A.getUpdatedEntityIds(p),v=y.map(h=>({type:"overviewTask",id:h})),j=q.default.util.selectInvalidatedBy(r,v).filter(h=>h.endpointName==="getTasksListInfinite");if(y.length>0&&o){for(const T of j)await F.refetchTasksForCacheEntry({dispatch:i,projectName:o,updatedTaskIds:y,cacheEntry:T});const h=q.default.util.selectInvalidatedBy(r,v).filter(T=>T.endpointName==="getOverviewTasksByFolders");for(const T of h)await F.refetchOverviewTasksForCacheEntry({dispatch:i,projectName:o,updatedTaskIds:y,cacheEntry:T})}const x=(n.folder||[]).some(h=>h.type==="delete");k.length>0&&o&&!x&&i(m.foldersQueries.util.invalidateTags([{type:"folder",id:"LIST"}]))}catch{for(const p of l)p.undo();D.length&&S()}},invalidatesTags:(t,s,{operationsRequestModel:o,projectName:i})=>{const d=[{type:"kanban",id:"project-"+i}],a=[],u=[],n=[];let r=!1;return o.operations?.forEach(l=>{const{entityId:f}=l;f?(a.push({type:"progress",id:f}),u.push({type:"entityListItem",id:f})):a.push({type:"progress",id:"LIST"}),l.data?.attrib&&(r=!0)}),r&&n.push({type:"tasksFolder",id:i}),[...d,...a,...u,...n]}})})}),{useUpdateOverviewEntitiesMutation:X}=K;exports.createLinkDeletionPatch=N;exports.deleteLinksFromEntities=z;exports.patchOverviewEntities=W;exports.patchOverviewFolders=L;exports.patchOverviewTasks=O;exports.useUpdateOverviewEntitiesMutation=X;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const E=require("../folders/getFolders.cjs.js");require("../folders/getFolderDeleteInfo.cjs.js");const m=require("../entities/getEntityPanel.cjs.js");require("../../base/client.cjs.js");require("../../generated/graphql.cjs.js");require("../../generated/graphqlLinks.cjs.js");require("../../generated/access.cjs.js");require("../../generated/actions.cjs.js");require("../../generated/activityFeed.cjs.js");require("../../generated/addons.cjs.js");require("../../generated/anatomy.cjs.js");require("../../generated/attributes.cjs.js");require("../../generated/authentication.cjs.js");require("../../generated/bundles.cjs.js");require("../../generated/configuration.cjs.js");require("../../generated/dataImport.cjs.js");require("../../generated/desktop.cjs.js");require("../../generated/entityLists.cjs.js");require("../../generated/events.cjs.js");require("../../generated/files.cjs.js");require("../../generated/folders.cjs.js");require("../../generated/inbox.cjs.js");require("../../generated/links.cjs.js");require("../../generated/market.cjs.js");require("../../generated/onboarding.cjs.js");const V=require("../../generated/operations.cjs.js");require("../../generated/products.cjs.js");require("../../generated/projectDashboard.cjs.js");require("../../generated/projects.cjs.js");require("../../generated/projectFolders.cjs.js");require("../../generated/reviewables.cjs.js");require("../../generated/services.cjs.js");require("../../generated/system.cjs.js");require("../../generated/tasks.cjs.js");require("../../generated/teams.cjs.js");require("../../generated/thumbnails.cjs.js");require("../../generated/uRIs.cjs.js");require("../../generated/users.cjs.js");require("../../generated/versions.cjs.js");require("../../generated/workfiles.cjs.js");require("../../generated/ynputCloud.cjs.js");require("../../generated/grouping.cjs.js");require("../../generated/views.cjs.js");require("../entityLists/updateLists.cjs.js");const T=require("./getOverview.cjs.js");require("../entities/getEntity.cjs.js");const $=require("./patchVersions.cjs.js"),z=require("./patchProducts.cjs.js");require("../links/getEntityLinks.cjs.js");require("../entities/updateEntity.cjs.js");const W=require("../entities/patchDetailsPanel.cjs.js"),C=require("./filterRefetchUtils.cjs.js"),S=require("./refetchFilteredEntities.cjs.js"),Q=require("../entityLists/getLists.cjs.js"),w=(t,e)=>{if(Object.keys(e).forEach(s=>{s==="attrib"||s==="links"||s==="deleteLinks"||(t[s]=e[s])}),e.attrib&&(t.attrib={...t.attrib,...e.attrib}),e.links){const s=t.links||[],a=e.links||[];t.links||(t.links=[]),t.links=[...s],a.forEach(r=>{const l=t.links.findIndex(o=>o.id===r.id);l!==-1?t.links[l]={...t.links[l],...r}:t.links.push(r)})}if(e.deleteLinks){const s=e.deleteLinks||[];t.links||(t.links=[]),s.forEach(a=>{t.links=t.links.filter(r=>r.id!==a)})}},x=t=>[{type:"overviewTask",id:"LIST"},...t.map(e=>({type:"overviewTask",id:e.entityId})),...t.filter(e=>e.data?.projectName).map(e=>({type:"overviewTask",id:e.data?.projectName}))],G=t=>[...t.map(e=>({type:"folder",id:e.entityId})),...t.filter(e=>e.data?.projectName).map(e=>({type:"folder",id:e.data?.projectName}))],D=(t,e,s)=>({entityId:t,entityType:e,type:"update",data:{deleteLinks:s}}),J=(t,e)=>t.map(s=>D(s.entityId,s.entityType,e)),K=(t,{state:e,dispatch:s},a)=>{const r=t.reduce((l,o)=>(l[o.entityType]||(l[o.entityType]=[]),l[o.entityType].push(o),l),{});r.task&&O(r.task,{state:e,dispatch:s},a),r.folder&&L(r.folder,{state:e,dispatch:s},a)},O=(t,{state:e,dispatch:s},a)=>{const r=x(t),l=T.default.util.selectInvalidatedBy(e,r);for(const o of l)if(o.endpointName==="getTasksListInfinite"){const u=s(T.default.util.updateQueryData("getTasksListInfinite",o.originalArgs,n=>{for(const i of t)if(i.type==="create"&&i.data)n.pages[0].tasks.push(i.data);else for(const d of n.pages){const f=d.tasks.find(y=>y.id===i.entityId);f&&w(f,i.data)}}));a?.push(u)}else{const u=s(T.default.util.updateQueryData(o.endpointName,o.originalArgs,n=>{for(const i of t)if(i.type==="create"&&i.data&&o.originalArgs.parentIds?.includes(i.data.folderId)){const d=f=>{f.push(i.data)};if(Array.isArray(n))d(n);else if(n.tasks&&Array.isArray(n.tasks)){const f=n.tasks;d(f)}}else{const d=f=>{const y=f.find(I=>I.id===i.entityId);y&&w(y,i.data)};if(Array.isArray(n))d(n);else if(n.tasks&&Array.isArray(n.tasks)){const f=n.tasks;d(f)}}}));a?.push(u)}},X=(t,{dispatch:e})=>{t.length&&e(T.default.util.invalidateTags(x(t)))},P=new Map,b=(t,e,s)=>{const a=`${e}:${s.join()}`,r=P.get(a);r&&clearTimeout(r),P.set(a,setTimeout(()=>{P.delete(a),t(T.default.util.invalidateTags(s.map(l=>({type:l,id:e}))))},500))},L=(t,{state:e,dispatch:s},a)=>{const r=E.foldersQueries.util.selectInvalidatedBy(e,G(t)).filter(l=>l.endpointName==="getFolderList");for(const l of r){const o=s(E.foldersQueries.util.updateQueryData(l.endpointName,l.originalArgs,u=>{const n=new Map;u.folders.forEach(i=>{n.set(i.id,i)});for(const i of t)if(i.type==="create"&&i.data)u.folders.push(i.data);else{const d=n.get(i.entityId);d&&w(d,i.data)}}));a?.push(o)}},Y=(t,{state:e,dispatch:s},a)=>{const r=t.map(o=>({type:"entityListItem",id:o.entityId})),l=Q.default.util.selectInvalidatedBy(e,r);for(const o of l)if(o.endpointName==="getListItemsInfinite"){const u=s(Q.default.util.updateQueryData("getListItemsInfinite",o.originalArgs,n=>{for(const i of t)if(i.type==="update"&&i.data)for(const d of n.pages){const f=d.items.find(y=>y.entityId===i.entityId);f&&w(f,i.data)}}));a?.push(u)}},B=t=>t.reduce((e,s)=>(e[s.type].push(s),e),{create:[],update:[],delete:[]}),R=V.api.enhanceEndpoints({endpoints:{operations:{}}}),Z=R.injectEndpoints({endpoints:t=>({updateOverviewEntities:t.mutation({async queryFn(e,{dispatch:s}){try{const a=await s(R.endpoints.operations.initiate(e));if(a.error)return{error:a.error};const r=a.data,l=new Set,o=new Set;for(const u of r?.operations||[])u.success===!1&&u.detail&&(l.has(u.detail)||l.add(u.detail),o.has(u.errorCode)||o.add(u.errorCode));return l.size>0?{error:{status:"FETCH_ERROR",error:Array.from(l).join(", "),errorCodes:Array.from(o)}}:{data:r}}catch(a){return console.error(a),{error:{status:"FETCH_ERROR",error:a.message}}}},async onQueryStarted({operationsRequestModel:e,patchOperations:s=[],projectName:a},{dispatch:r,queryFulfilled:l,getState:o}){if(!e.operations?.length)return;const{operations:u}=e,n=u.reduce((c,p)=>(c[p.entityType].push(p),c),{task:[],folder:[],product:[],version:[],representation:[],workfile:[]}),i=o(),d=[];if(n.task?.length){const{delete:c,update:p}=B(n.task),k=p.filter(h=>!s.some(g=>g.entityId===h.entityId));O(k,{state:i,dispatch:r},d),X([...c],{dispatch:r})}if(n.folder?.length){const{delete:c,update:p}=B(n.folder),k=p.filter(h=>!s.some(g=>g.entityId===h.entityId));L(k,{state:i,dispatch:r},d),c.length&&r(E.foldersQueries.util.invalidateTags([{type:"folder",id:"LIST"}]))}const f=s.filter(c=>c.entityType==="task"),y=s.filter(c=>c.entityType==="folder");f.length&&O(f,{state:i,dispatch:r},d),y.length&&L(y,{state:i,dispatch:r},d),Y([...u,...s],{state:i,dispatch:r},d),n.version?.length&&$.patchVersions(n.version,{state:i,dispatch:r},d),n.product?.length&&z.patchProducts(n.product,{state:i,dispatch:r},d);const I=u.map(c=>({id:c.entityId,type:c.entityType})),A=I.map(c=>({type:"entities",id:c.id})),M=()=>r(m.detailsPanelQueries.util.invalidateTags(A)),N=m.detailsPanelQueries.util.selectInvalidatedBy(i,I),U=m.detailsPanelQueries.util.selectInvalidatedBy(i,A);for(const c of U){if(c.endpointName!=="getEntitiesDetailsPanel")continue;const p=r(m.detailsPanelQueries.util.updateQueryData(c.endpointName,c.originalArgs,k=>{for(const h of k)W.patchDetailsPanelEntity(u,h)}));d.push(p)}try{await l;const c=n.task||[],p=n.folder||[],k=n.version||[],h=n.product||[];if(a&&((c.length||p.length)&&b(r,a,["folderColumnStats","taskColumnStats","entityListItemsColumnStats"]),(k.length||h.length)&&b(r,a,["productColumnStats","versionColumnStats","entityListItemsColumnStats"])),c.length===0&&p.length===0)return;const g=C.getUpdatedEntityIds(c),_=C.getUpdatedEntityIds(p),F=g.map(v=>({type:"overviewTask",id:v})),j=T.default.util.selectInvalidatedBy(i,F).filter(v=>v.endpointName==="getTasksListInfinite");if(g.length>0&&a){for(const q of j)await S.refetchTasksForCacheEntry({dispatch:r,projectName:a,updatedTaskIds:g,cacheEntry:q});const v=T.default.util.selectInvalidatedBy(i,F).filter(q=>q.endpointName==="getOverviewTasksByFolders");for(const q of v)await S.refetchOverviewTasksForCacheEntry({dispatch:r,projectName:a,updatedTaskIds:g,cacheEntry:q})}const H=(n.folder||[]).some(v=>v.type==="delete");_.length>0&&a&&!H&&r(E.foldersQueries.util.invalidateTags([{type:"folder",id:"LIST"}]))}catch{for(const p of d)p.undo();N.length&&M()}},invalidatesTags:(e,s,{operationsRequestModel:a,projectName:r})=>{const l=[{type:"kanban",id:"project-"+r}],o=[],u=[],n=[];let i=!1;return a.operations?.forEach(d=>{const{entityId:f}=d;f?(o.push({type:"progress",id:f}),u.push({type:"entityListItem",id:f})):o.push({type:"progress",id:"LIST"}),d.data?.attrib&&(i=!0)}),i&&n.push({type:"tasksFolder",id:r}),[...l,...o,...u,...n]}})})}),{useUpdateOverviewEntitiesMutation:ee}=Z;exports.createLinkDeletionPatch=D;exports.deleteLinksFromEntities=J;exports.patchOverviewEntities=K;exports.patchOverviewFolders=L;exports.patchOverviewTasks=O;exports.useUpdateOverviewEntitiesMutation=ee;
2
2
  //# sourceMappingURL=updateOverview.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"updateOverview.cjs.js","sources":["../../../../../../src/api/queries/overview/updateOverview.ts"],"sourcesContent":["import { foldersQueries } from '../folders'\nimport { detailsPanelQueries } from '../entities/getEntityPanel'\nimport { operationsApi } from '@shared/api/generated'\nimport { entityListsQueriesGql } from '../entityLists/updateLists'\nimport type {\n OperationsResponseModel,\n OperationModel,\n OperationsApiArg,\n} from '@shared/api/generated'\nimport getOverviewApi from './getOverview'\nimport { patchDetailsPanelEntity } from '@shared/api/queries/entities'\nimport { FetchBaseQueryError, RootState } from '@reduxjs/toolkit/query'\nimport { ThunkDispatch, UnknownAction } from '@reduxjs/toolkit'\nimport { EditorTaskNode } from '@shared/containers/ProjectTreeTable'\nimport { getUpdatedEntityIds } from './filterRefetchUtils'\nimport {\n refetchTasksForCacheEntry,\n refetchOverviewTasksForCacheEntry,\n} from './refetchFilteredEntities'\nimport { patchVersions } from './patchVersions'\nimport { patchProducts } from './patchProducts'\n// these operations are dedicated to the overview page\n// this mean cache updates are custom for the overview page here\n\n// Helper function to update entities with operation data\nconst updateEntityWithOperation = (entity: any, operationData: any) => {\n // Update top-level properties directly\n Object.keys(operationData).forEach((key) => {\n if (key === 'attrib' || key === 'links' || key === 'deleteLinks') return\n entity[key] = operationData[key]\n })\n\n // Handle attrib merging\n if (operationData.attrib) {\n entity.attrib = {\n ...entity.attrib,\n ...operationData.attrib,\n }\n }\n\n // Handle links merging\n if (operationData.links) {\n const existingLinks = entity.links || []\n const newLinks = operationData.links || []\n\n // Ensure links structure exists\n if (!entity.links) entity.links = []\n\n // Process links directly\n entity.links = [...existingLinks]\n\n newLinks.forEach((newLink: any) => {\n const existingIndex = entity.links.findIndex((link: any) => link.id === newLink.id)\n\n if (existingIndex !== -1) {\n entity.links[existingIndex] = { ...entity.links[existingIndex], ...newLink }\n } else {\n entity.links.push(newLink)\n }\n })\n }\n\n // Handle links deletion\n if (operationData.deleteLinks) {\n const linksToDelete = operationData.deleteLinks || []\n\n // Ensure links structure exists\n if (!entity.links) entity.links = []\n\n // Remove links by ID\n linksToDelete.forEach((linkId: string) => {\n entity.links = entity.links.filter((link: any) => link.id !== linkId)\n })\n }\n}\n\nconst getOverviewTaskTags = (tasks: Pick<OperationModel, 'entityId' | 'data'>[]) => {\n return [\n { type: 'overviewTask', id: 'LIST' },\n ...tasks.map((op) => ({ type: 'overviewTask', id: op.entityId })),\n // we also add the projectName so that tasks that do not exist in the cache can still invalidate\n ...tasks\n .filter((op) => op.data?.projectName)\n .map((op) => ({\n type: 'overviewTask',\n id: op.data?.projectName,\n })),\n ]\n}\n\nconst getOverviewFolderTags = (folders: Pick<OperationModel, 'entityId' | 'data'>[]) => {\n return [\n ...folders.map((op) => ({ type: 'folder', id: op.entityId })),\n // we also add the projectName so that tasks that do not exist in the cache can still invalidate\n ...folders\n .filter((op) => op.data?.projectName)\n .map((op) => ({\n type: 'folder',\n id: op.data?.projectName,\n })),\n ]\n}\n\nexport type PatchOperation = Pick<OperationModel, 'entityId' | 'entityType' | 'data'> & {\n type?: OperationModel['type']\n}\n\n// Helper function to create a patch operation for deleting links\nexport const createLinkDeletionPatch = (\n entityId: string,\n entityType: OperationModel['entityType'],\n linkIds: string[],\n): PatchOperation => {\n return {\n entityId,\n entityType,\n type: 'update',\n data: { deleteLinks: linkIds },\n }\n}\n\n// Utility function to delete specific links by ID from entities\nexport const deleteLinksFromEntities = (\n entities: { entityId: string; entityType: OperationModel['entityType'] }[],\n linkIds: string[],\n): PatchOperation[] => {\n return entities.map((entity) =>\n createLinkDeletionPatch(entity.entityId, entity.entityType, linkIds),\n )\n}\n\n// Generic helper function to patch entities based on their type\nexport const patchOverviewEntities = (\n entities: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n // Group entities by type\n const entitiesByType = entities.reduce((acc, entity) => {\n if (!acc[entity.entityType]) {\n acc[entity.entityType] = []\n }\n acc[entity.entityType].push(entity)\n return acc\n }, {} as Record<string, PatchOperation[]>)\n\n // Patch each entity type using the appropriate function\n if (entitiesByType.task) {\n patchOverviewTasks(entitiesByType.task, { state, dispatch }, patches)\n }\n if (entitiesByType.folder) {\n patchOverviewFolders(entitiesByType.folder, { state, dispatch }, patches)\n }\n // Add more entity types as needed\n // if (entitiesByType.product) { ... }\n // if (entitiesByType.version) { ... }\n // etc.\n}\n\nexport const patchOverviewTasks = (\n tasks: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n const tags = getOverviewTaskTags(tasks)\n const taskEntries = getOverviewApi.util.selectInvalidatedBy(state, tags)\n\n for (const entry of taskEntries) {\n if (entry.endpointName === 'getTasksListInfinite') {\n // patch getTasksListInfinite\n const tasksPatch = dispatch(\n getOverviewApi.util.updateQueryData('getTasksListInfinite', entry.originalArgs, (draft) => {\n // Apply each change to matching tasks in all pages\n for (const taskOperation of tasks) {\n if (taskOperation.type === 'create' && taskOperation.data) {\n // push operation data to first page\n // @ts-expect-error\n draft.pages[0].tasks.push(taskOperation.data)\n } else {\n // Iterate through all pages in the infinite query\n for (const page of draft.pages) {\n // TODO: task is not found here, why?\n const task = page.tasks.find((task) => task.id === taskOperation.entityId)\n if (task) {\n updateEntityWithOperation(task, taskOperation.data)\n }\n }\n }\n }\n }),\n )\n\n // add the patch to the list of patches\n patches?.push(tasksPatch)\n } else {\n // this updates the main overview cache task\n // it also updates any GetTasksByParent caches\n const tasksPatch = dispatch(\n getOverviewApi.util.updateQueryData(\n entry.endpointName as 'getOverviewTasksByFolders' | 'GetTasksByParent' | 'GetTasksList',\n entry.originalArgs,\n (draft) => {\n // Apply each change to matching tasks in the cache\n for (const taskOperation of tasks) {\n if (\n taskOperation.type === 'create' &&\n taskOperation.data &&\n entry.originalArgs.parentIds?.includes(taskOperation.data.folderId)\n ) {\n const patchTask = (tasksArrayDraft: EditorTaskNode[]) => {\n // @ts-expect-error\n tasksArrayDraft.push(taskOperation.data)\n }\n\n // Check if draft is an array or an object with a tasks property\n if (Array.isArray(draft)) {\n patchTask(draft)\n } else if (draft.tasks && Array.isArray(draft.tasks)) {\n // Handle object with tasks array case (like in GetTasksList)\n const draftArray = draft.tasks\n patchTask(draftArray)\n }\n } else {\n const patchTask = (tasksArrayDraft: EditorTaskNode[]) => {\n const task = tasksArrayDraft.find((task) => task.id === taskOperation.entityId)\n if (task) {\n updateEntityWithOperation(task, taskOperation.data)\n }\n }\n\n // Check if draft is an array or an object with a tasks property\n if (Array.isArray(draft)) {\n patchTask(draft)\n } else if (draft.tasks && Array.isArray(draft.tasks)) {\n // Handle object with tasks array case (like in GetTasksList)\n const draftArray = draft.tasks\n patchTask(draftArray)\n }\n }\n }\n },\n ),\n )\n // add the patch to the list of patches\n patches?.push(tasksPatch)\n }\n }\n}\n\nconst invalidateOverviewTasks = (\n tasks: PatchOperation[],\n {\n dispatch,\n }: {\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n) => {\n if (!tasks.length) return\n dispatch(getOverviewApi.util.invalidateTags(getOverviewTaskTags(tasks)))\n}\n\nexport const patchOverviewFolders = (\n folders: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n const folderEntries = foldersQueries.util\n .selectInvalidatedBy(state, getOverviewFolderTags(folders))\n .filter((entry) => entry.endpointName === 'getFolderList')\n for (const entry of folderEntries) {\n const folderPatch = dispatch(\n foldersQueries.util.updateQueryData(\n entry.endpointName as 'getFolderList',\n entry.originalArgs,\n (draft) => {\n // Create a Map for O(1) folder lookups\n const folderMap = new Map()\n draft.folders.forEach((folder) => {\n folderMap.set(folder.id, folder)\n })\n\n for (const folderOperation of folders) {\n if (folderOperation.type === 'create' && folderOperation.data) {\n // push operation data to first page\n // @ts-expect-error\n draft.folders.push(folderOperation.data)\n } else {\n const folder = folderMap.get(folderOperation.entityId)\n\n if (folder) {\n updateEntityWithOperation(folder, folderOperation.data)\n }\n }\n }\n },\n ),\n )\n // add the patch to the list of patches\n patches?.push(folderPatch)\n }\n}\n\nconst patchListItems = (\n entities: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n const tags = entities.map((op) => ({ type: 'entityListItem', id: op.entityId }))\n const entries = entityListsQueriesGql.util.selectInvalidatedBy(state, tags)\n\n for (const entry of entries) {\n if (entry.endpointName === 'getListItemsInfinite') {\n const listItemsPatch = dispatch(\n entityListsQueriesGql.util.updateQueryData(\n 'getListItemsInfinite',\n entry.originalArgs,\n (draft) => {\n // Apply each change to matching tasks in all pages\n for (const listOperation of entities) {\n if (listOperation.type === 'update' && listOperation.data) {\n // Iterate through all pages in the infinite query\n for (const page of draft.pages) {\n const item = page.items.find((item) => item.entityId === listOperation.entityId)\n if (item) {\n updateEntityWithOperation(item, listOperation.data)\n }\n }\n }\n }\n },\n ),\n )\n\n // add the patch to the list of patches\n patches?.push(listItemsPatch)\n }\n }\n}\n\nconst splitByOpType = (operations: OperationModel[]) => {\n return operations.reduce(\n (acc: Record<OperationModel['type'], OperationModel[]>, operation) => {\n acc[operation.type].push(operation)\n return acc\n },\n {\n create: [],\n update: [],\n delete: [],\n },\n )\n}\n\nconst operationsEnhanced = operationsApi.enhanceEndpoints({\n endpoints: {\n operations: {},\n },\n})\n\n// enhance the argument type to include some extra fields\ninterface UpdateOverviewEntitiesArg extends OperationsApiArg {\n patchOperations?: PatchOperation[] // extra entities to patch\n}\n\nconst operationsApiEnhancedInjected = operationsEnhanced.injectEndpoints({\n endpoints: (build) => ({\n updateOverviewEntities: build.mutation<\n OperationsResponseModel | undefined,\n UpdateOverviewEntitiesArg\n >({\n async queryFn(arg, { dispatch }) {\n try {\n const result = await dispatch(operationsEnhanced.endpoints.operations.initiate(arg))\n\n // Check if the network request itself failed (offline, timeout, etc.)\n if (result.error) {\n return { error: result.error as FetchBaseQueryError }\n }\n\n const data = result.data\n // check for any errors in the result\n const uniqueErrors = new Set()\n const uniqueErrorCodes = new Set()\n for (const op of data?.operations || []) {\n if (op.success === false && op.detail) {\n if (!uniqueErrors.has(op.detail)) {\n uniqueErrors.add(op.detail)\n }\n if (!uniqueErrorCodes.has(op.errorCode)) {\n uniqueErrorCodes.add(op.errorCode)\n }\n }\n }\n\n if (uniqueErrors.size > 0) {\n const error = {\n status: 'FETCH_ERROR',\n error: Array.from(uniqueErrors).join(', '),\n errorCodes: Array.from(uniqueErrorCodes),\n } as FetchBaseQueryError\n return { error }\n } else {\n return { data }\n }\n } catch (e: any) {\n console.error(e)\n const error = { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError\n return { error }\n }\n },\n async onQueryStarted(\n { operationsRequestModel, patchOperations = [], projectName },\n { dispatch, queryFulfilled, getState },\n ) {\n if (!operationsRequestModel.operations?.length) return\n const { operations } = operationsRequestModel\n // we need to split the operations by entity type\n const operationsByType = operations.reduce(\n (acc: Record<OperationModel['entityType'], OperationModel[]>, operation) => {\n acc[operation.entityType].push(operation)\n return acc\n },\n {\n task: [],\n folder: [],\n product: [],\n version: [],\n representation: [],\n workfile: [],\n },\n )\n\n // collect patches incase we need to undo them\n const state = getState()\n const patches: any[] = []\n\n // patch the overview tasks\n if (operationsByType.task?.length) {\n // split operations by operation type\n const { delete: deleteOps, update } = splitByOpType(operationsByType.task)\n // filter out updates that are in updateToPatch as we patch them later on\n const updatesToPatch = update.filter(\n (op) => !patchOperations.some((dep) => dep.entityId === op.entityId),\n )\n // update existing tasks\n patchOverviewTasks(updatesToPatch, { state, dispatch }, patches)\n // invalidate the caches for tasks being created and deleted\n invalidateOverviewTasks([...deleteOps], {\n dispatch,\n })\n }\n\n // patch the overview folders (any other folders from foldersList)\n if (operationsByType.folder?.length) {\n // split operations by operation type\n const { delete: deleteOps, update } = splitByOpType(operationsByType.folder)\n // filter out updates that are in updateToPatch as we patch them later on\n const updatesToPatch = update.filter(\n (op) => !patchOperations.some((dep) => dep.entityId === op.entityId),\n )\n // update existing folders\n patchOverviewFolders(updatesToPatch, { state, dispatch }, patches)\n // invalidate the caches for folders being created and deleted\n if (deleteOps.length) {\n dispatch(foldersQueries.util.invalidateTags([{ type: 'folder', id: 'LIST' }]))\n }\n }\n\n const patchExtraTasks = patchOperations.filter((op) => op.entityType === 'task')\n const patchExtraFolders = patchOperations.filter((op) => op.entityType === 'folder')\n\n if (patchExtraTasks.length) {\n // often used for updating inherited dependents\n patchOverviewTasks(patchExtraTasks, { state, dispatch }, patches)\n }\n\n if (patchExtraFolders.length) {\n // often used for updating inherited dependents\n patchOverviewFolders(patchExtraFolders, { state, dispatch }, patches)\n }\n\n // patch the list items\n patchListItems([...operations, ...patchOperations], { state, dispatch }, patches)\n\n // patch versions\n if (operationsByType.version?.length) {\n patchVersions(operationsByType.version, { state, dispatch }, patches)\n }\n\n // patch products\n if (operationsByType.product?.length) {\n patchProducts(operationsByType.product, { state, dispatch }, patches)\n }\n\n // try to patch any details panels\n // first we patch the individual entities\n // then we patch the details panel cache\n const entityTags = operations.map((op) => ({\n id: op.entityId,\n type: op.entityType,\n }))\n const entitiesTags = entityTags.map((tag) => ({\n type: 'entities',\n id: tag.id,\n }))\n\n // invalidates the details panel cache so that it fetches all individual entities again (using it's updated cache)\n const invalidateEntryPanel = () =>\n dispatch(detailsPanelQueries.util.invalidateTags(entitiesTags))\n\n // the individual entities that are patched for the details panel\n // remember the details panel cache is made up of individual entity caches\n const detailsPanelEntityCaches = detailsPanelQueries.util.selectInvalidatedBy(\n state,\n entityTags,\n )\n\n // the cache for the whole details panel\n const detailsPanelEntitiesCaches = detailsPanelQueries.util.selectInvalidatedBy(\n state,\n entitiesTags,\n )\n\n for (const entry of detailsPanelEntitiesCaches) {\n if (entry.endpointName !== 'getEntitiesDetailsPanel') continue\n const entitiesDetailsResult = dispatch(\n detailsPanelQueries.util.updateQueryData(\n entry.endpointName as 'getEntitiesDetailsPanel',\n entry.originalArgs,\n (draft) => {\n for (const entity of draft) {\n patchDetailsPanelEntity(operations, entity)\n }\n },\n ),\n )\n\n // add the patch to the list of patches\n patches.push(entitiesDetailsResult)\n }\n\n try {\n await queryFulfilled\n\n // Background refetch logic - runs after successful mutation\n // This ensures calculated attributes are up-to-date and entities are correctly filtered\n\n const taskOperations = operationsByType.task || []\n const folderOperations = operationsByType.folder || []\n\n // Early exit if no operations\n if (taskOperations.length === 0 && folderOperations.length === 0) {\n return\n }\n\n // Extract updated entity IDs (always needed for refetch)\n const updatedTaskIds = getUpdatedEntityIds(taskOperations)\n const updatedFolderIds = getUpdatedEntityIds(folderOperations)\n\n // Get all active task list cache entries\n const overviewTaskTags = updatedTaskIds.map((id) => ({ type: 'overviewTask', id }))\n const tasksListInfiniteEntries = getOverviewApi.util\n .selectInvalidatedBy(state, overviewTaskTags)\n .filter((entry) => entry.endpointName === 'getTasksListInfinite')\n\n // Requirement: \"refetch the full data for the specific entity/entities\"\n // For each cache with its own filter, fetch entities and update that cache\n if (updatedTaskIds.length > 0 && projectName) {\n // Process getTasksListInfinite caches\n for (const entry of tasksListInfiniteEntries) {\n await refetchTasksForCacheEntry({\n dispatch,\n projectName,\n updatedTaskIds,\n cacheEntry: entry,\n })\n }\n\n // Process getOverviewTasksByFolders caches\n // Use selectInvalidatedBy to get only caches that contain the updated tasks\n const overviewTasksEntries = getOverviewApi.util\n .selectInvalidatedBy(state, overviewTaskTags)\n .filter((entry) => entry.endpointName === 'getOverviewTasksByFolders')\n\n for (const entry of overviewTasksEntries) {\n await refetchOverviewTasksForCacheEntry({\n dispatch,\n projectName,\n updatedTaskIds,\n cacheEntry: entry,\n })\n }\n }\n\n // Always refetch folders if they were updated (for calculated attributes)\n // Not conditional on affectsFilter - requirement says \"always refetch entities\"\n // Only invalidate if we haven't already done so for delete operations\n const hasDeleteOps = (operationsByType.folder || []).some(\n (op: OperationModel) => op.type === 'delete',\n )\n if (updatedFolderIds.length > 0 && projectName && !hasDeleteOps) {\n dispatch(foldersQueries.util.invalidateTags([{ type: 'folder', id: 'LIST' }]))\n }\n } catch (error) {\n // undo all patches if there is an error\n for (const patch of patches) {\n patch.undo()\n }\n\n if (detailsPanelEntityCaches.length) {\n // we invalidate the tags for the detailsPanelEntityCaches that were patched\n // invalidate the details panel cache\n invalidateEntryPanel()\n }\n }\n },\n invalidatesTags: (_r, _e, { operationsRequestModel, projectName }) => {\n type Tags = { id: string; type: string }[]\n const userDashboardTags: Tags = [{ type: 'kanban', id: 'project-' + projectName }],\n taskProgressTags: Tags = [],\n entityListItemTags: Tags = [],\n tasksFolderTags: Tags = []\n\n let hasAttribOp = false\n operationsRequestModel.operations?.forEach((op) => {\n const { entityId } = op\n if (entityId) {\n taskProgressTags.push({ type: 'progress', id: entityId })\n // Invalidate list item cache for this entity to trigger background refetch\n entityListItemTags.push({ type: 'entityListItem', id: entityId })\n } else {\n // new entity created, so we should invalidate everything\n taskProgressTags.push({ type: 'progress', id: 'LIST' })\n }\n if ((op.data as any)?.attrib) hasAttribOp = true\n })\n\n if (hasAttribOp) {\n tasksFolderTags.push({ type: 'tasksFolder', id: projectName })\n }\n\n return [\n ...userDashboardTags,\n ...taskProgressTags,\n ...entityListItemTags,\n ...tasksFolderTags,\n ]\n },\n }),\n }),\n})\n\nexport const { useUpdateOverviewEntitiesMutation } = operationsApiEnhancedInjected\n"],"names":["updateEntityWithOperation","entity","operationData","key","existingLinks","newLinks","newLink","existingIndex","link","linksToDelete","linkId","getOverviewTaskTags","tasks","op","getOverviewFolderTags","folders","createLinkDeletionPatch","entityId","entityType","linkIds","deleteLinksFromEntities","entities","patchOverviewEntities","state","dispatch","patches","entitiesByType","acc","patchOverviewTasks","patchOverviewFolders","tags","taskEntries","getOverviewApi","entry","tasksPatch","draft","taskOperation","page","task","patchTask","tasksArrayDraft","draftArray","invalidateOverviewTasks","folderEntries","foldersQueries","folderPatch","folderMap","folder","folderOperation","patchListItems","entries","entityListsQueriesGql","listItemsPatch","listOperation","item","splitByOpType","operations","operation","operationsEnhanced","operationsApi","operationsApiEnhancedInjected","build","arg","result","data","uniqueErrors","uniqueErrorCodes","e","operationsRequestModel","patchOperations","projectName","queryFulfilled","getState","operationsByType","deleteOps","update","updatesToPatch","dep","patchExtraTasks","patchExtraFolders","patchVersions","patchProducts","entityTags","entitiesTags","tag","invalidateEntryPanel","detailsPanelQueries","detailsPanelEntityCaches","detailsPanelEntitiesCaches","entitiesDetailsResult","patchDetailsPanelEntity","taskOperations","folderOperations","updatedTaskIds","getUpdatedEntityIds","updatedFolderIds","overviewTaskTags","id","tasksListInfiniteEntries","refetchTasksForCacheEntry","overviewTasksEntries","refetchOverviewTasksForCacheEntry","hasDeleteOps","patch","_r","_e","userDashboardTags","taskProgressTags","entityListItemTags","tasksFolderTags","hasAttribOp","useUpdateOverviewEntitiesMutation"],"mappings":"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"}
1
+ {"version":3,"file":"updateOverview.cjs.js","sources":["../../../../../../src/api/queries/overview/updateOverview.ts"],"sourcesContent":["import { foldersQueries } from '../folders'\nimport { detailsPanelQueries } from '../entities/getEntityPanel'\nimport { operationsApi } from '@shared/api/generated'\nimport { entityListsQueriesGql } from '../entityLists/updateLists'\nimport type {\n OperationsResponseModel,\n OperationModel,\n OperationsApiArg,\n} from '@shared/api/generated'\nimport getOverviewApi from './getOverview'\nimport { patchDetailsPanelEntity } from '@shared/api/queries/entities'\nimport { FetchBaseQueryError, RootState } from '@reduxjs/toolkit/query'\nimport { ThunkDispatch, UnknownAction } from '@reduxjs/toolkit'\nimport { EditorTaskNode } from '@shared/containers/ProjectTreeTable'\nimport { getUpdatedEntityIds } from './filterRefetchUtils'\nimport {\n refetchTasksForCacheEntry,\n refetchOverviewTasksForCacheEntry,\n} from './refetchFilteredEntities'\nimport { patchVersions } from './patchVersions'\nimport { patchProducts } from './patchProducts'\n// these operations are dedicated to the overview page\n// this mean cache updates are custom for the overview page here\n\n// Helper function to update entities with operation data\nconst updateEntityWithOperation = (entity: any, operationData: any) => {\n // Update top-level properties directly\n Object.keys(operationData).forEach((key) => {\n if (key === 'attrib' || key === 'links' || key === 'deleteLinks') return\n entity[key] = operationData[key]\n })\n\n // Handle attrib merging\n if (operationData.attrib) {\n entity.attrib = {\n ...entity.attrib,\n ...operationData.attrib,\n }\n }\n\n // Handle links merging\n if (operationData.links) {\n const existingLinks = entity.links || []\n const newLinks = operationData.links || []\n\n // Ensure links structure exists\n if (!entity.links) entity.links = []\n\n // Process links directly\n entity.links = [...existingLinks]\n\n newLinks.forEach((newLink: any) => {\n const existingIndex = entity.links.findIndex((link: any) => link.id === newLink.id)\n\n if (existingIndex !== -1) {\n entity.links[existingIndex] = { ...entity.links[existingIndex], ...newLink }\n } else {\n entity.links.push(newLink)\n }\n })\n }\n\n // Handle links deletion\n if (operationData.deleteLinks) {\n const linksToDelete = operationData.deleteLinks || []\n\n // Ensure links structure exists\n if (!entity.links) entity.links = []\n\n // Remove links by ID\n linksToDelete.forEach((linkId: string) => {\n entity.links = entity.links.filter((link: any) => link.id !== linkId)\n })\n }\n}\n\nconst getOverviewTaskTags = (tasks: Pick<OperationModel, 'entityId' | 'data'>[]) => {\n return [\n { type: 'overviewTask', id: 'LIST' },\n ...tasks.map((op) => ({ type: 'overviewTask', id: op.entityId })),\n // we also add the projectName so that tasks that do not exist in the cache can still invalidate\n ...tasks\n .filter((op) => op.data?.projectName)\n .map((op) => ({\n type: 'overviewTask',\n id: op.data?.projectName,\n })),\n ]\n}\n\nconst getOverviewFolderTags = (folders: Pick<OperationModel, 'entityId' | 'data'>[]) => {\n return [\n ...folders.map((op) => ({ type: 'folder', id: op.entityId })),\n // we also add the projectName so that tasks that do not exist in the cache can still invalidate\n ...folders\n .filter((op) => op.data?.projectName)\n .map((op) => ({\n type: 'folder',\n id: op.data?.projectName,\n })),\n ]\n}\n\nexport type PatchOperation = Pick<OperationModel, 'entityId' | 'entityType' | 'data'> & {\n type?: OperationModel['type']\n}\n\n// Helper function to create a patch operation for deleting links\nexport const createLinkDeletionPatch = (\n entityId: string,\n entityType: OperationModel['entityType'],\n linkIds: string[],\n): PatchOperation => {\n return {\n entityId,\n entityType,\n type: 'update',\n data: { deleteLinks: linkIds },\n }\n}\n\n// Utility function to delete specific links by ID from entities\nexport const deleteLinksFromEntities = (\n entities: { entityId: string; entityType: OperationModel['entityType'] }[],\n linkIds: string[],\n): PatchOperation[] => {\n return entities.map((entity) =>\n createLinkDeletionPatch(entity.entityId, entity.entityType, linkIds),\n )\n}\n\n// Generic helper function to patch entities based on their type\nexport const patchOverviewEntities = (\n entities: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n // Group entities by type\n const entitiesByType = entities.reduce((acc, entity) => {\n if (!acc[entity.entityType]) {\n acc[entity.entityType] = []\n }\n acc[entity.entityType].push(entity)\n return acc\n }, {} as Record<string, PatchOperation[]>)\n\n // Patch each entity type using the appropriate function\n if (entitiesByType.task) {\n patchOverviewTasks(entitiesByType.task, { state, dispatch }, patches)\n }\n if (entitiesByType.folder) {\n patchOverviewFolders(entitiesByType.folder, { state, dispatch }, patches)\n }\n // Add more entity types as needed\n // if (entitiesByType.product) { ... }\n // if (entitiesByType.version) { ... }\n // etc.\n}\n\nexport const patchOverviewTasks = (\n tasks: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n const tags = getOverviewTaskTags(tasks)\n const taskEntries = getOverviewApi.util.selectInvalidatedBy(state, tags)\n\n for (const entry of taskEntries) {\n if (entry.endpointName === 'getTasksListInfinite') {\n // patch getTasksListInfinite\n const tasksPatch = dispatch(\n getOverviewApi.util.updateQueryData('getTasksListInfinite', entry.originalArgs, (draft) => {\n // Apply each change to matching tasks in all pages\n for (const taskOperation of tasks) {\n if (taskOperation.type === 'create' && taskOperation.data) {\n // push operation data to first page\n // @ts-expect-error\n draft.pages[0].tasks.push(taskOperation.data)\n } else {\n // Iterate through all pages in the infinite query\n for (const page of draft.pages) {\n // TODO: task is not found here, why?\n const task = page.tasks.find((task) => task.id === taskOperation.entityId)\n if (task) {\n updateEntityWithOperation(task, taskOperation.data)\n }\n }\n }\n }\n }),\n )\n\n // add the patch to the list of patches\n patches?.push(tasksPatch)\n } else {\n // this updates the main overview cache task\n // it also updates any GetTasksByParent caches\n const tasksPatch = dispatch(\n getOverviewApi.util.updateQueryData(\n entry.endpointName as 'getOverviewTasksByFolders' | 'GetTasksByParent' | 'GetTasksList',\n entry.originalArgs,\n (draft) => {\n // Apply each change to matching tasks in the cache\n for (const taskOperation of tasks) {\n if (\n taskOperation.type === 'create' &&\n taskOperation.data &&\n entry.originalArgs.parentIds?.includes(taskOperation.data.folderId)\n ) {\n const patchTask = (tasksArrayDraft: EditorTaskNode[]) => {\n // @ts-expect-error\n tasksArrayDraft.push(taskOperation.data)\n }\n\n // Check if draft is an array or an object with a tasks property\n if (Array.isArray(draft)) {\n patchTask(draft)\n } else if (draft.tasks && Array.isArray(draft.tasks)) {\n // Handle object with tasks array case (like in GetTasksList)\n const draftArray = draft.tasks\n patchTask(draftArray)\n }\n } else {\n const patchTask = (tasksArrayDraft: EditorTaskNode[]) => {\n const task = tasksArrayDraft.find((task) => task.id === taskOperation.entityId)\n if (task) {\n updateEntityWithOperation(task, taskOperation.data)\n }\n }\n\n // Check if draft is an array or an object with a tasks property\n if (Array.isArray(draft)) {\n patchTask(draft)\n } else if (draft.tasks && Array.isArray(draft.tasks)) {\n // Handle object with tasks array case (like in GetTasksList)\n const draftArray = draft.tasks\n patchTask(draftArray)\n }\n }\n }\n },\n ),\n )\n // add the patch to the list of patches\n patches?.push(tasksPatch)\n }\n }\n}\n\nconst invalidateOverviewTasks = (\n tasks: PatchOperation[],\n {\n dispatch,\n }: {\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n) => {\n if (!tasks.length) return\n dispatch(getOverviewApi.util.invalidateTags(getOverviewTaskTags(tasks)))\n}\n\n// Debounced, per-project invalidation of the footer stats caches after entity ops.\ntype StatsTagType =\n | 'folderColumnStats'\n | 'taskColumnStats'\n | 'productColumnStats'\n | 'versionColumnStats'\n | 'entityListItemsColumnStats'\nconst statsRefetchTimers = new Map<string, ReturnType<typeof setTimeout>>()\nconst scheduleStatsRefetch = (\n dispatch: ThunkDispatch<any, any, UnknownAction>,\n projectName: string,\n tagTypes: StatsTagType[],\n) => {\n const key = `${projectName}:${tagTypes.join()}`\n const existing = statsRefetchTimers.get(key)\n if (existing) clearTimeout(existing)\n statsRefetchTimers.set(\n key,\n setTimeout(() => {\n statsRefetchTimers.delete(key)\n dispatch(\n getOverviewApi.util.invalidateTags(\n tagTypes.map((type) => ({ type, id: projectName })),\n ),\n )\n }, 500),\n )\n}\n\nexport const patchOverviewFolders = (\n folders: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n const folderEntries = foldersQueries.util\n .selectInvalidatedBy(state, getOverviewFolderTags(folders))\n .filter((entry) => entry.endpointName === 'getFolderList')\n for (const entry of folderEntries) {\n const folderPatch = dispatch(\n foldersQueries.util.updateQueryData(\n entry.endpointName as 'getFolderList',\n entry.originalArgs,\n (draft) => {\n // Create a Map for O(1) folder lookups\n const folderMap = new Map()\n draft.folders.forEach((folder) => {\n folderMap.set(folder.id, folder)\n })\n\n for (const folderOperation of folders) {\n if (folderOperation.type === 'create' && folderOperation.data) {\n // push operation data to first page\n // @ts-expect-error\n draft.folders.push(folderOperation.data)\n } else {\n const folder = folderMap.get(folderOperation.entityId)\n\n if (folder) {\n updateEntityWithOperation(folder, folderOperation.data)\n }\n }\n }\n },\n ),\n )\n // add the patch to the list of patches\n patches?.push(folderPatch)\n }\n}\n\nconst patchListItems = (\n entities: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n const tags = entities.map((op) => ({ type: 'entityListItem', id: op.entityId }))\n const entries = entityListsQueriesGql.util.selectInvalidatedBy(state, tags)\n\n for (const entry of entries) {\n if (entry.endpointName === 'getListItemsInfinite') {\n const listItemsPatch = dispatch(\n entityListsQueriesGql.util.updateQueryData(\n 'getListItemsInfinite',\n entry.originalArgs,\n (draft) => {\n // Apply each change to matching tasks in all pages\n for (const listOperation of entities) {\n if (listOperation.type === 'update' && listOperation.data) {\n // Iterate through all pages in the infinite query\n for (const page of draft.pages) {\n const item = page.items.find((item) => item.entityId === listOperation.entityId)\n if (item) {\n updateEntityWithOperation(item, listOperation.data)\n }\n }\n }\n }\n },\n ),\n )\n\n // add the patch to the list of patches\n patches?.push(listItemsPatch)\n }\n }\n}\n\nconst splitByOpType = (operations: OperationModel[]) => {\n return operations.reduce(\n (acc: Record<OperationModel['type'], OperationModel[]>, operation) => {\n acc[operation.type].push(operation)\n return acc\n },\n {\n create: [],\n update: [],\n delete: [],\n },\n )\n}\n\nconst operationsEnhanced = operationsApi.enhanceEndpoints({\n endpoints: {\n operations: {},\n },\n})\n\n// enhance the argument type to include some extra fields\ninterface UpdateOverviewEntitiesArg extends OperationsApiArg {\n patchOperations?: PatchOperation[] // extra entities to patch\n}\n\nconst operationsApiEnhancedInjected = operationsEnhanced.injectEndpoints({\n endpoints: (build) => ({\n updateOverviewEntities: build.mutation<\n OperationsResponseModel | undefined,\n UpdateOverviewEntitiesArg\n >({\n async queryFn(arg, { dispatch }) {\n try {\n const result = await dispatch(operationsEnhanced.endpoints.operations.initiate(arg))\n\n // Check if the network request itself failed (offline, timeout, etc.)\n if (result.error) {\n return { error: result.error as FetchBaseQueryError }\n }\n\n const data = result.data\n // check for any errors in the result\n const uniqueErrors = new Set()\n const uniqueErrorCodes = new Set()\n for (const op of data?.operations || []) {\n if (op.success === false && op.detail) {\n if (!uniqueErrors.has(op.detail)) {\n uniqueErrors.add(op.detail)\n }\n if (!uniqueErrorCodes.has(op.errorCode)) {\n uniqueErrorCodes.add(op.errorCode)\n }\n }\n }\n\n if (uniqueErrors.size > 0) {\n const error = {\n status: 'FETCH_ERROR',\n error: Array.from(uniqueErrors).join(', '),\n errorCodes: Array.from(uniqueErrorCodes),\n } as FetchBaseQueryError\n return { error }\n } else {\n return { data }\n }\n } catch (e: any) {\n console.error(e)\n const error = { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError\n return { error }\n }\n },\n async onQueryStarted(\n { operationsRequestModel, patchOperations = [], projectName },\n { dispatch, queryFulfilled, getState },\n ) {\n if (!operationsRequestModel.operations?.length) return\n const { operations } = operationsRequestModel\n // we need to split the operations by entity type\n const operationsByType = operations.reduce(\n (acc: Record<OperationModel['entityType'], OperationModel[]>, operation) => {\n acc[operation.entityType].push(operation)\n return acc\n },\n {\n task: [],\n folder: [],\n product: [],\n version: [],\n representation: [],\n workfile: [],\n },\n )\n\n // collect patches incase we need to undo them\n const state = getState()\n const patches: any[] = []\n\n // patch the overview tasks\n if (operationsByType.task?.length) {\n // split operations by operation type\n const { delete: deleteOps, update } = splitByOpType(operationsByType.task)\n // filter out updates that are in updateToPatch as we patch them later on\n const updatesToPatch = update.filter(\n (op) => !patchOperations.some((dep) => dep.entityId === op.entityId),\n )\n // update existing tasks\n patchOverviewTasks(updatesToPatch, { state, dispatch }, patches)\n // invalidate the caches for tasks being created and deleted\n invalidateOverviewTasks([...deleteOps], {\n dispatch,\n })\n }\n\n // patch the overview folders (any other folders from foldersList)\n if (operationsByType.folder?.length) {\n // split operations by operation type\n const { delete: deleteOps, update } = splitByOpType(operationsByType.folder)\n // filter out updates that are in updateToPatch as we patch them later on\n const updatesToPatch = update.filter(\n (op) => !patchOperations.some((dep) => dep.entityId === op.entityId),\n )\n // update existing folders\n patchOverviewFolders(updatesToPatch, { state, dispatch }, patches)\n // invalidate the caches for folders being created and deleted\n if (deleteOps.length) {\n dispatch(foldersQueries.util.invalidateTags([{ type: 'folder', id: 'LIST' }]))\n }\n }\n\n const patchExtraTasks = patchOperations.filter((op) => op.entityType === 'task')\n const patchExtraFolders = patchOperations.filter((op) => op.entityType === 'folder')\n\n if (patchExtraTasks.length) {\n // often used for updating inherited dependents\n patchOverviewTasks(patchExtraTasks, { state, dispatch }, patches)\n }\n\n if (patchExtraFolders.length) {\n // often used for updating inherited dependents\n patchOverviewFolders(patchExtraFolders, { state, dispatch }, patches)\n }\n\n // patch the list items\n patchListItems([...operations, ...patchOperations], { state, dispatch }, patches)\n\n // patch versions\n if (operationsByType.version?.length) {\n patchVersions(operationsByType.version, { state, dispatch }, patches)\n }\n\n // patch products\n if (operationsByType.product?.length) {\n patchProducts(operationsByType.product, { state, dispatch }, patches)\n }\n\n // try to patch any details panels\n // first we patch the individual entities\n // then we patch the details panel cache\n const entityTags = operations.map((op) => ({\n id: op.entityId,\n type: op.entityType,\n }))\n const entitiesTags = entityTags.map((tag) => ({\n type: 'entities',\n id: tag.id,\n }))\n\n // invalidates the details panel cache so that it fetches all individual entities again (using it's updated cache)\n const invalidateEntryPanel = () =>\n dispatch(detailsPanelQueries.util.invalidateTags(entitiesTags))\n\n // the individual entities that are patched for the details panel\n // remember the details panel cache is made up of individual entity caches\n const detailsPanelEntityCaches = detailsPanelQueries.util.selectInvalidatedBy(\n state,\n entityTags,\n )\n\n // the cache for the whole details panel\n const detailsPanelEntitiesCaches = detailsPanelQueries.util.selectInvalidatedBy(\n state,\n entitiesTags,\n )\n\n for (const entry of detailsPanelEntitiesCaches) {\n if (entry.endpointName !== 'getEntitiesDetailsPanel') continue\n const entitiesDetailsResult = dispatch(\n detailsPanelQueries.util.updateQueryData(\n entry.endpointName as 'getEntitiesDetailsPanel',\n entry.originalArgs,\n (draft) => {\n for (const entity of draft) {\n patchDetailsPanelEntity(operations, entity)\n }\n },\n ),\n )\n\n // add the patch to the list of patches\n patches.push(entitiesDetailsResult)\n }\n\n try {\n await queryFulfilled\n\n // Background refetch logic - runs after successful mutation\n // This ensures calculated attributes are up-to-date and entities are correctly filtered\n\n const taskOperations = operationsByType.task || []\n const folderOperations = operationsByType.folder || []\n const versionOperations = operationsByType.version || []\n const productOperations = operationsByType.product || []\n\n if (projectName) {\n if (taskOperations.length || folderOperations.length) {\n scheduleStatsRefetch(dispatch, projectName, [\n 'folderColumnStats',\n 'taskColumnStats',\n 'entityListItemsColumnStats',\n ])\n }\n if (versionOperations.length || productOperations.length) {\n scheduleStatsRefetch(dispatch, projectName, [\n 'productColumnStats',\n 'versionColumnStats',\n 'entityListItemsColumnStats',\n ])\n }\n }\n\n // Early exit if no operations\n if (taskOperations.length === 0 && folderOperations.length === 0) {\n return\n }\n\n // Extract updated entity IDs (always needed for refetch)\n const updatedTaskIds = getUpdatedEntityIds(taskOperations)\n const updatedFolderIds = getUpdatedEntityIds(folderOperations)\n\n // Get all active task list cache entries\n const overviewTaskTags = updatedTaskIds.map((id) => ({ type: 'overviewTask', id }))\n const tasksListInfiniteEntries = getOverviewApi.util\n .selectInvalidatedBy(state, overviewTaskTags)\n .filter((entry) => entry.endpointName === 'getTasksListInfinite')\n\n // Requirement: \"refetch the full data for the specific entity/entities\"\n // For each cache with its own filter, fetch entities and update that cache\n if (updatedTaskIds.length > 0 && projectName) {\n // Process getTasksListInfinite caches\n for (const entry of tasksListInfiniteEntries) {\n await refetchTasksForCacheEntry({\n dispatch,\n projectName,\n updatedTaskIds,\n cacheEntry: entry,\n })\n }\n\n // Process getOverviewTasksByFolders caches\n // Use selectInvalidatedBy to get only caches that contain the updated tasks\n const overviewTasksEntries = getOverviewApi.util\n .selectInvalidatedBy(state, overviewTaskTags)\n .filter((entry) => entry.endpointName === 'getOverviewTasksByFolders')\n\n for (const entry of overviewTasksEntries) {\n await refetchOverviewTasksForCacheEntry({\n dispatch,\n projectName,\n updatedTaskIds,\n cacheEntry: entry,\n })\n }\n }\n\n // Always refetch folders if they were updated (for calculated attributes)\n // Not conditional on affectsFilter - requirement says \"always refetch entities\"\n // Only invalidate if we haven't already done so for delete operations\n const hasDeleteOps = (operationsByType.folder || []).some(\n (op: OperationModel) => op.type === 'delete',\n )\n if (updatedFolderIds.length > 0 && projectName && !hasDeleteOps) {\n dispatch(foldersQueries.util.invalidateTags([{ type: 'folder', id: 'LIST' }]))\n }\n } catch (error) {\n // undo all patches if there is an error\n for (const patch of patches) {\n patch.undo()\n }\n\n if (detailsPanelEntityCaches.length) {\n // we invalidate the tags for the detailsPanelEntityCaches that were patched\n // invalidate the details panel cache\n invalidateEntryPanel()\n }\n }\n },\n invalidatesTags: (_r, _e, { operationsRequestModel, projectName }) => {\n type Tags = { id: string; type: string }[]\n const userDashboardTags: Tags = [{ type: 'kanban', id: 'project-' + projectName }],\n taskProgressTags: Tags = [],\n entityListItemTags: Tags = [],\n tasksFolderTags: Tags = []\n\n let hasAttribOp = false\n operationsRequestModel.operations?.forEach((op) => {\n const { entityId } = op\n if (entityId) {\n taskProgressTags.push({ type: 'progress', id: entityId })\n // Invalidate list item cache for this entity to trigger background refetch\n entityListItemTags.push({ type: 'entityListItem', id: entityId })\n } else {\n // new entity created, so we should invalidate everything\n taskProgressTags.push({ type: 'progress', id: 'LIST' })\n }\n if ((op.data as any)?.attrib) hasAttribOp = true\n })\n\n if (hasAttribOp) {\n tasksFolderTags.push({ type: 'tasksFolder', id: projectName })\n }\n\n return [\n ...userDashboardTags,\n ...taskProgressTags,\n ...entityListItemTags,\n ...tasksFolderTags,\n ]\n },\n }),\n }),\n})\n\nexport const { useUpdateOverviewEntitiesMutation } = operationsApiEnhancedInjected\n"],"names":["updateEntityWithOperation","entity","operationData","key","existingLinks","newLinks","newLink","existingIndex","link","linksToDelete","linkId","getOverviewTaskTags","tasks","op","getOverviewFolderTags","folders","createLinkDeletionPatch","entityId","entityType","linkIds","deleteLinksFromEntities","entities","patchOverviewEntities","state","dispatch","patches","entitiesByType","acc","patchOverviewTasks","patchOverviewFolders","tags","taskEntries","getOverviewApi","entry","tasksPatch","draft","taskOperation","page","task","patchTask","tasksArrayDraft","draftArray","invalidateOverviewTasks","statsRefetchTimers","scheduleStatsRefetch","projectName","tagTypes","existing","type","folderEntries","foldersQueries","folderPatch","folderMap","folder","folderOperation","patchListItems","entries","entityListsQueriesGql","listItemsPatch","listOperation","item","splitByOpType","operations","operation","operationsEnhanced","operationsApi","operationsApiEnhancedInjected","build","arg","result","data","uniqueErrors","uniqueErrorCodes","e","operationsRequestModel","patchOperations","queryFulfilled","getState","operationsByType","deleteOps","update","updatesToPatch","dep","patchExtraTasks","patchExtraFolders","patchVersions","patchProducts","entityTags","entitiesTags","tag","invalidateEntryPanel","detailsPanelQueries","detailsPanelEntityCaches","detailsPanelEntitiesCaches","entitiesDetailsResult","patchDetailsPanelEntity","taskOperations","folderOperations","versionOperations","productOperations","updatedTaskIds","getUpdatedEntityIds","updatedFolderIds","overviewTaskTags","id","tasksListInfiniteEntries","refetchTasksForCacheEntry","overviewTasksEntries","refetchOverviewTasksForCacheEntry","hasDeleteOps","patch","_r","_e","userDashboardTags","taskProgressTags","entityListItemTags","tasksFolderTags","hasAttribOp","useUpdateOverviewEntitiesMutation"],"mappings":"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"}