@ynput/ayon-frontend-shared 0.3.46 → 0.3.47

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 (735) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +38 -35
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +231 -228
  6. package/dist/ProjectTreeTable.es.js.map +1 -1
  7. package/dist/Slicer.cjs.js +1 -1
  8. package/dist/Slicer.es.js +193 -25
  9. package/dist/Slicer.es.js.map +1 -1
  10. package/dist/Views.cjs.js +1 -1
  11. package/dist/Views.es.js +27 -26
  12. package/dist/_virtual/index.cjs15.js +1 -1
  13. package/dist/_virtual/index.cjs18.js +1 -1
  14. package/dist/_virtual/index.cjs19.js +1 -1
  15. package/dist/_virtual/index.cjs9.js +1 -1
  16. package/dist/_virtual/index.es10.js +2 -2
  17. package/dist/_virtual/index.es11.js +2 -2
  18. package/dist/_virtual/index.es13.js +2 -2
  19. package/dist/_virtual/index.es14.js +2 -2
  20. package/dist/_virtual/index.es15.js +2 -2
  21. package/dist/_virtual/index.es16.js +2 -2
  22. package/dist/_virtual/index.es17.js +2 -2
  23. package/dist/_virtual/index.es18.js +5 -2
  24. package/dist/_virtual/index.es18.js.map +1 -1
  25. package/dist/_virtual/index.es19.js +2 -2
  26. package/dist/_virtual/index.es9.js +2 -5
  27. package/dist/_virtual/index.es9.js.map +1 -1
  28. package/dist/api.cjs.js +1 -1
  29. package/dist/api.es.js +347 -344
  30. package/dist/api.es.js.map +1 -1
  31. package/dist/components.cjs.js +1 -1
  32. package/dist/components.es.js +41 -39
  33. package/dist/components.es.js.map +1 -1
  34. package/dist/context.cjs.js +1 -1
  35. package/dist/context.es.js +55 -48
  36. package/dist/context.es.js.map +1 -1
  37. package/dist/index.cjs.js +1 -1
  38. package/dist/index.es.js +24 -21
  39. package/dist/index.es.js.map +1 -1
  40. package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
  41. package/dist/node_modules/parse-numeric-range/index.es.js +1 -1
  42. package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.cjs.js +1 -1
  43. package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.es.js +1 -1
  44. package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.cjs.js +1 -1
  45. package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.es.js +1 -1
  46. package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.cjs.js +1 -1
  47. package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.es.js +1 -1
  48. package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.cjs.js +1 -1
  49. package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.es.js +1 -1
  50. package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.cjs.js +1 -1
  51. package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.es.js +1 -1
  52. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.cjs.js +1 -1
  53. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.es.js +1 -1
  54. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.cjs.js +1 -1
  55. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.es.js +1 -1
  56. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js +1 -1
  57. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js.map +1 -1
  58. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.es.js +1 -1
  59. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/utils.cjs.js +1 -1
  60. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/utils.es.js +1 -1
  61. package/dist/shared/node_modules/@module-federation/sdk/dist/index.cjs.js +1 -1
  62. package/dist/shared/node_modules/@module-federation/sdk/dist/index.es.js +1 -1
  63. package/dist/shared/node_modules/@module-federation/sdk/dist/utils.cjs.js +1 -1
  64. package/dist/shared/node_modules/@module-federation/sdk/dist/utils.es.js +1 -1
  65. package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
  66. package/dist/shared/node_modules/prop-types/index.es.js +1 -1
  67. package/dist/shared/node_modules/react-is/index.cjs.js +1 -1
  68. package/dist/shared/node_modules/react-is/index.es.js +1 -1
  69. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
  70. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js.map +1 -1
  71. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
  72. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
  73. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js.map +1 -1
  74. package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
  75. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
  76. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js.map +1 -1
  77. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
  78. package/dist/shared/src/api/generated/graphql.cjs.js +3 -3
  79. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  80. package/dist/shared/src/api/generated/graphql.es.js +3 -3
  81. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  82. package/dist/shared/src/api/queries/actions/refreshActiveAndPurgeOthers.cjs.js +2 -0
  83. package/dist/shared/src/api/queries/actions/refreshActiveAndPurgeOthers.cjs.js.map +1 -0
  84. package/dist/shared/src/api/queries/actions/refreshActiveAndPurgeOthers.es.js +42 -0
  85. package/dist/shared/src/api/queries/actions/refreshActiveAndPurgeOthers.es.js.map +1 -0
  86. package/dist/shared/src/api/queries/activities/getActivities.cjs.js +1 -1
  87. package/dist/shared/src/api/queries/activities/getActivities.cjs.js.map +1 -1
  88. package/dist/shared/src/api/queries/activities/getActivities.es.js +121 -156
  89. package/dist/shared/src/api/queries/activities/getActivities.es.js.map +1 -1
  90. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js +1 -1
  91. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js.map +1 -1
  92. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js +93 -68
  93. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js.map +1 -1
  94. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js +1 -1
  95. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js.map +1 -1
  96. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js +63 -56
  97. package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js.map +1 -1
  98. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +1 -1
  99. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
  100. package/dist/shared/src/api/queries/entities/updateEntity.es.js +120 -119
  101. package/dist/shared/src/api/queries/entities/updateEntity.es.js.map +1 -1
  102. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +1 -1
  103. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -1
  104. package/dist/shared/src/api/queries/entityLists/getLists.es.js +70 -62
  105. package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -1
  106. package/dist/shared/src/api/queries/folders/getFolders.cjs.js.map +1 -1
  107. package/dist/shared/src/api/queries/folders/getFolders.es.js.map +1 -1
  108. package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js +1 -1
  109. package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js.map +1 -1
  110. package/dist/shared/src/api/queries/links/getEntityLinks.es.js +85 -85
  111. package/dist/shared/src/api/queries/links/getEntityLinks.es.js.map +1 -1
  112. package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
  113. package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
  114. package/dist/shared/src/api/queries/overview/getOverview.es.js +267 -259
  115. package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
  116. package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js +1 -1
  117. package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js.map +1 -1
  118. package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js +85 -79
  119. package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js.map +1 -1
  120. package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js +1 -1
  121. package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js.map +1 -1
  122. package/dist/shared/src/components/ColumnHeaderMenuUI.es.js +170 -2
  123. package/dist/shared/src/components/ColumnHeaderMenuUI.es.js.map +1 -1
  124. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  125. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  126. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +18 -15
  127. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  128. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  129. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  130. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +165 -2
  131. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  132. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +2 -2
  133. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
  134. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +164 -2
  135. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
  136. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  137. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
  138. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +174 -2
  139. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  140. package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js +1 -1
  141. package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js.map +1 -1
  142. package/dist/shared/src/components/EntityIcon/EntityIcon.es.js +173 -2
  143. package/dist/shared/src/components/EntityIcon/EntityIcon.es.js.map +1 -1
  144. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  145. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  146. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +5 -2
  147. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  148. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
  149. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
  150. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +16 -13
  151. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
  152. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
  153. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
  154. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +168 -2
  155. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
  156. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  157. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  158. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +260 -89
  159. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  160. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  161. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  162. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +44 -78
  163. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  164. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js +1 -1
  165. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js.map +1 -1
  166. package/dist/shared/src/components/LinksManager/LinksManager.es.js +172 -2
  167. package/dist/shared/src/components/LinksManager/LinksManager.es.js.map +1 -1
  168. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  169. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  170. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +5 -2
  171. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  172. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
  173. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
  174. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +173 -2
  175. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
  176. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js +1 -1
  177. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js.map +1 -1
  178. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js +158 -2
  179. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js.map +1 -1
  180. package/dist/shared/src/components/Menu/Menu.cjs.js +1 -1
  181. package/dist/shared/src/components/Menu/Menu.cjs.js.map +1 -1
  182. package/dist/shared/src/components/Menu/Menu.es.js +171 -2
  183. package/dist/shared/src/components/Menu/Menu.es.js.map +1 -1
  184. package/dist/shared/src/components/Menu/MenuItem.cjs.js +1 -1
  185. package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -1
  186. package/dist/shared/src/components/Menu/MenuItem.es.js +167 -0
  187. package/dist/shared/src/components/Menu/MenuItem.es.js.map +1 -1
  188. package/dist/shared/src/components/Menu/MenuList.cjs.js +1 -1
  189. package/dist/shared/src/components/Menu/MenuList.cjs.js.map +1 -1
  190. package/dist/shared/src/components/Menu/MenuList.es.js +209 -40
  191. package/dist/shared/src/components/Menu/MenuList.es.js.map +1 -1
  192. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +1 -1
  193. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
  194. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +171 -2
  195. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
  196. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  197. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  198. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +170 -2
  199. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  200. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +1 -1
  201. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
  202. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +16 -13
  203. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
  204. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +2 -2
  205. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  206. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +82 -79
  207. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  208. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  209. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  210. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +169 -3
  211. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  212. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
  213. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
  214. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +12 -9
  215. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
  216. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
  217. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
  218. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +5 -2
  219. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
  220. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  221. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  222. package/dist/shared/src/components/RenameForm/RenameForm.es.js +5 -2
  223. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  224. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  225. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  226. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +41 -38
  227. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  228. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  229. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  230. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +19 -16
  231. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  232. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  233. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  234. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +17 -14
  235. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  236. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
  237. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
  238. package/dist/shared/src/components/ReviewablesSelector/Card.es.js +18 -15
  239. package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
  240. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  241. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  242. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +453 -284
  243. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  244. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +2 -2
  245. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
  246. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +172 -2
  247. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
  248. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
  249. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
  250. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +18 -15
  251. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
  252. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  253. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  254. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +18 -15
  255. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  256. package/dist/shared/src/components/SyncButton/SyncButton.cjs.js +52 -0
  257. package/dist/shared/src/components/SyncButton/SyncButton.cjs.js.map +1 -0
  258. package/dist/shared/src/components/SyncButton/SyncButton.es.js +265 -0
  259. package/dist/shared/src/components/SyncButton/SyncButton.es.js.map +1 -0
  260. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +1 -1
  261. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
  262. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +171 -2
  263. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
  264. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  265. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  266. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +18 -15
  267. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  268. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  269. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  270. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +20 -17
  271. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  272. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  273. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  274. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +18 -15
  275. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  276. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  277. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  278. package/dist/shared/src/containers/Actions/Actions.es.js +213 -44
  279. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  280. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  281. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  282. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +18 -15
  283. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  284. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  285. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  286. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +39 -36
  287. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  288. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  289. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  290. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +18 -15
  291. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  292. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  293. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  294. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +19 -16
  295. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  296. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  297. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  298. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +51 -48
  299. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  300. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.cjs.js +1 -1
  301. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.cjs.js.map +1 -1
  302. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.es.js +173 -3
  303. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.es.js.map +1 -1
  304. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
  305. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
  306. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +18 -15
  307. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
  308. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
  309. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
  310. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +18 -15
  311. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js.map +1 -1
  312. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  313. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  314. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +168 -2
  315. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  316. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
  317. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
  318. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +32 -29
  319. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
  320. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
  321. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
  322. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +18 -15
  323. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
  324. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
  325. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
  326. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +81 -78
  327. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
  328. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
  329. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
  330. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +144 -2
  331. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
  332. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  333. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  334. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +174 -2
  335. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  336. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  337. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  338. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +18 -15
  339. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  340. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  341. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  342. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +18 -15
  343. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  344. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  345. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  346. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +18 -15
  347. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  348. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  349. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  350. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +18 -15
  351. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  352. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  353. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  354. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +178 -7
  355. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  356. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  357. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  358. package/dist/shared/src/containers/Feed/Feed.es.js +206 -59
  359. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  360. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
  361. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
  362. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +18 -15
  363. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
  364. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  365. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  366. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +19 -16
  367. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  368. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  369. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  370. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +18 -15
  371. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  372. package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js +1 -1
  373. package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js.map +1 -1
  374. package/dist/shared/src/containers/Feed/components/ActivityItem.es.js +16 -16
  375. package/dist/shared/src/containers/Feed/components/ActivityItem.es.js.map +1 -1
  376. package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.cjs.js +1 -1
  377. package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.cjs.js.map +1 -1
  378. package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.es.js +30 -17
  379. package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.es.js.map +1 -1
  380. package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.cjs.js +11 -0
  381. package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.cjs.js.map +1 -0
  382. package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.es.js +27 -0
  383. package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.es.js.map +1 -0
  384. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js +1 -1
  385. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js.map +1 -1
  386. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js +20 -17
  387. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js.map +1 -1
  388. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
  389. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
  390. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +218 -39
  391. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
  392. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
  393. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  394. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +78 -75
  395. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  396. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
  397. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
  398. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +22 -19
  399. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
  400. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -1
  401. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
  402. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +173 -2
  403. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
  404. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
  405. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
  406. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +173 -2
  407. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
  408. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js +2 -2
  409. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js.map +1 -1
  410. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js +181 -14
  411. package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js.map +1 -1
  412. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
  413. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
  414. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +169 -2
  415. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
  416. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  417. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  418. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +80 -77
  419. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  420. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  421. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  422. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +197 -26
  423. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  424. package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.cjs.js +1 -1
  425. package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.cjs.js.map +1 -1
  426. package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.es.js +9 -8
  427. package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.es.js.map +1 -1
  428. package/dist/shared/src/containers/ListTable/ListTable.cjs.js +1 -1
  429. package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
  430. package/dist/shared/src/containers/ListTable/ListTable.es.js +24 -21
  431. package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
  432. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
  433. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
  434. package/dist/shared/src/containers/ListTable/ListTableCell.es.js +18 -15
  435. package/dist/shared/src/containers/ListTable/ListTableCell.es.js.map +1 -1
  436. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js +1 -1
  437. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js.map +1 -1
  438. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js +17 -14
  439. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
  440. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  441. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  442. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +5 -2
  443. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  444. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  445. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  446. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +18 -15
  447. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  448. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
  449. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
  450. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +5 -2
  451. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
  452. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  453. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  454. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +84 -81
  455. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  456. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  457. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  458. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +17 -14
  459. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  460. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  461. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  462. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +18 -15
  463. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  464. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +5 -5
  465. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  466. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +508 -321
  467. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  468. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
  469. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
  470. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +18 -15
  471. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
  472. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  473. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  474. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +175 -4
  475. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  476. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js +1 -1
  477. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
  478. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js +176 -6
  479. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
  480. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  481. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  482. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +18 -15
  483. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  484. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
  485. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  486. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +174 -2
  487. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  488. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  489. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  490. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +21 -18
  491. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  492. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  493. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  494. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +18 -15
  495. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  496. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  497. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  498. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +18 -15
  499. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  500. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  501. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  502. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +18 -15
  503. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  504. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  505. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  506. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +18 -15
  507. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  508. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
  509. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
  510. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +5 -2
  511. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
  512. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  513. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  514. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +408 -396
  515. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  516. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  517. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  518. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +18 -15
  519. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  520. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  521. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  522. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +18 -15
  523. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  524. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  525. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  526. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +19 -17
  527. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  528. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  529. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  530. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +5 -2
  531. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  532. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  533. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  534. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +5 -2
  535. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  536. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  537. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  538. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +18 -15
  539. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  540. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
  541. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
  542. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +18 -15
  543. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
  544. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js +1 -1
  545. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js.map +1 -1
  546. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js +265 -95
  547. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js.map +1 -1
  548. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  549. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  550. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +29 -26
  551. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  552. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
  553. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  554. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +18 -15
  555. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  556. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +2 -2
  557. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  558. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +94 -91
  559. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  560. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js +3 -3
  561. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js.map +1 -1
  562. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js +25 -22
  563. package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js.map +1 -1
  564. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  565. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  566. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +20 -17
  567. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  568. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js +4 -4
  569. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js.map +1 -1
  570. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js +188 -34
  571. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js.map +1 -1
  572. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  573. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  574. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +18 -15
  575. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  576. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
  577. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
  578. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +25 -22
  579. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
  580. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js +2 -2
  581. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js.map +1 -1
  582. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js +225 -61
  583. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js.map +1 -1
  584. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  585. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  586. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +18 -15
  587. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  588. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  589. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  590. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +21 -18
  591. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  592. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js +1 -1
  593. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js.map +1 -1
  594. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js +37 -37
  595. package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js.map +1 -1
  596. package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js +2 -2
  597. package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js.map +1 -1
  598. package/dist/shared/src/containers/Slicer/components/Slicer.es.js +353 -51
  599. package/dist/shared/src/containers/Slicer/components/Slicer.es.js.map +1 -1
  600. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js +1 -1
  601. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js.map +1 -1
  602. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js +172 -2
  603. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js.map +1 -1
  604. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
  605. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
  606. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +18 -15
  607. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
  608. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +1 -1
  609. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -1
  610. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +216 -45
  611. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
  612. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js +1 -1
  613. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js.map +1 -1
  614. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js +185 -13
  615. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
  616. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js +1 -1
  617. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js.map +1 -1
  618. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js +174 -2
  619. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js.map +1 -1
  620. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
  621. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
  622. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +40 -289
  623. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
  624. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js +1 -1
  625. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js.map +1 -1
  626. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js +174 -2
  627. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -1
  628. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.cjs.js +1 -1
  629. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.cjs.js.map +1 -1
  630. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.es.js +173 -2
  631. package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.es.js.map +1 -1
  632. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.cjs.js +1 -1
  633. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.cjs.js.map +1 -1
  634. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.es.js +174 -2
  635. package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.es.js.map +1 -1
  636. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.cjs.js +1 -1
  637. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.cjs.js.map +1 -1
  638. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.es.js +174 -2
  639. package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.es.js.map +1 -1
  640. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
  641. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
  642. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +227 -53
  643. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
  644. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  645. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  646. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +176 -6
  647. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  648. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
  649. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
  650. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +5 -2
  651. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
  652. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +2 -2
  653. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
  654. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +185 -18
  655. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
  656. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  657. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  658. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +209 -38
  659. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  660. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  661. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  662. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +180 -10
  663. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  664. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  665. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  666. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +107 -73
  667. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  668. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  669. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  670. package/dist/shared/src/context/DetailsPanelContext.es.js +210 -38
  671. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  672. package/dist/shared/src/context/EntityUpdatesContext.cjs.js +2 -0
  673. package/dist/shared/src/context/EntityUpdatesContext.cjs.js.map +1 -0
  674. package/dist/shared/src/context/EntityUpdatesContext.es.js +392 -0
  675. package/dist/shared/src/context/EntityUpdatesContext.es.js.map +1 -0
  676. package/dist/shared/src/context/EntityUpdatesContextInstance.cjs.js +2 -0
  677. package/dist/shared/src/context/EntityUpdatesContextInstance.cjs.js.map +1 -0
  678. package/dist/shared/src/context/EntityUpdatesContextInstance.es.js +6 -0
  679. package/dist/shared/src/context/EntityUpdatesContextInstance.es.js.map +1 -0
  680. package/dist/shared/src/context/MenuContext.es.js +3 -3
  681. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  682. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  683. package/dist/shared/src/context/PowerpackContext.es.js +178 -6
  684. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  685. package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
  686. package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
  687. package/dist/shared/src/context/ProjectFoldersContext.es.js +196 -24
  688. package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
  689. package/dist/shared/src/context/SubtasksModulesContext.cjs.js +1 -1
  690. package/dist/shared/src/context/SubtasksModulesContext.cjs.js.map +1 -1
  691. package/dist/shared/src/context/SubtasksModulesContext.es.js +176 -4
  692. package/dist/shared/src/context/SubtasksModulesContext.es.js.map +1 -1
  693. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  694. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  695. package/dist/shared/src/context/WebsocketContext.es.js +52 -45
  696. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  697. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  698. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  699. package/dist/shared/src/hooks/useEntityUpdate.es.js +174 -2
  700. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  701. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
  702. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
  703. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +174 -2
  704. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
  705. package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
  706. package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
  707. package/dist/shared/src/hooks/useHierarchyTable.es.js +174 -2
  708. package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
  709. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  710. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  711. package/dist/shared/src/hooks/useUserProjectConfig.es.js +174 -2
  712. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  713. package/dist/types/api/generated/graphql.d.ts +3 -3
  714. package/dist/types/api/queries/actions/index.d.ts +1 -0
  715. package/dist/types/api/queries/actions/refreshActiveAndPurgeOthers.d.ts +11 -0
  716. package/dist/types/api/queries/activities/getActivities.d.ts +65 -855
  717. package/dist/types/api/queries/activities/util/activitiesHelpers.d.ts +19 -0
  718. package/dist/types/api/queries/links/getEntityLinks.d.ts +4 -2
  719. package/dist/types/components/SyncButton/SyncButton.d.ts +11 -0
  720. package/dist/types/components/SyncButton/index.d.ts +1 -0
  721. package/dist/types/components/index.d.ts +1 -0
  722. package/dist/types/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.d.ts +7 -0
  723. package/dist/types/containers/Feed/components/ActivityVersions/ActivityVersions.d.ts +3 -0
  724. package/dist/types/containers/Feed/hooks/useGetFeedActivitiesData.d.ts +3 -42
  725. package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +4 -4
  726. package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +10 -2
  727. package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +9 -2
  728. package/dist/types/containers/Slicer/context/SlicerContext.d.ts +1 -0
  729. package/dist/types/containers/Slicer/hooks/useSelectedEntityIds.d.ts +7 -1
  730. package/dist/types/containers/Views/utils/viewUpdateHelper.d.ts +7 -0
  731. package/dist/types/context/EntityUpdatesContext.d.ts +44 -0
  732. package/dist/types/context/EntityUpdatesContextInstance.d.ts +2 -0
  733. package/dist/types/context/ProjectFoldersContext.d.ts +2 -2
  734. package/dist/types/context/index.d.ts +1 -0
  735. package/package.json +1 -1
