@ynput/ayon-frontend-shared 0.2.2 → 0.2.4

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 (896) hide show
  1. package/dist/ContextMenu.cjs.js +1 -0
  2. package/dist/ContextMenu.cjs.js.map +1 -1
  3. package/dist/ContextMenu.es.js +1 -0
  4. package/dist/ContextMenu.es.js.map +1 -1
  5. package/dist/DetailsPanel.cjs.js +23 -1
  6. package/dist/DetailsPanel.cjs.js.map +1 -1
  7. package/dist/DetailsPanel.es.js +23 -1
  8. package/dist/DetailsPanel.es.js.map +1 -1
  9. package/dist/ProjectTreeTable.cjs.js +12 -1
  10. package/dist/ProjectTreeTable.cjs.js.map +1 -1
  11. package/dist/ProjectTreeTable.es.js +14 -3
  12. package/dist/ProjectTreeTable.es.js.map +1 -1
  13. package/dist/_virtual/_commonjsHelpers.cjs.js +0 -2
  14. package/dist/_virtual/_commonjsHelpers.cjs.js.map +1 -1
  15. package/dist/_virtual/_commonjsHelpers.es.js +0 -2
  16. package/dist/_virtual/_commonjsHelpers.es.js.map +1 -1
  17. package/dist/_virtual/index.cjs10.js +3 -5
  18. package/dist/_virtual/index.cjs10.js.map +1 -1
  19. package/dist/_virtual/index.cjs4.js +4 -4
  20. package/dist/_virtual/index.cjs5.js +2 -2
  21. package/dist/_virtual/index.cjs6.js +4 -4
  22. package/dist/_virtual/index.cjs7.js +5 -3
  23. package/dist/_virtual/index.cjs7.js.map +1 -1
  24. package/dist/_virtual/index.cjs8.js +4 -4
  25. package/dist/_virtual/index.cjs9.js +4 -4
  26. package/dist/_virtual/index.es10.js +2 -5
  27. package/dist/_virtual/index.es10.js.map +1 -1
  28. package/dist/_virtual/index.es4.js +4 -4
  29. package/dist/_virtual/index.es5.js +2 -2
  30. package/dist/_virtual/index.es6.js +4 -4
  31. package/dist/_virtual/index.es7.js +5 -2
  32. package/dist/_virtual/index.es7.js.map +1 -1
  33. package/dist/_virtual/index.es8.js +4 -4
  34. package/dist/_virtual/index.es9.js +4 -4
  35. package/dist/api.cjs.js +24 -1
  36. package/dist/api.cjs.js.map +1 -1
  37. package/dist/api.es.js +26 -3
  38. package/dist/api.es.js.map +1 -1
  39. package/dist/components.cjs.js +12 -0
  40. package/dist/components.cjs.js.map +1 -1
  41. package/dist/components.es.js +12 -0
  42. package/dist/components.es.js.map +1 -1
  43. package/dist/context.cjs.js +3 -0
  44. package/dist/context.cjs.js.map +1 -1
  45. package/dist/context.es.js +3 -0
  46. package/dist/context.es.js.map +1 -1
  47. package/dist/index.cjs.js +24 -2
  48. package/dist/index.cjs.js.map +1 -1
  49. package/dist/index.es.js +24 -2
  50. package/dist/index.es.js.map +1 -1
  51. package/dist/node_modules/@reduxjs/toolkit/dist/query/react/rtk-query-react.modern.cjs.js +19 -10
  52. package/dist/node_modules/@reduxjs/toolkit/dist/query/react/rtk-query-react.modern.cjs.js.map +1 -1
  53. package/dist/node_modules/@reduxjs/toolkit/dist/query/react/rtk-query-react.modern.es.js +21 -12
  54. package/dist/node_modules/@reduxjs/toolkit/dist/query/react/rtk-query-react.modern.es.js.map +1 -1
  55. package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.cjs.js +174 -68
  56. package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.cjs.js.map +1 -1
  57. package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.es.js +174 -68
  58. package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.es.js.map +1 -1
  59. package/dist/node_modules/@standard-schema/utils/dist/index.cjs.js +23 -0
  60. package/dist/node_modules/@standard-schema/utils/dist/index.cjs.js.map +1 -0
  61. package/dist/node_modules/@standard-schema/utils/dist/index.es.js +23 -0
  62. package/dist/node_modules/@standard-schema/utils/dist/index.es.js.map +1 -0
  63. package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js +1 -1
  64. package/dist/node_modules/match-sorter/dist/match-sorter.esm.es.js +1 -1
  65. package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
  66. package/dist/node_modules/parse-numeric-range/index.es.js +1 -1
  67. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +2 -2
  68. package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
  69. package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
  70. package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
  71. package/dist/node_modules/rehype-prism-plus/dist/index.es.cjs.js +1 -1
  72. package/dist/node_modules/rehype-prism-plus/dist/index.es.es.js +1 -1
  73. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  74. package/dist/node_modules/remove-accents/index.es.js +1 -1
  75. package/dist/node_modules/vfile/lib/index.cjs.js +1 -1
  76. package/dist/node_modules/vfile/lib/index.es.js +1 -1
  77. package/dist/shared/src/api/base/client.cjs.js +3 -0
  78. package/dist/shared/src/api/base/client.cjs.js.map +1 -1
  79. package/dist/shared/src/api/base/client.es.js +3 -0
  80. package/dist/shared/src/api/base/client.es.js.map +1 -1
  81. package/dist/shared/src/api/generated/anatomy.cjs.js +13 -0
  82. package/dist/shared/src/api/generated/anatomy.cjs.js.map +1 -1
  83. package/dist/shared/src/api/generated/anatomy.es.js +13 -0
  84. package/dist/shared/src/api/generated/anatomy.es.js.map +1 -1
  85. package/dist/shared/src/api/generated/graphql.cjs.js +130 -0
  86. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  87. package/dist/shared/src/api/generated/graphql.es.js +130 -0
  88. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  89. package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js +1 -1
  90. package/dist/shared/src/api/queries/entities/getEntityPanel.es.js +1 -1
  91. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +12 -4
  92. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  93. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +13 -5
  94. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  95. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +4 -0
  96. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
  97. package/dist/shared/src/api/queries/entities/updateEntity.es.js +4 -0
  98. package/dist/shared/src/api/queries/entities/updateEntity.es.js.map +1 -1
  99. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +267 -0
  100. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -0
  101. package/dist/shared/src/api/queries/entityLists/getLists.es.js +267 -0
  102. package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -0
  103. package/dist/shared/src/api/queries/entityLists/getListsAttributes.cjs.js +51 -0
  104. package/dist/shared/src/api/queries/entityLists/getListsAttributes.cjs.js.map +1 -0
  105. package/dist/shared/src/api/queries/entityLists/getListsAttributes.es.js +51 -0
  106. package/dist/shared/src/api/queries/entityLists/getListsAttributes.es.js.map +1 -0
  107. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js +169 -0
  108. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js.map +1 -0
  109. package/dist/shared/src/api/queries/entityLists/updateLists.es.js +169 -0
  110. package/dist/shared/src/api/queries/entityLists/updateLists.es.js.map +1 -0
  111. package/dist/shared/src/api/queries/entityLists/updateListsAttributes.cjs.js +29 -0
  112. package/dist/shared/src/api/queries/entityLists/updateListsAttributes.cjs.js.map +1 -0
  113. package/dist/shared/src/api/queries/entityLists/updateListsAttributes.es.js +29 -0
  114. package/dist/shared/src/api/queries/entityLists/updateListsAttributes.es.js.map +1 -0
  115. package/dist/shared/src/api/queries/overview/getOverview.cjs.js +3 -4
  116. package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
  117. package/dist/shared/src/api/queries/overview/getOverview.es.js +3 -4
  118. package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
  119. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +40 -5
  120. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  121. package/dist/shared/src/api/queries/overview/updateOverview.es.js +40 -5
  122. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  123. package/dist/shared/src/api/queries/review/getReview.cjs.js +1 -1
  124. package/dist/shared/src/api/queries/review/getReview.es.js +1 -1
  125. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -1
  126. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +1 -1
  127. package/dist/shared/src/api/queries/users/getUsers.cjs.js +6 -2
  128. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  129. package/dist/shared/src/api/queries/users/getUsers.es.js +7 -3
  130. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  131. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js +355 -0
  132. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js.map +1 -0
  133. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js +355 -0
  134. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js.map +1 -0
  135. package/dist/shared/src/components/AttributeEditor/components/MinMaxField.cjs.js +93 -0
  136. package/dist/shared/src/components/AttributeEditor/components/MinMaxField.cjs.js.map +1 -0
  137. package/dist/shared/src/components/AttributeEditor/components/MinMaxField.es.js +93 -0
  138. package/dist/shared/src/components/AttributeEditor/components/MinMaxField.es.js.map +1 -0
  139. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +4 -0
  140. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  141. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +4 -0
  142. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  143. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.cjs.js +6 -2
  144. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.cjs.js.map +1 -1
  145. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.es.js +6 -2
  146. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.es.js.map +1 -1
  147. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js +1 -1
  148. package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js +1 -1
  149. package/dist/shared/src/components/EmptyPlaceholder/EmptyPlaceholder.cjs.js +4 -2
  150. package/dist/shared/src/components/EmptyPlaceholder/EmptyPlaceholder.cjs.js.map +1 -1
  151. package/dist/shared/src/components/EmptyPlaceholder/EmptyPlaceholder.es.js +4 -2
  152. package/dist/shared/src/components/EmptyPlaceholder/EmptyPlaceholder.es.js.map +1 -1
  153. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +3 -1
  154. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
  155. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +3 -1
  156. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
  157. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.cjs.js +23 -1
  158. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.cjs.js.map +1 -1
  159. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.es.js +23 -1
  160. package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.es.js.map +1 -1
  161. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.cjs.js +194 -0
  162. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.cjs.js.map +1 -0
  163. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.es.js +195 -0
  164. package/dist/shared/src/components/EnumEditor/DraggableEnumEditorItem.es.js.map +1 -0
  165. package/dist/shared/src/components/EnumEditor/EnumEditor.cjs.js +128 -0
  166. package/dist/shared/src/components/EnumEditor/EnumEditor.cjs.js.map +1 -0
  167. package/dist/shared/src/components/EnumEditor/EnumEditor.es.js +128 -0
  168. package/dist/shared/src/components/EnumEditor/EnumEditor.es.js.map +1 -0
  169. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.cjs.js +185 -0
  170. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.cjs.js.map +1 -0
  171. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.es.js +185 -0
  172. package/dist/shared/src/components/EnumEditor/EnumEditor.styled.es.js.map +1 -0
  173. package/dist/shared/src/components/EnumEditor/hooks/useDraggable.cjs.js +67 -0
  174. package/dist/shared/src/components/EnumEditor/hooks/useDraggable.cjs.js.map +1 -0
  175. package/dist/shared/src/components/EnumEditor/hooks/useDraggable.es.js +68 -0
  176. package/dist/shared/src/components/EnumEditor/hooks/useDraggable.es.js.map +1 -0
  177. package/dist/shared/src/components/EnumEditor/util/index.cjs.js +19 -0
  178. package/dist/shared/src/components/EnumEditor/util/index.cjs.js.map +1 -0
  179. package/dist/shared/src/components/EnumEditor/util/index.es.js +19 -0
  180. package/dist/shared/src/components/EnumEditor/util/index.es.js.map +1 -0
  181. package/dist/shared/src/components/ProjectTableSettings/ColumnItem.cjs.js +78 -0
  182. package/dist/shared/src/components/ProjectTableSettings/ColumnItem.cjs.js.map +1 -0
  183. package/dist/shared/src/components/ProjectTableSettings/ColumnItem.es.js +79 -0
  184. package/dist/shared/src/components/ProjectTableSettings/ColumnItem.es.js.map +1 -0
  185. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +352 -0
  186. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -0
  187. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +353 -0
  188. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -0
  189. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +113 -0
  190. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -0
  191. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +113 -0
  192. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -0
  193. package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.cjs.js +52 -0
  194. package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.cjs.js.map +1 -0
  195. package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.es.js +53 -0
  196. package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.es.js.map +1 -0
  197. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +4 -0
  198. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  199. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +4 -0
  200. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  201. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +23 -1
  202. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  203. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +23 -1
  204. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  205. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +23 -1
  206. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  207. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +23 -1
  208. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  209. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +23 -1
  210. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  211. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +23 -1
  212. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  213. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +103 -0
  214. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -0
  215. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +103 -0
  216. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -0
  217. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.cjs.js +83 -0
  218. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.cjs.js.map +1 -0
  219. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.es.js +83 -0
  220. package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.es.js.map +1 -0
  221. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +1 -0
  222. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
  223. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +1 -0
  224. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
  225. package/dist/shared/src/components/Watchers/Watchers.cjs.js +4 -0
  226. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  227. package/dist/shared/src/components/Watchers/Watchers.es.js +4 -0
  228. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  229. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +23 -1
  230. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  231. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +23 -1
  232. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  233. package/dist/shared/src/containers/Actions/Actions.cjs.js +16 -7
  234. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  235. package/dist/shared/src/containers/Actions/Actions.es.js +16 -7
  236. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  237. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js +2 -2
  238. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js.map +1 -1
  239. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.es.js +2 -2
  240. package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.es.js.map +1 -1
  241. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +23 -1
  242. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  243. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +23 -1
  244. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  245. package/dist/shared/src/containers/ContextMenu/ContextMenu.css +54 -19
  246. package/dist/shared/src/containers/ContextMenu/ContextMenuItem.cjs.js +11 -1
  247. package/dist/shared/src/containers/ContextMenu/ContextMenuItem.cjs.js.map +1 -1
  248. package/dist/shared/src/containers/ContextMenu/ContextMenuItem.es.js +11 -1
  249. package/dist/shared/src/containers/ContextMenu/ContextMenuItem.es.js.map +1 -1
  250. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +23 -1
  251. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  252. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +23 -1
  253. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  254. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +25 -1
  255. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  256. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +25 -1
  257. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  258. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +24 -2
  259. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  260. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +24 -2
  261. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  262. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +26 -4
  263. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  264. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +26 -4
  265. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  266. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +5 -0
  267. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  268. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +5 -0
  269. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  270. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js +1 -0
  271. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js.map +1 -1
  272. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js +1 -0
  273. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js.map +1 -1
  274. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js +1 -1
  275. package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js +1 -1
  276. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +6 -2
  277. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  278. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +6 -2
  279. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  280. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -0
  281. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  282. package/dist/shared/src/containers/Feed/Feed.es.js +1 -0
  283. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  284. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.cjs.js +2 -2
  285. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.cjs.js.map +1 -1
  286. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.es.js +2 -2
  287. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.es.js.map +1 -1
  288. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.cjs.js +1 -1
  289. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.es.js +1 -1
  290. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -0
  291. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
  292. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +1 -0
  293. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
  294. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +5 -3
  295. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  296. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +5 -3
  297. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  298. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -0
  299. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
  300. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +1 -0
  301. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
  302. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -0
  303. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
  304. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +1 -0
  305. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
  306. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +2 -1
  307. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  308. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +2 -1
  309. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  310. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +5 -0
  311. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  312. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +5 -0
  313. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  314. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +7 -3
  315. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  316. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +7 -3
  317. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  318. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.cjs.js +1 -1
  319. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.es.js +1 -1
  320. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.cjs.js +1 -1
  321. package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.es.js +1 -1
  322. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +198 -222
  323. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  324. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +201 -225
  325. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  326. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js +1 -3
  327. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js.map +1 -1
  328. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js +1 -3
  329. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js.map +1 -1
  330. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +361 -0
  331. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -0
  332. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +361 -0
  333. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -0
  334. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingContext.cjs.js +41 -20
  335. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingContext.cjs.js.map +1 -1
  336. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingContext.es.js +41 -20
  337. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingContext.es.js.map +1 -1
  338. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +29 -36
  339. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  340. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +31 -38
  341. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  342. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js +33 -4
  343. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js.map +1 -1
  344. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js +34 -5
  345. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js.map +1 -1
  346. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js +17 -11
  347. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
  348. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js +17 -11
  349. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
  350. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js.map +1 -1
  351. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableQueriesContext.es.js.map +1 -1
  352. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardTypes.cjs.js.map +1 -1
  353. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardTypes.es.js.map +1 -1
  354. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardUtils.cjs.js +6 -3
  355. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardUtils.cjs.js.map +1 -1
  356. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardUtils.es.js +6 -3
  357. package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardUtils.es.js.map +1 -1
  358. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +190 -146
  359. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  360. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +190 -146
  361. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  362. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +10 -3
  363. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
  364. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +10 -3
  365. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
  366. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.cjs.js +15 -12
  367. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.cjs.js.map +1 -1
  368. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.es.js +15 -12
  369. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.es.js.map +1 -1
  370. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.cjs.js +44 -0
  371. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.cjs.js.map +1 -0
  372. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.es.js +45 -0
  373. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.es.js.map +1 -0
  374. package/dist/shared/src/containers/ProjectTreeTable/hooks/useHistory.cjs.js +15 -7
  375. package/dist/shared/src/containers/ProjectTreeTable/hooks/useHistory.cjs.js.map +1 -1
  376. package/dist/shared/src/containers/ProjectTreeTable/hooks/useHistory.es.js +15 -7
  377. package/dist/shared/src/containers/ProjectTreeTable/hooks/useHistory.es.js.map +1 -1
  378. package/dist/shared/src/containers/ProjectTreeTable/hooks/useOverviewTable.cjs.js +27 -31
  379. package/dist/shared/src/containers/ProjectTreeTable/hooks/useOverviewTable.cjs.js.map +1 -1
  380. package/dist/shared/src/containers/ProjectTreeTable/hooks/useOverviewTable.es.js +27 -31
  381. package/dist/shared/src/containers/ProjectTreeTable/hooks/useOverviewTable.es.js.map +1 -1
  382. package/dist/shared/src/containers/ProjectTreeTable/hooks/{useUpdateOverview.cjs.js → useUpdateTableData.cjs.js} +48 -20
  383. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js.map +1 -0
  384. package/dist/shared/src/containers/ProjectTreeTable/hooks/{useUpdateOverview.es.js → useUpdateTableData.es.js} +48 -20
  385. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js.map +1 -0
  386. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +2 -0
  387. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  388. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +2 -0
  389. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  390. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js +25 -20
  391. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js.map +1 -1
  392. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js +25 -20
  393. package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js.map +1 -1
  394. package/dist/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.cjs.js +36 -0
  395. package/dist/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.cjs.js.map +1 -0
  396. package/dist/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.es.js +36 -0
  397. package/dist/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.es.js.map +1 -0
  398. package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.cjs.js +39 -0
  399. package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.cjs.js.map +1 -0
  400. package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.es.js +39 -0
  401. package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.es.js.map +1 -0
  402. package/dist/shared/src/containers/ProjectTreeTable/utils/loadingUtils.cjs.js +1 -0
  403. package/dist/shared/src/containers/ProjectTreeTable/utils/loadingUtils.cjs.js.map +1 -1
  404. package/dist/shared/src/containers/ProjectTreeTable/utils/loadingUtils.es.js +1 -0
  405. package/dist/shared/src/containers/ProjectTreeTable/utils/loadingUtils.es.js.map +1 -1
  406. package/dist/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.cjs.js +57 -0
  407. package/dist/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.cjs.js.map +1 -0
  408. package/dist/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.es.js +58 -0
  409. package/dist/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.es.js.map +1 -0
  410. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  411. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  412. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +34 -6
  413. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  414. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +34 -6
  415. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  416. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.cjs.js +7 -5
  417. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.cjs.js.map +1 -1
  418. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.es.js +7 -5
  419. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.es.js.map +1 -1
  420. package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js.map +1 -1
  421. package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.es.js.map +1 -1
  422. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js +9 -0
  423. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js.map +1 -1
  424. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js +9 -0
  425. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js.map +1 -1
  426. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js +17 -2
  427. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js.map +1 -1
  428. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js +17 -2
  429. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js.map +1 -1
  430. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js +53 -0
  431. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js.map +1 -0
  432. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js +53 -0
  433. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js.map +1 -0
  434. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +24 -2
  435. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  436. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +24 -2
  437. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  438. package/dist/shared/src/context/DetailsPanelContext.cjs.js +6 -1
  439. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  440. package/dist/shared/src/context/DetailsPanelContext.es.js +6 -1
  441. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  442. package/dist/shared/src/context/RemoteModulesContext.cjs.js +4 -0
  443. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  444. package/dist/shared/src/context/RemoteModulesContext.es.js +4 -0
  445. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  446. package/dist/shared/src/context/SettingsPanelContext.cjs.js +63 -0
  447. package/dist/shared/src/context/SettingsPanelContext.cjs.js.map +1 -0
  448. package/dist/shared/src/context/SettingsPanelContext.es.js +63 -0
  449. package/dist/shared/src/context/SettingsPanelContext.es.js.map +1 -0
  450. package/dist/shared/src/context/ThumbnailUploaderContext.cjs.js +1 -0
  451. package/dist/shared/src/context/ThumbnailUploaderContext.cjs.js.map +1 -1
  452. package/dist/shared/src/context/ThumbnailUploaderContext.es.js +1 -0
  453. package/dist/shared/src/context/ThumbnailUploaderContext.es.js.map +1 -1
  454. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +5 -0
  455. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  456. package/dist/shared/src/hooks/useEntityUpdate.es.js +5 -0
  457. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  458. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +6 -2
  459. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  460. package/dist/shared/src/hooks/useScopedStatuses.es.js +6 -2
  461. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  462. package/dist/shared/src/util/confirmDelete.cjs.js +3 -3
  463. package/dist/shared/src/util/confirmDelete.cjs.js.map +1 -1
  464. package/dist/shared/src/util/confirmDelete.es.js +3 -3
  465. package/dist/shared/src/util/confirmDelete.es.js.map +1 -1
  466. package/dist/shared/src/util/getAttributeIcon.cjs.js +48 -0
  467. package/dist/shared/src/util/getAttributeIcon.cjs.js.map +1 -0
  468. package/dist/shared/src/util/getAttributeIcon.es.js +48 -0
  469. package/dist/shared/src/util/getAttributeIcon.es.js.map +1 -0
  470. package/dist/shared/src/util/platform.cjs.js +7 -6
  471. package/dist/shared/src/util/platform.cjs.js.map +1 -1
  472. package/dist/shared/src/util/platform.es.js +7 -6
  473. package/dist/shared/src/util/platform.es.js.map +1 -1
  474. package/dist/types/Actions.d.ts +1 -1
  475. package/dist/types/ContextMenu.d.ts +1 -1
  476. package/dist/types/DetailsPanel.d.ts +1 -1
  477. package/dist/types/Feed.d.ts +1 -1
  478. package/dist/types/ProjectTreeTable.d.ts +1 -1
  479. package/dist/types/RepresentationsList.d.ts +1 -1
  480. package/dist/types/Slicer.d.ts +1 -1
  481. package/dist/types/api.d.ts +3 -3
  482. package/dist/types/components.d.ts +1 -1
  483. package/dist/types/context.d.ts +1 -1
  484. package/dist/types/hooks.d.ts +1 -1
  485. package/dist/types/index.d.ts +2 -2
  486. package/dist/types/shared/src/SimpleTable/SimpleTable.d.ts +43 -0
  487. package/dist/types/shared/src/SimpleTable/SimpleTable.styled.d.ts +10 -0
  488. package/dist/types/shared/src/SimpleTable/SimpleTableRowTemplate.d.ts +13 -0
  489. package/dist/types/shared/src/SimpleTable/context/SimpleTableContext.d.ts +23 -0
  490. package/dist/types/shared/src/SimpleTable/index.d.ts +5 -0
  491. package/dist/types/{api → shared/src/api}/generated/access.d.ts +6 -6
  492. package/dist/types/{api → shared/src/api}/generated/actions.d.ts +6 -6
  493. package/dist/types/{api → shared/src/api}/generated/activityFeed.d.ts +8 -8
  494. package/dist/types/{api → shared/src/api}/generated/addons.d.ts +28 -28
  495. package/dist/types/{api → shared/src/api}/generated/anatomy.d.ts +36 -6
  496. package/dist/types/{api → shared/src/api}/generated/attributes.d.ts +5 -5
  497. package/dist/types/{api → shared/src/api}/generated/authentication.d.ts +5 -5
  498. package/dist/types/{api → shared/src/api}/generated/bundles.d.ts +7 -7
  499. package/dist/types/{api → shared/src/api}/generated/configuration.d.ts +7 -7
  500. package/dist/types/{api → shared/src/api}/generated/desktop.d.ts +12 -12
  501. package/dist/types/{api → shared/src/api}/generated/entityLists.d.ts +12 -12
  502. package/dist/types/{api → shared/src/api}/generated/events.d.ts +8 -8
  503. package/dist/types/{api → shared/src/api}/generated/files.d.ts +7 -7
  504. package/dist/types/{api → shared/src/api}/generated/folders.d.ts +8 -8
  505. package/dist/types/{api → shared/src/api}/generated/graphql.d.ts +280 -64
  506. package/dist/types/{api → shared/src/api}/generated/inbox.d.ts +1 -1
  507. package/dist/types/{api → shared/src/api}/generated/links.d.ts +5 -5
  508. package/dist/types/{api → shared/src/api}/generated/market.d.ts +6 -6
  509. package/dist/types/{api → shared/src/api}/generated/onboarding.d.ts +3 -3
  510. package/dist/types/{api → shared/src/api}/generated/operations.d.ts +3 -3
  511. package/dist/types/{api → shared/src/api}/generated/products.d.ts +5 -5
  512. package/dist/types/{api → shared/src/api}/generated/projectDashboard.d.ts +4 -4
  513. package/dist/types/{api → shared/src/api}/generated/projects.d.ts +27 -27
  514. package/dist/types/{api → shared/src/api}/generated/representations.d.ts +5 -5
  515. package/dist/types/{api → shared/src/api}/generated/reviewables.d.ts +7 -7
  516. package/dist/types/{api → shared/src/api}/generated/services.d.ts +6 -6
  517. package/dist/types/{api → shared/src/api}/generated/system.d.ts +12 -12
  518. package/dist/types/{api → shared/src/api}/generated/tasks.d.ts +8 -8
  519. package/dist/types/{api → shared/src/api}/generated/teams.d.ts +6 -6
  520. package/dist/types/{api → shared/src/api}/generated/thumbnails.d.ts +11 -11
  521. package/dist/types/{api → shared/src/api}/generated/uRIs.d.ts +2 -2
  522. package/dist/types/{api → shared/src/api}/generated/users.d.ts +26 -26
  523. package/dist/types/{api → shared/src/api}/generated/versions.d.ts +6 -6
  524. package/dist/types/{api → shared/src/api}/generated/workfiles.d.ts +6 -6
  525. package/dist/types/{api → shared/src/api}/generated/ynputCloud.d.ts +5 -5
  526. package/dist/types/{api → shared/src/api}/queries/actions/getActions.d.ts +29 -29
  527. package/dist/types/{api → shared/src/api}/queries/activities/getActivities.d.ts +88 -71
  528. package/dist/types/{api → shared/src/api}/queries/activities/getMentions.d.ts +18 -18
  529. package/dist/types/{api → shared/src/api}/queries/activities/updateActivities.d.ts +94 -62
  530. package/dist/types/{api → shared/src/api}/queries/activities/updateReaction.d.ts +10 -10
  531. package/dist/types/{api → shared/src/api}/queries/addons/getAddons.d.ts +67 -67
  532. package/dist/types/{api → shared/src/api}/queries/addons/updateAddons.d.ts +35 -35
  533. package/dist/types/{api → shared/src/api}/queries/attributes/getAttributes.d.ts +23 -23
  534. package/dist/types/{api → shared/src/api}/queries/attributes/updateAttributes.d.ts +12 -12
  535. package/dist/types/{api → shared/src/api}/queries/authentication/getAuthentication.d.ts +15 -15
  536. package/dist/types/{api → shared/src/api}/queries/entities/getEntity.d.ts +89 -73
  537. package/dist/types/{api → shared/src/api}/queries/entities/getEntityPanel.d.ts +60 -44
  538. package/dist/types/{api → shared/src/api}/queries/entities/transformDetailsPanelData.d.ts +1 -0
  539. package/dist/types/{api → shared/src/api}/queries/entities/updateEntity.d.ts +48 -32
  540. package/dist/types/shared/src/api/queries/entityLists/getLists.d.ts +3009 -0
  541. package/dist/types/shared/src/api/queries/entityLists/getListsAttributes.d.ts +148 -0
  542. package/dist/types/shared/src/api/queries/entityLists/index.d.ts +5 -0
  543. package/dist/types/shared/src/api/queries/entityLists/types.d.ts +71 -0
  544. package/dist/types/shared/src/api/queries/entityLists/updateLists.d.ts +1137 -0
  545. package/dist/types/shared/src/api/queries/entityLists/updateListsAttributes.d.ts +176 -0
  546. package/dist/types/{api → shared/src/api}/queries/folders/getFolders.d.ts +26 -26
  547. package/dist/types/{api → shared/src/api}/queries/index.d.ts +1 -0
  548. package/dist/types/{api → shared/src/api}/queries/overview/getOverview.d.ts +89 -73
  549. package/dist/types/{api → shared/src/api}/queries/overview/updateOverview.d.ts +6 -6
  550. package/dist/types/{api → shared/src/api}/queries/project/getProject.d.ts +103 -103
  551. package/dist/types/{api → shared/src/api}/queries/review/getReview.d.ts +36 -36
  552. package/dist/types/{api → shared/src/api}/queries/review/updateReview.d.ts +13 -13
  553. package/dist/types/{api → shared/src/api}/queries/system/getSystem.d.ts +39 -39
  554. package/dist/types/{api → shared/src/api}/queries/userDashboard/getUserDashboard.d.ts +69 -53
  555. package/dist/types/{api → shared/src/api}/queries/users/getUsers.d.ts +126 -110
  556. package/dist/types/{api → shared/src/api}/queries/watchers/getWatchers.d.ts +20 -20
  557. package/dist/types/shared/src/components/AttributeEditor/AttributeEditor.d.ts +18 -0
  558. package/dist/types/shared/src/components/AttributeEditor/components/MinMaxField.d.ts +14 -0
  559. package/dist/types/shared/src/components/AttributeEditor/components/index.d.ts +1 -0
  560. package/dist/types/shared/src/components/AttributeEditor/index.d.ts +1 -0
  561. package/dist/types/shared/src/components/EnumEditor/DraggableEnumEditorItem.d.ts +10 -0
  562. package/dist/types/shared/src/components/EnumEditor/EnumEditor.d.ts +22 -0
  563. package/dist/types/shared/src/components/EnumEditor/EnumEditor.styled.d.ts +23 -0
  564. package/dist/types/shared/src/components/EnumEditor/hooks/useDraggable.d.ts +17 -0
  565. package/dist/types/shared/src/components/EnumEditor/index.d.ts +1 -0
  566. package/dist/types/shared/src/components/EnumEditor/util/index.d.ts +1 -0
  567. package/dist/types/shared/src/components/ProjectTableSettings/ColumnItem.d.ts +14 -0
  568. package/dist/types/shared/src/components/ProjectTableSettings/ColumnsSettings.d.ts +9 -0
  569. package/dist/types/shared/src/components/ProjectTableSettings/ProjectTableSettings.d.ts +18 -0
  570. package/dist/types/shared/src/components/ProjectTableSettings/SortableColumnItem.d.ts +13 -0
  571. package/dist/types/shared/src/components/ProjectTableSettings/index.d.ts +1 -0
  572. package/dist/types/shared/src/components/SettingsPanel/SettingsPanel.d.ts +16 -0
  573. package/dist/types/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.d.ts +20 -0
  574. package/dist/types/shared/src/components/SettingsPanel/index.d.ts +2 -0
  575. package/dist/types/{components → shared/src/components}/index.d.ts +4 -0
  576. package/dist/types/{containers → shared/src/containers}/Actions/Actions.d.ts +5 -1
  577. package/dist/types/{containers → shared/src/containers}/ContextMenu/ContextMenuItem.d.ts +3 -1
  578. package/dist/types/shared/src/containers/ProjectTreeTable/ProjectTreeTable.d.ts +39 -0
  579. package/dist/types/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.d.ts +23 -0
  580. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/CellEditingContext.d.ts +3 -3
  581. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/ColumnSettingsContext.d.ts +6 -2
  582. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/ProjectTableContext.d.ts +41 -34
  583. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/ProjectTableQueriesContext.d.ts +3 -2
  584. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/clipboard/clipboardTypes.d.ts +4 -1
  585. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/clipboard/clipboardUtils.d.ts +2 -2
  586. package/dist/types/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.d.ts +29 -0
  587. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/hooks/useFolderRelationships.d.ts +7 -7
  588. package/dist/types/shared/src/containers/ProjectTreeTable/hooks/useGetEntityTypeData.d.ts +6 -0
  589. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/hooks/useHistory.d.ts +5 -3
  590. package/dist/types/shared/src/containers/ProjectTreeTable/hooks/useOverviewTable.d.ts +17 -0
  591. package/dist/types/{containers/ProjectTreeTable/hooks/useUpdateOverview.d.ts → shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.d.ts} +12 -3
  592. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/index.d.ts +5 -1
  593. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/types/index.d.ts +4 -6
  594. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/types/table.d.ts +51 -12
  595. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/utils/cellUtils.d.ts +2 -3
  596. package/dist/types/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.d.ts +16 -0
  597. package/dist/types/shared/src/containers/ProjectTreeTable/utils/getReadOnlyLists.d.ts +5 -0
  598. package/dist/types/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.d.ts +14 -0
  599. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/utils/index.d.ts +2 -0
  600. package/dist/types/shared/src/containers/ProjectTreeTable/utils/validateUpdateEntities.d.ts +4 -0
  601. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/BooleanWidget.d.ts +1 -2
  602. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/CellWidget.d.ts +10 -0
  603. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/DateWidget.d.ts +2 -3
  604. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/EntityNameWidget.d.ts +1 -1
  605. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/EnumWidget.d.ts +2 -2
  606. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/TextWidget.d.ts +3 -1
  607. package/dist/types/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.d.ts +9 -0
  608. package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/index.d.ts +1 -0
  609. package/dist/types/shared/src/context/SettingsPanelContext.d.ts +20 -0
  610. package/dist/types/{context → shared/src/context}/index.d.ts +1 -0
  611. package/dist/types/shared/src/index.d.ts +2 -0
  612. package/dist/types/shared/src/util/getAttributeIcon.d.ts +4 -0
  613. package/dist/types/{util → shared/src/util}/index.d.ts +1 -0
  614. package/dist/types/util.d.ts +1 -1
  615. package/dist/util.cjs.js +2 -0
  616. package/dist/util.cjs.js.map +1 -1
  617. package/dist/util.es.js +2 -0
  618. package/dist/util.es.js.map +1 -1
  619. package/package.json +2 -1
  620. package/dist/_virtual/lodash.cjs.js +0 -6
  621. package/dist/_virtual/lodash.cjs.js.map +0 -1
  622. package/dist/_virtual/lodash.cjs2.js +0 -5
  623. package/dist/_virtual/lodash.cjs2.js.map +0 -1
  624. package/dist/_virtual/lodash.es.js +0 -6
  625. package/dist/_virtual/lodash.es.js.map +0 -1
  626. package/dist/_virtual/lodash.es2.js +0 -5
  627. package/dist/_virtual/lodash.es2.js.map +0 -1
  628. package/dist/shared/node_modules/lodash/lodash.cjs.js +0 -5492
  629. package/dist/shared/node_modules/lodash/lodash.cjs.js.map +0 -1
  630. package/dist/shared/node_modules/lodash/lodash.es.js +0 -5492
  631. package/dist/shared/node_modules/lodash/lodash.es.js.map +0 -1
  632. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTableColumns.cjs.js +0 -257
  633. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTableColumns.cjs.js.map +0 -1
  634. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTableColumns.es.js +0 -258
  635. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTableColumns.es.js.map +0 -1
  636. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateOverview.cjs.js.map +0 -1
  637. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateOverview.es.js.map +0 -1
  638. package/dist/shared/src/containers/ProjectTreeTable/hooks/useValidateUpdates.cjs.js +0 -69
  639. package/dist/shared/src/containers/ProjectTreeTable/hooks/useValidateUpdates.cjs.js.map +0 -1
  640. package/dist/shared/src/containers/ProjectTreeTable/hooks/useValidateUpdates.es.js +0 -70
  641. package/dist/shared/src/containers/ProjectTreeTable/hooks/useValidateUpdates.es.js.map +0 -1
  642. package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +0 -26
  643. package/dist/types/containers/ProjectTreeTable/ProjectTreeTableColumns.d.ts +0 -16
  644. package/dist/types/containers/ProjectTreeTable/hooks/useCellContextMenu.d.ts +0 -10
  645. package/dist/types/containers/ProjectTreeTable/hooks/useOverviewTable.d.ts +0 -32
  646. package/dist/types/containers/ProjectTreeTable/hooks/useValidateUpdates.d.ts +0 -3
  647. package/dist/types/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.d.ts +0 -4
  648. /package/dist/types/{api → shared/src/api}/base/baseQueryTypes.d.ts +0 -0
  649. /package/dist/types/{api → shared/src/api}/base/client.d.ts +0 -0
  650. /package/dist/types/{api → shared/src/api}/base/index.d.ts +0 -0
  651. /package/dist/types/{api → shared/src/api}/generated/index.d.ts +0 -0
  652. /package/dist/types/{api → shared/src/api}/index.d.ts +0 -0
  653. /package/dist/types/{api → shared/src/api}/queries/actions/index.d.ts +0 -0
  654. /package/dist/types/{api → shared/src/api}/queries/activities/activityQueries.d.ts +0 -0
  655. /package/dist/types/{api → shared/src/api}/queries/activities/index.d.ts +0 -0
  656. /package/dist/types/{api → shared/src/api}/queries/activities/types.d.ts +0 -0
  657. /package/dist/types/{api → shared/src/api}/queries/activities/util/activitiesHelpers.d.ts +0 -0
  658. /package/dist/types/{api → shared/src/api}/queries/addons/index.d.ts +0 -0
  659. /package/dist/types/{api → shared/src/api}/queries/attributes/index.d.ts +0 -0
  660. /package/dist/types/{api → shared/src/api}/queries/authentication/index.d.ts +0 -0
  661. /package/dist/types/{api → shared/src/api}/queries/entities/entityQueries.d.ts +0 -0
  662. /package/dist/types/{api → shared/src/api}/queries/entities/index.d.ts +0 -0
  663. /package/dist/types/{api → shared/src/api}/queries/folders/index.d.ts +0 -0
  664. /package/dist/types/{api → shared/src/api}/queries/overview/index.d.ts +0 -0
  665. /package/dist/types/{api → shared/src/api}/queries/project/ProjectTypes.d.ts +0 -0
  666. /package/dist/types/{api → shared/src/api}/queries/project/index.d.ts +0 -0
  667. /package/dist/types/{api → shared/src/api}/queries/review/index.d.ts +0 -0
  668. /package/dist/types/{api → shared/src/api}/queries/review/types.d.ts +0 -0
  669. /package/dist/types/{api → shared/src/api}/queries/system/index.d.ts +0 -0
  670. /package/dist/types/{api → shared/src/api}/queries/userDashboard/convertAccessGroupsData.d.ts +0 -0
  671. /package/dist/types/{api → shared/src/api}/queries/userDashboard/getUserProjectsAccess.d.ts +0 -0
  672. /package/dist/types/{api → shared/src/api}/queries/userDashboard/index.d.ts +0 -0
  673. /package/dist/types/{api → shared/src/api}/queries/users/index.d.ts +0 -0
  674. /package/dist/types/{api → shared/src/api}/queries/watchers/index.d.ts +0 -0
  675. /package/dist/types/{components → shared/src/components}/DetailsDialog/DetailsDialog.d.ts +0 -0
  676. /package/dist/types/{components → shared/src/components}/DetailsDialog/index.d.ts +0 -0
  677. /package/dist/types/{components → shared/src/components}/DetailsPanelAttributes/DetailsPanelAttributes.d.ts +0 -0
  678. /package/dist/types/{components → shared/src/components}/DetailsPanelAttributes/DetailsPanelAttributesEditor.d.ts +0 -0
  679. /package/dist/types/{components → shared/src/components}/DetailsPanelAttributes/components/RenderFieldWidget.d.ts +0 -0
  680. /package/dist/types/{components → shared/src/components}/DetailsPanelAttributes/formatAttributesData.d.ts +0 -0
  681. /package/dist/types/{components → shared/src/components}/DetailsPanelAttributes/index.d.ts +0 -0
  682. /package/dist/types/{components → shared/src/components}/EmptyPlaceholder/EmptyPlaceholder.d.ts +0 -0
  683. /package/dist/types/{components → shared/src/components}/EmptyPlaceholder/EmptyPlaceholderFlex.styled.d.ts +0 -0
  684. /package/dist/types/{components → shared/src/components}/EmptyPlaceholder/index.d.ts +0 -0
  685. /package/dist/types/{components → shared/src/components}/EntityPath/EntityPath.d.ts +0 -0
  686. /package/dist/types/{components → shared/src/components}/EntityPath/EntityPath.styled.d.ts +0 -0
  687. /package/dist/types/{components → shared/src/components}/EntityPath/SegmentProvider.d.ts +0 -0
  688. /package/dist/types/{components → shared/src/components}/EntityPath/index.d.ts +0 -0
  689. /package/dist/types/{components → shared/src/components}/EntityThumbnailUploader/EntityThumbnailUploader.d.ts +0 -0
  690. /package/dist/types/{components → shared/src/components}/EntityThumbnailUploader/EntityThumbnailUploader.styled.d.ts +0 -0
  691. /package/dist/types/{components → shared/src/components}/EntityThumbnailUploader/index.d.ts +0 -0
  692. /package/dist/types/{components → shared/src/components}/FileThumbnail/FileThumbnail.d.ts +0 -0
  693. /package/dist/types/{components → shared/src/components}/FileThumbnail/index.d.ts +0 -0
  694. /package/dist/types/{components → shared/src/components}/ReviewableCard/ReviewableCard.d.ts +0 -0
  695. /package/dist/types/{components → shared/src/components}/ReviewableCard/ReviewableCard.styled.d.ts +0 -0
  696. /package/dist/types/{components → shared/src/components}/ReviewableCard/index.d.ts +0 -0
  697. /package/dist/types/{components → shared/src/components}/ReviewableProgressCard/ReviewableProgressCard.d.ts +0 -0
  698. /package/dist/types/{components → shared/src/components}/ReviewableProgressCard/ReviewableProgressCard.styled.d.ts +0 -0
  699. /package/dist/types/{components → shared/src/components}/ReviewableProgressCard/index.d.ts +0 -0
  700. /package/dist/types/{components → shared/src/components}/ReviewablesList/EditReviewableDialog.d.ts +0 -0
  701. /package/dist/types/{components → shared/src/components}/ReviewablesList/ReviewablesList.d.ts +0 -0
  702. /package/dist/types/{components → shared/src/components}/ReviewablesList/ReviewablesList.styled.d.ts +0 -0
  703. /package/dist/types/{components → shared/src/components}/ReviewablesList/ReviewablesUpload.d.ts +0 -0
  704. /package/dist/types/{components → shared/src/components}/ReviewablesList/ReviewablesUpload.styled.d.ts +0 -0
  705. /package/dist/types/{components → shared/src/components}/ReviewablesList/SortableReviewableCard.d.ts +0 -0
  706. /package/dist/types/{components → shared/src/components}/ReviewablesList/getGroupedReviewables.d.ts +0 -0
  707. /package/dist/types/{components → shared/src/components}/ReviewablesList/index.d.ts +0 -0
  708. /package/dist/types/{components → shared/src/components}/SimpleFormDialog/SimpleFormDialog.d.ts +0 -0
  709. /package/dist/types/{components → shared/src/components}/SimpleFormDialog/index.d.ts +0 -0
  710. /package/dist/types/{components → shared/src/components}/Thumbnail/StackedThumbnails.d.ts +0 -0
  711. /package/dist/types/{components → shared/src/components}/Thumbnail/Thumbnail.d.ts +0 -0
  712. /package/dist/types/{components → shared/src/components}/Thumbnail/Thumbnail.styled.d.ts +0 -0
  713. /package/dist/types/{components → shared/src/components}/Thumbnail/index.d.ts +0 -0
  714. /package/dist/types/{components → shared/src/components}/ThumbnailSimple/ThumbnailSimple.d.ts +0 -0
  715. /package/dist/types/{components → shared/src/components}/ThumbnailSimple/index.d.ts +0 -0
  716. /package/dist/types/{components → shared/src/components}/ThumbnailUploader/ThumbnailUploader.d.ts +0 -0
  717. /package/dist/types/{components → shared/src/components}/ThumbnailUploader/ThumbnailUploader.styled.d.ts +0 -0
  718. /package/dist/types/{components → shared/src/components}/ThumbnailUploader/index.d.ts +0 -0
  719. /package/dist/types/{components → shared/src/components}/UserImage/UserImage.d.ts +0 -0
  720. /package/dist/types/{components → shared/src/components}/UserImage/index.d.ts +0 -0
  721. /package/dist/types/{components → shared/src/components}/Watchers/Watchers.d.ts +0 -0
  722. /package/dist/types/{components → shared/src/components}/Watchers/index.d.ts +0 -0
  723. /package/dist/types/{containers → shared/src/containers}/Actions/ActionConfigDialog.d.ts +0 -0
  724. /package/dist/types/{containers → shared/src/containers}/Actions/ActionIcon.d.ts +0 -0
  725. /package/dist/types/{containers → shared/src/containers}/Actions/Actions.styled.d.ts +0 -0
  726. /package/dist/types/{containers → shared/src/containers}/Actions/ActionsDropdown/ActionsDropdown.d.ts +0 -0
  727. /package/dist/types/{containers → shared/src/containers}/Actions/ActionsDropdown/ActionsDropdown.styled.d.ts +0 -0
  728. /package/dist/types/{containers → shared/src/containers}/Actions/ActionsDropdown/index.d.ts +0 -0
  729. /package/dist/types/{containers → shared/src/containers}/Actions/InteractiveActionDialog.d.ts +0 -0
  730. /package/dist/types/{containers → shared/src/containers}/Actions/index.d.ts +0 -0
  731. /package/dist/types/{containers → shared/src/containers}/ContextMenu/ContextMenuContext.d.ts +0 -0
  732. /package/dist/types/{containers → shared/src/containers}/ContextMenu/GlobalContextMenu.d.ts +0 -0
  733. /package/dist/types/{containers → shared/src/containers}/ContextMenu/index.d.ts +0 -0
  734. /package/dist/types/{containers → shared/src/containers}/ContextMenu/useCreateContextMenu.d.ts +0 -0
  735. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanel.d.ts +0 -0
  736. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanel.styled.d.ts +0 -0
  737. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.d.ts +0 -0
  738. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelFiles/index.d.ts +0 -0
  739. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.d.ts +0 -0
  740. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.d.ts +0 -0
  741. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelFloating/index.d.ts +0 -0
  742. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.d.ts +0 -0
  743. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.d.ts +0 -0
  744. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelHeader/index.d.ts +0 -0
  745. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.d.ts +0 -0
  746. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.d.ts +0 -0
  747. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/DetailsPanelSlideOut/index.d.ts +0 -0
  748. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/FeedFilters/FeedFilters.d.ts +0 -0
  749. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/FeedFilters/FeedFilters.styled.d.ts +0 -0
  750. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/FeedWrapper.d.ts +0 -0
  751. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/helpers/buildDetailsPanelTitles.d.ts +0 -0
  752. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/helpers/getAllProjectsStatuses.d.ts +0 -0
  753. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/helpers/getEntityPathData.d.ts +0 -0
  754. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/helpers/getThumbnails.d.ts +0 -0
  755. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/helpers/mergeProjectInfo.d.ts +0 -0
  756. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/hooks/useGetEntityPath.d.ts +0 -0
  757. /package/dist/types/{containers → shared/src/containers}/DetailsPanel/index.d.ts +0 -0
  758. /package/dist/types/{containers → shared/src/containers}/Feed/Feed.d.ts +0 -0
  759. /package/dist/types/{containers → shared/src/containers}/Feed/Feed.styled.d.ts +0 -0
  760. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.d.ts +0 -0
  761. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.d.ts +0 -0
  762. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityAssigneeChange/index.d.ts +0 -0
  763. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityCheckbox/ActivityCheckbox.d.ts +0 -0
  764. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityCheckbox/ActivityCheckbox.styled.d.ts +0 -0
  765. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityCheckbox/index.d.ts +0 -0
  766. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityComment/ActivityComment.d.ts +0 -0
  767. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityComment/ActivityComment.styled.d.ts +0 -0
  768. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityComment/ActivityMarkdownComponents.d.ts +0 -0
  769. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityComment/CommentWrapper.d.ts +0 -0
  770. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityComment/mappers.d.ts +0 -0
  771. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityDate.d.ts +0 -0
  772. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityGroup/ActivityGroup.d.ts +0 -0
  773. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityGroup/ActivityGroup.styled.d.ts +0 -0
  774. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityHeader/ActivityHeader.d.ts +0 -0
  775. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityHeader/ActivityHeader.styled.d.ts +0 -0
  776. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityItem.d.ts +0 -0
  777. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityReference/ActivityReference.d.ts +0 -0
  778. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityReference/ActivityReference.styled.d.ts +0 -0
  779. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityReferenceTooltip/ActivityReferenceTooltip.d.ts +0 -0
  780. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityReferenceTooltip/index.d.ts +0 -0
  781. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityStatus/ActivityStatus.d.ts +0 -0
  782. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityStatusChange/ActivityStatusChange.d.ts +0 -0
  783. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.d.ts +0 -0
  784. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityStatusChange/hooks/getContextParents.d.ts +0 -0
  785. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityVersions/ActivityVersions.d.ts +0 -0
  786. /package/dist/types/{containers → shared/src/containers}/Feed/components/ActivityVersions/ActivityVersions.styled.d.ts +0 -0
  787. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/CommentInput.d.ts +0 -0
  788. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/CommentInput.styled.d.ts +0 -0
  789. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/InputMarkdownConvert.d.ts +0 -0
  790. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/helpers.d.ts +0 -0
  791. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/hooks/useAnnotationsSync.d.ts +0 -0
  792. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/hooks/useAnnotationsUpload.d.ts +0 -0
  793. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/hooks/useInitialValue.d.ts +0 -0
  794. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/hooks/useMentionLink.d.ts +0 -0
  795. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/hooks/useSetCursorEnd.d.ts +0 -0
  796. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/index.d.ts +0 -0
  797. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/modules/ImageUploader.d.ts +0 -0
  798. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/modules/index.d.ts +0 -0
  799. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentInput/quillToMarkdown.d.ts +0 -0
  800. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentMentionSelect/CommentMentionSelect.d.ts +0 -0
  801. /package/dist/types/{containers → shared/src/containers}/Feed/components/CommentMentionSelect/CommentMentionSelect.styled.d.ts +0 -0
  802. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadCard/FileUploadCard.d.ts +0 -0
  803. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadCard/FileUploadCard.styled.d.ts +0 -0
  804. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadCard/index.d.ts +0 -0
  805. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadPreview/FileUploadPreview.d.ts +0 -0
  806. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadPreview/FileUploadPreview.styled.d.ts +0 -0
  807. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadPreview/Mimes/ImageMime.d.ts +0 -0
  808. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadPreview/Mimes/TextMime.d.ts +0 -0
  809. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadPreview/fileUtils.d.ts +0 -0
  810. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadPreview/hooks/useAttachmentNavigation.d.ts +0 -0
  811. /package/dist/types/{containers → shared/src/containers}/Feed/components/FileUploadPreview/index.d.ts +0 -0
  812. /package/dist/types/{containers → shared/src/containers}/Feed/components/FilesGrid/FilesGrid.d.ts +0 -0
  813. /package/dist/types/{containers → shared/src/containers}/Feed/components/FilesGrid/FilesGrid.styled.d.ts +0 -0
  814. /package/dist/types/{containers → shared/src/containers}/Feed/components/FilesGrid/index.d.ts +0 -0
  815. /package/dist/types/{containers → shared/src/containers}/Feed/components/ReactionContainer/ExistingReactions.d.ts +0 -0
  816. /package/dist/types/{containers → shared/src/containers}/Feed/components/ReactionContainer/Reaction.d.ts +0 -0
  817. /package/dist/types/{containers → shared/src/containers}/Feed/components/ReactionContainer/ReactionPanelOpener.d.ts +0 -0
  818. /package/dist/types/{containers → shared/src/containers}/Feed/components/ReactionContainer/Reactions.d.ts +0 -0
  819. /package/dist/types/{containers → shared/src/containers}/Feed/components/ReactionContainer/Reactions.styled.d.ts +0 -0
  820. /package/dist/types/{containers → shared/src/containers}/Feed/components/ReactionContainer/helpers.d.ts +0 -0
  821. /package/dist/types/{containers → shared/src/containers}/Feed/components/ReactionContainer/types.d.ts +0 -0
  822. /package/dist/types/{containers → shared/src/containers}/Feed/components/Tooltips/EntityTooltip/EntityTooltip.d.ts +0 -0
  823. /package/dist/types/{containers → shared/src/containers}/Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.d.ts +0 -0
  824. /package/dist/types/{containers → shared/src/containers}/Feed/components/Tooltips/UserTooltip/UserTooltip.d.ts +0 -0
  825. /package/dist/types/{containers → shared/src/containers}/Feed/components/Tooltips/UserTooltip/UserTooltip.styled.d.ts +0 -0
  826. /package/dist/types/{containers → shared/src/containers}/Feed/context/FeedContext.d.ts +0 -0
  827. /package/dist/types/{containers → shared/src/containers}/Feed/feedHelpers.d.ts +0 -0
  828. /package/dist/types/{containers → shared/src/containers}/Feed/helpers/groupActivityVersions.d.ts +0 -0
  829. /package/dist/types/{containers → shared/src/containers}/Feed/helpers/groupMinorActivities.d.ts +0 -0
  830. /package/dist/types/{containers → shared/src/containers}/Feed/helpers/mergeSimilarActivities.d.ts +0 -0
  831. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useCommentMutations.d.ts +0 -0
  832. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useGetFeedActivitiesData.d.ts +0 -0
  833. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useReferenceTooltip.d.ts +0 -0
  834. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useSaveScrollPos.d.ts +0 -0
  835. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useScrollOnInputOpen.d.ts +0 -0
  836. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useScrollToHighlighted.d.ts +0 -0
  837. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useTableKeyboardNavigation.d.ts +0 -0
  838. /package/dist/types/{containers → shared/src/containers}/Feed/hooks/useTransformActivities.d.ts +0 -0
  839. /package/dist/types/{containers → shared/src/containers}/Feed/index.d.ts +0 -0
  840. /package/dist/types/{containers → shared/src/containers}/Feed/mentionHelpers/getMentionOptions.d.ts +0 -0
  841. /package/dist/types/{containers → shared/src/containers}/Feed/mentionHelpers/getMentionTasks.d.ts +0 -0
  842. /package/dist/types/{containers → shared/src/containers}/Feed/mentionHelpers/getMentionUsers.d.ts +0 -0
  843. /package/dist/types/{containers → shared/src/containers}/Feed/mentionHelpers/getMentionVersions.d.ts +0 -0
  844. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/ProjectTreeTable.styled.d.ts +0 -0
  845. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/components/HeaderActionButton.d.ts +0 -0
  846. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/components/RowSelectionHeader.d.ts +0 -0
  847. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/components/SelectionCell.d.ts +0 -0
  848. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/ClipboardContext.d.ts +0 -0
  849. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/ProjectTableSelectionContext.d.ts +0 -0
  850. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/SelectedRowsContext.d.ts +0 -0
  851. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/SelectionCellsContext.d.ts +0 -0
  852. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/clipboard/clipboardValidation.d.ts +0 -0
  853. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/clipboard/index.d.ts +0 -0
  854. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/context/index.d.ts +0 -0
  855. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/hooks/useColumnVirtualization.d.ts +0 -0
  856. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/hooks/useCustomColumnWidthVars.d.ts +0 -0
  857. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/hooks/useDeleteEntities.d.ts +0 -0
  858. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/hooks/useKeyboardNavigation.d.ts +0 -0
  859. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/hooks/usePrefetchFolderTasks.d.ts +0 -0
  860. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/types/folders.d.ts +0 -0
  861. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/types/operations.d.ts +0 -0
  862. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/types/project.d.ts +0 -0
  863. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/utils/loadingUtils.d.ts +0 -0
  864. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/CollapsedWidget.d.ts +0 -0
  865. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/DateWidgetInput.d.ts +0 -0
  866. /package/dist/types/{containers → shared/src/containers}/ProjectTreeTable/widgets/TextWidgetInput.d.ts +0 -0
  867. /package/dist/types/{containers → shared/src/containers}/RepresentationsList/RepresentationsList.d.ts +0 -0
  868. /package/dist/types/{containers → shared/src/containers}/RepresentationsList/index.d.ts +0 -0
  869. /package/dist/types/{containers → shared/src/containers}/RepresentationsList/versionsToRepresentations.d.ts +0 -0
  870. /package/dist/types/{containers → shared/src/containers}/Slicer/createFilterFromSlicer.d.ts +0 -0
  871. /package/dist/types/{containers → shared/src/containers}/Slicer/index.d.ts +0 -0
  872. /package/dist/types/{containers → shared/src/containers}/Slicer/types.d.ts +0 -0
  873. /package/dist/types/{containers → shared/src/containers}/index.d.ts +0 -0
  874. /package/dist/types/{context → shared/src/context}/DetailsPanelContext.d.ts +0 -0
  875. /package/dist/types/{context → shared/src/context}/RemoteModulesContext.d.ts +0 -0
  876. /package/dist/types/{context → shared/src/context}/ThumbnailUploaderContext.d.ts +0 -0
  877. /package/dist/types/{context → shared/src/context}/pip/PiPProvider.d.ts +0 -0
  878. /package/dist/types/{context → shared/src/context}/pip/PiPWindow.d.ts +0 -0
  879. /package/dist/types/{context → shared/src/context}/pip/PiPWrapper.d.ts +0 -0
  880. /package/dist/types/{context → shared/src/context}/pip/index.d.ts +0 -0
  881. /package/dist/types/{hooks → shared/src/hooks}/index.d.ts +0 -0
  882. /package/dist/types/{hooks → shared/src/hooks}/useActionTriggers.d.ts +0 -0
  883. /package/dist/types/{hooks → shared/src/hooks}/useEntityUpdate.d.ts +0 -0
  884. /package/dist/types/{hooks → shared/src/hooks}/useLoadModule.d.ts +0 -0
  885. /package/dist/types/{hooks → shared/src/hooks}/useLoadModules.d.ts +0 -0
  886. /package/dist/types/{hooks → shared/src/hooks}/useLocalStorage.d.ts +0 -0
  887. /package/dist/types/{hooks → shared/src/hooks}/useScopedStatuses.d.ts +0 -0
  888. /package/dist/types/{util → shared/src/util}/confirmDelete.d.ts +0 -0
  889. /package/dist/types/{util → shared/src/util}/copyToClipboard.d.ts +0 -0
  890. /package/dist/types/{util → shared/src/util}/getEntityTypeIcon.d.ts +0 -0
  891. /package/dist/types/{util → shared/src/util}/getMixedState.d.ts +0 -0
  892. /package/dist/types/{util → shared/src/util}/getPriorityOptions.d.ts +0 -0
  893. /package/dist/types/{util → shared/src/util}/groupResult.d.ts +0 -0
  894. /package/dist/types/{util → shared/src/util}/platform.d.ts +0 -0
  895. /package/dist/types/{util → shared/src/util}/productTypes.d.ts +0 -0
  896. /package/dist/types/{util → shared/src/util}/pubsub.d.ts +0 -0
