@ynput/ayon-frontend-shared 0.3.27 → 0.3.28

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 (721) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +25 -23
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +404 -190
  6. package/dist/ProjectTreeTable.es.js.map +1 -1
  7. package/dist/Slicer.cjs.js +1 -1
  8. package/dist/Slicer.es.js +19 -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.cjs4.js +1 -1
  17. package/dist/_virtual/index.cjs5.js +1 -1
  18. package/dist/_virtual/index.cjs9.js +1 -1
  19. package/dist/_virtual/index.es10.js +2 -2
  20. package/dist/_virtual/index.es11.js +2 -2
  21. package/dist/_virtual/index.es13.js +2 -2
  22. package/dist/_virtual/index.es14.js +5 -2
  23. package/dist/_virtual/index.es14.js.map +1 -1
  24. package/dist/_virtual/index.es15.js +2 -2
  25. package/dist/_virtual/index.es16.js +2 -2
  26. package/dist/_virtual/index.es17.js +2 -2
  27. package/dist/_virtual/index.es18.js +2 -2
  28. package/dist/_virtual/index.es19.js +2 -2
  29. package/dist/_virtual/index.es22.js +3 -3
  30. package/dist/_virtual/index.es23.js +5 -5
  31. package/dist/_virtual/index.es24.js +5 -5
  32. package/dist/_virtual/index.es4.js +2 -5
  33. package/dist/_virtual/index.es4.js.map +1 -1
  34. package/dist/_virtual/index.es5.js +5 -2
  35. package/dist/_virtual/index.es5.js.map +1 -1
  36. package/dist/_virtual/index.es9.js +2 -5
  37. package/dist/_virtual/index.es9.js.map +1 -1
  38. package/dist/api.cjs.js +1 -1
  39. package/dist/api.es.js +406 -402
  40. package/dist/api.es.js.map +1 -1
  41. package/dist/hooks.cjs.js +1 -1
  42. package/dist/hooks.es.js +15 -13
  43. package/dist/hooks.es.js.map +1 -1
  44. package/dist/index.cjs.js +1 -1
  45. package/dist/index.es.js +12 -10
  46. package/dist/index.es.js.map +1 -1
  47. package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js +1 -1
  48. package/dist/node_modules/match-sorter/dist/match-sorter.esm.es.js +1 -1
  49. package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
  50. package/dist/node_modules/parse-numeric-range/index.es.js +1 -1
  51. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +1 -1
  52. package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
  53. package/dist/node_modules/rehype/node_modules/vfile/lib/index.cjs.js +1 -1
  54. package/dist/node_modules/rehype/node_modules/vfile/lib/index.es.js +1 -1
  55. package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
  56. package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
  57. package/dist/shared/node_modules/@module-federation/runtime/dist/index.cjs.js +1 -1
  58. package/dist/shared/node_modules/@module-federation/runtime/dist/index.es.js +1 -1
  59. package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.cjs.js +1 -1
  60. package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.es.js +1 -1
  61. package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.cjs.js +1 -1
  62. package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.es.js +1 -1
  63. package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.cjs.js +1 -1
  64. package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.es.js +1 -1
  65. package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.cjs.js +1 -1
  66. package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.es.js +1 -1
  67. package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.cjs.js +1 -1
  68. package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.es.js +1 -1
  69. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.cjs.js +1 -1
  70. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.es.js +1 -1
  71. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.cjs.js +1 -1
  72. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.es.js +1 -1
  73. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js +1 -1
  74. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js.map +1 -1
  75. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.es.js +1 -1
  76. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/utils.cjs.js +1 -1
  77. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/utils.es.js +1 -1
  78. package/dist/shared/node_modules/@module-federation/sdk/dist/index.cjs.js +1 -1
  79. package/dist/shared/node_modules/@module-federation/sdk/dist/index.es.js +1 -1
  80. package/dist/shared/node_modules/@module-federation/sdk/dist/utils.cjs.js +1 -1
  81. package/dist/shared/node_modules/@module-federation/sdk/dist/utils.es.js +1 -1
  82. package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
  83. package/dist/shared/node_modules/prop-types/index.es.js +1 -1
  84. package/dist/shared/node_modules/react-is/index.cjs.js +1 -1
  85. package/dist/shared/node_modules/react-is/index.es.js +1 -1
  86. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
  87. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js.map +1 -1
  88. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
  89. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
  90. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js.map +1 -1
  91. package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
  92. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
  93. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js.map +1 -1
  94. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
  95. package/dist/shared/src/api/base/client.cjs.js +1 -1
  96. package/dist/shared/src/api/base/client.cjs.js.map +1 -1
  97. package/dist/shared/src/api/base/client.es.js +1 -0
  98. package/dist/shared/src/api/base/client.es.js.map +1 -1
  99. package/dist/shared/src/api/generated/graphql.cjs.js +58 -36
  100. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  101. package/dist/shared/src/api/generated/graphql.es.js +125 -99
  102. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  103. package/dist/shared/src/api/generated/graphqlLinks.cjs.js +69 -9
  104. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  105. package/dist/shared/src/api/generated/graphqlLinks.es.js +95 -35
  106. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  107. package/dist/shared/src/api/generated/projectFolders.cjs.js.map +1 -1
  108. package/dist/shared/src/api/generated/projectFolders.es.js.map +1 -1
  109. package/dist/shared/src/api/queries/entities/patchDetailsPanel.cjs.js +1 -1
  110. package/dist/shared/src/api/queries/entities/patchDetailsPanel.cjs.js.map +1 -1
  111. package/dist/shared/src/api/queries/entities/patchDetailsPanel.es.js +20 -19
  112. package/dist/shared/src/api/queries/entities/patchDetailsPanel.es.js.map +1 -1
  113. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +1 -1
  114. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  115. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +4 -3
  116. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  117. package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.cjs.js +2 -0
  118. package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.cjs.js.map +1 -0
  119. package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.es.js +64 -0
  120. package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.es.js.map +1 -0
  121. package/dist/shared/src/api/queries/links/getLinks.cjs.js +1 -1
  122. package/dist/shared/src/api/queries/links/getLinks.cjs.js.map +1 -1
  123. package/dist/shared/src/api/queries/links/getLinks.es.js +27 -26
  124. package/dist/shared/src/api/queries/links/getLinks.es.js.map +1 -1
  125. package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
  126. package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
  127. package/dist/shared/src/api/queries/overview/getOverview.es.js +104 -103
  128. package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
  129. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
  130. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  131. package/dist/shared/src/api/queries/overview/updateOverview.es.js +118 -111
  132. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  133. package/dist/shared/src/api/queries/project/updateProject.cjs.js +1 -1
  134. package/dist/shared/src/api/queries/project/updateProject.cjs.js.map +1 -1
  135. package/dist/shared/src/api/queries/project/updateProject.es.js +43 -19
  136. package/dist/shared/src/api/queries/project/updateProject.es.js.map +1 -1
  137. package/dist/shared/src/api/queries/users/getUsers.cjs.js +1 -1
  138. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  139. package/dist/shared/src/api/queries/users/getUsers.es.js +22 -21
  140. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  141. package/dist/shared/src/api/queries/views/getViews.cjs.js +1 -1
  142. package/dist/shared/src/api/queries/views/getViews.cjs.js.map +1 -1
  143. package/dist/shared/src/api/queries/views/getViews.es.js +24 -20
  144. package/dist/shared/src/api/queries/views/getViews.es.js.map +1 -1
  145. package/dist/shared/src/components/DateRangePicker/DateRangePicker.cjs.js +1 -1
  146. package/dist/shared/src/components/DateRangePicker/DateRangePicker.cjs.js.map +1 -1
  147. package/dist/shared/src/components/DateRangePicker/DateRangePicker.es.js +89 -88
  148. package/dist/shared/src/components/DateRangePicker/DateRangePicker.es.js.map +1 -1
  149. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
  150. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  151. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +3 -2
  152. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  153. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  154. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  155. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +6 -2
  156. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  157. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  158. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  159. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +3 -2
  160. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  161. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
  162. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
  163. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +3 -2
  164. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
  165. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  166. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
  167. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +5 -2
  168. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  169. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  170. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  171. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +9 -7
  172. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  173. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
  174. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
  175. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +5 -3
  176. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
  177. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  178. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  179. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +5 -4
  180. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  181. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  182. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  183. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +3 -2
  184. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  185. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
  186. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  187. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +3 -2
  188. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  189. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  190. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  191. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +9 -7
  192. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  193. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
  194. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
  195. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +3 -2
  196. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
  197. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  198. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  199. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +5 -3
  200. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  201. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +2 -2
  202. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  203. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +46 -43
  204. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  205. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  206. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  207. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +5 -3
  208. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  209. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
  210. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
  211. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +5 -3
  212. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
  213. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
  214. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
  215. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +9 -7
  216. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
  217. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  218. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  219. package/dist/shared/src/components/RenameForm/RenameForm.es.js +9 -7
  220. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  221. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
  222. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  223. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +3 -2
  224. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  225. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  226. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  227. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +5 -3
  228. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  229. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  230. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  231. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +6 -4
  232. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  233. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  234. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  235. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +5 -3
  236. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  237. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
  238. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  239. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +3 -2
  240. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  241. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
  242. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
  243. package/dist/shared/src/components/ReviewablesSelector/Card.es.js +5 -2
  244. package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
  245. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js +1 -1
  246. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js.map +1 -1
  247. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js +67 -77
  248. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js.map +1 -1
  249. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  250. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  251. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +192 -141
  252. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  253. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
  254. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
  255. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +7 -5
  256. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
  257. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  258. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  259. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +5 -3
  260. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  261. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js +1 -1
  262. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js.map +1 -1
  263. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js +3 -2
  264. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js.map +1 -1
  265. package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js +1 -1
  266. package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js.map +1 -1
  267. package/dist/shared/src/components/Thumbnail/Thumbnail.es.js +41 -44
  268. package/dist/shared/src/components/Thumbnail/Thumbnail.es.js.map +1 -1
  269. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +4 -4
  270. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  271. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +5 -3
  272. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  273. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  274. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  275. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +7 -5
  276. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  277. package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
  278. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  279. package/dist/shared/src/components/Watchers/Watchers.es.js +3 -2
  280. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  281. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  282. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  283. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +5 -3
  284. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  285. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  286. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  287. package/dist/shared/src/containers/Actions/Actions.es.js +5 -2
  288. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  289. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  290. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  291. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +5 -3
  292. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  293. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  294. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  295. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +5 -3
  296. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  297. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  298. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  299. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +5 -3
  300. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  301. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  302. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  303. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +5 -3
  304. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  305. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  306. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  307. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +5 -3
  308. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  309. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  310. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  311. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +3 -2
  312. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  313. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
  314. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
  315. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +20 -18
  316. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
  317. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
  318. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
  319. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +5 -3
  320. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
  321. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
  322. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
  323. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +5 -3
  324. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
  325. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
  326. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
  327. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +5 -2
  328. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
  329. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  330. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  331. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +5 -2
  332. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  333. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +2 -2
  334. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  335. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +67 -64
  336. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  337. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  338. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  339. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +5 -3
  340. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  341. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  342. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  343. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +5 -3
  344. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  345. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  346. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  347. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +5 -3
  348. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  349. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  350. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  351. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +5 -2
  352. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  353. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  354. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  355. package/dist/shared/src/containers/Feed/Feed.es.js +5 -4
  356. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  357. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
  358. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
  359. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +5 -3
  360. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
  361. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  362. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  363. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +5 -3
  364. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  365. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  366. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  367. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +5 -3
  368. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  369. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
  370. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  371. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +5 -3
  372. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  373. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
  374. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
  375. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +9 -7
  376. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
  377. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  378. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  379. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +5 -3
  380. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  381. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js +1 -1
  382. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js.map +1 -1
  383. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js +3 -2
  384. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js.map +1 -1
  385. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  386. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  387. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +6 -5
  388. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  389. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  390. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  391. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +3 -2
  392. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  393. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  394. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  395. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +565 -563
  396. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  397. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  398. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  399. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +61 -50
  400. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  401. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
  402. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
  403. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +9 -7
  404. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
  405. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +2 -2
  406. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  407. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +104 -102
  408. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  409. package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.cjs.js +10 -0
  410. package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.cjs.js.map +1 -0
  411. package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.es.js +25 -0
  412. package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.es.js.map +1 -0
  413. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  414. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  415. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +5 -3
  416. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  417. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  418. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  419. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +114 -112
  420. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  421. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +3 -3
  422. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  423. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +5 -4
  424. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  425. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
  426. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
  427. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +8 -8
  428. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
  429. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  430. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  431. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +5 -4
  432. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  433. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  434. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  435. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +21 -19
  436. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  437. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  438. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  439. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +113 -111
  440. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  441. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  442. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  443. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +109 -107
  444. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  445. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  446. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  447. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +106 -105
  448. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  449. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  450. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  451. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +107 -105
  452. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  453. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  454. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  455. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +101 -99
  456. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  457. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
  458. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
  459. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +337 -40
  460. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
  461. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  462. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  463. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +123 -119
  464. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  465. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  466. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  467. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +100 -98
  468. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  469. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  470. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  471. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +125 -120
  472. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  473. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  474. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  475. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +103 -101
  476. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  477. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  478. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  479. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +9 -7
  480. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  481. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  482. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  483. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +9 -7
  484. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  485. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  486. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  487. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +112 -110
  488. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  489. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
  490. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
  491. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +100 -98
  492. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
  493. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  494. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  495. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +110 -108
  496. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  497. package/dist/shared/src/containers/ProjectTreeTable/utils/expandRelativeDates.cjs.js.map +1 -1
  498. package/dist/shared/src/containers/ProjectTreeTable/utils/expandRelativeDates.es.js.map +1 -1
  499. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js +1 -1
  500. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map +1 -1
  501. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js +89 -356
  502. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
  503. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +1 -1
  504. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  505. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +41 -39
  506. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  507. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.cjs.js +1 -1
  508. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.cjs.js.map +1 -1
  509. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.es.js +29 -28
  510. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.es.js.map +1 -1
  511. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.cjs.js +2 -2
  512. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.cjs.js.map +1 -1
  513. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.es.js +31 -32
  514. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.es.js.map +1 -1
  515. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  516. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  517. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +7 -5
  518. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  519. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  520. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  521. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +98 -96
  522. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  523. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
  524. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
  525. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +5 -3
  526. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
  527. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js +1 -1
  528. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js.map +1 -1
  529. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js +3 -2
  530. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js.map +1 -1
  531. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  532. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  533. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +5 -3
  534. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  535. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  536. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  537. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +5 -3
  538. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  539. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
  540. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
  541. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +5 -3
  542. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
  543. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +1 -1
  544. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -1
  545. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +53 -49
  546. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
  547. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js +1 -1
  548. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js.map +1 -1
  549. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js +3 -2
  550. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
  551. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
  552. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
  553. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +9 -7
  554. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
  555. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js +1 -1
  556. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js.map +1 -1
  557. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js +21 -149
  558. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js.map +1 -1
  559. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
  560. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
  561. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +54 -53
  562. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
  563. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +1 -1
  564. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -1
  565. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +3 -2
  566. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -1
  567. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  568. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  569. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +5 -2
  570. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  571. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
  572. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
  573. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +10 -8
  574. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
  575. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  576. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  577. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +23 -20
  578. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  579. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js +1 -1
  580. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js.map +1 -1
  581. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js +3 -2
  582. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js.map +1 -1
  583. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  584. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  585. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +8 -5
  586. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  587. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
  588. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
  589. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +3 -2
  590. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
  591. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
  592. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
  593. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +3 -2
  594. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
  595. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  596. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  597. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +3 -2
  598. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  599. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  600. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  601. package/dist/shared/src/context/AddonProjectContext.es.js +5 -4
  602. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  603. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  604. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  605. package/dist/shared/src/context/DetailsPanelContext.es.js +7 -4
  606. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  607. package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
  608. package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
  609. package/dist/shared/src/context/GlobalContext.es.js +5 -4
  610. package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
  611. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  612. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  613. package/dist/shared/src/context/PowerpackContext.es.js +9 -6
  614. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  615. package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
  616. package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
  617. package/dist/shared/src/context/ProjectContext.es.js +5 -4
  618. package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
  619. package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
  620. package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
  621. package/dist/shared/src/context/ProjectFoldersContext.es.js +7 -4
  622. package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
  623. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  624. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  625. package/dist/shared/src/context/RemoteModulesContext.es.js +5 -4
  626. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  627. package/dist/shared/src/context/SubtasksModulesContext.cjs.js +1 -1
  628. package/dist/shared/src/context/SubtasksModulesContext.cjs.js.map +1 -1
  629. package/dist/shared/src/context/SubtasksModulesContext.es.js +7 -4
  630. package/dist/shared/src/context/SubtasksModulesContext.es.js.map +1 -1
  631. package/dist/shared/src/context/UriContext.cjs.js +1 -1
  632. package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
  633. package/dist/shared/src/context/UriContext.es.js +6 -5
  634. package/dist/shared/src/context/UriContext.es.js.map +1 -1
  635. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  636. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  637. package/dist/shared/src/context/WebsocketContext.es.js +7 -5
  638. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  639. package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
  640. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  641. package/dist/shared/src/hooks/useActionTriggers.es.js +3 -2
  642. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  643. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  644. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  645. package/dist/shared/src/hooks/useEntityUpdate.es.js +3 -2
  646. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  647. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js +1 -1
  648. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
  649. package/dist/shared/src/hooks/useGetEntityGroups.es.js +3 -2
  650. package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
  651. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
  652. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
  653. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +5 -2
  654. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
  655. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js +2 -0
  656. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js.map +1 -0
  657. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js +31 -0
  658. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js.map +1 -0
  659. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
  660. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  661. package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
  662. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  663. package/dist/shared/src/hooks/useScopedTypes.cjs.js +1 -1
  664. package/dist/shared/src/hooks/useScopedTypes.cjs.js.map +1 -1
  665. package/dist/shared/src/hooks/useScopedTypes.es.js +3 -2
  666. package/dist/shared/src/hooks/useScopedTypes.es.js.map +1 -1
  667. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  668. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  669. package/dist/shared/src/hooks/useUserProjectConfig.es.js +3 -2
  670. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  671. package/dist/shared/src/util/buildHierarchicalTableRows.cjs.js +1 -1
  672. package/dist/shared/src/util/buildHierarchicalTableRows.cjs.js.map +1 -1
  673. package/dist/shared/src/util/buildHierarchicalTableRows.es.js +43 -44
  674. package/dist/shared/src/util/buildHierarchicalTableRows.es.js.map +1 -1
  675. package/dist/shared/src/util/confirmDelete.cjs.js.map +1 -1
  676. package/dist/shared/src/util/confirmDelete.es.js.map +1 -1
  677. package/dist/shared/src/util/formatUTCDate.cjs.js +2 -0
  678. package/dist/shared/src/util/formatUTCDate.cjs.js.map +1 -0
  679. package/dist/shared/src/util/formatUTCDate.es.js +9 -0
  680. package/dist/shared/src/util/formatUTCDate.es.js.map +1 -0
  681. package/dist/shared/src/util/getProjectDisplayName.cjs.js +2 -0
  682. package/dist/shared/src/util/getProjectDisplayName.cjs.js.map +1 -0
  683. package/dist/shared/src/util/getProjectDisplayName.es.js +5 -0
  684. package/dist/shared/src/util/getProjectDisplayName.es.js.map +1 -0
  685. package/dist/types/api/generated/graphql.d.ts +38 -0
  686. package/dist/types/api/generated/graphqlLinks.d.ts +10 -4
  687. package/dist/types/api/generated/projectFolders.d.ts +1 -0
  688. package/dist/types/api/queries/activities/getActivities.d.ts +7 -0
  689. package/dist/types/api/queries/activities/updateActivities.d.ts +14 -0
  690. package/dist/types/api/queries/entities/getEntity.d.ts +7 -0
  691. package/dist/types/api/queries/entities/getEntityPanel.d.ts +7 -0
  692. package/dist/types/api/queries/entities/updateEntity.d.ts +7 -0
  693. package/dist/types/api/queries/entityLists/getLists.d.ts +7 -0
  694. package/dist/types/api/queries/folders/getFolderDeleteInfo.d.ts +566 -0
  695. package/dist/types/api/queries/folders/index.d.ts +1 -0
  696. package/dist/types/api/queries/links/getLinks.d.ts +1 -0
  697. package/dist/types/api/queries/overview/getOverview.d.ts +7 -0
  698. package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +7 -0
  699. package/dist/types/api/queries/users/getUsers.d.ts +7 -0
  700. package/dist/types/api/queries/versions/getVersionsProducts.d.ts +14 -0
  701. package/dist/types/components/ProjectTableSettings/ProjectTableSettings.d.ts +1 -0
  702. package/dist/types/components/ReviewablesSelector/ReviewablesSelector.d.ts +7 -2
  703. package/dist/types/components/ReviewablesSelector/index.d.ts +1 -0
  704. package/dist/types/components/SearchFilter/useBuildFilterOptions.d.ts +2 -1
  705. package/dist/types/containers/EntityPickerDialog/EntityPickerDialog.d.ts +1 -0
  706. package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +2 -1
  707. package/dist/types/containers/ProjectTreeTable/components/DeleteConfirmContent.d.ts +6 -0
  708. package/dist/types/containers/ProjectTreeTable/utils/expandRelativeDates.d.ts +1 -1
  709. package/dist/types/containers/Slicer/context/SlicerContext.d.ts +1 -0
  710. package/dist/types/containers/Slicer/hooks/useSlicerViewSync.d.ts +3 -7
  711. package/dist/types/hooks/index.d.ts +1 -0
  712. package/dist/types/hooks/useReviewablesKeyboardNavigation.d.ts +13 -0
  713. package/dist/types/util/buildHierarchicalTableRows.d.ts +2 -0
  714. package/dist/types/util/confirmDelete.d.ts +1 -1
  715. package/dist/types/util/formatUTCDate.d.ts +1 -0
  716. package/dist/types/util/getProjectDisplayName.d.ts +6 -0
  717. package/dist/types/util/index.d.ts +1 -0
  718. package/dist/util.cjs.js +1 -1
  719. package/dist/util.es.js +23 -21
  720. package/dist/util.es.js.map +1 -1
  721. package/package.json +1 -1
