@ynput/ayon-frontend-shared 0.2.38 → 0.2.40

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 (651) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +72 -66
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +169 -167
  6. package/dist/ProjectTreeTable.es.js.map +1 -1
  7. package/dist/Views.cjs.js.map +1 -1
  8. package/dist/Views.es.js.map +1 -1
  9. package/dist/_virtual/index.cjs10.js +1 -1
  10. package/dist/_virtual/index.cjs11.js +1 -1
  11. package/dist/_virtual/index.cjs12.js +1 -1
  12. package/dist/_virtual/index.cjs2.js +1 -1
  13. package/dist/_virtual/index.cjs3.js +1 -1
  14. package/dist/_virtual/index.cjs4.js +1 -1
  15. package/dist/_virtual/index.es10.js +3 -3
  16. package/dist/_virtual/index.es11.js +5 -5
  17. package/dist/_virtual/index.es12.js +5 -5
  18. package/dist/_virtual/index.es2.js +5 -2
  19. package/dist/_virtual/index.es2.js.map +1 -1
  20. package/dist/_virtual/index.es3.js +2 -5
  21. package/dist/_virtual/index.es3.js.map +1 -1
  22. package/dist/_virtual/index.es4.js +2 -2
  23. package/dist/api.cjs.js +1 -1
  24. package/dist/api.es.js +22 -20
  25. package/dist/api.es.js.map +1 -1
  26. package/dist/components.cjs.js +1 -1
  27. package/dist/components.es.js +139 -133
  28. package/dist/components.es.js.map +1 -1
  29. package/dist/context.cjs.js +1 -1
  30. package/dist/context.es.js +45 -38
  31. package/dist/context.es.js.map +1 -1
  32. package/dist/index.cjs.js +1 -1
  33. package/dist/index.es.js +61 -55
  34. package/dist/index.es.js.map +1 -1
  35. package/dist/node_modules/react-use-websocket/dist/index.cjs.js +1 -1
  36. package/dist/node_modules/react-use-websocket/dist/index.es.js +1 -1
  37. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +1 -1
  38. package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
  39. package/dist/node_modules/rehype/node_modules/vfile/lib/index.cjs.js +1 -1
  40. package/dist/node_modules/rehype/node_modules/vfile/lib/index.es.js +1 -1
  41. package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
  42. package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
  43. package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
  44. package/dist/shared/node_modules/prop-types/index.es.js +1 -1
  45. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
  46. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
  47. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
  48. package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
  49. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
  50. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
  51. package/dist/shared/src/api/generated/graphql.cjs.js +4 -0
  52. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  53. package/dist/shared/src/api/generated/graphql.es.js +4 -0
  54. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  55. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  56. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  57. package/dist/shared/src/api/generated/views.cjs.js.map +1 -1
  58. package/dist/shared/src/api/generated/views.es.js.map +1 -1
  59. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +1 -1
  60. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  61. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +8 -3
  62. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  63. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +1 -1
  64. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
  65. package/dist/shared/src/api/queries/entities/updateEntity.es.js +4 -3
  66. package/dist/shared/src/api/queries/entities/updateEntity.es.js.map +1 -1
  67. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
  68. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  69. package/dist/shared/src/api/queries/overview/updateOverview.es.js +70 -66
  70. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  71. package/dist/shared/src/api/queries/uris/getUris.cjs.js +2 -0
  72. package/dist/shared/src/api/queries/uris/getUris.cjs.js.map +1 -0
  73. package/dist/shared/src/api/queries/uris/getUris.es.js +47 -0
  74. package/dist/shared/src/api/queries/uris/getUris.es.js.map +1 -0
  75. package/dist/shared/src/api/queries/users/getUsers.cjs.js +1 -1
  76. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  77. package/dist/shared/src/api/queries/users/getUsers.es.js +19 -18
  78. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  79. package/dist/shared/src/components/AddonLoadingScreen/AddonLoadingScreen.cjs.js +28 -0
  80. package/dist/shared/src/components/AddonLoadingScreen/AddonLoadingScreen.cjs.js.map +1 -0
  81. package/dist/shared/src/components/AddonLoadingScreen/AddonLoadingScreen.es.js +54 -0
  82. package/dist/shared/src/components/AddonLoadingScreen/AddonLoadingScreen.es.js.map +1 -0
  83. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
  84. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  85. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +3 -2
  86. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  87. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  88. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  89. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +5 -2
  90. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  91. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  92. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  93. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +5 -2
  94. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  95. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
  96. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
  97. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +5 -2
  98. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
  99. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  100. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
  101. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +5 -2
  102. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  103. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  104. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  105. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +75 -69
  106. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  107. package/dist/shared/src/components/EntityPath/EntityPath.cjs.js +1 -1
  108. package/dist/shared/src/components/EntityPath/EntityPath.cjs.js.map +1 -1
  109. package/dist/shared/src/components/EntityPath/EntityPath.es.js +51 -53
  110. package/dist/shared/src/components/EntityPath/EntityPath.es.js.map +1 -1
  111. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
  112. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
  113. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +4 -2
  114. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
  115. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  116. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  117. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +7 -4
  118. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  119. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  120. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  121. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +60 -54
  122. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  123. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
  124. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  125. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +3 -2
  126. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  127. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  128. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  129. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +66 -60
  130. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  131. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
  132. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
  133. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +5 -2
  134. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
  135. package/dist/shared/src/components/Menu/Menu.cjs.js +2 -0
  136. package/dist/shared/src/components/Menu/Menu.cjs.js.map +1 -0
  137. package/dist/shared/src/components/Menu/Menu.es.js +92 -0
  138. package/dist/shared/src/components/Menu/Menu.es.js.map +1 -0
  139. package/dist/shared/src/components/Menu/Menu.styled.cjs.js.map +1 -0
  140. package/dist/shared/src/components/Menu/Menu.styled.es.js.map +1 -0
  141. package/dist/shared/src/components/Menu/MenuContainer.cjs.js +2 -0
  142. package/dist/shared/src/components/Menu/MenuContainer.cjs.js.map +1 -0
  143. package/dist/shared/src/components/Menu/MenuContainer.es.js +88 -0
  144. package/dist/shared/src/components/Menu/MenuContainer.es.js.map +1 -0
  145. package/dist/shared/src/components/Menu/MenuItem.cjs.js +2 -0
  146. package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -0
  147. package/dist/{src/components/Menu/MenuComponents → shared/src/components/Menu}/MenuItem.es.js +26 -24
  148. package/dist/shared/src/components/Menu/MenuItem.es.js.map +1 -0
  149. package/dist/shared/src/components/Menu/MenuList.cjs.js +2 -0
  150. package/dist/shared/src/components/Menu/MenuList.cjs.js.map +1 -0
  151. package/dist/shared/src/components/Menu/MenuList.es.js +131 -0
  152. package/dist/shared/src/components/Menu/MenuList.es.js.map +1 -0
  153. package/dist/shared/src/components/Menu/useMenuPosition.cjs.js +2 -0
  154. package/dist/shared/src/components/Menu/useMenuPosition.cjs.js.map +1 -0
  155. package/dist/shared/src/components/Menu/useMenuPosition.es.js +50 -0
  156. package/dist/shared/src/components/Menu/useMenuPosition.es.js.map +1 -0
  157. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +1 -1
  158. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
  159. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +7 -5
  160. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
  161. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  162. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  163. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +49 -43
  164. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  165. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
  166. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  167. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +46 -40
  168. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  169. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  170. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  171. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +48 -42
  172. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  173. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  174. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  175. package/dist/shared/src/components/RenameForm/RenameForm.es.js +66 -60
  176. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  177. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
  178. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  179. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +3 -2
  180. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  181. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  182. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  183. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +64 -58
  184. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  185. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  186. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  187. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +54 -48
  188. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  189. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  190. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  191. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +53 -47
  192. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  193. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
  194. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  195. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +3 -2
  196. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  197. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  198. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  199. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +219 -190
  200. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  201. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +2 -2
  202. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
  203. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +20 -18
  204. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
  205. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  206. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  207. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +52 -46
  208. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  209. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +2 -2
  210. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
  211. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +13 -11
  212. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
  213. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +2 -2
  214. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  215. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +56 -50
  216. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  217. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  218. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  219. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +5 -4
  220. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  221. package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
  222. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  223. package/dist/shared/src/components/Watchers/Watchers.es.js +3 -2
  224. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  225. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  226. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  227. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +53 -47
  228. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  229. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  230. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  231. package/dist/shared/src/containers/Actions/Actions.es.js +5 -2
  232. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  233. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  234. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  235. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +54 -48
  236. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  237. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  238. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  239. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +293 -229
  240. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  241. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.cjs.js +10 -4
  242. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.cjs.js.map +1 -1
  243. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.es.js +13 -7
  244. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.es.js.map +1 -1
  245. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  246. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  247. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +49 -43
  248. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  249. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  250. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  251. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +68 -62
  252. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  253. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  254. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  255. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +92 -86
  256. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  257. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  258. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  259. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +9 -5
  260. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  261. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js +1 -1
  262. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js.map +1 -1
  263. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js +194 -5
  264. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js.map +1 -1
  265. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js +1 -1
  266. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js.map +1 -1
  267. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js +4 -2
  268. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js.map +1 -1
  269. package/dist/shared/src/containers/DetailsPanel/hooks/useDetailsPanelURLSync.cjs.js +2 -0
  270. package/dist/shared/src/containers/DetailsPanel/hooks/useDetailsPanelURLSync.cjs.js.map +1 -0
  271. package/dist/shared/src/containers/DetailsPanel/hooks/useDetailsPanelURLSync.es.js +21 -0
  272. package/dist/shared/src/containers/DetailsPanel/hooks/useDetailsPanelURLSync.es.js.map +1 -0
  273. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  274. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  275. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +20 -17
  276. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  277. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  278. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  279. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +49 -43
  280. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  281. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  282. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  283. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +53 -47
  284. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  285. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  286. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  287. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +53 -47
  288. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  289. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  290. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  291. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +53 -47
  292. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  293. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  294. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  295. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +5 -2
  296. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  297. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  298. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  299. package/dist/shared/src/containers/Feed/Feed.es.js +109 -99
  300. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  301. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  302. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  303. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +446 -212
  304. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  305. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js +20 -16
  306. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js.map +1 -1
  307. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.es.js +21 -17
  308. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.es.js.map +1 -1
  309. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +2 -0
  310. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -0
  311. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +288 -0
  312. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -0
  313. package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js +1 -1
  314. package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js.map +1 -1
  315. package/dist/shared/src/containers/Feed/components/ActivityItem.es.js +23 -11
  316. package/dist/shared/src/containers/Feed/components/ActivityItem.es.js.map +1 -1
  317. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
  318. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
  319. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +4 -2
  320. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
  321. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +2 -2
  322. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  323. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +372 -183
  324. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  325. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -1
  326. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
  327. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +4 -2
  328. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
  329. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
  330. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
  331. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +12 -10
  332. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
  333. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
  334. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
  335. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +28 -26
  336. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
  337. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  338. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  339. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +194 -5
  340. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  341. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  342. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  343. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +8 -5
  344. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  345. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  346. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  347. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +3 -2
  348. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  349. package/dist/shared/src/containers/Feed/hooks/useScrollToHighlighted.cjs.js +1 -1
  350. package/dist/shared/src/containers/Feed/hooks/useScrollToHighlighted.cjs.js.map +1 -1
  351. package/dist/shared/src/containers/Feed/hooks/useScrollToHighlighted.es.js +24 -26
  352. package/dist/shared/src/containers/Feed/hooks/useScrollToHighlighted.es.js.map +1 -1
  353. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  354. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  355. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +434 -435
  356. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  357. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  358. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  359. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +126 -120
  360. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  361. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +2 -2
  362. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  363. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +52 -46
  364. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  365. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  366. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  367. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +57 -51
  368. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  369. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  370. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  371. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +79 -72
  372. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  373. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  374. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  375. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +7 -4
  376. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  377. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
  378. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
  379. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +1 -1
  380. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -1
  381. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +72 -65
  382. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -1
  383. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  384. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  385. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +47 -41
  386. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  387. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
  388. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  389. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +12 -10
  390. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  391. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  392. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  393. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +8 -5
  394. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  395. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  396. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  397. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +5 -2
  398. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  399. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  400. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  401. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +55 -49
  402. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  403. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  404. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  405. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +81 -66
  406. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  407. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  408. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  409. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +51 -45
  410. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  411. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  412. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  413. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +106 -111
  414. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  415. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  416. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  417. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +51 -45
  418. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  419. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  420. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  421. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +51 -45
  422. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  423. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  424. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  425. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +54 -48
  426. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  427. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  428. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  429. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +122 -119
  430. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  431. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  432. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  433. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +61 -55
  434. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  435. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  436. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  437. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +45 -39
  438. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  439. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js +1 -1
  440. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js.map +1 -1
  441. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js +98 -94
  442. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js.map +1 -1
  443. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  444. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  445. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +62 -56
  446. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  447. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js +1 -1
  448. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map +1 -1
  449. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js +22 -20
  450. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
  451. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +2 -2
  452. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  453. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +19 -17
  454. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  455. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  456. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  457. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +68 -62
  458. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  459. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  460. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  461. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +51 -45
  462. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  463. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.cjs.js +1 -1
  464. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.cjs.js.map +1 -1
  465. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.es.js +45 -44
  466. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.es.js.map +1 -1
  467. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  468. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  469. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +120 -114
  470. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  471. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  472. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  473. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +53 -47
  474. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  475. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  476. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  477. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +5 -2
  478. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  479. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +1 -1
  480. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
  481. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +14 -12
  482. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
  483. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  484. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  485. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +90 -91
  486. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  487. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  488. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  489. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +5 -2
  490. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  491. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js +1 -1
  492. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -1
  493. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js +5 -2
  494. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -1
  495. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
  496. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
  497. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +3 -2
  498. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
  499. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
  500. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
  501. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +3 -2
  502. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
  503. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  504. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  505. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +3 -2
  506. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  507. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  508. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  509. package/dist/shared/src/context/AddonProjectContext.es.js +5 -4
  510. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  511. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  512. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  513. package/dist/shared/src/context/DetailsPanelContext.es.js +117 -75
  514. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  515. package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
  516. package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
  517. package/dist/shared/src/context/GlobalContext.es.js +5 -4
  518. package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
  519. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  520. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  521. package/dist/shared/src/context/PowerpackContext.es.js +18 -15
  522. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  523. package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
  524. package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
  525. package/dist/shared/src/context/ProjectContext.es.js +44 -40
  526. package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
  527. package/dist/shared/src/context/ProjectFoldersContext.cjs.js +2 -0
  528. package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -0
  529. package/dist/shared/src/context/ProjectFoldersContext.es.js +177 -0
  530. package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -0
  531. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  532. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  533. package/dist/shared/src/context/RemoteModulesContext.es.js +5 -4
  534. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  535. package/dist/shared/src/context/UriContext.cjs.js +2 -0
  536. package/dist/shared/src/context/UriContext.cjs.js.map +1 -0
  537. package/dist/shared/src/context/UriContext.es.js +131 -0
  538. package/dist/shared/src/context/UriContext.es.js.map +1 -0
  539. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  540. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  541. package/dist/shared/src/context/WebsocketContext.es.js +51 -45
  542. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  543. package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
  544. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  545. package/dist/shared/src/hooks/useActionTriggers.es.js +3 -2
  546. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  547. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  548. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  549. package/dist/shared/src/hooks/useEntityUpdate.es.js +5 -2
  550. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  551. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js +1 -1
  552. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
  553. package/dist/shared/src/hooks/useGetEntityGroups.es.js +3 -2
  554. package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
  555. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
  556. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
  557. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +5 -2
  558. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
  559. package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
  560. package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
  561. package/dist/shared/src/hooks/useHierarchyTable.es.js +43 -119
  562. package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
  563. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
  564. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  565. package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
  566. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  567. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  568. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  569. package/dist/shared/src/hooks/useUserProjectConfig.es.js +5 -2
  570. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  571. package/dist/shared/src/util/extractEntityHierarchyFromParents.cjs.js +2 -0
  572. package/dist/shared/src/util/extractEntityHierarchyFromParents.cjs.js.map +1 -0
  573. package/dist/shared/src/util/extractEntityHierarchyFromParents.es.js +25 -0
  574. package/dist/shared/src/util/extractEntityHierarchyFromParents.es.js.map +1 -0
  575. package/dist/shared/src/util/uriUtils.cjs.js +2 -0
  576. package/dist/shared/src/util/uriUtils.cjs.js.map +1 -0
  577. package/dist/shared/src/util/uriUtils.es.js +49 -0
  578. package/dist/shared/src/util/uriUtils.es.js.map +1 -0
  579. package/dist/types/api/generated/graphql.d.ts +55 -4
  580. package/dist/types/api/generated/graphqlLinks.d.ts +47 -0
  581. package/dist/types/api/generated/views.d.ts +15 -13
  582. package/dist/types/api/queries/entities/transformDetailsPanelData.d.ts +1 -0
  583. package/dist/types/api/queries/entityLists/getLists.d.ts +180 -180
  584. package/dist/types/api/queries/index.d.ts +1 -0
  585. package/dist/types/api/queries/uris/getUris.d.ts +161 -0
  586. package/dist/types/api/queries/uris/index.d.ts +1 -0
  587. package/dist/types/components/AddonLoadingScreen/AddonLoadingScreen.d.ts +25 -0
  588. package/dist/types/components/AddonLoadingScreen/index.d.ts +1 -0
  589. package/dist/types/components/Menu/Menu.d.ts +30 -0
  590. package/dist/types/components/Menu/Menu.styled.d.ts +8 -0
  591. package/dist/types/components/Menu/MenuContainer.d.ts +14 -0
  592. package/dist/types/components/Menu/MenuItem.d.ts +21 -0
  593. package/dist/types/components/Menu/MenuList.d.ts +21 -0
  594. package/dist/types/components/Menu/index.d.ts +4 -0
  595. package/dist/types/components/Menu/useMenuPosition.d.ts +12 -0
  596. package/dist/types/components/SearchFilter/useBuildFilterOptions.d.ts +3 -1
  597. package/dist/types/components/index.d.ts +32 -31
  598. package/dist/types/containers/DetailsPanel/DetailsPanel.d.ts +6 -2
  599. package/dist/types/containers/DetailsPanel/FeedWrapper.d.ts +1 -0
  600. package/dist/types/containers/DetailsPanel/hooks/useDetailsPanelURLSync.d.ts +12 -0
  601. package/dist/types/containers/Feed/Feed.d.ts +2 -1
  602. package/dist/types/containers/Feed/components/ActivityComment/ActivityComment.d.ts +2 -1
  603. package/dist/types/containers/Feed/components/ActivityComment/ActivityCommentMenu.d.ts +9 -0
  604. package/dist/types/containers/Feed/components/ActivityItem.d.ts +1 -0
  605. package/dist/types/containers/Feed/hooks/useScrollToHighlighted.d.ts +2 -1
  606. package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +2 -0
  607. package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +4 -1
  608. package/dist/types/containers/ProjectTreeTable/hooks/useUpdateTableData.d.ts +1 -0
  609. package/dist/types/containers/Views/index.d.ts +1 -1
  610. package/dist/types/context/AddonProjectContext.d.ts +12 -7
  611. package/dist/types/context/DetailsPanelContext.d.ts +1 -0
  612. package/dist/types/context/ProjectFoldersContext.d.ts +19 -0
  613. package/dist/types/context/UriContext.d.ts +40 -0
  614. package/dist/types/context/index.d.ts +2 -0
  615. package/dist/types/hooks/useGroupByRemoteModules.d.ts +1 -2
  616. package/dist/types/util/extractEntityHierarchyFromParents.d.ts +6 -0
  617. package/dist/types/util/index.d.ts +2 -0
  618. package/dist/types/util/uriUtils.d.ts +15 -0
  619. package/dist/util.cjs.js +1 -1
  620. package/dist/util.es.js +44 -37
  621. package/dist/util.es.js.map +1 -1
  622. package/package.json +1 -1
  623. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +0 -2
  624. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +0 -1
  625. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +0 -263
  626. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +0 -1
  627. package/dist/src/components/Menu/MenuComponents/Menu.cjs.js +0 -2
  628. package/dist/src/components/Menu/MenuComponents/Menu.cjs.js.map +0 -1
  629. package/dist/src/components/Menu/MenuComponents/Menu.es.js +0 -82
  630. package/dist/src/components/Menu/MenuComponents/Menu.es.js.map +0 -1
  631. package/dist/src/components/Menu/MenuComponents/Menu.styled.cjs.js.map +0 -1
  632. package/dist/src/components/Menu/MenuComponents/Menu.styled.es.js.map +0 -1
  633. package/dist/src/components/Menu/MenuComponents/MenuContainer2.cjs.js +0 -2
  634. package/dist/src/components/Menu/MenuComponents/MenuContainer2.cjs.js.map +0 -1
  635. package/dist/src/components/Menu/MenuComponents/MenuContainer2.es.js +0 -80
  636. package/dist/src/components/Menu/MenuComponents/MenuContainer2.es.js.map +0 -1
  637. package/dist/src/components/Menu/MenuComponents/MenuItem.cjs.js +0 -2
  638. package/dist/src/components/Menu/MenuComponents/MenuItem.cjs.js.map +0 -1
  639. package/dist/src/components/Menu/MenuComponents/MenuItem.es.js.map +0 -1
  640. package/dist/src/components/Menu/MenuComponents/MenuList.cjs.js +0 -2
  641. package/dist/src/components/Menu/MenuComponents/MenuList.cjs.js.map +0 -1
  642. package/dist/src/components/Menu/MenuComponents/MenuList.es.js +0 -135
  643. package/dist/src/components/Menu/MenuComponents/MenuList.es.js.map +0 -1
  644. package/dist/src/components/Menu/MenuComponents/useMenuPosition.cjs.js +0 -2
  645. package/dist/src/components/Menu/MenuComponents/useMenuPosition.cjs.js.map +0 -1
  646. package/dist/src/components/Menu/MenuComponents/useMenuPosition.es.js +0 -35
  647. package/dist/src/components/Menu/MenuComponents/useMenuPosition.es.js.map +0 -1
  648. package/dist/types/components/RemotePage/RemotePageWrapper.d.ts +0 -29
  649. package/dist/types/components/RemotePage/index.d.ts +0 -1
  650. /package/dist/{src/components/Menu/MenuComponents → shared/src/components/Menu}/Menu.styled.cjs.js +0 -0
  651. /package/dist/{src/components/Menu/MenuComponents → shared/src/components/Menu}/Menu.styled.es.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ViewsMenuContainer.es.js","sources":["../../../../../../src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.tsx"],"sourcesContent":["import { FC, useCallback, useEffect, useRef } from 'react'\nimport { createPortal } from 'react-dom'\nimport { useViewsContext } from '../context/ViewsContext'\nimport { getViewsPortalContainer } from '../utils/portalUtils'\nimport { ViewsMenu } from '../ViewsMenu/ViewsMenu'\nimport { ViewItem } from '../ViewItem/ViewItem'\nimport { Icon } from '@ynput/ayon-react-components'\nimport styled from 'styled-components'\nimport { usePowerpack } from '@shared/context'\nimport * as Styled from '../Views.styled'\nimport { VIEWS_DIALOG_CLASS } from '../ViewsDialogContainer/ViewsDialogContainer'\n\nconst PowerIcon = styled(Icon)`\n color: var(--md-sys-color-tertiary);\n font-variation-settings: 'FILL' 1, 'wght' 200, 'GRAD' 200, 'opsz' 20;\n`\n\n// constants\nexport const WORKING_VIEW_ID = '_working_' as const\nexport const NEW_VIEW_ID = '_new_view_' as const\n\nexport const ViewsMenuContainer: FC = () => {\n const {\n viewType,\n isMenuOpen,\n setIsMenuOpen,\n setEditingView,\n selectedView,\n workingView,\n viewMenuItems,\n } = useViewsContext()\n\n const { powerLicense, setPowerpackDialog } = usePowerpack()\n const modalRef = useRef<HTMLDivElement>(null)\n\n // Modal position calculation\n const portalContainer = getViewsPortalContainer(viewType)\n const buttonRect = portalContainer?.getBoundingClientRect()\n const gap = 8\n const modalPosition = {\n top: buttonRect ? buttonRect.bottom + gap : 0,\n left: buttonRect ? buttonRect.left : 0,\n }\n\n // Close menu when clicking outside or pressing Escape\n useEffect(() => {\n const handleClickOutside = (e: MouseEvent) => {\n const target = e.target as HTMLElement\n\n const clickInsideMenu =\n modalRef.current?.contains(target) || portalContainer?.contains(target)\n const clickInsideEditDialog = document\n .querySelector('.' + VIEWS_DIALOG_CLASS)\n ?.contains(target)\n const clickInsideDropdown = document.querySelector('.options')?.contains(target)\n\n if (!clickInsideMenu && !clickInsideEditDialog && !clickInsideDropdown && isMenuOpen) {\n setIsMenuOpen(false)\n }\n }\n\n const handleEscapeKey = (e: KeyboardEvent) => {\n if (e.key === 'Escape' && isMenuOpen) {\n setIsMenuOpen(false)\n }\n }\n\n document.addEventListener('mousedown', handleClickOutside)\n document.addEventListener('keydown', handleEscapeKey)\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside)\n document.removeEventListener('keydown', handleEscapeKey)\n }\n }, [isMenuOpen, portalContainer, setIsMenuOpen])\n\n // when the view is open, focus the modal\n useEffect(() => {\n if (isMenuOpen && modalRef.current) {\n modalRef.current.focus()\n }\n }, [isMenuOpen])\n\n const handleCreateView = useCallback(() => {\n if (!powerLicense) {\n setPowerpackDialog('sharedViews')\n } else {\n setEditingView(true)\n }\n }, [powerLicense, setPowerpackDialog, setEditingView, setIsMenuOpen])\n\n const selectedViewId =\n !selectedView || workingView?.id === selectedView.id\n ? WORKING_VIEW_ID\n : (selectedView.id as string)\n\n return (\n <>\n {isMenuOpen &&\n createPortal(\n <Styled.ViewsModal style={modalPosition} ref={modalRef} tabIndex={0}>\n <ViewsMenu items={viewMenuItems} selected={selectedViewId} />\n <ViewItem\n label=\"Create new view\"\n id={NEW_VIEW_ID}\n startContent={<Icon icon=\"add\" />}\n endContent={!powerLicense && <PowerIcon icon=\"bolt\" />}\n onClick={handleCreateView}\n tabIndex={0}\n />\n </Styled.ViewsModal>,\n document.body,\n )}\n </>\n )\n}\n"],"names":["PowerIcon","styled","Icon","WORKING_VIEW_ID","NEW_VIEW_ID","ViewsMenuContainer","viewType","isMenuOpen","setIsMenuOpen","setEditingView","selectedView","workingView","viewMenuItems","useViewsContext","powerLicense","setPowerpackDialog","usePowerpack","modalRef","useRef","portalContainer","getViewsPortalContainer","buttonRect","modalPosition","useEffect","handleClickOutside","e","target","clickInsideMenu","_a","clickInsideEditDialog","_b","VIEWS_DIALOG_CLASS","clickInsideDropdown","_c","handleEscapeKey","handleCreateView","useCallback","selectedViewId","createPortal","jsxs","Styled.ViewsModal","jsx","ViewsMenu","ViewItem"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAYA,MAAMA,IAAYC,EAAOC,CAAI;AAAA;AAAA;AAAA,GAMhBC,IAAkB,aAClBC,IAAc,cAEdC,KAAyB,MAAM;AACpC,QAAA;AAAA,IACJ,UAAAC;AAAA,IACA,YAAAC;AAAA,IACA,eAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,cAAAC;AAAA,IACA,aAAAC;AAAA,IACA,eAAAC;AAAA,MACEC,EAAgB,GAEd,EAAE,cAAAC,GAAc,oBAAAC,EAAmB,IAAIC,EAAa,GACpDC,IAAWC,EAAuB,IAAI,GAGtCC,IAAkBC,EAAwBd,CAAQ,GAClDe,IAAaF,KAAA,gBAAAA,EAAiB,yBAE9BG,IAAgB;AAAA,IACpB,KAAKD,IAAaA,EAAW,SAFnB,IAEkC;AAAA,IAC5C,MAAMA,IAAaA,EAAW,OAAO;AAAA,EACvC;AAGA,EAAAE,EAAU,MAAM;AACR,UAAAC,IAAqB,CAACC,MAAkB;;AAC5C,YAAMC,IAASD,EAAE,QAEXE,MACJC,IAAAX,EAAS,YAAT,gBAAAW,EAAkB,SAASF,QAAWP,KAAA,gBAAAA,EAAiB,SAASO,KAC5DG,KAAwBC,IAAA,SAC3B,cAAc,MAAMC,CAAkB,MADX,gBAAAD,EAE1B,SAASJ,IACPM,KAAsBC,IAAA,SAAS,cAAc,UAAU,MAAjC,gBAAAA,EAAoC,SAASP;AAEzE,MAAI,CAACC,KAAmB,CAACE,KAAyB,CAACG,KAAuBzB,KACxEC,EAAc,EAAK;AAAA,IAEvB,GAEM0B,IAAkB,CAACT,MAAqB;AACxC,MAAAA,EAAE,QAAQ,YAAYlB,KACxBC,EAAc,EAAK;AAAA,IAEvB;AAES,oBAAA,iBAAiB,aAAagB,CAAkB,GAChD,SAAA,iBAAiB,WAAWU,CAAe,GAE7C,MAAM;AACF,eAAA,oBAAoB,aAAaV,CAAkB,GACnD,SAAA,oBAAoB,WAAWU,CAAe;AAAA,IACzD;AAAA,EACC,GAAA,CAAC3B,GAAYY,GAAiBX,CAAa,CAAC,GAG/Ce,EAAU,MAAM;AACV,IAAAhB,KAAcU,EAAS,WACzBA,EAAS,QAAQ,MAAM;AAAA,EACzB,GACC,CAACV,CAAU,CAAC;AAET,QAAA4B,IAAmBC,EAAY,MAAM;AACzC,IAAKtB,IAGHL,EAAe,EAAI,IAFnBM,EAAmB,aAAa;AAAA,KAIjC,CAACD,GAAcC,GAAoBN,GAAgBD,CAAa,CAAC,GAE9D6B,IACJ,CAAC3B,MAAgBC,KAAA,gBAAAA,EAAa,QAAOD,EAAa,KAC9CP,IACCO,EAAa;AAEpB,6CAEK,UACCH,KAAA+B;AAAA,IACEC,gBAAAA,OAACC,GAAA,EAAkB,OAAOlB,GAAe,KAAKL,GAAU,UAAU,GAChE,UAAA;AAAA,MAAAwB,gBAAAA,EAAA,IAACC,GAAU,EAAA,OAAO9B,GAAe,UAAUyB,GAAgB;AAAA,MAC3DI,gBAAAA,EAAA;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,OAAM;AAAA,UACN,IAAIvC;AAAA,UACJ,cAAcqC,gBAAAA,EAAAA,IAACvC,GAAK,EAAA,MAAK,MAAM,CAAA;AAAA,UAC/B,YAAY,CAACY,KAAiB2B,gBAAAA,EAAA,IAAAzC,GAAA,EAAU,MAAK,QAAO;AAAA,UACpD,SAASmC;AAAA,UACT,UAAU;AAAA,QAAA;AAAA,MAAA;AAAA,IACZ,GACF;AAAA,IACA,SAAS;AAAA,EAAA,GAEf;AAEJ;"}
