@ynput/ayon-frontend-shared 0.3.31 → 0.3.32

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 (877) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +24 -22
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +213 -197
  6. package/dist/ProjectTreeTable.es.js.map +1 -1
  7. package/dist/Slicer.cjs.js +1 -1
  8. package/dist/Slicer.es.js +19 -18
  9. package/dist/Slicer.es.js.map +1 -1
  10. package/dist/_virtual/index.cjs22.js +1 -1
  11. package/dist/_virtual/index.cjs23.js +1 -1
  12. package/dist/_virtual/index.cjs24.js +1 -1
  13. package/dist/_virtual/index.cjs4.js +1 -1
  14. package/dist/_virtual/index.cjs5.js +1 -1
  15. package/dist/_virtual/index.cjs6.js +1 -1
  16. package/dist/_virtual/index.cjs8.js +1 -1
  17. package/dist/_virtual/index.es19.js +2 -2
  18. package/dist/_virtual/index.es20.js +2 -2
  19. package/dist/_virtual/index.es22.js +3 -3
  20. package/dist/_virtual/index.es23.js +5 -5
  21. package/dist/_virtual/index.es24.js +5 -5
  22. package/dist/_virtual/index.es4.js +2 -5
  23. package/dist/_virtual/index.es4.js.map +1 -1
  24. package/dist/_virtual/index.es5.js +5 -2
  25. package/dist/_virtual/index.es5.js.map +1 -1
  26. package/dist/_virtual/index.es6.js +2 -2
  27. package/dist/_virtual/index.es8.js +2 -2
  28. package/dist/api.cjs.js +1 -1
  29. package/dist/api.es.js +453 -434
  30. package/dist/api.es.js.map +1 -1
  31. package/dist/index.cjs.js +1 -1
  32. package/dist/index.es.js +11 -9
  33. package/dist/index.es.js.map +1 -1
  34. package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js +1 -1
  35. package/dist/node_modules/match-sorter/dist/match-sorter.esm.es.js +1 -1
  36. package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
  37. package/dist/node_modules/parse-numeric-range/index.es.js +1 -1
  38. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +1 -1
  39. package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
  40. package/dist/node_modules/rehype/node_modules/vfile/lib/index.cjs.js +1 -1
  41. package/dist/node_modules/rehype/node_modules/vfile/lib/index.es.js +1 -1
  42. package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
  43. package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
  44. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  45. package/dist/node_modules/remove-accents/index.es.js +1 -1
  46. package/dist/shared/node_modules/@module-federation/error-codes/dist/index.cjs.js +1 -1
  47. package/dist/shared/node_modules/@module-federation/error-codes/dist/index.es.js +1 -1
  48. package/dist/shared/node_modules/@module-federation/runtime/dist/index.cjs.js +1 -1
  49. package/dist/shared/node_modules/@module-federation/runtime/dist/index.es.js +1 -1
  50. package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.cjs.js +1 -1
  51. package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.es.js +1 -1
  52. package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
  53. package/dist/shared/node_modules/prop-types/index.es.js +1 -1
  54. package/dist/shared/src/api/base/client.cjs.js +1 -1
  55. package/dist/shared/src/api/base/client.cjs.js.map +1 -1
  56. package/dist/shared/src/api/base/client.es.js +21 -17
  57. package/dist/shared/src/api/base/client.es.js.map +1 -1
  58. package/dist/shared/src/api/generated/folders.cjs.js +1 -1
  59. package/dist/shared/src/api/generated/folders.cjs.js.map +1 -1
  60. package/dist/shared/src/api/generated/folders.es.js +2 -14
  61. package/dist/shared/src/api/generated/folders.es.js.map +1 -1
  62. package/dist/shared/src/api/generated/graphql.cjs.js +237 -55
  63. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  64. package/dist/shared/src/api/generated/graphql.es.js +361 -161
  65. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  66. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  67. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  68. package/dist/shared/src/api/queries/activities/activityQueries.cjs.js +1 -0
  69. package/dist/shared/src/api/queries/activities/activityQueries.cjs.js.map +1 -1
  70. package/dist/shared/src/api/queries/activities/activityQueries.es.js +1 -0
  71. package/dist/shared/src/api/queries/activities/activityQueries.es.js.map +1 -1
  72. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js +1 -1
  73. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js.map +1 -1
  74. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js +33 -21
  75. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js.map +1 -1
  76. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js +1 -1
  77. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js.map +1 -1
  78. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js +74 -60
  79. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js.map +1 -1
  80. package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js +2 -0
  81. package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js.map +1 -0
  82. package/dist/shared/src/api/queries/columnStats/columnStats.es.js +96 -0
  83. package/dist/shared/src/api/queries/columnStats/columnStats.es.js.map +1 -0
  84. package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js +2 -0
  85. package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js.map +1 -0
  86. package/dist/shared/src/api/queries/columnStats/metricTargets.es.js +88 -0
  87. package/dist/shared/src/api/queries/columnStats/metricTargets.es.js.map +1 -0
  88. package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js +1 -1
  89. package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js.map +1 -1
  90. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js +62 -48
  91. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js.map +1 -1
  92. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +1 -1
  93. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  94. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +7 -3
  95. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  96. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +1 -1
  97. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -1
  98. package/dist/shared/src/api/queries/entityLists/getLists.es.js +94 -79
  99. package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -1
  100. package/dist/shared/src/api/queries/folders/getFolders.cjs.js +1 -1
  101. package/dist/shared/src/api/queries/folders/getFolders.cjs.js.map +1 -1
  102. package/dist/shared/src/api/queries/folders/getFolders.es.js +104 -71
  103. package/dist/shared/src/api/queries/folders/getFolders.es.js.map +1 -1
  104. package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
  105. package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
  106. package/dist/shared/src/api/queries/overview/getOverview.es.js +265 -216
  107. package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
  108. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
  109. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  110. package/dist/shared/src/api/queries/overview/updateOverview.es.js +198 -183
  111. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  112. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -1
  113. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js.map +1 -1
  114. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +138 -107
  115. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js.map +1 -1
  116. package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js +1 -1
  117. package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js.map +1 -1
  118. package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js +332 -239
  119. package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js.map +1 -1
  120. package/dist/shared/src/api/queries/views/updateViews.cjs.js +1 -1
  121. package/dist/shared/src/api/queries/views/updateViews.cjs.js.map +1 -1
  122. package/dist/shared/src/api/queries/views/updateViews.es.js +38 -38
  123. package/dist/shared/src/api/queries/views/updateViews.es.js.map +1 -1
  124. package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js +1 -1
  125. package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js.map +1 -1
  126. package/dist/shared/src/components/ColumnHeaderMenuUI.es.js +3 -2
  127. package/dist/shared/src/components/ColumnHeaderMenuUI.es.js.map +1 -1
  128. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
  129. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  130. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +3 -2
  131. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  132. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  133. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  134. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +4 -2
  135. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  136. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  137. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  138. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +3 -2
  139. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  140. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
  141. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
  142. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +3 -2
  143. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
  144. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  145. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
  146. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +3 -2
  147. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  148. package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js +1 -1
  149. package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js.map +1 -1
  150. package/dist/shared/src/components/EntityIcon/EntityIcon.es.js +3 -2
  151. package/dist/shared/src/components/EntityIcon/EntityIcon.es.js.map +1 -1
  152. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  153. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  154. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +137 -158
  155. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  156. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
  157. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
  158. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +4 -2
  159. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
  160. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
  161. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
  162. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +3 -2
  163. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
  164. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  165. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  166. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +5 -4
  167. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  168. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  169. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  170. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +3 -2
  171. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  172. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
  173. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  174. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +3 -2
  175. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  176. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js +1 -1
  177. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js.map +1 -1
  178. package/dist/shared/src/components/LinksManager/LinksManager.es.js +3 -2
  179. package/dist/shared/src/components/LinksManager/LinksManager.es.js.map +1 -1
  180. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  181. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  182. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +4 -2
  183. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  184. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
  185. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
  186. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +3 -2
  187. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
  188. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js +1 -1
  189. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js.map +1 -1
  190. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js +3 -2
  191. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js.map +1 -1
  192. package/dist/shared/src/components/Menu/Menu.cjs.js +1 -1
  193. package/dist/shared/src/components/Menu/Menu.cjs.js.map +1 -1
  194. package/dist/shared/src/components/Menu/Menu.es.js +3 -2
  195. package/dist/shared/src/components/Menu/Menu.es.js.map +1 -1
  196. package/dist/shared/src/components/Menu/MenuItem.cjs.js +1 -1
  197. package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -1
  198. package/dist/shared/src/components/Menu/MenuItem.es.js +1 -0
  199. package/dist/shared/src/components/Menu/MenuItem.es.js.map +1 -1
  200. package/dist/shared/src/components/Menu/MenuList.cjs.js +1 -1
  201. package/dist/shared/src/components/Menu/MenuList.cjs.js.map +1 -1
  202. package/dist/shared/src/components/Menu/MenuList.es.js +3 -2
  203. package/dist/shared/src/components/Menu/MenuList.es.js.map +1 -1
  204. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +1 -1
  205. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
  206. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +3 -2
  207. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
  208. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  209. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  210. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +3 -2
  211. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  212. package/dist/shared/src/components/Powerpack/useFreeTrialLink.cjs.js +1 -1
  213. package/dist/shared/src/components/Powerpack/useFreeTrialLink.cjs.js.map +1 -1
  214. package/dist/shared/src/components/Powerpack/useFreeTrialLink.es.js +3 -2
  215. package/dist/shared/src/components/Powerpack/useFreeTrialLink.es.js.map +1 -1
  216. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +1 -1
  217. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
  218. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +79 -77
  219. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
  220. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
  221. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  222. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +6 -4
  223. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  224. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  225. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  226. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +3 -2
  227. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  228. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
  229. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
  230. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +4 -2
  231. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
  232. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
  233. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
  234. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +4 -2
  235. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
  236. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  237. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  238. package/dist/shared/src/components/RenameForm/RenameForm.es.js +4 -2
  239. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  240. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
  241. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  242. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +3 -2
  243. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  244. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  245. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  246. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +4 -2
  247. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  248. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  249. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  250. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +5 -3
  251. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  252. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  253. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  254. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +4 -2
  255. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  256. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
  257. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  258. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +3 -2
  259. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  260. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
  261. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
  262. package/dist/shared/src/components/ReviewablesSelector/Card.es.js +4 -2
  263. package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
  264. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  265. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  266. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +7 -6
  267. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  268. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +1 -1
  269. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
  270. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +3 -2
  271. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
  272. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
  273. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
  274. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +6 -4
  275. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
  276. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  277. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  278. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +4 -2
  279. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  280. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js +1 -1
  281. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js.map +1 -1
  282. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js +3 -2
  283. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js.map +1 -1
  284. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +2 -2
  285. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
  286. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +11 -10
  287. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
  288. package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js +1 -1
  289. package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js.map +1 -1
  290. package/dist/shared/src/components/Thumbnail/Thumbnail.es.js +49 -44
  291. package/dist/shared/src/components/Thumbnail/Thumbnail.es.js.map +1 -1
  292. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js +3 -3
  293. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js.map +1 -1
  294. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js +32 -22
  295. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js.map +1 -1
  296. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  297. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  298. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +4 -2
  299. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  300. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  301. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  302. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +8 -6
  303. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  304. package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
  305. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  306. package/dist/shared/src/components/Watchers/Watchers.es.js +3 -2
  307. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  308. package/dist/shared/src/config/powerpackFeatures.cjs.js +1 -1
  309. package/dist/shared/src/config/powerpackFeatures.cjs.js.map +1 -1
  310. package/dist/shared/src/config/powerpackFeatures.es.js +7 -1
  311. package/dist/shared/src/config/powerpackFeatures.es.js.map +1 -1
  312. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  313. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  314. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +4 -2
  315. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  316. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  317. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  318. package/dist/shared/src/containers/Actions/Actions.es.js +3 -2
  319. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  320. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  321. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  322. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +4 -2
  323. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  324. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  325. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  326. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +4 -2
  327. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  328. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  329. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  330. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +4 -2
  331. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  332. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  333. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  334. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +41 -38
  335. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  336. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  337. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  338. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +4 -2
  339. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  340. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
  341. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
  342. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +4 -2
  343. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
  344. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
  345. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
  346. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +4 -2
  347. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js.map +1 -1
  348. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  349. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  350. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +3 -2
  351. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  352. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
  353. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
  354. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +18 -16
  355. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
  356. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
  357. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
  358. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +4 -2
  359. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
  360. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
  361. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
  362. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +4 -2
  363. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
  364. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
  365. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
  366. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +13 -11
  367. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
  368. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js +1 -1
  369. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js.map +1 -1
  370. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js +14 -14
  371. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js.map +1 -1
  372. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  373. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  374. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +13 -9
  375. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  376. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  377. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  378. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +4 -2
  379. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  380. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  381. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  382. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +4 -2
  383. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  384. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  385. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  386. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +4 -2
  387. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  388. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  389. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  390. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +4 -2
  391. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  392. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  393. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  394. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +3 -2
  395. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  396. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  397. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  398. package/dist/shared/src/containers/Feed/Feed.es.js +5 -4
  399. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  400. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
  401. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
  402. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +4 -2
  403. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
  404. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  405. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  406. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +4 -2
  407. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  408. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  409. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  410. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +4 -2
  411. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  412. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
  413. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
  414. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +28 -27
  415. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
  416. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
  417. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  418. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +4 -2
  419. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  420. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
  421. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
  422. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +8 -6
  423. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
  424. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -1
  425. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
  426. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +3 -2
  427. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
  428. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
  429. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
  430. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +3 -2
  431. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
  432. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
  433. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
  434. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +3 -2
  435. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
  436. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  437. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  438. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +37 -44
  439. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  440. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js +1 -1
  441. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js.map +1 -1
  442. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js +3 -2
  443. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js.map +1 -1
  444. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  445. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  446. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +6 -5
  447. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  448. package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.cjs.js +1 -1
  449. package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.cjs.js.map +1 -1
  450. package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.es.js +14 -13
  451. package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.es.js.map +1 -1
  452. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  453. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  454. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +3 -2
  455. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  456. package/dist/shared/src/containers/ListTable/ListTable.cjs.js +1 -1
  457. package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
  458. package/dist/shared/src/containers/ListTable/ListTable.es.js +212 -204
  459. package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
  460. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
  461. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
  462. package/dist/shared/src/containers/ListTable/ListTableCell.es.js +4 -2
  463. package/dist/shared/src/containers/ListTable/ListTableCell.es.js.map +1 -1
  464. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js +1 -1
  465. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js.map +1 -1
  466. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js +4 -2
  467. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
  468. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  469. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  470. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +729 -675
  471. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  472. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js +32 -10
  473. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js.map +1 -1
  474. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js +42 -18
  475. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js.map +1 -1
  476. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  477. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  478. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +17 -14
  479. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  480. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
  481. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
  482. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +57 -43
  483. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
  484. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  485. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  486. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +4 -2
  487. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  488. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  489. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  490. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +4 -2
  491. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  492. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.cjs.js +48 -0
  493. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.cjs.js.map +1 -0
  494. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.es.js +103 -0
  495. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.es.js.map +1 -0
  496. package/dist/shared/src/containers/ProjectTreeTable/constants.cjs.js +2 -0
  497. package/dist/shared/src/containers/ProjectTreeTable/constants.cjs.js.map +1 -0
  498. package/dist/shared/src/containers/ProjectTreeTable/constants.es.js +6 -0
  499. package/dist/shared/src/containers/ProjectTreeTable/constants.es.js.map +1 -0
  500. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  501. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  502. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +4 -2
  503. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  504. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +4 -4
  505. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  506. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +7 -5
  507. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  508. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js.map +1 -1
  509. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js.map +1 -1
  510. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
  511. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
  512. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +215 -181
  513. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
  514. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  515. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  516. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +5 -4
  517. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  518. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +1 -1
  519. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -1
  520. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +3 -2
  521. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -1
  522. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.cjs.js +1 -1
  523. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.cjs.js.map +1 -1
  524. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.es.js +21 -17
  525. package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.es.js.map +1 -1
  526. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js +1 -1
  527. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js.map +1 -1
  528. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.es.js +1 -2
  529. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.es.js.map +1 -1
  530. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  531. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  532. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +17 -11
  533. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  534. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
  535. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  536. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +3 -2
  537. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  538. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  539. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  540. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +83 -81
  541. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  542. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  543. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  544. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +116 -111
  545. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  546. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  547. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  548. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +6 -3
  549. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  550. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  551. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  552. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +4 -2
  553. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  554. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  555. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  556. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +4 -2
  557. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  558. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
  559. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
  560. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +4 -2
  561. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
  562. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  563. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  564. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +3 -2
  565. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  566. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.cjs.js.map +1 -1
  567. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.es.js.map +1 -1
  568. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  569. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  570. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +4 -2
  571. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  572. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  573. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  574. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +4 -2
  575. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  576. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  577. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  578. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +4 -2
  579. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  580. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  581. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  582. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +4 -2
  583. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  584. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  585. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  586. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +4 -2
  587. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  588. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  589. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  590. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +80 -78
  591. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  592. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
  593. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
  594. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +4 -2
  595. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
  596. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js +1 -1
  597. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js.map +1 -1
  598. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js +45 -44
  599. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js.map +1 -1
  600. package/dist/shared/src/containers/ProjectTreeTable/types/summaryTypes.cjs.js +2 -0
  601. package/dist/shared/src/containers/ProjectTreeTable/types/summaryTypes.cjs.js.map +1 -0
  602. package/dist/shared/src/containers/ProjectTreeTable/types/summaryTypes.es.js +16 -0
  603. package/dist/shared/src/containers/ProjectTreeTable/types/summaryTypes.es.js.map +1 -0
  604. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  605. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  606. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +15 -13
  607. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  608. package/dist/shared/src/containers/ProjectTreeTable/utils/checkColumnVisibility.cjs.js +1 -1
  609. package/dist/shared/src/containers/ProjectTreeTable/utils/checkColumnVisibility.cjs.js.map +1 -1
  610. package/dist/shared/src/containers/ProjectTreeTable/utils/checkColumnVisibility.es.js +29 -25
  611. package/dist/shared/src/containers/ProjectTreeTable/utils/checkColumnVisibility.es.js.map +1 -1
  612. package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.cjs.js +2 -0
  613. package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.cjs.js.map +1 -0
  614. package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.es.js +17 -0
  615. package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.es.js.map +1 -0
  616. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
  617. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  618. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +4 -2
  619. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  620. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +1 -1
  621. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  622. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +12 -10
  623. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  624. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  625. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  626. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +6 -4
  627. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  628. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js +1 -1
  629. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js.map +1 -1
  630. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js +3 -2
  631. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js.map +1 -1
  632. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  633. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  634. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +4 -2
  635. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  636. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
  637. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
  638. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +4 -2
  639. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
  640. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js +1 -1
  641. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js.map +1 -1
  642. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js +3 -2
  643. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js.map +1 -1
  644. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js +4 -4
  645. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js.map +1 -1
  646. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js +24 -19
  647. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js.map +1 -1
  648. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  649. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  650. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +4 -2
  651. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  652. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  653. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  654. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +4 -2
  655. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  656. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js +1 -1
  657. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js.map +1 -1
  658. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js +3 -2
  659. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js.map +1 -1
  660. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
  661. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
  662. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +4 -2
  663. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
  664. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +1 -1
  665. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -1
  666. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +5 -4
  667. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
  668. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js +1 -1
  669. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js.map +1 -1
  670. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js +3 -2
  671. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
  672. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js +1 -1
  673. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js.map +1 -1
  674. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js +3 -2
  675. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js.map +1 -1
  676. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
  677. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
  678. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +4 -2
  679. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
  680. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js +1 -1
  681. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js.map +1 -1
  682. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js +3 -2
  683. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -1
  684. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
  685. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
  686. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +12 -11
  687. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
  688. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +1 -1
  689. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -1
  690. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +3 -2
  691. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -1
  692. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  693. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  694. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +3 -2
  695. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  696. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
  697. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
  698. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +4 -2
  699. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
  700. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +1 -1
  701. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
  702. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +3 -2
  703. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
  704. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  705. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  706. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +119 -118
  707. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  708. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js +1 -1
  709. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js.map +1 -1
  710. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js +18 -16
  711. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js.map +1 -1
  712. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js +1 -1
  713. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js.map +1 -1
  714. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js +79 -51
  715. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js.map +1 -1
  716. package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.cjs.js +1 -1
  717. package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.cjs.js.map +1 -1
  718. package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.es.js +19 -17
  719. package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.es.js.map +1 -1
  720. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js +1 -1
  721. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js.map +1 -1
  722. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js +3 -2
  723. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js.map +1 -1
  724. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  725. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  726. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +6 -5
  727. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  728. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
  729. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
  730. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +12 -11
  731. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
  732. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
  733. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
  734. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +3 -2
  735. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
  736. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  737. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  738. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +78 -65
  739. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  740. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  741. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  742. package/dist/shared/src/context/AddonProjectContext.es.js +5 -4
  743. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  744. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  745. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  746. package/dist/shared/src/context/DetailsPanelContext.es.js +5 -4
  747. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  748. package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
  749. package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
  750. package/dist/shared/src/context/GlobalContext.es.js +5 -4
  751. package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
  752. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  753. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  754. package/dist/shared/src/context/PowerpackContext.es.js +7 -6
  755. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  756. package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
  757. package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
  758. package/dist/shared/src/context/ProjectContext.es.js +5 -4
  759. package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
  760. package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
  761. package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
  762. package/dist/shared/src/context/ProjectFoldersContext.es.js +5 -4
  763. package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
  764. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  765. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  766. package/dist/shared/src/context/RemoteModulesContext.es.js +5 -4
  767. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  768. package/dist/shared/src/context/SubtasksModulesContext.cjs.js +1 -1
  769. package/dist/shared/src/context/SubtasksModulesContext.cjs.js.map +1 -1
  770. package/dist/shared/src/context/SubtasksModulesContext.es.js +5 -4
  771. package/dist/shared/src/context/SubtasksModulesContext.es.js.map +1 -1
  772. package/dist/shared/src/context/UriContext.cjs.js +1 -1
  773. package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
  774. package/dist/shared/src/context/UriContext.es.js +6 -5
  775. package/dist/shared/src/context/UriContext.es.js.map +1 -1
  776. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  777. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  778. package/dist/shared/src/context/WebsocketContext.es.js +6 -4
  779. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  780. package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
  781. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  782. package/dist/shared/src/hooks/useActionTriggers.es.js +3 -2
  783. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  784. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  785. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  786. package/dist/shared/src/hooks/useEntityUpdate.es.js +3 -2
  787. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  788. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js +1 -1
  789. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
  790. package/dist/shared/src/hooks/useGetEntityGroups.es.js +3 -2
  791. package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
  792. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
  793. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
  794. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +3 -2
  795. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
  796. package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
  797. package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
  798. package/dist/shared/src/hooks/useHierarchyTable.es.js +3 -2
  799. package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
  800. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
  801. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  802. package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
  803. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  804. package/dist/shared/src/hooks/useScopedTypes.cjs.js +1 -1
  805. package/dist/shared/src/hooks/useScopedTypes.cjs.js.map +1 -1
  806. package/dist/shared/src/hooks/useScopedTypes.es.js +3 -2
  807. package/dist/shared/src/hooks/useScopedTypes.es.js.map +1 -1
  808. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  809. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  810. package/dist/shared/src/hooks/useUserProjectConfig.es.js +3 -2
  811. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  812. package/dist/shared/src/util/columnConfigConverter.cjs.js +1 -1
  813. package/dist/shared/src/util/columnConfigConverter.cjs.js.map +1 -1
  814. package/dist/shared/src/util/columnConfigConverter.es.js +86 -65
  815. package/dist/shared/src/util/columnConfigConverter.es.js.map +1 -1
  816. package/dist/shared/src/util/getThumbnailUrl.cjs.js +2 -0
  817. package/dist/shared/src/util/getThumbnailUrl.cjs.js.map +1 -0
  818. package/dist/shared/src/util/getThumbnailUrl.es.js +23 -0
  819. package/dist/shared/src/util/getThumbnailUrl.es.js.map +1 -0
  820. package/dist/shared/src/util/thumbnailWebsocket.cjs.js +2 -0
  821. package/dist/shared/src/util/thumbnailWebsocket.cjs.js.map +1 -0
  822. package/dist/shared/src/util/thumbnailWebsocket.es.js +54 -0
  823. package/dist/shared/src/util/thumbnailWebsocket.es.js.map +1 -0
  824. package/dist/types/api/generated/folders.d.ts +1 -6
  825. package/dist/types/api/generated/graphql.d.ts +275 -6
  826. package/dist/types/api/generated/graphqlLinks.d.ts +7 -4
  827. package/dist/types/api/queries/activities/activityQueries.d.ts +1 -0
  828. package/dist/types/api/queries/activities/getActivities.d.ts +47 -0
  829. package/dist/types/api/queries/activities/updateActivities.d.ts +94 -0
  830. package/dist/types/api/queries/activities/util/activitiesHelpers.d.ts +1 -0
  831. package/dist/types/api/queries/columnStats/columnStats.d.ts +28 -0
  832. package/dist/types/api/queries/columnStats/index.d.ts +2 -0
  833. package/dist/types/api/queries/columnStats/metricTargets.d.ts +31 -0
  834. package/dist/types/api/queries/entities/getEntity.d.ts +47 -0
  835. package/dist/types/api/queries/entities/getEntityPanel.d.ts +47 -0
  836. package/dist/types/api/queries/entities/transformDetailsPanelData.d.ts +1 -0
  837. package/dist/types/api/queries/entities/updateEntity.d.ts +47 -0
  838. package/dist/types/api/queries/entityLists/getLists.d.ts +47 -0
  839. package/dist/types/api/queries/index.d.ts +1 -0
  840. package/dist/types/api/queries/overview/getOverview.d.ts +733 -1
  841. package/dist/types/api/queries/project/getProject.d.ts +47 -0
  842. package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +69 -0
  843. package/dist/types/api/queries/users/getUsers.d.ts +47 -0
  844. package/dist/types/api/queries/versions/getVersionsProducts.d.ts +828 -1
  845. package/dist/types/components/EntityPanelUploader/EntityPanelUploader.d.ts +1 -11
  846. package/dist/types/components/Thumbnail/StackedThumbnails.d.ts +2 -2
  847. package/dist/types/components/Thumbnail/Thumbnail.d.ts +2 -2
  848. package/dist/types/components/ThumbnailSimple/ThumbnailSimple.d.ts +1 -1
  849. package/dist/types/config/powerpackFeatures.d.ts +1 -1
  850. package/dist/types/containers/DetailsPanel/containers/FeedWrapper.d.ts +1 -0
  851. package/dist/types/containers/DetailsPanel/helpers/getThumbnails.d.ts +2 -2
  852. package/dist/types/containers/Feed/components/ActivityVersions/ActivityVersions.d.ts +1 -0
  853. package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +8 -3
  854. package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.styled.d.ts +2 -0
  855. package/dist/types/containers/ProjectTreeTable/buildTreeTableColumns.d.ts +1 -1
  856. package/dist/types/containers/ProjectTreeTable/components/TableFooterRow.d.ts +14 -0
  857. package/dist/types/containers/ProjectTreeTable/constants.d.ts +2 -0
  858. package/dist/types/containers/ProjectTreeTable/context/ColumnSettingsContext.d.ts +10 -0
  859. package/dist/types/containers/ProjectTreeTable/context/SelectionCellsContext.d.ts +0 -1
  860. package/dist/types/containers/ProjectTreeTable/index.d.ts +1 -0
  861. package/dist/types/containers/ProjectTreeTable/types/index.d.ts +17 -1
  862. package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +2 -0
  863. package/dist/types/containers/ProjectTreeTable/types/summaryTypes.d.ts +50 -0
  864. package/dist/types/containers/ProjectTreeTable/types/table.d.ts +3 -0
  865. package/dist/types/containers/ProjectTreeTable/utils/checkColumnVisibility.d.ts +2 -0
  866. package/dist/types/containers/ProjectTreeTable/utils/index.d.ts +1 -0
  867. package/dist/types/containers/ProjectTreeTable/utils/pinningUtils.d.ts +6 -0
  868. package/dist/types/containers/ProjectTreeTable/widgets/ThumbnailWidget.d.ts +1 -1
  869. package/dist/types/containers/Views/hooks/useSelectedView.d.ts +2 -1
  870. package/dist/types/containers/Views/utils/viewUpdateHelper.d.ts +7 -3
  871. package/dist/types/util/getThumbnailUrl.d.ts +18 -0
  872. package/dist/types/util/index.d.ts +2 -0
  873. package/dist/types/util/thumbnailWebsocket.d.ts +21 -0
  874. package/dist/util.cjs.js +1 -1
  875. package/dist/util.es.js +35 -30
  876. package/dist/util.es.js.map +1 -1
  877. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnSettingsProvider.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ColumnSettingsProvider.tsx"],"sourcesContent":["import React, { ReactNode, useState } from 'react'\nimport {\n ColumnOrderState,\n ColumnPinningState,\n functionalUpdate,\n OnChangeFn,\n VisibilityState,\n ColumnSizingState,\n SortingState,\n} from '@tanstack/react-table'\nimport { ROW_SELECTION_COLUMN_ID } from './SelectionCellsContext'\nimport { DRAG_HANDLE_COLUMN_ID } from '../ProjectTreeTable'\nimport { ColumnsConfig, ColumnSettingsContext, TableGroupBy } from './ColumnSettingsContext'\nimport { GroupByConfig } from '../components/GroupSettingsFallback'\nimport { isEqual } from 'lodash'\nimport { checkColumnVisibility } from '../utils'\n\ninterface ColumnSettingsProviderProps {\n children: ReactNode\n config?: Record<string, any>\n onChange: (config: ColumnsConfig, allColumnIds?: string[]) => void\n defaultColumnVisibility?: VisibilityState\n}\n\nexport const ColumnSettingsProvider: React.FC<ColumnSettingsProviderProps> = ({\n children,\n config,\n onChange,\n defaultColumnVisibility,\n}) => {\n const allColumnsRef = React.useRef<string[]>([])\n const resizingTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n const rowHeightTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n const columnOrderTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n const prevRowHeightRef = React.useRef<number | undefined>(undefined)\n const lockedAspectRatioRef = React.useRef<number | null>(null)\n // Internal state for immediate updates (similar to column sizing)\n const [internalColumnSizing, setInternalColumnSizing] = useState<ColumnSizingState | null>(null)\n const [internalRowHeight, setInternalRowHeight] = useState<number | null>(null)\n const [internalColumnOrder, setInternalColumnOrder] = useState<ColumnOrderState | null>(null)\n\n const setAllColumns = (allColumnIds: string[]) => {\n allColumnsRef.current = Array.from(new Set(allColumnIds))\n }\n const onChangeWithColumns = (next: ColumnsConfig) => {\n const allKnownIds = allColumnsRef.current\n // Expand sparse columnVisibility to explicit values for all known columns so that\n // \"undefined\" is never ambiguous when columns are saved and reloaded.\n const specialIds = new Set([DRAG_HANDLE_COLUMN_ID, ROW_SELECTION_COLUMN_ID])\n if (allKnownIds.length > 0) {\n const resolvedVisibility = { ...next.columnVisibility }\n allKnownIds.forEach((id) => {\n if (!specialIds.has(id) && resolvedVisibility[id] === undefined) {\n resolvedVisibility[id] = checkColumnVisibility({}, id, defaultColumnVisibility)\n }\n })\n onChange({ ...next, columnVisibility: resolvedVisibility }, allKnownIds)\n } else {\n onChange(next, allKnownIds)\n }\n }\n const columnsConfig = config as ColumnsConfig\n\n const {\n columnOrder: columnOrderInit = [],\n columnPinning: columnPinningInit = {},\n columnVisibility: columnVisibilityInit = {},\n columnSizing: columnsSizingExternal = {},\n sorting: sortingInit = [],\n groupBy,\n groupByConfig = {},\n rowHeight: configRowHeight = 34,\n } = columnsConfig || {}\n\n // Clear internal row height when config changes (e.g., when switching views)\n // This happens during render, before the component uses the value\n if (prevRowHeightRef.current !== configRowHeight && prevRowHeightRef.current !== undefined) {\n // Config changed, clear internal state\n if (internalRowHeight !== null) {\n setInternalRowHeight(null)\n }\n // Clear any pending timeout\n if (rowHeightTimeoutRef.current) {\n clearTimeout(rowHeightTimeoutRef.current)\n rowHeightTimeoutRef.current = null\n }\n }\n prevRowHeightRef.current = configRowHeight\n\n // Use internal row height during adjustments, otherwise use config value\n const rowHeight = internalRowHeight ?? configRowHeight\n\n const sorting = [...sortingInit]\n // Use internal column order for immediate UI updates, otherwise use config value\n const columnOrderBase = internalColumnOrder ?? [...columnOrderInit]\n const columnOrder = [...columnOrderBase]\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 // if we are in grouping mode (except folder grouping), always pin the name column\n // and ensure it is first in column order\n if (groupBy && groupBy.id !== 'folder') {\n // ensure name column is pinned and first in pinning order\n if (!columnPinning.left?.includes('name')) {\n columnPinning.left = ['name', ...(columnPinning?.left || [])]\n } else {\n // name is already pinned, but ensure it's first\n const filteredPinned = columnPinning.left.filter((col) => col !== 'name')\n columnPinning.left = ['name', ...filteredPinned]\n }\n\n // ensure name is first in column order\n if (columnOrder.includes('name')) {\n // remove name from its current position\n const nameIndex = columnOrder.indexOf('name')\n columnOrder.splice(nameIndex, 1)\n }\n // add name to the beginning\n columnOrder.unshift('name')\n }\n\n // add drag handle and selection columns to the beginning of the column order\n columnOrder.unshift(...[DRAG_HANDLE_COLUMN_ID, ROW_SELECTION_COLUMN_ID])\n\n // VISIBILITY STATE MUTATIONS\n const columnVisibility = { ...columnVisibilityInit }\n // if we are in grouping mode, name column must always be visible\n if (groupBy && !columnVisibility.name) {\n columnVisibility.name = true\n }\n\n // DIRECT STATE UPDATES - no side effects\n const setColumnVisibility = (visibility: VisibilityState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnVisibility: visibility,\n })\n }\n\n const setColumnOrder = (order: ColumnOrderState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: order,\n })\n }\n\n const setColumnPinning = (pinning: ColumnPinningState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnPinning: pinning,\n })\n }\n\n // use internalColumnSizing if it exists, otherwise use the external column sizing\n const columnSizing = internalColumnSizing || columnsSizingExternal\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 onChangeWithColumns({\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\n const newPinnedColumns = pinnedColumns.filter((col) =>\n checkColumnVisibility(visibility, col, defaultColumnVisibility),\n )\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 onChangeWithColumns({\n ...columnsConfig,\n columnVisibility: visibility,\n columnPinning: newPinning,\n })\n }\n\n const updateColumnOrder = (order: ColumnOrderState) => {\n // Filter out special columns that are added dynamically\n const filteredOrder = order.filter(\n (id) => id !== DRAG_HANDLE_COLUMN_ID && id !== ROW_SELECTION_COLUMN_ID,\n )\n\n const newPinning = updatePinningOrderOnOrderChange(filteredOrder)\n\n // Update UI immediately (optimistic)\n setInternalColumnOrder(filteredOrder)\n\n // Clear any existing timeout to debounce API calls\n if (columnOrderTimeoutRef.current) {\n clearTimeout(columnOrderTimeoutRef.current)\n }\n\n // Debounce API call to avoid excessive requests\n columnOrderTimeoutRef.current = setTimeout(() => {\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: filteredOrder,\n columnPinning: newPinning,\n })\n // Clear internal state after persistence\n setInternalColumnOrder(null)\n }, 300)\n }\n\n const updateColumnPinning = (pinning: ColumnPinningState) => {\n const newOrder = updateOrderOnPinningChange(pinning)\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: newOrder,\n columnPinning: pinning,\n })\n }\n\n const updateSorting = (sortingState: SortingState) => {\n onChangeWithColumns({\n ...columnsConfig,\n sorting: sortingState,\n })\n }\n\n const updateGroupBy = (groupBy: TableGroupBy | undefined) => {\n onChangeWithColumns({\n ...columnsConfig,\n groupBy: groupBy,\n })\n }\n\n const updateGroupByConfig = (config: GroupByConfig) => {\n onChangeWithColumns({\n ...columnsConfig,\n groupByConfig: {\n ...groupByConfig,\n ...config,\n },\n })\n }\n\n // Update row height for immediate UI feedback (no API call)\n const updateRowHeight = React.useCallback(\n (newRowHeight: number) => {\n // Lock the aspect ratio on first call if not already locked\n if (lockedAspectRatioRef.current === null) {\n const currentThumbnailWidth = columnsSizingExternal.thumbnail || 63\n const currentRowHeight = configRowHeight || 34\n lockedAspectRatioRef.current = currentThumbnailWidth / currentRowHeight\n }\n const newThumbnailWidth = lockedAspectRatioRef.current * newRowHeight\n\n setInternalRowHeight(newRowHeight)\n setInternalColumnSizing({\n ...(internalColumnSizing || columnsSizingExternal),\n thumbnail: newThumbnailWidth,\n })\n },\n [columnsSizingExternal, configRowHeight],\n )\n\n // Update row height and persist to API\n const updateRowHeightWithPersistence = React.useCallback(\n (newRowHeight: number) => {\n const currentThumbnailWidth = columnsSizingExternal.thumbnail || 63\n const currentRowHeight = configRowHeight || 34\n const currentRatio = currentThumbnailWidth / currentRowHeight\n\n const newThumbnailWidth = currentRatio * newRowHeight\n\n // Update UI immediately\n setInternalRowHeight(newRowHeight)\n setInternalColumnSizing({\n ...(internalColumnSizing || columnsSizingExternal),\n thumbnail: newThumbnailWidth,\n })\n\n // Clear any existing timeout to debounce API calls\n if (rowHeightTimeoutRef.current) {\n clearTimeout(rowHeightTimeoutRef.current)\n }\n\n // Debounce API call to avoid excessive requests\n rowHeightTimeoutRef.current = setTimeout(() => {\n // Persist to API\n onChangeWithColumns({\n ...columnsConfig,\n rowHeight: newRowHeight,\n columnSizing: {\n ...columnsSizingExternal,\n thumbnail: newThumbnailWidth,\n },\n })\n\n // Clean up internal state after API call completes\n setInternalRowHeight(null)\n setInternalColumnSizing(null)\n lockedAspectRatioRef.current = null\n }, 300)\n },\n [\n columnsConfig,\n onChangeWithColumns,\n columnsSizingExternal,\n configRowHeight,\n internalColumnSizing,\n ],\n )\n\n // Remove redundant local updater functions in favor of unified updaters with all columns\n\n // ON-CHANGE HANDLERS (TanStack-compatible)\n const columnVisibilityOnChange: OnChangeFn<VisibilityState> = (updater) => {\n const nextFull = typeof updater === 'function' ? updater(columnVisibility) : updater\n\n // Calculate sparse version: only keys that are different from defaults\n const sparseNext: VisibilityState = {}\n Object.keys(nextFull).forEach((key) => {\n const defaultValue = checkColumnVisibility({}, key, defaultColumnVisibility)\n if (nextFull[key] !== defaultValue) {\n sparseNext[key] = nextFull[key]\n }\n })\n\n if (isEqual(sparseNext, columnVisibility)) return\n setColumnVisibility(sparseNext)\n }\n\n const columnPinningOnChange: OnChangeFn<ColumnPinningState> = (updater) => {\n const newPinning = functionalUpdate(updater, columnPinning)\n if (isEqual(newPinning, columnPinning)) return\n setColumnPinning(newPinning)\n }\n\n const columnOrderOnChange: OnChangeFn<ColumnOrderState> = (updater) => {\n const newOrder = functionalUpdate(updater, columnOrder)\n if (isEqual(newOrder, columnOrder)) return\n setColumnOrder(newOrder)\n }\n\n const columnSizingOnChange: OnChangeFn<ColumnSizingState> = (updater) => {\n const newSizing = functionalUpdate(updater, columnSizing)\n if (isEqual(newSizing, columnSizing)) return\n setColumnSizing(newSizing)\n }\n\n const sortingOnChange: OnChangeFn<SortingState> = (updater) => {\n const newSorting = functionalUpdate(updater, sorting)\n if (isEqual(newSorting, sorting)) return\n updateSorting(newSorting)\n }\n\n return (\n <ColumnSettingsContext.Provider\n value={{\n // all columns ref\n setAllColumns,\n // column visibility\n columnVisibility,\n defaultColumnVisibility,\n setColumnVisibility,\n updateColumnVisibility,\n columnVisibilityOnChange,\n // column pinning\n columnPinning,\n setColumnPinning,\n updateColumnPinning,\n columnPinningOnChange,\n // column order\n columnOrder,\n setColumnOrder,\n updateColumnOrder,\n columnOrderOnChange,\n // column sizing\n columnSizing,\n setColumnSizing,\n columnSizingOnChange,\n // sorting\n sorting,\n updateSorting,\n sortingOnChange,\n // group by\n groupBy,\n updateGroupBy,\n groupByConfig,\n updateGroupByConfig,\n // row height\n rowHeight,\n updateRowHeight,\n updateRowHeightWithPersistence,\n\n // global change\n setColumnsConfig: (config: ColumnsConfig) => onChangeWithColumns(config),\n }}\n >\n {children}\n </ColumnSettingsContext.Provider>\n )\n}\n"],"names":["ColumnSettingsProvider","children","config","onChange","defaultColumnVisibility","allColumnsRef","React","resizingTimeoutRef","rowHeightTimeoutRef","columnOrderTimeoutRef","prevRowHeightRef","lockedAspectRatioRef","internalColumnSizing","setInternalColumnSizing","useState","internalRowHeight","setInternalRowHeight","internalColumnOrder","setInternalColumnOrder","setAllColumns","allColumnIds","onChangeWithColumns","next","allKnownIds","specialIds","DRAG_HANDLE_COLUMN_ID","ROW_SELECTION_COLUMN_ID","resolvedVisibility","id","checkColumnVisibility","columnsConfig","columnOrderInit","columnPinningInit","columnVisibilityInit","columnsSizingExternal","sortingInit","groupBy","groupByConfig","configRowHeight","rowHeight","sorting","columnOrder","columnPinning","defaultOrder","col","defaultBefore","columnAfter","index","filteredPinned","nameIndex","columnVisibility","setColumnVisibility","visibility","setColumnOrder","order","setColumnPinning","pinning","columnSizing","setColumnSizing","sizing","togglePinningOnVisibilityChange","newPinning","newPinnedColumns","updatePinningOrderOnOrderChange","pinnedColumns","pinnedColumnsOrder","updateOrderOnPinningChange","a","b","aPinned","updateColumnVisibility","updateColumnOrder","filteredOrder","updateColumnPinning","newOrder","updateSorting","sortingState","updateGroupBy","updateGroupByConfig","updateRowHeight","newRowHeight","currentThumbnailWidth","currentRowHeight","newThumbnailWidth","updateRowHeightWithPersistence","columnVisibilityOnChange","updater","nextFull","sparseNext","key","defaultValue","isEqual","columnPinningOnChange","functionalUpdate","columnOrderOnChange","columnSizingOnChange","newSizing","sortingOnChange","newSorting","jsx","ColumnSettingsContext"],"mappings":"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"}
1
+ {"version":3,"file":"ColumnSettingsProvider.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ColumnSettingsProvider.tsx"],"sourcesContent":["import React, { ReactNode, useState } from 'react'\nimport {\n ColumnOrderState,\n ColumnPinningState,\n functionalUpdate,\n OnChangeFn,\n VisibilityState,\n ColumnSizingState,\n SortingState,\n} from '@tanstack/react-table'\nimport { ColumnsConfig, ColumnSettingsContext, TableGroupBy } from './ColumnSettingsContext'\nimport { GroupByConfig } from '../components/GroupSettingsFallback'\nimport { SummaryCalc, SummaryFormat, RowScope } from '../types/summaryTypes'\nimport { isEqual } from 'lodash'\nimport { checkColumnVisibility } from '../utils'\nimport { ROW_SELECTION_COLUMN_ID, DRAG_HANDLE_COLUMN_ID } from '../constants'\n\ninterface ColumnSettingsProviderProps {\n children: ReactNode\n config?: Record<string, any>\n onChange: (config: ColumnsConfig, allColumnIds?: string[]) => void\n defaultColumnVisibility?: VisibilityState\n}\n\nexport const ColumnSettingsProvider: React.FC<ColumnSettingsProviderProps> = ({\n children,\n config,\n onChange,\n defaultColumnVisibility,\n}) => {\n const allColumnsRef = React.useRef<string[]>([])\n const resizingTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n const rowHeightTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n const columnOrderTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n const prevRowHeightRef = React.useRef<number | undefined>(undefined)\n const lockedAspectRatioRef = React.useRef<number | null>(null)\n // Internal state for immediate updates (similar to column sizing)\n const [internalColumnSizing, setInternalColumnSizing] = useState<ColumnSizingState | null>(null)\n const [internalRowHeight, setInternalRowHeight] = useState<number | null>(null)\n const [internalColumnOrder, setInternalColumnOrder] = useState<ColumnOrderState | null>(null)\n\n const setAllColumns = (allColumnIds: string[]) => {\n allColumnsRef.current = Array.from(new Set(allColumnIds))\n }\n const onChangeWithColumns = (next: ColumnsConfig) => {\n const allKnownIds = allColumnsRef.current\n // Expand sparse columnVisibility to explicit values for all known columns so that\n // \"undefined\" is never ambiguous when columns are saved and reloaded.\n // Special columns (drag-handle, row-selection) are always injected by the provider,\n // so they must never be persisted — strip them from visibility and order entirely.\n const specialIds = new Set([DRAG_HANDLE_COLUMN_ID, ROW_SELECTION_COLUMN_ID])\n if (allKnownIds.length > 0) {\n const resolvedVisibility = { ...next.columnVisibility }\n allKnownIds.forEach((id) => {\n if (!specialIds.has(id) && resolvedVisibility[id] === undefined) {\n resolvedVisibility[id] = checkColumnVisibility({}, id, defaultColumnVisibility)\n }\n })\n // Remove special columns from visibility and order before persisting\n specialIds.forEach((id) => delete resolvedVisibility[id])\n const resolvedOrder = (next.columnOrder ?? []).filter((id) => !specialIds.has(id))\n onChange(\n { ...next, columnVisibility: resolvedVisibility, columnOrder: resolvedOrder },\n allKnownIds,\n )\n } else {\n onChange(next, allKnownIds)\n }\n }\n const columnsConfig = config as ColumnsConfig\n\n const {\n columnOrder: columnOrderInit = [],\n columnPinning: columnPinningInit = {},\n columnVisibility: columnVisibilityInit = {},\n columnSizing: columnsSizingExternal = {},\n sorting: sortingInit = [],\n groupBy,\n groupByConfig = {},\n rowHeight: configRowHeight = 34,\n columnSummaries: columnSummariesInit = {},\n columnSummaryScopes: columnSummaryScopesInit = {},\n columnSummaryFormats: columnSummaryFormatsInit = {},\n } = columnsConfig || {}\n\n // Clear internal row height when config changes (e.g., when switching views)\n // This happens during render, before the component uses the value\n if (prevRowHeightRef.current !== configRowHeight && prevRowHeightRef.current !== undefined) {\n // Config changed, clear internal state\n if (internalRowHeight !== null) {\n setInternalRowHeight(null)\n }\n // Clear any pending timeout\n if (rowHeightTimeoutRef.current) {\n clearTimeout(rowHeightTimeoutRef.current)\n rowHeightTimeoutRef.current = null\n }\n }\n prevRowHeightRef.current = configRowHeight\n\n // Use internal row height during adjustments, otherwise use config value\n const rowHeight = internalRowHeight ?? configRowHeight\n\n const sorting = [...sortingInit]\n // Use internal column order for immediate UI updates, otherwise use config value\n const columnOrderBase = internalColumnOrder ?? [...columnOrderInit]\n const columnOrder = [...columnOrderBase]\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 // if we are in grouping mode (except folder grouping), always pin the name column\n // and ensure it is first in column order\n if (groupBy && groupBy.id !== 'folder') {\n // ensure name column is pinned and first in pinning order\n if (!columnPinning.left?.includes('name')) {\n columnPinning.left = ['name', ...(columnPinning?.left || [])]\n } else {\n // name is already pinned, but ensure it's first\n const filteredPinned = columnPinning.left.filter((col) => col !== 'name')\n columnPinning.left = ['name', ...filteredPinned]\n }\n\n // ensure name is first in column order\n if (columnOrder.includes('name')) {\n // remove name from its current position\n const nameIndex = columnOrder.indexOf('name')\n columnOrder.splice(nameIndex, 1)\n }\n // add name to the beginning\n columnOrder.unshift('name')\n }\n\n // add drag handle and selection columns to the beginning of the column order\n columnOrder.unshift(...[DRAG_HANDLE_COLUMN_ID, ROW_SELECTION_COLUMN_ID])\n\n // VISIBILITY STATE MUTATIONS\n const columnVisibility = { ...columnVisibilityInit }\n // if we are in grouping mode, name column must always be visible\n if (groupBy && !columnVisibility.name) {\n columnVisibility.name = true\n }\n\n // DIRECT STATE UPDATES - no side effects\n const setColumnVisibility = (visibility: VisibilityState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnVisibility: visibility,\n })\n }\n\n const setColumnOrder = (order: ColumnOrderState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: order,\n })\n }\n\n const setColumnPinning = (pinning: ColumnPinningState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnPinning: pinning,\n })\n }\n\n // use internalColumnSizing if it exists, otherwise use the external column sizing\n const columnSizing = internalColumnSizing || columnsSizingExternal\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 onChangeWithColumns({\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\n const newPinnedColumns = pinnedColumns.filter((col) =>\n checkColumnVisibility(visibility, col, defaultColumnVisibility),\n )\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 onChangeWithColumns({\n ...columnsConfig,\n columnVisibility: visibility,\n columnPinning: newPinning,\n })\n }\n\n const updateColumnOrder = (order: ColumnOrderState) => {\n // Filter out special columns that are added dynamically\n const filteredOrder = order.filter(\n (id) => id !== DRAG_HANDLE_COLUMN_ID && id !== ROW_SELECTION_COLUMN_ID,\n )\n\n const newPinning = updatePinningOrderOnOrderChange(filteredOrder)\n\n // Update UI immediately (optimistic)\n setInternalColumnOrder(filteredOrder)\n\n // Clear any existing timeout to debounce API calls\n if (columnOrderTimeoutRef.current) {\n clearTimeout(columnOrderTimeoutRef.current)\n }\n\n // Debounce API call to avoid excessive requests\n columnOrderTimeoutRef.current = setTimeout(() => {\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: filteredOrder,\n columnPinning: newPinning,\n })\n // Clear internal state after persistence\n setInternalColumnOrder(null)\n }, 300)\n }\n\n const updateColumnPinning = (pinning: ColumnPinningState) => {\n const newOrder = updateOrderOnPinningChange(pinning)\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: newOrder,\n columnPinning: pinning,\n })\n }\n\n const updateSorting = (sortingState: SortingState) => {\n onChangeWithColumns({\n ...columnsConfig,\n sorting: sortingState,\n })\n }\n\n const updateColumnSummary = (columnId: string, calc: SummaryCalc) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnSummaries: { ...columnSummariesInit, [columnId]: calc },\n })\n }\n\n const updateColumnSummaryScope = (columnId: string, scope: RowScope) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnSummaryScopes: { ...columnSummaryScopesInit, [columnId]: scope },\n })\n }\n\n const updateColumnSummaryFormat = (columnId: string, format: SummaryFormat) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnSummaryFormats: { ...columnSummaryFormatsInit, [columnId]: format },\n })\n }\n\n const updateGroupBy = (groupBy: TableGroupBy | undefined) => {\n onChangeWithColumns({\n ...columnsConfig,\n groupBy: groupBy,\n })\n }\n\n const updateGroupByConfig = (config: GroupByConfig) => {\n onChangeWithColumns({\n ...columnsConfig,\n groupByConfig: {\n ...groupByConfig,\n ...config,\n },\n })\n }\n\n // Update row height for immediate UI feedback (no API call)\n const updateRowHeight = React.useCallback(\n (newRowHeight: number) => {\n // Lock the aspect ratio on first call if not already locked\n if (lockedAspectRatioRef.current === null) {\n const currentThumbnailWidth = columnsSizingExternal.thumbnail || 63\n const currentRowHeight = configRowHeight || 34\n lockedAspectRatioRef.current = currentThumbnailWidth / currentRowHeight\n }\n const newThumbnailWidth = lockedAspectRatioRef.current * newRowHeight\n\n setInternalRowHeight(newRowHeight)\n setInternalColumnSizing({\n ...(internalColumnSizing || columnsSizingExternal),\n thumbnail: newThumbnailWidth,\n })\n },\n [columnsSizingExternal, configRowHeight],\n )\n\n // Update row height and persist to API\n const updateRowHeightWithPersistence = React.useCallback(\n (newRowHeight: number) => {\n const currentThumbnailWidth = columnsSizingExternal.thumbnail || 63\n const currentRowHeight = configRowHeight || 34\n const currentRatio = currentThumbnailWidth / currentRowHeight\n\n const newThumbnailWidth = currentRatio * newRowHeight\n\n // Update UI immediately\n setInternalRowHeight(newRowHeight)\n setInternalColumnSizing({\n ...(internalColumnSizing || columnsSizingExternal),\n thumbnail: newThumbnailWidth,\n })\n\n // Clear any existing timeout to debounce API calls\n if (rowHeightTimeoutRef.current) {\n clearTimeout(rowHeightTimeoutRef.current)\n }\n\n // Debounce API call to avoid excessive requests\n rowHeightTimeoutRef.current = setTimeout(() => {\n // Persist to API\n onChangeWithColumns({\n ...columnsConfig,\n rowHeight: newRowHeight,\n columnSizing: {\n ...columnsSizingExternal,\n thumbnail: newThumbnailWidth,\n },\n })\n\n // Clean up internal state after API call completes\n setInternalRowHeight(null)\n setInternalColumnSizing(null)\n lockedAspectRatioRef.current = null\n }, 300)\n },\n [\n columnsConfig,\n onChangeWithColumns,\n columnsSizingExternal,\n configRowHeight,\n internalColumnSizing,\n ],\n )\n\n // Remove redundant local updater functions in favor of unified updaters with all columns\n\n // ON-CHANGE HANDLERS (TanStack-compatible)\n const columnVisibilityOnChange: OnChangeFn<VisibilityState> = (updater) => {\n const nextFull = typeof updater === 'function' ? updater(columnVisibility) : updater\n\n // Calculate sparse version: only keys that are different from defaults\n const sparseNext: VisibilityState = {}\n Object.keys(nextFull).forEach((key) => {\n const defaultValue = checkColumnVisibility({}, key, defaultColumnVisibility)\n if (nextFull[key] !== defaultValue) {\n sparseNext[key] = nextFull[key]\n }\n })\n\n if (isEqual(sparseNext, columnVisibility)) return\n setColumnVisibility(sparseNext)\n }\n\n const columnPinningOnChange: OnChangeFn<ColumnPinningState> = (updater) => {\n const newPinning = functionalUpdate(updater, columnPinning)\n if (isEqual(newPinning, columnPinning)) return\n setColumnPinning(newPinning)\n }\n\n const columnOrderOnChange: OnChangeFn<ColumnOrderState> = (updater) => {\n const newOrder = functionalUpdate(updater, columnOrder)\n if (isEqual(newOrder, columnOrder)) return\n setColumnOrder(newOrder)\n }\n\n const columnSizingOnChange: OnChangeFn<ColumnSizingState> = (updater) => {\n const newSizing = functionalUpdate(updater, columnSizing)\n if (isEqual(newSizing, columnSizing)) return\n setColumnSizing(newSizing)\n }\n\n const sortingOnChange: OnChangeFn<SortingState> = (updater) => {\n const newSorting = functionalUpdate(updater, sorting)\n if (isEqual(newSorting, sorting)) return\n updateSorting(newSorting)\n }\n\n return (\n <ColumnSettingsContext.Provider\n value={{\n // all columns ref\n setAllColumns,\n // column visibility\n columnVisibility,\n defaultColumnVisibility,\n setColumnVisibility,\n updateColumnVisibility,\n columnVisibilityOnChange,\n // column pinning\n columnPinning,\n setColumnPinning,\n updateColumnPinning,\n columnPinningOnChange,\n // column order\n columnOrder,\n setColumnOrder,\n updateColumnOrder,\n columnOrderOnChange,\n // column sizing\n columnSizing,\n setColumnSizing,\n columnSizingOnChange,\n // column summary calc\n columnSummaries: columnSummariesInit,\n updateColumnSummary,\n // column summary row scope\n columnSummaryScopes: columnSummaryScopesInit,\n updateColumnSummaryScope,\n // column summary display format\n columnSummaryFormats: columnSummaryFormatsInit,\n updateColumnSummaryFormat,\n // sorting\n sorting,\n updateSorting,\n sortingOnChange,\n // group by\n groupBy,\n updateGroupBy,\n groupByConfig,\n updateGroupByConfig,\n // row height\n rowHeight,\n updateRowHeight,\n updateRowHeightWithPersistence,\n\n // global change\n setColumnsConfig: (config: ColumnsConfig) => onChangeWithColumns(config),\n }}\n >\n {children}\n </ColumnSettingsContext.Provider>\n )\n}\n"],"names":["ColumnSettingsProvider","children","config","onChange","defaultColumnVisibility","allColumnsRef","React","resizingTimeoutRef","rowHeightTimeoutRef","columnOrderTimeoutRef","prevRowHeightRef","lockedAspectRatioRef","internalColumnSizing","setInternalColumnSizing","useState","internalRowHeight","setInternalRowHeight","internalColumnOrder","setInternalColumnOrder","setAllColumns","allColumnIds","onChangeWithColumns","next","allKnownIds","specialIds","DRAG_HANDLE_COLUMN_ID","ROW_SELECTION_COLUMN_ID","resolvedVisibility","id","checkColumnVisibility","resolvedOrder","columnsConfig","columnOrderInit","columnPinningInit","columnVisibilityInit","columnsSizingExternal","sortingInit","groupBy","groupByConfig","configRowHeight","columnSummariesInit","columnSummaryScopesInit","columnSummaryFormatsInit","rowHeight","sorting","columnOrder","columnPinning","defaultOrder","col","i","defaultBefore","columnAfter","index","filteredPinned","nameIndex","columnVisibility","setColumnVisibility","visibility","setColumnOrder","order","setColumnPinning","pinning","columnSizing","setColumnSizing","sizing","togglePinningOnVisibilityChange","newPinning","newPinnedColumns","updatePinningOrderOnOrderChange","pinnedColumns","pinnedColumnsOrder","updateOrderOnPinningChange","a","b","aPinned","updateColumnVisibility","updateColumnOrder","filteredOrder","updateColumnPinning","newOrder","updateSorting","sortingState","updateColumnSummary","columnId","calc","updateColumnSummaryScope","scope","updateColumnSummaryFormat","format","updateGroupBy","updateGroupByConfig","updateRowHeight","newRowHeight","currentThumbnailWidth","currentRowHeight","newThumbnailWidth","updateRowHeightWithPersistence","columnVisibilityOnChange","updater","nextFull","sparseNext","key","defaultValue","isEqual","columnPinningOnChange","functionalUpdate","columnOrderOnChange","columnSizingOnChange","newSizing","sortingOnChange","newSorting","jsx","ColumnSettingsContext"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const j=require("../../../../../_virtual/jsx-runtime.cjs.js"),r=require("react");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/dataImport.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/projectFolders.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");const x=require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/products/getFolderProducts.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/projectFolders/projectFolders.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/tasks/getTasks.cjs.js");require("../../../api/queries/tasks/updateTasks.cjs.js");require("../../../api/queries/teams/getTeams.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");const m=require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");const C=require("../hooks/useAttributesList.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("lodash");require("react-toastify");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("uuid");require("../../../util/pubsub.cjs.js");require("../../../context/PowerpackContextInstance.cjs.js");require("../../../context/UriContext.cjs.js");require("../../../context/DetailsPanelContextInstance.cjs.js");require("../../../context/SubtasksModulesContextInstance.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");const D=require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");const P=r.createContext(void 0),v=({children:i,projectName:u})=>{const{isLoading:q,isSuccess:f}=D.useProjectContext(),{data:s}=x.useGetMyProjectPermissionsQuery({projectName:u},{skip:!u}),{attrib_write:e}=s||{},{attribFields:n,writableFields:o,isLoading:t}=C({projectPermissions:s}),{data:b=[]}=m.useGetUsersAssigneeQuery({projectName:u},{skip:!u}),a=b,c=r.useMemo(()=>e?!e.fields||e.fields.length===0?!e.attributes||e.attributes.length===0:e.fields.includes("name"):!1,[e]),l=r.useMemo(()=>e?!e.fields||e.fields.length===0?!e.attributes||e.attributes.length===0:e.fields.includes("label"):!1,[e]),d=f&&!q&&!t,g=r.useMemo(()=>({isInitialized:d,isLoading:q||t,users:a,attribFields:n,writableFields:o,canWriteNamePermission:c,canWriteLabelPermission:l}),[d,q,t,a,n,o,c,l]);return j.jsxRuntimeExports.jsx(P.Provider,{value:g,children:i})},L=()=>{const i=r.useContext(P);if(!i)throw new Error("useProjectDataContext must be used within a ProjectDataProvider");return i};exports.ProjectDataProvider=v;exports.useProjectDataContext=L;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const j=require("../../../../../_virtual/jsx-runtime.cjs.js"),r=require("react");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/dataImport.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/projectFolders.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/columnStats/metricTargets.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");const x=require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/products/getFolderProducts.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/projectFolders/projectFolders.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/tasks/getTasks.cjs.js");require("../../../api/queries/tasks/updateTasks.cjs.js");require("../../../api/queries/teams/getTeams.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");const m=require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");const C=require("../hooks/useAttributesList.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("lodash");require("react-toastify");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("uuid");require("../../../util/pubsub.cjs.js");require("../../../context/PowerpackContextInstance.cjs.js");require("../../../context/UriContext.cjs.js");require("../../../context/DetailsPanelContextInstance.cjs.js");require("../../../context/SubtasksModulesContextInstance.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");const D=require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");const P=r.createContext(void 0),v=({children:i,projectName:u})=>{const{isLoading:q,isSuccess:f}=D.useProjectContext(),{data:s}=x.useGetMyProjectPermissionsQuery({projectName:u},{skip:!u}),{attrib_write:e}=s||{},{attribFields:n,writableFields:o,isLoading:t}=C({projectPermissions:s}),{data:b=[]}=m.useGetUsersAssigneeQuery({projectName:u},{skip:!u}),a=b,c=r.useMemo(()=>e?!e.fields||e.fields.length===0?!e.attributes||e.attributes.length===0:e.fields.includes("name"):!1,[e]),l=r.useMemo(()=>e?!e.fields||e.fields.length===0?!e.attributes||e.attributes.length===0:e.fields.includes("label"):!1,[e]),d=f&&!q&&!t,g=r.useMemo(()=>({isInitialized:d,isLoading:q||t,users:a,attribFields:n,writableFields:o,canWriteNamePermission:c,canWriteLabelPermission:l}),[d,q,t,a,n,o,c,l]);return j.jsxRuntimeExports.jsx(P.Provider,{value:g,children:i})},L=()=>{const i=r.useContext(P);if(!i)throw new Error("useProjectDataContext must be used within a ProjectDataProvider");return i};exports.ProjectDataProvider=v;exports.useProjectDataContext=L;
2
2
  //# sourceMappingURL=ProjectDataContext.cjs.js.map
