@ynput/ayon-frontend-shared 0.3.43 → 0.3.44

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 (1025) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +34 -30
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +232 -219
  6. package/dist/ProjectTreeTable.es.js.map +1 -1
  7. package/dist/Slicer.cjs.js +1 -1
  8. package/dist/Slicer.es.js +29 -26
  9. package/dist/Slicer.es.js.map +1 -1
  10. package/dist/_virtual/index.cjs15.js +1 -1
  11. package/dist/_virtual/index.cjs19.js +1 -1
  12. package/dist/_virtual/index.cjs22.js +1 -1
  13. package/dist/_virtual/index.cjs23.js +1 -1
  14. package/dist/_virtual/index.cjs24.js +1 -1
  15. package/dist/_virtual/index.es15.js +2 -2
  16. package/dist/_virtual/index.es16.js +2 -2
  17. package/dist/_virtual/index.es17.js +2 -2
  18. package/dist/_virtual/index.es18.js +2 -2
  19. package/dist/_virtual/index.es19.js +2 -2
  20. package/dist/_virtual/index.es22.js +3 -3
  21. package/dist/_virtual/index.es23.js +5 -5
  22. package/dist/_virtual/index.es24.js +5 -5
  23. package/dist/api.cjs.js +1 -1
  24. package/dist/api.es.js +349 -330
  25. package/dist/api.es.js.map +1 -1
  26. package/dist/components.cjs.js +1 -1
  27. package/dist/components.es.js +149 -144
  28. package/dist/components.es.js.map +1 -1
  29. package/dist/index.cjs.js +1 -1
  30. package/dist/index.es.js +21 -17
  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/@module-federation/runtime-core/dist/plugins/snapshot/index.cjs.js +1 -1
  39. package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.es.js +1 -1
  40. package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.cjs.js +1 -1
  41. package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.es.js +1 -1
  42. package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.cjs.js +1 -1
  43. package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.es.js +1 -1
  44. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.cjs.js +1 -1
  45. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.es.js +1 -1
  46. package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
  47. package/dist/shared/node_modules/prop-types/index.es.js +1 -1
  48. package/dist/shared/src/api/generated/graphql.cjs.js +21 -5
  49. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  50. package/dist/shared/src/api/generated/graphql.es.js +18 -2
  51. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  52. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  53. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  54. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js +1 -1
  55. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js.map +1 -1
  56. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js +13 -10
  57. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js.map +1 -1
  58. package/dist/shared/src/api/queries/bundles/getBundles.cjs.js +2 -0
  59. package/dist/shared/src/api/queries/bundles/getBundles.cjs.js.map +1 -0
  60. package/dist/shared/src/api/queries/bundles/getBundles.es.js +65 -0
  61. package/dist/shared/src/api/queries/bundles/getBundles.es.js.map +1 -0
  62. package/dist/shared/src/api/queries/bundles/updateBundles.cjs.js +2 -0
  63. package/dist/shared/src/api/queries/bundles/updateBundles.cjs.js.map +1 -0
  64. package/dist/shared/src/api/queries/bundles/updateBundles.es.js +159 -0
  65. package/dist/shared/src/api/queries/bundles/updateBundles.es.js.map +1 -0
  66. package/dist/shared/src/api/queries/columnStats/groupCounts.cjs.js +2 -0
  67. package/dist/shared/src/api/queries/columnStats/groupCounts.cjs.js.map +1 -0
  68. package/dist/shared/src/api/queries/columnStats/groupCounts.es.js +83 -0
  69. package/dist/shared/src/api/queries/columnStats/groupCounts.es.js.map +1 -0
  70. package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js +1 -1
  71. package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js.map +1 -1
  72. package/dist/shared/src/api/queries/columnStats/metricTargets.es.js +60 -41
  73. package/dist/shared/src/api/queries/columnStats/metricTargets.es.js.map +1 -1
  74. package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js +1 -1
  75. package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js.map +1 -1
  76. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js +6 -3
  77. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js.map +1 -1
  78. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +1 -1
  79. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -1
  80. package/dist/shared/src/api/queries/entityLists/getLists.es.js +45 -42
  81. package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -1
  82. package/dist/shared/src/api/queries/entityLists/listFolders.cjs.js +1 -1
  83. package/dist/shared/src/api/queries/entityLists/listFolders.cjs.js.map +1 -1
  84. package/dist/shared/src/api/queries/entityLists/listFolders.es.js +11 -8
  85. package/dist/shared/src/api/queries/entityLists/listFolders.es.js.map +1 -1
  86. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js +1 -1
  87. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js.map +1 -1
  88. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js +5 -4
  89. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js.map +1 -1
  90. package/dist/shared/src/api/queries/folders/getFolders.cjs.js +1 -1
  91. package/dist/shared/src/api/queries/folders/getFolders.cjs.js.map +1 -1
  92. package/dist/shared/src/api/queries/folders/getFolders.es.js +6 -3
  93. package/dist/shared/src/api/queries/folders/getFolders.es.js.map +1 -1
  94. package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js +1 -1
  95. package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js.map +1 -1
  96. package/dist/shared/src/api/queries/links/getEntityLinks.es.js +5 -2
  97. package/dist/shared/src/api/queries/links/getEntityLinks.es.js.map +1 -1
  98. package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
  99. package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
  100. package/dist/shared/src/api/queries/overview/getOverview.es.js +280 -247
  101. package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
  102. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  103. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  104. package/dist/shared/src/api/queries/projectFolders/projectFolders.cjs.js +1 -1
  105. package/dist/shared/src/api/queries/projectFolders/projectFolders.cjs.js.map +1 -1
  106. package/dist/shared/src/api/queries/projectFolders/projectFolders.es.js +15 -12
  107. package/dist/shared/src/api/queries/projectFolders/projectFolders.es.js.map +1 -1
  108. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -1
  109. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js.map +1 -1
  110. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +8 -5
  111. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js.map +1 -1
  112. package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js +1 -1
  113. package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js.map +1 -1
  114. package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js +17 -14
  115. package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js.map +1 -1
  116. package/dist/shared/src/components/AttributeEditor/attributeTypeMap.cjs.js +1 -1
  117. package/dist/shared/src/components/AttributeEditor/attributeTypeMap.cjs.js.map +1 -1
  118. package/dist/shared/src/components/AttributeEditor/attributeTypeMap.es.js +11 -8
  119. package/dist/shared/src/components/AttributeEditor/attributeTypeMap.es.js.map +1 -1
  120. package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js +1 -1
  121. package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js.map +1 -1
  122. package/dist/shared/src/components/ColumnHeaderMenuUI.es.js +6 -3
  123. package/dist/shared/src/components/ColumnHeaderMenuUI.es.js.map +1 -1
  124. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
  125. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  126. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +5 -2
  127. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  128. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js +5 -5
  129. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js.map +1 -1
  130. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js +5 -2
  131. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js.map +1 -1
  132. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  133. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  134. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +11 -7
  135. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  136. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  137. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  138. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +6 -3
  139. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  140. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
  141. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
  142. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +6 -3
  143. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
  144. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.cjs.js +4 -4
  145. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.cjs.js.map +1 -1
  146. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.es.js +5 -2
  147. package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.es.js.map +1 -1
  148. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.cjs.js +1 -1
  149. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.cjs.js.map +1 -1
  150. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.es.js +5 -2
  151. package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.es.js.map +1 -1
  152. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  153. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
  154. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +6 -3
  155. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  156. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.cjs.js +1 -1
  157. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.cjs.js.map +1 -1
  158. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.es.js +5 -2
  159. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.es.js.map +1 -1
  160. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js +1 -1
  161. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js.map +1 -1
  162. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.es.js +5 -2
  163. package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.es.js.map +1 -1
  164. package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js +1 -1
  165. package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js.map +1 -1
  166. package/dist/shared/src/components/EntityIcon/EntityIcon.es.js +6 -3
  167. package/dist/shared/src/components/EntityIcon/EntityIcon.es.js.map +1 -1
  168. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  169. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  170. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +12 -8
  171. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  172. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
  173. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
  174. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +14 -10
  175. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
  176. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
  177. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
  178. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +6 -3
  179. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
  180. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  181. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  182. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +44 -40
  183. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  184. package/dist/shared/src/components/FilterErrorActions/FilterErrorActions.cjs.js +4 -0
  185. package/dist/shared/src/components/FilterErrorActions/FilterErrorActions.cjs.js.map +1 -0
  186. package/dist/shared/src/components/FilterErrorActions/FilterErrorActions.es.js +133 -0
  187. package/dist/shared/src/components/FilterErrorActions/FilterErrorActions.es.js.map +1 -0
  188. package/dist/shared/src/components/InfoMessage/InfoMessage.cjs.js +2 -0
  189. package/dist/shared/src/components/InfoMessage/InfoMessage.cjs.js.map +1 -0
  190. package/dist/shared/src/components/InfoMessage/InfoMessage.es.js +48 -0
  191. package/dist/shared/src/components/InfoMessage/InfoMessage.es.js.map +1 -0
  192. package/dist/shared/src/components/InfoMessage/InfoMessage.styled.cjs.js +77 -0
  193. package/dist/shared/src/components/InfoMessage/InfoMessage.styled.cjs.js.map +1 -0
  194. package/dist/shared/src/components/InfoMessage/InfoMessage.styled.es.js +81 -0
  195. package/dist/shared/src/components/InfoMessage/InfoMessage.styled.es.js.map +1 -0
  196. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  197. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  198. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +6 -3
  199. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  200. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
  201. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  202. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +5 -2
  203. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  204. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js +1 -1
  205. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js.map +1 -1
  206. package/dist/shared/src/components/LinksManager/LinksManager.es.js +6 -3
  207. package/dist/shared/src/components/LinksManager/LinksManager.es.js.map +1 -1
  208. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  209. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  210. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +13 -9
  211. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  212. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
  213. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
  214. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +6 -3
  215. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
  216. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js +1 -1
  217. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js.map +1 -1
  218. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js +6 -3
  219. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js.map +1 -1
  220. package/dist/shared/src/components/Menu/Menu.cjs.js +1 -1
  221. package/dist/shared/src/components/Menu/Menu.cjs.js.map +1 -1
  222. package/dist/shared/src/components/Menu/Menu.es.js +6 -3
  223. package/dist/shared/src/components/Menu/Menu.es.js.map +1 -1
  224. package/dist/shared/src/components/Menu/MenuItem.cjs.js +1 -1
  225. package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -1
  226. package/dist/shared/src/components/Menu/MenuItem.es.js +4 -1
  227. package/dist/shared/src/components/Menu/MenuItem.es.js.map +1 -1
  228. package/dist/shared/src/components/Menu/MenuList.cjs.js +1 -1
  229. package/dist/shared/src/components/Menu/MenuList.cjs.js.map +1 -1
  230. package/dist/shared/src/components/Menu/MenuList.es.js +24 -21
  231. package/dist/shared/src/components/Menu/MenuList.es.js.map +1 -1
  232. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +1 -1
  233. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
  234. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +6 -3
  235. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
  236. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  237. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  238. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +6 -3
  239. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  240. package/dist/shared/src/components/Powerpack/useFreeTrialLink.cjs.js +1 -1
  241. package/dist/shared/src/components/Powerpack/useFreeTrialLink.cjs.js.map +1 -1
  242. package/dist/shared/src/components/Powerpack/useFreeTrialLink.es.js +5 -2
  243. package/dist/shared/src/components/Powerpack/useFreeTrialLink.es.js.map +1 -1
  244. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +1 -1
  245. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
  246. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +10 -6
  247. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
  248. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
  249. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  250. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +11 -7
  251. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  252. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  253. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  254. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +6 -3
  255. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  256. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
  257. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
  258. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +13 -9
  259. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
  260. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
  261. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
  262. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +13 -9
  263. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
  264. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  265. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  266. package/dist/shared/src/components/RenameForm/RenameForm.es.js +13 -9
  267. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  268. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
  269. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  270. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +5 -2
  271. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  272. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  273. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  274. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +14 -10
  275. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  276. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  277. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  278. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +15 -11
  279. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  280. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  281. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  282. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +14 -10
  283. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  284. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
  285. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  286. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +5 -2
  287. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  288. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
  289. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
  290. package/dist/shared/src/components/ReviewablesSelector/Card.es.js +14 -10
  291. package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
  292. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  293. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  294. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +112 -109
  295. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  296. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +1 -1
  297. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
  298. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +6 -3
  299. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
  300. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
  301. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
  302. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +16 -12
  303. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
  304. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +2 -2
  305. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  306. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +32 -20
  307. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  308. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js +1 -1
  309. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js.map +1 -1
  310. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js +5 -2
  311. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js.map +1 -1
  312. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +1 -1
  313. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
  314. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +6 -3
  315. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
  316. package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js +1 -1
  317. package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js.map +1 -1
  318. package/dist/shared/src/components/Thumbnail/Thumbnail.es.js +5 -2
  319. package/dist/shared/src/components/Thumbnail/Thumbnail.es.js.map +1 -1
  320. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js +1 -1
  321. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js.map +1 -1
  322. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js +5 -2
  323. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js.map +1 -1
  324. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  325. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  326. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +13 -9
  327. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  328. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  329. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  330. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +42 -37
  331. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  332. package/dist/shared/src/components/VersionUploader/context/VersionUploadContextInstance.cjs.js +2 -0
  333. package/dist/shared/src/components/VersionUploader/context/VersionUploadContextInstance.cjs.js.map +1 -0
  334. package/dist/shared/src/components/VersionUploader/context/VersionUploadContextInstance.es.js +6 -0
  335. package/dist/shared/src/components/VersionUploader/context/VersionUploadContextInstance.es.js.map +1 -0
  336. package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
  337. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  338. package/dist/shared/src/components/Watchers/Watchers.es.js +5 -2
  339. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  340. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  341. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  342. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +14 -10
  343. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  344. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  345. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  346. package/dist/shared/src/containers/Actions/Actions.es.js +117 -102
  347. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  348. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js +2 -2
  349. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js.map +1 -1
  350. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.es.js +47 -46
  351. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.es.js.map +1 -1
  352. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  353. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  354. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +14 -10
  355. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  356. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  357. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  358. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +14 -10
  359. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  360. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  361. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  362. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +14 -10
  363. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  364. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  365. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  366. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +14 -10
  367. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  368. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  369. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  370. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +14 -10
  371. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  372. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.cjs.js +1 -1
  373. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.cjs.js.map +1 -1
  374. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.es.js +6 -3
  375. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.es.js.map +1 -1
  376. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
  377. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
  378. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +14 -10
  379. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
  380. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js +2 -2
  381. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js.map +1 -1
  382. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.es.js +5 -2
  383. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.es.js.map +1 -1
  384. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
  385. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
  386. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +13 -9
  387. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js.map +1 -1
  388. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  389. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  390. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +6 -3
  391. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  392. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
  393. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
  394. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +25 -21
  395. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
  396. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
  397. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
  398. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +14 -10
  399. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
  400. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
  401. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
  402. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +14 -10
  403. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
  404. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
  405. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
  406. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +6 -3
  407. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
  408. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js +1 -1
  409. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js.map +1 -1
  410. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js +5 -2
  411. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js.map +1 -1
  412. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  413. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  414. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +6 -3
  415. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  416. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +2 -2
  417. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  418. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +74 -68
  419. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  420. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  421. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  422. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +14 -10
  423. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  424. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  425. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  426. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +14 -10
  427. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  428. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  429. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  430. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +14 -10
  431. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  432. package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.cjs.js +1 -1
  433. package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.cjs.js.map +1 -1
  434. package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.es.js +5 -2
  435. package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.es.js.map +1 -1
  436. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  437. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  438. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +6 -3
  439. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  440. package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.cjs.js +1 -1
  441. package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.cjs.js.map +1 -1
  442. package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.es.js +7 -4
  443. package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.es.js.map +1 -1
  444. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  445. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  446. package/dist/shared/src/containers/Feed/Feed.es.js +24 -21
  447. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  448. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
  449. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
  450. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +14 -10
  451. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
  452. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  453. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  454. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +14 -10
  455. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  456. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  457. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  458. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +14 -10
  459. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  460. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.cjs.js +1 -1
  461. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.cjs.js.map +1 -1
  462. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.es.js +5 -2
  463. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.es.js.map +1 -1
  464. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js +1 -1
  465. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js.map +1 -1
  466. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js +16 -12
  467. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js.map +1 -1
  468. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
  469. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
  470. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +6 -3
  471. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
  472. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
  473. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  474. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +15 -10
  475. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  476. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
  477. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
  478. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +18 -14
  479. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
  480. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -1
  481. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
  482. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +6 -3
  483. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
  484. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.cjs.js +1 -1
  485. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.cjs.js.map +1 -1
  486. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.es.js +5 -2
  487. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.es.js.map +1 -1
  488. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
  489. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
  490. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +6 -3
  491. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
  492. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js +1 -1
  493. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js.map +1 -1
  494. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js +6 -3
  495. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js.map +1 -1
  496. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
  497. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
  498. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +6 -3
  499. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
  500. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  501. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  502. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +14 -10
  503. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  504. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js +1 -1
  505. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js.map +1 -1
  506. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js +5 -2
  507. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js.map +1 -1
  508. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  509. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  510. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +9 -6
  511. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  512. package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.cjs.js +1 -1
  513. package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.cjs.js.map +1 -1
  514. package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.es.js +5 -2
  515. package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.es.js.map +1 -1
  516. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js +1 -1
  517. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js.map +1 -1
  518. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js +5 -2
  519. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js.map +1 -1
  520. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  521. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  522. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +5 -2
  523. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  524. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.cjs.js +1 -1
  525. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.cjs.js.map +1 -1
  526. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.es.js +5 -2
  527. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.es.js.map +1 -1
  528. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.cjs.js +1 -1
  529. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.cjs.js.map +1 -1
  530. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.es.js +5 -2
  531. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.es.js.map +1 -1
  532. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.cjs.js +1 -1
  533. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.cjs.js.map +1 -1
  534. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.es.js +5 -2
  535. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.es.js.map +1 -1
  536. package/dist/shared/src/containers/ListTable/ListTable.cjs.js +1 -1
  537. package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
  538. package/dist/shared/src/containers/ListTable/ListTable.es.js +184 -171
  539. package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
  540. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
  541. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
  542. package/dist/shared/src/containers/ListTable/ListTableCell.es.js +11 -7
  543. package/dist/shared/src/containers/ListTable/ListTableCell.es.js.map +1 -1
  544. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js +1 -1
  545. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js.map +1 -1
  546. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js +19 -15
  547. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
  548. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  549. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  550. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +797 -757
  551. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  552. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js +15 -1
  553. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js.map +1 -1
  554. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js +16 -0
  555. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js.map +1 -1
  556. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  557. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  558. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +77 -72
  559. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  560. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
  561. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
  562. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +13 -9
  563. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
  564. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  565. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  566. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +15 -11
  567. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  568. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  569. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  570. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +14 -10
  571. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  572. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.cjs.js +13 -6
  573. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.cjs.js.map +1 -1
  574. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.es.js +58 -44
  575. package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.es.js.map +1 -1
  576. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  577. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  578. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +9 -5
  579. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  580. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +5 -5
  581. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  582. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +94 -88
  583. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  584. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
  585. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
  586. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +10 -6
  587. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
  588. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  589. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  590. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +17 -13
  591. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  592. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContextInstance.cjs.js +2 -0
  593. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContextInstance.cjs.js.map +1 -0
  594. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContextInstance.es.js +6 -0
  595. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContextInstance.es.js.map +1 -0
  596. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js +1 -1
  597. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
  598. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js +338 -7
  599. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
  600. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContextInstance.cjs.js +2 -0
  601. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContextInstance.cjs.js.map +1 -0
  602. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContextInstance.es.js +6 -0
  603. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContextInstance.es.js.map +1 -0
  604. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  605. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  606. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +124 -120
  607. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  608. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.cjs.js +1 -1
  609. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.cjs.js.map +1 -1
  610. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.es.js +5 -2
  611. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.es.js.map +1 -1
  612. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
  613. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  614. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +6 -3
  615. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  616. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  617. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  618. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +158 -130
  619. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  620. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  621. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  622. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +11 -7
  623. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  624. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  625. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  626. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +8 -4
  627. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  628. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  629. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  630. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +9 -5
  631. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  632. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  633. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  634. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +9 -5
  635. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  636. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
  637. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
  638. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +9 -5
  639. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
  640. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  641. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  642. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +446 -237
  643. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  644. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  645. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  646. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +9 -5
  647. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  648. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  649. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  650. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +9 -5
  651. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  652. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupCounts.cjs.js +2 -0
  653. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupCounts.cjs.js.map +1 -0
  654. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupCounts.es.js +141 -0
  655. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupCounts.es.js.map +1 -0
  656. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  657. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  658. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +8 -4
  659. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  660. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  661. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  662. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +8 -4
  663. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  664. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  665. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  666. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +9 -5
  667. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  668. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  669. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  670. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +11 -7
  671. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  672. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
  673. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
  674. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +9 -5
  675. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
  676. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js +1 -1
  677. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js.map +1 -1
  678. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js +6 -3
  679. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js.map +1 -1
  680. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  681. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  682. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +21 -18
  683. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  684. package/dist/shared/src/containers/ProjectTreeTable/utils/filterError.cjs.js +2 -0
  685. package/dist/shared/src/containers/ProjectTreeTable/utils/filterError.cjs.js.map +1 -0
  686. package/dist/shared/src/containers/ProjectTreeTable/utils/filterError.es.js +30 -0
  687. package/dist/shared/src/containers/ProjectTreeTable/utils/filterError.es.js.map +1 -0
  688. package/dist/shared/src/containers/ProjectTreeTable/utils/getFolderIdsToQueryFromExpanded.cjs.js +2 -0
  689. package/dist/shared/src/containers/ProjectTreeTable/utils/getFolderIdsToQueryFromExpanded.cjs.js.map +1 -0
  690. package/dist/shared/src/containers/ProjectTreeTable/utils/getFolderIdsToQueryFromExpanded.es.js +22 -0
  691. package/dist/shared/src/containers/ProjectTreeTable/utils/getFolderIdsToQueryFromExpanded.es.js.map +1 -0
  692. package/dist/shared/src/containers/ProjectTreeTable/utils/getGroupQueries.cjs.js +2 -0
  693. package/dist/shared/src/containers/ProjectTreeTable/utils/getGroupQueries.cjs.js.map +1 -0
  694. package/dist/shared/src/containers/ProjectTreeTable/utils/getGroupQueries.es.js +36 -0
  695. package/dist/shared/src/containers/ProjectTreeTable/utils/getGroupQueries.es.js.map +1 -0
  696. package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.cjs.js +1 -1
  697. package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.cjs.js.map +1 -1
  698. package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.es.js +4 -5
  699. package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.es.js.map +1 -1
  700. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
  701. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  702. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +14 -10
  703. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  704. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +1 -1
  705. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  706. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +12 -8
  707. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  708. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js +1 -1
  709. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js.map +1 -1
  710. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js +14 -10
  711. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js.map +1 -1
  712. package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js +10 -10
  713. package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js.map +1 -1
  714. package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.es.js +36 -32
  715. package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.es.js.map +1 -1
  716. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +2 -2
  717. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  718. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +22 -18
  719. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  720. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js +1 -1
  721. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js.map +1 -1
  722. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js +6 -3
  723. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js.map +1 -1
  724. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  725. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  726. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +12 -8
  727. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  728. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
  729. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
  730. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +9 -5
  731. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
  732. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js +1 -1
  733. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js.map +1 -1
  734. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js +6 -3
  735. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js.map +1 -1
  736. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js +1 -1
  737. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js.map +1 -1
  738. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js +5 -2
  739. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js.map +1 -1
  740. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js +1 -1
  741. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js.map +1 -1
  742. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js +5 -2
  743. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js.map +1 -1
  744. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  745. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  746. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +71 -45
  747. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  748. package/dist/shared/src/containers/RepresentationsList/versionsToRepresentations.cjs.js +1 -1
  749. package/dist/shared/src/containers/RepresentationsList/versionsToRepresentations.cjs.js.map +1 -1
  750. package/dist/shared/src/containers/RepresentationsList/versionsToRepresentations.es.js +11 -10
  751. package/dist/shared/src/containers/RepresentationsList/versionsToRepresentations.es.js.map +1 -1
  752. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  753. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  754. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +271 -205
  755. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  756. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.cjs.js +83 -5
  757. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.cjs.js.map +1 -1
  758. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.es.js +89 -11
  759. package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.es.js.map +1 -1
  760. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js +1 -1
  761. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js.map +1 -1
  762. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js +149 -97
  763. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js.map +1 -1
  764. package/dist/shared/src/containers/SimpleTable/hooks/useRowKeydown.cjs.js +1 -1
  765. package/dist/shared/src/containers/SimpleTable/hooks/useRowKeydown.cjs.js.map +1 -1
  766. package/dist/shared/src/containers/SimpleTable/hooks/useRowKeydown.es.js +14 -10
  767. package/dist/shared/src/containers/SimpleTable/hooks/useRowKeydown.es.js.map +1 -1
  768. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js +1 -1
  769. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js.map +1 -1
  770. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js +6 -3
  771. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js.map +1 -1
  772. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
  773. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
  774. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +14 -10
  775. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
  776. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +1 -1
  777. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -1
  778. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +19 -16
  779. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
  780. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js +1 -1
  781. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js.map +1 -1
  782. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js +6 -3
  783. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
  784. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js +1 -1
  785. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js.map +1 -1
  786. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js +6 -3
  787. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js.map +1 -1
  788. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
  789. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
  790. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +13 -9
  791. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
  792. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js +1 -1
  793. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js.map +1 -1
  794. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js +6 -3
  795. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -1
  796. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.cjs.js +1 -1
  797. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.cjs.js.map +1 -1
  798. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.es.js +6 -3
  799. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.es.js.map +1 -1
  800. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.cjs.js +1 -1
  801. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.cjs.js.map +1 -1
  802. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.es.js +6 -3
  803. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.es.js.map +1 -1
  804. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.cjs.js +1 -1
  805. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.cjs.js.map +1 -1
  806. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.es.js +6 -3
  807. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.es.js.map +1 -1
  808. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
  809. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
  810. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +6 -3
  811. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
  812. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +1 -1
  813. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -1
  814. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +5 -2
  815. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -1
  816. package/dist/shared/src/containers/Views/ViewItem/ViewItem.cjs.js +1 -1
  817. package/dist/shared/src/containers/Views/ViewItem/ViewItem.cjs.js.map +1 -1
  818. package/dist/shared/src/containers/Views/ViewItem/ViewItem.es.js +5 -2
  819. package/dist/shared/src/containers/Views/ViewItem/ViewItem.es.js.map +1 -1
  820. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  821. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  822. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +6 -3
  823. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  824. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
  825. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
  826. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +13 -9
  827. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
  828. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +1 -1
  829. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
  830. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +6 -3
  831. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
  832. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  833. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  834. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +23 -20
  835. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  836. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js +1 -1
  837. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js.map +1 -1
  838. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js +5 -2
  839. package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js.map +1 -1
  840. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js +1 -1
  841. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js.map +1 -1
  842. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js +5 -2
  843. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js.map +1 -1
  844. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js +1 -1
  845. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js.map +1 -1
  846. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js +5 -2
  847. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js.map +1 -1
  848. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  849. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  850. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +9 -6
  851. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  852. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
  853. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
  854. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +5 -2
  855. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
  856. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
  857. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
  858. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +5 -2
  859. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
  860. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  861. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  862. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +5 -2
  863. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  864. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  865. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  866. package/dist/shared/src/context/AddonProjectContext.es.js +7 -4
  867. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  868. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  869. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  870. package/dist/shared/src/context/DetailsPanelContext.es.js +20 -17
  871. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  872. package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
  873. package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
  874. package/dist/shared/src/context/GlobalContext.es.js +7 -4
  875. package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
  876. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  877. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  878. package/dist/shared/src/context/PowerpackContext.es.js +10 -7
  879. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  880. package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
  881. package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
  882. package/dist/shared/src/context/ProjectContext.es.js +16 -13
  883. package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
  884. package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
  885. package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
  886. package/dist/shared/src/context/ProjectFoldersContext.es.js +36 -32
  887. package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
  888. package/dist/shared/src/context/ProjectFoldersContextInstance.cjs.js +2 -0
  889. package/dist/shared/src/context/ProjectFoldersContextInstance.cjs.js.map +1 -0
  890. package/dist/shared/src/context/ProjectFoldersContextInstance.es.js +8 -0
  891. package/dist/shared/src/context/ProjectFoldersContextInstance.es.js.map +1 -0
  892. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  893. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  894. package/dist/shared/src/context/RemoteModulesContext.es.js +7 -4
  895. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  896. package/dist/shared/src/context/SubtasksModulesContext.cjs.js +1 -1
  897. package/dist/shared/src/context/SubtasksModulesContext.cjs.js.map +1 -1
  898. package/dist/shared/src/context/SubtasksModulesContext.es.js +8 -5
  899. package/dist/shared/src/context/SubtasksModulesContext.es.js.map +1 -1
  900. package/dist/shared/src/context/UriContext.cjs.js +1 -1
  901. package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
  902. package/dist/shared/src/context/UriContext.es.js +8 -5
  903. package/dist/shared/src/context/UriContext.es.js.map +1 -1
  904. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  905. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  906. package/dist/shared/src/context/WebsocketContext.es.js +16 -12
  907. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  908. package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
  909. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  910. package/dist/shared/src/hooks/useActionTriggers.es.js +5 -2
  911. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  912. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  913. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  914. package/dist/shared/src/hooks/useEntityUpdate.es.js +6 -3
  915. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  916. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js +1 -1
  917. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
  918. package/dist/shared/src/hooks/useGetEntityGroups.es.js +5 -2
  919. package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
  920. package/dist/shared/src/hooks/useGetProductionAddon.cjs.js +1 -1
  921. package/dist/shared/src/hooks/useGetProductionAddon.cjs.js.map +1 -1
  922. package/dist/shared/src/hooks/useGetProductionAddon.es.js +5 -2
  923. package/dist/shared/src/hooks/useGetProductionAddon.es.js.map +1 -1
  924. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
  925. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
  926. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +15 -21
  927. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
  928. package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
  929. package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
  930. package/dist/shared/src/hooks/useHierarchyTable.es.js +5 -2
  931. package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
  932. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js +1 -1
  933. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js.map +1 -1
  934. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js +5 -2
  935. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js.map +1 -1
  936. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
  937. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  938. package/dist/shared/src/hooks/useScopedStatuses.es.js +7 -4
  939. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  940. package/dist/shared/src/hooks/useScopedTypes.cjs.js +1 -1
  941. package/dist/shared/src/hooks/useScopedTypes.cjs.js.map +1 -1
  942. package/dist/shared/src/hooks/useScopedTypes.es.js +5 -2
  943. package/dist/shared/src/hooks/useScopedTypes.es.js.map +1 -1
  944. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  945. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  946. package/dist/shared/src/hooks/useUserProjectConfig.es.js +6 -3
  947. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  948. package/dist/shared/src/util/getBundleMode.cjs.js +1 -1
  949. package/dist/shared/src/util/getBundleMode.cjs.js.map +1 -1
  950. package/dist/shared/src/util/getBundleMode.es.js +6 -3
  951. package/dist/shared/src/util/getBundleMode.es.js.map +1 -1
  952. package/dist/shared/src/util/replaceRoot.cjs.js +2 -0
  953. package/dist/shared/src/util/replaceRoot.cjs.js.map +1 -0
  954. package/dist/shared/src/util/replaceRoot.es.js +11 -0
  955. package/dist/shared/src/util/replaceRoot.es.js.map +1 -0
  956. package/dist/types/api/generated/graphql.d.ts +20 -0
  957. package/dist/types/api/generated/graphqlLinks.d.ts +1 -0
  958. package/dist/types/api/queries/activities/getActivities.d.ts +6 -0
  959. package/dist/types/api/queries/bundles/getBundles.d.ts +951 -0
  960. package/dist/types/api/queries/bundles/index.d.ts +2 -0
  961. package/dist/types/api/queries/bundles/updateBundles.d.ts +1027 -0
  962. package/dist/types/api/queries/columnStats/groupCounts.d.ts +17 -0
  963. package/dist/types/api/queries/columnStats/index.d.ts +1 -0
  964. package/dist/types/api/queries/columnStats/metricTargets.d.ts +8 -1
  965. package/dist/types/api/queries/entities/getEntity.d.ts +3 -0
  966. package/dist/types/api/queries/entities/getEntityPanel.d.ts +3 -0
  967. package/dist/types/api/queries/entities/updateEntity.d.ts +3 -0
  968. package/dist/types/api/queries/entityLists/getLists.d.ts +3 -0
  969. package/dist/types/api/queries/index.d.ts +1 -0
  970. package/dist/types/api/queries/overview/getOverview.d.ts +95 -38
  971. package/dist/types/api/queries/project/getProject.d.ts +3 -0
  972. package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +3 -0
  973. package/dist/types/api/queries/users/getUsers.d.ts +3 -0
  974. package/dist/types/api/queries/versions/getVersionsProducts.d.ts +6 -0
  975. package/dist/types/components/Feedback/FeedbackContext.d.ts +1 -0
  976. package/dist/types/components/FilterErrorActions/FilterErrorActions.d.ts +5 -0
  977. package/dist/types/components/FilterErrorActions/index.d.ts +2 -0
  978. package/dist/types/components/InfoMessage/InfoMessage.d.ts +14 -0
  979. package/dist/types/components/InfoMessage/InfoMessage.styled.d.ts +1 -0
  980. package/dist/types/components/InfoMessage/index.d.ts +3 -0
  981. package/dist/types/components/VersionUploader/context/VersionUploadContext.d.ts +1 -1
  982. package/dist/types/components/VersionUploader/context/VersionUploadContextInstance.d.ts +2 -0
  983. package/dist/types/components/index.d.ts +2 -0
  984. package/dist/types/containers/Actions/ActionsDropdown/ActionsDropdown.d.ts +2 -1
  985. package/dist/types/containers/EntityPickerDialog/EntityPickerDialog.d.ts +1 -0
  986. package/dist/types/containers/ListTable/ListTable.d.ts +1 -1
  987. package/dist/types/containers/ListTable/ListTable.types.d.ts +4 -1
  988. package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +2 -1
  989. package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.styled.d.ts +1 -0
  990. package/dist/types/containers/ProjectTreeTable/components/TableFooterRow.d.ts +1 -0
  991. package/dist/types/containers/ProjectTreeTable/context/ProjectDataContextInstance.d.ts +2 -0
  992. package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +88 -6
  993. package/dist/types/containers/ProjectTreeTable/context/ProjectTableContextInstance.d.ts +2 -0
  994. package/dist/types/containers/ProjectTreeTable/context/index.d.ts +0 -1
  995. package/dist/types/containers/ProjectTreeTable/hooks/index.d.ts +1 -0
  996. package/dist/types/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.d.ts +5 -2
  997. package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +7 -2
  998. package/dist/types/containers/ProjectTreeTable/hooks/useGroupCounts.d.ts +39 -0
  999. package/dist/types/containers/ProjectTreeTable/types/index.d.ts +6 -0
  1000. package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +7 -2
  1001. package/dist/types/containers/ProjectTreeTable/utils/filterError.d.ts +11 -0
  1002. package/dist/types/containers/ProjectTreeTable/utils/getFolderIdsToQueryFromExpanded.d.ts +3 -0
  1003. package/dist/types/containers/ProjectTreeTable/utils/getGroupQueries.d.ts +17 -0
  1004. package/dist/types/containers/ProjectTreeTable/utils/index.d.ts +2 -0
  1005. package/dist/types/containers/ProjectTreeTable/utils/pinningUtils.d.ts +0 -1
  1006. package/dist/types/containers/ProjectTreeTable/widgets/GroupHeaderWidget.d.ts +2 -1
  1007. package/dist/types/containers/RepresentationsList/versionsToRepresentations.d.ts +1 -0
  1008. package/dist/types/containers/SimpleTable/SimpleTable.d.ts +1 -64
  1009. package/dist/types/containers/SimpleTable/SimpleTable.types.d.ts +79 -0
  1010. package/dist/types/containers/SimpleTable/SimpleTableRowTemplate.d.ts +13 -1
  1011. package/dist/types/containers/SimpleTable/hooks/useRowKeydown.d.ts +2 -1
  1012. package/dist/types/containers/SimpleTable/index.d.ts +1 -0
  1013. package/dist/types/context/ProjectFoldersContextInstance.d.ts +2 -0
  1014. package/dist/types/hooks/useGroupByRemoteModules.d.ts +0 -17
  1015. package/dist/types/util/index.d.ts +1 -0
  1016. package/dist/types/util/replaceRoot.d.ts +1 -0
  1017. package/dist/util.cjs.js +1 -1
  1018. package/dist/util.es.js +21 -19
  1019. package/dist/util.es.js.map +1 -1
  1020. package/package.json +1 -1
  1021. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +0 -2
  1022. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +0 -1
  1023. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +0 -326
  1024. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +0 -1
  1025. package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +0 -81