1
+ {"version":3,"file":"ViewsMenuContainer.es.js","sources":["../../../../../../src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.tsx"],"sourcesContent":["import { FC, useCallback, useEffect, useRef } from 'react'\nimport { createPortal } from 'react-dom'\nimport { useViewsContext } from '../context/ViewsContext'\nimport { getViewsPortalContainer } from '../utils/portalUtils'\nimport { ViewsMenu } from '../ViewsMenu/ViewsMenu'\nimport { ViewItem } from '../ViewItem/ViewItem'\nimport { Icon } from '@ynput/ayon-react-components'\nimport styled from 'styled-components'\nimport { usePowerpack } from '@shared/context'\nimport * as Styled from '../Views.styled'\nimport { VIEWS_DIALOG_CLASS } from '../ViewsDialogContainer/ViewsDialogContainer'\n\nconst PowerIcon = styled(Icon)`\n color: var(--md-sys-color-tertiary);\n font-variation-settings: 'FILL' 1, 'wght' 200, 'GRAD' 200, 'opsz' 20;\n`\n\n// constants\nexport const WORKING_VIEW_ID = '_working_' as const\nexport const NEW_VIEW_ID = '_new_view_' as const\n\nexport const ViewsMenuContainer: FC = () => {\n const {\n viewType,\n isMenuOpen,\n setIsMenuOpen,\n setEditingView,\n selectedView,\n workingView,\n viewMenuItems,\n } = useViewsContext()\n\n const { powerLicense, setPowerpackDialog } = usePowerpack()\n const modalRef = useRef<HTMLDivElement>(null)\n\n // Modal position calculation\n const portalContainer = getViewsPortalContainer(viewType)\n const buttonRect = portalContainer?.getBoundingClientRect()\n const gap = 8\n const modalPosition = {\n top: buttonRect ? buttonRect.bottom + gap : 0,\n left: buttonRect ? buttonRect.left : 0,\n }\n\n // Close menu when clicking outside or pressing Escape\n useEffect(() => {\n const handleClickOutside = (e: MouseEvent) => {\n const target = e.target as HTMLElement\n\n const clickInsideMenu =\n modalRef.current?.contains(target) || portalContainer?.contains(target)\n const clickInsideEditDialog = document\n .querySelector('.' + VIEWS_DIALOG_CLASS)\n ?.contains(target)\n const clickInsideDropdown = document.querySelector('.options')?.contains(target)\n\n if (!clickInsideMenu && !clickInsideEditDialog && !clickInsideDropdown && isMenuOpen) {\n setIsMenuOpen(false)\n }\n }\n\n const handleEscapeKey = (e: KeyboardEvent) => {\n if (e.key === 'Escape' && isMenuOpen) {\n setIsMenuOpen(false)\n }\n }\n\n document.addEventListener('mousedown', handleClickOutside)\n document.addEventListener('keydown', handleEscapeKey)\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside)\n document.removeEventListener('keydown', handleEscapeKey)\n }\n }, [isMenuOpen, portalContainer, setIsMenuOpen])\n\n // when the view is open, focus the modal\n useEffect(() => {\n if (isMenuOpen && modalRef.current) {\n modalRef.current.focus()\n }\n }, [isMenuOpen])\n\n const handleCreateView = useCallback(() => {\n if (!powerLicense) {\n setPowerpackDialog('sharedViews')\n } else {\n setEditingView(true)\n }\n }, [powerLicense, setPowerpackDialog, setEditingView, setIsMenuOpen])\n\n const selectedViewId =\n !selectedView || workingView?.id === selectedView.id\n ? WORKING_VIEW_ID\n : (selectedView.id as string)\n\n return (\n <>\n {isMenuOpen &&\n createPortal(\n <Styled.ViewsModal style={modalPosition} ref={modalRef} tabIndex={0}>\n <ViewsMenu items={viewMenuItems} selected={selectedViewId} />\n <ViewItem\n label=\"Create new view\"\n id={NEW_VIEW_ID}\n startContent={<Icon icon=\"add\" />}\n endContent={!powerLicense && <PowerIcon icon=\"bolt\" />}\n onClick={handleCreateView}\n tabIndex={0}\n />\n </Styled.ViewsModal>,\n document.body,\n )}\n </>\n )\n}\n"],"names":["PowerIcon","styled","Icon","WORKING_VIEW_ID","NEW_VIEW_ID","ViewsMenuContainer","viewType","isMenuOpen","setIsMenuOpen","setEditingView","selectedView","workingView","viewMenuItems","useViewsContext","powerLicense","setPowerpackDialog","usePowerpack","modalRef","useRef","portalContainer","getViewsPortalContainer","buttonRect","modalPosition","useEffect","handleClickOutside","e","target","clickInsideMenu","_a","clickInsideEditDialog","_b","VIEWS_DIALOG_CLASS","clickInsideDropdown","_c","handleEscapeKey","handleCreateView","useCallback","selectedViewId","createPortal","jsxs","Styled.ViewsModal","jsx","ViewsMenu","ViewItem"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,MAAMA,IAAYC,EAAOC,CAAI;AAAA;AAAA;AAAA,GAMhBC,IAAkB,aAClBC,IAAc,cAEdC,KAAyB,MAAM;AACpC,QAAA;AAAA,IACJ,UAAAC;AAAA,IACA,YAAAC;AAAA,IACA,eAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,cAAAC;AAAA,IACA,aAAAC;AAAA,IACA,eAAAC;AAAA,MACEC,EAAgB,GAEd,EAAE,cAAAC,GAAc,oBAAAC,EAAmB,IAAIC,EAAa,GACpDC,IAAWC,EAAuB,IAAI,GAGtCC,IAAkBC,EAAwBd,CAAQ,GAClDe,IAAaF,KAAA,gBAAAA,EAAiB,yBAE9BG,IAAgB;AAAA,IACpB,KAAKD,IAAaA,EAAW,SAFnB,IAEkC;AAAA,IAC5C,MAAMA,IAAaA,EAAW,OAAO;AAAA,EACvC;AAGA,EAAAE,EAAU,MAAM;AACR,UAAAC,IAAqB,CAACC,MAAkB;;AAC5C,YAAMC,IAASD,EAAE,QAEXE,MACJC,IAAAX,EAAS,YAAT,gBAAAW,EAAkB,SAASF,QAAWP,KAAA,gBAAAA,EAAiB,SAASO,KAC5DG,KAAwBC,IAAA,SAC3B,cAAc,MAAMC,CAAkB,MADX,gBAAAD,EAE1B,SAASJ,IACPM,KAAsBC,IAAA,SAAS,cAAc,UAAU,MAAjC,gBAAAA,EAAoC,SAASP;AAEzE,MAAI,CAACC,KAAmB,CAACE,KAAyB,CAACG,KAAuBzB,KACxEC,EAAc,EAAK;AAAA,IAEvB,GAEM0B,IAAkB,CAACT,MAAqB;AACxC,MAAAA,EAAE,QAAQ,YAAYlB,KACxBC,EAAc,EAAK;AAAA,IAEvB;AAES,oBAAA,iBAAiB,aAAagB,CAAkB,GAChD,SAAA,iBAAiB,WAAWU,CAAe,GAE7C,MAAM;AACF,eAAA,oBAAoB,aAAaV,CAAkB,GACnD,SAAA,oBAAoB,WAAWU,CAAe;AAAA,IACzD;AAAA,EACC,GAAA,CAAC3B,GAAYY,GAAiBX,CAAa,CAAC,GAG/Ce,EAAU,MAAM;AACV,IAAAhB,KAAcU,EAAS,WACzBA,EAAS,QAAQ,MAAM;AAAA,EACzB,GACC,CAACV,CAAU,CAAC;AAET,QAAA4B,IAAmBC,EAAY,MAAM;AACzC,IAAKtB,IAGHL,EAAe,EAAI,IAFnBM,EAAmB,aAAa;AAAA,KAIjC,CAACD,GAAcC,GAAoBN,GAAgBD,CAAa,CAAC,GAE9D6B,IACJ,CAAC3B,MAAgBC,KAAA,gBAAAA,EAAa,QAAOD,EAAa,KAC9CP,IACCO,EAAa;AAEpB,6CAEK,UACCH,KAAA+B;AAAA,IACEC,gBAAAA,OAACC,GAAA,EAAkB,OAAOlB,GAAe,KAAKL,GAAU,UAAU,GAChE,UAAA;AAAA,MAAAwB,gBAAAA,EAAA,IAACC,GAAU,EAAA,OAAO9B,GAAe,UAAUyB,GAAgB;AAAA,MAC3DI,gBAAAA,EAAA;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,OAAM;AAAA,UACN,IAAIvC;AAAA,UACJ,cAAcqC,gBAAAA,EAAAA,IAACvC,GAAK,EAAA,MAAK,MAAM,CAAA;AAAA,UAC/B,YAAY,CAACY,KAAiB2B,gBAAAA,EAAA,IAAAzC,GAAA,EAAU,MAAK,QAAO;AAAA,UACpD,SAASmC;AAAA,UACT,UAAU;AAAA,QAAA;AAAA,MAAA;AAAA,IACZ,GACF;AAAA,IACA,SAAS;AAAA,EAAA,GAEf;AAEJ;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const J=require("../../../../../_virtual/jsx-runtime.cjs.js"),o=require("react");require("react-dom");require("../Views.styled.cjs.js");require("clsx");const X=require("../ViewsMenuContainer/ViewsMenuContainer.cjs.js"),Y=require("../../../hooks/useLocalStorage.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");const Z=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");const h=require("../../../api/queries/views/getViews.cjs.js"),$=require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("lodash");require("react-toastify");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");const j=require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");const N=require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("@ynput/ayon-react-components");require("../ViewsMenu/ViewsMenu.cjs.js");require("uuid");const T=require("../hooks/useBuildViewMenuItems.cjs.js"),ee=require("../hooks/useSaveViewFromCurrent.cjs.js"),re=require("../hooks/useSelectedView.cjs.js"),ie=require("../hooks/useViewsMutations.cjs.js");require("../../../util/pubsub.cjs.js");const ue=require("../hooks/useViewSettingsChanged.cjs.js"),E=o.createContext(null),se=({children:t,viewType:i,projectName:u,dispatch:S,debug:q})=>{let{powerLicense:a}=j.usePowerpack();(q==null?void 0:q.powerLicense)!==void 0&&(console.warn("Using debug power license:",q.powerLicense),a=q.powerLicense);const{user:p}=N.useGlobalContext(),[y,x]=o.useState(!1),[n,f]=o.useState(null),D="viewsMenuCollapsed",[V,v]=Y.useLocalStorage(D,{}),F=s=>{const O=s.visibility==="private"?"myViews":"sharedViews";if(V[O]){const P={...V};P[O]=!1,v(P)}},{onCreateView:Q,onDeleteView:R,onUpdateView:I,onResetWorkingView:g}=ie.useViewsMutations({viewType:i,projectName:u,onCreate:F}),{data:m}=Z.useGetShareOptionsQuery({projectName:u},{skip:!a||!n}),[e,d,C]=re.useSelectedView({viewType:i,projectName:u}),[U,l]=ue.useViewSettingsChanged({viewType:i}),{currentData:w=[],isLoading:b}=h.useListViewsQuery({projectName:u,viewType:i},{skip:!i}),{currentData:r}=h.useGetWorkingViewQuery({projectName:u,viewType:i},{skip:!i}),L=r==null?void 0:r.settings,M=!e||e.id===X.WORKING_VIEW_ID?L:e==null?void 0:e.settings,k=(e==null?void 0:e.id)===(r==null?void 0:r.id),W=U&&k&&C&&C!==(r==null?void 0:r.id)?C:void 0,{currentData:c,isFetching:K}=h.useGetViewQuery({viewId:n,projectName:G(n,w)?void 0:u,viewType:i},{skip:typeof n!="string"||!a}),_=o.useMemo(()=>n===(c==null?void 0:c.id)?c:void 0,[n,c]),{onSaveViewFromCurrent:B}=ee.useSaveViewFromCurrent({viewType:i,projectName:u,viewsList:w,sourceSettings:M,onUpdateView:I}),z=o.useCallback(async()=>{try{await g({existingWorkingViewId:r==null?void 0:r.id,selectedViewId:e==null?void 0:e.id,setSelectedView:d,setSettingsChanged:l,notify:!0})}catch(s){console.error("Failed to reset view:",s)}},[r,g,e,d,l]),A=T.default({viewsList:w,workingView:r,viewType:i,projectName:u,currentUser:p,useWorkingView:!a,editingViewId:W,selectedId:e==null?void 0:e.id,collapsed:V,setCollapsed:v,onResetWorkingView:g,onSelect:s=>{d(s),l(!1),x(!1)},onEdit:s=>f(s),onSave:async s=>B(s)}),H={viewType:i,projectName:u,isMenuOpen:y,editingView:n,currentUser:p,selectedView:e,viewSettings:M,workingSettings:L,editingViewData:_,isLoadingEditingViewData:K,viewsList:w,workingView:r,editingViewId:W,viewMenuItems:A,isLoadingViews:b,isViewWorking:k,shareOptions:m,setIsMenuOpen:x,setEditingView:f,setSelectedView:d,onSettingsChanged:l,onCreateView:Q,onUpdateView:I,onDeleteView:R,resetWorkingView:z,api:$.viewsQueries,dispatch:S};return J.jsxRuntimeExports.jsx(E.Provider,{value:H,children:t})},te=()=>{const t=o.useContext(E);if(!t)throw new Error("useViewsContext must be used within a ViewsProvider");return t},G=(t,i)=>{if(!t)return!0;const u=i.find(S=>S.id===t);return(u==null?void 0:u.scope)==="studio"};exports.ViewsProvider=se;exports.isViewStudioScope=G;exports.useViewsContext=te;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const J=require("../../../../../_virtual/jsx-runtime.cjs.js"),o=require("react"),X=require("../../../../../Views.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");const Y=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");const v=require("../../../api/queries/views/getViews.cjs.js"),Z=require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");const $=require("../hooks/useBuildViewMenuItems.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");const j=require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");const N=require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");const ee=require("../hooks/useSelectedView.cjs.js"),re=require("../hooks/useViewsMutations.cjs.js"),ie=require("../hooks/useSaveViewFromCurrent.cjs.js"),ue=require("../hooks/useViewSettingsChanged.cjs.js"),se=require("../../../hooks/useLocalStorage.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("lodash");require("react-toastify");require("react-redux");require("custom-protocol-check");require("../../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");const te=require("../ViewsMenuContainer/ViewsMenuContainer.cjs.js"),G=o.createContext(null),ne=({children:t,viewType:a,projectName:i,dispatch:S,debug:q})=>{const u=X.viewTypes.includes(a)?a:void 0;let{powerLicense:d}=j.usePowerpack();(q==null?void 0:q.powerLicense)!==void 0&&(console.warn("Using debug power license:",q.powerLicense),d=q.powerLicense);const{user:y}=N.useGlobalContext(),[D,h]=o.useState(!1),[n,x]=o.useState(null),F="viewsMenuCollapsed",[g,f]=se.useLocalStorage(F,{}),Q=s=>{const O=s.visibility==="private"?"myViews":"sharedViews";if(g[O]){const E={...g};E[O]=!1,f(E)}},{onCreateView:R,onDeleteView:m,onUpdateView:I,onResetWorkingView:C}=re.useViewsMutations({viewType:u,projectName:i,onCreate:Q}),{data:T}=Y.useGetShareOptionsQuery({projectName:i},{skip:!d||!n}),[e,w,p]=ee.useSelectedView({viewType:u,projectName:i}),[U,l]=ue.useViewSettingsChanged({viewType:u}),{currentData:V=[],isLoading:b}=v.useListViewsQuery({projectName:i,viewType:u},{skip:!u}),{currentData:r}=v.useGetWorkingViewQuery({projectName:i,viewType:u},{skip:!u}),L=r==null?void 0:r.settings,M=!e||e.id===te.WORKING_VIEW_ID?L:e==null?void 0:e.settings,k=(e==null?void 0:e.id)===(r==null?void 0:r.id),W=U&&k&&p&&p!==(r==null?void 0:r.id)?p:void 0,{currentData:c,isFetching:K}=v.useGetViewQuery({viewId:n,projectName:P(n,V)?void 0:i,viewType:u},{skip:typeof n!="string"||!d}),_=o.useMemo(()=>n===(c==null?void 0:c.id)?c:void 0,[n,c]),{onSaveViewFromCurrent:B}=ie.useSaveViewFromCurrent({viewType:u,projectName:i,viewsList:V,sourceSettings:M,onUpdateView:I}),z=o.useCallback(async()=>{try{await C({existingWorkingViewId:r==null?void 0:r.id,selectedViewId:e==null?void 0:e.id,setSelectedView:w,setSettingsChanged:l,notify:!0})}catch(s){console.error("Failed to reset view:",s)}},[r,C,e,w,l]),A=$.default({viewsList:V,workingView:r,viewType:u,projectName:i,currentUser:y,useWorkingView:!d,editingViewId:W,selectedId:e==null?void 0:e.id,collapsed:g,setCollapsed:f,onResetWorkingView:C,onSelect:s=>{w(s),l(!1),h(!1)},onEdit:s=>x(s),onSave:async s=>B(s)}),H={viewType:u,projectName:i,isMenuOpen:D,editingView:n,currentUser:y,selectedView:e,viewSettings:M,workingSettings:L,editingViewData:_,isLoadingEditingViewData:K,viewsList:V,workingView:r,editingViewId:W,viewMenuItems:A,isLoadingViews:b,isViewWorking:k,shareOptions:T,setIsMenuOpen:h,setEditingView:x,setSelectedView:w,onSettingsChanged:l,onCreateView:R,onUpdateView:I,onDeleteView:m,resetWorkingView:z,api:Z.viewsQueries,dispatch:S};return J.jsxRuntimeExports.jsx(G.Provider,{value:H,children:t})},oe=()=>{const t=o.useContext(G);if(!t)throw new Error("useViewsContext must be used within a ViewsProvider");return t},P=(t,a)=>{if(!t)return!0;const i=a.find(S=>S.id===t);return(i==null?void 0:i.scope)==="studio"};exports.ViewsProvider=ne;exports.isViewStudioScope=P;exports.useViewsContext=oe;
2
2
  //# sourceMappingURL=ViewsContext.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ViewsContext.cjs.js","sources":["../../../../../../src/containers/Views/context/ViewsContext.tsx"],"sourcesContent":["import { createContext, useContext, FC, ReactNode, useState, useMemo, useCallback } from 'react'\nimport { ViewType, WORKING_VIEW_ID } from '../index'\nimport {\n GetDefaultViewApiResponse,\n useGetWorkingViewQuery,\n useGetViewQuery,\n useListViewsQuery,\n UserModel,\n ViewListItemModel,\n viewsQueries,\n useGetShareOptionsQuery,\n ShareOption,\n} from '@shared/api'\nimport useBuildViewMenuItems from '../hooks/useBuildViewMenuItems'\nimport { ViewMenuItem } from '../ViewsMenu/ViewsMenu'\nimport { useGlobalContext, usePowerpack } from '@shared/context'\nimport { useSelectedView } from '../hooks/useSelectedView'\nimport { UseViewMutations, useViewsMutations } from '../hooks/useViewsMutations'\nimport { useSaveViewFromCurrent } from '../hooks/useSaveViewFromCurrent'\nimport { useViewSettingsChanged } from '../hooks/useViewSettingsChanged'\nimport { useLocalStorage } from '@shared/hooks'\n\nexport type ViewData = GetDefaultViewApiResponse\nexport type ViewSettings = GetDefaultViewApiResponse['settings']\nexport type SelectedViewState = ViewData | undefined // id of view otherwise null with use working\nexport type EditingViewState = string | true | null // id of view being edited otherwise null\n\nexport type CollapsedViewState = Record<string, boolean>\n\nexport interface ViewsContextValue {\n // State\n viewType?: ViewType\n projectName?: string\n currentUser?: UserModel\n isMenuOpen: boolean\n editingView: EditingViewState\n selectedView: SelectedViewState\n\n // Views data\n viewsList: ViewListItemModel[]\n viewSettings: ViewSettings | undefined\n workingSettings: ViewSettings | undefined\n workingView: ViewListItemModel | undefined\n editingViewId: string | undefined\n viewMenuItems: ViewMenuItem[]\n editingViewData?: ViewData\n isLoadingEditingViewData: boolean\n isLoadingViews: boolean\n isViewWorking: boolean\n\n // Data\n shareOptions?: ShareOption[] // available users to share with (undefined means loading)\n\n // Actions\n setIsMenuOpen: (open: boolean) => void\n setEditingView: (editing: EditingViewState) => void\n setSelectedView: (viewId: string) => void\n onSettingsChanged: (changed: boolean) => void\n\n // Mutations\n onCreateView: UseViewMutations['onCreateView']\n onDeleteView: UseViewMutations['onDeleteView']\n onUpdateView: UseViewMutations['onUpdateView']\n\n // Actions (shared)\n resetWorkingView: () => Promise<void>\n\n // api\n api: typeof viewsQueries\n dispatch: any // dispatch is used to dispatch api mutations in pp like the share one.\n}\n\nconst ViewsContext = createContext<ViewsContextValue | null>(null)\n\nexport interface ViewsProviderProps {\n children: ReactNode\n viewType?: string\n projectName?: string\n dispatch?: any\n debug?: {\n powerLicense?: boolean\n }\n}\n\nexport const ViewsProvider: FC<ViewsProviderProps> = ({\n children,\n viewType,\n projectName,\n dispatch,\n debug,\n}) => {\n let { powerLicense } = usePowerpack()\n if (debug?.powerLicense !== undefined) {\n console.warn('Using debug power license:', debug.powerLicense)\n powerLicense = debug.powerLicense\n }\n\n const { user: currentUser } = useGlobalContext()\n\n const [isMenuOpen, setIsMenuOpen] = useState(false)\n const [editingView, setEditingView] = useState<EditingViewState>(null)\n // Collapsed state persisted globally across all viewTypes and projects\n const stateKey = 'viewsMenuCollapsed'\n\n const [collapsedSections, setCollapsedSections] = useLocalStorage<CollapsedViewState>(\n stateKey,\n {},\n )\n\n // anything extra to do when a view is created successfully\n const handleOnViewCreated = (view: ViewData) => {\n const key = view.visibility === 'private' ? 'myViews' : 'sharedViews'\n // if the section is collapsed, expand it\n if (collapsedSections[key]) {\n const newCollapsedSections = { ...collapsedSections }\n newCollapsedSections[key] = false\n setCollapsedSections(newCollapsedSections)\n }\n }\n\n const { onCreateView, onDeleteView, onUpdateView, onResetWorkingView } = useViewsMutations({\n viewType,\n projectName,\n onCreate: handleOnViewCreated,\n })\n\n // when editing the view, get all users that can be shared to that view\n const { data: shareOptions } = useGetShareOptionsQuery(\n { projectName },\n { skip: !powerLicense || !editingView },\n )\n\n // setting of default views\n const [selectedView, setSelectedView, previousSelectedViewId] = useSelectedView({\n viewType: viewType as string,\n projectName: projectName,\n })\n\n const [viewSettingsChanged, setViewSettingsChanged] = useViewSettingsChanged({\n viewType: viewType as ViewType,\n })\n\n // Fetch views data\n const { currentData: viewsList = [], isLoading: isLoadingViews } = useListViewsQuery(\n { projectName: projectName, viewType: viewType as string },\n { skip: !viewType },\n )\n\n // always get your working view\n const { currentData: workingView } = useGetWorkingViewQuery(\n { projectName: projectName, viewType: viewType as string },\n { skip: !viewType },\n )\n\n const workingSettings = workingView?.settings\n\n // which settings to use for the view\n const viewSettings =\n !selectedView || selectedView.id === WORKING_VIEW_ID ? workingSettings : selectedView?.settings\n\n // is the working view selected?\n const isViewWorking = selectedView?.id === workingView?.id\n // were we just on a custom view and then edited it and ended up on the working view\n const editingViewId =\n viewSettingsChanged &&\n isViewWorking &&\n !!previousSelectedViewId &&\n previousSelectedViewId !== workingView?.id\n ? previousSelectedViewId\n : undefined\n\n // get data for the view we are editing\n const { currentData: editingViewDataData, isFetching: isLoadingEditingViewData } =\n useGetViewQuery(\n {\n viewId: editingView as string,\n projectName: isViewStudioScope(editingView as string, viewsList) ? undefined : projectName,\n viewType: viewType as string,\n },\n { skip: !(typeof editingView === 'string') || !powerLicense },\n )\n\n const editingViewData = useMemo(\n () => (editingView === editingViewDataData?.id ? editingViewDataData : undefined),\n [editingView, editingViewDataData],\n )\n\n const { onSaveViewFromCurrent } = useSaveViewFromCurrent({\n viewType: viewType,\n projectName,\n viewsList,\n sourceSettings: viewSettings,\n onUpdateView: onUpdateView,\n })\n\n // Reset working view to default (empty) settings\n const resetWorkingView = useCallback(async () => {\n try {\n await onResetWorkingView({\n existingWorkingViewId: workingView?.id,\n selectedViewId: selectedView?.id,\n setSelectedView,\n setSettingsChanged: setViewSettingsChanged,\n notify: true,\n })\n } catch (error) {\n console.error('Failed to reset view:', error)\n }\n }, [workingView, onResetWorkingView, selectedView, setSelectedView, setViewSettingsChanged])\n\n // build the menu items for the views\n const viewMenuItems = useBuildViewMenuItems({\n viewsList,\n workingView,\n viewType,\n projectName,\n currentUser,\n useWorkingView: !powerLicense,\n editingViewId,\n selectedId: selectedView?.id,\n collapsed: collapsedSections,\n setCollapsed: setCollapsedSections,\n onResetWorkingView,\n onSelect: (viewId) => {\n setSelectedView(viewId)\n // reset the settings changed state when switching views\n setViewSettingsChanged(false)\n // close the menu when selecting a view\n setIsMenuOpen(false)\n },\n onEdit: (viewId) => setEditingView(viewId),\n onSave: async (viewId) => onSaveViewFromCurrent(viewId),\n })\n\n const value: ViewsContextValue = {\n viewType,\n projectName,\n isMenuOpen,\n editingView,\n currentUser,\n selectedView,\n viewSettings,\n workingSettings,\n editingViewData,\n isLoadingEditingViewData,\n viewsList,\n workingView,\n editingViewId,\n viewMenuItems,\n isLoadingViews,\n isViewWorking,\n // data\n shareOptions,\n setIsMenuOpen,\n setEditingView,\n setSelectedView,\n onSettingsChanged: setViewSettingsChanged,\n // mutations\n onCreateView,\n onUpdateView,\n onDeleteView,\n // shared actions\n resetWorkingView,\n // api\n api: viewsQueries,\n dispatch,\n }\n\n return <ViewsContext.Provider value={value}>{children}</ViewsContext.Provider>\n}\n\nexport const useViewsContext = (): ViewsContextValue => {\n const context = useContext(ViewsContext)\n if (!context) {\n throw new Error('useViewsContext must be used within a ViewsProvider')\n }\n return context\n}\n\nexport const isViewStudioScope = (viewId: string | undefined, viewsList: ViewListItemModel[]) => {\n if (!viewId) return true\n const view = viewsList.find((v) => v.id === viewId)\n return view?.scope === 'studio'\n}\n"],"names":["ViewsContext","createContext","ViewsProvider","children","viewType","projectName","dispatch","debug","powerLicense","usePowerpack","currentUser","useGlobalContext","isMenuOpen","setIsMenuOpen","useState","editingView","setEditingView","stateKey","collapsedSections","setCollapsedSections","useLocalStorage","handleOnViewCreated","view","key","newCollapsedSections","onCreateView","onDeleteView","onUpdateView","onResetWorkingView","useViewsMutations","shareOptions","useGetShareOptionsQuery","selectedView","setSelectedView","previousSelectedViewId","useSelectedView","viewSettingsChanged","setViewSettingsChanged","useViewSettingsChanged","viewsList","isLoadingViews","useListViewsQuery","workingView","useGetWorkingViewQuery","workingSettings","viewSettings","WORKING_VIEW_ID","isViewWorking","editingViewId","editingViewDataData","isLoadingEditingViewData","useGetViewQuery","isViewStudioScope","editingViewData","useMemo","onSaveViewFromCurrent","useSaveViewFromCurrent","resetWorkingView","useCallback","error","viewMenuItems","useBuildViewMenuItems","viewId","value","viewsQueries","jsx","useViewsContext","context","useContext","v"],"mappings":"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"}
