@ynput/ayon-frontend-shared 0.2.39 → 0.2.41

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 (436) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +24 -22
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/api.cjs.js +1 -1
  5. package/dist/api.es.js +256 -248
  6. package/dist/api.es.js.map +1 -1
  7. package/dist/index.cjs.js +1 -1
  8. package/dist/index.es.js +11 -9
  9. package/dist/index.es.js.map +1 -1
  10. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js +1 -1
  11. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js.map +1 -1
  12. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js +16 -16
  13. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js.map +1 -1
  14. package/dist/shared/src/api/queries/config/getConfig.cjs.js +2 -0
  15. package/dist/shared/src/api/queries/config/getConfig.cjs.js.map +1 -0
  16. package/dist/shared/src/api/queries/config/getConfig.es.js +111 -0
  17. package/dist/shared/src/api/queries/config/getConfig.es.js.map +1 -0
  18. package/dist/shared/src/api/queries/config/updateConfig.cjs.js +2 -0
  19. package/dist/shared/src/api/queries/config/updateConfig.cjs.js.map +1 -0
  20. package/dist/shared/src/api/queries/config/updateConfig.es.js +13 -0
  21. package/dist/shared/src/api/queries/config/updateConfig.es.js.map +1 -0
  22. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +1 -1
  23. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  24. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +5 -3
  25. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  26. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +1 -1
  27. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
  28. package/dist/shared/src/api/queries/entities/updateEntity.es.js +5 -3
  29. package/dist/shared/src/api/queries/entities/updateEntity.es.js.map +1 -1
  30. package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js +1 -1
  31. package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js.map +1 -1
  32. package/dist/shared/src/api/queries/links/getEntityLinks.es.js +106 -86
  33. package/dist/shared/src/api/queries/links/getEntityLinks.es.js.map +1 -1
  34. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
  35. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  36. package/dist/shared/src/api/queries/overview/updateOverview.es.js +68 -66
  37. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  38. package/dist/shared/src/api/queries/users/getUsers.cjs.js +2 -2
  39. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  40. package/dist/shared/src/api/queries/users/getUsers.es.js +34 -32
  41. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  42. package/dist/shared/src/components/AddonLoadingScreen/AddonLoadingScreen.cjs.js +8 -7
  43. package/dist/shared/src/components/AddonLoadingScreen/AddonLoadingScreen.cjs.js.map +1 -1
  44. package/dist/shared/src/components/AddonLoadingScreen/AddonLoadingScreen.es.js +24 -20
  45. package/dist/shared/src/components/AddonLoadingScreen/AddonLoadingScreen.es.js.map +1 -1
  46. package/dist/shared/src/components/Chips/Chips.cjs.js +10 -6
  47. package/dist/shared/src/components/Chips/Chips.cjs.js.map +1 -1
  48. package/dist/shared/src/components/Chips/Chips.es.js +44 -38
  49. package/dist/shared/src/components/Chips/Chips.es.js.map +1 -1
  50. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
  51. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  52. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +4 -2
  53. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  54. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  55. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  56. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +4 -2
  57. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  58. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  59. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  60. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +4 -2
  61. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  62. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
  63. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
  64. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +4 -2
  65. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
  66. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  67. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
  68. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +4 -2
  69. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  70. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  71. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  72. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +4 -2
  73. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  74. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  75. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  76. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +6 -4
  77. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  78. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  79. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  80. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +4 -2
  81. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  82. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
  83. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  84. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +28 -25
  85. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  86. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js.map +1 -1
  87. package/dist/shared/src/components/LinksManager/LinksManager.es.js.map +1 -1
  88. package/dist/shared/src/components/LinksManager/LinksManager.styled.cjs.js +5 -0
  89. package/dist/shared/src/components/LinksManager/LinksManager.styled.cjs.js.map +1 -1
  90. package/dist/shared/src/components/LinksManager/LinksManager.styled.es.js +5 -0
  91. package/dist/shared/src/components/LinksManager/LinksManager.styled.es.js.map +1 -1
  92. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  93. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  94. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +4 -2
  95. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  96. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
  97. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
  98. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +4 -2
  99. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
  100. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  101. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  102. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +4 -2
  103. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  104. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
  105. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  106. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +6 -4
  107. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  108. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  109. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  110. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +4 -2
  111. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  112. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  113. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  114. package/dist/shared/src/components/RenameForm/RenameForm.es.js +4 -2
  115. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  116. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
  117. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  118. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +4 -2
  119. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  120. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  121. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  122. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +4 -2
  123. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  124. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  125. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  126. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +5 -3
  127. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  128. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  129. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  130. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +4 -2
  131. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  132. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
  133. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  134. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +4 -2
  135. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  136. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  137. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  138. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +8 -6
  139. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  140. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  141. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  142. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +4 -2
  143. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  144. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  145. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  146. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +4 -2
  147. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  148. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  149. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  150. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +6 -4
  151. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  152. package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
  153. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  154. package/dist/shared/src/components/Watchers/Watchers.es.js +4 -2
  155. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  156. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  157. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  158. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +4 -2
  159. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  160. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  161. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  162. package/dist/shared/src/containers/Actions/Actions.es.js +4 -2
  163. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  164. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  165. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  166. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +4 -2
  167. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  168. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  169. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  170. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +4 -2
  171. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  172. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  173. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  174. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +4 -2
  175. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  176. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  177. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  178. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +5 -3
  179. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  180. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  181. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  182. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +4 -2
  183. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  184. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  185. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  186. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +4 -2
  187. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  188. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js +1 -1
  189. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js.map +1 -1
  190. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js +4 -2
  191. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js.map +1 -1
  192. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  193. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  194. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +4 -2
  195. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  196. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  197. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  198. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +4 -2
  199. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  200. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  201. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  202. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +4 -2
  203. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  204. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  205. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  206. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +4 -2
  207. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  208. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  209. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  210. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +4 -2
  211. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  212. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  213. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  214. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +4 -2
  215. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  216. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  217. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  218. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +4 -2
  219. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  220. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  221. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  222. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +4 -2
  223. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  224. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
  225. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  226. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +4 -2
  227. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  228. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  229. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  230. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +4 -2
  231. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  232. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  233. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  234. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +7 -5
  235. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  236. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  237. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  238. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +4 -2
  239. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  240. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  241. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  242. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +4 -2
  243. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  244. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  245. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  246. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +4 -2
  247. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  248. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  249. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  250. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +4 -2
  251. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  252. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  253. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  254. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +4 -2
  255. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  256. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  257. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  258. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +4 -2
  259. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  260. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  261. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  262. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +6 -4
  263. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  264. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  265. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  266. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +4 -2
  267. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  268. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  269. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  270. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +7 -5
  271. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  272. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  273. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  274. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +4 -2
  275. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  276. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  277. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  278. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +4 -2
  279. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  280. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  281. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  282. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +4 -2
  283. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  284. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  285. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  286. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +4 -2
  287. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  288. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  289. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  290. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +30 -28
  291. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  292. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  293. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  294. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +4 -2
  295. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  296. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  297. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  298. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +4 -2
  299. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  300. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  301. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  302. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +4 -2
  303. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  304. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  305. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  306. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +4 -2
  307. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  308. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  309. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  310. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +4 -2
  311. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  312. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  313. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  314. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +4 -2
  315. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  316. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  317. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  318. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +15 -13
  319. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  320. package/dist/shared/src/containers/ProjectTreeTable/utils/linksToTableData.cjs.js +1 -1
  321. package/dist/shared/src/containers/ProjectTreeTable/utils/linksToTableData.cjs.js.map +1 -1
  322. package/dist/shared/src/containers/ProjectTreeTable/utils/linksToTableData.es.js +34 -21
  323. package/dist/shared/src/containers/ProjectTreeTable/utils/linksToTableData.es.js.map +1 -1
  324. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  325. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  326. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +31 -28
  327. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  328. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  329. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  330. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +4 -2
  331. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  332. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  333. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  334. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +4 -2
  335. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  336. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  337. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  338. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +4 -2
  339. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  340. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  341. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  342. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +4 -2
  343. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  344. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  345. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  346. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +6 -4
  347. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  348. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  349. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  350. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +4 -2
  351. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  352. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js +1 -1
  353. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -1
  354. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js +4 -2
  355. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -1
  356. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
  357. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
  358. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +4 -2
  359. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
  360. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
  361. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
  362. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +4 -2
  363. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
  364. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  365. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  366. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +4 -2
  367. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  368. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  369. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  370. package/dist/shared/src/context/AddonProjectContext.es.js +6 -4
  371. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  372. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  373. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  374. package/dist/shared/src/context/DetailsPanelContext.es.js +6 -4
  375. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  376. package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
  377. package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
  378. package/dist/shared/src/context/GlobalContext.es.js +6 -4
  379. package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
  380. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  381. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  382. package/dist/shared/src/context/PowerpackContext.es.js +8 -6
  383. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  384. package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
  385. package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
  386. package/dist/shared/src/context/ProjectContext.es.js +44 -38
  387. package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
  388. package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
  389. package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
  390. package/dist/shared/src/context/ProjectFoldersContext.es.js +6 -4
  391. package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
  392. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  393. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  394. package/dist/shared/src/context/RemoteModulesContext.es.js +6 -4
  395. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  396. package/dist/shared/src/context/UriContext.cjs.js +1 -1
  397. package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
  398. package/dist/shared/src/context/UriContext.es.js +7 -5
  399. package/dist/shared/src/context/UriContext.es.js.map +1 -1
  400. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  401. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  402. package/dist/shared/src/context/WebsocketContext.es.js +6 -4
  403. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  404. package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
  405. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  406. package/dist/shared/src/hooks/useActionTriggers.es.js +4 -2
  407. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  408. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  409. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  410. package/dist/shared/src/hooks/useEntityUpdate.es.js +4 -2
  411. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  412. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js +1 -1
  413. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
  414. package/dist/shared/src/hooks/useGetEntityGroups.es.js +4 -2
  415. package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
  416. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
  417. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
  418. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +4 -2
  419. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
  420. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
  421. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  422. package/dist/shared/src/hooks/useScopedStatuses.es.js +6 -4
  423. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  424. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  425. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  426. package/dist/shared/src/hooks/useUserProjectConfig.es.js +4 -2
  427. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  428. package/dist/types/api/queries/config/getConfig.d.ts +747 -0
  429. package/dist/types/api/queries/config/index.d.ts +2 -0
  430. package/dist/types/api/queries/config/updateConfig.d.ts +171 -0
  431. package/dist/types/api/queries/index.d.ts +1 -0
  432. package/dist/types/api/queries/links/getEntityLinks.d.ts +2 -1
  433. package/dist/types/components/AddonLoadingScreen/AddonLoadingScreen.d.ts +7 -2
  434. package/dist/types/components/Chips/Chips.d.ts +1 -0
  435. package/dist/types/components/LinksManager/LinksManager.d.ts +1 -0
  436. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"DetailsPanelFloating.cjs.js","sources":["../../../../../../src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.tsx"],"sourcesContent":["import { FC, useMemo, useState } from 'react'\nimport * as Styled from './DetailsPanelFloating.styled'\nimport getThumbnails from '../helpers/getThumbnails'\nimport { StackedThumbnails } from '@shared/components'\nimport { upperFirst } from 'lodash'\nimport { AssigneeField, getTextColor, Icon } from '@ynput/ayon-react-components'\nimport {\n PiPWrapper,\n DetailsPanelTab,\n useScopedDetailsPanel,\n ProjectContextProvider,\n} from '@shared/context'\nimport { useGetEntitiesDetailsPanelQuery } from '@shared/api'\nimport { useGetKanbanProjectUsersQuery, useGetProjectsInfoQuery } from '@shared/api'\nimport getAllProjectStatuses from '../helpers/getAllProjectsStatuses'\nimport FeedWrapper from '../FeedWrapper'\nimport mergeProjectInfo from '../helpers/mergeProjectInfo'\nimport { buildDetailsPanelTitles } from '../helpers/buildDetailsPanelTitles'\nimport { useDetailsPanelContext } from '@shared/context'\n\nexport interface DetailsPanelFloatingProps {}\n\nexport const DetailsPanelFloating: FC<DetailsPanelFloatingProps> = () => {\n const { pip } = useDetailsPanelContext()\n const entityType = pip?.entityType\n const entities = pip?.entities || []\n const scope = pip?.scope || ''\n const isOpen = entities.length > 0 && !!entityType\n const { currentTab: parentTab } = useScopedDetailsPanel(scope)\n const [currentTab, setCurrentTab] = useState<DetailsPanelTab>(parentTab)\n\n const projects: string[] = entities.map((e: any) => e.projectName)\n\n const { data: allUsers = [] } = useGetKanbanProjectUsersQuery({ projects }, { skip: !isOpen })\n\n const { data: projectsInfo = {}, isFetching: isFetchingInfo } = useGetProjectsInfoQuery(\n {\n projects: projects,\n },\n { skip: !isOpen },\n )\n\n // get all statuses from projects info, removing duplicate names\n const statuses = useMemo(\n () => getAllProjectStatuses(projectsInfo, projects),\n [projectsInfo, projects],\n )\n\n const { data: entitiesData = [], isFetching: isFetchingEntitiesDetails } =\n useGetEntitiesDetailsPanelQuery(\n // @ts-expect-error\n { entityType: entityType, entities: entities },\n {\n skip: !isOpen || isFetchingInfo,\n },\n )\n\n // reduce projectsInfo to selected projects and into one\n const projectInfo = useMemo(\n () => mergeProjectInfo(projectsInfo, projects),\n [projectsInfo, projects],\n )\n\n // build icons for entity types\n const entityTypeIcons = useMemo(\n () => ({\n task: projectInfo.taskTypes\n .filter((task) => !!task.icon)\n .reduce((acc, task) => ({ ...acc, [task.name]: task.icon }), {}),\n folder: projectInfo.folderTypes\n .filter((folder) => !!folder.icon)\n .reduce((acc, folder) => ({ ...acc, [folder.name]: folder.icon }), {}),\n product: projectInfo.productTypes\n .filter((product) => !!product.icon)\n .reduce((acc, product) => ({ ...acc, [product.name]: product.icon }), {}),\n }),\n [projectInfo],\n )\n\n const thumbnails = useMemo(\n () => (entityType ? getThumbnails(entitiesData, entityType, entityTypeIcons) : []),\n [entitiesData, entityType],\n )\n\n // users for assignee field, find in all users\n const users = useMemo(() => {\n return allUsers\n .filter((u) => entitiesData.some((e) => e?.task?.assignees?.includes(u.name)))\n .map((u) => ({ ...u, avatarUrl: `/api/users/${u.name}/avatar` }))\n }, [allUsers, entities])\n\n const firstEntity = entitiesData[0]\n if (!entitiesData.length || !firstEntity) return null\n\n if (isFetchingEntitiesDetails) return <div>Loading...</div>\n\n const projectName = firstEntity?.projectName\n\n // are there multiple statuses of different names?\n const mixedStatuses = entitiesData.some((e) => e?.status !== firstEntity?.status)\n const mixedStatus = {\n icon: 'question_mark',\n color: 'var(--md-sys-color-surface-container-highest)',\n name: 'Mixed statuses',\n }\n\n const statusAnatomy = mixedStatuses\n ? mixedStatus\n : statuses.find((s) => s.name === firstEntity?.status) || {\n icon: '',\n color: '',\n name: 'None',\n }\n\n if (!entityType) return null\n\n // Get title and subtitle from the imported function\n const { title, subTitle } = buildDetailsPanelTitles(entitiesData, entityType)\n\n return (\n <PiPWrapper>\n <ProjectContextProvider projectName={projectName}>\n <Styled.Container>\n <Styled.Header>\n <StackedThumbnails thumbnails={thumbnails} />\n <Styled.Content>\n <h2>{title}</h2>\n <div className=\"sub-title\">\n <span>{upperFirst(entityType)} - </span>\n <h3>{subTitle}</h3>\n </div>\n </Styled.Content>\n </Styled.Header>\n <Styled.Row>\n <Styled.Status\n style={{\n backgroundColor: statusAnatomy?.color,\n color: getTextColor(statusAnatomy?.color),\n }}\n >\n <Icon icon={statusAnatomy.icon || 'question_mark'} style={{ color: 'inherit' }} />\n <span className=\"label\">{statusAnatomy?.name}</span>\n </Styled.Status>\n <AssigneeField users={users} style={{ pointerEvents: 'none' }} />\n </Styled.Row>\n <Styled.FeedContainer>\n <FeedWrapper\n entityType={entityType}\n // @ts-ignore\n entities={entitiesData}\n activeUsers={[]}\n // selectedTasksProjects={{}}\n projectInfo={projectsInfo[projectName]}\n projectName={projectName}\n disabled={false}\n scope={scope}\n readOnly\n // @ts-ignore\n statuses={statuses}\n currentTab={currentTab}\n setCurrentTab={setCurrentTab}\n />\n </Styled.FeedContainer>\n </Styled.Container>\n </ProjectContextProvider>\n </PiPWrapper>\n )\n}\n\nexport default DetailsPanelFloating\n"],"names":["DetailsPanelFloating","pip","useDetailsPanelContext","entityType","entities","scope","isOpen","parentTab","useScopedDetailsPanel","currentTab","setCurrentTab","useState","projects","allUsers","useGetKanbanProjectUsersQuery","projectsInfo","isFetchingInfo","useGetProjectsInfoQuery","statuses","useMemo","getAllProjectStatuses","entitiesData","isFetchingEntitiesDetails","useGetEntitiesDetailsPanelQuery","projectInfo","mergeProjectInfo","entityTypeIcons","task","acc","folder","product","thumbnails","getThumbnails","users","u","e","_b","_a","firstEntity","jsx","projectName","statusAnatomy","s","title","subTitle","buildDetailsPanelTitles","PiPWrapper","ProjectContextProvider","jsxs","Styled.Container","Styled.Header","StackedThumbnails","Styled.Content","upperFirst","Styled.Row","Styled.Status","getTextColor","Icon","AssigneeField","Styled.FeedContainer","FeedWrapper"],"mappings":"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"}
