@ynput/ayon-frontend-shared 0.4.0 → 0.4.2

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 (1168) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +37 -198
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +248 -496
  6. package/dist/ProjectTreeTable.es.js.map +1 -1
  7. package/dist/Slicer.cjs.js +1 -1
  8. package/dist/Slicer.es.js +31 -230
  9. package/dist/Slicer.es.js.map +1 -1
  10. package/dist/api.cjs.js +1 -1
  11. package/dist/api.es.js +93 -93
  12. package/dist/components.cjs.js +1 -1
  13. package/dist/components.es.js +131 -126
  14. package/dist/components.es.js.map +1 -1
  15. package/dist/index.cjs.js +1 -1
  16. package/dist/index.es.js +33 -128
  17. package/dist/index.es.js.map +1 -1
  18. package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
  19. package/dist/node_modules/parse-numeric-range/index.es.js +1 -1
  20. package/dist/shared/node_modules/react-is/index.cjs.js +1 -1
  21. package/dist/shared/node_modules/react-is/index.es.js +1 -1
  22. package/dist/shared/src/api/generated/graphql.cjs.js +45 -25
  23. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  24. package/dist/shared/src/api/generated/graphql.es.js +54 -34
  25. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  26. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  27. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  28. package/dist/shared/src/api/generated/views.cjs.js.map +1 -1
  29. package/dist/shared/src/api/generated/views.es.js.map +1 -1
  30. package/dist/shared/src/api/queries/actions/getActions.cjs.js.map +1 -1
  31. package/dist/shared/src/api/queries/actions/getActions.es.js.map +1 -1
  32. package/dist/shared/src/api/queries/activities/getActivities.cjs.js +1 -1
  33. package/dist/shared/src/api/queries/activities/getActivities.cjs.js.map +1 -1
  34. package/dist/shared/src/api/queries/activities/getActivities.es.js +4 -4
  35. package/dist/shared/src/api/queries/activities/getActivities.es.js.map +1 -1
  36. package/dist/shared/src/api/queries/activities/getCategories.cjs.js.map +1 -1
  37. package/dist/shared/src/api/queries/activities/getCategories.es.js.map +1 -1
  38. package/dist/shared/src/api/queries/activities/patchTableLatestComments.cjs.js.map +1 -1
  39. package/dist/shared/src/api/queries/activities/patchTableLatestComments.es.js.map +1 -1
  40. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js.map +1 -1
  41. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js.map +1 -1
  42. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js +1 -1
  43. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js.map +1 -1
  44. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js +99 -201
  45. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js.map +1 -1
  46. package/dist/shared/src/api/queries/addons/updateAddons.cjs.js.map +1 -1
  47. package/dist/shared/src/api/queries/addons/updateAddons.es.js.map +1 -1
  48. package/dist/shared/src/api/queries/attributes/getAttributes.cjs.js.map +1 -1
  49. package/dist/shared/src/api/queries/attributes/getAttributes.es.js.map +1 -1
  50. package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js.map +1 -1
  51. package/dist/shared/src/api/queries/columnStats/columnStats.es.js.map +1 -1
  52. package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js.map +1 -1
  53. package/dist/shared/src/api/queries/columnStats/metricTargets.es.js.map +1 -1
  54. package/dist/shared/src/api/queries/entities/getEntity.cjs.js.map +1 -1
  55. package/dist/shared/src/api/queries/entities/getEntity.es.js.map +1 -1
  56. package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js +1 -1
  57. package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js.map +1 -1
  58. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js +133 -142
  59. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js.map +1 -1
  60. package/dist/shared/src/api/queries/entities/patchDetailsPanel.cjs.js.map +1 -1
  61. package/dist/shared/src/api/queries/entities/patchDetailsPanel.es.js.map +1 -1
  62. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +1 -1
  63. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -1
  64. package/dist/shared/src/api/queries/entityLists/getLists.es.js +151 -202
  65. package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -1
  66. package/dist/shared/src/api/queries/entityLists/listFolders.cjs.js +1 -1
  67. package/dist/shared/src/api/queries/entityLists/listFolders.cjs.js.map +1 -1
  68. package/dist/shared/src/api/queries/entityLists/listFolders.es.js +40 -95
  69. package/dist/shared/src/api/queries/entityLists/listFolders.es.js.map +1 -1
  70. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js.map +1 -1
  71. package/dist/shared/src/api/queries/entityLists/updateLists.es.js.map +1 -1
  72. package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.cjs.js.map +1 -1
  73. package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.es.js.map +1 -1
  74. package/dist/shared/src/api/queries/folders/getFolders.cjs.js +1 -1
  75. package/dist/shared/src/api/queries/folders/getFolders.cjs.js.map +1 -1
  76. package/dist/shared/src/api/queries/folders/getFolders.es.js +80 -129
  77. package/dist/shared/src/api/queries/folders/getFolders.es.js.map +1 -1
  78. package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js +1 -1
  79. package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js.map +1 -1
  80. package/dist/shared/src/api/queries/links/getEntityLinks.es.js +111 -167
  81. package/dist/shared/src/api/queries/links/getEntityLinks.es.js.map +1 -1
  82. package/dist/shared/src/api/queries/links/getLinks.cjs.js +1 -1
  83. package/dist/shared/src/api/queries/links/getLinks.cjs.js.map +1 -1
  84. package/dist/shared/src/api/queries/links/getLinks.es.js +58 -73
  85. package/dist/shared/src/api/queries/links/getLinks.es.js.map +1 -1
  86. package/dist/shared/src/api/queries/links/updateLinks.cjs.js.map +1 -1
  87. package/dist/shared/src/api/queries/links/updateLinks.es.js.map +1 -1
  88. package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
  89. package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
  90. package/dist/shared/src/api/queries/overview/getOverview.es.js +344 -345
  91. package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
  92. package/dist/shared/src/api/queries/overview/patchVersions.cjs.js +1 -1
  93. package/dist/shared/src/api/queries/overview/patchVersions.cjs.js.map +1 -1
  94. package/dist/shared/src/api/queries/overview/patchVersions.es.js +130 -77
  95. package/dist/shared/src/api/queries/overview/patchVersions.es.js.map +1 -1
  96. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
  97. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  98. package/dist/shared/src/api/queries/overview/updateOverview.es.js +136 -132
  99. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  100. package/dist/shared/src/api/queries/products/getFolderProducts.cjs.js.map +1 -1
  101. package/dist/shared/src/api/queries/products/getFolderProducts.es.js.map +1 -1
  102. package/dist/shared/src/api/queries/projectFolders/projectFolders.cjs.js +1 -1
  103. package/dist/shared/src/api/queries/projectFolders/projectFolders.cjs.js.map +1 -1
  104. package/dist/shared/src/api/queries/projectFolders/projectFolders.es.js +80 -134
  105. package/dist/shared/src/api/queries/projectFolders/projectFolders.es.js.map +1 -1
  106. package/dist/shared/src/api/queries/review/getReview.cjs.js +1 -1
  107. package/dist/shared/src/api/queries/review/getReview.cjs.js.map +1 -1
  108. package/dist/shared/src/api/queries/review/getReview.es.js +105 -86
  109. package/dist/shared/src/api/queries/review/getReview.es.js.map +1 -1
  110. package/dist/shared/src/api/queries/share/share.cjs.js.map +1 -1
  111. package/dist/shared/src/api/queries/share/share.es.js.map +1 -1
  112. package/dist/shared/src/api/queries/system/getSystem.cjs.js.map +1 -1
  113. package/dist/shared/src/api/queries/system/getSystem.es.js.map +1 -1
  114. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -1
  115. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js.map +1 -1
  116. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +151 -184
  117. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js.map +1 -1
  118. package/dist/shared/src/api/queries/users/getUsers.cjs.js +2 -2
  119. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  120. package/dist/shared/src/api/queries/users/getUsers.es.js +2 -2
  121. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  122. package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js +1 -1
  123. package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js.map +1 -1
  124. package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js +486 -490
  125. package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js.map +1 -1
  126. package/dist/shared/src/api/queries/versions/getVersionsProductsUtils.cjs.js.map +1 -1
  127. package/dist/shared/src/api/queries/versions/getVersionsProductsUtils.es.js.map +1 -1
  128. package/dist/shared/src/api/queries/versions/updateVersions.cjs.js.map +1 -1
  129. package/dist/shared/src/api/queries/versions/updateVersions.es.js.map +1 -1
  130. package/dist/shared/src/api/queries/views/getViews.cjs.js.map +1 -1
  131. package/dist/shared/src/api/queries/views/getViews.es.js.map +1 -1
  132. package/dist/shared/src/api/queries/views/updateViews.cjs.js.map +1 -1
  133. package/dist/shared/src/api/queries/views/updateViews.es.js.map +1 -1
  134. package/dist/shared/src/api/queries/watchers/getWatchers.cjs.js.map +1 -1
  135. package/dist/shared/src/api/queries/watchers/getWatchers.es.js.map +1 -1
  136. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.cjs.js.map +1 -1
  137. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.es.js.map +1 -1
  138. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js +1 -1
  139. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js.map +1 -1
  140. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js +28 -30
  141. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js.map +1 -1
  142. package/dist/shared/src/components/AttributeEditor/attributeTypeMap.cjs.js +1 -1
  143. package/dist/shared/src/components/AttributeEditor/attributeTypeMap.cjs.js.map +1 -1
  144. package/dist/shared/src/components/AttributeEditor/attributeTypeMap.es.js +29 -125
  145. package/dist/shared/src/components/AttributeEditor/attributeTypeMap.es.js.map +1 -1
  146. package/dist/shared/src/components/Chips/Chips.cjs.js +1 -1
  147. package/dist/shared/src/components/Chips/Chips.cjs.js.map +1 -1
  148. package/dist/shared/src/components/Chips/Chips.es.js +18 -17
  149. package/dist/shared/src/components/Chips/Chips.es.js.map +1 -1
  150. package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js +3 -3
  151. package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js.map +1 -1
  152. package/dist/shared/src/components/ColumnHeaderMenuUI.es.js +16 -307
  153. package/dist/shared/src/components/ColumnHeaderMenuUI.es.js.map +1 -1
  154. package/dist/shared/src/components/DeleteEntitiesConfirm/DeleteConfirmContent.cjs.js +5 -5
  155. package/dist/shared/src/components/DeleteEntitiesConfirm/DeleteConfirmContent.cjs.js.map +1 -1
  156. package/dist/shared/src/components/DeleteEntitiesConfirm/DeleteConfirmContent.es.js +49 -145
  157. package/dist/shared/src/components/DeleteEntitiesConfirm/DeleteConfirmContent.es.js.map +1 -1
  158. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js +5 -5
  159. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js.map +1 -1
  160. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js +45 -141
  161. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js.map +1 -1
  162. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  163. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  164. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +27 -180
  165. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  166. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  167. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  168. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +9 -192
  169. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  170. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +2 -2
  171. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
  172. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +5 -197
  173. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
  174. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.cjs.js +4 -4
  175. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.cjs.js.map +1 -1
  176. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.es.js +18 -114
  177. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.es.js.map +1 -1
  178. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.cjs.js +2 -2
  179. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.cjs.js.map +1 -1
  180. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.es.js +13 -109
  181. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.es.js.map +1 -1
  182. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  183. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
  184. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +11 -313
  185. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  186. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.cjs.js +1 -1
  187. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.cjs.js.map +1 -1
  188. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.es.js +23 -119
  189. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.es.js.map +1 -1
  190. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js +1 -1
  191. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js.map +1 -1
  192. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.es.js +0 -111
  193. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.es.js.map +1 -1
  194. package/dist/shared/src/components/DetailsPanelDetails/hooks/useQuillFormats.cjs.js +1 -1
  195. package/dist/shared/src/components/DetailsPanelDetails/hooks/useQuillFormats.cjs.js.map +1 -1
  196. package/dist/shared/src/components/DetailsPanelDetails/hooks/useQuillFormats.es.js +1 -1
  197. package/dist/shared/src/components/DetailsPanelDetails/hooks/useQuillFormats.es.js.map +1 -1
  198. package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js +1 -1
  199. package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js.map +1 -1
  200. package/dist/shared/src/components/EntityIcon/EntityIcon.es.js +13 -311
  201. package/dist/shared/src/components/EntityIcon/EntityIcon.es.js.map +1 -1
  202. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  203. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  204. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +86 -270
  205. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  206. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
  207. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
  208. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +34 -332
  209. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
  210. package/dist/shared/src/components/EntityPath/EntityPath.cjs.js.map +1 -1
  211. package/dist/shared/src/components/EntityPath/EntityPath.es.js.map +1 -1
  212. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
  213. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
  214. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +15 -307
  215. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
  216. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.cjs.js.map +1 -1
  217. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.es.js.map +1 -1
  218. package/dist/shared/src/components/EnumEditor/EnumEditorItem.cjs.js.map +1 -1
  219. package/dist/shared/src/components/EnumEditor/EnumEditorItem.es.js.map +1 -1
  220. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  221. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  222. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +89 -290
  223. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  224. package/dist/shared/src/components/FilterErrorActions/FilterErrorActions.cjs.js +2 -2
  225. package/dist/shared/src/components/FilterErrorActions/FilterErrorActions.cjs.js.map +1 -1
  226. package/dist/shared/src/components/FilterErrorActions/FilterErrorActions.es.js +10 -106
  227. package/dist/shared/src/components/FilterErrorActions/FilterErrorActions.es.js.map +1 -1
  228. package/dist/shared/src/components/InfoMessage/InfoMessage.cjs.js +1 -1
  229. package/dist/shared/src/components/InfoMessage/InfoMessage.cjs.js.map +1 -1
  230. package/dist/shared/src/components/InfoMessage/InfoMessage.es.js +6 -5
  231. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  232. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  233. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js +1 -1
  234. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js.map +1 -1
  235. package/dist/shared/src/components/LinksManager/LinksManager.es.js +51 -343
  236. package/dist/shared/src/components/LinksManager/LinksManager.es.js.map +1 -1
  237. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  238. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  239. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +7 -209
  240. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  241. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
  242. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
  243. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +2 -202
  244. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
  245. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js +1 -1
  246. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js.map +1 -1
  247. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js +4 -182
  248. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js.map +1 -1
  249. package/dist/shared/src/components/Menu/Menu.cjs.js +1 -1
  250. package/dist/shared/src/components/Menu/Menu.cjs.js.map +1 -1
  251. package/dist/shared/src/components/Menu/Menu.es.js +48 -340
  252. package/dist/shared/src/components/Menu/Menu.es.js.map +1 -1
  253. package/dist/shared/src/components/Menu/MenuItem.cjs.js +1 -1
  254. package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -1
  255. package/dist/shared/src/components/Menu/MenuItem.es.js +20 -313
  256. package/dist/shared/src/components/Menu/MenuItem.es.js.map +1 -1
  257. package/dist/shared/src/components/Menu/MenuList.cjs.js +1 -1
  258. package/dist/shared/src/components/Menu/MenuList.cjs.js.map +1 -1
  259. package/dist/shared/src/components/Menu/MenuList.es.js +74 -370
  260. package/dist/shared/src/components/Menu/MenuList.es.js.map +1 -1
  261. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +2 -2
  262. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
  263. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +16 -312
  264. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
  265. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  266. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  267. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +48 -343
  268. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  269. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +2 -2
  270. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
  271. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +226 -368
  272. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
  273. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +2 -2
  274. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  275. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +89 -375
  276. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  277. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  278. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  279. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +3 -296
  280. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  281. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
  282. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
  283. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +34 -331
  284. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
  285. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
  286. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
  287. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +30 -328
  288. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
  289. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +5 -5
  290. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  291. package/dist/shared/src/components/RenameForm/RenameForm.es.js +77 -369
  292. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  293. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  294. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  295. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +114 -312
  296. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  297. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  298. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  299. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +66 -362
  300. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  301. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  302. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  303. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +14 -313
  304. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  305. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
  306. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  307. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +70 -72
  308. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  309. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
  310. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
  311. package/dist/shared/src/components/ReviewablesSelector/Card.es.js +24 -323
  312. package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
  313. package/dist/shared/src/components/SearchFilter/filterScopeRegistry.cjs.js +1 -1
  314. package/dist/shared/src/components/SearchFilter/filterScopeRegistry.cjs.js.map +1 -1
  315. package/dist/shared/src/components/SearchFilter/filterScopeRegistry.es.js +2 -1
  316. package/dist/shared/src/components/SearchFilter/filterScopeRegistry.es.js.map +1 -1
  317. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  318. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  319. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +441 -523
  320. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  321. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +7 -7
  322. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
  323. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +29 -326
  324. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
  325. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.cjs.js +8 -5
  326. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.cjs.js.map +1 -1
  327. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.es.js +36 -22
  328. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.es.js.map +1 -1
  329. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +4 -4
  330. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
  331. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +53 -352
  332. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
  333. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +2 -2
  334. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  335. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +95 -391
  336. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  337. package/dist/shared/src/components/SyncButton/SyncButton.cjs.js +2 -2
  338. package/dist/shared/src/components/SyncButton/SyncButton.cjs.js.map +1 -1
  339. package/dist/shared/src/components/SyncButton/SyncButton.es.js +52 -165
  340. package/dist/shared/src/components/SyncButton/SyncButton.es.js.map +1 -1
  341. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +3 -3
  342. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
  343. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +35 -331
  344. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
  345. package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js +1 -1
  346. package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js.map +1 -1
  347. package/dist/shared/src/components/Thumbnail/Thumbnail.es.js +26 -122
  348. package/dist/shared/src/components/Thumbnail/Thumbnail.es.js.map +1 -1
  349. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js +3 -3
  350. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js.map +1 -1
  351. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js +22 -118
  352. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js.map +1 -1
  353. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +13 -13
  354. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  355. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +99 -297
  356. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  357. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  358. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  359. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +61 -259
  360. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  361. package/dist/shared/src/config/plannerFeatures.cjs.js.map +1 -1
  362. package/dist/shared/src/config/plannerFeatures.es.js.map +1 -1
  363. package/dist/shared/src/config/powerpackFeatures.cjs.js.map +1 -1
  364. package/dist/shared/src/config/powerpackFeatures.es.js.map +1 -1
  365. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  366. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  367. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +6 -207
  368. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  369. package/dist/shared/src/containers/Actions/ActionIcon.cjs.js.map +1 -1
  370. package/dist/shared/src/containers/Actions/ActionIcon.es.js.map +1 -1
  371. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  372. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  373. package/dist/shared/src/containers/Actions/Actions.es.js +51 -247
  374. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  375. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js.map +1 -1
  376. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.es.js.map +1 -1
  377. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  378. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  379. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +20 -320
  380. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  381. package/dist/shared/src/containers/ContextMenu/ContextMenuItem.cjs.js.map +1 -1
  382. package/dist/shared/src/containers/ContextMenu/ContextMenuItem.es.js.map +1 -1
  383. package/dist/shared/src/containers/ContextMenu/useCreateContextMenu.cjs.js.map +1 -1
  384. package/dist/shared/src/containers/ContextMenu/useCreateContextMenu.es.js.map +1 -1
  385. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  386. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  387. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +143 -324
  388. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  389. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +3 -3
  390. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  391. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +27 -326
  392. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  393. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  394. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  395. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +39 -233
  396. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  397. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  398. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  399. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +65 -252
  400. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  401. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.cjs.js +1 -1
  402. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.cjs.js.map +1 -1
  403. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.es.js +16 -314
  404. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.es.js.map +1 -1
  405. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
  406. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
  407. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +61 -351
  408. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
  409. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js +5 -5
  410. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js.map +1 -1
  411. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.es.js +20 -116
  412. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.es.js.map +1 -1
  413. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
  414. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
  415. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +2 -303
  416. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js.map +1 -1
  417. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useMenuOptions.cjs.js +1 -1
  418. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useMenuOptions.cjs.js.map +1 -1
  419. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useMenuOptions.es.js +51 -147
  420. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useMenuOptions.es.js.map +1 -1
  421. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  422. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  423. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +2 -199
  424. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  425. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.cjs.js.map +1 -1
  426. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.es.js.map +1 -1
  427. package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.cjs.js +1 -1
  428. package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.cjs.js.map +1 -1
  429. package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.es.js +12 -12
  430. package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.es.js.map +1 -1
  431. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.cjs.js.map +1 -1
  432. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.es.js.map +1 -1
  433. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +9 -9
  434. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
  435. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +18 -317
  436. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
  437. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
  438. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
  439. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +13 -214
  440. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
  441. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
  442. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
  443. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +22 -320
  444. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
  445. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
  446. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
  447. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +27 -304
  448. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
  449. package/dist/shared/src/containers/DetailsPanel/helpers/buildDetailsPanelTitles.cjs.js.map +1 -1
  450. package/dist/shared/src/containers/DetailsPanel/helpers/buildDetailsPanelTitles.es.js.map +1 -1
  451. package/dist/shared/src/containers/DetailsPanel/helpers/buildEntityTypeIcons.cjs.js.map +1 -1
  452. package/dist/shared/src/containers/DetailsPanel/helpers/buildEntityTypeIcons.es.js.map +1 -1
  453. package/dist/shared/src/containers/DetailsPanel/helpers/getAllProjectsStatuses.cjs.js.map +1 -1
  454. package/dist/shared/src/containers/DetailsPanel/helpers/getAllProjectsStatuses.es.js.map +1 -1
  455. package/dist/shared/src/containers/DetailsPanel/helpers/getEntityPathData.cjs.js.map +1 -1
  456. package/dist/shared/src/containers/DetailsPanel/helpers/getEntityPathData.es.js.map +1 -1
  457. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js +1 -1
  458. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js.map +1 -1
  459. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js +10 -106
  460. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js.map +1 -1
  461. package/dist/shared/src/containers/DetailsPanel/helpers/mergeProjectInfo.cjs.js.map +1 -1
  462. package/dist/shared/src/containers/DetailsPanel/helpers/mergeProjectInfo.es.js.map +1 -1
  463. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  464. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  465. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +2 -206
  466. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  467. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +2 -2
  468. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  469. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +74 -370
  470. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  471. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  472. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  473. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +20 -321
  474. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  475. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +6 -6
  476. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  477. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +32 -335
  478. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  479. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +3 -3
  480. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  481. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +12 -315
  482. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  483. package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.cjs.js +1 -1
  484. package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.cjs.js.map +1 -1
  485. package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.es.js +11 -107
  486. package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.es.js.map +1 -1
  487. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  488. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  489. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +23 -225
  490. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  491. package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.cjs.js +1 -1
  492. package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.cjs.js.map +1 -1
  493. package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.es.js +27 -123
  494. package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.es.js.map +1 -1
  495. package/dist/shared/src/containers/EntityPickerDialog/util/getExpandedFoldersFromIds.cjs.js.map +1 -1
  496. package/dist/shared/src/containers/EntityPickerDialog/util/getExpandedFoldersFromIds.es.js.map +1 -1
  497. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  498. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  499. package/dist/shared/src/containers/Feed/Feed.es.js +65 -242
  500. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  501. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js.map +1 -1
  502. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js.map +1 -1
  503. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
  504. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
  505. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +8 -306
  506. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
  507. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  508. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  509. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +145 -418
  510. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  511. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  512. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  513. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +18 -314
  514. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  515. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.cjs.js +1 -1
  516. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.cjs.js.map +1 -1
  517. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.es.js +24 -120
  518. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.es.js.map +1 -1
  519. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
  520. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
  521. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +42 -328
  522. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
  523. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js.map +1 -1
  524. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.styled.es.js.map +1 -1
  525. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +2 -2
  526. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  527. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +227 -369
  528. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  529. package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.cjs.js.map +1 -1
  530. package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.es.js.map +1 -1
  531. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
  532. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
  533. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +38 -338
  534. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
  535. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -1
  536. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
  537. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +22 -321
  538. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
  539. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.cjs.js +1 -1
  540. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.cjs.js.map +1 -1
  541. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.es.js +9 -105
  542. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.es.js.map +1 -1
  543. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
  544. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
  545. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +21 -321
  546. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
  547. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.cjs.js +1 -1
  548. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.cjs.js.map +1 -1
  549. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.es.js +16 -26
  550. package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.es.js.map +1 -1
  551. package/dist/shared/src/containers/Feed/components/CommentInput/quillFormats.cjs.js +2 -0
  552. package/dist/shared/src/containers/Feed/components/CommentInput/quillFormats.cjs.js.map +1 -0
  553. package/dist/shared/src/containers/Feed/components/CommentInput/quillFormats.es.js +14 -0
  554. package/dist/shared/src/containers/Feed/components/CommentInput/quillFormats.es.js.map +1 -0
  555. package/dist/shared/src/containers/Feed/components/CommentInput/types.cjs.js +1 -1
  556. package/dist/shared/src/containers/Feed/components/CommentInput/types.cjs.js.map +1 -1
  557. package/dist/shared/src/containers/Feed/components/CommentInput/types.es.js +2 -15
  558. package/dist/shared/src/containers/Feed/components/CommentInput/types.es.js.map +1 -1
  559. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js +2 -2
  560. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js.map +1 -1
  561. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js +63 -359
  562. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js.map +1 -1
  563. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
  564. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
  565. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +57 -353
  566. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
  567. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  568. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  569. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +14 -307
  570. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  571. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  572. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  573. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +34 -235
  574. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  575. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js +1 -1
  576. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js.map +1 -1
  577. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js +67 -163
  578. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js.map +1 -1
  579. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.cjs.js.map +1 -1
  580. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.es.js +18 -8
  581. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.es.js.map +1 -1
  582. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.cjs.js +1 -1
  583. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.cjs.js.map +1 -1
  584. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.es.js +10 -106
  585. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.es.js.map +1 -1
  586. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionUsers.cjs.js.map +1 -1
  587. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionUsers.es.js.map +1 -1
  588. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.cjs.js +1 -1
  589. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.cjs.js.map +1 -1
  590. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.es.js +13 -109
  591. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.es.js.map +1 -1
  592. package/dist/shared/src/containers/ListTable/ListTable.cjs.js +1 -1
  593. package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
  594. package/dist/shared/src/containers/ListTable/ListTable.es.js +116 -282
  595. package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
  596. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
  597. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
  598. package/dist/shared/src/containers/ListTable/ListTableCell.es.js +58 -188
  599. package/dist/shared/src/containers/ListTable/ListTableCell.es.js.map +1 -1
  600. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js +1 -1
  601. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js.map +1 -1
  602. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js +46 -340
  603. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
  604. package/dist/shared/src/containers/ListTable/ListTableWidgets.cjs.js.map +1 -1
  605. package/dist/shared/src/containers/ListTable/ListTableWidgets.es.js.map +1 -1
  606. package/dist/shared/src/containers/MoveEntityDialog/MoveEntityDialog.cjs.js.map +1 -1
  607. package/dist/shared/src/containers/MoveEntityDialog/MoveEntityDialog.es.js.map +1 -1
  608. package/dist/shared/src/containers/NewEntity/components/NewEntity.cjs.js +3 -3
  609. package/dist/shared/src/containers/NewEntity/components/NewEntity.cjs.js.map +1 -1
  610. package/dist/shared/src/containers/NewEntity/components/NewEntity.es.js +170 -456
  611. package/dist/shared/src/containers/NewEntity/components/NewEntity.es.js.map +1 -1
  612. package/dist/shared/src/containers/NewEntity/components/TypeEditor.cjs.js.map +1 -1
  613. package/dist/shared/src/containers/NewEntity/components/TypeEditor.es.js.map +1 -1
  614. package/dist/shared/src/containers/NewEntity/context/NewEntityContext.cjs.js +1 -1
  615. package/dist/shared/src/containers/NewEntity/context/NewEntityContext.cjs.js.map +1 -1
  616. package/dist/shared/src/containers/NewEntity/context/NewEntityContext.es.js +117 -311
  617. package/dist/shared/src/containers/NewEntity/context/NewEntityContext.es.js.map +1 -1
  618. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  619. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  620. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +603 -869
  621. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  622. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  623. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  624. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +605 -579
  625. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  626. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
  627. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
  628. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +75 -372
  629. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
  630. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  631. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  632. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +32 -201
  633. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  634. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  635. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  636. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +28 -122
  637. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  638. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.cjs.js +7 -7
  639. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.cjs.js.map +1 -1
  640. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.es.js +35 -131
  641. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.es.js.map +1 -1
  642. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  643. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  644. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +107 -299
  645. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  646. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +5 -5
  647. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  648. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +334 -515
  649. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  650. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
  651. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
  652. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +158 -329
  653. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
  654. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  655. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  656. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +4 -205
  657. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  658. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js +1 -1
  659. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
  660. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js +121 -418
  661. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
  662. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  663. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  664. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +73 -244
  665. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  666. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.cjs.js.map +1 -1
  667. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.es.js +3 -3
  668. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.es.js.map +1 -1
  669. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardSubtasks.cjs.js.map +1 -1
  670. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardSubtasks.es.js.map +1 -1
  671. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardTypes.cjs.js.map +1 -1
  672. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardTypes.es.js.map +1 -1
  673. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.cjs.js +1 -1
  674. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.cjs.js.map +1 -1
  675. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.es.js +83 -179
  676. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.es.js.map +1 -1
  677. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
  678. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  679. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +13 -314
  680. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  681. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  682. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  683. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +60 -231
  684. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  685. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  686. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  687. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +75 -246
  688. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  689. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  690. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  691. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +149 -438
  692. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  693. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  694. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  695. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +25 -196
  696. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  697. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  698. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  699. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +32 -203
  700. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  701. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
  702. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
  703. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +32 -329
  704. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
  705. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  706. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  707. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +174 -371
  708. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  709. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.cjs.js.map +1 -1
  710. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.es.js.map +1 -1
  711. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  712. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  713. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +29 -200
  714. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  715. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  716. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  717. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +36 -201
  718. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  719. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupCounts.cjs.js.map +1 -1
  720. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupCounts.es.js.map +1 -1
  721. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  722. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  723. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +93 -383
  724. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  725. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  726. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  727. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +78 -279
  728. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  729. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  730. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  731. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +31 -229
  732. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  733. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  734. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  735. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +25 -196
  736. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  737. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
  738. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
  739. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +39 -221
  740. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
  741. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js +1 -1
  742. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js.map +1 -1
  743. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js +167 -464
  744. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js.map +1 -1
  745. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  746. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  747. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +41 -212
  748. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  749. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js.map +1 -1
  750. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js.map +1 -1
  751. package/dist/shared/src/containers/ProjectTreeTable/utils/columnIds.cjs.js +2 -0
  752. package/dist/shared/src/containers/ProjectTreeTable/utils/columnIds.cjs.js.map +1 -0
  753. package/dist/shared/src/containers/ProjectTreeTable/utils/columnIds.es.js +45 -0
  754. package/dist/shared/src/containers/ProjectTreeTable/utils/columnIds.es.js.map +1 -0
  755. package/dist/shared/src/containers/ProjectTreeTable/utils/getEntityViewerIds.cjs.js.map +1 -1
  756. package/dist/shared/src/containers/ProjectTreeTable/utils/getEntityViewerIds.es.js.map +1 -1
  757. package/dist/shared/src/containers/ProjectTreeTable/utils/getFolderIdsToQueryFromExpanded.cjs.js.map +1 -1
  758. package/dist/shared/src/containers/ProjectTreeTable/utils/getFolderIdsToQueryFromExpanded.es.js.map +1 -1
  759. package/dist/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.cjs.js.map +1 -1
  760. package/dist/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.es.js.map +1 -1
  761. package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.cjs.js +1 -1
  762. package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.cjs.js.map +1 -1
  763. package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.es.js +37 -21
  764. package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.es.js.map +1 -1
  765. package/dist/shared/src/containers/ProjectTreeTable/utils/getTypeDefaultValue.cjs.js.map +1 -1
  766. package/dist/shared/src/containers/ProjectTreeTable/utils/getTypeDefaultValue.es.js.map +1 -1
  767. package/dist/shared/src/containers/ProjectTreeTable/utils/linksToTableData.cjs.js.map +1 -1
  768. package/dist/shared/src/containers/ProjectTreeTable/utils/linksToTableData.es.js.map +1 -1
  769. package/dist/shared/src/containers/ProjectTreeTable/utils/loadingUtils.cjs.js.map +1 -1
  770. package/dist/shared/src/containers/ProjectTreeTable/utils/loadingUtils.es.js.map +1 -1
  771. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map +1 -1
  772. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
  773. package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.cjs.js.map +1 -1
  774. package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.es.js.map +1 -1
  775. package/dist/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.cjs.js.map +1 -1
  776. package/dist/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.es.js.map +1 -1
  777. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +2 -2
  778. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  779. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +14 -312
  780. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  781. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +6 -2
  782. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  783. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +121 -399
  784. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  785. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js +5 -5
  786. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js.map +1 -1
  787. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js +40 -329
  788. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js.map +1 -1
  789. package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js.map +1 -1
  790. package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.es.js.map +1 -1
  791. package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityWidget.cjs.js +30 -0
  792. package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityWidget.cjs.js.map +1 -0
  793. package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityWidget.es.js +198 -0
  794. package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityWidget.es.js.map +1 -0
  795. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js.map +1 -1
  796. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.es.js.map +1 -1
  797. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js.map +1 -1
  798. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js.map +1 -1
  799. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +3 -3
  800. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  801. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +50 -343
  802. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  803. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js +5 -5
  804. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js.map +1 -1
  805. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js +77 -361
  806. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js.map +1 -1
  807. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  808. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  809. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +28 -199
  810. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  811. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
  812. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
  813. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +36 -330
  814. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
  815. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js +5 -5
  816. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js.map +1 -1
  817. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js +130 -421
  818. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js.map +1 -1
  819. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js +4 -4
  820. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js.map +1 -1
  821. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js +80 -176
  822. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js.map +1 -1
  823. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js +5 -5
  824. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js.map +1 -1
  825. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js +12 -108
  826. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js.map +1 -1
  827. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  828. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  829. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +20 -214
  830. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  831. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  832. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  833. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +231 -524
  834. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  835. package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js +2 -2
  836. package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js.map +1 -1
  837. package/dist/shared/src/containers/Slicer/components/Slicer.es.js +69 -364
  838. package/dist/shared/src/containers/Slicer/components/Slicer.es.js.map +1 -1
  839. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js +2 -2
  840. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js.map +1 -1
  841. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js +18 -315
  842. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js.map +1 -1
  843. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +2 -2
  844. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
  845. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +24 -325
  846. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
  847. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +1 -1
  848. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -1
  849. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +69 -367
  850. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
  851. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js +1 -1
  852. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js.map +1 -1
  853. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js +27 -225
  854. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
  855. package/dist/shared/src/containers/Slicer/hooks/useHierarchyContextMenuItems.cjs.js +1 -1
  856. package/dist/shared/src/containers/Slicer/hooks/useHierarchyContextMenuItems.cjs.js.map +1 -1
  857. package/dist/shared/src/containers/Slicer/hooks/useHierarchyContextMenuItems.es.js +34 -233
  858. package/dist/shared/src/containers/Slicer/hooks/useHierarchyContextMenuItems.es.js.map +1 -1
  859. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js +1 -1
  860. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js.map +1 -1
  861. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js +5 -306
  862. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js.map +1 -1
  863. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js +1 -1
  864. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js.map +1 -1
  865. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js +7 -308
  866. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -1
  867. package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.cjs.js +1 -1
  868. package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.cjs.js.map +1 -1
  869. package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.es.js +11 -311
  870. package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.es.js.map +1 -1
  871. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.cjs.js +1 -1
  872. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.cjs.js.map +1 -1
  873. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.es.js +13 -313
  874. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.es.js.map +1 -1
  875. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.cjs.js +1 -1
  876. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.cjs.js.map +1 -1
  877. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.es.js +34 -335
  878. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.es.js.map +1 -1
  879. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.cjs.js +1 -1
  880. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.cjs.js.map +1 -1
  881. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.es.js +11 -313
  882. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.es.js.map +1 -1
  883. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
  884. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
  885. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +72 -365
  886. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
  887. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -1
  888. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -1
  889. package/dist/shared/src/containers/Slicer/util/createFilterFromSlicer.cjs.js.map +1 -1
  890. package/dist/shared/src/containers/Slicer/util/createFilterFromSlicer.es.js.map +1 -1
  891. package/dist/shared/src/containers/Views/ViewItem/ViewItem.cjs.js +1 -1
  892. package/dist/shared/src/containers/Views/ViewItem/ViewItem.cjs.js.map +1 -1
  893. package/dist/shared/src/containers/Views/ViewItem/ViewItem.es.js +24 -120
  894. package/dist/shared/src/containers/Views/ViewItem/ViewItem.es.js.map +1 -1
  895. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewFormDialogFallback.cjs.js.map +1 -1
  896. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewFormDialogFallback.es.js.map +1 -1
  897. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  898. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  899. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +35 -333
  900. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  901. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
  902. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
  903. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +55 -351
  904. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
  905. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +2 -2
  906. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
  907. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +40 -332
  908. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
  909. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  910. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  911. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +59 -259
  912. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  913. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js +1 -1
  914. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js.map +1 -1
  915. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js +17 -113
  916. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js.map +1 -1
  917. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js +1 -1
  918. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js.map +1 -1
  919. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js +45 -141
  920. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js.map +1 -1
  921. package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.cjs.js.map +1 -1
  922. package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.es.js.map +1 -1
  923. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  924. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  925. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +22 -213
  926. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  927. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -1
  928. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -1
  929. package/dist/shared/src/containers/Views/types.cjs.js.map +1 -1
  930. package/dist/shared/src/containers/Views/types.es.js.map +1 -1
  931. package/dist/shared/src/containers/Views/utils/generateWorkingView.cjs.js.map +1 -1
  932. package/dist/shared/src/containers/Views/utils/generateWorkingView.es.js.map +1 -1
  933. package/dist/shared/src/context/AddonContext.cjs.js.map +1 -1
  934. package/dist/shared/src/context/AddonContext.es.js.map +1 -1
  935. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  936. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  937. package/dist/shared/src/context/AddonProjectContext.es.js +19 -115
  938. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  939. package/dist/shared/src/context/DeleteEntitiesContext.cjs.js +1 -1
  940. package/dist/shared/src/context/DeleteEntitiesContext.cjs.js.map +1 -1
  941. package/dist/shared/src/context/DeleteEntitiesContext.es.js +1 -1
  942. package/dist/shared/src/context/DeleteEntitiesContext.es.js.map +1 -1
  943. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  944. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  945. package/dist/shared/src/context/DetailsPanelContext.es.js +66 -359
  946. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  947. package/dist/shared/src/context/EntityUpdatesContext.cjs.js +1 -1
  948. package/dist/shared/src/context/EntityUpdatesContext.cjs.js.map +1 -1
  949. package/dist/shared/src/context/EntityUpdatesContext.es.js +79 -356
  950. package/dist/shared/src/context/EntityUpdatesContext.es.js.map +1 -1
  951. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  952. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  953. package/dist/shared/src/context/PowerpackContext.es.js +42 -341
  954. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  955. package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
  956. package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
  957. package/dist/shared/src/context/ProjectFoldersContext.es.js +26 -228
  958. package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
  959. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  960. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  961. package/dist/shared/src/context/SubtasksModulesContext.cjs.js +1 -1
  962. package/dist/shared/src/context/SubtasksModulesContext.cjs.js.map +1 -1
  963. package/dist/shared/src/context/SubtasksModulesContext.es.js +23 -321
  964. package/dist/shared/src/context/SubtasksModulesContext.es.js.map +1 -1
  965. package/dist/shared/src/context/ThumbnailUploaderContext.cjs.js +1 -1
  966. package/dist/shared/src/context/ThumbnailUploaderContext.cjs.js.map +1 -1
  967. package/dist/shared/src/context/ThumbnailUploaderContext.es.js +17 -21
  968. package/dist/shared/src/context/ThumbnailUploaderContext.es.js.map +1 -1
  969. package/dist/shared/src/context/UriContext.cjs.js +1 -1
  970. package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
  971. package/dist/shared/src/context/UriContext.es.js +2 -2
  972. package/dist/shared/src/context/UriContext.es.js.map +1 -1
  973. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  974. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  975. package/dist/shared/src/context/WebsocketContext.es.js +28 -226
  976. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  977. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  978. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  979. package/dist/shared/src/hooks/useEntityUpdate.es.js +2 -205
  980. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  981. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
  982. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
  983. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +11 -311
  984. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
  985. package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
  986. package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
  987. package/dist/shared/src/hooks/useHierarchyTable.es.js +30 -330
  988. package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
  989. package/dist/shared/src/hooks/useLoadModules.cjs.js.map +1 -1
  990. package/dist/shared/src/hooks/useLoadModules.es.js.map +1 -1
  991. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js +1 -1
  992. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js.map +1 -1
  993. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js +19 -115
  994. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js.map +1 -1
  995. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  996. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  997. package/dist/shared/src/hooks/useUserProjectConfig.es.js +6 -209
  998. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  999. package/dist/shared/src/util/buildHierarchicalTableRows.cjs.js.map +1 -1
  1000. package/dist/shared/src/util/buildHierarchicalTableRows.es.js.map +1 -1
  1001. package/dist/shared/src/util/checkName.cjs.js.map +1 -1
  1002. package/dist/shared/src/util/checkName.es.js.map +1 -1
  1003. package/dist/shared/src/util/columnConfigConverter.cjs.js +1 -1
  1004. package/dist/shared/src/util/columnConfigConverter.cjs.js.map +1 -1
  1005. package/dist/shared/src/util/columnConfigConverter.es.js +33 -33
  1006. package/dist/shared/src/util/columnConfigConverter.es.js.map +1 -1
  1007. package/dist/shared/src/util/getAttributeIcon.cjs.js +1 -1
  1008. package/dist/shared/src/util/getAttributeIcon.cjs.js.map +1 -1
  1009. package/dist/shared/src/util/getAttributeIcon.es.js +2 -1
  1010. package/dist/shared/src/util/getAttributeIcon.es.js.map +1 -1
  1011. package/dist/shared/src/util/getBundleMode.cjs.js +1 -1
  1012. package/dist/shared/src/util/getBundleMode.cjs.js.map +1 -1
  1013. package/dist/shared/src/util/getBundleMode.es.js +16 -112
  1014. package/dist/shared/src/util/getBundleMode.es.js.map +1 -1
  1015. package/dist/shared/src/util/getGroupByDataType.cjs.js.map +1 -1
  1016. package/dist/shared/src/util/getGroupByDataType.es.js.map +1 -1
  1017. package/dist/shared/src/util/getPriorityOptions.cjs.js.map +1 -1
  1018. package/dist/shared/src/util/getPriorityOptions.es.js.map +1 -1
  1019. package/dist/shared/src/util/iconUtils.cjs.js.map +1 -1
  1020. package/dist/shared/src/util/iconUtils.es.js.map +1 -1
  1021. package/dist/shared/src/util/mentionTypeOptions.cjs.js +2 -0
  1022. package/dist/shared/src/util/mentionTypeOptions.cjs.js.map +1 -0
  1023. package/dist/shared/src/util/mentionTypeOptions.es.js +16 -0
  1024. package/dist/shared/src/util/mentionTypeOptions.es.js.map +1 -0
  1025. package/dist/shared/src/util/parseFilename.cjs.js +2 -0
  1026. package/dist/shared/src/util/parseFilename.cjs.js.map +1 -0
  1027. package/dist/shared/src/util/parseFilename.es.js +8 -0
  1028. package/dist/shared/src/util/parseFilename.es.js.map +1 -0
  1029. package/dist/shared/src/util/realtimeUpdatesUtils.cjs.js +1 -1
  1030. package/dist/shared/src/util/realtimeUpdatesUtils.cjs.js.map +1 -1
  1031. package/dist/shared/src/util/realtimeUpdatesUtils.es.js +33 -27
  1032. package/dist/shared/src/util/realtimeUpdatesUtils.es.js.map +1 -1
  1033. package/dist/shared/src/util/uriUtils.cjs.js.map +1 -1
  1034. package/dist/shared/src/util/uriUtils.es.js.map +1 -1
  1035. package/dist/types/api/base/index.d.ts +1 -1
  1036. package/dist/types/api/generated/graphql.d.ts +50 -4
  1037. package/dist/types/api/generated/graphqlLinks.d.ts +15 -2
  1038. package/dist/types/api/generated/views.d.ts +13 -4
  1039. package/dist/types/api/queries/activities/getActivities.d.ts +28 -2
  1040. package/dist/types/api/queries/activities/getCategories.d.ts +1 -1
  1041. package/dist/types/api/queries/activities/util/activityRealtimeHandler.d.ts +1 -4
  1042. package/dist/types/api/queries/entities/getEntity.d.ts +14 -1
  1043. package/dist/types/api/queries/entities/getEntityPanel.d.ts +14 -1
  1044. package/dist/types/api/queries/entities/updateEntity.d.ts +14 -1
  1045. package/dist/types/api/queries/entityLists/getLists.d.ts +317 -312
  1046. package/dist/types/api/queries/entityLists/types.d.ts +7 -0
  1047. package/dist/types/api/queries/overview/getOverview.d.ts +49 -20
  1048. package/dist/types/api/queries/overview/patchVersions.d.ts +9 -0
  1049. package/dist/types/api/queries/project/getProject.d.ts +74 -61
  1050. package/dist/types/api/queries/system/getSystem.d.ts +1 -1
  1051. package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +14 -1
  1052. package/dist/types/api/queries/users/getUsers.d.ts +14 -1
  1053. package/dist/types/api/queries/versions/getVersionsProducts.d.ts +159 -2
  1054. package/dist/types/api/queries/views/getViews.d.ts +1 -1
  1055. package/dist/types/components/DetailsPanelDetails/DetailsSection.d.ts +1 -1
  1056. package/dist/types/components/EntityIcon/EntityIcon.d.ts +4 -4
  1057. package/dist/types/components/Menu/Menu.d.ts +1 -1
  1058. package/dist/types/components/Menu/MenuList.d.ts +1 -1
  1059. package/dist/types/components/Powerpack/PowerpackButton.d.ts +1 -1
  1060. package/dist/types/components/ProjectTableSettings/ColumnsSettings.d.ts +10 -2
  1061. package/dist/types/components/ProjectTableSettings/ProjectTableSettings.d.ts +2 -2
  1062. package/dist/types/components/ProjectTableSettings/TableSettingsFallback.d.ts +1 -1
  1063. package/dist/types/components/ProjectTableSettings/index.d.ts +1 -0
  1064. package/dist/types/components/RemotePage/ProjectPageRemote.d.ts +1 -1
  1065. package/dist/types/components/RemotePage/RemotePageWrapper.d.ts +5 -3
  1066. package/dist/types/components/RenameForm/RenameForm.d.ts +1 -1
  1067. package/dist/types/components/ReviewablesList/SortableReviewableCard.d.ts +1 -1
  1068. package/dist/types/components/ReviewablesList/useReviewablesUpload.d.ts +2 -2
  1069. package/dist/types/components/ReviewablesSelector/Card.d.ts +1 -1
  1070. package/dist/types/components/SearchFilter/filterScopeRegistry.d.ts +1 -1
  1071. package/dist/types/components/SearchFilter/useBuildFilterOptions.d.ts +6 -3
  1072. package/dist/types/components/SettingsPanel/SettingsPanel.d.ts +1 -1
  1073. package/dist/types/components/SettingsPanel/SettingsPanelItemTemplate.d.ts +1 -0
  1074. package/dist/types/components/SyncButton/SyncButton.d.ts +1 -1
  1075. package/dist/types/components/Thumbnail/StackedThumbnails.d.ts +1 -2
  1076. package/dist/types/components/index.d.ts +1 -0
  1077. package/dist/types/config/plannerFeatures.d.ts +1 -1
  1078. package/dist/types/config/powerpackFeatures.d.ts +1 -1
  1079. package/dist/types/containers/Actions/Actions.d.ts +2 -2
  1080. package/dist/types/containers/ContextMenu/ContextMenuItem.d.ts +1 -1
  1081. package/dist/types/containers/ContextMenu/useCreateContextMenu.d.ts +1 -1
  1082. package/dist/types/containers/DetailsPanel/DetailsPanel.d.ts +1 -1
  1083. package/dist/types/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.d.ts +2 -2
  1084. package/dist/types/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.d.ts +1 -1
  1085. package/dist/types/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useMenuOptions.d.ts +2 -2
  1086. package/dist/types/containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.d.ts +1 -1
  1087. package/dist/types/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.d.ts +3 -3
  1088. package/dist/types/containers/DetailsPanel/containers/DetailsPanelSubtasks.d.ts +1 -1
  1089. package/dist/types/containers/DetailsPanel/helpers/buildEntityTypeIcons.d.ts +1 -1
  1090. package/dist/types/containers/DetailsPanel/helpers/getEntityPathData.d.ts +1 -1
  1091. package/dist/types/containers/DetailsPanel/helpers/mergeProjectInfo.d.ts +1 -1
  1092. package/dist/types/containers/DetailsPanel/hooks/useGetEntityPath.d.ts +1 -1
  1093. package/dist/types/containers/EntityPickerDialog/components/EntityTypeTable.d.ts +1 -1
  1094. package/dist/types/containers/EntityPickerDialog/hooks/useGetEntityPickerData.d.ts +1 -1
  1095. package/dist/types/containers/EntityPickerDialog/util/buildEntityPickerTableData.d.ts +1 -1
  1096. package/dist/types/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.d.ts +1 -1
  1097. package/dist/types/containers/Feed/components/ActivityReference/ActivityReference.styled.d.ts +2 -2
  1098. package/dist/types/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.d.ts +1 -1
  1099. package/dist/types/containers/Feed/components/ActivityVersions/ActivityVersions.styled.d.ts +1 -1
  1100. package/dist/types/containers/Feed/components/CommentInput/modules/index.d.ts +1 -1
  1101. package/dist/types/containers/Feed/components/CommentInput/quillFormats.d.ts +1 -0
  1102. package/dist/types/containers/Feed/components/CommentInput/types.d.ts +1 -12
  1103. package/dist/types/containers/Feed/components/FileUploadCard/FileUploadCard.d.ts +1 -1
  1104. package/dist/types/containers/Feed/context/FeedContext.d.ts +1 -1
  1105. package/dist/types/containers/Feed/hooks/useLastVersionReview.d.ts +1 -1
  1106. package/dist/types/containers/Feed/mentionHelpers/getMentionTasks.d.ts +1 -1
  1107. package/dist/types/containers/Feed/mentionHelpers/getMentionUsers.d.ts +1 -1
  1108. package/dist/types/containers/Feed/mentionHelpers/getMentionVersions.d.ts +2 -2
  1109. package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +4 -2
  1110. package/dist/types/containers/ProjectTreeTable/buildTreeTableColumns.d.ts +22 -1
  1111. package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +4 -3
  1112. package/dist/types/containers/ProjectTreeTable/hooks/useCellContextMenu.d.ts +1 -1
  1113. package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +4 -5
  1114. package/dist/types/containers/ProjectTreeTable/hooks/useFolderRelationships.d.ts +1 -1
  1115. package/dist/types/containers/ProjectTreeTable/hooks/useGetEntityTypeData.d.ts +2 -2
  1116. package/dist/types/containers/ProjectTreeTable/hooks/useGroupCounts.d.ts +1 -0
  1117. package/dist/types/containers/ProjectTreeTable/hooks/useMoveEntities.d.ts +1 -1
  1118. package/dist/types/containers/ProjectTreeTable/hooks/usePasteLinks.d.ts +1 -1
  1119. package/dist/types/containers/ProjectTreeTable/hooks/useQueryFilters.d.ts +1 -1
  1120. package/dist/types/containers/ProjectTreeTable/types/index.d.ts +1 -1
  1121. package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +6 -5
  1122. package/dist/types/containers/ProjectTreeTable/types/table.d.ts +3 -0
  1123. package/dist/types/containers/ProjectTreeTable/utils/columnIds.d.ts +10 -0
  1124. package/dist/types/containers/ProjectTreeTable/utils/getEntityViewerIds.d.ts +1 -1
  1125. package/dist/types/containers/ProjectTreeTable/utils/getFolderIdsToQueryFromExpanded.d.ts +1 -1
  1126. package/dist/types/containers/ProjectTreeTable/utils/getTableFieldOptions.d.ts +2 -1
  1127. package/dist/types/containers/ProjectTreeTable/utils/index.d.ts +1 -0
  1128. package/dist/types/containers/ProjectTreeTable/utils/linksToTableData.d.ts +1 -1
  1129. package/dist/types/containers/ProjectTreeTable/utils/sanitizeQueryFilter.d.ts +1 -1
  1130. package/dist/types/containers/ProjectTreeTable/widgets/EntityWidget.d.ts +15 -0
  1131. package/dist/types/containers/ProjectTreeTable/widgets/LinksWidget.d.ts +1 -1
  1132. package/dist/types/containers/ProjectTreeTable/widgets/NameWidget.d.ts +1 -1
  1133. package/dist/types/containers/ProjectTreeTable/widgets/TextWidget.d.ts +2 -1
  1134. package/dist/types/containers/ProjectTreeTable/widgets/index.d.ts +1 -0
  1135. package/dist/types/containers/Slicer/components/Slicer.d.ts +2 -2
  1136. package/dist/types/containers/Slicer/components/SlicerDropdownFallback.d.ts +1 -1
  1137. package/dist/types/containers/Slicer/context/SlicerContext.d.ts +3 -4
  1138. package/dist/types/containers/Slicer/hooks/useEntityListsSlice.d.ts +1 -1
  1139. package/dist/types/containers/Slicer/hooks/useHierarchyContextMenuItems.d.ts +3 -3
  1140. package/dist/types/containers/Slicer/hooks/useProjectAnatomySlices.d.ts +1 -1
  1141. package/dist/types/containers/Slicer/hooks/useSlicerCounts.d.ts +1 -1
  1142. package/dist/types/containers/Slicer/hooks/useUsersTable.d.ts +1 -1
  1143. package/dist/types/containers/Slicer/types.d.ts +1 -1
  1144. package/dist/types/containers/Views/hooks/pages/useListsViewSettings.d.ts +1 -1
  1145. package/dist/types/containers/Views/hooks/pages/useOverviewViewSettings.d.ts +1 -1
  1146. package/dist/types/containers/Views/types.d.ts +1 -1
  1147. package/dist/types/context/AddonContext.d.ts +1 -1
  1148. package/dist/types/context/AddonProjectContext.d.ts +2 -2
  1149. package/dist/types/context/DetailsPanelContext.d.ts +2 -2
  1150. package/dist/types/context/SubtasksModulesContext.d.ts +1 -1
  1151. package/dist/types/hooks/useHierarchyTable.d.ts +1 -1
  1152. package/dist/types/util/buildHierarchicalTableRows.d.ts +1 -1
  1153. package/dist/types/util/columnConfigConverter.d.ts +1 -1
  1154. package/dist/types/util/getBundleMode.d.ts +1 -1
  1155. package/dist/types/util/getGroupByDataType.d.ts +1 -1
  1156. package/dist/types/util/index.d.ts +2 -0
  1157. package/dist/types/util/mentionTypeOptions.d.ts +12 -0
  1158. package/dist/types/util/parseFilename.d.ts +1 -0
  1159. package/dist/types/util/realtimeUpdatesUtils.d.ts +6 -3
  1160. package/dist/types/util/uriUtils.d.ts +1 -1
  1161. package/dist/util.cjs.js +1 -1
  1162. package/dist/util.es.js +52 -47
  1163. package/dist/util.es.js.map +1 -1
  1164. package/package.json +4 -4
  1165. package/dist/shared/src/components/ThumbnailSimple/index.cjs.js +0 -2
  1166. package/dist/shared/src/components/ThumbnailSimple/index.cjs.js.map +0 -1
  1167. package/dist/shared/src/components/ThumbnailSimple/index.es.js +0 -6
  1168. package/dist/shared/src/components/ThumbnailSimple/index.es.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"getEntityLinks.es.js","sources":["../../../../../../src/api/queries/links/getEntityLinks.ts"],"sourcesContent":["import { FetchBaseQueryError } from '@reduxjs/toolkit/query'\nimport {\n GetFoldersLinksQuery,\n GetTasksLinksQuery,\n GetProductsLinksQuery,\n GetVersionsLinksQuery,\n GetRepresentationsLinksQuery,\n GetWorkfilesLinksQuery,\n gqlLinksApi,\n foldersApi,\n} from '@shared/api/generated'\nimport { formatEntityLabel } from './utils/formatEntityLinks'\nimport { toast } from 'react-toastify'\nimport { PubSub } from '@shared/util'\n\n/**\n * Custom queryFn for fetching entity links with optimized caching behavior.\n *\n * Key features:\n * 1. Single cache per project and entity type - different entityIds combinations don't create new caches\n * 2. Skips fetching entities that are already cached\n * 3. Force refetch when entityIds change\n * 4. Merges new entities into cache without duplicates\n * 5. Supports all entity types: folders, tasks, products, versions, representations, workfiles\n */\n\n// Define the arguments for the query\nexport type GetEntityLinksArgs = {\n projectName: string\n entityIds: string[]\n entityType: 'folder' | 'task' | 'product' | 'version' | 'representation' | 'workfile'\n}\n\n// Define link types for each entity\nexport type FolderLink =\n GetFoldersLinksQuery['project']['folders']['edges'][0]['node']['links']['edges'][0]\nexport type TaskLink =\n GetTasksLinksQuery['project']['tasks']['edges'][0]['node']['links']['edges'][0]\nexport type ProductLink =\n GetProductsLinksQuery['project']['products']['edges'][0]['node']['links']['edges'][0]\nexport type VersionLink =\n GetVersionsLinksQuery['project']['versions']['edges'][0]['node']['links']['edges'][0]\nexport type RepresentationLink =\n GetRepresentationsLinksQuery['project']['representations']['edges'][0]['node']['links']['edges'][0]\nexport type WorkfileLink =\n GetWorkfilesLinksQuery['project']['workfiles']['edges'][0]['node']['links']['edges'][0]\n\nexport type EntityLinkQuery =\n | FolderLink\n | TaskLink\n | ProductLink\n | VersionLink\n | RepresentationLink\n | WorkfileLink\nexport type EntityLink = Pick<EntityLinkQuery, 'direction' | 'entityType' | 'id' | 'linkType'> & {\n node:\n | (EntityLinkQuery['node'] & {\n name: string\n id: string\n label?: string | null\n parents: string[]\n subType: string | undefined\n })\n | null\n isRestricted?: boolean // flag to indicate if this link is restricted\n}\n\n// Define the result type for the query - simplified without edges wrapper\nexport type EntityWithLinks = {\n id: string\n links: EntityLink[]\n}\n\nexport type GetEntityLinksResult = EntityWithLinks[]\n\n// Map entity types to their corresponding GraphQL endpoints\nconst entityEndpoints = {\n folder: 'GetFoldersLinks',\n task: 'GetTasksLinks',\n product: 'GetProductsLinks',\n version: 'GetVersionsLinks',\n representation: 'GetRepresentationsLinks',\n workfile: 'GetWorkfilesLinks',\n} as const\n\n// Map entity types to their result path in the GraphQL response\nconst entityResultPaths = {\n folder: 'folders',\n task: 'tasks',\n product: 'products',\n version: 'versions',\n representation: 'representations',\n workfile: 'workfiles',\n} as const\n\nconst injectedQueries = foldersApi.injectEndpoints({\n endpoints: (build) => ({\n getEntityLinks: build.query<GetEntityLinksResult, GetEntityLinksArgs>({\n queryFn: async (\n { projectName, entityIds, entityType },\n { getState, dispatch, queryCacheKey, forced },\n ) => {\n try {\n // Get current state to access cached data\n const state = getState() as any\n const cacheKey = JSON.stringify({ projectName, entityType })\n\n // Access the cache entry for this project and entity type\n const cacheEntry =\n state.restApi?.queries?.[queryCacheKey || `getEntityLinks(${cacheKey})`]\n const cachedData = cacheEntry?.data || []\n\n // 1. When fetching new data for entityIds, we should skip entities that are already in the cache.\n const cachedEntityIds = new Set(cachedData.map((entity: EntityWithLinks) => entity.id))\n const entityIdsToFetch = entityIds.filter((id) => !cachedEntityIds?.has(id) || forced)\n\n // If all entities are already cached, return the cached data\n if (entityIdsToFetch.length === 0) {\n return { data: cachedData }\n }\n\n // Get the appropriate endpoint and parameter names\n const endpoint = entityEndpoints[entityType]\n const resultPath = entityResultPaths[entityType]\n\n // Fetch only the entities that aren't already cached\n const result = await dispatch(\n (gqlLinksApi.endpoints as any)[endpoint].initiate(\n { projectName, entityIds: entityIdsToFetch },\n { forceRefetch: true },\n ),\n ).unwrap()\n\n const newEntities =\n result.project?.[resultPath]?.edges?.map(({ node }: { node: any }) => {\n // Log restricted links\n const restrictedLinks =\n node.links.edges?.filter((e: EntityLinkQuery | null) => !e?.node) || []\n if (restrictedLinks.length > 0) {\n console.log(\n `[RESTRICTED LINKS] Entity ${node.id} (${node.name}) has ${restrictedLinks.length} restricted link(s):`,\n restrictedLinks.map((link: any) => ({\n linkId: link?.id,\n linkType: link?.linkType,\n direction: link?.direction,\n entityType: link?.entityType,\n nodeIsNull: !link?.node,\n })),\n )\n }\n\n return {\n id: node.id,\n links:\n node.links.edges?.map((linkEdge: EntityLinkQuery | null) => {\n if (!linkEdge?.node) {\n // Restricted link - node is null\n return {\n ...linkEdge,\n node: null,\n isRestricted: true,\n } as EntityLink\n }\n // Normal link\n return {\n ...linkEdge,\n node: {\n id: linkEdge.node.id,\n name: linkEdge.node.name,\n label: formatEntityLabel(linkEdge.node),\n parents: linkEdge.node.parents || [],\n subType: 'subType' in linkEdge.node ? linkEdge.node.subType : undefined,\n },\n isRestricted: false,\n } as EntityLink\n }) || [], // Flatten the edges structure\n }\n }) || []\n\n // Return the new entities - the merge function will handle combining with existing cache\n return { data: newEntities }\n } catch (error: any) {\n console.error(`Error in getEntityLinks queryFn for ${entityType}:`, error)\n toast.error(`Error fetching ${entityType} links`)\n return { error: { status: 'FETCH_ERROR', error: error.message } as FetchBaseQueryError }\n }\n },\n // 2. We should not create new caches when the entityIds argument changes.\n serializeQueryArgs: ({ queryArgs }) => {\n // Use only projectName and entityType for the cache key, ignoring entityIds\n return { projectName: queryArgs.projectName, entityType: queryArgs.entityType }\n },\n // 3. We should force a refetch every time the entityIds changes.\n forceRefetch: ({ currentArg, previousArg }) => {\n // Force refetch if entityIds array is different\n if (!currentArg || !previousArg) return true\n\n // Compare arrays by converting to sets\n const currentIds = new Set(currentArg.entityIds)\n const previousIds = new Set(previousArg.entityIds)\n\n if (currentIds.size !== previousIds.size) return true\n\n // Check if any IDs are different\n for (const id of currentIds) {\n if (!previousIds.has(id)) return true\n }\n\n return false\n },\n // 4. We should merge new entities into the cache ensuring there are no duplicates.\n merge: (currentCache, newItems) => {\n if (!currentCache) return newItems\n\n const cacheMap = new Map(currentCache.map((item) => [item.id, item]))\n for (const newItem of newItems) {\n cacheMap.set(newItem.id, newItem) // Overwrite if exists, add if not\n }\n // Update currentCache in-place\n currentCache.length = 0\n currentCache.push(...cacheMap.values())\n },\n // Provide tags for potential invalidation\n providesTags: (result, error, arg) =>\n result\n ? [\n ...result.flatMap((entity) =>\n entity.links\n .filter((link) => link.node !== null)\n .map((link) => ({ type: 'link', id: link.node!.id as string })),\n ),\n { type: 'link', id: `${arg.projectName}-${arg.entityType}` },\n ]\n : [{ type: 'link', id: `${arg.projectName}-${arg.entityType}` }],\n // Subscribe to link.created and link.deleted WebSocket events\n async onCacheEntryAdded(\n { projectName, entityType },\n { cacheDataLoaded, cacheEntryRemoved, updateCachedData, dispatch },\n ) {\n let token: any\n const pendingEntityIds = new Set<string>()\n const MAX_BATCH = 100\n const INTERVAL = 500\n let scheduled = false\n\n const schedule = () => {\n if (scheduled) return\n scheduled = true\n setTimeout(flush, INTERVAL)\n }\n\n const flush = async () => {\n scheduled = false\n if (!pendingEntityIds.size) return\n const batchIds = Array.from(pendingEntityIds).slice(0, MAX_BATCH)\n batchIds.forEach((id) => pendingEntityIds.delete(id))\n\n try {\n // Get the appropriate endpoint and parameter names\n const endpoint = entityEndpoints[entityType]\n const resultPath = entityResultPaths[entityType]\n\n // Fetch fresh data for the affected entities\n const result = await dispatch(\n (gqlLinksApi.endpoints as any)[endpoint].initiate(\n { projectName, entityIds: batchIds },\n { forceRefetch: true },\n ),\n ).unwrap()\n\n const updatedEntities =\n result.project?.[resultPath]?.edges?.map(({ node }: { node: any }) => {\n return {\n id: node.id,\n links:\n node.links.edges?.map((linkEdge: EntityLinkQuery | null) => {\n if (!linkEdge?.node) {\n // Restricted link - node is null\n return {\n ...linkEdge,\n node: null,\n isRestricted: true,\n } as EntityLink\n }\n // Normal link\n return {\n ...linkEdge,\n node: {\n id: linkEdge.node.id,\n name: linkEdge.node.name,\n label: formatEntityLabel(linkEdge.node),\n parents: linkEdge.node.parents || [],\n subType: 'subType' in linkEdge.node ? linkEdge.node.subType : undefined,\n },\n isRestricted: false,\n } as EntityLink\n }) || [],\n }\n }) || []\n\n updateCachedData((draft: EntityWithLinks[]) => {\n for (const updatedEntity of updatedEntities) {\n const idx = draft.findIndex((entity) => entity.id === updatedEntity.id)\n if (idx > -1) {\n // Update existing entity's links\n draft[idx] = updatedEntity\n } else {\n // Add new entity if not in cache\n draft.push(updatedEntity)\n }\n }\n })\n } catch (err) {\n console.error('Realtime link batch update failed', err)\n } finally {\n if (pendingEntityIds.size) schedule()\n }\n }\n\n try {\n await cacheDataLoaded\n\n const handlePubSub = async (_topic: string, message: any) => {\n // Only react to link.created and link.deleted events for this project\n if (!_topic.startsWith('link.created') && !_topic.startsWith('link.deleted')) return\n if (message?.project !== projectName) return\n\n // Link events have inputId and outputId in the summary (both entities affected by the link)\n const inputId = message?.summary?.inputId\n const outputId = message?.summary?.outputId\n if (!inputId && !outputId) return\n\n // Add both entities to pending list since both are affected by the link change\n if (inputId) pendingEntityIds.add(inputId)\n if (outputId) pendingEntityIds.add(outputId)\n schedule()\n }\n\n // Subscribe to link events\n // NOTE: backend emits topics like 'link.created' and 'link.deleted'.\n // PubSub supports prefix matching when subscribing.\n token = PubSub.subscribe('link', handlePubSub)\n } catch (e) {\n // cache entry removed before loaded - ignore\n }\n\n await cacheEntryRemoved\n if (token) PubSub.unsubscribe(token)\n },\n }),\n }),\n})\n\nexport const { useGetEntityLinksQuery } = injectedQueries\nexport { injectedQueries as entityLinksApi }\n"],"names":["entityEndpoints","entityResultPaths","injectedQueries","foldersApi","build","projectName","entityIds","entityType","getState","dispatch","queryCacheKey","forced","state","cacheKey","cachedData","cachedEntityIds","entity","entityIdsToFetch","id","endpoint","resultPath","gqlLinksApi","node","restrictedLinks","e","link","linkEdge","formatEntityLabel","error","toast","queryArgs","currentArg","previousArg","currentIds","previousIds","currentCache","newItems","cacheMap","item","newItem","result","arg","cacheDataLoaded","cacheEntryRemoved","updateCachedData","token","pendingEntityIds","MAX_BATCH","INTERVAL","scheduled","schedule","flush","batchIds","updatedEntities","draft","updatedEntity","idx","err","handlePubSub","_topic","message","inputId","outputId","PubSub","useGetEntityLinksQuery"],"mappings":"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"}