1
+ {"version":3,"file":"ViewsContext.cjs.js","sources":["../../../../../../src/containers/Views/context/ViewsContext.tsx"],"sourcesContent":["import { createContext, useContext, FC, ReactNode, useState, useMemo, useCallback } from 'react'\nimport { ViewType, viewTypes, WORKING_VIEW_ID } from '../index'\nimport {\n GetDefaultViewApiResponse,\n useGetWorkingViewQuery,\n useGetViewQuery,\n useListViewsQuery,\n UserModel,\n ViewListItemModel,\n viewsQueries,\n useGetShareOptionsQuery,\n ShareOption,\n} from '@shared/api'\nimport useBuildViewMenuItems from '../hooks/useBuildViewMenuItems'\nimport { ViewMenuItem } from '../ViewsMenu/ViewsMenu'\nimport { useGlobalContext, usePowerpack } from '@shared/context'\nimport { useSelectedView } from '../hooks/useSelectedView'\nimport { UseViewMutations, useViewsMutations } from '../hooks/useViewsMutations'\nimport { useSaveViewFromCurrent } from '../hooks/useSaveViewFromCurrent'\nimport { useViewSettingsChanged } from '../hooks/useViewSettingsChanged'\nimport { useLocalStorage } from '@shared/hooks'\n\nexport type ViewData = GetDefaultViewApiResponse\nexport type ViewSettings = GetDefaultViewApiResponse['settings']\nexport type SelectedViewState = ViewData | undefined // id of view otherwise null with use working\nexport type EditingViewState = string | true | null // id of view being edited otherwise null\n\nexport type CollapsedViewState = Record<string, boolean>\n\nexport interface ViewsContextValue {\n // State\n viewType?: ViewType\n projectName?: string\n currentUser?: UserModel\n isMenuOpen: boolean\n editingView: EditingViewState\n selectedView: SelectedViewState\n\n // Views data\n viewsList: ViewListItemModel[]\n viewSettings: ViewSettings | undefined\n workingSettings: ViewSettings | undefined\n workingView: ViewListItemModel | undefined\n editingViewId: string | undefined\n viewMenuItems: ViewMenuItem[]\n editingViewData?: ViewData\n isLoadingEditingViewData: boolean\n isLoadingViews: boolean\n isViewWorking: boolean\n\n // Data\n shareOptions?: ShareOption[] // available users to share with (undefined means loading)\n\n // Actions\n setIsMenuOpen: (open: boolean) => void\n setEditingView: (editing: EditingViewState) => void\n setSelectedView: (viewId: string) => void\n onSettingsChanged: (changed: boolean) => void\n\n // Mutations\n onCreateView: UseViewMutations['onCreateView']\n onDeleteView: UseViewMutations['onDeleteView']\n onUpdateView: UseViewMutations['onUpdateView']\n\n // Actions (shared)\n resetWorkingView: () => Promise<void>\n\n // api\n api: typeof viewsQueries\n dispatch: any // dispatch is used to dispatch api mutations in pp like the share one.\n}\n\nconst ViewsContext = createContext<ViewsContextValue | null>(null)\n\nexport interface ViewsProviderProps {\n children: ReactNode\n viewType?: string\n projectName?: string\n dispatch?: any\n debug?: {\n powerLicense?: boolean\n }\n}\n\nexport const ViewsProvider: FC<ViewsProviderProps> = ({\n children,\n viewType: viewTypeProp,\n projectName,\n dispatch,\n debug,\n}) => {\n // validate viewType\n const viewType = viewTypes.includes(viewTypeProp as ViewType)\n ? (viewTypeProp as ViewType)\n : undefined\n\n let { powerLicense } = usePowerpack()\n if (debug?.powerLicense !== undefined) {\n console.warn('Using debug power license:', debug.powerLicense)\n powerLicense = debug.powerLicense\n }\n\n const { user: currentUser } = useGlobalContext()\n\n const [isMenuOpen, setIsMenuOpen] = useState(false)\n const [editingView, setEditingView] = useState<EditingViewState>(null)\n // Collapsed state persisted globally across all viewTypes and projects\n const stateKey = 'viewsMenuCollapsed'\n\n const [collapsedSections, setCollapsedSections] = useLocalStorage<CollapsedViewState>(\n stateKey,\n {},\n )\n\n // anything extra to do when a view is created successfully\n const handleOnViewCreated = (view: ViewData) => {\n const key = view.visibility === 'private' ? 'myViews' : 'sharedViews'\n // if the section is collapsed, expand it\n if (collapsedSections[key]) {\n const newCollapsedSections = { ...collapsedSections }\n newCollapsedSections[key] = false\n setCollapsedSections(newCollapsedSections)\n }\n }\n\n const { onCreateView, onDeleteView, onUpdateView, onResetWorkingView } = useViewsMutations({\n viewType,\n projectName,\n onCreate: handleOnViewCreated,\n })\n\n // when editing the view, get all users that can be shared to that view\n const { data: shareOptions } = useGetShareOptionsQuery(\n { projectName },\n { skip: !powerLicense || !editingView },\n )\n\n // setting of default views\n const [selectedView, setSelectedView, previousSelectedViewId] = useSelectedView({\n viewType: viewType as string,\n projectName: projectName,\n })\n\n const [viewSettingsChanged, setViewSettingsChanged] = useViewSettingsChanged({\n viewType: viewType as ViewType,\n })\n\n // Fetch views data\n const { currentData: viewsList = [], isLoading: isLoadingViews } = useListViewsQuery(\n { projectName: projectName, viewType: viewType as string },\n { skip: !viewType },\n )\n\n // always get your working view\n const { currentData: workingView } = useGetWorkingViewQuery(\n { projectName: projectName, viewType: viewType as string },\n { skip: !viewType },\n )\n\n const workingSettings = workingView?.settings\n\n // which settings to use for the view\n const viewSettings =\n !selectedView || selectedView.id === WORKING_VIEW_ID ? workingSettings : selectedView?.settings\n\n // is the working view selected?\n const isViewWorking = selectedView?.id === workingView?.id\n // were we just on a custom view and then edited it and ended up on the working view\n const editingViewId =\n viewSettingsChanged &&\n isViewWorking &&\n !!previousSelectedViewId &&\n previousSelectedViewId !== workingView?.id\n ? previousSelectedViewId\n : undefined\n\n // get data for the view we are editing\n const { currentData: editingViewDataData, isFetching: isLoadingEditingViewData } =\n useGetViewQuery(\n {\n viewId: editingView as string,\n projectName: isViewStudioScope(editingView as string, viewsList) ? undefined : projectName,\n viewType: viewType as string,\n },\n { skip: !(typeof editingView === 'string') || !powerLicense },\n )\n\n const editingViewData = useMemo(\n () => (editingView === editingViewDataData?.id ? editingViewDataData : undefined),\n [editingView, editingViewDataData],\n )\n\n const { onSaveViewFromCurrent } = useSaveViewFromCurrent({\n viewType: viewType,\n projectName,\n viewsList,\n sourceSettings: viewSettings,\n onUpdateView: onUpdateView,\n })\n\n // Reset working view to default (empty) settings\n const resetWorkingView = useCallback(async () => {\n try {\n await onResetWorkingView({\n existingWorkingViewId: workingView?.id,\n selectedViewId: selectedView?.id,\n setSelectedView,\n setSettingsChanged: setViewSettingsChanged,\n notify: true,\n })\n } catch (error) {\n console.error('Failed to reset view:', error)\n }\n }, [workingView, onResetWorkingView, selectedView, setSelectedView, setViewSettingsChanged])\n\n // build the menu items for the views\n const viewMenuItems = useBuildViewMenuItems({\n viewsList,\n workingView,\n viewType,\n projectName,\n currentUser,\n useWorkingView: !powerLicense,\n editingViewId,\n selectedId: selectedView?.id,\n collapsed: collapsedSections,\n setCollapsed: setCollapsedSections,\n onResetWorkingView,\n onSelect: (viewId) => {\n setSelectedView(viewId)\n // reset the settings changed state when switching views\n setViewSettingsChanged(false)\n // close the menu when selecting a view\n setIsMenuOpen(false)\n },\n onEdit: (viewId) => setEditingView(viewId),\n onSave: async (viewId) => onSaveViewFromCurrent(viewId),\n })\n\n const value: ViewsContextValue = {\n viewType,\n projectName,\n isMenuOpen,\n editingView,\n currentUser,\n selectedView,\n viewSettings,\n workingSettings,\n editingViewData,\n isLoadingEditingViewData,\n viewsList,\n workingView,\n editingViewId,\n viewMenuItems,\n isLoadingViews,\n isViewWorking,\n // data\n shareOptions,\n setIsMenuOpen,\n setEditingView,\n setSelectedView,\n onSettingsChanged: setViewSettingsChanged,\n // mutations\n onCreateView,\n onUpdateView,\n onDeleteView,\n // shared actions\n resetWorkingView,\n // api\n api: viewsQueries,\n dispatch,\n }\n\n return <ViewsContext.Provider value={value}>{children}</ViewsContext.Provider>\n}\n\nexport const useViewsContext = (): ViewsContextValue => {\n const context = useContext(ViewsContext)\n if (!context) {\n throw new Error('useViewsContext must be used within a ViewsProvider')\n }\n return context\n}\n\nexport const isViewStudioScope = (viewId: string | undefined, viewsList: ViewListItemModel[]) => {\n if (!viewId) return true\n const view = viewsList.find((v) => v.id === viewId)\n return view?.scope === 'studio'\n}\n"],"names":["ViewsContext","createContext","ViewsProvider","children","viewTypeProp","projectName","dispatch","debug","viewType","viewTypes","powerLicense","usePowerpack","currentUser","useGlobalContext","isMenuOpen","setIsMenuOpen","useState","editingView","setEditingView","stateKey","collapsedSections","setCollapsedSections","useLocalStorage","handleOnViewCreated","view","key","newCollapsedSections","onCreateView","onDeleteView","onUpdateView","onResetWorkingView","useViewsMutations","shareOptions","useGetShareOptionsQuery","selectedView","setSelectedView","previousSelectedViewId","useSelectedView","viewSettingsChanged","setViewSettingsChanged","useViewSettingsChanged","viewsList","isLoadingViews","useListViewsQuery","workingView","useGetWorkingViewQuery","workingSettings","viewSettings","WORKING_VIEW_ID","isViewWorking","editingViewId","editingViewDataData","isLoadingEditingViewData","useGetViewQuery","isViewStudioScope","editingViewData","useMemo","onSaveViewFromCurrent","useSaveViewFromCurrent","resetWorkingView","useCallback","error","viewMenuItems","useBuildViewMenuItems","viewId","value","viewsQueries","jsx","useViewsContext","context","useContext","v"],"mappings":"suMAwEMA,EAAeC,gBAAwC,IAAI,EAYpDC,GAAwC,CAAC,CACpD,SAAAC,EACA,SAAUC,EACV,YAAAC,EACA,SAAAC,EACA,MAAAC,CACF,IAAM,CAEJ,MAAMC,EAAWC,EAAAA,UAAU,SAASL,CAAwB,EACvDA,EACD,OAEA,GAAA,CAAE,aAAAM,CAAa,EAAIC,eAAa,GAChCJ,GAAA,YAAAA,EAAO,gBAAiB,SAClB,QAAA,KAAK,6BAA8BA,EAAM,YAAY,EAC7DG,EAAeH,EAAM,cAGvB,KAAM,CAAE,KAAMK,CAAY,EAAIC,mBAAiB,EAEzC,CAACC,EAAYC,CAAa,EAAIC,EAAAA,SAAS,EAAK,EAC5C,CAACC,EAAaC,CAAc,EAAIF,EAAAA,SAA2B,IAAI,EAE/DG,EAAW,qBAEX,CAACC,EAAmBC,CAAoB,EAAIC,GAAA,gBAChDH,EACA,CAAA,CACF,EAGMI,EAAuBC,GAAmB,CAC9C,MAAMC,EAAMD,EAAK,aAAe,UAAY,UAAY,cAEpD,GAAAJ,EAAkBK,CAAG,EAAG,CACpB,MAAAC,EAAuB,CAAE,GAAGN,CAAkB,EACpDM,EAAqBD,CAAG,EAAI,GAC5BJ,EAAqBK,CAAoB,CAAA,CAE7C,EAEM,CAAE,aAAAC,EAAc,aAAAC,EAAc,aAAAC,EAAc,mBAAAC,CAAA,EAAuBC,GAAAA,kBAAkB,CACzF,SAAAvB,EACA,YAAAH,EACA,SAAUkB,CAAA,CACX,EAGK,CAAE,KAAMS,CAAA,EAAiBC,EAAA,wBAC7B,CAAE,YAAA5B,CAAY,EACd,CAAE,KAAM,CAACK,GAAgB,CAACO,CAAY,CACxC,EAGM,CAACiB,EAAcC,EAAiBC,CAAsB,EAAIC,GAAAA,gBAAgB,CAC9E,SAAA7B,EACA,YAAAH,CAAA,CACD,EAEK,CAACiC,EAAqBC,CAAsB,EAAIC,0BAAuB,CAC3E,SAAAhC,CAAA,CACD,EAGK,CAAE,YAAaiC,EAAY,CAAI,EAAA,UAAWC,GAAmBC,EAAA,kBACjE,CAAE,YAAAtC,EAA0B,SAAAG,CAA6B,EACzD,CAAE,KAAM,CAACA,CAAS,CACpB,EAGM,CAAE,YAAaoC,CAAA,EAAgBC,EAAA,uBACnC,CAAE,YAAAxC,EAA0B,SAAAG,CAA6B,EACzD,CAAE,KAAM,CAACA,CAAS,CACpB,EAEMsC,EAAkBF,GAAA,YAAAA,EAAa,SAG/BG,EACJ,CAACb,GAAgBA,EAAa,KAAOc,mBAAkBF,EAAkBZ,GAAA,YAAAA,EAAc,SAGnFe,GAAgBf,GAAA,YAAAA,EAAc,OAAOU,GAAA,YAAAA,EAAa,IAElDM,EACJZ,GACAW,GACEb,GACFA,KAA2BQ,GAAA,YAAAA,EAAa,IACpCR,EACA,OAGA,CAAE,YAAae,EAAqB,WAAYC,CACpD,EAAAC,EAAA,gBACE,CACE,OAAQpC,EACR,YAAaqC,EAAkBrC,EAAuBwB,CAAS,EAAI,OAAYpC,EAC/E,SAAAG,CACF,EACA,CAAE,KAAQ,OAAOS,GAAgB,UAAa,CAACP,CAAa,CAC9D,EAEI6C,EAAkBC,EAAA,QACtB,IAAOvC,KAAgBkC,GAAA,YAAAA,EAAqB,IAAKA,EAAsB,OACvE,CAAClC,EAAakC,CAAmB,CACnC,EAEM,CAAE,sBAAAM,CAAsB,EAAIC,0BAAuB,CACvD,SAAAlD,EACA,YAAAH,EACA,UAAAoC,EACA,eAAgBM,EAChB,aAAAlB,CAAA,CACD,EAGK8B,EAAmBC,EAAAA,YAAY,SAAY,CAC3C,GAAA,CACF,MAAM9B,EAAmB,CACvB,sBAAuBc,GAAA,YAAAA,EAAa,GACpC,eAAgBV,GAAA,YAAAA,EAAc,GAC9B,gBAAAC,EACA,mBAAoBI,EACpB,OAAQ,EAAA,CACT,QACMsB,EAAO,CACN,QAAA,MAAM,wBAAyBA,CAAK,CAAA,CAC9C,EACC,CAACjB,EAAad,EAAoBI,EAAcC,EAAiBI,CAAsB,CAAC,EAGrFuB,EAAgBC,EAAAA,QAAsB,CAC1C,UAAAtB,EACA,YAAAG,EACA,SAAApC,EACA,YAAAH,EACA,YAAAO,EACA,eAAgB,CAACF,EACjB,cAAAwC,EACA,WAAYhB,GAAA,YAAAA,EAAc,GAC1B,UAAWd,EACX,aAAcC,EACd,mBAAAS,EACA,SAAWkC,GAAW,CACpB7B,EAAgB6B,CAAM,EAEtBzB,EAAuB,EAAK,EAE5BxB,EAAc,EAAK,CACrB,EACA,OAASiD,GAAW9C,EAAe8C,CAAM,EACzC,OAAQ,MAAOA,GAAWP,EAAsBO,CAAM,CAAA,CACvD,EAEKC,EAA2B,CAC/B,SAAAzD,EACA,YAAAH,EACA,WAAAS,EACA,YAAAG,EACA,YAAAL,EACA,aAAAsB,EACA,aAAAa,EACA,gBAAAD,EACA,gBAAAS,EACA,yBAAAH,EACA,UAAAX,EACA,YAAAG,EACA,cAAAM,EACA,cAAAY,EACA,eAAApB,EACA,cAAAO,EAEA,aAAAjB,EACA,cAAAjB,EACA,eAAAG,EACA,gBAAAiB,EACA,kBAAmBI,EAEnB,aAAAZ,EACA,aAAAE,EACA,aAAAD,EAEA,iBAAA+B,EAEA,IAAKO,EAAA,aACL,SAAA5D,CACF,EAEA,OAAQ6D,EAAAA,kBAAAA,IAAAnE,EAAa,SAAb,CAAsB,MAAAiE,EAAe,SAAA9D,CAAS,CAAA,CACxD,EAEaiE,GAAkB,IAAyB,CAChD,MAAAC,EAAUC,aAAWtE,CAAY,EACvC,GAAI,CAACqE,EACG,MAAA,IAAI,MAAM,qDAAqD,EAEhE,OAAAA,CACT,EAEaf,EAAoB,CAACU,EAA4BvB,IAAmC,CAC3F,GAAA,CAACuB,EAAe,MAAA,GACpB,MAAMxC,EAAOiB,EAAU,KAAM8B,GAAMA,EAAE,KAAOP,CAAM,EAClD,OAAOxC,GAAA,YAAAA,EAAM,SAAU,QACzB"}
@@ -1,13 +1,6 @@
1
1
  import { j as H } from "../../../../../_virtual/jsx-runtime.es.js";