1
+ {"version":3,"file":"DetailsPanelFloating.cjs.js","sources":["../../../../../../src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.tsx"],"sourcesContent":["import { FC, useMemo, useState } from 'react'\nimport * as Styled from './DetailsPanelFloating.styled'\nimport getThumbnails from '../helpers/getThumbnails'\nimport { StackedThumbnails } from '@shared/components'\nimport { upperFirst } from 'lodash'\nimport { AssigneeField, getTextColor, Icon } from '@ynput/ayon-react-components'\nimport {\n PiPWrapper,\n DetailsPanelTab,\n useScopedDetailsPanel,\n ProjectContextProvider,\n} from '@shared/context'\nimport { useGetEntitiesDetailsPanelQuery } from '@shared/api'\nimport { useGetKanbanProjectUsersQuery, useGetProjectsInfoQuery } from '@shared/api'\nimport getAllProjectStatuses from '../helpers/getAllProjectsStatuses'\nimport FeedWrapper from '../FeedWrapper'\nimport mergeProjectInfo from '../helpers/mergeProjectInfo'\nimport { buildDetailsPanelTitles } from '../helpers/buildDetailsPanelTitles'\nimport { useDetailsPanelContext } from '@shared/context'\n\nexport interface DetailsPanelFloatingProps {}\n\nexport const DetailsPanelFloating: FC<DetailsPanelFloatingProps> = () => {\n const { pip } = useDetailsPanelContext()\n const entityType = pip?.entityType\n const entities = pip?.entities || []\n const scope = pip?.scope || ''\n const isOpen = entities.length > 0 && !!entityType\n const { currentTab: parentTab } = useScopedDetailsPanel(scope)\n const [currentTab, setCurrentTab] = useState<DetailsPanelTab>(parentTab)\n\n const projects: string[] = entities.map((e: any) => e.projectName)\n\n const { data: allUsers = [] } = useGetKanbanProjectUsersQuery({ projects }, { skip: !isOpen })\n\n const { data: projectsInfo = {}, isFetching: isFetchingInfo } = useGetProjectsInfoQuery(\n {\n projects: projects,\n },\n { skip: !isOpen },\n )\n\n // get all statuses from projects info, removing duplicate names\n const statuses = useMemo(\n () => getAllProjectStatuses(projectsInfo, projects),\n [projectsInfo, projects],\n )\n\n const { data: entitiesData = [], isFetching: isFetchingEntitiesDetails } =\n useGetEntitiesDetailsPanelQuery(\n // @ts-expect-error\n { entityType: entityType, entities: entities },\n {\n skip: !isOpen || isFetchingInfo,\n },\n )\n\n // reduce projectsInfo to selected projects and into one\n const projectInfo = useMemo(\n () => mergeProjectInfo(projectsInfo, projects),\n [projectsInfo, projects],\n )\n\n // build icons for entity types\n const entityTypeIcons = useMemo(\n () => ({\n task: projectInfo.taskTypes\n .filter((task) => !!task.icon)\n .reduce((acc, task) => ({ ...acc, [task.name]: task.icon }), {}),\n folder: projectInfo.folderTypes\n .filter((folder) => !!folder.icon)\n .reduce((acc, folder) => ({ ...acc, [folder.name]: folder.icon }), {}),\n product: projectInfo.productTypes\n .filter((product) => !!product.icon)\n .reduce((acc, product) => ({ ...acc, [product.name]: product.icon }), {}),\n }),\n [projectInfo],\n )\n\n const thumbnails = useMemo(\n () => (entityType ? getThumbnails(entitiesData, entityType, entityTypeIcons) : []),\n [entitiesData, entityType],\n )\n\n // users for assignee field, find in all users\n const users = useMemo(() => {\n return allUsers\n .filter((u) => entitiesData.some((e) => e?.task?.assignees?.includes(u.name)))\n .map((u) => ({ ...u, avatarUrl: `/api/users/${u.name}/avatar` }))\n }, [allUsers, entities])\n\n const firstEntity = entitiesData[0]\n if (!entitiesData.length || !firstEntity) return null\n\n if (isFetchingEntitiesDetails) return <div>Loading...</div>\n\n const projectName = firstEntity?.projectName\n\n // are there multiple statuses of different names?\n const mixedStatuses = entitiesData.some((e) => e?.status !== firstEntity?.status)\n const mixedStatus = {\n icon: 'question_mark',\n color: 'var(--md-sys-color-surface-container-highest)',\n name: 'Mixed statuses',\n }\n\n const statusAnatomy = mixedStatuses\n ? mixedStatus\n : statuses.find((s) => s.name === firstEntity?.status) || {\n icon: '',\n color: '',\n name: 'None',\n }\n\n if (!entityType) return null\n\n // Get title and subtitle from the imported function\n const { title, subTitle } = buildDetailsPanelTitles(entitiesData, entityType)\n\n return (\n <PiPWrapper>\n <ProjectContextProvider projectName={projectName}>\n <Styled.Container>\n <Styled.Header>\n <StackedThumbnails thumbnails={thumbnails} />\n <Styled.Content>\n <h2>{title}</h2>\n <div className=\"sub-title\">\n <span>{upperFirst(entityType)} - </span>\n <h3>{subTitle}</h3>\n </div>\n </Styled.Content>\n </Styled.Header>\n <Styled.Row>\n <Styled.Status\n style={{\n backgroundColor: statusAnatomy?.color,\n color: getTextColor(statusAnatomy?.color),\n }}\n >\n <Icon icon={statusAnatomy.icon || 'question_mark'} style={{ color: 'inherit' }} />\n <span className=\"label\">{statusAnatomy?.name}</span>\n </Styled.Status>\n <AssigneeField users={users} style={{ pointerEvents: 'none' }} />\n </Styled.Row>\n <Styled.FeedContainer>\n <FeedWrapper\n entityType={entityType}\n // @ts-ignore\n entities={entitiesData}\n activeUsers={[]}\n // selectedTasksProjects={{}}\n projectInfo={projectsInfo[projectName]}\n projectName={projectName}\n disabled={false}\n scope={scope}\n readOnly\n // @ts-ignore\n statuses={statuses}\n currentTab={currentTab}\n setCurrentTab={setCurrentTab}\n />\n </Styled.FeedContainer>\n </Styled.Container>\n </ProjectContextProvider>\n </PiPWrapper>\n )\n}\n\nexport default DetailsPanelFloating\n"],"names":["DetailsPanelFloating","pip","useDetailsPanelContext","entityType","entities","scope","isOpen","parentTab","useScopedDetailsPanel","currentTab","setCurrentTab","useState","projects","allUsers","useGetKanbanProjectUsersQuery","projectsInfo","isFetchingInfo","useGetProjectsInfoQuery","statuses","useMemo","getAllProjectStatuses","entitiesData","isFetchingEntitiesDetails","useGetEntitiesDetailsPanelQuery","projectInfo","mergeProjectInfo","entityTypeIcons","task","acc","folder","product","thumbnails","getThumbnails","users","u","e","_b","_a","firstEntity","jsx","projectName","statusAnatomy","s","title","subTitle","buildDetailsPanelTitles","PiPWrapper","ProjectContextProvider","jsxs","Styled.Container","Styled.Header","StackedThumbnails","Styled.Content","upperFirst","Styled.Row","Styled.Status","getTextColor","Icon","AssigneeField","Styled.FeedContainer","FeedWrapper"],"mappings":"8kdAsBO,MAAMA,EAAsD,IAAM,CACjE,KAAA,CAAE,IAAAC,CAAI,EAAIC,yBAAuB,EACjCC,EAAaF,GAAA,YAAAA,EAAK,WAClBG,GAAWH,GAAA,YAAAA,EAAK,WAAY,CAAC,EAC7BI,GAAQJ,GAAA,YAAAA,EAAK,QAAS,GACtBK,EAASF,EAAS,OAAS,GAAK,CAAC,CAACD,EAClC,CAAE,WAAYI,GAAcC,EAAAA,sBAAsBH,CAAK,EACvD,CAACI,EAAYC,CAAa,EAAIC,EAAAA,SAA0BJ,CAAS,EAEjEK,EAAqBR,EAAS,IAAK,GAAW,EAAE,WAAW,EAE3D,CAAE,KAAMS,EAAW,CAAA,GAAOC,EAAAA,8BAA8B,CAAE,SAAAF,GAAY,CAAE,KAAM,CAACN,EAAQ,EAEvF,CAAE,KAAMS,EAAe,CAAI,EAAA,WAAYC,GAAmBC,EAAA,wBAC9D,CACE,SAAAL,CACF,EACA,CAAE,KAAM,CAACN,CAAO,CAClB,EAGMY,EAAWC,EAAA,QACf,IAAMC,EAAsBL,EAAcH,CAAQ,EAClD,CAACG,EAAcH,CAAQ,CACzB,EAEM,CAAE,KAAMS,EAAe,CAAI,EAAA,WAAYC,GAC3CC,EAAA,gCAEE,CAAE,WAAApB,EAAwB,SAAAC,CAAmB,EAC7C,CACE,KAAM,CAACE,GAAUU,CAAA,CAErB,EAGIQ,EAAcL,EAAA,QAClB,IAAMM,EAAiBV,EAAcH,CAAQ,EAC7C,CAACG,EAAcH,CAAQ,CACzB,EAGMc,EAAkBP,EAAA,QACtB,KAAO,CACL,KAAMK,EAAY,UACf,OAAQG,GAAS,CAAC,CAACA,EAAK,IAAI,EAC5B,OAAO,CAACC,EAAKD,KAAU,CAAE,GAAGC,EAAK,CAACD,EAAK,IAAI,EAAGA,EAAK,OAAS,EAAE,EACjE,OAAQH,EAAY,YACjB,OAAQK,GAAW,CAAC,CAACA,EAAO,IAAI,EAChC,OAAO,CAACD,EAAKC,KAAY,CAAE,GAAGD,EAAK,CAACC,EAAO,IAAI,EAAGA,EAAO,OAAS,EAAE,EACvE,QAASL,EAAY,aAClB,OAAQM,GAAY,CAAC,CAACA,EAAQ,IAAI,EAClC,OAAO,CAACF,EAAKE,KAAa,CAAE,GAAGF,EAAK,CAACE,EAAQ,IAAI,EAAGA,EAAQ,IAAS,GAAA,CAAE,CAAA,CAAA,GAE5E,CAACN,CAAW,CACd,EAEMO,EAAaZ,EAAA,QACjB,IAAOhB,EAAa6B,EAAcX,EAAclB,EAAYuB,CAAe,EAAI,CAAC,EAChF,CAACL,EAAclB,CAAU,CAC3B,EAGM8B,EAAQd,EAAAA,QAAQ,IACbN,EACJ,OAAQqB,GAAMb,EAAa,KAAMc,GAAA,SAAM,OAAAC,GAAAC,EAAAF,GAAA,YAAAA,EAAG,OAAH,YAAAE,EAAS,YAAT,YAAAD,EAAoB,SAASF,EAAE,MAAK,CAAC,EAC5E,IAAKA,IAAO,CAAE,GAAGA,EAAG,UAAW,cAAcA,EAAE,IAAI,SAAY,EAAA,EACjE,CAACrB,EAAUT,CAAQ,CAAC,EAEjBkC,EAAcjB,EAAa,CAAC,EAClC,GAAI,CAACA,EAAa,QAAU,CAACiB,EAAoB,OAAA,KAEjD,GAAIhB,EAA2B,OAAQiB,EAAA,kBAAA,IAAA,MAAA,CAAI,SAAU,aAAA,EAErD,MAAMC,EAAcF,GAAA,YAAAA,EAAa,YAU3BG,EAPgBpB,EAAa,KAAM,IAAM,iBAAG,WAAWiB,GAAA,YAAAA,EAAa,OAAM,EAC5D,CAClB,KAAM,gBACN,MAAO,gDACP,KAAM,gBACR,EAIIpB,EAAS,KAAMwB,GAAMA,EAAE,QAASJ,GAAA,YAAAA,EAAa,OAAM,GAAK,CACtD,KAAM,GACN,MAAO,GACP,KAAM,MACR,EAEA,GAAA,CAACnC,EAAmB,OAAA,KAGxB,KAAM,CAAE,MAAAwC,EAAO,SAAAC,CAAA,EAAaC,EAAAA,wBAAwBxB,EAAclB,CAAU,EAG1E,OAAAoC,wBAACO,EAAAA,YACC,SAACP,EAAAA,kBAAAA,IAAAQ,EAAAA,uBAAA,CAAuB,YAAAP,EACtB,SAACQ,EAAAA,kBAAAA,KAAAC,YAAA,CACC,SAAA,CAACD,yBAAAE,EAAAA,OAAA,CACC,SAAA,CAAAX,wBAACY,EAAAA,mBAAkB,WAAApB,EAAwB,EAC3CiB,yBAACI,EAAAA,QAAA,CACC,SAAA,CAAAb,EAAAA,kBAAAA,IAAC,MAAI,SAAMI,CAAA,CAAA,EACXK,EAAAA,kBAAAA,KAAC,MAAI,CAAA,UAAU,YACb,SAAA,CAAAA,yBAAC,OAAM,CAAA,SAAA,CAAAK,EAAAA,WAAWlD,CAAU,EAAE,KAAA,EAAG,EACjCoC,EAAAA,kBAAAA,IAAC,MAAI,SAASK,CAAA,CAAA,CAAA,CAChB,CAAA,CAAA,CACF,CAAA,CAAA,EACF,EACAI,yBAACM,EAAAA,IAAA,CACC,SAAA,CAAAN,EAAA,kBAAA,KAACO,EAAO,OAAP,CACC,MAAO,CACL,gBAAiBd,GAAA,YAAAA,EAAe,MAChC,MAAOe,EAAAA,aAAaf,GAAA,YAAAA,EAAe,KAAK,CAC1C,EAEA,SAAA,CAACF,EAAAA,kBAAAA,IAAAkB,EAAA,KAAA,CAAK,KAAMhB,EAAc,MAAQ,gBAAiB,MAAO,CAAE,MAAO,SAAa,CAAA,CAAA,EAC/EF,EAAA,kBAAA,IAAA,OAAA,CAAK,UAAU,QAAS,0BAAe,IAAK,CAAA,CAAA,CAAA,CAC/C,0BACCmB,EAAc,cAAA,CAAA,MAAAzB,EAAc,MAAO,CAAE,cAAe,OAAU,CAAA,CAAA,EACjE,EACAM,wBAACoB,EAAAA,cAAA,CACC,SAAApB,EAAA,kBAAA,IAACqB,EAAA,CACC,WAAAzD,EAEA,SAAUkB,EACV,YAAa,CAAC,EAEd,YAAaN,EAAayB,CAAW,EACrC,YAAAA,EACA,SAAU,GACV,MAAAnC,EACA,SAAQ,GAER,SAAAa,EACA,WAAAT,EACA,cAAAC,CAAA,CAAA,CAEJ,CAAA,CAAA,CACF,CAAA,CACF,CAAA,EACF,CAEJ"}
@@ -59,6 +59,8 @@ import "../../../api/queries/attributes/getAttributes.es.js";
59
59
  import "../../../api/queries/attributes/updateAttributes.es.js";
60
60
  import "../../../api/queries/authentication/getAuthentication.es.js";
61
61
  import "../../../api/queries/cloud/cloud.es.js";
62
+ import "../../../api/queries/config/getConfig.es.js";
63
+ import "../../../api/queries/config/updateConfig.es.js";
62
64
  import "../../../api/queries/entities/getEntity.es.js";
63
65
  import { useGetEntitiesDetailsPanelQuery as H } from "../../../api/queries/entities/getEntityPanel.es.js";
64
66
  import "../../../api/queries/entities/updateEntity.es.js";
@@ -248,7 +250,7 @@ import "../../../components/EarlyPreview/EarlyPreview.es.js";
248
250
  import "../../../components/LegacyBadge/LegacyBadge.es.js";
249
251
  import "../../../components/Menu/Menu.styled.es.js";
250
252
  import "../../../components/Menu/MenuItem.es.js";
251
- const Rm = () => {
253
+ const _m = () => {
252
254
  const { pip: p } = z(), e = p == null ? void 0 : p.entityType, l = (p == null ? void 0 : p.entities) || [], f = (p == null ? void 0 : p.scope) || "", u = l.length > 0 && !!e, { currentTab: b } = B(f), [P, k] = N(b), n = l.map((t) => t.projectName), { data: x = [] } = K({ projects: n }, { skip: !u }), { data: c = {}, isFetching: F } = L(
253
255
  {
254
256
  projects: n
@@ -342,7 +344,7 @@ const Rm = () => {
342
344
  ] }) }) });
343
345
  };
344
346
  export {
345
- Rm as DetailsPanelFloating,
346
- Rm as default
347
+ _m as DetailsPanelFloating,
348
+ _m as default
347
349
  };
