@ynput/ayon-frontend-shared 0.3.4 → 0.3.6

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 (769) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +30 -25
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/EntityPickerDialog.cjs.js +2 -0
  5. package/dist/EntityPickerDialog.cjs.js.map +1 -0
  6. package/dist/EntityPickerDialog.es.js +5 -0
  7. package/dist/EntityPickerDialog.es.js.map +1 -0
  8. package/dist/ProjectTreeTable.cjs.js +1 -1
  9. package/dist/ProjectTreeTable.es.js +151 -147
  10. package/dist/ProjectTreeTable.es.js.map +1 -1
  11. package/dist/Slicer.cjs.js +1 -1
  12. package/dist/Slicer.es.js +13 -11
  13. package/dist/Slicer.es.js.map +1 -1
  14. package/dist/_virtual/index.cjs10.js +1 -1
  15. package/dist/_virtual/index.cjs11.js +1 -1
  16. package/dist/_virtual/index.cjs12.js +1 -1
  17. package/dist/_virtual/index.es10.js +3 -3
  18. package/dist/_virtual/index.es11.js +5 -5
  19. package/dist/_virtual/index.es12.js +5 -5
  20. package/dist/api.cjs.js +1 -1
  21. package/dist/api.es.js +356 -351
  22. package/dist/api.es.js.map +1 -1
  23. package/dist/components.cjs.js +1 -1
  24. package/dist/components.es.js +141 -133
  25. package/dist/components.es.js.map +1 -1
  26. package/dist/context.cjs.js +1 -1
  27. package/dist/context.es.js +55 -52
  28. package/dist/context.es.js.map +1 -1
  29. package/dist/index.cjs.js +1 -1
  30. package/dist/index.es.js +21 -16
  31. package/dist/index.es.js.map +1 -1
  32. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +1 -1
  33. package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
  34. package/dist/node_modules/rehype/node_modules/vfile/lib/index.cjs.js +1 -1
  35. package/dist/node_modules/rehype/node_modules/vfile/lib/index.es.js +1 -1
  36. package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
  37. package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
  38. package/dist/shared/node_modules/primereact/splitter/splitter.esm.cjs.js +4 -0
  39. package/dist/shared/node_modules/primereact/splitter/splitter.esm.cjs.js.map +1 -0
  40. package/dist/shared/node_modules/primereact/splitter/splitter.esm.es.js +287 -0
  41. package/dist/shared/node_modules/primereact/splitter/splitter.esm.es.js.map +1 -0
  42. package/dist/shared/src/api/generated/graphql.cjs.js +81 -55
  43. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  44. package/dist/shared/src/api/generated/graphql.es.js +154 -127
  45. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  46. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  47. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  48. package/dist/shared/src/api/generated/views.cjs.js.map +1 -1
  49. package/dist/shared/src/api/generated/views.es.js.map +1 -1
  50. package/dist/shared/src/api/generated/ynputCloud.cjs.js.map +1 -1
  51. package/dist/shared/src/api/generated/ynputCloud.es.js.map +1 -1
  52. package/dist/shared/src/api/queries/activities/getActivities.cjs.js +1 -1
  53. package/dist/shared/src/api/queries/activities/getActivities.cjs.js.map +1 -1
  54. package/dist/shared/src/api/queries/activities/getActivities.es.js +6 -6
  55. package/dist/shared/src/api/queries/activities/getActivities.es.js.map +1 -1
  56. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js +1 -1
  57. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js.map +1 -1
  58. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js +56 -44
  59. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js.map +1 -1
  60. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js.map +1 -1
  61. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js.map +1 -1
  62. package/dist/shared/src/api/queries/entities/patchDetailsPanel.cjs.js +2 -0
  63. package/dist/shared/src/api/queries/entities/patchDetailsPanel.cjs.js.map +1 -0
  64. package/dist/shared/src/api/queries/entities/patchDetailsPanel.es.js +197 -0
  65. package/dist/shared/src/api/queries/entities/patchDetailsPanel.es.js.map +1 -0
  66. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +1 -1
  67. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  68. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +44 -42
  69. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  70. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +1 -1
  71. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
  72. package/dist/shared/src/api/queries/entities/updateEntity.es.js +134 -229
  73. package/dist/shared/src/api/queries/entities/updateEntity.es.js.map +1 -1
  74. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
  75. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  76. package/dist/shared/src/api/queries/overview/updateOverview.es.js +168 -249
  77. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  78. package/dist/shared/src/api/queries/tasks/updateTasks.cjs.js +2 -0
  79. package/dist/shared/src/api/queries/tasks/updateTasks.cjs.js.map +1 -0
  80. package/dist/shared/src/api/queries/tasks/updateTasks.es.js +43 -0
  81. package/dist/shared/src/api/queries/tasks/updateTasks.es.js.map +1 -0
  82. package/dist/shared/src/api/queries/users/getUsers.cjs.js +1 -1
  83. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  84. package/dist/shared/src/api/queries/users/getUsers.es.js +19 -18
  85. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  86. package/dist/shared/src/components/Chips/Chips.cjs.js +6 -6
  87. package/dist/shared/src/components/Chips/Chips.cjs.js.map +1 -1
  88. package/dist/shared/src/components/Chips/Chips.es.js +49 -43
  89. package/dist/shared/src/components/Chips/Chips.es.js.map +1 -1
  90. package/dist/shared/src/components/DateRangePicker/DateRangePicker.cjs.js +2 -0
  91. package/dist/shared/src/components/DateRangePicker/DateRangePicker.cjs.js.map +1 -0
  92. package/dist/shared/src/components/DateRangePicker/DateRangePicker.es.js +216 -0
  93. package/dist/shared/src/components/DateRangePicker/DateRangePicker.es.js.map +1 -0
  94. package/dist/shared/src/components/DateRangePicker/DateRangePicker.styled.cjs.js +134 -0
  95. package/dist/shared/src/components/DateRangePicker/DateRangePicker.styled.cjs.js.map +1 -0
  96. package/dist/shared/src/components/DateRangePicker/DateRangePicker.styled.es.js +147 -0
  97. package/dist/shared/src/components/DateRangePicker/DateRangePicker.styled.es.js.map +1 -0
  98. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
  99. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  100. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +3 -2
  101. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  102. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  103. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  104. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +4 -2
  105. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  106. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  107. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  108. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +4 -2
  109. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  110. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
  111. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
  112. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +4 -2
  113. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
  114. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  115. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
  116. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +4 -2
  117. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  118. package/dist/shared/src/components/DoneCheckbox/DoneCheckbox.cjs.js +20 -0
  119. package/dist/shared/src/components/DoneCheckbox/DoneCheckbox.cjs.js.map +1 -0
  120. package/dist/shared/src/components/DoneCheckbox/DoneCheckbox.es.js +34 -0
  121. package/dist/shared/src/components/DoneCheckbox/DoneCheckbox.es.js.map +1 -0
  122. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  123. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  124. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +53 -48
  125. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  126. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
  127. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
  128. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +6 -5
  129. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
  130. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  131. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  132. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +6 -4
  133. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  134. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  135. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  136. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +31 -26
  137. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  138. package/dist/shared/src/components/LinksManager/CellEditingDialog.cjs.js +2 -2
  139. package/dist/shared/src/components/LinksManager/CellEditingDialog.cjs.js.map +1 -1
  140. package/dist/shared/src/components/LinksManager/CellEditingDialog.es.js +59 -52
  141. package/dist/shared/src/components/LinksManager/CellEditingDialog.es.js.map +1 -1
  142. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
  143. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  144. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +3 -2
  145. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  146. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js +1 -1
  147. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js.map +1 -1
  148. package/dist/shared/src/components/LinksManager/LinksManager.es.js +3 -2
  149. package/dist/shared/src/components/LinksManager/LinksManager.es.js.map +1 -1
  150. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  151. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  152. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +31 -26
  153. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  154. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
  155. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
  156. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +4 -2
  157. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
  158. package/dist/shared/src/components/Menu/Menu.cjs.js +1 -1
  159. package/dist/shared/src/components/Menu/Menu.cjs.js.map +1 -1
  160. package/dist/shared/src/components/Menu/Menu.es.js +3 -2
  161. package/dist/shared/src/components/Menu/Menu.es.js.map +1 -1
  162. package/dist/shared/src/components/Menu/MenuItem.cjs.js +1 -1
  163. package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -1
  164. package/dist/shared/src/components/Menu/MenuItem.es.js +5 -4
  165. package/dist/shared/src/components/Menu/MenuItem.es.js.map +1 -1
  166. package/dist/shared/src/components/Menu/MenuList.cjs.js +1 -1
  167. package/dist/shared/src/components/Menu/MenuList.cjs.js.map +1 -1
  168. package/dist/shared/src/components/Menu/MenuList.es.js +11 -10
  169. package/dist/shared/src/components/Menu/MenuList.es.js.map +1 -1
  170. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +1 -1
  171. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
  172. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +3 -2
  173. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
  174. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  175. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  176. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +14 -9
  177. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  178. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +2 -2
  179. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  180. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +52 -42
  181. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  182. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  183. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  184. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +14 -9
  185. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  186. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +2 -0
  187. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -0
  188. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +303 -0
  189. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -0
  190. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
  191. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
  192. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +31 -26
  193. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
  194. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  195. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  196. package/dist/shared/src/components/RenameForm/RenameForm.es.js +32 -27
  197. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  198. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
  199. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  200. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +3 -2
  201. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  202. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  203. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  204. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +14 -9
  205. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  206. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  207. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  208. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +15 -10
  209. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  210. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  211. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  212. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +14 -9
  213. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  214. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
  215. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  216. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +3 -2
  217. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  218. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  219. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  220. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +8 -6
  221. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  222. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +2 -2
  223. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
  224. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +9 -8
  225. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
  226. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  227. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  228. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +14 -9
  229. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  230. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js +2 -0
  231. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js.map +1 -0
  232. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js +122 -0
  233. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js.map +1 -0
  234. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +2 -2
  235. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
  236. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +7 -6
  237. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
  238. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  239. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  240. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +14 -9
  241. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  242. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  243. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  244. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +5 -4
  245. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  246. package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
  247. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  248. package/dist/shared/src/components/Watchers/Watchers.es.js +3 -2
  249. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  250. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  251. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  252. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +14 -9
  253. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  254. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  255. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  256. package/dist/shared/src/containers/Actions/Actions.es.js +4 -2
  257. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  258. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  259. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  260. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +14 -9
  261. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  262. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  263. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  264. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +156 -144
  265. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  266. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.cjs.js +1 -0
  267. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.cjs.js.map +1 -1
  268. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.es.js +1 -0
  269. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.es.js.map +1 -1
  270. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +22 -0
  271. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -0
  272. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +312 -0
  273. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -0
  274. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +2 -0
  275. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -0
  276. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +357 -0
  277. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -0
  278. package/dist/shared/src/containers/DetailsPanel/{DetailsPanelFloating → components/DetailsPanelFloating}/DetailsPanelFloating.styled.cjs.js +1 -1
  279. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js.map +1 -0
  280. package/dist/shared/src/containers/DetailsPanel/{DetailsPanelFloating → components/DetailsPanelFloating}/DetailsPanelFloating.styled.es.js +1 -1
  281. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.es.js.map +1 -0
  282. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +2 -0
  283. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -0
  284. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +468 -0
  285. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -0
  286. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js.map +1 -0
  287. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.es.js.map +1 -0
  288. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +2 -0
  289. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -0
  290. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +132 -0
  291. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -0
  292. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js.map +1 -0
  293. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.es.js.map +1 -0
  294. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.cjs.js +2 -0
  295. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.cjs.js.map +1 -0
  296. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.es.js +57 -0
  297. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.es.js.map +1 -0
  298. package/dist/shared/src/containers/DetailsPanel/{FeedFilters/FeedFilters.styled.cjs.js → components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js} +5 -5
  299. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js.map +1 -0
  300. package/dist/shared/src/containers/DetailsPanel/{FeedFilters/FeedFilters.styled.es.js → components/DetailsPanelTabs/DetailsPanelTabs.styled.es.js} +5 -5
  301. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.es.js.map +1 -0
  302. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.cjs.js +2 -0
  303. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.cjs.js.map +1 -0
  304. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.es.js +194 -0
  305. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.es.js.map +1 -0
  306. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +58 -0
  307. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -0
  308. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +327 -0
  309. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -0
  310. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +2 -0
  311. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -0
  312. package/dist/shared/src/containers/DetailsPanel/{DetailsPanelFloating/DetailsPanelFloating.es.js → containers/DetailsPanelSubtasks.es.js} +78 -113
  313. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -0
  314. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +2 -0
  315. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -0
  316. package/dist/shared/src/containers/DetailsPanel/{DetailsPanelFiles/DetailsPanelFiles.es.js → containers/FeedContextWrapper.es.js} +98 -111
  317. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -0
  318. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +2 -0
  319. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -0
  320. package/dist/shared/src/containers/DetailsPanel/{DetailsPanelSlideOut/DetailsPanelSlideOut.es.js → containers/FeedWrapper.es.js} +75 -41
  321. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -0
  322. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js.map +1 -1
  323. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js.map +1 -1
  324. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  325. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  326. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +4 -2
  327. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  328. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  329. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  330. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +15 -17
  331. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  332. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  333. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  334. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +14 -9
  335. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  336. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  337. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  338. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +14 -9
  339. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  340. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  341. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  342. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +14 -9
  343. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  344. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  345. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  346. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +4 -2
  347. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  348. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  349. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  350. package/dist/shared/src/containers/Feed/Feed.es.js +174 -137
  351. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  352. package/dist/shared/src/containers/Feed/Feed.styled.cjs.js +4 -4
  353. package/dist/shared/src/containers/Feed/Feed.styled.cjs.js.map +1 -1
  354. package/dist/shared/src/containers/Feed/Feed.styled.es.js +6 -6
  355. package/dist/shared/src/containers/Feed/Feed.styled.es.js.map +1 -1
  356. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
  357. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
  358. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +261 -6
  359. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
  360. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  361. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  362. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +14 -9
  363. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  364. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  365. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  366. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +14 -9
  367. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  368. package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js.map +1 -1
  369. package/dist/shared/src/containers/Feed/components/ActivityItem.es.js.map +1 -1
  370. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
  371. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
  372. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +42 -41
  373. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
  374. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +2 -2
  375. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  376. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +39 -34
  377. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  378. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -1
  379. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
  380. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +6 -5
  381. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
  382. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
  383. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
  384. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +3 -2
  385. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
  386. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
  387. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
  388. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +13 -12
  389. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
  390. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  391. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  392. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +22 -17
  393. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  394. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  395. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  396. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +46 -40
  397. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  398. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  399. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  400. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +3 -2
  401. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  402. package/dist/shared/src/containers/Feed/hooks/useTransformActivities.cjs.js +1 -1
  403. package/dist/shared/src/containers/Feed/hooks/useTransformActivities.cjs.js.map +1 -1
  404. package/dist/shared/src/containers/Feed/hooks/useTransformActivities.es.js +32 -33
  405. package/dist/shared/src/containers/Feed/hooks/useTransformActivities.es.js.map +1 -1
  406. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  407. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  408. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +37 -32
  409. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  410. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  411. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  412. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +246 -210
  413. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  414. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  415. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  416. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +14 -9
  417. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  418. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  419. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  420. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +14 -9
  421. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  422. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  423. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  424. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +14 -9
  425. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  426. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  427. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  428. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +6 -4
  429. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  430. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +1 -1
  431. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -1
  432. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +3 -2
  433. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -1
  434. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  435. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  436. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +15 -10
  437. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  438. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
  439. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  440. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +3 -2
  441. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  442. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  443. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  444. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +18 -13
  445. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  446. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  447. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  448. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +23 -17
  449. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  450. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  451. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  452. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +14 -9
  453. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  454. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  455. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  456. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +14 -9
  457. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  458. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  459. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  460. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +14 -9
  461. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  462. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  463. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  464. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +4 -2
  465. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  466. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  467. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  468. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +14 -9
  469. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  470. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  471. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  472. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +14 -9
  473. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  474. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  475. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  476. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +14 -9
  477. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  478. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  479. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  480. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +30 -25
  481. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  482. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  483. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  484. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +28 -23
  485. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  486. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  487. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  488. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +15 -10
  489. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  490. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js +1 -1
  491. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js.map +1 -1
  492. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js +29 -30
  493. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js.map +1 -1
  494. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  495. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  496. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +25 -20
  497. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  498. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +2 -2
  499. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  500. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +107 -87
  501. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  502. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  503. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  504. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +21 -16
  505. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  506. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  507. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  508. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +13 -8
  509. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  510. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +2 -0
  511. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -0
  512. package/dist/shared/src/containers/{DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js → ProjectTreeTable/widgets/SubtasksWidget.es.js} +108 -273
  513. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -0
  514. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  515. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  516. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +14 -9
  517. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  518. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  519. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  520. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +14 -9
  521. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  522. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js +1 -1
  523. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js.map +1 -1
  524. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js +3 -2
  525. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js.map +1 -1
  526. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
  527. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
  528. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +14 -9
  529. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
  530. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +1 -1
  531. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -1
  532. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +61 -48
  533. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
  534. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js +1 -1
  535. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js.map +1 -1
  536. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js +5 -4
  537. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js.map +1 -1
  538. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js +1 -1
  539. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js.map +1 -1
  540. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js +6 -5
  541. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -1
  542. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
  543. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
  544. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +4 -2
  545. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
  546. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +1 -1
  547. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -1
  548. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +3 -2
  549. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -1
  550. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  551. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  552. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +4 -2
  553. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  554. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
  555. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
  556. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +32 -27
  557. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
  558. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +1 -1
  559. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
  560. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +9 -8
  561. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
  562. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  563. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  564. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +6 -4
  565. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  566. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js +1 -1
  567. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js.map +1 -1
  568. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js +24 -23
  569. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js.map +1 -1
  570. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  571. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  572. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +5 -3
  573. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  574. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js +1 -1
  575. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -1
  576. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js +4 -2
  577. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -1
  578. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
  579. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
  580. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +3 -2
  581. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
  582. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
  583. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
  584. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +3 -2
  585. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
  586. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  587. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  588. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +3 -2
  589. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  590. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  591. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  592. package/dist/shared/src/context/AddonProjectContext.es.js +5 -4
  593. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  594. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  595. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  596. package/dist/shared/src/context/DetailsPanelContext.es.js +20 -18
  597. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  598. package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
  599. package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
  600. package/dist/shared/src/context/GlobalContext.es.js +5 -4
  601. package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
  602. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  603. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  604. package/dist/shared/src/context/PowerpackContext.es.js +14 -12
  605. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  606. package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
  607. package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
  608. package/dist/shared/src/context/ProjectContext.es.js +5 -4
  609. package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
  610. package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
  611. package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
  612. package/dist/shared/src/context/ProjectFoldersContext.es.js +6 -4
  613. package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
  614. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  615. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  616. package/dist/shared/src/context/RemoteModulesContext.es.js +5 -4
  617. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  618. package/dist/shared/src/context/SubtasksModulesContext.cjs.js +2 -0
  619. package/dist/shared/src/context/SubtasksModulesContext.cjs.js.map +1 -0
  620. package/dist/shared/src/context/SubtasksModulesContext.es.js +138 -0
  621. package/dist/shared/src/context/SubtasksModulesContext.es.js.map +1 -0
  622. package/dist/shared/src/context/UriContext.cjs.js +1 -1
  623. package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
  624. package/dist/shared/src/context/UriContext.es.js +6 -5
  625. package/dist/shared/src/context/UriContext.es.js.map +1 -1
  626. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  627. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  628. package/dist/shared/src/context/WebsocketContext.es.js +16 -11
  629. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  630. package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
  631. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  632. package/dist/shared/src/hooks/useActionTriggers.es.js +3 -2
  633. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  634. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  635. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  636. package/dist/shared/src/hooks/useEntityUpdate.es.js +4 -2
  637. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  638. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js +1 -1
  639. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
  640. package/dist/shared/src/hooks/useGetEntityGroups.es.js +3 -2
  641. package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
  642. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
  643. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
  644. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +4 -2
  645. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
  646. package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
  647. package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
  648. package/dist/shared/src/hooks/useHierarchyTable.es.js +14 -13
  649. package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
  650. package/dist/shared/src/hooks/useLocalStorage.cjs.js +1 -1
  651. package/dist/shared/src/hooks/useLocalStorage.cjs.js.map +1 -1
  652. package/dist/shared/src/hooks/useLocalStorage.es.js +31 -23
  653. package/dist/shared/src/hooks/useLocalStorage.es.js.map +1 -1
  654. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
  655. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  656. package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
  657. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  658. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  659. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  660. package/dist/shared/src/hooks/useUserProjectConfig.es.js +4 -2
  661. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  662. package/dist/types/EntityPickerDialog.d.ts +2 -0
  663. package/dist/types/api/generated/graphql.d.ts +141 -12
  664. package/dist/types/api/generated/graphqlLinks.d.ts +12 -0
  665. package/dist/types/api/generated/views.d.ts +14 -1
  666. package/dist/types/api/generated/ynputCloud.d.ts +4 -4
  667. package/dist/types/api/queries/activities/getActivities.d.ts +60 -60
  668. package/dist/types/api/queries/activities/updateActivities.d.ts +1 -1
  669. package/dist/types/api/queries/activities/util/activitiesHelpers.d.ts +2 -3
  670. package/dist/types/api/queries/activities/util/activityRealtimeHandler.d.ts +1 -1
  671. package/dist/types/api/queries/entities/index.d.ts +1 -0
  672. package/dist/types/api/queries/entities/patchDetailsPanel.d.ts +18 -0
  673. package/dist/types/api/queries/entityLists/getLists.d.ts +180 -180
  674. package/dist/types/api/queries/index.d.ts +1 -0
  675. package/dist/types/api/queries/overview/updateOverview.d.ts +0 -2
  676. package/dist/types/api/queries/tasks/index.d.ts +1 -0
  677. package/dist/types/api/queries/tasks/updateTasks.d.ts +174 -0
  678. package/dist/types/components/Chips/Chips.d.ts +3 -1
  679. package/dist/types/components/DateRangePicker/DateRangePicker.d.ts +50 -0
  680. package/dist/types/components/DateRangePicker/DateRangePicker.styled.d.ts +15 -0
  681. package/dist/types/components/DateRangePicker/index.d.ts +2 -0
  682. package/dist/types/components/DoneCheckbox/DoneCheckbox.d.ts +6 -0
  683. package/dist/types/components/DoneCheckbox/index.d.ts +1 -0
  684. package/dist/types/components/LinksManager/CellEditingDialog.d.ts +1 -0
  685. package/dist/types/components/RemotePage/ProjectPageRemote.d.ts +9 -0
  686. package/dist/types/components/RemotePage/index.d.ts +1 -0
  687. package/dist/types/components/SubtasksManager/SubtasksManagerWrapper.d.ts +20 -0
  688. package/dist/types/components/SubtasksManager/index.d.ts +1 -0
  689. package/dist/types/components/index.d.ts +3 -0
  690. package/dist/types/containers/DetailsPanel/{DetailsPanelFiles → components/DetailsPanelFiles}/DetailsPanelFiles.d.ts +1 -1
  691. package/dist/types/containers/DetailsPanel/{DetailsPanelHeader → components/DetailsPanelHeader}/DetailsPanelHeader.d.ts +3 -3
  692. package/dist/types/containers/DetailsPanel/{DetailsPanelSlideOut → components/DetailsPanelSlideOut}/DetailsPanelSlideOut.d.ts +1 -1
  693. package/dist/types/containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.d.ts +11 -0
  694. package/dist/types/containers/DetailsPanel/{FeedFilters/FeedFilters.styled.d.ts → components/DetailsPanelTabs/DetailsPanelTabs.styled.d.ts} +1 -1
  695. package/dist/types/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.d.ts +20 -0
  696. package/dist/types/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.d.ts +14 -0
  697. package/dist/types/containers/DetailsPanel/containers/DetailsPanelSubtasks.d.ts +6 -0
  698. package/dist/types/containers/DetailsPanel/{FeedContextWrapper.d.ts → containers/FeedContextWrapper.d.ts} +1 -1
  699. package/dist/types/containers/DetailsPanel/{FeedWrapper.d.ts → containers/FeedWrapper.d.ts} +1 -4
  700. package/dist/types/containers/DetailsPanel/helpers/getThumbnails.d.ts +1 -1
  701. package/dist/types/containers/DetailsPanel/index.d.ts +3 -3
  702. package/dist/types/containers/Feed/components/ActivityItem.d.ts +1 -1
  703. package/dist/types/containers/Feed/components/ActivityVersions/ActivityVersions.d.ts +1 -1
  704. package/dist/types/containers/Feed/context/FeedContext.d.ts +5 -3
  705. package/dist/types/containers/Feed/hooks/useGetFeedActivitiesData.d.ts +5 -5
  706. package/dist/types/containers/Feed/hooks/useTransformActivities.d.ts +1 -1
  707. package/dist/types/containers/ProjectTreeTable/buildTreeTableColumns.d.ts +1 -0
  708. package/dist/types/containers/ProjectTreeTable/hooks/useUpdateTableData.d.ts +0 -1
  709. package/dist/types/containers/ProjectTreeTable/types/table.d.ts +4 -1
  710. package/dist/types/containers/ProjectTreeTable/widgets/CellWidget.d.ts +1 -1
  711. package/dist/types/containers/ProjectTreeTable/widgets/SubtasksWidget.d.ts +14 -0
  712. package/dist/types/containers/ProjectTreeTable/widgets/index.d.ts +1 -0
  713. package/dist/types/containers/Slicer/context/SlicerContext.d.ts +9 -1
  714. package/dist/types/containers/index.d.ts +1 -0
  715. package/dist/types/context/DetailsPanelContext.d.ts +3 -3
  716. package/dist/types/context/SubtasksModulesContext.d.ts +13 -0
  717. package/dist/types/context/index.d.ts +1 -0
  718. package/dist/types/hooks/useLocalStorage.d.ts +2 -1
  719. package/package.json +6 -1
  720. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +0 -22
  721. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +0 -1
  722. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +0 -1
  723. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +0 -2
  724. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +0 -1
  725. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +0 -1
  726. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js.map +0 -1
  727. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.es.js.map +0 -1
  728. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +0 -2
  729. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +0 -1
  730. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +0 -1
  731. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js.map +0 -1
  732. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.es.js.map +0 -1
  733. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +0 -2
  734. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +0 -1
  735. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +0 -1
  736. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js.map +0 -1
  737. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.es.js.map +0 -1
  738. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js +0 -2
  739. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js.map +0 -1
  740. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js +0 -289
  741. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js.map +0 -1
  742. package/dist/shared/src/containers/DetailsPanel/FeedFilters/FeedFilters.cjs.js +0 -2
  743. package/dist/shared/src/containers/DetailsPanel/FeedFilters/FeedFilters.cjs.js.map +0 -1
  744. package/dist/shared/src/containers/DetailsPanel/FeedFilters/FeedFilters.es.js +0 -79
  745. package/dist/shared/src/containers/DetailsPanel/FeedFilters/FeedFilters.es.js.map +0 -1
  746. package/dist/shared/src/containers/DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js.map +0 -1
  747. package/dist/shared/src/containers/DetailsPanel/FeedFilters/FeedFilters.styled.es.js.map +0 -1
  748. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js +0 -2
  749. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js.map +0 -1
  750. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js +0 -68
  751. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js.map +0 -1
  752. package/dist/types/containers/DetailsPanel/FeedFilters/FeedFilters.d.ts +0 -11
  753. package/dist/types/containers/Feed/components/ActivityCheckbox/index.d.ts +0 -3
  754. /package/dist/shared/src/containers/DetailsPanel/{DetailsPanelFiles → components/DetailsPanelFiles}/index.cjs.js +0 -0
  755. /package/dist/shared/src/containers/DetailsPanel/{DetailsPanelFiles → components/DetailsPanelFiles}/index.cjs.js.map +0 -0
  756. /package/dist/shared/src/containers/DetailsPanel/{DetailsPanelFiles → components/DetailsPanelFiles}/index.es.js +0 -0
  757. /package/dist/shared/src/containers/DetailsPanel/{DetailsPanelFiles → components/DetailsPanelFiles}/index.es.js.map +0 -0
  758. /package/dist/shared/src/containers/DetailsPanel/{DetailsPanelHeader → components/DetailsPanelHeader}/DetailsPanelHeader.styled.cjs.js +0 -0
  759. /package/dist/shared/src/containers/DetailsPanel/{DetailsPanelHeader → components/DetailsPanelHeader}/DetailsPanelHeader.styled.es.js +0 -0
  760. /package/dist/shared/src/containers/DetailsPanel/{DetailsPanelSlideOut → components/DetailsPanelSlideOut}/DetailsPanelSlideOut.styled.cjs.js +0 -0
  761. /package/dist/shared/src/containers/DetailsPanel/{DetailsPanelSlideOut → components/DetailsPanelSlideOut}/DetailsPanelSlideOut.styled.es.js +0 -0
  762. /package/dist/types/containers/DetailsPanel/{DetailsPanelFiles → components/DetailsPanelFiles}/index.d.ts +0 -0
  763. /package/dist/types/containers/DetailsPanel/{DetailsPanelFloating → components/DetailsPanelFloating}/DetailsPanelFloating.d.ts +0 -0
  764. /package/dist/types/containers/DetailsPanel/{DetailsPanelFloating → components/DetailsPanelFloating}/DetailsPanelFloating.styled.d.ts +0 -0
  765. /package/dist/types/containers/DetailsPanel/{DetailsPanelFloating → components/DetailsPanelFloating}/index.d.ts +0 -0
  766. /package/dist/types/containers/DetailsPanel/{DetailsPanelHeader → components/DetailsPanelHeader}/DetailsPanelHeader.styled.d.ts +0 -0
  767. /package/dist/types/containers/DetailsPanel/{DetailsPanelHeader → components/DetailsPanelHeader}/index.d.ts +0 -0
  768. /package/dist/types/containers/DetailsPanel/{DetailsPanelSlideOut → components/DetailsPanelSlideOut}/DetailsPanelSlideOut.styled.d.ts +0 -0
  769. /package/dist/types/containers/DetailsPanel/{DetailsPanelSlideOut → components/DetailsPanelSlideOut}/index.d.ts +0 -0
