@ynput/ayon-frontend-shared 0.2.14 → 0.2.16

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 (668) hide show
  1. package/dist/DetailsPanel.cjs.js +10 -0
  2. package/dist/DetailsPanel.cjs.js.map +1 -1
  3. package/dist/DetailsPanel.es.js +10 -0
  4. package/dist/DetailsPanel.es.js.map +1 -1
  5. package/dist/ProjectTreeTable.cjs.js +39 -1
  6. package/dist/ProjectTreeTable.cjs.js.map +1 -1
  7. package/dist/ProjectTreeTable.es.js +41 -3
  8. package/dist/ProjectTreeTable.es.js.map +1 -1
  9. package/dist/_virtual/index.cjs10.js +4 -4
  10. package/dist/_virtual/index.cjs5.js +3 -5
  11. package/dist/_virtual/index.cjs5.js.map +1 -1
  12. package/dist/_virtual/index.cjs6.js +5 -3
  13. package/dist/_virtual/index.cjs6.js.map +1 -1
  14. package/dist/_virtual/index.cjs8.js +4 -4
  15. package/dist/_virtual/index.cjs9.js +4 -4
  16. package/dist/_virtual/index.es10.js +4 -4
  17. package/dist/_virtual/index.es5.js +2 -5
  18. package/dist/_virtual/index.es5.js.map +1 -1
  19. package/dist/_virtual/index.es6.js +5 -2
  20. package/dist/_virtual/index.es6.js.map +1 -1
  21. package/dist/_virtual/index.es8.js +4 -4
  22. package/dist/_virtual/index.es9.js +4 -4
  23. package/dist/api.cjs.js +7 -0
  24. package/dist/api.cjs.js.map +1 -1
  25. package/dist/api.es.js +9 -2
  26. package/dist/api.es.js.map +1 -1
  27. package/dist/components.cjs.js +12 -0
  28. package/dist/components.cjs.js.map +1 -1
  29. package/dist/components.es.js +12 -0
  30. package/dist/components.es.js.map +1 -1
  31. package/dist/context.cjs.js +4 -0
  32. package/dist/context.cjs.js.map +1 -1
  33. package/dist/context.es.js +4 -0
  34. package/dist/context.es.js.map +1 -1
  35. package/dist/index.cjs.js +10 -0
  36. package/dist/index.cjs.js.map +1 -1
  37. package/dist/index.es.js +10 -0
  38. package/dist/index.es.js.map +1 -1
  39. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +2 -2
  40. package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
  41. package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
  42. package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
  43. package/dist/node_modules/rehype-prism-plus/dist/index.es.cjs.js +1 -1
  44. package/dist/node_modules/rehype-prism-plus/dist/index.es.es.js +1 -1
  45. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  46. package/dist/node_modules/remove-accents/index.es.js +1 -1
  47. package/dist/node_modules/vfile/lib/index.cjs.js +1 -1
  48. package/dist/node_modules/vfile/lib/index.es.js +1 -1
  49. package/dist/shared/src/api/generated/actions.cjs.js.map +1 -1
  50. package/dist/shared/src/api/generated/actions.es.js.map +1 -1
  51. package/dist/shared/src/api/generated/addons.cjs.js.map +1 -1
  52. package/dist/shared/src/api/generated/addons.es.js.map +1 -1
  53. package/dist/shared/src/api/generated/anatomy.cjs.js.map +1 -1
  54. package/dist/shared/src/api/generated/anatomy.es.js.map +1 -1
  55. package/dist/shared/src/api/generated/attributes.cjs.js.map +1 -1
  56. package/dist/shared/src/api/generated/attributes.es.js.map +1 -1
  57. package/dist/shared/src/api/generated/configuration.cjs.js.map +1 -1
  58. package/dist/shared/src/api/generated/configuration.es.js.map +1 -1
  59. package/dist/shared/src/api/generated/entityLists.cjs.js.map +1 -1
  60. package/dist/shared/src/api/generated/entityLists.es.js.map +1 -1
  61. package/dist/shared/src/api/generated/events.cjs.js.map +1 -1
  62. package/dist/shared/src/api/generated/events.es.js.map +1 -1
  63. package/dist/shared/src/api/generated/files.cjs.js +5 -0
  64. package/dist/shared/src/api/generated/files.cjs.js.map +1 -1
  65. package/dist/shared/src/api/generated/files.es.js +5 -0
  66. package/dist/shared/src/api/generated/files.es.js.map +1 -1
  67. package/dist/shared/src/api/generated/graphql.cjs.js +24 -0
  68. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  69. package/dist/shared/src/api/generated/graphql.es.js +24 -0
  70. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  71. package/dist/shared/src/api/generated/grouping.cjs.js +18 -0
  72. package/dist/shared/src/api/generated/grouping.cjs.js.map +1 -0
  73. package/dist/shared/src/api/generated/grouping.es.js +18 -0
  74. package/dist/shared/src/api/generated/grouping.es.js.map +1 -0
  75. package/dist/shared/src/api/generated/operations.cjs.js.map +1 -1
  76. package/dist/shared/src/api/generated/operations.es.js.map +1 -1
  77. package/dist/shared/src/api/generated/projects.cjs.js +16 -0
  78. package/dist/shared/src/api/generated/projects.cjs.js.map +1 -1
  79. package/dist/shared/src/api/generated/projects.es.js +16 -0
  80. package/dist/shared/src/api/generated/projects.es.js.map +1 -1
  81. package/dist/shared/src/api/generated/reviewables.cjs.js.map +1 -1
  82. package/dist/shared/src/api/generated/reviewables.es.js.map +1 -1
  83. package/dist/shared/src/api/generated/system.cjs.js.map +1 -1
  84. package/dist/shared/src/api/generated/system.es.js.map +1 -1
  85. package/dist/shared/src/api/generated/tasks.cjs.js.map +1 -1
  86. package/dist/shared/src/api/generated/tasks.es.js.map +1 -1
  87. package/dist/shared/src/api/generated/users.cjs.js.map +1 -1
  88. package/dist/shared/src/api/generated/users.es.js.map +1 -1
  89. package/dist/shared/src/api/queries/actions/getActions.cjs.js +1 -0
  90. package/dist/shared/src/api/queries/actions/getActions.cjs.js.map +1 -1
  91. package/dist/shared/src/api/queries/actions/getActions.es.js +1 -0
  92. package/dist/shared/src/api/queries/actions/getActions.es.js.map +1 -1
  93. package/dist/shared/src/api/queries/activities/getActivities.cjs.js +1 -0
  94. package/dist/shared/src/api/queries/activities/getActivities.cjs.js.map +1 -1
  95. package/dist/shared/src/api/queries/activities/getActivities.es.js +1 -0
  96. package/dist/shared/src/api/queries/activities/getActivities.es.js.map +1 -1
  97. package/dist/shared/src/api/queries/activities/getMentions.cjs.js +1 -0
  98. package/dist/shared/src/api/queries/activities/getMentions.cjs.js.map +1 -1
  99. package/dist/shared/src/api/queries/activities/getMentions.es.js +1 -0
  100. package/dist/shared/src/api/queries/activities/getMentions.es.js.map +1 -1
  101. package/dist/shared/src/api/queries/activities/updateReaction.cjs.js +1 -0
  102. package/dist/shared/src/api/queries/activities/updateReaction.cjs.js.map +1 -1
  103. package/dist/shared/src/api/queries/activities/updateReaction.es.js +1 -0
  104. package/dist/shared/src/api/queries/activities/updateReaction.es.js.map +1 -1
  105. package/dist/shared/src/api/queries/addons/getAddons.cjs.js +1 -0
  106. package/dist/shared/src/api/queries/addons/getAddons.cjs.js.map +1 -1
  107. package/dist/shared/src/api/queries/addons/getAddons.es.js +1 -0
  108. package/dist/shared/src/api/queries/addons/getAddons.es.js.map +1 -1
  109. package/dist/shared/src/api/queries/attributes/getAttributes.cjs.js +1 -0
  110. package/dist/shared/src/api/queries/attributes/getAttributes.cjs.js.map +1 -1
  111. package/dist/shared/src/api/queries/attributes/getAttributes.es.js +1 -0
  112. package/dist/shared/src/api/queries/attributes/getAttributes.es.js.map +1 -1
  113. package/dist/shared/src/api/queries/authentication/getAuthentication.cjs.js +1 -0
  114. package/dist/shared/src/api/queries/authentication/getAuthentication.cjs.js.map +1 -1
  115. package/dist/shared/src/api/queries/authentication/getAuthentication.es.js +1 -0
  116. package/dist/shared/src/api/queries/authentication/getAuthentication.es.js.map +1 -1
  117. package/dist/shared/src/api/queries/entities/getEntity.cjs.js +1 -0
  118. package/dist/shared/src/api/queries/entities/getEntity.cjs.js.map +1 -1
  119. package/dist/shared/src/api/queries/entities/getEntity.es.js +1 -0
  120. package/dist/shared/src/api/queries/entities/getEntity.es.js.map +1 -1
  121. package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js +1 -0
  122. package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js.map +1 -1
  123. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js +1 -0
  124. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js.map +1 -1
  125. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +2 -0
  126. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  127. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +2 -0
  128. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  129. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +2 -0
  130. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
  131. package/dist/shared/src/api/queries/entities/updateEntity.es.js +2 -0
  132. package/dist/shared/src/api/queries/entities/updateEntity.es.js.map +1 -1
  133. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +1 -0
  134. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -1
  135. package/dist/shared/src/api/queries/entityLists/getLists.es.js +1 -0
  136. package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -1
  137. package/dist/shared/src/api/queries/entityLists/getListsAttributes.cjs.js +1 -0
  138. package/dist/shared/src/api/queries/entityLists/getListsAttributes.cjs.js.map +1 -1
  139. package/dist/shared/src/api/queries/entityLists/getListsAttributes.es.js +1 -0
  140. package/dist/shared/src/api/queries/entityLists/getListsAttributes.es.js.map +1 -1
  141. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js +1 -0
  142. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js.map +1 -1
  143. package/dist/shared/src/api/queries/entityLists/updateLists.es.js +1 -0
  144. package/dist/shared/src/api/queries/entityLists/updateLists.es.js.map +1 -1
  145. package/dist/shared/src/api/queries/folders/getFolders.cjs.js +1 -0
  146. package/dist/shared/src/api/queries/folders/getFolders.cjs.js.map +1 -1
  147. package/dist/shared/src/api/queries/folders/getFolders.es.js +1 -0
  148. package/dist/shared/src/api/queries/folders/getFolders.es.js.map +1 -1
  149. package/dist/shared/src/api/queries/grouping/getGrouping.cjs.js +47 -0
  150. package/dist/shared/src/api/queries/grouping/getGrouping.cjs.js.map +1 -0
  151. package/dist/shared/src/api/queries/grouping/getGrouping.es.js +47 -0
  152. package/dist/shared/src/api/queries/grouping/getGrouping.es.js.map +1 -0
  153. package/dist/shared/src/api/queries/overview/getOverview.cjs.js +64 -3
  154. package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
  155. package/dist/shared/src/api/queries/overview/getOverview.es.js +64 -3
  156. package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
  157. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +2 -0
  158. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  159. package/dist/shared/src/api/queries/overview/updateOverview.es.js +2 -0
  160. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  161. package/dist/shared/src/api/queries/permissions/getPermissions.cjs.js +1 -0
  162. package/dist/shared/src/api/queries/permissions/getPermissions.cjs.js.map +1 -1
  163. package/dist/shared/src/api/queries/permissions/getPermissions.es.js +1 -0
  164. package/dist/shared/src/api/queries/permissions/getPermissions.es.js.map +1 -1
  165. package/dist/shared/src/api/queries/project/getProject.cjs.js +1 -0
  166. package/dist/shared/src/api/queries/project/getProject.cjs.js.map +1 -1
  167. package/dist/shared/src/api/queries/project/getProject.es.js +1 -0
  168. package/dist/shared/src/api/queries/project/getProject.es.js.map +1 -1
  169. package/dist/shared/src/api/queries/review/getReview.cjs.js +1 -0
  170. package/dist/shared/src/api/queries/review/getReview.cjs.js.map +1 -1
  171. package/dist/shared/src/api/queries/review/getReview.es.js +1 -0
  172. package/dist/shared/src/api/queries/review/getReview.es.js.map +1 -1
  173. package/dist/shared/src/api/queries/review/updateReview.cjs.js +1 -0
  174. package/dist/shared/src/api/queries/review/updateReview.cjs.js.map +1 -1
  175. package/dist/shared/src/api/queries/review/updateReview.es.js +1 -0
  176. package/dist/shared/src/api/queries/review/updateReview.es.js.map +1 -1
  177. package/dist/shared/src/api/queries/system/getSystem.cjs.js +1 -0
  178. package/dist/shared/src/api/queries/system/getSystem.cjs.js.map +1 -1
  179. package/dist/shared/src/api/queries/system/getSystem.es.js +1 -0
  180. package/dist/shared/src/api/queries/system/getSystem.es.js.map +1 -1
  181. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -0
  182. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js.map +1 -1
  183. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +1 -0
  184. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js.map +1 -1
  185. package/dist/shared/src/api/queries/users/getUsers.cjs.js +2 -0
  186. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  187. package/dist/shared/src/api/queries/users/getUsers.es.js +2 -0
  188. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  189. package/dist/shared/src/api/queries/users/updateUsers.cjs.js +1 -0
  190. package/dist/shared/src/api/queries/users/updateUsers.cjs.js.map +1 -1
  191. package/dist/shared/src/api/queries/users/updateUsers.es.js +1 -0
  192. package/dist/shared/src/api/queries/users/updateUsers.es.js.map +1 -1
  193. package/dist/shared/src/api/queries/watchers/getWatchers.cjs.js +1 -0
  194. package/dist/shared/src/api/queries/watchers/getWatchers.cjs.js.map +1 -1
  195. package/dist/shared/src/api/queries/watchers/getWatchers.es.js +1 -0
  196. package/dist/shared/src/api/queries/watchers/getWatchers.es.js.map +1 -1
  197. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js +2 -2
  198. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js.map +1 -1
  199. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js +2 -2
  200. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js.map +1 -1
  201. package/dist/shared/src/components/Badge/Badge.cjs.js +31 -0
  202. package/dist/shared/src/components/Badge/Badge.cjs.js.map +1 -0
  203. package/dist/shared/src/components/Badge/Badge.es.js +31 -0
  204. package/dist/shared/src/components/Badge/Badge.es.js.map +1 -0
  205. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +2 -0
  206. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  207. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +2 -0
  208. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  209. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.cjs.js +2 -0
  210. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.cjs.js.map +1 -1
  211. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.es.js +2 -0
  212. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.es.js.map +1 -1
  213. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -0
  214. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
  215. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +1 -0
  216. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
  217. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.cjs.js +10 -0
  218. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.cjs.js.map +1 -1
  219. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.es.js +10 -0
  220. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.es.js.map +1 -1
  221. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +69 -0
  222. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -0
  223. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +69 -0
  224. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -0
  225. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +48 -0
  226. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -0
  227. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +48 -0
  228. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -0
  229. package/dist/shared/src/components/Powerpack/PowerpackDialog.styled.cjs.js +102 -0
  230. package/dist/shared/src/components/Powerpack/PowerpackDialog.styled.cjs.js.map +1 -0
  231. package/dist/shared/src/components/Powerpack/PowerpackDialog.styled.es.js +102 -0
  232. package/dist/shared/src/components/Powerpack/PowerpackDialog.styled.es.js.map +1 -0
  233. package/dist/shared/src/components/Powerpack/PricingLink.cjs.js +13 -0
  234. package/dist/shared/src/components/Powerpack/PricingLink.cjs.js.map +1 -0
  235. package/dist/shared/src/components/Powerpack/PricingLink.es.js +13 -0
  236. package/dist/shared/src/components/Powerpack/PricingLink.es.js.map +1 -0
  237. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +4 -10
  238. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
  239. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +1 -7
  240. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
  241. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +142 -3
  242. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  243. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +142 -3
  244. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  245. package/dist/shared/src/components/ProjectTableSettings/TableSettings.styled.cjs.js +13 -0
  246. package/dist/shared/src/components/ProjectTableSettings/TableSettings.styled.cjs.js.map +1 -0
  247. package/dist/shared/src/components/ProjectTableSettings/TableSettings.styled.es.js +13 -0
  248. package/dist/shared/src/components/ProjectTableSettings/TableSettings.styled.es.js.map +1 -0
  249. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +50 -0
  250. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -0
  251. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +50 -0
  252. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -0
  253. package/dist/shared/src/components/ReviewableProgressCard/ReviewableProgressCard.cjs.js +5 -1
  254. package/dist/shared/src/components/ReviewableProgressCard/ReviewableProgressCard.cjs.js.map +1 -1
  255. package/dist/shared/src/components/ReviewableProgressCard/ReviewableProgressCard.es.js +5 -1
  256. package/dist/shared/src/components/ReviewableProgressCard/ReviewableProgressCard.es.js.map +1 -1
  257. package/dist/shared/src/components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js +5 -5
  258. package/dist/shared/src/components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js.map +1 -1
  259. package/dist/shared/src/components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js +5 -5
  260. package/dist/shared/src/components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js.map +1 -1
  261. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +2 -0
  262. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  263. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +2 -0
  264. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  265. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +100 -79
  266. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  267. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +100 -79
  268. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  269. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +94 -17
  270. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  271. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +95 -18
  272. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  273. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.styled.cjs.js +4 -0
  274. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.styled.cjs.js.map +1 -1
  275. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.styled.es.js +4 -0
  276. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.styled.es.js.map +1 -1
  277. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +10 -0
  278. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  279. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +10 -0
  280. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  281. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +8 -7
  282. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  283. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +8 -7
  284. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  285. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +6 -2
  286. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
  287. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +6 -2
  288. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
  289. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +223 -19
  290. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  291. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +224 -20
  292. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  293. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +1 -0
  294. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
  295. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +1 -0
  296. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
  297. package/dist/shared/src/components/Watchers/Watchers.cjs.js +2 -0
  298. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  299. package/dist/shared/src/components/Watchers/Watchers.es.js +2 -0
  300. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  301. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +10 -0
  302. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  303. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +10 -0
  304. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  305. package/dist/shared/src/containers/Actions/Actions.cjs.js +3 -0
  306. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  307. package/dist/shared/src/containers/Actions/Actions.es.js +3 -0
  308. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  309. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +10 -0
  310. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  311. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +10 -0
  312. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  313. package/dist/shared/src/containers/ContextMenu/ContextMenuItem.cjs.js +22 -0
  314. package/dist/shared/src/containers/ContextMenu/ContextMenuItem.cjs.js.map +1 -1
  315. package/dist/shared/src/containers/ContextMenu/ContextMenuItem.es.js +22 -0
  316. package/dist/shared/src/containers/ContextMenu/ContextMenuItem.es.js.map +1 -1
  317. package/dist/shared/src/containers/ContextMenu/useCreateContextMenu.cjs.js +26 -7
  318. package/dist/shared/src/containers/ContextMenu/useCreateContextMenu.cjs.js.map +1 -1
  319. package/dist/shared/src/containers/ContextMenu/useCreateContextMenu.es.js +26 -7
  320. package/dist/shared/src/containers/ContextMenu/useCreateContextMenu.es.js.map +1 -1
  321. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +10 -0
  322. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  323. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +10 -0
  324. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  325. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +19 -9
  326. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  327. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +19 -9
  328. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  329. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +10 -0
  330. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  331. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +10 -0
  332. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  333. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +11 -1
  334. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  335. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +11 -1
  336. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  337. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +3 -0
  338. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  339. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +3 -0
  340. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  341. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js +1 -0
  342. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js.map +1 -1
  343. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js +1 -0
  344. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js.map +1 -1
  345. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +2 -0
  346. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  347. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +2 -0
  348. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  349. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -0
  350. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  351. package/dist/shared/src/containers/Feed/Feed.es.js +1 -0
  352. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  353. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -0
  354. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  355. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +1 -0
  356. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  357. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -0
  358. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
  359. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +1 -0
  360. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
  361. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -0
  362. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
  363. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +1 -0
  364. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
  365. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -0
  366. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
  367. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +1 -0
  368. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
  369. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +2 -1
  370. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
  371. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +2 -1
  372. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
  373. package/dist/shared/src/containers/Feed/components/FileUploadPreview/FileUploadPreview.cjs.js +8 -1
  374. package/dist/shared/src/containers/Feed/components/FileUploadPreview/FileUploadPreview.cjs.js.map +1 -1
  375. package/dist/shared/src/containers/Feed/components/FileUploadPreview/FileUploadPreview.es.js +9 -2
  376. package/dist/shared/src/containers/Feed/components/FileUploadPreview/FileUploadPreview.es.js.map +1 -1
  377. package/dist/shared/src/containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js +9 -0
  378. package/dist/shared/src/containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js.map +1 -1
  379. package/dist/shared/src/containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.es.js +10 -1
  380. package/dist/shared/src/containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.es.js.map +1 -1
  381. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -0
  382. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  383. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +1 -0
  384. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  385. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +3 -0
  386. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  387. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +3 -0
  388. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  389. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +2 -0
  390. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  391. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +2 -0
  392. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  393. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +54 -26
  394. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  395. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +55 -27
  396. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  397. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js +7 -0
  398. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js.map +1 -1
  399. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js +7 -0
  400. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js.map +1 -1
  401. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +53 -14
  402. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  403. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +53 -14
  404. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  405. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +205 -0
  406. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -0
  407. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +205 -0
  408. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -0
  409. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +25 -12
  410. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  411. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +25 -12
  412. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  413. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js +11 -1
  414. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js.map +1 -1
  415. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js +11 -1
  416. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js.map +1 -1
  417. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +2 -0
  418. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  419. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +2 -0
  420. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  421. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js +54 -10
  422. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
  423. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js +55 -11
  424. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
  425. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableModulesContext.cjs.js +137 -0
  426. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableModulesContext.cjs.js.map +1 -0
  427. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableModulesContext.es.js +137 -0
  428. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableModulesContext.es.js.map +1 -0
  429. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js +1 -0
  430. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js.map +1 -1
  431. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.es.js +1 -0
  432. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.es.js.map +1 -1
  433. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.cjs.js +1 -1
  434. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.cjs.js.map +1 -1
  435. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.es.js +1 -1
  436. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.es.js.map +1 -1
  437. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +2 -0
  438. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  439. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +2 -0
  440. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  441. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +187 -0
  442. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -0
  443. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +187 -0
  444. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -0
  445. package/dist/shared/src/containers/ProjectTreeTable/hooks/{useOverviewTable.cjs.js → useBuildProjectDataTable.cjs.js} +4 -4
  446. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -0
  447. package/dist/shared/src/containers/ProjectTreeTable/hooks/{useOverviewTable.es.js → useBuildProjectDataTable.es.js} +4 -4
  448. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -0
  449. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +64 -31
  450. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  451. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +64 -31
  452. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  453. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnSorting.cjs.js +24 -0
  454. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnSorting.cjs.js.map +1 -0
  455. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnSorting.es.js +24 -0
  456. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnSorting.es.js.map +1 -0
  457. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +16 -9
  458. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
  459. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +16 -9
  460. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
  461. package/dist/shared/src/containers/ProjectTreeTable/hooks/useEntitiesMap.cjs.js +17 -0
  462. package/dist/shared/src/containers/ProjectTreeTable/hooks/useEntitiesMap.cjs.js.map +1 -0
  463. package/dist/shared/src/containers/ProjectTreeTable/hooks/useEntitiesMap.es.js +17 -0
  464. package/dist/shared/src/containers/ProjectTreeTable/hooks/useEntitiesMap.es.js.map +1 -0
  465. package/dist/shared/src/containers/ProjectTreeTable/hooks/useExpandedState.cjs.js +30 -0
  466. package/dist/shared/src/containers/ProjectTreeTable/hooks/useExpandedState.cjs.js.map +1 -0
  467. package/dist/shared/src/containers/ProjectTreeTable/hooks/useExpandedState.es.js +30 -0
  468. package/dist/shared/src/containers/ProjectTreeTable/hooks/useExpandedState.es.js.map +1 -0
  469. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +363 -0
  470. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -0
  471. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +363 -0
  472. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -0
  473. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.cjs.js +16 -12
  474. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.cjs.js.map +1 -1
  475. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.es.js +16 -13
  476. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.es.js.map +1 -1
  477. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +239 -0
  478. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -0
  479. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +239 -0
  480. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -0
  481. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js +82 -0
  482. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js.map +1 -0
  483. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js +82 -0
  484. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js.map +1 -0
  485. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +40 -0
  486. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -0
  487. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +40 -0
  488. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -0
  489. package/dist/shared/src/containers/ProjectTreeTable/hooks/useScopedAttributeFields.cjs.js +19 -0
  490. package/dist/shared/src/containers/ProjectTreeTable/hooks/useScopedAttributeFields.cjs.js.map +1 -0
  491. package/dist/shared/src/containers/ProjectTreeTable/hooks/useScopedAttributeFields.es.js +19 -0
  492. package/dist/shared/src/containers/ProjectTreeTable/hooks/useScopedAttributeFields.es.js.map +1 -0
  493. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSelectedFolders.cjs.js +26 -0
  494. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSelectedFolders.cjs.js.map +1 -0
  495. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSelectedFolders.es.js +26 -0
  496. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSelectedFolders.es.js.map +1 -0
  497. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js +7 -4
  498. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js.map +1 -1
  499. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js +7 -4
  500. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js.map +1 -1
  501. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +12 -1
  502. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  503. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +12 -1
  504. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  505. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js.map +1 -1
  506. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js.map +1 -1
  507. package/dist/shared/src/containers/ProjectTreeTable/utils/errorExtraction.cjs.js +8 -0
  508. package/dist/shared/src/containers/ProjectTreeTable/utils/errorExtraction.cjs.js.map +1 -0
  509. package/dist/shared/src/containers/ProjectTreeTable/utils/errorExtraction.es.js +8 -0
  510. package/dist/shared/src/containers/ProjectTreeTable/utils/errorExtraction.es.js.map +1 -0
  511. package/dist/shared/src/containers/ProjectTreeTable/utils/localStorageKeys.cjs.js +7 -0
  512. package/dist/shared/src/containers/ProjectTreeTable/utils/localStorageKeys.cjs.js.map +1 -0
  513. package/dist/shared/src/containers/ProjectTreeTable/utils/localStorageKeys.es.js +7 -0
  514. package/dist/shared/src/containers/ProjectTreeTable/utils/localStorageKeys.es.js.map +1 -0
  515. package/dist/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.cjs.js +0 -1
  516. package/dist/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.cjs.js.map +1 -1
  517. package/dist/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.es.js +0 -1
  518. package/dist/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.es.js.map +1 -1
  519. package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js +109 -0
  520. package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js.map +1 -0
  521. package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.es.js +109 -0
  522. package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.es.js.map +1 -0
  523. package/dist/shared/src/containers/ProjectTreeTable/widgets/LoadMoreWidget.cjs.js +29 -0
  524. package/dist/shared/src/containers/ProjectTreeTable/widgets/LoadMoreWidget.cjs.js.map +1 -0
  525. package/dist/shared/src/containers/ProjectTreeTable/widgets/LoadMoreWidget.es.js +30 -0
  526. package/dist/shared/src/containers/ProjectTreeTable/widgets/LoadMoreWidget.es.js.map +1 -0
  527. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js +0 -8
  528. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js.map +1 -1
  529. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js +0 -8
  530. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js.map +1 -1
  531. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +10 -0
  532. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  533. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +10 -0
  534. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  535. package/dist/shared/src/context/AddonProjectContext.cjs.js +2 -0
  536. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  537. package/dist/shared/src/context/AddonProjectContext.es.js +2 -0
  538. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  539. package/dist/shared/src/context/DetailsPanelContext.cjs.js +3 -0
  540. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  541. package/dist/shared/src/context/DetailsPanelContext.es.js +3 -0
  542. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  543. package/dist/shared/src/context/PowerpackContext.cjs.js +170 -0
  544. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -0
  545. package/dist/shared/src/context/PowerpackContext.es.js +170 -0
  546. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -0
  547. package/dist/shared/src/context/RemoteModulesContext.cjs.js +7 -1
  548. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  549. package/dist/shared/src/context/RemoteModulesContext.es.js +8 -2
  550. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  551. package/dist/shared/src/hooks/useActionTriggers.cjs.js +2 -0
  552. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  553. package/dist/shared/src/hooks/useActionTriggers.es.js +2 -0
  554. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  555. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +3 -0
  556. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  557. package/dist/shared/src/hooks/useEntityUpdate.es.js +3 -0
  558. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  559. package/dist/shared/src/hooks/useLoadModule.cjs.js +8 -2
  560. package/dist/shared/src/hooks/useLoadModule.cjs.js.map +1 -1
  561. package/dist/shared/src/hooks/useLoadModule.es.js +8 -2
  562. package/dist/shared/src/hooks/useLoadModule.es.js.map +1 -1
  563. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +2 -0
  564. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  565. package/dist/shared/src/hooks/useScopedStatuses.es.js +2 -0
  566. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  567. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +2 -0
  568. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  569. package/dist/shared/src/hooks/useUserProjectConfig.es.js +2 -0
  570. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  571. package/dist/shared/src/util/getAttributeIcon.cjs.js +7 -1
  572. package/dist/shared/src/util/getAttributeIcon.cjs.js.map +1 -1
  573. package/dist/shared/src/util/getAttributeIcon.es.js +7 -1
  574. package/dist/shared/src/util/getAttributeIcon.es.js.map +1 -1
  575. package/dist/shared/src/util/getEntityTypeIcon.cjs.js +9 -0
  576. package/dist/shared/src/util/getEntityTypeIcon.cjs.js.map +1 -1
  577. package/dist/shared/src/util/getEntityTypeIcon.es.js +9 -0
  578. package/dist/shared/src/util/getEntityTypeIcon.es.js.map +1 -1
  579. package/dist/types/api/generated/actions.d.ts +2 -1
  580. package/dist/types/api/generated/addons.d.ts +8 -1
  581. package/dist/types/api/generated/anatomy.d.ts +1 -14
  582. package/dist/types/api/generated/attributes.d.ts +4 -2
  583. package/dist/types/api/generated/configuration.d.ts +6 -0
  584. package/dist/types/api/generated/entityLists.d.ts +2 -0
  585. package/dist/types/api/generated/events.d.ts +1 -1
  586. package/dist/types/api/generated/files.d.ts +11 -0
  587. package/dist/types/api/generated/graphql.d.ts +33 -38
  588. package/dist/types/api/generated/grouping.d.ts +40 -0
  589. package/dist/types/api/generated/index.d.ts +3 -1
  590. package/dist/types/api/generated/operations.d.ts +1 -1
  591. package/dist/types/api/generated/projects.d.ts +59 -0
  592. package/dist/types/api/generated/reviewables.d.ts +1 -0
  593. package/dist/types/api/generated/system.d.ts +5 -3
  594. package/dist/types/api/generated/tasks.d.ts +15 -1
  595. package/dist/types/api/generated/users.d.ts +1 -4
  596. package/dist/types/api/queries/activities/getActivities.d.ts +4 -0
  597. package/dist/types/api/queries/activities/updateActivities.d.ts +8 -0
  598. package/dist/types/api/queries/entities/getEntity.d.ts +4 -0
  599. package/dist/types/api/queries/entities/getEntityPanel.d.ts +4 -0
  600. package/dist/types/api/queries/entities/updateEntity.d.ts +4 -0
  601. package/dist/types/api/queries/entityLists/getLists.d.ts +4 -0
  602. package/dist/types/api/queries/grouping/getGrouping.d.ts +137 -0
  603. package/dist/types/api/queries/grouping/index.d.ts +1 -0
  604. package/dist/types/api/queries/index.d.ts +1 -0
  605. package/dist/types/api/queries/overview/getOverview.d.ts +222 -482
  606. package/dist/types/api/queries/project/getProject.d.ts +6 -0
  607. package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +4 -0
  608. package/dist/types/api/queries/users/getUsers.d.ts +4 -0
  609. package/dist/types/components/Badge/Badge.d.ts +10 -0
  610. package/dist/types/components/Badge/index.d.ts +1 -0
  611. package/dist/types/components/Powerpack/PowerpackButton.d.ts +7 -0
  612. package/dist/types/components/Powerpack/PowerpackDialog.d.ts +4 -0
  613. package/dist/types/components/Powerpack/PowerpackDialog.styled.d.ts +8 -0
  614. package/dist/types/components/Powerpack/PricingLink.d.ts +4 -0
  615. package/dist/types/components/Powerpack/index.d.ts +3 -0
  616. package/dist/types/components/ProjectTableSettings/ProjectTableSettings.d.ts +3 -2
  617. package/dist/types/components/ProjectTableSettings/TableSettings.styled.d.ts +1 -0
  618. package/dist/types/components/ProjectTableSettings/TableSettingsFallback.d.ts +10 -0
  619. package/dist/types/components/ProjectTableSettings/index.d.ts +1 -0
  620. package/dist/types/components/ReviewableProgressCard/ReviewableProgressCard.d.ts +1 -1
  621. package/dist/types/components/ReviewablesList/ReviewablesUpload.d.ts +19 -3
  622. package/dist/types/components/index.d.ts +2 -0
  623. package/dist/types/containers/ContextMenu/ContextMenuItem.d.ts +4 -0
  624. package/dist/types/containers/ContextMenu/useCreateContextMenu.d.ts +2 -1
  625. package/dist/types/containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.d.ts +1 -0
  626. package/dist/types/containers/ProjectTreeTable/buildTreeTableColumns.d.ts +3 -1
  627. package/dist/types/containers/ProjectTreeTable/components/GroupSettingsFallback.d.ts +11 -0
  628. package/dist/types/containers/ProjectTreeTable/context/ColumnSettingsContext.d.ts +7 -0
  629. package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +22 -5
  630. package/dist/types/containers/ProjectTreeTable/context/ProjectTableModulesContext.d.ts +32 -0
  631. package/dist/types/containers/ProjectTreeTable/context/index.d.ts +1 -0
  632. package/dist/types/containers/ProjectTreeTable/hooks/index.d.ts +13 -0
  633. package/dist/types/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.d.ts +30 -0
  634. package/dist/types/containers/ProjectTreeTable/hooks/{useOverviewTable.d.ts → useBuildProjectDataTable.d.ts} +3 -1
  635. package/dist/types/containers/ProjectTreeTable/hooks/useCellContextMenu.d.ts +15 -2
  636. package/dist/types/containers/ProjectTreeTable/hooks/useColumnSorting.d.ts +12 -0
  637. package/dist/types/containers/ProjectTreeTable/hooks/useEntitiesMap.d.ts +7 -0
  638. package/dist/types/containers/ProjectTreeTable/hooks/useExpandedState.d.ts +11 -0
  639. package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +37 -0
  640. package/dist/types/containers/ProjectTreeTable/hooks/useFolderRelationships.d.ts +1 -1
  641. package/dist/types/containers/ProjectTreeTable/hooks/useGetEntityTypeData.d.ts +2 -2
  642. package/dist/types/containers/ProjectTreeTable/hooks/useGetGroupedFields.d.ts +9 -0
  643. package/dist/types/containers/ProjectTreeTable/hooks/useGetTaskGroups.d.ts +10 -0
  644. package/dist/types/containers/ProjectTreeTable/hooks/useQueryFilters.d.ts +14 -0
  645. package/dist/types/containers/ProjectTreeTable/hooks/useScopedAttributeFields.d.ts +10 -0
  646. package/dist/types/containers/ProjectTreeTable/hooks/useSelectedFolders.d.ts +10 -0
  647. package/dist/types/containers/ProjectTreeTable/index.d.ts +1 -4
  648. package/dist/types/containers/ProjectTreeTable/types/index.d.ts +1 -0
  649. package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +46 -0
  650. package/dist/types/containers/ProjectTreeTable/types/table.d.ts +13 -5
  651. package/dist/types/containers/ProjectTreeTable/utils/errorExtraction.d.ts +4 -0
  652. package/dist/types/containers/ProjectTreeTable/utils/index.d.ts +2 -0
  653. package/dist/types/containers/ProjectTreeTable/utils/localStorageKeys.d.ts +4 -0
  654. package/dist/types/containers/ProjectTreeTable/widgets/GroupHeaderWidget.d.ts +14 -0
  655. package/dist/types/containers/ProjectTreeTable/widgets/LoadMoreWidget.d.ts +8 -0
  656. package/dist/types/containers/ProjectTreeTable/widgets/index.d.ts +1 -0
  657. package/dist/types/context/PowerpackContext.d.ts +21 -0
  658. package/dist/types/context/index.d.ts +1 -0
  659. package/dist/types/hooks/useLoadModule.d.ts +2 -1
  660. package/dist/types/util/getAttributeIcon.d.ts +1 -1
  661. package/dist/types/util/getEntityTypeIcon.d.ts +1 -0
  662. package/dist/types/utils/extractVersionFromFilename.d.ts +5 -0
  663. package/dist/util.cjs.js +1 -0
  664. package/dist/util.cjs.js.map +1 -1
  665. package/dist/util.es.js +2 -1
  666. package/package.json +1 -1
  667. package/dist/shared/src/containers/ProjectTreeTable/hooks/useOverviewTable.cjs.js.map +0 -1
  668. package/dist/shared/src/containers/ProjectTreeTable/hooks/useOverviewTable.es.js.map +0 -1