2
2
  import { createContext as J, useState as E, useMemo as X, useCallback as Y, useContext as Z } from "react";
3
- import "react-dom";
4
- import "../Views.styled.es.js";
5
- import "clsx";
6
- import { WORKING_VIEW_ID as $ } from "../ViewsMenuContainer/ViewsMenuContainer.es.js";
7
- import { useLocalStorage as b } from "../../../hooks/useLocalStorage.es.js";
8
- import "../../../context/RemoteModulesContext.es.js";
9
- import "../../../../../_virtual/runtime.es.js";
10
- import "../../../../../_virtual/semver.es.js";
3
+ import { viewTypes as $ } from "../../../../../Views.es.js";
11
4
  import "../../../api/base/client.es.js";
12
5
  import "../../../api/generated/graphql.es.js";
13
6
  import "../../../api/generated/graphqlLinks.es.js";
@@ -80,150 +73,156 @@ import "../../../api/queries/project/getProject.es.js";
80
73
  import "../../../api/queries/project/updateProject.es.js";
81
74
  import "../../../api/queries/review/getReview.es.js";
82
75
  import "../../../api/queries/review/updateReview.es.js";
83
- import { useGetShareOptionsQuery as j } from "../../../api/queries/share/share.es.js";
76
+ import { useGetShareOptionsQuery as b } from "../../../api/queries/share/share.es.js";
84
77
  import "../../../api/queries/system/getSystem.es.js";