@@ -1,2 +1,2 @@
1
- "use strict";const P=require("react-toastify"),N=require("../context/ProjectTableQueriesContext.cjs.js"),O=require("react"),Q=require("../context/ProjectTableContext.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");const R=require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");const $=j=>{const{pushHistory:w,removeHistoryEntries:A}=j||{},{projectName:E}=R.useProjectContext(),{getEntityById:g,getInheritedDependents:C,findInheritedValueFromAncestors:k,findNonInheritedValues:U}=Q.useProjectTableContext(),{updateEntities:F}=N.useProjectTableQueriesContext(),V=O.useCallback(async(p=[],D=!0)=>{if(!p.length||!E)return;let I=p.filter(t=>!t.isLink);const x=I.filter(t=>!(t.field==="folderType"&&t.type==="folder"&&g(t.id)?.hasVersions)),q=I.length-x.length;if(q>0&&P.toast.error(`Cannot change folder type for ${q} folder${q>1?"s":""} with published versions`),I=x,!I.length)return;if(w&&D){const t=I.map(({rowId:f,id:n,type:o,field:r,isAttrib:c,meta:u})=>{const s=g(n);if(!s)throw"Entity not found: "+n;const a=s?.entityId||s.id,h=c?s.attrib?.[r]??null:s[r]??null,m=s?.ownAttrib||[],l=c&&!m.includes(r);return{rowId:f,id:a,type:o,field:r,value:h,isAttrib:c,wasInherited:l,ownAttrib:m,folderId:s?.folderId||s?.parentId,meta:u}}),b=I.flatMap(({rowId:f,id:n,type:o,field:r,value:c,isAttrib:u,meta:s})=>{const a=g(n),h=a?.entityId||a?.id||n;return a?{rowId:f,id:h,type:o,field:r,value:c,isAttrib:u,ownAttrib:a?.ownAttrib||[],folderId:"folderId"in a?a.folderId:a?.parentId,meta:s}:[]});w(t,b)}const T=["task","folder","product","version"];let e=[];for(const t of I){let{id:b,type:f,field:n,value:o,isAttrib:r,meta:c}=t;const u=g(b),s=u?.entityId||u?.id||b;let a=f;if(!T.includes(a))continue;const h=r?{attrib:{[n]:o}}:{[n]:o};if(r){const l=[...u?.ownAttrib||[]];l.includes(n)||l.push(n),h.ownAttrib=l}const m=e.findIndex(l=>l.entityId===s&&l.entityType===a);if(m!==-1){const l=e[m];let v={...l.data,...h};l.data?.attrib&&h.attrib&&(v={...v,attrib:{...l.data.attrib,...h.attrib}}),e[m]={...l,data:v}}else e.push({rowId:t.rowId,entityType:a,entityId:s,type:"update",data:h,meta:c})}const y=e.filter(t=>!!t.entityId&&t.type==="update"&&t.data&&"attrib"in t.data).map(t=>({entityId:t.entityId,entityType:t.entityType,attrib:t.data&&"attrib"in t.data?t.data?.attrib:{}})),d=C(y).map(t=>({entityId:t.entityId,entityType:t.entityType,data:{attrib:t.attrib}}));try{e.length&&await F({operations:e,patchOperations:d})}catch(t){console.error("Error updating entities:",t),P.toast.error("Failed to update entities: "+t?.error),w&&D&&A&&A(1)}},[E,F,g,C,w,A]),M=O.useCallback(async(p,D=!0)=>{if(!p.length||!E)return;if(D&&w){const e=[];for(const i of p){const d=g(i.entityId);for(const t of i.attribs)d?.attrib&&t in d.attrib&&e.push({rowId:i.rowId,id:d?.entityId||d?.id||i.entityId,type:i.entityType,field:t,value:d.attrib[t],isAttrib:!0,wasInherited:!1,ownAttrib:d?.ownAttrib||[],folderId:d?.folderId,meta:d.meta})}const y=p.flatMap(i=>i.attribs.map(d=>({rowId:i.rowId,id:i.entityId,type:i.entityType,field:d,value:null,isAttrib:!0,wasInherited:!0,ownAttrib:i.ownAttrib,folderId:i.folderId,meta:i.meta})));e.length>0&&w(e,y)}const I=["task","folder"],x=[],q=[];for(const e of p){let y=e.entityType;if(!I.includes(y))continue;y=y;const i={};e.attribs.forEach(o=>{i[o]=null}),x.push({rowId:e.rowId,entityType:y,entityId:e.entityId,type:"update",data:{attrib:i},meta:e.meta});const t=(()=>{const o=e.folderId,r=[];let c=o,u=p.find(a=>a.entityId===c);for(;u;)r.push(u),c=u.folderId,u=p.find(a=>a.entityId===c);return r.length>0?r[r.length-1]:null})(),b=t?.attribs||[],f=e.attribs.filter(o=>b.includes(o)),n=e.attribs.filter(o=>!b.includes(o));n.length>0&&q.push({...e,attribs:n}),t&&f.length>0&&q.push({...e,attribs:f,folderId:t.folderId})}const T=[];for(const e of q){const y=e.entityType,i=[...e.ownAttrib||[]].filter(n=>!e.attribs.includes(n)),d=U(e.folderId,e.attribs),t={entityId:e.entityId,entityType:y,data:{attrib:d,ownAttrib:i}};T.push(t);const f=C([{entityId:e.entityId,entityType:y,attrib:d}]).map(n=>({entityId:n.entityId,entityType:n.entityType,data:{attrib:n.attrib}}));for(const n of f){const o=T.findIndex(r=>r.entityId===n.entityId);if(o!==-1){const r=T[o];let c={...r.data?.attrib||{},...n.data?.attrib||{}};T[o]={...r,data:{attrib:c}}}else T.push({entityId:n.entityId,entityType:n.entityType,data:n.data})}}try{await F({operations:x,patchOperations:T})}catch{P.toast.error("Failed to update entities"),D&&w&&A&&A(1)}},[E,F,C,k,w,A]);return{updateEntities:V,inheritFromParent:M}};module.exports=$;
1
+ "use strict";const P=require("react-toastify"),N=require("../context/ProjectTableQueriesContext.cjs.js"),O=require("react"),Q=require("../context/ProjectTableContext.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/SubtasksModulesContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");const R=require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");const $=j=>{const{pushHistory:w,removeHistoryEntries:A}=j||{},{projectName:E}=R.useProjectContext(),{getEntityById:g,getInheritedDependents:C,findInheritedValueFromAncestors:k,findNonInheritedValues:U}=Q.useProjectTableContext(),{updateEntities:F}=N.useProjectTableQueriesContext(),V=O.useCallback(async(p=[],D=!0)=>{if(!p.length||!E)return;let b=p.filter(t=>!t.isLink);const x=b.filter(t=>!(t.field==="folderType"&&t.type==="folder"&&g(t.id)?.hasVersions)),q=b.length-x.length;if(q>0&&P.toast.error(`Cannot change folder type for ${q} folder${q>1?"s":""} with published versions`),b=x,!b.length)return;if(w&&D){const t=b.map(({rowId:f,id:n,type:a,field:r,isAttrib:c,meta:u})=>{const s=g(n);if(!s)throw"Entity not found: "+n;const o=s?.entityId||s.id,h=c?s.attrib?.[r]??null:s[r]??null,m=s?.ownAttrib||[],l=c&&!m.includes(r);return{rowId:f,id:o,type:a,field:r,value:h,isAttrib:c,wasInherited:l,ownAttrib:m,folderId:s?.folderId||s?.parentId,meta:u}}),I=b.flatMap(({rowId:f,id:n,type:a,field:r,value:c,isAttrib:u,meta:s})=>{const o=g(n),h=o?.entityId||o?.id||n;return o?{rowId:f,id:h,type:a,field:r,value:c,isAttrib:u,ownAttrib:o?.ownAttrib||[],folderId:"folderId"in o?o.folderId:o?.parentId,meta:s}:[]});w(t,I)}const T=["task","folder","product","version"];let e=[];for(const t of b){let{id:I,type:f,field:n,value:a,isAttrib:r,meta:c}=t;const u=g(I),s=u?.entityId||u?.id||I;let o=f;if(!T.includes(o))continue;const h=r?{attrib:{[n]:a}}:{[n]:a};if(r){const l=[...u?.ownAttrib||[]];l.includes(n)||l.push(n),h.ownAttrib=l}const m=e.findIndex(l=>l.entityId===s&&l.entityType===o);if(m!==-1){const l=e[m];let v={...l.data,...h};l.data?.attrib&&h.attrib&&(v={...v,attrib:{...l.data.attrib,...h.attrib}}),e[m]={...l,data:v}}else e.push({entityType:o,entityId:s,type:"update",data:h,meta:c})}const y=e.filter(t=>!!t.entityId&&t.type==="update"&&t.data&&"attrib"in t.data).map(t=>({entityId:t.entityId,entityType:t.entityType,attrib:t.data&&"attrib"in t.data?t.data?.attrib:{}})),d=C(y).map(t=>({entityId:t.entityId,entityType:t.entityType,data:{attrib:t.attrib}}));try{e.length&&await F({operations:e,patchOperations:d})}catch(t){console.error("Error updating entities:",t),P.toast.error("Failed to update entities: "+t?.error),w&&D&&A&&A(1)}},[E,F,g,C,w,A]),M=O.useCallback(async(p,D=!0)=>{if(!p.length||!E)return;if(D&&w){const e=[];for(const i of p){const d=g(i.entityId);for(const t of i.attribs)d?.attrib&&t in d.attrib&&e.push({rowId:i.rowId,id:d?.entityId||d?.id||i.entityId,type:i.entityType,field:t,value:d.attrib[t],isAttrib:!0,wasInherited:!1,ownAttrib:d?.ownAttrib||[],folderId:d?.folderId,meta:d.meta})}const y=p.flatMap(i=>i.attribs.map(d=>({rowId:i.rowId,id:i.entityId,type:i.entityType,field:d,value:null,isAttrib:!0,wasInherited:!0,ownAttrib:i.ownAttrib,folderId:i.folderId,meta:i.meta})));e.length>0&&w(e,y)}const b=["task","folder"],x=[],q=[];for(const e of p){let y=e.entityType;if(!b.includes(y))continue;y=y;const i={};e.attribs.forEach(a=>{i[a]=null}),x.push({entityType:y,entityId:e.entityId,type:"update",data:{attrib:i},meta:e.meta});const t=(()=>{const a=e.folderId,r=[];let c=a,u=p.find(o=>o.entityId===c);for(;u;)r.push(u),c=u.folderId,u=p.find(o=>o.entityId===c);return r.length>0?r[r.length-1]:null})(),I=t?.attribs||[],f=e.attribs.filter(a=>I.includes(a)),n=e.attribs.filter(a=>!I.includes(a));n.length>0&&q.push({...e,attribs:n}),t&&f.length>0&&q.push({...e,attribs:f,folderId:t.folderId})}const T=[];for(const e of q){const y=e.entityType,i=[...e.ownAttrib||[]].filter(n=>!e.attribs.includes(n)),d=U(e.folderId,e.attribs),t={entityId:e.entityId,entityType:y,data:{attrib:d,ownAttrib:i}};T.push(t);const f=C([{entityId:e.entityId,entityType:y,attrib:d}]).map(n=>({entityId:n.entityId,entityType:n.entityType,data:{attrib:n.attrib}}));for(const n of f){const a=T.findIndex(r=>r.entityId===n.entityId);if(a!==-1){const r=T[a];let c={...r.data?.attrib||{},...n.data?.attrib||{}};T[a]={...r,data:{attrib:c}}}else T.push({entityId:n.entityId,entityType:n.entityType,data:n.data})}}try{await F({operations:x,patchOperations:T})}catch{P.toast.error("Failed to update entities"),D&&w&&A&&A(1)}},[E,F,C,k,w,A]);return{updateEntities:V,inheritFromParent:M}};module.exports=$;
2
2
  //# sourceMappingURL=useUpdateTableData.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useUpdateTableData.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useUpdateTableData.ts"],"sourcesContent":["import { CellId } from '../utils/cellUtils'\nimport { CellValue } from '../widgets/CellWidget'\nimport { toast } from 'react-toastify'\nimport { useProjectTableQueriesContext } from '../context/ProjectTableQueriesContext'\nimport { useCallback } from 'react'\nimport { InheritedDependent } from './useFolderRelationships'\nimport { useProjectTableContext } from '../context/ProjectTableContext'\nimport { OperationModel } from '../types/operations'\nimport { PatchOperation } from '../types'\nimport { HistoryEntityUpdate, UseHistoryReturn } from './useHistory'\nimport { useProjectContext } from '@shared/context'\n\nexport type EntityUpdate = {\n rowId: string\n id: string\n type: string\n field: string\n value: CellValue | CellValue[] | null\n isAttrib?: boolean\n isLink?: boolean // link updates use different endpoint\n meta?: Record<string, any>\n}\nexport type UpdateTableEntities = (entities: EntityUpdate[], pushHistory?: boolean) => Promise<void>\n\nexport type InheritFromParentEntity = {\n rowId: string\n entityId: string\n entityType: string\n attribs: string[]\n ownAttrib: string[]\n folderId?: string // the parent folder ID\n meta?: Record<string, any>\n}\nexport type InheritFromParent = (\n entities: InheritFromParentEntity[],\n pushHistory?: boolean,\n) => Promise<void>\n\nexport type UpdateTableEntity = (\n cellId: CellId,\n value: string,\n { includeSelection }: { includeSelection: boolean },\n) => Promise<void>\n\nexport type OperationWithRowId = OperationModel & { rowId: string; meta?: Record<string, any> }\n\ninterface UseUpdateTableDataProps {\n pushHistory?: UseHistoryReturn['pushHistory']\n removeHistoryEntries?: UseHistoryReturn['removeHistoryEntries']\n}\n\nconst useUpdateTableData = (props?: UseUpdateTableDataProps) => {\n const { pushHistory, removeHistoryEntries } = props || {}\n const { projectName } = useProjectContext()\n const {\n getEntityById,\n getInheritedDependents,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n } = useProjectTableContext()\n const { updateEntities } = useProjectTableQueriesContext()\n\n const handleUpdateEntities = useCallback<UpdateTableEntities>(\n async (entities = [], pushToHistory = true) => {\n if (!entities.length || !projectName) {\n return\n }\n\n // Filter out link updates - they should be handled by useUpdateTableLinks\n let entityUpdates = entities.filter((e) => !e.isLink)\n\n // Filter out folder type updates for folders with versions\n const filteredUpdates = entityUpdates.filter((entity) => {\n if (entity.field === 'folderType' && entity.type === 'folder') {\n const entityData = getEntityById(entity.id)\n if (entityData?.hasVersions) {\n return false\n }\n }\n return true\n })\n\n // Show warning if any updates were filtered out\n const filteredCount = entityUpdates.length - filteredUpdates.length\n if (filteredCount > 0) {\n toast.error(\n `Cannot change folder type for ${filteredCount} folder${\n filteredCount > 1 ? 's' : ''\n } with published versions`,\n )\n }\n\n entityUpdates = filteredUpdates\n\n // If no entity updates to process, return early\n if (!entityUpdates.length) {\n return\n }\n\n // Record history of previous values before applying update\n if (pushHistory && pushToHistory) {\n const inverseEntities: HistoryEntityUpdate[] = entityUpdates.map(\n ({ rowId, id, type, field, isAttrib, meta }) => {\n const entityData = getEntityById(id) as Record<string, any>\n if (!entityData) {\n throw 'Entity not found: ' + id\n }\n const entityId = entityData?.entityId || entityData.id\n const oldValue = isAttrib\n ? (entityData.attrib as Record<string, any>)?.[field] ?? null\n : entityData[field] ?? null\n\n // Check if the field was inherited (not in ownAttrib)\n const ownAttrib = entityData?.ownAttrib || []\n const wasInherited = isAttrib && !ownAttrib.includes(field)\n\n return {\n rowId: rowId,\n id: entityId,\n type,\n field,\n value: oldValue,\n isAttrib,\n wasInherited, // Track inheritance status for undo\n ownAttrib: ownAttrib,\n folderId: entityData?.folderId || entityData?.parentId,\n meta,\n }\n },\n )\n const historyEntities: HistoryEntityUpdate[] = entityUpdates.flatMap(\n ({ rowId, id, type, field, value, isAttrib, meta }) => {\n const entityData = getEntityById(id)\n const entityId = entityData?.entityId || entityData?.id || id\n\n if (!entityData) return []\n\n return {\n rowId: rowId,\n id: entityId,\n type,\n field,\n value,\n isAttrib,\n ownAttrib: entityData?.ownAttrib || [],\n folderId: 'folderId' in entityData ? entityData.folderId : entityData?.parentId,\n meta,\n }\n },\n )\n pushHistory(inverseEntities, historyEntities)\n }\n\n const supportedEntityTypes: OperationModel['entityType'][] = [\n 'task',\n 'folder',\n 'product',\n 'version',\n ]\n // Group operations by entity type for bulk processing\n let operations: OperationWithRowId[] = []\n for (const entity of entityUpdates) {\n let { id, type, field, value, isAttrib, meta } = entity\n const entityData = getEntityById(id)\n const entityId = entityData?.entityId || entityData?.id || id\n // Skip unsupported entity types\n let entityType = type as OperationModel['entityType']\n if (!supportedEntityTypes.includes(entityType)) {\n continue\n }\n\n // create data object for change, taking into account if it's an attribute change\n const data: Record<string, any> = isAttrib\n ? { attrib: { [field]: value } }\n : { [field]: value }\n\n // if the entity is an attribute get the entity data\n // then update ownAttrib to include the new value\n if (isAttrib) {\n const ownAttrib = [...(entityData?.ownAttrib || [])]\n // add the new value to the ownAttrib if it doesn't already exist\n if (!ownAttrib.includes(field)) {\n ownAttrib.push(field)\n }\n // update the data object with the new ownAttrib\n data.ownAttrib = ownAttrib\n }\n\n const existingOperationIndex = operations.findIndex(\n (op) => op.entityId === entityId && op.entityType === entityType,\n )\n\n if (existingOperationIndex !== -1) {\n // Merge data with existing operation\n const existingOperation = operations[existingOperationIndex]\n let newData = { ...existingOperation.data, ...data }\n\n // @ts-ignore\n if (existingOperation.data?.attrib && data.attrib) {\n // @ts-ignore\n newData = { ...newData, attrib: { ...existingOperation.data.attrib, ...data.attrib } }\n }\n\n operations[existingOperationIndex] = {\n ...existingOperation,\n data: newData,\n }\n } else {\n // Add new operation\n operations.push({\n rowId: entity.rowId,\n entityType: entityType,\n entityId: entityId,\n type: 'update',\n data: data,\n meta: meta,\n })\n }\n }\n\n const folderAttribEntities: InheritedDependent[] = operations\n .filter((op) => !!op.entityId && op.type === 'update' && op.data && 'attrib' in op.data)\n .map((op) => ({\n entityId: op.entityId as string,\n entityType: op.entityType as 'folder' | 'task',\n attrib:\n op.data && 'attrib' in op.data ? (op.data?.attrib as InheritedDependent['attrib']) : {},\n }))\n\n const inheritedDependents = getInheritedDependents(folderAttribEntities)\n\n // convert to operations\n const inheritedDependentsOperations: PatchOperation[] = inheritedDependents.map((op) => ({\n entityId: op.entityId,\n entityType: op.entityType,\n data: {\n attrib: op.attrib,\n },\n }))\n\n // now make api call to update all entities and links\n try {\n if (operations.length) {\n await updateEntities({\n operations,\n patchOperations: inheritedDependentsOperations,\n })\n }\n } catch (error: any) {\n console.error('Error updating entities:', error)\n toast.error('Failed to update entities: ' + error?.error)\n // Remove the failed update from history stack\n if (pushHistory && pushToHistory && removeHistoryEntries) {\n removeHistoryEntries(1)\n }\n }\n },\n [\n projectName,\n updateEntities, //\n getEntityById,\n getInheritedDependents,\n pushHistory,\n removeHistoryEntries,\n ],\n )\n\n // set the attrib fields to be inherited from the parent\n // (remove the field from the ownAttrib array)\n // invalidate the cache for the folder/task so that it can be re-fetched with inherited values\n const inheritFromParent = useCallback<InheritFromParent>(\n async (entities, pushToHistory = true) => {\n if (!entities.length || !projectName) {\n return\n }\n\n // Record history for the inheritance operation\n if (pushToHistory && pushHistory) {\n // Create undo entities (restore explicit values)\n const undoEntities: HistoryEntityUpdate[] = []\n\n // For each entity and attribute being inherited, record current values\n for (const entity of entities) {\n const entityData = getEntityById(entity.entityId) as Record<string, any>\n\n // For each attribute that will be inherited, record its current value\n for (const attrib of entity.attribs) {\n if (entityData?.attrib && attrib in entityData.attrib) {\n undoEntities.push({\n rowId: entity.rowId,\n id: entityData?.entityId || entityData?.id || entity.entityId,\n type: entity.entityType,\n field: attrib,\n value: (entityData.attrib as Record<string, any>)[attrib],\n isAttrib: true,\n wasInherited: false, // Mark as not inherited\n ownAttrib: entityData?.ownAttrib || [],\n folderId: entityData?.folderId,\n meta: entityData.meta,\n })\n }\n }\n }\n\n // Create redo entities (to re-inherit)\n const redoEntities: HistoryEntityUpdate[] = entities.flatMap((entity) =>\n entity.attribs.map((attrib) => ({\n rowId: entity.rowId,\n id: entity.entityId,\n type: entity.entityType,\n field: attrib,\n value: null,\n isAttrib: true,\n wasInherited: true, // Mark as inherited\n ownAttrib: entity.ownAttrib,\n folderId: entity.folderId,\n meta: entity.meta,\n })),\n )\n\n // Push to history if we have changes to record\n if (undoEntities.length > 0) {\n pushHistory(undoEntities, redoEntities)\n }\n }\n\n const supportedEntityTypes: OperationModel['entityType'][] = ['task', 'folder']\n // Group operations by entity type for bulk processing\n const operations: OperationWithRowId[] = [] // operations sent to the server\n const entitiesToPatch: InheritFromParentEntity[] = []\n for (const entity of entities) {\n // Skip unsupported entity types\n let entityType = entity.entityType as OperationModel['entityType']\n if (!supportedEntityTypes.includes(entityType)) {\n continue\n }\n entityType = entityType as 'task' | 'folder'\n\n // Create data object with null values for each attrib to inherit\n const attribData: Record<string, null> = {}\n entity.attribs.forEach((attrib) => {\n attribData[attrib] = null\n })\n\n // Add new operation this is what's sent to the server and is actually updated in the DB\n operations.push({\n rowId: entity.rowId,\n entityType: entityType,\n entityId: entity.entityId,\n type: 'update',\n data: {\n attrib: attribData,\n },\n meta: entity.meta,\n })\n\n // check if this entity has a folderId that is in entities\n // if so we check their intersection attrib names\n const findTopFolder = () => {\n // For each entity, we need to find the top-most folder in the hierarchy\n const folderId = entity.folderId\n\n // Find all ancestor folders that are in our entities list\n const ancestorChain: InheritFromParentEntity[] = []\n let currentFolderId = folderId\n let currentFolder = entities.find((e) => e.entityId === currentFolderId)\n\n // Climb up the folder hierarchy to build the chain of ancestors\n while (currentFolder) {\n ancestorChain.push(currentFolder)\n currentFolderId = currentFolder.folderId\n currentFolder = entities.find((e) => e.entityId === currentFolderId)\n }\n\n // The top folder is the last one in our ancestor chain (if any)\n const topFolder =\n ancestorChain.length > 0 ? ancestorChain[ancestorChain.length - 1] : null\n\n return topFolder\n }\n\n const topFolder = findTopFolder()\n const folderAttribs = topFolder?.attribs || []\n const entityAttribsIntersection = entity.attribs.filter((attrib) =>\n folderAttribs.includes(attrib),\n )\n const entityAttribsRemoved = entity.attribs.filter(\n (attrib) => !folderAttribs.includes(attrib),\n )\n\n // only add to patch operations if there are attribs left\n if (entityAttribsRemoved.length > 0)\n entitiesToPatch.push({\n ...entity,\n attribs: entityAttribsRemoved,\n })\n\n if (topFolder && entityAttribsIntersection.length > 0) {\n entitiesToPatch.push({\n ...entity,\n attribs: entityAttribsIntersection,\n folderId: topFolder.folderId,\n })\n }\n }\n\n const patchOperations: PatchOperation[] = [] // operations only for patching the cache\n for (const entity of entitiesToPatch) {\n const entityType = entity.entityType as 'task' | 'folder'\n // we also need to update ownAttrib to remove the inherited attribs\n const ownAttrib = [...(entity.ownAttrib || [])].filter(\n (attrib) => !entity.attribs.includes(attrib),\n )\n\n // now we must calculate all the entities that need to be updated in the cache\n // first we need to find the the ancestor folder to inherit from\n const ancestorAttrib = findNonInheritedValues(entity.folderId, entity.attribs)\n\n const entityPatch = {\n entityId: entity.entityId,\n entityType: entityType,\n data: {\n attrib: ancestorAttrib,\n ownAttrib: ownAttrib,\n },\n }\n\n // create new patch operation for the entity\n patchOperations.push(entityPatch)\n\n // now find any dependent that also need updating\n const inheritedDependents = getInheritedDependents([\n { entityId: entity.entityId, entityType: entityType, attrib: ancestorAttrib },\n ])\n\n // convert to operations\n const inheritedDependentsOperations: PatchOperation[] = inheritedDependents.map((op) => ({\n entityId: op.entityId,\n entityType: op.entityType,\n data: {\n attrib: op.attrib,\n },\n }))\n\n // try to add to patch operations\n // if it already exists then merge the attribs\n for (const inheritedDependent of inheritedDependentsOperations) {\n const existingOperationIndex = patchOperations.findIndex(\n (op) => op.entityId === inheritedDependent.entityId,\n )\n\n if (existingOperationIndex !== -1) {\n // Merge attribs with existing operation\n const existingOperation = patchOperations[existingOperationIndex]\n let newAttrib = {\n // @ts-ignore\n ...(existingOperation.data?.attrib || {}),\n // @ts-ignore\n ...(inheritedDependent.data?.attrib || {}),\n }\n\n patchOperations[existingOperationIndex] = {\n ...existingOperation,\n data: { attrib: newAttrib },\n }\n } else {\n // Add new operation\n patchOperations.push({\n entityId: inheritedDependent.entityId,\n entityType: inheritedDependent.entityType,\n data: inheritedDependent.data,\n })\n }\n }\n }\n\n // now make api call to update all entities\n try {\n await updateEntities({\n operations,\n patchOperations,\n })\n } catch (error) {\n toast.error('Failed to update entities')\n // Remove the failed update from history stack\n if (pushToHistory && pushHistory && removeHistoryEntries) {\n removeHistoryEntries(1)\n }\n }\n },\n [\n projectName,\n updateEntities,\n getInheritedDependents,\n findInheritedValueFromAncestors,\n pushHistory,\n removeHistoryEntries,\n ],\n )\n\n return { updateEntities: handleUpdateEntities, inheritFromParent }\n}\n\nexport default useUpdateTableData\n"],"names":["useUpdateTableData","props","pushHistory","removeHistoryEntries","projectName","useProjectContext","getEntityById","getInheritedDependents","findInheritedValueFromAncestors","findNonInheritedValues","useProjectTableContext","updateEntities","useProjectTableQueriesContext","handleUpdateEntities","useCallback","entities","pushToHistory","entityUpdates","e","filteredUpdates","entity","filteredCount","toast","inverseEntities","rowId","id","type","field","isAttrib","meta","entityData","entityId","oldValue","ownAttrib","wasInherited","historyEntities","value","supportedEntityTypes","operations","entityType","data","existingOperationIndex","op","existingOperation","newData","folderAttribEntities","inheritedDependentsOperations","error","inheritFromParent","undoEntities","attrib","redoEntities","entitiesToPatch","attribData","topFolder","folderId","ancestorChain","currentFolderId","currentFolder","folderAttribs","entityAttribsIntersection","entityAttribsRemoved","patchOperations","ancestorAttrib","entityPatch","inheritedDependent","newAttrib"],"mappings":"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"}
