@ynput/ayon-frontend-shared 0.2.20 → 0.2.22

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 (529) hide show
  1. package/dist/DetailsPanel.cjs.js +10 -8
  2. package/dist/DetailsPanel.cjs.js.map +1 -1
  3. package/dist/DetailsPanel.es.js +10 -8
  4. package/dist/DetailsPanel.es.js.map +1 -1
  5. package/dist/ProjectTreeTable.cjs.js +2 -2
  6. package/dist/ProjectTreeTable.es.js +2 -2
  7. package/dist/Views.cjs.js +41 -0
  8. package/dist/Views.cjs.js.map +1 -0
  9. package/dist/Views.es.js +41 -0
  10. package/dist/Views.es.js.map +1 -0
  11. package/dist/_virtual/index.cjs4.js +4 -4
  12. package/dist/_virtual/index.cjs5.js +5 -3
  13. package/dist/_virtual/index.cjs5.js.map +1 -1
  14. package/dist/_virtual/index.cjs6.js +3 -5
  15. package/dist/_virtual/index.cjs6.js.map +1 -1
  16. package/dist/_virtual/index.cjs7.js +2 -2
  17. package/dist/_virtual/index.es4.js +4 -4
  18. package/dist/_virtual/index.es5.js +5 -2
  19. package/dist/_virtual/index.es5.js.map +1 -1
  20. package/dist/_virtual/index.es6.js +2 -5
  21. package/dist/_virtual/index.es6.js.map +1 -1
  22. package/dist/_virtual/index.es7.js +2 -2
  23. package/dist/api.cjs.js +28 -20
  24. package/dist/api.cjs.js.map +1 -1
  25. package/dist/api.es.js +16 -8
  26. package/dist/api.es.js.map +1 -1
  27. package/dist/components.cjs.js +0 -17
  28. package/dist/components.cjs.js.map +1 -1
  29. package/dist/components.es.js +1 -18
  30. package/dist/components.es.js.map +1 -1
  31. package/dist/index.cjs.js +10 -8
  32. package/dist/index.cjs.js.map +1 -1
  33. package/dist/index.es.js +10 -8
  34. package/dist/index.es.js.map +1 -1
  35. package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js +1 -1
  36. package/dist/node_modules/match-sorter/dist/match-sorter.esm.es.js +1 -1
  37. package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
  38. package/dist/node_modules/parse-numeric-range/index.es.js +1 -1
  39. package/dist/node_modules/rehype-prism-plus/dist/index.es.cjs.js +1 -1
  40. package/dist/node_modules/rehype-prism-plus/dist/index.es.es.js +1 -1
  41. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  42. package/dist/node_modules/remove-accents/index.es.js +1 -1
  43. package/dist/shared/node_modules/uuid/dist/esm-browser/native.cjs.js +3 -1
  44. package/dist/shared/node_modules/uuid/dist/esm-browser/native.cjs.js.map +1 -1
  45. package/dist/shared/node_modules/uuid/dist/esm-browser/native.es.js +3 -1
  46. package/dist/shared/node_modules/uuid/dist/esm-browser/native.es.js.map +1 -1
  47. package/dist/shared/node_modules/uuid/dist/esm-browser/rng.cjs.js +2 -2
  48. package/dist/shared/node_modules/uuid/dist/esm-browser/rng.cjs.js.map +1 -1
  49. package/dist/shared/node_modules/uuid/dist/esm-browser/rng.es.js +2 -2
  50. package/dist/shared/node_modules/uuid/dist/esm-browser/rng.es.js.map +1 -1
  51. package/dist/shared/node_modules/uuid/dist/esm-browser/stringify.cjs.js +1 -1
  52. package/dist/shared/node_modules/uuid/dist/esm-browser/stringify.cjs.js.map +1 -1
  53. package/dist/shared/node_modules/uuid/dist/esm-browser/stringify.es.js +1 -1
  54. package/dist/shared/node_modules/uuid/dist/esm-browser/stringify.es.js.map +1 -1
  55. package/dist/shared/node_modules/uuid/dist/esm-browser/v1.cjs.js +41 -58
  56. package/dist/shared/node_modules/uuid/dist/esm-browser/v1.cjs.js.map +1 -1
  57. package/dist/shared/node_modules/uuid/dist/esm-browser/v1.es.js +41 -57
  58. package/dist/shared/node_modules/uuid/dist/esm-browser/v1.es.js.map +1 -1
  59. package/dist/shared/node_modules/uuid/dist/esm-browser/v4.cjs.js +1 -5
  60. package/dist/shared/node_modules/uuid/dist/esm-browser/v4.cjs.js.map +1 -1
  61. package/dist/shared/node_modules/uuid/dist/esm-browser/v4.es.js +1 -5
  62. package/dist/shared/node_modules/uuid/dist/esm-browser/v4.es.js.map +1 -1
  63. package/dist/shared/src/api/base/client.cjs.js +20 -19
  64. package/dist/shared/src/api/base/client.cjs.js.map +1 -1
  65. package/dist/shared/src/api/base/client.es.js +20 -19
  66. package/dist/shared/src/api/base/client.es.js.map +1 -1
  67. package/dist/shared/src/api/generated/access.cjs.js +8 -0
  68. package/dist/shared/src/api/generated/access.cjs.js.map +1 -1
  69. package/dist/shared/src/api/generated/access.es.js +8 -0
  70. package/dist/shared/src/api/generated/access.es.js.map +1 -1
  71. package/dist/shared/src/api/generated/views.cjs.js +30 -2
  72. package/dist/shared/src/api/generated/views.cjs.js.map +1 -1
  73. package/dist/shared/src/api/generated/views.es.js +30 -2
  74. package/dist/shared/src/api/generated/views.es.js.map +1 -1
  75. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +6 -5
  76. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  77. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +6 -5
  78. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  79. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +6 -5
  80. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
  81. package/dist/shared/src/api/queries/entities/updateEntity.es.js +6 -5
  82. package/dist/shared/src/api/queries/entities/updateEntity.es.js.map +1 -1
  83. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +6 -5
  84. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  85. package/dist/shared/src/api/queries/overview/updateOverview.es.js +6 -5
  86. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  87. package/dist/shared/src/api/queries/share/share.cjs.js +66 -0
  88. package/dist/shared/src/api/queries/share/share.cjs.js.map +1 -0
  89. package/dist/shared/src/api/queries/share/share.es.js +66 -0
  90. package/dist/shared/src/api/queries/share/share.es.js.map +1 -0
  91. package/dist/shared/src/api/queries/users/getUsers.cjs.js +6 -5
  92. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  93. package/dist/shared/src/api/queries/users/getUsers.es.js +6 -5
  94. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  95. package/dist/shared/src/api/queries/views/getViews.cjs.js +33 -5
  96. package/dist/shared/src/api/queries/views/getViews.cjs.js.map +1 -1
  97. package/dist/shared/src/api/queries/views/getViews.es.js +33 -5
  98. package/dist/shared/src/api/queries/views/getViews.es.js.map +1 -1
  99. package/dist/shared/src/api/queries/views/updateViews.cjs.js +167 -9
  100. package/dist/shared/src/api/queries/views/updateViews.cjs.js.map +1 -1
  101. package/dist/shared/src/api/queries/views/updateViews.es.js +168 -10
  102. package/dist/shared/src/api/queries/views/updateViews.es.js.map +1 -1
  103. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +6 -5
  104. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  105. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +6 -5
  106. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  107. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.cjs.js +6 -5
  108. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.cjs.js.map +1 -1
  109. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.es.js +6 -5
  110. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.es.js.map +1 -1
  111. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +10 -8
  112. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  113. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +10 -8
  114. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  115. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +7 -5
  116. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  117. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +7 -5
  118. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  119. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +10 -8
  120. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  121. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +10 -8
  122. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  123. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +6 -5
  124. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  125. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +6 -5
  126. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  127. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +10 -8
  128. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  129. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +10 -8
  130. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  131. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +6 -5
  132. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  133. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +6 -5
  134. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  135. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +10 -8
  136. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  137. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +10 -8
  138. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  139. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +10 -8
  140. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  141. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +10 -8
  142. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  143. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +10 -8
  144. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  145. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +10 -8
  146. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  147. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +6 -5
  148. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  149. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +6 -5
  150. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  151. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +6 -5
  152. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  153. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +6 -5
  154. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  155. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +10 -8
  156. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  157. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +10 -8
  158. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  159. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +10 -8
  160. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  161. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +10 -8
  162. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  163. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +6 -5
  164. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  165. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +6 -5
  166. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  167. package/dist/shared/src/components/Watchers/Watchers.cjs.js +6 -5
  168. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  169. package/dist/shared/src/components/Watchers/Watchers.es.js +6 -5
  170. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  171. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +10 -8
  172. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  173. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +10 -8
  174. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  175. package/dist/shared/src/containers/Actions/Actions.cjs.js +6 -5
  176. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  177. package/dist/shared/src/containers/Actions/Actions.es.js +6 -5
  178. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  179. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +10 -8
  180. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  181. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +10 -8
  182. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  183. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +10 -8
  184. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  185. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +10 -8
  186. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  187. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +10 -8
  188. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  189. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +10 -8
  190. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  191. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +10 -8
  192. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  193. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +10 -8
  194. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  195. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +10 -8
  196. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  197. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +10 -8
  198. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  199. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +6 -5
  200. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  201. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +6 -5
  202. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  203. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +6 -5
  204. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  205. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +6 -5
  206. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  207. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +6 -5
  208. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  209. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +6 -5
  210. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  211. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js +1 -1
  212. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js.map +1 -1
  213. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +6 -5
  214. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  215. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +6 -5
  216. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  217. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +16 -11
  218. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  219. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +16 -11
  220. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  221. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +10 -8
  222. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  223. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +10 -8
  224. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  225. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js.map +1 -1
  226. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js.map +1 -1
  227. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +48 -25
  228. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
  229. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +48 -25
  230. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
  231. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +6 -5
  232. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  233. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +6 -5
  234. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  235. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
  236. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
  237. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +0 -5
  238. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -1
  239. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +0 -5
  240. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -1
  241. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +6 -5
  242. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  243. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +6 -5
  244. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  245. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +6 -5
  246. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  247. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +6 -5
  248. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  249. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +6 -5
  250. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  251. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +6 -5
  252. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  253. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +9 -10
  254. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  255. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +9 -10
  256. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  257. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +6 -5
  258. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  259. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +6 -5
  260. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  261. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js +6 -5
  262. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js.map +1 -1
  263. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js +6 -5
  264. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js.map +1 -1
  265. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js +15 -9
  266. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js.map +1 -1
  267. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js +15 -9
  268. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js.map +1 -1
  269. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +24 -15
  270. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  271. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +24 -15
  272. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  273. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +6 -5
  274. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  275. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +6 -5
  276. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  277. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js +106 -0
  278. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map +1 -0
  279. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js +106 -0
  280. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -0
  281. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +10 -8
  282. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  283. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +10 -8
  284. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  285. package/dist/shared/src/containers/Views/ViewItem/ViewItem.cjs.js +65 -0
  286. package/dist/shared/src/containers/Views/ViewItem/ViewItem.cjs.js.map +1 -0
  287. package/dist/shared/src/containers/Views/ViewItem/ViewItem.es.js +65 -0
  288. package/dist/shared/src/containers/Views/ViewItem/ViewItem.es.js.map +1 -0
  289. package/dist/shared/src/{components → containers}/Views/ViewItem/ViewItem.styled.cjs.js +26 -12
  290. package/dist/shared/src/containers/Views/ViewItem/ViewItem.styled.cjs.js.map +1 -0
  291. package/dist/shared/src/{components → containers}/Views/ViewItem/ViewItem.styled.es.js +26 -12
  292. package/dist/shared/src/containers/Views/ViewItem/ViewItem.styled.es.js.map +1 -0
  293. package/dist/shared/src/{components → containers}/Views/Views.cjs.js +6 -10
  294. package/dist/shared/src/containers/Views/Views.cjs.js.map +1 -0
  295. package/dist/shared/src/{components → containers}/Views/Views.es.js +7 -11
  296. package/dist/shared/src/containers/Views/Views.es.js.map +1 -0
  297. package/dist/shared/src/{components → containers}/Views/Views.styled.cjs.js +4 -3
  298. package/dist/shared/src/containers/Views/Views.styled.cjs.js.map +1 -0
  299. package/dist/shared/src/{components → containers}/Views/Views.styled.es.js +4 -3
  300. package/dist/shared/src/containers/Views/Views.styled.es.js.map +1 -0
  301. package/dist/shared/src/{components → containers}/Views/ViewsButton/ViewsButton.cjs.js +11 -2
  302. package/dist/shared/src/containers/Views/ViewsButton/ViewsButton.cjs.js.map +1 -0
  303. package/dist/shared/src/{components → containers}/Views/ViewsButton/ViewsButton.es.js +11 -2
  304. package/dist/shared/src/containers/Views/ViewsButton/ViewsButton.es.js.map +1 -0
  305. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewFormDialogFallback.cjs.js +4 -0
  306. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewFormDialogFallback.cjs.js.map +1 -0
  307. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewFormDialogFallback.es.js +5 -0
  308. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewFormDialogFallback.es.js.map +1 -0
  309. package/dist/shared/src/{components/Views/context/ViewsContext.cjs.js → containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js} +76 -62
  310. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -0
  311. package/dist/shared/src/{components/Views/context/ViewsContext.es.js → containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js} +75 -61
  312. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -0
  313. package/dist/shared/src/{components → containers}/Views/ViewsMenu/ViewsMenu.cjs.js +1 -0
  314. package/dist/shared/src/containers/Views/ViewsMenu/ViewsMenu.cjs.js.map +1 -0
  315. package/dist/shared/src/{components → containers}/Views/ViewsMenu/ViewsMenu.es.js +1 -0
  316. package/dist/shared/src/containers/Views/ViewsMenu/ViewsMenu.es.js.map +1 -0
  317. package/dist/shared/src/{components → containers}/Views/ViewsMenu/ViewsMenu.styled.cjs.js.map +1 -1
  318. package/dist/shared/src/{components → containers}/Views/ViewsMenu/ViewsMenu.styled.es.js.map +1 -1
  319. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +105 -0
  320. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -0
  321. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +105 -0
  322. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -0
  323. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +238 -0
  324. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -0
  325. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +238 -0
  326. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -0
  327. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js +52 -0
  328. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js.map +1 -0
  329. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js +52 -0
  330. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js.map +1 -0
  331. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js +95 -0
  332. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js.map +1 -0
  333. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js +95 -0
  334. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js.map +1 -0
  335. package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.cjs.js +44 -0
  336. package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.cjs.js.map +1 -0
  337. package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.es.js +44 -0
  338. package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.es.js.map +1 -0
  339. package/dist/shared/src/{components → containers}/Views/hooks/useBuildViewMenuItems.cjs.js +70 -38
  340. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -0
  341. package/dist/shared/src/{components → containers}/Views/hooks/useBuildViewMenuItems.es.js +71 -39
  342. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -0
  343. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js +33 -0
  344. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -0
  345. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js +33 -0
  346. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -0
  347. package/dist/shared/src/{components/Views/ViewForm/ViewFormContainer.cjs.js → containers/Views/hooks/useSelectedView.cjs.js} +39 -119
  348. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -0
  349. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +109 -0
  350. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -0
  351. package/dist/shared/src/containers/Views/hooks/useViewSettingsChanged.cjs.js +19 -0
  352. package/dist/shared/src/containers/Views/hooks/useViewSettingsChanged.cjs.js.map +1 -0
  353. package/dist/shared/src/containers/Views/hooks/useViewSettingsChanged.es.js +19 -0
  354. package/dist/shared/src/containers/Views/hooks/useViewSettingsChanged.es.js.map +1 -0
  355. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +182 -0
  356. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -0
  357. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +182 -0
  358. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -0
  359. package/dist/shared/src/containers/Views/hooks/useViewsShortcuts.cjs.js +30 -0
  360. package/dist/shared/src/containers/Views/hooks/useViewsShortcuts.cjs.js.map +1 -0
  361. package/dist/shared/src/containers/Views/hooks/useViewsShortcuts.es.js +30 -0
  362. package/dist/shared/src/containers/Views/hooks/useViewsShortcuts.es.js.map +1 -0
  363. package/dist/shared/src/containers/Views/utils/generateWorkingView.cjs.js +13 -0
  364. package/dist/shared/src/containers/Views/utils/generateWorkingView.cjs.js.map +1 -0
  365. package/dist/shared/src/containers/Views/utils/generateWorkingView.es.js +13 -0
  366. package/dist/shared/src/containers/Views/utils/generateWorkingView.es.js.map +1 -0
  367. package/dist/shared/src/containers/Views/utils/getCustomViewsFallback.cjs.js.map +1 -0
  368. package/dist/shared/src/containers/Views/utils/getCustomViewsFallback.es.js.map +1 -0
  369. package/dist/shared/src/{components → containers}/Views/utils/portalUtils.cjs.js +1 -1
  370. package/dist/shared/src/{components → containers}/Views/utils/portalUtils.cjs.js.map +1 -1
  371. package/dist/shared/src/{components → containers}/Views/utils/portalUtils.es.js +1 -1
  372. package/dist/shared/src/{components → containers}/Views/utils/portalUtils.es.js.map +1 -1
  373. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +126 -0
  374. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -0
  375. package/dist/shared/src/{components/Views/ViewForm/ViewFormContainer.es.js → containers/Views/utils/viewUpdateHelper.es.js} +54 -117
  376. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -0
  377. package/dist/shared/src/context/AddonProjectContext.cjs.js +6 -5
  378. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  379. package/dist/shared/src/context/AddonProjectContext.es.js +6 -5
  380. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  381. package/dist/shared/src/context/DetailsPanelContext.cjs.js +6 -5
  382. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  383. package/dist/shared/src/context/DetailsPanelContext.es.js +6 -5
  384. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  385. package/dist/shared/src/context/PowerpackContext.cjs.js +15 -8
  386. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  387. package/dist/shared/src/context/PowerpackContext.es.js +15 -8
  388. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  389. package/dist/shared/src/context/RemoteModulesContext.cjs.js +6 -5
  390. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  391. package/dist/shared/src/context/RemoteModulesContext.es.js +6 -5
  392. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  393. package/dist/shared/src/hooks/useActionTriggers.cjs.js +6 -5
  394. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  395. package/dist/shared/src/hooks/useActionTriggers.es.js +6 -5
  396. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  397. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +6 -5
  398. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  399. package/dist/shared/src/hooks/useEntityUpdate.es.js +6 -5
  400. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  401. package/dist/shared/src/hooks/useLoadModule.cjs.js +1 -1
  402. package/dist/shared/src/hooks/useLoadModule.cjs.js.map +1 -1
  403. package/dist/shared/src/hooks/useLoadModule.es.js +1 -1
  404. package/dist/shared/src/hooks/useLoadModule.es.js.map +1 -1
  405. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +6 -5
  406. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  407. package/dist/shared/src/hooks/useScopedStatuses.es.js +6 -5
  408. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  409. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +6 -5
  410. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  411. package/dist/shared/src/hooks/useUserProjectConfig.es.js +6 -5
  412. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  413. package/dist/shared/src/util/columnConfigConverter.cjs.js +116 -0
  414. package/dist/shared/src/util/columnConfigConverter.cjs.js.map +1 -0
  415. package/dist/shared/src/util/columnConfigConverter.es.js +116 -0
  416. package/dist/shared/src/util/columnConfigConverter.es.js.map +1 -0
  417. package/dist/types/Views.d.ts +2 -0
  418. package/dist/types/api/generated/access.d.ts +15 -0
  419. package/dist/types/api/generated/views.d.ts +130 -22
  420. package/dist/types/api/queries/index.d.ts +6 -5
  421. package/dist/types/api/queries/share/index.d.ts +1 -0
  422. package/dist/types/api/queries/share/share.d.ts +150 -0
  423. package/dist/types/api/queries/views/getViews.d.ts +161 -22
  424. package/dist/types/api/queries/views/updateViews.d.ts +500 -13
  425. package/dist/types/components/index.d.ts +0 -1
  426. package/dist/types/containers/ProjectTreeTable/context/ColumnSettingsContext.d.ts +10 -5
  427. package/dist/types/containers/ProjectTreeTable/context/ColumnSettingsProvider.d.ts +1 -1
  428. package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +0 -2
  429. package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +2 -4
  430. package/dist/types/containers/ProjectTreeTable/hooks/index.d.ts +0 -1
  431. package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +3 -5
  432. package/dist/types/containers/ProjectTreeTable/hooks/useProjectTableModules.d.ts +2 -5
  433. package/dist/types/containers/ProjectTreeTable/hooks/useQueryFilters.d.ts +5 -3
  434. package/dist/types/containers/ProjectTreeTable/types/index.d.ts +1 -0
  435. package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +5 -6
  436. package/dist/types/containers/ProjectTreeTable/utils/index.d.ts +1 -0
  437. package/dist/types/containers/ProjectTreeTable/utils/queryFilterToClientFilter.d.ts +24 -0
  438. package/dist/types/{components → containers}/Views/ViewItem/ViewItem.d.ts +4 -1
  439. package/dist/types/{components → containers}/Views/ViewItem/ViewItem.styled.d.ts +1 -1
  440. package/dist/types/containers/Views/Views.d.ts +2 -0
  441. package/dist/types/containers/Views/ViewsDialogContainer/ViewFormDialogFallback.d.ts +25 -0
  442. package/dist/types/containers/Views/ViewsDialogContainer/ViewsDialogContainer.d.ts +6 -0
  443. package/dist/types/{components → containers}/Views/ViewsMenu/ViewsMenu.d.ts +1 -2
  444. package/dist/types/{components → containers}/Views/ViewsMenuContainer/ViewsMenuContainer.d.ts +1 -1
  445. package/dist/types/containers/Views/context/ViewsContext.d.ts +48 -0
  446. package/dist/types/containers/Views/hooks/index.d.ts +5 -0
  447. package/dist/types/containers/Views/hooks/pages/useListsViewSettings.d.ts +9 -0
  448. package/dist/types/containers/Views/hooks/pages/useOverviewViewSettings.d.ts +12 -0
  449. package/dist/types/containers/Views/hooks/pages/useTaskProgressViewSettings.d.ts +10 -0
  450. package/dist/types/containers/Views/hooks/pages/viewUpdateHelper.d.ts +0 -0
  451. package/dist/types/containers/Views/hooks/useBuildViewMenuItems.d.ts +23 -0
  452. package/dist/types/containers/Views/hooks/useSaveViewFromCurrent.d.ts +12 -0
  453. package/dist/types/containers/Views/hooks/useSelectedView.d.ts +12 -0
  454. package/dist/types/containers/Views/hooks/useViewSettingsChanged.d.ts +6 -0
  455. package/dist/types/containers/Views/hooks/useViewsMutations.d.ts +20 -0
  456. package/dist/types/containers/Views/hooks/useViewsShortcuts.d.ts +13 -0
  457. package/dist/types/containers/Views/index.d.ts +19 -0
  458. package/dist/types/containers/Views/utils/generateWorkingView.d.ts +3 -0
  459. package/dist/types/containers/Views/utils/getCustomViewsFallback.d.ts +13 -0
  460. package/dist/types/{components → containers}/Views/utils/portalUtils.d.ts +1 -1
  461. package/dist/types/containers/Views/utils/viewUpdateHelper.d.ts +17 -0
  462. package/dist/types/containers/index.d.ts +1 -0
  463. package/dist/types/context/PowerpackContext.d.ts +4 -1
  464. package/dist/types/util/columnConfigConverter.d.ts +15 -0
  465. package/dist/types/util/index.d.ts +1 -0
  466. package/dist/util.cjs.js +3 -0
  467. package/dist/util.cjs.js.map +1 -1
  468. package/dist/util.es.js +3 -0
  469. package/dist/util.es.js.map +1 -1
  470. package/package.json +6 -1
  471. package/dist/shared/src/components/Views/ViewForm/ViewForm.cjs.js +0 -164
  472. package/dist/shared/src/components/Views/ViewForm/ViewForm.cjs.js.map +0 -1
  473. package/dist/shared/src/components/Views/ViewForm/ViewForm.es.js +0 -164
  474. package/dist/shared/src/components/Views/ViewForm/ViewForm.es.js.map +0 -1
  475. package/dist/shared/src/components/Views/ViewForm/ViewForm.styled.cjs.js +0 -71
  476. package/dist/shared/src/components/Views/ViewForm/ViewForm.styled.cjs.js.map +0 -1
  477. package/dist/shared/src/components/Views/ViewForm/ViewForm.styled.es.js +0 -71
  478. package/dist/shared/src/components/Views/ViewForm/ViewForm.styled.es.js.map +0 -1
  479. package/dist/shared/src/components/Views/ViewForm/ViewFormContainer.cjs.js.map +0 -1
  480. package/dist/shared/src/components/Views/ViewForm/ViewFormContainer.es.js.map +0 -1
  481. package/dist/shared/src/components/Views/ViewItem/ViewItem.cjs.js +0 -36
  482. package/dist/shared/src/components/Views/ViewItem/ViewItem.cjs.js.map +0 -1
  483. package/dist/shared/src/components/Views/ViewItem/ViewItem.es.js +0 -36
  484. package/dist/shared/src/components/Views/ViewItem/ViewItem.es.js.map +0 -1
  485. package/dist/shared/src/components/Views/ViewItem/ViewItem.styled.cjs.js.map +0 -1
  486. package/dist/shared/src/components/Views/ViewItem/ViewItem.styled.es.js.map +0 -1
  487. package/dist/shared/src/components/Views/Views.cjs.js.map +0 -1
  488. package/dist/shared/src/components/Views/Views.es.js.map +0 -1
  489. package/dist/shared/src/components/Views/Views.styled.cjs.js.map +0 -1
  490. package/dist/shared/src/components/Views/Views.styled.es.js.map +0 -1
  491. package/dist/shared/src/components/Views/ViewsButton/ViewsButton.cjs.js.map +0 -1
  492. package/dist/shared/src/components/Views/ViewsButton/ViewsButton.es.js.map +0 -1
  493. package/dist/shared/src/components/Views/ViewsMenu/ViewsMenu.cjs.js.map +0 -1
  494. package/dist/shared/src/components/Views/ViewsMenu/ViewsMenu.es.js.map +0 -1
  495. package/dist/shared/src/components/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +0 -132
  496. package/dist/shared/src/components/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +0 -1
  497. package/dist/shared/src/components/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +0 -132
  498. package/dist/shared/src/components/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +0 -1
  499. package/dist/shared/src/components/Views/context/ViewsContext.cjs.js.map +0 -1
  500. package/dist/shared/src/components/Views/context/ViewsContext.es.js.map +0 -1
  501. package/dist/shared/src/components/Views/hooks/useBuildViewMenuItems.cjs.js.map +0 -1
  502. package/dist/shared/src/components/Views/hooks/useBuildViewMenuItems.es.js.map +0 -1
  503. package/dist/shared/src/components/Views/utils/generatePersonalView.cjs.js +0 -13
  504. package/dist/shared/src/components/Views/utils/generatePersonalView.cjs.js.map +0 -1
  505. package/dist/shared/src/components/Views/utils/generatePersonalView.es.js +0 -13
  506. package/dist/shared/src/components/Views/utils/generatePersonalView.es.js.map +0 -1
  507. package/dist/shared/src/components/Views/utils/getCustomViewsFallback.cjs.js.map +0 -1
  508. package/dist/shared/src/components/Views/utils/getCustomViewsFallback.es.js.map +0 -1
  509. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnSorting.cjs.js +0 -24
  510. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnSorting.cjs.js.map +0 -1
  511. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnSorting.es.js +0 -24
  512. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnSorting.es.js.map +0 -1
  513. package/dist/types/components/Views/ViewForm/ViewForm.d.ts +0 -14
  514. package/dist/types/components/Views/ViewForm/ViewForm.styled.d.ts +0 -9
  515. package/dist/types/components/Views/ViewForm/ViewFormContainer.d.ts +0 -15
  516. package/dist/types/components/Views/Views.d.ts +0 -8
  517. package/dist/types/components/Views/context/ViewsContext.d.ts +0 -31
  518. package/dist/types/components/Views/hooks/useBuildViewMenuItems.d.ts +0 -14
  519. package/dist/types/components/Views/index.d.ts +0 -11
  520. package/dist/types/components/Views/utils/generatePersonalView.d.ts +0 -3
  521. package/dist/types/components/Views/utils/getCustomViewsFallback.d.ts +0 -12
  522. package/dist/types/containers/ProjectTreeTable/hooks/useColumnSorting.d.ts +0 -12
  523. /package/dist/shared/src/{components → containers}/Views/ViewsMenu/ViewsMenu.styled.cjs.js +0 -0
  524. /package/dist/shared/src/{components → containers}/Views/ViewsMenu/ViewsMenu.styled.es.js +0 -0
  525. /package/dist/shared/src/{components → containers}/Views/utils/getCustomViewsFallback.cjs.js +0 -0
  526. /package/dist/shared/src/{components → containers}/Views/utils/getCustomViewsFallback.es.js +0 -0
  527. /package/dist/types/{components → containers}/Views/Views.styled.d.ts +0 -0
  528. /package/dist/types/{components → containers}/Views/ViewsButton/ViewsButton.d.ts +0 -0
  529. /package/dist/types/{components → containers}/Views/ViewsMenu/ViewsMenu.styled.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"cellUtils.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/cellUtils.ts"],"sourcesContent":["/**\n * Shared cell utilities for table operations\n */\n\nimport { parseRowId } from '../context'\nimport { EMapResult, EntitiesMap } from '../types'\n\n// Type definitions for cell identifiers\nexport type CellId = string\nexport type RowId = string\nexport type ColId = string\n\n// Cell position in the grid\nexport interface CellPosition {\n rowId: RowId\n colId: ColId\n}\n\n// Cell border position flags - used for determining which borders to show\nexport enum BorderPosition {\n None = 0,\n Top = 1 << 0,\n Right = 1 << 1,\n Bottom = 1 << 2,\n Left = 1 << 3,\n All = Top | Right | Bottom | Left,\n}\n\n/**\n * Create a standardized cell ID from row and column IDs\n */\nexport const getCellId = (rowId: RowId, colId: ColId): CellId => `cell-${rowId}-${colId}`\n\n/**\n * Parse a cell ID to extract row and column IDs\n * @returns CellPosition or null if invalid format\n */\nexport const parseCellId = (cellId: CellId): CellPosition | null => {\n const match = cellId.match(/^cell-(.+)-(.+)$/)\n if (!match) return null\n return { rowId: match[1], colId: match[2] }\n}\n\nexport const getCellValue = (obj: any, path: string): any => {\n if (!obj || !path) return undefined\n\n const parts = path.split('_')\n let current = obj\n\n for (const part of parts) {\n if (current && typeof current === 'object' && part in current) {\n current = current[part]\n } else {\n return undefined // Return undefined if any part of the path is invalid\n }\n }\n\n return current\n}\n\n/**\n * Determines which borders to display for a selected cell\n * based on its position within the selection grid\n *\n * @param rowIndex Current cell's row index\n * @param colIndex Current cell's column index\n * @param selectedCells 2D array representing selection state (true = selected)\n * @returns BorderPosition flags indicating which borders to display\n */\nexport const getCellBorders = (\n rowIndex: number,\n colIndex: number,\n selectedCells: boolean[][],\n): BorderPosition => {\n if (!selectedCells[rowIndex]?.[colIndex]) {\n return BorderPosition.None\n }\n\n let borders = BorderPosition.None\n\n // Check top border\n if (rowIndex === 0 || !selectedCells[rowIndex - 1]?.[colIndex]) {\n borders |= BorderPosition.Top\n }\n\n // Check right border\n if (!selectedCells[rowIndex]?.[colIndex + 1]) {\n borders |= BorderPosition.Right\n }\n\n // Check bottom border\n if (!selectedCells[rowIndex + 1]?.[colIndex]) {\n borders |= BorderPosition.Bottom\n }\n\n // Check left border\n if (colIndex === 0 || !selectedCells[rowIndex]?.[colIndex - 1]) {\n borders |= BorderPosition.Left\n }\n\n return borders\n}\n\n/**\n * Converts border position flags to CSS classes for shadow styling\n */\nexport const getBorderClasses = (borders: BorderPosition): string[] => {\n const classes: string[] = []\n\n if (borders & BorderPosition.Top) classes.push('shadow-top')\n if (borders & BorderPosition.Right) classes.push('shadow-right')\n if (borders & BorderPosition.Bottom) classes.push('shadow-bottom')\n if (borders & BorderPosition.Left) classes.push('shadow-left')\n\n return classes\n}\n\n// get a entity from it's id\nexport const getEntityDataById = <T extends 'folder' | 'task' | 'product' | 'version'>(\n id: string,\n entitiesMap: EntitiesMap,\n) => entitiesMap.get(parseRowId(id)) as EMapResult<T> | undefined\n"],"names":["BorderPosition"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBY,IAAA,mCAAAA,oBAAL;AACLA,kBAAAA,gBAAA,UAAO,CAAP,IAAA;AACAA,kBAAAA,gBAAA,SAAM,CAAN,IAAA;AACAA,kBAAAA,gBAAA,WAAQ,CAAR,IAAA;AACAA,kBAAAA,gBAAA,YAAS,CAAT,IAAA;AACAA,kBAAAA,gBAAA,UAAO,CAAP,IAAA;AACAA,kBAAAA,gBAAA,SAAM,EAAN,IAAA;AANUA,SAAAA;AAAA,GAAA,kBAAA,CAAA,CAAA;AAYL,MAAM,YAAY,CAAC,OAAc,UAAyB,QAAQ,KAAK,IAAI,KAAK;AAM1E,MAAA,cAAc,CAAC,WAAwC;AAC5D,QAAA,QAAQ,OAAO,MAAM,kBAAkB;AACzC,MAAA,CAAC,MAAc,QAAA;AACZ,SAAA,EAAE,OAAO,MAAM,CAAC,GAAG,OAAO,MAAM,CAAC,EAAE;AAC5C;AAEa,MAAA,eAAe,CAAC,KAAU,SAAsB;AAC3D,MAAI,CAAC,OAAO,CAAC,KAAa,QAAA;AAEpB,QAAA,QAAQ,KAAK,MAAM,GAAG;AAC5B,MAAI,UAAU;AAEd,aAAW,QAAQ,OAAO;AACxB,QAAI,WAAW,OAAO,YAAY,YAAY,QAAQ,SAAS;AAC7D,gBAAU,QAAQ,IAAI;AAAA,IAAA,OACjB;AACE,aAAA;AAAA,IAAA;AAAA,EACT;AAGK,SAAA;AACT;AAWO,MAAM,iBAAiB,CAC5B,UACA,UACA,kBACmB;;AACnB,MAAI,GAAC,mBAAc,QAAQ,MAAtB,mBAA0B,YAAW;AACjC,WAAA;AAAA,EAAA;AAGT,MAAI,UAAU;AAGV,MAAA,aAAa,KAAK,GAAC,mBAAc,WAAW,CAAC,MAA1B,mBAA8B,YAAW;AACnD,eAAA;AAAA,EAAA;AAIb,MAAI,GAAC,mBAAc,QAAQ,MAAtB,mBAA0B,WAAW,KAAI;AACjC,eAAA;AAAA,EAAA;AAIb,MAAI,GAAC,mBAAc,WAAW,CAAC,MAA1B,mBAA8B,YAAW;AACjC,eAAA;AAAA,EAAA;AAIT,MAAA,aAAa,KAAK,GAAC,mBAAc,QAAQ,MAAtB,mBAA0B,WAAW,KAAI;AACnD,eAAA;AAAA,EAAA;AAGN,SAAA;AACT;AAKa,MAAA,mBAAmB,CAAC,YAAsC;AACrE,QAAM,UAAoB,CAAC;AAE3B,MAAI,UAAU,EAA4B,SAAA,KAAK,YAAY;AAC3D,MAAI,UAAU,EAA8B,SAAA,KAAK,cAAc;AAC/D,MAAI,UAAU,EAA+B,SAAA,KAAK,eAAe;AACjE,MAAI,UAAU,EAA6B,SAAA,KAAK,aAAa;AAEtD,SAAA;AACT;AAGa,MAAA,oBAAoB,CAC/B,IACA,gBACG,YAAY,IAAI,WAAW,EAAE,CAAC;"}
1
+ {"version":3,"file":"cellUtils.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/cellUtils.ts"],"sourcesContent":["/**\n * Shared cell utilities for table operations\n */\n\nimport { parseRowId } from '../context'\nimport { EMapResult, EntitiesMap } from '../types'\n\n// Type definitions for cell identifiers\nexport type CellId = string\nexport type RowId = string\nexport type ColId = string\n\n// Cell position in the grid\nexport interface CellPosition {\n rowId: RowId\n colId: ColId\n}\n\n// Cell border position flags - used for determining which borders to show\nexport enum BorderPosition {\n None = 0,\n Top = 1 << 0,\n Right = 1 << 1,\n Bottom = 1 << 2,\n Left = 1 << 3,\n All = Top | Right | Bottom | Left,\n}\n\n/**\n * Create a standardized cell ID from row and column IDs\n */\nexport const getCellId = (rowId: RowId, colId: ColId): CellId => `cell-${rowId}-${colId}`\n\n/**\n * Parse a cell ID to extract row and column IDs\n * @returns CellPosition or null if invalid format\n */\nexport const parseCellId = (cellId: CellId): CellPosition | null => {\n const match = cellId.match(/^cell-(.+)-(.+)$/)\n if (!match) return null\n return { rowId: match[1], colId: match[2] }\n}\n\nexport const getCellValue = (obj: any, path: string): any => {\n if (!obj || !path) return undefined\n\n const parts = path.split('_')\n let current = obj\n\n for (const part of parts) {\n if (current && typeof current === 'object' && part in current) {\n current = current[part]\n } else {\n return undefined // Return undefined if any part of the path is invalid\n }\n }\n\n return current\n}\n\n/**\n * Determines which borders to display for a selected cell\n * based on its position within the selection grid\n *\n * @param rowIndex Current cell's row index\n * @param colIndex Current cell's column index\n * @param selectedCells 2D array representing selection state (true = selected)\n * @returns BorderPosition flags indicating which borders to display\n */\nexport const getCellBorders = (\n rowIndex: number,\n colIndex: number,\n selectedCells: boolean[][],\n): BorderPosition => {\n if (!selectedCells[rowIndex]?.[colIndex]) {\n return BorderPosition.None\n }\n\n let borders = BorderPosition.None\n\n // Check top border\n if (rowIndex === 0 || !selectedCells[rowIndex - 1]?.[colIndex]) {\n borders |= BorderPosition.Top\n }\n\n // Check right border\n if (!selectedCells[rowIndex]?.[colIndex + 1]) {\n borders |= BorderPosition.Right\n }\n\n // Check bottom border\n if (!selectedCells[rowIndex + 1]?.[colIndex]) {\n borders |= BorderPosition.Bottom\n }\n\n // Check left border\n if (colIndex === 0 || !selectedCells[rowIndex]?.[colIndex - 1]) {\n borders |= BorderPosition.Left\n }\n\n return borders\n}\n\n/**\n * Converts border position flags to CSS classes for shadow styling\n */\nexport const getBorderClasses = (borders: BorderPosition): string[] => {\n const classes: string[] = []\n\n if (borders & BorderPosition.Top) classes.push('shadow-top')\n if (borders & BorderPosition.Right) classes.push('shadow-right')\n if (borders & BorderPosition.Bottom) classes.push('shadow-bottom')\n if (borders & BorderPosition.Left) classes.push('shadow-left')\n\n return classes\n}\n\n// get a entity from it's id\nexport const getEntityDataById = <T extends 'folder' | 'task' | 'product' | 'version'>(\n id: string,\n entitiesMap: EntitiesMap,\n) => entitiesMap.get(parseRowId(id)) as EMapResult<T> | undefined\n"],"names":["BorderPosition"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBY,IAAA,mCAAAA,oBAAL;AACLA,kBAAAA,gBAAA,UAAO,CAAP,IAAA;AACAA,kBAAAA,gBAAA,SAAM,CAAN,IAAA;AACAA,kBAAAA,gBAAA,WAAQ,CAAR,IAAA;AACAA,kBAAAA,gBAAA,YAAS,CAAT,IAAA;AACAA,kBAAAA,gBAAA,UAAO,CAAP,IAAA;AACAA,kBAAAA,gBAAA,SAAM,EAAN,IAAA;AANUA,SAAAA;AAAA,GAAA,kBAAA,CAAA,CAAA;AAYL,MAAM,YAAY,CAAC,OAAc,UAAyB,QAAQ,KAAK,IAAI,KAAK;AAM1E,MAAA,cAAc,CAAC,WAAwC;AAC5D,QAAA,QAAQ,OAAO,MAAM,kBAAkB;AACzC,MAAA,CAAC,MAAc,QAAA;AACZ,SAAA,EAAE,OAAO,MAAM,CAAC,GAAG,OAAO,MAAM,CAAC,EAAE;AAC5C;AAEa,MAAA,eAAe,CAAC,KAAU,SAAsB;AAC3D,MAAI,CAAC,OAAO,CAAC,KAAa,QAAA;AAEpB,QAAA,QAAQ,KAAK,MAAM,GAAG;AAC5B,MAAI,UAAU;AAEd,aAAW,QAAQ,OAAO;AACxB,QAAI,WAAW,OAAO,YAAY,YAAY,QAAQ,SAAS;AAC7D,gBAAU,QAAQ,IAAI;AAAA,IAAA,OACjB;AACE,aAAA;AAAA,IAAA;AAAA,EACT;AAGK,SAAA;AACT;AAWO,MAAM,iBAAiB,CAC5B,UACA,UACA,kBACmB;;AACnB,MAAI,GAAC,mBAAc,QAAQ,MAAtB,mBAA0B,YAAW;AACjC,WAAA;AAAA,EAAA;AAGT,MAAI,UAAU;AAGV,MAAA,aAAa,KAAK,GAAC,mBAAc,WAAW,CAAC,MAA1B,mBAA8B,YAAW;AACnD,eAAA;AAAA,EAAA;AAIb,MAAI,GAAC,mBAAc,QAAQ,MAAtB,mBAA0B,WAAW,KAAI;AACjC,eAAA;AAAA,EAAA;AAIb,MAAI,GAAC,mBAAc,WAAW,CAAC,MAA1B,mBAA8B,YAAW;AACjC,eAAA;AAAA,EAAA;AAIT,MAAA,aAAa,KAAK,GAAC,mBAAc,QAAQ,MAAtB,mBAA0B,WAAW,KAAI;AACnD,eAAA;AAAA,EAAA;AAGN,SAAA;AACT;AAKa,MAAA,mBAAmB,CAAC,YAAsC;AACrE,QAAM,UAAoB,CAAC;AAE3B,MAAI,UAAU,EAA4B,SAAA,KAAK,YAAY;AAC3D,MAAI,UAAU,EAA8B,SAAA,KAAK,cAAc;AAC/D,MAAI,UAAU,EAA+B,SAAA,KAAK,eAAe;AACjE,MAAI,UAAU,EAA6B,SAAA,KAAK,aAAa;AAEtD,SAAA;AACT;AAGa,MAAA,oBAAoB,CAC/B,IACA,gBACG,YAAY,IAAI,WAAW,EAAE,CAAC;"}
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const queryFilterToClientFilter = (queryFilter, filterOptions) => {
4
+ if (!(queryFilter == null ? void 0 : queryFilter.conditions) || queryFilter.conditions.length === 0) {
5
+ return [];
6
+ }
7
+ const filters = [];
8
+ const processedConditions = /* @__PURE__ */ new Set();
9
+ queryFilter.conditions.forEach((condition) => {
10
+ if ("key" in condition) {
11
+ const filter = convertConditionToFilter(condition, filterOptions, processedConditions);
12
+ if (filter) {
13
+ filters.push(filter);
14
+ }
15
+ } else {
16
+ const nestedFilters = queryFilterToClientFilter(condition, filterOptions);
17
+ filters.push(...nestedFilters);
18
+ }
19
+ });
20
+ return filters;
21
+ };
22
+ const convertConditionToFilter = (condition, filterOptions, processedConditions) => {
23
+ const { key, value, operator } = condition;
24
+ const filterOption = findFilterOption(key, filterOptions);
25
+ if (!filterOption) {
26
+ return null;
27
+ }
28
+ const conditionKey = `${key}_${operator}_${JSON.stringify(value)}`;
29
+ if (processedConditions.has(conditionKey)) {
30
+ return null;
31
+ }
32
+ processedConditions.add(conditionKey);
33
+ const filterValues = convertConditionValueToFilterValues(value, operator, filterOption);
34
+ const inverted = isInvertedOperator(operator, filterOption.type);
35
+ const filterOperator = getFilterOperator(operator, filterOption.type);
36
+ const filter = {
37
+ id: filterOption.id,
38
+ type: filterOption.type,
39
+ label: filterOption.label,
40
+ inverted,
41
+ operator: filterOperator,
42
+ icon: filterOption.icon,
43
+ values: filterValues,
44
+ isCustom: filterOption.allowsCustomValues,
45
+ singleSelect: filterOption.singleSelect
46
+ };
47
+ return filter;
48
+ };
49
+ const findFilterOption = (key, filterOptions) => {
50
+ let option = filterOptions.find((opt) => opt.id === key);
51
+ if (option) return option;
52
+ option = filterOptions.find(
53
+ (opt) => opt.id.endsWith(key) || opt.id.replace(/^[^.]*\./, "") === key || opt.id.split("_").pop() === key
54
+ );
55
+ if (option) return option;
56
+ option = filterOptions.find((opt) => {
57
+ var _a;
58
+ return ((_a = opt.label) == null ? void 0 : _a.toLowerCase()) === key.toLowerCase();
59
+ });
60
+ return option;
61
+ };
62
+ const convertConditionValueToFilterValues = (value, operator, filterOption) => {
63
+ if (operator === "isnull" || operator === "notnull") {
64
+ return operator === "isnull" ? [{ id: "noValue", label: "No Value" }] : [{ id: "hasValue", label: "Has Value" }];
65
+ }
66
+ if (Array.isArray(value) && value.length === 0) {
67
+ if (operator === "eq") {
68
+ return [{ id: "noValue", label: "No Value" }];
69
+ } else if (operator === "ne") {
70
+ return [{ id: "hasValue", label: "Has Value" }];
71
+ }
72
+ }
73
+ if (value === void 0 || value === null) {
74
+ return [];
75
+ }
76
+ const values = Array.isArray(value) ? value : [value];
77
+ return values.map((val) => {
78
+ var _a;
79
+ const stringValue = String(val);
80
+ const existingValue = (_a = filterOption.values) == null ? void 0 : _a.find((v) => v.id === stringValue);
81
+ if (existingValue) {
82
+ return existingValue;
83
+ }
84
+ return {
85
+ id: stringValue,
86
+ label: stringValue,
87
+ isCustom: true
88
+ };
89
+ });
90
+ };
91
+ const isInvertedOperator = (operator, type) => {
92
+ const invertedOperators = ["ne", "notin", "excludes", "excludesall", "excludesany", "notnull"];
93
+ return operator ? invertedOperators.includes(operator) : false;
94
+ };
95
+ const getFilterOperator = (operator, type) => {
96
+ if (type == null ? void 0 : type.startsWith("list_of_")) {
97
+ if (operator === "includesall" || operator === "excludesall") {
98
+ return "AND";
99
+ }
100
+ return "OR";
101
+ }
102
+ return "OR";
103
+ };
104
+ exports.default = queryFilterToClientFilter;
105
+ exports.queryFilterToClientFilter = queryFilterToClientFilter;
106
+ //# sourceMappingURL=queryFilterToClientFilter.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queryFilterToClientFilter.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.ts"],"sourcesContent":["import { Filter, FilterValue } from '@ynput/ayon-react-components'\nimport { QueryFilter, QueryCondition } from '../types/operations'\n\n// Option interface for filter options (from useBuildFilterOptions)\ninterface Option {\n id: string\n type?: string\n label: string\n icon?: string | null\n img?: string | null\n inverted?: boolean\n operator?: 'AND' | 'OR'\n values?: FilterValue[]\n allowsCustomValues?: boolean\n allowHasValue?: boolean\n allowNoValue?: boolean\n allowExcludes?: boolean\n operatorChangeable?: boolean\n singleSelect?: boolean\n}\n\n/**\n * Converts a QueryFilter back to Filter[] objects that can be consumed by the SearchFilter component\n * This requires the filter options to properly reconstruct the Filter objects with all their metadata\n */\nexport const queryFilterToClientFilter = (\n queryFilter: QueryFilter | undefined,\n filterOptions: Option[],\n): Filter[] => {\n if (!queryFilter?.conditions || queryFilter.conditions.length === 0) {\n return []\n }\n\n const filters: Filter[] = []\n const processedConditions = new Set<string>()\n\n // Process each condition in the query filter\n queryFilter.conditions.forEach((condition) => {\n if ('key' in condition) {\n // This is a QueryCondition\n const filter = convertConditionToFilter(condition, filterOptions, processedConditions)\n if (filter) {\n filters.push(filter)\n }\n } else {\n // This is a nested QueryFilter - recursively process it\n const nestedFilters = queryFilterToClientFilter(condition, filterOptions)\n filters.push(...nestedFilters)\n }\n })\n\n return filters\n}\n\nconst convertConditionToFilter = (\n condition: QueryCondition,\n filterOptions: Option[],\n processedConditions: Set<string>,\n): Filter | null => {\n const { key, value, operator } = condition\n\n // Find the matching filter option\n const filterOption = findFilterOption(key, filterOptions)\n if (!filterOption) {\n return null\n }\n\n // Create a unique key for this condition to avoid duplicates\n const conditionKey = `${key}_${operator}_${JSON.stringify(value)}`\n if (processedConditions.has(conditionKey)) {\n return null\n }\n processedConditions.add(conditionKey)\n\n // Convert the condition values to FilterValue objects\n const filterValues = convertConditionValueToFilterValues(value, operator, filterOption)\n\n // Determine if the filter is inverted based on the operator\n const inverted = isInvertedOperator(operator, filterOption.type)\n\n // Determine the filter operator (AND/OR)\n const filterOperator = getFilterOperator(operator, filterOption.type)\n\n const filter: Filter = {\n id: filterOption.id,\n type: filterOption.type as Filter['type'],\n label: filterOption.label,\n inverted,\n operator: filterOperator,\n icon: filterOption.icon,\n values: filterValues,\n isCustom: filterOption.allowsCustomValues,\n singleSelect: filterOption.singleSelect,\n }\n\n return filter\n}\n\nconst findFilterOption = (key: string, filterOptions: Option[]): Option | undefined => {\n // Try exact match first\n let option = filterOptions.find((opt) => opt.id === key)\n if (option) return option\n\n // Try to find by the base key (without prefixes)\n option = filterOptions.find(\n (opt) =>\n opt.id.endsWith(key) ||\n opt.id.replace(/^[^.]*\\./, '') === key ||\n opt.id.split('_').pop() === key,\n )\n if (option) return option\n\n // Try to find by label match\n option = filterOptions.find((opt) => opt.label?.toLowerCase() === key.toLowerCase())\n\n return option\n}\n\nconst convertConditionValueToFilterValues = (\n value: QueryCondition['value'],\n operator: QueryCondition['operator'],\n filterOption: Option,\n): FilterValue[] => {\n // Handle special operators for null/empty checks\n if (operator === 'isnull' || operator === 'notnull') {\n return operator === 'isnull'\n ? [{ id: 'noValue', label: 'No Value' }]\n : [{ id: 'hasValue', label: 'Has Value' }]\n }\n\n // Handle empty array cases - these represent \"No Value\" and \"Has Value\" conditions\n if (Array.isArray(value) && value.length === 0) {\n if (operator === 'eq') {\n // Empty array with 'eq' operator means \"No Value\"\n return [{ id: 'noValue', label: 'No Value' }]\n } else if (operator === 'ne') {\n // Empty array with 'ne' operator means \"Has Value\"\n return [{ id: 'hasValue', label: 'Has Value' }]\n }\n }\n\n if (value === undefined || value === null) {\n return []\n }\n\n // Convert value(s) to FilterValue objects\n const values = Array.isArray(value) ? value : [value]\n\n return values.map((val) => {\n const stringValue = String(val)\n\n // Try to find existing option value with metadata\n const existingValue = filterOption.values?.find((v: FilterValue) => v.id === stringValue)\n if (existingValue) {\n return existingValue\n }\n\n // Create a basic FilterValue if no existing option found\n return {\n id: stringValue,\n label: stringValue,\n isCustom: true,\n }\n })\n}\n\nconst isInvertedOperator = (operator: QueryCondition['operator'], type?: string): boolean => {\n const invertedOperators = ['ne', 'notin', 'excludes', 'excludesall', 'excludesany', 'notnull']\n return operator ? invertedOperators.includes(operator) : false\n}\n\nconst getFilterOperator = (operator: QueryCondition['operator'], type?: string): 'AND' | 'OR' => {\n // For list types, determine AND/OR based on the operator\n if (type?.startsWith('list_of_')) {\n if (operator === 'includesall' || operator === 'excludesall') {\n return 'AND'\n }\n return 'OR'\n }\n\n // Default to OR for most cases\n return 'OR'\n}\n\nexport default queryFilterToClientFilter\n"],"names":[],"mappings":";;AAyBa,MAAA,4BAA4B,CACvC,aACA,kBACa;AACb,MAAI,EAAC,2CAAa,eAAc,YAAY,WAAW,WAAW,GAAG;AACnE,WAAO,CAAC;AAAA,EAAA;AAGV,QAAM,UAAoB,CAAC;AACrB,QAAA,0CAA0B,IAAY;AAGhC,cAAA,WAAW,QAAQ,CAAC,cAAc;AAC5C,QAAI,SAAS,WAAW;AAEtB,YAAM,SAAS,yBAAyB,WAAW,eAAe,mBAAmB;AACrF,UAAI,QAAQ;AACV,gBAAQ,KAAK,MAAM;AAAA,MAAA;AAAA,IACrB,OACK;AAEC,YAAA,gBAAgB,0BAA0B,WAAW,aAAa;AAChE,cAAA,KAAK,GAAG,aAAa;AAAA,IAAA;AAAA,EAC/B,CACD;AAEM,SAAA;AACT;AAEA,MAAM,2BAA2B,CAC/B,WACA,eACA,wBACkB;AAClB,QAAM,EAAE,KAAK,OAAO,SAAa,IAAA;AAG3B,QAAA,eAAe,iBAAiB,KAAK,aAAa;AACxD,MAAI,CAAC,cAAc;AACV,WAAA;AAAA,EAAA;AAIH,QAAA,eAAe,GAAG,GAAG,IAAI,QAAQ,IAAI,KAAK,UAAU,KAAK,CAAC;AAC5D,MAAA,oBAAoB,IAAI,YAAY,GAAG;AAClC,WAAA;AAAA,EAAA;AAET,sBAAoB,IAAI,YAAY;AAGpC,QAAM,eAAe,oCAAoC,OAAO,UAAU,YAAY;AAGtF,QAAM,WAAW,mBAAmB,UAAU,aAAa,IAAI;AAG/D,QAAM,iBAAiB,kBAAkB,UAAU,aAAa,IAAI;AAEpE,QAAM,SAAiB;AAAA,IACrB,IAAI,aAAa;AAAA,IACjB,MAAM,aAAa;AAAA,IACnB,OAAO,aAAa;AAAA,IACpB;AAAA,IACA,UAAU;AAAA,IACV,MAAM,aAAa;AAAA,IACnB,QAAQ;AAAA,IACR,UAAU,aAAa;AAAA,IACvB,cAAc,aAAa;AAAA,EAC7B;AAEO,SAAA;AACT;AAEA,MAAM,mBAAmB,CAAC,KAAa,kBAAgD;AAErF,MAAI,SAAS,cAAc,KAAK,CAAC,QAAQ,IAAI,OAAO,GAAG;AACvD,MAAI,OAAe,QAAA;AAGnB,WAAS,cAAc;AAAA,IACrB,CAAC,QACC,IAAI,GAAG,SAAS,GAAG,KACnB,IAAI,GAAG,QAAQ,YAAY,EAAE,MAAM,OACnC,IAAI,GAAG,MAAM,GAAG,EAAE,UAAU;AAAA,EAChC;AACA,MAAI,OAAe,QAAA;AAGV,WAAA,cAAc,KAAK,CAAC,QAAQ;;AAAA,sBAAI,UAAJ,mBAAW,mBAAkB,IAAI;GAAa;AAE5E,SAAA;AACT;AAEA,MAAM,sCAAsC,CAC1C,OACA,UACA,iBACkB;AAEd,MAAA,aAAa,YAAY,aAAa,WAAW;AACnD,WAAO,aAAa,WAChB,CAAC,EAAE,IAAI,WAAW,OAAO,WAAA,CAAY,IACrC,CAAC,EAAE,IAAI,YAAY,OAAO,aAAa;AAAA,EAAA;AAI7C,MAAI,MAAM,QAAQ,KAAK,KAAK,MAAM,WAAW,GAAG;AAC9C,QAAI,aAAa,MAAM;AAErB,aAAO,CAAC,EAAE,IAAI,WAAW,OAAO,YAAY;AAAA,IAAA,WACnC,aAAa,MAAM;AAE5B,aAAO,CAAC,EAAE,IAAI,YAAY,OAAO,aAAa;AAAA,IAAA;AAAA,EAChD;AAGE,MAAA,UAAU,UAAa,UAAU,MAAM;AACzC,WAAO,CAAC;AAAA,EAAA;AAIV,QAAM,SAAS,MAAM,QAAQ,KAAK,IAAI,QAAQ,CAAC,KAAK;AAE7C,SAAA,OAAO,IAAI,CAAC,QAAQ;;AACnB,UAAA,cAAc,OAAO,GAAG;AAGxB,UAAA,iBAAgB,kBAAa,WAAb,mBAAqB,KAAK,CAAC,MAAmB,EAAE,OAAO;AAC7E,QAAI,eAAe;AACV,aAAA;AAAA,IAAA;AAIF,WAAA;AAAA,MACL,IAAI;AAAA,MACJ,OAAO;AAAA,MACP,UAAU;AAAA,IACZ;AAAA,EAAA,CACD;AACH;AAEA,MAAM,qBAAqB,CAAC,UAAsC,SAA2B;AAC3F,QAAM,oBAAoB,CAAC,MAAM,SAAS,YAAY,eAAe,eAAe,SAAS;AAC7F,SAAO,WAAW,kBAAkB,SAAS,QAAQ,IAAI;AAC3D;AAEA,MAAM,oBAAoB,CAAC,UAAsC,SAAgC;AAE3F,MAAA,6BAAM,WAAW,aAAa;AAC5B,QAAA,aAAa,iBAAiB,aAAa,eAAe;AACrD,aAAA;AAAA,IAAA;AAEF,WAAA;AAAA,EAAA;AAIF,SAAA;AACT;;;"}
@@ -0,0 +1,106 @@
1
+ const queryFilterToClientFilter = (queryFilter, filterOptions) => {
2
+ if (!(queryFilter == null ? void 0 : queryFilter.conditions) || queryFilter.conditions.length === 0) {
3
+ return [];
4
+ }
5
+ const filters = [];
6
+ const processedConditions = /* @__PURE__ */ new Set();
7
+ queryFilter.conditions.forEach((condition) => {
8
+ if ("key" in condition) {
9
+ const filter = convertConditionToFilter(condition, filterOptions, processedConditions);
10
+ if (filter) {
11
+ filters.push(filter);
12
+ }
13
+ } else {
14
+ const nestedFilters = queryFilterToClientFilter(condition, filterOptions);
15
+ filters.push(...nestedFilters);
16
+ }
17
+ });
18
+ return filters;
19
+ };
20
+ const convertConditionToFilter = (condition, filterOptions, processedConditions) => {
21
+ const { key, value, operator } = condition;
22
+ const filterOption = findFilterOption(key, filterOptions);
23
+ if (!filterOption) {
24
+ return null;
25
+ }
26
+ const conditionKey = `${key}_${operator}_${JSON.stringify(value)}`;
27
+ if (processedConditions.has(conditionKey)) {
28
+ return null;
29
+ }
30
+ processedConditions.add(conditionKey);
31
+ const filterValues = convertConditionValueToFilterValues(value, operator, filterOption);
32
+ const inverted = isInvertedOperator(operator, filterOption.type);
33
+ const filterOperator = getFilterOperator(operator, filterOption.type);
34
+ const filter = {
35
+ id: filterOption.id,
36
+ type: filterOption.type,
37
+ label: filterOption.label,
38
+ inverted,
39
+ operator: filterOperator,
40
+ icon: filterOption.icon,
41
+ values: filterValues,
42
+ isCustom: filterOption.allowsCustomValues,
43
+ singleSelect: filterOption.singleSelect
44
+ };
45
+ return filter;
46
+ };
47
+ const findFilterOption = (key, filterOptions) => {
48
+ let option = filterOptions.find((opt) => opt.id === key);
49
+ if (option) return option;
50
+ option = filterOptions.find(
51
+ (opt) => opt.id.endsWith(key) || opt.id.replace(/^[^.]*\./, "") === key || opt.id.split("_").pop() === key
52
+ );
53
+ if (option) return option;
54
+ option = filterOptions.find((opt) => {
55
+ var _a;
56
+ return ((_a = opt.label) == null ? void 0 : _a.toLowerCase()) === key.toLowerCase();
57
+ });
58
+ return option;
59
+ };
60
+ const convertConditionValueToFilterValues = (value, operator, filterOption) => {
61
+ if (operator === "isnull" || operator === "notnull") {
62
+ return operator === "isnull" ? [{ id: "noValue", label: "No Value" }] : [{ id: "hasValue", label: "Has Value" }];
63
+ }
64
+ if (Array.isArray(value) && value.length === 0) {
65
+ if (operator === "eq") {
66
+ return [{ id: "noValue", label: "No Value" }];
67
+ } else if (operator === "ne") {
68
+ return [{ id: "hasValue", label: "Has Value" }];
69
+ }
70
+ }
71
+ if (value === void 0 || value === null) {
72
+ return [];
73
+ }
74
+ const values = Array.isArray(value) ? value : [value];
75
+ return values.map((val) => {
76
+ var _a;
77
+ const stringValue = String(val);
78
+ const existingValue = (_a = filterOption.values) == null ? void 0 : _a.find((v) => v.id === stringValue);
79
+ if (existingValue) {
80
+ return existingValue;
81
+ }
82
+ return {
83
+ id: stringValue,
84
+ label: stringValue,
85
+ isCustom: true
86
+ };
87
+ });
88
+ };
89
+ const isInvertedOperator = (operator, type) => {
90
+ const invertedOperators = ["ne", "notin", "excludes", "excludesall", "excludesany", "notnull"];
91
+ return operator ? invertedOperators.includes(operator) : false;
92
+ };
93
+ const getFilterOperator = (operator, type) => {
94
+ if (type == null ? void 0 : type.startsWith("list_of_")) {
95
+ if (operator === "includesall" || operator === "excludesall") {
96
+ return "AND";
97
+ }
98
+ return "OR";
99
+ }
100
+ return "OR";
101
+ };
102
+ export {
103
+ queryFilterToClientFilter as default,
104
+ queryFilterToClientFilter
105
+ };
106
+ //# sourceMappingURL=queryFilterToClientFilter.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queryFilterToClientFilter.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.ts"],"sourcesContent":["import { Filter, FilterValue } from '@ynput/ayon-react-components'\nimport { QueryFilter, QueryCondition } from '../types/operations'\n\n// Option interface for filter options (from useBuildFilterOptions)\ninterface Option {\n id: string\n type?: string\n label: string\n icon?: string | null\n img?: string | null\n inverted?: boolean\n operator?: 'AND' | 'OR'\n values?: FilterValue[]\n allowsCustomValues?: boolean\n allowHasValue?: boolean\n allowNoValue?: boolean\n allowExcludes?: boolean\n operatorChangeable?: boolean\n singleSelect?: boolean\n}\n\n/**\n * Converts a QueryFilter back to Filter[] objects that can be consumed by the SearchFilter component\n * This requires the filter options to properly reconstruct the Filter objects with all their metadata\n */\nexport const queryFilterToClientFilter = (\n queryFilter: QueryFilter | undefined,\n filterOptions: Option[],\n): Filter[] => {\n if (!queryFilter?.conditions || queryFilter.conditions.length === 0) {\n return []\n }\n\n const filters: Filter[] = []\n const processedConditions = new Set<string>()\n\n // Process each condition in the query filter\n queryFilter.conditions.forEach((condition) => {\n if ('key' in condition) {\n // This is a QueryCondition\n const filter = convertConditionToFilter(condition, filterOptions, processedConditions)\n if (filter) {\n filters.push(filter)\n }\n } else {\n // This is a nested QueryFilter - recursively process it\n const nestedFilters = queryFilterToClientFilter(condition, filterOptions)\n filters.push(...nestedFilters)\n }\n })\n\n return filters\n}\n\nconst convertConditionToFilter = (\n condition: QueryCondition,\n filterOptions: Option[],\n processedConditions: Set<string>,\n): Filter | null => {\n const { key, value, operator } = condition\n\n // Find the matching filter option\n const filterOption = findFilterOption(key, filterOptions)\n if (!filterOption) {\n return null\n }\n\n // Create a unique key for this condition to avoid duplicates\n const conditionKey = `${key}_${operator}_${JSON.stringify(value)}`\n if (processedConditions.has(conditionKey)) {\n return null\n }\n processedConditions.add(conditionKey)\n\n // Convert the condition values to FilterValue objects\n const filterValues = convertConditionValueToFilterValues(value, operator, filterOption)\n\n // Determine if the filter is inverted based on the operator\n const inverted = isInvertedOperator(operator, filterOption.type)\n\n // Determine the filter operator (AND/OR)\n const filterOperator = getFilterOperator(operator, filterOption.type)\n\n const filter: Filter = {\n id: filterOption.id,\n type: filterOption.type as Filter['type'],\n label: filterOption.label,\n inverted,\n operator: filterOperator,\n icon: filterOption.icon,\n values: filterValues,\n isCustom: filterOption.allowsCustomValues,\n singleSelect: filterOption.singleSelect,\n }\n\n return filter\n}\n\nconst findFilterOption = (key: string, filterOptions: Option[]): Option | undefined => {\n // Try exact match first\n let option = filterOptions.find((opt) => opt.id === key)\n if (option) return option\n\n // Try to find by the base key (without prefixes)\n option = filterOptions.find(\n (opt) =>\n opt.id.endsWith(key) ||\n opt.id.replace(/^[^.]*\\./, '') === key ||\n opt.id.split('_').pop() === key,\n )\n if (option) return option\n\n // Try to find by label match\n option = filterOptions.find((opt) => opt.label?.toLowerCase() === key.toLowerCase())\n\n return option\n}\n\nconst convertConditionValueToFilterValues = (\n value: QueryCondition['value'],\n operator: QueryCondition['operator'],\n filterOption: Option,\n): FilterValue[] => {\n // Handle special operators for null/empty checks\n if (operator === 'isnull' || operator === 'notnull') {\n return operator === 'isnull'\n ? [{ id: 'noValue', label: 'No Value' }]\n : [{ id: 'hasValue', label: 'Has Value' }]\n }\n\n // Handle empty array cases - these represent \"No Value\" and \"Has Value\" conditions\n if (Array.isArray(value) && value.length === 0) {\n if (operator === 'eq') {\n // Empty array with 'eq' operator means \"No Value\"\n return [{ id: 'noValue', label: 'No Value' }]\n } else if (operator === 'ne') {\n // Empty array with 'ne' operator means \"Has Value\"\n return [{ id: 'hasValue', label: 'Has Value' }]\n }\n }\n\n if (value === undefined || value === null) {\n return []\n }\n\n // Convert value(s) to FilterValue objects\n const values = Array.isArray(value) ? value : [value]\n\n return values.map((val) => {\n const stringValue = String(val)\n\n // Try to find existing option value with metadata\n const existingValue = filterOption.values?.find((v: FilterValue) => v.id === stringValue)\n if (existingValue) {\n return existingValue\n }\n\n // Create a basic FilterValue if no existing option found\n return {\n id: stringValue,\n label: stringValue,\n isCustom: true,\n }\n })\n}\n\nconst isInvertedOperator = (operator: QueryCondition['operator'], type?: string): boolean => {\n const invertedOperators = ['ne', 'notin', 'excludes', 'excludesall', 'excludesany', 'notnull']\n return operator ? invertedOperators.includes(operator) : false\n}\n\nconst getFilterOperator = (operator: QueryCondition['operator'], type?: string): 'AND' | 'OR' => {\n // For list types, determine AND/OR based on the operator\n if (type?.startsWith('list_of_')) {\n if (operator === 'includesall' || operator === 'excludesall') {\n return 'AND'\n }\n return 'OR'\n }\n\n // Default to OR for most cases\n return 'OR'\n}\n\nexport default queryFilterToClientFilter\n"],"names":[],"mappings":"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"}
@@ -64,6 +64,7 @@ require("../../api/queries/addons/updateAddons.cjs.js");
64
64
  require("../../api/queries/attributes/getAttributes.cjs.js");
65
65
  require("../../api/queries/attributes/updateAttributes.cjs.js");
66
66
  require("../../api/queries/authentication/getAuthentication.cjs.js");
67
+ require("../../api/queries/cloud/cloud.cjs.js");
67
68
  require("../../api/queries/entities/getEntity.cjs.js");
68
69
  require("../../api/queries/entities/getEntityPanel.cjs.js");
69
70
  require("../../api/queries/entities/updateEntity.cjs.js");
@@ -72,24 +73,24 @@ require("../../api/queries/entityLists/updateLists.cjs.js");
72
73
  require("../../api/queries/entityLists/getListsAttributes.cjs.js");
73
74
  require("../../api/queries/entityLists/updateListsAttributes.cjs.js");
74
75
  require("../../api/queries/folders/getFolders.cjs.js");
76
+ require("../../api/queries/grouping/getGrouping.cjs.js");
75
77
  require("../../api/queries/overview/getOverview.cjs.js");
76
78
  require("../../api/queries/overview/updateOverview.cjs.js");
79
+ require("../../api/queries/permissions/getPermissions.cjs.js");
80
+ require("../../api/queries/products/createProduct.cjs.js");
77
81
  require("../../api/queries/project/getProject.cjs.js");
78
82
  require("../../api/queries/project/updateProject.cjs.js");
79
83
  require("../../api/queries/review/getReview.cjs.js");
80
84
  require("../../api/queries/review/updateReview.cjs.js");
85
+ require("../../api/queries/share/share.cjs.js");
81
86
  require("../../api/queries/system/getSystem.cjs.js");
82
87
  require("../../api/queries/userDashboard/getUserDashboard.cjs.js");
83
88
  require("../../api/queries/users/getUsers.cjs.js");
84
89
  require("../../api/queries/users/updateUsers.cjs.js");
85
- require("../../api/queries/watchers/getWatchers.cjs.js");
86
- require("../../api/queries/permissions/getPermissions.cjs.js");
87
- require("../../api/queries/grouping/getGrouping.cjs.js");
88
90
  require("../../api/queries/versions/updateVersions.cjs.js");
89
- require("../../api/queries/products/createProduct.cjs.js");
90
- require("../../api/queries/cloud/cloud.cjs.js");
91
91
  require("../../api/queries/views/getViews.cjs.js");
92
92
  require("../../api/queries/views/updateViews.cjs.js");
93
+ require("../../api/queries/watchers/getWatchers.cjs.js");
93
94
  require("@dnd-kit/core");
94
95
  require("@dnd-kit/sortable");
95
96
  require("../../components/ReviewablesList/ReviewablesList.styled.cjs.js");
@@ -177,6 +178,10 @@ require("../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js
177
178
  require("../Actions/Actions.styled.cjs.js");
178
179
  require("../Actions/ActionsDropdown/ActionsDropdown.cjs.js");
179
180
  require("../Actions/ActionIcon.cjs.js");
181
+ require("../Views/context/ViewsContext.cjs.js");
182
+ require("../Views/Views.styled.cjs.js");
183
+ require("../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");
184
+ require("../Views/ViewsMenu/ViewsMenu.cjs.js");
180
185
  require("../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");
181
186
  require("../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");
182
187
  require("../../components/EntityPath/EntityPath.styled.cjs.js");
@@ -198,9 +203,6 @@ require("../../components/VersionUploader/components/UploadVersionDialog.cjs.js"
198
203
  require("../../components/VersionUploader/context/VersionUploadContext.cjs.js");
199
204
  require("../../components/Feedback/FeedbackContext.cjs.js");
200
205
  require("../../components/Feedback/SupportBubble.cjs.js");
201
- require("../../components/Views/context/ViewsContext.cjs.js");
202
- require("../../components/Views/Views.styled.cjs.js");
203
- require("../../components/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");
204
206
  const columns = [
205
207
  {
206
208
  field: "name",
@@ -1 +1 @@
1
- {"version":3,"file":"RepresentationsList.cjs.js","sources":["../../../../../src/containers/RepresentationsList/RepresentationsList.tsx"],"sourcesContent":["import { useMemo, useState } from 'react'\nimport { TablePanel } from '@ynput/ayon-react-components'\n\nimport { TreeTable } from 'primereact/treetable'\nimport { Column } from 'primereact/column'\n\nimport { groupResult } from '@shared/util'\nimport { useCreateContextMenu } from '@shared/containers/ContextMenu'\nimport { DetailsDialog } from '@shared/components'\nimport versionsToRepresentations from './versionsToRepresentations'\nimport { DetailsPanelEntityData } from '@shared/api'\n\nconst columns = [\n {\n field: 'name',\n header: 'Name',\n width: 90,\n expander: true,\n },\n {\n field: 'folderName',\n header: 'Folder',\n width: 130,\n },\n {\n field: 'productName',\n header: 'Product',\n width: 130,\n },\n {\n field: 'Product type',\n header: 'productType',\n width: 110,\n },\n]\n\ntype Props = {\n entities: DetailsPanelEntityData[]\n}\n\nexport const RepresentationsList = ({ entities = [] }: Props) => {\n // merge all entities data into one array of entities\n const representations = useMemo(() => versionsToRepresentations(entities) || [], [entities])\n\n const [showDetail, setShowDetail] = useState<false | string>(false)\n const showDetailProjectName = representations.find((rep) => rep.id === showDetail)?.projectName\n\n const [selected, setSelected] = useState<string[]>([])\n\n const data = useMemo(() => {\n // @ts-expect-error - groupResult is not typed\n return groupResult(representations, 'name')\n }, [representations])\n\n const onRepSelectionChange = (entityId: string) => {\n // set focused state\n setSelected([entityId])\n }\n\n const onRowClick = (e: any) => {\n onRepSelectionChange(e.node.data.id)\n }\n\n const ctxMenuItems = (id: string) => [\n {\n label: 'Representation detail',\n command: () => setShowDetail(id),\n icon: 'database',\n },\n ]\n\n const [ctxMenuShow] = useCreateContextMenu([])\n\n const handleContextMenu = (e: any) => {\n const id = e.node.data.id\n\n if (id) {\n // update focused representations\n onRepSelectionChange(id)\n // open context menu\n ctxMenuShow(e.originalEvent, ctxMenuItems(id))\n }\n }\n\n return (\n <>\n <TablePanel>\n <TreeTable\n scrollable\n scrollHeight=\"100%\"\n value={data}\n emptyMessage=\"No representation found\"\n selectionMode=\"single\"\n selectionKeys={selected[0]}\n onRowClick={onRowClick}\n onContextMenu={handleContextMenu}\n >\n {columns.map((col) => {\n return (\n <Column\n key={col.field}\n field={col.field}\n header={col.header}\n expander={col.expander}\n style={{ width: col.width }}\n />\n )\n })}\n </TreeTable>\n </TablePanel>\n\n {showDetail && (\n <DetailsDialog\n projectName={showDetailProjectName}\n entityType={'representation'}\n entityIds={[showDetail]}\n visible={!!showDetail}\n onHide={() => setShowDetail(false)}\n />\n )}\n </>\n )\n}\n"],"names":["useMemo","useState","groupResult","useCreateContextMenu","jsxs","Fragment","jsx","TablePanel","TreeTable","Column","DetailsDialog"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,MAAM,UAAU;AAAA,EACd;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,UAAU;AAAA,EACZ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EAAA;AAEX;AAMO,MAAM,sBAAsB,CAAC,EAAE,WAAW,CAAA,QAAgB;;AAEzD,QAAA,kBAAkBA,MAAQ,QAAA,MAAM,0BAA0B,QAAQ,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;AAE3F,QAAM,CAAC,YAAY,aAAa,IAAIC,MAAAA,SAAyB,KAAK;AAC5D,QAAA,yBAAwB,qBAAgB,KAAK,CAAC,QAAQ,IAAI,OAAO,UAAU,MAAnD,mBAAsD;AAEpF,QAAM,CAAC,UAAU,WAAW,IAAIA,MAAAA,SAAmB,CAAA,CAAE;AAE/C,QAAA,OAAOD,MAAAA,QAAQ,MAAM;AAElB,WAAAE,YAAA,YAAY,iBAAiB,MAAM;AAAA,EAAA,GACzC,CAAC,eAAe,CAAC;AAEd,QAAA,uBAAuB,CAAC,aAAqB;AAErC,gBAAA,CAAC,QAAQ,CAAC;AAAA,EACxB;AAEM,QAAA,aAAa,CAAC,MAAW;AACR,yBAAA,EAAE,KAAK,KAAK,EAAE;AAAA,EACrC;AAEM,QAAA,eAAe,CAAC,OAAe;AAAA,IACnC;AAAA,MACE,OAAO;AAAA,MACP,SAAS,MAAM,cAAc,EAAE;AAAA,MAC/B,MAAM;AAAA,IAAA;AAAA,EAEV;AAEA,QAAM,CAAC,WAAW,IAAIC,qBAAA,qBAAqB,EAAE;AAEvC,QAAA,oBAAoB,CAAC,MAAW;AAC9B,UAAA,KAAK,EAAE,KAAK,KAAK;AAEvB,QAAI,IAAI;AAEN,2BAAqB,EAAE;AAEvB,kBAAY,EAAE,eAAe,aAAa,EAAE,CAAC;AAAA,IAAA;AAAA,EAEjD;AAEA,SAEIC,2BAAA,kBAAA,KAAAC,uCAAA,EAAA,UAAA;AAAA,IAAAC,iDAACC,oBAAAA,YACC,EAAA,UAAAD,2BAAA,kBAAA;AAAA,MAACE,cAAA;AAAA,MAAA;AAAA,QACC,YAAU;AAAA,QACV,cAAa;AAAA,QACb,OAAO;AAAA,QACP,cAAa;AAAA,QACb,eAAc;AAAA,QACd,eAAe,SAAS,CAAC;AAAA,QACzB;AAAA,QACA,eAAe;AAAA,QAEd,UAAA,QAAQ,IAAI,CAAC,QAAQ;AAElB,iBAAAF,2BAAA,kBAAA;AAAA,YAACG,WAAA;AAAA,YAAA;AAAA,cAEC,OAAO,IAAI;AAAA,cACX,QAAQ,IAAI;AAAA,cACZ,UAAU,IAAI;AAAA,cACd,OAAO,EAAE,OAAO,IAAI,MAAM;AAAA,YAAA;AAAA,YAJrB,IAAI;AAAA,UAKX;AAAA,QAEH,CAAA;AAAA,MAAA;AAAA,IAAA,GAEL;AAAA,IAEC,cACCH,2BAAA,kBAAA;AAAA,MAACI,cAAA;AAAA,MAAA;AAAA,QACC,aAAa;AAAA,QACb,YAAY;AAAA,QACZ,WAAW,CAAC,UAAU;AAAA,QACtB,SAAS,CAAC,CAAC;AAAA,QACX,QAAQ,MAAM,cAAc,KAAK;AAAA,MAAA;AAAA,IAAA;AAAA,EACnC,GAEJ;AAEJ;;"}
1
+ {"version":3,"file":"RepresentationsList.cjs.js","sources":["../../../../../src/containers/RepresentationsList/RepresentationsList.tsx"],"sourcesContent":["import { useMemo, useState } from 'react'\nimport { TablePanel } from '@ynput/ayon-react-components'\n\nimport { TreeTable } from 'primereact/treetable'\nimport { Column } from 'primereact/column'\n\nimport { groupResult } from '@shared/util'\nimport { useCreateContextMenu } from '@shared/containers/ContextMenu'\nimport { DetailsDialog } from '@shared/components'\nimport versionsToRepresentations from './versionsToRepresentations'\nimport { DetailsPanelEntityData } from '@shared/api'\n\nconst columns = [\n {\n field: 'name',\n header: 'Name',\n width: 90,\n expander: true,\n },\n {\n field: 'folderName',\n header: 'Folder',\n width: 130,\n },\n {\n field: 'productName',\n header: 'Product',\n width: 130,\n },\n {\n field: 'Product type',\n header: 'productType',\n width: 110,\n },\n]\n\ntype Props = {\n entities: DetailsPanelEntityData[]\n}\n\nexport const RepresentationsList = ({ entities = [] }: Props) => {\n // merge all entities data into one array of entities\n const representations = useMemo(() => versionsToRepresentations(entities) || [], [entities])\n\n const [showDetail, setShowDetail] = useState<false | string>(false)\n const showDetailProjectName = representations.find((rep) => rep.id === showDetail)?.projectName\n\n const [selected, setSelected] = useState<string[]>([])\n\n const data = useMemo(() => {\n // @ts-expect-error - groupResult is not typed\n return groupResult(representations, 'name')\n }, [representations])\n\n const onRepSelectionChange = (entityId: string) => {\n // set focused state\n setSelected([entityId])\n }\n\n const onRowClick = (e: any) => {\n onRepSelectionChange(e.node.data.id)\n }\n\n const ctxMenuItems = (id: string) => [\n {\n label: 'Representation detail',\n command: () => setShowDetail(id),\n icon: 'database',\n },\n ]\n\n const [ctxMenuShow] = useCreateContextMenu([])\n\n const handleContextMenu = (e: any) => {\n const id = e.node.data.id\n\n if (id) {\n // update focused representations\n onRepSelectionChange(id)\n // open context menu\n ctxMenuShow(e.originalEvent, ctxMenuItems(id))\n }\n }\n\n return (\n <>\n <TablePanel>\n <TreeTable\n scrollable\n scrollHeight=\"100%\"\n value={data}\n emptyMessage=\"No representation found\"\n selectionMode=\"single\"\n selectionKeys={selected[0]}\n onRowClick={onRowClick}\n onContextMenu={handleContextMenu}\n >\n {columns.map((col) => {\n return (\n <Column\n key={col.field}\n field={col.field}\n header={col.header}\n expander={col.expander}\n style={{ width: col.width }}\n />\n )\n })}\n </TreeTable>\n </TablePanel>\n\n {showDetail && (\n <DetailsDialog\n projectName={showDetailProjectName}\n entityType={'representation'}\n entityIds={[showDetail]}\n visible={!!showDetail}\n onHide={() => setShowDetail(false)}\n />\n )}\n </>\n )\n}\n"],"names":["useMemo","useState","groupResult","useCreateContextMenu","jsxs","Fragment","jsx","TablePanel","TreeTable","Column","DetailsDialog"],"mappings":"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"}
@@ -62,6 +62,7 @@ import "../../api/queries/addons/updateAddons.es.js";
62
62
  import "../../api/queries/attributes/getAttributes.es.js";
63
63
  import "../../api/queries/attributes/updateAttributes.es.js";
64
64
  import "../../api/queries/authentication/getAuthentication.es.js";
65
+ import "../../api/queries/cloud/cloud.es.js";
65
66
  import "../../api/queries/entities/getEntity.es.js";
66
67
  import "../../api/queries/entities/getEntityPanel.es.js";
67
68
  import "../../api/queries/entities/updateEntity.es.js";
@@ -70,24 +71,24 @@ import "../../api/queries/entityLists/updateLists.es.js";
70
71
  import "../../api/queries/entityLists/getListsAttributes.es.js";
71
72
  import "../../api/queries/entityLists/updateListsAttributes.es.js";
72
73
  import "../../api/queries/folders/getFolders.es.js";
74
+ import "../../api/queries/grouping/getGrouping.es.js";
73
75
  import "../../api/queries/overview/getOverview.es.js";
74
76
  import "../../api/queries/overview/updateOverview.es.js";
77
+ import "../../api/queries/permissions/getPermissions.es.js";
78
+ import "../../api/queries/products/createProduct.es.js";
75
79
  import "../../api/queries/project/getProject.es.js";
76
80
  import "../../api/queries/project/updateProject.es.js";
77
81
  import "../../api/queries/review/getReview.es.js";
78
82
  import "../../api/queries/review/updateReview.es.js";
83
+ import "../../api/queries/share/share.es.js";
79
84
  import "../../api/queries/system/getSystem.es.js";
80
85
  import "../../api/queries/userDashboard/getUserDashboard.es.js";
81
86
  import "../../api/queries/users/getUsers.es.js";
82
87
  import "../../api/queries/users/updateUsers.es.js";
83
- import "../../api/queries/watchers/getWatchers.es.js";
84
- import "../../api/queries/permissions/getPermissions.es.js";
85
- import "../../api/queries/grouping/getGrouping.es.js";
86
88
  import "../../api/queries/versions/updateVersions.es.js";
87
- import "../../api/queries/products/createProduct.es.js";
88
- import "../../api/queries/cloud/cloud.es.js";
89
89
  import "../../api/queries/views/getViews.es.js";
90
90
  import "../../api/queries/views/updateViews.es.js";
91
+ import "../../api/queries/watchers/getWatchers.es.js";
91
92
  import "@dnd-kit/core";
92
93
  import "@dnd-kit/sortable";
93
94
  import "../../components/ReviewablesList/ReviewablesList.styled.es.js";
@@ -175,6 +176,10 @@ import "../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.es.js";
175
176
  import "../Actions/Actions.styled.es.js";
176
177
  import "../Actions/ActionsDropdown/ActionsDropdown.es.js";
177
178
  import "../Actions/ActionIcon.es.js";
179
+ import "../Views/context/ViewsContext.es.js";
180
+ import "../Views/Views.styled.es.js";
181
+ import "../Views/ViewsMenuContainer/ViewsMenuContainer.es.js";
182
+ import "../Views/ViewsMenu/ViewsMenu.es.js";
178
183
  import "../../components/EntityPanelUploader/EntityPanelUploader.styled.es.js";
179
184
  import "../../components/SimpleFormDialog/SimpleFormDialog.es.js";
180
185
  import "../../components/EntityPath/EntityPath.styled.es.js";
@@ -196,9 +201,6 @@ import "../../components/VersionUploader/components/UploadVersionDialog.es.js";
196
201
  import "../../components/VersionUploader/context/VersionUploadContext.es.js";
197
202
  import "../../components/Feedback/FeedbackContext.es.js";
198
203
  import "../../components/Feedback/SupportBubble.es.js";
199
- import "../../components/Views/context/ViewsContext.es.js";
200
- import "../../components/Views/Views.styled.es.js";
201
- import "../../components/Views/ViewsMenuContainer/ViewsMenuContainer.es.js";
202
204
  const columns = [
203
205
  {
204
206
  field: "name",
@@ -1 +1 @@
1
- {"version":3,"file":"RepresentationsList.es.js","sources":["../../../../../src/containers/RepresentationsList/RepresentationsList.tsx"],"sourcesContent":["import { useMemo, useState } from 'react'\nimport { TablePanel } from '@ynput/ayon-react-components'\n\nimport { TreeTable } from 'primereact/treetable'\nimport { Column } from 'primereact/column'\n\nimport { groupResult } from '@shared/util'\nimport { useCreateContextMenu } from '@shared/containers/ContextMenu'\nimport { DetailsDialog } from '@shared/components'\nimport versionsToRepresentations from './versionsToRepresentations'\nimport { DetailsPanelEntityData } from '@shared/api'\n\nconst columns = [\n {\n field: 'name',\n header: 'Name',\n width: 90,\n expander: true,\n },\n {\n field: 'folderName',\n header: 'Folder',\n width: 130,\n },\n {\n field: 'productName',\n header: 'Product',\n width: 130,\n },\n {\n field: 'Product type',\n header: 'productType',\n width: 110,\n },\n]\n\ntype Props = {\n entities: DetailsPanelEntityData[]\n}\n\nexport const RepresentationsList = ({ entities = [] }: Props) => {\n // merge all entities data into one array of entities\n const representations = useMemo(() => versionsToRepresentations(entities) || [], [entities])\n\n const [showDetail, setShowDetail] = useState<false | string>(false)\n const showDetailProjectName = representations.find((rep) => rep.id === showDetail)?.projectName\n\n const [selected, setSelected] = useState<string[]>([])\n\n const data = useMemo(() => {\n // @ts-expect-error - groupResult is not typed\n return groupResult(representations, 'name')\n }, [representations])\n\n const onRepSelectionChange = (entityId: string) => {\n // set focused state\n setSelected([entityId])\n }\n\n const onRowClick = (e: any) => {\n onRepSelectionChange(e.node.data.id)\n }\n\n const ctxMenuItems = (id: string) => [\n {\n label: 'Representation detail',\n command: () => setShowDetail(id),\n icon: 'database',\n },\n ]\n\n const [ctxMenuShow] = useCreateContextMenu([])\n\n const handleContextMenu = (e: any) => {\n const id = e.node.data.id\n\n if (id) {\n // update focused representations\n onRepSelectionChange(id)\n // open context menu\n ctxMenuShow(e.originalEvent, ctxMenuItems(id))\n }\n }\n\n return (\n <>\n <TablePanel>\n <TreeTable\n scrollable\n scrollHeight=\"100%\"\n value={data}\n emptyMessage=\"No representation found\"\n selectionMode=\"single\"\n selectionKeys={selected[0]}\n onRowClick={onRowClick}\n onContextMenu={handleContextMenu}\n >\n {columns.map((col) => {\n return (\n <Column\n key={col.field}\n field={col.field}\n header={col.header}\n expander={col.expander}\n style={{ width: col.width }}\n />\n )\n })}\n </TreeTable>\n </TablePanel>\n\n {showDetail && (\n <DetailsDialog\n projectName={showDetailProjectName}\n entityType={'representation'}\n entityIds={[showDetail]}\n visible={!!showDetail}\n onHide={() => setShowDetail(false)}\n />\n )}\n </>\n )\n}\n"],"names":["jsxs","Fragment","jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,MAAM,UAAU;AAAA,EACd;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,UAAU;AAAA,EACZ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EAAA;AAEX;AAMO,MAAM,sBAAsB,CAAC,EAAE,WAAW,CAAA,QAAgB;;AAEzD,QAAA,kBAAkB,QAAQ,MAAM,0BAA0B,QAAQ,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;AAE3F,QAAM,CAAC,YAAY,aAAa,IAAI,SAAyB,KAAK;AAC5D,QAAA,yBAAwB,qBAAgB,KAAK,CAAC,QAAQ,IAAI,OAAO,UAAU,MAAnD,mBAAsD;AAEpF,QAAM,CAAC,UAAU,WAAW,IAAI,SAAmB,CAAA,CAAE;AAE/C,QAAA,OAAO,QAAQ,MAAM;AAElB,WAAA,YAAY,iBAAiB,MAAM;AAAA,EAAA,GACzC,CAAC,eAAe,CAAC;AAEd,QAAA,uBAAuB,CAAC,aAAqB;AAErC,gBAAA,CAAC,QAAQ,CAAC;AAAA,EACxB;AAEM,QAAA,aAAa,CAAC,MAAW;AACR,yBAAA,EAAE,KAAK,KAAK,EAAE;AAAA,EACrC;AAEM,QAAA,eAAe,CAAC,OAAe;AAAA,IACnC;AAAA,MACE,OAAO;AAAA,MACP,SAAS,MAAM,cAAc,EAAE;AAAA,MAC/B,MAAM;AAAA,IAAA;AAAA,EAEV;AAEA,QAAM,CAAC,WAAW,IAAI,qBAAqB,EAAE;AAEvC,QAAA,oBAAoB,CAAC,MAAW;AAC9B,UAAA,KAAK,EAAE,KAAK,KAAK;AAEvB,QAAI,IAAI;AAEN,2BAAqB,EAAE;AAEvB,kBAAY,EAAE,eAAe,aAAa,EAAE,CAAC;AAAA,IAAA;AAAA,EAEjD;AAEA,SAEIA,kCAAA,KAAAC,4BAAA,EAAA,UAAA;AAAA,IAAAC,sCAAC,YACC,EAAA,UAAAA,kCAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,YAAU;AAAA,QACV,cAAa;AAAA,QACb,OAAO;AAAA,QACP,cAAa;AAAA,QACb,eAAc;AAAA,QACd,eAAe,SAAS,CAAC;AAAA,QACzB;AAAA,QACA,eAAe;AAAA,QAEd,UAAA,QAAQ,IAAI,CAAC,QAAQ;AAElB,iBAAAA,kCAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cAEC,OAAO,IAAI;AAAA,cACX,QAAQ,IAAI;AAAA,cACZ,UAAU,IAAI;AAAA,cACd,OAAO,EAAE,OAAO,IAAI,MAAM;AAAA,YAAA;AAAA,YAJrB,IAAI;AAAA,UAKX;AAAA,QAEH,CAAA;AAAA,MAAA;AAAA,IAAA,GAEL;AAAA,IAEC,cACCA,kCAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,aAAa;AAAA,QACb,YAAY;AAAA,QACZ,WAAW,CAAC,UAAU;AAAA,QACtB,SAAS,CAAC,CAAC;AAAA,QACX,QAAQ,MAAM,cAAc,KAAK;AAAA,MAAA;AAAA,IAAA;AAAA,EACnC,GAEJ;AAEJ;"}
1
+ {"version":3,"file":"RepresentationsList.es.js","sources":["../../../../../src/containers/RepresentationsList/RepresentationsList.tsx"],"sourcesContent":["import { useMemo, useState } from 'react'\nimport { TablePanel } from '@ynput/ayon-react-components'\n\nimport { TreeTable } from 'primereact/treetable'\nimport { Column } from 'primereact/column'\n\nimport { groupResult } from '@shared/util'\nimport { useCreateContextMenu } from '@shared/containers/ContextMenu'\nimport { DetailsDialog } from '@shared/components'\nimport versionsToRepresentations from './versionsToRepresentations'\nimport { DetailsPanelEntityData } from '@shared/api'\n\nconst columns = [\n {\n field: 'name',\n header: 'Name',\n width: 90,\n expander: true,\n },\n {\n field: 'folderName',\n header: 'Folder',\n width: 130,\n },\n {\n field: 'productName',\n header: 'Product',\n width: 130,\n },\n {\n field: 'Product type',\n header: 'productType',\n width: 110,\n },\n]\n\ntype Props = {\n entities: DetailsPanelEntityData[]\n}\n\nexport const RepresentationsList = ({ entities = [] }: Props) => {\n // merge all entities data into one array of entities\n const representations = useMemo(() => versionsToRepresentations(entities) || [], [entities])\n\n const [showDetail, setShowDetail] = useState<false | string>(false)\n const showDetailProjectName = representations.find((rep) => rep.id === showDetail)?.projectName\n\n const [selected, setSelected] = useState<string[]>([])\n\n const data = useMemo(() => {\n // @ts-expect-error - groupResult is not typed\n return groupResult(representations, 'name')\n }, [representations])\n\n const onRepSelectionChange = (entityId: string) => {\n // set focused state\n setSelected([entityId])\n }\n\n const onRowClick = (e: any) => {\n onRepSelectionChange(e.node.data.id)\n }\n\n const ctxMenuItems = (id: string) => [\n {\n label: 'Representation detail',\n command: () => setShowDetail(id),\n icon: 'database',\n },\n ]\n\n const [ctxMenuShow] = useCreateContextMenu([])\n\n const handleContextMenu = (e: any) => {\n const id = e.node.data.id\n\n if (id) {\n // update focused representations\n onRepSelectionChange(id)\n // open context menu\n ctxMenuShow(e.originalEvent, ctxMenuItems(id))\n }\n }\n\n return (\n <>\n <TablePanel>\n <TreeTable\n scrollable\n scrollHeight=\"100%\"\n value={data}\n emptyMessage=\"No representation found\"\n selectionMode=\"single\"\n selectionKeys={selected[0]}\n onRowClick={onRowClick}\n onContextMenu={handleContextMenu}\n >\n {columns.map((col) => {\n return (\n <Column\n key={col.field}\n field={col.field}\n header={col.header}\n expander={col.expander}\n style={{ width: col.width }}\n />\n )\n })}\n </TreeTable>\n </TablePanel>\n\n {showDetail && (\n <DetailsDialog\n projectName={showDetailProjectName}\n entityType={'representation'}\n entityIds={[showDetail]}\n visible={!!showDetail}\n onHide={() => setShowDetail(false)}\n />\n )}\n </>\n )\n}\n"],"names":["jsxs","Fragment","jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,MAAM,UAAU;AAAA,EACd;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,UAAU;AAAA,EACZ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,EAAA;AAEX;AAMO,MAAM,sBAAsB,CAAC,EAAE,WAAW,CAAA,QAAgB;;AAEzD,QAAA,kBAAkB,QAAQ,MAAM,0BAA0B,QAAQ,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;AAE3F,QAAM,CAAC,YAAY,aAAa,IAAI,SAAyB,KAAK;AAC5D,QAAA,yBAAwB,qBAAgB,KAAK,CAAC,QAAQ,IAAI,OAAO,UAAU,MAAnD,mBAAsD;AAEpF,QAAM,CAAC,UAAU,WAAW,IAAI,SAAmB,CAAA,CAAE;AAE/C,QAAA,OAAO,QAAQ,MAAM;AAElB,WAAA,YAAY,iBAAiB,MAAM;AAAA,EAAA,GACzC,CAAC,eAAe,CAAC;AAEd,QAAA,uBAAuB,CAAC,aAAqB;AAErC,gBAAA,CAAC,QAAQ,CAAC;AAAA,EACxB;AAEM,QAAA,aAAa,CAAC,MAAW;AACR,yBAAA,EAAE,KAAK,KAAK,EAAE;AAAA,EACrC;AAEM,QAAA,eAAe,CAAC,OAAe;AAAA,IACnC;AAAA,MACE,OAAO;AAAA,MACP,SAAS,MAAM,cAAc,EAAE;AAAA,MAC/B,MAAM;AAAA,IAAA;AAAA,EAEV;AAEA,QAAM,CAAC,WAAW,IAAI,qBAAqB,EAAE;AAEvC,QAAA,oBAAoB,CAAC,MAAW;AAC9B,UAAA,KAAK,EAAE,KAAK,KAAK;AAEvB,QAAI,IAAI;AAEN,2BAAqB,EAAE;AAEvB,kBAAY,EAAE,eAAe,aAAa,EAAE,CAAC;AAAA,IAAA;AAAA,EAEjD;AAEA,SAEIA,kCAAA,KAAAC,4BAAA,EAAA,UAAA;AAAA,IAAAC,sCAAC,YACC,EAAA,UAAAA,kCAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,YAAU;AAAA,QACV,cAAa;AAAA,QACb,OAAO;AAAA,QACP,cAAa;AAAA,QACb,eAAc;AAAA,QACd,eAAe,SAAS,CAAC;AAAA,QACzB;AAAA,QACA,eAAe;AAAA,QAEd,UAAA,QAAQ,IAAI,CAAC,QAAQ;AAElB,iBAAAA,kCAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cAEC,OAAO,IAAI;AAAA,cACX,QAAQ,IAAI;AAAA,cACZ,UAAU,IAAI;AAAA,cACd,OAAO,EAAE,OAAO,IAAI,MAAM;AAAA,YAAA;AAAA,YAJrB,IAAI;AAAA,UAKX;AAAA,QAEH,CAAA;AAAA,MAAA;AAAA,IAAA,GAEL;AAAA,IAEC,cACCA,kCAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,aAAa;AAAA,QACb,YAAY;AAAA,QACZ,WAAW,CAAC,UAAU;AAAA,QACtB,SAAS,CAAC,CAAC;AAAA,QACX,QAAQ,MAAM,cAAc,KAAK;AAAA,MAAA;AAAA,IAAA;AAAA,EACnC,GAEJ;AAEJ;"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("../../../../../_virtual/jsx-runtime.cjs.js");
4
+ const React = require("react");
5
+ const ViewItem_styled = require("./ViewItem.styled.cjs.js");
6
+ const clsx = require("clsx");
7
+ const platform = require("../../../util/platform.cjs.js");
8
+ require("lodash");
9
+ require("react-toastify");
10
+ require("../../../util/pubsub.cjs.js");
11
+ const ViewItem = React.forwardRef(
12
+ ({
13
+ label,
14
+ startContent,
15
+ endContent,
16
+ isSelected,
17
+ isEditable,
18
+ isSaveable,
19
+ highlighted,
20
+ onEdit,
21
+ onSave,
22
+ onResetView,
23
+ className,
24
+ ...props
25
+ }, ref) => {
26
+ return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsxs(ViewItem_styled.ViewItem, { ...props, className: clsx(className, { selected: isSelected }), ref, children: [
27
+ startContent && startContent,
28
+ /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx("span", { className: "label", children: label }),
29
+ onResetView && /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
30
+ ViewItem_styled.ActionButton,
31
+ {
32
+ icon: "restart_alt",
33
+ variant: "text",
34
+ className: "reset",
35
+ onClick: onResetView,
36
+ "data-tooltip": "Reset this view to default",
37
+ "data-shortcut": platform.getPlatformShortcutKey("0", [platform.KeyMode.Shift, platform.KeyMode.Ctrl])
38
+ }
39
+ ),
40
+ isEditable && isSaveable && !isSelected && /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
41
+ ViewItem_styled.ActionButton,
42
+ {
43
+ icon: "save",
44
+ variant: "text",
45
+ className: clsx("save", { active: highlighted === "save" }),
46
+ onClick: onSave,
47
+ "data-tooltip": "Save view settings from current view"
48
+ }
49
+ ),
50
+ isEditable && onEdit && /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
51
+ ViewItem_styled.ActionButton,
52
+ {
53
+ variant: "text",
54
+ icon: "more_horiz",
55
+ className: clsx("more", { active: highlighted === "edit" }),
56
+ onClick: onEdit,
57
+ "data-tooltip": "Edit view"
58
+ }
59
+ ),
60
+ endContent && endContent
61
+ ] });
62
+ }
63
+ );
64
+ exports.ViewItem = ViewItem;
65
+ //# sourceMappingURL=ViewItem.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViewItem.cjs.js","sources":["../../../../../../src/containers/Views/ViewItem/ViewItem.tsx"],"sourcesContent":["import { forwardRef, ReactNode } from 'react'\nimport * as Styled from './ViewItem.styled'\nimport clsx from 'clsx'\nimport { getPlatformShortcutKey, KeyMode } from '@shared/util'\n\nexport interface ViewItem {\n id: string\n label: string\n startContent?: ReactNode\n endContent?: ReactNode\n isSelected?: boolean\n isEditable?: boolean\n isSaveable?: boolean // can this be saved from working view (shows little save button)\n highlighted?: 'save' | 'edit' // highlights a button\n onEdit?: (e: React.MouseEvent<HTMLButtonElement>) => void\n onSave?: (e: React.MouseEvent<HTMLButtonElement>) => void // saves the view settings from selected view\n onResetView?: (e: React.MouseEvent<HTMLButtonElement>) => void // resets working view\n onClick?: (e: React.MouseEvent<HTMLLIElement>) => void\n}\n\nexport interface ViewMenuItemProps\n extends Omit<React.LiHTMLAttributes<HTMLLIElement>, 'id'>,\n ViewItem {}\n\nexport const ViewItem = forwardRef<HTMLLIElement, ViewMenuItemProps>(\n (\n {\n label,\n startContent,\n endContent,\n isSelected,\n isEditable,\n isSaveable,\n highlighted,\n onEdit,\n onSave,\n onResetView,\n className,\n ...props\n },\n ref,\n ) => {\n return (\n <Styled.ViewItem {...props} className={clsx(className, { selected: isSelected })} ref={ref}>\n {startContent && startContent}\n <span className=\"label\">{label}</span>\n {/* Reset button (e.g., for working view) - shows if handler is provided */}\n {onResetView && (\n <Styled.ActionButton\n icon=\"restart_alt\"\n variant=\"text\"\n className=\"reset\"\n onClick={onResetView}\n data-tooltip=\"Reset this view to default\"\n data-shortcut={getPlatformShortcutKey('0', [KeyMode.Shift, KeyMode.Ctrl])}\n />\n )}\n {isEditable && isSaveable && !isSelected && (\n <Styled.ActionButton\n icon=\"save\"\n variant=\"text\"\n className={clsx('save', { active: highlighted === 'save' })}\n onClick={onSave}\n data-tooltip=\"Save view settings from current view\"\n />\n )}\n {isEditable && onEdit && (\n <Styled.ActionButton\n variant=\"text\"\n icon=\"more_horiz\"\n className={clsx('more', { active: highlighted === 'edit' })}\n onClick={onEdit}\n data-tooltip=\"Edit view\"\n />\n )}\n {endContent && endContent}\n </Styled.ViewItem>\n )\n },\n)\n"],"names":["forwardRef","jsxs","Styled.ViewItem","jsx","Styled.ActionButton","getPlatformShortcutKey","KeyMode"],"mappings":";;;;;;;;;;AAwBO,MAAM,WAAWA,MAAA;AAAA,EACtB,CACE;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,KAEL,QACG;AACH,WACGC,2BAAA,kBAAA,KAAAC,gBAAA,UAAA,EAAiB,GAAG,OAAO,WAAW,KAAK,WAAW,EAAE,UAAU,WAAY,CAAA,GAAG,KAC/E,UAAA;AAAA,MAAgB,gBAAA;AAAA,MAChBC,2BAAA,kBAAA,IAAA,QAAA,EAAK,WAAU,SAAS,UAAM,OAAA;AAAA,MAE9B,eACCA,2BAAA,kBAAA;AAAA,QAACC,gBAAO;AAAA,QAAP;AAAA,UACC,MAAK;AAAA,UACL,SAAQ;AAAA,UACR,WAAU;AAAA,UACV,SAAS;AAAA,UACT,gBAAa;AAAA,UACb,iBAAeC,gCAAuB,KAAK,CAACC,iBAAQ,OAAOA,SAAA,QAAQ,IAAI,CAAC;AAAA,QAAA;AAAA,MAC1E;AAAA,MAED,cAAc,cAAc,CAAC,cAC5BH,2BAAA,kBAAA;AAAA,QAACC,gBAAO;AAAA,QAAP;AAAA,UACC,MAAK;AAAA,UACL,SAAQ;AAAA,UACR,WAAW,KAAK,QAAQ,EAAE,QAAQ,gBAAgB,QAAQ;AAAA,UAC1D,SAAS;AAAA,UACT,gBAAa;AAAA,QAAA;AAAA,MACf;AAAA,MAED,cAAc,UACbD,2BAAA,kBAAA;AAAA,QAACC,gBAAO;AAAA,QAAP;AAAA,UACC,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,WAAW,KAAK,QAAQ,EAAE,QAAQ,gBAAgB,QAAQ;AAAA,UAC1D,SAAS;AAAA,UACT,gBAAa;AAAA,QAAA;AAAA,MACf;AAAA,MAED,cAAc;AAAA,IAAA,GACjB;AAAA,EAAA;AAGN;;"}
@@ -0,0 +1,65 @@
1
+ import { j as jsxRuntimeExports } from "../../../../../_virtual/jsx-runtime.es.js";
2
+ import { forwardRef } from "react";
3
+ import { ViewItem as ViewItem$1, ActionButton } from "./ViewItem.styled.es.js";
4
+ import clsx from "clsx";
5
+ import { getPlatformShortcutKey, KeyMode } from "../../../util/platform.es.js";
6
+ import "lodash";
7
+ import "react-toastify";
8
+ import "../../../util/pubsub.es.js";
9
+ const ViewItem = forwardRef(
10
+ ({
11
+ label,
12
+ startContent,
13
+ endContent,
14
+ isSelected,
15
+ isEditable,
16
+ isSaveable,
17
+ highlighted,
18
+ onEdit,
19
+ onSave,
20
+ onResetView,
21
+ className,
22
+ ...props
23
+ }, ref) => {
24
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(ViewItem$1, { ...props, className: clsx(className, { selected: isSelected }), ref, children: [
25
+ startContent && startContent,
26
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "label", children: label }),
27
+ onResetView && /* @__PURE__ */ jsxRuntimeExports.jsx(
28
+ ActionButton,
29
+ {
30
+ icon: "restart_alt",
31
+ variant: "text",
32
+ className: "reset",
33
+ onClick: onResetView,
34
+ "data-tooltip": "Reset this view to default",
35
+ "data-shortcut": getPlatformShortcutKey("0", [KeyMode.Shift, KeyMode.Ctrl])
36
+ }
37
+ ),
38
+ isEditable && isSaveable && !isSelected && /* @__PURE__ */ jsxRuntimeExports.jsx(
39
+ ActionButton,
40
+ {
41
+ icon: "save",
42
+ variant: "text",
43
+ className: clsx("save", { active: highlighted === "save" }),
44
+ onClick: onSave,
45
+ "data-tooltip": "Save view settings from current view"
46
+ }
47
+ ),
48
+ isEditable && onEdit && /* @__PURE__ */ jsxRuntimeExports.jsx(
49
+ ActionButton,
50
+ {
51
+ variant: "text",
52
+ icon: "more_horiz",
53
+ className: clsx("more", { active: highlighted === "edit" }),
54
+ onClick: onEdit,
55
+ "data-tooltip": "Edit view"
56
+ }
57
+ ),
58
+ endContent && endContent
59
+ ] });
60
+ }
61
+ );
62
+ export {
63
+ ViewItem
64
+ };
65
+ //# sourceMappingURL=ViewItem.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViewItem.es.js","sources":["../../../../../../src/containers/Views/ViewItem/ViewItem.tsx"],"sourcesContent":["import { forwardRef, ReactNode } from 'react'\nimport * as Styled from './ViewItem.styled'\nimport clsx from 'clsx'\nimport { getPlatformShortcutKey, KeyMode } from '@shared/util'\n\nexport interface ViewItem {\n id: string\n label: string\n startContent?: ReactNode\n endContent?: ReactNode\n isSelected?: boolean\n isEditable?: boolean\n isSaveable?: boolean // can this be saved from working view (shows little save button)\n highlighted?: 'save' | 'edit' // highlights a button\n onEdit?: (e: React.MouseEvent<HTMLButtonElement>) => void\n onSave?: (e: React.MouseEvent<HTMLButtonElement>) => void // saves the view settings from selected view\n onResetView?: (e: React.MouseEvent<HTMLButtonElement>) => void // resets working view\n onClick?: (e: React.MouseEvent<HTMLLIElement>) => void\n}\n\nexport interface ViewMenuItemProps\n extends Omit<React.LiHTMLAttributes<HTMLLIElement>, 'id'>,\n ViewItem {}\n\nexport const ViewItem = forwardRef<HTMLLIElement, ViewMenuItemProps>(\n (\n {\n label,\n startContent,\n endContent,\n isSelected,\n isEditable,\n isSaveable,\n highlighted,\n onEdit,\n onSave,\n onResetView,\n className,\n ...props\n },\n ref,\n ) => {\n return (\n <Styled.ViewItem {...props} className={clsx(className, { selected: isSelected })} ref={ref}>\n {startContent && startContent}\n <span className=\"label\">{label}</span>\n {/* Reset button (e.g., for working view) - shows if handler is provided */}\n {onResetView && (\n <Styled.ActionButton\n icon=\"restart_alt\"\n variant=\"text\"\n className=\"reset\"\n onClick={onResetView}\n data-tooltip=\"Reset this view to default\"\n data-shortcut={getPlatformShortcutKey('0', [KeyMode.Shift, KeyMode.Ctrl])}\n />\n )}\n {isEditable && isSaveable && !isSelected && (\n <Styled.ActionButton\n icon=\"save\"\n variant=\"text\"\n className={clsx('save', { active: highlighted === 'save' })}\n onClick={onSave}\n data-tooltip=\"Save view settings from current view\"\n />\n )}\n {isEditable && onEdit && (\n <Styled.ActionButton\n variant=\"text\"\n icon=\"more_horiz\"\n className={clsx('more', { active: highlighted === 'edit' })}\n onClick={onEdit}\n data-tooltip=\"Edit view\"\n />\n )}\n {endContent && endContent}\n </Styled.ViewItem>\n )\n },\n)\n"],"names":["jsxs","Styled.ViewItem","jsx","Styled.ActionButton"],"mappings":";;;;;;;;AAwBO,MAAM,WAAW;AAAA,EACtB,CACE;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,KAEL,QACG;AACH,WACGA,kCAAA,KAAAC,YAAA,EAAiB,GAAG,OAAO,WAAW,KAAK,WAAW,EAAE,UAAU,WAAY,CAAA,GAAG,KAC/E,UAAA;AAAA,MAAgB,gBAAA;AAAA,MAChBC,kCAAA,IAAA,QAAA,EAAK,WAAU,SAAS,UAAM,OAAA;AAAA,MAE9B,eACCA,kCAAA;AAAA,QAACC;AAAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,SAAQ;AAAA,UACR,WAAU;AAAA,UACV,SAAS;AAAA,UACT,gBAAa;AAAA,UACb,iBAAe,uBAAuB,KAAK,CAAC,QAAQ,OAAO,QAAQ,IAAI,CAAC;AAAA,QAAA;AAAA,MAC1E;AAAA,MAED,cAAc,cAAc,CAAC,cAC5BD,kCAAA;AAAA,QAACC;AAAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,SAAQ;AAAA,UACR,WAAW,KAAK,QAAQ,EAAE,QAAQ,gBAAgB,QAAQ;AAAA,UAC1D,SAAS;AAAA,UACT,gBAAa;AAAA,QAAA;AAAA,MACf;AAAA,MAED,cAAc,UACbD,kCAAA;AAAA,QAACC;AAAAA,QAAA;AAAA,UACC,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,WAAW,KAAK,QAAQ,EAAE,QAAQ,gBAAgB,QAAQ;AAAA,UAC1D,SAAS;AAAA,UACT,gBAAa;AAAA,QAAA;AAAA,MACf;AAAA,MAED,cAAc;AAAA,IAAA,GACjB;AAAA,EAAA;AAGN;"}