1
+ {"version":3,"file":"getEntityLinks.es.js","sources":["../../../../../../src/api/queries/links/getEntityLinks.ts"],"sourcesContent":["import { FetchBaseQueryError } from '@reduxjs/toolkit/query'\nimport {\n GetFoldersLinksQuery,\n GetTasksLinksQuery,\n GetProductsLinksQuery,\n GetVersionsLinksQuery,\n GetRepresentationsLinksQuery,\n GetWorkfilesLinksQuery,\n gqlLinksApi,\n foldersApi,\n} from '@shared/api/generated'\nimport { formatEntityLabel } from './utils/formatEntityLinks'\nimport { toast } from 'react-toastify'\nimport { createRealtimeBatcher, PubSub, waitForRealtimeJitter } from '@shared/util'\n\n/**\n * Custom queryFn for fetching entity links with optimized caching behavior.\n *\n * Key features:\n * 1. Single cache per project and entity type - different entityIds combinations don't create new caches\n * 2. Skips fetching entities that are already cached\n * 3. Force refetch when entityIds change\n * 4. Merges new entities into cache without duplicates\n * 5. Supports all entity types: folders, tasks, products, versions, representations, workfiles\n */\n\n// Define the arguments for the query\nexport type GetEntityLinksArgs = {\n projectName: string\n entityIds: string[]\n entityType: 'folder' | 'task' | 'product' | 'version' | 'representation' | 'workfile'\n}\n\n// Define link types for each entity\nexport type FolderLink =\n GetFoldersLinksQuery['project']['folders']['edges'][0]['node']['links']['edges'][0]\nexport type TaskLink =\n GetTasksLinksQuery['project']['tasks']['edges'][0]['node']['links']['edges'][0]\nexport type ProductLink =\n GetProductsLinksQuery['project']['products']['edges'][0]['node']['links']['edges'][0]\nexport type VersionLink =\n GetVersionsLinksQuery['project']['versions']['edges'][0]['node']['links']['edges'][0]\nexport type RepresentationLink =\n GetRepresentationsLinksQuery['project']['representations']['edges'][0]['node']['links']['edges'][0]\nexport type WorkfileLink =\n GetWorkfilesLinksQuery['project']['workfiles']['edges'][0]['node']['links']['edges'][0]\n\nexport type EntityLinkQuery =\n | FolderLink\n | TaskLink\n | ProductLink\n | VersionLink\n | RepresentationLink\n | WorkfileLink\nexport type EntityLink = Pick<EntityLinkQuery, 'direction' | 'entityType' | 'id' | 'linkType'> & {\n node:\n | (EntityLinkQuery['node'] & {\n name: string\n id: string\n label?: string | null\n parents: string[]\n subType: string | undefined\n })\n | null\n isRestricted?: boolean // flag to indicate if this link is restricted\n}\n\n// Define the result type for the query - simplified without edges wrapper\nexport type EntityWithLinks = {\n id: string\n links: EntityLink[]\n}\n\nexport type GetEntityLinksResult = EntityWithLinks[]\n\n// Map entity types to their corresponding GraphQL endpoints\nconst entityEndpoints = {\n folder: 'GetFoldersLinks',\n task: 'GetTasksLinks',\n product: 'GetProductsLinks',\n version: 'GetVersionsLinks',\n representation: 'GetRepresentationsLinks',\n workfile: 'GetWorkfilesLinks',\n} as const\n\n// Map entity types to their result path in the GraphQL response\nconst entityResultPaths = {\n folder: 'folders',\n task: 'tasks',\n product: 'products',\n version: 'versions',\n representation: 'representations',\n workfile: 'workfiles',\n} as const\n\nconst injectedQueries = foldersApi.injectEndpoints({\n endpoints: (build) => ({\n getEntityLinks: build.query<GetEntityLinksResult, GetEntityLinksArgs>({\n queryFn: async (\n { projectName, entityIds, entityType },\n { getState, dispatch, queryCacheKey, forced },\n ) => {\n try {\n // Get current state to access cached data\n const state = getState() as any\n const cacheKey = JSON.stringify({ projectName, entityType })\n\n // Access the cache entry for this project and entity type\n const cacheEntry =\n state.restApi?.queries?.[queryCacheKey || `getEntityLinks(${cacheKey})`]\n const cachedData = cacheEntry?.data || []\n\n // 1. When fetching new data for entityIds, we should skip entities that are already in the cache.\n const cachedEntityIds = new Set(cachedData.map((entity: EntityWithLinks) => entity.id))\n const entityIdsToFetch = entityIds.filter((id) => !cachedEntityIds?.has(id) || forced)\n\n // If all entities are already cached, return the cached data\n if (entityIdsToFetch.length === 0) {\n return { data: cachedData }\n }\n\n // Get the appropriate endpoint and parameter names\n const endpoint = entityEndpoints[entityType]\n const resultPath = entityResultPaths[entityType]\n\n // Fetch only the entities that aren't already cached\n const result = await dispatch(\n (gqlLinksApi.endpoints as any)[endpoint].initiate(\n { projectName, entityIds: entityIdsToFetch },\n { forceRefetch: true },\n ),\n ).unwrap()\n\n const newEntities =\n result.project?.[resultPath]?.edges?.map(({ node }: { node: any }) => {\n // Log restricted links\n const restrictedLinks =\n node.links.edges?.filter((e: EntityLinkQuery | null) => !e?.node) || []\n if (restrictedLinks.length > 0) {\n console.log(\n `[RESTRICTED LINKS] Entity ${node.id} (${node.name}) has ${restrictedLinks.length} restricted link(s):`,\n restrictedLinks.map((link: any) => ({\n linkId: link?.id,\n linkType: link?.linkType,\n direction: link?.direction,\n entityType: link?.entityType,\n nodeIsNull: !link?.node,\n })),\n )\n }\n\n return {\n id: node.id,\n links:\n node.links.edges?.map((linkEdge: EntityLinkQuery | null) => {\n if (!linkEdge?.node) {\n // Restricted link - node is null\n return {\n ...linkEdge,\n node: null,\n isRestricted: true,\n } as EntityLink\n }\n // Normal link\n return {\n ...linkEdge,\n node: {\n id: linkEdge.node.id,\n name: linkEdge.node.name,\n label: formatEntityLabel(linkEdge.node),\n parents: linkEdge.node.parents || [],\n subType: 'subType' in linkEdge.node ? linkEdge.node.subType : undefined,\n },\n isRestricted: false,\n } as EntityLink\n }) || [], // Flatten the edges structure\n }\n }) || []\n\n // Return the new entities - the merge function will handle combining with existing cache\n return { data: newEntities }\n } catch (error: any) {\n console.error(`Error in getEntityLinks queryFn for ${entityType}:`, error)\n toast.error(`Error fetching ${entityType} links`)\n return { error: { status: 'FETCH_ERROR', error: error.message } as FetchBaseQueryError }\n }\n },\n // 2. We should not create new caches when the entityIds argument changes.\n serializeQueryArgs: ({ queryArgs }) => {\n // Use only projectName and entityType for the cache key, ignoring entityIds\n return { projectName: queryArgs.projectName, entityType: queryArgs.entityType }\n },\n // 3. We should force a refetch every time the entityIds changes.\n forceRefetch: ({ currentArg, previousArg }) => {\n // Force refetch if entityIds array is different\n if (!currentArg || !previousArg) return true\n\n // Compare arrays by converting to sets\n const currentIds = new Set(currentArg.entityIds)\n const previousIds = new Set(previousArg.entityIds)\n\n if (currentIds.size !== previousIds.size) return true\n\n // Check if any IDs are different\n for (const id of currentIds) {\n if (!previousIds.has(id)) return true\n }\n\n return false\n },\n // 4. We should merge new entities into the cache ensuring there are no duplicates.\n merge: (currentCache, newItems) => {\n if (!currentCache) return newItems\n\n const cacheMap = new Map(currentCache.map((item) => [item.id, item]))\n for (const newItem of newItems) {\n cacheMap.set(newItem.id, newItem) // Overwrite if exists, add if not\n }\n // Update currentCache in-place\n currentCache.length = 0\n currentCache.push(...cacheMap.values())\n },\n // Provide tags for potential invalidation\n providesTags: (result, error, arg) =>\n result\n ? [\n ...result.flatMap((entity) =>\n entity.links\n .filter((link) => link.node !== null)\n .map((link) => ({ type: 'link', id: link.node!.id as string })),\n ),\n { type: 'link', id: `${arg.projectName}-${arg.entityType}` },\n ]\n : [{ type: 'link', id: `${arg.projectName}-${arg.entityType}` }],\n // Subscribe to link.created and link.deleted WebSocket events\n async onCacheEntryAdded(\n { projectName, entityType },\n { cacheDataLoaded, cacheEntryRemoved, updateCachedData, dispatch },\n ) {\n let token: any\n const batcher = createRealtimeBatcher(\n async (items: { entityId: string }[], isActive) => {\n const endpoint = entityEndpoints[entityType]\n const resultPath = entityResultPaths[entityType]\n\n try {\n await waitForRealtimeJitter()\n const result = await dispatch(\n (gqlLinksApi.endpoints as any)[endpoint].initiate(\n { projectName, entityIds: items.map(({ entityId }) => entityId) },\n { forceRefetch: true },\n ),\n ).unwrap()\n\n if (!isActive()) return\n\n const updatedEntities =\n result.project?.[resultPath]?.edges?.map(({ node }: { node: any }) => {\n return {\n id: node.id,\n links:\n node.links.edges?.map((linkEdge: EntityLinkQuery | null) => {\n if (!linkEdge?.node) {\n return {\n ...linkEdge,\n node: null,\n isRestricted: true,\n } as EntityLink\n }\n return {\n ...linkEdge,\n node: {\n id: linkEdge.node.id,\n name: linkEdge.node.name,\n label: formatEntityLabel(linkEdge.node),\n parents: linkEdge.node.parents || [],\n subType: 'subType' in linkEdge.node ? linkEdge.node.subType : undefined,\n },\n isRestricted: false,\n } as EntityLink\n }) || [],\n }\n }) || []\n\n updateCachedData((draft: EntityWithLinks[]) => {\n for (const updatedEntity of updatedEntities) {\n const idx = draft.findIndex((entity) => entity.id === updatedEntity.id)\n if (idx > -1) draft[idx] = updatedEntity\n else draft.push(updatedEntity)\n }\n })\n } catch (err) {\n console.error('Realtime link batch update failed', err)\n }\n },\n ({ entityId }) => entityId,\n )\n\n try {\n await cacheDataLoaded\n\n const handlePubSub = (_topic: string, message: any) => {\n // Only react to link.created and link.deleted events for this project\n if (!_topic.startsWith('link.created') && !_topic.startsWith('link.deleted')) return\n if (message?.project !== projectName) return\n\n // Link events have inputId and outputId in the summary (both entities affected by the link)\n const inputId = message?.summary?.inputId\n const outputId = message?.summary?.outputId\n if (!inputId && !outputId) return\n\n if (inputId) batcher.add({ entityId: inputId })\n if (outputId) batcher.add({ entityId: outputId })\n }\n\n // Subscribe to link events\n // NOTE: backend emits topics like 'link.created' and 'link.deleted'.\n // PubSub supports prefix matching when subscribing.\n token = PubSub.subscribe('link', handlePubSub)\n } catch (e) {\n // cache entry removed before loaded - ignore\n }\n\n await cacheEntryRemoved\n if (token) PubSub.unsubscribe(token)\n batcher.clear()\n },\n }),\n }),\n})\n\nexport const { useGetEntityLinksQuery } = injectedQueries\nexport { injectedQueries as entityLinksApi }\n"],"names":["entityEndpoints","entityResultPaths","injectedQueries","foldersApi","build","projectName","entityIds","entityType","getState","dispatch","queryCacheKey","forced","state","cacheKey","cachedData","cachedEntityIds","entity","entityIdsToFetch","id","endpoint","resultPath","gqlLinksApi","node","restrictedLinks","e","link","linkEdge","formatEntityLabel","error","toast","queryArgs","currentArg","previousArg","currentIds","previousIds","currentCache","newItems","cacheMap","item","newItem","result","arg","cacheDataLoaded","cacheEntryRemoved","updateCachedData","token","batcher","createRealtimeBatcher","items","isActive","waitForRealtimeJitter","entityId","updatedEntities","draft","updatedEntity","idx","err","handlePubSub","_topic","message","inputId","outputId","PubSub","useGetEntityLinksQuery"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../base/client.cjs.js");require("../../generated/graphql.cjs.js");const n=require("../../generated/graphqlLinks.cjs.js");require("../../generated/access.cjs.js");require("../../generated/actions.cjs.js");require("../../generated/activityFeed.cjs.js");require("../../generated/addons.cjs.js");require("../../generated/anatomy.cjs.js");require("../../generated/attributes.cjs.js");require("../../generated/authentication.cjs.js");require("../../generated/bundles.cjs.js");require("../../generated/configuration.cjs.js");require("../../generated/dataImport.cjs.js");require("../../generated/desktop.cjs.js");require("../../generated/entityLists.cjs.js");require("../../generated/events.cjs.js");require("../../generated/files.cjs.js");require("../../generated/folders.cjs.js");require("../../generated/inbox.cjs.js");require("../../generated/links.cjs.js");require("../../generated/market.cjs.js");require("../../generated/onboarding.cjs.js");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 T=require("../../../util/pubsub.cjs.js"),k=50,N=n.api.injectEndpoints({endpoints:I=>({getSearchedEntitiesLinks:I.infiniteQuery({infiniteQueryOptions:{initialPageParam:{cursor:""},getNextPageParam:(p,q,t)=>{const r=p.pageInfo;if(!(!r.hasNextPage||!r.endCursor))return{cursor:r.endCursor}}},providesTags:[{type:"linkSearchItem",id:"LIST"}],queryFn:async({queryArg:p,pageParam:q},t)=>{try{const{projectName:r,entityType:i,search:f,parentIds:h}=p,{cursor:s}=q,e={projectName:r,first:k};s&&(e.after=s),e.search=f||"",e.parentIds=h;let a;switch(i){case"folder":a=await t.dispatch(n.api.endpoints.GetSearchedFolders.initiate(e,{forceRefetch:!0})).unwrap();break;case"product":a=await t.dispatch(n.api.endpoints.GetSearchedProducts.initiate(e,{forceRefetch:!0})).unwrap();break;case"task":a=await t.dispatch(n.api.endpoints.GetSearchedTasks.initiate(e,{forceRefetch:!0})).unwrap();break;case"version":a=await t.dispatch(n.api.endpoints.GetSearchedVersions.initiate(e,{forceRefetch:!0})).unwrap();break;case"representation":a=await t.dispatch(n.api.endpoints.GetSearchedRepresentations.initiate(e,{forceRefetch:!0})).unwrap();break;case"workfile":a=await t.dispatch(n.api.endpoints.GetSearchedWorkfiles.initiate(e,{forceRefetch:!0})).unwrap();break;default:throw new Error(`Unsupported entity type: ${i}`)}const w=a.project;if(!w)throw new Error("No project data returned");const m=w[i+"s"],E=m?.edges?.map(({node:u})=>{switch(i){case"task":const o=u;return{entityType:"task",id:o.id,name:o.name,label:o.label||o.name,parents:o.parents||[],subType:o.subType};case"folder":const c=u;return{entityType:"folder",id:c.id,name:c.name,label:c.label||c.name,parents:c.parents||[],subType:c.subType};case"product":const d=u;return{entityType:"product",id:d.id,name:d.name,label:d.name,parents:d.parents||[],subType:d.subType};case"version":const l=u;return{entityType:"version",id:l.id,name:l.name,label:l.name,parents:l.parents||[],hasReviewables:l.hasReviewables};case"representation":const y=u;return{entityType:"representation",id:y.id,name:y.name,label:y.name,parents:y.parents||[]};case"workfile":const b=u;return{entityType:"workfile",id:b.id,name:b.name,label:b.name,parents:b.parents||[]};default:return null}}).filter(Boolean);if(!m)throw new Error(`No ${i} data returned`);return{data:{pageInfo:m.pageInfo,entities:E}}}catch(r){return console.error("Error in getSearchedEntitiesLinks queryFn:",r),{error:{status:"FETCH_ERROR",error:r.message}}}},async onCacheEntryAdded({projectName:p},{cacheDataLoaded:q,cacheEntryRemoved:t,dispatch:r}){let i;try{await q;const f=async(h,s)=>{if(!h.startsWith("link.created")&&!h.startsWith("link.deleted")||s?.project!==p)return;const e=s?.summary?.inputId,a=s?.summary?.outputId;!e&&!a||r(n.api.util.invalidateTags([{type:"linkSearchItem",id:"LIST"}]))};i=T.subscribe("link",f)}catch{}await t,i&&T.unsubscribe(i)}})})}),{useGetSearchedEntitiesLinksInfiniteQuery:S}=N;exports.ENTITIES_INFINITE_QUERY_COUNT=k;exports.useGetSearchedEntitiesLinksInfiniteQuery=S;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../base/client.cjs.js");require("../../generated/graphql.cjs.js");const a=require("../../generated/graphqlLinks.cjs.js");require("../../generated/access.cjs.js");require("../../generated/actions.cjs.js");require("../../generated/activityFeed.cjs.js");require("../../generated/addons.cjs.js");require("../../generated/anatomy.cjs.js");require("../../generated/attributes.cjs.js");require("../../generated/authentication.cjs.js");require("../../generated/bundles.cjs.js");require("../../generated/configuration.cjs.js");require("../../generated/dataImport.cjs.js");require("../../generated/desktop.cjs.js");require("../../generated/entityLists.cjs.js");require("../../generated/events.cjs.js");require("../../generated/files.cjs.js");require("../../generated/folders.cjs.js");require("../../generated/inbox.cjs.js");require("../../generated/links.cjs.js");require("../../generated/market.cjs.js");require("../../generated/onboarding.cjs.js");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 w=50,E=a.api.injectEndpoints({endpoints:T=>({getSearchedEntitiesLinks:T.infiniteQuery({infiniteQueryOptions:{initialPageParam:{cursor:""},getNextPageParam:(q,h,t)=>{const r=q.pageInfo;if(!(!r.hasNextPage||!r.endCursor))return{cursor:r.endCursor}}},providesTags:[{type:"linkSearchItem",id:"LIST"}],keepUnusedDataFor:5,queryFn:async({queryArg:q,pageParam:h},t)=>{try{const{projectName:r,entityType:o,search:b,parentIds:k}=q,{cursor:y}=h,e={projectName:r,first:w};y&&(e.after=y),e.search=b||"",e.parentIds=k;let i;switch(o){case"folder":i=await t.dispatch(a.api.endpoints.GetSearchedFolders.initiate(e,{forceRefetch:!0})).unwrap();break;case"product":i=await t.dispatch(a.api.endpoints.GetSearchedProducts.initiate(e,{forceRefetch:!0})).unwrap();break;case"task":i=await t.dispatch(a.api.endpoints.GetSearchedTasks.initiate(e,{forceRefetch:!0})).unwrap();break;case"version":i=await t.dispatch(a.api.endpoints.GetSearchedVersions.initiate(e,{forceRefetch:!0})).unwrap();break;case"representation":i=await t.dispatch(a.api.endpoints.GetSearchedRepresentations.initiate(e,{forceRefetch:!0})).unwrap();break;case"workfile":i=await t.dispatch(a.api.endpoints.GetSearchedWorkfiles.initiate(e,{forceRefetch:!0})).unwrap();break;default:throw new Error(`Unsupported entity type: ${o}`)}const m=i.project;if(!m)throw new Error("No project data returned");const f=m[o+"s"],I=f?.edges?.map(({node:n})=>{switch(o){case"task":const s=n;return{entityType:"task",id:s.id,name:s.name,label:s.label||s.name,parents:s.parents||[],subType:s.subType};case"folder":const u=n;return{entityType:"folder",id:u.id,name:u.name,label:u.label||u.name,parents:u.parents||[],subType:u.subType};case"product":const c=n;return{entityType:"product",id:c.id,name:c.name,label:c.name,parents:c.parents||[],subType:c.subType};case"version":const p=n;return{entityType:"version",id:p.id,name:p.name,label:p.name,parents:p.parents||[],hasReviewables:p.hasReviewables};case"representation":const d=n;return{entityType:"representation",id:d.id,name:d.name,label:d.name,parents:d.parents||[]};case"workfile":const l=n;return{entityType:"workfile",id:l.id,name:l.name,label:l.name,parents:l.parents||[]};default:return null}}).filter(Boolean);if(!f)throw new Error(`No ${o} data returned`);return{data:{pageInfo:f.pageInfo,entities:I}}}catch(r){return console.error("Error in getSearchedEntitiesLinks queryFn:",r),{error:{status:"FETCH_ERROR",error:r.message}}}}})})}),{useGetSearchedEntitiesLinksInfiniteQuery:N}=E;exports.ENTITIES_INFINITE_QUERY_COUNT=w;exports.useGetSearchedEntitiesLinksInfiniteQuery=N;
2
2
  //# sourceMappingURL=getLinks.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getLinks.cjs.js","sources":["../../../../../../src/api/queries/links/getLinks.ts"],"sourcesContent":["import { FetchBaseQueryError } from '@reduxjs/toolkit/query'\nimport {\n GetSearchedFoldersQuery,\n GetSearchedProductsQuery,\n GetSearchedRepresentationsQuery,\n GetSearchedTasksQuery,\n GetSearchedVersionsQuery,\n GetSearchedWorkfilesQuery,\n gqlLinksApi,\n} from '@shared/api/generated'\nimport PubSub from '@shared/util/pubsub'\n\nexport const ENTITIES_INFINITE_QUERY_COUNT = 50 // Number of items to fetch per page\n\n// Define page param type for infinite query\ntype EntitySearchPageParam = {\n cursor: string\n}\n\nexport type SearchEntityLink = {\n id: string\n name: string\n entityType: string\n parents: string[]\n label: string\n icon: string | undefined\n subType: string | undefined\n hasReviewables?: boolean\n}\n\nexport type GetSearchedEntitiesLinksResult = {\n pageInfo: any\n entities: SearchEntityLink[]\n}\n\nexport type GetSearchedEntitiesLinksArgs = {\n projectName: string\n entityType: string // 'folder' | 'product' | 'version' | 'task' | 'representation' | 'workfile'\n search?: string\n parentIds?: string[] // Optional parent IDs to filter entities\n sortBy?: string\n}\n\ntype GetSearchedEntity =\n | GetSearchedTasksQuery\n | GetSearchedFoldersQuery\n | GetSearchedProductsQuery\n | GetSearchedVersionsQuery\n | GetSearchedRepresentationsQuery\n | GetSearchedWorkfilesQuery\ntype SearchedTaskNode = GetSearchedTasksQuery['project']['tasks']['edges'][0]['node']\ntype SearchedFolderNode = GetSearchedFoldersQuery['project']['folders']['edges'][0]['node']\ntype SearchedProductNode = GetSearchedProductsQuery['project']['products']['edges'][0]['node']\ntype SearchedVersionNode = GetSearchedVersionsQuery['project']['versions']['edges'][0]['node']\ntype SearchedRepresentationNode =\n GetSearchedRepresentationsQuery['project']['representations']['edges'][0]['node']\ntype SearchedWorkfileNode = GetSearchedWorkfilesQuery['project']['workfiles']['edges'][0]['node']\n\nconst injectedQueries = gqlLinksApi.injectEndpoints({\n endpoints: (build) => ({\n getSearchedEntitiesLinks: build.infiniteQuery<\n GetSearchedEntitiesLinksResult,\n GetSearchedEntitiesLinksArgs,\n EntitySearchPageParam\n >({\n infiniteQueryOptions: {\n initialPageParam: { cursor: '' },\n getNextPageParam: (lastPage, _allPages, lastPageParam) => {\n const pageInfo = lastPage.pageInfo\n if (!pageInfo.hasNextPage || !pageInfo.endCursor) return undefined\n return { cursor: pageInfo.endCursor }\n },\n },\n providesTags: [{ type: 'linkSearchItem', id: 'LIST' }],\n queryFn: async ({ queryArg, pageParam }, api) => {\n try {\n const { projectName, entityType, search, parentIds } = queryArg\n const { cursor } = pageParam\n\n // Build query variables\n const variables: any = {\n projectName,\n first: ENTITIES_INFINITE_QUERY_COUNT,\n }\n\n // Add cursor-based pagination\n if (cursor) {\n variables.after = cursor\n }\n\n variables.search = search || ''\n variables.parentIds = parentIds\n\n let result: GetSearchedEntity\n // Use the appropriate generated query based on entity type\n switch (entityType) {\n case 'folder':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedFolders.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'product':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedProducts.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'task':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedTasks.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'version':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedVersions.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'representation':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedRepresentations.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'workfile':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedWorkfiles.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n default:\n throw new Error(`Unsupported entity type: ${entityType}`)\n }\n\n const projectData = result.project\n if (!projectData) {\n throw new Error('No project data returned')\n }\n\n // @ts-expect-error - TypeScript doesn't know the structure of projectData\n const entityData = projectData[entityType + 's']\n\n // Transform entity data to search link format\n const entities: SearchEntityLink[] = entityData?.edges\n ?.map(({ node }: any) => {\n switch (entityType) {\n case 'task':\n const taskNode = node as SearchedTaskNode\n return {\n entityType: 'task',\n id: taskNode.id,\n name: taskNode.name,\n label: taskNode.label || taskNode.name,\n parents: taskNode.parents || [],\n subType: taskNode.subType,\n }\n case 'folder':\n const folderNode = node as SearchedFolderNode\n return {\n entityType: 'folder',\n id: folderNode.id,\n name: folderNode.name,\n label: folderNode.label || folderNode.name,\n parents: folderNode.parents || [],\n subType: folderNode.subType,\n }\n case 'product':\n const productNode = node as SearchedProductNode\n return {\n entityType: 'product',\n id: productNode.id,\n name: productNode.name,\n label: productNode.name,\n parents: productNode.parents || [],\n subType: productNode.subType,\n }\n case 'version':\n const versionNode = node as SearchedVersionNode\n return {\n entityType: 'version',\n id: versionNode.id,\n name: versionNode.name,\n label: versionNode.name,\n parents: versionNode.parents || [],\n hasReviewables: versionNode.hasReviewables,\n }\n case 'representation':\n const representationNode = node as SearchedRepresentationNode\n return {\n entityType: 'representation',\n id: representationNode.id,\n name: representationNode.name,\n label: representationNode.name,\n parents: representationNode.parents || [],\n }\n case 'workfile':\n const workfileNode = node as SearchedWorkfileNode\n return {\n entityType: 'workfile',\n id: workfileNode.id,\n name: workfileNode.name,\n label: workfileNode.name,\n parents: workfileNode.parents || [],\n }\n default:\n return null\n }\n })\n .filter(Boolean) as SearchEntityLink[] // Remove nulls, ensure correct type\n\n if (!entityData) {\n throw new Error(`No ${entityType} data returned`)\n }\n\n return {\n data: {\n pageInfo: entityData.pageInfo,\n entities: entities,\n },\n }\n } catch (error: any) {\n console.error('Error in getSearchedEntitiesLinks queryFn:', error)\n return { error: { status: 'FETCH_ERROR', error: error.message } as FetchBaseQueryError }\n }\n },\n // Subscribe to link.created and link.deleted WebSocket events\n async onCacheEntryAdded({ projectName }, { cacheDataLoaded, cacheEntryRemoved, dispatch }) {\n let token: any\n\n try {\n await cacheDataLoaded\n\n const handlePubSub = async (_topic: string, message: any) => {\n // Only react to link.created and link.deleted events for this project\n if (!_topic.startsWith('link.created') && !_topic.startsWith('link.deleted')) return\n if (message?.project !== projectName) return\n\n // Link events have inputId and outputId in the summary\n const inputId = message?.summary?.inputId\n const outputId = message?.summary?.outputId\n if (!inputId && !outputId) return\n\n // Invalidate the search query cache when a link is created or deleted\n // This ensures the search results are fresh and don't show stale data\n dispatch(gqlLinksApi.util.invalidateTags([{ type: 'linkSearchItem', id: 'LIST' }]))\n }\n\n // Subscribe to link events\n // NOTE: backend emits topics like 'link.created' and 'link.deleted'.\n // PubSub supports prefix matching when subscribing.\n token = PubSub.subscribe('link', handlePubSub)\n } catch (e) {\n // cache entry removed before loaded - ignore\n }\n\n await cacheEntryRemoved\n if (token) PubSub.unsubscribe(token)\n },\n }),\n }),\n})\n\nexport const { useGetSearchedEntitiesLinksInfiniteQuery } = injectedQueries\n"],"names":["ENTITIES_INFINITE_QUERY_COUNT","injectedQueries","gqlLinksApi","build","lastPage","_allPages","lastPageParam","pageInfo","queryArg","pageParam","api","projectName","entityType","search","parentIds","cursor","variables","result","projectData","entityData","entities","node","taskNode","folderNode","productNode","versionNode","representationNode","workfileNode","error","cacheDataLoaded","cacheEntryRemoved","dispatch","token","handlePubSub","_topic","message","inputId","outputId","PubSub","useGetSearchedEntitiesLinksInfiniteQuery"],"mappings":"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"}
1
+ {"version":3,"file":"getLinks.cjs.js","sources":["../../../../../../src/api/queries/links/getLinks.ts"],"sourcesContent":["import { FetchBaseQueryError } from '@reduxjs/toolkit/query'\nimport {\n GetSearchedFoldersQuery,\n GetSearchedProductsQuery,\n GetSearchedRepresentationsQuery,\n GetSearchedTasksQuery,\n GetSearchedVersionsQuery,\n GetSearchedWorkfilesQuery,\n gqlLinksApi,\n} from '@shared/api/generated'\nimport { createRealtimeBatcher, PubSub } from '@shared/util'\n\nexport const ENTITIES_INFINITE_QUERY_COUNT = 50 // Number of items to fetch per page\n\n// Define page param type for infinite query\ntype EntitySearchPageParam = {\n cursor: string\n}\n\nexport type SearchEntityLink = {\n id: string\n name: string\n entityType: string\n parents: string[]\n label: string\n icon: string | undefined\n subType: string | undefined\n hasReviewables?: boolean\n}\n\nexport type GetSearchedEntitiesLinksResult = {\n pageInfo: any\n entities: SearchEntityLink[]\n}\n\nexport type GetSearchedEntitiesLinksArgs = {\n projectName: string\n entityType: string // 'folder' | 'product' | 'version' | 'task' | 'representation' | 'workfile'\n search?: string\n parentIds?: string[] // Optional parent IDs to filter entities\n sortBy?: string\n}\n\ntype GetSearchedEntity =\n | GetSearchedTasksQuery\n | GetSearchedFoldersQuery\n | GetSearchedProductsQuery\n | GetSearchedVersionsQuery\n | GetSearchedRepresentationsQuery\n | GetSearchedWorkfilesQuery\ntype SearchedTaskNode = GetSearchedTasksQuery['project']['tasks']['edges'][0]['node']\ntype SearchedFolderNode = GetSearchedFoldersQuery['project']['folders']['edges'][0]['node']\ntype SearchedProductNode = GetSearchedProductsQuery['project']['products']['edges'][0]['node']\ntype SearchedVersionNode = GetSearchedVersionsQuery['project']['versions']['edges'][0]['node']\ntype SearchedRepresentationNode =\n GetSearchedRepresentationsQuery['project']['representations']['edges'][0]['node']\ntype SearchedWorkfileNode = GetSearchedWorkfilesQuery['project']['workfiles']['edges'][0]['node']\n\nconst injectedQueries = gqlLinksApi.injectEndpoints({\n endpoints: (build) => ({\n getSearchedEntitiesLinks: build.infiniteQuery<\n GetSearchedEntitiesLinksResult,\n GetSearchedEntitiesLinksArgs,\n EntitySearchPageParam\n >({\n infiniteQueryOptions: {\n initialPageParam: { cursor: '' },\n getNextPageParam: (lastPage, _allPages, lastPageParam) => {\n const pageInfo = lastPage.pageInfo\n if (!pageInfo.hasNextPage || !pageInfo.endCursor) return undefined\n return { cursor: pageInfo.endCursor }\n },\n },\n providesTags: [{ type: 'linkSearchItem', id: 'LIST' }],\n keepUnusedDataFor: 5,\n queryFn: async ({ queryArg, pageParam }, api) => {\n try {\n const { projectName, entityType, search, parentIds } = queryArg\n const { cursor } = pageParam\n\n // Build query variables\n const variables: any = {\n projectName,\n first: ENTITIES_INFINITE_QUERY_COUNT,\n }\n\n // Add cursor-based pagination\n if (cursor) {\n variables.after = cursor\n }\n\n variables.search = search || ''\n variables.parentIds = parentIds\n\n let result: GetSearchedEntity\n // Use the appropriate generated query based on entity type\n switch (entityType) {\n case 'folder':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedFolders.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'product':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedProducts.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'task':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedTasks.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'version':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedVersions.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'representation':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedRepresentations.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'workfile':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedWorkfiles.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n default:\n throw new Error(`Unsupported entity type: ${entityType}`)\n }\n\n const projectData = result.project\n if (!projectData) {\n throw new Error('No project data returned')\n }\n\n // @ts-expect-error - TypeScript doesn't know the structure of projectData\n const entityData = projectData[entityType + 's']\n\n // Transform entity data to search link format\n const entities: SearchEntityLink[] = entityData?.edges\n ?.map(({ node }: any) => {\n switch (entityType) {\n case 'task':\n const taskNode = node as SearchedTaskNode\n return {\n entityType: 'task',\n id: taskNode.id,\n name: taskNode.name,\n label: taskNode.label || taskNode.name,\n parents: taskNode.parents || [],\n subType: taskNode.subType,\n }\n case 'folder':\n const folderNode = node as SearchedFolderNode\n return {\n entityType: 'folder',\n id: folderNode.id,\n name: folderNode.name,\n label: folderNode.label || folderNode.name,\n parents: folderNode.parents || [],\n subType: folderNode.subType,\n }\n case 'product':\n const productNode = node as SearchedProductNode\n return {\n entityType: 'product',\n id: productNode.id,\n name: productNode.name,\n label: productNode.name,\n parents: productNode.parents || [],\n subType: productNode.subType,\n }\n case 'version':\n const versionNode = node as SearchedVersionNode\n return {\n entityType: 'version',\n id: versionNode.id,\n name: versionNode.name,\n label: versionNode.name,\n parents: versionNode.parents || [],\n hasReviewables: versionNode.hasReviewables,\n }\n case 'representation':\n const representationNode = node as SearchedRepresentationNode\n return {\n entityType: 'representation',\n id: representationNode.id,\n name: representationNode.name,\n label: representationNode.name,\n parents: representationNode.parents || [],\n }\n case 'workfile':\n const workfileNode = node as SearchedWorkfileNode\n return {\n entityType: 'workfile',\n id: workfileNode.id,\n name: workfileNode.name,\n label: workfileNode.name,\n parents: workfileNode.parents || [],\n }\n default:\n return null\n }\n })\n .filter(Boolean) as SearchEntityLink[] // Remove nulls, ensure correct type\n\n if (!entityData) {\n throw new Error(`No ${entityType} data returned`)\n }\n\n return {\n data: {\n pageInfo: entityData.pageInfo,\n entities: entities,\n },\n }\n } catch (error: any) {\n console.error('Error in getSearchedEntitiesLinks queryFn:', error)\n return { error: { status: 'FETCH_ERROR', error: error.message } as FetchBaseQueryError }\n }\n },\n }),\n }),\n})\n\nexport const { useGetSearchedEntitiesLinksInfiniteQuery } = injectedQueries\n"],"names":["ENTITIES_INFINITE_QUERY_COUNT","injectedQueries","gqlLinksApi","build","lastPage","_allPages","lastPageParam","pageInfo","queryArg","pageParam","api","projectName","entityType","search","parentIds","cursor","variables","result","projectData","entityData","entities","node","taskNode","folderNode","productNode","versionNode","representationNode","workfileNode","error","useGetSearchedEntitiesLinksInfiniteQuery"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import "../../base/client.es.js";
2
2
  import "../../generated/graphql.es.js";
3
- import { api as n } from "../../generated/graphqlLinks.es.js";
3
+ import { api as i } from "../../generated/graphqlLinks.es.js";
4
4
  import "../../generated/access.es.js";
5
5
  import "../../generated/actions.es.js";
6
6
  import "../../generated/activityFeed.es.js";
@@ -38,110 +38,110 @@ import "../../generated/workfiles.es.js";
38
38
  import "../../generated/ynputCloud.es.js";
39
39
  import "../../generated/grouping.es.js";
40
40
  import "../../generated/views.es.js";
41
- import T from "../../../util/pubsub.es.js";
42
- const E = 50, N = n.injectEndpoints({
43
- endpoints: (I) => ({
44
- getSearchedEntitiesLinks: I.infiniteQuery({
41
+ const N = 50, E = i.injectEndpoints({
42
+ endpoints: (b) => ({
43
+ getSearchedEntitiesLinks: b.infiniteQuery({
45
44
  infiniteQueryOptions: {
46
45
  initialPageParam: { cursor: "" },
47
- getNextPageParam: (d, l, r) => {
48
- const t = d.pageInfo;
46
+ getNextPageParam: (l, h, r) => {
47
+ const t = l.pageInfo;
49
48
  if (!(!t.hasNextPage || !t.endCursor))
50
49
  return { cursor: t.endCursor };
51
50
  }
52
51
  },
53
52
  providesTags: [{ type: "linkSearchItem", id: "LIST" }],
54
- queryFn: async ({ queryArg: d, pageParam: l }, r) => {
53
+ keepUnusedDataFor: 5,
54
+ queryFn: async ({ queryArg: l, pageParam: h }, r) => {
55
55
  try {
56
- const { projectName: t, entityType: i, search: f, parentIds: h } = d, { cursor: o } = l, e = {
56
+ const { projectName: t, entityType: p, search: k, parentIds: T } = l, { cursor: y } = h, e = {
57
57
  projectName: t,
58
- first: E
58
+ first: N
59
59
  };
60
- o && (e.after = o), e.search = f || "", e.parentIds = h;
60
+ y && (e.after = y), e.search = k || "", e.parentIds = T;
61
61
  let a;
62
- switch (i) {
62
+ switch (p) {
63
63
  case "folder":
64
64
  a = await r.dispatch(
65
- n.endpoints.GetSearchedFolders.initiate(e, {
65
+ i.endpoints.GetSearchedFolders.initiate(e, {
66
66
  forceRefetch: !0
67
67
  })
68
68
  ).unwrap();
69
69
  break;
70
70
  case "product":
71
71
  a = await r.dispatch(
72
- n.endpoints.GetSearchedProducts.initiate(e, {
72
+ i.endpoints.GetSearchedProducts.initiate(e, {
73
73
  forceRefetch: !0
74
74
  })
75
75
  ).unwrap();
76
76
  break;
77
77
  case "task":
78
78
  a = await r.dispatch(
79
- n.endpoints.GetSearchedTasks.initiate(e, {
79
+ i.endpoints.GetSearchedTasks.initiate(e, {
80
80
  forceRefetch: !0
81
81
  })
82
82
  ).unwrap();
83
83
  break;
84
84
  case "version":
85
85
  a = await r.dispatch(
86
- n.endpoints.GetSearchedVersions.initiate(e, {
86
+ i.endpoints.GetSearchedVersions.initiate(e, {
87
87
  forceRefetch: !0
88
88
  })
89
89
  ).unwrap();
90
90
  break;
91
91
  case "representation":
92
92
  a = await r.dispatch(
93
- n.endpoints.GetSearchedRepresentations.initiate(e, {
93
+ i.endpoints.GetSearchedRepresentations.initiate(e, {
94
94
  forceRefetch: !0
95
95
  })
96
96
  ).unwrap();
97
97
  break;
98
98
  case "workfile":
99
99
  a = await r.dispatch(
100
- n.endpoints.GetSearchedWorkfiles.initiate(e, {
100
+ i.endpoints.GetSearchedWorkfiles.initiate(e, {
101
101
  forceRefetch: !0
102
102
  })
103
103
  ).unwrap();
104
104
  break;
105
105
  default:
106
- throw new Error(`Unsupported entity type: ${i}`);
106
+ throw new Error(`Unsupported entity type: ${p}`);
107
107
  }
108
- const k = a.project;
109
- if (!k)
108
+ const w = a.project;
109
+ if (!w)
110
110
  throw new Error("No project data returned");
111
- const w = k[i + "s"], S = w?.edges?.map(({ node: s }) => {
112
- switch (i) {
111
+ const f = w[p + "s"], g = f?.edges?.map(({ node: n }) => {
112
+ switch (p) {
113
113
  case "task":
114
- const p = s;
114
+ const o = n;
115
115
  return {
116
116
  entityType: "task",
117
- id: p.id,
118
- name: p.name,
119
- label: p.label || p.name,
120
- parents: p.parents || [],
121
- subType: p.subType
117
+ id: o.id,
118
+ name: o.name,
119
+ label: o.label || o.name,
120
+ parents: o.parents || [],
121
+ subType: o.subType
122
122
  };
123
123
  case "folder":
124
- const c = s;
124
+ const s = n;
125
125
  return {
126
126
  entityType: "folder",
127
- id: c.id,
128
- name: c.name,
129
- label: c.label || c.name,
130
- parents: c.parents || [],
131
- subType: c.subType
127
+ id: s.id,
128
+ name: s.name,
129
+ label: s.label || s.name,
130
+ parents: s.parents || [],
131
+ subType: s.subType
132
132
  };
133
133
  case "product":
134
- const u = s;
134
+ const c = n;
135
135
  return {
136
136
  entityType: "product",
137
- id: u.id,
138
- name: u.name,
139
- label: u.name,
140
- parents: u.parents || [],
141
- subType: u.subType
137
+ id: c.id,
138
+ name: c.name,
139
+ label: c.name,
140
+ parents: c.parents || [],
141
+ subType: c.subType
142
142
  };
143
143
  case "version":
144
- const m = s;
144
+ const m = n;
145
145
  return {
146
146
  entityType: "version",
147
147
  id: m.id,
@@ -151,59 +151,44 @@ const E = 50, N = n.injectEndpoints({
151
151
  hasReviewables: m.hasReviewables
152
152
  };
153
153
  case "representation":
154
- const y = s;
154
+ const d = n;
155
155
  return {
156
156
  entityType: "representation",
157
- id: y.id,
158
- name: y.name,
159
- label: y.name,
160
- parents: y.parents || []
157
+ id: d.id,
158
+ name: d.name,
159
+ label: d.name,
160
+ parents: d.parents || []
161
161
  };
162
162
  case "workfile":
163
- const b = s;
163
+ const u = n;
164
164
  return {
165
165
  entityType: "workfile",
166
- id: b.id,
167
- name: b.name,
168
- label: b.name,
169
- parents: b.parents || []
166
+ id: u.id,
167
+ name: u.name,
168
+ label: u.name,
169
+ parents: u.parents || []
170
170
  };
171
171
  default:
172
172
  return null;
173
173
  }
174
174
  }).filter(Boolean);
175
- if (!w)
176
- throw new Error(`No ${i} data returned`);
175
+ if (!f)
176
+ throw new Error(`No ${p} data returned`);
177
177
  return {
178
178
  data: {
179
- pageInfo: w.pageInfo,
180
- entities: S
179
+ pageInfo: f.pageInfo,
180
+ entities: g
181
181
  }
182
182
  };
183
183
  } catch (t) {
184
184
  return console.error("Error in getSearchedEntitiesLinks queryFn:", t), { error: { status: "FETCH_ERROR", error: t.message } };
185
185
  }
186
- },
187
- // Subscribe to link.created and link.deleted WebSocket events
188
- async onCacheEntryAdded({ projectName: d }, { cacheDataLoaded: l, cacheEntryRemoved: r, dispatch: t }) {
189
- let i;
190
- try {
191
- await l;
192
- const f = async (h, o) => {
193
- if (!h.startsWith("link.created") && !h.startsWith("link.deleted") || o?.project !== d) return;
194
- const e = o?.summary?.inputId, a = o?.summary?.outputId;
195
- !e && !a || t(n.util.invalidateTags([{ type: "linkSearchItem", id: "LIST" }]));
196
- };
197
- i = T.subscribe("link", f);
198
- } catch {
199
- }
200
- await r, i && T.unsubscribe(i);
201
186
  }
202
187
  })
203
188
  })
204
- }), { useGetSearchedEntitiesLinksInfiniteQuery: me } = N;
189
+ }), { useGetSearchedEntitiesLinksInfiniteQuery: me } = E;
205
190
  export {
206
- E as ENTITIES_INFINITE_QUERY_COUNT,
191
+ N as ENTITIES_INFINITE_QUERY_COUNT,
207
192
  me as useGetSearchedEntitiesLinksInfiniteQuery
208
193
  };
209
194
  //# sourceMappingURL=getLinks.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getLinks.es.js","sources":["../../../../../../src/api/queries/links/getLinks.ts"],"sourcesContent":["import { FetchBaseQueryError } from '@reduxjs/toolkit/query'\nimport {\n GetSearchedFoldersQuery,\n GetSearchedProductsQuery,\n GetSearchedRepresentationsQuery,\n GetSearchedTasksQuery,\n GetSearchedVersionsQuery,\n GetSearchedWorkfilesQuery,\n gqlLinksApi,\n} from '@shared/api/generated'\nimport PubSub from '@shared/util/pubsub'\n\nexport const ENTITIES_INFINITE_QUERY_COUNT = 50 // Number of items to fetch per page\n\n// Define page param type for infinite query\ntype EntitySearchPageParam = {\n cursor: string\n}\n\nexport type SearchEntityLink = {\n id: string\n name: string\n entityType: string\n parents: string[]\n label: string\n icon: string | undefined\n subType: string | undefined\n hasReviewables?: boolean\n}\n\nexport type GetSearchedEntitiesLinksResult = {\n pageInfo: any\n entities: SearchEntityLink[]\n}\n\nexport type GetSearchedEntitiesLinksArgs = {\n projectName: string\n entityType: string // 'folder' | 'product' | 'version' | 'task' | 'representation' | 'workfile'\n search?: string\n parentIds?: string[] // Optional parent IDs to filter entities\n sortBy?: string\n}\n\ntype GetSearchedEntity =\n | GetSearchedTasksQuery\n | GetSearchedFoldersQuery\n | GetSearchedProductsQuery\n | GetSearchedVersionsQuery\n | GetSearchedRepresentationsQuery\n | GetSearchedWorkfilesQuery\ntype SearchedTaskNode = GetSearchedTasksQuery['project']['tasks']['edges'][0]['node']\ntype SearchedFolderNode = GetSearchedFoldersQuery['project']['folders']['edges'][0]['node']\ntype SearchedProductNode = GetSearchedProductsQuery['project']['products']['edges'][0]['node']\ntype SearchedVersionNode = GetSearchedVersionsQuery['project']['versions']['edges'][0]['node']\ntype SearchedRepresentationNode =\n GetSearchedRepresentationsQuery['project']['representations']['edges'][0]['node']\ntype SearchedWorkfileNode = GetSearchedWorkfilesQuery['project']['workfiles']['edges'][0]['node']\n\nconst injectedQueries = gqlLinksApi.injectEndpoints({\n endpoints: (build) => ({\n getSearchedEntitiesLinks: build.infiniteQuery<\n GetSearchedEntitiesLinksResult,\n GetSearchedEntitiesLinksArgs,\n EntitySearchPageParam\n >({\n infiniteQueryOptions: {\n initialPageParam: { cursor: '' },\n getNextPageParam: (lastPage, _allPages, lastPageParam) => {\n const pageInfo = lastPage.pageInfo\n if (!pageInfo.hasNextPage || !pageInfo.endCursor) return undefined\n return { cursor: pageInfo.endCursor }\n },\n },\n providesTags: [{ type: 'linkSearchItem', id: 'LIST' }],\n queryFn: async ({ queryArg, pageParam }, api) => {\n try {\n const { projectName, entityType, search, parentIds } = queryArg\n const { cursor } = pageParam\n\n // Build query variables\n const variables: any = {\n projectName,\n first: ENTITIES_INFINITE_QUERY_COUNT,\n }\n\n // Add cursor-based pagination\n if (cursor) {\n variables.after = cursor\n }\n\n variables.search = search || ''\n variables.parentIds = parentIds\n\n let result: GetSearchedEntity\n // Use the appropriate generated query based on entity type\n switch (entityType) {\n case 'folder':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedFolders.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'product':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedProducts.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'task':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedTasks.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'version':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedVersions.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'representation':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedRepresentations.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'workfile':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedWorkfiles.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n default:\n throw new Error(`Unsupported entity type: ${entityType}`)\n }\n\n const projectData = result.project\n if (!projectData) {\n throw new Error('No project data returned')\n }\n\n // @ts-expect-error - TypeScript doesn't know the structure of projectData\n const entityData = projectData[entityType + 's']\n\n // Transform entity data to search link format\n const entities: SearchEntityLink[] = entityData?.edges\n ?.map(({ node }: any) => {\n switch (entityType) {\n case 'task':\n const taskNode = node as SearchedTaskNode\n return {\n entityType: 'task',\n id: taskNode.id,\n name: taskNode.name,\n label: taskNode.label || taskNode.name,\n parents: taskNode.parents || [],\n subType: taskNode.subType,\n }\n case 'folder':\n const folderNode = node as SearchedFolderNode\n return {\n entityType: 'folder',\n id: folderNode.id,\n name: folderNode.name,\n label: folderNode.label || folderNode.name,\n parents: folderNode.parents || [],\n subType: folderNode.subType,\n }\n case 'product':\n const productNode = node as SearchedProductNode\n return {\n entityType: 'product',\n id: productNode.id,\n name: productNode.name,\n label: productNode.name,\n parents: productNode.parents || [],\n subType: productNode.subType,\n }\n case 'version':\n const versionNode = node as SearchedVersionNode\n return {\n entityType: 'version',\n id: versionNode.id,\n name: versionNode.name,\n label: versionNode.name,\n parents: versionNode.parents || [],\n hasReviewables: versionNode.hasReviewables,\n }\n case 'representation':\n const representationNode = node as SearchedRepresentationNode\n return {\n entityType: 'representation',\n id: representationNode.id,\n name: representationNode.name,\n label: representationNode.name,\n parents: representationNode.parents || [],\n }\n case 'workfile':\n const workfileNode = node as SearchedWorkfileNode\n return {\n entityType: 'workfile',\n id: workfileNode.id,\n name: workfileNode.name,\n label: workfileNode.name,\n parents: workfileNode.parents || [],\n }\n default:\n return null\n }\n })\n .filter(Boolean) as SearchEntityLink[] // Remove nulls, ensure correct type\n\n if (!entityData) {\n throw new Error(`No ${entityType} data returned`)\n }\n\n return {\n data: {\n pageInfo: entityData.pageInfo,\n entities: entities,\n },\n }\n } catch (error: any) {\n console.error('Error in getSearchedEntitiesLinks queryFn:', error)\n return { error: { status: 'FETCH_ERROR', error: error.message } as FetchBaseQueryError }\n }\n },\n // Subscribe to link.created and link.deleted WebSocket events\n async onCacheEntryAdded({ projectName }, { cacheDataLoaded, cacheEntryRemoved, dispatch }) {\n let token: any\n\n try {\n await cacheDataLoaded\n\n const handlePubSub = async (_topic: string, message: any) => {\n // Only react to link.created and link.deleted events for this project\n if (!_topic.startsWith('link.created') && !_topic.startsWith('link.deleted')) return\n if (message?.project !== projectName) return\n\n // Link events have inputId and outputId in the summary\n const inputId = message?.summary?.inputId\n const outputId = message?.summary?.outputId\n if (!inputId && !outputId) return\n\n // Invalidate the search query cache when a link is created or deleted\n // This ensures the search results are fresh and don't show stale data\n dispatch(gqlLinksApi.util.invalidateTags([{ type: 'linkSearchItem', id: 'LIST' }]))\n }\n\n // Subscribe to link events\n // NOTE: backend emits topics like 'link.created' and 'link.deleted'.\n // PubSub supports prefix matching when subscribing.\n token = PubSub.subscribe('link', handlePubSub)\n } catch (e) {\n // cache entry removed before loaded - ignore\n }\n\n await cacheEntryRemoved\n if (token) PubSub.unsubscribe(token)\n },\n }),\n }),\n})\n\nexport const { useGetSearchedEntitiesLinksInfiniteQuery } = injectedQueries\n"],"names":["ENTITIES_INFINITE_QUERY_COUNT","injectedQueries","gqlLinksApi","build","lastPage","_allPages","lastPageParam","pageInfo","queryArg","pageParam","api","projectName","entityType","search","parentIds","cursor","variables","result","projectData","entityData","entities","node","taskNode","folderNode","productNode","versionNode","representationNode","workfileNode","error","cacheDataLoaded","cacheEntryRemoved","dispatch","token","handlePubSub","_topic","message","inputId","outputId","PubSub","useGetSearchedEntitiesLinksInfiniteQuery"],"mappings":"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"}
1
+ {"version":3,"file":"getLinks.es.js","sources":["../../../../../../src/api/queries/links/getLinks.ts"],"sourcesContent":["import { FetchBaseQueryError } from '@reduxjs/toolkit/query'\nimport {\n GetSearchedFoldersQuery,\n GetSearchedProductsQuery,\n GetSearchedRepresentationsQuery,\n GetSearchedTasksQuery,\n GetSearchedVersionsQuery,\n GetSearchedWorkfilesQuery,\n gqlLinksApi,\n} from '@shared/api/generated'\nimport { createRealtimeBatcher, PubSub } from '@shared/util'\n\nexport const ENTITIES_INFINITE_QUERY_COUNT = 50 // Number of items to fetch per page\n\n// Define page param type for infinite query\ntype EntitySearchPageParam = {\n cursor: string\n}\n\nexport type SearchEntityLink = {\n id: string\n name: string\n entityType: string\n parents: string[]\n label: string\n icon: string | undefined\n subType: string | undefined\n hasReviewables?: boolean\n}\n\nexport type GetSearchedEntitiesLinksResult = {\n pageInfo: any\n entities: SearchEntityLink[]\n}\n\nexport type GetSearchedEntitiesLinksArgs = {\n projectName: string\n entityType: string // 'folder' | 'product' | 'version' | 'task' | 'representation' | 'workfile'\n search?: string\n parentIds?: string[] // Optional parent IDs to filter entities\n sortBy?: string\n}\n\ntype GetSearchedEntity =\n | GetSearchedTasksQuery\n | GetSearchedFoldersQuery\n | GetSearchedProductsQuery\n | GetSearchedVersionsQuery\n | GetSearchedRepresentationsQuery\n | GetSearchedWorkfilesQuery\ntype SearchedTaskNode = GetSearchedTasksQuery['project']['tasks']['edges'][0]['node']\ntype SearchedFolderNode = GetSearchedFoldersQuery['project']['folders']['edges'][0]['node']\ntype SearchedProductNode = GetSearchedProductsQuery['project']['products']['edges'][0]['node']\ntype SearchedVersionNode = GetSearchedVersionsQuery['project']['versions']['edges'][0]['node']\ntype SearchedRepresentationNode =\n GetSearchedRepresentationsQuery['project']['representations']['edges'][0]['node']\ntype SearchedWorkfileNode = GetSearchedWorkfilesQuery['project']['workfiles']['edges'][0]['node']\n\nconst injectedQueries = gqlLinksApi.injectEndpoints({\n endpoints: (build) => ({\n getSearchedEntitiesLinks: build.infiniteQuery<\n GetSearchedEntitiesLinksResult,\n GetSearchedEntitiesLinksArgs,\n EntitySearchPageParam\n >({\n infiniteQueryOptions: {\n initialPageParam: { cursor: '' },\n getNextPageParam: (lastPage, _allPages, lastPageParam) => {\n const pageInfo = lastPage.pageInfo\n if (!pageInfo.hasNextPage || !pageInfo.endCursor) return undefined\n return { cursor: pageInfo.endCursor }\n },\n },\n providesTags: [{ type: 'linkSearchItem', id: 'LIST' }],\n keepUnusedDataFor: 5,\n queryFn: async ({ queryArg, pageParam }, api) => {\n try {\n const { projectName, entityType, search, parentIds } = queryArg\n const { cursor } = pageParam\n\n // Build query variables\n const variables: any = {\n projectName,\n first: ENTITIES_INFINITE_QUERY_COUNT,\n }\n\n // Add cursor-based pagination\n if (cursor) {\n variables.after = cursor\n }\n\n variables.search = search || ''\n variables.parentIds = parentIds\n\n let result: GetSearchedEntity\n // Use the appropriate generated query based on entity type\n switch (entityType) {\n case 'folder':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedFolders.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'product':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedProducts.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'task':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedTasks.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'version':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedVersions.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'representation':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedRepresentations.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n case 'workfile':\n result = await api\n .dispatch(\n gqlLinksApi.endpoints.GetSearchedWorkfiles.initiate(variables, {\n forceRefetch: true,\n }),\n )\n .unwrap()\n break\n default:\n throw new Error(`Unsupported entity type: ${entityType}`)\n }\n\n const projectData = result.project\n if (!projectData) {\n throw new Error('No project data returned')\n }\n\n // @ts-expect-error - TypeScript doesn't know the structure of projectData\n const entityData = projectData[entityType + 's']\n\n // Transform entity data to search link format\n const entities: SearchEntityLink[] = entityData?.edges\n ?.map(({ node }: any) => {\n switch (entityType) {\n case 'task':\n const taskNode = node as SearchedTaskNode\n return {\n entityType: 'task',\n id: taskNode.id,\n name: taskNode.name,\n label: taskNode.label || taskNode.name,\n parents: taskNode.parents || [],\n subType: taskNode.subType,\n }\n case 'folder':\n const folderNode = node as SearchedFolderNode\n return {\n entityType: 'folder',\n id: folderNode.id,\n name: folderNode.name,\n label: folderNode.label || folderNode.name,\n parents: folderNode.parents || [],\n subType: folderNode.subType,\n }\n case 'product':\n const productNode = node as SearchedProductNode\n return {\n entityType: 'product',\n id: productNode.id,\n name: productNode.name,\n label: productNode.name,\n parents: productNode.parents || [],\n subType: productNode.subType,\n }\n case 'version':\n const versionNode = node as SearchedVersionNode\n return {\n entityType: 'version',\n id: versionNode.id,\n name: versionNode.name,\n label: versionNode.name,\n parents: versionNode.parents || [],\n hasReviewables: versionNode.hasReviewables,\n }\n case 'representation':\n const representationNode = node as SearchedRepresentationNode\n return {\n entityType: 'representation',\n id: representationNode.id,\n name: representationNode.name,\n label: representationNode.name,\n parents: representationNode.parents || [],\n }\n case 'workfile':\n const workfileNode = node as SearchedWorkfileNode\n return {\n entityType: 'workfile',\n id: workfileNode.id,\n name: workfileNode.name,\n label: workfileNode.name,\n parents: workfileNode.parents || [],\n }\n default:\n return null\n }\n })\n .filter(Boolean) as SearchEntityLink[] // Remove nulls, ensure correct type\n\n if (!entityData) {\n throw new Error(`No ${entityType} data returned`)\n }\n\n return {\n data: {\n pageInfo: entityData.pageInfo,\n entities: entities,\n },\n }\n } catch (error: any) {\n console.error('Error in getSearchedEntitiesLinks queryFn:', error)\n return { error: { status: 'FETCH_ERROR', error: error.message } as FetchBaseQueryError }\n }\n },\n }),\n }),\n})\n\nexport const { useGetSearchedEntitiesLinksInfiniteQuery } = injectedQueries\n"],"names":["ENTITIES_INFINITE_QUERY_COUNT","injectedQueries","gqlLinksApi","build","lastPage","_allPages","lastPageParam","pageInfo","queryArg","pageParam","api","projectName","entityType","search","parentIds","cursor","variables","result","projectData","entityData","entities","node","taskNode","folderNode","productNode","versionNode","representationNode","workfileNode","error","useGetSearchedEntitiesLinksInfiniteQuery"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"updateLinks.cjs.js","sources":["../../../../../../src/api/queries/links/updateLinks.ts"],"sourcesContent":["import { gqlLinksApi, linksApi } from '@shared/api/generated'\nimport { RootState } from '@reduxjs/toolkit/query'\nimport { current, ThunkDispatch, UnknownAction } from '@reduxjs/toolkit'\nimport { EntityLink, EntityWithLinks, entityLinksApi } from './getEntityLinks'\n\ntype Entity = {\n entityType: 'folder' | 'product' | 'version' | 'representation' | 'task' | 'workfile'\n entityId: string\n name: string\n label?: string | null\n parents: string[]\n subType: string | undefined // Optional subtype for folders, products, versions\n}\n\n// Helper function to get entity data by type\nconst getEntityDataByType = async (\n entityType: 'folder' | 'product' | 'version' | 'representation' | 'task' | 'workfile',\n entityId: string,\n projectName: string,\n dispatch: ThunkDispatch<any, any, UnknownAction>,\n) => {\n switch (entityType) {\n case 'task': {\n const resTask = await dispatch(\n gqlLinksApi.endpoints.GetTaskLinkData.initiate({\n projectName,\n taskId: entityId,\n }),\n ).unwrap()\n return resTask?.project.task\n }\n case 'folder': {\n const resFolder = await dispatch(\n gqlLinksApi.endpoints.GetFolderLinkData.initiate({\n projectName,\n folderId: entityId,\n }),\n ).unwrap()\n return resFolder?.project.folder\n }\n case 'product': {\n const resProduct = await dispatch(\n gqlLinksApi.endpoints.GetProductLinkData.initiate({\n projectName,\n productId: entityId,\n }),\n ).unwrap()\n return resProduct?.project.product\n }\n case 'version': {\n const resVersion = await dispatch(\n gqlLinksApi.endpoints.GetVersionLinkData.initiate({\n projectName,\n versionId: entityId,\n }),\n ).unwrap()\n return resVersion?.project.version\n }\n case 'representation': {\n const resRepresentation = await dispatch(\n gqlLinksApi.endpoints.GetRepresentationLinkData.initiate({\n projectName,\n representationId: entityId,\n }),\n ).unwrap()\n return resRepresentation?.project.representation\n }\n case 'workfile': {\n const resWorkfile = await dispatch(\n gqlLinksApi.endpoints.GetWorkfileLinkData.initiate({\n projectName,\n workfileId: entityId,\n }),\n ).unwrap()\n return resWorkfile?.project.workfile\n }\n default:\n throw new Error(`Unknown entity type: ${entityType}`)\n }\n}\n\n// Helper function to patch entity links cache for all entity types\nconst patchEntityLinksCache = (\n {\n projectName,\n sourceEntity,\n targetEntity,\n linkId,\n linkType,\n direction,\n isDelete = false,\n }: {\n projectName: string\n sourceEntity: Entity\n targetEntity: Entity\n linkId: string\n linkType: string\n direction: 'in' | 'out'\n isDelete?: boolean\n },\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches: any[] = [],\n) => {\n // Helper function to patch a single entity's links\n const patchEntityLinks = (\n entityToPatch: Entity,\n otherEntity: Entity,\n linkDirection: 'in' | 'out',\n ) => {\n // Get all cached query arguments for the getEntityLinks endpoint\n const cachedArgs = entityLinksApi.util.selectCachedArgsForQuery(state, 'getEntityLinks')\n\n // Filter for queries that match our project and entity type\n const relevantArgs = cachedArgs.filter(\n (args) => args.projectName === projectName && args.entityType === entityToPatch.entityType,\n )\n\n let entityFoundInAnyCache = false\n\n for (const args of relevantArgs) {\n try {\n const patch = dispatch(\n entityLinksApi.util.updateQueryData(\n 'getEntityLinks',\n args,\n (draft: EntityWithLinks[]) => {\n // Find the entity in the cache\n const entityInCache = draft.find((entity) => entity.id === entityToPatch.entityId)\n if (!entityInCache) {\n // Entity not in this specific cache, continue to next one\n return\n }\n\n entityFoundInAnyCache = true\n console.log(\n `Found and patching ${entityToPatch.entityType} ${entityToPatch.entityId} in cache`,\n )\n\n if (isDelete) {\n // Remove the link from the entity\n entityInCache.links = entityInCache.links.filter((link) => link.id !== linkId)\n } else {\n console.log(`Adding new link to ${entityToPatch.entityType}`)\n // Add the new link to the entity\n const newLink: EntityLink = {\n id: linkId,\n direction: linkDirection,\n linkType,\n entityType: otherEntity.entityType,\n node: {\n id: otherEntity.entityId,\n name: otherEntity.name,\n label: otherEntity.label,\n parents: otherEntity.parents,\n subType: otherEntity.subType,\n },\n }\n\n // Check if link already exists and update it, or add new one\n const existingLinkIndex = entityInCache.links.findIndex(\n (link) => link.id === linkId,\n )\n\n if (existingLinkIndex !== -1) {\n entityInCache.links[existingLinkIndex] = newLink\n } else {\n console.log(\n `Adding new link to ${entityToPatch.entityType} links cache`,\n newLink,\n current(entityInCache),\n )\n entityInCache.links.push(newLink)\n }\n }\n },\n ),\n )\n\n patches.push(patch)\n } catch (error) {\n console.error(`Error patching cache for ${entityToPatch.entityType}:`, error)\n }\n }\n\n // If entity was not found in any cache, handle based on context\n if (!entityFoundInAnyCache) {\n // For source entities (where user is creating the link from), we need to invalidate\n // to ensure the user sees the new link appear in the UI\n if (entityToPatch.entityId === sourceEntity.entityId) {\n console.warn(\n `Source ${entityToPatch.entityType} ${entityToPatch.entityId} not in cache - invalidating to refresh UI`,\n )\n dispatch(\n entityLinksApi.util.invalidateTags([\n { type: 'link', id: `${projectName}-${entityToPatch.entityType}` },\n ]),\n )\n } else {\n // For target entities, we can skip since they're not currently visible\n console.log(\n `Target ${entityToPatch.entityType} ${entityToPatch.entityId} not in cache - skipping patch (entity not currently visible)`,\n )\n // No action needed - when the entity is eventually loaded, it will have the correct links from the server\n }\n }\n }\n\n // Patch the source entity with the link\n patchEntityLinks(sourceEntity, targetEntity, direction)\n\n // Patch the target entity with the link (flip direction)\n const targetDirection = direction === 'in' ? 'out' : 'in'\n patchEntityLinks(targetEntity, sourceEntity, targetDirection)\n}\n\nconst enhancedApi = linksApi.enhanceEndpoints({\n endpoints: {\n deleteEntityLink: {\n transformErrorResponse: (error: any) => error.data?.detail || '',\n async onQueryStarted(\n // @ts-ignore - patch is purely used for patching the entities\n { linkId, projectName, patch },\n { dispatch, getState, queryFulfilled },\n ) {\n const state = getState()\n let patches: any[] = []\n\n const sourceEntity = patch?.source\n const targetEntity = patch?.target\n const linkType = patch?.linkType || ''\n const direction = patch?.direction || 'out'\n\n if (sourceEntity && targetEntity) {\n try {\n // Update entity links cache for both entities\n patchEntityLinksCache(\n {\n projectName,\n sourceEntity,\n targetEntity,\n linkId,\n linkType,\n direction,\n isDelete: true,\n },\n { state, dispatch },\n patches,\n )\n\n // Wait for the mutation to finish\n await queryFulfilled\n } catch (error) {\n console.error('Error patching entities during link deletion:', error)\n // Undo patches if there's an error\n for (const patch of patches) {\n patch.undo()\n }\n\n // Invalidate entity links queries as fallback\n dispatch(\n entityLinksApi.util.invalidateTags([\n { type: 'link', id: `${projectName}-${sourceEntity.entityType}` },\n { type: 'link', id: `${projectName}-${targetEntity.entityType}` },\n ]),\n )\n }\n } else {\n console.warn('Source or target entity not provided for link deletion')\n }\n },\n },\n createEntityLink: {\n transformErrorResponse: (error: any) => error.data?.detail || '',\n async onQueryStarted(\n // @ts-ignore - patch is purely used for patching the entities\n { projectName, createLinkRequestModel, patch },\n { dispatch, getState, queryFulfilled },\n ) {\n const { linkType, id: linkId } = createLinkRequestModel\n const state = getState()\n\n let patches: any[] = []\n\n const sourceEntity = patch?.source\n const sourceEntityType = sourceEntity?.entityType\n const sourceEntityId = sourceEntity?.entityId\n const targetEntity = patch?.target\n const targetEntityType = targetEntity?.entityType\n const targetEntityId = targetEntity?.entityId\n const direction = patch?.direction || ('out' as 'in' | 'out')\n const linkTypeName = linkType?.split('|')[0] as string\n\n try {\n if (sourceEntity.entityType && targetEntity) {\n // Get the source entity data based on its type\n const sourcePromise = getEntityDataByType(\n sourceEntityType,\n sourceEntityId,\n projectName,\n dispatch,\n )\n\n const targetPromise = getEntityDataByType(\n targetEntityType,\n targetEntityId,\n projectName,\n dispatch,\n )\n\n // Wait for both cache data and source entity data to be loaded\n const res = await Promise.all([sourcePromise, targetPromise])\n const sourceEntityData = res[0]\n const targetEntityData = res[1]\n\n if (!sourceEntityData || !targetEntityData) {\n throw new Error('Source or target entity data not found')\n }\n\n if (!linkId) {\n throw new Error('Link ID not found in cache entry')\n }\n\n const sourceEntity: Entity = {\n entityType: sourceEntityType,\n entityId: sourceEntityId,\n name: sourceEntityData.name,\n label: 'label' in sourceEntityData ? sourceEntityData.label : undefined,\n parents: sourceEntityData.parents || [],\n subType: 'subType' in sourceEntityData ? sourceEntityData.subType : undefined,\n }\n\n const targetEntity: Entity = {\n entityType: targetEntityType,\n entityId: targetEntityId,\n name: targetEntityData.name,\n label: 'label' in targetEntityData ? targetEntityData.label : undefined,\n parents: targetEntityData.parents || [],\n subType: 'subType' in targetEntityData ? targetEntityData.subType : undefined,\n }\n\n // Update entity links cache for both entities\n patchEntityLinksCache(\n {\n projectName,\n sourceEntity,\n targetEntity,\n linkId,\n linkType: linkTypeName,\n direction,\n isDelete: false,\n },\n { state, dispatch },\n patches,\n )\n\n // Wait for the mutation to finish (undo patches if it fails)\n await queryFulfilled\n } else {\n console.warn('Source entity type not provided, falling back to task query')\n throw new Error('Source entity type not provided')\n }\n } catch (error) {\n console.error(error)\n\n // Undo patches if the mutation fails\n for (const patch of patches) {\n patch.undo()\n }\n\n // Invalidate entity links queries as fallback\n if (sourceEntity && targetEntity) {\n dispatch(\n entityLinksApi.util.invalidateTags([\n { type: 'link', id: `${projectName}-${sourceEntity.entityType}` },\n { type: 'link', id: `${projectName}-${targetEntity.entityType}` },\n ]),\n )\n }\n }\n },\n },\n },\n})\n\nexport const { useDeleteEntityLinkMutation, useCreateEntityLinkMutation } = enhancedApi\n"],"names":["getEntityDataByType","entityType","entityId","projectName","dispatch","gqlLinksApi","patchEntityLinksCache","sourceEntity","targetEntity","linkId","linkType","direction","isDelete","state","patches","patchEntityLinks","entityToPatch","otherEntity","linkDirection","relevantArgs","entityLinksApi","args","entityFoundInAnyCache","patch","draft","entityInCache","entity","link","newLink","existingLinkIndex","current","error","enhancedApi","linksApi","getState","queryFulfilled","createLinkRequestModel","sourceEntityType","sourceEntityId","targetEntityType","targetEntityId","linkTypeName","sourcePromise","targetPromise","res","sourceEntityData","targetEntityData","useDeleteEntityLinkMutation","useCreateEntityLinkMutation"],"mappings":"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"}
1
+ {"version":3,"file":"updateLinks.cjs.js","sources":["../../../../../../src/api/queries/links/updateLinks.ts"],"sourcesContent":["import { gqlLinksApi, linksApi } from '@shared/api/generated'\nimport { RootState } from '@reduxjs/toolkit/query'\nimport { current, ThunkDispatch, UnknownAction } from '@reduxjs/toolkit'\nimport { entityLinksApi } from './getEntityLinks'\nimport type { EntityLink, EntityWithLinks } from './getEntityLinks'\n\ntype Entity = {\n entityType: 'folder' | 'product' | 'version' | 'representation' | 'task' | 'workfile'\n entityId: string\n name: string\n label?: string | null\n parents: string[]\n subType: string | undefined // Optional subtype for folders, products, versions\n}\n\n// Helper function to get entity data by type\nconst getEntityDataByType = async (\n entityType: 'folder' | 'product' | 'version' | 'representation' | 'task' | 'workfile',\n entityId: string,\n projectName: string,\n dispatch: ThunkDispatch<any, any, UnknownAction>,\n) => {\n switch (entityType) {\n case 'task': {\n const resTask = await dispatch(\n gqlLinksApi.endpoints.GetTaskLinkData.initiate({\n projectName,\n taskId: entityId,\n }),\n ).unwrap()\n return resTask?.project.task\n }\n case 'folder': {\n const resFolder = await dispatch(\n gqlLinksApi.endpoints.GetFolderLinkData.initiate({\n projectName,\n folderId: entityId,\n }),\n ).unwrap()\n return resFolder?.project.folder\n }\n case 'product': {\n const resProduct = await dispatch(\n gqlLinksApi.endpoints.GetProductLinkData.initiate({\n projectName,\n productId: entityId,\n }),\n ).unwrap()\n return resProduct?.project.product\n }\n case 'version': {\n const resVersion = await dispatch(\n gqlLinksApi.endpoints.GetVersionLinkData.initiate({\n projectName,\n versionId: entityId,\n }),\n ).unwrap()\n return resVersion?.project.version\n }\n case 'representation': {\n const resRepresentation = await dispatch(\n gqlLinksApi.endpoints.GetRepresentationLinkData.initiate({\n projectName,\n representationId: entityId,\n }),\n ).unwrap()\n return resRepresentation?.project.representation\n }\n case 'workfile': {\n const resWorkfile = await dispatch(\n gqlLinksApi.endpoints.GetWorkfileLinkData.initiate({\n projectName,\n workfileId: entityId,\n }),\n ).unwrap()\n return resWorkfile?.project.workfile\n }\n default:\n throw new Error(`Unknown entity type: ${entityType}`)\n }\n}\n\n// Helper function to patch entity links cache for all entity types\nconst patchEntityLinksCache = (\n {\n projectName,\n sourceEntity,\n targetEntity,\n linkId,\n linkType,\n direction,\n isDelete = false,\n }: {\n projectName: string\n sourceEntity: Entity\n targetEntity: Entity\n linkId: string\n linkType: string\n direction: 'in' | 'out'\n isDelete?: boolean\n },\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches: any[] = [],\n) => {\n // Helper function to patch a single entity's links\n const patchEntityLinks = (\n entityToPatch: Entity,\n otherEntity: Entity,\n linkDirection: 'in' | 'out',\n ) => {\n // Get all cached query arguments for the getEntityLinks endpoint\n const cachedArgs = entityLinksApi.util.selectCachedArgsForQuery(state, 'getEntityLinks')\n\n // Filter for queries that match our project and entity type\n const relevantArgs = cachedArgs.filter(\n (args) => args.projectName === projectName && args.entityType === entityToPatch.entityType,\n )\n\n let entityFoundInAnyCache = false\n\n for (const args of relevantArgs) {\n try {\n const patch = dispatch(\n entityLinksApi.util.updateQueryData(\n 'getEntityLinks',\n args,\n (draft: EntityWithLinks[]) => {\n // Find the entity in the cache\n const entityInCache = draft.find((entity) => entity.id === entityToPatch.entityId)\n if (!entityInCache) {\n // Entity not in this specific cache, continue to next one\n return\n }\n\n entityFoundInAnyCache = true\n console.log(\n `Found and patching ${entityToPatch.entityType} ${entityToPatch.entityId} in cache`,\n )\n\n if (isDelete) {\n // Remove the link from the entity\n entityInCache.links = entityInCache.links.filter((link) => link.id !== linkId)\n } else {\n console.log(`Adding new link to ${entityToPatch.entityType}`)\n // Add the new link to the entity\n const newLink: EntityLink = {\n id: linkId,\n direction: linkDirection,\n linkType,\n entityType: otherEntity.entityType,\n node: {\n id: otherEntity.entityId,\n name: otherEntity.name,\n label: otherEntity.label,\n parents: otherEntity.parents,\n subType: otherEntity.subType,\n },\n }\n\n // Check if link already exists and update it, or add new one\n const existingLinkIndex = entityInCache.links.findIndex(\n (link) => link.id === linkId,\n )\n\n if (existingLinkIndex !== -1) {\n entityInCache.links[existingLinkIndex] = newLink\n } else {\n console.log(\n `Adding new link to ${entityToPatch.entityType} links cache`,\n newLink,\n current(entityInCache),\n )\n entityInCache.links.push(newLink)\n }\n }\n },\n ),\n )\n\n patches.push(patch)\n } catch (error) {\n console.error(`Error patching cache for ${entityToPatch.entityType}:`, error)\n }\n }\n\n // If entity was not found in any cache, handle based on context\n if (!entityFoundInAnyCache) {\n // For source entities (where user is creating the link from), we need to invalidate\n // to ensure the user sees the new link appear in the UI\n if (entityToPatch.entityId === sourceEntity.entityId) {\n console.warn(\n `Source ${entityToPatch.entityType} ${entityToPatch.entityId} not in cache - invalidating to refresh UI`,\n )\n dispatch(\n entityLinksApi.util.invalidateTags([\n { type: 'link', id: `${projectName}-${entityToPatch.entityType}` },\n ]),\n )\n } else {\n // For target entities, we can skip since they're not currently visible\n console.log(\n `Target ${entityToPatch.entityType} ${entityToPatch.entityId} not in cache - skipping patch (entity not currently visible)`,\n )\n // No action needed - when the entity is eventually loaded, it will have the correct links from the server\n }\n }\n }\n\n // Patch the source entity with the link\n patchEntityLinks(sourceEntity, targetEntity, direction)\n\n // Patch the target entity with the link (flip direction)\n const targetDirection = direction === 'in' ? 'out' : 'in'\n patchEntityLinks(targetEntity, sourceEntity, targetDirection)\n}\n\nconst enhancedApi = linksApi.enhanceEndpoints({\n endpoints: {\n deleteEntityLink: {\n transformErrorResponse: (error: any) => error.data?.detail || '',\n async onQueryStarted(\n // @ts-ignore - patch is purely used for patching the entities\n { linkId, projectName, patch },\n { dispatch, getState, queryFulfilled },\n ) {\n const state = getState()\n let patches: any[] = []\n\n const sourceEntity = patch?.source\n const targetEntity = patch?.target\n const linkType = patch?.linkType || ''\n const direction = patch?.direction || 'out'\n\n if (sourceEntity && targetEntity) {\n try {\n // Update entity links cache for both entities\n patchEntityLinksCache(\n {\n projectName,\n sourceEntity,\n targetEntity,\n linkId,\n linkType,\n direction,\n isDelete: true,\n },\n { state, dispatch },\n patches,\n )\n\n // Wait for the mutation to finish\n await queryFulfilled\n } catch (error) {\n console.error('Error patching entities during link deletion:', error)\n // Undo patches if there's an error\n for (const patch of patches) {\n patch.undo()\n }\n\n // Invalidate entity links queries as fallback\n dispatch(\n entityLinksApi.util.invalidateTags([\n { type: 'link', id: `${projectName}-${sourceEntity.entityType}` },\n { type: 'link', id: `${projectName}-${targetEntity.entityType}` },\n ]),\n )\n }\n } else {\n console.warn('Source or target entity not provided for link deletion')\n }\n },\n },\n createEntityLink: {\n transformErrorResponse: (error: any) => error.data?.detail || '',\n async onQueryStarted(\n // @ts-ignore - patch is purely used for patching the entities\n { projectName, createLinkRequestModel, patch },\n { dispatch, getState, queryFulfilled },\n ) {\n const { linkType, id: linkId } = createLinkRequestModel\n const state = getState()\n\n let patches: any[] = []\n\n const sourceEntity = patch?.source\n const sourceEntityType = sourceEntity?.entityType\n const sourceEntityId = sourceEntity?.entityId\n const targetEntity = patch?.target\n const targetEntityType = targetEntity?.entityType\n const targetEntityId = targetEntity?.entityId\n const direction = patch?.direction || ('out' as 'in' | 'out')\n const linkTypeName = linkType?.split('|')[0] as string\n\n try {\n if (sourceEntity.entityType && targetEntity) {\n // Get the source entity data based on its type\n const sourcePromise = getEntityDataByType(\n sourceEntityType,\n sourceEntityId,\n projectName,\n dispatch,\n )\n\n const targetPromise = getEntityDataByType(\n targetEntityType,\n targetEntityId,\n projectName,\n dispatch,\n )\n\n // Wait for both cache data and source entity data to be loaded\n const res = await Promise.all([sourcePromise, targetPromise])\n const sourceEntityData = res[0]\n const targetEntityData = res[1]\n\n if (!sourceEntityData || !targetEntityData) {\n throw new Error('Source or target entity data not found')\n }\n\n if (!linkId) {\n throw new Error('Link ID not found in cache entry')\n }\n\n const sourceEntity: Entity = {\n entityType: sourceEntityType,\n entityId: sourceEntityId,\n name: sourceEntityData.name,\n label: 'label' in sourceEntityData ? sourceEntityData.label : undefined,\n parents: sourceEntityData.parents || [],\n subType: 'subType' in sourceEntityData ? sourceEntityData.subType : undefined,\n }\n\n const targetEntity: Entity = {\n entityType: targetEntityType,\n entityId: targetEntityId,\n name: targetEntityData.name,\n label: 'label' in targetEntityData ? targetEntityData.label : undefined,\n parents: targetEntityData.parents || [],\n subType: 'subType' in targetEntityData ? targetEntityData.subType : undefined,\n }\n\n // Update entity links cache for both entities\n patchEntityLinksCache(\n {\n projectName,\n sourceEntity,\n targetEntity,\n linkId,\n linkType: linkTypeName,\n direction,\n isDelete: false,\n },\n { state, dispatch },\n patches,\n )\n\n // Wait for the mutation to finish (undo patches if it fails)\n await queryFulfilled\n } else {\n console.warn('Source entity type not provided, falling back to task query')\n throw new Error('Source entity type not provided')\n }\n } catch (error) {\n console.error(error)\n\n // Undo patches if the mutation fails\n for (const patch of patches) {\n patch.undo()\n }\n\n // Invalidate entity links queries as fallback\n if (sourceEntity && targetEntity) {\n dispatch(\n entityLinksApi.util.invalidateTags([\n { type: 'link', id: `${projectName}-${sourceEntity.entityType}` },\n { type: 'link', id: `${projectName}-${targetEntity.entityType}` },\n ]),\n )\n }\n }\n },\n },\n },\n})\n\nexport const { useDeleteEntityLinkMutation, useCreateEntityLinkMutation } = enhancedApi\n"],"names":["getEntityDataByType","entityType","entityId","projectName","dispatch","gqlLinksApi","patchEntityLinksCache","sourceEntity","targetEntity","linkId","linkType","direction","isDelete","state","patches","patchEntityLinks","entityToPatch","otherEntity","linkDirection","relevantArgs","entityLinksApi","args","entityFoundInAnyCache","patch","draft","entityInCache","entity","link","newLink","existingLinkIndex","current","error","enhancedApi","linksApi","getState","queryFulfilled","createLinkRequestModel","sourceEntityType","sourceEntityId","targetEntityType","targetEntityId","linkTypeName","sourcePromise","targetPromise","res","sourceEntityData","targetEntityData","useDeleteEntityLinkMutation","useCreateEntityLinkMutation"],"mappings":"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"}