85
78
  import "../../../api/queries/userDashboard/getUserDashboard.es.js";
86
79
  import "../../../api/queries/users/getUsers.es.js";
87
80
  import "../../../api/queries/users/updateUsers.es.js";
88
81
  import "../../../api/queries/users/guests.es.js";
89
82
  import "../../../api/queries/versions/updateVersions.es.js";
90
- import { useListViewsQuery as N, useGetWorkingViewQuery as T, useGetViewQuery as tt } from "../../../api/queries/views/getViews.es.js";
83
+ import { useListViewsQuery as j, useGetWorkingViewQuery as N, useGetViewQuery as tt } from "../../../api/queries/views/getViews.es.js";
91
84
  import { viewsQueries as it } from "../../../api/queries/views/updateViews.es.js";
92
85
  import "../../../api/queries/watchers/getWatchers.es.js";
93
- import "lodash";
94
- import "react-toastify";
86
+ import "../../../api/queries/uris/getUris.es.js";
87
+ import ot from "../hooks/useBuildViewMenuItems.es.js";
88
+ import "../../../context/RemoteModulesContext.es.js";
95
89
  import "../../../context/DetailsPanelContext.es.js";
96
90
  import "../../../context/ThumbnailUploaderContext.es.js";
97
91
  import "../../../context/SettingsPanelContext.es.js";
