@ynput/ayon-frontend-shared 0.2.29 → 0.2.30

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 (629) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +25 -22
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +51 -49
  6. package/dist/ProjectTreeTable.es.js.map +1 -1
  7. package/dist/api.cjs.js +1 -1
  8. package/dist/api.es.js +220 -213
  9. package/dist/api.es.js.map +1 -1
  10. package/dist/components.cjs.js +1 -1
  11. package/dist/components.es.js +82 -74
  12. package/dist/components.es.js.map +1 -1
  13. package/dist/context.cjs.js +1 -1
  14. package/dist/context.es.js +23 -19
  15. package/dist/context.es.js.map +1 -1
  16. package/dist/hooks.cjs.js +1 -1
  17. package/dist/hooks.es.js +12 -10
  18. package/dist/hooks.es.js.map +1 -1
  19. package/dist/index.cjs.js +1 -1
  20. package/dist/index.es.js +11 -9
  21. package/dist/index.es.js.map +1 -1
  22. package/dist/shared/src/api/base/client.cjs.js +1 -1
  23. package/dist/shared/src/api/base/client.cjs.js.map +1 -1
  24. package/dist/shared/src/api/base/client.es.js +8 -7
  25. package/dist/shared/src/api/base/client.es.js.map +1 -1
  26. package/dist/shared/src/api/generated/anatomy.cjs.js.map +1 -1
  27. package/dist/shared/src/api/generated/anatomy.es.js.map +1 -1
  28. package/dist/shared/src/api/generated/attributes.cjs.js +1 -1
  29. package/dist/shared/src/api/generated/attributes.cjs.js.map +1 -1
  30. package/dist/shared/src/api/generated/attributes.es.js +9 -2
  31. package/dist/shared/src/api/generated/attributes.es.js.map +1 -1
  32. package/dist/shared/src/api/generated/entityLists.cjs.js +1 -1
  33. package/dist/shared/src/api/generated/entityLists.cjs.js.map +1 -1
  34. package/dist/shared/src/api/generated/entityLists.es.js +46 -0
  35. package/dist/shared/src/api/generated/entityLists.es.js.map +1 -1
  36. package/dist/shared/src/api/generated/graphql.cjs.js +10 -5
  37. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  38. package/dist/shared/src/api/generated/graphql.es.js +23 -18
  39. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  40. package/dist/shared/src/api/generated/projects.cjs.js.map +1 -1
  41. package/dist/shared/src/api/generated/projects.es.js.map +1 -1
  42. package/dist/shared/src/api/queries/attributes/updateAttributes.cjs.js +1 -1
  43. package/dist/shared/src/api/queries/attributes/updateAttributes.cjs.js.map +1 -1
  44. package/dist/shared/src/api/queries/attributes/updateAttributes.es.js +12 -5
  45. package/dist/shared/src/api/queries/attributes/updateAttributes.es.js.map +1 -1
  46. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +1 -1
  47. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  48. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +4 -3
  49. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  50. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +1 -1
  51. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
  52. package/dist/shared/src/api/queries/entities/updateEntity.es.js +33 -32
  53. package/dist/shared/src/api/queries/entities/updateEntity.es.js.map +1 -1
  54. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +1 -1
  55. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -1
  56. package/dist/shared/src/api/queries/entityLists/getLists.es.js +151 -125
  57. package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -1
  58. package/dist/shared/src/api/queries/entityLists/listFolders.cjs.js +2 -0
  59. package/dist/shared/src/api/queries/entityLists/listFolders.cjs.js.map +1 -0
  60. package/dist/shared/src/api/queries/entityLists/listFolders.es.js +111 -0
  61. package/dist/shared/src/api/queries/entityLists/listFolders.es.js.map +1 -0
  62. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js +1 -1
  63. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js.map +1 -1
  64. package/dist/shared/src/api/queries/entityLists/updateLists.es.js +104 -88
  65. package/dist/shared/src/api/queries/entityLists/updateLists.es.js.map +1 -1
  66. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
  67. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  68. package/dist/shared/src/api/queries/overview/updateOverview.es.js +7 -6
  69. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  70. package/dist/shared/src/api/queries/project/getProject.cjs.js +1 -19
  71. package/dist/shared/src/api/queries/project/getProject.cjs.js.map +1 -1
  72. package/dist/shared/src/api/queries/project/getProject.es.js +10 -70
  73. package/dist/shared/src/api/queries/project/getProject.es.js.map +1 -1
  74. package/dist/shared/src/api/queries/project/updateProject.cjs.js +1 -1
  75. package/dist/shared/src/api/queries/project/updateProject.cjs.js.map +1 -1
  76. package/dist/shared/src/api/queries/project/updateProject.es.js +35 -61
  77. package/dist/shared/src/api/queries/project/updateProject.es.js.map +1 -1
  78. package/dist/shared/src/api/queries/system/getSystem.cjs.js +1 -1
  79. package/dist/shared/src/api/queries/system/getSystem.cjs.js.map +1 -1
  80. package/dist/shared/src/api/queries/system/getSystem.es.js +14 -8
  81. package/dist/shared/src/api/queries/system/getSystem.es.js.map +1 -1
  82. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -1
  83. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js.map +1 -1
  84. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +23 -23
  85. package/dist/shared/src/api/queries/users/getUsers.cjs.js +1 -1
  86. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  87. package/dist/shared/src/api/queries/users/getUsers.es.js +18 -17
  88. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  89. package/dist/shared/src/api/queries/users/updateUsers.cjs.js +1 -1
  90. package/dist/shared/src/api/queries/users/updateUsers.cjs.js.map +1 -1
  91. package/dist/shared/src/api/queries/users/updateUsers.es.js +19 -11
  92. package/dist/shared/src/api/queries/users/updateUsers.es.js.map +1 -1
  93. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js +1 -1
  94. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js.map +1 -1
  95. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js +30 -29
  96. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js.map +1 -1
  97. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
  98. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  99. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +3 -2
  100. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  101. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js +5 -3
  102. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js.map +1 -1
  103. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js +64 -51
  104. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js.map +1 -1
  105. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +3 -3
  106. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  107. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +66 -59
  108. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  109. package/dist/shared/src/components/DetailsPanelDetails/BorderedSection.cjs.js +4 -5
  110. package/dist/shared/src/components/DetailsPanelDetails/BorderedSection.cjs.js.map +1 -1
  111. package/dist/shared/src/components/DetailsPanelDetails/BorderedSection.es.js +46 -41
  112. package/dist/shared/src/components/DetailsPanelDetails/BorderedSection.es.js.map +1 -1
  113. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  114. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  115. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +4 -2
  116. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  117. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.cjs.js +76 -5
  118. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.cjs.js.map +1 -1
  119. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.es.js +76 -5
  120. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.es.js.map +1 -1
  121. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -2
  122. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
  123. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +11 -11
  124. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
  125. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.cjs.js +4 -4
  126. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.cjs.js.map +1 -1
  127. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.es.js +32 -32
  128. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.es.js.map +1 -1
  129. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.cjs.js +2 -2
  130. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.cjs.js.map +1 -1
  131. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.es.js +15 -8
  132. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.es.js.map +1 -1
  133. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.cjs.js +1 -1
  134. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.cjs.js.map +1 -1
  135. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.es.js +3 -2
  136. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.es.js.map +1 -1
  137. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  138. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
  139. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +3 -2
  140. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  141. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  142. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  143. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +5 -2
  144. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  145. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
  146. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
  147. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +3 -2
  148. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
  149. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.cjs.js +1 -1
  150. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.cjs.js.map +1 -1
  151. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.es.js +51 -152
  152. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.es.js.map +1 -1
  153. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.cjs.js +3 -1
  154. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.cjs.js.map +1 -1
  155. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.es.js +3 -1
  156. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.es.js.map +1 -1
  157. package/dist/shared/src/components/EnumEditor/EnumEditorItem.cjs.js +2 -0
  158. package/dist/shared/src/components/EnumEditor/EnumEditorItem.cjs.js.map +1 -0
  159. package/dist/shared/src/components/EnumEditor/EnumEditorItem.es.js +141 -0
  160. package/dist/shared/src/components/EnumEditor/EnumEditorItem.es.js.map +1 -0
  161. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  162. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  163. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +5 -4
  164. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  165. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  166. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  167. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +5 -2
  168. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  169. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
  170. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  171. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +3 -2
  172. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  173. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  174. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  175. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +5 -2
  176. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  177. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +2 -0
  178. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -0
  179. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +177 -0
  180. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -0
  181. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js +2 -0
  182. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js.map +1 -0
  183. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js +31 -0
  184. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js.map +1 -0
  185. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +3 -3
  186. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
  187. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +8 -7
  188. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
  189. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  190. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  191. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +42 -31
  192. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  193. package/dist/shared/src/components/Powerpack/PowerpackDialog.styled.cjs.js +12 -2
  194. package/dist/shared/src/components/Powerpack/PowerpackDialog.styled.cjs.js.map +1 -1
  195. package/dist/shared/src/components/Powerpack/PowerpackDialog.styled.es.js +15 -4
  196. package/dist/shared/src/components/Powerpack/PowerpackDialog.styled.es.js.map +1 -1
  197. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
  198. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  199. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +7 -4
  200. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  201. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  202. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  203. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +6 -3
  204. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  205. package/dist/shared/src/components/QuillListStyles/QuillListStyles.cjs.js +2 -1
  206. package/dist/shared/src/components/QuillListStyles/QuillListStyles.cjs.js.map +1 -1
  207. package/dist/shared/src/components/QuillListStyles/QuillListStyles.es.js +2 -1
  208. package/dist/shared/src/components/QuillListStyles/QuillListStyles.es.js.map +1 -1
  209. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +5 -5
  210. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  211. package/dist/shared/src/components/RenameForm/RenameForm.es.js +116 -105
  212. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  213. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
  214. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  215. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +3 -2
  216. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  217. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  218. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  219. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +5 -2
  220. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  221. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  222. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  223. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +6 -3
  224. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  225. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  226. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  227. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +5 -2
  228. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  229. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
  230. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  231. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +3 -2
  232. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  233. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  234. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  235. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +3 -2
  236. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  237. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +3 -3
  238. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
  239. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +6 -5
  240. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
  241. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  242. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  243. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +5 -2
  244. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  245. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +1 -1
  246. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
  247. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +12 -11
  248. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
  249. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  250. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  251. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +5 -2
  252. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  253. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  254. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  255. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +5 -4
  256. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  257. package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
  258. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  259. package/dist/shared/src/components/Watchers/Watchers.es.js +3 -2
  260. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  261. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  262. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  263. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +5 -2
  264. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  265. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  266. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  267. package/dist/shared/src/containers/Actions/Actions.es.js +4 -2
  268. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  269. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  270. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  271. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +5 -2
  272. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  273. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  274. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  275. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +149 -160
  276. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  277. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.cjs.js +7 -1
  278. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.cjs.js.map +1 -1
  279. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.es.js +13 -6
  280. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.es.js.map +1 -1
  281. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  282. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  283. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +5 -2
  284. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  285. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  286. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  287. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +6 -3
  288. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  289. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  290. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  291. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +5 -2
  292. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  293. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  294. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  295. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +4 -2
  296. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  297. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js +1 -1
  298. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js.map +1 -1
  299. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js +3 -2
  300. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js.map +1 -1
  301. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js +1 -1
  302. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js.map +1 -1
  303. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js +3 -2
  304. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js.map +1 -1
  305. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  306. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  307. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +3 -2
  308. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  309. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  310. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  311. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +5 -2
  312. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  313. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  314. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  315. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +5 -2
  316. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  317. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  318. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  319. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +5 -2
  320. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  321. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  322. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  323. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +5 -2
  324. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  325. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  326. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  327. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +4 -2
  328. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  329. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  330. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  331. package/dist/shared/src/containers/Feed/Feed.es.js +20 -19
  332. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  333. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  334. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  335. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +3 -2
  336. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  337. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js +18 -3
  338. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js.map +1 -1
  339. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.es.js +24 -9
  340. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.es.js.map +1 -1
  341. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
  342. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
  343. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +3 -2
  344. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
  345. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js +7 -0
  346. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js.map +1 -1
  347. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js +7 -0
  348. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js.map +1 -1
  349. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -1
  350. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
  351. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +3 -2
  352. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
  353. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
  354. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
  355. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +3 -2
  356. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
  357. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
  358. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
  359. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +3 -2
  360. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
  361. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  362. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  363. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +3 -2
  364. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  365. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  366. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  367. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +7 -5
  368. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  369. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  370. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  371. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +3 -2
  372. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  373. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  374. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  375. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +8 -4
  376. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  377. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  378. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  379. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +191 -183
  380. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  381. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +3 -3
  382. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  383. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +280 -57
  384. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  385. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  386. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  387. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +5 -2
  388. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  389. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  390. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  391. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +5 -2
  392. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  393. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  394. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  395. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +34 -32
  396. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  397. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  398. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  399. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +5 -2
  400. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  401. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
  402. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  403. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +10 -9
  404. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  405. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  406. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  407. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +7 -5
  408. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  409. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  410. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  411. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +20 -18
  412. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  413. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  414. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  415. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +48 -45
  416. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  417. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  418. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  419. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +5 -2
  420. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  421. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +2 -0
  422. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -0
  423. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +239 -0
  424. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -0
  425. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  426. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  427. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +3 -2
  428. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  429. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  430. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  431. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +5 -2
  432. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  433. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js +1 -1
  434. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js.map +1 -1
  435. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js +3 -2
  436. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js.map +1 -1
  437. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  438. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  439. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +25 -22
  440. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  441. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  442. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  443. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +5 -2
  444. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  445. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  446. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  447. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +5 -2
  448. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  449. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js +1 -1
  450. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js.map +1 -1
  451. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js +4 -2
  452. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js.map +1 -1
  453. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  454. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  455. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +5 -2
  456. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  457. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  458. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  459. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +16 -13
  460. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  461. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +1 -1
  462. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  463. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +5 -3
  464. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  465. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js +2 -2
  466. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js.map +1 -1
  467. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js +57 -55
  468. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js.map +1 -1
  469. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  470. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  471. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +7 -4
  472. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  473. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  474. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  475. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +5 -2
  476. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  477. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  478. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  479. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +5 -2
  480. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  481. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  482. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  483. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +169 -148
  484. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  485. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.cjs.js +23 -4
  486. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.cjs.js.map +1 -1
  487. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.es.js +24 -5
  488. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.es.js.map +1 -1
  489. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js +1 -1
  490. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js.map +1 -1
  491. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js +62 -50
  492. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js.map +1 -1
  493. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  494. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  495. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +4 -2
  496. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  497. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +2 -2
  498. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
  499. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +9 -8
  500. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
  501. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  502. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  503. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +6 -4
  504. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  505. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  506. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  507. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +4 -2
  508. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  509. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js +1 -1
  510. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -1
  511. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js +4 -2
  512. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -1
  513. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
  514. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
  515. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +3 -2
  516. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
  517. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
  518. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
  519. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +3 -2
  520. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
  521. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  522. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  523. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +3 -2
  524. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  525. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  526. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  527. package/dist/shared/src/context/AddonProjectContext.es.js +13 -12
  528. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  529. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  530. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  531. package/dist/shared/src/context/DetailsPanelContext.es.js +6 -4
  532. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  533. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  534. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  535. package/dist/shared/src/context/PowerpackContext.es.js +61 -41
  536. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  537. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  538. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  539. package/dist/shared/src/context/RemoteModulesContext.es.js +5 -4
  540. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  541. package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
  542. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  543. package/dist/shared/src/hooks/useActionTriggers.es.js +3 -2
  544. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  545. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  546. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  547. package/dist/shared/src/hooks/useEntityUpdate.es.js +4 -2
  548. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  549. package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
  550. package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
  551. package/dist/shared/src/hooks/useHierarchyTable.es.js +3 -2
  552. package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
  553. package/dist/shared/src/hooks/useQueryArgumentChangeLoading.cjs.js +2 -0
  554. package/dist/shared/src/hooks/useQueryArgumentChangeLoading.cjs.js.map +1 -0
  555. package/dist/shared/src/hooks/useQueryArgumentChangeLoading.es.js +12 -0
  556. package/dist/shared/src/hooks/useQueryArgumentChangeLoading.es.js.map +1 -0
  557. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
  558. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  559. package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
  560. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  561. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  562. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  563. package/dist/shared/src/hooks/useUserProjectConfig.es.js +3 -2
  564. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  565. package/dist/shared/src/util/checkName.cjs.js +1 -1
  566. package/dist/shared/src/util/checkName.cjs.js.map +1 -1
  567. package/dist/shared/src/util/checkName.es.js +35 -5
  568. package/dist/shared/src/util/checkName.es.js.map +1 -1
  569. package/dist/src/components/Menu/MenuComponents/Menu.cjs.js +1 -1
  570. package/dist/src/components/Menu/MenuComponents/Menu.cjs.js.map +1 -1
  571. package/dist/src/components/Menu/MenuComponents/Menu.es.js +59 -35
  572. package/dist/src/components/Menu/MenuComponents/Menu.es.js.map +1 -1
  573. package/dist/src/components/Menu/MenuComponents/Menu.styled.cjs.js +13 -0
  574. package/dist/src/components/Menu/MenuComponents/Menu.styled.cjs.js.map +1 -1
  575. package/dist/src/components/Menu/MenuComponents/Menu.styled.es.js +13 -0
  576. package/dist/src/components/Menu/MenuComponents/Menu.styled.es.js.map +1 -1
  577. package/dist/src/components/Menu/MenuComponents/MenuItem.cjs.js +1 -1
  578. package/dist/src/components/Menu/MenuComponents/MenuItem.cjs.js.map +1 -1
  579. package/dist/src/components/Menu/MenuComponents/MenuItem.es.js +52 -36
  580. package/dist/src/components/Menu/MenuComponents/MenuItem.es.js.map +1 -1
  581. package/dist/src/components/Menu/MenuComponents/MenuList.cjs.js +1 -1
  582. package/dist/src/components/Menu/MenuComponents/MenuList.cjs.js.map +1 -1
  583. package/dist/src/components/Menu/MenuComponents/MenuList.es.js +103 -83
  584. package/dist/src/components/Menu/MenuComponents/MenuList.es.js.map +1 -1
  585. package/dist/types/api/generated/anatomy.d.ts +23 -0
  586. package/dist/types/api/generated/attributes.d.ts +15 -4
  587. package/dist/types/api/generated/entityLists.d.ts +102 -9
  588. package/dist/types/api/generated/graphql.d.ts +9 -1
  589. package/dist/types/api/generated/projects.d.ts +8 -0
  590. package/dist/types/api/queries/attributes/getAttributes.d.ts +1 -0
  591. package/dist/types/api/queries/attributes/updateAttributes.d.ts +162 -0
  592. package/dist/types/api/queries/entityLists/getLists.d.ts +152 -0
  593. package/dist/types/api/queries/entityLists/getListsAttributes.d.ts +5 -0
  594. package/dist/types/api/queries/entityLists/index.d.ts +1 -0
  595. package/dist/types/api/queries/entityLists/listFolders.d.ts +613 -0
  596. package/dist/types/api/queries/entityLists/types.d.ts +3 -1
  597. package/dist/types/api/queries/entityLists/updateLists.d.ts +5 -0
  598. package/dist/types/api/queries/entityLists/updateListsAttributes.d.ts +5 -0
  599. package/dist/types/api/queries/project/getProject.d.ts +4 -305
  600. package/dist/types/api/queries/project/updateProject.d.ts +803 -0
  601. package/dist/types/api/queries/users/updateUsers.d.ts +160 -0
  602. package/dist/types/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.d.ts +4 -0
  603. package/dist/types/components/DetailsPanelDetails/BorderedSection.d.ts +5 -3
  604. package/dist/types/components/DetailsPanelDetails/DetailsSection.d.ts +3 -2
  605. package/dist/types/components/DetailsPanelDetails/index.d.ts +1 -0
  606. package/dist/types/components/EnumEditor/EnumEditorItem.d.ts +13 -0
  607. package/dist/types/components/EnumEditor/index.d.ts +1 -0
  608. package/dist/types/components/ListAttributeForm/ListAttributeForm.d.ts +11 -0
  609. package/dist/types/components/ListAttributeForm/index.d.ts +1 -0
  610. package/dist/types/components/ListMetaData/ListMetaData.d.ts +8 -0
  611. package/dist/types/components/ListMetaData/index.d.ts +1 -0
  612. package/dist/types/components/Powerpack/PowerpackDialog.styled.d.ts +1 -0
  613. package/dist/types/components/index.d.ts +2 -0
  614. package/dist/types/containers/DetailsPanel/DetailsPanel.styled.d.ts +7 -0
  615. package/dist/types/containers/ProjectTreeTable/context/ProjectDataContext.d.ts +2 -0
  616. package/dist/types/containers/ProjectTreeTable/hooks/index.d.ts +1 -0
  617. package/dist/types/containers/ProjectTreeTable/hooks/useAttributesList.d.ts +1 -2
  618. package/dist/types/containers/ProjectTreeTable/hooks/useColumnGroupBy.d.ts +10 -0
  619. package/dist/types/containers/SimpleTable/SimpleTable.d.ts +3 -0
  620. package/dist/types/containers/SimpleTable/SimpleTableRowTemplate.d.ts +5 -1
  621. package/dist/types/context/AddonProjectContext.d.ts +2 -1
  622. package/dist/types/context/PowerpackContext.d.ts +4 -2
  623. package/dist/types/context/index.d.ts +1 -0
  624. package/dist/types/hooks/index.d.ts +1 -0
  625. package/dist/types/hooks/useQueryArgumentChangeLoading.d.ts +9 -0
  626. package/dist/types/util/checkName.d.ts +9 -1
  627. package/dist/util.cjs.js +1 -1
  628. package/dist/util.es.js +34 -32
  629. package/package.json +1 -1
