@ynput/ayon-frontend-shared 0.3.41 → 0.3.42

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 (643) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +28 -27
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +224 -223
  6. package/dist/ProjectTreeTable.es.js.map +1 -1
  7. package/dist/Slicer.cjs.js +1 -1
  8. package/dist/Slicer.es.js +25 -16
  9. package/dist/Slicer.es.js.map +1 -1
  10. package/dist/_virtual/index.cjs6.js +1 -1
  11. package/dist/_virtual/index.cjs8.js +1 -1
  12. package/dist/_virtual/index.es6.js +2 -2
  13. package/dist/_virtual/index.es8.js +2 -2
  14. package/dist/api.cjs.js +1 -1
  15. package/dist/api.es.js +420 -419
  16. package/dist/index.cjs.js +1 -1
  17. package/dist/index.es.js +15 -14
  18. package/dist/index.es.js.map +1 -1
  19. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  20. package/dist/node_modules/remove-accents/index.es.js +1 -1
  21. package/dist/shared/node_modules/@module-federation/error-codes/dist/index.cjs.js +1 -1
  22. package/dist/shared/node_modules/@module-federation/error-codes/dist/index.es.js +1 -1
  23. package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.cjs.js +1 -1
  24. package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.es.js +1 -1
  25. package/dist/shared/src/api/generated/graphql.cjs.js +41 -27
  26. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  27. package/dist/shared/src/api/generated/graphql.es.js +259 -97
  28. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  29. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  30. package/dist/shared/src/api/generated/graphqlLinks.es.js +70 -19
  31. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  32. package/dist/shared/src/api/queries/activities/updateActivities.cjs.js +1 -1
  33. package/dist/shared/src/api/queries/activities/updateActivities.cjs.js.map +1 -1
  34. package/dist/shared/src/api/queries/activities/updateActivities.es.js +40 -43
  35. package/dist/shared/src/api/queries/activities/updateActivities.es.js.map +1 -1
  36. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js +1 -1
  37. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js.map +1 -1
  38. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js +149 -55
  39. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js.map +1 -1
  40. package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js.map +1 -1
  41. package/dist/shared/src/api/queries/columnStats/columnStats.es.js.map +1 -1
  42. package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js +1 -1
  43. package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js.map +1 -1
  44. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js +105 -51
  45. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js.map +1 -1
  46. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +1 -1
  47. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -1
  48. package/dist/shared/src/api/queries/entityLists/getLists.es.js +174 -124
  49. package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -1
  50. package/dist/shared/src/api/queries/entityLists/listFolders.cjs.js +1 -1
  51. package/dist/shared/src/api/queries/entityLists/listFolders.cjs.js.map +1 -1
  52. package/dist/shared/src/api/queries/entityLists/listFolders.es.js +94 -40
  53. package/dist/shared/src/api/queries/entityLists/listFolders.es.js.map +1 -1
  54. package/dist/shared/src/api/queries/folders/getFolders.cjs.js +1 -1
  55. package/dist/shared/src/api/queries/folders/getFolders.cjs.js.map +1 -1
  56. package/dist/shared/src/api/queries/folders/getFolders.es.js +109 -55
  57. package/dist/shared/src/api/queries/folders/getFolders.es.js.map +1 -1
  58. package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js +1 -1
  59. package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js.map +1 -1
  60. package/dist/shared/src/api/queries/links/getEntityLinks.es.js +117 -63
  61. package/dist/shared/src/api/queries/links/getEntityLinks.es.js.map +1 -1
  62. package/dist/shared/src/api/queries/links/getLinks.cjs.js +1 -1
  63. package/dist/shared/src/api/queries/links/getLinks.cjs.js.map +1 -1
  64. package/dist/shared/src/api/queries/links/getLinks.es.js +108 -54
  65. package/dist/shared/src/api/queries/links/getLinks.es.js.map +1 -1
  66. package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
  67. package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
  68. package/dist/shared/src/api/queries/overview/getOverview.es.js +220 -167
  69. package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
  70. package/dist/shared/src/api/queries/projectFolders/projectFolders.cjs.js +1 -1
  71. package/dist/shared/src/api/queries/projectFolders/projectFolders.cjs.js.map +1 -1
  72. package/dist/shared/src/api/queries/projectFolders/projectFolders.es.js +133 -80
  73. package/dist/shared/src/api/queries/projectFolders/projectFolders.es.js.map +1 -1
  74. package/dist/shared/src/api/queries/review/getReview.cjs.js +1 -1
  75. package/dist/shared/src/api/queries/review/getReview.cjs.js.map +1 -1
  76. package/dist/shared/src/api/queries/review/getReview.es.js +127 -75
  77. package/dist/shared/src/api/queries/review/getReview.es.js.map +1 -1
  78. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -1
  79. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js.map +1 -1
  80. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +142 -90
  81. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js.map +1 -1
  82. package/dist/shared/src/api/queries/users/getUsers.cjs.js +4 -2
  83. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  84. package/dist/shared/src/api/queries/users/getUsers.es.js +2 -0
  85. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  86. package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js +1 -1
  87. package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js.map +1 -1
  88. package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js +537 -331
  89. package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js.map +1 -1
  90. package/dist/shared/src/components/AttributeEditor/attributeTypeMap.cjs.js +1 -1
  91. package/dist/shared/src/components/AttributeEditor/attributeTypeMap.cjs.js.map +1 -1
  92. package/dist/shared/src/components/AttributeEditor/attributeTypeMap.es.js +124 -29
  93. package/dist/shared/src/components/AttributeEditor/attributeTypeMap.es.js.map +1 -1
  94. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js +5 -5
  95. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js.map +1 -1
  96. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js +140 -45
  97. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js.map +1 -1
  98. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  99. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  100. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +8 -7
  101. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  102. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  103. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +4 -4
  104. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.cjs.js +4 -4
  105. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.cjs.js.map +1 -1
  106. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.es.js +113 -18
  107. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.es.js.map +1 -1
  108. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.cjs.js +2 -2
  109. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.cjs.js.map +1 -1
  110. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.es.js +108 -13
  111. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.es.js.map +1 -1
  112. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  113. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +3 -3
  114. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.cjs.js +1 -1
  115. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.cjs.js.map +1 -1
  116. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.es.js +119 -24
  117. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.es.js.map +1 -1
  118. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js +1 -1
  119. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js.map +1 -1
  120. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.es.js +97 -2
  121. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.es.js.map +1 -1
  122. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  123. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  124. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +8 -7
  125. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  126. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
  127. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
  128. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +8 -7
  129. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
  130. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
  131. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +5 -5
  132. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js +1 -1
  133. package/dist/shared/src/components/LinksManager/LinksManager.es.js +9 -9
  134. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  135. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  136. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +8 -7
  137. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  138. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js +1 -1
  139. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js +4 -4
  140. package/dist/shared/src/components/Menu/Menu.cjs.js +1 -1
  141. package/dist/shared/src/components/Menu/Menu.es.js +7 -7
  142. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +1 -1
  143. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
  144. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +22 -21
  145. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
  146. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +2 -2
  147. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  148. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +56 -55
  149. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  150. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
  151. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
  152. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +16 -14
  153. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
  154. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
  155. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
  156. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +9 -8
  157. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
  158. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  159. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  160. package/dist/shared/src/components/RenameForm/RenameForm.es.js +8 -7
  161. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  162. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  163. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  164. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +8 -7
  165. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  166. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  167. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  168. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +9 -8
  169. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  170. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  171. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  172. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +8 -7
  173. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  174. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
  175. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
  176. package/dist/shared/src/components/ReviewablesSelector/Card.es.js +8 -7
  177. package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
  178. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  179. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +1 -1
  180. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
  181. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
  182. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +10 -9
  183. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
  184. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  185. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  186. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +8 -7
  187. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  188. package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js +1 -1
  189. package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js.map +1 -1
  190. package/dist/shared/src/components/Thumbnail/Thumbnail.es.js +122 -27
  191. package/dist/shared/src/components/Thumbnail/Thumbnail.es.js.map +1 -1
  192. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js +3 -3
  193. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js.map +1 -1
  194. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js +117 -22
  195. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js.map +1 -1
  196. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  197. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  198. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +8 -7
  199. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  200. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  201. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  202. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +12 -11
  203. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  204. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  205. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  206. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +8 -7
  207. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  208. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  209. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  210. package/dist/shared/src/containers/Actions/Actions.es.js +42 -42
  211. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  212. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js +2 -2
  213. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js.map +1 -1
  214. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.es.js +28 -28
  215. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.es.js.map +1 -1
  216. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.styled.cjs.js +22 -19
  217. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.styled.cjs.js.map +1 -1
  218. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.styled.es.js +25 -22
  219. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.styled.es.js.map +1 -1
  220. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  221. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  222. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +8 -7
  223. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  224. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  225. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  226. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +8 -7
  227. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  228. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  229. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  230. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +8 -7
  231. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  232. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  233. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  234. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +8 -7
  235. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  236. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  237. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  238. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +30 -29
  239. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  240. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
  241. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
  242. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +12 -11
  243. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
  244. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js +5 -5
  245. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js.map +1 -1
  246. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.es.js +115 -20
  247. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.es.js.map +1 -1
  248. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
  249. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
  250. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +8 -7
  251. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js.map +1 -1
  252. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
  253. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
  254. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +22 -21
  255. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
  256. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
  257. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
  258. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +8 -7
  259. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
  260. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
  261. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
  262. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +8 -7
  263. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
  264. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js +1 -1
  265. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js.map +1 -1
  266. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js +105 -10
  267. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js.map +1 -1
  268. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  269. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +2 -2
  270. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  271. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  272. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +30 -29
  273. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  274. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  275. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  276. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +8 -7
  277. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  278. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  279. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  280. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +8 -7
  281. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  282. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  283. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  284. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +8 -7
  285. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  286. package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.cjs.js +1 -1
  287. package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.cjs.js.map +1 -1
  288. package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.es.js +106 -11
  289. package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.es.js.map +1 -1
  290. package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.cjs.js +1 -1
  291. package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.cjs.js.map +1 -1
  292. package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.es.js +122 -27
  293. package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.es.js.map +1 -1
  294. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
  295. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
  296. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +8 -7
  297. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
  298. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  299. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  300. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +90 -80
  301. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  302. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  303. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  304. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +8 -7
  305. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  306. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.cjs.js +1 -1
  307. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.cjs.js.map +1 -1
  308. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.es.js +119 -24
  309. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.es.js.map +1 -1
  310. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js +1 -1
  311. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js.map +1 -1
  312. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js +28 -29
  313. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js.map +1 -1
  314. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
  315. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  316. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +8 -7
  317. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  318. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
  319. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
  320. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +12 -11
  321. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
  322. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.cjs.js +1 -1
  323. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.cjs.js.map +1 -1
  324. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.es.js +104 -9
  325. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.es.js.map +1 -1
  326. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js +1 -1
  327. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js +1 -1
  328. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  329. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  330. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +8 -7
  331. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  332. package/dist/shared/src/containers/Feed/helpers/getActivityUserName.cjs.js +2 -0
  333. package/dist/shared/src/containers/Feed/helpers/getActivityUserName.cjs.js.map +1 -0
  334. package/dist/shared/src/containers/Feed/helpers/getActivityUserName.es.js +5 -0
  335. package/dist/shared/src/containers/Feed/helpers/getActivityUserName.es.js.map +1 -0
  336. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js +1 -1
  337. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js.map +1 -1
  338. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js +185 -87
  339. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js.map +1 -1
  340. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.cjs.js +1 -1
  341. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.cjs.js.map +1 -1
  342. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.es.js +105 -10
  343. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.es.js.map +1 -1
  344. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.cjs.js +1 -1
  345. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.cjs.js.map +1 -1
  346. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.es.js +108 -13
  347. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.es.js.map +1 -1
  348. package/dist/shared/src/containers/ListTable/ListTable.cjs.js +1 -1
  349. package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
  350. package/dist/shared/src/containers/ListTable/ListTable.es.js +21 -20
  351. package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
  352. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
  353. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
  354. package/dist/shared/src/containers/ListTable/ListTableCell.es.js +8 -7
  355. package/dist/shared/src/containers/ListTable/ListTableCell.es.js.map +1 -1
  356. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js +1 -1
  357. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js.map +1 -1
  358. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js +8 -7
  359. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
  360. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  361. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  362. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +428 -424
  363. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  364. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  365. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  366. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +71 -70
  367. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  368. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
  369. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
  370. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +8 -7
  371. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
  372. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  373. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  374. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +8 -7
  375. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  376. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  377. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  378. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +8 -7
  379. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  380. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  381. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  382. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +8 -7
  383. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  384. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
  385. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
  386. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +22 -21
  387. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
  388. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  389. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  390. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +8 -7
  391. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  392. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.cjs.js +1 -1
  393. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.cjs.js.map +1 -1
  394. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.es.js +178 -83
  395. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.es.js.map +1 -1
  396. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  397. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  398. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +30 -29
  399. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  400. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  401. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  402. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +23 -22
  403. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  404. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  405. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  406. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +8 -7
  407. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  408. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  409. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  410. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +8 -7
  411. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  412. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  413. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  414. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +25 -24
  415. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  416. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
  417. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
  418. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +8 -7
  419. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
  420. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  421. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  422. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +72 -72
  423. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  424. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  425. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  426. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +25 -24
  427. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  428. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  429. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  430. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +24 -23
  431. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  432. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  433. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  434. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +8 -7
  435. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  436. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  437. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  438. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +8 -7
  439. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  440. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  441. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  442. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +9 -8
  443. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  444. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  445. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  446. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +23 -22
  447. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  448. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSelectedFolders.cjs.js +1 -1
  449. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSelectedFolders.cjs.js.map +1 -1
  450. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSelectedFolders.es.js +13 -16
  451. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSelectedFolders.es.js.map +1 -1
  452. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
  453. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
  454. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +47 -42
  455. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
  456. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  457. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  458. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +37 -36
  459. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  460. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
  461. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  462. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +8 -7
  463. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  464. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +1 -1
  465. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  466. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +9 -8
  467. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  468. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js +1 -1
  469. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js.map +1 -1
  470. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js +8 -7
  471. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js.map +1 -1
  472. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  473. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  474. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +10 -9
  475. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  476. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js +1 -1
  477. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js +4 -4
  478. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  479. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  480. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +24 -23
  481. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  482. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
  483. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
  484. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +8 -7
  485. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
  486. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js +1 -1
  487. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js +4 -4
  488. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js +4 -4
  489. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js.map +1 -1
  490. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js +175 -80
  491. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js.map +1 -1
  492. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js +5 -5
  493. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js.map +1 -1
  494. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js +107 -12
  495. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js.map +1 -1
  496. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  497. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  498. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +41 -40
  499. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  500. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  501. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  502. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +8 -7
  503. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  504. package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js +2 -2
  505. package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js.map +1 -1
  506. package/dist/shared/src/containers/Slicer/components/Slicer.es.js +57 -70
  507. package/dist/shared/src/containers/Slicer/components/Slicer.es.js.map +1 -1
  508. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
  509. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
  510. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +8 -7
  511. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
  512. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +1 -1
  513. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -1
  514. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +273 -124
  515. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
  516. package/dist/shared/src/containers/Slicer/context/SlicerContextInstance.cjs.js +2 -0
  517. package/dist/shared/src/containers/Slicer/context/SlicerContextInstance.cjs.js.map +1 -0
  518. package/dist/shared/src/containers/Slicer/context/SlicerContextInstance.es.js +6 -0
  519. package/dist/shared/src/containers/Slicer/context/SlicerContextInstance.es.js.map +1 -0
  520. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
  521. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
  522. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +3 -2
  523. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
  524. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.cjs.js +2 -0
  525. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.cjs.js.map +1 -0
  526. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.es.js +156 -0
  527. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.es.js.map +1 -0
  528. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.cjs.js +2 -0
  529. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.cjs.js.map +1 -0
  530. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.es.js +187 -0
  531. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.es.js.map +1 -0
  532. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.cjs.js +2 -0
  533. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.cjs.js.map +1 -0
  534. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.es.js +143 -0
  535. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.es.js.map +1 -0
  536. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
  537. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
  538. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +47 -43
  539. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
  540. package/dist/shared/src/containers/Slicer/util/createFilterFromSlicer.cjs.js +1 -1
  541. package/dist/shared/src/containers/Slicer/util/createFilterFromSlicer.cjs.js.map +1 -1
  542. package/dist/shared/src/containers/Slicer/util/createFilterFromSlicer.es.js +8 -13
  543. package/dist/shared/src/containers/Slicer/util/createFilterFromSlicer.es.js.map +1 -1
  544. package/dist/shared/src/containers/Slicer/util/getSelectionDataState.cjs.js +2 -0
  545. package/dist/shared/src/containers/Slicer/util/getSelectionDataState.cjs.js.map +1 -0
  546. package/dist/shared/src/containers/Slicer/util/getSelectionDataState.es.js +8 -0
  547. package/dist/shared/src/containers/Slicer/util/getSelectionDataState.es.js.map +1 -0
  548. package/dist/shared/src/containers/Views/ViewItem/ViewItem.cjs.js +1 -1
  549. package/dist/shared/src/containers/Views/ViewItem/ViewItem.cjs.js.map +1 -1
  550. package/dist/shared/src/containers/Views/ViewItem/ViewItem.es.js +124 -29
  551. package/dist/shared/src/containers/Views/ViewItem/ViewItem.es.js.map +1 -1
  552. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  553. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +2 -2
  554. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
  555. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
  556. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +7 -6
  557. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
  558. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js +1 -1
  559. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js.map +1 -1
  560. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js +113 -18
  561. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js.map +1 -1
  562. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js +1 -1
  563. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js.map +1 -1
  564. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js +140 -45
  565. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js.map +1 -1
  566. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  567. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +2 -2
  568. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  569. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  570. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  571. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  572. package/dist/shared/src/context/DetailsPanelContext.es.js +64 -63
  573. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  574. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  575. package/dist/shared/src/context/PowerpackContext.es.js +2 -2
  576. package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
  577. package/dist/shared/src/context/ProjectFoldersContext.es.js +2 -2
  578. package/dist/shared/src/context/SubtasksModulesContext.cjs.js +1 -1
  579. package/dist/shared/src/context/SubtasksModulesContext.es.js +2 -2
  580. package/dist/shared/src/context/UriContext.cjs.js +1 -1
  581. package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
  582. package/dist/shared/src/context/UriContext.es.js +1 -1
  583. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  584. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  585. package/dist/shared/src/context/WebsocketContext.es.js +17 -16
  586. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  587. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
  588. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
  589. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +2 -2
  590. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js +1 -1
  591. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js.map +1 -1
  592. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js +115 -20
  593. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js.map +1 -1
  594. package/dist/shared/src/util/getBundleMode.cjs.js +2 -0
  595. package/dist/shared/src/util/getBundleMode.cjs.js.map +1 -0
  596. package/dist/shared/src/util/getBundleMode.es.js +118 -0
  597. package/dist/shared/src/util/getBundleMode.es.js.map +1 -0
  598. package/dist/types/api/generated/graphql.d.ts +639 -853
  599. package/dist/types/api/generated/graphqlLinks.d.ts +190 -284
  600. package/dist/types/api/queries/activities/getActivities.d.ts +144 -137
  601. package/dist/types/api/queries/activities/updateActivities.d.ts +288 -274
  602. package/dist/types/api/queries/columnStats/columnStats.d.ts +3 -21
  603. package/dist/types/api/queries/entities/getEntity.d.ts +144 -137
  604. package/dist/types/api/queries/entities/getEntityPanel.d.ts +144 -137
  605. package/dist/types/api/queries/entities/updateEntity.d.ts +144 -137
  606. package/dist/types/api/queries/entityLists/getLists.d.ts +1388 -1381
  607. package/dist/types/api/queries/entityLists/types.d.ts +1 -0
  608. package/dist/types/api/queries/folders/getFolderDeleteInfo.d.ts +66 -66
  609. package/dist/types/api/queries/overview/getOverview.d.ts +630 -623
  610. package/dist/types/api/queries/products/getFolderProducts.d.ts +32 -32
  611. package/dist/types/api/queries/project/getProject.d.ts +264 -257
  612. package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +192 -185
  613. package/dist/types/api/queries/users/getUsers.d.ts +177 -170
  614. package/dist/types/api/queries/versions/getVersionsProducts.d.ts +784 -770
  615. package/dist/types/api/queries/versions/updateVersions.d.ts +106 -143
  616. package/dist/types/containers/Actions/Actions.d.ts +3 -2
  617. package/dist/types/containers/Actions/ActionsDropdown/ActionsDropdown.d.ts +3 -2
  618. package/dist/types/containers/Feed/helpers/getActivityUserName.d.ts +4 -0
  619. package/dist/types/containers/ProjectTreeTable/hooks/useSelectedFolders.d.ts +2 -2
  620. package/dist/types/containers/ProjectTreeTable/hooks/useSortBySettings.d.ts +6 -1
  621. package/dist/types/containers/Slicer/components/Slicer.d.ts +1 -1
  622. package/dist/types/containers/Slicer/context/SlicerContext.d.ts +14 -19
  623. package/dist/types/containers/Slicer/context/SlicerContextInstance.d.ts +2 -0
  624. package/dist/types/containers/Slicer/hooks/index.d.ts +4 -1
  625. package/dist/types/containers/Slicer/hooks/useSlicerRemotes.d.ts +6 -0
  626. package/dist/types/containers/Slicer/hooks/useSlicerRowSelection.d.ts +20 -0
  627. package/dist/types/containers/Slicer/hooks/useSlicerSplitter.d.ts +9 -0
  628. package/dist/types/containers/Slicer/types.d.ts +7 -0
  629. package/dist/types/containers/Slicer/util/createFilterFromSlicer.d.ts +5 -3
  630. package/dist/types/containers/Slicer/util/getSelectionDataState.d.ts +3 -0
  631. package/dist/types/containers/Slicer/util/index.d.ts +1 -0
  632. package/dist/types/context/DetailsPanelContext.d.ts +2 -1
  633. package/dist/types/util/getBundleMode.d.ts +4 -0
  634. package/dist/types/util/index.d.ts +1 -0
  635. package/dist/util.cjs.js +1 -1
  636. package/dist/util.es.js +33 -30
  637. package/dist/util.es.js.map +1 -1
  638. package/package.json +3 -3
  639. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js +0 -2
  640. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js.map +0 -1
  641. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js +0 -22
  642. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js.map +0 -1
  643. package/dist/types/containers/Slicer/hooks/useSlicerViewSync.d.ts +0 -8
