@ynput/ayon-frontend-shared 0.2.36 → 0.2.37

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 (486) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +23 -22
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/Views.cjs.js +1 -1
  5. package/dist/Views.cjs.js.map +1 -1
  6. package/dist/Views.es.js +25 -24
  7. package/dist/Views.es.js.map +1 -1
  8. package/dist/_virtual/index.cjs2.js +1 -1
  9. package/dist/_virtual/index.cjs3.js +1 -1
  10. package/dist/_virtual/index.cjs5.js +1 -1
  11. package/dist/_virtual/index.es2.js +2 -5
  12. package/dist/_virtual/index.es2.js.map +1 -1
  13. package/dist/_virtual/index.es3.js +5 -2
  14. package/dist/_virtual/index.es3.js.map +1 -1
  15. package/dist/_virtual/index.es4.js +2 -2
  16. package/dist/_virtual/index.es5.js +2 -2
  17. package/dist/context.cjs.js +1 -1
  18. package/dist/context.es.js +19 -16
  19. package/dist/context.es.js.map +1 -1
  20. package/dist/index.cjs.js +1 -1
  21. package/dist/index.es.js +10 -9
  22. package/dist/index.es.js.map +1 -1
  23. package/dist/node_modules/react-use-websocket/dist/index.cjs.js +1 -1
  24. package/dist/node_modules/react-use-websocket/dist/index.es.js +1 -1
  25. package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
  26. package/dist/shared/node_modules/prop-types/index.es.js +1 -1
  27. package/dist/shared/node_modules/react-is/index.cjs.js +1 -1
  28. package/dist/shared/node_modules/react-is/index.es.js +1 -1
  29. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
  30. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
  31. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
  32. package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
  33. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
  34. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
  35. package/dist/shared/src/api/generated/actions.cjs.js.map +1 -1
  36. package/dist/shared/src/api/generated/actions.es.js.map +1 -1
  37. package/dist/shared/src/api/generated/attributes.cjs.js.map +1 -1
  38. package/dist/shared/src/api/generated/attributes.es.js.map +1 -1
  39. package/dist/shared/src/api/generated/authentication.cjs.js.map +1 -1
  40. package/dist/shared/src/api/generated/authentication.es.js.map +1 -1
  41. package/dist/shared/src/api/generated/configuration.cjs.js.map +1 -1
  42. package/dist/shared/src/api/generated/configuration.es.js.map +1 -1
  43. package/dist/shared/src/api/generated/entityLists.cjs.js +1 -1
  44. package/dist/shared/src/api/generated/entityLists.cjs.js.map +1 -1
  45. package/dist/shared/src/api/generated/entityLists.es.js +88 -84
  46. package/dist/shared/src/api/generated/entityLists.es.js.map +1 -1
  47. package/dist/shared/src/api/generated/graphql.cjs.js +22 -20
  48. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  49. package/dist/shared/src/api/generated/graphql.es.js +34 -32
  50. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  51. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  52. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  53. package/dist/shared/src/api/generated/onboarding.cjs.js.map +1 -1
  54. package/dist/shared/src/api/generated/onboarding.es.js.map +1 -1
  55. package/dist/shared/src/api/generated/products.cjs.js.map +1 -1
  56. package/dist/shared/src/api/generated/products.es.js.map +1 -1
  57. package/dist/shared/src/api/generated/projects.cjs.js.map +1 -1
  58. package/dist/shared/src/api/generated/projects.es.js.map +1 -1
  59. package/dist/shared/src/api/generated/system.cjs.js +1 -1
  60. package/dist/shared/src/api/generated/system.cjs.js.map +1 -1
  61. package/dist/shared/src/api/generated/system.es.js +3 -0
  62. package/dist/shared/src/api/generated/system.es.js.map +1 -1
  63. package/dist/shared/src/api/generated/users.cjs.js.map +1 -1
  64. package/dist/shared/src/api/generated/users.es.js.map +1 -1
  65. package/dist/shared/src/api/generated/views.cjs.js.map +1 -1
  66. package/dist/shared/src/api/generated/views.es.js.map +1 -1
  67. package/dist/shared/src/api/generated/ynputCloud.cjs.js +1 -1
  68. package/dist/shared/src/api/generated/ynputCloud.cjs.js.map +1 -1
  69. package/dist/shared/src/api/generated/ynputCloud.es.js +6 -1
  70. package/dist/shared/src/api/generated/ynputCloud.es.js.map +1 -1
  71. package/dist/shared/src/api/queries/system/getSystem.cjs.js.map +1 -1
  72. package/dist/shared/src/api/queries/system/getSystem.es.js.map +1 -1
  73. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  74. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  75. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js +1 -1
  76. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js.map +1 -1
  77. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js +129 -122
  78. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js.map +1 -1
  79. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  80. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  81. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +3 -2
  82. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  83. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  84. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  85. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +3 -2
  86. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  87. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.cjs.js +1 -1
  88. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.cjs.js.map +1 -1
  89. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.es.js +23 -9
  90. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.es.js.map +1 -1
  91. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  92. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
  93. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +5 -4
  94. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  95. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  96. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  97. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +3 -2
  98. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  99. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
  100. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
  101. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +6 -5
  102. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
  103. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  104. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  105. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +118 -112
  106. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  107. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  108. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  109. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +3 -2
  110. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  111. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  112. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  113. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +3 -2
  114. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  115. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +1 -1
  116. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
  117. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +8 -7
  118. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
  119. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  120. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  121. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +3 -2
  122. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  123. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +2 -2
  124. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  125. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +18 -17
  126. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  127. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  128. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  129. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +3 -2
  130. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  131. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  132. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  133. package/dist/shared/src/components/RenameForm/RenameForm.es.js +3 -2
  134. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  135. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  136. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  137. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +3 -2
  138. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  139. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  140. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  141. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +4 -3
  142. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  143. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  144. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  145. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +3 -2
  146. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  147. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  148. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  149. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +263 -210
  150. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  151. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +1 -1
  152. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
  153. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +24 -23
  154. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
  155. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  156. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  157. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +3 -2
  158. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  159. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +1 -1
  160. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
  161. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +3 -2
  162. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
  163. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  164. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  165. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +3 -2
  166. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  167. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  168. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  169. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +3 -2
  170. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  171. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  172. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  173. package/dist/shared/src/containers/Actions/Actions.es.js +3 -2
  174. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  175. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  176. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  177. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +3 -2
  178. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  179. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  180. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  181. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +61 -57
  182. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  183. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  184. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  185. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +3 -2
  186. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  187. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  188. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  189. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +58 -55
  190. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  191. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  192. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  193. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +3 -2
  194. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  195. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  196. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  197. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +3 -2
  198. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  199. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js +1 -1
  200. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js.map +1 -1
  201. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js +3 -2
  202. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js.map +1 -1
  203. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js +1 -1
  204. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js.map +1 -1
  205. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js +33 -30
  206. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js.map +1 -1
  207. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  208. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  209. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +16 -15
  210. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  211. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  212. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  213. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +3 -2
  214. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  215. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  216. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  217. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +3 -2
  218. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  219. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  220. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  221. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +3 -2
  222. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  223. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  224. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  225. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +3 -2
  226. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  227. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  228. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  229. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +3 -2
  230. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  231. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  232. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  233. package/dist/shared/src/containers/Feed/Feed.es.js +4 -3
  234. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  235. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  236. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  237. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +3 -2
  238. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  239. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
  240. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
  241. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +8 -7
  242. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
  243. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
  244. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  245. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +3 -2
  246. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  247. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -1
  248. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
  249. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +3 -2
  250. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
  251. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
  252. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
  253. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +9 -8
  254. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
  255. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
  256. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
  257. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +3 -2
  258. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
  259. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  260. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  261. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +3 -2
  262. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  263. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  264. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  265. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +45 -42
  266. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  267. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  268. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  269. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +289 -283
  270. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  271. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  272. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  273. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +4 -3
  274. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  275. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  276. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  277. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +3 -2
  278. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  279. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  280. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  281. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +3 -2
  282. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  283. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  284. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  285. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +3 -2
  286. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  287. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  288. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  289. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +3 -2
  290. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  291. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
  292. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  293. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +25 -90
  294. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  295. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  296. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  297. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +6 -5
  298. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  299. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  300. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  301. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +3 -2
  302. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  303. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  304. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  305. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +3 -2
  306. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  307. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  308. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  309. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +3 -2
  310. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  311. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  312. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  313. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +3 -2
  314. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  315. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  316. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  317. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +3 -2
  318. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  319. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  320. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  321. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +22 -21
  322. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  323. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  324. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  325. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +19 -16
  326. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  327. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  328. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  329. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +3 -2
  330. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  331. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  332. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  333. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +3 -2
  334. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  335. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  336. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  337. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +3 -2
  338. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  339. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  340. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  341. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +3 -2
  342. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  343. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  344. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  345. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +14 -13
  346. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  347. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +2 -2
  348. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  349. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +38 -37
  350. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  351. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  352. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  353. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +5 -4
  354. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  355. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  356. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  357. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +3 -2
  358. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  359. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  360. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  361. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +3 -2
  362. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  363. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  364. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  365. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +3 -2
  366. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  367. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  368. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  369. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +3 -2
  370. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  371. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +2 -2
  372. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
  373. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +7 -6
  374. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
  375. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  376. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  377. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +26 -25
  378. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  379. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  380. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  381. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +3 -2
  382. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  383. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js +1 -1
  384. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -1
  385. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js +3 -2
  386. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -1
  387. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
  388. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
  389. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +9 -9
  390. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
  391. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  392. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  393. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +40 -35
  394. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  395. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  396. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  397. package/dist/shared/src/context/AddonProjectContext.es.js +8 -7
  398. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  399. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  400. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  401. package/dist/shared/src/context/DetailsPanelContext.es.js +77 -78
  402. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  403. package/dist/shared/src/context/GlobalContext.cjs.js +2 -0
  404. package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -0
  405. package/dist/shared/src/context/GlobalContext.es.js +123 -0
  406. package/dist/shared/src/context/GlobalContext.es.js.map +1 -0
  407. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  408. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  409. package/dist/shared/src/context/PowerpackContext.es.js +7 -6
  410. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  411. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  412. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  413. package/dist/shared/src/context/RemoteModulesContext.es.js +35 -34
  414. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  415. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  416. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  417. package/dist/shared/src/context/WebsocketContext.es.js +5 -4
  418. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  419. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  420. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  421. package/dist/shared/src/hooks/useEntityUpdate.es.js +3 -2
  422. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  423. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
  424. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
  425. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +3 -2
  426. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
  427. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  428. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  429. package/dist/shared/src/hooks/useUserProjectConfig.es.js +26 -12
  430. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  431. package/dist/src/components/Menu/MenuComponents/Menu.cjs.js +1 -1
  432. package/dist/src/components/Menu/MenuComponents/Menu.cjs.js.map +1 -1
  433. package/dist/src/components/Menu/MenuComponents/Menu.es.js +3 -2
  434. package/dist/src/components/Menu/MenuComponents/Menu.es.js.map +1 -1
  435. package/dist/src/components/Menu/MenuComponents/MenuItem.cjs.js +1 -1
  436. package/dist/src/components/Menu/MenuComponents/MenuItem.cjs.js.map +1 -1
  437. package/dist/src/components/Menu/MenuComponents/MenuItem.es.js +1 -0
  438. package/dist/src/components/Menu/MenuComponents/MenuItem.es.js.map +1 -1
  439. package/dist/src/components/Menu/MenuComponents/MenuList.cjs.js +1 -1
  440. package/dist/src/components/Menu/MenuComponents/MenuList.cjs.js.map +1 -1
  441. package/dist/src/components/Menu/MenuComponents/MenuList.es.js +17 -16
  442. package/dist/src/components/Menu/MenuComponents/MenuList.es.js.map +1 -1
  443. package/dist/types/api/generated/actions.d.ts +2 -0
  444. package/dist/types/api/generated/attributes.d.ts +20 -5
  445. package/dist/types/api/generated/authentication.d.ts +2 -0
  446. package/dist/types/api/generated/configuration.d.ts +3 -1
  447. package/dist/types/api/generated/entityLists.d.ts +22 -5
  448. package/dist/types/api/generated/enums.d.ts +36 -0
  449. package/dist/types/api/generated/graphql.d.ts +9 -2
  450. package/dist/types/api/generated/graphqlLinks.d.ts +3 -0
  451. package/dist/types/api/generated/onboarding.d.ts +1 -0
  452. package/dist/types/api/generated/products.d.ts +9 -3
  453. package/dist/types/api/generated/projects.d.ts +4 -4
  454. package/dist/types/api/generated/system.d.ts +27 -5
  455. package/dist/types/api/generated/users.d.ts +2 -0
  456. package/dist/types/api/generated/views.d.ts +48 -5
  457. package/dist/types/api/generated/ynputCloud.d.ts +7 -20
  458. package/dist/types/api/queries/activities/getActivities.d.ts +2 -0
  459. package/dist/types/api/queries/activities/updateActivities.d.ts +4 -0
  460. package/dist/types/api/queries/cloud/cloud.d.ts +17 -17
  461. package/dist/types/api/queries/entities/getEntity.d.ts +2 -0
  462. package/dist/types/api/queries/entities/getEntityPanel.d.ts +2 -0
  463. package/dist/types/api/queries/entities/updateEntity.d.ts +2 -0
  464. package/dist/types/api/queries/entityLists/getLists.d.ts +2 -0
  465. package/dist/types/api/queries/overview/getOverview.d.ts +2 -0
  466. package/dist/types/api/queries/system/getSystem.d.ts +85 -75
  467. package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +2 -0
  468. package/dist/types/api/queries/users/getUsers.d.ts +43 -37
  469. package/dist/types/api/queries/versions/getVersionsProducts.d.ts +20 -0
  470. package/dist/types/components/DetailsPanelDetails/hooks/useEntityData.d.ts +1 -1
  471. package/dist/types/components/SearchFilter/useBuildFilterOptions.d.ts +1 -1
  472. package/dist/types/containers/DetailsPanel/FeedWrapper.d.ts +3 -0
  473. package/dist/types/containers/Feed/context/FeedContext.d.ts +4 -3
  474. package/dist/types/containers/ProjectTreeTable/hooks/useGroupBySettings.d.ts +1 -1
  475. package/dist/types/containers/ProjectTreeTable/types/table.d.ts +2 -0
  476. package/dist/types/containers/Views/index.d.ts +1 -1
  477. package/dist/types/containers/Views/utils/viewUpdateHelper.d.ts +6 -10
  478. package/dist/types/context/DetailsPanelContext.d.ts +1 -2
  479. package/dist/types/context/GlobalContext.d.ts +25 -0
  480. package/dist/types/context/index.d.ts +1 -0
  481. package/package.json +1 -1
  482. package/dist/shared/src/containers/Views/hooks/pages/useReportsViewSettings.cjs.js +0 -2
  483. package/dist/shared/src/containers/Views/hooks/pages/useReportsViewSettings.cjs.js.map +0 -1
  484. package/dist/shared/src/containers/Views/hooks/pages/useReportsViewSettings.es.js +0 -64
  485. package/dist/shared/src/containers/Views/hooks/pages/useReportsViewSettings.es.js.map +0 -1
  486. package/dist/types/containers/Views/hooks/pages/useReportsViewSettings.d.ts +0 -11
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../../../../_virtual/jsx-runtime.cjs.js"),G=require("@ynput/ayon-react-components"),q=require("react"),P=require("./DetailsPanel.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");const ne=require("../../api/queries/entities/getEntityPanel.cjs.js"),ae=require("../../api/queries/entities/transformDetailsPanelData.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("clsx");require("../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("react-toastify");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */const oe=require("../../util/productTypes.cjs.js");require("lodash");require("uuid");require("../../util/pubsub.cjs.js");require("../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("axios");require("../../context/RemoteModulesContext.cjs.js");const H=require("../../context/DetailsPanelContext.cjs.js");require("../../context/ThumbnailUploaderContext.cjs.js");require("../../context/SettingsPanelContext.cjs.js");const ce=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("../../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");require("../../components/Thumbnail/StackedThumbnails.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("../../components/LinksManager/LinksManager.styled.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");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");const le=require("./DetailsPanelHeader/DetailsPanelHeader.cjs.js"),de=require("./DetailsPanelFiles/DetailsPanelFiles.cjs.js"),pe=require("./hooks/useGetEntityPath.cjs.js"),ye=require("./helpers/getAllProjectsStatuses.cjs.js"),fe=require("./FeedWrapper.cjs.js"),me=require("./FeedContextWrapper.cjs.js"),xe=require("./helpers/mergeProjectInfo.cjs.js");require("./DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("./DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("./DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../Actions/Actions.styled.cjs.js");require("../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../Actions/ActionIcon.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("../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");const je=require("../../components/EntityPath/EntityPath.cjs.js");require("../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");const Ee=require("../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../components/DetailsPanelDetails/FieldLabel.cjs.js");const Pe=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("../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");const M=["product","representation"],ge=({entityType:g,entitySubTypes:_=[],entitiesData:B=[],entities:O=[],tagsOptions:Q=[],disabledStatuses:K,projectUsers:h,disabledProjectUsers:U,activeProjectUsers:T,projectsInfo:f={},projectNames:m=[],isSlideOut:l=!1,style:he={},scope:s,isCompact:X=!1,onClose:a,onWatchersUpdate:D,onOpenViewer:j,onEntityFocus:z,onOpen:R,annotations:b,removeAnnotation:v,exportAnnotationComposite:N,entityListId:F,guestCategories:J={}})=>{const{closeSlideOut:Y,openPip:Z,user:w,isGuest:$,entities:t}=H.useDetailsPanelContext(),{currentTab:n,setTab:x,isFeed:V}=H.useScopedDetailsPanel(s),W=q.useRef(!1),i=(t==null?void 0:t.entityType)??g,k=(t==null?void 0:t.entities)??O,ee=(t==null?void 0:t.entitySubTypes)??_;q.useEffect(()=>{R&&!W.current&&(W.current=!0,R())},[]),q.useEffect(()=>{M.includes(i)&&n!=="details"&&x("details")},[i,n,x]);const E=q.useMemo(()=>xe(f,m),[f,m]),C=q.useMemo(()=>({task:E.taskTypes.filter(e=>!!e.icon).reduce((e,u)=>({...e,[u.name]:u.icon}),{}),folder:E.folderTypes.filter(e=>!!e.icon).reduce((e,u)=>({...e,[u.name]:u.icon}),{}),product:Object.entries(oe).reduce((e,[u,y])=>({...e,[u]:y.icon}),{})}),[E]);q.useEffect(()=>{n==="files"&&i!=="version"&&x("activity")},[i,n,s]);let o=k.length?k.map(e=>({id:e.id,projectName:e.projectName})):B.map(e=>({id:e.id,projectName:e.projectName}));o=o.filter(e=>e.id);const{data:c=[],isFetching:d,isError:re,originalArgs:ie}=ne.useGetEntitiesDetailsPanelQuery({entityType:i,entities:o},{skip:!o.length||!ae.detailsPanelEntityTypes.includes(i)});q.useEffect(()=>{l||Y()},[ie,l]);const S=ye(f),p=m[0],L=f[p]||{},ue=c[0]||{},[I,te]=pe({entity:ue,entityType:i,projectName:p,isLoading:d});q.useEffect(()=>{const e=u=>{if(u.key==="Escape"&&a){const y=u.target;if(!(["INPUT","TEXTAREA","SELECT"].includes(y.tagName)||y.isContentEditable)||l===!1&&y.closest("#viewer-dialog"))return;a()}};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[a,l]);const{requestPipWindow:qe}=ce.usePiPWindow(),se=()=>{Z({entityType:i,entities:o,scope:s}),qe(500,500)},A=()=>{var e;return!(m.length>1||$&&(!F||!Object.prototype.hasOwnProperty.call(J,((e=w.attrib)==null?void 0:e.email)||"")))};return r.jsxRuntimeExports.jsx(r.jsxRuntimeExports.Fragment,{children:r.jsxRuntimeExports.jsxs(P.Panel,{className:"details-panel",children:[r.jsxRuntimeExports.jsxs(P.Toolbar,{children:[r.jsxRuntimeExports.jsx(je.EntityPath,{segments:I,versions:te,projectName:p,hideProjectName:l,isLoading:d||!I.length,entityType:i,scope:s,entityTypeIcons:C}),r.jsxRuntimeExports.jsxs(P.RightTools,{className:"right-tools",children:[r.jsxRuntimeExports.jsx(Pe.Watchers,{entities:o,entityType:g,options:h||[],onWatchersUpdate:D&&D,userName:w.name}),r.jsxRuntimeExports.jsx(G.Button,{icon:"picture_in_picture",variant:"text","data-tooltip":"Picture in Picture",onClick:se}),a&&r.jsxRuntimeExports.jsx(G.Button,{icon:"close",variant:"text",onClick:()=>a&&a(),"data-shortcut":"Escape"})]})]}),r.jsxRuntimeExports.jsx(le,{entityType:i,entitySubTypes:ee,entities:c,users:h,disabledAssignees:U,disabledStatuses:K,tagsOptions:Q,isFetching:d,isCompact:X,currentTab:n,onTabChange:x,entityTypeIcons:C,onOpenViewer:e=>j==null?void 0:j(e),onEntityFocus:z}),V&&!re&&r.jsxRuntimeExports.jsx(fe,{entityType:i,entities:c,activeUsers:T||[],projectInfo:L,projectName:p,disabled:!A(),scope:s,statuses:S,readOnly:!1,entityListId:F,annotations:b,removeAnnotation:v,exportAnnotationComposite:N}),n==="files"&&r.jsxRuntimeExports.jsx(de,{entities:c,scope:s,isLoadingVersion:d}),n==="details"&&r.jsxRuntimeExports.jsx(me,{entityType:i,entities:c,activeUsers:T||[],projectInfo:L,projectName:p,disabled:!A(),scope:s,statuses:S,readOnly:!1,annotations:b,removeAnnotation:v,exportAnnotationComposite:N,children:r.jsxRuntimeExports.jsx(Ee.DetailsPanelDetails,{entities:c,isLoading:d})})]})})};exports.DetailsPanel=ge;exports.entitiesWithoutFeed=M;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../../../../_virtual/jsx-runtime.cjs.js"),G=require("@ynput/ayon-react-components"),s=require("react"),P=require("./DetailsPanel.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");const ne=require("../../api/queries/entities/getEntityPanel.cjs.js"),ae=require("../../api/queries/entities/transformDetailsPanelData.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("clsx");require("../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("react-toastify");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */const oe=require("../../util/productTypes.cjs.js");require("lodash");require("uuid");require("../../util/pubsub.cjs.js");require("../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("axios");require("../../context/RemoteModulesContext.cjs.js");const H=require("../../context/DetailsPanelContext.cjs.js");require("../../context/ThumbnailUploaderContext.cjs.js");require("../../context/SettingsPanelContext.cjs.js");const ce=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("../../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");require("../../components/Thumbnail/StackedThumbnails.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("../../components/LinksManager/LinksManager.styled.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");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");const le=require("./DetailsPanelHeader/DetailsPanelHeader.cjs.js"),de=require("./DetailsPanelFiles/DetailsPanelFiles.cjs.js"),pe=require("./hooks/useGetEntityPath.cjs.js"),ye=require("./helpers/getAllProjectsStatuses.cjs.js"),fe=require("./FeedWrapper.cjs.js"),me=require("./FeedContextWrapper.cjs.js"),xe=require("./helpers/mergeProjectInfo.cjs.js");require("./DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("./DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("./DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../Actions/Actions.styled.cjs.js");require("../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../Actions/ActionIcon.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("../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");const je=require("../../components/EntityPath/EntityPath.cjs.js");require("../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");const Ee=require("../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../components/DetailsPanelDetails/FieldLabel.cjs.js");const Pe=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("../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");const M=["product","representation"],ge=({entityType:g,entitySubTypes:_=[],entitiesData:B=[],entities:O=[],tagsOptions:Q=[],disabledStatuses:K,projectUsers:h,disabledProjectUsers:U,activeProjectUsers:T,projectsInfo:m={},projectNames:x=[],isSlideOut:l=!1,style:he={},scope:n,isCompact:X=!1,onClose:a,onWatchersUpdate:D,onOpenViewer:j,onEntityFocus:z,onOpen:R,annotations:b,removeAnnotation:v,exportAnnotationComposite:N,entityListId:F,guestCategories:J={}})=>{const{closeSlideOut:Y,openPip:Z,user:w,isGuest:$,entities:t}=H.useDetailsPanelContext(),{currentTab:q,setTab:d,isFeed:V}=H.useScopedDetailsPanel(n),C=s.useRef(!1),i=(t==null?void 0:t.entityType)??g,W=(t==null?void 0:t.entities)??O,ee=(t==null?void 0:t.entitySubTypes)??_;s.useEffect(()=>{R&&!C.current&&(C.current=!0,R())},[]),s.useEffect(()=>{M.includes(i)&&q!=="details"&&d("details")},[i,q,d]);const E=s.useMemo(()=>xe(m,x),[m,x]),k=s.useMemo(()=>({task:E.taskTypes.filter(e=>!!e.icon).reduce((e,u)=>({...e,[u.name]:u.icon}),{}),folder:E.folderTypes.filter(e=>!!e.icon).reduce((e,u)=>({...e,[u.name]:u.icon}),{}),product:Object.entries(oe).reduce((e,[u,f])=>({...e,[u]:f.icon}),{})}),[E]);s.useEffect(()=>{q==="files"&&i!=="version"&&d("activity")},[i,q,n]);let o=W.length?W.map(e=>({id:e.id,projectName:e.projectName})):B.map(e=>({id:e.id,projectName:e.projectName}));o=o.filter(e=>e.id);const{data:c=[],isFetching:p,isError:re,originalArgs:ie}=ne.useGetEntitiesDetailsPanelQuery({entityType:i,entities:o},{skip:!o.length||!ae.detailsPanelEntityTypes.includes(i)});s.useEffect(()=>{l||Y()},[ie,l]);const S=ye(m),y=x[0],L=m[y]||{},ue=c[0]||{},[I,te]=pe({entity:ue,entityType:i,projectName:y,isLoading:p});s.useEffect(()=>{const e=u=>{if(u.key==="Escape"&&a){const f=u.target;if(!(["INPUT","TEXTAREA","SELECT"].includes(f.tagName)||f.isContentEditable)||l===!1&&f.closest("#viewer-dialog"))return;a()}};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[a,l]);const{requestPipWindow:qe}=ce.usePiPWindow(),se=()=>{Z({entityType:i,entities:o,scope:n}),qe(500,500)},A=()=>{var e;return!(x.length>1||$&&(!F||!Object.prototype.hasOwnProperty.call(J,((e=w.attrib)==null?void 0:e.email)||"")))};return r.jsxRuntimeExports.jsx(r.jsxRuntimeExports.Fragment,{children:r.jsxRuntimeExports.jsxs(P.Panel,{className:"details-panel",children:[r.jsxRuntimeExports.jsxs(P.Toolbar,{children:[r.jsxRuntimeExports.jsx(je.EntityPath,{segments:I,versions:te,projectName:y,hideProjectName:l,isLoading:p||!I.length,entityType:i,scope:n,entityTypeIcons:k}),r.jsxRuntimeExports.jsxs(P.RightTools,{className:"right-tools",children:[r.jsxRuntimeExports.jsx(Pe.Watchers,{entities:o,entityType:g,options:h||[],onWatchersUpdate:D&&D,userName:w.name}),r.jsxRuntimeExports.jsx(G.Button,{icon:"picture_in_picture",variant:"text","data-tooltip":"Picture in Picture",onClick:se}),a&&r.jsxRuntimeExports.jsx(G.Button,{icon:"close",variant:"text",onClick:()=>a&&a(),"data-shortcut":"Escape"})]})]}),r.jsxRuntimeExports.jsx(le,{entityType:i,entitySubTypes:ee,entities:c,users:h,disabledAssignees:U,disabledStatuses:K,tagsOptions:Q,isFetching:p,isCompact:X,currentTab:q,onTabChange:d,entityTypeIcons:k,onOpenViewer:e=>j==null?void 0:j(e),onEntityFocus:z}),V&&!re&&r.jsxRuntimeExports.jsx(fe,{entityType:i,entities:c,activeUsers:T||[],projectInfo:L,projectName:y,disabled:!A(),scope:n,statuses:S,readOnly:!1,entityListId:F,annotations:b,removeAnnotation:v,exportAnnotationComposite:N,currentTab:q,setCurrentTab:d}),q==="files"&&r.jsxRuntimeExports.jsx(de,{entities:c,scope:n,isLoadingVersion:p}),q==="details"&&r.jsxRuntimeExports.jsx(me,{entityType:i,entities:c,activeUsers:T||[],projectInfo:L,projectName:y,disabled:!A(),scope:n,statuses:S,readOnly:!1,annotations:b,removeAnnotation:v,exportAnnotationComposite:N,children:r.jsxRuntimeExports.jsx(Ee.DetailsPanelDetails,{entities:c,isLoading:p})})]})})};exports.DetailsPanel=ge;exports.entitiesWithoutFeed=M;
2
2
  //# sourceMappingURL=DetailsPanel.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DetailsPanel.cjs.js","sources":["../../../../../src/containers/DetailsPanel/DetailsPanel.tsx"],"sourcesContent":["import { Button } from '@ynput/ayon-react-components'\nimport React, { useEffect, useMemo, useRef } from 'react'\nimport * as Styled from './DetailsPanel.styled'\n\n// shared\nimport { useGetEntitiesDetailsPanelQuery, detailsPanelEntityTypes } from '@shared/api'\nimport type { ProjectModel, Tag, DetailsPanelEntityType } from '@shared/api'\nimport { DetailsPanelDetails, EntityPath, Watchers } from '@shared/components'\nimport { usePiPWindow } from '@shared/context/pip/PiPProvider'\nimport { productTypes } from '@shared/util'\nimport { useDetailsPanelContext, usePowerpack, useScopedDetailsPanel } from '@shared/context'\n\nimport DetailsPanelHeader from './DetailsPanelHeader/DetailsPanelHeader'\nimport DetailsPanelFiles from './DetailsPanelFiles'\nimport useGetEntityPath from './hooks/useGetEntityPath'\nimport getAllProjectStatuses from './helpers/getAllProjectsStatuses'\nimport FeedWrapper from './FeedWrapper'\nimport FeedContextWrapper from './FeedContextWrapper'\nimport mergeProjectInfo from './helpers/mergeProjectInfo'\n\nexport const entitiesWithoutFeed = ['product', 'representation']\n\ntype User = { avatarUrl: string; name: string; fullName?: string }\n\nexport type DetailsPanelProps = {\n entityType: DetailsPanelEntityType\n entitySubTypes?: string[] // used to get actions before the entity has loaded\n entitiesData?: { id: string; label: string; type: DetailsPanelEntityType }[]\n entities?: { id: string; projectName: string }[]\n tagsOptions?: Tag[]\n disabledStatuses?: string[]\n projectUsers?: User[]\n disabledProjectUsers?: string[]\n activeProjectUsers?: string[]\n projectsInfo?: Record<string, ProjectModel>\n projectNames?: string[]\n isSlideOut?: boolean\n style?: React.CSSProperties\n scope: string\n isCompact?: boolean\n onClose?: () => void\n onWatchersUpdate?: (added: any[], removed: any[]) => void\n onOpenViewer?: (entity: any) => void\n onEntityFocus?: (id: string, entityType: DetailsPanelEntityType) => void\n onOpen?: () => void\n // annotations\n annotations?: any\n removeAnnotation?: (id: string) => void\n exportAnnotationComposite?: (id: string) => Promise<Blob | null>\n entityListId?: string\n guestCategories?: Record<string, string> // only used for guests to find if they have access to any categories\n}\n\nexport const DetailsPanel = ({\n entityType,\n entitySubTypes = [],\n // entities is data we already have from kanban\n entitiesData = [],\n // entityIds are used to get the full details data for the entities\n entities = [],\n tagsOptions = [],\n disabledStatuses,\n projectUsers,\n disabledProjectUsers,\n activeProjectUsers,\n projectsInfo = {},\n projectNames = [],\n isSlideOut = false,\n style = {},\n scope,\n isCompact = false,\n onClose,\n onWatchersUpdate,\n onOpenViewer,\n onEntityFocus,\n onOpen,\n // annotations\n annotations,\n removeAnnotation,\n exportAnnotationComposite,\n entityListId,\n guestCategories = {},\n}: DetailsPanelProps) => {\n const {\n closeSlideOut,\n openPip,\n user,\n isGuest,\n entities: contextEntities,\n } = useDetailsPanelContext()\n const { currentTab, setTab, isFeed } = useScopedDetailsPanel(scope)\n const hasCalledOnOpen = useRef(false)\n\n // Use context entities if available, otherwise use props\n const activeEntityType = contextEntities?.entityType ?? entityType\n const activeEntities = contextEntities?.entities ?? entities\n const activeEntitySubTypes = contextEntities?.entitySubTypes ?? entitySubTypes\n\n // Fire onOpen callback once when component mounts and renders\n useEffect(() => {\n if (onOpen && !hasCalledOnOpen.current) {\n hasCalledOnOpen.current = true\n onOpen()\n }\n }, [])\n\n // Force details tab for specific entity types\n useEffect(() => {\n if (entitiesWithoutFeed.includes(activeEntityType) && currentTab !== 'details') {\n setTab('details')\n }\n }, [activeEntityType, currentTab, setTab])\n\n // reduce projectsInfo to selected projects and into one\n const projectInfo = useMemo(\n () => mergeProjectInfo(projectsInfo, projectNames),\n [projectsInfo, projectNames],\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: Object.entries(productTypes).reduce(\n (acc, [key, product]) => ({ ...acc, [key]: product.icon }),\n {},\n ),\n }),\n [projectInfo],\n )\n\n // check if tab needs to be updated when entity type changes\n // for example when switching from version to task, task doesn't have reps tab\n // if reps tab was selected, set default to feed\n useEffect(() => {\n if (currentTab === 'files') {\n // check entity type is still version\n if (activeEntityType !== 'version') {\n setTab('activity')\n }\n }\n }, [activeEntityType, currentTab, scope])\n\n // now we get the full details data for selected entities\n let entitiesToQuery = activeEntities.length\n ? activeEntities.map((entity) => ({ id: entity.id, projectName: entity.projectName }))\n : // @ts-expect-error = not sure what's going on with entitiesData, we should try and remove it\n entitiesData.map((entity) => ({ id: entity.id, projectName: entity.projectName }))\n\n entitiesToQuery = entitiesToQuery.filter((entity) => entity.id)\n\n const {\n data: entityDetailsData = [],\n isFetching: isFetchingEntitiesDetails,\n isError,\n originalArgs,\n } = useGetEntitiesDetailsPanelQuery(\n { entityType: activeEntityType, entities: entitiesToQuery },\n {\n skip: !entitiesToQuery.length || !detailsPanelEntityTypes.includes(activeEntityType),\n },\n )\n\n // the entity changes then we close the slide out\n useEffect(() => {\n if (!isSlideOut) {\n closeSlideOut()\n }\n }, [originalArgs, isSlideOut])\n\n // TODO: merge current entities data with fresh details data\n\n const allStatuses = getAllProjectStatuses(projectsInfo)\n\n // get the first project name and info to be used in the feed.\n const firstProject = projectNames[0]\n const firstProjectInfo = projectsInfo[firstProject] || {}\n const firstEntityData = entityDetailsData[0] || {}\n\n // build the full entity path for the first entity\n const [entityPathSegments, entityPathVersions] = useGetEntityPath({\n entity: firstEntityData,\n entityType: activeEntityType,\n projectName: firstProject,\n isLoading: isFetchingEntitiesDetails,\n })\n\n useEffect(() => {\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === 'Escape' && onClose) {\n // Don't trigger if we're in an input element\n const target = e.target as HTMLElement\n const isInputElement =\n ['INPUT', 'TEXTAREA', 'SELECT'].includes(target.tagName) || target.isContentEditable\n\n if (!isInputElement) return\n\n // don't trigger if the viewer is open and panel not in slideout mode\n if (isSlideOut === false && target.closest('#viewer-dialog')) return\n\n onClose()\n }\n }\n\n window.addEventListener('keydown', handleKeyDown)\n return () => window.removeEventListener('keydown', handleKeyDown)\n }, [onClose, isSlideOut])\n\n const { requestPipWindow } = usePiPWindow()\n\n const handleOpenPip = () => {\n openPip({\n entityType: activeEntityType,\n entities: entitiesToQuery,\n scope: scope,\n })\n requestPipWindow(500, 500)\n }\n\n const isCommentingEnabled = () => {\n // cannot comment on multiple projects\n if (projectNames.length > 1) return false\n if (isGuest) {\n // Guest can only comment in review sessions (for now)\n if (!entityListId) return false\n // Guest must have at least one category set for list\n const guestHasCategory = Object.prototype.hasOwnProperty.call(\n guestCategories,\n user.attrib?.email || '',\n )\n if (!guestHasCategory) return false\n }\n return true\n }\n\n return (\n <>\n <Styled.Panel className=\"details-panel\">\n <Styled.Toolbar>\n {/* TODO FIX PATH */}\n <EntityPath\n segments={entityPathSegments}\n versions={entityPathVersions}\n projectName={firstProject}\n hideProjectName={isSlideOut}\n isLoading={isFetchingEntitiesDetails || !entityPathSegments.length}\n entityType={activeEntityType}\n scope={scope}\n // @ts-ignore\n entityTypeIcons={entityTypeIcons}\n />\n <Styled.RightTools className=\"right-tools\">\n <Watchers\n entities={entitiesToQuery}\n entityType={entityType}\n options={projectUsers || []}\n onWatchersUpdate={onWatchersUpdate && onWatchersUpdate}\n userName={user.name}\n />\n <Button\n icon=\"picture_in_picture\"\n variant={'text'}\n data-tooltip=\"Picture in Picture\"\n onClick={handleOpenPip}\n />\n\n {onClose && (\n <Button\n icon=\"close\"\n variant={'text'}\n onClick={() => onClose && onClose()}\n data-shortcut={'Escape'}\n />\n )}\n </Styled.RightTools>\n </Styled.Toolbar>\n\n <DetailsPanelHeader\n entityType={activeEntityType}\n entitySubTypes={activeEntitySubTypes}\n entities={entityDetailsData}\n users={projectUsers}\n disabledAssignees={disabledProjectUsers}\n disabledStatuses={disabledStatuses}\n tagsOptions={tagsOptions}\n isFetching={isFetchingEntitiesDetails}\n isCompact={isCompact}\n currentTab={currentTab}\n onTabChange={setTab}\n entityTypeIcons={entityTypeIcons}\n onOpenViewer={(args) => onOpenViewer?.(args)}\n onEntityFocus={onEntityFocus}\n />\n {isFeed && !isError && (\n <FeedWrapper\n entityType={activeEntityType}\n entities={entityDetailsData}\n activeUsers={activeProjectUsers || []}\n projectInfo={firstProjectInfo}\n projectName={firstProject}\n disabled={!isCommentingEnabled()}\n scope={scope}\n statuses={allStatuses}\n readOnly={false}\n entityListId={entityListId}\n annotations={annotations}\n removeAnnotation={removeAnnotation}\n exportAnnotationComposite={exportAnnotationComposite}\n />\n )}\n {currentTab === 'files' && (\n <DetailsPanelFiles\n entities={entityDetailsData}\n scope={scope}\n isLoadingVersion={isFetchingEntitiesDetails}\n />\n )}\n {currentTab === 'details' && (\n <FeedContextWrapper\n entityType={activeEntityType}\n entities={entityDetailsData}\n activeUsers={activeProjectUsers || []}\n projectInfo={firstProjectInfo}\n projectName={firstProject}\n disabled={!isCommentingEnabled()}\n scope={scope}\n statuses={allStatuses}\n readOnly={false}\n annotations={annotations}\n removeAnnotation={removeAnnotation}\n exportAnnotationComposite={exportAnnotationComposite}\n >\n <DetailsPanelDetails\n entities={entityDetailsData}\n isLoading={isFetchingEntitiesDetails}\n />\n </FeedContextWrapper>\n )}\n </Styled.Panel>\n </>\n )\n}\n"],"names":["entitiesWithoutFeed","DetailsPanel","entityType","entitySubTypes","entitiesData","entities","tagsOptions","disabledStatuses","projectUsers","disabledProjectUsers","activeProjectUsers","projectsInfo","projectNames","isSlideOut","style","scope","isCompact","onClose","onWatchersUpdate","onOpenViewer","onEntityFocus","onOpen","annotations","removeAnnotation","exportAnnotationComposite","entityListId","guestCategories","closeSlideOut","openPip","user","isGuest","contextEntities","useDetailsPanelContext","currentTab","setTab","isFeed","useScopedDetailsPanel","hasCalledOnOpen","useRef","activeEntityType","activeEntities","activeEntitySubTypes","useEffect","projectInfo","useMemo","mergeProjectInfo","entityTypeIcons","task","acc","folder","productTypes","key","product","entitiesToQuery","entity","entityDetailsData","isFetchingEntitiesDetails","isError","originalArgs","useGetEntitiesDetailsPanelQuery","detailsPanelEntityTypes","allStatuses","getAllProjectStatuses","firstProject","firstProjectInfo","firstEntityData","entityPathSegments","entityPathVersions","useGetEntityPath","handleKeyDown","e","target","requestPipWindow","usePiPWindow","handleOpenPip","isCommentingEnabled","_a","jsxs","Styled.Panel","Styled.Toolbar","jsx","EntityPath","Styled.RightTools","Watchers","Button","DetailsPanelHeader","args","FeedWrapper","DetailsPanelFiles","FeedContextWrapper","DetailsPanelDetails"],"mappings":"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"}
1
+ {"version":3,"file":"DetailsPanel.cjs.js","sources":["../../../../../src/containers/DetailsPanel/DetailsPanel.tsx"],"sourcesContent":["import { Button } from '@ynput/ayon-react-components'\nimport React, { useEffect, useMemo, useRef } from 'react'\nimport * as Styled from './DetailsPanel.styled'\n\n// shared\nimport { useGetEntitiesDetailsPanelQuery, detailsPanelEntityTypes } from '@shared/api'\nimport type { ProjectModel, Tag, DetailsPanelEntityType } from '@shared/api'\nimport { DetailsPanelDetails, EntityPath, Watchers } from '@shared/components'\nimport { usePiPWindow } from '@shared/context/pip/PiPProvider'\nimport { productTypes } from '@shared/util'\nimport { useDetailsPanelContext, usePowerpack, useScopedDetailsPanel, DetailsPanelTab } from '@shared/context'\n\nimport DetailsPanelHeader from './DetailsPanelHeader/DetailsPanelHeader'\nimport DetailsPanelFiles from './DetailsPanelFiles'\nimport useGetEntityPath from './hooks/useGetEntityPath'\nimport getAllProjectStatuses from './helpers/getAllProjectsStatuses'\nimport FeedWrapper from './FeedWrapper'\nimport FeedContextWrapper from './FeedContextWrapper'\nimport mergeProjectInfo from './helpers/mergeProjectInfo'\n\nexport const entitiesWithoutFeed = ['product', 'representation']\n\ntype User = { avatarUrl: string; name: string; fullName?: string }\n\nexport type DetailsPanelProps = {\n entityType: DetailsPanelEntityType\n entitySubTypes?: string[] // used to get actions before the entity has loaded\n entitiesData?: { id: string; label: string; type: DetailsPanelEntityType }[]\n entities?: { id: string; projectName: string }[]\n tagsOptions?: Tag[]\n disabledStatuses?: string[]\n projectUsers?: User[]\n disabledProjectUsers?: string[]\n activeProjectUsers?: string[]\n projectsInfo?: Record<string, ProjectModel>\n projectNames?: string[]\n isSlideOut?: boolean\n style?: React.CSSProperties\n scope: string\n isCompact?: boolean\n onClose?: () => void\n onWatchersUpdate?: (added: any[], removed: any[]) => void\n onOpenViewer?: (entity: any) => void\n onEntityFocus?: (id: string, entityType: DetailsPanelEntityType) => void\n onOpen?: () => void\n // annotations\n annotations?: any\n removeAnnotation?: (id: string) => void\n exportAnnotationComposite?: (id: string) => Promise<Blob | null>\n entityListId?: string\n guestCategories?: Record<string, string> // only used for guests to find if they have access to any categories\n // optional tab state for independent tab management\n}\n\nexport const DetailsPanel = ({\n entityType,\n entitySubTypes = [],\n // entities is data we already have from kanban\n entitiesData = [],\n // entityIds are used to get the full details data for the entities\n entities = [],\n tagsOptions = [],\n disabledStatuses,\n projectUsers,\n disabledProjectUsers,\n activeProjectUsers,\n projectsInfo = {},\n projectNames = [],\n isSlideOut = false,\n style = {},\n scope,\n isCompact = false,\n onClose,\n onWatchersUpdate,\n onOpenViewer,\n onEntityFocus,\n onOpen,\n // annotations\n annotations,\n removeAnnotation,\n exportAnnotationComposite,\n entityListId,\n guestCategories = {},\n // optional tab state for independent tab management\n}: DetailsPanelProps) => {\n const {\n closeSlideOut,\n openPip,\n user,\n isGuest,\n entities: contextEntities,\n } = useDetailsPanelContext()\n const { currentTab, setTab, isFeed } = useScopedDetailsPanel(scope)\n const hasCalledOnOpen = useRef(false)\n\n // Use context entities if available, otherwise use props\n const activeEntityType = contextEntities?.entityType ?? entityType\n const activeEntities = contextEntities?.entities ?? entities\n const activeEntitySubTypes = contextEntities?.entitySubTypes ?? entitySubTypes\n\n // Fire onOpen callback once when component mounts and renders\n useEffect(() => {\n if (onOpen && !hasCalledOnOpen.current) {\n hasCalledOnOpen.current = true\n onOpen()\n }\n }, [])\n\n // Force details tab for specific entity types\n useEffect(() => {\n if (entitiesWithoutFeed.includes(activeEntityType) && currentTab !== 'details') {\n setTab('details')\n }\n }, [activeEntityType, currentTab, setTab])\n\n // reduce projectsInfo to selected projects and into one\n const projectInfo = useMemo(\n () => mergeProjectInfo(projectsInfo, projectNames),\n [projectsInfo, projectNames],\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: Object.entries(productTypes).reduce(\n (acc, [key, product]) => ({ ...acc, [key]: product.icon }),\n {},\n ),\n }),\n [projectInfo],\n )\n\n // check if tab needs to be updated when entity type changes\n // for example when switching from version to task, task doesn't have reps tab\n // if reps tab was selected, set default to feed\n useEffect(() => {\n if (currentTab === 'files') {\n // check entity type is still version\n if (activeEntityType !== 'version') {\n setTab('activity')\n }\n }\n }, [activeEntityType, currentTab, scope])\n\n // now we get the full details data for selected entities\n let entitiesToQuery = activeEntities.length\n ? activeEntities.map((entity) => ({ id: entity.id, projectName: entity.projectName }))\n : // @ts-expect-error = not sure what's going on with entitiesData, we should try and remove it\n entitiesData.map((entity) => ({ id: entity.id, projectName: entity.projectName }))\n\n entitiesToQuery = entitiesToQuery.filter((entity) => entity.id)\n\n const {\n data: entityDetailsData = [],\n isFetching: isFetchingEntitiesDetails,\n isError,\n originalArgs,\n } = useGetEntitiesDetailsPanelQuery(\n { entityType: activeEntityType, entities: entitiesToQuery },\n {\n skip: !entitiesToQuery.length || !detailsPanelEntityTypes.includes(activeEntityType),\n },\n )\n\n // the entity changes then we close the slide out\n useEffect(() => {\n if (!isSlideOut) {\n closeSlideOut()\n }\n }, [originalArgs, isSlideOut])\n\n // TODO: merge current entities data with fresh details data\n\n const allStatuses = getAllProjectStatuses(projectsInfo)\n\n // get the first project name and info to be used in the feed.\n const firstProject = projectNames[0]\n const firstProjectInfo = projectsInfo[firstProject] || {}\n const firstEntityData = entityDetailsData[0] || {}\n\n // build the full entity path for the first entity\n const [entityPathSegments, entityPathVersions] = useGetEntityPath({\n entity: firstEntityData,\n entityType: activeEntityType,\n projectName: firstProject,\n isLoading: isFetchingEntitiesDetails,\n })\n\n useEffect(() => {\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === 'Escape' && onClose) {\n // Don't trigger if we're in an input element\n const target = e.target as HTMLElement\n const isInputElement =\n ['INPUT', 'TEXTAREA', 'SELECT'].includes(target.tagName) || target.isContentEditable\n\n if (!isInputElement) return\n\n // don't trigger if the viewer is open and panel not in slideout mode\n if (isSlideOut === false && target.closest('#viewer-dialog')) return\n\n onClose()\n }\n }\n\n window.addEventListener('keydown', handleKeyDown)\n return () => window.removeEventListener('keydown', handleKeyDown)\n }, [onClose, isSlideOut])\n\n const { requestPipWindow } = usePiPWindow()\n\n const handleOpenPip = () => {\n openPip({\n entityType: activeEntityType,\n entities: entitiesToQuery,\n scope: scope,\n })\n requestPipWindow(500, 500)\n }\n\n const isCommentingEnabled = () => {\n // cannot comment on multiple projects\n if (projectNames.length > 1) return false\n if (isGuest) {\n // Guest can only comment in review sessions (for now)\n if (!entityListId) return false\n // Guest must have at least one category set for list\n const guestHasCategory = Object.prototype.hasOwnProperty.call(\n guestCategories,\n user.attrib?.email || '',\n )\n if (!guestHasCategory) return false\n }\n return true\n }\n\n return (\n <>\n <Styled.Panel className=\"details-panel\">\n <Styled.Toolbar>\n {/* TODO FIX PATH */}\n <EntityPath\n segments={entityPathSegments}\n versions={entityPathVersions}\n projectName={firstProject}\n hideProjectName={isSlideOut}\n isLoading={isFetchingEntitiesDetails || !entityPathSegments.length}\n entityType={activeEntityType}\n scope={scope}\n // @ts-ignore\n entityTypeIcons={entityTypeIcons}\n />\n <Styled.RightTools className=\"right-tools\">\n <Watchers\n entities={entitiesToQuery}\n entityType={entityType}\n options={projectUsers || []}\n onWatchersUpdate={onWatchersUpdate && onWatchersUpdate}\n userName={user.name}\n />\n <Button\n icon=\"picture_in_picture\"\n variant={'text'}\n data-tooltip=\"Picture in Picture\"\n onClick={handleOpenPip}\n />\n\n {onClose && (\n <Button\n icon=\"close\"\n variant={'text'}\n onClick={() => onClose && onClose()}\n data-shortcut={'Escape'}\n />\n )}\n </Styled.RightTools>\n </Styled.Toolbar>\n\n <DetailsPanelHeader\n entityType={activeEntityType}\n entitySubTypes={activeEntitySubTypes}\n entities={entityDetailsData}\n users={projectUsers}\n disabledAssignees={disabledProjectUsers}\n disabledStatuses={disabledStatuses}\n tagsOptions={tagsOptions}\n isFetching={isFetchingEntitiesDetails}\n isCompact={isCompact}\n currentTab={currentTab}\n onTabChange={setTab}\n entityTypeIcons={entityTypeIcons}\n onOpenViewer={(args) => onOpenViewer?.(args)}\n onEntityFocus={onEntityFocus}\n />\n {isFeed && !isError && (\n <FeedWrapper\n entityType={activeEntityType}\n entities={entityDetailsData}\n activeUsers={activeProjectUsers || []}\n projectInfo={firstProjectInfo}\n projectName={firstProject}\n disabled={!isCommentingEnabled()}\n scope={scope}\n statuses={allStatuses}\n readOnly={false}\n entityListId={entityListId}\n annotations={annotations}\n removeAnnotation={removeAnnotation}\n exportAnnotationComposite={exportAnnotationComposite}\n currentTab={currentTab}\n setCurrentTab={setTab}\n />\n )}\n {currentTab === 'files' && (\n <DetailsPanelFiles\n entities={entityDetailsData}\n scope={scope}\n isLoadingVersion={isFetchingEntitiesDetails}\n />\n )}\n {currentTab === 'details' && (\n <FeedContextWrapper\n entityType={activeEntityType}\n entities={entityDetailsData}\n activeUsers={activeProjectUsers || []}\n projectInfo={firstProjectInfo}\n projectName={firstProject}\n disabled={!isCommentingEnabled()}\n scope={scope}\n statuses={allStatuses}\n readOnly={false}\n annotations={annotations}\n removeAnnotation={removeAnnotation}\n exportAnnotationComposite={exportAnnotationComposite}\n >\n <DetailsPanelDetails\n entities={entityDetailsData}\n isLoading={isFetchingEntitiesDetails}\n />\n </FeedContextWrapper>\n )}\n </Styled.Panel>\n </>\n )\n}\n"],"names":["entitiesWithoutFeed","DetailsPanel","entityType","entitySubTypes","entitiesData","entities","tagsOptions","disabledStatuses","projectUsers","disabledProjectUsers","activeProjectUsers","projectsInfo","projectNames","isSlideOut","style","scope","isCompact","onClose","onWatchersUpdate","onOpenViewer","onEntityFocus","onOpen","annotations","removeAnnotation","exportAnnotationComposite","entityListId","guestCategories","closeSlideOut","openPip","user","isGuest","contextEntities","useDetailsPanelContext","currentTab","setTab","isFeed","useScopedDetailsPanel","hasCalledOnOpen","useRef","activeEntityType","activeEntities","activeEntitySubTypes","useEffect","projectInfo","useMemo","mergeProjectInfo","entityTypeIcons","task","acc","folder","productTypes","key","product","entitiesToQuery","entity","entityDetailsData","isFetchingEntitiesDetails","isError","originalArgs","useGetEntitiesDetailsPanelQuery","detailsPanelEntityTypes","allStatuses","getAllProjectStatuses","firstProject","firstProjectInfo","firstEntityData","entityPathSegments","entityPathVersions","useGetEntityPath","handleKeyDown","e","target","requestPipWindow","usePiPWindow","handleOpenPip","isCommentingEnabled","_a","jsxs","Styled.Panel","Styled.Toolbar","jsx","EntityPath","Styled.RightTools","Watchers","Button","DetailsPanelHeader","args","FeedWrapper","DetailsPanelFiles","FeedContextWrapper","DetailsPanelDetails"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { j as i } from "../../../../_virtual/jsx-runtime.es.js";
2
2
  import { Button as G } from "@ynput/ayon-react-components";
3
- import { useRef as pt, useEffect as u, useMemo as H } from "react";
3
+ import { useRef as pt, useEffect as y, useMemo as H } from "react";
4
4
  import { Panel as et, Toolbar as st, RightTools as nt } from "./DetailsPanel.styled.es.js";
5
5
  import "../../api/base/client.es.js";
6
6
  import "../../api/generated/graphql.es.js";
@@ -114,6 +114,7 @@ import "../../context/PowerpackContext.es.js";
114
114
  import "../../context/MoveEntityContext.es.js";
115
115
  import "../../context/MenuContext.es.js";
116
116
  import "../../context/WebsocketContext.es.js";
117
+ import "../../context/GlobalContext.es.js";
117
118
  import "../../components/ReviewableCard/ReviewableCard.es.js";
118
119
  import "../../components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
119
120
  import "../../components/FileThumbnail/FileThumbnail.es.js";
@@ -189,8 +190,8 @@ import "../ProjectTreeTable/components/ColumnHeaderMenu.es.js";
189
190
  import yt from "./DetailsPanelHeader/DetailsPanelHeader.es.js";
190
191
  import gt from "./DetailsPanelFiles/DetailsPanelFiles.es.js";
191
192
  import ht from "./hooks/useGetEntityPath.es.js";
192
- import Pt from "./helpers/getAllProjectsStatuses.es.js";
193
- import Tt from "./FeedWrapper.es.js";
193
+ import Tt from "./helpers/getAllProjectsStatuses.es.js";
194
+ import Pt from "./FeedWrapper.es.js";
194
195
  import jt from "./FeedContextWrapper.es.js";
195
196
  import Et from "./helpers/mergeProjectInfo.es.js";
196
197
  import "./DetailsPanelHeader/DetailsPanelHeader.styled.es.js";
@@ -240,7 +241,7 @@ import "../../components/TableGridSwitch/TableGridSwitch.es.js";
240
241
  import "../../components/SortingSetting/SortingSetting.styled.es.js";
241
242
  import "../../components/EarlyPreview/EarlyPreview.es.js";
242
243
  import "../../components/LegacyBadge/LegacyBadge.es.js";
243
- const vt = ["product", "representation"], ip = ({
244
+ const vt = ["product", "representation"], rp = ({
244
245
  entityType: j,
245
246
  entitySubTypes: Q = [],
246
247
  // entities is data we already have from kanban
@@ -252,15 +253,15 @@ const vt = ["product", "representation"], ip = ({
252
253
  projectUsers: E,
253
254
  disabledProjectUsers: M,
254
255
  activeProjectUsers: b,
255
- projectsInfo: y = {},
256
- projectNames: g = [],
256
+ projectsInfo: g = {},
257
+ projectNames: h = [],
257
258
  isSlideOut: l = !1,
258
259
  style: Nt = {},
259
- scope: p,
260
+ scope: e,
260
261
  isCompact: O = !1,
261
262
  onClose: s,
262
263
  onWatchersUpdate: x,
263
- onOpenViewer: P,
264
+ onOpenViewer: T,
264
265
  onEntityFocus: U,
265
266
  onOpen: D,
266
267
  // annotations
@@ -269,6 +270,7 @@ const vt = ["product", "representation"], ip = ({
269
270
  exportAnnotationComposite: F,
270
271
  entityListId: w,
271
272
  guestCategories: X = {}
273
+ // optional tab state for independent tab management
272
274
  }) => {
273
275
  const {
274
276
  closeSlideOut: z,
@@ -276,37 +278,37 @@ const vt = ["product", "representation"], ip = ({
276
278
  user: k,
277
279
  isGuest: Y,
278
280
  entities: m
279
- } = dt(), { currentTab: e, setTab: h, isFeed: Z } = ft(p), L = pt(!1), r = (m == null ? void 0 : m.entityType) ?? j, W = (m == null ? void 0 : m.entities) ?? q, $ = (m == null ? void 0 : m.entitySubTypes) ?? Q;
280
- u(() => {
281
- D && !L.current && (L.current = !0, D());
282
- }, []), u(() => {
283
- vt.includes(r) && e !== "details" && h("details");
284
- }, [r, e, h]);
285
- const T = H(
286
- () => Et(y, g),
287
- [y, g]
288
- ), C = H(
281
+ } = dt(), { currentTab: p, setTab: c, isFeed: Z } = ft(e), C = pt(!1), r = (m == null ? void 0 : m.entityType) ?? j, L = (m == null ? void 0 : m.entities) ?? q, $ = (m == null ? void 0 : m.entitySubTypes) ?? Q;
282
+ y(() => {
283
+ D && !C.current && (C.current = !0, D());
284
+ }, []), y(() => {
285
+ vt.includes(r) && p !== "details" && c("details");
286
+ }, [r, p, c]);
287
+ const P = H(
288
+ () => Et(g, h),
289
+ [g, h]
290
+ ), W = H(
289
291
  () => ({
290
- task: T.taskTypes.filter((t) => !!t.icon).reduce((t, o) => ({ ...t, [o.name]: o.icon }), {}),
291
- folder: T.folderTypes.filter((t) => !!t.icon).reduce((t, o) => ({ ...t, [o.name]: o.icon }), {}),
292
+ task: P.taskTypes.filter((t) => !!t.icon).reduce((t, o) => ({ ...t, [o.name]: o.icon }), {}),
293
+ folder: P.folderTypes.filter((t) => !!t.icon).reduce((t, o) => ({ ...t, [o.name]: o.icon }), {}),
292
294
  product: Object.entries(ct).reduce(
293
- (t, [o, f]) => ({ ...t, [o]: f.icon }),
295
+ (t, [o, u]) => ({ ...t, [o]: u.icon }),
294
296
  {}
295
297
  )
296
298
  }),
297
- [T]
299
+ [P]
298
300
  );
299
- u(() => {
300
- e === "files" && r !== "version" && h("activity");
301
- }, [r, e, p]);
302
- let n = W.length ? W.map((t) => ({ id: t.id, projectName: t.projectName })) : (
301
+ y(() => {
302
+ p === "files" && r !== "version" && c("activity");
303
+ }, [r, p, e]);
304
+ let n = L.length ? L.map((t) => ({ id: t.id, projectName: t.projectName })) : (
303
305
  // @ts-expect-error = not sure what's going on with entitiesData, we should try and remove it
304
306
  _.map((t) => ({ id: t.id, projectName: t.projectName }))
305
307
  );
306
308
  n = n.filter((t) => t.id);
307
309
  const {
308
310
  data: a = [],
309
- isFetching: c,
311
+ isFetching: d,
310
312
  isError: V,
311
313
  originalArgs: tt
312
314
  } = at(
@@ -315,20 +317,20 @@ const vt = ["product", "representation"], ip = ({
315
317
  skip: !n.length || !lt.includes(r)
316
318
  }
317
319
  );
318
- u(() => {
320
+ y(() => {
319
321
  l || z();
320
322
  }, [tt, l]);
321
- const I = Pt(y), d = g[0], S = y[d] || {}, it = a[0] || {}, [R, rt] = ht({
323
+ const I = Tt(g), f = h[0], S = g[f] || {}, it = a[0] || {}, [R, rt] = ht({
322
324
  entity: it,
323
325
  entityType: r,
324
- projectName: d,
325
- isLoading: c
326
+ projectName: f,
327
+ isLoading: d
326
328
  });
327
- u(() => {
329
+ y(() => {
328
330
  const t = (o) => {
329
331
  if (o.key === "Escape" && s) {
330
- const f = o.target;
331
- if (!(["INPUT", "TEXTAREA", "SELECT"].includes(f.tagName) || f.isContentEditable) || l === !1 && f.closest("#viewer-dialog")) return;
332
+ const u = o.target;
333
+ if (!(["INPUT", "TEXTAREA", "SELECT"].includes(u.tagName) || u.isContentEditable) || l === !1 && u.closest("#viewer-dialog")) return;
332
334
  s();
333
335
  }
334
336
  };
@@ -338,11 +340,11 @@ const vt = ["product", "representation"], ip = ({
338
340
  J({
339
341
  entityType: r,
340
342
  entities: n,
341
- scope: p
343
+ scope: e
342
344
  }), ot(500, 500);
343
345
  }, A = () => {
344
346
  var t;
345
- return !(g.length > 1 || Y && (!w || !Object.prototype.hasOwnProperty.call(
347
+ return !(h.length > 1 || Y && (!w || !Object.prototype.hasOwnProperty.call(
346
348
  X,
347
349
  ((t = k.attrib) == null ? void 0 : t.email) || ""
348
350
  )));
@@ -354,12 +356,12 @@ const vt = ["product", "representation"], ip = ({
354
356
  {
355
357
  segments: R,
356
358
  versions: rt,
357
- projectName: d,
359
+ projectName: f,
358
360
  hideProjectName: l,
359
- isLoading: c || !R.length,
361
+ isLoading: d || !R.length,
360
362
  entityType: r,
361
- scope: p,
362
- entityTypeIcons: C
363
+ scope: e,
364
+ entityTypeIcons: W
363
365
  }
364
366
  ),
365
367
  /* @__PURE__ */ i.jsxs(nt, { className: "right-tools", children: [
@@ -403,51 +405,53 @@ const vt = ["product", "representation"], ip = ({
403
405
  disabledAssignees: M,
404
406
  disabledStatuses: K,
405
407
  tagsOptions: B,
406
- isFetching: c,
408
+ isFetching: d,
407
409
  isCompact: O,
408
- currentTab: e,
409
- onTabChange: h,
410
- entityTypeIcons: C,
411
- onOpenViewer: (t) => P == null ? void 0 : P(t),
410
+ currentTab: p,
411
+ onTabChange: c,
412
+ entityTypeIcons: W,
413
+ onOpenViewer: (t) => T == null ? void 0 : T(t),
412
414
  onEntityFocus: U
413
415
  }
414
416
  ),
415
417
  Z && !V && /* @__PURE__ */ i.jsx(
416
- Tt,
418
+ Pt,
417
419
  {
418
420
  entityType: r,
419
421
  entities: a,
420
422
  activeUsers: b || [],
421
423
  projectInfo: S,
422
- projectName: d,
424
+ projectName: f,
423
425
  disabled: !A(),
424
- scope: p,
426
+ scope: e,
425
427
  statuses: I,
426
428
  readOnly: !1,
427
429
  entityListId: w,
428
430
  annotations: v,
429
431
  removeAnnotation: N,
430
- exportAnnotationComposite: F
432
+ exportAnnotationComposite: F,
433
+ currentTab: p,
434
+ setCurrentTab: c
431
435
  }
432
436
  ),
433
- e === "files" && /* @__PURE__ */ i.jsx(
437
+ p === "files" && /* @__PURE__ */ i.jsx(
434
438
  gt,
435
439
  {
436
440
  entities: a,
437
- scope: p,
438
- isLoadingVersion: c
441
+ scope: e,
442
+ isLoadingVersion: d
439
443
  }
440
444
  ),
441
- e === "details" && /* @__PURE__ */ i.jsx(
445
+ p === "details" && /* @__PURE__ */ i.jsx(
442
446
  jt,
443
447
  {
444
448
  entityType: r,
445
449
  entities: a,
446
450
  activeUsers: b || [],
447
451
  projectInfo: S,
448
- projectName: d,
452
+ projectName: f,
449
453
  disabled: !A(),
450
- scope: p,
454
+ scope: e,
451
455
  statuses: I,
452
456
  readOnly: !1,
453
457
  annotations: v,
@@ -457,7 +461,7 @@ const vt = ["product", "representation"], ip = ({
457
461
  xt,
458
462
  {
459
463
  entities: a,
460
- isLoading: c
464
+ isLoading: d
461
465
  }
462
466
  )
463
467
  }
@@ -465,7 +469,7 @@ const vt = ["product", "representation"], ip = ({
465
469
  ] }) });
466
470
  };
467
471
  export {
468
- ip as DetailsPanel,
472
+ rp as DetailsPanel,
469
473
  vt as entitiesWithoutFeed
470
474
  };
471
475
  //# sourceMappingURL=DetailsPanel.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DetailsPanel.es.js","sources":["../../../../../src/containers/DetailsPanel/DetailsPanel.tsx"],"sourcesContent":["import { Button } from '@ynput/ayon-react-components'\nimport React, { useEffect, useMemo, useRef } from 'react'\nimport * as Styled from './DetailsPanel.styled'\n\n// shared\nimport { useGetEntitiesDetailsPanelQuery, detailsPanelEntityTypes } from '@shared/api'\nimport type { ProjectModel, Tag, DetailsPanelEntityType } from '@shared/api'\nimport { DetailsPanelDetails, EntityPath, Watchers } from '@shared/components'\nimport { usePiPWindow } from '@shared/context/pip/PiPProvider'\nimport { productTypes } from '@shared/util'\nimport { useDetailsPanelContext, usePowerpack, useScopedDetailsPanel } from '@shared/context'\n\nimport DetailsPanelHeader from './DetailsPanelHeader/DetailsPanelHeader'\nimport DetailsPanelFiles from './DetailsPanelFiles'\nimport useGetEntityPath from './hooks/useGetEntityPath'\nimport getAllProjectStatuses from './helpers/getAllProjectsStatuses'\nimport FeedWrapper from './FeedWrapper'\nimport FeedContextWrapper from './FeedContextWrapper'\nimport mergeProjectInfo from './helpers/mergeProjectInfo'\n\nexport const entitiesWithoutFeed = ['product', 'representation']\n\ntype User = { avatarUrl: string; name: string; fullName?: string }\n\nexport type DetailsPanelProps = {\n entityType: DetailsPanelEntityType\n entitySubTypes?: string[] // used to get actions before the entity has loaded\n entitiesData?: { id: string; label: string; type: DetailsPanelEntityType }[]\n entities?: { id: string; projectName: string }[]\n tagsOptions?: Tag[]\n disabledStatuses?: string[]\n projectUsers?: User[]\n disabledProjectUsers?: string[]\n activeProjectUsers?: string[]\n projectsInfo?: Record<string, ProjectModel>\n projectNames?: string[]\n isSlideOut?: boolean\n style?: React.CSSProperties\n scope: string\n isCompact?: boolean\n onClose?: () => void\n onWatchersUpdate?: (added: any[], removed: any[]) => void\n onOpenViewer?: (entity: any) => void\n onEntityFocus?: (id: string, entityType: DetailsPanelEntityType) => void\n onOpen?: () => void\n // annotations\n annotations?: any\n removeAnnotation?: (id: string) => void\n exportAnnotationComposite?: (id: string) => Promise<Blob | null>\n entityListId?: string\n guestCategories?: Record<string, string> // only used for guests to find if they have access to any categories\n}\n\nexport const DetailsPanel = ({\n entityType,\n entitySubTypes = [],\n // entities is data we already have from kanban\n entitiesData = [],\n // entityIds are used to get the full details data for the entities\n entities = [],\n tagsOptions = [],\n disabledStatuses,\n projectUsers,\n disabledProjectUsers,\n activeProjectUsers,\n projectsInfo = {},\n projectNames = [],\n isSlideOut = false,\n style = {},\n scope,\n isCompact = false,\n onClose,\n onWatchersUpdate,\n onOpenViewer,\n onEntityFocus,\n onOpen,\n // annotations\n annotations,\n removeAnnotation,\n exportAnnotationComposite,\n entityListId,\n guestCategories = {},\n}: DetailsPanelProps) => {\n const {\n closeSlideOut,\n openPip,\n user,\n isGuest,\n entities: contextEntities,\n } = useDetailsPanelContext()\n const { currentTab, setTab, isFeed } = useScopedDetailsPanel(scope)\n const hasCalledOnOpen = useRef(false)\n\n // Use context entities if available, otherwise use props\n const activeEntityType = contextEntities?.entityType ?? entityType\n const activeEntities = contextEntities?.entities ?? entities\n const activeEntitySubTypes = contextEntities?.entitySubTypes ?? entitySubTypes\n\n // Fire onOpen callback once when component mounts and renders\n useEffect(() => {\n if (onOpen && !hasCalledOnOpen.current) {\n hasCalledOnOpen.current = true\n onOpen()\n }\n }, [])\n\n // Force details tab for specific entity types\n useEffect(() => {\n if (entitiesWithoutFeed.includes(activeEntityType) && currentTab !== 'details') {\n setTab('details')\n }\n }, [activeEntityType, currentTab, setTab])\n\n // reduce projectsInfo to selected projects and into one\n const projectInfo = useMemo(\n () => mergeProjectInfo(projectsInfo, projectNames),\n [projectsInfo, projectNames],\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: Object.entries(productTypes).reduce(\n (acc, [key, product]) => ({ ...acc, [key]: product.icon }),\n {},\n ),\n }),\n [projectInfo],\n )\n\n // check if tab needs to be updated when entity type changes\n // for example when switching from version to task, task doesn't have reps tab\n // if reps tab was selected, set default to feed\n useEffect(() => {\n if (currentTab === 'files') {\n // check entity type is still version\n if (activeEntityType !== 'version') {\n setTab('activity')\n }\n }\n }, [activeEntityType, currentTab, scope])\n\n // now we get the full details data for selected entities\n let entitiesToQuery = activeEntities.length\n ? activeEntities.map((entity) => ({ id: entity.id, projectName: entity.projectName }))\n : // @ts-expect-error = not sure what's going on with entitiesData, we should try and remove it\n entitiesData.map((entity) => ({ id: entity.id, projectName: entity.projectName }))\n\n entitiesToQuery = entitiesToQuery.filter((entity) => entity.id)\n\n const {\n data: entityDetailsData = [],\n isFetching: isFetchingEntitiesDetails,\n isError,\n originalArgs,\n } = useGetEntitiesDetailsPanelQuery(\n { entityType: activeEntityType, entities: entitiesToQuery },\n {\n skip: !entitiesToQuery.length || !detailsPanelEntityTypes.includes(activeEntityType),\n },\n )\n\n // the entity changes then we close the slide out\n useEffect(() => {\n if (!isSlideOut) {\n closeSlideOut()\n }\n }, [originalArgs, isSlideOut])\n\n // TODO: merge current entities data with fresh details data\n\n const allStatuses = getAllProjectStatuses(projectsInfo)\n\n // get the first project name and info to be used in the feed.\n const firstProject = projectNames[0]\n const firstProjectInfo = projectsInfo[firstProject] || {}\n const firstEntityData = entityDetailsData[0] || {}\n\n // build the full entity path for the first entity\n const [entityPathSegments, entityPathVersions] = useGetEntityPath({\n entity: firstEntityData,\n entityType: activeEntityType,\n projectName: firstProject,\n isLoading: isFetchingEntitiesDetails,\n })\n\n useEffect(() => {\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === 'Escape' && onClose) {\n // Don't trigger if we're in an input element\n const target = e.target as HTMLElement\n const isInputElement =\n ['INPUT', 'TEXTAREA', 'SELECT'].includes(target.tagName) || target.isContentEditable\n\n if (!isInputElement) return\n\n // don't trigger if the viewer is open and panel not in slideout mode\n if (isSlideOut === false && target.closest('#viewer-dialog')) return\n\n onClose()\n }\n }\n\n window.addEventListener('keydown', handleKeyDown)\n return () => window.removeEventListener('keydown', handleKeyDown)\n }, [onClose, isSlideOut])\n\n const { requestPipWindow } = usePiPWindow()\n\n const handleOpenPip = () => {\n openPip({\n entityType: activeEntityType,\n entities: entitiesToQuery,\n scope: scope,\n })\n requestPipWindow(500, 500)\n }\n\n const isCommentingEnabled = () => {\n // cannot comment on multiple projects\n if (projectNames.length > 1) return false\n if (isGuest) {\n // Guest can only comment in review sessions (for now)\n if (!entityListId) return false\n // Guest must have at least one category set for list\n const guestHasCategory = Object.prototype.hasOwnProperty.call(\n guestCategories,\n user.attrib?.email || '',\n )\n if (!guestHasCategory) return false\n }\n return true\n }\n\n return (\n <>\n <Styled.Panel className=\"details-panel\">\n <Styled.Toolbar>\n {/* TODO FIX PATH */}\n <EntityPath\n segments={entityPathSegments}\n versions={entityPathVersions}\n projectName={firstProject}\n hideProjectName={isSlideOut}\n isLoading={isFetchingEntitiesDetails || !entityPathSegments.length}\n entityType={activeEntityType}\n scope={scope}\n // @ts-ignore\n entityTypeIcons={entityTypeIcons}\n />\n <Styled.RightTools className=\"right-tools\">\n <Watchers\n entities={entitiesToQuery}\n entityType={entityType}\n options={projectUsers || []}\n onWatchersUpdate={onWatchersUpdate && onWatchersUpdate}\n userName={user.name}\n />\n <Button\n icon=\"picture_in_picture\"\n variant={'text'}\n data-tooltip=\"Picture in Picture\"\n onClick={handleOpenPip}\n />\n\n {onClose && (\n <Button\n icon=\"close\"\n variant={'text'}\n onClick={() => onClose && onClose()}\n data-shortcut={'Escape'}\n />\n )}\n </Styled.RightTools>\n </Styled.Toolbar>\n\n <DetailsPanelHeader\n entityType={activeEntityType}\n entitySubTypes={activeEntitySubTypes}\n entities={entityDetailsData}\n users={projectUsers}\n disabledAssignees={disabledProjectUsers}\n disabledStatuses={disabledStatuses}\n tagsOptions={tagsOptions}\n isFetching={isFetchingEntitiesDetails}\n isCompact={isCompact}\n currentTab={currentTab}\n onTabChange={setTab}\n entityTypeIcons={entityTypeIcons}\n onOpenViewer={(args) => onOpenViewer?.(args)}\n onEntityFocus={onEntityFocus}\n />\n {isFeed && !isError && (\n <FeedWrapper\n entityType={activeEntityType}\n entities={entityDetailsData}\n activeUsers={activeProjectUsers || []}\n projectInfo={firstProjectInfo}\n projectName={firstProject}\n disabled={!isCommentingEnabled()}\n scope={scope}\n statuses={allStatuses}\n readOnly={false}\n entityListId={entityListId}\n annotations={annotations}\n removeAnnotation={removeAnnotation}\n exportAnnotationComposite={exportAnnotationComposite}\n />\n )}\n {currentTab === 'files' && (\n <DetailsPanelFiles\n entities={entityDetailsData}\n scope={scope}\n isLoadingVersion={isFetchingEntitiesDetails}\n />\n )}\n {currentTab === 'details' && (\n <FeedContextWrapper\n entityType={activeEntityType}\n entities={entityDetailsData}\n activeUsers={activeProjectUsers || []}\n projectInfo={firstProjectInfo}\n projectName={firstProject}\n disabled={!isCommentingEnabled()}\n scope={scope}\n statuses={allStatuses}\n readOnly={false}\n annotations={annotations}\n removeAnnotation={removeAnnotation}\n exportAnnotationComposite={exportAnnotationComposite}\n >\n <DetailsPanelDetails\n entities={entityDetailsData}\n isLoading={isFetchingEntitiesDetails}\n />\n </FeedContextWrapper>\n )}\n </Styled.Panel>\n </>\n )\n}\n"],"names":["entitiesWithoutFeed","DetailsPanel","entityType","entitySubTypes","entitiesData","entities","tagsOptions","disabledStatuses","projectUsers","disabledProjectUsers","activeProjectUsers","projectsInfo","projectNames","isSlideOut","style","scope","isCompact","onClose","onWatchersUpdate","onOpenViewer","onEntityFocus","onOpen","annotations","removeAnnotation","exportAnnotationComposite","entityListId","guestCategories","closeSlideOut","openPip","user","isGuest","contextEntities","useDetailsPanelContext","currentTab","setTab","isFeed","useScopedDetailsPanel","hasCalledOnOpen","useRef","activeEntityType","activeEntities","activeEntitySubTypes","useEffect","projectInfo","useMemo","mergeProjectInfo","entityTypeIcons","task","acc","folder","productTypes","key","product","entitiesToQuery","entity","entityDetailsData","isFetchingEntitiesDetails","isError","originalArgs","useGetEntitiesDetailsPanelQuery","detailsPanelEntityTypes","allStatuses","getAllProjectStatuses","firstProject","firstProjectInfo","firstEntityData","entityPathSegments","entityPathVersions","useGetEntityPath","handleKeyDown","e","target","requestPipWindow","usePiPWindow","handleOpenPip","isCommentingEnabled","_a","jsxs","Styled.Panel","Styled.Toolbar","jsx","EntityPath","Styled.RightTools","Watchers","Button","DetailsPanelHeader","args","FeedWrapper","DetailsPanelFiles","FeedContextWrapper","DetailsPanelDetails"],"mappings":"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"}
1
+ {"version":3,"file":"DetailsPanel.es.js","sources":["../../../../../src/containers/DetailsPanel/DetailsPanel.tsx"],"sourcesContent":["import { Button } from '@ynput/ayon-react-components'\nimport React, { useEffect, useMemo, useRef } from 'react'\nimport * as Styled from './DetailsPanel.styled'\n\n// shared\nimport { useGetEntitiesDetailsPanelQuery, detailsPanelEntityTypes } from '@shared/api'\nimport type { ProjectModel, Tag, DetailsPanelEntityType } from '@shared/api'\nimport { DetailsPanelDetails, EntityPath, Watchers } from '@shared/components'\nimport { usePiPWindow } from '@shared/context/pip/PiPProvider'\nimport { productTypes } from '@shared/util'\nimport { useDetailsPanelContext, usePowerpack, useScopedDetailsPanel, DetailsPanelTab } from '@shared/context'\n\nimport DetailsPanelHeader from './DetailsPanelHeader/DetailsPanelHeader'\nimport DetailsPanelFiles from './DetailsPanelFiles'\nimport useGetEntityPath from './hooks/useGetEntityPath'\nimport getAllProjectStatuses from './helpers/getAllProjectsStatuses'\nimport FeedWrapper from './FeedWrapper'\nimport FeedContextWrapper from './FeedContextWrapper'\nimport mergeProjectInfo from './helpers/mergeProjectInfo'\n\nexport const entitiesWithoutFeed = ['product', 'representation']\n\ntype User = { avatarUrl: string; name: string; fullName?: string }\n\nexport type DetailsPanelProps = {\n entityType: DetailsPanelEntityType\n entitySubTypes?: string[] // used to get actions before the entity has loaded\n entitiesData?: { id: string; label: string; type: DetailsPanelEntityType }[]\n entities?: { id: string; projectName: string }[]\n tagsOptions?: Tag[]\n disabledStatuses?: string[]\n projectUsers?: User[]\n disabledProjectUsers?: string[]\n activeProjectUsers?: string[]\n projectsInfo?: Record<string, ProjectModel>\n projectNames?: string[]\n isSlideOut?: boolean\n style?: React.CSSProperties\n scope: string\n isCompact?: boolean\n onClose?: () => void\n onWatchersUpdate?: (added: any[], removed: any[]) => void\n onOpenViewer?: (entity: any) => void\n onEntityFocus?: (id: string, entityType: DetailsPanelEntityType) => void\n onOpen?: () => void\n // annotations\n annotations?: any\n removeAnnotation?: (id: string) => void\n exportAnnotationComposite?: (id: string) => Promise<Blob | null>\n entityListId?: string\n guestCategories?: Record<string, string> // only used for guests to find if they have access to any categories\n // optional tab state for independent tab management\n}\n\nexport const DetailsPanel = ({\n entityType,\n entitySubTypes = [],\n // entities is data we already have from kanban\n entitiesData = [],\n // entityIds are used to get the full details data for the entities\n entities = [],\n tagsOptions = [],\n disabledStatuses,\n projectUsers,\n disabledProjectUsers,\n activeProjectUsers,\n projectsInfo = {},\n projectNames = [],\n isSlideOut = false,\n style = {},\n scope,\n isCompact = false,\n onClose,\n onWatchersUpdate,\n onOpenViewer,\n onEntityFocus,\n onOpen,\n // annotations\n annotations,\n removeAnnotation,\n exportAnnotationComposite,\n entityListId,\n guestCategories = {},\n // optional tab state for independent tab management\n}: DetailsPanelProps) => {\n const {\n closeSlideOut,\n openPip,\n user,\n isGuest,\n entities: contextEntities,\n } = useDetailsPanelContext()\n const { currentTab, setTab, isFeed } = useScopedDetailsPanel(scope)\n const hasCalledOnOpen = useRef(false)\n\n // Use context entities if available, otherwise use props\n const activeEntityType = contextEntities?.entityType ?? entityType\n const activeEntities = contextEntities?.entities ?? entities\n const activeEntitySubTypes = contextEntities?.entitySubTypes ?? entitySubTypes\n\n // Fire onOpen callback once when component mounts and renders\n useEffect(() => {\n if (onOpen && !hasCalledOnOpen.current) {\n hasCalledOnOpen.current = true\n onOpen()\n }\n }, [])\n\n // Force details tab for specific entity types\n useEffect(() => {\n if (entitiesWithoutFeed.includes(activeEntityType) && currentTab !== 'details') {\n setTab('details')\n }\n }, [activeEntityType, currentTab, setTab])\n\n // reduce projectsInfo to selected projects and into one\n const projectInfo = useMemo(\n () => mergeProjectInfo(projectsInfo, projectNames),\n [projectsInfo, projectNames],\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: Object.entries(productTypes).reduce(\n (acc, [key, product]) => ({ ...acc, [key]: product.icon }),\n {},\n ),\n }),\n [projectInfo],\n )\n\n // check if tab needs to be updated when entity type changes\n // for example when switching from version to task, task doesn't have reps tab\n // if reps tab was selected, set default to feed\n useEffect(() => {\n if (currentTab === 'files') {\n // check entity type is still version\n if (activeEntityType !== 'version') {\n setTab('activity')\n }\n }\n }, [activeEntityType, currentTab, scope])\n\n // now we get the full details data for selected entities\n let entitiesToQuery = activeEntities.length\n ? activeEntities.map((entity) => ({ id: entity.id, projectName: entity.projectName }))\n : // @ts-expect-error = not sure what's going on with entitiesData, we should try and remove it\n entitiesData.map((entity) => ({ id: entity.id, projectName: entity.projectName }))\n\n entitiesToQuery = entitiesToQuery.filter((entity) => entity.id)\n\n const {\n data: entityDetailsData = [],\n isFetching: isFetchingEntitiesDetails,\n isError,\n originalArgs,\n } = useGetEntitiesDetailsPanelQuery(\n { entityType: activeEntityType, entities: entitiesToQuery },\n {\n skip: !entitiesToQuery.length || !detailsPanelEntityTypes.includes(activeEntityType),\n },\n )\n\n // the entity changes then we close the slide out\n useEffect(() => {\n if (!isSlideOut) {\n closeSlideOut()\n }\n }, [originalArgs, isSlideOut])\n\n // TODO: merge current entities data with fresh details data\n\n const allStatuses = getAllProjectStatuses(projectsInfo)\n\n // get the first project name and info to be used in the feed.\n const firstProject = projectNames[0]\n const firstProjectInfo = projectsInfo[firstProject] || {}\n const firstEntityData = entityDetailsData[0] || {}\n\n // build the full entity path for the first entity\n const [entityPathSegments, entityPathVersions] = useGetEntityPath({\n entity: firstEntityData,\n entityType: activeEntityType,\n projectName: firstProject,\n isLoading: isFetchingEntitiesDetails,\n })\n\n useEffect(() => {\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === 'Escape' && onClose) {\n // Don't trigger if we're in an input element\n const target = e.target as HTMLElement\n const isInputElement =\n ['INPUT', 'TEXTAREA', 'SELECT'].includes(target.tagName) || target.isContentEditable\n\n if (!isInputElement) return\n\n // don't trigger if the viewer is open and panel not in slideout mode\n if (isSlideOut === false && target.closest('#viewer-dialog')) return\n\n onClose()\n }\n }\n\n window.addEventListener('keydown', handleKeyDown)\n return () => window.removeEventListener('keydown', handleKeyDown)\n }, [onClose, isSlideOut])\n\n const { requestPipWindow } = usePiPWindow()\n\n const handleOpenPip = () => {\n openPip({\n entityType: activeEntityType,\n entities: entitiesToQuery,\n scope: scope,\n })\n requestPipWindow(500, 500)\n }\n\n const isCommentingEnabled = () => {\n // cannot comment on multiple projects\n if (projectNames.length > 1) return false\n if (isGuest) {\n // Guest can only comment in review sessions (for now)\n if (!entityListId) return false\n // Guest must have at least one category set for list\n const guestHasCategory = Object.prototype.hasOwnProperty.call(\n guestCategories,\n user.attrib?.email || '',\n )\n if (!guestHasCategory) return false\n }\n return true\n }\n\n return (\n <>\n <Styled.Panel className=\"details-panel\">\n <Styled.Toolbar>\n {/* TODO FIX PATH */}\n <EntityPath\n segments={entityPathSegments}\n versions={entityPathVersions}\n projectName={firstProject}\n hideProjectName={isSlideOut}\n isLoading={isFetchingEntitiesDetails || !entityPathSegments.length}\n entityType={activeEntityType}\n scope={scope}\n // @ts-ignore\n entityTypeIcons={entityTypeIcons}\n />\n <Styled.RightTools className=\"right-tools\">\n <Watchers\n entities={entitiesToQuery}\n entityType={entityType}\n options={projectUsers || []}\n onWatchersUpdate={onWatchersUpdate && onWatchersUpdate}\n userName={user.name}\n />\n <Button\n icon=\"picture_in_picture\"\n variant={'text'}\n data-tooltip=\"Picture in Picture\"\n onClick={handleOpenPip}\n />\n\n {onClose && (\n <Button\n icon=\"close\"\n variant={'text'}\n onClick={() => onClose && onClose()}\n data-shortcut={'Escape'}\n />\n )}\n </Styled.RightTools>\n </Styled.Toolbar>\n\n <DetailsPanelHeader\n entityType={activeEntityType}\n entitySubTypes={activeEntitySubTypes}\n entities={entityDetailsData}\n users={projectUsers}\n disabledAssignees={disabledProjectUsers}\n disabledStatuses={disabledStatuses}\n tagsOptions={tagsOptions}\n isFetching={isFetchingEntitiesDetails}\n isCompact={isCompact}\n currentTab={currentTab}\n onTabChange={setTab}\n entityTypeIcons={entityTypeIcons}\n onOpenViewer={(args) => onOpenViewer?.(args)}\n onEntityFocus={onEntityFocus}\n />\n {isFeed && !isError && (\n <FeedWrapper\n entityType={activeEntityType}\n entities={entityDetailsData}\n activeUsers={activeProjectUsers || []}\n projectInfo={firstProjectInfo}\n projectName={firstProject}\n disabled={!isCommentingEnabled()}\n scope={scope}\n statuses={allStatuses}\n readOnly={false}\n entityListId={entityListId}\n annotations={annotations}\n removeAnnotation={removeAnnotation}\n exportAnnotationComposite={exportAnnotationComposite}\n currentTab={currentTab}\n setCurrentTab={setTab}\n />\n )}\n {currentTab === 'files' && (\n <DetailsPanelFiles\n entities={entityDetailsData}\n scope={scope}\n isLoadingVersion={isFetchingEntitiesDetails}\n />\n )}\n {currentTab === 'details' && (\n <FeedContextWrapper\n entityType={activeEntityType}\n entities={entityDetailsData}\n activeUsers={activeProjectUsers || []}\n projectInfo={firstProjectInfo}\n projectName={firstProject}\n disabled={!isCommentingEnabled()}\n scope={scope}\n statuses={allStatuses}\n readOnly={false}\n annotations={annotations}\n removeAnnotation={removeAnnotation}\n exportAnnotationComposite={exportAnnotationComposite}\n >\n <DetailsPanelDetails\n entities={entityDetailsData}\n isLoading={isFetchingEntitiesDetails}\n />\n </FeedContextWrapper>\n )}\n </Styled.Panel>\n </>\n )\n}\n"],"names":["entitiesWithoutFeed","DetailsPanel","entityType","entitySubTypes","entitiesData","entities","tagsOptions","disabledStatuses","projectUsers","disabledProjectUsers","activeProjectUsers","projectsInfo","projectNames","isSlideOut","style","scope","isCompact","onClose","onWatchersUpdate","onOpenViewer","onEntityFocus","onOpen","annotations","removeAnnotation","exportAnnotationComposite","entityListId","guestCategories","closeSlideOut","openPip","user","isGuest","contextEntities","useDetailsPanelContext","currentTab","setTab","isFeed","useScopedDetailsPanel","hasCalledOnOpen","useRef","activeEntityType","activeEntities","activeEntitySubTypes","useEffect","projectInfo","useMemo","mergeProjectInfo","entityTypeIcons","task","acc","folder","productTypes","key","product","entitiesToQuery","entity","entityDetailsData","isFetchingEntitiesDetails","isError","originalArgs","useGetEntitiesDetailsPanelQuery","detailsPanelEntityTypes","allStatuses","getAllProjectStatuses","firstProject","firstProjectInfo","firstEntityData","entityPathSegments","entityPathVersions","useGetEntityPath","handleKeyDown","e","target","requestPipWindow","usePiPWindow","handleOpenPip","isCommentingEnabled","_a","jsxs","Styled.Panel","Styled.Toolbar","jsx","EntityPath","Styled.RightTools","Watchers","Button","DetailsPanelHeader","args","FeedWrapper","DetailsPanelFiles","FeedContextWrapper","DetailsPanelDetails"],"mappings":"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"}