1
+ {"version":3,"file":"useUpdateTableData.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useUpdateTableData.ts"],"sourcesContent":["import { CellId } from '../utils/cellUtils'\nimport { CellValue } from '../widgets/CellWidget'\nimport { toast } from 'react-toastify'\nimport { useProjectTableQueriesContext } from '../context/ProjectTableQueriesContext'\nimport { useCallback } from 'react'\nimport { InheritedDependent } from './useFolderRelationships'\nimport { useProjectTableContext } from '../context/ProjectTableContext'\nimport { OperationModel } from '../types/operations'\nimport { PatchOperation } from '../types'\nimport { HistoryEntityUpdate, UseHistoryReturn } from './useHistory'\nimport { useProjectContext } from '@shared/context'\n\nexport type EntityUpdate = {\n rowId: string\n id: string\n type: string\n field: string\n value: CellValue | CellValue[] | null\n isAttrib?: boolean\n isLink?: boolean // link updates use different endpoint\n meta?: Record<string, any>\n}\nexport type UpdateTableEntities = (entities: EntityUpdate[], pushHistory?: boolean) => Promise<void>\n\nexport type InheritFromParentEntity = {\n rowId: string\n entityId: string\n entityType: string\n attribs: string[]\n ownAttrib: string[]\n folderId?: string // the parent folder ID\n meta?: Record<string, any>\n}\nexport type InheritFromParent = (\n entities: InheritFromParentEntity[],\n pushHistory?: boolean,\n) => Promise<void>\n\nexport type UpdateTableEntity = (\n cellId: CellId,\n value: string,\n { includeSelection }: { includeSelection: boolean },\n) => Promise<void>\n\nexport type OperationWithRowId = OperationModel & { meta?: Record<string, any> }\n\ninterface UseUpdateTableDataProps {\n pushHistory?: UseHistoryReturn['pushHistory']\n removeHistoryEntries?: UseHistoryReturn['removeHistoryEntries']\n}\n\nconst useUpdateTableData = (props?: UseUpdateTableDataProps) => {\n const { pushHistory, removeHistoryEntries } = props || {}\n const { projectName } = useProjectContext()\n const {\n getEntityById,\n getInheritedDependents,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n } = useProjectTableContext()\n const { updateEntities } = useProjectTableQueriesContext()\n\n const handleUpdateEntities = useCallback<UpdateTableEntities>(\n async (entities = [], pushToHistory = true) => {\n if (!entities.length || !projectName) {\n return\n }\n\n // Filter out link updates - they should be handled by useUpdateTableLinks\n let entityUpdates = entities.filter((e) => !e.isLink)\n\n // Filter out folder type updates for folders with versions\n const filteredUpdates = entityUpdates.filter((entity) => {\n if (entity.field === 'folderType' && entity.type === 'folder') {\n const entityData = getEntityById(entity.id)\n if (entityData?.hasVersions) {\n return false\n }\n }\n return true\n })\n\n // Show warning if any updates were filtered out\n const filteredCount = entityUpdates.length - filteredUpdates.length\n if (filteredCount > 0) {\n toast.error(\n `Cannot change folder type for ${filteredCount} folder${\n filteredCount > 1 ? 's' : ''\n } with published versions`,\n )\n }\n\n entityUpdates = filteredUpdates\n\n // If no entity updates to process, return early\n if (!entityUpdates.length) {\n return\n }\n\n // Record history of previous values before applying update\n if (pushHistory && pushToHistory) {\n const inverseEntities: HistoryEntityUpdate[] = entityUpdates.map(\n ({ rowId, id, type, field, isAttrib, meta }) => {\n const entityData = getEntityById(id) as Record<string, any>\n if (!entityData) {\n throw 'Entity not found: ' + id\n }\n const entityId = entityData?.entityId || entityData.id\n const oldValue = isAttrib\n ? (entityData.attrib as Record<string, any>)?.[field] ?? null\n : entityData[field] ?? null\n\n // Check if the field was inherited (not in ownAttrib)\n const ownAttrib = entityData?.ownAttrib || []\n const wasInherited = isAttrib && !ownAttrib.includes(field)\n\n return {\n rowId: rowId,\n id: entityId,\n type,\n field,\n value: oldValue,\n isAttrib,\n wasInherited, // Track inheritance status for undo\n ownAttrib: ownAttrib,\n folderId: entityData?.folderId || entityData?.parentId,\n meta,\n }\n },\n )\n const historyEntities: HistoryEntityUpdate[] = entityUpdates.flatMap(\n ({ rowId, id, type, field, value, isAttrib, meta }) => {\n const entityData = getEntityById(id)\n const entityId = entityData?.entityId || entityData?.id || id\n\n if (!entityData) return []\n\n return {\n rowId: rowId,\n id: entityId,\n type,\n field,\n value,\n isAttrib,\n ownAttrib: entityData?.ownAttrib || [],\n folderId: 'folderId' in entityData ? entityData.folderId : entityData?.parentId,\n meta,\n }\n },\n )\n pushHistory(inverseEntities, historyEntities)\n }\n\n const supportedEntityTypes: OperationModel['entityType'][] = [\n 'task',\n 'folder',\n 'product',\n 'version',\n ]\n // Group operations by entity type for bulk processing\n let operations: OperationWithRowId[] = []\n for (const entity of entityUpdates) {\n let { id, type, field, value, isAttrib, meta } = entity\n const entityData = getEntityById(id)\n const entityId = entityData?.entityId || entityData?.id || id\n // Skip unsupported entity types\n let entityType = type as OperationModel['entityType']\n if (!supportedEntityTypes.includes(entityType)) {\n continue\n }\n\n // create data object for change, taking into account if it's an attribute change\n const data: Record<string, any> = isAttrib\n ? { attrib: { [field]: value } }\n : { [field]: value }\n\n // if the entity is an attribute get the entity data\n // then update ownAttrib to include the new value\n if (isAttrib) {\n const ownAttrib = [...(entityData?.ownAttrib || [])]\n // add the new value to the ownAttrib if it doesn't already exist\n if (!ownAttrib.includes(field)) {\n ownAttrib.push(field)\n }\n // update the data object with the new ownAttrib\n data.ownAttrib = ownAttrib\n }\n\n const existingOperationIndex = operations.findIndex(\n (op) => op.entityId === entityId && op.entityType === entityType,\n )\n\n if (existingOperationIndex !== -1) {\n // Merge data with existing operation\n const existingOperation = operations[existingOperationIndex]\n let newData = { ...existingOperation.data, ...data }\n\n // @ts-ignore\n if (existingOperation.data?.attrib && data.attrib) {\n // @ts-ignore\n newData = { ...newData, attrib: { ...existingOperation.data.attrib, ...data.attrib } }\n }\n\n operations[existingOperationIndex] = {\n ...existingOperation,\n data: newData,\n }\n } else {\n // Add new operation\n operations.push({\n entityType: entityType,\n entityId: entityId,\n type: 'update',\n data: data,\n meta: meta,\n })\n }\n }\n\n const folderAttribEntities: InheritedDependent[] = operations\n .filter((op) => !!op.entityId && op.type === 'update' && op.data && 'attrib' in op.data)\n .map((op) => ({\n entityId: op.entityId as string,\n entityType: op.entityType as 'folder' | 'task',\n attrib:\n op.data && 'attrib' in op.data ? (op.data?.attrib as InheritedDependent['attrib']) : {},\n }))\n\n const inheritedDependents = getInheritedDependents(folderAttribEntities)\n\n // convert to operations\n const inheritedDependentsOperations: PatchOperation[] = inheritedDependents.map((op) => ({\n entityId: op.entityId,\n entityType: op.entityType,\n data: {\n attrib: op.attrib,\n },\n }))\n\n // now make api call to update all entities and links\n try {\n if (operations.length) {\n await updateEntities({\n operations,\n patchOperations: inheritedDependentsOperations,\n })\n }\n } catch (error: any) {\n console.error('Error updating entities:', error)\n toast.error('Failed to update entities: ' + error?.error)\n // Remove the failed update from history stack\n if (pushHistory && pushToHistory && removeHistoryEntries) {\n removeHistoryEntries(1)\n }\n }\n },\n [\n projectName,\n updateEntities, //\n getEntityById,\n getInheritedDependents,\n pushHistory,\n removeHistoryEntries,\n ],\n )\n\n // set the attrib fields to be inherited from the parent\n // (remove the field from the ownAttrib array)\n // invalidate the cache for the folder/task so that it can be re-fetched with inherited values\n const inheritFromParent = useCallback<InheritFromParent>(\n async (entities, pushToHistory = true) => {\n if (!entities.length || !projectName) {\n return\n }\n\n // Record history for the inheritance operation\n if (pushToHistory && pushHistory) {\n // Create undo entities (restore explicit values)\n const undoEntities: HistoryEntityUpdate[] = []\n\n // For each entity and attribute being inherited, record current values\n for (const entity of entities) {\n const entityData = getEntityById(entity.entityId) as Record<string, any>\n\n // For each attribute that will be inherited, record its current value\n for (const attrib of entity.attribs) {\n if (entityData?.attrib && attrib in entityData.attrib) {\n undoEntities.push({\n rowId: entity.rowId,\n id: entityData?.entityId || entityData?.id || entity.entityId,\n type: entity.entityType,\n field: attrib,\n value: (entityData.attrib as Record<string, any>)[attrib],\n isAttrib: true,\n wasInherited: false, // Mark as not inherited\n ownAttrib: entityData?.ownAttrib || [],\n folderId: entityData?.folderId,\n meta: entityData.meta,\n })\n }\n }\n }\n\n // Create redo entities (to re-inherit)\n const redoEntities: HistoryEntityUpdate[] = entities.flatMap((entity) =>\n entity.attribs.map((attrib) => ({\n rowId: entity.rowId,\n id: entity.entityId,\n type: entity.entityType,\n field: attrib,\n value: null,\n isAttrib: true,\n wasInherited: true, // Mark as inherited\n ownAttrib: entity.ownAttrib,\n folderId: entity.folderId,\n meta: entity.meta,\n })),\n )\n\n // Push to history if we have changes to record\n if (undoEntities.length > 0) {\n pushHistory(undoEntities, redoEntities)\n }\n }\n\n const supportedEntityTypes: OperationModel['entityType'][] = ['task', 'folder']\n // Group operations by entity type for bulk processing\n const operations: OperationWithRowId[] = [] // operations sent to the server\n const entitiesToPatch: InheritFromParentEntity[] = []\n for (const entity of entities) {\n // Skip unsupported entity types\n let entityType = entity.entityType as OperationModel['entityType']\n if (!supportedEntityTypes.includes(entityType)) {\n continue\n }\n entityType = entityType as 'task' | 'folder'\n\n // Create data object with null values for each attrib to inherit\n const attribData: Record<string, null> = {}\n entity.attribs.forEach((attrib) => {\n attribData[attrib] = null\n })\n\n // Add new operation this is what's sent to the server and is actually updated in the DB\n operations.push({\n entityType: entityType,\n entityId: entity.entityId,\n type: 'update',\n data: {\n attrib: attribData,\n },\n meta: entity.meta,\n })\n\n // check if this entity has a folderId that is in entities\n // if so we check their intersection attrib names\n const findTopFolder = () => {\n // For each entity, we need to find the top-most folder in the hierarchy\n const folderId = entity.folderId\n\n // Find all ancestor folders that are in our entities list\n const ancestorChain: InheritFromParentEntity[] = []\n let currentFolderId = folderId\n let currentFolder = entities.find((e) => e.entityId === currentFolderId)\n\n // Climb up the folder hierarchy to build the chain of ancestors\n while (currentFolder) {\n ancestorChain.push(currentFolder)\n currentFolderId = currentFolder.folderId\n currentFolder = entities.find((e) => e.entityId === currentFolderId)\n }\n\n // The top folder is the last one in our ancestor chain (if any)\n const topFolder =\n ancestorChain.length > 0 ? ancestorChain[ancestorChain.length - 1] : null\n\n return topFolder\n }\n\n const topFolder = findTopFolder()\n const folderAttribs = topFolder?.attribs || []\n const entityAttribsIntersection = entity.attribs.filter((attrib) =>\n folderAttribs.includes(attrib),\n )\n const entityAttribsRemoved = entity.attribs.filter(\n (attrib) => !folderAttribs.includes(attrib),\n )\n\n // only add to patch operations if there are attribs left\n if (entityAttribsRemoved.length > 0)\n entitiesToPatch.push({\n ...entity,\n attribs: entityAttribsRemoved,\n })\n\n if (topFolder && entityAttribsIntersection.length > 0) {\n entitiesToPatch.push({\n ...entity,\n attribs: entityAttribsIntersection,\n folderId: topFolder.folderId,\n })\n }\n }\n\n const patchOperations: PatchOperation[] = [] // operations only for patching the cache\n for (const entity of entitiesToPatch) {\n const entityType = entity.entityType as 'task' | 'folder'\n // we also need to update ownAttrib to remove the inherited attribs\n const ownAttrib = [...(entity.ownAttrib || [])].filter(\n (attrib) => !entity.attribs.includes(attrib),\n )\n\n // now we must calculate all the entities that need to be updated in the cache\n // first we need to find the the ancestor folder to inherit from\n const ancestorAttrib = findNonInheritedValues(entity.folderId, entity.attribs)\n\n const entityPatch = {\n entityId: entity.entityId,\n entityType: entityType,\n data: {\n attrib: ancestorAttrib,\n ownAttrib: ownAttrib,\n },\n }\n\n // create new patch operation for the entity\n patchOperations.push(entityPatch)\n\n // now find any dependent that also need updating\n const inheritedDependents = getInheritedDependents([\n { entityId: entity.entityId, entityType: entityType, attrib: ancestorAttrib },\n ])\n\n // convert to operations\n const inheritedDependentsOperations: PatchOperation[] = inheritedDependents.map((op) => ({\n entityId: op.entityId,\n entityType: op.entityType,\n data: {\n attrib: op.attrib,\n },\n }))\n\n // try to add to patch operations\n // if it already exists then merge the attribs\n for (const inheritedDependent of inheritedDependentsOperations) {\n const existingOperationIndex = patchOperations.findIndex(\n (op) => op.entityId === inheritedDependent.entityId,\n )\n\n if (existingOperationIndex !== -1) {\n // Merge attribs with existing operation\n const existingOperation = patchOperations[existingOperationIndex]\n let newAttrib = {\n // @ts-ignore\n ...(existingOperation.data?.attrib || {}),\n // @ts-ignore\n ...(inheritedDependent.data?.attrib || {}),\n }\n\n patchOperations[existingOperationIndex] = {\n ...existingOperation,\n data: { attrib: newAttrib },\n }\n } else {\n // Add new operation\n patchOperations.push({\n entityId: inheritedDependent.entityId,\n entityType: inheritedDependent.entityType,\n data: inheritedDependent.data,\n })\n }\n }\n }\n\n // now make api call to update all entities\n try {\n await updateEntities({\n operations,\n patchOperations,\n })\n } catch (error) {\n toast.error('Failed to update entities')\n // Remove the failed update from history stack\n if (pushToHistory && pushHistory && removeHistoryEntries) {\n removeHistoryEntries(1)\n }\n }\n },\n [\n projectName,\n updateEntities,\n getInheritedDependents,\n findInheritedValueFromAncestors,\n pushHistory,\n removeHistoryEntries,\n ],\n )\n\n return { updateEntities: handleUpdateEntities, inheritFromParent }\n}\n\nexport default useUpdateTableData\n"],"names":["useUpdateTableData","props","pushHistory","removeHistoryEntries","projectName","useProjectContext","getEntityById","getInheritedDependents","findInheritedValueFromAncestors","findNonInheritedValues","useProjectTableContext","updateEntities","useProjectTableQueriesContext","handleUpdateEntities","useCallback","entities","pushToHistory","entityUpdates","e","filteredUpdates","entity","filteredCount","toast","inverseEntities","rowId","id","type","field","isAttrib","meta","entityData","entityId","oldValue","ownAttrib","wasInherited","historyEntities","value","supportedEntityTypes","operations","entityType","data","existingOperationIndex","op","existingOperation","newData","folderAttribEntities","inheritedDependentsOperations","error","inheritFromParent","undoEntities","attrib","redoEntities","entitiesToPatch","attribData","topFolder","folderId","ancestorChain","currentFolderId","currentFolder","folderAttribs","entityAttribsIntersection","entityAttribsRemoved","patchOperations","ancestorAttrib","entityPatch","inheritedDependent","newAttrib"],"mappings":"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"}
@@ -4,6 +4,7 @@ import { useCallback as j } from "react";
4
4
  import { useProjectTableContext as B } from "../context/ProjectTableContext.es.js";