@@ -17,12 +17,13 @@ import "../../../context/AddonProjectContext.es.js";
17
17
  import "../../../context/AddonContext.es.js";
18
18
  import { usePowerpack as W } from "../../../context/PowerpackContext.es.js";
19
19
  import "../../../context/MoveEntityContext.es.js";
20
+ import "../../../context/MenuContext.es.js";
20
21
  import { ViewsModal as A } from "../Views.styled.es.js";
21
22
  import { VIEWS_DIALOG_CLASS as G } from "../ViewsDialogContainer/ViewsDialogContainer.es.js";
22
23
  const q = S(V)`
23
24
  color: var(--md-sys-color-tertiary);
24
25
  font-variation-settings: 'FILL' 1, 'wght' 200, 'GRAD' 200, 'opsz' 20;
25
- `, F = "_working_", K = "_new_view_", ae = () => {
26
+ `, F = "_working_", K = "_new_view_", le = () => {
26
27
  const {
27
28
  viewType: v,
28
29
  isMenuOpen: o,
@@ -31,14 +32,14 @@ const q = S(V)`
31
32
  selectedView: c,
32
33
  workingView: m,
33
34
  viewMenuItems: x
34
- } = M(), { powerLicense: d, setPowerpackDialog: p } = W(), s = j(null), e = R(v), i = e == null ? void 0 : e.getBoundingClientRect(), y = {
35
- top: i ? i.bottom + 8 : 0,
36
- left: i ? i.left : 0
35
+ } = M(), { powerLicense: d, setPowerpackDialog: p } = W(), i = j(null), e = R(v), s = e == null ? void 0 : e.getBoundingClientRect(), y = {
36
+ top: s ? s.bottom + 8 : 0,
37
+ left: s ? s.left : 0
37
38
  };