@@ -1,29 +1,34 @@
1
1
  import { j as jsxRuntimeExports } from "../../../../../_virtual/jsx-runtime.es.js";
2
2
  import { createContext, useContext, useState, useCallback, useMemo, useEffect } from "react";
3
- import useUpdateOverview from "../hooks/useUpdateOverview.es.js";
3
+ import useUpdateTableData from "../hooks/useUpdateTableData.es.js";
4
4
  import { toast } from "react-toastify";
5
- import useValidateUpdates from "../hooks/useValidateUpdates.es.js";
6
5
  import useHistory from "../hooks/useHistory.es.js";
6
+ import validateUpdateEntities from "../utils/validateUpdateEntities.es.js";
7
+ import { useProjectTableContext } from "./ProjectTableContext.es.js";
7
8
  const CellEditingContext = createContext(void 0);
8
9
  const CellEditingProvider = ({ children }) => {
9
10
  const [editingCellId, setEditingCellId] = useState(null);
10
11
  const isEditing = useCallback((id) => id === editingCellId, [editingCellId]);
11
- const { pushHistory, undo: undoHistory, redo: redoHistory, canUndo, canRedo } = useHistory();
12
- const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateOverview({
12
+ const history = useHistory();
13
+ const { pushHistory, undo: undoHistory, redo: redoHistory, canUndo, canRedo } = history;
14
+ const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateTableData({
13
15
  pushHistory
14
16
  });
15
- const validateUpdateEntities = useValidateUpdates();
16
- const handleUpdateEntities = async (entities = [], pushToHistory = true) => {
17
- try {
18
- validateUpdateEntities(entities);
19
- return await updateOverviewEntities(entities, pushToHistory);
20
- } catch (error) {
21
- toast.error(error.message);
22
- return Promise.reject(error);
23
- }
24
- };
17
+ const { attribFields } = useProjectTableContext();
18
+ const handleUpdateEntities = useCallback(
19
+ async (entities = [], pushToHistory = true) => {
20
+ try {
21
+ validateUpdateEntities(entities, attribFields);
22
+ return await updateOverviewEntities(entities, pushToHistory);
23
+ } catch (error) {
24
+ toast.error(error.message);
25
+ return Promise.reject(error);
26
+ }
27
+ },
28
+ [updateOverviewEntities, attribFields]
29
+ );
25
30
  const handleUndo = async () => {
26
- const [entitiesToUndo, entitiesToInherit] = undoHistory() || [];
31
+ const [entitiesToUndo, entitiesToInherit, callbacks] = undoHistory() || [];
27
32
  if (entitiesToUndo && entitiesToUndo.length > 0) {
28
33
  try {
29
34
  await handleUpdateEntities(entitiesToUndo, false);
@@ -38,9 +43,18 @@ const CellEditingProvider = ({ children }) => {
38
43
  toast.error("Failed to inherit changes");
39
44
  }
40
45
  }
46
+ if (callbacks && callbacks.length > 0) {
47
+ callbacks.forEach((callback) => {
48
+ try {
49
+ callback();
50
+ } catch (error) {
51
+ toast.error("Failed to execute custom undo action");
52
+ }
53
+ });
54
+ }
41
55
  };
42
56
  const handleRedo = async () => {
43
- const [entitiesToRedo, entitiesToInherit] = redoHistory() || [];
57
+ const [entitiesToRedo, entitiesToInherit, callbacks] = redoHistory() || [];
44
58
  if (entitiesToRedo && entitiesToRedo.length > 0) {
45
59
  try {
46
60
  await handleUpdateEntities(entitiesToRedo, false);
@@ -55,6 +69,15 @@ const CellEditingProvider = ({ children }) => {
55
69
  toast.error("Failed to inherit changes");
56
70
  }
57
71
  }
72
+ if (callbacks && callbacks.length > 0) {
73
+ callbacks.forEach((callback) => {
74
+ try {
75
+ callback();
76
+ } catch (error) {
77
+ toast.error("Failed to execute custom redo action");
78
+ }
79
+ });
80
+ }
58
81
  };
59
82
  const value = useMemo(
60
83
  () => ({
@@ -65,8 +88,7 @@ const CellEditingProvider = ({ children }) => {
65
88
  inheritFromParent,
66
89
  undo: handleUndo,
67
90
  redo: handleRedo,
68
- canUndo,
69
- canRedo
91
+ history
70
92
  }),
71
93
  [
72
94
  editingCellId,
@@ -75,8 +97,7 @@ const CellEditingProvider = ({ children }) => {
75
97
  inheritFromParent,
76
98
  handleUndo,
77
99
  handleRedo,
78
- canUndo,
79
- canRedo
100
+ history
80
101
  ]
81
102
  );
82
103
  useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"CellEditingContext.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/CellEditingContext.tsx"],"sourcesContent":["import React, {\n createContext,\n useContext,\n useState,\n useCallback,\n useMemo,\n useEffect,\n ReactNode,\n} from 'react'\nimport { CellId } from '../utils/cellUtils'\nimport useUpdateOverview, {\n InheritFromParent,\n UpdateTableEntities,\n} from '../hooks/useUpdateOverview'\nimport { toast } from 'react-toastify'\nimport useValidateUpdates from '../hooks/useValidateUpdates'\nimport useHistory from '../hooks/useHistory'\n\nexport interface CellEditingContextType {\n editingCellId: CellId | null\n setEditingCellId: (id: CellId | null) => void\n isEditing: (id: CellId) => boolean\n updateEntities: UpdateTableEntities\n inheritFromParent: InheritFromParent\n // Add history functions to context\n undo: () => Promise<void>\n redo: () => Promise<void>\n canUndo: boolean\n canRedo: boolean\n}\n\nconst CellEditingContext = createContext<CellEditingContextType | undefined>(undefined)\n\nexport const CellEditingProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [editingCellId, setEditingCellId] = useState<CellId | null>(null)\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 { pushHistory, undo: undoHistory, redo: redoHistory, canUndo, canRedo } = useHistory()\n\n const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateOverview({\n pushHistory,\n })\n\n const validateUpdateEntities = useValidateUpdates()\n\n const handleUpdateEntities: UpdateTableEntities = async (entities = [], pushToHistory = true) => {\n try {\n // validate the entities before updating\n validateUpdateEntities(entities)\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\n // Handle undo\n const handleUndo = async () => {\n const [entitiesToUndo, entitiesToInherit] = 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 }\n\n // Handle redo\n const handleRedo = async () => {\n const [entitiesToRedo, entitiesToInherit] = redoHistory() || []\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 }\n\n const value = useMemo(\n () => ({\n editingCellId,\n setEditingCellId,\n isEditing,\n updateEntities: handleUpdateEntities,\n inheritFromParent,\n undo: handleUndo,\n redo: handleRedo,\n canUndo,\n canRedo,\n }),\n [\n editingCellId,\n isEditing,\n handleUpdateEntities,\n inheritFromParent,\n handleUndo,\n handleRedo,\n canUndo,\n canRedo,\n ],\n )\n\n // Listen for global undo/redo shortcuts and invoke context handlers\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 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 if (ctrlKey && e.key === 'z') {\n e.preventDefault()\n if (canUndo) handleUndo()\n }\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 }\n\n document.addEventListener('keydown', onKeyDown)\n return () => document.removeEventListener('keydown', onKeyDown)\n }, [canUndo, canRedo, handleUndo, handleRedo])\n\n return <CellEditingContext.Provider value={value}>{children}</CellEditingContext.Provider>\n}\n\nexport const useCellEditing = (): CellEditingContextType => {\n const context = useContext(CellEditingContext)\n if (context === undefined) {\n throw new Error('useCellEditing must be used within a CellEditingProvider')\n }\n return context\n}\n"],"names":["jsx"],"mappings":"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"}
1
+ {"version":3,"file":"CellEditingContext.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/CellEditingContext.tsx"],"sourcesContent":["import React, {\n createContext,\n useContext,\n useState,\n useCallback,\n useMemo,\n useEffect,\n ReactNode,\n} from 'react'\nimport { CellId } from '../utils/cellUtils'\nimport useUpdateTableData, {\n InheritFromParent,\n UpdateTableEntities,\n} from '../hooks/useUpdateTableData'\nimport { toast } from 'react-toastify'\nimport useValidateUpdates from '../utils/validateUpdateEntities'\nimport useHistory, { UseHistoryReturn } from '../hooks/useHistory'\nimport validateUpdateEntities from '../utils/validateUpdateEntities'\nimport { useProjectTableContext } from './ProjectTableContext'\n\nexport interface CellEditingContextType {\n editingCellId: CellId | null\n setEditingCellId: (id: CellId | null) => void\n isEditing: (id: CellId) => boolean\n updateEntities: UpdateTableEntities\n inheritFromParent: InheritFromParent\n // Add history functions to context\n history: UseHistoryReturn\n undo: () => Promise<void>\n redo: () => Promise<void>\n}\n\nconst CellEditingContext = createContext<CellEditingContextType | undefined>(undefined)\n\nexport const CellEditingProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [editingCellId, setEditingCellId] = useState<CellId | null>(null)\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 { pushHistory, undo: undoHistory, redo: redoHistory, canUndo, canRedo } = history\n\n const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateTableData({\n pushHistory,\n })\n const { attribFields } = useProjectTableContext()\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 const value = useMemo(\n () => ({\n editingCellId,\n setEditingCellId,\n isEditing,\n updateEntities: handleUpdateEntities,\n inheritFromParent,\n undo: handleUndo,\n redo: handleRedo,\n history,\n }),\n [\n editingCellId,\n isEditing,\n handleUpdateEntities,\n inheritFromParent,\n handleUndo,\n handleRedo,\n history,\n ],\n )\n\n // Listen for global undo/redo shortcuts and invoke context handlers\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 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 if (ctrlKey && e.key === 'z') {\n e.preventDefault()\n if (canUndo) handleUndo()\n }\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 }\n\n document.addEventListener('keydown', onKeyDown)\n return () => document.removeEventListener('keydown', onKeyDown)\n }, [canUndo, canRedo, handleUndo, handleRedo])\n\n return <CellEditingContext.Provider value={value}>{children}</CellEditingContext.Provider>\n}\n\nexport const useCellEditing = (): CellEditingContextType => {\n const context = useContext(CellEditingContext)\n if (context === undefined) {\n throw new Error('useCellEditing must be used within a CellEditingProvider')\n }\n return context\n}\n"],"names":["jsx"],"mappings":"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"}
@@ -7,23 +7,15 @@ const CellEditingContext = require("./CellEditingContext.cjs.js");
7
7
  const cellUtils = require("../utils/cellUtils.cjs.js");
8
8
  const clipboardUtils = require("./clipboard/clipboardUtils.cjs.js");
9
9
  const clipboardValidation = require("./clipboard/clipboardValidation.cjs.js");
10
- const ProjectTableContext = require("./ProjectTableContext.cjs.js");
11
10
  const ClipboardContext = React.createContext(void 0);
12
- const ClipboardProvider = ({ children, options }) => {
13
- const { foldersMap, tasksMap, attribFields } = ProjectTableContext.useProjectTableContext();
11
+ const ClipboardProvider = ({
12
+ children,
13
+ entitiesMap,
14
+ columnEnums,
15
+ columnReadOnly
16
+ }) => {
14
17
  const { selectedCells, gridMap, focusedCellId } = SelectionCellsContext.useSelectionCellsContext();
15
18
  const { updateEntities } = CellEditingContext.useCellEditing();
16
- const attribByField = React.useMemo(() => {
17
- return attribFields.reduce((acc, attrib) => {
18
- var _a, _b, _c;
19
- if ((_b = (_a = attrib.data) == null ? void 0 : _a.enum) == null ? void 0 : _b.length) {
20
- acc[attrib.name] = (_c = attrib.data) == null ? void 0 : _c.enum;
21
- }
22
- return acc;
23
- }, {});
24
- }, [attribFields]);
25
- const columnEnums = React.useMemo(() => ({ ...options, ...attribByField }), [attribByField]);
26
- const columnReadOnly = attribFields.filter((attrib) => attrib.readOnly).map((attrib) => attrib.name);
27
19
  const getSelectionData = React.useCallback(
28
20
  async (selected, config) => {
29
21
  const { headers, fullRow } = config || {};
@@ -83,8 +75,7 @@ const ClipboardProvider = ({ children, options }) => {
83
75
  clipboardText += headerValues.join(" ") + "\n";
84
76
  }
85
77
  for (const rowId of sortedRows) {
86
- const isFolder = foldersMap.has(rowId);
87
- const entity = isFolder ? foldersMap.get(rowId) : tasksMap.get(rowId);
78
+ const entity = entitiesMap.get(rowId);
88
79
  if (!entity) continue;
89
80
  const colIds2 = Array.from(cellsByRow.get(rowId) || []).sort((a, b) => {
90
81
  const indexA = gridMap.colIdToIndex.get(a) ?? Infinity;
@@ -98,7 +89,7 @@ const ClipboardProvider = ({ children, options }) => {
98
89
  const foundValue = cellUtils.getCellValue(entity, colId);
99
90
  cellValue = foundValue !== void 0 && foundValue !== null ? String(foundValue) : "";
100
91
  if (colId === "name") {
101
- cellValue = clipboardUtils.getEntityPath(rowId, isFolder, foldersMap, tasksMap);
92
+ cellValue = clipboardUtils.getEntityPath(rowId, entitiesMap);
102
93
  }
103
94
  if (colId === "subType") {
104
95
  cellValue = entity[isFolder ? "folderType" : "taskType"] || "";
@@ -112,7 +103,7 @@ const ClipboardProvider = ({ children, options }) => {
112
103
  console.error("Failed to copy to clipboard:", error);
113
104
  }
114
105
  },
115
- [selectedCells, focusedCellId, gridMap, foldersMap, tasksMap]
106
+ [selectedCells, focusedCellId, gridMap, entitiesMap]
116
107
  );
117
108
  const copyToClipboard = React.useCallback(
118
109
  async (selected, fullRow) => {
@@ -135,7 +126,7 @@ const ClipboardProvider = ({ children, options }) => {
135
126
  clipboardUtils.clipboardError(`Failed to copy to clipboard: ${error.message}`);
136
127
  }
137
128
  },
138
- [selectedCells, foldersMap, tasksMap, gridMap]
129
+ [selectedCells, entitiesMap, gridMap]
139
130
  );
140
131
  const exportCSV = React.useCallback(
141
132
  async (selected, projectName, fullRow) => {
@@ -156,10 +147,11 @@ const ClipboardProvider = ({ children, options }) => {
156
147
  console.error("Failed to copy to clipboard:", error);
157
148
  }
158
149
  },
159
- [selectedCells, foldersMap, tasksMap, gridMap, getSelectionData]
150
+ [selectedCells, entitiesMap, gridMap, getSelectionData]
160
151
  );
161
152
  const pasteFromClipboard = React.useCallback(
162
153
  async (selected) => {
154
+ var _a, _b;
163
155
  selected = selected || Array.from(selectedCells);
164
156
  if (!selected.length) return;
165
157
  if (!navigator.clipboard) {
@@ -177,20 +169,19 @@ const ClipboardProvider = ({ children, options }) => {
177
169
  clipboardUtils.clipboardError(`Failed to read from clipboard: ${error.message}`);
178
170
  return;
179
171
  }
180
- if (!clipboardText.trim()) return;
181
172
  const parsedData = clipboardUtils.parseClipboardText(clipboardText);
182
173
  if (!parsedData.length) return;
183
174
  const isSingleCellValue = parsedData.length === 1 && parsedData[0].values.length === 1;
184
175
  const cellsByRow = /* @__PURE__ */ new Map();
185
176
  Array.from(selected).forEach((cellId) => {
186
- var _a;
177
+ var _a2;
187
178
  const position = cellUtils.parseCellId(cellId);
188
179
  if (!position) return;
189
180
  const { rowId, colId } = position;
190
181
  if (!cellsByRow.has(rowId)) {
191
182
  cellsByRow.set(rowId, /* @__PURE__ */ new Set());
192
183
  }
193
- (_a = cellsByRow.get(rowId)) == null ? void 0 : _a.add(colId);
184
+ (_a2 = cellsByRow.get(rowId)) == null ? void 0 : _a2.add(colId);
194
185
  });
195
186
  const sortedRows = Array.from(cellsByRow.keys()).sort((a, b) => {
196
187
  const indexA = gridMap.rowIdToIndex.get(a) ?? Infinity;
@@ -207,7 +198,7 @@ const ClipboardProvider = ({ children, options }) => {
207
198
  const colId = selectedColIds[colIndex];
208
199
  for (let rowIndex = 0; rowIndex < sortedRows.length; rowIndex++) {
209
200
  const rowId = sortedRows[rowIndex];
210
- const isFolder = foldersMap.has(rowId);
201
+ const isFolder2 = ((_a = cellUtils.getEntityDataById(rowId, entitiesMap)) == null ? void 0 : _a.entityType) === "folder";
211
202
  let pasteValue;
212
203
  if (isSingleCellValue) {
213
204
  pasteValue = parsedData[0].values[0];
@@ -218,7 +209,7 @@ const ClipboardProvider = ({ children, options }) => {
218
209
  }
219
210
  const isValid = clipboardValidation.validateClipboardData({
220
211
  colId,
221
- isFolder,
212
+ isFolder: isFolder2,
222
213
  pasteValue,
223
214
  parsedData,
224
215
  columnEnums,
@@ -230,7 +221,7 @@ const ClipboardProvider = ({ children, options }) => {
230
221
  if (!isValid) return;
231
222
  }
232
223
  }
233
- const entitiesMap = /* @__PURE__ */ new Map();
224
+ const entitiesToUpdateMap = /* @__PURE__ */ new Map();
234
225
  for (let colIndex = 0; colIndex < selectedColIds.length; colIndex++) {
235
226
  const colId = selectedColIds[colIndex];
236
227
  if (colId === "name") continue;
@@ -238,8 +229,7 @@ const ClipboardProvider = ({ children, options }) => {
238
229
  let fieldValueType = "string";
239
230
  if (sortedRows.length > 0) {
240
231
  const firstRowId = sortedRows[0];
241
- const isFolder = foldersMap.has(firstRowId);
242
- const entity = isFolder ? foldersMap.get(firstRowId) : tasksMap.get(firstRowId);
232
+ const entity = entitiesMap.get(firstRowId);
243
233
  if (entity) {
244
234
  isAttrib = colId.startsWith("attrib_");
245
235
  const fieldValue = cellUtils.getCellValue(entity, colId);
@@ -257,8 +247,8 @@ const ClipboardProvider = ({ children, options }) => {
257
247
  }
258
248
  for (let rowIndex = 0; rowIndex < sortedRows.length; rowIndex++) {
259
249
  const rowId = sortedRows[rowIndex];
260
- const isFolder = foldersMap.has(rowId);
261
- const entityType = isFolder ? "folder" : "task";
250
+ const entityType = (_b = cellUtils.getEntityDataById(rowId, entitiesMap)) == null ? void 0 : _b.entityType;
251
+ const isFolder2 = entityType === "folder";
262
252
  let pasteValue;
263
253
  if (isSingleCellValue) {
264
254
  pasteValue = parsedData[0].values[0];
@@ -269,21 +259,22 @@ const ClipboardProvider = ({ children, options }) => {
269
259
  }
270
260
  let fieldToUpdate = colId.split("_").pop() || colId;
271
261
  if (colId === "subType") {
272
- fieldToUpdate = isFolder ? "folderType" : "taskType";
262
+ fieldToUpdate = isFolder2 ? "folderType" : "taskType";
273
263
  isAttrib = false;
274
264
  if (!pasteValue) continue;
275
265
  }
276
266
  const processedValue = clipboardUtils.processFieldValue(pasteValue, fieldValueType);
277
267
  const entityKey = `${rowId}-${entityType}`;
278
- if (!entitiesMap.has(entityKey)) {
279
- entitiesMap.set(entityKey, {
268
+ if (!entitiesToUpdateMap.has(entityKey) && entityType) {
269
+ entitiesToUpdateMap.set(entityKey, {
270
+ rowId,
280
271
  id: rowId,
281
272
  type: entityType,
282
273
  fields: {},
283
274
  attrib: {}
284
275
  });
285
276
  }
286
- const entityData = entitiesMap.get(entityKey);
277
+ const entityData = entitiesToUpdateMap.get(entityKey);
287
278
  if (isAttrib) {
288
279
  entityData.attrib[fieldToUpdate] = processedValue;
289
280
  } else {
@@ -292,9 +283,10 @@ const ClipboardProvider = ({ children, options }) => {
292
283
  }
293
284
  }
294
285
  const allEntityUpdates = [];
295
- entitiesMap.forEach((entity) => {
286
+ entitiesToUpdateMap.forEach((entity) => {
296
287
  Object.entries(entity.fields).forEach(([field, value2]) => {
297
288
  allEntityUpdates.push({
289
+ rowId: entity.rowId,
298
290
  id: entity.id,
299
291
  type: entity.type,
300
292
  field,
@@ -303,6 +295,7 @@ const ClipboardProvider = ({ children, options }) => {
303
295
  });
304
296
  Object.entries(entity.attrib).forEach(([field, value2]) => {
305
297
  allEntityUpdates.push({
298
+ rowId: entity.rowId,
306
299
  id: entity.id,
307
300
  type: entity.type,
308
301
  field,
@@ -322,7 +315,7 @@ const ClipboardProvider = ({ children, options }) => {
322
315
  }
323
316
  }
324
317
  },
325
- [selectedCells, gridMap, foldersMap, tasksMap, updateEntities, columnEnums]
318
+ [selectedCells, gridMap, entitiesMap, updateEntities, columnEnums]
326
319
  );
327
320
  React.useEffect(() => {
328
321
  const handleKeyDown = (e) => {
@@ -1 +1 @@
1
- {"version":3,"file":"ClipboardContext.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ClipboardContext.tsx"],"sourcesContent":["import React, { createContext, useContext, useCallback, useMemo, useEffect } from 'react'\n\n// Contexts\nimport { ROW_SELECTION_COLUMN_ID, useSelectionCellsContext } from './SelectionCellsContext'\nimport { useCellEditing } from './CellEditingContext'\n\n// Utils\nimport { getCellValue, parseCellId } from '../utils/cellUtils'\n\n// Types\nimport { EntityUpdate } from '../hooks/useUpdateOverview'\n\n// Import from the new modular files\nimport {\n getEntityPath,\n parseClipboardText,\n clipboardError,\n processFieldValue,\n} from './clipboard/clipboardUtils'\nimport { validateClipboardData } from './clipboard/clipboardValidation'\nimport { ClipboardContextType, ClipboardProviderProps } from './clipboard/clipboardTypes'\nimport { useProjectTableContext } from './ProjectTableContext'\nimport { AttributeEnumItem } from '@shared/api'\n\nconst ClipboardContext = createContext<ClipboardContextType | undefined>(undefined)\n\nexport const ClipboardProvider: React.FC<ClipboardProviderProps> = ({ children, options }) => {\n const { foldersMap, tasksMap, attribFields } = useProjectTableContext()\n // Get selection information from SelectionCellsContext\n const { selectedCells, gridMap, focusedCellId } = useSelectionCellsContext()\n const { updateEntities } = useCellEditing()\n\n // convert attribs to object\n const attribByField = useMemo(() => {\n return attribFields.reduce((acc: Record<string, AttributeEnumItem[]>, attrib) => {\n if (attrib.data?.enum?.length) {\n acc[attrib.name] = attrib.data?.enum\n }\n return acc\n }, {})\n }, [attribFields])\n\n const columnEnums = useMemo(() => ({ ...options, ...attribByField }), [attribByField])\n\n const columnReadOnly = attribFields\n .filter((attrib) => attrib.readOnly)\n .map((attrib) => attrib.name)\n\n const getSelectionData = useCallback(\n async (selected: string[], config?: { headers?: boolean; fullRow?: boolean }) => {\n const { headers, fullRow } = config || {}\n try {\n // First, organize selected cells by row\n const cellsByRow = new Map<string, Set<string>>()\n\n // Parse all selected cells and organize by rowId and colId\n selected.forEach((cellId) => {\n const position = parseCellId(cellId)\n if (!position) return\n\n const { rowId, colId } = position\n\n // do not include row selection column\n if (colId === ROW_SELECTION_COLUMN_ID) return\n\n if (!cellsByRow.has(rowId)) {\n cellsByRow.set(rowId, new Set())\n }\n\n cellsByRow.get(rowId)?.add(colId)\n })\n\n if (fullRow) {\n const selectedRows = selected\n .filter(\n (cellId) =>\n parseCellId(cellId)?.rowId &&\n parseCellId(cellId)?.colId === ROW_SELECTION_COLUMN_ID,\n )\n .map((cellId) => parseCellId(cellId)?.rowId) as string[]\n\n // select the whole row\n // For rows with selection cells, add all available columns\n selectedRows.forEach((rowId) => {\n // add the rowId if it doesn't exist\n if (!cellsByRow.has(rowId)) {\n cellsByRow.set(rowId, new Set())\n }\n const allColumns = Array.from(gridMap.colIdToIndex.keys())\n allColumns.forEach((colId) => {\n cellsByRow.get(rowId)?.add(colId)\n })\n })\n }\n\n // Get sorted row IDs based on their index in the grid\n const sortedRows = Array.from(cellsByRow.keys()).sort((a, b) => {\n const indexA = gridMap.rowIdToIndex.get(a) ?? Infinity\n const indexB = gridMap.rowIdToIndex.get(b) ?? Infinity\n return indexA - indexB\n })\n\n // Build clipboard text\n let clipboardText = ''\n\n // Get the first row to determine columns\n const firstRowId = sortedRows[0]\n if (!firstRowId) return ''\n\n // Get all column IDs for the first row, sorted by their index in the grid\n const colIds = Array.from(cellsByRow.get(firstRowId) || []).sort((a, b) => {\n const indexA = gridMap.colIdToIndex.get(a) ?? Infinity\n const indexB = gridMap.colIdToIndex.get(b) ?? Infinity\n return indexA - indexB\n })\n\n // Include headers if requested\n if (headers && colIds.length > 0) {\n const headerValues: string[] = []\n\n for (const colId of colIds) {\n // Use colId as the column name since we don't have direct access to column names\n const columnName = colId\n headerValues.push(`${columnName.replace(/\"/g, '\"\"')}`)\n }\n\n clipboardText += headerValues.join('\\t') + '\\n'\n }\n\n for (const rowId of sortedRows) {\n // Determine if this is a folder or task by checking which map contains the ID\n const isFolder = foldersMap.has(rowId)\n const entity = isFolder ? foldersMap.get(rowId) : tasksMap.get(rowId)\n\n if (!entity) continue\n\n // Get all column IDs for this row, sorted by their index in the grid\n const colIds = Array.from(cellsByRow.get(rowId) || []).sort((a, b) => {\n const indexA = gridMap.colIdToIndex.get(a) ?? Infinity\n const indexB = gridMap.colIdToIndex.get(b) ?? Infinity\n return indexA - indexB\n })\n\n // Filter out the row selection column from the copied data\n const filteredColIds = colIds.filter((colId) => colId !== ROW_SELECTION_COLUMN_ID)\n\n const rowValues: string[] = []\n\n // For each column in this row\n for (const colId of filteredColIds) {\n // Determine the value based on the column ID\n let cellValue = ''\n // @ts-ignore\n const foundValue = getCellValue(entity, colId)\n cellValue = foundValue !== undefined && foundValue !== null ? String(foundValue) : ''\n\n // Special handling for name field - include full path\n if (colId === 'name') {\n cellValue = getEntityPath(rowId, isFolder, foldersMap, tasksMap)\n }\n\n if (colId === 'subType') {\n // get folderType or taskType\n // @ts-ignore\n cellValue = entity[isFolder ? 'folderType' : 'taskType'] || ''\n }\n\n // Escape double quotes in the cell value and wrap in quotes\n rowValues.push(`${cellValue.replace(/\"/g, '\"\"')}`)\n }\n\n // Add row to clipboard text\n clipboardText += rowValues.join('\\t') + '\\n'\n }\n\n return clipboardText\n } catch (error) {\n console.error('Failed to copy to clipboard:', error)\n }\n },\n [selectedCells, focusedCellId, gridMap, foldersMap, tasksMap],\n )\n\n const copyToClipboard: ClipboardContextType['copyToClipboard'] = useCallback(\n async (selected, fullRow) => {\n selected = selected || Array.from(selectedCells)\n if (!selected.length) return\n const clipboardText = await getSelectionData(selected, { fullRow })\n if (!clipboardText) return\n if (!navigator.clipboard) {\n clipboardError('Clipboard API not supported in this browser.')\n return\n }\n if (!window.isSecureContext) {\n clipboardError('Clipboard operations require a secure HTTPS context.')\n return\n }\n try {\n await navigator.clipboard.writeText(clipboardText)\n console.log('Copied to clipboard successfully', clipboardText)\n } catch (error: any) {\n clipboardError(`Failed to copy to clipboard: ${error.message}`)\n }\n },\n [selectedCells, foldersMap, tasksMap, gridMap],\n )\n\n const exportCSV: ClipboardContextType['exportCSV'] = useCallback(\n async (selected, projectName, fullRow) => {\n selected = selected || Array.from(selectedCells)\n if (!selected.length) return\n\n try {\n // Get clipboard text with headers included for CSV export\n const clipboardText = await getSelectionData(selected, { headers: true, fullRow })\n if (!clipboardText) return\n\n // create a csv file and download it\n const blob = new Blob([clipboardText], { type: 'text/csv' })\n const url = URL.createObjectURL(blob)\n const a = document.createElement('a')\n a.href = url\n const selectedCount = selected.length\n a.download = `${projectName}-export-${selectedCount}_cells-${new Date()\n .toISOString()\n .slice(0, 10)}.csv`\n a.click()\n URL.revokeObjectURL(url)\n } catch (error) {\n console.error('Failed to copy to clipboard:', error)\n }\n },\n [selectedCells, foldersMap, tasksMap, gridMap, getSelectionData],\n )\n\n const pasteFromClipboard: ClipboardContextType['pasteFromClipboard'] = useCallback(\n async (selected) => {\n selected = selected || Array.from(selectedCells)\n if (!selected.length) return\n if (!navigator.clipboard) {\n clipboardError('Clipboard API not supported in this browser.')\n return\n }\n if (!window.isSecureContext) {\n clipboardError('Clipboard operations require a secure HTTPS context.')\n return\n }\n let clipboardText: string\n try {\n clipboardText = await navigator.clipboard.readText()\n } catch (error: any) {\n clipboardError(`Failed to read from clipboard: ${error.message}`)\n return\n }\n if (!clipboardText.trim()) return\n\n // Parse the clipboard text\n const parsedData = parseClipboardText(clipboardText)\n if (!parsedData.length) return\n\n // Determine if we have a single value in the clipboard (one row, one column)\n const isSingleCellValue = parsedData.length === 1 && parsedData[0].values.length === 1\n\n // Organize selected cells by row\n const cellsByRow = new Map<string, Set<string>>()\n\n // Parse all selected cells and organize by rowId and colId\n Array.from(selected).forEach((cellId) => {\n const position = parseCellId(cellId)\n if (!position) return\n\n const { rowId, colId } = position\n\n if (!cellsByRow.has(rowId)) {\n cellsByRow.set(rowId, new Set())\n }\n cellsByRow.get(rowId)?.add(colId)\n })\n\n // Get sorted row IDs based on their index in the grid\n const sortedRows = Array.from(cellsByRow.keys()).sort((a, b) => {\n const indexA = gridMap.rowIdToIndex.get(a) ?? Infinity\n const indexB = gridMap.rowIdToIndex.get(b) ?? Infinity\n return indexA - indexB\n })\n\n // For each row, get the sorted column IDs\n const firstRow = sortedRows[0]\n const selectedColIds = Array.from(cellsByRow.get(firstRow) || []).sort((a, b) => {\n const indexA = gridMap.colIdToIndex.get(a) ?? Infinity\n const indexB = gridMap.colIdToIndex.get(b) ?? Infinity\n return indexA - indexB\n })\n\n // First pass: validate all values for status and subType\n for (let colIndex = 0; colIndex < selectedColIds.length; colIndex++) {\n const colId = selectedColIds[colIndex]\n\n for (let rowIndex = 0; rowIndex < sortedRows.length; rowIndex++) {\n const rowId = sortedRows[rowIndex]\n const isFolder = foldersMap.has(rowId)\n\n // Get the appropriate value from the clipboard data\n // If it's a single cell value, use it for all cells\n // Otherwise use the modulo approach to repeat values\n let pasteValue\n if (isSingleCellValue) {\n pasteValue = parsedData[0].values[0]\n } else {\n const pasteRowIndex = rowIndex % parsedData.length\n const pasteColIndex = colIndex % parsedData[pasteRowIndex].values.length\n pasteValue = parsedData[pasteRowIndex].values[pasteColIndex]\n }\n\n // Validate clipboard data for this cell\n const isValid = validateClipboardData({\n colId,\n isFolder,\n pasteValue,\n parsedData,\n columnEnums,\n columnReadOnly,\n rowIndex,\n colIndex,\n isSingleCellValue,\n })\n\n if (!isValid) return\n }\n }\n\n // Create a map to consolidate updates for the same entity\n const entitiesMap = new Map<\n string,\n {\n id: string\n type: string\n fields: Record<string, any>\n attrib: Record<string, any>\n }\n >()\n\n // For each column, prepare updates\n for (let colIndex = 0; colIndex < selectedColIds.length; colIndex++) {\n const colId = selectedColIds[colIndex]\n\n // Skip special handling for 'name' which we don't want to paste\n if (colId === 'name') continue\n\n // Check if this is an attribute field by examining the first entity\n let isAttrib = false\n // Check if the field potentially contains array values\n let fieldValueType: 'string' | 'number' | 'boolean' | 'array' = 'string'\n\n if (sortedRows.length > 0) {\n const firstRowId = sortedRows[0]\n const isFolder = foldersMap.has(firstRowId)\n const entity = isFolder ? foldersMap.get(firstRowId) : tasksMap.get(firstRowId)\n\n if (entity) {\n isAttrib = colId.startsWith('attrib_')\n\n // Determine if field is an array and its value type\n // @ts-ignore - Check entity property or attribute\n const fieldValue = getCellValue(entity, colId)\n if (Array.isArray(fieldValue)) {\n fieldValueType = 'array'\n } else if (typeof fieldValue === 'number') {\n fieldValueType = 'number'\n } else if (typeof fieldValue === 'boolean') {\n fieldValueType = 'boolean'\n }\n\n // Special case for subType\n if (colId === 'subType') {\n isAttrib = false\n }\n }\n }\n\n // Process each row individually\n for (let rowIndex = 0; rowIndex < sortedRows.length; rowIndex++) {\n const rowId = sortedRows[rowIndex]\n const isFolder = foldersMap.has(rowId)\n const entityType = isFolder ? 'folder' : 'task'\n\n // Get the appropriate value from the clipboard data\n let pasteValue\n if (isSingleCellValue) {\n pasteValue = parsedData[0].values[0]\n } else {\n const pasteRowIndex = rowIndex % parsedData.length\n const pasteColIndex = colIndex % parsedData[pasteRowIndex].values.length\n pasteValue = parsedData[pasteRowIndex].values[pasteColIndex]\n }\n\n let fieldToUpdate = colId.split('_').pop() || colId\n\n // Special handling for subType (convert to folderType or taskType)\n if (colId === 'subType') {\n fieldToUpdate = isFolder ? 'folderType' : 'taskType'\n isAttrib = false\n\n // Skip empty values for enum fields\n if (!pasteValue) continue\n }\n\n // Process the value based on its type\n const processedValue = processFieldValue(pasteValue, fieldValueType)\n\n // Get or create entity entry in the map\n const entityKey = `${rowId}-${entityType}`\n if (!entitiesMap.has(entityKey)) {\n entitiesMap.set(entityKey, {\n id: rowId,\n type: entityType,\n fields: {},\n attrib: {},\n })\n }\n\n const entityData = entitiesMap.get(entityKey)!\n\n // Add the field to the appropriate place\n if (isAttrib) {\n entityData.attrib[fieldToUpdate] = processedValue\n } else {\n entityData.fields[fieldToUpdate] = processedValue\n }\n }\n }\n\n // Convert the consolidated map to EntityUpdate array\n const allEntityUpdates: EntityUpdate[] = []\n\n entitiesMap.forEach((entity) => {\n // For regular fields, create one update per field\n Object.entries(entity.fields).forEach(([field, value]) => {\n allEntityUpdates.push({\n id: entity.id,\n type: entity.type,\n field,\n value,\n })\n })\n\n // For attributes, create one update per attribute\n Object.entries(entity.attrib).forEach(([field, value]) => {\n allEntityUpdates.push({\n id: entity.id,\n type: entity.type,\n field,\n value,\n isAttrib: true,\n })\n })\n })\n\n // Make a single call to update all entities\n if (allEntityUpdates.length > 0) {\n try {\n await updateEntities(allEntityUpdates)\n } catch (error) {\n console.error('Error updating entities:', error)\n clipboardError(\n `Failed to update: ${error instanceof Error ? error.message : 'Unknown error'}`,\n )\n }\n }\n },\n [selectedCells, gridMap, foldersMap, tasksMap, updateEntities, columnEnums],\n )\n\n // Set up keyboard event listeners\n useEffect(() => {\n const handleKeyDown = (e: KeyboardEvent) => {\n // Copy functionality (Ctrl+C or Command+C)\n if ((e.ctrlKey || e.metaKey) && e.key === 'c') {\n copyToClipboard()\n }\n\n // Paste functionality (Ctrl+V or Command+V)\n if ((e.ctrlKey || e.metaKey) && e.key === 'v') {\n pasteFromClipboard()\n }\n }\n\n window.addEventListener('keydown', handleKeyDown)\n return () => {\n window.removeEventListener('keydown', handleKeyDown)\n }\n }, [copyToClipboard, pasteFromClipboard])\n\n const value = useMemo(\n () => ({\n copyToClipboard,\n pasteFromClipboard,\n exportCSV,\n }),\n [copyToClipboard, pasteFromClipboard],\n )\n\n return <ClipboardContext.Provider value={value}>{children}</ClipboardContext.Provider>\n}\n\nexport const useClipboard = (): ClipboardContextType => {\n const context = useContext(ClipboardContext)\n if (context === undefined) {\n throw new Error('useClipboard must be used within a ClipboardProvider')\n }\n return context\n}\n"],"names":["createContext","useProjectTableContext","useSelectionCellsContext","useCellEditing","useMemo","useCallback","parseCellId","ROW_SELECTION_COLUMN_ID","colIds","getCellValue","getEntityPath","clipboardError","parseClipboardText","validateClipboardData","processFieldValue","value","useEffect","jsx","useContext"],"mappings":"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"}
1
+ {"version":3,"file":"ClipboardContext.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ClipboardContext.tsx"],"sourcesContent":["import React, { createContext, useContext, useCallback, useMemo, useEffect } from 'react'\n\n// Contexts\nimport { ROW_SELECTION_COLUMN_ID, useSelectionCellsContext } from './SelectionCellsContext'\nimport { useCellEditing } from './CellEditingContext'\n\n// Utils\nimport { getCellValue, getEntityDataById, parseCellId } from '../utils/cellUtils'\n\n// Types\nimport { EntityUpdate } from '../hooks/useUpdateTableData'\n\n// Import from the new modular files\nimport {\n getEntityPath,\n parseClipboardText,\n clipboardError,\n processFieldValue,\n} from './clipboard/clipboardUtils'\nimport { validateClipboardData } from './clipboard/clipboardValidation'\nimport { ClipboardContextType, ClipboardProviderProps } from './clipboard/clipboardTypes'\n\nconst ClipboardContext = createContext<ClipboardContextType | undefined>(undefined)\n\nexport const ClipboardProvider: React.FC<ClipboardProviderProps> = ({\n children,\n entitiesMap,\n columnEnums,\n columnReadOnly,\n}) => {\n // Get selection information from SelectionContext\n const { selectedCells, gridMap, focusedCellId } = useSelectionCellsContext()\n const { updateEntities } = useCellEditing()\n\n const getSelectionData = useCallback(\n async (selected: string[], config?: { headers?: boolean; fullRow?: boolean }) => {\n const { headers, fullRow } = config || {}\n try {\n // First, organize selected cells by row\n const cellsByRow = new Map<string, Set<string>>()\n\n // Parse all selected cells and organize by rowId and colId\n selected.forEach((cellId) => {\n const position = parseCellId(cellId)\n if (!position) return\n\n const { rowId, colId } = position\n\n // do not include row selection column\n if (colId === ROW_SELECTION_COLUMN_ID) return\n\n if (!cellsByRow.has(rowId)) {\n cellsByRow.set(rowId, new Set())\n }\n\n cellsByRow.get(rowId)?.add(colId)\n })\n\n if (fullRow) {\n const selectedRows = selected\n .filter(\n (cellId) =>\n parseCellId(cellId)?.rowId &&\n parseCellId(cellId)?.colId === ROW_SELECTION_COLUMN_ID,\n )\n .map((cellId) => parseCellId(cellId)?.rowId) as string[]\n\n // select the whole row\n // For rows with selection cells, add all available columns\n selectedRows.forEach((rowId) => {\n // add the rowId if it doesn't exist\n if (!cellsByRow.has(rowId)) {\n cellsByRow.set(rowId, new Set())\n }\n const allColumns = Array.from(gridMap.colIdToIndex.keys())\n allColumns.forEach((colId) => {\n cellsByRow.get(rowId)?.add(colId)\n })\n })\n }\n\n // Get sorted row IDs based on their index in the grid\n const sortedRows = Array.from(cellsByRow.keys()).sort((a, b) => {\n const indexA = gridMap.rowIdToIndex.get(a) ?? Infinity\n const indexB = gridMap.rowIdToIndex.get(b) ?? Infinity\n return indexA - indexB\n })\n\n // Build clipboard text\n let clipboardText = ''\n\n // Get the first row to determine columns\n const firstRowId = sortedRows[0]\n if (!firstRowId) return ''\n\n // Get all column IDs for the first row, sorted by their index in the grid\n const colIds = Array.from(cellsByRow.get(firstRowId) || []).sort((a, b) => {\n const indexA = gridMap.colIdToIndex.get(a) ?? Infinity\n const indexB = gridMap.colIdToIndex.get(b) ?? Infinity\n return indexA - indexB\n })\n\n // Include headers if requested\n if (headers && colIds.length > 0) {\n const headerValues: string[] = []\n\n for (const colId of colIds) {\n // Use colId as the column name since we don't have direct access to column names\n const columnName = colId\n headerValues.push(`${columnName.replace(/\"/g, '\"\"')}`)\n }\n\n clipboardText += headerValues.join('\\t') + '\\n'\n }\n\n for (const rowId of sortedRows) {\n // Determine if this is a folder or task by checking which map contains the ID\n const entity = entitiesMap.get(rowId)\n\n if (!entity) continue\n\n // Get all column IDs for this row, sorted by their index in the grid\n const colIds = Array.from(cellsByRow.get(rowId) || []).sort((a, b) => {\n const indexA = gridMap.colIdToIndex.get(a) ?? Infinity\n const indexB = gridMap.colIdToIndex.get(b) ?? Infinity\n return indexA - indexB\n })\n\n // Filter out the row selection column from the copied data\n const filteredColIds = colIds.filter((colId) => colId !== ROW_SELECTION_COLUMN_ID)\n\n const rowValues: string[] = []\n\n // For each column in this row\n for (const colId of filteredColIds) {\n // Determine the value based on the column ID\n let cellValue = ''\n // @ts-ignore\n const foundValue = getCellValue(entity, colId)\n cellValue = foundValue !== undefined && foundValue !== null ? String(foundValue) : ''\n\n // Special handling for name field - include full path\n if (colId === 'name') {\n cellValue = getEntityPath(rowId, entitiesMap)\n }\n\n if (colId === 'subType') {\n // get folderType or taskType\n // @ts-ignore\n cellValue = entity[isFolder ? 'folderType' : 'taskType'] || ''\n }\n\n // Escape double quotes in the cell value and wrap in quotes\n rowValues.push(`${cellValue.replace(/\"/g, '\"\"')}`)\n }\n\n // Add row to clipboard text\n clipboardText += rowValues.join('\\t') + '\\n'\n }\n\n return clipboardText\n } catch (error) {\n console.error('Failed to copy to clipboard:', error)\n }\n },\n [selectedCells, focusedCellId, gridMap, entitiesMap],\n )\n\n const copyToClipboard: ClipboardContextType['copyToClipboard'] = useCallback(\n async (selected, fullRow) => {\n selected = selected || Array.from(selectedCells)\n if (!selected.length) return\n const clipboardText = await getSelectionData(selected, { fullRow })\n if (!clipboardText) return\n if (!navigator.clipboard) {\n clipboardError('Clipboard API not supported in this browser.')\n return\n }\n if (!window.isSecureContext) {\n clipboardError('Clipboard operations require a secure HTTPS context.')\n return\n }\n try {\n await navigator.clipboard.writeText(clipboardText)\n console.log('Copied to clipboard successfully', clipboardText)\n } catch (error: any) {\n clipboardError(`Failed to copy to clipboard: ${error.message}`)\n }\n },\n [selectedCells, entitiesMap, gridMap],\n )\n\n const exportCSV: ClipboardContextType['exportCSV'] = useCallback(\n async (selected, projectName, fullRow) => {\n selected = selected || Array.from(selectedCells)\n if (!selected.length) return\n\n try {\n // Get clipboard text with headers included for CSV export\n const clipboardText = await getSelectionData(selected, { headers: true, fullRow })\n if (!clipboardText) return\n\n // create a csv file and download it\n const blob = new Blob([clipboardText], { type: 'text/csv' })\n const url = URL.createObjectURL(blob)\n const a = document.createElement('a')\n a.href = url\n const selectedCount = selected.length\n a.download = `${projectName}-export-${selectedCount}_cells-${new Date()\n .toISOString()\n .slice(0, 10)}.csv`\n a.click()\n URL.revokeObjectURL(url)\n } catch (error) {\n console.error('Failed to copy to clipboard:', error)\n }\n },\n [selectedCells, entitiesMap, gridMap, getSelectionData],\n )\n\n const pasteFromClipboard: ClipboardContextType['pasteFromClipboard'] = useCallback(\n async (selected) => {\n selected = selected || Array.from(selectedCells)\n if (!selected.length) return\n if (!navigator.clipboard) {\n clipboardError('Clipboard API not supported in this browser.')\n return\n }\n if (!window.isSecureContext) {\n clipboardError('Clipboard operations require a secure HTTPS context.')\n return\n }\n let clipboardText: string\n try {\n clipboardText = await navigator.clipboard.readText()\n } catch (error: any) {\n clipboardError(`Failed to read from clipboard: ${error.message}`)\n return\n }\n\n // we can have empty text in the clipboard\n //if (!clipboardText.trim()) return\n\n // Parse the clipboard text\n const parsedData = parseClipboardText(clipboardText)\n if (!parsedData.length) return\n\n // Determine if we have a single value in the clipboard (one row, one column)\n const isSingleCellValue = parsedData.length === 1 && parsedData[0].values.length === 1\n\n // Organize selected cells by row\n const cellsByRow = new Map<string, Set<string>>()\n\n // Parse all selected cells and organize by rowId and colId\n Array.from(selected).forEach((cellId) => {\n const position = parseCellId(cellId)\n if (!position) return\n\n const { rowId, colId } = position\n\n if (!cellsByRow.has(rowId)) {\n cellsByRow.set(rowId, new Set())\n }\n cellsByRow.get(rowId)?.add(colId)\n })\n\n // Get sorted row IDs based on their index in the grid\n const sortedRows = Array.from(cellsByRow.keys()).sort((a, b) => {\n const indexA = gridMap.rowIdToIndex.get(a) ?? Infinity\n const indexB = gridMap.rowIdToIndex.get(b) ?? Infinity\n return indexA - indexB\n })\n\n // For each row, get the sorted column IDs\n const firstRow = sortedRows[0]\n const selectedColIds = Array.from(cellsByRow.get(firstRow) || []).sort((a, b) => {\n const indexA = gridMap.colIdToIndex.get(a) ?? Infinity\n const indexB = gridMap.colIdToIndex.get(b) ?? Infinity\n return indexA - indexB\n })\n\n // First pass: validate all values for status and subType\n for (let colIndex = 0; colIndex < selectedColIds.length; colIndex++) {\n const colId = selectedColIds[colIndex]\n\n for (let rowIndex = 0; rowIndex < sortedRows.length; rowIndex++) {\n const rowId = sortedRows[rowIndex]\n const isFolder = getEntityDataById<'folder'>(rowId, entitiesMap)?.entityType === 'folder'\n\n // Get the appropriate value from the clipboard data\n // If it's a single cell value, use it for all cells\n // Otherwise use the modulo approach to repeat values\n let pasteValue\n if (isSingleCellValue) {\n pasteValue = parsedData[0].values[0]\n } else {\n const pasteRowIndex = rowIndex % parsedData.length\n const pasteColIndex = colIndex % parsedData[pasteRowIndex].values.length\n pasteValue = parsedData[pasteRowIndex].values[pasteColIndex]\n }\n\n // Validate clipboard data for this cell\n const isValid = validateClipboardData({\n colId,\n isFolder,\n pasteValue,\n parsedData,\n columnEnums,\n columnReadOnly,\n rowIndex,\n colIndex,\n isSingleCellValue,\n })\n\n if (!isValid) return\n }\n }\n\n // Create a map to consolidate updates for the same entity\n const entitiesToUpdateMap = new Map<\n string,\n {\n rowId: string\n id: string\n type: string\n fields: Record<string, any>\n attrib: Record<string, any>\n }\n >()\n\n // For each column, prepare updates\n for (let colIndex = 0; colIndex < selectedColIds.length; colIndex++) {\n const colId = selectedColIds[colIndex]\n\n // Skip special handling for 'name' which we don't want to paste\n if (colId === 'name') continue\n\n // Check if this is an attribute field by examining the first entity\n let isAttrib = false\n // Check if the field potentially contains array values\n let fieldValueType: 'string' | 'number' | 'boolean' | 'array' = 'string'\n\n if (sortedRows.length > 0) {\n const firstRowId = sortedRows[0]\n const entity = entitiesMap.get(firstRowId)\n if (entity) {\n isAttrib = colId.startsWith('attrib_')\n\n // Determine if field is an array and its value type\n // @ts-ignore - Check entity property or attribute\n const fieldValue = getCellValue(entity, colId)\n if (Array.isArray(fieldValue)) {\n fieldValueType = 'array'\n } else if (typeof fieldValue === 'number') {\n fieldValueType = 'number'\n } else if (typeof fieldValue === 'boolean') {\n fieldValueType = 'boolean'\n }\n\n // Special case for subType\n if (colId === 'subType') {\n isAttrib = false\n }\n }\n }\n\n // Process each row individually\n for (let rowIndex = 0; rowIndex < sortedRows.length; rowIndex++) {\n const rowId = sortedRows[rowIndex]\n const entityType = getEntityDataById(rowId, entitiesMap)?.entityType\n const isFolder = entityType === 'folder'\n\n // Get the appropriate value from the clipboard data\n let pasteValue\n if (isSingleCellValue) {\n pasteValue = parsedData[0].values[0]\n } else {\n const pasteRowIndex = rowIndex % parsedData.length\n const pasteColIndex = colIndex % parsedData[pasteRowIndex].values.length\n pasteValue = parsedData[pasteRowIndex].values[pasteColIndex]\n }\n\n let fieldToUpdate = colId.split('_').pop() || colId\n\n // Special handling for subType (convert to folderType or taskType)\n if (colId === 'subType') {\n fieldToUpdate = isFolder ? 'folderType' : 'taskType'\n isAttrib = false\n\n // Skip empty values for enum fields\n if (!pasteValue) continue\n }\n\n // Process the value based on its type\n const processedValue = processFieldValue(pasteValue, fieldValueType)\n\n // Get or create entity entry in the map\n const entityKey = `${rowId}-${entityType}`\n if (!entitiesToUpdateMap.has(entityKey) && entityType) {\n entitiesToUpdateMap.set(entityKey, {\n rowId,\n id: rowId,\n type: entityType,\n fields: {},\n attrib: {},\n })\n }\n\n const entityData = entitiesToUpdateMap.get(entityKey)!\n\n // Add the field to the appropriate place\n if (isAttrib) {\n entityData.attrib[fieldToUpdate] = processedValue\n } else {\n entityData.fields[fieldToUpdate] = processedValue\n }\n }\n }\n\n // Convert the consolidated map to EntityUpdate array\n const allEntityUpdates: EntityUpdate[] = []\n\n entitiesToUpdateMap.forEach((entity) => {\n // For regular fields, create one update per field\n Object.entries(entity.fields).forEach(([field, value]) => {\n allEntityUpdates.push({\n rowId: entity.rowId,\n id: entity.id,\n type: entity.type,\n field,\n value,\n })\n })\n\n // For attributes, create one update per attribute\n Object.entries(entity.attrib).forEach(([field, value]) => {\n allEntityUpdates.push({\n rowId: entity.rowId,\n id: entity.id,\n type: entity.type,\n field,\n value,\n isAttrib: true,\n })\n })\n })\n\n // Make a single call to update all entities\n if (allEntityUpdates.length > 0) {\n try {\n await updateEntities(allEntityUpdates)\n } catch (error) {\n console.error('Error updating entities:', error)\n clipboardError(\n `Failed to update: ${error instanceof Error ? error.message : 'Unknown error'}`,\n )\n }\n }\n },\n [selectedCells, gridMap, entitiesMap, updateEntities, columnEnums],\n )\n\n // Set up keyboard event listeners\n useEffect(() => {\n const handleKeyDown = (e: KeyboardEvent) => {\n // Copy functionality (Ctrl+C or Command+C)\n if ((e.ctrlKey || e.metaKey) && e.key === 'c') {\n copyToClipboard()\n }\n\n // Paste functionality (Ctrl+V or Command+V)\n if ((e.ctrlKey || e.metaKey) && e.key === 'v') {\n pasteFromClipboard()\n }\n }\n\n window.addEventListener('keydown', handleKeyDown)\n return () => {\n window.removeEventListener('keydown', handleKeyDown)\n }\n }, [copyToClipboard, pasteFromClipboard])\n\n const value = useMemo(\n () => ({\n copyToClipboard,\n pasteFromClipboard,\n exportCSV,\n }),\n [copyToClipboard, pasteFromClipboard],\n )\n\n return <ClipboardContext.Provider value={value}>{children}</ClipboardContext.Provider>\n}\n\nexport const useClipboard = (): ClipboardContextType => {\n const context = useContext(ClipboardContext)\n if (context === undefined) {\n throw new Error('useClipboard must be used within a ClipboardProvider')\n }\n return context\n}\n"],"names":["createContext","useSelectionCellsContext","useCellEditing","useCallback","parseCellId","ROW_SELECTION_COLUMN_ID","colIds","getCellValue","getEntityPath","clipboardError","parseClipboardText","_a","isFolder","getEntityDataById","validateClipboardData","processFieldValue","value","useEffect","useMemo","jsx","useContext"],"mappings":"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"}