98
92
  import "../../../context/pip/PiPProvider.es.js";
93
+ import "react-dom";
99
94
  import "../../../context/pip/PiPWrapper.es.js";
100
95
  import "../../../context/AddonProjectContext.es.js";
101
96
  import "../../../context/AddonContext.es.js";
102
- import { usePowerpack as ot } from "../../../context/PowerpackContext.es.js";
97
+ import { usePowerpack as rt } from "../../../context/PowerpackContext.es.js";
103
98
  import "../../../context/MoveEntityContext.es.js";
104
99
  import "../../../context/MenuContext.es.js";
105
100
  import "../../../context/WebsocketContext.es.js";
106
- import { useGlobalContext as rt } from "../../../context/GlobalContext.es.js";
101
+ import { useGlobalContext as et } from "../../../context/GlobalContext.es.js";
107
102
  import "../../../context/ProjectContext.es.js";
103
+ import "../../../context/ProjectFoldersContext.es.js";
104
+ import "../../../context/UriContext.es.js";
105
+ import { useSelectedView as st } from "../hooks/useSelectedView.es.js";
106
+ import { useViewsMutations as pt } from "../hooks/useViewsMutations.es.js";
107
+ import { useSaveViewFromCurrent as mt } from "../hooks/useSaveViewFromCurrent.es.js";
108
+ import { useViewSettingsChanged as nt } from "../hooks/useViewSettingsChanged.es.js";
109
+ import { useLocalStorage as at } from "../../../hooks/useLocalStorage.es.js";
110
+ import "../../../../../_virtual/runtime.es.js";
111
+ import "../../../../../_virtual/semver.es.js";
112
+ import "lodash";
113
+ import "react-toastify";
108
114
  import "react-redux";
109
115
  import "custom-protocol-check";
110
116
  import "../../ProjectTreeTable/components/GroupSettingsFallback.es.js";