@@ -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, useGetMyProjectPermissionsQuery } from '@shared/api'\nimport type { ProjectModel } from '@shared/api'\nimport useAttributeFields, { ProjectTableAttribute } from '../hooks/useAttributesList'\nimport { useProjectContext } from '@shared/context'\n\ntype User = {\n name: string\n fullName: string\n}\n\nexport interface ProjectDataContextProps {\n isInitialized: boolean\n isLoading: boolean\n users: User[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n writableFields?: string[]\n // Permissions\n canWriteNamePermission: boolean\n canWriteLabelPermission: boolean\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 { isLoading: isLoadingProject, isSuccess: isSuccessProject } = useProjectContext()\n\n // GET PERMISSIONS\n const { data: projectPermissions } = useGetMyProjectPermissionsQuery(\n { projectName },\n { skip: !projectName },\n )\n const { attrib_write } = projectPermissions || {}\n\n const {\n attribFields,\n writableFields,\n isLoading: isLoadingAttribs,\n } = useAttributeFields({ projectPermissions })\n\n // GET USERS\n const { data: usersData = [] } = useGetUsersAssigneeQuery({ projectName }, { skip: !projectName })\n const users = usersData as User[]\n // Calculate individual permissions\n const canWriteNamePermission = useMemo((): boolean => {\n if (!attrib_write) return false\n // Check fields array for entity field permissions (name/label)\n if (!attrib_write.fields || attrib_write.fields.length === 0) {\n // If no fields specified, check if this is admin (empty attributes = unrestricted)\n if (!attrib_write.attributes || attrib_write.attributes.length === 0) return true\n return false // Has other attributes but no field permissions\n }\n return attrib_write.fields.includes('name')\n }, [attrib_write])\n\n const canWriteLabelPermission = useMemo((): boolean => {\n if (!attrib_write) return false\n // Check fields array for entity field permissions (name/label)\n if (!attrib_write.fields || attrib_write.fields.length === 0) {\n // If no fields specified, check if this is admin (empty attributes = unrestricted)\n if (!attrib_write.attributes || attrib_write.attributes.length === 0) return true\n return false // Has other attributes but no field permissions\n }\n return attrib_write.fields.includes('label')\n }, [attrib_write])\n\n const isInitialized = isSuccessProject && !isLoadingProject && !isLoadingAttribs\n\n const value = useMemo(\n () => ({\n isInitialized,\n isLoading: isLoadingProject || isLoadingAttribs,\n\n users,\n attribFields,\n writableFields,\n canWriteNamePermission,\n canWriteLabelPermission,\n }),\n [\n isInitialized,\n isLoadingProject,\n isLoadingAttribs,\n\n users,\n attribFields,\n writableFields,\n canWriteNamePermission,\n canWriteLabelPermission,\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":["ProjectDataContext","createContext","ProjectDataProvider","children","projectName","isLoadingProject","isSuccessProject","useProjectContext","projectPermissions","useGetMyProjectPermissionsQuery","attrib_write","attribFields","writableFields","isLoadingAttribs","useAttributeFields","usersData","useGetUsersAssigneeQuery","users","canWriteNamePermission","useMemo","canWriteLabelPermission","isInitialized","value","jsx","useProjectDataContext","context","useContext"],"mappings":"4iNAuBA,MAAMA,EAAqBC,EAAAA,cAAmD,MAAS,EAO1EC,EAAsB,CAAC,CAAE,SAAAC,EAAU,YAAAC,KAA4C,CAE1F,KAAM,CAAE,UAAWC,EAAkB,UAAWC,CAAA,EAAqBC,EAAAA,kBAAA,EAG/D,CAAE,KAAMC,CAAA,EAAuBC,EAAAA,gCACnC,CAAE,YAAAL,CAAA,EACF,CAAE,KAAM,CAACA,CAAA,CAAY,EAEjB,CAAE,aAAAM,GAAiBF,GAAsB,CAAA,EAEzC,CACJ,aAAAG,EACA,eAAAC,EACA,UAAWC,CAAA,EACTC,EAAmB,CAAE,mBAAAN,EAAoB,EAGvC,CAAE,KAAMO,EAAY,CAAA,GAAOC,EAAAA,yBAAyB,CAAE,YAAAZ,GAAe,CAAE,KAAM,CAACA,EAAa,EAC3Fa,EAAQF,EAERG,EAAyBC,EAAAA,QAAQ,IAChCT,EAED,CAACA,EAAa,QAAUA,EAAa,OAAO,SAAW,EAErD,CAACA,EAAa,YAAcA,EAAa,WAAW,SAAW,EAG9DA,EAAa,OAAO,SAAS,MAAM,EAPhB,GAQzB,CAACA,CAAY,CAAC,EAEXU,EAA0BD,EAAAA,QAAQ,IACjCT,EAED,CAACA,EAAa,QAAUA,EAAa,OAAO,SAAW,EAErD,CAACA,EAAa,YAAcA,EAAa,WAAW,SAAW,EAG9DA,EAAa,OAAO,SAAS,OAAO,EAPjB,GAQzB,CAACA,CAAY,CAAC,EAEXW,EAAgBf,GAAoB,CAACD,GAAoB,CAACQ,EAE1DS,EAAQH,EAAAA,QACZ,KAAO,CACL,cAAAE,EACA,UAAWhB,GAAoBQ,EAE/B,MAAAI,EACA,aAAAN,EACA,eAAAC,EACA,uBAAAM,EACA,wBAAAE,CAAA,GAEF,CACEC,EACAhB,EACAQ,EAEAI,EACAN,EACAC,EACAM,EACAE,CAAA,CACF,EAGF,OAAOG,EAAAA,kBAAAA,IAACvB,EAAmB,SAAnB,CAA4B,MAAAsB,EAAe,SAAAnB,CAAA,CAAS,CAC9D,EAEaqB,EAAwB,IAAM,CACzC,MAAMC,EAAUC,EAAAA,WAAW1B,CAAkB,EAC7C,GAAI,CAACyB,EACH,MAAM,IAAI,MAAM,iEAAiE,EAEnF,OAAOA,CACT"}
1
+ {"version":3,"file":"ProjectDataContext.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectDataContext.tsx"],"sourcesContent":["import { createContext, ReactNode, useContext, useMemo } from 'react'\nimport { useGetUsersAssigneeQuery, useGetMyProjectPermissionsQuery } from '@shared/api'\nimport type { ProjectModel } from '@shared/api'\nimport useAttributeFields, { ProjectTableAttribute } from '../hooks/useAttributesList'\nimport { useProjectContext } from '@shared/context'\n\ntype User = {\n name: string\n fullName: string\n}\n\nexport interface ProjectDataContextProps {\n isInitialized: boolean\n isLoading: boolean\n users: User[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n writableFields?: string[]\n // Permissions\n canWriteNamePermission: boolean\n canWriteLabelPermission: boolean\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 { isLoading: isLoadingProject, isSuccess: isSuccessProject } = useProjectContext()\n\n // GET PERMISSIONS\n const { data: projectPermissions } = useGetMyProjectPermissionsQuery(\n { projectName },\n { skip: !projectName },\n )\n const { attrib_write } = projectPermissions || {}\n\n const {\n attribFields,\n writableFields,\n isLoading: isLoadingAttribs,\n } = useAttributeFields({ projectPermissions })\n\n // GET USERS\n const { data: usersData = [] } = useGetUsersAssigneeQuery({ projectName }, { skip: !projectName })\n const users = usersData as User[]\n // Calculate individual permissions\n const canWriteNamePermission = useMemo((): boolean => {\n if (!attrib_write) return false\n // Check fields array for entity field permissions (name/label)\n if (!attrib_write.fields || attrib_write.fields.length === 0) {\n // If no fields specified, check if this is admin (empty attributes = unrestricted)\n if (!attrib_write.attributes || attrib_write.attributes.length === 0) return true\n return false // Has other attributes but no field permissions\n }\n return attrib_write.fields.includes('name')\n }, [attrib_write])\n\n const canWriteLabelPermission = useMemo((): boolean => {\n if (!attrib_write) return false\n // Check fields array for entity field permissions (name/label)\n if (!attrib_write.fields || attrib_write.fields.length === 0) {\n // If no fields specified, check if this is admin (empty attributes = unrestricted)\n if (!attrib_write.attributes || attrib_write.attributes.length === 0) return true\n return false // Has other attributes but no field permissions\n }\n return attrib_write.fields.includes('label')\n }, [attrib_write])\n\n const isInitialized = isSuccessProject && !isLoadingProject && !isLoadingAttribs\n\n const value = useMemo(\n () => ({\n isInitialized,\n isLoading: isLoadingProject || isLoadingAttribs,\n\n users,\n attribFields,\n writableFields,\n canWriteNamePermission,\n canWriteLabelPermission,\n }),\n [\n isInitialized,\n isLoadingProject,\n isLoadingAttribs,\n\n users,\n attribFields,\n writableFields,\n canWriteNamePermission,\n canWriteLabelPermission,\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":["ProjectDataContext","createContext","ProjectDataProvider","children","projectName","isLoadingProject","isSuccessProject","useProjectContext","projectPermissions","useGetMyProjectPermissionsQuery","attrib_write","attribFields","writableFields","isLoadingAttribs","useAttributeFields","usersData","useGetUsersAssigneeQuery","users","canWriteNamePermission","useMemo","canWriteLabelPermission","isInitialized","value","jsx","useProjectDataContext","context","useContext"],"mappings":"6mNAuBA,MAAMA,EAAqBC,EAAAA,cAAmD,MAAS,EAO1EC,EAAsB,CAAC,CAAE,SAAAC,EAAU,YAAAC,KAA4C,CAE1F,KAAM,CAAE,UAAWC,EAAkB,UAAWC,CAAA,EAAqBC,EAAAA,kBAAA,EAG/D,CAAE,KAAMC,CAAA,EAAuBC,EAAAA,gCACnC,CAAE,YAAAL,CAAA,EACF,CAAE,KAAM,CAACA,CAAA,CAAY,EAEjB,CAAE,aAAAM,GAAiBF,GAAsB,CAAA,EAEzC,CACJ,aAAAG,EACA,eAAAC,EACA,UAAWC,CAAA,EACTC,EAAmB,CAAE,mBAAAN,EAAoB,EAGvC,CAAE,KAAMO,EAAY,CAAA,GAAOC,EAAAA,yBAAyB,CAAE,YAAAZ,GAAe,CAAE,KAAM,CAACA,EAAa,EAC3Fa,EAAQF,EAERG,EAAyBC,EAAAA,QAAQ,IAChCT,EAED,CAACA,EAAa,QAAUA,EAAa,OAAO,SAAW,EAErD,CAACA,EAAa,YAAcA,EAAa,WAAW,SAAW,EAG9DA,EAAa,OAAO,SAAS,MAAM,EAPhB,GAQzB,CAACA,CAAY,CAAC,EAEXU,EAA0BD,EAAAA,QAAQ,IACjCT,EAED,CAACA,EAAa,QAAUA,EAAa,OAAO,SAAW,EAErD,CAACA,EAAa,YAAcA,EAAa,WAAW,SAAW,EAG9DA,EAAa,OAAO,SAAS,OAAO,EAPjB,GAQzB,CAACA,CAAY,CAAC,EAEXW,EAAgBf,GAAoB,CAACD,GAAoB,CAACQ,EAE1DS,EAAQH,EAAAA,QACZ,KAAO,CACL,cAAAE,EACA,UAAWhB,GAAoBQ,EAE/B,MAAAI,EACA,aAAAN,EACA,eAAAC,EACA,uBAAAM,EACA,wBAAAE,CAAA,GAEF,CACEC,EACAhB,EACAQ,EAEAI,EACAN,EACAC,EACAM,EACAE,CAAA,CACF,EAGF,OAAOG,EAAAA,kBAAAA,IAACvB,EAAmB,SAAnB,CAA4B,MAAAsB,EAAe,SAAAnB,CAAA,CAAS,CAC9D,EAEaqB,EAAwB,IAAM,CACzC,MAAMC,EAAUC,EAAAA,WAAW1B,CAAkB,EAC7C,GAAI,CAACyB,EACH,MAAM,IAAI,MAAM,iEAAiE,EAEnF,OAAOA,CACT"}
@@ -52,6 +52,7 @@ import "../../../api/queries/attributes/getAttributes.es.js";
52
52
  import "../../../api/queries/attributes/updateAttributes.es.js";
53
53
  import "../../../api/queries/authentication/getAuthentication.es.js";
54
54
  import "../../../api/queries/cloud/cloud.es.js";
55
+ import "../../../api/queries/columnStats/metricTargets.es.js";
55
56
  import "../../../api/queries/config/getConfig.es.js";
56
57
  import "../../../api/queries/config/updateConfig.es.js";
57
58
  import "../../../api/queries/entities/getEntity.es.js";
@@ -121,7 +122,7 @@ import "../../../context/WebsocketContext.es.js";
121
122
  import "../../../context/GlobalContext.es.js";
122
123
  import { useProjectContext as L } from "../../../context/ProjectContext.es.js";
123
124
  import "../../../context/ProjectFoldersContext.es.js";
124
- const d = g(void 0), Ur = ({ children: r, projectName: i }) => {
125
+ const d = g(void 0), _r = ({ children: r, projectName: i }) => {
125
126
  const { isLoading: o, isSuccess: f } = L(), { data: e } = h(
126
127
  { projectName: i },
127
128
  { skip: !i }
@@ -151,14 +152,14 @@ const d = g(void 0), Ur = ({ children: r, projectName: i }) => {
151
152
  ]
152
153
  );
153
154
  return /* @__PURE__ */ x.jsx(d.Provider, { value: b, children: r });
154
- }, _r = () => {
155
+ }, qr = () => {
155
156
  const r = j(d);
156
157
  if (!r)
157
158
  throw new Error("useProjectDataContext must be used within a ProjectDataProvider");
158
159
  return r;
159
160
  };
160
161
  export {
161
- Ur as ProjectDataProvider,
162
- _r as useProjectDataContext
162
+ _r as ProjectDataProvider,
163
+ qr as useProjectDataContext
163
164
  };
164
165
  //# sourceMappingURL=ProjectDataContext.es.js.map
@@ -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, useGetMyProjectPermissionsQuery } from '@shared/api'\nimport type { ProjectModel } from '@shared/api'\nimport useAttributeFields, { ProjectTableAttribute } from '../hooks/useAttributesList'\nimport { useProjectContext } from '@shared/context'\n\ntype User = {\n name: string\n fullName: string\n}\n\nexport interface ProjectDataContextProps {\n isInitialized: boolean\n isLoading: boolean\n users: User[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n writableFields?: string[]\n // Permissions\n canWriteNamePermission: boolean\n canWriteLabelPermission: boolean\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 { isLoading: isLoadingProject, isSuccess: isSuccessProject } = useProjectContext()\n\n // GET PERMISSIONS\n const { data: projectPermissions } = useGetMyProjectPermissionsQuery(\n { projectName },\n { skip: !projectName },\n )\n const { attrib_write } = projectPermissions || {}\n\n const {\n attribFields,\n writableFields,\n isLoading: isLoadingAttribs,\n } = useAttributeFields({ projectPermissions })\n\n // GET USERS\n const { data: usersData = [] } = useGetUsersAssigneeQuery({ projectName }, { skip: !projectName })\n const users = usersData as User[]\n // Calculate individual permissions\n const canWriteNamePermission = useMemo((): boolean => {\n if (!attrib_write) return false\n // Check fields array for entity field permissions (name/label)\n if (!attrib_write.fields || attrib_write.fields.length === 0) {\n // If no fields specified, check if this is admin (empty attributes = unrestricted)\n if (!attrib_write.attributes || attrib_write.attributes.length === 0) return true\n return false // Has other attributes but no field permissions\n }\n return attrib_write.fields.includes('name')\n }, [attrib_write])\n\n const canWriteLabelPermission = useMemo((): boolean => {\n if (!attrib_write) return false\n // Check fields array for entity field permissions (name/label)\n if (!attrib_write.fields || attrib_write.fields.length === 0) {\n // If no fields specified, check if this is admin (empty attributes = unrestricted)\n if (!attrib_write.attributes || attrib_write.attributes.length === 0) return true\n return false // Has other attributes but no field permissions\n }\n return attrib_write.fields.includes('label')\n }, [attrib_write])\n\n const isInitialized = isSuccessProject && !isLoadingProject && !isLoadingAttribs\n\n const value = useMemo(\n () => ({\n isInitialized,\n isLoading: isLoadingProject || isLoadingAttribs,\n\n users,\n attribFields,\n writableFields,\n canWriteNamePermission,\n canWriteLabelPermission,\n }),\n [\n isInitialized,\n isLoadingProject,\n isLoadingAttribs,\n\n users,\n attribFields,\n writableFields,\n canWriteNamePermission,\n canWriteLabelPermission,\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":["ProjectDataContext","createContext","ProjectDataProvider","children","projectName","isLoadingProject","isSuccessProject","useProjectContext","projectPermissions","useGetMyProjectPermissionsQuery","attrib_write","attribFields","writableFields","isLoadingAttribs","useAttributeFields","usersData","useGetUsersAssigneeQuery","users","canWriteNamePermission","useMemo","canWriteLabelPermission","isInitialized","value","jsx","useProjectDataContext","context","useContext"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuBA,MAAMA,IAAqBC,EAAmD,MAAS,GAO1EC,KAAsB,CAAC,EAAE,UAAAC,GAAU,aAAAC,QAA4C;AAE1F,QAAM,EAAE,WAAWC,GAAkB,WAAWC,EAAA,IAAqBC,EAAA,GAG/D,EAAE,MAAMC,EAAA,IAAuBC;AAAA,IACnC,EAAE,aAAAL,EAAA;AAAA,IACF,EAAE,MAAM,CAACA,EAAA;AAAA,EAAY,GAEjB,EAAE,cAAAM,MAAiBF,KAAsB,CAAA,GAEzC;AAAA,IACJ,cAAAG;AAAA,IACA,gBAAAC;AAAA,IACA,WAAWC;AAAA,EAAA,IACTC,EAAmB,EAAE,oBAAAN,GAAoB,GAGvC,EAAE,MAAMO,IAAY,CAAA,MAAOC,EAAyB,EAAE,aAAAZ,KAAe,EAAE,MAAM,CAACA,GAAa,GAC3Fa,IAAQF,GAERG,IAAyBC,EAAQ,MAChCT,IAED,CAACA,EAAa,UAAUA,EAAa,OAAO,WAAW,IAErD,CAACA,EAAa,cAAcA,EAAa,WAAW,WAAW,IAG9DA,EAAa,OAAO,SAAS,MAAM,IAPhB,IAQzB,CAACA,CAAY,CAAC,GAEXU,IAA0BD,EAAQ,MACjCT,IAED,CAACA,EAAa,UAAUA,EAAa,OAAO,WAAW,IAErD,CAACA,EAAa,cAAcA,EAAa,WAAW,WAAW,IAG9DA,EAAa,OAAO,SAAS,OAAO,IAPjB,IAQzB,CAACA,CAAY,CAAC,GAEXW,IAAgBf,KAAoB,CAACD,KAAoB,CAACQ,GAE1DS,IAAQH;AAAA,IACZ,OAAO;AAAA,MACL,eAAAE;AAAA,MACA,WAAWhB,KAAoBQ;AAAA,MAE/B,OAAAI;AAAA,MACA,cAAAN;AAAA,MACA,gBAAAC;AAAA,MACA,wBAAAM;AAAA,MACA,yBAAAE;AAAA,IAAA;AAAA,IAEF;AAAA,MACEC;AAAA,MACAhB;AAAA,MACAQ;AAAA,MAEAI;AAAA,MACAN;AAAA,MACAC;AAAA,MACAM;AAAA,MACAE;AAAA,IAAA;AAAA,EACF;AAGF,SAAOG,gBAAAA,EAAAA,IAACvB,EAAmB,UAAnB,EAA4B,OAAAsB,GAAe,UAAAnB,EAAA,CAAS;AAC9D,GAEaqB,KAAwB,MAAM;AACzC,QAAMC,IAAUC,EAAW1B,CAAkB;AAC7C,MAAI,CAACyB;AACH,UAAM,IAAI,MAAM,iEAAiE;AAEnF,SAAOA;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, useGetMyProjectPermissionsQuery } from '@shared/api'\nimport type { ProjectModel } from '@shared/api'\nimport useAttributeFields, { ProjectTableAttribute } from '../hooks/useAttributesList'\nimport { useProjectContext } from '@shared/context'\n\ntype User = {\n name: string\n fullName: string\n}\n\nexport interface ProjectDataContextProps {\n isInitialized: boolean\n isLoading: boolean\n users: User[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n writableFields?: string[]\n // Permissions\n canWriteNamePermission: boolean\n canWriteLabelPermission: boolean\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 { isLoading: isLoadingProject, isSuccess: isSuccessProject } = useProjectContext()\n\n // GET PERMISSIONS\n const { data: projectPermissions } = useGetMyProjectPermissionsQuery(\n { projectName },\n { skip: !projectName },\n )\n const { attrib_write } = projectPermissions || {}\n\n const {\n attribFields,\n writableFields,\n isLoading: isLoadingAttribs,\n } = useAttributeFields({ projectPermissions })\n\n // GET USERS\n const { data: usersData = [] } = useGetUsersAssigneeQuery({ projectName }, { skip: !projectName })\n const users = usersData as User[]\n // Calculate individual permissions\n const canWriteNamePermission = useMemo((): boolean => {\n if (!attrib_write) return false\n // Check fields array for entity field permissions (name/label)\n if (!attrib_write.fields || attrib_write.fields.length === 0) {\n // If no fields specified, check if this is admin (empty attributes = unrestricted)\n if (!attrib_write.attributes || attrib_write.attributes.length === 0) return true\n return false // Has other attributes but no field permissions\n }\n return attrib_write.fields.includes('name')\n }, [attrib_write])\n\n const canWriteLabelPermission = useMemo((): boolean => {\n if (!attrib_write) return false\n // Check fields array for entity field permissions (name/label)\n if (!attrib_write.fields || attrib_write.fields.length === 0) {\n // If no fields specified, check if this is admin (empty attributes = unrestricted)\n if (!attrib_write.attributes || attrib_write.attributes.length === 0) return true\n return false // Has other attributes but no field permissions\n }\n return attrib_write.fields.includes('label')\n }, [attrib_write])\n\n const isInitialized = isSuccessProject && !isLoadingProject && !isLoadingAttribs\n\n const value = useMemo(\n () => ({\n isInitialized,\n isLoading: isLoadingProject || isLoadingAttribs,\n\n users,\n attribFields,\n writableFields,\n canWriteNamePermission,\n canWriteLabelPermission,\n }),\n [\n isInitialized,\n isLoadingProject,\n isLoadingAttribs,\n\n users,\n attribFields,\n writableFields,\n canWriteNamePermission,\n canWriteLabelPermission,\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":["ProjectDataContext","createContext","ProjectDataProvider","children","projectName","isLoadingProject","isSuccessProject","useProjectContext","projectPermissions","useGetMyProjectPermissionsQuery","attrib_write","attribFields","writableFields","isLoadingAttribs","useAttributeFields","usersData","useGetUsersAssigneeQuery","users","canWriteNamePermission","useMemo","canWriteLabelPermission","isInitialized","value","jsx","useProjectDataContext","context","useContext"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuBA,MAAMA,IAAqBC,EAAmD,MAAS,GAO1EC,KAAsB,CAAC,EAAE,UAAAC,GAAU,aAAAC,QAA4C;AAE1F,QAAM,EAAE,WAAWC,GAAkB,WAAWC,EAAA,IAAqBC,EAAA,GAG/D,EAAE,MAAMC,EAAA,IAAuBC;AAAA,IACnC,EAAE,aAAAL,EAAA;AAAA,IACF,EAAE,MAAM,CAACA,EAAA;AAAA,EAAY,GAEjB,EAAE,cAAAM,MAAiBF,KAAsB,CAAA,GAEzC;AAAA,IACJ,cAAAG;AAAA,IACA,gBAAAC;AAAA,IACA,WAAWC;AAAA,EAAA,IACTC,EAAmB,EAAE,oBAAAN,GAAoB,GAGvC,EAAE,MAAMO,IAAY,CAAA,MAAOC,EAAyB,EAAE,aAAAZ,KAAe,EAAE,MAAM,CAACA,GAAa,GAC3Fa,IAAQF,GAERG,IAAyBC,EAAQ,MAChCT,IAED,CAACA,EAAa,UAAUA,EAAa,OAAO,WAAW,IAErD,CAACA,EAAa,cAAcA,EAAa,WAAW,WAAW,IAG9DA,EAAa,OAAO,SAAS,MAAM,IAPhB,IAQzB,CAACA,CAAY,CAAC,GAEXU,IAA0BD,EAAQ,MACjCT,IAED,CAACA,EAAa,UAAUA,EAAa,OAAO,WAAW,IAErD,CAACA,EAAa,cAAcA,EAAa,WAAW,WAAW,IAG9DA,EAAa,OAAO,SAAS,OAAO,IAPjB,IAQzB,CAACA,CAAY,CAAC,GAEXW,IAAgBf,KAAoB,CAACD,KAAoB,CAACQ,GAE1DS,IAAQH;AAAA,IACZ,OAAO;AAAA,MACL,eAAAE;AAAA,MACA,WAAWhB,KAAoBQ;AAAA,MAE/B,OAAAI;AAAA,MACA,cAAAN;AAAA,MACA,gBAAAC;AAAA,MACA,wBAAAM;AAAA,MACA,yBAAAE;AAAA,IAAA;AAAA,IAEF;AAAA,MACEC;AAAA,MACAhB;AAAA,MACAQ;AAAA,MAEAI;AAAA,MACAN;AAAA,MACAC;AAAA,MACAM;AAAA,MACAE;AAAA,IAAA;AAAA,EACF;AAGF,SAAOG,gBAAAA,EAAAA,IAACvB,EAAmB,UAAnB,EAA4B,OAAAsB,GAAe,UAAAnB,EAAA,CAAS;AAC9D,GAEaqB,KAAwB,MAAM;AACzC,QAAMC,IAAUC,EAAW1B,CAAkB;AAC7C,MAAI,CAACyB;AACH,UAAM,IAAI,MAAM,iEAAiE;AAEnF,SAAOA;AACT;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const me=require("../../../../../_virtual/jsx-runtime.cjs.js"),f=require("react"),he=require("../hooks/useBuildProjectDataTable.cjs.js"),be=require("../hooks/useFolderRelationships.cjs.js"),B=require("../hooks/useBuildGroupByTableData.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/dataImport.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/projectFolders.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/products/getFolderProducts.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/projectFolders/projectFolders.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/tasks/getTasks.cjs.js");require("../../../api/queries/tasks/updateTasks.cjs.js");require("../../../api/queries/teams/getTeams.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");require("lodash");require("react-toastify");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("uuid");require("../../../util/pubsub.cjs.js");require("../../../context/PowerpackContextInstance.cjs.js");require("../../../context/UriContext.cjs.js");require("../../../context/DetailsPanelContextInstance.cjs.js");require("../../../context/SubtasksModulesContextInstance.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");const Pe=require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");const je=require("./ColumnSettingsContext.cjs.js"),Ee=require("./ProjectTableContext.cjs.js"),D=g=>g?.split(B.ROW_ID_SEPARATOR)[0]||g,Ce=({children:g,foldersMap:s,tableRows:d,tasksMap:n,entitiesMap:t,tasksByFolderMap:P,expanded:o,showHierarchy:j,loadingTasks:A,isLoadingMore:I,isLoading:x,error:G,isInitialized:O,users:N,attribFields:c,scopes:h,groups:b,groupRowFunc:_,overrideGroupBy:E,queryFilters:w,updateShowHierarchy:L,toggleExpanded:p,updateExpanded:W,fetchNextPage:z,reloadTableData:J,setExpanded:a,contextMenuItems:K,powerpack:Q,modules:U,groupByConfig:X,hierarchyOptions:Y,hierarchyActive:Z,isFlatFolderView:y,SubtasksManager:$,playerOpen:H,onOpenPlayer:V,onResetView:k,useParams:F,useNavigate:M,useLocation:ee,useSearchParams:re})=>{const{attrib:ue}=Pe.useProjectContext(),{groupBy:ie,groupByConfig:{showEmpty:C=!1}={}}=je.useColumnSettingsContext(),qe=he({foldersMap:s,tasksMap:n,rows:d,tasksByFolderMap:P,expanded:o,showHierarchy:j,isFlatFolderView:y,showEmptyFolders:C,loadingTasks:A,isLoadingMore:I}),m=y?void 0:E||ie,te=B.default({entities:t,entityType:X?.entityType||"unknown",groups:b,attribFields:c,showEmpty:C,groupRowFunc:_}),oe=f.useMemo(()=>c.filter(i=>i.scope?.some(q=>h.includes(q))),[c,h]),S=f.useMemo(()=>!!m&&te(m),[m,t,b]),ne=m&&!y&&S?S:qe,T=f.useCallback((i,q="entityId")=>{if(typeof i!="string"){console.warn("getEntityById called with non-string id:",i);return}const e=D(i);if(s.has(e))return s.get(e);if(n.has(e))return n.get(e);if(t.has(e))return t.get(e);for(const[u,r]of t)if(r[q]===e)return r},[s,n,t]),{getInheritedDependents:se,getChildrenEntities:v,findInheritedValueFromAncestors:ce,findNonInheritedValues:ae,getAncestorsOf:le}=be({entitiesMap:t,tasksMap:n,tasksByFolderMap:P,getEntityById:T,projectAttrib:ue,attribFields:c}),fe=f.useCallback((i,q)=>{const e=typeof o=="object"?o:{},u={...e};i.forEach(r=>{const R=v(r).map(l=>l.id),ye=e[r]||!1;(q!==void 0?!q:ye)?(u[r]=!1,R.forEach(l=>{u[l]=!1})):(u[r]=!0,R.forEach(l=>{u[l]=!0}))}),a(u)},[o,v,a]),ge=f.useCallback((i,q)=>{const e=typeof o=="object"?o:{},u={...e};i.forEach(r=>{q!==void 0?u[r]=q:u[r]=!e[r]}),a(u)},[o,a]);return me.jsxRuntimeExports.jsx(Ee.ProjectTableContext.Provider,{value:{tableData:ne,isInitialized:O,isLoading:x,error:G,attribFields:c,attribFieldsScoped:oe,scopes:h,users:N,tasksMap:n,foldersMap:s,entitiesMap:t,fetchNextPage:z,reloadTableData:J,groups:b,overrideGroupBy:E,queryFilters:w,showHierarchy:j,updateShowHierarchy:L,hierarchyOptions:Y,hierarchyActive:Z,isFlatFolderView:y,expanded:o,setExpanded:a,toggleExpanded:p,updateExpanded:W,toggleExpandAll:fe,toggleExpands:ge,getEntityById:T,getInheritedDependents:se,findInheritedValueFromAncestors:ce,findNonInheritedValues:ae,getAncestorsOf:le,contextMenuItems:K,powerpack:Q,modules:U,SubtasksManager:$,playerOpen:H,onOpenPlayer:V,onResetView:k,useParams:F,useNavigate:M,useLocation:ee,useSearchParams:re},children:g})};exports.ProjectTableProvider=Ce;exports.parseRowId=D;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const me=require("../../../../../_virtual/jsx-runtime.cjs.js"),f=require("react"),he=require("../hooks/useBuildProjectDataTable.cjs.js"),be=require("../hooks/useFolderRelationships.cjs.js"),B=require("../hooks/useBuildGroupByTableData.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/dataImport.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/projectFolders.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/columnStats/metricTargets.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/products/getFolderProducts.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/projectFolders/projectFolders.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/tasks/getTasks.cjs.js");require("../../../api/queries/tasks/updateTasks.cjs.js");require("../../../api/queries/teams/getTeams.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");require("lodash");require("react-toastify");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("uuid");require("../../../util/pubsub.cjs.js");require("../../../context/PowerpackContextInstance.cjs.js");require("../../../context/UriContext.cjs.js");require("../../../context/DetailsPanelContextInstance.cjs.js");require("../../../context/SubtasksModulesContextInstance.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");const Pe=require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");const je=require("./ColumnSettingsContext.cjs.js"),Ee=require("./ProjectTableContext.cjs.js"),D=g=>g?.split(B.ROW_ID_SEPARATOR)[0]||g,Ce=({children:g,foldersMap:s,tableRows:d,tasksMap:n,entitiesMap:t,tasksByFolderMap:P,expanded:o,showHierarchy:j,loadingTasks:A,isLoadingMore:I,isLoading:x,error:G,isInitialized:O,users:N,attribFields:c,scopes:h,groups:b,groupRowFunc:_,overrideGroupBy:E,queryFilters:w,updateShowHierarchy:L,toggleExpanded:p,updateExpanded:W,fetchNextPage:z,reloadTableData:J,setExpanded:a,contextMenuItems:K,powerpack:Q,modules:U,groupByConfig:X,hierarchyOptions:Y,hierarchyActive:Z,isFlatFolderView:y,SubtasksManager:$,playerOpen:H,onOpenPlayer:V,onResetView:k,useParams:F,useNavigate:M,useLocation:ee,useSearchParams:re})=>{const{attrib:ue}=Pe.useProjectContext(),{groupBy:ie,groupByConfig:{showEmpty:C=!1}={}}=je.useColumnSettingsContext(),qe=he({foldersMap:s,tasksMap:n,rows:d,tasksByFolderMap:P,expanded:o,showHierarchy:j,isFlatFolderView:y,showEmptyFolders:C,loadingTasks:A,isLoadingMore:I}),m=y?void 0:E||ie,te=B.default({entities:t,entityType:X?.entityType||"unknown",groups:b,attribFields:c,showEmpty:C,groupRowFunc:_}),oe=f.useMemo(()=>c.filter(i=>i.scope?.some(q=>h.includes(q))),[c,h]),S=f.useMemo(()=>!!m&&te(m),[m,t,b]),ne=m&&!y&&S?S:qe,T=f.useCallback((i,q="entityId")=>{if(typeof i!="string"){console.warn("getEntityById called with non-string id:",i);return}const e=D(i);if(s.has(e))return s.get(e);if(n.has(e))return n.get(e);if(t.has(e))return t.get(e);for(const[u,r]of t)if(r[q]===e)return r},[s,n,t]),{getInheritedDependents:se,getChildrenEntities:v,findInheritedValueFromAncestors:ce,findNonInheritedValues:ae,getAncestorsOf:le}=be({entitiesMap:t,tasksMap:n,tasksByFolderMap:P,getEntityById:T,projectAttrib:ue,attribFields:c}),fe=f.useCallback((i,q)=>{const e=typeof o=="object"?o:{},u={...e};i.forEach(r=>{const R=v(r).map(l=>l.id),ye=e[r]||!1;(q!==void 0?!q:ye)?(u[r]=!1,R.forEach(l=>{u[l]=!1})):(u[r]=!0,R.forEach(l=>{u[l]=!0}))}),a(u)},[o,v,a]),ge=f.useCallback((i,q)=>{const e=typeof o=="object"?o:{},u={...e};i.forEach(r=>{q!==void 0?u[r]=q:u[r]=!e[r]}),a(u)},[o,a]);return me.jsxRuntimeExports.jsx(Ee.ProjectTableContext.Provider,{value:{tableData:ne,isInitialized:O,isLoading:x,error:G,attribFields:c,attribFieldsScoped:oe,scopes:h,users:N,tasksMap:n,foldersMap:s,entitiesMap:t,fetchNextPage:z,reloadTableData:J,groups:b,overrideGroupBy:E,queryFilters:w,showHierarchy:j,updateShowHierarchy:L,hierarchyOptions:Y,hierarchyActive:Z,isFlatFolderView:y,expanded:o,setExpanded:a,toggleExpanded:p,updateExpanded:W,toggleExpandAll:fe,toggleExpands:ge,getEntityById:T,getInheritedDependents:se,findInheritedValueFromAncestors:ce,findNonInheritedValues:ae,getAncestorsOf:le,contextMenuItems:K,powerpack:Q,modules:U,SubtasksManager:$,playerOpen:H,onOpenPlayer:V,onResetView:k,useParams:F,useNavigate:M,useLocation:ee,useSearchParams:re},children:g})};exports.ProjectTableProvider=Ce;exports.parseRowId=D;
2
2
  //# sourceMappingURL=ProjectTableProvider.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectTableProvider.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectTableProvider.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, and folder inheritance operations.\n */\nimport { ReactNode, useCallback, useMemo } from 'react'\nimport { useParams, useNavigate, useLocation, useSearchParams } from 'react-router-dom'\nimport { ExpandedState, OnChangeFn } from '@tanstack/react-table'\nimport useBuildProjectDataTable from '../hooks/useBuildProjectDataTable'\nimport {\n EntitiesMap,\n EntityMap,\n FolderNodeMap,\n TableRow,\n TaskNodeMap,\n TasksByFolderMap,\n} from '../types/table'\nimport useFolderRelationships from '../hooks/useFolderRelationships'\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, useProjectContext } from '@shared/context'\nimport { TableGroupBy, useColumnSettingsContext } from './ColumnSettingsContext'\nimport { ProjectTableModulesType } from '@shared/hooks'\nimport { ProjectTableContext, ProjectTableContextType } from './ProjectTableContext'\nimport type { SubtasksManagerProps } from '@shared/components'\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 interface ProjectTableProviderProps {\n children: ReactNode\n isInitialized: boolean\n\n // loading\n isLoading: boolean\n isLoadingMore: boolean\n loadingTasks?: LoadingTasks\n error?: string\n users: TableUser[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n scopes: string[]\n\n // Flat folder view\n isFlatFolderView?: boolean\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 groups: EntityGroup[]\n groupRowFunc?: (node: any) => TableRow\n overrideGroupBy?: TableGroupBy\n\n // data functions\n fetchNextPage: (value?: string) => void\n reloadTableData: () => void\n\n // Filters\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: React.Dispatch<React.SetStateAction<ExpandedState>>\n\n // context menu\n contextMenuItems: ContextMenuItemConstructors\n\n // powerpack context\n powerpack?: PowerpackContextType\n\n // remote modules\n modules: ProjectTableModulesType\n\n groupByConfig?: {\n entityType?: GroupByEntityType\n }\n\n // Custom hierarchy-like options for the group-by settings panel\n // Overrides the default Hierarchy/Folder options when provided\n hierarchyOptions?: Array<{ value: string; label: string; icon: string }>\n\n // Whether hierarchy mode is active (for panel display only)\n // Used when showHierarchy must stay false for table internals (e.g. infinite scroll)\n // but the panel should still highlight the hierarchy option\n hierarchyActive?: boolean\n\n // SubtasksManager component\n SubtasksManager?: React.ComponentType<SubtasksManagerProps>\n\n // player\n playerOpen?: boolean\n onOpenPlayer?: (\n targetIds: {\n taskId?: string\n folderId?: string\n productId?: string\n versionId?: string\n },\n config?: { quickView?: boolean },\n ) => void\n // views\n onResetView?: () => void\n // router hooks\n useParams?: typeof useParams\n useNavigate?: typeof useNavigate\n useLocation?: typeof useLocation\n useSearchParams?: typeof useSearchParams\n}\n\nexport const ProjectTableProvider = ({\n children,\n foldersMap,\n tableRows,\n tasksMap,\n entitiesMap,\n tasksByFolderMap,\n expanded,\n showHierarchy,\n loadingTasks,\n isLoadingMore,\n isLoading,\n error,\n isInitialized,\n users,\n attribFields,\n scopes,\n groups,\n groupRowFunc,\n overrideGroupBy,\n queryFilters,\n updateShowHierarchy,\n toggleExpanded,\n updateExpanded,\n fetchNextPage,\n reloadTableData,\n setExpanded,\n contextMenuItems,\n powerpack,\n modules,\n groupByConfig,\n hierarchyOptions,\n hierarchyActive,\n isFlatFolderView,\n SubtasksManager,\n // player\n playerOpen,\n onOpenPlayer,\n // views\n onResetView,\n useParams,\n useNavigate,\n useLocation,\n useSearchParams,\n}: ProjectTableProviderProps) => {\n const { attrib: projectAttrib } = useProjectContext()\n const { groupBy: columnSettingsGroupBy, groupByConfig: { showEmpty: showEmptyGroups = false } = {} } =\n useColumnSettingsContext()\n\n // DATA TO TABLE\n const defaultTableData = useBuildProjectDataTable({\n foldersMap,\n tasksMap,\n rows: tableRows,\n tasksByFolderMap,\n expanded,\n showHierarchy,\n isFlatFolderView,\n showEmptyFolders: showEmptyGroups,\n loadingTasks,\n isLoadingMore,\n })\n\n // overrideGroupBy (from view dropdown) takes priority over Customize panel's groupBy.\n // In flat folder view, ignore both — the 'folder' sentinel persisted on the server\n // must not leak into grouping logic (it's only used to distinguish the mode from 'none').\n const effectiveGroupBy = isFlatFolderView ? undefined : (overrideGroupBy || columnSettingsGroupBy)\n\n const buildGroupByTableData = useBuildGroupByTableData({\n entities: entitiesMap,\n entityType: groupByConfig?.entityType || 'unknown',\n groups: groups,\n attribFields,\n showEmpty: showEmptyGroups,\n groupRowFunc,\n })\n\n const attribFieldsScoped = useMemo(\n () => attribFields.filter((attrib) => attrib.scope?.some((scope) => scopes.includes(scope))),\n [attribFields, scopes],\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 () => !!effectiveGroupBy && buildGroupByTableData(effectiveGroupBy),\n [effectiveGroupBy, entitiesMap, groups],\n )\n\n const tableData = effectiveGroupBy && !isFlatFolderView && groupedTableData ? groupedTableData : defaultTableData\n\n const getEntityById = useCallback(\n (id: string, field: string = 'entityId'): EntityMap | undefined => {\n // defensive check to ensure id is a string\n if (typeof id !== 'string') {\n console.warn('getEntityById called with non-string id:', id)\n return undefined\n }\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 // if we have not found the entity at all, double check through the maps using field (entityId)\n for (const [_, entity] of entitiesMap) {\n if (entity[field as keyof EntityMap] === parsedId) {\n return entity\n }\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,\n attribFields: attribFields,\n })\n\n const toggleExpandAll: ProjectTableContextType['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: ProjectTableContextType['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 attribFields,\n attribFieldsScoped,\n scopes,\n users,\n tasksMap,\n foldersMap,\n entitiesMap,\n fetchNextPage,\n reloadTableData,\n groups,\n overrideGroupBy,\n queryFilters,\n // hierarchy\n showHierarchy,\n updateShowHierarchy,\n hierarchyOptions,\n hierarchyActive,\n // flat folder view\n isFlatFolderView,\n // expanded state\n expanded,\n setExpanded,\n toggleExpanded,\n updateExpanded,\n toggleExpandAll,\n toggleExpands,\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 // SubtasksManager\n SubtasksManager,\n // player\n playerOpen,\n onOpenPlayer,\n // views\n onResetView,\n // router hooks\n useParams,\n useNavigate,\n useLocation,\n useSearchParams,\n }}\n >\n {children}\n </ProjectTableContext.Provider>\n )\n}\n"],"names":["parseRowId","rowId","ROW_ID_SEPARATOR","ProjectTableProvider","children","foldersMap","tableRows","tasksMap","entitiesMap","tasksByFolderMap","expanded","showHierarchy","loadingTasks","isLoadingMore","isLoading","error","isInitialized","users","attribFields","scopes","groups","groupRowFunc","overrideGroupBy","queryFilters","updateShowHierarchy","toggleExpanded","updateExpanded","fetchNextPage","reloadTableData","setExpanded","contextMenuItems","powerpack","modules","groupByConfig","hierarchyOptions","hierarchyActive","isFlatFolderView","SubtasksManager","playerOpen","onOpenPlayer","onResetView","useParams","useNavigate","useLocation","useSearchParams","projectAttrib","useProjectContext","columnSettingsGroupBy","showEmptyGroups","useColumnSettingsContext","defaultTableData","useBuildProjectDataTable","effectiveGroupBy","buildGroupByTableData","useBuildGroupByTableData","attribFieldsScoped","useMemo","attrib","scope","groupedTableData","tableData","getEntityById","useCallback","id","field","parsedId","_","entity","getInheritedDependents","getChildrenEntities","findInheritedValueFromAncestors","findNonInheritedValues","getAncestorsOf","useFolderRelationships","toggleExpandAll","rowIds","expandAll","expandedState","newExpandedState","childIds","child","isExpanded","toggleExpands","expand","jsx","ProjectTableContext"],"mappings":"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"}
1
+ {"version":3,"file":"ProjectTableProvider.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectTableProvider.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, and folder inheritance operations.\n */\nimport { ReactNode, useCallback, useMemo } from 'react'\nimport { useParams, useNavigate, useLocation, useSearchParams } from 'react-router-dom'\nimport { ExpandedState, OnChangeFn } from '@tanstack/react-table'\nimport useBuildProjectDataTable from '../hooks/useBuildProjectDataTable'\nimport {\n EntitiesMap,\n EntityMap,\n FolderNodeMap,\n TableRow,\n TaskNodeMap,\n TasksByFolderMap,\n} from '../types/table'\nimport useFolderRelationships from '../hooks/useFolderRelationships'\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, useProjectContext } from '@shared/context'\nimport { TableGroupBy, useColumnSettingsContext } from './ColumnSettingsContext'\nimport { ProjectTableModulesType } from '@shared/hooks'\nimport { ProjectTableContext, ProjectTableContextType } from './ProjectTableContext'\nimport type { SubtasksManagerProps } from '@shared/components'\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 interface ProjectTableProviderProps {\n children: ReactNode\n isInitialized: boolean\n\n // loading\n isLoading: boolean\n isLoadingMore: boolean\n loadingTasks?: LoadingTasks\n error?: string\n users: TableUser[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n scopes: string[]\n\n // Flat folder view\n isFlatFolderView?: boolean\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 groups: EntityGroup[]\n groupRowFunc?: (node: any) => TableRow\n overrideGroupBy?: TableGroupBy\n\n // data functions\n fetchNextPage: (value?: string) => void\n reloadTableData: () => void\n\n // Filters\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: React.Dispatch<React.SetStateAction<ExpandedState>>\n\n // context menu\n contextMenuItems: ContextMenuItemConstructors\n\n // powerpack context\n powerpack?: PowerpackContextType\n\n // remote modules\n modules: ProjectTableModulesType\n\n groupByConfig?: {\n entityType?: GroupByEntityType\n }\n\n // Custom hierarchy-like options for the group-by settings panel\n // Overrides the default Hierarchy/Folder options when provided\n hierarchyOptions?: Array<{ value: string; label: string; icon: string }>\n\n // Whether hierarchy mode is active (for panel display only)\n // Used when showHierarchy must stay false for table internals (e.g. infinite scroll)\n // but the panel should still highlight the hierarchy option\n hierarchyActive?: boolean\n\n // SubtasksManager component\n SubtasksManager?: React.ComponentType<SubtasksManagerProps>\n\n // player\n playerOpen?: boolean\n onOpenPlayer?: (\n targetIds: {\n taskId?: string\n folderId?: string\n productId?: string\n versionId?: string\n },\n config?: { quickView?: boolean },\n ) => void\n // views\n onResetView?: () => void\n // router hooks\n useParams?: typeof useParams\n useNavigate?: typeof useNavigate\n useLocation?: typeof useLocation\n useSearchParams?: typeof useSearchParams\n}\n\nexport const ProjectTableProvider = ({\n children,\n foldersMap,\n tableRows,\n tasksMap,\n entitiesMap,\n tasksByFolderMap,\n expanded,\n showHierarchy,\n loadingTasks,\n isLoadingMore,\n isLoading,\n error,\n isInitialized,\n users,\n attribFields,\n scopes,\n groups,\n groupRowFunc,\n overrideGroupBy,\n queryFilters,\n updateShowHierarchy,\n toggleExpanded,\n updateExpanded,\n fetchNextPage,\n reloadTableData,\n setExpanded,\n contextMenuItems,\n powerpack,\n modules,\n groupByConfig,\n hierarchyOptions,\n hierarchyActive,\n isFlatFolderView,\n SubtasksManager,\n // player\n playerOpen,\n onOpenPlayer,\n // views\n onResetView,\n useParams,\n useNavigate,\n useLocation,\n useSearchParams,\n}: ProjectTableProviderProps) => {\n const { attrib: projectAttrib } = useProjectContext()\n const { groupBy: columnSettingsGroupBy, groupByConfig: { showEmpty: showEmptyGroups = false } = {} } =\n useColumnSettingsContext()\n\n // DATA TO TABLE\n const defaultTableData = useBuildProjectDataTable({\n foldersMap,\n tasksMap,\n rows: tableRows,\n tasksByFolderMap,\n expanded,\n showHierarchy,\n isFlatFolderView,\n showEmptyFolders: showEmptyGroups,\n loadingTasks,\n isLoadingMore,\n })\n\n // overrideGroupBy (from view dropdown) takes priority over Customize panel's groupBy.\n // In flat folder view, ignore both — the 'folder' sentinel persisted on the server\n // must not leak into grouping logic (it's only used to distinguish the mode from 'none').\n const effectiveGroupBy = isFlatFolderView ? undefined : (overrideGroupBy || columnSettingsGroupBy)\n\n const buildGroupByTableData = useBuildGroupByTableData({\n entities: entitiesMap,\n entityType: groupByConfig?.entityType || 'unknown',\n groups: groups,\n attribFields,\n showEmpty: showEmptyGroups,\n groupRowFunc,\n })\n\n const attribFieldsScoped = useMemo(\n () => attribFields.filter((attrib) => attrib.scope?.some((scope) => scopes.includes(scope))),\n [attribFields, scopes],\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 () => !!effectiveGroupBy && buildGroupByTableData(effectiveGroupBy),\n [effectiveGroupBy, entitiesMap, groups],\n )\n\n const tableData = effectiveGroupBy && !isFlatFolderView && groupedTableData ? groupedTableData : defaultTableData\n\n const getEntityById = useCallback(\n (id: string, field: string = 'entityId'): EntityMap | undefined => {\n // defensive check to ensure id is a string\n if (typeof id !== 'string') {\n console.warn('getEntityById called with non-string id:', id)\n return undefined\n }\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 // if we have not found the entity at all, double check through the maps using field (entityId)\n for (const [_, entity] of entitiesMap) {\n if (entity[field as keyof EntityMap] === parsedId) {\n return entity\n }\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,\n attribFields: attribFields,\n })\n\n const toggleExpandAll: ProjectTableContextType['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: ProjectTableContextType['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 attribFields,\n attribFieldsScoped,\n scopes,\n users,\n tasksMap,\n foldersMap,\n entitiesMap,\n fetchNextPage,\n reloadTableData,\n groups,\n overrideGroupBy,\n queryFilters,\n // hierarchy\n showHierarchy,\n updateShowHierarchy,\n hierarchyOptions,\n hierarchyActive,\n // flat folder view\n isFlatFolderView,\n // expanded state\n expanded,\n setExpanded,\n toggleExpanded,\n updateExpanded,\n toggleExpandAll,\n toggleExpands,\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 // SubtasksManager\n SubtasksManager,\n // player\n playerOpen,\n onOpenPlayer,\n // views\n onResetView,\n // router hooks\n useParams,\n useNavigate,\n useLocation,\n useSearchParams,\n }}\n >\n {children}\n </ProjectTableContext.Provider>\n )\n}\n"],"names":["parseRowId","rowId","ROW_ID_SEPARATOR","ProjectTableProvider","children","foldersMap","tableRows","tasksMap","entitiesMap","tasksByFolderMap","expanded","showHierarchy","loadingTasks","isLoadingMore","isLoading","error","isInitialized","users","attribFields","scopes","groups","groupRowFunc","overrideGroupBy","queryFilters","updateShowHierarchy","toggleExpanded","updateExpanded","fetchNextPage","reloadTableData","setExpanded","contextMenuItems","powerpack","modules","groupByConfig","hierarchyOptions","hierarchyActive","isFlatFolderView","SubtasksManager","playerOpen","onOpenPlayer","onResetView","useParams","useNavigate","useLocation","useSearchParams","projectAttrib","useProjectContext","columnSettingsGroupBy","showEmptyGroups","useColumnSettingsContext","defaultTableData","useBuildProjectDataTable","effectiveGroupBy","buildGroupByTableData","useBuildGroupByTableData","attribFieldsScoped","useMemo","attrib","scope","groupedTableData","tableData","getEntityById","useCallback","id","field","parsedId","_","entity","getInheritedDependents","getChildrenEntities","findInheritedValueFromAncestors","findNonInheritedValues","getAncestorsOf","useFolderRelationships","toggleExpandAll","rowIds","expandAll","expandedState","newExpandedState","childIds","child","isExpanded","toggleExpands","expand","jsx","ProjectTableContext"],"mappings":"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"}
@@ -58,6 +58,7 @@ import "../../../api/queries/attributes/getAttributes.es.js";
58
58
  import "../../../api/queries/attributes/updateAttributes.es.js";
59
59
  import "../../../api/queries/authentication/getAuthentication.es.js";
60
60
  import "../../../api/queries/cloud/cloud.es.js";
61
+ import "../../../api/queries/columnStats/metricTargets.es.js";
61
62
  import "../../../api/queries/config/getConfig.es.js";
62
63
  import "../../../api/queries/config/updateConfig.es.js";
63
64
  import "../../../api/queries/entities/getEntity.es.js";
@@ -125,7 +126,7 @@ import { useProjectContext as Pt } from "../../../context/ProjectContext.es.js";
125
126
  import "../../../context/ProjectFoldersContext.es.js";
126
127
  import { useColumnSettingsContext as jt } from "./ColumnSettingsContext.es.js";
127
128
  import { ProjectTableContext as vt } from "./ProjectTableContext.es.js";
128
- const St = (a) => a?.split(bt)[0] || a, Qr = ({
129
+ const St = (a) => a?.split(bt)[0] || a, Ur = ({
129
130
  children: a,
130
131
  foldersMap: s,
131
132
  tableRows: R,
@@ -312,7 +313,7 @@ const St = (a) => a?.split(bt)[0] || a, Qr = ({
312
313
  );
313
314
  };
314
315
  export {
315
- Qr as ProjectTableProvider,
316
+ Ur as ProjectTableProvider,
316
317
  St as parseRowId
317
318
  };
318
319
  //# sourceMappingURL=ProjectTableProvider.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectTableProvider.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectTableProvider.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, and folder inheritance operations.\n */\nimport { ReactNode, useCallback, useMemo } from 'react'\nimport { useParams, useNavigate, useLocation, useSearchParams } from 'react-router-dom'\nimport { ExpandedState, OnChangeFn } from '@tanstack/react-table'\nimport useBuildProjectDataTable from '../hooks/useBuildProjectDataTable'\nimport {\n EntitiesMap,\n EntityMap,\n FolderNodeMap,\n TableRow,\n TaskNodeMap,\n TasksByFolderMap,\n} from '../types/table'\nimport useFolderRelationships from '../hooks/useFolderRelationships'\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, useProjectContext } from '@shared/context'\nimport { TableGroupBy, useColumnSettingsContext } from './ColumnSettingsContext'\nimport { ProjectTableModulesType } from '@shared/hooks'\nimport { ProjectTableContext, ProjectTableContextType } from './ProjectTableContext'\nimport type { SubtasksManagerProps } from '@shared/components'\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 interface ProjectTableProviderProps {\n children: ReactNode\n isInitialized: boolean\n\n // loading\n isLoading: boolean\n isLoadingMore: boolean\n loadingTasks?: LoadingTasks\n error?: string\n users: TableUser[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n scopes: string[]\n\n // Flat folder view\n isFlatFolderView?: boolean\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 groups: EntityGroup[]\n groupRowFunc?: (node: any) => TableRow\n overrideGroupBy?: TableGroupBy\n\n // data functions\n fetchNextPage: (value?: string) => void\n reloadTableData: () => void\n\n // Filters\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: React.Dispatch<React.SetStateAction<ExpandedState>>\n\n // context menu\n contextMenuItems: ContextMenuItemConstructors\n\n // powerpack context\n powerpack?: PowerpackContextType\n\n // remote modules\n modules: ProjectTableModulesType\n\n groupByConfig?: {\n entityType?: GroupByEntityType\n }\n\n // Custom hierarchy-like options for the group-by settings panel\n // Overrides the default Hierarchy/Folder options when provided\n hierarchyOptions?: Array<{ value: string; label: string; icon: string }>\n\n // Whether hierarchy mode is active (for panel display only)\n // Used when showHierarchy must stay false for table internals (e.g. infinite scroll)\n // but the panel should still highlight the hierarchy option\n hierarchyActive?: boolean\n\n // SubtasksManager component\n SubtasksManager?: React.ComponentType<SubtasksManagerProps>\n\n // player\n playerOpen?: boolean\n onOpenPlayer?: (\n targetIds: {\n taskId?: string\n folderId?: string\n productId?: string\n versionId?: string\n },\n config?: { quickView?: boolean },\n ) => void\n // views\n onResetView?: () => void\n // router hooks\n useParams?: typeof useParams\n useNavigate?: typeof useNavigate\n useLocation?: typeof useLocation\n useSearchParams?: typeof useSearchParams\n}\n\nexport const ProjectTableProvider = ({\n children,\n foldersMap,\n tableRows,\n tasksMap,\n entitiesMap,\n tasksByFolderMap,\n expanded,\n showHierarchy,\n loadingTasks,\n isLoadingMore,\n isLoading,\n error,\n isInitialized,\n users,\n attribFields,\n scopes,\n groups,\n groupRowFunc,\n overrideGroupBy,\n queryFilters,\n updateShowHierarchy,\n toggleExpanded,\n updateExpanded,\n fetchNextPage,\n reloadTableData,\n setExpanded,\n contextMenuItems,\n powerpack,\n modules,\n groupByConfig,\n hierarchyOptions,\n hierarchyActive,\n isFlatFolderView,\n SubtasksManager,\n // player\n playerOpen,\n onOpenPlayer,\n // views\n onResetView,\n useParams,\n useNavigate,\n useLocation,\n useSearchParams,\n}: ProjectTableProviderProps) => {\n const { attrib: projectAttrib } = useProjectContext()\n const { groupBy: columnSettingsGroupBy, groupByConfig: { showEmpty: showEmptyGroups = false } = {} } =\n useColumnSettingsContext()\n\n // DATA TO TABLE\n const defaultTableData = useBuildProjectDataTable({\n foldersMap,\n tasksMap,\n rows: tableRows,\n tasksByFolderMap,\n expanded,\n showHierarchy,\n isFlatFolderView,\n showEmptyFolders: showEmptyGroups,\n loadingTasks,\n isLoadingMore,\n })\n\n // overrideGroupBy (from view dropdown) takes priority over Customize panel's groupBy.\n // In flat folder view, ignore both — the 'folder' sentinel persisted on the server\n // must not leak into grouping logic (it's only used to distinguish the mode from 'none').\n const effectiveGroupBy = isFlatFolderView ? undefined : (overrideGroupBy || columnSettingsGroupBy)\n\n const buildGroupByTableData = useBuildGroupByTableData({\n entities: entitiesMap,\n entityType: groupByConfig?.entityType || 'unknown',\n groups: groups,\n attribFields,\n showEmpty: showEmptyGroups,\n groupRowFunc,\n })\n\n const attribFieldsScoped = useMemo(\n () => attribFields.filter((attrib) => attrib.scope?.some((scope) => scopes.includes(scope))),\n [attribFields, scopes],\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 () => !!effectiveGroupBy && buildGroupByTableData(effectiveGroupBy),\n [effectiveGroupBy, entitiesMap, groups],\n )\n\n const tableData = effectiveGroupBy && !isFlatFolderView && groupedTableData ? groupedTableData : defaultTableData\n\n const getEntityById = useCallback(\n (id: string, field: string = 'entityId'): EntityMap | undefined => {\n // defensive check to ensure id is a string\n if (typeof id !== 'string') {\n console.warn('getEntityById called with non-string id:', id)\n return undefined\n }\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 // if we have not found the entity at all, double check through the maps using field (entityId)\n for (const [_, entity] of entitiesMap) {\n if (entity[field as keyof EntityMap] === parsedId) {\n return entity\n }\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,\n attribFields: attribFields,\n })\n\n const toggleExpandAll: ProjectTableContextType['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: ProjectTableContextType['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 attribFields,\n attribFieldsScoped,\n scopes,\n users,\n tasksMap,\n foldersMap,\n entitiesMap,\n fetchNextPage,\n reloadTableData,\n groups,\n overrideGroupBy,\n queryFilters,\n // hierarchy\n showHierarchy,\n updateShowHierarchy,\n hierarchyOptions,\n hierarchyActive,\n // flat folder view\n isFlatFolderView,\n // expanded state\n expanded,\n setExpanded,\n toggleExpanded,\n updateExpanded,\n toggleExpandAll,\n toggleExpands,\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 // SubtasksManager\n SubtasksManager,\n // player\n playerOpen,\n onOpenPlayer,\n // views\n onResetView,\n // router hooks\n useParams,\n useNavigate,\n useLocation,\n useSearchParams,\n }}\n >\n {children}\n </ProjectTableContext.Provider>\n )\n}\n"],"names":["parseRowId","rowId","ROW_ID_SEPARATOR","ProjectTableProvider","children","foldersMap","tableRows","tasksMap","entitiesMap","tasksByFolderMap","expanded","showHierarchy","loadingTasks","isLoadingMore","isLoading","error","isInitialized","users","attribFields","scopes","groups","groupRowFunc","overrideGroupBy","queryFilters","updateShowHierarchy","toggleExpanded","updateExpanded","fetchNextPage","reloadTableData","setExpanded","contextMenuItems","powerpack","modules","groupByConfig","hierarchyOptions","hierarchyActive","isFlatFolderView","SubtasksManager","playerOpen","onOpenPlayer","onResetView","useParams","useNavigate","useLocation","useSearchParams","projectAttrib","useProjectContext","columnSettingsGroupBy","showEmptyGroups","useColumnSettingsContext","defaultTableData","useBuildProjectDataTable","effectiveGroupBy","buildGroupByTableData","useBuildGroupByTableData","attribFieldsScoped","useMemo","attrib","scope","groupedTableData","tableData","getEntityById","useCallback","id","field","parsedId","_","entity","getInheritedDependents","getChildrenEntities","findInheritedValueFromAncestors","findNonInheritedValues","getAncestorsOf","useFolderRelationships","toggleExpandAll","rowIds","expandAll","expandedState","newExpandedState","childIds","child","isExpanded","toggleExpands","expand","jsx","ProjectTableContext"],"mappings":"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"}
1
+ {"version":3,"file":"ProjectTableProvider.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectTableProvider.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, and folder inheritance operations.\n */\nimport { ReactNode, useCallback, useMemo } from 'react'\nimport { useParams, useNavigate, useLocation, useSearchParams } from 'react-router-dom'\nimport { ExpandedState, OnChangeFn } from '@tanstack/react-table'\nimport useBuildProjectDataTable from '../hooks/useBuildProjectDataTable'\nimport {\n EntitiesMap,\n EntityMap,\n FolderNodeMap,\n TableRow,\n TaskNodeMap,\n TasksByFolderMap,\n} from '../types/table'\nimport useFolderRelationships from '../hooks/useFolderRelationships'\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, useProjectContext } from '@shared/context'\nimport { TableGroupBy, useColumnSettingsContext } from './ColumnSettingsContext'\nimport { ProjectTableModulesType } from '@shared/hooks'\nimport { ProjectTableContext, ProjectTableContextType } from './ProjectTableContext'\nimport type { SubtasksManagerProps } from '@shared/components'\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 interface ProjectTableProviderProps {\n children: ReactNode\n isInitialized: boolean\n\n // loading\n isLoading: boolean\n isLoadingMore: boolean\n loadingTasks?: LoadingTasks\n error?: string\n users: TableUser[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n scopes: string[]\n\n // Flat folder view\n isFlatFolderView?: boolean\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 groups: EntityGroup[]\n groupRowFunc?: (node: any) => TableRow\n overrideGroupBy?: TableGroupBy\n\n // data functions\n fetchNextPage: (value?: string) => void\n reloadTableData: () => void\n\n // Filters\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: React.Dispatch<React.SetStateAction<ExpandedState>>\n\n // context menu\n contextMenuItems: ContextMenuItemConstructors\n\n // powerpack context\n powerpack?: PowerpackContextType\n\n // remote modules\n modules: ProjectTableModulesType\n\n groupByConfig?: {\n entityType?: GroupByEntityType\n }\n\n // Custom hierarchy-like options for the group-by settings panel\n // Overrides the default Hierarchy/Folder options when provided\n hierarchyOptions?: Array<{ value: string; label: string; icon: string }>\n\n // Whether hierarchy mode is active (for panel display only)\n // Used when showHierarchy must stay false for table internals (e.g. infinite scroll)\n // but the panel should still highlight the hierarchy option\n hierarchyActive?: boolean\n\n // SubtasksManager component\n SubtasksManager?: React.ComponentType<SubtasksManagerProps>\n\n // player\n playerOpen?: boolean\n onOpenPlayer?: (\n targetIds: {\n taskId?: string\n folderId?: string\n productId?: string\n versionId?: string\n },\n config?: { quickView?: boolean },\n ) => void\n // views\n onResetView?: () => void\n // router hooks\n useParams?: typeof useParams\n useNavigate?: typeof useNavigate\n useLocation?: typeof useLocation\n useSearchParams?: typeof useSearchParams\n}\n\nexport const ProjectTableProvider = ({\n children,\n foldersMap,\n tableRows,\n tasksMap,\n entitiesMap,\n tasksByFolderMap,\n expanded,\n showHierarchy,\n loadingTasks,\n isLoadingMore,\n isLoading,\n error,\n isInitialized,\n users,\n attribFields,\n scopes,\n groups,\n groupRowFunc,\n overrideGroupBy,\n queryFilters,\n updateShowHierarchy,\n toggleExpanded,\n updateExpanded,\n fetchNextPage,\n reloadTableData,\n setExpanded,\n contextMenuItems,\n powerpack,\n modules,\n groupByConfig,\n hierarchyOptions,\n hierarchyActive,\n isFlatFolderView,\n SubtasksManager,\n // player\n playerOpen,\n onOpenPlayer,\n // views\n onResetView,\n useParams,\n useNavigate,\n useLocation,\n useSearchParams,\n}: ProjectTableProviderProps) => {\n const { attrib: projectAttrib } = useProjectContext()\n const { groupBy: columnSettingsGroupBy, groupByConfig: { showEmpty: showEmptyGroups = false } = {} } =\n useColumnSettingsContext()\n\n // DATA TO TABLE\n const defaultTableData = useBuildProjectDataTable({\n foldersMap,\n tasksMap,\n rows: tableRows,\n tasksByFolderMap,\n expanded,\n showHierarchy,\n isFlatFolderView,\n showEmptyFolders: showEmptyGroups,\n loadingTasks,\n isLoadingMore,\n })\n\n // overrideGroupBy (from view dropdown) takes priority over Customize panel's groupBy.\n // In flat folder view, ignore both — the 'folder' sentinel persisted on the server\n // must not leak into grouping logic (it's only used to distinguish the mode from 'none').\n const effectiveGroupBy = isFlatFolderView ? undefined : (overrideGroupBy || columnSettingsGroupBy)\n\n const buildGroupByTableData = useBuildGroupByTableData({\n entities: entitiesMap,\n entityType: groupByConfig?.entityType || 'unknown',\n groups: groups,\n attribFields,\n showEmpty: showEmptyGroups,\n groupRowFunc,\n })\n\n const attribFieldsScoped = useMemo(\n () => attribFields.filter((attrib) => attrib.scope?.some((scope) => scopes.includes(scope))),\n [attribFields, scopes],\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 () => !!effectiveGroupBy && buildGroupByTableData(effectiveGroupBy),\n [effectiveGroupBy, entitiesMap, groups],\n )\n\n const tableData = effectiveGroupBy && !isFlatFolderView && groupedTableData ? groupedTableData : defaultTableData\n\n const getEntityById = useCallback(\n (id: string, field: string = 'entityId'): EntityMap | undefined => {\n // defensive check to ensure id is a string\n if (typeof id !== 'string') {\n console.warn('getEntityById called with non-string id:', id)\n return undefined\n }\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 // if we have not found the entity at all, double check through the maps using field (entityId)\n for (const [_, entity] of entitiesMap) {\n if (entity[field as keyof EntityMap] === parsedId) {\n return entity\n }\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,\n attribFields: attribFields,\n })\n\n const toggleExpandAll: ProjectTableContextType['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: ProjectTableContextType['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 attribFields,\n attribFieldsScoped,\n scopes,\n users,\n tasksMap,\n foldersMap,\n entitiesMap,\n fetchNextPage,\n reloadTableData,\n groups,\n overrideGroupBy,\n queryFilters,\n // hierarchy\n showHierarchy,\n updateShowHierarchy,\n hierarchyOptions,\n hierarchyActive,\n // flat folder view\n isFlatFolderView,\n // expanded state\n expanded,\n setExpanded,\n toggleExpanded,\n updateExpanded,\n toggleExpandAll,\n toggleExpands,\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 // SubtasksManager\n SubtasksManager,\n // player\n playerOpen,\n onOpenPlayer,\n // views\n onResetView,\n // router hooks\n useParams,\n useNavigate,\n useLocation,\n useSearchParams,\n }}\n >\n {children}\n </ProjectTableContext.Provider>\n )\n}\n"],"names":["parseRowId","rowId","ROW_ID_SEPARATOR","ProjectTableProvider","children","foldersMap","tableRows","tasksMap","entitiesMap","tasksByFolderMap","expanded","showHierarchy","loadingTasks","isLoadingMore","isLoading","error","isInitialized","users","attribFields","scopes","groups","groupRowFunc","overrideGroupBy","queryFilters","updateShowHierarchy","toggleExpanded","updateExpanded","fetchNextPage","reloadTableData","setExpanded","contextMenuItems","powerpack","modules","groupByConfig","hierarchyOptions","hierarchyActive","isFlatFolderView","SubtasksManager","playerOpen","onOpenPlayer","onResetView","useParams","useNavigate","useLocation","useSearchParams","projectAttrib","useProjectContext","columnSettingsGroupBy","showEmptyGroups","useColumnSettingsContext","defaultTableData","useBuildProjectDataTable","effectiveGroupBy","buildGroupByTableData","useBuildGroupByTableData","attribFieldsScoped","useMemo","attrib","scope","groupedTableData","tableData","getEntityById","useCallback","id","field","parsedId","_","entity","getInheritedDependents","getChildrenEntities","findInheritedValueFromAncestors","findNonInheritedValues","getAncestorsOf","useFolderRelationships","toggleExpandAll","rowIds","expandAll","expandedState","newExpandedState","childIds","child","isExpanded","toggleExpands","expand","jsx","ProjectTableContext"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("../../../../../_virtual/jsx-runtime.cjs.js"),o=require("react"),d=require("./SelectionCellsContext.cjs.js"),n=require("../utils/cellUtils.cjs.js"),_=require("./SelectedRowsContext.cjs.js"),p=require("./DetailsPanelEntityContext.cjs.js"),v=({children:f})=>{const{selectedCells:I,gridMap:r,setSelectedCells:u,setFocusedCellId:h,setAnchorCell:x}=d.useSelectionCellsContext();let c;try{c=p.useDetailsPanelEntityContext().clearSelectedEntity}catch{c=void 0}const C=o.useRef([]),a=o.useMemo(()=>Array.from(I).filter(e=>n.parseCellId(e)?.colId===d.ROW_SELECTION_COLUMN_ID&&n.parseCellId(e)?.rowId).map(e=>n.parseCellId(e)?.rowId).filter(e=>e!==void 0&&(r.rowIdToIndex.size===0||r.rowIdToIndex.has(e))),[I,r]),t=o.useMemo(()=>{const e=[...a].sort(),s=[...C.current].sort();return e.length!==s.length||e.some((y,O)=>y!==s[O])?(C.current=a,a):C.current},[a]);o.useEffect(()=>{t.length>0&&c&&c()},[t.length,c]);const S=o.useCallback(()=>{const e=Array.from(r.rowIdToIndex.keys()),s=new Set;if(e.forEach(l=>{s.add(n.getCellId(l,d.ROW_SELECTION_COLUMN_ID))}),u(s),e.length>0){const l=n.getCellId(e[0],d.ROW_SELECTION_COLUMN_ID);h(l),x(n.parseCellId(l))}},[r]),w=o.useCallback(()=>{u(e=>{const s=new Set(e);return Array.from(s).forEach(l=>{n.parseCellId(l)?.colId===d.ROW_SELECTION_COLUMN_ID&&s.delete(l)}),s})},[u]),E=o.useCallback(e=>t.includes(e),[t]),i=o.useCallback(()=>{const e=r.rowIdToIndex.size;return e>0&&t.length===e},[r,t]),R=o.useCallback(()=>t.length>0&&!i(),[t,i]),g=o.useMemo(()=>({selectedRows:t,selectAllRows:S,clearRowsSelection:w,isRowSelected:E,areAllRowsSelected:i,areSomeRowsSelected:R}),[t,S,i,R,w]);return m.jsxRuntimeExports.jsx(_.SelectedRowsContext.Provider,{value:g,children:f})};exports.SelectedRowsProvider=v;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("../../../../../_virtual/jsx-runtime.cjs.js"),o=require("react"),_=require("./SelectionCellsContext.cjs.js"),n=require("../utils/cellUtils.cjs.js"),p=require("./SelectedRowsContext.cjs.js"),v=require("./DetailsPanelEntityContext.cjs.js"),i=require("../constants.cjs.js"),M=({children:f})=>{const{selectedCells:I,gridMap:r,setSelectedCells:u,setFocusedCellId:h,setAnchorCell:x}=_.useSelectionCellsContext();let c;try{c=v.useDetailsPanelEntityContext().clearSelectedEntity}catch{c=void 0}const C=o.useRef([]),d=o.useMemo(()=>Array.from(I).filter(e=>n.parseCellId(e)?.colId===i.ROW_SELECTION_COLUMN_ID&&n.parseCellId(e)?.rowId).map(e=>n.parseCellId(e)?.rowId).filter(e=>e!==void 0&&(r.rowIdToIndex.size===0||r.rowIdToIndex.has(e))),[I,r]),t=o.useMemo(()=>{const e=[...d].sort(),s=[...C.current].sort();return e.length!==s.length||e.some((y,O)=>y!==s[O])?(C.current=d,d):C.current},[d]);o.useEffect(()=>{t.length>0&&c&&c()},[t.length,c]);const S=o.useCallback(()=>{const e=Array.from(r.rowIdToIndex.keys()),s=new Set;if(e.forEach(l=>{s.add(n.getCellId(l,i.ROW_SELECTION_COLUMN_ID))}),u(s),e.length>0){const l=n.getCellId(e[0],i.ROW_SELECTION_COLUMN_ID);h(l),x(n.parseCellId(l))}},[r]),w=o.useCallback(()=>{u(e=>{const s=new Set(e);return Array.from(s).forEach(l=>{n.parseCellId(l)?.colId===i.ROW_SELECTION_COLUMN_ID&&s.delete(l)}),s})},[u]),E=o.useCallback(e=>t.includes(e),[t]),a=o.useCallback(()=>{const e=r.rowIdToIndex.size;return e>0&&t.length===e},[r,t]),R=o.useCallback(()=>t.length>0&&!a(),[t,a]),g=o.useMemo(()=>({selectedRows:t,selectAllRows:S,clearRowsSelection:w,isRowSelected:E,areAllRowsSelected:a,areSomeRowsSelected:R}),[t,S,a,R,w]);return m.jsxRuntimeExports.jsx(p.SelectedRowsContext.Provider,{value:g,children:f})};exports.SelectedRowsProvider=M;
2
2
  //# sourceMappingURL=SelectedRowsProvider.cjs.js.map