38
39
  g(() => {
39
40
  const u = (a) => {
40
41
  var w, I, E;
41
- const r = a.target, C = ((w = s.current) == null ? void 0 : w.contains(r)) || (e == null ? void 0 : e.contains(r)), L = (I = document.querySelector("." + G)) == null ? void 0 : I.contains(r), b = (E = document.querySelector(".options")) == null ? void 0 : E.contains(r);
42
+ const r = a.target, C = ((w = i.current) == null ? void 0 : w.contains(r)) || (e == null ? void 0 : e.contains(r)), L = (I = document.querySelector("." + G)) == null ? void 0 : I.contains(r), b = (E = document.querySelector(".options")) == null ? void 0 : E.contains(r);
42
43
  !C && !L && !b && o && n(!1);
43
44
  }, f = (a) => {
44
45
  a.key === "Escape" && o && n(!1);
@@ -47,13 +48,13 @@ const q = S(V)`
47
48
  document.removeEventListener("mousedown", u), document.removeEventListener("keydown", f);
48
49
  };
49
50
  }, [o, e, n]), g(() => {
50
- o && s.current && s.current.focus();
51
+ o && i.current && i.current.focus();
51
52
  }, [o]);
52
53
  const k = h(() => {
53
54
  d ? l(!0) : p("sharedViews");
54
55
  }, [d, p, l, n]), _ = !c || (m == null ? void 0 : m.id) === c.id ? F : c.id;
55
56
  return /* @__PURE__ */ t.jsx(t.Fragment, { children: o && D(
56
- /* @__PURE__ */ t.jsxs(A, { style: y, ref: s, tabIndex: 0, children: [
57
+ /* @__PURE__ */ t.jsxs(A, { style: y, ref: i, tabIndex: 0, children: [
57
58
  /* @__PURE__ */ t.jsx(P, { items: x, selected: _ }),
58
59
  /* @__PURE__ */ t.jsx(
59
60
  O,
@@ -72,7 +73,7 @@ const q = S(V)`
72
73
  };
73
74
  export {
74
75
  K as NEW_VIEW_ID,
75
- ae as ViewsMenuContainer,
76
+ le as ViewsMenuContainer,
76
77
  F as WORKING_VIEW_ID
77
78
  };
78
79
  //# sourceMappingURL=ViewsMenuContainer.es.js.map
@@ -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"),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/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/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/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");const Z=require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");const C=require("../../../api/queries/views/getViews.cjs.js"),$=require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");const j=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 N=require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");const ee=require("../hooks/useSelectedView.cjs.js"),re=require("../hooks/useViewsMutations.cjs.js"),ie=require("../hooks/useSaveViewFromCurrent.cjs.js"),se=require("../hooks/useViewSettingsChanged.cjs.js"),te=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");const ue=require("../ViewsMenuContainer/ViewsMenuContainer.cjs.js"),P=o.createContext(null),ne=({children:u,viewType:a,projectName:i,dispatch:S,debug:q})=>{const s=X.viewTypes.includes(a)?a:void 0;let{powerLicense:d}=N.usePowerpack();(q==null?void 0:q.powerLicense)!==void 0&&(console.warn("Using debug power license:",q.powerLicense),d=q.powerLicense);const{data:y}=Z.useGetCurrentUserQuery(),[D,h]=o.useState(!1),[n,f]=o.useState(null),F="viewsMenuCollapsed",[g,x]=te.useLocalStorage(F,{}),G=t=>{const O=t.visibility==="private"?"myViews":"sharedViews";if(g[O]){const E={...g};E[O]=!1,x(E)}},{onCreateView:R,onDeleteView:U,onUpdateView:I,onResetWorkingView:p}=re.useViewsMutations({viewType:s,projectName:i,onCreate:G}),{data:m}=Y.useGetShareOptionsQuery({projectName:i},{skip:!d||!n}),[e,w,v]=ee.useSelectedView({viewType:s,projectName:i}),[T,l]=se.useViewSettingsChanged({viewType:s}),{currentData:V=[],isLoading:K}=C.useListViewsQuery({projectName:i,viewType:s},{skip:!s}),{currentData:r}=C.useGetWorkingViewQuery({projectName:i,viewType:s},{skip:!s}),L=r==null?void 0:r.settings,M=!e||e.id===ue.WORKING_VIEW_ID?L:e==null?void 0:e.settings,k=(e==null?void 0:e.id)===(r==null?void 0:r.id),W=T&&k&&v&&v!==(r==null?void 0:r.id)?v:void 0,{currentData:c,isFetching:_}=C.useGetViewQuery({viewId:n,projectName:Q(n,V)?void 0:i,viewType:s},{skip:typeof n!="string"||!d}),B=o.useMemo(()=>n===(c==null?void 0:c.id)?c:void 0,[n,c]),{onSaveViewFromCurrent:b}=ie.useSaveViewFromCurrent({viewType:s,projectName:i,viewsList:V,sourceSettings:M,onUpdateView:I}),z=o.useCallback(async()=>{try{await p({existingWorkingViewId:r==null?void 0:r.id,selectedViewId:e==null?void 0:e.id,setSelectedView:w,setSettingsChanged:l,notify:!0})}catch(t){console.error("Failed to reset view:",t)}},[r,p,e,w,l]),A=j.default({viewsList:V,workingView:r,viewType:s,projectName:i,currentUser:y,useWorkingView:!d,editingViewId:W,selectedId:e==null?void 0:e.id,collapsed:g,setCollapsed:x,onResetWorkingView:p,onSelect:t=>{w(t),l(!1),h(!1)},onEdit:t=>f(t),onSave:async t=>b(t)}),H={viewType:s,projectName:i,isMenuOpen:D,editingView:n,currentUser:y,selectedView:e,viewSettings:M,workingSettings:L,editingViewData:B,isLoadingEditingViewData:_,viewsList:V,workingView:r,editingViewId:W,viewMenuItems:A,isLoadingViews:K,isViewWorking:k,shareOptions:m,setIsMenuOpen:h,setEditingView:f,setSelectedView:w,onSettingsChanged:l,onCreateView:R,onUpdateView:I,onDeleteView:U,resetWorkingView:z,api:$.viewsQueries,dispatch:S};return J.jsxRuntimeExports.jsx(P.Provider,{value:H,children:u})},oe=()=>{const u=o.useContext(P);if(!u)throw new Error("useViewsContext must be used within a ViewsProvider");return u},Q=(u,a)=>{if(!u)return!0;const i=a.find(S=>S.id===u);return(i==null?void 0:i.scope)==="studio"};exports.ViewsProvider=ne;exports.isViewStudioScope=Q;exports.useViewsContext=oe;
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/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/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");const Z=require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");const C=require("../../../api/queries/views/getViews.cjs.js"),$=require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");const j=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 N=require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");const ee=require("../hooks/useSelectedView.cjs.js"),re=require("../hooks/useViewsMutations.cjs.js"),ie=require("../hooks/useSaveViewFromCurrent.cjs.js"),se=require("../hooks/useViewSettingsChanged.cjs.js"),te=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");const ue=require("../ViewsMenuContainer/ViewsMenuContainer.cjs.js"),P=o.createContext(null),ne=({children:u,viewType:a,projectName:i,dispatch:S,debug:q})=>{const s=X.viewTypes.includes(a)?a:void 0;let{powerLicense:d}=N.usePowerpack();(q==null?void 0:q.powerLicense)!==void 0&&(console.warn("Using debug power license:",q.powerLicense),d=q.powerLicense);const{data:y}=Z.useGetCurrentUserQuery(),[D,h]=o.useState(!1),[n,f]=o.useState(null),F="viewsMenuCollapsed",[g,x]=te.useLocalStorage(F,{}),G=t=>{const O=t.visibility==="private"?"myViews":"sharedViews";if(g[O]){const E={...g};E[O]=!1,x(E)}},{onCreateView:R,onDeleteView:U,onUpdateView:I,onResetWorkingView:p}=re.useViewsMutations({viewType:s,projectName:i,onCreate:G}),{data:m}=Y.useGetShareOptionsQuery({projectName:i},{skip:!d||!n}),[e,w,v]=ee.useSelectedView({viewType:s,projectName:i}),[T,l]=se.useViewSettingsChanged({viewType:s}),{currentData:V=[],isLoading:K}=C.useListViewsQuery({projectName:i,viewType:s},{skip:!s}),{currentData:r}=C.useGetWorkingViewQuery({projectName:i,viewType:s},{skip:!s}),L=r==null?void 0:r.settings,M=!e||e.id===ue.WORKING_VIEW_ID?L:e==null?void 0:e.settings,k=(e==null?void 0:e.id)===(r==null?void 0:r.id),W=T&&k&&v&&v!==(r==null?void 0:r.id)?v:void 0,{currentData:c,isFetching:_}=C.useGetViewQuery({viewId:n,projectName:Q(n,V)?void 0:i,viewType:s},{skip:typeof n!="string"||!d}),B=o.useMemo(()=>n===(c==null?void 0:c.id)?c:void 0,[n,c]),{onSaveViewFromCurrent:b}=ie.useSaveViewFromCurrent({viewType:s,projectName:i,viewsList:V,sourceSettings:M,onUpdateView:I}),z=o.useCallback(async()=>{try{await p({existingWorkingViewId:r==null?void 0:r.id,selectedViewId:e==null?void 0:e.id,setSelectedView:w,setSettingsChanged:l,notify:!0})}catch(t){console.error("Failed to reset view:",t)}},[r,p,e,w,l]),A=j.default({viewsList:V,workingView:r,viewType:s,projectName:i,currentUser:y,useWorkingView:!d,editingViewId:W,selectedId:e==null?void 0:e.id,collapsed:g,setCollapsed:x,onResetWorkingView:p,onSelect:t=>{w(t),l(!1),h(!1)},onEdit:t=>f(t),onSave:async t=>b(t)}),H={viewType:s,projectName:i,isMenuOpen:D,editingView:n,currentUser:y,selectedView:e,viewSettings:M,workingSettings:L,editingViewData:B,isLoadingEditingViewData:_,viewsList:V,workingView:r,editingViewId:W,viewMenuItems:A,isLoadingViews:K,isViewWorking:k,shareOptions:m,setIsMenuOpen:h,setEditingView:f,setSelectedView:w,onSettingsChanged:l,onCreateView:R,onUpdateView:I,onDeleteView:U,resetWorkingView:z,api:$.viewsQueries,dispatch:S};return J.jsxRuntimeExports.jsx(P.Provider,{value:H,children:u})},oe=()=>{const u=o.useContext(P);if(!u)throw new Error("useViewsContext must be used within a ViewsProvider");return u},Q=(u,a)=>{if(!u)return!0;const i=a.find(S=>S.id===u);return(i==null?void 0:i.scope)==="studio"};exports.ViewsProvider=ne;exports.isViewStudioScope=Q;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, viewTypes, WORKING_VIEW_ID } from '../index'\nimport {\n GetDefaultViewApiResponse,\n useGetCurrentUserQuery,\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 { 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\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 { data: currentUser } = useGetCurrentUserQuery()\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}"],"names":["ViewsContext","createContext","ViewsProvider","children","viewTypeProp","projectName","dispatch","debug","viewType","viewTypes","powerLicense","usePowerpack","currentUser","useGetCurrentUserQuery","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 useGetCurrentUserQuery,\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 { 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\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 { data: currentUser } = useGetCurrentUserQuery()\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}"],"names":["ViewsContext","createContext","ViewsProvider","children","viewTypeProp","projectName","dispatch","debug","viewType","viewTypes","powerLicense","usePowerpack","currentUser","useGetCurrentUserQuery","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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"}
@@ -57,6 +57,7 @@ import "../../../api/queries/entityLists/getLists.es.js";
57
57
  import "../../../api/queries/entityLists/updateLists.es.js";