@@ -12,7 +12,8 @@ const ColumnSettingsProvider = ({
12
12
  columnOrder: columnOrderInit = [],
13
13
  columnPinning: columnPinningInit = {},
14
14
  columnVisibility = {},
15
- columnSizing: columnsSizingExternal = {}
15
+ columnSizing: columnsSizingExternal = {},
16
+ groupBy
16
17
  } = columnsConfig;
17
18
  const columnOrder = [...columnOrderInit];
18
19
  const columnPinning = { ...columnPinningInit };
@@ -117,6 +118,12 @@ const ColumnSettingsProvider = ({
117
118
  columnPinning: pinning
118
119
  });
119
120
  };
121
+ const updateGroupBy = (groupBy2) => {
122
+ onChange({
123
+ ...columnsConfig,
124
+ groupBy: groupBy2
125
+ });
126
+ };
120
127
  const columnVisibilityUpdater = (columnVisibilityUpdater2) => {
121
128
  const newVisibility = functionalUpdate(columnVisibilityUpdater2, columnVisibility);
122
129
  updateColumnVisibility(newVisibility);
@@ -156,6 +163,9 @@ const ColumnSettingsProvider = ({
156
163
  columnSizing,
157
164
  setColumnSizing,
158
165
  columnSizingUpdater,
166
+ // group by
167
+ groupBy,
168
+ updateGroupBy,
159
169
  // global change
160
170
  setColumnsConfig: onChange
161
171
  },
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnSettingsContext.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ColumnSettingsContext.tsx"],"sourcesContent":["import React, { createContext, useContext, ReactNode, useState } from 'react'\nimport {\n ColumnOrderState,\n ColumnPinningState,\n functionalUpdate,\n OnChangeFn,\n VisibilityState,\n ColumnSizingState,\n} from '@tanstack/react-table'\n\nexport interface ColumnSettingsContextType {\n // Column Visibility\n columnVisibility: VisibilityState\n setColumnVisibility: (columnVisibility: VisibilityState) => void\n updateColumnVisibility: (columnVisibility: VisibilityState) => void\n columnVisibilityUpdater: OnChangeFn<VisibilityState>\n\n // Column Pinning\n columnPinning: ColumnPinningState\n setColumnPinning: (columnPinning: ColumnPinningState) => void\n updateColumnPinning: (columnPinning: ColumnPinningState) => void\n columnPinningUpdater: OnChangeFn<ColumnPinningState>\n\n // Column Order\n columnOrder: ColumnOrderState\n setColumnOrder: (columnOrder: ColumnOrderState) => void\n updateColumnOrder: (columnOrder: ColumnOrderState) => void\n columnOrderUpdater: OnChangeFn<ColumnOrderState>\n\n // Column Sizing\n columnSizing: ColumnSizingState\n setColumnSizing: (columnSizing: ColumnSizingState) => void\n columnSizingUpdater: OnChangeFn<ColumnSizingState>\n\n // Global change\n setColumnsConfig: (config: ColumnsConfig) => void\n}\n\nconst ColumnSettingsContext = createContext<ColumnSettingsContextType | undefined>(undefined)\n\nexport type ColumnsConfig = {\n columnVisibility: VisibilityState\n columnOrder: ColumnOrderState\n columnPinning: ColumnPinningState\n columnSizing: ColumnSizingState // Add this\n}\n\ninterface ColumnSettingsProviderProps {\n children: ReactNode\n config?: Record<string, any>\n onChange: (config: ColumnsConfig) => void\n}\n\nexport const ColumnSettingsProvider: React.FC<ColumnSettingsProviderProps> = ({\n children,\n config,\n onChange,\n}) => {\n const columnsConfig = config as ColumnsConfig\n const {\n columnOrder: columnOrderInit = [],\n columnPinning: columnPinningInit = {},\n columnVisibility = {},\n columnSizing: columnsSizingExternal = {},\n } = columnsConfig\n\n const columnOrder = [...columnOrderInit]\n const columnPinning = { ...columnPinningInit }\n const defaultOrder = ['thumbnail', 'name', 'subType', 'status', 'tags']\n // for each default column, if it is not in the columnOrder, find the index of the column before it, if none, add to beginning\n defaultOrder.forEach((col, i) => {\n if (!columnOrder.includes(col)) {\n const defaultBefore = defaultOrder[i - 1]\n const columnAfter = defaultOrder[i + 1]\n if (!defaultBefore || !columnOrder.includes(defaultBefore)) {\n // add to beginning\n columnOrder.unshift(col)\n } else {\n // find the index of that column in the columnOrder\n const index = columnOrder.indexOf(defaultBefore)\n // add the item after that column\n columnOrder.splice(index + 1, 0, col)\n }\n if (columnAfter && columnPinning?.left && columnPinning?.left.includes(columnAfter)) {\n // pin the column\n columnPinning.left = [col, ...(columnPinning?.left || [])]\n }\n }\n })\n\n // DIRECT STATE UPDATES - no side effects\n const setColumnVisibility = (visibility: VisibilityState) => {\n onChange({\n ...columnsConfig,\n columnVisibility: visibility,\n })\n }\n\n const setColumnOrder = (order: ColumnOrderState) => {\n onChange({\n ...columnsConfig,\n columnOrder: order,\n })\n }\n\n const setColumnPinning = (pinning: ColumnPinningState) => {\n onChange({\n ...columnsConfig,\n columnPinning: pinning,\n })\n }\n\n const [internalColumnSizing, setInternalColumnSizing] = useState<ColumnSizingState | null>(null)\n\n // use internalColumnSizing if it exists, otherwise use the external column sizing\n const columnSizing = internalColumnSizing || columnsSizingExternal\n\n const resizingTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n\n const setColumnSizing = (sizing: ColumnSizingState) => {\n setInternalColumnSizing(sizing)\n\n // if there is a timeout already set, clear it\n if (resizingTimeoutRef.current) {\n clearTimeout(resizingTimeoutRef.current)\n }\n // set a timeout that tracks if the column sizing has finished\n resizingTimeoutRef.current = setTimeout(() => {\n // we have finished resizing now!\n // update the external column sizing\n onChange({\n ...columnsConfig,\n columnSizing: sizing,\n })\n // reset the internal column sizing to not be used anymore\n setInternalColumnSizing(null)\n }, 500)\n }\n\n // SIDE EFFECT UTILITIES\n const togglePinningOnVisibilityChange = (visibility: VisibilityState) => {\n // ensure that any columns that are now hidden are removed from the pinning\n const newPinning = { ...columnPinning }\n const pinnedColumns = newPinning.left || []\n const hiddenColumns = Object.keys(visibility).filter((col) => visibility[col] === false)\n const newPinnedColumns = pinnedColumns.filter((col) => !hiddenColumns.includes(col))\n\n return {\n ...newPinning,\n left: newPinnedColumns,\n }\n }\n\n const updatePinningOrderOnOrderChange = (order: ColumnOrderState) => {\n // ensure that the column pinning is in the order of the column order\n const newPinning = { ...columnPinning }\n const pinnedColumns = newPinning.left || []\n const pinnedColumnsOrder = order.filter((col) => pinnedColumns.includes(col))\n\n return {\n ...newPinning,\n left: pinnedColumnsOrder,\n }\n }\n\n const updateOrderOnPinningChange = (pinning: ColumnPinningState) => {\n // we resort the column order based on the pinning\n return [...columnOrder].sort((a, b) => {\n const aPinned = pinning.left?.includes(a) ? 1 : 0\n const bPinned = pinning.left?.includes(b) ? 1 : 0\n return bPinned - aPinned\n })\n }\n\n // UPDATE METHODS WITH SIDE EFFECTS\n const updateColumnVisibility = (visibility: VisibilityState) => {\n const newPinning = togglePinningOnVisibilityChange(visibility)\n onChange({\n ...columnsConfig,\n columnVisibility: visibility,\n columnPinning: newPinning,\n })\n }\n\n const updateColumnOrder = (order: ColumnOrderState) => {\n const newPinning = updatePinningOrderOnOrderChange(order)\n onChange({\n ...columnsConfig,\n columnOrder: order,\n columnPinning: newPinning,\n })\n }\n\n const updateColumnPinning = (pinning: ColumnPinningState) => {\n const newOrder = updateOrderOnPinningChange(pinning)\n onChange({\n ...columnsConfig,\n columnOrder: newOrder,\n columnPinning: pinning,\n })\n }\n\n // UPDATER FUNCTIONS\n const columnVisibilityUpdater: OnChangeFn<VisibilityState> = (columnVisibilityUpdater) => {\n const newVisibility = functionalUpdate(columnVisibilityUpdater, columnVisibility)\n updateColumnVisibility(newVisibility)\n }\n\n const columnOrderUpdater: OnChangeFn<ColumnOrderState> = (columnOrderUpdater) => {\n const newOrder = functionalUpdate(columnOrderUpdater, columnOrder)\n updateColumnOrder(newOrder)\n }\n\n const columnPinningUpdater: OnChangeFn<ColumnPinningState> = (columnPinningUpdater) => {\n const newPinning = functionalUpdate(columnPinningUpdater, columnPinning)\n updateColumnPinning(newPinning)\n }\n\n const columnSizingUpdater: OnChangeFn<ColumnSizingState> = (sizingUpdater) => {\n const newSizing = functionalUpdate(sizingUpdater, columnSizing)\n setColumnSizing(newSizing)\n }\n\n return (\n <ColumnSettingsContext.Provider\n value={{\n // column visibility\n columnVisibility,\n setColumnVisibility,\n updateColumnVisibility,\n columnVisibilityUpdater,\n // column pinning\n columnPinning,\n setColumnPinning,\n updateColumnPinning,\n columnPinningUpdater,\n // column order\n columnOrder,\n setColumnOrder,\n updateColumnOrder,\n columnOrderUpdater,\n // column sizing\n columnSizing,\n setColumnSizing,\n columnSizingUpdater,\n // global change\n setColumnsConfig: onChange,\n }}\n >\n {children}\n </ColumnSettingsContext.Provider>\n )\n}\n\nexport const useColumnSettingsContext = (): ColumnSettingsContextType => {\n const context = useContext(ColumnSettingsContext)\n if (!context) {\n throw new Error('useColumnSettingsContext must be used within a ColumnSettingsProvider')\n }\n return context\n}\n"],"names":["React","columnVisibilityUpdater","columnOrderUpdater","columnPinningUpdater","jsx"],"mappings":"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"}
1
+ {"version":3,"file":"ColumnSettingsContext.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ColumnSettingsContext.tsx"],"sourcesContent":["import React, { createContext, useContext, ReactNode, useState } from 'react'\nimport {\n ColumnOrderState,\n ColumnPinningState,\n functionalUpdate,\n OnChangeFn,\n VisibilityState,\n ColumnSizingState,\n} from '@tanstack/react-table'\n\nexport interface TableGroupBy {\n desc: boolean\n id: string\n}\n\nexport interface ColumnSettingsContextType {\n // Column Visibility\n columnVisibility: VisibilityState\n setColumnVisibility: (columnVisibility: VisibilityState) => void\n updateColumnVisibility: (columnVisibility: VisibilityState) => void\n columnVisibilityUpdater: OnChangeFn<VisibilityState>\n\n // Column Pinning\n columnPinning: ColumnPinningState\n setColumnPinning: (columnPinning: ColumnPinningState) => void\n updateColumnPinning: (columnPinning: ColumnPinningState) => void\n columnPinningUpdater: OnChangeFn<ColumnPinningState>\n\n // Column Order\n columnOrder: ColumnOrderState\n setColumnOrder: (columnOrder: ColumnOrderState) => void\n updateColumnOrder: (columnOrder: ColumnOrderState) => void\n columnOrderUpdater: OnChangeFn<ColumnOrderState>\n\n // Column Sizing\n columnSizing: ColumnSizingState\n setColumnSizing: (columnSizing: ColumnSizingState) => void\n columnSizingUpdater: OnChangeFn<ColumnSizingState>\n\n // groupBy\n updateGroupBy: (groupBy: TableGroupBy | undefined) => void\n groupBy?: TableGroupBy\n\n // Global change\n setColumnsConfig: (config: ColumnsConfig) => void\n}\n\nconst ColumnSettingsContext = createContext<ColumnSettingsContextType | undefined>(undefined)\n\nexport type ColumnsConfig = {\n columnVisibility: VisibilityState\n columnOrder: ColumnOrderState\n columnPinning: ColumnPinningState\n columnSizing: ColumnSizingState\n groupBy?: TableGroupBy\n}\n\ninterface ColumnSettingsProviderProps {\n children: ReactNode\n config?: Record<string, any>\n onChange: (config: ColumnsConfig) => void\n}\n\nexport const ColumnSettingsProvider: React.FC<ColumnSettingsProviderProps> = ({\n children,\n config,\n onChange,\n}) => {\n const columnsConfig = config as ColumnsConfig\n const {\n columnOrder: columnOrderInit = [],\n columnPinning: columnPinningInit = {},\n columnVisibility = {},\n columnSizing: columnsSizingExternal = {},\n groupBy,\n } = columnsConfig\n\n const columnOrder = [...columnOrderInit]\n const columnPinning = { ...columnPinningInit }\n const defaultOrder = ['thumbnail', 'name', 'subType', 'status', 'tags']\n // for each default column, if it is not in the columnOrder, find the index of the column before it, if none, add to beginning\n defaultOrder.forEach((col, i) => {\n if (!columnOrder.includes(col)) {\n const defaultBefore = defaultOrder[i - 1]\n const columnAfter = defaultOrder[i + 1]\n if (!defaultBefore || !columnOrder.includes(defaultBefore)) {\n // add to beginning\n columnOrder.unshift(col)\n } else {\n // find the index of that column in the columnOrder\n const index = columnOrder.indexOf(defaultBefore)\n // add the item after that column\n columnOrder.splice(index + 1, 0, col)\n }\n if (columnAfter && columnPinning?.left && columnPinning?.left.includes(columnAfter)) {\n // pin the column\n columnPinning.left = [col, ...(columnPinning?.left || [])]\n }\n }\n })\n\n // DIRECT STATE UPDATES - no side effects\n const setColumnVisibility = (visibility: VisibilityState) => {\n onChange({\n ...columnsConfig,\n columnVisibility: visibility,\n })\n }\n\n const setColumnOrder = (order: ColumnOrderState) => {\n onChange({\n ...columnsConfig,\n columnOrder: order,\n })\n }\n\n const setColumnPinning = (pinning: ColumnPinningState) => {\n onChange({\n ...columnsConfig,\n columnPinning: pinning,\n })\n }\n\n const [internalColumnSizing, setInternalColumnSizing] = useState<ColumnSizingState | null>(null)\n\n // use internalColumnSizing if it exists, otherwise use the external column sizing\n const columnSizing = internalColumnSizing || columnsSizingExternal\n\n const resizingTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n\n const setColumnSizing = (sizing: ColumnSizingState) => {\n setInternalColumnSizing(sizing)\n\n // if there is a timeout already set, clear it\n if (resizingTimeoutRef.current) {\n clearTimeout(resizingTimeoutRef.current)\n }\n // set a timeout that tracks if the column sizing has finished\n resizingTimeoutRef.current = setTimeout(() => {\n // we have finished resizing now!\n // update the external column sizing\n onChange({\n ...columnsConfig,\n columnSizing: sizing,\n })\n // reset the internal column sizing to not be used anymore\n setInternalColumnSizing(null)\n }, 500)\n }\n\n // SIDE EFFECT UTILITIES\n const togglePinningOnVisibilityChange = (visibility: VisibilityState) => {\n // ensure that any columns that are now hidden are removed from the pinning\n const newPinning = { ...columnPinning }\n const pinnedColumns = newPinning.left || []\n const hiddenColumns = Object.keys(visibility).filter((col) => visibility[col] === false)\n const newPinnedColumns = pinnedColumns.filter((col) => !hiddenColumns.includes(col))\n\n return {\n ...newPinning,\n left: newPinnedColumns,\n }\n }\n\n const updatePinningOrderOnOrderChange = (order: ColumnOrderState) => {\n // ensure that the column pinning is in the order of the column order\n const newPinning = { ...columnPinning }\n const pinnedColumns = newPinning.left || []\n const pinnedColumnsOrder = order.filter((col) => pinnedColumns.includes(col))\n\n return {\n ...newPinning,\n left: pinnedColumnsOrder,\n }\n }\n\n const updateOrderOnPinningChange = (pinning: ColumnPinningState) => {\n // we resort the column order based on the pinning\n return [...columnOrder].sort((a, b) => {\n const aPinned = pinning.left?.includes(a) ? 1 : 0\n const bPinned = pinning.left?.includes(b) ? 1 : 0\n return bPinned - aPinned\n })\n }\n\n // UPDATE METHODS WITH SIDE EFFECTS\n const updateColumnVisibility = (visibility: VisibilityState) => {\n const newPinning = togglePinningOnVisibilityChange(visibility)\n onChange({\n ...columnsConfig,\n columnVisibility: visibility,\n columnPinning: newPinning,\n })\n }\n\n const updateColumnOrder = (order: ColumnOrderState) => {\n const newPinning = updatePinningOrderOnOrderChange(order)\n onChange({\n ...columnsConfig,\n columnOrder: order,\n columnPinning: newPinning,\n })\n }\n\n const updateColumnPinning = (pinning: ColumnPinningState) => {\n const newOrder = updateOrderOnPinningChange(pinning)\n onChange({\n ...columnsConfig,\n columnOrder: newOrder,\n columnPinning: pinning,\n })\n }\n\n const updateGroupBy = (groupBy: TableGroupBy | undefined) => {\n onChange({\n ...columnsConfig,\n groupBy: groupBy,\n })\n }\n\n // UPDATER FUNCTIONS\n const columnVisibilityUpdater: OnChangeFn<VisibilityState> = (columnVisibilityUpdater) => {\n const newVisibility = functionalUpdate(columnVisibilityUpdater, columnVisibility)\n updateColumnVisibility(newVisibility)\n }\n\n const columnOrderUpdater: OnChangeFn<ColumnOrderState> = (columnOrderUpdater) => {\n const newOrder = functionalUpdate(columnOrderUpdater, columnOrder)\n updateColumnOrder(newOrder)\n }\n\n const columnPinningUpdater: OnChangeFn<ColumnPinningState> = (columnPinningUpdater) => {\n const newPinning = functionalUpdate(columnPinningUpdater, columnPinning)\n updateColumnPinning(newPinning)\n }\n\n const columnSizingUpdater: OnChangeFn<ColumnSizingState> = (sizingUpdater) => {\n const newSizing = functionalUpdate(sizingUpdater, columnSizing)\n setColumnSizing(newSizing)\n }\n\n return (\n <ColumnSettingsContext.Provider\n value={{\n // column visibility\n columnVisibility,\n setColumnVisibility,\n updateColumnVisibility,\n columnVisibilityUpdater,\n // column pinning\n columnPinning,\n setColumnPinning,\n updateColumnPinning,\n columnPinningUpdater,\n // column order\n columnOrder,\n setColumnOrder,\n updateColumnOrder,\n columnOrderUpdater,\n // column sizing\n columnSizing,\n setColumnSizing,\n columnSizingUpdater,\n // group by\n groupBy,\n updateGroupBy,\n\n // global change\n setColumnsConfig: onChange,\n }}\n >\n {children}\n </ColumnSettingsContext.Provider>\n )\n}\n\nexport const useColumnSettingsContext = (): ColumnSettingsContextType => {\n const context = useContext(ColumnSettingsContext)\n if (!context) {\n throw new Error('useColumnSettingsContext must be used within a ColumnSettingsProvider')\n }\n return context\n}\n"],"names":["React","groupBy","columnVisibilityUpdater","columnOrderUpdater","columnPinningUpdater","jsx"],"mappings":";;;AA+CA,MAAM,wBAAwB,cAAqD,MAAS;AAgBrF,MAAM,yBAAgE,CAAC;AAAA,EAC5E;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,gBAAgB;AAChB,QAAA;AAAA,IACJ,aAAa,kBAAkB,CAAC;AAAA,IAChC,eAAe,oBAAoB,CAAC;AAAA,IACpC,mBAAmB,CAAC;AAAA,IACpB,cAAc,wBAAwB,CAAC;AAAA,IACvC;AAAA,EAAA,IACE;AAEE,QAAA,cAAc,CAAC,GAAG,eAAe;AACjC,QAAA,gBAAgB,EAAE,GAAG,kBAAkB;AAC7C,QAAM,eAAe,CAAC,aAAa,QAAQ,WAAW,UAAU,MAAM;AAEzD,eAAA,QAAQ,CAAC,KAAK,MAAM;AAC/B,QAAI,CAAC,YAAY,SAAS,GAAG,GAAG;AACxB,YAAA,gBAAgB,aAAa,IAAI,CAAC;AAClC,YAAA,cAAc,aAAa,IAAI,CAAC;AACtC,UAAI,CAAC,iBAAiB,CAAC,YAAY,SAAS,aAAa,GAAG;AAE1D,oBAAY,QAAQ,GAAG;AAAA,MAAA,OAClB;AAEC,cAAA,QAAQ,YAAY,QAAQ,aAAa;AAE/C,oBAAY,OAAO,QAAQ,GAAG,GAAG,GAAG;AAAA,MAAA;AAEtC,UAAI,gBAAe,+CAAe,UAAQ,+CAAe,KAAK,SAAS,eAAc;AAEnF,sBAAc,OAAO,CAAC,KAAK,IAAI,+CAAe,SAAQ,EAAG;AAAA,MAAA;AAAA,IAC3D;AAAA,EACF,CACD;AAGK,QAAA,sBAAsB,CAAC,eAAgC;AAClD,aAAA;AAAA,MACP,GAAG;AAAA,MACH,kBAAkB;AAAA,IAAA,CACnB;AAAA,EACH;AAEM,QAAA,iBAAiB,CAAC,UAA4B;AACzC,aAAA;AAAA,MACP,GAAG;AAAA,MACH,aAAa;AAAA,IAAA,CACd;AAAA,EACH;AAEM,QAAA,mBAAmB,CAAC,YAAgC;AAC/C,aAAA;AAAA,MACP,GAAG;AAAA,MACH,eAAe;AAAA,IAAA,CAChB;AAAA,EACH;AAEA,QAAM,CAAC,sBAAsB,uBAAuB,IAAI,SAAmC,IAAI;AAG/F,QAAM,eAAe,wBAAwB;AAEvC,QAAA,qBAAqBA,eAAM,OAA8B,IAAI;AAE7D,QAAA,kBAAkB,CAAC,WAA8B;AACrD,4BAAwB,MAAM;AAG9B,QAAI,mBAAmB,SAAS;AAC9B,mBAAa,mBAAmB,OAAO;AAAA,IAAA;AAGtB,uBAAA,UAAU,WAAW,MAAM;AAGnC,eAAA;AAAA,QACP,GAAG;AAAA,QACH,cAAc;AAAA,MAAA,CACf;AAED,8BAAwB,IAAI;AAAA,OAC3B,GAAG;AAAA,EACR;AAGM,QAAA,kCAAkC,CAAC,eAAgC;AAEjE,UAAA,aAAa,EAAE,GAAG,cAAc;AAChC,UAAA,gBAAgB,WAAW,QAAQ,CAAC;AACpC,UAAA,gBAAgB,OAAO,KAAK,UAAU,EAAE,OAAO,CAAC,QAAQ,WAAW,GAAG,MAAM,KAAK;AACjF,UAAA,mBAAmB,cAAc,OAAO,CAAC,QAAQ,CAAC,cAAc,SAAS,GAAG,CAAC;AAE5E,WAAA;AAAA,MACL,GAAG;AAAA,MACH,MAAM;AAAA,IACR;AAAA,EACF;AAEM,QAAA,kCAAkC,CAAC,UAA4B;AAE7D,UAAA,aAAa,EAAE,GAAG,cAAc;AAChC,UAAA,gBAAgB,WAAW,QAAQ,CAAC;AACpC,UAAA,qBAAqB,MAAM,OAAO,CAAC,QAAQ,cAAc,SAAS,GAAG,CAAC;AAErE,WAAA;AAAA,MACL,GAAG;AAAA,MACH,MAAM;AAAA,IACR;AAAA,EACF;AAEM,QAAA,6BAA6B,CAAC,YAAgC;AAElE,WAAO,CAAC,GAAG,WAAW,EAAE,KAAK,CAAC,GAAG,MAAM;;AACrC,YAAM,YAAU,aAAQ,SAAR,mBAAc,SAAS,MAAK,IAAI;AAChD,YAAM,YAAU,aAAQ,SAAR,mBAAc,SAAS,MAAK,IAAI;AAChD,aAAO,UAAU;AAAA,IAAA,CAClB;AAAA,EACH;AAGM,QAAA,yBAAyB,CAAC,eAAgC;AACxD,UAAA,aAAa,gCAAgC,UAAU;AACpD,aAAA;AAAA,MACP,GAAG;AAAA,MACH,kBAAkB;AAAA,MAClB,eAAe;AAAA,IAAA,CAChB;AAAA,EACH;AAEM,QAAA,oBAAoB,CAAC,UAA4B;AAC/C,UAAA,aAAa,gCAAgC,KAAK;AAC/C,aAAA;AAAA,MACP,GAAG;AAAA,MACH,aAAa;AAAA,MACb,eAAe;AAAA,IAAA,CAChB;AAAA,EACH;AAEM,QAAA,sBAAsB,CAAC,YAAgC;AACrD,UAAA,WAAW,2BAA2B,OAAO;AAC1C,aAAA;AAAA,MACP,GAAG;AAAA,MACH,aAAa;AAAA,MACb,eAAe;AAAA,IAAA,CAChB;AAAA,EACH;AAEM,QAAA,gBAAgB,CAACC,aAAsC;AAClD,aAAA;AAAA,MACP,GAAG;AAAA,MACH,SAASA;AAAAA,IAAA,CACV;AAAA,EACH;AAGM,QAAA,0BAAuD,CAACC,6BAA4B;AAClF,UAAA,gBAAgB,iBAAiBA,0BAAyB,gBAAgB;AAChF,2BAAuB,aAAa;AAAA,EACtC;AAEM,QAAA,qBAAmD,CAACC,wBAAuB;AACzE,UAAA,WAAW,iBAAiBA,qBAAoB,WAAW;AACjE,sBAAkB,QAAQ;AAAA,EAC5B;AAEM,QAAA,uBAAuD,CAACC,0BAAyB;AAC/E,UAAA,aAAa,iBAAiBA,uBAAsB,aAAa;AACvE,wBAAoB,UAAU;AAAA,EAChC;AAEM,QAAA,sBAAqD,CAAC,kBAAkB;AACtE,UAAA,YAAY,iBAAiB,eAAe,YAAY;AAC9D,oBAAgB,SAAS;AAAA,EAC3B;AAGE,SAAAC,kCAAA;AAAA,IAAC,sBAAsB;AAAA,IAAtB;AAAA,MACC,OAAO;AAAA;AAAA,QAEL;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA;AAAA,QAGA,kBAAkB;AAAA,MACpB;AAAA,MAEC;AAAA,IAAA;AAAA,EACH;AAEJ;AAEO,MAAM,2BAA2B,MAAiC;AACjE,QAAA,UAAU,WAAW,qBAAqB;AAChD,MAAI,CAAC,SAAS;AACN,UAAA,IAAI,MAAM,uEAAuE;AAAA,EAAA;AAElF,SAAA;AACT;"}
@@ -37,6 +37,7 @@ require("../../../api/generated/users.cjs.js");
37
37
  require("../../../api/generated/versions.cjs.js");
38
38
  require("../../../api/generated/workfiles.cjs.js");
39
39
  require("../../../api/generated/ynputCloud.cjs.js");
40
+ require("../../../api/generated/grouping.cjs.js");
40
41
  require("../../../api/queries/actions/getActions.cjs.js");
41
42
  require("../../../api/queries/activities/getActivities.cjs.js");
42
43
  require("../../../api/queries/activities/updateActivities.cjs.js");
@@ -67,6 +68,7 @@ const getUsers = require("../../../api/queries/users/getUsers.cjs.js");
67
68
  require("../../../api/queries/users/updateUsers.cjs.js");
68
69
  require("../../../api/queries/watchers/getWatchers.cjs.js");
69
70
  require("../../../api/queries/permissions/getPermissions.cjs.js");
71
+ require("../../../api/queries/grouping/getGrouping.cjs.js");
70
72
  const useAttributesList = require("../hooks/useAttributesList.cjs.js");
71
73
  const ProjectDataContext = React.createContext(void 0);
72
74
  const ProjectDataProvider = ({ children, projectName }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectDataContext.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectDataContext.tsx"],"sourcesContent":["import { createContext, ReactNode, useContext, useMemo } from 'react'\nimport { useGetUsersAssigneeQuery, useGetProjectQuery } from '@shared/api'\nimport type { ProjectModel } from '@shared/api'\nimport useAttributeFields, { ProjectTableAttribute } from '../hooks/useAttributesList'\n\ntype User = {\n name: string\n fullName: string\n}\n\nexport interface ProjectDataContextProps {\n isInitialized: boolean\n isLoading: boolean\n // Project Info\n projectInfo?: ProjectModel\n projectName: string\n users: User[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n}\n\nconst ProjectDataContext = createContext<ProjectDataContextProps | undefined>(undefined)\n\ninterface ProjectDataProviderProps {\n children: ReactNode\n projectName: string\n}\n\nexport const ProjectDataProvider = ({ children, projectName }: ProjectDataProviderProps) => {\n // GET PROJECT DATA\n const {\n data: projectInfo,\n isSuccess: isSuccessProject,\n isFetching: isFetchingProject,\n } = useGetProjectQuery({ projectName }, { skip: !projectName })\n\n const {\n attribFields,\n isSuccess: isSuccessAttribs,\n isFetching: isFetchingAttribs,\n } = useAttributeFields({ projectName })\n\n // GET USERS\n const { data: usersData = [] } = useGetUsersAssigneeQuery({ projectName }, { skip: !projectName })\n const users = usersData as User[]\n\n const isInitialized =\n isSuccessProject && isSuccessAttribs && !isFetchingProject && !isFetchingAttribs\n\n const value = useMemo(\n () => ({\n isInitialized,\n isLoading: isFetchingProject || isFetchingAttribs,\n projectInfo,\n projectName,\n users,\n attribFields,\n }),\n [\n isInitialized,\n isFetchingProject,\n isFetchingAttribs,\n projectInfo,\n projectName,\n users,\n attribFields,\n ],\n )\n\n return <ProjectDataContext.Provider value={value}>{children}</ProjectDataContext.Provider>\n}\n\nexport const useProjectDataContext = () => {\n const context = useContext(ProjectDataContext)\n if (!context) {\n throw new Error('useProjectDataContext must be used within a ProjectDataProvider')\n }\n return context\n}\n"],"names":["createContext","useGetProjectQuery","useAttributeFields","useGetUsersAssigneeQuery","useMemo","jsx","useContext"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,MAAM,qBAAqBA,oBAAmD,MAAS;AAOhF,MAAM,sBAAsB,CAAC,EAAE,UAAU,kBAA4C;AAEpF,QAAA;AAAA,IACJ,MAAM;AAAA,IACN,WAAW;AAAA,IACX,YAAY;AAAA,EAAA,IACVC,WAAAA,mBAAmB,EAAE,YAAA,GAAe,EAAE,MAAM,CAAC,aAAa;AAExD,QAAA;AAAA,IACJ;AAAA,IACA,WAAW;AAAA,IACX,YAAY;AAAA,EAAA,IACVC,kBAAmB,EAAE,aAAa;AAGtC,QAAM,EAAE,MAAM,YAAY,CAAA,MAAOC,SAAAA,yBAAyB,EAAE,eAAe,EAAE,MAAM,CAAC,aAAa;AACjG,QAAM,QAAQ;AAEd,QAAM,gBACJ,oBAAoB,oBAAoB,CAAC,qBAAqB,CAAC;AAEjE,QAAM,QAAQC,MAAA;AAAA,IACZ,OAAO;AAAA,MACL;AAAA,MACA,WAAW,qBAAqB;AAAA,MAChC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,IAEF;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EAEJ;AAEA,SAAQC,2BAAAA,kBAAAA,IAAA,mBAAmB,UAAnB,EAA4B,OAAe,SAAS,CAAA;AAC9D;AAEO,MAAM,wBAAwB,MAAM;AACnC,QAAA,UAAUC,iBAAW,kBAAkB;AAC7C,MAAI,CAAC,SAAS;AACN,UAAA,IAAI,MAAM,iEAAiE;AAAA,EAAA;AAE5E,SAAA;AACT;;;"}
1
+ {"version":3,"file":"ProjectDataContext.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectDataContext.tsx"],"sourcesContent":["import { createContext, ReactNode, useContext, useMemo } from 'react'\nimport { useGetUsersAssigneeQuery, useGetProjectQuery } from '@shared/api'\nimport type { ProjectModel } from '@shared/api'\nimport useAttributeFields, { ProjectTableAttribute } from '../hooks/useAttributesList'\n\ntype User = {\n name: string\n fullName: string\n}\n\nexport interface ProjectDataContextProps {\n isInitialized: boolean\n isLoading: boolean\n // Project Info\n projectInfo?: ProjectModel\n projectName: string\n users: User[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n}\n\nconst ProjectDataContext = createContext<ProjectDataContextProps | undefined>(undefined)\n\ninterface ProjectDataProviderProps {\n children: ReactNode\n projectName: string\n}\n\nexport const ProjectDataProvider = ({ children, projectName }: ProjectDataProviderProps) => {\n // GET PROJECT DATA\n const {\n data: projectInfo,\n isSuccess: isSuccessProject,\n isFetching: isFetchingProject,\n } = useGetProjectQuery({ projectName }, { skip: !projectName })\n\n const {\n attribFields,\n isSuccess: isSuccessAttribs,\n isFetching: isFetchingAttribs,\n } = useAttributeFields({ projectName })\n\n // GET USERS\n const { data: usersData = [] } = useGetUsersAssigneeQuery({ projectName }, { skip: !projectName })\n const users = usersData as User[]\n\n const isInitialized =\n isSuccessProject && isSuccessAttribs && !isFetchingProject && !isFetchingAttribs\n\n const value = useMemo(\n () => ({\n isInitialized,\n isLoading: isFetchingProject || isFetchingAttribs,\n projectInfo,\n projectName,\n users,\n attribFields,\n }),\n [\n isInitialized,\n isFetchingProject,\n isFetchingAttribs,\n projectInfo,\n projectName,\n users,\n attribFields,\n ],\n )\n\n return <ProjectDataContext.Provider value={value}>{children}</ProjectDataContext.Provider>\n}\n\nexport const useProjectDataContext = () => {\n const context = useContext(ProjectDataContext)\n if (!context) {\n throw new Error('useProjectDataContext must be used within a ProjectDataProvider')\n }\n return context\n}\n"],"names":["createContext","useGetProjectQuery","useAttributeFields","useGetUsersAssigneeQuery","useMemo","jsx","useContext"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,MAAM,qBAAqBA,oBAAmD,MAAS;AAOhF,MAAM,sBAAsB,CAAC,EAAE,UAAU,kBAA4C;AAEpF,QAAA;AAAA,IACJ,MAAM;AAAA,IACN,WAAW;AAAA,IACX,YAAY;AAAA,EAAA,IACVC,WAAAA,mBAAmB,EAAE,YAAA,GAAe,EAAE,MAAM,CAAC,aAAa;AAExD,QAAA;AAAA,IACJ;AAAA,IACA,WAAW;AAAA,IACX,YAAY;AAAA,EAAA,IACVC,kBAAmB,EAAE,aAAa;AAGtC,QAAM,EAAE,MAAM,YAAY,CAAA,MAAOC,SAAAA,yBAAyB,EAAE,eAAe,EAAE,MAAM,CAAC,aAAa;AACjG,QAAM,QAAQ;AAEd,QAAM,gBACJ,oBAAoB,oBAAoB,CAAC,qBAAqB,CAAC;AAEjE,QAAM,QAAQC,MAAA;AAAA,IACZ,OAAO;AAAA,MACL;AAAA,MACA,WAAW,qBAAqB;AAAA,MAChC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,IAEF;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EAEJ;AAEA,SAAQC,2BAAAA,kBAAAA,IAAA,mBAAmB,UAAnB,EAA4B,OAAe,SAAS,CAAA;AAC9D;AAEO,MAAM,wBAAwB,MAAM;AACnC,QAAA,UAAUC,iBAAW,kBAAkB;AAC7C,MAAI,CAAC,SAAS;AACN,UAAA,IAAI,MAAM,iEAAiE;AAAA,EAAA;AAE5E,SAAA;AACT;;;"}
@@ -35,6 +35,7 @@ import "../../../api/generated/users.es.js";
35
35
  import "../../../api/generated/versions.es.js";
36
36
  import "../../../api/generated/workfiles.es.js";
37
37
  import "../../../api/generated/ynputCloud.es.js";
38
+ import "../../../api/generated/grouping.es.js";
38
39
  import "../../../api/queries/actions/getActions.es.js";
39
40
  import "../../../api/queries/activities/getActivities.es.js";
40
41
  import "../../../api/queries/activities/updateActivities.es.js";
@@ -65,6 +66,7 @@ import { useGetUsersAssigneeQuery } from "../../../api/queries/users/getUsers.es
65
66
  import "../../../api/queries/users/updateUsers.es.js";
66
67
  import "../../../api/queries/watchers/getWatchers.es.js";
67
68
  import "../../../api/queries/permissions/getPermissions.es.js";
69
+ import "../../../api/queries/grouping/getGrouping.es.js";
68
70
  import useAttributeFields from "../hooks/useAttributesList.es.js";
69
71
  const ProjectDataContext = createContext(void 0);
70
72
  const ProjectDataProvider = ({ children, projectName }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectDataContext.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectDataContext.tsx"],"sourcesContent":["import { createContext, ReactNode, useContext, useMemo } from 'react'\nimport { useGetUsersAssigneeQuery, useGetProjectQuery } from '@shared/api'\nimport type { ProjectModel } from '@shared/api'\nimport useAttributeFields, { ProjectTableAttribute } from '../hooks/useAttributesList'\n\ntype User = {\n name: string\n fullName: string\n}\n\nexport interface ProjectDataContextProps {\n isInitialized: boolean\n isLoading: boolean\n // Project Info\n projectInfo?: ProjectModel\n projectName: string\n users: User[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n}\n\nconst ProjectDataContext = createContext<ProjectDataContextProps | undefined>(undefined)\n\ninterface ProjectDataProviderProps {\n children: ReactNode\n projectName: string\n}\n\nexport const ProjectDataProvider = ({ children, projectName }: ProjectDataProviderProps) => {\n // GET PROJECT DATA\n const {\n data: projectInfo,\n isSuccess: isSuccessProject,\n isFetching: isFetchingProject,\n } = useGetProjectQuery({ projectName }, { skip: !projectName })\n\n const {\n attribFields,\n isSuccess: isSuccessAttribs,\n isFetching: isFetchingAttribs,\n } = useAttributeFields({ projectName })\n\n // GET USERS\n const { data: usersData = [] } = useGetUsersAssigneeQuery({ projectName }, { skip: !projectName })\n const users = usersData as User[]\n\n const isInitialized =\n isSuccessProject && isSuccessAttribs && !isFetchingProject && !isFetchingAttribs\n\n const value = useMemo(\n () => ({\n isInitialized,\n isLoading: isFetchingProject || isFetchingAttribs,\n projectInfo,\n projectName,\n users,\n attribFields,\n }),\n [\n isInitialized,\n isFetchingProject,\n isFetchingAttribs,\n projectInfo,\n projectName,\n users,\n attribFields,\n ],\n )\n\n return <ProjectDataContext.Provider value={value}>{children}</ProjectDataContext.Provider>\n}\n\nexport const useProjectDataContext = () => {\n const context = useContext(ProjectDataContext)\n if (!context) {\n throw new Error('useProjectDataContext must be used within a ProjectDataProvider')\n }\n return context\n}\n"],"names":["jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,MAAM,qBAAqB,cAAmD,MAAS;AAOhF,MAAM,sBAAsB,CAAC,EAAE,UAAU,kBAA4C;AAEpF,QAAA;AAAA,IACJ,MAAM;AAAA,IACN,WAAW;AAAA,IACX,YAAY;AAAA,EAAA,IACV,mBAAmB,EAAE,YAAA,GAAe,EAAE,MAAM,CAAC,aAAa;AAExD,QAAA;AAAA,IACJ;AAAA,IACA,WAAW;AAAA,IACX,YAAY;AAAA,EAAA,IACV,mBAAmB,EAAE,aAAa;AAGtC,QAAM,EAAE,MAAM,YAAY,CAAA,MAAO,yBAAyB,EAAE,eAAe,EAAE,MAAM,CAAC,aAAa;AACjG,QAAM,QAAQ;AAEd,QAAM,gBACJ,oBAAoB,oBAAoB,CAAC,qBAAqB,CAAC;AAEjE,QAAM,QAAQ;AAAA,IACZ,OAAO;AAAA,MACL;AAAA,MACA,WAAW,qBAAqB;AAAA,MAChC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,IAEF;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EAEJ;AAEA,SAAQA,kCAAAA,IAAA,mBAAmB,UAAnB,EAA4B,OAAe,SAAS,CAAA;AAC9D;AAEO,MAAM,wBAAwB,MAAM;AACnC,QAAA,UAAU,WAAW,kBAAkB;AAC7C,MAAI,CAAC,SAAS;AACN,UAAA,IAAI,MAAM,iEAAiE;AAAA,EAAA;AAE5E,SAAA;AACT;"}
1
+ {"version":3,"file":"ProjectDataContext.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectDataContext.tsx"],"sourcesContent":["import { createContext, ReactNode, useContext, useMemo } from 'react'\nimport { useGetUsersAssigneeQuery, useGetProjectQuery } from '@shared/api'\nimport type { ProjectModel } from '@shared/api'\nimport useAttributeFields, { ProjectTableAttribute } from '../hooks/useAttributesList'\n\ntype User = {\n name: string\n fullName: string\n}\n\nexport interface ProjectDataContextProps {\n isInitialized: boolean\n isLoading: boolean\n // Project Info\n projectInfo?: ProjectModel\n projectName: string\n users: User[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n}\n\nconst ProjectDataContext = createContext<ProjectDataContextProps | undefined>(undefined)\n\ninterface ProjectDataProviderProps {\n children: ReactNode\n projectName: string\n}\n\nexport const ProjectDataProvider = ({ children, projectName }: ProjectDataProviderProps) => {\n // GET PROJECT DATA\n const {\n data: projectInfo,\n isSuccess: isSuccessProject,\n isFetching: isFetchingProject,\n } = useGetProjectQuery({ projectName }, { skip: !projectName })\n\n const {\n attribFields,\n isSuccess: isSuccessAttribs,\n isFetching: isFetchingAttribs,\n } = useAttributeFields({ projectName })\n\n // GET USERS\n const { data: usersData = [] } = useGetUsersAssigneeQuery({ projectName }, { skip: !projectName })\n const users = usersData as User[]\n\n const isInitialized =\n isSuccessProject && isSuccessAttribs && !isFetchingProject && !isFetchingAttribs\n\n const value = useMemo(\n () => ({\n isInitialized,\n isLoading: isFetchingProject || isFetchingAttribs,\n projectInfo,\n projectName,\n users,\n attribFields,\n }),\n [\n isInitialized,\n isFetchingProject,\n isFetchingAttribs,\n projectInfo,\n projectName,\n users,\n attribFields,\n ],\n )\n\n return <ProjectDataContext.Provider value={value}>{children}</ProjectDataContext.Provider>\n}\n\nexport const useProjectDataContext = () => {\n const context = useContext(ProjectDataContext)\n if (!context) {\n throw new Error('useProjectDataContext must be used within a ProjectDataProvider')\n }\n return context\n}\n"],"names":["jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,MAAM,qBAAqB,cAAmD,MAAS;AAOhF,MAAM,sBAAsB,CAAC,EAAE,UAAU,kBAA4C;AAEpF,QAAA;AAAA,IACJ,MAAM;AAAA,IACN,WAAW;AAAA,IACX,YAAY;AAAA,EAAA,IACV,mBAAmB,EAAE,YAAA,GAAe,EAAE,MAAM,CAAC,aAAa;AAExD,QAAA;AAAA,IACJ;AAAA,IACA,WAAW;AAAA,IACX,YAAY;AAAA,EAAA,IACV,mBAAmB,EAAE,aAAa;AAGtC,QAAM,EAAE,MAAM,YAAY,CAAA,MAAO,yBAAyB,EAAE,eAAe,EAAE,MAAM,CAAC,aAAa;AACjG,QAAM,QAAQ;AAEd,QAAM,gBACJ,oBAAoB,oBAAoB,CAAC,qBAAqB,CAAC;AAEjE,QAAM,QAAQ;AAAA,IACZ,OAAO;AAAA,MACL;AAAA,MACA,WAAW,qBAAqB;AAAA,MAChC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,IAEF;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EAEJ;AAEA,SAAQA,kCAAAA,IAAA,mBAAmB,UAAnB,EAA4B,OAAe,SAAS,CAAA;AAC9D;AAEO,MAAM,wBAAwB,MAAM;AACnC,QAAA,UAAU,WAAW,kBAAkB;AAC7C,MAAI,CAAC,SAAS;AACN,UAAA,IAAI,MAAM,iEAAiE;AAAA,EAAA;AAE5E,SAAA;AACT;"}
@@ -2,8 +2,11 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("../../../../../_virtual/jsx-runtime.cjs.js");
4
4
  const React = require("react");
5
- const useOverviewTable = require("../hooks/useOverviewTable.cjs.js");
5
+ const useBuildProjectDataTable = require("../hooks/useBuildProjectDataTable.cjs.js");
6
6
  const useFolderRelationships = require("../hooks/useFolderRelationships.cjs.js");
7
+ const useBuildGroupByTableData = require("../hooks/useBuildGroupByTableData.cjs.js");
8
+ const ColumnSettingsContext = require("./ColumnSettingsContext.cjs.js");
9
+ const parseRowId = (rowId) => rowId.split(useBuildGroupByTableData.ROW_ID_SEPARATOR)[0] || rowId;
7
10
  const ProjectTableContext = React.createContext(void 0);
8
11
  const ProjectTableProvider = ({
9
12
  children,
@@ -18,10 +21,12 @@ const ProjectTableProvider = ({
18
21
  loadingTasks,
19
22
  isLoadingMore,
20
23
  isLoading,
24
+ error,
21
25
  isInitialized,
22
26
  projectName,
23
27
  users,
24
28
  attribFields,
29
+ taskGroups,
25
30
  filters,
26
31
  setFilters,
27
32
  queryFilters,
@@ -33,9 +38,12 @@ const ProjectTableProvider = ({
33
38
  fetchNextPage,
34
39
  reloadTableData,
35
40
  setExpanded,
36
- contextMenuItems
41
+ contextMenuItems,
42
+ powerpack,
43
+ modules,
44
+ groupByConfig
37
45
  }) => {
38
- const tableData = useOverviewTable({
46
+ const defaultTableData = useBuildProjectDataTable({
39
47
  foldersMap,
40
48
  tasksMap,
41
49
  rows: tableRows,
@@ -46,14 +54,28 @@ const ProjectTableProvider = ({
46
54
  loadingTasks,
47
55
  isLoadingMore
48
56
  });
57
+ const { groupBy } = ColumnSettingsContext.useColumnSettingsContext();
58
+ const buildGroupByTableData = useBuildGroupByTableData.default({
59
+ entities: entitiesMap,
60
+ entityType: groupByConfig == null ? void 0 : groupByConfig.entityType,
61
+ groups: taskGroups,
62
+ project: projectInfo,
63
+ attribFields
64
+ });
65
+ const groupedTableData = React.useMemo(
66
+ () => !!groupBy && buildGroupByTableData(groupBy),
67
+ [groupBy, entitiesMap, taskGroups]
68
+ );
69
+ const tableData = groupBy && groupedTableData ? groupedTableData : defaultTableData;
49
70
  const getEntityById = React.useCallback(
50
71
  (id) => {
51
- if (foldersMap.has(id)) {
52
- return foldersMap.get(id);
53
- } else if (tasksMap.has(id)) {
54
- return tasksMap.get(id);
55
- } else if (entitiesMap.has(id)) {
56
- return entitiesMap.get(id);
72
+ const parsedId = parseRowId(id);
73
+ if (foldersMap.has(parsedId)) {
74
+ return foldersMap.get(parsedId);
75
+ } else if (tasksMap.has(parsedId)) {
76
+ return tasksMap.get(parsedId);
77
+ } else if (entitiesMap.has(parsedId)) {
78
+ return entitiesMap.get(parsedId);
57
79
  }
58
80
  return void 0;
59
81
  },
@@ -96,6 +118,21 @@ const ProjectTableProvider = ({
96
118
  },
97
119
  [expanded, getChildrenEntities, setExpanded]
98
120
  );
121
+ const toggleExpands = React.useCallback(
122
+ (rowIds, expand) => {
123
+ const expandedState = typeof expanded === "object" ? expanded : {};
124
+ const newExpandedState = { ...expandedState };
125
+ rowIds.forEach((rowId) => {
126
+ if (expand !== void 0) {
127
+ newExpandedState[rowId] = expand;
128
+ } else {
129
+ newExpandedState[rowId] = !expandedState[rowId];
130
+ }
131
+ });
132
+ setExpanded(newExpandedState);
133
+ },
134
+ [expanded, setExpanded]
135
+ );
99
136
  return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
100
137
  ProjectTableContext.Provider,
101
138
  {
@@ -105,6 +142,7 @@ const ProjectTableProvider = ({
105
142
  // forwarded on
106
143
  isInitialized,
107
144
  isLoading,
145
+ error,
108
146
  projectInfo,
109
147
  attribFields,
110
148
  users,
@@ -114,6 +152,7 @@ const ProjectTableProvider = ({
114
152
  entitiesMap,
115
153
  fetchNextPage,
116
154
  reloadTableData,
155
+ taskGroups,
117
156
  // filters
118
157
  filters,
119
158
  setFilters,
@@ -126,6 +165,7 @@ const ProjectTableProvider = ({
126
165
  toggleExpanded,
127
166
  updateExpanded,
128
167
  toggleExpandAll,
168
+ toggleExpands,
129
169
  // sorting
130
170
  sorting,
131
171
  updateSorting,
@@ -136,7 +176,10 @@ const ProjectTableProvider = ({
136
176
  findNonInheritedValues,
137
177
  getAncestorsOf,
138
178
  // context menu
139
- contextMenuItems
179
+ contextMenuItems,
180
+ // powerpack context
181
+ powerpack,
182
+ modules
140
183
  },
141
184
  children
142
185
  }
@@ -150,5 +193,6 @@ const useProjectTableContext = () => {
150
193
  return context;
151
194
  };
152
195
  exports.ProjectTableProvider = ProjectTableProvider;
196
+ exports.parseRowId = parseRowId;
153
197
  exports.useProjectTableContext = useProjectTableContext;
154
198
  //# sourceMappingURL=ProjectTableContext.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectTableContext.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectTableContext.tsx"],"sourcesContent":["import { createContext, ReactNode, useCallback, useContext } from 'react'\nimport { ExpandedState, OnChangeFn, SortingState } from '@tanstack/react-table'\nimport useOverviewTable from '../hooks/useOverviewTable'\nimport { Filter } from '@ynput/ayon-react-components'\nimport {\n EntitiesMap,\n EntityMap,\n FolderNodeMap,\n TableRow,\n TaskNodeMap,\n TasksByFolderMap,\n} from '../types/table'\nimport useFolderRelationships, {\n FindInheritedValueFromAncestors,\n GetAncestorsOf,\n GetInheritedDependents,\n FindNonInheritedValues,\n} from '../hooks/useFolderRelationships'\nimport { RowId } from '../utils/cellUtils'\nimport { ProjectModel } from '../types/project'\nimport { ProjectTableAttribute, LoadingTasks } from '../types'\nimport { QueryFilter } from '../types/folders'\nimport { ContextMenuItemConstructors } from '../hooks/useCellContextMenu'\n\ntype User = {\n name: string\n fullName?: string\n}\n\nexport type ToggleExpandAll = (rowIds: RowId[], expand?: boolean) => void\n\nexport interface ProjectTableProviderProps {\n children: ReactNode\n isInitialized: boolean\n\n // loading\n isLoading: boolean\n isLoadingMore: boolean\n loadingTasks?: LoadingTasks\n // Project Info\n projectInfo?: ProjectModel\n projectName: string\n users: User[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n\n // data\n tasksMap: TaskNodeMap\n foldersMap: FolderNodeMap\n entitiesMap: EntitiesMap\n tasksByFolderMap: TasksByFolderMap\n tableRows?: TableRow[] // any extra rows that we want to add to the table\n\n // data functions\n fetchNextPage: () => void\n reloadTableData: () => void\n\n // Filters\n filters: Filter[]\n setFilters: (filters: Filter[]) => void\n queryFilters: {\n filter: QueryFilter | undefined\n filterString?: string\n search: string | undefined\n }\n\n // Hierarchy\n showHierarchy: boolean\n updateShowHierarchy: (showHierarchy: boolean) => void\n\n // Expanded state\n expanded: ExpandedState\n toggleExpanded: (id: string) => void\n updateExpanded: OnChangeFn<ExpandedState>\n setExpanded: (expanded: ExpandedState) => void\n\n // Sorting\n sorting: SortingState\n updateSorting: OnChangeFn<SortingState>\n\n // context menu\n contextMenuItems: ContextMenuItemConstructors\n}\n\nexport interface ProjectTableContextProps {\n isInitialized: ProjectTableProviderProps['isInitialized']\n isLoading: ProjectTableProviderProps['isLoading']\n // Project Info\n projectInfo: ProjectTableProviderProps['projectInfo']\n projectName: ProjectTableProviderProps['projectName']\n users: ProjectTableProviderProps['users']\n // Attributes\n attribFields: ProjectTableProviderProps['attribFields']\n\n // Data\n tableData: TableRow[]\n tasksMap: ProjectTableProviderProps['tasksMap']\n foldersMap: ProjectTableProviderProps['foldersMap']\n entitiesMap: ProjectTableProviderProps['entitiesMap']\n fetchNextPage: ProjectTableProviderProps['fetchNextPage']\n reloadTableData: ProjectTableProviderProps['reloadTableData']\n getEntityById: (id: string) => EntityMap | undefined\n\n // Filters\n filters: ProjectTableProviderProps['filters']\n setFilters: ProjectTableProviderProps['setFilters']\n queryFilters: ProjectTableProviderProps['queryFilters']\n\n // Hierarchy\n showHierarchy: ProjectTableProviderProps['showHierarchy']\n updateShowHierarchy: ProjectTableProviderProps['updateShowHierarchy']\n\n // Expanded state\n expanded: ProjectTableProviderProps['expanded']\n toggleExpanded: ProjectTableProviderProps['toggleExpanded']\n updateExpanded: ProjectTableProviderProps['updateExpanded']\n toggleExpandAll: ToggleExpandAll\n\n // Sorting\n sorting: ProjectTableProviderProps['sorting']\n updateSorting: ProjectTableProviderProps['updateSorting']\n\n // Folder Relationships\n getInheritedDependents: GetInheritedDependents\n findInheritedValueFromAncestors: FindInheritedValueFromAncestors\n findNonInheritedValues: FindNonInheritedValues\n getAncestorsOf: GetAncestorsOf\n\n // Context menu\n contextMenuItems: ProjectTableProviderProps['contextMenuItems']\n}\n\nconst ProjectTableContext = createContext<ProjectTableContextProps | undefined>(undefined)\n\nexport const ProjectTableProvider = ({\n children,\n foldersMap,\n tableRows,\n tasksMap,\n entitiesMap,\n tasksByFolderMap,\n expanded,\n projectInfo,\n showHierarchy,\n loadingTasks,\n isLoadingMore,\n isLoading,\n isInitialized,\n projectName,\n users,\n attribFields,\n filters,\n setFilters,\n queryFilters,\n updateShowHierarchy,\n toggleExpanded,\n updateExpanded,\n sorting,\n updateSorting,\n fetchNextPage,\n reloadTableData,\n setExpanded,\n contextMenuItems,\n}: ProjectTableProviderProps) => {\n // DATA TO TABLE\n const tableData = useOverviewTable({\n foldersMap,\n tasksMap,\n rows: tableRows,\n tasksByFolderMap,\n expanded,\n projectInfo,\n showHierarchy,\n loadingTasks,\n isLoadingMore,\n })\n\n const getEntityById = useCallback(\n (id: string): EntityMap | undefined => {\n if (foldersMap.has(id)) {\n return foldersMap.get(id)\n } else if (tasksMap.has(id)) {\n return tasksMap.get(id)\n } else if (entitiesMap.has(id)) {\n return entitiesMap.get(id)\n }\n\n // Return undefined if not found\n return undefined\n },\n [foldersMap, tasksMap, entitiesMap],\n )\n\n // get folder relationship functions\n const {\n getInheritedDependents,\n getChildrenEntities,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n getAncestorsOf,\n } = useFolderRelationships({\n entitiesMap,\n tasksMap,\n tasksByFolderMap,\n getEntityById,\n projectAttrib: projectInfo?.attrib,\n attribFields: attribFields,\n })\n\n const toggleExpandAll: ProjectTableContextProps['toggleExpandAll'] = useCallback(\n (rowIds, expandAll) => {\n const expandedState = typeof expanded === 'object' ? expanded : {}\n\n const newExpandedState = { ...expandedState }\n\n rowIds.forEach((rowId) => {\n // get all children of the rowId using tableData\n const childIds = getChildrenEntities(rowId).map((child) => child.id)\n // check if the rowId is expanded\n const isExpanded = expandedState[rowId] || false\n\n if (expandAll !== undefined ? !expandAll : isExpanded) {\n // collapse all children\n newExpandedState[rowId] = false\n childIds.forEach((id) => {\n newExpandedState[id] = false\n })\n } else {\n // expand all children\n newExpandedState[rowId] = true\n childIds.forEach((id) => {\n newExpandedState[id] = true\n })\n }\n })\n\n setExpanded(newExpandedState)\n },\n [expanded, getChildrenEntities, setExpanded],\n )\n\n return (\n <ProjectTableContext.Provider\n value={{\n // from this context\n tableData,\n // forwarded on\n isInitialized,\n isLoading,\n projectInfo,\n attribFields,\n users,\n projectName,\n tasksMap,\n foldersMap,\n entitiesMap,\n fetchNextPage,\n reloadTableData,\n // filters\n filters,\n setFilters,\n queryFilters,\n // hierarchy\n showHierarchy,\n updateShowHierarchy,\n // expanded state\n expanded,\n toggleExpanded,\n updateExpanded,\n toggleExpandAll,\n // sorting\n sorting,\n updateSorting,\n getEntityById,\n // folder relationships\n getInheritedDependents,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n getAncestorsOf,\n // context menu\n contextMenuItems,\n }}\n >\n {children}\n </ProjectTableContext.Provider>\n )\n}\n\nexport const useProjectTableContext = () => {\n const context = useContext(ProjectTableContext)\n if (!context) {\n throw new Error('useProjectTableContext must be used within a ProjectTableProvider')\n }\n return context\n}\n"],"names":["createContext","useCallback","jsx","useContext"],"mappings":"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"}
1
+ {"version":3,"file":"ProjectTableContext.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectTableContext.tsx"],"sourcesContent":["/**\n * Project Table Context\n *\n * This context serves as the central data management layer for the project table component.\n * It performs three main functions:\n *\n * 1. **Props Forwarding**: Acts as a bridge to forward essential props (project info, users,\n * attributes, filters, etc.) down to child components throughout the table hierarchy.\n *\n * 2. **Table Data Structure Building**: Transforms raw project data into structured table rows\n * that can be consumed by the table component. This includes processing folders, tasks,\n * and entities into a unified table format.\n *\n * 3. **Multi-Modal Data Presentation**: Supports three different data presentation modes:\n * - **Hierarchy Mode**: Builds nested folder/task relationships with expandable rows\n * - **Tasks List Mode**: Flattened view of tasks without hierarchical structure\n * - **Groups Mode**: Groups entities by specified criteria (entity type, custom groups)\n *\n * The context also provides utility functions for entity relationships, expansion state\n * management, filtering, sorting, and folder inheritance operations.\n */\nimport { createContext, ReactNode, useCallback, useContext, useMemo } from 'react'\nimport { ExpandedState, OnChangeFn, SortingState } from '@tanstack/react-table'\nimport useBuildProjectDataTable from '../hooks/useBuildProjectDataTable'\nimport { Filter } from '@ynput/ayon-react-components'\nimport {\n EntitiesMap,\n EntityMap,\n FolderNodeMap,\n TableRow,\n TaskNodeMap,\n TasksByFolderMap,\n} from '../types/table'\nimport useFolderRelationships, {\n FindInheritedValueFromAncestors,\n GetAncestorsOf,\n GetInheritedDependents,\n FindNonInheritedValues,\n} from '../hooks/useFolderRelationships'\nimport { RowId } from '../utils/cellUtils'\nimport { ProjectModel } from '../types/project'\nimport { ProjectTableAttribute, LoadingTasks } from '../types'\nimport { QueryFilter } from '../types/folders'\nimport { ContextMenuItemConstructors } from '../hooks/useCellContextMenu'\nimport { EntityGroup } from '@shared/api'\nimport useBuildGroupByTableData, {\n GroupByEntityType,\n ROW_ID_SEPARATOR,\n} from '../hooks/useBuildGroupByTableData'\nimport { PowerpackContextType } from '@shared/context'\nimport { ProjectTableModuleContextType } from './ProjectTableModulesContext'\nimport { useColumnSettingsContext } from './ColumnSettingsContext'\n\nexport const parseRowId = (rowId: string) => rowId.split(ROW_ID_SEPARATOR)[0] || rowId\n\nexport type TableUser = {\n name: string\n fullName?: string\n}\n\nexport type ToggleExpandAll = (rowIds: RowId[], expand?: boolean) => void\nexport type ToggleExpands = (rowIds: RowId[], expand?: boolean) => void\n\nexport interface ProjectTableProviderProps {\n children: ReactNode\n isInitialized: boolean\n\n // loading\n isLoading: boolean\n isLoadingMore: boolean\n loadingTasks?: LoadingTasks\n error?: string\n // Project Info\n projectInfo?: ProjectModel\n projectName: string\n users: TableUser[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n\n // data\n tasksMap: TaskNodeMap\n foldersMap: FolderNodeMap\n entitiesMap: EntitiesMap\n tasksByFolderMap: TasksByFolderMap\n tableRows?: TableRow[] // any extra rows that we want to add to the table\n\n // grouping\n taskGroups: EntityGroup[]\n\n // data functions\n fetchNextPage: (value?: string) => void\n reloadTableData: () => void\n\n // Filters\n filters: Filter[]\n setFilters: (filters: Filter[]) => void\n queryFilters: {\n filter: QueryFilter | undefined\n filterString?: string\n search: string | undefined\n }\n\n // Hierarchy\n showHierarchy: boolean\n updateShowHierarchy: (showHierarchy: boolean) => void\n\n // Expanded state\n expanded: ExpandedState\n toggleExpanded: (id: string) => void\n updateExpanded: OnChangeFn<ExpandedState>\n setExpanded: (expanded: ExpandedState) => void\n\n // Sorting\n sorting: SortingState\n updateSorting: OnChangeFn<SortingState>\n\n // context menu\n contextMenuItems: ContextMenuItemConstructors\n\n // powerpack context\n powerpack?: PowerpackContextType\n\n // remote modules\n modules: ProjectTableModuleContextType\n\n groupByConfig?: {\n entityType?: GroupByEntityType\n }\n}\n\nexport interface ProjectTableContextProps {\n isInitialized: ProjectTableProviderProps['isInitialized']\n isLoading: ProjectTableProviderProps['isLoading']\n // Project Info\n projectInfo: ProjectTableProviderProps['projectInfo']\n projectName: ProjectTableProviderProps['projectName']\n users: ProjectTableProviderProps['users']\n // Attributes\n attribFields: ProjectTableProviderProps['attribFields']\n error?: string\n\n // Data\n tableData: TableRow[]\n tasksMap: ProjectTableProviderProps['tasksMap']\n foldersMap: ProjectTableProviderProps['foldersMap']\n entitiesMap: ProjectTableProviderProps['entitiesMap']\n fetchNextPage: ProjectTableProviderProps['fetchNextPage']\n reloadTableData: ProjectTableProviderProps['reloadTableData']\n getEntityById: (id: string) => EntityMap | undefined\n\n // grouping\n taskGroups: ProjectTableProviderProps['taskGroups']\n\n // Filters\n filters: ProjectTableProviderProps['filters']\n setFilters: ProjectTableProviderProps['setFilters']\n queryFilters: ProjectTableProviderProps['queryFilters']\n\n // Hierarchy\n showHierarchy: ProjectTableProviderProps['showHierarchy']\n updateShowHierarchy: ProjectTableProviderProps['updateShowHierarchy']\n\n // Expanded state\n expanded: ProjectTableProviderProps['expanded']\n toggleExpanded: ProjectTableProviderProps['toggleExpanded']\n updateExpanded: ProjectTableProviderProps['updateExpanded']\n toggleExpandAll: ToggleExpandAll\n toggleExpands: ToggleExpands // expand/collapse multiple rows at once\n\n // Sorting\n sorting: ProjectTableProviderProps['sorting']\n updateSorting: ProjectTableProviderProps['updateSorting']\n\n // Folder Relationships\n getInheritedDependents: GetInheritedDependents\n findInheritedValueFromAncestors: FindInheritedValueFromAncestors\n findNonInheritedValues: FindNonInheritedValues\n getAncestorsOf: GetAncestorsOf\n\n // Context menu\n contextMenuItems: ProjectTableProviderProps['contextMenuItems']\n\n // Powerpack context\n powerpack?: ProjectTableProviderProps['powerpack']\n\n // remote modules\n modules: ProjectTableProviderProps['modules']\n}\n\nconst ProjectTableContext = createContext<ProjectTableContextProps | undefined>(undefined)\n\nexport const ProjectTableProvider = ({\n children,\n foldersMap,\n tableRows,\n tasksMap,\n entitiesMap,\n tasksByFolderMap,\n expanded,\n projectInfo,\n showHierarchy,\n loadingTasks,\n isLoadingMore,\n isLoading,\n error,\n isInitialized,\n projectName,\n users,\n attribFields,\n taskGroups,\n filters,\n setFilters,\n queryFilters,\n updateShowHierarchy,\n toggleExpanded,\n updateExpanded,\n sorting,\n updateSorting,\n fetchNextPage,\n reloadTableData,\n setExpanded,\n contextMenuItems,\n powerpack,\n modules,\n groupByConfig,\n}: ProjectTableProviderProps) => {\n // DATA TO TABLE\n const defaultTableData = useBuildProjectDataTable({\n foldersMap,\n tasksMap,\n rows: tableRows,\n tasksByFolderMap,\n expanded,\n projectInfo,\n showHierarchy,\n loadingTasks,\n isLoadingMore,\n })\n const { groupBy } = useColumnSettingsContext()\n\n const buildGroupByTableData = useBuildGroupByTableData({\n entities: entitiesMap,\n entityType: groupByConfig?.entityType,\n groups: taskGroups,\n project: projectInfo,\n attribFields,\n })\n\n // if we are grouping by something, we ignore current tableData and format the data based on the groupBy\n const groupedTableData = useMemo(\n () => !!groupBy && buildGroupByTableData(groupBy),\n [groupBy, entitiesMap, taskGroups],\n )\n\n const tableData = groupBy && groupedTableData ? groupedTableData : defaultTableData\n\n const getEntityById = useCallback(\n (id: string): EntityMap | undefined => {\n // always parse the id to remove any suffixes\n // this can happen if the id is a group by id (we need to make the row id unique)\n const parsedId = parseRowId(id)\n if (foldersMap.has(parsedId)) {\n return foldersMap.get(parsedId)\n } else if (tasksMap.has(parsedId)) {\n return tasksMap.get(parsedId)\n } else if (entitiesMap.has(parsedId)) {\n return entitiesMap.get(parsedId)\n }\n\n // Return undefined if not found\n return undefined\n },\n [foldersMap, tasksMap, entitiesMap],\n )\n\n // get folder relationship functions\n const {\n getInheritedDependents,\n getChildrenEntities,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n getAncestorsOf,\n } = useFolderRelationships({\n entitiesMap,\n tasksMap,\n tasksByFolderMap,\n getEntityById,\n projectAttrib: projectInfo?.attrib,\n attribFields: attribFields,\n })\n\n const toggleExpandAll: ProjectTableContextProps['toggleExpandAll'] = useCallback(\n (rowIds, expandAll) => {\n const expandedState = typeof expanded === 'object' ? expanded : {}\n\n const newExpandedState = { ...expandedState }\n\n rowIds.forEach((rowId) => {\n // get all children of the rowId using tableData\n const childIds = getChildrenEntities(rowId).map((child) => child.id)\n // check if the rowId is expanded\n const isExpanded = expandedState[rowId] || false\n\n if (expandAll !== undefined ? !expandAll : isExpanded) {\n // collapse all children\n newExpandedState[rowId] = false\n childIds.forEach((id) => {\n newExpandedState[id] = false\n })\n } else {\n // expand all children\n newExpandedState[rowId] = true\n childIds.forEach((id) => {\n newExpandedState[id] = true\n })\n }\n })\n\n setExpanded(newExpandedState)\n },\n [expanded, getChildrenEntities, setExpanded],\n )\n\n const toggleExpands: ProjectTableContextProps['toggleExpands'] = useCallback(\n (rowIds, expand) => {\n const expandedState = typeof expanded === 'object' ? expanded : {}\n const newExpandedState = { ...expandedState }\n\n rowIds.forEach((rowId) => {\n if (expand !== undefined) {\n // Use the provided expand parameter\n newExpandedState[rowId] = expand\n } else {\n // Toggle based on current state\n newExpandedState[rowId] = !expandedState[rowId]\n }\n })\n\n setExpanded(newExpandedState)\n },\n [expanded, setExpanded],\n )\n\n return (\n <ProjectTableContext.Provider\n value={{\n // from this context\n tableData,\n // forwarded on\n isInitialized,\n isLoading,\n error,\n projectInfo,\n attribFields,\n users,\n projectName,\n tasksMap,\n foldersMap,\n entitiesMap,\n fetchNextPage,\n reloadTableData,\n taskGroups,\n // filters\n filters,\n setFilters,\n queryFilters,\n // hierarchy\n showHierarchy,\n updateShowHierarchy,\n // expanded state\n expanded,\n toggleExpanded,\n updateExpanded,\n toggleExpandAll,\n toggleExpands,\n // sorting\n sorting,\n updateSorting,\n getEntityById,\n // folder relationships\n getInheritedDependents,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n getAncestorsOf,\n // context menu\n contextMenuItems,\n // powerpack context\n powerpack,\n modules,\n }}\n >\n {children}\n </ProjectTableContext.Provider>\n )\n}\n\nexport const useProjectTableContext = () => {\n const context = useContext(ProjectTableContext)\n if (!context) {\n throw new Error('useProjectTableContext must be used within a ProjectTableProvider')\n }\n return context\n}\n"],"names":["ROW_ID_SEPARATOR","createContext","useColumnSettingsContext","useBuildGroupByTableData","useMemo","useCallback","jsx","useContext"],"mappings":"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"}
@@ -1,7 +1,10 @@
1
1
  import { j as jsxRuntimeExports } from "../../../../../_virtual/jsx-runtime.es.js";
2
- import { createContext, useCallback, useContext } from "react";
3
- import useOverviewTable from "../hooks/useOverviewTable.es.js";
2
+ import { createContext, useMemo, useCallback, useContext } from "react";
3
+ import useBuildProjectDataTable from "../hooks/useBuildProjectDataTable.es.js";
4
4
  import useFolderRelationships from "../hooks/useFolderRelationships.es.js";
5
+ import useBuildGroupByTableData, { ROW_ID_SEPARATOR } from "../hooks/useBuildGroupByTableData.es.js";
6
+ import { useColumnSettingsContext } from "./ColumnSettingsContext.es.js";
7
+ const parseRowId = (rowId) => rowId.split(ROW_ID_SEPARATOR)[0] || rowId;
5
8
  const ProjectTableContext = createContext(void 0);
6
9
  const ProjectTableProvider = ({
7
10
  children,
@@ -16,10 +19,12 @@ const ProjectTableProvider = ({
16
19
  loadingTasks,
17
20
  isLoadingMore,
18
21
  isLoading,
22
+ error,
19
23
  isInitialized,
20
24
  projectName,
21
25
  users,
22
26
  attribFields,
27
+ taskGroups,
23
28
  filters,
24
29
  setFilters,
25
30
  queryFilters,
@@ -31,9 +36,12 @@ const ProjectTableProvider = ({
31
36
  fetchNextPage,
32
37
  reloadTableData,
33
38
  setExpanded,
34
- contextMenuItems
39
+ contextMenuItems,
40
+ powerpack,
41
+ modules,
42
+ groupByConfig
35
43
  }) => {
36
- const tableData = useOverviewTable({
44
+ const defaultTableData = useBuildProjectDataTable({
37
45
  foldersMap,
38
46
  tasksMap,
39
47
  rows: tableRows,
@@ -44,14 +52,28 @@ const ProjectTableProvider = ({
44
52
  loadingTasks,
45
53
  isLoadingMore
46
54
  });
55
+ const { groupBy } = useColumnSettingsContext();
56
+ const buildGroupByTableData = useBuildGroupByTableData({
57
+ entities: entitiesMap,
58
+ entityType: groupByConfig == null ? void 0 : groupByConfig.entityType,
59
+ groups: taskGroups,
60
+ project: projectInfo,
61
+ attribFields
62
+ });
63
+ const groupedTableData = useMemo(
64
+ () => !!groupBy && buildGroupByTableData(groupBy),
65
+ [groupBy, entitiesMap, taskGroups]
66
+ );
67
+ const tableData = groupBy && groupedTableData ? groupedTableData : defaultTableData;
47
68
  const getEntityById = useCallback(
48
69
  (id) => {
49
- if (foldersMap.has(id)) {
50
- return foldersMap.get(id);
51
- } else if (tasksMap.has(id)) {
52
- return tasksMap.get(id);
53
- } else if (entitiesMap.has(id)) {
54
- return entitiesMap.get(id);
70
+ const parsedId = parseRowId(id);
71
+ if (foldersMap.has(parsedId)) {
72
+ return foldersMap.get(parsedId);
73
+ } else if (tasksMap.has(parsedId)) {
74
+ return tasksMap.get(parsedId);
75
+ } else if (entitiesMap.has(parsedId)) {
76
+ return entitiesMap.get(parsedId);
55
77
  }
56
78
  return void 0;
57
79
  },
@@ -94,6 +116,21 @@ const ProjectTableProvider = ({
94
116
  },
95
117
  [expanded, getChildrenEntities, setExpanded]
96
118
  );
119
+ const toggleExpands = useCallback(
120
+ (rowIds, expand) => {
121
+ const expandedState = typeof expanded === "object" ? expanded : {};
122
+ const newExpandedState = { ...expandedState };
123
+ rowIds.forEach((rowId) => {
124
+ if (expand !== void 0) {
125
+ newExpandedState[rowId] = expand;
126
+ } else {
127
+ newExpandedState[rowId] = !expandedState[rowId];
128
+ }
129
+ });
130
+ setExpanded(newExpandedState);
131
+ },
132
+ [expanded, setExpanded]
133
+ );
97
134
  return /* @__PURE__ */ jsxRuntimeExports.jsx(
98
135
  ProjectTableContext.Provider,
99
136
  {
@@ -103,6 +140,7 @@ const ProjectTableProvider = ({
103
140
  // forwarded on
104
141
  isInitialized,
105
142
  isLoading,
143
+ error,
106
144
  projectInfo,
107
145
  attribFields,
108
146
  users,
@@ -112,6 +150,7 @@ const ProjectTableProvider = ({
112
150
  entitiesMap,
113
151
  fetchNextPage,
114
152
  reloadTableData,
153
+ taskGroups,
115
154
  // filters
116
155
  filters,
117
156
  setFilters,
@@ -124,6 +163,7 @@ const ProjectTableProvider = ({
124
163
  toggleExpanded,
125
164
  updateExpanded,
126
165
  toggleExpandAll,
166
+ toggleExpands,
127
167
  // sorting
128
168
  sorting,
129
169
  updateSorting,
@@ -134,7 +174,10 @@ const ProjectTableProvider = ({
134
174
  findNonInheritedValues,
135
175
  getAncestorsOf,
136
176
  // context menu
137
- contextMenuItems
177
+ contextMenuItems,
178
+ // powerpack context
179
+ powerpack,
180
+ modules
138
181
  },
139
182
  children
140
183
  }
@@ -149,6 +192,7 @@ const useProjectTableContext = () => {
149
192
  };
150
193
  export {
151
194
  ProjectTableProvider,
195
+ parseRowId,
152
196
  useProjectTableContext
153
197
  };
154
198
  //# sourceMappingURL=ProjectTableContext.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectTableContext.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectTableContext.tsx"],"sourcesContent":["import { createContext, ReactNode, useCallback, useContext } from 'react'\nimport { ExpandedState, OnChangeFn, SortingState } from '@tanstack/react-table'\nimport useOverviewTable from '../hooks/useOverviewTable'\nimport { Filter } from '@ynput/ayon-react-components'\nimport {\n EntitiesMap,\n EntityMap,\n FolderNodeMap,\n TableRow,\n TaskNodeMap,\n TasksByFolderMap,\n} from '../types/table'\nimport useFolderRelationships, {\n FindInheritedValueFromAncestors,\n GetAncestorsOf,\n GetInheritedDependents,\n FindNonInheritedValues,\n} from '../hooks/useFolderRelationships'\nimport { RowId } from '../utils/cellUtils'\nimport { ProjectModel } from '../types/project'\nimport { ProjectTableAttribute, LoadingTasks } from '../types'\nimport { QueryFilter } from '../types/folders'\nimport { ContextMenuItemConstructors } from '../hooks/useCellContextMenu'\n\ntype User = {\n name: string\n fullName?: string\n}\n\nexport type ToggleExpandAll = (rowIds: RowId[], expand?: boolean) => void\n\nexport interface ProjectTableProviderProps {\n children: ReactNode\n isInitialized: boolean\n\n // loading\n isLoading: boolean\n isLoadingMore: boolean\n loadingTasks?: LoadingTasks\n // Project Info\n projectInfo?: ProjectModel\n projectName: string\n users: User[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n\n // data\n tasksMap: TaskNodeMap\n foldersMap: FolderNodeMap\n entitiesMap: EntitiesMap\n tasksByFolderMap: TasksByFolderMap\n tableRows?: TableRow[] // any extra rows that we want to add to the table\n\n // data functions\n fetchNextPage: () => void\n reloadTableData: () => void\n\n // Filters\n filters: Filter[]\n setFilters: (filters: Filter[]) => void\n queryFilters: {\n filter: QueryFilter | undefined\n filterString?: string\n search: string | undefined\n }\n\n // Hierarchy\n showHierarchy: boolean\n updateShowHierarchy: (showHierarchy: boolean) => void\n\n // Expanded state\n expanded: ExpandedState\n toggleExpanded: (id: string) => void\n updateExpanded: OnChangeFn<ExpandedState>\n setExpanded: (expanded: ExpandedState) => void\n\n // Sorting\n sorting: SortingState\n updateSorting: OnChangeFn<SortingState>\n\n // context menu\n contextMenuItems: ContextMenuItemConstructors\n}\n\nexport interface ProjectTableContextProps {\n isInitialized: ProjectTableProviderProps['isInitialized']\n isLoading: ProjectTableProviderProps['isLoading']\n // Project Info\n projectInfo: ProjectTableProviderProps['projectInfo']\n projectName: ProjectTableProviderProps['projectName']\n users: ProjectTableProviderProps['users']\n // Attributes\n attribFields: ProjectTableProviderProps['attribFields']\n\n // Data\n tableData: TableRow[]\n tasksMap: ProjectTableProviderProps['tasksMap']\n foldersMap: ProjectTableProviderProps['foldersMap']\n entitiesMap: ProjectTableProviderProps['entitiesMap']\n fetchNextPage: ProjectTableProviderProps['fetchNextPage']\n reloadTableData: ProjectTableProviderProps['reloadTableData']\n getEntityById: (id: string) => EntityMap | undefined\n\n // Filters\n filters: ProjectTableProviderProps['filters']\n setFilters: ProjectTableProviderProps['setFilters']\n queryFilters: ProjectTableProviderProps['queryFilters']\n\n // Hierarchy\n showHierarchy: ProjectTableProviderProps['showHierarchy']\n updateShowHierarchy: ProjectTableProviderProps['updateShowHierarchy']\n\n // Expanded state\n expanded: ProjectTableProviderProps['expanded']\n toggleExpanded: ProjectTableProviderProps['toggleExpanded']\n updateExpanded: ProjectTableProviderProps['updateExpanded']\n toggleExpandAll: ToggleExpandAll\n\n // Sorting\n sorting: ProjectTableProviderProps['sorting']\n updateSorting: ProjectTableProviderProps['updateSorting']\n\n // Folder Relationships\n getInheritedDependents: GetInheritedDependents\n findInheritedValueFromAncestors: FindInheritedValueFromAncestors\n findNonInheritedValues: FindNonInheritedValues\n getAncestorsOf: GetAncestorsOf\n\n // Context menu\n contextMenuItems: ProjectTableProviderProps['contextMenuItems']\n}\n\nconst ProjectTableContext = createContext<ProjectTableContextProps | undefined>(undefined)\n\nexport const ProjectTableProvider = ({\n children,\n foldersMap,\n tableRows,\n tasksMap,\n entitiesMap,\n tasksByFolderMap,\n expanded,\n projectInfo,\n showHierarchy,\n loadingTasks,\n isLoadingMore,\n isLoading,\n isInitialized,\n projectName,\n users,\n attribFields,\n filters,\n setFilters,\n queryFilters,\n updateShowHierarchy,\n toggleExpanded,\n updateExpanded,\n sorting,\n updateSorting,\n fetchNextPage,\n reloadTableData,\n setExpanded,\n contextMenuItems,\n}: ProjectTableProviderProps) => {\n // DATA TO TABLE\n const tableData = useOverviewTable({\n foldersMap,\n tasksMap,\n rows: tableRows,\n tasksByFolderMap,\n expanded,\n projectInfo,\n showHierarchy,\n loadingTasks,\n isLoadingMore,\n })\n\n const getEntityById = useCallback(\n (id: string): EntityMap | undefined => {\n if (foldersMap.has(id)) {\n return foldersMap.get(id)\n } else if (tasksMap.has(id)) {\n return tasksMap.get(id)\n } else if (entitiesMap.has(id)) {\n return entitiesMap.get(id)\n }\n\n // Return undefined if not found\n return undefined\n },\n [foldersMap, tasksMap, entitiesMap],\n )\n\n // get folder relationship functions\n const {\n getInheritedDependents,\n getChildrenEntities,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n getAncestorsOf,\n } = useFolderRelationships({\n entitiesMap,\n tasksMap,\n tasksByFolderMap,\n getEntityById,\n projectAttrib: projectInfo?.attrib,\n attribFields: attribFields,\n })\n\n const toggleExpandAll: ProjectTableContextProps['toggleExpandAll'] = useCallback(\n (rowIds, expandAll) => {\n const expandedState = typeof expanded === 'object' ? expanded : {}\n\n const newExpandedState = { ...expandedState }\n\n rowIds.forEach((rowId) => {\n // get all children of the rowId using tableData\n const childIds = getChildrenEntities(rowId).map((child) => child.id)\n // check if the rowId is expanded\n const isExpanded = expandedState[rowId] || false\n\n if (expandAll !== undefined ? !expandAll : isExpanded) {\n // collapse all children\n newExpandedState[rowId] = false\n childIds.forEach((id) => {\n newExpandedState[id] = false\n })\n } else {\n // expand all children\n newExpandedState[rowId] = true\n childIds.forEach((id) => {\n newExpandedState[id] = true\n })\n }\n })\n\n setExpanded(newExpandedState)\n },\n [expanded, getChildrenEntities, setExpanded],\n )\n\n return (\n <ProjectTableContext.Provider\n value={{\n // from this context\n tableData,\n // forwarded on\n isInitialized,\n isLoading,\n projectInfo,\n attribFields,\n users,\n projectName,\n tasksMap,\n foldersMap,\n entitiesMap,\n fetchNextPage,\n reloadTableData,\n // filters\n filters,\n setFilters,\n queryFilters,\n // hierarchy\n showHierarchy,\n updateShowHierarchy,\n // expanded state\n expanded,\n toggleExpanded,\n updateExpanded,\n toggleExpandAll,\n // sorting\n sorting,\n updateSorting,\n getEntityById,\n // folder relationships\n getInheritedDependents,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n getAncestorsOf,\n // context menu\n contextMenuItems,\n }}\n >\n {children}\n </ProjectTableContext.Provider>\n )\n}\n\nexport const useProjectTableContext = () => {\n const context = useContext(ProjectTableContext)\n if (!context) {\n throw new Error('useProjectTableContext must be used within a ProjectTableProvider')\n }\n return context\n}\n"],"names":["jsx"],"mappings":"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"}
1
+ {"version":3,"file":"ProjectTableContext.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectTableContext.tsx"],"sourcesContent":["/**\n * Project Table Context\n *\n * This context serves as the central data management layer for the project table component.\n * It performs three main functions:\n *\n * 1. **Props Forwarding**: Acts as a bridge to forward essential props (project info, users,\n * attributes, filters, etc.) down to child components throughout the table hierarchy.\n *\n * 2. **Table Data Structure Building**: Transforms raw project data into structured table rows\n * that can be consumed by the table component. This includes processing folders, tasks,\n * and entities into a unified table format.\n *\n * 3. **Multi-Modal Data Presentation**: Supports three different data presentation modes:\n * - **Hierarchy Mode**: Builds nested folder/task relationships with expandable rows\n * - **Tasks List Mode**: Flattened view of tasks without hierarchical structure\n * - **Groups Mode**: Groups entities by specified criteria (entity type, custom groups)\n *\n * The context also provides utility functions for entity relationships, expansion state\n * management, filtering, sorting, and folder inheritance operations.\n */\nimport { createContext, ReactNode, useCallback, useContext, useMemo } from 'react'\nimport { ExpandedState, OnChangeFn, SortingState } from '@tanstack/react-table'\nimport useBuildProjectDataTable from '../hooks/useBuildProjectDataTable'\nimport { Filter } from '@ynput/ayon-react-components'\nimport {\n EntitiesMap,\n EntityMap,\n FolderNodeMap,\n TableRow,\n TaskNodeMap,\n TasksByFolderMap,\n} from '../types/table'\nimport useFolderRelationships, {\n FindInheritedValueFromAncestors,\n GetAncestorsOf,\n GetInheritedDependents,\n FindNonInheritedValues,\n} from '../hooks/useFolderRelationships'\nimport { RowId } from '../utils/cellUtils'\nimport { ProjectModel } from '../types/project'\nimport { ProjectTableAttribute, LoadingTasks } from '../types'\nimport { QueryFilter } from '../types/folders'\nimport { ContextMenuItemConstructors } from '../hooks/useCellContextMenu'\nimport { EntityGroup } from '@shared/api'\nimport useBuildGroupByTableData, {\n GroupByEntityType,\n ROW_ID_SEPARATOR,\n} from '../hooks/useBuildGroupByTableData'\nimport { PowerpackContextType } from '@shared/context'\nimport { ProjectTableModuleContextType } from './ProjectTableModulesContext'\nimport { useColumnSettingsContext } from './ColumnSettingsContext'\n\nexport const parseRowId = (rowId: string) => rowId.split(ROW_ID_SEPARATOR)[0] || rowId\n\nexport type TableUser = {\n name: string\n fullName?: string\n}\n\nexport type ToggleExpandAll = (rowIds: RowId[], expand?: boolean) => void\nexport type ToggleExpands = (rowIds: RowId[], expand?: boolean) => void\n\nexport interface ProjectTableProviderProps {\n children: ReactNode\n isInitialized: boolean\n\n // loading\n isLoading: boolean\n isLoadingMore: boolean\n loadingTasks?: LoadingTasks\n error?: string\n // Project Info\n projectInfo?: ProjectModel\n projectName: string\n users: TableUser[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n\n // data\n tasksMap: TaskNodeMap\n foldersMap: FolderNodeMap\n entitiesMap: EntitiesMap\n tasksByFolderMap: TasksByFolderMap\n tableRows?: TableRow[] // any extra rows that we want to add to the table\n\n // grouping\n taskGroups: EntityGroup[]\n\n // data functions\n fetchNextPage: (value?: string) => void\n reloadTableData: () => void\n\n // Filters\n filters: Filter[]\n setFilters: (filters: Filter[]) => void\n queryFilters: {\n filter: QueryFilter | undefined\n filterString?: string\n search: string | undefined\n }\n\n // Hierarchy\n showHierarchy: boolean\n updateShowHierarchy: (showHierarchy: boolean) => void\n\n // Expanded state\n expanded: ExpandedState\n toggleExpanded: (id: string) => void\n updateExpanded: OnChangeFn<ExpandedState>\n setExpanded: (expanded: ExpandedState) => void\n\n // Sorting\n sorting: SortingState\n updateSorting: OnChangeFn<SortingState>\n\n // context menu\n contextMenuItems: ContextMenuItemConstructors\n\n // powerpack context\n powerpack?: PowerpackContextType\n\n // remote modules\n modules: ProjectTableModuleContextType\n\n groupByConfig?: {\n entityType?: GroupByEntityType\n }\n}\n\nexport interface ProjectTableContextProps {\n isInitialized: ProjectTableProviderProps['isInitialized']\n isLoading: ProjectTableProviderProps['isLoading']\n // Project Info\n projectInfo: ProjectTableProviderProps['projectInfo']\n projectName: ProjectTableProviderProps['projectName']\n users: ProjectTableProviderProps['users']\n // Attributes\n attribFields: ProjectTableProviderProps['attribFields']\n error?: string\n\n // Data\n tableData: TableRow[]\n tasksMap: ProjectTableProviderProps['tasksMap']\n foldersMap: ProjectTableProviderProps['foldersMap']\n entitiesMap: ProjectTableProviderProps['entitiesMap']\n fetchNextPage: ProjectTableProviderProps['fetchNextPage']\n reloadTableData: ProjectTableProviderProps['reloadTableData']\n getEntityById: (id: string) => EntityMap | undefined\n\n // grouping\n taskGroups: ProjectTableProviderProps['taskGroups']\n\n // Filters\n filters: ProjectTableProviderProps['filters']\n setFilters: ProjectTableProviderProps['setFilters']\n queryFilters: ProjectTableProviderProps['queryFilters']\n\n // Hierarchy\n showHierarchy: ProjectTableProviderProps['showHierarchy']\n updateShowHierarchy: ProjectTableProviderProps['updateShowHierarchy']\n\n // Expanded state\n expanded: ProjectTableProviderProps['expanded']\n toggleExpanded: ProjectTableProviderProps['toggleExpanded']\n updateExpanded: ProjectTableProviderProps['updateExpanded']\n toggleExpandAll: ToggleExpandAll\n toggleExpands: ToggleExpands // expand/collapse multiple rows at once\n\n // Sorting\n sorting: ProjectTableProviderProps['sorting']\n updateSorting: ProjectTableProviderProps['updateSorting']\n\n // Folder Relationships\n getInheritedDependents: GetInheritedDependents\n findInheritedValueFromAncestors: FindInheritedValueFromAncestors\n findNonInheritedValues: FindNonInheritedValues\n getAncestorsOf: GetAncestorsOf\n\n // Context menu\n contextMenuItems: ProjectTableProviderProps['contextMenuItems']\n\n // Powerpack context\n powerpack?: ProjectTableProviderProps['powerpack']\n\n // remote modules\n modules: ProjectTableProviderProps['modules']\n}\n\nconst ProjectTableContext = createContext<ProjectTableContextProps | undefined>(undefined)\n\nexport const ProjectTableProvider = ({\n children,\n foldersMap,\n tableRows,\n tasksMap,\n entitiesMap,\n tasksByFolderMap,\n expanded,\n projectInfo,\n showHierarchy,\n loadingTasks,\n isLoadingMore,\n isLoading,\n error,\n isInitialized,\n projectName,\n users,\n attribFields,\n taskGroups,\n filters,\n setFilters,\n queryFilters,\n updateShowHierarchy,\n toggleExpanded,\n updateExpanded,\n sorting,\n updateSorting,\n fetchNextPage,\n reloadTableData,\n setExpanded,\n contextMenuItems,\n powerpack,\n modules,\n groupByConfig,\n}: ProjectTableProviderProps) => {\n // DATA TO TABLE\n const defaultTableData = useBuildProjectDataTable({\n foldersMap,\n tasksMap,\n rows: tableRows,\n tasksByFolderMap,\n expanded,\n projectInfo,\n showHierarchy,\n loadingTasks,\n isLoadingMore,\n })\n const { groupBy } = useColumnSettingsContext()\n\n const buildGroupByTableData = useBuildGroupByTableData({\n entities: entitiesMap,\n entityType: groupByConfig?.entityType,\n groups: taskGroups,\n project: projectInfo,\n attribFields,\n })\n\n // if we are grouping by something, we ignore current tableData and format the data based on the groupBy\n const groupedTableData = useMemo(\n () => !!groupBy && buildGroupByTableData(groupBy),\n [groupBy, entitiesMap, taskGroups],\n )\n\n const tableData = groupBy && groupedTableData ? groupedTableData : defaultTableData\n\n const getEntityById = useCallback(\n (id: string): EntityMap | undefined => {\n // always parse the id to remove any suffixes\n // this can happen if the id is a group by id (we need to make the row id unique)\n const parsedId = parseRowId(id)\n if (foldersMap.has(parsedId)) {\n return foldersMap.get(parsedId)\n } else if (tasksMap.has(parsedId)) {\n return tasksMap.get(parsedId)\n } else if (entitiesMap.has(parsedId)) {\n return entitiesMap.get(parsedId)\n }\n\n // Return undefined if not found\n return undefined\n },\n [foldersMap, tasksMap, entitiesMap],\n )\n\n // get folder relationship functions\n const {\n getInheritedDependents,\n getChildrenEntities,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n getAncestorsOf,\n } = useFolderRelationships({\n entitiesMap,\n tasksMap,\n tasksByFolderMap,\n getEntityById,\n projectAttrib: projectInfo?.attrib,\n attribFields: attribFields,\n })\n\n const toggleExpandAll: ProjectTableContextProps['toggleExpandAll'] = useCallback(\n (rowIds, expandAll) => {\n const expandedState = typeof expanded === 'object' ? expanded : {}\n\n const newExpandedState = { ...expandedState }\n\n rowIds.forEach((rowId) => {\n // get all children of the rowId using tableData\n const childIds = getChildrenEntities(rowId).map((child) => child.id)\n // check if the rowId is expanded\n const isExpanded = expandedState[rowId] || false\n\n if (expandAll !== undefined ? !expandAll : isExpanded) {\n // collapse all children\n newExpandedState[rowId] = false\n childIds.forEach((id) => {\n newExpandedState[id] = false\n })\n } else {\n // expand all children\n newExpandedState[rowId] = true\n childIds.forEach((id) => {\n newExpandedState[id] = true\n })\n }\n })\n\n setExpanded(newExpandedState)\n },\n [expanded, getChildrenEntities, setExpanded],\n )\n\n const toggleExpands: ProjectTableContextProps['toggleExpands'] = useCallback(\n (rowIds, expand) => {\n const expandedState = typeof expanded === 'object' ? expanded : {}\n const newExpandedState = { ...expandedState }\n\n rowIds.forEach((rowId) => {\n if (expand !== undefined) {\n // Use the provided expand parameter\n newExpandedState[rowId] = expand\n } else {\n // Toggle based on current state\n newExpandedState[rowId] = !expandedState[rowId]\n }\n })\n\n setExpanded(newExpandedState)\n },\n [expanded, setExpanded],\n )\n\n return (\n <ProjectTableContext.Provider\n value={{\n // from this context\n tableData,\n // forwarded on\n isInitialized,\n isLoading,\n error,\n projectInfo,\n attribFields,\n users,\n projectName,\n tasksMap,\n foldersMap,\n entitiesMap,\n fetchNextPage,\n reloadTableData,\n taskGroups,\n // filters\n filters,\n setFilters,\n queryFilters,\n // hierarchy\n showHierarchy,\n updateShowHierarchy,\n // expanded state\n expanded,\n toggleExpanded,\n updateExpanded,\n toggleExpandAll,\n toggleExpands,\n // sorting\n sorting,\n updateSorting,\n getEntityById,\n // folder relationships\n getInheritedDependents,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n getAncestorsOf,\n // context menu\n contextMenuItems,\n // powerpack context\n powerpack,\n modules,\n }}\n >\n {children}\n </ProjectTableContext.Provider>\n )\n}\n\nexport const useProjectTableContext = () => {\n const context = useContext(ProjectTableContext)\n if (!context) {\n throw new Error('useProjectTableContext must be used within a ProjectTableProvider')\n }\n return context\n}\n"],"names":["jsx"],"mappings":"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"}