5
5
  import "../../../context/RemoteModulesContext.es.js";
6
6
  import "../../../context/DetailsPanelContext.es.js";
7
+ import "../../../context/SubtasksModulesContext.es.js";
7
8
  import "../../../context/ThumbnailUploaderContext.es.js";
8
9
  import "../../../context/SettingsPanelContext.es.js";
9
10
  import "../../../context/pip/PiPProvider.es.js";
@@ -19,7 +20,7 @@ import "../../../context/GlobalContext.es.js";
19
20
  import { useProjectContext as L } from "../../../context/ProjectContext.es.js";
20
21
  import "../../../context/ProjectFoldersContext.es.js";
21
22
  import "../../../context/UriContext.es.js";
22
- const at = (k) => {
23
+ const st = (k) => {
23
24
  const { pushHistory: m, removeHistoryEntries: A } = k || {}, { projectName: F } = L(), {
24
25
  getEntityById: g,
25
26
  getInheritedDependents: v,
@@ -41,10 +42,10 @@ const at = (k) => {
41
42
  const s = g(i);
42
43
  if (!s)
43
44
  throw "Entity not found: " + i;
44
- const d = s?.entityId || s.id, h = l ? s.attrib?.[r] ?? null : s[r] ?? null, D = s?.ownAttrib || [], p = l && !D.includes(r);
45
+ const a = s?.entityId || s.id, h = l ? s.attrib?.[r] ?? null : s[r] ?? null, D = s?.ownAttrib || [], p = l && !D.includes(r);
45
46
  return {
46
47
  rowId: y,
47
- id: d,
48
+ id: a,
48
49
  type: o,
49
50
  field: r,
50
51
  value: h,
@@ -58,16 +59,16 @@ const at = (k) => {
58
59
  }
59
60
  ), b = I.flatMap(
60
61
  ({ rowId: y, id: i, type: o, field: r, value: l, isAttrib: c, meta: s }) => {
61
- const d = g(i), h = d?.entityId || d?.id || i;
62
- return d ? {
62
+ const a = g(i), h = a?.entityId || a?.id || i;
63
+ return a ? {
63
64
  rowId: y,
64
65
  id: h,
65
66
  type: o,
66
67
  field: r,
67
68
  value: l,
68
69
  isAttrib: c,
69
- ownAttrib: d?.ownAttrib || [],
70
- folderId: "folderId" in d ? d.folderId : d?.parentId,
70
+ ownAttrib: a?.ownAttrib || [],
71
+ folderId: "folderId" in a ? a.folderId : a?.parentId,
71
72
  meta: s
72
73
  } : [];
73
74
  }
@@ -84,8 +85,8 @@ const at = (k) => {
84
85
  for (const t of I) {
85
86
  let { id: b, type: y, field: i, value: o, isAttrib: r, meta: l } = t;
86
87
  const c = g(b), s = c?.entityId || c?.id || b;
87
- let d = y;
88
- if (!w.includes(d))
88
+ let a = y;
89
+ if (!w.includes(a))
89
90
  continue;
90
91
  const h = r ? { attrib: { [i]: o } } : { [i]: o };
91
92
  if (r) {
@@ -93,7 +94,7 @@ const at = (k) => {
93
94
  p.includes(i) || p.push(i), h.ownAttrib = p;
94
95
  }
95
96
  const D = e.findIndex(
96
- (p) => p.entityId === s && p.entityType === d
97
+ (p) => p.entityId === s && p.entityType === a
97
98
  );
98
99
  if (D !== -1) {
99
100
  const p = e[D];
@@ -104,8 +105,7 @@ const at = (k) => {
104
105
  };
105
106
  } else
106
107
  e.push({
107
- rowId: t.rowId,
108
- entityType: d,
108
+ entityType: a,
109
109
  entityId: s,
110
110
  type: "update",
111
111
  data: h,
@@ -116,7 +116,7 @@ const at = (k) => {
116
116
  entityId: t.entityId,
117
117
  entityType: t.entityType,
118
118
  attrib: t.data && "attrib" in t.data ? t.data?.attrib : {}
119
- })), a = v(f).map((t) => ({
119
+ })), d = v(f).map((t) => ({
120
120
  entityId: t.entityId,
121
121
  entityType: t.entityType,
122
122
  data: {
@@ -126,7 +126,7 @@ const at = (k) => {
126
126
  try {
127
127
  e.length && await O({
128
128
  operations: e,
129
- patchOperations: a
129
+ patchOperations: d
130
130
  });
131
131
  } catch (t) {
132
132
  console.error("Error updating entities:", t), P.error("Failed to update entities: " + t?.error), m && E && A && A(1);
@@ -148,28 +148,28 @@ const at = (k) => {
148
148
  if (E && m) {
149
149
  const e = [];
150
150
  for (const n of u) {
151
- const a = g(n.entityId);
151
+ const d = g(n.entityId);
152
152
  for (const t of n.attribs)
153
- a?.attrib && t in a.attrib && e.push({
153
+ d?.attrib && t in d.attrib && e.push({
154
154
  rowId: n.rowId,
155
- id: a?.entityId || a?.id || n.entityId,
155
+ id: d?.entityId || d?.id || n.entityId,
156
156
  type: n.entityType,
157
157
  field: t,
158
- value: a.attrib[t],
158
+ value: d.attrib[t],
159
159
  isAttrib: !0,
160
160
  wasInherited: !1,
161
161
  // Mark as not inherited
162
- ownAttrib: a?.ownAttrib || [],
163
- folderId: a?.folderId,
164
- meta: a.meta
162
+ ownAttrib: d?.ownAttrib || [],
163
+ folderId: d?.folderId,
164
+ meta: d.meta
165
165
  });
166
166
  }
167
167
  const f = u.flatMap(
168
- (n) => n.attribs.map((a) => ({
168
+ (n) => n.attribs.map((d) => ({
169
169
  rowId: n.rowId,
170
170
  id: n.entityId,
171
171
  type: n.entityType,
172
- field: a,
172
+ field: d,
173
173
  value: null,
174
174
  isAttrib: !0,
175
175
  wasInherited: !0,
@@ -191,7 +191,6 @@ const at = (k) => {
191
191
  e.attribs.forEach((o) => {
192
192
  n[o] = null;
193
193
  }), x.push({
194
- rowId: e.rowId,
195
194
  entityType: f,
196
195
  entityId: e.entityId,
197
196
  type: "update",
@@ -202,9 +201,9 @@ const at = (k) => {
202
201
  });
203
202
  const t = (() => {
204
203
  const o = e.folderId, r = [];
205
- let l = o, c = u.find((d) => d.entityId === l);
204
+ let l = o, c = u.find((a) => a.entityId === l);
206
205
  for (; c; )
207
- r.push(c), l = c.folderId, c = u.find((d) => d.entityId === l);
206
+ r.push(c), l = c.folderId, c = u.find((a) => a.entityId === l);
208
207
  return r.length > 0 ? r[r.length - 1] : null;
209
208
  })(), b = t?.attribs || [], y = e.attribs.filter(
210
209
  (o) => b.includes(o)
@@ -224,17 +223,17 @@ const at = (k) => {
224
223
  for (const e of T) {
225
224
  const f = e.entityType, n = [...e.ownAttrib || []].filter(
226
225
  (i) => !e.attribs.includes(i)
227
- ), a = V(e.folderId, e.attribs), t = {
226
+ ), d = V(e.folderId, e.attribs), t = {
228
227
  entityId: e.entityId,
229
228
  entityType: f,
230
229
  data: {
231
- attrib: a,
230
+ attrib: d,
232
231
  ownAttrib: n
233
232
  }
234
233
  };
235
234
  w.push(t);
236
235
  const y = v([
237
- { entityId: e.entityId, entityType: f, attrib: a }
236
+ { entityId: e.entityId, entityType: f, attrib: d }
238
237
  ]).map((i) => ({
239
238
  entityId: i.entityId,
240
239
  entityType: i.entityType,
@@ -287,6 +286,6 @@ const at = (k) => {
287
286
  return { updateEntities: M, inheritFromParent: N };
288
287
  };
289
288
  export {
290
- at as default
289
+ st as default
291
290
  };
292
291
  //# sourceMappingURL=useUpdateTableData.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useUpdateTableData.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useUpdateTableData.ts"],"sourcesContent":["import { CellId } from '../utils/cellUtils'\nimport { CellValue } from '../widgets/CellWidget'\nimport { toast } from 'react-toastify'\nimport { useProjectTableQueriesContext } from '../context/ProjectTableQueriesContext'\nimport { useCallback } from 'react'\nimport { InheritedDependent } from './useFolderRelationships'\nimport { useProjectTableContext } from '../context/ProjectTableContext'\nimport { OperationModel } from '../types/operations'\nimport { PatchOperation } from '../types'\nimport { HistoryEntityUpdate, UseHistoryReturn } from './useHistory'\nimport { useProjectContext } from '@shared/context'\n\nexport type EntityUpdate = {\n rowId: string\n id: string\n type: string\n field: string\n value: CellValue | CellValue[] | null\n isAttrib?: boolean\n isLink?: boolean // link updates use different endpoint\n meta?: Record<string, any>\n}\nexport type UpdateTableEntities = (entities: EntityUpdate[], pushHistory?: boolean) => Promise<void>\n\nexport type InheritFromParentEntity = {\n rowId: string\n entityId: string\n entityType: string\n attribs: string[]\n ownAttrib: string[]\n folderId?: string // the parent folder ID\n meta?: Record<string, any>\n}\nexport type InheritFromParent = (\n entities: InheritFromParentEntity[],\n pushHistory?: boolean,\n) => Promise<void>\n\nexport type UpdateTableEntity = (\n cellId: CellId,\n value: string,\n { includeSelection }: { includeSelection: boolean },\n) => Promise<void>\n\nexport type OperationWithRowId = OperationModel & { rowId: string; meta?: Record<string, any> }\n\ninterface UseUpdateTableDataProps {\n pushHistory?: UseHistoryReturn['pushHistory']\n removeHistoryEntries?: UseHistoryReturn['removeHistoryEntries']\n}\n\nconst useUpdateTableData = (props?: UseUpdateTableDataProps) => {\n const { pushHistory, removeHistoryEntries } = props || {}\n const { projectName } = useProjectContext()\n const {\n getEntityById,\n getInheritedDependents,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n } = useProjectTableContext()\n const { updateEntities } = useProjectTableQueriesContext()\n\n const handleUpdateEntities = useCallback<UpdateTableEntities>(\n async (entities = [], pushToHistory = true) => {\n if (!entities.length || !projectName) {\n return\n }\n\n // Filter out link updates - they should be handled by useUpdateTableLinks\n let entityUpdates = entities.filter((e) => !e.isLink)\n\n // Filter out folder type updates for folders with versions\n const filteredUpdates = entityUpdates.filter((entity) => {\n if (entity.field === 'folderType' && entity.type === 'folder') {\n const entityData = getEntityById(entity.id)\n if (entityData?.hasVersions) {\n return false\n }\n }\n return true\n })\n\n // Show warning if any updates were filtered out\n const filteredCount = entityUpdates.length - filteredUpdates.length\n if (filteredCount > 0) {\n toast.error(\n `Cannot change folder type for ${filteredCount} folder${\n filteredCount > 1 ? 's' : ''\n } with published versions`,\n )\n }\n\n entityUpdates = filteredUpdates\n\n // If no entity updates to process, return early\n if (!entityUpdates.length) {\n return\n }\n\n // Record history of previous values before applying update\n if (pushHistory && pushToHistory) {\n const inverseEntities: HistoryEntityUpdate[] = entityUpdates.map(\n ({ rowId, id, type, field, isAttrib, meta }) => {\n const entityData = getEntityById(id) as Record<string, any>\n if (!entityData) {\n throw 'Entity not found: ' + id\n }\n const entityId = entityData?.entityId || entityData.id\n const oldValue = isAttrib\n ? (entityData.attrib as Record<string, any>)?.[field] ?? null\n : entityData[field] ?? null\n\n // Check if the field was inherited (not in ownAttrib)\n const ownAttrib = entityData?.ownAttrib || []\n const wasInherited = isAttrib && !ownAttrib.includes(field)\n\n return {\n rowId: rowId,\n id: entityId,\n type,\n field,\n value: oldValue,\n isAttrib,\n wasInherited, // Track inheritance status for undo\n ownAttrib: ownAttrib,\n folderId: entityData?.folderId || entityData?.parentId,\n meta,\n }\n },\n )\n const historyEntities: HistoryEntityUpdate[] = entityUpdates.flatMap(\n ({ rowId, id, type, field, value, isAttrib, meta }) => {\n const entityData = getEntityById(id)\n const entityId = entityData?.entityId || entityData?.id || id\n\n if (!entityData) return []\n\n return {\n rowId: rowId,\n id: entityId,\n type,\n field,\n value,\n isAttrib,\n ownAttrib: entityData?.ownAttrib || [],\n folderId: 'folderId' in entityData ? entityData.folderId : entityData?.parentId,\n meta,\n }\n },\n )\n pushHistory(inverseEntities, historyEntities)\n }\n\n const supportedEntityTypes: OperationModel['entityType'][] = [\n 'task',\n 'folder',\n 'product',\n 'version',\n ]\n // Group operations by entity type for bulk processing\n let operations: OperationWithRowId[] = []\n for (const entity of entityUpdates) {\n let { id, type, field, value, isAttrib, meta } = entity\n const entityData = getEntityById(id)\n const entityId = entityData?.entityId || entityData?.id || id\n // Skip unsupported entity types\n let entityType = type as OperationModel['entityType']\n if (!supportedEntityTypes.includes(entityType)) {\n continue\n }\n\n // create data object for change, taking into account if it's an attribute change\n const data: Record<string, any> = isAttrib\n ? { attrib: { [field]: value } }\n : { [field]: value }\n\n // if the entity is an attribute get the entity data\n // then update ownAttrib to include the new value\n if (isAttrib) {\n const ownAttrib = [...(entityData?.ownAttrib || [])]\n // add the new value to the ownAttrib if it doesn't already exist\n if (!ownAttrib.includes(field)) {\n ownAttrib.push(field)\n }\n // update the data object with the new ownAttrib\n data.ownAttrib = ownAttrib\n }\n\n const existingOperationIndex = operations.findIndex(\n (op) => op.entityId === entityId && op.entityType === entityType,\n )\n\n if (existingOperationIndex !== -1) {\n // Merge data with existing operation\n const existingOperation = operations[existingOperationIndex]\n let newData = { ...existingOperation.data, ...data }\n\n // @ts-ignore\n if (existingOperation.data?.attrib && data.attrib) {\n // @ts-ignore\n newData = { ...newData, attrib: { ...existingOperation.data.attrib, ...data.attrib } }\n }\n\n operations[existingOperationIndex] = {\n ...existingOperation,\n data: newData,\n }\n } else {\n // Add new operation\n operations.push({\n rowId: entity.rowId,\n entityType: entityType,\n entityId: entityId,\n type: 'update',\n data: data,\n meta: meta,\n })\n }\n }\n\n const folderAttribEntities: InheritedDependent[] = operations\n .filter((op) => !!op.entityId && op.type === 'update' && op.data && 'attrib' in op.data)\n .map((op) => ({\n entityId: op.entityId as string,\n entityType: op.entityType as 'folder' | 'task',\n attrib:\n op.data && 'attrib' in op.data ? (op.data?.attrib as InheritedDependent['attrib']) : {},\n }))\n\n const inheritedDependents = getInheritedDependents(folderAttribEntities)\n\n // convert to operations\n const inheritedDependentsOperations: PatchOperation[] = inheritedDependents.map((op) => ({\n entityId: op.entityId,\n entityType: op.entityType,\n data: {\n attrib: op.attrib,\n },\n }))\n\n // now make api call to update all entities and links\n try {\n if (operations.length) {\n await updateEntities({\n operations,\n patchOperations: inheritedDependentsOperations,\n })\n }\n } catch (error: any) {\n console.error('Error updating entities:', error)\n toast.error('Failed to update entities: ' + error?.error)\n // Remove the failed update from history stack\n if (pushHistory && pushToHistory && removeHistoryEntries) {\n removeHistoryEntries(1)\n }\n }\n },\n [\n projectName,\n updateEntities, //\n getEntityById,\n getInheritedDependents,\n pushHistory,\n removeHistoryEntries,\n ],\n )\n\n // set the attrib fields to be inherited from the parent\n // (remove the field from the ownAttrib array)\n // invalidate the cache for the folder/task so that it can be re-fetched with inherited values\n const inheritFromParent = useCallback<InheritFromParent>(\n async (entities, pushToHistory = true) => {\n if (!entities.length || !projectName) {\n return\n }\n\n // Record history for the inheritance operation\n if (pushToHistory && pushHistory) {\n // Create undo entities (restore explicit values)\n const undoEntities: HistoryEntityUpdate[] = []\n\n // For each entity and attribute being inherited, record current values\n for (const entity of entities) {\n const entityData = getEntityById(entity.entityId) as Record<string, any>\n\n // For each attribute that will be inherited, record its current value\n for (const attrib of entity.attribs) {\n if (entityData?.attrib && attrib in entityData.attrib) {\n undoEntities.push({\n rowId: entity.rowId,\n id: entityData?.entityId || entityData?.id || entity.entityId,\n type: entity.entityType,\n field: attrib,\n value: (entityData.attrib as Record<string, any>)[attrib],\n isAttrib: true,\n wasInherited: false, // Mark as not inherited\n ownAttrib: entityData?.ownAttrib || [],\n folderId: entityData?.folderId,\n meta: entityData.meta,\n })\n }\n }\n }\n\n // Create redo entities (to re-inherit)\n const redoEntities: HistoryEntityUpdate[] = entities.flatMap((entity) =>\n entity.attribs.map((attrib) => ({\n rowId: entity.rowId,\n id: entity.entityId,\n type: entity.entityType,\n field: attrib,\n value: null,\n isAttrib: true,\n wasInherited: true, // Mark as inherited\n ownAttrib: entity.ownAttrib,\n folderId: entity.folderId,\n meta: entity.meta,\n })),\n )\n\n // Push to history if we have changes to record\n if (undoEntities.length > 0) {\n pushHistory(undoEntities, redoEntities)\n }\n }\n\n const supportedEntityTypes: OperationModel['entityType'][] = ['task', 'folder']\n // Group operations by entity type for bulk processing\n const operations: OperationWithRowId[] = [] // operations sent to the server\n const entitiesToPatch: InheritFromParentEntity[] = []\n for (const entity of entities) {\n // Skip unsupported entity types\n let entityType = entity.entityType as OperationModel['entityType']\n if (!supportedEntityTypes.includes(entityType)) {\n continue\n }\n entityType = entityType as 'task' | 'folder'\n\n // Create data object with null values for each attrib to inherit\n const attribData: Record<string, null> = {}\n entity.attribs.forEach((attrib) => {\n attribData[attrib] = null\n })\n\n // Add new operation this is what's sent to the server and is actually updated in the DB\n operations.push({\n rowId: entity.rowId,\n entityType: entityType,\n entityId: entity.entityId,\n type: 'update',\n data: {\n attrib: attribData,\n },\n meta: entity.meta,\n })\n\n // check if this entity has a folderId that is in entities\n // if so we check their intersection attrib names\n const findTopFolder = () => {\n // For each entity, we need to find the top-most folder in the hierarchy\n const folderId = entity.folderId\n\n // Find all ancestor folders that are in our entities list\n const ancestorChain: InheritFromParentEntity[] = []\n let currentFolderId = folderId\n let currentFolder = entities.find((e) => e.entityId === currentFolderId)\n\n // Climb up the folder hierarchy to build the chain of ancestors\n while (currentFolder) {\n ancestorChain.push(currentFolder)\n currentFolderId = currentFolder.folderId\n currentFolder = entities.find((e) => e.entityId === currentFolderId)\n }\n\n // The top folder is the last one in our ancestor chain (if any)\n const topFolder =\n ancestorChain.length > 0 ? ancestorChain[ancestorChain.length - 1] : null\n\n return topFolder\n }\n\n const topFolder = findTopFolder()\n const folderAttribs = topFolder?.attribs || []\n const entityAttribsIntersection = entity.attribs.filter((attrib) =>\n folderAttribs.includes(attrib),\n )\n const entityAttribsRemoved = entity.attribs.filter(\n (attrib) => !folderAttribs.includes(attrib),\n )\n\n // only add to patch operations if there are attribs left\n if (entityAttribsRemoved.length > 0)\n entitiesToPatch.push({\n ...entity,\n attribs: entityAttribsRemoved,\n })\n\n if (topFolder && entityAttribsIntersection.length > 0) {\n entitiesToPatch.push({\n ...entity,\n attribs: entityAttribsIntersection,\n folderId: topFolder.folderId,\n })\n }\n }\n\n const patchOperations: PatchOperation[] = [] // operations only for patching the cache\n for (const entity of entitiesToPatch) {\n const entityType = entity.entityType as 'task' | 'folder'\n // we also need to update ownAttrib to remove the inherited attribs\n const ownAttrib = [...(entity.ownAttrib || [])].filter(\n (attrib) => !entity.attribs.includes(attrib),\n )\n\n // now we must calculate all the entities that need to be updated in the cache\n // first we need to find the the ancestor folder to inherit from\n const ancestorAttrib = findNonInheritedValues(entity.folderId, entity.attribs)\n\n const entityPatch = {\n entityId: entity.entityId,\n entityType: entityType,\n data: {\n attrib: ancestorAttrib,\n ownAttrib: ownAttrib,\n },\n }\n\n // create new patch operation for the entity\n patchOperations.push(entityPatch)\n\n // now find any dependent that also need updating\n const inheritedDependents = getInheritedDependents([\n { entityId: entity.entityId, entityType: entityType, attrib: ancestorAttrib },\n ])\n\n // convert to operations\n const inheritedDependentsOperations: PatchOperation[] = inheritedDependents.map((op) => ({\n entityId: op.entityId,\n entityType: op.entityType,\n data: {\n attrib: op.attrib,\n },\n }))\n\n // try to add to patch operations\n // if it already exists then merge the attribs\n for (const inheritedDependent of inheritedDependentsOperations) {\n const existingOperationIndex = patchOperations.findIndex(\n (op) => op.entityId === inheritedDependent.entityId,\n )\n\n if (existingOperationIndex !== -1) {\n // Merge attribs with existing operation\n const existingOperation = patchOperations[existingOperationIndex]\n let newAttrib = {\n // @ts-ignore\n ...(existingOperation.data?.attrib || {}),\n // @ts-ignore\n ...(inheritedDependent.data?.attrib || {}),\n }\n\n patchOperations[existingOperationIndex] = {\n ...existingOperation,\n data: { attrib: newAttrib },\n }\n } else {\n // Add new operation\n patchOperations.push({\n entityId: inheritedDependent.entityId,\n entityType: inheritedDependent.entityType,\n data: inheritedDependent.data,\n })\n }\n }\n }\n\n // now make api call to update all entities\n try {\n await updateEntities({\n operations,\n patchOperations,\n })\n } catch (error) {\n toast.error('Failed to update entities')\n // Remove the failed update from history stack\n if (pushToHistory && pushHistory && removeHistoryEntries) {\n removeHistoryEntries(1)\n }\n }\n },\n [\n projectName,\n updateEntities,\n getInheritedDependents,\n findInheritedValueFromAncestors,\n pushHistory,\n removeHistoryEntries,\n ],\n )\n\n return { updateEntities: handleUpdateEntities, inheritFromParent }\n}\n\nexport default useUpdateTableData\n"],"names":["useUpdateTableData","props","pushHistory","removeHistoryEntries","projectName","useProjectContext","getEntityById","getInheritedDependents","findInheritedValueFromAncestors","findNonInheritedValues","useProjectTableContext","updateEntities","useProjectTableQueriesContext","handleUpdateEntities","useCallback","entities","pushToHistory","entityUpdates","e","filteredUpdates","entity","filteredCount","toast","inverseEntities","rowId","id","type","field","isAttrib","meta","entityData","entityId","oldValue","ownAttrib","wasInherited","historyEntities","value","supportedEntityTypes","operations","entityType","data","existingOperationIndex","op","existingOperation","newData","folderAttribEntities","inheritedDependentsOperations","error","inheritFromParent","undoEntities","attrib","redoEntities","entitiesToPatch","attribData","topFolder","folderId","ancestorChain","currentFolderId","currentFolder","folderAttribs","entityAttribsIntersection","entityAttribsRemoved","patchOperations","ancestorAttrib","entityPatch","inheritedDependent","newAttrib"],"mappings":"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"}
1
+ {"version":3,"file":"useUpdateTableData.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useUpdateTableData.ts"],"sourcesContent":["import { CellId } from '../utils/cellUtils'\nimport { CellValue } from '../widgets/CellWidget'\nimport { toast } from 'react-toastify'\nimport { useProjectTableQueriesContext } from '../context/ProjectTableQueriesContext'\nimport { useCallback } from 'react'\nimport { InheritedDependent } from './useFolderRelationships'\nimport { useProjectTableContext } from '../context/ProjectTableContext'\nimport { OperationModel } from '../types/operations'\nimport { PatchOperation } from '../types'\nimport { HistoryEntityUpdate, UseHistoryReturn } from './useHistory'\nimport { useProjectContext } from '@shared/context'\n\nexport type EntityUpdate = {\n rowId: string\n id: string\n type: string\n field: string\n value: CellValue | CellValue[] | null\n isAttrib?: boolean\n isLink?: boolean // link updates use different endpoint\n meta?: Record<string, any>\n}\nexport type UpdateTableEntities = (entities: EntityUpdate[], pushHistory?: boolean) => Promise<void>\n\nexport type InheritFromParentEntity = {\n rowId: string\n entityId: string\n entityType: string\n attribs: string[]\n ownAttrib: string[]\n folderId?: string // the parent folder ID\n meta?: Record<string, any>\n}\nexport type InheritFromParent = (\n entities: InheritFromParentEntity[],\n pushHistory?: boolean,\n) => Promise<void>\n\nexport type UpdateTableEntity = (\n cellId: CellId,\n value: string,\n { includeSelection }: { includeSelection: boolean },\n) => Promise<void>\n\nexport type OperationWithRowId = OperationModel & { meta?: Record<string, any> }\n\ninterface UseUpdateTableDataProps {\n pushHistory?: UseHistoryReturn['pushHistory']\n removeHistoryEntries?: UseHistoryReturn['removeHistoryEntries']\n}\n\nconst useUpdateTableData = (props?: UseUpdateTableDataProps) => {\n const { pushHistory, removeHistoryEntries } = props || {}\n const { projectName } = useProjectContext()\n const {\n getEntityById,\n getInheritedDependents,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n } = useProjectTableContext()\n const { updateEntities } = useProjectTableQueriesContext()\n\n const handleUpdateEntities = useCallback<UpdateTableEntities>(\n async (entities = [], pushToHistory = true) => {\n if (!entities.length || !projectName) {\n return\n }\n\n // Filter out link updates - they should be handled by useUpdateTableLinks\n let entityUpdates = entities.filter((e) => !e.isLink)\n\n // Filter out folder type updates for folders with versions\n const filteredUpdates = entityUpdates.filter((entity) => {\n if (entity.field === 'folderType' && entity.type === 'folder') {\n const entityData = getEntityById(entity.id)\n if (entityData?.hasVersions) {\n return false\n }\n }\n return true\n })\n\n // Show warning if any updates were filtered out\n const filteredCount = entityUpdates.length - filteredUpdates.length\n if (filteredCount > 0) {\n toast.error(\n `Cannot change folder type for ${filteredCount} folder${\n filteredCount > 1 ? 's' : ''\n } with published versions`,\n )\n }\n\n entityUpdates = filteredUpdates\n\n // If no entity updates to process, return early\n if (!entityUpdates.length) {\n return\n }\n\n // Record history of previous values before applying update\n if (pushHistory && pushToHistory) {\n const inverseEntities: HistoryEntityUpdate[] = entityUpdates.map(\n ({ rowId, id, type, field, isAttrib, meta }) => {\n const entityData = getEntityById(id) as Record<string, any>\n if (!entityData) {\n throw 'Entity not found: ' + id\n }\n const entityId = entityData?.entityId || entityData.id\n const oldValue = isAttrib\n ? (entityData.attrib as Record<string, any>)?.[field] ?? null\n : entityData[field] ?? null\n\n // Check if the field was inherited (not in ownAttrib)\n const ownAttrib = entityData?.ownAttrib || []\n const wasInherited = isAttrib && !ownAttrib.includes(field)\n\n return {\n rowId: rowId,\n id: entityId,\n type,\n field,\n value: oldValue,\n isAttrib,\n wasInherited, // Track inheritance status for undo\n ownAttrib: ownAttrib,\n folderId: entityData?.folderId || entityData?.parentId,\n meta,\n }\n },\n )\n const historyEntities: HistoryEntityUpdate[] = entityUpdates.flatMap(\n ({ rowId, id, type, field, value, isAttrib, meta }) => {\n const entityData = getEntityById(id)\n const entityId = entityData?.entityId || entityData?.id || id\n\n if (!entityData) return []\n\n return {\n rowId: rowId,\n id: entityId,\n type,\n field,\n value,\n isAttrib,\n ownAttrib: entityData?.ownAttrib || [],\n folderId: 'folderId' in entityData ? entityData.folderId : entityData?.parentId,\n meta,\n }\n },\n )\n pushHistory(inverseEntities, historyEntities)\n }\n\n const supportedEntityTypes: OperationModel['entityType'][] = [\n 'task',\n 'folder',\n 'product',\n 'version',\n ]\n // Group operations by entity type for bulk processing\n let operations: OperationWithRowId[] = []\n for (const entity of entityUpdates) {\n let { id, type, field, value, isAttrib, meta } = entity\n const entityData = getEntityById(id)\n const entityId = entityData?.entityId || entityData?.id || id\n // Skip unsupported entity types\n let entityType = type as OperationModel['entityType']\n if (!supportedEntityTypes.includes(entityType)) {\n continue\n }\n\n // create data object for change, taking into account if it's an attribute change\n const data: Record<string, any> = isAttrib\n ? { attrib: { [field]: value } }\n : { [field]: value }\n\n // if the entity is an attribute get the entity data\n // then update ownAttrib to include the new value\n if (isAttrib) {\n const ownAttrib = [...(entityData?.ownAttrib || [])]\n // add the new value to the ownAttrib if it doesn't already exist\n if (!ownAttrib.includes(field)) {\n ownAttrib.push(field)\n }\n // update the data object with the new ownAttrib\n data.ownAttrib = ownAttrib\n }\n\n const existingOperationIndex = operations.findIndex(\n (op) => op.entityId === entityId && op.entityType === entityType,\n )\n\n if (existingOperationIndex !== -1) {\n // Merge data with existing operation\n const existingOperation = operations[existingOperationIndex]\n let newData = { ...existingOperation.data, ...data }\n\n // @ts-ignore\n if (existingOperation.data?.attrib && data.attrib) {\n // @ts-ignore\n newData = { ...newData, attrib: { ...existingOperation.data.attrib, ...data.attrib } }\n }\n\n operations[existingOperationIndex] = {\n ...existingOperation,\n data: newData,\n }\n } else {\n // Add new operation\n operations.push({\n entityType: entityType,\n entityId: entityId,\n type: 'update',\n data: data,\n meta: meta,\n })\n }\n }\n\n const folderAttribEntities: InheritedDependent[] = operations\n .filter((op) => !!op.entityId && op.type === 'update' && op.data && 'attrib' in op.data)\n .map((op) => ({\n entityId: op.entityId as string,\n entityType: op.entityType as 'folder' | 'task',\n attrib:\n op.data && 'attrib' in op.data ? (op.data?.attrib as InheritedDependent['attrib']) : {},\n }))\n\n const inheritedDependents = getInheritedDependents(folderAttribEntities)\n\n // convert to operations\n const inheritedDependentsOperations: PatchOperation[] = inheritedDependents.map((op) => ({\n entityId: op.entityId,\n entityType: op.entityType,\n data: {\n attrib: op.attrib,\n },\n }))\n\n // now make api call to update all entities and links\n try {\n if (operations.length) {\n await updateEntities({\n operations,\n patchOperations: inheritedDependentsOperations,\n })\n }\n } catch (error: any) {\n console.error('Error updating entities:', error)\n toast.error('Failed to update entities: ' + error?.error)\n // Remove the failed update from history stack\n if (pushHistory && pushToHistory && removeHistoryEntries) {\n removeHistoryEntries(1)\n }\n }\n },\n [\n projectName,\n updateEntities, //\n getEntityById,\n getInheritedDependents,\n pushHistory,\n removeHistoryEntries,\n ],\n )\n\n // set the attrib fields to be inherited from the parent\n // (remove the field from the ownAttrib array)\n // invalidate the cache for the folder/task so that it can be re-fetched with inherited values\n const inheritFromParent = useCallback<InheritFromParent>(\n async (entities, pushToHistory = true) => {\n if (!entities.length || !projectName) {\n return\n }\n\n // Record history for the inheritance operation\n if (pushToHistory && pushHistory) {\n // Create undo entities (restore explicit values)\n const undoEntities: HistoryEntityUpdate[] = []\n\n // For each entity and attribute being inherited, record current values\n for (const entity of entities) {\n const entityData = getEntityById(entity.entityId) as Record<string, any>\n\n // For each attribute that will be inherited, record its current value\n for (const attrib of entity.attribs) {\n if (entityData?.attrib && attrib in entityData.attrib) {\n undoEntities.push({\n rowId: entity.rowId,\n id: entityData?.entityId || entityData?.id || entity.entityId,\n type: entity.entityType,\n field: attrib,\n value: (entityData.attrib as Record<string, any>)[attrib],\n isAttrib: true,\n wasInherited: false, // Mark as not inherited\n ownAttrib: entityData?.ownAttrib || [],\n folderId: entityData?.folderId,\n meta: entityData.meta,\n })\n }\n }\n }\n\n // Create redo entities (to re-inherit)\n const redoEntities: HistoryEntityUpdate[] = entities.flatMap((entity) =>\n entity.attribs.map((attrib) => ({\n rowId: entity.rowId,\n id: entity.entityId,\n type: entity.entityType,\n field: attrib,\n value: null,\n isAttrib: true,\n wasInherited: true, // Mark as inherited\n ownAttrib: entity.ownAttrib,\n folderId: entity.folderId,\n meta: entity.meta,\n })),\n )\n\n // Push to history if we have changes to record\n if (undoEntities.length > 0) {\n pushHistory(undoEntities, redoEntities)\n }\n }\n\n const supportedEntityTypes: OperationModel['entityType'][] = ['task', 'folder']\n // Group operations by entity type for bulk processing\n const operations: OperationWithRowId[] = [] // operations sent to the server\n const entitiesToPatch: InheritFromParentEntity[] = []\n for (const entity of entities) {\n // Skip unsupported entity types\n let entityType = entity.entityType as OperationModel['entityType']\n if (!supportedEntityTypes.includes(entityType)) {\n continue\n }\n entityType = entityType as 'task' | 'folder'\n\n // Create data object with null values for each attrib to inherit\n const attribData: Record<string, null> = {}\n entity.attribs.forEach((attrib) => {\n attribData[attrib] = null\n })\n\n // Add new operation this is what's sent to the server and is actually updated in the DB\n operations.push({\n entityType: entityType,\n entityId: entity.entityId,\n type: 'update',\n data: {\n attrib: attribData,\n },\n meta: entity.meta,\n })\n\n // check if this entity has a folderId that is in entities\n // if so we check their intersection attrib names\n const findTopFolder = () => {\n // For each entity, we need to find the top-most folder in the hierarchy\n const folderId = entity.folderId\n\n // Find all ancestor folders that are in our entities list\n const ancestorChain: InheritFromParentEntity[] = []\n let currentFolderId = folderId\n let currentFolder = entities.find((e) => e.entityId === currentFolderId)\n\n // Climb up the folder hierarchy to build the chain of ancestors\n while (currentFolder) {\n ancestorChain.push(currentFolder)\n currentFolderId = currentFolder.folderId\n currentFolder = entities.find((e) => e.entityId === currentFolderId)\n }\n\n // The top folder is the last one in our ancestor chain (if any)\n const topFolder =\n ancestorChain.length > 0 ? ancestorChain[ancestorChain.length - 1] : null\n\n return topFolder\n }\n\n const topFolder = findTopFolder()\n const folderAttribs = topFolder?.attribs || []\n const entityAttribsIntersection = entity.attribs.filter((attrib) =>\n folderAttribs.includes(attrib),\n )\n const entityAttribsRemoved = entity.attribs.filter(\n (attrib) => !folderAttribs.includes(attrib),\n )\n\n // only add to patch operations if there are attribs left\n if (entityAttribsRemoved.length > 0)\n entitiesToPatch.push({\n ...entity,\n attribs: entityAttribsRemoved,\n })\n\n if (topFolder && entityAttribsIntersection.length > 0) {\n entitiesToPatch.push({\n ...entity,\n attribs: entityAttribsIntersection,\n folderId: topFolder.folderId,\n })\n }\n }\n\n const patchOperations: PatchOperation[] = [] // operations only for patching the cache\n for (const entity of entitiesToPatch) {\n const entityType = entity.entityType as 'task' | 'folder'\n // we also need to update ownAttrib to remove the inherited attribs\n const ownAttrib = [...(entity.ownAttrib || [])].filter(\n (attrib) => !entity.attribs.includes(attrib),\n )\n\n // now we must calculate all the entities that need to be updated in the cache\n // first we need to find the the ancestor folder to inherit from\n const ancestorAttrib = findNonInheritedValues(entity.folderId, entity.attribs)\n\n const entityPatch = {\n entityId: entity.entityId,\n entityType: entityType,\n data: {\n attrib: ancestorAttrib,\n ownAttrib: ownAttrib,\n },\n }\n\n // create new patch operation for the entity\n patchOperations.push(entityPatch)\n\n // now find any dependent that also need updating\n const inheritedDependents = getInheritedDependents([\n { entityId: entity.entityId, entityType: entityType, attrib: ancestorAttrib },\n ])\n\n // convert to operations\n const inheritedDependentsOperations: PatchOperation[] = inheritedDependents.map((op) => ({\n entityId: op.entityId,\n entityType: op.entityType,\n data: {\n attrib: op.attrib,\n },\n }))\n\n // try to add to patch operations\n // if it already exists then merge the attribs\n for (const inheritedDependent of inheritedDependentsOperations) {\n const existingOperationIndex = patchOperations.findIndex(\n (op) => op.entityId === inheritedDependent.entityId,\n )\n\n if (existingOperationIndex !== -1) {\n // Merge attribs with existing operation\n const existingOperation = patchOperations[existingOperationIndex]\n let newAttrib = {\n // @ts-ignore\n ...(existingOperation.data?.attrib || {}),\n // @ts-ignore\n ...(inheritedDependent.data?.attrib || {}),\n }\n\n patchOperations[existingOperationIndex] = {\n ...existingOperation,\n data: { attrib: newAttrib },\n }\n } else {\n // Add new operation\n patchOperations.push({\n entityId: inheritedDependent.entityId,\n entityType: inheritedDependent.entityType,\n data: inheritedDependent.data,\n })\n }\n }\n }\n\n // now make api call to update all entities\n try {\n await updateEntities({\n operations,\n patchOperations,\n })\n } catch (error) {\n toast.error('Failed to update entities')\n // Remove the failed update from history stack\n if (pushToHistory && pushHistory && removeHistoryEntries) {\n removeHistoryEntries(1)\n }\n }\n },\n [\n projectName,\n updateEntities,\n getInheritedDependents,\n findInheritedValueFromAncestors,\n pushHistory,\n removeHistoryEntries,\n ],\n )\n\n return { updateEntities: handleUpdateEntities, inheritFromParent }\n}\n\nexport default useUpdateTableData\n"],"names":["useUpdateTableData","props","pushHistory","removeHistoryEntries","projectName","useProjectContext","getEntityById","getInheritedDependents","findInheritedValueFromAncestors","findNonInheritedValues","useProjectTableContext","updateEntities","useProjectTableQueriesContext","handleUpdateEntities","useCallback","entities","pushToHistory","entityUpdates","e","filteredUpdates","entity","filteredCount","toast","inverseEntities","rowId","id","type","field","isAttrib","meta","entityData","entityId","oldValue","ownAttrib","wasInherited","historyEntities","value","supportedEntityTypes","operations","entityType","data","existingOperationIndex","op","existingOperation","newData","folderAttribEntities","inheritedDependentsOperations","error","inheritFromParent","undoEntities","attrib","redoEntities","entitiesToPatch","attribData","topFolder","folderId","ancestorChain","currentFolderId","currentFolder","folderAttribs","entityAttribsIntersection","entityAttribsRemoved","patchOperations","ancestorAttrib","entityPatch","inheritedDependent","newAttrib"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("react-toastify");require("lodash");require("uuid");require("../../../util/pubsub.cjs.js");require("../context/CellEditingContext.cjs.js");require("../../../../../_virtual/jsx-runtime.cjs.js");require("react");require("@ynput/ayon-react-components");require("short-uuid");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.cjs.js");require("../widgets/TextWidget.cjs.js");require("../widgets/BooleanWidget.cjs.js");require("../widgets/CellWidget.cjs.js");require("../widgets/EntityNameWidget.cjs.js");require("../widgets/GroupHeaderWidget.cjs.js");require("../widgets/ThumbnailWidget.cjs.js");require("../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("clsx");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("react-dom");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/Chips/Chips.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/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("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../Feed/components/ActivityDate.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("date-fns");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("@tanstack/react-virtual");require("../ProjectTreeTable.styled.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../context/SelectionCellsContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../context/SelectedRowsContext.cjs.js");require("../context/ColumnSettingsContext.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");require("../context/ProjectTableContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../context/DetailsPanelEntityContext.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("../../SimpleTable/SimpleTable.styled.cjs.js");require("@tanstack/match-sorter-utils");require("../../SimpleTable/context/SimpleTableContext.cjs.js");require("../../SimpleTable/SimpleTableRowTemplate.cjs.js");require("../../Slicer/hooks/useTableDataBySlice.cjs.js");require("../../Slicer/components/SlicerSearch.cjs.js");require("../../Slicer/context/SlicerContext.cjs.js");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");require("../../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("axios");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/SizeSlider/SizeSlider.cjs.js");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/SearchFilter/filterDates.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/SortingSetting/SortingSetting.styled.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/Menu/Menu.styled.cjs.js");require("../../../components/Menu/MenuItem.cjs.js");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../widgets/EmptyWidget.cjs.js");require("../widgets/ErrorWidget.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");const a=require("../context/ProjectTableProvider.cjs.js");var n=(e=>(e[e.None=0]="None",e[e.Top=1]="Top",e[e.Right=2]="Right",e[e.Bottom=4]="Bottom",e[e.Left=8]="Left",e[e.All=15]="All",e))(n||{});const f=(e,r)=>`cell-${e}-${r}`,p=e=>{const r=e.match(/^cell-(.+)-(.+)$/);return r?{rowId:r[1],colId:r[2]}:null},c=(e,r)=>{if(!e||!r)return;const i=r.split("_");let u=e;for(const t of i)if(u&&typeof u=="object"&&t in u)u=u[t];else return;return u},g=(e,r)=>{const[i,u,t,m,s]=r.split("_"),l=e.filter(q=>q.linkType===u&&q.direction===s);return l.length?l.map(q=>q.node.id).join(","):""},y=(e,r,i)=>{if(!i[e]?.[r])return 0;let u=0;return(e===0||!i[e-1]?.[r])&&(u|=1),i[e]?.[r+1]||(u|=2),i[e+1]?.[r]||(u|=4),(r===0||!i[e]?.[r-1])&&(u|=8),u},h=e=>{const r=[];return e&1&&r.push("shadow-top"),e&2&&r.push("shadow-right"),e&4&&r.push("shadow-bottom"),e&8&&r.push("shadow-left"),r},o=(e,r)=>r.get(a.parseRowId(e));exports.BorderPosition=n;exports.getBorderClasses=h;exports.getCellBorders=y;exports.getCellId=f;exports.getCellValue=c;exports.getEntityDataById=o;exports.getLinkEntityIdsByColumnId=g;exports.parseCellId=p;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("react-toastify");require("lodash");require("uuid");require("../../../util/pubsub.cjs.js");require("../context/CellEditingContext.cjs.js");require("../../../../../_virtual/jsx-runtime.cjs.js");require("react");require("@ynput/ayon-react-components");require("short-uuid");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.cjs.js");require("../widgets/TextWidget.cjs.js");require("../widgets/BooleanWidget.cjs.js");require("../widgets/CellWidget.cjs.js");require("../widgets/EntityNameWidget.cjs.js");require("../widgets/GroupHeaderWidget.cjs.js");require("../widgets/ThumbnailWidget.cjs.js");require("../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("clsx");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("react-dom");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/Chips/Chips.cjs.js");require("date-fns");require("../../../components/DateRangePicker/DateRangePicker.styled.cjs.js");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/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/updateTasks.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/DoneCheckbox/DoneCheckbox.cjs.js");require("../../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/SubtasksModulesContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../Feed/components/ActivityDate.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("../../DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("@tanstack/react-virtual");require("../ProjectTreeTable.styled.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../context/SelectionCellsContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../context/SelectedRowsContext.cjs.js");require("../context/ColumnSettingsContext.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");require("../context/ProjectTableContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../context/DetailsPanelEntityContext.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("../../SimpleTable/SimpleTable.styled.cjs.js");require("@tanstack/match-sorter-utils");require("../../SimpleTable/context/SimpleTableContext.cjs.js");require("../../SimpleTable/SimpleTableRowTemplate.cjs.js");require("../../Slicer/hooks/useTableDataBySlice.cjs.js");require("../../Slicer/components/SlicerSearch.cjs.js");require("../../Slicer/context/SlicerContext.cjs.js");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../../DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("axios");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/SizeSlider/SizeSlider.cjs.js");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/SearchFilter/filterDates.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/SortingSetting/SortingSetting.styled.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/Menu/Menu.styled.cjs.js");require("../../../components/Menu/MenuItem.cjs.js");require("../widgets/EmptyWidget.cjs.js");require("../widgets/ErrorWidget.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");const a=require("../context/ProjectTableProvider.cjs.js");var n=(e=>(e[e.None=0]="None",e[e.Top=1]="Top",e[e.Right=2]="Right",e[e.Bottom=4]="Bottom",e[e.Left=8]="Left",e[e.All=15]="All",e))(n||{});const f=(e,r)=>`cell-${e}-${r}`,p=e=>{const r=e.match(/^cell-(.+)-(.+)$/);return r?{rowId:r[1],colId:r[2]}:null},c=(e,r)=>{if(!e||!r)return;const i=r.split("_");let u=e;for(const t of i)if(u&&typeof u=="object"&&t in u)u=u[t];else return;return u},g=(e,r)=>{const[i,u,t,m,s]=r.split("_"),l=e.filter(q=>q.linkType===u&&q.direction===s);return l.length?l.map(q=>q.node.id).join(","):""},y=(e,r,i)=>{if(!i[e]?.[r])return 0;let u=0;return(e===0||!i[e-1]?.[r])&&(u|=1),i[e]?.[r+1]||(u|=2),i[e+1]?.[r]||(u|=4),(r===0||!i[e]?.[r-1])&&(u|=8),u},h=e=>{const r=[];return e&1&&r.push("shadow-top"),e&2&&r.push("shadow-right"),e&4&&r.push("shadow-bottom"),e&8&&r.push("shadow-left"),r},o=(e,r)=>r.get(a.parseRowId(e));exports.BorderPosition=n;exports.getBorderClasses=h;exports.getCellBorders=y;exports.getCellId=f;exports.getCellValue=c;exports.getEntityDataById=o;exports.getLinkEntityIdsByColumnId=g;exports.parseCellId=p;
2
2
  //# sourceMappingURL=cellUtils.cjs.js.map