58
58
  import "../../../api/queries/entityLists/getListsAttributes.es.js";
59
59
  import "../../../api/queries/entityLists/updateListsAttributes.es.js";
60
+ import "../../../api/queries/entityLists/listFolders.es.js";
60
61
  import "../../../api/queries/folders/getFolders.es.js";
61
62
  import "../../../api/queries/grouping/getGrouping.es.js";
62
63
  import "../../../api/queries/links/updateLinks.es.js";
@@ -91,6 +92,7 @@ import "../../../context/AddonProjectContext.es.js";
91
92
  import "../../../context/AddonContext.es.js";
92
93
  import { usePowerpack as et } from "../../../context/PowerpackContext.es.js";
93
94
  import "../../../context/MoveEntityContext.es.js";
95
+ import "../../../context/MenuContext.es.js";
94
96
  import { useSelectedView as st } from "../hooks/useSelectedView.es.js";
95
97
  import { useViewsMutations as pt } from "../hooks/useViewsMutations.es.js";
96
98
  import { useSaveViewFromCurrent as mt } from "../hooks/useSaveViewFromCurrent.es.js";
@@ -103,7 +105,7 @@ import "react-toastify";
103
105
  import "react-redux";
104
106
  import "custom-protocol-check";
105
107
  import { WORKING_VIEW_ID as ct } from "../ViewsMenuContainer/ViewsMenuContainer.es.js";