@@ -1 +1 @@
1
- {"version":3,"file":"CellEditingProvider.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/CellEditingProvider.tsx"],"sourcesContent":["import { ReactNode, useCallback, useEffect, useMemo, useRef, useState } from 'react'\nimport { CellId, getTypeDefaultValue, parseCellId } from '../utils'\nimport useHistory from '../hooks/useHistory'\nimport { useSelectionCellsContext } from './SelectionCellsContext'\nimport useUpdateTableData, {\n EntityUpdate,\n InheritFromParentEntity,\n UpdateTableEntities,\n} from '../hooks/useUpdateTableData'\nimport { useProjectTableContext } from './ProjectTableContext'\nimport { useProjectContext } from '@shared/context'\nimport { useUpdateSubtasksMutation } from '@shared/api'\nimport validateUpdateEntities from '../utils/validateUpdateEntities'\nimport { toast } from 'react-toastify'\nimport { CellEditingContext } from './CellEditingContext'\n\nexport const CellEditingProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [editingCellId, setEditingCellIdRaw] = useState<CellId | null>(null)\n\n // Ref-based draft storage to persist editing content across unmount/remount cycles\n const editingDraftRef = useRef<string | null>(null)\n const getEditingDraft = useCallback(() => editingDraftRef.current, [])\n const setEditingDraft = useCallback((value: string | null) => {\n editingDraftRef.current = value\n }, [])\n\n // Wrap setEditingCellId to clear draft synchronously (before next render reads it)\n const setEditingCellId = useCallback((id: CellId | null) => {\n editingDraftRef.current = null\n setEditingCellIdRaw(id)\n }, [])\n\n // Memoize these functions to prevent unnecessary re-renders\n const isEditing = useCallback((id: CellId) => id === editingCellId, [editingCellId])\n\n // Get history functions\n const history = useHistory()\n const {\n pushHistory,\n undo: undoHistory,\n redo: redoHistory,\n canUndo,\n canRedo,\n removeHistoryEntries,\n } = history\n\n const { selectedCells } = useSelectionCellsContext()\n const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateTableData({\n pushHistory,\n removeHistoryEntries,\n })\n const { attribFields, getEntityById } = useProjectTableContext()\n const { projectName } = useProjectContext()\n const [updateSubtasks] = useUpdateSubtasksMutation()\n\n const handleUpdateEntities: UpdateTableEntities = useCallback(\n async (entities = [], pushToHistory = true) => {\n try {\n // validate the entities before updating\n validateUpdateEntities(entities, attribFields)\n\n // if validation passes, update the entities\n return await updateOverviewEntities(entities, pushToHistory)\n } catch (error: any) {\n // if validation fails, show a toast and return\n toast.error(error.message)\n\n return Promise.reject(error)\n }\n },\n [updateOverviewEntities, attribFields],\n )\n\n // Handle undo\n const handleUndo = async () => {\n const [entitiesToUndo, entitiesToInherit, callbacks] = undoHistory() || []\n\n if (entitiesToUndo && entitiesToUndo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToUndo, false)\n } catch (error) {\n toast.error('Failed to undo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom undo action')\n }\n })\n }\n }\n\n // Handle redo\n const handleRedo = async () => {\n const [entitiesToRedo, entitiesToInherit, callbacks] = redoHistory() || []\n\n if (entitiesToRedo && entitiesToRedo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToRedo, false)\n } catch (error) {\n toast.error('Failed to redo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom redo action')\n }\n })\n }\n }\n\n // Handle clearing cells\n const handleClear = useCallback(\n async (cells: CellId[]) => {\n // we explicity update the value of the cells to their default values\n const entityUpdates: EntityUpdate[] = []\n // of if they are inheritable, we inherit from the parent entity\n const entityInheriting: InheritFromParentEntity[] = []\n // Track subtasks to clear (include previous subtasks for history)\n const subtasksToClear: Array<{ taskId: string; previousSubtasks?: any[] }> = []\n\n for (const cellId of cells) {\n const { colId, rowId } = parseCellId(cellId) || {}\n if (!colId || !rowId) {\n console.warn(`Invalid cellId: ${cellId}`)\n continue\n }\n\n // get the entity from the rowId\n const entity = getEntityById(rowId)\n\n if (!entity) return\n\n // get the field name and check if it is an attribute\n const fieldName = colId.replace('attrib_', '')\n const isAttrib = colId.startsWith('attrib_')\n\n if (!fieldName) {\n console.warn(`Invalid column ID: ${colId}`)\n continue\n }\n\n // Special handling for subtasks\n if (colId === 'subtasks') {\n // Only clear subtasks for tasks\n if (entity.entityType === 'task') {\n const existingSubtasks = ('subtasks' in entity && entity.subtasks) || []\n subtasksToClear.push({ taskId: rowId, previousSubtasks: existingSubtasks })\n }\n continue\n }\n\n let defaultValue: any = null\n if (isAttrib) {\n // find default value for the attribute\n const attribField = attribFields.find((f) => f.name === fieldName)\n if (!attribField) {\n console.warn(`Attribute field not found: ${fieldName}`)\n continue\n }\n // check if the attribute is inheritable\n if (attribField.data.inherit) {\n // inherit from parent entity\n // check if this entity has already been added to the inheriting list\n const existingInherit = entityInheriting.find((e) => e.entityId === entity.entityId)\n if (existingInherit) {\n // add the attrib to the existing entity\n existingInherit.attribs.push(fieldName)\n } else {\n // add a new entity to the inheriting list\n entityInheriting.push({\n entityId: entity.entityId,\n attribs: [fieldName],\n entityType: entity.entityType,\n ownAttrib: entity.ownAttrib || [],\n rowId: rowId,\n folderId:\n entity.entityType === 'folder'\n ? entity.parentId\n : entity.entityType === 'task'\n ? entity.folderId\n : undefined,\n })\n }\n continue\n } else {\n // set explicit default value\n defaultValue = attribField.data.default || getTypeDefaultValue(attribField.data.type)\n }\n } else if (fieldName === 'assignees') {\n // for assignees, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else if (fieldName === 'tags') {\n // for tags, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else {\n // we ignore other fields\n console.warn(`Field not editable: ${fieldName}`)\n continue\n }\n\n // create the entity update\n const update: EntityUpdate = {\n id: rowId,\n rowId: rowId,\n field: fieldName,\n value: defaultValue,\n isAttrib,\n type: entity.entityType,\n }\n\n entityUpdates.push(update)\n }\n\n // if we have updates, call the updateEntities function\n if (entityUpdates.length > 0) {\n try {\n await handleUpdateEntities(entityUpdates, true)\n } catch (error) {\n toast.error('Failed to clear selected cells')\n console.error('Error clearing selected cells:', error)\n }\n }\n\n // if we have inheritable attributes, call inheritFromParent\n if (entityInheriting.length > 0) {\n try {\n await inheritFromParent(entityInheriting, true)\n } catch (error) {\n toast.error('Failed to inherit parent values for cleared cells')\n console.error('Error clearing inherited cells:', error)\n }\n }\n\n // Clear subtasks by calling updateSubtasks with empty array\n if (subtasksToClear.length > 0) {\n try {\n // push undo/redo history entries for clearing subtasks\n if (pushHistory) {\n subtasksToClear.forEach(({ taskId, previousSubtasks }) => {\n const prev = previousSubtasks || []\n const undoCallback = () => {\n updateSubtasks({ projectName, taskId, subtasks: prev })\n .unwrap()\n .catch(() => {})\n }\n const redoCallback = () => {\n updateSubtasks({ projectName, taskId, subtasks: [] })\n .unwrap()\n .catch(() => {})\n }\n pushHistory([undoCallback], [redoCallback])\n })\n }\n\n const subtasksPromises = subtasksToClear.map(({ taskId }) =>\n updateSubtasks({ projectName, taskId, subtasks: [] }).unwrap(),\n )\n await Promise.all(subtasksPromises)\n } catch (error) {\n toast.error('Failed to clear subtasks')\n console.error('Error clearing subtasks:', error)\n }\n }\n\n // if nothing was done, warn the user\n if (\n entityUpdates.length === 0 &&\n entityInheriting.length === 0 &&\n subtasksToClear.length === 0\n ) {\n toast.warn('No valid cells selected to clear')\n }\n },\n [attribFields, updateOverviewEntities, projectName, updateSubtasks, pushHistory, getEntityById],\n )\n\n const value = useMemo(\n () => ({\n editingCellId,\n setEditingCellId,\n isEditing,\n updateEntities: handleUpdateEntities,\n inheritFromParent,\n undo: handleUndo,\n redo: handleRedo,\n history,\n getEditingDraft,\n setEditingDraft,\n }),\n [\n editingCellId,\n isEditing,\n handleUpdateEntities,\n inheritFromParent,\n handleUndo,\n handleRedo,\n history,\n getEditingDraft,\n setEditingDraft,\n ],\n )\n\n // Listen for shortcuts\n // undo - ctrl + z\n // redo - ctrl + y or ctrl + shift + z\n // clear - backspace or delete\n useEffect(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n if (\n target.tagName === 'INPUT' ||\n target.tagName === 'TEXTAREA' ||\n target.isContentEditable ||\n target.getAttribute('role') === 'textbox' ||\n target.tagName === 'LI'\n ) {\n return\n }\n\n // check focus is on table or body\n const isTableFocused = target?.closest('table') !== null || target === document.body\n\n if (!isTableFocused) return\n\n const isMac =\n typeof navigator !== 'undefined' &&\n // @ts-expect-error\n ((navigator.userAgentData &&\n // @ts-expect-error\n navigator.userAgentData.platform.toUpperCase().includes('MAC')) ||\n navigator.userAgent.toUpperCase().includes('MAC'))\n const ctrlKey = isMac ? e.metaKey : e.ctrlKey\n\n // undo\n if (ctrlKey && e.key === 'z') {\n e.preventDefault()\n if (canUndo) handleUndo()\n }\n // redo\n if (\n (ctrlKey && e.key === 'y') ||\n (ctrlKey && e.shiftKey && e.key === 'z') ||\n (ctrlKey && e.key === 'Z')\n ) {\n e.preventDefault()\n if (canRedo) handleRedo()\n }\n // clear\n if ((e.key === 'Backspace' && !(e.ctrlKey || e.metaKey)) || e.key === 'Delete') {\n // check we have cells selected\n if (!selectedCells.size) return\n e.preventDefault()\n\n // find selected cells elements\n const selectedCellElements = Array.from(selectedCells).map((cellId) =>\n document.getElementById(cellId),\n )\n\n // check the cell is editable from the classnames\n const isEditable = (cell: HTMLElement | null) => cell?.classList.contains('editable')\n\n // filter out non-editable cells\n const editableCells = selectedCellElements.filter(isEditable)\n if (editableCells.length === 0) {\n toast.warn('No editable cells selected to clear')\n return\n }\n // clear the selected cells\n handleClear(editableCells.map((cell) => cell?.id).filter(Boolean) as CellId[])\n }\n }\n\n document.addEventListener('keydown', onKeyDown)\n return () => document.removeEventListener('keydown', onKeyDown)\n }, [canUndo, canRedo, handleUndo, handleRedo, selectedCells, handleClear])\n\n return <CellEditingContext.Provider value={value}>{children}</CellEditingContext.Provider>\n}\n"],"names":["CellEditingProvider","children","editingCellId","setEditingCellIdRaw","useState","editingDraftRef","useRef","getEditingDraft","useCallback","setEditingDraft","value","setEditingCellId","id","isEditing","history","useHistory","pushHistory","undoHistory","redoHistory","canUndo","canRedo","removeHistoryEntries","selectedCells","useSelectionCellsContext","updateOverviewEntities","inheritFromParent","useUpdateTableData","attribFields","getEntityById","useProjectTableContext","projectName","useProjectContext","updateSubtasks","useUpdateSubtasksMutation","handleUpdateEntities","entities","pushToHistory","validateUpdateEntities","error","toast","handleUndo","entitiesToUndo","entitiesToInherit","callbacks","callback","handleRedo","entitiesToRedo","handleClear","cells","entityUpdates","entityInheriting","subtasksToClear","cellId","colId","rowId","parseCellId","entity","fieldName","isAttrib","existingSubtasks","defaultValue","attribField","f","existingInherit","e","getTypeDefaultValue","update","taskId","previousSubtasks","prev","subtasksPromises","useMemo","useEffect","onKeyDown","target","ctrlKey","selectedCellElements","isEditable","cell","editableCells","jsx","CellEditingContext"],"mappings":"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"}
1
+ {"version":3,"file":"CellEditingProvider.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/CellEditingProvider.tsx"],"sourcesContent":["import { ReactNode, useCallback, useEffect, useMemo, useRef, useState } from 'react'\nimport { CellId, getTypeDefaultValue, parseCellId } from '../utils'\nimport useHistory from '../hooks/useHistory'\nimport { useSelectionCellsContext } from './SelectionCellsContext'\nimport useUpdateTableData, {\n EntityUpdate,\n InheritFromParentEntity,\n UpdateTableEntities,\n} from '../hooks/useUpdateTableData'\nimport { useProjectTableContext } from './ProjectTableContext'\nimport { useProjectContext } from '@shared/context'\nimport { useUpdateSubtasksMutation } from '@shared/api'\nimport validateUpdateEntities from '../utils/validateUpdateEntities'\nimport { toast } from 'react-toastify'\nimport { CellEditingContext } from './CellEditingContext'\n\nexport const CellEditingProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [editingCellId, setEditingCellIdRaw] = useState<CellId | null>(null)\n\n // Ref-based draft storage to persist editing content across unmount/remount cycles\n const editingDraftRef = useRef<string | null>(null)\n const getEditingDraft = useCallback(() => editingDraftRef.current, [])\n const setEditingDraft = useCallback((value: string | null) => {\n editingDraftRef.current = value\n }, [])\n\n // Wrap setEditingCellId to clear draft synchronously (before next render reads it)\n const setEditingCellId = useCallback((id: CellId | null) => {\n editingDraftRef.current = null\n setEditingCellIdRaw(id)\n }, [])\n\n // Memoize these functions to prevent unnecessary re-renders\n const isEditing = useCallback((id: CellId) => id === editingCellId, [editingCellId])\n\n // Get history functions\n const history = useHistory()\n const {\n pushHistory,\n undo: undoHistory,\n redo: redoHistory,\n canUndo,\n canRedo,\n removeHistoryEntries,\n } = history\n\n const { selectedCells } = useSelectionCellsContext()\n const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateTableData({\n pushHistory,\n removeHistoryEntries,\n })\n const { attribFields, getEntityById } = useProjectTableContext()\n const { projectName } = useProjectContext()\n const [updateSubtasks] = useUpdateSubtasksMutation()\n\n const handleUpdateEntities: UpdateTableEntities = useCallback(\n async (entities = [], pushToHistory = true) => {\n try {\n // validate the entities before updating\n validateUpdateEntities(entities, attribFields)\n\n // if validation passes, update the entities\n return await updateOverviewEntities(entities, pushToHistory)\n } catch (error: any) {\n // if validation fails, show a toast and return\n toast.error(error.message)\n\n return Promise.reject(error)\n }\n },\n [updateOverviewEntities, attribFields],\n )\n\n // Handle undo\n const handleUndo = async () => {\n const [entitiesToUndo, entitiesToInherit, callbacks] = undoHistory() || []\n\n if (entitiesToUndo && entitiesToUndo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToUndo, false)\n } catch (error) {\n toast.error('Failed to undo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom undo action')\n }\n })\n }\n }\n\n // Handle redo\n const handleRedo = async () => {\n const [entitiesToRedo, entitiesToInherit, callbacks] = redoHistory() || []\n\n if (entitiesToRedo && entitiesToRedo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToRedo, false)\n } catch (error) {\n toast.error('Failed to redo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom redo action')\n }\n })\n }\n }\n\n // Handle clearing cells\n const handleClear = useCallback(\n async (cells: CellId[]) => {\n // we explicity update the value of the cells to their default values\n const entityUpdates: EntityUpdate[] = []\n // of if they are inheritable, we inherit from the parent entity\n const entityInheriting: InheritFromParentEntity[] = []\n // Track subtasks to clear (include previous subtasks for history)\n const subtasksToClear: Array<{ taskId: string; previousSubtasks?: any[] }> = []\n\n for (const cellId of cells) {\n const { colId, rowId } = parseCellId(cellId) || {}\n if (!colId || !rowId) {\n console.warn(`Invalid cellId: ${cellId}`)\n continue\n }\n\n // get the entity from the rowId\n const entity = getEntityById(rowId)\n\n if (!entity) return\n\n // get the field name and check if it is an attribute\n const fieldName = colId.replace('attrib_', '')\n const isAttrib = colId.startsWith('attrib_')\n\n if (!fieldName) {\n console.warn(`Invalid column ID: ${colId}`)\n continue\n }\n\n // Special handling for subtasks\n if (colId === 'subtasks') {\n // Only clear subtasks for tasks\n if (entity.entityType === 'task') {\n const existingSubtasks = ('subtasks' in entity && entity.subtasks) || []\n subtasksToClear.push({ taskId: rowId, previousSubtasks: existingSubtasks })\n }\n continue\n }\n\n let defaultValue: any = null\n if (isAttrib) {\n // find default value for the attribute\n const attribField = attribFields.find((f) => f.name === fieldName)\n if (!attribField) {\n console.warn(`Attribute field not found: ${fieldName}`)\n continue\n }\n // check if the attribute is inheritable\n if (attribField.data.inherit) {\n // inherit from parent entity\n // check if this entity has already been added to the inheriting list\n const existingInherit = entityInheriting.find((e) => e.entityId === entity.entityId)\n if (existingInherit) {\n // add the attrib to the existing entity\n existingInherit.attribs.push(fieldName)\n } else {\n // add a new entity to the inheriting list\n entityInheriting.push({\n entityId: entity.entityId,\n attribs: [fieldName],\n entityType: entity.entityType,\n ownAttrib: entity.ownAttrib || [],\n rowId: rowId,\n folderId:\n entity.entityType === 'folder'\n ? entity.parentId\n : entity.entityType === 'task'\n ? entity.folderId\n : undefined,\n })\n }\n continue\n } else {\n // set explicit default value\n defaultValue = attribField.data.default || getTypeDefaultValue(attribField.data.type)\n }\n } else if (fieldName === 'assignees') {\n // for assignees, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else if (fieldName === 'tags') {\n // for tags, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else {\n // we ignore other fields\n console.warn(`Field not editable: ${fieldName}`)\n continue\n }\n\n // create the entity update\n const update: EntityUpdate = {\n id: rowId,\n rowId: rowId,\n field: fieldName,\n value: defaultValue,\n isAttrib,\n type: entity.entityType,\n }\n\n entityUpdates.push(update)\n }\n\n // if we have updates, call the updateEntities function\n if (entityUpdates.length > 0) {\n try {\n await handleUpdateEntities(entityUpdates, true)\n } catch (error) {\n toast.error('Failed to clear selected cells')\n console.error('Error clearing selected cells:', error)\n }\n }\n\n // if we have inheritable attributes, call inheritFromParent\n if (entityInheriting.length > 0) {\n try {\n await inheritFromParent(entityInheriting, true)\n } catch (error) {\n toast.error('Failed to inherit parent values for cleared cells')\n console.error('Error clearing inherited cells:', error)\n }\n }\n\n // Clear subtasks by calling updateSubtasks with empty array\n if (subtasksToClear.length > 0) {\n try {\n // push undo/redo history entries for clearing subtasks\n if (pushHistory) {\n subtasksToClear.forEach(({ taskId, previousSubtasks }) => {\n const prev = previousSubtasks || []\n const undoCallback = () => {\n updateSubtasks({ projectName, taskId, subtasks: prev })\n .unwrap()\n .catch(() => {})\n }\n const redoCallback = () => {\n updateSubtasks({ projectName, taskId, subtasks: [] })\n .unwrap()\n .catch(() => {})\n }\n pushHistory([undoCallback], [redoCallback])\n })\n }\n\n const subtasksPromises = subtasksToClear.map(({ taskId }) =>\n updateSubtasks({ projectName, taskId, subtasks: [] }).unwrap(),\n )\n await Promise.all(subtasksPromises)\n } catch (error) {\n toast.error('Failed to clear subtasks')\n console.error('Error clearing subtasks:', error)\n }\n }\n\n // if nothing was done, warn the user\n if (\n entityUpdates.length === 0 &&\n entityInheriting.length === 0 &&\n subtasksToClear.length === 0\n ) {\n toast.warn('No valid cells selected to clear')\n }\n },\n [attribFields, updateOverviewEntities, projectName, updateSubtasks, pushHistory, getEntityById],\n )\n\n const value = useMemo(\n () => ({\n editingCellId,\n setEditingCellId,\n isEditing,\n updateEntities: handleUpdateEntities,\n inheritFromParent,\n undo: handleUndo,\n redo: handleRedo,\n history,\n getEditingDraft,\n setEditingDraft,\n }),\n [\n editingCellId,\n isEditing,\n handleUpdateEntities,\n inheritFromParent,\n handleUndo,\n handleRedo,\n history,\n getEditingDraft,\n setEditingDraft,\n ],\n )\n\n // Listen for shortcuts\n // undo - ctrl + z\n // redo - ctrl + y or ctrl + shift + z\n // clear - backspace or delete\n useEffect(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n if (\n target.tagName === 'INPUT' ||\n target.tagName === 'TEXTAREA' ||\n target.isContentEditable ||\n target.getAttribute('role') === 'textbox' ||\n target.tagName === 'LI'\n ) {\n return\n }\n\n // check focus is on table or body\n const isTableFocused = target?.closest('table') !== null || target === document.body\n\n if (!isTableFocused) return\n\n const isMac =\n typeof navigator !== 'undefined' &&\n // @ts-expect-error\n ((navigator.userAgentData &&\n // @ts-expect-error\n navigator.userAgentData.platform.toUpperCase().includes('MAC')) ||\n navigator.userAgent.toUpperCase().includes('MAC'))\n const ctrlKey = isMac ? e.metaKey : e.ctrlKey\n\n // undo\n if (ctrlKey && e.key === 'z') {\n e.preventDefault()\n if (canUndo) handleUndo()\n }\n // redo\n if (\n (ctrlKey && e.key === 'y') ||\n (ctrlKey && e.shiftKey && e.key === 'z') ||\n (ctrlKey && e.key === 'Z')\n ) {\n e.preventDefault()\n if (canRedo) handleRedo()\n }\n // clear\n if ((e.key === 'Backspace' && !(e.ctrlKey || e.metaKey)) || e.key === 'Delete') {\n // check we have cells selected\n if (!selectedCells.size) return\n e.preventDefault()\n\n // find selected cells elements\n const selectedCellElements = Array.from(selectedCells).map((cellId) =>\n document.getElementById(cellId),\n )\n\n // check the cell is editable from the classnames\n const isEditable = (cell: HTMLElement | null) => cell?.classList.contains('editable')\n\n // filter out non-editable cells\n const editableCells = selectedCellElements.filter(isEditable)\n if (editableCells.length === 0) {\n toast.warn('No editable cells selected to clear')\n return\n }\n // clear the selected cells\n handleClear(editableCells.map((cell) => cell?.id).filter(Boolean) as CellId[])\n }\n }\n\n document.addEventListener('keydown', onKeyDown)\n return () => document.removeEventListener('keydown', onKeyDown)\n }, [canUndo, canRedo, handleUndo, handleRedo, selectedCells, handleClear])\n\n return <CellEditingContext.Provider value={value}>{children}</CellEditingContext.Provider>\n}\n"],"names":["CellEditingProvider","children","editingCellId","setEditingCellIdRaw","useState","editingDraftRef","useRef","getEditingDraft","useCallback","setEditingDraft","value","setEditingCellId","id","isEditing","history","useHistory","pushHistory","undoHistory","redoHistory","canUndo","canRedo","removeHistoryEntries","selectedCells","useSelectionCellsContext","updateOverviewEntities","inheritFromParent","useUpdateTableData","attribFields","getEntityById","useProjectTableContext","projectName","useProjectContext","updateSubtasks","useUpdateSubtasksMutation","handleUpdateEntities","entities","pushToHistory","validateUpdateEntities","error","toast","handleUndo","entitiesToUndo","entitiesToInherit","callbacks","callback","handleRedo","entitiesToRedo","handleClear","cells","entityUpdates","entityInheriting","subtasksToClear","cellId","colId","rowId","parseCellId","entity","fieldName","isAttrib","existingSubtasks","defaultValue","attribField","f","existingInherit","e","getTypeDefaultValue","update","taskId","previousSubtasks","prev","subtasksPromises","useMemo","useEffect","onKeyDown","target","ctrlKey","selectedCellElements","isEditable","cell","editableCells","jsx","CellEditingContext"],"mappings":"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"}
@@ -82,8 +82,11 @@ import "../../../api/queries/addons/updateAddons.es.js";
82
82
  import "../../../api/queries/attributes/getAttributes.es.js";