348
350
  //# sourceMappingURL=DetailsPanelFloating.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DetailsPanelFloating.es.js","sources":["../../../../../../src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.tsx"],"sourcesContent":["import { FC, useMemo, useState } from 'react'\nimport * as Styled from './DetailsPanelFloating.styled'\nimport getThumbnails from '../helpers/getThumbnails'\nimport { StackedThumbnails } from '@shared/components'\nimport { upperFirst } from 'lodash'\nimport { AssigneeField, getTextColor, Icon } from '@ynput/ayon-react-components'\nimport {\n PiPWrapper,\n DetailsPanelTab,\n useScopedDetailsPanel,\n ProjectContextProvider,\n} from '@shared/context'\nimport { useGetEntitiesDetailsPanelQuery } from '@shared/api'\nimport { useGetKanbanProjectUsersQuery, useGetProjectsInfoQuery } from '@shared/api'\nimport getAllProjectStatuses from '../helpers/getAllProjectsStatuses'\nimport FeedWrapper from '../FeedWrapper'\nimport mergeProjectInfo from '../helpers/mergeProjectInfo'\nimport { buildDetailsPanelTitles } from '../helpers/buildDetailsPanelTitles'\nimport { useDetailsPanelContext } from '@shared/context'\n\nexport interface DetailsPanelFloatingProps {}\n\nexport const DetailsPanelFloating: FC<DetailsPanelFloatingProps> = () => {\n const { pip } = useDetailsPanelContext()\n const entityType = pip?.entityType\n const entities = pip?.entities || []\n const scope = pip?.scope || ''\n const isOpen = entities.length > 0 && !!entityType\n const { currentTab: parentTab } = useScopedDetailsPanel(scope)\n const [currentTab, setCurrentTab] = useState<DetailsPanelTab>(parentTab)\n\n const projects: string[] = entities.map((e: any) => e.projectName)\n\n const { data: allUsers = [] } = useGetKanbanProjectUsersQuery({ projects }, { skip: !isOpen })\n\n const { data: projectsInfo = {}, isFetching: isFetchingInfo } = useGetProjectsInfoQuery(\n {\n projects: projects,\n },\n { skip: !isOpen },\n )\n\n // get all statuses from projects info, removing duplicate names\n const statuses = useMemo(\n () => getAllProjectStatuses(projectsInfo, projects),\n [projectsInfo, projects],\n )\n\n const { data: entitiesData = [], isFetching: isFetchingEntitiesDetails } =\n useGetEntitiesDetailsPanelQuery(\n // @ts-expect-error\n { entityType: entityType, entities: entities },\n {\n skip: !isOpen || isFetchingInfo,\n },\n )\n\n // reduce projectsInfo to selected projects and into one\n const projectInfo = useMemo(\n () => mergeProjectInfo(projectsInfo, projects),\n [projectsInfo, projects],\n )\n\n // build icons for entity types\n const entityTypeIcons = useMemo(\n () => ({\n task: projectInfo.taskTypes\n .filter((task) => !!task.icon)\n .reduce((acc, task) => ({ ...acc, [task.name]: task.icon }), {}),\n folder: projectInfo.folderTypes\n .filter((folder) => !!folder.icon)\n .reduce((acc, folder) => ({ ...acc, [folder.name]: folder.icon }), {}),\n product: projectInfo.productTypes\n .filter((product) => !!product.icon)\n .reduce((acc, product) => ({ ...acc, [product.name]: product.icon }), {}),\n }),\n [projectInfo],\n )\n\n const thumbnails = useMemo(\n () => (entityType ? getThumbnails(entitiesData, entityType, entityTypeIcons) : []),\n [entitiesData, entityType],\n )\n\n // users for assignee field, find in all users\n const users = useMemo(() => {\n return allUsers\n .filter((u) => entitiesData.some((e) => e?.task?.assignees?.includes(u.name)))\n .map((u) => ({ ...u, avatarUrl: `/api/users/${u.name}/avatar` }))\n }, [allUsers, entities])\n\n const firstEntity = entitiesData[0]\n if (!entitiesData.length || !firstEntity) return null\n\n if (isFetchingEntitiesDetails) return <div>Loading...</div>\n\n const projectName = firstEntity?.projectName\n\n // are there multiple statuses of different names?\n const mixedStatuses = entitiesData.some((e) => e?.status !== firstEntity?.status)\n const mixedStatus = {\n icon: 'question_mark',\n color: 'var(--md-sys-color-surface-container-highest)',\n name: 'Mixed statuses',\n }\n\n const statusAnatomy = mixedStatuses\n ? mixedStatus\n : statuses.find((s) => s.name === firstEntity?.status) || {\n icon: '',\n color: '',\n name: 'None',\n }\n\n if (!entityType) return null\n\n // Get title and subtitle from the imported function\n const { title, subTitle } = buildDetailsPanelTitles(entitiesData, entityType)\n\n return (\n <PiPWrapper>\n <ProjectContextProvider projectName={projectName}>\n <Styled.Container>\n <Styled.Header>\n <StackedThumbnails thumbnails={thumbnails} />\n <Styled.Content>\n <h2>{title}</h2>\n <div className=\"sub-title\">\n <span>{upperFirst(entityType)} - </span>\n <h3>{subTitle}</h3>\n </div>\n </Styled.Content>\n </Styled.Header>\n <Styled.Row>\n <Styled.Status\n style={{\n backgroundColor: statusAnatomy?.color,\n color: getTextColor(statusAnatomy?.color),\n }}\n >\n <Icon icon={statusAnatomy.icon || 'question_mark'} style={{ color: 'inherit' }} />\n <span className=\"label\">{statusAnatomy?.name}</span>\n </Styled.Status>\n <AssigneeField users={users} style={{ pointerEvents: 'none' }} />\n </Styled.Row>\n <Styled.FeedContainer>\n <FeedWrapper\n entityType={entityType}\n // @ts-ignore\n entities={entitiesData}\n activeUsers={[]}\n // selectedTasksProjects={{}}\n projectInfo={projectsInfo[projectName]}\n projectName={projectName}\n disabled={false}\n scope={scope}\n readOnly\n // @ts-ignore\n statuses={statuses}\n currentTab={currentTab}\n setCurrentTab={setCurrentTab}\n />\n </Styled.FeedContainer>\n </Styled.Container>\n </ProjectContextProvider>\n </PiPWrapper>\n )\n}\n\nexport default DetailsPanelFloating\n"],"names":["DetailsPanelFloating","pip","useDetailsPanelContext","entityType","entities","scope","isOpen","parentTab","useScopedDetailsPanel","currentTab","setCurrentTab","useState","projects","e","allUsers","useGetKanbanProjectUsersQuery","projectsInfo","isFetchingInfo","useGetProjectsInfoQuery","statuses","useMemo","getAllProjectStatuses","entitiesData","isFetchingEntitiesDetails","useGetEntitiesDetailsPanelQuery","projectInfo","mergeProjectInfo","entityTypeIcons","task","acc","folder","product","thumbnails","getThumbnails","users","u","_b","_a","firstEntity","jsx","projectName","statusAnatomy","s","title","subTitle","buildDetailsPanelTitles","PiPWrapper","ProjectContextProvider","jsxs","Styled.Container","Styled.Header","StackedThumbnails","Styled.Content","upperFirst","Styled.Row","Styled.Status","getTextColor","Icon","AssigneeField","Styled.FeedContainer","FeedWrapper"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBO,MAAMA,KAAsD,MAAM;AACjE,QAAA,EAAE,KAAAC,EAAI,IAAIC,EAAuB,GACjCC,IAAaF,KAAA,gBAAAA,EAAK,YAClBG,KAAWH,KAAA,gBAAAA,EAAK,aAAY,CAAC,GAC7BI,KAAQJ,KAAA,gBAAAA,EAAK,UAAS,IACtBK,IAASF,EAAS,SAAS,KAAK,CAAC,CAACD,GAClC,EAAE,YAAYI,MAAcC,EAAsBH,CAAK,GACvD,CAACI,GAAYC,CAAa,IAAIC,EAA0BJ,CAAS,GAEjEK,IAAqBR,EAAS,IAAI,CAACS,MAAWA,EAAE,WAAW,GAE3D,EAAE,MAAMC,IAAW,CAAA,MAAOC,EAA8B,EAAE,UAAAH,KAAY,EAAE,MAAM,CAACN,GAAQ,GAEvF,EAAE,MAAMU,IAAe,CAAI,GAAA,YAAYC,MAAmBC;AAAA,IAC9D;AAAA,MACE,UAAAN;AAAA,IACF;AAAA,IACA,EAAE,MAAM,CAACN,EAAO;AAAA,EAClB,GAGMa,IAAWC;AAAA,IACf,MAAMC,EAAsBL,GAAcJ,CAAQ;AAAA,IAClD,CAACI,GAAcJ,CAAQ;AAAA,EACzB,GAEM,EAAE,MAAMU,IAAe,CAAI,GAAA,YAAYC,MAC3CC;AAAA;AAAA,IAEE,EAAE,YAAArB,GAAwB,UAAAC,EAAmB;AAAA,IAC7C;AAAA,MACE,MAAM,CAACE,KAAUW;AAAA,IAAA;AAAA,EAErB,GAGIQ,IAAcL;AAAA,IAClB,MAAMM,EAAiBV,GAAcJ,CAAQ;AAAA,IAC7C,CAACI,GAAcJ,CAAQ;AAAA,EACzB,GAGMe,IAAkBP;AAAA,IACtB,OAAO;AAAA,MACL,MAAMK,EAAY,UACf,OAAO,CAACG,MAAS,CAAC,CAACA,EAAK,IAAI,EAC5B,OAAO,CAACC,GAAKD,OAAU,EAAE,GAAGC,GAAK,CAACD,EAAK,IAAI,GAAGA,EAAK,SAAS,EAAE;AAAA,MACjE,QAAQH,EAAY,YACjB,OAAO,CAACK,MAAW,CAAC,CAACA,EAAO,IAAI,EAChC,OAAO,CAACD,GAAKC,OAAY,EAAE,GAAGD,GAAK,CAACC,EAAO,IAAI,GAAGA,EAAO,SAAS,EAAE;AAAA,MACvE,SAASL,EAAY,aAClB,OAAO,CAACM,MAAY,CAAC,CAACA,EAAQ,IAAI,EAClC,OAAO,CAACF,GAAKE,OAAa,EAAE,GAAGF,GAAK,CAACE,EAAQ,IAAI,GAAGA,EAAQ,KAAS,IAAA,CAAE,CAAA;AAAA,IAAA;AAAA,IAE5E,CAACN,CAAW;AAAA,EACd,GAEMO,IAAaZ;AAAA,IACjB,MAAOjB,IAAa8B,EAAcX,GAAcnB,GAAYwB,CAAe,IAAI,CAAC;AAAA,IAChF,CAACL,GAAcnB,CAAU;AAAA,EAC3B,GAGM+B,IAAQd,EAAQ,MACbN,EACJ,OAAO,CAACqB,MAAMb,EAAa,KAAK,CAACT,MAAA;;AAAM,YAAAuB,KAAAC,IAAAxB,KAAA,gBAAAA,EAAG,SAAH,gBAAAwB,EAAS,cAAT,gBAAAD,EAAoB,SAASD,EAAE;AAAA,GAAK,CAAC,EAC5E,IAAI,CAACA,OAAO,EAAE,GAAGA,GAAG,WAAW,cAAcA,EAAE,IAAI,UAAY,EAAA,GACjE,CAACrB,GAAUV,CAAQ,CAAC,GAEjBkC,IAAchB,EAAa,CAAC;AAClC,MAAI,CAACA,EAAa,UAAU,CAACgB,EAAoB,QAAA;AAEjD,MAAIf,EAA2B,QAAQgB,gBAAAA,EAAA,IAAA,OAAA,EAAI,UAAU,cAAA;AAErD,QAAMC,IAAcF,KAAA,gBAAAA,EAAa,aAU3BG,IAPgBnB,EAAa,KAAK,CAACT,OAAMA,KAAA,gBAAAA,EAAG,aAAWyB,KAAA,gBAAAA,EAAa,OAAM,IAC5D;AAAA,IAClB,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,EACR,IAIInB,EAAS,KAAK,CAACuB,MAAMA,EAAE,UAASJ,KAAA,gBAAAA,EAAa,OAAM,KAAK;AAAA,IACtD,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,EACR;AAEA,MAAA,CAACnC,EAAmB,QAAA;AAGxB,QAAM,EAAE,OAAAwC,GAAO,UAAAC,EAAA,IAAaC,EAAwBvB,GAAcnB,CAAU;AAG1E,SAAAoC,gBAAAA,MAACO,KACC,UAACP,gBAAAA,EAAAA,IAAAQ,GAAA,EAAuB,aAAAP,GACtB,UAACQ,gBAAAA,EAAAA,KAAAC,GAAA,EACC,UAAA;AAAA,IAACD,gBAAAA,OAAAE,GAAA,EACC,UAAA;AAAA,MAAAX,gBAAAA,MAACY,KAAkB,YAAAnB,GAAwB;AAAA,MAC3CgB,gBAAAA,OAACI,GAAA,EACC,UAAA;AAAA,QAAAb,gBAAAA,EAAAA,IAAC,QAAI,UAAMI,EAAA,CAAA;AAAA,QACXK,gBAAAA,EAAAA,KAAC,OAAI,EAAA,WAAU,aACb,UAAA;AAAA,UAAAA,gBAAAA,OAAC,QAAM,EAAA,UAAA;AAAA,YAAAK,EAAWlD,CAAU;AAAA,YAAE;AAAA,UAAA,GAAG;AAAA,UACjCoC,gBAAAA,EAAAA,IAAC,QAAI,UAASK,EAAA,CAAA;AAAA,QAAA,EAChB,CAAA;AAAA,MAAA,EACF,CAAA;AAAA,IAAA,GACF;AAAA,IACAI,gBAAAA,OAACM,GAAA,EACC,UAAA;AAAA,MAAAN,gBAAAA,EAAA;AAAA,QAACO;AAAAA,QAAA;AAAA,UACC,OAAO;AAAA,YACL,iBAAiBd,KAAA,gBAAAA,EAAe;AAAA,YAChC,OAAOe,EAAaf,KAAA,gBAAAA,EAAe,KAAK;AAAA,UAC1C;AAAA,UAEA,UAAA;AAAA,YAACF,gBAAAA,EAAAA,IAAAkB,GAAA,EAAK,MAAMhB,EAAc,QAAQ,iBAAiB,OAAO,EAAE,OAAO,UAAa,EAAA,CAAA;AAAA,YAC/EF,gBAAAA,EAAA,IAAA,QAAA,EAAK,WAAU,SAAS,iCAAe,KAAK,CAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MAC/C;AAAA,4BACCmB,GAAc,EAAA,OAAAxB,GAAc,OAAO,EAAE,eAAe,SAAU,CAAA;AAAA,IAAA,GACjE;AAAA,IACAK,gBAAAA,MAACoB,GAAA,EACC,UAAApB,gBAAAA,EAAA;AAAA,MAACqB;AAAA,MAAA;AAAA,QACC,YAAAzD;AAAA,QAEA,UAAUmB;AAAA,QACV,aAAa,CAAC;AAAA,QAEd,aAAaN,EAAawB,CAAW;AAAA,QACrC,aAAAA;AAAA,QACA,UAAU;AAAA,QACV,OAAAnC;AAAA,QACA,UAAQ;AAAA,QAER,UAAAc;AAAA,QACA,YAAAV;AAAA,QACA,eAAAC;AAAA,MAAA;AAAA,IAAA,EAEJ,CAAA;AAAA,EAAA,EACF,CAAA,EACF,CAAA,GACF;AAEJ;"}