106
- const O = J(null), ao = ({
108
+ const O = J(null), uo = ({
107
109
  children: s,
108
110
  viewType: a,
109
111
  projectName: o,
@@ -219,7 +221,7 @@ const O = J(null), ao = ({
219
221
  dispatch: l
220
222
  };
221
223
  return /* @__PURE__ */ H.jsx(O.Provider, { value: z, children: s });
222
- }, co = () => {
224
+ }, wo = () => {
223
225
  const s = Z(O);
224
226
  if (!s)
225
227
  throw new Error("useViewsContext must be used within a ViewsProvider");
@@ -230,8 +232,8 @@ const O = J(null), ao = ({
230
232
  return (o == null ? void 0 : o.scope) === "studio";
231
233
  };
232
234
  export {
233
- ao as ViewsProvider,
235
+ uo as ViewsProvider,
234
236
  ut as isViewStudioScope,
235
- co as useViewsContext
237
+ wo as useViewsContext
236
238
  };
237
239
  //# 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, viewTypes, WORKING_VIEW_ID } from '../index'\nimport {\n GetDefaultViewApiResponse,\n useGetCurrentUserQuery,\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 { 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\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 { data: currentUser } = useGetCurrentUserQuery()\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}"],"names":["ViewsContext","createContext","ViewsProvider","children","viewTypeProp","projectName","dispatch","debug","viewType","viewTypes","powerLicense","usePowerpack","currentUser","useGetCurrentUserQuery","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 useGetCurrentUserQuery,\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 { 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\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 { data: currentUser } = useGetCurrentUserQuery()\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}"],"names":["ViewsContext","createContext","ViewsProvider","children","viewTypeProp","projectName","dispatch","debug","viewType","viewTypes","powerLicense","usePowerpack","currentUser","useGetCurrentUserQuery","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/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/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/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/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("react-redux");require("custom-protocol-check");const A=require("../utils/getCustomViewsFallback.cjs.js"),_="_working_",Q=({viewsList:d,workingView:t,viewType:n,projectName:w,currentUser:o,useWorkingView:m,editingViewId:g,collapsed:q,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=t==null?void 0:t.id;if(!t)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)},[t,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({...q,[e]:!q[e]})},[q,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=!!q[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,q,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/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/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/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("react-redux");require("custom-protocol-check");const A=require("../utils/getCustomViewsFallback.cjs.js"),_="_working_",Q=({viewsList:d,workingView:t,viewType:n,projectName:w,currentUser:o,useWorkingView:m,editingViewId:g,collapsed:q,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=t==null?void 0:t.id;if(!t)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)},[t,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({...q,[e]:!q[e]})},[q,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=!!q[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,q,k,c])};exports.WORKING_VIEW_ID=_;exports.default=Q;
2
2
  //# sourceMappingURL=useBuildViewMenuItems.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useBuildViewMenuItems.cjs.js","sources":["../../../../../../src/containers/Views/hooks/useBuildViewMenuItems.tsx"],"sourcesContent":["import { useCreateViewMutation, UserModel, ViewListItemModel } from '@shared/api'\nimport { useCallback, useMemo } from 'react'\nimport { VIEW_DIVIDER, ViewMenuItem } from '../ViewsMenu/ViewsMenu'\nimport { ViewItem } from '../ViewItem/ViewItem'\nimport { Icon } from '@ynput/ayon-react-components'\nimport { generateWorkingView } from '../utils/generateWorkingView'\nimport { toast } from 'react-toastify'\nimport { useLoadModule, useLocalStorage } from '@shared/hooks'\nimport { getCustomViewsFallback } from '../utils/getCustomViewsFallback'\nimport { usePowerpack } from '@shared/context'\nimport { CollapsedViewState } from '../context/ViewsContext'\n\n// constants\nexport const WORKING_VIEW_ID = '_working_' as const\nexport const NEW_VIEW_ID = '_new_view_' as const\nexport type ViewListItemModelExtended = ViewListItemModel & {\n isOwner: boolean\n highlighted?: 'save' | 'edit'\n}\n\ntype Props = {\n viewsList: ViewListItemModel[]\n workingView?: ViewListItemModel\n viewType?: string\n projectName?: string\n currentUser?: UserModel\n useWorkingView?: boolean\n editingViewId?: string // the preview id of the view being edited\n selectedId?: string\n collapsed: CollapsedViewState\n setCollapsed: (state: CollapsedViewState) => void\n onEdit: (viewId: string) => void\n onSelect: (viewId: string) => void\n onSave: (viewId: string) => Promise<void>\n onResetWorkingView?: () => void\n}\n\nconst useBuildViewMenuItems = ({\n viewsList,\n workingView,\n viewType,\n projectName,\n currentUser,\n useWorkingView,\n editingViewId,\n collapsed,\n setCollapsed,\n onSelect,\n onEdit,\n onSave,\n onResetWorkingView,\n selectedId,\n}: Props): ViewMenuItem[] => {\n const { powerLicense } = usePowerpack()\n\n // MUTATIONS\n const [createView] = useCreateViewMutation()\n\n const extendedViewsList: ViewListItemModelExtended[] = useMemo(\n () =>\n viewsList.map((view) => ({\n ...view,\n isOwner: view.owner === currentUser?.name,\n highlighted: editingViewId === view.id ? 'save' : undefined,\n })),\n [viewsList, currentUser, editingViewId],\n )\n\n const workingBaseView: ViewItem = {\n id: WORKING_VIEW_ID,\n label: useWorkingView ? 'Personal view' : 'Working view',\n startContent: useWorkingView && <Icon icon=\"person\" />,\n isEditable: false,\n }\n\n // if we have a working view, we use it, otherwise we create one\n const handleWorkingViewChange = useCallback(async () => {\n let workingViewId = workingView?.id\n if (!workingView) {\n // no working view found, create one\n try {\n console.warn('No working view found, creating a new one')\n const workingView = generateWorkingView()\n await createView({\n payload: workingView,\n viewType: viewType as string,\n projectName: projectName,\n }).unwrap()\n // set id of the new view\n workingViewId = workingView.id\n } catch (error: any) {\n toast.error(`Failed to create working view: ${error}`)\n }\n }\n // select the working view\n onSelect(workingViewId as string)\n }, [workingView, viewType, createView, projectName, onSelect])\n\n const handleEditView = async (viewId: string) => {\n // save the view and then selected it\n try {\n await onSave(viewId)\n onSelect(viewId)\n } catch (error: any) {\n toast.error(error)\n }\n }\n\n const [getCustomViews, { isLoading: isLoadingQueries }] = useLoadModule({\n addon: 'powerpack',\n remote: 'views',\n module: 'getCustomViews',\n fallback: getCustomViewsFallback,\n // minVersion: minVersion,\n skip: !viewType || !powerLicense,\n })\n\n const { myViews, sharedViews, allPrivateViews } = getCustomViews({\n viewsList: extendedViewsList,\n onEdit,\n onSelect,\n onSave: handleEditView,\n })\n\n const toggleSection = useCallback(\n (id: string) => {\n setCollapsed({ ...collapsed, [id]: !collapsed[id] })\n },\n [collapsed, setCollapsed],\n )\n\n const sections: Array<{ id: string; title: string; items: ViewItem[] }> = useMemo(() => {\n return [\n { id: 'myViews', title: 'My views', items: myViews as ViewItem[] },\n { id: 'sharedViews', title: 'Shared views', items: sharedViews as ViewItem[] },\n { id: 'allPrivateViews', title: 'All private views', items: allPrivateViews as ViewItem[] },\n ]\n }, [myViews, sharedViews, allPrivateViews])\n\n const workingViewItem: ViewMenuItem = useMemo(\n () => ({\n ...workingBaseView,\n onClick: handleWorkingViewChange,\n // expose reset button when handler is provided\n isEditable: Boolean(onResetWorkingView),\n onResetView: onResetWorkingView,\n }),\n [handleWorkingViewChange, onResetWorkingView],\n )\n\n // Build list with headers after computing items, omit sections with no items, and hide items when collapsed\n const viewItems: ViewMenuItem[] = useMemo(() => {\n const result: ViewMenuItem[] = [workingViewItem]\n\n // Add divider only if any section exists\n const visibleSections = sections.filter((s) => (s.items?.length || 0) > 0)\n if (visibleSections.length > 0) result.push(VIEW_DIVIDER)\n\n visibleSections.forEach((section) => {\n const isCollapsed = !!collapsed[section.id]\n result.push({\n type: 'section',\n id: section.id,\n title: section.title,\n collapsed: isCollapsed,\n onToggle: () => toggleSection(section.id),\n })\n if (!isCollapsed) {\n result.push(...section.items)\n } else if (selectedId) {\n const selectedItem = section.items.find((i) => i.id === selectedId)\n if (selectedItem) result.push(selectedItem)\n }\n })\n\n // Add a closing divider after all sections (only if sections exist)\n if (visibleSections.length > 0) result.push(VIEW_DIVIDER)\n\n return result\n }, [workingViewItem, sections, collapsed, toggleSection, selectedId])\n\n return viewItems\n}\n\nexport default useBuildViewMenuItems\n"],"names":["WORKING_VIEW_ID","useBuildViewMenuItems","viewsList","workingView","viewType","projectName","currentUser","useWorkingView","editingViewId","collapsed","setCollapsed","onSelect","onEdit","onSave","onResetWorkingView","selectedId","powerLicense","usePowerpack","createView","useCreateViewMutation","extendedViewsList","useMemo","view","workingBaseView","jsx","Icon","handleWorkingViewChange","useCallback","workingViewId","generateWorkingView","error","toast","handleEditView","viewId","getCustomViews","isLoadingQueries","useLoadModule","getCustomViewsFallback","myViews","sharedViews","allPrivateViews","toggleSection","id","sections","workingViewItem","result","visibleSections","s","_a","VIEW_DIVIDER","section","isCollapsed","selectedItem","i"],"mappings":"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"}
1
+ {"version":3,"file":"useBuildViewMenuItems.cjs.js","sources":["../../../../../../src/containers/Views/hooks/useBuildViewMenuItems.tsx"],"sourcesContent":["import { useCreateViewMutation, UserModel, ViewListItemModel } from '@shared/api'\nimport { useCallback, useMemo } from 'react'\nimport { VIEW_DIVIDER, ViewMenuItem } from '../ViewsMenu/ViewsMenu'\nimport { ViewItem } from '../ViewItem/ViewItem'\nimport { Icon } from '@ynput/ayon-react-components'\nimport { generateWorkingView } from '../utils/generateWorkingView'\nimport { toast } from 'react-toastify'\nimport { useLoadModule, useLocalStorage } from '@shared/hooks'\nimport { getCustomViewsFallback } from '../utils/getCustomViewsFallback'\nimport { usePowerpack } from '@shared/context'\nimport { CollapsedViewState } from '../context/ViewsContext'\n\n// constants\nexport const WORKING_VIEW_ID = '_working_' as const\nexport const NEW_VIEW_ID = '_new_view_' as const\nexport type ViewListItemModelExtended = ViewListItemModel & {\n isOwner: boolean\n highlighted?: 'save' | 'edit'\n}\n\ntype Props = {\n viewsList: ViewListItemModel[]\n workingView?: ViewListItemModel\n viewType?: string\n projectName?: string\n currentUser?: UserModel\n useWorkingView?: boolean\n editingViewId?: string // the preview id of the view being edited\n selectedId?: string\n collapsed: CollapsedViewState\n setCollapsed: (state: CollapsedViewState) => void\n onEdit: (viewId: string) => void\n onSelect: (viewId: string) => void\n onSave: (viewId: string) => Promise<void>\n onResetWorkingView?: () => void\n}\n\nconst useBuildViewMenuItems = ({\n viewsList,\n workingView,\n viewType,\n projectName,\n currentUser,\n useWorkingView,\n editingViewId,\n collapsed,\n setCollapsed,\n onSelect,\n onEdit,\n onSave,\n onResetWorkingView,\n selectedId,\n}: Props): ViewMenuItem[] => {\n const { powerLicense } = usePowerpack()\n\n // MUTATIONS\n const [createView] = useCreateViewMutation()\n\n const extendedViewsList: ViewListItemModelExtended[] = useMemo(\n () =>\n viewsList.map((view) => ({\n ...view,\n isOwner: view.owner === currentUser?.name,\n highlighted: editingViewId === view.id ? 'save' : undefined,\n })),\n [viewsList, currentUser, editingViewId],\n )\n\n const workingBaseView: ViewItem = {\n id: WORKING_VIEW_ID,\n label: useWorkingView ? 'Personal view' : 'Working view',\n startContent: useWorkingView && <Icon icon=\"person\" />,\n isEditable: false,\n }\n\n // if we have a working view, we use it, otherwise we create one\n const handleWorkingViewChange = useCallback(async () => {\n let workingViewId = workingView?.id\n if (!workingView) {\n // no working view found, create one\n try {\n console.warn('No working view found, creating a new one')\n const workingView = generateWorkingView()\n await createView({\n payload: workingView,\n viewType: viewType as string,\n projectName: projectName,\n }).unwrap()\n // set id of the new view\n workingViewId = workingView.id\n } catch (error: any) {\n toast.error(`Failed to create working view: ${error}`)\n }\n }\n // select the working view\n onSelect(workingViewId as string)\n }, [workingView, viewType, createView, projectName, onSelect])\n\n const handleEditView = async (viewId: string) => {\n // save the view and then selected it\n try {\n await onSave(viewId)\n onSelect(viewId)\n } catch (error: any) {\n toast.error(error)\n }\n }\n\n const [getCustomViews, { isLoading: isLoadingQueries }] = useLoadModule({\n addon: 'powerpack',\n remote: 'views',\n module: 'getCustomViews',\n fallback: getCustomViewsFallback,\n // minVersion: minVersion,\n skip: !viewType || !powerLicense,\n })\n\n const { myViews, sharedViews, allPrivateViews } = getCustomViews({\n viewsList: extendedViewsList,\n onEdit,\n onSelect,\n onSave: handleEditView,\n })\n\n const toggleSection = useCallback(\n (id: string) => {\n setCollapsed({ ...collapsed, [id]: !collapsed[id] })\n },\n [collapsed, setCollapsed],\n )\n\n const sections: Array<{ id: string; title: string; items: ViewItem[] }> = useMemo(() => {\n return [\n { id: 'myViews', title: 'My views', items: myViews as ViewItem[] },\n { id: 'sharedViews', title: 'Shared views', items: sharedViews as ViewItem[] },\n { id: 'allPrivateViews', title: 'All private views', items: allPrivateViews as ViewItem[] },\n ]\n }, [myViews, sharedViews, allPrivateViews])\n\n const workingViewItem: ViewMenuItem = useMemo(\n () => ({\n ...workingBaseView,\n onClick: handleWorkingViewChange,\n // expose reset button when handler is provided\n isEditable: Boolean(onResetWorkingView),\n onResetView: onResetWorkingView,\n }),\n [handleWorkingViewChange, onResetWorkingView],\n )\n\n // Build list with headers after computing items, omit sections with no items, and hide items when collapsed\n const viewItems: ViewMenuItem[] = useMemo(() => {\n const result: ViewMenuItem[] = [workingViewItem]\n\n // Add divider only if any section exists\n const visibleSections = sections.filter((s) => (s.items?.length || 0) > 0)\n if (visibleSections.length > 0) result.push(VIEW_DIVIDER)\n\n visibleSections.forEach((section) => {\n const isCollapsed = !!collapsed[section.id]\n result.push({\n type: 'section',\n id: section.id,\n title: section.title,\n collapsed: isCollapsed,\n onToggle: () => toggleSection(section.id),\n })\n if (!isCollapsed) {\n result.push(...section.items)\n } else if (selectedId) {\n const selectedItem = section.items.find((i) => i.id === selectedId)\n if (selectedItem) result.push(selectedItem)\n }\n })\n\n // Add a closing divider after all sections (only if sections exist)\n if (visibleSections.length > 0) result.push(VIEW_DIVIDER)\n\n return result\n }, [workingViewItem, sections, collapsed, toggleSection, selectedId])\n\n return viewItems\n}\n\nexport default useBuildViewMenuItems\n"],"names":["WORKING_VIEW_ID","useBuildViewMenuItems","viewsList","workingView","viewType","projectName","currentUser","useWorkingView","editingViewId","collapsed","setCollapsed","onSelect","onEdit","onSave","onResetWorkingView","selectedId","powerLicense","usePowerpack","createView","useCreateViewMutation","extendedViewsList","useMemo","view","workingBaseView","jsx","Icon","handleWorkingViewChange","useCallback","workingViewId","generateWorkingView","error","toast","handleEditView","viewId","getCustomViews","isLoadingQueries","useLoadModule","getCustomViewsFallback","myViews","sharedViews","allPrivateViews","toggleSection","id","sections","workingViewItem","result","visibleSections","s","_a","VIEW_DIVIDER","section","isCollapsed","selectedItem","i"],"mappings":"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"}
@@ -55,6 +55,7 @@ import "../../../api/queries/entityLists/getLists.es.js";
55
55
  import "../../../api/queries/entityLists/updateLists.es.js";
56
56
  import "../../../api/queries/entityLists/getListsAttributes.es.js";
57
57
  import "../../../api/queries/entityLists/updateListsAttributes.es.js";
58
+ import "../../../api/queries/entityLists/listFolders.es.js";
58
59
  import "../../../api/queries/folders/getFolders.es.js";
59
60
  import "../../../api/queries/grouping/getGrouping.es.js";
60
61
  import "../../../api/queries/links/updateLinks.es.js";
@@ -97,10 +98,11 @@ import "../../../context/AddonProjectContext.es.js";
97
98
  import "../../../context/AddonContext.es.js";
98
99
  import { usePowerpack as Q } from "../../../context/PowerpackContext.es.js";
99
100
  import "../../../context/MoveEntityContext.es.js";
101
+ import "../../../context/MenuContext.es.js";
100
102
  import "react-redux";
101
103
  import "custom-protocol-check";
102
104
  import { getCustomViewsFallback as S } from "../utils/getCustomViewsFallback.es.js";
103
- const $ = "_working_", Ni = ({
105
+ const $ = "_working_", Si = ({
104
106
  viewsList: w,
105
107
  workingView: r,
106
108
  viewType: n,
@@ -204,6 +206,6 @@ const $ = "_working_", Ni = ({
204
206
  };
205
207
  export {
206
208
  $ as WORKING_VIEW_ID,
207
- Ni as default
209
+ Si as default
208
210
  };
209
211
  //# sourceMappingURL=useBuildViewMenuItems.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useBuildViewMenuItems.es.js","sources":["../../../../../../src/containers/Views/hooks/useBuildViewMenuItems.tsx"],"sourcesContent":["import { useCreateViewMutation, UserModel, ViewListItemModel } from '@shared/api'\nimport { useCallback, useMemo } from 'react'\nimport { VIEW_DIVIDER, ViewMenuItem } from '../ViewsMenu/ViewsMenu'\nimport { ViewItem } from '../ViewItem/ViewItem'\nimport { Icon } from '@ynput/ayon-react-components'\nimport { generateWorkingView } from '../utils/generateWorkingView'\nimport { toast } from 'react-toastify'\nimport { useLoadModule, useLocalStorage } from '@shared/hooks'\nimport { getCustomViewsFallback } from '../utils/getCustomViewsFallback'\nimport { usePowerpack } from '@shared/context'\nimport { CollapsedViewState } from '../context/ViewsContext'\n\n// constants\nexport const WORKING_VIEW_ID = '_working_' as const\nexport const NEW_VIEW_ID = '_new_view_' as const\nexport type ViewListItemModelExtended = ViewListItemModel & {\n isOwner: boolean\n highlighted?: 'save' | 'edit'\n}\n\ntype Props = {\n viewsList: ViewListItemModel[]\n workingView?: ViewListItemModel\n viewType?: string\n projectName?: string\n currentUser?: UserModel\n useWorkingView?: boolean\n editingViewId?: string // the preview id of the view being edited\n selectedId?: string\n collapsed: CollapsedViewState\n setCollapsed: (state: CollapsedViewState) => void\n onEdit: (viewId: string) => void\n onSelect: (viewId: string) => void\n onSave: (viewId: string) => Promise<void>\n onResetWorkingView?: () => void\n}\n\nconst useBuildViewMenuItems = ({\n viewsList,\n workingView,\n viewType,\n projectName,\n currentUser,\n useWorkingView,\n editingViewId,\n collapsed,\n setCollapsed,\n onSelect,\n onEdit,\n onSave,\n onResetWorkingView,\n selectedId,\n}: Props): ViewMenuItem[] => {\n const { powerLicense } = usePowerpack()\n\n // MUTATIONS\n const [createView] = useCreateViewMutation()\n\n const extendedViewsList: ViewListItemModelExtended[] = useMemo(\n () =>\n viewsList.map((view) => ({\n ...view,\n isOwner: view.owner === currentUser?.name,\n highlighted: editingViewId === view.id ? 'save' : undefined,\n })),\n [viewsList, currentUser, editingViewId],\n )\n\n const workingBaseView: ViewItem = {\n id: WORKING_VIEW_ID,\n label: useWorkingView ? 'Personal view' : 'Working view',\n startContent: useWorkingView && <Icon icon=\"person\" />,\n isEditable: false,\n }\n\n // if we have a working view, we use it, otherwise we create one\n const handleWorkingViewChange = useCallback(async () => {\n let workingViewId = workingView?.id\n if (!workingView) {\n // no working view found, create one\n try {\n console.warn('No working view found, creating a new one')\n const workingView = generateWorkingView()\n await createView({\n payload: workingView,\n viewType: viewType as string,\n projectName: projectName,\n }).unwrap()\n // set id of the new view\n workingViewId = workingView.id\n } catch (error: any) {\n toast.error(`Failed to create working view: ${error}`)\n }\n }\n // select the working view\n onSelect(workingViewId as string)\n }, [workingView, viewType, createView, projectName, onSelect])\n\n const handleEditView = async (viewId: string) => {\n // save the view and then selected it\n try {\n await onSave(viewId)\n onSelect(viewId)\n } catch (error: any) {\n toast.error(error)\n }\n }\n\n const [getCustomViews, { isLoading: isLoadingQueries }] = useLoadModule({\n addon: 'powerpack',\n remote: 'views',\n module: 'getCustomViews',\n fallback: getCustomViewsFallback,\n // minVersion: minVersion,\n skip: !viewType || !powerLicense,\n })\n\n const { myViews, sharedViews, allPrivateViews } = getCustomViews({\n viewsList: extendedViewsList,\n onEdit,\n onSelect,\n onSave: handleEditView,\n })\n\n const toggleSection = useCallback(\n (id: string) => {\n setCollapsed({ ...collapsed, [id]: !collapsed[id] })\n },\n [collapsed, setCollapsed],\n )\n\n const sections: Array<{ id: string; title: string; items: ViewItem[] }> = useMemo(() => {\n return [\n { id: 'myViews', title: 'My views', items: myViews as ViewItem[] },\n { id: 'sharedViews', title: 'Shared views', items: sharedViews as ViewItem[] },\n { id: 'allPrivateViews', title: 'All private views', items: allPrivateViews as ViewItem[] },\n ]\n }, [myViews, sharedViews, allPrivateViews])\n\n const workingViewItem: ViewMenuItem = useMemo(\n () => ({\n ...workingBaseView,\n onClick: handleWorkingViewChange,\n // expose reset button when handler is provided\n isEditable: Boolean(onResetWorkingView),\n onResetView: onResetWorkingView,\n }),\n [handleWorkingViewChange, onResetWorkingView],\n )\n\n // Build list with headers after computing items, omit sections with no items, and hide items when collapsed\n const viewItems: ViewMenuItem[] = useMemo(() => {\n const result: ViewMenuItem[] = [workingViewItem]\n\n // Add divider only if any section exists\n const visibleSections = sections.filter((s) => (s.items?.length || 0) > 0)\n if (visibleSections.length > 0) result.push(VIEW_DIVIDER)\n\n visibleSections.forEach((section) => {\n const isCollapsed = !!collapsed[section.id]\n result.push({\n type: 'section',\n id: section.id,\n title: section.title,\n collapsed: isCollapsed,\n onToggle: () => toggleSection(section.id),\n })\n if (!isCollapsed) {\n result.push(...section.items)\n } else if (selectedId) {\n const selectedItem = section.items.find((i) => i.id === selectedId)\n if (selectedItem) result.push(selectedItem)\n }\n })\n\n // Add a closing divider after all sections (only if sections exist)\n if (visibleSections.length > 0) result.push(VIEW_DIVIDER)\n\n return result\n }, [workingViewItem, sections, collapsed, toggleSection, selectedId])\n\n return viewItems\n}\n\nexport default useBuildViewMenuItems\n"],"names":["WORKING_VIEW_ID","useBuildViewMenuItems","viewsList","workingView","viewType","projectName","currentUser","useWorkingView","editingViewId","collapsed","setCollapsed","onSelect","onEdit","onSave","onResetWorkingView","selectedId","powerLicense","usePowerpack","createView","useCreateViewMutation","extendedViewsList","useMemo","view","workingBaseView","jsx","Icon","handleWorkingViewChange","useCallback","workingViewId","generateWorkingView","error","toast","handleEditView","viewId","getCustomViews","isLoadingQueries","useLoadModule","getCustomViewsFallback","myViews","sharedViews","allPrivateViews","toggleSection","id","sections","workingViewItem","result","visibleSections","s","_a","VIEW_DIVIDER","section","isCollapsed","selectedItem","i"],"mappings":"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"}
1
+ {"version":3,"file":"useBuildViewMenuItems.es.js","sources":["../../../../../../src/containers/Views/hooks/useBuildViewMenuItems.tsx"],"sourcesContent":["import { useCreateViewMutation, UserModel, ViewListItemModel } from '@shared/api'\nimport { useCallback, useMemo } from 'react'\nimport { VIEW_DIVIDER, ViewMenuItem } from '../ViewsMenu/ViewsMenu'\nimport { ViewItem } from '../ViewItem/ViewItem'\nimport { Icon } from '@ynput/ayon-react-components'\nimport { generateWorkingView } from '../utils/generateWorkingView'\nimport { toast } from 'react-toastify'\nimport { useLoadModule, useLocalStorage } from '@shared/hooks'\nimport { getCustomViewsFallback } from '../utils/getCustomViewsFallback'\nimport { usePowerpack } from '@shared/context'\nimport { CollapsedViewState } from '../context/ViewsContext'\n\n// constants\nexport const WORKING_VIEW_ID = '_working_' as const\nexport const NEW_VIEW_ID = '_new_view_' as const\nexport type ViewListItemModelExtended = ViewListItemModel & {\n isOwner: boolean\n highlighted?: 'save' | 'edit'\n}\n\ntype Props = {\n viewsList: ViewListItemModel[]\n workingView?: ViewListItemModel\n viewType?: string\n projectName?: string\n currentUser?: UserModel\n useWorkingView?: boolean\n editingViewId?: string // the preview id of the view being edited\n selectedId?: string\n collapsed: CollapsedViewState\n setCollapsed: (state: CollapsedViewState) => void\n onEdit: (viewId: string) => void\n onSelect: (viewId: string) => void\n onSave: (viewId: string) => Promise<void>\n onResetWorkingView?: () => void\n}\n\nconst useBuildViewMenuItems = ({\n viewsList,\n workingView,\n viewType,\n projectName,\n currentUser,\n useWorkingView,\n editingViewId,\n collapsed,\n setCollapsed,\n onSelect,\n onEdit,\n onSave,\n onResetWorkingView,\n selectedId,\n}: Props): ViewMenuItem[] => {\n const { powerLicense } = usePowerpack()\n\n // MUTATIONS\n const [createView] = useCreateViewMutation()\n\n const extendedViewsList: ViewListItemModelExtended[] = useMemo(\n () =>\n viewsList.map((view) => ({\n ...view,\n isOwner: view.owner === currentUser?.name,\n highlighted: editingViewId === view.id ? 'save' : undefined,\n })),\n [viewsList, currentUser, editingViewId],\n )\n\n const workingBaseView: ViewItem = {\n id: WORKING_VIEW_ID,\n label: useWorkingView ? 'Personal view' : 'Working view',\n startContent: useWorkingView && <Icon icon=\"person\" />,\n isEditable: false,\n }\n\n // if we have a working view, we use it, otherwise we create one\n const handleWorkingViewChange = useCallback(async () => {\n let workingViewId = workingView?.id\n if (!workingView) {\n // no working view found, create one\n try {\n console.warn('No working view found, creating a new one')\n const workingView = generateWorkingView()\n await createView({\n payload: workingView,\n viewType: viewType as string,\n projectName: projectName,\n }).unwrap()\n // set id of the new view\n workingViewId = workingView.id\n } catch (error: any) {\n toast.error(`Failed to create working view: ${error}`)\n }\n }\n // select the working view\n onSelect(workingViewId as string)\n }, [workingView, viewType, createView, projectName, onSelect])\n\n const handleEditView = async (viewId: string) => {\n // save the view and then selected it\n try {\n await onSave(viewId)\n onSelect(viewId)\n } catch (error: any) {\n toast.error(error)\n }\n }\n\n const [getCustomViews, { isLoading: isLoadingQueries }] = useLoadModule({\n addon: 'powerpack',\n remote: 'views',\n module: 'getCustomViews',\n fallback: getCustomViewsFallback,\n // minVersion: minVersion,\n skip: !viewType || !powerLicense,\n })\n\n const { myViews, sharedViews, allPrivateViews } = getCustomViews({\n viewsList: extendedViewsList,\n onEdit,\n onSelect,\n onSave: handleEditView,\n })\n\n const toggleSection = useCallback(\n (id: string) => {\n setCollapsed({ ...collapsed, [id]: !collapsed[id] })\n },\n [collapsed, setCollapsed],\n )\n\n const sections: Array<{ id: string; title: string; items: ViewItem[] }> = useMemo(() => {\n return [\n { id: 'myViews', title: 'My views', items: myViews as ViewItem[] },\n { id: 'sharedViews', title: 'Shared views', items: sharedViews as ViewItem[] },\n { id: 'allPrivateViews', title: 'All private views', items: allPrivateViews as ViewItem[] },\n ]\n }, [myViews, sharedViews, allPrivateViews])\n\n const workingViewItem: ViewMenuItem = useMemo(\n () => ({\n ...workingBaseView,\n onClick: handleWorkingViewChange,\n // expose reset button when handler is provided\n isEditable: Boolean(onResetWorkingView),\n onResetView: onResetWorkingView,\n }),\n [handleWorkingViewChange, onResetWorkingView],\n )\n\n // Build list with headers after computing items, omit sections with no items, and hide items when collapsed\n const viewItems: ViewMenuItem[] = useMemo(() => {\n const result: ViewMenuItem[] = [workingViewItem]\n\n // Add divider only if any section exists\n const visibleSections = sections.filter((s) => (s.items?.length || 0) > 0)\n if (visibleSections.length > 0) result.push(VIEW_DIVIDER)\n\n visibleSections.forEach((section) => {\n const isCollapsed = !!collapsed[section.id]\n result.push({\n type: 'section',\n id: section.id,\n title: section.title,\n collapsed: isCollapsed,\n onToggle: () => toggleSection(section.id),\n })\n if (!isCollapsed) {\n result.push(...section.items)\n } else if (selectedId) {\n const selectedItem = section.items.find((i) => i.id === selectedId)\n if (selectedItem) result.push(selectedItem)\n }\n })\n\n // Add a closing divider after all sections (only if sections exist)\n if (visibleSections.length > 0) result.push(VIEW_DIVIDER)\n\n return result\n }, [workingViewItem, sections, collapsed, toggleSection, selectedId])\n\n return viewItems\n}\n\nexport default useBuildViewMenuItems\n"],"names":["WORKING_VIEW_ID","useBuildViewMenuItems","viewsList","workingView","viewType","projectName","currentUser","useWorkingView","editingViewId","collapsed","setCollapsed","onSelect","onEdit","onSave","onResetWorkingView","selectedId","powerLicense","usePowerpack","createView","useCreateViewMutation","extendedViewsList","useMemo","view","workingBaseView","jsx","Icon","handleWorkingViewChange","useCallback","workingViewId","generateWorkingView","error","toast","handleEditView","viewId","getCustomViews","isLoadingQueries","useLoadModule","getCustomViewsFallback","myViews","sharedViews","allPrivateViews","toggleSection","id","sections","workingViewItem","result","visibleSections","s","_a","VIEW_DIVIDER","section","isCollapsed","selectedItem","i"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react");require("../../../../../_virtual/jsx-runtime.cjs.js");require("react-dom");const n=require("../context/ViewsContext.cjs.js");require("../Views.styled.cjs.js");require("clsx");require("../ViewsMenuContainer/ViewsMenuContainer.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/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/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/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/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("lodash");const c=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");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("react-redux");require("custom-protocol-check");require("@ynput/ayon-react-components");require("../ViewsMenu/ViewsMenu.cjs.js");require("uuid");require("../../../util/pubsub.cjs.js");const w=({viewType:r,projectName:t,viewsList:o,sourceSettings:e,onUpdateView:s})=>({onSaveViewFromCurrent:a.useCallback(async i=>{if(!r)throw"viewType are required for saving a view from another view";if(!e)throw"sourceView is required for saving a view from another view";try{await s(i,{settings:e},n.isViewStudioScope(i,o)),c.toast.success("View settings saved")}catch(u){const q=typeof u=="string"?"Failed to save view settings: "+u:"Failed to save view settings";throw console.error(q),q}},[r,t,e])});exports.useSaveViewFromCurrent=w;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react");require("../../../../../_virtual/jsx-runtime.cjs.js");require("react-dom");const n=require("../context/ViewsContext.cjs.js");require("../Views.styled.cjs.js");require("clsx");require("../ViewsMenuContainer/ViewsMenuContainer.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/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/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/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("lodash");const c=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");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("react-redux");require("custom-protocol-check");require("@ynput/ayon-react-components");require("../ViewsMenu/ViewsMenu.cjs.js");require("uuid");require("../../../util/pubsub.cjs.js");const w=({viewType:r,projectName:t,viewsList:o,sourceSettings:e,onUpdateView:s})=>({onSaveViewFromCurrent:a.useCallback(async i=>{if(!r)throw"viewType are required for saving a view from another view";if(!e)throw"sourceView is required for saving a view from another view";try{await s(i,{settings:e},n.isViewStudioScope(i,o)),c.toast.success("View settings saved")}catch(u){const q=typeof u=="string"?"Failed to save view settings: "+u:"Failed to save view settings";throw console.error(q),q}},[r,t,e])});exports.useSaveViewFromCurrent=w;
2
2
  //# sourceMappingURL=useSaveViewFromCurrent.cjs.js.map