83
83
  import "../../../api/queries/attributes/updateAttributes.es.js";
84
84
  import "../../../api/queries/authentication/getAuthentication.es.js";
85
+ import "../../../api/queries/bundles/getBundles.es.js";
86
+ import "../../../api/queries/bundles/updateBundles.es.js";
85
87
  import "../../../api/queries/cloud/cloud.es.js";
86
88
  import "../../../api/queries/columnStats/metricTargets.es.js";
89
+ import "../../../api/queries/columnStats/groupCounts.es.js";
87
90
  import "../../../api/queries/config/getConfig.es.js";
88
91
  import "../../../api/queries/config/updateConfig.es.js";
89
92
  import "../../../api/queries/entities/getEntity.es.js";
@@ -163,7 +166,7 @@ import "../../../context/MenuContext.es.js";
163
166
  import "../../../context/WebsocketContext.es.js";
164
167
  import "../../../context/GlobalContext.es.js";
165
168
  import { useProjectContext as Q } from "../../../context/ProjectContext.es.js";
166
- import "../../../context/ProjectFoldersContext.es.js";
169
+ import "../../../context/ProjectFoldersContextInstance.es.js";
167
170
  import "react-redux";
168
171
  import "custom-protocol-check";
169
172
  import "../components/GroupSettingsFallback.es.js";