1
+ {"version":3,"file":"DetailsPanelFloating.es.js","sources":["../../../../../../src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.tsx"],"sourcesContent":["import { FC, useMemo, useState } from 'react'\nimport * as Styled from './DetailsPanelFloating.styled'\nimport getThumbnails from '../helpers/getThumbnails'\nimport { StackedThumbnails } from '@shared/components'\nimport { upperFirst } from 'lodash'\nimport { AssigneeField, getTextColor, Icon } from '@ynput/ayon-react-components'\nimport {\n PiPWrapper,\n DetailsPanelTab,\n useScopedDetailsPanel,\n ProjectContextProvider,\n} from '@shared/context'\nimport { useGetEntitiesDetailsPanelQuery } from '@shared/api'\nimport { useGetKanbanProjectUsersQuery, useGetProjectsInfoQuery } from '@shared/api'\nimport getAllProjectStatuses from '../helpers/getAllProjectsStatuses'\nimport FeedWrapper from '../FeedWrapper'\nimport mergeProjectInfo from '../helpers/mergeProjectInfo'\nimport { buildDetailsPanelTitles } from '../helpers/buildDetailsPanelTitles'\nimport { useDetailsPanelContext } from '@shared/context'\n\nexport interface DetailsPanelFloatingProps {}\n\nexport const DetailsPanelFloating: FC<DetailsPanelFloatingProps> = () => {\n const { pip } = useDetailsPanelContext()\n const entityType = pip?.entityType\n const entities = pip?.entities || []\n const scope = pip?.scope || ''\n const isOpen = entities.length > 0 && !!entityType\n const { currentTab: parentTab } = useScopedDetailsPanel(scope)\n const [currentTab, setCurrentTab] = useState<DetailsPanelTab>(parentTab)\n\n const projects: string[] = entities.map((e: any) => e.projectName)\n\n const { data: allUsers = [] } = useGetKanbanProjectUsersQuery({ projects }, { skip: !isOpen })\n\n const { data: projectsInfo = {}, isFetching: isFetchingInfo } = useGetProjectsInfoQuery(\n {\n projects: projects,\n },\n { skip: !isOpen },\n )\n\n // get all statuses from projects info, removing duplicate names\n const statuses = useMemo(\n () => getAllProjectStatuses(projectsInfo, projects),\n [projectsInfo, projects],\n )\n\n const { data: entitiesData = [], isFetching: isFetchingEntitiesDetails } =\n useGetEntitiesDetailsPanelQuery(\n // @ts-expect-error\n { entityType: entityType, entities: entities },\n {\n skip: !isOpen || isFetchingInfo,\n },\n )\n\n // reduce projectsInfo to selected projects and into one\n const projectInfo = useMemo(\n () => mergeProjectInfo(projectsInfo, projects),\n [projectsInfo, projects],\n )\n\n // build icons for entity types\n const entityTypeIcons = useMemo(\n () => ({\n task: projectInfo.taskTypes\n .filter((task) => !!task.icon)\n .reduce((acc, task) => ({ ...acc, [task.name]: task.icon }), {}),\n folder: projectInfo.folderTypes\n .filter((folder) => !!folder.icon)\n .reduce((acc, folder) => ({ ...acc, [folder.name]: folder.icon }), {}),\n product: projectInfo.productTypes\n .filter((product) => !!product.icon)\n .reduce((acc, product) => ({ ...acc, [product.name]: product.icon }), {}),\n }),\n [projectInfo],\n )\n\n const thumbnails = useMemo(\n () => (entityType ? getThumbnails(entitiesData, entityType, entityTypeIcons) : []),\n [entitiesData, entityType],\n )\n\n // users for assignee field, find in all users\n const users = useMemo(() => {\n return allUsers\n .filter((u) => entitiesData.some((e) => e?.task?.assignees?.includes(u.name)))\n .map((u) => ({ ...u, avatarUrl: `/api/users/${u.name}/avatar` }))\n }, [allUsers, entities])\n\n const firstEntity = entitiesData[0]\n if (!entitiesData.length || !firstEntity) return null\n\n if (isFetchingEntitiesDetails) return <div>Loading...</div>\n\n const projectName = firstEntity?.projectName\n\n // are there multiple statuses of different names?\n const mixedStatuses = entitiesData.some((e) => e?.status !== firstEntity?.status)\n const mixedStatus = {\n icon: 'question_mark',\n color: 'var(--md-sys-color-surface-container-highest)',\n name: 'Mixed statuses',\n }\n\n const statusAnatomy = mixedStatuses\n ? mixedStatus\n : statuses.find((s) => s.name === firstEntity?.status) || {\n icon: '',\n color: '',\n name: 'None',\n }\n\n if (!entityType) return null\n\n // Get title and subtitle from the imported function\n const { title, subTitle } = buildDetailsPanelTitles(entitiesData, entityType)\n\n return (\n <PiPWrapper>\n <ProjectContextProvider projectName={projectName}>\n <Styled.Container>\n <Styled.Header>\n <StackedThumbnails thumbnails={thumbnails} />\n <Styled.Content>\n <h2>{title}</h2>\n <div className=\"sub-title\">\n <span>{upperFirst(entityType)} - </span>\n <h3>{subTitle}</h3>\n </div>\n </Styled.Content>\n </Styled.Header>\n <Styled.Row>\n <Styled.Status\n style={{\n backgroundColor: statusAnatomy?.color,\n color: getTextColor(statusAnatomy?.color),\n }}\n >\n <Icon icon={statusAnatomy.icon || 'question_mark'} style={{ color: 'inherit' }} />\n <span className=\"label\">{statusAnatomy?.name}</span>\n </Styled.Status>\n <AssigneeField users={users} style={{ pointerEvents: 'none' }} />\n </Styled.Row>\n <Styled.FeedContainer>\n <FeedWrapper\n entityType={entityType}\n // @ts-ignore\n entities={entitiesData}\n activeUsers={[]}\n // selectedTasksProjects={{}}\n projectInfo={projectsInfo[projectName]}\n projectName={projectName}\n disabled={false}\n scope={scope}\n readOnly\n // @ts-ignore\n statuses={statuses}\n currentTab={currentTab}\n setCurrentTab={setCurrentTab}\n />\n </Styled.FeedContainer>\n </Styled.Container>\n </ProjectContextProvider>\n </PiPWrapper>\n )\n}\n\nexport default DetailsPanelFloating\n"],"names":["DetailsPanelFloating","pip","useDetailsPanelContext","entityType","entities","scope","isOpen","parentTab","useScopedDetailsPanel","currentTab","setCurrentTab","useState","projects","e","allUsers","useGetKanbanProjectUsersQuery","projectsInfo","isFetchingInfo","useGetProjectsInfoQuery","statuses","useMemo","getAllProjectStatuses","entitiesData","isFetchingEntitiesDetails","useGetEntitiesDetailsPanelQuery","projectInfo","mergeProjectInfo","entityTypeIcons","task","acc","folder","product","thumbnails","getThumbnails","users","u","_b","_a","firstEntity","jsx","projectName","statusAnatomy","s","title","subTitle","buildDetailsPanelTitles","PiPWrapper","ProjectContextProvider","jsxs","Styled.Container","Styled.Header","StackedThumbnails","Styled.Content","upperFirst","Styled.Row","Styled.Status","getTextColor","Icon","AssigneeField","Styled.FeedContainer","FeedWrapper"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const u=require("../../../../../_virtual/jsx-runtime.cjs.js"),n=require("react"),j=require("lodash"),h=require("clsx"),re=require("@ynput/ayon-react-components");require("../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("react-toastify");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");const ie=require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");const ue=require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */const se=require("../../../util/getPriorityOptions.cjs.js");require("uuid");require("../../../util/pubsub.cjs.js");require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("axios");require("../../../context/RemoteModulesContext.cjs.js");const qe=require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");const te=require("../../../components/Thumbnail/StackedThumbnails.cjs.js"),ae=require("../../../components/EntityPanelUploader/EntityPanelUploader.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../../components/SizeSlider/SizeSlider.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/SearchFilter/filterDates.cjs.js");require("../../../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");require("../../../components/Chips/Chips.cjs.js");require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../Feed/components/ActivityDate.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("date-fns");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../../ProjectTreeTable/ProjectTreeTable.cjs.js");require("../../ProjectTreeTable/context/CellEditingContext.cjs.js");require("short-uuid");require("@tanstack/react-table");require("../../ProjectTreeTable/widgets/CollapsedWidget.cjs.js");require("../../ProjectTreeTable/widgets/DateWidget.cjs.js");require("../../ProjectTreeTable/widgets/EnumWidget.cjs.js");require("../../ProjectTreeTable/widgets/TextWidget.cjs.js");require("../../ProjectTreeTable/widgets/BooleanWidget.cjs.js");require("../../ProjectTreeTable/widgets/CellWidget.cjs.js");require("../../ProjectTreeTable/widgets/EntityNameWidget.cjs.js");require("../../ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js");require("../../ProjectTreeTable/widgets/ThumbnailWidget.cjs.js");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../../ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../../ProjectTreeTable/context/SelectedRowsContext.cjs.js");require("../../ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../../ProjectTreeTable/widgets/ErrorWidget.cjs.js");require("../../ProjectTreeTable/ProjectTreeTable.styled.cjs.js");require("../../ProjectTreeTable/components/SelectionCell.cjs.js");require("../../ProjectTreeTable/components/RowSelectionHeader.cjs.js");require("../../ProjectTreeTable/context/SelectionCellsContext.cjs.js");require("../../ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");require("../../ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");require("../../ProjectTreeTable/context/ProjectTableContext.cjs.js");require("../../ProjectTreeTable/context/ClipboardContext.cjs.js");require("../../ProjectTreeTable/context/ColumnSettingsContext.cjs.js");require("../../ProjectTreeTable/context/ProjectDataContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");const oe=require("../../../hooks/useScopedStatuses.cjs.js"),le=require("../../../hooks/useEntityUpdate.cjs.js");require("react-redux");require("custom-protocol-check");require("../../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("../../ProjectTreeTable/components/HeaderActionButton.cjs.js");require("../../ProjectTreeTable/components/ColumnHeaderMenu.cjs.js");require("../DetailsPanel.styled.cjs.js");const ne=require("../FeedFilters/FeedFilters.cjs.js"),o=require("./DetailsPanelHeader.styled.cjs.js"),ce=require("../helpers/getThumbnails.cjs.js"),de=require("../helpers/buildDetailsPanelTitles.cjs.js"),me=require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");const pe=require("../../Actions/Actions.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../../../components/SortingSetting/SortingSetting.styled.cjs.js");require("../../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../../components/Menu/Menu.styled.cjs.js");require("../../../components/Menu/MenuItem.cjs.js");const xe=({entityType:q,entitySubTypes:U,entities:s=[],disabledAssignees:w=[],users:R=[],disabledStatuses:V,tagsOptions:b=[],isFetching:v,isCompact:p=!1,currentTab:H,onTabChange:G,entityTypeIcons:N,onOpenViewer:L,onEntityFocus:g})=>{const{useSearchParams:$,useNavigate:Q,isDeveloperMode:_}=qe.useDetailsPanelContext(),K=Q(),[W,z]=$(),B=n.useRef(null),l=oe.useScopedStatuses(s.map(e=>e.projectName),[q]),d=n.useMemo(()=>j.union(...s.flatMap(e=>{var i,t;return[((i=e.task)==null?void 0:i.assignees)||[],((t=e.version)==null?void 0:t.author)||[]]})),[s]);let r=s[0];const a=s.length===0||!r||v;r||(r={id:"placeholder",name:"loading...",label:"loading...",entityType:q,status:"loading",projectName:"loading...",tags:[],hasReviewables:!1,attrib:{},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString(),path:""});const S=s.length>1||r==null?void 0:r.projectName,P=s.filter(e=>e.projectName===(r==null?void 0:r.projectName)&&e.id).map(e=>e.id),{data:c}=ie.useGetEntitiesChecklistsQuery({projectName:r==null?void 0:r.projectName,entityIds:P},{skip:!(r!=null&&r.projectName)||!P.length});let k;c!=null&&c.total&&c.total>0&&(k=`${c.checked}/${c.total}`);const{data:J}=ue.useGetAttributeConfigQuery({attributeName:"priority"}),E=se.getPriorityOptions(J,q),f=n.useMemo(()=>ce(s,q,N),[s,q,N]),A=n.useMemo(()=>s.map(e=>e.status),[s]),X=n.useMemo(()=>s.map(e=>{var i;return(i=e.attrib)==null?void 0:i.priority}),[s]),Y=n.useMemo(()=>s.map(e=>e.tags),[s]),Z=n.useMemo(()=>b.reduce((e,i)=>(e[i.name]=i,e),{}),[b]),C=s.length>1,{updateEntity:F}=le.useEntityUpdate({entities:s.map(e=>{var i,t,m;return{id:e.id,projectName:e.projectName,users:((i=e.task)==null?void 0:i.assignees)||[],folderId:(t=e.folder)==null?void 0:t.id,productId:(m=e.product)==null?void 0:m.id}}),entityType:q}),x=(e,i)=>i==null?console.error("value is null or undefined"):F(e,i),T=()=>{var m,O;let e,i=r.id,t=q+"Id";q==="version"&&((m=r.product)!=null&&m.id)&&(e=[r.id],i=(O=r.product)==null?void 0:O.id,t="productId"),i&&L({[t]:i,projectName:S,versionIds:e})},D=["task","version","representation"].includes(q)&&(d.length>0||q==="task"),M=R.map(e=>e);if(D){const e=R.map(t=>t.name),i=d.filter(t=>!e.includes(t));i.length&&M.push(...i.map(t=>({name:t,fullName:t})))}const{title:y,subTitle:ee}=de.buildDetailsPanelTitles(s,q),I=(l==null?void 0:l.length)!==0&&(l==null?void 0:l.find(e=>e.name===A[0]));return u.jsxRuntimeExports.jsx(o.HeaderContainer,{children:u.jsxRuntimeExports.jsx(ae.EntityPanelUploader,{entities:s,entityType:q,projectName:S,onVersionCreated:e=>g==null?void 0:g(e,"version"),children:u.jsxRuntimeExports.jsxs(o.Grid,{className:h("details-panel-header",{isCompact:p}),children:[u.jsxRuntimeExports.jsxs(o.Header,{className:h("titles",{isCompact:p,loading:a},"no-shimmer"),children:[u.jsxRuntimeExports.jsxs("div",{style:{position:"relative"},children:[u.jsxRuntimeExports.jsx(te.StackedThumbnails,{isLoading:a,shimmer:a,thumbnails:f,onClick:f.length===1?T:void 0,hoverIcon:"play_circle"}),!C&&(r==null?void 0:r.hasReviewables)&&u.jsxRuntimeExports.jsx(me.PlayableIcon,{})]}),u.jsxRuntimeExports.jsxs(o.Content,{className:h({loading:a}),children:[u.jsxRuntimeExports.jsxs(o.Title,{children:[u.jsxRuntimeExports.jsx("h2",{children:y}),u.jsxRuntimeExports.jsx(o.TagsSelect,{ref:B,value:j.union(...Y),tags:Z,options:[],editable:!0,editor:!0,onChange:e=>x("tags",e),align:"right",styleDropdown:{display:a?"none":"unset"},className:"tags-select",itemClassName:"details-tag"})]}),u.jsxRuntimeExports.jsxs("div",{className:"sub-title",children:[u.jsxRuntimeExports.jsxs("span",{className:"entity-type",children:[j.upperFirst(q)," - "]}),u.jsxRuntimeExports.jsx("h3",{children:ee})]})]})]}),u.jsxRuntimeExports.jsx(o.StatusSelect,{value:A,options:l||[],disabledValues:V,invert:!0,style:{maxWidth:"unset"},onChange:e=>x("status",e),className:h("status-select",{loading:a}),align:p?"right":"left",$textColor:re.getTextColor(I!==void 0?I.color:"#OOO")}),!p&&(!D||a?u.jsxRuntimeExports.jsx("div",{}):u.jsxRuntimeExports.jsx(o.AssigneeSelect,{value:d,options:M,disabledValues:w.map(e=>e.name),isMultiple:C&&d.length>1&&q==="task",readOnly:q!=="task",emptyMessage:q==="task"?"Assign user":"",align:"right",onChange:e=>x("assignees",e),className:"assignee-select","data-tooltip":d.length?q==="task"?"Assigned users":"Author":""})),u.jsxRuntimeExports.jsx(pe.Actions,{entities:s,entityType:q,entitySubTypes:U,isLoadingEntity:!!v||!!a,searchParams:W,isDeveloperMode:_,onSetSearchParams:z,onNavigate:K}),E?u.jsxRuntimeExports.jsx(o.PriorityEnumDropdown,{options:E,placeholder:"No priority",value:X,onChange:e=>x("attrib",{priority:e[0]}),align:"right"}):u.jsxRuntimeExports.jsx("div",{style:{height:32}}),u.jsxRuntimeExports.jsx(ne,{isLoading:a,entityType:q,className:"filters",overrides:{checklists:{label:k}},currentTab:H,onTabChange:G})]})})})};module.exports=xe;
1
+ "use strict";const u=require("../../../../../_virtual/jsx-runtime.cjs.js"),n=require("react"),j=require("lodash"),h=require("clsx"),re=require("@ynput/ayon-react-components");require("../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("react-toastify");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");const ie=require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");const ue=require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */const se=require("../../../util/getPriorityOptions.cjs.js");require("uuid");require("../../../util/pubsub.cjs.js");require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("axios");require("../../../context/RemoteModulesContext.cjs.js");const qe=require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");const te=require("../../../components/Thumbnail/StackedThumbnails.cjs.js"),ae=require("../../../components/EntityPanelUploader/EntityPanelUploader.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../../components/SizeSlider/SizeSlider.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/SearchFilter/filterDates.cjs.js");require("../../../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");require("../../../components/Chips/Chips.cjs.js");require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../Feed/components/ActivityDate.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("date-fns");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../../ProjectTreeTable/ProjectTreeTable.cjs.js");require("../../ProjectTreeTable/context/CellEditingContext.cjs.js");require("short-uuid");require("@tanstack/react-table");require("../../ProjectTreeTable/widgets/CollapsedWidget.cjs.js");require("../../ProjectTreeTable/widgets/DateWidget.cjs.js");require("../../ProjectTreeTable/widgets/EnumWidget.cjs.js");require("../../ProjectTreeTable/widgets/TextWidget.cjs.js");require("../../ProjectTreeTable/widgets/BooleanWidget.cjs.js");require("../../ProjectTreeTable/widgets/CellWidget.cjs.js");require("../../ProjectTreeTable/widgets/EntityNameWidget.cjs.js");require("../../ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js");require("../../ProjectTreeTable/widgets/ThumbnailWidget.cjs.js");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../../ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../../ProjectTreeTable/context/SelectedRowsContext.cjs.js");require("../../ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../../ProjectTreeTable/widgets/ErrorWidget.cjs.js");require("../../ProjectTreeTable/ProjectTreeTable.styled.cjs.js");require("../../ProjectTreeTable/components/SelectionCell.cjs.js");require("../../ProjectTreeTable/components/RowSelectionHeader.cjs.js");require("../../ProjectTreeTable/context/SelectionCellsContext.cjs.js");require("../../ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");require("../../ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");require("../../ProjectTreeTable/context/ProjectTableContext.cjs.js");require("../../ProjectTreeTable/context/ClipboardContext.cjs.js");require("../../ProjectTreeTable/context/ColumnSettingsContext.cjs.js");require("../../ProjectTreeTable/context/ProjectDataContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");const oe=require("../../../hooks/useScopedStatuses.cjs.js"),le=require("../../../hooks/useEntityUpdate.cjs.js");require("react-redux");require("custom-protocol-check");require("../../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("../../ProjectTreeTable/components/HeaderActionButton.cjs.js");require("../../ProjectTreeTable/components/ColumnHeaderMenu.cjs.js");require("../DetailsPanel.styled.cjs.js");const ne=require("../FeedFilters/FeedFilters.cjs.js"),o=require("./DetailsPanelHeader.styled.cjs.js"),ce=require("../helpers/getThumbnails.cjs.js"),de=require("../helpers/buildDetailsPanelTitles.cjs.js"),me=require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");const pe=require("../../Actions/Actions.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../../../components/SortingSetting/SortingSetting.styled.cjs.js");require("../../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../../components/Menu/Menu.styled.cjs.js");require("../../../components/Menu/MenuItem.cjs.js");const xe=({entityType:q,entitySubTypes:U,entities:s=[],disabledAssignees:w=[],users:R=[],disabledStatuses:V,tagsOptions:b=[],isFetching:v,isCompact:p=!1,currentTab:H,onTabChange:G,entityTypeIcons:N,onOpenViewer:L,onEntityFocus:g})=>{const{useSearchParams:$,useNavigate:Q,isDeveloperMode:_}=qe.useDetailsPanelContext(),K=Q(),[W,z]=$(),B=n.useRef(null),l=oe.useScopedStatuses(s.map(e=>e.projectName),[q]),d=n.useMemo(()=>j.union(...s.flatMap(e=>{var i,t;return[((i=e.task)==null?void 0:i.assignees)||[],((t=e.version)==null?void 0:t.author)||[]]})),[s]);let r=s[0];const a=s.length===0||!r||v;r||(r={id:"placeholder",name:"loading...",label:"loading...",entityType:q,status:"loading",projectName:"loading...",tags:[],hasReviewables:!1,attrib:{},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString(),path:""});const S=s.length>1||r==null?void 0:r.projectName,P=s.filter(e=>e.projectName===(r==null?void 0:r.projectName)&&e.id).map(e=>e.id),{data:c}=ie.useGetEntitiesChecklistsQuery({projectName:r==null?void 0:r.projectName,entityIds:P},{skip:!(r!=null&&r.projectName)||!P.length});let k;c!=null&&c.total&&c.total>0&&(k=`${c.checked}/${c.total}`);const{data:J}=ue.useGetAttributeConfigQuery({attributeName:"priority"}),E=se.getPriorityOptions(J,q),f=n.useMemo(()=>ce(s,q,N),[s,q,N]),A=n.useMemo(()=>s.map(e=>e.status),[s]),X=n.useMemo(()=>s.map(e=>{var i;return(i=e.attrib)==null?void 0:i.priority}),[s]),Y=n.useMemo(()=>s.map(e=>e.tags),[s]),Z=n.useMemo(()=>b.reduce((e,i)=>(e[i.name]=i,e),{}),[b]),C=s.length>1,{updateEntity:F}=le.useEntityUpdate({entities:s.map(e=>{var i,t,m;return{id:e.id,projectName:e.projectName,users:((i=e.task)==null?void 0:i.assignees)||[],folderId:(t=e.folder)==null?void 0:t.id,productId:(m=e.product)==null?void 0:m.id}}),entityType:q}),x=(e,i)=>i==null?console.error("value is null or undefined"):F(e,i),T=()=>{var m,O;let e,i=r.id,t=q+"Id";q==="version"&&((m=r.product)!=null&&m.id)&&(e=[r.id],i=(O=r.product)==null?void 0:O.id,t="productId"),i&&L({[t]:i,projectName:S,versionIds:e})},D=["task","version","representation"].includes(q)&&(d.length>0||q==="task"),M=R.map(e=>e);if(D){const e=R.map(t=>t.name),i=d.filter(t=>!e.includes(t));i.length&&M.push(...i.map(t=>({name:t,fullName:t})))}const{title:y,subTitle:ee}=de.buildDetailsPanelTitles(s,q),I=(l==null?void 0:l.length)!==0&&(l==null?void 0:l.find(e=>e.name===A[0]));return u.jsxRuntimeExports.jsx(o.HeaderContainer,{children:u.jsxRuntimeExports.jsx(ae.EntityPanelUploader,{entities:s,entityType:q,projectName:S,onVersionCreated:e=>g==null?void 0:g(e,"version"),children:u.jsxRuntimeExports.jsxs(o.Grid,{className:h("details-panel-header",{isCompact:p}),children:[u.jsxRuntimeExports.jsxs(o.Header,{className:h("titles",{isCompact:p,loading:a},"no-shimmer"),children:[u.jsxRuntimeExports.jsxs("div",{style:{position:"relative"},children:[u.jsxRuntimeExports.jsx(te.StackedThumbnails,{isLoading:a,shimmer:a,thumbnails:f,onClick:f.length===1?T:void 0,hoverIcon:"play_circle"}),!C&&(r==null?void 0:r.hasReviewables)&&u.jsxRuntimeExports.jsx(me.PlayableIcon,{})]}),u.jsxRuntimeExports.jsxs(o.Content,{className:h({loading:a}),children:[u.jsxRuntimeExports.jsxs(o.Title,{children:[u.jsxRuntimeExports.jsx("h2",{children:y}),u.jsxRuntimeExports.jsx(o.TagsSelect,{ref:B,value:j.union(...Y),tags:Z,options:[],editable:!0,editor:!0,onChange:e=>x("tags",e),align:"right",styleDropdown:{display:a?"none":"unset"},className:"tags-select",itemClassName:"details-tag"})]}),u.jsxRuntimeExports.jsxs("div",{className:"sub-title",children:[u.jsxRuntimeExports.jsxs("span",{className:"entity-type",children:[j.upperFirst(q)," - "]}),u.jsxRuntimeExports.jsx("h3",{children:ee})]})]})]}),u.jsxRuntimeExports.jsx(o.StatusSelect,{value:A,options:l||[],disabledValues:V,invert:!0,style:{maxWidth:"unset"},onChange:e=>x("status",e),className:h("status-select",{loading:a}),align:p?"right":"left",$textColor:re.getTextColor(I!==void 0?I.color:"#OOO")}),!p&&(!D||a?u.jsxRuntimeExports.jsx("div",{}):u.jsxRuntimeExports.jsx(o.AssigneeSelect,{value:d,options:M,disabledValues:w.map(e=>e.name),isMultiple:C&&d.length>1&&q==="task",readOnly:q!=="task",emptyMessage:q==="task"?"Assign user":"",align:"right",onChange:e=>x("assignees",e),className:"assignee-select","data-tooltip":d.length?q==="task"?"Assigned users":"Author":""})),u.jsxRuntimeExports.jsx(pe.Actions,{entities:s,entityType:q,entitySubTypes:U,isLoadingEntity:!!v||!!a,searchParams:W,isDeveloperMode:_,onSetSearchParams:z,onNavigate:K}),E?u.jsxRuntimeExports.jsx(o.PriorityEnumDropdown,{options:E,placeholder:"No priority",value:X,onChange:e=>x("attrib",{priority:e[0]}),align:"right"}):u.jsxRuntimeExports.jsx("div",{style:{height:32}}),u.jsxRuntimeExports.jsx(ne,{isLoading:a,entityType:q,className:"filters",overrides:{checklists:{label:k}},currentTab:H,onTabChange:G})]})})})};module.exports=xe;
2
2
  //# sourceMappingURL=DetailsPanelHeader.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DetailsPanelHeader.cjs.js","sources":["../../../../../../src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.tsx"],"sourcesContent":["import { useMemo, useRef } from 'react'\nimport { union, upperFirst } from 'lodash'\nimport clsx from 'clsx'\nimport { DropdownRef, getTextColor } from '@ynput/ayon-react-components'\n\nimport { EntityPanelUploader, StackedThumbnails } from '@shared/components'\nimport { Actions, DetailsPanelProps } from '@shared/containers'\n// shared\nimport { useGetEntitiesChecklistsQuery, useGetAttributeConfigQuery, Status } from '@shared/api'\nimport type { DetailsPanelEntityData } from '@shared/api'\nimport { getPriorityOptions } from '@shared/util'\nimport { useScopedStatuses, useEntityUpdate } from '@shared/hooks'\nimport { DetailsPanelTab, useDetailsPanelContext } from '@shared/context'\n\nimport FeedFilters from '../FeedFilters/FeedFilters'\nimport * as Styled from './DetailsPanelHeader.styled'\nimport getThumbnails from '../helpers/getThumbnails'\nimport { buildDetailsPanelTitles } from '../helpers/buildDetailsPanelTitles'\nimport { PlayableIcon } from '@shared/components/PlayableIcon/PlayableIcon'\n\nexport type EntityTypeIcons = {\n folder: Record<string, string>\n task: Record<string, string>\n product: Record<string, string>\n}\n\ntype DetailsPanelHeaderProps = {\n entityType: 'folder' | 'task' | 'version' | 'representation'\n entitySubTypes: string[]\n entities: DetailsPanelEntityData[]\n disabledAssignees?: any[]\n users?: any[]\n disabledStatuses?: string[]\n tagsOptions?: any[]\n isFetching?: boolean\n isCompact?: boolean\n currentTab: DetailsPanelTab\n onTabChange: (tab: DetailsPanelTab) => void\n onOpenViewer: (args: any) => void\n onEntityFocus: DetailsPanelProps['onEntityFocus']\n entityTypeIcons: EntityTypeIcons\n}\n\nconst DetailsPanelHeader = ({\n entityType,\n entitySubTypes,\n entities = [],\n disabledAssignees = [],\n users = [],\n disabledStatuses,\n tagsOptions = [],\n isFetching,\n isCompact = false,\n currentTab,\n onTabChange,\n entityTypeIcons,\n onOpenViewer,\n onEntityFocus,\n}: DetailsPanelHeaderProps) => {\n const { useSearchParams, useNavigate, isDeveloperMode } = useDetailsPanelContext()\n const navigate = useNavigate()\n const [searchParams, setSearchParams] = useSearchParams()\n const tagsSelectRef = useRef<DropdownRef>(null)\n\n const statuses = useScopedStatuses(\n entities.map((entity) => entity.projectName),\n [entityType],\n )\n\n // for selected entities, get flat list of assignees\n const entityUsers: string[] = useMemo(\n () =>\n union(\n ...entities.flatMap((entity) => [\n entity.task?.assignees || [],\n entity.version?.author || [],\n ]),\n ),\n [entities],\n )\n\n let firstEntity = entities[0]\n // If there's no data return null\n const isLoading = entities.length === 0 || !firstEntity || isFetching\n // placeholder entity\n if (!firstEntity) {\n firstEntity = {\n id: 'placeholder',\n name: 'loading...',\n label: 'loading...',\n entityType,\n status: 'loading',\n projectName: 'loading...',\n tags: [],\n hasReviewables: false,\n attrib: {},\n createdAt: new Date().toISOString(),\n updatedAt: new Date().toISOString(),\n path: '',\n }\n }\n\n const projectName = entities.length > 1 ? undefined : firstEntity?.projectName\n\n const entityIds = entities\n .filter((e) => e.projectName === firstEntity?.projectName && e.id)\n .map((entity) => entity.id)\n\n // get checklists count\n const { data: checklistCount } = useGetEntitiesChecklistsQuery(\n {\n projectName: firstEntity?.projectName,\n entityIds,\n },\n { skip: !firstEntity?.projectName || !entityIds.length },\n )\n let checklistsLabel\n if (checklistCount?.total && checklistCount.total > 0) {\n checklistsLabel = `${checklistCount.checked}/${checklistCount.total}`\n }\n\n // get priorities\n // get priority attribute so we know the colors and icons for each priority\n const { data: priorityAttrib } = useGetAttributeConfigQuery({ attributeName: 'priority' })\n const priorities = getPriorityOptions(priorityAttrib, entityType)\n\n const thumbnails = useMemo(\n () => getThumbnails(entities, entityType, entityTypeIcons),\n [entities, entityType, entityTypeIcons],\n )\n\n // we need to get the intersection of all the statuses of the projects for the selected entities\n // this means that if we have 2 entities from 2 different projects, we need to get the intersection of the statuses of those 2 projects\n // and it prevents us from showing statuses that are not available for the selected entities\n const statusesValue = useMemo(() => entities.map((t) => t.status), [entities])\n const priorityValues = useMemo(() => entities.map((t) => t.attrib?.priority), [entities])\n const tagsValues: string[][] = useMemo(() => entities.map((t) => t.tags), [entities])\n const tagsOptionsObject = useMemo(\n () =>\n tagsOptions.reduce((acc, tag) => {\n acc[tag.name] = tag\n return acc\n }, {}),\n [tagsOptions],\n )\n\n const isMultiple = entities.length > 1\n\n const { updateEntity } = useEntityUpdate({\n entities: entities.map((e) => ({\n id: e.id,\n projectName: e.projectName,\n users: e.task?.assignees || [],\n folderId: e.folder?.id,\n productId: e.product?.id,\n })),\n entityType,\n })\n\n const handleUpdate = (field: string, value: any) => {\n if (value === null || value === undefined) return console.error('value is null or undefined')\n return updateEntity(field, value)\n }\n\n const handleThumbnailClick = () => {\n let versionIds,\n id = firstEntity.id,\n entityTypeKey = entityType + 'Id'\n\n if (entityType === 'version' && firstEntity.product?.id) {\n versionIds = [firstEntity.id]\n id = firstEntity.product?.id\n entityTypeKey = 'productId'\n }\n\n if (id) {\n onOpenViewer({\n [entityTypeKey]: id,\n projectName,\n versionIds,\n })\n }\n }\n\n const hasUser =\n ['task', 'version', 'representation'].includes(entityType) &&\n (entityUsers.length > 0 || entityType === 'task')\n\n const usersOptions = users.map((u) => u)\n if (hasUser) {\n // check if all users are in options, otherwise add them\n const allUsers = users.map((u) => u.name)\n const usersToAdd = entityUsers.filter((u) => !allUsers.includes(u))\n if (usersToAdd.length) {\n usersOptions.push(...usersToAdd.map((u) => ({ name: u, fullName: u })))\n }\n }\n\n // Get title and subtitle from the imported function\n const { title, subTitle } = buildDetailsPanelTitles(entities, entityType)\n const status = statuses?.length!==0 && statuses?.find((status)=> status.name=== statusesValue[0])\n return (\n <Styled.HeaderContainer>\n <EntityPanelUploader\n entities={entities}\n entityType={entityType}\n projectName={projectName}\n onVersionCreated={(id) => onEntityFocus?.(id, 'version')}\n >\n <Styled.Grid className={clsx('details-panel-header', { isCompact })}>\n <Styled.Header\n className={clsx('titles', { isCompact, loading: isLoading }, 'no-shimmer')}\n >\n <div style={{ position: 'relative' }}>\n <StackedThumbnails\n isLoading={isLoading}\n shimmer={isLoading}\n thumbnails={thumbnails}\n onClick={thumbnails.length === 1 ? handleThumbnailClick : undefined}\n hoverIcon={'play_circle'}\n />\n {!isMultiple && firstEntity?.hasReviewables && <PlayableIcon />}\n </div>\n <Styled.Content className={clsx({ loading: isLoading })}>\n <Styled.Title>\n <h2>{title}</h2>\n <Styled.TagsSelect\n ref={tagsSelectRef}\n value={union(...tagsValues)}\n tags={tagsOptionsObject}\n options={[]}\n editable\n editor\n onChange={(value) => handleUpdate('tags', value)}\n align=\"right\"\n styleDropdown={{ display: isLoading ? 'none' : 'unset' }}\n className=\"tags-select\"\n itemClassName=\"details-tag\"\n />\n </Styled.Title>\n <div className=\"sub-title\">\n <span className=\"entity-type\">{upperFirst(entityType)} - </span>\n <h3>{subTitle}</h3>\n </div>\n </Styled.Content>\n </Styled.Header>\n <Styled.StatusSelect\n value={statusesValue}\n options={statuses || []}\n disabledValues={disabledStatuses}\n invert\n style={{ maxWidth: 'unset' }}\n onChange={(value) => handleUpdate('status', value)}\n className={clsx('status-select', { loading: isLoading })}\n align={isCompact ? 'right' : 'left'}\n $textColor={getTextColor(status!==undefined? (status as Status).color: \"#OOO\")}\n />\n {!isCompact &&\n (!hasUser || isLoading ? (\n <div></div>\n ) : (\n <Styled.AssigneeSelect\n value={entityUsers}\n options={usersOptions}\n disabledValues={disabledAssignees.map((u) => u.name)}\n isMultiple={isMultiple && entityUsers.length > 1 && entityType === 'task'}\n readOnly={entityType !== 'task'}\n emptyMessage={entityType === 'task' ? 'Assign user' : ''}\n align=\"right\"\n onChange={(value) => handleUpdate('assignees', value)}\n className=\"assignee-select\"\n data-tooltip={\n entityUsers.length ? (entityType === 'task' ? 'Assigned users' : 'Author') : ''\n }\n />\n ))}\n <Actions\n entities={entities}\n entityType={entityType}\n entitySubTypes={entitySubTypes}\n isLoadingEntity={!!isFetching || !!isLoading}\n searchParams={searchParams}\n isDeveloperMode={isDeveloperMode}\n onSetSearchParams={setSearchParams}\n onNavigate={navigate}\n />\n {priorities ? (\n <Styled.PriorityEnumDropdown\n options={priorities}\n placeholder=\"No priority\"\n value={priorityValues}\n onChange={(value) => handleUpdate('attrib', { priority: value[0] })}\n align=\"right\"\n />\n ) : (\n <div style={{ height: 32 }}></div>\n )}\n <FeedFilters\n isLoading={isLoading}\n entityType={entityType}\n className=\"filters\"\n overrides={{\n checklists: {\n label: checklistsLabel,\n },\n }}\n currentTab={currentTab}\n onTabChange={onTabChange}\n />\n </Styled.Grid>\n </EntityPanelUploader>\n </Styled.HeaderContainer>\n )\n}\n\nexport default DetailsPanelHeader\n"],"names":["DetailsPanelHeader","entityType","entitySubTypes","entities","disabledAssignees","users","disabledStatuses","tagsOptions","isFetching","isCompact","currentTab","onTabChange","entityTypeIcons","onOpenViewer","onEntityFocus","useSearchParams","useNavigate","isDeveloperMode","useDetailsPanelContext","navigate","searchParams","setSearchParams","tagsSelectRef","useRef","statuses","useScopedStatuses","entity","entityUsers","useMemo","union","_a","_b","firstEntity","isLoading","projectName","entityIds","checklistCount","useGetEntitiesChecklistsQuery","checklistsLabel","priorityAttrib","useGetAttributeConfigQuery","priorities","getPriorityOptions","thumbnails","getThumbnails","statusesValue","t","priorityValues","tagsValues","tagsOptionsObject","acc","tag","isMultiple","updateEntity","useEntityUpdate","_c","handleUpdate","field","value","handleThumbnailClick","versionIds","id","entityTypeKey","hasUser","usersOptions","u","allUsers","usersToAdd","title","subTitle","buildDetailsPanelTitles","status","jsx","Styled.HeaderContainer","EntityPanelUploader","jsxs","Styled.Grid","clsx","Styled.Header","StackedThumbnails","PlayableIcon","Styled.Content","Styled.Title","Styled.TagsSelect","upperFirst","Styled.StatusSelect","getTextColor","Styled.AssigneeSelect","Actions","Styled.PriorityEnumDropdown","FeedFilters"],"mappings":"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"}
