@ynput/ayon-frontend-shared 0.3.15 → 0.3.17

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 (419) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +28 -24
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/Views.cjs.js +1 -1
  5. package/dist/Views.cjs.js.map +1 -1
  6. package/dist/Views.es.js +36 -41
  7. package/dist/Views.es.js.map +1 -1
  8. package/dist/_virtual/index.cjs.js +1 -1
  9. package/dist/_virtual/index.cjs2.js +1 -1
  10. package/dist/_virtual/index.cjs3.js +1 -1
  11. package/dist/_virtual/index.cjs4.js +1 -1
  12. package/dist/_virtual/index.cjs5.js +1 -1
  13. package/dist/_virtual/index.cjs6.js +1 -1
  14. package/dist/_virtual/index.cjs8.js +1 -1
  15. package/dist/_virtual/index.es.js +4 -5
  16. package/dist/_virtual/index.es2.js +6 -2
  17. package/dist/_virtual/index.es2.js.map +1 -1
  18. package/dist/_virtual/index.es3.js +2 -5
  19. package/dist/_virtual/index.es3.js.map +1 -1
  20. package/dist/_virtual/index.es4.js +5 -2
  21. package/dist/_virtual/index.es4.js.map +1 -1
  22. package/dist/_virtual/index.es5.js +2 -5
  23. package/dist/_virtual/index.es5.js.map +1 -1
  24. package/dist/_virtual/index.es6.js +5 -2
  25. package/dist/_virtual/index.es6.js.map +1 -1
  26. package/dist/_virtual/index.es7.js +2 -2
  27. package/dist/_virtual/index.es8.js +2 -5
  28. package/dist/_virtual/index.es8.js.map +1 -1
  29. package/dist/index.cjs.js +1 -1
  30. package/dist/index.es.js +15 -11
  31. package/dist/index.es.js.map +1 -1
  32. package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js +1 -1
  33. package/dist/node_modules/match-sorter/dist/match-sorter.esm.es.js +1 -1
  34. package/dist/node_modules/react-use-websocket/dist/index.cjs.js +1 -1
  35. package/dist/node_modules/react-use-websocket/dist/index.es.js +1 -1
  36. package/dist/node_modules/rehype-prism-plus/dist/index.es.cjs.js +1 -1
  37. package/dist/node_modules/rehype-prism-plus/dist/index.es.cjs.js.map +1 -1
  38. package/dist/node_modules/rehype-prism-plus/dist/index.es.es.js +1 -1
  39. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  40. package/dist/node_modules/remove-accents/index.es.js +1 -1
  41. package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
  42. package/dist/shared/node_modules/prop-types/index.es.js +1 -1
  43. package/dist/shared/node_modules/react-is/index.cjs.js +1 -1
  44. package/dist/shared/node_modules/react-is/index.es.js +1 -1
  45. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
  46. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
  47. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
  48. package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
  49. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
  50. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
  51. package/dist/shared/src/api/generated/access.cjs.js.map +1 -1
  52. package/dist/shared/src/api/generated/access.es.js.map +1 -1
  53. package/dist/shared/src/api/generated/graphql.cjs.js +5 -3
  54. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  55. package/dist/shared/src/api/generated/graphql.es.js +2 -0
  56. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  57. package/dist/shared/src/api/generated/users.cjs.js.map +1 -1
  58. package/dist/shared/src/api/generated/users.es.js.map +1 -1
  59. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js +1 -1
  60. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js.map +1 -1
  61. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js +99 -90
  62. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js.map +1 -1
  63. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +13 -1
  64. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  65. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +72 -25
  66. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  67. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  68. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  69. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +25 -21
  70. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  71. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  72. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  73. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +14 -14
  74. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  75. package/dist/shared/src/components/LinksManager/CellEditingDialog.cjs.js +1 -1
  76. package/dist/shared/src/components/LinksManager/CellEditingDialog.cjs.js.map +1 -1
  77. package/dist/shared/src/components/LinksManager/CellEditingDialog.es.js +23 -23
  78. package/dist/shared/src/components/LinksManager/CellEditingDialog.es.js.map +1 -1
  79. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
  80. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  81. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +71 -36
  82. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  83. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js +1 -1
  84. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js.map +1 -1
  85. package/dist/shared/src/components/LinksManager/LinksManager.es.js +120 -89
  86. package/dist/shared/src/components/LinksManager/LinksManager.es.js.map +1 -1
  87. package/dist/shared/src/components/LinksManager/LinksManager.styled.cjs.js +52 -12
  88. package/dist/shared/src/components/LinksManager/LinksManager.styled.cjs.js.map +1 -1
  89. package/dist/shared/src/components/LinksManager/LinksManager.styled.es.js +63 -21
  90. package/dist/shared/src/components/LinksManager/LinksManager.styled.es.js.map +1 -1
  91. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  92. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  93. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +8 -4
  94. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  95. package/dist/shared/src/components/LinksManager/utils/groupLinks.cjs.js +2 -0
  96. package/dist/shared/src/components/LinksManager/utils/groupLinks.cjs.js.map +1 -0
  97. package/dist/shared/src/components/LinksManager/utils/groupLinks.es.js +18 -0
  98. package/dist/shared/src/components/LinksManager/utils/groupLinks.es.js.map +1 -0
  99. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  100. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  101. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +8 -4
  102. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  103. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
  104. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  105. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +10 -6
  106. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  107. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  108. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  109. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +8 -4
  110. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  111. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
  112. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
  113. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +8 -4
  114. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
  115. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
  116. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
  117. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +8 -4
  118. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
  119. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  120. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  121. package/dist/shared/src/components/RenameForm/RenameForm.es.js +9 -5
  122. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  123. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  124. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  125. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +139 -128
  126. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  127. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  128. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  129. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +90 -81
  130. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  131. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  132. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  133. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +8 -4
  134. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  135. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js +1 -1
  136. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js.map +1 -1
  137. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js +9 -5
  138. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js.map +1 -1
  139. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  140. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  141. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +8 -4
  142. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  143. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  144. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  145. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +8 -4
  146. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  147. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  148. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  149. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +8 -4
  150. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  151. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  152. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  153. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +8 -4
  154. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  155. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  156. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  157. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +20 -16
  158. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  159. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  160. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  161. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +8 -4
  162. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  163. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  164. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  165. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +9 -5
  166. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  167. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  168. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  169. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +12 -8
  170. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  171. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
  172. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
  173. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +22 -18
  174. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
  175. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
  176. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
  177. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +8 -4
  178. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
  179. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
  180. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
  181. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +8 -4
  182. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
  183. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +2 -2
  184. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  185. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +57 -45
  186. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  187. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  188. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  189. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +8 -4
  190. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  191. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  192. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  193. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +8 -4
  194. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  195. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  196. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  197. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +8 -4
  198. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  199. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  200. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  201. package/dist/shared/src/containers/EntityPickerDialog/hooks/usePreserveChildSelectionByName.cjs.js +2 -0
  202. package/dist/shared/src/containers/EntityPickerDialog/hooks/usePreserveChildSelectionByName.cjs.js.map +1 -0
  203. package/dist/shared/src/containers/EntityPickerDialog/hooks/usePreserveChildSelectionByName.es.js +70 -0
  204. package/dist/shared/src/containers/EntityPickerDialog/hooks/usePreserveChildSelectionByName.es.js.map +1 -0
  205. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  206. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  207. package/dist/shared/src/containers/Feed/Feed.es.js +247 -151
  208. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  209. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
  210. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
  211. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +8 -4
  212. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
  213. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  214. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  215. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +6 -2
  216. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  217. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js +1 -0
  218. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js.map +1 -1
  219. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.es.js +1 -0
  220. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.es.js.map +1 -1
  221. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  222. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  223. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +9 -5
  224. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  225. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
  226. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  227. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +8 -4
  228. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  229. package/dist/shared/src/containers/Feed/components/FilesGrid/FilesGrid.styled.cjs.js +1 -1
  230. package/dist/shared/src/containers/Feed/components/FilesGrid/FilesGrid.styled.cjs.js.map +1 -1
  231. package/dist/shared/src/containers/Feed/components/FilesGrid/FilesGrid.styled.es.js +3 -3
  232. package/dist/shared/src/containers/Feed/components/FilesGrid/FilesGrid.styled.es.js.map +1 -1
  233. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  234. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  235. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +8 -4
  236. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  237. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  238. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  239. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +59 -55
  240. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  241. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  242. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  243. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +9 -5
  244. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  245. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
  246. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
  247. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +8 -4
  248. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
  249. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  250. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  251. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +6 -2
  252. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  253. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  254. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  255. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +8 -4
  256. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  257. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  258. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  259. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +8 -4
  260. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  261. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.cjs.js +1 -1
  262. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.cjs.js.map +1 -1
  263. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.es.js +16 -16
  264. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.es.js.map +1 -1
  265. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  266. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  267. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +6 -2
  268. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  269. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  270. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  271. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +9 -5
  272. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  273. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  274. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  275. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +6 -2
  276. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  277. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  278. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  279. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +8 -4
  280. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  281. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  282. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  283. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +8 -4
  284. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  285. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  286. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  287. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +6 -2
  288. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  289. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  290. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  291. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +6 -2
  292. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  293. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  294. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  295. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +6 -2
  296. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  297. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  298. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  299. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +8 -4
  300. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  301. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  302. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  303. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +8 -4
  304. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  305. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  306. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  307. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +6 -2
  308. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  309. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  310. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  311. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +6 -2
  312. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  313. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
  314. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
  315. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +6 -2
  316. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
  317. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  318. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  319. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +17 -13
  320. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  321. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +1 -1
  322. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  323. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +7 -3
  324. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  325. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  326. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  327. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +60 -48
  328. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  329. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  330. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  331. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +6 -2
  332. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  333. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
  334. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
  335. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +8 -4
  336. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
  337. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  338. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +24 -24
  339. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  340. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  341. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +8 -4
  342. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  343. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
  344. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
  345. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +8 -4
  346. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
  347. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewFormDialogFallback.cjs.js.map +1 -1
  348. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewFormDialogFallback.es.js.map +1 -1
  349. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
  350. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
  351. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +8 -4
  352. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
  353. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +2 -2
  354. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
  355. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +24 -23
  356. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
  357. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  358. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  359. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +83 -88
  360. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  361. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js +1 -1
  362. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js.map +1 -1
  363. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js +1 -1
  364. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js.map +1 -1
  365. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  366. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  367. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +56 -53
  368. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  369. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js +1 -1
  370. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -1
  371. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js +23 -144
  372. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -1
  373. package/dist/shared/src/containers/Views/hooks/useViewSettingsChanged.cjs.js.map +1 -1
  374. package/dist/shared/src/containers/Views/hooks/useViewSettingsChanged.es.js.map +1 -1
  375. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
  376. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
  377. package/dist/shared/src/containers/Views/types.cjs.js +2 -0
  378. package/dist/shared/src/containers/Views/types.cjs.js.map +1 -0
  379. package/dist/shared/src/containers/Views/types.es.js +15 -0
  380. package/dist/shared/src/containers/Views/types.es.js.map +1 -0
  381. package/dist/shared/src/containers/Views/utils/getCustomViewsFallback.cjs.js.map +1 -1
  382. package/dist/shared/src/containers/Views/utils/getCustomViewsFallback.es.js.map +1 -1
  383. package/dist/shared/src/containers/Views/utils/isViewStudioScope.cjs.js +2 -0
  384. package/dist/shared/src/containers/Views/utils/isViewStudioScope.cjs.js.map +1 -0
  385. package/dist/shared/src/containers/Views/utils/isViewStudioScope.es.js +5 -0
  386. package/dist/shared/src/containers/Views/utils/isViewStudioScope.es.js.map +1 -0
  387. package/dist/shared/src/containers/Views/utils/portalUtils.cjs.js.map +1 -1
  388. package/dist/shared/src/containers/Views/utils/portalUtils.es.js.map +1 -1
  389. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  390. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  391. package/dist/shared/src/context/DetailsPanelContext.es.js +76 -77
  392. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  393. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  394. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  395. package/dist/shared/src/context/WebsocketContext.es.js +9 -5
  396. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  397. package/dist/types/api/generated/access.d.ts +6 -0
  398. package/dist/types/api/generated/graphql.d.ts +8 -4
  399. package/dist/types/api/generated/users.d.ts +6 -1
  400. package/dist/types/components/AttributeEditor/AttributeEditor.d.ts +1 -0
  401. package/dist/types/components/LinksManager/LinkManagerItem.d.ts +2 -0
  402. package/dist/types/components/LinksManager/LinksManager.styled.d.ts +6 -0
  403. package/dist/types/components/LinksManager/utils/groupLinks.d.ts +14 -0
  404. package/dist/types/components/ReviewablesList/ReviewablesUpload.d.ts +1 -0
  405. package/dist/types/containers/EntityPickerDialog/hooks/useGetEntityPickerData.d.ts +1 -1
  406. package/dist/types/containers/EntityPickerDialog/hooks/usePreserveChildSelectionByName.d.ts +11 -0
  407. package/dist/types/containers/ProjectTreeTable/types/table.d.ts +1 -0
  408. package/dist/types/containers/Views/ViewsDialogContainer/ViewFormDialogFallback.d.ts +2 -1
  409. package/dist/types/containers/Views/ViewsMenuContainer/ViewsMenuContainer.d.ts +2 -2
  410. package/dist/types/containers/Views/context/ViewsContext.d.ts +3 -2
  411. package/dist/types/containers/Views/hooks/useBaseViewMutations.d.ts +1 -1
  412. package/dist/types/containers/Views/hooks/useBuildViewMenuItems.d.ts +2 -3
  413. package/dist/types/containers/Views/hooks/useSaveViewFromCurrent.d.ts +2 -1
  414. package/dist/types/containers/Views/hooks/useViewSettingsChanged.d.ts +1 -1
  415. package/dist/types/containers/Views/index.d.ts +1 -7
  416. package/dist/types/containers/Views/types.d.ts +10 -0
  417. package/dist/types/containers/Views/utils/isViewStudioScope.d.ts +2 -0
  418. package/dist/types/containers/Views/utils/portalUtils.d.ts +1 -1
  419. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useBaseViewMutations.es.js","sources":["../../../../../../src/containers/Views/hooks/useBaseViewMutations.ts"],"sourcesContent":["import { useCallback } from 'react'\nimport {\n useCreateViewMutation,\n useUpdateViewMutation,\n useDeleteViewMutation,\n useSetDefaultViewMutation,\n viewsQueries,\n ViewListItemModel,\n} from '@shared/api'\nimport { toast } from 'react-toastify'\nimport { getScopeTag } from '@shared/api/queries/views/getViews'\nimport { BASE_VIEW_ID } from './useBuildViewMenuItems'\nimport { ViewSettings } from '@shared/containers'\n\ntype Props = {\n viewType?: string\n projectName?: string\n viewSettings?: ViewSettings\n workingView?: ViewListItemModel\n dispatch?: any\n}\n\nexport type UseBaseViewMutations = {\n onCreateBaseView: (isStudioScope: boolean) => Promise<void>\n onUpdateBaseView: (baseViewId: string, isStudioScope: boolean) => Promise<void>\n onDeleteBaseView: (baseViewId: string, isStudioScope: boolean) => Promise<void>\n onLoadBaseView: (isStudioScope: boolean) => Promise<void>\n}\n\nexport const useBaseViewMutations = ({\n viewType,\n projectName,\n viewSettings,\n workingView,\n dispatch,\n}: Props): UseBaseViewMutations => {\n const [createViewMutation] = useCreateViewMutation()\n const [updateViewMutation] = useUpdateViewMutation()\n const [deleteViewMutation] = useDeleteViewMutation()\n const [setDefaultViewMutation] = useSetDefaultViewMutation()\n\n const onCreateBaseView = useCallback(\n async (isStudioScope: boolean) => {\n try {\n const settings = viewSettings || {}\n const baseViewPayload = {\n label: BASE_VIEW_ID,\n working: false,\n settings,\n } as any\n\n const result = await createViewMutation({\n payload: baseViewPayload,\n viewType: viewType as string,\n projectName: isStudioScope ? undefined : projectName,\n }).unwrap()\n\n dispatch(\n viewsQueries.util.invalidateTags([\n { type: 'view', id: result.id },\n getScopeTag(viewType as string, isStudioScope ? undefined : projectName),\n ]),\n )\n\n const scope = isStudioScope ? 'Studio' : 'Project'\n toast.success(`${scope} default view created successfully`)\n } catch (error: any) {\n const scope = isStudioScope ? 'studio' : 'project'\n console.error(`Failed to create ${scope} base view:`, error)\n toast.error(`Failed to create ${scope} base view: ${error?.message || error}`)\n }\n },\n [createViewMutation, viewType, projectName, viewSettings, dispatch],\n )\n\n const onUpdateBaseView = useCallback(\n async (baseViewId: string, isStudioScope: boolean) => {\n try {\n const settings = viewSettings || {}\n await updateViewMutation({\n viewId: baseViewId,\n viewType: viewType as string,\n projectName: isStudioScope ? undefined : projectName,\n payload: { settings },\n }).unwrap()\n\n dispatch(\n viewsQueries.util.invalidateTags([\n { type: 'view', id: baseViewId },\n getScopeTag(viewType as string, isStudioScope ? undefined : projectName),\n ]),\n )\n\n const scope = isStudioScope ? 'Studio' : 'Project'\n toast.success(`${scope} default view updated successfully`)\n } catch (error: any) {\n const scope = isStudioScope ? 'studio' : 'project'\n console.error(`Failed to update ${scope} base view:`, error)\n toast.error(`Failed to update ${scope} base view: ${error?.message || error}`)\n }\n },\n [updateViewMutation, viewType, projectName, viewSettings, dispatch],\n )\n\n const onDeleteBaseView = useCallback(\n async (baseViewId: string, isStudioScope: boolean) => {\n try {\n await deleteViewMutation({\n viewId: baseViewId,\n viewType: viewType as string,\n projectName: isStudioScope ? undefined : projectName,\n }).unwrap()\n\n // Invalidate tags to force refetch - use the same tag format as getBaseView\n dispatch(\n viewsQueries.util.invalidateTags([\n { type: 'view', id: baseViewId },\n getScopeTag(viewType as string, isStudioScope ? undefined : projectName),\n ]),\n )\n\n const scope = isStudioScope ? 'Studio' : 'Project'\n toast.success(`${scope} default view removed successfully`)\n } catch (error: any) {\n const scope = isStudioScope ? 'studio' : 'project'\n console.error(`Failed to remove ${scope} base view:`, error)\n toast.error(`Failed to remove ${scope} base view: ${error?.message || error}`)\n }\n },\n [deleteViewMutation, viewType, projectName, dispatch],\n )\n\n const onLoadBaseView = useCallback(\n async (isStudioScope: boolean) => {\n try {\n if (!workingView?.id) {\n throw new Error('No working view available to update')\n }\n\n // Fetch the specific base view (project or studio)\n const baseViewPromise = dispatch(\n viewsQueries.endpoints.getBaseView.initiate(\n {\n viewType: viewType as string,\n projectName: isStudioScope ? undefined : projectName,\n },\n { subscribe: false, forceRefetch: true },\n ),\n )\n const baseViewResult = await baseViewPromise\n const baseView = baseViewResult.data\n\n if (!baseView || !baseView.settings) {\n throw new Error('Base view not found or has no settings')\n }\n\n // Update the working view with the base view settings\n await updateViewMutation({\n viewId: workingView.id,\n viewType: viewType as string,\n projectName,\n payload: { settings: baseView.settings },\n }).unwrap()\n\n // Set the working view as the default view\n await setDefaultViewMutation({\n viewType: viewType as string,\n projectName,\n setDefaultViewRequestModel: { viewId: workingView.id },\n }).unwrap()\n\n const scope = isStudioScope ? 'Studio' : 'Project'\n toast.success(`Loaded ${scope} default view to working view`)\n } catch (error: any) {\n const scope = isStudioScope ? 'studio' : 'project'\n console.error(`Failed to load ${scope} base view:`, error)\n toast.error(`Failed to load ${scope} base view: ${error?.message || error}`)\n }\n },\n [\n workingView,\n updateViewMutation,\n setDefaultViewMutation,\n viewType,\n projectName,\n dispatch,\n ],\n )\n\n return {\n onCreateBaseView,\n onUpdateBaseView,\n onDeleteBaseView,\n onLoadBaseView,\n }\n}\n"],"names":["useBaseViewMutations","viewType","projectName","viewSettings","workingView","dispatch","createViewMutation","useCreateViewMutation","updateViewMutation","useUpdateViewMutation","deleteViewMutation","useDeleteViewMutation","setDefaultViewMutation","useSetDefaultViewMutation","onCreateBaseView","useCallback","isStudioScope","result","BASE_VIEW_ID","viewsQueries","getScopeTag","scope","toast","error","onUpdateBaseView","baseViewId","onDeleteBaseView","onLoadBaseView","baseView"],"mappings":"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"}
1
+ {"version":3,"file":"useBaseViewMutations.es.js","sources":["../../../../../../src/containers/Views/hooks/useBaseViewMutations.ts"],"sourcesContent":["import { useCallback } from 'react'\nimport {\n useCreateViewMutation,\n useUpdateViewMutation,\n useDeleteViewMutation,\n useSetDefaultViewMutation,\n viewsQueries,\n ViewListItemModel,\n} from '@shared/api'\nimport { toast } from 'react-toastify'\nimport { getScopeTag } from '@shared/api/queries/views/getViews'\nimport { BASE_VIEW_ID } from '../types'\nimport type { ViewSettings } from '../context/ViewsContext'\n\ntype Props = {\n viewType?: string\n projectName?: string\n viewSettings?: ViewSettings\n workingView?: ViewListItemModel\n dispatch?: any\n}\n\nexport type UseBaseViewMutations = {\n onCreateBaseView: (isStudioScope: boolean) => Promise<void>\n onUpdateBaseView: (baseViewId: string, isStudioScope: boolean) => Promise<void>\n onDeleteBaseView: (baseViewId: string, isStudioScope: boolean) => Promise<void>\n onLoadBaseView: (isStudioScope: boolean) => Promise<void>\n}\n\nexport const useBaseViewMutations = ({\n viewType,\n projectName,\n viewSettings,\n workingView,\n dispatch,\n}: Props): UseBaseViewMutations => {\n const [createViewMutation] = useCreateViewMutation()\n const [updateViewMutation] = useUpdateViewMutation()\n const [deleteViewMutation] = useDeleteViewMutation()\n const [setDefaultViewMutation] = useSetDefaultViewMutation()\n\n const onCreateBaseView = useCallback(\n async (isStudioScope: boolean) => {\n try {\n const settings = viewSettings || {}\n const baseViewPayload = {\n label: BASE_VIEW_ID,\n working: false,\n settings,\n } as any\n\n const result = await createViewMutation({\n payload: baseViewPayload,\n viewType: viewType as string,\n projectName: isStudioScope ? undefined : projectName,\n }).unwrap()\n\n dispatch(\n viewsQueries.util.invalidateTags([\n { type: 'view', id: result.id },\n getScopeTag(viewType as string, isStudioScope ? undefined : projectName),\n ]),\n )\n\n const scope = isStudioScope ? 'Studio' : 'Project'\n toast.success(`${scope} default view created successfully`)\n } catch (error: any) {\n const scope = isStudioScope ? 'studio' : 'project'\n console.error(`Failed to create ${scope} base view:`, error)\n toast.error(`Failed to create ${scope} base view: ${error?.message || error}`)\n }\n },\n [createViewMutation, viewType, projectName, viewSettings, dispatch],\n )\n\n const onUpdateBaseView = useCallback(\n async (baseViewId: string, isStudioScope: boolean) => {\n try {\n const settings = viewSettings || {}\n await updateViewMutation({\n viewId: baseViewId,\n viewType: viewType as string,\n projectName: isStudioScope ? undefined : projectName,\n payload: { settings },\n }).unwrap()\n\n dispatch(\n viewsQueries.util.invalidateTags([\n { type: 'view', id: baseViewId },\n getScopeTag(viewType as string, isStudioScope ? undefined : projectName),\n ]),\n )\n\n const scope = isStudioScope ? 'Studio' : 'Project'\n toast.success(`${scope} default view updated successfully`)\n } catch (error: any) {\n const scope = isStudioScope ? 'studio' : 'project'\n console.error(`Failed to update ${scope} base view:`, error)\n toast.error(`Failed to update ${scope} base view: ${error?.message || error}`)\n }\n },\n [updateViewMutation, viewType, projectName, viewSettings, dispatch],\n )\n\n const onDeleteBaseView = useCallback(\n async (baseViewId: string, isStudioScope: boolean) => {\n try {\n await deleteViewMutation({\n viewId: baseViewId,\n viewType: viewType as string,\n projectName: isStudioScope ? undefined : projectName,\n }).unwrap()\n\n // Invalidate tags to force refetch - use the same tag format as getBaseView\n dispatch(\n viewsQueries.util.invalidateTags([\n { type: 'view', id: baseViewId },\n getScopeTag(viewType as string, isStudioScope ? undefined : projectName),\n ]),\n )\n\n const scope = isStudioScope ? 'Studio' : 'Project'\n toast.success(`${scope} default view removed successfully`)\n } catch (error: any) {\n const scope = isStudioScope ? 'studio' : 'project'\n console.error(`Failed to remove ${scope} base view:`, error)\n toast.error(`Failed to remove ${scope} base view: ${error?.message || error}`)\n }\n },\n [deleteViewMutation, viewType, projectName, dispatch],\n )\n\n const onLoadBaseView = useCallback(\n async (isStudioScope: boolean) => {\n try {\n if (!workingView?.id) {\n throw new Error('No working view available to update')\n }\n\n // Fetch the specific base view (project or studio)\n const baseViewPromise = dispatch(\n viewsQueries.endpoints.getBaseView.initiate(\n {\n viewType: viewType as string,\n projectName: isStudioScope ? undefined : projectName,\n },\n { subscribe: false, forceRefetch: true },\n ),\n )\n const baseViewResult = await baseViewPromise\n const baseView = baseViewResult.data\n\n if (!baseView || !baseView.settings) {\n throw new Error('Base view not found or has no settings')\n }\n\n // Update the working view with the base view settings\n await updateViewMutation({\n viewId: workingView.id,\n viewType: viewType as string,\n projectName,\n payload: { settings: baseView.settings },\n }).unwrap()\n\n // Set the working view as the default view\n await setDefaultViewMutation({\n viewType: viewType as string,\n projectName,\n setDefaultViewRequestModel: { viewId: workingView.id },\n }).unwrap()\n\n const scope = isStudioScope ? 'Studio' : 'Project'\n toast.success(`Loaded ${scope} default view to working view`)\n } catch (error: any) {\n const scope = isStudioScope ? 'studio' : 'project'\n console.error(`Failed to load ${scope} base view:`, error)\n toast.error(`Failed to load ${scope} base view: ${error?.message || error}`)\n }\n },\n [\n workingView,\n updateViewMutation,\n setDefaultViewMutation,\n viewType,\n projectName,\n dispatch,\n ],\n )\n\n return {\n onCreateBaseView,\n onUpdateBaseView,\n onDeleteBaseView,\n onLoadBaseView,\n }\n}\n"],"names":["useBaseViewMutations","viewType","projectName","viewSettings","workingView","dispatch","createViewMutation","useCreateViewMutation","updateViewMutation","useUpdateViewMutation","deleteViewMutation","useDeleteViewMutation","setDefaultViewMutation","useSetDefaultViewMutation","onCreateBaseView","useCallback","isStudioScope","result","BASE_VIEW_ID","viewsQueries","getScopeTag","scope","toast","error","onUpdateBaseView","baseViewId","onDeleteBaseView","onLoadBaseView","baseView"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const S=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/projectFolders.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/projectFolders/projectFolders.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/tasks/getTasks.cjs.js");require("../../../api/queries/tasks/updateTasks.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");const O=require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");const u=require("react"),j=require("../ViewsMenu/ViewsMenu.cjs.js"),A=require("@ynput/ayon-react-components"),F=require("../utils/generateWorkingView.cjs.js"),M=require("react-toastify"),G=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/SubtasksModulesContext.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 K=require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");const N=require("../utils/getCustomViewsFallback.cjs.js"),y="_working_",Q="__base__",T=({viewsList:l,workingView:s,viewType:o,projectName:w,currentUser:d,useWorkingView:m,editingViewId:g,collapsed:q,setCollapsed:V,onSelect:t,onEdit:W,onSave:x,onResetWorkingView:n,selectedId:a})=>{const{powerLicense:c}=K.usePowerpack(),[h]=O.useCreateViewMutation(),D=u.useMemo(()=>l.map(e=>({...e,isOwner:e.owner===d?.name,highlighted:g===e.id?"save":void 0})),[l,d,g]),L={id:y,label:m?"Personal view":"Working view",startContent:m&&S.jsxRuntimeExports.jsx(A.Icon,{icon:"person"}),isEditable:!1},_=u.useCallback(async()=>{let e=s?.id;if(!s)try{console.warn("No working view found, creating a new one");const r=F.generateWorkingView();await h({payload:r,viewType:o,projectName:w}).unwrap(),e=r.id}catch(r){M.toast.error(`Failed to create working view: ${r}`)}t(e)},[s,o,h,w,t]),P=async e=>{try{await x(e),t(e)}catch(r){M.toast.error(r)}},[R,{isLoading:$}]=G.useLoadModule({addon:"powerpack",remote:"views",module:"getCustomViews",fallback:N.getCustomViewsFallback,skip:!o||!c}),{myViews:k,sharedViews:I,allPrivateViews:f}=R({viewsList:D,onEdit:W,onSelect:t,onSave:P}),p=u.useCallback(e=>{V({...q,[e]:!q[e]})},[q,V]),v=u.useMemo(()=>[{id:"myViews",title:"My views",items:k},{id:"sharedViews",title:"Shared views",items:I},{id:"allPrivateViews",title:"All private views",items:f}],[k,I,f]),E=u.useMemo(()=>({...L,onClick:_,isEditable:!!n,onResetView:n}),[_,n]);return u.useMemo(()=>{const e=[E],r=v.filter(i=>c&&(i.items?.length||0)>0);return r.length>0&&e.push(j.VIEW_DIVIDER),r.forEach(i=>{const b=!!q[i.id];if(e.push({type:"section",id:i.id,title:i.title,collapsed:b,onToggle:()=>p(i.id)}),!b)e.push(...i.items);else if(a){const C=i.items.find(B=>B.id===a);C&&e.push(C)}}),e},[E,v,q,p,a,c])};exports.BASE_VIEW_ID=Q;exports.WORKING_VIEW_ID=y;exports.default=T;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const N=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/projectFolders.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/projectFolders/projectFolders.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/tasks/getTasks.cjs.js");require("../../../api/queries/tasks/updateTasks.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");const O=require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");const u=require("react"),S=require("../ViewsMenu/ViewsMenu.cjs.js"),j=require("@ynput/ayon-react-components"),A=require("../utils/generateWorkingView.cjs.js"),b=require("react-toastify"),F=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/SubtasksModulesContext.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 G=require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");const K=require("../utils/getCustomViewsFallback.cjs.js"),s=require("../types.cjs.js"),Q=({viewsList:w,workingView:o,viewType:n,projectName:d,currentUser:m,useWorkingView:V,editingViewId:g,collapsed:q,setCollapsed:I,onSelect:t,onEdit:y,onSave:D,onResetWorkingView:a,selectedId:c})=>{const{powerLicense:l}=G.usePowerpack(),[h]=O.useCreateViewMutation(),R=u.useMemo(()=>w.map(e=>({...e,isOwner:e.owner===m?.name,highlighted:g===e.id?"save":void 0})),[w,m,g]),x={id:s.WORKING_VIEW_ID,label:V?"Personal view":"Working view",startContent:V&&N.jsxRuntimeExports.jsx(j.Icon,{icon:"person"}),isEditable:!1},E=u.useCallback(async()=>{let e=o?.id;if(!o)try{console.warn("No working view found, creating a new one");const r=A.generateWorkingView();await h({payload:r,viewType:n,projectName:d}).unwrap(),e=r.id}catch(r){b.toast.error(`Failed to create working view: ${r}`)}t(e)},[o,n,h,d,t]),L=async e=>{try{await D(e),t(e)}catch(r){b.toast.error(r)}},[P,{isLoading:T}]=F.useLoadModule({addon:"powerpack",remote:"views",module:"getCustomViews",fallback:K.getCustomViewsFallback,skip:!n||!l}),{myViews:_,sharedViews:k,allPrivateViews:p}=P({viewsList:R,onEdit:y,onSelect:t,onSave:L}),f=u.useCallback(e=>{I({...q,[e]:!q[e]})},[q,I]),v=u.useMemo(()=>[{id:"myViews",title:"My views",items:_},{id:"sharedViews",title:"Shared views",items:k},{id:"allPrivateViews",title:"All private views",items:p}],[_,k,p]),W=u.useMemo(()=>({...x,onClick:E,isEditable:!!a,onResetView:a}),[E,a]);return u.useMemo(()=>{const e=[W],r=v.filter(i=>l&&(i.items?.length||0)>0);return r.length>0&&e.push(S.VIEW_DIVIDER),r.forEach(i=>{const C=!!q[i.id];if(e.push({type:"section",id:i.id,title:i.title,collapsed:C,onToggle:()=>f(i.id)}),!C)e.push(...i.items);else if(c){const M=i.items.find(B=>B.id===c);M&&e.push(M)}}),e},[W,v,q,f,c,l])};exports.BASE_VIEW_ID=s.BASE_VIEW_ID;exports.NEW_VIEW_ID=s.NEW_VIEW_ID;exports.WORKING_VIEW_ID=s.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 {\n GetWorkingViewApiResponse,\n useCreateViewMutation,\n UserModel,\n ViewListItemModel,\n} 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 } 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 const BASE_VIEW_ID = '__base__' as const\nexport type ViewListItemModelExtended = ViewListItemModel & {\n isOwner: boolean\n highlighted?: 'save' | 'edit'\n}\n\ntype Props = {\n viewsList: ViewListItemModel[]\n workingView?: GetWorkingViewApiResponse\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 return {\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 // 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 and powerpack is available\n const visibleSections = sections.filter((s) => powerLicense && (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 return result\n }, [workingViewItem, sections, collapsed, toggleSection, selectedId, powerLicense])\n\n return viewItems\n}\n\nexport default useBuildViewMenuItems\n"],"names":["WORKING_VIEW_ID","BASE_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","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 {\n GetWorkingViewApiResponse,\n useCreateViewMutation,\n UserModel,\n ViewListItemModel,\n} 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 } from '@shared/hooks'\nimport { getCustomViewsFallback } from '../utils/getCustomViewsFallback'\nimport { usePowerpack } from '@shared/context'\nimport type { CollapsedViewState } from '../context/ViewsContext'\nimport { WORKING_VIEW_ID, NEW_VIEW_ID, BASE_VIEW_ID } from '../types'\nexport { WORKING_VIEW_ID, NEW_VIEW_ID, BASE_VIEW_ID }\nexport type ViewListItemModelExtended = ViewListItemModel & {\n isOwner: boolean\n highlighted?: 'save' | 'edit'\n}\n\ntype Props = {\n viewsList: ViewListItemModel[]\n workingView?: GetWorkingViewApiResponse\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 return {\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 // 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 and powerpack is available\n const visibleSections = sections.filter((s) => powerLicense && (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 return result\n }, [workingViewItem, sections, collapsed, toggleSection, selectedId, powerLicense])\n\n return viewItems\n}\n\nexport default useBuildViewMenuItems\n"],"names":["useBuildViewMenuItems","viewsList","workingView","viewType","projectName","currentUser","useWorkingView","editingViewId","collapsed","setCollapsed","onSelect","onEdit","onSave","onResetWorkingView","selectedId","powerLicense","usePowerpack","createView","useCreateViewMutation","extendedViewsList","useMemo","view","workingBaseView","WORKING_VIEW_ID","jsx","Icon","handleWorkingViewChange","useCallback","workingViewId","generateWorkingView","error","toast","handleEditView","viewId","getCustomViews","isLoadingQueries","useLoadModule","getCustomViewsFallback","myViews","sharedViews","allPrivateViews","toggleSection","id","sections","workingViewItem","result","visibleSections","s","VIEW_DIVIDER","section","isCollapsed","selectedItem","i"],"mappings":"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"}
@@ -85,15 +85,15 @@ import "../../../api/queries/users/updateUsers.es.js";
85
85
  import "../../../api/queries/users/guests.es.js";
86
86
  import "../../../api/queries/versions/updateVersions.es.js";
87
87
  import "../../../api/queries/views/getViews.es.js";
88
- import { useCreateViewMutation as O } from "../../../api/queries/views/updateViews.es.js";
88
+ import { useCreateViewMutation as N } from "../../../api/queries/views/updateViews.es.js";
89
89
  import "../../../api/queries/watchers/getWatchers.es.js";
90
90
  import "../../../api/queries/uris/getUris.es.js";
91
91
  import { useMemo as p, useCallback as x } from "react";
92
- import { VIEW_DIVIDER as R } from "../ViewsMenu/ViewsMenu.es.js";
93
- import { Icon as S } from "@ynput/ayon-react-components";
94
- import { generateWorkingView as G } from "../utils/generateWorkingView.es.js";
95
- import { toast as L } from "react-toastify";
96
- import { useLoadModule as K } from "../../../hooks/useLoadModule.es.js";
92
+ import { VIEW_DIVIDER as O } from "../ViewsMenu/ViewsMenu.es.js";
93
+ import { Icon as R } from "@ynput/ayon-react-components";
94
+ import { generateWorkingView as S } from "../utils/generateWorkingView.es.js";
95
+ import { toast as W } from "react-toastify";
96
+ import { useLoadModule as G } from "../../../hooks/useLoadModule.es.js";
97
97
  import "../../../../../_virtual/runtime.es.js";
98
98
  import "../../../../../_virtual/semver.es.js";
99
99
  import "lodash";
@@ -107,7 +107,7 @@ import "react-dom";
107
107
  import "../../../context/pip/PiPWrapper.es.js";
108
108
  import "../../../context/AddonProjectContext.es.js";
109
109
  import "../../../context/AddonContext.es.js";
110
- import { usePowerpack as N } from "../../../context/PowerpackContext.es.js";
110
+ import { usePowerpack as K } from "../../../context/PowerpackContext.es.js";
111
111
  import "../../../context/MoveEntityContext.es.js";
112
112
  import "../../../context/MenuContext.es.js";
113
113
  import "../../../context/WebsocketContext.es.js";
@@ -119,8 +119,10 @@ import "react-redux";
119
119
  import "custom-protocol-check";
120
120
  import "../../ProjectTreeTable/components/GroupSettingsFallback.es.js";
121
121
  import { getCustomViewsFallback as Q } from "../utils/getCustomViewsFallback.es.js";
122
- const $ = "_working_", eo = "__base__", so = ({
123
- viewsList: l,
122
+ import { WORKING_VIEW_ID as $ } from "../types.es.js";
123
+ import { BASE_VIEW_ID as lo, NEW_VIEW_ID as wo } from "../types.es.js";
124
+ const so = ({
125
+ viewsList: w,
124
126
  workingView: e,
125
127
  viewType: s,
126
128
  projectName: c,
@@ -128,95 +130,96 @@ const $ = "_working_", eo = "__base__", so = ({
128
130
  useWorkingView: u,
129
131
  editingViewId: f,
130
132
  collapsed: r,
131
- setCollapsed: g,
133
+ setCollapsed: V,
132
134
  onSelect: m,
133
- onEdit: M,
134
- onSave: B,
135
- onResetWorkingView: n,
136
- selectedId: a
135
+ onEdit: D,
136
+ onSave: L,
137
+ onResetWorkingView: a,
138
+ selectedId: n
137
139
  }) => {
138
- const { powerLicense: w } = N(), [V] = O(), D = p(
139
- () => l.map((i) => ({
140
+ const { powerLicense: l } = K(), [g] = N(), M = p(
141
+ () => w.map((i) => ({
140
142
  ...i,
141
143
  isOwner: i.owner === d?.name,
142
144
  highlighted: f === i.id ? "save" : void 0
143
145
  })),
144
- [l, d, f]
145
- ), P = {
146
+ [w, d, f]
147
+ ), B = {
146
148
  id: $,
147
149
  label: u ? "Personal view" : "Working view",
148
- startContent: u && /* @__PURE__ */ F.jsx(S, { icon: "person" }),
150
+ startContent: u && /* @__PURE__ */ F.jsx(R, { icon: "person" }),
149
151
  isEditable: !1
150
152
  }, h = x(async () => {
151
153
  let i = e?.id;
152
154
  if (!e)
153
155
  try {
154
156
  console.warn("No working view found, creating a new one");
155
- const t = G();
156
- await V({
157
+ const t = S();
158
+ await g({
157
159
  payload: t,
158
160
  viewType: s,
159
161
  projectName: c
160
162
  }).unwrap(), i = t.id;
161
163
  } catch (t) {
162
- L.error(`Failed to create working view: ${t}`);
164
+ W.error(`Failed to create working view: ${t}`);
163
165
  }
164
166
  m(i);
165
- }, [e, s, V, c, m]), W = async (i) => {
167
+ }, [e, s, g, c, m]), P = async (i) => {
166
168
  try {
167
- await B(i), m(i);
169
+ await L(i), m(i);
168
170
  } catch (t) {
169
- L.error(t);
171
+ W.error(t);
170
172
  }
171
- }, [j, { isLoading: q }] = K({
173
+ }, [j, { isLoading: q }] = G({
172
174
  addon: "powerpack",
173
175
  remote: "views",
174
176
  module: "getCustomViews",
175
177
  fallback: Q,
176
178
  // minVersion: minVersion,
177
- skip: !s || !w
178
- }), { myViews: k, sharedViews: v, allPrivateViews: I } = j({
179
- viewsList: D,
180
- onEdit: M,
179
+ skip: !s || !l
180
+ }), { myViews: I, sharedViews: v, allPrivateViews: E } = j({
181
+ viewsList: M,
182
+ onEdit: D,
181
183
  onSelect: m,
182
- onSave: W
183
- }), _ = x(
184
+ onSave: P
185
+ }), k = x(
184
186
  (i) => {
185
- g({ ...r, [i]: !r[i] });
187
+ V({ ...r, [i]: !r[i] });
186
188
  },
187
- [r, g]
188
- ), E = p(() => [
189
- { id: "myViews", title: "My views", items: k },
189
+ [r, V]
190
+ ), C = p(() => [
191
+ { id: "myViews", title: "My views", items: I },
190
192
  { id: "sharedViews", title: "Shared views", items: v },
191
- { id: "allPrivateViews", title: "All private views", items: I }
192
- ], [k, v, I]), b = p(() => ({
193
- ...P,
193
+ { id: "allPrivateViews", title: "All private views", items: E }
194
+ ], [I, v, E]), b = p(() => ({
195
+ ...B,
194
196
  onClick: h,
195
197
  // expose reset button when handler is provided
196
- isEditable: !!n,
197
- onResetView: n
198
- }), [h, n]);
198
+ isEditable: !!a,
199
+ onResetView: a
200
+ }), [h, a]);
199
201
  return p(() => {
200
- const i = [b], t = E.filter((o) => w && (o.items?.length || 0) > 0);
201
- return t.length > 0 && i.push(R), t.forEach((o) => {
202
- const C = !!r[o.id];
202
+ const i = [b], t = C.filter((o) => l && (o.items?.length || 0) > 0);
203
+ return t.length > 0 && i.push(O), t.forEach((o) => {
204
+ const y = !!r[o.id];
203
205
  if (i.push({
204
206
  type: "section",
205
207
  id: o.id,
206
208
  title: o.title,
207
- collapsed: C,
208
- onToggle: () => _(o.id)
209
- }), !C)
209
+ collapsed: y,
210
+ onToggle: () => k(o.id)
211
+ }), !y)
210
212
  i.push(...o.items);
211
- else if (a) {
212
- const y = o.items.find((A) => A.id === a);
213
- y && i.push(y);
213
+ else if (n) {
214
+ const _ = o.items.find((A) => A.id === n);
215
+ _ && i.push(_);
214
216
  }
215
217
  }), i;
216
- }, [b, E, r, _, a, w]);
218
+ }, [b, C, r, k, n, l]);
217
219
  };
218
220
  export {
219
- eo as BASE_VIEW_ID,
221
+ lo as BASE_VIEW_ID,
222
+ wo as NEW_VIEW_ID,
220
223
  $ as WORKING_VIEW_ID,
221
224
  so as default
222
225
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useBuildViewMenuItems.es.js","sources":["../../../../../../src/containers/Views/hooks/useBuildViewMenuItems.tsx"],"sourcesContent":["import {\n GetWorkingViewApiResponse,\n useCreateViewMutation,\n UserModel,\n ViewListItemModel,\n} 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 } 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 const BASE_VIEW_ID = '__base__' as const\nexport type ViewListItemModelExtended = ViewListItemModel & {\n isOwner: boolean\n highlighted?: 'save' | 'edit'\n}\n\ntype Props = {\n viewsList: ViewListItemModel[]\n workingView?: GetWorkingViewApiResponse\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 return {\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 // 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 and powerpack is available\n const visibleSections = sections.filter((s) => powerLicense && (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 return result\n }, [workingViewItem, sections, collapsed, toggleSection, selectedId, powerLicense])\n\n return viewItems\n}\n\nexport default useBuildViewMenuItems\n"],"names":["WORKING_VIEW_ID","BASE_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","VIEW_DIVIDER","section","isCollapsed","selectedItem","i"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBO,MAAMA,IAAkB,aAElBC,KAAe,YAuBtBC,KAAwB,CAAC;AAAA,EAC7B,WAAAC;AAAA,EACA,aAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,eAAAC;AAAA,EACA,WAAAC;AAAA,EACA,cAAAC;AAAA,EACA,UAAAC;AAAA,EACA,QAAAC;AAAA,EACA,QAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,YAAAC;AACF,MAA6B;AAC3B,QAAM,EAAE,cAAAC,EAAA,IAAiBC,EAAA,GAGnB,CAACC,CAAU,IAAIC,EAAA,GAEfC,IAAiDC;AAAA,IACrD,MACEnB,EAAU,IAAI,CAACoB,OAAU;AAAA,MACvB,GAAGA;AAAA,MACH,SAASA,EAAK,UAAUhB,GAAa;AAAA,MACrC,aAAaE,MAAkBc,EAAK,KAAK,SAAS;AAAA,IAAA,EAClD;AAAA,IACJ,CAACpB,GAAWI,GAAaE,CAAa;AAAA,EAAA,GAGlCe,IAA4B;AAAA,IAChC,IAAIxB;AAAA,IACJ,OAAOQ,IAAiB,kBAAkB;AAAA,IAC1C,cAAcA,KAAkBiB,gBAAAA,EAAAA,IAACC,GAAA,EAAK,MAAK,UAAS;AAAA,IACpD,YAAY;AAAA,EAAA,GAIRC,IAA0BC,EAAY,YAAY;AACtD,QAAIC,IAAgBzB,GAAa;AACjC,QAAI,CAACA;AAEH,UAAI;AACF,gBAAQ,KAAK,2CAA2C;AACxD,cAAMA,IAAc0B,EAAA;AACpB,cAAMX,EAAW;AAAA,UACf,SAASf;AAAAA,UACT,UAAAC;AAAA,UACA,aAAAC;AAAA,QAAA,CACD,EAAE,OAAA,GAEHuB,IAAgBzB,EAAY;AAAA,MAC9B,SAAS2B,GAAY;AACnB,QAAAC,EAAM,MAAM,kCAAkCD,CAAK,EAAE;AAAA,MACvD;AAGF,IAAAnB,EAASiB,CAAuB;AAAA,EAClC,GAAG,CAACzB,GAAaC,GAAUc,GAAYb,GAAaM,CAAQ,CAAC,GAEvDqB,IAAiB,OAAOC,MAAmB;AAE/C,QAAI;AACF,YAAMpB,EAAOoB,CAAM,GACnBtB,EAASsB,CAAM;AAAA,IACjB,SAASH,GAAY;AACnB,MAAAC,EAAM,MAAMD,CAAK;AAAA,IACnB;AAAA,EACF,GAEM,CAACI,GAAgB,EAAE,WAAWC,EAAA,CAAkB,IAAIC,EAAc;AAAA,IACtE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,UAAUC;AAAA;AAAA,IAEV,MAAM,CAACjC,KAAY,CAACY;AAAA,EAAA,CACrB,GAEK,EAAE,SAAAsB,GAAS,aAAAC,GAAa,iBAAAC,EAAA,IAAoBN,EAAe;AAAA,IAC/D,WAAWd;AAAA,IACX,QAAAR;AAAA,IACA,UAAAD;AAAA,IACA,QAAQqB;AAAA,EAAA,CACT,GAEKS,IAAgBd;AAAA,IACpB,CAACe,MAAe;AACd,MAAAhC,EAAa,EAAE,GAAGD,GAAW,CAACiC,CAAE,GAAG,CAACjC,EAAUiC,CAAE,GAAG;AAAA,IACrD;AAAA,IACA,CAACjC,GAAWC,CAAY;AAAA,EAAA,GAGpBiC,IAAoEtB,EAAQ,MACzE;AAAA,IACL,EAAE,IAAI,WAAW,OAAO,YAAY,OAAOiB,EAAA;AAAA,IAC3C,EAAE,IAAI,eAAe,OAAO,gBAAgB,OAAOC,EAAA;AAAA,IACnD,EAAE,IAAI,mBAAmB,OAAO,qBAAqB,OAAOC,EAAA;AAAA,EAA8B,GAE3F,CAACF,GAASC,GAAaC,CAAe,CAAC,GAEpCI,IAAgCvB,EAAQ,OACrC;AAAA,IACL,GAAGE;AAAA,IACH,SAASG;AAAA;AAAA,IAET,YAAY,EAAQZ;AAAA,IACpB,aAAaA;AAAA,EAAA,IAEd,CAACY,GAAyBZ,CAAkB,CAAC;AA8BhD,SA3BkCO,EAAQ,MAAM;AAC9C,UAAMwB,IAAyB,CAACD,CAAe,GAGzCE,IAAkBH,EAAS,OAAO,CAACI,MAAM/B,MAAiB+B,EAAE,OAAO,UAAU,KAAK,CAAC;AACzF,WAAID,EAAgB,SAAS,KAAGD,EAAO,KAAKG,CAAY,GAExDF,EAAgB,QAAQ,CAACG,MAAY;AACnC,YAAMC,IAAc,CAAC,CAACzC,EAAUwC,EAAQ,EAAE;AAQ1C,UAPAJ,EAAO,KAAK;AAAA,QACV,MAAM;AAAA,QACN,IAAII,EAAQ;AAAA,QACZ,OAAOA,EAAQ;AAAA,QACf,WAAWC;AAAA,QACX,UAAU,MAAMT,EAAcQ,EAAQ,EAAE;AAAA,MAAA,CACzC,GACG,CAACC;AACH,QAAAL,EAAO,KAAK,GAAGI,EAAQ,KAAK;AAAA,eACnBlC,GAAY;AACrB,cAAMoC,IAAeF,EAAQ,MAAM,KAAK,CAACG,MAAMA,EAAE,OAAOrC,CAAU;AAClE,QAAIoC,KAAcN,EAAO,KAAKM,CAAY;AAAA,MAC5C;AAAA,IACF,CAAC,GAEMN;AAAA,EACT,GAAG,CAACD,GAAiBD,GAAUlC,GAAWgC,GAAe1B,GAAYC,CAAY,CAAC;AAGpF;"}
1
+ {"version":3,"file":"useBuildViewMenuItems.es.js","sources":["../../../../../../src/containers/Views/hooks/useBuildViewMenuItems.tsx"],"sourcesContent":["import {\n GetWorkingViewApiResponse,\n useCreateViewMutation,\n UserModel,\n ViewListItemModel,\n} 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 } from '@shared/hooks'\nimport { getCustomViewsFallback } from '../utils/getCustomViewsFallback'\nimport { usePowerpack } from '@shared/context'\nimport type { CollapsedViewState } from '../context/ViewsContext'\nimport { WORKING_VIEW_ID, NEW_VIEW_ID, BASE_VIEW_ID } from '../types'\nexport { WORKING_VIEW_ID, NEW_VIEW_ID, BASE_VIEW_ID }\nexport type ViewListItemModelExtended = ViewListItemModel & {\n isOwner: boolean\n highlighted?: 'save' | 'edit'\n}\n\ntype Props = {\n viewsList: ViewListItemModel[]\n workingView?: GetWorkingViewApiResponse\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 return {\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 // 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 and powerpack is available\n const visibleSections = sections.filter((s) => powerLicense && (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 return result\n }, [workingViewItem, sections, collapsed, toggleSection, selectedId, powerLicense])\n\n return viewItems\n}\n\nexport default useBuildViewMenuItems\n"],"names":["useBuildViewMenuItems","viewsList","workingView","viewType","projectName","currentUser","useWorkingView","editingViewId","collapsed","setCollapsed","onSelect","onEdit","onSave","onResetWorkingView","selectedId","powerLicense","usePowerpack","createView","useCreateViewMutation","extendedViewsList","useMemo","view","workingBaseView","WORKING_VIEW_ID","jsx","Icon","handleWorkingViewChange","useCallback","workingViewId","generateWorkingView","error","toast","handleEditView","viewId","getCustomViews","isLoadingQueries","useLoadModule","getCustomViewsFallback","myViews","sharedViews","allPrivateViews","toggleSection","id","sections","workingViewItem","result","visibleSections","s","VIEW_DIVIDER","section","isCollapsed","selectedItem","i"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwCA,MAAMA,KAAwB,CAAC;AAAA,EAC7B,WAAAC;AAAA,EACA,aAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,eAAAC;AAAA,EACA,WAAAC;AAAA,EACA,cAAAC;AAAA,EACA,UAAAC;AAAA,EACA,QAAAC;AAAA,EACA,QAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,YAAAC;AACF,MAA6B;AAC3B,QAAM,EAAE,cAAAC,EAAA,IAAiBC,EAAA,GAGnB,CAACC,CAAU,IAAIC,EAAA,GAEfC,IAAiDC;AAAA,IACrD,MACEnB,EAAU,IAAI,CAACoB,OAAU;AAAA,MACvB,GAAGA;AAAA,MACH,SAASA,EAAK,UAAUhB,GAAa;AAAA,MACrC,aAAaE,MAAkBc,EAAK,KAAK,SAAS;AAAA,IAAA,EAClD;AAAA,IACJ,CAACpB,GAAWI,GAAaE,CAAa;AAAA,EAAA,GAGlCe,IAA4B;AAAA,IAChC,IAAIC;AAAA,IACJ,OAAOjB,IAAiB,kBAAkB;AAAA,IAC1C,cAAcA,KAAkBkB,gBAAAA,EAAAA,IAACC,GAAA,EAAK,MAAK,UAAS;AAAA,IACpD,YAAY;AAAA,EAAA,GAIRC,IAA0BC,EAAY,YAAY;AACtD,QAAIC,IAAgB1B,GAAa;AACjC,QAAI,CAACA;AAEH,UAAI;AACF,gBAAQ,KAAK,2CAA2C;AACxD,cAAMA,IAAc2B,EAAA;AACpB,cAAMZ,EAAW;AAAA,UACf,SAASf;AAAAA,UACT,UAAAC;AAAA,UACA,aAAAC;AAAA,QAAA,CACD,EAAE,OAAA,GAEHwB,IAAgB1B,EAAY;AAAA,MAC9B,SAAS4B,GAAY;AACnB,QAAAC,EAAM,MAAM,kCAAkCD,CAAK,EAAE;AAAA,MACvD;AAGF,IAAApB,EAASkB,CAAuB;AAAA,EAClC,GAAG,CAAC1B,GAAaC,GAAUc,GAAYb,GAAaM,CAAQ,CAAC,GAEvDsB,IAAiB,OAAOC,MAAmB;AAE/C,QAAI;AACF,YAAMrB,EAAOqB,CAAM,GACnBvB,EAASuB,CAAM;AAAA,IACjB,SAASH,GAAY;AACnB,MAAAC,EAAM,MAAMD,CAAK;AAAA,IACnB;AAAA,EACF,GAEM,CAACI,GAAgB,EAAE,WAAWC,EAAA,CAAkB,IAAIC,EAAc;AAAA,IACtE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,UAAUC;AAAA;AAAA,IAEV,MAAM,CAAClC,KAAY,CAACY;AAAA,EAAA,CACrB,GAEK,EAAE,SAAAuB,GAAS,aAAAC,GAAa,iBAAAC,EAAA,IAAoBN,EAAe;AAAA,IAC/D,WAAWf;AAAA,IACX,QAAAR;AAAA,IACA,UAAAD;AAAA,IACA,QAAQsB;AAAA,EAAA,CACT,GAEKS,IAAgBd;AAAA,IACpB,CAACe,MAAe;AACd,MAAAjC,EAAa,EAAE,GAAGD,GAAW,CAACkC,CAAE,GAAG,CAAClC,EAAUkC,CAAE,GAAG;AAAA,IACrD;AAAA,IACA,CAAClC,GAAWC,CAAY;AAAA,EAAA,GAGpBkC,IAAoEvB,EAAQ,MACzE;AAAA,IACL,EAAE,IAAI,WAAW,OAAO,YAAY,OAAOkB,EAAA;AAAA,IAC3C,EAAE,IAAI,eAAe,OAAO,gBAAgB,OAAOC,EAAA;AAAA,IACnD,EAAE,IAAI,mBAAmB,OAAO,qBAAqB,OAAOC,EAAA;AAAA,EAA8B,GAE3F,CAACF,GAASC,GAAaC,CAAe,CAAC,GAEpCI,IAAgCxB,EAAQ,OACrC;AAAA,IACL,GAAGE;AAAA,IACH,SAASI;AAAA;AAAA,IAET,YAAY,EAAQb;AAAA,IACpB,aAAaA;AAAA,EAAA,IAEd,CAACa,GAAyBb,CAAkB,CAAC;AA8BhD,SA3BkCO,EAAQ,MAAM;AAC9C,UAAMyB,IAAyB,CAACD,CAAe,GAGzCE,IAAkBH,EAAS,OAAO,CAACI,MAAMhC,MAAiBgC,EAAE,OAAO,UAAU,KAAK,CAAC;AACzF,WAAID,EAAgB,SAAS,KAAGD,EAAO,KAAKG,CAAY,GAExDF,EAAgB,QAAQ,CAACG,MAAY;AACnC,YAAMC,IAAc,CAAC,CAAC1C,EAAUyC,EAAQ,EAAE;AAQ1C,UAPAJ,EAAO,KAAK;AAAA,QACV,MAAM;AAAA,QACN,IAAII,EAAQ;AAAA,QACZ,OAAOA,EAAQ;AAAA,QACf,WAAWC;AAAA,QACX,UAAU,MAAMT,EAAcQ,EAAQ,EAAE;AAAA,MAAA,CACzC,GACG,CAACC;AACH,QAAAL,EAAO,KAAK,GAAGI,EAAQ,KAAK;AAAA,eACnBnC,GAAY;AACrB,cAAMqC,IAAeF,EAAQ,MAAM,KAAK,CAACG,MAAMA,EAAE,OAAOtC,CAAU;AAClE,QAAIqC,KAAcN,EAAO,KAAKM,CAAY;AAAA,MAC5C;AAAA,IACF,CAAC,GAEMN;AAAA,EACT,GAAG,CAACD,GAAiBD,GAAUnC,GAAWiC,GAAe3B,GAAYC,CAAY,CAAC;AAGpF;"}
@@ -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/projectFolders.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/projectFolders/projectFolders.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/tasks/getTasks.cjs.js");require("../../../api/queries/tasks/updateTasks.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");require("lodash");const c=require("react-toastify");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/SubtasksModulesContext.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("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");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 c=require("react"),u=require("../utils/isViewStudioScope.cjs.js"),w=require("react-toastify"),v=({viewType:r,projectName:s,viewsList:a,sourceSettings:e,onUpdateView:n})=>({onSaveViewFromCurrent:c.useCallback(async t=>{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 n(t,{settings:e},u.isViewStudioScope(t,a)),w.toast.success("View settings saved")}catch(o){const i=typeof o=="string"?"Failed to save view settings: "+o:"Failed to save view settings";throw console.error(i),i}},[r,s,e])});exports.useSaveViewFromCurrent=v;
2
2
  //# sourceMappingURL=useSaveViewFromCurrent.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSaveViewFromCurrent.cjs.js","sources":["../../../../../../src/containers/Views/hooks/useSaveViewFromCurrent.ts"],"sourcesContent":["import { useCallback } from 'react'\nimport { isViewStudioScope, ViewData, ViewSettings, ViewType } from '..'\nimport { UseViewMutations } from './useViewsMutations'\nimport { ViewListItemModel } from '@shared/api'\nimport { toast } from 'react-toastify'\n\ntype Props = {\n viewType?: ViewType\n projectName?: string\n viewsList: ViewListItemModel[]\n sourceSettings?: ViewSettings\n onUpdateView: UseViewMutations['onUpdateView']\n}\n\nexport const useSaveViewFromCurrent = ({\n viewType,\n projectName,\n viewsList,\n sourceSettings,\n onUpdateView,\n}: Props) => {\n // save the views settings from another views settings (uses update)\n const onSaveViewFromCurrent = useCallback(\n async (viewId: string) => {\n if (!viewType) {\n throw 'viewType are required for saving a view from another view'\n }\n\n // get the fromView settings\n if (!sourceSettings) {\n throw 'sourceView is required for saving a view from another view'\n }\n\n try {\n await onUpdateView(\n viewId,\n {\n settings: sourceSettings,\n },\n isViewStudioScope(viewId, viewsList),\n )\n\n toast.success('View settings saved')\n } catch (error) {\n const errorMessage =\n typeof error === 'string'\n ? 'Failed to save view settings: ' + error\n : 'Failed to save view settings'\n console.error(errorMessage)\n throw errorMessage\n }\n },\n [viewType, projectName, sourceSettings],\n )\n\n return { onSaveViewFromCurrent }\n}\n"],"names":["useSaveViewFromCurrent","viewType","projectName","viewsList","sourceSettings","onUpdateView","useCallback","viewId","isViewStudioScope","toast","error","errorMessage"],"mappings":"k+MAcO,MAAMA,EAAyB,CAAC,CACrC,SAAAC,EACA,YAAAC,EACA,UAAAC,EACA,eAAAC,EACA,aAAAC,CACF,KAmCS,CAAE,sBAjCqBC,EAAAA,YAC5B,MAAOC,GAAmB,CACxB,GAAI,CAACN,EACH,KAAM,4DAIR,GAAI,CAACG,EACH,KAAM,6DAGR,GAAI,CACF,MAAMC,EACJE,EACA,CACE,SAAUH,CAAA,EAEZI,EAAAA,kBAAkBD,EAAQJ,CAAS,CAAA,EAGrCM,EAAAA,MAAM,QAAQ,qBAAqB,CACrC,OAASC,EAAO,CACd,MAAMC,EACJ,OAAOD,GAAU,SACb,iCAAmCA,EACnC,+BACN,cAAQ,MAAMC,CAAY,EACpBA,CACR,CACF,EACA,CAACV,EAAUC,EAAaE,CAAc,CAAA,CAG/B"}
1
+ {"version":3,"file":"useSaveViewFromCurrent.cjs.js","sources":["../../../../../../src/containers/Views/hooks/useSaveViewFromCurrent.ts"],"sourcesContent":["import { useCallback } from 'react'\nimport type { ViewType } from '../types'\nimport type { ViewData, ViewSettings } from '../context/ViewsContext'\nimport { isViewStudioScope } from '../utils/isViewStudioScope'\nimport { UseViewMutations } from './useViewsMutations'\nimport { ViewListItemModel } from '@shared/api'\nimport { toast } from 'react-toastify'\n\ntype Props = {\n viewType?: ViewType\n projectName?: string\n viewsList: ViewListItemModel[]\n sourceSettings?: ViewSettings\n onUpdateView: UseViewMutations['onUpdateView']\n}\n\nexport const useSaveViewFromCurrent = ({\n viewType,\n projectName,\n viewsList,\n sourceSettings,\n onUpdateView,\n}: Props) => {\n // save the views settings from another views settings (uses update)\n const onSaveViewFromCurrent = useCallback(\n async (viewId: string) => {\n if (!viewType) {\n throw 'viewType are required for saving a view from another view'\n }\n\n // get the fromView settings\n if (!sourceSettings) {\n throw 'sourceView is required for saving a view from another view'\n }\n\n try {\n await onUpdateView(\n viewId,\n {\n settings: sourceSettings,\n },\n isViewStudioScope(viewId, viewsList),\n )\n\n toast.success('View settings saved')\n } catch (error) {\n const errorMessage =\n typeof error === 'string'\n ? 'Failed to save view settings: ' + error\n : 'Failed to save view settings'\n console.error(errorMessage)\n throw errorMessage\n }\n },\n [viewType, projectName, sourceSettings],\n )\n\n return { onSaveViewFromCurrent }\n}\n"],"names":["useSaveViewFromCurrent","viewType","projectName","viewsList","sourceSettings","onUpdateView","useCallback","viewId","isViewStudioScope","toast","error","errorMessage"],"mappings":"oLAgBaA,EAAyB,CAAC,CACrC,SAAAC,EACA,YAAAC,EACA,UAAAC,EACA,eAAAC,EACA,aAAAC,CACF,KAmCS,CAAE,sBAjCqBC,EAAAA,YAC5B,MAAOC,GAAmB,CACxB,GAAI,CAACN,EACH,KAAM,4DAIR,GAAI,CAACG,EACH,KAAM,6DAGR,GAAI,CACF,MAAMC,EACJE,EACA,CACE,SAAUH,CAAA,EAEZI,EAAAA,kBAAkBD,EAAQJ,CAAS,CAAA,EAGrCM,EAAAA,MAAM,QAAQ,qBAAqB,CACrC,OAASC,EAAO,CACd,MAAMC,EACJ,OAAOD,GAAU,SACb,iCAAmCA,EACnC,+BACN,cAAQ,MAAMC,CAAY,EACpBA,CACR,CACF,EACA,CAACV,EAAUC,EAAaE,CAAc,CAAA,CAG/B"}