@@ -173,6 +176,7 @@ import "../../../components/DoneCheckbox/DoneCheckbox.es.js";
173
176
  import "../../../components/EarlyPreview/EarlyPreview.es.js";
174
177
  import "../../../components/EmptyPlaceholder/EmptyPlaceholder.es.js";
175
178
  import "../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.es.js";
179
+ import "../../../components/InfoMessage/InfoMessage.es.js";
176
180
  import "@dnd-kit/core";
177
181
  import "@dnd-kit/sortable";
178
182
  import "../../../components/EnumEditor/EnumEditor.styled.es.js";
@@ -226,7 +230,7 @@ import "./ProjectTableQueriesContext.es.js";
226
230
  import "./SelectedRowsContext.es.js";
227
231
  import "./DetailsPanelEntityContext.es.js";
228
232
  import "../components/DeleteConfirmContent.es.js";
229
- import "./ProjectDataContext.es.js";
233
+ import "./ProjectDataContextInstance.es.js";
230
234
  import "../components/TableFooterRow.es.js";
231
235
  import "../../EntityPickerDialog/EntityPickerDialog.es.js";
232
236
  import "../../Slicer/components/Slicer.es.js";
@@ -285,7 +289,7 @@ import "../../../components/Thumbnail/Thumbnail.styled.es.js";
285
289
  import "../../../components/Thumbnail/StackedThumbnails.es.js";