1
+ {"version":3,"file":"DetailsPanelHeader.cjs.js","sources":["../../../../../../src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.tsx"],"sourcesContent":["import { useMemo, useRef } from 'react'\nimport { union, upperFirst } from 'lodash'\nimport clsx from 'clsx'\nimport { DropdownRef, getTextColor } from '@ynput/ayon-react-components'\n\nimport { EntityPanelUploader, StackedThumbnails } from '@shared/components'\nimport { Actions, DetailsPanelProps } from '@shared/containers'\n// shared\nimport { useGetEntitiesChecklistsQuery, useGetAttributeConfigQuery, Status } from '@shared/api'\nimport type { DetailsPanelEntityData } from '@shared/api'\nimport { getPriorityOptions } from '@shared/util'\nimport { useScopedStatuses, useEntityUpdate } from '@shared/hooks'\nimport { DetailsPanelTab, useDetailsPanelContext } from '@shared/context'\n\nimport FeedFilters from '../FeedFilters/FeedFilters'\nimport * as Styled from './DetailsPanelHeader.styled'\nimport getThumbnails from '../helpers/getThumbnails'\nimport { buildDetailsPanelTitles } from '../helpers/buildDetailsPanelTitles'\nimport { PlayableIcon } from '@shared/components/PlayableIcon/PlayableIcon'\n\nexport type EntityTypeIcons = {\n folder: Record<string, string>\n task: Record<string, string>\n product: Record<string, string>\n}\n\ntype DetailsPanelHeaderProps = {\n entityType: 'folder' | 'task' | 'version' | 'representation'\n entitySubTypes: string[]\n entities: DetailsPanelEntityData[]\n disabledAssignees?: any[]\n users?: any[]\n disabledStatuses?: string[]\n tagsOptions?: any[]\n isFetching?: boolean\n isCompact?: boolean\n currentTab: DetailsPanelTab\n onTabChange: (tab: DetailsPanelTab) => void\n onOpenViewer: (args: any) => void\n onEntityFocus: DetailsPanelProps['onEntityFocus']\n entityTypeIcons: EntityTypeIcons\n}\n\nconst DetailsPanelHeader = ({\n entityType,\n entitySubTypes,\n entities = [],\n disabledAssignees = [],\n users = [],\n disabledStatuses,\n tagsOptions = [],\n isFetching,\n isCompact = false,\n currentTab,\n onTabChange,\n entityTypeIcons,\n onOpenViewer,\n onEntityFocus,\n}: DetailsPanelHeaderProps) => {\n const { useSearchParams, useNavigate, isDeveloperMode } = useDetailsPanelContext()\n const navigate = useNavigate()\n const [searchParams, setSearchParams] = useSearchParams()\n const tagsSelectRef = useRef<DropdownRef>(null)\n\n const statuses = useScopedStatuses(\n entities.map((entity) => entity.projectName),\n [entityType],\n )\n\n // for selected entities, get flat list of assignees\n const entityUsers: string[] = useMemo(\n () =>\n union(\n ...entities.flatMap((entity) => [\n entity.task?.assignees || [],\n entity.version?.author || [],\n ]),\n ),\n [entities],\n )\n\n let firstEntity = entities[0]\n // If there's no data return null\n const isLoading = entities.length === 0 || !firstEntity || isFetching\n // placeholder entity\n if (!firstEntity) {\n firstEntity = {\n id: 'placeholder',\n name: 'loading...',\n label: 'loading...',\n entityType,\n status: 'loading',\n projectName: 'loading...',\n tags: [],\n hasReviewables: false,\n attrib: {},\n createdAt: new Date().toISOString(),\n updatedAt: new Date().toISOString(),\n path: '',\n }\n }\n\n const projectName = entities.length > 1 ? undefined : firstEntity?.projectName\n\n const entityIds = entities\n .filter((e) => e.projectName === firstEntity?.projectName && e.id)\n .map((entity) => entity.id)\n\n // get checklists count\n const { data: checklistCount } = useGetEntitiesChecklistsQuery(\n {\n projectName: firstEntity?.projectName,\n entityIds,\n },\n { skip: !firstEntity?.projectName || !entityIds.length },\n )\n let checklistsLabel\n if (checklistCount?.total && checklistCount.total > 0) {\n checklistsLabel = `${checklistCount.checked}/${checklistCount.total}`\n }\n\n // get priorities\n // get priority attribute so we know the colors and icons for each priority\n const { data: priorityAttrib } = useGetAttributeConfigQuery({ attributeName: 'priority' })\n const priorities = getPriorityOptions(priorityAttrib, entityType)\n\n const thumbnails = useMemo(\n () => getThumbnails(entities, entityType, entityTypeIcons),\n [entities, entityType, entityTypeIcons],\n )\n\n // we need to get the intersection of all the statuses of the projects for the selected entities\n // this means that if we have 2 entities from 2 different projects, we need to get the intersection of the statuses of those 2 projects\n // and it prevents us from showing statuses that are not available for the selected entities\n const statusesValue = useMemo(() => entities.map((t) => t.status), [entities])\n const priorityValues = useMemo(() => entities.map((t) => t.attrib?.priority), [entities])\n const tagsValues: string[][] = useMemo(() => entities.map((t) => t.tags), [entities])\n const tagsOptionsObject = useMemo(\n () =>\n tagsOptions.reduce((acc, tag) => {\n acc[tag.name] = tag\n return acc\n }, {}),\n [tagsOptions],\n )\n\n const isMultiple = entities.length > 1\n\n const { updateEntity } = useEntityUpdate({\n entities: entities.map((e) => ({\n id: e.id,\n projectName: e.projectName,\n users: e.task?.assignees || [],\n folderId: e.folder?.id,\n productId: e.product?.id,\n })),\n entityType,\n })\n\n const handleUpdate = (field: string, value: any) => {\n if (value === null || value === undefined) return console.error('value is null or undefined')\n return updateEntity(field, value)\n }\n\n const handleThumbnailClick = () => {\n let versionIds,\n id = firstEntity.id,\n entityTypeKey = entityType + 'Id'\n\n if (entityType === 'version' && firstEntity.product?.id) {\n versionIds = [firstEntity.id]\n id = firstEntity.product?.id\n entityTypeKey = 'productId'\n }\n\n if (id) {\n onOpenViewer({\n [entityTypeKey]: id,\n projectName,\n versionIds,\n })\n }\n }\n\n const hasUser =\n ['task', 'version', 'representation'].includes(entityType) &&\n (entityUsers.length > 0 || entityType === 'task')\n\n const usersOptions = users.map((u) => u)\n if (hasUser) {\n // check if all users are in options, otherwise add them\n const allUsers = users.map((u) => u.name)\n const usersToAdd = entityUsers.filter((u) => !allUsers.includes(u))\n if (usersToAdd.length) {\n usersOptions.push(...usersToAdd.map((u) => ({ name: u, fullName: u })))\n }\n }\n\n // Get title and subtitle from the imported function\n const { title, subTitle } = buildDetailsPanelTitles(entities, entityType)\n const status = statuses?.length!==0 && statuses?.find((status)=> status.name=== statusesValue[0])\n return (\n <Styled.HeaderContainer>\n <EntityPanelUploader\n entities={entities}\n entityType={entityType}\n projectName={projectName}\n onVersionCreated={(id) => onEntityFocus?.(id, 'version')}\n >\n <Styled.Grid className={clsx('details-panel-header', { isCompact })}>\n <Styled.Header\n className={clsx('titles', { isCompact, loading: isLoading }, 'no-shimmer')}\n >\n <div style={{ position: 'relative' }}>\n <StackedThumbnails\n isLoading={isLoading}\n shimmer={isLoading}\n thumbnails={thumbnails}\n onClick={thumbnails.length === 1 ? handleThumbnailClick : undefined}\n hoverIcon={'play_circle'}\n />\n {!isMultiple && firstEntity?.hasReviewables && <PlayableIcon />}\n </div>\n <Styled.Content className={clsx({ loading: isLoading })}>\n <Styled.Title>\n <h2>{title}</h2>\n <Styled.TagsSelect\n ref={tagsSelectRef}\n value={union(...tagsValues)}\n tags={tagsOptionsObject}\n options={[]}\n editable\n editor\n onChange={(value) => handleUpdate('tags', value)}\n align=\"right\"\n styleDropdown={{ display: isLoading ? 'none' : 'unset' }}\n className=\"tags-select\"\n itemClassName=\"details-tag\"\n />\n </Styled.Title>\n <div className=\"sub-title\">\n <span className=\"entity-type\">{upperFirst(entityType)} - </span>\n <h3>{subTitle}</h3>\n </div>\n </Styled.Content>\n </Styled.Header>\n <Styled.StatusSelect\n value={statusesValue}\n options={statuses || []}\n disabledValues={disabledStatuses}\n invert\n style={{ maxWidth: 'unset' }}\n onChange={(value) => handleUpdate('status', value)}\n className={clsx('status-select', { loading: isLoading })}\n align={isCompact ? 'right' : 'left'}\n $textColor={getTextColor(status!==undefined? (status as Status).color: \"#OOO\")}\n />\n {!isCompact &&\n (!hasUser || isLoading ? (\n <div></div>\n ) : (\n <Styled.AssigneeSelect\n value={entityUsers}\n options={usersOptions}\n disabledValues={disabledAssignees.map((u) => u.name)}\n isMultiple={isMultiple && entityUsers.length > 1 && entityType === 'task'}\n readOnly={entityType !== 'task'}\n emptyMessage={entityType === 'task' ? 'Assign user' : ''}\n align=\"right\"\n onChange={(value) => handleUpdate('assignees', value)}\n className=\"assignee-select\"\n data-tooltip={\n entityUsers.length ? (entityType === 'task' ? 'Assigned users' : 'Author') : ''\n }\n />\n ))}\n <Actions\n entities={entities}\n entityType={entityType}\n entitySubTypes={entitySubTypes}\n isLoadingEntity={!!isFetching || !!isLoading}\n searchParams={searchParams}\n isDeveloperMode={isDeveloperMode}\n onSetSearchParams={setSearchParams}\n onNavigate={navigate}\n />\n {priorities ? (\n <Styled.PriorityEnumDropdown\n options={priorities}\n placeholder=\"No priority\"\n value={priorityValues}\n onChange={(value) => handleUpdate('attrib', { priority: value[0] })}\n align=\"right\"\n />\n ) : (\n <div style={{ height: 32 }}></div>\n )}\n <FeedFilters\n isLoading={isLoading}\n entityType={entityType}\n className=\"filters\"\n overrides={{\n checklists: {\n label: checklistsLabel,\n },\n }}\n currentTab={currentTab}\n onTabChange={onTabChange}\n />\n </Styled.Grid>\n </EntityPanelUploader>\n </Styled.HeaderContainer>\n )\n}\n\nexport default DetailsPanelHeader\n"],"names":["DetailsPanelHeader","entityType","entitySubTypes","entities","disabledAssignees","users","disabledStatuses","tagsOptions","isFetching","isCompact","currentTab","onTabChange","entityTypeIcons","onOpenViewer","onEntityFocus","useSearchParams","useNavigate","isDeveloperMode","useDetailsPanelContext","navigate","searchParams","setSearchParams","tagsSelectRef","useRef","statuses","useScopedStatuses","entity","entityUsers","useMemo","union","_a","_b","firstEntity","isLoading","projectName","entityIds","checklistCount","useGetEntitiesChecklistsQuery","checklistsLabel","priorityAttrib","useGetAttributeConfigQuery","priorities","getPriorityOptions","thumbnails","getThumbnails","statusesValue","t","priorityValues","tagsValues","tagsOptionsObject","acc","tag","isMultiple","updateEntity","useEntityUpdate","_c","handleUpdate","field","value","handleThumbnailClick","versionIds","id","entityTypeKey","hasUser","usersOptions","u","allUsers","usersToAdd","title","subTitle","buildDetailsPanelTitles","status","jsx","Styled.HeaderContainer","EntityPanelUploader","jsxs","Styled.Grid","clsx","Styled.Header","StackedThumbnails","PlayableIcon","Styled.Content","Styled.Title","Styled.TagsSelect","upperFirst","Styled.StatusSelect","getTextColor","Styled.AssigneeSelect","Actions","Styled.PriorityEnumDropdown","FeedFilters"],"mappings":"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"}
@@ -58,6 +58,8 @@ import { useGetAttributeConfigQuery as mo } from "../../../api/queries/attribute
58
58
  import "../../../api/queries/attributes/updateAttributes.es.js";
