@ynput/ayon-frontend-shared 0.2.31 → 0.2.33

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 (693) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +29 -22
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/Feed.cjs.js +1 -1
  5. package/dist/Feed.es.js +11 -9
  6. package/dist/Feed.es.js.map +1 -1
  7. package/dist/Views.cjs.js.map +1 -1
  8. package/dist/Views.es.js.map +1 -1
  9. package/dist/_virtual/index.cjs10.js +1 -1
  10. package/dist/_virtual/index.cjs8.js +1 -1
  11. package/dist/_virtual/index.cjs9.js +1 -1
  12. package/dist/_virtual/index.es10.js +5 -5
  13. package/dist/_virtual/index.es8.js +3 -3
  14. package/dist/_virtual/index.es9.js +5 -5
  15. package/dist/api.cjs.js +1 -1
  16. package/dist/api.es.js +219 -217
  17. package/dist/api.es.js.map +1 -1
  18. package/dist/components.cjs.js +1 -1
  19. package/dist/components.es.js +84 -71
  20. package/dist/components.es.js.map +1 -1
  21. package/dist/index.cjs.js +1 -1
  22. package/dist/index.es.js +16 -9
  23. package/dist/index.es.js.map +1 -1
  24. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +1 -1
  25. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js.map +1 -1
  26. package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
  27. package/dist/node_modules/rehype/node_modules/vfile/lib/index.cjs.js +1 -1
  28. package/dist/node_modules/rehype/node_modules/vfile/lib/index.es.js +1 -1
  29. package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
  30. package/dist/node_modules/rehype-parse/lib/index.cjs.js.map +1 -1
  31. package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
  32. package/dist/shared/src/api/generated/access.cjs.js.map +1 -1
  33. package/dist/shared/src/api/generated/access.es.js.map +1 -1
  34. package/dist/shared/src/api/generated/activityFeed.cjs.js +1 -1
  35. package/dist/shared/src/api/generated/activityFeed.cjs.js.map +1 -1
  36. package/dist/shared/src/api/generated/activityFeed.es.js +3 -0
  37. package/dist/shared/src/api/generated/activityFeed.es.js.map +1 -1
  38. package/dist/shared/src/api/generated/authentication.cjs.js +1 -1
  39. package/dist/shared/src/api/generated/authentication.cjs.js.map +1 -1
  40. package/dist/shared/src/api/generated/authentication.es.js +9 -6
  41. package/dist/shared/src/api/generated/authentication.es.js.map +1 -1
  42. package/dist/shared/src/api/generated/entityLists.cjs.js.map +1 -1
  43. package/dist/shared/src/api/generated/entityLists.es.js.map +1 -1
  44. package/dist/shared/src/api/generated/folders.cjs.js.map +1 -1
  45. package/dist/shared/src/api/generated/folders.es.js.map +1 -1
  46. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  47. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  48. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  49. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  50. package/dist/shared/src/api/generated/links.cjs.js +1 -1
  51. package/dist/shared/src/api/generated/links.cjs.js.map +1 -1
  52. package/dist/shared/src/api/generated/links.es.js +13 -5
  53. package/dist/shared/src/api/generated/links.es.js.map +1 -1
  54. package/dist/shared/src/api/generated/onboarding.cjs.js.map +1 -1
  55. package/dist/shared/src/api/generated/onboarding.es.js.map +1 -1
  56. package/dist/shared/src/api/generated/operations.cjs.js +1 -1
  57. package/dist/shared/src/api/generated/operations.cjs.js.map +1 -1
  58. package/dist/shared/src/api/generated/operations.es.js +16 -0
  59. package/dist/shared/src/api/generated/operations.es.js.map +1 -1
  60. package/dist/shared/src/api/generated/products.cjs.js +1 -1
  61. package/dist/shared/src/api/generated/products.cjs.js.map +1 -1
  62. package/dist/shared/src/api/generated/products.es.js +6 -3
  63. package/dist/shared/src/api/generated/products.es.js.map +1 -1
  64. package/dist/shared/src/api/generated/projects.cjs.js +1 -1
  65. package/dist/shared/src/api/generated/projects.cjs.js.map +1 -1
  66. package/dist/shared/src/api/generated/projects.es.js +19 -0
  67. package/dist/shared/src/api/generated/projects.es.js.map +1 -1
  68. package/dist/shared/src/api/generated/system.cjs.js.map +1 -1
  69. package/dist/shared/src/api/generated/system.es.js.map +1 -1
  70. package/dist/shared/src/api/generated/tasks.cjs.js.map +1 -1
  71. package/dist/shared/src/api/generated/tasks.es.js.map +1 -1
  72. package/dist/shared/src/api/generated/users.cjs.js.map +1 -1
  73. package/dist/shared/src/api/generated/users.es.js.map +1 -1
  74. package/dist/shared/src/api/generated/versions.cjs.js.map +1 -1
  75. package/dist/shared/src/api/generated/versions.es.js.map +1 -1
  76. package/dist/shared/src/api/generated/views.cjs.js.map +1 -1
  77. package/dist/shared/src/api/generated/views.es.js.map +1 -1
  78. package/dist/shared/src/api/queries/activities/getActivities.cjs.js +1 -1
  79. package/dist/shared/src/api/queries/activities/getActivities.cjs.js.map +1 -1
  80. package/dist/shared/src/api/queries/activities/getActivities.es.js +4 -8
  81. package/dist/shared/src/api/queries/activities/getActivities.es.js.map +1 -1
  82. package/dist/shared/src/api/queries/activities/getCategories.cjs.js +2 -0
  83. package/dist/shared/src/api/queries/activities/getCategories.cjs.js.map +1 -0
  84. package/dist/shared/src/api/queries/activities/getCategories.es.js +53 -0
  85. package/dist/shared/src/api/queries/activities/getCategories.es.js.map +1 -0
  86. package/dist/shared/src/api/queries/activities/updateActivities.cjs.js +1 -1
  87. package/dist/shared/src/api/queries/activities/updateActivities.cjs.js.map +1 -1
  88. package/dist/shared/src/api/queries/activities/updateActivities.es.js +53 -51
  89. package/dist/shared/src/api/queries/activities/updateActivities.es.js.map +1 -1
  90. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +1 -1
  91. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  92. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +4 -3
  93. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  94. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +1 -1
  95. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
  96. package/dist/shared/src/api/queries/entities/updateEntity.es.js +4 -3
  97. package/dist/shared/src/api/queries/entities/updateEntity.es.js.map +1 -1
  98. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
  99. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  100. package/dist/shared/src/api/queries/overview/updateOverview.es.js +61 -60
  101. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  102. package/dist/shared/src/api/queries/share/share.cjs.js +1 -1
  103. package/dist/shared/src/api/queries/share/share.cjs.js.map +1 -1
  104. package/dist/shared/src/api/queries/share/share.es.js +38 -12
  105. package/dist/shared/src/api/queries/share/share.es.js.map +1 -1
  106. package/dist/shared/src/api/queries/users/getUsers.cjs.js +1 -1
  107. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  108. package/dist/shared/src/api/queries/users/getUsers.es.js +18 -17
  109. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  110. package/dist/shared/src/api/queries/views/updateViews.cjs.js +1 -1
  111. package/dist/shared/src/api/queries/views/updateViews.cjs.js.map +1 -1
  112. package/dist/shared/src/api/queries/views/updateViews.es.js +14 -15
  113. package/dist/shared/src/api/queries/views/updateViews.es.js.map +1 -1
  114. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.cjs.js +2 -0
  115. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.cjs.js.map +1 -0
  116. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.es.js +135 -0
  117. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.es.js.map +1 -0
  118. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.styled.cjs.js +39 -0
  119. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.styled.cjs.js.map +1 -0
  120. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.styled.es.js +44 -0
  121. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.styled.es.js.map +1 -0
  122. package/dist/shared/src/components/AccessUser/AccessUser.cjs.js +2 -0
  123. package/dist/shared/src/components/AccessUser/AccessUser.cjs.js.map +1 -0
  124. package/dist/shared/src/components/AccessUser/AccessUser.es.js +43 -0
  125. package/dist/shared/src/components/AccessUser/AccessUser.es.js.map +1 -0
  126. package/dist/shared/src/components/AccessUser/AccessUser.styled.cjs.js +46 -0
  127. package/dist/shared/src/components/AccessUser/AccessUser.styled.cjs.js.map +1 -0
  128. package/dist/shared/src/components/AccessUser/AccessUser.styled.es.js +50 -0
  129. package/dist/shared/src/components/AccessUser/AccessUser.styled.es.js.map +1 -0
  130. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js +1 -1
  131. package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js.map +1 -1
  132. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js +15 -10
  133. package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js.map +1 -1
  134. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
  135. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  136. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +3 -2
  137. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  138. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  139. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  140. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +3 -2
  141. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  142. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  143. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  144. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +3 -2
  145. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  146. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.cjs.js +47 -43
  147. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.cjs.js.map +1 -1
  148. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.es.js +47 -43
  149. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.es.js.map +1 -1
  150. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
  151. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
  152. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +3 -2
  153. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
  154. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.cjs.js +1 -1
  155. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.cjs.js.map +1 -1
  156. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.es.js +3 -2
  157. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.es.js.map +1 -1
  158. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  159. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
  160. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +3 -2
  161. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  162. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  163. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  164. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +9 -2
  165. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  166. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  167. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  168. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +5 -4
  169. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  170. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  171. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  172. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +9 -2
  173. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  174. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
  175. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  176. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +3 -2
  177. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  178. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  179. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  180. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +9 -2
  181. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  182. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
  183. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
  184. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +3 -2
  185. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
  186. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  187. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  188. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +9 -2
  189. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  190. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
  191. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  192. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +11 -4
  193. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  194. package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.cjs.js +60 -0
  195. package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.cjs.js.map +1 -0
  196. package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.es.js +339 -0
  197. package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.es.js.map +1 -0
  198. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  199. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  200. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +9 -2
  201. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  202. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  203. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  204. package/dist/shared/src/components/RenameForm/RenameForm.es.js +9 -2
  205. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  206. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
  207. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  208. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +3 -2
  209. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  210. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  211. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  212. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +9 -2
  213. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  214. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  215. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  216. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +10 -3
  217. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  218. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  219. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  220. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +9 -2
  221. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  222. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
  223. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  224. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +3 -2
  225. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  226. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  227. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  228. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +3 -2
  229. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  230. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +4 -4
  231. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
  232. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +37 -33
  233. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
  234. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.cjs.js +12 -0
  235. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.cjs.js.map +1 -0
  236. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.es.js +46 -0
  237. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.es.js.map +1 -0
  238. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  239. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  240. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +9 -2
  241. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  242. package/dist/shared/src/components/Thumbnail/Thumbnail.styled.cjs.js +3 -5
  243. package/dist/shared/src/components/Thumbnail/Thumbnail.styled.cjs.js.map +1 -1
  244. package/dist/shared/src/components/Thumbnail/Thumbnail.styled.es.js +4 -6
  245. package/dist/shared/src/components/Thumbnail/Thumbnail.styled.es.js.map +1 -1
  246. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js +1 -2
  247. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js.map +1 -1
  248. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js +0 -1
  249. package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js.map +1 -1
  250. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  251. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  252. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +9 -2
  253. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  254. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  255. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  256. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +5 -4
  257. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  258. package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
  259. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  260. package/dist/shared/src/components/Watchers/Watchers.es.js +3 -2
  261. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  262. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  263. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  264. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +9 -2
  265. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  266. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  267. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  268. package/dist/shared/src/containers/Actions/Actions.es.js +3 -2
  269. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  270. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  271. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  272. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +9 -2
  273. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  274. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  275. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  276. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +61 -52
  277. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  278. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  279. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  280. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +9 -2
  281. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  282. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  283. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  284. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +44 -36
  285. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  286. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  287. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  288. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +9 -2
  289. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  290. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  291. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  292. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +3 -2
  293. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  294. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js +1 -1
  295. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js.map +1 -1
  296. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js +4 -2
  297. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js.map +1 -1
  298. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js +1 -1
  299. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js.map +1 -1
  300. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js +19 -17
  301. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js.map +1 -1
  302. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  303. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  304. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +3 -2
  305. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  306. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  307. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  308. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +9 -2
  309. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  310. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  311. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  312. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +9 -2
  313. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  314. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  315. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  316. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +9 -2
  317. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  318. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  319. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  320. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +9 -2
  321. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  322. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  323. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  324. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +3 -2
  325. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  326. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  327. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  328. package/dist/shared/src/containers/Feed/Feed.es.js +73 -72
  329. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  330. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js +13 -0
  331. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js.map +1 -0
  332. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js +89 -0
  333. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js.map +1 -0
  334. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js +20 -0
  335. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js.map +1 -0
  336. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js +42 -0
  337. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js.map +1 -0
  338. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryTag.cjs.js +51 -0
  339. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryTag.cjs.js.map +1 -0
  340. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryTag.es.js +76 -0
  341. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryTag.es.js.map +1 -0
  342. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  343. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  344. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +161 -133
  345. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  346. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js +30 -14
  347. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js.map +1 -1
  348. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.es.js +41 -24
  349. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.es.js.map +1 -1
  350. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.cjs.js +3 -3
  351. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.cjs.js.map +1 -1
  352. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.es.js +58 -48
  353. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.es.js.map +1 -1
  354. package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js.map +1 -1
  355. package/dist/shared/src/containers/Feed/components/ActivityItem.es.js.map +1 -1
  356. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.cjs.js +1 -1
  357. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.cjs.js.map +1 -1
  358. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.es.js +24 -20
  359. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.es.js.map +1 -1
  360. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js +12 -12
  361. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js.map +1 -1
  362. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.styled.es.js +13 -13
  363. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.styled.es.js.map +1 -1
  364. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +2 -2
  365. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  366. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +336 -260
  367. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  368. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js +69 -41
  369. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js.map +1 -1
  370. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js +77 -48
  371. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js.map +1 -1
  372. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.cjs.js +2 -0
  373. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.cjs.js.map +1 -0
  374. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.es.js +19 -0
  375. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.es.js.map +1 -0
  376. package/dist/shared/src/containers/Feed/components/ReactionContainer/ExistingReactions.cjs.js +1 -1
  377. package/dist/shared/src/containers/Feed/components/ReactionContainer/ExistingReactions.cjs.js.map +1 -1
  378. package/dist/shared/src/containers/Feed/components/ReactionContainer/ExistingReactions.es.js +15 -6
  379. package/dist/shared/src/containers/Feed/components/ReactionContainer/ExistingReactions.es.js.map +1 -1
  380. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reaction.cjs.js +1 -1
  381. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reaction.cjs.js.map +1 -1
  382. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reaction.es.js +24 -14
  383. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reaction.es.js.map +1 -1
  384. package/dist/shared/src/containers/Feed/components/ReactionContainer/ReactionPanelOpener.cjs.js +1 -1
  385. package/dist/shared/src/containers/Feed/components/ReactionContainer/ReactionPanelOpener.cjs.js.map +1 -1
  386. package/dist/shared/src/containers/Feed/components/ReactionContainer/ReactionPanelOpener.es.js +60 -38
  387. package/dist/shared/src/containers/Feed/components/ReactionContainer/ReactionPanelOpener.es.js.map +1 -1
  388. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.cjs.js +1 -1
  389. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.cjs.js.map +1 -1
  390. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.es.js +42 -9
  391. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.es.js.map +1 -1
  392. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.styled.cjs.js +65 -20
  393. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.styled.cjs.js.map +1 -1
  394. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.styled.es.js +71 -26
  395. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.styled.es.js.map +1 -1
  396. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  397. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  398. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +4 -2
  399. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  400. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  401. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  402. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +30 -26
  403. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  404. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js +1 -1
  405. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js.map +1 -1
  406. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js +57 -53
  407. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js.map +1 -1
  408. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  409. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  410. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +3 -2
  411. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  412. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  413. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  414. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +562 -537
  415. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  416. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js +0 -1
  417. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js.map +1 -1
  418. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js +4 -5
  419. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js.map +1 -1
  420. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  421. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  422. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +99 -91
  423. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  424. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  425. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  426. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +9 -2
  427. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  428. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  429. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  430. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +9 -2
  431. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  432. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  433. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  434. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +9 -2
  435. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  436. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js.map +1 -1
  437. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js.map +1 -1
  438. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
  439. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
  440. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +126 -108
  441. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
  442. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  443. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  444. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +5 -4
  445. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  446. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  447. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  448. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +42 -35
  449. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  450. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
  451. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  452. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +3 -2
  453. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  454. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  455. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  456. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +6 -5
  457. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  458. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  459. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  460. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +23 -21
  461. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  462. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  463. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  464. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +9 -2
  465. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  466. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  467. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  468. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +9 -2
  469. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  470. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  471. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  472. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +9 -2
  473. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  474. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDynamicRowHeight.cjs.js +2 -0
  475. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDynamicRowHeight.cjs.js.map +1 -0
  476. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDynamicRowHeight.es.js +9 -0
  477. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDynamicRowHeight.es.js.map +1 -0
  478. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  479. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  480. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +3 -2
  481. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  482. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  483. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  484. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +9 -2
  485. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  486. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js +1 -1
  487. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js.map +1 -1
  488. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js +3 -2
  489. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js.map +1 -1
  490. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  491. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  492. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +9 -2
  493. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  494. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  495. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  496. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +9 -2
  497. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  498. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  499. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  500. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +9 -2
  501. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  502. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js +1 -1
  503. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js.map +1 -1
  504. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js +3 -2
  505. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js.map +1 -1
  506. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  507. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  508. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +9 -2
  509. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  510. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  511. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  512. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +20 -13
  513. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  514. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +2 -2
  515. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  516. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +50 -48
  517. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  518. package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js +38 -9
  519. package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js.map +1 -1
  520. package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.es.js +74 -39
  521. package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.es.js.map +1 -1
  522. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js +24 -15
  523. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js.map +1 -1
  524. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.es.js +71 -59
  525. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.es.js.map +1 -1
  526. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  527. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  528. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +11 -4
  529. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  530. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  531. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  532. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +9 -2
  533. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  534. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js +6 -6
  535. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js.map +1 -1
  536. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js +12 -12
  537. package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js.map +1 -1
  538. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  539. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  540. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +9 -2
  541. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  542. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  543. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  544. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +9 -2
  545. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  546. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  547. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  548. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +3 -2
  549. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  550. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  551. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  552. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +5 -4
  553. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  554. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  555. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  556. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +3 -2
  557. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  558. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js +1 -1
  559. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -1
  560. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js +3 -2
  561. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -1
  562. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
  563. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
  564. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +3 -2
  565. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
  566. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
  567. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
  568. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +3 -2
  569. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
  570. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  571. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  572. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +3 -2
  573. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  574. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  575. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  576. package/dist/shared/src/context/AddonProjectContext.es.js +5 -4
  577. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  578. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  579. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  580. package/dist/shared/src/context/DetailsPanelContext.es.js +70 -66
  581. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  582. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  583. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  584. package/dist/shared/src/context/PowerpackContext.es.js +30 -23
  585. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  586. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  587. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  588. package/dist/shared/src/context/RemoteModulesContext.es.js +5 -4
  589. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  590. package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
  591. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  592. package/dist/shared/src/hooks/useActionTriggers.es.js +3 -2
  593. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  594. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  595. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  596. package/dist/shared/src/hooks/useEntityUpdate.es.js +3 -2
  597. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  598. package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
  599. package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
  600. package/dist/shared/src/hooks/useHierarchyTable.es.js +3 -2
  601. package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
  602. package/dist/shared/src/hooks/useLoadModule.cjs.js.map +1 -1
  603. package/dist/shared/src/hooks/useLoadModule.es.js.map +1 -1
  604. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
  605. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  606. package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
  607. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  608. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  609. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  610. package/dist/shared/src/hooks/useUserProjectConfig.es.js +3 -2
  611. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  612. package/dist/shared/src/util/colorUtils.cjs.js +2 -0
  613. package/dist/shared/src/util/colorUtils.cjs.js.map +1 -0
  614. package/dist/shared/src/util/colorUtils.es.js +40 -0
  615. package/dist/shared/src/util/colorUtils.es.js.map +1 -0
  616. package/dist/shared/src/util/columnConfigConverter.cjs.js +1 -1
  617. package/dist/shared/src/util/columnConfigConverter.cjs.js.map +1 -1
  618. package/dist/shared/src/util/columnConfigConverter.es.js +35 -33
  619. package/dist/shared/src/util/columnConfigConverter.es.js.map +1 -1
  620. package/dist/types/api/generated/access.d.ts +6 -0
  621. package/dist/types/api/generated/activityFeed.d.ts +9 -0
  622. package/dist/types/api/generated/authentication.d.ts +6 -0
  623. package/dist/types/api/generated/entityLists.d.ts +7 -7
  624. package/dist/types/api/generated/folders.d.ts +2 -2
  625. package/dist/types/api/generated/graphql.d.ts +9 -2
  626. package/dist/types/api/generated/graphqlLinks.d.ts +21 -15
  627. package/dist/types/api/generated/links.d.ts +4 -0
  628. package/dist/types/api/generated/onboarding.d.ts +3 -0
  629. package/dist/types/api/generated/operations.d.ts +22 -1
  630. package/dist/types/api/generated/products.d.ts +23 -0
  631. package/dist/types/api/generated/projects.d.ts +63 -0
  632. package/dist/types/api/generated/representations.d.ts +1 -0
  633. package/dist/types/api/generated/system.d.ts +9 -2
  634. package/dist/types/api/generated/tasks.d.ts +1 -0
  635. package/dist/types/api/generated/users.d.ts +1 -1
  636. package/dist/types/api/generated/versions.d.ts +1 -0
  637. package/dist/types/api/generated/views.d.ts +50 -9
  638. package/dist/types/api/index.d.ts +1 -0
  639. package/dist/types/api/queries/activities/getCategories.d.ts +142 -0
  640. package/dist/types/api/queries/activities/getMentions.d.ts +1 -0
  641. package/dist/types/api/queries/activities/index.d.ts +1 -0
  642. package/dist/types/api/queries/activities/updateReaction.d.ts +1 -0
  643. package/dist/types/api/queries/authentication/getAuthentication.d.ts +1 -0
  644. package/dist/types/api/queries/overview/updateOverview.d.ts +2 -0
  645. package/dist/types/api/queries/project/getProject.d.ts +4 -0
  646. package/dist/types/api/queries/watchers/getWatchers.d.ts +1 -0
  647. package/dist/types/components/AccessSearchInput/AccessSearchInput.d.ts +16 -0
  648. package/dist/types/components/AccessSearchInput/AccessSearchInput.styled.d.ts +2 -0
  649. package/dist/types/components/AccessSearchInput/index.d.ts +2 -0
  650. package/dist/types/components/AccessUser/AccessUser.d.ts +24 -0
  651. package/dist/types/components/AccessUser/AccessUser.styled.d.ts +1 -0
  652. package/dist/types/components/AccessUser/index.d.ts +1 -0
  653. package/dist/types/components/ProjectTableSettings/RowHeightSettings.d.ts +3 -0
  654. package/dist/types/components/ShareOptionIcon/ShareOptionIcon.d.ts +16 -0
  655. package/dist/types/components/ShareOptionIcon/index.d.ts +1 -0
  656. package/dist/types/components/index.d.ts +3 -0
  657. package/dist/types/containers/DetailsPanel/DetailsPanel.d.ts +2 -1
  658. package/dist/types/containers/DetailsPanel/FeedWrapper.d.ts +1 -0
  659. package/dist/types/containers/Feed/Feed.d.ts +2 -1
  660. package/dist/types/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.d.ts +14 -0
  661. package/dist/types/containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.d.ts +8 -0
  662. package/dist/types/containers/Feed/components/ActivityCategorySelect/CategoryTag.d.ts +10 -0
  663. package/dist/types/containers/Feed/components/ActivityCategorySelect/index.d.ts +1 -0
  664. package/dist/types/containers/Feed/components/ActivityComment/ActivityComment.d.ts +1 -1
  665. package/dist/types/containers/Feed/components/ActivityComment/ActivityComment.styled.d.ts +2 -1
  666. package/dist/types/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.d.ts +3 -1
  667. package/dist/types/containers/Feed/components/ActivityItem.d.ts +1 -1
  668. package/dist/types/containers/Feed/components/ActivityReference/ActivityReference.d.ts +2 -0
  669. package/dist/types/containers/Feed/components/ActivityReference/ActivityReference.styled.d.ts +2 -0
  670. package/dist/types/containers/Feed/components/CommentInput/CommentInput.d.ts +1 -0
  671. package/dist/types/containers/Feed/components/CommentInput/CommentInput.styled.d.ts +7 -1
  672. package/dist/types/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.d.ts +11 -0
  673. package/dist/types/containers/Feed/components/ReactionContainer/ExistingReactions.d.ts +4 -1
  674. package/dist/types/containers/Feed/components/ReactionContainer/Reaction.d.ts +4 -1
  675. package/dist/types/containers/Feed/components/ReactionContainer/ReactionPanelOpener.d.ts +4 -1
  676. package/dist/types/containers/Feed/components/ReactionContainer/Reactions.d.ts +4 -1
  677. package/dist/types/containers/Feed/components/ReactionContainer/Reactions.styled.d.ts +9 -4
  678. package/dist/types/containers/Feed/context/FeedContext.d.ts +2 -1
  679. package/dist/types/containers/Feed/hooks/useCommentMutations.d.ts +3 -2
  680. package/dist/types/containers/Feed/index.d.ts +1 -0
  681. package/dist/types/containers/ProjectTreeTable/context/ColumnSettingsContext.d.ts +4 -0
  682. package/dist/types/containers/ProjectTreeTable/hooks/useDynamicRowHeight.d.ts +11 -0
  683. package/dist/types/containers/ProjectTreeTable/widgets/EntityNameWidget.d.ts +2 -1
  684. package/dist/types/containers/ProjectTreeTable/widgets/EnumCellValue.d.ts +2 -1
  685. package/dist/types/containers/Views/index.d.ts +2 -2
  686. package/dist/types/context/DetailsPanelContext.d.ts +3 -0
  687. package/dist/types/context/PowerpackContext.d.ts +1 -1
  688. package/dist/types/util/colorUtils.d.ts +42 -0
  689. package/dist/types/util/index.d.ts +1 -0
  690. package/dist/util.cjs.js +1 -1
  691. package/dist/util.es.js +30 -24
  692. package/dist/util.es.js.map +1 -1
  693. package/package.json +3 -3