286
290
  import "../../../components/ThumbnailSimple/ThumbnailSimple.es.js";
287
291
  import "../../../components/VersionUploader/components/UploadVersionDialog.es.js";
288
- import "../../../components/VersionUploader/context/VersionUploadContext.es.js";
292
+ import "../../../components/VersionUploader/context/VersionUploadContextInstance.es.js";
289
293
  import "../../../components/Watchers/Watchers.es.js";
290
294
  import "../../../components/Menu/Menu.styled.es.js";
291
295
  import "../../../components/Menu/MenuItem.es.js";
@@ -294,7 +298,7 @@ import "../../../components/ColumnHeaderMenuUI.es.js";
294
298
  import "../widgets/EmptyWidget.es.js";
295
299
  import "../widgets/ErrorWidget.es.js";
296
300
  import "../widgets/LoadMoreWidget.es.js";
297
- const Np = ({ children: M }) => {
301
+ const Mp = ({ children: M }) => {
298
302
  const [y, S] = W(null), w = X(null), D = d(() => w.current, []), U = d((o) => {
299
303
  w.current = o;
300
304
  }, []), _ = d((o) => {
@@ -504,6 +508,6 @@ const Np = ({ children: M }) => {
504
508
  }, [N, R, E, C, F, K]), /* @__PURE__ */ O.jsx(Y.Provider, { value: $, children: M });
505
509
  };
506
510
  export {
507
- Np as CellEditingProvider
511
+ Mp as CellEditingProvider
508
512
  };
509
513
  //# sourceMappingURL=CellEditingProvider.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CellEditingProvider.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/CellEditingProvider.tsx"],"sourcesContent":["import { ReactNode, useCallback, useEffect, useMemo, useRef, useState } from 'react'\nimport { CellId, getTypeDefaultValue, parseCellId } from '../utils'\nimport useHistory from '../hooks/useHistory'\nimport { useSelectionCellsContext } from './SelectionCellsContext'\nimport useUpdateTableData, {\n EntityUpdate,\n InheritFromParentEntity,\n UpdateTableEntities,\n} from '../hooks/useUpdateTableData'\nimport { useProjectTableContext } from './ProjectTableContext'\nimport { useProjectContext } from '@shared/context'\nimport { useUpdateSubtasksMutation } from '@shared/api'\nimport validateUpdateEntities from '../utils/validateUpdateEntities'\nimport { toast } from 'react-toastify'\nimport { CellEditingContext } from './CellEditingContext'\n\nexport const CellEditingProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [editingCellId, setEditingCellIdRaw] = useState<CellId | null>(null)\n\n // Ref-based draft storage to persist editing content across unmount/remount cycles\n const editingDraftRef = useRef<string | null>(null)\n const getEditingDraft = useCallback(() => editingDraftRef.current, [])\n const setEditingDraft = useCallback((value: string | null) => {\n editingDraftRef.current = value\n }, [])\n\n // Wrap setEditingCellId to clear draft synchronously (before next render reads it)\n const setEditingCellId = useCallback((id: CellId | null) => {\n editingDraftRef.current = null\n setEditingCellIdRaw(id)\n }, [])\n\n // Memoize these functions to prevent unnecessary re-renders\n const isEditing = useCallback((id: CellId) => id === editingCellId, [editingCellId])\n\n // Get history functions\n const history = useHistory()\n const {\n pushHistory,\n undo: undoHistory,\n redo: redoHistory,\n canUndo,\n canRedo,\n removeHistoryEntries,\n } = history\n\n const { selectedCells } = useSelectionCellsContext()\n const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateTableData({\n pushHistory,\n removeHistoryEntries,\n })\n const { attribFields, getEntityById } = useProjectTableContext()\n const { projectName } = useProjectContext()\n const [updateSubtasks] = useUpdateSubtasksMutation()\n\n const handleUpdateEntities: UpdateTableEntities = useCallback(\n async (entities = [], pushToHistory = true) => {\n try {\n // validate the entities before updating\n validateUpdateEntities(entities, attribFields)\n\n // if validation passes, update the entities\n return await updateOverviewEntities(entities, pushToHistory)\n } catch (error: any) {\n // if validation fails, show a toast and return\n toast.error(error.message)\n\n return Promise.reject(error)\n }\n },\n [updateOverviewEntities, attribFields],\n )\n\n // Handle undo\n const handleUndo = async () => {\n const [entitiesToUndo, entitiesToInherit, callbacks] = undoHistory() || []\n\n if (entitiesToUndo && entitiesToUndo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToUndo, false)\n } catch (error) {\n toast.error('Failed to undo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom undo action')\n }\n })\n }\n }\n\n // Handle redo\n const handleRedo = async () => {\n const [entitiesToRedo, entitiesToInherit, callbacks] = redoHistory() || []\n\n if (entitiesToRedo && entitiesToRedo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToRedo, false)\n } catch (error) {\n toast.error('Failed to redo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom redo action')\n }\n })\n }\n }\n\n // Handle clearing cells\n const handleClear = useCallback(\n async (cells: CellId[]) => {\n // we explicity update the value of the cells to their default values\n const entityUpdates: EntityUpdate[] = []\n // of if they are inheritable, we inherit from the parent entity\n const entityInheriting: InheritFromParentEntity[] = []\n // Track subtasks to clear (include previous subtasks for history)\n const subtasksToClear: Array<{ taskId: string; previousSubtasks?: any[] }> = []\n\n for (const cellId of cells) {\n const { colId, rowId } = parseCellId(cellId) || {}\n if (!colId || !rowId) {\n console.warn(`Invalid cellId: ${cellId}`)\n continue\n }\n\n // get the entity from the rowId\n const entity = getEntityById(rowId)\n\n if (!entity) return\n\n // get the field name and check if it is an attribute\n const fieldName = colId.replace('attrib_', '')\n const isAttrib = colId.startsWith('attrib_')\n\n if (!fieldName) {\n console.warn(`Invalid column ID: ${colId}`)\n continue\n }\n\n // Special handling for subtasks\n if (colId === 'subtasks') {\n // Only clear subtasks for tasks\n if (entity.entityType === 'task') {\n const existingSubtasks = ('subtasks' in entity && entity.subtasks) || []\n subtasksToClear.push({ taskId: rowId, previousSubtasks: existingSubtasks })\n }\n continue\n }\n\n let defaultValue: any = null\n if (isAttrib) {\n // find default value for the attribute\n const attribField = attribFields.find((f) => f.name === fieldName)\n if (!attribField) {\n console.warn(`Attribute field not found: ${fieldName}`)\n continue\n }\n // check if the attribute is inheritable\n if (attribField.data.inherit) {\n // inherit from parent entity\n // check if this entity has already been added to the inheriting list\n const existingInherit = entityInheriting.find((e) => e.entityId === entity.entityId)\n if (existingInherit) {\n // add the attrib to the existing entity\n existingInherit.attribs.push(fieldName)\n } else {\n // add a new entity to the inheriting list\n entityInheriting.push({\n entityId: entity.entityId,\n attribs: [fieldName],\n entityType: entity.entityType,\n ownAttrib: entity.ownAttrib || [],\n rowId: rowId,\n folderId:\n entity.entityType === 'folder'\n ? entity.parentId\n : entity.entityType === 'task'\n ? entity.folderId\n : undefined,\n })\n }\n continue\n } else {\n // set explicit default value\n defaultValue = attribField.data.default || getTypeDefaultValue(attribField.data.type)\n }\n } else if (fieldName === 'assignees') {\n // for assignees, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else if (fieldName === 'tags') {\n // for tags, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else {\n // we ignore other fields\n console.warn(`Field not editable: ${fieldName}`)\n continue\n }\n\n // create the entity update\n const update: EntityUpdate = {\n id: rowId,\n rowId: rowId,\n field: fieldName,\n value: defaultValue,\n isAttrib,\n type: entity.entityType,\n }\n\n entityUpdates.push(update)\n }\n\n // if we have updates, call the updateEntities function\n if (entityUpdates.length > 0) {\n try {\n await handleUpdateEntities(entityUpdates, true)\n } catch (error) {\n toast.error('Failed to clear selected cells')\n console.error('Error clearing selected cells:', error)\n }\n }\n\n // if we have inheritable attributes, call inheritFromParent\n if (entityInheriting.length > 0) {\n try {\n await inheritFromParent(entityInheriting, true)\n } catch (error) {\n toast.error('Failed to inherit parent values for cleared cells')\n console.error('Error clearing inherited cells:', error)\n }\n }\n\n // Clear subtasks by calling updateSubtasks with empty array\n if (subtasksToClear.length > 0) {\n try {\n // push undo/redo history entries for clearing subtasks\n if (pushHistory) {\n subtasksToClear.forEach(({ taskId, previousSubtasks }) => {\n const prev = previousSubtasks || []\n const undoCallback = () => {\n updateSubtasks({ projectName, taskId, subtasks: prev })\n .unwrap()\n .catch(() => {})\n }\n const redoCallback = () => {\n updateSubtasks({ projectName, taskId, subtasks: [] })\n .unwrap()\n .catch(() => {})\n }\n pushHistory([undoCallback], [redoCallback])\n })\n }\n\n const subtasksPromises = subtasksToClear.map(({ taskId }) =>\n updateSubtasks({ projectName, taskId, subtasks: [] }).unwrap(),\n )\n await Promise.all(subtasksPromises)\n } catch (error) {\n toast.error('Failed to clear subtasks')\n console.error('Error clearing subtasks:', error)\n }\n }\n\n // if nothing was done, warn the user\n if (\n entityUpdates.length === 0 &&\n entityInheriting.length === 0 &&\n subtasksToClear.length === 0\n ) {\n toast.warn('No valid cells selected to clear')\n }\n },\n [attribFields, updateOverviewEntities, projectName, updateSubtasks, pushHistory, getEntityById],\n )\n\n const value = useMemo(\n () => ({\n editingCellId,\n setEditingCellId,\n isEditing,\n updateEntities: handleUpdateEntities,\n inheritFromParent,\n undo: handleUndo,\n redo: handleRedo,\n history,\n getEditingDraft,\n setEditingDraft,\n }),\n [\n editingCellId,\n isEditing,\n handleUpdateEntities,\n inheritFromParent,\n handleUndo,\n handleRedo,\n history,\n getEditingDraft,\n setEditingDraft,\n ],\n )\n\n // Listen for shortcuts\n // undo - ctrl + z\n // redo - ctrl + y or ctrl + shift + z\n // clear - backspace or delete\n useEffect(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n if (\n target.tagName === 'INPUT' ||\n target.tagName === 'TEXTAREA' ||\n target.isContentEditable ||\n target.getAttribute('role') === 'textbox' ||\n target.tagName === 'LI'\n ) {\n return\n }\n\n // check focus is on table or body\n const isTableFocused = target?.closest('table') !== null || target === document.body\n\n if (!isTableFocused) return\n\n const isMac =\n typeof navigator !== 'undefined' &&\n // @ts-expect-error\n ((navigator.userAgentData &&\n // @ts-expect-error\n navigator.userAgentData.platform.toUpperCase().includes('MAC')) ||\n navigator.userAgent.toUpperCase().includes('MAC'))\n const ctrlKey = isMac ? e.metaKey : e.ctrlKey\n\n // undo\n if (ctrlKey && e.key === 'z') {\n e.preventDefault()\n if (canUndo) handleUndo()\n }\n // redo\n if (\n (ctrlKey && e.key === 'y') ||\n (ctrlKey && e.shiftKey && e.key === 'z') ||\n (ctrlKey && e.key === 'Z')\n ) {\n e.preventDefault()\n if (canRedo) handleRedo()\n }\n // clear\n if ((e.key === 'Backspace' && !(e.ctrlKey || e.metaKey)) || e.key === 'Delete') {\n // check we have cells selected\n if (!selectedCells.size) return\n e.preventDefault()\n\n // find selected cells elements\n const selectedCellElements = Array.from(selectedCells).map((cellId) =>\n document.getElementById(cellId),\n )\n\n // check the cell is editable from the classnames\n const isEditable = (cell: HTMLElement | null) => cell?.classList.contains('editable')\n\n // filter out non-editable cells\n const editableCells = selectedCellElements.filter(isEditable)\n if (editableCells.length === 0) {\n toast.warn('No editable cells selected to clear')\n return\n }\n // clear the selected cells\n handleClear(editableCells.map((cell) => cell?.id).filter(Boolean) as CellId[])\n }\n }\n\n document.addEventListener('keydown', onKeyDown)\n return () => document.removeEventListener('keydown', onKeyDown)\n }, [canUndo, canRedo, handleUndo, handleRedo, selectedCells, handleClear])\n\n return <CellEditingContext.Provider value={value}>{children}</CellEditingContext.Provider>\n}\n"],"names":["CellEditingProvider","children","editingCellId","setEditingCellIdRaw","useState","editingDraftRef","useRef","getEditingDraft","useCallback","setEditingDraft","value","setEditingCellId","id","isEditing","history","useHistory","pushHistory","undoHistory","redoHistory","canUndo","canRedo","removeHistoryEntries","selectedCells","useSelectionCellsContext","updateOverviewEntities","inheritFromParent","useUpdateTableData","attribFields","getEntityById","useProjectTableContext","projectName","useProjectContext","updateSubtasks","useUpdateSubtasksMutation","handleUpdateEntities","entities","pushToHistory","validateUpdateEntities","error","toast","handleUndo","entitiesToUndo","entitiesToInherit","callbacks","callback","handleRedo","entitiesToRedo","handleClear","cells","entityUpdates","entityInheriting","subtasksToClear","cellId","colId","rowId","parseCellId","entity","fieldName","isAttrib","existingSubtasks","defaultValue","attribField","f","existingInherit","e","getTypeDefaultValue","update","taskId","previousSubtasks","prev","subtasksPromises","useMemo","useEffect","onKeyDown","target","ctrlKey","selectedCellElements","isEditable","cell","editableCells","jsx","CellEditingContext"],"mappings":"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"}
1
+ {"version":3,"file":"CellEditingProvider.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/CellEditingProvider.tsx"],"sourcesContent":["import { ReactNode, useCallback, useEffect, useMemo, useRef, useState } from 'react'\nimport { CellId, getTypeDefaultValue, parseCellId } from '../utils'\nimport useHistory from '../hooks/useHistory'\nimport { useSelectionCellsContext } from './SelectionCellsContext'\nimport useUpdateTableData, {\n EntityUpdate,\n InheritFromParentEntity,\n UpdateTableEntities,\n} from '../hooks/useUpdateTableData'\nimport { useProjectTableContext } from './ProjectTableContext'\nimport { useProjectContext } from '@shared/context'\nimport { useUpdateSubtasksMutation } from '@shared/api'\nimport validateUpdateEntities from '../utils/validateUpdateEntities'\nimport { toast } from 'react-toastify'\nimport { CellEditingContext } from './CellEditingContext'\n\nexport const CellEditingProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [editingCellId, setEditingCellIdRaw] = useState<CellId | null>(null)\n\n // Ref-based draft storage to persist editing content across unmount/remount cycles\n const editingDraftRef = useRef<string | null>(null)\n const getEditingDraft = useCallback(() => editingDraftRef.current, [])\n const setEditingDraft = useCallback((value: string | null) => {\n editingDraftRef.current = value\n }, [])\n\n // Wrap setEditingCellId to clear draft synchronously (before next render reads it)\n const setEditingCellId = useCallback((id: CellId | null) => {\n editingDraftRef.current = null\n setEditingCellIdRaw(id)\n }, [])\n\n // Memoize these functions to prevent unnecessary re-renders\n const isEditing = useCallback((id: CellId) => id === editingCellId, [editingCellId])\n\n // Get history functions\n const history = useHistory()\n const {\n pushHistory,\n undo: undoHistory,\n redo: redoHistory,\n canUndo,\n canRedo,\n removeHistoryEntries,\n } = history\n\n const { selectedCells } = useSelectionCellsContext()\n const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateTableData({\n pushHistory,\n removeHistoryEntries,\n })\n const { attribFields, getEntityById } = useProjectTableContext()\n const { projectName } = useProjectContext()\n const [updateSubtasks] = useUpdateSubtasksMutation()\n\n const handleUpdateEntities: UpdateTableEntities = useCallback(\n async (entities = [], pushToHistory = true) => {\n try {\n // validate the entities before updating\n validateUpdateEntities(entities, attribFields)\n\n // if validation passes, update the entities\n return await updateOverviewEntities(entities, pushToHistory)\n } catch (error: any) {\n // if validation fails, show a toast and return\n toast.error(error.message)\n\n return Promise.reject(error)\n }\n },\n [updateOverviewEntities, attribFields],\n )\n\n // Handle undo\n const handleUndo = async () => {\n const [entitiesToUndo, entitiesToInherit, callbacks] = undoHistory() || []\n\n if (entitiesToUndo && entitiesToUndo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToUndo, false)\n } catch (error) {\n toast.error('Failed to undo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom undo action')\n }\n })\n }\n }\n\n // Handle redo\n const handleRedo = async () => {\n const [entitiesToRedo, entitiesToInherit, callbacks] = redoHistory() || []\n\n if (entitiesToRedo && entitiesToRedo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToRedo, false)\n } catch (error) {\n toast.error('Failed to redo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom redo action')\n }\n })\n }\n }\n\n // Handle clearing cells\n const handleClear = useCallback(\n async (cells: CellId[]) => {\n // we explicity update the value of the cells to their default values\n const entityUpdates: EntityUpdate[] = []\n // of if they are inheritable, we inherit from the parent entity\n const entityInheriting: InheritFromParentEntity[] = []\n // Track subtasks to clear (include previous subtasks for history)\n const subtasksToClear: Array<{ taskId: string; previousSubtasks?: any[] }> = []\n\n for (const cellId of cells) {\n const { colId, rowId } = parseCellId(cellId) || {}\n if (!colId || !rowId) {\n console.warn(`Invalid cellId: ${cellId}`)\n continue\n }\n\n // get the entity from the rowId\n const entity = getEntityById(rowId)\n\n if (!entity) return\n\n // get the field name and check if it is an attribute\n const fieldName = colId.replace('attrib_', '')\n const isAttrib = colId.startsWith('attrib_')\n\n if (!fieldName) {\n console.warn(`Invalid column ID: ${colId}`)\n continue\n }\n\n // Special handling for subtasks\n if (colId === 'subtasks') {\n // Only clear subtasks for tasks\n if (entity.entityType === 'task') {\n const existingSubtasks = ('subtasks' in entity && entity.subtasks) || []\n subtasksToClear.push({ taskId: rowId, previousSubtasks: existingSubtasks })\n }\n continue\n }\n\n let defaultValue: any = null\n if (isAttrib) {\n // find default value for the attribute\n const attribField = attribFields.find((f) => f.name === fieldName)\n if (!attribField) {\n console.warn(`Attribute field not found: ${fieldName}`)\n continue\n }\n // check if the attribute is inheritable\n if (attribField.data.inherit) {\n // inherit from parent entity\n // check if this entity has already been added to the inheriting list\n const existingInherit = entityInheriting.find((e) => e.entityId === entity.entityId)\n if (existingInherit) {\n // add the attrib to the existing entity\n existingInherit.attribs.push(fieldName)\n } else {\n // add a new entity to the inheriting list\n entityInheriting.push({\n entityId: entity.entityId,\n attribs: [fieldName],\n entityType: entity.entityType,\n ownAttrib: entity.ownAttrib || [],\n rowId: rowId,\n folderId:\n entity.entityType === 'folder'\n ? entity.parentId\n : entity.entityType === 'task'\n ? entity.folderId\n : undefined,\n })\n }\n continue\n } else {\n // set explicit default value\n defaultValue = attribField.data.default || getTypeDefaultValue(attribField.data.type)\n }\n } else if (fieldName === 'assignees') {\n // for assignees, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else if (fieldName === 'tags') {\n // for tags, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else {\n // we ignore other fields\n console.warn(`Field not editable: ${fieldName}`)\n continue\n }\n\n // create the entity update\n const update: EntityUpdate = {\n id: rowId,\n rowId: rowId,\n field: fieldName,\n value: defaultValue,\n isAttrib,\n type: entity.entityType,\n }\n\n entityUpdates.push(update)\n }\n\n // if we have updates, call the updateEntities function\n if (entityUpdates.length > 0) {\n try {\n await handleUpdateEntities(entityUpdates, true)\n } catch (error) {\n toast.error('Failed to clear selected cells')\n console.error('Error clearing selected cells:', error)\n }\n }\n\n // if we have inheritable attributes, call inheritFromParent\n if (entityInheriting.length > 0) {\n try {\n await inheritFromParent(entityInheriting, true)\n } catch (error) {\n toast.error('Failed to inherit parent values for cleared cells')\n console.error('Error clearing inherited cells:', error)\n }\n }\n\n // Clear subtasks by calling updateSubtasks with empty array\n if (subtasksToClear.length > 0) {\n try {\n // push undo/redo history entries for clearing subtasks\n if (pushHistory) {\n subtasksToClear.forEach(({ taskId, previousSubtasks }) => {\n const prev = previousSubtasks || []\n const undoCallback = () => {\n updateSubtasks({ projectName, taskId, subtasks: prev })\n .unwrap()\n .catch(() => {})\n }\n const redoCallback = () => {\n updateSubtasks({ projectName, taskId, subtasks: [] })\n .unwrap()\n .catch(() => {})\n }\n pushHistory([undoCallback], [redoCallback])\n })\n }\n\n const subtasksPromises = subtasksToClear.map(({ taskId }) =>\n updateSubtasks({ projectName, taskId, subtasks: [] }).unwrap(),\n )\n await Promise.all(subtasksPromises)\n } catch (error) {\n toast.error('Failed to clear subtasks')\n console.error('Error clearing subtasks:', error)\n }\n }\n\n // if nothing was done, warn the user\n if (\n entityUpdates.length === 0 &&\n entityInheriting.length === 0 &&\n subtasksToClear.length === 0\n ) {\n toast.warn('No valid cells selected to clear')\n }\n },\n [attribFields, updateOverviewEntities, projectName, updateSubtasks, pushHistory, getEntityById],\n )\n\n const value = useMemo(\n () => ({\n editingCellId,\n setEditingCellId,\n isEditing,\n updateEntities: handleUpdateEntities,\n inheritFromParent,\n undo: handleUndo,\n redo: handleRedo,\n history,\n getEditingDraft,\n setEditingDraft,\n }),\n [\n editingCellId,\n isEditing,\n handleUpdateEntities,\n inheritFromParent,\n handleUndo,\n handleRedo,\n history,\n getEditingDraft,\n setEditingDraft,\n ],\n )\n\n // Listen for shortcuts\n // undo - ctrl + z\n // redo - ctrl + y or ctrl + shift + z\n // clear - backspace or delete\n useEffect(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n if (\n target.tagName === 'INPUT' ||\n target.tagName === 'TEXTAREA' ||\n target.isContentEditable ||\n target.getAttribute('role') === 'textbox' ||\n target.tagName === 'LI'\n ) {\n return\n }\n\n // check focus is on table or body\n const isTableFocused = target?.closest('table') !== null || target === document.body\n\n if (!isTableFocused) return\n\n const isMac =\n typeof navigator !== 'undefined' &&\n // @ts-expect-error\n ((navigator.userAgentData &&\n // @ts-expect-error\n navigator.userAgentData.platform.toUpperCase().includes('MAC')) ||\n navigator.userAgent.toUpperCase().includes('MAC'))\n const ctrlKey = isMac ? e.metaKey : e.ctrlKey\n\n // undo\n if (ctrlKey && e.key === 'z') {\n e.preventDefault()\n if (canUndo) handleUndo()\n }\n // redo\n if (\n (ctrlKey && e.key === 'y') ||\n (ctrlKey && e.shiftKey && e.key === 'z') ||\n (ctrlKey && e.key === 'Z')\n ) {\n e.preventDefault()\n if (canRedo) handleRedo()\n }\n // clear\n if ((e.key === 'Backspace' && !(e.ctrlKey || e.metaKey)) || e.key === 'Delete') {\n // check we have cells selected\n if (!selectedCells.size) return\n e.preventDefault()\n\n // find selected cells elements\n const selectedCellElements = Array.from(selectedCells).map((cellId) =>\n document.getElementById(cellId),\n )\n\n // check the cell is editable from the classnames\n const isEditable = (cell: HTMLElement | null) => cell?.classList.contains('editable')\n\n // filter out non-editable cells\n const editableCells = selectedCellElements.filter(isEditable)\n if (editableCells.length === 0) {\n toast.warn('No editable cells selected to clear')\n return\n }\n // clear the selected cells\n handleClear(editableCells.map((cell) => cell?.id).filter(Boolean) as CellId[])\n }\n }\n\n document.addEventListener('keydown', onKeyDown)\n return () => document.removeEventListener('keydown', onKeyDown)\n }, [canUndo, canRedo, handleUndo, handleRedo, selectedCells, handleClear])\n\n return <CellEditingContext.Provider value={value}>{children}</CellEditingContext.Provider>\n}\n"],"names":["CellEditingProvider","children","editingCellId","setEditingCellIdRaw","useState","editingDraftRef","useRef","getEditingDraft","useCallback","setEditingDraft","value","setEditingCellId","id","isEditing","history","useHistory","pushHistory","undoHistory","redoHistory","canUndo","canRedo","removeHistoryEntries","selectedCells","useSelectionCellsContext","updateOverviewEntities","inheritFromParent","useUpdateTableData","attribFields","getEntityById","useProjectTableContext","projectName","useProjectContext","updateSubtasks","useUpdateSubtasksMutation","handleUpdateEntities","entities","pushToHistory","validateUpdateEntities","error","toast","handleUndo","entitiesToUndo","entitiesToInherit","callbacks","callback","handleRedo","entitiesToRedo","handleClear","cells","entityUpdates","entityInheriting","subtasksToClear","cellId","colId","rowId","parseCellId","entity","fieldName","isAttrib","existingSubtasks","defaultValue","attribField","f","existingInherit","e","getTypeDefaultValue","update","taskId","previousSubtasks","prev","subtasksPromises","useMemo","useEffect","onKeyDown","target","ctrlKey","selectedCellElements","isEditable","cell","editableCells","jsx","CellEditingContext"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ke=require("../../../../../_virtual/jsx-runtime.cjs.js"),M=require("react"),K=require("../constants.cjs.js"),we=require("./SelectionCellsContext.cjs.js"),xe=require("./CellEditingContext.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/dataImport.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/projectFolders.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/columnStats/metricTargets.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/products/getFolderProducts.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/projectFolders/projectFolders.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/tasks/getTasks.cjs.js");const Ee=require("../../../api/queries/tasks/updateTasks.cjs.js");require("../../../api/queries/teams/getTeams.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");require("lodash");require("react-toastify");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");const fe=require("../../../util/getEntityId.cjs.js");require("../../../util/pubsub.cjs.js");require("../../../context/PowerpackContextInstance.cjs.js");require("../../../context/UriContext.cjs.js");require("../../../context/DetailsPanelContextInstance.cjs.js");require("../../../context/SubtasksModulesContextInstance.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");const ve=require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");const R=require("../utils/cellUtils.cjs.js"),Se=require("../hooks/usePasteLinks.cjs.js"),D=require("./clipboard/clipboardUtils.cjs.js"),_e=require("./clipboard/clipboardValidation.cjs.js"),z=require("./clipboard/clipboardSubtasks.cjs.js"),Le=require("./clipboard/clipboardComments.cjs.js"),Oe=require("./ProjectTableContext.cjs.js"),be=M.createContext(void 0),$e=({children:Q,entitiesMap:j,columnEnums:ce,columnReadOnly:ye,visibleColumns:J})=>{const{selectedCells:B,gridMap:q,focusedCellId:qe}=we.useSelectionCellsContext(),{updateEntities:ue,history:ae}=xe.useCellEditing(),{pasteTableLinks:de}=Se(),{getEntityById:H,attribFields:Y}=Oe.useProjectTableContext(),{projectName:Z}=ve.useProjectContext(),[ee]=Ee.useUpdateSubtasksMutation(),le=M.useCallback(async(a,d)=>{const{headers:l,fullRow:g}=d||{};try{const v=J.map(h=>h.id).filter(h=>h!==K.ROW_SELECTION_COLUMN_ID),x=new Map;a.forEach(h=>{const t=R.parseCellId(h);if(!t)return;const{rowId:f,colId:S}=t;S===K.ROW_SELECTION_COLUMN_ID||!v.includes(S)||(x.has(f)||x.set(f,new Set),x.get(f)?.add(S))}),g&&a.filter(t=>R.parseCellId(t)?.rowId&&R.parseCellId(t)?.colId===K.ROW_SELECTION_COLUMN_ID).map(t=>R.parseCellId(t)?.rowId).forEach(t=>{x.has(t)||x.set(t,new Set),Array.from(q.colIdToIndex.keys()).forEach(S=>{x.get(t)?.add(S)})});const p=Array.from(x.keys()).sort((h,t)=>{const f=q.rowIdToIndex.get(h)??1/0,S=q.rowIdToIndex.get(t)??1/0;return f-S});let P="";const se=p[0];if(!se)return"";const oe=Array.from(x.get(se)||[]).sort((h,t)=>{const f=q.colIdToIndex.get(h)??1/0,S=q.colIdToIndex.get(t)??1/0;return f-S});if(l&&oe.length>0){const h=[];for(const t of oe){const f=t;h.push(`${f.replace(/"/g,'""')}`)}P+=h.join(" ")+`
2
- `}for(const h of p){const t=H(h);if(!t){console.warn(`Entity not found for rowId: ${h}`);continue}const S=Array.from(x.get(h)||[]).sort((c,C)=>{const F=q.colIdToIndex.get(c)??1/0,G=q.colIdToIndex.get(C)??1/0;return F-G}).filter(c=>c!==K.ROW_SELECTION_COLUMN_ID),A=[];for(const c of S){let C="";if(c.startsWith("link_"))C=R.getLinkEntityIdsByColumnId(t.links,c);else if(c==="subtasks"){const m=R.getCellValue(t,c)||[];C=z.subtasksToTSV(m,t.id,t.name)}else if(c==="comments"){const m=R.getCellValue(t,"latestComments")||[];C=Le.commentsToText(m)}else{let m=R.getCellValue(t,c);if(c==="folder"&&typeof m!="string"){const _=m||t.product?.folder,e="parents"in t?t.parents:void 0;m=_?.label||_?.name||e?.[e.length-1]||""}if(!m){const _=Y.find(e=>e.name===c.replace("attrib_",""));_&&_.data.type==="boolean"?m=!1:_&&_.data.type.includes("list_of")&&(m=[])}C=m!=null?String(m):"",c==="name"&&(C=D.getEntityPath(t.entityId||t.id,j)),c==="subType"&&("folderType"in t&&(C=t.folderType||""),"taskType"in t&&(C=t.taskType||""))}const F=C.replace(/"/g,'""'),G=c!=="subtasks"&&(C.includes(`
3
- `)||C.includes(" ")||C.includes('"'));A.push(G?`"${F}"`:F)}P+=A.join(" ")+`
4
- `}return P}catch(v){console.error("Failed to copy to clipboard:",v)}},[B,qe,q,j,H,J]),Ie=async()=>{const a=await pe();if(!a)return!1;const d=D.parseClipboardText(a);return d.length===0?!1:d.every(l=>l.values.every(g=>g.split(",").every(v=>fe.validateEntityId(v))))},te=M.useCallback(async(a,d)=>{if(a=a||Array.from(B),!a.length)return;const l=await le(a,{fullRow:d});if(l){if(!navigator.clipboard){D.clipboardError("Clipboard API not supported in this browser.");return}if(!window.isSecureContext){D.clipboardError("Clipboard operations require a secure HTTPS context.");return}try{await navigator.clipboard.writeText(l)}catch(g){D.clipboardError(`Failed to copy to clipboard: ${g.message}`)}}},[B,j,q]),ge=M.useCallback(async(a,d,l)=>{if(a=a||Array.from(B),!!a.length)try{const g=await le(a,{headers:!0,fullRow:l});if(!g)return;const v=new Blob([g],{type:"text/csv"}),x=URL.createObjectURL(v),p=document.createElement("a");p.href=x;const P=a.length;p.download=`${d}-export-${P}_cells-${new Date().toISOString().slice(0,10)}.csv`,p.click(),URL.revokeObjectURL(x)}catch(g){console.error("Failed to copy to clipboard:",g)}},[B,j,q,le]),pe=async()=>{if(!navigator.clipboard){D.clipboardError("Clipboard API not supported in this browser.");return}if(!window.isSecureContext){D.clipboardError("Clipboard operations require a secure HTTPS context.");return}let a;try{return a=await navigator.clipboard.readText(),a}catch(d){D.clipboardError(`Failed to read from clipboard: ${d.message}`);return}},re=M.useCallback(async(a,d)=>{const{method:l="replace"}=d||{};if(!a.length)return;const g=await pe();if(!g)return;let v=!1,x=g;z.isSubtasksTSV(g)&&(v=!0);const p=D.parseClipboardText(g);if(!p.length)return;const P=p.length===1&&p[0].values.length===1,se=J.map(e=>e.id).filter(e=>e!==K.ROW_SELECTION_COLUMN_ID),oe=(e,r,s)=>{const b={};return s&&s.length>0?s.forEach((u,o)=>{const I=r.find(n=>n===u||n.replace("attrib_","")===u||n===`attrib_${u}`||n.toLowerCase()===u.toLowerCase());I&&o<e.values.length&&(b[I]=e.values[o])}):r.forEach((u,o)=>{o<e.values.length&&(b[u]=e.values[o])}),b},h=p[0]?.colIds||void 0,t=new Map;Array.from(a).forEach(e=>{const r=R.parseCellId(e);if(!r)return;const{rowId:s,colId:b}=r;b===K.ROW_SELECTION_COLUMN_ID||!se.includes(b)||(t.has(s)||t.set(s,new Set),t.get(s)?.add(b))});const f=Array.from(t.keys()).sort((e,r)=>{const s=q.rowIdToIndex.get(e)??1/0,b=q.rowIdToIndex.get(r)??1/0;return s-b}),S=f[0],A=Array.from(t.get(S)||[]).sort((e,r)=>{const s=q.colIdToIndex.get(e)??1/0,b=q.colIdToIndex.get(r)??1/0;return s-b});for(let e=0;e<f.length;e++){const r=f[e],s=R.getEntityDataById(r,j)?.entityType==="folder",b=e%p.length,u=p[b],o=P?{[A[0]]:p[0].values[0]}:oe(u,A,h);for(const I of A){const n=o[I]||"";if(!_e.validateClipboardData({colId:I,isFolder:s,pasteValue:n,parsedData:p,columnEnums:ce,columnReadOnly:ye,rowIndex:e,colIndex:A.indexOf(I),isSingleCellValue:P,attribFields:Y}))return}}const c=new Map;for(let e=0;e<A.length;e++){const r=A[e];if(r==="name")continue;if(r==="subtasks"){let o=[],I=!1;if(v){const n=x.trim().split(`
5
- `),y=n[0].toLowerCase(),$=y.includes("label")&&y.includes("name")&&y.includes("start date")&&y.includes("end date")&&y.includes("assignees")&&y.includes("status")?n.slice(1):n,N=new Map,W=[];$.forEach(V=>{const L=z.tsvToSubtasks(V);if(L.length===0)return;const T=L[0],U=`${T.taskId||""}|${T.taskName||""}`;N.has(U)||(N.set(U,[]),W.push(U)),N.get(U).push(T)}),W.forEach(V=>{const[L,T]=V.split("|");o.push({taskId:L||void 0,taskName:T||void 0,subtasks:N.get(V)||[]})}),I=o.length<=1}for(let n=0;n<f.length;n++){const y=f[n],w=R.getEntityDataById(y,j)?.entityType;if(w!=="task")continue;const $=H(y),N=$?.entityId||y,W=`${y}-${w}`;c.has(W)||c.set(W,{rowId:y,id:N,type:w,fields:{},attrib:{},links:{}});const V=c.get(W),L=$&&"subtasks"in $&&$.subtasks||[];V.previousSubtasks=L;let T=[];if(v){if(I&&o.length>0)T=o[0].subtasks;else if(o.length>0){const i=n%o.length;T=o[i].subtasks}}else if(P){const i=p[0].values[0];T=z.tsvToSubtasks(i)}else{const i=n%p.length,k=p[i],E=e%k.values.length,O=k.values[E];T=z.tsvToSubtasks(O)}if(!T||T.length===0)continue;const U=T.map((i,k)=>({id:fe.getEntityId(),name:z.sanitizeSubtaskName(i.name||i.label||`Subtask ${k+1}`),label:i.label||"",assignees:i.assignees||[],description:i.label||"",startDate:i.startDate,endDate:i.endDate,isDone:i.isDone||!1}));if(l==="merge"){const i=[...L],k=new Set(L.map(E=>{const O=(E.label||"").toLowerCase(),ie=(E.name||"").toLowerCase();return`${O}|${ie}`}));for(const E of U){const O=(E.label||"").toLowerCase(),ie=(E.name||"").toLowerCase(),ne=`${O}|${ie}`;k.has(ne)||i.push(E)}V.subtasks=i}else{const i=U.map(k=>{const E=L.find(O=>(O.label||"").toLowerCase()===(k.label||"").toLowerCase()&&(O.name||"").toLowerCase()===(k.name||"").toLowerCase());return{...k,id:E?.id||k.id}});V.subtasks=i}}continue}let s=!1,b=!1,u="string";if(f.length>0){const o=f[0];if(H(o))if(s=r.startsWith("attrib_"),b=r.startsWith("link_"),r==="status"||r==="subType")u="string",s=!1;else if(r==="tags"||r==="assignees")u="array";else if(s){const n=r.replace("attrib_",""),y=Y.find(w=>w.name===n);if(y)switch(y.data.type){case"boolean":u="boolean";break;case"float":case"integer":u="number";break;case"list_of_strings":case"list_of_any":case"list_of_integers":case"list_of_submodels":u="array";break;default:u="string"}}else b&&(u="array")}for(let o=0;o<f.length;o++){const I=f[o],n=R.getEntityDataById(I,j)?.entityType,y=n==="folder";let w;if(P)w=p[0].values[0];else{const U=o%p.length,i=p[U];if(i.values.length>A.length){const k=q.colIdToIndex.get(A[0])??0,E=Array.from(q.colIdToIndex.keys()).filter(X=>X!==K.ROW_SELECTION_COLUMN_ID).sort((X,Ce)=>{const me=q.colIdToIndex.get(X)??1/0,Te=q.colIdToIndex.get(Ce)??1/0;return me-Te}),O=E.findIndex(X=>q.colIdToIndex.get(X)===k),ne=E.slice(O,O+i.values.length).indexOf(r);w=i.values[ne]||i.values[ne%i.values.length]}else{const k=e%i.values.length;w=i.values[k]}}let $=r.split("_").pop()||r;if(r==="subType"&&($=y?"folderType":"taskType",s=!1,!w))continue;const N=D.processFieldValue(w,u),V=H(I)?.entityId||I,L=`${I}-${n}`;!c.has(L)&&n&&c.set(L,{rowId:I,id:V,type:n,fields:{},attrib:{},links:{}});const T=c.get(L);if(b){const[U,i,k,E,O]=r.split("_");T.links[`${i}|${k}|${E}_${O}`]=N}else s?T.attrib[$]=N:T.fields[$]=N}}const C=[],F=new Map;c.forEach(e=>{Object.entries(e.fields).forEach(([r,s])=>{C.push({rowId:e.rowId,id:e.id,type:e.type,field:r,value:s})}),Object.entries(e.attrib).forEach(([r,s])=>{C.push({rowId:e.rowId,id:e.id,type:e.type,field:r,value:s,isAttrib:!0})}),Object.entries(e.links).forEach(([r,s])=>{const[b,u]=r.split("_"),o=b.split("|");if(o.length>=3){const I=o[0],n=o[1],y=o[2],w=`${I}|${n}|${y}`,$=u==="out"?y:n,N=`${e.id}-${w}-${u}`;F.set(N,{rowId:e.rowId,sourceEntityId:e.id,sourceEntityType:e.type,linkType:w,direction:u,targetEntityType:$,operation:l,targetEntityIds:Array.isArray(s)?s:[]})}})});const G=Array.from(F.values()),m=[];c.forEach(e=>{e.subtasks&&m.push({taskId:e.id,subtasks:e.subtasks,previousSubtasks:e.previousSubtasks})});const _=[];if(C.length>0&&_.push(ue(C)),G.length>0&&_.push(de(G)),m.length>0){ae&&m.forEach(({taskId:r,subtasks:s,previousSubtasks:b})=>{const u=b||[],o=s||[],I=()=>{ee({projectName:Z,taskId:r,subtasks:u}).unwrap().catch(()=>{})},n=()=>{ee({projectName:Z,taskId:r,subtasks:o}).unwrap().catch(()=>{})};ae.pushHistory([I],[n])});const e=m.map(({taskId:r,subtasks:s})=>ee({projectName:Z,taskId:r,subtasks:s}).unwrap());_.push(...e)}if(_.length>0)try{await Promise.all(_)}catch(e){console.error("Error updating entities:",e),D.clipboardError(`Paste failed: ${e||e?.message||"Unknown error"}`)}},[B,q,j,ue,de,ce,H,J,Y,Z,ee,ae]);M.useEffect(()=>{const a=async d=>{if((d.ctrlKey||d.metaKey)&&d.key==="c"){const l=document.activeElement,g=l?.closest("table")!==null||l?.closest(".table-container")!==null||l?.tagName==="TD"||l?.tagName==="TH",v=l?.tagName==="INPUT"||l?.tagName==="TEXTAREA"||l?.isContentEditable;if((window.getSelection()?.toString().length??!1)&&!g||v&&!g)return;B.size>0&&await te()}if((d.ctrlKey||d.metaKey)&&d.key==="v"){const l=document.activeElement;if(l&&(l.tagName==="INPUT"||l.tagName==="TEXTAREA"||l.isContentEditable))if(await Ie())d.preventDefault();else return;re(Array.from(B),{method:d.shiftKey?"merge":"replace"})}};return window.addEventListener("keydown",a),()=>{window.removeEventListener("keydown",a)}},[te,re]);const he=M.useMemo(()=>({copyToClipboard:te,pasteFromClipboard:re,exportCSV:ge}),[te,re]);return ke.jsxRuntimeExports.jsx(be.Provider,{value:he,children:Q})},Ne=()=>{const Q=M.useContext(be);if(Q===void 0)throw new Error("useClipboard must be used within a ClipboardProvider");return Q};exports.ClipboardProvider=$e;exports.useClipboard=Ne;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ke=require("../../../../../_virtual/jsx-runtime.cjs.js"),M=require("react"),K=require("../constants.cjs.js"),we=require("./SelectionCellsContext.cjs.js"),xe=require("./CellEditingContext.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/dataImport.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/projectFolders.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/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/bundles/getBundles.cjs.js");require("../../../api/queries/bundles/updateBundles.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/columnStats/metricTargets.cjs.js");require("../../../api/queries/columnStats/groupCounts.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/products/getFolderProducts.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/projectFolders/projectFolders.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/tasks/getTasks.cjs.js");const Ee=require("../../../api/queries/tasks/updateTasks.cjs.js");require("../../../api/queries/teams/getTeams.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");require("lodash");require("react-toastify");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");const fe=require("../../../util/getEntityId.cjs.js");require("../../../util/pubsub.cjs.js");require("../../../context/PowerpackContextInstance.cjs.js");require("../../../context/UriContext.cjs.js");require("../../../context/DetailsPanelContextInstance.cjs.js");require("../../../context/SubtasksModulesContextInstance.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");const ve=require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContextInstance.cjs.js");const R=require("../utils/cellUtils.cjs.js"),Se=require("../hooks/usePasteLinks.cjs.js"),D=require("./clipboard/clipboardUtils.cjs.js"),_e=require("./clipboard/clipboardValidation.cjs.js"),z=require("./clipboard/clipboardSubtasks.cjs.js"),Le=require("./clipboard/clipboardComments.cjs.js"),Oe=require("./ProjectTableContext.cjs.js"),be=M.createContext(void 0),$e=({children:Q,entitiesMap:j,columnEnums:ce,columnReadOnly:ye,visibleColumns:J})=>{const{selectedCells:B,gridMap:q,focusedCellId:qe}=we.useSelectionCellsContext(),{updateEntities:ue,history:ae}=xe.useCellEditing(),{pasteTableLinks:de}=Se(),{getEntityById:H,attribFields:Y}=Oe.useProjectTableContext(),{projectName:Z}=ve.useProjectContext(),[ee]=Ee.useUpdateSubtasksMutation(),le=M.useCallback(async(a,d)=>{const{headers:l,fullRow:I}=d||{};try{const S=J.map(h=>h.id).filter(h=>h!==K.ROW_SELECTION_COLUMN_ID),E=new Map;a.forEach(h=>{const t=R.parseCellId(h);if(!t)return;const{rowId:f,colId:_}=t;_===K.ROW_SELECTION_COLUMN_ID||!S.includes(_)||(E.has(f)||E.set(f,new Set),E.get(f)?.add(_))}),I&&a.filter(t=>R.parseCellId(t)?.rowId&&R.parseCellId(t)?.colId===K.ROW_SELECTION_COLUMN_ID).map(t=>R.parseCellId(t)?.rowId).forEach(t=>{E.has(t)||E.set(t,new Set),Array.from(q.colIdToIndex.keys()).forEach(_=>{E.get(t)?.add(_)})});const p=Array.from(E.keys()).sort((h,t)=>{const f=q.rowIdToIndex.get(h)??1/0,_=q.rowIdToIndex.get(t)??1/0;return f-_});let P="";const se=p[0];if(!se)return"";const oe=Array.from(E.get(se)||[]).sort((h,t)=>{const f=q.colIdToIndex.get(h)??1/0,_=q.colIdToIndex.get(t)??1/0;return f-_});if(l&&oe.length>0){const h=[];for(const t of oe){const f=t;h.push(`${f.replace(/"/g,'""')}`)}P+=h.join(" ")+`
2
+ `}for(const h of p){const t=H(h);if(!t){console.warn(`Entity not found for rowId: ${h}`);continue}const _=Array.from(E.get(h)||[]).sort((c,m)=>{const F=q.colIdToIndex.get(c)??1/0,G=q.colIdToIndex.get(m)??1/0;return F-G}).filter(c=>c!==K.ROW_SELECTION_COLUMN_ID),A=[];for(const c of _){let m="";if(c.startsWith("link_"))m=R.getLinkEntityIdsByColumnId(t.links,c);else if(c==="subtasks"){const C=R.getCellValue(t,c)||[];m=z.subtasksToTSV(C,t.id,t.name)}else if(c==="comments"){const C=R.getCellValue(t,"latestComments")||[];m=Le.commentsToText(C)}else{let C=R.getCellValue(t,c);if(c==="folder"&&typeof C!="string"){const T=C||t.product?.folder,e="parents"in t?t.parents:void 0;C=T?.label||T?.name||e?.[e.length-1]||""}if(!C){const T=Y.find(e=>e.name===c.replace("attrib_",""));T&&T.data.type==="boolean"?C=!1:T&&T.data.type.includes("list_of")&&(C=[])}if(m=C!=null?String(C):"",c==="name"&&(m=D.getEntityPath(t.entityId||t.id,j)||t.label||t.name||""),c==="subType"){const T=t.subType;typeof T=="string"&&T?m=T:("folderType"in t&&(m=t.folderType||""),"taskType"in t&&(m=t.taskType||""))}}const F=m.replace(/"/g,'""'),G=c!=="subtasks"&&(m.includes(`
3
+ `)||m.includes(" ")||m.includes('"'));A.push(G?`"${F}"`:F)}P+=A.join(" ")+`
4
+ `}return P}catch(S){console.error("Failed to copy to clipboard:",S)}},[B,qe,q,j,H,J]),ge=async()=>{const a=await pe();if(!a)return!1;const d=D.parseClipboardText(a);return d.length===0?!1:d.every(l=>l.values.every(I=>I.split(",").every(S=>fe.validateEntityId(S))))},te=M.useCallback(async(a,d)=>{if(a=a||Array.from(B),!a.length)return;const l=await le(a,{fullRow:d});if(l){if(!navigator.clipboard){D.clipboardError("Clipboard API not supported in this browser.");return}if(!window.isSecureContext){D.clipboardError("Clipboard operations require a secure HTTPS context.");return}try{await navigator.clipboard.writeText(l)}catch(I){D.clipboardError(`Failed to copy to clipboard: ${I.message}`)}}},[B,j,q]),Ie=M.useCallback(async(a,d,l)=>{if(a=a||Array.from(B),!!a.length)try{const I=await le(a,{headers:!0,fullRow:l});if(!I)return;const S=new Blob([I],{type:"text/csv"}),E=URL.createObjectURL(S),p=document.createElement("a");p.href=E;const P=a.length;p.download=`${d}-export-${P}_cells-${new Date().toISOString().slice(0,10)}.csv`,p.click(),URL.revokeObjectURL(E)}catch(I){console.error("Failed to copy to clipboard:",I)}},[B,j,q,le]),pe=async()=>{if(!navigator.clipboard){D.clipboardError("Clipboard API not supported in this browser.");return}if(!window.isSecureContext){D.clipboardError("Clipboard operations require a secure HTTPS context.");return}let a;try{return a=await navigator.clipboard.readText(),a}catch(d){D.clipboardError(`Failed to read from clipboard: ${d.message}`);return}},re=M.useCallback(async(a,d)=>{const{method:l="replace"}=d||{};if(!a.length)return;const I=await pe();if(!I)return;let S=!1,E=I;z.isSubtasksTSV(I)&&(S=!0);const p=D.parseClipboardText(I);if(!p.length)return;const P=p.length===1&&p[0].values.length===1,se=J.map(e=>e.id).filter(e=>e!==K.ROW_SELECTION_COLUMN_ID),oe=(e,r,s)=>{const b={};return s&&s.length>0?s.forEach((u,o)=>{const g=r.find(n=>n===u||n.replace("attrib_","")===u||n===`attrib_${u}`||n.toLowerCase()===u.toLowerCase());g&&o<e.values.length&&(b[g]=e.values[o])}):r.forEach((u,o)=>{o<e.values.length&&(b[u]=e.values[o])}),b},h=p[0]?.colIds||void 0,t=new Map;Array.from(a).forEach(e=>{const r=R.parseCellId(e);if(!r)return;const{rowId:s,colId:b}=r;b===K.ROW_SELECTION_COLUMN_ID||!se.includes(b)||(t.has(s)||t.set(s,new Set),t.get(s)?.add(b))});const f=Array.from(t.keys()).sort((e,r)=>{const s=q.rowIdToIndex.get(e)??1/0,b=q.rowIdToIndex.get(r)??1/0;return s-b}),_=f[0],A=Array.from(t.get(_)||[]).sort((e,r)=>{const s=q.colIdToIndex.get(e)??1/0,b=q.colIdToIndex.get(r)??1/0;return s-b});for(let e=0;e<f.length;e++){const r=f[e],s=R.getEntityDataById(r,j)?.entityType==="folder",b=e%p.length,u=p[b],o=P?{[A[0]]:p[0].values[0]}:oe(u,A,h);for(const g of A){const n=o[g]||"";if(!_e.validateClipboardData({colId:g,isFolder:s,pasteValue:n,parsedData:p,columnEnums:ce,columnReadOnly:ye,rowIndex:e,colIndex:A.indexOf(g),isSingleCellValue:P,attribFields:Y}))return}}const c=new Map;for(let e=0;e<A.length;e++){const r=A[e];if(r==="name")continue;if(r==="subtasks"){let o=[],g=!1;if(S){const n=E.trim().split(`
5
+ `),y=n[0].toLowerCase(),$=y.includes("label")&&y.includes("name")&&y.includes("start date")&&y.includes("end date")&&y.includes("assignees")&&y.includes("status")?n.slice(1):n,N=new Map,W=[];$.forEach(V=>{const L=z.tsvToSubtasks(V);if(L.length===0)return;const k=L[0],U=`${k.taskId||""}|${k.taskName||""}`;N.has(U)||(N.set(U,[]),W.push(U)),N.get(U).push(k)}),W.forEach(V=>{const[L,k]=V.split("|");o.push({taskId:L||void 0,taskName:k||void 0,subtasks:N.get(V)||[]})}),g=o.length<=1}for(let n=0;n<f.length;n++){const y=f[n],x=R.getEntityDataById(y,j)?.entityType;if(x!=="task")continue;const $=H(y),N=$?.entityId||y,W=`${y}-${x}`;c.has(W)||c.set(W,{rowId:y,id:N,type:x,fields:{},attrib:{},links:{}});const V=c.get(W),L=$&&"subtasks"in $&&$.subtasks||[];V.previousSubtasks=L;let k=[];if(S){if(g&&o.length>0)k=o[0].subtasks;else if(o.length>0){const i=n%o.length;k=o[i].subtasks}}else if(P){const i=p[0].values[0];k=z.tsvToSubtasks(i)}else{const i=n%p.length,w=p[i],v=e%w.values.length,O=w.values[v];k=z.tsvToSubtasks(O)}if(!k||k.length===0)continue;const U=k.map((i,w)=>({id:fe.getEntityId(),name:z.sanitizeSubtaskName(i.name||i.label||`Subtask ${w+1}`),label:i.label||"",assignees:i.assignees||[],description:i.label||"",startDate:i.startDate,endDate:i.endDate,isDone:i.isDone||!1}));if(l==="merge"){const i=[...L],w=new Set(L.map(v=>{const O=(v.label||"").toLowerCase(),ie=(v.name||"").toLowerCase();return`${O}|${ie}`}));for(const v of U){const O=(v.label||"").toLowerCase(),ie=(v.name||"").toLowerCase(),ne=`${O}|${ie}`;w.has(ne)||i.push(v)}V.subtasks=i}else{const i=U.map(w=>{const v=L.find(O=>(O.label||"").toLowerCase()===(w.label||"").toLowerCase()&&(O.name||"").toLowerCase()===(w.name||"").toLowerCase());return{...w,id:v?.id||w.id}});V.subtasks=i}}continue}let s=!1,b=!1,u="string";if(f.length>0){const o=f[0];if(H(o))if(s=r.startsWith("attrib_"),b=r.startsWith("link_"),r==="status"||r==="subType")u="string",s=!1;else if(r==="tags"||r==="assignees")u="array";else if(s){const n=r.replace("attrib_",""),y=Y.find(x=>x.name===n);if(y)switch(y.data.type){case"boolean":u="boolean";break;case"float":case"integer":u="number";break;case"list_of_strings":case"list_of_any":case"list_of_integers":case"list_of_submodels":u="array";break;default:u="string"}}else b&&(u="array")}for(let o=0;o<f.length;o++){const g=f[o],n=R.getEntityDataById(g,j)?.entityType,y=n==="folder";let x;if(P)x=p[0].values[0];else{const U=o%p.length,i=p[U];if(i.values.length>A.length){const w=q.colIdToIndex.get(A[0])??0,v=Array.from(q.colIdToIndex.keys()).filter(X=>X!==K.ROW_SELECTION_COLUMN_ID).sort((X,me)=>{const Ce=q.colIdToIndex.get(X)??1/0,Te=q.colIdToIndex.get(me)??1/0;return Ce-Te}),O=v.findIndex(X=>q.colIdToIndex.get(X)===w),ne=v.slice(O,O+i.values.length).indexOf(r);x=i.values[ne]||i.values[ne%i.values.length]}else{const w=e%i.values.length;x=i.values[w]}}let $=r.split("_").pop()||r;if(r==="subType"&&($=y?"folderType":"taskType",s=!1,!x))continue;const N=D.processFieldValue(x,u),V=H(g)?.entityId||g,L=`${g}-${n}`;!c.has(L)&&n&&c.set(L,{rowId:g,id:V,type:n,fields:{},attrib:{},links:{}});const k=c.get(L);if(b){const[U,i,w,v,O]=r.split("_");k.links[`${i}|${w}|${v}_${O}`]=N}else s?k.attrib[$]=N:k.fields[$]=N}}const m=[],F=new Map;c.forEach(e=>{Object.entries(e.fields).forEach(([r,s])=>{m.push({rowId:e.rowId,id:e.id,type:e.type,field:r,value:s})}),Object.entries(e.attrib).forEach(([r,s])=>{m.push({rowId:e.rowId,id:e.id,type:e.type,field:r,value:s,isAttrib:!0})}),Object.entries(e.links).forEach(([r,s])=>{const[b,u]=r.split("_"),o=b.split("|");if(o.length>=3){const g=o[0],n=o[1],y=o[2],x=`${g}|${n}|${y}`,$=u==="out"?y:n,N=`${e.id}-${x}-${u}`;F.set(N,{rowId:e.rowId,sourceEntityId:e.id,sourceEntityType:e.type,linkType:x,direction:u,targetEntityType:$,operation:l,targetEntityIds:Array.isArray(s)?s:[]})}})});const G=Array.from(F.values()),C=[];c.forEach(e=>{e.subtasks&&C.push({taskId:e.id,subtasks:e.subtasks,previousSubtasks:e.previousSubtasks})});const T=[];if(m.length>0&&T.push(ue(m)),G.length>0&&T.push(de(G)),C.length>0){ae&&C.forEach(({taskId:r,subtasks:s,previousSubtasks:b})=>{const u=b||[],o=s||[],g=()=>{ee({projectName:Z,taskId:r,subtasks:u}).unwrap().catch(()=>{})},n=()=>{ee({projectName:Z,taskId:r,subtasks:o}).unwrap().catch(()=>{})};ae.pushHistory([g],[n])});const e=C.map(({taskId:r,subtasks:s})=>ee({projectName:Z,taskId:r,subtasks:s}).unwrap());T.push(...e)}if(T.length>0)try{await Promise.all(T)}catch(e){console.error("Error updating entities:",e),D.clipboardError(`Paste failed: ${e||e?.message||"Unknown error"}`)}},[B,q,j,ue,de,ce,H,J,Y,Z,ee,ae]);M.useEffect(()=>{const a=async d=>{if((d.ctrlKey||d.metaKey)&&d.key==="c"){const l=document.activeElement,I=l?.closest("table")!==null||l?.closest(".table-container")!==null||l?.tagName==="TD"||l?.tagName==="TH",S=l?.tagName==="INPUT"||l?.tagName==="TEXTAREA"||l?.isContentEditable;if((window.getSelection()?.toString().length??!1)&&!I||S&&!I)return;B.size>0&&await te()}if((d.ctrlKey||d.metaKey)&&d.key==="v"){const l=document.activeElement;if(l&&(l.tagName==="INPUT"||l.tagName==="TEXTAREA"||l.isContentEditable))if(await ge())d.preventDefault();else return;re(Array.from(B),{method:d.shiftKey?"merge":"replace"})}};return window.addEventListener("keydown",a),()=>{window.removeEventListener("keydown",a)}},[te,re]);const he=M.useMemo(()=>({copyToClipboard:te,pasteFromClipboard:re,exportCSV:Ie}),[te,re]);return ke.jsxRuntimeExports.jsx(be.Provider,{value:he,children:Q})},Ne=()=>{const Q=M.useContext(be);if(Q===void 0)throw new Error("useClipboard must be used within a ClipboardProvider");return Q};exports.ClipboardProvider=$e;exports.useClipboard=Ne;
6
6
  //# sourceMappingURL=ClipboardContext.cjs.js.map