@@ -127,9 +127,179 @@ import "../../../context/WebsocketContext.es.js";
127
127
  import "../../../context/GlobalContext.es.js";
128
128
  import { useProjectContext as Rt } from "../../../context/ProjectContext.es.js";
129
129
  import "../../../context/ProjectFoldersContextInstance.es.js";
130
+ import "../../../context/EntityUpdatesContextInstance.es.js";
131
+ import "../../ContextMenu/ContextMenuContext.es.js";
132
+ import "@ynput/ayon-react-components";
133
+ /* empty css */
134
+ import "clsx";
135
+ import "../../Feed/context/FeedContext.es.js";
136
+ import "../../Feed/components/Tooltips/UserTooltipItem.es.js";
137
+ import "../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.es.js";
138
+ import "../../Feed/components/Tooltips/TeamTooltip/TeamTooltip.styled.es.js";
139
+ import "../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.es.js";
140
+ import "../../Feed/components/FileUploadPreview/FileUploadPreview.styled.es.js";
141
+ import "../../Feed/components/FileUploadPreview/Mimes/TextMime.es.js";
142
+ import "react-markdown";
143
+ import "remark-emoji";
144
+ import "remark-gfm";
145
+ import "remark-directive";
146
+ import "remark-directive-rehype";
147
+ import "../../Feed/components/CommentInput/CommentInput.es.js";
148
+ import "../../Feed/components/ReactionContainer/Reactions.styled.es.js";
149
+ import "../../Feed/components/FilesGrid/FilesGrid.styled.es.js";
150
+ import "../../Feed/components/FileUploadCard/FileUploadCard.styled.es.js";
151
+ import "../../Feed/components/CommentInput/quillToMarkdown.es.js";
152
+ import "../../Feed/components/ActivityComment/ActivityComment.styled.es.js";
153
+ import "../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.es.js";
154
+ import "../../../components/AddonLoadingScreen/AddonLoadingScreen.es.js";
155
+ import "../../../../../node_modules/match-sorter/dist/match-sorter.esm.es.js";
156
+ import "../../../components/AccessSearchInput/AccessSearchInput.styled.es.js";
157
+ import "../../../components/AccessUser/AccessUser.es.js";
158
+ import "../../../components/AttributeEditor/AttributeEditor.es.js";
159
+ import "../../../components/AttributeEditor/attributeTypeMap.es.js";
160
+ import "../../../components/Badge/Badge.es.js";
161
+ import "../../../components/Chips/Chips.es.js";
162
+ import "date-fns";
163
+ import "../../../components/DateRangePicker/DateRangePicker.styled.es.js";
164
+ import "../../../components/LinksManager/CellEditingDialog.es.js";
165
+ import "../../../../../_virtual/index.es.js";
166
+ import "../../../../../node_modules/refractor/lib/common.es.js";
167
+ import "../../../../../node_modules/refractor/lib/all.es.js";
168
+ /* empty css */
169
+ import "../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js";
170
+ import "../../../components/DetailsPanelDetails/DetailsPanelDetails.es.js";
171
+ import "react-quill-ayon";
172
+ import "../../../components/DetailsPanelDetails/BorderedSection.es.js";
173
+ import "../../../components/QuillListStyles/QuillListStyles.es.js";
174
+ import "../../../components/DetailsPanelDetails/DescriptionSection.styles.es.js";
175
+ import "rehype-raw";
176
+ import "../../../components/DetailsPanelDetails/hooks/useMentionSystem.es.js";
177
+ import "../../Feed/components/CommentInput/modules/index.es.js";
178
+ import "../../../components/DetailsPanelDetails/DetailsSection.es.js";
179
+ import "../../../components/DetailsPanelDetails/FieldLabel.es.js";
180
+ import "../../../components/DoneCheckbox/DoneCheckbox.es.js";
181
+ import "../../../components/EarlyPreview/EarlyPreview.es.js";
182
+ import "../../../components/EmptyPlaceholder/EmptyPlaceholder.es.js";
183
+ import "../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.es.js";
184
+ import "../../../components/InfoMessage/InfoMessage.es.js";
185
+ import "@dnd-kit/core";
186
+ import "@dnd-kit/sortable";
187
+ import "../../../components/EnumEditor/EnumEditor.styled.es.js";
188
+ import "../../../components/EntityPanelUploader/EntityPanelUploader.styled.es.js";
189
+ import "axios";
190
+ import "../../../components/ReviewablesList/ReviewablesList.styled.es.js";
191
+ import "../../../components/ReviewablesList/ReviewablesUpload.styled.es.js";
192
+ import "../../../components/EntityPath/EntityPath.styled.es.js";
193
+ import "../../../components/EntityPath/SegmentProvider.es.js";
194
+ import "../../../components/FeaturedVersionOrder/FeaturedVersionOrder.es.js";
195
+ import "../../../components/Feedback/FeedbackContextInstance.es.js";
196
+ import "../../../components/Feedback/SupportBubble.es.js";
197
+ import "../../../components/FileThumbnail/FileThumbnail.es.js";
198
+ import "../../../components/LegacyBadge/LegacyBadge.es.js";
199
+ import "../../../components/LinksManager/LinksManager.styled.es.js";
200
+ import "../../EntityPickerDialog/EntityPickerDialog.es.js";
201
+ import "../../../components/Powerpack/PowerpackButton.es.js";
202
+ import "../../../components/Powerpack/FreeTrialLink.es.js";
203
+ import "../../../components/Powerpack/PowerpackDialog.styled.es.js";
204
+ import "../../../components/Powerpack/CTAButton.es.js";
205
+ import "../../../components/Powerpack/RequiredAddonVersion.es.js";
206
+ import "../../../components/ProjectTableSettings/ProjectTableSettings.es.js";
207
+ import "../../../components/SizeSlider/SizeSlider.es.js";
208
+ import "react-router-dom";
209
+ import "../../Slicer/components/Slicer.es.js";
210
+ import "../../Slicer/context/SlicerContextInstance.es.js";
211
+ import "../../Slicer/components/SlicerDropdownFallback.es.js";
212
+ import "../../Slicer/hooks/useTableDataBySlice.es.js";
213
+ import "../../../components/ReviewableCard/ReviewableCard.es.js";
214
+ import "../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
215
+ import "../../../components/SearchFilter/filterDates.es.js";
216
+ import "../../../components/SearchFilter/CustomDateRangeDialog.es.js";
217
+ import "../../../components/SettingsPanel/SettingsPanel.es.js";
218
+ import "../../../components/SettingsPanel/SettingsPanelItemTemplate.es.js";
219
+ import "../../../components/ShareOptionIcon/ShareOptionIcon.es.js";
220
+ import "../../../components/SimpleFormDialog/SimpleFormDialog.es.js";
221
+ import "../../../components/StyledLink/StyledLink.es.js";
222
+ import "../../../components/SyncButton/SyncButton.es.js";
223
+ import "../../../components/TableGridSwitch/TableGridSwitch.es.js";
224
+ import "../../../components/Thumbnail/Thumbnail.styled.es.js";
225
+ import "../../../components/Thumbnail/StackedThumbnails.es.js";
226
+ import "../../../components/ThumbnailSimple/ThumbnailSimple.es.js";
227
+ import "../../../components/VersionUploader/components/UploadVersionDialog.es.js";
228
+ import "../../../components/VersionUploader/context/VersionUploadContextInstance.es.js";
229
+ import "../../../components/Watchers/Watchers.es.js";
230
+ import "../../../components/Menu/Menu.styled.es.js";
231
+ import "../../../components/Menu/MenuItem.es.js";
232
+ import "../../../components/ReviewablesSelector/ReviewablesSelector.es.js";
233
+ import "../../../components/ColumnHeaderMenuUI.es.js";
234
+ import "../../Feed/components/ActivityReference/ActivityReference.styled.es.js";
235
+ import "../../Feed/components/ActivityStatus/ActivityStatus.es.js";
236
+ import "../../Feed/components/ActivityHeader/ActivityHeader.styled.es.js";
237
+ import "../../Feed/components/ActivityDate.es.js";
238
+ import "../../Feed/components/ActivityCategorySelect/CategoryTag.es.js";
239
+ import "../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.es.js";
240
+ import "../../Feed/components/ActivityStatusChange/ActivityStatusSecondary.es.js";
241
+ import "../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.es.js";
242
+ import "../../Feed/components/ActivityVersions/ActivityVersions.styled.es.js";
243
+ import "../../Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
244
+ import "../../Feed/components/ActivityVersionReview/ActivityVersionReview.styled.es.js";
245
+ import "../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js";
246
+ import "../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js";
247
+ import "../../Feed/Feed.styled.es.js";
248
+ import "../../Feed/components/FeedSearchFilter.es.js";
249
+ import "@tanstack/react-virtual";
250
+ import "@tanstack/react-table";
251
+ import "../widgets/CollapsedWidget.es.js";
252
+ import "../widgets/DateWidget.es.js";
253
+ import "../widgets/EnumWidget.es.js";
254
+ import "../widgets/EnumCellValue.es.js";
255
+ import "../widgets/TextWidget.es.js";
256
+ import "../widgets/MarkdownWidget.es.js";
257
+ import "../widgets/BooleanWidget.es.js";
258
+ import "../widgets/CellWidget.es.js";
259
+ import "../widgets/EntityNameWidget.es.js";
260
+ import "../widgets/GroupHeaderWidget.es.js";
261
+ import "../widgets/ThumbnailWidget.es.js";
262
+ import "../widgets/LinksWidget.es.js";
130
263
  import { useColumnSettingsContext as xt } from "./ColumnSettingsContext.es.js";
131
264
  import { ProjectTableContext as x } from "./ProjectTableContextInstance.es.js";