59
59
  import "../../../api/queries/authentication/getAuthentication.es.js";
60
60
  import "../../../api/queries/cloud/cloud.es.js";
61
+ import "../../../api/queries/config/getConfig.es.js";
62
+ import "../../../api/queries/config/updateConfig.es.js";
61
63
  import "../../../api/queries/entities/getEntity.es.js";
62
64
  import "../../../api/queries/entities/getEntityPanel.es.js";
63
65
  import "../../../api/queries/entities/updateEntity.es.js";
@@ -246,7 +248,7 @@ import "../../../components/EarlyPreview/EarlyPreview.es.js";
246
248
  import "../../../components/LegacyBadge/LegacyBadge.es.js";
247
249
  import "../../../components/Menu/Menu.styled.es.js";
248
250
  import "../../../components/Menu/MenuItem.es.js";
249
- const mp = ({
251
+ const ep = ({
250
252
  entityType: p,
251
253
  entitySubTypes: V,
252
254
  entities: m = [],
@@ -466,6 +468,6 @@ const mp = ({
466
468
  ) });
467
469
  };
468
470
  export {
469
- mp as default
471
+ ep as default
470
472
  };
471
473
  //# sourceMappingURL=DetailsPanelHeader.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DetailsPanelHeader.es.js","sources":["../../../../../../src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.tsx"],"sourcesContent":["import { useMemo, useRef } from 'react'\nimport { union, upperFirst } from 'lodash'\nimport clsx from 'clsx'\nimport { DropdownRef, getTextColor } from '@ynput/ayon-react-components'\n\nimport { EntityPanelUploader, StackedThumbnails } from '@shared/components'\nimport { Actions, DetailsPanelProps } from '@shared/containers'\n// shared\nimport { useGetEntitiesChecklistsQuery, useGetAttributeConfigQuery, Status } from '@shared/api'\nimport type { DetailsPanelEntityData } from '@shared/api'\nimport { getPriorityOptions } from '@shared/util'\nimport { useScopedStatuses, useEntityUpdate } from '@shared/hooks'\nimport { DetailsPanelTab, useDetailsPanelContext } from '@shared/context'\n\nimport FeedFilters from '../FeedFilters/FeedFilters'\nimport * as Styled from './DetailsPanelHeader.styled'\nimport getThumbnails from '../helpers/getThumbnails'\nimport { buildDetailsPanelTitles } from '../helpers/buildDetailsPanelTitles'\nimport { PlayableIcon } from '@shared/components/PlayableIcon/PlayableIcon'\n\nexport type EntityTypeIcons = {\n folder: Record<string, string>\n task: Record<string, string>\n product: Record<string, string>\n}\n\ntype DetailsPanelHeaderProps = {\n entityType: 'folder' | 'task' | 'version' | 'representation'\n entitySubTypes: string[]\n entities: DetailsPanelEntityData[]\n disabledAssignees?: any[]\n users?: any[]\n disabledStatuses?: string[]\n tagsOptions?: any[]\n isFetching?: boolean\n isCompact?: boolean\n currentTab: DetailsPanelTab\n onTabChange: (tab: DetailsPanelTab) => void\n onOpenViewer: (args: any) => void\n onEntityFocus: DetailsPanelProps['onEntityFocus']\n entityTypeIcons: EntityTypeIcons\n}\n\nconst DetailsPanelHeader = ({\n entityType,\n entitySubTypes,\n entities = [],\n disabledAssignees = [],\n users = [],\n disabledStatuses,\n tagsOptions = [],\n isFetching,\n isCompact = false,\n currentTab,\n onTabChange,\n entityTypeIcons,\n onOpenViewer,\n onEntityFocus,\n}: DetailsPanelHeaderProps) => {\n const { useSearchParams, useNavigate, isDeveloperMode } = useDetailsPanelContext()\n const navigate = useNavigate()\n const [searchParams, setSearchParams] = useSearchParams()\n const tagsSelectRef = useRef<DropdownRef>(null)\n\n const statuses = useScopedStatuses(\n entities.map((entity) => entity.projectName),\n [entityType],\n )\n\n // for selected entities, get flat list of assignees\n const entityUsers: string[] = useMemo(\n () =>\n union(\n ...entities.flatMap((entity) => [\n entity.task?.assignees || [],\n entity.version?.author || [],\n ]),\n ),\n [entities],\n )\n\n let firstEntity = entities[0]\n // If there's no data return null\n const isLoading = entities.length === 0 || !firstEntity || isFetching\n // placeholder entity\n if (!firstEntity) {\n firstEntity = {\n id: 'placeholder',\n name: 'loading...',\n label: 'loading...',\n entityType,\n status: 'loading',\n projectName: 'loading...',\n tags: [],\n hasReviewables: false,\n attrib: {},\n createdAt: new Date().toISOString(),\n updatedAt: new Date().toISOString(),\n path: '',\n }\n }\n\n const projectName = entities.length > 1 ? undefined : firstEntity?.projectName\n\n const entityIds = entities\n .filter((e) => e.projectName === firstEntity?.projectName && e.id)\n .map((entity) => entity.id)\n\n // get checklists count\n const { data: checklistCount } = useGetEntitiesChecklistsQuery(\n {\n projectName: firstEntity?.projectName,\n entityIds,\n },\n { skip: !firstEntity?.projectName || !entityIds.length },\n )\n let checklistsLabel\n if (checklistCount?.total && checklistCount.total > 0) {\n checklistsLabel = `${checklistCount.checked}/${checklistCount.total}`\n }\n\n // get priorities\n // get priority attribute so we know the colors and icons for each priority\n const { data: priorityAttrib } = useGetAttributeConfigQuery({ attributeName: 'priority' })\n const priorities = getPriorityOptions(priorityAttrib, entityType)\n\n const thumbnails = useMemo(\n () => getThumbnails(entities, entityType, entityTypeIcons),\n [entities, entityType, entityTypeIcons],\n )\n\n // we need to get the intersection of all the statuses of the projects for the selected entities\n // this means that if we have 2 entities from 2 different projects, we need to get the intersection of the statuses of those 2 projects\n // and it prevents us from showing statuses that are not available for the selected entities\n const statusesValue = useMemo(() => entities.map((t) => t.status), [entities])\n const priorityValues = useMemo(() => entities.map((t) => t.attrib?.priority), [entities])\n const tagsValues: string[][] = useMemo(() => entities.map((t) => t.tags), [entities])\n const tagsOptionsObject = useMemo(\n () =>\n tagsOptions.reduce((acc, tag) => {\n acc[tag.name] = tag\n return acc\n }, {}),\n [tagsOptions],\n )\n\n const isMultiple = entities.length > 1\n\n const { updateEntity } = useEntityUpdate({\n entities: entities.map((e) => ({\n id: e.id,\n projectName: e.projectName,\n users: e.task?.assignees || [],\n folderId: e.folder?.id,\n productId: e.product?.id,\n })),\n entityType,\n })\n\n const handleUpdate = (field: string, value: any) => {\n if (value === null || value === undefined) return console.error('value is null or undefined')\n return updateEntity(field, value)\n }\n\n const handleThumbnailClick = () => {\n let versionIds,\n id = firstEntity.id,\n entityTypeKey = entityType + 'Id'\n\n if (entityType === 'version' && firstEntity.product?.id) {\n versionIds = [firstEntity.id]\n id = firstEntity.product?.id\n entityTypeKey = 'productId'\n }\n\n if (id) {\n onOpenViewer({\n [entityTypeKey]: id,\n projectName,\n versionIds,\n })\n }\n }\n\n const hasUser =\n ['task', 'version', 'representation'].includes(entityType) &&\n (entityUsers.length > 0 || entityType === 'task')\n\n const usersOptions = users.map((u) => u)\n if (hasUser) {\n // check if all users are in options, otherwise add them\n const allUsers = users.map((u) => u.name)\n const usersToAdd = entityUsers.filter((u) => !allUsers.includes(u))\n if (usersToAdd.length) {\n usersOptions.push(...usersToAdd.map((u) => ({ name: u, fullName: u })))\n }\n }\n\n // Get title and subtitle from the imported function\n const { title, subTitle } = buildDetailsPanelTitles(entities, entityType)\n const status = statuses?.length!==0 && statuses?.find((status)=> status.name=== statusesValue[0])\n return (\n <Styled.HeaderContainer>\n <EntityPanelUploader\n entities={entities}\n entityType={entityType}\n projectName={projectName}\n onVersionCreated={(id) => onEntityFocus?.(id, 'version')}\n >\n <Styled.Grid className={clsx('details-panel-header', { isCompact })}>\n <Styled.Header\n className={clsx('titles', { isCompact, loading: isLoading }, 'no-shimmer')}\n >\n <div style={{ position: 'relative' }}>\n <StackedThumbnails\n isLoading={isLoading}\n shimmer={isLoading}\n thumbnails={thumbnails}\n onClick={thumbnails.length === 1 ? handleThumbnailClick : undefined}\n hoverIcon={'play_circle'}\n />\n {!isMultiple && firstEntity?.hasReviewables && <PlayableIcon />}\n </div>\n <Styled.Content className={clsx({ loading: isLoading })}>\n <Styled.Title>\n <h2>{title}</h2>\n <Styled.TagsSelect\n ref={tagsSelectRef}\n value={union(...tagsValues)}\n tags={tagsOptionsObject}\n options={[]}\n editable\n editor\n onChange={(value) => handleUpdate('tags', value)}\n align=\"right\"\n styleDropdown={{ display: isLoading ? 'none' : 'unset' }}\n className=\"tags-select\"\n itemClassName=\"details-tag\"\n />\n </Styled.Title>\n <div className=\"sub-title\">\n <span className=\"entity-type\">{upperFirst(entityType)} - </span>\n <h3>{subTitle}</h3>\n </div>\n </Styled.Content>\n </Styled.Header>\n <Styled.StatusSelect\n value={statusesValue}\n options={statuses || []}\n disabledValues={disabledStatuses}\n invert\n style={{ maxWidth: 'unset' }}\n onChange={(value) => handleUpdate('status', value)}\n className={clsx('status-select', { loading: isLoading })}\n align={isCompact ? 'right' : 'left'}\n $textColor={getTextColor(status!==undefined? (status as Status).color: \"#OOO\")}\n />\n {!isCompact &&\n (!hasUser || isLoading ? (\n <div></div>\n ) : (\n <Styled.AssigneeSelect\n value={entityUsers}\n options={usersOptions}\n disabledValues={disabledAssignees.map((u) => u.name)}\n isMultiple={isMultiple && entityUsers.length > 1 && entityType === 'task'}\n readOnly={entityType !== 'task'}\n emptyMessage={entityType === 'task' ? 'Assign user' : ''}\n align=\"right\"\n onChange={(value) => handleUpdate('assignees', value)}\n className=\"assignee-select\"\n data-tooltip={\n entityUsers.length ? (entityType === 'task' ? 'Assigned users' : 'Author') : ''\n }\n />\n ))}\n <Actions\n entities={entities}\n entityType={entityType}\n entitySubTypes={entitySubTypes}\n isLoadingEntity={!!isFetching || !!isLoading}\n searchParams={searchParams}\n isDeveloperMode={isDeveloperMode}\n onSetSearchParams={setSearchParams}\n onNavigate={navigate}\n />\n {priorities ? (\n <Styled.PriorityEnumDropdown\n options={priorities}\n placeholder=\"No priority\"\n value={priorityValues}\n onChange={(value) => handleUpdate('attrib', { priority: value[0] })}\n align=\"right\"\n />\n ) : (\n <div style={{ height: 32 }}></div>\n )}\n <FeedFilters\n isLoading={isLoading}\n entityType={entityType}\n className=\"filters\"\n overrides={{\n checklists: {\n label: checklistsLabel,\n },\n }}\n currentTab={currentTab}\n onTabChange={onTabChange}\n />\n </Styled.Grid>\n </EntityPanelUploader>\n </Styled.HeaderContainer>\n )\n}\n\nexport default DetailsPanelHeader\n"],"names":["DetailsPanelHeader","entityType","entitySubTypes","entities","disabledAssignees","users","disabledStatuses","tagsOptions","isFetching","isCompact","currentTab","onTabChange","entityTypeIcons","onOpenViewer","onEntityFocus","useSearchParams","useNavigate","isDeveloperMode","useDetailsPanelContext","navigate","searchParams","setSearchParams","tagsSelectRef","useRef","statuses","useScopedStatuses","entity","entityUsers","useMemo","union","_a","_b","firstEntity","isLoading","projectName","entityIds","e","checklistCount","useGetEntitiesChecklistsQuery","checklistsLabel","priorityAttrib","useGetAttributeConfigQuery","priorities","getPriorityOptions","thumbnails","getThumbnails","statusesValue","t","priorityValues","tagsValues","tagsOptionsObject","acc","tag","isMultiple","updateEntity","useEntityUpdate","_c","handleUpdate","field","value","handleThumbnailClick","versionIds","id","entityTypeKey","hasUser","usersOptions","u","allUsers","usersToAdd","title","subTitle","buildDetailsPanelTitles","status","jsx","Styled.HeaderContainer","EntityPanelUploader","jsxs","Styled.Grid","clsx","Styled.Header","StackedThumbnails","PlayableIcon","Styled.Content","Styled.Title","Styled.TagsSelect","upperFirst","Styled.StatusSelect","getTextColor","Styled.AssigneeSelect","Actions","Styled.PriorityEnumDropdown","FeedFilters"],"mappings":"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"}
1
+ {"version":3,"file":"DetailsPanelHeader.es.js","sources":["../../../../../../src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.tsx"],"sourcesContent":["import { useMemo, useRef } from 'react'\nimport { union, upperFirst } from 'lodash'\nimport clsx from 'clsx'\nimport { DropdownRef, getTextColor } from '@ynput/ayon-react-components'\n\nimport { EntityPanelUploader, StackedThumbnails } from '@shared/components'\nimport { Actions, DetailsPanelProps } from '@shared/containers'\n// shared\nimport { useGetEntitiesChecklistsQuery, useGetAttributeConfigQuery, Status } from '@shared/api'\nimport type { DetailsPanelEntityData } from '@shared/api'\nimport { getPriorityOptions } from '@shared/util'\nimport { useScopedStatuses, useEntityUpdate } from '@shared/hooks'\nimport { DetailsPanelTab, useDetailsPanelContext } from '@shared/context'\n\nimport FeedFilters from '../FeedFilters/FeedFilters'\nimport * as Styled from './DetailsPanelHeader.styled'\nimport getThumbnails from '../helpers/getThumbnails'\nimport { buildDetailsPanelTitles } from '../helpers/buildDetailsPanelTitles'\nimport { PlayableIcon } from '@shared/components/PlayableIcon/PlayableIcon'\n\nexport type EntityTypeIcons = {\n folder: Record<string, string>\n task: Record<string, string>\n product: Record<string, string>\n}\n\ntype DetailsPanelHeaderProps = {\n entityType: 'folder' | 'task' | 'version' | 'representation'\n entitySubTypes: string[]\n entities: DetailsPanelEntityData[]\n disabledAssignees?: any[]\n users?: any[]\n disabledStatuses?: string[]\n tagsOptions?: any[]\n isFetching?: boolean\n isCompact?: boolean\n currentTab: DetailsPanelTab\n onTabChange: (tab: DetailsPanelTab) => void\n onOpenViewer: (args: any) => void\n onEntityFocus: DetailsPanelProps['onEntityFocus']\n entityTypeIcons: EntityTypeIcons\n}\n\nconst DetailsPanelHeader = ({\n entityType,\n entitySubTypes,\n entities = [],\n disabledAssignees = [],\n users = [],\n disabledStatuses,\n tagsOptions = [],\n isFetching,\n isCompact = false,\n currentTab,\n onTabChange,\n entityTypeIcons,\n onOpenViewer,\n onEntityFocus,\n}: DetailsPanelHeaderProps) => {\n const { useSearchParams, useNavigate, isDeveloperMode } = useDetailsPanelContext()\n const navigate = useNavigate()\n const [searchParams, setSearchParams] = useSearchParams()\n const tagsSelectRef = useRef<DropdownRef>(null)\n\n const statuses = useScopedStatuses(\n entities.map((entity) => entity.projectName),\n [entityType],\n )\n\n // for selected entities, get flat list of assignees\n const entityUsers: string[] = useMemo(\n () =>\n union(\n ...entities.flatMap((entity) => [\n entity.task?.assignees || [],\n entity.version?.author || [],\n ]),\n ),\n [entities],\n )\n\n let firstEntity = entities[0]\n // If there's no data return null\n const isLoading = entities.length === 0 || !firstEntity || isFetching\n // placeholder entity\n if (!firstEntity) {\n firstEntity = {\n id: 'placeholder',\n name: 'loading...',\n label: 'loading...',\n entityType,\n status: 'loading',\n projectName: 'loading...',\n tags: [],\n hasReviewables: false,\n attrib: {},\n createdAt: new Date().toISOString(),\n updatedAt: new Date().toISOString(),\n path: '',\n }\n }\n\n const projectName = entities.length > 1 ? undefined : firstEntity?.projectName\n\n const entityIds = entities\n .filter((e) => e.projectName === firstEntity?.projectName && e.id)\n .map((entity) => entity.id)\n\n // get checklists count\n const { data: checklistCount } = useGetEntitiesChecklistsQuery(\n {\n projectName: firstEntity?.projectName,\n entityIds,\n },\n { skip: !firstEntity?.projectName || !entityIds.length },\n )\n let checklistsLabel\n if (checklistCount?.total && checklistCount.total > 0) {\n checklistsLabel = `${checklistCount.checked}/${checklistCount.total}`\n }\n\n // get priorities\n // get priority attribute so we know the colors and icons for each priority\n const { data: priorityAttrib } = useGetAttributeConfigQuery({ attributeName: 'priority' })\n const priorities = getPriorityOptions(priorityAttrib, entityType)\n\n const thumbnails = useMemo(\n () => getThumbnails(entities, entityType, entityTypeIcons),\n [entities, entityType, entityTypeIcons],\n )\n\n // we need to get the intersection of all the statuses of the projects for the selected entities\n // this means that if we have 2 entities from 2 different projects, we need to get the intersection of the statuses of those 2 projects\n // and it prevents us from showing statuses that are not available for the selected entities\n const statusesValue = useMemo(() => entities.map((t) => t.status), [entities])\n const priorityValues = useMemo(() => entities.map((t) => t.attrib?.priority), [entities])\n const tagsValues: string[][] = useMemo(() => entities.map((t) => t.tags), [entities])\n const tagsOptionsObject = useMemo(\n () =>\n tagsOptions.reduce((acc, tag) => {\n acc[tag.name] = tag\n return acc\n }, {}),\n [tagsOptions],\n )\n\n const isMultiple = entities.length > 1\n\n const { updateEntity } = useEntityUpdate({\n entities: entities.map((e) => ({\n id: e.id,\n projectName: e.projectName,\n users: e.task?.assignees || [],\n folderId: e.folder?.id,\n productId: e.product?.id,\n })),\n entityType,\n })\n\n const handleUpdate = (field: string, value: any) => {\n if (value === null || value === undefined) return console.error('value is null or undefined')\n return updateEntity(field, value)\n }\n\n const handleThumbnailClick = () => {\n let versionIds,\n id = firstEntity.id,\n entityTypeKey = entityType + 'Id'\n\n if (entityType === 'version' && firstEntity.product?.id) {\n versionIds = [firstEntity.id]\n id = firstEntity.product?.id\n entityTypeKey = 'productId'\n }\n\n if (id) {\n onOpenViewer({\n [entityTypeKey]: id,\n projectName,\n versionIds,\n })\n }\n }\n\n const hasUser =\n ['task', 'version', 'representation'].includes(entityType) &&\n (entityUsers.length > 0 || entityType === 'task')\n\n const usersOptions = users.map((u) => u)\n if (hasUser) {\n // check if all users are in options, otherwise add them\n const allUsers = users.map((u) => u.name)\n const usersToAdd = entityUsers.filter((u) => !allUsers.includes(u))\n if (usersToAdd.length) {\n usersOptions.push(...usersToAdd.map((u) => ({ name: u, fullName: u })))\n }\n }\n\n // Get title and subtitle from the imported function\n const { title, subTitle } = buildDetailsPanelTitles(entities, entityType)\n const status = statuses?.length!==0 && statuses?.find((status)=> status.name=== statusesValue[0])\n return (\n <Styled.HeaderContainer>\n <EntityPanelUploader\n entities={entities}\n entityType={entityType}\n projectName={projectName}\n onVersionCreated={(id) => onEntityFocus?.(id, 'version')}\n >\n <Styled.Grid className={clsx('details-panel-header', { isCompact })}>\n <Styled.Header\n className={clsx('titles', { isCompact, loading: isLoading }, 'no-shimmer')}\n >\n <div style={{ position: 'relative' }}>\n <StackedThumbnails\n isLoading={isLoading}\n shimmer={isLoading}\n thumbnails={thumbnails}\n onClick={thumbnails.length === 1 ? handleThumbnailClick : undefined}\n hoverIcon={'play_circle'}\n />\n {!isMultiple && firstEntity?.hasReviewables && <PlayableIcon />}\n </div>\n <Styled.Content className={clsx({ loading: isLoading })}>\n <Styled.Title>\n <h2>{title}</h2>\n <Styled.TagsSelect\n ref={tagsSelectRef}\n value={union(...tagsValues)}\n tags={tagsOptionsObject}\n options={[]}\n editable\n editor\n onChange={(value) => handleUpdate('tags', value)}\n align=\"right\"\n styleDropdown={{ display: isLoading ? 'none' : 'unset' }}\n className=\"tags-select\"\n itemClassName=\"details-tag\"\n />\n </Styled.Title>\n <div className=\"sub-title\">\n <span className=\"entity-type\">{upperFirst(entityType)} - </span>\n <h3>{subTitle}</h3>\n </div>\n </Styled.Content>\n </Styled.Header>\n <Styled.StatusSelect\n value={statusesValue}\n options={statuses || []}\n disabledValues={disabledStatuses}\n invert\n style={{ maxWidth: 'unset' }}\n onChange={(value) => handleUpdate('status', value)}\n className={clsx('status-select', { loading: isLoading })}\n align={isCompact ? 'right' : 'left'}\n $textColor={getTextColor(status!==undefined? (status as Status).color: \"#OOO\")}\n />\n {!isCompact &&\n (!hasUser || isLoading ? (\n <div></div>\n ) : (\n <Styled.AssigneeSelect\n value={entityUsers}\n options={usersOptions}\n disabledValues={disabledAssignees.map((u) => u.name)}\n isMultiple={isMultiple && entityUsers.length > 1 && entityType === 'task'}\n readOnly={entityType !== 'task'}\n emptyMessage={entityType === 'task' ? 'Assign user' : ''}\n align=\"right\"\n onChange={(value) => handleUpdate('assignees', value)}\n className=\"assignee-select\"\n data-tooltip={\n entityUsers.length ? (entityType === 'task' ? 'Assigned users' : 'Author') : ''\n }\n />\n ))}\n <Actions\n entities={entities}\n entityType={entityType}\n entitySubTypes={entitySubTypes}\n isLoadingEntity={!!isFetching || !!isLoading}\n searchParams={searchParams}\n isDeveloperMode={isDeveloperMode}\n onSetSearchParams={setSearchParams}\n onNavigate={navigate}\n />\n {priorities ? (\n <Styled.PriorityEnumDropdown\n options={priorities}\n placeholder=\"No priority\"\n value={priorityValues}\n onChange={(value) => handleUpdate('attrib', { priority: value[0] })}\n align=\"right\"\n />\n ) : (\n <div style={{ height: 32 }}></div>\n )}\n <FeedFilters\n isLoading={isLoading}\n entityType={entityType}\n className=\"filters\"\n overrides={{\n checklists: {\n label: checklistsLabel,\n },\n }}\n currentTab={currentTab}\n onTabChange={onTabChange}\n />\n </Styled.Grid>\n </EntityPanelUploader>\n </Styled.HeaderContainer>\n )\n}\n\nexport default DetailsPanelHeader\n"],"names":["DetailsPanelHeader","entityType","entitySubTypes","entities","disabledAssignees","users","disabledStatuses","tagsOptions","isFetching","isCompact","currentTab","onTabChange","entityTypeIcons","onOpenViewer","onEntityFocus","useSearchParams","useNavigate","isDeveloperMode","useDetailsPanelContext","navigate","searchParams","setSearchParams","tagsSelectRef","useRef","statuses","useScopedStatuses","entity","entityUsers","useMemo","union","_a","_b","firstEntity","isLoading","projectName","entityIds","e","checklistCount","useGetEntitiesChecklistsQuery","checklistsLabel","priorityAttrib","useGetAttributeConfigQuery","priorities","getPriorityOptions","thumbnails","getThumbnails","statusesValue","t","priorityValues","tagsValues","tagsOptionsObject","acc","tag","isMultiple","updateEntity","useEntityUpdate","_c","handleUpdate","field","value","handleThumbnailClick","versionIds","id","entityTypeKey","hasUser","usersOptions","u","allUsers","usersToAdd","title","subTitle","buildDetailsPanelTitles","status","jsx","Styled.HeaderContainer","EntityPanelUploader","jsxs","Styled.Grid","clsx","Styled.Header","StackedThumbnails","PlayableIcon","Styled.Content","Styled.Title","Styled.TagsSelect","upperFirst","Styled.StatusSelect","getTextColor","Styled.AssigneeSelect","Actions","Styled.PriorityEnumDropdown","FeedFilters"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2CA,MAAMA,KAAqB,CAAC;AAAA,EAC1B,YAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,UAAAC,IAAW,CAAC;AAAA,EACZ,mBAAAC,IAAoB,CAAC;AAAA,EACrB,OAAAC,IAAQ,CAAC;AAAA,EACT,kBAAAC;AAAA,EACA,aAAAC,IAAc,CAAC;AAAA,EACf,YAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,YAAAC;AAAA,EACA,aAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,eAAAC;AACF,MAA+B;AAC7B,QAAM,EAAE,iBAAAC,GAAiB,aAAAC,GAAa,iBAAAC,EAAA,IAAoBC,GAAuB,GAC3EC,IAAWH,EAAY,GACvB,CAACI,GAAcC,CAAe,IAAIN,EAAgB,GAClDO,IAAgBC,GAAoB,IAAI,GAExCC,IAAWC;AAAA,IACftB,EAAS,IAAI,CAACuB,MAAWA,EAAO,WAAW;AAAA,IAC3C,CAACzB,CAAU;AAAA,EACb,GAGM0B,IAAwBC;AAAA,IAC5B,MACEC;AAAA,MACE,GAAG1B,EAAS,QAAQ,CAACuB,MAAW;;AAAA;AAAA,YAC9BI,IAAAJ,EAAO,SAAP,gBAAAI,EAAa,cAAa,CAAC;AAAA,YAC3BC,IAAAL,EAAO,YAAP,gBAAAK,EAAgB,WAAU,CAAA;AAAA,QAC3B;AAAA,OAAA;AAAA,IACH;AAAA,IACF,CAAC5B,CAAQ;AAAA,EACX;AAEI,MAAA6B,IAAc7B,EAAS,CAAC;AAE5B,QAAM8B,IAAY9B,EAAS,WAAW,KAAK,CAAC6B,KAAexB;AAE3D,EAAKwB,MACWA,IAAA;AAAA,IACZ,IAAI;AAAA,IACJ,MAAM;AAAA,IACN,OAAO;AAAA,IACP,YAAA/B;AAAA,IACA,QAAQ;AAAA,IACR,aAAa;AAAA,IACb,MAAM,CAAC;AAAA,IACP,gBAAgB;AAAA,IAChB,QAAQ,CAAC;AAAA,IACT,YAAW,oBAAI,KAAK,GAAE,YAAY;AAAA,IAClC,YAAW,oBAAI,KAAK,GAAE,YAAY;AAAA,IAClC,MAAM;AAAA,EACR;AAGF,QAAMiC,IAAc/B,EAAS,SAAS,KAAgB6B,KAAA,OAAZ,SAAYA,EAAa,aAE7DG,IAAYhC,EACf,OAAO,CAACiC,MAAMA,EAAE,iBAAgBJ,KAAA,gBAAAA,EAAa,gBAAeI,EAAE,EAAE,EAChE,IAAI,CAACV,MAAWA,EAAO,EAAE,GAGtB,EAAE,MAAMW,EAAA,IAAmBC;AAAA,IAC/B;AAAA,MACE,aAAaN,KAAA,gBAAAA,EAAa;AAAA,MAC1B,WAAAG;AAAA,IACF;AAAA,IACA,EAAE,MAAM,EAACH,KAAA,QAAAA,EAAa,gBAAe,CAACG,EAAU,OAAO;AAAA,EACzD;AACI,MAAAI;AACJ,EAAIF,KAAA,QAAAA,EAAgB,SAASA,EAAe,QAAQ,MAClDE,IAAkB,GAAGF,EAAe,OAAO,IAAIA,EAAe,KAAK;AAK/D,QAAA,EAAE,MAAMG,EAAe,IAAIC,GAA2B,EAAE,eAAe,YAAY,GACnFC,IAAaC,GAAmBH,GAAgBvC,CAAU,GAE1D2C,IAAahB;AAAA,IACjB,MAAMiB,GAAc1C,GAAUF,GAAYW,CAAe;AAAA,IACzD,CAACT,GAAUF,GAAYW,CAAe;AAAA,EACxC,GAKMkC,IAAgBlB,EAAQ,MAAMzB,EAAS,IAAI,CAAC4C,MAAMA,EAAE,MAAM,GAAG,CAAC5C,CAAQ,CAAC,GACvE6C,IAAiBpB,EAAQ,MAAMzB,EAAS,IAAI,CAAC4C,MAAM;;AAAA,YAAAjB,IAAAiB,EAAE,WAAF,gBAAAjB,EAAU;AAAA,GAAQ,GAAG,CAAC3B,CAAQ,CAAC,GAClF8C,IAAyBrB,EAAQ,MAAMzB,EAAS,IAAI,CAAC4C,MAAMA,EAAE,IAAI,GAAG,CAAC5C,CAAQ,CAAC,GAC9E+C,IAAoBtB;AAAA,IACxB,MACErB,EAAY,OAAO,CAAC4C,GAAKC,OACnBD,EAAAC,EAAI,IAAI,IAAIA,GACTD,IACN,EAAE;AAAA,IACP,CAAC5C,CAAW;AAAA,EACd,GAEM8C,IAAalD,EAAS,SAAS,GAE/B,EAAE,cAAAmD,EAAa,IAAIC,GAAgB;AAAA,IACvC,UAAUpD,EAAS,IAAI,CAACiC,MAAO;;AAAA;AAAA,QAC7B,IAAIA,EAAE;AAAA,QACN,aAAaA,EAAE;AAAA,QACf,SAAON,IAAAM,EAAE,SAAF,gBAAAN,EAAQ,cAAa,CAAC;AAAA,QAC7B,WAAUC,IAAAK,EAAE,WAAF,gBAAAL,EAAU;AAAA,QACpB,YAAWyB,IAAApB,EAAE,YAAF,gBAAAoB,EAAW;AAAA,MAAA;AAAA,KACtB;AAAA,IACF,YAAAvD;AAAA,EAAA,CACD,GAEKwD,IAAe,CAACC,GAAeC,MAC/BA,KAAU,OAAoC,QAAQ,MAAM,4BAA4B,IACrFL,EAAaI,GAAOC,CAAK,GAG5BC,IAAuB,MAAM;;AACjC,QAAIC,GACFC,IAAK9B,EAAY,IACjB+B,IAAgB9D,IAAa;AAE/B,IAAIA,MAAe,eAAa6B,IAAAE,EAAY,YAAZ,QAAAF,EAAqB,QACtC+B,IAAA,CAAC7B,EAAY,EAAE,GAC5B8B,KAAK/B,IAAAC,EAAY,YAAZ,gBAAAD,EAAqB,IACVgC,IAAA,cAGdD,KACWjD,EAAA;AAAA,MACX,CAACkD,CAAa,GAAGD;AAAA,MACjB,aAAA5B;AAAA,MACA,YAAA2B;AAAA,IAAA,CACD;AAAA,EAEL,GAEMG,IACJ,CAAC,QAAQ,WAAW,gBAAgB,EAAE,SAAS/D,CAAU,MACxD0B,EAAY,SAAS,KAAK1B,MAAe,SAEtCgE,IAAe5D,EAAM,IAAI,CAAC6D,MAAMA,CAAC;AACvC,MAAIF,GAAS;AAEX,UAAMG,IAAW9D,EAAM,IAAI,CAAC6D,MAAMA,EAAE,IAAI,GAClCE,IAAazC,EAAY,OAAO,CAACuC,MAAM,CAACC,EAAS,SAASD,CAAC,CAAC;AAClE,IAAIE,EAAW,UACbH,EAAa,KAAK,GAAGG,EAAW,IAAI,CAACF,OAAO,EAAE,MAAMA,GAAG,UAAUA,EAAE,EAAE,CAAC;AAAA,EACxE;AAIF,QAAM,EAAE,OAAAG,GAAO,UAAAC,EAAA,IAAaC,GAAwBpE,GAAUF,CAAU,GAClEuE,KAAShD,KAAA,gBAAAA,EAAU,YAAS,MAAKA,KAAA,gBAAAA,EAAU,KAAK,CAACgD,MAAWA,EAAO,SAAQ1B,EAAc,CAAC;AAE9F,SAAA2B,gBAAAA,MAACC,IAAA,EACC,UAAAD,gBAAAA,EAAA;AAAA,IAACE;AAAA,IAAA;AAAA,MACC,UAAAxE;AAAA,MACA,YAAAF;AAAA,MACA,aAAAiC;AAAA,MACA,kBAAkB,CAAC4B,MAAOhD,KAAA,gBAAAA,EAAgBgD,GAAI;AAAA,MAE9C,UAAAc,gBAAAA,EAAAA,KAACC,IAAA,EAAY,WAAWC,EAAK,wBAAwB,EAAE,WAAArE,GAAW,GAChE,UAAA;AAAA,QAAAmE,gBAAAA,EAAA;AAAA,UAACG;AAAAA,UAAA;AAAA,YACC,WAAWD,EAAK,UAAU,EAAE,WAAArE,GAAW,SAASwB,KAAa,YAAY;AAAA,YAEzE,UAAA;AAAA,cAAA2C,gBAAAA,EAAA,KAAC,OAAI,EAAA,OAAO,EAAE,UAAU,WACtB,GAAA,UAAA;AAAA,gBAAAH,gBAAAA,EAAA;AAAA,kBAACO;AAAA,kBAAA;AAAA,oBACC,WAAA/C;AAAA,oBACA,SAASA;AAAA,oBACT,YAAAW;AAAA,oBACA,SAASA,EAAW,WAAW,IAAIgB,IAAuB;AAAA,oBAC1D,WAAW;AAAA,kBAAA;AAAA,gBACb;AAAA,gBACC,CAACP,MAAcrB,KAAA,gBAAAA,EAAa,yCAAmBiD,IAAa,CAAA,CAAA;AAAA,cAAA,GAC/D;AAAA,cACAL,gBAAAA,OAACM,IAAA,EAAe,WAAWJ,EAAK,EAAE,SAAS7C,GAAW,GACpD,UAAA;AAAA,gBAAC2C,gBAAAA,OAAAO,IAAA,EACC,UAAA;AAAA,kBAAAV,gBAAAA,EAAAA,IAAC,QAAI,UAAMJ,EAAA,CAAA;AAAA,kBACXI,gBAAAA,EAAA;AAAA,oBAACW;AAAAA,oBAAA;AAAA,sBACC,KAAK9D;AAAA,sBACL,OAAOO,EAAM,GAAGoB,CAAU;AAAA,sBAC1B,MAAMC;AAAA,sBACN,SAAS,CAAC;AAAA,sBACV,UAAQ;AAAA,sBACR,QAAM;AAAA,sBACN,UAAU,CAACS,MAAUF,EAAa,QAAQE,CAAK;AAAA,sBAC/C,OAAM;AAAA,sBACN,eAAe,EAAE,SAAS1B,IAAY,SAAS,QAAQ;AAAA,sBACvD,WAAU;AAAA,sBACV,eAAc;AAAA,oBAAA;AAAA,kBAAA;AAAA,gBAChB,GACF;AAAA,gBACA2C,gBAAAA,EAAAA,KAAC,OAAI,EAAA,WAAU,aACb,UAAA;AAAA,kBAACA,gBAAAA,EAAAA,KAAA,QAAA,EAAK,WAAU,eAAe,UAAA;AAAA,oBAAAS,GAAWpF,CAAU;AAAA,oBAAE;AAAA,kBAAA,GAAG;AAAA,kBACzDwE,gBAAAA,EAAAA,IAAC,QAAI,UAASH,EAAA,CAAA;AAAA,gBAAA,EAChB,CAAA;AAAA,cAAA,EACF,CAAA;AAAA,YAAA;AAAA,UAAA;AAAA,QACF;AAAA,QACAG,gBAAAA,EAAA;AAAA,UAACa;AAAAA,UAAA;AAAA,YACC,OAAOxC;AAAA,YACP,SAAStB,KAAY,CAAC;AAAA,YACtB,gBAAgBlB;AAAA,YAChB,QAAM;AAAA,YACN,OAAO,EAAE,UAAU,QAAQ;AAAA,YAC3B,UAAU,CAACqD,MAAUF,EAAa,UAAUE,CAAK;AAAA,YACjD,WAAWmB,EAAK,iBAAiB,EAAE,SAAS7C,GAAW;AAAA,YACvD,OAAOxB,IAAY,UAAU;AAAA,YAC7B,YAAY8E,GAAaf,MAAS,SAAYA,EAAkB,QAAO,MAAM;AAAA,UAAA;AAAA,QAC/E;AAAA,QACC,CAAC/D,MACC,CAACuD,KAAW/B,IACXwC,gBAAAA,EAAAA,IAAC,QAAI,CAAA,IAELA,gBAAAA,EAAA;AAAA,UAACe;AAAAA,UAAA;AAAA,YACC,OAAO7D;AAAA,YACP,SAASsC;AAAA,YACT,gBAAgB7D,EAAkB,IAAI,CAAC8D,MAAMA,EAAE,IAAI;AAAA,YACnD,YAAYb,KAAc1B,EAAY,SAAS,KAAK1B,MAAe;AAAA,YACnE,UAAUA,MAAe;AAAA,YACzB,cAAcA,MAAe,SAAS,gBAAgB;AAAA,YACtD,OAAM;AAAA,YACN,UAAU,CAAC0D,MAAUF,EAAa,aAAaE,CAAK;AAAA,YACpD,WAAU;AAAA,YACV,gBACEhC,EAAY,SAAU1B,MAAe,SAAS,mBAAmB,WAAY;AAAA,UAAA;AAAA,QAAA;AAAA,QAIrFwE,gBAAAA,EAAA;AAAA,UAACgB;AAAA,UAAA;AAAA,YACC,UAAAtF;AAAA,YACA,YAAAF;AAAA,YACA,gBAAAC;AAAA,YACA,iBAAiB,CAAC,CAACM,KAAc,CAAC,CAACyB;AAAA,YACnC,cAAAb;AAAA,YACA,iBAAAH;AAAA,YACA,mBAAmBI;AAAA,YACnB,YAAYF;AAAA,UAAA;AAAA,QACd;AAAA,QACCuB,IACC+B,gBAAAA,EAAA;AAAA,UAACiB;AAAAA,UAAA;AAAA,YACC,SAAShD;AAAA,YACT,aAAY;AAAA,YACZ,OAAOM;AAAA,YACP,UAAU,CAACW,MAAUF,EAAa,UAAU,EAAE,UAAUE,EAAM,CAAC,GAAG;AAAA,YAClE,OAAM;AAAA,UAAA;AAAA,QAAA,IAGPc,gBAAAA,EAAAA,IAAA,OAAA,EAAI,OAAO,EAAE,QAAQ,MAAM;AAAA,QAE9BA,gBAAAA,EAAA;AAAA,UAACkB;AAAA,UAAA;AAAA,YACC,WAAA1D;AAAA,YACA,YAAAhC;AAAA,YACA,WAAU;AAAA,YACV,WAAW;AAAA,cACT,YAAY;AAAA,gBACV,OAAOsC;AAAA,cAAA;AAAA,YAEX;AAAA,YACA,YAAA7B;AAAA,YACA,aAAAC;AAAA,UAAA;AAAA,QAAA;AAAA,MACF,EACF,CAAA;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../../../../../_virtual/jsx-runtime.cjs.js"),P=require("./DetailsPanelSlideOut.styled.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");const S=require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");const y=require("../DetailsPanel.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");const n=require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");const D=({projectsInfo:o,scope:l})=>{const{slideOut:a,onOpenViewer:r}=n.useDetailsPanelContext(),{entityType:i,entityId:u,projectName:e}=a||{},c=!!i&&!!u&&!!e,{data:q}=S.useGetUsersAssigneeQuery({projectName:e},{skip:!e}),t=o[e||""]||{},{tags:d=[]}=t,{closeSlideOut:p}=n.useDetailsPanelContext(),O=()=>p(),j=x=>r==null?void 0:r(x);return c?s.jsxRuntimeExports.jsx(P.SlideOut,{children:s.jsxRuntimeExports.jsx(y.DetailsPanel,{isOpen:!0,entityType:i,entitySubTypes:[],entities:[{id:u,projectName:e}],projectsInfo:{[e]:t},projectNames:[e],tagsOptions:d,projectUsers:q,activeProjectUsers:q,isSlideOut:!0,scope:l,onClose:O,onOpenViewer:j})}):null};exports.DetailsPanelSlideOut=D;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../../../../../_virtual/jsx-runtime.cjs.js"),P=require("./DetailsPanelSlideOut.styled.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");const S=require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");const y=require("../DetailsPanel.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");const n=require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");const D=({projectsInfo:o,scope:l})=>{const{slideOut:a,onOpenViewer:r}=n.useDetailsPanelContext(),{entityType:i,entityId:u,projectName:e}=a||{},c=!!i&&!!u&&!!e,{data:q}=S.useGetUsersAssigneeQuery({projectName:e},{skip:!e}),t=o[e||""]||{},{tags:d=[]}=t,{closeSlideOut:p}=n.useDetailsPanelContext(),O=()=>p(),j=x=>r==null?void 0:r(x);return c?s.jsxRuntimeExports.jsx(P.SlideOut,{children:s.jsxRuntimeExports.jsx(y.DetailsPanel,{isOpen:!0,entityType:i,entitySubTypes:[],entities:[{id:u,projectName:e}],projectsInfo:{[e]:t},projectNames:[e],tagsOptions:d,projectUsers:q,activeProjectUsers:q,isSlideOut:!0,scope:l,onClose:O,onOpenViewer:j})}):null};exports.DetailsPanelSlideOut=D;
2
2
  //# sourceMappingURL=DetailsPanelSlideOut.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DetailsPanelSlideOut.cjs.js","sources":["../../../../../../src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.tsx"],"sourcesContent":["import * as Styled from './DetailsPanelSlideOut.styled'\nimport { useGetUsersAssigneeQuery } from '@shared/api'\nimport { DetailsPanel } from '../DetailsPanel'\nimport { useDetailsPanelContext } from '@shared/context'\nimport type { ProjectModel } from '@shared/api'\n\nexport type DetailsPanelSlideOutProps = {\n projectsInfo: Record<string, ProjectModel>\n scope: string\n}\n\nexport const DetailsPanelSlideOut = ({ projectsInfo, scope }: DetailsPanelSlideOutProps) => {\n const { slideOut, onOpenViewer } = useDetailsPanelContext()\n const { entityType, entityId, projectName } = slideOut || {}\n const isSlideOutOpen = !!entityType && !!entityId && !!projectName\n\n const { data: users } = useGetUsersAssigneeQuery({ projectName }, { skip: !projectName })\n\n const projectInfo = projectsInfo[projectName || ''] || {}\n const { tags = [] } = projectInfo\n\n const { closeSlideOut } = useDetailsPanelContext()\n const handleClose = () => closeSlideOut()\n const handleOpenViewer = (args: any) => onOpenViewer?.(args)\n\n if (!isSlideOutOpen) return null\n return (\n <Styled.SlideOut>\n <DetailsPanel\n isOpen\n entityType={entityType}\n entitySubTypes={[]}\n entities={[{ id: entityId, projectName }]}\n projectsInfo={{ [projectName]: projectInfo }}\n projectNames={[projectName]}\n tagsOptions={tags}\n projectUsers={users}\n activeProjectUsers={users}\n isSlideOut\n scope={scope}\n onClose={handleClose}\n onOpenViewer={handleOpenViewer}\n />\n </Styled.SlideOut>\n )\n}\n"],"names":["DetailsPanelSlideOut","projectsInfo","scope","slideOut","onOpenViewer","useDetailsPanelContext","entityType","entityId","projectName","isSlideOutOpen","users","useGetUsersAssigneeQuery","projectInfo","tags","closeSlideOut","handleClose","handleOpenViewer","args","jsx","Styled.SlideOut","DetailsPanel"],"mappings":"omLAWO,MAAMA,EAAuB,CAAC,CAAE,aAAAC,EAAc,MAAAC,KAAuC,CAC1F,KAAM,CAAE,SAAAC,EAAU,aAAAC,CAAa,EAAIC,yBAAuB,EACpD,CAAE,WAAAC,EAAY,SAAAC,EAAU,YAAAC,CAAY,EAAIL,GAAY,CAAC,EACrDM,EAAiB,CAAC,CAACH,GAAc,CAAC,CAACC,GAAY,CAAC,CAACC,EAEjD,CAAE,KAAME,CAAM,EAAIC,EAAyB,yBAAA,CAAE,YAAAH,CAAY,EAAG,CAAE,KAAM,CAACA,EAAa,EAElFI,EAAcX,EAAaO,GAAe,EAAE,GAAK,CAAC,EAClD,CAAE,KAAAK,EAAO,CAAC,CAAA,EAAMD,EAEhB,CAAE,cAAAE,CAAc,EAAIT,yBAAuB,EAC3CU,EAAc,IAAMD,EAAc,EAClCE,EAAoBC,GAAcb,GAAA,YAAAA,EAAea,GAEnD,OAACR,EAEHS,wBAACC,EAAAA,SAAA,CACC,SAAAD,EAAA,kBAAA,IAACE,EAAA,aAAA,CACC,OAAM,GACN,WAAAd,EACA,eAAgB,CAAC,EACjB,SAAU,CAAC,CAAE,GAAIC,EAAU,YAAAC,EAAa,EACxC,aAAc,CAAE,CAACA,CAAW,EAAGI,CAAY,EAC3C,aAAc,CAACJ,CAAW,EAC1B,YAAaK,EACb,aAAcH,EACd,mBAAoBA,EACpB,WAAU,GACV,MAAAR,EACA,QAASa,EACT,aAAcC,CAAA,CAAA,EAElB,EAlB0B,IAoB9B"}
1
+ {"version":3,"file":"DetailsPanelSlideOut.cjs.js","sources":["../../../../../../src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.tsx"],"sourcesContent":["import * as Styled from './DetailsPanelSlideOut.styled'\nimport { useGetUsersAssigneeQuery } from '@shared/api'\nimport { DetailsPanel } from '../DetailsPanel'\nimport { useDetailsPanelContext } from '@shared/context'\nimport type { ProjectModel } from '@shared/api'\n\nexport type DetailsPanelSlideOutProps = {\n projectsInfo: Record<string, ProjectModel>\n scope: string\n}\n\nexport const DetailsPanelSlideOut = ({ projectsInfo, scope }: DetailsPanelSlideOutProps) => {\n const { slideOut, onOpenViewer } = useDetailsPanelContext()\n const { entityType, entityId, projectName } = slideOut || {}\n const isSlideOutOpen = !!entityType && !!entityId && !!projectName\n\n const { data: users } = useGetUsersAssigneeQuery({ projectName }, { skip: !projectName })\n\n const projectInfo = projectsInfo[projectName || ''] || {}\n const { tags = [] } = projectInfo\n\n const { closeSlideOut } = useDetailsPanelContext()\n const handleClose = () => closeSlideOut()\n const handleOpenViewer = (args: any) => onOpenViewer?.(args)\n\n if (!isSlideOutOpen) return null\n return (\n <Styled.SlideOut>\n <DetailsPanel\n isOpen\n entityType={entityType}\n entitySubTypes={[]}\n entities={[{ id: entityId, projectName }]}\n projectsInfo={{ [projectName]: projectInfo }}\n projectNames={[projectName]}\n tagsOptions={tags}\n projectUsers={users}\n activeProjectUsers={users}\n isSlideOut\n scope={scope}\n onClose={handleClose}\n onOpenViewer={handleOpenViewer}\n />\n </Styled.SlideOut>\n )\n}\n"],"names":["DetailsPanelSlideOut","projectsInfo","scope","slideOut","onOpenViewer","useDetailsPanelContext","entityType","entityId","projectName","isSlideOutOpen","users","useGetUsersAssigneeQuery","projectInfo","tags","closeSlideOut","handleClose","handleOpenViewer","args","jsx","Styled.SlideOut","DetailsPanel"],"mappings":"utLAWO,MAAMA,EAAuB,CAAC,CAAE,aAAAC,EAAc,MAAAC,KAAuC,CAC1F,KAAM,CAAE,SAAAC,EAAU,aAAAC,CAAa,EAAIC,yBAAuB,EACpD,CAAE,WAAAC,EAAY,SAAAC,EAAU,YAAAC,CAAY,EAAIL,GAAY,CAAC,EACrDM,EAAiB,CAAC,CAACH,GAAc,CAAC,CAACC,GAAY,CAAC,CAACC,EAEjD,CAAE,KAAME,CAAM,EAAIC,EAAyB,yBAAA,CAAE,YAAAH,CAAY,EAAG,CAAE,KAAM,CAACA,EAAa,EAElFI,EAAcX,EAAaO,GAAe,EAAE,GAAK,CAAC,EAClD,CAAE,KAAAK,EAAO,CAAC,CAAA,EAAMD,EAEhB,CAAE,cAAAE,CAAc,EAAIT,yBAAuB,EAC3CU,EAAc,IAAMD,EAAc,EAClCE,EAAoBC,GAAcb,GAAA,YAAAA,EAAea,GAEnD,OAACR,EAEHS,wBAACC,EAAAA,SAAA,CACC,SAAAD,EAAA,kBAAA,IAACE,EAAA,aAAA,CACC,OAAM,GACN,WAAAd,EACA,eAAgB,CAAC,EACjB,SAAU,CAAC,CAAE,GAAIC,EAAU,YAAAC,EAAa,EACxC,aAAc,CAAE,CAACA,CAAW,EAAGI,CAAY,EAC3C,aAAc,CAACJ,CAAW,EAC1B,YAAaK,EACb,aAAcH,EACd,mBAAoBA,EACpB,WAAU,GACV,MAAAR,EACA,QAASa,EACT,aAAcC,CAAA,CAAA,EAElB,EAlB0B,IAoB9B"}