@@ -48,6 +48,7 @@ import "../../../api/queries/activities/getActivities.es.js";
48
48
  import "../../../api/queries/activities/updateActivities.es.js";
49
49
  import "../../../api/queries/activities/updateReaction.es.js";
50
50
  import "../../../api/queries/activities/getMentions.es.js";
51
+ import "../../../api/queries/activities/getCategories.es.js";
51
52
  import "../../../api/queries/addons/getAddons.es.js";
52
53
  import "../../../api/queries/addons/updateAddons.es.js";
53
54
  import "../../../api/queries/attributes/getAttributes.es.js";
@@ -134,12 +135,14 @@ import "react-router-dom";
134
135
  import "../../Feed/components/ActivityStatus/ActivityStatus.es.js";
135
136
  import "../../Feed/components/ActivityHeader/ActivityHeader.styled.es.js";
136
137
  import "../../Feed/components/ActivityDate.es.js";
138
+ import "../../Feed/components/ActivityCategorySelect/CategoryTag.es.js";
137
139
  import "../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.es.js";
138
140
  import "../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.es.js";
139
141
  import "../../Feed/components/ActivityVersions/ActivityVersions.styled.es.js";
140
142
  import "../../Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
141
143
  import "../../Feed/Feed.styled.es.js";
142
144
  import "date-fns";
145
+ import "../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js";
143
146
  import "../ProjectTreeTable.es.js";
144
147
  import "../context/CellEditingContext.es.js";
145
148
  import "@tanstack/react-table";
@@ -214,6 +217,10 @@ import "../../../components/Feedback/SupportBubble.es.js";
214
217
  import "../../../components/Chips/Chips.es.js";
215
218
  import "../../EntityPickerDialog/EntityPickerDialog.es.js";
216
219
  import "../../../components/StyledLink/StyledLink.es.js";
220
+ import "../../../components/ShareOptionIcon/ShareOptionIcon.es.js";
221
+ import "../../../components/AccessUser/AccessUser.es.js";
222
+ import "../../../../../node_modules/match-sorter/dist/match-sorter.esm.es.js";
223
+ import "../../../components/AccessSearchInput/AccessSearchInput.styled.es.js";
217
224
  import o from "styled-components";
218
225
  const s = o.li`
219
226
  display: flex;
@@ -223,7 +230,7 @@ const s = o.li`
223
230
  `, a = o(p)`
224
231
  width: 100%;
225
232
  justify-content: start;