@@ -42,45 +42,99 @@ import "lodash";
42
42
  import "react-toastify";
43
43
  import "uuid";
44
44
  import { subscribeToThumbnailUpdates as I } from "../../../util/thumbnailWebsocket.es.js";
45
- import b from "../../../util/pubsub.es.js";
45
+ import "../actions/getActions.es.js";
46
+ import "../activities/getActivities.es.js";
47
+ import "../activities/updateActivities.es.js";
48
+ import "../activities/updateReaction.es.js";
49
+ import "../activities/getMentions.es.js";
50
+ import "../activities/getCategories.es.js";
51
+ import "../addons/getAddons.es.js";
52
+ import "../addons/updateAddons.es.js";
53
+ import "../attributes/getAttributes.es.js";
54
+ import "../attributes/updateAttributes.es.js";
55
+ import "../authentication/getAuthentication.es.js";
56
+ import "../cloud/cloud.es.js";
57
+ import "../columnStats/metricTargets.es.js";
58
+ import "../config/getConfig.es.js";
59
+ import "../config/updateConfig.es.js";
60
+ import "./getEntity.es.js";
46
61
  import { transformDetailsPanelQueriesData as u, detailsPanelEntityTypes as G } from "./transformDetailsPanelData.es.js";
62
+ import "./updateEntity.es.js";
63
+ import "../entityLists/getLists.es.js";
64
+ import "../entityLists/updateLists.es.js";
65
+ import "../entityLists/getListsAttributes.es.js";
66
+ import "../entityLists/listItemsColumnStats.es.js";
67
+ import "../entityLists/updateListsAttributes.es.js";
68
+ import "../entityLists/listFolders.es.js";
69
+ import "../folders/getFolders.es.js";
70
+ import "../folders/getFolderDeleteInfo.es.js";
71
+ import "../grouping/getGrouping.es.js";
72
+ import "../links/updateLinks.es.js";
73
+ import "../links/getLinks.es.js";
74
+ import "../links/getEntityLinks.es.js";
75
+ import "../overview/getOverview.es.js";
76
+ import "../overview/updateOverview.es.js";
77
+ import "../versions/getVersionsProducts.es.js";
78
+ import "../permissions/getPermissions.es.js";
79
+ import "../products/createProduct.es.js";
80
+ import "../products/getFolderProducts.es.js";
81
+ import "../project/getProject.es.js";
82
+ import "../project/updateProject.es.js";
83
+ import "../projectFolders/projectFolders.es.js";
84
+ import "../review/getReview.es.js";
85
+ import "../review/updateReview.es.js";
86
+ import "../share/share.es.js";
87
+ import "../system/getSystem.es.js";
88
+ import "../tasks/getTasks.es.js";
89
+ import "../tasks/updateTasks.es.js";
90
+ import "../teams/getTeams.es.js";
91
+ import "../userDashboard/getUserDashboard.es.js";
92
+ import "../users/getUsers.es.js";
93
+ import "../users/updateUsers.es.js";
94
+ import "../users/guests.es.js";
95
+ import "../versions/updateVersions.es.js";
96
+ import "../views/getViews.es.js";
97
+ import "../views/updateViews.es.js";
98
+ import "../watchers/getWatchers.es.js";
99
+ import "../uris/getUris.es.js";
100
+ import b from "../../../util/pubsub.es.js";
47
101
  const y = T.enhanceEndpoints({
48
102
  endpoints: {
49
103
  GetDetailsPanelFolder: {
50
- transformResponse: (i, s, e) => {
51
- const { projectName: r } = e, t = i?.project?.folder;
104
+ transformResponse: (i, p, r) => {
105
+ const { projectName: e } = r, t = i?.project?.folder;
52
106
  return t ? u({
53
- projectName: r,
107
+ projectName: e,
54
108
  entity: t,
55
109
  entityType: "folder"
56
110
  }) : null;
57
111
  }
58
112
  },
59
113
  GetDetailsPanelTask: {
60
- transformResponse: (i, s, e) => {
61
- const { projectName: r } = e, t = i?.project?.task;
114
+ transformResponse: (i, p, r) => {
115
+ const { projectName: e } = r, t = i?.project?.task;
62
116
  return t ? u({
63
- projectName: r,
117
+ projectName: e,
64
118
  entity: t,
65
119
  entityType: "task"
66
120
  }) : null;
67
121
  }
68
122
  },
69
123
  GetDetailsPanelVersion: {
70
- transformResponse: (i, s, e) => {
71
- const { projectName: r } = e, t = i?.project?.version;
124
+ transformResponse: (i, p, r) => {
125
+ const { projectName: e } = r, t = i?.project?.version;
72
126
  return t ? u({
73
- projectName: r,
127
+ projectName: e,
74
128
  entity: t,
75
129
  entityType: "version"
76
130
  }) : null;
77
131
  }
78
132
  },
79
133
  GetDetailsPanelRepresentation: {
80
- transformResponse: (i, s, e) => {
81
- const { projectName: r } = e, t = i?.project?.representation;
134
+ transformResponse: (i, p, r) => {
135
+ const { projectName: e } = r, t = i?.project?.representation;
82
136
  return t ? u({
83
- projectName: r,
137
+ projectName: e,
84
138
  entity: t,
85
139
  entityType: "representation"
86
140
  }) : null;
@@ -101,8 +155,8 @@ const y = T.enhanceEndpoints({
101
155
  }, _ = y.injectEndpoints({
102
156
  endpoints: (i) => ({
103
157
  getEntitiesDetailsPanel: i.query({
104
- async queryFn({ entities: s = [], entityType: e }, { dispatch: r }) {
105
- if (!G.includes(e))
158
+ async queryFn({ entities: p = [], entityType: r }, { dispatch: e }) {
159
+ if (!G.includes(r))
106
160
  return {
107
161
  error: {
108
162
  status: "CUSTOM_ERROR",
@@ -110,88 +164,88 @@ const y = T.enhanceEndpoints({
110
164
  }
111
165
  };
112
166
  try {
113
- const t = s.map((a) => r(
114
- y.endpoints[j(e)].initiate(
167
+ const t = p.map((m) => e(
168
+ y.endpoints[j(r)].initiate(
115
169
  {
116
- projectName: a.projectName,
117
- entityId: a.id
170
+ projectName: m.projectName,
171
+ entityId: m.id
118
172
  },
119
173
  { forceRefetch: !0 }
120
174
  )
121
175
  ));
122
- return { data: (await Promise.all(t)).filter((a) => !!a.data).map((a) => a.data) };
176
+ return { data: (await Promise.all(t)).filter((m) => !!m.data).map((m) => m.data) };
123
177
  } catch (t) {
124
178
  return console.error(t), { error: { status: "FETCH_ERROR", error: t.message } };
125
179
  }
126
180
  },
127
- async onCacheEntryAdded({ entities: s, entityType: e }, { updateCachedData: r, cacheDataLoaded: t, cacheEntryRemoved: c, dispatch: f }) {
128
- let a, d;
181
+ async onCacheEntryAdded({ entities: p, entityType: r }, { updateCachedData: e, cacheDataLoaded: t, cacheEntryRemoved: c, dispatch: f }) {
182
+ let m, d;
129
183
  try {
130
184
  await t, d = I(
131
185
  (h) => {
132
186
  const l = h.filter(
133
- (p) => s.some((o) => o.id === p.summary.entityId && o.projectName === p.project)
187
+ (s) => p.some((n) => n.id === s.summary.entityId && n.projectName === s.project)
134
188
  );
135
- l.length !== 0 && r((p) => {
136
- l.forEach((o) => {
137
- const n = p.findIndex((m) => m.id === o.summary.entityId);
138
- n !== -1 && p[n] && o.summary.thumbnailHash && (p[n].thumbnailHash = o.summary.thumbnailHash);
189
+ l.length !== 0 && e((s) => {
190
+ l.forEach((n) => {
191
+ const o = s.findIndex((a) => a.id === n.summary.entityId);
192
+ o !== -1 && s[o] && n.summary.thumbnailHash && (s[o].thumbnailHash = n.summary.thumbnailHash);
139
193
  });
140
194
  });
141
195
  },
142
- [e]
196
+ [r]
143
197
  );
144
198
  const D = async (h, l) => {
145
- const p = l.summary?.entityId, o = s.find((n) => n.id === p);
146
- if (o)
199
+ const s = l.summary?.entityId, n = p.find((o) => o.id === s);
200
+ if (n)
147
201
  try {
148
- const n = await f(
149
- y.endpoints[j(e)].initiate(
202
+ const o = await f(
203
+ y.endpoints[j(r)].initiate(
150
204
  {
151
- projectName: o.projectName,
152
- entityId: o.id
205
+ projectName: n.projectName,
206
+ entityId: n.id
153
207
  },
154
208
  { forceRefetch: !0 }
155
209
  )
156
210
  );
157
- if (n.status !== "fulfilled") {
158
- console.error(n?.error || "No entity found");
211
+ if (o.status !== "fulfilled") {
212
+ console.error(o?.error || "No entity found");
159
213
  return;
160
214
  }
161
- const m = n.data;
162
- if (!m) {
215
+ const a = o.data;
216
+ if (!a) {
163
217
  console.error("No entity found");
164
218
  return;
165
219
  }
166
- r((E) => {
167
- const P = E.findIndex((N) => N.id === m.id);
220
+ e((E) => {
221
+ const P = E.findIndex((N) => N.id === a.id);
168
222
  if (P === -1) {
169
223
  console.error("Entity not found in cache");
170
224
  return;
171
225
  }
172
- E[P] = m;
226
+ E[P] = a;
173
227
  });
174
- } catch (n) {
175
- console.error("Entity task realtime update failed", n);
228
+ } catch (o) {
229
+ console.error("Entity task realtime update failed", o);
176
230
  return;
177
231
  }
178
- }, R = `entity.${e}`;
179
- a = b.subscribe(R, D);
232
+ }, R = `entity.${r}`;
233
+ m = b.subscribe(R, D);
180
234
  } catch {
181
235
  }
182
- await c, b.unsubscribe(a), d && d();
236
+ await c, b.unsubscribe(m), d && d();
183
237
  },
184
- providesTags: (s, e, { entities: r, entityType: t }) => [
185
- ...r.map(({ id: c }) => ({ id: c, type: "entities" })),
238
+ providesTags: (p, r, { entities: e, entityType: t }) => [
239
+ ...e.map(({ id: c }) => ({ id: c, type: "entities" })),
186
240
  { type: "entities", id: t.toUpperCase() },
187
241
  { type: "entities", id: "LIST" }
188
242
  ]
189
243
  })
190
244
  })
191
- }), { useGetEntitiesDetailsPanelQuery: jt, useLazyGetEntitiesDetailsPanelQuery: Dt } = _;
245
+ }), { useGetEntitiesDetailsPanelQuery: jr, useLazyGetEntitiesDetailsPanelQuery: Dr } = _;
192
246
  export {
193
247
  _ as detailsPanelQueries,
194
- jt as useGetEntitiesDetailsPanelQuery,
195
- Dt as useLazyGetEntitiesDetailsPanelQuery
248
+ jr as useGetEntitiesDetailsPanelQuery,
249
+ Dr as useLazyGetEntitiesDetailsPanelQuery
196
250
  };
197
251
  //# sourceMappingURL=getEntityPanel.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getEntityPanel.es.js","sources":["../../../../../../src/api/queries/entities/getEntityPanel.ts"],"sourcesContent":["import {\n gqlApi,\n GetDetailsPanelFolderQuery,\n GetDetailsPanelRepresentationQuery,\n GetDetailsPanelTaskQuery,\n GetDetailsPanelVersionQuery,\n} from '@shared/api/generated'\nimport { PubSub, subscribeToThumbnailUpdates, ThumbnailUpdateMessage } from '@shared/util'\nimport { FetchBaseQueryError } from '@reduxjs/toolkit/query'\nimport {\n detailsPanelEntityTypes,\n transformDetailsPanelQueriesData,\n} from './transformDetailsPanelData'\nimport type { DetailsPanelEntityData, DetailsPanelEntityType } from './transformDetailsPanelData'\n\nimport { DefinitionsFromApi, OverrideResultType, TagTypesFromApi } from '@reduxjs/toolkit/query'\ntype Definitions = DefinitionsFromApi<typeof gqlApi>\ntype TagTypes = TagTypesFromApi<typeof gqlApi>\n// update the definitions to include the new types\ntype UpdatedDefinitions = Omit<\n Definitions,\n | 'GetDetailsPanelFolder'\n | 'GetDetailsPanelTask'\n | 'GetDetailsPanelVersion'\n | 'GetDetailsPanelRepresentation'\n> & {\n GetDetailsPanelFolder: OverrideResultType<\n Definitions['GetDetailsPanelFolder'],\n DetailsPanelEntityData | null\n >\n GetDetailsPanelTask: OverrideResultType<\n Definitions['GetDetailsPanelTask'],\n DetailsPanelEntityData | null\n >\n GetDetailsPanelVersion: OverrideResultType<\n Definitions['GetDetailsPanelVersion'],\n DetailsPanelEntityData | null\n >\n GetDetailsPanelRepresentation: OverrideResultType<\n Definitions['GetDetailsPanelRepresentation'],\n DetailsPanelEntityData | null\n >\n}\n\nconst enhancedDetailsApi = gqlApi.enhanceEndpoints<TagTypes, UpdatedDefinitions>({\n endpoints: {\n GetDetailsPanelFolder: {\n transformResponse: (response: GetDetailsPanelFolderQuery, _meta, args) => {\n const { projectName } = args\n const entity = response?.project?.folder\n if (!entity) return null\n return transformDetailsPanelQueriesData({\n projectName,\n entity,\n entityType: 'folder',\n })\n },\n },\n GetDetailsPanelTask: {\n transformResponse: (response: GetDetailsPanelTaskQuery, _meta, args) => {\n const { projectName } = args\n const entity = response?.project?.task\n if (!entity) return null\n return transformDetailsPanelQueriesData({\n projectName,\n entity,\n entityType: 'task',\n })\n },\n },\n GetDetailsPanelVersion: {\n transformResponse: (response: GetDetailsPanelVersionQuery, _meta, args) => {\n const { projectName } = args\n const entity = response?.project?.version\n if (!entity) return null\n return transformDetailsPanelQueriesData({\n projectName,\n entity,\n entityType: 'version',\n })\n },\n },\n GetDetailsPanelRepresentation: {\n transformResponse: (response: GetDetailsPanelRepresentationQuery, _meta, args) => {\n const { projectName } = args\n const entity = response?.project?.representation\n if (!entity) return null\n return transformDetailsPanelQueriesData({\n projectName,\n entity,\n entityType: 'representation',\n })\n },\n },\n },\n})\n\ntype GetEntitiesDetailsPanelArgs = {\n entities: { id: string; projectName: string }[]\n entityType: DetailsPanelEntityType\n}\n\ntype QueryNameType =\n | 'GetDetailsPanelTask'\n | 'GetDetailsPanelVersion'\n | 'GetDetailsPanelFolder'\n | 'GetDetailsPanelRepresentation'\n\nconst getEntityTypeQueryName = (entityType: DetailsPanelEntityType): QueryNameType => {\n switch (entityType) {\n case 'task':\n return 'GetDetailsPanelTask'\n\n case 'version':\n return 'GetDetailsPanelVersion'\n\n case 'folder':\n return 'GetDetailsPanelFolder'\n\n case 'representation':\n return 'GetDetailsPanelRepresentation'\n }\n}\n\nconst detailsPanelQueries2 = enhancedDetailsApi.injectEndpoints({\n endpoints: (build) => ({\n getEntitiesDetailsPanel: build.query<DetailsPanelEntityData[], GetEntitiesDetailsPanelArgs>({\n async queryFn({ entities = [], entityType }, { dispatch }) {\n if (!detailsPanelEntityTypes.includes(entityType)) {\n return {\n error: {\n status: 'CUSTOM_ERROR',\n error: 'Entity type not supported',\n } as FetchBaseQueryError,\n }\n }\n\n try {\n const promises = entities.map((entity) => {\n return dispatch(\n enhancedDetailsApi.endpoints[getEntityTypeQueryName(entityType)].initiate(\n {\n projectName: entity.projectName,\n entityId: entity.id,\n },\n { forceRefetch: true },\n ),\n )\n })\n\n const res = await Promise.all(promises)\n\n const entitiesData = res\n .filter((res) => !!res.data)\n .map((res) => res.data) as DetailsPanelEntityData[]\n\n return { data: entitiesData }\n } catch (e: any) {\n console.error(e)\n return { error: { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError }\n }\n },\n async onCacheEntryAdded(\n { entities, entityType },\n { updateCachedData, cacheDataLoaded, cacheEntryRemoved, dispatch },\n ) {\n let token\n let unsubscribeThumbnails: (() => void) | undefined\n try {\n // wait for the initial query to resolve before proceeding\n await cacheDataLoaded\n\n unsubscribeThumbnails = subscribeToThumbnailUpdates(\n (messages: ThumbnailUpdateMessage[]) => {\n const matchedMessages = messages.filter((m) =>\n entities.some((e) => e.id === m.summary.entityId && e.projectName === m.project),\n )\n if (matchedMessages.length === 0) return\n\n updateCachedData((draft) => {\n matchedMessages.forEach((message) => {\n const entityIndex = draft.findIndex((e: any) => e.id === message.summary.entityId)\n if (entityIndex !== -1 && draft[entityIndex] && message.summary.thumbnailHash) {\n draft[entityIndex].thumbnailHash = message.summary.thumbnailHash\n }\n })\n })\n },\n [entityType],\n )\n\n const handlePubSub = async (_topic: string, message: any) => {\n const messageEntityId = message.summary?.entityId\n const matchedEntity = entities.find((entity) => entity.id === messageEntityId)\n // check if the message is relevant to the current query\n if (!matchedEntity) return\n\n try {\n // get the new data for the entity\n const res = await dispatch(\n enhancedDetailsApi.endpoints[getEntityTypeQueryName(entityType)].initiate(\n {\n projectName: matchedEntity.projectName,\n entityId: matchedEntity.id,\n },\n { forceRefetch: true },\n ),\n )\n\n // check the res\n if (res.status !== 'fulfilled') {\n console.error(res?.error || 'No entity found')\n return\n }\n\n const updatedEntity = res.data\n\n if (!updatedEntity) {\n console.error('No entity found')\n return\n }\n\n updateCachedData((draft) => {\n // find the entity in the cache\n const entityIndex = draft.findIndex((entity: any) => entity.id === updatedEntity.id)\n\n if (entityIndex === -1) {\n console.error('Entity not found in cache')\n return\n }\n\n // update the entity in the cache\n draft[entityIndex] = updatedEntity\n })\n } catch (error) {\n console.error('Entity task realtime update failed', error)\n return\n }\n }\n\n const topic = `entity.${entityType}`\n // sub to websocket topic\n token = PubSub.subscribe(topic, handlePubSub)\n } catch {\n // no-op in case `cacheEntryRemoved` resolves before `cacheDataLoaded`,\n // in which case `cacheDataLoaded` will throw\n }\n // cacheEntryRemoved will resolve when the cache subscription is no longer active\n await cacheEntryRemoved\n // perform cleanup steps once the `cacheEntryRemoved` promise resolves\n PubSub.unsubscribe(token)\n if (unsubscribeThumbnails) {\n unsubscribeThumbnails()\n }\n },\n providesTags: (_res, _error, { entities, entityType }) => [\n ...entities.map(({ id }: { id: string }) => ({ id, type: 'entities' })),\n { type: 'entities', id: entityType.toUpperCase() },\n { type: 'entities', id: 'LIST' },\n ],\n }),\n }),\n})\n\nexport const { useGetEntitiesDetailsPanelQuery, useLazyGetEntitiesDetailsPanelQuery } =\n detailsPanelQueries2\nexport { detailsPanelQueries2 as detailsPanelQueries }\n"],"names":["enhancedDetailsApi","gqlApi","response","_meta","args","projectName","entity","transformDetailsPanelQueriesData","getEntityTypeQueryName","entityType","detailsPanelQueries2","build","entities","dispatch","detailsPanelEntityTypes","promises","res","e","updateCachedData","cacheDataLoaded","cacheEntryRemoved","token","unsubscribeThumbnails","subscribeToThumbnailUpdates","messages","matchedMessages","m","draft","message","entityIndex","handlePubSub","_topic","messageEntityId","matchedEntity","updatedEntity","error","topic","PubSub","_res","_error","id","useGetEntitiesDetailsPanelQuery","useLazyGetEntitiesDetailsPanelQuery"],"mappings":"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"}
1
+ {"version":3,"file":"getEntityPanel.es.js","sources":["../../../../../../src/api/queries/entities/getEntityPanel.ts"],"sourcesContent":["import {\n gqlApi,\n GetDetailsPanelFolderQuery,\n GetDetailsPanelRepresentationQuery,\n GetDetailsPanelTaskQuery,\n GetDetailsPanelVersionQuery,\n} from '@shared/api/generated'\nimport { PubSub, subscribeToThumbnailUpdates, ThumbnailUpdateMessage } from '@shared/util'\nimport { FetchBaseQueryError } from '@reduxjs/toolkit/query'\nimport {\n detailsPanelEntityTypes,\n transformDetailsPanelQueriesData,\n} from './transformDetailsPanelData'\nimport type { DetailsPanelEntityData, DetailsPanelEntityType } from './transformDetailsPanelData'\n\nimport { DefinitionsFromApi, OverrideResultType, TagTypesFromApi } from '@reduxjs/toolkit/query'\ntype Definitions = DefinitionsFromApi<typeof gqlApi>\ntype TagTypes = TagTypesFromApi<typeof gqlApi>\n// update the definitions to include the new types\ntype UpdatedDefinitions = Omit<\n Definitions,\n | 'GetDetailsPanelFolder'\n | 'GetDetailsPanelTask'\n | 'GetDetailsPanelVersion'\n | 'GetDetailsPanelRepresentation'\n> & {\n GetDetailsPanelFolder: OverrideResultType<\n Definitions['GetDetailsPanelFolder'],\n DetailsPanelEntityData | null\n >\n GetDetailsPanelTask: OverrideResultType<\n Definitions['GetDetailsPanelTask'],\n DetailsPanelEntityData | null\n >\n GetDetailsPanelVersion: OverrideResultType<\n Definitions['GetDetailsPanelVersion'],\n DetailsPanelEntityData | null\n >\n GetDetailsPanelRepresentation: OverrideResultType<\n Definitions['GetDetailsPanelRepresentation'],\n DetailsPanelEntityData | null\n >\n}\n\nconst enhancedDetailsApi = gqlApi.enhanceEndpoints<TagTypes, UpdatedDefinitions>({\n endpoints: {\n GetDetailsPanelFolder: {\n transformResponse: (response: GetDetailsPanelFolderQuery, _meta, args) => {\n const { projectName } = args\n const entity = response?.project?.folder\n if (!entity) return null\n return transformDetailsPanelQueriesData({\n projectName,\n entity,\n entityType: 'folder',\n })\n },\n },\n GetDetailsPanelTask: {\n transformResponse: (response: GetDetailsPanelTaskQuery, _meta, args) => {\n const { projectName } = args\n const entity = response?.project?.task\n if (!entity) return null\n return transformDetailsPanelQueriesData({\n projectName,\n entity,\n entityType: 'task',\n })\n },\n },\n GetDetailsPanelVersion: {\n transformResponse: (response: GetDetailsPanelVersionQuery, _meta, args) => {\n const { projectName } = args\n const entity = response?.project?.version\n if (!entity) return null\n return transformDetailsPanelQueriesData({\n projectName,\n entity,\n entityType: 'version',\n })\n },\n },\n GetDetailsPanelRepresentation: {\n transformResponse: (response: GetDetailsPanelRepresentationQuery, _meta, args) => {\n const { projectName } = args\n const entity = response?.project?.representation\n if (!entity) return null\n return transformDetailsPanelQueriesData({\n projectName,\n entity,\n entityType: 'representation',\n })\n },\n },\n },\n})\n\ntype GetEntitiesDetailsPanelArgs = {\n entities: { id: string; projectName: string }[]\n entityType: DetailsPanelEntityType\n}\n\ntype QueryNameType =\n | 'GetDetailsPanelTask'\n | 'GetDetailsPanelVersion'\n | 'GetDetailsPanelFolder'\n | 'GetDetailsPanelRepresentation'\n\nconst getEntityTypeQueryName = (entityType: DetailsPanelEntityType): QueryNameType => {\n switch (entityType) {\n case 'task':\n return 'GetDetailsPanelTask'\n\n case 'version':\n return 'GetDetailsPanelVersion'\n\n case 'folder':\n return 'GetDetailsPanelFolder'\n\n case 'representation':\n return 'GetDetailsPanelRepresentation'\n }\n}\n\nconst detailsPanelQueries2 = enhancedDetailsApi.injectEndpoints({\n endpoints: (build) => ({\n getEntitiesDetailsPanel: build.query<DetailsPanelEntityData[], GetEntitiesDetailsPanelArgs>({\n async queryFn({ entities = [], entityType }, { dispatch }) {\n if (!detailsPanelEntityTypes.includes(entityType)) {\n return {\n error: {\n status: 'CUSTOM_ERROR',\n error: 'Entity type not supported',\n } as FetchBaseQueryError,\n }\n }\n\n try {\n const promises = entities.map((entity) => {\n return dispatch(\n enhancedDetailsApi.endpoints[getEntityTypeQueryName(entityType)].initiate(\n {\n projectName: entity.projectName,\n entityId: entity.id,\n },\n { forceRefetch: true },\n ),\n )\n })\n\n const res = await Promise.all(promises)\n\n const entitiesData = res\n .filter((res) => !!res.data)\n .map((res) => res.data) as DetailsPanelEntityData[]\n\n return { data: entitiesData }\n } catch (e: any) {\n console.error(e)\n return { error: { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError }\n }\n },\n async onCacheEntryAdded(\n { entities, entityType },\n { updateCachedData, cacheDataLoaded, cacheEntryRemoved, dispatch },\n ) {\n let token\n let unsubscribeThumbnails: (() => void) | undefined\n try {\n // wait for the initial query to resolve before proceeding\n await cacheDataLoaded\n\n unsubscribeThumbnails = subscribeToThumbnailUpdates(\n (messages: ThumbnailUpdateMessage[]) => {\n const matchedMessages = messages.filter((m) =>\n entities.some((e) => e.id === m.summary.entityId && e.projectName === m.project),\n )\n if (matchedMessages.length === 0) return\n\n updateCachedData((draft) => {\n matchedMessages.forEach((message) => {\n const entityIndex = draft.findIndex((e: any) => e.id === message.summary.entityId)\n if (entityIndex !== -1 && draft[entityIndex] && message.summary.thumbnailHash) {\n draft[entityIndex].thumbnailHash = message.summary.thumbnailHash\n }\n })\n })\n },\n [entityType],\n )\n\n const handlePubSub = async (_topic: string, message: any) => {\n const messageEntityId = message.summary?.entityId\n const matchedEntity = entities.find((entity) => entity.id === messageEntityId)\n // check if the message is relevant to the current query\n if (!matchedEntity) return\n\n try {\n // get the new data for the entity\n const res = await dispatch(\n enhancedDetailsApi.endpoints[getEntityTypeQueryName(entityType)].initiate(\n {\n projectName: matchedEntity.projectName,\n entityId: matchedEntity.id,\n },\n { forceRefetch: true },\n ),\n )\n\n // check the res\n if (res.status !== 'fulfilled') {\n console.error(res?.error || 'No entity found')\n return\n }\n\n const updatedEntity = res.data\n\n if (!updatedEntity) {\n console.error('No entity found')\n return\n }\n\n updateCachedData((draft) => {\n // find the entity in the cache\n const entityIndex = draft.findIndex((entity: any) => entity.id === updatedEntity.id)\n\n if (entityIndex === -1) {\n console.error('Entity not found in cache')\n return\n }\n\n // update the entity in the cache\n draft[entityIndex] = updatedEntity\n })\n } catch (error) {\n console.error('Entity task realtime update failed', error)\n return\n }\n }\n\n const topic = `entity.${entityType}`\n // sub to websocket topic\n token = PubSub.subscribe(topic, handlePubSub)\n } catch {\n // no-op in case `cacheEntryRemoved` resolves before `cacheDataLoaded`,\n // in which case `cacheDataLoaded` will throw\n }\n // cacheEntryRemoved will resolve when the cache subscription is no longer active\n await cacheEntryRemoved\n // perform cleanup steps once the `cacheEntryRemoved` promise resolves\n PubSub.unsubscribe(token)\n if (unsubscribeThumbnails) {\n unsubscribeThumbnails()\n }\n },\n providesTags: (_res, _error, { entities, entityType }) => [\n ...entities.map(({ id }: { id: string }) => ({ id, type: 'entities' })),\n { type: 'entities', id: entityType.toUpperCase() },\n { type: 'entities', id: 'LIST' },\n ],\n }),\n }),\n})\n\nexport const { useGetEntitiesDetailsPanelQuery, useLazyGetEntitiesDetailsPanelQuery } =\n detailsPanelQueries2\nexport { detailsPanelQueries2 as detailsPanelQueries }\n"],"names":["enhancedDetailsApi","gqlApi","response","_meta","args","projectName","entity","transformDetailsPanelQueriesData","getEntityTypeQueryName","entityType","detailsPanelQueries2","build","entities","dispatch","detailsPanelEntityTypes","promises","res","e","updateCachedData","cacheDataLoaded","cacheEntryRemoved","token","unsubscribeThumbnails","subscribeToThumbnailUpdates","messages","matchedMessages","m","draft","message","entityIndex","handlePubSub","_topic","messageEntityId","matchedEntity","updatedEntity","error","topic","PubSub","_res","_error","id","useGetEntitiesDetailsPanelQuery","useLazyGetEntitiesDetailsPanelQuery"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require("../../base/client.cjs.js");const R=require("../../generated/graphql.cjs.js");require("../../generated/graphqlLinks.cjs.js");require("../../generated/access.cjs.js");require("../../generated/actions.cjs.js");require("../../generated/activityFeed.cjs.js");require("../../generated/addons.cjs.js");require("../../generated/anatomy.cjs.js");require("../../generated/attributes.cjs.js");require("../../generated/authentication.cjs.js");require("../../generated/bundles.cjs.js");require("../../generated/configuration.cjs.js");require("../../generated/dataImport.cjs.js");require("../../generated/desktop.cjs.js");const C=require("../../generated/entityLists.cjs.js");require("../../generated/events.cjs.js");require("../../generated/files.cjs.js");require("../../generated/folders.cjs.js");require("../../generated/inbox.cjs.js");require("../../generated/links.cjs.js");require("../../generated/market.cjs.js");require("../../generated/onboarding.cjs.js");require("../../generated/operations.cjs.js");require("../../generated/products.cjs.js");require("../../generated/projectDashboard.cjs.js");require("../../generated/projects.cjs.js");require("../../generated/projectFolders.cjs.js");require("../../generated/reviewables.cjs.js");require("../../generated/services.cjs.js");require("../../generated/system.cjs.js");require("../../generated/tasks.cjs.js");require("../../generated/teams.cjs.js");require("../../generated/thumbnails.cjs.js");require("../../generated/uRIs.cjs.js");require("../../generated/users.cjs.js");require("../../generated/versions.cjs.js");require("../../generated/workfiles.cjs.js");require("../../generated/ynputCloud.cjs.js");require("../../generated/grouping.cjs.js");require("../../generated/views.cjs.js");const Q=require("../overview/getOverview.cjs.js");require("../overview/updateOverview.cjs.js");require("../versions/getVersionsProducts.cjs.js");require("../links/getEntityLinks.cjs.js");require("lodash");require("react-toastify");require("uuid");const A=require("../../../util/thumbnailWebsocket.cjs.js"),I=require("../../../util/pubsub.cjs.js");function S(s,e,t=5e3){let r=[],i=null;const n=(a,u)=>{r.push({topic:a,message:u}),i||(i=setTimeout(()=>{const o=[...r];r=[],i=null,o.length>0&&s(y=>e(y,o))},t))};return n.clear=()=>{i&&(clearTimeout(i),i=null),r=[]},n}const _=s=>{if(!s)return{};try{return typeof s!="string"?s??{}:JSON.parse(s)}catch(e){return console.warn("Failed to parse entity list data field:",e,s),{}}},T=1e4,b=100,E=R.api.enhanceEndpoints({endpoints:{GetLists:{transformResponse:s=>({lists:s.project.entityLists.edges.map(e=>({...e.node,data:_(e.node.data),attrib:_(e.node.allAttrib)})),pageInfo:s.project.entityLists.pageInfo})},GetListItems:{transformResponse:s=>{const e=s.project.entityLists.edges[0];if(!e)throw new Error("List does not exist, was it deleted?");return{items:s.project.entityLists.edges.flatMap(t=>t.node.items.edges.map(({node:r,...i})=>({...r,...i,attrib:Q.parseAllAttribs(i.allAttrib)}))),pageInfo:e.node.items.pageInfo}}},GetListsItemsForReviewSession:{transformResponse:s=>({lists:s.project.entityLists.edges.map(e=>e.node),pageInfo:s.project.entityLists.pageInfo})}}}),G=E.injectEndpoints({endpoints:s=>({getListsInfinite:s.infiniteQuery({infiniteQueryOptions:{initialPageParam:{cursor:""},getNextPageParam:e=>{const{pageInfo:t}=e;if(!(!t.hasNextPage||!t.endCursor))return{cursor:t.endCursor}}},queryFn:async({queryArg:e,pageParam:t},r)=>{try{const{cursor:i}=t,n={...e,first:T,after:i||void 0},a=await r.dispatch(E.endpoints.GetLists.initiate(n,{forceRefetch:!0}));return a.error?{error:a.error}:{data:a.data||{lists:[],pageInfo:{hasNextPage:!1,endCursor:null,startCursor:null,hasPreviousPage:!1}}}}catch(i){return console.error("Error in getListsInfinite queryFn:",i),{error:{status:"FETCH_ERROR",error:i.message}}}},providesTags:e=>{const t=e?.pages.flatMap(r=>r.lists)||[];return[{type:"entityList",id:"LIST"},...t.flatMap(r=>[{type:"entityList",id:r.id},{type:"entityList",id:r.entityListType},{type:"entityList",id:r.entityListFolderId||"NO_FOLDER"}])]},async onCacheEntryAdded({projectName:e},{cacheDataLoaded:t,cacheEntryRemoved:r,updateCachedData:i}){const n=["entity_list.changed","entity_list.created","entity_list.deleted"];let a=null;try{await t,a=S(i,(u,o)=>{o.forEach(({topic:y,message:v})=>{const l=v.summary,p=l.id;if(!p)return;const h=c=>({projectName:e,tags:[],data:{},allAttrib:"",attrib:{},createdAt:new Date().toISOString(),updatedAt:"",active:!0,access:"",accessLevel:30,...c||{},id:l.id,label:l.label,entityType:l.entity_type,entityListType:l.entity_list_type,count:l.count});if(y==="entity_list.changed"){const c=u.pages.flatMap(q=>q.lists).find(q=>q.id===p);if(!c)return;const m=h(c);Object.assign(c,m)}else if(y==="entity_list.created"){const c=h();u.pages.length!==0&&u.pages[0].lists.unshift(c)}else y==="entity_list.deleted"&&u.pages.forEach(c=>{c.lists=c.lists.filter(m=>m.id!==p)})})},1e4),n.forEach(u=>I.subscribe(u,a))}catch{}await r,n.forEach(u=>I.unsubscribe(u)),a&&typeof a.clear=="function"&&a.clear()}}),getListItemsInfinite:s.infiniteQuery({infiniteQueryOptions:{initialPageParam:{cursor:""},getNextPageParam:e=>{const{pageInfo:t}=e;if(!(!t.hasNextPage||!t.endCursor))return{cursor:t.endCursor}}},queryFn:async({queryArg:e,pageParam:t},r)=>{try{const{sortBy:i,desc:n,...a}=e,{cursor:u}=t,o={...a,first:b,after:u||void 0};o.after=u||void 0,o.first=b,i&&(o.sortBy=i,n&&(o.before=u||void 0,o.after=void 0,o.last=b,o.first=void 0));const y=await r.dispatch(E.endpoints.GetListItems.initiate(o,{forceRefetch:!0}));return y.error?{error:y.error}:{data:y.data||{items:[],pageInfo:{hasNextPage:!1,endCursor:null,startCursor:null,hasPreviousPage:!1}}}}catch(i){return console.error("Error in getListsInfinite queryFn:",i),{error:{status:"FETCH_ERROR",error:i.message}}}},providesTags:(e,t,{listId:r,projectName:i})=>[{type:"entityListItem",id:"LIST"},{type:"entityListItem",id:r},{type:"entityListItem",id:i},...(e?.pages.flatMap(n=>n.items)||[]).filter(n=>!!n).flatMap(n=>[{type:"entityListItem",id:n.id},{type:"entityListItem",id:n.entityId}])],async onCacheEntryAdded(e,{cacheDataLoaded:t,cacheEntryRemoved:r,dispatch:i,updateCachedData:n}){let a,u,o;try{const p=(await t).data.pages.flatMap(d=>d.items)[0]?.entityType;o=A.subscribeToThumbnailUpdates(d=>{n(g=>{g?.pages&&d.forEach(L=>{g.pages.forEach(f=>{(f.items||[]).forEach(P=>{P.entityId===L.summary.entityId&&P.entityType===L.summary.entityType&&L.summary.thumbnailHash&&(P.thumbnailHash=L.summary.thumbnailHash)})})})})});const h="entity_list.changed",c=`entity.${p}`,m=d=>{i(R.api.util.invalidateTags([{type:"entityListItem",id:d}]))},q=(d,g)=>{if(d!==h)return;const f=g.summary.id;f&&m(f)},F=(d,g)=>{if(!d.startsWith(c))return;const f=g.summary.entityId;f&&m(f)};a=I.subscribe(h,q),p&&(u=I.subscribe(c,F))}catch{}await r,I.unsubscribe(a),I.unsubscribe(u),o&&o()}}),getListsItemsForReviewSession:s.infiniteQuery({infiniteQueryOptions:{initialPageParam:{cursor:""},getNextPageParam:e=>{const{pageInfo:t}=e;if(!(!t.hasNextPage||!t.endCursor))return{cursor:t.endCursor}}},queryFn:async({queryArg:e,pageParam:t},r)=>{try{const{cursor:i}=t,n={...e,first:T,after:i||void 0},a=await r.dispatch(E.endpoints.GetListsItemsForReviewSession.initiate(n,{forceRefetch:!0}));return a.error?{error:a.error}:{data:a.data||{lists:[],pageInfo:{hasNextPage:!1,endCursor:null,startCursor:null,hasPreviousPage:!1}}}}catch(i){return console.error("Error in getListsInfinite queryFn:",i),{error:{status:"FETCH_ERROR",error:i.message}}}},providesTags:e=>[{type:"entityList",id:"LIST"},...(e?.pages.flatMap(t=>t.lists)||[]).map(t=>({type:"entityList",id:t.id}))]})})}),w=C.api.enhanceEndpoints({endpoints:{getEntityList:{providesTags:(s,e,{listId:t,projectName:r})=>[{type:"entityList",id:t},{type:"entityList",id:r},...s?[{type:"entityList",id:s.entityListType},{type:"entityList",id:s.entityListFolderId||"NO_FOLDER"}]:[]]}}}),{useGetListsInfiniteInfiniteQuery:O,useGetListItemsInfiniteInfiniteQuery:M,useGetListsItemsForReviewSessionInfiniteQuery:N,useLazyGetListsItemsForReviewSessionQuery:j,useLazyGetListItemsQuery:x}=G,{useGetEntityListQuery:H}=w;exports.LISTS_PER_PAGE=T;exports.LIST_ITEMS_PER_PAGE=b;exports.createBatchedCacheUpdater=S;exports.default=G;exports.getListsApiEnhanced=w;exports.useGetEntityListQuery=H;exports.useGetListItemsInfiniteInfiniteQuery=M;exports.useGetListsInfiniteInfiniteQuery=O;exports.useGetListsItemsForReviewSessionInfiniteQuery=N;exports.useLazyGetListItemsQuery=x;exports.useLazyGetListsItemsForReviewSessionQuery=j;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require("../../base/client.cjs.js");const R=require("../../generated/graphql.cjs.js");require("../../generated/graphqlLinks.cjs.js");require("../../generated/access.cjs.js");require("../../generated/actions.cjs.js");require("../../generated/activityFeed.cjs.js");require("../../generated/addons.cjs.js");require("../../generated/anatomy.cjs.js");require("../../generated/attributes.cjs.js");require("../../generated/authentication.cjs.js");require("../../generated/bundles.cjs.js");require("../../generated/configuration.cjs.js");require("../../generated/dataImport.cjs.js");require("../../generated/desktop.cjs.js");const C=require("../../generated/entityLists.cjs.js");require("../../generated/events.cjs.js");require("../../generated/files.cjs.js");require("../../generated/folders.cjs.js");require("../../generated/inbox.cjs.js");require("../../generated/links.cjs.js");require("../../generated/market.cjs.js");require("../../generated/onboarding.cjs.js");require("../../generated/operations.cjs.js");require("../../generated/products.cjs.js");require("../../generated/projectDashboard.cjs.js");require("../../generated/projects.cjs.js");require("../../generated/projectFolders.cjs.js");require("../../generated/reviewables.cjs.js");require("../../generated/services.cjs.js");require("../../generated/system.cjs.js");require("../../generated/tasks.cjs.js");require("../../generated/teams.cjs.js");require("../../generated/thumbnails.cjs.js");require("../../generated/uRIs.cjs.js");require("../../generated/users.cjs.js");require("../../generated/versions.cjs.js");require("../../generated/workfiles.cjs.js");require("../../generated/ynputCloud.cjs.js");require("../../generated/grouping.cjs.js");require("../../generated/views.cjs.js");const Q=require("../overview/getOverview.cjs.js");require("../overview/updateOverview.cjs.js");require("../versions/getVersionsProducts.cjs.js");require("../links/getEntityLinks.cjs.js");require("lodash");require("react-toastify");require("uuid");const A=require("../../../util/thumbnailWebsocket.cjs.js");require("../actions/getActions.cjs.js");require("../activities/getActivities.cjs.js");require("../activities/updateActivities.cjs.js");require("../activities/updateReaction.cjs.js");require("../activities/getMentions.cjs.js");require("../activities/getCategories.cjs.js");require("../addons/getAddons.cjs.js");require("../addons/updateAddons.cjs.js");require("../attributes/getAttributes.cjs.js");require("../attributes/updateAttributes.cjs.js");require("../authentication/getAuthentication.cjs.js");require("../cloud/cloud.cjs.js");require("../columnStats/metricTargets.cjs.js");require("../config/getConfig.cjs.js");require("../config/updateConfig.cjs.js");require("../entities/getEntity.cjs.js");require("../entities/getEntityPanel.cjs.js");require("../entities/updateEntity.cjs.js");require("./updateLists.cjs.js");require("./getListsAttributes.cjs.js");require("./listItemsColumnStats.cjs.js");require("./updateListsAttributes.cjs.js");require("./listFolders.cjs.js");require("../folders/getFolders.cjs.js");require("../folders/getFolderDeleteInfo.cjs.js");require("../grouping/getGrouping.cjs.js");require("../links/updateLinks.cjs.js");require("../links/getLinks.cjs.js");require("../permissions/getPermissions.cjs.js");require("../products/createProduct.cjs.js");require("../products/getFolderProducts.cjs.js");require("../project/getProject.cjs.js");require("../project/updateProject.cjs.js");require("../projectFolders/projectFolders.cjs.js");require("../review/getReview.cjs.js");require("../review/updateReview.cjs.js");require("../share/share.cjs.js");require("../system/getSystem.cjs.js");require("../tasks/getTasks.cjs.js");require("../tasks/updateTasks.cjs.js");require("../teams/getTeams.cjs.js");require("../userDashboard/getUserDashboard.cjs.js");require("../users/getUsers.cjs.js");require("../users/updateUsers.cjs.js");require("../users/guests.cjs.js");require("../versions/updateVersions.cjs.js");require("../views/getViews.cjs.js");require("../views/updateViews.cjs.js");require("../watchers/getWatchers.cjs.js");require("../uris/getUris.cjs.js");const L=require("../../../util/pubsub.cjs.js");function S(s,t,e=5e3){let i=[],r=null;const n=(u,a)=>{i.push({topic:u,message:a}),r||(r=setTimeout(()=>{const o=[...i];i=[],r=null,o.length>0&&s(y=>t(y,o))},e))};return n.clear=()=>{r&&(clearTimeout(r),r=null),i=[]},n}const _=s=>{if(!s)return{};try{return typeof s!="string"?s??{}:JSON.parse(s)}catch(t){return console.warn("Failed to parse entity list data field:",t,s),{}}},T=1e4,b=100,E=R.api.enhanceEndpoints({endpoints:{GetLists:{transformResponse:s=>({lists:s.project.entityLists.edges.map(t=>({...t.node,data:_(t.node.data),attrib:_(t.node.allAttrib)})),pageInfo:s.project.entityLists.pageInfo})},GetListItems:{transformResponse:s=>{const t=s.project.entityLists.edges[0];if(!t)throw new Error("List does not exist, was it deleted?");return{items:s.project.entityLists.edges.flatMap(e=>e.node.items.edges.map(({node:i,...r})=>({...i,...r,attrib:Q.parseAllAttribs(r.allAttrib)}))),pageInfo:t.node.items.pageInfo}}},GetListsItemsForReviewSession:{transformResponse:s=>({lists:s.project.entityLists.edges.map(t=>t.node),pageInfo:s.project.entityLists.pageInfo})}}}),G=E.injectEndpoints({endpoints:s=>({getListsInfinite:s.infiniteQuery({infiniteQueryOptions:{initialPageParam:{cursor:""},getNextPageParam:t=>{const{pageInfo:e}=t;if(!(!e.hasNextPage||!e.endCursor))return{cursor:e.endCursor}}},queryFn:async({queryArg:t,pageParam:e},i)=>{try{const{cursor:r}=e,n={...t,first:T,after:r||void 0},u=await i.dispatch(E.endpoints.GetLists.initiate(n,{forceRefetch:!0}));return u.error?{error:u.error}:{data:u.data||{lists:[],pageInfo:{hasNextPage:!1,endCursor:null,startCursor:null,hasPreviousPage:!1}}}}catch(r){return console.error("Error in getListsInfinite queryFn:",r),{error:{status:"FETCH_ERROR",error:r.message}}}},providesTags:t=>{const e=t?.pages.flatMap(i=>i.lists)||[];return[{type:"entityList",id:"LIST"},...e.flatMap(i=>[{type:"entityList",id:i.id},{type:"entityList",id:i.entityListType},{type:"entityList",id:i.entityListFolderId||"NO_FOLDER"}])]},async onCacheEntryAdded({projectName:t},{cacheDataLoaded:e,cacheEntryRemoved:i,updateCachedData:r}){const n=["entity_list.changed","entity_list.created","entity_list.deleted"];let u=null;try{await e,u=S(r,(a,o)=>{o.forEach(({topic:y,message:v})=>{const l=v.summary,f=l.id;if(!f)return;const h=c=>({projectName:t,tags:[],data:{},allAttrib:"",attrib:{},createdAt:new Date().toISOString(),updatedAt:"",active:!0,access:"",accessLevel:30,...c||{},id:l.id,label:l.label,entityType:l.entity_type,entityListType:l.entity_list_type,count:l.count});if(y==="entity_list.changed"){const c=a.pages.flatMap(I=>I.lists).find(I=>I.id===f);if(!c)return;const p=h(c);Object.assign(c,p)}else if(y==="entity_list.created"){const c=h();a.pages.length!==0&&a.pages[0].lists.unshift(c)}else y==="entity_list.deleted"&&a.pages.forEach(c=>{c.lists=c.lists.filter(p=>p.id!==f)})})},1e4),n.forEach(a=>L.subscribe(a,u))}catch{}await i,n.forEach(a=>L.unsubscribe(a)),u&&typeof u.clear=="function"&&u.clear()}}),getListItemsInfinite:s.infiniteQuery({infiniteQueryOptions:{initialPageParam:{cursor:""},getNextPageParam:t=>{const{pageInfo:e}=t;if(!(!(e.hasNextPage||e.hasPreviousPage)||!e.endCursor))return{cursor:e.endCursor}}},queryFn:async({queryArg:t,pageParam:e},i)=>{try{const{sortBy:r,desc:n,...u}=t,{cursor:a}=e,o={...u,first:b,after:a||void 0};o.after=a||void 0,o.first=b,r&&(o.sortBy=r,n&&(o.before=a||void 0,o.after=void 0,o.last=b,o.first=void 0));const y=await i.dispatch(E.endpoints.GetListItems.initiate(o,{forceRefetch:!0}));return y.error?{error:y.error}:{data:y.data||{items:[],pageInfo:{hasNextPage:!1,endCursor:null,startCursor:null,hasPreviousPage:!1}}}}catch(r){return console.error("Error in getListsInfinite queryFn:",r),{error:{status:"FETCH_ERROR",error:r.message}}}},providesTags:(t,e,{listId:i,projectName:r})=>[{type:"entityListItem",id:"LIST"},{type:"entityListItem",id:i},{type:"entityListItem",id:r},...(t?.pages.flatMap(n=>n.items)||[]).filter(n=>!!n).flatMap(n=>[{type:"entityListItem",id:n.id},{type:"entityListItem",id:n.entityId}])],async onCacheEntryAdded(t,{cacheDataLoaded:e,cacheEntryRemoved:i,dispatch:r,updateCachedData:n}){let u,a,o;try{const f=(await e).data.pages.flatMap(d=>d.items)[0]?.entityType;o=A.subscribeToThumbnailUpdates(d=>{n(m=>{m?.pages&&d.forEach(g=>{m.pages.forEach(q=>{(q.items||[]).forEach(P=>{P.entityId===g.summary.entityId&&P.entityType===g.summary.entityType&&g.summary.thumbnailHash&&(P.thumbnailHash=g.summary.thumbnailHash)})})})})});const h="entity_list.changed",c=`entity.${f}`,p=d=>{r(R.api.util.invalidateTags([{type:"entityListItem",id:d}]))},I=(d,m)=>{if(d!==h)return;const q=m.summary.id;q&&p(q)},F=(d,m)=>{if(!d.startsWith(c))return;const q=m.summary.entityId;q&&p(q)};u=L.subscribe(h,I),f&&(a=L.subscribe(c,F))}catch{}await i,L.unsubscribe(u),L.unsubscribe(a),o&&o()}}),getListsItemsForReviewSession:s.infiniteQuery({infiniteQueryOptions:{initialPageParam:{cursor:""},getNextPageParam:t=>{const{pageInfo:e}=t;if(!(!e.hasNextPage||!e.endCursor))return{cursor:e.endCursor}}},queryFn:async({queryArg:t,pageParam:e},i)=>{try{const{cursor:r}=e,n={...t,first:T,after:r||void 0},u=await i.dispatch(E.endpoints.GetListsItemsForReviewSession.initiate(n,{forceRefetch:!0}));return u.error?{error:u.error}:{data:u.data||{lists:[],pageInfo:{hasNextPage:!1,endCursor:null,startCursor:null,hasPreviousPage:!1}}}}catch(r){return console.error("Error in getListsInfinite queryFn:",r),{error:{status:"FETCH_ERROR",error:r.message}}}},providesTags:t=>[{type:"entityList",id:"LIST"},...(t?.pages.flatMap(e=>e.lists)||[]).map(e=>({type:"entityList",id:e.id}))]})})}),w=C.api.enhanceEndpoints({endpoints:{getEntityList:{providesTags:(s,t,{listId:e,projectName:i})=>[{type:"entityList",id:e},{type:"entityList",id:i},...s?[{type:"entityList",id:s.entityListType},{type:"entityList",id:s.entityListFolderId||"NO_FOLDER"}]:[]]}}}),{useGetListsInfiniteInfiniteQuery:M,useGetListItemsInfiniteInfiniteQuery:O,useGetListsItemsForReviewSessionInfiniteQuery:N,useLazyGetListsItemsForReviewSessionQuery:j,useLazyGetListItemsQuery:x}=G,{useGetEntityListQuery:H}=w;exports.LISTS_PER_PAGE=T;exports.LIST_ITEMS_PER_PAGE=b;exports.createBatchedCacheUpdater=S;exports.default=G;exports.getListsApiEnhanced=w;exports.useGetEntityListQuery=H;exports.useGetListItemsInfiniteInfiniteQuery=O;exports.useGetListsInfiniteInfiniteQuery=M;exports.useGetListsItemsForReviewSessionInfiniteQuery=N;exports.useLazyGetListItemsQuery=x;exports.useLazyGetListsItemsForReviewSessionQuery=j;
2
2
  //# sourceMappingURL=getLists.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getLists.cjs.js","sources":["../../../../../../src/api/queries/entityLists/getLists.ts"],"sourcesContent":["import { entityListsApi, gqlApi } from '@shared/api/generated'\nimport {\n FetchBaseQueryError,\n DefinitionsFromApi,\n OverrideResultType,\n TagTypesFromApi,\n} from '@reduxjs/toolkit/query'\nimport type {\n EntityList,\n GetListItemsQuery,\n GetListItemsQueryVariables,\n GetListsItemsForReviewSessionQuery,\n GetListsItemsForReviewSessionResult,\n GetListsQuery,\n GetListsQueryVariables,\n} from '@shared/api'\nimport { parseAllAttribs } from '../overview'\nimport { PubSub, subscribeToThumbnailUpdates, ThumbnailUpdateMessage } from '@shared/util'\nimport {\n GetListItemsResult,\n GetListsResult,\n ListItemMessage,\n ListItemsPageParam,\n ListsPageParam,\n} from './types'\n\n// Helper function to batch pub/sub messages to avoid constant cache updates\nexport function createBatchedCacheUpdater<TMessage, TDraft>(\n updateCachedData: (updater: (draft: TDraft) => void) => void,\n applyBatch: (draft: TDraft, batch: { topic: string; message: TMessage }[]) => void,\n delay = 5000,\n) {\n let queue: { topic: string; message: TMessage }[] = []\n let timeout: ReturnType<typeof setTimeout> | null = null\n\n const handler = (topic: string, message: TMessage) => {\n queue.push({ topic, message })\n if (!timeout) {\n timeout = setTimeout(() => {\n const batch = [...queue]\n queue = []\n timeout = null\n if (batch.length > 0) {\n updateCachedData((draft) => applyBatch(draft, batch))\n }\n }, delay)\n }\n }\n\n handler.clear = () => {\n if (timeout) {\n clearTimeout(timeout)\n timeout = null\n }\n queue = []\n }\n\n return handler\n}\n\n// Helper function to safely parse entity list data field from JSON string to object\nconst parseJSON = (data: string | null | undefined): Record<string, any> => {\n if (!data) return {}\n\n try {\n if (typeof data !== 'string') {\n return (data as unknown as Record<string, any>) ?? {}\n }\n return JSON.parse(data)\n } catch (e) {\n console.warn('Failed to parse entity list data field:', e, data)\n return {}\n }\n}\n\n// GRAPHQL API (getLists and getListItems)\n// Define the LISTS_PER_PAGE constant for pagination\nexport const LISTS_PER_PAGE = 10000\nexport const LIST_ITEMS_PER_PAGE = 100\n\ntype Definitions = DefinitionsFromApi<typeof gqlApi>\ntype TagTypes = TagTypesFromApi<typeof gqlApi>\n// update the definitions to include the new types\ntype UpdatedDefinitions = Omit<Definitions, 'GetLists' | 'GetListItems'> & {\n GetLists: OverrideResultType<Definitions['GetLists'], GetListsResult>\n GetListItems: OverrideResultType<Definitions['GetListItems'], GetListItemsResult>\n GetListsItemsForReviewSession: OverrideResultType<\n Definitions['GetListsItemsForReviewSession'],\n GetListsItemsForReviewSessionResult\n >\n}\n\nconst getListsGqlApiEnhanced = gqlApi.enhanceEndpoints<TagTypes, UpdatedDefinitions>({\n endpoints: {\n GetLists: {\n transformResponse: (response: GetListsQuery): GetListsResult => {\n return {\n // @ts-expect-error - entityType is string\n lists: response.project.entityLists.edges.map((edge) => ({\n ...edge.node,\n data: parseJSON(edge.node.data),\n attrib: parseJSON(edge.node.allAttrib),\n })),\n pageInfo: response.project.entityLists.pageInfo,\n }\n },\n },\n GetListItems: {\n transformResponse: (response: GetListItemsQuery): GetListItemsResult => {\n const firstEdge = response.project.entityLists.edges[0]\n if (!firstEdge) {\n throw new Error('List does not exist, was it deleted?')\n }\n return {\n items: response.project.entityLists.edges.flatMap((listEdge) =>\n listEdge.node.items.edges.map(({ node, ...edge }) => {\n return {\n ...node,\n ...edge,\n attrib: parseAllAttribs(edge.allAttrib),\n } as GetListItemsResult['items'][number]\n }),\n ),\n pageInfo: firstEdge.node.items.pageInfo,\n }\n },\n },\n GetListsItemsForReviewSession: {\n transformResponse: (\n response: GetListsItemsForReviewSessionQuery,\n ): GetListsItemsForReviewSessionResult => {\n return {\n lists: response.project.entityLists.edges.map((edge) => edge.node),\n pageInfo: response.project.entityLists.pageInfo,\n }\n },\n },\n },\n})\n\nconst getListsGqlApiInjected = getListsGqlApiEnhanced.injectEndpoints({\n endpoints: (build) => ({\n getListsInfinite: build.infiniteQuery<\n GetListsResult,\n Omit<GetListsQueryVariables, 'first' | 'after' | 'before'>,\n ListsPageParam\n >({\n infiniteQueryOptions: {\n initialPageParam: { cursor: '' },\n getNextPageParam: (lastPage) => {\n const { pageInfo } = lastPage\n if (!pageInfo.hasNextPage || !pageInfo.endCursor) return undefined\n\n return {\n cursor: pageInfo.endCursor,\n }\n },\n },\n queryFn: async ({ queryArg, pageParam }, api) => {\n try {\n const { cursor } = pageParam\n\n // Build the query parameters for GetLists\n const queryParams = {\n ...queryArg,\n first: LISTS_PER_PAGE,\n after: cursor || undefined,\n }\n\n // Call the existing GetLists endpoint\n const result = await api.dispatch(\n getListsGqlApiEnhanced.endpoints.GetLists.initiate(queryParams, { forceRefetch: true }),\n )\n\n if (result.error) {\n // Preserve original error (e.g. 403) so the UI can react accordingly\n return { error: result.error as FetchBaseQueryError }\n }\n\n return {\n data: result.data || {\n lists: [],\n pageInfo: {\n hasNextPage: false,\n endCursor: null,\n startCursor: null,\n hasPreviousPage: false,\n },\n },\n }\n } catch (e: any) {\n console.error('Error in getListsInfinite queryFn:', e)\n return { error: { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError }\n }\n },\n providesTags: (result) => {\n const lists = result?.pages.flatMap((page) => page.lists) || []\n return [\n { type: 'entityList', id: 'LIST' },\n ...lists.flatMap((list) => [\n { type: 'entityList' as const, id: list.id },\n { type: 'entityList' as const, id: list.entityListType },\n { type: 'entityList' as const, id: list.entityListFolderId || 'NO_FOLDER' },\n ]),\n ]\n },\n async onCacheEntryAdded(\n { projectName },\n { cacheDataLoaded, cacheEntryRemoved, updateCachedData },\n ) {\n const topics = ['entity_list.changed', 'entity_list.created', 'entity_list.deleted']\n let handlePubSub: any = null\n try {\n // wait for the initial query to resolve before proceeding\n await cacheDataLoaded\n\n handlePubSub = createBatchedCacheUpdater<ListItemMessage, any>(\n updateCachedData,\n (draft, batch) => {\n batch.forEach(({ topic, message }) => {\n const summary = message.summary\n const id = summary.id\n if (!id) return\n\n const getListFromSummary = (list?: EntityList): EntityList => {\n return {\n // defaults\n projectName: projectName,\n tags: [],\n data: {},\n allAttrib: '',\n attrib: {},\n createdAt: new Date().toISOString(),\n updatedAt: '',\n active: true,\n access: '',\n accessLevel: 30, // default admin\n // existing data\n ...(list || {}),\n // new data\n id: summary.id as string,\n label: summary.label,\n entityType: summary.entity_type,\n entityListType: summary.entity_list_type,\n count: summary.count,\n }\n }\n\n if (topic === 'entity_list.changed') {\n // update the data of existing list in cache\n const list = draft.pages\n .flatMap((page: any) => page.lists)\n .find((l: any) => l.id === id)\n if (!list) return\n const newList = getListFromSummary(list)\n\n Object.assign(list, newList)\n } else if (topic === 'entity_list.created') {\n // Add new list to the cache using basic summary\n const newList = getListFromSummary()\n // Insert the new list at the beginning of the first page\n if (draft.pages.length !== 0) {\n draft.pages[0].lists.unshift(newList)\n }\n } else if (topic === 'entity_list.deleted') {\n // delete the list from the cache\n draft.pages.forEach((page: any) => {\n page.lists = page.lists.filter((l: any) => l.id !== id)\n })\n }\n })\n },\n 10000, // 10 seconds debounce/batch window\n )\n\n topics.forEach((topic) => PubSub.subscribe(topic, handlePubSub))\n } catch {\n // no-op in case `cacheEntryRemoved` resolves before `cacheDataLoaded`,\n // in which case `cacheDataLoaded` will throw\n }\n // cacheEntryRemoved will resolve when the cache subscription is no longer active\n await cacheEntryRemoved\n // perform cleanup steps once the `cacheEntryRemoved` promise resolves\n topics.forEach((t) => PubSub.unsubscribe(t))\n if (handlePubSub && typeof handlePubSub.clear === 'function') handlePubSub.clear()\n },\n }),\n getListItemsInfinite: build.infiniteQuery<\n GetListItemsResult,\n Omit<GetListItemsQueryVariables, 'first' | 'after' | 'before' | 'last'> & { desc?: boolean },\n ListItemsPageParam\n >({\n infiniteQueryOptions: {\n initialPageParam: { cursor: '' },\n getNextPageParam: (lastPage) => {\n const { pageInfo } = lastPage\n if (!pageInfo.hasNextPage || !pageInfo.endCursor) return undefined\n\n return {\n cursor: pageInfo.endCursor,\n }\n },\n },\n queryFn: async ({ queryArg, pageParam }, api) => {\n try {\n const { sortBy, desc, ...rest } = queryArg\n const { cursor } = pageParam\n\n // Build the query parameters for GetLists\n const queryParams: GetListItemsQueryVariables = {\n ...rest,\n first: LIST_ITEMS_PER_PAGE,\n after: cursor || undefined,\n }\n\n // Add cursor-based pagination\n queryParams.after = cursor || undefined\n queryParams.first = LIST_ITEMS_PER_PAGE\n\n if (sortBy) {\n queryParams.sortBy = sortBy\n if (desc) {\n queryParams.before = cursor || undefined\n queryParams.after = undefined\n queryParams.last = LIST_ITEMS_PER_PAGE\n queryParams.first = undefined\n }\n }\n\n // Call the existing GetLists endpoint\n const result = await api.dispatch(\n getListsGqlApiEnhanced.endpoints.GetListItems.initiate(queryParams, {\n forceRefetch: true,\n }),\n )\n\n if (result.error) {\n return { error: result.error as FetchBaseQueryError }\n }\n\n return {\n data: result.data || {\n items: [],\n pageInfo: {\n hasNextPage: false,\n endCursor: null,\n startCursor: null,\n hasPreviousPage: false,\n },\n },\n }\n } catch (e: any) {\n console.error('Error in getListsInfinite queryFn:', e)\n return { error: { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError }\n }\n },\n providesTags: (result, _e, { listId, projectName }) => [\n { type: 'entityListItem', id: 'LIST' },\n { type: 'entityListItem', id: listId },\n { type: 'entityListItem', id: projectName },\n ...(result?.pages.flatMap((page) => page.items) || [])\n .filter((i) => !!i)\n .flatMap((item) => [\n {\n type: 'entityListItem',\n id: item.id,\n },\n {\n type: 'entityListItem',\n id: item.entityId,\n },\n ]),\n ],\n async onCacheEntryAdded(\n _args,\n { cacheDataLoaded, cacheEntryRemoved, dispatch, updateCachedData },\n ) {\n let token, token2\n let unsubscribeThumbnails: (() => void) | undefined\n try {\n // wait for the initial query to resolve before proceeding\n const cache = await cacheDataLoaded\n const pages = cache.data.pages\n const items = pages.flatMap((page) => page.items)\n // get entityType of first item\n const entityType = items[0]?.entityType\n\n unsubscribeThumbnails = subscribeToThumbnailUpdates(\n (messages: ThumbnailUpdateMessage[]) => {\n updateCachedData((draft: any) => {\n if (!draft?.pages) return\n messages.forEach((message) => {\n draft.pages.forEach((page: any) => {\n const pageItems = page.items || []\n pageItems.forEach((item: any) => {\n if (\n item.entityId === message.summary.entityId &&\n item.entityType === message.summary.entityType &&\n message.summary.thumbnailHash\n ) {\n item.thumbnailHash = message.summary.thumbnailHash\n }\n })\n })\n })\n })\n },\n )\n\n const listTopic = `entity_list.changed`\n const entityTypeTopic = `entity.${entityType}`\n\n const invalidateListItems = (id: string) => {\n dispatch(gqlApi.util.invalidateTags([{ type: 'entityListItem', id: id }]))\n }\n\n const handleListMessage = (topic: string, message: ListItemMessage) => {\n if (topic !== listTopic) return\n const summary = message.summary\n const id = summary.id\n if (!id) return\n invalidateListItems(id)\n }\n\n const handleEntityMessage = (topic: string, message: ListItemMessage) => {\n if (!topic.startsWith(entityTypeTopic)) return\n const summary = message.summary\n const id = summary.entityId\n // check for id\n if (!id) return\n invalidateListItems(id)\n }\n\n // sub to websocket topic\n token = PubSub.subscribe(listTopic, handleListMessage)\n if (entityType) token2 = PubSub.subscribe(entityTypeTopic, handleEntityMessage)\n } catch {\n // no-op in case `cacheEntryRemoved` resolves before `cacheDataLoaded`,\n // in which case `cacheDataLoaded` will throw\n }\n // cacheEntryRemoved will resolve when the cache subscription is no longer active\n await cacheEntryRemoved\n // perform cleanup steps once the `cacheEntryRemoved` promise resolves\n PubSub.unsubscribe(token)\n PubSub.unsubscribe(token2)\n if (unsubscribeThumbnails) {\n unsubscribeThumbnails()\n }\n },\n }),\n getListsItemsForReviewSession: build.infiniteQuery<\n GetListsItemsForReviewSessionResult,\n Omit<GetListsQueryVariables, 'first' | 'after' | 'before' | 'filter'>,\n ListsPageParam\n >({\n infiniteQueryOptions: {\n initialPageParam: { cursor: '' },\n getNextPageParam: (lastPage) => {\n const { pageInfo } = lastPage\n if (!pageInfo.hasNextPage || !pageInfo.endCursor) return undefined\n\n return {\n cursor: pageInfo.endCursor,\n }\n },\n },\n queryFn: async ({ queryArg, pageParam }, api) => {\n try {\n const { cursor } = pageParam\n\n // Build the query parameters for GetLists\n const queryParams = {\n ...queryArg,\n first: LISTS_PER_PAGE,\n after: cursor || undefined,\n }\n\n // Call the existing GetLists endpoint\n const result = await api.dispatch(\n getListsGqlApiEnhanced.endpoints.GetListsItemsForReviewSession.initiate(queryParams, {\n forceRefetch: true,\n }),\n )\n\n if (result.error) {\n return { error: result.error as FetchBaseQueryError }\n }\n\n return {\n data: result.data || {\n lists: [],\n pageInfo: {\n hasNextPage: false,\n endCursor: null,\n startCursor: null,\n hasPreviousPage: false,\n },\n },\n }\n } catch (e: any) {\n console.error('Error in getListsInfinite queryFn:', e)\n return { error: { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError }\n }\n },\n providesTags: (result) => [\n { type: 'entityList', id: 'LIST' },\n ...(result?.pages.flatMap((page) => page.lists) || []).map((list) => ({\n type: 'entityList' as const,\n id: list.id,\n })),\n ],\n }),\n }),\n})\n\nexport const getListsApiEnhanced = entityListsApi.enhanceEndpoints({\n endpoints: {\n getEntityList: {\n providesTags: (result, _e, { listId, projectName }) => [\n { type: 'entityList', id: listId },\n { type: 'entityList', id: projectName },\n ...(result\n ? [\n { type: 'entityList', id: result.entityListType },\n {\n type: 'entityList',\n id: result.entityListFolderId || 'NO_FOLDER',\n },\n ]\n : []),\n ],\n },\n },\n})\n\nexport default getListsGqlApiInjected\n\nexport const {\n useGetListsInfiniteInfiniteQuery,\n useGetListItemsInfiniteInfiniteQuery,\n useGetListsItemsForReviewSessionInfiniteQuery,\n useLazyGetListsItemsForReviewSessionQuery,\n useLazyGetListItemsQuery,\n} = getListsGqlApiInjected\n\nexport const { useGetEntityListQuery } = getListsApiEnhanced\n"],"names":["createBatchedCacheUpdater","updateCachedData","applyBatch","delay","queue","timeout","handler","topic","message","batch","draft","parseJSON","data","LISTS_PER_PAGE","LIST_ITEMS_PER_PAGE","getListsGqlApiEnhanced","gqlApi","response","edge","firstEdge","listEdge","node","parseAllAttribs","getListsGqlApiInjected","build","lastPage","pageInfo","queryArg","pageParam","api","cursor","queryParams","result","e","lists","page","list","projectName","cacheDataLoaded","cacheEntryRemoved","topics","handlePubSub","summary","id","getListFromSummary","l","newList","PubSub","t","sortBy","desc","rest","_e","listId","i","item","_args","dispatch","token","token2","unsubscribeThumbnails","entityType","subscribeToThumbnailUpdates","messages","listTopic","entityTypeTopic","invalidateListItems","handleListMessage","handleEntityMessage","getListsApiEnhanced","entityListsApi","useGetListsInfiniteInfiniteQuery","useGetListItemsInfiniteInfiniteQuery","useGetListsItemsForReviewSessionInfiniteQuery","useLazyGetListsItemsForReviewSessionQuery","useLazyGetListItemsQuery","useGetEntityListQuery"],"mappings":"mpEA2BO,SAASA,EACdC,EACAC,EACAC,EAAQ,IACR,CACA,IAAIC,EAAgD,CAAA,EAChDC,EAAgD,KAEpD,MAAMC,EAAU,CAACC,EAAeC,IAAsB,CACpDJ,EAAM,KAAK,CAAE,MAAAG,EAAO,QAAAC,CAAA,CAAS,EACxBH,IACHA,EAAU,WAAW,IAAM,CACzB,MAAMI,EAAQ,CAAC,GAAGL,CAAK,EACvBA,EAAQ,CAAA,EACRC,EAAU,KACNI,EAAM,OAAS,GACjBR,EAAkBS,GAAUR,EAAWQ,EAAOD,CAAK,CAAC,CAExD,EAAGN,CAAK,EAEZ,EAEA,OAAAG,EAAQ,MAAQ,IAAM,CAChBD,IACF,aAAaA,CAAO,EACpBA,EAAU,MAEZD,EAAQ,CAAA,CACV,EAEOE,CACT,CAGA,MAAMK,EAAaC,GAAyD,CAC1E,GAAI,CAACA,EAAM,MAAO,CAAA,EAElB,GAAI,CACF,OAAI,OAAOA,GAAS,SACVA,GAA2C,CAAA,EAE9C,KAAK,MAAMA,CAAI,CACxB,OAAS,EAAG,CACV,eAAQ,KAAK,0CAA2C,EAAGA,CAAI,EACxD,CAAA,CACT,CACF,EAIaC,EAAiB,IACjBC,EAAsB,IAc7BC,EAAyBC,EAAAA,IAAO,iBAA+C,CACnF,UAAW,CACT,SAAU,CACR,kBAAoBC,IACX,CAEL,MAAOA,EAAS,QAAQ,YAAY,MAAM,IAAKC,IAAU,CACvD,GAAGA,EAAK,KACR,KAAMP,EAAUO,EAAK,KAAK,IAAI,EAC9B,OAAQP,EAAUO,EAAK,KAAK,SAAS,CAAA,EACrC,EACF,SAAUD,EAAS,QAAQ,YAAY,QAAA,EAE3C,EAEF,aAAc,CACZ,kBAAoBA,GAAoD,CACtE,MAAME,EAAYF,EAAS,QAAQ,YAAY,MAAM,CAAC,EACtD,GAAI,CAACE,EACH,MAAM,IAAI,MAAM,sCAAsC,EAExD,MAAO,CACL,MAAOF,EAAS,QAAQ,YAAY,MAAM,QAASG,GACjDA,EAAS,KAAK,MAAM,MAAM,IAAI,CAAC,CAAE,KAAAC,EAAM,GAAGH,MACjC,CACL,GAAGG,EACH,GAAGH,EACH,OAAQI,EAAAA,gBAAgBJ,EAAK,SAAS,CAAA,EAEzC,CAAA,EAEH,SAAUC,EAAU,KAAK,MAAM,QAAA,CAEnC,CAAA,EAEF,8BAA+B,CAC7B,kBACEF,IAEO,CACL,MAAOA,EAAS,QAAQ,YAAY,MAAM,IAAKC,GAASA,EAAK,IAAI,EACjE,SAAUD,EAAS,QAAQ,YAAY,QAAA,EAE3C,CACF,CAEJ,CAAC,EAEKM,EAAyBR,EAAuB,gBAAgB,CACpE,UAAYS,IAAW,CACrB,iBAAkBA,EAAM,cAItB,CACA,qBAAsB,CACpB,iBAAkB,CAAE,OAAQ,EAAA,EAC5B,iBAAmBC,GAAa,CAC9B,KAAM,CAAE,SAAAC,GAAaD,EACrB,GAAI,GAACC,EAAS,aAAe,CAACA,EAAS,WAEvC,MAAO,CACL,OAAQA,EAAS,SAAA,CAErB,CAAA,EAEF,QAAS,MAAO,CAAE,SAAAC,EAAU,UAAAC,CAAA,EAAaC,IAAQ,CAC/C,GAAI,CACF,KAAM,CAAE,OAAAC,GAAWF,EAGbG,EAAc,CAClB,GAAGJ,EACH,MAAOd,EACP,MAAOiB,GAAU,MAAA,EAIbE,EAAS,MAAMH,EAAI,SACvBd,EAAuB,UAAU,SAAS,SAASgB,EAAa,CAAE,aAAc,GAAM,CAAA,EAGxF,OAAIC,EAAO,MAEF,CAAE,MAAOA,EAAO,KAAA,EAGlB,CACL,KAAMA,EAAO,MAAQ,CACnB,MAAO,CAAA,EACP,SAAU,CACR,YAAa,GACb,UAAW,KACX,YAAa,KACb,gBAAiB,EAAA,CACnB,CACF,CAEJ,OAASC,EAAQ,CACf,eAAQ,MAAM,qCAAsCA,CAAC,EAC9C,CAAE,MAAO,CAAE,OAAQ,cAAe,MAAOA,EAAE,QAAQ,CAC5D,CACF,EACA,aAAeD,GAAW,CACxB,MAAME,EAAQF,GAAQ,MAAM,QAASG,GAASA,EAAK,KAAK,GAAK,CAAA,EAC7D,MAAO,CACL,CAAE,KAAM,aAAc,GAAI,MAAA,EAC1B,GAAGD,EAAM,QAASE,GAAS,CACzB,CAAE,KAAM,aAAuB,GAAIA,EAAK,EAAA,EACxC,CAAE,KAAM,aAAuB,GAAIA,EAAK,cAAA,EACxC,CAAE,KAAM,aAAuB,GAAIA,EAAK,oBAAsB,WAAA,CAAY,CAC3E,CAAA,CAEL,EACA,MAAM,kBACJ,CAAE,YAAAC,CAAA,EACF,CAAE,gBAAAC,EAAiB,kBAAAC,EAAmB,iBAAAtC,GACtC,CACA,MAAMuC,EAAS,CAAC,sBAAuB,sBAAuB,qBAAqB,EACnF,IAAIC,EAAoB,KACxB,GAAI,CAEF,MAAMH,EAENG,EAAezC,EACbC,EACA,CAACS,EAAOD,IAAU,CAChBA,EAAM,QAAQ,CAAC,CAAE,MAAAF,EAAO,QAAAC,KAAc,CACpC,MAAMkC,EAAUlC,EAAQ,QAClBmC,EAAKD,EAAQ,GACnB,GAAI,CAACC,EAAI,OAET,MAAMC,EAAsBR,IACnB,CAEL,YAAAC,EACA,KAAM,CAAA,EACN,KAAM,CAAA,EACN,UAAW,GACX,OAAQ,CAAA,EACR,UAAW,IAAI,KAAA,EAAO,YAAA,EACtB,UAAW,GACX,OAAQ,GACR,OAAQ,GACR,YAAa,GAEb,GAAID,GAAQ,CAAA,EAEZ,GAAIM,EAAQ,GACZ,MAAOA,EAAQ,MACf,WAAYA,EAAQ,YACpB,eAAgBA,EAAQ,iBACxB,MAAOA,EAAQ,KAAA,GAInB,GAAInC,IAAU,sBAAuB,CAEnC,MAAM6B,EAAO1B,EAAM,MAChB,QAASyB,GAAcA,EAAK,KAAK,EACjC,KAAMU,GAAWA,EAAE,KAAOF,CAAE,EAC/B,GAAI,CAACP,EAAM,OACX,MAAMU,EAAUF,EAAmBR,CAAI,EAEvC,OAAO,OAAOA,EAAMU,CAAO,CAC7B,SAAWvC,IAAU,sBAAuB,CAE1C,MAAMuC,EAAUF,EAAA,EAEZlC,EAAM,MAAM,SAAW,GACzBA,EAAM,MAAM,CAAC,EAAE,MAAM,QAAQoC,CAAO,CAExC,MAAWvC,IAAU,uBAEnBG,EAAM,MAAM,QAASyB,GAAc,CACjCA,EAAK,MAAQA,EAAK,MAAM,OAAQU,GAAWA,EAAE,KAAOF,CAAE,CACxD,CAAC,CAEL,CAAC,CACH,EACA,GAAA,EAGFH,EAAO,QAASjC,GAAUwC,EAAO,UAAUxC,EAAOkC,CAAY,CAAC,CACjE,MAAQ,CAGR,CAEA,MAAMF,EAENC,EAAO,QAASQ,GAAMD,EAAO,YAAYC,CAAC,CAAC,EACvCP,GAAgB,OAAOA,EAAa,OAAU,cAAyB,MAAA,CAC7E,CAAA,CACD,EACD,qBAAsBjB,EAAM,cAI1B,CACA,qBAAsB,CACpB,iBAAkB,CAAE,OAAQ,EAAA,EAC5B,iBAAmBC,GAAa,CAC9B,KAAM,CAAE,SAAAC,GAAaD,EACrB,GAAI,GAACC,EAAS,aAAe,CAACA,EAAS,WAEvC,MAAO,CACL,OAAQA,EAAS,SAAA,CAErB,CAAA,EAEF,QAAS,MAAO,CAAE,SAAAC,EAAU,UAAAC,CAAA,EAAaC,IAAQ,CAC/C,GAAI,CACF,KAAM,CAAE,OAAAoB,EAAQ,KAAAC,EAAM,GAAGC,GAASxB,EAC5B,CAAE,OAAAG,GAAWF,EAGbG,EAA0C,CAC9C,GAAGoB,EACH,MAAOrC,EACP,MAAOgB,GAAU,MAAA,EAInBC,EAAY,MAAQD,GAAU,OAC9BC,EAAY,MAAQjB,EAEhBmC,IACFlB,EAAY,OAASkB,EACjBC,IACFnB,EAAY,OAASD,GAAU,OAC/BC,EAAY,MAAQ,OACpBA,EAAY,KAAOjB,EACnBiB,EAAY,MAAQ,SAKxB,MAAMC,EAAS,MAAMH,EAAI,SACvBd,EAAuB,UAAU,aAAa,SAASgB,EAAa,CAClE,aAAc,EAAA,CACf,CAAA,EAGH,OAAIC,EAAO,MACF,CAAE,MAAOA,EAAO,KAAA,EAGlB,CACL,KAAMA,EAAO,MAAQ,CACnB,MAAO,CAAA,EACP,SAAU,CACR,YAAa,GACb,UAAW,KACX,YAAa,KACb,gBAAiB,EAAA,CACnB,CACF,CAEJ,OAASC,EAAQ,CACf,eAAQ,MAAM,qCAAsCA,CAAC,EAC9C,CAAE,MAAO,CAAE,OAAQ,cAAe,MAAOA,EAAE,QAAQ,CAC5D,CACF,EACA,aAAc,CAACD,EAAQoB,EAAI,CAAE,OAAAC,EAAQ,YAAAhB,KAAkB,CACrD,CAAE,KAAM,iBAAkB,GAAI,MAAA,EAC9B,CAAE,KAAM,iBAAkB,GAAIgB,CAAA,EAC9B,CAAE,KAAM,iBAAkB,GAAIhB,CAAA,EAC9B,IAAIL,GAAQ,MAAM,QAASG,GAASA,EAAK,KAAK,GAAK,CAAA,GAChD,OAAQmB,GAAM,CAAC,CAACA,CAAC,EACjB,QAASC,GAAS,CACjB,CACE,KAAM,iBACN,GAAIA,EAAK,EAAA,EAEX,CACE,KAAM,iBACN,GAAIA,EAAK,QAAA,CACX,CACD,CAAA,EAEL,MAAM,kBACJC,EACA,CAAE,gBAAAlB,EAAiB,kBAAAC,EAAmB,SAAAkB,EAAU,iBAAAxD,GAChD,CACA,IAAIyD,EAAOC,EACPC,EACJ,GAAI,CAMF,MAAMC,GAJQ,MAAMvB,GACA,KAAK,MACL,QAASH,GAASA,EAAK,KAAK,EAEvB,CAAC,GAAG,WAE7ByB,EAAwBE,EAAAA,4BACrBC,GAAuC,CACtC9D,EAAkBS,GAAe,CAC1BA,GAAO,OACZqD,EAAS,QAASvD,GAAY,CAC5BE,EAAM,MAAM,QAASyB,GAAc,EACfA,EAAK,OAAS,CAAA,GACtB,QAASoB,GAAc,CAE7BA,EAAK,WAAa/C,EAAQ,QAAQ,UAClC+C,EAAK,aAAe/C,EAAQ,QAAQ,YACpCA,EAAQ,QAAQ,gBAEhB+C,EAAK,cAAgB/C,EAAQ,QAAQ,cAEzC,CAAC,CACH,CAAC,CACH,CAAC,CACH,CAAC,CACH,CAAA,EAGF,MAAMwD,EAAY,sBACZC,EAAkB,UAAUJ,CAAU,GAEtCK,EAAuBvB,GAAe,CAC1Cc,EAASzC,EAAAA,IAAO,KAAK,eAAe,CAAC,CAAE,KAAM,iBAAkB,GAAA2B,CAAA,CAAQ,CAAC,CAAC,CAC3E,EAEMwB,EAAoB,CAAC5D,EAAeC,IAA6B,CACrE,GAAID,IAAUyD,EAAW,OAEzB,MAAMrB,EADUnC,EAAQ,QACL,GACdmC,GACLuB,EAAoBvB,CAAE,CACxB,EAEMyB,EAAsB,CAAC7D,EAAeC,IAA6B,CACvE,GAAI,CAACD,EAAM,WAAW0D,CAAe,EAAG,OAExC,MAAMtB,EADUnC,EAAQ,QACL,SAEdmC,GACLuB,EAAoBvB,CAAE,CACxB,EAGAe,EAAQX,EAAO,UAAUiB,EAAWG,CAAiB,EACjDN,IAAYF,EAASZ,EAAO,UAAUkB,EAAiBG,CAAmB,EAChF,MAAQ,CAGR,CAEA,MAAM7B,EAENQ,EAAO,YAAYW,CAAK,EACxBX,EAAO,YAAYY,CAAM,EACrBC,GACFA,EAAA,CAEJ,CAAA,CACD,EACD,8BAA+BpC,EAAM,cAInC,CACA,qBAAsB,CACpB,iBAAkB,CAAE,OAAQ,EAAA,EAC5B,iBAAmBC,GAAa,CAC9B,KAAM,CAAE,SAAAC,GAAaD,EACrB,GAAI,GAACC,EAAS,aAAe,CAACA,EAAS,WAEvC,MAAO,CACL,OAAQA,EAAS,SAAA,CAErB,CAAA,EAEF,QAAS,MAAO,CAAE,SAAAC,EAAU,UAAAC,CAAA,EAAaC,IAAQ,CAC/C,GAAI,CACF,KAAM,CAAE,OAAAC,GAAWF,EAGbG,EAAc,CAClB,GAAGJ,EACH,MAAOd,EACP,MAAOiB,GAAU,MAAA,EAIbE,EAAS,MAAMH,EAAI,SACvBd,EAAuB,UAAU,8BAA8B,SAASgB,EAAa,CACnF,aAAc,EAAA,CACf,CAAA,EAGH,OAAIC,EAAO,MACF,CAAE,MAAOA,EAAO,KAAA,EAGlB,CACL,KAAMA,EAAO,MAAQ,CACnB,MAAO,CAAA,EACP,SAAU,CACR,YAAa,GACb,UAAW,KACX,YAAa,KACb,gBAAiB,EAAA,CACnB,CACF,CAEJ,OAASC,EAAQ,CACf,eAAQ,MAAM,qCAAsCA,CAAC,EAC9C,CAAE,MAAO,CAAE,OAAQ,cAAe,MAAOA,EAAE,QAAQ,CAC5D,CACF,EACA,aAAeD,GAAW,CACxB,CAAE,KAAM,aAAc,GAAI,MAAA,EAC1B,IAAIA,GAAQ,MAAM,QAASG,GAASA,EAAK,KAAK,GAAK,CAAA,GAAI,IAAKC,IAAU,CACpE,KAAM,aACN,GAAIA,EAAK,EAAA,EACT,CAAA,CACJ,CACD,CAAA,EAEL,CAAC,EAEYiC,EAAsBC,EAAAA,IAAe,iBAAiB,CACjE,UAAW,CACT,cAAe,CACb,aAAc,CAACtC,EAAQoB,EAAI,CAAE,OAAAC,EAAQ,YAAAhB,KAAkB,CACrD,CAAE,KAAM,aAAc,GAAIgB,CAAA,EAC1B,CAAE,KAAM,aAAc,GAAIhB,CAAA,EAC1B,GAAIL,EACA,CACE,CAAE,KAAM,aAAc,GAAIA,EAAO,cAAA,EACjC,CACE,KAAM,aACN,GAAIA,EAAO,oBAAsB,WAAA,CACnC,EAEF,CAAA,CAAC,CACP,CACF,CAEJ,CAAC,EAIY,CACX,iCAAAuC,EACA,qCAAAC,EACA,8CAAAC,EACA,0CAAAC,EACA,yBAAAC,CACF,EAAIpD,EAES,CAAE,sBAAAqD,GAA0BP"}
1
+ {"version":3,"file":"getLists.cjs.js","sources":["../../../../../../src/api/queries/entityLists/getLists.ts"],"sourcesContent":["import { entityListsApi, gqlApi } from '@shared/api/generated'\nimport {\n FetchBaseQueryError,\n DefinitionsFromApi,\n OverrideResultType,\n TagTypesFromApi,\n} from '@reduxjs/toolkit/query'\nimport type {\n EntityList,\n GetListItemsQuery,\n GetListItemsQueryVariables,\n GetListsItemsForReviewSessionQuery,\n GetListsItemsForReviewSessionResult,\n GetListsQuery,\n GetListsQueryVariables,\n} from '@shared/api'\nimport { parseAllAttribs } from '../overview'\nimport { PubSub, subscribeToThumbnailUpdates, ThumbnailUpdateMessage } from '@shared/util'\nimport {\n GetListItemsResult,\n GetListsResult,\n ListItemMessage,\n ListItemsPageParam,\n ListsPageParam,\n} from './types'\n\n// Helper function to batch pub/sub messages to avoid constant cache updates\nexport function createBatchedCacheUpdater<TMessage, TDraft>(\n updateCachedData: (updater: (draft: TDraft) => void) => void,\n applyBatch: (draft: TDraft, batch: { topic: string; message: TMessage }[]) => void,\n delay = 5000,\n) {\n let queue: { topic: string; message: TMessage }[] = []\n let timeout: ReturnType<typeof setTimeout> | null = null\n\n const handler = (topic: string, message: TMessage) => {\n queue.push({ topic, message })\n if (!timeout) {\n timeout = setTimeout(() => {\n const batch = [...queue]\n queue = []\n timeout = null\n if (batch.length > 0) {\n updateCachedData((draft) => applyBatch(draft, batch))\n }\n }, delay)\n }\n }\n\n handler.clear = () => {\n if (timeout) {\n clearTimeout(timeout)\n timeout = null\n }\n queue = []\n }\n\n return handler\n}\n\n// Helper function to safely parse entity list data field from JSON string to object\nconst parseJSON = (data: string | null | undefined): Record<string, any> => {\n if (!data) return {}\n\n try {\n if (typeof data !== 'string') {\n return (data as unknown as Record<string, any>) ?? {}\n }\n return JSON.parse(data)\n } catch (e) {\n console.warn('Failed to parse entity list data field:', e, data)\n return {}\n }\n}\n\n// GRAPHQL API (getLists and getListItems)\n// Define the LISTS_PER_PAGE constant for pagination\nexport const LISTS_PER_PAGE = 10000\nexport const LIST_ITEMS_PER_PAGE = 100\n\ntype Definitions = DefinitionsFromApi<typeof gqlApi>\ntype TagTypes = TagTypesFromApi<typeof gqlApi>\n// update the definitions to include the new types\ntype UpdatedDefinitions = Omit<Definitions, 'GetLists' | 'GetListItems'> & {\n GetLists: OverrideResultType<Definitions['GetLists'], GetListsResult>\n GetListItems: OverrideResultType<Definitions['GetListItems'], GetListItemsResult>\n GetListsItemsForReviewSession: OverrideResultType<\n Definitions['GetListsItemsForReviewSession'],\n GetListsItemsForReviewSessionResult\n >\n}\n\nconst getListsGqlApiEnhanced = gqlApi.enhanceEndpoints<TagTypes, UpdatedDefinitions>({\n endpoints: {\n GetLists: {\n transformResponse: (response: GetListsQuery): GetListsResult => {\n return {\n // @ts-expect-error - entityType is string\n lists: response.project.entityLists.edges.map((edge) => ({\n ...edge.node,\n data: parseJSON(edge.node.data),\n attrib: parseJSON(edge.node.allAttrib),\n })),\n pageInfo: response.project.entityLists.pageInfo,\n }\n },\n },\n GetListItems: {\n transformResponse: (response: GetListItemsQuery): GetListItemsResult => {\n const firstEdge = response.project.entityLists.edges[0]\n if (!firstEdge) {\n throw new Error('List does not exist, was it deleted?')\n }\n return {\n items: response.project.entityLists.edges.flatMap((listEdge) =>\n listEdge.node.items.edges.map(({ node, ...edge }) => {\n return {\n ...node,\n ...edge,\n attrib: parseAllAttribs(edge.allAttrib),\n } as GetListItemsResult['items'][number]\n }),\n ),\n pageInfo: firstEdge.node.items.pageInfo,\n }\n },\n },\n GetListsItemsForReviewSession: {\n transformResponse: (\n response: GetListsItemsForReviewSessionQuery,\n ): GetListsItemsForReviewSessionResult => {\n return {\n lists: response.project.entityLists.edges.map((edge) => edge.node),\n pageInfo: response.project.entityLists.pageInfo,\n }\n },\n },\n },\n})\n\nconst getListsGqlApiInjected = getListsGqlApiEnhanced.injectEndpoints({\n endpoints: (build) => ({\n getListsInfinite: build.infiniteQuery<\n GetListsResult,\n Omit<GetListsQueryVariables, 'first' | 'after' | 'before'>,\n ListsPageParam\n >({\n infiniteQueryOptions: {\n initialPageParam: { cursor: '' },\n getNextPageParam: (lastPage) => {\n const { pageInfo } = lastPage\n if (!pageInfo.hasNextPage || !pageInfo.endCursor) return undefined\n\n return {\n cursor: pageInfo.endCursor,\n }\n },\n },\n queryFn: async ({ queryArg, pageParam }, api) => {\n try {\n const { cursor } = pageParam\n\n // Build the query parameters for GetLists\n const queryParams = {\n ...queryArg,\n first: LISTS_PER_PAGE,\n after: cursor || undefined,\n }\n\n // Call the existing GetLists endpoint\n const result = await api.dispatch(\n getListsGqlApiEnhanced.endpoints.GetLists.initiate(queryParams, { forceRefetch: true }),\n )\n\n if (result.error) {\n // Preserve original error (e.g. 403) so the UI can react accordingly\n return { error: result.error as FetchBaseQueryError }\n }\n\n return {\n data: result.data || {\n lists: [],\n pageInfo: {\n hasNextPage: false,\n endCursor: null,\n startCursor: null,\n hasPreviousPage: false,\n },\n },\n }\n } catch (e: any) {\n console.error('Error in getListsInfinite queryFn:', e)\n return { error: { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError }\n }\n },\n providesTags: (result) => {\n const lists = result?.pages.flatMap((page) => page.lists) || []\n return [\n { type: 'entityList', id: 'LIST' },\n ...lists.flatMap((list) => [\n { type: 'entityList' as const, id: list.id },\n { type: 'entityList' as const, id: list.entityListType },\n { type: 'entityList' as const, id: list.entityListFolderId || 'NO_FOLDER' },\n ]),\n ]\n },\n async onCacheEntryAdded(\n { projectName },\n { cacheDataLoaded, cacheEntryRemoved, updateCachedData },\n ) {\n const topics = ['entity_list.changed', 'entity_list.created', 'entity_list.deleted']\n let handlePubSub: any = null\n try {\n // wait for the initial query to resolve before proceeding\n await cacheDataLoaded\n\n handlePubSub = createBatchedCacheUpdater<ListItemMessage, any>(\n updateCachedData,\n (draft, batch) => {\n batch.forEach(({ topic, message }) => {\n const summary = message.summary\n const id = summary.id\n if (!id) return\n\n const getListFromSummary = (list?: EntityList): EntityList => {\n return {\n // defaults\n projectName: projectName,\n tags: [],\n data: {},\n allAttrib: '',\n attrib: {},\n createdAt: new Date().toISOString(),\n updatedAt: '',\n active: true,\n access: '',\n accessLevel: 30, // default admin\n // existing data\n ...(list || {}),\n // new data\n id: summary.id as string,\n label: summary.label,\n entityType: summary.entity_type,\n entityListType: summary.entity_list_type,\n count: summary.count,\n }\n }\n\n if (topic === 'entity_list.changed') {\n // update the data of existing list in cache\n const list = draft.pages\n .flatMap((page: any) => page.lists)\n .find((l: any) => l.id === id)\n if (!list) return\n const newList = getListFromSummary(list)\n\n Object.assign(list, newList)\n } else if (topic === 'entity_list.created') {\n // Add new list to the cache using basic summary\n const newList = getListFromSummary()\n // Insert the new list at the beginning of the first page\n if (draft.pages.length !== 0) {\n draft.pages[0].lists.unshift(newList)\n }\n } else if (topic === 'entity_list.deleted') {\n // delete the list from the cache\n draft.pages.forEach((page: any) => {\n page.lists = page.lists.filter((l: any) => l.id !== id)\n })\n }\n })\n },\n 10000, // 10 seconds debounce/batch window\n )\n\n topics.forEach((topic) => PubSub.subscribe(topic, handlePubSub))\n } catch {\n // no-op in case `cacheEntryRemoved` resolves before `cacheDataLoaded`,\n // in which case `cacheDataLoaded` will throw\n }\n // cacheEntryRemoved will resolve when the cache subscription is no longer active\n await cacheEntryRemoved\n // perform cleanup steps once the `cacheEntryRemoved` promise resolves\n topics.forEach((t) => PubSub.unsubscribe(t))\n if (handlePubSub && typeof handlePubSub.clear === 'function') handlePubSub.clear()\n },\n }),\n getListItemsInfinite: build.infiniteQuery<\n GetListItemsResult,\n Omit<GetListItemsQueryVariables, 'first' | 'after' | 'before' | 'last'> & { desc?: boolean },\n ListItemsPageParam\n >({\n infiniteQueryOptions: {\n initialPageParam: { cursor: '' },\n getNextPageParam: (lastPage) => {\n const { pageInfo } = lastPage\n // ascending paginates via hasNextPage, descending (last/before) via\n // hasPreviousPage — the backend only sets one depending on direction\n const hasMore = pageInfo.hasNextPage || pageInfo.hasPreviousPage\n if (!hasMore || !pageInfo.endCursor) return undefined\n\n return {\n cursor: pageInfo.endCursor,\n }\n },\n },\n queryFn: async ({ queryArg, pageParam }, api) => {\n try {\n const { sortBy, desc, ...rest } = queryArg\n const { cursor } = pageParam\n\n // Build the query parameters for GetLists\n const queryParams: GetListItemsQueryVariables = {\n ...rest,\n first: LIST_ITEMS_PER_PAGE,\n after: cursor || undefined,\n }\n\n // Add cursor-based pagination\n queryParams.after = cursor || undefined\n queryParams.first = LIST_ITEMS_PER_PAGE\n\n if (sortBy) {\n queryParams.sortBy = sortBy\n if (desc) {\n queryParams.before = cursor || undefined\n queryParams.after = undefined\n queryParams.last = LIST_ITEMS_PER_PAGE\n queryParams.first = undefined\n }\n }\n\n // Call the existing GetLists endpoint\n const result = await api.dispatch(\n getListsGqlApiEnhanced.endpoints.GetListItems.initiate(queryParams, {\n forceRefetch: true,\n }),\n )\n\n if (result.error) {\n return { error: result.error as FetchBaseQueryError }\n }\n\n return {\n data: result.data || {\n items: [],\n pageInfo: {\n hasNextPage: false,\n endCursor: null,\n startCursor: null,\n hasPreviousPage: false,\n },\n },\n }\n } catch (e: any) {\n console.error('Error in getListsInfinite queryFn:', e)\n return { error: { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError }\n }\n },\n providesTags: (result, _e, { listId, projectName }) => [\n { type: 'entityListItem', id: 'LIST' },\n { type: 'entityListItem', id: listId },\n { type: 'entityListItem', id: projectName },\n ...(result?.pages.flatMap((page) => page.items) || [])\n .filter((i) => !!i)\n .flatMap((item) => [\n {\n type: 'entityListItem',\n id: item.id,\n },\n {\n type: 'entityListItem',\n id: item.entityId,\n },\n ]),\n ],\n async onCacheEntryAdded(\n _args,\n { cacheDataLoaded, cacheEntryRemoved, dispatch, updateCachedData },\n ) {\n let token, token2\n let unsubscribeThumbnails: (() => void) | undefined\n try {\n // wait for the initial query to resolve before proceeding\n const cache = await cacheDataLoaded\n const pages = cache.data.pages\n const items = pages.flatMap((page) => page.items)\n // get entityType of first item\n const entityType = items[0]?.entityType\n\n unsubscribeThumbnails = subscribeToThumbnailUpdates(\n (messages: ThumbnailUpdateMessage[]) => {\n updateCachedData((draft: any) => {\n if (!draft?.pages) return\n messages.forEach((message) => {\n draft.pages.forEach((page: any) => {\n const pageItems = page.items || []\n pageItems.forEach((item: any) => {\n if (\n item.entityId === message.summary.entityId &&\n item.entityType === message.summary.entityType &&\n message.summary.thumbnailHash\n ) {\n item.thumbnailHash = message.summary.thumbnailHash\n }\n })\n })\n })\n })\n },\n )\n\n const listTopic = `entity_list.changed`\n const entityTypeTopic = `entity.${entityType}`\n\n const invalidateListItems = (id: string) => {\n dispatch(gqlApi.util.invalidateTags([{ type: 'entityListItem', id: id }]))\n }\n\n const handleListMessage = (topic: string, message: ListItemMessage) => {\n if (topic !== listTopic) return\n const summary = message.summary\n const id = summary.id\n if (!id) return\n invalidateListItems(id)\n }\n\n const handleEntityMessage = (topic: string, message: ListItemMessage) => {\n if (!topic.startsWith(entityTypeTopic)) return\n const summary = message.summary\n const id = summary.entityId\n // check for id\n if (!id) return\n invalidateListItems(id)\n }\n\n // sub to websocket topic\n token = PubSub.subscribe(listTopic, handleListMessage)\n if (entityType) token2 = PubSub.subscribe(entityTypeTopic, handleEntityMessage)\n } catch {\n // no-op in case `cacheEntryRemoved` resolves before `cacheDataLoaded`,\n // in which case `cacheDataLoaded` will throw\n }\n // cacheEntryRemoved will resolve when the cache subscription is no longer active\n await cacheEntryRemoved\n // perform cleanup steps once the `cacheEntryRemoved` promise resolves\n PubSub.unsubscribe(token)\n PubSub.unsubscribe(token2)\n if (unsubscribeThumbnails) {\n unsubscribeThumbnails()\n }\n },\n }),\n getListsItemsForReviewSession: build.infiniteQuery<\n GetListsItemsForReviewSessionResult,\n Omit<GetListsQueryVariables, 'first' | 'after' | 'before' | 'filter'>,\n ListsPageParam\n >({\n infiniteQueryOptions: {\n initialPageParam: { cursor: '' },\n getNextPageParam: (lastPage) => {\n const { pageInfo } = lastPage\n if (!pageInfo.hasNextPage || !pageInfo.endCursor) return undefined\n\n return {\n cursor: pageInfo.endCursor,\n }\n },\n },\n queryFn: async ({ queryArg, pageParam }, api) => {\n try {\n const { cursor } = pageParam\n\n // Build the query parameters for GetLists\n const queryParams = {\n ...queryArg,\n first: LISTS_PER_PAGE,\n after: cursor || undefined,\n }\n\n // Call the existing GetLists endpoint\n const result = await api.dispatch(\n getListsGqlApiEnhanced.endpoints.GetListsItemsForReviewSession.initiate(queryParams, {\n forceRefetch: true,\n }),\n )\n\n if (result.error) {\n return { error: result.error as FetchBaseQueryError }\n }\n\n return {\n data: result.data || {\n lists: [],\n pageInfo: {\n hasNextPage: false,\n endCursor: null,\n startCursor: null,\n hasPreviousPage: false,\n },\n },\n }\n } catch (e: any) {\n console.error('Error in getListsInfinite queryFn:', e)\n return { error: { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError }\n }\n },\n providesTags: (result) => [\n { type: 'entityList', id: 'LIST' },\n ...(result?.pages.flatMap((page) => page.lists) || []).map((list) => ({\n type: 'entityList' as const,\n id: list.id,\n })),\n ],\n }),\n }),\n})\n\nexport const getListsApiEnhanced = entityListsApi.enhanceEndpoints({\n endpoints: {\n getEntityList: {\n providesTags: (result, _e, { listId, projectName }) => [\n { type: 'entityList', id: listId },\n { type: 'entityList', id: projectName },\n ...(result\n ? [\n { type: 'entityList', id: result.entityListType },\n {\n type: 'entityList',\n id: result.entityListFolderId || 'NO_FOLDER',\n },\n ]\n : []),\n ],\n },\n },\n})\n\nexport default getListsGqlApiInjected\n\nexport const {\n useGetListsInfiniteInfiniteQuery,\n useGetListItemsInfiniteInfiniteQuery,\n useGetListsItemsForReviewSessionInfiniteQuery,\n useLazyGetListsItemsForReviewSessionQuery,\n useLazyGetListItemsQuery,\n} = getListsGqlApiInjected\n\nexport const { useGetEntityListQuery } = getListsApiEnhanced\n"],"names":["createBatchedCacheUpdater","updateCachedData","applyBatch","delay","queue","timeout","handler","topic","message","batch","draft","parseJSON","data","e","LISTS_PER_PAGE","LIST_ITEMS_PER_PAGE","getListsGqlApiEnhanced","gqlApi","response","edge","firstEdge","listEdge","node","parseAllAttribs","getListsGqlApiInjected","build","lastPage","pageInfo","queryArg","pageParam","api","cursor","queryParams","result","lists","page","list","projectName","cacheDataLoaded","cacheEntryRemoved","topics","handlePubSub","summary","id","getListFromSummary","l","newList","PubSub","t","sortBy","desc","rest","_e","listId","i","item","_args","dispatch","token","token2","unsubscribeThumbnails","entityType","subscribeToThumbnailUpdates","messages","listTopic","entityTypeTopic","invalidateListItems","handleListMessage","handleEntityMessage","getListsApiEnhanced","entityListsApi","useGetListsInfiniteInfiniteQuery","useGetListItemsInfiniteInfiniteQuery","useGetListsItemsForReviewSessionInfiniteQuery","useLazyGetListsItemsForReviewSessionQuery","useLazyGetListItemsQuery","useGetEntityListQuery"],"mappings":"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"}