111
- import "@ynput/ayon-react-components";
112
- import "../ViewsMenu/ViewsMenu.es.js";
113
- import "uuid";
114
- import et from "../hooks/useBuildViewMenuItems.es.js";
115
- import { useSaveViewFromCurrent as st } from "../hooks/useSaveViewFromCurrent.es.js";
116
- import { useSelectedView as mt } from "../hooks/useSelectedView.es.js";
117
- import { useViewsMutations as pt } from "../hooks/useViewsMutations.es.js";
118
- import "../../../util/pubsub.es.js";
119
- import { useViewSettingsChanged as nt } from "../hooks/useViewSettingsChanged.es.js";
120
- const O = J(null), Io = ({
117
+ import { WORKING_VIEW_ID as ct } from "../ViewsMenuContainer/ViewsMenuContainer.es.js";
118
+ const O = J(null), ho = ({
121
119
  children: s,
122
- viewType: o,
123
- projectName: r,
120
+ viewType: a,
121
+ projectName: o,
124
122
  dispatch: l,
125
- debug: p
123
+ debug: m
126
124
  }) => {
127
- let { powerLicense: a } = ot();
128
- (p == null ? void 0 : p.powerLicense) !== void 0 && (console.warn("Using debug power license:", p.powerLicense), a = p.powerLicense);
129
- const { user: V } = rt(), [D, g] = E(!1), [m, C] = E(null), G = "viewsMenuCollapsed", [f, h] = b(
125
+ const r = $.includes(a) ? a : void 0;
126
+ let { powerLicense: c } = rt();
127
+ (m == null ? void 0 : m.powerLicense) !== void 0 && (console.warn("Using debug power license:", m.powerLicense), c = m.powerLicense);
128
+ const { user: V } = et(), [D, g] = E(!1), [p, C] = E(null), G = "viewsMenuCollapsed", [f, y] = at(
130
129
  G,
131
130
  {}
132
131
  ), Q = (e) => {
133
132
  const k = e.visibility === "private" ? "myViews" : "sharedViews";
134
133
  if (f[k]) {
135
134
  const M = { ...f };
136
- M[k] = !1, h(M);
135
+ M[k] = !1, y(M);
137
136
  }
138
- }, { onCreateView: F, onDeleteView: P, onUpdateView: x, onResetWorkingView: w } = pt({
139
- viewType: o,
140
- projectName: r,
137
+ }, { onCreateView: F, onDeleteView: P, onUpdateView: h, onResetWorkingView: v } = pt({
138
+ viewType: r,
139
+ projectName: o,
141
140
  onCreate: Q
142
- }), { data: y } = j(
143
- { projectName: r },
144
- { skip: !a || !m }
145
- ), [t, c, S] = mt({
146
- viewType: o,
147
- projectName: r
148
- }), [R, u] = nt({
149
- viewType: o
150
- }), { currentData: d = [], isLoading: U } = N(
151
- { projectName: r, viewType: o },
152
- { skip: !o }
153
- ), { currentData: i } = T(
154
- { projectName: r, viewType: o },
155
- { skip: !o }
156
- ), I = i == null ? void 0 : i.settings, v = !t || t.id === $ ? I : t == null ? void 0 : t.settings, L = (t == null ? void 0 : t.id) === (i == null ? void 0 : i.id), W = R && L && S && S !== (i == null ? void 0 : i.id) ? S : void 0, { currentData: n, isFetching: K } = tt(
141
+ }), { data: R } = b(
142
+ { projectName: o },
143
+ { skip: !c || !p }
144
+ ), [t, u, S] = st({
145
+ viewType: r,
146
+ projectName: o
147
+ }), [U, d] = nt({
148
+ viewType: r
149
+ }), { currentData: w = [], isLoading: K } = j(
150
+ { projectName: o, viewType: r },
151
+ { skip: !r }
152
+ ), { currentData: i } = N(
153
+ { projectName: o, viewType: r },
154
+ { skip: !r }
155
+ ), x = i == null ? void 0 : i.settings, I = !t || t.id === ct ? x : t == null ? void 0 : t.settings, L = (t == null ? void 0 : t.id) === (i == null ? void 0 : i.id), W = U && L && S && S !== (i == null ? void 0 : i.id) ? S : void 0, { currentData: n, isFetching: T } = tt(
157
156
  {
158
- viewId: m,
159
- projectName: at(m, d) ? void 0 : r,
160
- viewType: o
157
+ viewId: p,
158
+ projectName: ut(p, w) ? void 0 : o,
159
+ viewType: r
161
160
  },
162
- { skip: typeof m != "string" || !a }
161
+ { skip: typeof p != "string" || !c }
163
162
  ), _ = X(
164
- () => m === (n == null ? void 0 : n.id) ? n : void 0,
165
- [m, n]
166
- ), { onSaveViewFromCurrent: A } = st({
167
- viewType: o,
168
- projectName: r,
169
- viewsList: d,
170
- sourceSettings: v,
171
- onUpdateView: x
163
+ () => p === (n == null ? void 0 : n.id) ? n : void 0,
164
+ [p, n]
165
+ ), { onSaveViewFromCurrent: A } = mt({
166
+ viewType: r,
167
+ projectName: o,
168
+ viewsList: w,
169
+ sourceSettings: I,
170
+ onUpdateView: h
172
171
  }), B = Y(async () => {
173
172
  try {
174
- await w({
173
+ await v({
175
174
  existingWorkingViewId: i == null ? void 0 : i.id,
176
175
  selectedViewId: t == null ? void 0 : t.id,
177
- setSelectedView: c,
178
- setSettingsChanged: u,
176
+ setSelectedView: u,
177
+ setSettingsChanged: d,
179
178
  notify: !0
180
179
  });
181
180
  } catch (e) {
182
181
  console.error("Failed to reset view:", e);
183
182
  }
184
- }, [i, w, t, c, u]), q = et({
185
- viewsList: d,
183
+ }, [i, v, t, u, d]), q = ot({
184
+ viewsList: w,
186
185
  workingView: i,
187
- viewType: o,
188
- projectName: r,
186
+ viewType: r,
187
+ projectName: o,
189
188
  currentUser: V,
190
- useWorkingView: !a,
189
+ useWorkingView: !c,
191
190
  editingViewId: W,
192
191
  selectedId: t == null ? void 0 : t.id,
193
192
  collapsed: f,
194
- setCollapsed: h,
195
- onResetWorkingView: w,
193
+ setCollapsed: y,
194
+ onResetWorkingView: v,
196
195
  onSelect: (e) => {
197
- c(e), u(!1), g(!1);
196
+ u(e), d(!1), g(!1);
198
197
  },
199
198
  onEdit: (e) => C(e),
200
199
  onSave: async (e) => A(e)
201
200
  }), z = {
202
- viewType: o,
203
- projectName: r,
201
+ viewType: r,
202
+ projectName: o,
204
203
  isMenuOpen: D,
205
- editingView: m,
204
+ editingView: p,
206
205
  currentUser: V,
207
206
  selectedView: t,
208
- viewSettings: v,
209
- workingSettings: I,
207
+ viewSettings: I,
208
+ workingSettings: x,
210
209
  editingViewData: _,
211
- isLoadingEditingViewData: K,
212
- viewsList: d,
210
+ isLoadingEditingViewData: T,
211
+ viewsList: w,
213
212
  workingView: i,
214
213
  editingViewId: W,
215
214
  viewMenuItems: q,
216
- isLoadingViews: U,
215
+ isLoadingViews: K,
217
216
  isViewWorking: L,
218
217
  // data
219
- shareOptions: y,
218
+ shareOptions: R,
220
219
  setIsMenuOpen: g,
221
220
  setEditingView: C,
222
- setSelectedView: c,
223
- onSettingsChanged: u,
221
+ setSelectedView: u,
222
+ onSettingsChanged: d,
224
223
  // mutations
225
224
  onCreateView: F,
226
- onUpdateView: x,
225
+ onUpdateView: h,
227
226
  onDeleteView: P,
228
227
  // shared actions
229
228
  resetWorkingView: B,
@@ -232,19 +231,19 @@ const O = J(null), Io = ({
232
231
  dispatch: l
233
232
  };
234
233
  return /* @__PURE__ */ H.jsx(O.Provider, { value: z, children: s });
235
- }, vo = () => {
234
+ }, xo = () => {
236
235
  const s = Z(O);
237
236
  if (!s)
238
237
  throw new Error("useViewsContext must be used within a ViewsProvider");
239
238
  return s;
240
- }, at = (s, o) => {
239
+ }, ut = (s, a) => {
241
240
  if (!s) return !0;
242
- const r = o.find((l) => l.id === s);
243
- return (r == null ? void 0 : r.scope) === "studio";
241
+ const o = a.find((l) => l.id === s);
242
+ return (o == null ? void 0 : o.scope) === "studio";
244
243
  };
245
244
  export {
246
- Io as ViewsProvider,
247
- at as isViewStudioScope,
248
- vo as useViewsContext
245
+ ho as ViewsProvider,
246
+ ut as isViewStudioScope,
247
+ xo as useViewsContext
249
248
  };
250
249
  //# sourceMappingURL=ViewsContext.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ViewsContext.es.js","sources":["../../../../../../src/containers/Views/context/ViewsContext.tsx"],"sourcesContent":["import { createContext, useContext, FC, ReactNode, useState, useMemo, useCallback } from 'react'\nimport { ViewType, WORKING_VIEW_ID } from '../index'\nimport {\n GetDefaultViewApiResponse,\n useGetWorkingViewQuery,\n useGetViewQuery,\n useListViewsQuery,\n UserModel,\n ViewListItemModel,\n viewsQueries,\n useGetShareOptionsQuery,\n ShareOption,\n} from '@shared/api'\nimport useBuildViewMenuItems from '../hooks/useBuildViewMenuItems'\nimport { ViewMenuItem } from '../ViewsMenu/ViewsMenu'\nimport { useGlobalContext, usePowerpack } from '@shared/context'\nimport { useSelectedView } from '../hooks/useSelectedView'\nimport { UseViewMutations, useViewsMutations } from '../hooks/useViewsMutations'\nimport { useSaveViewFromCurrent } from '../hooks/useSaveViewFromCurrent'\nimport { useViewSettingsChanged } from '../hooks/useViewSettingsChanged'\nimport { useLocalStorage } from '@shared/hooks'\n\nexport type ViewData = GetDefaultViewApiResponse\nexport type ViewSettings = GetDefaultViewApiResponse['settings']\nexport type SelectedViewState = ViewData | undefined // id of view otherwise null with use working\nexport type EditingViewState = string | true | null // id of view being edited otherwise null\n\nexport type CollapsedViewState = Record<string, boolean>\n\nexport interface ViewsContextValue {\n // State\n viewType?: ViewType\n projectName?: string\n currentUser?: UserModel\n isMenuOpen: boolean\n editingView: EditingViewState\n selectedView: SelectedViewState\n\n // Views data\n viewsList: ViewListItemModel[]\n viewSettings: ViewSettings | undefined\n workingSettings: ViewSettings | undefined\n workingView: ViewListItemModel | undefined\n editingViewId: string | undefined\n viewMenuItems: ViewMenuItem[]\n editingViewData?: ViewData\n isLoadingEditingViewData: boolean\n isLoadingViews: boolean\n isViewWorking: boolean\n\n // Data\n shareOptions?: ShareOption[] // available users to share with (undefined means loading)\n\n // Actions\n setIsMenuOpen: (open: boolean) => void\n setEditingView: (editing: EditingViewState) => void\n setSelectedView: (viewId: string) => void\n onSettingsChanged: (changed: boolean) => void\n\n // Mutations\n onCreateView: UseViewMutations['onCreateView']\n onDeleteView: UseViewMutations['onDeleteView']\n onUpdateView: UseViewMutations['onUpdateView']\n\n // Actions (shared)\n resetWorkingView: () => Promise<void>\n\n // api\n api: typeof viewsQueries\n dispatch: any // dispatch is used to dispatch api mutations in pp like the share one.\n}\n\nconst ViewsContext = createContext<ViewsContextValue | null>(null)\n\nexport interface ViewsProviderProps {\n children: ReactNode\n viewType?: string\n projectName?: string\n dispatch?: any\n debug?: {\n powerLicense?: boolean\n }\n}\n\nexport const ViewsProvider: FC<ViewsProviderProps> = ({\n children,\n viewType,\n projectName,\n dispatch,\n debug,\n}) => {\n let { powerLicense } = usePowerpack()\n if (debug?.powerLicense !== undefined) {\n console.warn('Using debug power license:', debug.powerLicense)\n powerLicense = debug.powerLicense\n }\n\n const { user: currentUser } = useGlobalContext()\n\n const [isMenuOpen, setIsMenuOpen] = useState(false)\n const [editingView, setEditingView] = useState<EditingViewState>(null)\n // Collapsed state persisted globally across all viewTypes and projects\n const stateKey = 'viewsMenuCollapsed'\n\n const [collapsedSections, setCollapsedSections] = useLocalStorage<CollapsedViewState>(\n stateKey,\n {},\n )\n\n // anything extra to do when a view is created successfully\n const handleOnViewCreated = (view: ViewData) => {\n const key = view.visibility === 'private' ? 'myViews' : 'sharedViews'\n // if the section is collapsed, expand it\n if (collapsedSections[key]) {\n const newCollapsedSections = { ...collapsedSections }\n newCollapsedSections[key] = false\n setCollapsedSections(newCollapsedSections)\n }\n }\n\n const { onCreateView, onDeleteView, onUpdateView, onResetWorkingView } = useViewsMutations({\n viewType,\n projectName,\n onCreate: handleOnViewCreated,\n })\n\n // when editing the view, get all users that can be shared to that view\n const { data: shareOptions } = useGetShareOptionsQuery(\n { projectName },\n { skip: !powerLicense || !editingView },\n )\n\n // setting of default views\n const [selectedView, setSelectedView, previousSelectedViewId] = useSelectedView({\n viewType: viewType as string,\n projectName: projectName,\n })\n\n const [viewSettingsChanged, setViewSettingsChanged] = useViewSettingsChanged({\n viewType: viewType as ViewType,\n })\n\n // Fetch views data\n const { currentData: viewsList = [], isLoading: isLoadingViews } = useListViewsQuery(\n { projectName: projectName, viewType: viewType as string },\n { skip: !viewType },\n )\n\n // always get your working view\n const { currentData: workingView } = useGetWorkingViewQuery(\n { projectName: projectName, viewType: viewType as string },\n { skip: !viewType },\n )\n\n const workingSettings = workingView?.settings\n\n // which settings to use for the view\n const viewSettings =\n !selectedView || selectedView.id === WORKING_VIEW_ID ? workingSettings : selectedView?.settings\n\n // is the working view selected?\n const isViewWorking = selectedView?.id === workingView?.id\n // were we just on a custom view and then edited it and ended up on the working view\n const editingViewId =\n viewSettingsChanged &&\n isViewWorking &&\n !!previousSelectedViewId &&\n previousSelectedViewId !== workingView?.id\n ? previousSelectedViewId\n : undefined\n\n // get data for the view we are editing\n const { currentData: editingViewDataData, isFetching: isLoadingEditingViewData } =\n useGetViewQuery(\n {\n viewId: editingView as string,\n projectName: isViewStudioScope(editingView as string, viewsList) ? undefined : projectName,\n viewType: viewType as string,\n },\n { skip: !(typeof editingView === 'string') || !powerLicense },\n )\n\n const editingViewData = useMemo(\n () => (editingView === editingViewDataData?.id ? editingViewDataData : undefined),\n [editingView, editingViewDataData],\n )\n\n const { onSaveViewFromCurrent } = useSaveViewFromCurrent({\n viewType: viewType,\n projectName,\n viewsList,\n sourceSettings: viewSettings,\n onUpdateView: onUpdateView,\n })\n\n // Reset working view to default (empty) settings\n const resetWorkingView = useCallback(async () => {\n try {\n await onResetWorkingView({\n existingWorkingViewId: workingView?.id,\n selectedViewId: selectedView?.id,\n setSelectedView,\n setSettingsChanged: setViewSettingsChanged,\n notify: true,\n })\n } catch (error) {\n console.error('Failed to reset view:', error)\n }\n }, [workingView, onResetWorkingView, selectedView, setSelectedView, setViewSettingsChanged])\n\n // build the menu items for the views\n const viewMenuItems = useBuildViewMenuItems({\n viewsList,\n workingView,\n viewType,\n projectName,\n currentUser,\n useWorkingView: !powerLicense,\n editingViewId,\n selectedId: selectedView?.id,\n collapsed: collapsedSections,\n setCollapsed: setCollapsedSections,\n onResetWorkingView,\n onSelect: (viewId) => {\n setSelectedView(viewId)\n // reset the settings changed state when switching views\n setViewSettingsChanged(false)\n // close the menu when selecting a view\n setIsMenuOpen(false)\n },\n onEdit: (viewId) => setEditingView(viewId),\n onSave: async (viewId) => onSaveViewFromCurrent(viewId),\n })\n\n const value: ViewsContextValue = {\n viewType,\n projectName,\n isMenuOpen,\n editingView,\n currentUser,\n selectedView,\n viewSettings,\n workingSettings,\n editingViewData,\n isLoadingEditingViewData,\n viewsList,\n workingView,\n editingViewId,\n viewMenuItems,\n isLoadingViews,\n isViewWorking,\n // data\n shareOptions,\n setIsMenuOpen,\n setEditingView,\n setSelectedView,\n onSettingsChanged: setViewSettingsChanged,\n // mutations\n onCreateView,\n onUpdateView,\n onDeleteView,\n // shared actions\n resetWorkingView,\n // api\n api: viewsQueries,\n dispatch,\n }\n\n return <ViewsContext.Provider value={value}>{children}</ViewsContext.Provider>\n}\n\nexport const useViewsContext = (): ViewsContextValue => {\n const context = useContext(ViewsContext)\n if (!context) {\n throw new Error('useViewsContext must be used within a ViewsProvider')\n }\n return context\n}\n\nexport const isViewStudioScope = (viewId: string | undefined, viewsList: ViewListItemModel[]) => {\n if (!viewId) return true\n const view = viewsList.find((v) => v.id === viewId)\n return view?.scope === 'studio'\n}\n"],"names":["ViewsContext","createContext","ViewsProvider","children","viewType","projectName","dispatch","debug","powerLicense","usePowerpack","currentUser","useGlobalContext","isMenuOpen","setIsMenuOpen","useState","editingView","setEditingView","stateKey","collapsedSections","setCollapsedSections","useLocalStorage","handleOnViewCreated","view","key","newCollapsedSections","onCreateView","onDeleteView","onUpdateView","onResetWorkingView","useViewsMutations","shareOptions","useGetShareOptionsQuery","selectedView","setSelectedView","previousSelectedViewId","useSelectedView","viewSettingsChanged","setViewSettingsChanged","useViewSettingsChanged","viewsList","isLoadingViews","useListViewsQuery","workingView","useGetWorkingViewQuery","workingSettings","viewSettings","WORKING_VIEW_ID","isViewWorking","editingViewId","editingViewDataData","isLoadingEditingViewData","useGetViewQuery","isViewStudioScope","editingViewData","useMemo","onSaveViewFromCurrent","useSaveViewFromCurrent","resetWorkingView","useCallback","error","viewMenuItems","useBuildViewMenuItems","viewId","value","viewsQueries","jsx","useViewsContext","context","useContext","v"],"mappings":"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"}
1
+ {"version":3,"file":"ViewsContext.es.js","sources":["../../../../../../src/containers/Views/context/ViewsContext.tsx"],"sourcesContent":["import { createContext, useContext, FC, ReactNode, useState, useMemo, useCallback } from 'react'\nimport { ViewType, viewTypes, WORKING_VIEW_ID } from '../index'\nimport {\n GetDefaultViewApiResponse,\n useGetWorkingViewQuery,\n useGetViewQuery,\n useListViewsQuery,\n UserModel,\n ViewListItemModel,\n viewsQueries,\n useGetShareOptionsQuery,\n ShareOption,\n} from '@shared/api'\nimport useBuildViewMenuItems from '../hooks/useBuildViewMenuItems'\nimport { ViewMenuItem } from '../ViewsMenu/ViewsMenu'\nimport { useGlobalContext, usePowerpack } from '@shared/context'\nimport { useSelectedView } from '../hooks/useSelectedView'\nimport { UseViewMutations, useViewsMutations } from '../hooks/useViewsMutations'\nimport { useSaveViewFromCurrent } from '../hooks/useSaveViewFromCurrent'\nimport { useViewSettingsChanged } from '../hooks/useViewSettingsChanged'\nimport { useLocalStorage } from '@shared/hooks'\n\nexport type ViewData = GetDefaultViewApiResponse\nexport type ViewSettings = GetDefaultViewApiResponse['settings']\nexport type SelectedViewState = ViewData | undefined // id of view otherwise null with use working\nexport type EditingViewState = string | true | null // id of view being edited otherwise null\n\nexport type CollapsedViewState = Record<string, boolean>\n\nexport interface ViewsContextValue {\n // State\n viewType?: ViewType\n projectName?: string\n currentUser?: UserModel\n isMenuOpen: boolean\n editingView: EditingViewState\n selectedView: SelectedViewState\n\n // Views data\n viewsList: ViewListItemModel[]\n viewSettings: ViewSettings | undefined\n workingSettings: ViewSettings | undefined\n workingView: ViewListItemModel | undefined\n editingViewId: string | undefined\n viewMenuItems: ViewMenuItem[]\n editingViewData?: ViewData\n isLoadingEditingViewData: boolean\n isLoadingViews: boolean\n isViewWorking: boolean\n\n // Data\n shareOptions?: ShareOption[] // available users to share with (undefined means loading)\n\n // Actions\n setIsMenuOpen: (open: boolean) => void\n setEditingView: (editing: EditingViewState) => void\n setSelectedView: (viewId: string) => void\n onSettingsChanged: (changed: boolean) => void\n\n // Mutations\n onCreateView: UseViewMutations['onCreateView']\n onDeleteView: UseViewMutations['onDeleteView']\n onUpdateView: UseViewMutations['onUpdateView']\n\n // Actions (shared)\n resetWorkingView: () => Promise<void>\n\n // api\n api: typeof viewsQueries\n dispatch: any // dispatch is used to dispatch api mutations in pp like the share one.\n}\n\nconst ViewsContext = createContext<ViewsContextValue | null>(null)\n\nexport interface ViewsProviderProps {\n children: ReactNode\n viewType?: string\n projectName?: string\n dispatch?: any\n debug?: {\n powerLicense?: boolean\n }\n}\n\nexport const ViewsProvider: FC<ViewsProviderProps> = ({\n children,\n viewType: viewTypeProp,\n projectName,\n dispatch,\n debug,\n}) => {\n // validate viewType\n const viewType = viewTypes.includes(viewTypeProp as ViewType)\n ? (viewTypeProp as ViewType)\n : undefined\n\n let { powerLicense } = usePowerpack()\n if (debug?.powerLicense !== undefined) {\n console.warn('Using debug power license:', debug.powerLicense)\n powerLicense = debug.powerLicense\n }\n\n const { user: currentUser } = useGlobalContext()\n\n const [isMenuOpen, setIsMenuOpen] = useState(false)\n const [editingView, setEditingView] = useState<EditingViewState>(null)\n // Collapsed state persisted globally across all viewTypes and projects\n const stateKey = 'viewsMenuCollapsed'\n\n const [collapsedSections, setCollapsedSections] = useLocalStorage<CollapsedViewState>(\n stateKey,\n {},\n )\n\n // anything extra to do when a view is created successfully\n const handleOnViewCreated = (view: ViewData) => {\n const key = view.visibility === 'private' ? 'myViews' : 'sharedViews'\n // if the section is collapsed, expand it\n if (collapsedSections[key]) {\n const newCollapsedSections = { ...collapsedSections }\n newCollapsedSections[key] = false\n setCollapsedSections(newCollapsedSections)\n }\n }\n\n const { onCreateView, onDeleteView, onUpdateView, onResetWorkingView } = useViewsMutations({\n viewType,\n projectName,\n onCreate: handleOnViewCreated,\n })\n\n // when editing the view, get all users that can be shared to that view\n const { data: shareOptions } = useGetShareOptionsQuery(\n { projectName },\n { skip: !powerLicense || !editingView },\n )\n\n // setting of default views\n const [selectedView, setSelectedView, previousSelectedViewId] = useSelectedView({\n viewType: viewType as string,\n projectName: projectName,\n })\n\n const [viewSettingsChanged, setViewSettingsChanged] = useViewSettingsChanged({\n viewType: viewType as ViewType,\n })\n\n // Fetch views data\n const { currentData: viewsList = [], isLoading: isLoadingViews } = useListViewsQuery(\n { projectName: projectName, viewType: viewType as string },\n { skip: !viewType },\n )\n\n // always get your working view\n const { currentData: workingView } = useGetWorkingViewQuery(\n { projectName: projectName, viewType: viewType as string },\n { skip: !viewType },\n )\n\n const workingSettings = workingView?.settings\n\n // which settings to use for the view\n const viewSettings =\n !selectedView || selectedView.id === WORKING_VIEW_ID ? workingSettings : selectedView?.settings\n\n // is the working view selected?\n const isViewWorking = selectedView?.id === workingView?.id\n // were we just on a custom view and then edited it and ended up on the working view\n const editingViewId =\n viewSettingsChanged &&\n isViewWorking &&\n !!previousSelectedViewId &&\n previousSelectedViewId !== workingView?.id\n ? previousSelectedViewId\n : undefined\n\n // get data for the view we are editing\n const { currentData: editingViewDataData, isFetching: isLoadingEditingViewData } =\n useGetViewQuery(\n {\n viewId: editingView as string,\n projectName: isViewStudioScope(editingView as string, viewsList) ? undefined : projectName,\n viewType: viewType as string,\n },\n { skip: !(typeof editingView === 'string') || !powerLicense },\n )\n\n const editingViewData = useMemo(\n () => (editingView === editingViewDataData?.id ? editingViewDataData : undefined),\n [editingView, editingViewDataData],\n )\n\n const { onSaveViewFromCurrent } = useSaveViewFromCurrent({\n viewType: viewType,\n projectName,\n viewsList,\n sourceSettings: viewSettings,\n onUpdateView: onUpdateView,\n })\n\n // Reset working view to default (empty) settings\n const resetWorkingView = useCallback(async () => {\n try {\n await onResetWorkingView({\n existingWorkingViewId: workingView?.id,\n selectedViewId: selectedView?.id,\n setSelectedView,\n setSettingsChanged: setViewSettingsChanged,\n notify: true,\n })\n } catch (error) {\n console.error('Failed to reset view:', error)\n }\n }, [workingView, onResetWorkingView, selectedView, setSelectedView, setViewSettingsChanged])\n\n // build the menu items for the views\n const viewMenuItems = useBuildViewMenuItems({\n viewsList,\n workingView,\n viewType,\n projectName,\n currentUser,\n useWorkingView: !powerLicense,\n editingViewId,\n selectedId: selectedView?.id,\n collapsed: collapsedSections,\n setCollapsed: setCollapsedSections,\n onResetWorkingView,\n onSelect: (viewId) => {\n setSelectedView(viewId)\n // reset the settings changed state when switching views\n setViewSettingsChanged(false)\n // close the menu when selecting a view\n setIsMenuOpen(false)\n },\n onEdit: (viewId) => setEditingView(viewId),\n onSave: async (viewId) => onSaveViewFromCurrent(viewId),\n })\n\n const value: ViewsContextValue = {\n viewType,\n projectName,\n isMenuOpen,\n editingView,\n currentUser,\n selectedView,\n viewSettings,\n workingSettings,\n editingViewData,\n isLoadingEditingViewData,\n viewsList,\n workingView,\n editingViewId,\n viewMenuItems,\n isLoadingViews,\n isViewWorking,\n // data\n shareOptions,\n setIsMenuOpen,\n setEditingView,\n setSelectedView,\n onSettingsChanged: setViewSettingsChanged,\n // mutations\n onCreateView,\n onUpdateView,\n onDeleteView,\n // shared actions\n resetWorkingView,\n // api\n api: viewsQueries,\n dispatch,\n }\n\n return <ViewsContext.Provider value={value}>{children}</ViewsContext.Provider>\n}\n\nexport const useViewsContext = (): ViewsContextValue => {\n const context = useContext(ViewsContext)\n if (!context) {\n throw new Error('useViewsContext must be used within a ViewsProvider')\n }\n return context\n}\n\nexport const isViewStudioScope = (viewId: string | undefined, viewsList: ViewListItemModel[]) => {\n if (!viewId) return true\n const view = viewsList.find((v) => v.id === viewId)\n return view?.scope === 'studio'\n}\n"],"names":["ViewsContext","createContext","ViewsProvider","children","viewTypeProp","projectName","dispatch","debug","viewType","viewTypes","powerLicense","usePowerpack","currentUser","useGlobalContext","isMenuOpen","setIsMenuOpen","useState","editingView","setEditingView","stateKey","collapsedSections","setCollapsedSections","useLocalStorage","handleOnViewCreated","view","key","newCollapsedSections","onCreateView","onDeleteView","onUpdateView","onResetWorkingView","useViewsMutations","shareOptions","useGetShareOptionsQuery","selectedView","setSelectedView","previousSelectedViewId","useSelectedView","viewSettingsChanged","setViewSettingsChanged","useViewSettingsChanged","viewsList","isLoadingViews","useListViewsQuery","workingView","useGetWorkingViewQuery","workingSettings","viewSettings","WORKING_VIEW_ID","isViewWorking","editingViewId","editingViewDataData","isLoadingEditingViewData","useGetViewQuery","isViewStudioScope","editingViewData","useMemo","onSaveViewFromCurrent","useSaveViewFromCurrent","resetWorkingView","useCallback","error","viewMenuItems","useBuildViewMenuItems","viewId","value","viewsQueries","jsx","useViewsContext","context","useContext","v"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const B=require("../../../../../_virtual/jsx-runtime.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");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");const F=require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");const u=require("react"),E=require("../ViewsMenu/ViewsMenu.cjs.js"),S=require("@ynput/ayon-react-components"),G=require("../utils/generateWorkingView.cjs.js"),y=require("react-toastify"),K=require("../../../hooks/useLoadModule.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("lodash");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");const N=require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");const A=require("../utils/getCustomViewsFallback.cjs.js"),_="_working_",Q=({viewsList:d,workingView:q,viewType:n,projectName:w,currentUser:o,useWorkingView:m,editingViewId:g,collapsed:t,setCollapsed:V,onSelect:a,onEdit:R,onSave:W,onResetWorkingView:l,selectedId:c})=>{const{powerLicense:x}=N.usePowerpack(),[h]=F.useCreateViewMutation(),D=u.useMemo(()=>d.map(e=>({...e,isOwner:e.owner===(o==null?void 0:o.name),highlighted:g===e.id?"save":void 0})),[d,o,g]),L={id:_,label:m?"Personal view":"Working view",startContent:m&&B.jsxRuntimeExports.jsx(S.Icon,{icon:"person"}),isEditable:!1},f=u.useCallback(async()=>{let e=q==null?void 0:q.id;if(!q)try{console.warn("No working view found, creating a new one");const r=G.generateWorkingView();await h({payload:r,viewType:n,projectName:w}).unwrap(),e=r.id}catch(r){y.toast.error(`Failed to create working view: ${r}`)}a(e)},[q,n,h,w,a]),P=async e=>{try{await W(e),a(e)}catch(r){y.toast.error(r)}},[O,{isLoading:T}]=K.useLoadModule({addon:"powerpack",remote:"views",module:"getCustomViews",fallback:A.getCustomViewsFallback,skip:!n||!x}),{myViews:p,sharedViews:I,allPrivateViews:v}=O({viewsList:D,onEdit:R,onSelect:a,onSave:P}),k=u.useCallback(e=>{V({...t,[e]:!t[e]})},[t,V]),C=u.useMemo(()=>[{id:"myViews",title:"My views",items:p},{id:"sharedViews",title:"Shared views",items:I},{id:"allPrivateViews",title:"All private views",items:v}],[p,I,v]),M=u.useMemo(()=>({...L,onClick:f,isEditable:!!l,onResetView:l}),[f,l]);return u.useMemo(()=>{const e=[M],r=C.filter(i=>{var s;return(((s=i.items)==null?void 0:s.length)||0)>0});return r.length>0&&e.push(E.VIEW_DIVIDER),r.forEach(i=>{const s=!!t[i.id];if(e.push({type:"section",id:i.id,title:i.title,collapsed:s,onToggle:()=>k(i.id)}),!s)e.push(...i.items);else if(c){const b=i.items.find(j=>j.id===c);b&&e.push(b)}}),r.length>0&&e.push(E.VIEW_DIVIDER),e},[M,C,t,k,c])};exports.WORKING_VIEW_ID=_;exports.default=Q;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const B=require("../../../../../_virtual/jsx-runtime.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");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");const F=require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");const u=require("react"),E=require("../ViewsMenu/ViewsMenu.cjs.js"),S=require("@ynput/ayon-react-components"),G=require("../utils/generateWorkingView.cjs.js"),y=require("react-toastify"),K=require("../../../hooks/useLoadModule.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("lodash");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");const N=require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");const A=require("../utils/getCustomViewsFallback.cjs.js"),_="_working_",Q=({viewsList:d,workingView:q,viewType:n,projectName:w,currentUser:o,useWorkingView:m,editingViewId:g,collapsed:t,setCollapsed:V,onSelect:a,onEdit:R,onSave:W,onResetWorkingView:l,selectedId:c})=>{const{powerLicense:x}=N.usePowerpack(),[h]=F.useCreateViewMutation(),D=u.useMemo(()=>d.map(e=>({...e,isOwner:e.owner===(o==null?void 0:o.name),highlighted:g===e.id?"save":void 0})),[d,o,g]),L={id:_,label:m?"Personal view":"Working view",startContent:m&&B.jsxRuntimeExports.jsx(S.Icon,{icon:"person"}),isEditable:!1},f=u.useCallback(async()=>{let e=q==null?void 0:q.id;if(!q)try{console.warn("No working view found, creating a new one");const r=G.generateWorkingView();await h({payload:r,viewType:n,projectName:w}).unwrap(),e=r.id}catch(r){y.toast.error(`Failed to create working view: ${r}`)}a(e)},[q,n,h,w,a]),P=async e=>{try{await W(e),a(e)}catch(r){y.toast.error(r)}},[O,{isLoading:T}]=K.useLoadModule({addon:"powerpack",remote:"views",module:"getCustomViews",fallback:A.getCustomViewsFallback,skip:!n||!x}),{myViews:p,sharedViews:I,allPrivateViews:v}=O({viewsList:D,onEdit:R,onSelect:a,onSave:P}),k=u.useCallback(e=>{V({...t,[e]:!t[e]})},[t,V]),C=u.useMemo(()=>[{id:"myViews",title:"My views",items:p},{id:"sharedViews",title:"Shared views",items:I},{id:"allPrivateViews",title:"All private views",items:v}],[p,I,v]),M=u.useMemo(()=>({...L,onClick:f,isEditable:!!l,onResetView:l}),[f,l]);return u.useMemo(()=>{const e=[M],r=C.filter(i=>{var s;return(((s=i.items)==null?void 0:s.length)||0)>0});return r.length>0&&e.push(E.VIEW_DIVIDER),r.forEach(i=>{const s=!!t[i.id];if(e.push({type:"section",id:i.id,title:i.title,collapsed:s,onToggle:()=>k(i.id)}),!s)e.push(...i.items);else if(c){const b=i.items.find(j=>j.id===c);b&&e.push(b)}}),r.length>0&&e.push(E.VIEW_DIVIDER),e},[M,C,t,k,c])};exports.WORKING_VIEW_ID=_;exports.default=Q;
2
2
  //# sourceMappingURL=useBuildViewMenuItems.cjs.js.map