@@ -61,7 +61,8 @@ import "../entityLists/updateLists.es.js";
61
61
  import "../entityLists/getListsAttributes.es.js";
62
62
  import "../entityLists/updateListsAttributes.es.js";
63
63
  import "../entityLists/listFolders.es.js";
64
- import { foldersQueries as w } from "../folders/getFolders.es.js";
64
+ import { foldersQueries as A } from "../folders/getFolders.es.js";
65
+ import "../folders/getFolderDeleteInfo.es.js";
65
66
  import "../grouping/getGrouping.es.js";
66
67
  import "../links/updateLinks.es.js";
67
68
  import "../links/getLinks.es.js";
@@ -94,26 +95,26 @@ import "../watchers/getWatchers.es.js";
94
95
  import "../uris/getUris.es.js";
95
96
  import { getUpdatedEntityIds as B } from "./filterRefetchUtils.es.js";
96
97
  import { refetchTasksForCacheEntry as M, refetchOverviewTasksForCacheEntry as U } from "./refetchFilteredEntities.es.js";
97
- const A = (t, e) => {
98
- if (Object.keys(e).forEach((o) => {
99
- o === "attrib" || o === "links" || o === "deleteLinks" || (t[o] = e[o]);
98
+ const w = (t, e) => {
99
+ if (Object.keys(e).forEach((s) => {
100
+ s === "attrib" || s === "links" || s === "deleteLinks" || (t[s] = e[s]);
100
101
  }), e.attrib && (t.attrib = {
101
102
  ...t.attrib,
102
103
  ...e.attrib
103
104
  }), e.links) {
104
- const o = t.links || [], a = e.links || [];
105
- t.links || (t.links = []), t.links = [...o], a.forEach((r) => {
105
+ const s = t.links || [], a = e.links || [];
106
+ t.links || (t.links = []), t.links = [...s], a.forEach((r) => {
106
107
  const p = t.links.findIndex((n) => n.id === r.id);
107
108
  p !== -1 ? t.links[p] = { ...t.links[p], ...r } : t.links.push(r);
108
109
  });
109
110
  }
110
111
  if (e.deleteLinks) {
111
- const o = e.deleteLinks || [];
112
- t.links || (t.links = []), o.forEach((a) => {
112
+ const s = e.deleteLinks || [];
113
+ t.links || (t.links = []), s.forEach((a) => {
113
114
  t.links = t.links.filter((r) => r.id !== a);
114
115
  });
115
116
  }
116
- }, j = (t) => [
117
+ }, N = (t) => [
117
118
  { type: "overviewTask", id: "LIST" },
118
119
  ...t.map((e) => ({ type: "overviewTask", id: e.entityId })),
119
120
  // we also add the projectName so that tasks that do not exist in the cache can still invalidate
@@ -128,98 +129,98 @@ const A = (t, e) => {
128
129
  type: "folder",
129
130
  id: e.data?.projectName
130
131
  }))
131
- ], G = (t, e, o) => ({
132
+ ], G = (t, e, s) => ({
132
133
  entityId: t,
133
134
  entityType: e,
134
135
  type: "update",
135
- data: { deleteLinks: o }
136
- }), Se = (t, e) => t.map(
137
- (o) => G(o.entityId, o.entityType, e)
138
- ), De = (t, {
136
+ data: { deleteLinks: s }
137
+ }), De = (t, e) => t.map(
138
+ (s) => G(s.entityId, s.entityType, e)
139
+ ), _e = (t, {
139
140
  state: e,
140
- dispatch: o
141
+ dispatch: s
141
142
  }, a) => {
142
143
  const r = t.reduce((p, n) => (p[n.entityType] || (p[n.entityType] = []), p[n.entityType].push(n), p), {});
143
- r.task && L(r.task, { state: e, dispatch: o }, a), r.folder && O(r.folder, { state: e, dispatch: o }, a);
144
+ r.task && L(r.task, { state: e, dispatch: s }, a), r.folder && O(r.folder, { state: e, dispatch: s }, a);
144
145
  }, L = (t, {
145
146
  state: e,
146
- dispatch: o
147
+ dispatch: s
147
148
  }, a) => {
148
- const r = j(t), p = T.util.selectInvalidatedBy(e, r);
149
+ const r = N(t), p = T.util.selectInvalidatedBy(e, r);
149
150
  for (const n of p)
150
151
  if (n.endpointName === "getTasksListInfinite") {
151
- const d = o(
152
- T.util.updateQueryData("getTasksListInfinite", n.originalArgs, (s) => {
152
+ const l = s(
153
+ T.util.updateQueryData("getTasksListInfinite", n.originalArgs, (o) => {
153
154
  for (const i of t)
154
155
  if (i.type === "create" && i.data)
155
- s.pages[0].tasks.push(i.data);
156
+ o.pages[0].tasks.push(i.data);
156
157
  else
157
- for (const m of s.pages) {
158
- const c = m.tasks.find((y) => y.id === i.entityId);
159
- c && A(c, i.data);
158
+ for (const d of o.pages) {
159
+ const c = d.tasks.find((y) => y.id === i.entityId);
160
+ c && w(c, i.data);
160
161
  }
161
162
  })
162
163
  );
163
- a?.push(d);
164
+ a?.push(l);
164
165
  } else {
165
- const d = o(
166
+ const l = s(
166
167
  T.util.updateQueryData(
167
168
  n.endpointName,
168
169
  n.originalArgs,
169
- (s) => {
170
+ (o) => {
170
171
  for (const i of t)
171
172
  if (i.type === "create" && i.data && n.originalArgs.parentIds?.includes(i.data.folderId)) {
172
- const m = (c) => {
173
+ const d = (c) => {
173
174
  c.push(i.data);
174
175
  };
175
- if (Array.isArray(s))
176
- m(s);
177
- else if (s.tasks && Array.isArray(s.tasks)) {
178
- const c = s.tasks;
179
- m(c);
176
+ if (Array.isArray(o))
177
+ d(o);
178
+ else if (o.tasks && Array.isArray(o.tasks)) {
179
+ const c = o.tasks;
180
+ d(c);
180
181
  }
181
182
  } else {
182
- const m = (c) => {
183
+ const d = (c) => {
183
184
  const y = c.find((I) => I.id === i.entityId);
184
- y && A(y, i.data);
185
+ y && w(y, i.data);
185
186
  };
186
- if (Array.isArray(s))
187
- m(s);
188
- else if (s.tasks && Array.isArray(s.tasks)) {
189
- const c = s.tasks;
190
- m(c);
187
+ if (Array.isArray(o))
188
+ d(o);
189
+ else if (o.tasks && Array.isArray(o.tasks)) {
190
+ const c = o.tasks;
191
+ d(c);
191
192
  }
192
193
  }
193
194
  }
194
195
  )
195
196
  );
196
- a?.push(d);
197
+ a?.push(l);
197
198
  }
198
199
  }, V = (t, {
199
200
  dispatch: e
200
201
  }) => {
201
- t.length && e(T.util.invalidateTags(j(t)));
202
+ t.length && e(T.util.invalidateTags(N(t)));
202
203
  }, O = (t, {
203
204
  state: e,
204
- dispatch: o
205
+ dispatch: s
205
206
  }, a) => {
206
- const r = w.util.selectInvalidatedBy(e, z(t)).filter((p) => p.endpointName === "getFolderList");
207
+ const r = A.util.selectInvalidatedBy(e, z(t)).filter((p) => p.endpointName === "getFolderList");
207
208
  for (const p of r) {
208
- const n = o(
209
- w.util.updateQueryData(
209
+ const n = s(
210
+ A.util.updateQueryData(
210
211
  p.endpointName,
211
212
  p.originalArgs,
212
- (d) => {
213
- const s = /* @__PURE__ */ new Map();
214
- d.folders.forEach((i) => {
215
- s.set(i.id, i);
213
+ (l) => {
214
+ const o = /* @__PURE__ */ new Map();
215
+ l.folders.forEach((i) => {
216
+ o.set(i.id, i);
216
217
  });
217
218
  for (const i of t)
218
219
  if (i.type === "create" && i.data)
219
- d.folders.push(i.data);
220
+ l.folders.push(i.data);
220
221
  else {
221
- const m = s.get(i.entityId);
222
- m && A(m, i.data);
222
+ const d = o.get(i.entityId);
223
+ d && w(d, i.data);
223
224
  }
224
225
  }
225
226
  )
@@ -228,49 +229,49 @@ const A = (t, e) => {
228
229
  }
229
230
  }, W = (t, {
230
231
  state: e,
231
- dispatch: o
232
+ dispatch: s
232
233
  }, a) => {
233
234
  const r = t.map((n) => ({ type: "entityListItem", id: n.entityId })), p = F.util.selectInvalidatedBy(e, r);
234
235
  for (const n of p)
235
236
  if (n.endpointName === "getListItemsInfinite") {
236
- const d = o(
237
+ const l = s(
237
238
  F.util.updateQueryData(
238
239
  "getListItemsInfinite",
239
240
  n.originalArgs,
240
- (s) => {
241
+ (o) => {
241
242
  for (const i of t)
242
243
  if (i.type === "update" && i.data)
243
- for (const m of s.pages) {
244
- const c = m.items.find((y) => y.entityId === i.entityId);
245
- c && A(c, i.data);
244
+ for (const d of o.pages) {
245
+ const c = d.items.find((y) => y.entityId === i.entityId);
246
+ c && w(c, i.data);
246
247
  }
247
248
  }
248
249
  )
249
250
  );
250
- a?.push(d);
251
+ a?.push(l);
251
252
  }
252
- }, C = (t) => t.reduce(
253
- (e, o) => (e[o.type].push(o), e),
253
+ }, b = (t) => t.reduce(
254
+ (e, s) => (e[s.type].push(s), e),
254
255
  {
255
256
  create: [],
256
257
  update: [],
257
258
  delete: []
258
259
  }
259
- ), N = D.enhanceEndpoints({
260
+ ), C = D.enhanceEndpoints({
260
261
  endpoints: {
261
262
  operations: {}
262
263
  }
263
- }), J = N.injectEndpoints({
264
+ }), J = C.injectEndpoints({
264
265
  endpoints: (t) => ({
265
266
  updateOverviewEntities: t.mutation({
266
- async queryFn(e, { dispatch: o }) {
267
+ async queryFn(e, { dispatch: s }) {
267
268
  try {
268
- const a = await o(N.endpoints.operations.initiate(e));
269
+ const a = await s(C.endpoints.operations.initiate(e));
269
270
  if (a.error)
270
271
  return { error: a.error };
271
272
  const r = a.data, p = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new Set();
272
- for (const d of r?.operations || [])
273
- d.success === !1 && d.detail && (p.has(d.detail) || p.add(d.detail), n.has(d.errorCode) || n.add(d.errorCode));
273
+ for (const l of r?.operations || [])
274
+ l.success === !1 && l.detail && (p.has(l.detail) || p.add(l.detail), n.has(l.errorCode) || n.add(l.errorCode));
274
275
  return p.size > 0 ? { error: {
275
276
  status: "FETCH_ERROR",
276
277
  error: Array.from(p).join(", "),
@@ -280,10 +281,10 @@ const A = (t, e) => {
280
281
  return console.error(a), { error: { status: "FETCH_ERROR", error: a.message } };
281
282
  }
282
283
  },
283
- async onQueryStarted({ operationsRequestModel: e, patchOperations: o = [], projectName: a }, { dispatch: r, queryFulfilled: p, getState: n }) {
284
+ async onQueryStarted({ operationsRequestModel: e, patchOperations: s = [], projectName: a }, { dispatch: r, queryFulfilled: p, getState: n }) {
284
285
  if (!e.operations?.length) return;
285
- const { operations: d } = e, s = d.reduce(
286
- (l, f) => (l[f.entityType].push(f), l),
286
+ const { operations: l } = e, o = l.reduce(
287
+ (m, f) => (m[f.entityType].push(f), m),
287
288
  {
288
289
  task: [],
289
290
  folder: [],
@@ -292,56 +293,56 @@ const A = (t, e) => {
292
293
  representation: [],
293
294
  workfile: []
294
295
  }
295
- ), i = n(), m = [];
296
- if (s.task?.length) {
297
- const { delete: l, update: f } = C(s.task), u = f.filter(
298
- (g) => !o.some((h) => h.entityId === g.entityId)
296
+ ), i = n(), d = [];
297
+ if (o.task?.length) {
298
+ const { delete: m, update: f } = b(o.task), u = f.filter(
299
+ (g) => !s.some((h) => h.entityId === g.entityId)
299
300
  );
300
- L(u, { state: i, dispatch: r }, m), V([...l], {
301
+ L(u, { state: i, dispatch: r }, d), V([...m], {
301
302
  dispatch: r
302
303
  });
303
304
  }
304
- if (s.folder?.length) {
305
- const { delete: l, update: f } = C(s.folder), u = f.filter(
306
- (g) => !o.some((h) => h.entityId === g.entityId)
305
+ if (o.folder?.length) {
306
+ const { delete: m, update: f } = b(o.folder), u = f.filter(
307
+ (g) => !s.some((h) => h.entityId === g.entityId)
307
308
  );
308
- O(u, { state: i, dispatch: r }, m), l.length && r(w.util.invalidateTags([{ type: "folder", id: "LIST" }]));
309
+ O(u, { state: i, dispatch: r }, d), m.length && r(A.util.invalidateTags([{ type: "folder", id: "LIST" }]));
309
310
  }
310
- const c = o.filter((l) => l.entityType === "task"), y = o.filter((l) => l.entityType === "folder");
311
- c.length && L(c, { state: i, dispatch: r }, m), y.length && O(y, { state: i, dispatch: r }, m), W([...d, ...o], { state: i, dispatch: r }, m), s.version?.length && q(s.version, { state: i, dispatch: r }, m), s.product?.length && H(s.product, { state: i, dispatch: r }, m);
312
- const I = d.map((l) => ({
313
- id: l.entityId,
314
- type: l.entityType
315
- })), P = I.map((l) => ({
311
+ const c = s.filter((m) => m.entityType === "task"), y = s.filter((m) => m.entityType === "folder");
312
+ c.length && L(c, { state: i, dispatch: r }, d), y.length && O(y, { state: i, dispatch: r }, d), W([...l, ...s], { state: i, dispatch: r }, d), o.version?.length && q(o.version, { state: i, dispatch: r }, d), o.product?.length && H(o.product, { state: i, dispatch: r }, d);
313
+ const I = l.map((m) => ({
314
+ id: m.entityId,
315
+ type: m.entityType
316
+ })), P = I.map((m) => ({
316
317
  type: "entities",
317
- id: l.id
318
- })), Q = () => r(E.util.invalidateTags(P)), b = E.util.selectInvalidatedBy(
318
+ id: m.id
319
+ })), Q = () => r(E.util.invalidateTags(P)), j = E.util.selectInvalidatedBy(
319
320
  i,
320
321
  I
321
322
  ), x = E.util.selectInvalidatedBy(
322
323
  i,
323
324
  P
324
325
  );
325
- for (const l of x) {
326
- if (l.endpointName !== "getEntitiesDetailsPanel") continue;
326
+ for (const m of x) {
327
+ if (m.endpointName !== "getEntitiesDetailsPanel") continue;
327
328
  const f = r(
328
329
  E.util.updateQueryData(
329
- l.endpointName,
330
- l.originalArgs,
330
+ m.endpointName,
331
+ m.originalArgs,
331
332
  (u) => {
332
333
  for (const g of u)
333
- _(d, g);
334
+ _(l, g);
334
335
  }
335
336
  )
336
337
  );
337
- m.push(f);
338
+ d.push(f);
338
339
  }
339
340
  try {
340
341
  await p;
341
- const l = s.task || [], f = s.folder || [];
342
- if (l.length === 0 && f.length === 0)
342
+ const m = o.task || [], f = o.folder || [];
343
+ if (m.length === 0 && f.length === 0)
343
344
  return;
344
- const u = B(l), g = B(f), h = u.map((k) => ({ type: "overviewTask", id: k })), R = T.util.selectInvalidatedBy(i, h).filter((k) => k.endpointName === "getTasksListInfinite");
345
+ const u = B(m), g = B(f), h = u.map((k) => ({ type: "overviewTask", id: k })), R = T.util.selectInvalidatedBy(i, h).filter((k) => k.endpointName === "getTasksListInfinite");
345
346
  if (u.length > 0 && a) {
346
347
  for (const v of R)
347
348
  await M({
@@ -359,32 +360,38 @@ const A = (t, e) => {
359
360
  cacheEntry: v
360
361
  });
361
362
  }
362
- const S = (s.folder || []).some(
363
+ const S = (o.folder || []).some(
363
364
  (k) => k.type === "delete"
364
365
  );
365
- g.length > 0 && a && !S && r(w.util.invalidateTags([{ type: "folder", id: "LIST" }]));
366
+ g.length > 0 && a && !S && r(A.util.invalidateTags([{ type: "folder", id: "LIST" }]));
366
367
  } catch {
367
- for (const f of m)
368
+ for (const f of d)
368
369
  f.undo();
369
- b.length && Q();
370
+ j.length && Q();
370
371
  }
371
372
  },
372
- invalidatesTags: (e, o, { operationsRequestModel: a, projectName: r }) => {
373
- const p = [{ type: "kanban", id: "project-" + r }], n = [], d = [];
374
- return a.operations?.forEach((s) => {
375
- const { entityId: i } = s;
376
- i ? (n.push({ type: "progress", id: i }), d.push({ type: "entityListItem", id: i })) : n.push({ type: "progress", id: "LIST" });
377
- }), [...p, ...n, ...d];
373
+ invalidatesTags: (e, s, { operationsRequestModel: a, projectName: r }) => {
374
+ const p = [{ type: "kanban", id: "project-" + r }], n = [], l = [], o = [];
375
+ let i = !1;
376
+ return a.operations?.forEach((d) => {
377
+ const { entityId: c } = d;
378
+ c ? (n.push({ type: "progress", id: c }), l.push({ type: "entityListItem", id: c })) : n.push({ type: "progress", id: "LIST" }), d.data?.attrib && (i = !0);
379
+ }), i && o.push({ type: "tasksFolder", id: r }), [
380
+ ...p,
381
+ ...n,
382
+ ...l,
383
+ ...o
384
+ ];
378
385
  }
379
386
  })
380
387
  })
381
- }), { useUpdateOverviewEntitiesMutation: _e } = J;
388
+ }), { useUpdateOverviewEntitiesMutation: qe } = J;
382
389
  export {
383
390
  G as createLinkDeletionPatch,
384
- Se as deleteLinksFromEntities,
385
- De as patchOverviewEntities,
391
+ De as deleteLinksFromEntities,
392
+ _e as patchOverviewEntities,
386
393
  O as patchOverviewFolders,
387
394
  L as patchOverviewTasks,
388
- _e as useUpdateOverviewEntitiesMutation
395
+ qe as useUpdateOverviewEntitiesMutation
389
396
  };
390
397
  //# sourceMappingURL=updateOverview.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"updateOverview.es.js","sources":["../../../../../../src/api/queries/overview/updateOverview.ts"],"sourcesContent":["import {\n foldersQueries,\n detailsPanelQueries,\n operationsApi,\n entityListsQueriesGql,\n api,\n} from '@shared/api'\nimport type { OperationsResponseModel, OperationModel, OperationsApiArg } from '@shared/api'\nimport getOverviewApi from './getOverview'\nimport {\n DetailsPanelEntityData,\n DetailsPanelEntityType,\n patchDetailsPanel,\n patchDetailsPanelEntity,\n} 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\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 })\n\n return [...userDashboardTags, ...taskProgressTags, ...entityListItemTags]\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","useUpdateOverviewEntitiesMutation"],"mappings":"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"}
1
+ {"version":3,"file":"updateOverview.es.js","sources":["../../../../../../src/api/queries/overview/updateOverview.ts"],"sourcesContent":["import {\n foldersQueries,\n detailsPanelQueries,\n operationsApi,\n entityListsQueriesGql,\n api,\n} from '@shared/api'\nimport type { OperationsResponseModel, OperationModel, OperationsApiArg } from '@shared/api'\nimport getOverviewApi from './getOverview'\nimport {\n DetailsPanelEntityData,\n DetailsPanelEntityType,\n patchDetailsPanel,\n patchDetailsPanelEntity,\n} 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,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./getProject.cjs.js"),r=a.default.enhanceEndpoints({endpoints:{deployProject:{transformErrorResponse:e=>e.data.detail||`Error ${e.status}`,invalidatesTags:()=>[{type:"projects",id:"LIST"},{type:"kanBanTask",id:"LIST"}]},deleteProject:{invalidatesTags:()=>[{type:"projects",id:"LIST"}]},setProjectAnatomy:{invalidatesTags:(e,o,{projectName:t})=>o?[]:[{type:"project",id:t}]},updateProject:{invalidatesTags:(e,o,{projectName:t,projectPatchModel:s})=>o?[]:"active"in s?["project"]:[{type:"project",id:t},{type:"projects",id:"LIST"}],transformErrorResponse:e=>e.data.detail},setProjectBundle:{invalidatesTags:(e,o,{projectName:t})=>[{type:"project",id:t},{type:"addonSettingsList",id:"LIST"}]}}}),{useDeployProjectMutation:n,useDeleteProjectMutation:i,useSetProjectAnatomyMutation:d,useUpdateProjectMutation:u,useSetProjectBundleMutation:c}=r;exports.projectQueries=a.default;exports.useDeleteProjectMutation=i;exports.useDeployProjectMutation=n;exports.useSetProjectAnatomyMutation=d;exports.useSetProjectBundleMutation=c;exports.useUpdateProjectMutation=u;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./getProject.cjs.js"),d=i.default.enhanceEndpoints({endpoints:{deployProject:{transformErrorResponse:t=>t.data.detail||`Error ${t.status}`,invalidatesTags:()=>[{type:"projects",id:"LIST"},{type:"kanBanTask",id:"LIST"}]},deleteProject:{invalidatesTags:()=>[{type:"projects",id:"LIST"}]},setProjectAnatomy:{invalidatesTags:(t,a,{projectName:e})=>a?[]:[{type:"project",id:e}]},updateProject:{invalidatesTags:(t,a,{projectName:e,projectPatchModel:r})=>a?[]:"active"in r?["project"]:[{type:"project",id:e},{type:"projects",id:"LIST"}],transformErrorResponse:t=>t.data.detail,async onQueryStarted({projectName:t,projectPatchModel:a},{dispatch:e,queryFulfilled:r}){if(!("label"in a))return;const u=a.label??void 0,c=[e(i.default.util.updateQueryData("listProjects",{active:!0},o=>{const n=o.find(s=>s.name===t);n&&(n.label=u)})),e(i.default.util.updateQueryData("listProjects",{active:void 0},o=>{const n=o.find(s=>s.name===t);n&&(n.label=u)}))];try{await r}catch{c.forEach(o=>o.undo())}}},setProjectBundle:{invalidatesTags:(t,a,{projectName:e})=>[{type:"project",id:e},{type:"addonSettingsList",id:"LIST"}]}}}),{useDeployProjectMutation:l,useDeleteProjectMutation:p,useSetProjectAnatomyMutation:j,useUpdateProjectMutation:y,useSetProjectBundleMutation:P}=d;exports.projectQueries=i.default;exports.useDeleteProjectMutation=p;exports.useDeployProjectMutation=l;exports.useSetProjectAnatomyMutation=j;exports.useSetProjectBundleMutation=P;exports.useUpdateProjectMutation=y;
2
2
  //# sourceMappingURL=updateProject.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"updateProject.cjs.js","sources":["../../../../../../src/api/queries/project/updateProject.ts"],"sourcesContent":["import projectApi from './getProject'\n\nconst enhancedProjectApi = projectApi.enhanceEndpoints({\n endpoints: {\n deployProject: {\n transformErrorResponse: (error: any) => error.data.detail || `Error ${error.status}`,\n invalidatesTags: () => [\n { type: 'projects', id: 'LIST' },\n { type: 'kanBanTask', id: 'LIST' },\n ],\n },\n deleteProject: {\n invalidatesTags: () => [{ type: 'projects', id: 'LIST' }],\n },\n setProjectAnatomy: {\n invalidatesTags: (result, error, { projectName }) =>\n error ? [] : [{ type: 'project', id: projectName }],\n },\n updateProject: {\n invalidatesTags: (result, error, { projectName, projectPatchModel }) =>\n error\n ? []\n : 'active' in projectPatchModel\n ? // if active is updated, invalidate all projects\n ['project']\n : // if not, invalidate only the updated project\n [\n { type: 'project', id: projectName },\n { type: 'projects', id: 'LIST' },\n ],\n transformErrorResponse: (error: any) => error.data.detail,\n },\n setProjectBundle: {\n invalidatesTags: (_r, _e, { projectName }) => [\n { type: 'project', id: projectName },\n { type: 'addonSettingsList', id: 'LIST' },\n ],\n },\n },\n})\n\nexport const {\n useDeployProjectMutation,\n useDeleteProjectMutation,\n useSetProjectAnatomyMutation,\n useUpdateProjectMutation,\n useSetProjectBundleMutation,\n} = enhancedProjectApi\nexport { projectApi as projectQueries }\n"],"names":["enhancedProjectApi","projectApi","error","result","projectName","projectPatchModel","_r","_e","useDeployProjectMutation","useDeleteProjectMutation","useSetProjectAnatomyMutation","useUpdateProjectMutation","useSetProjectBundleMutation"],"mappings":"uHAEMA,EAAqBC,EAAAA,QAAW,iBAAiB,CACrD,UAAW,CACT,cAAe,CACb,uBAAyBC,GAAeA,EAAM,KAAK,QAAU,SAASA,EAAM,MAAM,GAClF,gBAAiB,IAAM,CACrB,CAAE,KAAM,WAAY,GAAI,MAAA,EACxB,CAAE,KAAM,aAAc,GAAI,MAAA,CAAO,CACnC,EAEF,cAAe,CACb,gBAAiB,IAAM,CAAC,CAAE,KAAM,WAAY,GAAI,OAAQ,CAAA,EAE1D,kBAAmB,CACjB,gBAAiB,CAACC,EAAQD,EAAO,CAAE,YAAAE,KACjCF,EAAQ,CAAA,EAAK,CAAC,CAAE,KAAM,UAAW,GAAIE,EAAa,CAAA,EAEtD,cAAe,CACb,gBAAiB,CAACD,EAAQD,EAAO,CAAE,YAAAE,EAAa,kBAAAC,CAAA,IAC9CH,EACI,GACA,WAAYG,EAEZ,CAAC,SAAS,EAEV,CACE,CAAE,KAAM,UAAW,GAAID,CAAA,EACvB,CAAE,KAAM,WAAY,GAAI,MAAA,CAAO,EAEvC,uBAAyBF,GAAeA,EAAM,KAAK,MAAA,EAErD,iBAAkB,CAChB,gBAAiB,CAACI,EAAIC,EAAI,CAAE,YAAAH,KAAkB,CAC5C,CAAE,KAAM,UAAW,GAAIA,CAAA,EACvB,CAAE,KAAM,oBAAqB,GAAI,MAAA,CAAO,CAC1C,CACF,CAEJ,CAAC,EAEY,CACX,yBAAAI,EACA,yBAAAC,EACA,6BAAAC,EACA,yBAAAC,EACA,4BAAAC,CACF,EAAIZ"}
1
+ {"version":3,"file":"updateProject.cjs.js","sources":["../../../../../../src/api/queries/project/updateProject.ts"],"sourcesContent":["import projectApi from './getProject'\n\nconst enhancedProjectApi = projectApi.enhanceEndpoints({\n endpoints: {\n deployProject: {\n transformErrorResponse: (error: any) => error.data.detail || `Error ${error.status}`,\n invalidatesTags: () => [\n { type: 'projects', id: 'LIST' },\n { type: 'kanBanTask', id: 'LIST' },\n ],\n },\n deleteProject: {\n invalidatesTags: () => [{ type: 'projects', id: 'LIST' }],\n },\n setProjectAnatomy: {\n invalidatesTags: (result, error, { projectName }) =>\n error ? [] : [{ type: 'project', id: projectName }],\n },\n updateProject: {\n invalidatesTags: (result, error, { projectName, projectPatchModel }) =>\n error\n ? []\n : 'active' in projectPatchModel\n ? // if active is updated, invalidate all projects\n ['project']\n : // if not, invalidate only the updated project\n [\n { type: 'project', id: projectName },\n { type: 'projects', id: 'LIST' },\n ],\n transformErrorResponse: (error: any) => error.data.detail,\n // Optimistically patch listProjects cache for fields exposed in the list view\n // so the UI updates instantly without waiting for refetch.\n async onQueryStarted({ projectName, projectPatchModel }, { dispatch, queryFulfilled }) {\n if (!('label' in projectPatchModel)) return\n\n const newLabel = projectPatchModel.label ?? undefined\n const patches = [\n dispatch(\n projectApi.util.updateQueryData('listProjects', { active: true }, (draft) => {\n const project = draft.find((p) => p.name === projectName)\n if (project) project.label = newLabel\n }),\n ),\n dispatch(\n projectApi.util.updateQueryData('listProjects', { active: undefined }, (draft) => {\n const project = draft.find((p) => p.name === projectName)\n if (project) project.label = newLabel\n }),\n ),\n ]\n\n try {\n await queryFulfilled\n } catch {\n patches.forEach((patch) => patch.undo())\n }\n },\n },\n setProjectBundle: {\n invalidatesTags: (_r, _e, { projectName }) => [\n { type: 'project', id: projectName },\n { type: 'addonSettingsList', id: 'LIST' },\n ],\n },\n },\n})\n\nexport const {\n useDeployProjectMutation,\n useDeleteProjectMutation,\n useSetProjectAnatomyMutation,\n useUpdateProjectMutation,\n useSetProjectBundleMutation,\n} = enhancedProjectApi\nexport { projectApi as projectQueries }\n"],"names":["enhancedProjectApi","projectApi","error","result","projectName","projectPatchModel","dispatch","queryFulfilled","newLabel","patches","draft","project","p","patch","_r","_e","useDeployProjectMutation","useDeleteProjectMutation","useSetProjectAnatomyMutation","useUpdateProjectMutation","useSetProjectBundleMutation"],"mappings":"uHAEMA,EAAqBC,EAAAA,QAAW,iBAAiB,CACrD,UAAW,CACT,cAAe,CACb,uBAAyBC,GAAeA,EAAM,KAAK,QAAU,SAASA,EAAM,MAAM,GAClF,gBAAiB,IAAM,CACrB,CAAE,KAAM,WAAY,GAAI,MAAA,EACxB,CAAE,KAAM,aAAc,GAAI,MAAA,CAAO,CACnC,EAEF,cAAe,CACb,gBAAiB,IAAM,CAAC,CAAE,KAAM,WAAY,GAAI,OAAQ,CAAA,EAE1D,kBAAmB,CACjB,gBAAiB,CAACC,EAAQD,EAAO,CAAE,YAAAE,KACjCF,EAAQ,CAAA,EAAK,CAAC,CAAE,KAAM,UAAW,GAAIE,EAAa,CAAA,EAEtD,cAAe,CACb,gBAAiB,CAACD,EAAQD,EAAO,CAAE,YAAAE,EAAa,kBAAAC,CAAA,IAC9CH,EACI,GACA,WAAYG,EAEZ,CAAC,SAAS,EAEV,CACE,CAAE,KAAM,UAAW,GAAID,CAAA,EACvB,CAAE,KAAM,WAAY,GAAI,MAAA,CAAO,EAEvC,uBAAyBF,GAAeA,EAAM,KAAK,OAGnD,MAAM,eAAe,CAAE,YAAAE,EAAa,kBAAAC,GAAqB,CAAE,SAAAC,EAAU,eAAAC,GAAkB,CACrF,GAAI,EAAE,UAAWF,GAAoB,OAErC,MAAMG,EAAWH,EAAkB,OAAS,OACtCI,EAAU,CACdH,EACEL,UAAW,KAAK,gBAAgB,eAAgB,CAAE,OAAQ,EAAA,EAASS,GAAU,CAC3E,MAAMC,EAAUD,EAAM,KAAME,GAAMA,EAAE,OAASR,CAAW,EACpDO,MAAiB,MAAQH,EAC/B,CAAC,CAAA,EAEHF,EACEL,UAAW,KAAK,gBAAgB,eAAgB,CAAE,OAAQ,MAAA,EAAcS,GAAU,CAChF,MAAMC,EAAUD,EAAM,KAAME,GAAMA,EAAE,OAASR,CAAW,EACpDO,MAAiB,MAAQH,EAC/B,CAAC,CAAA,CACH,EAGF,GAAI,CACF,MAAMD,CACR,MAAQ,CACNE,EAAQ,QAASI,GAAUA,EAAM,MAAM,CACzC,CACF,CAAA,EAEF,iBAAkB,CAChB,gBAAiB,CAACC,EAAIC,EAAI,CAAE,YAAAX,KAAkB,CAC5C,CAAE,KAAM,UAAW,GAAIA,CAAA,EACvB,CAAE,KAAM,oBAAqB,GAAI,MAAA,CAAO,CAC1C,CACF,CAEJ,CAAC,EAEY,CACX,yBAAAY,EACA,yBAAAC,EACA,6BAAAC,EACA,yBAAAC,EACA,4BAAAC,CACF,EAAIpB"}