132
- const At = (e) => e?.split(Dt)[0] || e, ti = ({
265
+ import "../widgets/EmptyWidget.es.js";
266
+ import "../widgets/ErrorWidget.es.js";
267
+ import "./CellEditingContext.es.js";
268
+ import "short-uuid";
269
+ import "./SelectionCellsContext.es.js";
270
+ import "./ProjectTableQueriesContext.es.js";
271
+ import "./ClipboardContext.es.js";
272
+ import "./SelectedRowsContext.es.js";
273
+ import "./DetailsPanelEntityContext.es.js";
274
+ import "../components/DeleteConfirmContent.es.js";
275
+ import "./ProjectDataContextInstance.es.js";
276
+ import "../ProjectTreeTable.styled.es.js";
277
+ import "../components/SelectionCell.es.js";
278
+ import "../components/RowSelectionHeader.es.js";
279
+ import "../widgets/LoadMoreWidget.es.js";
280
+ import "../components/HeaderActionButton.es.js";
281
+ import "../components/TableFooterRow.es.js";
282
+ import "../../DetailsPanel/DetailsPanel.styled.es.js";
283
+ import "../../DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.es.js";
284
+ import "../../DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.styled.es.js";
285
+ import "../../DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.es.js";
286
+ import "../../../components/PlayableIcon/PlayableIcon.es.js";
287
+ import "../../DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js";
288
+ import "../../DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.es.js";
289
+ import "../../DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js";
290
+ import "../../DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.es.js";
291
+ import "../../DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.es.js";
292
+ import "../../DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.es.js";
293
+ import "../../Actions/Actions.styled.es.js";
294
+ import "../../Actions/ActionsDropdown/ActionsDropdown.es.js";
295
+ import "../../Actions/ActionIcon.es.js";
296
+ import "../../Views/ViewsMenu/ViewsMenu.es.js";
297
+ import "../../Views/context/ViewsContextInstance.es.js";
298
+ import "../../Views/Views.styled.es.js";
299
+ import "../../Views/ViewsMenuContainer/ViewsMenuContainer.es.js";
300
+ import "../../ListTable/ListTableRow.es.js";
301
+ import "../../ListTable/ListTable.styled.es.js";
302
+ const At = (e) => e?.split(Dt)[0] || e, se = ({
133
303
  children: e,
134
304
  foldersMap: c,
135
305
  tableRows: A,
@@ -159,7 +329,7 @@ const At = (e) => e?.split(Dt)[0] || e, ti = ({
159
329
  toggleExpanded: U,
160
330
  updateExpanded: X,
161
331
  fetchNextPage: Y,
162
- reloadTableData: Z,
332
+ onSyncData: Z,
163
333
  setExpanded: a,
164
334
  contextMenuItems: $,
165
335
  powerpack: H,
@@ -283,7 +453,7 @@ const At = (e) => e?.split(Dt)[0] || e, ti = ({
283
453
  foldersMap: c,
284
454
  entitiesMap: n,
285
455
  fetchNextPage: Y,
286
- reloadTableData: Z,
456
+ onSyncData: Z,
287
457
  groups: P,
288
458
  overrideGroupBy: j,
289
459
  queryFilters: K,
@@ -329,15 +499,15 @@ const At = (e) => e?.split(Dt)[0] || e, ti = ({
329
499
  children: e
330
500
  }
331
501
  );
332
- }, oi = () => {
502
+ }, ce = () => {
333
503
  const e = vt(x);
334
504
  if (!e)
335
505
  throw new Error("useProjectTableContext must be used within a ProjectTableProvider");
336
506
  return e;
337
507
  };
338
508
  export {
339
- ti as ProjectTableProvider,
509
+ se as ProjectTableProvider,
340
510
  At as parseRowId,
341
- oi as useProjectTableContext
511
+ ce as useProjectTableContext
342
512
  };
343
513
  //# sourceMappingURL=ProjectTableContext.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectTableContext.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectTableContext.tsx"],"sourcesContent":["/**\n * Project Table Context\n *\n * This context serves as the central data management layer for the project table component.\n * It performs three main functions:\n *\n * 1. **Props Forwarding**: Acts as a bridge to forward essential props (project info, users,\n * attributes, filters, etc.) down to child components throughout the table hierarchy.\n *\n * 2. **Table Data Structure Building**: Transforms raw project data into structured table rows\n * that can be consumed by the table component. This includes processing folders, tasks,\n * and entities into a unified table format.\n *\n * 3. **Multi-Modal Data Presentation**: Supports three different data presentation modes:\n * - **Hierarchy Mode**: Builds nested folder/task relationships with expandable rows\n * - **Tasks List Mode**: Flattened view of tasks without hierarchical structure\n * - **Groups Mode**: Groups entities by specified criteria (entity type, custom groups)\n *\n * The context also provides utility functions for entity relationships, expansion state\n * management, filtering, and folder inheritance operations.\n */\nimport { ReactNode, useCallback, useContext, useMemo } from 'react'\nimport { useParams, useNavigate, useLocation, useSearchParams } from 'react-router-dom'\nimport { ExpandedState, OnChangeFn } from '@tanstack/react-table'\nimport useBuildProjectDataTable from '../hooks/useBuildProjectDataTable'\nimport {\n EntitiesMap,\n EntityMap,\n FolderNodeMap,\n TableRow,\n TaskNodeMap,\n TasksByFolderMap,\n} from '../types/table'\nimport useFolderRelationships, {\n FindInheritedValueFromAncestors,\n FindNonInheritedValues,\n GetAncestorsOf,\n GetInheritedDependents,\n} from '../hooks/useFolderRelationships'\nimport { ProjectTableAttribute, LoadingTasks, SoftErrorAction } from '../types'\nimport { QueryFilter } from '../types/folders'\nimport { ContextMenuItemConstructors } from '../hooks/useCellContextMenu'\nimport { EntityGroup } from '@shared/api'\nimport type { GroupCountsMap } from '@shared/api'\nimport useBuildGroupByTableData, {\n GroupByEntityType,\n ROW_ID_SEPARATOR,\n} from '../hooks/useBuildGroupByTableData'\nimport { PowerpackContextType, useProjectContext } from '@shared/context'\nimport { TableGroupBy, useColumnSettingsContext } from './ColumnSettingsContext'\nimport { ProjectTableModulesType } from '@shared/hooks'\nimport type { SubtasksManagerProps } from '@shared/components'\nimport { RowId } from '../utils'\nimport { ProjectTableContext } from './ProjectTableContextInstance'\n\nexport type ToggleExpandAll = (rowIds: RowId[], expand?: boolean) => void\nexport type ToggleExpands = (rowIds: RowId[], expand?: boolean) => void\n\nexport interface ProjectTableContextType {\n isInitialized: ProjectTableProviderProps['isInitialized']\n isLoading: ProjectTableProviderProps['isLoading']\n users: ProjectTableProviderProps['users']\n // Attributes\n attribFields: ProjectTableProviderProps['attribFields']\n attribFieldsScoped: ProjectTableProviderProps['attribFields']\n error?: string\n softError?: string // shows a warning banner but doesn't block the table from rendering\n softErrorAction?: SoftErrorAction\n\n scopes: ProjectTableProviderProps['scopes']\n\n // Data\n tableData: TableRow[]\n tasksMap: ProjectTableProviderProps['tasksMap']\n foldersMap: ProjectTableProviderProps['foldersMap']\n entitiesMap: ProjectTableProviderProps['entitiesMap']\n fetchNextPage: ProjectTableProviderProps['fetchNextPage']\n reloadTableData: ProjectTableProviderProps['reloadTableData']\n getEntityById: (id: string, field?: string) => EntityMap | undefined // if the entity is not found, we explicity search for the field\n loadingLinksEntityIds?: Set<string>\n\n // grouping\n groups: ProjectTableProviderProps['groups']\n overrideGroupBy?: ProjectTableProviderProps['overrideGroupBy']\n\n // Filters\n queryFilters: ProjectTableProviderProps['queryFilters']\n\n // Hierarchy\n showHierarchy: ProjectTableProviderProps['showHierarchy']\n updateShowHierarchy: ProjectTableProviderProps['updateShowHierarchy']\n hierarchyOptions?: ProjectTableProviderProps['hierarchyOptions']\n hierarchyActive?: ProjectTableProviderProps['hierarchyActive']\n\n // Flat folder view\n isFlatFolderView?: boolean\n\n // Expanded state\n expanded: ProjectTableProviderProps['expanded']\n setExpanded: ProjectTableProviderProps['setExpanded']\n toggleExpanded: ProjectTableProviderProps['toggleExpanded']\n updateExpanded: ProjectTableProviderProps['updateExpanded']\n toggleExpandAll: ToggleExpandAll\n toggleExpands: ToggleExpands // expand/collapse multiple rows at once\n\n // Folder Relationships\n getInheritedDependents: GetInheritedDependents\n findInheritedValueFromAncestors: FindInheritedValueFromAncestors\n findNonInheritedValues: FindNonInheritedValues\n getAncestorsOf: GetAncestorsOf\n\n // Context menu\n contextMenuItems: ProjectTableProviderProps['contextMenuItems']\n\n // Powerpack context\n powerpack?: ProjectTableProviderProps['powerpack']\n\n // remote modules\n modules: ProjectTableProviderProps['modules']\n\n // SubtasksManager\n SubtasksManager?: React.ComponentType<SubtasksManagerProps>\n\n // player\n playerOpen?: ProjectTableProviderProps['playerOpen']\n onOpenPlayer?: ProjectTableProviderProps['onOpenPlayer']\n\n // Views\n onResetView?: () => void\n\n // router hooks\n useParams?: typeof useParams\n useNavigate?: typeof useNavigate\n useLocation?: typeof useLocation\n useSearchParams?: typeof useSearchParams\n}\n\nexport const parseRowId = (rowId: string) => rowId?.split(ROW_ID_SEPARATOR)[0] || rowId\n\nexport type TableUser = {\n name: string\n fullName?: string\n}\n\nexport interface ProjectTableProviderProps {\n children: ReactNode\n isInitialized: boolean\n\n // loading\n isLoading: boolean\n isLoadingMore: boolean\n loadingTasks?: LoadingTasks\n error?: string\n softError?: string // shows a warning banner but doesn't block the table from rendering\n softErrorAction?: SoftErrorAction\n users: TableUser[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n scopes: string[]\n\n // Flat folder view\n isFlatFolderView?: boolean\n\n // data\n tasksMap: TaskNodeMap\n foldersMap: FolderNodeMap\n entitiesMap: EntitiesMap\n tasksByFolderMap: TasksByFolderMap\n tableRows?: TableRow[] // any extra rows that we want to add to the table\n selectedFolders?: string[]\n\n // grouping\n groups: EntityGroup[]\n groupRowFunc?: (node: any) => TableRow\n overrideGroupBy?: TableGroupBy\n // filter-aware per-group counts for the active grouping (overlaid onto group rows)\n groupCounts?: GroupCountsMap\n groupCountsComplete?: boolean\n\n // links loading\n loadingLinksEntityIds?: Set<string>\n\n // data functions\n fetchNextPage: (value?: string) => void\n reloadTableData: () => void\n\n // Filters\n queryFilters: {\n filter: QueryFilter | undefined\n filterString?: string\n search: string | undefined\n }\n\n // Hierarchy\n showHierarchy: boolean\n updateShowHierarchy: (showHierarchy: boolean) => void\n\n // Expanded state\n expanded: ExpandedState\n toggleExpanded: (id: string) => void\n updateExpanded: OnChangeFn<ExpandedState>\n setExpanded: React.Dispatch<React.SetStateAction<ExpandedState>>\n\n // context menu\n contextMenuItems: ContextMenuItemConstructors\n\n // powerpack context\n powerpack?: PowerpackContextType\n\n // remote modules\n modules: ProjectTableModulesType\n\n groupByConfig?: {\n entityType?: GroupByEntityType\n }\n\n // Custom hierarchy-like options for the group-by settings panel\n // Overrides the default Hierarchy/Folder options when provided\n hierarchyOptions?: Array<{ value: string; label: string; icon: string }>\n\n // Whether hierarchy mode is active (for panel display only)\n // Used when showHierarchy must stay false for table internals (e.g. infinite scroll)\n // but the panel should still highlight the hierarchy option\n hierarchyActive?: boolean\n\n // SubtasksManager component\n SubtasksManager?: React.ComponentType<SubtasksManagerProps>\n\n // player\n playerOpen?: boolean\n onOpenPlayer?: (\n targetIds: {\n taskId?: string\n folderId?: string\n productId?: string\n versionId?: string\n },\n config?: { quickView?: boolean },\n ) => void\n // views\n onResetView?: () => void\n // router hooks\n useParams?: typeof useParams\n useNavigate?: typeof useNavigate\n useLocation?: typeof useLocation\n useSearchParams?: typeof useSearchParams\n}\n\nexport const ProjectTableProvider = ({\n children,\n foldersMap,\n tableRows,\n tasksMap,\n entitiesMap,\n tasksByFolderMap,\n selectedFolders,\n expanded,\n showHierarchy,\n loadingTasks,\n isLoadingMore,\n isLoading,\n error,\n softError,\n softErrorAction,\n isInitialized,\n users,\n attribFields,\n scopes,\n groups,\n groupRowFunc,\n overrideGroupBy,\n groupCounts,\n groupCountsComplete,\n queryFilters,\n updateShowHierarchy,\n toggleExpanded,\n updateExpanded,\n fetchNextPage,\n reloadTableData,\n setExpanded,\n contextMenuItems,\n powerpack,\n modules,\n loadingLinksEntityIds,\n groupByConfig,\n hierarchyOptions,\n hierarchyActive,\n isFlatFolderView,\n SubtasksManager,\n // player\n playerOpen,\n onOpenPlayer,\n // views\n onResetView,\n useParams,\n useNavigate,\n useLocation,\n useSearchParams,\n}: ProjectTableProviderProps) => {\n const { attrib: projectAttrib } = useProjectContext()\n const {\n groupBy: columnSettingsGroupBy,\n groupByConfig: { showEmpty: showEmptyGroups = false } = {},\n } = useColumnSettingsContext()\n\n // DATA TO TABLE\n const defaultTableData = useBuildProjectDataTable({\n foldersMap,\n tasksMap,\n rows: tableRows,\n tasksByFolderMap,\n expanded,\n showHierarchy,\n isFlatFolderView,\n showEmptyFolders: showEmptyGroups,\n loadingTasks,\n isLoadingMore,\n selectedFolders,\n })\n\n // overrideGroupBy (from view dropdown) takes priority over Customize panel's groupBy.\n // In flat folder view, ignore both — the 'folder' sentinel persisted on the server\n // must not leak into grouping logic (it's only used to distinguish the mode from 'none').\n const effectiveGroupBy = isFlatFolderView ? undefined : overrideGroupBy || columnSettingsGroupBy\n\n const buildGroupByTableData = useBuildGroupByTableData({\n entities: entitiesMap,\n entityType: groupByConfig?.entityType || 'unknown',\n groups: groups,\n attribFields,\n showEmpty: showEmptyGroups,\n groupRowFunc,\n groupCounts,\n groupCountsComplete,\n })\n\n const attribFieldsScoped = useMemo(\n () => attribFields.filter((attrib) => attrib.scope?.some((scope) => scopes.includes(scope))),\n [attribFields, scopes],\n )\n\n // if we are grouping by something, we ignore current tableData and format the data based on the groupBy\n const groupedTableData = useMemo(\n () => !!effectiveGroupBy && buildGroupByTableData(effectiveGroupBy),\n [effectiveGroupBy, buildGroupByTableData],\n )\n\n const tableData =\n effectiveGroupBy && !isFlatFolderView && groupedTableData ? groupedTableData : defaultTableData\n\n const getEntityById = useCallback(\n (id: string, field: string = 'entityId'): EntityMap | undefined => {\n // defensive check to ensure id is a string\n if (typeof id !== 'string') {\n console.warn('getEntityById called with non-string id:', id)\n return undefined\n }\n // always parse the id to remove any suffixes\n // this can happen if the id is a group by id (we need to make the row id unique)\n const parsedId = parseRowId(id)\n if (foldersMap.has(parsedId)) {\n return foldersMap.get(parsedId)\n } else if (tasksMap.has(parsedId)) {\n return tasksMap.get(parsedId)\n } else if (entitiesMap.has(parsedId)) {\n return entitiesMap.get(parsedId)\n }\n\n // if we have not found the entity at all, double check through the maps using field (entityId)\n for (const [_, entity] of entitiesMap) {\n if (entity[field as keyof EntityMap] === parsedId) {\n return entity\n }\n }\n\n // Return undefined if not found\n return undefined\n },\n [foldersMap, tasksMap, entitiesMap],\n )\n\n // get folder relationship functions\n const {\n getInheritedDependents,\n getChildrenEntities,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n getAncestorsOf,\n } = useFolderRelationships({\n entitiesMap,\n tasksMap,\n tasksByFolderMap,\n getEntityById,\n projectAttrib,\n attribFields: attribFields,\n })\n\n const toggleExpandAll: ProjectTableContextType['toggleExpandAll'] = useCallback(\n (rowIds, expandAll) => {\n const expandedState = typeof expanded === 'object' ? expanded : {}\n\n const newExpandedState = { ...expandedState }\n\n rowIds.forEach((rowId) => {\n // get all children of the rowId using tableData\n const childIds = getChildrenEntities(rowId).map((child) => child.id)\n // check if the rowId is expanded\n const isExpanded = expandedState[rowId] || false\n\n if (expandAll !== undefined ? !expandAll : isExpanded) {\n // collapse all children\n newExpandedState[rowId] = false\n childIds.forEach((id) => {\n newExpandedState[id] = false\n })\n } else {\n // expand all children\n newExpandedState[rowId] = true\n childIds.forEach((id) => {\n newExpandedState[id] = true\n })\n }\n })\n\n setExpanded(newExpandedState)\n },\n [expanded, getChildrenEntities, setExpanded],\n )\n\n const toggleExpands: ProjectTableContextType['toggleExpands'] = useCallback(\n (rowIds, expand) => {\n const expandedState = typeof expanded === 'object' ? expanded : {}\n const newExpandedState = { ...expandedState }\n\n rowIds.forEach((rowId) => {\n if (expand !== undefined) {\n // Use the provided expand parameter\n newExpandedState[rowId] = expand\n } else {\n // Toggle based on current state\n newExpandedState[rowId] = !expandedState[rowId]\n }\n })\n\n setExpanded(newExpandedState)\n },\n [expanded, setExpanded],\n )\n\n return (\n <ProjectTableContext.Provider\n value={{\n // from this context\n tableData,\n // forwarded on\n isInitialized,\n isLoading,\n error,\n softError,\n softErrorAction,\n attribFields,\n attribFieldsScoped,\n scopes,\n users,\n tasksMap,\n foldersMap,\n entitiesMap,\n fetchNextPage,\n reloadTableData,\n groups,\n overrideGroupBy,\n queryFilters,\n loadingLinksEntityIds,\n // hierarchy\n showHierarchy,\n updateShowHierarchy,\n hierarchyOptions,\n hierarchyActive,\n // flat folder view\n isFlatFolderView,\n // expanded state\n expanded,\n setExpanded,\n toggleExpanded,\n updateExpanded,\n toggleExpandAll,\n toggleExpands,\n getEntityById,\n // folder relationships\n getInheritedDependents,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n getAncestorsOf,\n // context menu\n contextMenuItems,\n // powerpack context\n powerpack,\n modules,\n // SubtasksManager\n SubtasksManager,\n // player\n playerOpen,\n onOpenPlayer,\n // views\n onResetView,\n // router hooks\n useParams,\n useNavigate,\n useLocation,\n useSearchParams,\n }}\n >\n {children}\n </ProjectTableContext.Provider>\n )\n}\n\nexport const useProjectTableContext = () => {\n const context = useContext(ProjectTableContext)\n if (!context) {\n throw new Error('useProjectTableContext must be used within a ProjectTableProvider')\n }\n return context\n}\n"],"names":["parseRowId","rowId","ROW_ID_SEPARATOR","ProjectTableProvider","children","foldersMap","tableRows","tasksMap","entitiesMap","tasksByFolderMap","selectedFolders","expanded","showHierarchy","loadingTasks","isLoadingMore","isLoading","error","softError","softErrorAction","isInitialized","users","attribFields","scopes","groups","groupRowFunc","overrideGroupBy","groupCounts","groupCountsComplete","queryFilters","updateShowHierarchy","toggleExpanded","updateExpanded","fetchNextPage","reloadTableData","setExpanded","contextMenuItems","powerpack","modules","loadingLinksEntityIds","groupByConfig","hierarchyOptions","hierarchyActive","isFlatFolderView","SubtasksManager","playerOpen","onOpenPlayer","onResetView","useParams","useNavigate","useLocation","useSearchParams","projectAttrib","useProjectContext","columnSettingsGroupBy","showEmptyGroups","useColumnSettingsContext","defaultTableData","useBuildProjectDataTable","effectiveGroupBy","buildGroupByTableData","useBuildGroupByTableData","attribFieldsScoped","useMemo","attrib","scope","groupedTableData","tableData","getEntityById","useCallback","id","field","parsedId","_","entity","getInheritedDependents","getChildrenEntities","findInheritedValueFromAncestors","findNonInheritedValues","getAncestorsOf","useFolderRelationships","toggleExpandAll","rowIds","expandAll","expandedState","newExpandedState","childIds","child","isExpanded","toggleExpands","expand","jsx","ProjectTableContext","useProjectTableContext","context","useContext"],"mappings":"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"}
1
+ {"version":3,"file":"ProjectTableContext.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ProjectTableContext.tsx"],"sourcesContent":["/**\n * Project Table Context\n *\n * This context serves as the central data management layer for the project table component.\n * It performs three main functions:\n *\n * 1. **Props Forwarding**: Acts as a bridge to forward essential props (project info, users,\n * attributes, filters, etc.) down to child components throughout the table hierarchy.\n *\n * 2. **Table Data Structure Building**: Transforms raw project data into structured table rows\n * that can be consumed by the table component. This includes processing folders, tasks,\n * and entities into a unified table format.\n *\n * 3. **Multi-Modal Data Presentation**: Supports three different data presentation modes:\n * - **Hierarchy Mode**: Builds nested folder/task relationships with expandable rows\n * - **Tasks List Mode**: Flattened view of tasks without hierarchical structure\n * - **Groups Mode**: Groups entities by specified criteria (entity type, custom groups)\n *\n * The context also provides utility functions for entity relationships, expansion state\n * management, filtering, and folder inheritance operations.\n */\nimport { ReactNode, useCallback, useContext, useMemo } from 'react'\nimport { useParams, useNavigate, useLocation, useSearchParams } from 'react-router-dom'\nimport { ExpandedState, OnChangeFn } from '@tanstack/react-table'\nimport useBuildProjectDataTable from '../hooks/useBuildProjectDataTable'\nimport {\n EntitiesMap,\n EntityMap,\n FolderNodeMap,\n TableRow,\n TaskNodeMap,\n TasksByFolderMap,\n} from '../types/table'\nimport useFolderRelationships, {\n FindInheritedValueFromAncestors,\n FindNonInheritedValues,\n GetAncestorsOf,\n GetInheritedDependents,\n} from '../hooks/useFolderRelationships'\nimport { ProjectTableAttribute, LoadingTasks, SoftErrorAction } from '../types'\nimport { QueryFilter } from '../types/folders'\nimport { ContextMenuItemConstructors } from '../hooks/useCellContextMenu'\nimport { EntityGroup } from '@shared/api'\nimport type { GroupCountsMap } from '@shared/api'\nimport useBuildGroupByTableData, {\n GroupByEntityType,\n ROW_ID_SEPARATOR,\n} from '../hooks/useBuildGroupByTableData'\nimport { PowerpackContextType, useProjectContext, OnSyncDataCallback } from '@shared/context'\nimport { TableGroupBy, useColumnSettingsContext } from './ColumnSettingsContext'\nimport { ProjectTableModulesType } from '@shared/hooks'\nimport type { SubtasksManagerProps } from '@shared/components'\nimport { RowId } from '../utils'\nimport { ProjectTableContext } from './ProjectTableContextInstance'\n\nexport type ToggleExpandAll = (rowIds: RowId[], expand?: boolean) => void\nexport type ToggleExpands = (rowIds: RowId[], expand?: boolean) => void\n\nexport interface ProjectTableContextType {\n isInitialized: ProjectTableProviderProps['isInitialized']\n isLoading: ProjectTableProviderProps['isLoading']\n users: ProjectTableProviderProps['users']\n // Attributes\n attribFields: ProjectTableProviderProps['attribFields']\n attribFieldsScoped: ProjectTableProviderProps['attribFields']\n error?: string\n softError?: string // shows a warning banner but doesn't block the table from rendering\n softErrorAction?: SoftErrorAction\n\n scopes: ProjectTableProviderProps['scopes']\n\n // Data\n tableData: TableRow[]\n tasksMap: ProjectTableProviderProps['tasksMap']\n foldersMap: ProjectTableProviderProps['foldersMap']\n entitiesMap: ProjectTableProviderProps['entitiesMap']\n fetchNextPage: ProjectTableProviderProps['fetchNextPage']\n onSyncData: ProjectTableProviderProps['onSyncData']\n getEntityById: (id: string, field?: string) => EntityMap | undefined // if the entity is not found, we explicity search for the field\n loadingLinksEntityIds?: Set<string>\n\n // grouping\n groups: ProjectTableProviderProps['groups']\n overrideGroupBy?: ProjectTableProviderProps['overrideGroupBy']\n\n // Filters\n queryFilters: ProjectTableProviderProps['queryFilters']\n\n // Hierarchy\n showHierarchy: ProjectTableProviderProps['showHierarchy']\n updateShowHierarchy: ProjectTableProviderProps['updateShowHierarchy']\n hierarchyOptions?: ProjectTableProviderProps['hierarchyOptions']\n hierarchyActive?: ProjectTableProviderProps['hierarchyActive']\n\n // Flat folder view\n isFlatFolderView?: boolean\n\n // Expanded state\n expanded: ProjectTableProviderProps['expanded']\n setExpanded: ProjectTableProviderProps['setExpanded']\n toggleExpanded: ProjectTableProviderProps['toggleExpanded']\n updateExpanded: ProjectTableProviderProps['updateExpanded']\n toggleExpandAll: ToggleExpandAll\n toggleExpands: ToggleExpands // expand/collapse multiple rows at once\n\n // Folder Relationships\n getInheritedDependents: GetInheritedDependents\n findInheritedValueFromAncestors: FindInheritedValueFromAncestors\n findNonInheritedValues: FindNonInheritedValues\n getAncestorsOf: GetAncestorsOf\n\n // Context menu\n contextMenuItems: ProjectTableProviderProps['contextMenuItems']\n\n // Powerpack context\n powerpack?: ProjectTableProviderProps['powerpack']\n\n // remote modules\n modules: ProjectTableProviderProps['modules']\n\n // SubtasksManager\n SubtasksManager?: React.ComponentType<SubtasksManagerProps>\n\n // player\n playerOpen?: ProjectTableProviderProps['playerOpen']\n onOpenPlayer?: ProjectTableProviderProps['onOpenPlayer']\n\n // Views\n onResetView?: () => void\n\n // router hooks\n useParams?: typeof useParams\n useNavigate?: typeof useNavigate\n useLocation?: typeof useLocation\n useSearchParams?: typeof useSearchParams\n}\n\nexport const parseRowId = (rowId: string) => rowId?.split(ROW_ID_SEPARATOR)[0] || rowId\n\nexport type TableUser = {\n name: string\n fullName?: string\n}\n\nexport interface ProjectTableProviderProps {\n children: ReactNode\n isInitialized: boolean\n\n // loading\n isLoading: boolean\n isLoadingMore: boolean\n loadingTasks?: LoadingTasks\n error?: string\n softError?: string // shows a warning banner but doesn't block the table from rendering\n softErrorAction?: SoftErrorAction\n users: TableUser[]\n // Attributes\n attribFields: ProjectTableAttribute[]\n scopes: string[]\n\n // Flat folder view\n isFlatFolderView?: boolean\n\n // data\n tasksMap: TaskNodeMap\n foldersMap: FolderNodeMap\n entitiesMap: EntitiesMap\n tasksByFolderMap: TasksByFolderMap\n tableRows?: TableRow[] // any extra rows that we want to add to the table\n selectedFolders?: string[]\n\n // grouping\n groups: EntityGroup[]\n groupRowFunc?: (node: any) => TableRow\n overrideGroupBy?: TableGroupBy\n // filter-aware per-group counts for the active grouping (overlaid onto group rows)\n groupCounts?: GroupCountsMap\n groupCountsComplete?: boolean\n\n // links loading\n loadingLinksEntityIds?: Set<string>\n\n // data functions\n fetchNextPage: (value?: string) => void\n onSyncData: OnSyncDataCallback\n\n // Filters\n queryFilters: {\n filter: QueryFilter | undefined\n filterString?: string\n search: string | undefined\n }\n\n // Hierarchy\n showHierarchy: boolean\n updateShowHierarchy: (showHierarchy: boolean) => void\n\n // Expanded state\n expanded: ExpandedState\n toggleExpanded: (id: string) => void\n updateExpanded: OnChangeFn<ExpandedState>\n setExpanded: React.Dispatch<React.SetStateAction<ExpandedState>>\n\n // context menu\n contextMenuItems: ContextMenuItemConstructors\n\n // powerpack context\n powerpack?: PowerpackContextType\n\n // remote modules\n modules: ProjectTableModulesType\n\n groupByConfig?: {\n entityType?: GroupByEntityType\n }\n\n // Custom hierarchy-like options for the group-by settings panel\n // Overrides the default Hierarchy/Folder options when provided\n hierarchyOptions?: Array<{ value: string; label: string; icon: string }>\n\n // Whether hierarchy mode is active (for panel display only)\n // Used when showHierarchy must stay false for table internals (e.g. infinite scroll)\n // but the panel should still highlight the hierarchy option\n hierarchyActive?: boolean\n\n // SubtasksManager component\n SubtasksManager?: React.ComponentType<SubtasksManagerProps>\n\n // player\n playerOpen?: boolean\n onOpenPlayer?: (\n targetIds: {\n taskId?: string\n folderId?: string\n productId?: string\n versionId?: string\n },\n config?: { quickView?: boolean },\n ) => void\n // views\n onResetView?: () => void\n // router hooks\n useParams?: typeof useParams\n useNavigate?: typeof useNavigate\n useLocation?: typeof useLocation\n useSearchParams?: typeof useSearchParams\n}\n\nexport const ProjectTableProvider = ({\n children,\n foldersMap,\n tableRows,\n tasksMap,\n entitiesMap,\n tasksByFolderMap,\n selectedFolders,\n expanded,\n showHierarchy,\n loadingTasks,\n isLoadingMore,\n isLoading,\n error,\n softError,\n softErrorAction,\n isInitialized,\n users,\n attribFields,\n scopes,\n groups,\n groupRowFunc,\n overrideGroupBy,\n groupCounts,\n groupCountsComplete,\n queryFilters,\n updateShowHierarchy,\n toggleExpanded,\n updateExpanded,\n fetchNextPage,\n onSyncData,\n setExpanded,\n contextMenuItems,\n powerpack,\n modules,\n loadingLinksEntityIds,\n groupByConfig,\n hierarchyOptions,\n hierarchyActive,\n isFlatFolderView,\n SubtasksManager,\n // player\n playerOpen,\n onOpenPlayer,\n // views\n onResetView,\n useParams,\n useNavigate,\n useLocation,\n useSearchParams,\n}: ProjectTableProviderProps) => {\n const { attrib: projectAttrib } = useProjectContext()\n const {\n groupBy: columnSettingsGroupBy,\n groupByConfig: { showEmpty: showEmptyGroups = false } = {},\n } = useColumnSettingsContext()\n\n // DATA TO TABLE\n const defaultTableData = useBuildProjectDataTable({\n foldersMap,\n tasksMap,\n rows: tableRows,\n tasksByFolderMap,\n expanded,\n showHierarchy,\n isFlatFolderView,\n showEmptyFolders: showEmptyGroups,\n loadingTasks,\n isLoadingMore,\n selectedFolders,\n })\n\n // overrideGroupBy (from view dropdown) takes priority over Customize panel's groupBy.\n // In flat folder view, ignore both — the 'folder' sentinel persisted on the server\n // must not leak into grouping logic (it's only used to distinguish the mode from 'none').\n const effectiveGroupBy = isFlatFolderView ? undefined : overrideGroupBy || columnSettingsGroupBy\n\n const buildGroupByTableData = useBuildGroupByTableData({\n entities: entitiesMap,\n entityType: groupByConfig?.entityType || 'unknown',\n groups: groups,\n attribFields,\n showEmpty: showEmptyGroups,\n groupRowFunc,\n groupCounts,\n groupCountsComplete,\n })\n\n const attribFieldsScoped = useMemo(\n () => attribFields.filter((attrib) => attrib.scope?.some((scope) => scopes.includes(scope))),\n [attribFields, scopes],\n )\n\n // if we are grouping by something, we ignore current tableData and format the data based on the groupBy\n const groupedTableData = useMemo(\n () => !!effectiveGroupBy && buildGroupByTableData(effectiveGroupBy),\n [effectiveGroupBy, buildGroupByTableData],\n )\n\n const tableData =\n effectiveGroupBy && !isFlatFolderView && groupedTableData ? groupedTableData : defaultTableData\n\n const getEntityById = useCallback(\n (id: string, field: string = 'entityId'): EntityMap | undefined => {\n // defensive check to ensure id is a string\n if (typeof id !== 'string') {\n console.warn('getEntityById called with non-string id:', id)\n return undefined\n }\n // always parse the id to remove any suffixes\n // this can happen if the id is a group by id (we need to make the row id unique)\n const parsedId = parseRowId(id)\n if (foldersMap.has(parsedId)) {\n return foldersMap.get(parsedId)\n } else if (tasksMap.has(parsedId)) {\n return tasksMap.get(parsedId)\n } else if (entitiesMap.has(parsedId)) {\n return entitiesMap.get(parsedId)\n }\n\n // if we have not found the entity at all, double check through the maps using field (entityId)\n for (const [_, entity] of entitiesMap) {\n if (entity[field as keyof EntityMap] === parsedId) {\n return entity\n }\n }\n\n // Return undefined if not found\n return undefined\n },\n [foldersMap, tasksMap, entitiesMap],\n )\n\n // get folder relationship functions\n const {\n getInheritedDependents,\n getChildrenEntities,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n getAncestorsOf,\n } = useFolderRelationships({\n entitiesMap,\n tasksMap,\n tasksByFolderMap,\n getEntityById,\n projectAttrib,\n attribFields: attribFields,\n })\n\n const toggleExpandAll: ProjectTableContextType['toggleExpandAll'] = useCallback(\n (rowIds, expandAll) => {\n const expandedState = typeof expanded === 'object' ? expanded : {}\n\n const newExpandedState = { ...expandedState }\n\n rowIds.forEach((rowId) => {\n // get all children of the rowId using tableData\n const childIds = getChildrenEntities(rowId).map((child) => child.id)\n // check if the rowId is expanded\n const isExpanded = expandedState[rowId] || false\n\n if (expandAll !== undefined ? !expandAll : isExpanded) {\n // collapse all children\n newExpandedState[rowId] = false\n childIds.forEach((id) => {\n newExpandedState[id] = false\n })\n } else {\n // expand all children\n newExpandedState[rowId] = true\n childIds.forEach((id) => {\n newExpandedState[id] = true\n })\n }\n })\n\n setExpanded(newExpandedState)\n },\n [expanded, getChildrenEntities, setExpanded],\n )\n\n const toggleExpands: ProjectTableContextType['toggleExpands'] = useCallback(\n (rowIds, expand) => {\n const expandedState = typeof expanded === 'object' ? expanded : {}\n const newExpandedState = { ...expandedState }\n\n rowIds.forEach((rowId) => {\n if (expand !== undefined) {\n // Use the provided expand parameter\n newExpandedState[rowId] = expand\n } else {\n // Toggle based on current state\n newExpandedState[rowId] = !expandedState[rowId]\n }\n })\n\n setExpanded(newExpandedState)\n },\n [expanded, setExpanded],\n )\n\n return (\n <ProjectTableContext.Provider\n value={{\n // from this context\n tableData,\n // forwarded on\n isInitialized,\n isLoading,\n error,\n softError,\n softErrorAction,\n attribFields,\n attribFieldsScoped,\n scopes,\n users,\n tasksMap,\n foldersMap,\n entitiesMap,\n fetchNextPage,\n onSyncData,\n groups,\n overrideGroupBy,\n queryFilters,\n loadingLinksEntityIds,\n // hierarchy\n showHierarchy,\n updateShowHierarchy,\n hierarchyOptions,\n hierarchyActive,\n // flat folder view\n isFlatFolderView,\n // expanded state\n expanded,\n setExpanded,\n toggleExpanded,\n updateExpanded,\n toggleExpandAll,\n toggleExpands,\n getEntityById,\n // folder relationships\n getInheritedDependents,\n findInheritedValueFromAncestors,\n findNonInheritedValues,\n getAncestorsOf,\n // context menu\n contextMenuItems,\n // powerpack context\n powerpack,\n modules,\n // SubtasksManager\n SubtasksManager,\n // player\n playerOpen,\n onOpenPlayer,\n // views\n onResetView,\n // router hooks\n useParams,\n useNavigate,\n useLocation,\n useSearchParams,\n }}\n >\n {children}\n </ProjectTableContext.Provider>\n )\n}\n\nexport const useProjectTableContext = () => {\n const context = useContext(ProjectTableContext)\n if (!context) {\n throw new Error('useProjectTableContext must be used within a ProjectTableProvider')\n }\n return context\n}\n"],"names":["parseRowId","rowId","ROW_ID_SEPARATOR","ProjectTableProvider","children","foldersMap","tableRows","tasksMap","entitiesMap","tasksByFolderMap","selectedFolders","expanded","showHierarchy","loadingTasks","isLoadingMore","isLoading","error","softError","softErrorAction","isInitialized","users","attribFields","scopes","groups","groupRowFunc","overrideGroupBy","groupCounts","groupCountsComplete","queryFilters","updateShowHierarchy","toggleExpanded","updateExpanded","fetchNextPage","onSyncData","setExpanded","contextMenuItems","powerpack","modules","loadingLinksEntityIds","groupByConfig","hierarchyOptions","hierarchyActive","isFlatFolderView","SubtasksManager","playerOpen","onOpenPlayer","onResetView","useParams","useNavigate","useLocation","useSearchParams","projectAttrib","useProjectContext","columnSettingsGroupBy","showEmptyGroups","useColumnSettingsContext","defaultTableData","useBuildProjectDataTable","effectiveGroupBy","buildGroupByTableData","useBuildGroupByTableData","attribFieldsScoped","useMemo","attrib","scope","groupedTableData","tableData","getEntityById","useCallback","id","field","parsedId","_","entity","getInheritedDependents","getChildrenEntities","findInheritedValueFromAncestors","findNonInheritedValues","getAncestorsOf","useFolderRelationships","toggleExpandAll","rowIds","expandAll","expandedState","newExpandedState","childIds","child","isExpanded","toggleExpands","expand","jsx","ProjectTableContext","useProjectTableContext","context","useContext"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Q=require("../../../../../_virtual/jsx-runtime.cjs.js"),o=require("react"),t=require("../utils/cellUtils.cjs.js"),X=require("./SelectionCellsContext.cjs.js");require("react-toastify");require("./ProjectTableQueriesContext.cjs.js");require("short-uuid");const p=require("../constants.cjs.js");require("@ynput/ayon-react-components");require("../../../components/SearchFilter/filterDates.cjs.js");require("date-fns");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.cjs.js");require("../widgets/EnumCellValue.cjs.js");require("../widgets/TextWidget.cjs.js");require("../widgets/MarkdownWidget.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("../widgets/LinksWidget.cjs.js");require("../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("clsx");require("../../../components/AttributeEditor/AttributeEditor.cjs.js");require("../../../components/AttributeEditor/attributeTypeMap.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/Chips/Chips.cjs.js");require("react-dom");require("../../../components/DateRangePicker/DateRangePicker.styled.cjs.js");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/dataImport.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/projectFolders.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/bundles/getBundles.cjs.js");require("../../../api/queries/bundles/updateBundles.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/columnStats/metricTargets.cjs.js");require("../../../api/queries/columnStats/groupCounts.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/products/getFolderProducts.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/projectFolders/projectFolders.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/tasks/getTasks.cjs.js");require("../../../api/queries/tasks/updateTasks.cjs.js");require("../../../api/queries/teams/getTeams.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");require("../../../../../_virtual/index.cjs.js");require("../../../../../node_modules/refractor/lib/common.cjs.js");require("../../../../../node_modules/refractor/lib/all.cjs.js");;/* empty css */require("lodash");require("uuid");require("../../../util/pubsub.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("react-quill-ayon");require("../../../components/DetailsPanelDetails/BorderedSection.cjs.js");require("../../../components/QuillListStyles/QuillListStyles.cjs.js");require("../../../components/DetailsPanelDetails/DescriptionSection.styles.cjs.js");require("react-markdown");require("remark-gfm");require("rehype-raw");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../../components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js");require("../../Feed/components/CommentInput/modules/index.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("../../../context/PowerpackContextInstance.cjs.js");require("../../../context/UriContext.cjs.js");require("../../../context/DetailsPanelContextInstance.cjs.js");require("../../../context/SubtasksModulesContextInstance.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContextInstance.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/DoneCheckbox/DoneCheckbox.cjs.js");require("../../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("../../../components/InfoMessage/InfoMessage.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltipItem.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/TeamTooltip/TeamTooltip.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("remark-emoji");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/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/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("../../Feed/components/FeedSearchFilter.cjs.js");require("@tanstack/react-virtual");require("../ProjectTreeTable.styled.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../components/SelectionCell.cjs.js");require("./CellEditingContext.cjs.js");require("./ClipboardContext.cjs.js");require("./ColumnSettingsContext.cjs.js");require("./SelectedRowsContext.cjs.js");require("./DetailsPanelEntityContext.cjs.js");require("./ProjectDataContextInstance.cjs.js");require("../components/TableFooterRow.cjs.js");require("../components/DeleteConfirmContent.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../Slicer/components/Slicer.cjs.js");require("../../Slicer/context/SlicerContextInstance.cjs.js");require("../../Slicer/components/SlicerDropdownFallback.cjs.js");require("../../Slicer/hooks/useTableDataBySlice.cjs.js");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../../DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.styled.cjs.js");require("../../DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js");require("../../DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js");require("../../DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.cjs.js");require("../../DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../Views/context/ViewsContextInstance.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../ListTable/ListTableRow.cjs.js");require("../../ListTable/ListTable.styled.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("axios");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../../components/Feedback/FeedbackContextInstance.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/FreeTrialLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/SizeSlider/SizeSlider.cjs.js");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/SearchFilter/CustomDateRangeDialog.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContextInstance.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/Menu/Menu.styled.cjs.js");require("../../../components/Menu/MenuItem.cjs.js");require("../../../components/ReviewablesSelector/ReviewablesSelector.cjs.js");require("../../../components/ColumnHeaderMenuUI.cjs.js");require("../widgets/EmptyWidget.cjs.js");require("../widgets/ErrorWidget.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");require("./ProjectTableContextInstance.cjs.js");const Y=require("../hooks/useCheckSelectedCellsVisible.cjs.js"),Z=({children:z})=>{const[n,I]=o.useState(new Set),[f,d]=o.useState(null),[T,O]=o.useState(!1),[w,S]=o.useState(null),[g,V]=o.useState({rowIdToIndex:new Map,colIdToIndex:new Map,indexToRowId:new Map,indexToColId:new Map}),m=e=>JSON.stringify(Array.from(e.entries())),s=o.useMemo(()=>g,[m(g.rowIdToIndex),m(g.colIdToIndex),m(g.indexToRowId),m(g.indexToColId)]),_=o.useRef(!1),P=o.useMemo(()=>Array.from(n).filter(e=>t.parseCellId(e)?.colId===p.ROW_SELECTION_COLUMN_ID&&t.parseCellId(e)?.rowId).map(e=>t.parseCellId(e)?.rowId),[n]);Y.useCheckSelectedCellsVisible({selectedCells:n,setSelectedCells:I,focusedCellId:f,setFocusedCellId:d});const h=o.useRef(!1),E=o.useCallback((e,u)=>{const q=new Map,i=new Map,r=new Map,l=new Map;e.forEach((c,a)=>{q.set(c,a),r.set(a,c)}),u.forEach((c,a)=>{i.set(c,a),l.set(a,c)}),V({rowIdToIndex:q,colIdToIndex:i,indexToRowId:r,indexToColId:l})},[]),C=o.useCallback((e,u)=>{I(q=>{let i=new Set(e);if(u.colId!==p.ROW_SELECTION_COLUMN_ID&&u.colId!==p.DRAG_HANDLE_COLUMN_ID){const r=Array.from(q).filter(l=>t.parseCellId(l)?.colId===p.ROW_SELECTION_COLUMN_ID);r.length&&(i=new Set([...i,...r]))}return i})},[]),M=o.useCallback((e,u,q)=>{q||C(new Set,e);const i=s.rowIdToIndex.get(e.rowId)??0,r=s.colIdToIndex.get(e.colId)??0,l=s.rowIdToIndex.get(u.rowId)??0,c=s.colIdToIndex.get(u.colId)??0,a=Math.min(i,l),x=Math.max(i,l),J=Math.min(r,c),K=Math.max(r,c),G=new Set(q?n:[]);for(let b=a;b<=x;b++){const W=s.indexToRowId.get(b);if(W)for(let k=J;k<=K;k++){const F=s.indexToColId.get(k);F&&G.add(t.getCellId(W,F))}}return G},[s,n,C]),N=o.useCallback((e,u)=>{const q=t.parseCellId(e);q&&(O(!0),h.current=u,_.current=n.has(e),u?I(i=>{const r=new Set(i);return r.has(e)?(r.delete(e),f===e&&(r.size>0?d(Array.from(r)[Array.from(r).length-1]):d(null))):(r.add(e),d(e),S(q)),r}):n.size===1&&n.has(e)&&[p.ROW_SELECTION_COLUMN_ID,"name"].includes(q.colId)?(I(new Set),S(null),d(null)):(C(new Set([e]),q),S(q),d(e)))},[n,f,C]),L=o.useCallback((e,u)=>{if(!T||!w)return;const q=t.parseCellId(e);if(q)if(u)I(i=>{const r=new Set(i);return t.parseCellId(e)&&(_.current?r.delete(e):r.add(e)),r});else{if(h.current)return;const i=M(w,q,h.current);C(i,q)}},[T,w,M,C]),A=o.useCallback(()=>{O(!1)},[]),y=o.useCallback((e,u,q)=>{const i=t.parseCellId(e);if(i)if(q&&w){const r=M(w,i,u);C(r,i)}else u?I(r=>{const l=new Set(r);return l.has(e)?l.delete(e):l.add(e),l}):(C(new Set([e]),i),S(i))},[w,M,C]),B=o.useCallback(e=>{d(e)},[]),D=o.useCallback(()=>{I(new Set),S(null),d(null)},[]),R=o.useCallback(e=>n.has(e),[n]),U=o.useCallback(e=>e===f,[f]),v=o.useCallback(e=>t.parseCellId(e),[]),j=o.useCallback(e=>{if(!R(e))return[];const u=t.parseCellId(e);if(!u)return[];const q=s.rowIdToIndex.get(u.rowId),i=s.colIdToIndex.get(u.colId);if(q===void 0||i===void 0)return[];const r=s.indexToRowId.get(q-1),l=s.indexToColId.get(i+1),c=s.indexToRowId.get(q+1),a=s.indexToColId.get(i-1);let x=t.BorderPosition.None;return(!r||!n.has(t.getCellId(r,u.colId)))&&(x|=t.BorderPosition.Top),(!l||!n.has(t.getCellId(u.rowId,l)))&&(x|=t.BorderPosition.Right),(!c||!n.has(t.getCellId(c,u.colId)))&&(x|=t.BorderPosition.Bottom),(!a||!n.has(t.getCellId(u.rowId,a)))&&(x|=t.BorderPosition.Left),t.getBorderClasses(x)},[n,s,R]),H=o.useMemo(()=>({selectedCells:n,selectedRows:P,focusedCellId:f,selectionInProgress:T,anchorCell:w,gridMap:s,setSelectedCells:I,setFocusedCellId:d,setAnchorCell:S,registerGrid:E,selectCell:y,startSelection:N,extendSelection:L,endSelection:A,focusCell:B,clearSelection:D,isCellSelected:R,isCellFocused:U,getCellPositionFromId:v,getCellBorderClasses:j}),[n,P,f,T,w,s,I,d,S,E,y,N,L,A,B,D,R,U,v,j]);return Q.jsxRuntimeExports.jsx(X.SelectionCellsContext.Provider,{value:H,children:z})};exports.SelectionCellsProvider=Z;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Q=require("../../../../../_virtual/jsx-runtime.cjs.js"),o=require("react"),t=require("../utils/cellUtils.cjs.js"),X=require("./SelectionCellsContext.cjs.js");require("react-toastify");require("./ProjectTableQueriesContext.cjs.js");require("short-uuid");const p=require("../constants.cjs.js");require("@ynput/ayon-react-components");require("../../../components/SearchFilter/filterDates.cjs.js");require("date-fns");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.cjs.js");require("../widgets/EnumCellValue.cjs.js");require("../widgets/TextWidget.cjs.js");require("../widgets/MarkdownWidget.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("../widgets/LinksWidget.cjs.js");require("../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("clsx");require("../../../components/AttributeEditor/AttributeEditor.cjs.js");require("../../../components/AttributeEditor/attributeTypeMap.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/Chips/Chips.cjs.js");require("react-dom");require("../../../components/DateRangePicker/DateRangePicker.styled.cjs.js");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/dataImport.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/projectFolders.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/bundles/getBundles.cjs.js");require("../../../api/queries/bundles/updateBundles.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/columnStats/metricTargets.cjs.js");require("../../../api/queries/columnStats/groupCounts.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/products/getFolderProducts.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/projectFolders/projectFolders.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/tasks/getTasks.cjs.js");require("../../../api/queries/tasks/updateTasks.cjs.js");require("../../../api/queries/teams/getTeams.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../api/queries/uris/getUris.cjs.js");require("../../../../../_virtual/index.cjs.js");require("../../../../../node_modules/refractor/lib/common.cjs.js");require("../../../../../node_modules/refractor/lib/all.cjs.js");;/* empty css */require("lodash");require("uuid");require("../../../util/pubsub.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("react-quill-ayon");require("../../../components/DetailsPanelDetails/BorderedSection.cjs.js");require("../../../components/QuillListStyles/QuillListStyles.cjs.js");require("../../../components/DetailsPanelDetails/DescriptionSection.styles.cjs.js");require("react-markdown");require("remark-gfm");require("rehype-raw");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../../components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js");require("../../Feed/components/CommentInput/modules/index.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("../../../context/PowerpackContextInstance.cjs.js");require("../../../context/UriContext.cjs.js");require("../../../context/DetailsPanelContextInstance.cjs.js");require("../../../context/SubtasksModulesContextInstance.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContextInstance.cjs.js");require("../../../context/EntityUpdatesContextInstance.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltipItem.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/TeamTooltip/TeamTooltip.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("remark-emoji");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/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/ActivityStatusChange/ActivityStatusSecondary.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/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("../../Feed/components/FeedSearchFilter.cjs.js");require("@tanstack/react-virtual");require("../ProjectTreeTable.styled.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../components/SelectionCell.cjs.js");require("./CellEditingContext.cjs.js");require("./ClipboardContext.cjs.js");require("./ColumnSettingsContext.cjs.js");require("./SelectedRowsContext.cjs.js");require("./DetailsPanelEntityContext.cjs.js");require("./ProjectDataContextInstance.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../components/TableFooterRow.cjs.js");require("../components/DeleteConfirmContent.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../Slicer/components/Slicer.cjs.js");require("../../Slicer/context/SlicerContextInstance.cjs.js");require("../../Slicer/components/SlicerDropdownFallback.cjs.js");require("../../Slicer/hooks/useTableDataBySlice.cjs.js");require("react-redux");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../../DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.styled.cjs.js");require("../../DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js");require("../../DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js");require("../../DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.cjs.js");require("../../DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../Views/context/ViewsContextInstance.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../ListTable/ListTableRow.cjs.js");require("../../ListTable/ListTable.styled.cjs.js");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/DoneCheckbox/DoneCheckbox.cjs.js");require("../../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../../components/InfoMessage/InfoMessage.cjs.js");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("axios");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../../components/Feedback/FeedbackContextInstance.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/FreeTrialLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/SizeSlider/SizeSlider.cjs.js");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/SearchFilter/CustomDateRangeDialog.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/SyncButton/SyncButton.cjs.js");require("../../../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContextInstance.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/Menu/Menu.styled.cjs.js");require("../../../components/Menu/MenuItem.cjs.js");require("../../../components/ReviewablesSelector/ReviewablesSelector.cjs.js");require("../../../components/ColumnHeaderMenuUI.cjs.js");require("../widgets/EmptyWidget.cjs.js");require("../widgets/ErrorWidget.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");require("./ProjectTableContextInstance.cjs.js");const Y=require("../hooks/useCheckSelectedCellsVisible.cjs.js"),Z=({children:z})=>{const[n,I]=o.useState(new Set),[f,d]=o.useState(null),[T,O]=o.useState(!1),[w,S]=o.useState(null),[g,V]=o.useState({rowIdToIndex:new Map,colIdToIndex:new Map,indexToRowId:new Map,indexToColId:new Map}),m=e=>JSON.stringify(Array.from(e.entries())),s=o.useMemo(()=>g,[m(g.rowIdToIndex),m(g.colIdToIndex),m(g.indexToRowId),m(g.indexToColId)]),_=o.useRef(!1),P=o.useMemo(()=>Array.from(n).filter(e=>t.parseCellId(e)?.colId===p.ROW_SELECTION_COLUMN_ID&&t.parseCellId(e)?.rowId).map(e=>t.parseCellId(e)?.rowId),[n]);Y.useCheckSelectedCellsVisible({selectedCells:n,setSelectedCells:I,focusedCellId:f,setFocusedCellId:d});const h=o.useRef(!1),E=o.useCallback((e,u)=>{const q=new Map,i=new Map,r=new Map,l=new Map;e.forEach((c,a)=>{q.set(c,a),r.set(a,c)}),u.forEach((c,a)=>{i.set(c,a),l.set(a,c)}),V({rowIdToIndex:q,colIdToIndex:i,indexToRowId:r,indexToColId:l})},[]),C=o.useCallback((e,u)=>{I(q=>{let i=new Set(e);if(u.colId!==p.ROW_SELECTION_COLUMN_ID&&u.colId!==p.DRAG_HANDLE_COLUMN_ID){const r=Array.from(q).filter(l=>t.parseCellId(l)?.colId===p.ROW_SELECTION_COLUMN_ID);r.length&&(i=new Set([...i,...r]))}return i})},[]),M=o.useCallback((e,u,q)=>{q||C(new Set,e);const i=s.rowIdToIndex.get(e.rowId)??0,r=s.colIdToIndex.get(e.colId)??0,l=s.rowIdToIndex.get(u.rowId)??0,c=s.colIdToIndex.get(u.colId)??0,a=Math.min(i,l),x=Math.max(i,l),J=Math.min(r,c),K=Math.max(r,c),G=new Set(q?n:[]);for(let b=a;b<=x;b++){const W=s.indexToRowId.get(b);if(W)for(let k=J;k<=K;k++){const F=s.indexToColId.get(k);F&&G.add(t.getCellId(W,F))}}return G},[s,n,C]),N=o.useCallback((e,u)=>{const q=t.parseCellId(e);q&&(O(!0),h.current=u,_.current=n.has(e),u?I(i=>{const r=new Set(i);return r.has(e)?(r.delete(e),f===e&&(r.size>0?d(Array.from(r)[Array.from(r).length-1]):d(null))):(r.add(e),d(e),S(q)),r}):n.size===1&&n.has(e)&&[p.ROW_SELECTION_COLUMN_ID,"name"].includes(q.colId)?(I(new Set),S(null),d(null)):(C(new Set([e]),q),S(q),d(e)))},[n,f,C]),L=o.useCallback((e,u)=>{if(!T||!w)return;const q=t.parseCellId(e);if(q)if(u)I(i=>{const r=new Set(i);return t.parseCellId(e)&&(_.current?r.delete(e):r.add(e)),r});else{if(h.current)return;const i=M(w,q,h.current);C(i,q)}},[T,w,M,C]),A=o.useCallback(()=>{O(!1)},[]),y=o.useCallback((e,u,q)=>{const i=t.parseCellId(e);if(i)if(q&&w){const r=M(w,i,u);C(r,i)}else u?I(r=>{const l=new Set(r);return l.has(e)?l.delete(e):l.add(e),l}):(C(new Set([e]),i),S(i))},[w,M,C]),B=o.useCallback(e=>{d(e)},[]),D=o.useCallback(()=>{I(new Set),S(null),d(null)},[]),R=o.useCallback(e=>n.has(e),[n]),U=o.useCallback(e=>e===f,[f]),v=o.useCallback(e=>t.parseCellId(e),[]),j=o.useCallback(e=>{if(!R(e))return[];const u=t.parseCellId(e);if(!u)return[];const q=s.rowIdToIndex.get(u.rowId),i=s.colIdToIndex.get(u.colId);if(q===void 0||i===void 0)return[];const r=s.indexToRowId.get(q-1),l=s.indexToColId.get(i+1),c=s.indexToRowId.get(q+1),a=s.indexToColId.get(i-1);let x=t.BorderPosition.None;return(!r||!n.has(t.getCellId(r,u.colId)))&&(x|=t.BorderPosition.Top),(!l||!n.has(t.getCellId(u.rowId,l)))&&(x|=t.BorderPosition.Right),(!c||!n.has(t.getCellId(c,u.colId)))&&(x|=t.BorderPosition.Bottom),(!a||!n.has(t.getCellId(u.rowId,a)))&&(x|=t.BorderPosition.Left),t.getBorderClasses(x)},[n,s,R]),H=o.useMemo(()=>({selectedCells:n,selectedRows:P,focusedCellId:f,selectionInProgress:T,anchorCell:w,gridMap:s,setSelectedCells:I,setFocusedCellId:d,setAnchorCell:S,registerGrid:E,selectCell:y,startSelection:N,extendSelection:L,endSelection:A,focusCell:B,clearSelection:D,isCellSelected:R,isCellFocused:U,getCellPositionFromId:v,getCellBorderClasses:j}),[n,P,f,T,w,s,I,d,S,E,y,N,L,A,B,D,R,U,v,j]);return Q.jsxRuntimeExports.jsx(X.SelectionCellsContext.Provider,{value:H,children:z})};exports.SelectionCellsProvider=Z;
2
2
  //# sourceMappingURL=SelectionCellsProvider.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SelectionCellsProvider.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/SelectionCellsProvider.tsx"],"sourcesContent":["import React, { ReactNode, useCallback, useMemo, useRef, useState } from 'react'\nimport {\n BorderPosition,\n CellId,\n CellPosition,\n ColId,\n getBorderClasses,\n getCellId,\n parseCellId,\n RowId,\n} from '../utils/cellUtils'\nimport { GridMap, SelectionCellsContext } from './SelectionCellsContext'\nimport { useCheckSelectedCellsVisible } from '../hooks'\nimport { ROW_SELECTION_COLUMN_ID, DRAG_HANDLE_COLUMN_ID } from '../constants'\n\nexport const SelectionCellsProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [selectedCells, setSelectedCells] = useState<Set<CellId>>(new Set())\n const [focusedCellId, setFocusedCellId] = useState<CellId | null>(null)\n const [selectionInProgress, setSelectionInProgress] = useState<boolean>(false)\n const [anchorCell, setAnchorCell] = useState<CellPosition | null>(null)\n const [gridMap, setGridMap] = useState<GridMap>({\n rowIdToIndex: new Map(),\n colIdToIndex: new Map(),\n indexToRowId: new Map(),\n indexToColId: new Map(),\n })\n const mapToString = (map: Map<any, any>) => {\n return JSON.stringify(Array.from(map.entries()))\n }\n\n const stableGridMap = useMemo(\n () => gridMap,\n [\n mapToString(gridMap.rowIdToIndex),\n mapToString(gridMap.colIdToIndex),\n mapToString(gridMap.indexToRowId),\n mapToString(gridMap.indexToColId),\n ],\n )\n // Track whether we're selecting or unselecting during drag\n const initialCellSelected = useRef<boolean>(false)\n\n const selectedRows = useMemo(\n () =>\n Array.from(selectedCells)\n .filter(\n (cellId) =>\n parseCellId(cellId)?.colId === ROW_SELECTION_COLUMN_ID && parseCellId(cellId)?.rowId,\n )\n .map((cellId) => parseCellId(cellId)?.rowId) as string[],\n [selectedCells],\n )\n\n useCheckSelectedCellsVisible({\n selectedCells,\n setSelectedCells,\n focusedCellId,\n setFocusedCellId,\n })\n const isAdditiveSelectionRef = useRef<boolean>(false)\n // Register grid structure for range selections\n const registerGrid = useCallback((rows: RowId[], columns: ColId[]) => {\n const rowIdToIndex = new Map<RowId, number>()\n const colIdToIndex = new Map<ColId, number>()\n const indexToRowId = new Map<number, RowId>()\n const indexToColId = new Map<number, ColId>()\n\n rows.forEach((rowId, index) => {\n rowIdToIndex.set(rowId, index)\n indexToRowId.set(index, rowId)\n })\n\n columns.forEach((colId, index) => {\n colIdToIndex.set(colId, index)\n indexToColId.set(index, colId)\n })\n\n setGridMap({ rowIdToIndex, colIdToIndex, indexToRowId, indexToColId })\n }, [])\n\n // update the selection whilst properly handling the row-selection column\n const updateSelection = useCallback((selection: Set<CellId>, position: CellPosition) => {\n setSelectedCells((prevSelectedCells) => {\n let newSelection = new Set(selection)\n if (position.colId !== ROW_SELECTION_COLUMN_ID && position.colId !== DRAG_HANDLE_COLUMN_ID) {\n const rowSelection = Array.from(prevSelectedCells).filter(\n (id) => parseCellId(id)?.colId === ROW_SELECTION_COLUMN_ID,\n )\n if (rowSelection.length) {\n newSelection = new Set([...newSelection, ...rowSelection])\n }\n }\n return newSelection\n })\n }, [])\n\n // Select cells between two points in the grid\n const selectCellRange = useCallback(\n (start: CellPosition, end: CellPosition, additive: boolean): Set<CellId> => {\n if (!additive) {\n // Clear existing selection if not additive\n updateSelection(new Set(), start)\n }\n\n const startRowIdx = stableGridMap.rowIdToIndex.get(start.rowId) ?? 0\n const startColIdx = stableGridMap.colIdToIndex.get(start.colId) ?? 0\n const endRowIdx = stableGridMap.rowIdToIndex.get(end.rowId) ?? 0\n const endColIdx = stableGridMap.colIdToIndex.get(end.colId) ?? 0\n\n const minRowIdx = Math.min(startRowIdx, endRowIdx)\n const maxRowIdx = Math.max(startRowIdx, endRowIdx)\n const minColIdx = Math.min(startColIdx, endColIdx)\n const maxColIdx = Math.max(startColIdx, endColIdx)\n\n const newSelection = new Set(additive ? selectedCells : [])\n\n for (let r = minRowIdx; r <= maxRowIdx; r++) {\n const rowId = stableGridMap.indexToRowId.get(r)\n if (!rowId) continue\n\n for (let c = minColIdx; c <= maxColIdx; c++) {\n const colId = stableGridMap.indexToColId.get(c)\n if (!colId) continue\n\n newSelection.add(getCellId(rowId, colId))\n }\n }\n\n return newSelection\n },\n [stableGridMap, selectedCells, updateSelection],\n )\n\n // Start a selection operation\n const startSelection = useCallback(\n (cellId: CellId, additive: boolean) => {\n const position = parseCellId(cellId)\n if (!position) return\n\n setSelectionInProgress(true)\n isAdditiveSelectionRef.current = additive\n // Store whether the initial cell was selected to determine drag behavior\n initialCellSelected.current = selectedCells.has(cellId)\n\n if (additive) {\n // Toggle this cell in multi-select mode\n setSelectedCells((prev) => {\n const newSelection = new Set(prev)\n if (newSelection.has(cellId)) {\n newSelection.delete(cellId)\n // If this was the focused cell, set focus to another cell in the selection or null\n if (focusedCellId === cellId) {\n if (newSelection.size > 0) {\n setFocusedCellId(Array.from(newSelection)[Array.from(newSelection).length - 1])\n } else {\n setFocusedCellId(null)\n }\n }\n } else {\n newSelection.add(cellId)\n setFocusedCellId(cellId)\n setAnchorCell(position)\n }\n return newSelection\n })\n } else {\n // Single cell selection\n // If this cell is already the only selected cell, deselect it\n // and it is from name column\n if (\n selectedCells.size === 1 &&\n selectedCells.has(cellId) &&\n [ROW_SELECTION_COLUMN_ID, 'name'].includes(position.colId)\n ) {\n setSelectedCells(new Set())\n setAnchorCell(null)\n setFocusedCellId(null)\n } else {\n updateSelection(new Set([cellId]), position)\n setAnchorCell(position)\n setFocusedCellId(cellId)\n }\n }\n },\n [selectedCells, focusedCellId, updateSelection],\n )\n\n // Extend the current selection during drag\n const extendSelection = useCallback(\n (cellId: CellId, isRowSelectionColumn?: boolean) => {\n if (!selectionInProgress || !anchorCell) return\n\n const currentPosition = parseCellId(cellId)\n if (!currentPosition) return\n\n if (isRowSelectionColumn) {\n // Handle row selection column differently during drag\n setSelectedCells((prev) => {\n const newSelection = new Set(prev)\n const position = parseCellId(cellId)\n\n if (!position) return newSelection\n\n // We're either selecting or unselecting based on the initial cell's state\n if (initialCellSelected.current) {\n // If we started on a selected cell, we're removing cells during drag\n newSelection.delete(cellId)\n } else {\n // If we started on an unselected cell, we're adding cells during drag\n newSelection.add(cellId)\n }\n\n return newSelection\n })\n } else {\n if (isAdditiveSelectionRef.current) return\n // For normal cells - ALWAYS does range selection\n const newSelection = selectCellRange(\n anchorCell,\n currentPosition,\n isAdditiveSelectionRef.current,\n )\n updateSelection(newSelection, currentPosition)\n }\n },\n [selectionInProgress, anchorCell, selectCellRange, updateSelection],\n )\n\n // End a selection operation\n const endSelection = useCallback(() => {\n setSelectionInProgress(false)\n }, [])\n\n // Select a cell (click or programmatically)\n const selectCell = useCallback(\n (cellId: CellId, additive: boolean, range: boolean) => {\n const position = parseCellId(cellId)\n if (!position) return\n\n if (range && anchorCell) {\n // Shift+click for range selection - select cells between anchor and current\n const newSelection = selectCellRange(anchorCell, position, additive)\n updateSelection(newSelection, position)\n } else if (additive) {\n // Ctrl/Cmd+click for toggling selection\n setSelectedCells((prev) => {\n const newSelection = new Set(prev)\n if (newSelection.has(cellId)) {\n newSelection.delete(cellId)\n } else {\n newSelection.add(cellId)\n }\n return newSelection\n })\n } else {\n // Normal click - select just this cell and set as new anchor\n updateSelection(new Set([cellId]), position)\n setAnchorCell(position)\n }\n },\n [anchorCell, selectCellRange, updateSelection],\n )\n\n // Focus a cell without changing selection\n const focusCell = useCallback((cellId: CellId | null) => {\n setFocusedCellId(cellId)\n }, [])\n\n // Clear all selections\n const clearSelection = useCallback(() => {\n setSelectedCells(new Set())\n setAnchorCell(null)\n setFocusedCellId(null)\n }, [])\n\n // Check if a cell is selected\n const isCellSelected = useCallback((cellId: CellId) => selectedCells.has(cellId), [selectedCells])\n\n // Check if a cell is focused\n const isCellFocused = useCallback((cellId: CellId) => cellId === focusedCellId, [focusedCellId])\n\n // Get position from cell ID - using shared utility\n const getCellPositionFromId = useCallback((cellId: CellId) => parseCellId(cellId), [])\n\n // Get border classes for a cell based on its selection state and neighbors\n const getCellBorderClasses = useCallback(\n (cellId: CellId): string[] => {\n if (!isCellSelected(cellId)) return []\n\n const position = parseCellId(cellId)\n if (!position) return []\n\n const rowIndex = stableGridMap.rowIdToIndex.get(position.rowId)\n const colIndex = stableGridMap.colIdToIndex.get(position.colId)\n\n if (rowIndex === undefined || colIndex === undefined) return []\n\n // Check if the cell's neighbors in all four directions are selected\n const top = stableGridMap.indexToRowId.get(rowIndex - 1)\n const right = stableGridMap.indexToColId.get(colIndex + 1)\n const bottom = stableGridMap.indexToRowId.get(rowIndex + 1)\n const left = stableGridMap.indexToColId.get(colIndex - 1)\n\n // Default to no borders\n let borderPos = BorderPosition.None\n\n // Top edge check: show border if we're at the top of the grid or the cell above is not selected\n if (!top || !selectedCells.has(getCellId(top, position.colId))) {\n borderPos |= BorderPosition.Top\n }\n\n // Right edge check: show border if we're at the right edge of the grid or the cell to the right is not selected\n if (!right || !selectedCells.has(getCellId(position.rowId, right))) {\n borderPos |= BorderPosition.Right\n }\n\n // Bottom edge check: show border if we're at the bottom of the grid or the cell below is not selected\n if (!bottom || !selectedCells.has(getCellId(bottom, position.colId))) {\n borderPos |= BorderPosition.Bottom\n }\n\n // Left edge check: show border if we're at the left edge of the grid or the cell to the left is not selected\n if (!left || !selectedCells.has(getCellId(position.rowId, left))) {\n borderPos |= BorderPosition.Left\n }\n\n return getBorderClasses(borderPos)\n },\n [selectedCells, stableGridMap, isCellSelected],\n )\n\n // Memoize context value to prevent unnecessary re-renders\n const value = useMemo(\n () => ({\n selectedCells,\n selectedRows,\n focusedCellId,\n selectionInProgress,\n anchorCell,\n gridMap: stableGridMap,\n setSelectedCells,\n setFocusedCellId,\n setAnchorCell,\n registerGrid,\n selectCell,\n startSelection,\n extendSelection,\n endSelection,\n focusCell,\n clearSelection,\n isCellSelected,\n isCellFocused,\n getCellPositionFromId,\n getCellBorderClasses,\n }),\n [\n selectedCells,\n selectedRows,\n focusedCellId,\n selectionInProgress,\n anchorCell,\n stableGridMap,\n setSelectedCells,\n setFocusedCellId,\n setAnchorCell,\n registerGrid,\n selectCell,\n startSelection,\n extendSelection,\n endSelection,\n focusCell,\n clearSelection,\n isCellSelected,\n isCellFocused,\n getCellPositionFromId,\n getCellBorderClasses,\n ],\n )\n\n return <SelectionCellsContext.Provider value={value}>{children}</SelectionCellsContext.Provider>\n}\n"],"names":["SelectionCellsProvider","children","selectedCells","setSelectedCells","useState","focusedCellId","setFocusedCellId","selectionInProgress","setSelectionInProgress","anchorCell","setAnchorCell","gridMap","setGridMap","mapToString","map","stableGridMap","useMemo","initialCellSelected","useRef","selectedRows","cellId","parseCellId","ROW_SELECTION_COLUMN_ID","useCheckSelectedCellsVisible","isAdditiveSelectionRef","registerGrid","useCallback","rows","columns","rowIdToIndex","colIdToIndex","indexToRowId","indexToColId","rowId","index","colId","updateSelection","selection","position","prevSelectedCells","newSelection","DRAG_HANDLE_COLUMN_ID","rowSelection","id","selectCellRange","start","end","additive","startRowIdx","startColIdx","endRowIdx","endColIdx","minRowIdx","maxRowIdx","minColIdx","maxColIdx","r","c","getCellId","startSelection","prev","extendSelection","isRowSelectionColumn","currentPosition","endSelection","selectCell","range","focusCell","clearSelection","isCellSelected","isCellFocused","getCellPositionFromId","getCellBorderClasses","rowIndex","colIndex","top","right","bottom","left","borderPos","BorderPosition","getBorderClasses","value","jsx","SelectionCellsContext"],"mappings":"m/hBAeaA,EAA4D,CAAC,CAAE,SAAAC,KAAe,CACzF,KAAM,CAACC,EAAeC,CAAgB,EAAIC,EAAAA,SAAsB,IAAI,GAAK,EACnE,CAACC,EAAeC,CAAgB,EAAIF,EAAAA,SAAwB,IAAI,EAChE,CAACG,EAAqBC,CAAsB,EAAIJ,EAAAA,SAAkB,EAAK,EACvE,CAACK,EAAYC,CAAa,EAAIN,EAAAA,SAA8B,IAAI,EAChE,CAACO,EAASC,CAAU,EAAIR,WAAkB,CAC9C,iBAAkB,IAClB,iBAAkB,IAClB,iBAAkB,IAClB,iBAAkB,GAAI,CACvB,EACKS,EAAeC,GACZ,KAAK,UAAU,MAAM,KAAKA,EAAI,QAAA,CAAS,CAAC,EAG3CC,EAAgBC,EAAAA,QACpB,IAAML,EACN,CACEE,EAAYF,EAAQ,YAAY,EAChCE,EAAYF,EAAQ,YAAY,EAChCE,EAAYF,EAAQ,YAAY,EAChCE,EAAYF,EAAQ,YAAY,CAAA,CAClC,EAGIM,EAAsBC,EAAAA,OAAgB,EAAK,EAE3CC,EAAeH,EAAAA,QACnB,IACE,MAAM,KAAKd,CAAa,EACrB,OACEkB,GACCC,EAAAA,YAAYD,CAAM,GAAG,QAAUE,2BAA2BD,EAAAA,YAAYD,CAAM,GAAG,KAAA,EAElF,IAAKA,GAAWC,EAAAA,YAAYD,CAAM,GAAG,KAAK,EAC/C,CAAClB,CAAa,CAAA,EAGhBqB,+BAA6B,CAC3B,cAAArB,EACA,iBAAAC,EACA,cAAAE,EACA,iBAAAC,CAAA,CACD,EACD,MAAMkB,EAAyBN,EAAAA,OAAgB,EAAK,EAE9CO,EAAeC,EAAAA,YAAY,CAACC,EAAeC,IAAqB,CACpE,MAAMC,MAAmB,IACnBC,MAAmB,IACnBC,MAAmB,IACnBC,MAAmB,IAEzBL,EAAK,QAAQ,CAACM,EAAOC,IAAU,CAC7BL,EAAa,IAAII,EAAOC,CAAK,EAC7BH,EAAa,IAAIG,EAAOD,CAAK,CAC/B,CAAC,EAEDL,EAAQ,QAAQ,CAACO,EAAOD,IAAU,CAChCJ,EAAa,IAAIK,EAAOD,CAAK,EAC7BF,EAAa,IAAIE,EAAOC,CAAK,CAC/B,CAAC,EAEDvB,EAAW,CAAE,aAAAiB,EAAc,aAAAC,EAAc,aAAAC,EAAc,aAAAC,EAAc,CACvE,EAAG,CAAA,CAAE,EAGCI,EAAkBV,EAAAA,YAAY,CAACW,EAAwBC,IAA2B,CACtFnC,EAAkBoC,GAAsB,CACtC,IAAIC,EAAe,IAAI,IAAIH,CAAS,EACpC,GAAIC,EAAS,QAAUhB,EAAAA,yBAA2BgB,EAAS,QAAUG,EAAAA,sBAAuB,CAC1F,MAAMC,EAAe,MAAM,KAAKH,CAAiB,EAAE,OAChDI,GAAOtB,EAAAA,YAAYsB,CAAE,GAAG,QAAUrB,EAAAA,uBAAA,EAEjCoB,EAAa,SACfF,MAAmB,IAAI,CAAC,GAAGA,EAAc,GAAGE,CAAY,CAAC,EAE7D,CACA,OAAOF,CACT,CAAC,CACH,EAAG,CAAA,CAAE,EAGCI,EAAkBlB,EAAAA,YACtB,CAACmB,EAAqBC,EAAmBC,IAAmC,CACrEA,GAEHX,EAAgB,IAAI,IAAOS,CAAK,EAGlC,MAAMG,EAAcjC,EAAc,aAAa,IAAI8B,EAAM,KAAK,GAAK,EAC7DI,EAAclC,EAAc,aAAa,IAAI8B,EAAM,KAAK,GAAK,EAC7DK,EAAYnC,EAAc,aAAa,IAAI+B,EAAI,KAAK,GAAK,EACzDK,EAAYpC,EAAc,aAAa,IAAI+B,EAAI,KAAK,GAAK,EAEzDM,EAAY,KAAK,IAAIJ,EAAaE,CAAS,EAC3CG,EAAY,KAAK,IAAIL,EAAaE,CAAS,EAC3CI,EAAY,KAAK,IAAIL,EAAaE,CAAS,EAC3CI,EAAY,KAAK,IAAIN,EAAaE,CAAS,EAE3CX,EAAe,IAAI,IAAIO,EAAW7C,EAAgB,CAAA,CAAE,EAE1D,QAASsD,EAAIJ,EAAWI,GAAKH,EAAWG,IAAK,CAC3C,MAAMvB,EAAQlB,EAAc,aAAa,IAAIyC,CAAC,EAC9C,GAAKvB,EAEL,QAASwB,EAAIH,EAAWG,GAAKF,EAAWE,IAAK,CAC3C,MAAMtB,EAAQpB,EAAc,aAAa,IAAI0C,CAAC,EACzCtB,GAELK,EAAa,IAAIkB,EAAAA,UAAUzB,EAAOE,CAAK,CAAC,CAC1C,CACF,CAEA,OAAOK,CACT,EACA,CAACzB,EAAeb,EAAekC,CAAe,CAAA,EAI1CuB,EAAiBjC,EAAAA,YACrB,CAACN,EAAgB2B,IAAsB,CACrC,MAAMT,EAAWjB,EAAAA,YAAYD,CAAM,EAC9BkB,IAEL9B,EAAuB,EAAI,EAC3BgB,EAAuB,QAAUuB,EAEjC9B,EAAoB,QAAUf,EAAc,IAAIkB,CAAM,EAElD2B,EAEF5C,EAAkByD,GAAS,CACzB,MAAMpB,EAAe,IAAI,IAAIoB,CAAI,EACjC,OAAIpB,EAAa,IAAIpB,CAAM,GACzBoB,EAAa,OAAOpB,CAAM,EAEtBf,IAAkBe,IAChBoB,EAAa,KAAO,EACtBlC,EAAiB,MAAM,KAAKkC,CAAY,EAAE,MAAM,KAAKA,CAAY,EAAE,OAAS,CAAC,CAAC,EAE9ElC,EAAiB,IAAI,KAIzBkC,EAAa,IAAIpB,CAAM,EACvBd,EAAiBc,CAAM,EACvBV,EAAc4B,CAAQ,GAEjBE,CACT,CAAC,EAMCtC,EAAc,OAAS,GACvBA,EAAc,IAAIkB,CAAM,GACxB,CAACE,EAAAA,wBAAyB,MAAM,EAAE,SAASgB,EAAS,KAAK,GAEzDnC,EAAiB,IAAI,GAAK,EAC1BO,EAAc,IAAI,EAClBJ,EAAiB,IAAI,IAErB8B,MAAoB,IAAI,CAAChB,CAAM,CAAC,EAAGkB,CAAQ,EAC3C5B,EAAc4B,CAAQ,EACtBhC,EAAiBc,CAAM,GAG7B,EACA,CAAClB,EAAeG,EAAe+B,CAAe,CAAA,EAI1CyB,EAAkBnC,EAAAA,YACtB,CAACN,EAAgB0C,IAAmC,CAClD,GAAI,CAACvD,GAAuB,CAACE,EAAY,OAEzC,MAAMsD,EAAkB1C,EAAAA,YAAYD,CAAM,EAC1C,GAAK2C,EAEL,GAAID,EAEF3D,EAAkByD,GAAS,CACzB,MAAMpB,EAAe,IAAI,IAAIoB,CAAI,EAGjC,OAFiBvC,EAAAA,YAAYD,CAAM,IAK/BH,EAAoB,QAEtBuB,EAAa,OAAOpB,CAAM,EAG1BoB,EAAa,IAAIpB,CAAM,GAGlBoB,CACT,CAAC,MACI,CACL,GAAIhB,EAAuB,QAAS,OAEpC,MAAMgB,EAAeI,EACnBnC,EACAsD,EACAvC,EAAuB,OAAA,EAEzBY,EAAgBI,EAAcuB,CAAe,CAC/C,CACF,EACA,CAACxD,EAAqBE,EAAYmC,EAAiBR,CAAe,CAAA,EAI9D4B,EAAetC,EAAAA,YAAY,IAAM,CACrClB,EAAuB,EAAK,CAC9B,EAAG,CAAA,CAAE,EAGCyD,EAAavC,EAAAA,YACjB,CAACN,EAAgB2B,EAAmBmB,IAAmB,CACrD,MAAM5B,EAAWjB,EAAAA,YAAYD,CAAM,EACnC,GAAKkB,EAEL,GAAI4B,GAASzD,EAAY,CAEvB,MAAM+B,EAAeI,EAAgBnC,EAAY6B,EAAUS,CAAQ,EACnEX,EAAgBI,EAAcF,CAAQ,CACxC,MAAWS,EAET5C,EAAkByD,GAAS,CACzB,MAAMpB,EAAe,IAAI,IAAIoB,CAAI,EACjC,OAAIpB,EAAa,IAAIpB,CAAM,EACzBoB,EAAa,OAAOpB,CAAM,EAE1BoB,EAAa,IAAIpB,CAAM,EAElBoB,CACT,CAAC,GAGDJ,MAAoB,IAAI,CAAChB,CAAM,CAAC,EAAGkB,CAAQ,EAC3C5B,EAAc4B,CAAQ,EAE1B,EACA,CAAC7B,EAAYmC,EAAiBR,CAAe,CAAA,EAIzC+B,EAAYzC,cAAaN,GAA0B,CACvDd,EAAiBc,CAAM,CACzB,EAAG,CAAA,CAAE,EAGCgD,EAAiB1C,EAAAA,YAAY,IAAM,CACvCvB,EAAiB,IAAI,GAAK,EAC1BO,EAAc,IAAI,EAClBJ,EAAiB,IAAI,CACvB,EAAG,CAAA,CAAE,EAGC+D,EAAiB3C,cAAaN,GAAmBlB,EAAc,IAAIkB,CAAM,EAAG,CAAClB,CAAa,CAAC,EAG3FoE,EAAgB5C,EAAAA,YAAaN,GAAmBA,IAAWf,EAAe,CAACA,CAAa,CAAC,EAGzFkE,EAAwB7C,EAAAA,YAAaN,GAAmBC,EAAAA,YAAYD,CAAM,EAAG,EAAE,EAG/EoD,EAAuB9C,EAAAA,YAC1BN,GAA6B,CAC5B,GAAI,CAACiD,EAAejD,CAAM,QAAU,CAAA,EAEpC,MAAMkB,EAAWjB,EAAAA,YAAYD,CAAM,EACnC,GAAI,CAACkB,EAAU,MAAO,CAAA,EAEtB,MAAMmC,EAAW1D,EAAc,aAAa,IAAIuB,EAAS,KAAK,EACxDoC,EAAW3D,EAAc,aAAa,IAAIuB,EAAS,KAAK,EAE9D,GAAImC,IAAa,QAAaC,IAAa,aAAkB,CAAA,EAG7D,MAAMC,EAAM5D,EAAc,aAAa,IAAI0D,EAAW,CAAC,EACjDG,EAAQ7D,EAAc,aAAa,IAAI2D,EAAW,CAAC,EACnDG,EAAS9D,EAAc,aAAa,IAAI0D,EAAW,CAAC,EACpDK,EAAO/D,EAAc,aAAa,IAAI2D,EAAW,CAAC,EAGxD,IAAIK,EAAYC,EAAAA,eAAe,KAG/B,OAAI,CAACL,GAAO,CAACzE,EAAc,IAAIwD,EAAAA,UAAUiB,EAAKrC,EAAS,KAAK,CAAC,KAC3DyC,GAAaC,EAAAA,eAAe,MAI1B,CAACJ,GAAS,CAAC1E,EAAc,IAAIwD,EAAAA,UAAUpB,EAAS,MAAOsC,CAAK,CAAC,KAC/DG,GAAaC,EAAAA,eAAe,QAI1B,CAACH,GAAU,CAAC3E,EAAc,IAAIwD,EAAAA,UAAUmB,EAAQvC,EAAS,KAAK,CAAC,KACjEyC,GAAaC,EAAAA,eAAe,SAI1B,CAACF,GAAQ,CAAC5E,EAAc,IAAIwD,EAAAA,UAAUpB,EAAS,MAAOwC,CAAI,CAAC,KAC7DC,GAAaC,EAAAA,eAAe,MAGvBC,EAAAA,iBAAiBF,CAAS,CACnC,EACA,CAAC7E,EAAea,EAAesD,CAAc,CAAA,EAIzCa,EAAQlE,EAAAA,QACZ,KAAO,CACL,cAAAd,EACA,aAAAiB,EACA,cAAAd,EACA,oBAAAE,EACA,WAAAE,EACA,QAASM,EACT,iBAAAZ,EACA,iBAAAG,EACA,cAAAI,EACA,aAAAe,EACA,WAAAwC,EACA,eAAAN,EACA,gBAAAE,EACA,aAAAG,EACA,UAAAG,EACA,eAAAC,EACA,eAAAC,EACA,cAAAC,EACA,sBAAAC,EACA,qBAAAC,CAAA,GAEF,CACEtE,EACAiB,EACAd,EACAE,EACAE,EACAM,EACAZ,EACAG,EACAI,EACAe,EACAwC,EACAN,EACAE,EACAG,EACAG,EACAC,EACAC,EACAC,EACAC,EACAC,CAAA,CACF,EAGF,OAAOW,EAAAA,kBAAAA,IAACC,EAAAA,sBAAsB,SAAtB,CAA+B,MAAAF,EAAe,SAAAjF,CAAA,CAAS,CACjE"}
1
+ {"version":3,"file":"SelectionCellsProvider.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/SelectionCellsProvider.tsx"],"sourcesContent":["import React, { ReactNode, useCallback, useMemo, useRef, useState } from 'react'\nimport {\n BorderPosition,\n CellId,\n CellPosition,\n ColId,\n getBorderClasses,\n getCellId,\n parseCellId,\n RowId,\n} from '../utils/cellUtils'\nimport { GridMap, SelectionCellsContext } from './SelectionCellsContext'\nimport { useCheckSelectedCellsVisible } from '../hooks'\nimport { ROW_SELECTION_COLUMN_ID, DRAG_HANDLE_COLUMN_ID } from '../constants'\n\nexport const SelectionCellsProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [selectedCells, setSelectedCells] = useState<Set<CellId>>(new Set())\n const [focusedCellId, setFocusedCellId] = useState<CellId | null>(null)\n const [selectionInProgress, setSelectionInProgress] = useState<boolean>(false)\n const [anchorCell, setAnchorCell] = useState<CellPosition | null>(null)\n const [gridMap, setGridMap] = useState<GridMap>({\n rowIdToIndex: new Map(),\n colIdToIndex: new Map(),\n indexToRowId: new Map(),\n indexToColId: new Map(),\n })\n const mapToString = (map: Map<any, any>) => {\n return JSON.stringify(Array.from(map.entries()))\n }\n\n const stableGridMap = useMemo(\n () => gridMap,\n [\n mapToString(gridMap.rowIdToIndex),\n mapToString(gridMap.colIdToIndex),\n mapToString(gridMap.indexToRowId),\n mapToString(gridMap.indexToColId),\n ],\n )\n // Track whether we're selecting or unselecting during drag\n const initialCellSelected = useRef<boolean>(false)\n\n const selectedRows = useMemo(\n () =>\n Array.from(selectedCells)\n .filter(\n (cellId) =>\n parseCellId(cellId)?.colId === ROW_SELECTION_COLUMN_ID && parseCellId(cellId)?.rowId,\n )\n .map((cellId) => parseCellId(cellId)?.rowId) as string[],\n [selectedCells],\n )\n\n useCheckSelectedCellsVisible({\n selectedCells,\n setSelectedCells,\n focusedCellId,\n setFocusedCellId,\n })\n const isAdditiveSelectionRef = useRef<boolean>(false)\n // Register grid structure for range selections\n const registerGrid = useCallback((rows: RowId[], columns: ColId[]) => {\n const rowIdToIndex = new Map<RowId, number>()\n const colIdToIndex = new Map<ColId, number>()\n const indexToRowId = new Map<number, RowId>()\n const indexToColId = new Map<number, ColId>()\n\n rows.forEach((rowId, index) => {\n rowIdToIndex.set(rowId, index)\n indexToRowId.set(index, rowId)\n })\n\n columns.forEach((colId, index) => {\n colIdToIndex.set(colId, index)\n indexToColId.set(index, colId)\n })\n\n setGridMap({ rowIdToIndex, colIdToIndex, indexToRowId, indexToColId })\n }, [])\n\n // update the selection whilst properly handling the row-selection column\n const updateSelection = useCallback((selection: Set<CellId>, position: CellPosition) => {\n setSelectedCells((prevSelectedCells) => {\n let newSelection = new Set(selection)\n if (position.colId !== ROW_SELECTION_COLUMN_ID && position.colId !== DRAG_HANDLE_COLUMN_ID) {\n const rowSelection = Array.from(prevSelectedCells).filter(\n (id) => parseCellId(id)?.colId === ROW_SELECTION_COLUMN_ID,\n )\n if (rowSelection.length) {\n newSelection = new Set([...newSelection, ...rowSelection])\n }\n }\n return newSelection\n })\n }, [])\n\n // Select cells between two points in the grid\n const selectCellRange = useCallback(\n (start: CellPosition, end: CellPosition, additive: boolean): Set<CellId> => {\n if (!additive) {\n // Clear existing selection if not additive\n updateSelection(new Set(), start)\n }\n\n const startRowIdx = stableGridMap.rowIdToIndex.get(start.rowId) ?? 0\n const startColIdx = stableGridMap.colIdToIndex.get(start.colId) ?? 0\n const endRowIdx = stableGridMap.rowIdToIndex.get(end.rowId) ?? 0\n const endColIdx = stableGridMap.colIdToIndex.get(end.colId) ?? 0\n\n const minRowIdx = Math.min(startRowIdx, endRowIdx)\n const maxRowIdx = Math.max(startRowIdx, endRowIdx)\n const minColIdx = Math.min(startColIdx, endColIdx)\n const maxColIdx = Math.max(startColIdx, endColIdx)\n\n const newSelection = new Set(additive ? selectedCells : [])\n\n for (let r = minRowIdx; r <= maxRowIdx; r++) {\n const rowId = stableGridMap.indexToRowId.get(r)\n if (!rowId) continue\n\n for (let c = minColIdx; c <= maxColIdx; c++) {\n const colId = stableGridMap.indexToColId.get(c)\n if (!colId) continue\n\n newSelection.add(getCellId(rowId, colId))\n }\n }\n\n return newSelection\n },\n [stableGridMap, selectedCells, updateSelection],\n )\n\n // Start a selection operation\n const startSelection = useCallback(\n (cellId: CellId, additive: boolean) => {\n const position = parseCellId(cellId)\n if (!position) return\n\n setSelectionInProgress(true)\n isAdditiveSelectionRef.current = additive\n // Store whether the initial cell was selected to determine drag behavior\n initialCellSelected.current = selectedCells.has(cellId)\n\n if (additive) {\n // Toggle this cell in multi-select mode\n setSelectedCells((prev) => {\n const newSelection = new Set(prev)\n if (newSelection.has(cellId)) {\n newSelection.delete(cellId)\n // If this was the focused cell, set focus to another cell in the selection or null\n if (focusedCellId === cellId) {\n if (newSelection.size > 0) {\n setFocusedCellId(Array.from(newSelection)[Array.from(newSelection).length - 1])\n } else {\n setFocusedCellId(null)\n }\n }\n } else {\n newSelection.add(cellId)\n setFocusedCellId(cellId)\n setAnchorCell(position)\n }\n return newSelection\n })\n } else {\n // Single cell selection\n // If this cell is already the only selected cell, deselect it\n // and it is from name column\n if (\n selectedCells.size === 1 &&\n selectedCells.has(cellId) &&\n [ROW_SELECTION_COLUMN_ID, 'name'].includes(position.colId)\n ) {\n setSelectedCells(new Set())\n setAnchorCell(null)\n setFocusedCellId(null)\n } else {\n updateSelection(new Set([cellId]), position)\n setAnchorCell(position)\n setFocusedCellId(cellId)\n }\n }\n },\n [selectedCells, focusedCellId, updateSelection],\n )\n\n // Extend the current selection during drag\n const extendSelection = useCallback(\n (cellId: CellId, isRowSelectionColumn?: boolean) => {\n if (!selectionInProgress || !anchorCell) return\n\n const currentPosition = parseCellId(cellId)\n if (!currentPosition) return\n\n if (isRowSelectionColumn) {\n // Handle row selection column differently during drag\n setSelectedCells((prev) => {\n const newSelection = new Set(prev)\n const position = parseCellId(cellId)\n\n if (!position) return newSelection\n\n // We're either selecting or unselecting based on the initial cell's state\n if (initialCellSelected.current) {\n // If we started on a selected cell, we're removing cells during drag\n newSelection.delete(cellId)\n } else {\n // If we started on an unselected cell, we're adding cells during drag\n newSelection.add(cellId)\n }\n\n return newSelection\n })\n } else {\n if (isAdditiveSelectionRef.current) return\n // For normal cells - ALWAYS does range selection\n const newSelection = selectCellRange(\n anchorCell,\n currentPosition,\n isAdditiveSelectionRef.current,\n )\n updateSelection(newSelection, currentPosition)\n }\n },\n [selectionInProgress, anchorCell, selectCellRange, updateSelection],\n )\n\n // End a selection operation\n const endSelection = useCallback(() => {\n setSelectionInProgress(false)\n }, [])\n\n // Select a cell (click or programmatically)\n const selectCell = useCallback(\n (cellId: CellId, additive: boolean, range: boolean) => {\n const position = parseCellId(cellId)\n if (!position) return\n\n if (range && anchorCell) {\n // Shift+click for range selection - select cells between anchor and current\n const newSelection = selectCellRange(anchorCell, position, additive)\n updateSelection(newSelection, position)\n } else if (additive) {\n // Ctrl/Cmd+click for toggling selection\n setSelectedCells((prev) => {\n const newSelection = new Set(prev)\n if (newSelection.has(cellId)) {\n newSelection.delete(cellId)\n } else {\n newSelection.add(cellId)\n }\n return newSelection\n })\n } else {\n // Normal click - select just this cell and set as new anchor\n updateSelection(new Set([cellId]), position)\n setAnchorCell(position)\n }\n },\n [anchorCell, selectCellRange, updateSelection],\n )\n\n // Focus a cell without changing selection\n const focusCell = useCallback((cellId: CellId | null) => {\n setFocusedCellId(cellId)\n }, [])\n\n // Clear all selections\n const clearSelection = useCallback(() => {\n setSelectedCells(new Set())\n setAnchorCell(null)\n setFocusedCellId(null)\n }, [])\n\n // Check if a cell is selected\n const isCellSelected = useCallback((cellId: CellId) => selectedCells.has(cellId), [selectedCells])\n\n // Check if a cell is focused\n const isCellFocused = useCallback((cellId: CellId) => cellId === focusedCellId, [focusedCellId])\n\n // Get position from cell ID - using shared utility\n const getCellPositionFromId = useCallback((cellId: CellId) => parseCellId(cellId), [])\n\n // Get border classes for a cell based on its selection state and neighbors\n const getCellBorderClasses = useCallback(\n (cellId: CellId): string[] => {\n if (!isCellSelected(cellId)) return []\n\n const position = parseCellId(cellId)\n if (!position) return []\n\n const rowIndex = stableGridMap.rowIdToIndex.get(position.rowId)\n const colIndex = stableGridMap.colIdToIndex.get(position.colId)\n\n if (rowIndex === undefined || colIndex === undefined) return []\n\n // Check if the cell's neighbors in all four directions are selected\n const top = stableGridMap.indexToRowId.get(rowIndex - 1)\n const right = stableGridMap.indexToColId.get(colIndex + 1)\n const bottom = stableGridMap.indexToRowId.get(rowIndex + 1)\n const left = stableGridMap.indexToColId.get(colIndex - 1)\n\n // Default to no borders\n let borderPos = BorderPosition.None\n\n // Top edge check: show border if we're at the top of the grid or the cell above is not selected\n if (!top || !selectedCells.has(getCellId(top, position.colId))) {\n borderPos |= BorderPosition.Top\n }\n\n // Right edge check: show border if we're at the right edge of the grid or the cell to the right is not selected\n if (!right || !selectedCells.has(getCellId(position.rowId, right))) {\n borderPos |= BorderPosition.Right\n }\n\n // Bottom edge check: show border if we're at the bottom of the grid or the cell below is not selected\n if (!bottom || !selectedCells.has(getCellId(bottom, position.colId))) {\n borderPos |= BorderPosition.Bottom\n }\n\n // Left edge check: show border if we're at the left edge of the grid or the cell to the left is not selected\n if (!left || !selectedCells.has(getCellId(position.rowId, left))) {\n borderPos |= BorderPosition.Left\n }\n\n return getBorderClasses(borderPos)\n },\n [selectedCells, stableGridMap, isCellSelected],\n )\n\n // Memoize context value to prevent unnecessary re-renders\n const value = useMemo(\n () => ({\n selectedCells,\n selectedRows,\n focusedCellId,\n selectionInProgress,\n anchorCell,\n gridMap: stableGridMap,\n setSelectedCells,\n setFocusedCellId,\n setAnchorCell,\n registerGrid,\n selectCell,\n startSelection,\n extendSelection,\n endSelection,\n focusCell,\n clearSelection,\n isCellSelected,\n isCellFocused,\n getCellPositionFromId,\n getCellBorderClasses,\n }),\n [\n selectedCells,\n selectedRows,\n focusedCellId,\n selectionInProgress,\n anchorCell,\n stableGridMap,\n setSelectedCells,\n setFocusedCellId,\n setAnchorCell,\n registerGrid,\n selectCell,\n startSelection,\n extendSelection,\n endSelection,\n focusCell,\n clearSelection,\n isCellSelected,\n isCellFocused,\n getCellPositionFromId,\n getCellBorderClasses,\n ],\n )\n\n return <SelectionCellsContext.Provider value={value}>{children}</SelectionCellsContext.Provider>\n}\n"],"names":["SelectionCellsProvider","children","selectedCells","setSelectedCells","useState","focusedCellId","setFocusedCellId","selectionInProgress","setSelectionInProgress","anchorCell","setAnchorCell","gridMap","setGridMap","mapToString","map","stableGridMap","useMemo","initialCellSelected","useRef","selectedRows","cellId","parseCellId","ROW_SELECTION_COLUMN_ID","useCheckSelectedCellsVisible","isAdditiveSelectionRef","registerGrid","useCallback","rows","columns","rowIdToIndex","colIdToIndex","indexToRowId","indexToColId","rowId","index","colId","updateSelection","selection","position","prevSelectedCells","newSelection","DRAG_HANDLE_COLUMN_ID","rowSelection","id","selectCellRange","start","end","additive","startRowIdx","startColIdx","endRowIdx","endColIdx","minRowIdx","maxRowIdx","minColIdx","maxColIdx","r","c","getCellId","startSelection","prev","extendSelection","isRowSelectionColumn","currentPosition","endSelection","selectCell","range","focusCell","clearSelection","isCellSelected","isCellFocused","getCellPositionFromId","getCellBorderClasses","rowIndex","colIndex","top","right","bottom","left","borderPos","BorderPosition","getBorderClasses","value","jsx","SelectionCellsContext"],"mappings":"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"}