226
- `, ur = ({
233
+ `, hr = ({
227
234
  requiredVersion: r,
228
235
  fields: m
229
236
  }) => /* @__PURE__ */ t.jsx(n, { feature: "groupAttributes", requiredVersion: r, children: m.map((i) => /* @__PURE__ */ t.jsx(s, { children: /* @__PURE__ */ t.jsxs(a, { variant: "text", icon: i.icon, children: [
@@ -231,6 +238,6 @@ const s = o.li`
231
238
  /* @__PURE__ */ t.jsx(e, { icon: "bolt", style: { marginLeft: "auto" } })
232
239
  ] }) }, i.value)) });
233
240
  export {
234
- ur as GroupSettingsFallback
241
+ hr as GroupSettingsFallback
235
242
  };
236
243
  //# sourceMappingURL=GroupSettingsFallback.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GroupSettingsFallback.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/components/GroupSettingsFallback.tsx"],"sourcesContent":["import { SettingsPanelItem, TableSettingsFallback } from '../../../components'\nimport { FC } from 'react'\nimport { ColumnSettingsContextType } from '../context'\nimport styled from 'styled-components'\nimport { Button, Icon } from '@ynput/ayon-react-components'\n\nconst FieldItem = styled.li`\n display: flex;\n align-items: center;\n padding: 0;\n margin: 0;\n`\n\nconst FieldButton = styled(Button)`\n width: 100%;\n justify-content: start;\n`\n\nexport type GroupByConfig = {\n showEmpty?: boolean\n}\n\nexport interface GroupSettingsProps {\n fields: SettingsPanelItem[]\n config?: GroupByConfig\n onChange?: ColumnSettingsContextType['updateGroupBy']\n groupBy?: ColumnSettingsContextType['groupBy']\n updateGroupBy?: ColumnSettingsContextType['updateGroupBy']\n onConfigChange?: (config: GroupByConfig) => void\n}\n\nexport interface GroupSettingsFallbackProps extends GroupSettingsProps {\n requiredVersion?: string\n}\n\nexport const GroupSettingsFallback: FC<GroupSettingsFallbackProps> = ({\n requiredVersion,\n fields,\n}) => (\n <TableSettingsFallback feature={'groupAttributes'} requiredVersion={requiredVersion}>\n {fields.map((field) => (\n <FieldItem key={field.value}>\n <FieldButton variant=\"text\" icon={field.icon}>\n {field.label}\n <Icon icon={'bolt'} style={{ marginLeft: 'auto' }} />\n </FieldButton>\n </FieldItem>\n ))}\n </TableSettingsFallback>\n)\n"],"names":["FieldItem","styled","FieldButton","Button","GroupSettingsFallback","requiredVersion","fields","TableSettingsFallback","field","jsx","jsxs","Icon"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAMA,IAAYC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA,GAOnBC,IAAcD,EAAOE,CAAM;AAAA;AAAA;AAAA,GAsBpBC,KAAwD,CAAC;AAAA,EACpE,iBAAAC;AAAA,EACA,QAAAC;AACF,4BACGC,GAAsB,EAAA,SAAS,mBAAmB,iBAAAF,GAChD,YAAO,IAAI,CAACG,MACXC,gBAAAA,EAAAA,IAACT,KACC,UAACU,gBAAAA,OAAAR,GAAA,EAAY,SAAQ,QAAO,MAAMM,EAAM,MACrC,UAAA;AAAA,EAAMA,EAAA;AAAA,EACPC,gBAAAA,MAACE,KAAK,MAAM,QAAQ,OAAO,EAAE,YAAY,SAAU,CAAA;AAAA,EAAA,CACrD,EAJc,GAAAH,EAAM,KAKtB,CACD,EACH,CAAA;"}
1
+ {"version":3,"file":"GroupSettingsFallback.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/components/GroupSettingsFallback.tsx"],"sourcesContent":["import { SettingsPanelItem, TableSettingsFallback } from '../../../components'\nimport { FC } from 'react'\nimport { ColumnSettingsContextType } from '../context'\nimport styled from 'styled-components'\nimport { Button, Icon } from '@ynput/ayon-react-components'\n\nconst FieldItem = styled.li`\n display: flex;\n align-items: center;\n padding: 0;\n margin: 0;\n`\n\nconst FieldButton = styled(Button)`\n width: 100%;\n justify-content: start;\n`\n\nexport type GroupByConfig = {\n showEmpty?: boolean\n}\n\nexport interface GroupSettingsProps {\n fields: SettingsPanelItem[]\n config?: GroupByConfig\n onChange?: ColumnSettingsContextType['updateGroupBy']\n groupBy?: ColumnSettingsContextType['groupBy']\n updateGroupBy?: ColumnSettingsContextType['updateGroupBy']\n onConfigChange?: (config: GroupByConfig) => void\n}\n\nexport interface GroupSettingsFallbackProps extends GroupSettingsProps {\n requiredVersion?: string\n}\n\nexport const GroupSettingsFallback: FC<GroupSettingsFallbackProps> = ({\n requiredVersion,\n fields,\n}) => (\n <TableSettingsFallback feature={'groupAttributes'} requiredVersion={requiredVersion}>\n {fields.map((field) => (\n <FieldItem key={field.value}>\n <FieldButton variant=\"text\" icon={field.icon}>\n {field.label}\n <Icon icon={'bolt'} style={{ marginLeft: 'auto' }} />\n </FieldButton>\n </FieldItem>\n ))}\n </TableSettingsFallback>\n)\n"],"names":["FieldItem","styled","FieldButton","Button","GroupSettingsFallback","requiredVersion","fields","TableSettingsFallback","field","jsx","jsxs","Icon"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAMA,IAAYC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA,GAOnBC,IAAcD,EAAOE,CAAM;AAAA;AAAA;AAAA,GAsBpBC,KAAwD,CAAC;AAAA,EACpE,iBAAAC;AAAA,EACA,QAAAC;AACF,4BACGC,GAAsB,EAAA,SAAS,mBAAmB,iBAAAF,GAChD,YAAO,IAAI,CAACG,MACXC,gBAAAA,EAAAA,IAACT,KACC,UAACU,gBAAAA,OAAAR,GAAA,EAAY,SAAQ,QAAO,MAAMM,EAAM,MACrC,UAAA;AAAA,EAAMA,EAAA;AAAA,EACPC,gBAAAA,MAACE,KAAK,MAAM,QAAQ,OAAO,EAAE,YAAY,SAAU,CAAA;AAAA,EAAA,CACrD,EAJc,GAAAH,EAAM,KAKtB,CACD,EACH,CAAA;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const M=require("../../../../../_virtual/jsx-runtime.cjs.js"),l=require("react");require("@ynput/ayon-react-components");require("lodash");const a=require("react-toastify");require("uuid");require("../../../util/pubsub.cjs.js");const _=require("../utils/cellUtils.cjs.js"),v=require("../utils/getTypeDefaultValue.cjs.js");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.cjs.js");require("../widgets/TextWidget.cjs.js");require("../widgets/BooleanWidget.cjs.js");require("../widgets/CellWidget.cjs.js");require("../widgets/EntityNameWidget.cjs.js");require("../widgets/GroupHeaderWidget.cjs.js");require("../widgets/ThumbnailWidget.cjs.js");require("clsx");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("axios");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../Feed/components/ActivityDate.cjs.js");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("date-fns");require("../ProjectTreeTable.cjs.js");const S=require("./CellEditingContext.cjs.js"),V=require("../hooks/useHistory.cjs.js"),B=require("./SelectionCellsContext.cjs.js"),H=require("../hooks/useUpdateTableData.cjs.js"),L=require("./ProjectTableContext.cjs.js"),$=require("../utils/validateUpdateEntities.cjs.js");require("./ClipboardContext.cjs.js");require("./ColumnSettingsContext.cjs.js");require("./ProjectTableQueriesContext.cjs.js");require("./SelectedRowsContext.cjs.js");require("./DetailsPanelEntityContext.cjs.js");require("./ProjectDataContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");require("../../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/SearchFilter/filterDates.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");require("../../../components/Chips/Chips.cjs.js");require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../ProjectTreeTable.styled.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");const z=({children:A})=>{const[f,D]=l.useState(null),T=l.useCallback(i=>i===f,[f]),C=V(),{pushHistory:F,undo:U,redo:P,canUndo:w,canRedo:k}=C,{selectedCells:E}=B.useSelectionCellsContext(),{updateEntities:I,inheritFromParent:c}=H({pushHistory:F}),{attribFields:y,getEntityById:j}=L.useProjectTableContext(),d=l.useCallback(async(i=[],e=!0)=>{try{return $(i,y),await I(i,e)}catch(r){return a.toast.error(r.message),Promise.reject(r)}},[I,y]),g=async()=>{const[i,e,r]=U()||[];if(i&&i.length>0)try{await d(i,!1)}catch{a.toast.error("Failed to undo changes")}if(e&&e.length>0)try{await c(e,!1)}catch{a.toast.error("Failed to inherit changes")}r&&r.length>0&&r.forEach(t=>{try{t()}catch{a.toast.error("Failed to execute custom undo action")}})},h=async()=>{const[i,e,r]=P()||[];if(i&&i.length>0)try{await d(i,!1)}catch{a.toast.error("Failed to redo changes")}if(e&&e.length>0)try{await c(e,!1)}catch{a.toast.error("Failed to inherit changes")}r&&r.length>0&&r.forEach(t=>{try{t()}catch{a.toast.error("Failed to execute custom redo action")}})},x=l.useCallback(async i=>{const e=[],r=[];for(const t of i){const{colId:o,rowId:s}=_.parseCellId(t)||{};if(!o||!s){console.warn(`Invalid cellId: ${t}`);continue}const u=j(s);if(!u)return;const q=o.replace("attrib_",""),n=o.startsWith("attrib_");if(!q){console.warn(`Invalid column ID: ${o}`);continue}let p=null;if(n){const b=y.find(m=>m.name===q);if(!b){console.warn(`Attribute field not found: ${q}`);continue}if(b.data.inherit){const m=r.find(R=>R.entityId===u.entityId);m?m.attribs.push(q):r.push({entityId:u.entityId,attribs:[q],entityType:u.entityType,ownAttrib:u.ownAttrib||[],rowId:s,folderId:u.entityType==="folder"?u.parentId:u.entityType==="task"?u.folderId:void 0});continue}else p=b.data.default||v.getTypeDefaultValue(b.data.type)}else if(q==="assignees")p=v.getTypeDefaultValue("list_of_strings");else if(q==="tags")p=v.getTypeDefaultValue("list_of_strings");else{console.warn(`Field not editable: ${q}`);continue}const N={id:s,rowId:s,field:q,value:p,isAttrib:n,type:u.entityType};e.push(N)}if(e.length>0)try{await d(e,!0)}catch(t){a.toast.error("Failed to clear selected cells"),console.error("Error clearing selected cells:",t)}if(r.length>0)try{await c(r,!0)}catch(t){a.toast.error("Failed to inherit parent values for cleared cells"),console.error("Error clearing inherited cells:",t)}e.length===0&&r.length===0&&a.toast.warn("No valid cells selected to clear")},[y,I]),K=l.useMemo(()=>({editingCellId:f,setEditingCellId:D,isEditing:T,updateEntities:d,inheritFromParent:c,undo:g,redo:h,history:C}),[f,T,d,c,g,h,C]);return l.useEffect(()=>{const i=e=>{const r=e.target;if(r.tagName==="INPUT"||r.tagName==="TEXTAREA"||r.isContentEditable||r.getAttribute("role")==="textbox"||r.tagName==="LI")return;const o=typeof navigator<"u"&&(navigator.userAgentData&&navigator.userAgentData.platform.toUpperCase().includes("MAC")||navigator.userAgent.toUpperCase().includes("MAC"))?e.metaKey:e.ctrlKey;if(o&&e.key==="z"&&(e.preventDefault(),w&&g()),(o&&e.key==="y"||o&&e.shiftKey&&e.key==="z"||o&&e.key==="Z")&&(e.preventDefault(),k&&h()),e.key==="Backspace"&&!(e.ctrlKey||e.metaKey)||e.key==="Delete"){if(!E.size)return;e.preventDefault();const s=Array.from(E).map(n=>document.getElementById(n)),u=n=>n==null?void 0:n.classList.contains("editable"),q=s.filter(u);if(q.length===0){a.toast.warn("No editable cells selected to clear");return}x(q.map(n=>n==null?void 0:n.id).filter(Boolean))}};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},[w,k,g,h,E,x]),M.jsxRuntimeExports.jsx(S.CellEditingContext.Provider,{value:K,children:A})};exports.CellEditingProvider=z;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const M=require("../../../../../_virtual/jsx-runtime.cjs.js"),l=require("react");require("@ynput/ayon-react-components");require("lodash");const a=require("react-toastify");require("uuid");require("../../../util/pubsub.cjs.js");const _=require("../utils/cellUtils.cjs.js"),v=require("../utils/getTypeDefaultValue.cjs.js");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.cjs.js");require("../widgets/TextWidget.cjs.js");require("../widgets/BooleanWidget.cjs.js");require("../widgets/CellWidget.cjs.js");require("../widgets/EntityNameWidget.cjs.js");require("../widgets/GroupHeaderWidget.cjs.js");require("../widgets/ThumbnailWidget.cjs.js");require("clsx");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("axios");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../Feed/components/ActivityDate.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("date-fns");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../ProjectTreeTable.cjs.js");const S=require("./CellEditingContext.cjs.js"),V=require("../hooks/useHistory.cjs.js"),B=require("./SelectionCellsContext.cjs.js"),H=require("../hooks/useUpdateTableData.cjs.js"),L=require("./ProjectTableContext.cjs.js"),$=require("../utils/validateUpdateEntities.cjs.js");require("./ClipboardContext.cjs.js");require("./ColumnSettingsContext.cjs.js");require("./ProjectTableQueriesContext.cjs.js");require("./SelectedRowsContext.cjs.js");require("./DetailsPanelEntityContext.cjs.js");require("./ProjectDataContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");require("../../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/SearchFilter/filterDates.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");require("../../../components/Chips/Chips.cjs.js");require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../ProjectTreeTable.styled.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");const z=({children:A})=>{const[f,D]=l.useState(null),T=l.useCallback(i=>i===f,[f]),C=V(),{pushHistory:F,undo:U,redo:P,canUndo:w,canRedo:k}=C,{selectedCells:E}=B.useSelectionCellsContext(),{updateEntities:I,inheritFromParent:c}=H({pushHistory:F}),{attribFields:y,getEntityById:j}=L.useProjectTableContext(),d=l.useCallback(async(i=[],e=!0)=>{try{return $(i,y),await I(i,e)}catch(r){return a.toast.error(r.message),Promise.reject(r)}},[I,y]),g=async()=>{const[i,e,r]=U()||[];if(i&&i.length>0)try{await d(i,!1)}catch{a.toast.error("Failed to undo changes")}if(e&&e.length>0)try{await c(e,!1)}catch{a.toast.error("Failed to inherit changes")}r&&r.length>0&&r.forEach(t=>{try{t()}catch{a.toast.error("Failed to execute custom undo action")}})},h=async()=>{const[i,e,r]=P()||[];if(i&&i.length>0)try{await d(i,!1)}catch{a.toast.error("Failed to redo changes")}if(e&&e.length>0)try{await c(e,!1)}catch{a.toast.error("Failed to inherit changes")}r&&r.length>0&&r.forEach(t=>{try{t()}catch{a.toast.error("Failed to execute custom redo action")}})},x=l.useCallback(async i=>{const e=[],r=[];for(const t of i){const{colId:o,rowId:s}=_.parseCellId(t)||{};if(!o||!s){console.warn(`Invalid cellId: ${t}`);continue}const u=j(s);if(!u)return;const q=o.replace("attrib_",""),n=o.startsWith("attrib_");if(!q){console.warn(`Invalid column ID: ${o}`);continue}let p=null;if(n){const b=y.find(m=>m.name===q);if(!b){console.warn(`Attribute field not found: ${q}`);continue}if(b.data.inherit){const m=r.find(R=>R.entityId===u.entityId);m?m.attribs.push(q):r.push({entityId:u.entityId,attribs:[q],entityType:u.entityType,ownAttrib:u.ownAttrib||[],rowId:s,folderId:u.entityType==="folder"?u.parentId:u.entityType==="task"?u.folderId:void 0});continue}else p=b.data.default||v.getTypeDefaultValue(b.data.type)}else if(q==="assignees")p=v.getTypeDefaultValue("list_of_strings");else if(q==="tags")p=v.getTypeDefaultValue("list_of_strings");else{console.warn(`Field not editable: ${q}`);continue}const N={id:s,rowId:s,field:q,value:p,isAttrib:n,type:u.entityType};e.push(N)}if(e.length>0)try{await d(e,!0)}catch(t){a.toast.error("Failed to clear selected cells"),console.error("Error clearing selected cells:",t)}if(r.length>0)try{await c(r,!0)}catch(t){a.toast.error("Failed to inherit parent values for cleared cells"),console.error("Error clearing inherited cells:",t)}e.length===0&&r.length===0&&a.toast.warn("No valid cells selected to clear")},[y,I]),K=l.useMemo(()=>({editingCellId:f,setEditingCellId:D,isEditing:T,updateEntities:d,inheritFromParent:c,undo:g,redo:h,history:C}),[f,T,d,c,g,h,C]);return l.useEffect(()=>{const i=e=>{const r=e.target;if(r.tagName==="INPUT"||r.tagName==="TEXTAREA"||r.isContentEditable||r.getAttribute("role")==="textbox"||r.tagName==="LI")return;const o=typeof navigator<"u"&&(navigator.userAgentData&&navigator.userAgentData.platform.toUpperCase().includes("MAC")||navigator.userAgent.toUpperCase().includes("MAC"))?e.metaKey:e.ctrlKey;if(o&&e.key==="z"&&(e.preventDefault(),w&&g()),(o&&e.key==="y"||o&&e.shiftKey&&e.key==="z"||o&&e.key==="Z")&&(e.preventDefault(),k&&h()),e.key==="Backspace"&&!(e.ctrlKey||e.metaKey)||e.key==="Delete"){if(!E.size)return;e.preventDefault();const s=Array.from(E).map(n=>document.getElementById(n)),u=n=>n==null?void 0:n.classList.contains("editable"),q=s.filter(u);if(q.length===0){a.toast.warn("No editable cells selected to clear");return}x(q.map(n=>n==null?void 0:n.id).filter(Boolean))}};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},[w,k,g,h,E,x]),M.jsxRuntimeExports.jsx(S.CellEditingContext.Provider,{value:K,children:A})};exports.CellEditingProvider=z;
2
2
  //# sourceMappingURL=CellEditingProvider.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CellEditingProvider.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/CellEditingProvider.tsx"],"sourcesContent":["import { ReactNode, useCallback, useEffect, useMemo, useState } from 'react'\nimport { CellId, getTypeDefaultValue, parseCellId } from '../utils'\nimport useHistory from '../hooks/useHistory'\nimport { useSelectionCellsContext } from './SelectionCellsContext'\nimport useUpdateTableData, {\n EntityUpdate,\n InheritFromParentEntity,\n UpdateTableEntities,\n} from '../hooks/useUpdateTableData'\nimport { useProjectTableContext } from './ProjectTableContext'\nimport validateUpdateEntities from '../utils/validateUpdateEntities'\nimport { toast } from 'react-toastify'\nimport { CellEditingContext } from './CellEditingContext'\n\nexport const CellEditingProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [editingCellId, 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 { selectedCells } = useSelectionCellsContext()\n const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateTableData({\n pushHistory,\n })\n const { attribFields, getEntityById } = 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 // Handle clearing cells\n const handleClear = useCallback(\n async (cells: CellId[]) => {\n // we explicity update the value of the cells to their default values\n const entityUpdates: EntityUpdate[] = []\n // of if they are inheritable, we inherit from the parent entity\n const entityInheriting: InheritFromParentEntity[] = []\n\n for (const cellId of cells) {\n const { colId, rowId } = parseCellId(cellId) || {}\n if (!colId || !rowId) {\n console.warn(`Invalid cellId: ${cellId}`)\n continue\n }\n\n // get the entity from the rowId\n const entity = getEntityById(rowId)\n\n if (!entity) return\n\n // get the field name and check if it is an attribute\n const fieldName = colId.replace('attrib_', '')\n const isAttrib = colId.startsWith('attrib_')\n\n if (!fieldName) {\n console.warn(`Invalid column ID: ${colId}`)\n continue\n }\n\n let defaultValue: any = null\n if (isAttrib) {\n // find default value for the attribute\n const attribField = attribFields.find((f) => f.name === fieldName)\n if (!attribField) {\n console.warn(`Attribute field not found: ${fieldName}`)\n continue\n }\n // check if the attribute is inheritable\n if (attribField.data.inherit) {\n // inherit from parent entity\n // check if this entity has already been added to the inheriting list\n const existingInherit = entityInheriting.find((e) => e.entityId === entity.entityId)\n if (existingInherit) {\n // add the attrib to the existing entity\n existingInherit.attribs.push(fieldName)\n } else {\n // add a new entity to the inheriting list\n entityInheriting.push({\n entityId: entity.entityId,\n attribs: [fieldName],\n entityType: entity.entityType,\n ownAttrib: entity.ownAttrib || [],\n rowId: rowId,\n folderId:\n entity.entityType === 'folder'\n ? entity.parentId\n : entity.entityType === 'task'\n ? entity.folderId\n : undefined,\n })\n }\n continue\n } else {\n // set explicit default value\n defaultValue = attribField.data.default || getTypeDefaultValue(attribField.data.type)\n }\n } else if (fieldName === 'assignees') {\n // for assignees, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else if (fieldName === 'tags') {\n // for tags, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else {\n // we ignore other fields\n console.warn(`Field not editable: ${fieldName}`)\n continue\n }\n\n // create the entity update\n const update: EntityUpdate = {\n id: rowId,\n rowId: rowId,\n field: fieldName,\n value: defaultValue,\n isAttrib,\n type: entity.entityType,\n }\n\n entityUpdates.push(update)\n }\n\n // if we have updates, call the updateEntities function\n if (entityUpdates.length > 0) {\n try {\n await handleUpdateEntities(entityUpdates, true)\n } catch (error) {\n toast.error('Failed to clear selected cells')\n console.error('Error clearing selected cells:', error)\n }\n }\n\n // if we have inheritable attributes, call inheritFromParent\n if (entityInheriting.length > 0) {\n try {\n await inheritFromParent(entityInheriting, true)\n } catch (error) {\n toast.error('Failed to inherit parent values for cleared cells')\n console.error('Error clearing inherited cells:', error)\n }\n }\n\n // if nothing was done, warn the user\n if (entityUpdates.length === 0 && entityInheriting.length === 0) {\n toast.warn('No valid cells selected to clear')\n }\n },\n [attribFields, updateOverviewEntities],\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 shortcuts\n // undo - ctrl + z\n // redo - ctrl + y or ctrl + shift + z\n // clear - backspace or delete\n useEffect(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n if (\n target.tagName === 'INPUT' ||\n target.tagName === 'TEXTAREA' ||\n target.isContentEditable ||\n target.getAttribute('role') === 'textbox' ||\n target.tagName === 'LI'\n ) {\n return\n }\n\n const isMac =\n typeof navigator !== 'undefined' &&\n // @ts-expect-error\n ((navigator.userAgentData &&\n // @ts-expect-error\n navigator.userAgentData.platform.toUpperCase().includes('MAC')) ||\n navigator.userAgent.toUpperCase().includes('MAC'))\n const ctrlKey = isMac ? e.metaKey : e.ctrlKey\n\n // undo\n if (ctrlKey && e.key === 'z') {\n e.preventDefault()\n if (canUndo) handleUndo()\n }\n // redo\n if (\n (ctrlKey && e.key === 'y') ||\n (ctrlKey && e.shiftKey && e.key === 'z') ||\n (ctrlKey && e.key === 'Z')\n ) {\n e.preventDefault()\n if (canRedo) handleRedo()\n }\n // clear\n if ((e.key === 'Backspace' && !(e.ctrlKey || e.metaKey)) || e.key === 'Delete') {\n // check we have cells selected\n if (!selectedCells.size) return\n e.preventDefault()\n\n // find selected cells elements\n const selectedCellElements = Array.from(selectedCells).map((cellId) =>\n document.getElementById(cellId),\n )\n\n // check the cell is editable from the classnames\n const isEditable = (cell: HTMLElement | null) => cell?.classList.contains('editable')\n\n // filter out non-editable cells\n const editableCells = selectedCellElements.filter(isEditable)\n if (editableCells.length === 0) {\n toast.warn('No editable cells selected to clear')\n return\n }\n // clear the selected cells\n handleClear(editableCells.map((cell) => cell?.id).filter(Boolean) as CellId[])\n }\n }\n\n document.addEventListener('keydown', onKeyDown)\n return () => document.removeEventListener('keydown', onKeyDown)\n }, [canUndo, canRedo, handleUndo, handleRedo, selectedCells, handleClear])\n\n return <CellEditingContext.Provider value={value}>{children}</CellEditingContext.Provider>\n}\n"],"names":["CellEditingProvider","children","editingCellId","setEditingCellId","useState","isEditing","useCallback","id","history","useHistory","pushHistory","undoHistory","redoHistory","canUndo","canRedo","selectedCells","useSelectionCellsContext","updateOverviewEntities","inheritFromParent","useUpdateTableData","attribFields","getEntityById","useProjectTableContext","handleUpdateEntities","entities","pushToHistory","validateUpdateEntities","error","toast","handleUndo","entitiesToUndo","entitiesToInherit","callbacks","callback","handleRedo","entitiesToRedo","handleClear","cells","entityUpdates","entityInheriting","cellId","colId","rowId","parseCellId","entity","fieldName","isAttrib","defaultValue","attribField","f","existingInherit","e","getTypeDefaultValue","update","value","useMemo","useEffect","onKeyDown","target","ctrlKey","selectedCellElements","isEditable","cell","editableCells","jsx","CellEditingContext"],"mappings":"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"}
1
+ {"version":3,"file":"CellEditingProvider.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/CellEditingProvider.tsx"],"sourcesContent":["import { ReactNode, useCallback, useEffect, useMemo, useState } from 'react'\nimport { CellId, getTypeDefaultValue, parseCellId } from '../utils'\nimport useHistory from '../hooks/useHistory'\nimport { useSelectionCellsContext } from './SelectionCellsContext'\nimport useUpdateTableData, {\n EntityUpdate,\n InheritFromParentEntity,\n UpdateTableEntities,\n} from '../hooks/useUpdateTableData'\nimport { useProjectTableContext } from './ProjectTableContext'\nimport validateUpdateEntities from '../utils/validateUpdateEntities'\nimport { toast } from 'react-toastify'\nimport { CellEditingContext } from './CellEditingContext'\n\nexport const CellEditingProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [editingCellId, 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 { selectedCells } = useSelectionCellsContext()\n const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateTableData({\n pushHistory,\n })\n const { attribFields, getEntityById } = 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 // Handle clearing cells\n const handleClear = useCallback(\n async (cells: CellId[]) => {\n // we explicity update the value of the cells to their default values\n const entityUpdates: EntityUpdate[] = []\n // of if they are inheritable, we inherit from the parent entity\n const entityInheriting: InheritFromParentEntity[] = []\n\n for (const cellId of cells) {\n const { colId, rowId } = parseCellId(cellId) || {}\n if (!colId || !rowId) {\n console.warn(`Invalid cellId: ${cellId}`)\n continue\n }\n\n // get the entity from the rowId\n const entity = getEntityById(rowId)\n\n if (!entity) return\n\n // get the field name and check if it is an attribute\n const fieldName = colId.replace('attrib_', '')\n const isAttrib = colId.startsWith('attrib_')\n\n if (!fieldName) {\n console.warn(`Invalid column ID: ${colId}`)\n continue\n }\n\n let defaultValue: any = null\n if (isAttrib) {\n // find default value for the attribute\n const attribField = attribFields.find((f) => f.name === fieldName)\n if (!attribField) {\n console.warn(`Attribute field not found: ${fieldName}`)\n continue\n }\n // check if the attribute is inheritable\n if (attribField.data.inherit) {\n // inherit from parent entity\n // check if this entity has already been added to the inheriting list\n const existingInherit = entityInheriting.find((e) => e.entityId === entity.entityId)\n if (existingInherit) {\n // add the attrib to the existing entity\n existingInherit.attribs.push(fieldName)\n } else {\n // add a new entity to the inheriting list\n entityInheriting.push({\n entityId: entity.entityId,\n attribs: [fieldName],\n entityType: entity.entityType,\n ownAttrib: entity.ownAttrib || [],\n rowId: rowId,\n folderId:\n entity.entityType === 'folder'\n ? entity.parentId\n : entity.entityType === 'task'\n ? entity.folderId\n : undefined,\n })\n }\n continue\n } else {\n // set explicit default value\n defaultValue = attribField.data.default || getTypeDefaultValue(attribField.data.type)\n }\n } else if (fieldName === 'assignees') {\n // for assignees, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else if (fieldName === 'tags') {\n // for tags, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else {\n // we ignore other fields\n console.warn(`Field not editable: ${fieldName}`)\n continue\n }\n\n // create the entity update\n const update: EntityUpdate = {\n id: rowId,\n rowId: rowId,\n field: fieldName,\n value: defaultValue,\n isAttrib,\n type: entity.entityType,\n }\n\n entityUpdates.push(update)\n }\n\n // if we have updates, call the updateEntities function\n if (entityUpdates.length > 0) {\n try {\n await handleUpdateEntities(entityUpdates, true)\n } catch (error) {\n toast.error('Failed to clear selected cells')\n console.error('Error clearing selected cells:', error)\n }\n }\n\n // if we have inheritable attributes, call inheritFromParent\n if (entityInheriting.length > 0) {\n try {\n await inheritFromParent(entityInheriting, true)\n } catch (error) {\n toast.error('Failed to inherit parent values for cleared cells')\n console.error('Error clearing inherited cells:', error)\n }\n }\n\n // if nothing was done, warn the user\n if (entityUpdates.length === 0 && entityInheriting.length === 0) {\n toast.warn('No valid cells selected to clear')\n }\n },\n [attribFields, updateOverviewEntities],\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 shortcuts\n // undo - ctrl + z\n // redo - ctrl + y or ctrl + shift + z\n // clear - backspace or delete\n useEffect(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n if (\n target.tagName === 'INPUT' ||\n target.tagName === 'TEXTAREA' ||\n target.isContentEditable ||\n target.getAttribute('role') === 'textbox' ||\n target.tagName === 'LI'\n ) {\n return\n }\n\n const isMac =\n typeof navigator !== 'undefined' &&\n // @ts-expect-error\n ((navigator.userAgentData &&\n // @ts-expect-error\n navigator.userAgentData.platform.toUpperCase().includes('MAC')) ||\n navigator.userAgent.toUpperCase().includes('MAC'))\n const ctrlKey = isMac ? e.metaKey : e.ctrlKey\n\n // undo\n if (ctrlKey && e.key === 'z') {\n e.preventDefault()\n if (canUndo) handleUndo()\n }\n // redo\n if (\n (ctrlKey && e.key === 'y') ||\n (ctrlKey && e.shiftKey && e.key === 'z') ||\n (ctrlKey && e.key === 'Z')\n ) {\n e.preventDefault()\n if (canRedo) handleRedo()\n }\n // clear\n if ((e.key === 'Backspace' && !(e.ctrlKey || e.metaKey)) || e.key === 'Delete') {\n // check we have cells selected\n if (!selectedCells.size) return\n e.preventDefault()\n\n // find selected cells elements\n const selectedCellElements = Array.from(selectedCells).map((cellId) =>\n document.getElementById(cellId),\n )\n\n // check the cell is editable from the classnames\n const isEditable = (cell: HTMLElement | null) => cell?.classList.contains('editable')\n\n // filter out non-editable cells\n const editableCells = selectedCellElements.filter(isEditable)\n if (editableCells.length === 0) {\n toast.warn('No editable cells selected to clear')\n return\n }\n // clear the selected cells\n handleClear(editableCells.map((cell) => cell?.id).filter(Boolean) as CellId[])\n }\n }\n\n document.addEventListener('keydown', onKeyDown)\n return () => document.removeEventListener('keydown', onKeyDown)\n }, [canUndo, canRedo, handleUndo, handleRedo, selectedCells, handleClear])\n\n return <CellEditingContext.Provider value={value}>{children}</CellEditingContext.Provider>\n}\n"],"names":["CellEditingProvider","children","editingCellId","setEditingCellId","useState","isEditing","useCallback","id","history","useHistory","pushHistory","undoHistory","redoHistory","canUndo","canRedo","selectedCells","useSelectionCellsContext","updateOverviewEntities","inheritFromParent","useUpdateTableData","attribFields","getEntityById","useProjectTableContext","handleUpdateEntities","entities","pushToHistory","validateUpdateEntities","error","toast","handleUndo","entitiesToUndo","entitiesToInherit","callbacks","callback","handleRedo","entitiesToRedo","handleClear","cells","entityUpdates","entityInheriting","cellId","colId","rowId","parseCellId","entity","fieldName","isAttrib","defaultValue","attribField","f","existingInherit","e","getTypeDefaultValue","update","value","useMemo","useEffect","onKeyDown","target","ctrlKey","selectedCellElements","isEditable","cell","editableCells","jsx","CellEditingContext"],"mappings":"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"}
@@ -64,6 +64,7 @@ import "../../../api/queries/activities/getActivities.es.js";
64
64
  import "../../../api/queries/activities/updateActivities.es.js";
65
65
  import "../../../api/queries/activities/updateReaction.es.js";
66
66
  import "../../../api/queries/activities/getMentions.es.js";
67
+ import "../../../api/queries/activities/getCategories.es.js";
67
68
  import "../../../api/queries/addons/getAddons.es.js";
68
69
  import "../../../api/queries/addons/updateAddons.es.js";
69
70
  import "../../../api/queries/attributes/getAttributes.es.js";
@@ -146,12 +147,14 @@ import "react-router-dom";
146
147
  import "../../Feed/components/ActivityStatus/ActivityStatus.es.js";
147
148
  import "../../Feed/components/ActivityHeader/ActivityHeader.styled.es.js";
148
149
  import "../../Feed/components/ActivityDate.es.js";
150
+ import "../../Feed/components/ActivityCategorySelect/CategoryTag.es.js";
149
151
  import "../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.es.js";
150
152
  import "../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.es.js";
151
153
  import "../../Feed/components/ActivityVersions/ActivityVersions.styled.es.js";
152
154
  import "../../Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
153
155
  import "../../Feed/Feed.styled.es.js";
154
156
  import "date-fns";
157
+ import "../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js";
155
158
  import "../ProjectTreeTable.es.js";
156
159
  import { CellEditingContext as z } from "./CellEditingContext.es.js";
157
160
  import S from "../hooks/useHistory.es.js";
@@ -216,10 +219,14 @@ import "../../../components/Chips/Chips.es.js";
216
219
  import "../../../components/LinksManager/LinksManager.styled.es.js";
217
220
  import "../../EntityPickerDialog/EntityPickerDialog.es.js";
218
221
  import "../../../components/StyledLink/StyledLink.es.js";
222
+ import "../../../components/ShareOptionIcon/ShareOptionIcon.es.js";
223
+ import "../../../components/AccessUser/AccessUser.es.js";
224
+ import "../../../../../node_modules/match-sorter/dist/match-sorter.esm.es.js";
225
+ import "../../../components/AccessSearchInput/AccessSearchInput.styled.es.js";
219
226
  import "../../../components/LinksManager/CellEditingDialog.es.js";
220
227
  import "../ProjectTreeTable.styled.es.js";
221
228
  import "../widgets/LoadMoreWidget.es.js";
222
- const te = ({ children: F }) => {
229
+ const ne = ({ children: F }) => {
223
230
  const [d, D] = B(null), T = w((i) => i === d, [d]), E = S(), { pushHistory: U, undo: K, redo: N, canUndo: k, canRedo: A } = E, { selectedCells: b } = V(), { updateEntities: v, inheritFromParent: l } = O({
224
231
  pushHistory: U
225
232
  }), { attribFields: f, getEntityById: P } = W(), c = w(
@@ -388,6 +395,6 @@ const te = ({ children: F }) => {
388
395
  }, [k, A, u, y, b, x]), /* @__PURE__ */ R.jsx(z.Provider, { value: _, children: F });
389
396
  };
390
397
  export {
391
- te as CellEditingProvider
398
+ ne as CellEditingProvider
392
399
  };
393
400
  //# sourceMappingURL=CellEditingProvider.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CellEditingProvider.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/CellEditingProvider.tsx"],"sourcesContent":["import { ReactNode, useCallback, useEffect, useMemo, useState } from 'react'\nimport { CellId, getTypeDefaultValue, parseCellId } from '../utils'\nimport useHistory from '../hooks/useHistory'\nimport { useSelectionCellsContext } from './SelectionCellsContext'\nimport useUpdateTableData, {\n EntityUpdate,\n InheritFromParentEntity,\n UpdateTableEntities,\n} from '../hooks/useUpdateTableData'\nimport { useProjectTableContext } from './ProjectTableContext'\nimport validateUpdateEntities from '../utils/validateUpdateEntities'\nimport { toast } from 'react-toastify'\nimport { CellEditingContext } from './CellEditingContext'\n\nexport const CellEditingProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [editingCellId, 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 { selectedCells } = useSelectionCellsContext()\n const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateTableData({\n pushHistory,\n })\n const { attribFields, getEntityById } = 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 // Handle clearing cells\n const handleClear = useCallback(\n async (cells: CellId[]) => {\n // we explicity update the value of the cells to their default values\n const entityUpdates: EntityUpdate[] = []\n // of if they are inheritable, we inherit from the parent entity\n const entityInheriting: InheritFromParentEntity[] = []\n\n for (const cellId of cells) {\n const { colId, rowId } = parseCellId(cellId) || {}\n if (!colId || !rowId) {\n console.warn(`Invalid cellId: ${cellId}`)\n continue\n }\n\n // get the entity from the rowId\n const entity = getEntityById(rowId)\n\n if (!entity) return\n\n // get the field name and check if it is an attribute\n const fieldName = colId.replace('attrib_', '')\n const isAttrib = colId.startsWith('attrib_')\n\n if (!fieldName) {\n console.warn(`Invalid column ID: ${colId}`)\n continue\n }\n\n let defaultValue: any = null\n if (isAttrib) {\n // find default value for the attribute\n const attribField = attribFields.find((f) => f.name === fieldName)\n if (!attribField) {\n console.warn(`Attribute field not found: ${fieldName}`)\n continue\n }\n // check if the attribute is inheritable\n if (attribField.data.inherit) {\n // inherit from parent entity\n // check if this entity has already been added to the inheriting list\n const existingInherit = entityInheriting.find((e) => e.entityId === entity.entityId)\n if (existingInherit) {\n // add the attrib to the existing entity\n existingInherit.attribs.push(fieldName)\n } else {\n // add a new entity to the inheriting list\n entityInheriting.push({\n entityId: entity.entityId,\n attribs: [fieldName],\n entityType: entity.entityType,\n ownAttrib: entity.ownAttrib || [],\n rowId: rowId,\n folderId:\n entity.entityType === 'folder'\n ? entity.parentId\n : entity.entityType === 'task'\n ? entity.folderId\n : undefined,\n })\n }\n continue\n } else {\n // set explicit default value\n defaultValue = attribField.data.default || getTypeDefaultValue(attribField.data.type)\n }\n } else if (fieldName === 'assignees') {\n // for assignees, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else if (fieldName === 'tags') {\n // for tags, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else {\n // we ignore other fields\n console.warn(`Field not editable: ${fieldName}`)\n continue\n }\n\n // create the entity update\n const update: EntityUpdate = {\n id: rowId,\n rowId: rowId,\n field: fieldName,\n value: defaultValue,\n isAttrib,\n type: entity.entityType,\n }\n\n entityUpdates.push(update)\n }\n\n // if we have updates, call the updateEntities function\n if (entityUpdates.length > 0) {\n try {\n await handleUpdateEntities(entityUpdates, true)\n } catch (error) {\n toast.error('Failed to clear selected cells')\n console.error('Error clearing selected cells:', error)\n }\n }\n\n // if we have inheritable attributes, call inheritFromParent\n if (entityInheriting.length > 0) {\n try {\n await inheritFromParent(entityInheriting, true)\n } catch (error) {\n toast.error('Failed to inherit parent values for cleared cells')\n console.error('Error clearing inherited cells:', error)\n }\n }\n\n // if nothing was done, warn the user\n if (entityUpdates.length === 0 && entityInheriting.length === 0) {\n toast.warn('No valid cells selected to clear')\n }\n },\n [attribFields, updateOverviewEntities],\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 shortcuts\n // undo - ctrl + z\n // redo - ctrl + y or ctrl + shift + z\n // clear - backspace or delete\n useEffect(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n if (\n target.tagName === 'INPUT' ||\n target.tagName === 'TEXTAREA' ||\n target.isContentEditable ||\n target.getAttribute('role') === 'textbox' ||\n target.tagName === 'LI'\n ) {\n return\n }\n\n const isMac =\n typeof navigator !== 'undefined' &&\n // @ts-expect-error\n ((navigator.userAgentData &&\n // @ts-expect-error\n navigator.userAgentData.platform.toUpperCase().includes('MAC')) ||\n navigator.userAgent.toUpperCase().includes('MAC'))\n const ctrlKey = isMac ? e.metaKey : e.ctrlKey\n\n // undo\n if (ctrlKey && e.key === 'z') {\n e.preventDefault()\n if (canUndo) handleUndo()\n }\n // redo\n if (\n (ctrlKey && e.key === 'y') ||\n (ctrlKey && e.shiftKey && e.key === 'z') ||\n (ctrlKey && e.key === 'Z')\n ) {\n e.preventDefault()\n if (canRedo) handleRedo()\n }\n // clear\n if ((e.key === 'Backspace' && !(e.ctrlKey || e.metaKey)) || e.key === 'Delete') {\n // check we have cells selected\n if (!selectedCells.size) return\n e.preventDefault()\n\n // find selected cells elements\n const selectedCellElements = Array.from(selectedCells).map((cellId) =>\n document.getElementById(cellId),\n )\n\n // check the cell is editable from the classnames\n const isEditable = (cell: HTMLElement | null) => cell?.classList.contains('editable')\n\n // filter out non-editable cells\n const editableCells = selectedCellElements.filter(isEditable)\n if (editableCells.length === 0) {\n toast.warn('No editable cells selected to clear')\n return\n }\n // clear the selected cells\n handleClear(editableCells.map((cell) => cell?.id).filter(Boolean) as CellId[])\n }\n }\n\n document.addEventListener('keydown', onKeyDown)\n return () => document.removeEventListener('keydown', onKeyDown)\n }, [canUndo, canRedo, handleUndo, handleRedo, selectedCells, handleClear])\n\n return <CellEditingContext.Provider value={value}>{children}</CellEditingContext.Provider>\n}\n"],"names":["CellEditingProvider","children","editingCellId","setEditingCellId","useState","isEditing","useCallback","id","history","useHistory","pushHistory","undoHistory","redoHistory","canUndo","canRedo","selectedCells","useSelectionCellsContext","updateOverviewEntities","inheritFromParent","useUpdateTableData","attribFields","getEntityById","useProjectTableContext","handleUpdateEntities","entities","pushToHistory","validateUpdateEntities","error","toast","handleUndo","entitiesToUndo","entitiesToInherit","callbacks","callback","handleRedo","entitiesToRedo","handleClear","cells","entityUpdates","entityInheriting","cellId","colId","rowId","parseCellId","entity","fieldName","isAttrib","defaultValue","attribField","f","existingInherit","e","getTypeDefaultValue","update","value","useMemo","useEffect","onKeyDown","target","ctrlKey","selectedCellElements","isEditable","cell","editableCells","jsx","CellEditingContext"],"mappings":"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"}
1
+ {"version":3,"file":"CellEditingProvider.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/CellEditingProvider.tsx"],"sourcesContent":["import { ReactNode, useCallback, useEffect, useMemo, useState } from 'react'\nimport { CellId, getTypeDefaultValue, parseCellId } from '../utils'\nimport useHistory from '../hooks/useHistory'\nimport { useSelectionCellsContext } from './SelectionCellsContext'\nimport useUpdateTableData, {\n EntityUpdate,\n InheritFromParentEntity,\n UpdateTableEntities,\n} from '../hooks/useUpdateTableData'\nimport { useProjectTableContext } from './ProjectTableContext'\nimport validateUpdateEntities from '../utils/validateUpdateEntities'\nimport { toast } from 'react-toastify'\nimport { CellEditingContext } from './CellEditingContext'\n\nexport const CellEditingProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [editingCellId, 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 { selectedCells } = useSelectionCellsContext()\n const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateTableData({\n pushHistory,\n })\n const { attribFields, getEntityById } = 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 // Handle clearing cells\n const handleClear = useCallback(\n async (cells: CellId[]) => {\n // we explicity update the value of the cells to their default values\n const entityUpdates: EntityUpdate[] = []\n // of if they are inheritable, we inherit from the parent entity\n const entityInheriting: InheritFromParentEntity[] = []\n\n for (const cellId of cells) {\n const { colId, rowId } = parseCellId(cellId) || {}\n if (!colId || !rowId) {\n console.warn(`Invalid cellId: ${cellId}`)\n continue\n }\n\n // get the entity from the rowId\n const entity = getEntityById(rowId)\n\n if (!entity) return\n\n // get the field name and check if it is an attribute\n const fieldName = colId.replace('attrib_', '')\n const isAttrib = colId.startsWith('attrib_')\n\n if (!fieldName) {\n console.warn(`Invalid column ID: ${colId}`)\n continue\n }\n\n let defaultValue: any = null\n if (isAttrib) {\n // find default value for the attribute\n const attribField = attribFields.find((f) => f.name === fieldName)\n if (!attribField) {\n console.warn(`Attribute field not found: ${fieldName}`)\n continue\n }\n // check if the attribute is inheritable\n if (attribField.data.inherit) {\n // inherit from parent entity\n // check if this entity has already been added to the inheriting list\n const existingInherit = entityInheriting.find((e) => e.entityId === entity.entityId)\n if (existingInherit) {\n // add the attrib to the existing entity\n existingInherit.attribs.push(fieldName)\n } else {\n // add a new entity to the inheriting list\n entityInheriting.push({\n entityId: entity.entityId,\n attribs: [fieldName],\n entityType: entity.entityType,\n ownAttrib: entity.ownAttrib || [],\n rowId: rowId,\n folderId:\n entity.entityType === 'folder'\n ? entity.parentId\n : entity.entityType === 'task'\n ? entity.folderId\n : undefined,\n })\n }\n continue\n } else {\n // set explicit default value\n defaultValue = attribField.data.default || getTypeDefaultValue(attribField.data.type)\n }\n } else if (fieldName === 'assignees') {\n // for assignees, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else if (fieldName === 'tags') {\n // for tags, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else {\n // we ignore other fields\n console.warn(`Field not editable: ${fieldName}`)\n continue\n }\n\n // create the entity update\n const update: EntityUpdate = {\n id: rowId,\n rowId: rowId,\n field: fieldName,\n value: defaultValue,\n isAttrib,\n type: entity.entityType,\n }\n\n entityUpdates.push(update)\n }\n\n // if we have updates, call the updateEntities function\n if (entityUpdates.length > 0) {\n try {\n await handleUpdateEntities(entityUpdates, true)\n } catch (error) {\n toast.error('Failed to clear selected cells')\n console.error('Error clearing selected cells:', error)\n }\n }\n\n // if we have inheritable attributes, call inheritFromParent\n if (entityInheriting.length > 0) {\n try {\n await inheritFromParent(entityInheriting, true)\n } catch (error) {\n toast.error('Failed to inherit parent values for cleared cells')\n console.error('Error clearing inherited cells:', error)\n }\n }\n\n // if nothing was done, warn the user\n if (entityUpdates.length === 0 && entityInheriting.length === 0) {\n toast.warn('No valid cells selected to clear')\n }\n },\n [attribFields, updateOverviewEntities],\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 shortcuts\n // undo - ctrl + z\n // redo - ctrl + y or ctrl + shift + z\n // clear - backspace or delete\n useEffect(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n if (\n target.tagName === 'INPUT' ||\n target.tagName === 'TEXTAREA' ||\n target.isContentEditable ||\n target.getAttribute('role') === 'textbox' ||\n target.tagName === 'LI'\n ) {\n return\n }\n\n const isMac =\n typeof navigator !== 'undefined' &&\n // @ts-expect-error\n ((navigator.userAgentData &&\n // @ts-expect-error\n navigator.userAgentData.platform.toUpperCase().includes('MAC')) ||\n navigator.userAgent.toUpperCase().includes('MAC'))\n const ctrlKey = isMac ? e.metaKey : e.ctrlKey\n\n // undo\n if (ctrlKey && e.key === 'z') {\n e.preventDefault()\n if (canUndo) handleUndo()\n }\n // redo\n if (\n (ctrlKey && e.key === 'y') ||\n (ctrlKey && e.shiftKey && e.key === 'z') ||\n (ctrlKey && e.key === 'Z')\n ) {\n e.preventDefault()\n if (canRedo) handleRedo()\n }\n // clear\n if ((e.key === 'Backspace' && !(e.ctrlKey || e.metaKey)) || e.key === 'Delete') {\n // check we have cells selected\n if (!selectedCells.size) return\n e.preventDefault()\n\n // find selected cells elements\n const selectedCellElements = Array.from(selectedCells).map((cellId) =>\n document.getElementById(cellId),\n )\n\n // check the cell is editable from the classnames\n const isEditable = (cell: HTMLElement | null) => cell?.classList.contains('editable')\n\n // filter out non-editable cells\n const editableCells = selectedCellElements.filter(isEditable)\n if (editableCells.length === 0) {\n toast.warn('No editable cells selected to clear')\n return\n }\n // clear the selected cells\n handleClear(editableCells.map((cell) => cell?.id).filter(Boolean) as CellId[])\n }\n }\n\n document.addEventListener('keydown', onKeyDown)\n return () => document.removeEventListener('keydown', onKeyDown)\n }, [canUndo, canRedo, handleUndo, handleRedo, selectedCells, handleClear])\n\n return <CellEditingContext.Provider value={value}>{children}</CellEditingContext.Provider>\n}\n"],"names":["CellEditingProvider","children","editingCellId","setEditingCellId","useState","isEditing","useCallback","id","history","useHistory","pushHistory","undoHistory","redoHistory","canUndo","canRedo","selectedCells","useSelectionCellsContext","updateOverviewEntities","inheritFromParent","useUpdateTableData","attribFields","getEntityById","useProjectTableContext","handleUpdateEntities","entities","pushToHistory","validateUpdateEntities","error","toast","handleUndo","entitiesToUndo","entitiesToInherit","callbacks","callback","handleRedo","entitiesToRedo","handleClear","cells","entityUpdates","entityInheriting","cellId","colId","rowId","parseCellId","entity","fieldName","isAttrib","defaultValue","attribField","f","existingInherit","e","getTypeDefaultValue","update","value","useMemo","useEffect","onKeyDown","target","ctrlKey","selectedCellElements","isEditable","cell","editableCells","jsx","CellEditingContext"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnSettingsContext.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ColumnSettingsContext.tsx"],"sourcesContent":["import React, { createContext, useContext } from 'react'\nimport {\n ColumnOrderState,\n ColumnPinningState,\n OnChangeFn,\n VisibilityState,\n ColumnSizingState,\n SortingState,\n} from '@tanstack/react-table'\nimport { GroupByConfig } from '../components/GroupSettingsFallback'\n\nexport interface TableGroupBy {\n desc: boolean\n id: string\n}\n\nexport type ColumnsConfig = {\n columnVisibility: VisibilityState\n columnOrder: ColumnOrderState\n columnPinning: ColumnPinningState\n columnSizing: ColumnSizingState\n sorting?: SortingState\n groupBy?: TableGroupBy\n groupByConfig?: {\n showEmpty?: boolean\n }\n}\n\nexport interface ColumnSettingsContextType {\n // All column IDs reference\n setAllColumns: (allColumnIds: string[]) => void\n\n // Column Visibility\n columnVisibility: VisibilityState\n setColumnVisibility: (columnVisibility: VisibilityState) => void\n updateColumnVisibility: (columnVisibility: VisibilityState) => void\n columnVisibilityOnChange: OnChangeFn<VisibilityState>\n\n // Column Pinning\n columnPinning: ColumnPinningState\n setColumnPinning: (columnPinning: ColumnPinningState) => void\n updateColumnPinning: (columnPinning: ColumnPinningState) => void\n columnPinningOnChange: OnChangeFn<ColumnPinningState>\n\n // Column Order\n columnOrder: ColumnOrderState\n setColumnOrder: (columnOrder: ColumnOrderState) => void\n updateColumnOrder: (columnOrder: ColumnOrderState) => void\n columnOrderOnChange: OnChangeFn<ColumnOrderState>\n\n // Column Sizing\n columnSizing: ColumnSizingState\n setColumnSizing: (columnSizing: ColumnSizingState) => void\n columnSizingOnChange: OnChangeFn<ColumnSizingState>\n\n // Sorting\n sorting: SortingState\n updateSorting: (sorting: SortingState) => void\n sortingOnChange: OnChangeFn<SortingState>\n\n // groupBy\n groupBy?: TableGroupBy\n updateGroupBy: (groupBy: TableGroupBy | undefined) => void\n groupByConfig: GroupByConfig\n updateGroupByConfig: (config: GroupByConfig) => void\n\n // Global change\n setColumnsConfig: (config: ColumnsConfig) => void\n}\n\nexport const ColumnSettingsContext = createContext<ColumnSettingsContextType | undefined>(undefined)\n\nexport const useColumnSettingsContext = (): ColumnSettingsContextType => {\n const context = useContext(ColumnSettingsContext)\n if (!context) {\n throw new Error('useColumnSettingsContext must be used within a ColumnSettingsProvider')\n }\n return context\n}\n"],"names":["ColumnSettingsContext","createContext","useColumnSettingsContext","context","useContext"],"mappings":"yGAsEaA,EAAwBC,gBAAqD,MAAS,EAEtFC,EAA2B,IAAiC,CACjE,MAAAC,EAAUC,aAAWJ,CAAqB,EAChD,GAAI,CAACG,EACG,MAAA,IAAI,MAAM,uEAAuE,EAElF,OAAAA,CACT"}
1
+ {"version":3,"file":"ColumnSettingsContext.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ColumnSettingsContext.tsx"],"sourcesContent":["import React, { createContext, useContext } from 'react'\nimport {\n ColumnOrderState,\n ColumnPinningState,\n OnChangeFn,\n VisibilityState,\n ColumnSizingState,\n SortingState,\n} from '@tanstack/react-table'\nimport { GroupByConfig } from '../components/GroupSettingsFallback'\n\nexport interface TableGroupBy {\n desc: boolean\n id: string\n}\n\nexport type ColumnsConfig = {\n columnVisibility: VisibilityState\n columnOrder: ColumnOrderState\n columnPinning: ColumnPinningState\n columnSizing: ColumnSizingState\n sorting?: SortingState\n groupBy?: TableGroupBy\n groupByConfig?: {\n showEmpty?: boolean\n }\n rowHeight?: number\n}\n\nexport interface ColumnSettingsContextType {\n // All column IDs reference\n setAllColumns: (allColumnIds: string[]) => void\n\n // Column Visibility\n columnVisibility: VisibilityState\n setColumnVisibility: (columnVisibility: VisibilityState) => void\n updateColumnVisibility: (columnVisibility: VisibilityState) => void\n columnVisibilityOnChange: OnChangeFn<VisibilityState>\n\n // Column Pinning\n columnPinning: ColumnPinningState\n setColumnPinning: (columnPinning: ColumnPinningState) => void\n updateColumnPinning: (columnPinning: ColumnPinningState) => void\n columnPinningOnChange: OnChangeFn<ColumnPinningState>\n\n // Column Order\n columnOrder: ColumnOrderState\n setColumnOrder: (columnOrder: ColumnOrderState) => void\n updateColumnOrder: (columnOrder: ColumnOrderState) => void\n columnOrderOnChange: OnChangeFn<ColumnOrderState>\n\n // Column Sizing\n columnSizing: ColumnSizingState\n setColumnSizing: (columnSizing: ColumnSizingState) => void\n columnSizingOnChange: OnChangeFn<ColumnSizingState>\n\n // Sorting\n sorting: SortingState\n updateSorting: (sorting: SortingState) => void\n sortingOnChange: OnChangeFn<SortingState>\n\n // groupBy\n groupBy?: TableGroupBy\n updateGroupBy: (groupBy: TableGroupBy | undefined) => void\n groupByConfig: GroupByConfig\n updateGroupByConfig: (config: GroupByConfig) => void\n\n // Row height\n rowHeight?: number\n updateRowHeight: (rowHeight: number) => void\n updateRowHeightWithPersistence: (rowHeight: number) => void\n\n // Global change\n setColumnsConfig: (config: ColumnsConfig) => void\n}\n\nexport const ColumnSettingsContext = createContext<ColumnSettingsContextType | undefined>(undefined)\n\nexport const useColumnSettingsContext = (): ColumnSettingsContextType => {\n const context = useContext(ColumnSettingsContext)\n if (!context) {\n throw new Error('useColumnSettingsContext must be used within a ColumnSettingsProvider')\n }\n return context\n}\n"],"names":["ColumnSettingsContext","createContext","useColumnSettingsContext","context","useContext"],"mappings":"yGA4EaA,EAAwBC,gBAAqD,MAAS,EAEtFC,EAA2B,IAAiC,CACjE,MAAAC,EAAUC,aAAWJ,CAAqB,EAChD,GAAI,CAACG,EACG,MAAA,IAAI,MAAM,uEAAuE,EAElF,OAAAA,CACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnSettingsContext.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ColumnSettingsContext.tsx"],"sourcesContent":["import React, { createContext, useContext } from 'react'\nimport {\n ColumnOrderState,\n ColumnPinningState,\n OnChangeFn,\n VisibilityState,\n ColumnSizingState,\n SortingState,\n} from '@tanstack/react-table'\nimport { GroupByConfig } from '../components/GroupSettingsFallback'\n\nexport interface TableGroupBy {\n desc: boolean\n id: string\n}\n\nexport type ColumnsConfig = {\n columnVisibility: VisibilityState\n columnOrder: ColumnOrderState\n columnPinning: ColumnPinningState\n columnSizing: ColumnSizingState\n sorting?: SortingState\n groupBy?: TableGroupBy\n groupByConfig?: {\n showEmpty?: boolean\n }\n}\n\nexport interface ColumnSettingsContextType {\n // All column IDs reference\n setAllColumns: (allColumnIds: string[]) => void\n\n // Column Visibility\n columnVisibility: VisibilityState\n setColumnVisibility: (columnVisibility: VisibilityState) => void\n updateColumnVisibility: (columnVisibility: VisibilityState) => void\n columnVisibilityOnChange: OnChangeFn<VisibilityState>\n\n // Column Pinning\n columnPinning: ColumnPinningState\n setColumnPinning: (columnPinning: ColumnPinningState) => void\n updateColumnPinning: (columnPinning: ColumnPinningState) => void\n columnPinningOnChange: OnChangeFn<ColumnPinningState>\n\n // Column Order\n columnOrder: ColumnOrderState\n setColumnOrder: (columnOrder: ColumnOrderState) => void\n updateColumnOrder: (columnOrder: ColumnOrderState) => void\n columnOrderOnChange: OnChangeFn<ColumnOrderState>\n\n // Column Sizing\n columnSizing: ColumnSizingState\n setColumnSizing: (columnSizing: ColumnSizingState) => void\n columnSizingOnChange: OnChangeFn<ColumnSizingState>\n\n // Sorting\n sorting: SortingState\n updateSorting: (sorting: SortingState) => void\n sortingOnChange: OnChangeFn<SortingState>\n\n // groupBy\n groupBy?: TableGroupBy\n updateGroupBy: (groupBy: TableGroupBy | undefined) => void\n groupByConfig: GroupByConfig\n updateGroupByConfig: (config: GroupByConfig) => void\n\n // Global change\n setColumnsConfig: (config: ColumnsConfig) => void\n}\n\nexport const ColumnSettingsContext = createContext<ColumnSettingsContextType | undefined>(undefined)\n\nexport const useColumnSettingsContext = (): ColumnSettingsContextType => {\n const context = useContext(ColumnSettingsContext)\n if (!context) {\n throw new Error('useColumnSettingsContext must be used within a ColumnSettingsProvider')\n }\n return context\n}\n"],"names":["ColumnSettingsContext","createContext","useColumnSettingsContext","context","useContext"],"mappings":";AAsEa,MAAAA,IAAwBC,EAAqD,MAAS,GAEtFC,IAA2B,MAAiC;AACjE,QAAAC,IAAUC,EAAWJ,CAAqB;AAChD,MAAI,CAACG;AACG,UAAA,IAAI,MAAM,uEAAuE;AAElF,SAAAA;AACT;"}
1
+ {"version":3,"file":"ColumnSettingsContext.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ColumnSettingsContext.tsx"],"sourcesContent":["import React, { createContext, useContext } from 'react'\nimport {\n ColumnOrderState,\n ColumnPinningState,\n OnChangeFn,\n VisibilityState,\n ColumnSizingState,\n SortingState,\n} from '@tanstack/react-table'\nimport { GroupByConfig } from '../components/GroupSettingsFallback'\n\nexport interface TableGroupBy {\n desc: boolean\n id: string\n}\n\nexport type ColumnsConfig = {\n columnVisibility: VisibilityState\n columnOrder: ColumnOrderState\n columnPinning: ColumnPinningState\n columnSizing: ColumnSizingState\n sorting?: SortingState\n groupBy?: TableGroupBy\n groupByConfig?: {\n showEmpty?: boolean\n }\n rowHeight?: number\n}\n\nexport interface ColumnSettingsContextType {\n // All column IDs reference\n setAllColumns: (allColumnIds: string[]) => void\n\n // Column Visibility\n columnVisibility: VisibilityState\n setColumnVisibility: (columnVisibility: VisibilityState) => void\n updateColumnVisibility: (columnVisibility: VisibilityState) => void\n columnVisibilityOnChange: OnChangeFn<VisibilityState>\n\n // Column Pinning\n columnPinning: ColumnPinningState\n setColumnPinning: (columnPinning: ColumnPinningState) => void\n updateColumnPinning: (columnPinning: ColumnPinningState) => void\n columnPinningOnChange: OnChangeFn<ColumnPinningState>\n\n // Column Order\n columnOrder: ColumnOrderState\n setColumnOrder: (columnOrder: ColumnOrderState) => void\n updateColumnOrder: (columnOrder: ColumnOrderState) => void\n columnOrderOnChange: OnChangeFn<ColumnOrderState>\n\n // Column Sizing\n columnSizing: ColumnSizingState\n setColumnSizing: (columnSizing: ColumnSizingState) => void\n columnSizingOnChange: OnChangeFn<ColumnSizingState>\n\n // Sorting\n sorting: SortingState\n updateSorting: (sorting: SortingState) => void\n sortingOnChange: OnChangeFn<SortingState>\n\n // groupBy\n groupBy?: TableGroupBy\n updateGroupBy: (groupBy: TableGroupBy | undefined) => void\n groupByConfig: GroupByConfig\n updateGroupByConfig: (config: GroupByConfig) => void\n\n // Row height\n rowHeight?: number\n updateRowHeight: (rowHeight: number) => void\n updateRowHeightWithPersistence: (rowHeight: number) => void\n\n // Global change\n setColumnsConfig: (config: ColumnsConfig) => void\n}\n\nexport const ColumnSettingsContext = createContext<ColumnSettingsContextType | undefined>(undefined)\n\nexport const useColumnSettingsContext = (): ColumnSettingsContextType => {\n const context = useContext(ColumnSettingsContext)\n if (!context) {\n throw new Error('useColumnSettingsContext must be used within a ColumnSettingsProvider')\n }\n return context\n}\n"],"names":["ColumnSettingsContext","createContext","useColumnSettingsContext","context","useContext"],"mappings":";AA4Ea,MAAAA,IAAwBC,EAAqD,MAAS,GAEtFC,IAA2B,MAAiC;AACjE,QAAAC,IAAUC,EAAWJ,CAAqB;AAChD,MAAI,CAACG;AACG,UAAA,IAAI,MAAM,uEAAuE;AAElF,SAAAA;AACT;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Y=require("../../../../../_virtual/jsx-runtime.cjs.js"),C=require("react"),m=require("@tanstack/react-table"),Z=require("./SelectionCellsContext.cjs.js"),$=require("../ProjectTreeTable.cjs.js"),nn=require("./ColumnSettingsContext.cjs.js"),en=({children:R,config:T,onChange:B})=>{var z;const O=C.useRef([]),U=n=>{O.current=Array.from(new Set(n))},o=n=>B(n,O.current),s=T,{columnOrder:j=[],columnPinning:q={},columnVisibility:E={},columnSizing:_={},sorting:A=[],groupBy:d,groupByConfig:p={}}=s,S=[...A],i=[...j],t={...q},f=["thumbnail","name","subType","status","tags"];if(f.forEach((n,e)=>{if(!i.includes(n)){const l=f[e-1],u=f[e+1];if(!l||!i.includes(l))i.unshift(n);else{const c=i.indexOf(l);i.splice(c+1,0,n)}u&&(t!=null&&t.left)&&(t!=null&&t.left.includes(u))&&(t.left=[n,...(t==null?void 0:t.left)||[]])}}),d){if(!((z=t.left)!=null&&z.includes("name")))t.left=["name",...(t==null?void 0:t.left)||[]];else{const n=t.left.filter(e=>e!=="name");t.left=["name",...n]}if(i.includes("name")){const n=i.indexOf("name");i.splice(n,1)}i.unshift("name")}i.unshift($.DRAG_HANDLE_COLUMN_ID,Z.ROW_SELECTION_COLUMN_ID);const a={...E};d&&!a.name&&(a.name=!0);const P=n=>{o({...s,columnVisibility:n})},y=n=>{o({...s,columnOrder:n})},b=n=>{o({...s,columnPinning:n})},[D,h]=C.useState(null),w=D||_,g=C.useRef(null),x=n=>{h(n),g.current&&clearTimeout(g.current),g.current=setTimeout(()=>{o({...s,columnSizing:n}),h(null)},500)},L=n=>{const e={...t},l=e.left||[],u=Object.keys(n).filter(r=>n[r]===!1),c=l.filter(r=>!u.includes(r));return{...e,left:c}},N=n=>{const e={...t},l=e.left||[],u=n.filter(c=>l.includes(c));return{...e,left:u}},v=n=>[...i].sort((e,l)=>{var r,I;const u=(r=n.left)!=null&&r.includes(e)?1:0;return((I=n.left)!=null&&I.includes(l)?1:0)-u}),G=n=>{const e=L(n);o({...s,columnVisibility:n,columnPinning:e})},M=n=>{const e=N(n);o({...s,columnOrder:n,columnPinning:e})},W=n=>{const e=v(n);o({...s,columnOrder:e,columnPinning:n})},V=n=>{o({...s,sorting:n})},k=n=>{o({...s,groupBy:n})},H=n=>{o({...s,groupByConfig:{...p,...n}})},F=n=>{const e=m.functionalUpdate(n,a);P(e)},J=n=>{const e=m.functionalUpdate(n,t);b(e)},K=n=>{const e=m.functionalUpdate(n,i);y(e)},Q=n=>{const e=m.functionalUpdate(n,w);x(e)},X=n=>{const e=m.functionalUpdate(n,S);V(e)};return Y.jsxRuntimeExports.jsx(nn.ColumnSettingsContext.Provider,{value:{setAllColumns:U,columnVisibility:a,setColumnVisibility:P,updateColumnVisibility:G,columnVisibilityOnChange:F,columnPinning:t,setColumnPinning:b,updateColumnPinning:W,columnPinningOnChange:J,columnOrder:i,setColumnOrder:y,updateColumnOrder:M,columnOrderOnChange:K,columnSizing:w,setColumnSizing:x,columnSizingOnChange:Q,sorting:S,updateSorting:V,sortingOnChange:X,groupBy:d,updateGroupBy:k,groupByConfig:p,updateGroupByConfig:H,setColumnsConfig:n=>o(n)},children:R})};exports.ColumnSettingsProvider=en;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const an=require("../../../../../_virtual/jsx-runtime.cjs.js"),l=require("react"),f=require("@tanstack/react-table"),fn=require("./SelectionCellsContext.cjs.js"),dn=require("../ProjectTreeTable.cjs.js"),gn=require("./ColumnSettingsContext.cjs.js"),mn=({children:E,config:q,onChange:A})=>{var j;const S=l.useRef([]),[_,R]=l.useState(null),[L,w]=l.useState(null),[v,m]=l.useState(34),P=l.useRef(!1),D=n=>{S.current=Array.from(new Set(n))},o=n=>A(n,S.current),s=q,{columnOrder:N=[],columnPinning:G={},columnVisibility:M={},columnSizing:W={},sorting:k=[],groupBy:C,groupByConfig:y={},rowHeight:d}=s||{},b=l.useRef(!1);l.useEffect(()=>{!b.current&&d!==void 0&&d!==null&&(m(d),b.current=!0)},[d]);const F=L??v,x=[...k],i=[...N],t={...G},O=["thumbnail","name","subType","status","tags"];if(O.forEach((n,e)=>{if(!i.includes(n)){const u=O[e-1],r=O[e+1];if(!u||!i.includes(u))i.unshift(n);else{const c=i.indexOf(u);i.splice(c+1,0,n)}r&&(t!=null&&t.left)&&(t!=null&&t.left.includes(r))&&(t.left=[n,...(t==null?void 0:t.left)||[]])}}),C){if(!((j=t.left)!=null&&j.includes("name")))t.left=["name",...(t==null?void 0:t.left)||[]];else{const n=t.left.filter(e=>e!=="name");t.left=["name",...n]}if(i.includes("name")){const n=i.indexOf("name");i.splice(n,1)}i.unshift("name")}i.unshift(dn.DRAG_HANDLE_COLUMN_ID,fn.ROW_SELECTION_COLUMN_ID);const g={...M};C&&!g.name&&(g.name=!0);const H=n=>{o({...s,columnVisibility:n})},I=n=>{o({...s,columnOrder:n})},T=n=>{o({...s,columnPinning:n})},z=_||W,h=l.useRef(null),p=l.useRef(null),V=n=>{R(n),h.current&&clearTimeout(h.current),h.current=setTimeout(()=>{o({...s,columnSizing:n}),R(null)},500)},J=n=>{const e={...t},u=e.left||[],r=Object.keys(n).filter(a=>n[a]===!1),c=u.filter(a=>!r.includes(a));return{...e,left:c}},K=n=>{const e={...t},u=e.left||[],r=n.filter(c=>u.includes(c));return{...e,left:r}},Q=n=>[...i].sort((e,u)=>{var a,B;const r=(a=n.left)!=null&&a.includes(e)?1:0;return((B=n.left)!=null&&B.includes(u)?1:0)-r}),X=n=>{const e=J(n);o({...s,columnVisibility:n,columnPinning:e})},Y=n=>{const e=K(n);o({...s,columnOrder:n,columnPinning:e})},Z=n=>{const e=Q(n);o({...s,columnOrder:e,columnPinning:n})},U=n=>{o({...s,sorting:n})},$=n=>{o({...s,groupBy:n})},nn=n=>{o({...s,groupByConfig:{...y,...n}})},en=n=>{m(n)},tn=n=>{m(n),P.current=!0,w(n),p.current&&clearTimeout(p.current),p.current=setTimeout(()=>{o({...s,rowHeight:n}),w(null),P.current=!1},200)},on=en,sn=n=>{const e=f.functionalUpdate(n,g);H(e)},un=n=>{const e=f.functionalUpdate(n,t);T(e)},ln=n=>{const e=f.functionalUpdate(n,i);I(e)},rn=n=>{const e=f.functionalUpdate(n,z);V(e)},cn=n=>{const e=f.functionalUpdate(n,x);U(e)};return an.jsxRuntimeExports.jsx(gn.ColumnSettingsContext.Provider,{value:{setAllColumns:D,columnVisibility:g,setColumnVisibility:H,updateColumnVisibility:X,columnVisibilityOnChange:sn,columnPinning:t,setColumnPinning:T,updateColumnPinning:Z,columnPinningOnChange:un,columnOrder:i,setColumnOrder:I,updateColumnOrder:Y,columnOrderOnChange:ln,columnSizing:z,setColumnSizing:V,columnSizingOnChange:rn,sorting:x,updateSorting:U,sortingOnChange:cn,groupBy:C,updateGroupBy:$,groupByConfig:y,updateGroupByConfig:nn,rowHeight:F,updateRowHeight:on,updateRowHeightWithPersistence:tn,setColumnsConfig:n=>o(n)},children:E})};exports.ColumnSettingsProvider=mn;
2
2
  //# sourceMappingURL=ColumnSettingsProvider.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnSettingsProvider.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ColumnSettingsProvider.tsx"],"sourcesContent":["import React, { ReactNode, useState } from 'react'\nimport {\n ColumnOrderState,\n ColumnPinningState,\n functionalUpdate,\n OnChangeFn,\n VisibilityState,\n ColumnSizingState,\n SortingState,\n} from '@tanstack/react-table'\nimport { ROW_SELECTION_COLUMN_ID } from './SelectionCellsContext'\nimport { DRAG_HANDLE_COLUMN_ID } from '../ProjectTreeTable'\nimport { ColumnsConfig, ColumnSettingsContext, TableGroupBy } from './ColumnSettingsContext'\nimport { GroupByConfig } from '../components/GroupSettingsFallback'\n\ninterface ColumnSettingsProviderProps {\n children: ReactNode\n config?: Record<string, any>\n onChange: (config: ColumnsConfig, allColumnIds?: string[]) => void\n}\n\nexport const ColumnSettingsProvider: React.FC<ColumnSettingsProviderProps> = ({\n children,\n config,\n onChange,\n}) => {\n const allColumnsRef = React.useRef<string[]>([])\n const setAllColumns = (allColumnIds: string[]) => {\n allColumnsRef.current = Array.from(new Set(allColumnIds))\n }\n const onChangeWithColumns = (next: ColumnsConfig) => onChange(next, allColumnsRef.current)\n const columnsConfig = config as ColumnsConfig\n const {\n columnOrder: columnOrderInit = [],\n columnPinning: columnPinningInit = {},\n columnVisibility: columnVisibilityInit = {},\n columnSizing: columnsSizingExternal = {},\n sorting: sortingInit = [],\n groupBy,\n groupByConfig = {},\n } = columnsConfig\n\n const sorting = [...sortingInit]\n const columnOrder = [...columnOrderInit]\n const columnPinning = { ...columnPinningInit }\n const defaultOrder = ['thumbnail', 'name', 'subType', 'status', 'tags']\n // for each default column, if it is not in the columnOrder, find the index of the column before it, if none, add to beginning\n defaultOrder.forEach((col, i) => {\n if (!columnOrder.includes(col)) {\n const defaultBefore = defaultOrder[i - 1]\n const columnAfter = defaultOrder[i + 1]\n if (!defaultBefore || !columnOrder.includes(defaultBefore)) {\n // add to beginning\n columnOrder.unshift(col)\n } else {\n // find the index of that column in the columnOrder\n const index = columnOrder.indexOf(defaultBefore)\n // add the item after that column\n columnOrder.splice(index + 1, 0, col)\n }\n if (columnAfter && columnPinning?.left && columnPinning?.left.includes(columnAfter)) {\n // pin the column\n columnPinning.left = [col, ...(columnPinning?.left || [])]\n }\n }\n })\n\n // if we are in grouping mode, always pin the name column\n // and ensure it is first in column order\n if (groupBy) {\n // ensure name column is pinned and first in pinning order\n if (!columnPinning.left?.includes('name')) {\n columnPinning.left = ['name', ...(columnPinning?.left || [])]\n } else {\n // name is already pinned, but ensure it's first\n const filteredPinned = columnPinning.left.filter((col) => col !== 'name')\n columnPinning.left = ['name', ...filteredPinned]\n }\n\n // ensure name is first in column order\n if (columnOrder.includes('name')) {\n // remove name from its current position\n const nameIndex = columnOrder.indexOf('name')\n columnOrder.splice(nameIndex, 1)\n }\n // add name to the beginning\n columnOrder.unshift('name')\n }\n\n // add drag handle and selection columns to the beginning of the column order\n columnOrder.unshift(...[DRAG_HANDLE_COLUMN_ID, ROW_SELECTION_COLUMN_ID])\n\n // VISIBILITY STATE MUTATIONS\n const columnVisibility = { ...columnVisibilityInit }\n // if we are in grouping mode, name column must always be visible\n if (groupBy && !columnVisibility.name) {\n columnVisibility.name = true\n }\n\n // DIRECT STATE UPDATES - no side effects\n const setColumnVisibility = (visibility: VisibilityState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnVisibility: visibility,\n })\n }\n\n const setColumnOrder = (order: ColumnOrderState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: order,\n })\n }\n\n const setColumnPinning = (pinning: ColumnPinningState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnPinning: pinning,\n })\n }\n\n const [internalColumnSizing, setInternalColumnSizing] = useState<ColumnSizingState | null>(null)\n\n // use internalColumnSizing if it exists, otherwise use the external column sizing\n const columnSizing = internalColumnSizing || columnsSizingExternal\n\n const resizingTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n\n const setColumnSizing = (sizing: ColumnSizingState) => {\n setInternalColumnSizing(sizing)\n\n // if there is a timeout already set, clear it\n if (resizingTimeoutRef.current) {\n clearTimeout(resizingTimeoutRef.current)\n }\n // set a timeout that tracks if the column sizing has finished\n resizingTimeoutRef.current = setTimeout(() => {\n // we have finished resizing now!\n // update the external column sizing\n onChangeWithColumns({\n ...columnsConfig,\n columnSizing: sizing,\n })\n // reset the internal column sizing to not be used anymore\n setInternalColumnSizing(null)\n }, 500)\n }\n\n // SIDE EFFECT UTILITIES\n const togglePinningOnVisibilityChange = (visibility: VisibilityState) => {\n // ensure that any columns that are now hidden are removed from the pinning\n const newPinning = { ...columnPinning }\n const pinnedColumns = newPinning.left || []\n const hiddenColumns = Object.keys(visibility).filter((col) => visibility[col] === false)\n const newPinnedColumns = pinnedColumns.filter((col) => !hiddenColumns.includes(col))\n\n return {\n ...newPinning,\n left: newPinnedColumns,\n }\n }\n\n const updatePinningOrderOnOrderChange = (order: ColumnOrderState) => {\n // ensure that the column pinning is in the order of the column order\n const newPinning = { ...columnPinning }\n const pinnedColumns = newPinning.left || []\n const pinnedColumnsOrder = order.filter((col) => pinnedColumns.includes(col))\n\n return {\n ...newPinning,\n left: pinnedColumnsOrder,\n }\n }\n\n const updateOrderOnPinningChange = (pinning: ColumnPinningState) => {\n // we resort the column order based on the pinning\n return [...columnOrder].sort((a, b) => {\n const aPinned = pinning.left?.includes(a) ? 1 : 0\n const bPinned = pinning.left?.includes(b) ? 1 : 0\n return bPinned - aPinned\n })\n }\n\n // UPDATE METHODS WITH SIDE EFFECTS\n const updateColumnVisibility = (visibility: VisibilityState) => {\n const newPinning = togglePinningOnVisibilityChange(visibility)\n onChangeWithColumns({\n ...columnsConfig,\n columnVisibility: visibility,\n columnPinning: newPinning,\n })\n }\n\n const updateColumnOrder = (order: ColumnOrderState) => {\n const newPinning = updatePinningOrderOnOrderChange(order)\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: order,\n columnPinning: newPinning,\n })\n }\n\n const updateColumnPinning = (pinning: ColumnPinningState) => {\n const newOrder = updateOrderOnPinningChange(pinning)\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: newOrder,\n columnPinning: pinning,\n })\n }\n\n const updateSorting = (sortingState: SortingState) => {\n onChangeWithColumns({\n ...columnsConfig,\n sorting: sortingState,\n })\n }\n\n const updateGroupBy = (groupBy: TableGroupBy | undefined) => {\n onChangeWithColumns({\n ...columnsConfig,\n groupBy: groupBy,\n })\n }\n\n const updateGroupByConfig = (config: GroupByConfig) => {\n onChangeWithColumns({\n ...columnsConfig,\n groupByConfig: {\n ...groupByConfig,\n ...config,\n },\n })\n }\n\n // Remove redundant local updater functions in favor of unified updaters with all columns\n\n // ON-CHANGE HANDLERS (TanStack-compatible)\n const columnVisibilityOnChange: OnChangeFn<VisibilityState> = (updater) => {\n const newVisibility = functionalUpdate(updater, columnVisibility)\n setColumnVisibility(newVisibility)\n }\n\n const columnPinningOnChange: OnChangeFn<ColumnPinningState> = (updater) => {\n const newPinning = functionalUpdate(updater, columnPinning)\n setColumnPinning(newPinning)\n }\n\n const columnOrderOnChange: OnChangeFn<ColumnOrderState> = (updater) => {\n const newOrder = functionalUpdate(updater, columnOrder)\n setColumnOrder(newOrder)\n }\n\n const columnSizingOnChange: OnChangeFn<ColumnSizingState> = (updater) => {\n const newSizing = functionalUpdate(updater, columnSizing)\n setColumnSizing(newSizing)\n }\n\n const sortingOnChange: OnChangeFn<SortingState> = (updater) => {\n const newSorting = functionalUpdate(updater, sorting)\n updateSorting(newSorting)\n }\n\n return (\n <ColumnSettingsContext.Provider\n value={{\n // all columns ref\n setAllColumns,\n // column visibility\n columnVisibility,\n setColumnVisibility,\n updateColumnVisibility,\n columnVisibilityOnChange,\n // column pinning\n columnPinning,\n setColumnPinning,\n updateColumnPinning,\n columnPinningOnChange,\n // column order\n columnOrder,\n setColumnOrder,\n updateColumnOrder,\n columnOrderOnChange,\n // column sizing\n columnSizing,\n setColumnSizing,\n columnSizingOnChange,\n // sorting\n sorting,\n updateSorting,\n sortingOnChange,\n // group by\n groupBy,\n updateGroupBy,\n groupByConfig,\n updateGroupByConfig,\n\n // global change\n setColumnsConfig: (config: ColumnsConfig) => onChangeWithColumns(config),\n }}\n >\n {children}\n </ColumnSettingsContext.Provider>\n )\n}\n"],"names":["ColumnSettingsProvider","children","config","onChange","allColumnsRef","React","setAllColumns","allColumnIds","onChangeWithColumns","next","columnsConfig","columnOrderInit","columnPinningInit","columnVisibilityInit","columnsSizingExternal","sortingInit","groupBy","groupByConfig","sorting","columnOrder","columnPinning","defaultOrder","col","i","defaultBefore","columnAfter","index","_a","filteredPinned","nameIndex","DRAG_HANDLE_COLUMN_ID","ROW_SELECTION_COLUMN_ID","columnVisibility","setColumnVisibility","visibility","setColumnOrder","order","setColumnPinning","pinning","internalColumnSizing","setInternalColumnSizing","useState","columnSizing","resizingTimeoutRef","setColumnSizing","sizing","togglePinningOnVisibilityChange","newPinning","pinnedColumns","hiddenColumns","newPinnedColumns","updatePinningOrderOnOrderChange","pinnedColumnsOrder","updateOrderOnPinningChange","a","b","aPinned","_b","updateColumnVisibility","updateColumnOrder","updateColumnPinning","newOrder","updateSorting","sortingState","updateGroupBy","updateGroupByConfig","columnVisibilityOnChange","updater","newVisibility","functionalUpdate","columnPinningOnChange","columnOrderOnChange","columnSizingOnChange","newSizing","sortingOnChange","newSorting","jsx","ColumnSettingsContext"],"mappings":"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"}
1
+ {"version":3,"file":"ColumnSettingsProvider.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ColumnSettingsProvider.tsx"],"sourcesContent":["import React, { ReactNode, useState } from 'react'\nimport {\n ColumnOrderState,\n ColumnPinningState,\n functionalUpdate,\n OnChangeFn,\n VisibilityState,\n ColumnSizingState,\n SortingState,\n} from '@tanstack/react-table'\nimport { ROW_SELECTION_COLUMN_ID } from './SelectionCellsContext'\nimport { DRAG_HANDLE_COLUMN_ID } from '../ProjectTreeTable'\nimport { ColumnsConfig, ColumnSettingsContext, TableGroupBy } from './ColumnSettingsContext'\nimport { GroupByConfig } from '../components/GroupSettingsFallback'\n\ninterface ColumnSettingsProviderProps {\n children: ReactNode\n config?: Record<string, any>\n onChange: (config: ColumnsConfig, allColumnIds?: string[]) => void\n}\n\nexport const ColumnSettingsProvider: React.FC<ColumnSettingsProviderProps> = ({\n children,\n config,\n onChange,\n}) => {\n const allColumnsRef = React.useRef<string[]>([])\n\n // Internal state for immediate updates (similar to column sizing)\n const [internalColumnSizing, setInternalColumnSizing] = useState<ColumnSizingState | null>(null)\n const [internalRowHeight, setInternalRowHeight] = useState<number | null>(null)\n\n // Local row height state that persists and doesn't get overridden by API\n const [localRowHeight, setLocalRowHeight] = useState<number>(34)\n\n // Flag to prevent API updates during active row height adjustments\n const isAdjustingRowHeightRef = React.useRef(false)\n\n const setAllColumns = (allColumnIds: string[]) => {\n allColumnsRef.current = Array.from(new Set(allColumnIds))\n }\n const onChangeWithColumns = (next: ColumnsConfig) => onChange(next, allColumnsRef.current)\n const columnsConfig = config as ColumnsConfig\n\n const {\n columnOrder: columnOrderInit = [],\n columnPinning: columnPinningInit = {},\n columnVisibility: columnVisibilityInit = {},\n columnSizing: columnsSizingExternal = {},\n sorting: sortingInit = [],\n groupBy,\n groupByConfig = {},\n rowHeight: configRowHeight,\n } = columnsConfig || {}\n\n // Initialize local row height from API only once on mount\n const hasInitializedRef = React.useRef(false)\n React.useEffect(() => {\n if (!hasInitializedRef.current && configRowHeight !== undefined && configRowHeight !== null) {\n setLocalRowHeight(configRowHeight)\n hasInitializedRef.current = true\n }\n }, [configRowHeight])\n\n // Use internal row height during slider adjustments, otherwise use local persistent state\n const rowHeight = internalRowHeight ?? localRowHeight\n\n const sorting = [...sortingInit]\n const columnOrder = [...columnOrderInit]\n const columnPinning = { ...columnPinningInit }\n const defaultOrder = ['thumbnail', 'name', 'subType', 'status', 'tags']\n // for each default column, if it is not in the columnOrder, find the index of the column before it, if none, add to beginning\n defaultOrder.forEach((col, i) => {\n if (!columnOrder.includes(col)) {\n const defaultBefore = defaultOrder[i - 1]\n const columnAfter = defaultOrder[i + 1]\n if (!defaultBefore || !columnOrder.includes(defaultBefore)) {\n // add to beginning\n columnOrder.unshift(col)\n } else {\n // find the index of that column in the columnOrder\n const index = columnOrder.indexOf(defaultBefore)\n // add the item after that column\n columnOrder.splice(index + 1, 0, col)\n }\n if (columnAfter && columnPinning?.left && columnPinning?.left.includes(columnAfter)) {\n // pin the column\n columnPinning.left = [col, ...(columnPinning?.left || [])]\n }\n }\n })\n\n // if we are in grouping mode, always pin the name column\n // and ensure it is first in column order\n if (groupBy) {\n // ensure name column is pinned and first in pinning order\n if (!columnPinning.left?.includes('name')) {\n columnPinning.left = ['name', ...(columnPinning?.left || [])]\n } else {\n // name is already pinned, but ensure it's first\n const filteredPinned = columnPinning.left.filter((col) => col !== 'name')\n columnPinning.left = ['name', ...filteredPinned]\n }\n\n // ensure name is first in column order\n if (columnOrder.includes('name')) {\n // remove name from its current position\n const nameIndex = columnOrder.indexOf('name')\n columnOrder.splice(nameIndex, 1)\n }\n // add name to the beginning\n columnOrder.unshift('name')\n }\n\n // add drag handle and selection columns to the beginning of the column order\n columnOrder.unshift(...[DRAG_HANDLE_COLUMN_ID, ROW_SELECTION_COLUMN_ID])\n\n // VISIBILITY STATE MUTATIONS\n const columnVisibility = { ...columnVisibilityInit }\n // if we are in grouping mode, name column must always be visible\n if (groupBy && !columnVisibility.name) {\n columnVisibility.name = true\n }\n\n // DIRECT STATE UPDATES - no side effects\n const setColumnVisibility = (visibility: VisibilityState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnVisibility: visibility,\n })\n }\n\n const setColumnOrder = (order: ColumnOrderState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: order,\n })\n }\n\n const setColumnPinning = (pinning: ColumnPinningState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnPinning: pinning,\n })\n }\n\n // use internalColumnSizing if it exists, otherwise use the external column sizing\n const columnSizing = internalColumnSizing || columnsSizingExternal\n\n const resizingTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n const rowHeightTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n\n const setColumnSizing = (sizing: ColumnSizingState) => {\n setInternalColumnSizing(sizing)\n\n // if there is a timeout already set, clear it\n if (resizingTimeoutRef.current) {\n clearTimeout(resizingTimeoutRef.current)\n }\n // set a timeout that tracks if the column sizing has finished\n resizingTimeoutRef.current = setTimeout(() => {\n // we have finished resizing now!\n // update the external column sizing\n onChangeWithColumns({\n ...columnsConfig,\n columnSizing: sizing,\n })\n // reset the internal column sizing to not be used anymore\n setInternalColumnSizing(null)\n }, 500)\n }\n\n // SIDE EFFECT UTILITIES\n const togglePinningOnVisibilityChange = (visibility: VisibilityState) => {\n // ensure that any columns that are now hidden are removed from the pinning\n const newPinning = { ...columnPinning }\n const pinnedColumns = newPinning.left || []\n const hiddenColumns = Object.keys(visibility).filter((col) => visibility[col] === false)\n const newPinnedColumns = pinnedColumns.filter((col) => !hiddenColumns.includes(col))\n\n return {\n ...newPinning,\n left: newPinnedColumns,\n }\n }\n\n const updatePinningOrderOnOrderChange = (order: ColumnOrderState) => {\n // ensure that the column pinning is in the order of the column order\n const newPinning = { ...columnPinning }\n const pinnedColumns = newPinning.left || []\n const pinnedColumnsOrder = order.filter((col) => pinnedColumns.includes(col))\n\n return {\n ...newPinning,\n left: pinnedColumnsOrder,\n }\n }\n\n const updateOrderOnPinningChange = (pinning: ColumnPinningState) => {\n // we resort the column order based on the pinning\n return [...columnOrder].sort((a, b) => {\n const aPinned = pinning.left?.includes(a) ? 1 : 0\n const bPinned = pinning.left?.includes(b) ? 1 : 0\n return bPinned - aPinned\n })\n }\n\n // UPDATE METHODS WITH SIDE EFFECTS\n const updateColumnVisibility = (visibility: VisibilityState) => {\n const newPinning = togglePinningOnVisibilityChange(visibility)\n onChangeWithColumns({\n ...columnsConfig,\n columnVisibility: visibility,\n columnPinning: newPinning,\n })\n }\n\n const updateColumnOrder = (order: ColumnOrderState) => {\n const newPinning = updatePinningOrderOnOrderChange(order)\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: order,\n columnPinning: newPinning,\n })\n }\n\n const updateColumnPinning = (pinning: ColumnPinningState) => {\n const newOrder = updateOrderOnPinningChange(pinning)\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: newOrder,\n columnPinning: pinning,\n })\n }\n\n const updateSorting = (sortingState: SortingState) => {\n onChangeWithColumns({\n ...columnsConfig,\n sorting: sortingState,\n })\n }\n\n const updateGroupBy = (groupBy: TableGroupBy | undefined) => {\n onChangeWithColumns({\n ...columnsConfig,\n groupBy: groupBy,\n })\n }\n\n const updateGroupByConfig = (config: GroupByConfig) => {\n onChangeWithColumns({\n ...columnsConfig,\n groupByConfig: {\n ...groupByConfig,\n ...config,\n },\n })\n }\n\n // Update row height for immediate UI feedback (no API call)\n const updateRowHeightUI = (newRowHeight: number) => {\n setLocalRowHeight(newRowHeight)\n }\n\n // Update row height and persist to API\n const updateRowHeightWithPersistence = (newRowHeight: number) => {\n // Update UI immediately\n setLocalRowHeight(newRowHeight)\n\n // Block external API updates during adjustment period\n isAdjustingRowHeightRef.current = true\n setInternalRowHeight(newRowHeight)\n\n // Clear any existing timeout to debounce API calls\n if (rowHeightTimeoutRef.current) {\n clearTimeout(rowHeightTimeoutRef.current)\n }\n\n // Debounce API call to avoid excessive requests\n rowHeightTimeoutRef.current = setTimeout(() => {\n // Persist to API\n onChangeWithColumns({\n ...columnsConfig,\n rowHeight: newRowHeight,\n })\n\n // Clean up internal state\n setInternalRowHeight(null)\n isAdjustingRowHeightRef.current = false\n }, 200)\n }\n\n // Public API for immediate UI updates (used during slider drag)\n const updateRowHeight = updateRowHeightUI\n\n // Remove redundant local updater functions in favor of unified updaters with all columns\n\n // ON-CHANGE HANDLERS (TanStack-compatible)\n const columnVisibilityOnChange: OnChangeFn<VisibilityState> = (updater) => {\n const newVisibility = functionalUpdate(updater, columnVisibility)\n setColumnVisibility(newVisibility)\n }\n\n const columnPinningOnChange: OnChangeFn<ColumnPinningState> = (updater) => {\n const newPinning = functionalUpdate(updater, columnPinning)\n setColumnPinning(newPinning)\n }\n\n const columnOrderOnChange: OnChangeFn<ColumnOrderState> = (updater) => {\n const newOrder = functionalUpdate(updater, columnOrder)\n setColumnOrder(newOrder)\n }\n\n const columnSizingOnChange: OnChangeFn<ColumnSizingState> = (updater) => {\n const newSizing = functionalUpdate(updater, columnSizing)\n setColumnSizing(newSizing)\n }\n\n const sortingOnChange: OnChangeFn<SortingState> = (updater) => {\n const newSorting = functionalUpdate(updater, sorting)\n updateSorting(newSorting)\n }\n\n return (\n <ColumnSettingsContext.Provider\n value={{\n // all columns ref\n setAllColumns,\n // column visibility\n columnVisibility,\n setColumnVisibility,\n updateColumnVisibility,\n columnVisibilityOnChange,\n // column pinning\n columnPinning,\n setColumnPinning,\n updateColumnPinning,\n columnPinningOnChange,\n // column order\n columnOrder,\n setColumnOrder,\n updateColumnOrder,\n columnOrderOnChange,\n // column sizing\n columnSizing,\n setColumnSizing,\n columnSizingOnChange,\n // sorting\n sorting,\n updateSorting,\n sortingOnChange,\n // group by\n groupBy,\n updateGroupBy,\n groupByConfig,\n updateGroupByConfig,\n // row height\n rowHeight,\n updateRowHeight,\n updateRowHeightWithPersistence,\n\n // global change\n setColumnsConfig: (config: ColumnsConfig) => onChangeWithColumns(config),\n }}\n >\n {children}\n </ColumnSettingsContext.Provider>\n )\n}\n"],"names":["ColumnSettingsProvider","children","config","onChange","allColumnsRef","React","internalColumnSizing","setInternalColumnSizing","useState","internalRowHeight","setInternalRowHeight","localRowHeight","setLocalRowHeight","isAdjustingRowHeightRef","setAllColumns","allColumnIds","onChangeWithColumns","next","columnsConfig","columnOrderInit","columnPinningInit","columnVisibilityInit","columnsSizingExternal","sortingInit","groupBy","groupByConfig","configRowHeight","hasInitializedRef","rowHeight","sorting","columnOrder","columnPinning","defaultOrder","col","i","defaultBefore","columnAfter","index","_a","filteredPinned","nameIndex","DRAG_HANDLE_COLUMN_ID","ROW_SELECTION_COLUMN_ID","columnVisibility","setColumnVisibility","visibility","setColumnOrder","order","setColumnPinning","pinning","columnSizing","resizingTimeoutRef","rowHeightTimeoutRef","setColumnSizing","sizing","togglePinningOnVisibilityChange","newPinning","pinnedColumns","hiddenColumns","newPinnedColumns","updatePinningOrderOnOrderChange","pinnedColumnsOrder","updateOrderOnPinningChange","a","b","aPinned","_b","updateColumnVisibility","updateColumnOrder","updateColumnPinning","newOrder","updateSorting","sortingState","updateGroupBy","updateGroupByConfig","updateRowHeightUI","newRowHeight","updateRowHeightWithPersistence","updateRowHeight","columnVisibilityOnChange","updater","newVisibility","functionalUpdate","columnPinningOnChange","columnOrderOnChange","columnSizingOnChange","newSizing","sortingOnChange","newSorting","jsx","ColumnSettingsContext"],"mappings":"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"}